\dPdZddlmZddlmZmZmZGddejZdS)zFixer for exec. This converts usages of the exec statement into calls to a built-in exec() function. exec code in ns1, ns2 -> exec(code, ns1, ns2) ) fixer_base)CommaNameCallceZdZdZdZdZdS)FixExecTzx exec_stmt< 'exec' a=any 'in' b=any [',' c=any] > | exec_stmt< 'exec' (not atom<'(' [any] ')'>) a=any > c|sJ|j}|d}|d}|d}|g}d|d_|5|t |g|5|t |gt td||jS)Nabcexec)prefix)symsgetclonerextendrrr)selfnoderesultsrr r r argss '..\python\lib\lib2to3\fixes\fix_exec.py transformzFixExec.transformsy CL KK   KK   {Q = KK!'')), - - - = KK!'')), - - -DLL$t{;;;;N)__name__ __module__ __qualname__ BM_compatiblePATTERNrrrrrs/MG < < < < r%sx**********<<<<