a �DOg�!�@sLddlZddlZddlmZGdd�de�ZeZzddlmZWne yVdZYn0gd�Z dd�Z iZ Z d d �Zed�eeeeeeeeeeeeejee�ee�ejejfD] Z ee e <q�e!ed d�Z e dur�ee e <e"j e e"<e#j e e#<e$j e e$<e%j e e%<edu�rej e e<[ [ dgfd d �Z&iZ'Z dd�Z(e(e ed�<e(e ee�<e(e ee�<e(e e<e(e e<e(e e<e(e e<e(e e<e(e e<e(e ej)<e(e e<e(e ej<e(e ej<e(e ej<e(e e<e&fdd�Z*e*e e"<e&fdd�Z+e+e e<e&fdd�Z,e,e e#<edu�re,e e<dd�Z-e-e ej.<[ dd�Z/ddde&fdd�Z0[[[dS)�N)�dispatch_tablec@s eZdZdS)�ErrorN)�__name__� __module__� __qualname__�rr�/usr/lib64/python3.9/copy.pyr7sr)� PyStringMap)r�copy�deepcopycCs�t|�}t�|�}|r||�St|t�r0t|�St|dd�}|durL||�St�|�}|durh||�}nBt|dd�}|dur�|d�}n$t|dd�}|r�|�}n td|��t|t �r�|St |dg|�R�S)N�__copy__� __reduce_ex__�� __reduce__z%un(shallow)copyable object of type %s) �type�_copy_dispatch�get� issubclass�_copy_immutable�getattrrr� isinstance�str� _reconstruct)�x�cls�copier�reductor�rvrrrr Bs,          r cCs|S�Nr)rrrrrksr�CodeTypec Cs"|dur i}t|�}|�||�}||ur,|St|�}t�|�}|durR|||�}n�t|t�rht||�}n�t|dd�}|dur�||�}n|t�|�}|r�||�}nBt|dd�}|dur�|d�}n$t|dd�}|r�|�}n td|��t |t �r�|}nt ||g|�R�}||u�r|||<t ||�|S)N� __deepcopy__r rrz"un(deep)copyable object of type %s) �idrr�_deepcopy_dispatchr�_deepcopy_atomicrrrrrr� _keep_alive) r�memoZ_nil�d�yrrrrrrrr �sD            �   r cCs|Srr�rr%rrrr#�sr#cCs2g}||t|�<|j}|D]}||||��q|Sr)r!�append)rr%r r'r)�arrr�_deepcopy_list�s  r+csf��fdd�|D�}z�t|�WSty4Yn0t||�D]\}}||ur@t|�}qbq@|}|S)Ncsg|]}�|���qSrr)�.0r*�r r%rr� ��z#_deepcopy_tuple..)r!�KeyError�zip�tuple)rr%r r'�k�jrr-r�_deepcopy_tuple�s r5cCs:i}||t|�<|��D]\}}|||�||||�<q|Sr)r!�items)rr%r r'�key�valuerrr�_deepcopy_dict�s  r9cCst|�|jt|j|��Sr)r�__func__r �__self__r(rrr�_deepcopy_method�sr<cCs<z|t|��|�Wn ty6|g|t|�<Yn0dSr)r!r)r0r(rrrr$�s  r$csb�du}|r$|r$��fdd�|D�}||�} |r<| �t|�<|dur�|rR�|��}t| d�rh| �|�n^t|t�r�t|�dkr�|\}} nd} |dur�| j�|�| dur�| ��D]\} } t | | | �q�|du�r|r�|D]} �| ��} | � | �q�n|D]} | � | �q�|du�r^|�rF|D]&\} } �| ��} �| ��} | | | <�qn|D]\} } | | | <�qJ| S)Nc3s|]}�|��VqdSrr)r,�argr-rr� r/z_reconstruct..� __setstate__�) r!�hasattrr?rr2�len�__dict__�updater6�setattrr))rr%�func�args�stateZlistiterZdictiterr Zdeepr'� slotstater7r8�itemrr-rrsF               r)1�types�weakref�copyregr� Exceptionr�errorZorg.python.corer � ImportError�__all__r rr&rr�int�float�bool�complexrr2�bytes� frozenset�range�slice�property�BuiltinFunctionType�Ellipsis�NotImplemented� FunctionType�ref�tr�list�dict�set� bytearrayr r"r#rr+r5r9r<� MethodTyper$rrrrr�3s|   ' �        4            � -