+
    Bi6                       ^ RI HtHt ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	t	^ RI
t
^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI t  ^ RI!H"t" ^ RI$H%t%H&t& ^ RI$H't'H(t( ^ RI$H)t)H*t* ^ RI+H,t,H-t- ^ R	I.H/t/H0t0 ^ R
I1H2t2H3t3H4t4 ^ RI$H5t5 ^ RI6H7t7 ^ RI8H9t: ^ RI8H;t< ^ RI8H=t= ^ RI8H>t> ]:P~                  t@]@P                  Ru4      '       d   ]@RRv t@]! ]@4      t@R tB]:P                  ! 4       tDR tER tFRP                  4       tH ! R R]P                  4      tJR tKR tLR tM]P                  R 4       tOR tPR tQR tRR tSR tTR  tU ! R! R"]J4      tV ! R# R$]J4      tW ! R% R&]P                  4      tX ! R' R(4      tY ! R) R*]X4      tZ ! R+ R,]P                  4      t[ ! R- R.]P                  4      t\ ! R/ R0]X4      t] ! R1 R2]X4      t^ ! R3 R4]X4      t_ ! R5 R6]X4      t` ! R7 R8]X4      ta ! R9 R:]X4      tb ! R; R<]X4      tc ! R= R>]d4      te ! R? R@]d4      tfRA tg ! RB RC]P                  4      th ! RD RE]P                  4      ti ! RF RG]P                  4      tj ! RH RI]P                  4      tk]d! 4       tl ! RJ RK]P                  4      tm ! RL RM]P                  4      tn ! RN RO]n4      to ! RP RQ]o4      tp ! RR RS]P                  4      tq ! RT RU]P                  4      tr ! RV RW]P                  4      ts]7P                  ! 4        ! RX RY]P                  4      4       tv ! RZ R[]P                  4      tx ! R\ R]]P                  4      tz ! R^ R_]P                  4      t{ ! R` Ra]P                  4      t| ! Rb Rc]P                  4      t} ! Rd Re]P                  4      t~ ! Rf Rg]P                  4      t ! Rh Ri]P                  4      t ! Rj Rk4      t ! Rl Rm]P                  4      t ! Rn Ro]P                  4      t ! Rp Rq]P                  4      t ! Rr Rs]P                  4      t]Rt8X  d   ]EP                  ! 4        R# R#   ]# d    Rt" ELi ; i)w    )Format
ForwardRefNnormcase)ThreadPoolExecutor)cpython_onlyimport_helper)MISSING_C_DOCSTRINGS	ALWAYS_EQ)run_no_yield_async_fnEqualToForwardRef)DirsOnSysPathready_to_import)TESTFNtemp_cwd)assert_python_okassert_python_failurekill_python)has_subprocess_support)support)inspect_fodder)inspect_fodder2)inspect_stringized_annotations)inspect_deferred_annotationsc                 (    \        V 4      3V,           # Nr   )filenameargss   &*5/usr/lib/python3.14/test/test_inspect/test_inspect.pyreviser    G   s    X 4''    c               #  f  "   . ROp \        ^^\        V 4      ,          4       F  p. p^p\        \        V 4      4       F1  pWV,          ,          '       g   K  VP                  W,          4       K3  	  RRP                  V4      ,           R,           p/ p\	        WVV4       VR,          x  K  	  R# 5i)z
Yields a whole bunch of functions with only keyword-only parameters,
where those parameters are always in lexicographically sorted order.
zdef foo(*, z, z): passfooN)abarcdeltaephraimmagicalyoyoz)rangelenappendjoinexec)
parametersipbitjfn_textsymbolss          r   5signatures_with_lexicographic_keyword_only_parametersr8   M   s     
 OJ1aZ()s:'A1H~~' (  $))A,.:Ww'en *s   AB1AB1c                     R # r    )throwoutthebabywith_the_	bathwaters   $$$$$$$r   #unsorted_keyword_only_parameters_fnrB   _   s    r!   z'throw out the baby with_ the_ bathwaterc                     a  ] tR t^et o ]! ]P                  ]P                  ]P                  ]P                  ]P                  ]P                  ]P                  ]P                  ]P                  ]P                  ]P                   ]P"                  ]P$                  ]P&                  ]P(                  ]P*                  .4      tR tR tRtV tR# )
IsTestBasec           	     f   \        V4      pV P                  V! V4      VP                  : R V: R24       V P                  \	        V.4      ,
           F  pV\
        P                  8X  g+   V\
        P                  8X  g   V\
        P                  8X  d   V\
        P                  8X  d   KY  V\
        P                  8X  dB   V\
        P                  8X  d-   V P                  V! V4      VP                  : R V: R24       K  V P                  V! V4      RVP                  : R V: R24       K  	  R# )()znot N)eval
assertTrue__name__
predicatessetinspectisgeneratorfunctionisasyncgenfunctioniscoroutinefunction
isfunction	ispackageismoduleassertFalse)self	predicateexpobjothers   &&&  r   istestIsTestBase.istestn   s    3i	#I4F4F(LM__sI;'777EW888G666G777***G---%7;K;K2K	#I<N<NPS0TU  sU^^S-QR 8r!   c                B    \         P                  ! V \        RRR7       R# )modulesbyfile)not_exportedextraN)r]   )get_annotations)r   check__all__rM   rU   s   &r   test__all__IsTestBase.test__all__}   s    T79KSghr!   r:   N)rJ   
__module____qualname____firstlineno__rL   rM   	isbuiltinisclassiscodeisframerQ   ismethodrS   istracebackrR   isgeneratorrN   iscoroutinerP   
isasyncgenrO   ismethodwrapperrK   rZ   rc   __static_attributes____classdictcell____classdict__s   @r   rD   rD   e   s     g'''..oow'9'97;K;K&&(;(;W=N=N))7+F+F))7+F+F(('*D*D--/ 0JSi ir!   rD   c              #   :   "   \        ^4       F  pVx  K	  	  R# 5i   Nr,   rU   r2   s   & r   generator_function_exampler{      s     1X    c                L   "   \        ^4        Rj  xL
  pV5x  K   LDR# 5irw   ry   rz   s   & r    async_generator_function_exampler~      s$     8  a8s   $!!	$!$c                    "   R # 5ispamr:   rb   s   &r   coroutine_function_exampler      s        c              #      "   R x  R# 5i)Nr   r:   rb   s   &r   gen_coroutine_function_exampler      s     	   	c                      R # r   r:   r:   r!   r   meth_noargsr          4r!   c                    R # r   r:   objects   "r   meth_or          tr!   c                    R # r   r:   rb   s   "r   meth_self_noargsr          tr!   c                    R # r   r:   )rU   r   s   ""r   meth_self_or          $r!   c                    R # r   r:   types   "r   meth_type_noargsr      r   r!   c                    R # r   r:   )r   r   s   ""r   meth_type_or      r   r!   c                   \   a  ] tR t^t o R tR tR tR tR tR t	R t
R tR	 tR
 tRtV tR# )TestPredicatesc           	     F	   V P                  \        P                  R 4       V P                  \        P                  R4       V P                  \        P                  R4        ^^ ,           RsV P                  \        P                   R4       V P                  \        P                   R	4       V P                  \        P"                  R
4       V P                  \        P"                  R4       V P                  \        P$                  R4       V P                  \        P&                  R4       V P                  \        P(                  R4       V P                  \        P*                  R4       V P                  \        P,                  R4       V P                  \        P.                  R4       V P                  \        P0                  R4       \2        P4                  ! 4       ;_uu_ 4        \2        P6                  ! R4       V P                  \        P8                  R4       V P                  \        P:                  R4       RRR4       \        \        R4      '       d"   V P                  \        P<                  R4       M=V P                  \        P<                  ! \>        P@                  PB                  4      4       V P                  \        PD                  R4       V P                  \        PD                  R4       V P                  \        PD                  R4       V P                  \        PD                  ! \        4      4       V P                  \        PD                  ! \F        4      4       V P                  \        PD                  ! \        RR/ 4      4      4       R#   \         d   pTP
                  sT P                  \        P                  R4       T P                  \        P                  R4       \        \        R4      '       d'   T P                  \        P                  R4        Rp?ELT P                  \        P                  ! \        \        P                  4      P                  4      4        Rp?ELRp?ii ; i  Rsi ; i  + '       g   i     ELW; i)zsys.exitz	[].appendzmod.spam.__code__ztb.tb_frametbGetSetDescriptorTypeztype(tb.tb_frame).f_localsNzmod.spamzmod.StupidGit.abusez	git.arguezmod.custom_methodmodzint.__add__z'collections.defaultdict.default_factoryz(x for x in range(2))r{   z#async_generator_function_example(1)r~   ignorezcoroutine_function_example(1)r   MemberDescriptorTypezdatetime.timedelta.dayszobject().__str__zobject().__eq__zobject().__repr__AnyClassr:   )$rZ   rM   rh   rj   	Exception__traceback__r   rk   rm   hasattrtypesisgetsetdescriptorrT   r   tb_framef_localsrQ   rl   rS   ismethoddescriptorisdatadescriptorrn   rN   rp   rO   warningscatch_warningssimplefilterro   rP   ismemberdescriptordatetime	timedeltadaysrq   intrU   es   & r   test_excluding_predicates(TestPredicates.test_excluding_predicates   s   G%%z2G%%{3GNN$78	aC 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 $$&&!!(+KK++-LMKK335QR '
 5011KK224MNW778J8J8O8OPQG++-?@G++->?G++-@A0067005600j"b1IJKQ  	YBKK7KK++T2u455G668: :   !;!;D<M<V<V!WXX	Y B '&&sE   "	N! *AR!R,BR .R 4AR :R  RR RR 	c                   V P                  \        P                  R 4       V P                  \        P                  R4       V P                  \        P                  ! \        4      4       V P                  \        P                  ! \        4      4       V P                  \        P                  ! R4      4        ! R R4      pV P                  \        P                  ! V! 4       4      4       R# )unittest	importlibz:)c                       ] tR t^tRtRtR# )2TestPredicates.test_ispackage.<locals>.FakePackageNr:   )rJ   re   rf   rg   __path__rr   r:   r!   r   FakePackager          Hr!   r   N)rZ   rM   rR   rT   r   )rU   r   s   & r   test_ispackageTestPredicates.test_ispackage   s    G%%z2G%%{3**734**3/0**401	 	 	**;=9:r!   c           	     .  a \        ^4      p\        ^4      p\        ^4      p ! R R4      pV! 4       pVP                  pVP                  pVP
                  pVP                  p	VP                  p
VP
                  pV P                  \        P                  ! \        4      4       V P                  \        P                  ! \        P                  ! \        P                  ! \        4      4      4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! V
4      4       V P                  \        P                  ! \        4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! \        4      4       V P                  \        P                  ! \        P                  ! \        P                  ! \        4      4      4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! V
4      4       V P                  \        P                  ! V4      4       R o\        P                  V3R l4       pV P                  \        P                  ! V4      4       V P                  \        P                  ! \        P                  ! V3R l4      4      4        ! R R4      pV P                  \        P                  ! V4      4       V P                  \        P                  ! V! 4       4      4       V P                  \        P                  ! \        P                  ! V! 4       4      4      4        ! R R	4      pV P                  \        P                  ! V4      4       V P                  \        P                  ! V! 4       4      4       V P                  \        P                  ! \        P                  ! V! 4       4      4      4        ! R
 R4      pV P                  \        P                  ! VP                   4      4       V P                  \        P                  ! VP"                  4      4       V P                  \        P                  ! \$        P&                  P)                  4       4      4       V P                  \        P                  ! \$        P&                  P+                  4       4      4       V P                  \        P                  ! \        4      4       V P                  \        P                  ! \        P                  ! \        P                  ! \        4      4      4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! \$        P&                  P)                  4       4      4       V P                  \        P                  ! \$        P&                  P+                  4       4      4       V P                  \        P                  ! \        4      4       V P                  \        P                  ! \        P                  ! \        P                  ! \        4      4      4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! V4      4       V P                  \        P,                  ! \$        P&                  P)                  4       4      4       V P                  \        P,                  ! \$        P&                  P+                  4       4      4       V P                  \        P,                  ! \        4      4       V P                  \        P,                  ! \         4      4       V P                  \        P,                  ! \        P                  ! \        P                  ! \         4      4      4      4       V P                  \        P,                  ! V4      4       V P                  \        P,                  ! V	4      4       V P                  \        P.                  ! V4      4       VP1                  4        VP1                  4        R# )   c                       ] tR t^t]P
                  ! ]4      t]P
                  ! ]4      t	]P
                  ! ]
4      tRtR# )0TestPredicates.test_iscoroutine.<locals>.PMClassr:   N)rJ   re   rf   rg   	functoolspartialmethodr~   %async_generator_partialmethod_exampler   coroutine_partialmethod_exampler   #gen_coroutine_partialmethod_examplerr   r:   r!   r   PMClassr      s>    4=4K4K0521.7.E.E*/,+2;2I2I.30/r!   r   c                     "   R # 5ir   r:   r:   r!   r   _fn3-TestPredicates.test_iscoroutine.<locals>._fn3  s     r   c                     < S ! 4       # r   r:   r   s   r   fn3,TestPredicates.test_iscoroutine.<locals>.fn3  s
    6Mr!   c                     < S ! 4       # r   r:   r   s   r   <lambda>1TestPredicates.test_iscoroutine.<locals>.<lambda>  s    dfr!   c                   &   a  ] tR tRt o R tRtV tR# )+TestPredicates.test_iscoroutine.<locals>.Cli  c                   "   R # 5ir   r:   rb   s   &r   __call__4TestPredicates.test_iscoroutine.<locals>.Cl.__call__  s     r   r:   NrJ   re   rf   rg   r   rr   rs   rt   s   @r   Clr           r!   r   c                   D   a  ] tR tRt o ]P
                  R 4       tRtV tR# ),TestPredicates.test_iscoroutine.<locals>.Cl2  c                    R # r   r:   rb   s   &r   r   5TestPredicates.test_iscoroutine.<locals>.Cl2.__call__      r!   r:   N)	rJ   re   rf   rg   rM   markcoroutinefunctionr   rr   rs   rt   s   @r   Cl2r     s     ** +r!   r   c                   |   a  ] tR tRt o ]P
                  ]R 4       4       t]P
                  ]R 4       4       t	Rt
V tR# ),TestPredicates.test_iscoroutine.<locals>.Cl3i+  c                    R # r   r:   clss   &r   do_something_classy@TestPredicates.test_iscoroutine.<locals>.Cl3.do_something_classy,       r!   c                     R # r   r:   r:   r!   r   do_something_static@TestPredicates.test_iscoroutine.<locals>.Cl3.do_something_static1  r   r!   r:   N)rJ   re   rf   rg   rM   r   classmethodr   staticmethodr   rr   rs   rt   s   @r   Cl3r   +  sG     **  + **  +r!   r   N)r~   r   r   r   r   r   rT   rM   rP   r   partialro   rI   rN   rn   r   r   r   r   mockMock	AsyncMockrO   rp   close)rU   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4W=>,,X67''(FG	I''!!)"3"32#4 56	7 	33LAB33LAB++H56	 
	&	&	 
'	 	33C89''--n=	
	 	 	44R8944RT:;33))"$/
 		 	
 	44S9:44SU;<33))#%0
 			 		 	33C4K4KLM33C4K4KLM''(:(:(<=	?''(?(?(AB	D''(BC	E''!!)"3"3.#0 12	3 	33H=>33H=>++D12''(:(:(<=	?''(?(?(AB	D''(BC	E''!!)"3"3.#0 12	3 	44X>?44X>?,,T23&&x}}'9'9';<	>&&x}}'>'>'@A	C&&'AB	D&&'GH	J&&!!)"3"34#6 78	9 	223EFG223EFG**>:;

hnn&r!   c                   R  pV P                  \        P                  ! V! 4       4      4       \        ^4      p\	        ^4      pV P                  \        P                  ! V4      4       V P                  \        P                  ! V4      4        ! R R4      pV P                  \        P                  ! V! 4       4      4       V P                  \        P                  ! V4      4        ! R R4      pV! 4       pR Vn        V P                  \        P                  ! V4      4       VP                  4        VP                  4        R# )c               3      "   R x  R # 5ir   r:   r:   r!   r   gen,TestPredicates.test_isawaitable.<locals>.genh  s     5r   c                   &   a  ] tR tRt o R tRtV tR# )/TestPredicates.test_isawaitable.<locals>.Futureiq  c                     R # r   r:   r:   r!   r   	__await__9TestPredicates.test_isawaitable.<locals>.Future.__await__r      r!   r:   N)rJ   re   rf   rg   r  rr   rs   rt   s   @r   Futurer  q  r   r!   r  c                       ] tR tRtRtR# )2TestPredicates.test_isawaitable.<locals>.NotFutureiw  r:   NrJ   re   rf   rg   rr   r:   r!   r   	NotFuturer  w  s    r!   r  c                      R # r   r:   r:   r!   r   r   1TestPredicates.test_isawaitable.<locals>.<lambda>y      Dr!   N)rT   rM   isawaitabler   r   rI   r  r   )rU   r  r   r   r  r  not_futs   &      r   test_isawaitableTestPredicates.test_isawaitableg  s    ,,SU34)!,1!4++D12++H56	 	 	++FH56,,V45+(,,W56

hnn&r!   c           	     	   V P                  \        P                  ! \        P                  4      4       V P                  \        P                  ! \
        P                  4      4       V P                  \        P                  ! . P                  4      4       V P                  \        P                  ! \
        P                  4      4       V P                  \        P                  ! \
        P                  P                  4      4       V P                  \        P                  ! \        P                  4      4       V P                  \        P                  ! \        P                  4      4       V P                  \        P                  ! \        P                  4      4       V P                  \        P                  ! \        P                  4      4       V P                  \        P                  ! \        4       P                  4      4       V P                  \        P                  ! \        4       P                  4      4       V P                  \        P                  ! \        4       P                  4      4       V P                  \        P                  ! ^*P                  4      4       V P                  \        P                  ! \         P"                  4      4       V P                  \        P                  ! \$        P&                  4      4       V P                  \        P                  ! RP"                  4      4       V P                  \        P                  ! . P&                  4      4       V P)                  \        P                  ! \        4      4       V P)                  \        P                  ! \        4       4      4       V P)                  \        P                  ! \!        4       4      4       V P)                  \        P                  ! \
        4      4       V P)                  \        P                  ! \*        4      4       V P)                  \        P                  ! \        4      4       V P)                  \        P                  ! \+        RR/ 4      4      4       V P                  \        P                  ! \,        P.                  ! \
        P                  4      4      4       R# )*    
some_classNr:   )rI   rM   	isroutinegitarguer   custom_methodcountr   	StupidGitabuser   __init____str____lt__r   strr/   listr.   rT   r   r   r   rb   s   &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**6845**3512**3/0**401**3/0**4b"+EFG)))*;*;CHH*EFGr!   c                *   V P                  \        P                  ! \        P                  ! \
        P                  4      4      4        ! R  R4      pV P                  \        P                  ! VP                  4      4       V P                  \        P                  ! V! 4       P                  4      4       V P                  \        P                  ! VP                  4      4       V P                  \        P                  ! VP                  4      4       R# )c                      a  ] tR tRt o ]P
                  R 4       t]P
                  ]R 4       4       t]P
                  ]	R 4       4       t
RtV tR# )7TestPredicates.test_isroutine_singledispatch.<locals>.Ai  c                    R # r   r:   )rU   args   &&r   method>TestPredicates.test_isroutine_singledispatch.<locals>.A.method  r   r!   c                    R # r   r:   r   r2  s   &&r   class_methodDTestPredicates.test_isroutine_singledispatch.<locals>.A.class_method  r   r!   c                    R # r   r:   )r2  s   &r   static_methodETestPredicates.test_isroutine_singledispatch.<locals>.A.static_method  r   r!   r:   N)rJ   re   rf   rg   r   singledispatchmethodr3  r   r7  r   r:  rr   rs   rt   s   @r   Ar0    s]     ++ ,++  ,++  ,r!   r=  N)
rI   rM   r   r   singledispatchr   r   r3  r:  r7  rU   r=  s   & r   test_isroutine_singledispatch,TestPredicates.test_isroutine_singledispatch  s    )))*B*B388*LMN	 	 	))!((34))!#**56))!//:;))!..9:r!   c                
   V P                  \        P                  R 4       V P                  \        P                  ! \        4      4        ! R R\
        4      pV P                  \        P                  ! V! 4       4      4       R# )zmod.StupidGitc                   &   a  ] tR tRt o R tRtV tR# )2TestPredicates.test_isclass.<locals>.CustomGetattri  c                    R # r   r:   rU   attrs   &&r   __getattr__>TestPredicates.test_isclass.<locals>.CustomGetattr.__getattr__      r!   r:   NrJ   re   rf   rg   rH  rr   rs   rt   s   @r   CustomGetattrrD          r!   rL  N)rZ   rM   ri   rI   r+  r   rT   )rU   rL  s   & r   test_isclassTestPredicates.test_isclass  sP    GOO_5-.	F 	 	9:r!   c                     ! R  R\         4      pV! 4       p^*Vn        \        \        P                  ! V4      4      pV P                  RV4       V P                  RV4       R# )c                       ] tR tRtRtRtR# )/TestPredicates.test_get_slot_members.<locals>.Ci  r:   Nr$   brJ   re   rf   rg   	__slots__rr   r:   r!   r   CrR    s    "Ir!   rW  r$   rT  N)r   r$   dictrM   
getmembersassertInassertNotIn)rU   rW  xmemberss   &   r   test_get_slot_members$TestPredicates.test_get_slot_members  sO    	# 	#Cw))!,-c7#g&r!   c                  a ^ RI HpHo  ! V3R lRVR7      p ! R RV4      pV! 4       pV P                  \        P
                  ! V4      4       V P                  \        P
                  ! V4      4       V P                  \        P
                  ! V4      4       V P                  \        P
                  ! \        4      4       V P                  \        P
                  ! ^4      4       R# )r   ABCMetaabstractmethodc                   4   <a  ] tR tRt o  ZR 4       tRtV tR# )<TestPredicates.test_isabstract.<locals>.AbstractClassExamplei  c                    R # r   r:   rb   s   &r   r#   @TestPredicates.test_isabstract.<locals>.AbstractClassExample.foo  r   r!   r:   NrJ   re   rf   rg   r#   rr   rs   ru   rc  s   @r   AbstractClassExamplere    s      r!   rj  	metaclassc                   &   a  ] tR tRt o R tRtV tR# )4TestPredicates.test_isabstract.<locals>.ClassExamplei  c                    R # r   r:   rb   s   &r   r#   8TestPredicates.test_isabstract.<locals>.ClassExample.foo  r  r!   r:   Nrh  rt   s   @r   ClassExamplern    r   r!   rq  N)abcrb  rc  rI   rM   
isabstractrT   r   )rU   rb  rj  rq  r$   rc  s   &    @r   test_isabstractTestPredicates.test_isabstract  s    /	W 		/ 	 N 	**+?@A++L9:++A./++C01++A./r!   c                   aa	 ^ RI HpHo . o	 ! V	3R lRVR7      p ! V3R lRV4      p ! R RV4      pV P                  S	R	R
.4       S	P	                  4         ! R RV4      p ! R RV4      p ! R RV4      pV P                  S	. RO4       R# )r   ra  c                   .   <a  ] tR tRt o V3R ltRtV tR# )LTestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractCheckeri  c                R   < SP                  \        P                  ! V 4      4       R # r   )r.   rM   rs  )r   isabstract_checkss   &r   __init_subclass__^TestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractChecker.__init_subclass__  s    !((););C)@Ar!   r:   N)rJ   re   rf   rg   r{  rr   rs   )ru   rz  s   @r   AbstractCheckerrx    s     B Br!   r}  rk  c                   4   <a  ] tR tRt o  ZR 4       tRtV tR# )QTestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractClassExamplei  c                    R # r   r:   rb   s   &r   r#   UTestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractClassExample.foo  r   r!   r:   Nrh  ri  s   @r   rj  r    s      r!   rj  c                   &   a  ] tR tRt o R tRtV tR# )ITestPredicates.test_isabstract_during_init_subclass.<locals>.ClassExamplei  c                    R # r   r:   rb   s   &r   r#   MTestPredicates.test_isabstract_during_init_subclass.<locals>.ClassExample.foo  r  r!   r:   Nrh  rt   s   @r   rq  r    r   r!   rq  TFc                       ] tR tRtRtR# )JTestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractChildi  r:   Nr  r:   r!   r   AbstractChildr        r!   r  c                       ] tR tRtRtR# )OTestPredicates.test_isabstract_during_init_subclass.<locals>.AbstractGrandchildi  r:   Nr  r:   r!   r   AbstractGrandchildr    r  r!   r  c                       ] tR tRtRtR# )OTestPredicates.test_isabstract_during_init_subclass.<locals>.ConcreteGrandchildi  r:   Nr  r:   r!   r   ConcreteGrandchildr    r  r!   r  N)TTF)rr  rb  rc  assertEqualclear)
rU   rb  r}  rj  rq  r  r  r  rc  rz  s
   &       @@r   $test_isabstract_during_init_subclass3TestPredicates.test_isabstract_during_init_subclass  s    /	B 	B	? 		/ 	 	*T5M:!	0 		 		 	*,?@r!   r:   N)rJ   re   rf   rg   r   r   r  r  r,  r@  rN  r^  rt  r  rr   rs   rt   s   @r   r   r      sD     /Lb
;N(`'."HH;*;'0,A Ar!   r   c                   D   a  ] tR tRt o R tR tR tR tR tR t	Rt
V tR	# )
TestInterpreterStacki  c                |    \         P                  P                  ! V .VO5/ VB  \        P	                  ^^^	4       R#    N)r   TestCaser'  r!  r&  rU   r   kwargss   &*,r   r'  TestInterpreterStack.__init__  s0    ""49$9&9		!Qr!   c                    V P                  \        P                  R 4       V P                  \        P                  R4       R# )zgit.ex.__traceback__zmod.frN)rZ   rM   rm   rk   rb   s   &r   test_abuse_done$TestInterpreterStack.test_abuse_done  s)    G'')?@GOOX.r!   c           	     >   V P                  \        \        P                  4      ^8  4       \        P                  vrr4p\	        VR,          !  pV P                  V\        ^RR.^ 34       V P                  VP                  \        P                  ! ^^^	^4      4       \	        VR,          !  pV P                  V\        ^	RR.^ 34       V P                  VP                  \        P                  ! ^	^	^^4      4       \	        VR,          !  pV P                  V\        ^+RR.^ 34       V P                  VP                  \        P                  ! ^+^+^^4      4       \	        VR,          !  pV P                  V\        ^'RR	.^ 34       V P                  VP                  \        P                  ! ^'^'^^4      4       \        P                  ^ ,          pV P                  VP                  \        P                  4       V P                  VP                  ^4       V P                  VP                  \        P                  4       V P                  VP                   R4       V P#                  R
VP$                  ^ ,          4       V P                  VP&                  ^ 4       R# )   r   NNeggsz    st = inspect.stack()
r       eggs(b + d, c + f)
r"              spam(a, b, c)
r&  z        self.argue(a, b, c)
zinspect.stack()N)rI   r-   r   str    r  modfile	positionsdis	PositionsassertIsframefrlinenor   __file__functionrZ  code_contextindex)rU   frame1frame2frame3frame4_	frameinforecords   &       r   
test_stackTestInterpreterStack.test_stack  s   CFFq()-0VV*F2J'	r6$@#A1E	G))3==RB+GHF2J'	q&#=">B	D))3==Aq"+EFF2J'	r7%B$CQG	I))3==RR+HIF2J'	r7%D$EqI	K))3==RB+GHfllCFF++#,,7&1')<)<Q)?@q)r!   c           	        V P                  \        \        P                  4      ^4       \        P                  w  rpV P                  \	        VR,          !  \
        ^+RR.^ 34       V P                  VP                  \        P                  ! ^+^+^^4      4       V P                  \	        VR,          !  \
        ^	RR.^ 34       V P                  VP                  \        P                  ! ^	^	^^4      4       V P                  \	        VR,          !  \
        ^RR.^ 34       V P                  VP                  \        P                  ! ^^^^4      4       R# )	   r  r"  r  r   r  r  z    q = y / 0
N)	r  r-   r!  trr    r  r  r  r  )rU   r  r  r  s   &   r   
test_traceTestInterpreterStack.test_trace  s   SVVa("%&&,r7%B$CQG	I))3==RR+HI,q&#=">B	D))3==Aq"+EF,r6$5#6:	<))3==RB+GHr!   c           	     B   \         P                  ! \        P                  4      w  rr4V P	                  VR R.4       V P	                  VR4       V P	                  VR4       V P	                  VR ^R^R^/4       V P	                  \         P
                  ! WW44      R4       R# )r\  yNr3   z(x=11, y=14))rM   getargvaluesr   r  r  formatargvaluesrU   r   varargsvarkwlocalss   &    r   
test_frameTestInterpreterStack.test_frame+  s    '.';';CFF'C$uSz*$'%#r3C!<=00N'	)r!   c                &   \         P                  ! \        P                  P                  4      w  rr4V P                  V. RO4       V P                  VR4       V P                  VR4       V P                  \         P                  ! WW44      R4       R# )r$   ghz-(a=7, b=8, c=9, d=3, e=4, f=5, *g=(), **h={})N)r$   rT  r&   dr   f)rM   r  r   r  f_backr  r  r  s   &    r   test_previous_frame(TestInterpreterStack.test_previous_frame4  sp    '.';';CFFMM'J$u=>#&$00N<	>r!   r:   N)rJ   re   rf   rg   r'  r  r  r  r  r  rr   rs   rt   s   @r   r  r    s)     
/*8I)> >r!   r  c                   6   a  ] tR tRt o RtR tR tR tRtV t	R# )GetSourceBasei<  Nc                    \        \        P                  ! V P                  4      R R7      ;_uu_ 4       pVP	                  4       V n        RRR4       R#   + '       g   i     R# ; i)utf-8encodingN)openrM   getsourcefilefodderModulereadsource)rU   fps   & r   setUpGetSourceBase.setUp@  s@    '''(9(9:WMMQS'')DK NMMMs   AA%	c                    V P                   P                  R 4      pR P                  W1^,
          V 4      V'       d	   R ,           # R,           # )
r  )r  splitr/   )rU   topbottomliness   &&& r   sourcerangeGetSourceBase.sourcerangeD  s=    !!$'yy1uV,-HHRHHr!   c                p    V P                  \        P                  ! V4      V P                  W#4      4       R # r   )r  rM   	getsourcer  )rU   rX   r  r  s   &&&&r   assertSourceEqualGetSourceBase.assertSourceEqualH  s+    **3/))#6	8r!   )r  )
rJ   re   rf   rg   r  r  r  r  rr   rs   rt   s   @r   r  r  <  s     L$I8 8r!   r  c                   &    ] tR tRtRtRRRR/tRtR# )	SlotUseriL  zDocstrings for __slots__powermeasured in kilowattsdistancemeasured in kilometersr:   N)rJ   re   rf   rg   __doc__rV  rr   r:   r!   r   r  r  L  s    157Ir!   r  c                     a  ] tR tRt o ]tR tR t]P                  ! ]
P                  P                  ^8  R4      R 4       t]P                  ! ]
P                  P                  ^8  R4      R 4       t]P                  ! ]R4      R 4       t. ROtR	 t]R
 4       tR tR tR tR tR tR tR tR tR tR tR tR t R t!R t"R t#R t$R t%R t&Rt'V t(R# ) TestRetrievingSourceCodeiQ  c                "   \         P                  ! \        \         P                  4      pV P	                  VR \        P
                  3R\        P                  3R\        P                  3R\        P                  3R\        P                  3R\        P                  3.4       \         P                  ! V Uu. uF  q"^,          NK  	  up4      pV P	                  V\        R3\        P                  \        33\        P
                  \        P                  \        P                  33.\        P                  \        33\        P                  \        P                  33\        P
                  \        P                  \        P                  33..\        P                  \        33..4       \         P                  ! V Uu. uF  q"^,          NK  	  upR4      pV P	                  V\        R3\        P                  \        33\        P                  \        33\        P                  \        P                  33\        P
                  \        P                  \        P                  33..\        P                  \        33..4       R# u upi u upi )	FesteringGobMalodorousPervertParrotDroppingsr%  TitWhichCommentsTNr:   )rM   rY  r   ri   r  r  r  r  r%  r  getclasstreer   )rU   classesr   trees   &   r   test_getclasses(TestRetrievingSourceCode.test_getclassesT  s0   $$S'//:)3+;+;<.0E0EF,c.A.AB&6 #"7"78*C,=,=>	 ##w$?wVVw$?@!2,//&; --0E0E363F3F0H I   MMF95 22S]]4DE!..1F1F474G4G1I J 
 !..	;	 ##w$?wVVw$?F!2,//&;MMF95 22S]]4DE!..1F1F474G4G1I J 
 !..	;
	# %@  %@s   6J?Jc                   \         P                  ! \        \         P                  4      pV P	                  VR \        P
                  3R\        P                  3R\        P                  3R\        P                  3.4       R# )after_closingr  lobbestr   N)	rM   rY  r   rQ   r  r  r  r  r   )rU   	functionss   & r   test_getfunctions*TestRetrievingSourceCode.test_getfunctions|  s`    &&sG,>,>?	os7H7H%I&,chh%7&/%=&,chh%7%9 	:r!   z)Docstrings are omitted with -O2 and abovec                   V P                  \        P                  ! \        4      R 4       V P                  \        P                  ! \        P                  4      R4       V P                  \        P                  ! \
        P                  4      R4       V P                  \        P                  ! \        P                  4      R4       V P                  \        P                  ! \        P                  4      R4       R# )zA module docstring.A longer,

indented

docstring.$Another

docstring

containing

tabsr  r  N)
r  rM   getdocr   r%  r!  r&  r  r  r  rb   s   &r   test_getdoc$TestRetrievingSourceCode.test_getdoc  s     	,.CD6>	@		2E	G70	2(9(9:1	3r!   c                   V P                  \        P                  ! \        P                  4      R 4       V P                  \        P                  ! \        P                  P
                  4      R4       V P                  \        P                  ! \        P                  ! 4       P
                  4      R4       V P                  \        P                  ! \        P                  P                  4      R4       R# )r  r	  zThe automatic gainsaying.N)r  rM   r
  r   r  r&  contradictionrb   s   &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!   ztest requires docstringsc                r   \         P                  pV P                  V! \        4      \        P                  4       V P                  V! \        P
                  4      \        P
                  P                  4       V P                  V! \        4       P
                  4      \        P
                  P                  4       V P                  V! \        P                  4      \        P                  P                  4       V P                  V! \        P                  4      \        P                  P                  4       R # r   )rM   _finddocr  r   r  to_bytes
from_bytesreal)rU   finddocs   & r   test_finddoc%TestRetrievingSourceCode.test_finddoc  s    ""s{{3.0D0DE0#,,2F2FG0#..2H2HI*CHH,<,<=r!   c                (   \         P                  p\        V P                  4       FT  w  pw  r4VP	                  R 4      pV P                  VR7      ;_uu_ 4        V P                  V! V4      V4       RRR4       KV  	  R#   + '       g   i     Kk  ; i)r  r2   N)rM   cleandoc	enumeratecleandoc_testdatastripsubTestr  )rU   funcr2   inputexpecteds   &    r   test_cleandoc&TestRetrievingSourceCode.test_cleandoc  sr    $-d.D.D$E A ~~d+H""  eh7 #" %F #""s   B  Bc                V    ^ RI pTP                  p\        T P                  4       FC  w  pw  rET P                  TR7      ;_uu_ 4        T P                  T! T4      T4       RRR4       KE  	  R#   \         d    \        P                  ! R4      u # i ; i  + '       g   i     K  ; i)r   Nzrequires _testinternalcapir  )	_testinternalcapiImportErrorr   skipcompiler_cleandocr  r  r  r  )rU   r&  r   r2   r!  r"  s   &     r   test_c_cleandoc(TestRetrievingSourceCode.test_c_cleandoc  s    	?$ !22$-d.D.D$E A ""  eh7 #" %F  	?==!=>>	? #""s   A0 	B0!BBB(c                   V P                  \        P                  ! \        4      R 4       V P                  \        P                  ! \        P                  4      R4       V P                  \        P                  ! \
        P                  4      R4       \        RRR4      pV P                  \        P                  ! V4      4       V P                  \        P                  ! \        4      4       R# )	# line 1
z
# line 20
z# line 159
x=1z_non_existing_filename.pyr0   N)
r  rM   getcommentsr   r%  mod2cls160compileassertIsNoner+  )rU   cos   & r   test_getcomments)TestRetrievingSourceCode.test_getcomments  s    ,,S1<@,,S]];]K,,T[[9>JU7@'--b12'--d34r!   c                   V P                  \        P                  ! \        4      \        4       V P                  \        P                  ! \        P                  4      \        4       V P                  \        P                  ! \        P                  P
                  4      \        4       V P                  \        P                  ! \        P                  P
                  4      \        4       V P                  \        P                  ! \        4      \        P                  R ,          4       V P                  \        P                  ! R\        4      \        4       R# )builtinsN)
r  rM   	getmoduler   r%  r&  r*  sysmodulesr  rb   s   &r   test_getmodule'TestRetrievingSourceCode.test_getmodule  s    **3/5**3==93?**3==+>+>?E**3==+>+>?E**3/Z1HI**493?r!   c                6   R  p\         P                  P                  RV4      ;_uu_ 4        \        P                  ! 4       pV P                  \        P                  ! V4      4       \        P                  ! V4       RRR4       R#   + '       g   i     R# ; i)c                     \        R 4      h)zbad file)FileNotFoundError)rX   	_filenames   &&r   _getabsfileKTestRetrievingSourceCode.test_getmodule_file_not_found.<locals>._getabsfile  s    #J//r!   zinspect.getabsfileN)r   r   patchrM   currentframer3  r9  getouterframes)rU   rB  r  s   &  r   test_getmodule_file_not_found6TestRetrievingSourceCode.test_getmodule_file_not_found  sd    	0]]  !5{CC$$&Ag//23""1% DCCCs   ABB	c                    \         P                  ! V P                  P                  ^24      pV P	                  VP
                  ^ ,          R4       V P	                  VP
                  ^,          R4       R# )2   r-  z'A module docstring.'
N)rM   getframeinfor  r  r  r  )rU   
frame_infos   & r    test_getframeinfo_get_first_line9TestRetrievingSourceCode.test_getframeinfo_get_first_line  sW    ))$*;*;*>*>C
003\B0035NOr!   c                   V P                  \        P                  ^^'4       V P                  \        P                  ^^34       V P                  \        P
                  ^K^L4       V P                  \        P                  ^x^x4       R# )   N)r  r!  r&  r   r%  r  r  rb   s   &r   test_getsource'TestRetrievingSourceCode.test_getsource  s\    syy"b1s}}b"5s{{B3s00#s;r!   c                   V P                  \        \        P                  ! \        P
                  4      4      \        4       V P                  \        \        P                  ! \        P                  4      4      \        4       R p\        RVR4      pV P                  \        P                  ! V4      R4       ^RRVP                  3\        P                  VP                  &    V P                  \        \        P                  ! V4      4      V4       \        P                  VP                   R#   \        P                  TP                   i ; i)z2_non_existing_filename_used_for_sourcefile_test.pyr.  r0   NNone)r  r   rM   r  r   r   r  r!  r&  r2  co_filename	linecachecache)rU   fnr4  s   &  r   test_getsourcefile+TestRetrievingSourceCode.test_getsourcefile  s    '"7"7"ABGL'"7"7		"BCWMAUB'..r2D9+,dFBNN*K	'	0Xg&;&;B&?@"E/	/s   $/D0 0Ec           	     6   \        4       ;_uu_ 4       p\        R R4      ;_uu_ 4         RRR4       \        P                  P	                  ^ V4        ^ RIpV P                  \        P                  ! V4      R4       V P                  \        P                  ! V4      R.^ 34       \        P                  P                  V4        RRR4       R#   + '       g   i     L; i  \        P                  P                  T4       i ; i  + '       g   i     R# ; i)zempty_file.pywNr  )r   r  r:  pathinsert
empty_filer  rM   r  getsourcelinesremove)rU   cwdr_  s   &  r   test_getsource_empty_file2TestRetrievingSourceCode.test_getsource_empty_file  s    ZZ3os++ ,HHOOAs#%!  !2!2:!>E  !7!7
!Ctfa[Q$ Z++ $ ZZs:   DC	(DAC#&DC D#!DDD	c                    V P                  \        P                  ! \        P                  4      \        P
                  4       R # r   )r  rM   getfiler   r%  r  rb   s   &r   test_getfile%TestRetrievingSourceCode.test_getfile  s#    7Fr!   c                    V P                  \        4      ;_uu_ 4       p\        P                  ! \        4       R R R 4       V P                  \        XP                  4      R4       R #   + '       g   i     L7; i)Nz<module)assertRaises	TypeErrorrM   rf  r:  assertStartsWithr*  	exceptionr   s   & r   test_getfile_builtin_module4TestRetrievingSourceCode.test_getfile_builtin_module  sH    y))QOOC  *c!++.	: *)   A((A8	c                    V P                  \        4      ;_uu_ 4       p\        P                  ! \        4       R R R 4       V P                  \        XP                  4      R4       R #   + '       g   i     L7; i)Nz<class)rj  rk  rM   rf  r   rl  r*  rm  r   s   & r   test_getfile_builtin_class3TestRetrievingSourceCode.test_getfile_builtin_class  sH    y))QOOC  *c!++.9 *)rp  c                   V P                  \        4      ;_uu_ 4       p\        P                  ! \        4       R R R 4       V P                  R\        XP                  4      4       V P                  \        4      ;_uu_ 4       p\        P                  ! \        P                  4       R R R 4       V P                  R\        XP                  4      4       R #   + '       g   i     L; i  + '       g   i     LJ; i)Nzexpected, got)
rj  rk  rM   rf  absrZ  r*  rm  r+  r.   )rU   e_abse_appends   &  r   'test_getfile_builtin_function_or_method@TestRetrievingSourceCode.test_getfile_builtin_function_or_method  s    y))UOOC  *os5??';<y))XOODKK( *os8+=+='>? *) *)s   C%C*C'	*C:	c                     ! R  R\         4      p ! R RVR7      pV P                  \        4      ;_uu_ 4        \        P                  ! V4       RRR4       R#   + '       g   i     R# ; i)c                   0   a  ] tR tRt o ]R 4       tRtV tR# )FTestRetrievingSourceCode.test_getfile_class_without_module.<locals>.CMi%  c                    \         hr   AttributeErrorr   s   &r   re   QTestRetrievingSourceCode.test_getfile_class_without_module.<locals>.CM.__module__&  s    $$r!   r:   N)rJ   re   rf   rg   propertyrr   rs   rt   s   @r   CMr|  %       % %r!   r  c                       ] tR tRtRtR# )ETestRetrievingSourceCode.test_getfile_class_without_module.<locals>.Ci)  r:   Nr  r:   r!   r   rW  r  )  r  r!   rW  rk  N)r   rj  rk  rM   rf  )rU   r  rW  s   &  r   !test_getfile_class_without_module:TestRetrievingSourceCode.test_getfile_class_without_module$  sF    	% 	%	" 	y))OOA *)))s   AA+	c                     ! R  R4      pV! 4       pV P                  \        4      ;_uu_ 4        \        P                  ! V4       RRR4       R#   + '       g   i     R# ; i)c                   &   a  ] tR tRt o R tRtV tR# )DTestRetrievingSourceCode.test_getfile_broken_repr.<locals>.ErrorRepri/  c                    \        R 4      h)xyz)r   rb   s   &r   __repr__MTestRetrievingSourceCode.test_getfile_broken_repr.<locals>.ErrorRepr.__repr__0  s    &&r!   r:   N)rJ   re   rf   rg   r  rr   rs   rt   s   @r   	ErrorReprr  /  s     ' 'r!   r  N)rj  rk  rM   rf  )rU   r  ers   &  r   test_getfile_broken_repr1TestRetrievingSourceCode.test_getfile_broken_repr.  sA    	' 	' [y))OOB *)))s   AA!	c                l   ^ RI Hp RpV! V4      ;p\        P                  V&   RVn        RVn        \        RVP                  4       V P                  \        P                  ! VP                  P                  4      R4       \        P                  V \        P                  ! \        RRR4      4       R	# )
r   )
ModuleType__inspect_dummy<string>dummyzdef x(): passza=10r  singleN)r   r  r:  r;  r  
__loader__r0   __dict__r  rM   r  r\  __code__r9  r2  )rU   r  namems   &   r   test_getmodule_recursion1TestRetrievingSourceCode.test_getmodule_recursion6  s    $  *4 00CKK
_ajj)..qss||<jIKK'&H56r!   c                  aaa RRuoo\         P                  oRVVV3R llpV\         n         / p\        \        SSR4      V4       \        P
                  ! VR,          4       S\         n        R#   S\         n        i ; i)z4doctest monkeypatches linecache to enable inspectionz<test>zdef x(): pass
Nc                 F   < V S8X  d   SP                  R R7      # S! W4      # )T)keepends)
splitlines)r   module_globalsrX  getlinesr  s   &&r   monkeyHTestRetrievingSourceCode.test_proceed_with_fake_filename.<locals>.monkeyE  s)    2~(($(7799r!   r  r\  r   )rV  r  r0   r2  rM   r  )rU   r  nsrX  r  r  s   &  @@@r   test_proceed_with_fake_filename8TestRetrievingSourceCode.test_proceed_with_fake_filenameA  sn    0
F%%	: 	:
 $		*BX.3bg&!)IIs   6A2 2A?c                \    V P                  \        P                  P                  ^^4       R# )   N)r  r   r  r  rb   s   &r   test_getsource_on_code_object6TestRetrievingSourceCode.test_getsource_on_code_objectR  s    sxx00"b9r!   c                B   \        R \        P                  3/ 4      pV P                  \        P
                  ! V4      \        4       V P                  \        P                  ! V4      \        4       V P                  \        P                  ! V4      \        P                  \        ,          4       V P                  \        \        P                  V4       V P                  \        \        P                   V4       V P#                  \        P$                  ! V4      4       R# )r=  N)r   r   r  r  rM   r  r  rf  r  r9  r:  r;  rJ   rj  OSErrorr  r`  r3  r/  r?  s   & r   !test_getsource_on_generated_class:TestRetrievingSourceCode.test_getsource_on_generated_classU  s    x((*B/..q18<+X6g''*CKK,AB'7#4#4a8'7#9#91='--a01r!   c                p   a ^o ! V3R lR4      pV P                  \        \        P                  V4       R# )r   c                      < ] tR tRo RtR# )OTestRetrievingSourceCode.test_getsource_on_class_without_firstlineno.<locals>.Ci`  r:   N)rJ   re   rf   rr   )rg   s   r   rW  r  `  s     r!   rW  N)rj  r  rM   r  )rU   rW  rg   s   & @r   +test_getsource_on_class_without_firstlinenoDTestRetrievingSourceCode.test_getsource_on_class_without_firstlineno^  s*    	% 	%'7#4#4a8r!   r:   N))z An
  indented
   docstring.zAn
indented
 docstring.)z# An 
   
  indented 
   docstring. zAn 
 
indented 
 docstring. )z'doc string

  second line
  third line z#doc string

second line
third line )z   r  )z+


  first paragraph

   second paragraph

z'


first paragraph

 second paragraph

)z   
 
  
   z	
 
  
   ))rJ   re   rf   rg   r   r  r  r  r   skipIfr:  flagsoptimizer  r  r
   r  r  r#  r   r*  r5  r<  rG  rM  rQ  rY  rc  rg  rn  rr  rx  r  r  r  r  r  r  r  rr   rs   rt   s   @r   r  r  Q  s!    L&P: __SYY''1,@B	3B	3 __SYY''1,@B6B6 __)+EF> G>&8 8 85@&P
<
0
%G;
:
@ 	7*":29 9r!   r  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )TestGetsourceStdlibid  c                .   ^ RI p\        P                  ! VP                  P                  4      w  r#V P                  V^ ,          R4       \        P                  ! VP                  P                  4      pV P                  VP                  R4      V4       R# )r   Nz(class Sequence(Reversible, Collection):
T)collections.abcrM   r`  rr  Sequencer  r  r  )rU   collectionsr  r  srcs   &    r   %test_getsource_stdlib_collections_abc9TestGetsourceStdlib.test_getsource_stdlib_collections_abcg  si    ..{/G/GHq#NO 8 89-u5r!   c                    ^ RI pV P                  \        \        P                  VP
                  4       V P                  \        \        P                  VP
                  4       R# r   N)tomllibrj  r  rM   r  TOMLDecodeErrorr`  )rU   r  s   & r   test_getsource_stdlib_tomllib1TestGetsourceStdlib.test_getsource_stdlib_tomllibn  sA    '7#4#4g6M6MN'7#9#97;R;RSr!   c                   \         P                  ! R R.R7      p\        P                  ! \        P
                  R V4      ;_uu_ 4        V P                  \        \        P                  VP                  4       V P                  \        \        P                  VP                  4       RRR4       ^ RIp \        P                  ! VP                  4      p\        P                  ! VP                  4      w  r4V P                  V^ ,          R4       V P                  VP                  R4      V4       R#   + '       g   i     L; i  \         d     R# i ; i)rr  _abcblockedNz    class ABCMeta(type):
T)r	   import_fresh_moduler   	swap_itemr:  r;  rj  r  rM   r  rb  r`  rr  r  r  )rU   rr  r  r  r  s   &    r   test_getsource_stdlib_abc-TestGetsourceStdlib.test_getsource_stdlib_abcs  s    //xHs{{E377gw'8'8#++Fgw'='=s{{K 8 		:##CKK0C#223;;?ME U1X'CDS^^D159 87  		s    AD24AE 2E	EEc                   \         P                  ! R R.R7      p\        P                  ! \        P
                  R V4      ;_uu_ 4        \        P                  ! VP                  4      p\        P                  ! VP                  4      w  r4RRR4       V P                  X^ ,          R4       V P                  XP                  R4      V4       R#   + '       g   i     LL; i)decimal_decimalr  Nzclass Decimal(object):
T)r	   r  r   r  r:  r;  rM   r  Decimalr`  r  r  )rU   r  r  r  r  s   &    r   test_getsource_stdlib_decimal1TestGetsourceStdlib.test_getsource_stdlib_decimal  s    33I
|Ts{{Iw??##GOO4C#227??CME @ 	q#=>-u5	 @?s   ACC	r:   N)
rJ   re   rf   rg   r  r  r  r  rr   rs   rt   s   @r   r  r  d  s     6T
:"6 6r!   r  c                   D   a  ] tR tRt o ]P
                  R 4       tRtV tR# )TestGetsourceInteractivei  c                P    R p\        RVRR7      w   r#V P                  RV4       R# )zimport sys, inspect;                 assert not hasattr(sys.modules['__main__'], '__file__');                 A = type('A', (), {});                 inspect.getsource(A)z-cT)
__isolateds"   OSError: source code not availableN)r   rZ  )rU   coder  stderrs   &   r   test_getclasses_interactive4TestGetsourceInteractive.test_getclasses_interactive  s,    & -T4DI1;VDr!   r:   N)	rJ   re   rf   rg   r   force_not_colorizedr  rr   rs   rt   s   @r   r  r    s       E !Er!   r  c                   0   a  ] tR tRt o ]tR tR tRtV t	R# )!TestGettingSourceOfToplevelFramesi  c                V    R V n         V P                  \        P                  ^R 4       R # r   )maxDiffr  r   rE  rb   s   &r   test_range_toplevel_frame;TestGettingSourceOfToplevelFrames.test_range_toplevel_frame  s!    s//D9r!   c                H    V P                  \        P                  ^R4       R# r   N)r  r   r   rb   s   &r   #test_range_traceback_toplevel_frameETestGettingSourceOfToplevelFrames.test_range_traceback_toplevel_frame  s    svvq$/r!   )r  N)
rJ   re   rf   rg   r   r  r  r  rr   rs   rt   s   @r   r  r    s     L:0 0r!   r  c                   <   a  ] tR tRt o ]tR tR tR tR t	Rt
V tR# )TestDecoratorsi  c                H    V P                  \        P                  ^^4       R# )   N)r  r0  wrappedrb   s   &r   test_wrapped_decorator%TestDecorators.test_wrapped_decorator  s    t||R4r!   c                H    V P                  \        P                  ^	^
4       R# )	   N)r  r0  gonerb   s   &r   test_replacing_decorator'TestDecorators.test_replacing_decorator  s    tyy!R0r!   c                H    V P                  \        P                  ^^4       R# )   N)r  r0  r  rb   s   &r   test_getsource_unwrap$TestDecorators.test_getsource_unwrap  s    tyy#s3r!   c                H    V P                  \        P                  ^q^s4       R# )q   N)r  r0  func114rb   s   &r   test_decorator_with_lambda)TestDecorators.test_decorator_with_lambda  s    t||S#6r!   r:   N)rJ   re   rf   rg   r0  r  r  r  r  r  rr   rs   rt   s   @r   r  r    s#     L5147 7r!   r  c                   ~   a  ] tR tRt o ]tR tR tR tR t	R t
R tR tR	 tR
 tR tR tR tR tR tR tRtV tR# )TestOnelinersi  c                H    V P                  \        P                  ^^4       R# )   N)r  r0  ollrb   s   &r   test_oneline_lambda!TestOneliners.test_oneline_lambda  s    txxR0r!   c                H    V P                  \        P                  ^^4       R# )   N)r  r0  tllrb   s   &r   test_threeline_lambda#TestOneliners.test_threeline_lambda  s     	txxR0r!   c                H    V P                  \        P                  ^!^"4       R# )!   N)r  r0  tllirb   s   &r   test_twoline_indented_lambda*TestOneliners.test_twoline_indented_lambda  s     	tyy"b1r!   c                    V P                  \        P                  R R 4       V P                  \        P                  RR4       V P                  \        P                  RR4       R# )i  i  i  N)r  r0  parenthesized_lambdaparenthesized_lambda2parenthesized_lambda3rb   s   &r   #test_parenthesized_multiline_lambda1TestOneliners.test_parenthesized_multiline_lambda  sL     	t88#sCt993Dt993Dr!   c                H    V P                  \        P                  R R4       R# )r   i  N)r  r0  post_line_parenthesized_lambda1rb   s   &r   #test_post_line_parenthesized_lambda1TestOneliners.test_post_line_parenthesized_lambda  s     	tCCS#Nr!   c                H    V P                  \        P                  R R4       R# )i#  i$  N)r  r0  nested_lambdarb   s   &r   test_nested_lambda TestOneliners.test_nested_lambda  s    t113<r!   c                H    V P                  \        P                  ^%^%4       R# )%   N)r  r0  onelinefuncrb   s   &r   test_onelinefuncTestOneliners.test_onelinefunc  s    t//R8r!   c                H    V P                  \        P                  ^(^)4       R# )(   N)r  r0  manyargsrb   s   &r   test_manyargsTestOneliners.test_manyargs  s     	t}}b"5r!   c                H    V P                  \        P                  ^,^-4       R# ),   N)r  r0  twolinefuncrb   s   &r   test_twolinefuncTestOneliners.test_twolinefunc  s     	t//R8r!   c                V    V P                  \        P                  ^,          ^1^14       R# r  )r  r0  r$   rb   s   &r   test_lambda_in_list!TestOneliners.test_lambda_in_list  s     	tvvay"b1r!   c                H    V P                  \        P                  ^7^74       R# )7   N)r  r0  	anonymousrb   s   &r   test_anonymousTestOneliners.test_anonymous  s     	t~~r26r!   c                   V P                  \        P                  R R4       V P                  \        P                  RR4       V P                  \        P                  RR4       V P                  \        P
                  RR4       V P                  \        \        P                  \        P                  4       V P                  \        \        P                  \        P                  4       V P                  \        \        P                  \        P                  4       V P                  \        \        P                  \        P                  4       R# )	iB  iC  iF  iG  iJ  iK  iN  iO  N)r  r0  enum322enum326flag330flag334rj  r  rM   r  simple_enum338simple_enum339simple_flag340simple_flag341rb   s   &r   	test_enumTestOneliners.test_enum  s    t||S#6t||S#6t||S#6t||S#6'7#4#4d6I6IJ'7#4#4d6I6IJ'7#4#4d6I6IJ'7#4#4d6I6IJr!   c                    V P                  \        P                  R R4       V P                  \        \
        P                  \        P                  4       R# )iZ  i\  N)r  r0  nt346rj  r  rM   r  nt351rb   s   &r   test_namedtupleTestOneliners.test_namedtuple  4    tzz34'7#4#4djjAr!   c                    V P                  \        P                  R R4       V P                  \        \
        P                  \        P                  4       R# )ib  id  N)r  r0  td354rj  r  rM   r  td359rb   s   &r   test_typeddictTestOneliners.test_typeddict  rF  r!   c                   V P                  \        P                  R R4       V P                  \        \
        P                  \        P                  4       V P                  \        \
        P                  \        P                  4       R# )il  io  N)	r  r0  dc364rj  r  rM   r  dc370dc371rb   s   &r   test_dataclassTestOneliners.test_dataclass  sP    tzz34'7#4#4djjA'7#4#4djjAr!   r:   N)rJ   re   rf   rg   r0  r  r  r
  r  r  r  r  r"  r'  r,  r/  r4  r?  rD  rJ  rP  rr   rs   rt   s   @r   r  r    sa     L11
2
EO
=9692
7
KBBB Br!   r  c                   6   a  ] tR tRt o ]tR tR tR tRt	V t
R# )TestBlockCommentsi  c                H    V P                  \        P                  ^`^r4       R# )`   N)r  r   r  rb   s   &r   test_toplevel_class%TestBlockComments.test_toplevel_class  s    s00"c:r!   c                \    V P                  \        P                  P                  ^c^h4       R# )c   N)r  r   r  r  rb   s   &r   test_class_method#TestBlockComments.test_class_method	  s     s0022B<r!   c                \    V P                  \        P                  P                  ^m^p4       R# )m   N)r  r   r  asyncfrb   s   &r   test_class_async_method)TestBlockComments.test_class_async_method  s     s0077cBr!   r:   N)rJ   re   rf   rg   r   r  rV  rZ  r_  rr   rs   rt   s   @r   rS  rS    s      L;=C Cr!   rS  c                   h  a  ] tR tRt o ]tR tR tR tR t	R t
R tR t]P                  ! ]! ]R	4      '       * ;'       g    ]P"                  P%                  R
4      R4      R 4       tR tR tR tR tR tR tR tR tR tR tR tR t] PB                  R 4       t"R t#R t$R t%R t&R t'Rt(V t)R # )!TestBuggyCasesi  c                H    V P                  \        P                  ^:^;4       R# ):   N)r  r0  with_commentrb   s   &r   test_with_comment TestBuggyCases.test_with_comment  s    t00"b9r!   c                V    V P                  \        P                  ^ ,          ^?^@4       R# r  )r  r0  multiline_sigrb   s   &r   test_multiline_sig!TestBuggyCases.test_multiline_sig  s    t11!4b"=r!   c                f    V P                  \        P                  ! 4       P                  ^G^H4       R# )G   N)r  r0  func69func71rb   s   &r   test_nested_class TestBuggyCases.test_nested_class  s     t{{}33R<r!   c                H    V P                  \        P                  ^M^M4       R# )M   N)r  r0  func77rb   s   &r   #test_one_liner_followed_by_non_name2TestBuggyCases.test_one_liner_followed_by_non_name      t{{B3r!   c                \    V P                  \        P                  P                  ^S^S4       R# )S   N)r  r0  cls82func83rb   s   &r   test_one_liner_dedent_non_name-TestBuggyCases.test_one_liner_dedent_non_name  s    tzz00"b9r!   c                H    V P                  \        P                  ^X^Z4       R# )X   N)r  r0  func88rb   s   &r   &test_with_comment_instead_of_docstring5TestBuggyCases.test_with_comment_instead_of_docstring!  rw  r!   c                H    V P                  \        P                  ^_^a4       R# )_   N)r  r0  method_in_dynamic_classrb   s   &r   test_method_in_dynamic_class+TestBuggyCases.test_method_in_dynamic_class$  s    t;;RDr!   r  z.pyz,unicodedata is not an external binary modulec                    V P                  \        \        P                  \        4       V P                  \        \        P
                  \        4       R # r   )rj  r  rM   r  unicodedata
findsourcerb   s   &r   test_findsource_binary%TestBuggyCases.test_findsource_binary)  s4     	'7#4#4kB'7#5#5{Cr!   c                >   R .p\        V^ ,          RR4      pV P                  \        \        P                  V4       V P                  \        \        P
                  V4       ^RWP                  3\        P                  VP                  &    V P                  \        P                  ! V4      V^ 34       V P                  \        P
                  ! V4      V^ ,          4       \        P                  VP                   R#   \        P                  TP                   i ; i)r.  _dynamically_created_filer0   N)
r2  rj  r  rM   r  r  rU  rV  rW  r  )rU   r  r4  s   &  r   !test_findsource_code_in_linecache0TestBuggyCases.test_findsource_code_in_linecache0  s    U1X:FC'7#5#5r:'7#4#4b9+,dE>>*J	'	0W//3eAY?W..r2E!H=/	/s   AC? ?Dc                    R FZ  p\        RVR4      pV P                  \        \        P                  V4       V P                  \        \        P
                  V4       K\  	  R# )r  r.  r0   N)r  r  )r2  rj  IOErrorrM   r  r  )rU   fnamer4  s   &  r    test_findsource_without_filename/TestBuggyCases.test_findsource_without_filename<  sJ    %Ev.Bgw'9'92>gw'8'8"= &r!   c                   \        \        P                  ! \        4      4      pRV,          R,           p\	        V\        P
                  R4      p/ / rT\        W4V4       VR,          pV P                  VP                  P                  ^^V,          ,           4       V P                  \        R4      ;_uu_ 4        \        P                  ! V4       RRR4       R#   + '       g   i     R# ; i)r  zdef f(): passr0   r  lineno is out of boundsN

)r-   rM   r  r   r2  r  rH   r  r  co_firstlinenoassertRaisesRegexr  r  )rU   mod_lenr  r4  r  lr   s   &      r   1test_findsource_on_func_with_out_of_bounds_lineno@TestBuggyCases.test_findsource_on_func_with_out_of_bounds_linenoB  s    g'',-/1S#,,/21RAv55q7{C##G-FGGt$ HGGGs   9CC+	c                   \        \        P                  ! \        4      4      pRV,          R,           p\	        V\        P
                  R4      pR\        P                  // rT\        W4V4       VR,          pV P                  VP                  ^^V,          ,           4       V P                  \        R4      ;_uu_ 4        \        P                  ! V4       RRR4       R#   + '       g   i     R# ; i)r  zclass A: passr0   rJ   r=  r  Nr  )r-   rM   r  r   r2  r  rJ   rH   r  rg   r  r  r  )rU   r  r  r4  r  r  r   s   &      r   2test_findsource_on_class_with_out_of_bounds_linenoATestBuggyCases.test_findsource_on_class_with_out_of_bounds_linenoM  s    g'',-/1S#,,/CLL)21RAf,,a'	k:##G-FGGs# HGGGs   ?C  C1	c                \    V P                  \        P                  P                  ^v^w4       R# )v   N)r  r0  ClassWithMethodr3  rb   s   &r   test_getsource_on_method'TestBuggyCases.test_getsource_on_methodX  s     t33::CEr!   c                \    V P                  \        P                  P                  R R4       R# )i;  i=  N)r  r0  ClassWithCodeObjectr  rb   s   &r   #test_getsource_on_class_code_object2TestBuggyCases.test_getsource_on_class_code_object[  s     t77<<c3Gr!   c                \    V P                  \        P                  P                  ^^4       R# )   N)r  r0  cls135func136rb   s   &r   test_nested_funcTestBuggyCases.test_nested_func^  s    t{{22C=r!   c                H    V P                  \        P                  ^^4       R# )   N)r  r0  cls149rb   s   &r   4test_class_definition_in_multiline_string_definitionCTestBuggyCases.test_class_definition_in_multiline_string_definitiona      t{{C5r!   c                H    V P                  \        P                  ^^4       R# )   N)r  r0  r1  rb   s   &r   *test_class_definition_in_multiline_comment9TestBuggyCases.test_class_definition_in_multiline_commentd  r  r!   c                \    V P                  \        P                  P                  ^^4       R# )   N)r  r0  cls173cls175rb   s   &r   ,test_nested_class_definition_indented_string;TestBuggyCases.test_nested_class_definition_indented_stringg  s    t{{113<r!   c                    V P                  \        P                  ^^4       V P                  \        P                  P                  ^^4       R# )   N)r  r0  cls183cls185rb   s   &r   test_nested_class_definition+TestBuggyCases.test_nested_class_definitionj  4    t{{C5t{{113<r!   c                    V P                  \        P                  ^^4       V P                  \        P                  P                  ^^4       R# )   N)r  r0  cls196cls200rb   s   &r   test_class_decorator#TestBuggyCases.test_class_decoratorn  r  r!   c                \    V P                  \        P                  P                  ^^4       R# )   N)r  r0  cls238cls239rb   s   &r   test_class_inside_conditional,TestBuggyCases.test_class_inside_conditionalr  s     
 	t{{113<r!   c                   V P                  \        P                  ^^4       V P                  \        P                  P                  ^^4       V P                  \        P                  P                  P                  ^^4       V P                  \        P                  P
                  ^^4       V P                  \        P                  P
                  P                  ^^4       R# )   N)r  r0  cls203cls204cls205cls207rb   s   &r   test_multiple_children_classes-TestBuggyCases.test_multiple_children_classesy  s    t{{C5t{{113<t{{1188#sCt{{113<t{{1188#sCr!   c                    V P                  \        P                  ! 4       ^^4       V P                  \        P                  ^^4       V P                  \        P                  ! 4       P	                  4       ^^4       R# )   N)r  r0  func212cls213func219rb   s   &r   ,test_nested_class_definition_inside_function;TestBuggyCases.test_nested_class_definition_inside_function  sQ    t||~sC8t{{C5t{{}446SAr!   c           
        \         P                  ! 4       ;_uu_ 4       p\        \        P                  P                  VR \        P                  ,          4      RRR7      ;_uu_ 4       pVP                  \        P                  ! R4      4       RRR4       \        \        P                  P                  VR\        P                  ,          4      RRR7      ;_uu_ 4       pVP                  \        P                  ! R4      4       RRR4       \        V4      ;_uu_ 4        ^ RIpV P                  R\        P                  ! VP                  4      4       \         P"                  P%                  R	4       RRR4       RRR4       R#   + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     LA; i  + '       g   i     R# ; i)
zinspect_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
                    Nzinspect_other%spyzx
                    class A:
                        def f(self):
                            pass
                    correctinspect_actual)tempfileTemporaryDirectoryr  osr]  r/   extsepwritetextwrapdedentr   r  rZ  rM   r  r=  r:  r;  pop)rU   tempdirr  r  s   &   r   (test_class_with_method_from_other_module7TestBuggyCases.test_class_with_method_from_other_module  s6   ((**gbggll7,@299,LMG- -01 	) 	 	- bggll7,?")),KLG- -01 )  - w''%i):):>;K;K)LM  01 (- +*- - -- - ('- +**sV   A
G (&F	AG &F	G  AF-	4G F	G F*%G -F=8G  G	c                   \         pV P                  V! \        P                  4      ^^4       V P                  \        P                  ^^4       V P                  V! \        P                  ! 4       P
                  4      ^^4       R# )   N)r   r  r0  func225cls226func232)rU   runs   & r   2test_nested_class_definition_inside_async_functionATestBuggyCases.test_nested_class_definition_inside_async_function  s[    #s4<<0#s;t{{C5s4;;=#8#893Dr!   c                    V P                  \        P                  R R4       V P                  \        P                  RR4       R# )i(  i*  i6  i8  N)r  r0  cls296cls310rb   s   &r   ,test_class_definition_same_name_diff_methods;TestBuggyCases.test_class_definition_same_name_diff_methods  s.    t{{C5t{{C5r!   r:   N)*rJ   re   rf   rg   r0  r  rf  rj  rp  ru  r|  r  r  r   r  r   r  r  endswithr  r  r  r  r  r  r  r  r  r  r  r  r  r   requires_docstringsr  r  r  r  r  r  rr   rs   rt   s   @r   rb  rb    s     L:>=4:4E
 __j99 F F!,!5!5!>!>u!ECEDED
0>	%	$FH>66===   = !=DB
2<E6 6r!   rb  c                   >   a a ] tR tRt oV 3R ltR tR tRtVtV ;t	# )	TestNoEOLi  c                  < \         R ,           V n        \        P                  ! V P                  4       \	        \        P
                  P                  V P                  R\        P                  ,          4      RRR7      ;_uu_ 4       pVP                  R4       RRR4       \        V P                  4      ;_uu_ 4        ^ RI
pRRR4       XV n        \        SV `5  4        R#   + '       g   i     LQ; i  + '       g   i     L:; i)_dirzinspect_fodder3%spyr\  r  r  zclass X:
    pass # No EOLN)r   r  r  mkdirr  r]  r/   r  r  r   inspect_fodder3r  superr  )rU   r  mod3	__class__s   &  r   r  TestNoEOL.setUp  s    
"'',,t||-BRYY-NO) ),-GG12) 4<<((* ) ) ) )(s   C">C5"C2	5D	c                F    \         P                  ! V P                  4       R # r   )shutilrmtreer  rb   s   &r   tearDownTestNoEOL.tearDown  s    dll#r!   c                T    V P                  V P                  P                  ^^4       R# r  )r  r  Xrb   s   &r   
test_classTestNoEOL.test_class  s     t0022Aq9r!   )r  r  )
rJ   re   rf   rg   r  r  r  rr   rs   __classcell__r  ru   s   @@r   r  r    s     	$: :r!   r  c                   *   a  ] tR tRt o ]tR tRtV tR# )TestComplexDecoratori  c                T    V P                  V P                  P                  R R4       R# )i  i  N)r  r  complex_decoratedrb   s   &r   test_parens_in_decorator-TestComplexDecorator.test_parens_in_decorator  s     t00BBCMr!   r:   N)	rJ   re   rf   rg   r0  r  r  rr   rs   rt   s   @r   r  r    s     LN Nr!   r  c                   6   a  ] tR tRt o RtR tR tR tRtV t	R# )_BrokenDataDescriptori  z*
A broken data descriptor. See bug #1785.
c                     \        R 4      hzbroken data descriptorr~  r   s   *r   __get___BrokenDataDescriptor.__get__      566r!   c                     \         hr   )RuntimeErrorr  s   *r   __set___BrokenDataDescriptor.__set__  s    r!   c                     \        R 4      hr  r~  r  s   *r   rH  !_BrokenDataDescriptor.__getattr__  r"  r!   r:   N)
rJ   re   rf   rg   r  r   r%  rH  rr   rs   rt   s   @r   r  r    s     77 7r!   r  c                   0   a  ] tR tRt o RtR tR tRtV tR# )_BrokenMethodDescriptori  z,
A broken method descriptor. See bug #1785.
c                     \        R 4      hzbroken method descriptorr~  r  s   *r   r   _BrokenMethodDescriptor.__get__      788r!   c                     \        R 4      hr,  r~  r  s   *r   rH  #_BrokenMethodDescriptor.__getattr__  r.  r!   r:   N)	rJ   re   rf   rg   r  r   rH  rr   rs   rt   s   @r   r*  r*    s     99 9r!   r*  c                 d    \         P                  ! V 4       Uu. uF  qR ,          NK  	  up# u upi ):Nr  N)rM   classify_class_attrs)r   ts   & r   attrs_wo_objsr4    s+    "77<=<abEE<===s   -c                   f  a  ] tR tRt o R tRRR. . R/ 3R ltR tR tR tR t	]
P                  ! ]R	4      R
 4       t]]
P                  ! ]R	4      R 4       4       t]]
P                  ! ]R	4      R 4       4       tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!Rt"V t#R# )TestClassesAndFunctionsi  c                     ! R  R\         4      p ! R RV4      p ! R RV4      p ! R RW#4      pWBW1\         3p\        P                  ! V4      pV P                  WV4       R# )	c                       ] tR tRtRtR# )4TestClassesAndFunctions.test_newstyle_mro.<locals>.Ai  r:   Nr  r:   r!   r   r=  r9    s    Dr!   r=  c                       ] tR tRtRtR# )4TestClassesAndFunctions.test_newstyle_mro.<locals>.Bi  r:   Nr  r:   r!   r   Br;        Dr!   r<  c                       ] tR tRtRtR# )4TestClassesAndFunctions.test_newstyle_mro.<locals>.Ci  r:   Nr  r:   r!   r   rW  r?    r=  r!   rW  c                       ] tR tRtRtR# )4TestClassesAndFunctions.test_newstyle_mro.<locals>.Di  r:   Nr  r:   r!   r   DrA        tr!   rB  N)r   rM   getmror  )rU   r=  r<  rW  rB  r"  gots   &      r   test_newstyle_mro)TestClassesAndFunctions.test_newstyle_mro  sJ      !'nnQ'r!   Nc
                ,   \         P                  ! V4      w  rrrpV P                  W4       V P                  W4       V P                  W4       V P                  W4       V P                  W4       V P                  W4       V P                  VV	4       R # r   )rM   getfullargspecr  )rU   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.assertFullArgSpecEquals  s     ""7+ 	Hu
C&,(.2:e$r!   c           
        V P                  \        P                  . R R.R^/R7       V P                  \        P                  R .R \        /R7       V P                  \        P
                  . R.R7       V P                  \        P                  . RORR.R7       V P                  \        P                  . RORR	RR.R
7       V P                  \        P                  . RORRR.R^R^/R7       R# )arg1arg2)rL  rP  rQ  )rR  r2  )rP  r   r  r   r  )rL  rM  rP  )rN  rP  rQ  Nr$   rT  r&   r  r   rx   r  )	rW  r0  	keyworded	annotatedr+  keyword_only_argall_markers all_markers_with_args_and_kwargsall_markers_with_defaultsrb   s   &r   test_getfullargspec+TestClassesAndFunctions.test_getfullargspec   s    $$T^^R639(7=aj 	% 	B 	$$T^^fX,2T? 	% 	<$$T%:%:B38' 	% 	; 	$$T%5%57K36* 	% 	> 	$$T%J%J%9/5-536*	 	% 	> 	$$T%C%CEY0736*7:AsA6F 	% 	Hr!   c                    \         P                  ! \        P                  4      R  4       pV P	                  VRR.4       V P	                  \         P
                  ! V4      RR.4       R# )c                     R # r   r:   r\  r  s   &&r   hamETestClassesAndFunctions.test_argspec_api_ignores_wrapped.<locals>.ham      r!   r\  r  N)r   wrapsr   r   rW  r   )rU   ri  s   & r    test_argspec_api_ignores_wrapped8TestClassesAndFunctions.test_argspec_api_ignores_wrapped  sY    		"	 
#	 	$$S3*5$$Y%6%6s%;&)3Z	1r!   c                    R  p\         P                  ! R\         P                  P                  4      p\         P                  ! V3R7      Vn        V P                  VR.4       R# )c                      R # r   r:   r:   r!   r   testHTestClassesAndFunctions.test_getfullargspec_signature_attr.<locals>.test#      r!   r   r1   N)rM   	ParameterPOSITIONAL_ONLY	Signature__signature__rW  )rU   rq  
spam_params   &  r   "test_getfullargspec_signature_attr:TestClassesAndFunctions.test_getfullargspec_signature_attr"  sL    	&&vw/@/@/P/PQ
$..:-H$$TF84r!   c                   R  R lp\         P                  ! V4      pV P                  VP                  VP                  4       R p\         P                  ! V4      pV P                  VP                  VP                  4       R# )c                     V ^8  d   QhRRRR/# )rx   r$   r   returnri  r:   )formats   "r   __annotate__QTestClassesAndFunctions.test_getfullargspec_signature_annos.<locals>.__annotate__+  s    ))6)e)r!   c                     R # r   r:   r$   s   &r   rq  ITestClassesAndFunctions.test_getfullargspec_signature_annos.<locals>.test+      Tr!   c                      R # r   r:   r:   r!   r   rq  r  /      Dr!   N)rM   rI  r  __annotations__annotations)rU   rq  specs   &  r   #test_getfullargspec_signature_annos;TestClassesAndFunctions.test_getfullargspec_signature_annos*  s`    )%%d+--t/?/?@%%d+--t/?/?@r!   6Signature information for builtins requires docstringsc           	     <   V P                  \        P                  P                  R R.4       V P                  \        P                  ! \        P
                  ! 4       4      P                  R R.4       V P                  \        P                  R.RR.RRRR/R7       R# )rU   rX   r]  dir_fdfollow_symlinksNT)rK  rP  rQ  )rW  _picklePicklerdumpioBytesIOr  statrb   s   &r   #test_getfullargspec_builtin_methods;TestClassesAndFunctions.test_getfullargspec_builtin_methods3  s     	$$W__%9%9FE?K$$W__RZZ\%B%G%G&RWY$$WWH#%67'/@$G	 	% 	Ir!   c                    \         P                  ! R 4      pVP                  p\        P                  ! V4      pV P                  VP                  ^ ,          R4       R# )	_testcapiavocadoN)r	   import_module&docstring_with_signature_with_defaultsrM   rI  r  rS  )rU   r  builtinr  s   &   r    test_getfullargspec_builtin_func8TestClassesAndFunctions.test_getfullargspec_builtin_func@  sH     "//<	BB%%g.q)95r!   c                D   \         P                  ! R 4      pVP                  pV P                  \        4      ;_uu_ 4        \
        P                  ! V4       RRR4       VP                  pVP                  4       pVP                  \        3VP                  \        3VP                  \        3VP                  \        3VP                  \        3VP                  \        3VP                  \        3VP                   \"        3VP$                  \        3VP&                  \        3VP(                  \        3VP*                  \        3\,        P,                  \        3\.        P0                  \        3RP0                  \        3\2        P4                  \        3\3        4       P4                  \        3\2        P6                  \        3\3        4       P6                  \        3\8        P8                  P:                  R,          \        3\8        P8                  P<                  \        3\>        P:                  R,          \"        3\>        P@                  \"        3.p ^ RI!pVPE                  \F        PH                  \        34       V Fa  w  r'V PM                  V4      ;_uu_ 4        V PO                  \
        P                  ! V4      \
        P                  ! V4      4       RRR4       Kc  	  R#   + '       g   i     EL; i  \J         d     Li ; i  + '       g   i     K  ; i)r  Nr  utcnow__class_getitem__)(r	   r  docstring_no_signaturerj  rk  rM   rI  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timer*  lowerrL   add__contains__r   r  r  rX  r  _statr.   r  S_IMODEr'  r  r  )rU   r  r  r   rX   testsr  templates   &       r   -test_getfullargspec_builtin_func_no_signatureETestClassesAndFunctions.test_getfullargspec_builtin_func_no_signatureI  sR    "//<	22y))""7+ * 0000244kB//8__./ZZ%__./ZZ%""$45{+##[1'$$&67-YY$YY()XX'(WWk"UYY${+U-''13CD%%'78]]./=##[11
4	1 LL$,,/0!&Gg&&  !7!7!@!(!7!7!AC '& "'O *))B  	 	 '&&s*    K)K=  ;L)K:	=L
LLc                b   \        4        F[  p\        P                  ! V4      p\        VP                  4      p\        V4      pV P                  V4       V P                  W44       K]  	  \        P                  ! \        4      p\        VP                  4      pV P                  V\        4       R # r   )
r8   rM   rI  r+  rT  sortedrI   r  rB    unsorted_keyword_only_parametersrU   rX  	signaturer  sorted_ls   &    r   8test_getfullargspec_definition_order_preserved_on_kwonlyPTestClassesAndFunctions.test_getfullargspec_definition_order_preserved_on_kwonly{  s    GIB..r2IY))*AayHOOAQ) J **+NO	%%&<=r!   c                    ! R  R\         4      p\        V4      pV P                  RR\         3VR4       V P                  RR\         3VR4       V P                  RRV3VR	4       V P                  R
RV3VR4       V P                  RRV3VR4       V P                  RRV3VRV,          4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4        ! R RV4      p\        V4      pV P                  RRV3VR	4       V P                  R
RV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4        ! R RV4      p\        V4      pV P                  RRV3VR	4       V P                  R
RV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4        ! R R W44      p\        V4      pV P                  RRV3VR	4       V P                  R
RV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       V P                  RRV3VR4       R!# )"c                      a  ] tR tRt o R t]! ]4      tR t]! ]4      tR t]	! ]4      t
R tR tRt]! 4       t]! 4       tRtV tR	# )
9TestClassesAndFunctions.test_classify_newstyle.<locals>.Ai  c                     R # r   r:   r:   r!   r   s;TestClassesAndFunctions.test_classify_newstyle.<locals>.A.s      Tr!   c                    R # r   r:   r   s   &r   r&   ;TestClassesAndFunctions.test_classify_newstyle.<locals>.A.c  s    r!   c                    R # r   r:   rb   s   &r   getp>TestClassesAndFunctions.test_classify_newstyle.<locals>.A.getp      Dr!   c                    R # r   r:   rb   s   &r   r  ;TestClassesAndFunctions.test_classify_newstyle.<locals>.A.m      r!   c                    R # r   r:   rb   s   &r   m1<TestClassesAndFunctions.test_classify_newstyle.<locals>.A.m1      $r!   1r:   N)rJ   re   rf   rg   r  r   r&   r   r  r  r3   r  r  datablobr  ddr*  mdrr   rs   rt   s   @r   r=  r    sD     QAAA AH&(B(*Br!   r=  __new__static methodmissing __new__r'  r3  zmissing __init__r  zmissing static methodr&   class methodmissing class methodr3   r  zmissing propertyr  zmissing plain method: %rr  missing plain methodr  datazmissing datar  zmissing method descriptorr  zmissing data descriptorc                   &   a  ] tR tRt o R tRtV tR# )9TestClassesAndFunctions.test_classify_newstyle.<locals>.Bi  c                    R # r   r:   rb   s   &r   r  ;TestClassesAndFunctions.test_classify_newstyle.<locals>.B.m  r  r!   r:   N)rJ   re   rf   rg   r  rr   rs   rt   s   @r   r<  r    s     r!   r<  c                   ,   a  ] tR tRt o R tR tRtV tR# )9TestClassesAndFunctions.test_classify_newstyle.<locals>.Ci  c                    R # r   r:   rb   s   &r   r  ;TestClassesAndFunctions.test_classify_newstyle.<locals>.C.m  r  r!   c                    R # r   r:   rb   s   &r   r&   ;TestClassesAndFunctions.test_classify_newstyle.<locals>.C.c  r  r!   r:   N)rJ   re   rf   rg   r  r&   rr   rs   rt   s   @r   rW  r    s     r!   rW  c                   &   a  ] tR tRt o R tRtV tR# )9TestClassesAndFunctions.test_classify_newstyle.<locals>.Di  c                    R # r   r:   rb   s   &r   r  <TestClassesAndFunctions.test_classify_newstyle.<locals>.D.m1  r  r!   r:   NrJ   re   rf   rg   r  rr   rs   rt   s   @r   rB  r    s     r!   rB  N)r   r4  rZ  )rU   r=  attrsr<  rW  rB  s   &     r   test_classify_newstyle.TestClassesAndFunctions.test_classify_newstyle  s   	+ 	+( a y/6:E'	)z8V4e=OPsOQ/8OPsNA.7MNsJ*E3EFsHa(%058	:tXq)52HIz61-unEtXq)52MNtVQ'0IJ	 	 a sOQ/8OPsNA.7MNsJ*E3EFsHa(%1GHtXq)52HIz61-unEtXq)52MNtVQ'0IJ	 	
 a sOQ/8OPsHa(%1GHsJ*E3EFsHa(%1GHtXq)52HIz61-unEtXq)52MNtVQ'0IJ	 	 a sOQ/8OPsHa(%1GHsJ*E3EFsHa(%1GHtXq)52HIz61-unEtXq)52MNtVQ'0IJr!   c                   \        \        4       FA  p\        \        V4      p\        V\        4      '       g   K+  \
        P                  ! V4       KC  	  \        \        4      pV P                  R R\        3VR4       V P                  RR\        3VR4       V P                  RR\        3VR4       V P                  R	R\        3VR4       V P                  R
R\        3VR4       R# )r  r  r  r  r  r  r  r3  r  __add____and__N)dir__builtins__getattr
isinstancer   rM   r2  r4  boolrZ  r   )rU   r  r  r  s   &   r   test_classify_builtin_types3TestClassesAndFunctions.test_classify_builtin_types  s     %DlD1G'4((,,W5 &
 d#y/48%'	)|^S95,	.z8S15,	.y(C0%,	.y(D15,	.r!   c                X    ! R  R\         4      p ! R RVR7      p\        P                  ! RRW"P                  R,          4      pV P	                  V\        P
                  ! V4      4       \        P                  ! RRVR4      pV P	                  V\        P
                  ! V4      4       R# )	c                   2   a a ] tR tRt oV 3R ltRtVtV ;t# )ITestClassesAndFunctions.test_classify_DynamicClassAttribute.<locals>.Metai  c                4   < VR 8X  d   R# \         SV `  V4      # )ri  r   r  rH  rU   r  r  s   &&r   rH  UTestClassesAndFunctions.test_classify_DynamicClassAttribute.<locals>.Meta.__getattr__  s    5=!w*400r!   r:   rJ   re   rf   rg   rH  rr   rs   r  r  s   @@r   Metar         1 1r!   r  c                   D   a  ] tR tRt o ]P
                  R 4       tRtV tR# )GTestClassesAndFunctions.test_classify_DynamicClassAttribute.<locals>.VAi  c                    R # )r  r:   rb   s   &r   ri  KTestClassesAndFunctions.test_classify_DynamicClassAttribute.<locals>.VA.ham      r!   r:   N)	rJ   re   rf   rg   r   DynamicClassAttributeri  rr   rs   rt   s   @r   VAr         (( )r!   r  rk  ri  r  r   N)r   rM   	Attributer  rZ  r2  )rU   r  r  should_find_dcashould_find_gas   &    r   #test_classify_DynamicClassAttribute;TestClassesAndFunctions.test_classify_DynamicClassAttribute  s    	14 	1
	4 	 "++E62{{5?QRow'C'CB'GH **5&$Gng&B&B2&FGr!   c                   a  ! V3R  lR\         4      o ! V3R lR\         4      p\        P                  ! RRWP                  4      pV P	                  V\        P
                  ! V4      4       R# )c                   4   <a  ] tR tRt o V3R ltR tRtV tR# )DTestClassesAndFunctions.test_classify_overrides_bool.<locals>.NoBooli  c                   < S! 4       # r   r:   )rU   rY   NoBools   &&r   __eq__KTestClassesAndFunctions.test_classify_overrides_bool.<locals>.NoBool.__eq__  s
    xr!   c                    \        R 4      h)z,This object does not specify a boolean valueNotImplementedErrorrb   s   &r   __bool__MTestClassesAndFunctions.test_classify_overrides_bool.<locals>.NoBool.__bool__  s    )BD Dr!   r:   N)rJ   re   rf   rg   r  r  rr   rs   )ru   r  s   @r   r  r    s      D Dr!   r  c                   (   < ] tR tRt Z ! 4       tRtR# )CTestClassesAndFunctions.test_classify_overrides_bool.<locals>.HasNBi  r:   N)rJ   re   rf   rg   r  rr   )r  s   r   HasNBr    s
    Br!   r   r  r  N)r   rM   r  r  rZ  r2  )rU   r   should_find_attrr  s   &  @r   test_classify_overrides_bool4TestClassesAndFunctions.test_classify_overrides_bool  sR    	DV 	D	F 	 #,,T65((K&(D(DU(KLr!   c                     ! R  R\         4      p ! R RVR7      p\        P                  ! RRVR4      pV P                  V\        P                  ! V4      4       R# )	c                   *   a  ] tR tRt o RtR tRtV tR# )MTestClassesAndFunctions.test_classify_metaclass_class_attribute.<locals>.Metai
  slapc                
    . RO# )r  )r  re   rJ   fishr:   rb   s   &r   __dir__UTestClassesAndFunctions.test_classify_metaclass_class_attribute.<locals>.Meta.__dir__      FFr!   r:   N)rJ   re   rf   rg   r)  r*  rr   rs   rt   s   @r   r  r&  
  s     DG Gr!   r  c                       ] tR tRtRtR# )NTestClassesAndFunctions.test_classify_metaclass_class_attribute.<locals>.Classi  r:   Nr  r:   r!   r   Classr.    r  r!   r/  rk  r)  r  r'  Nr   rM   r  rZ  r2  rU   r  r/  should_finds   &   r   'test_classify_metaclass_class_attribute?TestClassesAndFunctions.test_classify_metaclass_class_attribute	  sK    	G4 	G	d 	''fEk7#?#?#FGr!   c                     ! R  R\         4      p ! R RVR7      p\        P                  ! RRV^*4      pV P                  V\        P                  ! V4      4       R# )c                   8   a a ] tR tRt oR tV 3R ltRtVtV ;t# )DTestClassesAndFunctions.test_classify_VirtualAttribute.<locals>.Metai  c                
    . RO# )r  )r  re   rJ   BOOMr:   r   s   &r   r*  LTestClassesAndFunctions.test_classify_VirtualAttribute.<locals>.Meta.__dir__  r,  r!   c                4   < VR 8X  d   ^*# \         SV `  V4      # )r9  )r  _Meta__getattrr   s   &&r   rH  PTestClassesAndFunctions.test_classify_VirtualAttribute.<locals>.Meta.__getattr__  s    &=w(..r!   r:   	rJ   re   rf   rg   r*  rH  rr   rs   r  r  s   @@r   r  r7    s     G/ /r!   r  c                       ] tR tRtRtR# )ETestClassesAndFunctions.test_classify_VirtualAttribute.<locals>.Classi  r:   Nr  r:   r!   r   r/  r@    r  r!   r/  rk  r9  r  Nr0  r1  s   &   r   test_classify_VirtualAttribute6TestClassesAndFunctions.test_classify_VirtualAttribute  sI    	/4 	/	d 	''bAk7#?#?#FGr!   c                  a	a
  ! R  R\         4      o	 ! R R\         4      o
 ! V	V
3R lRS	S
4      p ! R RS	R7      p ! R	 R
W!R7      p\        P                  ! RRS	^4      p\        P                  ! RRS
^4      p\        P                  ! RRV^4      p\        P                  ! V4      pWEV3 F  pV P	                  W4       K  	  R# )c                   8   a a ] tR tRt oR tV 3R ltRtVtV ;t# )STestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta1i!  c                
    . RO# )r  )r  re   rJ   oner:   r   s   &r   r*  [TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta1.__dir__"      EEr!   c                4   < VR 8X  d   ^# \         SV `  V4      # )rG  r  r   s   &&r   rH  _TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta1.__getattr__$      %<w*400r!   r:   r>  r  s   @@r   Meta1rE  !       F1 1r!   rM  c                   8   a a ] tR tRt oR tV 3R ltRtVtV ;t# )STestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta2i(  c                
    . RO# )r  )r  re   rJ   twor:   r   s   &r   r*  [TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta2.__dir__)  rI  r!   c                4   < VR 8X  d   ^# \         SV `  V4      # )rR  r  r   s   &&r   rH  _TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta2.__getattr__+  rL  r!   r:   r>  r  s   @@r   Meta2rP  (  rN  r!   rV  c                   B   <a a ] tR tRt oVV3R ltV 3R ltRtVtV ;t# )STestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta3i/  c           
        < \        \        \        . ROSP                  V 4      ,           SP                  V 4      ,           4      4      4      # )r  )r  re   rJ   three)r+  r  rL   r*  )r   rM  rV  s   &r   r*  [TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta3.__dir__0  sC    F3'WMM#&(').s);(< $= > ? ?r!   c                4   < VR 8X  d   ^# \         SV `  V4      # )rZ  r  r   s   &&r   rH  _TestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Meta3.__getattr__3  s    '>w*400r!   r:   r>  )r  ru   rM  rV  s   @@r   Meta3rX  /  s     ?1 1r!   r^  c                       ] tR tRtRtR# )TTestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Class1i7  r:   Nr  r:   r!   r   Class1r`  7  r  r!   ra  rk  c                       ] tR tRtRtR# )TTestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes.<locals>.Class2i9  r:   Nr  r:   r!   r   Class2rc  9  r  r!   rd  rG  r  rR  rZ  N)r   rM   r  r2  rZ  )rU   r^  ra  rd  should_find1should_find2should_find3ccasfrM  rV  s   &        @@r   ,test_classify_VirtualAttribute_multi_classesDTestClassesAndFunctions.test_classify_VirtualAttribute_multi_classes   s    	1D 	1	1D 	1	1 	1E5 	1	u 		V 	 ((qA((qA((&%C**62|<BMM"" =r!   c                     ! R  R\         4      p ! R RVR7      p\        P                  ! V4       Uu. uF  q3^ ,          NK  	  ppV P                  RV4       R# u upi )c                   &   a  ] tR tRt o R tRtV tR# )KTestClassesAndFunctions.test_classify_class_attrs_with_buggy_dir.<locals>.MiD  c                
    . RO# r  )r  rJ   missingr:   r   s   &r   r*  STestClassesAndFunctions.test_classify_class_attrs_with_buggy_dir.<locals>.M.__dir__E      ;;r!   r:   NrJ   re   rf   rg   r*  rr   rs   rt   s   @r   Mrn  D       < <r!   ru  c                       ] tR tRtRtR# )KTestClassesAndFunctions.test_classify_class_attrs_with_buggy_dir.<locals>.CiG  r:   Nr  r:   r!   r   rW  rx  G  r  r!   rW  rk  rq  N)r   rM   r2  r[  rU   ru  rW  r$   r  s   &    r   (test_classify_class_attrs_with_buggy_dir@TestClassesAndFunctions.test_classify_class_attrs_with_buggy_dirC  sU    	< 	<	! 	&;;A>?>!1>?E* @   Ac                h    ! R  R\         4      pR pV! \        P                  4      pV! \        P                  4      pV P	                  \        P
                  ! W4      RVP                  R,          3.4       V P	                  \        P
                  ! W4      RVP                  R,          3.4        ! R RV4      pV P	                  \        P
                  ! WS4      RVP                  R,          3.4       V P	                  \        P
                  ! WT4      RVP                  R,          3.4       R# )c                   2    ] tR tRt]! 4       t]! 4       tRtR# )>TestClassesAndFunctions.test_getmembers_descriptors.<locals>.AiM  r:   N)	rJ   re   rf   rg   r  r  r*  r  rr   r:   r!   r   r=  r  M  s    &(B(*Br!   r=  c                 6   a a  ! R  R\         4      oVV 3R lpV# )c                       ] tR tRtRtR# )XTestClassesAndFunctions.test_getmembers_descriptors.<locals>.pred_wrapper.<locals>.EmptyiT  r:   Nr  r:   r!   r   Emptyr  T  s    r!   r  c                 p   < R \        V 4      9   d   \        SV P                  4      '       d   R# S! V 4      # )rJ   F)r  r   rJ   )r\  r  preds   &r   r  ZTestClassesAndFunctions.test_getmembers_descriptors.<locals>.pred_wrapper.<locals>.wrappedV  s+    Q'GE1::,F,F Awr!   r   )r  r  r  s   f @r   pred_wrapperITestClassesAndFunctions.test_getmembers_descriptors.<locals>.pred_wrapperQ  s      Nr!   r  r  c                       ] tR tRtRtR# )>TestClassesAndFunctions.test_getmembers_descriptors.<locals>.Bid  r:   Nr  r:   r!   r   r<  r  d  r  r!   r<  N)r   rM   r   r   r  rY  r  )rU   r=  r  r   r   r<  s   &     r   test_getmembers_descriptors3TestClassesAndFunctions.test_getmembers_descriptorsL  s   	+ 	+		 *'*D*DE'(@(@A++ABAJJt$%&	(++A@AJJt$%&	(	 	 	++ABAJJt$%&	(++A@AJJt$%&	(r!   c                    ! R  R4      pV P                  RVP                  3\        P                  ! V4      4       V P	                  RVP                  3\        P                  ! V\        P
                  4      4       V! 4       pV P                  RVP                  3\        P                  ! V4      4       V P                  RVP                  3\        P                  ! V\        P
                  4      4       R# )c                   &   a  ] tR tRt o R tRtV tR# )9TestClassesAndFunctions.test_getmembers_method.<locals>.Bim  c                    R # r   r:   rb   s   &r   r  ;TestClassesAndFunctions.test_getmembers_method.<locals>.B.fn  r  r!   r:   NrJ   re   rf   rg   r  rr   rs   rt   s   @r   r<  r  m  r   r!   r<  r  N)rZ  r  rM   rY  r[  rl   )rU   r<  rT  s   &  r   test_getmembers_method.TestClassesAndFunctions.test_getmembers_methodl  s    	 	 	sACCj'"4"4Q"78#qssW%7%77;K;K%LMCsACCj'"4"4Q"78sACCj'"4"4Q8H8H"IJr!   c                    ! R  R4      pV! ^4      pV P                  \        P                  ! V4      RRVP                  3.4       V P                  \        P                  ! V\        P                  4      RVP                  3.4       R# )c                   2   a  ] tR tRt o R tR tR tRtV tR# )FTestClassesAndFunctions.test_getmembers_custom_dir.<locals>.CorrectDirix  c                    Wn         R # r   rG  rF  s   &&r   r'  OTestClassesAndFunctions.test_getmembers_custom_dir.<locals>.CorrectDir.__init__y  s     	r!   c                (    V P                   ^,           # r   r  rb   s   &r   r3  MTestClassesAndFunctions.test_getmembers_custom_dir.<locals>.CorrectDir.method{  s    yy1}$r!   c                
    R R.# )rG  r3  r:   rb   s   &r   r*  NTestClassesAndFunctions.test_getmembers_custom_dir.<locals>.CorrectDir.__dir__}  s    ))r!   r  N)	rJ   re   rf   rg   r'  r3  r*  rr   rs   rt   s   @r   
CorrectDirr  x  s     !%* *r!   r  r3  N)rG  r  r  rM   rY  r3  rl   )rU   r  cds   &  r   test_getmembers_custom_dir2TestClassesAndFunctions.test_getmembers_custom_dirw  s}    	* 	* ]++B/ryy!2
 	 	++B0@0@Aryy!D
 	r!   c                    ! R  R4      pV! 4       pV P                  \        P                  ! V4      RRVP                  3.4       V P                  \        P                  ! V\        P                  4      RVP                  3.4       R# )c                   0   a  ] tR tRt o ^tR tR tRtV tR# )LTestClassesAndFunctions.test_getmembers_custom_broken_dir.<locals>.BrokenDiri  c                (    V P                   ^,           # r  )existingrb   s   &r   r3  STestClassesAndFunctions.test_getmembers_custom_broken_dir.<locals>.BrokenDir.method  s    }}q((r!   c                
    . RO# )r3  )r3  rq  r  r:   rb   s   &r   r*  TTestClassesAndFunctions.test_getmembers_custom_broken_dir.<locals>.BrokenDir.__dir__  s    88r!   r:   N)	rJ   re   rf   rg   r  r3  r*  rr   rs   rt   s   @r   	BrokenDirr    s     H)9 9r!   r  r3  N)r  r   r  )rU   r  bds   &  r   !test_getmembers_custom_broken_dir9TestClassesAndFunctions.test_getmembers_custom_broken_dir  s{    	9 	9 [++B/ryy!2
 	 	++B0@0@Aryy!D
 	r!   c                v     ! R  R4      pV! 4       pV P                  \        P                  ! V4      R.4       R# )c                   *   a  ] tR tRt o ^tR tRtV tR# )TTestClassesAndFunctions.test_getmembers_custom_duplicated_dir.<locals>.DuplicatedDiri  c                
    R R .# r  r:   rb   s   &r   r*  \TestClassesAndFunctions.test_getmembers_custom_duplicated_dir.<locals>.DuplicatedDir.__dir__  s    ''r!   r:   N)rJ   re   rf   rg   rG  r*  rr   rs   rt   s   @r   DuplicatedDirr    s     D( (r!   r  N)rG  r   )r  rM   rY  )rU   r  r  s   &  r   %test_getmembers_custom_duplicated_dir=TestClassesAndFunctions.test_getmembers_custom_duplicated_dir  s8    	( 	(
 _++B/2
 	r!   c                d    ! R  R\         4      p ! R RVR7      p ! R R4      pV P                  R	\        P                  ! V4      4       V P                  R
\        P                  ! V! 4       4      4       V! 4       pV P                  RVP                  3\        P                  ! V4      4       R# )c                   2   a a ] tR tRt oV 3R ltRtVtV ;t# )CTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.Mi  c                4   < VR 8X  d   R# \         SV `  V4      # r  	scrambledr  )r   r  r  s   &&r   rH  OTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.M.__getattr__  s    6>&w*400r!   r:   r  r  s   @@r   ru  r    r  r!   ru  c                   D   a  ] tR tRt o ]P
                  R 4       tRtV tR# )CTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.Ai  c                    R # r   r:   rb   s   &r   r  HTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.A.eggs  r	  r!   r:   N)	rJ   re   rf   rg   r   r
  r  rr   rs   rt   s   @r   r=  r    r  r!   r=  rk  c                   &   a  ] tR tRt o R tRtV tR# )CTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.Bi  c                    R # r   r:   )rU   	attributes   &&r   rH  OTestClassesAndFunctions.test_getmembers_VirtualAttribute.<locals>.B.__getattr__  rJ  r!   r:   NrK  rt   s   @r   r<  r    rM  r!   r<  rH  Nr  )r  r   )r   rZ  rM   rY  rH  )rU   ru  r=  r<  rT  s   &    r    test_getmembers_VirtualAttribute8TestClassesAndFunctions.test_getmembers_VirtualAttribute  s    	1 	1
	! 		 	 	+W-?-?-BC&(:(:13(?@C}amm4g6H6H6KLr!   c                    ! R  R4      pV! 4       p\         P                  ! V4      p\         P                  ! V4      pV P                  R\         P                  ! VR4      3V4       V P                  R\         P                  ! VR4      3V4       V P                  R\         P                  ! VR4      3V4       V P                  R\         P                  ! VR4      3V4       R# )c                   T   a  ] tR tRt o ]R 4       t]P                  R 4       tRt	V t
R# )9TestClassesAndFunctions.test_getmembers_static.<locals>.Ai  c                    \         hr   r  rb   s   &r   r  >TestClassesAndFunctions.test_getmembers_static.<locals>.A.name      ))r!   c                    \         hr   r  rb   s   &r   r  >TestClassesAndFunctions.test_getmembers_static.<locals>.A.eggs  r  r!   r:   N)rJ   re   rf   rg   r  r  r   r
  r  rr   rs   rt   s   @r   r=  r    s/     * *((* )*r!   r=  r  r  N)rM   getmembers_staticrZ  getattr_static)rU   r=  r$   instance_membersclass_memberss   &    r   test_getmembers_static.TestClassesAndFunctions.test_getmembers_static  s    	* 	* C"44Q711!4vw55a@ACSTvw55a@ACSTvw55a@A=Qvw55a@A=Qr!   c                     ! R  R\         4      p ! R RVR7      p\        P                  ! V4       Uu. uF  q3^ ,          NK  	  ppV P                  RV4       R# u upi )c                   &   a  ] tR tRt o R tRtV tR# )ATestClassesAndFunctions.test_getmembers_with_buggy_dir.<locals>.Mi  c                
    . RO# rp  r:   r   s   &r   r*  ITestClassesAndFunctions.test_getmembers_with_buggy_dir.<locals>.M.__dir__  rs  r!   r:   Nrt  rt   s   @r   ru  r    rv  r!   ru  c                       ] tR tRtRtR# )ATestClassesAndFunctions.test_getmembers_with_buggy_dir.<locals>.Ci  r:   Nr  r:   r!   r   rW  r    r  r!   rW  rk  rq  N)r   rM   rY  r[  ry  s   &    r   test_getmembers_with_buggy_dir6TestClassesAndFunctions.test_getmembers_with_buggy_dir  sT    	< 	<	! 	&11!454!145E* 6r|  r:   )$rJ   re   rf   rg   rF  rW  rd  rm  rz  r  r   r  r
   r  r   r  r  r  r  r  r  r"  r3  rA  rj  rz  r  r  r  r  r  r  r  r  rr   rs   rt   s   @r   r6  r6    s&    	( BF,0T24259*,	%H015A __)MO	IO	I __)MO6O 6 __)MO-CO -C^	>OKb.(HMHH!#F+(@	K$(
M$R"+ +r!   r6  c                   ,   a  ] tR tRt o R tR tRtV tR# )TestFormatAnnotationi  c                    ^ RI HpHp V P                  \        P
                  ! V4      R4       V P                  \        P
                  ! V4      R4       R# )r   )rV  ann1zList[str] | intzList[testModule.typing.A] | intN)test.typinganndata.ann_module9rV  r  r  rM   formatannotation)rU   rV  r  s   &  r   test_typing_replacement,TestFormatAnnotation.test_typing_replacement  s=    <11#68IJ11$79Z[r!   c                h    \        R 4      pV P                  \        P                  ! V4      R 4       R# )fwdrefN)r   r  rM   r  )rU   r  s   & r   test_forwardref$TestFormatAnnotation.test_forwardref  s'    H%11&98Dr!   r:   N)rJ   re   rf   rg   r  r  rr   rs   rt   s   @r   r  r    s     \
E Er!   r  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )TestIsMethodDescriptori  c                f    ! R  R4      p ! R RV4      p ! R R4      p ! R R4      p ! R R	4      p ! R
 RVV4      pV P                  \        P                  ! V! 4       4      R4       V P                  \        P                  ! V! 4       4      R4       V P                  \        P                  ! V! 4       4      R4       V P                  \        P                  ! V! 4       4      R4       V P                  \        P                  ! V! 4       4      R4       V P                  \        P                  ! V! 4       4      R4       V P                  \        P                  ! V4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! V4      4       R# )c                   &   a  ] tR tRt o R tRtV tR# )HTestIsMethodDescriptor.test_custom_descriptors.<locals>.MethodDescriptori  c                    R # r   r:   rU   r  s   &*r   r   PTestIsMethodDescriptor.test_custom_descriptors.<locals>.MethodDescriptor.__get__      4r!   r:   NrJ   re   rf   rg   r   rr   rs   rt   s   @r   MethodDescriptorr         ''r!   r  c                       ] tR tRtRtR# )KTestIsMethodDescriptor.test_custom_descriptors.<locals>.MethodDescriptorSubi  r:   Nr  r:   r!   r   MethodDescriptorSubr    r  r!   r  c                   &   a  ] tR tRt o R tRtV tR# )OTestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithNoGeti  c                    R # r   r:   r  s   &*r   r%  WTestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithNoGet.__set__  r  r!   r:   NrJ   re   rf   rg   r%  rr   rs   rt   s   @r   DataDescriptorWithNoGetr    r  r!   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )PTestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetSeti  c                    R # r   r:   r  s   &*r   r   XTestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetSet.__get__  r  r!   c                    R # r   r:   r  s   &*r   r%  XTestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetSet.__set__  r  r!   r:   N)rJ   re   rf   rg   r   r%  rr   rs   rt   s   @r   DataDescriptorWithGetSetr    s     '''r!   r	  c                   ,   a  ] tR tRt o R tR tRtV tR# )STestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetDeletei  c                    R # r   r:   r  s   &*r   r   [TestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetDelete.__get__  r  r!   c                    R # r   r:   r  s   &*r   
__delete__^TestIsMethodDescriptor.test_custom_descriptors.<locals>.DataDescriptorWithGetDelete.__delete__  s    dr!   r:   N)rJ   re   rf   rg   r   r  rr   rs   rt   s   @r   DataDescriptorWithGetDeleter    s     '**r!   r  c                       ] tR tRtRtR# )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 descriptorN)rI   rM   r   rT   )rU   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34DEF334GHI334EFGr!   c                   \         P                  p ! R  R4      p ! R R4      pR pR pV P                  \        P                  ! V4      R4       V P                  \        P                  ! VP
                  R,          4      R4       V P                  \        P                  ! VP
                  R	,          4      R
4       V P                  \        P                  ! VP
                  R,          4      R4       V P                  \        P                  ! VP
                  R,          4      R4       V P                  \        P                  ! V! 4       P                  4      4       V P                  \        P                  ! V! 4       P                  4      4       V P                  \        P                  ! V! 4       P                  4      4       V P                  \        P                  ! VP                  4      4       V P                  \        P                  ! VP                  4      4       V P                  \        P                  ! VP                  4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! \        P                  ! V4      4      4       R# )c                   V   a  ] tR tRt o R t]R 4       t]R 4       t]	R 4       t
RtV tR# )>TestIsMethodDescriptor.test_builtin_descriptors.<locals>.Owneri  c                    R # r   r:   rb   s   &r   instance_methodNTestIsMethodDescriptor.test_builtin_descriptors.<locals>.Owner.instance_method      tr!   c                    R # r   r:   r   s   &r   r7  KTestIsMethodDescriptor.test_builtin_descriptors.<locals>.Owner.class_method      #'r!   c                     R # r   r:   r:   r!   r   r:  LTestIsMethodDescriptor.test_builtin_descriptors.<locals>.Owner.static_method      !%r!   c                    R # r   r:   rb   s   &r   
a_propertyITestIsMethodDescriptor.test_builtin_descriptors.<locals>.Owner.a_property  s    "&r!   r:   N)rJ   re   rf   rg   r  r   r7  r   r:  r  r%  rr   rs   rt   s   @r   Ownerr    s2     +' '% %& &r!   r'  c                       ] tR tRtRtRtR# )DTestIsMethodDescriptor.test_builtin_descriptors.<locals>.Slotermeyeri  r:   N)a_slotrU  r:   r!   r   Slotermeyerr)    s    !Ir!   r+  c                      R # r   r:   r:   r!   r   r  ATestIsMethodDescriptor.test_builtin_descriptors.<locals>.function  rs  r!   c                      R # r   r:   r:   r!   r   r   ATestIsMethodDescriptor.test_builtin_descriptors.<locals>.<lambda>      4r!   z-a builtin slot wrapper is a method descriptorr7  z+a classmethod object is a method descriptorr:  z,a staticmethod object is a method descriptorr%  z%a property is not a method descriptorr*  z!a slot is not a method descriptorN)r   r  rI   rM   r   r  rT   r  r7  r:  r   r   )rU   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3EG4K4KLM33EG4H4HIJ33EG4I4IJK33E4I4IJK33E4F4FGH33E4G4GHI33H=>33H=>2293D3DX3NOPr!   c                     ! R  R\         4      p ! R RVR7      pV P                  \        P                  ! V4      R4       R# )c                   &   a  ] tR tRt o R tRtV tR# )RTestIsMethodDescriptor.test_descriptor_being_a_class.<locals>.MethodDescriptorMetaiA  c                    R # r   r:   r  s   &*r   r   ZTestIsMethodDescriptor.test_descriptor_being_a_class.<locals>.MethodDescriptorMeta.__get__B  r  r!   r:   Nr  rt   s   @r   MethodDescriptorMetar7  A  r  r!   r:  c                       ] tR tRtRtR# )XTestIsMethodDescriptor.test_descriptor_being_a_class.<locals>.ClassBeingMethodDescriptoriC  r:   Nr  r:   r!   r   ClassBeingMethodDescriptorr<  C  r  r!   r=  rk  z3classes (instances of type) are explicitly excludedN)r   rT   rM   r   )rU   r:  r=  s   &  r   test_descriptor_being_a_class4TestIsMethodDescriptor.test_descriptor_being_a_class@  s>    	(4 	(	3G 	
 	&&'ABA	Cr!   c                N    ! R  R4      pV P                  \        P                  ! V! 4       4      4       V P                  \        P                  ! V4      4       V P                  \        P                  ! ^*.4      4       V P                  \        P                  ! ^*4      4       R# )c                       ] tR tRtRtR# )9TestIsMethodDescriptor.test_non_descriptors.<locals>.TestiM  r:   Nr  r:   r!   r   TestrB  M  r  r!   rC  N)rT   rM   r   rU   rC  s   & r   test_non_descriptors+TestIsMethodDescriptor.test_non_descriptorsL  st    	 	33DF;<33D9:33RD9:33B78r!   r:   N)
rJ   re   rf   rg   r  r3  r>  rE  rr   rs   rt   s   @r   r  r    s#     +HZ.Q`
C9 9r!   r  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )TestIsDataDescriptoriU  c                    ! R  R4      p ! R R4      p ! R R4      p ! R R4      pV P                  \        P                  ! V! 4       4      R4       V P                  \        P                  ! V! 4       4      R	4       V P                  \        P                  ! V! 4       4      R
4       V P                  \        P                  ! V! 4       4      R4       R# )c                   *   a  ] tR tRt o RR ltRtV tR# )GTestIsDataDescriptor.test_custom_descriptors.<locals>.NonDataDescriptoriX  Nc                    R # r   r:   )rU   valuer   s   &&&r   r   OTestIsDataDescriptor.test_custom_descriptors.<locals>.NonDataDescriptor.__get__Y  s    r!   r:   r   r  rt   s   @r   NonDataDescriptorrK  X  s     55r!   rO  c                   &   a  ] tR tRt o R tRtV tR# )ETestIsDataDescriptor.test_custom_descriptors.<locals>.DataDescriptor0iZ  c                    R # r   r:   )rU   r  rM  s   &&&r   r%  MTestIsDataDescriptor.test_custom_descriptors.<locals>.DataDescriptor0.__set__[      Dr!   r:   Nr  rt   s   @r   DataDescriptor0rQ  Z  s     00r!   rU  c                   &   a  ] tR tRt o R tRtV tR# )ETestIsDataDescriptor.test_custom_descriptors.<locals>.DataDescriptor1i\  c                    R # r   r:   )rU   r  s   &&r   r  PTestIsDataDescriptor.test_custom_descriptors.<locals>.DataDescriptor1.__delete__]      r!   r:   N)rJ   re   rf   rg   r  rr   rs   rt   s   @r   DataDescriptor1rW  \  s     ,,r!   r[  c                       ] tR tRtRtRtR# )ETestIsDataDescriptor.test_custom_descriptors.<locals>.DataDescriptor2i^  Nr:   )rJ   re   rf   rg   r%  rr   r:   r!   r   DataDescriptor2r]  ^  s    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 descriptorN)rT   rM   r   rI   )rU   rO  rU  r[  r^  s   &    r   r  ,TestIsDataDescriptor.test_custom_descriptorsW  s    	6 	6	1 	1	- 	-	 	112C2EFH	J001BCA	C001BCD	F001BCH	Jr!   c                z     ! R  R4      pV P                  \        P                  ! VP                  4      R4       R# )c                       ] tR tRtRtRtR# )/TestIsDataDescriptor.test_slot.<locals>.Slottedij  r:   Nr#   rU  r:   r!   r   Slottedrb  j  s    Ir!   rd  za slot is a data descriptorN)rI   rM   r   r#   )rU   rd  s   & r   	test_slotTestIsDataDescriptor.test_sloti  s,    	 	00=5	7r!   c                z     ! R  R4      pV P                  \        P                  ! VP                  4      R4       R# )c                   0   a  ] tR tRt o ]R 4       tRtV tR# )6TestIsDataDescriptor.test_property.<locals>.Propertiedip  c                    R # r   r:   rb   s   &r   r%  ATestIsDataDescriptor.test_property.<locals>.Propertied.a_propertyq  r   r!   r:   N)rJ   re   rf   rg   r  r%  rr   rs   rt   s   @r   
Propertiedri  p  s      r!   rl  za property is a data descriptorN)rI   rM   r   r%  )rU   rl  s   & r   test_property"TestIsDataDescriptor.test_propertyo  s0    	 	 	001F1FG9	;r!   c                    ! R  R\         4      pR pR pV P                  \        P                  ! V! 4       P                  4      R4       V P                  \        P                  ! V! 4       P
                  4      R4       V P                  \        P                  ! V! 4       P                  4      R4       V P                  \        P                  ! V4      R4       V P                  \        P                  ! V4      R4       R	# )
c                   F   a  ] tR tRt o R t]R 4       t]R 4       tRt	V t
R# )1TestIsDataDescriptor.test_functions.<locals>.Testix  c                    R # r   r:   rb   s   &r   r  ATestIsDataDescriptor.test_functions.<locals>.Test.instance_methody  r  r!   c                    R # r   r:   r   s   &r   r7  >TestIsDataDescriptor.test_functions.<locals>.Test.class_methodz  r   r!   c                     R # r   r:   r:   r!   r   r:  ?TestIsDataDescriptor.test_functions.<locals>.Test.static_method|  r#  r!   r:   N)rJ   re   rf   rg   r  r   r7  r   r:  rr   rs   rt   s   @r   rC  rq  x  s$     +' '% %r!   rC  c                      R # r   r:   r:   r!   r   r  5TestIsDataDescriptor.test_functions.<locals>.function~  rs  r!   c                      R # r   r:   r:   r!   r   r   5TestIsDataDescriptor.test_functions.<locals>.<lambda>  r0  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 descriptorN)r   rT   rM   r   r  r7  r:  )rU   rC  r  r2  s   &   r   test_functions#TestIsDataDescriptor.test_functionsw  s    	&6 	&	11$&2H2HIE	G11$&2E2EFB	D11$&2F2FGC	E11(;>	@11(;<	>r!   r:   N)
rJ   re   rf   rg   r  re  rm  r|  rr   rs   rt   s   @r   rH  rH  U  s     J$7;> >r!   rH  c                   b   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tR tRtV tR# )TestGetClosureVarsi  c                    R  p\        4       pRV/pR\        /pR\        /pR0p\        P                  ! W4WV4      pV P                  \        P                  ! V! V4      4      V4       R# )c                    a  V 3R  lpV# )c                 4   < \        V S\        \        4       R # r   print_global_refunbound_ref	local_refnonlocal_refs   &r   r  =TestGetClosureVars.test_name_resolution.<locals>.f.<locals>.g  s    i{KHr!   r:   r  r  s   f r   r  2TestGetClosureVars.test_name_resolution.<locals>.f  s    IHr!   r  r  r  r  Nr   r  r  rM   ClosureVarsr  getclosurevarsrU   r  _argnonlocal_varsglobal_varsbuiltin_varsunbound_namesr"  s   &       r   test_name_resolution'TestGetClosureVars.test_name_resolution  sj    	 x'.$k2'&&&}'3D//$8(Cr!   c                    R  p\        4       pRV/pR\        /pR\        /pR0p\        P                  ! W4WV4      pV P                  \        P                  ! V! V4      4      V4       R# )c                    a  V 3R  lpV# )c              3   D   <"   \        V S\        \        4       R x  R # 5ir   r  r  s   &r   r  ?TestGetClosureVars.test_generator_closure.<locals>.f.<locals>.g  s     i{KHs    r:   r  s   f r   r  4TestGetClosureVars.test_generator_closure.<locals>.f  s     Hr!   r  r  r  r  Nr  r  s   &       r   test_generator_closure)TestGetClosureVars.test_generator_closure  sj    	
 x'.$k2'&&&}'3D//$8(Cr!   c                     ! R  R4      p\        4       pRV/pR\        /pR\        /pR0p\        P                  ! W4WV4      pV P                  \        P                  ! V! 4       P                  V4      4      V4       R# )c                   &   a  ] tR tRt o R tRtV tR# )1TestGetClosureVars.test_method_closure.<locals>.Ci  c                   a V3R  lpV# )c                 4   < \        V S\        \        4       R # r   r  r  s   &r   r  >TestGetClosureVars.test_method_closure.<locals>.C.f.<locals>.g  s    )\;Lr!   r:   )rU   r  r  s   &f r   r  3TestGetClosureVars.test_method_closure.<locals>.C.f  s    Mr!   r:   Nr  rt   s   @r   rW  r    s      r!   rW  r  r  r  r  N)r   r  r  rM   r  r  r  r  )rU   rW  r  r  r  r  r  r"  s   &       r   test_method_closure&TestGetClosureVars.test_method_closure  su    	 	
 x'.$k2'&&&}'3D//d<hGr!   c                   a  ! R  R4      oV3R lpRS/pR\         /pR\        /pR0p\        P                  ! W#WE4      pV P	                  \        P
                  ! V4      V4       R# )c                   $    ] tR tRt]! 4       tRtR# )DTestGetClosureVars.test_attribute_same_name_as_global_var.<locals>.Ci  r:   N)rJ   re   rf   rg   r   r  rr   r:   r!   r   rW  r    s	     (Kr!   rW  c                  <   < \        S P                  \        4       R # r   )r  r  )rW  s   r   r  DTestGetClosureVars.test_attribute_same_name_as_global_var.<locals>.f  s    !---r!   r  r  N)r  r  rM   r  r  r  )rU   r  r  r  r  r  r"  rW  s   &      @r   &test_attribute_same_name_as_global_var9TestGetClosureVars.test_attribute_same_name_as_global_var  sg    	# 	#	.a$k2'&&&}'3D//2H=r!   c                d  a aa	 R  o	R pR pR pV3R loVV	V 3R lpV! ^4      pV! ^4      pV! V^4      pS P                  S	! V4      R^/4       S P                  S	! V4      R^/4       S P                  S	! V4      R^RV/4       S P                  S	! R	 ! ^4      4      R^/4       S! V4       R
# )c                 B    \         P                  ! V 4      P                  # r   )rM   r  	nonlocalsr  s   &r   _nonlocal_vars=TestGetClosureVars.test_nonlocal_vars.<locals>._nonlocal_vars  s    ))!,666r!   c                    a  V 3R  lpV# )c                    < SV ,           # r   r:   r  r\  s   &r   r  FTestGetClosureVars.test_nonlocal_vars.<locals>.make_adder.<locals>.add  s    1ur!   r:   )r\  r  s   f r   
make_adder9TestGetClosureVars.test_nonlocal_vars.<locals>.make_adder  s    Jr!   c                    a a VV 3R  l# )c                    < S! SV 4      # r   r:   )r[  rZ  r   s   &r   r   FTestGetClosureVars.test_nonlocal_vars.<locals>.curry.<locals>.<lambda>  s    T4 0r!   r:   )r   rZ  s   ffr   curry4TestGetClosureVars.test_nonlocal_vars.<locals>.curry  s	    00r!   c                 
    W8  # r   r:   rS  s   &&r   	less_than8TestGetClosureVars.test_nonlocal_vars.<locals>.less_than  s	    5Lr!   c                 0   <a  V 3R  lpVSn         V! V4      # )c                    <a  S! V 3R  l4      # )c                     < S! S4      ! V 4      # r   r:   )r\  r  s   &r   r   MTestGetClosureVars.test_nonlocal_vars.<locals>.Y.<locals>.g.<locals>.<lambda>  s    AaDGr!   r:   )r  les   fr   r  ;TestGetClosureVars.test_nonlocal_vars.<locals>.Y.<locals>.g  s    +,,r!   )g_ref)r  r  Ys   f r   r  0TestGetClosureVars.test_nonlocal_vars.<locals>.Y  s    -AGQ4Kr!   c                 P   < SP                  S! V 4      R SP                  /4       R# )r  N)r  r  )r   r  r  rU   s   &r   check_y_combinatorATestGetClosureVars.test_nonlocal_vars.<locals>.check_y_combinator  s     ^D1C>Br!   r\  rZ  r   c                    a  V 3R  l# )c                    < SV ,           # r   r:   r  s   &r   r   ITestGetClosureVars.test_nonlocal_vars.<locals>.<lambda>.<locals>.<lambda>  s	    QUr!   r:   r\  s   fr   r   7TestGetClosureVars.test_nonlocal_vars.<locals>.<lambda>  s    ?r!   N)r  )
rU   r  r  r  r  incadd_twogreater_than_fiver  r  s
   f       @@r   test_nonlocal_vars%TestGetClosureVars.test_nonlocal_vars  s    	7	
	1			C mQ-!)Q/,sAh703(;(9: !VY7	9)BA(FGq	#	
r!   c                    R  p\         P                  ! / / / \        4       4      pV P                  \         P                  ! R 4      V4       V P                  \         P                  ! V4      V4       R# )c                      R # r   r:   r:   r!   r   r#   9TestGetClosureVars.test_getclosurevars_empty.<locals>.foo  r   r!   c                      R # Tr:   r:   r!   r   r   >TestGetClosureVars.test_getclosurevars_empty.<locals>.<lambda>  s    r!   N)rM   r  rL   r  r  )rU   r#   _emptys   &  r   test_getclosurevars_empty,TestGetClosureVars.test_getclosurevars_empty  sS    $$RR7//=vF//4f=r!   c                     ! R  R4      pV P                  \        \        P                  ^4       V P                  \        \        P                  \        4       V P                  \        \        P                  / 4       R# )c                       ] tR tRtRtR# )7TestGetClosureVars.test_getclosurevars_error.<locals>.Ti  r:   Nr  r:   r!   r   Tr        r!   r  N)rj  rk  rM   r  r+  )rU   r  s   & r   test_getclosurevars_error,TestGetClosureVars.test_getclosurevars_error  sO    )W%;%;Q?)W%;%;TB)W%;%;R@r!   c                6    R p/ p\        W4       VR,          V3# )zdef f(): print(path)r  )r0   )rU   r  r  s   &  r   _private_globals#TestGetClosureVars._private_globals  s!    )T#w{r!   c                    V P                  4       w  rVP                  R R4       \        P                  ! / / R\        /R04      pV P                  \        P                  ! V4      V4       R# )r  Nr  r]  )r  r  rM   r  r  r  r  rU   r  r  r"  s   &   r   test_builtins_fallback)TestGetClosureVars.test_builtins_fallback  sW    %%'
~t$&&r2I//2H=r!   c                    V P                  4       w  rR ^/VR&   \        P                  ! / / R ^/R04      pV P                  \        P                  ! V4      V4       R# )r]  r  r  N)r  rM   r  r  r  r  s   &   r   test_builtins_as_dict(TestGetClosureVars.test_builtins_as_dict  sW    %%'$QZ>&&r2qzG9E//2H=r!   c                    V P                  4       w  r\        VR &   \        P                  ! / / R\        P                  /R04      pV P                  \        P                  ! V4      V4       R# )r  r]  r  N)r  r  rM   r  r]  r  r  r  s   &   r   test_builtins_as_module*TestGetClosureVars.test_builtins_as_module  sX    %%'>&&r2rww/?'K//2H=r!   r:   N)rJ   re   rf   rg   r  r  r  r  r  r  r  r  r  r  r  rr   rs   rt   s   @r   r  r    sF     DDH>$L>A>>> >r!   r  c                   d   a  ] tR tRt o RR ltRR ltR tR tR tR t	R	 t
R
 tR tR tRtV tR# )TestGetcallargsFunctionsi  Nc                    \        T;'       g    / VR 7      p\        RV,          RV4      p\        RV,          RV4      pV P                  WE4       R# )r   func(%s)Ninspect.getcallargs(func, %s))rX  rH   r  )rU   r   call_params_stringlocsr1r2s   &&&&  r   assertEqualCallArgs,TestGetcallargsFunctions.assertEqualCallArgs  sN    DJJBT**114>14FF r!   c                   \        T;'       g    / VR 7      p \        RV,          RV4       V P                  R4        \        RV,          RV4       V P                  R4       V P	                  \        X4      \        X4      4       V P                  \        V4      \        V4      4       ??R#   \         d   pTp Rp?LRp?ii ; i  \         d   pTp Rp?LxRp?ii ; i)r  r  NzException not raisedr  )rX  rH   failr   r  r   r  r*  )rU   r   call_param_stringr  r   ex1ex2s   &&&&   r   assertEqualException-TestGetcallargsFunctions.assertEqualException  s    DJJBT*	.//t< II,-	.03DDd
 II,-d3ic+S3s8,  	C	  	C	s.   B0 C
 0C;CC
C!CC!c                (    Rp\        W!,          4      # )z+Create a function that returns its locals()zlambda %s: locals())rH   )rU   r  r  s   && r   makeCallable%TestGetcallargsFunctions.makeCallable1  s    $D$%%r!   c                   V P                  R 4      pV P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR	4       V P                  VR
4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       R# )a, b=122, 3a=2zb=3, a=2z2, b=3z*(2,)z*[2]z*(2, 3)z*[2, 3]z	**{"a":2}zb=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)z2, **collections.UserDict(b=3)z b=2, **collections.UserDict(a=3)Nr
  r   rU   r  s   & r   
test_plain#TestGetcallargsFunctions.test_plain6  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                    V P                  R 4      pV P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       R# )z
a, b=1, *cr  r  2, 3, 4z*(2,3,4)z	2, *[3,4]z 2, 3, *collections.UserList([4])Nr  r  s   & r   test_varargs%TestGetcallargsFunctions.test_varargsM  ss    l+  C(  F+  I.  J/  K0  $FGr!   c                l   V P                  R 4      pV P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR	4       R
# )za, b=1, **cr  z2, b=3, c=4zb=3, a=2, c=4zc=4, **{"a":2, "b":3}z2, c=4, **{"b":3}zb=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)Nr  r  s   & r   
test_varkw#TestGetcallargsFunctions.test_varkwV  s    m,  E*  M2  O4  $;<  $78  $;<  $KL  $IJ  $KLr!   c                    V P                  R 4      pV P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       R# )**cr  za=1za=1, b=2zc=3, **{"a": 1, "b": 2}z **collections.UserDict(a=1, b=2)z%c=3, **collections.UserDict(a=1, b=2)Nr  r  s   & r   test_varkw_only(TestGetcallargsFunctions.test_varkw_onlyb  su    e$  B'  E*  J/  $=>  $FG  $KLr!   c                   V P                  R 4      pV P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  R	4      pV P                  VR4       V P                  VR
4       V P                  VR4       R# )za=3, *, c, d=2zc=3zc=3, a=3za=2, c=4z4, c=4r  3za=3zd=4z	*, c, d=2zc=3, d=4zd=4, c=3N)r
  r   r  r  s   & r   test_keyword_only*TestGetcallargsFunctions.test_keyword_onlyl  s    ./  E*  J/  J/  H-!!!R(!!!S)!!!U+!!!U+k*  E*  J/  J/r!   c                   V P                  R 4      pV P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  R4      pV P                  VR4       V P                  VR4       V P                  VR	4       V P                  VR
4       V P                  VR4       V P                  VR4       R# )za, b=2, *f, **gz2, 3, 7z	2, 3, x=8z2, 3, x=8, *[(4,[5,6]), 7]z2, x=8, *[3, (4,[5,6]), 7], y=9zx=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)za, 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)Nr  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                   V P                  R 4      pV P                  R4      pV P                  R4      pV P                  VR4       V P                  VR4       V P                  VR4       V P                  VR 4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR 4       V P                  VR4       W#3 F  pV P                  VR4       V P                  VR	4       V P                  VR
4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       K  	  V P                  R4      pV P                  VR4       V P                  VR4       V P                  R4      pV P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       V P                  VR4       R pV P                  \        R4      ;_uu_ 4        \        P
                  ! V4       R R R 4       R! pV P                  \        R"4      ;_uu_ 4        \        P
                  ! V4       R R R 4       V P                  \        R#4      ;_uu_ 4        \        P                  ! R$\        P                  P                  ^*R%7       R R R 4       V P                  \        R&4      ;_uu_ 4        \        P                  ! R'^^*R%7       R R R 4       V P                  \        R(4      ;_uu_ 4        \        P                  ! ^{^R)7       R R R 4       R #   + '       g   i     EL*; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R # ; i)*r  za, br  r  r.  z1,x=1r  zb=3r  z1, 2, 3, a=1z2, 3, 4, c=5z2, 3, 4, a=1, c=5zc=2z2, c=3z	2, 3, c=4z2, c=4, b=3u   **{u"πι": 4}z1, a=2z1, **{"a":2}z	1, 2, b=3z1, c=3, a=2r  z1, 2z1, 2, a=1, b=2z	*, a, b=0za=1, a=3za=1, c=3za=1, a=3, b=4za=1, b=2, a=3, b=4za=1, a=2, a=3, b=4c                     R # r   r:   r  s   $r   f50TestGetcallargsFunctions.test_errors.<locals>.f5  s    dr!   zmissing 1 required keyword-onlyNc                     R # r   r:   r$   rT  r&   s   &&&r   f60TestGetcallargsFunctions.test_errors.<locals>.f6  rs  r!   z'a', 'b' and 'c'z6variadic keyword parameters cannot have default valuesr#   kinddefaultz%value 5 is not a valid Parameter.kindr%   zname must be a str, not a intr0  )	r
  r  r  rk  rM   getcallargs
ValueErrorru  VAR_KEYWORD)	rU   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#G	##I/ABB# C ##J%;< < e'*;*;*G*G&(*<
 ##J$KM Me!R8M ##I#BD Dc*D D+G G G CB< <
M MD D Ds<   /O'/O;,2PP!P4'O8	;P	P	!P1	4Q	r:   r   )rJ   re   rf   rg   r   r  r
  r  r  r  r  r"  r%  r;  rr   rs   rt   s   @r   r  r    sB     !&&
H.H
MM0 /0H+ H+r!   r  c                   8   a a ] tR tRt oR tV 3R ltRtVtV ;t# )TestGetcallargsMethodsi  c                H     ! R  R\         4      pWn        V! 4       V n        R# )c                       ] tR tRtRtR# ))TestGetcallargsMethods.setUp.<locals>.Fooi  r:   Nr  r:   r!   r   FoorA    r  r!   rB  N)r   r   inst)rU   rB  s   & r   r  TestGetcallargsMethods.setUp  s    	& 	E	r!   c                   < R V9  g   Q h\         \        V `
  pV! RV,           4      V P                  n        V P
                  P                  # )rU   zself, )r  r>  r
  r   r3  rC  )rU   r  mkr  s   && r   r
  #TestGetcallargsMethods.makeCallable  sC    Y&&&)4=X	12yyr!   )r   rC  )	rJ   re   rf   rg   r  r
  rr   rs   r  r  s   @@r   r>  r>    s        r!   r>  c                   \   a a ] tR tRt oV 3R ltRV 3R lltRV 3R lltRR ltRtVt	V ;t
# )TestGetcallargsUnboundMethodsi  c                V   < \         \        V `  V4       V P                  P                  # r   )r  rI  r
  r   r3  )rU   r  r  s   &&r   r
  *TestGetcallargsUnboundMethods.makeCallable  s!    +T?	Jxxr!   c                H   < \         \        V `
  ! V P                  WV4      !  # r   )r  rI  r   _getAssertEqualParamsrU   r   r  r  r  s   &&&&r   r   1TestGetcallargsUnboundMethods.assertEqualCallArgs  s*    2DM''$GI 	Ir!   c                H   < \         \        V `
  ! V P                  WV4      !  # r   )r  rI  r  rM  rN  s   &&&&r   r  2TestGetcallargsUnboundMethods.assertEqualException  s*    2DN''$GI 	Ir!   c                n    R V9  g   Q h\        T;'       g    / V P                  R7      pVRV,           V3# )rC  )rC  zinst,)rX  rC  )rU   r   r  r  s   &&&&r   rM  3TestGetcallargsUnboundMethods._getAssertEqualParams  s:    ////DJJBTYY/g 22D99r!   r:   r   )rJ   re   rf   rg   r
  r   r  rM  rr   rs   r  r  s   @@r   rI  rI    s      II: :r!   rI  c                      a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tRtV tR# )TestGetattrStatici 	  c                    ! R  R\         4      pV! 4       pV P                  \        P                  ! VR4      VP                  4       V P                  \        P                  ! VRR4      VP                  4       V P                  \        4      ;_uu_ 4        \        P                  ! VR4       RRR4       V P                  \        P                  ! VR^4      ^4       R#   + '       g   i     L:; i)c                   $    ] tR tRt]! 4       tRtR# )+TestGetattrStatic.test_basic.<locals>.Thingi	  r:   NrJ   re   rf   rg   r   r\  rr   r:   r!   r   ThingrX  	  	    Ar!   rZ  r\  Nr  )r   r  rM   r  r\  rj  r  rU   rZ  things   &  r   
test_basicTestGetattrStatic.test_basic	  s    	F 	 //s;UWWE//sDA577K~..""5#. / 	//sA>B /.s   C!!C1	c                     ! R  R\         4      p ! R RV4      pV! 4       pV P                  \        P                  ! VR4      VP                  4       R# )c                   $    ] tR tRt]! 4       tRtR# )/TestGetattrStatic.test_inherited.<locals>.Thingi	  r:   NrY  r:   r!   r   rZ  rb  	  r[  r!   rZ  c                       ] tR tRtRtR# )4TestGetattrStatic.test_inherited.<locals>.OtherThingi	  r:   Nr  r:   r!   r   
OtherThingrd  	  r  r!   re  r\  Nr   r  rM   r  r\  )rU   rZ  re  	somethings   &   r   test_inherited TestGetattrStatic.test_inherited	  sD    	F 		 	 L	//	3?Ir!   c                     ! R  R\         4      pV! ^4      pV P                  \        P                  ! VR4      ^4       V=V P                  \        P                  ! VR4      ^4       R# )c                   *   a  ] tR tRt o ^tR tRtV tR# )3TestGetattrStatic.test_instance_attr.<locals>.Thingi	  c                    Wn         R # r   r  rU   r\  s   &&r   r'  <TestGetattrStatic.test_instance_attr.<locals>.Thing.__init__	      r!   r  N)rJ   re   rf   rg   r\  r'  rr   rs   rt   s   @r   rZ  rl  	  s     A r!   rZ  r\  Nrf  r\  s   &  r   test_instance_attr$TestGetattrStatic.test_instance_attr	  sX    	F 	 a//s;Q?G//s;Q?r!   c                     ! R  R\         4      pV! 4       pV P                  \        P                  ! VR4      VP                  4       R# )c                   0   a  ] tR tRt o ]R 4       tRtV tR# ).TestGetattrStatic.test_property.<locals>.Thingi"	  c                    \        R 4      hzI'm pretending not to existr~  rb   s   &r   r\  0TestGetattrStatic.test_property.<locals>.Thing.x#	  s    $%BCCr!   r:   N)rJ   re   rf   rg   r  r\  rr   rs   rt   s   @r   rZ  ru  "	  s     D Dr!   rZ  r\  Nrf  r\  s   &  r   rm  TestGetattrStatic.test_property!	  s:    	DF 	D //s;UWWEr!   c                   a  ! R  R\         4      pV! 4       o ! V3R lR\         4      pV! 4       pV P                  \        P                  ! VR4      S4       R# )c                   &   a  ] tR tRt o R tRtV tR# )KTestGetattrStatic.test_descriptor_raises_AttributeError.<locals>.descriptori*	  c                     \        R 4      hrw  r~  )r  s   *r   r   STestGetattrStatic.test_descriptor_raises_AttributeError.<locals>.descriptor.__get__+	  s    $%BCCr!   r:   Nr  rt   s   @r   
descriptorr|  *	  s     D Dr!   r  c                      < ] tR tRt Z tRtR# )FTestGetattrStatic.test_descriptor_raises_AttributeError.<locals>.Thingi.	  r:   NrJ   re   rf   rg   r\  rr   )descs   r   rZ  r  .	  s    Ar!   rZ  r\  N)r   r  rM   r  )rU   r  rZ  r]  r  s   &   @r   %test_descriptor_raises_AttributeError7TestGetattrStatic.test_descriptor_raises_AttributeError)	  sJ    	D 	D |	F 	//s;TBr!   c                     ! R  R\         4      pV P                  \        P                  ! VR4      VP                  4       R# )c                   $    ] tR tRt]! 4       tRtR# )4TestGetattrStatic.test_classAttribute.<locals>.Thingi4	  r:   NrY  r:   r!   r   rZ  r  4	  r[  r!   rZ  r\  Nrf  rU   rZ  s   & r   test_classAttribute%TestGetattrStatic.test_classAttribute3	  s1    	F 	 	//s;UWWEr!   c                     ! R  R\         4      pV P                  \        P                  ! VR4      VP                  R,          4       R# )c                   R   a  ] tR tRt o ]P
                  R 4       t]! 4       tRt	V t
R# );TestGetattrStatic.test_classVirtualAttribute.<locals>.Thingi:	  c                    V P                   # r   )_xrb   s   &r   r\  =TestGetattrStatic.test_classVirtualAttribute.<locals>.Thing.x;	  s    wwr!   r:   N)rJ   re   rf   rg   r   r
  r\  r   r  rr   rs   rt   s   @r   rZ  r  :	  s$     (( )Br!   rZ  r\  N)r   r  rM   r  r  r  s   & r   test_classVirtualAttribute,TestGetattrStatic.test_classVirtualAttribute9	  s6    	F 	 	//s;U^^C=PQr!   c                     ! R  R\         4      p ! R RV4      pV P                  \        P                  ! VR4      VP                  4       R# )c                   $    ] tR tRt]! 4       tRtR# )>TestGetattrStatic.test_inherited_classattribute.<locals>.ThingiC	  r:   NrY  r:   r!   r   rZ  r  C	  r[  r!   rZ  c                       ] tR tRtRtR# )CTestGetattrStatic.test_inherited_classattribute.<locals>.OtherThingiE	  r:   Nr  r:   r!   r   re  r  E	  r  r!   re  r\  Nrf  rU   rZ  re  s   &  r   test_inherited_classattribute/TestGetattrStatic.test_inherited_classattributeB	  s=    	F 		 	 	//
C@%''Jr!   c                H    ! R  R\         4      pV! 4       pV P                  \        P                  ! VR4      VP                  4       V P                  \        P                  ! VR4      R4       V=V P                  \        P                  ! VR4      VP                  4       R# )c                   0   a  ] tR tRt o RtR.tR tRtV tR# )+TestGetattrStatic.test_slots.<locals>.ThingiK	  r%   r\  c                    R V n         R# r#   Nr  rb   s   &r   r'  4TestGetattrStatic.test_slots.<locals>.Thing.__init__N	  	    r!   r  N)	rJ   re   rf   rg   r  rV  r'  rr   rs   rt   s   @r   rZ  r  K	  s     AI r!   rZ  r\  r  r%   Nrf  r\  s   &  r   
test_slotsTestGetattrStatic.test_slotsJ	  s{    	F 	
 //s;UWWE//s;UCG//s;UWWEr!   c                ~    ! R  R\         4      p ! R R\        VR7      pV P                  \        P                  ! VR4      R4        ! R RV4      p ! R	 R
\        VR7      pV P                  \        P                  ! VR4      R4        ! R RV4      pV P                  \        P                  ! VR4      ^4       R# )c                       ] tR tRtRtRtR# ).TestGetattrStatic.test_metaclass.<locals>.metaiX	  r#   r:   N)rJ   re   rf   rg   rG  rr   r:   r!   r   metar  X	  s    Dr!   r  c                       ] tR tRtRtR# )/TestGetattrStatic.test_metaclass.<locals>.ThingiZ	  r:   Nr  r:   r!   r   rZ  r  Z	  r  r!   rZ  rk  rG  r#   c                       ] tR tRtRtR# )-TestGetattrStatic.test_metaclass.<locals>.subi^	  r:   Nr  r:   r!   r   subr  ^	  r  r!   r  c                       ] tR tRt^tRtR# )4TestGetattrStatic.test_metaclass.<locals>.OtherThingi`	  r:   Nr  r:   r!   r   re  r  `	      Ar!   re  c                       ] tR tRtRtR# )9TestGetattrStatic.test_metaclass.<locals>.OtherOtherThingid	  r:   Nr  r:   r!   r   OtherOtherThingr  d	  r  r!   r  r\  Nr   r   r  rM   r  )rU   r  rZ  r  re  r  s   &     r   test_metaclass TestGetattrStatic.test_metaclassW	  s    	4 		Fd 	//v>F	$ 		3 	//
FCUK	j 	 	//EqIr!   c                    V P                  \        P                  ! ^RR4      R4       V P                  \        P                  ! RR4      R4       R# )r   r#   Nr  )r  rM   r  assertNotEqualrb   s   &r   test_no_dict_no_slots'TestGetattrStatic.test_no_dict_no_slotsi	  s>    //5$?FG225'BDIr!   c                    \        \        R R7      ;_uu_ 4       pV P                  \        P                  ! VR4      \        V4      P                  4       RRR4       R#   + '       g   i     R# ; i)r  r  r  N)r  r  r  rM   r  r   r  )rU   handles   & r   %test_no_dict_no_slots_instance_member7TestGetattrStatic.test_no_dict_no_slots_instance_memberm	  sG    (W--W33FFCT&\EVEVW .---s   ;AA0	c                     ! R  R\         4      p ! R RV4      pV P                  \        P                  ! V! 4       R4      VP                  4       R# )c                   ,   a  ] tR tRt o R.tR tRtV tR# )5TestGetattrStatic.test_inherited_slots.<locals>.Thingit	  r\  c                    R V n         R# r  r  rb   s   &r   r'  >TestGetattrStatic.test_inherited_slots.<locals>.Thing.__init__v	  r  r!   r  N)rJ   re   rf   rg   rV  r'  rr   rs   rt   s   @r   rZ  r  t	  s     I r!   rZ  c                       ] tR tRtRtR# ):TestGetattrStatic.test_inherited_slots.<locals>.OtherThingiy	  r:   Nr  r:   r!   r   re  r  y	  r  r!   re  r\  Nrf  r  s   &  r   test_inherited_slots&TestGetattrStatic.test_inherited_slotsr	  s?    	F 	
	 	 	//
cBEGGLr!   c                  a  ! R  R\         4      o ! V3R lR\         4      pV! 4       p^VP                  R&   V P                  \        P                  ! VR4      ^4       R Sn        V P                  \        P                  ! VR4      VP                  R,          4       S=R Sn        V P                  \        P                  ! VR4      VP                  R,          4       R# )c                   &   a  ] tR tRt o R tRtV tR# )5TestGetattrStatic.test_descriptor.<locals>.descriptori	  c                    ^# r  r:   rU   instanceowners   &&&r   r   =TestGetattrStatic.test_descriptor.<locals>.descriptor.__get__	      r!   r:   Nr  rt   s   @r   r  r  	        r!   r  c                   (   < ] tR tRt Z ! 4       tRtR# ).TestGetattrStatic.test_descriptor.<locals>.Fooi	  r:   NrJ   re   rf   rg   r  rr   r  s   r   rB  r  	  
    Ar!   rB  r  c                     R # r   r:   )r  r2   vs   &&&r   r   3TestGetattrStatic.test_descriptor.<locals>.<lambda>	  s    Tr!   c                     R # r   r:   )r  r2   os   &&&r   r   r  	      r!   N)r   r  r  rM   r  r%  r  )rU   rB  r#   r  s   &  @r   test_descriptor!TestGetattrStatic.test_descriptor	  s    	 		& 	 e S//S91= 2
//S93<<;LM 4
//S93<<;LMr!   c                   a  ! R  R\         4      o ! V3R lR\        4      p ! R R\         VR7      pV P                  \        P                  ! VR4      VP
                  R,          4       R# )	c                   &   a  ] tR tRt o R tRtV tR# )DTestGetattrStatic.test_metaclass_with_descriptor.<locals>.descriptori	  c                    ^# r  r:   r  s   &&&r   r   LTestGetattrStatic.test_metaclass_with_descriptor.<locals>.descriptor.__get__	  r  r!   r:   Nr  rt   s   @r   r  r  	  r  r!   r  c                   (   < ] tR tRt Z ! 4       tRtR# )>TestGetattrStatic.test_metaclass_with_descriptor.<locals>.metai	  r:   Nr  r  s   r   r  r  	  r  r!   r  c                       ] tR tRtRtR# )?TestGetattrStatic.test_metaclass_with_descriptor.<locals>.Thingi	  r:   Nr  r:   r!   r   rZ  r  	  r  r!   rZ  rk  r  N)r   r   r  rM   r  r  )rU   r  rZ  r  s   &  @r   test_metaclass_with_descriptor0TestGetattrStatic.test_metaclass_with_descriptor	  sO    	 		4 		Fd 	//s;T]]3=OPr!   c                    ! R  R\         4      p ! R RV4      pV! 4       pV P                  \        P                  ! VR4      ^4       V P	                  VP
                  4       V P                  \        P                  ! VR4      ^4       R# )c                       ] tR tRt^tRtR# )6TestGetattrStatic.test_class_as_property.<locals>.Basei	  r:   NrJ   re   rf   rg   r#   rr   r:   r!   r   Baser  	      Cr!   r  c                   4   a  ] tR tRt o Rt]R 4       tRtV tR# );TestGetattrStatic.test_class_as_property.<locals>.Somethingi	  Fc                    R V n         \        # r  )executedr   rb   s   &r   r  ETestGetattrStatic.test_class_as_property.<locals>.Something.__class__	  s     $r!   r  N)	rJ   re   rf   rg   r  r  r  rr   rs   rt   s   @r   	Somethingr  	  s     H r!   r  r#   N)r   r  rM   r  rT   r  )rU   r  r  r  s   &   r   test_class_as_property(TestGetattrStatic.test_class_as_property	  sq    	6 		 	 ;//%@!D**+//	5A1Er!   c                     ! R  R\         4      p ! R R\        4      p ! R RW!R7      pV P                  \        P                  ! V! 4       R4      ^4       V P                  \        P                  ! VR4      ^4       R# )	c                   0   a  ] tR tRt o ]R 4       tRtV tR# )4TestGetattrStatic.test_mro_as_property.<locals>.Metai	  c                    \         3# r   r   rb   s   &r   __mro__<TestGetattrStatic.test_mro_as_property.<locals>.Meta.__mro__	  s
    y r!   r:   N)rJ   re   rf   rg   r  r  rr   rs   rt   s   @r   r  r  	  s     ! !r!   r  c                       ] tR tRt^tRtR# )4TestGetattrStatic.test_mro_as_property.<locals>.Basei	  r:   Nr  r:   r!   r   r  r  	  r  r!   r  c                       ] tR tRtRtR# )9TestGetattrStatic.test_mro_as_property.<locals>.Somethingi	  r:   Nr  r:   r!   r   r  r  	  r  r!   r  rk  r#   Nr  )rU   r  r  r  s   &   r   test_mro_as_property&TestGetattrStatic.test_mro_as_property	  sd    	!4 	!
	6 		 	 	//	UCQG//	5A1Er!   c                  a V oR Sn          ! V3R lR\        4      pV! 4       p^Vn        V P                  \        P
                  ! VR4      ^4       V P                  SP                   4        ! R RV4      pV! 4       p^Vn        V P                  \        P
                  ! VR4      ^4       V P                  SP                   4       R# )Fc                   <   <a  ] tR tRt o ^t]V3R l4       tRtV tR# )4TestGetattrStatic.test_dict_as_property.<locals>.Fooi	  c                   < R Sn         / # r  calledrU   rq  s   &r   r  =TestGetattrStatic.test_dict_as_property.<locals>.Foo.__dict__	      "	r!   r:   N	rJ   re   rf   rg   r$   r  r  rr   rs   ru   rq  s   @r   rB  r  	       A r!   rB  r$   c                       ] tR tRtRtR# )4TestGetattrStatic.test_dict_as_property.<locals>.Bari	  r:   Nr  r:   r!   r   Barr  	      r!   r  N)r  rX  r$   r  rM   r  rT   )rU   rB  r#   r  r%   rq  s   &    @r   test_dict_as_property'TestGetattrStatic.test_dict_as_property	  s    	$ 	 e//S91=%#e//S91=%r!   c                b  a V oR Sn          ! V3R lR\        4      p ! R R\        4      p ! R RV4      pV! 4       pV P                  \        P                  ! VR4      ^4       V3Vn        V P                  \        P                  ! VR4      ^4       V P                  SP                   4       R# )	Fc                   <   <a  ] tR tRt o ^t]V3R l4       tRtV tR# )/TestGetattrStatic.test_mutated_mro.<locals>.Fooi	  c                   < R Sn         / # r  r
  r  s   &r   r  8TestGetattrStatic.test_mutated_mro.<locals>.Foo.__dict__	  r  r!   r:   Nr  r  s   @r   rB  r  	  r  r!   rB  c                       ] tR tRt^tRtR# )/TestGetattrStatic.test_mutated_mro.<locals>.Bari	  r:   NrJ   re   rf   rg   r$   rr   r:   r!   r   r  r  	  r  r!   r  c                       ] tR tRtRtR# )/TestGetattrStatic.test_mutated_mro.<locals>.Bazi	  r:   Nr  r:   r!   r   Bazr!  	  r  r!   r"  r$   N)r  rX  r  rM   r  	__bases__rT   )rU   rB  r  r"  bazrq  s   &    @r   test_mutated_mro"TestGetattrStatic.test_mutated_mro	  s    	$ 		$ 	 	#e//S91=//S91=%r!   c                  a V oR Sn          ! V3R lR\        4      p ! R R\        4      pV! 4       pV! 4       Vn        V P	                  \
        P                  ! VR4      ^4       V P                  SP                   4       R# )Fc                   :   <a a ] tR tRt oRV V3R lltRtVtV ;t# )9TestGetattrStatic.test_custom_object_dict.<locals>.Customi	  c                4   < R Sn         \        SV `	  W4       R# TN)r  r  get)rU   keyr1  r  rq  s   &&&r   r,  =TestGetattrStatic.test_custom_object_dict.<locals>.Custom.get	  s    "C)r!   r:   r   )rJ   re   rf   rg   r,  rr   rs   r  )r  ru   rq  s   @@r   Customr)  	  s     * * *r!   r/  c                       ] tR tRt^tRtR# )6TestGetattrStatic.test_custom_object_dict.<locals>.Fooi	  r:   Nr  r:   r!   r   rB  r1  	  r  r!   rB  r$   N)r  rX  r   r  r  rM   r  rT   )rU   r/  rB  r#   rq  s   &   @r   test_custom_object_dict)TestGetattrStatic.test_custom_object_dict	  sf    	*T 	*
	& 	ex//S91=%r!   c                     ! R  R\         4      p ! R RVR7      pV! 4       pV P                  \        P                  ! VR4      ^*4       V P	                  VP
                  4       R# )c                   0   a  ] tR tRt o ]R 4       tRtV tR# )?TestGetattrStatic.test_metaclass_dict_as_property.<locals>.Metai	  c                    R V n         R# r+  r  rb   s   &r   r  HTestGetattrStatic.test_metaclass_dict_as_property.<locals>.Meta.__dict__	  s	     $r!   r  NrJ   re   rf   rg   r  r  rr   rs   rt   s   @r   r  r6  	  r  r!   r  c                   *   a  ] tR tRt o RtR tRtV tR# )@TestGetattrStatic.test_metaclass_dict_as_property.<locals>.Thingi
  Fc                    ^*V n         R# )r  Nr   rb   s   &r   r'  ITestGetattrStatic.test_metaclass_dict_as_property.<locals>.Thing.__init__
  s	    	r!   r   N)rJ   re   rf   rg   r  r'  rr   rs   rt   s   @r   rZ  r;  
  s     H r!   rZ  rk  r   N)r   r  rM   r  rT   r  )rU   r  rZ  r  s   &   r   test_metaclass_dict_as_property1TestGetattrStatic.test_metaclass_dict_as_property	  sR    	%4 	%
	d 	 7//&A2F(r!   c                r    \        4       pV P                  \        P                  ! \        R V4      V4       R# )versionN)r   assertIsNotrM   r  r:  )rU   sentinels   & r   test_moduleTestGetattrStatic.test_module
  s+    8//YI!	#r!   c                4    ! R  R\         4      p ! R R\         VR7      p ! R RVR7      pV P                  \        4      ;_uu_ 4        \        P                  ! VR4       RRR4       V P                  VP                  4       R#   + '       g   i     L-; i)	c                   0   a  ] tR tRt o ]R 4       tRtV tR# )WTestGetattrStatic.test_metaclass_with_metaclass_with_dict_as_property.<locals>.MetaMetai
  c                (    R V n         \        ^*R7      # )Tr   )r  rX  rb   s   &r   r  `TestGetattrStatic.test_metaclass_with_metaclass_with_dict_as_property.<locals>.MetaMeta.__dict__
  s     $}$r!   r  Nr9  rt   s   @r   MetaMetarH  
  s     % %r!   rK  c                       ] tR tRtRtRtR# )STestGetattrStatic.test_metaclass_with_metaclass_with_dict_as_property.<locals>.Metai
  Fr:   N)rJ   re   rf   rg   r  rr   r:   r!   r   r  rM  
  s    Hr!   r  rk  c                       ] tR tRtRtR# )TTestGetattrStatic.test_metaclass_with_metaclass_with_dict_as_property.<locals>.Thingi
  r:   Nr  r:   r!   r   rZ  rO  
  r  r!   rZ  r   N)r   rj  r  rM   r  rT   r  )rU   rK  r  rZ  s   &   r   3test_metaclass_with_metaclass_with_dict_as_propertyETestGetattrStatic.test_metaclass_with_metaclass_with_dict_as_property
  sk    	%t 	%	48 		d 	 ~..""5&1 /( /.s   
BB	c                  a V oR Sn          ! V3R lR4      pV P                  \        4      ;_uu_ 4        \        P                  ! V! 4       R4       RRR4       V P                  SP                   4       R#   + '       g   i     L-; i)Fc                   .   <a  ] tR tRt o V3R ltRtV tR# )6TestGetattrStatic.test_custom___getattr__.<locals>.Fooi&
  c                   < R Sn         / # r  r
  rU   rG  rq  s   &&r   rH  BTestGetattrStatic.test_custom___getattr__.<locals>.Foo.__getattr__'
      "	r!   r:   NrK  r  s   @r   rB  rT  &
        r!   rB  whateverNr  rj  r  rM   r  rT   rU   rB  rq  s   & @r   test_custom___getattr__)TestGetattrStatic.test_custom___getattr__"
  s`    	 	
 ~..""35*5 / 	% /.   A77B	c                  a V oR Sn          ! V3R lR4      pV P                  \        4      ;_uu_ 4        \        P                  ! V! 4       R4       RRR4       V P                  SP                   4       R#   + '       g   i     L-; i)Fc                   .   <a  ] tR tRt o V3R ltRtV tR# );TestGetattrStatic.test_custom___getattribute__.<locals>.Fooi4
  c                   < R Sn         / # r  r
  rV  s   &&r   __getattribute__LTestGetattrStatic.test_custom___getattribute__.<locals>.Foo.__getattribute__5
  rX  r!   r:   N)rJ   re   rf   rg   rd  rr   rs   r  s   @r   rB  rb  4
  rY  r!   rB  really_could_be_anythingNr[  r\  s   & @r   test_custom___getattribute__.TestGetattrStatic.test_custom___getattribute__0
  sa    	 	
 ~..""35*DE / 	% /.r_  c                     ! R  R4      pV! 4       Vn         \        P                  ! V4      p\        P                  ! VP                   RR4       ?\
        P                  ! 4        V P                  V! 4       4       R# )c                       ] tR tRtRtR# )KTestGetattrStatic.test_cache_does_not_cause_classes_to_persist.<locals>.FooiE
  r:   Nr  r:   r!   r   rB  rk  E
      4r!   rB  rZ  
irrelevantN)r  weakrefrefrM   r  gccollectr3  )rU   rB  weakref_to_classs   &  r   ,test_cache_does_not_cause_classes_to_persist>TestGetattrStatic.test_cache_does_not_cause_classes_to_persist>
  sU     	u";;s+s||ZF


*,-r!   r:   N) rJ   re   rf   rg   r^  rh  rq  rm  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r%  r2  r>  rD  rP  r]  rg  rs  rr   rs   rt   s   @r   rU  rU   	  s     
CJ@FCFRKFJ$JX
MN,QF F&.&,& ) #
)"&&. .r!   rU  c                   h   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tR tR tRtV tR# )TestGetGeneratorStateiN
  c                $    R  pV! 4       V n         R# )c               3   :   "   \        ^4       F  p V x  K	  	  R# 5ir  Nry   numbers    r   number_generator5TestGetGeneratorState.setUp.<locals>.number_generatorQ
  s     ( #r|   N	generator)rU   r|  s   & r   r  TestGetGeneratorState.setUpP
  s    	 *+r!   c                B    \         P                  ! V P                  4      # r   )rM   getgeneratorstater  rb   s   &r   _generatorstate%TestGetGeneratorState._generatorstateV
      ((88r!   c                b    V P                  V P                  4       \        P                  4       R # r   )r  r  rM   GEN_CREATEDrb   s   &r   test_created"TestGetGeneratorState.test_createdY
  s!    --/1D1DEr!   c                    \        V P                  4       V P                  V P                  4       \        P
                  4       R # r   )nextr  r  r  rM   GEN_SUSPENDEDrb   s   &r   test_suspended$TestGetGeneratorState.test_suspended\
  s-    T^^--/1F1FGr!   c                    V P                    F  pK  	  V P                  V P                  4       \        P                  4       R # r   )r  r  r  rM   
GEN_CLOSEDrz   s   & r   test_closed_after_exhaustion2TestGetGeneratorState.test_closed_after_exhaustion`
  s2    A  --/1C1CDr!   c                   V P                  \        4      ;_uu_ 4        V P                  P                  \        4       R R R 4       V P	                  V P                  4       \        P                  4       R #   + '       g   i     L@; ir   )rj  r$  r  r;   r  r  rM   r  rb   s   &r   %test_closed_after_immediate_exception;TestGetGeneratorState.test_closed_after_immediate_exceptione
  sR    |,,NN  . ---/1C1CD -,    A66B	c                    V P                   P                  4        V P                  V P                  4       \        P
                  4       R # r   )r  r   r  r  rM   r  rb   s   &r   test_closed_after_close-TestGetGeneratorState.test_closed_after_closej
  s1    --/1C1CDr!   c                   a  V 3R  lpV! 4       S n         \        S P                   4       \        S P                   4       R# )c               3      <"   \        ^4       Fc  p SP                  SP                  4       \        P                  4       V x  SP                  SP                  4       \        P                  4       Ke  	  R# 5iry  )r,   r  r  rM   GEN_RUNNINGr{  rU   s    r   running_check_generatorCTestGetGeneratorState.test_running.<locals>.running_check_generators
  sW     (  !5!5!79L9LM  !5!5!79L9LM #s   A5A8N)r  r  )rU   r  s   f r   test_running"TestGetGeneratorState.test_runningn
  s-    
	N
 12T^^T^^r!   c                    R P                  4       pV FI  p\        \        V4      pV P                  V\	        V4      4       V P                  V\        V4      4       KK  	  R# )z0GEN_CREATED GEN_RUNNING GEN_SUSPENDED GEN_CLOSEDNr  r  rM   rZ  reprr*  rU   namesr  states   &   r   test_easy_debugging)TestGetGeneratorState.test_easy_debugging~
  sJ    BHHJDGT*EMM$U,MM$E
+ r!   c                h   RR lpV! . RO4      pV P                  \        P                  ! V4      RR R. RO/4       \        V4       V P                  \        P                  ! V4      RR R. ROR^RR/4       \        V4       V P                  \        P                  ! V4      RR R. ROR^RR/4       \        V4       V P                  \        P                  ! V4      RR R. ROR^RRR^/4        \        V4       V P                  \        P                  ! V4      / 4       R #   \         d     L5i ; i)	Nc              3   >   "   RpV  F  pV^8X  d   ^pVx  K  	  R# 5ir   Nr]  r:   lstr$   rT  r  r&   s   &&   r   each;TestGetGeneratorState.test_getgeneratorlocals.<locals>.each
  s%     A6A s   r$   r  r  rT  r&   r   r]  r  rM   getgeneratorlocalsr  StopIterationrU   r  numberss   &  r   test_getgeneratorlocals-TestGetGeneratorState.test_getgeneratorlocals
  s)   	 y/33G<tUI6	8W33G<tUIsAy*	+ 	W33G<tUIsAy*	+ 	W33G<tUIsAy#r3	4	M 	33G<bA  		s   0D# #D10D1c                    R  pV! 4       pV P                  \        P                  ! V4      / 4        \        V4       V P                  \        P                  ! V4      / 4       R#   \         d     L5i ; i)c               3      "   ^x  R# 5ir  r:   r:   r!   r   	yield_oneFTestGetGeneratorState.test_getgeneratorlocals_empty.<locals>.yield_one
  s
     Gr   Nr  rU   r  rG  s   &  r   test_getgeneratorlocals_empty3TestGetGeneratorState.test_getgeneratorlocals_empty
  sf    	k33C8"=	I 	33C8"=  		s   A% %A32A3c                8   V P                  \        \        P                  ^4       V P                  \        \        P                  R 4       V P                  \        \        P                  \        4       V P                  \        \        P                  R4       R# )r   c                     R # r  r:   r  s   &r   r   ETestGetGeneratorState.test_getgeneratorlocals_error.<locals>.<lambda>
  s    4r!   Nrx   r  )rj  rk  rM   r  rL   rb   s   &r   test_getgeneratorlocals_error3TestGetGeneratorState.test_getgeneratorlocals_error
  sb    )W%?%?C)W%?%?P)W%?%?E)W%?%?Gr!   r~  N)rJ   re   rf   rg   r  r  r  r  r  r  r  r  r  r  r  r  rr   rs   rt   s   @r   rv  rv  N
  sN     ,9FHE
E
E ,B:	>H Hr!   rv  c                   \   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tRtV tR# )TestGetCoroutineStatei
  c                X   a \         P                  R  4       oV3R lpV! 4       V n        R# )c               3   :   "   \        ^4       F  p V x  K	  	  R# 5iry  ry   rz  s    r   number_coroutine5TestGetCoroutineState.setUp.<locals>.number_coroutine
  s     ( #r|   c                  2   <"   S ! 4       G R j  xL
  R #  L5ir   r:   )r  s   r   	coroutine.TestGetCoroutineState.setUp.<locals>.coroutine
  s     "$$$s   N)r   r  )rU   r  r  s   & @r   r  TestGetCoroutineState.setUp
  s'    		 
		%"r!   c                :    V P                   P                  4        R # r   )r  r   rb   s   &r   r  TestGetCoroutineState.tearDown
  s    r!   c                B    \         P                  ! V P                  4      # r   )rM   getcoroutinestater  rb   s   &r   _coroutinestate%TestGetCoroutineState._coroutinestate
  r  r!   c                b    V P                  V P                  4       \        P                  4       R # r   )r  r  rM   CORO_CREATEDrb   s   &r   r  "TestGetCoroutineState.test_created
  s!    --/1E1EFr!   c                    V P                   P                  R 4       V P                  V P                  4       \        P
                  4       R # r   )r  sendr  r  rM   CORO_SUSPENDEDrb   s   &r   r  $TestGetCoroutineState.test_suspended
  s3    D!--/1G1GHr!   c                      V P                   P                  R4       K    \         d     Mi ; iT P                  T P	                  4       \
        P                  4       R# r+  )r  r  r  r  r  rM   CORO_CLOSEDrb   s   &r   r  2TestGetCoroutineState.test_closed_after_exhaustion
  sO    ##D)   	--/1D1DEs     ..c                   V P                  \        4      ;_uu_ 4        V P                  P                  \        4       R R R 4       V P	                  V P                  4       \        P                  4       R #   + '       g   i     L@; ir   )rj  r$  r  r;   r  r  rM   r  rb   s   &r   r  ;TestGetCoroutineState.test_closed_after_immediate_exception
  sR    |,,NN  . ---/1D1DE -,r  c                    V P                   P                  4        V P                  V P                  4       \        P
                  4       R # r   )r  r   r  r  rM   r  rb   s   &r   r  -TestGetCoroutineState.test_closed_after_close
  s1    --/1D1DEr!   c                    R P                  4       pV FI  p\        \        V4      pV P                  V\	        V4      4       V P                  V\        V4      4       KK  	  R# )z4CORO_CREATED CORO_RUNNING CORO_SUSPENDED CORO_CLOSEDNr  r  s   &   r   r  )TestGetCoroutineState.test_easy_debugging
  J    FLLNDGT*EMM$U,MM$E
+ r!   c           	     .  a \         P                  R  4       oS! 4       oRV3R llpV! 4       pV P                  \        P                  ! V4      RRRS/4       VP                  R4       V P                  \        P                  ! V4      RRRSRR/4       R# )c               3      "   R x  R # 5ir   r:   r:   r!   r   gencoro>TestGetCoroutineState.test_getcoroutinelocals.<locals>.gencoro
  s     r   Nc                 ,   <"   R pSG Rj  xL
  R#  L5i)r   Nr:   )r$   rT  r  s   & r   r   ;TestGetCoroutineState.test_getcoroutinelocals.<locals>.func
  s     AMMs   r$   r  rT  r   r   )r   r  r  rM   getcoroutinelocalsr  )rU   r   r   r  s   &  @r   test_getcoroutinelocals-TestGetCoroutineState.test_getcoroutinelocals
  s    		 
	 )	 v33D9tY8	:		$33D9tYfE	Gr!   )r  N)rJ   re   rf   rg   r  r  r  r  r  r  r  r  r  r  rr   rs   rt   s   @r   r  r  
  sC     %9GIFF
F,G Gr!   r  c                   x   a  ] tR tRt o R tR t]R 4       tR tR t	R t
R tR	 tR
 tR tR tR tR tRtV tR# )TestGetAsyncGenStatei
  c                $    R  pV! 4       V n         R# )c                 <   "   \        ^4       F  p V 5x  K
  	  R# 5iry  ry   rz  s    r   number_asyncgen3TestGetAsyncGenState.setUp.<locals>.number_asyncgen
  s     ( #s   Nasyncgen)rU   r  s   & r   r  TestGetAsyncGenState.setUp
  s    	 ()r!   c                V   "   V P                   P                  4       G R j  xL
  R #  L5ir   )r  acloserb   s   &r   asyncTearDown"TestGetAsyncGenState.asyncTearDown  s     mm""$$$s   )')c                D    \         P                  P                  R 4       R # r   )asyncioevents_set_event_loop_policyr   s   &r   tearDownClass"TestGetAsyncGenState.tearDownClass  s    --d3r!   c                B    \         P                  ! V P                  4      # r   )rM   getasyncgenstater  rb   s   &r   _asyncgenstate#TestGetAsyncGenState._asyncgenstate	  s    ''66r!   c                b    V P                  V P                  4       \        P                  4       R # r   )r  r	  rM   AGEN_CREATEDrb   s   &r   r  !TestGetAsyncGenState.test_created  s!    ,,.0D0DEr!   c                   "   \        V P                  4      G R j  xL
 pV P                  V P                  4       \        P
                  4       V P                  V^ 4       R #  LF5ir   )anextr  r  r	  rM   AGEN_SUSPENDEDrU   rM  s   & r   r  #TestGetAsyncGenState.test_suspended  sJ     DMM**,,.0F0FG" +s   A$A"AA$c                j  "   ^pV P                  \        4      ;_uu_ 4        V^,
          ;p'       d    \        V P                  4      G Rj  xL
  K0   RRR4       V P	                  V^4       V P	                  V P                  4       \        P                  4       R#  LQ  + '       g   i     LT; i5ir  )rj  StopAsyncIterationr
	  r  r  r	  rM   AGEN_CLOSED)rU   	countdowns   & r   r  1TestGetAsyncGenState.test_closed_after_exhaustion  s     	122(1},),DMM*** - 3 	A&,,.0C0CD + 32s4    B3B B BB A
B3B  B0	+B3c                .  "   V P                  \        4      ;_uu_ 4        V P                  P                  \        4      G R j  xL
  R R R 4       V P	                  V P                  4       \        P                  4       R #  L<  + '       g   i     LB; i5ir   )rj  r$  r  athrowr  r	  rM   r	  rb   s   &r   r  :TestGetAsyncGenState.test_closed_after_immediate_exception  s_     |,,--&&|444 -,,.0C0CD 5 -,s.   B#BB B8B BB	Bc                h  a "   V 3R  lpV! 4       S n         \        S P                   4      G Rj  xL
  S P                  S P                  4       \        P
                  4       \        S P                   4      G Rj  xL
  S P                  S P                  4       \        P
                  4       R#  L L65i)c                    <"   \        ^4       Fd  p SP                  SP                  4       \        P                  4       V 5x  SP                  SP                  4       \        P                  4       Kf  	  R# 5iry  )r,   r  r	  rM   AGEN_RUNNINGr  s    r   running_check_asyncgenATestGetAsyncGenState.test_running.<locals>.running_check_asyncgen"  sW     (  !4!4!68L8LM  !4!4!68L8LM #s   A6A9N)r  r
	  r  r	  rM   r	  )rU   r	  s   f r   r  !TestGetAsyncGenState.test_running!  s     	N
 /0DMM""",,.0F0FGDMM""",,.0F0FG	 	# 	#s"   +B2B.A
B29B0:5B20B2c                    R P                  4       pV FI  p\        \        V4      pV P                  V\	        V4      4       V P                  V\        V4      4       KK  	  R# )z4AGEN_CREATED AGEN_RUNNING AGEN_SUSPENDED AGEN_CLOSEDNr  r  s   &   r   r  (TestGetAsyncGenState.test_easy_debugging/  r  r!   c                  "   RR lpV! . RO4      pV P                  \        P                  ! V4      RR R. RO/4       \        V4      G R j  xL
  V P                  \        P                  ! V4      RR R. ROR^RR/4       \        V4      G R j  xL
  V P                  \        P                  ! V4      RR R. ROR^RR/4       \        V4      G R j  xL
  V P                  \        P                  ! V4      RR R. ROR^RRR^/4       V P	                  \
        4      ;_uu_ 4        \        V4      G R j  xL
  R R R 4       V P                  \        P                  ! V4      / 4       R #  EL L L L;  + '       g   i     LA; i5i)	Nc                @   "   RpV  F  pV^8X  d   ^pV5x  K  	  R# 5ir  r:   r  s   &&   r   r  9TestGetAsyncGenState.test_getasyncgenlocals.<locals>.each8  s%     A6A s   r$   r  r  rT  r&   r   r]  r  rM   getasyncgenlocalsr
	  rj  r	  r  s   &  r   test_getasyncgenlocals+TestGetAsyncGenState.test_getasyncgenlocals7  s^    	 y/227;tUI6	8Gn227;tUIsAy*	+ Gn227;tUIsAy*	+ Gn227;tUIsAy#r3	4 122.   3227;R@ 	 	 	
 ! 32sc   A
FE*AFE-AFE/AF&E35E16E3:1F-F/F1E33F	>Fc                  "   R  pV! 4       pV P                  \        P                  ! V4      / 4       \        V4      G Rj  xL
  V P                  \        P                  ! V4      / 4       V P	                  \
        4      ;_uu_ 4        \        V4      G Rj  xL
  RRR4       V P                  \        P                  ! V4      / 4       R#  L L6  + '       g   i     L<; i5i)c                    "   ^5x  R# 5ir  r:   r:   r!   r   r  DTestGetAsyncGenState.test_getasyncgenlocals_empty.<locals>.yield_oneS  s
     Gs   
Nr!	  r  s   &  r   test_getasyncgenlocals_empty1TestGetAsyncGenState.test_getasyncgenlocals_emptyR  s     	k2237<Cj2237<122* 32237<	 	  32s<   ?C$CAC$	CCC1C$CC!	C$c                8   V P                  \        \        P                  ^4       V P                  \        \        P                  R 4       V P                  \        \        P                  \        4       V P                  \        \        P                  R4       R# )r   c                     R # r  r:   r  s   &r   r   CTestGetAsyncGenState.test_getasyncgenlocals_error.<locals>.<lambda>_  s    $r!   Nr  )rj  rk  rM   r"	  rL   rb   s   &r   test_getasyncgenlocals_error1TestGetAsyncGenState.test_getasyncgenlocals_error]  sb    )W%>%>B)W%>%>O)W%>%>D)W%>%>Fr!   r  N)rJ   re   rf   rg   r  r  r   r 	  r	  r  r  r  r  r  r  r#	  r(	  r-	  rr   rs   rt   s   @r   r  r  
  sa     *% 4 47F#
EE
H,A6	=G Gr!   r  c                       ] tR tRtRtR# )MySignatureid  r:   Nr  r:   r!   r   r0	  r0	  d       	r!   r0	  c                       ] tR tRtRtR# )MyParameterii  r:   Nr  r:   r!   r   r3	  r3	  i  r1	  r!   r3	  c                     a  ] tR tRt o ]R 4       tR tR tR tR t	R t
R tR	 tR
 t]]P                   ! ]R4      R 4       4       t]]P                   ! ]R4      R 4       4       t]R 4       t]P                   ! ]R4      R 4       tR tR tR tR tR tR tR tR tR tR tR t R t!R t"R t#R t$R t%R  t&]P                   ! ]R4      R! 4       t']P                   ! ]R4      R" 4       t(R# t)R$ t*R% t+R& t,R' t-R( t.R) t/R* t0R+ t1R, t2R- t3R. t4R/ t5R0 t6R1 t7R2 t8R3 t9R4 t:]P                   ! ]R4      R5 4       t;]P                   ! ]R4      R6 4       t<R7 t=R8 t>R9 t?R: t@R; tAR< tBR= tCR> tDR? tER@tFV tGRA# )BTestSignatureObjectip  c                :   \         P                  ! V 3/ VB p\        ;QJ d,    . R  VP                  P	                  4        4       F  NK  	  5M%! R  VP                  P	                  4        4       4      VP
                  VP                  J d   R3# VP
                  3# )c              3     "   T F  pVP                   VP                  VP                  J d   R MVP                  VP                  VP                  J d   R MVP                  \	        VP
                  4      P                  4       3x  K  	  R# 5i).N)r  r1  empty
annotationr*  r0  r  ).0params   & r   	<genexpr>0TestSignatureObject.signature.<locals>.<genexpr>t  sp      J
 2I zz$}};$//5;;>=B=M=M5::,,.	0
 2Is   B
B.)rM   r  tupler1   valuesreturn_annotationr8	  )r   kwsigs   &, r   r  TestSignatureObject.signatureq  s    ++ J
 251F1F1HJ J
 251F1F1HJ J --:I 	I 251F1FI 	Ir!   c           	        \         P                  p\         P                  pV P                  \	        V! 4       4      R 4       V P                  \        V! 4       P                  4      R4       RR^
/R llp\         P                  ! V4      pV P                  \        V4      R4       V P                  R\        V4      9   4       RR lp\         P                  ! V4      pV P                  \        V4      R4       V P                  R\        V4      9   4       VP                  R,          pVP                  R	,          pVP                  R
,          p	VP                  R,          p
VP                  R,          pVP                  R,          pVP                  R,          pVP                  R,          pV! WyWV34       V! WyW34       V! WxV34       V! WxV34       V! WV34       V! W34       V! WW34       V! W34       V! WV34       V! WV34       V P                  \        R4      ;_uu_ 4        V! WWV34       RRR4       V P                  \        R4      ;_uu_ 4        V! W{WV34       RRR4       V P                  \        R4      ;_uu_ 4        V! WWV34       RRR4       V P                  \        R4      ;_uu_ 4        V! WyWV34       RRR4       VP                  RR7      pV P                  \        R4      ;_uu_ 4        V! WyWV34       RRR4       V P                  \        R4      ;_uu_ 4        V! W34       RRR4       V P                  \        R4      ;_uu_ 4        V! W34       RRR4       V P                  \        R4      ;_uu_ 4        V! WxV	34       RRR4       V P                  \        R4      ;_uu_ 4        V! WzV	34       RRR4       V P                  \        R4      ;_uu_ 4        V! W34       RRR4       VP                  RR7      pV P                  \        R4      ;_uu_ 4        V! VV34       RRR4       V P                  \        R4      ;_uu_ 4        V! WV34       RRR4       VP                  RR7      pV P                  \        R4      ;_uu_ 4        V! VV34       RRR4       R#   + '       g   i     EL; i  + '       g   i     ELx; i  + '       g   i     ELZ; i  + '       g   i     EL<; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL~; i  + '       g   i     ELO; i  + '       g   i     EL2; i  + '       g   i     R# ; i)()zmappingproxy(OrderedDict())kodc                   R # r   r:   )popkpkdkorF	  r   r  s   "&&$$*,r   rq  7TestSignatureObject.test_signature_object.<locals>.test  rs  r!   z
<Signaturez
(po, /, pkc                    R # r   r:   )pods   "r   test28TestSignatureObject.test_signature_object.<locals>.test2  rs  r!   z(pod=42, /)rH	  rN	  rI	  rJ	  r   rK	  r  zwrong parameter orderNr  zduplicate parameter namezfollows default argumentsecond_argsz+more than one variadic positional parametersecond_kwargsz(more than one variadic keyword parameter)d   r  )rM   rw  ru  r  r*  r  r1   r  rl  rI   r  r4  replace)rU   SPrq  rB	  rO	  sig2rH	  rN	  rI	  rJ	  r   rK	  rF	  r  kwargs2rR	  rS	  s   &                 r   test_signature_object)TestSignatureObject.test_signature_object}  s   QS4(acnn-/LM	B 	 %d3i6S	12	   'd4j,7d34^^D!ooe$^^D!nnU#~~f%^^D!nnU#)	24V
$%	22
	2B-	2C.	3C.	3*	3c
"# 	
3)	3F
	4b/##J0GHHrt() I ##J0GHHr() I ##J0GHHt() I ##J0GHHrtR() I ..f.-##J0JKKrtb)* L ##J0JKKsiL L ##J0JKKsiL L ##J0JKKrm L ##J0JKKrm L ##J0JKKsiL L lll6##J0]^^t[!" _ ##J0]^^t%& _ O<##J0Z[[v}%& \[O IHH IHH IHH IHH LKK LKK LKK LKK LKK LKK _^^ _^^ \[[s   .S SS/TT:
T+*
T?UU'<
U;>V/V#2V7S	S,	/T 	T	T(	+T<	?U	U$	'U8	;V	V 	#V4	7W	c           	     <   R / /R R llp\         P                  ! V^R7      p\        P                  ! V4      p\	        \
        P                  ^,           4       Fb  pV P                  VRR7      ;_uu_ 4        \
        P                  ! \
        P                  ! W44      4      pV P                  W54       RRR4       Kd  	  \        P                  ! V4      p\        R\        P                  P                  R7      p\        P                  ! VP                   VR7      p\#        4       P%                  VP'                  4       VP(                  R	7      pV P+                  \-        V\"        4      4       V P+                  \-        VP                   R,          \        4      4       \	        \
        P                  ^,           4       F  pV P                  VR
R7      ;_uu_ 4        \
        P                  ! \
        P                  ! W4      4      pV P                  W4       V P+                  \-        V\"        4      4       V P+                  \-        VP                   R,          \        4      4       RRR4       K  	  R#   + '       g   i     EK.  ; i  + '       g   i     K  ; i)r&   c                $    V ^8  d   QhR^R^*R//# rx   r&   r~  ri  r:   )r  s   "r   r  FTestSignatureObject.test_signature_object_pickle.<locals>.__annotate__      ::1:2e*:r!   c                    R # r   r:   r$   rT  r&   rA	  s   &&$,r   r#   =TestSignatureObject.test_signature_object_pickle.<locals>.foo      dr!   r  F)
pickle_versubclassNr+   )r  r0  )r1   r@	  T)r   r   rM   r  r,   pickleHIGHEST_PROTOCOLr  loadsdumpsr  r3	  ru  rv  r  OrderedDictr1   r0	  rV	  r?	  r@	  rI   r  )	rU   r#   foo_partialrB	  versig_pickledmyparammyparamsmysigs	   &        r   test_signature_object_pickle0TestSignatureObject.test_signature_object_pickle  s   :R:''q1,00145Cu==$ll6<<+AB  2 >= 6 $3W->->-N-NO**3>>WE%%1B8;8M8M & O
5+67
5#3#3C#8+FG00145Ct<<$ll6<<+CD  4
; DE
;+A+A#+F+6!8 9	 =< 6 >== =<<s   7<I5BJ
5J
Jc                J   R  p\         P                  ! V4      pV P                  \        4      ;_uu_ 4        RVn        RRR4       V P                  \
        4      ;_uu_ 4        RVP                  R&   RRR4       R#   + '       g   i     LG; i  + '       g   i     R# ; i)c                     R # r   r:   r  s   &r   rq  =TestSignatureObject.test_signature_immutability.<locals>.test  rs  r!   r%   Nr$   )rM   r  rj  r  r#   rk  r1   rU   rq  rB	  s   &  r   test_signature_immutability/TestSignatureObject.test_signature_immutability  sr    	%~..CG / y))"&CNN3 *) /. *))s   A>$B>B	B"	c                N    R  pV P                  V P                  V4      R4       R# )c                      R # r   r:   r:   r!   r   rq  9TestSignatureObject.test_signature_on_noarg.<locals>.test  rs  r!   Nr:   .r  r  r  s   & r   test_signature_on_noarg+TestSignatureObject.test_signature_on_noarg  s     	-y9r!   c                T    R  R lpV P                  V P                  V4      R4       R# )c                     V ^8  d   QhRRR^{/# )rx   rT  r#   r~  r:   )r  s   "r   r  ATestSignatureObject.test_signature_on_wargs.<locals>.__annotate__  s     	 	e 	 	r!   c                     R # r   r:   rS  s   &&r   rq  9TestSignatureObject.test_signature_on_wargs.<locals>.test  rs  r!   N))r$   ..positional_or_keyword)rT  .r#   r	  {   r	  r  s   & r   test_signature_on_wargs+TestSignatureObject.test_signature_on_wargs   s%    	-	 r!   c                    R  R lpV P                  V P                  V4      RR\        R3RR\        R33\        34       R# )c                <    V ^8  d   QhR\         R\        R\        /# )rx   r$   rT  r~  )floatr*  r   )r  s   "r   r  CTestSignatureObject.test_signature_on_wkwonly.<locals>.__annotate__	  s!     	 	e 	s 	s 	r!   c                     R # r   r:   rS  s   $$r   rq  ;TestSignatureObject.test_signature_on_wkwonly.<locals>.test	  rs  r!   r$   .keyword_onlyrT  N)r  r  r	  r*  r   r  s   & r   test_signature_on_wkwonly-TestSignatureObject.test_signature_on_wkwonly  sE    	-e^<c>:< 	!r!   c                    RR^{/R R lllpV P                  V P                  V4      R	R
RRRRR\        R33R34       R# )
   ri  c                0    V ^8  d   QhRRRRRRR\         /# )rx   rT  r#   r   r%   r   r$  r  r   )r  s   "r   r  HTestSignatureObject.test_signature_on_complex_args.<locals>.__annotate__  s(     	 	e 	e 	% 	3 	r!   c                    R # r   r:   )r$   rT  r   ri  r   r  s   &&$$*,r   rq  @TestSignatureObject.test_signature_on_complex_args.<locals>.test  rs  r!   .r  var_keywordNr	  r	  )rT  r	  r#   r	  )r   .r%   var_positional)r   .r$  r	  )ri  r	  .r	  )r  r  r   r  s   & r   test_signature_on_complex_args2TestSignatureObject.test_signature_on_complex_args  sW    	S 	 	-CDA?<$c3>@ 	 r!   c                  aa R  oR o ! VV3R lR4      pV P                  V P                  S4      R4       V P                  V P                  S4      R4       V P                  V P                  VP                  4      R4       V P                  V P                  VP                  4      R4       V P                  V P                  VP                  4      R4       V P                  V P                  VP
                  4      R4       R# )c                      R # r   r:   r  s   *r   test_args_onlyGTestSignatureObject.test_signature_without_self.<locals>.test_args_only  rs  r!   c                      R # r   r:   r   r  s   *,r   test_args_kwargs_onlyNTestSignatureObject.test_signature_without_self.<locals>.test_args_kwargs_only   rs  r!   c                      <a  ] tR tRt o ]R 4       t]R 4       t]P                  ! ]^4      t
]P                  !  Z^4      t]P                  ! ]^4      t]P                  !  Z^4      tRtV tR# ):TestSignatureObject.test_signature_without_self.<locals>.Ai#  c                     R # r   r:   r  s   *r   test_classmethodKTestSignatureObject.test_signature_without_self.<locals>.A.test_classmethod$  r   r!   c                     R # r   r:   r  s   *r   test_staticmethodLTestSignatureObject.test_signature_without_self.<locals>.A.test_staticmethod(  r   r!   r:   N)rJ   re   rf   rg   r   r	  r   r	  r   r   r7  r8  r9  r:  rr   rs   )ru   r	  r	  s   @r   r=  r	  #  sx         ((*:Q?B((.1=B((*;a@B((*?CBr!   r=  N)r   ..r	  .)r	  r  ..r	  .)r  r  r7  r8  r9  r:  )rU   r=  r	  r	  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	Hr!   r  c                  a a	 \         P                  ! R 4      pV 3R lpV 3R lpV! VP                  4      o	V	3R lpS P                  V! R4      R4       S P                  V! R4      R4       S P                  V! R4      R	4       S P                  V! R
4      ^#4       S P                  V! R4      R4       S P                  V! R4      R4       S P                  V! R4      R4       S P                  V! R4      ^4       S P                  V! R4      \        P
                  4       S P                  V! R4      \        P
                  ^,
          4       V! \        4       V! \        P                  P                  4       \        P                  ! \        P                  ! 4       4      pV! VP                  4       V! \        P                  4       V! RP                  4       V! \        P                  4       V! / P                  4       V! \         P"                  4       V! \$        P&                  4       V! ^P&                  4       V! \(        P"                  4        ! R R4      pS P                  V! 4       ! ^4      \$        4       S P                  V! 4       ! RR/ 4      P*                  R4       S P-                  \.        R4      ;_uu_ 4        V! V! 4       4       RRR4       V! \        P0                  4       V! \2        P4                  4       V! VP6                  4       \8        P:                  pV! V4      pS P                  \=        VP>                  4      RR.4       R#   + '       g   i     L; i)r  c                  < \         P                  ! V 4      pSP                  \        V\         P                  4      4       SP                  \        VP                  P                  4       4      ^ ,          P                  R4       V# )zAUse this to test unbound methods (things that should have a self)rU   )
rM   r  rI   r  rw  r  r+  r1   r?	  r  r  r  rU   s   & r   test_unbound_methodKTestSignatureObject.test_signature_on_builtins.<locals>.test_unbound_methodE  sa    ))!,IOOJy'2C2CDET)"6"6"="="?@CHH&Qr!   c                2  < \         P                  ! V 4      pSP                  \        V\         P                  4      4       VP
                  '       dE   SP                  \        VP
                  P                  4       4      ^ ,          P                  R4       V# )zRUse this to test bound methods or normal callables (things that don't expect self)rU   )
rM   r  rI   r  rw  r1   r  r+  r?	  r  r	  s   & r   test_callableETestSignatureObject.test_signature_on_builtins.<locals>.test_callableL  sn    ))!,IOOJy'2C2CDE#####D)=)=)D)D)F$G$J$O$OQWXr!   c                 >   < SP                   V ,          P                  # r   )r1   r1  )r  r  s   &r   r3   9TestSignatureObject.test_signature_on_builtins.<locals>.pU  s    I006>>>r!   r  r  rT  s   bytesr  gQ	@r2   nNr3  Tr  Flocalr:  rW   s   abcc                       ] tR tRt]tRtR# )DTestSignatureObject.test_signature_on_builtins.<locals>.ThisWorksNowi|  r:   N)rJ   re   rf   rg   r   r   rr   r:   r!   r   ThisWorksNowr	  |  r   r!   r	  r=  zno signature foundrU   bufferr:   ) r	   r  r  r  r:  maxsizer   r  r  r  r  StringIObytes	maketransrX  fromkeysr   r   r   r  minrJ   r  r4  __delitem__r  r  #docstring_with_signature_but_no_doc	bytearray__release_buffer__r+  r1   )
rU   r  r	  r	  r3   r  r	  r3  rB	  r  s
   f        @r   test_signature_on_builtins.TestSignatureObject.test_signature_on_builtins?  s    "//<			 ")"R"RS	>3+3*3&3$3&3&3'7Q'53;;/53;;?3f 	GOO001OOBKKM*aff 	eoo&f&&' 	dmm$bkk" 	DMM*CKK(qkk" 	cll#	 	 	*C0R4==sC##J0DEE,.) F 	D,,-H//0 	iCCD --!&)cnn-/AB FEs   M""M2	c                X   \         P                  ! R 4      pVP                  pR pV! V4      pV P                  \        P
                  ! V4      \        P
                  ! V4      4       R R lpV P                  \        P
                  ! VRR7      \        P
                  ! V4      4       R# )r  c                 L   a  \         P                  ! S 4      R  V 3R ll4       pV# )c                $    V ^8  d   QhR\         /# rx   r~  r	  )r  s   "r   r  aTestSignatureObject.test_signature_on_decorated_builtins.<locals>.decorator.<locals>.__annotate__       - -C -r!   c                     < S! V / VB # r   r:   r   r  r   s   *,r   wrapper\TestSignatureObject.test_signature_on_decorated_builtins.<locals>.decorator.<locals>.wrapper      T,V,,r!   r   rl  r   r	  s   f r   	decoratorKTestSignatureObject.test_signature_on_decorated_builtins.<locals>.decorator  #    __T"- #-Nr!   c                $    V ^8  d   QhR\         /# r	  r	  )r  s   "r   r  NTestSignatureObject.test_signature_on_decorated_builtins.<locals>.__annotate__  s    66S6r!   c                      R # r   r:   r	  s   *,r   wrapper_likeNTestSignatureObject.test_signature_on_decorated_builtins.<locals>.wrapper_like  s    $r!   Ffollow_wrappedN)r	   r  r  r  rM   r  )rU   r  r   r	  decorated_funcr	  s   &     r   $test_signature_on_decorated_builtins8TestSignatureObject.test_signature_on_decorated_builtins  s     "//<	??	 #4**40 **>:	< 	7**>:?A **<8	:r!   c                   \         P                  ! R 4      pV P                  \        R4      ;_uu_ 4        \        P
                  ! VP                  4       RRR4       V P                  \        R4      ;_uu_ 4        \        P
                  ! \        4       RRR4       VP                  pVP                  4       pVP                  \        3VP                  \        3VP                  \        3VP                  \        3VP                  \        3VP                  \        3VP                  \        3VP                   \        3VP"                  \        3VP$                  \        3VP&                  \        3VP(                  \        3\*        P*                  \        3\        P,                  \        3RP,                  \        3\.        P0                  \        3\/        4       P0                  \        3\.        P2                  \        3\/        4       P2                  \        3\4        P4                  P6                  R,          \8        3\4        P4                  P:                  \        3\<        P6                  R,          \>        3\<        P@                  \        3.p ^ RI!pVPE                  \F        PH                  \        34       V Fa  w  rgV PM                  V4      ;_uu_ 4        V PO                  \        P
                  ! V4      \        P
                  ! V4      4       RRR4       Kc  	  R#   + '       g   i     EL; i  + '       g   i     EL; i  \J         d     Li ; i  + '       g   i     K  ; i)r  zno signature found for builtinNr  r  r  )(r	   r  r  r4  rM   r  r  r*  r  r  r   r  r   r   r   r  r  r  r  r  r  r  r  rL   r  r  r   r  r   r  rX  r   r  r  r.   r  r  r'  r  r  )rU   r  r   rX   r  r  r  r  s   &       r   'test_signature_on_builtins_no_signature;TestSignatureObject.test_signature_on_builtins_no_signature  s   !//<	##J$DF Fi>>?F ##J$DF Fc"F 0000244kB//8__./ZZ%__k*ZZ ""K0v&##[1'$$&67-YY$YY()XX{#WWk"UYY{+U(''13CD%%{3]]./=##V,1
4	1 LL$,,/0!&Gg&&  !2!27!;!(!2!28!<> '& "'YF F FF F FD  	 	 '&&s5   !L)<L=M  ;M")L:	=M	MM"M3c                    \         P                  ! R 4      pVP                  P                  pV P	                  \        \        P                  ! V4      4      R4       R# )r  z(self, /, x=1)N)r	   r  %DocStringUnrepresentableSignatureTestwith_defaultr  r*  rM   r  )rU   r  meths   &  r   $test_signature_parsing_with_defaults8TestSignatureObject.test_signature_parsing_with_defaults  sF     "//<	>>KKW..t457GHr!   c                    V P                  \        R 4      ;_uu_ 4        \        P                  ! ^*4       RRR4       R#   + '       g   i     R# ; i)is not a callable objectN)r  rk  rM   r  rb   s   &r   test_signature_on_non_function2TestSignatureObject.test_signature_on_non_function  s4    ##I/IJJb! KJJJs   A  A	c                8  a R R/R lp ! R R4      p\         P                  P                  V4      p\         P                  P                  V! V4      4      pV P                  WC4       \         P                  ! V! V4      4      pV P                  WC4       V! V4      pV=V P                  V P	                  V4      R4       \         P                  oV3R lp\        P                  P                  RV4      ;_uu_ 4        V! V4      pV P                  \         P                  ! V4      4       RVn        V P                  \         P                  ! V4      4       V P                  \         P                  ! V4      V4       RRR4       R#   + '       g   i     R# ; i)	kwonlyTc                    R # r   r:   r$   rT  r	  	kwonlyreqr   r  s   &&$$*,r   r   ITestSignatureObject.test_signature_from_functionlike_object.<locals>.func  rs  r!   c                   ,   a  ] tR tRt o R tR tRtV tR# )MTestSignatureObject.test_signature_from_functionlike_object.<locals>.funclikei  c                    VP                   V n         VP                  V n        VP                  V n        VP                  V n        VP                  V n        Wn        R # r   rJ   r  r  __defaults____kwdefaults__r   rU   r   s   &&r   r'  VTestSignatureObject.test_signature_from_functionlike_object.<locals>.funclike.__init__  G     $ $'+';';$$($5$5!&*&9&9# 	r!   c                &    V P                   ! V/ VB # r   r  r  s   &*,r   r   VTestSignatureObject.test_signature_from_functionlike_object.<locals>.funclike.__call__      yy$1&11r!   r  r  r
  r
  rJ   r   NrJ   re   rf   rg   r'  r   rr   rs   rt   s   @r   funcliker
         
!2 2r!   r
  c                 <   < \        V R 4      '       d   R# S! V 4      # )_builtinmockTr   )rX   _orig_isdescs   &r   _isdescLTestSignatureObject.test_signature_from_functionlike_object.<locals>._isdesc  s    sN++$$r!   zinspect.ismethoddescriptorNr	  )rM   rw  from_callabler  r  r
  r   r   r   rD  rT   r
  rI   )	rU   r   r
  sig_funcsig_funclikeflr
  builtin_funcr
  s	   &       @r   'test_signature_from_functionlike_object;TestSignatureObject.test_signature_from_functionlike_object  sA   	D 		2 	2  $$2248((66x~F0(($80
 d^O+ 	! 11	%
 ]]  !=wGG#D>LW77EF(,L%OOG66|DEW..|<hG HGGGs   >B FF	c                   a R R/R lo ! V3R lR4      pV P                  \        \        P                  ! V4      4      R4       R# )r	  Tc                    R # r   r:   r	  s   &&$$*,r   r   CTestSignatureObject.test_signature_functionlike_class.<locals>.func  rs  r!   c                      <a  ] tR tRt o R t ZP                   t  ZP
                  t ZP                  t ZP                  t ZP                  tRt	V t
R# )GTestSignatureObject.test_signature_functionlike_class.<locals>.funclikei"  c                    R # r   r:   )rU   markers   &&r   r'  PTestSignatureObject.test_signature_functionlike_class.<locals>.funclike.__init__#  r  r!   r:   N)rJ   re   rf   rg   r'  r  r  r
  r
  rr   rs   )ru   r   s   @r   r
  r!
  "  s?      }}H}}H"22O,,L!00Nr!   r
  z(marker)N)r  r*  rM   r  )rU   r
  r   s   & @r   !test_signature_functionlike_class5TestSignatureObject.test_signature_functionlike_class  s;    	D 		1 	1 	W..x89:Fr!   c                    ! R  R4      pV P                  V P                  V! 4       P                  4      R\        34       V P                  V P                  V! 4       P                  4      R4       V P                  V P                  V4      R4       V P                  \        R4      ;_uu_ 4        V P                  V! 4       4       RRR4       R#   + '       g   i     R# ; i)c                   H   a  ] tR tRt o R tR	V 3R lR lltR tR tRtV t	R# )
:TestSignatureObject.test_signature_on_method.<locals>.Testi/  c                     R # r   r:   r  s   *r   r'  CTestSignatureObject.test_signature_on_method.<locals>.Test.__init__0  r  r!   c                    < V ^8  d   QhRS[ /# r	  r	  )r  ru   s   "r   r  GTestSignatureObject.test_signature_on_method.<locals>.Test.__annotate__2        # r!   c                    R # r   r:   rU   rZ  r[  s   &&&r   r  =TestSignatureObject.test_signature_on_method.<locals>.Test.m12  r  r!   c                     R # r   r:   r  s   *r   m2=TestSignatureObject.test_signature_on_method.<locals>.Test.m24  r  r!   c                    R # r   r:   r  s   $r   r   CTestSignatureObject.test_signature_on_method.<locals>.Test.__call__6  r  r!   r:   Nr  )
rJ   re   rf   rg   r'  r  r3
  r   rr   rs   rt   s   @r   rC  r)
  /  s#       r!   rC  zinvalid method signatureNrZ  ..r	  )r[  r   .r	  r	  )r  r  r  r   r3
  r  r4  rD  s   & r   test_signature_on_method,TestSignatureObject.test_signature_on_method.  s    	 	 			2F	 
 			2	  	-	  ##J0JKKNN46" LKKKs   0CC"	c                     ! R  R4      p\         P                  ! V! 4       P                  4      R 4       pV P                  V P	                  V4      R\
        34       R# )c                   6   a  ] tR tRt o RV 3R lR lltRtV tR# )ETestSignatureObject.test_signature_wrapped_bound_method.<locals>.TestiK  c                    < V ^8  d   QhRS[ /# r	  r	  )r  ru   s   "r   r  RTestSignatureObject.test_signature_wrapped_bound_method.<locals>.Test.__annotate__L  r.
  r!   c                    R # r   r:   r0
  s   &&&r   r  HTestSignatureObject.test_signature_wrapped_bound_method.<locals>.Test.m1L  r  r!   r:   Nr  r  rt   s   @r   rC  r=
  K  s       r!   rC  c                      R # r   r:   r	  s   *,r   m1dDTestSignatureObject.test_signature_wrapped_bound_method.<locals>.m1dN  rk  r!   Nr7
  )r   rl  r  r  r  r   )rU   rC  rC
  s   &  r   #test_signature_wrapped_bound_method7TestSignatureObject.test_signature_wrapped_bound_methodI  sV    	 	 
	#	 
$	,F	 r!   c                N   \         P                  '       g&   V P                  V P                  \        4      R4        ! R R4      pV! 4       P
                  pV P                  V P                  V4      R4       VP
                  pV P                  V P                  V4      R4       R# )r  c                   8   a  ] tR tRt o ]R^/R l4       tRtV tR# )?TestSignatureObject.test_signature_on_classmethod.<locals>.Testi\  r[  c                   R # r   r:   )r   rZ  r[  s   &&$r   r#   CTestSignatureObject.test_signature_on_classmethod.<locals>.Test.foo]  r   r!   r:   N)rJ   re   rf   rg   r   r#   rr   rs   rt   s   @r   rC  rI
  \  s     q  r!   rC  N))r  ..positional_only.))r8
  )r[  r   .r	  .)r   r
   r  r  r   r#   rU   rC  r	  s   &  r   test_signature_on_classmethod1TestSignatureObject.test_signature_on_classmethodV  s    +++T^^K8!"	 	
 vzz-	 
 xx-	 r!   c                N   \         P                  '       g&   V P                  V P                  \        4      R4        ! R R4      pV! 4       P
                  pV P                  V P                  V4      R4       VP
                  pV P                  V P                  V4      R4       R# )r  c                   0   a  ] tR tRt o ]R 4       tRtV tR# )@TestSignatureObject.test_signature_on_staticmethod.<locals>.Testis  c                   R # r   r:   r6  s   &$r   r#   DTestSignatureObject.test_signature_on_staticmethod.<locals>.Test.foot  r   r!   r:   N)rJ   re   rf   rg   r   r#   rr   rs   rt   s   @r   rC  rS
  s  s      r!   rC  NrL
  ))r   ..r	  )r2  ..r	  .)r   r
   r  r  r   r#   rN
  s   &  r   test_signature_on_staticmethod2TestSignatureObject.test_signature_on_staticmethodm  s    +++T^^L9!"	 	
 vzz-	 
 xx-	 r!   c                   ^ RI HpHp R pV P                  V P	                  V! V4      4      R4       V P                  \        R4      ;_uu_ 4        \        P                  ! V! V^4      4       RRR4       V P                  \        R4      ;_uu_ 4        \        P                  ! V! V^R7      4       RRR4       R pV P                  V P	                  V! V4      4      R!4       V P                  V P	                  V! V^4      4      R"4       V P                  V P	                  V! V^^R
7      4      R#4       V P                  V P	                  V! V^^R7      4      R$4       V P                  V P	                  V! V^ ^^R7      4      R%4       V P                  V P	                  V! V^R7      4      R&4       V P                  V P	                  V! W2^4      4      R'4       V P                  V P	                  V! W2^^R
7      4      R(4       V P                  V P	                  V! V\        P                  P                  ^^R
7      4      R)4       R pV P                  V P	                  V! V^4      4      R*4       V P                  V P	                  V! V^R7      4      R+4       V P                  V P	                  V! V^^^4      4      R*4       V P                  V P	                  V! V^^^RR7      4      R*4       V P                  V P	                  V! V^^^^^ R7      4      R,4       V P                  V P	                  V! V^ R7      4      R-4       V P                  V P	                  V! V^ ^R7      4      R-4       V! W2V^^ ^R7      pV P                  V P	                  V4      R.4       R R lp\        P                  ! V4      ;qSn        V P                  V P	                  V! V! V^4      4      4      R R	R\        R33^*34       V P                  V P	                  V! V! V^4      ^4      4      R	R\        R33^*34       R pV! V! V^
R7      ^R7      pV P                  V P	                  V4      R/4       V P                  V! 4       ^4       R pV! V! V^^R7      ^R7      pV P                  V P	                  V4      R04       V P                  V! ^
R
7      R14       R pV! V! V^^R7      ^
^R7      pV P                  V P	                  V4      R24       \        P                  ! V4      P                  ^^R7      pV P                  V! VP                  / VP                  B R34       R4R lpV! V^R
7      p\        P                  ! V4      P                  ^R7      pV P                  V! VP                  / VP                  B R54       \        P                  ! V4      P                  ^^4      pV P                  V! VP                  / VP                  B R64       \        P                  ! V4      P                  ^^R7      pV P                  V! VP                  / VP                  B R64       \        P                  ! V4      P                  ^R7      pV P                  V! VP                  / VP                  B R74       V! V^
^R7      p\        P                  ! V4      P                  ^4      pV P                  V! VP                  / VP                  B R84       R p\        P                  ! V4      pV P                  \!        V4      R4       V P                  V P	                  V! V^4      4      R94       V P                  V P	                  V! V^^4      4      R:4       V P                  V P	                  V! V^^^4      4      R;4       V P                  V P	                  V! V^^^R
7      4      R<4       V P                  V P	                  V! V^^R
7      4      R=4       V! Wb^^ ^R7      pV P                  V P	                  V4      R>4       R?R lpV! Wb^^ ^R7      pV P                  V P	                  V4      R@4       V! Wb^V^4      pV P                  V P	                  V4      RA4       R#   + '       g   i     EL@; i  + '       g   i     EL; i)Br   )r   Placeholderc                      R # r   r:   r:   r!   r   rq  ;TestSignatureObject.test_signature_on_partial.<locals>.test  rs  r!   .has incorrect argumentsNr  c                    R # r   r:   r\  s   &&$$r   rq  r\
    rs  r!   r	  r&   r&   )rT  r&   c                    R # r   r:   )r$   rT  r   r  s   &$*,r   rq  r\
    rs  r!   T)rq  )rq  rT  rT  )rT  rq  c                (    V ^8  d   QhR\         R^*/# )rx   r&   r~  r	  )r  s   "r   r  CTestSignatureObject.test_signature_on_partial.<locals>.__annotate__  s     	 	 	 	r!   c                     R # r   r:   r,  s   &&&r   rq  r\
    rs  r!   c                     V # r   r:   r  s   &r   r#   :TestSignatureObject.test_signature_on_partial.<locals>.foo  s    Hr!   c                 
    WV3# r   r:   r,  s   &&&r   r#   rf
        7Nr!   c                
    WW#3# r   r:   r\  s   &&&$r   r#   rf
  )  s    :r!   )r  r&   )rT  r  rS  c                 
    WV3# r   r:   r,  s   &&&r   r#   rf
  6  rh
  r!   c                    R # r   r:   )r$   rT  r&   r  r  s   ""&&,r   r#   rf
  K  rs  r!   z(a, b, /, c, d, **kwargs))r&   r  c                    R # r   r:   r\  s   ""&&r   r#   rf
  y  rs  r!   r~	  rT  ..r	  ))r	  rm
  r&   ..r	  r  ..r	  .))rm
  rn
  ro
  .))rm
  r&   rx   .r	  ro
  .))r	  rT  r   .r	  rp
  ro
  .))rq
  rp
  ro
  .))r$   r   .r	  rT  ..r	  rn
  ro
  .))r$   ..rM
  rn
  ro
  .))rt
  rp
  ro
  .))rp
  ro
  .))r	  rs
  r	  .))rr
  rs
  r	  .))r	  rT  r   .r	  r	  .))r	  r	  ru
  r	  .))rt
  r	  ru
  r	  .)))r$      .r	  .)))rT     .r	  rn
  .)r   rw
  r	  ))r	  )rT  r	  .r	  )r&   rv
  .r	  )r  rw
  .r	  .)      rv
  rw
  r]  )ry
  rx      )ry
  r  rz
  )r   r  rz
  )r  r	  rv
  ))rT  ..rM
  r&   ..r	  r  ..r	  r	  .))r|
  r}
  r	  .))r}
  r	  .))r&   r  .r	  ro
  r	  .))r{
  r~
  ro
  r	  .))rt
  r&   r   .r	  r  r   .r	  r	  .)r   r   rx   r  ))rt
  r
  r
  .))rt
  )r&   ..rM
  .)r   r   rZ
  r  r  r  r4  rM   r   r   ANYrx  r   bindr   r  r*  )	rU   r   rZ
  rq  r3   rB	  r#   _foobas	   &        r   test_signature_on_partial-TestSignatureObject.test_signature_on_partial  s   2	 	6	B##J0IJJgdA./ K ##J0IJJgda01 K	 	6	  	a(89	  	a1(=>	  	Q(?@	  	a1(BC	  	(:;	  	1(EF	  	1(JK	  	hmm6G6Ga(PQ	 
	 	a(89	  	(:;	  	aA(>?	  	aAD(IJ	  	aAA(KL	  	(:;	  	(BC	  D{AC*	 	 $+#4#4T#:: a0@(ABCc+BCE	
 	a0@!(DEc+BCE		wsb)R0-	 
 	$	wsA,3-	  	[1	wsbB/2<-	  t$))C2)6rww4"))46GH	sb!t$))B)/rww4"))4kBt$))"b1rww4"))4lCt$))")3rww4"))4lCt$))B)/rww4"))4kBtrR(t$))"-rww4"))4lC	$S#>?Q8	 	Q(:;	 	Q1(=>	
 	QQ(?@	 	Q!(<=	 Ca12*	 	 Ca12*	  Caa8*	 u KJJ KJJs   b&b:&b7	:c	c                  a ^ RI Ho  ! V3R lR4      pV P                  \        R4      ;_uu_ 4        \        P
                  ! VP                  4       RRR4        ! V3R lR4      pV P                  V P                  VP                  RR7      R
4       V P                  V P                  V! 4       P                  RR7      R4       V P                  V P                  VP                  RR7      R4       V P                  V P                  V! 4       P                  RR7      R4        ! V3R	 lR4      pV P                  V P                  VP                  RR7      R4       R#   + '       g   i     EL; i)r   )r   c                   :   <a  ] tR tRt o R t Z! ]4      tRtV tR# )ATestSignatureObject.test_signature_on_partialmethod.<locals>.Spami  c                     R # r   r:   r:   r!   r   rq  FTestSignatureObject.test_signature_on_partialmethod.<locals>.Spam.test  r  r!   r:   N)rJ   re   rf   rg   rq  ri  rr   rs   ru   r   s   @r   Spamr
    s     %Cr!   r
  r]
  Nc                   x   <a  ] tR tRt o V 3R lR lt Z! ]^R7      t Z! ]]P                  ^^R7      tRt	V t
R# )r
  i  c                   < V ^8  d   QhRR/# )rx   r~  r   r:   )r  ru   s   "r   r  NTestSignatureObject.test_signature_on_partialmethod.<locals>.Spam.__annotate__  s       r!   c                   R # r   r:   )itr$   rT  r&   s   &&&$r   rq  r
    r  r!   r_
  r:   N)rJ   re   rf   rg   rq  ri  r   rZ
  r%   rr   rs   r
  s   @r   r
  r
    s1      *Ci&;&;Q!DCr!   Feval_strc                   H   <a  ] tR tRt o V 3R lR lt Z! ]^4      tRtV tR# )r
  i  c                   < V ^8  d   QhRR/# )rx   rU   annor:   )r  ru   s   "r   r  r
    s      6 r!   c                    R # r   r:   rn  s   &&r   rq  r
    r  r!   r:   N)rJ   re   rf   rg   rq  r  rr   rs   r
  s   @r   r
  r
    s       dA&Ar!   )))r
  ..r	  r	  rm
  r&   r   .r	  r   ))r	  rm
  r
  r   )))r
  ..rM
  rt
  r
  r   ))rt
  r
  r   )))rU   .r
  r	  .)
r   r   r  r4  rM   r  ri  r  r%   r  )rU   r
  r   s   & @r   test_signature_on_partialmethod3TestSignatureObject.test_signature_on_partialmethod  s.   +	& 	&
 ##J0IJJdhh' K	E 	E 	5A"	# 	

UC"	# 	5A"	#
 	

UC"	#
	' 	' 	?	 O KJJs   !E##E4	c                x    R  pRVn         V P                  \        \        P                  ! V4      4      R4       R# )c                     R # r   r:   r  s   &r   r#   ETestSignatureObject.test_signature_on_fake_partialmethod.<locals>.foo  r  r!   r   z(a)N)__partialmethod__r  r*  rM   r  rU   r#   s   & r   $test_signature_on_fake_partialmethod8TestSignatureObject.test_signature_on_fake_partialmethod  s-     &W..s34e<r!   c                  a R  o ! V3R lR4      pS! V! 4       P                   4      pV P                  V P                  VP                   4      R	4       V P                  V P                  V! 4       P                   4      R
4       V P                  V P                  VP                   RR7      R4       V P                  V P                  V4      R
4       R o ! V3R lR4      pV P                  V P                  VP                  4      R
4       V P                  V P                  V! 4       P                  4      R4       R pVP                  Vn        V P                  V P                  V4      R
4       R# )c                 L   a  \         P                  ! S 4      R  V 3R ll4       pV# )c                $    V ^8  d   QhR\         /# r	  r	  )r  s   "r   r  XTestSignatureObject.test_signature_on_decorated.<locals>.decorator.<locals>.__annotate__  r	  r!   c                     < S! V / VB # r   r:   r	  s   *,r   r	  STestSignatureObject.test_signature_on_decorated.<locals>.decorator.<locals>.wrapper  r	  r!   r	  r	  s   f r   r	  BTestSignatureObject.test_signature_on_decorated.<locals>.decorator  r	  r!   c                   4   <a  ] tR tRt o  ZR 4       tRtV tR# )<TestSignatureObject.test_signature_on_decorated.<locals>.Fooi  c                    R # r   r:   rU   r$   rT  s   &&&r   r%   @TestSignatureObject.test_signature_on_decorated.<locals>.Foo.bar  r   r!   r:   N)rJ   re   rf   rg   r%   rr   rs   ru   r	  s   @r   rB  r
          r!   rB  Fr	  c                    a  \         P                  ! S 4      R  V 3R ll4       p\        P                  ! S 4      p\	        VP
                  P                  4       4      R,          pVP                  VR7      Vn        V# )c                $    V ^8  d   QhR\         /# r	  r	  )r  s   "r   r  r
    s     1 1C 1r!   c                     < S! ^*.V O5/ VB # rU	  r:   r	  s   *,r   r	  r
    s    B0000r!   r  rt  )	r   rl  rM   r  r>	  r1   r?	  rV	  rx  )r   r	  rB	  
new_paramss   f   r   r	  r
    sb    __T"1 #1##D)Cs~~4467;J$'KK:K$FG!Nr!   c                   4   <a  ] tR tRt o  ZR 4       tRtV tR# )r
  i  c                    R # r   r:   r
  s   &&&r   r   ETestSignatureObject.test_signature_on_decorated.<locals>.Foo.__call__  r   r!   r:   Nr   r
  s   @r   rB  r
    r
  r!   c                      R # r   r:   r:   r!   r   wrapped_foo_callITestSignatureObject.test_signature_on_decorated.<locals>.wrapped_foo_call  rs  r!   N))rU   ..r	  r	  rm
  .)r	  rm
  .r	  )rm
  .)r%   r  r  r   __wrapped__)rU   rB  r%   r
  r	  s   &   @r   test_signature_on_decorated/TestSignatureObject.test_signature_on_decorated  s>   		 	
 		"0	  			2	 
 	F	  	,	 		 	
 	5	 
 	7	 
	'*||$(89	 r!   c           
       a  ! R  R4      pV P                  V P                  V4      R*4        ! R R\        4      p ! R RVR7      pV P                  V P                  V4      R*4       V P                  R4      ;_uu_ 4         ! R R\        4      p ! R	 RVR7      pV P                  V! ^4      ^4       V P                  V P                  V4      R*4       R
R
R
4       V P                  R4      ;_uu_ 4         ! R R\        4      p ! R RVR7      pV P                  V! ^4      ^4       V P                  V P                  V4      R*4       R
R
R
4       V P                  R4      ;_uu_ 4         ! R R4      o ! V3R lR\        4      p ! R RVR7      pV P                  V! ^4      ^4       V P                  V P                  V4      R*4       R
R
R
4       V P                  R4      ;_uu_ 4         ! R R\        4      p ! R RVR7      pV P                  V! ^4      ^V^34       V P                  V P                  V4      R+4       R
R
R
4       V P                  R4      ;_uu_ 4         ! R R\        4      p ! R RVR7      pV P                  V! ^4      R,4       V P                  V P                  V4      R*4       R
R
R
4       V P                  R4      ;_uu_ 4         ! R R\        4      p ! R RVR7      pV P                  V! RR.4      R4       V P	                  \
        4      ;_uu_ 4        V P                  V P                  V4      V P                  RP                  4      4       R
R
R
4       R
R
R
4       V P                  R4      ;_uu_ 4         ! R  R\        4      p ! R! RVR7      pV P                  V! ^4      ^4       V P                  V! ^^4      ^4       \        P                  '       ga   V P	                  \
        4      ;_uu_ 4        V P                  V P                  V4      V P                  ^ P                  4      4       R
R
R
4       R
R
R
4        ! R" R\        4      p ! R# RVR7      pV P                  V P                  V4      R+4       V P                  V P                  V4      R-4        ! R$ R%\        4      p ! R& R\        VR7      p ! R' RVR7      pV P                  V P                  V4      R-4       V P                  V P                  V4      R.4       V P                  V P                  V4      R+4        ! R( R\        4      p ! R) RVR7      pV P                  V P                  V4      R/4       R
#   + '       g   i     EL; i  + '       g   i     EL\; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL&; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i)0c                   &   a  ] tR tRt o R tRtV tR# )6TestSignatureObject.test_signature_on_class.<locals>.Ci  c                    R # r   r:   rU   r$   s   &&r   r'  ?TestSignatureObject.test_signature_on_class.<locals>.C.__init__  r  r!   r:   NrJ   re   rf   rg   r'  rr   rs   rt   s   @r   rW  r
    r   r!   rW  r$   c                   &   a  ] tR tRt o R tRtV tR# )7TestSignatureObject.test_signature_on_class.<locals>.CMi  c                    R # r   r:   r   r$   s   &&r   r   @TestSignatureObject.test_signature_on_class.<locals>.CM.__call__  r  r!   r:   Nr   rt   s   @r   r  r
    r   r!   r  c                   &   a  ] tR tRt o R tRtV tR# )r
  i  c                    R # r   r:   rU   rT  s   &&r   r'  r
    r  r!   r:   Nr
  rt   s   @r   rW  r
    r   r!   rk  r   c                   0   a  ] tR tRt o ]R 4       tRtV tR# )r
  i  c                    V# r   r:   r
  s   &&r   r   r
         Hr!   r:   NrJ   re   rf   rg   r   r   rr   rs   rt   s   @r   r  r
          r!   c                   &   a  ] tR tRt o R tRtV tR# )r
  i#  c                    R # r   r:   r
  s   &&r   r'  r
  $      r!   r:   Nr
  rt   s   @r   rW  r
  #        r!   Nr   c                   0   a  ] tR tRt o ]R 4       tRtV tR# )r
  i-  c                    V # r   r:   r  s   &r   r   r
  .  r
  r!   r:   NrJ   re   rf   rg   r   r   rr   rs   rt   s   @r   r  r
  -        r!   c                   &   a  ] tR tRt o R tRtV tR# )r
  i1  c                    R # r   r:   r
  s   &&r   r'  r
  2  r
  r!   r:   Nr
  rt   s   @r   rW  r
  1  r
  r!   
MethodTypec                   &   a  ] tR tRt o R tRtV tR# )6TestSignatureObject.test_signature_on_class.<locals>.Ai;  c                    V# r   r:   r
  s   &&r   call;TestSignatureObject.test_signature_on_class.<locals>.A.call<      Hr!   r:   NrJ   re   rf   rg   r
  rr   rs   rt   s   @r   r=  r
  ;        r!   r=  c                   <   < ] tR tRt Z ! 4       P                  tRtR# )r
  i>  r:   NrJ   re   rf   rg   r
  r   rr   r=  s   r   r  r
  >      388r!   c                   &   a  ] tR tRt o R tRtV tR# )r
  i@  c                    R # r   r:   r
  s   &&r   r'  r
  A  r
  r!   r:   Nr
  rt   s   @r   rW  r
  @  r
  r!   r   c                   >    ] tR tRt]P
                  ! R ^4      tRtR# )r
  iJ  c                
    WV3# r   r:   r\  r$   rT  s   &&&r   r   @TestSignatureObject.test_signature_on_class.<locals>.CM.<lambda>K      aAYr!   r:   NrJ   re   rf   rg   r   r   r   rr   r:   r!   r   r  r
  J      $,,-FJr!   c                   &   a  ] tR tRt o R tRtV tR# )r
  iL  c                    R # r   r:   )rU   r&   s   &&r   r'  r
  M  r
  r!   r:   Nr
  rt   s   @r   rW  r
  L  r
  r!   r   c                   >    ] tR tRt]P
                  ! R ^4      tRtR# )r
  iV  c                    W3# r   r:   rU   r\  r$   s   &&&r   r   r
  W      qfr!   r:   NrJ   re   rf   rg   r   r   r   rr   r:   r!   r   r  r
  V      $223LaPr!   c                   &   a  ] tR tRt o R tRtV tR# )r
  iX  c                    R # r   r:   r
  s   &&r   r'  r
  Y  r
  r!   r:   Nr
  rt   s   @r   rW  r
  X  r
  r!   BuiltinMethodTypec                   .    ] tR tRtRP                  tRtR# )r
  ib  :r:   NrJ   re   rf   rg   r/   r   rr   r:   r!   r   r  r
  b      88r!   c                   &   a  ] tR tRt o R tRtV tR# )r
  id  c                    R # r   r:   r
  s   &&r   r'  r
  e  r
  r!   r:   Nr
  rt   s   @r   rW  r
  d  r
  r!   bca:bcr  MethodWrapperTypec                   .    ] tR tRt^P                  tRtR# )r
  in  r:   NrJ   re   rf   rg   __pow__r   rr   r:   r!   r   r  r
  n      ;;r!   c                   &   a  ] tR tRt o R tRtV tR# )r
  ip  c                    R # r   r:   r
  s   &&r   r'  r
  q  r
  r!   r:   Nr
  rt   s   @r   rW  r
  p  r
  r!   c                   :   a a ] tR tRt oR^/V 3R lltRtVtV ;t# )r
  i{  r#   c               $   < \         SV `  WW#4      # r   r  r  mclsr  basesdctr#   r  s   &&&&$r   r  ?TestSignatureObject.test_signature_on_class.<locals>.CM.__new__|      wt5>>r!   r:   rJ   re   rf   rg   r  rr   rs   r  r  s   @@r   r  r
  {       ?q ? ?r!   c                   &   a  ] tR tRt o R tRtV tR# )r
  i~  c                    R # r   r:   r
  s   &&r   r'  r
    r  r!   r:   Nr
  rt   s   @r   rW  r
  ~  r   r!   c                   @   a a ] tR tRt oR^/V 3R lltR tRtVtV ;t# )8TestSignatureObject.test_signature_on_class.<locals>.CMMi  r#   c               $   < \         SV `  WW#4      # r   r  r  s   &&&&$r   r  @TestSignatureObject.test_signature_on_class.<locals>.CMM.__new__  r  r!   c                    \        WV4      # r   r   )r   nmbsdts   &&&&r   r   ATestSignatureObject.test_signature_on_class.<locals>.CMM.__call__  s    BB''r!   r:   )	rJ   re   rf   rg   r  r   rr   rs   r  r  s   @@r   CMMr    s     ?q ?( (r!   r%  c                   :   a a ] tR tRt oR^/V 3R lltRtVtV ;t# )r
  i  r%   c               $   < \         SV `  WW#4      # r   r  )r  r  r  r  r%   r  s   &&&&$r   r  r    r  r!   r:   r  r  s   @@r   r  r
    r  r!   c                   &   a  ] tR tRt o R tRtV tR# )r
  i  c                    R # r   r:   r
  s   &&r   r'  r
    r  r!   r:   Nr
  rt   s   @r   rW  r
    r   r!   c                   :   a a ] tR tRt oR^/V 3R lltRtVtV ;t# )r
  i  r%   c               $   < \         SV `  WV4      # r   r  r'  )r   r  r  r  r%   r  s   &&&&$r   r'  @TestSignatureObject.test_signature_on_class.<locals>.CM.__init__  s    w'S99r!   r:   rJ   re   rf   rg   r'  rr   rs   r  r  s   @@r   r  r
    s     :q : :r!   c                   &   a  ] tR tRt o R tRtV tR# )r
  i  c                    R # r   r:   r
  s   &&r   r'  r
    r  r!   r:   Nr
  rt   s   @r   rW  r
    r   r!   )r	  .r
  rx   r   ))r  ..r	  r  ..r	  r  ..r	  )r#   r   .r	  .)))r!  ..r	  )r"  ..r	  )r#  ..r	  .))r3  r4  r5  )r%   rx   .r	  .)
r  r  r   r  rj  AssertionErrorr/   r   r
   r  )rU   rW  r  r%  r=  s   &   @r   test_signature_on_class+TestSignatureObject.test_signature_on_class
  s   	 	 	*	 	 		" 	 	*	  \\-((T b  QqT1%T^^A.!" ) \\.))T b  QqT1%T^^A.!" * \\,'' $T $b  QqT1%T^^A.!" ( \\)$$KT Kb  QqTAq!9-T^^A.!" % \\/**QT Qb  QqT6*T^^A.!" + \\-..$T $b  QT{^V4"">22  !2DNN2774KL 3 / \\-..'T 'b  QqT1%Qq!Wa(///&&~66$$T^^A%6{{8ST 7 /	? 	?	" 	 	*	  	+	 	($ 	(
	? 	?	" 	 	,	  	+	  	*	 	: 	:	" 	 	+	 g )(( *)) ('' %$$ +*** 322 /... 766 /..s   AV8AV .A"V41AW*AW AX3;W0	.XB X,;X	X,V	 V1	4W	W	W-	0X;	XX	X)#	X,,X=	c                  a R  o ! V3R lR4      pV P                  V P                  V4      R4       V P                  V P                  VP                  4      R	4        ! V3R lR4      pR
pV P                  V P                  V4      R4       V P                  V P                  VP                  4      V4       V P                  V P                  VRR7      V4       V P                  V P                  VP                  RR7      V4       R# )c                 F   a  \         P                  ! S 4      V 3R  l4       pV# )c                     < S! V / VB # r   r:   r	  s   *,r   r  aTestSignatureObject.test_signature_on_class_with_decorated_new.<locals>.identity.<locals>.wrapped  r	  r!   r	  )r   r  s   f r   identityPTestSignatureObject.test_signature_on_class_with_decorated_new.<locals>.identity  s#    __T"- #-Nr!   c                   4   <a  ] tR tRt o  ZR 4       tRtV tR# )KTestSignatureObject.test_signature_on_class_with_decorated_new.<locals>.Fooi  c                    R # r   r:   )r   r$   rT  s   &&&r   r  STestSignatureObject.test_signature_on_class_with_decorated_new.<locals>.Foo.__new__  r   r!   r:   NrJ   re   rf   rg   r  rr   rs   )ru   r=  s   @r   rB  r@    s      r!   rB  c                   >   < ] tR tRt Z ! ]P
                  4      tRtR# )KTestSignatureObject.test_signature_on_class_with_decorated_new.<locals>.Bari  r:   N)rJ   re   rf   rg   r   r  rr   )r=  s   r   r  rE    s    v~~.Gr!   r  Fr	  Nr
  ))rV
  r	  rm
  .r	  r~	  )r  r  r  )rU   rB  r  varargs_signaturer=  s   &   @r   *test_signature_on_class_with_decorated_new>TestSignatureObject.test_signature_on_class_with_decorated_new  s    		 	
 	,	 
 	4	 	/ 	/
 	,i846GHEB*	,EJ*	,r!   c                  a  ! R  R4      pV! ^4       V P                  V P                  V4      R4       V P                  R4      ;_uu_ 4         ! R R4      pV! ^4       V P                  V P                  V4      R4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV! ^4       V P                  V P                  V4      R4       RRR4       V P                  R4      ;_uu_ 4         ! R R	4      o ! V3R
 lR4      pV! ^4       V P                  V P                  V4      R4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV! ^4       V P                  V P                  V4      R4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! ^4      P                  R4       V P                  V P                  V4      R4       RRR4       R#   + '       g   i     EL; i  + '       g   i     ELM; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)c                   &   a  ] tR tRt o R tRtV tR# )@TestSignatureObject.test_signature_on_class_with_init.<locals>.Ci  c                    R # r   r:   r
  s   &&r   r'  ITestSignatureObject.test_signature_on_class_with_init.<locals>.C.__init__  r  r!   r:   Nr
  rt   s   @r   rW  rK    r   r!   rW  r   c                   0   a  ] tR tRt o ]R 4       tRtV tR# )rK  i  c                    R # r   r:   )r   rT  s   &&r   r'  rM        r!   r:   N)rJ   re   rf   rg   r   r'  rr   rs   rt   s   @r   rW  rK          r!   Nr   c                   0   a  ] tR tRt o ]R 4       tRtV tR# )rK  i  c                    R # r   r:   ra
  s   &r   r'  rM    rP  r!   r:   N)rJ   re   rf   rg   r   r'  rr   rs   rt   s   @r   rW  rK          r!   r
  c                   &   a  ] tR tRt o R tRtV tR# )@TestSignatureObject.test_signature_on_class_with_init.<locals>.Ai   c                    R # r   r:   r
  s   &&r   r
  ETestSignatureObject.test_signature_on_class_with_init.<locals>.A.call  r
  r!   r:   Nr
  rt   s   @r   r=  rV     r
  r!   r=  c                   <   < ] tR tRt Z ! 4       P                  tRtR# )rK  i  r:   N)rJ   re   rf   rg   r
  r'  rr   r
  s   r   rW  rK    r
  r!   r   c                   >    ] tR tRt]P
                  ! R ^4      tRtR# )rK  i  c                    R # r   r:   r
  s   &&&r   r   ITestSignatureObject.test_signature_on_class_with_init.<locals>.C.<lambda>  s    Tr!   r:   N)rJ   re   rf   rg   r   r   r'  rr   r:   r!   r   rW  rK    s    $,,-A1Er!   r   c                   L   a  ] tR tRt o R t]P                  ! ]^4      tRtV t	R# )rK  i  c                    W3V n         R # r   r  r
  s   &&&r   _initFTestSignatureObject.test_signature_on_class_with_init.<locals>.C._init  s    VDFr!   r  N)
rJ   re   rf   rg   r_  r   r   r'  rr   rs   rt   s   @r   rW  rK    s     $$225!<r!   r
  r1  r2  )r  r  r  r$   rU   rW  r=  s   & @r   !test_signature_on_class_with_init5TestSignatureObject.test_signature_on_class_with_init  s   	 	 	
!*	 \\-(( 
 aDT^^A.!" ) \\.)) 
 aDT^^A.!" * \\,'' $ $ aDT^^A.!" ( \\)$$F F aDT^^A.!" % \\/**= =
 QqTVVV,T^^A.!" +*W )(( *)) (' %$ +**s>   4H#4H8AH/4I/AIH	H,	/H?	I	I&	c                	  a V P                  R 4      ;_uu_ 4         ! R R4      pV P                  V! ^4      ^4       V P                  V P                  V4      R4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! ^4      ^4       V P                  V P                  V4      R4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! ^4      ^4       V P                  V P                  V4      R4       RRR4       V P                  R4      ;_uu_ 4         ! R	 R
4      o ! V3R lR4      pV P                  V! ^4      ^4       V P                  V P                  V4      R4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! ^4      R4       V P                  V P                  V4      R4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! ^4      R4       V P                  V P                  V4      R4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! 4       R4       V P                  \        V P                  V4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! 4       V\
        ,          4       V P                  \        V P                  V4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! V4      R4       V P                  V P                  V4      V P                  VP                  4      4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! \
        4      V\
        ,          4       V P                  \        V P                  V4       RRR4       R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL<; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL<; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL'; i  + '       g   i     R# ; i)FunctionTypec                   &   a  ] tR tRt o R tRtV tR# )?TestSignatureObject.test_signature_on_class_with_new.<locals>.Ci!  c                    V# r   r:   r
  s   &&r   r  GTestSignatureObject.test_signature_on_class_with_new.<locals>.C.__new__"  r
  r!   r:   NrC  rt   s   @r   rW  rg  !  r
  r!   rW  Nr   c                   0   a  ] tR tRt o ]R 4       tRtV tR# )rg  i+  c                    V# r   r:   )r   cls2r$   s   &&&r   r  ri  ,  r
  r!   r:   N)rJ   re   rf   rg   r   r  rr   rs   rt   s   @r   rW  rg  +  r
  r!   r   c                   0   a  ] tR tRt o ]R 4       tRtV tR# )rg  i6  c                    V# r   r:   r
  s   &&r   r  ri  7  r
  r!   r:   N)rJ   re   rf   rg   r   r  rr   rs   rt   s   @r   rW  rg  6  r
  r!   r
  c                   &   a  ] tR tRt o R tRtV tR# )?TestSignatureObject.test_signature_on_class_with_new.<locals>.AiA  c                    V# r   r:   )rU   r   r$   s   &&&r   r
  DTestSignatureObject.test_signature_on_class_with_new.<locals>.A.callB  r
  r!   r:   Nr
  rt   s   @r   r=  rp  A  r
  r!   r=  c                   <   < ] tR tRt Z ! 4       P                  tRtR# )rg  iD  r:   N)rJ   re   rf   rg   r
  r  rr   r
  s   r   rW  rg  D  s    #((r!   r   c                   >    ] tR tRt]P
                  ! R ^4      tRtR# )rg  iM  c                    W3# r   r:   )r\  r   r$   s   &&&r   r   HTestSignatureObject.test_signature_on_class_with_new.<locals>.C.<lambda>N  s    qfr!   r:   N)rJ   re   rf   rg   r   r   r  rr   r:   r!   r   rW  rg  M  s    #++,DaHr!   r   c                   >    ] tR tRt]P
                  ! R ^4      tRtR# )rg  iV  c                    W3# r   r:   )r   r\  r$   s   &&&r   r   rv  W  s    QFr!   r:   N)rJ   re   rf   rg   r   r   r  rr   r:   r!   r   rW  rg  V  s    #112JANr!   r
  c                   .    ] tR tRt]P
                  tRtR# )rg  i_  r:   N)rJ   re   rf   rg   r*  __subclasscheck__r  rr   r:   r!   r   rW  rg  _  s    //r!   Fr  c                   N    ] tR tRt]P
                  P                  ]]4      tRt	R# )rg  ih  r:   N)
rJ   re   rf   rg   r   __or__r   r   r  rr   r:   r!   r   rW  rg  h  s    ++--c48r!   MethodDescriptorTypec                   <    ] tR tRt]P
                  R,          tRtR# )rg  is  rz  r:   N)rJ   re   rf   rg   r   r  r  rr   r:   r!   r   rW  rg  s  s    --(;<r!   TWrapperDescriptorTypec                   .    ] tR tRt]P
                  tRtR# )rg  iz  r:   N)rJ   re   rf   rg   r   r|  r  rr   r:   r!   r   rW  rg  z  s    ++r!   r1  r2  )r  r  r  rj  r4  r   rz  ra  s   & @r    test_signature_on_class_with_new4TestSignatureObject.test_signature_on_class_with_new  s   \\.))  QqT1%T^^A.!" * \\-(( 
 QqT1%T^^A.!" ) \\.)) 
 QqT1%T^^A.!" * \\,'' # # QqT1%T^^A.!" ( \\)$$I I QqT6*T^^A.!" % \\/**O O QqT6*T^^A.!" + \\-..0 0 QS%( j$..!< / \\-..9 9 QS!c'* j$..!< / \\011= = QqT4(T^^A.q?R?R0ST 2 \\122& & QsVQW- j$..!< 32s *)) )(( *)) ('' %$$ +** /.. /.. 211 322s   AP4 AQ%AQ
AQ0<AR!ARAR,*AS ASAS(4Q	Q	Q-	0R	R	R)	,R=	 S	S%	(S9	c                "    ! R  R4      p ! R RV4      p ! R RV4      p ! R RV4      pV P                  V P                  V4      R	4       V P                  V P                  V4      R
4       V P                  V P                  V4      R4       R# )c                   *   a  ] tR tRt o RR ltRtV tR# )9TestSignatureObject.test_signature_on_subclass.<locals>.Ai  c                ,    \         P                  V 4      # r   r   r  )r   r$   r   r  s   &&*,r   r  ATestSignatureObject.test_signature_on_subclass.<locals>.A.__new__      ~~c**r!   r:   Nr  rC  rt   s   @r   r=  r         + +r!   r=  c                   &   a  ] tR tRt o R tRtV tR# )9TestSignatureObject.test_signature_on_subclass.<locals>.Bi  c                    R # r   r:   r
  s   &&r   r'  BTestSignatureObject.test_signature_on_subclass.<locals>.B.__init__  r  r!   r:   Nr
  rt   s   @r   r<  r    r   r!   r<  c                   *   a  ] tR tRt o RR ltRtV tR# )9TestSignatureObject.test_signature_on_subclass.<locals>.Ci  c                ,    \         P                  V 4      # r   r  )r   r$   rT  r   r  s   &&&*,r   r  ATestSignatureObject.test_signature_on_subclass.<locals>.C.__new__  r  r!   r:   Nr   rx   rC  rt   s   @r   rW  r    r  r!   rW  c                       ] tR tRtRtR# )9TestSignatureObject.test_signature_on_subclass.<locals>.Di  r:   Nr  r:   r!   r   rB  r    r  r!   rB  Nr
  ))r$   r   .r	  )rT  rx   .r	  r	  r	  .))r  r	  r	  .r	  )rU   r=  r<  rW  rB  s   &    r   test_signature_on_subclass.TestSignatureObject.test_signature_on_subclass  s    	+ 	+	 		+ 	+	 	 	*	  	*	  	*	 r!   c                    ^ RI HpHp V! R4      p ! R RW,          4      pV P                  V P	                  V4      RR\
        R33R34       R# )	r   )GenericTypeVarr  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )ATestSignatureObject.test_signature_on_generic_subclass.<locals>.Ai  c                $   < V ^8  d   QhRS[ RR/# )rx   r$   r~  Nr	  )r  ru   s   "r   r  NTestSignatureObject.test_signature_on_generic_subclass.<locals>.A.__annotate__  s      S T r!   c                   R # r   r:   r
  s   &$r   r'  JTestSignatureObject.test_signature_on_generic_subclass.<locals>.A.__init__  r  r!   r:   Nr
  rt   s   @r   r=  r    s      r!   r=  r$   .r	  N)typingr  r  r  r  r   )rU   r  r  r  r=  s   &    r   "test_signature_on_generic_subclass6TestSignatureObject.test_signature_on_generic_subclass  sN    +CL	
 	 	*c>:< 	!r!   c                2    ! R  R4      pV P                  \        \        P                  ! V4      4      R4        ! R RV4      pV P                  \        \        P                  ! V4      4      R4        ! R R\        4      p ! R RV4      pV P                  V! RR
/ 4      P
                  R4       V P                  \        R4      ;_uu_ 4        V P                  \        P                  ! V4      R	4       R	R	R	4       V P                  V! RR
/ 4      P
                  R4       V P                  \        R4      ;_uu_ 4        V P                  \        P                  ! V4      R	4       R	R	R	4       R	#   + '       g   i     L; i  + '       g   i     R	# ; i)c                       ] tR tRtRtR# )CTestSignatureObject.test_signature_on_class_without_init.<locals>.Ci  r:   Nr  r:   r!   r   rW  r    r  r!   rW  rE	  c                       ] tR tRtRtR# )CTestSignatureObject.test_signature_on_class_without_init.<locals>.Di  r:   Nr  r:   r!   r   rB  r    r=  r!   rB  c                       ] tR tRtRtR# )r  i  r:   Nr  r:   r!   r   rW  r    rC  r!   c                       ] tR tRtRtR# )r  i  r:   Nr  r:   r!   r   rB  r    r=  r!   r=  zcallable.*is not supportedNr:   )r  r*  rM   r  r   rJ   r  r4  )rU   rW  rB  s   &  r   $test_signature_on_class_without_init8TestSignatureObject.test_signature_on_class_without_init  s#    	W..q12D9W..q12D9 	3B00#6##J0LMMW..q148 N3B00#6##J0LMMW..q148 NM NM NMMs   'E2'F2F	F	c                   R pV P                  \        \        P                  ! \        P
                  4      4      V4        ! R R\        P
                  4      p ! R R4      p ! R RW24      pV P                  \        \        P                  ! V4      4      V4       V P                  \        \        P                  ! V4      4      V4        ! R RV4      pV P                  \        \        P                  ! V4      4      R	4        ! R
 R\        4      p ! R RWFR7      pV P                  \        \        P                  ! V4      4      R4       R# )z=(file, protocol=None, fix_imports=True, buffer_callback=None)c                       ] tR tRtRtR# )>TestSignatureObject.test_signature_on_builtin_class.<locals>.Pi  r:   Nr  r:   r!   r   rX	  r    s    $r!   rX	  c                       ] tR tRtRtR# )GTestSignatureObject.test_signature_on_builtin_class.<locals>.EmptyTraiti  r:   Nr  r:   r!   r   
EmptyTraitr    s    $r!   r  c                       ] tR tRtRtR# )?TestSignatureObject.test_signature_on_builtin_class.<locals>.P2i  r:   Nr  r:   r!   r   P2r    s    r!   r  c                   &   a  ] tR tRt o R tRtV tR# )?TestSignatureObject.test_signature_on_builtin_class.<locals>.P3i  c                    R # r   r:   )rU   r   s   &&r   r'  HTestSignatureObject.test_signature_on_builtin_class.<locals>.P3.__init__  r  r!   r:   Nr
  rt   s   @r   P3r    r   r!   r  z(spam)c                   &   a  ] tR tRt o R tRtV tR# )BTestSignatureObject.test_signature_on_builtin_class.<locals>.MetaPi  c                    R # r   r:   )r   r#   r%   s   &&&r   r   KTestSignatureObject.test_signature_on_builtin_class.<locals>.MetaP.__call__  r  r!   r:   Nr   rt   s   @r   MetaPr    r   r!   r  c                       ] tR tRtRtR# )?TestSignatureObject.test_signature_on_builtin_class.<locals>.P4i  r:   Nr  r:   r!   r   P4r    r  r!   r  rk  z
(foo, bar)N)r  r*  rM   r  r  r  r   )rU   r"  rX	  r  r  r  r  r  s   &       r   test_signature_on_builtin_class3TestSignatureObject.test_signature_on_builtin_class  s    ,W..w?@(K&&%%W..q12H=W..r23X>	 	 	W..r23X>	D 		 	W..r23\Br!   c           	     ~  a  ! R  R4      pV P                  V P                  V! 4       4      R'4        ! R R4      pV P                  \        R4      ;_uu_ 4        \        P                  ! V! 4       4       RRR4        ! R RW!4      pV P                  V P                  V! 4       4      R'4       V P                  R	4      ;_uu_ 4         ! R
 R4      pV P                  V P                  V! 4       4      R'4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V P                  V! 4       4      R'4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      o ! V3R lR4      pV P                  V! 4       ! ^4      ^4       V P                  V P                  V! 4       4      R'4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV! 4       pV P                  V! ^4      ^V^34       V P                  V P                  V! 4       4      R(4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! 4       ! ^4      R)4       V P                  V P                  V! 4       4      R'4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! 4       ! RR.4      R4       V P                  V P                  V! 4       4      V P                  RP                  4      4       RRR4       V P                  R4      ;_uu_ 4         ! R R4      pV P                  V! 4       ! ^4      ^4       \        P                  '       g@   V P                  V P                  V! 4       4      V P                  ^ P                  4      4       RRR4       V P                  R4      ;_uu_ 4         ! R R\        4      pV! 4       ! ^^.^4      pV P                  V^^^^/4       V P                  \        V4      V4       \        P                  '       gD   V P                  V P                  V! 4       4      V P                  \        P                  4      4       RRR4       V P                  R4      ;_uu_ 4         ! R  R\        4      pV P                  V! R!4      ! RR.4      R4       V P                  V P                  V! 4       4      V P                  RP                  4      4       RRR4       V P                  R"4      ;_uu_ 4         ! R# R\        4      pV P                  V! ^4      ! ^4      ^4       \        P                  '       g@   V P                  V P                  V! 4       4      V P                  ^ P                  4      4       RRR4       V P                  R$4      ;_uu_ 4         ! R% R4      pV! 4       pR& Vn        V P                  V! ^4      ^4       V P                  V P                  V4      R'4       RRR4       R#   + '       g   i     EL; i  + '       g   i     ELs; i  + '       g   i     EL5; i  + '       g   i     EL; i  + '       g   i     ELm; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL[; i  + '       g   i     EL; i  + '       g   i     ELO; i  + '       g   i     R# ; i)*c                   &   a  ] tR tRt o R tRtV tR# )CTestSignatureObject.test_signature_on_callable_objects.<locals>.Fooi  c                    R # r   r:   r
  s   &&r   r   LTestSignatureObject.test_signature_on_callable_objects.<locals>.Foo.__call__  r  r!   r:   Nr   rt   s   @r   rB  r    r   r!   rB  r$   c                       ] tR tRtRtR# )DTestSignatureObject.test_signature_on_callable_objects.<locals>.Spami  r:   Nr  r:   r!   r   r
  r    r  r!   r
  r	  Nc                       ] tR tRtRtR# )CTestSignatureObject.test_signature_on_callable_objects.<locals>.Bari  r:   Nr  r:   r!   r   r  r    r  r!   r  r   c                   0   a  ] tR tRt o ]R 4       tRtV tR# )ATestSignatureObject.test_signature_on_callable_objects.<locals>.Ci  c                    R # r   r:   r
  s   &&r   r   JTestSignatureObject.test_signature_on_callable_objects.<locals>.C.__call__  rP  r!   r:   Nr
  rt   s   @r   rW  r    rQ  r!   rW  r   c                   0   a  ] tR tRt o ]R 4       tRtV tR# )r  i  c                    R # r   r:   r  s   &r   r   r    rP  r!   r:   Nr
  rt   s   @r   rW  r    rT  r!   r
  c                   &   a  ] tR tRt o R tRtV tR# )ATestSignatureObject.test_signature_on_callable_objects.<locals>.Ai  c                    V# r   r:   r
  s   &&r   r
  FTestSignatureObject.test_signature_on_callable_objects.<locals>.A.call  r
  r!   r:   Nr
  rt   s   @r   r=  r    r
  r!   r=  c                   <   < ] tR tRt Z ! 4       P                  tRtR# )r  i  r:   Nr
  r
  s   r   rW  r    r
  r!   r   c                   >    ] tR tRt]P
                  ! R ^4      tRtR# )r  i  c                
    WV3# r   r:   r
  s   &&&r   r   JTestSignatureObject.test_signature_on_callable_objects.<locals>.C.<lambda>  r
  r!   r:   Nr
  r:   r!   r   rW  r    r
  r!   r   c                   >    ] tR tRt]P
                  ! R ^4      tRtR# )r  i  c                    W3# r   r:   r
  s   &&&r   r   r    r
  r!   r:   Nr
  r:   r!   r   rW  r    r
  r!   r
  c                   .    ] tR tRtRP                  tRtR# )r  i!  r  r:   Nr  r:   r!   r   rW  r  !  r  r!   r  r  r  r  c                   .    ] tR tRt^P                  tRtR# )r  i(  r:   Nr
  r:   r!   r   rW  r  (  r  r!   ClassMethodDescriptorTypec                   <    ] tR tRt]P
                  R,          tRtR# )r  i0  r	  r:   N)rJ   re   rf   rg   rX  r  r   rr   r:   r!   r   rW  r  0  s    ==4r!   r}  c                   .    ] tR tRt]P
                  tRtR# )r  i:  r:   N)rJ   re   rf   rg   r*  r/   r   rr   r:   r!   r   rW  r  :  r  r!   r  r  c                   .    ] tR tRt]P
                  tRtR# )r  iA  r:   N)rJ   re   rf   rg   r   r  r   rr   r:   r!   r   rW  r  A  s    ;;r!   r   c                       ] tR tRtRtRtR# )r  iI  r   r:   NrU  r:   r!   r   rW  r  I  s    &	r!   c                     V # r   r:   r  s   &r   r   HTestSignatureObject.test_signature_on_callable_objects.<locals>.<lambda>L  s    1r!   r1  r
  r2  )r  r  r  rk  rM   r  r/   r   r
   r  rX  r   r	  r*  r   r   )rU   rB  r
  r  rW  r&   resr=  s   &      @r   "test_signature_on_callable_objects6TestSignatureObject.test_signature_on_callable_objects  sp   	 	 	.	 	 	##I/IJJdf% K	$ 	 	.	  \\-(( 
 T^^AC0!" ) \\.)) 
 T^^AC0!" * \\,'' $ $ QSVQ'T^^AC0!" ( \\)$$K K AQqTAq!9-T^^AC0!" % \\/**Q Q QSVV,T^^AC0!" + \\-..$ $ QS#t-v6T^^AC0$..2IJ / \\-..' ' QSVQ'///  !4dnna[[6QR / \\5665D 5 #q!fa.CS1aA,/T#Y*///  !4dnnT]]6ST 7 \\011$C $ QsVS$K0&9T^^AC0$..2IJ 2 \\122'C ' QqT!Wa(///  !4dnna[[6QR 3 \\011' 'A$AJQqT1%T^^A.!" 21K KJJ )(( *)) ('' %$$ +** /.. /.. 766 211 322 211s   Y1Y#1Y7,AZ(AZAZ3A)[A=[3B*[/>A/\B\2A\+Y 	#Y4	7Z	Z	Z0	3[	[	[,	/\ 	\	\(	+\<	c                2    ! R  R4      p\         P                  '       g"   V P                  V P                  V4      R4       V P                  V P                  V! 4       4      R4       V! 4       pRVn        V P                  V P                  V4      R4       R# )c                   *   a  ] tR tRt o RtR tRtV tR# )ZTestSignatureObject.test_signature_on_callable_objects_with_text_signature_attr.<locals>.CiS  z(a, /, b, c=True)c                    R # r   r:   r  s   &*,r   r   cTestSignatureObject.test_signature_on_callable_objects_with_text_signature_attr.<locals>.C.__call__U  r  r!   r:   N)rJ   re   rf   rg   __text_signature__r   rr   rs   rt   s   @r   rW  r  S  s     !4 r!   rW  z(x, y)Nr~	  ))rt
  rm
  )r&   T.r	  .)))r\  ..r	  )r  ..r	  .)r   r
   r  r  r  )rU   rW  r&   s   &  r   ;test_signature_on_callable_objects_with_text_signature_attrOTestSignatureObject.test_signature_on_callable_objects_with_text_signature_attrR  s    	 	
 +++T^^A.	:,	  C'*	 r!   c                ,    ! R  R4      pV! 4       pR Vn         V P                  V P                  V4      R4       V! 4       pW"n         V P                  \        R4      ;_uu_ 4        V P                  V4       RRR4       R#   + '       g   i     R# ; i)c                   &   a  ] tR tRt o R tRtV tR# )>TestSignatureObject.test_signature_on_wrapper.<locals>.Wrapperij  c                    R # r   r:   r
  s   &&r   r   GTestSignatureObject.test_signature_on_wrapper.<locals>.Wrapper.__call__k  r  r!   r:   Nr   rt   s   @r   Wrapperr  j  r   r!   r  c                     R # r   r:   r  s   &r   r   ?TestSignatureObject.test_signature_on_wrapper.<locals>.<lambda>n  rZ  r!   wrapper loopNr1  )r
  r  r  r  r4  )rU   r  r	  s   &  r   test_signature_on_wrapper-TestSignatureObject.test_signature_on_wrapperi  sy    	 	 ),0	  )%##J??NN7# @???s   &BB	c                N    V P                  V P                  RR l4      R4       R# )r	  c                     V # r   r:   r  s   &r   r   ?TestSignatureObject.test_signature_on_lambdas.<locals>.<lambda>y  s    ar!   Nr	  )))r$   r	  .r	  .r	  rb   s   &r   test_signature_on_lambdas-TestSignatureObject.test_signature_on_lambdasx  s     9	 r!   c           
        \         P                  P                  4       \         P                  P                  4       \         P                  P	                  4       3 FU  pV P                  VR 7      ;_uu_ 4        V P                  \        \        P                  ! V4      4      R4       RRR4       KW  	  R#   + '       g   i     Kl  ; i)r   z(*args, **kwargs)N)
r   r   r   r   	MagicMockr  r  r*  rM   r  rU   r   s   & r   test_signature_on_mocks+TestSignatureObject.test_signature_on_mocks}  s     MM MM##%MM##%
D
 4((  W%6%6t%<!=?RS )(

 )((s   70B55Cc           
        \         P                  P                  4       \         P                  P                  4       3 Fb  pV P	                  VR 7      ;_uu_ 4        V P                  \        4      ;_uu_ 4        \        P                  ! V4       RRR4       RRR4       Kd  	  R#   + '       g   i     L; i  + '       g   i     K  ; i)r  N)	r   r   NonCallableMockNonCallableMagicMockr  rj  rk  rM   r  r  s   & r   #test_signature_on_noncallable_mocks7TestSignatureObject.test_signature_on_noncallable_mocks  s    MM))+MM..0
D 4((&&y11%%d+ 2 )(	

 21 )((s$   B88B%B8%B50B88C	c                   R  R lpV P                  \        P                  ! V4      ^*8H  4       V P                  \        P                  ! V4      ^*8g  4       V P                  \        P                  ! V4      \        8H  4       V P                  \        P                  ! V4      \        8g  4       R R lpV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R R lpV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R R lpV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R^*/R	 R
 llpV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R R lpV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R R lpV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R R lpV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R pR pV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R^/R lpR^/R lpV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R^/R lpR^/R lpV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R pR^/R lpV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R^*/R R llpR^*/R R llpV P                  \        P                  ! V4      \        P                  ! V4      8H  4       V P                  \        P                  ! V4      \        P                  ! V4      8g  4       V P                  \        \        P                  ! V4      4      \        \        P                  ! V4      4      4       R# )c                0    V ^8  d   QhR\         R\        /# rx   rT  r~  r   r	  )r  s   "r   r  ATestSignatureObject.test_signature_equality.<locals>.__annotate__      ++++r!   c                    R # r   r:   rS  s   &$r   r#   8TestSignatureObject.test_signature_equality.<locals>.foo  r  r!   c                0    V ^8  d   QhR\         R\        /# r  r  )r  s   "r   r  r    r  r!   c                    R # r   r:   rS  s   &$r   r%   8TestSignatureObject.test_signature_equality.<locals>.bar  r  r!   c                0    V ^8  d   QhR\         R\         /# r  r	  )r  s   "r   r  r    s    ))))r!   c                    R # r   r:   rS  s   &$r   r%   r    r  r!   c                $    V ^8  d   QhR\         /# rx   rT  r	  )r  s   "r   r  r    s    """r!   c                    R # r   r:   rS  s   &$r   r%   r    s    dr!   rT  c                0    V ^8  d   QhR\         R\        /# r  r  )r  s   "r   r  r    s    ...5.r!   c                    R # r   r:   rS  s   &$r   r%   r    s    $r!   c                $    V ^8  d   QhR\         /# r	  )r	  )r  s   "r   r  r    s    ''E'r!   c                    R # r   r:   r$   r&   s   &$r   r%   r    r  r!   c                0    V ^8  d   QhR\         R\        /# r  r  )r  s   "r   r  r    s    ((S(U(r!   c                     R # r   r:   rS  s   &&r   r%   r    r  r!   c                0    V ^8  d   QhR\         R\        /# r  r  )r  s   "r   r  r    s    ))3)e)r!   c                     R # r   r:   rT  r$   s   &&r   r   9TestSignatureObject.test_signature_equality.<locals>.spam  r  r!   c                     R # r   r:   r,  s   $$$r   r#   r        Tr!   c                     R # r   r:   r&   rT  r$   s   $$$r   r%   r    r*  r!   r$   c                     R # r   r:   r,  s   $$$r   r#   r    r   r!   c                     R # r   r:   r,  s   $$$r   r%   r    r   r!   c                    R # r   r:   posr$   rT  r&   s   &$$$r   r#   r    r  r!   c                    R # r   r:   r1  r&   rT  r$   s   &$$$r   r%   r    r  r!   c                    R # r   r:   r0  s   &$$$r   r#   r    r   r!   c                    R # r   r:   r3  s   &$$$r   r%   r    r  r!   c                $    V ^8  d   QhR\         /# rx   r  r	  )r  s   "r   r  r        ;;;r!   c                    R # r   r:   )r1  r$   rT  r&   r   r  s   &$$$*,r   r#   r        tr!   c                $    V ^8  d   QhR\         /# r7  r	  )r  s   "r   r  r    r8  r!   c                    R # r   r:   )r1  r&   rT  r$   r   r  s   &$$$*,r   r%   r    r:  r!   N)rT   rM   r  rI   r   r  hashr  )rU   r#   r%   r   s   &   r   test_signature_equality+TestSignatureObject.test_signature_equality  s   +**3/256))#."45))#.);<**3/9<=+))#.'2C2CC2HHI**3/73D3DS3IIJ""3'($w/@/@/E*F	H 	***3/73D3DS3IIJ))#.'2C2CC2HHI""3'($w/@/@/E*F	H 	#**3/73D3DS3IIJ))#.'2C2CC2HHI""3'($w/@/@/E*F	H 	/B.**3/73D3DS3IIJ))#.'2C2CC2HHI""3'($w/@/@/E*F	H 	(**3/73D3DS3IIJ))#.'2C2CC2HHI""3'($w/@/@/E*F	H 	)**3/73D3DS3IIJ))#.'2C2CC2HHI""3'($w/@/@/E*F	H)**40G4E4Ec4JJK))$/73D3DS3IIJ""4()40A0A#0F+G	I 	"!))#.'2C2CC2HHI**3/73D3DS3IIJ""3'($w/@/@/E*F	H 	$Q##1#))#.'2C2CC2HHI**3/73D3DS3IIJ""3'($w/@/@/E*F	H 	)!((())#.'2C2CC2HHI**3/73D3DS3IIJ""3'($w/@/@/E*F	H 	'((**3/73D3DS3IIJ))#.'2C2CC2HHI""3'($w/@/@/E*F	H 	<b;;B;))#.'2C2CC2HHI**3/73D3DS3IIJ""3'($w/@/@/E*F	Hr!   c           	     X   \         P                  p\         P                  pR  p\         P                  ! V4      pV! V! RVP                  4      .R7      pV P                  \        V4      \        V4      4       V P                  \        V4      \        VP                  RR7      4      4       R R lpV P                  \        V4      \        \         P                  ! V4      4      4       / 3R lpV P                  \        R4      ;_uu_ 4        \        \         P                  ! V4      4       R	R	R	4       R
 R lpV P                  \        R4      ;_uu_ 4        \        \         P                  ! V4      4       R	R	R	4       R	#   + '       g   i     L^; i  + '       g   i     R	# ; i)c                     R # r   r:   r  s   &r   r#   8TestSignatureObject.test_signature_hashable.<locals>.foo  r  r!   r$   rt  r   r@	  c                    V ^8  d   QhR^/# r	  r:   )r  s   "r   r  ATestSignatureObject.test_signature_hashable.<locals>.__annotate__  s    ar!   c                     R # r   r:   r  s   &r   r%   8TestSignatureObject.test_signature_hashable.<locals>.bar  r  r!   c                     R # r   r:   r  s   &r   r#   rB    r   r!   unhashable typeNc                    V ^8  d   QhR/ /# r	  r:   )r  s   "r   r  rE    s    br!   c                     R # r   r:   r  s   &r   r#   rB    r  r!   )rM   rw  ru  r  POSITIONAL_OR_KEYWORDr  r=  r  rV	  r  rk  )rU   rW	  rX	  r#   foo_sig
manual_sigr%   s   &      r   test_signature_hashable+TestSignatureObject.test_signature_hashable  s1   ##C(1S!*A*A#B"CD
gZ(89DM !3!3f!3!MN	P 	DM40A0A#0F+GH##I/@AA""3'( B 	##I/@AA""3'( BA	 BA BAAs    F FF	F)	c                  a RRR/R R lllpV P                  \        \        P                  ! V4      4      R4       V P                  \        \        P                  ! V4      4      \        P                  ! V4      P	                  4       4       RRR/R R lllpV P                  \        \        P                  ! V4      4      R4       V P                  \        \        P                  ! V4      4      \        P                  ! V4      P	                  4       4       R	 pV P                  \        \        P                  ! V4      4      R
4       V P                  \        \        P                  ! V4      4      \        P                  ! V4      P	                  4       4       R R lpV P                  \        \        P                  ! V4      4      R4       V P                  \        \        P                  ! V4      4      \        P                  ! V4      P	                  4       4       ^ RIHo V3R lR lpV P                  \        \        P                  ! V4      4      R4       V P                  \        \        P                  ! V4      4      \        P                  ! V4      P	                  4       4       R R lp\        P                  ! V\        P                  R7      pV P                  \        V4      R4       R# )r   r&   Nc                (    V ^8  d   QhR\         R^*/# rx   r$   r~  r	  )r  s   "r   r  <TestSignatureObject.test_signature_str.<locals>.__annotate__  s     	 	# 	B 	r!   c                    R # r   r:   r$   rT  r&   r  s   &$$,r   r#   3TestSignatureObject.test_signature_str.<locals>.foo  rs  r!   z*(a: int = 1, *, b, c=None, **kwargs) -> 42c                (    V ^8  d   QhR\         R^*/# rS  r	  )r  s   "r   r  rT    s     	 	# 	 	r!   c                    R # r   r:   )r$   rT  r&   r   r  s   &$$*,r   r#   rW    rs  r!   z.(a: int = 1, *args, b, c=None, **kwargs) -> 42c                      R # r   r:   r:   r!   r   r#   rW  
  rs  r!   rE	  c                h    V ^8  d   QhR\         \        ,          R\        \        \        3,          /# rS  )r+  r*  r>	  r	  )r  s   "r   r  rT    s'     	 	49 	sEz!2 	r!   c                     R # r   r:   r  s   &r   r#   rW    rs  r!   z#(a: list[str]) -> tuple[str, float])Tuplec                b   < V ^8  d   QhR\         \        ,          RS\        \        3,          /# rS  )r+  r*  r	  )r  r]  s   "r   r  rT    s(     	 	49 	sEz!2 	r!   c                     R # r   r:   r  s   &r   r#   rW    rs  r!   z#(a: list[str]) -> Tuple[str, float]c                $    V ^8  d   QhR\         /# rx   r\  undef)r  s   "r   r  rT    s     	 	5 	r!   c                     R # r   r:   r  s   &r   r#   rW    rs  r!   annotation_formatz
(x: undef)r  )	r  r*  rM   r  r  r  r]  r   
FORWARDREF)rU   r#   rB	  r]  s   &  @r   test_signature_str&TestSignatureObject.test_signature_str  s2   	 	 	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4d;W..s34 **3/668	:	W..s34>	@W..s34 **3/668	: 	!	 	W..s34>	@W..s34 **3/668	:	v7H7HIS<0r!   c                   \         P                  p\         P                  pR  pV P                  \	        \         P
                  ! V4      4      R4       V P                  \	        \         P
                  ! V4      4      \         P
                  ! V4      P                  4       4       V! V! RVP                  4      .R7      pV P                  \	        V4      R4       V P                  \	        V4      VP                  4       4       V! V! RVP                  4      V! RVP                  4      .R7      pV P                  \	        V4      R4       V P                  \	        V4      VP                  4       4       V! V! RVP                  4      V! RVP                  4      .R7      pV P                  \	        V4      R4       V P                  \	        V4      VP                  4       4       R# )	c                   W3# r   r:   )a_porT  r  s   "$,r   rq  DTestSignatureObject.test_signature_str_positional_only.<locals>.test(  
    <r!   z(a_po, /, *, b, **kwargs)r#   rt  z(foo, /)r%   z(foo, /, **bar)z(foo, /, *bar)N)
rM   ru  rw  r  r*  r  r  rv  r5  VAR_POSITIONAL)rU   rX	  rW	  rq  s   &   r   "test_signature_str_positional_only6TestSignatureObject.test_signature_str_positional_only$  s{   	  	W..t454	6W..t45 **40779	; Qua&7&789:TJ/TDKKM2Qua&7&78uamm46 7T$56TDKKM2Qua&7&78ua&6&679 :T$45TDKKM2r!   c                  aa ^ RI HoHo VV3R lR lpRpRpV P                  \        P
                  ! V4      P                  4       V4       V P                  \        P
                  ! V4      P                  RR7      V4       V P                  \        P
                  ! V4      P                  \        V4      R7      V4       V P                  \        P
                  ! V4      P                  \        V4      ^,
          R7      V4       V P                  \        P
                  ! V4      P                  ^ R7      V4       V P                  \        P
                  ! V4      P                  RR7      V4       R# )	r   	AnnotatedLiteralc                N   < V ^8  d   QhRS\         R3,          RSR,          RR/# )rx   r\  r  r  r+   LiteralStringrS  r	  )r  rt  ru  s   "r   r  ?TestSignatureObject.test_signature_format.<locals>.__annotate__A  s0     	 	Ic6k* 	wx/@ 	_ 	r!   c                     R # r   r:   )r\  r  r+   s   &&&r   r   7TestSignatureObject.test_signature_format.<locals>.funcA  rs  r!   zE(x: Annotated[int, 'meta'], y: Literal['a', 'b'], z: 'LiteralString')zS(
    x: Annotated[int, 'meta'],
    y: Literal['a', 'b'],
    z: 'LiteralString'
)N	max_width)r  rt  ru  r  rM   r  r  r-   )rU   r   expected_singlelineexpected_multilinert  ru  s   &   @@r   test_signature_format)TestSignatureObject.test_signature_format>  sH   -	 	 f
 	d#**,	
 	d#**T*:	
 	d#**S9L5M*N	
 	d#**S9L5MPQ5Q*R	
 	d#**Q*7	
 	d#**R*8	
r!   c                   aa ^ RI HoHo VV3R lR lpRpV P                  \        P
                  ! V4      P                  RR7      V4       R# )r   rs  c          
      ^   < V ^8  d   QhRSR	,          RS\         R3,          RRR\        RR/# )
rx   r  r\  r  r+   rw  r  r~  NrS  )r   r   )r  rt  ru  s   "r   r  MTestSignatureObject.test_signature_format_all_arg_types.<locals>.__annotate__f  sK     	 	 x 	f%	
 	 	 	r!   c                   R # r   r:   )r\  r  r+   r  s   "&$,r   r   ETestSignatureObject.test_signature_format_all_arg_types.<locals>.funcf  s     r!   z(
    x: Annotated[int, 'meta'],
    /,
    y: Literal['a', 'b'],
    *,
    z: 'LiteralString',
    **kwargs: object
) -> Noner{  Nr}  )r  rt  ru  r  rM   r  r  )rU   r   r  rt  ru  s   &  @@r   #test_signature_format_all_arg_types7TestSignatureObject.test_signature_format_all_arg_typesc  sG    -	 	 	d#**R*8	
r!   c                    R  R lpV P                  \        P                  ! V4      P                  4       R4       V P                  \        P                  ! V4      P                  RR7      R4       R# )c                     V ^8  d   QhRRRR/# )rx   r\  r   r~  r*  r:   )r  s   "r   r  GTestSignatureObject.test_signature_format_unquote.<locals>.__annotate__~  s    ((E(e(r!   c                     R # r   r:   r  s   &r   r   ?TestSignatureObject.test_signature_format_unquote.<locals>.func~  s    Sr!   z(x: 'int') -> 'str'F)quote_annotation_stringsz(x: int) -> strN)r  rM   r  r  r
  s   & r   test_signature_format_unquote1TestSignatureObject.test_signature_format_unquote}  s\    (d#**,!	
 	d#**E*J	
r!   c                   R  R lp\         P                  ! V4      pVP                  pVP                  \	        VP                  4       4      R,          R7      pV P                  \	        VP                  4      R.4       V P                  VP                  R,          VR,          4       V P                  VP                  ^*4       VP                  RR7      pV P                  \        VP                  4      / 4       \         P                  ! V4      pVP                  p\        P                  ! V\	        VP                  4       4      R,          R7      pV P                  \	        VP                  4      R.4       V P                  VP                  R,          VR,          4       V P                  VP                  ^*4       \        P                  ! VRR7      pV P                  \        VP                  4      / 4       R# )c                    V ^8  d   QhR^*/# r	  r:   )r  s   "r   r  KTestSignatureObject.test_signature_replace_parameters.<locals>.__annotate__  s     	 	" 	r!   c                     R # r   r:   rS  s   &&r   rq  CTestSignatureObject.test_signature_replace_parameters.<locals>.test  rs  r!   r  rt  rT  Nr:   )
rM   r  r1   rV	  r+  r?	  r  r@	  rX  copy)rU   rq  rB	  r1   s   &   r   !test_signature_replace_parameters5TestSignatureObject.test_signature_replace_parameters  so   	 %^^
kkT**;*;*=%>r%BkCcnn-u5,jo>..3kkRk(cnn-r2%^^
ll34
0A0A0C+DR+HIcnn-u5,jo>..3ll32.cnn-r2r!   c                   R  R lp\         P                  ! V4      pVP                  RR7      pV P                  VP                  R4       VP                  VP
                  R7      pV P                  VP                  VP
                  4       VP                  ^*R7      pV P                  VP                  ^*4       V P                  V\         P                  ! V4      4       \         P                  ! V4      p\        P                  ! VRR7      pV P                  VP                  R4       \        P                  ! W"P
                  R7      pV P                  VP                  VP
                  4       \        P                  ! V^*R7      pV P                  VP                  ^*4       V P                  V\         P                  ! V4      4       R# )c                    V ^8  d   QhR^*/# r	  r:   )r  s   "r   r  ETestSignatureObject.test_signature_replace_anno.<locals>.__annotate__  s     	 	b 	r!   c                      R # r   r:   r:   r!   r   rq  =TestSignatureObject.test_signature_replace_anno.<locals>.test  rs  r!   NrC  )rM   r  rV	  r  r@	  r8	  r  r  rx	  s   &  r   test_signature_replace_anno/TestSignatureObject.test_signature_replace_anno  sI   	 %kkDk1c++T2kkCIIk6c++SYY7kkBk/..3g//56%ll3$7c++T2ll3))<c++SYY7ll3"5..3g//56r!   c                    R  p\         P                  ! R\         P                  P                  4      p\         P                  ! V3R7      ;q1n        V P                  V\         P                  ! V4      4       R# )c                      R # r   r:   r:   r!   r   rq  9TestSignatureObject.test_signature_replaced.<locals>.test  rs  r!   r   rt  N)rM   ru  rv  rw  rx  r  r  )rU   rq  ry  rB	  s   &   r   test_signature_replaced+TestSignatureObject.test_signature_replaced  sZ    	 &&vw/@/@/P/PQ
#*#4#4#NN g//56r!   c                    ! R  R4      p ! R RV4      pV P                  V P                  VP                  4      R4       V P                  V P                  VP                  4      V P                  VP                  4      4       R# )c                   >   a  ] tR tRt o RR^/V 3R lR llltRtV tR# )FTestSignatureObject.test_signature_on_mangled_parameters.<locals>.Spami  	_Spam__p2c                "   < V ^8  d   QhR^R^/# )rx   	_Spam__p1r  r:   )r  ru   s   "r   r  STestSignatureObject.test_signature_on_mangled_parameters.<locals>.Spam.__annotate__  s      q A r!   c                   R # r   r:   )rU   r  r  s   &&$r   r#   JTestSignatureObject.test_signature_on_mangled_parameters.<locals>.Spam.foo  r  r!   r:   N)rx   rh  rt   s   @r   r
  r    s     a   r!   r
  c                       ] tR tRtRtR# )ETestSignatureObject.test_signature_on_mangled_parameters.<locals>.Hami  r:   Nr  r:   r!   r   Hamr    r  r!   r  N))r
  )r  rx   r   r	  )r  r  rx   r	  .)r  r  r#   )rU   r
  r  s   &  r   $test_signature_on_mangled_parameters8TestSignatureObject.test_signature_on_mangled_parameters  sk    	 		$ 	 	1	  	10	2r!   c                     ! R  R\         P                  4      pR R lpVP                  V4      pV P                  W14       R# )c                       ] tR tRtRtR# )PTestSignatureObject.test_signature_from_callable_python_obj.<locals>.MySignaturei  r:   Nr  r:   r!   r   r0	  r        dr!   r0	  c                    V ^8  d   QhR^/# r  r:   )r  s   "r   r  QTestSignatureObject.test_signature_from_callable_python_obj.<locals>.__annotate__  s       r!   c                    R # r   r:   rS  s   &$r   r#   HTestSignatureObject.test_signature_from_callable_python_obj.<locals>.foo  r  r!   NrM   rw  r
  assertIsInstancerU   r0	  r#   rM  s   &   r   'test_signature_from_callable_python_obj;TestSignatureObject.test_signature_from_callable_python_obj  s1    2'++2 ++C0g3r!   c                     ! R  R\         P                  4      p ! R R4      pVP                  V4      pV P                  W14       R# )c                       ] tR tRtRtR# )KTestSignatureObject.test_signature_from_callable_class.<locals>.MySignaturei  r:   Nr  r:   r!   r   r0	  r    r  r!   r0	  c                       ] tR tRtRtR# )CTestSignatureObject.test_signature_from_callable_class.<locals>.fooi  r:   Nr  r:   r!   r   r#   r    rl  r!   r#   Nr  r  s   &   r   "test_signature_from_callable_class6TestSignatureObject.test_signature_from_callable_class  s5     	3'++2++C0g3r!   c                     ! R  R\         P                  4      pVP                  \        P                  4      pV P                  W!4       R# )c                       ] tR tRtRtR# )QTestSignatureObject.test_signature_from_callable_builtin_obj.<locals>.MySignaturei  r:   Nr  r:   r!   r   r0	  r    r  r!   r0	  N)rM   rw  r
  r  r  r  )rU   r0	  rB	  s   &  r   (test_signature_from_callable_builtin_obj<TestSignatureObject.test_signature_from_callable_builtin_obj  s4     	3'++2''8c/r!   c                b   \        4        F[  p\        P                  ! V4      p\        VP                  4      p\        V4      pV P                  V4       V P                  W44       K]  	  \        P                  ! \        4      p\        VP                  4      pV P                  V\        4       R # r   )
r8   rM   r  r+  r1   r  rI   r  rB   r  r  s   &    r   3test_signature_definition_order_preserved_on_kwonlyGTestSignatureObject.test_signature_definition_order_preserved_on_kwonly  s    GIB))"-IY))*AayHOOAQ) J %%&IJ	%%&<=r!   c                    \         P                  ! R  4      P                  p\         P                  ! R 4      P                  pV P                  W4       R# )c                     R # r   r:   rh  s   &&r   r   ITestSignatureObject.test_signater_parameters_is_ordered.<locals>.<lambda>  rT  r!   c                     R # r   r:   r  s   &&r   r   r    rT  r!   N)rM   r  r1   r  )rU   p1p2s   &  r   #test_signater_parameters_is_ordered7TestSignatureObject.test_signater_parameters_is_ordered  s>    01<<01<<B#r!   c           	       a  ! R  R4      oV3R lR lpV3R lR lp\         P                  \         P                  P                  3 EFn  pV P	                  VR7      ;_uu_ 4        V! V4      pV P                  VP                  \        4       V P                  VP                  R,          P                  S4       V! V\        4       R7      pV P                  VP                  \        4       V P                  VP                  R,          P                  S4       V! VR	\        /\        4       R
7      pV P                  VP                  \        4       V P                  VP                  R,          P                  S4       V P                  VP                  R,          P                  R	4       RRR4       EKq  	  R#   + '       g   i     EK  ; i)c                       ] tR tRtRtR# )QTestSignatureObject.test_signature_annotations_with_local_namespaces.<locals>.Fooi  r:   Nr  r:   r!   r   rB  r    s    3r!   rB  c                *   < V ^8  d   QhRSR\         /# )rx   r#   r~  r	  )r  rB  s   "r   r  ZTestSignatureObject.test_signature_annotations_with_local_namespaces.<locals>.__annotate__  s    ''c'c'r!   c                     R # r   r:   rc  s   &r   r   RTestSignatureObject.test_signature_annotations_with_local_namespaces.<locals>.func  r  r!   c                .   < V ^8  d   QhRSRRR\         /# )rx   r#   r%   r  r~  r	  )r  rB  s   "r   r  r    s    44s4434r!   c                     R # r   r:   r#   r%   s   &&r   func2STestSignatureObject.test_signature_annotations_with_local_namespaces.<locals>.func2  r  r!   signature_funcr#   )r  r  )globalsr  r%   N)rM   r  rw  r
  r  r  r@	  r   r1   r9	  r  )rU   r   r  r  sig1rY	  sig3rB  s   &      @r   0test_signature_annotations_with_local_namespacesDTestSignatureObject.test_signature_annotations_with_local_namespaces  sC   ''44&00'2C2C2Q2QRN~>>%d+  !7!7=  !7!B!BCH%d68<  !7!7=  !7!B!BCH%eeS\&(S  !7!7=  !7!B!BCH  !7!B!BEJ ?> S>>>s   &EF==Gc                   \         p\        P                  p\        P                  p\        P                  P                  p\        P
                  \        P                  P                  3 EF  pV P                  VR 7      ;_uu_ 4        V P                  V! VP                  4      V! V! RV4      V! RV4      3R7      4       V P                  V! VP                  4      V! RV! RVRR7      V! RVRR7      3R7      4       V P                  V! VP                  4      V! RV! RVRR7      V! RVR	R7      V! R
VRR7      3R7      4       V P                  V! VP                  4      V! V! RVRR7      V! RVR	R7      V! R
VRR7      3R7      4       \        '       g(   V P                  V! VP                  4      V! 4       4       V P                  V! VP                  4      V! V! RV4      V! RV4      V! R
V4      3R7      4       V P                  V! VP                  RR7      V! V! RV4      V! RV4      3R7      4       V P                  V! VP                  RR7      V! VP                  V! RV\         R7      V! RV\"        R7      3R7      4       V P                  V! VP                  RR7      V! VP                  V! RV\         R7      V! RVRR7      V! R
WAP                  R7      3R7      4       V P                  V! VP                  RR7      V! V! RVRR7      V! RVRR7      V! R
VRR7      3R7      4       R\$        R\&        /pR\(        R\*        /pV P-                  \.        4      ;_uu_ 4        V! VP                  RVR7       RRR4       V P                  V! VP                  RVR7      V! \*        V! RV\         R7      V! RV\(        R7      3R7      4       V P                  V! VP                  RWgR7      V! \*        V! RV\$        R7      V! RV\(        R7      3R7      4       RRR4       EK  	  R#   + '       g   i     L; i  + '       g   i     EK  ; i)r  r$   rT  rt  MyClassr   r9	  r*  )r@	  r1   z'str'r&   z'int'z	'MyClass'Tr
  )r
  r  N)r
  r  )r
  r  r  )r   rM   rw  ru  rL  r  r
  r  r  r  r  	function2	function3r
   UnannotatedClassunannotated_functionr   r*  r	  complexr>	  rX  rj  	NameError)rU   isarB	  parPORKr  globalnslocalnss   &       r   test_signature_eval_str+TestSignatureObject.test_signature_eval_str  s   ,  66&00'2C2C2Q2QRN~>>  "3;;/TNTN$   "3<<0*3Te<Te<$   "3==1*3Te<Tg>Ti@$   "3==1Tg>Tg>TkB$ ,+$$^C4H4H%I35Q  0H0H!ITNTNTN$   "3;;>TNTN$   "3<<$?*-++Tc:Tc:$   "3==4@*-++Tc:Te<TkkB$   "3==4@Te<Te<Ti@$ "5%9 %D9&&y11"3<<$Q 2   "3<<$wO*.Tc:Te<$   "3<<$a*.Te<Te<$w ?> S` 21_ ?>>s&   	K+Q4P;
B"Q;QQQ c                p   \         p\        P                  p\        P                  p\        P                  P                  p\        P
                  \        P                  P                  3 EF  pV P                  VR 7      ;_uu_ 4        V P                  V! VP                  \        P                  R7      V! V! RVRR7      .4      4       V! VP                  \        P                  R7      pV! V! RV\        RVP                  R7      R7      .4      pV P                  V! VP                  \        P                  R7      V! V! RV\        RVP                  R7      R7      .4      4       V P                  \        R4      ;_uu_ 4        V! VP                  \        P                   R7       RRR4       V P                  \        R4      ;_uu_ 4        V! VP                  4       RRR4       RRR4       EK  	  R#   + '       g   i     LX; i  + '       g   i     L2; i  + '       g   i     EK  ; i)r  re  r\  	undefinedr  )r  N)r   rM   rw  ru  rL  r  r
  r  r  r  r   STRINGrg  r   r  r  VALUE)rU   idarB	  r  r  r  s1s2s   &       r    test_signature_annotation_format4TestSignatureObject.test_signature_annotation_formatq  s   *  66&00'2C2C2Q2QRN^<<  "355FMMJS$;?@A $CEEV=N=NO#c44EkY\Y^Y^4_`ab  "355F<M<MNS$3D[X[X]X]3^_`a ++I{CC"355FLLI D++I{CC"355) D =< S DCCC =<<s=   	DH#
#G=-&H#H&H#=HH#H H##H5c                   R  R lp ! R R4      p\         P                  ! V\        P                  R7      pV P	                  \        VP                  4      R.4       \         P                  ! V\        P                  R7      pV P	                  \        VP                  4      R.4        ! R R4      pV! V4      p\         P                  ! V\        P                  R7      pV P	                  \        VP                  4      RR	.4       R
# )c                $    V ^8  d   QhR\         /# ra  rb  )r  s   "r   r  MTestSignatureObject.test_signature_deferred_annotations.<locals>.__annotate__  s     	 	 	r!   c                     R # r   r:   r  s   &r   r  BTestSignatureObject.test_signature_deferred_annotations.<locals>.f  rs  r!   c                   >   a  ] tR tRt o V 3R lR ltV 3R ltRtV tR# )BTestSignatureObject.test_signature_deferred_annotations.<locals>.Ci  c                    < V ^8  d   QhRS[ /# ra  rb  )r  ru   s   "r   r  OTestSignatureObject.test_signature_deferred_annotations.<locals>.C.__annotate__  s      % r!   c                    Wn         R # r   r  rn  s   &&r   r'  KTestSignatureObject.test_signature_deferred_annotations.<locals>.C.__init__  rp  r!   c                &   < V ^8  d   Qh/ S[ ;R&   # ra  rb  )r  ru   s   "r   r  r    s     H r!   r  N)rJ   re   rf   rg   r'  __annotate_func__rr   rs   rt   s   @r   rW  r	    s        r!   rW  re  r\  c                   <   a  ] tR tRt o R tR t]R 4       tRtV t	R# )PTestSignatureObject.test_signature_deferred_annotations.<locals>.CallableWrapperi  c                4    Wn         VP                  V n        R # r   )r   r  r
  s   &&r   r'  YTestSignatureObject.test_signature_deferred_annotations.<locals>.CallableWrapper.__init__  s     	$($5$5!r!   c                &    V P                   ! V/ VB # r   r  r  s   &*,r   r   YTestSignatureObject.test_signature_deferred_annotations.<locals>.CallableWrapper.__call__  r
  r!   c                @    V P                  \        P                  4      # r   )r  r   r  rb   s   &r   r  `TestSignatureObject.test_signature_deferred_annotations.<locals>.CallableWrapper.__annotations__  s    ((66r!   )r  r   N)
rJ   re   rf   rg   r'  r   r  r  rr   rs   rt   s   @r   CallableWrapperr    s#     62 7 7r!   r  r   r  N)rM   r  r   rg  r  r+  r1   )rU   r  rW  rB	  r  cws   &     r   #test_signature_deferred_annotations7TestSignatureObject.test_signature_deferred_annotations  s    		 	 V5F5FGcnn-u5V5F5FGcnn-u5
	7 
	7 Qf6G6GHcnn-/ABr!   c                    ! R  R4      pR pV! V4      pRVn         \        P                  \        P                  P                  3 FQ  pV P                  VR7      ;_uu_ 4        V P                  V! V4      \        P                  ! 4       4       RRR4       KS  	  V P                  \        P                  ! V4      / 4       R#   + '       g   i     K  ; i)c                   ,   a  ] tR tRt o R tR tRtV tR# )DTestSignatureObject.test_signature_none_annotation.<locals>.funclikei  c                    VP                   V n         VP                  V n        VP                  V n        VP                  V n        VP                  V n        Wn        R # r   r
  r
  s   &&r   r'  MTestSignatureObject.test_signature_none_annotation.<locals>.funclike.__init__  r
  r!   c                &    V P                   ! V/ VB # r   r  r  s   &*,r   r   MTestSignatureObject.test_signature_none_annotation.<locals>.funclike.__call__  r
  r!   r
  Nr
  rt   s   @r   r
  r    r
  r!   r
  c                      R # r   r:   r:   r!   r   r#   ?TestSignatureObject.test_signature_none_annotation.<locals>.foo  r   r!   Nr  )r  rM   r  rw  r
  r  r  r`   )rU   r
  r#   r  s   &   r   test_signature_none_annotation2TestSignatureObject.test_signature_none_annotation  s    	2 	2  	sm"&00'2C2C2Q2QRN~>>  !4g6G6G6IJ ?> S 	005r: ?>>s   $,CCc                     ! R  R4      p ! R RV4      p ! R RV4      pV P                  \        P                  ! V4      \        P                  ! V4      4       R# )c                   8   a a ] tR tRt oV 3R ltR tRtVtV ;t# )@TestSignatureObject.test_signature_on_derived_classes.<locals>.Bi  c                "   < \         SV `  V 4      # r   r  )rU   r   r  r  s   &*,r   r  HTestSignatureObject.test_signature_on_derived_classes.<locals>.B.__new__  s    wt,,r!   c                    Wn         R # r   rM  r	  s   &&r   r'  ITestSignatureObject.test_signature_on_derived_classes.<locals>.B.__init__  s    "
r!   r-  )	rJ   re   rf   rg   r  r'  rr   rs   r  r  s   @@r   r<  r)    s     -# #r!   r<  c                   2   a a ] tR tRt oV 3R ltRtVtV ;t# )ATestSignatureObject.test_signature_on_derived_classes.<locals>.D1i  c                &   < \         SV `  V4       R # r   r,  )rU   rM  r  s   &&r   r'  JTestSignatureObject.test_signature_on_derived_classes.<locals>.D1.__init__  s     'r!   r:   r.  r  s   @@r   D1r0    s     ( (r!   r3  c                       ] tR tRtRtR# )ATestSignatureObject.test_signature_on_derived_classes.<locals>.D2i  r:   Nr  r:   r!   r   D2r5    r  r!   r6  N)r  rM   r  )rU   r<  r3  r6  s   &   r   !test_signature_on_derived_classes5TestSignatureObject.test_signature_on_derived_classes  sL    	# 	#	( 	(	 	 	**2.0A0A"0EFr!   c                f     ! R  R4      pV P                  V P                  V! 4       4      R4       R# )c                   ,   a  ] tR tRt o R tR tRtV tR# )STestSignatureObject.test_signature_on_non_comparable.<locals>.NoncomparableCallablei  c                    R # r   r:   r
  s   &&r   r   \TestSignatureObject.test_signature_on_non_comparable.<locals>.NoncomparableCallable.__call__  r  r!   c                    ^^ ,           R# r  r:   )rU   rY   s   &&r   r  ZTestSignatureObject.test_signature_on_non_comparable.<locals>.NoncomparableCallable.__eq__  s    !r!   r:   N)rJ   re   rf   rg   r   r  rr   rs   rt   s   @r   NoncomparableCallabler;    s      r!   r@  Nr1  r	  )rU   r@  s   & r    test_signature_on_non_comparable4TestSignatureObject.test_signature_on_non_comparable  s0    	 	
 	(=(?@	 r!   r:   N)HrJ   re   rf   rg   r   r  r[	  rs	  ry	  r	  r	  r	  r	  r	  r   r   r  r
   r	  r	  r	  r	  r	  r
  r%
  r9
  rE
  rO
  rW
  r
  r
  r
  r
  r7  rG  rb  r  r  r  r  r  r  r  r  r  r  r  r>  rO  rh  rp  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r%  r7  rA  rr   rs   rt   s   @r   r5	  r5	  p  sr    	I 	IU'n98	':
 !
 "HF __)MOLCO LC\ __)MO:O :( 1> 1>f __)MOIOI
"3HjG&#6  . .E N1 f=
E Nl \%,N>"@a=F 8! __)MO9O9$ __)MOCOC.x"t .$ 
T,QHf)0'1R34#
J
4

3,7,72 4 __)MO4O4 __)MO0O0
	>$
K(hT*.C>;2G$   r!   r5	  c                   Z   a  ] tR tRt o R tR tR tR tR tR t	]
R 4       tR	 tR
tV tR# )TestParameterObjecti  c                   \         P                  pT P                  VP                  VP                  u;8  ;'       d@    VP
                  u;8  ;'       d(    VP                  u;8  ;'       d    VP                  8  Mu 4       V P                  \        VP                  4      R 4       V P                  R \        VP                  4      9   4       R# )rv  N)rM   ru  rI   rv  rL  ro  KEYWORD_ONLYr5  r  r*  r  )rU   rX	  s   & r   test_signature_parameter_kinds2TestParameterObject.test_signature_parameter_kinds  s    ))A,C,C J J((J J+,>>J J<=MMJ 	K 	Q../1BC)T!2C2C-DDEr!   c                	   \         P                  ! R ^
\         P                  P                  R7      pV P                  VP                  R 4       V P                  VP
                  ^
4       V P                  VP                  VP                  4       V P                  VP                  \         P                  P                  4       V P                  \        R4      ;_uu_ 4        \         P                  ! R ^
RR7       RRR4       V P                  \        R4      ;_uu_ 4        \         P                  ! R\         P                  P                  R7       RRR4       V P                  \        R4      ;_uu_ 4        \         P                  ! R\         P                  P                  R7       RRR4       V P                  \        R	4      ;_uu_ 4        \         P                  ! R\         P                  P                  R7       RRR4       V P                  \        R
4      ;_uu_ 4        \         P                  ! R\         P                  P                  R7       RRR4       V P                  \        R
4      ;_uu_ 4        \         P                  ! R\         P                  P                  R7       RRR4       V P                  \        R4      ;_uu_ 4        \         P                  ! R^*\         P                  P                  R7       RRR4       V P                  \        R4      ;_uu_ 4        \         P                  ! R^*\         P                  P                  R7       RRR4       \         P                  ! R^*\         P                  P                  R7      pV P                  \        R4      ;_uu_ 4        VP!                  \         P                  P                  R7       RRR4       V P#                  \%        V4      R4       V P'                  R\%        V4      9   4       R#   + '       g   i     EL0; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELg; i  + '       g   i     EL$; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELY; i  + '       g   i     L; i)r#   r1  r0  z)value '123' is not a valid Parameter.kind123Nznot a valid parameter namer  r2  fromname must be a strzis not a valid parameter name$z.azcannot have default valuesr$   z
<Parameterz"a=42")rM   ru  rv  r  r  r1  r  r9	  r8	  r0  r  r4  r5  rk  ro  rL  rV	  rl  r  rI   rU   r3   s   & r   test_signature_parameter_object3TestParameterObject.test_signature_parameter_object  sc   eR#*#4#4#D#DF'B'allAGG,!2!2!B!BC##J 1A B BeRe<B ##J0LMMc(9(9(E(EF N ##J0LMMf7+<+<+H+HI N ##I/CDDd):):)F)FG E ##J$CE Ec(9(9(E(EFE ##J$CE Ed):):)F)FGE ##J0LMMc2#*#4#4#@#@B N ##J0LMMc2#*#4#4#C#CE N c2#*#4#4#J#JL##J0LMMII7,,;;I< N 	d1g|4DG+,GB B B NMM NMM EDDE E EE E E NMM NMM NMsl   "P#"1P791Q1Q'1Q3>1R2R-2R/6+S#P4	7Q	Q	Q0	3R	R	R,	/S 	S	c                   \         P                  pV! R VP                  R7      pV P                  \	        V4      \	        V! R VP                  R7      4      4       V P                  \	        V4      \	        V! R VP                  ^*R7      4      4       V P                  \	        V4      \	        VP                  VP                  R7      4      4       R# )r#   r2  r/  N)rM   ru  rv  r  r=  r  rV	  ro  )rU   rX	  r#   s   &  r   !test_signature_parameter_hashable5TestParameterObject.test_signature_parameter_hashable  s    A--.cD5q7H7H)I$JKDItAe!:K:K68-: (; 	<DI !2B2B!CD	Fr!   c           	     8   \         P                  pV! R ^*\         P                  P                  R7      pV P                  W"8H  4       V P	                  W"8g  4       V P	                  V^*8H  4       V P                  V^*8g  4       V P                  V\
        8H  4       V P	                  V\
        8g  4       V P                  W!! R ^*\         P                  P                  R7      8H  4       V P	                  W!! R ^*\         P                  P                  R7      8g  4       R# )r#   rJ  N)rM   ru  rF  rI   rT   r   )rU   rX	  r3   s   &  r   !test_signature_parameter_equality5TestParameterObject.test_signature_parameter_equality  s    eRg&7&7&D&DE b!R Y'i(Qub$+$5$5$B$BD D 	Ear%,%6%6%C%CE E 	Fr!   c                   \         P                  ! R ^*\         P                  P                  R7      pV P                  VP	                  4       V4       V P                  VP	                  4       V4       V P                  \        P                  ! V4      V4       V P                  \        P                  ! V4      V4       VP	                  ^R7      pV P                  VP                  ^4       VP	                  VP                  R7      pV P                  W!4       \        P                  ! V^R7      pV P                  VP                  ^4       \        P                  ! W3P                  R7      pV P                  W14       VP	                  RR7      pV P                  VP                  R4       V P                  W!4       \        P                  ! VRR7      pV P                  VP                  R4       V P                  W14       V P                  \        R4      ;_uu_ 4        VP	                  VP                  R7      pRRR4       V P                  \        R4      ;_uu_ 4        \        P                  ! W3P                  R7      pRRR4       VP	                  R RR7      pV P                  VP                  R4       V P                  W!4       \        P                  ! VR RR7      pV P                  VP                  R4       V P                  W14       VP	                  R VP                  R7      pV P                  VP                  VP                  4       \        P                  ! VR VP                  R7      pV P                  VP                  VP                  4       VP	                  ^*VP                  R7      pV P                  VP                   VP                  4       V P                  W!4       \        P                  ! V^*VP                  R7      pV P                  VP                   VP                  4       V P                  W14       V P                  \        R4      ;_uu_ 4        VP	                  VP                  R	7      pRRR4       V P                  \        R4      ;_uu_ 4        \        P                  ! W3P                  R	7      pRRR4       VP	                  VP                  R	7      pV P                  W!4       \        P                  ! W3P                  R	7      pV P                  W14       R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i)
r#   rJ  r  r%   rQ	  zname is a required attributeN)r  r1  z<value <class 'inspect._empty'> is not a valid Parameter.kindr2  )rM   ru  rF  rB  rV	  r  r  r9	  r8	  r  r  r  r4  r  r1  rL  r0  )rU   r3   r  p3s   &   r    test_signature_parameter_replace4TestParameterObject.test_signature_parameter_replace,  s   eR#*#4#4#A#AC 	a(a(a!,a!,YY!Y$*ZZ288Z,\\!**\\"2ZZUZ#%(B"\\"5)%(B"##J$BD D*BD ##J$BD Dbxx0BD ZZUDZ1bjj$'B"\\"5$7bjj$'B"ZZUBHHZ5bjj"((+\\"5"((;bjj"((+ZZ)A)AZB"":":;B"\\"br/G/GH"":":;B"##J%DE E *BE ##J%DE E bxx0BE
 ZZR__Z-\\"??3MD D DD D D.E EE Es0   !T:$"U,U"/"U5:U	U	"U2	5V	c                    V P                  \        R 4      ;_uu_ 4        \        P                  ! R\        P                  P                  R7       RRR4       R#   + '       g   i     R# ; i)rM  Nr2  )r  rk  rM   ru  rv  rb   s   &r   (test_signature_parameter_positional_only<TestParameterObject.test_signature_parameter_positional_onlym  sB    ##I/CDDd):):)J)JK EDDDs   1AA+	c                   V P                  \        R 4      ;_uu_ 4        \        P                  ! R\        P                  P                  R7       RRR4       \        P                  ! R\        P                  P
                  R7      pV P                  VP                  \        P                  P                  4       V P                  VP                  R4       R#   + '       g   i     L; i)zYimplicit arguments must be passed as positional or keyword arguments, not positional-onlyz.0r2  N	implicit0)	r  r4  rM   ru  rv  rL  r  r0  r  )rU   r;	  s   & r   !test_signature_parameter_implicit5TestParameterObject.test_signature_parameter_implicitq  s    ##J%:; ; d):):)J)JK	; !!w((>>@W%6%6%F%FG[1; ;s   1CC*	c                h   \         P                  ! R \         P                  P                  R7      pV P                  \        4      ;_uu_ 4        RVn        RRR4       V P                  \        4      ;_uu_ 4        ^{Vn        RRR4       R#   + '       g   i     L?; i  + '       g   i     R# ; i)r   r2  r%   N)rM   ru  rF  rj  r  r#   r0  rO  s   & r   %test_signature_parameter_immutability9TestParameterObject.test_signature_parameter_immutability~  st    f7+<+<+I+IJ~..AE / ~..AF /. /. /..s   B;B B	 B1	r:   N)rJ   re   rf   rg   rG  rP  rS  rV  rZ  r]  r   ra  rd  rr   rs   rt   s   @r   rD  rD    sG     F+-ZFF ? BL 
2 
2 r!   rD  c                      a  ] tR tRt o ]R 4       tR tR tR tR t	R t
R tR	 tR
 tR tR tR tR t]R 4       tR tRtV tR# )TestSignatureBindi  c                    \         P                  ! V 4      pVP                  ! V/ VB p V ! VP                  / VP                  B #   \
         d   p\        ThR p?ii ; ir   )rM   r  r
  r   r  rk  r6  )r   r   r  rB	  r
  r   s   &*,   r   r
  TestSignatureBind.call  sZ    %XXt&v&	(.BII.. 	( a'	(s   A AAAc                   R  pV P                  V P                  V4      ^*4       V P                  \        R4      ;_uu_ 4        V P                  V^4       RRR4       V P                  \        R4      ;_uu_ 4        V P                  V^^
R7       RRR4       V P                  \        R4      ;_uu_ 4        V P                  V^R7       RRR4       R#   + '       g   i     L; i  + '       g   i     L_; i  + '       g   i     R# ; i)c                      ^*# rU	  r:   r:   r!   r   rq  9TestSignatureBind.test_signature_bind_empty.<locals>.test  s    r!   too many positional argumentsNr   )got an unexpected keyword argument 'spam'r  r
  r  rk  r  s   & r   test_signature_bind_empty+TestSignatureBind.test_signature_bind_empty  s    	 	4"-##I/NOOIIdA P##I/NOOIIdABI' P##BD D IIdI#D D	 POOOD D Ds$   C<C(7C;C%	(C8	;D	c           	     "   R  pV P                  V P                  V4      R/ 34       V P                  V P                  V^4      R/ 34       V P                  V P                  V^^4      R	/ 34       V P                  V P                  VRR7      RRR/34       V P                  V P                  V^RR7      RRR/34       V P                  V P                  V^
R7      RR^
/34       V P                  V P                  V^^RR7      R	RR/34       R# )
c                      W3# r   r:   r	  s   *,r   rq  7TestSignatureBind.test_signature_bind_var.<locals>.test  rn  r!   r%   rc  r#   r  r   Nr:   r  r  r  r
  r  s   & r   test_signature_bind_var)TestSignatureBind.test_signature_bind_var  s   	  	42r(34+dBZ84A.=4U3b5%.5IJ46u~8NO4b1B3EF4A59 5%.1	3r!   c           	        R  pV P                  V P                  V^^^4      R
4       V P                  \        R4      ;_uu_ 4        V P                  V^^^^4       RRR4       V P                  \        R4      ;_uu_ 4        V P                  V^4       RRR4       V P                  \        R4      ;_uu_ 4        V P                  V4       RRR4       RR lpV P                  V P                  V^^^4      R
4       V P                  V P                  V^^4      R4       R
R lpV P                  V P                  V^
^R7      R4       V P                  V P                  V^
R7      R4       V P                  V P                  V^
R	7      R4       R#   + '       g   i     EL?; i  + '       g   i     EL; i  + '       g   i     L; i)c                 
    WV3# r   r:   r,  s   &&&r   rq  =TestSignatureBind.test_signature_bind_just_args.<locals>.test  rh
  r!   rm  Nz missing a required argument: 'b'z missing a required argument: 'a'c                 
    WV3# r   r:   r,  s   &&&r   rq  rz    rh
  r!   c                 
    WV3# r   r:   r,  s   &&&r   rq  rz    rh
  r!   r"  r  ra
  r]  r	  )r   rx   r	  )r	  rx   rz
  )r	  rx   r  )r   r	  r  ro  r  s   & r   test_signature_bind_just_args/TestSignatureBind.test_signature_bind_just_args  s   	 	4Aq19=##I/NOOIIdAq!Q' P ##I$FH HIIdAH ##I$FH HIIdOH	4Aq19=4A.
;	424kB42.
;42.
;) POOH H HH Hs$   FF&;F:F#	&F7	:G
	c                    R  pV P                  V P                  V4      R4       V P                  V P                  V^^^4      R4       R# )c                      V # r   r:   r  s   *r   rq  ATestSignatureBind.test_signature_bind_varargs_order.<locals>.test  s    Kr!   Nr:   r]  ru  r  s   & r   !test_signature_bind_varargs_order3TestSignatureBind.test_signature_bind_varargs_order  s@    	 	4"-4Aq19=r!   c           
        RR lpV P                  V P                  V^^^^^4      R4       V P                  V P                  V^^4      R	4       V P                  V P                  V^^R7      R
4       V P                  V P                  V^^R7      R	4       V P                  \        R4      ;_uu_ 4        V P                  V^^^^R7       RRR4       R#   + '       g   i     R# ; i)r  c                 
    WW#3# r   r:   )r$   rT  r&   r   s   &&&*r   rq  DTestSignatureBind.test_signature_bind_args_and_varargs.<locals>.test  s    = r!   r'  ra
  z multiple values for argument 'c'r_
  Nr  )r   rx   r  )   r  )r   rx   r  r:   )rx   r   r  r:   ro  r  s   & r   $test_signature_bind_args_and_varargs6TestSignatureBind.test_signature_bind_args_and_varargs  s    	! 	4Aq!Q79JK4A.>412MB4a0-@##I%GI IIIdAq!qI)I I I Is   5CC'	c                    R  pV P                  V P                  V4      / 4       V P                  V P                  VRRR7      RRRR/4       R# )c                      V # r   r:   )r  s   ,r   rq  ?TestSignatureBind.test_signature_bind_just_kwargs.<locals>.test  s    Mr!   r%   ri  r#   r   r#   r   Nru  r  s   & r   test_signature_bind_just_kwargs1TestSignatureBind.test_signature_bind_just_kwargs  sL    	 	4"-4U?6	8r!   c                   RR lpV P                  V P                  V^^4      ^^^/ 34       V P                  V P                  V^^RRR7      ^^^RRRR/34       V P                  V P                  V^^RRR7      ^^^RRRR/34       V P                  V P                  V^^RRR7      ^^^RRRR/34       V P                  V P                  V^^RRR	7      ^^^RRRR/34       V P                  V P                  V^^^RRR
7      ^^^RRRR/34       V P                  V P                  V^^^RR7      ^^^RR/34       V P                  V P                  V^^^R7      ^^^/ 34       R# )r  c                 
    WW#3# r   r:   rV  s   &&&,r   rq  CTestSignatureBind.test_signature_bind_args_and_kwargs.<locals>.test  s    ?"r!   r%   ri  r  r#   r   )rT  r$   r#   r   )r$   rT  r#   r   )rT  r#   r   )rT  r&   r#   r   rc  )r&   r$   rT  Nr  ru  r  s   & r   #test_signature_bind_args_and_kwargs5TestSignatureBind.test_signature_bind_args_and_kwargs  s   	# 	4A.Aq">4A5uEQE5&%#@A	C41u5IQE5&%#@A	C41u5IQE5&%#@A	C4aUGQE5&%#@A	C4a1%eLQE5&%#@A	C4Aqe<QE5>2	441Q7Q2	(r!   c           
        R  pV P                  \        R4      ;_uu_ 4        V P                  V^4       RRR4       V P                  V P                  V^R7      ^4       R^/R lpV P                  \        R4      ;_uu_ 4        V P                  V^4       RRR4       R pV P                  V P                  V^^R7      R4       V P                  V P                  V^^R	7      R4       V P                  \        R
4      ;_uu_ 4        V P                  V^^^
R7       RRR4       V P                  \        R4      ;_uu_ 4        V P                  V^^4       RRR4       V P                  \        R4      ;_uu_ 4        V P                  V^^^R7       RRR4       V P                  \        R
4      ;_uu_ 4        V P                  V^^RR7       RRR4       V P                  \        R4      ;_uu_ 4        V P                  V^4       RRR4       R pV P                  V P                  V^^R7      ^^/ 34       V P                  V P                  V^^R7      ^^/ 34       V P                  V P                  V^^RR7      ^^RR/34       V P                  V P                  VR^^R7      ^^RR/34       V P                  \        R4      ;_uu_ 4        V P                  VR^R7       RRR4       V P                  V P                  V^^^^
R7      ^^R^R^
/34       R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL3; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     L; i)c                     V # r   r:   rc  s   $r   rq  :TestSignatureBind.test_signature_bind_kwonly.<locals>.test      Jr!   rm  Nrc  r#   c                    V# r   r:   )r$   r#   r%   s   &$$r   rq  r    r  r!   z"missing a required argument: 'bar'c                    W3# r   r:   r  s   &$r   rq  r    s	    8Or!   r%   )r%   r#   rn  )r%   r#   r   ri  )r%   r   z/missing a required keyword-only argument: 'bar'c                
    WV3# r   r:   )r#   r%   bins   &$,r   rq  r  $  s    S= r!   r  r   )r   r#   r%   z"missing a required argument: 'foo')r   r%   )r%   r  r   r  r  )r  rk  r
  r  r  s   & r   test_signature_bind_kwonly,TestSignatureBind.test_signature_bind_kwonly  s   	##I%DF FIIdAF 	4Q/3	1 	##I%IK KIIdAK	42F;4QA6?##BD D IIdqrI2D
 ##I%DF FIIdAq!F ##I%DF FIIdAqaI(F ##BD D IIdA15I1D
 ##I&78 8 IIdA8
	!42Q2J?4QA6Ar
C4>Q0	24eBQ0	2##I$HJ JIIdAI.J 	4qrBQ62 67	9eF F FK K KD D D
F F FF F FD D D
8 8 8J Js_   L!L5	M	M?M1;N7NN-!L2	5M		M	M.	1N	N	N*	-N=	c                l   R ^d/R lp\         P                  ! V4      pVP                  ^
^^^(^2^<R7      pV P                  \	        VP
                  P                  4       4      RR	R
RR^(R^2R^</334       V P                  VP                  R^R^(R^2R^</4       V P                  VP                  R4       R# )r+   c                    R # r   r:   )r$   rT  r+   r   r  s   &$$*,r   rq  =TestSignatureBind.test_signature_bind_arguments.<locals>.test3  rs  r!   )rT  r&   r   r  r   rT  r  r&   Nr$   r	  )r   )rv
  )rT  rw
  )r	  rv
  )	rM   r  r
  r  r>	  	argumentsitemsr  r   rU   rq  rB	  r
  s   &   r   test_signature_bind_arguments/TestSignatureBind.test_signature_bind_arguments2  s    	 	%XXb"br"X= 	r||1134#_i#c2vr8R%HIK	L 	r3FB"E	G(+r!   c                   RR^2/R llpV P                  V P                  V^^^^^R7      ^^^^^/ 34       V P                  V P                  V^^4      ^^^^*^2/ 34       V P                  V P                  V^^^^R7      ^^^^^/ 34       V P                  V P                  V^^^^^
R7      ^^^^^R^
/34       V P                  V P                  V^^^^^^R7      ^^^^^R^/34       V P                  V P                  V^^^^^^R7      ^^^^^R^/34       V P                  V P                  V^^^R7      ^^^^*^2R^/34       V P                  \        R	4      ;_uu_ 4        V P                  V^^R
7       RRR4       RR lpV P                  \        R4      ;_uu_ 4        V P                  V^!^,R7       RRR4       R#   + '       g   i     LR; i  + '       g   i     R# ; i)r  r%   c                   WW#WE3# r   r:   )rl  b_poc_por#   r%   r  s   """&$,r   rq  CTestSignatureBind.test_signature_bind_positional_only.<locals>.testA  s    t#55r!   r  r  )r#   r%   r  r  )r  r#   r%   )r  z3missing a required positional-only argument: 'a_po')rl  r  Nc                    W3# r   r:   r  d_pos   ""r   without_var_kwargsQTestSignatureBind.test_signature_bind_positional_only.<locals>.without_var_kwargs\  s
    :r!   zCpositional-only arguments passed as keyword arguments: 'c_po, d_po'r  )r  r  )r  r  ro  )rU   rq  r  s   &  r   #test_signature_bind_positional_only5TestSignatureBind.test_signature_bind_positional_only@  s   	6r 	6 	4Aq!;Q1a,	. 	4A.Q2r2.	0 	4A1!<Q1a,	. 	4A1!"EQ1a&"6	8 	4ArqIQAq62,7	9 	4ArqabIQAq62,7	9 	4AA6Q2rFA;7	9 ##I/deeIIdI+ f	 ##Q
 
 II(rI;	
 
 fe
 
 
s   &G&GG	G)	c                    R  p\         P                  ! V4      pVP                  ^^^4      pV P                  VP                  R4       VP                  ^^^R7      pV P                  VP                  R4       R# )c                     R # r   r:   )r$   rU   rT  s   &&&r   rq  ATestSignatureBind.test_signature_bind_with_self_arg.<locals>.testg  rs  r!   r
  Nr]  )rM   r  r
  r  r   r  s   &   r   !test_signature_bind_with_self_arg3TestSignatureBind.test_signature_bind_with_self_arge  se    	%XXaA),XXaa1X%),r!   c                   R  p\         P                  ! V4      pV P                  \        R4      ;_uu_ 4        VP	                  ^ ^R7       RRR4       R pV P                  V P                  V^R7      RR^/34       \         P                  ! V4      pVP	                  ^R7      pV P                  VP                  RR^//4       R#   + '       g   i     L; i)	c                     W3# r   r:   r$   r   s   &*r   rq  ?TestSignatureBind.test_signature_bind_vararg_name.<locals>.testp  s	    7Nr!   z)got an unexpected keyword argument 'args'r  Nc                      W3# r   r:   r	  s   *,r   rq  r  y  rn  r!   r  r   r  r:   )rM   r  r  rk  r
  r  r
  r  r  s   &   r   test_signature_bind_vararg_name1TestSignatureBind.test_signature_bind_vararg_nameo  s    	%##BD D HHqqH!D
	 4a02{2CD%XX1X61+'>?D Ds   CC	c                    R  pVP                   P                  ^ ,          p\        P                  ! V/ 4      p\	        \        ^4      4      pV P                  \        V P                  W44      4      0 Rm4       R# )c                  8    \        R  \        ^4       4       4      # )c              3   2   "   T F  qV,          x  K  	  R # 5ir   r:   )r:	  r+   s   & r   r<	  WTestSignatureBind.test_signature_bind_implicit_arg.<locals>.make_set.<locals>.<genexpr>  s     /h1uuhs   )rL   r,   r:   r!   r   make_setDTestSignatureBind.test_signature_bind_implicit_arg.<locals>.make_set  s    /eAh///r!   N>   r   r   r  r     )	r  	co_constsr   re  iterr,   r  rL   r
  )rU   r  gencomp_codegencomp_funciterators   &    r    test_signature_bind_implicit_arg2TestSignatureBind.test_signature_bind_implicit_arg  s[    	0((2215)),;a>TYY|>?AQRr!   c                    R  p\         P                  ! V4      pVP                  RRR7      pV P                  VP                  RR/4       V P                  RVP                  P                  4       4       R# )c                &    WP                  V 4      3# r   )r,  )r%   r  s   ",r   r#   ATestSignatureBind.test_signature_bind_posonly_kwargs.<locals>.foo  s    

3''r!   pos-onlykeywordr  r%   N)r%   r  )rM   r  r
  r  r  rZ  r  r  )rU   r#   rB	  results   &   r   "test_signature_bind_posonly_kwargs4TestSignatureBind.test_signature_bind_posonly_kwargs  sb    	( $*)4	(:;)6+;+;+A+A+CDr!   r:   N)rJ   re   rf   rg   r   r
  rp  rv  r}  r  r  r  r  r  r  r  r  r  r   r  r  rr   rs   rt   s   @r   rg  rg    sx     ( ($3<8>*8((69p,#<J-@$ S SE Er!   rg  c                   D   a  ] tR tRt o R tR tR tR tR tR t	Rt
V tR	# )
TestBoundArgumentsi  c                    R  p\         P                  ! V4      P                  ^4      pV P                  \        R4      ;_uu_ 4        \        V4       RRR4       R#   + '       g   i     R# ; i)c                     R # r   r:   r  s   &r   r#   ITestBoundArguments.test_signature_bound_arguments_unhashable.<locals>.foo  r  r!   rI  N)rM   r  r
  r  rk  r=  rU   r#   r
  s   &  r   )test_signature_bound_arguments_unhashable<TestBoundArguments.test_signature_bound_arguments_unhashable  sK    s#((+##I/@AAH BAAAs   AA.	c                   R  p\         P                  ! V4      P                  ^4      pV P                  W"8H  4       V P	                  W"8g  4       V P                  V\
        8H  4       V P	                  V\
        8g  4       \         P                  ! V4      P                  ^4      pV P                  W#8H  4       V P	                  W#8g  4       \         P                  ! V4      P                  ^4      pV P	                  W$8H  4       V P                  W$8g  4       ^VP                  R&   V P                  W$8H  4       V P	                  W$8g  4       R p\         P                  ! V4      P                  ^4      pV P	                  W&8H  4       V P                  W&8g  4       R p\         P                  ! V4      pVP                  ^^R7      pVP                  ^^R7      pV P                  W8H  4       V P	                  W8g  4       R# )c                     R # r   r:   r  s   &r   r#   GTestBoundArguments.test_signature_bound_arguments_equality.<locals>.foo  r  r!   r$   c                     R # r   r:   ra
  s   &r   r%   GTestBoundArguments.test_signature_bound_arguments_equality.<locals>.bar  r  r!   c                     R # r   r:   rS  s   $$r   r#   r    r  r!   rS  r'  N)rM   r  r
  rI   rT   r   r  )	rU   r#   r
  ba2ba3r%   ba4rB	  ba1s	   &        r   'test_signature_bound_arguments_equality:TestBoundArguments.test_signature_bound_arguments_equality  s   s#((+!"i(y)$))!,	"#$))!,#	"c	"#$))!,#	"$hhah hhah 
#$r!   c           	        R / /R R llp\         P                  ! V4      pVP                  ^^/ R7      p\        \        P
                  ^,           4       Fa  pV P                  VR7      ;_uu_ 4        \        P                  ! \        P                  ! W44      4      pV P                  W54       RRR4       Kc  	  R#   + '       g   i     Kx  ; i)r&   c                $    V ^8  d   QhR^R^*R//# r_	  r:   )r  s   "r   r  NTestBoundArguments.test_signature_bound_arguments_pickle.<locals>.__annotate__  ra	  r!   c                    R # r   r:   rc	  s   &&$,r   r#   ETestBoundArguments.test_signature_bound_arguments_pickle.<locals>.foo  re	  r!   r+   )rf	  N)
rM   r  r
  r,   rh	  ri	  r  rj	  rk	  r  )rU   r#   rB	  r
  rn	  
ba_pickleds   &     r   %test_signature_bound_arguments_pickle8TestBoundArguments.test_signature_bound_arguments_pickle  s    :R:$XXb"X#00145C--#\\&,,r*?@
  0 .- 6---s   2<B<<Cc                    R / /R R llp\         P                  ! V4      pVP                  ^^/ R7      pV P                  \	        V4      R4       R# )r&   c                $    V ^8  d   QhR^R^*R//# r_	  r:   )r  s   "r   r  LTestBoundArguments.test_signature_bound_arguments_repr.<locals>.__annotate__  ra	  r!   c                    R # r   r:   rc	  s   &&$,r   r#   CTestBoundArguments.test_signature_bound_arguments_repr.<locals>.foo  re	  r!   r  z <BoundArguments \(a=20,.*\}\}\)>N)rM   r  r
  assertRegexr  rU   r#   rB	  r
  s   &   r   #test_signature_bound_arguments_repr6TestBoundArguments.test_signature_bound_arguments_repr  sC    :R:$XXb"X#b#FGr!   c           
     \   RR/ /R R lllp\         P                  ! V4      pVP                  ^4      pVP                  4        V P	                  \        VP                  P                  4       4      RRRR/ 3R/ 3.4       VP                  ^
^^^R7      pVP                  4        V P	                  \        VP                  P                  4       4      RRRR/ 3RR^/3.4       R p\         P                  ! V4      pVP                  ^4      pVP                  4        V P	                  \        VP                  P                  4       4      R.4       R p\         P                  ! V4      pVP                  4       pVP                  4        V P	                  \        VP                  P                  4       4      . 4       RR	 lp\         P                  ! V4      pVP                  4       pVP                  4        V P	                  \        VP                  P                  4       4      R.4       R
# )r   r&   c                    V ^8  d   QhR^/# )rx   r&   r:   )r  s   "r   r  VTestBoundArguments.test_signature_bound_arguments_apply_defaults.<locals>.__annotate__  s    222r!   c                    R # r   r:   )r$   rT  r&   r   rA	  s   &&$*,r   r#   MTestBoundArguments.test_signature_bound_arguments_apply_defaults.<locals>.foo  s    dr!   rA	  )r  r  c                     R # r   r:   rS  s   &&r   r#   r    r   r!   c                      R # r   r:   r:   r!   r   r#   r    r   r!   c                     R # r   r:   r  s   &r   r#   r    r0  r!   Nr  )r$   rv
  )rT  r   )r   r:   r  )rT  rv
  )r   )rw
  r   )r$   r   )	rM   r  r
  apply_defaultsr  r+  r  r  bind_partialr  s   &   r   -test_signature_bound_arguments_apply_defaults@TestBoundArguments.test_signature_bound_arguments_apply_defaults  s   2222$XXb\
##%&,b	D":F	H XXb"bAX&
##%&	?S"Is1gO	Q 	$b!
##%&K	
 	$XXZ
bll0023R8 	 $XXZ
bll0023m_Er!   c                    R  p\         P                  ! V4      P                  ^4      pV P                  \	        VP
                  4      \        4       R# )c                     R # r   r:   r  s   &r   r#   MTestBoundArguments.test_signature_bound_arguments_arguments_type.<locals>.foo  r  r!   N)rM   r  r
  r  r   r  rX  r  s   &  r   -test_signature_bound_arguments_arguments_type@TestBoundArguments.test_signature_bound_arguments_arguments_type  s7    s#((+d2<<($/r!   r:   N)rJ   re   rf   rg   r  r  r  r  r  r  rr   rs   rt   s   @r   r  r    s+     %>1H(FT0 0r!   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )TestSignaturePrivateHelpersi  c                |    \         P                  ! V4      w  ppV P                  WB4       V P                  WS4       R # r   )rM   "_signature_strip_non_python_syntaxr  )rU   r!  clean_signatureself_parametercomputed_clean_signaturecomputed_self_parameters   &&&&  r   _strip_non_python_syntax4TestSignaturePrivateHelpers._strip_non_python_syntax  s;     66u=	$ #1C0Ar!   c                   V P                  RR	^ 4       V P                  RR^ 4       V P                  RRR4       V P                  RRR4       V P                  RRR4       V P                  RRR4       V P                  RRR4       R# )
z)($module, /, path, mode, *, dir_fd=None, z($module, word, salt, /)z(module, word, salt, /)z(x, y=None, z=None, /)Nz(x, y=None, z=None)z!(x,
    y=None,
      z = None  )r  zZ($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))r  rb   s   &r   &test_signature_strip_non_python_syntaxBTestSignaturePrivateHelpers.test_signature_strip_non_python_syntax  s    %%E=	 	%%&%	
 	%%$$	
 	%%!!	
 	%%1!	
 	%%	
 	%%	r!   r:   N)rJ   re   rf   rg   r  r  rr   rs   rt   s   @r   r  r    s     B$ $r!   r  c                   p  a  ] tR tRt o ]R 4       t]]P                  ! ]	R4      R)R)/ / R)3R l4       4       t
R tR tR tR tR	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!R t"R t#R t$R t%R  t&R! t'R" t(R# t)R$ t*R% t+R& t,R' t-].P^                  R( 4       t0R)t1V t2R*# )+TestSignatureDefinitionsi,  c                    V P                  R 4      '       * ;'       g+    V P                  R4      ;'       d    V P                  R4      # )r  __)
startswithr  rQ	  s   &r   	is_public"TestSignatureDefinitions.is_public0  s7    ??3''XX4??4+@+X+XT]]SWEXXr!   r  c                  a  T;'       g    \        4       p\        V4      p \        VP                  4      p\	        VP                  4       4       EF'  w  rW9  d   K  \        V
4      '       g   K!  \        V
\        4      '       d.   \        V
\        4      '       d   W9  d   VP                  V	4       W9  dP   W9  dJ   S P                  RV	R7      ;_uu_ 4        S P                  \        P                  ! V
4      4       RRR4       \        V
\        4      '       g   K  S P                  V	R7      ;_uu_ 4        S P!                  V
VP#                  V	R4      VP#                  V	R4      4       RRR4       EK*  	  V Fo  p	S P                  RV	R7      ;_uu_ 4        Wy,          p
S P%                  V
P&                  4       S P)                  \*        \        P                  V
4       RRR4       Kq  	  V Fo  p	S P                  RV	R7      ;_uu_ 4        Wy,          p
S P                  V
P&                  4       S P)                  \*        \        P                  V
4       RRR4       Kq  	  R#   \         d    \        T 3R  lT 4       4      p ELTi ; i  + '       g   i     EL; i  + '       g   i     EKe  ; i  + '       g   i     EKL  ; i  + '       g   i     K  ; i)c              3   Z   <"   T F   pSP                  V4      '       g   K  Vx  K"  	  R # 5ir   )r   )r:	  r  rU   s   & r   r<	  GTestSignatureDefinitions._test_module_has_signatures.<locals>.<genexpr>I  s     Dt~~d/Cs   +
+	supported)r  Nr   noneunsupportedr:   )rL   vars__all__r  r  r  callabler  r   
issubclassBaseExceptionr  r  assertIsNotNonerM   r  %_test_builtin_methods_have_signaturesr,  r3  r  rj  r4  )rU   moduleno_signatureunsupported_signaturemethods_no_signaturemethods_unsupported_signaturegood_exceptionsr  r  r  rX   s   f&&&&&&    r   _test_module_has_signatures4TestSignatureDefinitions._test_module_has_signatures4  s'    $,,su&\	E'E  
+ID C==3%%3..+  &'D,M\\+t\<<(():):3)?@ =#t$$\\t\,,>>s044T2>9==dBGI -, ,* !Dfd33h!!#"8"89!!*g.?.?E 43 !
 *DmT::h$$S%;%;<!!*g.?.?E ;: *9  	EDDDE	E =<< -,, 433
 ;::sC   I( &J;4J#A	J8A	K( JJJ #J58K
Kc                   \        V4      pV F  p\        WR 4      p\        V4      '       d   \        V\        4      '       d   K8  WR9  g   K@  WS9  g   KH  V P                  RVR7      ;_uu_ 4        V P                  \        P                  ! V4      4       R R R 4       K  	  V Fy  pV P                  RVR7      ;_uu_ 4        V P                  \        W4      P                  4       V P                  \        \        P                  \        W4      4       R R R 4       K{  	  V Fy  pV P                  RVR7      ;_uu_ 4        V P                  \        W4      P                  4       V P                  \        \        P                  \        W4      4       R R R 4       K{  	  R #   + '       g   i     EK  ; i  + '       g   i     EK%  ; i  + '       g   i     K  ; i)Nr%  )r3  r&  r'  )r(  r  r*  r  r   r  r-  rM   r  r3  r  rj  r4  )rU   r   r0  r1  r  r  rX   s   &&&&   r   r.  >TestSignatureDefinitions._test_builtin_methods_have_signaturesj  sV   #YD#T*CC==JsD$9$9'D,M\\+d\;;(():):3)?@ <;  !DfT22!!'#"4"G"GH!!*g.?.?AST 32 ! *DmD99$$WS%7%J%JK!!*g.?.?AST :9 * <;; 322 :99s&   1&F#AF8AG#F58G
Gc                    0 Rmp0 RmpW,          pR0p0 RmpW,          pRR0RR0/pR0 RmR0 RmRR
0RRR	0R0 Rm/pV P                  \        WWV4       R# )r   r	  r	  rX  r*  r
	  updater   r  hexr  
memoryviewcastN>   r   r*  rX  r   r	  r  r	  >   r  r  r  r(  r,   slicer  >   maxr	  __build_class__>   r;  findr$  r  rfindrindexr  r  >   rA  r$  r  rB  rC  r  r	  r  )r5  r8  )rU   r0  needs_groupsr1  needs_varargsr2  r3  s   &      r   test_builtins_have_signatures6TestSignatureDefinitions.test_builtins_have_signatures|  s    T0$!(	9% XJ{m 

 gcUG65/g)
% 	(($	Er!   c                R    R 0pRR0RR0RR0/pV P                  \        VVR7       R# )CellTypeAsyncGeneratorTyper	  CoroutineTyper;   GeneratorType)r1  r2  N)r5  r   )rU   r1  r2  s   &  r    test_types_module_has_signatures9TestSignatureDefinitions.test_types_module_has_signatures  sD    !+ 8*gYgY 

 	((&;%9 	) 	;r!   c                    R R0pTR Uu0 uF  p\        \        V4      '       g   K  VkK  	  up,          pV P                  \        V4       R# u upi )	getsizeofset_asyncgen_hooksN)
getobjects)r   r:  r5  rU   r0  r  s   &  r   test_sys_module_has_signatures7TestSignatureDefinitions.test_sys_module_has_signatures  sP    #%9:. 0.$#C. . 0 	0((l;0
   AAc                0    ^ RI pV P                  V4       R# r  )rr  r5  )rU   rr  s   & r   test_abc_module_has_signatures7TestSignatureDefinitions.test_abc_module_has_signatures  s    ((-r!   c                0    ^ RI pV P                  V4       R# r  )atexitr5  )rU   r[  s   & r   !test_atexit_module_has_signatures:TestSignatureDefinitions.test_atexit_module_has_signatures      ((0r!   c                >    ^ RI pRR0/pV P                  VVR7       R# )r   NStreamReadercharbuffertyper2  )codecsr5  )rU   rc  r2  s   &  r   !test_codecs_module_has_signatures:TestSignatureDefinitions.test_codecs_module_has_signatures  s,     .1A0BC((%9 	) 	;r!   c                b    R R0pR0pR R0/pRR0R R0RR0/pV P                  \        WW44       R# )	rl	  defaultdictdequer:  r  r  
UserStringr	  N)r5  r  )rU   r0  r1  r2  r3  s   &    r   &test_collections_module_has_signatures?TestSignatureDefinitions.test_collections_module_has_signatures  s[    %}5!(	H: 
 gYE7;-)
%
 	(($	Er!   c                D    ^ RI pV P                  VP                  4       R# r  )r  r5  rr  )rU   r  s   & r   *test_collections_abc_module_has_signaturesCTestSignatureDefinitions.test_collections_abc_module_has_signatures  s    ((9r!   c                0    ^ RI pV P                  V4       R# r  )errnor5  )rU   rp  s   & r    test_errno_module_has_signatures9TestSignatureDefinitions.test_errno_module_has_signatures  s    ((/r!   c                    ^ RI p0 RmpTR Uu0 uF  p\        W4      '       g   K  VkK  	  up,          pV P                  WR7       R# u upi )r   Nr1  >   enabledump_c_stackdump_tracebackdump_traceback_later)register)faulthandlerr   r5  )rU   rz  r1  r  s   &   r   'test_faulthandler_module_has_signatures@TestSignatureDefinitions.test_faulthandler_module_has_signatures  sR     d< "B<4%,\%@ #'$< "B 	B(((c"Bs
   A	A	c                :    R 0pV P                  \        VR7       R# )reducert  N)r5  r   rU   r1  s   & r   $test_functools_module_has_signatures=TestSignatureDefinitions.test_functools_module_has_signatures  s    !)
((J_(`r!   c                6    ^ RI pR0pV P                  W4       R# )r   Nset_threshold)rp  r5  )rU   rp  r0  s   &  r   test_gc_module_has_signatures6TestSignatureDefinitions.test_gc_module_has_signatures  s    '(((:r!   c                @    R 0 Rm/pV P                  \        VR7       R# )BufferedRWPairrb  N>   peekr  read1r  readinto	readinto1)r5  r  )rU   r2  s   & r   test_io_module_has_signatures6TestSignatureDefinitions.test_io_module_has_signatures  s*    Y 
 	((%9 	) 	;r!   c                8    ^ RI pRR0pV P                  W4       R# )r   Nislicerepeat)	itertoolsr5  )rU   r  r0  s   &  r   $test_itertools_module_has_signatures=TestSignatureDefinitions.test_itertools_module_has_signatures  s     (+((Ar!   c                0    ^ RI pV P                  V4       R# r  )localer5  )rU   r  s   & r   !test_locale_module_has_signatures:TestSignatureDefinitions.test_locale_module_has_signatures  r^  r!   c                0    ^ RI pV P                  V4       R# r  )marshalr5  )rU   r  s   & r   "test_marshal_module_has_signatures;TestSignatureDefinitions.test_marshal_module_has_signatures  s    ((1r!   c                0    ^ RI pV P                  V4       R# r  )operatorr5  )rU   r  s   & r   #test_operator_module_has_signatures<TestSignatureDefinitions.test_operator_module_has_signatures      ((2r!   c                    R R0pTR Uu0 uF  p\        \        V4      '       g   K  VkK  	  up,          pV P                  \        VR7       R# u upi )chmodutimert  N)get_terminal_sizelinkposix_spawnposix_spawnpregister_at_fork	startfile)r   r  r5  )rU   r1  r  s   &  r   test_os_module_has_signatures6TestSignatureDefinitions.test_os_module_has_signatures  se    !(' 2."". ,0 r4  #'$."" 	" 	((CX(Y	""s
   AAc                T    \         P                  ! R 4      pV P                  V4       R# )pwdN)r	   r  r5  )rU   r  s   & r   test_pwd_module_has_signatures7TestSignatureDefinitions.test_pwd_module_has_signatures  s     ))%0((-r!   c                D    ^ RI pRR0/pV P                  VVRR0R7       R# )r   NMatchgrouperrorPatternError)r2  r4  )rer5  )rU   r  r2  s   &  r   test_re_module_has_signatures6TestSignatureDefinitions.test_re_module_has_signatures  s2     ''3((%9!(. 9 	) 	;r!   c                0    ^ RI pV P                  V4       R# r  )signalr5  )rU   r  s   & r   !test_signal_module_has_signatures:TestSignatureDefinitions.test_signal_module_has_signatures  r^  r!   c                0    ^ RI pV P                  V4       R# r  )r  r5  )rU   r  s   & r   test_stat_module_has_signatures8TestSignatureDefinitions.test_stat_module_has_signatures  s    ((.r!   c                0    ^ RI pV P                  V4       R# r  )stringr5  )rU   r  s   & r   !test_string_module_has_signatures:TestSignatureDefinitions.test_string_module_has_signatures  r^  r!   c                0    ^ RI pV P                  V4       R# r  )symtabler5  )rU   r  s   & r   #test_symtable_module_has_signatures<TestSignatureDefinitions.test_symtable_module_has_signatures  r  r!   c                0    ^ RI pV P                  V4       R# r  )	sysconfigr5  )rU   r  s   & r   $test_sysconfig_module_has_signatures=TestSignatureDefinitions.test_sysconfig_module_has_signatures  s    ((3r!   c                    ^ RI pV P                  V4       V P                  \        P                  ! VP
                  4      4       R# r  )	threadingr5  r-  rM   r  __excepthook__)rU   r  s   & r   $test_threading_module_has_signatures=TestSignatureDefinitions.test_threading_module_has_signatures  s2    ((3W..y/G/GHIr!   c                6    ^ RI pR0pV P                  W4       R# )r   NRLock)_threadr5  )rU   r  r0  s   &  r   !test_thread_module_has_signatures:TestSignatureDefinitions.test_thread_module_has_signatures!  s    y((?r!   c                    0 RmpTR Uu0 uF  p\        \        V4      '       g   K  VkK  	  up,          pV P                  \        V4       R# u upi )asctimeN>   ctimegmtimer  strftimestrptime	localtimeget_clock_info)clock_getresclock_settimeclock_settime_nspthread_getcpuclockid)r   r  r5  rS  s   &  r   test_time_module_has_signatures8TestSignatureDefinitions.test_time_module_has_signatures&  s^    
 	&$& #' tT" &$ 	$ 	((|<	$rV  c                0    ^ RI pV P                  V4       R# r  )tokenizer5  )rU   r  s   & r   #test_tokenize_module_has_signatures<TestSignatureDefinitions.test_tokenize_module_has_signatures1  r  r!   c                0    ^ RI pV P                  V4       R# r  )tracemallocr5  )rU   r  s   & r   &test_tracemalloc_module_has_signatures?TestSignatureDefinitions.test_tracemalloc_module_has_signatures5  s    ((5r!   c                V    ^ RI p0 RmpRRR0/pR0 Rm/pV P                  WVVR7       R# )	r   NTextr  r  r{  )r2  r3  >   r  r  	ParamSpecTypeVarTupleParamSpecArgsTypeAliasTypeParamSpecKwargs>   rA  r$  r  rB  rC  r  r	  r  )r  r5  )rU   r  r0  r2  r3  s   &    r   !test_typing_module_has_signatures:TestSignatureDefinitions.test_typing_module_has_signatures9  sQ    L +-@A 
 h)
% 	((%9.K 	) 	Mr!   c                <    R R0pV P                  \        VR7       R# )warnwarn_explicitrt  N)r5  r   r  s   & r   #test_warnings_module_has_signatures<TestSignatureDefinitions.test_warnings_module_has_signaturesG  s!    !' 9((I^(_r!   c                8    ^ RI pRR0pV P                  W4       R# )r   NReferenceTypero  )rn  r5  )rU   rn  r0  s   &  r   "test_weakref_module_has_signatures;TestSignatureDefinitions.test_weakref_module_has_signaturesK  s    '/((?r!   c                   R  pRVn         \        P                  ! V4      pV P                  V4       V P	                  \        V4      R4       RVn         \        P                  ! V4      pV P	                  \        V4      R4       RVn         \        P                  ! V4      pV P	                  \        V4      R4       RVn         \        P                  ! V4      pV P	                  \        V4      R4       R	Vn         V P                  \        4      ;_uu_ 4        \        P                  ! V4       R
R
R
4       RVn         V P                  \        4      ;_uu_ 4        \        P                  ! V4       R
R
R
4       RVn         V P                  \        4      ;_uu_ 4        \        P                  ! V4       R
R
R
4       R
#   + '       g   i     L; i  + '       g   i     Lh; i  + '       g   i     R
# ; i)c                      R # r   r:   r	  s   *,r   r   NTestSignatureDefinitions.test_python_function_override_signature.<locals>.funcQ  rs  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)Nz(self, x=sys, y=inspect)z(self, 123))r  rM   r  r-  r  r*  rj  r4  )rU   r   rB	  s   &  r   'test_python_function_override_signature@TestSignatureDefinitions.test_python_function_override_signatureP  sn   	"L%S!S#OP"O%S#OP"F%S#;<"B%S#:;"<z**d# +"<z**d# +"/z**d# +* +* +* +**s$   G GG& G	G#	&G7	c                    ^ RI Hp  ! R RV4      pVP                  pV P                  VR4       \        P
                  ! V4      pV P                  \        V4      R4       R# )r   )BufferedReaderc                       ] tR tRtRtRtR# )VTestSignatureDefinitions.test_base_class_have_text_signature.<locals>.MyBufferedReaderir  zbuffer reader class.r:   N)rJ   re   rf   rg   r  rr   r:   r!   r   MyBufferedReaderr  r  s    &r!   r  z&(raw, buffer_size=DEFAULT_BUFFER_SIZE)z(raw, buffer_size=8192)N)test.typinganndata.ann_module7r  r  r  rM   r  r*  )rU   r  r  text_signaturerB	  s   &    r   #test_base_class_have_text_signature<TestSignatureDefinitions.test_base_class_have_text_signaturen  sX     	B	'~ 	' (::)QR 01S#<=r!   r:   N)3rJ   re   rf   rg   r   r   r   r   r  r
   r5  r.  rF  rM  rT  rX  r\  rd  rj  rm  rq  r{  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r   r  r	  rr   rs   rt   s   @r   r  r  ,  s/     Y Y __)MO  r%'r "1FO 1FfU$E6	;<.1;E:0da;
;B
123Z.;1/134J
@
	=36M`@
$<   	> !	>r!   r  c                   6   a  ] tR tRt o R t]R 4       tRtV tR# )NTimesUnwrappablei{  c                     Wn         R V n        R # r   )r	  _next)rU   r	  s   &&r   r'  NTimesUnwrappable.__init__|  s    
r!   c                    V P                   ^ 8:  d   \        R4      hV P                  f"   \        V P                   ^,
          4      V n        V P                  # )r   zUnwrapped too many times)r	  r   r  r  rb   s   &r   r
  NTimesUnwrappable.__wrapped__  sA    66Q;677::*466A:6DJzzr!   )r  r	  N)	rJ   re   rf   rg   r'  r  r
  rr   rs   rt   s   @r   r  r  {  s       r!   r  c                   J   a  ] tR tRt o R tR tR tR tR tR t	R t
R	tV tR
# )
TestUnwrapi  c                    R  p\         P                  ! ^R7      ! V4      pV P                  \        P                  ! V4      V4       R# )c                     W,           # r   r:   rS  s   &&r   r   (TestUnwrap.test_unwrap_one.<locals>.func  	    5Lr!   )r	  N)r   	lru_cacher  rM   unwrap)rU   r   r	  s   &  r   test_unwrap_oneTestUnwrap.test_unwrap_one  s3    	%%b1$7gnnW-t4r!   c                    R  pTp\        ^
4       F  p\        P                  ! V4      R 4       pK!  	  V P                  VP                  V4       V P                  \        P                  ! V4      V4       R# )c                     W,           # r   r:   rS  s   &&r   r   ,TestUnwrap.test_unwrap_several.<locals>.func  r  r!   c                      R # r   r:   r:   r!   r   r	  /TestUnwrap.test_unwrap_several.<locals>.wrapper  r   r!   N)r,   r   rl  rB  r
  r  rM   r  )rU   r   r	  r  s   &   r   test_unwrap_severalTestUnwrap.test_unwrap_several  sd    	)B__W% &  	,,d3gnnW-t4r!   c                    R  p\         P                  ! V4      R 4       p\         P                  ! V4      R 4       p^Vn        \        P                  ! VR R7      pV P                  WB4       R# )c                     W,           # r   r:   rS  s   &&r   func1#TestUnwrap.test_stop.<locals>.func1  r  r!   c                      R # r   r:   r:   r!   r   r  #TestUnwrap.test_stop.<locals>.func2  rk  r!   c                      R # r   r:   r:   r!   r   r	  %TestUnwrap.test_stop.<locals>.wrapper  rk  r!   c                     \        V R 4      # )	stop_herer
  r  s   &r   r   &TestUnwrap.test_stop.<locals>.<lambda>  s    71k3Jr!   )stopN)r   rl  r,  rM   r  r  )rU   r%  r  r	  	unwrappeds   &    r   	test_stopTestUnwrap.test_stop  sd    				 
 				 
 	NN7)JM	i'r!   c                   R  pWn         V P                  \        R4      ;_uu_ 4        \        P                  ! V4       RRR4       R pWn         W!n         V P                  \        R4      ;_uu_ 4        \        P                  ! V4       RRR4       V P                  \        R4      ;_uu_ 4        \        P                  ! V4       RRR4       R#   + '       g   i     L; i  + '       g   i     Lb; i  + '       g   i     R# ; i)c                      R # r   r:   r:   r!   r   r%  $TestUnwrap.test_cycle.<locals>.func1  r  r!   r  Nc                      R # r   r:   r:   r!   r   r  $TestUnwrap.test_cycle.<locals>.func2  r  r!   )r
  r  r4  rM   r  )rU   r%  r  s   &  r   
test_cycleTestUnwrap.test_cycle  s    !##J??NN5! @ 	!!##J??NN5! @##J??NN5! @? @? @????s#   C4C%1C8C"	%C5	8D		c                   a R  oRSn          ! V3R lR4      pV P                  \        P                  ! V! 4       4      4       R# )c                      R # r   r:   r:   r!   r   r   (TestUnwrap.test_unhashable.<locals>.func  r  r!   Nc                   "   < ] tR tRtRt Z tRtR# )%TestUnwrap.test_unhashable.<locals>.Ci  Nr:   )rJ   re   rf   rg   __hash__r
  rr   r  s   r   rW  r=    s    HKr!   rW  )r
  r3  rM   r  )rU   rW  r   s   & @r   test_unhashableTestUnwrap.test_unhashable  s3    	 	 	'..-.r!   c                    \        \        P                  ! 4       ^,           4      pV P                  \        R4      ;_uu_ 4        \
        P                  ! V4       RRR4       R#   + '       g   i     R# ; i)r   r  N)r  r:  getrecursionlimitr  r4  rM   r  )rU   rX   s   & r   test_recursion_limitTestUnwrap.test_recursion_limit  sI     5 5 7! ;<##J??NN3 @???s   A%%A6	c                   V P                  \        P                  ! \        4      \        4       V P                  \        P                  ! \        4      \        4       V P                  \        P                  ! \
        4      \
        4       V P                  \        P                  ! \	        \
        4      4      \
        4       V P                  \        P                  ! \        \        4      4      \        4       R # r   )r  rM   r  r  r   r   rb   s   &r   test_wrapped_descriptor"TestUnwrap.test_wrapped_descriptor  s    gnn%679JKgnn\2LAgnn[1;?gnn\+%>?Mgnn[%>?Nr!   r:   N)rJ   re   rf   rg   r  r!  r0  r7  r?  rC  rF  rr   rs   rt   s   @r   r  r    s/     5	5("/ 
O Or!   r  c                   n   a  ] tR tRt o R tR t]P                  ! ]RJ R4      R 4       t	R t
R tR	tV tR# )
TestMaini  c                    \         P                  ! R 4      p\        RRR 4      w  r#pVP                  4       P	                  4       pV P                  VRR \        P                  ! V4      P	                  4       4       V P                  VR4       R# )r   -mrM   Nr!   r}  )r   r  r   decoder  r  rM   r  )rU   r/  rcr<   errr  s   &     r   test_only_sourceTestMain.test_only_source  su    ((4'i(24

'')sW%6%6v%>%I%I%KLc"r!   c                    R  p^*Vn         V P                  \        4      ;_uu_ 4        \        P                  ! V4       RRR4       R#   + '       g   i     R# ; i)c                      R # r   r:   r:   r!   r   r#   )TestMain.test_custom_getattr.<locals>.foo  rs  r!   N)rx  rj  rk  rM   r  r
  s   & r   test_custom_getattrTestMain.test_custom_getattr  s=    	y))c" *)))s   A		A	Nz6threads required to test __qualname__ for source filesc                    \        R RR4      w  rpVP                  4       P                  4       pV P                  VRR \        P
                  ! \        4      P                  4       4       V P                  VR4       R# )rK  rM   z%concurrent.futures:ThreadPoolExecutorNr!   r}  )r   rL  r  r  rM   r  r   )rU   rM  r<   rN  r  s   &    r   test_qualname_sourceTestMain.test_qualname_source  sm     (i%LN

'')s **+=>IIK	Mc"r!   c                    \        R RR4      w  rpVP                  4       P                  4       pV P                  VR.4       R# )rK  rM   r:  z#Can't get info for builtin modules.N)r   rL  r  r  )rU   r  r<   rN  r  s   &    r   test_builtinsTestMain.test_builtins  s?    +D),13

'')!F GHr!   c                Z   \         P                  ! R 4      p\        P                  ! 4       p\	        . VORNRNR NRN5!  w  r4pVP                  4       pV P                  VP                  P                  V4       V P                  VP                  V4       V P                  VP                  P                  V4       V P                  VP                  V4       V P                  VP                  P                  V4       V P                  VP                  V4       V P                  VR4       R# )r   rK  rM   z	--detailsr!   N)r   r  r   !optim_args_from_interpreter_flagsr   rL  rZ  __spec__r  rJ   originr  cached
__cached__r  )rU   r/  r   rM  r<   rN  outputs   &      r   test_detailsTestMain.test_details  s    ((488:' A At AY A(2A4?Afoo**F3foov.foo,,f5foov.foo,,f5f''0c"r!   r:   )rJ   re   rf   rg   rO  rT  r   r  r   rW  rZ  rc  rr   rs   rt   s   @r   rI  rI    sI     ## __'4/DF#F#I# #r!   rI  c                   t   a  ] tR tRt o ]P
                  ! R4      t]P
                  ! R4      tR tR t	Rt
V tR# )
TestReloadi  z def foo():
    print("Bla")
    z#def foo():
    print("Oh no!")
    c                   \         P                  ! V4      p\        VR R7      ;_uu_ 4       pV P                  VP	                  4       P                  R4      VP                  R4      4       RRR4       R#   + '       g   i     R# ; i)r  r  TN)rM   r  r  r  r  r  )rU   r]  r  inspected_srcr  s   &&&  r   assertInspectEqualTestReload.assertInspectEqual
  s`    ))&1$))S
%%d+((. *)))s   ?A55B	c           	        \        R V P                  4      ;_uu_ 4       w  r\        P                  ! V4      pV P	                  W#4       \        VRRR7      ;_uu_ 4       pVP                  V P                  4       RRR4       V P	                  W#4       RRR4       R#   + '       g   i     L+; i  + '       g   i     R# ; i)
reload_bugr\  r  r  N)r   
src_beforer   r  ri  r  r  	src_after)rU   r  r]  r/  r  s   &    r   test_getsource_reload TestReload.test_getsource_reload  s    \4??;;|,,T2F##D1dC'22c		$..) 3##D1 <; 32 <;;s$   A B1B	;B1B.)B11C	r:   N)rJ   re   rf   rg   r  r  rm  rn  ri  ro  rr   rs   rt   s   @r   rf  rf    s<      " 	J
  ! 	I
2 2r!   rf  c                      a  ] tR tRt o R]P
                  R]P                  /R ltR t]	P                  ! ]'       * R4      R 4       tRtV tR	# )
TestRepli  stdoutr  c                  \         P                  P                  \         P                  P                  \        P
                  4      R4      pVRR.pVP                  V4       VP                  R\        \         P                  4      4      pRVR&   \        P                  ! V3R\        P
                  RR	R
\        P                  RVRV/VB # )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TERM
executabletextTstdinrs  r  )r  r]  r/   dirnamer:  rx  extend
setdefaultrX  environ
subprocessPopenPIPE)rU   rs  r  r   rA	  stdin_fnamecmd_lineru  s   &$$*,   r   
spawn_replTestRepl.spawn_repl  s     ggll277??3>>#BINt, mmE4

#34F &+.>>&%)& '1oo& (.	& 7=	&
 #%& 	&r!   c                    V P                  4       pVP                  P                  V4       \        V4      pVP                  ^ 8w  d   \        R4      hV# )zSpawn 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.zProcess didn't exit properly.)r  rz  r  r   
returncoder4  )rU   r  processrb  s   &&  r   run_on_interactive_mode TestRepl.run_on_interactive_mode:  sK     //#F#W%"<==r!   ztest requires subprocessc                v    V P                  \        P                  ! R 4      4      pRpV P                  W!4       R# )z        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
>>>N)r  r  r  rZ  )rU   rb  r"  s   &  r   rQ  TestRepl.test_getsourceH  s6    --hoo ? /  Uh'r!   r:   N)rJ   re   rf   rg   r  r  STDOUTr  r  r   r  r   rQ  rr   rs   rt   s   @r   rr  rr    sL     &z &z?P?P &8 __//1KL( M(r!   rr  __main__)r&   r  r}  )annotationlibr   r   r  r8  r  r  r   r   rp  r   rM   r  rV  r  r  os.pathr   r  rh	  r  r  r:  r  r  r   r  r  r  r   unittest.mockr   rn  concurrent.futuresr   r'  test.supportr   r	   r
   r   r   r   test.support.import_helperr   r   test.support.os_helperr   r   test.support.script_helperr   r   r   r   rq  r   test.test_inspectr   r   r   r0  r   r   r  r  r  r    r%  r!  r8   rB   r  r  r  rD   r{   r~   r   r  r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r  rS  rb  r  r  r   r  r*  r4  r6  r  r  rH  r  r  r  r>  rI  rU  rv  r  requires_working_socketIsolatedAsyncioTestCaser  rw  r0	  ru  r3	  r5	  rD  rg  r  r  r  r  r  rI  rf  rr  rJ   mainr:   r!   r   <module>r     sn   ,       	   	  	 
      
          5 5 8 A E 3 [ [ /  3 5 < : ,,
JcrlG 7
( 
mmo$	 $M#R#R#T  i"" i6     # & # &]AZ ]A@B>: B>H8H%% 8 7 7
Q9} Q9f'6(++ '6R
Ex00 
E0 07] 7OBM OBb
C 
C]6] ]6~: :&N= N7F 79f 9>n+h// n+bE8,, Eq9X.. q9h5>8,, 5>p hD>** D>NG+x00 G+R 5  :$: :(K.)) K.\
dHH-- dHNAGH-- AGH 	  "gG8;; gG #gGT	'## 	
	'## 	j! (++ j! ZCh(++ hVLE)) LE^d0** d0L-("3"3 -^L>x00 L>^
 AO"" AOH/#x   /#d2"" 2<8(x   8(z zMMO mA  s    Q. .	Q;:Q;