def getrawcode(obj, trycall=True):
try:<EOL><INDENT>return obj.__code__<EOL><DEDENT>except AttributeError:<EOL><INDENT>obj = getattr(obj, "<STR_LIT>", obj)<EOL>obj = getattr(obj, "<STR_LIT>", obj)<EOL>obj = getattr(obj, "<STR_LIT>", obj)<EOL>obj = getattr(obj, "<STR_LIT>", obj)<EOL>if trycall and not hasattr(obj, "<STR_LIT>"):<EOL><INDENT>if hasattr(obj, "<STR_LIT>") and not inspect.isclass(obj):<EOL><INDENT>x = getrawcode(obj.__call__, trycall=False)<EOL>if hasattr(x, "<STR_LIT>"):<EOL><INDENT>return x<EOL><DEDENT><DEDENT><DEDENT>return obj<EOL><DEDENT>
return code object for given function.