�
�Wc� � �N � d Z ddlmZ ddlmZ G d� dej
� ZdS )z3Fix function attribute names (f.func_x -> f.__x__).� )�
fixer_base)�Namec � � e Zd ZdZdZd� ZdS )�FixFuncattrsTz�
power< any+ trailer< '.' attr=('func_closure' | 'func_doc' | 'func_globals'
| 'func_name' | 'func_defaults' | 'func_code'
| 'func_dict') > any* >
c � � |d d }|j t d|j dd z |j �� � d S )N�attr� z__%s__� )�prefix)�replacer �valuer )�self�node�resultsr s �4/usr/lib64/python3.12/lib2to3/fixes/fix_funcattrs.py� transformzFixFuncattrs.transform sO � ��v��q�!�����T�8�d�j�j���n�4�!%���.� .� /� /� /� /� N)�__name__�
__module__�__qualname__�
BM_compatible�PATTERNr � r r r r s/