HEX
Server: Apache
System: Linux bd12.noc223.com 4.18.0-553.121.1.lve.el8.x86_64 #1 SMP Thu Apr 30 16:40:41 UTC 2026 x86_64
User: handcraf (1693)
PHP: 8.1.28
Disabled: NONE
Upload Files
File: //proc/self/root/opt/alt/python312/lib64/python3.12/__pycache__/inspect.cpython-312.opt-2.pyc
�

�h�e'����	dZgd�ZddlZddlZddlZddlZddlZddlZ	ddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlZddlZddlZddlmZddlmZddlmZmZe�Zej8j;�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,e-�Z.d�Z/d�Z0d�Z1d�Z2d�Z3d�Z4d �Z5d!�Z6d"�Z7d#�Z8d$�Z9d%�Z:d&�Z;d'�Z<d(�Z=d)�Z>d�d*�Z?d�d+�Z@ed,d-�ZAd.�ZBd/�ZCdd0�d1�ZDd2�ZEd3�ZFd4�ZGd5�ZHd6�ZId7�ZJd8�ZKd9�ZLd�d:�ZMiZNiZOd�d;�ZPGd<�d=eQ�ZRGd>�d?ej��ZTd@�ZUdA�ZVGdB�dCeQ�ZWGdD�dE�ZXdF�ZYdG�ZZdH�Z[dI�Z\d�dJ�Z]edKdL�Z^dM�Z_edNdO�Z`dP�ZaedQdR�ZbdS�Zcd�dT�ZddU�ZeefdV�dW�dX�fdY�ZgdZ�Zhd[�Zid\�Zjed]d^�Zkd_�Zled`da�ZmGdb�dcem�Zndd�Zode�Zpd�df�Zqdg�Zredhdienj�z�ZtGdj�dket�Zud�dl�Zvd�dm�Zwdn�Zxd�do�Zyd�dp�Zze-�Z{e|j�dqj�Ze|j�drj�Z�ds�Z�dt�Z�e�j�du��Z�dv�Z�e{fdw�Z�dxZ�dyZ�dzZ�d{Z�d|�Z�d}�Z�d~Z�dZ�d�Z�d�Z�d��Z�d��Z�d�Z�d�Z�d�Z�d�Z�d��Z�d��Z�e�j2e�j4e�j6e�j8fZ�d��Z�d�d��Z�d��Z�d��Z�d��Z�d��Z�d�d��Z�d�d��Z�		d�d��Z�d�d�ddd	d��d��Z�Gd��d��Z�Gd��d��Z�Gd��d�e�jT�Z�e��jXZ�e��j\Z�e��j`Z�e��jdZ�e��jhZ�Gd��d��Z�Gd��d��Z�Gd��d��Z�d�ddd	d��d��Z�Gd��d�e�jt�Z�d��Z�e�d�k(re��yy)�)zKa-Ping Yee <ping@lfw.org>z'Yury Selivanov <yselivanov@sprymix.com>)h�AGEN_CLOSED�AGEN_CREATED�AGEN_RUNNING�AGEN_SUSPENDED�ArgInfo�	Arguments�	Attribute�BlockFinder�BoundArguments�BufferFlags�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�getasyncgenlocals�getasyncgenstate�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�markcoroutinefunction�	signature�stack�trace�unwrap�walktree�N)�	iskeyword)�
attrgetter)�
namedtuple�OrderedDict�CO_iF��globals�locals�eval_strc
��	t|t�r�t|dd�}|r;t|d�r/|j	dd�}t|t
j�rd}nd}d}t|dd�}|r/tjj	|d�}|r
t|dd�}tt|��}	|}
npt|t
j�rt|dd�}t|d�}d}	d}
n8t|�rt|dd�}t|dd�}d}	|}
nt|�d���|�iSt|t�st|�d���|siS|st|�S|
�Z	t|
d�r
|
j}
�t|
t j"�r
|
j$}
�A	t|
d�r|
j&}|�|}|�|	}|j)�D��cic]%\}}|t|t*�s|nt-|||���'}
}}|
Scc}}w)	N�__dict__�get�__annotations__�
__module__�__globals__z% is not a module, class, or callable.z+.__annotations__ is neither a dict nor None�__wrapped__)�
isinstance�type�getattr�hasattrrv�types�GetSetDescriptorType�sys�modules�dict�vars�
ModuleType�callable�	TypeError�
ValueErrorrz�	functools�partial�funcry�items�str�eval)�objrqrrrs�obj_dict�ann�obj_globals�module_name�module�
obj_localsrh�key�value�return_values              �./opt/alt/python312/lib64/python3.12/inspect.pyr.r.�s��+�X�#�t���3�
�D�1�����%�0��,�,�0�$�7�C��#�u�9�9�:����C����c�<��6����[�[�_�_�[�$�7�F��%�f�j�$�?���$�s�)�_�
���	�C��)�)�	*��c�,�d�3���c�:�.���
���	�#���c�,�d�3���c�=�$�7���
����3�'�!F�G�H�H�
�{��	��c�4� ��C�7�"M�N�O�O���	���C�y��
����v�}�-��+�+����&�)�"3�"3�4��������6�=�)� �,�,�K�����
�~����)�)�+�(��C�����s�+���e�W�f�1M�N�(�L�(����(s�*G>c�8�	t|tj�S�N)r{rr���objects r�rara#s��0��f�e�.�.�/�/�c�$�	t|t�Sr�)r{r|r�s r�rSrS's��/��f�d�#�#r�c�8�	t|tj�Sr�)r{r�
MethodTyper�s r�r^r^+s��:��f�e�.�.�/�/r�c��	t|�st|�st|�ryt|�}t	|d�xr
t	|d�S)NF�__get__�__set__�rSr^rYr|r~�r��tps  r�r_r_/sG��B��v��(�6�*�j��.@��	
�f��B��2�y�!�@�'�"�i�*@�&@�@r�c��	t|�st|�st|�ryt|�}t	|d�xst	|d�S)NFr��
__delete__r�r�s  r�rWrWCsC����v��(�6�*�j��.@��	
�f��B��2�y�!�>�W�R��%>�>r��MemberDescriptorTypec�8�	t|tj�Sr�)r{rr�r�s r�r]r]S���	��&�%�"<�"<�=�=r�c��	y�NF�r�s r�r]r][���	�r�r�c�8�	t|tj�Sr�)r{rr�r�s r�r\r\dr�r�c��	yr�r�r�s r�r\r\lr�r�c�8�	t|tj�Sr�)r{r�FunctionTyper�s r�rYrYss��	I��f�e�0�0�1�1r�c���	t|�r|j}t|�r�tj|�}t	|�st|�syt
|jj|z�Sr�)	r^�__func__r��_unwrap_partialrY�_signature_is_functionlike�bool�__code__�co_flags)�f�flags  r��_has_code_flagr��s^����1�+�
�J�J���1�+��!�!�!�$�A��q�M�7��:����
�
�#�#�d�*�+�+r�c�$�	t|t�Sr�)r�r�r�s r�r[r[�s��6��#�|�,�,r�c��t|�r|j}t|�r�tj|�}t	|dd�t
uS)N�_is_coroutine_marker)r^r�r�r�r}r��r�s r��_has_coroutine_markr��sA��
�1�+�
�J�J���1�+��!�!�!�$�A��1�,�d�3�7K�K�Kr�c�N�	t|d�r|j}t|_|S)Nr�)r~r�r�)r�s r�rdrd�s)����t�Z� ��}�}�� 4�D���Kr�c�>�	t|t�xst|�Sr�)r�rr�r�s r�rVrV�s!���
�#�|�,�H�0C�C�0H�Hr�c�$�	t|t�Sr�)r�rr�s r�rPrP�s���
�#�1�2�2r�c�8�	t|tj�Sr�)r{r�AsyncGeneratorTyper�s r�rOrO�s��A��f�e�6�6�7�7r�c�8�	t|tj�Sr�)r{r�
GeneratorTyper�s r�rZrZ�s��
K��f�e�1�1�2�2r�c�8�	t|tj�Sr�)r{r�
CoroutineTyper�s r�rUrU�s��3��f�e�1�1�2�2r�c��	t|tj�xsht|tj�xr&t	|j
jtz�xs$t|tjj�Sr�)r{rr�r�r��gi_coder�r�collections�abc�	Awaitabler�s r�rQrQ�sh��I��v�u�2�2�3�
:��v�u�2�2�3�
F��V�^�^�,�,�/D�D�E�
:�
�v�{���8�8�9�;r�c�8�	t|tj�Sr�)r{r�
TracebackTyper�s r�rcrc�s��N��f�e�1�1�2�2r�c�8�	t|tj�Sr�)r{r�	FrameTyper�s r�rXrX�s��
D��f�e�o�o�.�.r�c�8�	t|tj�Sr�)r{r�CodeTyper�s r�rTrT�s��O�,�f�e�n�n�-�-r�c�8�	t|tj�Sr�)r{r�BuiltinFunctionTyper�s r�rRrRs��H��f�e�7�7�8�8r�c�8�	t|tj�Sr�)r{r�MethodWrapperTyper�s r�r`r`s��8��f�e�5�5�6�6r�c��	t|�xs2t|�xs%t|�xst|�xst	|�Sr�)rRrYr^r_r`r�s r�rbrbsJ��F��f��
'��&�!�
'����
'�"�&�)�
'��v�&�	(r�c��	t|t�sy|jtzryt	t|�t
j�syt|d�ry|jj�D]\}}t|dd�s�y|jD]1}t|dd�D]}t||d�}t|dd�s�y�3y)NFT�__abstractmethods__�__isabstractmethod__r�)r{r|�	__flags__r%�
issubclassr��ABCMetar~rur�r}�	__bases__)r��namer��bases    r�rNrNs���D��f�d�#��
���-�-���d�6�l�C�K�K�0���v�,�-�����,�,�.����e��5�0�%�8���� � ����D�"7��<�	�D��F�D�$�/�E��u�4�e�<��	��
r�c�l�g}t�}t|�}t|�rlt|�}	|jD]P}|j
j
�D]1\}}	t|	tj�s�!|j|��3�Rnd}|D]E}
	|||
�}|
|vrt�	|r||�r|j|
|f�|j|
��G|jd���|S#t$rY�jwxYw#t$r+|D]!}|
|j
vs�|j
|
}nY��Y��wxYw)Nr�c��|dS)Nrjr�)�pairs r��<lambda>z_getmembers.<locals>.<lambda>Ys
��$�q�'�r��r�)�set�dirrSrHr�rur�r{r�DynamicClassAttribute�append�AttributeError�add�sort)r��	predicate�getter�results�	processed�names�mror��k�vr�r�s            r��_getmembersr�2sN���G���I���K�E��v���V�n��	��(�(�
(�� �M�M�/�/�1�(�D�A�q�!�!�U�%@�%@�A����Q��(�
(������
	��6�3�'�E��i��$�$� ��I�e�,��N�N�C��<�(��
�
�c��)�*�L�L�)�L�*��N��5�	��	���	��
���$�-�-�'� �M�M�#�.�E��
��	�		�s0�A	C0�9C0�C?�0	C<�;C<�?D3�D3�2D3c�&�	t||t�Sr�)r�r}�r�r�s  r�rDrD\s��G��v�y�'�2�2r�c�&�	t||t�Sr�)r�r4r�s  r�rErEas��
��v�y�.�9�9r�rzname kind defining_class objectc	�`�	t|�}tt|��}td�|D��}|f|z}||z}t|�}|D]]}|jj�D]>\}}t
|tj�s�!|j��.|j|��@�_g}	t�}
|D�]R}d}d}
d}||
vrs	|dk(rtd��t||�}
t|
d|�}||vrEd}d}|D]}t||d�}||
us�|}�|D]}	|j||�}||
us�|}�|�|}	|D]'}||jvs�|j|}||vr|}n|���|
�|
n|}t
|t tj"f�rd}|}nJt
|t$tj&f�rd}|}n%t
|t(�rd}|}nt+|�rd}nd	}|	jt-||||��|
j/|���U|	S#t$rY��wxYw#t$rY��wxYw)
Nc3�>K�|]}|ttfvs�|���y�wr�)r|r�)�.0�clss  r��	<genexpr>z'classify_class_attrs.<locals>.<genexpr>�s����H�C�c�$���.G�C�H�s��ruz)__dict__ is special, don't want the proxy�__objclass__z
static methodzclass method�property�method�data)rHr|�tupler�rur�r{rr��fgetr�r��	Exceptionr}�__getattr__r��staticmethod�BuiltinMethodType�classmethod�ClassMethodDescriptorTyperrbrr�)rr��metamro�class_bases�	all_basesr�r�r�r��resultr�r��homecls�get_obj�dict_obj�last_cls�srch_cls�srch_objr��kinds                    r�r'r'qs����4��+�C��T�#�Y��G��H�7�H�H�G��&�3�,�K��g�%�I���H�E�� ���M�M�'�'�)�	 �D�A�q��!�U�8�8�9�a�f�f�>P����Q��	 � ��F���I��D���������y� �
+��:�%�#�$O�P�P�!�#�t�,��"�'�>�7�C���+�-�#�G�#�H�$/�0��#*�8�T�4�#@��#�w�.�'/�H�0�
%,�0��%�'/�';�';�C��'F�H�$�w�.�'/�H�
0� �+�"*���	�D��t�}�}�$��=�=��.���'�)�"�G��	��?�
� �,�g�(���h��u�/F�/F� G�H�"�D��C�
��;��0O�0O�"P�
Q�!�D��C�
��(�
+��D��C�
�s�^��D��D��
�
�i��d�G�S�9�:��
�
�d��ID�J�M��C .�%�$�%��%�
��
�s$�H!�H�	H�H�!	H-�,H-c��	|jSr�)�__mro__)rs r�rHrH�s��N��;�;�r���stopc���	��d�}n�fd�}|}t|�|i}tj�}||�rQ|j}t|�}||vst	|�|k\rtdj
|���|||<||�r�Q|S)Nc��t|d�S�Nrz�r~r�s r��_is_wrapperzunwrap.<locals>._is_wrapper�s���1�m�,�,r�c�2��t|d�xr	�|�Sr!r")r�rs �r�r#zunwrap.<locals>._is_wrapper�s����1�m�,�<�T�!�W��<r�z!wrapper loop when unwrapping {!r})�idr��getrecursionlimitrz�lenr��format)r�rr#r��memo�recursion_limit�id_funcs `     r�rhrh�s������|�	-�	=��A�
�q�E�1�:�D��+�+�-�O�
�d�
������T�(���t�O��T��o�!=��@�G�G��J�K�K���W�
��d�
��Kr�c�n�	|j�}t|�t|j��z
Sr�)�
expandtabsr'�lstrip)�line�explines  r�rMrMs,��L��o�o��G��w�<�#�g�n�n�.�/�/�/r�c���tjj|j�}|�y|jjd�ddD]}t
||�}�t|�sy|S)N�.���)r�r�rvrx�__qualname__�splitr}rS)r�rr�s   r��
_findclassr6sb��

�+�+�/�/�$�/�/�
*�C�
�{���!�!�'�'��,�S�b�1�!���c�4� ��!��3�<���Jr�c�r�t|�r.|jD]}|tus�	|j}|��|cSyt|�rb|jj}|j}t|�r'tt||d�d�|jur|}�nR|j}�nDt|�r)|j}t|�}|�t||�|u�ryt|�rR|j}|j}t|�r"|jdz|z|jk(r|}n�|j}n�t|t �r4|j"}|j}t|�}|�t||�|urpyt%|�st'|�rX|j}|j(}t||�|uryt+|�r't|dd�}t|t,�r
||vr||Sy|jD]}	t||�j}|��|cSy#t$rY��wxYw#t$rY�>wxYw)Nr�r2�	__slots__)rSrr��__doc__r�r^r��__name__�__self__r}�	__class__rYr6rRr4r{rr	r_rWrr]r�)r�r��docr��selfrr��slotss        r��_finddocr@s���s�|��K�K�	�D��6�!���,�,�C��?��J�	����}��|�|�$�$���|�|���D�M��G�D�$��-�z�:�c�l�l�J��C��.�.�C�	�C���|�|����o���;�'�#�t�,�C�7��	�3���|�|���|�|���D�M�����#�d�*�c�.>�.>�>��C��.�.�C�	�C��	"��x�x���}�}�������;�'�#�t�,�C�7��	�C�	 �$4�S�$9��|�|�������3���S�(���c�"��C��d�3�E��%��&�4�5�=��T�{�"�������	��$��%�-�-�C��?��J�
���m&�����d�	��	�s#�H�;H*�	H'�&H'�*	H6�5H6c��		|j}|�	t|�}t	|t
�syt
|�S#t$rYywxYw#ttf$rYywxYwr�)r9r�r@r�r{r�r()r�r=s  r�r<r<\sq��B�
��n�n���{�	��6�"�C��c�3����C�=��������
�	�*�	��	�s �9�A�	A�A�A�Ac�B�		|j�jd�}tj}|ddD]8}t	|j��}|s�t	|�|z
}t
||�}�:|r|dj�|d<|tjkr%tdt	|��D]
}|||d||<�|r|ds|j�|r|ds�|r|ds|jd�|r|ds�dj|�S#t$rYywxYw)N�
�rjr3)r-r5r��maxsizer'r.�min�range�pop�join�UnicodeError)r=�lines�marginr/�content�indent�is       r�r(r(os��� ���� �&�&�t�,��
�����!�"�I�	-�D��$�+�+�-�(�G���T��W�,���V�V�,��		-���Q�x���(�E�!�H��C�K�K���1�c�%�j�)�G��e�A�h�v�w�6G�5��8�G��E�"�I��I�I�K��E�"�I��E�!�H��I�I�a�L��E�!�H��y�y�����)����s�D�	D�Dc���	t|�r3t|dd�r|jStdj	|���t|�r�t
|d�r\tjj|j�}t|dd�r|jS|jdk(rtd��tdj	|���t|�r|j}t|�r|j}t!|�r|j"}t%|�r|j&}t)|�r|j*Stdj	t-|�j.���)N�__file__z{!r} is a built-in modulerx�__main__�source code not availablez{!r} is a built-in classzVmodule, class, method, function, traceback, frame, or code object was expected, got {})rar}rQr�r(rSr~r�r�rvrx�OSErrorr^r�rYr�rc�tb_framerX�f_coderT�co_filenamer|r:)r�r�s  r�r=r=�s)��J�����6�:�t�,��?�?�"��3�:�:�6�B�C�C��v���6�<�(��[�[�_�_�V�%6�%6�7�F��v�z�4�0����&�� � �J�.��9�:�:��2�9�9�&�A�B�B���������&�������6�������v������
�f�~��!�!�!�
�7�7=�v���L�)�)�8+�,�,r�c� �	tjj|�}tjj�D�cgc]}t
|�|f��}}|j�|D]\}}|j|�s�|d|cSycc}wr�)	�os�path�basename�	importlib�	machinery�all_suffixesr'r��endswith)rZ�fname�suffix�suffixes�neglens     r�rGrG�s���;��G�G���T�"�E�#,�"5�"5�"B�"B�"D�F���f�+��v�&�F�H�F��M�M�O�"�"�����>�>�&�!���&�>�!�"���
Fs�Bc�p��	t|��tjjdd}|tjjddz
}t�fd�|D��rAtjj��dtjjdz�n-t�fd�tjjD��ry�tjvr�Stjj��r�St|��}t|dd���Stt|dd�dd���Sy)Nc3�@�K�|]}�j|����y�wr��r_�r�s�filenames  �r�rz getsourcefile.<locals>.<genexpr>�s�����
?�A�8���Q��
?���rjc3�@�K�|]}�j|����y�wr�rfrgs  �r�rz getsourcefile.<locals>.<genexpr>�s �����
9�a�X�
�
�q�
!�
9�rj�
__loader__�__spec__�loader)r=r\r]�DEBUG_BYTECODE_SUFFIXES�OPTIMIZED_BYTECODE_SUFFIXES�anyrYrZ�splitext�SOURCE_SUFFIXES�EXTENSION_SUFFIXES�	linecache�cache�existsrFr})r��all_bytecode_suffixesr�ris   @r�rKrK�s�����v��H�%�/�/�G�G��J���Y�0�0�L�L�Q�O�O��
�
?�)>�
?�?��G�G�$�$�X�.�q�1��'�'�7�7��:�;��	�
9��$�$�7�7�
9�
9���9�?�?�"���	�w�w�~�~�h����
�v�x�
(�F��v�|�T�*�6���	����T�2�H�d�	C�	O���
Pr�c��	|�t|�xst|�}tjj	tjj|��Sr�)rKr=rYrZ�normcase�abspath)r��	_filenames  r�r/r/�sD��2���!�&�)�<�W�V�_�	�
�7�7���B�G�G�O�O�I�6�7�7r�c��	t|�r|St|d�r)tjj	|j
�S|�.|tvr&tjj	t|�S	t||�}|tvr&tjj	t|�Stjj�j�D]�\}}t|�s�t|d�s�|j}|tj	|d�k(r�E|t|<t|�}|jxt|<ttj j#|�<��|tvr&tjj	t|�Stjd}t|d�syt||j�rt%||j�}||ur|Stjd}t||j�rt%||j�}	|	|ur|Syy#ttf$rYywxYw)NrxrQrRr:�builtins)rar~r�r�rvrx�
modulesbyfiler/r��FileNotFoundError�copyr�rQ�_filesbymodnamer:rYrZ�realpathr})
r�r|�file�modnamer�r��main�
mainobject�builtin�
builtinobjects
          r�rFrF�s���K�����
��v�|�$��{�{���v�0�0�1�1����m�!;��{�{���}�Y�7�8�8���&�)�,���}���{�{���}�T�2�3�3��;�;�+�+�-�3�3�5�
7�����F����
� ;����A��O�'�'���6�6��'(�O�G�$��6�"�A�(.���
7�M�!��}���� � ��#� %�
7��}���{�{���}�T�2�3�3��;�;�z�"�D��6�:�&���t�V�_�_�%��T�6�?�?�3�
�����K��k�k�*�%�G��w����(������9�
��F�"��N�#�)��;
�(�)����s�5H6�6I�Ic��eZdZy)rN�r:rxr4r�r�r�rrs��r�rc�"�eZdZd�Zd�ZeZd�Zy)�_ClassFinderc� �g|_||_yr�)rf�qualname)r>r�s  r��__init__z_ClassFinder.__init__s����
� ��
r�c��|jj|j�|jjd�|j|�|jj	�|jj	�y)Nz<locals>)rfr�r��
generic_visitrH)r>�nodes  r��visit_FunctionDefz_ClassFinder.visit_FunctionDefsT���
�
���$�)�)�$��
�
���*�%����4� ��
�
�����
�
���r�c�x�|jj|j�|jdj	|j�k(rB|j
r|j
dj}n|j}|dz}t|��|j|�|jj�y)Nr2rjrD)
rfr�r�r�rI�decorator_list�linenorr�rH)r>r��line_numbers   r��visit_ClassDefz_ClassFinder.visit_ClassDefs����
�
���$�)�)�$��=�=�C�H�H�T�Z�Z�0�0��"�"�"�1�1�!�4�;�;��"�k�k��
�1��K�%�k�2�2����4� ��
�
���r�N)r:rxr4r�r��visit_AsyncFunctionDefr�r�r�r�r�r�s��!��/��
r�r�c��	t|�}|rtj|�n8t|�}|j	d�r|jd�st
d��t||�}|r!tj||j�}ntj|�}|st
d��t|�r|dfSt|�rZ|j}dj|�}tj|�}t!|�}	|j#|�t
d��t)|�r|j*}t-|�r|j.}t1|�r|j2}t5|�r|j6}t9|�rkt;|d�st
d	��|j<d
z
}
t?j@d�}|
dkDr'	||
}|jE|�r	||
fS|
d
z
}
|
dkDr�'||
fSt
d
��#t$$r}|j&d}	||	fcYd}~Sd}~wwxYw#tB$rt
d��wxYw)N�<�>rSzcould not get source coderj�zcould not find class definition�co_firstlinenoz"could not find function definitionrDz>^(\s*def\s)|(\s*async\s+def\s)|(.*(?<!\w)lambda(:|\s))|^(\s*@)zlineno is out of boundszcould not find code object)#rKru�
checkcacher=�
startswithr_rTrF�getlinesrurarSr4rI�ast�parser��visitr�argsr^r�rYr�rcrUrXrVrTr~r��re�compile�
IndexError�match)
r�r�r�rKr��source�tree�class_finder�er��lnum�patr/s
             r�r*r*+s ��9��� �D�����T�"��v�������$����s�);��5�6�6�
�v�t�
$�F�
��"�"�4����9���"�"�4�(����1�2�2�����a�x���v���&�&���������y�y�� ��#�H�-��	=����t�$�
�;�<�<���������&�������6�������v������
�f�~��v�/�0��>�?�?��$�$�q�(���j�j�Z�[���Q�h�
9��T�{���y�y�����d�{���!�8�D��Q�h��d�{��
�.�
/�/��9#�	&��&�&��)�K��+�%�%��	&��,�
9��7�8�8�
9�s*�G?�
H(�?	H%�H �H%� H%�(H=c�,�		t|�\}}t|�r�d}|r
|ddddk(rd}|t	|�kr>||j�dvr)|dz}|t	|�kr||j�dvr�)|t	|�kr{||dddk(rog}|}|t	|�krL||dddk(rA|j
||j��|dz}|t	|�kr||dddk(r�Adj|�Syy|dkD�rwt||�}|dz
}|dk\�r]||j�dddk(�rBt||�|k(�r/||j�j�g}|dkDr�|dz
}||j�j�}|dddk(r]t||�|k(rL|g|dd|dz
}|dkrn;||j�j�}|dddk(rt||�|k(r�L|r4|dj�dk(rg|dd|r|dj�dk(r�|r4|dj�dk(rg|dd|r|dj�dk(r�dj|�Syyyy#ttf$rYywxYw)	Nrj�z#!rD)r��#r�r�r3)r*rTr�rar'�stripr�r-rIrMr.)r�rKr��start�comments�endrN�comments        r�r9r9os����� ��(���t�������U�1�X�b�q�\�T�)�1�5��c�%�j� �U�5�\�%7�%7�%9�Y�%F��A�I�E��c�%�j� �U�5�\�%7�%7�%9�Y�%F��3�u�:��%��,�r��"2�c�"9��H��C���E�
�"�u�S�z�"�1�~��'<�����c�
� 5� 5� 7�8��A�g����E�
�"�u�S�z�"�1�~��'<��7�7�8�$�$�
#:��
����E�$�K�(���Q�h���!�8��c�
�)�)�+�B�Q�/�3�6��u�S�z�"�f�,��c�
�-�-�/�6�6�8�9�H��Q�w��A�g����*�/�/�1�8�8�:���b�q�k�S�(�Z��c�
�-C�v�-M�$+�9�H�R�a�L���'�C��Q�w��#�C�j�3�3�5�<�<�>�G�	�b�q�k�S�(�Z��c�
�-C�v�-M�
�x��{�0�0�2�c�9�!���!���x��{�0�0�2�c�9��x��|�1�1�3�s�:� "����
��x��|�1�1�3�s�:��7�7�8�$�$�
-�7�8�
��%
�Y�����s�J�J�Jc��eZdZy)rNr�r�r�r�rr�s�r�rc��eZdZ	d�Zd�Zy)r	c�f�d|_d|_d|_d|_d|_d|_d|_y)NrjFrD)rN�islambda�started�passline�indecorator�last�	body_col0�r>s r�r�zBlockFinder.__init__�s4�������
������
� �����	���r�c�R�|js?|js3|dk(rd|_d|_y|dvr|dk(rd|_d|_d|_y|tj
k(r8d|_|d|_|jrt�|jrd|_yy|jry|tjk(r>|j�|jr
|d|_	|jdz|_
d|_y|tjk(r*|jdz
|_
|jdkrt�y|tjk(r+|j�|d|jk\r|d|_yyy|jdk(r)|tjtjfvrt�yy)N�@T)�def�class�lambdar�FrjrD)r�r�r�r��tokenize�NEWLINEr�r�INDENTr�rN�DEDENT�COMMENT�NL)r>r|�token�srowcol�erowcolr/s      r��
tokeneaterzBlockFinder.tokeneater�s����|�|�D�$4�$4���|�#'�� �!�D�M�	�4�4��H�$�$(�D�M�#��� �D�M�
�X�%�%�
%�!�D�M���
�D�I��}�}� � ����#(�� � �
�]�]��
�X�_�_�
$��~�~�%�$�,�,�!(������+�+��/�D�K� �D�M�
�X�_�_�
$��+�+��/�D�K��{�{�a�� � � �
�X�%�%�
%��~�~�)�g�a�j�D�N�N�.J�#�A�J��	�/K�)��[�[�A�
�$�x�/?�/?����.M�"M���#N�
r�N)r:rxr4r�r�r�r�r�r	r	�s��J��)r�r	c��	t�}	tjt|�j�}|D]}|j
|��	|d|jS#ttf$rY� t$rW}d|jvr|d�^}}	|j
tjg|���n#ttf$rYnwxYwYd}~�zd}~wwxYw)N�	unmatched)r	r��generate_tokens�iter�__next__r�r�IndentationError�SyntaxError�msgr�r�)rK�blockfinder�tokens�_tokenr��_�_token_infos       r�r5r5�s���J��-�K�
��)�)�$�u�+�*>�*>�?���	,�F�"�K�"�"�F�+�	,��"�+�"�"�#�#��
�(�)�
�����a�e�e�#���� ���K�	�"�K�"�"�8�#3�#3�B�k�B���,�-�	��	���
�sA�>A�C�,C�4C�
!B,�+C�,B>�;C�=B>�>C�Cc���	t|�}t|�\}}t|�r|j}t	|�s$t|�r|jjdk(r|dfSt||d�|dzfS)Nz<module>rjrD)	rhr*rcrUrarXrV�co_namer5�r�rKr�s   r�rLrL�sv��6��F�^�F��V�$�K�E�4��6������	���	���V�]�]�2�2�j�@��a�x����d�e��%�t�a�x�/�/r�c�B�	t|�\}}dj|�S)Nr�)rLrIr�s   r�rJrJ�s&��A�
!��(�K�E�4�
�7�7�5�>�r�c���	g}|jtdd���|D]C}|j||jf�||vs�%|jt	||||���E|S)Nrxr:r�)r�rlr�r�ri)�classes�children�parentr��cs     r�ririsj��7��G��L�L�Z��j�9�L�:�
�?������1�;�;�'�(���=��N�N�8�H�Q�K��1�=�>�?��Nr�c�0�	i}g}|D]c}|jr?|jD]/}||vrg||<|||vr||j|�|s�*||vs�/�L�N||vs�S|j|��e|D]}||vs�|j|��t||d�Sr�)r�r�ri)r��uniquer��rootsr�r�s      r�r7r7s���E��H��E�
�	���;�;��+�+�
7����)�')�H�V�$��H�V�,�,��V�$�+�+�A�.��f��/��
7��e�^��L�L��O�	��!���� ��L�L�� �!��E�8�T�*�*r�rzargs, varargs, varkwc��	t|�stdj|���|j}|j}|j
}t
|d|�}t
||||z�}||z
}d}|jtzr|j|}|dz}d}|jtzr|j|}t||z||�S)Nz{!r} is not a code objectrD)rTr�r(�co_varnames�co_argcount�co_kwonlyargcount�listr�rrr)�cor��nargs�nkwargsr��
kwonlyargs�varargs�varkws        r�r0r0-s�����"�:��3�:�:�2�>�?�?��N�N�E��N�N�E��"�"�G���f�u�
��D��e�E�%��-�0�1�J�	�W��E��G�	�{�{�Z���.�.��'����	���E�	�{�{�^�#����u�%���T�J�&���7�7r�rzGargs, varargs, varkw, defaults, kwonlyargs, kwonlydefaults, annotationsc	��		t|ddtd��}g}d}d}g}g}i}d}	i}
|j|j
ur|j|d<|jj�D�]}|j}|j}
|tur:|j|
�|j|j
ur�|	|jfz
}	n�|tur:|j|
�|j|j
urg|	|jfz
}	nV|tur|
}nK|tur9|j|
�|j|j
ur|j|
|
<n
|t ur|
}|j"|j
us��|j"||
<��!|
sd}
|	sd}	t%||z|||	||
|�S#t$r}td�|�d}~wwxYw)NF)�follow_wrapper_chains�skip_bound_arg�sigclsrszunsupported callabler��return)�_signature_from_callabler$r
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�r?r?Ks����8�"'�t�=B�6;�.7�05�	7���D��G��E��K��J��K��H��J�
���C�I�I�-� #� 5� 5��H�����&�&�(�1���z�z���z�z���#�#����t�$��}�}�E�K�K�/��U�]�]�,�,��
�+�
+��K�K����}�}�E�K�K�/��U�]�]�,�,��
�_�
$��G�
�]�
"����d�#��}�}�E�K�K�/�#(�=�=�
�4� �
�\�
!��E����5�;�;�.� %� 0� 0�K���-1�0��
�����{�T�)�7�E�8�!�:�{�<�<��g�8�
�.�/�R�7��8�s�F&�&	G�/F;�;Grzargs varargs keywords localsc�f�	t|j�\}}}t||||j�Sr�)r0rVr�f_locals)�framer�r�r�s    r�r1r1�s3��=�#�5�<�<�0��D�'�5��4��%����8�8r�c�X�t|dd�dk(r#d�}tjd|t|��St	|t
j�rt|�St	|t�r8|jd|fvr|jS|jdz|jzSt|�S)Nrx�typingc�D�|j�}|jd�S)Nztyping.)�group�removeprefix)r��texts  r��replzformatannotation.<locals>.repl�s���;�;�=�D��$�$�Y�/�/r�z[\w\.]+r~r2)r}r��sub�reprr{r�GenericAliasr�r|rxr4)r�base_modulers   r�r+r+�s����z�<��.�(�:�	0��v�v�j�$��Z�(8�9�9��*�e�0�0�1��:����*�d�#�� � �Z��$=�=��*�*�*��$�$�S�(��)@�)@�@�@��
��r�c�,��t|dd���fd�}|S)Nrxc���t|��Sr�)r+)rr�s �r��_formatannotationz5formatannotationrelativeto.<locals>._formatannotation�s����
�F�3�3r�)r})r�rr�s  @r�r,r,�s���
�V�\�4�
0�F�4��r�c��d|zS)N�*r��r�s r�r�r��s
��s�T�z�r�c��d|zS)N�**r�r!s r�r�r��s
��T�D�[�r�c��dt|�zS)N�=)r)r�s r�r�r��s��c�D��K�.?�r�c�>�	|||fd�}g}	tt|��D]}
|	j|||
���|r#|	j||�|||�z�|r#|	j||�|||�z�ddj|	�zdzS)Nc�*�||�|||�zSr�r�)r�rr�	formatarg�formatvalues    r��convertz formatargvalues.<locals>.convert�s������V�D�\�!:�:�:r��(�, �))rGr'r�rI)r�r�r�rrr(�
formatvarargs�formatvarkwr)r*�specsrOs           r�r-r-�s���
M�$�#��;�
�E�
�3�t�9�
�'��
���W�T�!�W�%�&�'��
���]�7�+�k�&��/�.J�J�K��
���[��'�+�f�U�m�*D�D�E�����5�!�!�C�'�'r�c�.�|D�cgc]}||vs�t|���}}t|�}|dk(r|d}n@|dk(rdj|�}n+dj|dd�}|dd�=dj|�|z}t	d|||rd	nd
|dk(rdnd|fz��cc}w)
NrDrjr�z	{} and {}z, {} and {}���r,z*%s() missing %i required %s argument%s: %s�
positional�keyword-onlyr�rh)rr'r(rIr�)	�f_name�argnames�posr�r�r��missingrh�tails	         r��_missing_argumentsr:�s���$,�C�D��F�0B�T�$�Z�C�E�C��%�j�G��!�|��!�H��	�A���K����&��#�}�#�#�U�2�3�Z�0���"�#�J��I�I�e��t�#��
�@��W�&)�l�~�#�q�L�b�c�1�6�6�7�7��
Ds
�	B�
Bc
�v�t|�|z
}t|D�cgc]	}||vs�|��c}�}	|r|dk7}
d|fz}n7|rd}
d|t|�fz}n"t|�dk7}
tt|��}d}|	rd}
|
|dk7rdnd|	|	dk7rdndfz}td|||
rdnd|||dk(r|	s	d	fz��d
fz��cc}w)NrDzat least %dTz
from %d to %dr�z7 positional argument%s (and %d keyword-only argument%s)rhz5%s() takes %s positional argument%s but %d%s %s given�was�were)r'r�r�)r5r��kwonlyr��defcount�givenr��atleast�arg�kwonly_given�pluralr�
kwonly_sigr�s              r��	_too_manyrF�s���$�i�(�"�G��v�?������?�@�L���A����w�j�(��	�����#�d�)� 4�4���T��a����#�d�)�n���J��G���E�Q�J�S�B��$0�A�$5�S�2�?�?�
�
�K�
�S��#�R��
��q�j��U�
C�C�D�D�;A�
C�C�D�D��@s
�	B6�B6c	�R�	t|�}|\}}}}}}	}
|j}i}t|�r|j�|jf|z}t	|�}
t	|�}|rt	|�nd}t|
|�}t
|�D]
}|||||<�|rt||d�||<t||z�}|ri||<|j�D]=\}}||vr|st|�d|����||||<�%||vrt|�d|����|||<�?|
|kDr|st||||||
|�|
|krH|d||z
}|D]}||vs�t||d|��t|||z
d�D]\}}||vs�||||<�d}|D]}||vs�|	r
||	vr	|	|||<�|dz
}�|rt||d|�|S)Nrjz&() got an unexpected keyword argument z$() got multiple values for argument TrDF)r?r:r^r;r'rFrGrr�r�r�rFr:�	enumerate)r�r3�named�specr�r�r�rr��kwonlydefaultsr�r5�	arg2value�num_pos�num_args�num_defaults�nrO�possible_kwargs�kwr��reqrBr8�kwargs                         r�r6r6sI��-�
�$��D�FJ�C�D�'�5�(�J���
�]�]�F��I���~�$�-�-�3��m�m�%�
�2�
��*�o�G��4�y�H�$,�3�x�=�!�L��G�X��A�
�1�X�+��'��]�	�$�q�'��+��"�:�a�b�>�2�	�'���$��+�,�O���	�%���[�[�]�
�	��E�
�_�$���!'��!-�.�.�#(�I�e��R� ��
��?��#�R�)�*�
*��	�"�
�
����'��&�$�
�G�\��I�	'�����+�H�|�+�,���	A�C��)�#�"�6�3��i�@�	A� ��X��%<�%=� >�?�	-�F�A�s��)�#�!)�!��	�#��	-��G�����	�!��%�>�"9�#1�%�#8�	�%� ��1������6�:�u�i�@��r�rz"nonlocals globals builtins unboundc��	t|�r|j}t|�stdj	|���|j
}|j�i}n=t|j|j�D��cic]\}}||j��}}}|j}|jdtj�}t|�r|j}i}i}t�}	|j D]}
|
dvr�	||
||
<�t'||||	�Scc}}w#t"$r-	||
||
<n #t"$r|	j%|
�YnwxYwY�\wxYw)N�{!r} is not a Python function�__builtins__)�None�True�False)r^r�rYr�r(r��__closure__�zip�co_freevars�
cell_contentsryrvr~rurar��co_names�KeyErrorr�r)r��code�
nonlocal_vars�var�cell�	global_ns�
builtin_ns�global_vars�builtin_vars�
unbound_namesr�s           r�r8r8Cso�����~��}�}���d���7�>�>�t�D�E�E��=�=�D������
�!��!1�!1�4�3C�3C�D�	���T�
�$�$�$�$�	�
�	�� � �I����~�x�/@�/@�A�J��
���(�(�
��K��L��E�M��
�
�(���,�,�
�	(� )�$��K���
(��}�k�#�]�4�4��7	��*�	(�
(�%/��%5��T�"���
(��!�!�$�'�
(��	(�s<�<D�<D�	E�$D-�,E�-E
�E�	E
�
E�E�
_Tracebackz+filename lineno function code_context indexc�*��eZdZdd��fd�
Zd�Z�xZS)r&N��	positionsc�>��t�|�||||||�}||_|Sr���super�__new__rm)	rrir��function�code_context�indexrm�instancer<s	        �r�rqzTraceback.__new__{s)����7�?�3��&�(�L�RW�X��&����r�c��dj|j|j|j|j|j
|j�S)NzcTraceback(filename={!r}, lineno={!r}, function={!r}, code_context={!r}, index={!r}, positions={!r}))r(rir�rrrsrtrmr�s r��__repr__zTraceback.__repr__�s@��@�@F���
�
�t�{�{�D�M�M�4�;L�;L��
�
�D�N�N�A,�	-r��r:rxr4rqrw�
__classcell__�r<s@r�r&r&zs���SW��
-r�r&c�^�|jj|j}}t||�Sr�)rUrV�tb_lasti�_get_code_position)�tbra�instruction_indexs   r��_get_code_position_from_tbr��s(�� �k�k�0�0�"�+�+�
�D��d�$5�6�6r�c�t�|dkry|j�}ttj||dzd��S)Nrj)NNNNr�)�co_positions�next�	itertools�islice)rar�
positions_gens   r�r}r}�s;���1��'��%�%�'�M��	� � ��0A�Q�0F��M�N�Nr�c
��	t|�r$t|�}|j}|j}n,|j}t|j|j�}|d�
||g|dd��^}}n|g|��^}}|d}t|�stdj|���t|�xst|�}|dkDrM|dz
|dzz
}	t|�\}}tdt|t!|�|z
��}||||z}|dz
|z
}ndx}}t%|||jj&||t)j*|���S#t"$rdx}}Y�DwxYw)NrjrDz'{!r} is not a frame or traceback objectr�rl)rcr��	tb_linenorU�f_linenor}rV�f_lastirXr�r(rKr=r*�maxrFr'rTr&r��dis�	Positions)	r�contextrmr�rir�rKr�rts	         r�r>r>�sv��>��5��.�u�5�	�������������&�u�|�|�U�]�]�C�	���|��"�F�;�Y�q�r�]�;���	�"�/�Y�/���	�
�q�\�F��5�>��A�H�H��O�P�P��U�#�5�w�u�~�H���{���
�W�a�Z�'��	'�$�U�+�K�E�4���3�u�c�%�j�7�&:�;�<�E��%��g�
�.�E��Q�J��&�E������X�v�u�|�|�';�';�U��c�m�m�Y�&?�A�A���	!� � �E�E�	!�s�
E�
E�Ec��	|jSr�)r��rs r�rCrC�s��M��>�>�r��
_FrameInfor�c�*��eZdZdd��fd�
Zd�Z�xZS)rNrlc	�@��t�	|�|||||||�}||_|Sr�ro)
rrrir�rrrsrtrmrur<s
         �r�rqzFrameInfo.__new__�s+����7�?�3��x���<�Y^�_��&����r�c	��dj|j|j|j|j|j
|j|j�S)NzoFrameInfo(frame={!r}, filename={!r}, lineno={!r}, function={!r}, code_context={!r}, index={!r}, positions={!r}))r(rrir�rrrsrtrmr�s r�rwzFrameInfo.__repr__�sG��@�@F���
�
�D�M�M�4�;�;��
�
��!�!�4�:�:�t�~�~�A?�	@r�rxrzs@r�rr�s���Z^��
@r�rc��	g}|rEt||�}|f|z}|jt|d|ji��|j}|r�E|S�Nrm)r>r�rrm�f_back)rr��	framelist�traceback_info�	frameinfos     r�rIrI�s^��G��I�
�%�e�W�5���H�~�-�	�����I�R��9Q�9Q�R�S�����	�
�r�c��	g}|rOt||�}|jf|z}|jt|d|ji��|j
}|r�O|Sr�)r>rUr�rrm�tb_next)r~r�r�r�r�s     r�rBrB�sb��G��I�
�%�b�'�2���[�[�N�^�3�	�����I�R��9Q�9Q�R�S�
�Z�Z��	
�
�r�c�R�	ttd�rtjd�SdS)N�	_getframerD)r~r�r�r�r�r�r)r)�s"��I�&�s�K�8�3�=�=���B�d�Br�c�B�	ttjd�|�S)NrD)rIr�r�)r�s r�rfrf�s��J��#�-�-��*�G�4�4r�c�d�	tj�}|�dn|j}t||�Sr�)r��	exception�
__traceback__rB)r��excr~s   r�rgrg�s.��M�

�-�-�/�C����#�"3�"3�B��"�g�&�&r�rruc��i}	tj|d�}tj	||t
�S#t$rY�&wxYw�Nru)r��__getattribute__r�r�rv�	_sentinel)r��attr�
instance_dicts   r��_check_instancer��sG���M�
��/�/��Z�@�
��8�8�M�4��3�3���
��
�s�5�	A�Ac��t|�D]<}tt|��tus�||jvs�-|j|cStSr�)�_static_getmro�_shadowed_dictr|r�ru)�klassr��entrys   r��_check_classr�sI����&�(���$�u�+�&�)�3�����8N��>�>�$�'�'�(��r�c��|D]S}t|�}d|vs�|d}t|�tjur|jdk(r|j
|ur�Q|cStSr�)�_get_dunder_dict_of_classr|rr�r:rr�)r�r��dunder_dict�
class_dicts    r��_shadowed_dict_from_mro_tupler�
sj���"��/��6����$�$�Z�0�J���$��(B�(B�B��'�'�:�5��+�+�u�4�!�!�"��r�c�*�tt|��Sr�)r�r�)r�s r�r�r�s��(���)>�?�?r�c��	t}t|�}tt|�vr=|}t|�}|tust|�tj
urt
||�}n|}t||�}|tur[|turStt|�d�tur8tt|�d�tustt|�d�tur|S|tur|S|tur|S||urStt|��D]<}tt|��tus�||jvs�-|j|cS|tur|St|��)Nr�r�r�)
r�r|r�r�rr�r�r�rur�)	r�r�r�instance_result�objtyper��	dict_attr�klass_resultr�s	         r�r4r4s<��	� �O��3�i�G��>�'�*�*���"�5�)�	���"���O�u�9�9�9�-�c�4�8�O�����t�,�L��i�'�L�	�,I���\�*�I�6�i�G���l�+�Y�7�y�H��D��.��=�Y�N����i�'����9�$���
�e�|�#�D��K�0�	,�E��t�E�{�+�y�8��E�N�N�*��~�~�d�+�+�	,��i����
��
�r�r r!r"rc�|�	|jrtS|jrtS|j�t
StSr�)�
gi_runningr!�gi_suspendedr"�gi_framerr )�	generators r�rArAUs?����������������!����r�c��	t|�stdj|���t|dd�}|�|jj
SiS)Nz{!r} is not a Python generatorr�)rZr�r(r}r�r)r�rs  r�r@r@gsS����y�!��8�?�?�	�J�K�K��I�z�4�0�E����!�!�*�*�*��	r�r
rrrc�|�	|jrtS|jrtS|j�t
StSr�)�
cr_runningr�cr_suspendedr�cr_framerr
)�	coroutines r�r;r;s?����������������!����r�c�>�	t|dd�}|�|jSiS)Nr�)r}r)r�rs  r�r:r:�s,���

�I�z�4�0�E����~�~���	r�rrrrc�|�	|jrtS|jrtS|j�t
StSr�)�
ag_runningr�ag_suspendedr�ag_framerr)�agens r�r3r3�s;��������������}�}�����r�c��	t|�st|�d���t|dd�}|�|jjSiS)Nz  is not a Python async generatorr�)rOr�r}r�r)r�rs  r�r2r2�sM����d���4�(�"B�C�D�D��D�*�d�+�E����}�}�%�%�%��	r�c�b�		t||�}t|t�s|Sy#t$rYywxYwr�)r}r{�_NonUserDefinedCallablesr�)r�method_name�meths   r��"_signature_get_user_defined_methodr��sE�����s�K�(���$� 8�9��K�:������s�"�	.�.c�>�	|j}t|j��}|jxsd}|jxsi}|r||z}	|j
|i|��}d}
|j�D�]K\}}	|j|}
|jtur|j|��;|jtur8||vrd}
|j|
��||<n|j|j���|jt ur|j|
��||<	|
s��|jtur0||jt ��}|||<|j%|���|jt t&fvr|j%|���|jt(us��1|j|j���N|j|j+���S#t$r"}dj|�}	t|	�|�d}~wwxYw#t"$rY��wxYw)Nr�z+partial object {!r} has incorrect argumentsFT)r�r�r�)r�rnr�r��keywords�bind_partialr�r(r��	argumentsrrrHr�replacer�rr`�move_to_endrrr�)�wrapped_sigr��
extra_args�
old_params�
new_params�partial_args�partial_keywords�barr��transform_to_kwonly�
param_namer
�	arg_value�	new_params               r��_signature_get_partialr��s���
�'�'�J��Z�-�-�/�0�J��<�<�%�2�L��'�'�-�2���!�L�0��&�
%�[�
%�
%�|�
H�7G�
H�� ��'�-�-�/�0+��
�E�#	J����Z�0�I��z�z�-�-����z�*���z�z�3�3��!1�1�+/�'�-2�]�]�9�]�-M�J�z�*��N�N�5�:�:�.���z�z�]�*�).���y��)I�
�:�&���z�z�3�3�&�z�2�:�:�
�:�N�	�)2�
�:�&��&�&�z�2����
�|�<�<��&�&�z�2�����.����u�z�z�*�a0+�d���*�*;�*;�*=��>�>��q�&�;�B�B�7�K����o�2�%��&���	��	�s*�G"�;H�"	H
�+H�H
�	H�Hc�*�	t|jj��}|r|djtt
fvrt
d��|dj}|ttfvr|dd}n|turt
d��|j|��S)Nrjzinvalid method signaturerDzinvalid argument typer�)rr�r�rrrr�rrrr�)r�paramsrs   r��_signature_bound_methodr�1s�����3�>�>�(�(�*�
+�F��V�A�Y�^�^��m�'D�D��3�4�4��!�9�>�>�D��&�(8�9�9��������&��4�5�5��;�;�&�;�)�)r�c�x�	t|�xs-t|�xs t|t�xs|tt
fvSr�)rRr_r{r�r|r�r�s r��_signature_is_builtinr�KsE���
�c�N�
"��s�#�
"��s�4�5�
"�

�D�&�>�!�#r�c��	t|�rt|�ryt|dd�}t|dd�}t|dt�}t|dt�}t|dd�}t	|t
j�xrXt	|t�xrF|duxst	|t�xr.|duxst	|t�xrt	|t�xs|duS)NFr:r��__defaults__�__kwdefaults__rw)
r�rSr}�_voidr{rr�r�rr�)r�r�rarrr
s      r�r�r�Ws�����C�=�G�C�L���3�
�D�)�D��3�
�D�)�D��s�N�E�2�H���.��6�J��#�0�$�7�K��t�U�^�^�,�
E��t�S�!�
E�
��
�
<��H�e�!<�
E��4�
�
?�:�j�$�#?�
E���d�
,�
C��t�0C�	Gr�c�P�	|s|dfSd}|jd�D�cgc]}|s�|jd���}}t|�j}t	j|�}g}|j
}d}tj}	tj}
t|�}|D]L}|j|j}
}||	k(r
|
dk(r|dz
}||	k(r|
dk(r|}�7||
�|
dk(s�E|d��Ndj|�j�jdd�}||fScc}w)	NrC�asciirj�,rD�$� r�)r5�encoder�r�r�r�r��OP�
ERRORTOKENr�r|�stringrIr�r�)re�self_parameter�lrKr��token_streamrr��current_parameterr�r��tr|r��clean_signatures               r��"_signature_strip_non_python_syntaxr�ps0�����$����N�(1����(=�C�1��Q�X�X�g�
�C�E�C��U��$�$�I��$�$�Y�/�L�
�D�
�+�+�C���	���B��!�!�J�	
�\��A�����v�v�q�x�x�f���2�:���}�!�Q�&�!��B�J�V�s�]�.�N���F���c�M���H���g�g�d�m�)�)�+�3�3�D�"�=�O��N�*�*��?
Ds
�D#�D#Tc������������	|j�t|�\}}d|zdz}	tj|�}t|tj�stdj����|jd}g��j�d}i�t�dd�}	|	r.tjj|	d�}|r|j�tjj!��d����fd��G�fd�d	tj"���f�������fd
�	}
t%|j&j(�t%|j&j&�z}|t%|j&j*�z
}t-j.t-j0d|�|j&j*�}
�j2�t5|j&j(|
�D]\}}|
||���j6�t5|j&j&|
�D]\}}|
||��|j&j8r)�j:�|
|j&j8���j<�t5|j&j>|j&j@�D]\}}|
||��|j&jBr)�jD�|
|j&jB��|�Xt�dd�}|du}tG|�}|r|s|r�jId�n$�djK�j2��}
|
�d<|�|j�
�S#t$rd}Y��EwxYw)Nzdef fooz: pass�"{!r} builtin has invalid signaturerjrxc�H�|j�td��|jS)Nz'Annotations are not currently supported)rr�rB)r�s r��
parse_namez&_signature_fromstr.<locals>.parse_name�s!���?�?�&��F�G�G��x�x�r�c���	t|��}t|tt
ttttd�f�rtj|�St�#t$r$	t|��}n#t$rt�wxYwY�vwxYwr�)r��	NameErrorr�r{r��int�float�bytesr�r|r��Constant)rhr��module_dict�sys_module_dicts  ��r��
wrap_valuez&_signature_fromstr.<locals>.wrap_value�s����	!���K�(�E��e�c�3��u�d�D��J�G�H��<�<��&�&�����	!�
!��Q��0����
!� � �
!���	!�s)�A�	B�#A0�/B�0B�B�Bc�(��eZdZ�fd�Z�fd�Zd�Zy)�,_signature_fromstr.<locals>.RewriteSymbolicsc�~��g}|}t|tj�rB|j|j�|j
}t|tj�r�Bt|tj�st�|j|j�djt|��}�|�S)Nr2)r{r�rr�r�r��Namer�r%rI�reversed)r>r��arPr�rs     �r��visit_Attributez<_signature_fromstr.<locals>.RewriteSymbolics.visit_Attribute�s�����A��A��Q��
�
�.������� ��G�G���Q��
�
�.��a����*� � �
�H�H�Q�T�T�N��H�H�X�a�[�)�E��e�$�$r�c���t|jtj�s
t	���|j
�Sr�)r{�ctxr��Loadr�r%)r>r�rs  �r��
visit_Namez7_signature_fromstr.<locals>.RewriteSymbolics.visit_Name�s,����d�h�h����1� �l�"��d�g�g�&�&r�c���|j|j�}|j|j�}t|tj
�rt|tj
�st�t|jtj�r,t	j
|j|jz�St|jtj�r,t	j
|j|jz
�St|jtj�r,t	j
|j|jz�St�r�)r��left�rightr{r�r	r��op�Addr��Sub�BitOr)r>r�rrs    r��visit_BinOpz8_signature_fromstr.<locals>.RewriteSymbolics.visit_BinOp�s����:�:�d�i�i�(�D��J�J�t�z�z�*�E��d�C�L�L�1��E�3�<�<�9X� � ��$�'�'�3�7�7�+��|�|�D�J�J����$<�=�=��D�G�G�S�W�W�-��|�|�D�J�J����$<�=�=��D�G�G�S�Y�Y�/��|�|�D�J�J����$<�=�=��r�N)r:rxr4rrr)rs�r��RewriteSymbolicsr�s���
	%�	'�

	r�r c����
|�}|r4|tur,	��j|�}tj|�}�	j
�|�|����y#t$rt	dj���d�wxYw)Nr�rr)�_emptyr�r��literal_evalr�r(r�)�	name_node�default_noderr�r#r r�rr�r�rs    �������r��pz_signature_fromstr.<locals>.p�s�����)�$���L��6�
]�/�1�7�7��E���*�*�<�8��	���)�D�$��E�R�S���
]� �!E�!L�!L�S�!Q�R�X\�\�
]�s�+A�%Br;r��r�)&�_parameter_clsr�r�r�r�r{�Moduler�r(�bodyr�r}r�r�rvrur��NodeTransformerr'r�r	rr��chain�repeat�POSITIONAL_ONLYr\�POSITIONAL_OR_KEYWORD�vararg�VAR_POSITIONAL�KEYWORD_ONLYr��kw_defaultsrT�VAR_KEYWORDrarHr�)rr�rhr�r�r��programr�r�r�r'�total_non_kw_args�required_non_kw_argsrr�r�_self�self_isbound�
self_ismoduler#r r�rr
r�rrrs `                 @@@@@@@@@r��_signature_fromstrr<�s������"�"�I�&H��&K�#�O�^��/�)�H�4�G�����7�#���f�c�j�j�)��=�D�D�S�I�J�J����A��A��J��O�O�E�
�F��K��#�|�T�2�K��������d�3��� �/�/�K��k�k�&�&�(�O����3�.�.��B,1�T�T��A�F�F�.�.�/�#�a�f�f�k�k�2B�B��,�s�1�6�6�?�?�/C�C�����y�/�/��6J�K�Q�V�V�_�_�]�H��$�$�D��q�v�v�1�1�8�<����w�	�$�����*�*�D��q�v�v�{�{�H�5����w�	�$����	�v�v�}�}��'�'��	�!�&�&�-�-����!�!�D��Q�V�V�.�.����0B�0B�C��
��g�	�$����	�v�v�|�|��$�$��	�!�&�&�,�,����!���Z��.���D�(�� ���
��]�n��N�N�1���1�
�%�%�9�+D�+D�%�E�A��J�q�M��z�S�Y�Y�7�7�������s�M;�;N
�	N
c��	t|�stdj|���t|dd�}|st	dj|���t||||�S)Nz%{!r} is not a Python builtin function�__text_signature__z#no signature found for builtin {!r})r�r�r(r}r�r<)rr�r�rhs    r��_signature_from_builtinr?0	sh���!��&��#�#)�6�$�<�1�	1�	��*�D�1�A���>�E�E�d�K�L�L��c�4��N�;�;r�c
��	d}t|�s(t|�rd}ntdj|���t	|dd�}|rt||||�S|j}|j}	|	j}
|	j}|	j}|d|
}
|	j}||
|
|z}t||||��}|j}|j}|rt|�}nd}g}|
|z
}|}|
d|D]H}|rt nt"}|j%|t&�}|j)||||���|s�D|dz}�Jt+|
|d�D]O\}}|rt nt"}|j%|t&�}|j)||||||�	��|s�K|dz}�Q|	j,t.zr<||
|z}|j%|t&�}|j)|||t0���|D]U}t&}|�|j%|t&�}|j%|t&�}|j)|||t2|�	���W|	j,t4zrV|
|z}|	j,t.zr|dz
}||}|j%|t&�}|j)|||t6���|||j%d
t&�|��S)NFTrVr>rprj)rrrD)rrrr��r��__validate_parameters__)rYr�r�r(r}r<r)r�r�r��co_posonlyargcountr�r.r�r�r'rrrvr#r�rHr�rrrrr)rr�r�rqrrrs�is_duck_functionrhr#�	func_code�	pos_count�	arg_names�
posonly_countr3�keyword_only_count�keyword_onlyr
rr�pos_default_countr��non_default_count�posonly_leftr�rr�offsetrrts                             r��_signature_from_functionrO@	s��M����d��%�d�+�#���;�B�B�4�H�I�I���*�D�1�A��!�#�t�Q��?�?��"�"�I��
�
�I��%�%�I��%�%�I��0�0�M��:�I�&�J�"�4�4���Y�y�3E�'E�F�L�!�$���QY�Z�K�� � �H��$�$�J����M�����J�!�$5�5�� �L��-�-�.���#/��5K�� �_�_�T�6�2�
����)�D�Z�)-�/�	0���A��L�
�"�*�->�-?�"@�A�����#/��5K�� �_�_�T�6�2�
����)�D�Z�)-�,4�V�,<�>�	?���A��L�����J�&���%7�7�8�� �_�_�T�6�2�
����)�D�Z�)8�:�	;��6�����!� �n�n�T�6�2�G� �_�_�T�6�2�
����)�D�Z�)6�,3�5�	6�
6����N�*��.�.�����
�*��Q�J�E����� �_�_�T�6�2�
����)�D�Z�)5�7�	8�
�z�!,����6�!B�'7�9�9r�)r�r�rqrrrsc	�@	�	tjt||||||��}t|�st	dj|���t
|tj�r!||j�}|rt|�S|S|r0t|d���}t
|tj�r||�S	|j}|�s|}	t
|ttf�st|�r|�}t
|t�r
t|||�}t
|t�st	dj|	���|S	|j"}
t
|
tj$�r�||
j&�}t)||
d�}t+|j,j/��d}|j0t2j4ur|St+|j,j/��}
|f|
z}|j7|��St9|�st;|�rt=||||||�	�St?|�rtA|||�
�St
|tj�r||j&�}t)||�Sd}t
|tB��r+tEtC|�d�}|�	||�}n^d}tE|d�}tE|d
�}|jFD]+}|�d|jHvr|}n|��d
|jHvs�)|}n|�||�}|��|jFddD] }	|jJ}|s�t|||�cStB|jFvr�|jLtNjLur1|jPtNjPur|jStN�StUdj|���t
|tV�s tEtC|�d�}|�		||�}|�|rt|�S|St
|tjX�rdj|�}tU|��tUdj|���#t $rY��wxYw#t $rY��cwxYw#t $rY��YwxYw#tT$r"}dj|�}tU|�|�d}~wwxYw)N)r�r�rqrrr�rsz{!r} is not a callable objectc�R�t|d�xst|tj�S)N�
__signature__)r~r{rr�r�s r�r�z*_signature_from_callable.<locals>.<lambda>�	s&��'�!�_�*E�+C�#-�a��1A�1A�#B�r�rz1unexpected object {!r} in __signature__ attributer�rjr�)r�rqrrrs)r��__call__rqr�r3z(no signature found for builtin type {!r}zno signature found for {!r}z,no signature found for builtin function {!r}z+callable {!r} is not supported by signature)-r�r�r�r�r�r(r{rr�r�r�rhrRr$r�r<r��_partialmethod�
partialmethodr�r�rr�r�rr#r2r�rYr�rOr�r?r|r�rrur>r�r�rq�
from_callabler�r�r�)r�r�r�rqrrrsr��_get_signature_ofr�o_sigrUr��first_wrapped_param�
sig_paramsr��call�factory_method�new�initr��text_sigrr�s                       r�r�r��	s����"�)�)�*B�6K�/=�(/�'-�'-�)1�
3���C�=��7�>�>�s�C�D�D��#�u�'�'�(� ����-���*�3�/�/��J���S�!C�E���c�5�+�+�,�%�S�)�)�������?��E��c�I�s�#3�4��#���e���#�s�#�(���c�:���c�9�-�� � &��u�
�/�/��J�:��*�*�
��m�Y�%<�%<�=�,�M�,>�,>�?�K�(��m�W�M�C�"'��(>�(>�(E�(E�(G�"H��"K��"�'�'�9�+C�+C�C��
�"�3�>�>�#8�#8�#:�;�
�2�3�j�@�
��{�{�j�{�9�9��#��4�S�9�(���7E�07��QY�[�	[��S�!�&�v�s�6D�F�	F��#�y�(�(�)�'����1��%�k�3�7�7�
�C��#�t��
2�$�s�)�Z�H����#�D�)�C�!�N�4�S�)�D�C�5�c�:�F�D����
���?�y�D�M�M�'A�%(�N���%�*��
�
�*E�%)�N��
��)�'��7���;����C�R�(�
J��J�#�6�6�H� � 2�&�$��I�I�!
J�*�3�;�;�&��L�L�F�O�O�3��K�K�6�>�>�1�!�/�/��7�7�$�B�I�I�#�N�P�P���5�
6�
2�$�s�)�Z�H����
.�'��-��
���*�3�/�/��J��#�u�0�0�1�<�C�C�C�H����o��
�B�I�I�#�N�
O�O��q�
��
��(�
��
��h&�����>�
.�3�:�:�3�?�� ��o�2�-��
.�sN�5Q�7Q�Q"�Q2�	Q�Q�	Q�Q�"	Q/�.Q/�2	R�;R�Rc��eZdZy)r�Nr�r�r�r�r�r�i
s��;r�r�c��eZdZy)r#Nr�r�r�r�r#r#m
s��@r�r#c�,�eZdZdZdZdZdZdZd�Zd�Z	y)	�_ParameterKindzpositional-onlyzpositional or keywordzvariadic positionalr4zvariadic keywordc�x�t|j�}tj||�}||_||_|Sr�)r'�__members__rrq�_value_�description)rrgr��members    r�rqz_ParameterKind.__new__x
s4���C�O�O�$�����S�%�(�����(����
r�c��|jSr�r!r�s r��__str__z_ParameterKind.__str__
s���y�y�r�N)
r:rxr4r/r0r2r3r5rqrjr�r�r�rcrcq
s&��'�O�3��*�N�!�L�$�K��r�rcc��eZdZ	dZeZeZeZ	e
ZeZ
eZeed�d�Zd�Zd�Zed��Zed��Zed��Zed	��Zeeeed
�d�Zd�Zd
�Zd�Zd�Zy)r#)�_name�_kind�_default�_annotationr"c�d�	t|�|_|turJ|jtt
fvr2d}|j
|jj�}t|��||_||_	|turtd��t|t�s/dj
t|�j�}t|��|ddk(rw|ddj�rd|jt k7r2d	}|j
|jj�}t|��t"|_d
j
|dd�}t%|�xr|jt"u}|s|j'�stdj
|���||_y#t$rtd|�d���wxYw)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 {}rjr2rDzLimplicit arguments must be passed as positional or keyword arguments, not {}z
implicit{}z"{!r} is not a valid parameter name)rcrmr�r#rrr(rgrnror{r�r|r:r��isdigitrrrk�isidentifierrl)r>r�rrrr��
is_keywords       r�r�zParameter.__init__�
s���	N�'��-�D�J��&� ��z�z�o�|�<�<�@���j�j����!7�!7�8�� ��o�%���
�%����6�>��I�J�J��$��$�0�7�7��T�
�8K�8K�L�C��C�.� ���7�c�>�d�1�2�h�.�.�0�
�z�z�3�3�>���j�j����!7�!7�8�� ��o�%�)�D�J��&�&�t�A�B�x�0�D��t�_�K����;K�)K�
��T�.�.�0��A�H�H��N�O�O���
��M�	N��v�d�X�-K�L�M�M�	N�s�F�F/c�x�t|�|j|jf|j|jd�fS)N�rnro)r|rlrmrnror�s r��
__reduce__zParameter.__reduce__�
s8���T�
����T�Z�Z�(�!�]�]� $� 0� 0�2�3�	3r�c�,�|d|_|d|_y)Nrnroru�r>�states  r��__setstate__zParameter.__setstate__�
s���j�)��
� ��/��r�c��|jSr�)rlr�s r�r�zParameter.name�
����z�z�r�c��|jSr�)rnr�s r�rzParameter.default�
s���}�}�r�c��|jSr�)ror�s r�rzParameter.annotation�
������r�c��|jSr�)rmr�s r�rzParameter.kind�
r|r�)r�rrrc���	|tur|j}|tur|j}|tur|j}|tur|j}t|�||||��S)Nr")r�rlrmrornr|)r>r�rrrs     r�r�zParameter.replace�
s`��9��5�=��:�:�D��5�=��:�:�D�����)�)�J��e���m�m�G��t�D�z�$��g�*�M�Mr�c��|j}|j}|jtur%dj	|t|j��}|jtur]|jtur&dj	|t|j��}n%dj	|t|j��}|tk(rd|z}|S|tk(rd|z}|S)Nz{}: {}z{} = {}z{}={}r r#)
rrlror#r(r+rnrrr)r>r�	formatteds   r�rjzParameter.__str__s����y�y���J�J�	����6�)� ���	�'7��8H�8H�'I�K�I��=�=��&����v�-�%�,�,�Y��T�]�]�8K�L�	�#�N�N�9�d�4�=�=�6I�J�	��?�"��i��I����\�
!��y�(�I��r�c�N�dj|jj|�S)Nz	<{} "{}">�r(r<r:r�s r�rwzParameter.__repr__s���!�!�$�.�.�"9�"9�4�@�@r�c�p�t|j|j|j|jf�Sr�)�hashrlrmrornr�s r��__hash__zParameter.__hash__s(���T�Z�Z����T�-=�-=�t�}�}�M�N�Nr�c��||uryt|t�stS|j|jk(xrO|j|jk(xr4|j
|j
k(xr|j|jk(S�NT)r{r#�NotImplementedrlrmrnro�r>�others  r��__eq__zParameter.__eq__sv���5�=���%��+�!�!��
�
�e�k�k�)�6��
�
�e�k�k�)�6��
�
����/�6�� � �E�$5�$5�5�	7r�N)r:rxr4r8rr/rr0rr2rr3rr5r#r�r�rvrzrr�rrrr�r�rjrwr�r�r�r�r�r#r#�
s����*>�I�.�O�4��-�N�+�L�*�K��E�.4��)�V3�0���������� �� �����$�%� �%�N�$�,A�O�7r�r#c�f�eZdZ	dZd�Zed��Zed��Zed��Zd�Z	d�Z
d�Zd	�Zd
�Z
y)r
)r��
_signature�__weakref__c� �||_||_yr�)r�r�)r>rer�s   r�r�zBoundArguments.__init__:s��"���#��r�c��|jSr�)r�r�s r�rezBoundArguments.signature>s�����r�c�|�g}|jjj�D]o\}}|jtt
fvrt|�S	|j|}|jtk(r|j|��_|j|��qt|�S#t$rYt|�SwxYwr�)r�r�r�rrrr�r�extendr�r`r)r>r�r�r
rBs     r�r�zBoundArguments.argsBs�����!%���!;�!;�!A�!A�!C�	%��J���z�z�l�M�:�:�� �T�{��
%��n�n�Z�0���:�:��0��K�K��$��K�K��$�!	%�$�T�{����
���T�{��
�s�B$�$	B;�:B;c�Z�i}d}|jjj�D]p\}}|s,|jtt
fvrd}n||jvrd}�4|s�7	|j|}|jtk(r|j|��l|||<�r|S#t$rY��wxYw)NFT)	r�r�r�rrrr��updater`)r>�kwargs�kwargs_startedr�r
rBs      r�r�zBoundArguments.kwargsYs�������!%���!;�!;�!A�!A�!C�	-��J��!��:�:�,�
�!>�>�%)�N�!����7�)-�� �!��

-��n�n�Z�0���:�:��-��M�M�#�&�*-�F�:�&�-	-�0�
���
��
�s�!B�	B*�)B*c��	|j}g}|jjj�D]\}}	|j	|||f��t|�|_y#t
$ra|jtur
|j}n,|jturd}n|jturi}nY��|j	||f�Y��wxYw)Nr�)r�r�r�r�r�r`rr#rrrr�)r>r��
new_argumentsr�r
�vals      r��apply_defaultszBoundArguments.apply_defaultsws���	��N�N�	��
��?�?�5�5�;�;�=�	2�K�D�%�

2��$�$�d�I�d�O�%<�=�	2��m�,�����
2��=�=��.��-�-�C��Z�Z�?�2��C��Z�Z�<�/��C���$�$�d�C�[�1�
2�s�A$�$AC�8C�
Cc��||uryt|t�stS|j|jk(xr|j|jk(Sr�)r{r
r�rer�r�s  r�r�zBoundArguments.__eq__�sF���5�=���%��0�!�!����%�/�/�1�2����%�/�/�1�	3r�c�,�|d|_|d|_y)Nr�r��r�r�rxs  r�rzzBoundArguments.__setstate__�s����-����{�+��r�c�4�|j|jd�S)Nr�r�r�s r��__getstate__zBoundArguments.__getstate__�s��"�o�o�D�N�N�K�Kr�c��g}|jj�D]&\}}|jdj||���(dj|jj
dj
|��S)Nz{}={!r}z	<{} ({})>r,)r�r�r�r(r<r:rI)r>r�rBr�s    r�rwzBoundArguments.__repr__�se�����.�.�.�.�0�	6�J�C���K�K�	�(�(��e�4�5�	6��!�!�$�.�.�"9�"9�4�9�9�T�?�K�Kr�N)r:rxr4r8r�rrer�r�r�r�rzr�rwr�r�r�r
r
'sj��� ;�I�$���������,����:-�83�,�L�Lr�r
c��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�Zy)r$)�_return_annotation�_parametersNTrAc��	|�t�}n�|r�t�}t}d}|D]�}|j}|j}	||kr3d}
|
j	|j
|j
�}
t
|
��||kDr|}|ttfvr#|jtur|rd}
t
|
��d}|	|vrdj	|	�}
t
|
��|||	<��ntd�|D��}tj|�|_||_
y)NFz7wrong parameter order: {} parameter before {} parameterz-non-default argument follows default argumentTzduplicate parameter name: {!r}c3�8K�|]}|j|f���y�wr�r!�rr
s  r�rz%Signature.__init__.<locals>.<genexpr>�s����$Q�U�e�j�j�%�%8�$Q�s�)rnrrr�r(rgr�rrr#r�MappingProxyTyper�r�)r>r�r�rBr��top_kind�seen_defaultr
rr�r�s           r�r�zSignature.__init__�s!��	��� �]�F�&�$���+��$��'�)�E� �:�:�D� �:�:�D��h��(��"�j�j��)=�)=�)-�)9�)9�;��(��o�-����#'��� 0�2H�I�I� �=�=�F�2�+�'1��&0��o� 5�,0�L��v�~�>�E�E�d�K��(��o�-�#(�F�4�L�?)�B%�$Q�j�$Q�Q�� �1�1�&�9���"3��r�F��follow_wrappedrqrrrsc�&�	t||||||��S)N)r�r�rqrrrs)r�)rr�r�rqrrrss      r�rVzSignature.from_callable�s&��	B�'��C�>L�07��QY�[�	[r�c��|jSr�)r�r�s r�r�zSignature.parametersrr�c��|jSr��r�r�s r�r�zSignature.return_annotations���&�&�&r�)r�r�c��	|tur|jj�}|tur|j}t	|�||��S)Nr()r�r�r�r�r|)r>r�r�s   r�r�zSignature.replacesO��	�
������/�/�1�J���%� $� 7� 7���t�D�z�*�,=�?�	?r�c��td�|jj�D��}|jj�D�cic]"}|jtk(r
|j
|��$}}|||jfScc}w)Nc3�FK�|]}|jtk7r|���y�wr�)rrr�s  r�rz(Signature._hash_basis.<locals>.<genexpr>s#����=�� %�
�
�m� ;��=�s�!)rr�r�rrr�r�)r>r�r
�
kwo_paramss    r��_hash_basiszSignature._hash_basiss����=�$�/�/�*@�*@�*B�=�=��6:�_�_�5K�5K�5M�H�E�+0�:�:��+F��j�j�%�'�H�
�H��z�4�#9�#9�9�9��Hs�'A?c�x�|j�\}}}t|j��}t|||f�Sr�)r��	frozensetr�r�)r>r�r�r�s    r�r�zSignature.__hash__#s>��04�0@�0@�0B�-��
�-��z�0�0�2�3�
��V�Z�):�;�<�<r�c�z�||uryt|t�stS|j�|j�k(Sr�)r{r$r�r�r�s  r�r�zSignature.__eq__(s9���5�=���%��+�!�!����!�U�%6�%6�%8�8�8r��r�c	���	i}t|jj��}d}t|�}		t|�}	t|�}	|	jt
tfvrtd�d�|	jtk(r-|g}
|
j|�t|
�||	j<nW|	j|vr9|	jtk7r&tdj|	j���d�|||	j<��d}
t#j$||�D]�}	|	jt
k(r|	}
�|	jtk(r�-|	j}	|j'|�}|	jtk(r%tdj|	j����|||<��|r?|
�|||
j<n-tdjtt|������|j+||�S#t$r
td�d�wxYw#t$r�	t|�}	|	jtk(rY��9|	j|vrC|	jtk(r*d}|j|	j��}t|�d�|	f}Y���|	jt
k(s|	jt ur|	f}Y���|r|	f}Y���|	jtk(rd}nd}d}|j|	j|�	�}t|�d�#t$rYY��
wxYwwxYw#t($rG|sA|	jtk7r.|	jt urtd
j|���d�Y��LwxYw)Nr�ztoo many positional argumentsz$multiple values for argument {arg!r})rBzA{arg!r} parameter is positional only, but was passed as a keywordz
 keyword-onlyr�z-missing a required{argtype} argument: {arg!r})rB�argtypez$missing a required argument: {arg!r}z*got an unexpected keyword argument {arg!r})r�r�r�r�rrrr�rr�rr�rr(�
StopIterationrr#r�r-rHr`�_bound_arguments_cls)r>r�r�r�r�r��
parameters_ex�arg_vals�arg_valr
r�r�r��kwargs_paramr�s               r��_bindzSignature._bind/s���1��	��$�/�/�0�0�2�3�
��
���:���G
4��x�.��Z4� ��,�E��z�z�l�M�%B�B�(�;�=�BF�G��z�z�_�4�#*����
�
�h�/�05�f�
�	�%�*�*�-���z�z�V�+��
�
�>N�0N�'�B�I�I�$)�J�J�J�0�1�6:�;�-4�I�e�j�j�)�U�\���_�_�]�J�?�"	0�E��z�z�\�)�$����z�z�_�,�����J�
0� �*�*�Z�0���:�:�!1�1�$�%B�$*�F�u�z�z�F�$:�<�<�)0�	�*�%�E"	0�H��'�/5�	�,�+�+�,��@�G�G� ��f��.�H�0�1�1��(�(��y�9�9��S%�O�#�$C�D�$�N�O��]!�)
;�';� ��,�E��z�z�_�4�����v�-� �:�:�)9�9�#@�C�"%�*�*����*�"<�C�"+�C�.�d�:�).��
���*�*��4�05�
�
�V�0K�*/��
��#�-2�H�M�!�$�z�z�]�:�*9��*,��"Q�C�"%�*�*����W�*�"M�C�"+�C�.�d�:��K%�����	)
;��r�
F�
 �E�J�J�/�$A�49�M�M�V�4K�#�$J�$*�F�z�F�$:�<�AE�F��
F�sh�H�G=�L�=H�	L� L�+L�AL�(L�=L�AL�	L�L�L�L�AM-�,M-c�(�	|j||�Sr��r��r>r�r�s   r��bindzSignature.bind�s��	��z�z�$��'�'r�c�,�	|j||d��S)NTr�r�r�s   r�r�zSignature.bind_partial�s��	��z�z�$���z�5�5r�c�z�t|�t|jj��fd|jifS�Nr�)r|rr�r�r�r�s r�rvzSignature.__reduce__�s=���T�
��t�'�'�.�.�0�1�3�%�t�'>�'>�?�A�	Ar�c��|d|_yr�r�rxs  r�rzzSignature.__setstate__�s��"'�(<�"=��r�c�N�dj|jj|�S)Nz<{} {}>r�r�s r�rwzSignature.__repr__�s�������� 7� 7��>�>r�c��g}d}d}|jj�D]u}t|�}|j}|tk(rd}n|r|jd�d}|tk(rd}n|tk(r|r|jd�d}|j|��w|r|jd�djdj|��}|jtur)t|j�}|dj|�z
}|S)NFT�/r z({})r,z -> {})
r�r�r�rrr�rrr(rIr�r#r+)	r>r�render_pos_only_separator�render_kw_only_separatorr
r�r�rendered�annos	         r�rjzSignature.__str__�s����$)�!�#'� ��_�_�+�+�-�	%�E��E�
�I��:�:�D��'�'�,0�)�*��
�
�c�"�,1�)���&�,1�(���&�+C��
�
�c�"�,1�(��M�M�)�$�5	%�8%�
�M�M�#���=�=����6�!2�3���!�!��/�#�D�$:�$:�;�D������-�-�H��r�r�)r:rxr4r8r#r)r
r�r#r�r�rrVrr�r�r�r�r�r�r�r�r�r�rvrzrwrjr�r�r�r$r$�s����,6�I��N�)���E�24�V�)-�24�h�%)�4��u�[��[�� �� ��'��'�%*�U�
?�:�=�
9�.3�E:�N(�6�A�
>�?�+r�r$r�c�8�	tj|||||��S)Nr�)r$rV)r�r�rqrrrss     r�rere�s*��9��"�"�3�~�+2�6�H�#�V�Vr�c��eZdZdZdZdZdZdezZdezZdezZ	dezZ
d	ezZeezZeZ
eezZeZeezezZeezZeezezZeezZd	Zd
Zy)rrjrD���� �@��iN)r:rxr4�SIMPLE�WRITABLE�FORMAT�ND�STRIDES�C_CONTIGUOUS�F_CONTIGUOUS�ANY_CONTIGUOUS�INDIRECT�CONTIG�	CONTIG_RO�STRIDED�
STRIDED_RO�RECORDS�
RECORDS_RO�FULL�FULL_RO�READ�WRITEr�r�r�rr
s���
�F��H�
�F�	�B��R�i�G��'�>�L��'�>�L��G�^�N��w��H�
�(�]�F��I��� �G��J��� �6�)�G��6�!�J��h���'�D����G��D��Er�rc�"�	ddl}ddl}|j�}|jdd��|jdddd�	�|j	�}|j
}|j
d
�\}}}	|j|�x}}	|r&|j!d�}	}|D]}
t#||
�}�	jtj$vr0tdtj��tjd�|j&r�tdj|��tdjt)|	���tdj|	j*��|	ur^tdjt-|	j.���t1|	d�rNtdj|	j2��n)	t5|�\}}tdj|��td�ytt7��y#t$ra}
dj|t|
�j|
�}t|tj��tjd
�Yd}
~
���d}
~
wwxYw#t$rY��wxYw)Nrjr�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 {} ({}: {}))r�r�r2z#Can't get info for builtin modules.rDz
Target: {}z
Origin: {}z
Cached: {}z
Loader: {}�__path__zSubmodule search path: {}zLine: {}rC)�argparser\�ArgumentParser�add_argument�
parse_argsr��	partition�
import_moduler
r(r|r:�printr��stderr�exitr5r}�builtin_module_names�detailsrK�
__cached__rrlr~r�r*rJ)r�r\�parserr��target�mod_name�	has_attrs�attrsr�r�r�r��parts�part�__r�s                r��_mainr

s2��@���
�
$�
$�
&�F�
����9��:�����k�,�
H��J�����D�
�[�[�F�!'�!1�!1�#�!6��H�i���.�y�.�.�x�8�8��f�����C� �����	%�D��#�t�$�C�	%����#�2�2�2�
�3�#�*�*�E�������|�|�
�l�!�!�&�)�*�
�l�!�!�-��"7�8�9�
�l�!�!�&�"3�"3�4�5��&�=��,�%�%�d�6�+<�+<�&=�>�?��v�z�*��1�8�8����I�J�
1�'��_�
��F��j�'�'��/�0�
�d��
�i��n���G��,�3�3�H�48��I�4F�4F�47�9��	�c��
�
�#����������8�
��
�s+�4H�J�	I?�AI:�:I?�	J�
JrRr�)F)rD)r�)T)TNNF)��
__author__�__all__r�r�r��collections.abcr��enum�importlib.machineryr\r�rurYr�r�r�r�rr�r~�keywordrk�operatorrlrmrnrq�mod_dict�COMPILER_FLAG_NAMESr�r�r�r%r.rarSr^r_rWr~r]r\rYr�r[r�r�r�rdrVrPrOrZrUrQrcrXrTrRr`rbrNr�rDrErr'rHrhrMr6r@r<r(r=rGrKr/rr�rFr
r�NodeVisitorr�r*r9rr	r5rLrJrir7rr0rr?rr1r+r,r�r-r:rFr6rr8rjr&r�r}r>rC�_fieldsr�rrIrBr)rfrgr�r|rur�r�r�r�r��	lru_cacher�r�r4r r!r"rrAr@r
rrrr;r:rrrrr3r2�WrapperDescriptorTyper�rr�r�r�r�r�r�r�r�r<r?rOr�r�r#�IntEnumrcr/rr0rr2rr3rr5rr#r
r$re�IntFlagrr
r:r�r�r��<module>rs5���@9�
�i��X�
�
������	�	�
��������/��9���#�#�)�)�+��D�A�q��H�U�Q�Y����q�(���%)���p�h0�$�0�A�(?��5�(�)�>���5�(�)�>��2�	,�-��x��L��I�3�8�3�"3�;�3�/�.�29�7�(��0(�T3�
:�
�{�$E�F�	�p�h��!�H0�
�<�|�& �:,�8
��28��
���,�^	�)�	��3�?�?��>B0�H+%�Z"��!�4�4�l$�&0�*��+�6
�{�$:�;�	�8�6��M�O��Z<�z�Y� >�
?��9���"�"9� 8� ?�	(�.7� D�*:�x��(L�M��14�j��&S�
T�
�
-�
�
-�7�O�)A�V�
��j�9�3D�3D�&D�
E�
�
@�
�
@���C�5�'�
�H�	����y�)�1�1�� �M�M�*�5�=�=��4�������	��	�@�'0�/�h�����
�
�
��$�&����!�����$
�����!�����$�."�7�7�!�3�3�!�;�;�!�5�5�7��
� I?�X*�4	#�G�2/+�dK8�\
<� 8<�AF�\9�@48�,0�%)�$(�&+�GP�T<�<�A�A��T�\�\��"*�9�9��)�?�?��)�8�8��)�6�6�
�)�5�5��[7�[7�|L�L�DQ�Q�h
&*�4��u�V��$�,�,��,7�t�z��	�G�r�