def findloop(m):
from _ast import For, While, FunctionDef, ClassDef, ListComp    <EOL>from _ast import DictComp<EOL>if isinstance(m, (FunctionDef, ClassDef)):<EOL><INDENT>return False<EOL><DEDENT>elif isinstance(m, (For, While, ListComp, DictComp)):<EOL><INDENT>return True<EOL><DEDENT>elif hasattr(m, "<STR_LIT:value>"):<EOL><INDENT>return findloop(m.value)<EOL><DEDENT>elif hasattr(m, "<STR_LIT>"):<EOL><INDENT>for sm in m:<EOL><INDENT>present = findloop(sm)<EOL>if present:<EOL><INDENT>break<EOL><DEDENT><DEDENT>else:<EOL><INDENT>present = False<EOL><DEDENT>return present<EOL><DEDENT>elif hasattr(m, "<STR_LIT:body>") or hasattr(m, "<STR_LIT>"):<EOL><INDENT>body = hasattr(m, "<STR_LIT:body>") and findloop(m.body)<EOL>orelse = hasattr(m, "<STR_LIT>") and findloop(m.orelse)<EOL>return body or orelse<EOL><DEDENT>else:<EOL><INDENT>return False<EOL><DEDENT>
Determines if the specified member of `_ast` contains any for or while loops
    in its body definition.