
    uYfY                      d Z ddlmZ g dZdZddlZddlmZ ddlmZ	 eZ
ddlZddlZdad	aej        d
k     Zej        dk     Zej        dk     Zej        dk     ZddlZddlmZmZ ddlmZmZ ddlmZ ddlmZ  ddl!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z) e*Z+e,Z- e,e.          Z/ e,e0          Z1e2Z3e,Z4e5Z6ddl!m7Z8m9Z9 ddlm:Z:m;Z;m<Z<m=Z=m>Z> ddl?Z@ddlAZAddlBZBddlCZCddlDZDddlEmFZFmGZGmHZH ddlImJZJ ddlKmLZLmMZM ddlNmOZO ddlPmQZQmRZR d	ZSddlTZU eVeUjW        jX                  ZX	 ddlYZYdZZ e[eYd           Z\n# e]$ r d	ZZd	Z\Y nw xY wda^da_da`	 eUjW        a                                b                    d          s e]d          da^da_da`n# e]$ r Y nw xY wd Zct          r
d Zdd  Zed! Zfn	d" Zdd# Zed$ Zfdd%l!mgZgmhZhmiZimjZjmkZkmlZl  e, d& d          jm        d                   Zn e, eOeod'(                    Zp e, eqer es                                Zt e, eQd                    Zu e, eRd)                    Zv	 dd*lNmwZx n# e]$ r dZxY nw xY w eyexe,          sdZxd+ Zzej{        d,k    Z| ezd-d.          Z} ezd/d0.          Z~e|rdn ezd1d0.          Z ezd-d0.          Z ezd2d0.          Z	 dd3lmZ  ezd/d0e4          Ze|rdn ezd1d0e4          Z ezd-d0e4          Z ezd2d0e4          Zn# e]$ r dxZxZxZZY nw xY wdd5lmZ dxZZdd6lmZ dd7lmZ 	 eZdZd8Zn(# e$ r  d	Z e,e          Zn# e$ r dZY nw xY wd9ZY nw xY wddlZddlZ G d: d;e          Zdd<lmZ dd=lmZmZ dZdZd'Zd> Zdd?Zdd@ZddAZddBZ G dC dDe          Z G dE dFee<          Z G dG dHee=          Z G dI dJee>          Z G dK dLe          Z G dM dNe          Z	 ej                                        ZdO ZdP ZdQ ZddRZdS Z e e                      Ze                    epeteuevdT           ej        dUk     re                    dVeni            eJ            Ze}eeee~eeeedW	Ze                     e,i                                            e,i                                            e,i                                            e,e                                           e,e                                           e,e                                          dX           ereedY<   er
eedZ<   eed[<   	 ej        d\k    r)dd]l!mZ  e, e eeeof                              ed^<   	 	 ddlZej        ed_<   n# e]$ r Y nw xY we                    e            ee                                          Z[ ed` e                                D                       Zda Zdb Zdc Z	 	 dddZ G de df          Zg dgZeD ]*\  ZZZ e[e"e̦          reZe͠                                Z n+ eeЦ                              g dh          Zdi Zdj Zdk Zdl Zdm Zdn Zdo Zdp Z G dq dre          Z G ds dte          Z G du dve          Z eݦ            Zi Z	 e e8eߦ          ez  u Zn# er$ r d	ZY nw xY w[dZ edw          ZddxZdy ZddzZd{ Zdd|Zd} Zdd~Zd Zd Zd ZddZd ZddZd Zdej        dfdZ ee"          d             Zd Z ee          d             Zeserd Znd ZeeJfD ]MZ e            Z ee          D ]5\  ZZ e,  eee                                Zeej        vr
eej        e<   6N[[[[[ ee-          d             Z eej                  d             Z ee          d             Z  ee           d             Zd Zd Z ee}           ee           ee           ee~          d                                                 Zer ee          d             ZerN ee           ee           ee          d                                     Zer ee          d             Zer* ee          d             Z ee          d             ZexddlNmZ  eex          d             Z eet          d             Z	e\r ee$          d             Z
n ee$          d             Z
e\sZ eek           eeg           eej           eei           eeh          d                                                             Zn& eek           eeg          d                         Z een          d             Zer ee8          d             Zn ee8          d             Z ee3          d             Z ee6           ee/           ee1          d                                     Zd ZddZ eeF          d             Z eeG           eeH          d                         Zd Zd Z ee(          d             Zd Zd Z ee4          dd            Z ee           eeCj                  d                         Z ee           ee           eeCj                   eeCj                   d                                                 Z! ee#          d             Z"eZrU e[eYd          rHeYj#        j$        Z%eYj&        eYj'        eYj&        fe%_(        eYj)        e%_*        eYj#        j+        Z,eYj)        eYj'        fe,_(        eYj&        e,_*        eYj#        j-        Z.eYj)        fe._(        eYj&        e._*        eYj#        j/        Z0eYj)        fe0_(        eYj&        e0_*        eYj#        j1        Z2eYj)        fe2_(        eYj'        e2_*        eYj#        j3        Z4eYj)        eYj'        fe4_(        eYj5        e4_*        eYj#        j6        Z7eYj)        eYj&        fe7_(        eYj#        j8        Z9eYj)        eYj&        fe9_(        eYj#        j:        Z;eYj)        eYj'        fe;_(        eYj#        j<        Z=eYj)        eYj&        fe=_(        dZ> e% eYj?        e%eYj&                   eYj'        e>          d          Z@ e,e@          ZA eeA          d             ZBeAed<   eAed<   eÐC                    eA           ndZ@ e[eDd          r eeDjD                  d             ZE e[eDd          r$ e e,eDjF                            d             ZG e[eDd          r$ e e,eDjH                            d             ZI e[eDd          r eeDjJ                  d             ZKddZLd ZMddZNd ZObb[dS )aK  
dill: a utility for serialization of python objects

The primary functions in `dill` are :func:`dump` and
:func:`dumps` for serialization ("pickling") to a
file or to a string, respectively, and :func:`load`
and :func:`loads` for deserialization ("unpickling"),
similarly, from a file or from a string. Other notable
functions are :func:`~dill.dump_module` and
:func:`~dill.load_module`, which are used to save and
restore module objects, including an intepreter session.

Based on code written by Oren Tirosh and Armin Ronacher.
Extended to a (near) full set of the builtin types (in types module),
and coded to the pickle interface, by <mmckerns@caltech.edu>.
Initial port to python3 by Jonathan Dobson, continued by mmckerns.
Tested against "all" python types (Std. Lib. CH 1-15 @ 2.7) by mmckerns.
Tested against CH16+ Std. Lib. ... TBD.
    )annotations)dumpdumpsloadloadscopyPickler	UnpicklerregisterpicklepicklescheckDEFAULT_PROTOCOLHIGHEST_PROTOCOLHANDLE_FMODECONTENTS_FMODE
FILE_FMODEPickleErrorPickleWarningPicklingErrorPicklingWarningUnpicklingErrorUnpicklingWarningdillN   )adapter)traceFi  i  	i  
i )_Picklerr
   )GLOBALPOP)LockType)RLock)CodeTypeFunctionType
MethodTypeGeneratorTypeTracebackType	FrameType
ModuleTypeBuiltinMethodType)MappingProxyType	new_class)r   r   r   r   r   )ReferenceType	ProxyTypeCallableProxyType)OrderedDict)EnumEnumMeta)partial)
itemgetter
attrgetterT	pythonapinumpyzNo module named 'numpy'c                 *    ddl ma ddl ma ddl ma dS )Nr   )ufunc)ndarray)dtypeT)r7   r9   NumpyUfuncTyper:   NumpyArrayTyper;   
NumpyDType     C:\Users\Admin\Desktop\cercetare\experiment de trasmitere a informatiei din viitor in prezent\qiskit_env\Lib\site-packages\dill/_dill.py__hook__rB   i   s=    ------//////))))))4r@   c                    t          d | j        D                       rdS t                       | j        t          j        us| j        t          j        urdS dS )Nc              3  :   K   | ]}|j         |j        fd k    V  dS ))r7   r:   N
__module____name__.0cs     rA   	<genexpr>z*ndarraysubclassinstance.<locals>.<genexpr>q   s1      \\aaj)-AA\\\\\\r@   FT)all__mro__rB   __reduce_ex__r=   
__reduce__obj_types    rA   ndarraysubclassinstancerR   p   s^    \\8K[\\\\\ 	5


!)EEE&n.GGG5tr@   c                >    t          d | j        D                       S )Nc              3  :   K   | ]}|j         |j        fd k    V  dS ))r7   r9   NrE   rH   s     rA   rK   znumpyufunc.<locals>.<genexpr>{   s1      ^^AL!*-1CC^^^^^^r@   )anyrM   rP   s    rA   
numpyufuncrV   z   s"    ^^XM]^^^^^^r@   c                    t          d | j        D                       rdS t                       | t          t                    u S )Nc              3  :   K   | ]}|j         |j        fd k    V  dS ))r7   r;   NrE   rH   s     rA   rK   znumpydtype.<locals>.<genexpr>}   s1      ZZAaj)-??ZZZZZZr@   F)rL   rM   rB   typer>   rP   s    rA   
numpydtyperZ   |   sE    ZZIYZZZZZ 	5


4
++++r@   c                    dS NFr?   objs    rA   rR   rR      s    UUr@   c                    dS r\   r?   r]   s    rA   rV   rV          r@   c                    dS r\   r?   r]   s    rA   rZ   rZ      r`   r@   )GetSetDescriptorTypeClassMethodDescriptorTypeWrapperDescriptorTypeMethodDescriptorTypeMemberDescriptorTypeMethodWrapperTypec                      fdS )Nc                    S Nr?   )yxs    rA   <lambda>z<lambda>.<locals>.<lambda>   s    Q r@   r?   rl   s   `rA   rm   rm      s    ;;;; r@      base__repr__)_lru_cache_wrapperc                     |                     dt          j                  } |t          j        g| R i |}t          |          }|                                 |S )Nopen)pop__builtin__ru   osdevnullrY   close)argskwargsru   fts        rA   get_file_typer      sV    ::fk.//DRZ)$)))&))AQAGGIIIHr@   
emscriptenrb)	bufferingrzr+bwb)ru   )r   ru   )BytesIO)socket)_reduce_socket)exitquitget_ipythonr?   c                  8    e Zd ZdZd	dZd Zd Zd Zd Zd Z	dS )
SentinelzH
    Create a unique sentinel object that is pickled as a constant.
    Nc                z    || _         |*t          j                    j        j        d         | _        d S || _        d S )NrG   )nameinspectcurrentframef_back	f_globalsrF   )selfr   module_names      rA   __init__zSentinel.__init__   s9    	%244;EjQDOOO)DOOOr@   c                &    | j         dz   | j        z   S )N.)rF   r   r   s    rA   rr   zSentinel.__repr__   s    $ty00r@   c                    | S rj   r?   r   s    rA   __copy__zSentinel.__copy__       r@   c                    | S rj   r?   )r   memos     rA   __deepcopy__zSentinel.__deepcopy__   r   r@   c                    | j         S rj   r   r   s    rA   rO   zSentinel.__reduce__   
    yr@   c                    | j         S rj   r   )r   protocols     rA   rN   zSentinel.__reduce_ex__   r   r@   rj   )
rG   rF   __qualname____doc__r   rr   r   r   rO   rN   r?   r@   rA   r   r      s}         * * * *1 1 1          r@   r   )_shims)ReduceGetattrc                    |                     dt          j        d                   }t          t	          | g|R i ||          S )z
    Use pickling to 'copy' an object (i.e. `loads(dumps(obj))`).

    See :func:`dumps` and :func:`loads` for keyword arguments.
    ignore)r   )rv   r
   settingsr   r   )r^   r{   kwdsr   s       rA   r   r      sJ     XXh	 28 <==Fs*T***T**6::::r@   c                    ddl m } ||d         nt          |          }|                                }|                    t	          |||                     t          ||fi |                    |            dS )zS
    Pickle an object to a file.

    See :func:`dumps` for keyword arguments.
    r   r   Nr   )byreffmoderecurse)r   intr   updatedictr	   r   )	r^   filer   r   r   r   r   r   _kwdss	            rA   r   r      s     #"""""'/'7x
##S]]HIIKKE	LLE@@@AAAD($$e$$))#...
Fr@   c                j    t                      }t          | |||||fi | |                                S )a  
    Pickle an object to a string.

    *protocol* is the pickler protocol, as defined for Python *pickle*.

    If *byref=True*, then dill behaves a lot more like pickle as certain
    objects (like modules) are pickled by reference as opposed to attempting
    to pickle the object itself.

    If *recurse=True*, then objects referred to in the global dictionary
    are recursively traced and pickled, instead of the default behavior
    of attempting to store the entire global dictionary. This is needed for
    functions defined via *exec()*.

    *fmode* (:const:`HANDLE_FMODE`, :const:`CONTENTS_FMODE`,
    or :const:`FILE_FMODE`) indicates how file handles will be pickled.
    For example, when pickling a data file handle for transfer to a remote
    compute service, *FILE_FMODE* will include the file contents in the
    pickle and cursor position so that a remote method can operate
    transparently on an object with an open file handle.

    Default values for keyword arguments can be set in :mod:`dill.settings`.
    )StringIOr   getvalue)r^   r   r   r   r   r   r   s          rA   r   r      s;    0 ::DdHeUG<<t<<<==??r@   c                D    t          | fd|i|                                S )zW
    Unpickle an object from a file.

    See :func:`loads` for keyword arguments.
    r   )r
   r   )r   r   r   s      rA   r   r     s+     T11&1D1166888r@   c                <    t          |           }t          ||fi |S )ah  
    Unpickle an object from a string.

    If *ignore=False* then objects whose class is defined in the module
    *__main__* are updated to reference the existing class in *__main__*,
    otherwise they are left to refer to the reconstructed type, which may
    be different.

    Default values for keyword arguments can be set in :mod:`dill.settings`.
    )r   r   )strr   r   r   s       rA   r   r   #  s'     C==Df%%%%%r@   c                      e Zd ZddZd ZdS )MetaCatchingDictNc                8    	 | |         S # t           $ r |cY S w xY wrj   )KeyError)r   keydefaults      rA   getzMetaCatchingDict.get<  s5    	9 	 	 	NNN	s   
 c                V    t          |t                    rt          S t                      rj   )
issubclassrY   	save_typer   )r   r   s     rA   __missing__zMetaCatchingDict.__missing__B  s$    c4   	**r@   rj   )rG   rF   r   r   r   r?   r@   rA   r   r   ;  s7               r@   r   c                      e Zd ZdS )r   NrG   rF   r   r?   r@   rA   r   r   H          Dr@   r   c                      e Zd ZdS )r   Nr   r?   r@   rA   r   r   K  r   r@   r   c                      e Zd ZdS )r   Nr   r?   r@   rA   r   r   N  r   r@   r   c                      e Zd ZU dZ eej                                                  Zded<   	 dZ	ddl
m
Z
 d Zdd	Zej        j        e_        d
 Zej        j        e_        dS )r	   z1python's Pickler extended to interpreter sessionsz?typing.Dict[type, typing.Callable[[Pickler, typing.Any], None]]dispatchFr   r   c                   t           j        }|                    dd           }|                    dd           }|                    dd           }t          j        | |g|R i | t
          | _        i | _        ||d         n|| _        d| _	        ||d         n|| _
        ||d         n|| _        t                      | _        || _        d S )Nr   r   r   F)r	   r   rv   StockPicklerr   _main_module_main_diff_cache_byref	_strictio_fmode_recurser0   	_postproc_file)r   r   r{   r   r   r   r   r   s           rA   r   zPickler.__init___  s    #'4(('4((88It,,dD848884888!
+1>hw''v+1>hw''v/7/?++X$


r@   Tc                   t          |          }t          r|t           u s|t          j        v sut	          |          rt          |          d             }t          |          rt          |          d             }t          |          rt          |          d             }t          r"|t          u rdt          z  }t          |          t          j        | ||           d S )Nc           	         t          j        | d|           t          |dt          |dd                     }t          j        | ||           t          j        | d           d S )NzNu: %sr   rG   r   # Nu)loggerr   getattrr   save_globalpicklerr^   r   s      rA   save_numpy_ufuncz&Pickler.save.<locals>.save_numpy_ufuncv  sc    L(C888"3ZQU8V8VWWD ,WcEEEEL&111Fr@   c                    t          j        | d|           |                     t          |j        f|           t          j        | d           d S )NzDt: %sr]   z# Dt)r   r   save_reduce_create_dtypemetarY   r   r^   s     rA   save_numpy_dtypez&Pickler.save.<locals>.save_numpy_dtype  sM    L(C888''(9CH;C'PPPL&111Fr@   c                   t          j        | d|j        |j                   t	          |dd           }|                                \  }}}|                     t          ||||f|           t          j        | d           d S )NzNu: (%s, %s)__dict__r]   r   )r   r   shaper;   r   rO   r   _create_array)r   r^   npdictr}   r{   states         rA   save_numpy_arrayz&Pickler.save.<locals>.save_numpy_array  s~    L.#)SYOOO$S*d;;F%(^^%5%5NAtU''$uV7LRU'VVVL&111Fr@   z;Can't pickle %s: attribute lookup builtins.generator failed)rY   r=   r	   r   rV   r   rZ   rR   GENERATOR_FAILr&   r   r   save)r   r^   save_persistent_idrQ   r   r   r   msgs           rA   r   zPickler.saveo  s   99 &	8t#3#3x7CS7S7S (## (##  $# (## (##  $# 'x00 (##  $#  	%h-77OR__C$$$$%788888r@   c                X    t          j        |            t          j        | |           d S rj   )r   trace_setupr   r   r   r^   s     rA   r   zPickler.dump  s,    4   $$$$$$r@   NT)rG   rF   r   r   r   r   r   r   __annotations___sessionr   r   r   r   r?   r@   rA   r	   r	   R  s         ;;|499;;<<  = = = = H""""""   /9 /9 /9 /9b  $,DL% % %  $,DLLLr@   r	   c                  V    e Zd ZdZddlmZ dZd Zd Zd Ze	j        j        e_        dS )	r
   zBpython's Unpickler extended to interpreter sessions and more typesr   r   Fc                    ||fdk    r| j         j        S ||fdk    rt          d           S |dk    rd}t          j        | ||          S )N)rw   __main__)rw   NoneTypez	dill.dill
dill._dill)r   r   rY   StockUnpickler
find_class)r   moduler   s      rA   r   zUnpickler.find_class  s]    D>888:&&d^:::::[  <&(vt<<<r@   c                    t           j        }|                    dd           }t          j        | g|R i | t
          | _        ||d         n|| _        d S )Nr   )r	   r   rv   r   r   r   r   _ignore)r   r{   r   r   r  s        rA   r   zUnpickler.__init__  s^    #((8T**4t444t444!
-4_x))'r@   c                   t          j        |           }t          |          j        t	          t
          dd          k    rK| j        sDt	          | j        t          |          j                  |_	        n# t          t          f$ r Y nw xY w|S )NrG   r   )r   r   rY   rF   r   r   r  r   rG   	__class__AttributeError	TypeErrorr   s     rA   r   zUnpickler.load  s{    !$''997<Z#P#PPP< 8%,TZc9K%L%LS]]&y1777447
s   ,A5 5B	B	N)
rG   rF   r   r   r   r   r   r   r   r   r?   r@   rA   r
   r
     sk        LL""""""H= = =J J J   "&.DLDr@   r
   c                $    |t           j        | <   dS )zBexpose :attr:`~Pickler.dispatch` table for user-created extensionsNr	   r   r~   funcs     rA   r   r     s    GQ
Fr@   c                      fd}|S )zHdecorator to register types to Pickler's :attr:`~Pickler.dispatch` tablec                &    | t           j        <   | S rj   r	  )r  r~   s    rA   proxyzregister.<locals>.proxy  s    "r@   r?   )r~   r  s   ` rA   r   r     s#         Lr@   c                     t          t          j                                                  D ]E\  } }|j        t
          k    r0t          j        | = | t          v rt          |          t          j        | <   FdS )z7drop dill-registered types from pickle's dispatch tableN)listr   r   itemsrF   rG   pickle_dispatch_copy)rY   r  s     rA   _revert_extensionr    sq    <0668899 I I
d?h&&%d++++.B4.H%d+	I Ir@   c                j    | a t           r't          "	 ddlm} n# t          $ r ddl}Y nw xY w|adS dS dS )a  
    Reduces size of pickles by only including object which have changed.

    Decreases pickle size but increases CPU time needed.
    Also helps avoid some unpickleable objects.
    MUST be called at start of script, otherwise changes will not be recorded.
    Nr   )diffr   )	_use_diffr   ImportError)onds     rA   use_diffr    ss     I T\	####### 	 	 		 \\s    **c               #  f  K   dd l } t          t          t          j                                                  t          | j                                                  z                                             }|D ]6\  }}t          |dd           dk    rt          |          t          u r||fV  7d S )Nr   rF   builtins)typesr   r  rw   r   r  r   rY   )r  r  r   values       rA   _create_typemapr     s      LLLT+&,,..//%.&&(())* 	+ 	++0577   
U5,--;;KK4''u*
Fr@   )PartialType	SuperTypeItemGetterTypeAttrGetterTypei CellType)	FileTypeBufferedRandomTypeBufferedReaderTypeBufferedWriterTypeTextWrapperTypePyBufferedRandomTypePyBufferedReaderTypePyBufferedWriterTypePyTextWrapperType)DictKeysTypeDictValuesTypeDictItemsTypeOdictKeysTypeOdictValuesTypeOdictItemsTypeExitType	InputType
OutputTypei )GenericAliasGenericAliasIteratorTypeHKEYTypec              #  $   K   | ]\  }}||fV  d S rj   r?   )rI   kvs      rA   rK   rK   H  s*      <<41aA<<<<<<r@   c                *    t          j        |           S rj   )marshalr   )strings    rA   
_unmarshalrA  J  s    =   r@   c                    t           |          S rj   )_reverse_typemapr   s    rA   
_load_typerD  M  s    D!!r@   c                     | | S rj   r?   )typeobjr{   s     rA   _create_typerG  P  s    7D>r@   c                    t          | |pt                      |||          }||j                            |           |||_        d|j        vrt                      d         |j        d<   |S )N__builtins__)r$   r   r   r   __kwdefaults____globals__globals)fcodefglobalsfname	fdefaultsfclosurefdictfkwdefaultsr  s           rA   _create_functionrT  S  sw     x14665)XNNDU###) T---+299^+D(Kr@   c                  F    e Zd ZdZd Zd Zd Zd Zed             Z	d Z
dS )	matchaI  
    Make avaialable a limited structural pattern matching-like syntax for Python < 3.10

    Patterns can be only tuples (without types) currently.
    Inspired by the package pattern-matching-PEP634.

    Usage:
    >>> with match(args) as m:
    >>>     if   m.case(('x', 'y')):
    >>>         # use m.x and m.y
    >>>     elif m.case(('x', 'y', 'z')):
    >>>         # use m.x, m.y and m.z

    Equivalent native code for Python >= 3.10:
    >>> match args:
    >>>     case (x, y):
    >>>         # use x and y
    >>>     case (x, y, z):
    >>>         # use x, y and z
    c                "    || _         d | _        d S rj   )r  _fields)r   r  s     rA   r   zmatch.__init__x  s    
r@   c                    | S rj   r?   r   s    rA   	__enter__zmatch.__enter__{  r   r@   c                    dS r\   r?   )r   exc_infos     rA   __exit__zmatch.__exit__}  s    ur@   c                b    t          | j                  t          |          k    rdS || _        dS )zjust handles tuple patternsFT)lenr  r{   )r   r{   s     rA   casez
match.case  s.    tz??c$ii''5 	tr@   c                v    | j         ,t          t          | j        | j                            | _         | j         S rj   )rX  r   zipr{   r  r   s    rA   fieldszmatch.fields  s1     <DItz : :;;DL|r@   c                    | j         |         S rj   )rc  r   items     rA   __getattr__zmatch.__getattr__  s    {4  r@   N)rG   rF   r   r   r   rZ  r]  r`  propertyrc  rg  r?   r@   rA   rV  rV  c  s         (           X
! ! ! ! !r@   rV  ))      aco_endlinetablezargcount posonlyargcount kwonlyargcount nlocals stacksize flags code consts names varnames filename name qualname firstlineno linetable endlinetable columntable exceptiontable freevars cellvars)rj  rk  co_exceptiontablezargcount posonlyargcount kwonlyargcount nlocals stacksize flags code consts names varnames filename name qualname firstlineno linetable                          exceptiontable freevars cellvars)rj  
   co_linetablezargcount posonlyargcount kwonlyargcount nlocals stacksize flags code consts names varnames filename name          firstlineno linetable                                         freevars cellvars)rj     co_posonlyargcountzargcount posonlyargcount kwonlyargcount nlocals stacksize flags code consts names varnames filename name          firstlineno lnotab                                            freevars cellvars)rj     co_kwonlyargcountzargcount                 kwonlyargcount nlocals stacksize flags code consts names varnames filename name          firstlineno lnotab                                            freevars cellvars)codelnotab	linetableendlinetablecolumntableexceptiontablec                 H	   t          | d         t                    s| ^}} nd}t          |           5 }|                    d          rt          dk    rt          g | d d         t          | d         d          r| d                                         n| d         | dd         t          | d         d          r| d                                         n| d         t          | d	         d          r| d	                                         n| d	         | d
         | d         R  cd d d            S |j        n|                    d          rt          dk    st          dk    rt          g | d d         t          | d         d          r| d                                         n| d         | dd         t          | d         d          r| d                                         n| d         | d         | d	         R  cd d d            S |j        t          dk    r|j	        d<   n|r|n|j	        d<   n|                    d          rt          dk    rt          g | d d         t          | d         d          r| d                                         n| d         | dd         t          | d         d          r| d                                         n| d         | d         | d         R  cd d d            S |j        n|                    d          rt          dk    rt          g | d d         t          | d         d          r| d                                         n| d         | dd         d | dd         D             | d         | d         R  cd d d            S |j        nt          d          d d d            n# 1 swxY w Y                       dd                               d|                               dd                               dd                                        dd                               d d                                d!d            fd"t          D             } t          |  S )#Nr   r@   )argcountposonlyargcountkwonlyargcountnlocals	stacksizeflagsry  constsnamesvarnamesfilenamer   qualnamefirstlinenor{  r~  freevarscellvarsrn     encoderw              )r  r  r  r  r  r  ry  r  r  r  r  r   r  LNOTAB_OR_LINETABLEr  r  rp  rs     r{  rz  )r  r  r  r  r  ry  r  r  r  r  r   r  rz  r  r  rv        )r  r  r  r  r  r  ry  r  r  r  r  r   r  r  r{  r|  r}  r~  r  r  ri  c              3  b   K   | ]*}t          |d           r|                                n|V  +dS r  N)hasattrr  )rI   rl  s     rA   rK   z_create_code.<locals>.<genexpr>  s=      UUAGAx$8$8?ahhjjjaUUUUUUr@         z$pattern match for code object failedr  r  r   r~  r|  r}  c              3     K   | ]E}|t           v r0t          |         d           r|                                         n|         V  FdS r  )ENCODE_PARAMSr  r  )rI   r<  rc  s     rA   rK   z_create_code.<locals>.<genexpr>  sp       " " #$}"4"4H9U9U"4F1I[abc[d " " " " " "r@   )
isinstancer   rV  r`  CODE_VERSIONr#   r  r  rc  r  r   
setdefaultCODE_PARAMS)r{   LNOTABmrc  s      @rA   _create_coder    sx   d1gs## 	t GJ66 
   E	J
 v%% "1"X(/Q(B(BODGNN$$$Q !B$Z *1b8)D)DRDHOO%%%$r(	
 *1b8)D)DRDHOO%%%$r( H H  GJ GJ GJ GJ GJ GJ GJ GJ" XFFVV 
   4	J
 v%%)>)> "1"X(/Q(B(BODGNN$$$Q !B$Z *1b8)D)DRDHOO%%%$r(	
 H H  3GJ GJ GJ GJ GJ GJ GJ GJB XFv%%&'&;{##-3#N669Nx  VV 
    	J
 u$$ "1"X(/Q(B(BODGNN$$$Q !B$Z *1b8)D)DRDHOO%%%$r(	
 H H  [GJ GJ GJ GJ GJ GJ GJ GJj XFFVV 
   	J
 z)) "1"X(/Q(B(BODGNN$$$Q !B$Z VUbQSeUUU	
 H H  {GJ GJ GJ GJ GJ GJ GJ GJJ XFF!"HIIIOGJ GJ GJ GJ GJ GJ GJ GJ GJ GJ GJ GJ GJ GJ GJT '+++
h'''
k3'''
j&.111
&,,,
nd+++
mT***" " " " " " "DT?s-   C6O6COC+OB!O:OO!$O!c                *    |i }|d} | |g|R i |S )Nr?   r?   )ftypeobjr  r{   r   s       rA   _create_ftyper    s6    ||8D(4(((4(((r@   c                    | s%t           j        d                             d          S | dk    rt           j        d         S t           j        |          S )Nr?   r?   )typingTuple	copy_with)argzr{   s     rA   _create_typing_tupler    sH     .|B))"---u}}|B<r@   c                r    ddl m}  |            }| r$|                    d          st          d          |S )Nr   )LockFCannot acquire lock)	threadingr  acquirer   )lockedr{   r  locks       rA   _create_lockr  
  sO    466D 9||E"" 	9!"7888Kr@   c                    t                      }||                    | |f           |r#|                                st          d          |S )Nr  )	RLockType_acquire_restore	_is_ownedr   )countownerr{   r  s       rA   _create_rlockr    sV    ;;Duen--- 5T^^%% 53444Kr@   c                   t           j        t           j        t           j        d}| t	          |                                          v r
||          }	n?| dk    rt          j                    }	n$| dk    rdd l}
|
	                    |          }	n	 t          j
                            |           }n# t          $ r d}Y nw xY w|s(|rt          d| z            d|v r|t          k    rd} d}nt          j
                            |           }||k    r|rt!          d          |t"          k    r|}	 |t          k    rL || d	|v r|nd	          }	|	                    |           d	|vr |	                                  || |          }	n| dk    rdd l}
|
	                    |          }	n|t"          k    rd	|v sd
|v rt          j        }d|v r|t          j        z  }n|t          j        z  }t          j        t          j        | |          |          }	t3          |	d|	          }t3          |d|          }| |_        |	j        | k    sJ n || |          }	n=# t6          t          f$ r) t          j                    d         }t;          |          w xY w|r|	                                 n&|dk    r |t<          k    r|	                    |           |	S )N)z<stdin>z<stdout>z<stderr>z	<tmpfile>z<fdopen>r   Fz)[Errno 2] No such file or directory: '%s'r   zinvalid buffer sizewrl   +bufferrawr   ) sys	__stdin__
__stdout__
__stderr__r  keysrx   tmpfiletempfileTemporaryFilepathexists	ExceptionFileNotFoundErrorr   getsize
ValueErrorr   writerz   O_CREATO_RDWRO_WRONLYfdopenru   r   r   IOErrorr\  r   r   seek)r   modepositionclosedru   strictior   fdatar  r}   r  r  current_sizer  r   errs                   rA   _create_filehandler    s
    }( (EtEJJLL!!!!$K			JLL			""4((	W^^D))FF 	 	 	FFF	 	1 "'(SVZ(Z[[[*!4!4!LL7??400Ll"" ( !6777.(('	'
""Dsd{{tt<<d??GGIIIT4((A##**400.((4KK3$;;
$;;RY&EER[(EIbgdE22D99Ax++Aua((v~~~~~Dt$$*+ 	' 	' 	',..#C!#&&&	'  						Q5L00	xHs   B/ /B>=B>/D$I :Jc                |    t          |           }|r|                                 n|                    |           |S rj   )r   rz   r  r  r  r  r}   s       rA   _create_stringir  b  s:    A qwwyyyy
&&


Hr@   c                    t                      }|r|                                 n*|                    |            |                    |           |S rj   )r   rz   r  r  r  s       rA   _create_stringor  h  sG    

A qwwyyyywwu~~~vvhHr@   c                      e Zd Zd Zd ZdS )_itemgetter_helperc                    g | _         d S rj   r  r   s    rA   r   z_itemgetter_helper.__init__q  s    


r@   c                :    | j                             |           d S rj   )r  appendre  s     rA   __getitem__z_itemgetter_helper.__getitem__s  s    
$r@   N)rG   rF   r   r   r  r?   r@   rA   r  r  p  s2              r@   r  c                      e Zd ZddZd ZdS )_attrgetter_helperNc                "    || _         || _        d S rj   )attrsindex)r   r  r  s      rA   r   z_attrgetter_helper.__init__x  s    



r@   c                .   t                               | d          }t                               | d          }|%t          |          }|                    |           n d                    ||         |g          ||<    t          |           ||          S )Nr  r  r   )object__getattribute__r_  r  joinrY   )r   attrr  r  s       rA   r  z#_attrgetter_helper.__getattribute__{  s    ''g66''g66=JJELL88U5\4$899E%LtDzz%'''r@   rj   )rG   rF   r   r   r  r?   r@   rA   r  r  w  s7           ( ( ( ( (r@   r  c                      e Zd Zd ZdS )_dictproxy_helperc                    |S rj   r?   )r   rl  s     rA   __ror__z_dictproxy_helper.__ror__  s    r@   N)rG   rF   r   r  r?   r@   rA   r  r    s#            r@   r  _CELL_EMPTYc                :    | t           ur| fdj        d         S )Nc                      S rj   r?   )r  s   rA   rm   z_create_cell.<locals>.<lambda>  s    E r@   r   )r  __closure__)contentsr  s    @rA   _create_cellr     s'    {""MMM&q))r@   c                R    ddl m} | ddlm}  | |            g|R  S  || g|R  S )Nr   )refUserDict)weakrefr  collectionsr  )r^   r{   r  r  s       rA   _create_weakrefr    s]    
{((((((s88::%%%%%3s?T???r@   c                j    ddl m} | #|r
 |d g|R  S ddlm}  | |            g|R  S  || g|R  S )Nr   )r  c                    | S rj   r?   rn   s    rA   rm   z#_create_weakproxy.<locals>.<lambda>  s    1 r@   r  )r  r  r  r  )r^   callabler{   r  r  s        rA   _create_weakproxyr    s    
{4EE**4t4444((((((uXXZZ'$''''5tr@   c                     t          |           S rj   )eval)repr_strs    rA   
_eval_reprr    s    >>r@   c                r     | | }|                     |           ||j                            |           |S rj   )__setstate__r   r   )r}   r{   r   r   arrays        rA   r   r     sB    AtHE	uf%%%Lr@   c                z    t           du rt                       | t           S t          t          |                     S )NT)r>   rB   rY   )scalar_types    rA   r   r     s7    T8:::
;''(((r@   c                v    t          |dz   | z   d          }||S dd l}|                    | |||          }|S )Nr   Tsafer   )defaultsr  )_import_moduler  
namedtuple)r   
fieldnames
modulenamer  class_r  r~   s          rA   _create_namedtupler    sV    J,t3$???FtZ(:VVAHr@   c                   d}	 |                     d          }t          d|                    d          dz             D ]b}|                    d|          }	 t	          |d                   }n# t
          $ r Y nw xY w|}	|dd          D ]}
t          |	|
          }	|	}d} n# t          $ r Y nw xY w|r4t          ||          r|S t          t          |          d|d          t          | ||          }t          ||           |S )	NFutf8r   r   r   Tz object exists at z% but a PyCapsule object was expected.)decoderanger  rsplit
__import__r  r   r  _PyCapsule_IsValidr   rY   _PyCapsule_New_PyCapsule_SetContext)pointerr   context
destructor
attr_foundunameir  r  r^   r  capsules               rA   _create_capsuler/    s`   JF##q%++c**1,-- 	 	ALLa((E#E!H--   Cabb	 ) )c4((GJ     gt,, 	N_cdk_l_l_l_lnrnrnrsttt !$
;;gw///s6   AB# A.-B# .
A;8B# :A;;'B# #
B0/B0c                L   	 |                     d          d         }t          |dz   |z   dz             S # t          $ rd 	 | j        }t	          |          t
          u r	||         }nt          | |          }n'# t          t          f$ r t          | |          }Y nw xY w|cY S w xY w)N'rj  z.__dict__["z"])	splitr  r  r   rY   DictProxyTyper   r  r   )objclassr   r  r  s       rA   _getattrr5    s    ~~c""1%D&t+D0111 	 	 		*$DDzz]**Dzx--) 	* 	* 	*8D))DDD	*	s3   25 
B# 6A76B#7!BB#BB#"B#c                N    t          | |d           pt          t          |          S rj   )r   rw   )r   r   s     rA   	_get_attrr7    s#    4t$$BT(B(BBr@   c                   	 |                      d          rt          j        |          S d| v r|                     d          }d                    |d d                   }|d         }t          t          |d d |g          |          }t          |t          t          f          r|S t          | d d |g          S t          |           S # t          t          t          f$ r |rY d S  w xY w)Nz__runtime__.r   r   )
startswithr  modulesr2  r  r   r$  r  r)   rY   r  r  r   )import_namer  r  r  r^   	submodules         rA   r  r    s    !!.11 	+;{++K%%c**EXXeCRCj))F)C
64u E EsKKI)j$%788 !  k4u===k***2    	44s#   &C A<C &C 9C C&$C&c                   |                     d          D ]o}|dk    r#t          d                    ||                     	 | }t          | |          } ?# t          $ r$ t          d                    ||                     w xY w| |fS )Nr   z<locals>z&Can't get local attribute {!r} on {!r}z Can't get attribute {!r} on {!r})r2  r  formatr   )r^   r   subpathparents       rA   _getattributerA    s    ::c?? 	5 	5j   !I"(&s"3"35 5 5	5F#w''CC 	5 	5 	5 !C"(&s"3"35 5 5	5 ;s   A.Bc                b   t          | dd           }|dv s*|r*t          |d          r|j        r||j        j        k    rdS t          | d          r?t          |d          }	 t          || j                  \  }}|| u S # t          $ r Y dS w xY wt          |dz   | j        z   d          }|| u S )	NrF   )r   NFchildr   Tr  r   )
r   is_dillr   r   rG   r  r  rA  r   r  )r^   r   r   r  found_s         rA   _locate_functionrH    s    #|T22K((( )u555 ):A:J )OZ^e^k^tOtOtusN## 	$777	$VS-=>>HE1C< 	 	 	55	 {S03<?dKKK|s   $B   
BBc                D    |                                 D ]
\  }}|| |<   d S rj   r  )destsourcer<  r=  s       rA   	_setitemsrL  .  s2      1Q r@   c           	        |t           j        u rt          |          }|t          | d          }|r|g }t	          |          | j        v rkt          |d          r!|j        dt          |d|j	                  dnd}t          j        d|d	|d
t                     |                     |           d S || j        t	          |          <    | j        |d|i |r| j                            t	          |                    }t!          |          D ]}|d         t"          u r|d         \  }}|r{|                     |                     | j        t	          |                   d                              |                     t-          |                                                     n | j        |  |                     t0                     d S d S )NTrC  rF   r   r    r  Cannot pickle : z<has recursive self-references that trigger a RecursionError.r^   r   r   )r   
NO_DEFAULTr   rE  idr   r  rF   r   rG   warningswarnr   r   r   rv   reversedrL  r  r   r   _batch_setitemsiterr  r    )	r   	reductionis_pickler_dillr^   postproc_listr   postprocrJ  rK  s	            rA   _save_with_postprocr\  3  s   
g   Y!'666 3
  M c77g'''^efikw^x^x  As~~~wsNCL/Y/Y/Y/YZZ  ADMMpspspsuyuyuyz  }L  M  M  M$$$F%2"S''" G,,,,  $((C11!(++ 	 	I|y((  )|f MM'++gl2d88.DQ.G"H"HIII++D,@,@AAAA ##Y//MM#' 
	 	r@   c                   t          j        | d|           t          |d          r|j        |j        |j        |j        |j        |j        |j	        |j
        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        f}nt          |d          rt1          j                    5  t4          st1          j        dt8                     |j        |j        |j        |j        |j        |j        |j	        |j
        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        f}d d d            n# 1 swxY w Y   nHt          |d          ri|j        |j        |j        |j        |j        |j        |j	        |j
        |j        |j        |j        |j        |j        |j        |j        |j        |j        f}nt          |d          rc|j        |j        |j        |j        |j        |j	        |j
        |j        |j        |j        |j        |j        |j        |j        |j        |j        f}n\|j        |j        |j        |j        |j	        |j
        |j        |j        |j        |j        |j        |j        |j        |j        |j        f}|                     t<          ||           t          j        | d	           d S )
NzCo: %srm  ro  r   )categoryrr  ru  r]   z# Co)r   r   r  	co_lnotabco_argcountru  rx  
co_nlocalsco_stacksizeco_flagsco_code	co_constsco_namesco_varnamesco_filenameco_nameco_qualnameco_firstlinenorr  rm  co_columntablero  co_freevarsco_cellvarsrS  catch_warningsOLD312a7filterwarningsDeprecationWarningr   r  r   r^   r{   s      rA   	save_codert  l  s   
L(C(((s%&& 2
MOS3!3>33CL#+s}clOS_ck3? 0#2E 5sO	
 
)	*	* '
$&& 	 	 O';MNNNN!7%s~s7Gck3=#,#+s"C$4c6KD	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 
n	%	% 
MOS3!3>33CL#+s}clOS_ck 0#/O
 
*	+	+ 
OS3!3>33CL#+s}clOS_cksO
 OS2CNclCKL#/3?K+S]OS_
 d444
L&!!!
Fs   BE//E36E3c                N    dt          |           j        t          |           fz  S )z3Make a short string representation of a dictionary.z<%s object at %#012x>)rY   rG   rR  r]   s    rA   
_repr_dictrv    s!    "d3ii&8"S''%BBBr@   c                j   t          | d          r{|| j        j        k    rk| j        r| j        s]t          j        | dt          |                     |                     t          dd                     t          j        | d           nt          | d          sm|t          j        k    r]t          j        | dt          |                     |                     t          dd                     t          j        | d	           n(d
|v r|t          j        k    rt          |d
                   t          u r|t          t          |d
         d          dd           u ret          j        | dt          |                     |                     t          d|d
         z  d                     t          j        | d           nlt          j        | dt          |                     t          | d          r| j        rd| _        t          j        | |           t          j        | d           d S )NFrC  zD1: %szc__builtin__
__main__
zUTF-8z# D1zD3: %szc__main__
__dict__
z# D3rG   Tr   zD4: %szc%s
__dict__
z# D4zD2: %sz# D2)rE  r   r   r   _first_passr   r   rv  r  bytesr   rY   r   r   r  r   	save_dictr   s     rA   save_module_dictr{    s   we$$$ &0F)F)F! *G&-&9 *GWh
3888e6@@AAAWf%%%%gU+++ &#9N2N2NWh
3888e3W==>>>Wf%%%%	s		sl&;;;S_%%,,w~c*odCCZQUVVVVWh
3888e-J?IIJJJWf%%%%Wh
38887%((( 	(W-= 	("'Gw,,,Wf%%%
Fr@   c                *     d  fddD             S )Nc                      fd}|S )Nc                    t          j        | d|           |j        t          z  }|                     |f|           t          j        | d           d S )Nz
Dkvi: <%s>r]   z# Dkvi)r   r   mapping_dictproxy_helper_instancer   )r   r^   r  r  s      rA   _save_dict_viewzLsave_dict_view.<locals>.save_dict_view_for_function.<locals>._save_dict_view  sY    WlC888+(BB##D7*##>>>Wh/////r@   r?   )r  r  s   ` rA   save_dict_view_for_functionz3save_dict_view.<locals>.save_dict_view_for_function  s$    0 0 0 0 0
 #"r@   c           	     F    g | ]}| t          |                    fS r?   )r   )rI   funcnamedicttyper  s     rA   
<listcomp>z"save_dict_view.<locals>.<listcomp>  sD     
 
 
 2278X3N3NOOP
 
 
r@   )r  valuesr  r?   )r  r  s   `@rA   save_dict_viewr    sC    	# 	# 	#
 
 
 
 
7
 
 
 	
r@   c                8      fd} fd} fd}d|fd|fd|ffS )Nc                    t          j        | d|           t          j        j        t          |          f          }|                     j        |f|           t          j        | d           d S )NzDk: <%s>r]   z# Dk)r   r   r   r   fromkeysr  r   r  r   r^   dict_constructorr  s      rA   save_dict_keysz&save_dict_view.<locals>.save_dict_keys  sm    L*c222%}X->cMM0@/BLLLL&)))))r@   c                    t          j        | d|           t          j        t	          |          f          }|                     j        |f|           t          j        | d           d S )NzDv: <%s>r]   z# Dv)r   r   r   r   	enumerater   r  r  s      rA   save_dict_valuesz(save_dict_view.<locals>.save_dict_values  sk    L*c222%}X	#7HII2B1D#NNNL&)))))r@   c                    t          j        | d|           |                     j         |          f|           t          j        | d           d S )NzDi: <%s>r]   z# Di)r   r   r   r  )r   r^   r  s     rA   save_dict_itemsz'save_dict_view.<locals>.save_dict_items  sW    L*c222#0@cJJJL&)))))r@   r  r  r  r?   )r  r  r  r  s   `   rA   r  r    ss    	* 	* 	* 	* 	*	* 	* 	* 	* 	*	* 	* 	* 	* 	* ^$'(o&
 	
r@   c           	        t          ||           s[t          j        | d|           |                     t          |j        |j        |j        f|           t          j        | d           nbt          j        | d|           t          |dt          |dd                     }t          j
        | ||           t          j        | d           d S )	NzC1: %sr]   z# C1zC2: %sr   rG   r   z# C2)rH  r   r   r   	ClassTyperG   	__bases__r   r   r   r   r   s      rA   save_classobjr    s    C)) 
&Wh,,,Icm(+(6;> 	 	@ 	@ 	@ 	Wf%%%%Wh,,,sNGCT,J,JKK #D9999Wf%%%
Fr@   c                r   |j         }t          |                                          t          u rUt	          j        | d|           t          j        | ||                                           t	          j        | d           n|j        t          u rR|r|dk    rJt	          j        | d|           | 
                    t          |f|           t	          j        | d           nRt	          j        | d|           t          j
        | g|                                R d	|i t	          j        | d
           d S )NzGa0: %sr   z# Ga0r  zGa1: %sr]   z# Ga1zGa2: %sr^   z# Ga2)__args__rY   rO   r   r   r   r   r   
__origin__tupler   r  rs  s      rA   save_generic_aliasr    s(   <DCNN$$Wi--- #CNN4D4DEEEEWg&&&&	5	 	 $	 $%--Wi---04'sCCCWg&&&&Wi--- E3>>+;+;EEEEEEWg&&&
Fr@   c                    t          j        | d|           |                     t          |                                f|           t          j        | d           d S )NzLo: %sr]   z# Lo)r   r   r   r  r  r   s     rA   	save_lockr    sR    
L(C(((szz||o3???
L&!!!
Fr@   c                   t          j        | d|           |                                }t          |                    d          d                                         d                             d                    }t          |                    d          d                                         d                   }|                     t          ||f|           t          j        | d           d S )	NzRL: %szcount=r   r   >zowner=r]   z# RL)r   r   rr   r   r2  rstripr   r  )r   r^   r   r  r  s        rA   
save_rlockr  $  s    
L(C(((A!!!$**,,Q/66s;;<<E!!!$**,,Q/00Ee~3???
L&!!!
Fr@   c                    t          j        | d|            | j        t          |            t          j        | d           d S )NzSo: %sz# So)r   r   r   reduce_socketr   s     rA   save_socketr  /  sE    
L(C(((Gs++,,
L&!!!
Fr@   c                $   |j         rd}nP|                                 |t          j        t          j        t          j        fv rd}n|                                }t          | d          rJ| j        t          k    r: ||j
        d          }|                                }|                                 nd}t          | d          r| j        }| j        }nd}d}|                     t          |j
        |j        ||j         ||||f|           d S )	Nr   r   TrC  r   r  Fr]   )r  flushr  r  r  r  tellrE  r   r   r   readrz   r   r   r  r  )r   r^   open_r  r}   r  r  r   s           rA   
_save_filer  5  s   
z "		3>3>3=AAAHHxxzzHwd### *(D(DE#(C  					wd### $*SXsx-0Z-2E-;@C  E E E Fr@   c                    t          j        | d|           t          | |t                    }t          j        | d           |S NzFi: %sz# Fir   r   r  ru   r   r^   r}   s      rA   	save_filer  P  s@    
 L(C(((7C&&A
L&!!!Hr@   c                    t          j        | d|           t          | |t                    }t          j        | d           |S r  r  r  s      rA   r  r  [  s>    Wh,,,wT**Wf%%%r@   c                    t          j        | d|           t          | |t                    }t          j        | d           |S r  r   r   r  _openr  s      rA   r  r  c  s@     	Wh,,,wU++Wf%%%r@   c                    t          j        | d|           t          | |t                    }t          j        | d           |S r  r  r  s      rA   r  r  m  s>    L(C0007C//AL&)))Hr@   c                   t          j        | d|           |j        rd}d}n(|                                }|                                }|                     t          |||j        f|           t          j        | d           d S NzIo: %sr  r   r]   z# Io)r   r   r  r   r  r   r  r   r^   r  r  s       rA   save_stringir  z      Wh,,,: 	:E1LLNNEsxxzzHOeX.1j.:?B 	 	D 	D 	DWf%%%r@   c                   t          j        | d|           |j        rd}d}n(|                                }|                                }|                     t          |||j        f|           t          j        | d           d S r  )r   r   r  r   r  r   r  r  s       rA   save_stringor    r  r@   )	lru_cachec                   t          j        | d|           t          r|                                }|j        f}n$|                                }|d         |d         f}|t          j        k    rt          t          |d          }nt          }| 	                    ||j
        f|           t          j        | d           d S )NzLRU: %smaxsizetypedT)is_callabler]   z# LRU)r   r   OLD39
cache_infor  cache_parametersr  __defaults__r   r   __wrapped__)r   r^   r|   r{   wrappers        rA   save_lru_cacher    s    Wi--- 	8^^%%FN$DD))++F9%vg7D9)))Y$???GGGGco%7SAAAWg&&&r@   c                    t          j        | d|           |                     t          |j        |j        f|           t          j        | d           d S )NzSu: %sr]   z# Su)r   r   r   super__thisclass____self__r   s     rA   
save_superr    sR    
L(C((( 13<@cJJJ
L&!!!
Fr@   c                   t          |j        dd           }|t          |          t          urtt          |j        |j                  |k    rVt          j        | d|           |                     t           |j        |j        f|           t          j        | d           d S t          j        | d|           |                     t          |j        |j        f|           t          j        | d           d S )N__code__zMe2: %sr]   z# Me2Me1: %s# Me1)
r   __func__rY   r#   r  rG   r   r   r   r%   )r   r^   ry  s      rA   save_instancemethod0r    s    s|Z66T

( : :#,55<<L)S111#,)E3OOOL'***FWi---Js|(D#NNNWg&&&r@   c                    t          j        | d|           |                     t          |j        |j        f|           t          j        | d           d S )Nr  r]   r  )r   r   r   r%   r  r  r   s     rA   r  r    sQ    Wi---Js|(D#NNNWg&&&r@   c                    t          j        | d|           |                     t          |j        |j        |                                f|           t          j        | d           d S NzWr: %sr]   z# Wrr   r   r   r5  __objclass__rG   rr   r   s     rA   save_wrapper_descriptorr    sm     	Wh,,,Hs'7'*||~~'7<? 	 	A 	A 	AWf%%%r@   c                    t          j        | d|           |                     t          |j        |j        |                                f|           t          j        | d           d S r  r  r   s     rA   r  r    sm     	Wh,,,Hs'7'*||~~'7<? 	 	A 	A 	AWf%%%r@   c                   	 |j         }n# t          $ r t          j        | d|           |                     t
          t          j        f|           |                     t          j        |df           | 	                    t                     t          j        | d           Y d S w xY wt          | d          rt          |          | j        v r| j        t          |                   }n4t          t          | j                                                  d           }|tt          j        | d|           |                     t
          t"          f|           |                    t          j        |d|ff           t          j        | d           d S t          j        | d	|           |                     t
          |f|           t          j        | d
           d S )NzCe3: %sr]   cell_contentsz# Ce3TrC  zCe2: %sz# Ce2zCe1: %sz# Ce1)r  r  r   r   r   r   r   r  _delattrr  r    rE  rR  r   nextrW  r  	_CELL_REFr  _setattr)r   r^   r}   r[  s       rA   	save_cellr    s      Wi--- 	L6+=*?SIII 	FOc?-CDDDcWg&&&%& wd### a55G%%%(A/HH D!2!9!9!;!;<<dCCHL)S111 ylDDDOOV_sOQ.GHIIIL'***F
L)S)))qd444
L'"""
Fs   
 BB'&B'c                    t          j        | dt          |                     |t          z  }|                     t
          |f|           t          j        | d           d S NzMp: %sr]   z# Mp)r   r   rv  r  r   r3  )r   r^   r  s      rA   save_dictproxyr  	  s[    Wh
388822MG:3???Wf%%%r@   c                    t          j        | dt          |                     |                     t          |                                f|           t          j        | d           d S r  )r   r   rv  r   r3  r   r   s     rA   r  r    sX    Wh
3888MCHHJJ=cBBBWf%%%r@   c                    t          j        | d|           |                     t          |j        |j        |j        f|           t          j        | d           d S )NzSl: %sr]   z# Sl)r   r   r   slicestartstopstepr   s     rA   
save_slicer    sU    
L(C(((	38SX>CHHH
L&!!!
Fr@   c                    t          j        | d|           |                     t          |                                f|           t          j        | d           d S )NzSi: %sr]   z# Si)r   r   r   r  rr   r   s     rA   save_singletonr    sU     L(C(((
S\\^^$53???
L&!!!
Fr@   c                   t          |           }t          |           }n# t          $ r t          d          cY S w xY w||k    rt          |           S 	 t	          |                    d                              d          d         d          }n# t          $ r t          s>t	          |                    d                              d          d         d          }nlt          t          j                              }|D ](}t          |          |k    rt          |          c cY S )dt          |           z  }t          |          Y nw xY w|S )z.get memory address of proxy's reference objectNr  z at r   r  rp   z)Cannot reference object for proxy at '%s')reprr   ReferenceErrorrR  r   r  r2  r  IS_PYPYrW  gcget_objects)r^   _repr_straddressobjects_objr   s          rA   _proxy_helperr  (  s[   IIEC   $xxu}}RWWn&dkk#&&,,V44R8rBBB 	& 	& 	& 	&%,,s++11&99"=BGGGGG2>++,,G 7 7::%%bhh%=3GC %%% G	& Ns%     <<=B BE,"EEc                   g d}|D ]}| t          |          k    r|c S |r't          |j                                                  }n t          t	          j                              }|D ]}| t          |          k    r|c S t          |           } n-# t          $ r  t          dt          |           z            w xY wt          d| z            )zCget object located at the given memory address (inverse of id(obj)))NTFz"'%s' is not a valid memory addresszCannot reference object at '%s')
rR  rW  r   r  r  r  hexr  r   r  )r  r  specialr^   r  s        rA   _locate_objectr  =  s    !!!G * *bggczzz +v--//00))**' * *bggczzzw<< M M M<s7||KLLLM
:WD
E
EEs   B *C c                     |            }t          j        | d|           |                     t          |f|           t          j        | d           d S )NzR1: %sr]   z# R1)r   r   r   r  r   r^   refobjs      rA   save_weakrefr  M  sU    SUUF
L(C(((&<<<
L&!!!
Fr@   c                    t          j        | d|z             t          t          |                    }|                     t
          |t          |          f|           t          j        | d           d S )NzR2: %rr]   z# R2)r   r   r  r  r   r  r
  r  s      rA   save_weakproxyr  V  sm     L(S.)))M#..//F)FHSMM+BLLL
L&!!!
Fr@   c                     t           d          sdS  j        dS g d}t          j        j        t           fd|D                       p' j                            t                    pd j        v S )N__file__TF)base_prefixbase_exec_prefixexec_prefixprefixreal_prefixc           	   3    K   | ]}t          t          |          j                            t	          t          |                    p> j                                       t	          t          |                              V  d S rj   )r  r  r  r9  r   )rI   r   r  rps     rA   rK   z%_is_builtin_module.<locals>.<genexpr>i  s       
 
 sD!!	
O&&wsD'9'9:: Fr&/""--bbd1C1C.D.DEE
 
 
 
 
 
r@   zsite-packages)r  r  rx   r  realpathrU   endswithEXTENSION_SUFFIXES)r  r  r  s   ` @rA   _is_builtin_moduler  `  s    6:&&3ttuu XWWE		B 	 
 
 
 
 
 
 
 
 	
 	
 	. ?##$677	. fo-	r@   c                h    t          | dd           d up| t          j                                        v S )N
__loader__)r   r  r:  r  )r  s    rA   _is_imported_moduler  s  s1    6<..d:\fHZHZH\H\>\\r@   c                r   	 t          |          }t          | d          o|| j        u }|j         dvr|r|rt          j        | d|           t          |          r|j         n	d|j         z  }|j                                        }dD ]}|                    |d            t&          D ]<}t)          |                    |          dd                              d          r||= =| 	                    t          |f||	           t          j        | d           n|j         dk    rCt          j        | d|           |                     |d           t          j        | d
           nNt          j        | d|           | 	                    t          |j         f|           t          j        | d
           d S )NFr   r   r   r   )seenzM2: %s with diffzDiff: %s)r^   r   z# M2zM1: %sr]   z# M1TrC  )r  r   r   z__runtime__.%s)rI  r  rF   r  IPythonr   zM2: %s_dillr   )rG   r2  r  whats_changedr   r   r   infor  r   r  RuntimeErrorr  rE  r   r  r   r   rv   IPYTHON_SINGLETONSr   r   r9  r   )r   r^   changedbuiltin_modis_session_mainmod_name	main_dictrf  s           rA   save_moduler!  v  s   )*$ )--!'666O3'-;OL BBB;B" CL(C000':3'?'?ds||EUX[XdEdH))++I6 * *dD))))* ( (9==..bAALLYWW (!$IVVVL&))))\\))L(C000'222L&))))L(C000SIIIL&)))
Fr@   c                j   t          | j                  dk    r| j        d         j        }n3i }t          | j                  D ]}|                    |j                   g }t
                              |          D ]G\  }}	 ||         }	||	u r%t          |d          r|                    |           8# t          $ r Y Dw xY w|D ]}t
          
                    ||           t          t          |           t                    r,|
                    dd           |
                    dd           ||fS )zDRetrieve a copy of the dict of a class without the inherited methodsr   r   r   r   N__weakref__)r_  r  r   rU  r   r   r  r  r  r   rv   r   rY   )
clsclsdictr  rZ  inherited_dictrq   	to_remover   r  
base_values
             rA   _get_typedict_typer)    sQ   
3=Qq)2S]++ 	1 	1D!!$-0000Izz'**  e	'-J
""wun'E'E"  &&& 	 	 	D	    $$s))T"" )J%%%M4(((E>s   1B33
C ?C c                   t          t          d          rBt          j        |           \  }}}}| j        |                    fd|D                        nPt          | d          r0| j        }| j        |                    fd|D                        nt          d|           d|v rC|                    dd            |                    dd            |                    dd            n|                    dd            ||fS )	N	_get_dumpc              3  2   K   | ]} |            ffV  d S rj   r?   rI   regr   s     rA   rK   z$_get_typedict_abc.<locals>.<genexpr>  s0      FFch1FFFFFFr@   _abc_registryc              3  "   K   | ]	}|ffV  
d S rj   r?   r-  s     rA   rK   z$_get_typedict_abc.<locals>.<genexpr>  s*      DDCh/DDDDDDr@   zCannot find registry of ABC %s
_abc_cache_abc_negative_cache	_abc_impl)r  abcr+  r   extendr/  r   rv   )r^   _dictr  rZ  registryrG  r   s         @rA   _get_typedict_abcr8    s+   sK   	C!mC001a<FFFFXFFFFFFF	o	&	& C$<DDDD8DDDDDDD<cBBB%		/4(((		,%%%		'.... 			+t$$$%<r@   c           	        t           v rVt          j        | d           |                     t          t                    f           t          j        | d           nj        t          fk    r
t          fddD                       rt          j        | d           t          dt          dd                     }j	        |k    r#|g }|
                    t          d|ff           j        s-t          | t          j	        j        j        ff|	           n@fd
j        D             }t          | t          j	        j        j        |ff|	           t          j        | d           d S t#          d           u rJt          j        | d           |                     t&          dz              t          j        | d           n
t(          u rPt          j        | d           |                     t"          t*          f           t          j        | d           nt,          u rPt          j        | d           |                     t"          t.          f           t          j        | d           nXt0          u rJt          j        | d           |                     t&          dz              t          j        | d           nt          | dd           }t3                    t          | dd          v }t5          |            }|s|s|r	|g }t          j        | d           t7          j                                        d |          \  }}	|                    dd          }
t#          |
          t>          k    r|
f}
|
D ]}|                     |d            tC          tD          j#                  r@t          j        | d           tI          ||	|          \  }}	t          j        | d           t          dd           }|	9|	%                                D ]$\  }}|
                    t          ||ff           %||
                    t          d|ff           tM          d          s6t          | tN          t#                    j	        j        |ff|	           nTdt#                    i}|rtQ          tR          |          }nd }t          | tT          j	        j+        ||ff|	           t          j        | d           nt          dt          dd                     }t          j        | d           |r tY          j-        ddt\          d           |r+tY          j-        d d!j        d|d"t\          d           t_          j0        | |#           t          j        | d$           d S )%NzT1: %sr]   z# T1c                0    g | ]}t          |          S r?   )r  )rI   r  r^   s     rA   r  zsave_type.<locals>.<listcomp>  s#    +t+t+t4GC,>,>+t+t+tr@   )rX  _asdict_make_replacezT6: %sr   rG   r^   rZ  c                <    g | ]}|j         v j         |         S r?   )_field_defaults)rI   fieldr^   s     rA   r  zsave_type.<locals>.<listcomp>  s/    llluuX[XkOkOk+E2OkOkOkr@   z# T6zT7: %ss   __builtin__
NoneType
z# T7s   enum
EnumMeta
r   r   r?   zT2: %s	__slots__zABC: %sz# ABC__orig_bases__	metaclass)rK  z# T2zT4: %szCannot locate reference to r   rj  )
stacklevelrO  rP  z= has recursive self-references that trigger a RecursionError.r   z# T4)1_typemapr   r   r   rD  r  r  rL   r   rG   r  setattrr@  r\  r  rX  rF   rY   r  r   NotImplementedTypeNotImplementedEllipsisTypeEllipsisr2   rR  rH  r)  r   r   r   r   rv   r  r4  ABCMetar8  r  r  rG  r!  rL  r,   rC  rS  rT  r   r   r   )r   r^   rZ  obj_namer  r   obj_recursiveincorrectly_namedr6  r  slotsr   r  r<  r=  	_metadict_dict_updates    `               rA   r   r     sq   
hWh,,, 	J#(8cBBBWf%%%%	5(	"	"s+t+t+t+tKs+t+t+t'u'u	"Wh,,,3Z0N0NOO<8##$ "  'C+J!KLLL" 	\*<s|S[Z]Zh>i)jps  DQ  R  R  R  R  RlllllllH*<s|S[Z]Zhjr>s)tz}  N[  \  \  \  \Wf%%% 
T

		Wh,,,f99:::Wf%%%%	"	"	"Wh,,,D>"3===Wf%%%%			Wh,,,D8+3777Wf%%%%	Wh,,,f22333Wf%%%% (D11377K#D#DD 0g > >> G	*m G	*0A G	*$ " L(C000-c3<3D3D3F3Fm\\LE5
 IIk2..EE{{c!! & &		$%%%%#s{++ /Wi5550eUMRRuWg...sND99H !KKMM A ADAq!(('CA;)?@@@@#$$g^X/N%OPPP3 011 :#GlIIs|S]E= .=: : : : :  c	  (#.y#G#G#GLL#'L#GiL#"4i: .=: : : : L&))))sNGCT4R4RSSHL(C000  8;=#    
  3633R# 	    $WcAAAAL&)))
Fr@   c                    t          j        | d|           |                     t          |          |j        |j        |j        |j        f|           t          j        | d           d S )NzPr: %sr]   z# Pr)r   r   r   rY   fgetfsetfdelr   r   s     rA   save_propertyrW  Q  sk     L(C(((S		CHch#+#N  ! ! !
L&!!!!!r@   c                    t          j        | d|           |j        }|                     t	          |          |f|           t          j        | d           d S )NzCm: %sr]   z# Cm)r   r   r  r   rY   )r   r^   	orig_funcs      rA   save_classmethodrZ  Y  s\    
 L(C(((I S		I<S999
L&!!!!!r@   c           	        t          ||           st          |j                  t          urt	          |dd           }|t
          j        }t          |d          }d}	 t          ||j	                  \  }}t	          |dd           |u rd}n# t          $ r Y nw xY w|rLt          j        | d|           |                     t          |df|           t          j        | d           d S t          j        | d	|           t	          | d
d           }t	          | dd           }t	          | dd           }	t	          | dt
                    }
g }|rddlm}  ||dd          }d|j        i}nf|j        }|	r"||
j        u rt	          | d|
          j        }|}n;|0|j        )t	          t          |j        d          dd           |u r|}n	d|j        i}|o||urkd |                                D             }|D ],}||v r&||                             t*          ||ff            n-|                    t*          ||ff           |j        }i }dD ]}t	          ||d           }||||<   |j	        |j        k    r
|j	        |d<   d|vs|j        |d         k    r
|j        |d<   |j        }t          |          t.          ur||d<   d }|r||f}t1          | t2          |j        ||j        |j        |f|f||           |rt7          t9          |                                          d           }|r^|r\|D ]Y}t:          |d|ff}	 |                    |           n# t>          $ r Y 1w xY w | j        |  |                      tB                     Zt          j        | d           nbt          j        | d|           t	          |dt	          |dd                     }tE          j#        | ||           t          j        | d           d S )NrF   Tr  Fr  zF3: %sr]   z# F3zF1: %sr   r   _main_modified_original_mainr   )
globalvars)r   builtinrG   r   r   c                ,    h | ]}t          |          S r?   )rR  )rI   gs     rA   	<setcomp>z save_function.<locals>.<setcomp>  s    ;;;!1;;;r@   )r   rJ  r   r   r>  r  z# F1zF2: %sr   z# F2)$rH  rY   r  r#   r   rw   rG   r  rA  r   r  r   r   r   detectr^  rF   rK  r   r  r  rL  r  r   r\  rT  r  r  rW  rG  remover  r  r    r   r   )r   r^   r   r  _pypy_builtinrF  rG  r   r   r\  r]  rZ  r^  
globs_copyglobsglob_idsstack_elementclosure
state_dict	fattrnamefattrr   topmost_postproccellpossible_postprocr   s                             rA   save_functionrq  l  s   C)) m&X-- "#|T::K")2#Kd;;;F!M(1ABBq5*d33s::$(M!     Wh444##GeZ-@c#JJJWf---Wh,,,7J55G[$77	 *:DAA *:KHH 	5******#CtDDDJ  0EEJ  5*0G"G"G$Wg~FFO
"'CN,FN3>4@@*dSSWaaa"#S^4!e:&=&= <;z'8'8':':;;;H!* G G H,,m,33Y
@S4TUUUE - $$i%1D%EFFF/
I 	. 	.ICD11E (-
9%s|++),)9J~&U""cnj8I&I&I'*~J|$;;d""%*Jz"E 	&:%EG&6eS\33C9
 & -	9 	9 	9 	9  	'#D)9)9););$<$<dCC '+ '# 
' 
'D)04#2N(O%!(//0ABBBB% ! ! ! ! (G'):;;MM#&&&&Wf%%%%Wh,,,sNGCT,J,JKK #D9999Wf%%%
Fs$    -B 
BBM
M%$M%s   dill._dill._testcapsulec                   t          j        | d|           t          |          }t          ||          }t	          |          }t          |          }|                     t          ||||f|           t          j        | d           d S )NzCap: %sr]   z# Cap)r   r   _PyCapsule_GetName_PyCapsule_GetPointer_PyCapsule_GetContext_PyCapsule_GetDestructorr   r/  )r   r^   r   r(  r)  r*  s         rA   save_capsulerw    s    Wi---!#&&'T22',,-c22
OgtWj-QWZ[[[Wg&&&&&r@   PyCapsuleType_HAS_DEFAULT_FACTORY_CLASSc                    t          j        | d|           |                     t          dz              t          j        | d           d S )Nz	DcHDF: %ss!   dataclasses
_HAS_DEFAULT_FACTORY
z# DcHDFr   r   r  r   r   s     rA   *save_dataclasses_HAS_DEFAULT_FACTORY_CLASSr|    sF    Wk3///fEEFFFWi(((((r@   MISSINGc                    t          j        | d|           |                     t          dz              t          j        | d           d S )NzDcM: %ss   dataclasses
MISSING
z# DcMr{  r   s     rA   save_dataclasses_MISSING_TYPEr    sF    Wi---f88999Wg&&&&&r@   KW_ONLYc                    t          j        | d|           |                     t          dz              t          j        | d           d S )Nz	DcKWO: %ss   dataclasses
KW_ONLY
z# DcKWOr{  r   s     rA   save_dataclasses_KW_ONLY_TYPEr  %  sF    Wk3///f88999Wi(((((r@   _FIELD_BASEc                    t          j        | d|           |                     t          dz   |j                                        z   dz              t          j        | d           d S )NzDcFB: %ss   dataclasses
   
z# DcFB)r   r   r  r   r   r  r   s     rA   save_dataclasses_FIELD_BASEr  ,  s\    Wj#...f//#(//2C2CCeKLLLWh'''''r@   c                   |r	t           f}n t          t          t          t          t
          f}	 t          | fi |}	 t          |                                |                                 k              }nJ# t          t          f$ r6 t          j        d           || k    }t          j        rt          j        d= Y nw xY wt          |d          r&|                                                                }|rdS |s^t          |          t          |           k    }|r|S t!          t          |                    t!          t          |                     k    S dS # |$ r Y dS w xY w)a  
    Quick check if object pickles with dill.

    If *exact=True* then an equality test is done to check if the reconstructed
    object matches the original object.

    If *safe=True* then any exception will raised in copy signal that the
    object is not picklable, otherwise only pickling errors will be trapped.

    Additional keyword arguments are as :func:`dumps` and :func:`loads`.
    r   r   toarrayTF)r  r  AssertionErrorNotImplementedErrorr   r   r   boolrL   r  rS  rq  filtersr  r  rY   r  )r^   exactr  r   
exceptionspikresults          rA   r   r   5  sd     f9,ZZ1DmUde
3$	9#''))swwyy011FF	* 	9 	9 	9#H---CZF8X%5a%8	9 69%% 	,^^%%))++F$$ 	6#YY$s))+F$f}S		??d499oo55u   uusA   E 7A3 2E 3AB:7E 9B::;E 7%E 9E E"!E"c                   |                     dd          }|                     dd          }|ddl}|j        }t          |t                     ddl}d}	 t          | g|R i |}d}|r|rt          d           n# |r|rt          d           w w w xY w|dt          |          d	}	|	                    |	
                    dd
                    sdnd}	|rt          |	           dS )a$  
    Check pickling of an object across another process.

    *python* is the path to the python interpreter (defaults to sys.executable)

    Set *verbose=True* to print the unpickled object in the other process.

    Additional keyword arguments are as :func:`dumps` and :func:`loads`.
    verboseFpythonNr   TzDUMP FAILEDz" -c import dill; print(dill.loads(z))ro   SUCCESSzLOAD FAILED)rv   r  
executabler  r   
subprocessr   printr  callr2  )
r^   r{   r   r  r  r  r  failr  r   s
             rA   r   r   Z  s/    hhy%((GXXh%%F~


vsD!S(4(((4(( 	!G 	!-     	!G 	!-    	! 	! 9?T




KC%??399T!+<+<==
P))=C c



Fs   A< <Bc                    |du st          | j        d          s	d| j        v S t          | j                                        v S )z#check the dill-ness of your picklerFmror   )r  r  rF   r	   r  )r   rD  s     rA   rE  rE    sD    ~~WW%6>>~+++g'++----r@   c                     t           j                                        D ]@\  } }	 |t          j        | <   # t          $ r t          j        t          d|            Y =w xY wdS )z1extend pickle with all of dill's registered typeszskip: %sN)r	   r   r  r   r  r   r   r   r
  s     rA   _extendr    su     "((** 1 1$	1'+L!!$$ 	1 	1 	1L*a00000	1
Fs   5%AA)NNNNrj   r   )NNNNN)F)FF(P  r   
__future__r   __all__rF   rS  r   r   r   _tracelogrx   r  r  r  
hexversionOLD38r  OLD310rp  r  rw   r   r   r   r
   r   r   r    _threadr!   r"   r  r  r#   r$   r%   r&   r'   r(   r)   r*   
memoryview
BufferTyperY   r  rK  rJ  rI  rH  r  	SliceTypeTypeTyper"  
XRangeTyper+   r3  r,   r   r   r   r   r   r   r   r?  r  r4  dataclassesr  r-   r.   r/   r  r0   enumr1   r2   	functoolsr3   operatorr4   r5   r   importlib.machinery	importlibr  	machineryr  ctypes
HAS_CTYPESr  r  r  r<   r>   r=   
PathFinder	find_specrB   rR   rV   rZ   rb   rc   rd   re   rf   rg   r  r%  r   r!  r  r  r  r"  r#  r$  rs   LRUCacheTyper  r   platform
IS_PYODIDEr&  r*  r'  r(  r)  _pyioru   r  r.  r+  r,  r-  ior   r   r6  r7  r   
SocketTypemultiprocessing.reductionr   r  __IPYTHON__
IS_IPYTHONr5  r  	NameErrorr   r   r  r  r   r  r   r   r   r   r   r   r   r   r   r   r   r   r   Warningr   r   r   r	   r   r  r   r  r  r   rC  r   rl   _incedental_reverse_typemapr  r  r  r8  rW  r  winregr:  set_incedental_typesrF  rA  rD  rG  rT  rV  ALL_CODE_PARAMSversionnew_attrparamsr  r2  r  intersectionr  r  r  r  r  r  r  r  r  r  r  r  r  __dMAPPING_PROXY_TRICKr  r  r   r  r  r  r   r   r  r/  r5  r7  r  rA  rH  rL  rQ  r\  rt  rv  r{  r  
__dicttype__obj
__funcname
__savefuncr   __tviewr  _GenericAliasr  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r!  r)  r8  r   rh  abstractpropertyrW  staticmethodclassmethodabstractstaticmethodabstractclassmethodrZ  rq  r6   PyCapsule_Newr&  c_void_pc_char_pargtypes	py_objectrestypePyCapsule_GetPointerrt  PyCapsule_GetDestructorrv  PyCapsule_GetContextru  PyCapsule_GetNamers  PyCapsule_IsValidr%  c_boolPyCapsule_SetContextr'  PyCapsule_SetDestructor_PyCapsule_SetDestructorPyCapsule_SetName_PyCapsule_SetNamePyCapsule_SetPointer_PyCapsule_SetPointer_testcapsule_namecast_testcapsulerx  rw  addry  r|  r}  r  r  r  r  r  r   r   rE  r  r?   r@   rA   <module>r     s   ( # " " " " "   
  % % % % % % # # # # # # 				 



		)	#	)	#
.9
$NY&     H H H H H H H H               & & & & & &< < < < < < < < < < < < < < < < < < < <
	tH~~T.)) 	
 > > > > > > > > b b b b b b b b b b b b b b      				 



     ? ? ? ? ? ? ? ? ? ? # # # # # #               + + + + + + + +    U9.ABB MMMJ'&+...GG   JGGG 
	))++55g>> 5k3444NJNN 	 	 	D	    &	 	 	_ _ _, , , , 322%%%%%%               
 4&&&**6q9::d773Q'''((Dy))++..//	jjmm$$jj,,--<<<<<<<   LLL z,%% L   \\)
=+++-r222'OTT]]5B-O-O-O "]42666 "]42666 b######%cReDDD#-a44==RT[`3a3a3a(=%HHH(=%HHH b b b]aaa,a/CFZFZFZb " " " " " " 	J ' ' ' ' ' ' E E E E E EJH8   JDJJ%%%hhh%	      v   ,       # # # # # # # #
  
; ; ;      89 9 9 9& & & &0    t   	 	 	 	 	G[ 	 	 		 	 	 	 	m] 	 	 		 	 	 	 	 	 	 	S- S- S- S- S-l S- S- S-j	 	 	 	 	 	 	 	@ $,1133   
  I I I   "   4))**    $$	     >IH    +--,,,&000*
 
   " "DOOd299;;''T"((**%%T!&&((^^tAHHJJ''d17799oo$ $     7.6
+ ;/8,0:-	 >Y"""""">Bd44UY\_[aHbHbCcCc>d>d :;	MMM.4o
++ 	 	 	D	   3 4 4 4C3::<<== 4<<#3#9#9#;#;<<<<<! ! !" " "   =A<@    +! +! +! +! +! +! +! +!Z   "1  GXvwx"" llnn K  --XXXZ ZZ Z Zx) ) )      E E EN           ( ( ( ( ( ( ( (        /.00  
 --"4"47Q"QR        	h}%%* * * *
          ) ) )     <   C C C   (     "  
 =AgFXhl , , , ,r 
(8 8 8tC C C 
$  4  )
% )

 
 
 
$
 
 
2  3 3J JLLE"0."<"< 3 3
J$1wwuj113344'***(2GW%3 z7J 
)   
&
     
(   
)      6 
(	
	
	/       X !!  "!  X"##X"##X    !  $# $#  	&	'	'	 	 
(	'	  Xi	 	 	 Xj	 	 	 ######Xl    
)    Xj     Xj    X"##X"##X"##X#$$X'((  )( %$ $# $# $#
  X"##X"##  $# $# 
(* * *X  Xm    Xm   
)   
*	,	
      *F F F F  
-   
)	
     &] ] ] 
*+ + +b  2  * 
(x x x xt 
(	#
" "   " 
,	+	#
"##	#
!""" " #" $#  " 
,o o ob  1''&+.. 1%3N%QN#-N",A&,&6%H"$*O!%/G)/)9(;%'-$",A&,&6%8"$*O!);#)#3"5!');#)#3V_"E!'",A&,&6%H"%/G)/)96?(K%);#)#3V_"E",A&,&6%H"2!>NFO44)** L
 D&&MXm' ' ' 4A0(5_%-((((L 7;455 )Xk455) ) 65)
 7;	"" 'Xdd;&''((' ' )('
 7;	"" )Xdd;&''(() ) )()
 7;&& (Xk%&&( ( '&(# # # #J' ' 'T. . . .   	)XXXs   D- -	D98D9=F F	F	5H< <II+AK. .K>=K>L M&L21M2L<9M;L<<MM1V   VV!Z2 2Z<;Z<