403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.216.202
Web Server : Microsoft-IIS/10.0
System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64
User : IUSR ( 0)
PHP Version : 8.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /Python313/Lib/test/test_inspect/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /Python313/Lib/test/test_inspect/__pycache__/test_inspect.cpython-313.pyc
�

��i��"	�SSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSK	r	SSK
r
SSKrSSKrSSK
Jr SSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKJr SSKrSSKrSSKrSSKrSSKrSSK J!r! SSK#J$r$J%r%J&r& SSK#J'r'J(r( SSK)J*r*J+r+ SSK,J-r-J.r. SS	K/J0r0J1r1J2r2 SS
K#J3r3J4r4 SSK5J6r6 SSK7J8r9 SS
K7J:r; SSK7J<r< SSK7J=r= SSK7J>r> SSK7J?r? \9R�rA\AR�S5(a\ASSrA\"\A5rASrC\9R�"5rESrFSrGSrHSR�5rJ"SS\R�5rLSrMSrNSrO\R�S5rQSrRS rSS!rTS"rUS#rVS$rWS%rXS&rY"S'S(5rZ"S)S*\L5r["S+S,\L5r\"S-S.\R�5r]"S/S05r^"S1S2\]5r_"S3S4\R�5r`"S5S6\R�5ra"S7S8\]5rb"S9S:\]5rc"S;S<\]5rd"S=S>\]5re"S?S@\]5rf"SASB\]5rg"SCSD\]5rh"SESF\i5rj"SGSH\i5rkSIrl"SJSK\R�5rm"SLSM\R�5rn"SNSO\R�5ro"SPSQ\R�5rp\i"5rq"SRSS\R�5rr"STSU\R�5rs"SVSW\s5rt"SXSY\t5ru"SZS[\R�5rv"S\S]\R�5rw"S^S_\R�5rx\6R�"5"S`Sa\R�55r{"SbSc\R�5r}"SdSe\R�5r"SfSg\R�5r�"ShSi\R�5r�"SjSk\R�5r�"SlSm\R�5r�"SnSo\R�5r�"SpSq\R�5r�"SrSs5r�"StSu\R�5r�"SvSw\R�5r�"SxSy\R�5r�"SzS{\R�5r�\�S|:Xa\GR"5 gg!\"a Sr!GN	f=f)}�N��normcase)�Unpack)�ThreadPoolExecutor)�cpython_only�
import_helper�suppress_immortalization)�MISSING_C_DOCSTRINGS�	ALWAYS_EQ)�
DirsOnSysPath�ready_to_import)�TESTFN�temp_cwd)�assert_python_ok�assert_python_failure�kill_python)�has_subprocess_support�SuppressCrashReport)�support)�inspect_fodder)�inspect_fodder2)�inspect_stock_annotations)�inspect_stringized_annotations)� inspect_stringized_annotations_2)�%inspect_stringized_annotations_pep695)�c�o���c� �[U54U-$�Nr)�filename�argss  �3C:\Python313\\Lib\test\test_inspect\test_inspect.py�reviser$Hs���X�� �4�'�'�c�\�[R(a[R"S5 ggr )r�has_socket_support�asyncio�set_event_loop_policy�r%r#�tearDownModuler+Ns���!�!��%�%�d�+�"r%c#�*# �/SQn[SS[U5-5Hon/nSn[[U55H$nXU--(dMURX5 M& SSRU5-S-n0n[	XVU5 USv� Mq g7f)	z�
Yields a whole bunch of functions with only keyword-only parameters,
where those parameters are always in lexicographically sorted order.
)�a�barr�delta�ephraim�magical�yoyo�z��zdef foo(*, z, z): pass�fooN)�range�len�append�join�exec)�
parameters�i�p�bit�j�fn_text�symbolss       r#�5signatures_with_lexicographic_keyword_only_parametersrCSs����
O�J�
�1�a��Z��(�
)�������s�:��'�A��1�H�~�~������'�(� �$�)�)�A�,�.��:�����W�w�'��e�n��*�s
�AB�ABc��gr r*)�throw�out�the�baby�with_�the_�	bathwaters       r#�#unsorted_keyword_only_parameters_fnrLes��r%z'throw out the baby with_ the_ bathwaterc�z�\rSrSr\"\R\R\R\R\R\R\R\R\R\R\R \R"\R$\R&\R(/5rSrSrSrg)�
IsTestBase�kc	��[U5nURU"U5UR<SU<S35 UR[	U/5-
H�nU[
R:Xd(U[
R:XdU[
R:XaU[
R:XaMUURU"U5SUR<SU<S35 M� g)N�(�)znot )�eval�
assertTrue�__name__�
predicates�set�inspect�isgeneratorfunction�isasyncgenfunction�iscoroutinefunction�
isfunction�assertFalse)�self�	predicate�exp�obj�others     r#�istest�IsTestBase.istestts����3�i�����	�#��I�4F�4F��(L�M��_�_�s�I�;�'7�7�E��W�8�8�8��G�6�6�6��G�7�7�7���*�*�*�����U�3�Z�����)M�N�
8r%c�8�[R"U[SS9 g)N)�
modulesbyfile)�not_exported)r�check__all__rX�r^s r#�test__all__�IsTestBase.test__all__�s�����T�7�9K�Lr%r*N)rU�
__module__�__qualname__�__firstlineno__rWrX�	isbuiltin�isclass�iscode�isframer\�ismethod�ismodule�istraceback�isgeneratorrY�iscoroutiner[�
isasyncgenrZ�ismethodwrapperrVrcrj�__static_attributes__r*r%r#rNrNks����g�'�'����'�.�.��o�o�w�'9�'9�7�;K�;K��&�&��(;�(;��)�)�7�+F�+F��)�)�7�+F�+F��(�(�'�*D�*D��-�-�
/�0�J�
O�Mr%rNc#�8# �[S5HnUv� M	 g7f�Nr5�r7�r^r=s  r#�generator_function_exampler�s���
�1�X�������c�H# �[S5Shv�NnU7v� MN
g7fr|r}r~s  r#� async_generator_function_exampler��s�����8��a����8�s�"� �� �"� �"c��# �g7f�N�spamr*ris r#�coroutine_function_exampler��s������c#�# �Sv� g7fr�r*ris r#�gen_coroutine_function_exampler��s���	����c��gr r*r*r%r#�meth_noargsr�����4r%c��gr r*��objects r#�meth_or�����tr%c��gr r*ris r#�meth_self_noargsr�����tr%c��gr r*)r^r�s  r#�meth_self_or�����$r%c��gr r*��types r#�meth_type_noargsr��r�r%c��gr r*)r�r�s  r#�meth_type_or��r�r%c�F^�[R"T5U4Sj5nU$)Nc�>�T"U0UD6$r r*�r"�kwargs�funcs  �r#�wrapped�!identity_wrapper.<locals>.wrapped�s����T�$�V�$�$r%��	functools�wraps)r�r�s` r#�identity_wrapperr��s#����_�_�T��%��%��Nr%�)�r"..�var_positional�r�..�var_keyword.c� �\rSrSrSrSrSrg)�custom_descriptor�c��Xlgr �r��r^r�s  r#�__init__�custom_descriptor.__init__�s���	r%c�8�URRX5$r )r��__get__�r^�instance�owners   r#r��custom_descriptor.__get__�s���y�y� � ��1�1r%r�N)rUrlrmrnr�r�rzr*r%r#r�r��s���2r%r�c�J�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
g)
�TestPredicates�c	�"	�UR[RS5 UR[RS5 UR[RS5 SS- SqUR[R S
5 UR[R S5 UR[R"S5 UR[R"S
5 UR[R$S5 UR[R&S5 UR[R(S5 UR[R*S5 UR[R,S5 UR[R.S5 UR[R0S5 [2R4"5 [2R6"S5 UR[R8S5 UR[R:S5 SSS5 [[S5(a!UR[R<S5 O=UR[R<"[>R@RB55 UR[RDS5 UR[RDS5 UR[RDS5 UR[RD"[55 UR[RD"[F55 UR[RD"[SS0555 g![a�nUR
qUR[RS5 UR[RS5 [[S5(a&UR[RS	5 SnAGN�UR[R"[[R5R55 SnAGN	SnAff=f!Sqf=f!,(df   GNQ=f)Nzsys.exitz	[].appendzmod.spam.__code__r4rztb.tb_frame�tb�GetSetDescriptorTypeztype(tb.tb_frame).f_localszmod.spamzmod.StupidGit.abusez	git.arguezmod.custom_method�modzint.__add__z'collections.defaultdict.default_factoryz(x for x in range(2))rz#async_generator_function_example(1)r��ignorezcoroutine_function_example(1)r��MemberDescriptorTypezdatetime.timedelta.dayszobject().__str__zobject().__eq__zobject().__repr__�AnyClassr*)$rcrXrorq�	Exception�
__traceback__r�rrru�hasattr�types�isgetsetdescriptorr]r��tb_frame�f_localsr\rsrt�ismethoddescriptor�isdatadescriptorrvrYrxrZ�warnings�catch_warnings�simplefilterrwr[�ismemberdescriptor�datetime�	timedelta�daysry�int�r^�es  r#�test_excluding_predicates�(TestPredicates.test_excluding_predicates�s�����G�%�%�z�2����G�%�%�{�3����G�N�N�$7�8�
	�
�a�C��B����G�&�&�
�3����G�&�&�(=�>����G�$�$�k�2����G�$�$�&9�:����G�$�$�e�,����G�.�.�
�>����G�,�,�.W�X����G�'�'�)@�A����G�/�/�1M�N����G�&�&�9�	;����G�.�.�6�	8��
$�
$�
&��!�!�(�+��K�K��+�+�-L�M��K�K��3�3�5Q�R�'�
�5�0�1�1��K�K��2�2�4M�N����W�7�7��8J�8J�8O�8O�P�Q����G�+�+�-?�@����G�+�+�->�?����G�+�+�-@�A�����0�0��6�7�����0�0��5�6�����0�0��j�"�b�1I�J�K��Q�	Y����B��K�K�����7��K�K��+�+�T�2��u�4�5�5����G�6�6�8�:�:�� � ��!;�!;�D����<M�<V�<V�!W�X�X��	Y���B��'�
&�sE�"N�AQ?�
Q5�BQ0�Q8�$AQ0�*Q8�0Q5�5Q8�8Q<�?
Rc	�,^�[S5n[S5n[S5n"SS5nU"5nURnURnUR
nURn	URn
UR
nUR
[R"[55 UR
[R"[R"[R"[5555 UR
[R"U55 UR
[R"U
55 UR
[R"[55 UR
[R"U55 UR[R"[55 UR[R"[R"[R"[5555 UR[R"U55 UR[R"U
55 UR[R"U55 Sm[RU4Sj5nUR[R"U55 UR[R"[R"U4Sj555 "SS5n
UR
[R"U
55 UR
[R"U
"555 UR[R"[R"U
"5555 "S	S
5nUR
[R"U55 UR
[R"U"555 UR[R"[R"U"5555 "SS5nUR[R"UR 55 UR[R"UR"55 UR
[R"[$R&R)555 UR[R"[$R&R+555 UR[R"[55 UR[R"[R"[R"[5555 UR[R"U55 UR[R"U55 UR[R"U55 UR
[R"[$R&R)555 UR
[R"[$R&R+555 UR
[R"[55 UR
[R"[R"[R"[5555 UR
[R"U55 UR
[R"U55 UR
[R"U55 UR
[R,"[$R&R)555 UR
[R,"[$R&R+555 UR
[R,"[55 UR[R,"[55 UR[R,"[R"[R"[5555 UR[R,"U55 UR[R,"U	55 UR[R."U55 UR15 UR15 g)
Nr4c��\rSrSr\R
"\5r\R
"\5r	\R
"\
5rSrg)�0TestPredicates.test_iscoroutine.<locals>.PMClass��r*N)
rUrlrmrnr��
partialmethodr��%async_generator_partialmethod_exampler��coroutine_partialmethod_exampler��#gen_coroutine_partialmethod_examplerzr*r%r#�PMClassr��s>��4=�4K�4K�0�52�1�.7�.E�.E�*�/,�+�2;�2I�2I�.�30�/r%r�c��# �g7fr r*r*r%r#�_fn3�-TestPredicates.test_iscoroutine.<locals>._fn3s����r�c�>�T"5$r r*�r�s�r#�fn3�,TestPredicates.test_iscoroutine.<locals>.fn3s
����6�Mr%c�>�T"5$r r*r�s�r#�<lambda>�1TestPredicates.test_iscoroutine.<locals>.<lambda>s���d�fr%c��\rSrSrSrSrg)�+TestPredicates.test_iscoroutine.<locals>.Cli"c��# �g7fr r*ris r#�__call__�4TestPredicates.test_iscoroutine.<locals>.Cl.__call__#s����r�r*N�rUrlrmrnr�rzr*r%r#�Clr�"���
r%r�c�8�\rSrSr\R
S5rSrg)�,TestPredicates.test_iscoroutine.<locals>.Cl2i.c��gr r*ris r#r��5TestPredicates.test_iscoroutine.<locals>.Cl2.__call__/���r%r*N)rUrlrmrnrX�markcoroutinefunctionr�rzr*r%r#�Cl2r�.s��
�
*�
*�
�+�
r%r�c�p�\rSrSr\R
\S55r\R
\S55r	Sr
g)�,TestPredicates.test_iscoroutine.<locals>.Cl3�;c��gr r*��clss r#�do_something_classy�@TestPredicates.test_iscoroutine.<locals>.Cl3.do_something_classy<���r%c��gr r*r*r%r#�do_something_static�@TestPredicates.test_iscoroutine.<locals>.Cl3.do_something_staticArr%r*N)rUrlrmrnrXr��classmethodr�staticmethodrrzr*r%r#�Cl3r�;sD��
�
*�
*�
�
��+�
��
*�
*�
�
��+�
r%r)r�r�r�r�r�r�r]rXr[r��partialrwrTrYrvr�rr�unittest�mock�Mock�	AsyncMockrZrx�close)r^�async_gen_coro�gen_coro�coror��pm_instance�async_gen_coro_pmi�gen_coro_pmi�coro_pmi�async_gen_coro_pmc�gen_coro_pmc�coro_pmcr�r�r�rr�s                @r#�test_iscoroutine�TestPredicates.test_iscoroutine�sO���9�!�<��1�!�4��)�!�,��	0�	0��i��(�N�N��"�F�F���>�>��%�J�J���B�B���:�:������'�'�(F�G�	I�����'�'��!�!�)�"3�"3�2�#4�5�
6�	7�	
����4�4�\�B�C�����4�4�\�B�C�����4�4�W�=�>�����,�,�X�6�7�����'�'�(F�G�	I�����'�'��!�!�)�"3�"3�2�#4�5�
6�	7�	
����3�3�L�A�B�����3�3�L�A�B�����+�+�H�5�6�	�
�	&�	&�	�
'�	�	
����3�3�C�8�9�����'�'��-�-�n�=�
�	
�	�	�	
����4�4�R�8�9�����4�4�R�T�:�;�����3�3��)�)�"�$�/�
�	�	�	�
	
����4�4�S�9�:�����4�4�S�U�;�<�����3�3��)�)�#�%�0�
�	�		�		�	
����3�3�C�4K�4K�L�M�����3�3�C�4K�4K�L�M�����'�'��
�
�(:�(:�(<�=�	?�����'�'��
�
�(?�(?�(A�B�	D�����'�'�(B�C�	E�����'�'��!�!�)�"3�"3�.�#0�1�
2�	3�	
����3�3�H�=�>�����3�3�H�=�>�����+�+�D�1�2�����'�'��
�
�(:�(:�(<�=�	?�����'�'��
�
�(?�(?�(A�B�	D�����'�'�(B�C�	E�����'�'��!�!�)�"3�"3�.�#0�1�
2�	3�	
����4�4�X�>�?�����4�4�X�>�?�����,�,�T�2�3�����&�&�x�}�}�'9�'9�';�<�	>�����&�&�x�}�}�'>�'>�'@�A�	C�����&�&�'A�B�	D�����&�&�'G�H�	J�����&�&��!�!�)�"3�"3�4�#6�7�
8�	9�	
����2�2�3E�F�G�����2�2�3E�F�G�����*�*�>�:�;��
�
��h�n�n�&r%c��SnUR[R"U"555 [S5n[	S5nUR[R"U55 UR[R"U55 "SS5nUR[R"U"555 UR[R"U55 "SS5nU"5nSUlUR[R"U55 UR5 UR5 g)Nc3�# �Sv� g7fr r*r*r%r#�gen�,TestPredicates.test_isawaitable.<locals>.genxs���5�r�r4c��\rSrSrSrSrg)�/TestPredicates.test_isawaitable.<locals>.Future�c��gr r*r*r%r#�	__await__�9TestPredicates.test_isawaitable.<locals>.Future.__await__����r%r*N)rUrlrmrnr'rzr*r%r#�Futurer$�r�r%r*c��\rSrSrSrg)�2TestPredicates.test_isawaitable.<locals>.NotFuturei�r*N�rUrlrmrnrzr*r%r#�	NotFuturer,�s��r%r.c��gr r*r*r%r#r��1TestPredicates.test_isawaitable.<locals>.<lambda>����Dr%)r]rX�isawaitabler�r�rTr'r)r^r!rrr*r.�not_futs       r#�test_isawaitable�TestPredicates.test_isawaitablews��������,�,�S�U�3�4�)�!�,��1�!�4������+�+�D�1�2�����+�+�H�5�6�	�	�	
����+�+�F�H�5�6�����,�,�V�4�5����+��(�������,�,�W�5�6��
�
��h�n�n�&r%c	�	�UR[R"[R55 UR[R"[
R55 UR[R"/R55 UR[R"[
R55 UR[R"[
RR55 UR[R"[R55 UR[R"[R55 UR[R"[R55 UR[R"[R55 UR[R"[5R55 UR[R"[5R55 UR[R"[5R55 UR[R"SR55 UR[R"[ R"55 UR[R"[$R&55 UR[R"SR"55 UR[R"/R&55 UR)[R"[55 UR)[R"[555 UR)[R"[!555 UR)[R"[
55 UR)[R"[*55 UR)[R"[55 UR)[R"[+SS0555 UR)[R"[,R."[
R555 g)N�*��
some_classr*)rTrX�	isroutine�git�arguer��
custom_method�countr��	StupidGit�abuser�r��__str__�__lt__r��strr:�listr9r]r�r�r
ris r#�test_isroutine�TestPredicates.test_isroutine�s�������)�)�#�)�)�4�5�����)�)�#�*;�*;�<�=�����)�)�"�(�(�3�4�����)�)�#�(�(�3�4�����)�)�#�-�-�*=�*=�>�?�����)�)�&�/�/�:�;�����)�)�&�.�.�9�:�����)�)�&�-�-�8�9�����)�)�#�*�*�5�6�����)�)�&�(�*;�*;�<�=�����)�)�&�(�*:�*:�;�<�����)�)�&�(�/�/�:�;�����)�)�2�+�+�6�7�����)�)�#�(�(�3�4�����)�)�$�+�+�6�7�����)�)�"�'�'�2�3�����)�)�"�)�)�4�5�����*�*�6�2�3�����*�*�6�8�4�5�����*�*�3�5�1�2�����*�*�3�/�0�����*�*�4�0�1�����*�*�3�/�0�����*�*�4��b�"�+E�F�G�����*�*�9�+<�+<�S�X�X�+F�G�Hr%c�(�UR[R"[R"[
R555 "SS5nUR[R"UR55 UR[R"U"5R55 UR[R"UR55 UR[R"UR55 g)Nc��\rSrSr\R
S5r\R
\S55r\R
\	S55r
Srg)�7TestPredicates.test_isroutine_singledispatch.<locals>.Ai�c��gr r*)r^�args  r#�method�>TestPredicates.test_isroutine_singledispatch.<locals>.A.method�r�r%c��gr r*�rrKs  r#�class_method�DTestPredicates.test_isroutine_singledispatch.<locals>.A.class_method�rr%c��gr r*)rKs r#�
static_method�ETestPredicates.test_isroutine_singledispatch.<locals>.A.static_method�rr%r*N)rUrlrmrnr��singledispatchmethodrLr
rPrrSrzr*r%r#�ArI�sZ��
�
+�
+�
�,�
�
�
+�
+�
�
��,�
�
�
+�
+�
�
��,�
r%rV)
rTrXr:r��singledispatchr�r�rLrSrP�r^rVs  r#�test_isroutine_singledispatch�,TestPredicates.test_isroutine_singledispatch�s�������)�)�)�*B�*B�3�8�8�*L�M�N�	�	�	
����)�)�!�(�(�3�4�����)�)�!�#�*�*�5�6�����)�)�!�/�/�:�;�����)�)�!�.�.�9�:r%c��UR[RS5 UR[R"[55 "SS[
5nUR
[R"U"555 g)Nz
mod.StupidGitc��\rSrSrSrSrg)�2TestPredicates.test_isclass.<locals>.CustomGetattri�c��gr r*�r^�attrs  r#�__getattr__�>TestPredicates.test_isclass.<locals>.CustomGetattr.__getattr__����r%r*N�rUrlrmrnrarzr*r%r#�
CustomGetattrr]����
r%re)rcrXrprTrDr�r])r^res  r#�test_isclass�TestPredicates.test_isclass�sP�����G�O�O�_�5��������-�.�	�F�	�	
��������9�:r%c���"SS[5nU"5nSUl[[R"U55nURSU5 UR
SU5 g)Nc��\rSrSrSrSrg)�/TestPredicates.test_get_slot_members.<locals>.Ci��r-�br*N�rUrlrmrn�	__slots__rzr*r%r#�Crk�s��"�Ir%rpr7r-rm)r�r-�dictrX�
getmembers�assertIn�assertNotIn)r^rp�x�memberss    r#�test_get_slot_members�$TestPredicates.test_get_slot_members�sO��	#��	#�
�C������w�)�)�!�,�-���
�
�c�7�#�����g�&r%c��^�SSKJnJm "U4SjSUS9n"SSU5nU"5nUR[R
"U55 UR
[R
"U55 UR
[R
"U55 UR
[R
"[55 UR
[R
"S55 g)	Nr��ABCMeta�abstractmethodc�(>�\rSrSrYS5rSrg)�<TestPredicates.test_isabstract.<locals>.AbstractClassExamplei�c��gr r*ris r#r6�@TestPredicates.test_isabstract.<locals>.AbstractClassExample.foo�r�r%r*N�rUrlrmrnr6rz�r|s�r#�AbstractClassExampler~�s���
�
��
r%r���	metaclassc��\rSrSrSrSrg)�4TestPredicates.test_isabstract.<locals>.ClassExamplei�c��gr r*ris r#r6�8TestPredicates.test_isabstract.<locals>.ClassExample.foo�r)r%r*Nr�r*r%r#�ClassExampler��r�r%r��)�abcr{r|rTrX�
isabstractr]r�)r^r{r�r�r-r|s     @r#�test_isabstract�TestPredicates.test_isabstract�s����/�	�W�	�	�/�	�
�N��	
����*�*�+?�@�A�����+�+�L�9�:�����+�+�A�.�/�����+�+�C�0�1�����+�+�A�.�/r%c�^^	�SSKJnJm /m	"U	4SjSUS9n"U4SjSU5n"SS	U5nURT	S
S/5 T	R	5 "SS
U5n"SSU5n"SSU5nURT	/SQ5 g)Nrrzc�">�\rSrSrU4SjrSrg)�LTestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractCheckeri�c�P>�TR[R"U55 gr )r9rXr�)r�isabstract_checkss �r#�__init_subclass__�^TestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractChecker.__init_subclass__�s���!�(�(��);�);�C�)@�Ar%r*N)rUrlrmrnr�rz)r�s�r#�AbstractCheckerr��s���
B�
Br%r�r�c�(>�\rSrSrYS5rSrg)�QTestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractClassExamplei�c��gr r*ris r#r6�UTestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractClassExample.foo�r�r%r*Nr�r�s�r#r�r��s���
�
��
r%r�c��\rSrSrSrSrg)�ITestPredicates.test_isabstract_during_init_subclass.<locals>.ClassExamplei�c��gr r*ris r#r6�MTestPredicates.test_isabstract_during_init_subclass.<locals>.ClassExample.foo�r)r%r*Nr�r*r%r#r�r��r�r%r�TFc��\rSrSrSrg)�JTestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractChildi�r*Nr-r*r%r#�
AbstractChildr�����r%r�c��\rSrSrSrg)�OTestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractGrandchildir*Nr-r*r%r#�AbstractGrandchildr�r�r%r�c��\rSrSrSrg)�OTestPredicates.test_isabstract_during_init_subclass.<locals>.ConcreteGrandchildir*Nr-r*r%r#�ConcreteGrandchildr�r�r%r�)TTF)r�r{r|�assertEqual�clear)
r^r{r�r�r�r�r�r�r|r�s
        @@r#�$test_isabstract_during_init_subclass�3TestPredicates.test_isabstract_during_init_subclass�s����/���	B��	B�	�?�	�	�/�	�	
���*�T�5�M�:����!�	�0�	�	��	�	��	����*�,?�@r%r*N)rUrlrmrnr�rr4rErYrgrwr�r�rzr*r%r#r�r��s6��/L�fN(�`'�."I�H;�*;�'�0�,Ar%r�c�8�\rSrSrSrSrSrSrSrSr	Sr
g	)
�TestInterpreterStackic�z�[RR"U/UQ70UD6 [R	SSS5 g)N���	)r�TestCaser�r;r@�r^r"r�s   r#r��TestInterpreterStack.__init__	s0�����"�"�4�9�$�9�&�9��	�	�!�Q��r%c��UR[RS5 UR[RS5 g)Nzgit.ex.__traceback__zmod.fr)rcrXrurrris r#�test_abuse_done�$TestInterpreterStack.test_abuse_dones)�����G�'�'�)?�@����G�O�O�X�.r%c	��UR[[R5S:�5 [Rtpp4n[	USS6nURU[SSS/S45 URUR[R"SSSS55 [	USS6nURU[SS	S
/S45 URUR[R"SSSS55 [	USS6nURU[S
SS/S45 URUR[R"S
S
SS55 [	USS6nURU[SSS/S45 URUR[R"SSSS55 [RSnURUR[R5 URURS5 URUR[R5 URUR S5 UR#SUR$S5 URUR&S5 g)Nr�r4��eggsz    st = inspect.stack()
rr��r��    eggs(b + d, c + f)
���+r<�            spam(a, b, c)
���'r@z        self.argue(a, b, c)
r��zinspect.stack())rTr8r��str$r��modfile�	positions�dis�	Positions�assertIs�frame�fr�linenor!�__file__�functionrs�code_context�index)r^�frame1�frame2�frame3�frame4�_�	frameinfo�records        r#�
test_stack�TestInterpreterStack.test_stacks������C�F�F��q�(�)�-0�V�V�*�����F�1�2�J�'�	������r�6�$@�#A�1�
E�	G�����)�)�3�=�=��R��B�+G�H��F�1�2�J�'�	������q�&�#=�">��
B�	D�����)�)�3�=�=��A�q�"�+E�F��F�1�2�J�'�	������r�7�%B�$C�Q�
G�	I�����)�)�3�=�=��R��R�+H�I��F�1�2�J�'�	������r�7�%D�$E�q�
I�	K�����)�)�3�=�=��R��B�+G�H��������
�
�f�l�l�C�F�F�+��������+�������#�,�,�7�������&�1��
�
�'��)<�)<�Q�)?�@�������q�)r%c	��UR[[R5S5 [RupnUR[	USS6[
SSS/S45 URUR[R"SSSS55 UR[	USS6[
S	S
S/S45 URUR[R"S	S	SS
55 UR[	USS6[
SSS/S45 URUR[R"SSSS55 g)N�r4r�r<r�rr�r�r�r�r�r�r��r�z    q = y / 0
r��
)	r�r8r;�trr$r�r�r�r�)r^r�r�r�s    r#�
test_trace�TestInterpreterStack.test_trace.s ������S�V�V��a�(�"%�&�&������������,��r�7�%B�$C�Q�
G�	I�����)�)�3�=�=��R��R�+H�I���������,��q�&�#=�">��
B�	D�����)�)�3�=�=��A�q�"�+E�F���������,��r�6�$5�#6��
:�	<�����)�)�3�=�=��R��B�+G�Hr%c�<�[R"[R5upp4UR	USS/5 UR	US5 UR	US5 UR	USSSS.5 UR	[R
"XX45S5 g)Nru�y��)rur>r�z(x=11, y=14))rX�getargvaluesr�r�r��formatargvalues�r^r"�varargs�varkw�localss     r#�
test_frame�TestInterpreterStack.test_frame;s���'.�';�';�C�F�F�'C�$��u������S�z�*�����$�'������%�����r���!<�=�����0�0���N�'�	)r%c�$�[R"[RR5upp4URU/SQ5 URUS5 URUS5 UR[R"XX45S5 g)N)r-rmr�dr��f�g�hz-(a=7, b=8, c=9, d=3, e=4, f=5, *g=(), **h={}))rXr�r�r��f_backr�r�r�s     r#�test_previous_frame�(TestInterpreterStack.test_previous_frameDsp��'.�';�';�C�F�F�M�M�'J�$��u�����=�>�����#�&������$�����0�0���N�
<�	>r%r*N)rUrlrmrnr�r�r�r�r�r�rzr*r%r#r�r�s!���
/�*�8I�)�>r%r�c�*�\rSrSrSrSrSrSrSrg)�
GetSourceBaseiLNc��[[R"UR5SS9nUR	5UlSSS5 g!,(df   g=f)N�utf-8��encoding)�openrX�
getsourcefile�fodderModule�read�source)r^�fps  r#�setUp�GetSourceBase.setUpPs:��
�'�'�'��(9�(9�:�W�
M�QS��'�'�)�D�K�N�
M�
M�s�A�
Ac��URRS5nSRX1S-
U5U(aS-$S-$)N�
r4r8)r�splitr:)r^�top�bottom�liness    r#�sourcerange�GetSourceBase.sourcerangeTs=�����!�!�$�'���y�y��1�u�V�,�-���H�H�R�H�Hr%c�n�UR[R"U5URX#55 gr )r�rX�	getsourcer)r^rar	r
s    r#�assertSourceEqual�GetSourceBase.assertSourceEqualXs+������*�*�3�/��)�)�#�6�	8r%)r)	rUrlrmrnrrrrrzr*r%r#r�r�Ls���L�$�I�8r%r�c�"�\rSrSrSrSSS.rSrg)�SlotUseri\zDocstrings for __slots__�measured in kilowatts�measured in kilometers)�power�distancer*N)rUrlrmrn�__doc__rorzr*r%r#rr\s���1�5�7�Ir%rc��\rSrSr\rSrSr\R"\
RRS:�S5S5r
\R"\
RRS:�S5S5r\R"\S5S	5r/S
QrSr\S5rS
rSrSrSrSrSrSrSrSrSrSr\ "5S5r!Sr"Sr#Sr$Sr%Sr&Sr'Sr(g )!�TestRetrievingSourceCodeiac��[R"[[R5nUR	US[R
4S[R4S[R4S[R4S[R4S[R4/5 [R"UVs/sHo"SPM	 sn5nUR	U[S4[R[44[R
[R[R44/[R[44[R[R44[R
[R[R44//[R[44//5 [R"UVs/sHo"SPM	 snS	5nUR	U[S4[R[44[R[44[R[R44[R
[R[R44//[R[44//5 gs snfs snf)
N�FesteringGob�MalodorousPervert�ParrotDroppingsr?�Tit�
WhichCommentsr4r*T)rXrrr�rpr�rrrr?r �getclasstreer�)r^�classesr�trees    r#�test_getclasses�(TestRetrievingSourceCode.test_getclassesds,���$�$�S�'�/�/�:������)�3�+;�+;�<�.��0E�0E�F�,�c�.A�.A�B�&��
�
�6� �#�"7�"7�8�*�C�,=�,=�>��	��#�#�w�$?�w���V�w�$?�@������!�2�,��/�/�&��;� �-�-��0E�0E�36�3F�3F�0H�I�� �M�M�F�9�5� �2�2�S�]�]�4D�E�!�.�.��1F�1F�47�4G�4G�1I�J���
!�.�.��	�;��
�	��#�#�w�$?�w���V�w�$?��F������!�2�,��/�/�&��;��M�M�F�9�5� �2�2�S�]�]�4D�E�!�.�.��1F�1F�47�4G�4G�1I�J���
!�.�.��	�;��
�	��#%@�� %@s�6J�<Jc��[R"[[R5nUR	US[R
4S[R4S[R4S[R4/5 g)N�
after_closingr��lobbestr�)	rXrrr�r\r�r'r�r(r�)r^�	functionss  r#�test_getfunctions�*TestRetrievingSourceCode.test_getfunctions�s`���&�&�s�G�,>�,>�?�	�����o�s�7H�7H�%I�&,�c�h�h�%7�&/����%=�&,�c�h�h�%7�%9�	:r%r5z)Docstrings are omitted with -O2 and abovec��UR[R"[5S5 UR[R"[R5S5 UR[R"[
R5S5 UR[R"[R5S5 UR[R"[R5S5 g)NzA module docstring.�A longer,

indented

docstring.�$Another

docstring

containing

tabsrr)
r�rX�getdocr�r?r;r@rrrris r#�test_getdoc�$TestRetrievingSourceCode.test_getdoc�s���	
�������,�.C�D��������
�
�6�>�	@��������	�	�2�E�	G����������7�0�	2��������(9�(9�:�1�	3r%c���UR[R"[R5S5 UR[R"[RR
5S5 UR[R"[R"5R
5S5 UR[R"[RR5S5 g)Nr-r.zThe automatic gainsaying.)r�rXr/r�rr@�
contradictionris r#�test_getdoc_inherited�.TestRetrievingSourceCode.test_getdoc_inherited�s���	
�������(8�(8�9�>�	@��������(8�(8�(>�(>�?�E�	G��������(8�(8�(:�(@�(@�A�E�	G��������(8�(8�(F�(F�G�4�	6r%ztest requires docstringsc�p�[RnURU"[5[R5 URU"[R
5[R
R5 URU"[5R
5[R
R5 URU"[R5[RR5 URU"[R5[RR5 gr )rX�_finddocr�r�r�to_bytes�
from_bytes�real)r^�finddocs  r#�test_finddoc�%TestRetrievingSourceCode.test_finddoc�s����"�"��������s�{�{�3��������.����0D�0D�E���������0�#�,�,�2F�2F�G��������0�#�.�.�2H�2H�I��������*�C�H�H�,<�,<�=r%))z An
  indented
   docstring.zAn
indented
 docstring.)z# An 
   
  indented 
   docstring. zAn 
 
indented 
 docstring. )z'docstring

  secondline
  thirdlinez#docstring

secondline
thirdline)z   r8)z+


  first paragraph

   second paragraph

z'


first paragraph

 second paragraph

)z   
 
  
   z	
 
  
   c��[Rn[UR5HIunup4UR	S5nURUS9 UR
U"U5U5 SSS5 MK g!,(df   M]=f)Nr�r=)rX�cleandoc�	enumerate�cleandoc_testdata�strip�subTestr�)r^r�r=�input�expecteds     r#�
test_cleandoc�&TestRetrievingSourceCode.test_cleandoc�sl������$-�d�.D�.D�$E� �A� ���~�~�d�+�H������"�� � ��e��h�7�#�"�%F�#�"�s�A4�4
B	c�8�SSKnURn[UR5H8unupEURUS9 URU"U5U5 SSS5 M: g![a [R"S5s$f=f!,(df   Mr=f)Nrzrequires _testinternalcapir?)	�_testinternalcapi�ImportErrorr�skip�compiler_cleandocrArBrDr�)r^rJr�r=rErFs      r#�test_c_cleandoc�(TestRetrievingSourceCode.test_c_cleandoc�s���	?�$�!�2�2��$-�d�.D�.D�$E� �A� �������"�� � ��e��h�7�#�"�%F���	?��=�=�!=�>�>�	?��#�"�s�A$�B
�$ B�B�

B	c���UR[R"[5S5 UR[R"[R5S5 UR[R"[
R5S5 [SSS5nUR[R"U55 UR[R"[55 g)N�	# line 1
z
# line 20
z# line 159
�x=1z_non_existing_filename.pyr;)
r�rX�getcommentsr�r?�mod2�cls160�compile�assertIsNonerD)r^�cos  r#�test_getcomments�)TestRetrievingSourceCode.test_getcomments�s�������,�,�S�1�<�@�����,�,�S�]�]�;�]�K�����,�,�T�[�[�9�>�J�
�U�7��
@�����'�-�-�b�1�2����'�-�-�d�3�4r%c��UR[R"[5[5 UR[R"[R5[5 UR[R"[RR
5[5 UR[R"[RR
5[5 UR[R"[5[RS5 UR[R"S[5[5 g)N�builtins)
r�rX�	getmoduler�r?r@rC�sys�modulesr�ris r#�test_getmodule�'TestRetrievingSourceCode.test_getmodule�s�������*�*�3�/��5�����*�*�3�=�=�9�3�?�����*�*�3�=�=�+>�+>�?��E�����*�*�3�=�=�+>�+>�?��E�����*�*�3�/����Z�1H�I�����*�*�4��9�3�?r%c��Sn[RRSU5 [R"5nUR[R"U55 [R"U5 SSS5 g!,(df   g=f)Nc��[S5e)Nzbad file)�FileNotFoundError)ra�	_filenames  r#�_getabsfile�KTestRetrievingSourceCode.test_getmodule_file_not_found.<locals>._getabsfile�s
��#�J�/�/r%zinspect.getabsfile)rr�patchrX�currentframerWr]�getouterframes)r^rfr�s   r#�test_getmodule_file_not_found�6TestRetrievingSourceCode.test_getmodule_file_not_found�s^��	0�
�]�]�
 �
 �!5�{�
C��$�$�&�A����g�/�/��2�3��"�"�1�%�D�
C�
C�s�AA>�>
Bc���[R"URRS5nUR	UR
SS5 UR	UR
SS5 g)N�2rrQr4z'A module docstring.'
)rX�getframeinforr�r�r�)r^�
frame_infos  r#� test_getframeinfo_get_first_line�9TestRetrievingSourceCode.test_getframeinfo_get_first_line�sW���)�)�$�*;�*;�*>�*>��C�
�����0�0��3�\�B�����0�0��3�5N�Or%c��UR[RSS5 UR[RSS5 UR[R
SS5 UR[RSS5 g)N�r���3�K�L�x)rr;r@r�r?r(r'ris r#�test_getsource�'TestRetrievingSourceCode.test_getsources\�����s�y�y�"�b�1����s�}�}�b�"�5����s�{�{�B��3����s�0�0�#�s�;r%c��UR[[R"[R
55[5 UR[[R"[R55[5 Sn[SUS5nUR[R"U5S5 SSSUR4[RUR'UR[[R"U55U5 [RUR	g![RUR	f=f)Nz2_non_existing_filename_used_for_sourcefile_test.pyrRr;r4�None)
r�rrXr�r�r�r�r;r@rV�co_filename�	linecache�cache)r^�fnrXs   r#�test_getsourcefile�+TestRetrievingSourceCode.test_getsourcefiles�������'�"7�"7����"A�B�G�L�����'�"7�"7��	�	�"B�C�W�M�
A��
�U�B��
'������.�.�r�2�D�9�+,�d�F�B�N�N�*K�	������'�	0����X�g�&;�&;�B�&?�@�"�E�������/��	������/�s�$/D/�/Ec�
�[5n[SS5 SSS5 [RR	SU5 SSKnUR
[R"U5S5 UR
[R"U5S/S45 [RRU5 SSS5 g!,(df   N�=f![RRU5 f=f!,(df   g=f)Nz
empty_file.py�wrr)rr�r^�path�insert�
empty_filer�rXr�getsourcelines�remove)r^�cwdr�s   r#�test_getsource_empty_file�2TestRetrievingSourceCode.test_getsource_empty_files���
�Z�3��o�s�+��,��H�H�O�O�A�s�#�
%�!�� � ��!2�!2�:�!>��E�� � ��!7�!7�
�!C�t�f�a�[�Q�������$��Z�+�+��������$���Z�s:�
C4�B?�(C4�AC�C4�?
C
	�	C4�!C1�1C4�4
Dc��UR[R"[R5[R
5 gr )r�rX�getfiler�r?r�ris r#�test_getfile�%TestRetrievingSourceCode.test_getfiles#�����������7����Fr%c��UR[5n[R"[5 SSS5 UR[
WR5RS55 g!,(df   NB=f)Nz<module)	�assertRaises�	TypeErrorrXr�r^rTrC�	exception�
startswithr�s  r#�test_getfile_builtin_module�4TestRetrievingSourceCode.test_getfile_builtin_module"sL��
�
�
�y�
)�Q��O�O�C� �*�����A�K�K�(�3�3�I�>�?�*�
)���A-�-
A;c��UR[5n[R"[5 SSS5 UR[
WR5RS55 g!,(df   NB=f)Nz<class)	r�r�rXr�r�rTrCr�r�r�s  r#�test_getfile_builtin_class�3TestRetrievingSourceCode.test_getfile_builtin_class'sL��
�
�
�y�
)�Q��O�O�C� �*�����A�K�K�(�3�3�H�=�>�*�
)�r�c���UR[5n[R"[5 SSS5 URS[
WR55 UR[5n[R"[R5 SSS5 URS[
WR55 g!,(df   N�=f!,(df   NE=f)Nz
expected, got)
r�r�rXr��absrsrCr�rDr9)r^�e_abs�e_appends   r#�'test_getfile_builtin_function_or_method�@TestRetrievingSourceCode.test_getfile_builtin_function_or_method,s���
�
�
�y�
)�U��O�O�C� �*��
�
�o�s�5�?�?�';�<�
�
�
�y�
)�X��O�O�D�K�K�(�*��
�
�o�s�8�+=�+=�'>�?�*�
)��*�
)�s�C�3%C�
C�
C%c��"SS[5n"SSUS9nUR[5 [R"U5 SSS5 g!,(df   g=f)Nc�$�\rSrSr\S5rSrg)�FTestRetrievingSourceCode.test_getfile_class_without_module.<locals>.CMi6c��[er ��AttributeErrorrs r#rl�QTestRetrievingSourceCode.test_getfile_class_without_module.<locals>.CM.__module__7s��$�$r%r*N)rUrlrmrn�propertyrzr*r%r#�CMr�6���
�
%��
%r%r�c��\rSrSrSrg)�ETestRetrievingSourceCode.test_getfile_class_without_module.<locals>.Ci:r*Nr-r*r%r#rpr�:r�r%rpr�)r�r�r�rXr�)r^r�rps   r#�!test_getfile_class_without_module�:TestRetrievingSourceCode.test_getfile_class_without_module4s@��	%��	%�	�"�	�
�
�
�y�
)��O�O�A��*�
)�
)�s�A�
Ac��"SS5nU"5nUR[5 [R"U5 SSS5 g!,(df   g=f)Nc��\rSrSrSrSrg)�DTestRetrievingSourceCode.test_getfile_broken_repr.<locals>.ErrorRepri@c��[S5e)N�xyz)r�ris r#�__repr__�MTestRetrievingSourceCode.test_getfile_broken_repr.<locals>.ErrorRepr.__repr__As
����&�&r%r*N)rUrlrmrnr�rzr*r%r#�	ErrorReprr�@s��
'r%r�)r�r�rXr�)r^r��ers   r#�test_getfile_broken_repr�1TestRetrievingSourceCode.test_getfile_broken_repr?s;��	'�	'��[��
�
�
�y�
)��O�O�B��*�
)�
)�s�A�
Ac�j�SSKJn SnU"U5=n[RU'SUlSUl[
SUR5 UR[R"URR5S5 [RU	[R"[SSS	55 g)
Nr)�
ModuleType�__inspect_dummy�<string>�dummyz
def x(): passza=10r8�single)r�r�r^r_r��
__loader__r;�__dict__r�rXr�ru�__code__r]rV)r^r��name�ms    r#�test_getmodule_recursion�1TestRetrievingSourceCode.test_getmodule_recursionGs���$� �� *�4� 0�0��C�K�K�����
�����_�a�j�j�)�����.�.�q�s�s�|�|�<�j�I��K�K������'�&��H�5�6r%c�^^^�Summ[RmSUUU4SjjnU[l0n[[TTS5U5 [R
"US5 T[lg!T[lf=f)z4doctest monkeypatches linecache to enable inspection)z<test>zdef x(): pass
Nc�>>�UT:XaTRSS9$T"X5$)NT)�keepends)�
splitlines)r!�module_globalsr��getlinesrs  ���r#�monkey�HTestRetrievingSourceCode.test_proceed_with_fake_filename.<locals>.monkeyVs)����2�~��(�(�$�(�7�7���9�9r%r�rur )rr�r;rVrXr)r^r��nsr�r�rs   @@@r#�test_proceed_with_fake_filename�8TestRetrievingSourceCode.test_proceed_with_fake_filenameRsk���0�
��F��%�%��	:�	:�
$�	��	*��B�����X�.��3����b��g�&�!)�I����I��s�2A-�-
A:c�Z�UR[RRSS5 g)Nr�r�)rr�r�r�ris r#�test_getsource_on_code_object�6TestRetrievingSourceCode.test_getsource_on_code_objectcs�����s�x�x�0�0�"�b�9r%c�8�[S[R405nUR[R
"U5[5 UR[R"U5[5 UR[R"U5[R[5 UR[[RU5 UR[[R U5 UR#[R$"U55 g)NrV)r�rr�r�rXr�r�r�r�r]r^r_rUr��OSErrorrr�rWrSrXs  r#�!test_getsource_on_generated_class�:TestRetrievingSourceCode.test_getsource_on_generated_classfs�����x�(�(�*�B�/������.�.�q�1�8�<��������+�X�6��
�
�g�'�'��*�C�K�K��,A�B����'�7�#4�#4�a�8����'�7�#9�#9�1�=����'�-�-�a�0�1r%c�n^�Sm"U4SjS5nUR[[RU5 g)Nr4c�>�\rSrSmSrg)�OTestRetrievingSourceCode.test_getsource_on_class_without_firstlineno.<locals>.Ciqr*N)rUrlrmrz)rns�r#rpr�qs���r%rp)r�r�rXr)r^rprns  @r#�+test_getsource_on_class_without_firstlineno�DTestRetrievingSourceCode.test_getsource_on_class_without_firstlinenoos*�����	%�	%����'�7�#4�#4�a�8r%r*N))rUrlrmrnr�rr$r*r�skipIfr^�flags�optimizer0r4r
r<rBrGrrNrYr`rkrqrzr�r�r�r�r�r�r	r�r�r�r�r�r�r�rzr*r%r#rras,���L�&�P:��_�_�S�Y�Y�'�'�1�,�@�B�	3�B�	3��_�_�S�Y�Y�'�'�1�,�@�B�6�B�6��_�_�)�+E�F�>�G�>���&8��8��8�5�@�&�P�
<�
0�
%�G�@�
?�
@���� �� �	7�*�":�2�9r%rc�,�\rSrSrSrSrSrSrSrg)�TestGetsourceStdlibiuc�$�SSKn[R"URR5up#URUSS5 [R"URR5nURURS5U5 g)Nrz(class Sequence(Reversible, Collection):
T)�collections.abcrXr�r��Sequencer�rr�)r^�collectionsrr��srcs     r#�%test_getsource_stdlib_collections_abc�9TestGetsourceStdlib.test_getsource_stdlib_collections_abcxsi����.�.�{���/G�/G�H�
������q��#N�O������� 8� 8�9���������-�u�5r%c���SSKnUR[[RUR
5 UR[[RUR
5 g�Nr)�tomllibr�r�rXr�TOMLDecodeErrorr�)r^r�s  r#�test_getsource_stdlib_tomllib�1TestGetsourceStdlib.test_getsource_stdlib_tomllibsA������'�7�#4�#4�g�6M�6M�N����'�7�#9�#9�7�;R�;R�Sr%c��[R"SS/S9n[R"[R
SU5 UR
[[RUR5 UR
[[RUR5 SSS5 SSKn[R"UR5n[R"UR5up4URUSS5 URURS5U5 g!,(df   N�=f![a gf=f)Nr��_abc��blockedrz    class ABCMeta(type):
T)r�import_fresh_moduler�	swap_itemr^r_r�r�rXrr{r�r�r�r�)r^r�r�rr�s     r#�test_getsource_stdlib_abc�-TestGetsourceStdlib.test_getsource_stdlib_abc�s����/�/���x�H��
�
�
�s�{�{�E�3�
7����g�w�'8�'8�#�+�+�F����g�w�'=�'=�s�{�{�K�8�	�	:��#�#�C�K�K�0�C�#�2�2�3�;�;�?�M�E�
���U�1�X�'C�D����S�^�^�D�1�5�9�8�
7���	��	�s�AD"�)AD3�"
D0�3
E�?Ec��[R"SS/S9n[R"[R
SU5 [R"UR5n[R"UR5up4SSS5 URWSS5 URWRS5U5 g!,(df   NE=f)N�decimal�_decimalr�rzclass Decimal(object):
T)rr�rr�r^r_rXr�Decimalr�r�r�)r^r�r�rr�s     r#�test_getsource_stdlib_decimal�1TestGetsourceStdlib.test_getsource_stdlib_decimal�s����3�3�I�
�|�T��
�
�
�s�{�{�I�w�
?��#�#�G�O�O�4�C�#�2�2�7�?�?�C�M�E�@�	
����q��#=�>��������-�u�5�	@�
?�s�AB?�?
C
r*N)	rUrlrmrnr�r�r�r�rzr*r%r#r�r�us��6�T�
:�"6r%r�c�8�\rSrSr\R
S5rSrg)�TestGetsourceInteractivei�c�H�Sn[SUSS9u p#URSU5 g)Nz�import sys, inspect;                 assert not hasattr(sys.modules['__main__'], '__file__');                 A = type('A', (), {});                 inspect.getsource(A)z-cT)�
__isolateds"OSError: source code not available)rrs)r^�coder��stderrs    r#�test_getclasses_interactive�4TestGetsourceInteractive.test_getclasses_interactive�s,��&��-�T�4�D�I���1��
�
�;�V�Dr%r*N)rUrlrmrnr�force_not_colorizedrrzr*r%r#rr�s��� � �E�!�Er%rc�$�\rSrSr\rSrSrSrg)�!TestGettingSourceOfToplevelFramesi�c�T�SUlUR[RSS5 g�Nr4)�maxDiffrr�riris r#�test_range_toplevel_frame�;TestGettingSourceOfToplevelFrames.test_range_toplevel_frame�s!��������s�/�/��D�9r%c�F�UR[RSS5 gr)rr�r�ris r#�#test_range_traceback_toplevel_frame�ETestGettingSourceOfToplevelFrames.test_range_traceback_toplevel_frame�s�����s�v�v�q�$�/r%�r
N)	rUrlrmrnr�rrrrzr*r%r#r
r
�s���L�:�0r%r
c�0�\rSrSr\rSrSrSrSr	Sr
g)�TestDecoratorsi�c�F�UR[RSS5 g)Nr��)rrTr�ris r#�test_wrapped_decorator�%TestDecorators.test_wrapped_decorator�s�����t�|�|�R��4r%c�F�UR[RSS5 g)Nr��
)rrT�goneris r#�test_replacing_decorator�'TestDecorators.test_replacing_decorator�s�����t�y�y�!�R�0r%c�F�UR[RSS5 g)N��)rrTr:ris r#�test_getsource_unwrap�$TestDecorators.test_getsource_unwrap�s�����t�y�y�#�s�3r%c�F�UR[RSS5 g)N�q�s)rrT�func114ris r#�test_decorator_with_lambda�)TestDecorators.test_decorator_with_lambda�s�����t�|�|�S�#�6r%r*N)rUrlrmrnrTrrrr"r(rzr*r%r#rr�s���L�5�1�4�7r%rc�r�\rSrSr\rSrSrSrSr	Sr
SrSrS	r
S
rSrSrS
rSrSrSrSrg)�
TestOnelinersi�c�F�UR[RSS5 g)Nr�)rrT�ollris r#�test_oneline_lambda�!TestOneliners.test_oneline_lambda�s�����t�x�x��R�0r%c�F�UR[RSS5 g)N��)rrT�tllris r#�test_threeline_lambda�#TestOneliners.test_threeline_lambda�s��	
���t�x�x��R�0r%c�F�UR[RSS5 g)N�!�")rrT�tlliris r#�test_twoline_indented_lambda�*TestOneliners.test_twoline_indented_lambda�s��	
���t�y�y�"�b�1r%c���UR[RSS5 UR[RSS5 UR[RSS5 g)Niii)rrT�parenthesized_lambda�parenthesized_lambda2�parenthesized_lambda3ris r#�#test_parenthesized_multiline_lambda�1TestOneliners.test_parenthesized_multiline_lambda�sL��	
���t�8�8�#�s�C����t�9�9�3��D����t�9�9�3��Dr%c�F�UR[RSS5 g)Nii)rrT�post_line_parenthesized_lambda1ris r#�#test_post_line_parenthesized_lambda�1TestOneliners.test_post_line_parenthesized_lambda�s��	
���t�C�C�S�#�Nr%c�F�UR[RSS5 g)Ni#i$)rrT�
nested_lambdaris r#�test_nested_lambda� TestOneliners.test_nested_lambda�s�����t�1�1�3��<r%c�F�UR[RSS5 g)N�%)rrT�onelinefuncris r#�test_onelinefunc�TestOneliners.test_onelinefunc�s�����t�/�/��R�8r%c�F�UR[RSS5 g)N�(�))rrT�manyargsris r#�
test_manyargs�TestOneliners.test_manyargs�s��	
���t�}�}�b�"�5r%c�F�UR[RSS5 g)N�,�-)rrT�twolinefuncris r#�test_twolinefunc�TestOneliners.test_twolinefunc�s��	
���t�/�/��R�8r%c�L�UR[RSSS5 g)Nr4�1)rrTr-ris r#�test_lambda_in_list�!TestOneliners.test_lambda_in_list�s��	
���t�v�v�a�y�"�b�1r%c�F�UR[RSS5 g)N�7)rrT�	anonymousris r#�test_anonymous�TestOneliners.test_anonymous�s��	
���t�~�~�r�2�6r%c��UR[RSS5 UR[RSS5 UR[RSS5 UR[R
SS5 UR
[[R[R5 UR
[[R[R5 UR
[[R[R5 UR
[[R[R5 g)	NiBiCiFiGiJiKiNiO)rrT�enum322�enum326�flag330�flag334r�r�rXr�simple_enum338�simple_enum339�simple_flag340�simple_flag341ris r#�	test_enum�TestOneliners.test_enum�s������t�|�|�S�#�6����t�|�|�S�#�6����t�|�|�S�#�6����t�|�|�S�#�6����'�7�#4�#4�d�6I�6I�J����'�7�#4�#4�d�6I�6I�J����'�7�#4�#4�d�6I�6I�J����'�7�#4�#4�d�6I�6I�Jr%c��UR[RSS5 UR[[
R[R5 g)NiZi\)rrT�nt346r�r�rXr�nt351ris r#�test_namedtuple�TestOneliners.test_namedtuple�4�����t�z�z�3��4����'�7�#4�#4�d�j�j�Ar%c��UR[RSS5 UR[[
R[R5 g)Nibid)rrT�td354r�r�rXr�td359ris r#�test_typeddict�TestOneliners.test_typeddictrtr%c��UR[RSS5 UR[[
R[R5 UR[[
R[R5 g)Nilio)	rrT�dc364r�r�rXr�dc370�dc371ris r#�test_dataclass�TestOneliners.test_dataclasssP�����t�z�z�3��4����'�7�#4�#4�d�j�j�A����'�7�#4�#4�d�j�j�Ar%r*N)rUrlrmrnrTrr.r4r:r@rDrHrMrSrYr]rbrmrrrxr~rzr*r%r#r+r+�sX���L�1�1�
2�
E�O�
=�9�6�9�2�
7�
K�B�B�Br%r+c�*�\rSrSr\rSrSrSrSr	g)�TestBlockCommentsic�F�UR[RSS5 g)N�`�r)rr�r ris r#�test_toplevel_class�%TestBlockComments.test_toplevel_classs�����s�0�0�"�c�:r%c�Z�UR[RRSS5 g)N�c�h)rr�r r�ris r#�test_class_method�#TestBlockComments.test_class_methods �����s�0�0�2�2�B��<r%c�Z�UR[RRSS5 g)N�m�p)rr�r �asyncfris r#�test_class_async_method�)TestBlockComments.test_class_async_methods �����s�0�0�7�7��c�Br%r*N)
rUrlrmrnr�rr�r�r�rzr*r%r#r�r�s���L�;�=�Cr%r�c���\rSrSr\rSrSrSrSr	Sr
SrSr\
R"\"\S	5(+=(d \R"R%S
5S5S5rS
rSrSrSrSrSrSrSrSrSrSrSr\ RBS5r"Sr#Sr$Sr%\
R"\ RL=(d \ RNS5S5r(Sr)S r*S!r+S"r,g#)$�TestBuggyCasesi c�F�UR[RSS5 g)N�:�;)rrT�with_commentris r#�test_with_comment� TestBuggyCases.test_with_comment#s�����t�0�0�"�b�9r%c�L�UR[RSSS5 g)Nr�?�@)rrT�
multiline_sigris r#�test_multiline_sig�!TestBuggyCases.test_multiline_sig&s�����t�1�1�!�4�b�"�=r%c�d�UR[R"5RSS5 g)N�G�H)rrT�func69�func71ris r#�test_nested_class� TestBuggyCases.test_nested_class)s �����t�{�{�}�3�3�R��<r%c�F�UR[RSS5 g)N�M)rrT�func77ris r#�#test_one_liner_followed_by_non_name�2TestBuggyCases.test_one_liner_followed_by_non_name,������t�{�{�B��3r%c�Z�UR[RRSS5 g)N�S)rrT�cls82�func83ris r#�test_one_liner_dedent_non_name�-TestBuggyCases.test_one_liner_dedent_non_name/s�����t�z�z�0�0�"�b�9r%c�F�UR[RSS5 g)N�X�Z)rrT�func88ris r#�&test_with_comment_instead_of_docstring�5TestBuggyCases.test_with_comment_instead_of_docstring2r�r%c�F�UR[RSS5 g)N�_�a)rrT�method_in_dynamic_classris r#�test_method_in_dynamic_class�+TestBuggyCases.test_method_in_dynamic_class5s�����t�;�;�R��Dr%r�z.pyz,unicodedata is not an external binary modulec��UR[[R[5 UR[[R
[5 gr )r�r�rXr�unicodedata�
findsourceris r#�test_findsource_binary�%TestBuggyCases.test_findsource_binary:s4��	
���'�7�#4�#4�k�B����'�7�#5�#5�{�Cr%c�,�S/n[USSS5nUR[[RU5 UR[[R
U5 SSXR4[RUR'UR[R"U5US45 UR[R
"U5US5 [RUR	g![RUR	f=f)NrRr�_dynamically_created_filer;r4)
rVr�r�rXr�rr~rr�r�)r^rrXs   r#�!test_findsource_code_in_linecache�0TestBuggyCases.test_findsource_code_in_linecacheAs������
�U�1�X�:�F�
C�����'�7�#5�#5�r�:����'�7�#4�#4�b�9�+,�d�E�>�>�*J�	������'�	0����W�/�/��3�e�A�Y�?����W�.�.�r�2�E�!�H�=�������/��	������/�s
�	AC6�6Dc���SHZn[SUS5nUR[[RU5 UR[[R
U5 M\ g)N)r8r�rRr;)rVr��IOErrorrXr�r)r^�fnamerXs   r#� test_findsource_without_filename�/TestBuggyCases.test_findsource_without_filenameMsJ��%�E����v�.�B����g�w�'9�'9�2�>����g�w�'8�'8�"�=�&r%c��[[R"[55nSU-S-n[	U[R
S5n00pT[
X4U5 USnURURRSSU--5 UR[S5 [R"U5 SSS5 g!,(df   g=f)N�

z
def f(): passr;r�r4r5�lineno is out of bounds)
r8rXrr�rVr�rSr�r��co_firstlineno�assertRaisesRegexr�r�)r^�mod_lenr�rXr��lr�s       r#�1test_findsource_on_func_with_out_of_bounds_lineno�@TestBuggyCases.test_findsource_on_func_with_out_of_bounds_linenoSs����g�'�'��,�-�����/�1��
�S�#�,�,��
/���2�1��R�A����v��������5�5�q��7��{�C�
�
#�
#�G�-F�
G����t�$�H�
G�
G�s�B=�=
Cc��[[R"[55nSU-S-n[	U[R
S5nS[R00pT[X4U5 USnURURSSU--5 UR[S5 [R"U5 SSS5 g!,(df   g=f)	Nr�z
class A: passr;rUrVr4r5r�)
r8rXrr�rVr�rUrSr�rnr�r�r�)r^r�r�rXr�r�rs       r#�2test_findsource_on_class_with_out_of_bounds_lineno�ATestBuggyCases.test_findsource_on_class_with_out_of_bounds_lineno^s����g�'�'��,�-�����/�1��
�S�#�,�,��
/���C�L�L�)�2�1��R�A����f������,�,�a��'�	�k�:�
�
#�
#�G�-F�
G����s�#�H�
G�
G�s�#C�
Cc�Z�UR[RRSS5 g)N�v�w)rrT�ClassWithMethodrLris r#�test_getsource_on_method�'TestBuggyCases.test_getsource_on_methodis �����t�3�3�:�:�C��Er%c�Z�UR[RRSS5 g)Nri=)rrT�ClassWithCodeObjectrris r#�#test_getsource_on_class_code_object�2TestBuggyCases.test_getsource_on_class_code_objectls �����t�7�7�<�<�c�3�Gr%c�Z�UR[RRSS5 g)N��)rrT�cls135�func136ris r#�test_nested_func�TestBuggyCases.test_nested_funcos�����t�{�{�2�2�C��=r%c�F�UR[RSS5 g)N��)rrT�cls149ris r#�4test_class_definition_in_multiline_string_definition�CTestBuggyCases.test_class_definition_in_multiline_string_definitionr������t�{�{�C��5r%c�F�UR[RSS5 g)N��)rrTrUris r#�*test_class_definition_in_multiline_comment�9TestBuggyCases.test_class_definition_in_multiline_commentur�r%c�Z�UR[RRSS5 g)N��)rrT�cls173�cls175ris r#�,test_nested_class_definition_indented_string�;TestBuggyCases.test_nested_class_definition_indented_stringxs�����t�{�{�1�1�3��<r%c��UR[RSS5 UR[RRSS5 g)N���)rrT�cls183�cls185ris r#�test_nested_class_definition�+TestBuggyCases.test_nested_class_definition{�4�����t�{�{�C��5����t�{�{�1�1�3��<r%c��UR[RSS5 UR[RRSS5 g)N������)rrT�cls196�cls200ris r#�test_class_decorator�#TestBuggyCases.test_class_decoratorrr%c�Z�UR[RRSS5 g)N����)rrT�cls238�cls239ris r#�test_class_inside_conditional�,TestBuggyCases.test_class_inside_conditional�s ��
	
���t�{�{�1�1�3��<r%c���UR[RSS5 UR[RRSS5 UR[RRRSS5 UR[RR
SS5 UR[RR
RSS5 g)N��������������)rrT�cls203�cls204�cls205�cls207ris r#�test_multiple_children_classes�-TestBuggyCases.test_multiple_children_classes�s������t�{�{�C��5����t�{�{�1�1�3��<����t�{�{�1�1�8�8�#�s�C����t�{�{�1�1�3��<����t�{�{�1�1�8�8�#�s�Cr%c��UR[R"5SS5 UR[RSS5 UR[R"5R	5SS5 g)N������������)rrT�func212�cls213�func219ris r#�,test_nested_class_definition_inside_function�;TestBuggyCases.test_nested_class_definition_inside_function�sQ�����t�|�|�~�s�C�8����t�{�{�C��5����t�{�{�}�4�4�6��S�Ar%c�6�[R"5n[[RRUS[R-5SSS9nUR[R"S55 SSS5 [[RRUS[R-5SSS9nUR[R"S55 SSS5 [U5 SSKnURS	[R"UR55 [ R"R%S
5 SSS5 SSS5 g!,(df   N�=f!,(df   N�=f!,(df   N9=f!,(df   g=f)Nzinspect_actual%spyr�r�r�a?
                    import inspect_other
                    class A:
                        def f(self):
                            pass
                    class A:
                        def f(self):
                            pass  # correct one
                    A.f = inspect_other.A.f
                    zinspect_other%spyzx
                    class A:
                        def f(self):
                            pass
                    r�correct�inspect_actual)�tempfile�TemporaryDirectoryr��osr�r:�extsep�write�textwrap�dedentrr1rsrXrrVr^r_�pop)r^�tempdirr�r1s    r#�(test_class_with_method_from_other_module�7TestBuggyCases.test_class_with_method_from_other_module�s��
�
(�
(�
*�g��b�g�g�l�l�7�,@�2�9�9�,L�M��G�-�01�������	)�	�	�-��b�g�g�l�l�7�,?�"�)�)�,K�L��G�-�01�������)���-��w�'�%��
�
�i��):�):�>�;K�;K�)L�M������ 0�1�(�-+�
*�-�-��-�-��(�'��-+�
*�sU�;F
�&E�7AF
�9&E(�F
�2AE9�F
�
E%	�!F
�(
E6	�2F
�9
F	�F
�

Fzsocket.accept is brokenc���SSKnURURS5 URUR"[
R"55SS5 UR[
RSS5 UR[
RRSS5 URUR"[
R"5R55SS5 g)	Nr��������������)	r(�
addCleanupr)r�runrT�func225�cls226�func232)r^r(s  r#�2test_nested_class_definition_inside_async_function�ATestBuggyCases.test_nested_class_definition_inside_async_function�s���
	�����5�5�t�<����w�{�{�4�<�<�>�:�C��E����t�{�{�C��5����t�{�{�2�2�C��=����w�{�{�4�;�;�=�+@�+@�+B�C�S�#�Nr%c��UR[RSS5 UR[RSS5 g)Ni(i*i6i8)rrT�cls296�cls310ris r#�,test_class_definition_same_name_diff_methods�;TestBuggyCases.test_class_definition_same_name_diff_methods�s.�����t�{�{�C��5����t�{�{�C��5r%c��UR[[R5SS5 UR[[R"55SS5 g)Niyi|r%i�)r�nextrT�ge377�func383ris r#�test_generator_expression�(TestBuggyCases.test_generator_expression�s:�����t�D�J�J�/��c�:����t�D�L�L�N�3�S�#�>r%c��UR[RSS5 UR[RSS5 g)Ni�i�i�i�)rrT�func394�func400ris r#�*test_comment_or_empty_line_after_decorator�9TestBuggyCases.test_comment_or_empty_line_after_decorator�s.�����t�|�|�S�#�6����t�|�|�S�#�6r%r*N)-rUrlrmrnrTrr�r�r�r�r�r�r�rr�r�r�r��endswithr�r�r�r�r�r�r�r�r�r�r�rrr�requires_docstringsrr!r-r;�
is_emscripten�is_wasirJrOrUrZrzr*r%r#r�r� s!���L�:�>�=�4�:�4�E�
�_�_���j�9�9�F�!,�!5�!5�!>�!>�u�!E�C�E�D�E�D�
0�>�	%�	$�F�H�>�6�6�=�=�=�
� � �=�!�=�D�B�
2�<�_�_����0����!��O�	�O�6�?�7r%r�c�4^�\rSrSrU4SjrSrSrSrU=r$)�	TestNoEOLi�c��>�[S-Ul[R"UR5 [	[R
R
URS[R-5SSS9nURS5 SSS5 [UR5 SSK
nSSS5 WUl[TU]55 g!,(df   NF=f!,(df   N5=f)N�_dirzinspect_fodder3%spyr�r�r�zclass X:
    pass # No EOLr)rr:r4�mkdirr�r�r:r5r6r�inspect_fodder3r�superr)r^r��mod3�	__class__s   �r#r�TestNoEOL.setUp�s���������
�������
�"�'�'�,�,�t�|�|�-B�R�Y�Y�-N�O���)�,-�
�G�G�1�2�)��4�<�<�
(�*�)� ���
��
��
)�)��)�
(�s�4C�#C�
C�
C%c�D�[R"UR5 gr )�shutil�rmtreer:ris r#�tearDown�TestNoEOL.tearDown�s���
�
�d�l�l�#r%c�R�URURRSS5 g�Nr4r5)rr�Xris r#�
test_class�TestNoEOL.test_class�s �����t�0�0�2�2�A�q�9r%)rr:)	rUrlrmrnrrmrrrz�
__classcell__�rhs@r#rara�s���	�$�:�:r%rac��\rSrSr\rSrSrg)�TestComplexDecoratori�c�R�URURRSS5 g)Nii)rr�complex_decoratedris r#�test_parens_in_decorator�-TestComplexDecorator.test_parens_in_decorator�s �����t�0�0�B�B�C��Mr%r*N)rUrlrmrnrTrrzrzr*r%r#rwrw�s
���L�Nr%rwc�*�\rSrSrSrSrSrSrSrg)�_BrokenDataDescriptori�z*
A broken data descriptor. See bug #1785.
c��[S5e�Nzbroken data descriptorr��r"s r#r��_BrokenDataDescriptor.__get__�����5�6�6r%c��[er )�RuntimeErrorr�s r#�__set__�_BrokenDataDescriptor.__set__�s���r%c��[S5err�r�s r#ra�!_BrokenDataDescriptor.__getattr__�r�r%r*N)	rUrlrmrnrr�r�rarzr*r%r#r}r}�s���7��7r%r}c�$�\rSrSrSrSrSrSrg)�_BrokenMethodDescriptori�z,
A broken method descriptor. See bug #1785.
c��[S5e�Nzbroken method descriptorr�r�s r#r��_BrokenMethodDescriptor.__get__�����7�8�8r%c��[S5er�r�r�s r#ra�#_BrokenMethodDescriptor.__getattr__�r�r%r*N)rUrlrmrnrr�rarzr*r%r#r�r��s���9�9r%r�c�^�[R"U5Vs/sHoSSPM	 sn$s snf�Nr�)rX�classify_class_attrs)r�ts  r#�
attrs_wo_objsr�s+��"�7�7��<�=�<�a�b�q�E�<�=�=��=s�*c��\rSrSrSrSSS//S04SjrSrSrSrSr	\
R"\S	5S
5r
\\
R"\S	5S55r\\
R"\S	5S55rS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr Sr!Sr"Sr#S r$S!r%S"r&S#r'S$r(S%r)S&r*S'r+S(r,S)r-g)*�TestClassesAndFunctionsic���"SS[5n"SSU5n"SSU5n"SSX#5nXBX1[4n[R"U5nURXV5 g)	Nc��\rSrSrSrg)�4TestClassesAndFunctions.test_newstyle_mro.<locals>.Air*Nr-r*r%r#rVr�s��Dr%rVc��\rSrSrSrg)�4TestClassesAndFunctions.test_newstyle_mro.<locals>.Bir*Nr-r*r%r#�Br����Dr%r�c��\rSrSrSrg)�4TestClassesAndFunctions.test_newstyle_mro.<locals>.Ci	r*Nr-r*r%r#rpr�	r�r%rpc��\rSrSrSrg)�4TestClassesAndFunctions.test_newstyle_mro.<locals>.Di
r*Nr-r*r%r#�Dr�
���tr%r�)r�rX�getmror�)r^rVr�rpr�rF�gots       r#�test_newstyle_mro�)TestClassesAndFunctions.test_newstyle_mrosJ�� �� �����������!��'���n�n�Q�������'r%Nc
�*�[R"U5up�p�p�nURX�5 URX�5 URX�5 URX�5 URX�5 URX�5 URUU	5 gr )rX�getfullargspecr�)r^�routine�args_e�	varargs_e�varkw_e�
defaults_e�
posonlyargs_e�kwonlyargs_e�kwonlydefaults_e�ann_er"r�r��defaults�
kwonlyargs�kwonlydefaults�anns                 r#�assertFullArgSpecEquals�/TestClassesAndFunctions.assertFullArgSpecEqualss���
�"�"�7�+�	H��u�
�C�����&�����,�����(�����.�����2�����:�����e�$r%c	��UR[R/SS/SS0S9 UR[RS/S[0S9 UR[R
/S/S9 UR[R/SQS	S
/S9 UR[R/SQSSS	S
/S
9 UR[R/SQSS	S
/SSS.S9 g)N�arg1�arg2r4)r�r�r�)r�rK)r��r-rmrr�r�r�r"r�)r�r�r��r4r5r�r�r�)r�r�)r�r�r�)	r�rT�	keyworded�	annotatedrD�keyword_only_arg�all_markers� all_markers_with_args_and_kwargs�all_markers_with_defaultsris r#�test_getfullargspec�+TestClassesAndFunctions.test_getfullargspecs����$�$�T�^�^�R�6�39�(�7=�a�j�	%�	B�	
�$�$�T�^�^�f�X�,2�T�?�	%�	<��$�$�T�%:�%:�B�38�'�	%�	;�	
�$�$�T�%5�%5�7K�36��*�	%�	>�	
�$�$�T�%J�%J�%9�/5�-5�36��*�		%�	>�	
�$�$�T�%C�%C�EY�07�36��*�<=�A�6F�	%�	Hr%c���[R"[R5S5nUR	USS/5 UR	[R
"U5SS/5 g)Nc��gr r*�rur�s  r#�ham�ETestClassesAndFunctions.test_argspec_api_ignores_wrapped.<locals>.ham9���r%rur�)r�r�r�r�r�r
)r^r�s  r#� test_argspec_api_ignores_wrapped�8TestClassesAndFunctions.test_argspec_api_ignores_wrapped7sY��	������	"�	�
#�	�	
�$�$�S�3��*�5��$�$�Y�%6�%6�s�%;�&)�3�Z�	1r%c���Sn[R"S[RR5n[R"U4S9UlURUS/5 g)Nc��gr r*r*r%r#�test�HTestClassesAndFunctions.test_getfullargspec_signature_attr.<locals>.testB���r%r��r<)rX�	Parameter�POSITIONAL_ONLY�	Signature�
__signature__r�)r^r��
spam_params   r#�"test_getfullargspec_signature_attr�:TestClassesAndFunctions.test_getfullargspec_signature_attrAsL��	��&�&�v�w�/@�/@�/P�/P�Q�
�$�.�.�:�-�H����$�$�T�F�8�4r%c��SSjn[R"U5nURURUR5 Sn[R"U5nURURUR5 g)Nc��gr r*�r-s r#r��ITestClassesAndFunctions.test_getfullargspec_signature_annos.<locals>.testJ���Tr%c��gr r*r*r%r#r�r�N���Dr%)r-r��returnr�)rXr�r��__annotations__�annotations)r^r��specs   r#�#test_getfullargspec_signature_annos�;TestClassesAndFunctions.test_getfullargspec_signature_annosIs`��)��%�%�d�+������-�-�t�/?�/?�@���%�%�d�+������-�-�t�/?�/?�@r%�6Signature information for builtins requires docstringsc�2�UR[RRSS/5 UR[R"[R
"55RSS/5 UR[RS/SS/SSS.S9 g)	Nr^rar��dir_fd�follow_symlinksT)r�r�)r�r�r�)r��_pickle�Pickler�dump�io�BytesIOr4�statris r#�#test_getfullargspec_builtin_methods�;TestClassesAndFunctions.test_getfullargspec_builtin_methodsRs}��	
�$�$�W�_�_�%9�%9�F�E�?�K��$�$�W�_�_�R�Z�Z�\�%B�%G�%G�&�RW��Y��$�$�
�W�W��H�#�%6�7�)-�$�G�		%�	Ir%c��[R"S5nURn[R"U5nURURSS5 g)N�	_testcapir�avocado)r�
import_module�&docstring_with_signature_with_defaultsrXr�r�r�)r^r��builtinr�s    r#� test_getfullargspec_builtin_func�8TestClassesAndFunctions.test_getfullargspec_builtin_func_sH��"�/�/��<�	��B�B���%�%�g�.��������q�)�9�5r%c��[R"S5nURnUR[5 [
R"U5 SSS5 URnUR5nUR[4UR[4UR[4UR[4UR[4UR[4UR[4UR ["4UR$[4UR&[4UR([4UR*[4[,R,[4[.R0[4SR0[4[2R4[4[35R4[4[2R6[4[35R6[4[8R8R:S[4[8R8R<[4[>R:S["4[>R@["4/nSSK!nURE[FRH[45 UHYup'URMU5 URO[
R"U5[
R"U55 SSS5 M[ g!,(df   GN�=f![Ja N~f=f!,(df   M�=f)Nr�r8�utcnow�__class_getitem__r)(rr��docstring_no_signaturer�r�rXr��DocStringNoSignatureTest�docstring_no_signature_noargsr��docstring_no_signature_or�r�r��meth_noargs_classr��meth_o_classr��meth_noargs_static�
meth_o_static�meth_noargs_coexist�meth_o_coexist�timerC�lowerrW�add�__contains__r�r�r�rqr��_statr9r��S_IMODErKrDr�)r^r�r�rra�testsr�templates        r#�-test_getfullargspec_builtin_func_no_signature�ETestClassesAndFunctions.test_getfullargspec_builtin_func_no_signaturehsF��"�/�/��<�	��2�2��
�
�
�y�
)��"�"�7�+�*��0�0���0�0�2��
�
4�
4�k�B�
�
/�
/��8�
�_�_�.�/�
�Z�Z��%�
�_�_�.�/�
�Z�Z��%�
�
"�
"�$4�5�
�
�
�{�+�
�
#�
#�[�1�
�
�
��'�
�
$�
$�&6�7�
�
�
��-�
�Y�Y��$�
�Y�Y�(�)�
�X�X�'�(�
�W�W�k�"�
�U�Y�Y��$�
�
�
�{�+�
�U�
�
��-�
�
�
�
'�
'��
1�3C�D�
�
�
�
%�
%�'7�8�
�]�]�.�
/��=�
�
#�
#�[�1�1
��4	1��
�L�L�$�,�,��/�0�!&��G����g�&�� � ��!7�!7��!@�!(�!7�!7��!A�C�'�&�"'�O*�
)��B�	�
�	��'�&�s)�K�K"�;K2�
K�"
K/�.K/�2
L	c�`�[5H[n[R"U5n[UR5n[U5nUR
U5 URX45 M] [R"[5n[UR5nURU[5 gr )
rCrXr�rDr��sortedrTr�rL� unsorted_keyword_only_parameters�r^r��	signaturer��sorted_ls     r#�8test_getfullargspec_definition_order_preserved_on_kwonly�PTestClassesAndFunctions.test_getfullargspec_definition_order_preserved_on_kwonly�s���G�I�B��.�.�r�2�I��Y�)�)�*�A��a�y�H��O�O�A�����Q�)�J��*�*�+N�O�	���%�%�&������<�=r%c��"SS[5n[U5nURSS[4US5 URSS[4US5 URS	SU4US
5 URSSU4US
5 URSSU4US5 URSSU4USU-5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 "SSU5n[U5nURS	SU4US
5 URSSU4US
5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 "SSU5n[U5nURS	SU4US
5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 "S S!X45n[U5nURS	SU4US
5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 URSSU4US5 g)"Nc��\rSrSrSr\"\5rSr\"\5rSr\	"\5r
SrSrSr
\"5r\"5rSrg	)
�9TestClassesAndFunctions.test_classify_newstyle.<locals>.Ai�c��gr r*r*r%r#�s�;TestClassesAndFunctions.test_classify_newstyle.<locals>.A.s����Tr%c��gr r*rs r#r�;TestClassesAndFunctions.test_classify_newstyle.<locals>.A.c�s��r%c��gr r*ris r#�getp�>TestClassesAndFunctions.test_classify_newstyle.<locals>.A.getp����Dr%c��gr r*ris r#r��;TestClassesAndFunctions.test_classify_newstyle.<locals>.A.m����r%c��gr r*ris r#�m1�<TestClassesAndFunctions.test_classify_newstyle.<locals>.A.m1����$r%�1r*N)rUrlrmrnr rrr
r&r�r>r�r-�datablobr}�ddr��mdrzr*r%r#rVr�sA����Q��A���A��A� ����A����H�&�(�B�(�*�Br%rV�__new__�
static method�missing __new__r�rLzmissing __init__r zmissing static methodr�class method�missing class methodr>r�zmissing propertyr�zmissing plain method: %rr-�missing plain methodr1�datazmissing datar3zmissing method descriptorr2zmissing data descriptorc��\rSrSrSrSrg)�9TestClassesAndFunctions.test_classify_newstyle.<locals>.Bi�c��gr r*ris r#r��;TestClassesAndFunctions.test_classify_newstyle.<locals>.B.m�r+r%r*N)rUrlrmrnr�rzr*r%r#r�r<�s��r%r�c� �\rSrSrSrSrSrg)�9TestClassesAndFunctions.test_classify_newstyle.<locals>.Ci�c��gr r*ris r#r��;TestClassesAndFunctions.test_classify_newstyle.<locals>.C.m�r+r%c��gr r*ris r#r�;TestClassesAndFunctions.test_classify_newstyle.<locals>.C.c�r+r%r*N)rUrlrmrnr�rrzr*r%r#rpr@�s���r%rpc��\rSrSrSrSrg)�9TestClassesAndFunctions.test_classify_newstyle.<locals>.Di�c��gr r*ris r#r-�<TestClassesAndFunctions.test_classify_newstyle.<locals>.D.m1�r/r%r*N)rUrlrmrnr-rzr*r%r#r�rF�s��r%r�)r�r�rs)r^rV�attrsr�rpr�s      r#�test_classify_newstyle�.TestClassesAndFunctions.test_classify_newstyle�s���	+��	+�(�a� ���
�
�y�/�6�:�E�'�	)��
�
�z�8�V�4�e�=O�P��
�
�s�O�Q�/��8O�P��
�
�s�N�A�.��7M�N��
�
�s�J��*�E�3E�F��
�
�s�H�a�(�%�0�5�8�	:��
�
�t�X�q�)�5�2H�I��
�
�z�6�1�-�u�n�E��
�
�t�X�q�)�5�2M�N��
�
�t�V�Q�'��0I�J�	��	��a� ���
�
�s�O�Q�/��8O�P��
�
�s�N�A�.��7M�N��
�
�s�J��*�E�3E�F��
�
�s�H�a�(�%�1G�H��
�
�t�X�q�)�5�2H�I��
�
�z�6�1�-�u�n�E��
�
�t�X�q�)�5�2M�N��
�
�t�V�Q�'��0I�J�	��	�
�a� ���
�
�s�O�Q�/��8O�P��
�
�s�H�a�(�%�1G�H��
�
�s�J��*�E�3E�F��
�
�s�H�a�(�%�1G�H��
�
�t�X�q�)�5�2H�I��
�
�z�6�1�-�u�n�E��
�
�t�X�q�)�5�2M�N��
�
�t�V�Q�'��0I�J�	��	��a� ���
�
�s�O�Q�/��8O�P��
�
�s�H�a�(�%�1G�H��
�
�s�J��*�E�3E�F��
�
�s�H�a�(�%�1G�H��
�
�t�X�q�)�5�2H�I��
�
�z�6�1�-�u�n�E��
�
�t�X�q�)�5�2M�N��
�
�t�V�Q�'��0I�Jr%c���[[5H@n[[U5n[U[5(dM*[
R"U5 MB [[5nURSS[4US5 URSS[4US5 URSS[4US	5 URS
S[4US	5 URSS[4US	5 g)Nr4r5r6r9r7r8r8rLr9�__add__�__and__)�dir�__builtins__�getattr�
isinstancer�rXr�r��boolrsr�)r^r�r�rIs    r#�test_classify_builtin_types�3TestClassesAndFunctions.test_classify_builtin_types�s�����%�D��l�D�1�G��'�4�(�(��,�,�W�5�&�
�d�#���
�
�y�/�4�8�%�'�	)��
�
�|�^�S�9�5�,�	.��
�
�z�8�S�1�5�,�	.��
�
�y�(�C�0�%�,�	.��
�
�y�(�D�1�5�,�	.r%c�H�"SS[5n"SSUS9n[R"SSX"RS5nUR	U[R
"U55 [R"SSUS5nUR	U[R
"U55 g)	Nc�(^�\rSrSrU4SjrSrU=r$)�ITestClassesAndFunctions.test_classify_DynamicClassAttribute.<locals>.Metaic�0>�US:Xag[TU]U5$)Nr�r��rfra�r^r�rhs  �r#ra�UTestClassesAndFunctions.test_classify_DynamicClassAttribute.<locals>.Meta.__getattr__s����5�=�!��w�*�4�0�0r%r*�rUrlrmrnrarzrtrus@r#�MetarX�
���
1�
1r%r^c�8�\rSrSr\R
S5rSrg)�GTestClassesAndFunctions.test_classify_DynamicClassAttribute.<locals>.VAic��g)Nr�r*ris r#r��KTestClassesAndFunctions.test_classify_DynamicClassAttribute.<locals>.VA.ham���r%r*N)rUrlrmrnr��DynamicClassAttributer�rzr*r%r#�VAra���
�
(�
(�
�)�
r%rfr�r�r:r�)r�rX�	Attributer�rsr�)r^r^rf�should_find_dca�should_find_gas     r#�#test_classify_DynamicClassAttribute�;TestClassesAndFunctions.test_classify_DynamicClassAttribute
s���	1�4�	1�
	�4�	�"�+�+�E�6�2�{�{�5�?Q�R���
�
�o�w�'C�'C�B�'G�H� �*�*�5�&�$��G���
�
�n�g�&B�&B�2�&F�Gr%c��^�"U4SjS[5m"U4SjS[5n[R"SSXR5nUR	U[R
"U55 g)Nc�(>�\rSrSrU4SjrSrSrg)�DTestClassesAndFunctions.test_classify_overrides_bool.<locals>.NoBoolic�>�T"5$r r*)r^rb�NoBools  �r#�__eq__�KTestClassesAndFunctions.test_classify_overrides_bool.<locals>.NoBool.__eq__s
����x�r%c��[S5e)Nz,This object does not specify a boolean value��NotImplementedErrorris r#�__bool__�MTestClassesAndFunctions.test_classify_overrides_bool.<locals>.NoBool.__bool__s��)�B�D�Dr%r*N)rUrlrmrnrrrwrz�rqs�r#rqros���
 �
Dr%rqc�&>�\rSrSrY"5rSrg)�CTestClassesAndFunctions.test_classify_overrides_bool.<locals>.HasNBi"r*N)rUrlrmrnr2rzrys�r#�HasNBr{"s
�����Br%r|r2r:)r�rXrhr2rsr�)r^r|�should_find_attrrqs   @r#�test_classify_overrides_bool�4TestClassesAndFunctions.test_classify_overrides_boolsR���	D�V�	D�	�F�	�#�,�,�T�6�5�(�(�K���
�
�&��(D�(D�U�(K�Lr%c��"SS[5n"SSUS9n[R"SSUS5nURU[R"U55 g)	Nc��\rSrSrSrSrSrg)�MTestClassesAndFunctions.test_classify_metaclass_class_attribute.<locals>.Metai)�slapc�
�/SQ$)N)rhrlrU�fishr*ris r#�__dir__�UTestClassesAndFunctions.test_classify_metaclass_class_attribute.<locals>.Meta.__dir__+���F�Fr%r*N)rUrlrmrnr�r�rzr*r%r#r^r�)s
���D�
Gr%r^c��\rSrSrSrg)�NTestClassesAndFunctions.test_classify_metaclass_class_attribute.<locals>.Classi-r*Nr-r*r%r#�Classr�-r�r%r�r�r�r:r��r�rXrhrsr��r^r^r��should_finds    r#�'test_classify_metaclass_class_attribute�?TestClassesAndFunctions.test_classify_metaclass_class_attribute(sK��	G�4�	G�	�d�	��'�'����f�E���
�
�k�7�#?�#?��#F�Gr%c��"SS[5n"SSUS9n[R"SSUS5nURU[R"U55 g)	Nc�.^�\rSrSrSrU4SjrSrU=r$)�DTestClassesAndFunctions.test_classify_VirtualAttribute.<locals>.Metai3c�
�/SQ$)N)rhrlrU�BOOMr*rs r#r��LTestClassesAndFunctions.test_classify_VirtualAttribute.<locals>.Meta.__dir__4r�r%c�0>�US:Xag[TU]U5$)Nr�r7)rf�_Meta__getattrr[s  �r#ra�PTestClassesAndFunctions.test_classify_VirtualAttribute.<locals>.Meta.__getattr__6s����&�=���w�(��.�.r%r*�rUrlrmrnr�rarzrtrus@r#r^r�3s���
G�
/�
/r%r^c��\rSrSrSrg)�ETestClassesAndFunctions.test_classify_VirtualAttribute.<locals>.Classi:r*Nr-r*r%r#r�r�:r�r%r�r�r�r:r7r�r�s    r#�test_classify_VirtualAttribute�6TestClassesAndFunctions.test_classify_VirtualAttribute2sI��	/�4�	/�	�d�	��'�'����b�A���
�
�k�7�#?�#?��#F�Gr%c�^	^
�"SS[5m	"SS[5m
"U	U
4SjST	T
5n"SST	S	9n"S
SX!S	9n[R"SS
T	S5n[R"SS
T
S5n[R"SS
US5n[R"U5nXEU4HnUR	X�5 M g)Nc�.^�\rSrSrSrU4SjrSrU=r$)�STestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta1i@c�
�/SQ$)N)rhrlrU�oner*rs r#r��[TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta1.__dir__A���E�Er%c�0>�US:Xag[TU]U5$)Nr�r4rZr[s  �r#ra�_TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta1.__getattr__C�����%�<���w�*�4�0�0r%r*r�rus@r#�Meta1r�@����
F�
1�
1r%r�c�.^�\rSrSrSrU4SjrSrU=r$)�STestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta2iGc�
�/SQ$)N)rhrlrU�twor*rs r#r��[TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta2.__dir__Hr�r%c�0>�US:Xag[TU]U5$)Nr�r5rZr[s  �r#ra�_TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta2.__getattr__Jr�r%r*r�rus@r#�Meta2r�Gr�r%r�c�8>^�\rSrSrUU4SjrU4SjrSrU=r$)�STestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta3iNc
�>�[[[/SQTRU5-TRU5-555$)N)rhrlrU�three)rDrrWr�)rr�r�s ��r#r��[TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta3.__dir__OsC����F�3�'W��M�M�#�&�('�).���s�);�(<�$=�>�?�?r%c�0>�US:Xag[TU]U5$)Nr�r�rZr[s  �r#ra�_TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta3.__getattr__Rs����'�>���w�*�4�0�0r%r*r�)rhr�r�s@��r#�Meta3r�Ns���
?�
1�
1r%r�c��\rSrSrSrg)�TTestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Class1iVr*Nr-r*r%r#�Class1r�Vr�r%r�r�c��\rSrSrSrg)�TTestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Class2iXr*Nr-r*r%r#�Class2r�Xr�r%r�r�r:r4r�r5r�r�)r�rXrhr�rs)r^r�r�r��should_find1�should_find2�should_find3�cca�sfr�r�s         @@r#�,test_classify_VirtualAttribute_multi_classes�DTestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes?s����	1�D�	1�	1�D�	1�	1�	1�E�5�	1�	�u�	�	�V�	��(�(����q�A���(�(����q�A���(�(��&�%��C���*�*�6�2���|�<�B��M�M�"�"�=r%c��"SS[5n"SSUS9n[R"U5Vs/sHo3SPM	 nnURSU5 gs snf)Nc��\rSrSrSrSrg)�KTestClassesAndFunctions.test_classify_class_attrs_with_buggy_dir.<locals>.Micc�
�/SQ$�N)rhrU�missingr*rs r#r��STestClassesAndFunctions.test_classify_class_attrs_with_buggy_dir.<locals>.M.__dir__d���;�;r%r*N�rUrlrmrnr�rzr*r%r#�Mr�c���
<r%r�c��\rSrSrSrg)�KTestClassesAndFunctions.test_classify_class_attrs_with_buggy_dir.<locals>.Cifr*Nr-r*r%r#rpr�fr�r%rpr�rr�)r�rXr�rt�r^r�rpr-rIs     r#�(test_classify_class_attrs_with_buggy_dir�@TestClassesAndFunctions.test_classify_class_attrs_with_buggy_dirbsS��	<��	<�	�!�	�&�;�;�A�>�?�>�!�1��>��?�����E�*��@��Ac�F�"SS[5nSnU"[R5nU"[R5nUR	[R
"X5SURS4/5 UR	[R
"X5SURS4/5 "SSU5nUR	[R
"XS5SURS4/5 UR	[R
"XT5SURS4/5 g)Nc�0�\rSrSr\"5r\"5rSrg)�>TestClassesAndFunctions.test_getmembers_descriptors.<locals>.Ailr*N)	rUrlrmrnr}r2r�r3rzr*r%r#rVr�ls��&�(�B�(�*�Br%rVc�6^^�"SS[5mUU4SjnU$)Nc��\rSrSrSrg)�XTestClassesAndFunctions.test_getmembers_descriptors.<locals>.pred_wrapper.<locals>.Emptyisr*Nr-r*r%r#�Emptyr�ss��r%r�c�j>�S[U5;a[TUR5(agT"U5$)NrUF)rOr�rU)rur��preds ��r#r��ZTestClassesAndFunctions.test_getmembers_descriptors.<locals>.pred_wrapper.<locals>.wrappedus+�����Q��'�G�E�1�:�:�,F�,F� ��A�w�r%r�)r�r�r�s` @r#�pred_wrapper�ITestClassesAndFunctions.test_getmembers_descriptors.<locals>.pred_wrapperps���
��
�
��Nr%r3r2c��\rSrSrSrg)�>TestClassesAndFunctions.test_getmembers_descriptors.<locals>.Bi�r*Nr-r*r%r#r�r��r�r%r�)r�rXr�r�r�rrr�)r^rVr�r�r�r�s      r#�test_getmembers_descriptors�3TestClassesAndFunctions.test_getmembers_descriptorsks��	+��	+�		�*�'�*D�*D�E��'��(@�(@�A������+�+�A�B��A�J�J�t�$�
%�&�	(�����+�+�A�@��A�J�J�t�$�
%�&�	(�	��	�	
����+�+�A�B��A�J�J�t�$�
%�&�	(�����+�+�A�@��A�J�J�t�$�
%�&�	(r%c���"SS5nURSUR4[R"U55 UR	SUR4[R"U[R
55 U"5nURSUR4[R"U55 URSUR4[R"U[R
55 g)Nc��\rSrSrSrSrg)�9TestClassesAndFunctions.test_getmembers_method.<locals>.Bi�c��gr r*ris r#r��;TestClassesAndFunctions.test_getmembers_method.<locals>.B.f�r)r%r*N�rUrlrmrnr�rzr*r%r#r�r��r�r%r�r�)rsr�rXrrrtrs)r^r�rms   r#�test_getmembers_method�.TestClassesAndFunctions.test_getmembers_method�s���	�	�	
�
�
�s�A�C�C�j�'�"4�"4�Q�"7�8����#�q�s�s��W�%7�%7��7�;K�;K�%L�M�
�C���
�
�s�A�C�C�j�'�"4�"4�Q�"7�8��
�
�s�A�C�C�j�'�"4�"4�Q��8H�8H�"I�Jr%c��"SS5nU"S5nUR[R"U5SSUR4/5 UR[R"U[R5SUR4/5 g)Nc�&�\rSrSrSrSrSrSrg)�FTestClassesAndFunctions.test_getmembers_custom_dir.<locals>.CorrectDiri�c��Xlgr �r`r_s  r#r��OTestClassesAndFunctions.test_getmembers_custom_dir.<locals>.CorrectDir.__init__�s�� �	r%c� �URS-$rr�ris r#rL�MTestClassesAndFunctions.test_getmembers_custom_dir.<locals>.CorrectDir.method�s���y�y�1�}�$r%c�
�SS/$)Nr`rLr*ris r#r��NTestClassesAndFunctions.test_getmembers_custom_dir.<locals>.CorrectDir.__dir__�s
����)�)r%r�N)rUrlrmrnr�rLr�rzr*r%r#�
CorrectDirr��s��
!�
%�
*r%r�r�)r`r�rL�r�rXrrrLrs)r^r��cds   r#�test_getmembers_custom_dir�2TestClassesAndFunctions.test_getmembers_custom_dir�s}��	*�	*���]������+�+�B�/��
�r�y�y�!�2
�	�	
����+�+�B��0@�0@�A�
�r�y�y�!�D
�	r%c��"SS5nU"5nUR[R"U5SSUR4/5 UR[R"U[R5SUR4/5 g)Nc�$�\rSrSrSrSrSrSrg)�LTestClassesAndFunctions.test_getmembers_custom_broken_dir.<locals>.BrokenDiri�r4c� �URS-$r)�existingris r#rL�STestClassesAndFunctions.test_getmembers_custom_broken_dir.<locals>.BrokenDir.method�s���}�}�q�(�(r%c�
�/SQ$)N)rLr�rr*ris r#r��TTestClassesAndFunctions.test_getmembers_custom_broken_dir.<locals>.BrokenDir.__dir__�s��8�8r%r*N)rUrlrmrnrrLr�rzr*r%r#�	BrokenDirr�s���H�
)�
9r%r)rr4rLr�)r^r�bds   r#�!test_getmembers_custom_broken_dir�9TestClassesAndFunctions.test_getmembers_custom_broken_dir�s{��	9�	9��[������+�+�B�/��
�r�y�y�!�2
�	�	
����+�+�B��0@�0@�A�
�r�y�y�!�D
�	r%c�t�"SS5nU"5nUR[R"U5S/5 g)Nc��\rSrSrSrSrSrg)�TTestClassesAndFunctions.test_getmembers_custom_duplicated_dir.<locals>.DuplicatedDiri�r4c�
�SS/$)Nr`r*ris r#r��\TestClassesAndFunctions.test_getmembers_custom_duplicated_dir.<locals>.DuplicatedDir.__dir__�s
����'�'r%r*N)rUrlrmrnr`r�rzr*r%r#�
DuplicatedDirr�s���D�
(r%r)r`r4)r�rXrr)r^rr2s   r#�%test_getmembers_custom_duplicated_dir�=TestClassesAndFunctions.test_getmembers_custom_duplicated_dir�s8��	(�	(�
�_������+�+�B�/��2
�	r%c�\�"SS[5n"SSUS9n"SS5nURS[R"U55 URS	[R"U"555 U"5nURS
UR4[R"U55 g)Nc�(^�\rSrSrU4SjrSrU=r$)�CTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.Mi�c�0>�US:Xag[TU]U5$)Nr��	scrambledrZ)rr�rhs  �r#ra�OTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.M.__getattr__�s����6�>�&��w�*�4�0�0r%r*r]rus@r#r�r�r_r%r�c�8�\rSrSr\R
S5rSrg)�CTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.Ai�c��gr�r*ris r#r��HTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.A.eggs�rdr%r*N)rUrlrmrnr�rer�rzr*r%r#rVr�rgr%rVr�c��\rSrSrSrSrg)�CTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.Bi�c��gr r*)r^�	attributes  r#ra�OTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.B.__getattr__�rcr%r*Nrdr*r%r#r�r�rfr%r�)r�r)r�r�ra)r�rsrXrrra)r^r�rVr�rms     r#� test_getmembers_VirtualAttribute�8TestClassesAndFunctions.test_getmembers_VirtualAttribute�s���	1��	1�
	�!�	�	�	�	
�
�
�+�W�-?�-?��-B�C��
�
�&��(:�(:�1�3�(?�@�
�C���
�
�}�a�m�m�4�g�6H�6H��6K�Lr%c���"SS5nU"5n[R"U5n[R"U5nURS[R"US54U5 URS[R"US54U5 URS[R"US54U5 URS[R"US54U5 g)Nc�H�\rSrSr\S5r\RS5rSr	g)�9TestClassesAndFunctions.test_getmembers_static.<locals>.Ai�c��[er ruris r#r��>TestClassesAndFunctions.test_getmembers_static.<locals>.A.name����)�)r%c��[er ruris r#r��>TestClassesAndFunctions.test_getmembers_static.<locals>.A.eggs�r*r%r*N)
rUrlrmrnr�r�r�rer�rzr*r%r#rVr'�s,��
�
*��
*�
�
(�
(�
*�)�
*r%rVr�r�)rX�getmembers_staticrs�getattr_static)r^rVr-�instance_members�
class_memberss     r#�test_getmembers_static�.TestClassesAndFunctions.test_getmembers_static�s���	*�	*�
�C��"�4�4�Q�7���1�1�!�4�
��
�
�v�w�5�5�a��@�A�CS�T��
�
�v�w�5�5�a��@�A�CS�T��
�
�v�w�5�5�a��@�A�=�Q��
�
�v�w�5�5�a��@�A�=�Qr%c��"SS[5n"SSUS9n[R"U5Vs/sHo3SPM	 nnURSU5 gs snf)Nc��\rSrSrSrSrg)�ATestClassesAndFunctions.test_getmembers_with_buggy_dir.<locals>.Mi�c�
�/SQ$r�r*rs r#r��ITestClassesAndFunctions.test_getmembers_with_buggy_dir.<locals>.M.__dir__�r�r%r*Nr�r*r%r#r�r5�r�r%r�c��\rSrSrSrg)�ATestClassesAndFunctions.test_getmembers_with_buggy_dir.<locals>.Ci�r*Nr-r*r%r#rpr9�r�r%rpr�rr�)r�rXrrrtr�s     r#�test_getmembers_with_buggy_dir�6TestClassesAndFunctions.test_getmembers_with_buggy_dir�sR��	<��	<�	�!�	�&�1�1�!�4�5�4�!�1��4��5�����E�*��6r�c��S[S[4SjnUR[R"U5[[S.5 SSS.UlUR[R"U5SSS.5 UR[R"US[
5S9U[S.5 UR[R"US[
5S	9U[S.5 [nUR[R"U5[[S.5 UR[R"UR5[[S.5 UR[R"UR5[[URS
.5 UR[R"UR5[SURURS.5 UR[R"UR5SSS
S.5 UR[R"[505 UR[R"UR505 UR[R"UR505 UR[R"USS9[[S.5 UR[R"URSS9[[S.5 UR[R"URSS9[[URS
.5 UR[R"URSS9[[URURS.5 UR[R"URSS9[[URS.5 UR[R"[SS905 UR[R"URSS905 UR[R"URSS905 UR[R"USS9[[S.5 UR[R"URSS9[[S.5 UR[R"URSS9[[URS
.5 UR[R"URSS9[SURURS.5 UR[R"URSS9SSS
S.5 UR[R"[SS905 UR[R"URSS905 UR[R"URSS905 SnU"UR5nURU"SS5URSS55 URURURR5 UR[R"U5[[URS
.5 UR[R"USS9[[URS
.5 UR[R"USS9[[URS
.5 g)Nr-rmc��gr r*rls  r#r6�PTestClassesAndFunctions.test_get_annotations_with_stock_annotations.<locals>.foo�r�r%rlr6rCT��eval_strr��r@�globals�r-rmr��r-rmrr�r��MyClass�r-rmr�r@Fc�F^�[R"T5U4Sj5nU$)Nc�">�T"US-US-5$r�r*�r-rmr�s  �r#�wrapper�iTestClassesAndFunctions.test_get_annotations_with_stock_annotations.<locals>.times_three.<locals>.wrapper�����!�A�#�q��s�|�#r%r��r�rKs` r#�times_three�XTestClassesAndFunctions.test_get_annotations_with_stock_annotations.<locals>.times_three�#���
�_�_�R�
 �
$�!�
$��Nr%r4rur��xxx)r�rCr�rX�get_annotationsr�r�rrEr��	function2�	function3�UnannotatedClass�unannotated_function�assertIsNot�__globals__)r^r6�isarOr�s     r#�+test_get_annotations_with_stock_annotations�CTestClassesAndFunctions.test_get_annotations_with_stock_annotations�s{��#�#�#��#�����0�0��5�S�s�7K�L�$)�u�5�������0�0��5�U��7O�P�����0�0��t�F�H�U�]`�gj�Wk�l�����0�0��t�V�X�V�^a�hk�Xl�m�'������0�0��5�S�s�7K�L�����0�0����=�S�s�?S�T�����0�0����>�c�PS�_b�_j�_j�@k�l�����0�0����?�s�QV�]`�]h�]h�tw�t�t�BA�	B�����0�0����?�u�SX�_h�Ai�j�����0�0��9�2�>�����0�0��1E�1E�F��K�����0�0��1I�1I�J�B�O�����0�0��t�D�C�VY�FZ�[�����0�0����t�L�TW�^a�Nb�c�����0�0�����M�UX�_b�nq�ny�ny�Oz�{�����0�0�����N�VY�`c�jm�ju�ju�BE�BM�BM�QN�	O�����0�0�����N�VY�`c�jm�ju�ju�Pv�w�����0�0��4�H�"�M�����0�0��1E�1E�PT�U�WY�Z�����0�0��1I�1I�TX�Y�[]�^�����0�0��u�E�S�WZ�G[�\�����0�0����u�M�UX�_b�Oc�d�����0�0�����N�VY�`c�or�oz�oz�P{�|�����0�0�����O�WZ�af�mp�mx�mx�EH�EP�EP�RQ�	R�����0�0�����O�W\�ch�ox�Qy�z�����0�0��5�I�2�N�����0�0��1E�1E�PU�V�XZ�[�����0�0��1I�1I�TY�Z�\^�_�	��c�l�l�+�������C��#�+�+�a��*?�@�����,�,�c�l�l�.F�.F�G�����0�0��9��3�Z]�Ze�Ze�;f�g�����0�0��4�H�PS�Z]�il�it�it�Ju�v�����0�0��5�I�QT�[^�jm�ju�ju�Kv�wr%c���[nUR[R"U5SSS.5 UR[R"UR5SSS.5 UR[R"UR
5SSSS.5 UR[R"UR5SSSSS.5 UR[R"UR5SSS	S
.5 UR[R"UR505 UR[R"UR505 UR[R"USS9[[S.5 UR[R"URSS9[[S.5 UR[R"UR
SS9[[URS.5 UR[R"URSS9[SURURS.5 UR[R"URSS9SSSS
.5 UR[R"URSS905 UR[R"URSS905 UR[R"US
S9SSS.5 UR[R"URS
S9SSS.5 UR[R"UR
S
S9SSSS.5 UR[R"URS
S9SSSSS.5 UR[R"URS
S9SSS	S
.5 UR[R"URS
S905 UR[R"URS
S905 [nUR[R"U505 UR[R"USS905 UR[R"US
S905 S[[S4u4SjnUR[R"USS9S/[[S4Q7S05 SnU"UR
5nURU"SS5UR	SS55 URURUR
R5 UR[R"U5SSSS.5 UR[R"USS9[[URS.5 UR[R"US
S9SSSS.5 UR[R"UR 5SS05 UR[R"UR SS9S[05 g)Nr�rCrlrErC�'str'rD�'int'�	'MyClass'rFTrGFr".c��gr r*r�s r#r��STestClassesAndFunctions.test_get_annotations_with_stringized_annotations.<locals>.fFs��r%rc�F^�[R"T5U4Sj5nU$)Nc�">�T"US-US-5$r�r*rJs  �r#rK�nTestClassesAndFunctions.test_get_annotations_with_stringized_annotations.<locals>.times_three.<locals>.wrapperKrMr%r�rNs` r#rO�]TestClassesAndFunctions.test_get_annotations_with_stringized_annotations.<locals>.times_threeJrQr%r4rur�rR�mytype)rr�rXrSrEr�rTrUrVrWr�rCr�tuplerXrY�MyClassWithLocalAnnotations)r^rZ�isa2r�rOr�s      r#�0test_get_annotations_with_stringized_annotations�HTestClassesAndFunctions.test_get_annotations_with_stringized_annotations's9��,������0�0��5�U��7O�P�����0�0����=�U�QV�?W�X�����0�0����>�e�RW�cl�@m�n�����0�0����?�u�SZ�aj�v�BA�	B�����0�0����?�w�U\�cn�Ao�p�����0�0��1E�1E�F��K�����0�0��1I�1I�J�B�O�����0�0��t�D�C�VY�FZ�[�����0�0����t�L�TW�^a�Nb�c�����0�0�����M�UX�_b�nq�ny�ny�Oz�{�����0�0�����N�VY�`e�lo�lw�lw�DG�DO�DO�QP�	Q�����0�0�����N�V[�bg�nw�Px�y�����0�0��1E�1E�PT�U�WY�Z�����0�0��1I�1I�TX�Y�[]�^�����0�0��u�E�U�Y^�G_�`�����0�0����u�M�UZ�af�Og�h�����0�0�����N�V[�bg�s|�P}�~�����0�0�����O�W\�cj�qz�GP�RQ�	R�����0�0�����O�W^�el�s~�Q�	A�����0�0��1E�1E�PU�V�XZ�[�����0�0��1I�1I�TY�Z�\^�_�/������0�0��6��;�����0�0���E�r�J�����0�0���F��K�+�e�C��H�o�+�����0�0��T�B��1��c�3�h��1�!�4�5�	7�	��c�l�l�+�������C��#�+�+�a��*?�@�����,�,�c�l�l�.F�.F�G�����0�0��9��U�^g�;h�i�����0�0��4�H�PS�Z]�il�it�it�Ju�v�����0�0��5�I�QV�]b�nw�Kx�y�	
����0�0��1P�1P�Q�TW�Ya�Sb�c�����0�0��1P�1P�[_�`�cf�hk�bl�mr%c�L�[n[R"URSS9nURRnURUSUS5 UR
USRS[US5 URUSRSUS5 g)	NTrGrurr�r4r3r5)	rrXrSrV�__type_params__r�r��__args__r)r^�
ann_module695�
A_annotations�
A_type_paramss    r#�1test_pep695_generic_class_with_future_annotations�ITestClassesAndFunctions.test_pep695_generic_class_with_future_annotations[s���=�
��/�/�
���$�O�
�%���7�7�
��
�
�m�C�(�-��*:�;�����s�+�4�4�Q�7��
�a�@P�9Q�R��
�
�m�C�(�1�1�!�4�m�A�6F�Gr%c��[R"[RSS9nUR	U[
[[S.5 g)NTrG�rur�r3)rXrSrr�r�r�rC�bytes)r^�
B_annotationss  r#�Etest_pep695_generic_class_with_future_annotations_and_local_shadowing�]TestClassesAndFunctions.test_pep695_generic_class_with_future_annotations_and_local_shadowingcs6���/�/�1�3�3�d�
�
�	
����c��%�(H�Ir%c���[n[R"URSS9nUR	[UR
55[URR55 g�NTrG)rrXrSrpr�rW�valuesrn)r^rp�
C_annotationss   r#�Mtest_pep695_generic_class_with_future_annotations_name_clash_with_global_vars�eTestClassesAndFunctions.test_pep695_generic_class_with_future_annotations_name_clash_with_global_varsisN��=�
��/�/�
���$�O�
�����
�$�$�&�'��
���/�/�0�	
r%c��[n[R"URSS9nURRnURUR
51Sk5 URUSUS5 URUS[US5 URUSRUS	5 URUS
RUS	5 g)NTrG>rur�r3�zzr�rurr�r4r3r5r�)
rrXrS�generic_functionrnr��keysr�r�
__origin__)r^rp�generic_func_annotations�
func_t_paramss    r#�5test_pep_695_generic_function_with_future_annotations�MTestClassesAndFunctions.test_pep_695_generic_function_with_future_annotationsqs���=�
�#*�#:�#:��*�*�T�$
� �&�6�6�F�F�
����$�)�)�+�-L�	
�	
�
�
�.�s�3�]�1�5E�F����1�#�6��}�Q�?O�8P�Q��
�
�.�s�3�>�>�
�a�@P�Q��
�
�.�t�4�?�?��q�AQ�Rr%c	���UR[[R"[R
SS9R
55[[R
R55 gr|)r�rWrXrSr�generic_function_2r}rnris r#�Qtest_pep_695_generic_function_with_future_annotations_name_clash_with_global_vars�iTestClassesAndFunctions.test_pep_695_generic_function_with_future_annotations_name_clash_with_global_varssT�������'�'�9�L�L�!���&�(�	
�
�5�H�H�X�X�
�
	
r%c��[n[R"URRSS9nURRR
Vs0sHnURU_M nnURUUSUSSS.5 gs snf)NTrG�Foo�Bar)rur�r�)rrXrSr��generic_methodrnrUr�)r^rp�generic_method_annotations�param�paramss     r#�3test_pep_695_generic_method_with_future_annotations�KTestClassesAndFunctions.test_pep_695_generic_method_with_future_annotations�s���=�
�%,�%<�%<��O�O�*�*�T�&
�"�
'���7�7�G�G�
�G��
�N�N�E�!�G�	�
�	
���&���-�f�U�m�t�D�	
��	
s�Bc	��UR[[R"[R
RSS9R55[[R
RR55 gr|)	r�rWrXrSrr��generic_method_2r}rnris r#�Otest_pep_695_generic_method_with_future_annotations_name_clash_with_global_vars�gTestClassesAndFunctions.test_pep_695_generic_method_with_future_annotations_name_clash_with_global_vars�s`�������'�'�9�;�;�L�L�!���&�(�	
�
�5�7�7�H�H�X�X�
�
	
r%c�v�UR[R"[RSS9S[
05 g)NTrGru)r�rXrSr�ErCris r#�Ytest_pep_695_generic_method_with_future_annotations_name_clash_with_global_and_local_vars�qTestClassesAndFunctions.test_pep_695_generic_method_with_future_annotations_name_clash_with_global_and_local_vars�s2������#�#�5�7�7�$�
��#�J�		
r%c���[R"5nUR[URR55[URR55 UR[URR55[URRR55 UR[URR55[URR55 UR[URR55RURR5[55 URURS[05 UR[URR55[URR55 g)Nru)r�nestedr�rW�
F_annotationsr}�Frn�F_meth_annotationsr��assertNotEqual�intersection�
G_annotationsrCr��generic_func)r^�resultss  r#�@test_pep_695_generics_with_future_annotations_nested_in_function�XTestClassesAndFunctions.test_pep_695_generics_with_future_annotations_nested_in_function�sU��7�>�>�@�������%�%�,�,�.�/���	�	�)�)�*�	
�	
�����*�*�1�1�3�4���	�	�(�(�8�8�9�	
�	
�����*�*�1�1�3�4���	�	�)�)�*�	
�	
�����*�*�1�1�3�4�A�A�'�)�)�B[�B[�\��E�	
�
	
����.�.��c�
�;������0�0�7�7�9�:���$�$�4�4�5�	
r%r*).rUrlrmrnr�r�r�r�r�r�rr�r
r�rr�rrrJrTrkr~r�r�r�r�r�r�r�r
rr#r1r:r[rkrsryrr�r�r�r�r�r�rzr*r%r#r�r�s\��	(�BF�,0�T�24�2�59�*,�	
%�H�01�5�A��_�_�)�M�O�	I�O�	I��
�_�_�)�M�O�6�O��6��
�_�_�)�M�O�-C�O��-C�^	>�OK�b.�(
H�
M�H�H�!#�F+�(�@	K��$�(
�M�$R�"+�1x�f2n�hH�J�
�S�
�
�
�
�
r%r�c� �\rSrSrSrSrSrg)�TestFormatAnnotationi�c��SSKJnJnJn UR	[
R"U5S5 UR	[
R"U5S5 UR	[
R"US5S5 UR	[
R"US5S5 UR	[
R"US5S5 g)	Nr)rVr��ann1zUnion[List[str], int]�%Union[List[testModule.typing.A], int]�testModule.typingrVrb�testModule.typing.A)�test.typinganndata.ann_module9rVr�r�r�rX�formatannotation)r^rVr�r�s    r#�test_typing_replacement�,TestFormatAnnotation.test_typing_replacement�s���?�?�����1�1�#�6�8O�P�����1�1�$�7�9`�a�����1�1�!�5H�I�3�O�����1�1�!�W�=�?T�U�����$�$�T�+>�?�3�	
r%c��SSKJnJn UR[R
"[5"[5S5 UR[R
"S5"U5S5 "SS5nSUlUR[R
"U5"U5S5 UR[R
"[5"U5S5 UR[R
"U5"U5S	5 g)
Nr)rVr�r�r�c��\rSrSrSrg)�?TestFormatAnnotation.test_formatannotationrelativeto.<locals>.Bi�r*Nr-r*r%r#r�r��s��r%r�r�rVr�)	r�rVr�r�rX�formatannotationrelativetor�r�rl)r^rVr�r�s    r#�test_formatannotationrelativeto�4TestFormatAnnotation.test_formatannotationrelativeto�s���:�	
����.�.�v�6�t�<��	
�	
����.�.�t�4�Q�7�!�	
�
	��*�������.�.�q�1�!�4��	
�
	
����.�.�v�6�q�9�!�	
�	
����.�.�q�1�$�7�3�	
r%r*N)rUrlrmrnr�r�rzr*r%r#r�r��s��

� 
r%r�c�,�\rSrSrSrSrSrSrSrg)�TestIsMethodDescriptori�c�d�"SS5n"SSU5n"SS5n"SS5n"S	S
5n"SSUU5nUR[R"U"55S
5 UR[R"U"55S5 UR[R"U"55S5 UR[R"U"55S5 UR[R"U"55S5 UR[R"U"55S5 UR[R"U55 UR[R"U55 UR[R"U55 g)Nc��\rSrSrSrSrg)�HTestIsMethodDescriptor.test_custom_descriptors.<locals>.MethodDescriptori�c��gr r*�r^r�s  r#r��PTestIsMethodDescriptor.test_custom_descriptors.<locals>.MethodDescriptor.__get__����4r%r*N�rUrlrmrnr�rzr*r%r#�MethodDescriptorr�����'r%r�c��\rSrSrSrg)�KTestIsMethodDescriptor.test_custom_descriptors.<locals>.MethodDescriptorSubir*Nr-r*r%r#�MethodDescriptorSubr�r�r%r�c��\rSrSrSrSrg)�OTestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithNoGetic��gr r*r�s  r#r��WTestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithNoGet.__set__r�r%r*N�rUrlrmrnr�rzr*r%r#�DataDescriptorWithNoGetr�r�r%r�c� �\rSrSrSrSrSrg)�PTestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetSetic��gr r*r�s  r#r��XTestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetSet.__get__r�r%c��gr r*r�s  r#r��XTestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetSet.__set__r�r%r*N)rUrlrmrnr�r�rzr*r%r#�DataDescriptorWithGetSetr�s��'�'r%r�c� �\rSrSrSrSrSrg)�STestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetDeleteic��gr r*r�s  r#r��[TestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetDelete.__get__r�r%c��gr r*r�s  r#�
__delete__�^TestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetDelete.__delete__	s��dr%r*N)rUrlrmrnr�r�rzr*r%r#�DataDescriptorWithGetDeleter�s��'�*r%r�c��\rSrSrSrg)�ITestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorSubi
r*Nr-r*r%r#�DataDescriptorSubr�
s��r%r�z6__get__ and no __set__/__delete__ => method descriptorzB__get__ (inherited) and no __set__/__delete__ => method descriptorz3__set__ (and no __get__) => not a method descriptorz.__get__ and __set__ => not a method descriptorz1__get__ and __delete__ => not a method descriptorz:__get__, __set__ and __delete__ => not a method descriptor)rTrXr�r])r^r�r�r�r�r�r�s       r#�test_custom_descriptors�.TestIsMethodDescriptor.test_custom_descriptors�sw��	(�	(�	�"2�	�	(�	(�	(�	(�	+�	+�	� 7� ;�	�
	
����&�&�'7�'9�:�D�	F�	
����&�&�':�'<�=�
$�	%�	
����&�&�'>�'@�A�A�	C�	
����&�&�'?�'A�B�<�	>�	
����&�&�'B�'D�E�?�	A�	
����&�&�'8�':�;�H�	J�
	
����3�3�4D�E�F�����3�3�4G�H�I�����3�3�4E�F�Gr%c��[Rn"SS5n"SS5nSnSnUR[R"U5S5 UR[R"UR
S5S	5 UR[R"UR
S
5S5 UR
[R"UR
S5S
5 UR
[R"UR
S5S5 UR
[R"U"5R55 UR
[R"U"5R55 UR
[R"U"5R55 UR
[R"UR55 UR
[R"UR55 UR
[R"UR55 UR
[R"U55 UR
[R"U55 UR
[R"[R"U555 g)Nc�J�\rSrSrSr\S5r\S5r\	S5r
Srg)�>TestIsMethodDescriptor.test_builtin_descriptors.<locals>.Owneri,c��gr r*ris r#�instance_method�NTestIsMethodDescriptor.test_builtin_descriptors.<locals>.Owner.instance_method-���tr%c��gr r*rs r#rP�KTestIsMethodDescriptor.test_builtin_descriptors.<locals>.Owner.class_method.���#'r%c��gr r*r*r%r#rS�LTestIsMethodDescriptor.test_builtin_descriptors.<locals>.Owner.static_method0���!%r%c��gr r*ris r#�
a_property�ITestIsMethodDescriptor.test_builtin_descriptors.<locals>.Owner.a_property2s��"&r%r*N)rUrlrmrnr�r
rPrrSr�r�rzr*r%r#�Ownerr�,s/��+�
�'��'�
�%��%�
�&��&r%r�c��\rSrSrSrSrg)�DTestIsMethodDescriptor.test_builtin_descriptors.<locals>.Slotermeyeri4)�a_slotr*Nrnr*r%r#�Slotermeyerr�4s��!�Ir%r�c��gr r*r*r%r#r��ATestIsMethodDescriptor.test_builtin_descriptors.<locals>.function6r�r%c��gr r*r*r%r#r��ATestIsMethodDescriptor.test_builtin_descriptors.<locals>.<lambda>8���4r%z-a builtin slot wrapper is a method descriptorrPz+a classmethod object is a method descriptorrSz,a staticmethod object is a method descriptorr�z%a property is not a method descriptorr�z!a slot is not a method descriptor)r�rMrTrXr�r�r]r�rPrSr�r
)r^�builtin_slot_wrapperr�r�r��a_lambdas      r#�test_builtin_descriptors�/TestIsMethodDescriptor.test_builtin_descriptors*s��"�{�{��	'�	'�	"�	"�	���	
����&�&�';�<�;�	=�	
����&�&�u�~�~�n�'E�F�9�	;�	
����&�&�u�~�~�o�'F�G�:�	<�
	
����&�&�u�~�~�l�'C�D�3�	5�	
����&�&�{�';�';�H�'E�F�/�	1�	
����3�3�E�G�4K�4K�L�M�����3�3�E�G�4H�4H�I�J�����3�3�E�G�4I�4I�J�K�����3�3�E�4I�4I�J�K�����3�3�E�4F�4F�G�H�����3�3�E�4G�4G�H�I�����3�3�H�=�>�����3�3�H�=�>�����3�3�I�4E�4E�h�4O�P�Qr%c��"SS[5n"SSUS9nUR[R"U5S5 g)Nc��\rSrSrSrSrg)�RTestIsMethodDescriptor.test_descriptor_being_a_class.<locals>.MethodDescriptorMetai[c��gr r*r�s  r#r��ZTestIsMethodDescriptor.test_descriptor_being_a_class.<locals>.MethodDescriptorMeta.__get__\r�r%r*Nr�r*r%r#�MethodDescriptorMetar[r�r%rc��\rSrSrSrg)�XTestIsMethodDescriptor.test_descriptor_being_a_class.<locals>.ClassBeingMethodDescriptori]r*Nr-r*r%r#�ClassBeingMethodDescriptorr
]r�r%rr�z3classes (instances of type) are explicitly excluded)r�r]rXr�)r^rrs   r#�test_descriptor_being_a_class�4TestIsMethodDescriptor.test_descriptor_being_a_classZs>��	(�4�	(�	�3G�	�
	
����&�&�'A�B�A�	Cr%c�L�"SS5nUR[R"U"555 UR[R"U55 UR[R"S/55 UR[R"S55 g)Nc��\rSrSrSrg)�9TestIsMethodDescriptor.test_non_descriptors.<locals>.Testigr*Nr-r*r%r#�Testrgr�r%rr7)r]rXr��r^rs  r#�test_non_descriptors�+TestIsMethodDescriptor.test_non_descriptorsfst��	�	�����3�3�D�F�;�<�����3�3�D�9�:�����3�3�R�D�9�:�����3�3�B�7�8r%r*N)	rUrlrmrnr�rrrrzr*r%r#r�r��s��+H�Z.R�`
C�9r%r�c�,�\rSrSrSrSrSrSrSrg)�TestIsDataDescriptorioc��"SS5n"SS5n"SS5n"SS5nUR[R"U"55S	5 UR[R"U"55S
5 UR[R"U"55S5 UR[R"U"55S5 g)
Nc��\rSrSrSSjrSrg)�GTestIsDataDescriptor.test_custom_descriptors.<locals>.NonDataDescriptorirNc��gr r*)r^�valuer�s   r#r��OTestIsDataDescriptor.test_custom_descriptors.<locals>.NonDataDescriptor.__get__ss��r%r*r r�r*r%r#�NonDataDescriptorrrs��5r%rc��\rSrSrSrSrg)�ETestIsDataDescriptor.test_custom_descriptors.<locals>.DataDescriptor0itc��gr r*)r^r�rs   r#r��MTestIsDataDescriptor.test_custom_descriptors.<locals>.DataDescriptor0.__set__u���Dr%r*Nr�r*r%r#�DataDescriptor0rts��0r%r#c��\rSrSrSrSrg)�ETestIsDataDescriptor.test_custom_descriptors.<locals>.DataDescriptor1ivc��gr r*)r^r�s  r#r��PTestIsDataDescriptor.test_custom_descriptors.<locals>.DataDescriptor1.__delete__w���r%r*N)rUrlrmrnr�rzr*r%r#�DataDescriptor1r%vs��,r%r)c��\rSrSrSrSrg)�ETestIsDataDescriptor.test_custom_descriptors.<locals>.DataDescriptor2ixNr*r�r*r%r#�DataDescriptor2r+xs���Gr%r,z-class with only __get__ not a data descriptorz'class with __set__ is a data descriptorz*class with __delete__ is a data descriptorz.class with __set__ = None is a data descriptor)r]rXr�rT)r^rr#r)r,s     r#r��,TestIsDataDescriptor.test_custom_descriptorsqs���	6�	6�	1�	1�	-�	-�	�	�����1�1�2C�2E�F�H�	J�����0�0��1B�C�A�	C�����0�0��1B�C�D�	F�����0�0��1B�C�H�	Jr%c�x�"SS5nUR[R"UR5S5 g)Nc��\rSrSrSrSrg)�/TestIsDataDescriptor.test_slot.<locals>.Slottedi��r6r*Nrnr*r%r#�Slottedr0�s���Ir%r2za slot is a data descriptor)rTrXr�r6)r^r2s  r#�	test_slot�TestIsDataDescriptor.test_slot�s,��	�	�����0�0����=�5�	7r%c�x�"SS5nUR[R"UR5S5 g)Nc�$�\rSrSr\S5rSrg)�6TestIsDataDescriptor.test_property.<locals>.Propertiedi�c��gr r*ris r#r��ATestIsDataDescriptor.test_property.<locals>.Propertied.a_property�r�r%r*N)rUrlrmrnr�r�rzr*r%r#�
Propertiedr7�s��
�
��
r%r:za property is a data descriptor)rTrXr�r�)r^r:s  r#�
test_property�"TestIsDataDescriptor.test_property�s0��	�	�	
����0�0��1F�1F�G�9�	;r%c��"SS[5nSnSnUR[R"U"5R5S5 UR[R"U"5R
5S5 UR[R"U"5R5S5 UR[R"U5S5 UR[R"U5S	5 g)
Nc�:�\rSrSrSr\S5r\S5rSr	g)�1TestIsDataDescriptor.test_functions.<locals>.Testi�c��gr r*ris r#r��ATestIsDataDescriptor.test_functions.<locals>.Test.instance_method�r�r%c��gr r*rs r#rP�>TestIsDataDescriptor.test_functions.<locals>.Test.class_method�r�r%c��gr r*r*r%r#rS�?TestIsDataDescriptor.test_functions.<locals>.Test.static_method�r�r%r*N)
rUrlrmrnr�r
rPrrSrzr*r%r#rr?�s!��+�
�'��'�
�%��%r%rc��gr r*r*r%r#r��5TestIsDataDescriptor.test_functions.<locals>.function�r�r%c��gr r*r*r%r#r��5TestIsDataDescriptor.test_functions.<locals>.<lambda>�r�r%z*a instance method is not a data descriptorz'a class method is not a data descriptorz(a static method is not a data descriptorz#a function is not a data descriptorz!a lambda is not a data descriptor)r�r]rXr�r�rPrS)r^rr�rs    r#�test_functions�#TestIsDataDescriptor.test_functions�s���	&�6�	&�	�������1�1�$�&�2H�2H�I�E�	G�����1�1�$�&�2E�2E�F�B�	D�����1�1�$�&�2F�2F�G�C�	E�����1�1�(�;�>�	@�����1�1�(�;�<�	>r%r*N)	rUrlrmrnr�r3r;rJrzr*r%r#rros��J�$7�;�>r%rc�V�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rg)�TestGetClosureVarsi�c���Sn[5nSU0nS[0nS[0nS1n[R"X4XV5nUR[R"U"U55U5 g)Nc�^�U4SjnU$)Nc�2>�[UT[[5 gr ��print�_global_ref�unbound_ref��	local_ref�nonlocal_refs �r#r��=TestGetClosureVars.test_name_resolution.<locals>.f.<locals>.g�s����i��{�K�Hr%r*�rWr�s` r#r��2TestGetClosureVars.test_name_resolution.<locals>.f�s���
I��Hr%rWrSrRrT�r�rSrRrX�ClosureVarsr��getclosurevars�r^r��_arg�
nonlocal_vars�global_vars�builtin_vars�
unbound_namesrFs        r#�test_name_resolution�'TestGetClosureVars.test_name_resolution�sj��	��x��'��.�
�$�k�2����'��&��
��&�&�}�'3�D������/�/��$��8�(�Cr%c���Sn[5nSU0nS[0nS[0nS1n[R"X4XV5nUR[R"U"U55U5 g)Nc�^�U4SjnU$)Nc3�B># �[UT[[5 Sv� g7fr rQrUs �r#r��?TestGetClosureVars.test_generator_closure.<locals>.f.<locals>.g�s�����i��{�K�H��s�r*rYs` r#r��4TestGetClosureVars.test_generator_closure.<locals>.f�s���
��Hr%rWrSrRrTr[r^s        r#�test_generator_closure�)TestGetClosureVars.test_generator_closure�sj��	�
�x��'��.�
�$�k�2����'��&��
��&�&�}�'3�D������/�/��$��8�(�Cr%c��"SS5n[5nSU0nS[0nS[0nS1n[R"X4XV5nUR[R"U"5RU55U5 g)Nc��\rSrSrSrSrg)�1TestGetClosureVars.test_method_closure.<locals>.Ci�c�^�U4SjnU$)Nc�2>�[UT[[5 gr rQrUs �r#r��>TestGetClosureVars.test_method_closure.<locals>.C.f.<locals>.g�s����)�\�;��Lr%r*)r^rWr�s ` r#r��3TestGetClosureVars.test_method_closure.<locals>.C.f�s���M��r%r*Nr�r*r%r#rpro�s��
r%rprWrSrRrT)r�rSrRrXr\r�r]r�)r^rpr_r`rarbrcrFs        r#�test_method_closure�&TestGetClosureVars.test_method_closure�su��	�	�
�x��'��.�
�$�k�2����'��&��
��&�&�}�'3�D������/�/�����d��<�h�Gr%c��^�"SS5mU4SjnST0nS[0nS[0nS1n[R"X#XE5nUR	[R
"U5U5 g)Nc�"�\rSrSr\"5rSrg)�DTestGetClosureVars.test_attribute_same_name_as_global_var.<locals>.Ci�r*N)rUrlrmrnr�rSrzr*r%r#rprx�s	�� �(�Kr%rpc�:>�[TR[5 gr )rRrS)rps�r#r��DTestGetClosureVars.test_attribute_same_name_as_global_var.<locals>.f�s����!�-�-��-r%rSrR)rSrRrXr\r�r])r^r�r`rarbrcrFrps       @r#�&test_attribute_same_name_as_global_var�9TestGetClosureVars.test_attribute_same_name_as_global_var�sg���	#�	#�	.��a��
�$�k�2����'��&��
��&�&�}�'3�D������/�/��2�H�=r%c�`^^^	�Sm	SnSnSnU4SjmUU	U4SjnU"S5nU"S5nU"US	5nTRT	"U5S
S05 TRT	"U5S
S05 TRT	"U5S	US.5 TRT	"S"S
55S
S
05 T"U5 g)Nc�B�[R"U5R$r )rXr]�	nonlocals�r�s r#�_nonlocal_vars�=TestGetClosureVars.test_nonlocal_vars.<locals>._nonlocal_vars�s���)�)�!�,�6�6�6r%c�^�U4SjnU$)Nc�>�TU-$r r*�r�rus �r#r�FTestGetClosureVars.test_nonlocal_vars.<locals>.make_adder.<locals>.add�s����1�u�r%r*)rurs` r#�
make_adder�9TestGetClosureVars.test_nonlocal_vars.<locals>.make_adder�s
���
��Jr%c�^^�UU4Sj$)Nc�>�T"TU5$r r*)r�r�r�s ��r#r��FTestGetClosureVars.test_nonlocal_vars.<locals>.curry.<locals>.<lambda>�s����T�4� 0r%r*)r�r�s``r#�curry�4TestGetClosureVars.test_nonlocal_vars.<locals>.curry�s	���0�0r%c�
�X:$r r*rls  r#�	less_than�8TestGetClosureVars.test_nonlocal_vars.<locals>.less_than��	���5�Lr%c�0>^�U4SjnUTlU"U5$)Nc�>^�T"U4Sj5$)Nc� >�T"T5"U5$r r*)rur�s �r#r��MTestGetClosureVars.test_nonlocal_vars.<locals>.Y.<locals>.g.<locals>.<lambda>�s
���A�a�D��Gr%r*)r��les`�r#r��;TestGetClosureVars.test_nonlocal_vars.<locals>.Y.<locals>.g�s����+�,�,r%)�g_ref)r�r��Ys` �r#r��0TestGetClosureVars.test_nonlocal_vars.<locals>.Y�s���
-��A�G��Q�4�Kr%c�N>�TRT"U5STR05 g)Nr�)r�r�)r�r�r�r^s ���r#�check_y_combinator�ATestGetClosureVars.test_nonlocal_vars.<locals>.check_y_combinator�s ������^�D�1�C����>�Br%r4r5r�ru)r�r�c�^�U4Sj$)Nc�>�TU-$r r*r�s �r#r��ITestGetClosureVars.test_nonlocal_vars.<locals>.<lambda>.<locals>.<lambda>	s	���Q��Ur%r*�rus`r#r��7TestGetClosureVars.test_nonlocal_vars.<locals>.<lambda>	s���?r%r�)r�)
r^r�r�r�r��inc�add_two�greater_than_fiver�r�s
`       @@r#�test_nonlocal_vars�%TestGetClosureVars.test_nonlocal_vars�s����	7�	�
	1�	�	�	C���m���Q�-��!�)�Q�/�������,�s�A�h�7������0�3��(�;�����(9�:�"#�Y�7�	9�����)B�A�(F�G��q��	#�	�
�r%c���Sn[R"000[55nUR[R"S5U5 UR[R"U5U5 g)Nc��gr r*r*r%r#r6�9TestGetClosureVars.test_getclosurevars_empty.<locals>.foo	r�r%c��g�NTr*r*r%r#r��>TestGetClosureVars.test_getclosurevars_empty.<locals>.<lambda>
	s��r%)rXr\rWr�r])r^r6�_emptys   r#�test_getclosurevars_empty�,TestGetClosureVars.test_getclosurevars_empty
	sS����$�$�R��R���7������/�/��=�v�F�����/�/��4�f�=r%c��"SS5nUR[[RS5 UR[[R[5 UR[[R05 g)Nc��\rSrSrSrg)�7TestGetClosureVars.test_getclosurevars_error.<locals>.Ti	r*Nr-r*r%r#�Tr�	���r%r�r4)r�r�rXr]rD)r^r�s  r#�test_getclosurevars_error�,TestGetClosureVars.test_getclosurevars_error	sO���
����)�W�%;�%;�Q�?����)�W�%;�%;�T�B����)�W�%;�%;�R�@r%c�.�Sn0n[X5 USU4$)Nzdef f(): print(path)r�)r;)r^rr�s   r#�_private_globals�#TestGetClosureVars._private_globals	s!��)��
���T���#�w��{�r%c���UR5upURSS5 [R"00S[0S15nUR[R"U5U5 g)NrPrRr�)r�r9rXr\rRr�r]�r^r�r�rFs    r#�test_builtins_fallback�)TestGetClosureVars.test_builtins_fallback	sW���%�%�'���
���~�t�$��&�&�r�2������I������/�/��2�H�=r%c��UR5upSS0US'[R"00SS0S15nUR[R"U5U5 g)Nr�r4rPrR)r�rXr\r�r]r�s    r#�test_builtins_as_dict�(TestGetClosureVars.test_builtins_as_dict"	sW���%�%�'���$�Q�Z��>���&�&�r�2��q�z�G�9�E������/�/��2�H�=r%c���UR5up[US'[R"00S[R0S15nUR[R"U5U5 g)NrPr�rR)r�r4rXr\r�r�r]r�s    r#�test_builtins_as_module�*TestGetClosureVars.test_builtins_as_module(	sX���%�%�'�����>���&�&�r�2��r�w�w�/?�'��K������/�/��2�H�=r%r*N)rUrlrmrnrdrkrtr{r�r�r�r�r�r�r�rzr*r%r#rMrM�s>��
D�
D�
H�>�$�L>�A��>�>�>r%rMc�X�\rSrSrSSjrSSjrSrSrSrSr	S	r
S
rSrSr
S
rg)�TestGetcallargsFunctionsi/	Nc��[U=(d 0US9n[SU-SU5n[SU-SU5nURXE5 g)Nr��func(%s)�inspect.getcallargs(func, %s))rqrSr�)r^r��call_params_string�locs�r1�r2s      r#�assertEqualCallArgs�,TestGetcallargsFunctions.assertEqualCallArgs1	sL���D�J�B�T�*��
�*�1�1�4��
>��
�1�4F�F��������� r%c��[U=(d 0US9n[SU-SU5 URS5 [SU-SU5 URS5 UR	[W5[W55 UR
[U5[U55 AAg![anUnSnAN~SnAff=f![anUnSnANuSnAff=f)Nr�r�zException not raisedr�)rqrS�failr�r�r�r�rC)r^r��call_param_stringr�r��ex1�ex2s       r#�assertEqualException�-TestGetcallargsFunctions.assertEqualException8	s����D�J�B�T�*��	.���/�/��t�<�
�I�I�,�-�	.��0�3D�D�d��
�

�I�I�,�-��
�
�d�3�i��c��+�����S��3�s�8�,�����	��C��	���	��C��	�s.�B#�B<�#
B9�-B4�4B9�<
C�C
�
Cc� �Sn[X!-5$)z+Create a function that returns its locals()zlambda %s: locals())rS)r^rrs   r#�makeCallable�%TestGetcallargsFunctions.makeCallableK	s��$���D�$�%�%r%c��URS5nURUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS	5 URUS
5 URUS5 URUS5 URUS
5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 g)N�a, b=1�2�2, 3�a=2zb=3, a=2z2, b=3z*(2,)z*[2]z*(2, 3)z*[2, 3]z	**{"a":2}zb=3, **{"a":2}z2, **{"b":3}z**{"b":3, "a":2}z*collections.UserList([2])z*collections.UserList([2, 3])z**collections.UserDict(a=2)z2, **collections.UserDict(b=3)z b=2, **collections.UserDict(a=3)�r�r��r^r�s  r#�
test_plain�#TestGetcallargsFunctions.test_plainP	s9�����h�'��� � ��C�(�� � ��F�+�� � ��E�*�� � ��J�/�� � ��H�-�� � ��G�,�� � ��F�+�� � ��I�.�� � ��I�.�� � ��K�0�� � ��$4�5�� � ��N�3�� � ��$6�7�� � ��$@�A�� � ��$C�D�� � ��$A�B�� � ��$D�E�� � ��$F�Gr%c��URS5nURUS5 URUS5 URUS5 URUS5 URUS5 URUS5 g)Nz
a, b=1, *cr�r��2, 3, 4z*(2,3,4)z	2, *[3,4]z 2, 3, *collections.UserList([4])r�r�s  r#�test_varargs�%TestGetcallargsFunctions.test_varargsg	ss�����l�+��� � ��C�(�� � ��F�+�� � ��I�.�� � ��J�/�� � ��K�0�� � ��$F�Gr%c�j�URS5nURUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS	5 URUS
5 g)Nza, b=1, **cr�z2, b=3, c=4z
b=3, a=2, c=4zc=4, **{"a":2, "b":3}z2, c=4, **{"b":3}zb=2, **{"a":3, "c":4}z%**collections.UserDict(a=2, b=3, c=4)z#2, c=4, **collections.UserDict(b=3)z%b=2, **collections.UserDict(a=3, c=4)r�r�s  r#�
test_varkw�#TestGetcallargsFunctions.test_varkwp	s������m�,��� � ��E�*�� � ��M�2�� � ��O�4�� � ��$;�<�� � ��$7�8�� � ��$;�<�� � ��$K�L�� � ��$I�J�� � ��$K�Lr%c��URS5nURUS5 URUS5 URUS5 URUS5 URUS5 URUS5 g)N�**cr8za=1za=1, b=2zc=3, **{"a": 1, "b": 2}z **collections.UserDict(a=1, b=2)z%c=3, **collections.UserDict(a=1, b=2)r�r�s  r#�test_varkw_only�(TestGetcallargsFunctions.test_varkw_only|	su�����e�$��� � ��B�'�� � ��E�*�� � ��J�/�� � ��$=�>�� � ��$F�G�� � ��$K�Lr%c���URS5nURUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS	5 URS
5nURUS5 URUS5 URUS5 g)
Nza=3, *, c, d=2zc=3zc=3, a=3za=2, c=4z4, c=4r8�3za=3zd=4z	*, c, d=2zc=3, d=4zd=4, c=3)r�r�r�r�s  r#�test_keyword_only�*TestGetcallargsFunctions.test_keyword_only�	s������.�/��� � ��E�*�� � ��J�/�� � ��J�/�� � ��H�-��!�!�!�R�(��!�!�!�S�)��!�!�!�U�+��!�!�!�U�+����k�*��� � ��E�*�� � ��J�/�� � ��J�/r%c��URS5nURUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URS	5nURUS5 URUS5 URUS
5 URUS5 URUS5 URUS
5 g)Nza, b=2, *f, **gz2, 3, 7z	2, 3, x=8z2, 3, x=8, *[(4,[5,6]), 7]z2, x=8, *[3, (4,[5,6]), 7], y=9zx=8, *[2, 3, (4,[5,6])], y=9z@x=8, *collections.UserList([2, 3, (4,[5,6])]), **{"y":9, "z":10}zP2, x=8, *collections.UserList([3, (4,[5,6])]), **collections.UserDict(y=9, z=10)za, b=2, *f, x, y=99, **gz%2, x=8, *[3, (4,[5,6]), 7], y=9, z=10z"x=8, *[2, 3, (4,[5,6])], y=9, z=10zEx=8, *collections.UserList([2, 3, (4,[5,6])]), q=0, **{"y":9, "z":10}zU2, x=8, *collections.UserList([3, (4,[5,6])]), q=0, **collections.UserDict(y=9, z=10)r�r�s  r#�test_multiple_features�/TestGetcallargsFunctions.test_multiple_features�	s�����/�0��� � ��I�.�� � ��K�0�� � ��$@�A�� � ��$E�F�� � ��$B�C�� � ��%I�	J�� � ��%.�	/�
���8�9��� � ��K�0�� � ��$@�A�� � ��$K�L�� � ��$H�I�� � ��%N�	O�� � ��%.�	/r%c��URS5nURS5nURS5nURUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 X#4H�nURUS	5 URUS
5 URUS5 URUS5 URUS
5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 M� URS5nURUS5 URUS5 URS5nURUS5 URUS5 URUS5 URUS5 URUS5 URUS5 URUS5 SnUR[S 5 [R
"U5 SSS5 S!nUR[S"5 [R
"U5 SSS5 UR[S#5 [R"S$[RRS%S&9 SSS5 UR[S'5 [R"S(S)S%S&9 SSS5 UR[S*5 [R"S+S,S-9 SSS5 g!,(df   N�=f!,(df   N�=f!,(df   N�=f!,(df   Nv=f!,(df   g=f).Nr8za, br�r0rRz1,x=1r�zb=3r�z1, 2, 3, a=1z2, 3, 4, c=5z2, 3, 4, a=1, c=5zc=2z2, c=3z	2, 3, c=4z2, c=4, b=3u**{u"πι": 4}z1, a=2z1, **{"a":2}z	1, 2, b=3z1, c=3, a=2r�z1, 2z1, 2, a=1, b=2z	*, a, b=0za=1, a=3za=1, c=3z
a=1, a=3, b=4za=1, b=2, a=3, b=4za=1, a=2, a=3, b=4c��gr r*r�s r#�f5�0TestGetcallargsFunctions.test_errors.<locals>.f5�	s��dr%zmissing 1 required keyword-onlyc��gr r*rFs   r#�f6�0TestGetcallargsFunctions.test_errors.<locals>.f6�	r�r%z'a', 'b' and 'c'z6variadic keyword parameters cannot have default valuesr6r7��kind�defaultz%value 5 is not a valid Parameter.kindr.r�zname must be a str, not a int�{r��r�)	r�r�r�r�rX�getcallargs�
ValueErrorr��VAR_KEYWORD)	r^�f0�f1�f2r��f3�f4r�r�s	         r#�test_errors�$TestGetcallargsFunctions.test_errors�	s���
�
�
�r�
"��
�
�
�v�
&��
�
�
�x�
(���!�!�"�c�*��!�!�"�e�,��!�!�"�g�.��!�!�"�b�)��!�!�"�c�*��!�!�"�e�,��!�!�"�e�,��!�!�"�b�)��!�!�"�e�,���A��%�%�a��3��%�%�a��8��%�%�a��8��%�%�a�)<�=��%�%�a��/��%�%�a��2��%�%�a��5��%�%�a��7��%�%�a�)A�B��%�%�a��2��%�%�a��8��%�%�a��5��%�%�a��7�!�$�
�
�u�
%���!�!�"�f�-��!�!�"�&6�7�
�
�
�{�
+���!�!�"�f�-��!�!�"�&6�7��!�!�"�j�1��!�!�"�j�1��!�!�"�o�6��!�!�"�&:�;��!�!�"�&:�;�	�
�
#�
#�I�$E�G�����#�G�	�
�
#�
#�I�/A�
B�����#�C��
#�
#�J�%;�<�
���e�'�*;�*;�*G�*G�&(�
*�<�
�
#�
#�J�$K�M����e�!�R�8�M��
#�
#�I�#B�D����c��*�D�D�+G�G��C�
B��<�<��
M�M��D�D�s<�'N5�O�/O�!O(�O9�5
O�
O�
O%�(
O6�9
Pr*r )rUrlrmrnr�r�r�r�r�r�r�r�r�r	rzr*r%r#r�r�/	s9��!��&&�
H�.H�
M�M�0� /�0H+r%r�c�.^�\rSrSrSrU4SjrSrU=r$)�TestGetcallargsMethodsi�	c�F�"SS[5nXlU"5Ulg)Nc��\rSrSrSrg)�)TestGetcallargsMethods.setUp.<locals>.Fooi�	r*Nr-r*r%r#r�r�	r�r%r�)r�r�inst)r^r�s  r#r�TestGetcallargsMethods.setUp�	s��	�&�	����E��	r%c�>�SU;de[[U]
nU"SU-5URlUR
R$)Nr^zself, )rfrr�rrLr)r^r�mkrhs   �r#r��#TestGetcallargsMethods.makeCallable
sC����Y�&�&�&�
�)�4�
=���X�	�1�2������y�y���r%)rr)rUrlrmrnrr�rzrtrus@r#rr�	s���� � r%rc�R^�\rSrSrU4SjrSU4SjjrSU4SjjrSSjrSrU=r	$)�TestGetcallargsUnboundMethodsi
c�V>�[[U]U5 URR$r )rfrr�rrL)r^rrhs  �r#r��*TestGetcallargsUnboundMethods.makeCallable
s!���
�+�T�?�	�J��x�x���r%c�F>�[[U]
"URXU56$r )rfrr��_getAssertEqualParams�r^r�r�r�rhs    �r#r��1TestGetcallargsUnboundMethods.assertEqualCallArgs
s*����2�D�M�
�
'�
'��$�
G�I�	Ir%c�F>�[[U]
"URXU56$r )rfrr�rrs    �r#r��2TestGetcallargsUnboundMethods.assertEqualException
s*����2�D�N�
�
'�
'��$�
G�I�	Ir%c�\�SU;de[U=(d 0URS9nUSU-U4$)Nr)rzinst,)rqr)r^r�r�r�s    r#r�3TestGetcallargsUnboundMethods._getAssertEqualParams
s8���/�/�/�/��D�J�B�T�Y�Y�/���g� 2�2�D�9�9r%r*r )
rUrlrmrnr�r�r�rrzrtrus@r#rr
s����I�I�:�:r%rc���\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrSrSrSrSrSrSrSrSrSrSrSrSr\"5S5rSrg)�TestGetattrStatici
c���"SS[5nU"5nUR[R"US5UR5 UR[R"USS5UR5 UR[5 [R"US5 SSS5 UR[R"USS5S5 g!,(df   N7=f)Nc�"�\rSrSr\"5rSrg)�+TestGetattrStatic.test_basic.<locals>.Thingi
r*N�rUrlrmrnr�rurzr*r%r#�Thingr%
�	����Ar%r'rur�r�)r�r�rXr.rur�r��r^r'�things   r#�
test_basic�TestGetattrStatic.test_basic
s���	�F�	��������/�/��s�;�U�W�W�E�����/�/��s�D�A�5�7�7�K�
�
�
�~�
.��"�"�5�#�.�/�	
����/�/��s�A�>��B�/�
.�s�C�
C&c��"SS[5n"SSU5nU"5nUR[R"US5UR5 g)Nc�"�\rSrSr\"5rSrg)�/TestGetattrStatic.test_inherited.<locals>.Thingi)
r*Nr&r*r%r#r'r/)
r(r%r'c��\rSrSrSrg)�4TestGetattrStatic.test_inherited.<locals>.OtherThingi+
r*Nr-r*r%r#�
OtherThingr1+
r�r%r2ru�r�r�rXr.ru)r^r'r2�	somethings    r#�test_inherited� TestGetattrStatic.test_inherited(
sD��	�F�	�	��	��L�	�����/�/�	�3�?����Ir%c���"SS[5nU"S5nUR[R"US5S5 U?UR[R"US5S5 g)Nc��\rSrSrSrSrSrg)�3TestGetattrStatic.test_instance_attr.<locals>.Thingi2
r5c��Xlgr r��r^rus  r#r��<TestGetattrStatic.test_instance_attr.<locals>.Thing.__init__4
s���r%r�N)rUrlrmrnrur�rzr*r%r#r'r92
s���A�
r%r'r�rur5r3r)s   r#�test_instance_attr�$TestGetattrStatic.test_instance_attr1
sX��	�F�	��a�������/�/��s�;�Q�?��G�����/�/��s�;�Q�?r%c��"SS[5nU"5nUR[R"US5UR5 g)Nc�$�\rSrSr\S5rSrg)�.TestGetattrStatic.test_property.<locals>.Thingi<
c��[S5e�NzI'm pretending not to existr�ris r#ru�0TestGetattrStatic.test_property.<locals>.Thing.x=
s��$�%B�C�Cr%r*N)rUrlrmrnr�rurzr*r%r#r'rA<
s��
�
D��
Dr%r'rur3r)s   r#r;�TestGetattrStatic.test_property;
s:��	D�F�	D��������/�/��s�;�U�W�W�Er%c�^�"SS[5nU"5m"U4SjS[5nU"5nUR[R"US5T5 g)Nc��\rSrSrSrSrg)�KTestGetattrStatic.test_descriptor_raises_AttributeError.<locals>.descriptoriD
c��[S5erCr�)r�s r#r��STestGetattrStatic.test_descriptor_raises_AttributeError.<locals>.descriptor.__get__E
s��$�%B�C�Cr%r*Nr�r*r%r#�
descriptorrHD
s��
Dr%rKc�>�\rSrSrYrSrg)�FTestGetattrStatic.test_descriptor_raises_AttributeError.<locals>.ThingiH
r*N�rUrlrmrnrurz)�descs�r#r'rMH
s����Ar%r'ru)r�r�rXr.)r^rKr'r*rOs    @r#�%test_descriptor_raises_AttributeError�7TestGetattrStatic.test_descriptor_raises_AttributeErrorC
sJ���	D��	D��|��	�F�	��������/�/��s�;�T�Br%c��"SS[5nUR[R"US5UR5 g)Nc�"�\rSrSr\"5rSrg)�4TestGetattrStatic.test_classAttribute.<locals>.ThingiN
r*Nr&r*r%r#r'rTN
r(r%r'rur3�r^r's  r#�test_classAttribute�%TestGetattrStatic.test_classAttributeM
s1��	�F�	�	
����/�/��s�;�U�W�W�Er%c��"SS[5nUR[R"US5URS5 g)Nc�F�\rSrSr\R
S5r\"5rSr	g)�;TestGetattrStatic.test_classVirtualAttribute.<locals>.ThingiT
c��UR$r )�_xris r#ru�=TestGetattrStatic.test_classVirtualAttribute.<locals>.Thing.xU
s���w�w�r%r*N)
rUrlrmrnr�rerur�r\rzr*r%r#r'rZT
s!��
�
(�
(�
�)�
���Br%r'ru)r�r�rXr.r�rUs  r#�test_classVirtualAttribute�,TestGetattrStatic.test_classVirtualAttributeS
s6��	�F�	�	
����/�/��s�;�U�^�^�C�=P�Qr%c��"SS[5n"SSU5nUR[R"US5UR5 g)Nc�"�\rSrSr\"5rSrg)�>TestGetattrStatic.test_inherited_classattribute.<locals>.Thingi]
r*Nr&r*r%r#r'rb]
r(r%r'c��\rSrSrSrg)�CTestGetattrStatic.test_inherited_classattribute.<locals>.OtherThingi_
r*Nr-r*r%r#r2rd_
r�r%r2rur3�r^r'r2s   r#�test_inherited_classattribute�/TestGetattrStatic.test_inherited_classattribute\
s=��	�F�	�	��	�	
����/�/�
�C�@�%�'�'�Jr%c�F�"SS[5nU"5nUR[R"US5UR5 UR[R"US5S5 U?UR[R"US5UR5 g)Nc�$�\rSrSrSrS/rSrSrg)�+TestGetattrStatic.test_slots.<locals>.Thingie
r.ruc��SUlg�Nr6r�ris r#r��4TestGetattrStatic.test_slots.<locals>.Thing.__init__h
�	����r%r�N)rUrlrmrnr�ror�rzr*r%r#r'rje
s���A���I�
r%r'rur�r.r3r)s   r#�
test_slots�TestGetattrStatic.test_slotsd
s{��	�F�	�
�������/�/��s�;�U�W�W�E�����/�/��s�;�U�C��G�����/�/��s�;�U�W�W�Er%c�p�"SS[5n"SS[US9nUR[R"US5S5 "SS	U5n"S
S[US9nUR[R"US5S5 "SS
U5nUR[R"US5S5 g)Nc��\rSrSrSrSrg)�.TestGetattrStatic.test_metaclass.<locals>.metair
r6r*N)rUrlrmrnr`rzr*r%r#�metarsr
s���Dr%rtc��\rSrSrSrg)�/TestGetattrStatic.test_metaclass.<locals>.Thingit
r*Nr-r*r%r#r'rvt
r�r%r'r�r`r6c��\rSrSrSrg)�-TestGetattrStatic.test_metaclass.<locals>.subix
r*Nr-r*r%r#�subrxx
r�r%ryc��\rSrSrSrSrg)�4TestGetattrStatic.test_metaclass.<locals>.OtherThingiz
r�r*NrNr*r%r#r2r{z
����Ar%r2c��\rSrSrSrg)�9TestGetattrStatic.test_metaclass.<locals>.OtherOtherThingi~
r*Nr-r*r%r#�OtherOtherThingr~~
r�r%rrur��r�r�r�rXr.)r^rtr'ryr2rs      r#�test_metaclass� TestGetattrStatic.test_metaclassq
s���	�4�	�	�F�d�	�����/�/��v�>��F�	�$�	�	��3�	�����/�/�
�F�C�U�K�	�j�	�	
����/�/���E�q�Ir%c��UR[R"SSS5S5 UR[R"SS5S5 g)Nr4r6r)r�rXr.r�ris r#�test_no_dict_no_slots�'TestGetattrStatic.test_no_dict_no_slots�
s>������/�/��5�$�?��F����G�2�2�5�'�B�D�Ir%c���[[SS9nUR[R"US5[U5R5 SSS5 g!,(df   g=f)Nr�r�r�)r�r�r�rXr.r�r�)r^�handles  r#�%test_no_dict_no_slots_instance_member�7TestGetattrStatic.test_no_dict_no_slots_instance_member�
sA��
�(�W�
-�����W�3�3�F�F�C�T�&�\�EV�EV�W�.�
-�
-�s�;A�
A!c��"SS[5n"SSU5nUR[R"U"5S5UR5 g)Nc� �\rSrSrS/rSrSrg)�5TestGetattrStatic.test_inherited_slots.<locals>.Thingi�
ruc��SUlgrlr�ris r#r��>TestGetattrStatic.test_inherited_slots.<locals>.Thing.__init__�
rnr%r�N)rUrlrmrnror�rzr*r%r#r'r��
s����I�
r%r'c��\rSrSrSrg)�:TestGetattrStatic.test_inherited_slots.<locals>.OtherThingi�
r*Nr-r*r%r#r2r��
r�r%r2rur3res   r#�test_inherited_slots�&TestGetattrStatic.test_inherited_slots�
s?��	�F�	�
	��	�	
����/�/�
��c�B�E�G�G�Lr%c�^�"SS[5m"U4SjS[5nU"5nSURS'UR[R"US5S5 STlUR[R"US5URS5 T?STlUR[R"US5URS5 g)	Nc��\rSrSrSrSrg)�5TestGetattrStatic.test_descriptor.<locals>.descriptori�
c��gr�r*r�s   r#r��=TestGetattrStatic.test_descriptor.<locals>.descriptor.__get__�
���r%r*Nr�r*r%r#rKr��
���
r%rKc�&>�\rSrSrY"5rSrg)�.TestGetattrStatic.test_descriptor.<locals>.Fooi�
r*N�rUrlrmrnr�rz�rKs�r#r�r��
�
�����Ar%r�r4r�c��gr r*)r r=�vs   r#r��3TestGetattrStatic.test_descriptor.<locals>.<lambda>�
s��Tr%c��gr r*)r r=rs   r#r�r��
���r%)r�r�r�rXr.r�r�)r^r�r6rKs   @r#�test_descriptor�!TestGetattrStatic.test_descriptor�
s����	��	�	�&�	��e������S������/�/��S�9�1�=�2�
������/�/��S�9�3�<�<��;L�M��� 4�
������/�/��S�9�3�<�<��;L�Mr%c��^�"SS[5m"U4SjS[5n"SS[US9nUR[R"US5UR
S5 g)	Nc��\rSrSrSrSrg)�DTestGetattrStatic.test_metaclass_with_descriptor.<locals>.descriptori�
c��gr�r*r�s   r#r��LTestGetattrStatic.test_metaclass_with_descriptor.<locals>.descriptor.__get__�
r�r%r*Nr�r*r%r#rKr��
r�r%rKc�&>�\rSrSrY"5rSrg)�>TestGetattrStatic.test_metaclass_with_descriptor.<locals>.metai�
r*Nr�r�s�r#rtr��
r�r%rtc��\rSrSrSrg)�?TestGetattrStatic.test_metaclass_with_descriptor.<locals>.Thingi�
r*Nr-r*r%r#r'r��
r�r%r'r�r�)r�r�r�rXr.r�)r^rtr'rKs   @r#�test_metaclass_with_descriptor�0TestGetattrStatic.test_metaclass_with_descriptor�
sO���	��	�	�4�	�	�F�d�	�����/�/��s�;�T�]�]�3�=O�Pr%c��"SS[5n"SSU5nU"5nUR[R"US5S5 UR	UR
5 UR[R"US5S5 g)Nc��\rSrSrSrSrg)�6TestGetattrStatic.test_class_as_property.<locals>.Basei�
r�r*Nr�r*r%r#�Baser��
����Cr%r�c�(�\rSrSrSr\S5rSrg)�;TestGetattrStatic.test_class_as_property.<locals>.Somethingi�
Fc��SUl[$r�)�executedr�ris r#rh�ETestGetattrStatic.test_class_as_property.<locals>.Something.__class__�
s�� $��
��
r%�r�N)rUrlrmrnr�r�rhrzr*r%r#�	Somethingr��
s���H�
�
��
r%r�r6r�)r�r�rXr.r]r�)r^r�r�r�s    r#�test_class_as_property�(TestGetattrStatic.test_class_as_property�
sq��	�6�	�	��	��;������/�/��%�@�!�D�����*�*�+�����/�/�	�5�A�1�Er%c��"SS[5n"SS[5n"SSX!S9nUR[R"U"5S5S	5 UR[R"US5S	5 g)
Nc�$�\rSrSr\S5rSrg)�4TestGetattrStatic.test_mro_as_property.<locals>.Metai�
c��[4$r r�ris r#�__mro__�<TestGetattrStatic.test_mro_as_property.<locals>.Meta.__mro__�
s
���y� r%r*N)rUrlrmrnr�r�rzr*r%r#r^r��
s��
�
!��
!r%r^c��\rSrSrSrSrg)�4TestGetattrStatic.test_mro_as_property.<locals>.Basei�
r�r*Nr�r*r%r#r�r��
r�r%r�c��\rSrSrSrg)�9TestGetattrStatic.test_mro_as_property.<locals>.Somethingi�
r*Nr-r*r%r#r�r��
r�r%r�r�r6r�r�)r^r^r�r�s    r#�test_mro_as_property�&TestGetattrStatic.test_mro_as_property�
sd��	!�4�	!�
	�6�	�	��	�	
����/�/�	��U�C�Q�G�����/�/�	�5�A�1�Er%c�^�UmSTl"U4SjS[5nU"5nSUlUR[R
"US5S5 UR
TR5 "SSU5nU"5nS	UlUR[R
"US5S5 UR
TR5 g)
NFc�0>�\rSrSrSr\U4Sj5rSrg)�4TestGetattrStatic.test_dict_as_property.<locals>.Fooi�
r�c�>�STl0$r���called�r^r�s �r#r��=TestGetattrStatic.test_dict_as_property.<locals>.Foo.__dict__�
����"����	r%r*N�rUrlrmrnr-r�r�rz�r�s�r#r�r��
�����A�
�
��
r%r�r�r-r�c��\rSrSrSrg)�4TestGetattrStatic.test_dict_as_property.<locals>.Bari�
r*Nr-r*r%r#r�r��
���r%r�r�)r�rqr-r�rXr.r])r^r�r6r�r.r�s     @r#�test_dict_as_property�'TestGetattrStatic.test_dict_as_property�
s���������	�$�	��e���������/�/��S�9�1�=�������%��#���e���������/�/��S�9�1�=�������%r%c�`^�UmSTl"U4SjS[5n"SS[5n"SSU5nU"5nUR[R"US5S	5 U4UlUR[R"US5S
5 UR
TR5 g)NFc�0>�\rSrSrSr\U4Sj5rSrg)�/TestGetattrStatic.test_mutated_mro.<locals>.Fooi�
r�c�>�STl0$r�r�r�s �r#r��8TestGetattrStatic.test_mutated_mro.<locals>.Foo.__dict__�
r�r%r*Nr�r�s�r#r�r��
r�r%r�c��\rSrSrSrSrg)�/TestGetattrStatic.test_mutated_mro.<locals>.Bari�
r�r*N�rUrlrmrnr-rzr*r%r#r�r��
r|r%r�c��\rSrSrSrg)�/TestGetattrStatic.test_mutated_mro.<locals>.Bazi�
r*Nr-r*r%r#�Bazr��
r�r%r�r-r�r�)r�rqr�rXr.�	__bases__r])r^r�r�r��bazr�s     @r#�test_mutated_mro�"TestGetattrStatic.test_mutated_mro�
s���������	�$�	�	�$�	�	�#���e������/�/��S�9�1�=����
�����/�/��S�9�1�=�������%r%c�^�UmSTl"U4SjS[5n"SS[5nU"5nU"5UlUR	[
R"US5S5 URTR5 g)NFc�0>^�\rSrSrSUU4SjjrSrU=r$)�9TestGetattrStatic.test_custom_object_dict.<locals>.Customi
c�2>�STl[TU]	X5 gr�)r�rf�get)r^�keyr�rhr�s   ��r#r��=TestGetattrStatic.test_custom_object_dict.<locals>.Custom.gets���"������C�)r%r*r )rUrlrmrnr�rzrt)rhr�s@�r#�Customr�
s
���
*�
*r%r�c��\rSrSrSrSrg)�6TestGetattrStatic.test_custom_object_dict.<locals>.Fooir�r*Nr�r*r%r#r�r�r|r%r�r-r�)r�rqr�r�r�rXr.r])r^r�r�r6r�s    @r#�test_custom_object_dict�)TestGetattrStatic.test_custom_object_dictsf��������	*�T�	*�
	�&�	��e���x�������/�/��S�9�1�=�������%r%c���"SS[5n"SSUS9nU"5nUR[R"US5S5 UR	UR
5 g)Nc�$�\rSrSr\S5rSrg)�?TestGetattrStatic.test_metaclass_dict_as_property.<locals>.Metaic��SUlgr�r�ris r#r��HTestGetattrStatic.test_metaclass_dict_as_property.<locals>.Meta.__dict__s	�� $��
r%r�N�rUrlrmrnr�r�rzr*r%r#r^r�r�r%r^c��\rSrSrSrSrSrg)�@TestGetattrStatic.test_metaclass_dict_as_property.<locals>.ThingiFc��SUlg�Nr7�r�ris r#r��ITestGetattrStatic.test_metaclass_dict_as_property.<locals>.Thing.__init__s	����	r%r	N)rUrlrmrnr�r�rzr*r%r#r'r�s���H�
r%r'r�r�r7)r�r�rXr.r]r�)r^r^r'r�s    r#�test_metaclass_dict_as_property�1TestGetattrStatic.test_metaclass_dict_as_propertysR��	%�4�	%�
	�d�	��7������/�/��&�A�2�F�������(r%c�p�[5nUR[R"[SU5U5 g)N�version)r�rXrXr.r^)r^�sentinels  r#�test_module�TestGetattrStatic.test_module&s+���8������/�/��Y��I�!�	#r%c��"SS[5n"SS[US9n"SSUS9nUR[5 [R"US5 SSS5 URUR5 g!,(df   N*=f)	Nc�$�\rSrSr\S5rSrg)�WTestGetattrStatic.test_metaclass_with_metaclass_with_dict_as_property.<locals>.MetaMetai,c�"�SUl[SS9$)NTr7r	)r�rqris r#r��`TestGetattrStatic.test_metaclass_with_metaclass_with_dict_as_property.<locals>.MetaMeta.__dict__-s�� $��
���}�$r%r�Nr�r*r%r#�MetaMetar	,s��
�
%��
%r%r	c��\rSrSrSrSrg)�STestGetattrStatic.test_metaclass_with_metaclass_with_dict_as_property.<locals>.Metai2Fr*N)rUrlrmrnr�rzr*r%r#r^r	2s���Hr%r^r�c��\rSrSrSrg)�TTestGetattrStatic.test_metaclass_with_metaclass_with_dict_as_property.<locals>.Thingi5r*Nr-r*r%r#r'r	5r�r%r'r�)r�r�r�rXr.r]r�)r^r	r^r's    r#�3test_metaclass_with_metaclass_with_dict_as_property�ETestGetattrStatic.test_metaclass_with_metaclass_with_dict_as_property+sh��	%�t�	%�	�4�8�	�	�d�	��
�
�~�
.��"�"�5�&�1�/�������(�/�
.�s�A8�8
Bc�^�UmSTl"U4SjS5nUR[5 [R"U"5S5 SSS5 URTR5 g!,(df   N*=f)NFc�">�\rSrSrU4SjrSrg)�6TestGetattrStatic.test_custom___getattr__.<locals>.Fooi@c�>�STl0$r�r��r^r`r�s  �r#ra�BTestGetattrStatic.test_custom___getattr__.<locals>.Foo.__getattr__A����"����	r%r*Nrdr�s�r#r�r	@�
���
�
r%r��whatever�r�r�r�rXr.r]�r^r�r�s  @r#�test_custom___getattr__�)TestGetattrStatic.test_custom___getattr__<s]��������	�	�
�
�
�~�
.��"�"�3�5�*�5�/�	
������%�/�
.���A.�.
A<c�^�UmSTl"U4SjS5nUR[5 [R"U"5S5 SSS5 URTR5 g!,(df   N*=f)NFc�">�\rSrSrU4SjrSrg)�;TestGetattrStatic.test_custom___getattribute__.<locals>.FooiNc�>�STl0$r�r�r	s  �r#�__getattribute__�LTestGetattrStatic.test_custom___getattribute__.<locals>.Foo.__getattribute__Or	r%r*N)rUrlrmrnr(	rzr�s�r#r�r&	Nr	r%r��really_could_be_anythingr	r 	s  @r#�test_custom___getattribute__�.TestGetattrStatic.test_custom___getattribute__Js^��������	�	�
�
�
�~�
.��"�"�3�5�*D�E�/�	
������%�/�
.�r#	c��"SS5nU"5Ul[R"U5n[R"URSS5 A[
R"5 URU"55 g)Nc��\rSrSrSrg)�KTestGetattrStatic.test_cache_does_not_cause_classes_to_persist.<locals>.Fooi`r*Nr-r*r%r#r�r/	`���4r%r�r	�
irrelevant)r��weakref�refrXr.�gc�collectrW)r^r��weakref_to_classs   r#�,test_cache_does_not_cause_classes_to_persist�>TestGetattrStatic.test_cache_does_not_cause_classes_to_persistXsU��	���u���"�;�;�s�+�����s�|�|�Z��F��
�
�
�����*�,�-r%r*N) rUrlrmrnr+r5r=r;rPrVr^rfror�r�r�r�r�r�r�r�r�r�r�r	r	r	r!	r+	r	r7	rzr*r%r#r"r"
s���
C�J�@�F�C�F�R�K�F�J�$J�X�
M�N�,Q�F� 
F�&�.&�,&� )� #�
)�"&�&���
.� �
.r%r"c�b�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrSrg)�TestGetGeneratorStateiic�"�SnU"5Ulg)Nc3�8# �[S5HnUv� M	 g7f�Nr�r}��numbers r#�number_generator�5TestGetGeneratorState.setUp.<locals>.number_generatorls�����(����#�r���	generator)r^r@	s  r#r�TestGetGeneratorState.setUpks��	�*�+��r%c�B�[R"UR5$r )rX�getgeneratorstaterC	ris r#�_generatorstate�%TestGetGeneratorState._generatorstateq����(�(����8�8r%c�`�URUR5[R5 gr )r�rG	rX�GEN_CREATEDris r#�test_created�"TestGetGeneratorState.test_createdts!������-�-�/��1D�1D�Er%c��[UR5 URUR5[R
5 gr )rRrC	r�rG	rX�
GEN_SUSPENDEDris r#�test_suspended�$TestGetGeneratorState.test_suspendedws-���T�^�^������-�-�/��1F�1F�Gr%c��URHnM URUR5[R5 gr )rC	r�rG	rX�
GEN_CLOSEDr~s  r#�test_closed_after_exhaustion�2TestGetGeneratorState.test_closed_after_exhaustion{s2�����A�� �����-�-�/��1C�1C�Dr%c��UR[5 URR[5 SSS5 UR	UR5[R5 g!,(df   N==fr )r�r�rC	rEr�rG	rXrS	ris r#�%test_closed_after_immediate_exception�;TestGetGeneratorState.test_closed_after_immediate_exception�sO��
�
�
�|�
,��N�N� � ��.�-�����-�-�/��1C�1C�D�-�
,��� A-�-
A;c��URR5 URUR5[R
5 gr )rC	rr�rG	rXrS	ris r#�test_closed_after_close�-TestGetGeneratorState.test_closed_after_close�s1������������-�-�/��1C�1C�Dr%c�~^�U4SjnU"5Tl[TR5 [TR5 g)Nc3��># �[S5HcnTRTR5[R5 Uv� TRTR5[R5 Me g7fr=	)r7r�rG	rX�GEN_RUNNING�r?	r^s �r#�running_check_generator�CTestGetGeneratorState.test_running.<locals>.running_check_generator�sW������(��� � ��!5�!5�!7��9L�9L�M���� � ��!5�!5�!7��9L�9L�M�#�s�A4A7)rC	rR)r^ra	s` r#�test_running�"TestGetGeneratorState.test_running�s-���
	N�
1�2����T�^�^���T�^�^�r%c�^�Sm[RU4Sj5nU"5nURUR5 UR	[U5[R5 UR[R"U5[R5 UR[R"U5[R5 [U5 UR[R"U5[R5 UR[R"U5[R5 g)Nc3�# �Sv� Sv� g7frpr*r*r%r#r!�ETestGetGeneratorState.test_types_coroutine_wrapper_state.<locals>.gen�s����G��G�s�
c�>�T"5$r r*)r!s�r#�wrapped_generator_coro�XTestGetGeneratorState.test_types_coroutine_wrapper_state.<locals>.wrapped_generator_coro�s����5�Lr%)r��	coroutinerErr�r��_GeneratorWrapperr�rXrF	rK	�getcoroutinestate�CORO_CREATEDrRrO	�CORO_SUSPENDED)r^ri	r�r!s   @r#�"test_types_coroutine_wrapper_state�8TestGetGeneratorState.test_types_coroutine_wrapper_state�s����	�
���	�
�	�

#�$�������� ��
�
�d�1�g�u�6�6�7�	
����2�2�1�5�w�7J�7J�K�����2�2�1�5�w�7K�7K�L��Q������2�2�1�5�w�7L�7L�M�����2�2�1�5�w�7M�7M�Nr%c���SR5nUHIn[[U5nURU[	U55 URU[U55 MK g)Nz0GEN_CREATED GEN_RUNNING GEN_SUSPENDED GEN_CLOSED�rrQrXrs�reprrC�r^�namesr��states    r#�test_easy_debugging�)TestGetGeneratorState.test_easy_debugging�sJ��B�H�H�J���D��G�T�*�E��M�M�$��U��,��M�M�$��E�
�+�r%c	�N�S
SjnU"/SQ5nUR[R"U5S/SQS.5 [U5 UR[R"U5S/SQSSS.5 [U5 UR[R"U5S/SQSSS.5 [U5 UR[R"U5S/SQSSSS	.5 [U5 UR[R"U505 g![a N3f=f)Nc3�:# �SnUHnUS:XaSnUv� M g7f�Nr�r�r�r*��lstr-rmr�rs     r#�each�;TestGetGeneratorState.test_getgeneratorlocals.<locals>.each�s%����A�����6��A������r��r-r~	r4�r-r~	r�rmr5r�r��r-r~	r�rmrr �r�rX�getgeneratorlocalsrR�
StopIteration�r^r	�numberss   r#�test_getgeneratorlocals�-TestGetGeneratorState.test_getgeneratorlocals�s��	��y�/������3�3�G�<�#�I�6�	8��W�
�����3�3�G�<�#�I�A�(�*�	+�	
�W�
�����3�3�G�<�#�I�A�(�*�	+�	
�W�
�����3�3�G�<�#�I�A�(�r�3�	4�	���M�	
����3�3�G�<�b�A���	��	�s�%D�
D$�#D$c���SnU"5nUR[R"U505 [U5 UR[R"U505 g![a N3f=f)Nc3�# �Sv� g7frr*r*r%r#�	yield_one�FTestGetGeneratorState.test_getgeneratorlocals_empty.<locals>.yield_one�s
����G�r�r�	�r^r�	r�s   r#�test_getgeneratorlocals_empty�3TestGetGeneratorState.test_getgeneratorlocals_empty�sf��	��k������3�3�C�8�"�=�	���I�	
����3�3�C�8�"�=���	��	�s�A$�$
A1�0A1c�6�UR[[RS5 UR[[RS5 UR[[R[5 UR[[RS5 g)Nr4c��gr�r*r�s r#r��ETestGetGeneratorState.test_getgeneratorlocals_error.<locals>.<lambda>����4r%�r5r�)r�r�rXr�	rWris r#�test_getgeneratorlocals_error�3TestGetGeneratorState.test_getgeneratorlocals_error�sb�����)�W�%?�%?��C����)�W�%?�%?��P����)�W�%?�%?��E����)�W�%?�%?��Gr%rB	N)rUrlrmrnrrG	rL	rP	rT	rW	r[	rc	rp	rx	r�	r�	r�	rzr*r%r#r:	r:	isK��,�9�F�H�E�
E�
E�� O�0,�B�:	>�Hr%r:	c�P�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
Srg
)�TestGetCoroutineStatei�c�V^�[RS5mU4SjnU"5Ulg)Nc3�8# �[S5HnUv� M	 g7fr=	r}r>	s r#�number_coroutine�5TestGetCoroutineState.setUp.<locals>.number_coroutine�s�����(����#�r�c��0># �T"5IShv�N gN7fr r*)r�	s�r#rk	�.TestGetCoroutineState.setUp.<locals>.coroutine�s����"�$�$�$�s���)r�rk	)r^rk	r�	s  @r#r�TestGetCoroutineState.setUp�s'���	���	�
�	�	%�"���r%c�8�URR5 gr )rk	rris r#rm�TestGetCoroutineState.tearDown�s�������r%c�B�[R"UR5$r )rXrm	rk	ris r#�_coroutinestate�%TestGetCoroutineState._coroutinestate�rI	r%c�`�URUR5[R5 gr )r�r�	rXrn	ris r#rL	�"TestGetCoroutineState.test_created�s!������-�-�/��1E�1E�Fr%c��URRS5 URUR5[R
5 gr )rk	�sendr�r�	rXro	ris r#rP	�$TestGetCoroutineState.test_suspended�s3�������D�!�����-�-�/��1G�1G�Hr%c��URRS5 M![a Of=fURUR	5[
R5 gr )rk	r�	r�	r�r�	rX�CORO_CLOSEDris r#rT	�2TestGetCoroutineState.test_closed_after_exhaustionsV���
����#�#�D�)���!�
��
��	
����-�-�/��1D�1D�Es� �
-�-c��UR[5 URR[5 SSS5 UR	UR5[R5 g!,(df   N==fr )r�r�rk	rEr�r�	rXr�	ris r#rW	�;TestGetCoroutineState.test_closed_after_immediate_exception	sO��
�
�
�|�
,��N�N� � ��.�-�����-�-�/��1D�1D�E�-�
,�rY	c��URR5 URUR5[R
5 gr )rk	rr�r�	rXr�	ris r#r[	�-TestGetCoroutineState.test_closed_after_closes1������������-�-�/��1D�1D�Er%c���SR5nUHIn[[U5nURU[	U55 URU[U55 MK g)Nz4CORO_CREATED CORO_RUNNING CORO_SUSPENDED CORO_CLOSEDrs	ru	s    r#rx	�)TestGetCoroutineState.test_easy_debugging�J��F�L�L�N���D��G�T�*�E��M�M�$��U��,��M�M�$��E�
�+�r%c�&^�[RS5mT"5mSU4SjjnU"5nUR[R"U5STS.5 URS5 UR[R"U5STSS.5 g)Nc3�# �Sv� g7fr r*r*r%r#�gencoro�>TestGetCoroutineState.test_getcoroutinelocals.<locals>.gencoros����r�c��*># �SnTIShv�N gN7fr�r*)r-rmr�	s  �r#r��;TestGetCoroutineState.test_getcoroutinelocals.<locals>.func s�����A��M�M�s���)r-r�	r�)r-r�	rmr )r�rk	r�rX�getcoroutinelocalsr�	)r^r�rr�	s   @r#�test_getcoroutinelocals�-TestGetCoroutineState.test_getcoroutinelocalss����	���	�
�	��)��	��v������3�3�D�9�#��8�	:��	�	�$������3�3�D�9�#��f�E�	Gr%)rk	N)rUrlrmrnrrmr�	rL	rP	rT	rW	r[	rx	r�	rzr*r%r#r�	r�	�s:��%��9�G�I�F�F�
F�,�Gr%r�	c�\�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrg)�TestGetAsyncGenStatei,c�"�SnU"5Ulg)Nc�:# �[S5HnU7v� M
 g7fr=	r}r>	s r#�number_asyncgen�3TestGetAsyncGenState.setUp.<locals>.number_asyncgen0s�����(����#�r�	��asyncgen)r^r�	s  r#r�TestGetAsyncGenState.setUp/s��	�(�)��
r%c��T# �URR5IShv�N gN7fr )r�	�acloseris r#�
asyncTearDown�"TestGetAsyncGenState.asyncTearDown5s����m�m�"�"�$�$�$�s�(�&�(c�B�[R"UR5$r )rX�getasyncgenstater�	ris r#�_asyncgenstate�#TestGetAsyncGenState._asyncgenstate8s���'�'��
�
�6�6r%c�`�URUR5[R5 gr )r�r�	rX�AGEN_CREATEDris r#rL	�!TestGetAsyncGenState.test_created;s!������,�,�.��0D�0D�Er%c���# �[UR5IShv�NnURUR5[R
5 URUS5 gNE7fr�)�anextr�	r�r�	rX�AGEN_SUSPENDED�r^rs  r#rP	�#TestGetAsyncGenState.test_suspended>sJ����D�M�M�*�*������,�,�.��0F�0F�G������"�+�s�A#�A!�AA#c��`# �SnUR[5 US-
=n(a+[UR5IShv�N US-
=n(aM+SSS5 UR	US5 UR	UR5[R5 gN[!,(df   NQ=f7f)Nr�r4)r��StopAsyncIterationr�	r�	r�r�	rX�AGEN_CLOSED)r^�	countdowns  r#rT	�1TestGetAsyncGenState.test_closed_after_exhaustionCs�����	�
�
�
�1�
2�(�1�}�,�)�,��D�M�M�*�*�*� )�1�}�,�)�,�3�	
����A�&�����,�,�.��0C�0C�D�+�3�
2�s.�B.�%B�B�B�A	B.�B�
B+�'B.c��# �UR[5 URR[5IShv�N SSS5 UR	UR5[R5 gN;!,(df   N?=f7fr )r�r�r�	�athrowr�r�	rXr�	ris r#rW	�:TestGetAsyncGenState.test_closed_after_immediate_exceptionKs\���
�
�
�|�
,��-�-�&�&�|�4�4�4�-�����,�,�.��0C�0C�D�
5�-�
,�s,�B
�#A9�A7�A9�7B
�7A9�9
B�B
c��f^# �U4SjnU"5Tl[TR5IShv�N TRTR5[R
5 [TR5IShv�N TRTR5[R
5 gN~N57f)Nc��># �[S5HdnTRTR5[R5 U7v� TRTR5[R5 Mf g7fr=	)r7r�r�	rX�AGEN_RUNNINGr`	s �r#�running_check_asyncgen�ATestGetAsyncGenState.test_running.<locals>.running_check_asyncgenQsW������(��� � ��!4�!4�!6��8L�8L�M���� � ��!4�!4�!6��8L�8L�M�#�s�A5A8)r�	r�	r�r�	rXr�	)r^r�	s` r#rc	�!TestGetAsyncGenState.test_runningPs�����	N�
/�0��
��D�M�M�"�"�"�����,�,�.��0F�0F�G��D�M�M�"�"�"�����,�,�.��0F�0F�G�		#�	#�s"�+B1�B-�A
B1�9B/�:4B1�/B1c���SR5nUHIn[[U5nURU[	U55 URU[U55 MK g)Nz4AGEN_CREATED AGEN_RUNNING AGEN_SUSPENDED AGEN_CLOSEDrs	ru	s    r#rx	�(TestGetAsyncGenState.test_easy_debugging^r�	r%c	���# �S
SjnU"/SQ5nUR[R"U5S/SQS.5 [U5IShv�N UR[R"U5S/SQSSS.5 [U5IShv�N UR[R"U5S/SQSSS.5 [U5IShv�N UR[R"U5S/SQSSSS	.5 UR	[
5 [U5IShv�N SSS5 UR[R"U505 gGNN�N�N:!,(df   N>=f7f)Nc�<# �SnUHnUS:XaSnU7v� M g7fr|	r*r}	s     r#r	�9TestGetAsyncGenState.test_getasyncgenlocals.<locals>.eachgs%����A�����6��A����s�r�r�	r4r�	r5r�r�r�	r �r�rX�getasyncgenlocalsr�	r�r�	r�	s   r#�test_getasyncgenlocals�+TestGetAsyncGenState.test_getasyncgenlocalsfs=���	��y�/������2�2�7�;�#�I�6�	8��G�n�������2�2�7�;�#�I�A�(�*�	+��G�n�������2�2�7�;�#�I�A�(�*�	+��G�n�������2�2�7�;�#�I�A�(�r�3�	4��
�
�1�
2���.� � �3�����2�2�7�;�R�@�	�	�	�

!�3�
2�sa�A	E0�E�?E0�E�?E0�E�AE0�E�"E�#E�'0E0�E0�E0�E�
E-�)E0c��# �SnU"5nUR[R"U505 [U5IShv�N UR[R"U505 UR	[
5 [U5IShv�N SSS5 UR[R"U505 gN�N5!,(df   N9=f7f)Nc�# �S7v� g7frr*r*r%r#r�	�DTestGetAsyncGenState.test_getasyncgenlocals_empty.<locals>.yield_one�s
����G�s�	r�	r�	s   r#�test_getasyncgenlocals_empty�1TestGetAsyncGenState.test_getasyncgenlocals_empty�s����	��k������2�2�3�7��<��C�j�������2�2�3�7��<�
�
�
�1�
2���*���3�����2�2�3�7��<�		�
�3�
2�s;�?C�C�?C�C�C�C�0C�C�
C�Cc�6�UR[[RS5 UR[[RS5 UR[[R[5 UR[[RS5 g)Nr4c��gr�r*r�s r#r��CTestGetAsyncGenState.test_getasyncgenlocals_error.<locals>.<lambda>�s��$r%r�	)r�r�rXr�	rWris r#�test_getasyncgenlocals_error�1TestGetAsyncGenState.test_getasyncgenlocals_error�sb�����)�W�%>�%>��B����)�W�%>�%>��O����)�W�%>�%>��D����)�W�%>�%>��Fr%r�	N)rUrlrmrnrr�	r�	rL	rP	rT	rW	rc	rx	r�	r�	r�	rzr*r%r#r�	r�	,sD��*�%�7�F�#�
E�E�
H�,�A�6	=�Gr%r�	c��\rSrSrSrg)�MySignaturei�r*Nr-r*r%r#r�	r�	����	r%r�	c��\rSrSrSrg)�MyParameteri�r*Nr-r*r%r#r�	r�	�r�	r%r�	c���\rSrSr\S5rSrSrSrSr	Sr
SrS	rS
r
\\R "\S5S55r\\R "\S5S
55r\S5r\R "\S5S5rSrSrSrSrSrSrSrSrSrSrSr Sr!Sr"Sr#Sr$Sr%S r&S!r'S"r(\R "\S5S#5r)\R "\S5S$5r*S%r+S&r,S'r-S(r.S)r/S*r0S+r1S,r2S-r3S.r4S/r5S0r6S1r7S2r8S3r9S4r:S5r;\R "\S5S65r<\R "\S5S75r=S8r>S9r?S:r@S;rAS<rBS=rCS>rDS?rES@rFSArGgB)C�TestSignatureObjecti�c���[R"U40UD6n[SURR	555UR
URLaS4$UR
4$)Nc3�# �UH�nURURURLaSOURURURLaSOUR[	UR
5R
54v� M� g7f).N)r�r��empty�
annotationrCr�r)�.0r�s  r#�	<genexpr>�0TestSignatureObject.signature.<locals>.<genexpr>�sp���J�
2I���z�z�$�}�}����;�����$�/�/�5�;�;�>��=B�=M�=M��5�:�:��,�,�.�	0�
2I�s�BB
.)rXrrhr<r}�return_annotationr
)r��kw�sigs   r#r�TestSignatureObject.signature�sw������+��+���J�
25���1F�1F�1H�J�J��-�-����:��
I�	I�25�1F�1F�I�	Ir%c���[Rn[RnUR[	U"55S5 UR[U"5R5S5 SSS.Sjjn[R"U5nUR[U5RS55 URS[U5;5 SSjn[R"U5nUR[U5RS55 URS	[U5;5 URS
nURSnURSn	URS
n
URSnURSnURSn
URSnU"XyX�U45 U"XyX�45 U"XxU45 U"XxU
45 U"X�U
45 U"X�45 U"X�X�45 U"X�45 U"X�U45 U"X�U45 UR[S5 U"X�X�U45 SSS5 UR[S5 U"X{X�U45 SSS5 UR[S5 U"X�X�U45 SSS5 UR[S5 U"XyX�U45 SSS5 URSS9nUR[S5 U"XyX�U45 SSS5 UR[S5 U"X�45 SSS5 UR[S5 U"X�45 SSS5 UR[S5 U"XxU	45 SSS5 UR[S5 U"XzU	45 SSS5 UR[S5 U"X�45 SSS5 g!,(df   GN�=f!,(df   GNy=f!,(df   GNa=f!,(df   GNI=f!,(df   GN"=f!,(df   GN=f!,(df   N�=f!,(df   N�=f!,(df   N�=f!,(df   g=f)N�()zmappingproxy(OrderedDict())r)�kodc��gr r*)�po�pk�pkd�kor
r"r�s       r#r��7TestSignatureObject.test_signature_object.<locals>.test�r�r%z
<Signaturez
(po, /, pkc��gr r*)�pods r#�test2�8TestSignatureObject.test_signature_object.<locals>.test2�r�r%z(pod=42, /)r
r
r
r
r"r
r
r�zwrong parameter order�r�zduplicate parameter namezfollows default argument)�d)r7)
rXr�r�r�rCrt	r<rrTr�r�r�replace)r^�S�Pr�r

r
�sig2r
r
r
r
r"r
r
r��kwargs2s                r#�test_signature_object�)TestSignatureObject.test_signature_object�s���������������Q�S��4�(�����a�c�n�n�-�/L�M�	�B�	�����%������S�	�,�,�\�:�;������S�	�1�2�	�� � ��'������T�
�-�-�l�;�<����
��d��3�4�
�^�^�D�
!���o�o�e�$��
�^�^�D�
!���n�n�U�#���~�~�f�%��
�^�^�D�
!���n�n�U�#������)��	�2�4�V�
$�%�	�2�2�
��	�2�B�-��	�2�C�.��	�3�C�.��	�3�*�
�	�3�c�
"�#�	
�3�)��	�3�F�
��	�4�b�/��
�
#�
#�J�0G�
H�
�r�t��(�)�I��
#�
#�J�0G�
H�
�r���(�)�I��
#�
#�J�0G�
H�
�t���(�)�I��
#�
#�J�0G�
H�
�r�t�R�(�)�I��.�.�f�.�-��
�
#�
#�J�0J�
K�
�r�t�b�)�*�L��
#�
#�J�0J�
K�
�s�i�L�L��
#�
#�J�0J�
K�
�s�i�L�L��
#�
#�J�0J�
K�
�r��m��L��
#�
#�J�0J�
K�
�r��m��L��
#�
#�J�0J�
K�
�s�i�L�L�
K�9I�
H��I�
H��I�
H��I�
H��L�
K��L�
K��L�
K��L�
K��L�
K��L�
K�sx�"N8�O
�6O� O.�P�
P�+
P$�P5�<Q�%
Q�8
O�

O�
O+�.
O=�
P�
P!�$
P2�5
Q�
Q�
Q%c���0S.SSSSS04Sjjn[R"USS9n[R"U5n[	[
RS-5HWnURUS	S
9 [
R"[
R"X455nURX55 SSS5 MY [R"U5n[S[RRS9n[R"UR US9n[#5R%UR'5UR(S
9nUR+[-U["55 UR+[-UR S[55 [	[
RS-5H�nURUSS
9 [
R"[
R"X�55nURX�5 UR+[-U["55 UR+[-UR S[55 SSS5 M� g!,(df   GM=f!,(df   M�=f)N�rrr4r�r7r�c��gr r*�r-rmrr	
s    r#r6�=TestSignatureObject.test_signature_object_pickle.<locals>.foo����dr%r�F)�
pickle_ver�subclassr3)r�r�)r<r
T)r�r
rXrr7�pickle�HIGHEST_PROTOCOLrD�loads�dumpsr�r�	r�r�r��OrderedDictr<r�	r
r}r
rTrR)	r^r6�foo_partialr

�ver�sig_pickled�myparam�myparams�mysigs	         r#�test_signature_object_pickle�0TestSignatureObject.test_signature_object_pickle�s����:�1�:�2�e�*�:��'�'��q�1������,����0�0�1�4�5�C�����u��=�$�l�l�6�<�<��+A�B��� � ��2�>�=�6�����$���3�W�->�->�-N�-N�O���*�*�3�>�>�W�E���
�%�%����1B�8;�8M�8M�&�O�����
�5�+�6�7����
�5�#3�#3�C�#8�+�F�G���0�0�1�4�5�C�����t��<�$�l�l�6�<�<��+C�D��� � ��4����
�;�� D�E����
�;�+A�+A�#�+F�+6�!8�9�	=�<�6�>�=��=�<�s�*<I�3BI�
I	�
I)	c��Sn[R"U5nUR[5 SUlSSS5 UR[
5 SURS'SSS5 g!,(df   N<=f!,(df   g=f)Nc��gr r*r�s r#r��=TestSignatureObject.test_signature_immutability.<locals>.test
r�r%r.r-)rXrr�r�r6r�r<�r^r�r

s   r#�test_signature_immutability�/TestSignatureObject.test_signature_immutability
si��	�����%��
�
�
�~�
.��C�G�/��
�
�y�
)�"&�C�N�N�3��*�
)�/�
.��*�
)�s�A-�A>�-
A;�>
Bc�L�SnURURU5S5 g)Nc��gr r*r*r%r#r��9TestSignatureObject.test_signature_on_noarg.<locals>.test 
r�r%�r*.�r�rr�s  r#�test_signature_on_noarg�+TestSignatureObject.test_signature_on_noarg
s ��	��������-�y�9r%c�P�SSjnURURU5S5 g)Nc��gr r*rls  r#r��9TestSignatureObject.test_signature_on_wargs.<locals>.test%
r�r%))�r-..�positional_or_keyword)rm.r6rH
r�)rmr6r�r�rA
r�s  r#�test_signature_on_wargs�+TestSignatureObject.test_signature_on_wargs$
s%��	��������-��	 r%c��S[S[S[4SjnURUR	U5SS[S4SS[S44[45 g)Nr-rmr�c��gr r*rls  r#r��;TestSignatureObject.test_signature_on_wkwonly.<locals>.test-
r�r%.�keyword_only)�floatrCr�r�rr�s  r#�test_signature_on_wkwonly�-TestSignatureObject.test_signature_on_wkwonly,
sZ��	�e�	�s�	�s�	��������-���e�^�<���c�>�:�<�� �	!r%c��SSS.SSSSSSS	[4S
jjjnURURU5SSS
SSS	S[S44S45 g)Nr�)r�rmr6r"r.r�r�r�c��gr r*)r-rmr�r�r"r�s      r#r��@TestSignatureObject.test_signature_on_complex_args.<locals>.test5
r�r%rG
)rmrr6rH
)r".r.r�)r�.r�rN
)r�r�.rN
.r��r)r�r�rr�s  r#�test_signature_on_complex_args�2TestSignatureObject.test_signature_on_complex_args4
sn��	�S�	�e�	�e�	�%�	�3�	��������-�C�D�A�?�<�$�c�3�
�>�@��
�	 r%c�^^�SmSm"UU4SjS5nURURT5S5 URURT5S5 URURUR5S5 URURUR5S5 URURUR5S5 URURUR
5S5 g)Nc��gr r*r�s r#�test_args_only�GTestSignatureObject.test_signature_without_self.<locals>.test_args_onlyA
r�r%c��gr r*�r"r�s  r#�test_args_kwargs_only�NTestSignatureObject.test_signature_without_self.<locals>.test_args_kwargs_onlyD
r�r%c��>�\rSrSr\S5r\S5r\R"\S5r
\R"YS5r\R"\S5r\R"YS5r
Srg)�:TestSignatureObject.test_signature_without_self.<locals>.AiG
c��gr r*r�s r#�test_classmethod�KTestSignatureObject.test_signature_without_self.<locals>.A.test_classmethodH
r�r%c��gr r*r�s r#�test_staticmethod�LTestSignatureObject.test_signature_without_self.<locals>.A.test_staticmethodL
r�r%r4r*N)rUrlrmrnr
rc
rrf
r�r�rrrrrz)r^
rZ
s��r#rVra
G
sv���
�
��
��
��
��(�(�*:�Q�?�B��(�(�.�1�=�B��(�(�*;�a�@�B��(�(�*?��C�Br%rV�)r�.r�)r�rrrrr)r^rVr^
rZ
s  @@r#�test_signature_without_self�/TestSignatureObject.test_signature_without_self@
s����	�	�	D�	D�	
�������7�G�	I�������(=�>�F�	G�	
���������-�G�	I����������-�G�	I����������-�G�	I����������-�G�	Hr%r�c��^^	�[R"S5nU4SjnU4SjnU"UR5m	U	4SjnTRU"S5S5 TRU"S5S5 TRU"S	5S
5 TRU"S5S5 TRU"S
5S5 TRU"S5S5 TRU"S5S5 TRU"S5S5 TRU"S5[R
5 TRU"S5[R
S-
5 U"[5 U"[RR5 [R"[R"55nU"UR5 U"[R5 U"SR5 U"[R5 U"0R5 U"[ R"5 U"[$R&5 U"SR&5 U"[(R"5 "SS5nTRU"5"S5[$5 TRU"5"SS05R*S5 TR-[.S5 U"U"55 SSS5 U"[R05 U"[2R45 U"UR65 [8R:nU"U5nTR[=UR>5SS/5 g!,(df   N�=f)Nr�c�>�[R"U5nTR[U[R55 TR[
URR55SRS5 U$)zAUse this to test unbound methods (things that should have a self)rr^)
rXrrTrRr�r�rDr<r}r��rrr^s  �r#�test_unbound_method�KTestSignatureObject.test_signature_on_builtins.<locals>.test_unbound_methodi
sa����)�)�!�,�I��O�O�J�y�'�2C�2C�D�E����T�)�"6�"6�"=�"=�"?�@��C�H�H�&�Q��r%c�(>�[R"U5nTR[U[R55 UR
(a@TR
[UR
R55SRS5 U$)zRUse this to test bound methods or normal callables (things that don't expect self)rr^)
rXrrTrRr�r<r�rDr}r�rm
s  �r#�
test_callable�ETestSignatureObject.test_signature_on_builtins.<locals>.test_callablep
sk����)�)�!�,�I��O�O�J�y�'�2C�2C�D�E��#�#��#�#�D��)=�)=�)D�)D�)F�$G��$J�$O�$O�QW�X��r%c�6>�TRUR$r )r<r�)r�rs �r#r>�9TestSignatureObject.test_signature_on_builtins.<locals>.py
s���I�0�0��6�>�>�>r%r r�rmsbytesr�g��Q�	@r=�#�nr�Tr�F�localr�r^r`r4sabcc��\rSrSr\rSrg)�DTestSignatureObject.test_signature_on_builtins.<locals>.ThisWorksNowi�
r*N)rUrlrmrnr�r�rzr*r%r#�ThisWorksNowry
�
s���Hr%rz
rVr*�no signature foundr^�buffer) rr�r�r�r^�maxsizer�r�r�r�r��StringIOrw�	maketransrq�fromkeysr�r�r�rM�minrUr�r�__delitem__r�r��#docstring_with_signature_but_no_doc�	bytearray�__release_buffer__rDr<)
r^r�rn
rq
r>r�rz
rLr

rs
`        @r#�test_signature_on_builtins�.TestSignatureObject.test_signature_on_builtinsc
s����"�/�/��<�	�	�	�"�)�"R�"R�S�	�>�����3���+�����3���*�����3���&�����3���$�����3���&�����3���&�����3���'�����7��Q�'�����5��3�;�;�/�����5��3�;�;��?�3��f��	�G�O�O�0�0�1��O�O�B�K�K�M�*���a�f�f��	�e�o�o�&��f�&�&�'�	�d�m�m�$��b�k�k�"�	�D�M�M�*��C�K�K�(��q�k�k�"�	�c�l�l�#�	�	�	
������*�C�0�������R��4�=�=�s�C�
�
#�
#�J�0D�
E��,�.�)�F�	�D�,�,�-��H�/�/�0�	�i�C�C�D��-�-��!�&�)������c�n�n�-���/A�B�F�
E�s�M�
M#c�Z�[R"S5nURnSnU"U5nUR[R
"U5[R
"U55 S[4SjnUR[R
"USS9[R
"U55 g)Nr�c�V^�[R"T5S[4U4Sjj5nU$)Nr�c�>�T"U0UD6$r r*r�s  �r#rK�\TestSignatureObject.test_signature_on_decorated_builtins.<locals>.decorator.<locals>.wrapper�
�����T�,�V�,�,r%�r�r�r��r�rKs` r#�	decorator�KTestSignatureObject.test_signature_on_decorated_builtins.<locals>.decorator�
�*���
�_�_�T�
"�
-�C�
-�#�
-��Nr%r�c��gr r*r]
s  r#�wrapper_like�NTestSignatureObject.test_signature_on_decorated_builtins.<locals>.wrapper_like�
s��$r%F��follow_wrapped)rr�r�r�rXrr�)r^r�r�r�
�decorated_funcr�
s      r#�$test_signature_on_decorated_builtins�8TestSignatureObject.test_signature_on_decorated_builtins�
s���"�/�/��<�	��?�?��	�#�4�������*�*�4�0� �*�*�>�:�	<�	7�S�6�����*�*�>�:?�A� �*�*�<�8�	:r%c��[R"S5nUR[S5 [R
"UR5 SSS5 UR[S5 [R
"[5 SSS5 URnUR5nUR[4UR[4UR[4UR[4UR[4UR[4UR[4UR [4UR"[4UR$[4UR&[4UR([4[*R*[4[R,[4SR,[4[.R0[4[/5R0[4[.R2[4[/5R2[4[4R4R6S[84[4R4R:[4[<R6S[>4[<R@[4/nSSK!nURE[FRH[45 UHYupgURMU5 URO[R
"U5[R
"U55 SSS5 M[ g!,(df   GN�=f!,(df   GN�=f![Ja N�f=f!,(df   M�=f)Nr�zno signature found for builtinr8r�r�r)(rr�r�rrXrrrCrrr�rr�r�r�rrrrrr	r
rrWrr
r�r�r�r�rqr�r�rr9r�rrKrDr�)r^r�rrarrr�rs        r#�'test_signature_on_builtins_no_signature�;TestSignatureObject.test_signature_on_builtins_no_signature�
s|��!�/�/��<�	�
�
#�
#�J�$D�F����i�>�>�?�F��
#�
#�J�$D�F����c�"�F��0�0���0�0�2��
�
4�
4�k�B�
�
/�
/��8�
�_�_�.�/�
�Z�Z��%�
�_�_�k�*�
�Z�Z�� �
�
"�
"�K�0�
�
�
�v�&�
�
#�
#�[�1�
�
�
��'�
�
$�
$�&6�7�
�
�
��-�
�Y�Y��$�
�Y�Y�(�)�
�X�X�{�#�
�W�W�k�"�
�U�Y�Y���
�
�
�{�+�
�U�
�
��(�
�
�
�
'�
'��
1�3C�D�
�
�
�
%�
%�{�3�
�]�]�.�
/��=�
�
#�
#�V�,�1
��4	1��
�L�L�$�,�,��/�0�!&��G����g�&�� � ��!2�!2�7�!;�!(�!2�!2�8�!<�>�'�&�"'�YF�F��F�F��D�	�
�	��'�&�s5�!L�,L�?L,�;L<�
L�
L)�,
L9�8L9�<
M	c��[R"S5nURRnUR	[[R"U55S5 g)Nr�z(self, /, x=1))rr��%DocStringUnrepresentableSignatureTest�with_defaultr�rCrXr)r^r��meths   r#�$test_signature_parsing_with_defaults�8TestSignatureObject.test_signature_parsing_with_defaults�
sF��"�/�/��<�	��>�>�K�K������W�.�.�t�4�5�7G�Hr%c��UR[S5 [R"S5 SSS5 g!,(df   g=f)N�is not a callable objectr7)r�r�rXrris r#�test_signature_on_non_function�2TestSignatureObject.test_signature_on_non_functions.��
�
#�
#�I�/I�
J����b�!�K�
J�
J�s	�7�
Ac� ^�SS.Sjn"SS5n[RRU5n[RRU"U55nURXC5 [R"U"U55nURXC5 U"U5nU?URUR	U5S5 [RmU4Sjn[RRSU5 U"U5nUR[R"U55 SUlUR[R"U55 UR[R"U5U5 SSS5 g!,(df   g=f)	NT��kwonlyc��gr r*�r-rmr�
�	kwonlyreqr"r�s      r#r��ITestSignatureObject.test_signature_from_functionlike_object.<locals>.funcr�r%c� �\rSrSrSrSrSrg)�MTestSignatureObject.test_signature_from_functionlike_object.<locals>.funclikeic��URUlURUlURUlURUlURUlXlgr �rUr�r��__defaults__�__kwdefaults__r�r�s  r#r��VTestSignatureObject.test_signature_from_functionlike_object.<locals>.funclike.__init__�G�� $�
�
��
� $�
�
��
�'+�';�';��$�$(�$5�$5��!�&*�&9�&9��#� �	r%c�&�UR"U0UD6$r r�r�s   r#r��VTestSignatureObject.test_signature_from_functionlike_object.<locals>.funclike.__call__����y�y�$�1�&�1�1r%�r�r�r�
r�
rUr�N�rUrlrmrnr�r�rzr*r%r#�funcliker�
���

!�
2r%r�
r�c�8>�[US5(agT"U5$)N�_builtinmockT�r�)ra�_orig_isdescs �r#�_isdesc�LTestSignatureObject.test_signature_from_functionlike_object.<locals>._isdesc2s����s�N�+�+����$�$r%zinspect.ismethoddescriptor)
rXr��
from_callabler�rr�
r�rrrhr]r�
rT)	r^r�r�
�sig_func�sig_funclike�flr�
�builtin_funcr�
s	        @r#�'test_signature_from_functionlike_object�;TestSignatureObject.test_signature_from_functionlike_object
s7���$(�	�	2�	2� �$�$�2�2�4�8���(�(�6�6�x��~�F������0��(�(��$��8������0�
�d�^���O��������+� �	!��1�1��	%�
�]�]�
 �
 �!=�w�
G�#�D�>�L����W�7�7��E�F�(,�L�%��O�O�G�6�6�|�D�E����W�.�.�|�<�h�G�
H�
G�
G�s
�6BE?�?
F
c�^�SS.Sjm"U4SjS5nUR[[R"U55S5 g)NTr�
c��gr r*r�
s      r#r��CTestSignatureObject.test_signature_functionlike_class.<locals>.funcCr�r%c�>�\rSrSrSrYRrYR
rYRrYRrYRrSr	g)�GTestSignatureObject.test_signature_functionlike_class.<locals>.funclikeiFc��gr r*)r^�markers  r#r��PTestSignatureObject.test_signature_functionlike_class.<locals>.funclike.__init__Gr)r%r*N)
rUrlrmrnr�r�r�r�
r�
rzr�s�r#r�
r�
Fs=���
��}�}�H��}�}�H�"�2�2�O��,�,�L�!�0�0�Nr%r�
z(marker))r�rCrXr)r^r�
r�s  @r#�!test_signature_functionlike_class�5TestSignatureObject.test_signature_functionlike_class?s9���%)�	�	1�	1�	
����W�.�.�x�8�9�:�Fr%c��"SS5nURURU"5R5S[45 URURU"5R5S5 URURU5S5 UR[S5 URU"55 SSS5 g!,(df   g=f)Nc�8�\rSrSrSrS	S\4SjjrSrSrSr	g)
�:TestSignatureObject.test_signature_on_method.<locals>.TestiSc��gr r*r�s r#r��CTestSignatureObject.test_signature_on_method.<locals>.Test.__init__Tr)r%r�c��gr r*�r^r�r�s   r#r-�=TestSignatureObject.test_signature_on_method.<locals>.Test.m1Vr)r%c��gr r*r�s r#�m2�=TestSignatureObject.test_signature_on_method.<locals>.Test.m2Xr)r%c��gr r*r�s r#r��CTestSignatureObject.test_signature_on_method.<locals>.Test.__call__Zr)r%r*N�r4)
rUrlrmrnr�r�r-r�
r�rzr*r%r#rr�
Ss��
�
�#�
�
�
r%r��r�..rH
)r�r4.rH
rh
zinvalid method signature)r�rr-r�r�
r�rrs  r#�test_signature_on_method�,TestSignatureObject.test_signature_on_methodRs���	�	�	
��������	�	�2�F���	 �
	
��������	�	�2��	 �	
�������-��	 ��
#�
#�J�0J�
K��N�N�4�6�"�L�
K�
K�s�(C�
Cc��"SS5n[R"U"5R5S5nURUR	U5S[
45 g)Nc�&�\rSrSrSS\4SjjrSrg)�ETestSignatureObject.test_signature_wrapped_bound_method.<locals>.Testior�c��gr r*r�
s   r#r-�HTestSignatureObject.test_signature_wrapped_bound_method.<locals>.Test.m1pr)r%r*Nr�
)rUrlrmrnr�r-rzr*r%r#rr�
os��
�#�
�
r%rc��gr r*r]
s  r#�m1d�DTestSignatureObject.test_signature_wrapped_bound_method.<locals>.m1drr�r%r�
)r�r�r-r�rr�)r^rr�
s   r#�#test_signature_wrapped_bound_method�7TestSignatureObject.test_signature_wrapped_bound_methodmsV��	�	�
�������	#�	�
$�	��������,�F���	 r%c�J�[R(d%URUR[5S5 "SS5nU"5R
nURURU5S5 UR
nURURU5S5 g)N�))r�..�positional_only.c�,�\rSrSr\SS.Sj5rSrg)�?TestSignatureObject.test_signature_on_classmethod.<locals>.Testi�r4)r�c��gr r*)rr�r�s   r#r6�CTestSignatureObject.test_signature_on_classmethod.<locals>.Test.foo�r�r%r*N)rUrlrmrnr
r6rzr*r%r#rr�
�s��
�'(�
��
r%r))r�
)r�r4.rN
.)rr
r�rr
r6�r^rr�
s   r#�test_signature_on_classmethod�1TestSignatureObject.test_signature_on_classmethodzs����+�+����T�^�^�K�8�!�
"�	�	�
�v�z�z���������-��	 �
�x�x���������-��	 r%c�J�[R(d%URUR[5S5 "SS5nU"5R
nURURU5S5 UR
nURURU5S5 g)Nr�
c�$�\rSrSr\S5rSrg)�@TestSignatureObject.test_signature_on_staticmethod.<locals>.Testi�c��gr r*rOs  r#r6�DTestSignatureObject.test_signature_on_staticmethod.<locals>.Test.foo�r�r%r*N)rUrlrmrnrr6rzr*r%r#rr�
�s��
�
��
r%r))�r..rH
)rK..rN
.)rr
r�rrr6r�
s   r#�test_signature_on_staticmethod�2TestSignatureObject.test_signature_on_staticmethod�s����+�+����T�^�^�L�9�!�
"�	�	�
�v�z�z���������-��	 �
�x�x���������-��	 r%c
�J�SSKJn SnURURU"U55S5 UR	[
S5 [R"U"US55 SSS5 UR	[
S5 [R"U"USS95 SSS5 SnURURU"U55S	5 URURU"US55S
5 URURU"USSS95S
5 URURU"USSS95S5 URURU"USSSS95S5 URURU"USS95S5 SnURURU"US55S5 URURU"USS95S5 URURU"USSS55S5 URURU"USSSSS95S5 URURU"USSSSSS95S5 URURU"USS95S5 URURU"USSS95S5 S[SS4S jn[R"U5=o2lURURU"U"US555S!SS"[S#44S45 URURU"U"US5S55SS"[S#44S45 S$nU"U"US%S9S&S9nURURU5S'5 URU"5S&5 S(nU"U"USS&S9S)S9nURURU5S*5 URU"S%S9S+5 S,nU"U"US&S&S-9S%S)S.9nURURU5S/5 [R"U5RS0S1S29nURU"UR0URD6S35 SBS4jnU"US5S9n[R"U5RS1S9nURU"UR0URD6S65 [R"U5RS1S75nURU"UR0URD6S85 [R"U5RS1S7S9nURU"UR0URD6S85 [R"U5RS7S9nURU"UR0URD6S95 U"US%S&S9n[R"U5RS75nURU"UR0URD6S:5 S;n[R"U5nUR[U5S<5 URURU"US55S=5 URURU"USS55S>5 URURU"USSS55S?5 URURU"USSSS95S@5 URURU"USSS95SA5 g!,(df   GN�=f!,(df   GN{=f)CNr)r
c��gr r*r*r%r#r��;TestSignatureObject.test_signature_on_partial.<locals>.test�r�r%r@
�has incorrect argumentsr4r�c��gr r*r�s    r#r�r�r�r%))rG
�rm..rH
�r..rN
�r�..rN
.))rrr	.r5r#
))r�rr5.rN
r	.)rmr))rG
�rmr4.rN
r
r	.))rr
r	.))�r-r4.rN
�rm..rN
rr	.c��gr r*)r-rmr"r�s    r#r�r�r�r%))r�r
r�.))rr
r�.r�Tr�)r�rm))r��rmr.rN
r�.�rm))rG
r�rr�.)rmr�rr�r7c��gr r*rFs   r#r�rr�r%r.rH
c��U$r r*r�s r#r6�:TestSignatureObject.test_signature_on_partial.<locals>.foos���Hr%r�)))r-r.rN
.c�
�XU4$r r*rFs   r#r6r'�����7�Nr%r2)))rmr2.rN
r.)r4r2rc�
�XX#4$r r*r�s    r#r6r1s����:�r%)r�r)rmr�))rG
)rmr.rN
)rr.rN
)r�r2.rN
.��r�rl)rr�rr2c�
�XU4$r r*rFs   r#r6r>rr%r�)r�r5r�r�)r�r�r�)r4r�r�)r�rrc��gr r*)r-rmrr�r�s     r#r6rSr�r%z(a, b, /, c, d, **kwargs)))�rm..r�
�r..rH
�r�..rH
r�.))rrr�.))rr�.))�rr�.rN
r	r�.))rrr	r�.r�)
r�r
r�rr�rrXr�r��bindr"r�rC)r^r
r�r

r6�_foo�bas       r#�test_signature_on_partial�-TestSignatureObject.test_signature_on_partial�s���%�	�	
��������
�6�	�B�
�
#�
#�J�0I�
J����g�d�A�.�/�K��
#�
#�J�0I�
J����g�d�a�0�1�K�	�	
��������
�6��	 �	
��������a�(8�9��	 �	
��������a�1�(=�>��	 �	
���������Q�(?�@��	 �	
��������a�1��(B�C��	 �	
���������(:�;��	 �	�	
��������a�(8�9��	 �	
���������(:�;��	 �	
��������a��A�(>�?��	 �	
��������a��A�D�(I�J��	 �	
��������a��A�A��(K�L��	 �	
���������(:�;��	 �	
����������(B�C��	 �	��	��	�$+�#4�#4�T�#:�:�� ����������a�0@�(A�B�C���c�+B�C�E���	�
	
���������a�0@�!�(D�E���c�+B�C�E���	�	��w�s�b�)�R�0���������-��	 �
	
������$�	��w�s�A��,��3���������-��	 �	
������[�1�	��w�s�b�B�/�2��<���������-��	 ��
�
�t�
$�
)�
)�C�2�
)�
6������r�w�w�4�"�)�)�4�6G�H�	��s�b�!��
�
�
�t�
$�
)�
)�B�
)�
/������r�w�w�4�"�)�)�4�k�B�
�
�
�t�
$�
)�
)�"�b�
1������r�w�w�4�"�)�)�4�l�C�
�
�
�t�
$�
)�
)�"��
)�
3������r�w�w�4�"�)�)�4�l�C�
�
�
�t�
$�
)�
)�B�
)�
/������r�w�w�4�"�)�)�4�k�B��t�r�R�(��
�
�
�t�
$�
)�
)�"�
-������r�w�w�4�"�)�)�4�l�C�	�����$������S��#>�?���������Q��8��	�	
��������Q��(:�;��	�	
��������Q��1�(=�>��	�
	
��������Q��Q�(?�@��	�	
��������Q�!�(<�=��	�AK�
J��K�
J�s�\�\�
\�
\"c�^�SSKJm "U4SjS5nUR[S5 [R
"UR5 SSS5 "U4SjS5nURURURSS9S	5 URURU"5RSS9S
5 "U4SjS5nURURURSS9S5 g!,(df   N�=f)
Nr�r�c�.>�\rSrSrSrY"\5rSrg)�ATestSignatureObject.test_signature_on_partialmethod.<locals>.Spamizc��gr r*r*r%r#r��FTestSignatureObject.test_signature_on_partialmethod.<locals>.Spam.test{r)r%r*N�rUrlrmrnr�r�rzr%s�r#�Spamr'zs���
���%�Cr%r+rc�0>�\rSrSrSSjrY"\SS9rSrg)r'i�c��gr r*)�itr-rs   r#r�r)�r)r%r4r#
r*N)r�r�r*r%s�r#r+r'�s���
����*�Cr%FrG)))r...rH
rG
�rr4.rN
r�))rG
r/r�c�4>�\rSrSrSSjrY"\S5rSrg)r'i�c��gr r*r;s  r#r�r)�r)r%r4r*N)r^�anno)rUrlrmrnr�r�rzr%s�r#r+r'�s���
��d�A�&�Ar%)))r^.r2rH
.)	r�r�r�rrXrr�r�r�)r^r+r�s  @r#�test_signature_on_partialmethod�3TestSignatureObject.test_signature_on_partialmethodws����+�	&�	&�
�
#�
#�J�0I�
J����d�h�h�'�K�	+�	+�
	
���������5��A�"�	#�	
��������
�
�U��C�"�	#�
	'�	'�	
�����������?��	 �3K�
J�s�!C2�2
Dc�v�SnSUlUR[[R"U55S5 g)Nc��gr r*r�s r#r6�ETestSignatureObject.test_signature_on_fake_partialmethod.<locals>.foo�r�r%r�z(a))�__partialmethod__r�rCrXr�r^r6s  r#�$test_signature_on_fake_partialmethod�8TestSignatureObject.test_signature_on_fake_partialmethod�s-��� &�������W�.�.�s�3�4�e�<r%c��^�Sm"U4SjS5nT"U"5R5nURURUR5S5 URURU"5R5S5 URURURSS9S5 URURU5S5 S	m"U4S
jS5nURURUR5S5 URURU"5R5S5 SnURUlURURU5S5 g)
Nc�V^�[R"T5S[4U4Sjj5nU$)Nr�c�>�T"U0UD6$r r*r�s  �r#rK�STestSignatureObject.test_signature_on_decorated.<locals>.decorator.<locals>.wrapper�r�
r%r�
r�
s` r#r�
�BTestSignatureObject.test_signature_on_decorated.<locals>.decorator�r�
r%c�(>�\rSrSrYS5rSrg)�<TestSignatureObject.test_signature_on_decorated.<locals>.Fooi�c��gr r*�r^r-rms   r#r.�@TestSignatureObject.test_signature_on_decorated.<locals>.Foo.bar�r�r%r*N)rUrlrmrnr.rz�r�
s�r#r�rB�����
�
��
r%r�))�r^..rH
rG
r.))rG
r.Fr�
r�c�^�[R"T5S[4U4Sjj5n[R"T5n[URR55SSnURUS9Ul	U$)Nr�c�>�T"S/UQ70UD6$r	r*r�s  �r#rKr?�s����B�0��0��0�0r%r4r�)
r�r�r�rXrrhr<r}r
r�)r�rKr

�
new_paramss`   r#r�
r@�sk���
�_�_�T�
"�
1�C�
1�#�
1��#�#�D�)�C��s�~�~�4�4�6�7���;�J�$'�K�K�:�K�$F�G�!��Nr%c�(>�\rSrSrYS5rSrg)rBi�c��gr r*rDs   r#r��ETestSignatureObject.test_signature_on_decorated.<locals>.Foo.__call__�r�r%r*Nr�rFs�r#r�rB�rGr%�)r.c��gr r*r*r%r#�wrapped_foo_call�ITestSignatureObject.test_signature_on_decorated.<locals>.wrapped_foo_call�r�r%)r.r�rr��__wrapped__)r^r�r.rQr�
s    @r#�test_signature_on_decorated�/TestSignatureObject.test_signature_on_decorated�s>���	�	�	�
���	�	�"�����������0��	 �	
��������	�	�2��	 �
	
�����������F��	 �	
�������,��	 �	�	�	�
	
���������5��	 �
	
����������7��	 �
	�'*�|�|��$�������(8�9��	 r%c�:^�"SS5nURURU5S5 "SS[5n"SSUS9nURURU5S5 URS5 "S	S[5n"S
SUS9nURU"S5S5 URURU5S5 SSS5 URS5 "S
S[5n"SSUS9nURU"S5S5 URURU5S5 SSS5 URS5 "SS5m"U4SjS[5n"SSUS9nURU"S5S5 URURU5S5 SSS5 URS5 "SS[5n"SSUS9nUR	[
5 URU"S5S5 SSS5 UR	[
5 URURU5S5 SSS5 SSS5 URS5 "SS[5n"SSUS9nURU"S5S5 URURU5S5 SSS5 URS5 "SS[5n"SSUS9nURU"SS/5S 5 UR
[5 URURU5URS!R55 SSS5 SSS5 URS"5 "S#S[5n"S$SUS9nURU"S%5S&5 URU"S%S'5S5 [R(dXUR
[5 URURU5URS(R55 SSS5 SSS5 "S)S[5n"S*SUS9nURURU5S+5 URURU5S,5 "S-S.[5n"S/S[US9n"S0SUS9nURURU5S,5 URURU5S15 URURU5S+5 "S2S[5n"S3SUS9nURURU5S45 g!,(df   GN�=f!,(df   GN<=f!,(df   GN�=f!,(df   GN�=f!,(df   GN[=f!,(df   GNe=f!,(df   GN=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f)5Nc��\rSrSrSrSrg)�6TestSignatureObject.test_signature_on_class.<locals>.Ci�c��gr r*�r^r-s  r#r��?TestSignatureObject.test_signature_on_class.<locals>.C.__init__�r)r%r*N�rUrlrmrnr�rzr*r%r#rprX�r�r%rp�)rG
.c��\rSrSrSrSrg)�7TestSignatureObject.test_signature_on_class.<locals>.CMi�c��gr r*�rr-s  r#r��@TestSignatureObject.test_signature_on_class.<locals>.CM.__call__�r)r%r*Nr�r*r%r#r�r_�r�r%r�c��\rSrSrSrSrg)rXi�c��gr r*�r^rms  r#r�r[�r)r%r*Nr\r*r%r#rprX�r�r%r�r
c�$�\rSrSr\S5rSrg)r_i�c��U$r r*ras  r#r�rb�����Hr%r*N�rUrlrmrnr
r�rzr*r%r#r�r_�������r%c��\rSrSrSrSrg)rXic��gr r*res  r#r�r[���r%r*Nr\r*r%r#rprX���r%r4rc�$�\rSrSr\S5rSrg)r_ic��U$r r*r�s r#r�rbrhr%r*N�rUrlrmrnrr�rzr*r%r#r�r_������r%c��\rSrSrSrSrg)rXic��gr r*res  r#r�r[rmr%r*Nr\r*r%r#rprXrnr%�
MethodTypec��\rSrSrSrSrg)�6TestSignatureObject.test_signature_on_class.<locals>.Aic��U$r r*rZs  r#�call�;TestSignatureObject.test_signature_on_class.<locals>.A.call����Hr%r*N�rUrlrmrnryrzr*r%r#rVrw���r%rVc�:>�\rSrSrY"5RrSrg)r_ir*N�rUrlrmrnryr�rz�rVs�r#r�r_�����3�8�8�r%c��\rSrSrSrSrg)rXic��gr r*res  r#r�r[rmr%r*Nr\r*r%r#rprXrnr%r
c�<�\rSrSr\R
"SS5rSrg)r_i(c��X4$r r*�rur-s  r#r��@TestSignatureObject.test_signature_on_class.<locals>.CM.<lambda>)���1�&r%r5r*N�rUrlrmrnr�r
r�rzr*r%r#r�r_(���$�,�,�-@�!�D�r%c��\rSrSrSrSrg)rXi*c��gr r*res  r#r�r[+rmr%r*Nr\r*r%r#rprX*rnr%�r5r4r�c�<�\rSrSr\R
"SS5rSrg)r_i6c��X4$r r*�r^rur-s   r#r�r�7���q�fr%r5r*N�rUrlrmrnr�r�r�rzr*r%r#r�r_6���$�2�2�3L�a�P�r%c��\rSrSrSrSrg)rXi8c��gr r*res  r#r�r[9rmr%r*Nr\r*r%r#rprX8rnr%�BuiltinMethodTypec�,�\rSrSrSRrSrg)r_iB�:r*N�rUrlrmrnr:r�rzr*r%r#r�r_B����8�8�r%c��\rSrSrSrSrg)rXiDc��gr r*res  r#r�r[Ermr%r*Nr\r*r%r#rprXDrnr%r-�bc�a:bcr8�MethodWrapperTypec�,�\rSrSrSRrSrg)r_iNr5r*N�rUrlrmrn�__pow__r�rzr*r%r#r�r_N����;�;�r%c��\rSrSrSrSrg)rXiPc��gr r*res  r#r�r[Qrmr%r*Nr\r*r%r#rprXPrnr%r�r�r�rc�0^�\rSrSrSS.U4SjjrSrU=r$)r_i[r4r1c�$>�[TU]XX#5$r �rfr4��mclsr��bases�dctr6rhs     �r#r4�?TestSignatureObject.test_signature_on_class.<locals>.CM.__new__\�����w��t�5�>�>r%r*�rUrlrmrnr4rzrtrus@r#r�r_[����78�
?�
?r%c��\rSrSrSrSrg)rXi^c��gr r*res  r#r�r[_r)r%r*Nr\r*r%r#rprX^r�r%rO))�r�..rH
�r�..rH
�r�..rH
)r6r4.rN
.c�6^�\rSrSrSS.U4SjjrSrSrU=r$)�8TestSignatureObject.test_signature_on_class.<locals>.CMMimr4r1c�$>�[TU]XX#5$r r�r�s     �r#r4�@TestSignatureObject.test_signature_on_class.<locals>.CMM.__new__nr�r%c��[XU5$r r�)r�nm�bs�dts    r#r��ATestSignatureObject.test_signature_on_class.<locals>.CMM.__call__ps���B�B�'�'r%r*)rUrlrmrnr4r�rzrtrus@r#�CMMr�ms���78�
?�
?�
(�
(r%r�c�0^�\rSrSrSS.U4SjjrSrU=r$)r_irr5�r.c�$>�[TU]XX#5$r r�)r�r�r�r�r.rhs     �r#r4r�sr�r%r*r�rus@r#r�r_rr�r%c��\rSrSrSrSrg)rXiuc��gr r*res  r#r�r[vr)r%r*Nr\r*r%r#rprXur�r%)))r�..rH
)r�..rH
)r�..rH
.c�0^�\rSrSrSS.U4SjjrSrU=r$)r_i�r5r�c�$>�[TU]XU5$r �rfr�)rr�r�r�r.rhs     �r#r��@TestSignatureObject.test_signature_on_class.<locals>.CM.__init__�s����w�'��S�9�9r%r*�rUrlrmrnr�rzrtrus@r#r�r_�s���78�
:�
:r%c��\rSrSrSrSrg)rXi�c��gr r*res  r#r�r[�r)r%r*Nr\r*r%r#rprX�r�r%))r�r�r�)r.r5.rN
.)r�rr�rD�assertWarns�
FutureWarningr��AssertionErrorr:rr
r�)r^rpr�r�rVs    @r#�test_signature_on_class�+TestSignatureObject.test_signature_on_class�s���	�	�	
�������*��	 �	��	�	�"�	�	
�������*��	 ��\�\�-�
(�
�T�
�
�b�
�
���Q�q�T�1�%����T�^�^�A�.�!�
"�)��\�\�.�
)�
�T�
�
�b�
�
���Q�q�T�1�%����T�^�^�A�.�!�
"�*��\�\�,�
'�
�
�
$�T�
$�
�b�
�
���Q�q�T�1�%����T�^�^�A�.�!�
"�(��\�\�)�
$�
E�T�
E�
�b�
��!�!�-�0�� � ��1��v�.�1��!�!�-�0�� � �����!2�!%�&�1�%��\�\�/�
*�
Q�T�
Q�
�b�
�
���Q�q�T�6�*����T�^�^�A�.�!�
"�+��\�\�-�
.�
$�T�
$�
�b�
�
���Q��T�{�^�V�4��"�"�>�2�� � �����!2�D�N�N�2�7�7�4K�L�3�/��\�\�-�
.�
'�T�
'�
�b�
�
���Q�q�T�1�%����Q�q�!�W�a�(��/�/��&�&�~�6��$�$�T�^�^�A�%6�����{�{�8S�T�7�/�	?��	?�	�"�	�	
�������*��	 �	
�������+��	 �	(�$�	(�
	?���	?�	�"�	�	
�������,��	 �	
�������+��	 �	
�������*��	 �	:��	:�	�"�	�	
�������+��	 �k)�
(��*�
)��(�
'��,1�0��0�0��%�
$��+�
*��*3�2��/�
.��.7�6��/�
.�s��7AU�"AU)�
AU;�.V1�3V
�V1�)"V�V1�,AW�AW'�;W�W'�;A4X�/;W9�*X�
U&�)
U8�;
V
�
V	�V1�
V.	�)V1�1
W�
W�
W$	�W'�'
W6�9
X	�X�
Xc�r^�"SS[5n"SSUS9nURURU5S5 URS5 "SS[5n"S	SUS9nURU"S
5S
5 URURU5S5 SSS5 URS5 "SS[5n"S
SUS9nURU"S
5S
5 URURU5S5 SSS5 URS5 "SS5m"U4SjS[5n"SSUS9nURU"S
5S
5 URURU5S5 SSS5 URS5 "SS[5n"SSUS9nURU"S
5S
5 URURU5S5 URURUR5S5 URURUSS9[
5 URURURSS9[
5 SSS5 g!,(df   GN�=f!,(df   GN�=f!,(df   GN=f!,(df   g=f)Nc�$�\rSrSr\S5rSrg)�STestSignatureObject.test_signature_on_class_with_wrapped_metaclass_call.<locals>.CMi�c��gr r*ras  r#r��\TestSignatureObject.test_signature_on_class_with_wrapped_metaclass_call.<locals>.CM.__call__�r�r%r*N)rUrlrmrnr�r�rzr*r%r#r�r�����
�
��
r%r�c��\rSrSrSrSrg)�RTestSignatureObject.test_signature_on_class_with_wrapped_metaclass_call.<locals>.Ci�c��gr r*res  r#r��[TestSignatureObject.test_signature_on_class_with_wrapped_metaclass_call.<locals>.C.__init__�r)r%r*Nr\r*r%r#rpr��r�r%rpr�r]r
c�.�\rSrSr\\S55rSrg)r�i�c��U$r r*ras  r#r�r���	���Hr%r*N)rUrlrmrnr
r�r�rzr*r%r#r�r������!��"��r%c��\rSrSrSrSrg)r�i�c��gr r*res  r#r�r��rmr%r*Nr\r*r%r#rpr��rnr%r4rc�.�\rSrSr\\S55rSrg)r�i�c��U$r r*r�s r#r�r��r�r%r*N)rUrlrmrnrr�r�rzr*r%r#r�r������!��"��r%c��\rSrSrSrSrg)r�i�c��gr r*res  r#r�r��rmr%r*Nr\r*r%r#rpr��rnr%ruc�$�\rSrSr\S5rSrg)�RTestSignatureObject.test_signature_on_class_with_wrapped_metaclass_call.<locals>.Ai�c��U$r r*rZs  r#ry�WTestSignatureObject.test_signature_on_class_with_wrapped_metaclass_call.<locals>.A.call�rhr%r*N�rUrlrmrnr�ryrzr*r%r#rVr�����!��"�r%rVc�:>�\rSrSrY"5RrSrg)r�i�r*Nrr�s�r#r�r��r�r%c��\rSrSrSrSrg)r�i�c��gr r*res  r#r�r��rmr%r*Nr\r*r%r#rpr��rnr%rKc�.�\rSrSr\\S55rSrg)r�i�c��U$r r*rZs  r#r�r��r�r%r*N)rUrlrmrnr�r�r�rzr*r%r#r�r�����"�!��"�#�r%c��\rSrSrSrSrg)r�i�c��gr r*res  r#r�r��rmr%r*Nr\r*r%r#rpr��rnr%Fr�
)r�r�rrDr��varargs_signature)r^r�rprVs   @r#�3test_signature_on_class_with_wrapped_metaclass_call�GTestSignatureObject.test_signature_on_class_with_wrapped_metaclass_call�sS���	��	�	�"�	�	
�������*��	 ��\�\�-�
(�
�T�
�

�b�
�
���Q�q�T�1�%����T�^�^�A�.�!�
"�)��\�\�.�
)�
�T�
�

�b�
�
���Q�q�T�1�%����T�^�^�A�.�!�
"�*��\�\�,�
'�
�
�
$�T�
$�
�b�
�
���Q�q�T�1�%����T�^�^�A�.�!�
"�(� �\�\�,�
'�
�T�
�

�b�
�
���Q�q�T�1�%����T�^�^�A�.�!�
"�
���T�^�^�A�J�J�7�!�
"�
���T�^�^�A�e�^�D�.�
0����T�^�^�A�J�J�u�^�M�.�
0�)(�
'�])�
(��*�
)��(�
'�� (�
'�s4�AI2�7AJ�"AJ�CJ(�2
J�
J�
J%�(
J6c	�h^�"SS5nU"S5 URURU5S5 URS5 "SS5nU"S5 URURU5S5 SSS5 URS5 "SS5nU"S5 URURU5S5 SSS5 URS	5 "S
S5m"U4SjS5nU"S5 URURU5S
5 SSS5 URS5 "SS5nUR[5 U"S5 SSS5 UR[5 URURU5S
5 SSS5 SSS5 URS5 "SS5nURU"S5R
S5 URURU5S
5 SSS5 URS5 "SS5nU"S5 URURU5S
5 URURUR5S5 URURUSS9[5 [R(a,UR[SURURSS9 O.URURURSS9[5 SSS5 g!,(df   GN�=f!,(df   GNw=f!,(df   GN/=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   g=f)Nc�$�\rSrSr\S5rSrg)�HTestSignatureObject.test_signature_on_class_with_wrapped_init.<locals>.Ci�c��gr r*res  r#r��QTestSignatureObject.test_signature_on_class_with_wrapped_init.<locals>.C.__init__�r�r%r*N)rUrlrmrnr�r�rzr*r%r#rpr��r�r%rpr4rOr
c�.�\rSrSr\\S55rSrg)r�i�c��gr r*�rrms  r#r�r�����r%r*N)rUrlrmrnr
r�r�rzr*r%r#rpr��s���!��"��r%rc�.�\rSrSr\\S55rSrg)r�ic��gr r*rs r#r�r�r�r%r*N)rUrlrmrnrr�r�rzr*r%r#rpr�s���!��"��r%ruc�$�\rSrSr\S5rSrg)�HTestSignatureObject.test_signature_on_class_with_wrapped_init.<locals>.Aic��gr r*rZs  r#ry�MTestSignatureObject.test_signature_on_class_with_wrapped_init.<locals>.A.call���r%r*Nr�r*r%r#rVrs��!��"�r%rVc�:>�\rSrSrY"5RrSrg)r�ir*N�rUrlrmrnryr�rzr�s�r#rpr�r�r%r]r
c�H�\rSrSr\R
"\"S5S5rSrg)r�ic��gr r*r�s  r#r��QTestSignatureObject.test_signature_on_class_with_wrapped_init.<locals>.C.<lambda>r�	r%r5r*N)	rUrlrmrnr�r
r�r�rzr*r%r#rpr�s��$�,�,�-=�>O�-P�RS�T�r%r�c�J�\rSrSr\S5r\R"\S5rSr	g)r�i'c��X4Ulgr r�r�s   r#�_init�NTestSignatureObject.test_signature_on_class_with_wrapped_init.<locals>.C._init(s���V�D�Fr%r5r�N)
rUrlrmrnr�rr�r�r�rzr*r%r#rpr�'s&��!�$�"�$�$�2�2�5�!�<�r%r�rKc�.�\rSrSr\\S55rSrg)r�i3c��gr r*rZs  r#r�r�4r�r%r*N)rUrlrmrnr�r�r�rzr*r%r#rpr�3s��"�!��"�#�r%))rHrG
.Fr�
r{
)
r�rrDr�r�r-r�r�rr
r�rr4�r^rprVs  @r#�)test_signature_on_class_with_wrapped_init�=TestSignatureObject.test_signature_on_class_with_wrapped_init�s����	�	�
	
�!���������*��	��\�\�-�
(�
�
�
�a�D����T�^�^�A�.�!�
"�)��\�\�.�
)�
�
�
�a�D����T�^�^�A�.�!�
"�*��\�\�,�
'�
�
�

$�
$�
�a�D����T�^�^�A�.�!�
"�(��\�\�)�
$�
U�
U��!�!�-�0��!��1��!�!�-�0�� � �����!2�!%�&�1�
%��\�\�/�
*�
=�
=�
���Q�q�T�V�V�V�,����T�^�^�A�.�!�
"�+��\�\�,�
'�
�
�
�a�D����T�^�^�A�.�!�
"�
���T�^�^�A�J�J�7�!�
"�

���T�^�^�A�e�^�D�.�
0��+�+��&�&�� 4��N�N�A�I�I�e�'��
� � �����	�	�%��!P� 1�3�1(�
'�{)�
(��*�
)��(�
'��$1�0��0�0��
%�
$��+�
*��(�
'�s{�4L%�4L7� AM	�: M?�	M�#M?�"M-�"M?�AN�*C2N#�%
L4�7
M�	
M�
M*	�%M?�-
M<	�7M?�?
N�
N �#
N1c�*^�URS5 "SS5nURU"S5S5 URURU5S5 SSS5 URS5 "SS5nURU"S5S5 URURU5S5 SSS5 URS5 "S	S5nURU"S5S5 URURU5S5 SSS5 URS
5 "SS5m"U4S
jS5nURU"S5S5 URURU5S5 SSS5 URS5 "SS5nURU"S5S5 URURU5S5 SSS5 URS5 "SS5nURU"S5S5 URURU5S5 SSS5 URS5 "SS5nURU"S5S5 URURU5S5 URURUR5S5 URURUSS9[5 URURURSS9[5 SSS5 g!,(df   GN�=f!,(df   GN}=f!,(df   GN2=f!,(df   GN�=f!,(df   GN�=f!,(df   GND=f!,(df   g=f)N�FunctionTypec�$�\rSrSr\S5rSrg)�GTestSignatureObject.test_signature_on_class_with_wrapped_new.<locals>.CiOc��U$r r*ras  r#r4�OTestSignatureObject.test_signature_on_class_with_wrapped_new.<locals>.C.__new__Prhr%r*N)rUrlrmrnr�r4rzr*r%r#rprOr�r%rpr4r]r
c�.�\rSrSr\\S55rSrg)riZc��U$r r*�r�cls2r-s   r#r4r[r�r%r*N)rUrlrmrnr
r�r4rzr*r%r#rprZr�r%rc�.�\rSrSr\\S55rSrg)rifc��U$r r*ras  r#r4rgr�r%r*N)rUrlrmrnrr�r4rzr*r%r#rprfr�r%ruc�$�\rSrSr\S5rSrg)�GTestSignatureObject.test_signature_on_class_with_wrapped_new.<locals>.Airc��U$r r*�r^rr-s   r#ry�LTestSignatureObject.test_signature_on_class_with_wrapped_new.<locals>.A.callsrhr%r*Nr�r*r%r#rVr"rr�r%rVc�:>�\rSrSrY"5RrSrg)rivr*N�rUrlrmrnryr4rzr�s�r#rprv�����#�(�(�r%r
c�H�\rSrSr\R
"\"S5S5rSrg)ric��X4$r r*�rurr-s   r#r��PTestSignatureObject.test_signature_on_class_with_wrapped_new.<locals>.C.<lambda>�s��PQ�vr%r5r*N)	rUrlrmrnr�r
r�r4rzr*r%r#rprs��#�+�+�,<�=U�,V�XY�Z�r%r�r�c�H�\rSrSr\R
"\"S5S5rSrg)ri�c��X4$r r*�rrur-s   r#r�r,�s��VW�U[r%r5r*N)	rUrlrmrnr�r�r�r4rzr*r%r#rpr�s��#�1�1�2B�C[�2\�^_�`�r%rKc�.�\rSrSr\\S55rSrg)ri�c��U$r r*ras  r#r4r�r�r%r*N)rUrlrmrnr�r�r4rzr*r%r#rpr�r�r%))r�
rG
.Fr�
)rDr�rr4r�rs  @r#�(test_signature_on_class_with_wrapped_new�<TestSignatureObject.test_signature_on_class_with_wrapped_newMs����
�\�\�.�
)�
�
�

���Q�q�T�1�%����T�^�^�A�.�!�
"�*��\�\�-�
(�
�
�
���Q�q�T�1�%����T�^�^�A�.�!�
"�)��\�\�.�
)�
�
�
���Q�q�T�1�%����T�^�^�A�.�!�
"�*��\�\�,�
'�
�
�
#�
#�
���Q�q�T�1�%����T�^�^�A�.�!�
"�(��\�\�)�
$�
[�
[�
���Q�q�T�6�*����T�^�^�A�.�!�
"�%��\�\�/�
*�
a�
a�
���Q�q�T�6�*����T�^�^�A�.�!�
"�+��\�\�,�
'�
�
�
���Q�q�T�1�%����T�^�^�A�.�!�
"�
���T�^�^�A�I�I�6�!�
"�

���T�^�^�A�e�^�D�.�
0����T�^�^�A�I�I�e�^�L�.�
0�%(�
'�E*�
)��)�
(��*�
)��(�
'��%�
$��+�
*��(�
'�sZ�AL�0AL*�
AL<�*AM�AM �1AM2�CN�
L'�*
L9�<
M�
M� 
M/�2
N�
Nc�(^�"SS5nU"S5 URURU5S5 URS5 "SS5nU"S5 URURU5S5 SSS5 URS5 "SS5nU"S5 URURU5S5 SSS5 URS	5 "S
S5m"U4SjS5nU"S5 URURU5S
5 SSS5 URS5 "SS5nUR[5 U"S5 SSS5 UR[5 URURU5S
5 SSS5 SSS5 URS5 "SS5nURU"S5R
S5 URURU5S
5 SSS5 g!,(df   GN�=f!,(df   GNl=f!,(df   GN$=f!,(df   N�=f!,(df   N�=f!,(df   N�=f!,(df   g=f)Nc��\rSrSrSrSrg)�@TestSignatureObject.test_signature_on_class_with_init.<locals>.Ci�c��gr r*res  r#r��ITestSignatureObject.test_signature_on_class_with_init.<locals>.C.__init__�r)r%r*Nr\r*r%r#rpr6�r�r%rpr4rOr
c�$�\rSrSr\S5rSrg)r6i�c��gr r*r�s  r#r�r8�rr%r*N)rUrlrmrnr
r�rzr*r%r#rpr6�������r%rc�$�\rSrSr\S5rSrg)r6i�c��gr r*rs r#r�r8�rr%r*N)rUrlrmrnrr�rzr*r%r#rpr6�������r%ruc��\rSrSrSrSrg)�@TestSignatureObject.test_signature_on_class_with_init.<locals>.Ai�c��gr r*rZs  r#ry�ETestSignatureObject.test_signature_on_class_with_init.<locals>.A.call�rmr%r*Nr|r*r%r#rVr@�rnr%rVc�:>�\rSrSrY"5RrSrg)r6i�r*Nrr�s�r#rpr6�r�r%r]r
c�<�\rSrSr\R
"SS5rSrg)r6i�c��gr r*r�s  r#r��ITestSignatureObject.test_signature_on_class_with_init.<locals>.C.<lambda>�s��$r%r5r*N)rUrlrmrnr�r
r�rzr*r%r#rpr6�s��$�,�,�->��B�r%r�c�@�\rSrSrSr\R"\S5rSrg)r6i�c��X4Ulgr r�r�s   r#r�FTestSignatureObject.test_signature_on_class_with_init.<locals>.C._init�s���V�D�Fr%r5r�N)	rUrlrmrnrr�r�r�rzr*r%r#rpr6�s��$�$�2�2�5�!�<�r%r�)r�rrDr�r�r-rs  @r#�!test_signature_on_class_with_init�5TestSignatureObject.test_signature_on_class_with_init�s���	�	�	
�!���������*��	��\�\�-�
(�
�
�

�a�D����T�^�^�A�.�!�
"�)��\�\�.�
)�
�
�

�a�D����T�^�^�A�.�!�
"�*��\�\�,�
'�
�
�
$�
$�
�a�D����T�^�^�A�.�!�
"�(��\�\�)�
$�
C�
C��!�!�-�0��!��1��!�!�-�0�� � �����!2�!%�&�1�
%��\�\�/�
*�
=�
=�

���Q�q�T�V�V�V�,����T�^�^�A�.�!�
"�+�
*�[)�
(��*�
)��(�
'�� 1�0��0�0��
%�
$��+�
*�sn�4H�4H,� AH>�: I2�	I�#I2�"I!�"I2�AJ�
H)�,
H;�>
I
�
I	�I2�!
I/	�+I2�2
J�
Jc�	^�URS5 "SS5nURU"S5S5 URURU5S5 SSS5 URS5 "SS5nURU"S5S5 URURU5S5 SSS5 URS5 "S	S5nURU"S5S5 URURU5S5 SSS5 URS
5 "SS5m"U4S
jS5nURU"S5S5 URURU5S5 SSS5 URS5 "SS5nURU"S5S5 URURU5S5 SSS5 URS5 "SS5nURU"S5S5 URURU5S5 SSS5 URS5 "SS5nURU"5S5 UR[URU5 SSS5 URS5 "SS5nURU"5U[
-5 UR[URU5 SSS5 URS5 "SS5nURU"U5S5 URURU5URUR55 SSS5 URS5 "SS5nURU"[
5U[
-5 UR[URU5 SSS5 g!,(df   GN�=f!,(df   GN@=f!,(df   GN�=f!,(df   GN�=f!,(df   GNR=f!,(df   GN=f!,(df   GN�=f!,(df   GNl=f!,(df   GN=f!,(df   g=f)Nrc��\rSrSrSrSrg)�?TestSignatureObject.test_signature_on_class_with_new.<locals>.Ci�c��U$r r*ras  r#r4�GTestSignatureObject.test_signature_on_class_with_new.<locals>.C.__new__�r{r%r*N�rUrlrmrnr4rzr*r%r#rprN�r}r%rpr4r]r
c�$�\rSrSr\S5rSrg)rNi�c��U$r r*rs   r#r4rP�rhr%r*N)rUrlrmrnr
r4rzr*r%r#rprN�rjr%rc�$�\rSrSr\S5rSrg)rNi�c��U$r r*ras  r#r4rP�rhr%r*N)rUrlrmrnrr4rzr*r%r#rprN�rrr%ruc��\rSrSrSrSrg)�?TestSignatureObject.test_signature_on_class_with_new.<locals>.Ai	c��U$r r*r$s   r#ry�DTestSignatureObject.test_signature_on_class_with_new.<locals>.A.call
r{r%r*Nr|r*r%r#rVrW	r}r%rVc�:>�\rSrSrY"5RrSrg)rNir*Nr'r�s�r#rprNr(r%r
c�<�\rSrSr\R
"SS5rSrg)rNic��X4$r r*r+s   r#r��HTestSignatureObject.test_signature_on_class_with_new.<locals>.C.<lambda>s��q�fr%r5r*N)rUrlrmrnr�r
r4rzr*r%r#rprNs��#�+�+�,D�a�H�r%r�r�c�<�\rSrSr\R
"SS5rSrg)rNic��X4$r r*r/s   r#r�r]s��Q�Fr%r5r*N)rUrlrmrnr�r�r4rzr*r%r#rprNs��#�1�1�2J�A�N�r%r�c�,�\rSrSr\R
rSrg)rNi'r*N)rUrlrmrnrC�__subclasscheck__r4rzr*r%r#rprN's
���/�/�r%Fr�c�L�\rSrSr\R
R
\\5rSr	g)rNi0r*N)
rUrlrmrnr��__or__r�r�r4rzr*r%r#rprN0s���+�+�-�-�c�4�8�r%�MethodDescriptorTypec�2�\rSrSr\R
SrSrg)rNi;rar*N)rUrlrmrnr�r�r4rzr*r%r#rprN;s���-�-�(;�<�r%T�WrapperDescriptorTypec�,�\rSrSr\R
rSrg)rNiBr*N)rUrlrmrnr�rcr4rzr*r%r#rprNBs���+�+�r%)rDr�rr�rr�rars  @r#� test_signature_on_class_with_new�4TestSignatureObject.test_signature_on_class_with_new�s����
�\�\�.�
)�
�
�
���Q�q�T�1�%����T�^�^�A�.�!�
"�
*��\�\�-�
(�
�
�

���Q�q�T�1�%����T�^�^�A�.�!�
"�)��\�\�.�
)�
�
�

���Q�q�T�1�%����T�^�^�A�.�!�
"�*��\�\�,�
'�
�
�
#�
#�
���Q�q�T�1�%����T�^�^�A�.�!�
"�(��\�\�)�
$�
I�
I�
���Q�q�T�6�*����T�^�^�A�.�!�
"�%��\�\�/�
*�
O�
O�
���Q�q�T�6�*����T�^�^�A�.�!�
"�+��\�\�-�
.�
0�
0�
���Q�S�%�(�
���j�$�.�.�!�<�/��\�\�-�
.�
9�
9�
���Q�S�!�c�'�*�
���j�$�.�.�!�<�/��\�\�0�
1�
=�
=�
���Q�q�T�4�(����T�^�^�A�.����q�?R�?R�0S�T�2��\�\�1�
2�
&�
&�
���Q�s�V�Q��W�-�
���j�$�.�.�!�<�3�
2�s*�
)��)�
(��*�
)��(�
'��%�
$��+�
*��/�
.��/�
.��2�
1��3�
2�s��AO�0AO-�
AO?�*AP�AP#�1AP5�AQ�*A
Q�
AQ+�AQ=�
O*�-
O<�?
P�
P �#
P2�5
Q�
Q�
Q(�+
Q:�=
Rc� �"SS5n"SSU5n"SSU5n"SSU5nURURU5S	5 URURU5S
5 URURU5S5 g)Nc��\rSrSrSSjrSrg)�9TestSignatureObject.test_signature_on_subclass.<locals>.AiKc�,�[RU5$r �r�r4)rr-r"r�s    r#r4�ATestSignatureObject.test_signature_on_subclass.<locals>.A.__new__L����~�~�c�*�*r%r*Nr�
rQr*r%r#rVrlK���
+r%rVc��\rSrSrSrSrg)�9TestSignatureObject.test_signature_on_subclass.<locals>.BiNc��gr r*res  r#r��BTestSignatureObject.test_signature_on_subclass.<locals>.B.__init__Or)r%r*Nr\r*r%r#r�rsNr�r%r�c��\rSrSrSSjrSrg)�9TestSignatureObject.test_signature_on_subclass.<locals>.CiQc�,�[RU5$r rn)rr-rmr"r�s     r#r4�ATestSignatureObject.test_signature_on_subclass.<locals>.C.__new__Rrpr%r*N�r4r5rQr*r%r#rprwQrqr%rpc��\rSrSrSrg)�9TestSignatureObject.test_signature_on_subclass.<locals>.DiTr*Nr-r*r%r#r�r|Tr�r%r�rO))�r-r4.rH
�rmr5.rH
r�r�.))r}r�r�.rA
)r^rVr�rpr�s     r#�test_signature_on_subclass�.TestSignatureObject.test_signature_on_subclassJs���	+�	+�	��	�	+��	+�	��	�	
�������*��	 �	
�������*��	 �	
�������*��	 r%c��SSKJnJn U"S5n"SSX5nURUR	U5SS[
S44S45 g)	Nr)�Generic�TypeVarr�c�&�\rSrSrS\SS4SjrSrg)�ATestSignatureObject.test_signature_on_generic_subclass.<locals>.Aikr-r�Nc��gr r*rZs  r#r��JTestSignatureObject.test_signature_on_generic_subclass.<locals>.A.__init__lr)r%r*)rUrlrmrnr�r�rzr*r%r#rVr�ks��
�S�
�T�
r%rVr-.rN
)�typingr�r�r�rr�)r^r�r�r�rVs     r#�"test_signature_on_generic_subclass�6TestSignatureObject.test_signature_on_generic_subclassfsN��+��C�L��	��
�	�	
�������*���c�>�:�<�� �	!r%c��"SS5nUR[[R"U55S5 "SSU5nUR[[R"U55S5 "SS[5n"SSU5nURU"SS	05R
S5 UR
[S
5 UR[R"U5S5 SSS5 URU"SS	05R
S5 UR
[S
5 UR[R"U5S5 SSS5 g!,(df   Nx=f!,(df   g=f)Nc��\rSrSrSrg)�CTestSignatureObject.test_signature_on_class_without_init.<locals>.Ciwr*Nr-r*r%r#rpr�wr�r%rpr
c��\rSrSrSrg)�CTestSignatureObject.test_signature_on_class_without_init.<locals>.Diyr*Nr-r*r%r#r�r�yr�r%r�c��\rSrSrSrg)r�i}r*Nr-r*r%r#rpr�}r�r%c��\rSrSrSrg)r�i~r*Nr-r*r%r#r�r�~r�r%rVr*zcallable.*is not supported)r�rCrXrr�rUr�r)r^rpr�s   r#�$test_signature_on_class_without_init�8TestSignatureObject.test_signature_on_class_without_initss��	�
�����W�.�.�q�1�2�D�9��������W�.�.�q�1�2�D�9�	����������3��B��0�0�#�6�
�
#�
#�J�0L�
M����W�.�.�q�1�4�8�N�����3��B��0�0�#�6�
�
#�
#�J�0L�
M����W�.�.�q�1�4�8�N�
M�N�
M��N�
M�s�'E!�1'E2�!
E/�2
Fc��SnUR[[R"[R
55U5 "SS[R
5n"SS5n"SSX25nUR[[R"U55U5 UR[[R"U55U5 "SS	U5nUR[[R"U55S
5 "SS[5n"S
SXFS9nUR[[R"U55S5 g)Nz=(file, protocol=None, fix_imports=True, buffer_callback=None)c��\rSrSrSrg)�>TestSignatureObject.test_signature_on_builtin_class.<locals>.Pi�r*Nr-r*r%r#r
r��s��$r%r
c��\rSrSrSrg)�GTestSignatureObject.test_signature_on_builtin_class.<locals>.EmptyTraiti�r*Nr-r*r%r#�
EmptyTraitr��s��$r%r�c��\rSrSrSrg)�?TestSignatureObject.test_signature_on_builtin_class.<locals>.P2i�r*Nr-r*r%r#�P2r��s��r%r�c��\rSrSrSrSrg)�?TestSignatureObject.test_signature_on_builtin_class.<locals>.P3i�c��gr r*)r^r�s  r#r��HTestSignatureObject.test_signature_on_builtin_class.<locals>.P3.__init__�r)r%r*Nr\r*r%r#�P3r��r�r%r�z(spam)c��\rSrSrSrSrg)�BTestSignatureObject.test_signature_on_builtin_class.<locals>.MetaPi�c��gr r*)rr6r.s   r#r��KTestSignatureObject.test_signature_on_builtin_class.<locals>.MetaP.__call__�r)r%r*Nr�r*r%r#�MetaPr��r�r%r�c��\rSrSrSrg)�?TestSignatureObject.test_signature_on_builtin_class.<locals>.P4i�r*Nr-r*r%r#�P4r��r�r%r�r�z
(foo, bar))r�rCrXrr�r�r�)r^rFr
r�r�r�r�r�s        r#�test_signature_on_builtin_class�3TestSignatureObject.test_signature_on_builtin_class�s���,������W�.�.�w���?�@�(�K�&����&���%��%�����W�.�.�q�1�2�H�=�����W�.�.�r�2�3�X�>�	��	�	
����W�.�.�r�2�3�X�>�	�D�	�	��	�����W�.�.�r�2�3�\�Br%c�2^�"SS5nURURU"55S5 "SS5nUR[S5 [R"U"55 SSS5 "SSX!5nURURU"55S5 URS	5 "S
S5nURURU"55S5 SSS5 URS5 "S
S5nURURU"55S5 SSS5 URS5 "SS5m"U4SjS5nURU"5"S5S5 URURU"55S5 SSS5 URS5 "SS5nU"5nUR
[5 URU"S5S5 SSS5 UR
[5 URURU5S5 SSS5 SSS5 URS5 "SS5nURU"5"S5S5 URURU"55S5 SSS5 URS5 "SS5nURU"5"SS/5S5 URURU"55URSR55 SSS5 URS5 "SS5nURU"5"S 5S!5 [R(d?URURU"55URS"R55 SSS5 URS#5 "S$S[5nU"5"SS%/S 5nURUS S S&.5 UR[U5U5 [R(dCURURU"55UR[R55 SSS5 URS'5 "S(S[5nURU"S)5"SS/5S5 URURU"55URSR55 SSS5 URS*5 "S+S[ 5nURU"S%5"S 5S!5 [R(d?URURU"55URS"R55 SSS5 URS,5 "S-S5nU"5nS.UlURU"S5S5 URURU5S5 SSS5 g!,(df   GN�=f!,(df   GNN=f!,(df   GN=f!,(df   GN�=f!,(df   GNm=f!,(df   GN@=f!,(df   GNJ=f!,(df   GN�=f!,(df   GN�=f!,(df   GN=f!,(df   GNS=f!,(df   GN�=f!,(df   GNT=f!,(df   g=f)/Nc��\rSrSrSrSrg)�CTestSignatureObject.test_signature_on_callable_objects.<locals>.Fooi�c��gr r*rZs  r#r��LTestSignatureObject.test_signature_on_callable_objects.<locals>.Foo.__call__�r)r%r*Nr�r*r%r#r�r��r�r%r�r]c��\rSrSrSrg)�DTestSignatureObject.test_signature_on_callable_objects.<locals>.Spami�r*Nr-r*r%r#r+r��r�r%r+r�
c��\rSrSrSrg)�CTestSignatureObject.test_signature_on_callable_objects.<locals>.Bari�r*Nr-r*r%r#r�r��r�r%r�r
c�$�\rSrSr\S5rSrg)�ATestSignatureObject.test_signature_on_callable_objects.<locals>.Ci�c��gr r*ras  r#r��JTestSignatureObject.test_signature_on_callable_objects.<locals>.C.__call__�rr%r*Nrir*r%r#rpr��r;r%rprc�$�\rSrSr\S5rSrg)r�i�c��gr r*r�s r#r�r��rr%r*Nrqr*r%r#rpr��r>r%ruc��\rSrSrSrSrg)�ATestSignatureObject.test_signature_on_callable_objects.<locals>.Ai�c��U$r r*rZs  r#ry�FTestSignatureObject.test_signature_on_callable_objects.<locals>.A.call�r{r%r*Nr|r*r%r#rVr��r}r%rVc�:>�\rSrSrY"5RrSrg)r�i�r*Nrr�s�r#rpr��r�r%r4r
c�<�\rSrSr\R
"SS5rSrg)r�i�c��X4$r r*r�s  r#r��JTestSignatureObject.test_signature_on_callable_objects.<locals>.C.<lambda>�r�r%r5r*Nr�r*r%r#rpr��r�r%r�r�c�<�\rSrSr\R
"SS5rSrg)r�i�c��X4$r r*r�s   r#r�r��r�r%r5r*Nr�r*r%r#rpr��r�r%r�c�,�\rSrSrSRrSrg)r�i�r�r*Nr�r*r%r#rpr��r�r%r-r�r�r8r�c�,�\rSrSrSRrSrg)r�i�r5r*Nr�r*r%r#rpr��r�r%r�r�r�ClassMethodDescriptorTypec�2�\rSrSr\R
SrSrg)r�i�r�
r*N)rUrlrmrnrqr�r�rzr*r%r#rpr��s���=�=��4�r%r5rzrdc�,�\rSrSr\R
rSrg)r�ir*N)rUrlrmrnrCr:r�rzr*r%r#rpr�r�r%r�rfc�,�\rSrSr\R
rSrg)r�ir*N)rUrlrmrnr�r�r�rzr*r%r#rpr�s���;�;�r%r�c��\rSrSrSrSrg)r�ir�r*Nrnr*r%r#rpr�s��&�	r%c��U$r r*r�s r#r��HTestSignatureObject.test_signature_on_callable_objects.<locals>.<lambda>s��1r%)r�rr�r�rXrDr�r�r:rr
r�rqr�r�
rCr�r�)r^r�r+r�rpr�resrVs       @r#�"test_signature_on_callable_objects�6TestSignatureObject.test_signature_on_callable_objects�sI���	�	�	
��������.��	 �	�	�
�
#�
#�I�/I�
J����d�f�%�K�	�$�	�	
��������.��	 ��\�\�-�
(�
�
�

���T�^�^�A�C�0�!�
"�
)��\�\�.�
)�
�
�

���T�^�^�A�C�0�!�
"�
*��\�\�,�
'�
�
�
$�
$�
���Q�S��V�Q�'����T�^�^�A�C�0�!�
"�(��\�\�)�
$�
E�
E���A��!�!�-�0�� � ��1��v�.�1��!�!�-�0�� � �����!2�!%�&�1�%��\�\�/�
*�
Q�
Q�
���Q�S��V�V�,����T�^�^�A�C�0�!�
"�+��\�\�-�
.�
$�
$�
���Q�S�#�t��-�v�6����T�^�^�A�C�0�$�.�.����2I�J�/��\�\�-�
.�
'�
'�
���Q�S��V�Q�'��/�/�� � ������!4�d�n�n�a�[�[�6Q�R�
/��\�\�5�
6�
5�D�
5��#�q�!�f�a�.�C����S�a�A�,�/����T�#�Y��*��/�/�� � ������!4�d�n�n�T�]�]�6S�T�7��\�\�0�
1�
$�C�
$�
���Q�s�V�S�$�K�0�&�9����T�^�^�A�C�0�$�.�.����2I�J�2��\�\�1�
2�
'�C�
'�
���Q�q�T�!�W�a�(��/�/�� � ������!4�d�n�n�a�[�[�6Q�R�
3��\�\�0�
1�
'�
'���A�$�A�J����Q�q�T�1�%����T�^�^�A�.�!�
"�
2�
1�OK�
J��)�
(��*�
)��(�
'��"1�0��0�0��%�
$��+�
*��/�
.��/�
.��7�
6��2�
1��3�
2��2�
1�s��X�81X0�1Y�AY�'Z
�'Y&�Z
�"Y8�?Z
� AZ�A)Z.�	A<[�B([�A/[$�'B[6�A\�
X-�0
X?�
Y�
Y#�&
Y5	�0Z
�8
Z	�Z
�

Z�
Z+�.
Z=�
[�
[!�$
[3�6
\�
\c�.�"SS5n[R(d!URURU5S5 URURU"55S5 U"5nSUlURURU5S5 g)Nc��\rSrSrSrSrSrg)�ZTestSignatureObject.test_signature_on_callable_objects_with_text_signature_attr.<locals>.Ciz(a, /, b, c=True)c��gr r*r�s   r#r��cTestSignatureObject.test_signature_on_callable_objects_with_text_signature_attr.<locals>.C.__call__r)r%r*N)rUrlrmrn�__text_signature__r�rzr*r%r#rpr�s
��!4��
r%rpr@
)))r-..r�
r)rT.rH
.z(x, y))))ru..rH
)r�..rH
.)rr
r�rr�)r^rprs   r#�;test_signature_on_callable_objects_with_text_signature_attr�OTestSignatureObject.test_signature_on_callable_objects_with_text_signature_attrs��	�	�
�+�+����T�^�^�A�.�	�:���������,��	 �
�C��'����������*��	 r%c��"SS5nU"5nSUlURURU5S5 U"5nX"lUR[S5 URU5 SSS5 g!,(df   g=f)Nc��\rSrSrSrSrg)�>TestSignatureObject.test_signature_on_wrapper.<locals>.Wrapperi4c��gr r*res  r#r��GTestSignatureObject.test_signature_on_wrapper.<locals>.Wrapper.__call__5r)r%r*Nr�r*r%r#�Wrapperr�4r�r%r�c��gr r*r�s r#r��?TestSignatureObject.test_signature_on_wrapper.<locals>.<lambda>8r(r%r]�wrapper loop)rSr�rr�r)r^r�rKs   r#�test_signature_on_wrapper�-TestSignatureObject.test_signature_on_wrapper3ss��	�	��)��,����������0��	 ��)��%��
�
#�
#�J��
?��N�N�7�#�@�
?�
?�s�A9�9
Bc�L�URURSSj5S5 g)Nc��U$r r*r�s r#r��?TestSignatureObject.test_signature_on_lambdas.<locals>.<lambda>Cs��ar%)))r-r.rH
.rU
rA
ris r#�test_signature_on_lambdas�-TestSignatureObject.test_signature_on_lambdasBs ���������9��	 r%c	�v�[RR5[RR5[RR	54HJnURUS9 UR
[[R"U55S5 SSS5 ML g!,(df   M^=f)N�rz(*args, **kwargs))
rrrr�	MagicMockrDr�rCrXr�r^rs  r#�test_signature_on_mocks�+TestSignatureObject.test_signature_on_mocksGs���
�M�M��� ��M�M�#�#�%��M�M�#�#�%�
�D�
���4��(�� � ��W�%6�%6�t�%<�!=�?R�S�)�(�
�
)�(�s�,0B)�)
B8	c�h�[RR5[RR54HOnUR	US9 UR[5 [R"U5 SSS5 SSS5 MQ g!,(df   N=f!,(df   Mt=f)Nr�)	rr�NonCallableMock�NonCallableMagicMockrDr�r�rXrr�s  r#�#test_signature_on_noncallable_mocks�7TestSignatureObject.test_signature_on_noncallable_mocksQsy���M�M�)�)�+��M�M�.�.�0�
�D����4��(��&�&�y�1��%�%�d�+�2�)�(�	
�
2�1��)�(�s$�B"�%B�<B"�
B�B"�"
B1	c�H�S[S[4SjnUR[R"U5S:H5 UR[R"U5S:g5 UR[R"U5[:H5 UR[R"U5[:g5 S[S[4SjnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 S[S[4SjnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 S[4SjnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 SS.S[S[4S	jjnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 S[4S
jnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 S[S[4SjnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 S[S[4SjnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 S
nSnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 SS.SjnSS.SjnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 SS.SjnSS.SjnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 SnSS.SjnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 SS.S[4SjjnSS.S[4SjjnUR[R"U5[R"U5:H5 UR[R"U5[R"U5:g5 UR[[R"U55[[R"U555 g)Nrmr�c��gr r*rls  r#r6�8TestSignatureObject.test_signature_equality.<locals>.foo[r�r%r7c��gr r*rls  r#r.�8TestSignatureObject.test_signature_equality.<locals>.barar�r%c��gr r*rls  r#r.r�gr�r%c��gr r*rls  r#r.r�ms��dr%rc��gr r*rls  r#r.r�ss��$r%c��gr r*�r-rs  r#r.r�yr�r%c��gr r*rls  r#r.r�r1r%c��gr r*�rmr-s  r#r��9TestSignatureObject.test_signature_equality.<locals>.spam�r�r%c��gr r*rFs   r#r6r�����Tr%c��gr r*�rrmr-s   r#r.r��r
r%r4r�c��gr r*rFs   r#r6r��r�r%c��gr r*r
s   r#r.r��r�r%c��gr r*��posr-rmrs    r#r6r��r1r%c��gr r*�r

rrmr-s    r#r.r��r1r%c��gr r*r	
s    r#r6r��r�r%c��gr r*r
s    r#r.r��r1r%r�c��gr r*)r

r-rmrr"r�s      r#r6r�����tr%c��gr r*)r

rrmr-r"r�s      r#r.r��r
r%)
r�rO
r]rXrrTrr��hashr�)r^r6r.r�s    r#�test_signature_equality�+TestSignatureObject.test_signature_equalityZsX��+��+��+�����*�*�3�/�2�5�6�����)�)�#�.�"�4�5�����)�)�#�.�)�;�<�����*�*�3�/�9�<�=�+��+��+�����)�)�#�.�'�2C�2C�C�2H�H�I�����*�*�3�/�7�3D�3D�S�3I�I�J������"�"�3�'�(�$�w�/@�/@��/E�*F�	H�	*��)��)�����*�*�3�/�7�3D�3D�S�3I�I�J�����)�)�#�.�'�2C�2C�C�2H�H�I������"�"�3�'�(�$�w�/@�/@��/E�*F�	H�	#��"�����*�*�3�/�7�3D�3D�S�3I�I�J�����)�)�#�.�'�2C�2C�C�2H�H�I������"�"�3�'�(�$�w�/@�/@��/E�*F�	H��.��.�5�.�����*�*�3�/�7�3D�3D�S�3I�I�J�����)�)�#�.�'�2C�2C�C�2H�H�I������"�"�3�'�(�$�w�/@�/@��/E�*F�	H�	(�E�'�����*�*�3�/�7�3D�3D�S�3I�I�J�����)�)�#�.�'�2C�2C�C�2H�H�I������"�"�3�'�(�$�w�/@�/@��/E�*F�	H�	)�S�(�U�(�����*�*�3�/�7�3D�3D�S�3I�I�J�����)�)�#�.�'�2C�2C�C�2H�H�I������"�"�3�'�(�$�w�/@�/@��/E�*F�	H�)�3�)�e�)�����*�*�4�0�G�4E�4E�c�4J�J�K�����)�)�$�/�7�3D�3D�S�3I�I�J������"�"�4�(�)�4��0A�0A�#�0F�+G�	I�	"�!�����)�)�#�.�'�2C�2C�C�2H�H�I�����*�*�3�/�7�3D�3D�S�3I�I�J������"�"�3�'�(�$�w�/@�/@��/E�*F�	H��#��#�����)�)�#�.�'�2C�2C�C�2H�H�I�����*�*�3�/�7�3D�3D�S�3I�I�J������"�"�3�'�(�$�w�/@�/@��/E�*F�	H��(� !�(�����)�)�#�.�'�2C�2C�C�2H�H�I�����*�*�3�/�7�3D�3D�S�3I�I�J������"�"�3�'�(�$�w�/@�/@��/E�*F�	H�	'� !�(�����*�*�3�/�7�3D�3D�S�3I�I�J�����)�)�#�.�'�2C�2C�C�2H�H�I������"�"�3�'�(�$�w�/@�/@��/E�*F�	H�!�;��;�$&�;��;�����)�)�#�.�'�2C�2C�C�2H�H�I�����*�*�3�/�7�3D�3D�S�3I�I�J������"�"�3�'�(�$�w�/@�/@��/E�*F�	Hr%c	� �[Rn[RnSn[R"U5nU"U"SUR5/S9nUR[
U5[
U55 UR[
U5[
URSS955 SSjnUR[
U5[
[R"U555 04SjnUR[S	5 [
[R"U55 SSS5 S04S
jnUR[S	5 [
[R"U55 SSS5 g!,(df   NT=f!,(df   g=f)Nc��gr r*r�s r#r6�8TestSignatureObject.test_signature_hashable.<locals>.foo�r�r%r-r�r��r
r�c��gr r*r�s r#r.�8TestSignatureObject.test_signature_hashable.<locals>.bar�r+r%c��gr r*r�s r#r6r
�r�r%�unhashable typec��gr r*r�s r#r6r
�r/r%)r�r4)rXr�r�r�POSITIONAL_OR_KEYWORDr�r
r�r
r�r�)r^r
r
r6�foo_sig�
manual_sigr.s       r#�test_signature_hashable�+TestSignatureObject.test_signature_hashable�s-������������#�#�C�(���1�S�!�*A�*A�#B�"C�D�
�����g���Z�(8�9����D��M� ��!3�!3�f�!3�!M�N�	P�	����D��M�4��0A�0A�#�0F�+G�H���
�
#�
#�I�/@�
A���"�"�3�'�(�B�	�b��
�
#�
#�I�/@�
A���"�"�3�'�(�B�
A�	B�
A��B�
A�s� E.� E?�.
E<�?
F
c���SSS.S[SS4SjjjnUR[[R"U55S5 UR[[R"U55[R"U5R55 SSS.S[SS4SjjjnUR[[R"U55S5 UR[[R"U55[R"U5R55 S	nUR[[R"U55S
5 UR[[R"U55[R"U5R55 S[[S[[[44SjnUR[[R"U55S5 UR[[R"U55[R"U5R55 S
SK	J
n S[[SU[[44SjnUR[[R"U55S5 UR[[R"U55[R"U5R55 g)Nr#
r-r�r7c��gr r*�r-rmrr�s    r#r6�3TestSignatureObject.test_signature_str.<locals>.foo�r�r%z*(a: int = 1, *, b, c=None, **kwargs) -> 42c��gr r*)r-rmrr"r�s     r#r6r&
�r�r%z.(a: int = 1, *args, b, c=None, **kwargs) -> 42c��gr r*r*r%r#r6r&
�r�r%r
c��gr r*r�s r#r6r&
�r�r%z#(a: list[str]) -> tuple[str, float]r)�Tuplec��gr r*r�s r#r6r&
�r�r%z#(a: list[str]) -> Tuple[str, float]r�
)r�r�rCrXr�formatrDrhrO
r�r*
)r^r6r*
s   r#�test_signature_str�&TestSignatureObject.test_signature_str�sC��	��	�#�	�B�	�����W�.�.�s�3�4�E�	G�����W�.�.�s�3�4� �*�*�3�/�6�6�8�	:�	�T�	�#�	��	�����W�.�.�s�3�4�I�	K�����W�.�.�s�3�4� �*�*�3�/�6�6�8�	:�	�����W�.�.�s�3�4�d�;�����W�.�.�s�3�4� �*�*�3�/�6�6�8�	:�	�4��9�	��s�E�z�!2�	�����W�.�.�s�3�4�>�	@�����W�.�.�s�3�4� �*�*�3�/�6�6�8�	:�	!�	�4��9�	��s�E�z�!2�	�����W�.�.�s�3�4�>�	@�����W�.�.�s�3�4� �*�*�3�/�6�6�8�	:r%c��[Rn[RnSnUR[	[R
"U55S5 UR[	[R
"U55[R
"U5R
55 U"U"SUR5/S9nUR[	U5S5 UR[	U5UR
55 U"U"SUR5U"SUR5/S9nUR[	U5S5 UR[	U5UR
55 U"U"SUR5U"SUR5/S9nUR[	U5S5 UR[	U5UR
55 g)	Nc��X4$r r*)�a_pormr�s   r#r��DTestSignatureObject.test_signature_str_positional_only.<locals>.test��
���<�r%z(a_po, /, *, b, **kwargs)r6r�z(foo, /)r.z(foo, /, **bar)z(foo, /, *bar))
rXr�r�r�rCrr,
r�r�VAR_POSITIONAL)r^r
r
r�s    r#�"test_signature_str_positional_only�6TestSignatureObject.test_signature_str_positional_only�s{����������	 �	
����W�.�.�t�4�5�4�	6�����W�.�.�t�4�5� �*�*�4�0�7�7�9�	;��Q�u�a�&7�&7�8�9�:������T��J�/�����T��D�K�K�M�2��Q�u�a�&7�&7�8��u�a�m�m�4�6�7������T��$5�6�����T��D�K�K�M�2��Q�u�a�&7�&7�8��u�a�&6�&6�7�9�:������T��$4�5�����T��D�K�K�M�2r%c���SSKJnJn SU[S4SUSSS4S	jnS
nSnUR	[
R"U5R5U5 UR	[
R"U5RSS9U5 UR	[
R"U5R[U5S9U5 UR	[
R"U5R[U5S
-
S9U5 UR	[
R"U5RSS9U5 UR	[
R"U5RSS9U5 g)Nr��	Annotated�Literalrurtr�rlr3�
LiteralStringc��gr r*rvs   r#r��7TestSignatureObject.test_signature_format.<locals>.funcr�r%zE(x: Annotated[int, 'meta'], y: Literal['a', 'b'], z: 'LiteralString')zS(
    x: Annotated[int, 'meta'],
    y: Literal['a', 'b'],
    z: 'LiteralString'
)��	max_widthr4r)	r�r9
r:
r�r�rXrr,
r8)r^r9
r:
r��expected_singleline�expected_multilines      r#�test_signature_format�)TestSignatureObject.test_signature_formatse��-�	�I�c�6�k�*�	�w�x�/@�	�_�	�f����
	
������d�#�*�*�,��	
�	
������d�#�*�*�T�*�:��	
�	
������d�#�*�*�S�9L�5M�*�N��	
�	
������d�#�*�*�S�9L�5M�PQ�5Q�*�R��	
�	
������d�#�*�*�Q�*�7��	
�	
������d�#�*�*�R�*�8��	
r%c
��SSKJnJn SUSSU[S4SSS	[S
S4
SjnSnUR[R"U5RS
S9U5 g)Nrr8
r�rlrurtr3r;
r�r�c��gr r*)rur�r3r�s    r#r��ETestSignatureObject.test_signature_format_all_arg_types.<locals>.func+s��
r%z(
    x: Annotated[int, 'meta'],
    /,
    y: Literal['a', 'b'],
    *,
    z: 'LiteralString',
    **kwargs: object
) -> Nonerr>
)	r�r9
r:
r�r�r�rXrr,
)r^r9
r:
r�rA
s     r#�#test_signature_format_all_arg_types�7TestSignatureObject.test_signature_format_all_arg_types(s��-�	��x� �	���f��%�	�
�	��
	��	�
��	
������d�#�*�*�R�*�8��	
r%c��SSjn[R"U5nURnUR[	UR55SSS9nUR
[	UR5S/5 UR
URSUS5 UR
URS5 URSS9nUR
[UR505 [R"U5nURn[R"U[	UR55SSS9nUR
[	UR5S/5 UR
URSUS5 UR
URS5 [R"USS9nUR
[UR505 g)Nr7c��gr r*rls  r#r��CTestSignatureObject.test_signature_replace_parameters.<locals>.testCr�r%r4r�rmr*�r�r7)
rXrr<r
rDr}r�r
rq�copy)r^r�r

r<s    r#�!test_signature_replace_parameters�5TestSignatureObject.test_signature_replace_parametersBss��	�����%���^�^�
��k�k�T�*�*;�*;�*=�%>�q�r�%B�k�C������c�n�n�-��u�5��������,�j��o�>�����.�.��3��k�k�R�k�(������c�n�n�-�r�2�����%���^�^�
��l�l�3�4�
�0A�0A�0C�+D�Q�R�+H�I������c�n�n�-��u�5��������,�j��o�>�����.�.��3��l�l�3�2�.������c�n�n�-�r�2r%c�t�SSjn[R"U5nURSS9nURURS5 URUR
S9nURURUR
5 URSS9nUR
URS5 UR
U[R"U55 [R"U5n[R"USS9nURURS5 [R"X"R
S9nURURUR
5 [R"USS9nUR
URS5 UR
U[R"U55 g)Nr7c��gr r*r*r%r#r��=TestSignatureObject.test_signature_replace_anno.<locals>.testYr�r%r
rL
)rXrr
r�r
r
r�rM
r:
s   r#�test_signature_replace_anno�/TestSignatureObject.test_signature_replace_annoXsI��	�����%���k�k�D�k�1���
�
�c�+�+�T�2��k�k�C�I�I�k�6���
�
�c�+�+�S�Y�Y�7��k�k�B�k�/������.�.��3�����g�/�/��5�6�����%���l�l�3�$�7���
�
�c�+�+�T�2��l�l�3�)�)�<���
�
�c�+�+�S�Y�Y�7��l�l�3�"�5������.�.��3�����g�/�/��5�6r%c���Sn[R"S[RR5n[R"U4S9=o1lURU[R"U55 g)Nc��gr r*r*r%r#r��9TestSignatureObject.test_signature_replaced.<locals>.testor�r%r�r�)rXr�r�r�r�r�r)r^r�r�r

s    r#�test_signature_replaced�+TestSignatureObject.test_signature_replacednsZ��	��&�&�v�w�/@�/@�/P�/P�Q�
�#*�#4�#4��
�#N�N�� �����g�/�/��5�6r%c��"SS5n"SSU5nURURUR5S5 URURUR5URUR55 g)Nc�*�\rSrSrSSS.SSjjjrSrg)	�FTestSignatureObject.test_signature_on_mangled_parameters.<locals>.Spamiwr�)�	_Spam__p2c��gr r*)r^�	_Spam__p1r]
s   r#r6�JTestSignatureObject.test_signature_on_mangled_parameters.<locals>.Spam.fooxr)r%r*N)r5)r_
r4r]
r5r�r*r%r#r+r\
ws��
�a�
�
r%r+c��\rSrSrSrg)�ETestSignatureObject.test_signature_on_mangled_parameters.<locals>.Hamizr*Nr-r*r%r#�Hamrb
zr�r%rc
))rH)r_
r5r4rH
)r]
r�r5rN
.)r�rr6)r^r+rc
s   r#�$test_signature_on_mangled_parameters�8TestSignatureObject.test_signature_on_mangled_parametersvsk��	�	�	�$�	�	
���������1��	 �	
���������1�������0�	2r%c��"SS[R5nSSjnURU5nURX15 g)Nc��\rSrSrSrg)�PTestSignatureObject.test_signature_from_callable_python_obj.<locals>.MySignaturei�r*Nr-r*r%r#r�	rh
����dr%r�	c��gr r*rls  r#r6�HTestSignatureObject.test_signature_from_callable_python_obj.<locals>.foo�r(r%�rmr4�rXr�r�
�assertIsInstance�r^r�	r6r
s    r#�'test_signature_from_callable_python_obj�;TestSignatureObject.test_signature_from_callable_python_obj�s1��2�'�+�+�2� ��+�+�C�0�����g�3r%c��"SS[R5n"SS5nURU5nURX15 g)Nc��\rSrSrSrg)�KTestSignatureObject.test_signature_from_callable_class.<locals>.MySignaturei�r*Nr-r*r%r#r�	rt
�ri
r%r�	c��\rSrSrSrg)�CTestSignatureObject.test_signature_from_callable_class.<locals>.fooi�r*Nr-r*r%r#r6rv
�r0	r%r6rm
ro
s    r#�"test_signature_from_callable_class�6TestSignatureObject.test_signature_from_callable_class�s5��	3�'�+�+�2����+�+�C�0�����g�3r%c��"SS[R5nUR[R5nURX!5 g)Nc��\rSrSrSrg)�QTestSignatureObject.test_signature_from_callable_builtin_obj.<locals>.MySignaturei�r*Nr-r*r%r#r�	r{
�ri
r%r�	)rXr�r�
r�r�rn
)r^r�	r

s   r#�(test_signature_from_callable_builtin_obj�<TestSignatureObject.test_signature_from_callable_builtin_obj�s4��	3�'�+�+�2��'�'����8�����c�/r%c�`�[5H[n[R"U5n[UR5n[U5nUR
U5 URX45 M] [R"[5n[UR5nURU[5 gr )
rCrXrrDr<rrTr�rLrrs     r#�3test_signature_definition_order_preserved_on_kwonly�GTestSignatureObject.test_signature_definition_order_preserved_on_kwonly�s���G�I�B��)�)�"�-�I��Y�)�)�*�A��a�y�H��O�O�A�����Q�)�J��%�%�&I�J�	���%�%�&������<�=r%c��[R"S5Rn[R"S5RnURX5 g)Nc��gr r*r�s  r#r��ITestSignatureObject.test_signater_parameters_is_ordered.<locals>.<lambda>�r"r%c��gr r*r�s  r#r�r�
�r"r%)rXrr<r�)r^�p1�p2s   r#�#test_signater_parameters_is_ordered�7TestSignatureObject.test_signater_parameters_is_ordered�s>��
�
�
�0�
1�
<�
<��
�
�
�0�
1�
<�
<�����B�#r%c�n�"SS5nSUS[4SjnSUSSS[4Sjn[R[RR4GHMnURUS	9 U"U5nUR
UR[5 UR
URSRU5 U"U[5S
9nUR
UR[5 UR
URSRU5 U"US[0[5S9nUR
UR[5 UR
URSRU5 UR
URSRS5 SSS5 GMP g!,(df   GMc=f)Nc��\rSrSrSrg)�QTestSignatureObject.test_signature_annotations_with_local_namespaces.<locals>.Fooi�r*Nr-r*r%r#r�r�
�s��3r%r�r6r�c��gr r*r1s r#r��RTestSignatureObject.test_signature_annotations_with_local_namespaces.<locals>.func�r�r%r.r�c��gr r*�r6r.s  r#�func2�STestSignatureObject.test_signature_annotations_with_local_namespaces.<locals>.func2�r�r%��signature_func)r�)rBr�)r�rXrr�r�
rDr�r
r<r
r�)r^r�r�r�
r�
�sig1r
�sig3s        r#�0test_signature_annotations_with_local_namespaces�DTestSignatureObject.test_signature_annotations_with_local_namespaces�sO����'�c�'�c�'�4�s�4��4�3�4�&�0�0�'�2C�2C�2Q�2Q�R�N����~��>�%�d�+��� � ��!7�!7��=�� � �����!7�!B�!B�C�H�%�d�6�8�<��� � ��!7�!7��=�� � �����!7�!B�!B�C�H�%�e�e�S�\�&�(�S��� � ��!7�!7��=�� � �����!7�!B�!B�C�H�� � �����!7�!B�!B�E�J�?�>�S�>�>�s
�$D2F$�$
F4	c��[n[Rn[Rn[RRn[R
[RR4GHAnURUS9 URU"UR5U"U"SU5U"SU54S95 URU"UR5U"SU"SUSS9U"SUSS94S	95 URU"UR5U"SU"SUSS9U"SUS
S9U"SUSS94S	95 URU"UR5U"U"SUSS9U"SUS
S9U"SUS
S94S95 [(d'URU"UR5U"55 URU"UR5U"U"SU5U"SU5U"SU54S95 URU"URSS9U"U"SU5U"SU54S95 URU"URSS9U"URU"SU[ S9U"SU["S94S	95 URU"URSS9U"URU"SU[ S9U"SUSS9U"SXARS94S	95 URU"URSS9U"U"SUSS9U"SUSS9U"SUSS94S95 [$[&S.n[([*S.nUR-[.5 U"URSUS9 SSS5 URU"URSUS9U"[*U"SU[ S9U"SU[(S94S	95 URU"URSXgS9U"[*U"SU[$S9U"SU[(S94S	95 SSS5 GMD g!,(df   N�=f!,(df   GMh=f)Nr�
r-rmr�rEr��r
rC)r
r<r^rr_r`TrG)r�rC)rCrErAr?)r@rBr�)rrXr�r�r
rr�
rDr�rEr�rTrUr
rVrWr�rCrO
�complexrhrqr��	NameError)r^rZr

�par�PORKr�
�globalns�localnss        r#�test_signature_eval_str�+TestSignatureObject.test_signature_eval_str�s���,����������� � �6�6��&�0�0�'�2C�2C�2Q�2Q�R�N����~��>�� � �"�3�;�;�/����T�N���T�N�$���� � �"�3�<�<�0��*3���T�e�<���T�e�<�$���� � �"�3�=�=�1��*3���T�e�<���T�g�>���T�i�@�$���� � �"�3�=�=�1����T�g�>���T�g�>���T�k�B�$���,�+��$�$�^�C�4H�4H�%I�3�5�Q�� � ���0H�0H�!I����T�N���T�N���T�N�$���� � �"�3�;�;��>����T�N���T�N�$���� � �"�3�<�<�$�?��*-�+�+���T�c�:���T�c�:�$���� � �"�3�=�=�4�@��*-�+�+���T�c�:���T�e�<���T�k�k�B�$���� � �"�3�=�=�4�@����T�e�<���T�e�<���T�i�@�$���$)��9��"'�D�9���&�&�y�1�"�3�<�<�$��Q�2�� � �"�3�<�<�$�w�O��*.���T�c�:���T�e�<�$���� � �"�3�<�<�$��a��*.���T�e�<���T�e�<�$���w?�>�S�`2�1��_?�>�s&�>J	O�N2�B
O�2
O�<O�
O	c��"SS5nSnU"U5nSUl[R[RR4HFnURUS9 UR
U"U5[R"55 SSS5 MH UR
[R"U505 g!,(df   M�=f)Nc� �\rSrSrSrSrSrg)�DTestSignatureObject.test_signature_none_annotation.<locals>.funclikei+c��URUlURUlURUlURUlURUlXlgr r�
r�s  r#r��MTestSignatureObject.test_signature_none_annotation.<locals>.funclike.__init__0r�
r%c�&�UR"U0UD6$r r�r�s   r#r��MTestSignatureObject.test_signature_none_annotation.<locals>.funclike.__call__8r�
r%r�
Nr�
r*r%r#r�
r�
+r�
r%r�
c��gr r*r*r%r#r6�?TestSignatureObject.test_signature_none_annotation.<locals>.foo;r�r%r�
)r�rXrr�r�
rDr�rS)r^r�
r6r�
s    r#�test_signature_none_annotation�2TestSignatureObject.test_signature_none_annotation*s���	2�	2� 	��s�m��"���&�0�0�'�2C�2C�2Q�2Q�R�N����~��>�� � ���!4�g�6G�6G�6I�J�?�>�S�	
����0�0��5�r�:�?�>�s�,B8�8
C	c�h�SUl"SS5nURURU5S5 g)Nc��\rSrSrSrSrg)�4TestSignatureObject.test_signature_as_str.<locals>.SiE�(a, b=2)r*N)rUrlrmrnr�rzr*r%r#r
r�
Es��&�Mr%r
�)rG
r~.)r
r�r�r^r
s  r#�test_signature_as_str�)TestSignatureObject.test_signature_as_strCs3�����	'�	'�	
�������*��	 r%c��"SS5nURURU5S5 "SS5nURURU5S5 g)Nc�$�\rSrSr\S5rSrg)�9TestSignatureObject.test_signature_as_callable.<locals>.SiOc��g�Nr�
r*rs r#r��GTestSignatureObject.test_signature_as_callable.<locals>.S.__signature__P���!r%r*N)rUrlrmrnr
r�rzr*r%r#r
r�
Os��
�
"��
"r%r
r�
c�$�\rSrSr\S5rSrg)r�
iYc��gr�
r*r*r%r#r�r�
Zr�
r%r*N)rUrlrmrnrr�rzr*r%r#r
r�
Ys��
�
"��
"r%rA
r�
s  r#�test_signature_as_callable�.TestSignatureObject.test_signature_as_callableMsV��	"�	"�
	
�������*��	 �
	"�	"�
	
�������*��	 r%c��"SS5n"SSU5n"SSU5nUR[R"U5[R"U55 g)Nc�.^�\rSrSrU4SjrSrSrU=r$)�@TestSignatureObject.test_signature_on_derived_classes.<locals>.Bifc�">�[TU]U5$r r�)r^r"r�rhs   �r#r4�HTestSignatureObject.test_signature_on_derived_classes.<locals>.B.__new__gs����w��t�,�,r%c��Xlgr �rr�	s  r#r��ITestSignatureObject.test_signature_on_derived_classes.<locals>.B.__init__is��"�
r%r�
)rUrlrmrnr4r�rzrtrus@r#r�r�
fs���
-�
#�
#r%r�c�(^�\rSrSrU4SjrSrU=r$)�ATestSignatureObject.test_signature_on_derived_classes.<locals>.D1ilc�$>�[TU]U5 gr r�)r^rrhs  �r#r��JTestSignatureObject.test_signature_on_derived_classes.<locals>.D1.__init__ms����� ��'r%r*r�rus@r#�D1r�
ls
���
(�
(r%r�
c��\rSrSrSrg)�ATestSignatureObject.test_signature_on_derived_classes.<locals>.D2ipr*Nr-r*r%r#�D2r�
pr�r%r�
)r�rXr)r^r�r�
r�
s    r#�!test_signature_on_derived_classes�5TestSignatureObject.test_signature_on_derived_classescsL��	#�	#�	(��	(�	��	�	
����*�*�2�.��0A�0A�"�0E�Fr%c�d�"SS5nURURU"55S5 g)Nc� �\rSrSrSrSrSrg)�STestSignatureObject.test_signature_on_non_comparable.<locals>.NoncomparableCallableivc��gr r*rZs  r#r��\TestSignatureObject.test_signature_on_non_comparable.<locals>.NoncomparableCallable.__call__wr)r%c��SS- g)Nr4rr*)r^rbs  r#rr�ZTestSignatureObject.test_signature_on_non_comparable.<locals>.NoncomparableCallable.__eq__ys	���!�r%r*N)rUrlrmrnr�rrrzr*r%r#�NoncomparableCallabler�
vs��
�
r%r�
r]rA
)r^r�
s  r#� test_signature_on_non_comparable�4TestSignatureObject.test_signature_on_non_comparableus0��	�	�
	
������(=�(?�@��	 r%rN)HrUrlrmrnrrr 
r5
r;
rB
rI
rP
rV
ri
rrr�r
r�
r�
r�
r�
r�
r�
r�
r�
r�
r�
rr"r3r:rTr�r�rr2rJrhrr�r�r�r�r�r�r�r�r�r
r!
r-
r5
rB
rG
rN
rS
rX
rd
rp
rw
r|
r
r�
r�
r�
r�
r�
r�
r�
r�
rzr*r%r#r
r
�st���	I��	I�J�X9�8	'�:�
 �!�
 �"H�F�
�_�_�)�M�O�LC�O��LC�\�
�_�_�)�M�O�:�O��:�(�1>��1>�f�_�_�)�M�O�I�O�I�
"�3H�jG�&#�6 � �. �.M�^# �J=�
E �Nn �`P0�da3�FV0�p@"�Da=�F �8!��_�_�)�M�O�9�O�9�$�_�_�)�M�O�C�O�C�.z"�x �.
$� �
T�,�QH�f)�0":�H3�4#
�J
�43�,7�,7�2� 4��_�_�)�M�O�4�O�4��_�_�)�M�O�0�O�0�
	>�$�
K�(h�T;�2 � �,G�$ r%r
c�N�\rSrSrSrSrSrSrSrSr	\
S5rS	rS
r
g)�TestParameterObjecti�c��[RnURURURs=:=(a= UR
s=:=(a& URs=:=(a UR:Os 5 UR[UR5S5 URS[UR5;5 g)Nr�)rXr�rTr�r
r4
�KEYWORD_ONLYrr�rCrt	)r^r
s  r#�test_signature_parameter_kinds�2TestParameterObject.test_signature_parameter_kinds�s�����������)�)�A�,C�,C�J�J��(�(�J�J�+,�>�>�J�J�<=�M�M�J�	K�	
����Q�.�.�/�1B�C����)�T�!�2C�2C�-D�D�Er%c���[R"SS[RRS9nURURS5 URUR
S5 UR
URUR5 URUR[RR5 UR[S5 [R"SSSS9 SSS5 UR[S5 [R"S[RRS9 SSS5 UR[S5 [R"S	[RRS9 SSS5 UR[S
5 [R"S[RRS9 SSS5 UR[S5 [R"S[RRS9 SSS5 UR[S5 [R"S
[RRS9 SSS5 UR[S5 [R"SS[RRS9 SSS5 UR[S5 [R"SS[RRS9 SSS5 [R"SS[RRS9nUR[S5 UR![RRS9 SSS5 UR#[%U5R'S55 UR#S[%U5;5 g!,(df   GN�=f!,(df   GN�=f!,(df   GNl=f!,(df   GN2=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GNH=f!,(df   N�=f)Nr6r�r�r�z)value '123' is not a valid Parameter.kind�123znot a valid parameter namer0r�from�name must be a strzis not a valid parameter name�$z.azcannot have default valuesr-r7z
<Parameterz"a=42")rXr�r�r�r�r�r�r
r
r�r�rrr�r4
r
r
rTrt	r��r^r>s  r#�test_signature_parameter_object�3TestParameterObject.test_signature_parameter_object�s%�����e�R�#*�#4�#4�#D�#D�
F���������'�������B�'��
�
�a�l�l�A�G�G�,��������!2�!2�!B�!B�C�
�
#�
#�J�1A�B����e�R�e�<�B��
#�
#�J�0L�
M����c��(9�(9�(E�(E�F�N��
#�
#�J�0L�
M����f�7�+<�+<�+H�+H�I�N��
#�
#�I�/C�
D����d��):�):�)F�)F�G�E��
#�
#�J�$C�E����c��(9�(9�(E�(E�F�E��
#�
#�J�$C�E����d��):�):�)F�)F�G�E��
#�
#�J�0L�
M����c�2�#*�#4�#4�#@�#@�
B�N��
#�
#�J�0L�
M����c�2�#*�#4�#4�#C�#C�
E�N�
���c�2�#*�#4�#4�#J�#J�
L��
�
#�
#�J�0L�
M�
�I�I�7�,�,�;�;�I�<�N�	
����Q��*�*�<�8�9�����D��G�+�,�GB�B��N�
M��N�
M��E�
D��E�E��E�E��N�
M��N�
M��N�
M�sl�O�.O�.O+�$.O=�0.P�<.P!�/P3�/Q�(Q�
O�
O(�+
O:�=
P�
P�!
P0�3
Q�
Q�
Q%c��[RnU"SURS9nUR[	U5[	U"SURS955 UR[	U5[	U"SURSS955 UR[	U5[	UR
URS955 g)Nr6rr7r�)rXr�r�r�r
r�r
r4
)r^r
r6s   r#�!test_signature_parameter_hashable�5TestParameterObject.test_signature_parameter_hashable�s���������A�-�-�.������c��D��5�q�7H�7H�)I�$J�K����D��I�t�A�e�!�:K�:K�68�-:�(;�	<����D��I� ����!�2B�2B��!C�D�	Fr%c	�$�[RnU"SS[RRS9nURX":H5 UR	X":g5 UR	US:H5 URUS:g5 URU[
:H5 UR	U[
:g5 URX!"SS[RRS9:H5 UR	X!"SS[RRS9:g5 g)Nr6r7r�
)rXr�r�
rTr]r)r^r
r>s   r#�!test_signature_parameter_equality�5TestParameterObject.test_signature_parameter_equality�s�������
�e�R�g�&7�&7�&D�&D�E������������� �����b��!�����R�� �����Y��'�����i��(�����Q�u�b�$+�$5�$5�$B�$B�D�D�	E�����a��r�%,�%6�%6�%C�%C�E�E�	Fr%c�L
�[R"SS[RRS9nURUR	5U5 URUR	5U5 UR[R"U5U5 UR[R"U5U5 UR	SS9nURURS5 UR	URS9nURX!5 [R"USS9nURURS5 [R"X3RS9nURX15 UR	SS9nURURS5 URX!5 [R"USS9nURURS5 URX15 UR[S5 UR	URS9nSSS5 UR[S5 [R"X3RS9nSSS5 UR	SSS	9nURURS5 URX!5 [R"USSS	9nURURS5 URX15 UR	SURS	9nURURUR5 [R"USURS	9nURURUR5 UR	SURS9nURUR UR5 URX!5 [R"USURS9nURUR UR5 URX15 UR[S
5 UR	URS9nSSS5 UR[S
5 [R"X3RS9nSSS5 UR	URS9nURX!5 [R"X3RS9nURX15 g!,(df   GN�=f!,(df   GN�=f!,(df   N�=f!,(df   N�=f)Nr6r7r�
r4r�
r.r
zname is a required attribute)r�r�z<value <class 'inspect._empty'> is not a valid Parameter.kindr)rXr�r�
rXr
r�rM
r
r
r�r�r�rr�r�r
r�)r^r>r�
�p3s    r#� test_signature_parameter_replace�4TestParameterObject.test_signature_parameter_replace�s������e�R�#*�#4�#4�#A�#A�
C��	
�������a�(��������a�(�������a��!�,�������a��!�,�
�Y�Y�!�Y�
$���������*�
�Z�Z�2�8�8�Z�
,�������
�\�\�!��
*���������*�
�\�\�"���
2�������
�Z�Z�U�Z�
#��������%�(����B�"�
�\�\�"�5�
)��������%�(����B�"�
�
#�
#�J�$B�D��������*�B�D��
#�
#�J�$B�D����b�x�x�0�B�D��Z�Z�U�D�Z�
1���
�
�b�j�j�$�'����B�"�
�\�\�"�5�$�
7���
�
�b�j�j�$�'����B�"�
�Z�Z�U�B�H�H�Z�
5���
�
�b�j�j�"�(�(�+�
�\�\�"�5�"�(�(�
;���
�
�b�j�j�"�(�(�+�
�Z�Z���)A�)A�Z�
B��������"�":�":�;����B�"�
�\�\�"�b�r�/G�/G�
H��������"�":�":�;����B�"�
�
#�
#�J�%D�E��������*�B�E��
#�
#�J�%D�E����b�x�x�0�B�E�
�Z�Z�R�_�_�Z�
-�������
�\�\�"�?�?�
3�������MD�D��D�D��.E�E��E�E�s0�S �<S2�'T�T� 
S/�2
T�
T�
T#c��UR[S5 [R"S[RRS9 SSS5 g!,(df   g=f)Nr�
r)r�r�rXr�r�ris r#�(test_signature_parameter_positional_only�<TestParameterObject.test_signature_parameter_positional_onlys<��
�
#�
#�I�/C�
D����d��):�):�)J�)J�K�E�
D�
D�s�.A�
Ac��UR[S5 [R"S[RRS9 SSS5 [R"S[RR
S9nUR
UR[RR5 UR
URS5 g!,(df   N�=f)NzYimplicit arguments must be passed as positional or keyword arguments, not positional-onlyz.0r�	implicit0)	r�rrXr�r�r
r�r�r�)r^r�s  r#�!test_signature_parameter_implicit�5TestParameterObject.test_signature_parameter_implicits���
�
#�
#�J�%:�;�
���d��):�):�)J�)J�K�	;��!�!��w�(�(�>�>�@��������W�%6�%6�%F�%F�G�������[�1�;�;�s�.C�
Cc�6�[R"S[RRS9nUR[5 SUlSSS5 UR[5 SUlSSS5 g!,(df   N4=f!,(df   g=f)Nr�rr.r�)rXr�r�
r�r�r6r�r�
s  r#�%test_signature_parameter_immutability�9TestParameterObject.test_signature_parameter_immutability!sk�����f�7�+<�+<�+I�+I�J��
�
�
�~�
.��A�E�/��
�
�~�
.��A�F�/�
.�/�
.��/�
.�s�A9�(B
�9
B�

Br*N)rUrlrmrnr�
r�
r�
r�
r�
r�
rr�
r�
rzr*r%r#r�
r�
�s?��F�+-�ZF�F� ? �BL��
2��
2�r%r�
c��\rSrSr\S5rSrSrSrSr	Sr
SrS	rS
r
SrSrS
rSr\S5rSrSrg)�TestSignatureBindi+c��[R"U5nUR"U0UD6nU"UR0URD6$![
an[UeSnAff=fr )rXrrr"r�r�r�)r�r"r�r

r!r�s      r#ry�TestSignatureBind.call,sZ������%��
�X�X�t�
&�v�
&��	(�����.�B�I�I�.�.���	(� �a�'��	(�s�A�
A�A�Ac���SnURURU5S5 UR[S5 URUS5 SSS5 UR[S5 URUSSS9 SSS5 UR[S5 URUSS9 SSS5 g!,(df   Nn=f!,(df   NO=f!,(df   g=f)Nc��gr	r*r*r%r#r��9TestSignatureBind.test_signature_bind_empty.<locals>.test7s��r%r7�too many positional argumentsr4rr	�)got an unexpected keyword argument 'spam'�r�ryr�r�r�s  r#�test_signature_bind_empty�+TestSignatureBind.test_signature_bind_empty6s���	�	
������4��"�-�
�
#�
#�I�/N�
O��I�I�d�A��P�
�
#�
#�I�/N�
O��I�I�d�A�B�I�'�P�
�
#�
#��B�D�
�I�I�d��I�#�D�D�	P�
O��
O�
O��D�D�s#�B6�,C�C�6
C�
C�
C&c	��SnURURU5S045 URURUS5S045 URURUSS5S045 URURUSS9SS	S045 URURUSSS9SS	S045 URURUS
S9SSS
045 URURUSSSS9SS	S045 g)
Nc��X4$r r*r]
s  r#r��7TestSignatureBind.test_signature_bind_var.<locals>.testEr3
r%r*r4r�
r5rzr.r1r6rr�r"�r�ryr�s  r#�test_signature_bind_var�)TestSignatureBind.test_signature_bind_varDs��	 �	
������4��2�r�(�3�������4��+�d�B�Z�8�������4��A�.����=�������4�U��3�b�5�%�.�5I�J�������4����6���u�~�8N�O�������4�b��1�B����3E�F�������4��A�5��9� �5�%�.�1�	3r%c�J�SnURURUSSS5S5 UR[S5 URUSSSS5 SSS5 UR[S5 URUS5 SSS5 UR[S	5 URU5 SSS5 SSjnURURUSSS5S5 URURUSS5S5 SS
jnURURUS
SS9S5 URURUS
S9S5 URURUS
S9S5 g!,(df   GN#=f!,(df   GN=f!,(df   N�=f)Nc�
�XU4$r r*rFs   r#r��=TestSignatureBind.test_signature_bind_just_args.<locals>.testRrr%r4r5r�r�rr�z missing a required argument: 'b'z missing a required argument: 'a'rc�
�XU4$r r*rFs   r#r�rbrr%)r4r5rc�
�XU4$r r*rFs   r#r�rgrr%r�r�)rr5r�r�)rr5r�r)r4rr�rU
rr�s  r#�test_signature_bind_just_args�/TestSignatureBind.test_signature_bind_just_argsQsg��	�	
������4��A�q�1�9�=�
�
#�
#�I�/N�
O��I�I�d�A�q�!�Q�'�P��
#�
#�I�$F�H��I�I�d�A��H��
#�
#�I�$F�H��I�I�d�O�H�	�������4��A�q�1�9�=�������4��A�.�
�;�	�������4�2���4�k�B�������4�2��.�
�;�������4�2��.�
�;�)P�
O��H�H��H�H�s#�E0�2F�#F�0
E?�
F�
F"c��SnURURU5S5 URURUSSS5S5 g)Nc��U$r r*r�s r#r��ATestSignatureBind.test_signature_bind_varargs_order.<locals>.testns���Kr%r*r4r5r�r�rr�s  r#�!test_signature_bind_varargs_order�3TestSignatureBind.test_signature_bind_varargs_orderms@��	�	
������4��"�-�������4��A�q�1�9�=r%c
��SSjnURURUSSSSS5S5 URURUSS5S5 URURUSSS	9S
5 URURUSSS9S5 UR[S5 URUSSSSS
9 SSS5 g!,(df   g=f)Nr�c�
�XX#4$r r*)r-rmrr"s    r#r��DTestSignatureBind.test_signature_bind_args_and_varargs.<locals>.testus����=� r%r4r5r�r�)r4r5r�)r�r�)r4r5r�r*r
)r5r4r�r*rz multiple values for argument 'c'r#
�r�rr�s  r#�$test_signature_bind_args_and_varargs�6TestSignatureBind.test_signature_bind_args_and_varargsts���	!�	
������4��A�q�!�Q�7�9J�K�������4��A�.�
�>�������4�1���2�M�B�������4��a��0�-�@�
�
#�
#�I�%G�I��I�I�d�A�q�!�q�I�)�I�I�I�s�'C�
Cc��SnURURU505 URURUSSS9SSS.5 g)Nc��U$r r*)r�s r#r��?TestSignatureBind.test_signature_bind_just_kwargs.<locals>.test�s���Mr%r.r��r6r�rr�s  r#�test_signature_bind_just_kwargs�1TestSignatureBind.test_signature_bind_just_kwargs�sH��	�	
������4��"�-�������4�U���?�!&��6�	8r%c��SSjnURURUSS5SSS045 URURUSSSSS9SSSSSS.45 URURUSSSSS9SSSSSS.45 URURUSSSSS	9SSSSSS.45 URURUSSSSS
9SSSSSS.45 URURUSSSSSS9SSSSSS.45 URURUSSSSS
9SSSSS045 URURUSSSS9SSS045 g)Nr�c�
�XX#4$r r*r%
s    r#r��CTestSignatureBind.test_signature_bind_args_and_kwargs.<locals>.test�s����?�"r%r4r5r.r�r&)rmr-r6r�)r-rmr6r�)rmr6r�r�)rmrr6r�r1r6r�)rr-rmr rr�s  r#�#test_signature_bind_args_and_kwargs�5TestSignatureBind.test_signature_bind_args_and_kwargs�s���	#�	
������4��A�.��A�q�"�
�>�������4��A�5�u��E��Q��5�%�#@�A�	C�������4�1��u�5��I��Q��5�%�#@�A�	C�������4�1��u�5��I��Q��5�%�#@�A�	C�������4��a�U���G��Q��5�%�#@�A�	C�������4��a�1�%�e��L��Q��5�%�#@�A�	C�������4��A�q�e��<��Q��E�5�>�2�	4�������4�1��Q��7��Q��2��	(r%c
��SnUR[S5 URUS5 SSS5 URURUSS9S5 SS.SjnUR[S5 URUS5 SSS5 SnURURUSSS	9S
5 URURUSSS9S
5 UR[S5 URUSSS
S9 SSS5 UR[S5 URUSS5 SSS5 UR[S5 URUSSSS	9 SSS5 UR[S5 URUSSSS9 SSS5 UR[S5 URUS5 SSS5 SnURURUSSS	9SS045 URURUSSS9SS045 URURUSSSS9SSSS045 URURUSSSS9SSSS045 UR[S5 URUSSS9 SSS5 URURUSSSS
S9SSSS
S.45 g!,(df   GN�=f!,(df   GNO=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GNn=f!,(df   N�=f)Nc��U$r r*r1s r#r��:TestSignatureBind.test_signature_bind_kwonly.<locals>.test�����Jr%rr4r1c��U$r r*)r-r6r.s   r#r�r0�r1r%z"missing a required argument: 'bar'c��X4$r r*r�
s  r#r�r0�s	���8�Or%r5r�rz)r.r6rr)r.r6r�r�)r.r�z/missing a required keyword-only argument: 'bar'c�
�XU4$r r*)r6r.�bins   r#r�r0�s���S�=� r%r�
r�)r�r6r.z"missing a required argument: 'foo')r�r.)r.r5r�)r5r�)r�r�ryr�r�s  r#�test_signature_bind_kwonly�,TestSignatureBind.test_signature_bind_kwonly�s!��	�
�
#�
#�I�%D�F��I�I�d�A��F�	
������4�Q��/��3��	�
�
#�
#�I�%I�K��I�I�d�A��K�	�������4����2�F�;�������4�Q�A��6��?�
�
#�
#��B�D�
�I�I�d��q�r�I�2�D�
�
#�
#�I�%D�F��I�I�d�A�q�!�F��
#�
#�I�%D�F��I�I�d�A�q�a�I�(�F��
#�
#��B�D�
�I�I�d�A�1�5�I�1�D�
�
#�
#�I�&7�8�
�I�I�d�A��8�
	!�������4����2�Q��2�J�?�������4�Q�A��6��A�r�
�C�������4�����>��Q����0�	2�������4�e����B��Q����0�	2�
�
#�
#�I�$H�J��I�I�d��A�I�.�J�	
������4���q�r��B��Q��2� 6�7�	9�eF�F��K�K��D�D��
F�F��F�F��D�D��
8�8��J�J�s_�J;�2K
�(K�K1�L�<L�-L'�7L9�;
K
�
K�
K.�1
L�
L�
L$�'
L6�9
Mc�Z�SS.Sjn[R"U5nURSSSSSS	S
9nUR[	UR
R
55SSS
SSSS	S.445 URURSSSS	S
.5 URURS5 g)Nr
�r3c��gr r*)r-rmr3r"r�s     r#r��=TestSignatureBind.test_signature_bind_arguments.<locals>.test�r�r%rrr2rPrn�<)rmrr"r��r-r)r")r)rmr2r�)rr"r�)rr)	rXrrr�rh�	arguments�itemsr�r"�r^r�r

r!s    r#�test_signature_bind_arguments�/TestSignatureBind.test_signature_bind_arguments�s��� #�	�����%��
�X�X�b�"��b�r�"�X�
=��	
����r�|�|�1�1�3�4�#�_�i�#�2�r�R�%H�I�K�	L�	
������!��B�"�E�	G�������(�+r%c�|�SSS.SjjnURURUSSSS	S
S9SSSS	S
045 URURUSS5SSSSS045 URURUSSSS	S9SSSSS	045 URURUSSSS	SS
9SSSSS	SS045 URURUSSSSSS	S9SSSSS	SS045 URURUSSSSS	SS
9SSSSS	SS045 URURUSSSS9SSSSSSS045 UR[S5 URUSSS9 SSS5 SSjnUR[S5 URUSSS9 SSS5 g!,(df   ND=f!,(df   g=f)Nr�r7rnr�c��XX#XE4$r r*)r1
�b_po�c_por6r.r�s      r#r��CTestSignatureBind.test_signature_bind_positional_only.<locals>.test�s���t�#�5�5r%r4r5r�r��r�
r)r6r.rFrFr2�)rFr6r.)rFz3missing a required positional-only argument: 'a_po')r1
rEc��X4$r r*�rF�d_pos  r#�without_var_kwargs�QTestSignatureBind.test_signature_bind_positional_only.<locals>.without_var_kwargs�s
���:�r%zCpositional-only arguments passed as keyword arguments: 'c_po, d_po'r7rVrK)r�r7)r�r�r)r^r�rMs   r#�#test_signature_bind_positional_only�5TestSignatureBind.test_signature_bind_positional_only�s��	6�r�	6�	
������4��A�q�!���;��Q��1�a��,�	.�	
������4��A�.��Q��2�r�2�.�	0�	
������4��A�1�!��<��Q��1�a��,�	.�	
������4��A�1�!�"��E��Q��1�a�&�"��6�	8�	
������4��A�r���q��I��Q��A�q�6�2�,�7�	9�	
������4��A�r�q�a�b��I��Q��A�q�6�2�,�7�	9�	
������4��A�A��6��Q��2�r�F�A�;�7�	9��
#�
#�I�/d�
e��I�I�d���I�+�f�	��
#�
#��Q�
�
�I�I�(�r��I�;�	
�
�
f�
e��
�
�s�F�F-�
F*�-
F;c���Sn[R"U5nURSSS5nURURS5 URSSSS9nURURS5 g)Nc��gr r*)r-r^rms   r#r��ATestSignatureBind.test_signature_bind_with_self_arg.<locals>.test
r�r%r4r5r�r�re)rXrrr�r"r@s    r#�!test_signature_bind_with_self_arg�3TestSignatureBind.test_signature_bind_with_self_argse��	�����%��
�X�X�a��A�
��������)�,�
�X�X�a�a�1�X�
%��������)�,r%c��Sn[R"U5nUR[S5 UR	SSS9 SSS5 SnURUR
USS9SS	S045 [R"U5nUR	SS9nURURS
S	S005 g!,(df   N{=f)Nc��X4$r r*�r-r"s  r#r��?TestSignatureBind.test_signature_bind_vararg_name.<locals>.tests	���7�Nr%z)got an unexpected keyword argument 'args'rr4rXc��X4$r r*r]
s  r#r�rYr3
r%r�r*r"r�)rXrr�r�rr�ryr>r@s    r#�test_signature_bind_vararg_name�1TestSignatureBind.test_signature_bind_vararg_names���	�����%��
�
#�
#��B�D�
�H�H�q�q�H�!�D�
	 �������4�a��0�2���{�2C�D�����%��
�X�X�1�X�
���������6�1�+�'>�?�D�D�s�B6�6
Cc���SnURRSn[R"U05n[	[S55nUR
[URX4551Sk5 g)Nc�8�[S[S555$)Nc3�*# �UH	oU-v� M g7fr r*)r
r3s  r#r
�WTestSignatureBind.test_signature_bind_implicit_arg.<locals>.make_set.<locals>.<genexpr>(s���/�h��1�u�h�s�r�)rWr7r*r%r#�make_set�DTestSignatureBind.test_signature_bind_implicit_arg.<locals>.make_set's���/�e�A�h�/�/�/r%r4r�>rr4r�r�r�)	r��	co_constsr�r�iterr7r�rWry)r^ra�gencomp_code�gencomp_func�iterators     r#� test_signature_bind_implicit_arg�2TestSignatureBind.test_signature_bind_implicit_arg$s[��	0��(�(�2�2�1�5���)�)�,��;����a��>������T�Y�Y�|�>�?�AQ�Rr%c���Sn[R"U5nURSSS9nURURSS05 URSURR55 g)Nc�&�XRU54$r )r�)r.r�s  r#r6�ATestSignatureBind.test_signature_bind_posonly_kwargs.<locals>.foo0s���
�
�3��'�'r%�pos-only�keywordr�r.)r.rm)rXrrr�r�rsr>r?)r^r6r

�results    r#�"test_signature_bind_posonly_kwargs�4TestSignatureBind.test_signature_bind_posonly_kwargs/sb��	(�����$�����*�)��4���������	�(:�;��
�
�)�6�+;�+;�+A�+A�+C�Dr%r*N)rUrlrmrnrryr	rrrr!r'r,r6rArOrTr[rrhrprzr*r%r#rr+so���(��(�$�3�<�8>�*�8�(�(69�p,�#<�J-�@�$�S��S�Er%rc�8�\rSrSrSrSrSrSrSrSr	Sr
g	)
�TestBoundArgumentsi:c���Sn[R"U5RS5nUR[S5 [U5 SSS5 g!,(df   g=f)Nc��gr r*r�s r#r6�ITestBoundArguments.test_signature_bound_arguments_unhashable.<locals>.foo<r�r%r4r
)rXrrr�r�r
�r^r6r!s   r#�)test_signature_bound_arguments_unhashable�<TestBoundArguments.test_signature_bound_arguments_unhashable;sE���
�
�
�s�
#�
(�
(��
+��
�
#�
#�I�/@�
A���H�B�
A�
A�s�A�
A"c���Sn[R"U5RS5nURX":H5 UR	X":g5 URU[
:H5 UR	U[
:g5 [R"U5RS5nURX#:H5 UR	X#:g5 [R"U5RS5nUR	X$:H5 URX$:g5 SURS'URX$:H5 UR	X$:g5 Sn[R"U5RS5nUR	X&:H5 URX&:g5 Sn[R"U5nURSSS9nURSSS9nURX�:H5 UR	X�:g5 g)	Nc��gr r*r�s r#r6�GTestBoundArguments.test_signature_bound_arguments_equality.<locals>.fooCr�r%r4r5r-c��gr r*rs r#r.�GTestBoundArguments.test_signature_bound_arguments_equality.<locals>.barUr�r%c��gr r*rls  r#r6r|Zr/r%rlr
)rXrrrTr]rr>)	r^r6r!�ba2�ba3r.�ba4r

�ba1s	         r#�'test_signature_bound_arguments_equality�:TestBoundArguments.test_signature_bound_arguments_equalityBs����
�
�
�s�
#�
(�
(��
+�������!������"�����i��(�����y��)�����$�)�)�!�,������	�"������#�����$�)�)�!�,�������#�����	�"���
�
�c������	�"������#������$�)�)�!�,�������#�����	�"������$���h�h��a�h� ���h�h��a�h� ������
�#������$r%c��0S.SSSSS04Sjjn[R"U5nURSS	0S
9n[[R
S-5HVnUR
US9 [R"[R"X455nURX55 SSS5 MX g!,(df   Mj=f)Nr#
rr4r�r7r�c��gr r*r%
s    r#r6�ETestBoundArguments.test_signature_bound_arguments_pickle.<locals>.foobr'
r%rr2r9)r(
)
rXrrr7r*
r+
rDr,
r-
r�)r^r6r

r!r0
�
ba_pickleds      r#�%test_signature_bound_arguments_pickle�8TestBoundArguments.test_signature_bound_arguments_pickleas����:�1�:�2�e�*�:�����$��
�X�X�b�"��X�
#����0�0�1�4�5�C������-�#�\�\�&�,�,�r�*?�@�
�� � ��0�.�-�6�-�-�s�%<B.�.
B=	c��0S.SSSSS04Sjjn[R"U5nURSS	0S
9nUR[	U5S5 g)Nr#
rr4r�r7r�c��gr r*r%
s    r#r6�CTestBoundArguments.test_signature_bound_arguments_repr.<locals>.foolr'
r%rr2r9z <BoundArguments \(a=20,.*\}\}\)>)rXrr�assertRegexrt	�r^r6r

r!s    r#�#test_signature_bound_arguments_repr�6TestBoundArguments.test_signature_bound_arguments_reprksO���:�1�:�2�e�*�:�����$��
�X�X�b�"��X�
#������b��#F�Gr%c
�R�S0S.SSjjjn[R"U5nURS5nUR5 UR	[URR55SSSS04S	04/5 URS
SSSS9nUR5 UR	[URR55S
SSS04S	SS04/5 Sn[R"U5nURS5nUR5 UR	[URR55S/5 Sn[R"U5nUR5nUR5 UR	[URR55/5 SSjn[R"U5nUR5nUR5 UR	[URR55S/5 g)Nr4r#
rc��gr r*)r-rmrr"r	
s     r#r6�MTestBoundArguments.test_signature_bound_arguments_apply_defaults.<locals>.foors��dr%r)r-rrl
)r"r*r	
rr2)r�r=)rmr)r")r2r�c��gr r*rls  r#r6r��r�r%c��gr r*r*r%r#r6r��r�r%c��gr r*r�s r#r6r��r�r%)r-r�r�
)rr4r	)	rXrr�apply_defaultsr�rDr>r?�bind_partialr�s    r#�-test_signature_bound_arguments_apply_defaults�@TestBoundArguments.test_signature_bound_arguments_apply_defaultsqs���2�2�2�2�����$��
�X�X�b�\��
�����������#�#�%�&�
��,��b�	�D�"�:�F�	H��X�X�b�"�b�A�X�
&��
�����������#�#�%�&�
�	�?�S�"�I��s�1�g��O�	Q�	�����$��
�
�
�b�
!��
�����������#�#�%�&�
�K�	�
	�����$��
�X�X�Z��
��������b�l�l�0�0�2�3�R�8�	 �����$��
�X�X�Z��
��������b�l�l�0�0�2�3�m�_�Er%c��Sn[R"U5RS5nUR[	UR
5[5 g)Nc��gr r*r�s r#r6�MTestBoundArguments.test_signature_bound_arguments_arguments_type.<locals>.foo�r�r%r4)rXrrr�r�r>rqrws   r#�-test_signature_bound_arguments_arguments_type�@TestBoundArguments.test_signature_bound_arguments_arguments_type�s7���
�
�
�s�
#�
(�
(��
+���
�
�d�2�<�<�(�$�/r%r*N)rUrlrmrnrxr�r�r�r�r�rzr*r%r#rsrs:s#���%�>1�H�(F�T0r%rsc� �\rSrSrSrSrSrg)�TestSignaturePrivateHelpersi�c�z�[R"U5unnURXB5 URXS5 gr )rX�"_signature_strip_non_python_syntaxr�)r^rE�clean_signature�self_parameter�computed_clean_signature�computed_self_parameters      r#�_strip_non_python_syntax�4TestSignaturePrivateHelpers._strip_non_python_syntax�s;��
�6�6�u�=�	$� �#����1�C����0�Ar%c��URSSS5 URSSS5 URSSS5 URSSS5 URSSS5 URS	S	S5 URSSS5 g)
NzZ($module, /, path, mode, *, dir_fd=None, effective_ids=False,
       follow_symlinks=True)zR(module, /, path, mode, *, dir_fd=None, effective_ids=False, follow_symlinks=True)rz($module, word, salt, /)z(module, word, salt, /)z(x, y=None, z=None, /)z(x, y=None, z=None)z!(x,
    y=None,
      z = None  )r8)r�ris r#�&test_signature_strip_non_python_syntax�BTestSignaturePrivateHelpers.test_signature_strip_non_python_syntax�s����%�%�
E�
=�
�	�	
�%�%�&�%�
�	�
	
�%�%�$�$��	�
	
�%�%�!�!��	�
	
�%�%�1�!��	�
	
�%�%����	�
	
�%�%����	r%r*N)rUrlrmrnr�r�rzr*r%r#r�r��s
��B�$r%r�c�d�\rSrSr\S5r\\R"\	S5SS00S4Sj55r
SrSrSr
S	rS
rSrSrS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSr Sr!Sr"Sr#Sr$S r%S!r&S"r'S#r(S$r)S%r*S&r+S'r,S(r-\.R^S)5r0Sr1g*)+�TestSignatureDefinitionsi�c��URS5(+=(d) URS5=(a URS5$)Nr��__)r�r\r
s r#�	is_public�"TestSignatureDefinitions.is_public�s1���?�?�3�'�'�X�4�?�?�4�+@�+X�T�]�]�SW�EX�Xr%r�r*c
�4^�U=(d
 [5n[U5n[UR5n[	UR55GH	up�X�;aM
[
U
5(dM[U
[5(a+[U
[5(aX�;aURU	5 X�;aCX�;a>TRSU	S9 TR[R"U
55 SSS5 [U
[5(dM�TRU	S9 TR!U
UR#U	S5UR#U	S55 SSS5 GM UH`n	TRSU	S9 Xyn
TR%U
R&5 TR)[*[RU
5 SSS5 Mb UH`n	TRSU	S9 Xyn
TRU
R&5 TR)[*[RU
5 SSS5 Mb g![a [U4SjU55nGNf=f!,(df   GNi=f!,(df   GM#=f!,(df   GM&=f!,(df   M�=f)Nc3�X># �UHnTRU5(dMUv� M! g7fr )r�)r
r�r^s  �r#r
�GTestSignatureDefinitions._test_module_has_signatures.<locals>.<genexpr>�s����D���t�~�~�d�/C����s�*�	*�	supported)r�r�r*�none�unsupported)rW�vars�__all__r�rr?�callablerRr��
issubclass�
BaseExceptionrrD�assertIsNotNonerXr�%_test_builtin_methods_have_signaturesr�rWr�r�r)r^�module�no_signature�unsupported_signature�methods_no_signature�methods_unsupported_signature�good_exceptionsr�rv	r�ras`          r#�_test_module_has_signatures�4TestSignatureDefinitions._test_module_has_signatures�s���$�,�s�u��
�&�\��	E�����'�E� ����
�+�I�D�� ���C�=�=���3��%�%��3�
�.�.��+�� � ��&��'�D�,M��\�\�+�t�\�<��(�(��):�):�3�)?�@�=��#�t�$�$��\�\�t�\�,��>�>�s�0�4�4�T�2�>�9�=�=�d�B�G�I�-�,�,�*!�D����f�d��3��h���!�!�#�"8�"8�9��!�!�*�g�.?�.?��E�4�3�!�
*�D����m�T��:��h���$�$�S�%;�%;�<��!�!�*�g�.?�.?��E�;�:�*��9�	E��D��D�D�E�	E��=�<��-�,��4�3��
;�:�sC�H*�&I�4I"�2AI5�AJ�*I
�I
�
I	�"
I2	�5
J	�
J	c
�j�[U5nUH�n[XS5n[U5(a[U[5(aM6XR;dM=XS;dMDURSUS9 UR
[R"U55 SSS5 M� UHnnURSUS9 UR[X5R5 UR[[R[X55 SSS5 Mp UHnnURSUS9 UR
[X5R5 UR[[R[X55 SSS5 Mp g!,(df   GM=f!,(df   GM
=f!,(df   M�=f)Nr�)rLr�r�)
r�rQr�rRr�rDr�rXrrWr�r�r)r^rr�r�r�r�ras       r#r��>TestSignatureDefinitions._test_builtin_methods_have_signatures
sD��
�#�Y���D��#�T�*�C��C�=�=�J�s�D�$9�$9���'�D�,M��\�\�+�d�\�;��(�(��):�):�3�)?�@�<�;��!�D����f�T��2��!�!�'�#�"4�"G�"G�H��!�!�*�g�.?�.?���AS�T�3�2�!�*�D����m�D��9��$�$�W�S�%7�%J�%J�K��!�!�*�g�.?�.?���AS�T�:�9�*�
<�;��3�2��:�9�s&�"&E=�)AF�AF#�=
F
	�
F 	�#
F2	c��1Skn1SknX-nS1n1SknX-nS1S1S.n1Sk1SkS	1S
1SS11S
kS.nUR[XXV5 g)N>r�rCrqr�rwrfr�
>rOrdrRr�r7�slicerQr�	>�maxr�
�__build_class__�updaterh)rqr�>�hex�findr>r��rfind�rindexr\r�r9�	__round__�castr�>r�r>r�r�r�r\r
r�)r�
rwrqr��
memoryviewrC)r�r\)r^r��needs_groupsr��
needs_varargsr�r�s       r#�test_builtins_have_signatures�6TestSignatureDefinitions.test_builtins_have_signaturess}��T��0���$��!(�	��9�
��%���J�"�m� 
��
h�c��G��=�!�5�/�g�
)
�%�	
�(�(���$�	Er%c�F�S1nS1S1S1S.nUR[UUS9 g)N�CellTyper�	rE)�AsyncGeneratorType�
CoroutineType�
GeneratorType)r�r�)r�r�)r^r�r�s   r#� test_types_module_has_signatures�9TestSignatureDefinitions.test_types_module_has_signatures;s>��!+���#+�*�%�Y�%�Y� 
��
	
�(�(��&;�%9�	)�	;r%c��SS1nUSVs1sHn[[U5(dMUiM sn-nUR[U5 gs snf)N�	getsizeof�set_asyncgen_hooks)�
getobjects)r�r^r��r^r�r�s   r#�test_sys_module_has_signatures�7TestSignatureDefinitions.test_sys_module_has_signaturesFsN��#�%9�:���.�0�.�$�#�C��.��.�0�	0���(�(��l�;��0�
�A	�A	c�.�SSKnURU5 gr�)r�r�)r^r�s  r#�test_abc_module_has_signatures�7TestSignatureDefinitions.test_abc_module_has_signaturesLs����(�(��-r%c�.�SSKnURU5 gr�)�atexitr�)r^r�s  r#�!test_atexit_module_has_signatures�:TestSignatureDefinitions.test_atexit_module_has_signaturesP�����(�(��0r%c�6�SSKnSS10nURUUS9 g)Nr�StreamReader�charbuffertype�r�)�codecsr�)r^r�r�s   r#�!test_codecs_module_has_signatures�:TestSignatureDefinitions.test_codecs_module_has_signaturesTs,��� .�1A�0B�C���(�(��%9�	)�	;r%c�\�SS1nS1nSS10nS1S1S1S.nUR[XX45 g)	Nr.
�defaultdict�dequer�r�r9r
)r�r.
�
UserString)r�r�)r^r�r�r�r�s     r#�&test_collections_module_has_signatures�?TestSignatureDefinitions.test_collections_module_has_signaturesZsU��%�}�5��!(�	���H�:� 
���Y�!�7�&�-�)
�%�
	
�(�(���$�	Er%c�B�SSKnURUR5 gr�)r�r�r�)r^r�s  r#�*test_collections_abc_module_has_signatures�CTestSignatureDefinitions.test_collections_abc_module_has_signaturesis����(�(����9r%c�.�SSKnURU5 gr�)�errnor�)r^rs  r#� test_errno_module_has_signatures�9TestSignatureDefinitions.test_errno_module_has_signaturesms����(�(��/r%c��SSKn1SknUSVs1sHn[X5(dMUiM sn-nURXS9 gs snf)Nr>�enable�dump_traceback�dump_traceback_later)�register�r�)�faulthandlerr�r�)r^r
r�r�s    r#�'test_faulthandler_module_has_signatures�@TestSignatureDefinitions.test_faulthandler_module_has_signaturesqsP��� T���<�"B�<�4�%,�\�%@�#'�<�"B�	B���(�(��(�c��"Bs
�A�Ac�6�S1nUR[U5 g)N�reduce)r�r�)r^r�s  r#�$test_functools_module_has_signatures�=TestSignatureDefinitions.test_functools_module_has_signaturesxs�� �z���(�(��L�Ar%c�4�SSKnS1nURX5 g)Nr�
set_threshold)r4	r�)r^r4	r�s   r#�test_gc_module_has_signatures�6TestSignatureDefinitions.test_gc_module_has_signatures|s���'�(���(�(��:r%c�8�S1Sk0nUR[US9 g)N�BufferedRWPair>�peekr�read1r6�readinto�	readinto1r�)r�r�)r^r�s  r#�test_io_module_has_signatures�6TestSignatureDefinitions.test_io_module_has_signatures�s*���Y� 
��	
�(�(��%9�	)�	;r%c�6�SSKnSS1nURX5 g)Nr�islice�repeat)�	itertoolsr�)r^r#r�s   r#�$test_itertools_module_has_signatures�=TestSignatureDefinitions.test_itertools_module_has_signatures�s��� �(�+���(�(��Ar%c�.�SSKnURU5 gr�)�localer�)r^r's  r#�!test_locale_module_has_signatures�:TestSignatureDefinitions.test_locale_module_has_signatures�r�r%c�.�SSKnURU5 gr�)�marshalr�)r^r+s  r#�"test_marshal_module_has_signatures�;TestSignatureDefinitions.test_marshal_module_has_signatures�s����(�(��1r%c�.�SSKnURU5 gr�)�operatorr�)r^r/s  r#�#test_operator_module_has_signatures�<TestSignatureDefinitions.test_operator_module_has_signatures������(�(��2r%c��SS1nUSVs1sHn[[U5(dMUiM sn-nUR[US9 gs snf)N�chmod�utime)�get_terminal_size�register_at_fork�	startfiler)r�r4r�)r^r�r�s   r#�test_os_module_has_signatures�6TestSignatureDefinitions.test_os_module_has_signatures�s[��!(�'� 2���B�""�B�,0��r�4� �#'�B�""�	"��	
�(�(��CX�(�Y��""s
�A�Ac�R�[R"S5nURU5 g)N�pwd)rr�r�)r^r<s  r#�test_pwd_module_has_signatures�7TestSignatureDefinitions.test_pwd_module_has_signatures�s ���)�)�%�0���(�(��-r%c�<�SSKnSS10nURUUSS1S9 g)Nr�Match�group�error�PatternError)r�r�)�rer�)r^rDr�s   r#�test_re_module_has_signatures�6TestSignatureDefinitions.test_re_module_has_signatures�s2��� '�'��3���(�(��%9�!(�.� 9�	)�	;r%c�.�SSKnURU5 gr�)�signalr�)r^rHs  r#�!test_signal_module_has_signatures�:TestSignatureDefinitions.test_signal_module_has_signatures�r�r%c�.�SSKnURU5 gr�)r�r�)r^r�s  r#�test_stat_module_has_signatures�8TestSignatureDefinitions.test_stat_module_has_signatures�s����(�(��.r%c�.�SSKnURU5 gr�)�stringr�)r^rOs  r#�!test_string_module_has_signatures�:TestSignatureDefinitions.test_string_module_has_signatures�r�r%c�.�SSKnURU5 gr�)�symtabler�)r^rSs  r#�#test_symtable_module_has_signatures�<TestSignatureDefinitions.test_symtable_module_has_signatures�r2r%c�.�SSKnURU5 gr�)�	sysconfigr�)r^rWs  r#�$test_sysconfig_module_has_signatures�=TestSignatureDefinitions.test_sysconfig_module_has_signatures�s����(�(��3r%c��SSKnURU5 UR[R"UR
55 gr�)�	threadingr�r�rXr�__excepthook__)r^r[s  r#�$test_threading_module_has_signatures�=TestSignatureDefinitions.test_threading_module_has_signatures�s2����(�(��3����W�.�.�y�/G�/G�H�Ir%c�4�SSKnS1nURX5 g)Nr�RLock)�_threadr�)r^rar�s   r#�!test_thread_module_has_signatures�:TestSignatureDefinitions.test_thread_module_has_signatures�s����y���(�(��?r%c��1SknUSVs1sHn[[U5(dMUiM sn-nUR[U5 gs snf)N>�ctime�gmtime�asctime�strftime�strptime�	localtime�get_clock_info)�clock_getres�
clock_settime�clock_settime_ns�pthread_getcpuclockid)r�r
r�r�s   r#�test_time_module_has_signatures�8TestSignatureDefinitions.test_time_module_has_signatures�s\��
��	�
&�$�
&�#'��t�T�"��
&�$�	$��	
�(�(��|�<��	$r�c�.�SSKnURU5 gr�)�tokenizer�)r^rss  r#�#test_tokenize_module_has_signatures�<TestSignatureDefinitions.test_tokenize_module_has_signatures�r2r%c�.�SSKnURU5 gr�)�tracemallocr�)r^rws  r#�&test_tracemalloc_module_has_signatures�?TestSignatureDefinitions.test_tracemalloc_module_has_signatures�s����(�(��5r%c�N�SSKn1SknSSS10nS1Sk0nURXUUS9 g)	Nr>�Textr��	ParamSpec�TypeVarTuple�
ParamSpecArgs�
TypeAliasType�ParamSpecKwargsr�r�r�r{>r�r>r�r�r�r\r
r�)r�r�)r�r�)r^r�r�r�r�s     r#�!test_typing_module_has_signatures�:TestSignatureDefinitions.test_typing_module_has_signatures�sQ���L��
�+�-@�A� 
��
�h�)
�%�	
�(�(��%9�.K�	)�	Mr%c�4�SS1nUR[US9 g)N�warn�
warn_explicitr)r�r�)r^r�s  r#�#test_warnings_module_has_signatures�<TestSignatureDefinitions.test_warnings_module_has_signatures�s!��!'�� 9���(�(��I^�(�_r%c�6�SSKnSS1nURX5 g)Nr�
ReferenceTyper3	)r2	r�)r^r2	r�s   r#�"test_weakref_module_has_signatures�;TestSignatureDefinitions.test_weakref_module_has_signatures�s���'��/���(�(��?r%c��SnSUl[R"U5nURU5 UR	[U5S5 SUl[R"U5nUR	[U5S5 SUl[R"U5nUR	[U5S5 SUl[R"U5nUR	[U5S	5 S
UlUR
[5 [R"U5 SSS5 SUlUR
[5 [R"U5 SSS5 SUlUR
[5 [R"U5 SSS5 g!,(df   N�=f!,(df   N[=f!,(df   g=f)
Nc��gr r*r]
s  r#r��NTestSignatureDefinitions.test_python_function_override_signature.<locals>.func�r�r%z(($self, a, b=1, *args, c, d=2, **kwargs)z*(self, /, a, b=1, *args, c, d=2, **kwargs)z+($self, a, b=1, /, *args, c, d=2, **kwargs)z*(self, a, b=1, /, *args, c, d=2, **kwargs)z"(self, a=1+2, b=4-3, c=1 | 3 | 16)z(self, a=3, b=1, c=19)z(self, a=1,
b=2,


   c=3)z(self, a=1, b=2, c=3)z(self, x=does_not_exist)z(self, x=sys, y=inspect)z(self, 123))r�rXrr�r�rCr�r)r^r�r

s   r#�'test_python_function_override_signature�@TestSignatureDefinitions.test_python_function_override_signature�sb��	�"L�������%�����S�!�����S��#O�P�"O�������%������S��#O�P�"F�������%������S��#;�<�"B�������%������S��#:�;�"<���
�
�
�z�
*����d�#�+�"<���
�
�
�z�
*����d�#�+�"/���
�
�
�z�
*����d�#�+�
*�
+�
*��+�
*��+�
*�s$�F'�F8�G	�'
F5�8
G�	
Gc���SSKJn "SSU5nURnURUS5 [R
"U5nUR[
U5S5 g)Nr)�BufferedReaderc��\rSrSrSrSrg)�VTestSignatureDefinitions.test_base_class_have_text_signature.<locals>.MyBufferedReaderizbuffer reader class.r*N)rUrlrmrnrrzr*r%r#�MyBufferedReaderr�s��&r%r�z&(raw, buffer_size=DEFAULT_BUFFER_SIZE)z(raw, buffer_size=8192))�test.typinganndata.ann_module7r�r�r�rXrrC)r^r�r��text_signaturer

s     r#�#test_base_class_have_text_signature�<TestSignatureDefinitions.test_base_class_have_text_signaturesX��	B�	'�~�	'�(�:�:������)Q�R���� 0�1������S��#<�=r%N)2rUrlrmrnrr�rrr�r
r�r�r�r�r�r�r�r�r�rrrrrrr$r(r,r0r9r=rErIrLrPrTrXr]rbrprtrxr�r�r�r�rr]r�rzr*r%r#r�r��s,���Y��Y��
�_�_�)�M�O� �r�%'�r� "�1F�O��1F�fU�$E�8	;�<�.�1�;�
E�:�0�d�B�;�
;�B�
1�2�3�Z�.�;�1�/�1�3�4�J�
@�
	=�3�6�M�`�@�
$�<
� � �	>�!�	>r%r�c�*�\rSrSrSr\S5rSrg)�NTimesUnwrappableic��XlSUlgr )rv
�_next)r^rv
s  r#r��NTimesUnwrappable.__init__s������
r%c��URS::a[S5eURc[URS-
5UlUR$)NrzUnwrapped too many timesr4)rv
r�r�r�ris r#rS�NTimesUnwrappable.__wrapped__#sA���6�6�Q�;��6�7�7��:�:��*�4�6�6�A�:�6�D�J��z�z�r%)r�rv
N)rUrlrmrnr�r�rSrzr*r%r#r�r�s������r%r�c�>�\rSrSrSrSrSrSrSrSr	Sr
S	rg
)�
TestUnwrapi+c��Sn[R"SS9"U5nUR[R"U5U5 g)Nc�
�X-$r r*rls  r#r��(TestUnwrap.test_unwrap_one.<locals>.func.r�r%r)r}
)r��	lru_cacher�rX�unwrap)r^r�rKs   r#�test_unwrap_one�TestUnwrap.test_unwrap_one-s3��	��%�%�b�1�$�7���
�
�g�n�n�W�-�t�4r%c���SnUn[S5Hn[R"U5S5nM! URURU5 UR[R"U5U5 g)Nc�
�X-$r r*rls  r#r��,TestUnwrap.test_unwrap_several.<locals>.func4r�r%rc��gr r*r*r%r#rK�/TestUnwrap.test_unwrap_several.<locals>.wrapper8r�r%)r7r�r�rXrSr�rXr�)r^r�rKr�s    r#�test_unwrap_several�TestUnwrap.test_unwrap_several3sd��	�����)�B�
�_�_�W�
%�
�&�
��	
����,�,�d�3��
�
�g�n�n�W�-�t�4r%c���Sn[R"U5S5n[R"U5S5nSUl[R"USS9nURXB5 g)Nc�
�X-$r r*rls  r#�func1�#TestUnwrap.test_stop.<locals>.func1?r�r%c��gr r*r*r%r#r�
�#TestUnwrap.test_stop.<locals>.func2Ar�r%c��gr r*r*r%r#rK�%TestUnwrap.test_stop.<locals>.wrapperDr�r%r4c��[US5$)N�	stop_herer�
r�s r#r��&TestUnwrap.test_stop.<locals>.<lambda>Is��7�1�k�3Jr%)�stop)r�r�r�rXr�r�)r^r�r�
rK�	unwrappeds     r#�	test_stop�TestUnwrap.test_stop>sd��	�	����	�	�
 �	�	����	�	�
 �	�����N�N�7�)J�M�	��
�
�i�'r%c���SnXlUR[S5 [R"U5 SSS5 SnXlX!lUR[S5 [R"U5 SSS5 UR[S5 [R"U5 SSS5 g!,(df   N�=f!,(df   NU=f!,(df   g=f)Nc��gr r*r*r%r#r��$TestUnwrap.test_cycle.<locals>.func1Mr"r%r�c��gr r*r*r%r#r�
�$TestUnwrap.test_cycle.<locals>.func2Rr"r%)rSr�rrXr�)r^r�r�
s   r#�
test_cycle�TestUnwrap.test_cycleLs����!��
�
#�
#�J��
?��N�N�5�!�@�	�!��!��
�
#�
#�J��
?��N�N�5�!�@�
�
#�
#�J��
?��N�N�5�!�@�
?�@�
?��@�
?��
?�
?�s#�B9�$C
�C�9
C�

C�
C)c�^�SmSTl"U4SjS5nUR[R"U"555 g)Nc��gr r*r*r%r#r��(TestUnwrap.test_unhashable.<locals>.func[r�r%c� >�\rSrSrSrYrSrg)�%TestUnwrap.test_unhashable.<locals>.Ci]Nr*)rUrlrmrn�__hash__rSrzr�s�r#rpr�]s
����H��Kr%rp)rSrWrXr�)r^rpr�s  @r#�test_unhashable�TestUnwrap.test_unhashableZs3�������	�	�	
���'�.�.���-�.r%c���[[R"5S-5nUR[S5 [
R"U5 SSS5 g!,(df   g=f)Nr4r�)r�r^�getrecursionlimitr�rrXr�)r^ras  r#�test_recursion_limit�TestUnwrap.test_recursion_limitbsC���� 5� 5� 7�!� ;�<��
�
#�
#�J��
?��N�N�3��@�
?�
?�s�A�
A&c���UR[R"[5[5 UR[R"[5[5 UR[R"[
5[
5 UR[R"[	[
55[
5 UR[R"[[55[5 gr )r�rXr�r�rr
ris r#�test_wrapped_descriptor�"TestUnwrap.test_wrapped_descriptorgs����
�
�g�n�n�%6�7�9J�K��
�
�g�n�n�\�2�L�A��
�
�g�n�n�[�1�;�?��
�
�g�n�n�\�+�%>�?��M��
�
�g�n�n�[��%>�?��Nr%r*N)rUrlrmrnr�r�r�r�r�r�r�rzr*r%r#r�r�+s&��5�	5�(�"�/� �
Or%r�c�b�\rSrSrSrSr\R"\SLS5S5r	Sr
SrS	rg)
�TestMainioc��[R"S5n[SSS5up#nUR5R	5nURUSS[R"U5R	55 URUS5 g)Nr�-mrXrr%)�	importlibr�r�decoder�r�rXr)r^r��rcrF�errrs      r#�test_only_source�TestMain.test_only_sourcepsu���(�(��4��'��i�(2�4�����
�
��'�'�)������s���W�%6�%6�v�%>�%I�%I�%K�L�����c�"r%c��SnSUlUR[5 [R"U5 SSS5 g!,(df   g=f)Nc��gr r*r*r%r#r6�)TestMain.test_custom_getattr.<locals>.foozr�r%r7)r�r�r�rXrr9s  r#�test_custom_getattr�TestMain.test_custom_getattrys7��	����
�
�
�y�
)����c�"�*�
)�
)�s�A�
ANz6threads required to test __qualname__ for source filesc��[SSS5upnUR5R5nURUSS[R
"[5R55 URUS5 g)Nr�rXz%concurrent.futures:ThreadPoolExecutorrr%)rr�r�r�rXrr)r^r�rFr�rs     r#�test_qualname_source�TestMain.test_qualname_source�sm��(��i�%L�N�����
�
��'�'�)������s��� �*�*�+=�>�I�I�K�	M�����c�"r%c��[SSS5upnUR5R5nURUS/5 g)Nr�rXr^z#Can't get info for builtin modules.)rr�r�r�)r^r�rFr�rs     r#�
test_builtins�TestMain.test_builtins�s?��+�D�)�,1�3�����
�
��'�'�)������!F� G�Hr%c�V�[R"S5n[R"5n[	/UQSPSPSPSP76up4nUR5nUR
URRU5 UR
URU5 UR
URRU5 UR
URU5 UR
URRU5 UR
URU5 URUS5 g)Nrr�rXz	--detailsr%)r�r�r�!optim_args_from_interpreter_flagsrr�rs�__spec__r�rU�originr��cached�
__cached__r�)r^r�r"r�rFr��outputs       r#�test_details�TestMain.test_details�s����(�(��4���8�8�:��'�A��A�t�A�Y�A�(2�A�4?�A����������
�
�f�o�o�*�*�F�3��
�
�f�o�o�v�.��
�
�f�o�o�,�,�f�5��
�
�f�o�o�v�.��
�
�f�o�o�,�,�f�5��
�
�f�'�'��0�����c�"r%r*)
rUrlrmrnr�r�rr�rr�r�r�rzr*r%r#r�r�osA��#�#��_�_�'�4�/�D�F�#�F�#�I�
#r%r�c�h�\rSrSr\R
"S5r\R
"S5rSrSr	Sr
g)�
TestReloadi�z def foo():
    print("Bla")
    z#def foo():
    print("Oh no!")
    c���[R"U5n[USS9nURUR	5RS5URS55 SSS5 g!,(df   g=f)Nr�r�T)rXrr�r�rr�)r^r�r�
inspected_srcr�s     r#�assertInspectEqual�TestReload.assertInspectEqual�sZ���)�)�&�1�
�
�$��
)�S�������
�%�%�d�+��(�(��.�
�*�
)�
)�s�?A)�)
A7c�X�[SUR5up[R"U5nUR	X#5 [USSS9nUR
UR5 SSS5 UR	X#5 SSS5 g!,(df   N(=f!,(df   g=f)N�
reload_bugr�r�r�)r
�
src_beforer�r�r�r�r6�	src_after)r^r�r�r�r�s     r#�test_getsource_reload� TestReload.test_getsource_reload�s}��
�\�4�?�?�
;�|���,�,�T�2�F��#�#�D�1��d�C�'�2�c��	�	�$�.�.�)�3��#�#�D�1�<�
;�3�2��<�
;�s#�5B�B
�(B�

B	�B�
B)r*N)rUrlrmrnr7r8r�r�r�r�rzr*r%r#r�r��s4�����"�	�J�
���!�	�I�
�2r%r�c��\rSrSr\R
\RS.SjrSr\	R"\(+S5S5rSr
g)	�TestRepli�)�stdoutrc	��[RR[RR[R
5S5nUSS/nUR
U5 URS[[R55nSUS'[R"U4[R
S[RXS.UD6$)	z}Run the Python REPL with the given arguments.

kw is extra keyword args to pass to subprocess.Popen. Returns a Popen
object.
z<stdin>z-Ez-i�env�vt100�TERMT)�
executable�text�stdinrr)
r4r�r:�dirnamer^r�extend�
setdefaultrq�environ�
subprocess�Popen�PIPE)r^rrr"r	
�stdin_fname�cmd_liners        r#�
spawn_repl�TestRepl.spawn_repl�s����g�g�l�l�2�7�7�?�?�3�>�>�#B�I�N����t�,��������m�m�E�4��
�
�#3�4����F������&�+.�>�>�%)�&0�o�o�'-�	&�
#%�&�	&r%c��UR5nURRU5 [U5nURS:wa[S5eU$)z�Spawn a new Python interpreter, pass the given
input source code from the stdin and return the
result back. If the interpreter exits non-zero, it
raises a ValueError.rzProcess didn't exit properly.)rr	r6r�
returncoder)r^r�processr�s    r#�run_on_interactive_mode� TestRepl.run_on_interactive_mode�sK���/�/�#���
�
���F�#��W�%������"��<�=�=��
r%ztest requires subprocessc�t�UR[R"S55nSnURX!5 g)Nz�        def f():
            print(0)
            return 1 + 2

        import inspect
        print(f"The source is: <<<{inspect.getsource(f)}>>>")
        z<The source is: <<<def f():
    print(0)
    return 1 + 2
>>>)rr7r8rs)r^r�rFs   r#rz�TestRepl.test_getsource�s6���-�-�h�o�o�?�/
���U���
�
�h�'r%r*N)rUrlrmrnrr�STDOUTrrrr�rrzrzr*r%r#rr�s@��'1���z�?P�?P�&�8��_�_�/�/�1K�L�(�M�(r%r�__main__)�r(r\r�rM
r�r�r4	r�rXr�rr4r��os.pathrr�r*
rkr�r^rr
r�r2r7r�rr�r�
unittest.mockr�r2	�concurrent.futuresrrK�test.supportrrr	r
r�test.support.import_helperrr
�test.support.os_helperrr�test.support.script_helperrrrrrr�r�test.test_inspectrr�rrTrrrrr�r�r\r$r?r;r+rCrLrrr�rNrr�r�rk	r�r�r�r�r�r�r�r�r�r�r�r�r�rrr�rr
rr+r�r�rarwr�r}r�r�r�r�r�rrSrMr�rrr"r:	r�	�requires_working_socket�IsolatedAsyncioTestCaser�	r�r�	r�r�	r
r�
rrsr�r�r�r�r�r�rrU�mainr*r%r#�<module>r)s���������	���	��	�
���
�
��
�������������5�O�N�8�E�3�[�[�D��3�5�7�<�>�C��,�,��
���J����c�r�l�G��7�
��(�
�m�m�o��,�
�$	�$M�#R�#R�#T� �M��"�"�M�0�����������#�&�#�&����2�2�SA�Z�SA�l
B>�:�B>�H8�H�%�%�8� 7�7�
R9�}�R9�h'6�(�+�+�'6�R
E�x�0�0�
E�0�
�0�
7�]�
7�OB�M�OB�b
C�
�
C�j7�]�j7�Z:�
�:�&N�=�N�7�F�7�9�f�9�>�D
�h�/�/�D
�N-
�8�,�,�-
�`q9�X�.�.�q9�h5>�8�,�,�5>�p�h��D>��*�*�D>�NG+�x�0�0�G+�R �5� �:�$:�:�(L.��)�)�L.�^
|H�H�-�-�|H�~AG�H�-�-�AG�H	� � �"�cG�8�;�;�cG�#�cG�L	�'�#�#�	�
	�'�#�#�	�^# �(�+�+�^# �BGh�(�+�+�h�VLE��)�)�LE�^d0��*�*�d0�L-�(�"3�"3�-�^L>�x�0�0�L>�^
��AO��"�"�AO�H/#�x� � �/#�d2��"�"�2�<8(�x� � �8(�z�z���M�M�O���sN�����s�>R�R�
R

Youez - 2016 - github.com/yon3zu
LinuXploit