§
    (¶ÕiS'  ã                   óv  — d Z ddlZd„ Z ee¦  «        Z ed„ ¦  «        Z eej        ¦  «        Z eej        ¦  «        Z	 eej
        ¦  «        Zd„ Z e e¦   «         ¦  «        Zd„ Z e e¦   «         ¦  «        Zd„ Z e¦   «         Z ee¦  «        Ze                     ¦   «          d„ Z e¦   «         Z ee¦  «        Z G d	„ d
¦  «        Z e e¦   «         j        ¦  «        Z ee¦  «        Z eg j        ¦  «        Z eej        ¦  «        Z e e¦   «         j        ¦  «        Z  ee!j"        ¦  «        Z# ee$j        d         ¦  «        Z% ee¦  «        Z&	 e'‚# e'$ r/Z( ee(j)        ¦  «        Z* ee(j)        j+        ¦  «        Z,Y dZ([(ndZ([(ww xY w eej        ¦  «        Z- eej.        ¦  «        Z/[[[[[[dd„Z0d„ Z1dd„Z2d„ Z3 G d„ d¦  «        Z4 G d„ d¦  «        Z5d„ Z6 ee7e8         ¦  «        Z9 ee8e!z  ¦  «        Z: ee;¦  «        Z< ed¦  «        Z= ee>¦  «        Z?d„  e@¦   «         D ¦   «         ZAdS )zO
Define names for built-in types that aren't directly accessible as a builtin.
é    Nc                  ó   — d S ©N© r   ó    ú/usr/lib/python3.11/types.pyÚ_fr      ó   € € € r   c                  ó   — d S r   r   r   r   r   ú<lambda>r      s   € ˜$€ r   c                  ó,   ‡— dŠˆfd„} | j         d         S )Né   c                  ó   •— d S r   r   )Úas   €r   Úfz_cell_factory.<locals>.f   s   ø€ € € r   r   )Ú__closure__)r   r   s    @r   Ú_cell_factoryr      s.   ø€ Ø	€Aðð ð ð ð àŒ=˜ÔÐr   c               #   ó   K  — dV — d S )Nr   r   r   r   r   Ú_gr      s   è è € Ø
€G€G€G€G€Gr   c               ƒ   ó
   K  — d S r   r   r   r   r   Ú_cr      s
   è è € € € r   c                 ó   K  — d W V — d S r   r   r   r   r   Ú_agr   "   s   è è € Ø	€E€E€E€E€E€Er   c                   ó   — e Zd Zd„ ZdS )Ú_Cc                 ó   — d S r   r   ©Úselfs    r   Ú_mz_C._m(   r	   r   N)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   '   s   € € € € € ØÐÐÐÐr   r   Úfromkeysr   c                 óŒ   — t          |¦  «        }t          | ||¦  «        \  }}}|� ||¦  «         ||ur||d<    || ||fi |¤ŽS )zBCreate a class object dynamically using the appropriate metaclass.NÚ__orig_bases__)Úresolve_basesÚprepare_class)ÚnameÚbasesÚkwdsÚ	exec_bodyÚresolved_basesÚmetaÚnss          r   Ú	new_classr.   C   sk   € å" 5Ñ)Ô)€NÝ" 4¨¸Ñ>Ô>�N€Dˆ"ˆdØÐØˆ	�"‰ŒˆØ˜UÐ"Ð"Ø$ˆÐÑØˆ4��n bÐ1Ð1¨DÐ1Ð1Ð1r   c                 ó†  — t          | ¦  «        }d}d}t          | ¦  «        D ]Œ\  }}t          |t          ¦  «        rŒt	          |d¦  «        sŒ,|                     | ¦  «        }d}t          |t          ¦  «        st          d¦  «        ‚||||z   ||z   dz   …<   |t          |¦  «        dz
  z  }Œ�|s| S t          |¦  «        S )z8Resolve MRO entries dynamically as specified by PEP 560.Fr   Ú__mro_entries__Tz#__mro_entries__ must return a tupler   )	ÚlistÚ	enumerateÚ
isinstanceÚtypeÚhasattrr0   ÚtupleÚ	TypeErrorÚlen)r(   Ú	new_basesÚupdatedÚshiftÚiÚbaseÚnew_bases          r   r%   r%   M   sã   € å�U‘”€IØ€GØ€EÝ˜UÑ#Ô#ð 'ð '‰ˆˆ4Ý�d�DÑ!Ô!ð 	ØÝ�tÐ.Ñ/Ô/ð 	ØØ×'Ò'¨Ñ.Ô.ˆØˆÝ˜(¥EÑ*Ô*ð 	'ÝÐAÑBÔBÐBà+3ˆI�a˜‘g˜a ™g a™iÐ'Ñ(Ø•S˜‘]”] QÑ&Ñ&ˆEˆEØð ØˆÝ�ÑÔÐr   c                 ó4  — |€i }nt          |¦  «        }d|v r|                     d¦  «        }n|rt          |d         ¦  «        }nt          }t          |t          ¦  «        rt	          ||¦  «        }t          |d¦  «        r |j        | |fi |¤Ž}ni }|||fS )az  Call the __prepare__ method of the appropriate metaclass.

    Returns (metaclass, namespace, kwds) as a 3-tuple

    *metaclass* is the appropriate metaclass
    *namespace* is the prepared class namespace
    *kwds* is an updated copy of the passed in kwds argument with any
    'metaclass' entry removed. If no kwds argument is passed in, this will
    be an empty dict.
    NÚ	metaclassr   Ú__prepare__)ÚdictÚpopr4   r3   Ú_calculate_metar5   rA   )r'   r(   r)   r,   r-   s        r   r&   r&   b   s»   € ð €|Øˆˆå�D‰zŒzˆØ�dÐÐØ�xŠx˜Ñ$Ô$ˆˆàð 	Ý˜˜aœ‘>”>ˆDˆDåˆDÝ�$�ÑÔð ,õ ˜t UÑ+Ô+ˆÝˆt�]Ñ#Ô#ð ØˆTÔ˜d EÐ2Ð2¨TÐ2Ð2ˆˆàˆØ��Tˆ>Ðr   c                 ó–   — | }|D ]C}t          |¦  «        }t          ||¦  «        rŒ"t          ||¦  «        r|}Œ5t          d¦  «        ‚|S )z%Calculate the most derived metaclass.zxmetaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases)r4   Ú
issubclassr7   )r,   r(   Úwinnerr=   Ú	base_metas        r   rD   rD   ‚   sn   € à€FØð ?ð ?ˆÝ˜‘J”Jˆ	Ý�f˜iÑ(Ô(ð 	ØÝ�i Ñ(Ô(ð 	ØˆFØåð >ñ ?ô ?ð 	?ð €Mr   c                   ó@   — e Zd ZdZd
d„Zdd„Zd„ Zd„ Zd„ Zd„ Z	d	„ Z
dS )ÚDynamicClassAttributeaØ  Route attribute access on a class to __getattr__.

    This is a descriptor, used to define attributes that act differently when
    accessed through an instance and through a class.  Instance access remains
    normal, but access to an attribute through a class will be routed to the
    class's __getattr__ method; this is done by raising AttributeError.

    This allows one to have properties active on an instance, and have virtual
    attributes on the class with the same name.  (Enum used this between Python
    versions 3.4 - 3.9 .)

    Subclass from this to use a different method of accessing virtual attributes
    and still be treated properly by the inspect module. (Enum uses this since
    Python 3.10 .)

    Nc                 ó¤   — || _         || _        || _        |p|j        | _        |d u | _        t          t          |dd¦  «        ¦  «        | _        d S )NÚ__isabstractmethod__F)ÚfgetÚfsetÚfdelÚ__doc__Úoverwrite_docÚboolÚgetattrrL   )r   rM   rN   rO   Údocs        r   Ú__init__zDynamicClassAttribute.__init__¤   sT   € ØˆŒ	ØˆŒ	ØˆŒ	àÐ*˜dœlˆŒØ  D˜[ˆÔå$(­°Ð7MÈuÑ)UÔ)UÑ$VÔ$VˆÔ!Ð!Ð!r   c                 óŠ   — |€| j         r| S t          ¦   «         ‚| j        €t          d¦  «        ‚|                      |¦  «        S )Nzunreadable attribute)rL   ÚAttributeErrorrM   )r   ÚinstanceÚ
ownerclasss      r   Ú__get__zDynamicClassAttribute.__get__®   sM   € ØÐØÔ(ð Ø�Ý Ñ"Ô"Ð"ØŒYÐÝ Ð!7Ñ8Ô8Ð8Ø�yŠy˜Ñ"Ô"Ð"r   c                 ó^   — | j         €t          d¦  «        ‚|                       ||¦  «         d S )Nzcan't set attribute)rN   rW   )r   rX   Úvalues      r   Ú__set__zDynamicClassAttribute.__set__·   s3   € ØŒ9ÐÝ Ð!6Ñ7Ô7Ð7Ø�	Š	�(˜EÑ"Ô"Ð"Ð"Ð"r   c                 ó\   — | j         €t          d¦  «        ‚|                       |¦  «         d S )Nzcan't delete attribute)rO   rW   )r   rX   s     r   Ú
__delete__z DynamicClassAttribute.__delete__¼   s1   € ØŒ9ÐÝ Ð!9Ñ:Ô:Ð:Ø�	Š	�(ÑÔÐÐÐr   c                 ó–   — | j         r|j        nd } t          | ¦  «        || j        | j        |p| j        ¦  «        }| j         |_         |S r   )rQ   rP   r4   rN   rO   )r   rM   ÚfdocÚresults       r   ÚgetterzDynamicClassAttribute.getterÁ   sK   € Ø#Ô1Ð;ˆtŒ|ˆ|°tˆØ•�d‘”˜D $¤)¨T¬Y¸Ð8LÀÄÑMÔMˆØ#Ô1ˆÔØˆr   c                 ór   —  t          | ¦  «        | j        || j        | j        ¦  «        }| j        |_        |S r   )r4   rM   rO   rP   rQ   )r   rN   rb   s      r   ÚsetterzDynamicClassAttribute.setterÇ   s3   € Ø•�d‘”˜DœI t¨T¬Y¸¼ÑEÔEˆØ#Ô1ˆÔØˆr   c                 ór   —  t          | ¦  «        | j        | j        || j        ¦  «        }| j        |_        |S r   )r4   rM   rN   rP   rQ   )r   rO   rb   s      r   ÚdeleterzDynamicClassAttribute.deleterÌ   s3   € Ø•�d‘”˜DœI t¤y°$¸¼ÑEÔEˆØ#Ô1ˆÔØˆr   )NNNNr   )r   r    r!   rP   rU   rZ   r]   r_   rc   re   rg   r   r   r   rJ   rJ   “   s•   € € € € € ðð ð Wð Wð Wð Wð#ð #ð #ð #ð#ð #ð #ð
ð ð ð
ð ð ðð ð ð
ð ð ð ð r   rJ   c                   óž   — e Zd Zd„ Zd„ Zd„ Zd„ Zed„ ¦   «         Zed„ ¦   «         Z	ed„ ¦   «         Z
ed„ ¦   «         ZeZe	Ze
ZeZd	„ Zd
„ ZeZdS )Ú_GeneratorWrapperc                 ó’   — || _         |j        t          u | _        t	          |dd ¦  «        | _        t	          |dd ¦  «        | _        d S )Nr   r!   )Ú_GeneratorWrapper__wrappedÚ	__class__ÚGeneratorTypeÚ_GeneratorWrapper__isgenrS   r   r!   )r   Úgens     r   rU   z_GeneratorWrapper.__init__Ô   sD   € ØˆŒØ”}­Ð5ˆŒÝ  Z°Ñ6Ô6ˆŒÝ# C¨¸Ñ>Ô>ˆÔÐÐr   c                 ó6   — | j                              |¦  «        S r   )rk   Úsend)r   Úvals     r   rq   z_GeneratorWrapper.sendÙ   s   € ØŒ~×"Ò" 3Ñ'Ô'Ð'r   c                 ó(   —  | j         j        |g|¢R Ž S r   )rk   Úthrow)r   ÚtpÚrests      r   rt   z_GeneratorWrapper.throwÛ   s   € Ø#ˆtŒ~Ô# BÐ.¨Ð.Ð.Ð.Ð.r   c                 ó4   — | j                              ¦   «         S r   )rk   Úcloser   s    r   rx   z_GeneratorWrapper.closeÝ   s   € ØŒ~×#Ò#Ñ%Ô%Ð%r   c                 ó   — | j         j        S r   )rk   Úgi_coder   s    r   rz   z_GeneratorWrapper.gi_codeß   s   € àŒ~Ô%Ð%r   c                 ó   — | j         j        S r   )rk   Úgi_framer   s    r   r|   z_GeneratorWrapper.gi_frameâ   s   € àŒ~Ô&Ð&r   c                 ó   — | j         j        S r   )rk   Ú
gi_runningr   s    r   r~   z_GeneratorWrapper.gi_runningå   s   € àŒ~Ô(Ð(r   c                 ó   — | j         j        S r   )rk   Úgi_yieldfromr   s    r   r€   z_GeneratorWrapper.gi_yieldfromè   s   € àŒ~Ô*Ð*r   c                 ó*   — t          | j        ¦  «        S r   )Únextrk   r   s    r   Ú__next__z_GeneratorWrapper.__next__ï   s   € Ý�D”NÑ#Ô#Ð#r   c                 ó"   — | j         r| j        S | S r   )rn   rk   r   s    r   Ú__iter__z_GeneratorWrapper.__iter__ñ   s   € ØŒ<ð 	"Ø”>Ð!Øˆr   N)r   r    r!   rU   rq   rt   rx   Úpropertyrz   r|   r~   r€   Úcr_codeÚcr_frameÚ
cr_runningÚcr_awaitrƒ   r…   Ú	__await__r   r   r   ri   ri   Ò   sç   € € € € € ð?ð ?ð ?ð
(ð (ð (ð/ð /ð /ð&ð &ð &àð&ð &ñ „Xð&àð'ð 'ñ „Xð'àð)ð )ñ „Xð)àð+ð +ñ „Xð+à€GØ€HØ€JØ€Hð$ð $ð $ðð ð ð €I€I€Ir   ri   c                 óv  ‡ ‡— t          ‰ ¦  «        st          d¦  «        ‚‰ j        t          u rat	          ‰ dd¦  «        j        t
          u rD‰ j        j        }|dz  r‰ S |dz  r,‰ j        }|                     |j        dz  ¬¦  «        ‰ _        ‰ S ddl	}ddl
Š|                     ‰ ¦  «        ˆˆ fd	„¦   «         }|S )
z2Convert regular generator function to a coroutine.z$types.coroutine() expects a callableÚ__code__Ni€  é    é   )Úco_flagsr   c                  óä   •—  ‰| i |¤Ž}|j         t          u s|j         t          u r|j        j        dz  r|S t          |‰j        ¦  «        r$t          |‰j        ¦  «        st          |¦  «        S |S )Nr�   )	rl   ÚCoroutineTyperm   rz   r�   r3   Ú	GeneratorÚ	Coroutineri   )ÚargsÚkwargsÚcoroÚ_collections_abcÚfuncs      €€r   Úwrappedzcoroutine.<locals>.wrapped  sˆ   ø€ àˆt�TÐ$˜VÐ$Ð$ˆØŒN�mÐ+Ð+ØŒN�mÐ+Ð+°´Ô0EÈÑ0MÐ+àˆKÝ�tÐ-Ô7Ñ8Ô8ð 	+Ý˜4Ð!1Ô!;Ñ<Ô<ð	+õ
 % TÑ*Ô*Ð*ð ˆr   )Úcallabler7   rl   ÚFunctionTyperS   ÚCodeTyper�   r�   ÚreplaceÚ	functoolsr˜   Úwraps)r™   r�   ÚcorŸ   rš   r˜   s   `    @r   Ú	coroutiner¢   ÷   sõ   øø€ õ �D‰>Œ>ð @ÝÐ>Ñ?Ô?Ð?àŒ�,Ð&Ð&Ý��j $Ñ'Ô'Ô1µXÐ=Ð=à”=Ô)ˆð �eÑð 	ØˆKð �d‰?ð 	à”ˆBàŸJšJ°´¸eÑ0C˜JÑDÔDˆDŒMØˆKð ÐÐÐØÐÐÐØ‡_‚_�TÑÔðð ð ð ð ñ Ôðð  €Nr   c                 ó.   — g | ]}|d d…         dk    ¯|‘ŒS )Nr   Ú_r   )Ú.0Úns     r   ú
<listcomp>r§   1  s%   € Ð
0Ð
0Ð
0� 1 R a R¤5¨C¢< <ˆ1 < < <r   )r   NN)r   N)BrP   Úsysr   r4   rœ   Ú
LambdaTyper�   r�   Ú__dict__ÚMappingProxyTypeÚimplementationÚSimpleNamespacer   ÚCellTyper   rm   r   r’   rx   r   ÚAsyncGeneratorTyper   r   Ú
MethodTyper8   ÚBuiltinFunctionTypeÚappendÚBuiltinMethodTypeÚobjectrU   ÚWrapperDescriptorTypeÚ__str__ÚMethodWrapperTypeÚstrÚjoinÚMethodDescriptorTyperB   ÚClassMethodDescriptorTypeÚ
ModuleTyper7   ÚexcÚ__traceback__ÚTracebackTypeÚtb_frameÚ	FrameTypeÚGetSetDescriptorTypeÚ__globals__ÚMemberDescriptorTyper.   r%   r&   rD   rJ   ri   r¢   r1   ÚintÚGenericAliasÚ	UnionTypeÚEllipsisÚEllipsisTypeÚNoneTypeÚNotImplementedÚNotImplementedTypeÚglobalsÚ__all__r   r   r   ú<module>rÏ      sq  ððð ð €
€
€
ð €€Øˆt�B‰xŒx€ØˆT�,�,ÑÔ€
Øˆ4�”ÑÔ€Ø�4˜œÑ&Ô&Ð Ø�$�sÔ)Ñ*Ô*€ðð ð ð
 ˆ4��‘”Ñ Ô €ðð ð à��R�R‘T”T‘
”
€à Ð Ð Ø€R�T„T€Ø��R‘”€Ø ‡‚�
„
€
ð
ð 
ð 
à	€c�e„e€Ø�T˜#‘Y”YÐ ðð ð ð ð ñ ô ð àˆT�"�"‘$”$”'‰]Œ]€
à�d˜3‘i”iÐ Ø�D˜œ‘O”OÐ à˜˜Vœ_Ñ-Ô-Ð Ø�D˜˜™œÔ)Ñ*Ô*Ð Ø�t˜CœH‘~”~Ð Ø ˜D ¤¨zÔ!:Ñ;Ô;Ð àˆT�#‰YŒY€
ð1Ø
€OøØð 1ð 1ð 1Ø�D˜Ô*Ñ+Ô+€MØ��SÔ&Ô/Ñ0Ô0€I€I€I€I€I€Iøøøøð1øøøð
 �t˜LÔ1Ñ2Ô2Ð Ø�t˜LÔ4Ñ5Ô5Ð àˆˆR��R˜ð2ð 2ð 2ð 2ðð ð ð*ð ð ð ð@ð ð ð"<ð <ð <ð <ð <ñ <ô <ð <ð~#ð #ð #ð #ð #ñ #ô #ð #ðJ1ð 1ð 1ðf ˆt�D˜”I‰Œ€ØˆD��s‘‰OŒO€	àˆt�H‰~Œ~€Øˆ4�‰:Œ:€Ø�T˜.Ñ)Ô)Ð à
0Ð
0�g�g‘i”iÐ
0Ñ
0Ô
0€€€s   ÅE ÅFÅ"%FÆF