__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
o
��bc� � @ s: d Z ddlmZ ddlmZmZmZ G dd� dej�ZdS )z�Fixer 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)�Comma�Name�Callc @ s e Zd ZdZdZdd� ZdS )�FixExecTzx
exec_stmt< 'exec' a=any 'in' b=any [',' c=any] >
|
exec_stmt< 'exec' (not atom<'(' [any] ')'>) a=any >
c C s� |sJ �| j }|d }|�d�}|�d�}|�� g}d|d _|d ur-|�t� |�� g� |d ur;|�t� |�� g� ttd�||jd�S )N�a�b�c� � �exec)�prefix)�syms�get�cloner
�extendr r r )�self�node�resultsr r r r �args� r �-/usr/lib/python3.10/lib2to3/fixes/fix_exec.py� transform s
zFixExec.transformN)�__name__�
__module__�__qualname__�
BM_compatible�PATTERNr r r r r r s r N) �__doc__r
r �
fixer_utilr r r �BaseFixr r r r r �<module> s