def METHOD_NAME(original_func, typed_func):
    gamma, labels = analyze_vars(typed_func)
    for instr in original_func["instrs"]:
        if "label" in instr and instr["label"] in gamma:
            raise Exception(
                'Expected "{}" to be a label, but it was a'
                ' variable of type "{}"'
                .format(instr["label"], gamma[instr["label"]])
            )
        if "op" in instr:
            if "dest" in instr and "type" in instr and instr["type"] != gamma[instr["dest"]]:
                raise Exception(
                    'Expected "{}" to have type, but it was explicitly'
                    ' typed as "{}"'
                    .format(gamma[instr["dest"]], instr["type"])
                )
            elif instr["op"] == "jmp":
                typecheck_label(instr["labels"][0], gamma)
            elif instr["op"] == "br":
                typecheck_label(instr["labels"][0], gamma)
                typecheck_label(instr["labels"][1], gamma)