Your IP : 3.137.185.202


Current Path : /opt/alt/python311/lib64/python3.11/__pycache__/
Upload File :
Current File : //opt/alt/python311/lib64/python3.11/__pycache__/inspect.cpython-311.opt-2.pyc

�

c��f�����	dZgd�ZddlZddlZddlZddlZddlZddlZ	ddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlZddlZddlZddlmZddlmZddlmZmZe��Zej���D]
\ZZeedez<�[[[dZ ddd	d
�d�Z!d�Z"d
�Z#d�Z$d�Z%d�Z&e'ed��rd�Z(nd�Z(e'ed��rd�Z)nd�Z)d�Z*d�Z+d�Z,d�Z-d�Z.d�Z/d�Z0d�Z1d�Z2d �Z3d!�Z4d"�Z5d#�Z6d$�Z7d%�Z8d&�Z9d'�Z:d�d(�Z;d�d)�Z<ed*d+��Z=d,�Z>d-�Z?dd.�d/�Z@d0�ZAd1�ZBd2�ZCd3�ZDd4�ZEd5�ZFd6�ZGd7�ZHd�d8�ZIiZJiZKd�d9�ZLGd:�d;eM��ZNGd<�d=ejO��ZPd>�ZQd?�ZRGd@�dAeM��ZSGdB�dC��ZTdD�ZUdE�ZVdF�ZWdG�ZXd�dH�ZYedIdJ��ZZdK�Z[edLdM��Z\dN�Z]edOdP��Z^dQ�Z_d�dR�Z`dS�ZaebdT�dU�dV�fdW�ZcdX�ZddY�ZedZ�Zfed[d\��Zgd]�Zhed^d_��ZiGd`�daei��Zjdb�Zkdc�Zld�de�Zmdf�Znedgdhejjoz��ZpGdi�djep��Zqd�dk�Zrd�dl�Zsdm�Ztd�dn�Zud�do�Zvew��Zxdp�Zydq�Zzdr�Z{ds�Z|dt�Z}exfdu�Z~dvZdwZ�dxZ�dyZ�dz�Z�d{�Z�d|Z�d}Z�d~Z�dZ�d��Z�d��Z�ej�ej�ej�ej�fZ�d��Z�d�d��Z�d��Z�d��Z�d��Z�d��Z�d�d��Z�d�d��Z�		d�d��Z�d��Z�d�d�ddd	d��d��Z�Gd��d���Z�Gd��d���Z�Gd��d�ej���Z�e�j�Z�e�j�Z�e�j�Z�e�j�Z�e�j�Z�Gd��d���Z�Gd��d���Z�Gd��d���Z�d�ddd	d��d��Z�d��Z�e�d�kre���dSdS)�)zKa-Ping Yee <ping@lfw.org>z'Yury Selivanov <yselivanov@sprymix.com>)`�ArgInfo�	Arguments�	Attribute�BlockFinder�BoundArguments�CORO_CLOSED�CORO_CREATED�CORO_RUNNING�CORO_SUSPENDED�CO_ASYNC_GENERATOR�CO_COROUTINE�CO_GENERATOR�CO_ITERABLE_COROUTINE�	CO_NESTED�CO_NEWLOCALS�	CO_NOFREE�CO_OPTIMIZED�
CO_VARARGS�CO_VARKEYWORDS�ClassFoundException�ClosureVars�
EndOfBlock�	FrameInfo�FullArgSpec�
GEN_CLOSED�GEN_CREATED�GEN_RUNNING�
GEN_SUSPENDED�	Parameter�	Signature�TPFLAGS_IS_ABSTRACT�	Traceback�classify_class_attrs�cleandoc�currentframe�
findsource�formatannotation�formatannotationrelativeto�formatargvalues�get_annotations�
getabsfile�getargs�getargvalues�getattr_static�getblock�getcallargs�getclasstree�getclosurevars�getcomments�getcoroutinelocals�getcoroutinestate�getdoc�getfile�getframeinfo�getfullargspec�getgeneratorlocals�getgeneratorstate�getinnerframes�	getlineno�
getmembers�getmembers_static�	getmodule�
getmodulename�getmro�getouterframes�	getsource�
getsourcefile�getsourcelines�
indentsize�
isabstract�
isasyncgen�isasyncgenfunction�isawaitable�	isbuiltin�isclass�iscode�iscoroutine�iscoroutinefunction�isdatadescriptor�isframe�
isfunction�isgenerator�isgeneratorfunction�isgetsetdescriptor�ismemberdescriptor�ismethod�ismethoddescriptor�ismethodwrapper�ismodule�	isroutine�istraceback�	signature�stack�trace�unwrap�walktree�N)�	iskeyword)�
attrgetter)�
namedtuple�OrderedDict�CO_iF��globals�locals�eval_strc�@���	t|t��r�t|dd��}|rCt|d��r3|�dd��}t|t
j��rd}nd}d}t|dd��}|r3tj�|d��}|rt|dd��}tt|����}	|}
n�t|t
j��r&t|dd��}t|d��}d}	d}
nHt|��r't|dd��}t|dd��}d}	|}
nt|�d����|�iSt|t��st|�d����|siS|st|��S|
�S	t|
d	��r|
j}
�t|
t j��r|
j}
�;	t|
d��r|
j}��|���|	���fd
�|���D��}|S)N�__dict__�get�__annotations__�
__module__�__globals__z% is not a module, class, or callable.z+.__annotations__ is neither a dict nor NoneT�__wrapped__c�h��i|].\}}|t|t��s|nt|������/S�)�
isinstance�str�eval)�.0�key�valuerirjs   ���./opt/alt/python311/lib64/python3.11/inspect.py�
<dictcomp>z#get_annotations.<locals>.<dictcomp>sO���(�(�(��C�����s�+�+�M����e�W�f�1M�1M�(�(�(�)ru�type�getattr�hasattrrn�types�GetSetDescriptorType�sys�modules�dict�vars�
ModuleType�callable�	TypeError�
ValueErrorrr�	functools�partial�funcrq�items)�objrirjrk�obj_dict�ann�obj_globals�module_name�module�
obj_localsr`�return_values ``         r{r)r)�s�����+�X�#�t���!I��3�
�D�1�1���	���%�0�0�	��,�,�0�$�7�7�C��#�u�9�:�:�
�����C����c�<��6�6���	@��[�_�_�[�$�7�7�F��
@�%�f�j�$�?�?���$�s�)�)�_�_�
����	�C��)�	*�	*�I��c�,�d�3�3���c�:�.�.���
����	�#���	I��c�,�d�3�3���c�=�$�7�7���
�����3�G�G�G�H�H�H�
�{��	��c�4� � �P��C�N�N�N�O�O�O����	����C�y�y��
��	��v�}�-�-�
��+����&�)�"3�4�4�
�������6�=�)�)�	-� �,�K�����
�~���(�(�(�(�(��)�)�+�+�(�(�(�L��r}c�8�	t|tj��S�N)rur�r���objects r{rZrZs��C��f�e�.�/�/�/r}c�.�	t|t��Sr�)rur~r�s r{rLrL$s��J�
�f�d�#�#�#r}c�8�	t|tj��Sr�)rur��
MethodTyper�s r{rWrW,s��B��f�e�.�/�/�/r}c���	t|��st|��st|��rdSt|��}t	|d��ot	|d��S)NF�__get__�__set__�rLrWrRr~r��r��tps  r{rXrX6sh��B��v����(�6�*�*��j��.@�.@���u�	
�f���B��2�y�!�!�@�'�"�i�*@�*@�&@�@r}c��	t|��st|��st|��rdSt|��}t	|d��pt	|d��S)NFr��
__delete__r�r�s  r{rPrPJsd����v����(�6�*�*��j��.@�.@���u�	
�f���B��2�y�!�!�>�W�R��%>�%>�>r}�MemberDescriptorTypec�8�	t|tj��Sr�)rur�r�r�s r{rVrVZ���	��&�%�"<�=�=�=r}c��	dS�NFrtr�s r{rVrVb���	��ur}r�c�8�	t|tj��Sr�)rur�r�r�s r{rUrUkr�r}c��	dSr�rtr�s r{rUrUsr�r}c�8�	t|tj��Sr�)rur��FunctionTyper�s r{rRrRzs��	I��f�e�0�1�1�1r}c���	t|��r|j}t|���tj|��}t	|��st|��sdSt
|jj|z��Sr�)	rW�__func__r��_unwrap_partialrR�_signature_is_functionlike�bool�__code__�co_flags)�f�flags  r{�_has_code_flagr��sy����1�+�+��
�J���1�+�+���!�!�$�$�A��q�M�M��7��:�:���u���
�#�d�*�+�+�+r}c�.�	t|t��Sr�)r�r
�r�s r{rTrT�s��6��#�|�,�,�,r}c�.�	t|t��Sr�)r�rr�s r{rOrO�s����#�|�,�,�,r}c�.�	t|t��Sr�)r�rr�s r{rIrI�s���
�#�1�2�2�2r}c�8�	t|tj��Sr�)rur��AsyncGeneratorTyper�s r{rHrH�s��A��f�e�6�7�7�7r}c�8�	t|tj��Sr�)rur��
GeneratorTyper�s r{rSrS�s��
K��f�e�1�2�2�2r}c�8�	t|tj��Sr�)rur��
CoroutineTyper�s r{rNrN�s��3��f�e�1�2�2�2r}c���	t|tj��pYt|tj��o t	|jjtz��pt|tj	j
��Sr�)rur�r�r�r��gi_coder�r�collections�abc�	Awaitabler�s r{rJrJ�sd��I��v�u�2�3�3�
:��v�u�2�3�3�
F��V�^�,�/D�D�E�E�
:�
�v�{��8�9�9�;r}c�8�	t|tj��Sr�)rur��
TracebackTyper�s r{r\r\�s��N��f�e�1�2�2�2r}c�8�	t|tj��Sr�)rur��	FrameTyper�s r{rQrQ�s��
D��f�e�o�.�.�.r}c�8�	t|tj��Sr�)rur��CodeTyper�s r{rMrM�s��O�,�f�e�n�-�-�-r}c�8�	t|tj��Sr�)rur��BuiltinFunctionTyper�s r{rKrK�s��H��f�e�7�8�8�8r}c�8�	t|tj��Sr�)rur��MethodWrapperTyper�s r{rYrYs��8��f�e�5�6�6�6r}c��	t|��p;t|��p,t|��pt|��pt	|��Sr�)rKrRrWrXrYr�s r{r[r[sY��F��f���
'��&�!�!�
'�����
'�"�&�)�)�
'��v�&�&�	(r}c��	t|t��sdS|jtzrdSt	t|��t
j��sdSt|d��rdS|j�	��D]\}}t|dd��rdS�|jD]<}t|dd��D](}t||d��}t|dd��rdS�)�=dS)NFT�__abstractmethods__�__isabstractmethod__rt)rur~�	__flags__r �
issubclassr��ABCMetar�rmr�r�	__bases__)r��namerz�bases    r{rGrGs��D��f�d�#�#���u�
��-�-���t��d�6�l�l�C�K�0�0���u��v�,�-�-���u���,�,�.�.�����e��5�0�%�8�8�	��4�4�	�� �����D�"7��<�<�	�	�D��F�D�$�/�/�E��u�4�e�<�<�
��t�t�t�
�	��5r}c��g}t��}t|��}t|��r}|ft|��z}	|jD]P}|j���D]4\}}	t|	tj	��r|�
|���5�Qn#t$rYnwxYwd}|D]�}
	|||
��}|
|vrt�n/#t$r"|D]}|
|jvr|j|
}n�Y�DYnwxYw|r||��r|�
|
|f��|�|
����|�
d����|S)Nrtc��|dS)Nrbrt)�pairs r{�<lambda>z_getmembers.<locals>.<lambda>Ms
��$�q�'�r}�ry)�set�dirrLrAr�rmr�rur��DynamicClassAttribute�append�AttributeError�add�sort)r��	predicate�getter�results�	processed�names�mror��k�vryrzs            r{�_getmembersr�&s����G����I���K�K�E��v���
��i�&��.�.�(��	��(�
(�
(�� �M�/�/�1�1�(�(�D�A�q�!�!�U�%@�A�A�(����Q�����(�
(���	�	�	��D�	����������
	��F�6�3�'�'�E��i���$�$� ���	�	�	��
�
���$�-�'�'� �M�#�.�E��E�(���	�E�		�����	)�I�I�e�,�,�	)��N�N�C��<�(�(�(��
�
�c������L�L�)�)�L�*�*�*��Ns%�AB�
B)�(B)�3C�'C7�6C7c�0�	t||t��Sr�)r�r�r�r�s  r{r=r=Ps��G��v�y�'�2�2�2r}c�0�	t||t��Sr�)r�r-r�s  r{r>r>Us��
��v�y�.�9�9�9r}rzname kind defining_class objectc	���	t|��}tt|����}td�|D����}|f|z}||z}t|��}|D]W}|j���D];\}}t
|tj��r|j	�|�
|���<�Xg}	t��}
|D�]�}d}d}
d}||
vr�	|dkrtd���t||��}
t|
d|��}||vrWd}d}|D]}t||d��}||
ur|}�|D]0}	|�||��}n#t$rY�&wxYw||
ur|}�1|�|}n#t$r
}Yd}~nd}~wwxYw|D] }||jvr|j|}||vr|}n�!|���|
�|
n|}t
|t tjf��rd}|}nTt
|t$tjf��rd}|}n.t
|t(��rd}|}nt+|��rd}nd	}|	�
t-||||����|
�|�����|	S)
Nc3�:K�|]}|ttfv�|V��dSr�)r~r�)rx�clss  r{�	<genexpr>z'classify_class_attrs.<locals>.<genexpr>�s0����H�H�C�c�$���.G�.G�C�.G�.G�.G�.G�H�Hr}rmz)__dict__ is special, don't want the proxy�__objclass__z
static methodzclass method�property�method�data)rAr~�tupler�rmr�rur�r��fgetr�r��	Exceptionr�__getattr__r��staticmethod�BuiltinMethodType�classmethod�ClassMethodDescriptorTyper�r[rr�)r�r��metamro�class_bases�	all_basesr�r�r�r��resultr�r��homecls�get_obj�dict_obj�last_cls�srch_cls�srch_obj�excr��kinds                     r{r"r"es<���4��+�+�C��T�#�Y�Y���G��H�H�7�H�H�H�H�H�G��&�3�,�K��g�%�I���H�H�E�� � ���M�'�'�)�)�	 �	 �D�A�q��!�U�8�9�9�
 �a�f�>P����Q�����	 ��F����I��D�D���������y� � �
+��:�%�%�#�$O�P�P�P�!�#�t�,�,��"�'�>�7�C�C���+�-�-�#�G�#�H�$/�0�0��#*�8�T�4�#@�#@��#�w�.�.�'/�H��$+�0�0��%�'/�';�';�C��'F�'F�H�H��-�%�%�%�$�H�%����#�w�.�.�'/�H���+�"*����/�
�
�
����������
����0�	�	�D��t�}�$�$��=��.���'�)�)�"�G���	%�
�?�
� �,�g�g�(���h��u�/F� G�H�H�	�"�D��C�C�
��;��0O�"P�
Q�
Q�		�!�D��C�C�
��(�
+�
+�	��D��C�C�
�s�^�^�	��D�D��D��
�
�i��d�G�S�9�9�:�:�:��
�
�d������Ms$�%E,�9E�
E�E�,
F�;Fc��	|jSr�)�__mro__)r�s r{rArA�s
��N��;�r}��stopc��	|}t|��|i}tj��}t|t��s�t|d��r�|�||��rny|j}t|��}||vst|��|kr"td�	|�����|||<t|t��st|d����|S)Nrrz!wrapper loop when unwrapping {!r})
�idr��getrecursionlimitrur~r�rr�lenr��format)r�rr��memo�recursion_limit�id_funcs      r{r`r`�s����	
�A�
�q�E�E�1�:�D��+�-�-�O���t�$�$����}�)E�)E������T�
�
�������T�(�(���t�O�O��T���o�!=�!=��@�G�G��J�J�K�K�K���W�
���t�$�$����}�)E�)E���Kr}c��	|���}t|��t|�����z
Sr�)�
expandtabsr�lstrip)�line�explines  r{rFrF�s7��L��o�o���G��w�<�<�#�g�n�n�.�.�/�/�/�/r}c���tj�|j��}|�dS|j�d��dd�D]}t
||��}�t|��sdS|S)N�.���)r�r�rnrp�__qualname__�splitrrL)r�r�r�s   r{�
_findclassr'ss��

�+�/�/�$�/�
*�
*�C�
�{��t��!�'�'��,�,�S�b�S�1�!�!���c�4� � ����3�<�<���t��Jr}c�p�t|��r4|jD]*}|tur	|j}n#t$rY� wxYw|�|cS�+dSt|��rU|jj}|j}t|��r*tt||d��d��|jur|}�n`|j
}�nWt|��r.|j}t|��}|�t||��|urdS�nt|��r>|j}|j}t|��r|jdz|z|jkr|}n�|j
}n�t|t ��r4|j}|j}t|��}|�t||��|urdSn�t%|��st'|��rd|j}|j}t||��|urdSt+|��r2t|dd��}t|t,��r||vr||SndS|jD]/}	t||��j}n#t$rY�%wxYw|�|cS�0dS)Nr�r#�	__slots__)rLrr��__doc__r�rWr��__name__�__self__r�	__class__rRr'rKr%rur�r�rXrPr�rVr�)r�r��docr��selfr�r��slotss        r{�_finddocr1s����s�|�|�	��K�	�	�D��6�!�!���,�C�C��%�����H������?��J�J�J���t���}�}�(��|�$���|���D�M�M�	!��G�D�$��-�-�z�:�:�c�l�J�J��C�C��.�C�C�	�C�����|����o�o���;�'�#�t�,�,�C�7�7��4�8�	�3�����|���|���D�M�M�	!����#�d�*�c�.>�>�>��C�C��.�C�C�	�C��	"�	"���x���}��������;�'�#�t�,�,�C�7�7��4�8�	�C�	 �	 �
�$4�S�$9�$9�
��|������3����S�(�(��4��c�"�"�	#��C��d�3�3�E��%��&�&�
#�4�5�=�=��T�{�"���t������	��$��%�%�-�C�C���	�	�	��H�	�����?��J�J�J���4s�+�
8�8�	H�
H,�+H,c���		|j}n#t$rYdSwxYw|�)	t|��}n#ttf$rYdSwxYwt	|t
��sdSt
|��Sr�)r*r�r1r�rurvr#)r�r.s  r{r5r5Ls���B�
��n���������t�t�����
�{�	��6�"�"�C�C���	�*�	�	�	��4�4�	�����c�3�����t��C�=�=�s��
��/�A�Ac���		|����d��}tj}|dd�D]G}t	|�����}|r"t	|��|z
}t
||��}�H|r|d���|d<|tjkr3tdt	|����D]}|||d�||<�|r&|ds|���|r|d�|r'|ds|�d��|r|d�d�	|��S#t$rYdSwxYw)N�
�rbr$)rr&r��maxsizerr�min�range�pop�join�UnicodeError)r.�lines�marginr �content�indent�is       r{r#r#_s���� ���� � �&�&�t�,�,��
����!�"�"�I�	-�	-�D��$�+�+�-�-�(�(�G��
-��T���W�,���V�V�,�,����	)��Q�x���(�(�E�!�H��C�K����1�c�%�j�j�)�)�G�G��e�A�h�v�w�w�6G�5��8�8��	�E�"�I�	��I�I�K�K�K��	�E�"�I�	��	�E�!�H�	��I�I�a�L�L�L��	�E�!�H�	��y�y������)�����t�t����s�'E�
E�Ec��	t|��r:t|dd��r|jStd�|�����t|��r�t
|d��rVtj�	|j
��}t|dd��r|jS|j
dkrtd���td�|�����t|��r|j
}t|��r|j}t!|��r|j}t%|��r|j}t)|��r|jStd�t-|��j�����)N�__file__z{!r} is a built-in modulerp�__main__�source code not availablez{!r} is a built-in classzVmodule, class, method, function, traceback, frame, or code object was expected, got {})rZrrBr�rrLr�r�r�rnrp�OSErrorrWr�rRr�r\�tb_framerQ�f_coderM�co_filenamer~r+)r�r�s  r{r6r6|s��J�����D��6�:�t�,�,�	#��?�"��3�:�:�6�B�B�C�C�C��v���C��6�<�(�(�	;��[�_�_�V�%6�7�7�F��v�z�4�0�0�
'���&�� �J�.�.��9�:�:�:��2�9�9�&�A�A�B�B�B�����!�����&���!�����6���!�����v�������
�f�~�~�"��!�!�
�7�7=�v���L�L�)�8+�8+�,�,�,r}c��	tj�|��}d�tj���D��}|���|D]&\}}|�|��r|d|�cS�'dS)Nc�2�g|]}t|��|f��Srt)r)rx�suffixs  r{�
<listcomp>z!getmodulename.<locals>.<listcomp>�s;��F�F�F���f�+�+��v�&�F�F�Fr})�os�path�basename�	importlib�	machinery�all_suffixesr��endswith)rN�fname�suffixes�neglenrKs     r{r@r@�s���;��G���T�"�"�E�F�F�"+�"5�"B�"B�"D�"D�F�F�F�H��M�M�O�O�O�"�"�"�����>�>�&�!�!�	"���&��>�!�!�!�	"��4r}c���	t|���tjjdd�}|tjjdd�z
}t�fd�|D����r>tj����dtjj	dz�n,t�fd�tjj
D����rdStj����r�St|���}t|dd����Stt|dd��dd����S�tjvr�SdS)Nc3�B�K�|]}��|��V��dSr��rS�rx�s�filenames  �r{r�z getsourcefile.<locals>.<genexpr>�s1�����
?�
?�A�8���Q���
?�
?�
?�
?�
?�
?r}rbc3�B�K�|]}��|��V��dSr�rYrZs  �r{r�z getsourcefile.<locals>.<genexpr>�sA�����
9�
9�a�X�
�
�q�
!�
!�
9�
9�
9�
9�
9�
9r}�
__loader__�__spec__�loader)r6rPrQ�DEBUG_BYTECODE_SUFFIXES�OPTIMIZED_BYTECODE_SUFFIXES�anyrMrN�splitext�SOURCE_SUFFIXES�EXTENSION_SUFFIXES�existsr?r�	linecache�cache)r��all_bytecode_suffixesr�r\s   @r{rDrD�sZ�����v���H�%�/�G����J���Y�0�L�Q�Q�Q�O�O��
�
?�
?�
?�
?�)>�
?�
?�
?�?�?���G�$�$�X�.�.�q�1��'�7��:�;���	�
9�
9�
9�
9��$�7�
9�
9�
9�
9�
9���t�	�w�~�~�h������
�v�x�
(�
(�F��v�|�T�*�*�6���	����T�2�2�H�d�	C�	C�	O���	�Y�_�	$�	$���
%�	$r}c��	|�t|��pt|��}tj�tj�|����Sr�)rDr6rMrN�normcase�abspath)r��	_filenames  r{r*r*�sK��2���!�&�)�)�<�W�V�_�_�	�
�7���B�G�O�O�I�6�6�7�7�7r}c���	t|��r|St|d��r$tj�|j��S|�3|tvr*tj�t|��S	t||��}n#ttf$rYdSwxYw|tvr*tj�t|��Stj�
�����D]�\}}t|��r�t|d��rv|j}|t�|d��kr�K|t|<t|��}|jxt|<ttj�|��<��|tvr*tj�t|��Stjd}t|d��sdSt||j��rt%||j��}||ur|Stjd}t||j��rt%||j��}	|	|ur|SdSdS)NrprBrCr+�builtins)rZr�r�r�rnrp�
modulesbyfiler*r��FileNotFoundError�copyr�rB�_filesbymodnamer+rMrN�realpathr)
r�rn�file�modnamer�r��main�
mainobject�builtin�
builtinobjects
          r{r?r?�sU��K�������
��v�|�$�$�2��{���v�0�1�1�1����m�!;�!;��{���}�Y�7�8�8�8���&�)�,�,�����(�)�����t�t������}����{���}�T�2�3�3�3��;�+�+�-�-�3�3�5�5�
7�
7�����F���		7���
� ;� ;�		7���A��O�'�'���6�6�6�6��'(�O�G�$��6�"�"�A�(.��
7�M�!��}��� � ��#�#� %���}����{���}�T�2�3�3�3��;�z�"�D��6�:�&�&���t��t�V�_�%�%���T�6�?�3�3�
������K��k�*�%�G��w���(�(������9�9�
��F�"�"��N���"�"s�=B�B#�"B#c��eZdZdS)rN�r+rpr%rtr}r{rr�s�������Dr}rc�$�eZdZd�Zd�ZeZd�ZdS)�_ClassFinderc�"�g|_||_dSr�)r^�qualname)r/r�s  r{�__init__z_ClassFinder.__init__�s����
� ��
�
�
r}c��|j�|j��|j�d��|�|��|j���|j���dS)Nz<locals>)r^r�r��
generic_visitr9)r/�nodes  r{�visit_FunctionDefz_ClassFinder.visit_FunctionDefsn���
���$�)�$�$�$��
���*�%�%�%����4� � � ��
�������
�������r}c�P�|j�|j��|jd�|j��kr5|jr|jdj}n|j}|dz}t|���|�|��|j�	��dS)Nr#rbr5)
r^r�r�r�r:�decorator_list�linenorr�r9)r/r��line_numbers   r{�visit_ClassDefz_ClassFinder.visit_ClassDefs����
���$�)�$�$�$��=�C�H�H�T�Z�0�0�0�0��"�
*�"�1�!�4�;���"�k��
�1��K�%�k�2�2�2����4� � � ��
�������r}N)r+rpr%r�r��visit_AsyncFunctionDefr�rtr}r{rr�sI������!�!�!����/��
�
�
�
�
r}rc���	t|��}|rtj|��nHt|��}|�d��r|�d��st
d���t||��}|rtj||j	��}ntj|��}|st
d���t|��r|dfSt|��r�|j}d�
|��}tj|��}t!|��}	|�|��t
d���#t$$r}|jd}	||	fcYd}~Sd}~wwxYwt)|��r|j}t-|��r|j}t1|��r|j}t5|��r|j}t9|��r�t;|d��st
d	���|jd
z
}
t?j d��}|
dkrH	||
}n#tB$rt
d���wxYw|�"|��rn|
d
z
}
|
dk�H||
fSt
d
���)N�<�>rDzcould not get source coderb�zcould not find class definition�co_firstlinenoz"could not find function definitionr5z>^(\s*def\s)|(\s*async\s+def\s)|(.*(?<!\w)lambda(:|\s))|^(\s*@)zlineno is out of boundszcould not find code object)#rDrh�
checkcacher6�
startswithrSrEr?�getlinesrmrZrLr%r:�ast�parser�visitr�argsrWr�rRr�r\rFrQrGrMr�r��re�compile�
IndexError�match)
r�rvr�r<r��source�tree�class_finder�er��lnum�patr s
             r{r%r%s���9��� � �D��	7���T�"�"�"�"��v��������$�$�	7����s�);�);�	7��5�6�6�6�
�v�t�
$�
$�F�
�)��"�4���9�9����"�4�(�(���3��1�2�2�2�������a�x���v���=��&����������y�� � ��#�H�-�-��	=����t�$�$�$�
�;�<�<�<��	#�	&�	&�	&��&��)�K��+�%�%�%�%�%�%�%�����	&��������!�����&���!�����6���!�����v�������
�f�~�~�
��v�/�0�0�	@��>�?�?�?��$�q�(���j�Z�[�[���Q�h�h�
9��T�{�����
9�
9�
9��7�8�8�8�
9�����y�y����
���!�8�D��Q�h�h��d�{��
�.�
/�
/�/s*�$E�
E-�E(�"E-�(E-�H$�$H>c�
�		t|��\}}n#ttf$rYdSwxYwt|���rAd}|r|ddd�dkrd}|t	|��krP||���dvr4|dz}|t	|��kr||���dv�4|t	|��kr�||dd�dkr�g}|}|t	|��krm||dd�dkrY|�||�����|dz}|t	|��kr||dd�dk�Yd�|��SdSdS|dk�r�t||��}|dz
}|dk�r�||�
��dd�dk�r�t||��|k�r�||����
��g}|dkr�|dz
}||����
��}|dd�dkr�t||��|krg|g|dd�<|dz
}|dkrnS||����
��}|dd�dkrt||��|k�g|rE|d���dkr'g|dd�<|r|d���dk�'|rE|d���dkr'g|dd�<|r|d���dk�'d�|��SdSdSdSdS)	Nrb�z#!r5)r��#r�r�r$)r%rEr�rZr�stripr�rr:rFr)r�r<r��start�comments�endr?�comments        r{r2r2_s����� ��(�(���t�t���Y������t�t���������!%����4�U�1�X�b�q�b�\�T�)�)�1�5��c�%�j�j� � �U�5�\�%7�%7�%9�%9�Y�%F�%F��A�I�E��c�%�j�j� � �U�5�\�%7�%7�%9�%9�Y�%F�%F��3�u�:�:���%��,�r��r�"2�c�"9�"9��H��C���E�
�
�"�"�u�S�z�"�1�"�~��'<�'<�����c�
� 5� 5� 7� 7�8�8�8��A�g����E�
�
�"�"�u�S�z�"�1�"�~��'<�'<��7�7�8�$�$�$�
��"9�"9�
�����E�$�K�(�(���Q�h���!�8�8��c�
�)�)�+�+�B�Q�B�/�3�6�6��u�S�z�"�"�f�,�,��c�
�-�-�/�/�6�6�8�8�9�H��Q�w�w��A�g����*�/�/�1�1�8�8�:�:���b�q�b�k�S�(�(�Z��c�
�-C�-C�v�-M�-M�$+�9�H�R�a�R�L���'�C��Q�w�w��#�C�j�3�3�5�5�<�<�>�>�G�	�b�q�b�k�S�(�(�Z��c�
�-C�-C�v�-M�-M�
�
"�x��{�0�0�2�2�c�9�9�!���!����
"�x��{�0�0�2�2�c�9�9��
#�x��|�1�1�3�3�s�:�:� "�����
��
#�x��|�1�1�3�3�s�:�:��7�7�8�$�$�$�%
���8�6�6�,�,s��+�+c��eZdZdS)rNr}rtr}r{rr�s�������r}rc��eZdZ	d�Zd�ZdS)rc�h�d|_d|_d|_d|_d|_d|_d|_dS)NrbFr5)r?�islambda�started�passline�indecorator�last�	body_col0�r/s r{r�zBlockFinder.__init__�s8�������
������
� �����	�����r}c���|js6|js/|dkrd|_n|dvr|dkrd|_d|_d|_dS|tjkr4d|_|d|_|jrt�|jr	d|_dSdS|jrdS|tjkr3|j	�|jr
|d|_	|j
dz|_
d|_dS|tjkr#|j
dz
|_
|j
dkrt�dS|tjkr+|j	� |d|j	kr|d|_dSdSdS|j
dkr!|tjtj
fvr	t�dSdS)N�@T)�def�class�lambdar�Frbr5)r�r�r�r��tokenize�NEWLINEr�r�INDENTr�r?�DEDENT�COMMENT�NL)r/r~�token�srowcol�erowcolr s      r{�
tokeneaterzBlockFinder.tokeneater�s����|�(	�D�$4�(	���|�|�#'�� � ��4�4�4��H�$�$�$(�D�M�#��� �D�M�M�M�
�X�%�
%�
%�!�D�M���
�D�I��}�
!� � ���
)�#(�� � � �
)�
)�
�]�	��D�
�X�_�
$�
$��~�%�$�,�%�!(������+��/�D�K� �D�M�M�M�
�X�_�
$�
$��+��/�D�K��{�a��� � � ��
�X�%�
%�
%��~�)�g�a�j�D�N�.J�.J�#�A�J��	�	�	�*�)�.J�.J��[�A�
�
�$�x�/?���.M�"M�"M����
�"M�"Mr}N)r+rpr%r�r�rtr}r{rr�s5������J����)�)�)�)�)r}rc���	t��}	tjt|��j��}|D]}|j|��
n#ttf$rYnwxYw|d|j�Sr�)	rr��generate_tokens�iter�__next__r�r�IndentationErrorr�)r<�blockfinder�tokens�_tokens    r{r.r.�s���J��-�-�K�
��)�$�u�+�+�*>�?�?���	,�	,�F�"�K�"�F�+�+�+�	,���(�)�
�
�
���
�����"�+�"�"�#�#s�5A�A�Ac��	t|��}t|��\}}t|��r|j}t	|��st|��r|jjdkr|dfSt||d���|dzfS)Nz<module>rbr5)	r`r%r\rFrZrQrG�co_namer.�r�r<r�s   r{rErE�s���6��F�^�^�F��V�$�$�K�E�4��6���!����	����0�	����0�#�]�2�j�@�@��a�x����d�e�e��%�%�t�a�x�/�/r}c�R�	t|��\}}d�|��S)Nr�)rEr:r�s   r{rCrC�s+��A�
!��(�(�K�E�4�
�7�7�5�>�>�r}c���	g}|�tdd�����|D]L}|�||jf��||vr*|�t	||||�����M|S)Nrpr+r�)r�rdr�r�ra)�classes�children�parentr��cs     r{rara�s���7��G��L�L�Z��j�9�9�L�:�:�:�
�?�?������1�;�'�(�(�(���=�=��N�N�8�H�Q�K��1�=�=�>�>�>���Nr}c�6�	i}g}|D]c}|jrA|jD]8}||vrg||<|||vr||�|��|r||vrn�9�J||vr|�|���d|D]}||vr|�|���t||d��Sr�)r�r�ra)r��uniquer��rootsr�r�s      r{r0r0�s���E��H��E�
�	�	���;�	��+�
7�
7����)�)�')�H�V�$��H�V�,�,�,��V�$�+�+�A�.�.�.��6�f��/�/�����
�e�^�^��L�L��O�O�O���!�!���� � ��L�L�� � � ���E�8�T�*�*�*r}rzargs, varargs, varkwc��	t|��s"td�|�����|j}|j}|j}t
|d|���}t
||||z���}d}||z
}d}|jtzr|j|}|dz}d}|jtzr
|j|}t||z||��S)Nz{!r} is not a code objectrbr5)rMr�r�co_varnames�co_argcount�co_kwonlyargcount�listr�rrr)	�cor��nargs�nkwargsr��
kwonlyargs�step�varargs�varkws	         r{r+r+s�����"�:�:�@��3�:�:�2�>�>�?�?�?��N�E��N�E��"�G���f�u�f�
���D��e�E�%��-�/�0�1�1�J��D�	�W��E��G�	�{�Z����.��'����	���E�	�{�^�#�&���u�%���T�J�&���7�7�7r}rzGargs, varargs, varkw, defaults, kwonlyargs, kwonlydefaults, annotationsc	��		t|ddtd���}n"#t$r}td��|�d}~wwxYwg}d}d}g}g}i}d}	i}
|j|jur
|j|d<|j���D]�}|j}|j	}
|tur/|�|
��|j|jur|	|jfz
}	n�|tur/|�|
��|j|jur|	|jfz
}	nN|tur|
}nB|tur.|�|
��|j|jur
|j|
|
<n|t ur|
}|j|jur
|j||
<��|
sd}
|	sd}	t%||z|||	||
|��S)NF)�follow_wrapper_chains�skip_bound_arg�sigclsrkzunsupported callablert�return)�_signature_from_callablerr�r��return_annotation�empty�
parameters�valuesrr��_POSITIONAL_ONLYr��default�_POSITIONAL_OR_KEYWORD�_VAR_POSITIONAL�
_KEYWORD_ONLY�_VAR_KEYWORD�
annotationr)r��sig�exr�r�r��posonlyargsr��annotations�defaults�
kwdefaults�paramrr�s              r{r8r84s���8�"'�t�=B�6;�.7�05�	7�7�7����
�8�8�8�
�.�/�/�R�7�����8�����D��G��E��K��J��K��H��J�
��C�I�-�-� #� 5��H����&�&�(�(�1�1���z���z���#�#�#����t�$�$�$��}�E�K�/�/��U�]�,�,���
�+�
+�
+��K�K������}�E�K�/�/��U�]�,�,���
�_�
$�
$��G�G�
�]�
"�
"����d�#�#�#��}�E�K�/�/�#(�=�
�4� ��
�\�
!�
!��E���5�;�.�.� %� 0�K�������
������{�T�)�7�E�8�!�:�{�<�<�<s��
<�7�<rzargs varargs keywords localsc�b�	t|j��\}}}t||||j��Sr�)r+rGr�f_locals)�framer�r�r�s    r{r,r,�s5��=�#�5�<�0�0��D�'�5��4��%���8�8�8r}c�Z�t|dd��dkr&d�}tjd|t|����St	|t
j��rt|��St	|t��r$|j	d|fvr|j
S|j	dz|j
zSt|��S)Nrp�typingc�T�|���}|�d��S)Nztyping.)�group�removeprefix)r��texts  r{�replzformatannotation.<locals>.repl�s#���;�;�=�=�D��$�$�Y�/�/�/r}z[\w\.]+rpr#)rr��sub�reprrur��GenericAliasrvr~rpr%)r��base_modulers   r{r&r&�s����z�<��.�.�(�:�:�	0�	0�	0��v�j�$��Z�(8�(8�9�9�9��*�e�0�1�1���:�����*�d�#�#�A�� �Z��$=�=�=��*�*��$�S�(��)@�@�@��
���r}c�4��t|dd����fd�}|S)Nrpc�$��t|���Sr�)r&)r�r�s �r{�_formatannotationz5formatannotationrelativeto.<locals>._formatannotation�s����
�F�3�3�3r})r)r�rr�s  @r{r'r'�s3���
�V�\�4�
0�
0�F�4�4�4�4�4��r}c��d|zS)N�*rt�r�s r{r�r��s
��s�T�z�r}c��d|zS)N�**rtrs r{r�r��s
��T�D�[�r}c�&�dt|��zS)N�=�r)rzs r{r�r��s��c�D��K�K�.?�r}c��	|||fd�}g}	tt|����D]&}
|	�|||
�����'|r0|	�||��|||��z��|r0|	�||��|||��z��dd�|	��zdzS)Nc�<�||��|||��zSr�rt)r�rj�	formatarg�formatvalues    r{�convertz formatargvalues.<locals>.convert�s#���y������V�D�\�!:�!:�:�:r}�(�, �))r8rr�r:)r�r�r�rjr�
formatvarargs�formatvarkwrr�specsr@s           r{r(r(�s���
M�$�#��;�;�;�;�
�E�
�3�t�9�9�
�
�'�'��
���W�W�T�!�W�%�%�&�&�&�&��L�
���]�]�7�+�+�k�k�&��/�.J�.J�J�K�K�K��F�
���[�[��'�'�+�+�f�U�m�*D�*D�D�E�E�E�����5�!�!�!�C�'�'r}c�"���fd�|D��}t|��}|dkr	|d}n@|dkrdj|�}n/dj|dd��}|dd�=d�|��|z}td	|||rd
nd|dkrdnd
|fz���)Nc�6��g|]}|�v�t|����Srtr)rxr�r�s  �r{rLz&_missing_arguments.<locals>.<listcomp>�s)���C�C�C�D��F�0B�0B�T�$�Z�Z�0B�0B�0Br}r5rbr�z	{} and {}z, {} and {}���rz*%s() missing %i required %s argument%s: %s�
positional�keyword-onlyr�r[)rrr:r�)�f_name�argnames�posr�r��missingr[�tails   `    r{�_missing_argumentsr*�s����C�C�C�C�H�C�C�C�E��%�j�j�G��!�|�|��!�H���	�A����K���&���#�}�#�U�2�3�3�Z�0���"�#�#�J��I�I�e���t�#��
�@��W�&)�=�l�l�~�#�q�L�L�b�b�c�1�6�6�7�7�7r}c
���t|��|z
}t�fd�|D����}|r
|dk}	d|fz}
nH|rd}	d|t|��fz}
n/t|��dk}	tt|����}
d}|rd}||dkrdnd||dkrdndfz}td	||
|	rdnd|||dkr|sd
ndfz���)Nc���g|]}|�v�|��	Srtrt)rx�argr�s  �r{rLz_too_many.<locals>.<listcomp>�s���?�?�?���������r}r5zat least %dTz
from %d to %dr�z7 positional argument%s (and %d keyword-only argument%s)r[z5%s() takes %s positional argument%s but %d%s %s given�was�were)rrvr�)
r%r��kwonlyr��defcount�givenr��atleast�kwonly_given�pluralr��
kwonly_sig�msgs
      `      r{�	_too_manyr8�s&����$�i�i�(�"�G��?�?�?�?�v�?�?�?�@�@�L����A����w�j�(���	������#�d�)�)� 4�4����T���a����#�d�)�)�n�n���J��@�G���E�Q�J�J�S�S�B��$0�A�$5�$5�S�S�2�?�?�
�
�K�
�S��/�#�#�R��
��q�j�j��j�U�U�6�
C�C�D�D�Dr}c	���	t|��}|\}}}}}}	}
|j}i}t|��r|j�|jf|z}t	|��}
t	|��}|rt	|��nd}t|
|��}t
|��D]}|||||<�|rt||d���||<t||z��}|ri||<|�	��D]H\}}||vr"|st|�d|�����||||<�+||vrt|�d|�����|||<�I|
|kr|st||||||
|��|
|krW|d||z
�}|D]}||vrt||d|���t|||z
d���D]\}}||vr||||<�d}|D]}||vr|	r||	vr|	|||<�|dz
}�|rt||d|��|S)Nrbz&() got an unexpected keyword argument z$() got multiple values for argument Tr5F)r8r+rWr,rr7r8r�r�r�r�r8r*�	enumerate)r�r#�named�specr�r�r�r�r��kwonlydefaultsr�r%�	arg2value�num_pos�num_args�num_defaults�nr@�possible_kwargs�kwrz�reqr-r(�kwargs                         r{r/r/�s���-�
�$���D�FJ�C�D�'�5�(�J���
�]�F��I���~�~�3�$�-�3��m�%�
�2�
��*�o�o�G��4�y�y�H�$,�3�3�x�=�=�=�!�L��G�X���A�
�1�X�X�+�+��'��]�	�$�q�'����3�"�:�a�b�b�>�2�2�	�'���$��+�,�,�O����	�%���[�[�]�]�
�
�	��E�
�_�$�$��
.��!'�����!-�.�.�.�#(�I�e��R� ��
��?�?��#�V�V�R�R�)�*�*�
*��	�"�
�
�����'���&�$�
�G�\��I�	'�	'�	'������+�H�|�+�+�,���	A�	A�C��)�#�#�"�6�3��i�@�@�@����X��%<�%=�%=� >�?�?�	-�	-�F�A�s��)�#�#�!)�!��	�#����G������	�!�!��
�%�>�"9�"9�#1�%�#8�	�%� � ��1�����A��6�:�u�i�@�@�@��r}rz"nonlocals globals builtins unboundc�x�	t|��r|j}t|��s"td�|�����|j}|j�i}n$d�t|j|j��D��}|j	}|�
dtj��}t|��r|j}i}i}t��}|jD]U}|dvr�	||||<�#t $r5	||||<n%#t $r|�|��YnwxYwY�RwxYwt%||||��S)N�{!r} is not a Python functionc�$�i|]
\}}||j��Srt)�
cell_contents)rx�var�cells   r{r|z"getclosurevars.<locals>.<dictcomp>As1��	�	�	���T�
�$�$�	�	�	r}�__builtins__)�None�True�False)rWr�rRr�rr��__closure__�zip�co_freevarsrqrnrprmrZr��co_names�KeyErrorr�r)	r��code�
nonlocal_vars�	global_ns�
builtin_ns�global_vars�builtin_vars�
unbound_namesr�s	         r{r1r1,s������~�~���}���d���F��7�>�>�t�D�D�E�E�E��=�D�����
�
�	�	� ��!1�4�3C�D�D�	�	�	�
�� �I����~�x�/@�A�A�J��
���)��(�
��K��L��E�E�M��
�(�(���,�,�,�
�	(� )�$��K������	(�	(�	(�
(�%/��%5��T�"�"���
(�
(�
(��!�!�$�'�'�'�'�'�
(������	(�����}�k�#�]�4�4�4s6�C(�(
D'�3C?�>D'�?D!�D'� D!�!D'�&D'�
_Tracebackz+filename lineno function code_context indexc�*��eZdZdd��fd�
Zd�Z�xZS)r!N��	positionsc�b��t���||||||��}||_|Sr���super�__new__r`)	r�r\r��function�code_context�indexr`�instancer-s	        �r{rdzTraceback.__new__ds0����7�7�?�?�3��&�(�L�RW�X�X��&����r}c�r�d�|j|j|j|j|j|j��S)NzcTraceback(filename={!r}, lineno={!r}, function={!r}, code_context={!r}, index={!r}, positions={!r}))rr\r�rerfrgr`r�s r{�__repr__zTraceback.__repr__is9��@�@F���
�t�{�D�M�4�;L��
�D�N�A,�A,�	-r}�r+rpr%rdrj�
__classcell__�r-s@r{r!r!csT�������SW��������
-�-�-�-�-�-�-r}r!c�H�|jj|j}}t||��Sr�)rFrG�tb_lasti�_get_code_position)�tbrV�instruction_indexs   r{�_get_code_position_from_tbrsos$�� �k�0�"�+�
�D��d�$5�6�6�6r}c��|dkrdS|���}ttj||dzd����S)Nrb)NNNNr�)�co_positions�next�	itertools�islice)rVrr�
positions_gens   r{rprpssG���1���'�'��%�%�'�'�M��	� ��0A�Q�0F��M�M�N�N�Nr}r5c
���	t|��rt|��}|j}|j}n!|j}t|j|j��}|d�||g|dd��R^}}n|g|�R^}}|d}t|��s"td�
|�����t|��pt|��}|dkrv|dz
|dzz
}	t|��\}}tdt|t!|��|z
����}||||z�}|dz
|z
}n#t"$rdx}}YnwxYwdx}}t%|||jj||t)j|����S)Nrbr5z'{!r} is not a frame or traceback objectr�r_)r\rs�	tb_linenorF�f_linenorprG�f_lastirQr�rrDr6r%�maxr7rrEr!r��dis�	Positions)	r��contextr`r�r\r�r<r�rgs	         r{r7r7zs���>��5���D�.�u�5�5�	�����������&�u�|�U�]�C�C�	���|��"�F�;�Y�q�r�r�]�;�;���	�	�"�/�Y�/�/���	�
�q�\�F��5�>�>�Q��A�H�H��O�O�P�P�P��U�#�#�5�w�u�~�~�H���{�{���
�W�a�Z�'��	'�$�U�+�+�K�E�4���3�u�c�%�j�j�7�&:�;�;�<�<�E��%��g�
�-�.�E��Q�J��&�E�E���	!�	!�	!� � �E�E�E�E�	!���������X�v�u�|�';�U��c�m�Y�&?�A�A�A�As�D1�1E�Ec��	|jSr�)r|�r�s r{r<r<�s
��M��>�r}�
_FrameInfor�c�*��eZdZdd��fd�
Zd�Z�xZS)rNr_c	�d��t���|||||||��}||_|Sr�rb)
r�r�r\r�rerfrgr`rhr-s
         �r{rdzFrameInfo.__new__�s2����7�7�?�?�3��x���<�Y^�_�_��&����r}c	�~�d�|j|j|j|j|j|j|j��S)NzoFrameInfo(frame={!r}, filename={!r}, lineno={!r}, function={!r}, code_context={!r}, index={!r}, positions={!r}))rr�r\r�rerfrgr`r�s r{rjzFrameInfo.__repr__�s>��@�@F���
�D�M�4�;��
��!�4�:�t�~�A?�A?�	@r}rkrms@r{rr�s[�������Z^��������
@�@�@�@�@�@�@r}rc��	g}|rCt||��}|f|z}|�t|d|ji���|j}|�C|S�Nr`)r7r�rr`�f_back)r�r��	framelist�traceback_info�	frameinfos     r{rBrB�so��G��I�
��%�e�W�5�5���H�~�-�	�����I�R��9Q�R�R�S�S�S����	��
�r}c��	g}|rHt||��}|jf|z}|�t|d|ji���|j}|�H|Sr�)r7rFr�rr`�tb_next)rqr�r�r�r�s     r{r;r;�sq��G��I�
��%�b�'�2�2���[�N�^�3�	�����I�R��9Q�R�R�S�S�S�
�Z��	
��
�r}c�Z�	ttd��rtjd��ndS)N�	_getframer5)r�r�r�rtr}r{r$r$�s)��I�&�s�K�8�8�B�3�=�����d�Br}c�H�	ttjd��|��S)Nr5)rBr�r��r�s r{r^r^�s��J��#�-��*�*�G�4�4�4r}c�R�	ttj��d|��S)Nr�)r;r��exc_infor�s r{r_r_�s ��M��#�,�.�.��+�W�5�5�5r}c�L�tjd�|��S)Nr)r~rmr�)�klasss r{�_static_getmror��s���=��#�+�+�E�2�2�2r}c��i}	t�|d��}n#t$rYnwxYwt�||t
��S�Nrm)r��__getattribute__r�r�rn�	_sentinel)r��attr�
instance_dicts   r{�_check_instancer��sY���M�
��/�/��Z�@�@�
�
���
�
�
���
�����8�8�M�4��3�3�3s� �
-�-c��t|��D]E}tt|����tur 	|j|cS#t
$rY�AwxYw�FtSr�)r��_shadowed_dictr~r�rmrU)r�r��entrys   r{�_check_classr��sw����&�&�����$�u�+�+�&�&�)�3�3�
��~�d�+�+�+�+���
�
�
���
����4�
�s�A�
A�Ac�J�	t|��n#t$rYdSwxYwdS�NFT)r�r�r�s r{�_is_typer��s?����s�����������u�u������4s��
 � c��tjd}t|��D]a}	|�|��d}t|��tjur|jdkr	|j|us|cS�R#t$rY�^wxYwtSr�)
r~rmr�r�r�r�r+r�rUr�)r��	dict_attrr��
class_dicts    r{r�r��s����
�j�)�I���&�&�	"�	"��	"�"�*�*�5�1�1�*�=�J���$�$��(B�B�B��'�:�5�5��+�u�4�4�!�!�!�!�5���	�	�	��D�	�����s�A4�4
B�Bc�&�	t}t|��sSt|��}t|��}|tust|��tjurt
||��}n|}t||��}|turw|turntt|��d��turJtt|��d��tus$tt|��d��tur|S|tur|S|tur|S||urbtt|����D]E}tt|����tur 	|j	|cS#t$rY�AwxYw�F|tur|St|���)Nr�r�r�)r�r�r~r�r�r�r�r�r�rmrUr�)r�r�r��instance_resultr�r��klass_resultr�s        r{r-r-s���	� �O��C�=�=���S�	�	��"�5�)�)�	���"�"���O�O�u�9�9�9�-�c�4�8�8�O������t�,�,�L��i�'�'�L�	�,I�,I���\�*�*�I�6�6�i�G�G���l�+�+�Y�7�7�y�H�H��D��.�.��=�=�Y�N�N����i�'�'����9�$�$���
�e�|�|�#�D��K�K�0�0�	�	�E��d�5�k�k�*�*�i�7�7�� �>�$�/�/�/�/�������D�����8�
�i�����
��
�
�s�E(�(
E5�4E5rrrrc�f�	|jrtS|jrtS|j�t
StSr�)�
gi_runningr�gi_suspendedr�gi_framerr)�	generators r{r:r:Cs@���������������!����r}c��	t|��s"td�|�����t|dd��}|�|jjSiS)Nz{!r} is not a Python generatorr�)rSr�rrr�r�)r�r�s  r{r9r9Us_����y�!�!�L��8�?�?�	�J�J�K�K�K��I�z�4�0�0�E����!�*�*��	r}rr	r
rc�f�	|jrtS|jrtS|j�t
StSr�)�
cr_runningr	�cr_suspendedr
�cr_framerr)�	coroutines r{r4r4ms@���������������!����r}c�<�	t|dd��}|�|jSiS)Nr�)rr�)r�r�s  r{r3r3s-���

�I�z�4�0�0�E����~���	r}c��	|dkrt||d��}nt||d��}|�t|t��rdS|dkrt	||��}|S)Nrd)rr-ru�_NonUserDefinedCallables�_descriptor_get)r��method_name�meths   r{�"_signature_get_user_defined_methodr��sr����i����s�K��.�.����c�;��5�5���|�z�$�(@�A�A�|��t��i����t�S�)�)���Kr}rtc�F�	|j}t|�����}|jpd}|jpi}|r||z}	|j|i|��}n7#t$r*}d�|��}	t|	��|�d}~wwxYwd}
|���D�]Z\}}	|j	|}
|j
tur|�|���8|j
tur;||vrd}
|�|
���||<n|�|j����|j
t ur|�|
���||<n#t"$rYnwxYw|
r�|j
tur=||�t ���}|||<|�|����|j
t t&fvr|�|����2|j
t(ur|�|j����\|�|������S)Nrtz+partial object {!r} has incorrect argumentsFT)r��r�r�)r�rfr�r��keywords�bind_partialr�rr��	argumentsrr�r9r��replacer�r�rU�move_to_endr�r�r�)�wrapped_sigr��
extra_args�
old_params�
new_params�partial_args�partial_keywords�bar�r7�transform_to_kwonly�
param_namer��	arg_value�	new_params               r{�_signature_get_partialr��sz���
�'�J��Z�-�-�/�/�0�0�J��<�%�2�L��'�-�2���1�!�L�0��&�
%�[�
%�|�
H�7G�
H�
H�����&�&�&�;�B�B�7�K�K����o�o�2�%�����&����
 ��'�-�-�/�/�0+�0+��
�E�#	J���Z�0�I��z�-�-�-����z�*�*�*���z�3�3�3��!1�1�1�+/�'�-2�]�]�9�]�-M�-M�J�z�*�*��N�N�5�:�.�.�.���z�]�*�*�).���y��)I�)I�
�:�&���C�	�	�	��D�	����F�
	+��z�3�3�3�&�z�2�:�:�
�:�N�N�	�)2�
�:�&��&�&�z�2�2�2�2���
�|�<�<�<��&�&�z�2�2�2�2����.�.����u�z�*�*�*�����*�*;�*;�*=�*=��>�>�>s*�
A�
B�%B�B�&
E�
E�Ec�T�	t|j�����}|r|djtt
fvrt
d���|dj}|ttfvr|dd�}n|turt
d���|�
|���S)Nrbzinvalid method signaturer5zinvalid argument typer�)r�r�r�rr�r�r�r�r�r�r�)r��paramsrs   r{�_signature_bound_methodr��s�����3�>�(�(�*�*�
+�
+�F��5�V�A�Y�^��m�'D�D�D��3�4�4�4��!�9�>�D��&�(8�9�9�9����������&�&��4�5�5�5��;�;�&�;�)�)�)r}c��	t|��p3t|��p$t|t��p|tt
fvSr�)rKrXrur�r~r�r�s r{�_signature_is_builtinr�sM���
�c�N�N�
"��s�#�#�
"��s�4�5�5�
"�

�D�&�>�!�#r}c��	t|��rt|��rdSt|dd��}t|dd��}t|dt��}t|dt��}t|dd��}t	|t
j��o_t	|t��oJ|dupt	|t��o1|dupt	|t��ot	|t��p|duS)NFr+r��__defaults__�__kwdefaults__ro)
r�rLr�_voidrur�r�rvr�r�)r�r�rVr�r�r�s      r{r�r�s����C�=�=��G�C�L�L���u��3�
�D�)�)�D��3�
�D�)�)�D��s�N�E�2�2�H���.��6�6�J��#�0�$�7�7�K��t�U�^�,�,�
E��t�S�!�!�
E�
��
�
<��H�e�!<�!<�
E��4�
�
?�:�j�$�#?�#?�
E���d�
,�
,�
C��t�0C�	Gr}c�H�	|s|ddfSd}d}d�|�d��D��}t|��j}tj|��}d}d}g}|j}	d}
t
j}t
j}t|��}
|D]}}
|
j	|
j
}}||kr!|dkr
|rd}nd}|
dz
}
�)|dkrd}|
dz
}�7||kr	|d	kr|
}�F|rd}||kr|d
ks|	d��|	|��|dkr|	d���~d
�|��}|||fS)Nc�<�g|]}|�|�d����S)�ascii)�encode)rx�ls  r{rLz6_signature_strip_non_python_syntax.<locals>.<listcomp>Gs)��C�C�C�1��C�Q�X�X�g�
�
�C�C�Cr}r4Frb�,Tr5�/�$rr� r�)r&r�r�r�r�r��OP�
ERRORTOKENrvr~�stringr:)r]�self_parameter�last_positional_onlyr<r��token_stream�
delayed_comma�skip_next_commarr��current_parameterr�r��tr~r��clean_signatures                 r{�"_signature_strip_non_python_syntaxr�4s���
��%��$��$�$��N���C�C�	����(=�(=�C�C�C�E��U���$�I��$�Y�/�/�L��M��O�
�D�
�+�C���	��B��!�J�	
�\���A������v�q�x�f���2�:�:���}�}�"�+�&+�O�O�%)�M�%��*�%����}�}�#'��'8�1�'<�$���J���V�s�]�]�.�N���	�!�M��R�Z�Z�f��m�m���D�	�	�	���F�����c�M�M��C��H�H�H���g�g�d�m�m�O��N�,@�@�@r}Tc�������������	|j�t|��\}}}d|zdz}	tj|��}n#t$rd}YnwxYwt|tj��s"td�������|j	d}	g��j
�d}i�t�dd��}
|
r)tj
�|
d��}|r|j�tj
����d����fd��G�fd�d	tj����f�������fd
�	}t%|	jj��}t%|	jj��}
t+j||
d���}|��j�n�j�t3t%t5|������D]!\}\}}|||��||kr�j��"|	jjr�j�||	jj����j�t=|	jj|	jj ��D]\}}|||���|	jj!r�j"�||	jj!���|�ft�dd��}|du}tG|��}|r|s|r��$d��n&�d�%�j�
��}|�d<|�|j
���S)Nzdef fooz: pass�"{!r} builtin has invalid signaturerbrpc�<�|j�td���|jS)Nz'Annotations are not currently supported)r�r�r-)r�s r{�
parse_namez&_signature_fromstr.<locals>.parse_name�s ���?�&��F�G�G�G��x�r}c�D��	t|���}n7#t$r*	t|���}n#t$rt�wxYwYnwxYwt|tt
ttttd��f��rtj|��St�r�)rw�	NameErrorr�rurv�int�float�bytesr�r~r��Constant)r[rz�module_dict�sys_module_dicts  ��r{�
wrap_valuez&_signature_fromstr.<locals>.wrap_value�s����	!���K�(�(�E�E���	!�	!�	!�
!��Q��0�0�����
!�
!�
!� � �
!������	!�����e�c�3��u�d�D��J�J�G�H�H�	'��<��&�&�&��s#��
A�0�A�A�A�Ac�*��eZdZ�fd�Z�fd�Zd�ZdS)�,_signature_fromstr.<locals>.RewriteSymbolicsc���g}|}t|tj��r;|�|j��|j}t|tj���;t|tj��st�|�|j��d�	t|����}�|��S)Nr#)rur�rr�r�rz�Namer�rr:�reversed)r/r��arBrzr�s     �r{�visit_Attributez<_signature_fromstr.<locals>.RewriteSymbolics.visit_Attribute�s�����A��A��Q��
�.�.�
������ � � ��G���Q��
�.�.�
��a���*�*�
!� � �
�H�H�Q�T�N�N�N��H�H�X�a�[�[�)�)�E��:�e�$�$�$r}c�~��t|jtj��st	����|j��Sr�)ru�ctxr��Loadr�r)r/r�r�s  �r{�
visit_Namez7_signature_fromstr.<locals>.RewriteSymbolics.visit_Name�s5����d�h���1�1�
#� �l�l�"��:�d�g�&�&�&r}c�n�|�|j��}|�|j��}t|tj��rt|tj��st�t|jtj��r!t	j|j	|j	z��St|jtj
��r!t	j|j	|j	z
��St|jtj��r!t	j|j	|j	z��St�r�)r��left�rightrur�r�r��op�Addrz�Sub�BitOr)r/r�r
rs    r{�visit_BinOpz8_signature_fromstr.<locals>.RewriteSymbolics.visit_BinOp�s����:�:�d�i�(�(�D��J�J�t�z�*�*�E��d�C�L�1�1�
!��E�3�<�9X�9X�
!� � ��$�'�3�7�+�+�
>��|�D�J���$<�=�=�=��D�G�S�W�-�-�
>��|�D�J���$<�=�=�=��D�G�S�Y�/�/�
>��|�D�J���$<�=�=�=��r}N)r+rpr%rrr)r�s�r{�RewriteSymbolicsr��sV�������
	%�
	%�
	%�
	%�
	%�	'�	'�	'�	'�	'�

	�
	�
	�
	�
	r}rc�@���
|��}|rm|turd	����|��}tj|��}n1#t$r$t	d������d�wxYw�	��|�|������dS)Nr��r�r�)�_emptyr�r��literal_evalr�rr�)�	name_node�default_noder�r�rrr�rr�r�r�s    �������r{�pz_signature_fromstr.<locals>.p�s�����z�)�$�$���	]�L��6�6�
]�/�/�1�1�7�7��E�E���*�<�8�8�����
]�
]�
]� �!E�!L�!L�S�!Q�!Q�R�R�X\�\�
]�������)�)�D�$��E�R�R�R�S�S�S�S�Ss�1A�.A9)�	fillvaluer,r��r�)&�_parameter_clsr�r�r��SyntaxErrorru�Moduler�r�bodyr�rr�r�rnrmrs�NodeTransformerrr�r�rw�zip_longest�POSITIONAL_ONLY�POSITIONAL_OR_KEYWORDr:r��vararg�VAR_POSITIONAL�KEYWORD_ONLYrRr��kw_defaultsrF�VAR_KEYWORDrZr9r�)r�r�r[r�r�r�r��programr�r�r�rr�r�r�r@r�r��_self�self_isbound�
self_ismodulerrr�rr�r�r�r�r�s `                   @@@@@@@@@r{�_signature_fromstrr,|s���������������"�I�	+�1�-�-�:�O�^�%9��/�)�H�4�G����7�#�#�����������������f�c�j�)�)�K��=�D�D�S�I�I�J�J�J���A��A��J��O�E�
�F��K��#�|�T�2�2�K��*������d�3�3���	*� �/�K��k�&�&�(�(�O�����������������3�.����B,1�T�T�T�T�T�T�T�T�T�T�T�T��A�F�K� � �D�����(�(�H�� ��x�4�@�@�@�D��'��(����.��'���d���(<�(<�=�=�3�3���?�D�'�	��$������$�$�$��2�D��	�v�}� ��'��	��!�&�-������!�D��Q�V�.���0B�C�C���
��g�	��$������	�v�|���$��	��!�&�,������!���Z��.�.���D�(�� ����
��	�]�	�n�	��N�N�1������1�
�%�%�9�+D�%�E�E�A��J�q�M��3�z�S�Y�7�7�7�7s�A�A�Ac���	t|��s"td�|�����t|dd��}|s"t	d�|�����t||||��S)Nz%{!r} is not a Python builtin function�__text_signature__z#no signature found for builtin {!r})r�r�rrr�r,)r�r�r�r[s    r{�_signature_from_builtinr/	s����!��&�&�1��#�#)�6�$�<�<�1�1�	1�	��*�D�1�1�A��M��>�E�E�d�K�K�L�L�L��c�4��N�;�;�;r}c
�@�	d}t|��s4t|��rd}n"td�|�����t	|dd��}|rt||||��S|j}|j}	|	j}
|	j	}|	j
}|d|
�}
|	j}||
|
|z�}t||||���}|j
}|j}|rt|��}nd}g}|
|z
}|}|
d|�D]U}|rt nt"}|�|t&��}|�||||�����|r|dz}�Vt+|
|d���D]_\}}|rt nt"}|�|t&��}|�||||||�	����|r|dz}�`|	jt.zrL||
|z}|�|t&��}|�|||t0�����|D]h}t&}|�|�|t&��}|�|t&��}|�|||t2|�	�����i|	jt4zrb|
|z}|	jt.zr|dz
}||}|�|t&��}|�|||t6�����|||�d
t&��|���S)NFTrHr.rhrb)r�rr5)r�rr�r��r��__validate_parameters__)rRr�r�rrr,rr�r�r��co_posonlyargcountr�r)r�r�rr�r�rnrr�r:r�rr�r�rr�)r�r�r�rirjrk�is_duck_functionr[r�	func_code�	pos_count�	arg_names�
posonly_countr#�keyword_only_count�keyword_onlyr�r�r��pos_default_countr��non_default_count�posonly_leftr�rr��offsetr�rgs                             r{�_signature_from_functionr?	s���M����d���J�%�d�+�+�	J�#����;�B�B�4�H�H�I�I�I���*�D�1�1�A��@�!�#�t�Q��?�?�?��"�I��
�I��%�I��%�I��0�M��:�I�:�&�J�"�4���Y�y�3E�'E�E�F�L�!�$���QY�Z�Z�Z�K�� �H��$�J�����M�M������J�!�$5�5�� �L��-�-�-�.����#/�K���5K�� �_�_�T�6�2�2�
����)�)�D�Z�)-�/�/�/�	0�	0�	0��	��A��L��"�*�->�-?�-?�"@�A�A������#/�K���5K�� �_�_�T�6�2�2�
����)�)�D�Z�)-�,4�V�,<�>�>�>�	?�	?�	?��	��A��L����J�&�;���%7�7�8�� �_�_�T�6�2�2�
����)�)�D�Z�)8�:�:�:�	;�	;�	;��6�6�����!� �n�n�T�6�2�2�G� �_�_�T�6�2�2�
����)�)�D�Z�)6�,3�5�5�5�	6�	6�	6�	6���N�*�8��.�.����
�*�	��Q�J�E����� �_�_�T�6�2�2�
����)�)�D�Z�)5�7�7�7�	8�	8�	8�
�3�z�!,����6�!B�!B�'7�9�9�9�9r}c��t|��r|Stt|��dt��}|tur|S|||t|����S)Nr�)rLrr~r�)�
descriptorr�rns   r{r�r�z	s\���z������
�$�z�"�"�I�y�
9�
9�C�
�i������3�z�3��S�	�	�*�*�*r})r�r�rirjrkc	�x�	tjt||||||���}t|��s"t	d�|�����t
|tj��r#||j	��}|rt|��S|S|r7t|d����}t
|tj��r||��S	|j}|�9t
|t��s"t	d�|�����|Sn#t$rYnwxYw	|j}	t
|	tj��r�||	j��}
t%|
|	d��}t'|
j�����d}|jt.jur|St'|j�����}|f|z}
|�|
���Sn#t$rYnwxYwt5|��st7|��rt9||||||�	��St;|��rt=|||�
��St
|tj��r ||j��}
t%|
|��St
|t>���rGtAt?|��d��}|�||��StA|d��}tA|d
��}|j!D]E}|�)d|j"vr ||��}|rt|��}|cS|�d
|j"vr
||��cS�F|j!dd�D]/}	|j#}|rtI|||��cS� #t$rY�,wxYwt>|j!vrb|j%tLj%ur-|j'tLj'ur|�(tL��StSd�|�����n;tUt?|��dd��}|�tW||��}||��StSd�|�����)N)r�r�rirjr�rkz{!r} is not a callable objectc�V�t|d��pt|tj��S)N�
__signature__)r�rur�r�)r�s r{r�z*_signature_from_callable.<locals>.<lambda>�	s)��'�!�_�*E�*E�+C�#-�a��1A�#B�#B�r}rz1unexpected object {!r} in __signature__ attributer�rbr�)r�rirjrk)r��__call__rdr�r$z(no signature found for builtin type {!r}z+callable {!r} is not supported by signature),r�r�r�r�r�rrur�r�r�r�r`rDrr��_partialmethod�
partialmethodr�r�r�r�r�rrr$r�rRr�r?r�r/r~r�rrmr.r,r�r�rd�
from_callabler�r-r�)r�r�r�rirjrkr��_get_signature_ofr�rGr��first_wrapped_param�
sig_paramsr��call�new�initr��text_sigs                   r{r�r��	s:���"�)�*B�6K�/=�(/�'-�'-�)1�
3�3�3���C�=�=�E��7�>�>�s�C�C�D�D�D��#�u�'�(�(�� ����-�-���	�*�3�/�/�/��J��	*��S�!C�!C�E�E�E���c�5�+�,�,�	*�%�$�S�)�)�)�
�����?��c�9�-�-�
-�� � &��s���-�-�-��J����
�
�
���
����:��*�
��m�Y�%<�=�=�	:�,�+�M�,>�?�?�K�(��m�W�M�M�C�"'��(>�(E�(E�(G�(G�"H�"H��"K��"�'�9�+C�C�C��
�"�3�>�#8�#8�#:�#:�;�;�
�2�3�j�@�
��{�{�j�{�9�9�9�+	:���
�
�
���
����4�#���[�4�S�9�9�[�(���7E�07��QY�[�[�[�	[��S�!�!�F�&�v�s�6D�F�F�F�	F��#�y�(�)�)�8�'�'���1�1��%�k�3�7�7�7��#�t���A+�
2�$�s�)�)�Z�H�H����$�$�T�*�*�*�0��i�@�@��1�#�z�B�B���K�		/�		/�D���9��
�#=�#=�'�'��,�,��!�7�1�#�6�6�C��
�
�
��!�j�D�M�&A�&A�(�(��.�.�.�.�.��
�K����$�	F�	F�D�
F��2���F�.�f�d�H�E�E�E�E�E�F��"�
�
�
���
�����s�{�"�"�����/�/���v�~�-�-��+�+�F�3�3�3� �>�E�E�c�J�J�L�L�L�#��d�3�i�i��T�:�:����"�4��-�-�D�$�$�T�*�*�*�
�B�I�I�#�N�N�
O�
O�Os6�
D
�
D�D�G$�$
G1�0G1�M�
M+�*M+c��eZdZdS)r�Nr}rtr}r{r�r�-
s������;�;r}r�c��eZdZdS)rNr}rtr}r{rr1
s������@�@r}rc�.�eZdZdZdZdZdZdZd�Zd�Z	dS)	�_ParameterKindzpositional-onlyzpositional or keywordzvariadic positionalr$zvariadic keywordc��t|j��}t�||��}||_||_|Sr�)r�__members__r�rd�_value_�description)r�rWrz�members    r{rdz_ParameterKind.__new__<
s8���C�O�$�$�����S�%�(�(�����(����
r}c��|jSr�rr�s r{�__str__z_ParameterKind.__str__C
s
���y�r}N)
r+rpr%r!r"r$r%r'rdrZrtr}r{rSrS5
sL������'�O�3��*�N�!�L�$�K��������r}rSc���eZdZ	dZeZeZeZ	e
ZeZ
eZeed�d�Zd�Zd�Zed���Zed���Zed���Zed	���Zeeeed
�d�Zd�Zd
�Zd�Zd�ZdS)r)�_name�_kind�_default�_annotationrc���	t|��|_n!#t$rtd|�d����wxYw|turE|jtt
fvr0d}|�|jj��}t|���||_||_	|turtd���t|t��s6d�t|��j
��}t|���|ddkr�|dd����ri|jt kr0d	}|�|jj��}t|���t"|_d
�|dd���}t%|��o
|jt"u}|s|���s"td�|�����||_dS)Nzvalue z is not a valid Parameter.kindz({} parameters cannot have default valuesz*name is a required attribute for Parameterzname must be a str, not a {}rbr#r5zLimplicit arguments must be passed as positional or keyword arguments, not {}z
implicit{}z"{!r} is not a valid parameter name)rSr]r�rr�r�rrWr^r_rurvr~r+r��isdigitr�r�rc�isidentifierr\)r/r�rr�r�r7�
is_keywords       r{r�zParameter.__init__m
s���	N�'��-�-�D�J�J���	N�	N�	N��L�d�L�L�L�M�M�M�	N�����&� � ��z�o�|�<�<�<�@���j�j���!7�8�8�� ��o�o�%���
�%����6�>�>��I�J�J�J��$��$�$�	!�0�7�7��T�
�
�8K�L�L�C��C�.�.� ���7�c�>�>�d�1�2�2�h�.�.�0�0�>�
�z�3�3�3�>���j�j���!7�8�8�� ��o�o�%�)�D�J��&�&�t�A�B�B�x�0�0�D��t�_�_�K���;K�)K�
��	P�T�.�.�0�0�	P��A�H�H��N�N�O�O�O���
�
�
s��5c�X�t|��|j|jf|j|jd�fS)N�r^r_)r~r\r]r^r_r�s r{�
__reduce__zParameter.__reduce__�
s6���T�
�
���T�Z�(�!�]� $� 0�2�2�3�	3r}c�:�|d|_|d|_dS)Nr^r_re�r/�states  r{�__setstate__zParameter.__setstate__�
s!���j�)��
� ��/����r}c��|jSr�)r\r�s r{r�zParameter.name�
�
���z�r}c��|jSr�)r^r�s r{r�zParameter.default�
s
���}�r}c��|jSr�)r_r�s r{r�zParameter.annotation�
�����r}c��|jSr�)r]r�s r{rzParameter.kind�
rlr})r�rr�r�c��	|tur|j}|tur|j}|tur|j}|tur|j}t|��||||���S)Nr)r�r\r]r_r^r~)r/r�rr�r�s     r{r�zParameter.replace�
si��9��5�=�=��:�D��5�=�=��:�D������)�J��e����m�G��t�D�z�z�$��g�*�M�M�M�Mr}c��|j}|j}|jtur(d�|t|j����}|jtur_|jtur)d�|t|j����}n(d�|t|j����}|tkrd|z}n|tkrd|z}|S)Nz{}: {}z{} = {}z{}={}rr)
rr\r_rrr&r^rr�r�)r/r�	formatteds   r{rZzParameter.__str__�
s����y���J�	���6�)�)� ���	�'7��8H�'I�'I�K�K�I��=��&�&���v�-�-�%�,�,�Y��T�]�8K�8K�L�L�	�	�#�N�N�9�d�4�=�6I�6I�J�J�	��?�"�"��i��I�I�
�\�
!�
!��y�(�I��r}c�B�d�|jj|��S)Nz	<{} "{}">�rr-r+r�s r{rjzParameter.__repr__�
s���!�!�$�.�"9�4�@�@�@r}c�P�t|j|j|j|jf��Sr�)�hashr�rr�r�r�s r{�__hash__zParameter.__hash__�
s!���T�Y��	�4�?�D�L�I�J�J�Jr}c���||urdSt|t��stS|j|jko/|j|jko|j|jko|j|jkS�NT)rur�NotImplementedr\r]r^r_�r/�others  r{�__eq__zParameter.__eq__�
sp���5�=�=��4��%��+�+�	"�!�!��
�e�k�)�6��
�e�k�)�6��
���/�6�� �E�$5�5�	7r}N)r+rpr%r)r�r!r�r"r�r$r�r%r�r'rr�r�rfrjr�r�r�r�rr�r�rZrjrxr~rtr}r{rrM
sT�������*>�I�.�O�4��-�N�+�L�*�K��E�.4��)�)�)�)�)�V3�3�3�0�0�0�����X������X��� � ��X� �����X��$�%� �%�N�N�N�N�N�$���,A�A�A�K�K�K�7�7�7�7�7r}rc�z�eZdZ	dZd�Zed���Zed���Zed���Zd�Z	d�Z
d�Zd	�Zd
�Z
dS)r)r��
_signature�__weakref__c�"�||_||_dSr�)r�r�)r/r]r�s   r{r�zBoundArguments.__init__�
s��"���#����r}c��|jSr�)r�r�s r{r]zBoundArguments.signatures
����r}c�N�g}|jj���D]v\}}|jtt
fvrn[	|j|}|jtkr|�|���P|�	|���f#t$rYnwxYwt|��Sr�)r�r�r�rr�r�r�r��extendr�rUr�)r/r�r�r�r-s     r{r�zBoundArguments.argss�����!%��!;�!A�!A�!C�!C�	%�	%��J���z�l�M�:�:�:���
%��n�Z�0���:��0�0��K�K��$�$�$�$��K�K��$�$�$�$���
�
�
����
�����T�{�{�s�
B�
B�Bc�:�i}d}|jj���D]w\}}|s$|jtt
fvrd}n||jvrd}�+|s�.	|j|}|jtkr|�|���b|||<�h#t$rY�twxYw|Sr�)	r�r�r�rr�r�r��updaterU)r/�kwargs�kwargs_startedr�r�r-s      r{r�zBoundArguments.kwargss�������!%��!;�!A�!A�!C�!C�	-�	-��J��!�
!��:�,�
�!>�>�>�%)�N�N�!���7�7�)-�� �!�
��

-��n�Z�0���:��-�-��M�M�#�&�&�&�&�*-�F�:�&�&���
�
�
���
�����
s�
B�
B�Bc��	|j}g}|jj���D]�\}}	|�|||f���$#t
$rT|jtur|j}n$|jturd}n|jturi}nY�h|�||f��Y��wxYwt|��|_dS)Nrt)r�r�r�r�r�rUr�rrr�r�r�)r/r��
new_argumentsr�r��vals      r{�apply_defaultszBoundArguments.apply_defaults;s���	��N�	��
��?�5�;�;�=�=�	2�	2�K�D�%�

2��$�$�d�I�d�O�%<�=�=�=�=���
2�
2�
2��=��.�.��-�C�C��Z�?�2�2��C�C��Z�<�/�/��C�C��H��$�$�d�C�[�1�1�1�1�1�
2�����m�,�,����s�A
�
AB+�B+�*B+c��||urdSt|t��stS|j|jko|j|jkSrz)rurr{r]r�r|s  r{r~zBoundArguments.__eq__WsJ���5�=�=��4��%��0�0�	"�!�!���%�/�1�2���%�/�1�	3r}c�:�|d|_|d|_dS)Nr�r��r�r�rhs  r{rjzBoundArguments.__setstate___s����-����{�+����r}c� �|j|jd�S)Nr�r�r�s r{�__getstate__zBoundArguments.__getstate__cs��"�o�D�N�K�K�Kr}c��g}|j���D].\}}|�d�||�����/d�|jjd�|����S)Nz{}={!r}z	<{} ({})>r)r�r�r�rr-r+r:)r/r�r-rzs    r{rjzBoundArguments.__repr__fsr�����.�.�.�0�0�	6�	6�J�C���K�K�	�(�(��e�4�4�5�5�5�5��!�!�$�.�"9�4�9�9�T�?�?�K�K�Kr}N)r+rpr%r)r�r�r]r�r�r�r~rjr�rjrtr}r{rr�
s�������� ;�I�$�$�$�����X������X��,����X��:-�-�-�83�3�3�,�,�,�L�L�L�L�L�L�L�Lr}rc���eZdZ	dZeZeZeZ	dedd�d�Z
eddddd�d���Ze
d	���Ze
d
���Zeed�d�Zd
�Zd�Zd�Zdd�d�Zd�Zd�Zd�Zd�Zd�Zd�ZdS)r)�_return_annotation�_parametersNTr1c�6�	|�t��}n�|r�t��}t}d}|D]�}|j}|j}	||kr1d}
|
�|j|j��}
t
|
���||kr|}|ttfvr$|jtur|rd}
t
|
���nd}|	|vr$d�|	��}
t
|
���|||	<��ntd�|D����}tj|��|_||_
dS)NFz7wrong parameter order: {} parameter before {} parameterz-non-default argument follows default argumentTzduplicate parameter name: {!r}c3�(K�|]
}|j|fV��dSr�r�rxr�s  r{r�z%Signature.__init__.<locals>.<genexpr>�s)����$Q�$Q�U�e�j�%�%8�$Q�$Q�$Q�$Q�$Q�$Qr})rfr�rr�rrWr�r�r�rr��MappingProxyTyper�r�)r/r�r�r2r��top_kind�seen_defaultr�rr�r7s           r{r�zSignature.__init__�s^��	��� �]�]�F�F�&�&
R�$����+��$��'�)�)�E� �:�D� �:�D��h���(��"�j�j��)=�)-�)9�;�;��(��o�o�-�����#'��� 0�2H�I�I�I� �=�F�2�2�+�6�'1��&0��o�o� 5�6�,0�L��v�~�~�>�E�E�d�K�K��(��o�o�-�#(�F�4�L�L�?)�B%�$Q�$Q�j�$Q�$Q�$Q�Q�Q�� �1�&�9�9���"3����r}F��follow_wrappedrirjrkc�.�	t||||||���S)N)r�r�rirjrk)r�)r�r�r�rirjrks      r{rHzSignature.from_callable�s2��	B�'��C�>L�07��QY�[�[�[�	[r}c��|jSr�)r�r�s r{r�zSignature.parameters�ror}c��|jSr��r�r�s r{r�zSignature.return_annotation�s���&�&r})r�r�c��	|tur|j���}|tur|j}t	|��||���S)Nr)r�r�r�r�r~)r/r�r�s   r{r�zSignature.replace�s_��	�
������/�/�1�1�J���%�%� $� 7���t�D�z�z�*�,=�?�?�?�	?r}c��td�|j���D����}d�|j���D��}|||jfS)Nc3�:K�|]}|jtk�|V��dSr�)rr�r�s  r{r�z(Signature._hash_basis.<locals>.<genexpr>�s:����=�=�� %�
�m� ;� ;�� ;� ;� ;� ;�=�=r}c�>�i|]}|jtk�|j|��Srt)rr�r�r�s  r{r|z)Signature._hash_basis.<locals>.<dictcomp>�s5��H�H�H�E�+0�:��+F�+F��j�%�+F�+F�+Fr})r�r�r�r�)r/r��
kwo_paramss   r{�_hash_basiszSignature._hash_basis�s|���=�=�$�/�*@�*@�*B�*B�=�=�=�=�=��H�H�T�_�5K�5K�5M�5M�H�H�H�
��z�4�#9�9�9r}c��|���\}}}t|�����}t|||f��Sr�)r��	frozensetr�rw)r/r�r�r�s    r{rxzSignature.__hash__�sJ��04�0@�0@�0B�0B�-��
�-��z�0�0�2�2�3�3�
��V�Z�):�;�<�<�<r}c��||urdSt|t��stS|���|���kSrz)rurr{r�r|s  r{r~zSignature.__eq__�sK���5�=�=��4��%��+�+�	"�!�!����!�!�U�%6�%6�%8�%8�8�8r}�r�c	���	i}t|j�����}d}t|��}		t|��}	t|��}	|	jt
tfvrtd��d�|	jtkr1|g}
|
�	|��t|
��||	j<�nQ|	j|vr9|	jtkr)td�
|	j�����d�|||	j<�n#t$rtd��d�wxYw#t$r�	t|��}	|	jtkrYn�|	j|vrB|	jtkr-d}|�
|	j���}t|��d�|	f}Ynn|	jt
ks|	jt ur|	f}YnK|r|	f}YnDd}|�
|	j���}t|��d�#t$rYYn
wxYwwxYw���d}t#j||��D]�}	|	jt
kr|	}�|	jtkr�&|	j}
	|�|
��}|	jtkr(td�
|	j������|||
<��#t($rG|sB|	jtkr2|	jt ur$td�
|
�����d�Y��wxYw|rJ|�|||j<n=td�
tt|����������|�||��S)	NrtTztoo many positional argumentsz$multiple values for argument {arg!r})r-zA{arg!r} parameter is positional only, but was passed as a keywordz$missing a required argument: {arg!r}z*got an unexpected keyword argument {arg!r})r�r�r�rvrr�r�r�r�r�r�r�r�r�
StopIterationr�rrw�chainr9rU�_bound_arguments_cls)r/r�r�r�r�r��
parameters_ex�arg_vals�arg_valr�r�r7�kwargs_paramr�s              r{�_bindzSignature._bind�s��1��	��$�/�0�0�2�2�3�3�
��
���:�:��F	4�C
4��x�.�.��R4� ��,�,�E��z�l�M�%B�B�B�(�;�=�=�BF�G��z�_�4�4�#*����
�
�h�/�/�/�05�f�
�
�	�%�*�-���z�V�+�+��
�>N�0N�0N�'�B�I�I�$)�J�J�0�0�1�1�6:�;�-4�I�e�j�)�)��/%�O�O�O�#�$C�D�D�$�N�O�����U!�%
;�%
;�%
;�#;� ��,�,�E��z�_�4�4�����v�-�-� �:�)9�9�9�#@�C�"%�*�*���*�"<�"<�C�"+�C�.�.�d�:�).��
����*��4�4�05�
�V�0K�0K�*/��
���#�;�-2�H�M�!�E�"H�C�"%�*�*���*�"<�"<�C�"+�C�.�.�d�:��C%�����E�E�����	%
;����F	4�T���_�]�J�?�?�"	0�"	0�E��z�\�)�)�$����z�_�,�,����J�
0� �*�*�Z�0�0���:�!1�1�1�$�%B�$*�F�u�z�F�$:�$:�<�<�<�)0�	�*�%�%��'�
F�
F�
F�
 �F�E�J�/�$A�$A�49�M�V�4K�4K�#�$J�$*�F�z�F�$:�$:�<�<�AE�F���
F����*�	1��'�/5�	�,�+�,�,��@�G�G� ��f���.�.�H�0�0�1�1�1��(�(��y�9�9�9sg�D.�
D�D+�.
H�9G<�H�A	H�%!H�H�-H�<
H
�H�	H
�
H�J+�+AK<�;K<c�0�	|�||��Sr��r��r/r�r�s   r{�bindzSignature.bindvs��	��z�z�$��'�'�'r}c�4�	|�||d���S)NTr�r�r�s   r{r�zSignature.bind_partial}s!��	��z�z�$���z�5�5�5r}c�~�t|��t|j�����fd|jifS�Nr�)r~r�r�r�r�r�s r{rfzSignature.__reduce__�s?���T�
�
��t�'�.�.�0�0�1�1�3�%�t�'>�?�A�	Ar}c� �|d|_dSr�r�rhs  r{rjzSignature.__setstate__�s��"'�(<�"=����r}c�B�d�|jj|��S)Nz<{} {}>rur�s r{rjzSignature.__repr__�s������� 7��>�>�>r}c�D�g}d}d}|j���D]�}t|��}|j}|tkrd}n|r|�d��d}|tkrd}n$|tkr|r|�d��d}|�|����|r|�d��d�d�	|����}|j
tur,t|j
��}|d�|��z
}|S)NFTr�rz({})rz -> {})
r�r�rvrr�r�r�r�rr:r�rr&)	r/r�render_pos_only_separator�render_kw_only_separatorr�rsr�rendered�annos	         r{rZzSignature.__str__�sC����$)�!�#'� ��_�+�+�-�-�	%�	%�E��E�
�
�I��:�D��'�'�'�,0�)�)�*�
2��
�
�c�"�"�"�,1�)���&�&�,1�(�(���&�&�+C�&��
�
�c�"�"�"�,1�(��M�M�)�$�$�$�$�$�	�
�M�M�#�����=�=����6�!2�!2�3�3���!��/�/�#�D�$:�;�;�D������-�-�-�H��r}r�)r+rpr%r)rrrr�rr�r�rrHr�r�r�r�r�r�rxr~r�r�r�rfrjrjrZrtr}r{rrms��������,6�I��N�)���E�24�V�)-�24�24�24�24�24�h�%)�4��u�[�[�[�[��[�[�� � ��X� ��'�'��X�'�%*�U�
?�
?�
?�
?�
?�:�:�:�=�=�=�
9�9�9�.3�A:�A:�A:�A:�A:�F(�(�(�6�6�6�A�A�A�
>�>�>�?�?�?�+�+�+�+�+r}rr�c�B�	t�|||||���S)Nr�)rrH)r�r�rirjrks     r{r]r]�s0��9��"�"�3�~�+2�6�H�#�V�V�Vr}c��	ddl}ddl}|���}|�dd���|�dddd�	��|���}|j}|�d
��\}}}	|j|��x}}	no#t$rb}
d�	|t|
��j|
��}t|tj���tjd
��Yd}
~
nd}
~
wwxYw|r,|�d��}|	}|D]}
t#||
��}�|	jtjvr/tdtj���tjd��|j�r?td�	|����td�	t)|	������td�	|	j����||	urltd�	t-|	j������t1|	d��r'td�	|	j����nF	t5|��\}}td�	|����n#t$rYnwxYwtd��dStt7|����dS)Nrbr�zCThe object to be analysed. It supports the 'module:qualname' syntax)�helpz-dz	--details�
store_truez9Display info about the module rather than its source code)�actionr��:zFailed to import {} ({}: {}))rvr�r#z#Can't get info for builtin modules.r5z
Target: {}z
Origin: {}z
Cached: {}z
Loader: {}�__path__zSubmodule search path: {}zLine: {}r4)�argparserP�ArgumentParser�add_argument�
parse_argsr��	partition�
import_moduler�rr~r+�printr��stderr�exitr&r�builtin_module_names�detailsrD�
__cached__rr^r�r�r%rC)r�rP�parserr��target�mod_name�	has_attrs�attrsr�r�rr7�parts�part�__r�s                r{�_mainr��s��@��O�O�O�����
�
$�
$�
&�
&�F�
����9��:�:�:�����k�,�
H��J�J�J������D�
�[�F�!'�!1�!1�#�!6�!6��H�i���.�y�.�x�8�8�8��f�f������,�3�3�H�48��I�I�4F�47�9�9��	�c��
�#�#�#�#���������������������%����C� � �����	%�	%�D��#�t�$�$�C�C�
��#�2�2�2�
�3�#�*�E�E�E�E��������|��
�l�!�!�&�)�)�*�*�*�
�l�!�!�-��"7�"7�8�8�9�9�9�
�l�!�!�&�"3�4�4�5�5�5��&�=�=��,�%�%�d�6�+<�&=�&=�>�>�?�?�?��v�z�*�*�
K��1�8�8���I�I�J�J�J��
1�'��_�_�
��F��j�'�'��/�/�0�0�0�0���
�
�
���
����
	�d������
�i��n�n�����s+�B�
D� AC=�=D�&J�
J(�'J(rCr�)F)r5)rt)T)TNNF)��
__author__�__all__r�r�r�collections.abcr��enum�importlib.machineryrPrwrhrMr�r�r�r�r�r�rp�keywordrc�operatorrdrerfri�mod_dict�COMPILER_FLAG_NAMESr�r�r�r r)rZrLrWrXrPr�rVrUrRr�rTrOrIrHrSrNrJr\rQrMrKrYr[rGr�r=r>rr"rAr`rFr'r1r5r#r6r@rDr*rqrtr?r�r�NodeVisitorrr%r2rrr.rErCrar0rr+rr8rr,r&r'rvr(r*r8r/rr1r]r!rsrpr7r<�_fieldsr�rrBr;r$r^r_r�r�r�r�r�r�r�r-rrrrr:r9rr	r
rr4r3�WrapperDescriptorTyper�rr�r�r�r�r�r�r�r�r,r/r?r�r�r�r�IntEnumrSr!r�r"r�r$r�r%r�r'r�rrrr]r�r+rtr}r{�<module>r�sf���@9�
�a�a�a��H�
�
�
�
�
�
�
�
�
�
�
���������������������	�	�	�	�	�	�	�	�
�
�
�
���������������������������������/�/�/�/�/�/�/�/��7�9�9���#�)�)�+�+���D�A�q��H�U�Q�Y����q�(���%)���p�p�p�p�p�h0�0�0�$�$�$�0�0�0�A�A�A�(?�?�?��7�5�(�)�)��>�>�>�>�����7�5�(�)�)��>�>�>�>����2�2�2�	,�	,�	,�-�-�-�-�-�-�3�3�3�8�8�8�3�3�3�"3�3�3�;�;�;�3�3�3�/�/�/�.�.�.�29�9�9�7�7�7�(�(�(����0(�(�(�T3�3�3�3�
:�:�:�:�
�J�{�$E�F�F�	�p�p�p�h���������@0�0�0�
���<�<�<�|���& � � �:,�,�,�8
�
�
����28�8�8�8��
���,�,�,�,�^	�	�	�	�	�)�	�	�	������3�?����>B0�B0�B0�H+%�+%�+%�Z"�!�!�!�!��!�!�!�4�4�4�4�4�4�4�4�l	$�	$�	$�0�0�0�*������+�+�+�+�6
�J�{�$:�;�;�	�8�8�8�8�j��M�O�O��Z<�Z<�Z<�z�*�Y� >�
?�
?��9�9�9��������"�"9�"9� 8� 8� ?� ?�	(�(�(�(�.7�7�7� D�D�D�*:�:�:�x�j��(L�M�M��14�14�14�j�Z��&S�
T�
T�
�
-�
-�
-�
-�
-�
�
-�
-�
-�7�7�7�O�O�O�)A�)A�)A�)A�V���
�Z��j�9�3D�&D�
E�
E�
�
@�
@�
@�
@�
@�
�
@�
@�
@���������C�C�C�5�5�5�5�6�6�6�6�
�F�H�H�	�3�3�3�4�4�4����������'0�-�-�-�-�d�����
�
�
����$���&����!�������$
�
�
�$"�7�!�3�!�;�!�5�7�����$I?�I?�I?�I?�X*�*�*�4	#�	#�	#�G�G�G�2EA�EA�EA�PL8�L8�L8�L8�^
<�
<�
<�
<� 8<�AF�\9�\9�\9�\9�~+�+�+�48�,0�%)�$(�&+�gP�gP�gP�gP�gP�T<�<�<�<�<�<�<�<�A�A�A�A�A�A�A�A������T�\����"*�9��)�?��)�8��)�6�
�)�5��[7�[7�[7�[7�[7�[7�[7�[7�|L�L�L�L�L�L�L�L�DM�M�M�M�M�M�M�M�`
&*�4��u�V�V�V�V�V�7�7�7�t�z���	�E�G�G�G�G�G��r}

?>