def METHOD_NAME(self):
    if not (3, 0) <= PYTHON_VERSION_TRIPLE < (3, 8):
        raise TypeError(
            "Python Interpreter needs to be in range 3.0..3.7; is %s"
            % version_tuple_to_str()
        )
    code = deepcopy(self)
    code.freeze()
    try:
        code.check()
    except AssertionError as e:
        raise TypeError(e)
    return types.CodeType(
        code.co_argcount,
        code.co_kwonlyargcount,
        code.co_nlocals,
        code.co_stacksize,
        code.co_flags,
        code.co_code,
        code.co_consts,
        code.co_names,
        code.co_varnames,
        code.co_filename,
        code.co_name,
        code.co_firstlineno,
        code.co_lnotab,
        code.co_freevars,
        code.co_cellvars,
    )