U e5d�!�@sPddlZddlZddlmZGdd�de�ZeZzddlmZWne k rXdZYnXdddgZ dd�Z iZ Z d d �Zed�eeeeeeeeeeeeejee�ee�ejejfD] Z ee e <q�e!ed d�Z e dk r�ee e <e"j e e"<e#j e e#<e$j e e$<e%j e e%<edk �rej e e<[ [ dgfd d�Z&iZ'Z d d�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#<edk �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.8/copy.pyr7sr)� PyStringMap�copy�deepcopycCs�t|�}t�|�}|r||�St|t�r0t|�St|dd�}|dk rL||�St�|�}|dk rh||�}nBt|dd�}|dk r�|d�}n$t|dd�}|r�|�}n td|��t|t �r�|St |df|��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,          cCs|S�Nr)rrrrrksr�CodeTypec Cs |dkr i}t|�}|�||�}||k r,|St|�}t�|�}|dk rR|||�}n�t|t�rht||�}n�t|dd�}|dk r�||�}nzt�|�}|r�||�}nBt|dd�}|dk r�|d�}n$t|dd�}|r�|�}n td|��t |t �r�|}nt ||f|��}||k �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            �   cCs|Srr�rr%rrrr#�sr#cCs2g}||t|�<|j}|D]}||||��q|Sr)r!�append)rr%r r'r)�arrr�_deepcopy_list�s  r+csh��fdd�|D�}z�t|�WStk r6YnXt||�D]\}}||k rBt|�}qdqB|}|S)Ncsg|]}�|���qSrr)�.0r*�r r%rr� �sz#_deepcopy_tuple..)r!�KeyError�zip�tuple)rr%r r'�k�jrr-r�_deepcopy_tuple�sr4cCs:i}||t|�<|��D]\}}|||�||||�<q|Sr)r!�items)rr%r r'�key�valuerrr�_deepcopy_dict�s  r8cCst|�|jt|j|��Sr)r�__func__r �__self__r(rrr�_deepcopy_method�sr;cCs>z|t|��|�Wn"tk r8|g|t|�<YnXdSr)r!r)r/r(rrrr$�s r$csb�dk }|r$|r$��fdd�|D�}||�} |r<| �t|�<|dk r�|rR�|��}t| d�rh| �|�n^t|t�r�t|�dkr�|\}} nd} |dk r�| j�|�| dk r�| ��D]\} } t | | | �q�|dk �r|r�|D]} �| ��} | � | �q�n|D]} | � | �q�|dk �r^|�rF|D]&\} } �| ��} �| ��} | | | <�qn|D]\} } | | | <�qJ| S)Nc3s|]}�|��VqdSrr)r,�argr-rr� sz_reconstruct..� __setstate__�) r!�hasattrr>rr1�len�__dict__�updater5�setattrr))rr%�func�args�stateZlistiterZdictiterr Zdeepr'Z slotstater6r7�itemrr-rrsF               r)1�types�weakref�copyregr� Exceptionr�errorZorg.python.corer � ImportError�__all__r rr&rr�int�float�bool�complexrr1�bytes� frozenset�range�slice�property�BuiltinFunctionType�Ellipsis�NotImplemented� FunctionType�ref�tr�list�dict�set� bytearrayr r"r#rr+r4r8r;� MethodTyper$rrrrr�3s�   '�        4            � -