+
    Bi                       ^ RI t ^ RIt^ RIt^ RIt^ RIHt ^ RIHt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HtHtHt ^ RIHt ^ RIHtHt ^ RIHtHtHtHt ^ RIHtH t H!t! ^ R	IH"t"H#t#H$t$H%t% ^ R
IH&t&H't'H(t( ^ RIH)t)H*t*H+t+ ^ RIH,t,H-t-H.t.H/t/ ^ RIH0t0 ^ RIH1t1H2t2H3t3H4t4H5t5 ^ RIH6t6H7t7H8t8 ^ RIH9t9 ^ RIH:t:H;t;H<t< ^ RIH=t= ^ RIH>t>H?t? ^ RIH@t@ ^ RIHAtA ^ RIHBtBHCtC ^ RIHDtD ^ RIHEtEHFtFHGtGHHtHHItI ^ RIHJtJHKtKHLtL ^ RIHMtMHNtN ^ RIHOtOHPtP ^ RIHQtQHRtR ^ RIHStS ^ RIHTtTHUtUHVtVHWtW ^ RIHXtXHYtYHZtZ ^ RI[t[^ RI\t\^ RIt^ RI]t]^ RI^t^^ RI_t_^ R I`HataHbtbHctcHdtdHeteHftfHgtg ^ R!IhHitiHjtjHktkHltlHmtmHntnHotoHptpHqtq R"trR#tsR$tt ! R% R&]4      tuR' tv ! R( R)4      tw ! R* R+]w4      tx ! R, R-]w4      ty ! R. R/]x]y4      tz ! R0 R1]u4      t{ ! R2 R34      t| ! R4 R5]|]u4      t} ! R6 R7]|]u4      t~ ! R8 R9]u4      t ! R: R;]u4      t ! R< R=]u4      t ! R> R?]u4      t ! R@ RA]u4      tRB RC lt ! RD RE]u4      t ! RF RG]u4      t ! RH RI]u4      t ! RJ RK]u4      t ! RL RM]u4      t ! RN RO]u4      t ! RP RQ]u4      t ! RR RS4      t ! RT RU]]u4      t ! RV RW]]u4      t ! RX RY]u4      t]"! RZ]]4      t]"! R[4      t ! R\ R]]1]]3,          4      t ! R^ R_]]]3,          4      t ! R` Ra]54      t]8 ! Rb Rc]]54      4       t ! Rd Re4      t ! Rf Rg]54      t ! Rh Ri]54      t]8 ! Rj Rk]]]54      4       t]8 ! Rl Rm]54      4       t ! Rn Ro]4      t ! Rp Rq4      t ! Rr Rs]E4      t]8 ! Rt Ru]54      4       t ! Rv Rw]u4      t ! Rx Ry]u4      t ! Rz R{]u4      t ! R| R}]u4      t ! R~ R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t]B ! R R4      4       t]B ! R R4      4       t ! R R]u4      t ! R R]u4      t]! 4       R 4       t ! R R4      t ! R R]u4      t]"! R4      t ! R R]EPb                  ],          4      t ! R R]EPf                  ],          4      t ! R R4      t ! R R4      t ! R R]4      t ! R R]4      t ! R R]1]&,          4      t ! R R4      t ! R R4      t ! R R]E4      t ! R R]E4      t ! R R]E4      t ! R R]E4      t]I! RR]3.4      t ! R R]I4      t ! R R]1]&,          ]I4      t ! R R]kEP                  RR7      t ! R R]kEP                  ]&,          RR7      t ! R R]]4      t ! R R]IRR7      t ! R R]I4      t ! R R]IRR7      t ! R R]IRR7      t ! R R]4      t ! R R]I4      t ! R R]4      t ! R R]I4      t ! R R]I4      t ! R R]I4      t ! R R]jEPl                  4      tR R lt ]! ]! 4       4      EP                  R4       ]9t ! R R4      t ! R R]u4      t ! R R]4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t ! R R]u4      t]P                  ! R4      t]PD                  ! R]]]4      t ! ER  ER]u4      t ! ER ER]u4      t ! ER ER]u4      t ! ER ER]u4      t ! ER ER	]u4      t ! ER
 ER]u4      t ! ER ER]u4      tER t]ER8X  d
   ]! 4        R# R#   ] d   t RtAELRtAii ; i(      N)defaultdict)	lru_cachewrapsreduce)TestCasemainskip)patch)copydeepcopy)AnyNoReturnNeverassert_never)overloadget_overloadsclear_overloads)TypeVarTypeVarTupleUnpackAnyStr)TKTVT)UnionOptionalLiteral)TupleListDictMutableMappingCallable)GenericClassVarFinalfinalProtocol)assert_typecastruntime_checkable)get_type_hints)
get_originget_argsget_protocol_members)override)is_typeddictis_protocol)reveal_type)dataclass_transform)no_type_checkno_type_check_decoratorType)
NamedTupleNotRequiredRequiredReadOnly	TypedDict)IOTextIOBinaryIO)PatternMatch)	Annotated
ForwardRef)SelfLiteralString)	TypeAlias)	ParamSpecConcatenateParamSpecArgsParamSpecKwargs)	TypeGuardTypeIs	NoDefault)captured_stderrcpython_onlyinfinite_recursionrequires_docstringsimport_helperrun_codeEqualToForwardRef)	ann_module695mod_generics_cache_typed_dict_helper
ann_moduleann_module2ann_module3ann_module5ann_module6ann_module8z&Cannot subclass special typing classesz/type 'typing.%s' is not an acceptable base typez!Cannot subclass an instance of %sc                   &   a  ] tR t^Ct o R tRtV tR# )BaseTestCasec                B    \         P                   F
  pV! 4        K  	  R # N)typing	_cleanupsselffs   & '/usr/lib/python3.14/test/test_typing.pyclear_cachesBaseTestCase.clear_cachesE   s    !!AC "     N)__name__
__module____qualname____firstlineno__ri   __static_attributes____classdictcell____classdict__s   @rh   r`   r`   C   s      rk   r`   c                 0   a  \        S 4      V 3R  l4       pV# )c                    < \        \        P                  ^,           4       F/  pV P                  VR7      ;_uu_ 4        S! WR7       RRR4       K1  	  R#   + '       g   i     KF  ; i)   )pickle_protoprotoN)rangepickleHIGHEST_PROTOCOLsubTest)rf   rz   	test_funcs   & rh   wrapper%all_pickle_protocols.<locals>.wrapperM   sH    622Q67E511$, 21 8111s   
AA(r   )r   r   s   f rh   all_pickle_protocolsr   J   s#     9- -
 Nrk   c                       ] tR t^VtRtR# )Employeerl   Nrm   rn   ro   rp   rq   rl   rk   rh   r   r   V       rk   r   c                       ] tR t^ZtRtR# )Managerrl   Nr   rl   rk   rh   r   r   Z   r   rk   r   c                       ] tR t^^tRtR# )Founderrl   Nr   rl   rk   rh   r   r   ^   r   rk   r   c                       ] tR t^btRtR# )ManagingFounderrl   Nr   rl   rk   rh   r   r   b   r   rk   r   c                   P   a  ] tR t^ft o R tR tR tR tR tR t	R t
R tR	tV tR
# )AnyTestsc                    V P                  \        4      ;_uu_ 4        \        ^*\        4       RRR4       R#   + '       g   i     R# ; i*   N)assertRaises	TypeError
isinstancer   rf   s   &rh   test_any_instance_type_error%AnyTests.test_any_instance_type_errorh   s,    y))r3 *)))	   9A
	c                    V P                  \        \        4      R 4        ! R R\        4      pV P                  \        V4      R\         R24       R# )z
typing.Anyc                       ] tR t^otRtR# )AnyTests.test_repr.<locals>.Subrl   Nr   rl   rk   rh   Subr   o       rk   r   <class 'z".AnyTests.test_repr.<locals>.Sub'>N)assertEqualreprr   rm   rf   r   s   & rh   	test_reprAnyTests.test_reprl   s@    cL1#Ixj BC	
rk   c                .   V P                  \        4      ;_uu_ 4        \        ^*\        4       RRR4       V P                  \        4      ;_uu_ 4        \        \        ,           RRR4       R#   + '       g   i     LI; i  + '       g   i     R# ; ir   )r   r   r   r   intr   s   &rh   test_errorsAnyTests.test_errorsu   sU    y))r3 *y))H *) *))))s   A0B0B 	B	c                    ! R  R\         4      pV P                  V\         4       V P                  V! 4       V4        ! R R4      pV P                  V\         4       V P	                  V! 4       V4        ! R RW!4      pV P                  V\         4       V P                  W34       V P                  W24       V P                  W14       V! 4       pV P                  WC4       V P                  WB4       V P                  WA4       R# )c                       ] tR t^|tRtR# )(AnyTests.test_can_subclass.<locals>.Mockrl   Nr   rl   rk   rh   Mockr   |       rk   r   c                       ] tR t^tRtR# )-AnyTests.test_can_subclass.<locals>.Somethingrl   Nr   rl   rk   rh   	Somethingr      r   rk   r   c                       ] tR t^tRtR# )1AnyTests.test_can_subclass.<locals>.MockSomethingrl   Nr   rl   rk   rh   MockSomethingr          drk   r   N)r   assertIsSubclassassertIsInstanceassertNotIsSubclassassertNotIsInstance)rf   r   r   r   mss   &    rh   test_can_subclassAnyTests.test_can_subclass{   s    3dC(dfd+  C0  d32I2mS1m;m7m2_b0b,b'rk   c                8     ! R  R\         4      pV! ^ RR7       R# )c                   &   a  ] tR t^t o R tRtV tR# )>AnyTests.test_subclassing_with_custom_constructor.<locals>.Subc                    R # rb   rl   rf   argskwargss   &*,rh   __init__GAnyTests.test_subclassing_with_custom_constructor.<locals>.Sub.__init__   s    rk   rl   Nrm   rn   ro   rp   r   rq   rr   rs   s   @rh   r   r      s     55rk   r    )sN)r   r   s   & rh   (test_subclassing_with_custom_constructor1AnyTests.test_subclassing_with_custom_constructor   s    	6# 	6 	Ark   c                     ! R  R4      p ! R R\         V4      pV! ^^4      pV P                  VP                  ^4       V P                  VP                  ^4       R# )c                   &   a  ] tR t^t o R tRtV tR# )HAnyTests.test_multiple_inheritance_with_custom_constructors.<locals>.Fooc                    Wn         R # rb   xrf   r   s   &&rh   r   QAnyTests.test_multiple_inheritance_with_custom_constructors.<locals>.Foo.__init__       rk   r   Nr   rs   s   @rh   Foor            rk   r   c                   2   a a ] tR t^t oV 3R ltRtVtV ;t# )HAnyTests.test_multiple_inheritance_with_custom_constructors.<locals>.Barc                2   < W n         \        SV `	  V4       R # rb   )ysuperr   )rf   r   r   	__class__s   &&&rh   r   QAnyTests.test_multiple_inheritance_with_custom_constructors.<locals>.Bar.__init__   s     #rk   r   rm   rn   ro   rp   r   rq   rr   __classcell__r   rt   s   @@rh   Barr      s     $ $rk   r   N)r   r   r   r   )rf   r   r   bs   &   rh   2test_multiple_inheritance_with_custom_constructors;AnyTests.test_multiple_inheritance_with_custom_constructors   sO    	 		$#s 	$
 1Ia a rk   c                (   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        4      ! 4        R R R 4       R #   + '       g   i     LL; i  + '       g   i     R # ; irb   )r   r   r   typer   s   &rh   test_cannot_instantiate AnyTests.test_cannot_instantiate   sR    y))E *y))IK *) *))))   A-B -A=	 B	c                    \         P                  \        ,           \         P                  \        ,           \         P                  \        ,           R # rb   )rc   rB   r   rA   r>   r   s   &rh   test_any_works_with_alias"AnyTests.test_any_works_with_alias   s'    Ss		#rk   rl   N)rm   rn   ro   rp   r   r   r   r   r   r   r   r   rq   rr   rs   s   @rh   r   r   f   s2      
(&! rk   r   c                   V   a  ] tR t^t o R tR tR tR tR tR t	R t
V 3R ltR	tV tR
# )BottomTypeTestsMixinc                    V P                  V P                  V P                  4       V P                  V P                  V P                  4       V P                  V P                  R 4       R # rb   )r   bottom_typeassertIsassertNotEqualr   s   &rh   test_equality"BottomTypeTestsMixin.test_equality   sN    ))4+;+;<d&&(8(89D,,d3rk   c                P    V P                  \        V P                  4      R 4       R # rb   )r   r-   r   r   s   &rh   test_get_origin$BottomTypeTestsMixin.test_get_origin   s    j!1!12D9rk   c                    V P                  \        4      ;_uu_ 4        \        ^*V P                  4       RRR4       R#   + '       g   i     R# ; ir   )r   r   r   r   r   s   &rh   test_instance_type_error-BottomTypeTestsMixin.test_instance_type_error   s2    y))r4++, *)))s	   ?A	c                T   V P                  \        4      ;_uu_ 4        \        \        V P                  4       R R R 4       V P                  \        4      ;_uu_ 4        \        \
        V P                  4       R R R 4       R #   + '       g   i     LR; i  + '       g   i     R # ; irb   )r   r   
issubclassr   r   r   r   s   &rh   test_subclass_type_error-BottomTypeTestsMixin.test_subclass_type_error   sd    y))x!1!12 *y))x!1!12 *) *))))s   BBB	B'	c                    V P                  \        4      ;_uu_ 4        V P                  \        ,           R R R 4       R #   + '       g   i     R # ; irb   )r   r   r   r   r   s   &rh   test_not_generic%BottomTypeTestsMixin.test_not_generic   s0    y))S! *)))s   A  A	c           	        V P                  \        R \        P                  ! \	        V P
                  4      4      ,           4      ;_uu_ 4         ! R RV P
                  4      pRRR4       V P                  \        \        4      ;_uu_ 4         ! R R\        V P
                  4      4      pRRR4       R#   + '       g   i     L[; i  + '       g   i     R# ; i)Cannot subclass c                       ] tR t^tRtR# )4BottomTypeTestsMixin.test_cannot_subclass.<locals>.Arl   Nr   rl   rk   rh   Ar         rk   r  Nc                       ] tR t^tRtR# )4BottomTypeTestsMixin.test_cannot_subclass.<locals>.Brl   Nr   rl   rk   rh   Br     r  rk   r	  )assertRaisesRegexr   reescapestrr   CANNOT_SUBCLASS_TYPEr   rf   r  r	  s   &  rh   test_cannot_subclass)BottomTypeTestsMixin.test_cannot_subclass   s    ##I"RYYs43C3C/D%EEG GD$$ G ##I/CDDD))*  ED	G G EDDs   B6C	6C		C	c                @   V P                  \        4      ;_uu_ 4        V P                  4        R R R 4       V P                  \        4      ;_uu_ 4        \        V P                  4      ! 4        R R R 4       R #   + '       g   i     LR; i  + '       g   i     R # ; irb   )r   r   r   r   r   s   &rh   r   ,BottomTypeTestsMixin.test_cannot_instantiate   sa    y)) *y))!!"$ *) *))))s   A9B9B		B	c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # )   r   )r%   r   )formatrt   s   "rh   __annotate__!BottomTypeTestsMixin.__annotate__   s     # rk   rl   N)rm   rn   ro   rp   r   r   r   r   r   r  r   __annotate_func__rq   rr   rs   s   @rh   r   r      s0     4
:-3"%E  rk   r   c                   6   a  ] tR t^t o ]tR tR tR tRt	V t
R# )NoReturnTestsc                D    V P                  \        \        4      R 4       R# )typing.NoReturnN)r   r   r   r   s   &rh   r   NoReturnTests.test_repr   s    h):;rk   c                    R  R lpR R lpR\         R\         /pW3 FA  pV P                  VR7      ;_uu_ 4        V P                  \        V4      V4       RRR4       KC  	  R#   + '       g   i     KX  ; i)c                0    V ^8  d   QhR\         R\         /# r  argreturn)r   )r  s   "rh   r  7NoReturnTests.test_get_type_hints.<locals>.__annotate__   s    00h080rk   c                     R # rb   rl   r"  s   &rh   some/NoReturnTests.test_get_type_hints.<locals>.some       Srk   c                     V ^8  d   QhRRRR/# )r  r"  r   r#  r  rl   )r  s   "rh   r  r$     s    ??*?):?rk   c                     R # rb   rl   r&  s   &rh   some_str3NoReturnTests.test_get_type_hints.<locals>.some_str       Crk   r"  r#  targetN)r   r~   r   gthrf   r'  r,  expectedr0  s   &    rh   test_get_type_hints!NoReturnTests.test_get_type_hints   sZ    0?8Xx8&FV,,  Vh7 -, ',,,   A%%A6c                n    V P                  \        \        4       V P                  \        \        4       R # rb   )r   r   r   r   s   &rh   test_not_equalityNoReturnTests.test_not_equality   s"    He,E8,rk   rl   N)rm   rn   ro   rp   r   r   r   r4  r8  rq   rr   rs   s   @rh   r  r     s     K<8- -rk   r  c                   0   a  ] tR t^t o ]tR tR tRtV t	R# )
NeverTestsc                D    V P                  \        \        4      R 4       R# )typing.NeverN)r   r   r   r   s   &rh   r   NeverTests.test_repr   s    en5rk   c                    R  R lpR R lpR\         R\         /pW3 FA  pV P                  VR7      ;_uu_ 4        V P                  \        V4      V4       RRR4       KC  	  R#   + '       g   i     KX  ; i)c                0    V ^8  d   QhR\         R\         /# r!  )r   )r  s   "rh   r  4NeverTests.test_get_type_hints.<locals>.__annotate__   s    **e**rk   c                     R # rb   rl   r&  s   &rh   r'  ,NeverTests.test_get_type_hints.<locals>.some   s    srk   c                     V ^8  d   QhRRRR/# )r  r"  r   r#  r=  rl   )r  s   "rh   r  rA     s    99'9n9rk   c                     R # rb   rl   r&  s   &rh   r,  0NeverTests.test_get_type_hints.<locals>.some_str       crk   r"  r#  r/  N)r   r~   r   r1  r2  s   &    rh   r4  NeverTests.test_get_type_hints   sZ    *95(E2&FV,,  Vh7 -, ',,,r6  rl   N)
rm   rn   ro   rp   r   r   r   r4  rq   rr   rs   s   @rh   r;  r;     s     K68 8rk   r;  c                   &   a  ] tR t^t o R tRtV tR# )AssertNeverTestsc                L   V P                  \        4      ;_uu_ 4        \        R 4       R R R 4       RpV P                  \        V4      ;_uu_ 4        \        V4       R R R 4       RR,          pV P                  \        4      ;_uu_ 4       p\        V4       R R R 4       V P	                  \        XP                  P                  ^ ,          4      \        P                  ^,          4       R #   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i)N
some valueai'  )
r   AssertionErrorr   r
  
assertLesslen	exceptionr   rc   _ASSERT_NEVER_REPR_MAX_LENGTH)rf   value
huge_valuecms   &   rh   test_exceptionAssertNeverTests.test_exception   s    ~.. / ##NE:: ; 5[
~.."$ /!!!$%0014	
 /. ;:
 /.s#   C-D D-C=	 D	D#	rl   N)rm   rn   ro   rp   rV  rq   rr   rs   s   @rh   rJ  rJ     s     
 
rk   rJ  c                   P   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V tR# )	SelfTestsi  c                    V P                  \        \        4       V P                  \        \        4       V P                  \        R 4       R # rb   )r   rE   r   r   r   s   &rh   r   SelfTests.test_equality  s0    t$dD!D$'rk   c                Z    ! R  R4      p ! R R4      p ! R R4      pWV3 FQ  pV P                  VR7      ;_uu_ 4        V P                  \        VP                  4      R\        /4       RRR4       KS  	  V P                  \        \        4      R4       R#   + '       g   i     K  ; i)	c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )"SelfTests.test_basics.<locals>.Fooi  c                    < V ^8  d   QhRS[ /# r  r#  )rE   )r  rt   s   "rh   r  /SelfTests.test_basics.<locals>.Foo.__annotate__  s    &&T&rk   c                    R # rb   rl   r   s   &rh   bar&SelfTests.test_basics.<locals>.Foo.bar      3rk   rl   Nrm   rn   ro   rp   rc  rq   rr   rs   s   @rh   r   r^         &&rk   r   c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )%SelfTests.test_basics.<locals>.FooStri  c                   < V ^8  d   QhRR/# )r  r#  rE   rl   )r  rt   s   "rh   r  2SelfTests.test_basics.<locals>.FooStr.__annotate__  s    ((V(rk   c                    R # rb   rl   r   s   &rh   rc  )SelfTests.test_basics.<locals>.FooStr.bar      Srk   rl   Nrf  rs   s   @rh   FooStrri         ((rk   ro  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )+SelfTests.test_basics.<locals>.FooStrTypingi  c                   < V ^8  d   QhRR/# )r  r#  typing.Selfrl   )r  rt   s   "rh   r  8SelfTests.test_basics.<locals>.FooStrTyping.__annotate__  s    //]/rk   c                    R # rb   rl   r   s   &rh   rc  /SelfTests.test_basics.<locals>.FooStrTyping.bar      Crk   rl   Nrf  rs   s   @rh   FooStrTypingrr         //rk   ry  r/  r#  N)r~   r   r1  rc  rE   r   r-   rf   r   ro  ry  r0  s   &    rh   test_basicsSelfTests.test_basics  s    	' 	'	) 	)	0 	0 L1FV,,  VZZ8T2BC -, 2 	j&- -,,    ,BB*c                D    V P                  \        \        4      R 4       R# )rt  N)r   r   rE   r   s   &rh   r   SelfTests.test_repr"  s    d]3rk   c                    V P                  \        4      ;_uu_ 4        \        \        ,           R R R 4       R #   + '       g   i     R # ; irb   )r   r   rE   r   r   s   &rh   test_cannot_subscriptSelfTests.test_cannot_subscript%  s)    y))I *)))	   :A	c           	     F   V P                  \        \        4      ;_uu_ 4         ! R  R\        \        4      4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        4      pRRR4       R#   + '       g   i     LH; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# ))SelfTests.test_cannot_subclass.<locals>.Ci+  rl   Nr   rl   rk   rh   Cr  +  r  rk   r  NzCannot subclass typing\.Selfc                       ] tR tRtRtR# ))SelfTests.test_cannot_subclass.<locals>.Di/  rl   Nr   rl   rk   rh   Dr  /  r  rk   r  )r
  r   r  r   rE   rf   r  r  s   &  rh   r  SelfTests.test_cannot_subclass)  sv    ##I/CDDDJ  E ##I/1 1D 1 1 ED1 1 1   A<"B<B	B 	c                (   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        4      ! 4        R R R 4       R #   + '       g   i     LL; i  + '       g   i     R # ; irb   )r   r   rE   r   r   s   &rh   test_cannot_initSelfTests.test_cannot_init2  sR    y))F *y))JL *) *))))r   c                4   V P                  \        4      ;_uu_ 4        \        ^\        4       RRR4       V P                  \        4      ;_uu_ 4        \	        \
        \        4       RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; irw   N)r   r   r   rE   r   r   r   s   &rh   test_no_isinstanceSelfTests.test_no_isinstance8  sX    y))q$ *y))sD! *) *))))   A3B3B	B	c                B   \         \        \        3,          p\        \        ,          p\        \        ,          pV P	                  \        V4      \        \        34       V P	                  \        V4      \        34       V P	                  \        V4      \        34       R # rb   )r   rE   r   r%   r   r.   rf   alias_1alias_2alias_3s   &   rh   
test_aliasSelfTests.test_alias>  si    d
#t*4.'*T4L9'*TG4'*TG4rk   rl   Nrm   rn   ro   rp   r   r|  r   r  r  r  r  r  rq   rr   rs   s   @rh   rY  rY    s2     (
.4"5 5rk   rY  c                   P   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V tR# )LiteralStringTestsiH  c                    V P                  \        \        4       V P                  \        \        4       V P                  \        R 4       R # rb   )r   rF   r   r   r   s   &rh   r    LiteralStringTests.test_equalityI  s0    6m]3M40rk   c                Z    ! R  R4      p ! R R4      p ! R R4      pWV3 FQ  pV P                  VR7      ;_uu_ 4        V P                  \        VP                  4      R\        /4       RRR4       KS  	  V P                  \        \        4      R4       R#   + '       g   i     K  ; i)	c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )+LiteralStringTests.test_basics.<locals>.FooiO  c                    < V ^8  d   QhRS[ /# r`  )rF   )r  rt   s   "rh   r  8LiteralStringTests.test_basics.<locals>.Foo.__annotate__P  s    //]/rk   c                    R # rb   rl   r   s   &rh   rc  /LiteralStringTests.test_basics.<locals>.Foo.barP  rx  rk   rl   Nrf  rs   s   @rh   r   r  O  rz  rk   r   c                   2   a  ] tR tRt o V 3R lR ltRtV tR# ).LiteralStringTests.test_basics.<locals>.FooStriQ  c                   < V ^8  d   QhRR/# )r  r#  rF   rl   )r  rt   s   "rh   r  ;LiteralStringTests.test_basics.<locals>.FooStr.__annotate__R  s    11_1rk   c                    R # rb   rl   r   s   &rh   rc  2LiteralStringTests.test_basics.<locals>.FooStr.barR      crk   rl   Nrf  rs   s   @rh   ro  r  Q       11rk   ro  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )4LiteralStringTests.test_basics.<locals>.FooStrTypingiS  c                   < V ^8  d   QhRR/# )r  r#  typing.LiteralStringrl   )r  rt   s   "rh   r  ALiteralStringTests.test_basics.<locals>.FooStrTyping.__annotate__T  s    8838rk   c                    R # rb   rl   r   s   &rh   rc  8LiteralStringTests.test_basics.<locals>.FooStrTyping.barT      Srk   rl   Nrf  rs   s   @rh   ry  r  S  s     88rk   ry  r/  r#  N)r~   r   r1  rc  rF   r   r-   r{  s   &    rh   r|  LiteralStringTests.test_basicsN  s    	0 	0	2 	2	9 	9 L1FV,,  VZZ8]2KL -, 2 	j/6 -,,r~  c                D    V P                  \        \        4      R 4       R# )r  N)r   r   rF   r   s   &rh   r   LiteralStringTests.test_repr[  s    m,.DErk   c                    V P                  \        4      ;_uu_ 4        \        \        ,           R R R 4       R #   + '       g   i     R # ; irb   )r   r   rF   r   r   s   &rh   r  (LiteralStringTests.test_cannot_subscript^  s*    y))# *)))r  c           	     F   V P                  \        \        4      ;_uu_ 4         ! R  R\        \        4      4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        4      pRRR4       R#   + '       g   i     LH; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# )2LiteralStringTests.test_cannot_subclass.<locals>.Cid  rl   Nr   rl   rk   rh   r  r  d  r  rk   r  Nz%Cannot subclass typing\.LiteralStringc                       ] tR tRtRtR# )2LiteralStringTests.test_cannot_subclass.<locals>.Dih  rl   Nr   rl   rk   rh   r  r  h  r  rk   r  )r
  r   r  r   rF   r  s   &  rh   r  'LiteralStringTests.test_cannot_subclassb  sw    ##I/CDDD'  E ##I8: :M : : ED: : :r  c                (   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        4      ! 4        R R R 4       R #   + '       g   i     LL; i  + '       g   i     R # ; irb   )r   r   rF   r   r   s   &rh   r  #LiteralStringTests.test_cannot_initk  sT    y))O *y))! *) *))))r   c                4   V P                  \        4      ;_uu_ 4        \        ^\        4       RRR4       V P                  \        4      ;_uu_ 4        \	        \
        \        4       RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; ir  )r   r   r   rF   r   r   r   s   &rh   r  %LiteralStringTests.test_no_isinstanceq  sX    y))q-( *y))sM* *) *))))r  c                B   \         \        \        3,          p\        \        ,          p\        \        ,          pV P	                  \        V4      \        \        34       V P	                  \        V4      \        34       V P	                  \        V4      \        34       R # rb   )r   rF   r   r%   r   r.   r  s   &   rh   r  LiteralStringTests.test_aliasw  so    }45}%=)'*]M,JK'*],<='*],<=rk   rl   Nr  rs   s   @rh   r  r  H  s3     1
7F"+> >rk   r  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V tR# )TypeVarTestsi  c                   \        R 4      pV P                  W4       V P                  V\         4       V P                  VP                  R 4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  \        4       R# )r   NFrl   )r   r   r   rm   __constraints__r   	__bound____covariant____contravariant____infer_variance__rn   rf   r   s   & rh   test_basic_plainTypeVarTests.test_basic_plain  s    CLa)S)**B/akk4(aoou-a))51a**E2x0rk   c                   / p\        R W4       VR,          pV P                  V\        4       V P                  VP                  R4       V P                  VP
                  R4       V P                  VP                  \        4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       R# )z9from typing import TypeVar; T = TypeVar("T", bound=float)r   FNrl   )execr   r   r   rm   r  r   r  floatr  r  r  rn   )rf   nsr   s   &  rh   test_basic_with_exec!TypeVarTests.test_basic_with_exec  s    H"QsGa)S)**B/akk5)aoou-a))51a**E2allD)rk   c                   \        R \        R7      pV P                  VP                  R 4       V P                  VP                  R4       V P                  VP                  \        4       \        R\        \        4      pV P                  VP                  R4       V P                  VP                  \        \        34       V P                  VP                  R4       \        RRR7      pV P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       \        RRR	7      pV P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       \        R
RR7      pV P                  VP                  R
4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       R# )T_boundboundT_constraintsNT_coT	covariantFT_contracontravariantT_infer)infer_variancerl   )r   r   r   rm   r  r   r  r  r  r  r  )rf   r  r  r  r  r  s   &     rh   test_attributesTypeVarTests.test_attributes  s   )3/))9500"5g''-c://A66c
Cm--t4v./d(($/d,,e4d--u5:T:**J7h,,e4h00$7h1159)D9))95g++U3g//7g00$7rk   c                    \        R 4      pV P                  \        4      ;_uu_ 4        \        ^*V4       RRR4       R#   + '       g   i     R# ; ir   N)r   r   r   r   r  s   & rh    test_typevar_instance_type_error-TypeVarTests.test_typevar_instance_type_error  s5    CLy))r1 *)))s   A  A	c                B   \        R 4      pV P                  \        4      ;_uu_ 4        \        \        V4       RRR4       V P                  \        4      ;_uu_ 4        \        V\        4       RRR4       R#   + '       g   i     LH; i  + '       g   i     R# ; ir  )r   r   r   r   r   r  s   & rh    test_typevar_subclass_type_error-TypeVarTests.test_typevar_subclass_type_error  sa    CLy))sA *y))q# *) *))))s   A:B:B
	B	c                    V P                  \        4      ;_uu_ 4        \        R \        4      pV RRR4       R#   + '       g   i     R# ; i)XN)r   r   r   r   rf   r  s   & rh   test_constrained_error#TypeVarTests.test_constrained_error  s1    y))S!A *)))s	   ;A	c                    \        R 4      p\        R4      pV P                  W4       V P                  \        V,          V4       V P                  \        V,          \        W3,          4       V P                  \        W3,          V4       V P                  \        V\        3,          \        V,          4       V P                  \        V\        3,          \        \        ,          4       V P                  \        V\        3,          P
                  V\        34       V P                  \        V\        3,          P                  V34       V P                  \        V\        3,          P                  \        4       R# )r  YN)	r   r   r   r   r   __args____parameters__r   
__origin__)rf   r  r  s   &  rh   test_union_uniqueTypeVarTests.test_union_unique  s    CLCLA!q1%E!HeADk2qta(E!S&M584E!S&M5:6q#v//!S:q#v55t<eAsFm..6rk   c                h   \        R 4      pV P                  VR,          \        VR3,          4       V P                  RV,          \        RV3,          4       V P                  \        VR,          4      V\	        R4      34       V P                  \        RV,          4      \	        R4      V34       R# )r  r   N)r   r   r   r.   rU   r  s   & rh   test_orTypeVarTests.test_or  s    CL 	S%3-0q%Q-0!c'*Q0A#0F,GH#'*->s-CQ,GHrk   c                    \        R \        \        4      pV P                  \        V\        3,          \        V,          4       R# r  N)r   r  bytesr   r   rf   r  s   & rh   test_union_constrained#TypeVarTests.test_union_constrained  s,    Ce$E!S&M584rk   c                   V P                  \        \        4      R 4       V P                  \        \        4      R4       V P                  \        \        4      R4       V P                  \        \
        4      R4       \        RRR7      pV P                  \        V4      R4       \        RRR	7      pV P                  \        V4      R
4       R# )z~Tz~KTz~VTz~AnyStrr  Tr  z+T_cor  r  z	-T_contraN)r   r   r   r   r   r   r   )rf   r  r  s   &  rh   r   TypeVarTests.test_repr  s    a$'b5)b5)fy1v.dW-:T:h5rk   c                    V P                  \        R 4      \        R 4      4       V P                  \        R \        \        4      \        R \        \        4      4       R# r  )r   r   r   r  r   s   &rh   test_no_redefinition!TypeVarTests.test_no_redefinition  s<    GCL'#,7GCc2GCc4JKrk   c                f   V P                  \        \        R ,          4      ;_uu_ 4         ! R R\        4      pRRR4       \        R4      pV P                  \        \        R ,          4      ;_uu_ 4         ! R RV4      pRRR4       R#   + '       g   i     LZ; i  + '       g   i     R# ; i)r   c                       ] tR tRtRtR# ),TypeVarTests.test_cannot_subclass.<locals>.Vi  rl   Nr   rl   rk   rh   Vr        drk   r  Nr   c                       ] tR tRtRtR# ),TypeVarTests.test_cannot_subclass.<locals>.Wi  rl   Nr   rl   rk   rh   Wr    r   rk   r  )r
  r   NOT_A_BASE_TYPEr   CANNOT_SUBCLASS_INSTANCE)rf   r  r   r  s   &   rh   r  !TypeVarTests.test_cannot_subclass  sz    ##I/JKK"G" LCL##I(946 6A6 6 LK6 6 6s   B6BB	B0	c                    V P                  \        4      ;_uu_ 4        \        R 4      ! 4        RRR4       R#   + '       g   i     R# ; ir  )r   r   r   r   s   &rh   test_cannot_instantiate_vars)TypeVarTests.test_cannot_instantiate_vars  s+    y))CLN *)))r   c           	        V P                  \        4      ;_uu_ 4        \        R \        R7       RRR4       V P                  \        4      ;_uu_ 4        \        R \        \
        \        R7       RRR4       V P                  \        R4      ;_uu_ 4        \        R RR7       RRR4       R#   + '       g   i     L; i  + '       g   i     LY; i  + '       g   i     R# ; i)r  r  Nz%Bound must be a type\. Got \(1, 2\)\.rw   r  )r   r   r   r   r  r  r   r
  r   s   &rh   test_bound_errorsTypeVarTests.test_bound_errors  s    y))Cx( *y))Ce84 *##I$LN NCv&N N	 *)))N N Ns#   B/CC/B?	C	C&	c                "    R p\        V/ 4       R# )z&import typing
T = typing.TypeVar('T')
Nr  rf   codes   & rh   test_missing__name__!TypeVarTests.test_missing__name__  s    , 	T2rk   c                    V P                  \        4      ;_uu_ 4        \        R RRR7       RRR4       R#   + '       g   i     R# ; i)r   T)r  r  Nr   
ValueErrorr   r   s   &rh   test_no_bivariantTypeVarTests.test_no_bivariant  s.    z**C4t< +***s	   7A	c                $   V P                  \        4      ;_uu_ 4        \        R RRR7       RRR4       V P                  \        4      ;_uu_ 4        \        R RRR7       RRR4       R#   + '       g   i     LF; i  + '       g   i     R# ; i)r   T)r  r  N)r  r  r%  r   s   &rh   &test_cannot_combine_explicit_and_infer3TypeVarTests.test_cannot_combine_explicit_and_infer  s\    z**C4= +z**CtDA +* +****s   A+A>+A;	>B	c                .   \        R 4      pVP                  pV P                  V! \        4      \        4       V P	                  V! \
        \        ,          4      \
        \        ,          4       V P	                  V! \        \        ,          4      \        \        ,          4       V P	                  V! \        4      \        4       V P                  V! \        4      \        4       V P                  V! R4      \        R4      4       V P                  V! V4      V4       V P	                  V! \        \        ,          4      \        \        ,          4       V P	                  V! \        \        \        3,          4      \        \        \        3,          4       R# r  )r   __typing_subst__r   r   r   listr   r   r   r  r   )rf   r   substs   &  rh   test_var_substitution"TypeVarTests.test_var_substitution  s    CL""eCj#&tCy)495tCy)495td+eCj#&eDk4:.eAh"s3wS1uS#X/sCxArk   c                &   \        R 4      pR\        \        3\        \        \        V,          \
        \
        V,          \        \        \        ,          \        \        \        ,          3pV F  pV P                  VR7      ;_uu_ 4        V P                  \        4      ;_uu_ 4        VP                  ! V4       RRR4       V P                  \        4      ;_uu_ 4        \        V,          V,           RRR4       V P                  \        4      ;_uu_ 4        \        V,          V,           RRR4       RRR4       K  	  R#   + '       g   i     L; i  + '       g   i     Lk; i  + '       g   i     LD; i  + '       g   i     EK#  ; i)r   r&  Nrl   )r   r   r  r   r$   r(   r&   r%   r~   r   r   r-  r   r.  )rf   r   bad_argsr"  s   &   rh   test_bad_var_substitution&TypeVarTests.test_bad_var_substitution&  s    CLc
HWQZ8A;5:x#

 C#&&&&y11&&s+ 2&&y11GCL 2&&y11GCL 2 '& 111111 '&&sT   
E>(E;%E> E5%E>E+/E>EE>E(#E>+E;6E>>Fc           	        \         \        \        3 Fa  pV P                  VR 7      ;_uu_ 4        \        P
                  ! 4       p\        ^
4       F  pV! \        V4      4      W#&   K  	  ?RRR4       Kc  	  R#   + '       g   i     Kx  ; iclsN)rH   r   r   r~   weakrefWeakValueDictionaryr{   r  )rf   r9  valsr   s   &   rh   test_many_weakrefsTypeVarTests.test_many_weakrefs6  sd    |W5C#&&224rA!#a&kDG # '& 6&&&s   <A99B
c                l
   \        R R7      pV P                  VP                  R 4       V P                  VP                  R
4       V P	                  VP
                  R4       V P	                  VP                  \        P                  4       V P	                  VP                  R4       V P	                  VP                  R4       V P	                  VP                  R4       \        R \        R7      pV P                  VP                  R 4       V P                  VP                  R
4       V P	                  VP
                  \        4       V P	                  VP                  \        P                  4       V P	                  VP                  R4       V P	                  VP                  R4       V P	                  VP                  R4       \        R R
R7      pV P                  VP                  R 4       V P                  VP                  R
4       V P	                  VP
                  R4       V P	                  VP                  R
4       V P	                  VP                  R4       V P	                  VP                  R4       V P	                  VP                  R4       \        R RR7      pV P                  VP                  R 4       V P                  VP                  R
4       V P	                  VP
                  R4       V P	                  VP                  \        P                  4       V P	                  VP                  R4       V P	                  VP                  R4       V P	                  VP                  R4       \        R RR7      pV P                  VP                  R 4       V P                  VP                  R
4       V P	                  VP
                  R4       V P	                  VP                  \        P                  4       V P	                  VP                  R4       V P	                  VP                  R4       V P	                  VP                  R4       \        R RR	7      pV P                  VP                  R 4       V P                  VP                  R
4       V P	                  VP
                  R4       V P	                  VP                  \        P                  4       V P	                  VP                  R4       V P	                  VP                  R4       V P	                  VP                  R4       R# )r   nameNF)rA  r  )rA  defaultT)rA  r  )rA  r  )rA  r  rl   )r   r   rm   r  r   r  __default__rc   rN   r  r  r  r   r  s   & rh   test_constructorTypeVarTests.test_constructor@  s   S)**B/akk4(ammV%5%56aoou-a))51a**E2D)S)**B/akk4(ammV%5%56aoou-a))51a**E2b)S)**B/akk4(ammR(aoou-a))51a**E2-S)**B/akk4(ammV%5%56aoot,a))51a**E2D1S)**B/akk4(ammV%5%56aoou-a))40a**E2T2S)**B/akk4(ammV%5%56aoou-a))51a**D1rk   rl   N)rm   rn   ro   rp   r  r  r  r  r  r  r  r  r  r   r
  r  r  r  r"  r'  r*  r0  r4  r=  rD  rq   rr   rs   s   @rh   r  r    sw     1*8:

7I56L'=BB! 52 52rk   r  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V tR# )TypeParameterDefaultsTestsix  c                   \        R \        R7      pV P                  VP                  \        4       V P	                  VP
                  ! 4       R4       V P                  V\         4        ! R R\        V,          4      p\        V,          pR# )r   rB  Tc                       ] tR tRtRtR# )2TypeParameterDefaultsTests.test_typevar.<locals>.Ai  rl   Nr   rl   rk   rh   r  rK        Srk   r  N)	r   r   r   rC  r   has_defaultr   r$   r   )rf   r   r  Aliass   &   rh   test_typevar'TypeParameterDefaultsTests.test_typevary  s[    C%,ammot,a) 
 rk   c                   \        R 4      p\        RRR7      pV P                  VP                  \        4       V P                  VP	                  4       R4       V P                  VP                  R4       V P                  VP	                  4       R4       R ! 4       pVP
                  w  pV P                  VP                  \        4       V P                  VP                  ! 4       R4       R# )UU_NoneNrI  FTc                  0   a R 5;p 3o ! V3R lRS5
q4      # )r   c                      < ] tR tRt Z tRtR# )7TypeParameterDefaultsTests.test_typevar_none.<locals>.Xi  rl   Nrm   rn   ro   rp   __type_params__rq   .type_paramss   rh   r  rV    s     Crk   r  rl   r   .generic_baserZ  s     @rh   <generic parameters of X>OTypeParameterDefaultsTests.test_typevar_none.<locals>.<generic parameters of X>  s    rk   )r   r   rC  rN   rM  rX  )rf   rR  rS  r  r   s   &    rh   test_typevar_none,TypeParameterDefaultsTests.test_typevar_none  s    CL40ammY/ammou-f(($/f((*D1ammY/ammou-rk   c                   \        R \        \        3R7      pV P                  VP                  \        \        34       V P                  VP                  4       R4       V P                  V\         4        ! R R\        V,          4      p\        P                  VR3,          p\        RRR7      pV P                  VP                  R4       R# )PrI  Tc                       ] tR tRtRtR# )4TypeParameterDefaultsTests.test_paramspec.<locals>.Ai  rl   Nr   rl   rk   rh   r  rd    rL  rk   r  N	P_default.)rH   r  r   r   rC  r   rM  r   r$   rc   r#   )rf   rb  r  rN  re  s   &    rh   test_paramspec)TypeParameterDefaultsTests.test_paramspec  s    cC:.c
3ammot,a+ 
 4(k37	i++S1rk   c                   \        R 4      p\        RRR7      pV P                  VP                  \        4       V P                  VP	                  4       R4       V P                  VP                  R4       V P                  VP	                  4       R4       R ! 4       pVP
                  w  pV P                  VP                  \        4       V P                  VP	                  4       R4       R# )rR  rS  NrI  FTc                  0   a R 5;p 3o ! V3R lRS5
q4      # )rb  c                      < ] tR tRt Z tRtR# )9TypeParameterDefaultsTests.test_paramspec_none.<locals>.Xi  rl   NrW  rY  s   rh   r  rk    s     crk   r  rl   )rb  r\  rZ  s     @rh   r]  QTypeParameterDefaultsTests.test_paramspec_none.<locals>.<generic parameters of X>  s    rk   )rH   r   rC  rN   rM  rX  )rf   rR  rS  r  rb  s   &    rh   test_paramspec_none.TypeParameterDefaultsTests.test_paramspec_none  s    cN8T2ammY/ammou-f(($/f((*D1ammY/ammou-rk   c                   \        R \        \        \        \        3,          ,          R7      pV P                  VP                  \        \        \        \        3,          ,          4       V P                  VP                  4       R4       V P                  V\         4        ! R R\        \        V,          ,          4      p\        \        V,          ,          pR# )TsrI  Tc                       ] tR tRtRtR# )7TypeParameterDefaultsTests.test_typevartuple.<locals>.Ai  rl   Nr   rl   rk   rh   r  rr        crk   r  N)r   r   r   r  r   r   rC  r   rM  r   r$   r   )rf   rp  r  rN  s   &   rh   test_typevartuple,TypeParameterDefaultsTests.test_typevartuple  s    $uS#X(?@c3h)@Abnn&-b,/)r
#)$rk   c                   \        R 4      p\        R\        \        \        \
        3,          ,          R7      pV P                  VP                  \        \        \        \
        3,          ,          4        ! R R\        V\        V,          3,          4      pV P                  V\        ,          P                  \        \        \
        34       V P                  V\        \        3,          P                  \        \        34       V P                  V\        .\        \
        R3,          O5,          P                  \        .\        \
        R3,          O54       R# )r   rp  rI  c                       ] tR tRtRtR# )FTypeParameterDefaultsTests.test_typevartuple_specialization.<locals>.Ai  rl   Nr   rl   rk   rh   r  rx        rk   r  .N)r   r   r   r   r  r   r   rC  r$   r  r  r{   tuple)rf   r   rp  r  s   &   rh    test_typevartuple_specialization;TypeParameterDefaultsTests.test_typevartuple_specialization  s    CL$uS#X(?@c3h)@A,6":&,5**UC,=>5%<11E5>B525c?23<<u>WuSRUX>WXrk   c           	        \        R 4      p\        R\        R7      p\        R\        \        \
        \        3,          ,          R7      pV P                  VP                  \        \        \
        \        3,          ,          4        ! R R\        W\        V,          3,          4      pV P                  V\        ,          P                  \        \        \
        \        34       V P                  V\        \
        3,          P                  \        \
        \
        \        34       V P                  V\        \
        \        3,          P                  \        \
        \        34       V P                  V\        \
        .\        \        R3,          O5,          P                  \        \
        .\        \        R3,          O54       R# )r   rR  rI  rp  c                       ] tR tRtRtR# )RTypeParameterDefaultsTests.test_typevar_and_typevartuple_specialization.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    s    Crk   r  .N)r   r  r   r   r   r  r   r   rC  r$   r  r{   rz  )rf   r   rR  rp  r  s   &    rh   ,test_typevar_and_typevartuple_specializationGTypeParameterDefaultsTests.test_typevar_and_typevartuple_specialization  s   CLC'$uS#X(?@c3h)@A/fRj()/33sC*@A38--S#s/CD3U?+44sC6GH35eCHo56??#sA]USVX[S[_A]^rk   c           	        \        R \        R7      p\        R4      p\        R\        \        \
        \        3,          ,          R7      pV P                  \        4      ;_uu_ 4         ! R R\        . VOVN5,          4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        . VOVN5,          4      pRRR4       R#   + '       g   i     LS; i  + '       g   i     R# ; i)	r   rI  rp  
Ts_defaultc                       ] tR tRtRtR# )ITypeParameterDefaultsTests.test_no_default_after_typevar_tuple.<locals>.Xi  rl   Nr   rl   rk   rh   r  r    rs  rk   r  Nc                       ] tR tRtRtR# )ITypeParameterDefaultsTests.test_no_default_after_typevar_tuple.<locals>.Yi  rl   Nr   rl   rk   rh   r  r        crk   r  )	r   r   r   r   r   r  r   r   r$   )rf   r   rp  r  r  r  s   &     rh   #test_no_default_after_typevar_tuple>TypeParameterDefaultsTests.test_no_default_after_typevar_tuple  s    C%$!,uS#X8OP
y)))GFRFFO) * y))1GNZNN+1 *) *) *))s   'C(C!C	!C2	c                   \        R \        R7      p\        R4      p\        R4      p\        V.V3,          pV P	                  VP
                  W34       \        W3,          pV P	                  VP
                  W34       \        P                  W3,          pV P	                  VP
                  W34       \        . VOVN5,          pV P	                  VP
                  . VOVN54       R# )	T_defaultrI  r   rp  N)	r   r   r   r#   r   r  dictrc   r    )rf   r  r   rp  a1a2a3a4s   &       rh   -test_allow_default_after_non_default_in_aliasHTypeParameterDefaultsTests.test_allow_default_after_non_default_in_alias  s    K5	CL$yk1n%yn5),yn5[[&yn5frf1fhhAh/rk   c                   \        R 4      p\        R\        \        .R7      pV P	                  VP
                  \        \        .4        ! R R\        W3,          4      pV P	                  V\        ,          P                  \        \        \        334       V P	                  V\        \        .3,          P                  \        \        334       R# )r   rb  rI  c                       ] tR tRtRtR# )CTypeParameterDefaultsTests.test_paramspec_specialization.<locals>.Ai  rl   Nr   rl   rk   rh   r  r        rk   r  N)
r   rH   r  r   r   rC  r$   r  r  r{   )rf   r   rb  r  s   &   rh   test_paramspec_specialization8TypeParameterDefaultsTests.test_paramspec_specialization  s    CLcC:.c
3##5**US#J,?@55'>*33eeX5FGrk   c                j   \        R 4      p\        R\        R7      p\        R\        \        .R7      pV P                  VP                  \        \        .4        ! R R\        WV3,          4      pV P                  V\        ,          P                  \        \        \        \        334       V P                  V\        \        3,          P                  \        \        \        \        334       V P                  V\        \        \        .3,          P                  \        \        \        334       R# )r   rR  rI  rb  c                       ] tR tRtRtR# )OTypeParameterDefaultsTests.test_typevar_and_paramspec_specialization.<locals>.Ai  rl   Nr   rl   rk   rh   r  r        3rk   r  N)
r   r  rH   r  r   r   rC  r$   r  r{   )rf   r   rR  rb  r  s   &    rh   )test_typevar_and_paramspec_specializationDTypeParameterDefaultsTests.test_typevar_and_paramspec_specialization  s    CLC'cC:.c
3&a &5**UEC:,FG5#://%sCj1IJ5#w./885#x:PQrk   c                b   \        R 4      p\        R\        \        .R7      p\        R\        R7      pV P                  VP                  \        \        .4        ! R R\        WV3,          4      pV P                  V\        ,          P                  \        \        \        3\        34       V P                  V\        \        .3,          P                  \        \        3\        34       V P                  V\        \        .\        3,          P                  \        \        3\        34       R# )r   rb  rI  rR  c                       ] tR tRtRtR# )OTypeParameterDefaultsTests.test_paramspec_and_typevar_specialization.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    r  rk   r  N)
r   rH   r  r   r  r   rC  r$   r  r{   )rf   r   rb  rR  r  s   &    rh   )test_paramspec_and_typevar_specializationDTypeParameterDefaultsTests.test_paramspec_and_typevar_specialization  s    CLcC:.C'c
3&a &5**US#J,FG55'>*33eeXu5MN55'3./8855(C:PQrk   c                   \        R 4      p\        RRR7      pV P                  VP                  \        4       V P                  VP	                  4       R4       V P                  VP                  R4       V P                  VP	                  4       R4       R ! 4       pVP
                  w  pV P                  VP                  \        4       V P                  VP	                  4       R4       R# )rR  rS  NrI  FTc                  0   a R 5;p 3o ! V3R lRS5
q4      # )rp  c                      < ] tR tRt Z tRtR# )<TypeParameterDefaultsTests.test_typevartuple_none.<locals>.Xi  rl   NrW  rY  s   rh   r  r    s     srk   r  rl   rp  r\  rZ  s     @rh   r]  TTypeParameterDefaultsTests.test_typevartuple_none.<locals>.<generic parameters of X>  s    rk   )r   r   rC  rN   rM  rX  )rf   rR  rS  r  rp  s   &    rh   test_typevartuple_none1TypeParameterDefaultsTests.test_typevartuple_none  s    h5ammY/ammou-f(($/f((*D1bnni0bnn&.rk   c                    \        R \        R7      p\        R4      pV P                  \        R4      ;_uu_ 4        \        W3,          pRRR4       R#   + '       g   i     R# ; i)DefaultStrTrI  r   zIType parameter ~T without a default follows type parameter with a defaultN)r   r  r
  r   r$   )rf   r  r   Tests   &   rh   !test_no_default_after_non_default<TypeParameterDefaultsTests.test_no_default_after_non_default
  sS    mS9CL##c
 
 ;>*D
 
 
 
s   AA%	c                j   \        R \        R7      p\        R4      p\        R4      p ! R R\        W#V3,          4      pV\        \        3,           V\        \        \        3,           V P                  \        R4      ;_uu_ 4        V\        ,          pRRR4       R#   + '       g   i     R# ; i)r  rI  r   rR  c                       ] tR tRtRtR# );TypeParameterDefaultsTests.test_need_more_params.<locals>.Ai  rl   Nr   rl   rk   rh   r  r        Srk   r  z7Too few arguments for .+; actual 1, expected at least 2N)r   r  r$   r   boolr
  r   )rf   r  r   rR  r  r  s   &     rh   test_need_more_params0TypeParameterDefaultsTests.test_need_more_params  s    mS9CLCL0k)*0	#t)	#tS.##Q
 
 S6D
 
 
 
s   	B!!B2	c                   \        R 4      s\        RRR7      s\        RRR7      s\        R\        R7      s\        \        P                  4       EF	  p\        \        \        \
        3 F  p\        P                  ! \        P                  ! W!4      4      pV P                  VP                  VP                  4       V P                  VP                  VP                  4       V P                  VP                  VP                  4       V P                  VP                  VP                  4       V P                  VP                   VP                   4       K  	  EK  	  R# )	rR  U_coTr  U_contrar  	U_defaultrI  N)r   rR  r  r  r   r  r{   r|   r}   loadsdumpsr   rm   r  r  r  rC  )rf   rz   typevarzs   &   rh   test_pickle&TypeParameterDefaultsTests.test_pickle!  s    CLv.:T:K5	6223EtXy9LLg!=>  W-=-=>  '2G2GH  !4!4g6O6OP  g.?.?@  0C0CD : 4rk   rl   N)rm   rn   ro   rp   rO  r_  rf  rm  rt  r{  r  r  r  r  r  r  r  r  r  r  rq   rr   rs   s   @rh   rG  rG  x  sa     .
2.%Y	_	20"HRR/+E Erk   rG  c                    V ^8  d   QhR\         \        ,          R\        \        \         \        ,          3,          R\         \        \        ,          ,          /# )r  	templatesreplacementsr#  )r.  r  r  rz  )r  s   "rh   r  r  1  sD     A, A,S	 A,c49n9M A,RVW\]`WaRb A,rk   c                    . pVP                  4        F3  w  r4. pV F  pVP                  W634       K  	  VP                  V4       K5  	  . p\        P                  ! V!   FU  p. p	V  F0  p
V F  w  r6V
P	                  W64      p
K  	  V	P                  V
4       K2  	  VP                  \        V	4      4       KW  	  . pV F  pW9  g   K  VP                  V4       K  	  V# rb   )itemsappend	itertoolsproductreplacerz  )r  r  replacement_combosoriginalpossible_replacementsoriginal_replacement_tuplesreplacementrendered_templatesreplacement_combotemplates_with_replacementstemplate rendered_templates_no_duplicatesr   s   &&           rh   template_replacer  1  s    N +7+=+=+?'&(#0K'../FG 1!!"=>	 ,@ &..0BC ')#!H):%#++HB *;'..x8 " 	!!%(C"DE D (*$4,33A6  
 ,+rk   c                   ,   a  ] tR tRt o R tR tRtV tR# )TemplateReplacementTestsiu  c                ^    \        R R.RRR.RRR./R7      p. R
OpV P                  W4       R	# )Cats are word1zDogs are word2word1smallcuteword2bigfluffyr  r  N))Cats are smallDogs are big)r  Dogs are fluffy)Cats are cuter  )r  r  r  r   rf   actualr3  s   &  rh   :test_two_templates_two_replacements_yields_correct_rendersSTemplateReplacementTests.test_two_templates_two_replacements_yields_correct_rendersw  sE    !+-=>gv.eX.

 	*rk   c                ^    \        R R.RRR.RRR./R7      pR
R.pV P                  W4       R	# )r  Dogs!r  r  r  r  r  r  r  N)r  r  )r  r  r  r  s   &  rh   2test_no_duplicates_if_replacement_not_in_templatesKTemplateReplacementTests.test_no_duplicates_if_replacement_not_in_templates  sL    !+W5gv.eX.
 (&
 	*rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r  u  s     + + +rk   r  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )GenericAliasSubstitutionTestsi  c                J   \        R 4      p\        R4      p\        R4      p ! R R\        V,          4      p. ROpRR.p. ROpV F  w  rp
\        WV
.RVR	V/R
7      pV F  w  rpV P	                  WVR7      ;_uu_ 4        VR8X  d9   V P                  \        4      ;_uu_ 4        \        W,           4       RRR4       M*V P                  \        W,           4      \        V4      4       RRR4       K  	  K  	  R#   + '       g   i     L"; i  + '       g   i     K  ; i)r   rp  Ts2c                       ] tR tRtRtR# );GenericAliasSubstitutionTests.test_one_parameter.<locals>.Ci  rl   Nr   rl   rk   rh   r  r        Trk   r  rz  r   r   generic
tuple_typer  aliasr   r3  N)r  r.  r   ))
generic[T][()]r   )r  [int]generic[int])r  
[int, str]r   )r  [tuple_type[int, ...]]generic[tuple_type[int, ...]])r  [*tuple_type[int]]r  )r  z[*tuple_type[()]]r   )r  [*tuple_type[int, str]]r   )r  [*tuple_type[int, ...]]r   )r  [*Ts]r   )r  [T, *Ts]r   )r  [*Ts, T]r   )zC[T, *tuple_type[int, ...]]r  r   )zlist[T, *tuple_type[int, ...]]r  z list[int, *tuple_type[int, ...]])zList[T, *tuple_type[int, ...]]r  r   )zgeneric[*Ts, *Ts2]r  r   	r   r   r$   r  r~   r   r   evalr   )rf   r   rp  r  r  genericstuple_typestestsalias_templateargs_templateexpected_templater  	alias_strargs_strexpected_strs   &              rh   test_one_parameter0GenericAliasSubstitutionTests.test_one_parameter  s   CL$5!!
!((
. AF<N+<!1->OP"+X|[!Q" 6H1	\\\	<\XX#{2!..y99 !56 :9 (( !56 . YX 6H AF :9 YXXs$   %D	'C>93D	>D	D	D"c                L   \        R 4      p\        R4      p\        R4      p ! R R\        W3,          4      p. ROpRR.p. ROpV F  w  rp
\        WV
.RVR	V/R
7      pV F  w  rpV P	                  WVR7      ;_uu_ 4        VR8X  d9   V P                  \        4      ;_uu_ 4        \        W,           4       RRR4       M*V P                  \        W,           4      \        V4      4       RRR4       K  	  K  	  R#   + '       g   i     L"; i  + '       g   i     K  ; i)T1T2rp  c                       ] tR tRtRtR# )<GenericAliasSubstitutionTests.test_two_parameters.<locals>.Ci  rl   Nr   rl   rk   rh   r  r        $rk   r  rz  r   r   r  r  r  r  N)r  r  r    ))generic[T1, T2]r  r   )r  r  r   )r  r  generic[int, str])r  [int, str, bool]r   )r  r  r   )r  r  r  )r  z[*tuple_type[int, str, bool]]r   )r  z[int, *tuple_type[str]]r  )r  z[*tuple_type[int], str]r  )r  z$[*tuple_type[int], *tuple_type[str]]r  )r  z([*tuple_type[int, str], *tuple_type[()]]r  )r  z([*tuple_type[()], *tuple_type[int, str]]r  )r  z#[*tuple_type[int], *tuple_type[()]]r   )r  z#[*tuple_type[()], *tuple_type[int]]r   )r  z+[*tuple_type[int, str], *tuple_type[float]]r   )r  z+[*tuple_type[int], *tuple_type[str, float]]r   )r  z1[*tuple_type[int, str], *tuple_type[float, bool]]r   )r  r  r   )r  ,[tuple_type[int, ...], tuple_type[str, ...]]3generic[tuple_type[int, ...], tuple_type[str, ...]])r  r  r   )r  z[int, *tuple_type[str, ...]]r   )r  [*tuple_type[int, ...], str]r   )r  .[*tuple_type[int, ...], *tuple_type[str, ...]]r   )r  r  r   )r  r  r   )r  r  r   )z"generic[T1, *tuple_type[int, ...]][str]#generic[str, *tuple_type[int, ...]]r  rf   r  r  rp  r  r	  r
  r  r  r  r  r  r  r  r  s   &              rh   test_two_parameters1GenericAliasSubstitutionTests.test_two_parameters  s   T]T]$&&((%
N AF<N+<!1->OP"+X|[!Q" 6H1	\\\	<\XX#{2!..y99 !56 :9 (( !56 . YX 6H AF :9 YXX$   %D	(C?:3D	?D
D	D#c                L   \        R 4      p\        R4      p\        R4      p ! R R\        WV3,          4      pR.pRR.pRR.pV F  w  rp
\        WV
.RVRV/R	7      pV F  w  rpV P                  WVR
7      ;_uu_ 4        VR8X  d9   V P	                  \
        4      ;_uu_ 4        \        W,           4       RRR4       M*V P                  \        W,           4      \        V4      4       RRR4       K  	  K  	  R#   + '       g   i     L"; i  + '       g   i     K  ; i)r  r  T3c                       ] tR tRtRtR# )>GenericAliasSubstitutionTests.test_three_parameters.<locals>.Ci  rl   Nr   rl   rk   rh   r  r*        drk   r  rz  r   r  r  r  r  r   N)generic[T1, bool, T2]r  generic[int, bool, str])r,  r  r-  )r   r$   r  r~   r   r   r  r   )rf   r  r  r(  r  r	  r
  r  r  r  r  r  r  r  r  s   &              rh   test_three_parameters3GenericAliasSubstitutionTests.test_three_parameters  s   T]T]T]*
#*5( G G
 AF<N+<!1):KL'<M" 6H1	\\\	<\XX#{2!..y99 !56 :9 (( !56 . YX 6H AF :9 YXXr&  c                L   \        R 4      p\        R4      p\        R4      p ! R R\        . VO5,          4      p. ROpRR.p. RNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNR NR!NR"NR#NR$NR%NR&NR'NR(NR)NR*NR+NR,NR-NR.NR/NR0NR1NR2NR3NR4NR5NR6NR7NR8NR9NR:NR;NR<NR=NR>NR?NR@NRANRBNRCNRDNRENRFNRGNRHNRINRJNRKNRLNRMNpV F  w  rp
\        WV
.RVR	V/R
7      pV F  w  rpV P	                  WVR7      ;_uu_ 4        VR8X  d9   V P                  \        4      ;_uu_ 4        \        W,           4       RRR4       M*V P                  \        W,           4      \        V4      4       RRR4       K  	  K  	  R#   + '       g   i     L"; i  + '       g   i     K  ; i)Nr  r  rp  c                       ] tR tRtRtR# )AGenericAliasSubstitutionTests.test_variadic_parameters.<locals>.Ci7  rl   Nr   rl   rk   rh   r  r2  7      trk   r  rz  r   r   r  r  r  r  N)r  rz  r   )generic[*Ts]r  zgeneric[()])r4  r  r  )r4  r  r  )r4  r  r  )r4  z[*tuple_type[*Ts]]r4  )r4  r  r  )r4  z"[str, *tuple_type[int, ...], bool])generic[str, *tuple_type[int, ...], bool])r4  r  r   )r4  r  r  )r4  r  zgeneric[*tuple_type[int, ...]])r4  r   r   )r4  r  r4  )r4  r  generic[T, *Ts])r4  r  generic[*Ts, T])r6  r  r   )r6  r  r  )r6  r  r  )r6  r  generic[int, str, bool])generic[list[T], *Ts]r  r   )r9  r  generic[list[int]])r9  r  zgeneric[list[int], str])r9  r  zgeneric[list[int], str, bool])r7  r  r   )r7  r  r  )r7  r  r  )r7  r  r8  )generic[*Ts, list[T]]r  r   )r;  r  r:  )r;  r  zgeneric[int, list[str]])r;  r  zgeneric[int, str, list[bool]])generic[T1, T2, *Ts]r  r   )r<  r  r   )r<  r  r  )r<  r  r8  )r<  [int, str, bool, bytes]generic[int, str, bool, bytes])generic[*Ts, T1, T2]r  r   )r?  r  r   )r?  r  r  )r?  r  r8  )r?  r=  r>  )generic[T1, *Ts, T2]r  r   )r@  r  r   )r@  r  r  )r@  r  r8  )r@  r=  r>  )r6  r  z#generic[int, *tuple_type[int, ...]])r6  [str, *tuple_type[int, ...]]r"  )r6  r  z(generic[int, *tuple_type[int, ...], str])r7  r  z#generic[*tuple_type[int, ...], int])r7  rA  z(generic[str, *tuple_type[int, ...], int])r7  r  #generic[*tuple_type[int, ...], str])r@  r  z(generic[int, *tuple_type[int, ...], int])zgeneric[T, str, *Ts]r  z(generic[int, str, *tuple_type[int, ...]])zgeneric[*Ts, str, T]r  z(generic[*tuple_type[int, ...], str, int])r9  r  z)generic[list[int], *tuple_type[int, ...]])r;  r  z)generic[*tuple_type[int, ...], list[int]])z!generic[T, *tuple_type[int, ...]]r!  r"  )z&generic[T1, T2, *tuple_type[int, ...]][str, bool]z)generic[str, bool, *tuple_type[int, ...]])&generic[T1, *tuple_type[int, ...], T2]rC  r5  )rD  z[str, bool, float]r   )z!generic[T1, *tuple_type[T2, ...]]r  z#generic[int, *tuple_type[str, ...]])z!generic[*tuple_type[T1, ...], T2]r  rB  )z+generic[T1, *tuple_type[generic[*Ts], ...]]r  z2generic[int, *tuple_type[generic[str, bool], ...]])z+generic[*tuple_type[generic[*Ts], ...], T1]r  z2generic[*tuple_type[generic[int, str], ...], bool]r  r#  s   &              rh   test_variadic_parameters6GenericAliasSubstitutionTests.test_variadic_parameters2  sU   T]T]$##*(J
wJ
 yJ
 ~	J

 yJ
 yJ
 ~J
 VJ
 JJ
 `J
 KJ
 vJ
 yJ
 |J
  |!J
" v#J
$ y%J
& ~'J
( D)J
* v+J
, -J
. D/J
0 J1J
4 v5J
6 y7J
8 ~9J
: D;J
< v=J
> ?J
@ DAJ
B JCJ
F vGJ
H vIJ
J ~KJ
L DMJ
N KOJ
R vSJ
T vUJ
V ~WJ
X DYJ
Z K[J
^ v_J
` vaJ
b ~cJ
d DeJ
f KgJ
j PkJ
l PmJ
n UoJ
p PqJ
r UsJ
t PuJ
v UwJ
x UyJ
z U{J
| V}J
~ VJ
B PCJ
D VEJ
F VGJ
H vIJ
L PMJ
N POJ
P _QJ
R _SJ
X AF<N+<!1->OP"+X|[!Q" 6H1	\\\	<\XX#{2!..y99 !56 :9 (( !56 . YX 6H AF :9 YXXs$   %F	(E?:3F	?F
F	F#rl   N)
rm   rn   ro   rp   r  r$  r.  rE  rq   rr   rs   s   @rh   r  r    s#     /d?B@d drk   r  c                   P   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V tR# )UnpackTestsi  c                f    . \         \        ,          O5 \        \        \        ,          ,           R # rb   )rz  r   r   r   r   s   &rh   test_accepts_single_type$UnpackTests.test_accepts_single_type  s    %*uSzrk   c                   \        \        \        \        \        ,          ,          4      4      pR F7  pV P                  VR7      ;_uu_ 4        V P                  W!4       RRR4       K9  	  R#   + '       g   i     KN  ; ir  required_itemNr  r  r  )setdirr   r   r   r~   assertInrf   	dir_itemsrO  s   &  rh   test_dirUnpackTests.test_dir  sY    F5:./0	
M M::m7 ;:
 ;::s   A..A?c                    V P                  \        4      ;_uu_ 4        \        \        \        ,          \        \
        ,          3,           R R R 4       R #   + '       g   i     R # ; irb   )r   r   r   r   r   r  r   s   &rh   test_rejects_multiple_types'UnpackTests.test_rejects_multiple_types  s7    y))5:uSz)* *)))   .AA'	c                   V P                  \        4      ;_uu_ 4        . \        \        ,          O5^ ,          \        \        ,          ,           RRR4       V P                  \        4      ;_uu_ 4        \        \
        \        ,          ,          \
        \        ,          ,           RRR4       R#   + '       g   i     Lj; i  + '       g   i     R# ; ir   N)r   r   rz  r   r   r   r   s   &rh   &test_rejects_multiple_parameterization2UnpackTests.test_rejects_multiple_parameterization  sr    y))eCjN1eCj) *y))5:uSz* *) *))))s   2B253C2C	C	c                    V P                  \        4      ;_uu_ 4        \        4        R R R 4       R #   + '       g   i     R # ; irb   )r   r   r   r   s   &rh   test_cannot_be_called!UnpackTests.test_cannot_be_called  s'    y))H *)))	   3A	c                   a \        R R\        R\        /4      oV3R lR lpV P                  \	        VP
                  R,          4      R\         R24       R# )	MovierA  yearc                4   < V ^8  d   QhR\         S,          /# )r  r   r   )r  re  s   "rh   r  8UnpackTests.test_usage_with_kwargs.<locals>.__annotate__  s    --&--rk   c                      R # rb   rl   )r   s   ,rh   foo/UnpackTests.test_usage_with_kwargs.<locals>.foo      #rk   r   ztyping.Unpack[z.Movie]N)r=   r  r   r   r   __annotations__rm   )rf   rk  re  s   & @rh   test_usage_with_kwargs"UnpackTests.test_usage_with_kwargs  sJ    'FC#=>--c11(;<)(7;	=rk   c                   \        R 4      p ! R R\        . VO5,          4      pR ! 4       pV\        .VO5,          pV P                  V\        ,          P
                  \        \        34       V P                  V. \        \        ,          O5,          P
                  \        \        34       V P                  V. \        \        ,          O5,          P
                  \        \        34       V P                  V\        \        \        ,          ,          ,          P
                  \        \        34       V P                  V\        \        \        ,          ,          ,          P
                  \        \        34       V\        .VO5,          pV P                  V\        ,          P
                  \        \        34       V P                  V. \        \        ,          O5,          P
                  \        \        34       V P                  V. \        \        ,          O5,          P
                  \        \        34       V P                  V\        \        \        ,          ,          ,          P
                  \        \        34       V P                  V\        \        \        ,          ,          ,          P
                  \        \        34       R# )rp  c                       ] tR tRtRtR# )+UnpackTests.test_builtin_tuple.<locals>.Oldi  rl   Nr   rl   rk   rh   Oldrs        rk   rt  c                  0   a R 5	;p 3o ! V3R lRS5
q4      # )rp  c                      < ] tR tRt Z tRtR# )+UnpackTests.test_builtin_tuple.<locals>.Newi  rl   NrW  rY  s   rh   Newrx         rk   ry  rl   r  s     @rh   <generic parameters of New>CUnpackTests.test_builtin_tuple.<locals>.<generic parameters of New>      #rk   N)	r   r$   r   r   r  r  rz  r   r   )rf   rp  rt  ry  PartOldPartNews   &     rh   test_builtin_tupleUnpackTests.test_builtin_tuple  s   $$'#2#,$chBh-..c
;%*-66c
C%*-66c
Cc
!34==SzJc
!34==SzJchBh-..c
;%*-66c
C%*-66c
Cc
!34==SzJc
!34==SzJrk   c                   \        R 4      pR ! 4       pV\        .VO5,          p\        P                  ! R4      pV P	                  \
        V4      ;_uu_ 4        V\        \        \        ,          ,          ,           RRR4       V P	                  \
        V4      ;_uu_ 4        V\        \        \        ,          ,          ,           RRR4       R#   + '       g   i     L\; i  + '       g   i     R# ; i)rp  c                  0   a R 5	;p 3o ! V3R lRS5
q4      # )rp  c                      < ] tR tRt Z tRtR# )/UnpackTests.test_unpack_wrong_type.<locals>.Geni  rl   NrW  rY  s   rh   Genr    rz  rk   r  rl   r  s     @rh   <generic parameters of Gen>GUnpackTests.test_unpack_wrong_type.<locals>.<generic parameters of Gen>  r}  rk   z*Unpack[...] must be used with a tuple typeN)	r   r   r  r  r
  r   r   r.  r   )rf   rp  r  PartGenbad_unpack_params   &    rh   test_unpack_wrong_type"UnpackTests.test_unpack_wrong_type  s    $chBh-99%QR##I/?@@F49%& A##I/?@@F49%& A@ A@@@@s   $C#$C$C!	$C5	rl   N)rm   rn   ro   rp   rJ  rV  rY  r^  ra  ro  r  r  rq   rr   rs   s   @rh   rH  rH    s3     8++=K(	' 	'rk   rH  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R tR t R t!R  t"R! t#R" t$R# t%R$ t&R%t'V t(R&# )'TypeVarTupleTestsi  c                    \        R 4      pV P                  VP                  R 4       \        R4      pV P                  VP                  R4       R# )rp  r  N)r   r   rm   )rf   rp  r  s   &  rh   	test_nameTypeVarTupleTests.test_name  s>    $d+5!u-rk   c                \    \        R 4      pV P                  VP                  \        4       R# rp  N)r   r   rn   rm   rf   rp  s   & rh   test_moduleTypeVarTupleTests.test_module  s     $1rk   c                    / p\        R V4       VR,          pV P                  VP                  R4       V P                  VP                  R4       R# )z8from typing import TypeVarTuple; Ts = TypeVarTuple("Ts")rp  N)r  r   rm   r   rn   )rf   r  rp  s   &  rh   	test_execTypeVarTupleTests.test_exec  sA    GLXd+bmmT*rk   c                >    \        R 4      pV P                  W4       R# r  )r   r   r  s   & rh    test_instance_is_equal_to_itself2TypeVarTupleTests.test_instance_is_equal_to_itself  s    $ rk   c                N    V P                  \        R 4      \        R 4      4       R# r  )r   r   r   s   &rh   &test_different_instances_are_different8TypeVarTupleTests.test_different_instances_are_different  s    L.T0BCrk   c                H    \        R 4      pV P                  V\         4       R# r  )r   r   r  s   & rh   (test_instance_isinstance_of_typevartuple:TypeVarTupleTests.test_instance_isinstance_of_typevartuple  s    $b,/rk   c                    \        R 4      pV P                  \        4      ;_uu_ 4        V! 4        RRR4       R#   + '       g   i     R# ; ir  )r   r   r   r  s   & rh   test_cannot_call_instance+TypeVarTupleTests.test_cannot_call_instance  s1    $y))D *)))s	   ;A	c                    \        R 4      pV P                  . VO5^ ,          . VO5^ ,          4       V P                  \        V,          \        V,          4       R# r  )r   r   r   r  s   & rh   -test_unpacked_typevartuple_is_equal_to_itself?TypeVarTupleTests.test_unpacked_typevartuple_is_equal_to_itself  sD    $2FbF1I.VBZ0rk   c                    \        R 4      pV P                  \        . VO5,          \        . VO5,          4       V P                  \        \        V,          ,          \        \        V,          ,          4       R# r  )r   r   rz  r   r   r  s   & rh   +test_parameterised_tuple_is_equal_to_itself=TypeVarTupleTests.test_parameterised_tuple_is_equal_to_itself  sN    $ssU3B3Z0vbz*E&*,=>rk   c                F   \        R 4      p\        R4      pV P                  \        . VOVO5,          \        . VOVO5,          4       V P                  \        \        V,          \        V,          3,          \        \        V,          \        V,          3,          4       R# )Ts1r  N)r   r   rz  r   r   )rf   r  r  s   &  rh    tests_tuple_arg_ordering_matters2TypeVarTupleTests.tests_tuple_arg_ordering_matters  s~    5!5!*3***3**	
 	&+vc{*+&+vc{*+	
rk   c                n   \        R 4      p\        . VO5,          pV P                  VP                  . VO54       V P                  VP                  V34       \
        \        V,          ,          pV P                  VP                  \        V,          34       V P                  VP                  V34       R# r  )r   rz  r   r  r  r   r   )rf   rp  t1t2s   &   rh   *test_tuple_args_and_parameters_are_correct<TypeVarTupleTests.test_tuple_args_and_parameters_are_correct  s    $3B3Zff-**RE26":vbzm4**RE2rk   c           	        \        R 4      p\        R4      p\        R4      p ! R R\        . VO5,          4      p ! R R\        \        V,          ,          4      pWE\        \
        3 EFh  pV. VO5,          pV P                  VR,          VR,          4       V P                  V\        ,          V\        ,          4       V P                  V\        \        3,          V\        \        3,          4       V\        V,          ,          pV P                  VR,          VR,          4       V P                  V\        ,          V\        ,          4       V P                  V\        \        3,          V\        \        3,          4       \        V. VO5,          ,          p	V P                  V	R,          \        VR,          ,          4       V P                  V	\        ,          \        V\        ,          ,          4       V P                  V	\        \        3,          \        V\        \        3,          ,          4       \        V\        V,          ,          ,          p
V P                  V
R,          \        VR,          ,          4       V P                  V
\        ,          \        V\        ,          ,          4       V P                  V
\        \        3,          \        V\        \        3,          ,          4       Wb.VOVN5,          pV P                  \        4      ;_uu_ 4        VR,           RRR4       V P                  \        4      ;_uu_ 4        V\        ,           RRR4       V P                  V\        \        3,          V\        \        3,          4       V P                  V\        \        \        3,          V\        \        \        3,          4       V P                  V\        \        \        \        3,          V\        \        \        \        3,          4       Wb\        V,          V3,          pV P                  \        4      ;_uu_ 4        VR,           RRR4       V P                  \        4      ;_uu_ 4        V\        ,           RRR4       V P                  V\        \        3,          V\        \        3,          4       V P                  V\        \        \        3,          V\        \        \        3,          4       V P                  V\        \        \        \        3,          V\        \        \        \        3,          4       \
        \        V,          V. VO5,          \        V,          3,          pV P                  \        4      ;_uu_ 4        VR,           RRR4       V P                  \        4      ;_uu_ 4        V\        ,           RRR4       V\        8w  dW   V P                  V\        \        3,          \
        \        \        ,          VR,          \        \        ,          3,          4       V P                  V\        \        \        3,          \
        \        \        ,          V\        ,          \        \        ,          3,          4       V P                  V\        \        \        \        3,          \
        \        \        ,          V\        \        3,          \        \        ,          3,          4       \        \        V,          V\        V,          ,          \        V,          3,          pV P                  \        4      ;_uu_ 4        VR,           RRR4       V P                  \        4      ;_uu_ 4        V\        ,           RRR4       V\        8w  dW   V P                  V\        \        3,          \        \        \        ,          VR,          \        \        ,          3,          4       V P                  V\        \        \        3,          \        \        \        ,          V\        ,          \        \        ,          3,          4       V P                  V\        \        \        \        3,          \        \        \        ,          V\        \        3,          \        \        ,          3,          4       EKk  	  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Lj; i  + '       g   i     EL; i  + '       g   i     EL; i)	rp  r   r  c                       ] tR tRtRtR# )3TypeVarTupleTests.test_var_substitution.<locals>.G1i$  rl   Nr   rl   rk   rh   G1r  $      rk   r  c                       ] tR tRtRtR# )3TypeVarTupleTests.test_var_substitution.<locals>.G2i%  rl   Nr   rl   rk   rh   G2r  %      trk   r  Nrl   )r   r   r$   r   r   rz  r   r  r  r.  r   r   r   r   r  )rf   rp  r   r  r  r  r  r	  r  r  EFGHIs   &              rh   r0  'TypeVarTupleTests.test_var_substitution   s   $CLT]$"$+$+%A#2#AQrUAbE*QuXqx0Qucz]AeSjM:&*AQrUAbE*QuXqx0Qucz]AeSjM:QssVAQrUD2K0QuXtAeH~6Qucz]D5#:,?@Qvbz]#AQrUD2K0QuXtAeH~6Qucz]D5#:,?@*b*"*A""9--" .""9--% .Qucz]AeSjM:Quc3/5#s?1CDQuc356%c5:P8QRVBZ#$A""9--" .""9--% .Qucz]AeSjM:Quc3/5#s?1CDQuc356%c5:P8QRd1gq"vtBx/0A""9--" .""9--% .Ez  5#:!&tE{AbE49'D!EGQuc3/"4;#S	#ABDQuc356"4;#s(T%[#HIK d1gq}d2h67A""9--" .""9--% .Ez  5#:!&tE{AbE49'D!EGQuc3/"4;#S	#ABDQuc356"4;#s(T%[#HIK} &, .----- .----- .----- .-----s`    
cc,
d d
d(d<"
ee$c),c= dd%(d9<ee!$e5c                   \        R 4      p\        R4      p\        R4      p ! R R\        . VO5,          4      p ! R R\        \        V,          ,          4      pWE\        \
        3 EF  pWa,          pV P                  \        4      ;_uu_ 4        V\        \        3,           RRR4       WbV3,          pV P                  \        4      ;_uu_ 4        V. VO5,           RRR4       V P                  \        4      ;_uu_ 4        V\        V,          ,           RRR4       Wb.VO\        NVN5,          pV P                  \        4      ;_uu_ 4        V\        .VO5,           RRR4       V P                  \        4      ;_uu_ 4        V\        .VOVO5,           RRR4       Wb\        V,          \        V3,          pV P                  \        4      ;_uu_ 4        V\        \        V,          3,           RRR4       V P                  \        4      ;_uu_ 4        V\        \        V,          \        V,          3,           RRR4       EK  	  R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELk; i  + '       g   i     EL4; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     EKv  ; i)rp  r   r  c                       ] tR tRtRtR# )7TypeVarTupleTests.test_bad_var_substitution.<locals>.G1il  rl   Nr   rl   rk   rh   r  r  l  r  rk   r  c                       ] tR tRtRtR# )7TypeVarTupleTests.test_bad_var_substitution.<locals>.G2im  rl   Nr   rl   rk   rh   r  r  m  r  rk   r  N)
r   r   r$   r   r   rz  r   r   r   r  )	rf   rp  r   r  r  r  r  r	  r  s	   &        rh   r4  +TypeVarTupleTests.test_bad_var_substitutionh  s   $CLT]$"$+$+%AA""9--#s( . R%A""9--#2# .""9--&* . /b/#/r/"A""9--#(( .""9--#--R-  . VBZb()A""9--#vbz/" .""9--#vbz6":-. .-) &--- .----- .----- .----sT   II*I>JJ& J: 'KI'*I;>JJ#&J7:K
Kc                   \        R 4      p ! R R\        . VO5,          4      p ! R R\        \        V,          ,          4      pV P                  \	        V4      R 4       V P                  \	        . VO5^ ,          4      R4       V P                  \	        \        V,          4      R4       V P                  \	        \
        . VO5,          4      R4       V P                  \	        \        \        V,          ,          4      R4       V P                  \	        \
        . VO5,          !  R4       V P                  \	        \        \        \        V,          ,          ,          4      R	4       R
# )rp  c                       ] tR tRtRtR# )2TypeVarTupleTests.test_repr_is_correct.<locals>.G1i  rl   Nr   rl   rk   rh   r  r    r  rk   r  c                       ] tR tRtRtR# )2TypeVarTupleTests.test_repr_is_correct.<locals>.G2i  rl   Nr   rl   rk   rh   r  r    r  rk   r  ztyping.Unpack[Ts]ztuple[typing.Unpack[Ts]]ztyping.Tuple[typing.Unpack[Ts]]z*tuple[typing.Unpack[Ts]]z.typing.Unpack[typing.Tuple[typing.Unpack[Ts]]]N)r   r$   r   r   r   rz  r   )rf   rp  r  r  s   &   rh   test_repr_is_correct&TypeVarTupleTests.test_repr_is_correct  s    $$"$+$+b4(ffQi*=>fRj)+>?eCRCj)+EFeF2J/02STuSbSz*,GHfU6":%678:jkrk   c           
     Z   \        R 4      p ! R R\        . VO5,          4      p ! R R\        \        V,          ,          4      pV P                  \	        VR,          4      R4       V P                  \	        VR,          4      R4       V P                  \	        V\
        ,          4      R4       V P                  \	        V\
        ,          4      R4       V P                  \	        V\
        \        3,          4      R	4       V P                  \	        V\
        \        3,          4      R
4       V P                  \	        V. \        \        R3,          O5,          4      R4       V P                  \	        V\        \        \        R3,          ,          ,          4      R4       V P                  \	        V\
        .\        \        R3,          O5,          4      R4       V P                  \	        V\
        \        \        \        R3,          ,          3,          4      R4       V P                  \	        V. \        \        R3,          O\        N5,          4      R4       V P                  \	        V\        \        \        R3,          ,          \        3,          4      R4       V P                  \	        V\
        .\        \        R3,          O\        N5,          4      R4       V P                  \	        V\
        \        \        \        R3,          ,          \        3,          4      R4       R# )rp  c                       ] tR tRtRtR# )@TypeVarTupleTests.test_variadic_class_repr_is_correct.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    r3  rk   r  c                       ] tR tRtRtR# )@TypeVarTupleTests.test_variadic_class_repr_is_correct.<locals>.Bi  rl   Nr   rl   rk   rh   r	  r    r+  rk   r	  A[()]zB[()]A[float]zB[float]A[float, str]zB[float, str].zA[*tuple[int, ...]]z(B[typing.Unpack[typing.Tuple[int, ...]]]zA[float, *tuple[int, ...]]z/A[float, typing.Unpack[typing.Tuple[int, ...]]]zA[*tuple[int, ...], str]z-B[typing.Unpack[typing.Tuple[int, ...]], str]zA[float, *tuple[int, ...], str]z4B[float, typing.Unpack[typing.Tuple[int, ...]], str]Nrl   )
r   r$   r   assertEndsWithr   r  r  rz  r   r   )rf   rp  r  r	  s   &   rh   #test_variadic_class_repr_is_correct5TypeVarTupleTests.test_variadic_class_repr_is_correct  sD   $##*r
#*D2K1D2K1D5NJ7D5NJ7D5#:/AD5#:/AD#3E#s(O#3!451	3D6%S/#:!;<F	H 	D5#:5c?#:!;<8	:D5&sCx*A#A!BCM	O 	D#8E#s(O#8S#8!9:6	8D6%S/#:C#?!@AK	M 	D5#?5c?#?C#?!@A=	?D5&sCx*A3#F!GHR	Trk   c                   \        R 4      p ! R R\        \        V,          ,          4      pV. VO5,          pV P                  \	        V4      R4       V P                  \	        VR,          4      R4       V P                  \	        V\
        ,          4      R4       V P                  \	        V\
        \        3,          4      R4       V\        V,          ,          pV P                  \	        V4      R4       V P                  \	        VR,          4      R4       V P                  \	        V\
        ,          4      R4       V P                  \	        V\
        \        3,          4      R4       V. VO\        N5,          pV P                  \	        V4      R4       V P                  \	        VR,          4      R4       V P                  \	        V\
        ,          4      R	4       V P                  \	        V\
        \        3,          4      R
4       V\        V,          \        3,          pV P                  \	        V4      R4       V P                  \	        VR,          4      R4       V P                  \	        V\
        ,          4      R	4       V P                  \	        V\
        \        3,          4      R
4       V\        .VO5,          pV P                  \	        V4      R4       V P                  \	        VR,          4      R4       V P                  \	        V\
        ,          4      R4       V P                  \	        V\
        \        3,          4      R4       V\        \        V,          3,          pV P                  \	        V4      R4       V P                  \	        VR,          4      R4       V P                  \	        V\
        ,          4      R4       V P                  \	        V\
        \        3,          4      R4       V\        .VO\        N5,          p	V P                  \	        V	4      R4       V P                  \	        V	R,          4      R4       V P                  \	        V	\
        ,          4      R4       V P                  \	        V	\
        \        3,          4      R4       V\        \        V,          \        3,          p
V P                  \	        V
4      R4       V P                  \	        V
R,          4      R4       V P                  \	        V
\
        ,          4      R4       V P                  \	        V
\
        \        3,          4      R4       V. VO\        \        R3,          O5,          pV P                  \	        V4      R4       V P                  \	        VR,          4      R4       V P                  \	        V\
        ,          4      R4       V P                  \	        V\
        \        3,          4      R4       V\        V,          \        \        \        R3,          ,          3,          pV P                  \	        V4      R4       V P                  \	        VR,          4      R4       V P                  \	        V\
        ,          4      R4       V P                  \	        V\
        \        3,          4      R4       R# )rp  c                       ] tR tRtRtR# )FTypeVarTupleTests.test_variadic_class_alias_repr_is_correct.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    r+  rk   r  zA[typing.Unpack[Ts]]r  r  r  zA[typing.Unpack[Ts], int]zA[int]zA[float, int]zA[float, str, int]zA[int, typing.Unpack[Ts]]zA[int, float]zA[int, float, str]zA[int, typing.Unpack[Ts], str]zA[int, str]zA[int, float, str, str].z&A[typing.Unpack[Ts], *tuple[str, ...]]zA[*tuple[str, ...]]zA[float, *tuple[str, ...]]zA[float, str, *tuple[str, ...]]z;A[typing.Unpack[Ts], typing.Unpack[typing.Tuple[str, ...]]]z(A[typing.Unpack[typing.Tuple[str, ...]]]z/A[float, typing.Unpack[typing.Tuple[str, ...]]]z4A[float, str, typing.Unpack[typing.Tuple[str, ...]]]Nrl   )
r   r$   r   r  r   r  r  r   rz  r   )rf   rp  r  r	  r  r  r  r  r  r  r  JKs   &            rh   )test_variadic_class_alias_repr_is_correct;TypeVarTupleTests.test_variadic_class_alias_repr_is_correct  s   $*r
#*crcFDG%;<D2K1D5NJ7D5#:/AfRjMDG%;<D2K1D5NJ7D5#:/Ahrh3hKDG%@AD2K2D5NO<D5#:/1EFfRj#oDG%@AD2K2D5NO<D5#:/1EFchBhKDG%@AD2K2D5NO<D5#:/1EFc6":oDG%@AD2K2D5NO<D5#:/1EFcmBmmDG%EFD2K7D5N,@AD5#:/1JKc6":s"#DG%EFD2K7D5N,@AD5#:/1JK#r#E#s(O#$DG%MND2K)>?D5N,HID5#:/1RSfRj&sCx112DG%bcD2K)STD5N,]^D5#:/1ghrk   c           
     4   V P                  \        \        R ,          4      ;_uu_ 4         ! R R\        4      pRRR4       \        R4      pV P                  \        \        R ,          4      ;_uu_ 4         ! R RV4      pRRR4       V P                  \        \
        4      ;_uu_ 4         ! R R\        \        4      4      pRRR4       V P                  \        \
        4      ;_uu_ 4         ! R	 R
\        V!  4      pRRR4       V P                  \        \
        4      ;_uu_ 4         ! R R\        \        V,          4      4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R.VO5!  pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        V,          4      p	RRR4       R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELh; i  + '       g   i     EL?; i  + '       g   i     EL	; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)r   c                       ] tR tRtRtR# )1TypeVarTupleTests.test_cannot_subclass.<locals>.Ci  rl   Nr   rl   rk   rh   r  r        4rk   r  Nrp  c                       ] tR tRtRtR# )1TypeVarTupleTests.test_cannot_subclass.<locals>.Di  rl   Nr   rl   rk   rh   r  r    r   rk   r  c                       ] tR tRtRtR# )1TypeVarTupleTests.test_cannot_subclass.<locals>.Ei  rl   Nr   rl   rk   rh   r  r    r  rk   r  c                       ] tR tRtRtR# )1TypeVarTupleTests.test_cannot_subclass.<locals>.Fi  rl   Nr   rl   rk   rh   r  r    r  rk   r  c                       ] tR tRtRtR# )1TypeVarTupleTests.test_cannot_subclass.<locals>.Gi  rl   Nr   rl   rk   rh   r  r    r  rk   r  zCannot subclass typing\.Unpackc                       ] tR tRtRtR# )1TypeVarTupleTests.test_cannot_subclass.<locals>.Hi  rl   Nr   rl   rk   rh   r  r    r  rk   r  z#Cannot subclass typing.Unpack\[Ts\]c                       ] tR tRtRtR# )1TypeVarTupleTests.test_cannot_subclass.<locals>.Ii  rl   Nr   rl   rk   rh   r  r        $rk   r  c                       ] tR tRtRtR# )1TypeVarTupleTests.test_cannot_subclass.<locals>.Ji
  rl   Nr   rl   rk   rh   r  r  
      rk   r  )r
  r   r  r   r  r  r   r   )
rf   r  rp  r  r  r  r  r  r  r  s
   &         rh   r  &TypeVarTupleTests.test_cannot_subclass  s   ##I/OPP'L' Q$##I(>9; ;B; ##I/CDD'DL' E##I/CDD$D"I$ E##I/CDD+D$+ E##I$EG G!F!G ##I/UVVR W##I/UVV%F2J% WV# QPP; ; ; EDDDDDDDDG G WVVVVs_   G<6H,H$/H8, I2I (I3J<H	H!	$H5	8I		I	 I0	3J	J	c                   \        R 4      p\        R4      p ! R R\        . VO5,          4      p ! R R\        \        V,          ,          4      pVR,          pVR,          pV P	                  VP
                  R4       V P	                  VP
                  R4       V\        ,          pV\        ,          pV P	                  VP
                  \        34       V P	                  VP
                  \        34       V\        \        3,          p	V\        \        3,          p
V P	                  V	P
                  \        \        34       V P	                  V
P
                  \        \        34       W1,          pWA,          pV P	                  VP
                  V34       V P	                  VP
                  V34       V. VO5,          pV\        V,          ,          pV P	                  VP
                  . VO54       V P	                  VP
                  \        V,          34       W1.VO5,          pWA\        V,          3,          pV P	                  VP
                  V.VO54       V P	                  VP
                  V\        V,          34       V. VOVN5,          pV\        V,          V3,          pV P	                  VP
                  . VOVN54       V P	                  VP
                  \        V,          V34       R# )r   rp  c                       ] tR tRtRtR# )ATypeVarTupleTests.test_variadic_class_args_are_correct.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    r3  rk   r  c                       ] tR tRtRtR# )ATypeVarTupleTests.test_variadic_class_args_are_correct.<locals>.Bi  rl   Nr   rl   rk   rh   r	  r    r+  rk   r	  Nrl   )r   r   r$   r   r   r  r   r  )rf   r   rp  r  r	  r  r  r  r  r  r  r  r  r  LMNOrb  s   &                  rh   $test_variadic_class_args_are_correct6TypeVarTupleTests.test_variadic_class_args_are_correct  s,   CL$##*r
#*bEbER(R(cFcFcV,cV,c3hKc3hKc3Z0c3Z0DDaT*aT*crcFfRjMVrV,fRj]3f"fImaX"X.a_5frf1fIfRj!mXrX1X.fRj!_5rk   c                   \        R 4      p ! R R\        . VO5,          4      pV P                  V\        ,          P                  V4       V P                  V\
        ,          P                  V4       V P                  V\        V,          ,          P                  V4        ! R R\        \        V,          ,          4      pV P                  V\        ,          P                  V4       V P                  V\
        ,          P                  V4       V P                  V\        V,          ,          P                  V4       R# )rp  c                       ] tR tRtRtR# )BTypeVarTupleTests.test_variadic_class_origin_is_correct.<locals>.Ci8  rl   Nr   rl   rk   rh   r  r  8  r3  rk   r  c                       ] tR tRtRtR# )BTypeVarTupleTests.test_variadic_class_origin_is_correct.<locals>.Di=  rl   Nr   rl   rk   rh   r  r  =  r+  rk   r  N)r   r$   r   r   r  r   r   )rf   rp  r  r  s   &   rh   %test_variadic_class_origin_is_correct7TypeVarTupleTests.test_variadic_class_origin_is_correct5  s    $##af''+adooq)ar
m..2*r
#*af''+adooq)ar
m..2rk   c                  aa \        R 4      oV3R lR lpV P                  \        V4      R\        S,          /4       R R lpV P                  \        V4      R\        \        \
        \        3,          ,          /4        ! R R\        . SO5,          4      oV3R lR	 lpV P                  \        V4      R\        S\
        \        3,          ,          /4       R
# )rp  c                "   < V ^8  d   QhRSw  /# r  r   rl   )r  rp  s   "rh   r  JTypeVarTupleTests.test_get_type_hints_on_unpack_args.<locals>.__annotate__E  s    ##"#rk   c                      R # rb   rl   r   s   *rh   func1CTypeVarTupleTests.test_get_type_hints_on_unpack_args.<locals>.func1E      trk   r   c                J    V ^8  d   QhR\         \        \        3,          w  /# r  )rz  r   r  )r  s   "rh   r  r  H  s    00%S/0rk   c                      R # rb   rl   r  s   *rh   func2CTypeVarTupleTests.test_get_type_hints_on_unpack_args.<locals>.func2H  s    Drk   c                       ] tR tRtRtR# )LTypeVarTupleTests.test_get_type_hints_on_unpack_args.<locals>.CustomVariadiciK  rl   Nr   rl   rk   rh   CustomVariadicr  K      Drk   r  c                D   < V ^8  d   QhRS\         \        3,          w  /# r  r   r  )r  r  s   "rh   r  r  M  s    99.c29rk   c                      R # rb   rl   r  s   *rh   func3CTypeVarTupleTests.test_get_type_hints_on_unpack_args.<locals>.func3M  s    Trk   Nr   r   r1  r   rz  r   r  r$   )rf   r  r  r  r  rp  s   &   @@rh   "test_get_type_hints_on_unpack_args4TypeVarTupleTests.test_get_type_hints_on_unpack_argsB  s    $##UffRj%9:0UffU38_.E%FG0WSbS\099Uff^CH5M.N%OPrk   c                   \        R 4      pR R lpV P                  \        VR V/R7      R\        V,          /4       R R lpV P                  \        V4      R\        \        \
        \        3,          ,          /4        ! R R\        . VO5,          4      pR	 R
 lpV P                  \        VRV/R7      R\        V\
        \        3,          ,          /4       R# )rp  c                    V ^8  d   QhRR/# )r  r   z*Tsrl   )r  s   "rh   r  QTypeVarTupleTests.test_get_type_hints_on_unpack_args_string.<locals>.__annotate__S  s    %%%rk   c                      R # rb   rl   r  s   *rh   r  JTypeVarTupleTests.test_get_type_hints_on_unpack_args_string.<locals>.func1S  s    rk   )localnsr   c                    V ^8  d   QhRR/# )r  r   z*tuple[int, str]rl   )r  s   "rh   r  r%  W  s    22+2rk   c                      R # rb   rl   r  s   *rh   r  JTypeVarTupleTests.test_get_type_hints_on_unpack_args_string.<locals>.func2W  s    drk   c                       ] tR tRtRtR# )STypeVarTupleTests.test_get_type_hints_on_unpack_args_string.<locals>.CustomVariadiciZ  rl   Nr   rl   rk   rh   r  r-  Z  r  rk   r  c                    V ^8  d   QhRR/# )r  r   z*CustomVariadic[int, str]rl   )r  s   "rh   r  r%  \  s    ;;4;rk   c                      R # rb   rl   r  s   *rh   r  JTypeVarTupleTests.test_get_type_hints_on_unpack_args_string.<locals>.func3\  s    trk   Nr   )rf   rp  r  r  r  r  s   &     rh   )test_get_type_hints_on_unpack_args_string;TypeVarTupleTests.test_get_type_hints_on_unpack_args_stringP  s    $%UT2J7,	. 	3UffU38_.E%FG0WSbS\0;U-=~,NO &S)A"BC	Erk   c                   \        R 4      pV P                  \        . VO5,          P                  . VO54       V P                  \        \
        V,          ,          P                  \
        V,          34       V P                  \        . VO\        N5,          P                  . VO\        N54       V P                  \        \
        V,          \        3,          P                  \
        V,          \        34       V P                  \        \        .VO5,          P                  \        .VO54       V P                  \        \        \
        V,          3,          P                  \        \
        V,          34       V P                  \        \        .VO\        N5,          P                  \        .VO\        N54       V P                  \        \        \
        V,          \        3,          P                  \        \
        V,          \        34       V P                  \        . VO\        N5,          P                  . VO\        N54       V P                  \        \
        V,          ,          P                  \
        V,          34       R# r  )r   r   rz  r  r   r   r   r  r  s   & rh   test_tuple_args_are_correct-TypeVarTupleTests.test_tuple_args_are_correct`  s   $ss,,ff5vbz*33fRj]CxxCx11:R::>vbz3/886":s:KLsxRx11C:":>sF2J/883r
:KLs}R}}-66C	*sF2J34==vbz3/	1 	xxCx11:R::>vbz*33fRj]Crk   c           	     p   \        R 4      p\        R4      p\        R4      p\        . VOR3,          p\        \        V,          .R3,          pV P                  VP                  . VO\        R4      N54       V P                  VP                  \        V,          \        R4      34       \        \        .VOR3,          p\        \        \        V,          .R3,          pV P                  VP                  \        .VO\        R4      N54       V P                  VP                  \        \        V,          \        R4      34       \        . VO\        NR3,          p\        \        V,          \        .R3,          p	V P                  VP                  . VO\        N\        R4      N54       V P                  V	P                  \        V,          \        \        R4      34       \        \        .VO\        NR3,          p
\        \        \        V,          \        .R3,          pV P                  V
P                  \        .VO\        N\        R4      N54       V P                  VP                  \        \        V,          \        \        R4      34       \        R..VO5,          p\        R.\        V,          3,          pV P                  VP                  \        R4      .VO54       V P                  VP                  \        R4      \        V,          34       \        R.\        \        .VO5,          3,          p\        R.\        \        \        V,          3,          3,          pV P                  VP                  \        R4      \        \        .VO5,          34       V P                  VP                  \        R4      \        \        \        V,          3,          34       \        R.\        . VO\        N5,          3,          p\        R.\        \        V,          \        3,          3,          pV P                  VP                  \        R4      \        . VO\        N5,          34       V P                  VP                  \        R4      \        \        V,          \        3,          34       \        R.\        \        .VO\        N5,          3,          p\        R.\        \        \        V,          \        3,          3,          pV P                  VP                  \        R4      \        \        .VO\        N5,          34       V P                  VP                  \        R4      \        \        \        V,          \        3,          34       \        . VO.VO5,          p\        \        V,          .\        V,          3,          pV P                  VP                  . VOVO54       V P                  VP                  \        V,          \        V,          34       \        . VO.VO5,          p\        \        V,          .\        V,          3,          pV P                  VP                  . VOVO54       V P                  VP                  \        V,          \        V,          34       R# )rp  r  r  N)
r   r#   r   r   r  r   r   r  rz  r   )rf   rp  r  r  rM  r   cderg   ghijklmnopqrr   us   &                       rh   test_callable_args_are_correct0TypeVarTupleTests.test_callable_args_are_correctt  s   $5!5! UrUD[!fRj\4'(%6r%64:%67fRj$t*%=>cZBZ%&c6":&,-c%;B%;T
%;<c6":tDz%BCZrZ3Z%&fRj#&,-%;r%;3%;T
%;<fRj#tDz%BCc_B__d*+c6":s+T12c%@B%@%@T$Z%@Ac6":sDJ%GH dV[b[!dVVBZ'(d4j%62%67d4j&*%=>dVU388_,-dVU3r
?334d4j%b/%BCd4j%VBZ2H%IJdVU8B88_,-dVU6":s?334d4j%S/%BCd4j%r
C2H%IJdVU3==S=112dVU3r
C#7889d4j%b#2F%GHd4j%VBZ8L2M%NO UrUZRZ fRj\6":-.ZrZBZ0fRj&*%=>VsV\c\"fSk]F3K/0\s\S\2fSk6#;%?@rk   c                >   \        R 4      p\        R4      pV P                  \        4      ;_uu_ 4         ! R R\        . VOVO5,          4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        \        V,          \        V,          3,          4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        . VOVOVO5,          4      pRRR4       V P                  \        4      ;_uu_ 4         ! R	 R
\        \        V,          \        V,          \        V,          3,          4      pRRR4       R#   + '       g   i     EL
; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)r  r  c                       ] tR tRtRtR# )STypeVarTupleTests.test_variadic_class_with_duplicate_typevartuples_fails.<locals>.Ci  rl   Nr   rl   rk   rh   r  rK        $rk   r  Nc                       ] tR tRtRtR# )STypeVarTupleTests.test_variadic_class_with_duplicate_typevartuples_fails.<locals>.Di  rl   Nr   rl   rk   rh   r  rN        rk   r  c                       ] tR tRtRtR# )STypeVarTupleTests.test_variadic_class_with_duplicate_typevartuples_fails.<locals>.Ei  rl   Nr   rl   rk   rh   r  rQ    s    rk   r  c                       ] tR tRtRtR# )STypeVarTupleTests.test_variadic_class_with_duplicate_typevartuples_fails.<locals>.Fi  rl   Nr   rl   rk   rh   r  rS    s    Trk   r  )r   r   r   r$   r   )rf   r  r  r  r  r  r  s   &      rh   6test_variadic_class_with_duplicate_typevartuples_failsHTypeVarTupleTests.test_variadic_class_with_duplicate_typevartuples_fails  s   5!5!y)).GJSJ3J'. *y))<GF3K45< * y))4G,S,3,,-4 *y))IGF3KfSkABI *) *)))) *))))s/   E5/E%	E8;FE"	%E5	8F	F	c                   \        R 4      p ! R R\        \        V,          ,          4      pV\        .VO5,           V\        \        V,          3,           V. VO\        N5,           V\        V,          \        3,           V\        .VO\        N5,           V\        \        V,          \        3,           V\        \
        .VO\        N\        N5,           V\        \
        \        V,          \        \        3,           R# )rp  c                       ] tR tRtRtR# )]TypeVarTupleTests.test_type_concatenation_in_variadic_class_argument_list_succeeds.<locals>.Ci  rl   Nr   rl   rk   rh   r  rX    r+  rk   r  N)r   r$   r   r   r  r  r  rf   rp  r  s   &  rh   @test_type_concatenation_in_variadic_class_argument_list_succeedsRTypeVarTupleTests.test_type_concatenation_in_variadic_class_argument_list_succeeds  s    $*r
#*	#((	#vbz/	(2(s(	&*c/	#--C-	#vbz3
	#t
$b
$%
$
$%	#tVBZ
+,,rk   c                   \        R 4      p\        \        .VO5,           \        . VO\        N5,           \        \        .VO\        N5,           \        \        \        .VO\
        N\        N5,           \        \        \        V,          3,           \        \        V,          \        3,           \        \        \        V,          \        3,           \        \        \        \        V,          \
        \        3,           R# r  )r   rz  r   r  r  r  r   r   r  s   & rh   7test_type_concatenation_in_tuple_argument_list_succeedsITypeVarTupleTests.test_type_concatenation_in_tuple_argument_list_succeeds  s    $chBhhrh3hcmBmmc4("(e(S()c6":ofRj#oc6":s"#c4UC/00rk   c                    \        R 4      pV P                  \        4      ;_uu_ 4         ! R R\        V,          4      pRRR4       R#   + '       g   i     R# ; i)rp  c                       ] tR tRtRtR# )[TypeVarTupleTests.test_variadic_class_definition_using_packed_typevartuple_fails.<locals>.Ci  rl   Nr   rl   rk   rh   r  ra    r  rk   r  N)r   r   r   r$   rY  s   &  rh   >test_variadic_class_definition_using_packed_typevartuple_failsPTypeVarTupleTests.test_variadic_class_definition_using_packed_typevartuple_fails  s8    $y))&GBK& *)))s   A

A	c           	        \        R 4      pV P                  \        4      ;_uu_ 4         ! R R\        . VO\        N5,          4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        \
        V,          \        3,          4      pRRR4       R#   + '       g   i     L_; i  + '       g   i     R# ; i)rp  c                       ] tR tRtRtR# )VTypeVarTupleTests.test_variadic_class_definition_using_concrete_types_fails.<locals>.Fi  rl   Nr   rl   rk   rh   r  rf    s    rk   r  Nc                       ] tR tRtRtR# )VTypeVarTupleTests.test_variadic_class_definition_using_concrete_types_fails.<locals>.Ei  rl   Nr   rl   rk   rh   r  rh        trk   r  )r   r   r   r$   r   r   )rf   rp  r  r  s   &   rh   9test_variadic_class_definition_using_concrete_types_failsKTypeVarTupleTests.test_variadic_class_definition_using_concrete_types_fails  sx    $y)),GHRHH%, *y))3GF2JO,3 *) *))))s    B .(B3 B0	3C	c           	     "   \        R 4      p\        R4      p\        R4      p ! R R\        W#.VO5,          4      pV\        \        3,           V\        \        \
        3,           V\        \        \
        \        3,            ! R R\        W#\        V,          3,          4      pV\        \        3,           V\        \        \
        3,           V\        \        \
        \        3,            ! R R\        V.VOVN5,          4      pV\        \        3,           V\        \        \
        3,           V\        \        \
        \        3,            ! R	 R
\        V\        V,          V3,          4      pV\        \        3,           V\        \        \
        3,           V\        \        \
        \        3,            ! R R\        . VOVNVN5,          4      pV\        \        3,           V\        \        \
        3,           V\        \        \
        \        3,            ! R R\        \        V,          W#3,          4      p	V	\        \        3,           V	\        \        \
        3,           V	\        \        \
        \        3,           R# )rp  r  r  c                       ] tR tRtRtR# )WTypeVarTupleTests.test_variadic_class_with_2_typevars_accepts_2_or_more_args.<locals>.Ai  rl   Nr   rl   rk   rh   r  rn    r  rk   r  c                       ] tR tRtRtR# )WTypeVarTupleTests.test_variadic_class_with_2_typevars_accepts_2_or_more_args.<locals>.Bi  rl   Nr   rl   rk   rh   r	  rp    r   rk   r	  c                       ] tR tRtRtR# )WTypeVarTupleTests.test_variadic_class_with_2_typevars_accepts_2_or_more_args.<locals>.Ci  rl   Nr   rl   rk   rh   r  rr    r  rk   r  c                       ] tR tRtRtR# )WTypeVarTupleTests.test_variadic_class_with_2_typevars_accepts_2_or_more_args.<locals>.Di  rl   Nr   rl   rk   rh   r  rt    r   rk   r  c                       ] tR tRtRtR# )WTypeVarTupleTests.test_variadic_class_with_2_typevars_accepts_2_or_more_args.<locals>.Ei  rl   Nr   rl   rk   rh   r  rv    r  rk   r  c                       ] tR tRtRtR# )WTypeVarTupleTests.test_variadic_class_with_2_typevars_accepts_2_or_more_args.<locals>.Fi  rl   Nr   rl   rk   rh   r  rx    r   rk   r  N)r   r   r$   r   r  r  r  r   )
rf   rp  r  r  r  r	  r  r  r  r  s
   &         rh   :test_variadic_class_with_2_typevars_accepts_2_or_more_argsLTypeVarTupleTests.test_variadic_class_with_2_typevars_accepts_2_or_more_args  s   $T]T]+$+	#s(	#sE/	#sE4
 2r
*+2	#s(	#sE/	#sE4
 +R$+	#s(	#sE/	#sE4
 2F2J*+2	#s(	#sE/	#sE4
 +R$+	#s(	#sE/	#sE4
 2r
B*+2	#s(	#sE/	#sE4
  rk   c                   a \        R 4      oV3R lR lpV3R lR lpV P                  VP                  R\        S,          /4       V P                  VP                  R. SO5^ ,          /4       R# )rp  c                4   < V ^8  d   QhR\         S,          /# r  rh  )r  rp  s   "rh   r  RTypeVarTupleTests.test_variadic_args_annotations_are_correct.<locals>.__annotate__  s    &&VBZ&rk   c                      R # rb   rl   r  s   *rh   rg   GTypeVarTupleTests.test_variadic_args_annotations_are_correct.<locals>.f  s    $rk   c                "   < V ^8  d   QhRSw  /# r  rl   )r  rp  s   "rh   r  r}    s    brk   c                      R # rb   rl   r  s   *rh   r:  GTypeVarTupleTests.test_variadic_args_annotations_are_correct.<locals>.g  s    4rk   r   N)r   r   rn  r   )rf   rg   r:  rp  s   &  @rh   *test_variadic_args_annotations_are_correct<TypeVarTupleTests.test_variadic_args_annotations_are_correct  s[    $&&**VVBZ,@A**VVrVAY,?@rk   c                   R  R lpV P                  VP                  R. \        \        R3,          O5^ ,          /4       R R lpV P                  VP                  R\        \
        \        R3,          ,          /4       R# )c                B    V ^8  d   QhR\         \        R3,          w  /# r  r   .rz  r   )r  s   "rh   r  `TypeVarTupleTests.test_variadic_args_with_ellipsis_annotations_are_correct.<locals>.__annotate__  s    ,,eCHo,rk   c                      R # rb   rl   r  s   *rh   rM  UTypeVarTupleTests.test_variadic_args_with_ellipsis_annotations_are_correct.<locals>.a      rk   r   .c                T    V ^8  d   QhR\         \        \        R3,          ,          /# r  r   r   r   )r  s   "rh   r  r    s    33VE#s(O,3rk   c                      R # rb   rl   r  s   *rh   r   UTypeVarTupleTests.test_variadic_args_with_ellipsis_annotations_are_correct.<locals>.b  s    trk   N)r   rn  rz  r   r   r   )rf   rM  r   s   &  rh   8test_variadic_args_with_ellipsis_annotations_are_correctJTypeVarTupleTests.test_variadic_args_with_ellipsis_annotations_are_correct  sf    ,** "5E#s(O"5a"89	; 	4** &sCx"9:	<rk   c                  a	 \        R 4      o	V	3R lR lpV P                  VP                  R. \        \        .S	O5,          O5^ ,          /4       V	3R lR lpV P                  VP                  R. \        . S	O\        N5,          O5^ ,          /4       V	3R lR lpV P                  VP                  R. \        \
        .S	O\        N5,          O5^ ,          /4       V	3R lR	 lpV P                  VP                  R. \        \        \        .S	O\        N\
        N5,          O5^ ,          /4       V	3R
 lR lpV P                  VP                  R\        \        \        \        S	,          3,          ,          /4       V	3R lR lpV P                  VP                  R\        \        \        S	,          \        3,          ,          /4       V	3R lR lpV P                  VP                  R\        \        \
        \        S	,          \        3,          ,          /4       V	3R lR lpV P                  VP                  R\        \        \        \        \        S	,          \        \
        3,          ,          /4       R# )rp  c                H   < V ^8  d   QhR\         \        .SO5,          w  /# r  r  )r  rp  s   "rh   r  cTypeVarTupleTests.test_concatenation_in_variadic_args_annotations_are_correct.<locals>.__annotate__!  s    ,,eCH"Ho,rk   c                      R # rb   rl   r  s   *rh   rM  XTypeVarTupleTests.test_concatenation_in_variadic_args_annotations_are_correct.<locals>.a!  r  rk   r   c                J   < V ^8  d   QhR\         . SO\        N5,          w  /# r  r  )r  rp  s   "rh   r  r  '  s    ,,eHRHHo,rk   c                      R # rb   rl   r  s   *rh   r   XTypeVarTupleTests.test_concatenation_in_variadic_args_annotations_are_correct.<locals>.b'  r  rk   c                T   < V ^8  d   QhR\         \        .SO\        N5,          w  /# r  )rz  r  r   )r  rp  s   "rh   r  r  -  s    11eCM"McM*1rk   c                      R # rb   rl   r  s   *rh   r7  XTypeVarTupleTests.test_concatenation_in_variadic_args_annotations_are_correct.<locals>.c-  s    Trk   c                j   < V ^8  d   QhR\         \        \        .SO\        N\        N5,          w  /# r  )rz  r   r  r  r  )r  rp  s   "rh   r  r  3  s'    >>eC66E6367>rk   c                      R # rb   rl   r  s   *rh   r8  XTypeVarTupleTests.test_concatenation_in_variadic_args_annotations_are_correct.<locals>.d3  s    $rk   c                l   < V ^8  d   QhR\         \        \        \         S,          3,          ,          /# r  r  )r  rp  s   "rh   r  r  ;  s     ::VE#vbz/23:rk   c                      R # rb   rl   r  s   *rh   r9  XTypeVarTupleTests.test_concatenation_in_variadic_args_annotations_are_correct.<locals>.e;      drk   c                l   < V ^8  d   QhR\         \        \         S,          \        3,          ,          /# r  r  )r  rp  s   "rh   r  r  A  s     ::VE&*c/23:rk   c                      R # rb   rl   r  s   *rh   rg   XTypeVarTupleTests.test_concatenation_in_variadic_args_annotations_are_correct.<locals>.fA  r  rk   c                v   < V ^8  d   QhR\         \        \        \         S,          \        3,          ,          /# r  )r   r   r  r   )r  rp  s   "rh   r  r  G  s#    ??VE#vbz3"678?rk   c                      R # rb   rl   r  s   *rh   r:  XTypeVarTupleTests.test_concatenation_in_variadic_args_annotations_are_correct.<locals>.gG  s    4rk   c                   < V ^8  d   QhR\         \        \        \        \         S,          \        \
        3,          ,          /# r  )r   r   r   r  r  r  )r  rp  s   "rh   r  r  M  s'    LLVE#tVBZ"CDELrk   c                      R # rb   rl   r  s   *rh   r;  XTypeVarTupleTests.test_concatenation_in_variadic_args_annotations_are_correct.<locals>.hM  s    rk   N)
r   r   rn  rz  r   r  r  r  r   r   )
rf   rM  r   r7  r8  r9  rg   r:  r;  rp  s
   &        @rh   ;test_concatenation_in_variadic_args_annotations_are_correctMTypeVarTupleTests.test_concatenation_in_variadic_args_annotations_are_correct  s   $ 	-,(uSX2X(+,	

 	-,(uXbX#X(+,	

 	21-uS]2]s]+-a01	

 	?>:uS$77U7C78:1=>	
 	;:VE#vbz/234	

 	;:VE&*c/234	

 	@?VE#vbz3"6789	

 	MLVE#tVBZ"CDEF	
rk   c                $   \        R 4      p ! R R\        . VO5,          4      p ! R R\        \        V,          ,          4      pV P                  V\        ,          V\        ,          4       V P                  V\        ,          V\        ,          4       \        R4      p\        R4      pV P                  V. VO5,          V. VO5,          4       V P                  V\        V,          ,          V\        V,          ,          4       V P                  V. VOVO5,          V. VOVO5,          4       V P                  V\        V,          \        V,          3,          V\        V,          \        V,          3,          4       V P                  V\        .VOVO5,          V\        .VOVO5,          4       V P                  V\        \        V,          \        V,          3,          V\        \        V,          \        V,          3,          4       R# )rp  c                       ] tR tRtRtR# )MTypeVarTupleTests.test_variadic_class_same_args_results_in_equalty.<locals>.CiU  rl   Nr   rl   rk   rh   r  r  U  r3  rk   r  c                       ] tR tRtRtR# )MTypeVarTupleTests.test_variadic_class_same_args_results_in_equalty.<locals>.DiV  rl   Nr   rl   rk   rh   r  r  V  r+  rk   r  r  r  N)r   r$   r   r   r   rf   rp  r  r  r  r  s   &     rh   0test_variadic_class_same_args_results_in_equaltyBTypeVarTupleTests.test_variadic_class_same_args_results_in_equaltyS  s   $##*r
#*33(33(5!5!dsdGdsdG	
 	fSkNfSkN	

 	jsjSjMjsjSjM	
 	fSk6#;&'fSk6#;&'	

 	coCo#ocoCo#o	
 	c6#;s+,c6#;s+,	
rk   c                   \        R 4      p ! R R\        . VO5,          4      p ! R R\        \        V,          ,          4      pV P                  V\        \
        3,          V\
        \        3,          4       V P                  V\        \
        3,          V\
        \        3,          4       \        R4      p\        R4      pV P                  V. VOVO5,          V. VOVO5,          4       V P                  V\        V,          \        V,          3,          V\        V,          \        V,          3,          4       R# )rp  c                       ] tR tRtRtR# )ETypeVarTupleTests.test_variadic_class_arg_ordering_matters.<locals>.Ci{  rl   Nr   rl   rk   rh   r  r  {  r3  rk   r  c                       ] tR tRtRtR# )ETypeVarTupleTests.test_variadic_class_arg_ordering_matters.<locals>.Di|  rl   Nr   rl   rk   rh   r  r  |  r+  rk   r  r  r  N)r   r$   r   r   r   r  r  s   &     rh   (test_variadic_class_arg_ordering_matters:TypeVarTupleTests.test_variadic_class_arg_ordering_mattersy  s    $##*r
#*c3hKc3hK	
 	c3hKc3hK	

 5!5!jsjSjMjsjSjM	
 	fSk6#;&'fSk6#;&'	
rk   c                t   \        R 4      p\        R4      p\        R4      p ! R R\        . VO5,          4      p ! R R\        \        V,          ,          4      pV P                  V. VO5,          V. VO5,          4       V P                  V\        V,          ,          V\        V,          ,          4       R# )rp  r  r  c                       ] tR tRtRtR# )RTypeVarTupleTests.test_variadic_class_arg_typevartuple_identity_matters.<locals>.Ci  rl   Nr   rl   rk   rh   r  r    r3  rk   r  c                       ] tR tRtRtR# )RTypeVarTupleTests.test_variadic_class_arg_typevartuple_identity_matters.<locals>.Di  rl   Nr   rl   rk   rh   r  r    r+  rk   r  N)r   r$   r   r   )rf   rp  r  r  r  r  s   &     rh   5test_variadic_class_arg_typevartuple_identity_mattersGTypeVarTupleTests.test_variadic_class_arg_typevartuple_identity_matters  s    $5!5!##*r
#*AdsdGQttW-AfSkNAfSkN;rk   rl   N))rm   rn   ro   rp   r  r  r  r  r  r  r  r  r  r  r  r0  r4  r  r  r  r  r  r  r!  r1  r4  rG  rT  rZ  r]  rb  rj  ry  r  r  r  r  r  r  rq   rr   rs   s   @rh   r  r    s     .2+!D0
1
?


3FKP/<l"T@>i@&*'6R3QE D(;AzJ- 1'
4!!FA<5
n$
L
4	< 	<rk   r  c                   P   a  ] tR tRt o ]R 4       t]R 4       t]R 4       tRtV t	R# )TypeVarTuplePicklingTestsi  c                    \        R 4      s\        P                  ! \        P                  ! \        V4      4      pV P                  \        V4       R# )
global_Ts1N)r   r  r|   r  r  r   )rf   rz   
global_Ts2s   && rh   6test_pickling_then_unpickling_results_in_same_identityPTypeVarTuplePicklingTests.test_pickling_then_unpickling_results_in_same_identity  s5     ",/
\\&,,z5"AB
j*-rk   c                J   \        R 4      s. \        O5^ ,          p\        P                  ! \        P                  ! W!4      4      pV P                  W#4       \        \        ,          p\        P                  ! \        P                  ! WA4      4      pV P                  WE4       R# )	global_TsN)r   r  r|   r  r  r   r   )rf   rz   	unpacked1	unpacked2	unpacked3	unpacked4s   &&    rh   ?test_pickling_then_unpickling_unpacked_results_in_same_identityYTypeVarTuplePicklingTests.test_pickling_then_unpickling_unpacked_results_in_same_identity  sl     !-	!iM!$	LLi!?@	i+9%	LLi!?@	i+rk   c           	        \        R 4      s\        R4      s\        . \        O5,          \
        \        \        ,          ,          \        \        .\        O5,          \
        \        \        \        ,          3,          \        \        .\        O5,          \
        \        \        \        ,          3,          .pV F>  p\        P                  ! \        P                  ! W14      4      pV P                  W44       K@  	  R# )global_Tr  N)r   r  r   r  rz  r   r   r   r   r|   r  r  r   )rf   rz   tuplestr  s   &&   rh   >test_pickling_then_unpickling_tuple_with_typevartuple_equalityXTypeVarTuplePicklingTests.test_pickling_then_unpickling_tuple_with_typevartuple_equality  s    
 :& -	 *9*&#$!-i- !VI&&'#/	/"#vi(()	
 Afll145BQ# rk   rl   N)
rm   rn   ro   rp   r   r  r  r  rq   rr   rs   s   @rh   r  r    sA      . . 
, 
, $ $rk   r  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R tR t Rt!V t"R # )!
UnionTests  c                `    \         \        \        3,          pV P                  V\         4       R # rb   )r   r   r  r   rf   rF  s   & rh   r|  UnionTests.test_basics  s     #u*Au%rk   c                   V P                  ^*\        \        \        3,          4       V P                  R\        \        \        3,          4       V P	                  R\        \        \        3,          4       V P                  ^*\        \        \
        \        ,          3,          4       V P                  ^*\        \        \        3,          4       R# )r   abcgQ	@N)r   r   r   r  r   r.  r   r   s   &rh   test_union_isinstance UnionTests.test_union_isinstance  s    b%S/2eU38_5  uS#X7b%T#Y"78b%S/2rk   c           	        V P                  \        4      ;_uu_ 4        \        ^*\        \        \
        \        ,          3,          4       RRR4       V P                  \        4      ;_uu_ 4        \        ^*\        \
        \        ,          \        3,          4       RRR4       V P                  \        4      ;_uu_ 4        \        ^*\        \
        \        ,          \        3,          4       RRR4       V P                  \        4      ;_uu_ 4        \        ^*\        \        \        3,          4       RRR4       V P                  \        4      ;_uu_ 4        \        ^*\        \        \        3,          4       RRR4       V P                  \        4      ;_uu_ 4        \        ^*\        \        \        3,          4       RRR4       R#   + '       g   i     EL; i  + '       g   i     ELN; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; ir   )r   r   r   r   r  r.  r   r   r   s   &rh    test_union_isinstance_type_error+UnionTests.test_union_isinstance_type_error  s<   y))r5d3i01 *y))r5cC01 *y))r5cC01 *y))r5c?+ *y))r5c?+ *y))r5c?+ *) *)))))))))))))))sG   -G0-G"-G6"H
"H""H0G	"G3	6H	
H	H-	0I	c                    V P                  ^*\        \        ,          4       V P                  R\        \        ,          4       V P                  R\        \        ,          4       R# )r   Nr  )r   r   r   r   r   s   &rh   test_optional_isinstance#UnionTests.test_optional_isinstance  s>    b(3-0dHSM2  6rk   c                   V P                  \        4      ;_uu_ 4        \        ^*\        \        \
        ,          ,          4       RRR4       V P                  \        4      ;_uu_ 4        \        R\        \        \
        ,          ,          4       RRR4       V P                  \        4      ;_uu_ 4        \        ^*\        \        ,          4       RRR4       V P                  \        4      ;_uu_ 4        \        R\        \        ,          4       RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ly; i  + '       g   i     R# ; ir   )r   r   r   r   r.  r   r   r   s   &rh   #test_optional_isinstance_type_error.UnionTests.test_optional_isinstance_type_error  s    y))r8DI./ *y))tXd3i01 *y))r8C=) *y))tXc]+ *) *))))))))s/   'D*'D06E7ED-	0E 	E	E'	c                   V P                  \        \        \        \        3,          4       V P                  \        \        \        \        3,          4       V P	                  \
        \        \        \        3,          4       V P                  \        \        \        \        \        ,          3,          4       V P                  \        \        \        \        3,          4       V P	                  \        \        \        \        3,          4       V P                  \        \        \        \        3,          4       V P	                  \        \        \        \        3,          4       R # rb   )r   r   r   r  r   r  r.  r   r   s   &rh   test_union_issubclass UnionTests.test_union_issubclass  s    c5c?3c5c?3  c3h8c5d3i#89c5c?3  eCHo6c5c?3  eCHo6rk   c           	     <   V P                  \        4      ;_uu_ 4        \        \        \        \
        3,          \        4       R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        \
        \        \        ,          3,          4       R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        \        \        ,          \        3,          4       R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        \        \        ,          \
        3,          4       R R R 4       R #   + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R # ; irb   )r   r   r   r   r   r  r.  r   s   &rh    test_union_issubclass_type_error+UnionTests.test_union_issubclass_type_error  s    y))uS#X, *y))sE#tCy.12 *y))sE$s)S.12 *y))sE$s)S.12 *) *)))))))))s/   &E)1E$?1E71F
E!	$E4	7F	
F	c                   V P                  \        \        \        ,          4       V P                  \        R 4      \        \        ,          4       V P	                  \
        \        \        ,          4       V P                  \        \        \        ,          4       V P                  \        R 4      \        \        ,          4       V P	                  \        \        \        ,          4       R # rb   )r   r   r   r   r   r  r   r   s   &rh   test_optional_issubclass#UnionTests.test_optional_issubclass  s    c8C=1d4j(3-8  hsm4c8C=1d4j(3-8  hsm4rk   c                z   V P                  \        4      ;_uu_ 4        \        \        \        ,          \
        \        \        ,          ,          4       R R R 4       V P                  \        4      ;_uu_ 4        \        \        R 4      \
        \        \        ,          ,          4       R R R 4       V P                  \        4      ;_uu_ 4        \        \        \
        \        \        ,          ,          4       R R R 4       R #   + '       g   i     L; i  + '       g   i     Lu; i  + '       g   i     R # ; irb   )r   r   r   r.  r   r   r   r   s   &rh   #test_optional_issubclass_type_error.UnionTests.test_optional_issubclass_type_error  s    y))tCy(49"56 *y))tDz8DI#67 *y))sHT#Y/0 *)	 *))))))s#   6D90D+D)D	D&	)D:	c                   \         \        ,          pV P                  V\        4       \         \        \        3,          p\         \        \        3,          p\         \        \        3,          pV P                  W#4       V P                  V\        4       V P                  V\        4       V P                  V\        4       R # rb   )r   r   r   r   objectr   )rf   rF  u1u2u3s   &    rh   test_union_anyUnionTests.test_union_any  s    #JC 38_38_3; B$B$B$rk   c                *   \         \        ,          pV P                  V\        4       \         \        \        3,          p\         \        \        3,          pV P                  W#4       V P	                  V\        4       V P	                  V\        4       R # rb   )r   r  r   r   r   )rf   rF  r  r  s   &   rh   test_union_objectUnionTests.test_union_object)  se    &MF#3;63; B'B'rk   c                    \         \        \        3,          p\         \        \        3,          pV P                  W4       R # rb   )r   r   r  r   )rf   r  r  s   &  rh   test_unorderedUnionTests.test_unordered2  s,    3:5#: rk   c                T    \         \        ,          pV P                  V\        4       R # rb   )r   r   r   )rf   r  s   & rh   test_single_class_disappears'UnionTests.test_single_class_disappears7  s    (Oa"rk   c                    \         \        \        3,          pV P                  V\        4       V P	                  \        VP
                  4       V P	                  \        VP
                  4       R # rb   )r   r   r   r   rS  r  r  s   & rh   test_base_class_keptUnionTests.test_base_class_kept;  sE    (G#$Ax(h

+gqzz*rk   c                    \         \        \        3,          p\         V\        3,          pV P	                  V\         \        \        \        3,          4       R # rb   )r   r   r  r   r   )rf   rF  vs   &  rh   test_union_unionUnionTests.test_union_unionA  s:    #u*!X+E#uh"678rk   c                    ! R  R\         4      p ! R RVR7      p ! R RVR7      pV P                  \        W#3,          P                  W#34       \        W#3,          pV P	                  \
        R4      ;_uu_ 4        \        V4       RRR4       \        \        V3,          pV P	                  \
        R4      ;_uu_ 4        \        V4       RRR4       \        V\        3,          pV P	                  \
        R4      ;_uu_ 4        \        V4       RRR4       R#   + '       g   i     L; i  + '       g   i     Lj; i  + '       g   i     R# ; i)	c                       ] tR tRtRtRtR# );UnionTests.test_union_of_unhashable.<locals>.UnhashableMetaiG  Nrl   rm   rn   ro   rp   __hash__rq   rl   rk   rh   UnhashableMetar  G      Hrk   r  c                       ] tR tRtRtR# ).UnionTests.test_union_of_unhashable.<locals>.AiJ  rl   Nr   rl   rk   rh   r  r  J      3rk   r  	metaclassc                       ] tR tRtRtR# ).UnionTests.test_union_of_unhashable.<locals>.BiK  rl   Nr   rl   rk   rh   r	  r  K  r  rk   r	  z!unhashable type: 'UnhashableMeta'N)r   r   r   r  r
  r   hashr   )rf   r  r  r	  union1union2union3s   &      rh   test_union_of_unhashable#UnionTests.test_union_of_unhashableF  s    	T 	 	/.....qt--v6qt##I/RSSL T sAv##I/RSSL T q#v##I/RSSL TS TS TS TSSs$   =DD0ED-	0E 	E	c                   \         \        \        3,          pV P                  \	        V4      \
         R 24       \         \        \        3,          pV P                  \	        V4      R\
         R24       \        R4      p\         V\        3,          \        ,          pV P                  \	        V4      \	        \        4      4       \         \        \        ,          \        3,          pV P                  \	        V4      R4       \         \        \        ,          \        \        \        3,          3,          pV P                  \	        V4      R4       \         \        \        ,          ,          pV P                  \	        V4      R4       \         R\        3,          pV P                  \	        V4      R4       \         \        R3,          pV P                  \	        V4      R	4       \         R\        \        3,          pV P                  \	        V4      R
4       \        \        ,          pV P                  \	        V4      R	4       R# )z.Employee | intzint | z	.Employeer   ztyping.List[int] | intzlist[int] | dict[str, float]zint | floatNz
None | strz
str | NonezNone | str | int)r   r   r   r   r   rm   r   r   r.  r  r  r  r   )rf   rF  r   s   &  rh   r   UnionTests.test_reprZ  s   (C- aXJo">?#x- aF8*I">?CL!S&M#a$s),$s)S.!a":;$s)T#u*--.a"@A#+a-0$)a,/#t)a,/$S.!a"45SMa,/rk   c                    \        \        \        \        \        3,          4      4      pR F7  pV P                  VR7      ;_uu_ 4        V P                  W!4       RRR4       K9  	  R#   + '       g   i     KN  ; irM  )rQ  rR  r   r  r   r~   rS  rT  s   &  rh   rV  UnionTests.test_dirr  sX    E#s(O,-	
M M::m7 ;:
 ;::s   	A))A:c           	     N   V P                  \        R 4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        \        \        3,          4      pRRR4       R#   + '       g   i     LY; i  + '       g   i     R# ; i)z3type 'typing\.Union' is not an acceptable base typec                       ] tR tRtRtR# )*UnionTests.test_cannot_subclass.<locals>.Ci}  rl   Nr   rl   rk   rh   r  r+  }  r  rk   r  NzCannot subclass int \| strc                       ] tR tRtRtR# )*UnionTests.test_cannot_subclass.<locals>.Ei  rl   Nr   rl   rk   rh   r  r-    r  rk   r  )r
  r   r   r   r  )rf   r  r  s   &  rh   r  UnionTests.test_cannot_subclassz  s    ##IFH HE H ##I-/ /E#s(O / /	H H/ / /s   B !B B	B$	c                h   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        4      ! 4        R R R 4       \        \        \
        3,          pV P                  \        4      ;_uu_ 4        V! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        V4      ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ln; i  + '       g   i     R # ; irb   )r   r   r   r   r   r  r  s   & rh   r   "UnionTests.test_cannot_instantiate  s    y))G *y))KM *#u*y))C *y))GI *) *))) *))))s/   C'C:DD 'C7	:D
	D	 D1	c                   V P                  \        \        \        P                  \
        ,          3,          \        4       V P                  \        \        \        P                  \
        ,          3,          \        P                  \
        ,          4       V P                  \        \        \        \        P                  \
        ,          3,          P                  4       V P                  \        P                  \
        ,          \        \        \        P                  \
        ,          3,          P                  4       R # rb   )r   r   r  rc   Iterabler   rS  r  r   s   &rh   test_union_generalization$UnionTests.test_union_generalization  s    E#vs';";<cBE#vs';";<fooc>RSc5fooc&:!:;DDEfooc*E#vs7K2K,L,U,UVrk   c                   V P                  \        \        4       V P                  \        \        4       V P                  \        \        4       V P                  \
        \        4       V P                  R .\
        4       V P                  \
        \        P                  4       V P                  \
        \        P                  ,          \        4       R # rb   )	r   r   r  r   r%   r   rc   Mappingr!   r   s   &rh   test_union_compare_other#UnionTests.test_union_compare_other  s    E6*E3'He,He,TFH-Hfnn5HV%:%:;UCrk   c                p    \         \        ,          p\        \        R 3,          pV P                  W4       R # rb   )r   r   r   r   )rf   rB  rF  s   &  rh   test_optionalUnionTests.test_optional  s'    SM#t)rk   c                    V P                  \        4      ;_uu_ 4        \        R,           R R R 4       R #   + '       g   i     R # ; iNrl   )r   r   r   r   s   &rh   
test_emptyUnionTests.test_empty  s)    y))"I *)))s	   6A	c                   a \         \        \        3,          oV3R  lR lpV P                  \	        V4      R,          S4       R# )c                   < V ^8  d   QhRS/# r  r   rl   )r  rF  s   "rh   r  3UnionTests.test_no_eval_union.<locals>.__annotate__      rk   c                     R # rb   rl   r   s   &rh   rg   (UnionTests.test_no_eval_union.<locals>.f      Srk   r   N)r   r   r  r   r,   )rf   rg   rF  s   & @rh   test_no_eval_unionUnionTests.test_no_eval_union  s.    #s(OnQ',a0rk   c                    R  R lpV P                  \        \        V\        3,          4      \         RVP
                   R24       R# )c                $    V ^8  d   QhR\         /# r`  r   )r  s   "rh   r  9UnionTests.test_function_repr_union.<locals>.__annotate__  s    Srk   c                      R # rb   rl   rl   rk   rh   fun0UnionTests.test_function_repr_union.<locals>.fun  s    #rk   .z | intN)r   r   r   r   rm   ro   )rf   rO  s   & rh   test_function_repr_union#UnionTests.test_function_repr_union  s6    eCHo.8*Ac>N>N=Ov0VWrk   c                8    \         \        \        3,          pV R # rb   )r   r  rA   r  s   & rh   test_union_str_pattern!UnionTests.test_union_str_pattern  s    #w,	rk   c                l   a ^ RI Ho \        S\        3,           V3R lp\        V\        3,           R# )r   )Elementc                     < S! V !  # rb   rl   )r   rX  s   *rh   Elem#UnionTests.test_etree.<locals>.Elem  s    D>!rk   N)xml.etree.ElementTreerX  r   r  )rf   rZ  rX  s   & @rh   
test_etreeUnionTests.test_etree  s*     	2gsl	" 	dCirk   c                D   V P                  \        \        ^,          \        ^,          3,          P                  \        ^,          \        ^,          34       V P                  \        \        ^,          \        ^,          3,          \        ^,          4       V P                  \        \        R,          \        ^ ,          3,          P                  \        R,          \        ^ ,          34       V P                  \        \        R,          \        ^,          3,          P                  \        R,          \        ^,          34       ^ RIp ! R RVP
                  4      pV P                  \        \        VP                  ,          \        VP                  ,          3,          \        VP                  ,          4       V P                  \        \        VP                  ,          \        VP                  ,          3,          \        VP                  ,          4       V P                  \        \        VP                  ,          \        VP                  ,          3,          P                  \        VP                  ,          \        VP                  ,          34       V P                  \        \        ^ ,          \        VP                  ,          \        R,          3,          P                  \        ^ ,          \        VP                  ,          \        R,          34       V P                  \        \        ^,          \        VP                  ,          \        R,          3,          P                  \        ^,          \        VP                  ,          \        R,          34       R# )rw   FTNc                       ] tR tRt^ t^tRtR# )/UnionTests.test_union_of_literals.<locals>.Intsi  rl   Nrm   rn   ro   rp   r  r	  rq   rl   rk   rh   Intsra        AArk   rc  )r   r   r   r  enumIntEnumr  r	  )rf   re  rc  s   &  rh   test_union_of_literals!UnionTests.test_union_of_literals  s<   wqz71:56??!!*gaj1	3wqz71:56 	% 	wu~wqz9:CC!%.'!*5	7wt}gaj89BB!$-4	6 		4<< 	 	wtvv?@ 	*wtvv?@ 	* 	wtvv?@II!$&&/7466?;	= 	wqz7466?GENJKTT!!*gdffowu~F	Hwqz7466?GDMIJSS!!*gdffowt}E	Grk   rl   N)#rm   rn   ro   rp   r|  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r#  r   rV  r  r   r3  r7  r:  r>  rH  rR  rU  r]  rg  rq   rr   rs   s   @rh   r  r    s     &3,7
,7351	%(!
#+9
(008	WD
1
X


G Grk   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	# )

TupleTestsi  c                   V P                  \        4      ;_uu_ 4        \        \        \        \        \
        3,          4       R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        \        \
        3,          4       R R R 4        ! R R\        4      pV P                  \        \        4       V P                  V\        4       R #   + '       g   i     L; i  + '       g   i     Ld; i)Nc                       ] tR tRtRtR# )"TupleTests.test_basics.<locals>.TPi  rl   Nr   rl   rk   rh   TPrm    s    rk   rn  )r   r   r   r   r   r  rz  r   )rf   rn  s   & rh   r|  TupleTests.test_basics  s    y))ueCHo. *y))ueCHo. * 	eU+b%( *)))s   &C)&C+C(	+C;	c                   V P                  \        \        ,          \        \        ,          4       V P                  \        \        R 3,          \        \        R 3,          4       V P                  \        \        ,          \        \        \        3,          4       V P                  \        \        ,          \        \        R 3,          4       R# .N)r   r   r   r   r   s   &rh   r   TupleTests.test_equality  sr    sU3Z0sCx%S/:E#Jc3h8E#Jc3h8rk   c                     ! R  R\         4      pV P                  V\        4       V P                  \        \        4       V P                  \         \        4       R# )c                       ] tR tRtRtR# )/TupleTests.test_tuple_subclass.<locals>.MyTuplei  rl   Nr   rl   rk   rh   MyTupleru        rk   rv  N)rz  r   r   )rf   rv  s   & rh   test_tuple_subclassTupleTests.test_tuple_subclass  s>    	e 	gu-eU+eU+rk   c                    V P                  \        4      ;_uu_ 4        \        R\        \        \        3,          4       RRR4       V P                  R\        4       R#   + '       g   i     L(; i)r   N)r   r   )r   r   r   r   r   r   r   s   &rh   test_tuple_instance_type_error)TupleTests.test_tuple_instance_type_error  sC    y))vuS#X/ *fe, *)s   "A  A0	c                   V P                  \        \        4      R 4       V P                  \        \        R,          4      R4       V P                  \        \        \        \        3,          4      R4       V P                  \        \        \        R3,          4      R4       V P                  \        \        \
        \        ,          ,          4      R4       R# )ztyping.Tupleztyping.Tuple[()]ztyping.Tuple[int, float].ztyping.Tuple[int, ...]ztyping.Tuple[list[int]]Nrl   )r   r   r   r   r  r.  r   s   &rh   r   TupleTests.test_repr  s    en5eBi*<=eCJ/02LMeCHo.0HIeDI./1JKrk   c                B   V P                  \        4      ;_uu_ 4        \        ^*\        4       RRR4       V P                  \        4      ;_uu_ 4        \        ^*\        \        ,          4       RRR4       R#   + '       g   i     LS; i  + '       g   i     R# ; ir   )r   r   r   r   r   r   s   &rh   r   TupleTests.test_errors	  s\    y))r5! *y))r5:& *) *))))s   A:B:B
	B	rl   N)rm   rn   ro   rp   r|  r   rx  r{  r   r   rq   rr   rs   s   @rh   rj  rj    s)     )9,-
L' 'rk   rj  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V tR# )BaseCallableTestsi	  c                J   V P                   pV P                  \        4      ;_uu_ 4        \        \        P
                  V\        .\        3,          4       R R R 4       V P                  \        P
                  V4       V P                  W4       R #   + '       g   i     LC; irb   )r#   r   r   r   typesFunctionTyper   r   rf   r#   s   & rh   test_self_subclass$BaseCallableTests.test_self_subclass	  si    ==y))u))8SE3J+?@ *e00(;h1 *)s   -BB"	c                ^   V P                   pV\        .\        3,          pV P                  W!\        .\        3,          4       V P                  \        W!\        .\        3,          04      ^4       V P	                  W!\        .\
        3,          4       V P	                  W!\
        .\        3,          4       V P	                  W!\        \        .\        3,          4       V P	                  W!. \        3,          4       V P	                  W!R\        3,          4       V P	                  W!4       R# )rw   .N)r#   r   r   rP  r   r  )rf   r#   r  s   &  rh   test_eq_hashBaseCallableTests.test_eq_hash	  s    ==cUCZ cUCZ01a3%*!567;As
34As
34Ac
C89AC01AS12A(rk   c                   V P                   p\        \        VR \        3,          4      4      pR F7  pV P	                  VR7      ;_uu_ 4        V P                  W24       RRR4       K9  	  R#   + '       g   i     KN  ; i).rN  NrP  )r#   rQ  rR  r   r~   rS  )rf   r#   rU  rO  s   &   rh   rV  BaseCallableTests.test_dir 	  sb    ==HS#X./0	
M M::m7 ;:
 ;::s   A--A>c                l   V P                   pV P                  \        4      ;_uu_ 4        V! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        V4      ! 4        R R R 4       V\        .\
        3,          pV P                  \        4      ;_uu_ 4        V! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        V4      ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ln; i  + '       g   i     R # ; irb   )r#   r   r   r   r   r  )rf   r#   r7  s   &  rh   r   )BaseCallableTests.test_cannot_instantiate)	  s    ==y))J *y))N *cUCZ y))C *y))GI *) *))) *))))s/   C)C<!DD")C9	<D	D	"D3	c                    V P                   pV P                  \        4      ;_uu_ 4        V\        ,           R R R 4       R #   + '       g   i     R # ; irb   )r#   r   r   r   r  s   & rh   test_callable_wrong_forms+BaseCallableTests.test_callable_wrong_forms5	  s2    ==y))SM *)))s   AA	c                j    V P                   pR  pV P                  W!4       V P                  RV4       R# )c                      R # rb   rl   rl   rk   rh   rg   9BaseCallableTests.test_callable_instance_works.<locals>.f<	      rk   N)r#   r   r   rf   r#   rg   s   &  rh   test_callable_instance_works.BaseCallableTests.test_callable_instance_works:	  s.    ==	a*  x0rk   c                   V P                   pR  pV P                  \        4      ;_uu_ 4        \        W!. R3,          4       RRR4       V P                  \        4      ;_uu_ 4        \        W!. \        3,          4       RRR4       V P                  \        4      ;_uu_ 4        \        RV. R3,          4       RRR4       V P                  \        4      ;_uu_ 4        \        RV. \        3,          4       RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Lw; i  + '       g   i     R# ; i)c                      R # rb   rl   rl   rk   rh   rg   >BaseCallableTests.test_callable_instance_type_error.<locals>.fC	  r  rk   N)r#   r   r   r   r   r  s   &  rh   !test_callable_instance_type_error3BaseCallableTests.test_callable_instance_type_errorA	  s    ==	y))q2t8,- *y))q2s7+, *y))tXb$h/0 *y))tXb#g./ *) *))))))))s/   D'D%D* D=D	D'	*D:	=E	c                   V P                   pVP                   R 2pV. \        3,          pV P                  \	        V4      V R24       V\
        \        .\        3,          pV P                  \	        V4      V R24       VR\
        3,          pV P                  \	        V4      V R24       V\
        \        .\        \        ,          3,          pV P                  \	        V4      V R24       R# )	.Callablez
[[], bool]z[[str, float], int].z
[..., str]z[[str, float], list[int]]N)	r#   rn   r  r   r   r  r  r   r.  )rf   r#   fullnamect0ct2ctvct3s   &      rh   r   BaseCallableTests.test_reprN	  s    ==))*)4r4x cxj
$;<U|S()cxj0C$DEsCx cxj
$;<U|T#Y./cxj0I$JKrk   c                   a V P                   oV3R  lR lpV P                  \        V\        4       \	        4       4      RSR\
        3,          /4       R# )c                8   < V ^8  d   QhRSR\         3,          /# )r  rM  .r   )r  r#   s   "rh   r  CBaseCallableTests.test_callable_with_ellipsis.<locals>.__annotate__\	  s     	 	8CF# 	rk   c                     R # rb   rl   rM  s   &rh   rk  :BaseCallableTests.test_callable_with_ellipsis.<locals>.foo\	  r  rk   rM  .N)r#   r   r,   globalslocalsr   )rf   rk  r#   s   & @rh   test_callable_with_ellipsis-BaseCallableTests.test_callable_with_ellipsisZ	  sF    ==	 	 	WYAxQ/0	2rk   c                f    V P                   p\        P                  VR \        3,          ,           R# rq  )r#   rc   r   r  r  s   & rh   test_ellipsis_in_generic*BaseCallableTests.test_ellipsis_in_genericb	  s#    ==HS#X&''rk   c                    V P                   pV P                  V\        ,          \        V\        3,          4       V P                  \        V,          \        \        V3,          4       R # rb   )r#   r   r   r   r  s   & rh   test_or_and_ror!BaseCallableTests.test_or_and_rorg	  sG    ==E)55+AB)5+ABrk   c                   V P                   pV\        \        .\        3,          pV\        P
                  P                   J d!   V P                  V\        P                  4       V P                  VP                  \        P
                  P                   4       V P                  VP                  \        \        \        34       V P                  VP                  R4       R # r=  )r#   r   r  r  collectionsr  r   r  GenericAliasr   r  r   r  r  rf   r#   r  s   &  rh   
test_basicBaseCallableTests.test_basicl	  s    ==#sU*+{///!!%););<e&&(@(@A#sE):;--r2rk   c                    V P                   pV\        \        .\        3,          pV P	                  \
        P                  ! V4      ! 4       V4       R # rb   )r#   r   r  r  r   r:  refr  s   &  rh   test_weakrefBaseCallableTests.test_weakrefu	  s:    ==#sU*+U+-u5rk   c           	     ~   V P                   p\        R 4      s\        R4      s\        R4      sV\        \        .\        3,          V\        \        3,          V\        \        3,          V\        \        \        3,          \        3,          V\        . \        O\        N5,          \        3,          .pV F  p\        \        P                  ^,           4       F  pV P                  W4R7      ;_uu_ 4        \        P                  ! W44      p\        P                   ! V4      pV P#                  VP$                  VP$                  4       V P#                  VP&                  VP&                  4       V P#                  VP(                  VP(                  4       RRR4       K  	  K  	  @@@R#   + '       g   i     K  ; i)T_pickleP_pickle	TS_pickle)r  rz   N)r#   r   r  rH   r  r   r  r   r  r  rI   r{   r|   r}   r~   r  r  r   r  r  r  )rf   r#   samplesr  rz   r   loadeds   &      rh   r  BaseCallableTests.test_picklez	  sN   ==:&Z( -	 c3Z&'Xs]#Xx'([h/45[!5)!5X!56;<
 Ev66:;\\\;;U2A#\\!_F$$U%5%5v7H7HI$$U^^V__E$$U%9%96;P;PQ <; <  h	 <;;s   7BF+	+F<c                B   V P                   pVP                   R 2pV\        \        .\        3,          pV\        \        .\
        3,          pVR\        3,          pV P                  V\        ,          V\        \        .\        3,          4       V P                  VR,          V\        \        R4      .\        R4      3,          4       V P                  V\        \        \        3,          V\        \        .\        3,          4       V P                  V\        ,          VR\        3,          4       V P                  V\        ,          VR\        3,          4       V\        \
        \        3,          pV P                  \        V4      V R24       V P                  \        V\        ,          4      V R24       V P                  V\        ,          V\        \        .\        3,          4       V\        P                  \        ,          \        \        \        3,          \
        .\        3,          pV P                  V\        \        \        3,          V\        P                  \        ,          \        \        \        3,          \        .\        3,          4       R# )r  .Nz[[int, ~VT], str]z[[int, dict], str])r#   rn   r   r   r   r   r   r  r   r  r   r   r  rc   r   rz  )rf   r#   r  C1C2C3C4C5s   &       rh   r0  'BaseCallableTests.test_var_substitution	  s   ==))*)4sAhk"r1grk"c1fC(C:s?";<D8S$t*,=tDz,I#JKCO,hU|S7H.IJC(38"45HxX'>? RbhZ/@#ABbhH:5G)HID8S$K,<#=> v{{1~uRU|R8#=>CeO,!6;;s#3U38_e"Lc"QR	Trk   c                    V P                   p\        R 4      p\        R4      pRpV P                  \        V4      ;_uu_ 4        WV3,          ^ \
        3,           RRR4       R#   + '       g   i     R# ; i)rb  r   zAExpected a list of types, an ellipsis, ParamSpec, or Concatenate.N)r#   rH   r   r
  r   r   )rf   r#   rb  r   pats   &    rh   test_type_subst_error'BaseCallableTests.test_type_subst_error	  sV    ==cNCLQ##Is33TN1c6" 4333s   A%%A6	c                   V P                   p ! R  RV4      pV\        .\        3,          pV P                  V! 4       P                  V4       V P                  V! 4       P                  V\        .\        3,          4       R# )c                   &   a  ] tR tRt o R tRtV tR# )/BaseCallableTests.test_type_erasure.<locals>.C1i	  c                    R # rb   rl   r   s   &rh   __call__8BaseCallableTests.test_type_erasure.<locals>.C1.__call__	      rk   rl   Nrm   rn   ro   rp   r  rq   rr   rs   s   @rh   r  r  	        rk   r  N)r#   r   r   r   r   r   __orig_class__)rf   r#   r  rM  s   &   rh   test_type_erasure#BaseCallableTests.test_type_erasure	  s^    ==	 	 uaxLacmmR(++Rq\:rk   c                   V P                   pVP                   R 2p\        R4      p\        R4      pW\        3,          pV P	                  V\
        .\        3,          V\
        .\        3,          4       V P	                  V\
        \        .\        3,          V\
        \        .\        3,          4       V P	                  V. \        3,          V. \        3,          4       V P	                  VR\        3,          VR\        3,          4       V P	                  WT\        3,          W\        3,          4       V P	                  V\        \
        V3,          \        3,          V\        \
        V3,          \        3,          4       V P	                  \        V4      V R24       V P	                  \        V\
        \        .\        3,          4      V R24       V P                  \        4      ;_uu_ 4        V\
        \        3,           RRR4       W\
        3,          pV P	                  V\
        .,          V\
        .\
        3,          4       V P	                  V\
        \        .,          V\
        \        .\
        3,          4       V P	                  V. ,          V. \
        3,          4       V P	                  VR,          VR\
        3,          4       V P	                  Wd,          W\
        3,          4       V P	                  V\        \
        V3,          ,          V\        \
        V3,          \
        3,          4       V P	                  V\
        ,          V\
        .\
        3,          4       V P	                  V\
        \        3,          V\
        \        .\
        3,          4       V P	                  \        V4      V R24       V P	                  \        V\
        \        3,          4      V R24       R#   + '       g   i     EL; i)	r  rb  P2.z[~P, ~T]z[[int, str], str]Nz	[~P, int]z[[int, str], int])r#   rn   rH   r   r   r   r  rI   r   r   r   )rf   r#   r  rb  r  r  r  s   &      rh   rf   BaseCallableTests.test_paramspec	  s   ==))*)4cNt_d^SE3J3%*)=>S#JO,hSz3.GHBGhr3w&78CHxS'9:Gh3w&78KR0#56!+c2g"6";<	>bhZx#89b#sS12xj@Q4RSy))sCxL * fSEHcUCZ$89S#J3*c/)BCB"c'!23C(38"45c'!23KR01!+c2g"6";<	> 	C(C5#:"67CHxc
C'@AbhZy#9:bcl+z9J-KL! *))s   6O::P	c                   V P                   pVP                   R 2p\        R4      p\        R4      p\        R4      pV\        \
        V3,          V3,          pV P                  \        V4      V R24       V P                  We\
        3,          V\        \
        V3,          \
        3,          4       V P                  V\        \        .\
        3,          V\
        \        \        .\
        3,          4       V P                  V. \
        3,          V\
        .\
        3,          4       V P                  V\        \        V3,          \
        3,          V\        \
        \        V3,          \
        3,          4       V P                  VR\
        3,          V\        \
        R3,          \
        3,          4       V\        \
        V3,          \
        3,          pV P                  \        V4      V R24       V P                  We,          V\        \
        V3,          \
        3,          4       V P                  V\        \        .,          V\
        \        \        .\
        3,          4       V P                  V\        \        3,          V\
        \        \        .\
        3,          4       V P                  V. ,          V\
        .\
        3,          4       V P                  V\        \        V3,          ,          V\        \
        \        V3,          \
        3,          4       V P                  VR,          V\        \
        R3,          \
        3,          4       R# )r  r   rb  r  z![typing.Concatenate[int, ~P], ~T].z"[typing.Concatenate[int, ~P], int]N)
r#   rn   r   rH   rI   r   r   r   r  r  )rf   r#   r  r   rb  r  r  s   &      rh   test_concatenate"BaseCallableTests.test_concatenate	  s   ==))*)4CLcNt_[a(!+,a$:%FG	Is7Xk#r'.BC.G%HIC<,-xc58I38N/OP2s7XseSj%9:;sBw/45!+c3l";S"@A	C38h{38/Dc/I&JK[a(#-.a$:%GH	JS"W)=s)B CDC<(Ce3Dc3I*JK3:#sE1BC1G(HI2# 45;sBw/0!+c3l";S"@A	C3+c3h*?*D!EFrk   c           	        V P                   p\        R 4      p\        R4      p\        R4      p\        R4      p\        R4      p ! R R\        W$3,          4      pV P                  VP                  W$34       V\        V.WV3,          3,          pV P                  VP                  \        V3WV3,          34       V P                  VP                  WS34       V P                  V\        \        \        ,          \        .3,          V\        \        .V\        \        ,          \        .\        3,          3,          4       WqV.\        3,          \        V,          .\        3,          p	V P                  V	P                  W.\        3,          \        V,          3\        34       V P                  V	P                  V34       V P                  V	\        \        ,          ,          Wq\        \        ,          .\        3,          \        \        \        ,          ,          .\        3,          4       WqW53,          V.V3,          p
V P                  V
P                  WV3,          V3V34       V P                  V
P                  W534       V P                  V
. \        3,          Wq. \        3,          \        .\        3,          4       V P                  V
\        \        .\        3,          Wq\        \        .\        3,          \        .\        3,          4       V P                  V
\        \        .V3,          \        ,          Wq\        \        .\        3,          \        .\        3,          4       Wq\        .VO\        NV3,          V.V3,          pV P                  VP                  V\        .VO\        NV3,          V3V34       V P                  VP                  We34       V P                  V\        \        \        3,          Wq\        \        \        \        .\        3,          \        .\        3,          4       R# )rb  r  r   r  rp  c                       ] tR tRtRtR# )3BaseCallableTests.test_nested_paramspec.<locals>.Myi
  rl   Nr   rl   rk   rh   Myr  
  rw  rk   r  N)r#   rH   r   r   r$   r   r  r   r  r  r.  r  r  r  )rf   r#   rb  r  r   r  rp  r  r  r  r  r  s   &           rh   test_nested_paramspec'BaseCallableTests.test_nested_paramspec	  se    ==cNt_CLT]$	 	 	**QF3b	8F++,Ry(r62B&CD**RH5C$s)U!334S#J$s)U1CS1H(IIJ	L 2$)$d2h/45s(;T"X'F&LM**RE2DItCyk3&67d3iI3NO	Q "&!2&*+R(8"'=r&BC**RH5BGb#g.4c9:	<S$K,-sDk3&67=sBC	ES$KN+C0sDk3&67=sBC	E 3//S/2-.3R78#C"1D(Er'JB&OP**RH5D%./sD%&=u&DEuMuTU	Wrk   c                D   V P                   pV\        \        .\        3,          pV P	                  \
        R 4      ;_uu_ 4        V\        ,           RRR4       \        R4      pW\        3,          pV P	                  \
        R4      ;_uu_ 4        V\        \        \        3,           RRR4       V P	                  \
        R4      ;_uu_ 4        V\        ,           RRR4       R#   + '       g   i     L; i  + '       g   i     LY; i  + '       g   i     R# ; i)zis not a generic classNrb  many arguments forfew arguments for)r#   r   r  r  r
  r   rH   r   )rf   r#   r  rb  r  s   &    rh   r   BaseCallableTests.test_errors%
  s    ==#sU*+##I/GHH#J IcNd^##I/CDDsC} E##I/BCCsG DC IH EDCCCs$   C(C;D(C8	;D	D	rl   N)rm   rn   ro   rp   r  r  rV  r   r  r  r  r   r  r  r  r  r  r  r0  r  r  rf  r  r  r   rq   rr   rs   s   @rh   r  r  	  s{     2
)8

10
L2(
C
36
*2T0#; MDG6(WT
 
rk   r  c                   >   a  ] tR tRt o ]P
                  tR tRtV tR# )TypingCallableTestsi2
  c                r   \         P                  \        \        .\        3,          p\
        P                  P                  \        \        .\        3,          pV P                  VP                  VP                  4       V P                  \        VP                  4      \        VP                  4      4       R # rb   )
rc   r#   r   r  r  r  r  r   r  r  )rf   c1c2s   &  rh   test_consistency$TypingCallableTests.test_consistency5
  sr     __c3Z-.__%%sCj$&67bkk2bkk*D,=>rk   rl   N)	rm   rn   ro   rp   rc   r#   r  rq   rr   rs   s   @rh   r  r  2
  s     H? ?rk   r  c                   B    ] tR tRt]P
                  P                  tRtR# )CollectionsCallableTestsi>
  rl   N)rm   rn   ro   rp   r  r  r#   rq   rl   rk   rh   r  r  >
  s    ''Hrk   r  c                   z   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V tR# )LiteralTestsiB
  c                   \         ^,           \         R,           \         R,           \         R,           \         R,           \         R,           \         \         R,          \         R,          3,           \         R,           R# )	rw   NTrw   r     r   r   r  )rw   2Fr        )s   foorc  )r   r   s   &rh   r|  LiteralTests.test_basicsC
  sO    
wt},-rk   c                    ^ RI p ! R RVP                  4      pV P                  \        VP                  ,          P
                  VP                  34       R# )r   Nc                       ] tR tRtRtRtR# )"LiteralTests.test_enum.<locals>.MyiP
  r  rl   N)rm   rn   ro   rp   r  rq   rl   rk   rh   r  r  P
  s    Ark   r  )re  Enumr   r   r  r  )rf   re  r  s   &  rh   	test_enumLiteralTests.test_enumN
  s;    	 	 	//"$$9rk   c                    \         \        ,           \         R,           \         R^R^/,           \         \        ,           R# )y              @rk  rc  N)y       @      @.rl   )r   r   r   r   s   &rh   3test_illegal_parameters_do_not_raise_runtime_errors@LiteralTests.test_illegal_parameters_do_not_raise_runtime_errorsU
  s-     	 5!$%

rk   c                f    \         \        R,          ,           \         \        R,          ,           R# )rw   Nr  )rk  rc  baz)r   r   r   s   &rh    test_literals_inside_other_types-LiteralTests.test_literals_inside_other_types]
  s     WWW*+,,rk   c                   V P                  \        \        ^,          4      R4       V P                  \        \        R,          4      R4       V P                  \        \        \        ,          4      R4       V P                  \        \        4      R4       V P                  \        \        R,          4      R4       V P                  \        \        R	,          4      R4       R# )
rw   ztyping.Literal[1]ztyping.Literal[1, True, 'foo']ztyping.Literal[int]ztyping.LiteralNztyping.Literal[None]ztyping.Literal[1, 2, 3])rw   Trk  rw   r  r  r  )r   r   r   r   r   s   &rh   r   LiteralTests.test_repra
  s    gaj)+>?gn568XYgcl+-BCg(89gdm,.DEgj124MNrk   c                    \        \        \        R,          4      4      pR F7  pV P                  VR7      ;_uu_ 4        V P	                  W!4       RRR4       K9  	  R#   + '       g   i     KN  ; i)rw   rN  Nr  rP  )rQ  rR  r   r~   rS  rT  s   &  rh   rV  LiteralTests.test_diri
  sU    GG,-.	
M M::m7 ;:
 ;::s   AA0c                f   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        ^,          ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        4      ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        ^,          4      ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ly; i  + '       g   i     R # ; irb   )r   r   r   r   r   s   &rh   r  LiteralTests.test_cannot_initq
  s    y))I *y))AJL *y))MO *y)) *) *))))))))s/   C&C9D D&C6	9D		D	D0	c                   V P                  \        4      ;_uu_ 4        \        ^\        ^,          4       RRR4       V P                  \        4      ;_uu_ 4        \        \        \        ^,          4       RRR4       V P                  \        4      ;_uu_ 4        \        ^\        ^,          4       RRR4       V P                  \        4      ;_uu_ 4        \        \        \        ^,          4       RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ly; i  + '       g   i     R# ; ir  )r   r   r   r   r   r   r   s   &rh    test_no_isinstance_or_issubclass-LiteralTests.test_no_isinstance_or_issubclass{
  s    y))q'!*% *y))sGAJ' *y))q'!*% *y))sGAJ' *) *))))))))s/   C?DD%D8?D	D"	%D5	8E		c                6   V P                  \        4      ;_uu_ 4         ! R  R\        ^,          4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        4      pRRR4       R#   + '       g   i     LG; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# )-LiteralTests.test_no_subclassing.<locals>.Fooi
  rl   Nr   rl   rk   rh   r   r  
  r  rk   r   Nc                       ] tR tRtRtR# )-LiteralTests.test_no_subclassing.<locals>.Bari
  rl   Nr   rl   rk   rh   r   r  
  r  rk   r   r   r   r   rf   r   r   s   &  rh   test_no_subclassing LiteralTests.test_no_subclassing
  sX    y))'gaj' *y))$g$ *) *))))s   A4B4B	B	c                    V P                  \        4      ;_uu_ 4        \        ^,          ^,           RRR4       R#   + '       g   i     R# ; ir  r   r   s   &rh   test_no_multiple_subscripts(LiteralTests.test_no_multiple_subscripts
  s-    y))AJqM *)))s	   =A	c                   V P                  \        ^ ,          \        R,          4       V P                  \        R,          \        ^,          4       V P                  \        ^,          \        ^,          4       V P                  \        R,          \        ^,          4       V P                  \        R,          \        R,          4       V P                  \        R,          \        R,          4       V P                  \        ^,          \        ^,          4       V P                  \        R,          \        R,          4       V P                  \        R	,          \        R
,          4       R# )r   FTN)rw   T)rw   rw   r  Tr  r  rw   r  r  )r   r   r   r   s   &rh   
test_equalLiteralTests.test_equal
  s    GAJ7GDM71:6GAJ
3GG,gaj9GG,gdm<GDM77+;<WQZ06)7:+>?rk   c                b   V P                  \        \        ^,          4      \        \        ^,          4      4       V P                  \        \        R,          4      \        \        R,          4      4       V P                  \        \        R,          4      \        \        R,          4      4       R# )rw   Nr  r)  r  r  )r   r  r   r   s   &rh   	test_hashLiteralTests.test_hash
  sj    gaj)4
+;<gdm,d74=.ABgg./gj6I1JKrk   c                x   V P                  \        R,          P                  R4       V P                  \        R,          P                  R4       V P                  \        ^\        ^,          \        R,          3,          P                  R4       V P                  \        . . 3,          P                  . . 34       R# )rw   Nr  r  )r  r  )rw   r  r  r  )r   r   r  r   s   &rh   	test_argsLiteralTests.test_args
  s    )22I>,55yAGAJ!=>GGVR11B8<rk   c                T   \         \         ^,          \         ^,          \         ^,          3,          p\         \         R,          ^3,          p\         \         R,          ,          pWV3 F<  pV P                  V\         R,          4       V P                  VP                  R4       K>  	  R# )rw   Nr  r  )r   r   r  )rf   l1l2l3r?  s   &    rh   test_flattenLiteralTests.test_flatten
  sx    WQZWQZ78WT]A%&WW%&AQ 01QZZ3 rk   c                B   ^ RI p ! R RVP                  4      p\        \        VP                  ,          \        VP                  ,          \        ^,          \        ^,          3,          pV P                  VP                  VP                  VP                  ^^34       R# )r   Nc                       ] tR tRt^t^tRtR# )5LiteralTests.test_does_not_flatten_enum.<locals>.Intsi
  rl   Nrb  rl   rk   rh   rc  r:  
  rd  rk   rc  )re  rf  r   r  r	  r   r  )rf   re  rc  r?  s   &   rh   test_does_not_flatten_enum'LiteralTests.test_does_not_flatten_enum
  sq    	4<< 	 DFFODFFOAJAJ
 	dffdffa%;<rk   rl   N)rm   rn   ro   rp   r|  r  r  r  r   rV  r  r  r"  r%  r*  r-  r0  r6  r;  rq   rr   rs   s   @rh   r  r  B
  sX     	 :-O8(%	@L
=4= =rk   r  XKXVc                   Z   a  ] tR tRt o V 3R lR ltV 3R lR ltR
V 3R lR lltR	tV tR# )SimpleMappingi
  c                &   < V ^8  d   QhRS[ RS[/# )r  keyr#  r=  r>  )r  rt   s   "rh   r  SimpleMapping.__annotate__
  s      r b rk   c                    R # rb   rl   rf   rB  s   &&rh   __getitem__SimpleMapping.__getitem__
      rk   c                &   < V ^8  d   QhRS[ RS[/# )r  rB  rS  rC  )r  rt   s   "rh   r  rD  
  s      r " rk   c                    R # rb   rl   rf   rB  rS  s   &&&rh   __setitem__SimpleMapping.__setitem__
  rI  rk   Nc                ,   < V ^8  d   QhRS[ RS[RS[/# )r  rB  rB  r#  rC  )r  rt   s   "rh   r  rD  
  s"      r B " rk   c                    R # rb   rl   rf   rB  rB  s   &&&rh   getSimpleMapping.get
  rI  rk   rl   rb   )	rm   rn   ro   rp   rG  rM  rR  rq   rr   rs   s   @rh   r@  r@  
  s(         rk   r@  c                   `   a  ] tR tRt o R tV 3R lR ltV 3R lR ltRV 3R lR	 lltR
tV t	R# )MySimpleMappingi
  c                    / V n         R # rb   storer   s   &rh   r   MySimpleMapping.__init__
  s	    
rk   c                    < V ^8  d   QhRS[ /# r  rB  r  )r  rt   s   "rh   r  MySimpleMapping.__annotate__
  s      s rk   c                (    V P                   V,          # rb   rW  rF  s   &&rh   rG  MySimpleMapping.__getitem__
  s    zz#rk   c                    < V ^8  d   QhRS[ /# r[  r\  )r  rt   s   "rh   r  r]  
  s        s  rk   c                "    W P                   V&   R # rb   rW  rL  s   &&&rh   rM  MySimpleMapping.__setitem__
  s    

3rk   Nc                    < V ^8  d   QhRS[ /# r[  r\  )r  rt   s   "rh   r  r]  
  s      s rk   c                P     V P                   V,          #   \         d    Tu # i ; irb   )rX  KeyErrorrQ  s   &&&rh   rR  MySimpleMapping.get
  s)    	::c?" 	N	s    %%rW  rb   )
rm   rn   ro   rp   r   rG  rM  rR  rq   rr   rs   s   @rh   rU  rU  
  s-           rk   rU  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )
Coordinatei
  c                2   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   # r  r   r   rL  )r  rt   s   "rh   r  Coordinate.__annotate__
       
F 
F rk   rl   Nrm   rn   ro   rp   r  rq   rr   rs   s   @rh   rh  rh  
        rk   rh  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )Pointi
  c                &   < V ^8  d   Qh/ S[ ;R&   # r  labelr\  )r  rt   s   "rh   r  Point.__annotate__
  s     J rk   rl   Nrm  rs   s   @rh   rp  rp  
  rn  rk   rp  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )MyPointi
  c                >   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   S[;R&   # )r  r   r   rs  r  )r  rt   s   "rh   r  MyPoint.__annotate__
  s%     
F 
F  J rk   rl   Nrm  rs   s   @rh   rv  rv  
  rn  rk   rv  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )XAxisi
  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  XAxis.__annotate__
       
F rk   rl   Nrm  rs   s   @rh   rz  rz  
  rn  rk   rz  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )YAxisi
  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r   rL  )r  rt   s   "rh   r  YAxis.__annotate__
  r}  rk   rl   Nrm  rs   s   @rh   r  r  
  rn  rk   r  c                       ] tR tRtRtR# )Positioni
  rl   Nr   rl   rk   rh   r  r  
  s    rk   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# )Protoi
  c                &   < V ^8  d   QhRS[ RS[/# r!  r  r   )r  rt   s   "rh   r  Proto.__annotate__
  s        rk   c                    R # rb   rl   rf   r"  s   &&rh   meth
Proto.meth
  rI  rk   c                &   < V ^8  d   Qh/ S[ ;R&   # r  attrrL  )r  rt   s   "rh   r  r  
  s     
I rk   rl   Nrm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r  
  s        rk   r  c                       ] tR tRtRtR# )Concretei
  rl   Nr   rl   rk   rh   r  r  
  r   rk   r  c                   B   a  ] tR tRt o ^tV 3R lR ltV 3R ltRtV tR# )Otheri   c                &   < V ^8  d   QhRS[ RS[/# r!  r  )r  rt   s   "rh   r  Other.__annotate__  s        rk   c                    VR 8X  d   ^# ^ # )thisrl   r  s   &&rh   r  
Other.meth  s    &=rk   c                &   < V ^8  d   Qh/ S[ ;R&   # r  rL  )r  rt   s   "rh   r  r     s     
M rk   rl   N)	rm   rn   ro   rp   r  r  r  rq   rr   rs   s   @rh   r  r     s     D   rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )NTi  c                2   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   # rj  rL  )r  rt   s   "rh   r  NT.__annotate__  rl  rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )HasCallProtocoli  c                :   < V ^8  d   Qh/ S[ P                  ;R&   # )r  r  )rc   r#   )r  rt   s   "rh   r  HasCallProtocol.__annotate__  s     oo rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  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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. t0R/ t1R0 t2R1 t3R2 t4R3 t5R4 t6R5 t7R6 t8R7 t9R8 t:R9 t;R: t<R; t=R< t>R= t?R> t@R? tAR@ tBRA tCRB tDRC tERD tFRE tGRF tHRG tIRH tJRI tKRJ tLRK tMRL tNRM tORN tPRO tQRP tRRQ tSRR tTRS tURT tVRUtWV tXRV# )WProtocolTestsi  c                f   \          ! R  R\        4      4       p ! R R4      p ! R R4      pR pV P                  W14       V P                  V! 4       V4       V P	                  W!4       V P                  V! 4       V4       V P	                  \        P                  V4       V P                  WA4       R# )c                   &   a  ] tR tRt o R tRtV tR# ),ProtocolTests.test_basic_protocol.<locals>.Pi  c                    R # rb   rl   r   s   &rh   r  1ProtocolTests.test_basic_protocol.<locals>.P.meth      rk   rl   Nrm   rn   ro   rp   r  rq   rr   rs   s   @rh   rb  r          rk   rb  c                       ] tR tRtRtR# ),ProtocolTests.test_basic_protocol.<locals>.Ci  rl   Nr   rl   rk   rh   r  r        rk   r  c                   &   a  ] tR tRt o R tRtV tR# ),ProtocolTests.test_basic_protocol.<locals>.Di  c                    R # rb   rl   r   s   &rh   r  1ProtocolTests.test_basic_protocol.<locals>.D.meth  r  rk   rl   Nr  rs   s   @rh   r  r          rk   r  c                      R # rb   rl   rl   rk   rh   rg   ,ProtocolTests.test_basic_protocol.<locals>.f  r  rk   N)r+   r(   r   r   r   r   r  r  )rf   rb  r  r  rg   s   &    rh   test_basic_protocol!ProtocolTests.test_basic_protocol  s    		 	 
	 		 		 	a#ac1%  &  a(  !3!3Q7  &rk   c                    V P                  \        R 4      ;_uu_ 4        \        R ! 4       4       pRRR4       R#   + '       g   i     R# ; i)z:@runtime_checkable can be only applied to protocol classesc                  0   a R 5;p 3o ! V3R lRS5
q4      # )r   c                      < ] tR tRt Z tRtR# )FProtocolTests.test_runtime_checkable_generic_non_protocol.<locals>.Fooi-  rl   NrW  rY  s   rh   r   r  -  s     rk   r   rl   r[  s     @rh   <generic parameters of Foo>^ProtocolTests.test_runtime_checkable_generic_non_protocol.<locals>.<generic parameters of Foo>-  s    rk   N)r
  r   r+   rf   r   s   & rh   +test_runtime_checkable_generic_non_protocol9ProtocolTests.test_runtime_checkable_generic_non_protocol'  s@    ##H
 
  
 
 
 
	   ;A	c                    \         R  ! 4       4       p ! R R4      pV P                  W!4        ! R R4      pV P                  W14       R# )c                  @   aa R 5;o3o ! VV3R lRS5
p \         V 4      # )r   c                   <   <a  ] tR tRt Zt o VV 3R lR ltRtV tR# )9ProtocolTests.test_runtime_checkable_generic.<locals>.Fooi1  c                    < V ^8  d   QhRSZ/# r`  rl   )r  r   rt   s   "rh   r  FProtocolTests.test_runtime_checkable_generic.<locals>.Foo.__annotate__3      $$a$rk   c                    R # rb   rl   r   s   &rh   r  >ProtocolTests.test_runtime_checkable_generic.<locals>.Foo.meth3      rk   rl   Nrm   rn   ro   rp   rX  r  rq   rr   rt   rZ  r   s   @rh   r   r  1  s     $$rk   r   r(   r\  rZ  r   s    @@rh   r  QProtocolTests.test_runtime_checkable_generic.<locals>.<generic parameters of Foo>1  s     	% 	%X 	%rk   c                   2   a  ] tR tRt o V 3R lR ltRtV tR# ):ProtocolTests.test_runtime_checkable_generic.<locals>.Impli5  c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  GProtocolTests.test_runtime_checkable_generic.<locals>.Impl.__annotate__6  s    &&c&rk   c                    R # rb   rl   r   s   &rh   r  ?ProtocolTests.test_runtime_checkable_generic.<locals>.Impl.meth6  re  rk   rl   Nr  rs   s   @rh   Implr  5  rg  rk   r  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )=ProtocolTests.test_runtime_checkable_generic.<locals>.NotImpli:  c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  JProtocolTests.test_runtime_checkable_generic.<locals>.NotImpl.__annotate__;  s    (((rk   c                    R # rb   rl   r   s   &rh   methodDProtocolTests.test_runtime_checkable_generic.<locals>.NotImpl.method;  rn  rk   rl   N)rm   rn   ro   rp   r  rq   rr   rs   s   @rh   NotImplr  :  rp  rk   r  N)r+   r   r   )rf   r   r  r  s   &   rh   test_runtime_checkable_generic,ProtocolTests.test_runtime_checkable_generic0  sH    		% 
	%	' 	' 	d(	) 	) 	  .rk   c                    \          ! R  R\        4      4       pR ! 4       pR ! 4       pV P                  V! ^4      V4       V P                  V! R4      V4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )IProtocolTests.test_pep695_generics_can_be_runtime_checkable.<locals>.HasXi@  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  VProtocolTests.test_pep695_generics_can_be_runtime_checkable.<locals>.HasX.__annotate__@       F rk   rl   Nrm  rs   s   @rh   HasXr  @  rn  rk   r  c                  4   aa R 5;o3o ! VV3R lRS5
q 4      # )r   c                   <   <a  ] tR tRt Zt o R tVV 3R ltRtV tR# )HProtocolTests.test_pep695_generics_can_be_runtime_checkable.<locals>.BariD  c                    Wn         R # rb   r   r   s   &&rh   r   QProtocolTests.test_pep695_generics_can_be_runtime_checkable.<locals>.Bar.__init__F  r   rk   c                &   < V ^8  d   Qh/ SZ;R&   # rB  rl   )r  r   rt   s   "rh   r  UProtocolTests.test_pep695_generics_can_be_runtime_checkable.<locals>.Bar.__annotate__D       D rk   r   N	rm   rn   ro   rp   rX  r   r  rq   rr   r  s   @rh   r   r  D  s       rk   r   rl   r  s    @@rh   <generic parameters of Bar>`ProtocolTests.test_pep695_generics_can_be_runtime_checkable.<locals>.<generic parameters of Bar>D  s    ! 	 	 	rk   c                  0   a R 5;p 3o ! V3R lRS5
q4      # )r   c                   :   <a  ] tR tRt Zt o R tV 3R ltRtV tR# )MProtocolTests.test_pep695_generics_can_be_runtime_checkable.<locals>.CapybaraiI  c                    Wn         R # rb   r   )rf   r   s   &&rh   r   VProtocolTests.test_pep695_generics_can_be_runtime_checkable.<locals>.Capybara.__init__K  r   rk   c                &   < V ^8  d   Qh/ S[ ;R&   # r  r\  )r  rt   s   "rh   r  ZProtocolTests.test_pep695_generics_can_be_runtime_checkable.<locals>.Capybara.__annotate__I       F rk   r   Nr  rt   rZ  s   @rh   Capybarar  I  s       rk   r  rl   r[  s     @rh    <generic parameters of Capybara>eProtocolTests.test_pep695_generics_can_be_runtime_checkable.<locals>.<generic parameters of Capybara>I  s    q 	 	 	rk   rM  Nr+   r(   r   r   )rf   r  r   r  s   &   rh   -test_pep695_generics_can_be_runtime_checkable;ProtocolTests.test_pep695_generics_can_be_runtime_checkable?  sO    		8 	 
		
	
 	c!fd+  #5rk   c                   \          ! R  R\        4      4       p ! R R4      pR p\        \        \        V\
        P                  3 F  pV P                  WA4       K  	  \        4       ^R\        V3 F  pV P                  WA4       K  	  R# )c                       ] tR tRtRtR# )FProtocolTests.test_everything_implements_empty_protocol.<locals>.EmptyiR  rl   Nr   rl   rk   rh   Emptyr  R      rk   r  c                       ] tR tRtRtR# )BProtocolTests.test_everything_implements_empty_protocol.<locals>.CiV  rl   Nr   rl   rk   rh   r  r  V  rw  rk   r  c                      R # rb   rl   rl   rk   rh   rg   BProtocolTests.test_everything_implements_empty_protocol.<locals>.fY  r  rk   Nrl   )
r+   r(   r  r   rz  r  r  r   rc   r   )rf   r  r  rg   things   &    rh   )test_everything_implements_empty_protocol7ProtocolTests.test_everything_implements_empty_protocolQ  s{    		H 	 
		 		 dE1e.@.@AE!!%/ Bh2vq1E!!%/ 2rk   c                8    R  pV P                  V\        4       R# )c                      R # rb   rl   rl   rk   rh   rg   :ProtocolTests.test_function_implements_protocol.<locals>.fb  r  rk   N)r   r  re   s   & rh   !test_function_implements_protocol/ProtocolTests.test_function_implements_protocola  s    	 	a1rk   c           	     v    ! R  R4      p ! R R\         4      pV P                  \        4      ;_uu_ 4         ! R RV\         4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\         V4      pRRR4       V P                  \        4      ;_uu_ 4         ! R	 R
W!\         4      pRRR4        ! R RW!4      p ! R RW4      pV P                  V! 4       V4       V P                  V! 4       V4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L|; i)c                       ] tR tRtRtR# )9ProtocolTests.test_no_inheritance_from_nominal.<locals>.Cih  rl   Nr   rl   rk   rh   r  r  h  r  rk   r  c                       ] tR tRtRtR# ):ProtocolTests.test_no_inheritance_from_nominal.<locals>.BPij  rl   Nr   rl   rk   rh   BPr  j  s    Drk   r  c                       ] tR tRtRtR# )9ProtocolTests.test_no_inheritance_from_nominal.<locals>.Pim  rl   Nr   rl   rk   rh   rb  r  m  r  rk   rb  Nc                       ] tR tRtRtR# )9ProtocolTests.test_no_inheritance_from_nominal.<locals>.Qip  rl   Nr   rl   rk   rh   Qr  p  r  rk   r   c                       ] tR tRtRtR# )9ProtocolTests.test_no_inheritance_from_nominal.<locals>.Ris  rl   Nr   rl   rk   rh   Rr"  s  r  rk   r#  c                       ] tR tRtRtR# )9ProtocolTests.test_no_inheritance_from_nominal.<locals>.Div  rl   Nr   rl   rk   rh   r  r%  v  r   rk   r  c                       ] tR tRtRtR# )9ProtocolTests.test_no_inheritance_from_nominal.<locals>.Eix  rl   Nr   rl   rk   rh   r  r'  x  r   rk   r  )r(   r   r   r   )rf   r  r  rb  r   r#  r  r  s   &       rh    test_no_inheritance_from_nominal.ProtocolTests.test_no_inheritance_from_nominalg  s      y))Ax  * y))Ha  * y))B8  * 	  a(  a( *) *) *)s#   D-D#D(D	D%	(D8	c                p    ! R  R\         \        4      pV P                  \        P                  ! V4      R04        ! R R\         \
        \        ,          \        4      pV P                  \        P                  ! V4      R04       R ! 4       pV P                  \        P                  ! V4      R04       R# )	c                   ,   a  ] tR tRt o V 3R ltRtV tR# )5ProtocolTests.test_inheritance_from_object.<locals>.Pi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  BProtocolTests.test_inheritance_from_object.<locals>.P.__annotate__  r  rk   rl   Nrm  rs   s   @rh   rb  r,    rn  rk   rb  r   c                   ,   a  ] tR tRt o V 3R ltRtV tR# )>ProtocolTests.test_inheritance_from_object.<locals>.OldGenerici  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r  )r  rt   s   "rh   r  KProtocolTests.test_inheritance_from_object.<locals>.OldGeneric.__annotate__  r  rk   rl   Nrm  rs   s   @rh   
OldGenericr0    rn  rk   r3  r   c                  J   aa R 5;o3o ! VV3R lRS5
p \         \        V 4      # )r   c                   6   <a  ] tR tRt Zt o VV 3R ltRtV tR# )>ProtocolTests.test_inheritance_from_object.<locals>.NewGenerici  c                &   < V ^8  d   Qh/ SZ;R&   # r  r  rl   )r  r   rt   s   "rh   r  KProtocolTests.test_inheritance_from_object.<locals>.NewGeneric.__annotate__  r  rk   rl   Nrm   rn   ro   rp   rX  r  rq   rr   r  s   @rh   
NewGenericr6    	       rk   r;  )r(   r  r  s    @@rh   "<generic parameters of NewGeneric>VProtocolTests.test_inheritance_from_object.<locals>.<generic parameters of NewGeneric>  s     	 	Hf 	rk   r  N)r(   r  r   rc   r/   r$   r   )rf   rb  r3  r;  s   &   rh   test_inheritance_from_object*ProtocolTests.test_inheritance_from_object}  s    	& 	 	44Q7#?	71:v 	 	44Z@3%H	 	44Z@3%Hrk   c                T    ! R  R\         4      pV P                  \        4      ;_uu_ 4        V! 4        RRR4        ! R RV4      pV P                  V! 4       V4       V P                  \        4      ;_uu_ 4        V! ^*4       RRR4       \	        R4      p ! R R\         V,          4      pV P                  \        4      ;_uu_ 4        V! 4        RRR4       V P                  \        4      ;_uu_ 4        V\
        ,          ! 4        RRR4       V P                  \        4      ;_uu_ 4        WC,          ! 4        RRR4        ! R R	WC,          4      pV P                  V\
        ,          ! 4       V4       V P                  \        4      ;_uu_ 4        V\
        ,          ! ^*4       RRR4       R#   + '       g   i     EL; i  + '       g   i     ELL; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)
c                       ] tR tRtRtR# ).ProtocolTests.test_no_instantiation.<locals>.Pi  rl   Nr   rl   rk   rh   rb  rC    s    4rk   rb  Nc                       ] tR tRtRtR# ).ProtocolTests.test_no_instantiation.<locals>.Ci  rl   Nr   rl   rk   rh   r  rE        Drk   r  r   c                       ] tR tRtRtR# )/ProtocolTests.test_no_instantiation.<locals>.PGi  rl   Nr   rl   rk   rh   PGrH    r3  rk   rI  c                       ] tR tRtRtR# )/ProtocolTests.test_no_instantiation.<locals>.CGi  rl   Nr   rl   rk   rh   CGrK    r   rk   rL  )r(   r   r   r   r   r   )rf   rb  r  r   rI  rL  s   &     rh   test_no_instantiation#ProtocolTests.test_no_instantiation  sP   y))C * 	ac1%y))bE * CL#!#y))D *y))sGI *y))EG * 	bgi,y))sGBK *)/ *)) *)) *)))))) *))sG   F4<	GG8G00HH4G	G	G-	0H 	H	H'	c                     ! R  R\         4      p ! R R4      pV! 4       pVP                  V^4       V P                  VP                  ^4       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# )LProtocolTests.test_protocol_defining_init_does_not_get_overridden.<locals>.Pi  c                $   < V ^8  d   QhRS[ RR/# r  r   r#  NrL  )r  rt   s   "rh   r  YProtocolTests.test_protocol_defining_init_does_not_get_overridden.<locals>.P.__annotate__        # $ rk   c                    Wn         R # rb   r   r   s   &&rh   r   UProtocolTests.test_protocol_defining_init_does_not_get_overridden.<locals>.P.__init__  r   rk   c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  rT    r  rk   r   Nrm   rn   ro   rp   r   r  rq   rr   rs   s   @rh   rb  rQ            rk   rb  c                       ] tR tRtRtR# )LProtocolTests.test_protocol_defining_init_does_not_get_overridden.<locals>.Ci  rl   Nr   rl   rk   rh   r  r\    r  rk   r  N)r(   r   r   r   rf   rb  r  r7  s   &   rh   3test_protocol_defining_init_does_not_get_overriddenAProtocolTests.test_protocol_defining_init_does_not_get_overridden  s>    	 	 	C	

1aa rk   c                     ! R  R\         4      p ! R RV4      pV! ^4      pV P                  W24       V P                  VP                  ^4       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# )JProtocolTests.test_concrete_class_inheriting_init_from_protocol.<locals>.Pi  c                $   < V ^8  d   QhRS[ RR/# rS  rL  )r  rt   s   "rh   r  WProtocolTests.test_concrete_class_inheriting_init_from_protocol.<locals>.P.__annotate__  rU  rk   c                    Wn         R # rb   r   r   s   &&rh   r   SProtocolTests.test_concrete_class_inheriting_init_from_protocol.<locals>.P.__init__  r   rk   c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  rd    r  rk   r   NrY  rs   s   @rh   rb  rb    rZ  rk   rb  c                       ] tR tRtRtR# )JProtocolTests.test_concrete_class_inheriting_init_from_protocol.<locals>.Ci  rl   Nr   rl   rk   rh   r  ri    rF  rk   r  N)r(   r   r   r   r]  s   &   rh   1test_concrete_class_inheriting_init_from_protocol?ProtocolTests.test_concrete_class_inheriting_init_from_protocol  sC    	 	
 	aDa#a rk   c                   \          ! R  R\        4      4       p ! R RV4      p ! R RV4      pV P                  \        4      ;_uu_ 4        V! 4        RRR4       V P	                  V! 4       V4       R#   + '       g   i     L); i)c                   P   a  ] tR tRt o ]P
                  V 3R lR l4       tRtV tR# )9ProtocolTests.test_cannot_instantiate_abstract.<locals>.Pi  c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  FProtocolTests.test_cannot_instantiate_abstract.<locals>.P.__annotate__  s     * *s *rk   c                    \         hrb   )NotImplementedErrorr   s   &rh   ameth?ProtocolTests.test_cannot_instantiate_abstract.<locals>.P.ameth  s    ))rk   rl   N)	rm   rn   ro   rp   r  abstractmethodrs  rq   rr   rs   s   @rh   rb  rn    s     *  *rk   rb  c                       ] tR tRtRtR# )9ProtocolTests.test_cannot_instantiate_abstract.<locals>.Bi  rl   Nr   rl   rk   rh   r	  rw    rw  rk   r	  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )9ProtocolTests.test_cannot_instantiate_abstract.<locals>.Ci  c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  FProtocolTests.test_cannot_instantiate_abstract.<locals>.C.__annotate__  s      s rk   c                    ^# )   rl   r   s   &rh   rs  ?ProtocolTests.test_cannot_instantiate_abstract.<locals>.C.ameth      rk   rl   N)rm   rn   ro   rp   rs  rq   rr   rs   s   @rh   r  ry          rk   r  N)r+   r(   r   r   r   )rf   rb  r	  r  s   &   rh    test_cannot_instantiate_abstract.ProtocolTests.test_cannot_instantiate_abstract  sk    		* 	* 
	*
	 		 	 y))C *ac1% *)s   A55B	c                    ! R  R\         4      p\         ! R RV\         4      4       p ! R R4      p ! R R4      p ! R R	4      pV P                  V! 4       V4       V P                  V! 4       V4       V P                  WB4       V P                  WR4       V P	                  V! 4       V4       V P                  W24       R
# )c                   &   a  ] tR tRt o R tRtV tR# )5ProtocolTests.test_subprotocols_extending.<locals>.P1i  c                    R # rb   rl   r   s   &rh   meth1;ProtocolTests.test_subprotocols_extending.<locals>.P1.meth1  r  rk   rl   Nrm   rn   ro   rp   r  rq   rr   rs   s   @rh   P1r    r  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )5ProtocolTests.test_subprotocols_extending.<locals>.P2i  c                    R # rb   rl   r   s   &rh   meth2;ProtocolTests.test_subprotocols_extending.<locals>.P2.meth2  r  rk   rl   Nrm   rn   ro   rp   r  rq   rr   rs   s   @rh   r  r    r  rk   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )4ProtocolTests.test_subprotocols_extending.<locals>.Ci  c                    R # rb   rl   r   s   &rh   r  :ProtocolTests.test_subprotocols_extending.<locals>.C.meth1  r  rk   c                    R # rb   rl   r   s   &rh   r  :ProtocolTests.test_subprotocols_extending.<locals>.C.meth2  r  rk   rl   Nrm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r          rk   r  c                   &   a  ] tR tRt o R tRtV tR# )5ProtocolTests.test_subprotocols_extending.<locals>.C1i  c                    R # rb   rl   r   s   &rh   r  ;ProtocolTests.test_subprotocols_extending.<locals>.C1.meth1  r  rk   rl   Nr  rs   s   @rh   r  r    r  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )5ProtocolTests.test_subprotocols_extending.<locals>.C2i  c                    R # rb   rl   r   s   &rh   r  ;ProtocolTests.test_subprotocols_extending.<locals>.C2.meth2  r  rk   rl   Nr  rs   s   @rh   r  r    r  rk   r  Nr(   r+   r   r   r   r   )rf   r  r  r  r  r  s   &     rh   test_subprotocols_extending)ProtocolTests.test_subprotocols_extending  s    	 	 
	X 	 
		 		 		 	 	  r*  r*  (  (ac2&a$rk   c                    ! R  R\         4      p ! R R\         4      p\         ! R RW\         4      4       p ! R R4      p ! R R	4      p ! R
 R4      pV P                  V! 4       V4       V P                  V! 4       V4       V P                  WS4       V P                  Wc4       V P	                  V! 4       V4       V P                  WC4       R# )c                   &   a  ] tR tRt o R tRtV tR# )3ProtocolTests.test_subprotocols_merging.<locals>.P1i  c                    R # rb   rl   r   s   &rh   r  9ProtocolTests.test_subprotocols_merging.<locals>.P1.meth1  r  rk   rl   Nr  rs   s   @rh   r  r    r  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )3ProtocolTests.test_subprotocols_merging.<locals>.P2i  c                    R # rb   rl   r   s   &rh   r  9ProtocolTests.test_subprotocols_merging.<locals>.P2.meth2  r  rk   rl   Nr  rs   s   @rh   r  r    r  rk   r  c                       ] tR tRtRtR# )2ProtocolTests.test_subprotocols_merging.<locals>.Pi   rl   Nr   rl   rk   rh   rb  r     r	  rk   rb  c                   ,   a  ] tR tRt o R tR tRtV tR# )2ProtocolTests.test_subprotocols_merging.<locals>.Ci  c                    R # rb   rl   r   s   &rh   r  8ProtocolTests.test_subprotocols_merging.<locals>.C.meth1  r  rk   c                    R # rb   rl   r   s   &rh   r  8ProtocolTests.test_subprotocols_merging.<locals>.C.meth2  r  rk   rl   Nr  rs   s   @rh   r  r    r  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )3ProtocolTests.test_subprotocols_merging.<locals>.C1i  c                    R # rb   rl   r   s   &rh   r  9ProtocolTests.test_subprotocols_merging.<locals>.C1.meth1  r  rk   rl   Nr  rs   s   @rh   r  r    r  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )3ProtocolTests.test_subprotocols_merging.<locals>.C2i  c                    R # rb   rl   r   s   &rh   r  9ProtocolTests.test_subprotocols_merging.<locals>.C2.meth2  r  rk   rl   Nr  rs   s   @rh   r  r    r  rk   r  Nr  )rf   r  r  rb  r  r  r  s   &      rh   test_subprotocols_merging'ProtocolTests.test_subprotocols_merging  s    	 		 	 
	 	 
		 		 		 	 	  q)  q)  '  'ac1%a#rk   c                   \        R 4      p\         ! R R\        4      4       p\         ! R R\        V,          4      4       p ! R R\        4      p ! R R\        V,          4      p ! R	 R
4      pV P                  Wb4       V P                  Wc4       V P                  WC4       RpV P	                  \
        V4      ;_uu_ 4        \        WcV,          4       RRR4       V P	                  \
        V4      ;_uu_ 4        \        WcV,          4       RRR4       RpV P	                  \
        V4      ;_uu_ 4        \        Wd4       RRR4       V P	                  \
        V4      ;_uu_ 4        \        We4       RRR4       V P	                  \
        V4      ;_uu_ 4        \        W#V,          4       RRR4       V P	                  \
        V4      ;_uu_ 4        \        W3\        ,          4       RRR4       Rp	V P	                  \
        V	4      ;_uu_ 4        \        ^V4       RRR4       V P	                  \
        V	4      ;_uu_ 4        \        ^V4       RRR4       V P	                  \
        V	4      ;_uu_ 4        \        ^V4       RRR4       V P	                  \
        V	4      ;_uu_ 4        \        ^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Ln; i  + '       g   i     ELE; i  + '       g   i     EL$; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     R# ; i)r   c                   &   a  ] tR tRt o R tRtV tR# )2ProtocolTests.test_protocols_issubclass.<locals>.Pi  c                    R # rb   rl   r   s   &rh   r   4ProtocolTests.test_protocols_issubclass.<locals>.P.x      rk   rl   Nrm   rn   ro   rp   r   rq   rr   rs   s   @rh   rb  r         rk   rb  c                   &   a  ] tR tRt o R tRtV tR# )3ProtocolTests.test_protocols_issubclass.<locals>.PGi!  c                    R # rb   rl   r   s   &rh   r   5ProtocolTests.test_protocols_issubclass.<locals>.PG.x#  r  rk   rl   Nr  rs   s   @rh   rI  r  !  r  rk   rI  c                   &   a  ] tR tRt o R tRtV tR# )5ProtocolTests.test_protocols_issubclass.<locals>.BadPi%  c                    R # rb   rl   r   s   &rh   r   7ProtocolTests.test_protocols_issubclass.<locals>.BadP.x&  r  rk   rl   Nr  rs   s   @rh   BadPr  %       rk   r  c                   &   a  ] tR tRt o R tRtV tR# )6ProtocolTests.test_protocols_issubclass.<locals>.BadPGi(  c                    R # rb   rl   r   s   &rh   r   8ProtocolTests.test_protocols_issubclass.<locals>.BadPG.x)  r  rk   rl   Nr  rs   s   @rh   BadPGr  (  r  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )2ProtocolTests.test_protocols_issubclass.<locals>.Ci+  c                    R # rb   rl   r   s   &rh   r   4ProtocolTests.test_protocols_issubclass.<locals>.C.x,  r  rk   rl   Nr  rs   s   @rh   r  r  +  r  rk   r  BSubscripted generics cannot be used with class and instance checksNLInstance and class checks can only be used with @runtime_checkable protocols$issubclass\(\) arg 1 must be a class)r   r+   r(   r   r
  r   r   r   )
rf   r   rb  rI  r  r  r  no_subscripted_generics only_runtime_checkable_protocolsonly_classes_alloweds
   &         rh   test_protocols_issubclass'ProtocolTests.test_protocols_issubclass  s   CL		 	 
	 
	! 	 
		8 		HQK 		 	 	a#a$d' Q 	  ##I/FGGqQ%  H##I/FGGqQ%  H+ 	)
 ##I/OPPq Q##I/OPPq  Q ##I/FGGqQ%  H##I/FGGrc7# H  G##I/CDDq! E##I/CDDq" E##I/CDDq$ E##I/CDDq%  ED9 HGGGGG QPPPPP HGGGGG
 EDDDDDDDDDDsx   K>K9K-+LLL)L=M;M%.M8K	K*	-K>	L	L&	)L:	=M	M"	%M5	8N		c                    \          ! R  R\        4      4       p\          ! R RV\        4      4       p ! R R4      pV P                  V! 4       V4       V P                  V! 4       V4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )^ProtocolTests.test_isinstance_against_superproto_doesnt_affect_subproto_instance.<locals>.BaseiV  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  kProtocolTests.test_isinstance_against_superproto_doesnt_affect_subproto_instance.<locals>.Base.__annotate__V  r  rk   rl   Nrm  rs   s   @rh   Baser  V  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )_ProtocolTests.test_isinstance_against_superproto_doesnt_affect_subproto_instance.<locals>.ChildiZ  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r\  )r  rt   s   "rh   r  lProtocolTests.test_isinstance_against_superproto_doesnt_affect_subproto_instance.<locals>.Child.__annotate__Z  r  rk   rl   Nrm  rs   s   @rh   Childr  Z  rn  rk   r  c                       ] tR tRt^+tRtR# )bProtocolTests.test_isinstance_against_superproto_doesnt_affect_subproto_instance.<locals>.Capybarai^  rl   Nrm   rn   ro   rp   r   rq   rl   rk   rh   r  r  ^      Ark   r  Nr  )rf   r  r  r  s   &   rh   Btest_isinstance_against_superproto_doesnt_affect_subproto_instancePProtocolTests.test_isinstance_against_superproto_doesnt_affect_subproto_instanceU  sh    		8 	 
	 
	D( 	 
		 	 	hj$/  U3rk   c                   \          ! R  R\        4      4       p ! R R\        4      p ! R R\        4      p ! R R\        4      p ! R R	\        4      p ! R
 R\        4      p ! R R\        4      pW#VWVV3 FA  pV P                  VP                  R7      ;_uu_ 4        V P	                  W4       RRR4       KC  	   ! R R\        4      p	 ! R R\        4      p
V P                  W4       V P                  W4        ! R R4      p ! R R4      p ! R R4      p ! R R4      pV P                  W4       V P	                  W4       V P	                  W4       V P	                  W4       R#   + '       g   i     EK  ; i)c                   &   a  ] tR tRt o R tRtV tR# )ZProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.CallableMembersProtoie  c                    R # rb   rl   r   s   &rh   r  _ProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.CallableMembersProto.methg      Crk   rl   Nr  rs   s   @rh   CallableMembersProtor  e       rk   r  c                   &   a  ] tR tRt o R tRtV tR# )TProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.IdenticalProtoim  c                    R # rb   rl   r   s   &rh   r  YProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.IdenticalProto.methn  r  rk   rl   Nr  rs   s   @rh   IdenticalProtor  m  s     rk   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )SProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.SupersetProtoip  c                    R # rb   rl   r   s   &rh   r  XProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.SupersetProto.methq  r  rk   c                    R # rb   rl   r   s   &rh   r  YProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.SupersetProto.meth2r      Srk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   SupersetProtor  p  s       rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )]ProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NonCallableMembersProtoit  c                8   < V ^8  d   Qh/ S[ . R3,          ;R&   # r  Nr  r"   )r  rt   s   "rh   r  jProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NonCallableMembersProto.__annotate__t       2t8$$ rk   rl   Nrm  rs   s   @rh   NonCallableMembersProtor	  t  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )eProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NonCallableMembersSupersetProtoiw  c                `   < V ^8  d   Qh/ S[ . R3,          ;R&   S[ S[S[.S[3,          ;R&   # r  Nr  r  r#   r  r   r  )r  rt   s   "rh   r  rProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NonCallableMembersSupersetProto.__annotate__w  2     2t8$$ S#J,-- rk   rl   Nrm  rs   s   @rh   NonCallableMembersSupersetProtor  w  rn  rk   r  c                   2   a  ] tR tRt o R tV 3R ltRtV tR# )XProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.MixedMembersProto1i{  c                    R # rb   rl   r   s   &rh   r  ^ProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.MixedMembersProto1.meth2}  r  rk   c                8   < V ^8  d   Qh/ S[ . R3,          ;R&   # r  r"   )r  rt   s   "rh   r  eProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.MixedMembersProto1.__annotate__{  r  rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   MixedMembersProto1r  {          rk   r  c                   2   a  ] tR tRt o R tV 3R ltRtV tR# )XProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.MixedMembersProto2i  c                    R # rb   rl   r   s   &rh   r  ]ProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.MixedMembersProto2.meth  r  rk   c                B   < V ^8  d   Qh/ S[ S[S[.S[3,          ;R&   # )r  r  r  )r  rt   s   "rh   r  eProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.MixedMembersProto2.__annotate__  s     S#J,-- rk   rl   Nr  rs   s   @rh   MixedMembersProto2r     s       rk   r%  ry   Nc                       ] tR tRtRtR# )SProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.EmptyProtocoli  rl   Nr   rl   rk   rh   EmptyProtocolr'        srk   r(  c                   &   a  ] tR tRt o R tRtV tR# )WProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.UnrelatedProtocoli  c                    R # rb   rl   r   s   &rh   wut[ProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.UnrelatedProtocol.wut      3rk   rl   N)rm   rn   ro   rp   r-  rq   rr   rs   s   @rh   UnrelatedProtocolr+    s     rk   r0  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )^ProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.AnnotatedButNotAProtocoli  c                8   < V ^8  d   Qh/ S[ . R3,          ;R&   # r  r"   )r  rt   s   "rh   r  kProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.AnnotatedButNotAProtocol.__annotate__  r  rk   rl   Nrm  rs   s   @rh   AnnotatedButNotAProtocolr2    rn  rk   r5  c                   &   a  ] tR tRt o R tRtV tR# )gProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NotAProtocolButAnImplicitSubclassi  c                    R # rb   rl   r   s   &rh   r  lProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NotAProtocolButAnImplicitSubclass.meth      Drk   rl   Nr  rs   s   @rh   !NotAProtocolButAnImplicitSubclassr7           rk   r;  c                   2   a  ] tR tRt o R tV 3R ltRtV tR# )hProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NotAProtocolButAnImplicitSubclass2i  c                    R # rb   rl   r   s   &rh   r  mProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NotAProtocolButAnImplicitSubclass2.meth  r:  rk   c                8   < V ^8  d   Qh/ S[ . R3,          ;R&   # r  r"   )r  rt   s   "rh   r  uProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NotAProtocolButAnImplicitSubclass2.__annotate__  r  rk   rl   Nr  rs   s   @rh   "NotAProtocolButAnImplicitSubclass2r>    r  rk   rC  c                   8   a  ] tR tRt o R tR tV 3R ltRtV tR# )hProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NotAProtocolButAnImplicitSubclass3i  c                    R # rb   rl   r   s   &rh   r  mProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NotAProtocolButAnImplicitSubclass3.meth  r:  rk   c                    R # )Trl   rf   r   r   s   &&&rh   r  nProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NotAProtocolButAnImplicitSubclass3.meth2  s    $rk   c                `   < V ^8  d   Qh/ S[ . R3,          ;R&   S[ S[S[.S[3,          ;R&   # r  )r#   r   r  r  )r  rt   s   "rh   r  uProtocolTests.test_implicit_issubclass_between_two_protocols.<locals>.NotAProtocolButAnImplicitSubclass3.__annotate__  r  rk   rl   N)	rm   rn   ro   rp   r  r  r  rq   rr   rs   s   @rh   "NotAProtocolButAnImplicitSubclass3rE    s      !.	  rk   rM  )r+   r(   r~   rm   r   r   )rf   r  r  r  r  r  r  r%  rz   r(  r0  r5  r;  rC  rM  s   &              rh   .test_implicit_issubclass_between_two_protocols<ProtocolTests.test_implicit_issubclass_between_two_protocolsd  sR   		 8 	  
	 	 X 	 	!H 	!	%h 	%	.h 	.	! 	!	. 	.
 +B+AS
E ENN33%%eB 43	
 	+H*	 	 	  E  !2I	% 	%	! 	!	! 	!	/ 	/ 	  !9P?V@W@WK 433s    E,,E>c                   V P                  \        P                  4       \        P                  ! 4        V P	                  \
        R 4      ;_uu_ 4         ! R R\        P                  P                  \        4      pRRR4       V P                  . \        P                  P                  4       R#   + '       g   i     L<; i)z/Protocols can only inherit from other protocolsc                       ] tR tRtRtR# )CProtocolTests.test_isinstance_checks_not_at_whim_of_gc.<locals>.Fooi  rl   Nr   rl   rk   rh   r   rR    r  rk   r   N)
addCleanupgcenabledisabler
  r   r  r  r6  r(   r   r  s   & rh   (test_isinstance_checks_not_at_whim_of_gc6ProtocolTests.test_isinstance_checks_not_at_whim_of_gc  sx    		"


##=
 
koo--x 	
 	  [__%<%<=
 
s   )B00C 	c                    ! R  R4      pV P                  \        \        4       V P                  \        4       \        4       V P                  \        \        4       V P                  R\        4       V P                  V\        4       V P                  V! 4       \        4       RpV P                  \        V4      ;_uu_ 4        \        ^\        4       RRR4       V P                  \        V4      ;_uu_ 4        \        R\        4       RRR4       V P                  \        V4      ;_uu_ 4        \        V! 4       \        4       RRR4       \        R4      p\         ! R R\        4      4       p\         ! R R	\        4      4       p\         ! R
 R\        V,          4      4       pWEV3 FF  pV P                  VP                  R7      ;_uu_ 4        V P                  V\        4       RRR4       KH  	  V P                  \        V4       V P                  \        4       V4       V P                  \        \        4       V P                  \        4       \        4       V P                  \        V4       V P                  RV4       V P                  \        \        4       V P                  R\        4       V P                  W4       V P                  V! 4       V4       V P                  V\        4       V P                  V! 4       \        4       R#   + '       g   i     ELG; i  + '       g   i     EL$; i  + '       g   i     EL; i  + '       g   i     EK  ; i)c                   &   a  ] tR tRt o R tRtV tR# )JProtocolTests.test_issubclass_and_isinstance_on_Protocol_itself.<locals>.Ci  c                    R # rb   rl   r   s   &rh   r   LProtocolTests.test_issubclass_and_isinstance_on_Protocol_itself.<locals>.C.x  s    rk   rl   Nr  rs   s   @rh   r  r[    s     rk   r  rk  r  Nr   c                       ] tR tRtRtR# )VProtocolTests.test_issubclass_and_isinstance_on_Protocol_itself.<locals>.EmptyProtocoli  rl   Nr   rl   rk   rh   r(  r_    s    '+rk   r(  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )[ProtocolTests.test_issubclass_and_isinstance_on_Protocol_itself.<locals>.SupportsStartsWithi  c                &   < V ^8  d   QhRS[ RS[/# r  r   r#  r  r  )r  rt   s   "rh   r  hProtocolTests.test_issubclass_and_isinstance_on_Protocol_itself.<locals>.SupportsStartsWith.__annotate__  s    55C5D5rk   c                    R # rb   rl   r   s   &&rh   
startswithfProtocolTests.test_issubclass_and_isinstance_on_Protocol_itself.<locals>.SupportsStartsWith.startswith  s    #rk   rl   Nrm   rn   ro   rp   rg  rq   rr   rs   s   @rh   SupportsStartsWithra    s     55rk   rj  c                   &   a  ] tR tRt o R tRtV tR# )RProtocolTests.test_issubclass_and_isinstance_on_Protocol_itself.<locals>.SupportsXi  c                    R # rb   rl   r   s   &rh   r   TProtocolTests.test_issubclass_and_isinstance_on_Protocol_itself.<locals>.SupportsX.x  r  rk   rl   Nr  rs   s   @rh   	SupportsXrl    r  rk   ro  ry   )r   r  r(   r   r  r
  r   r   r   r+   r~   rm   r   r   )rf   r  r  r   r(  rj  ro  rz   s   &       rh   1test_issubclass_and_isinstance_on_Protocol_itself?ProtocolTests.test_issubclass_and_isinstance_on_Protocol_itself  ss   	 	 	  2  84  h/  1  H-  h/F##I/CDDq(# E##I/CDDuh' E##I/CDDqsH% E CL	+H+ 
+		6 	6 
	6 
	 	 
	 #	AEENN33%%eX6 43 B 	fm4fh6  2  84c#56e%78  h/  1a+ac9-  H-  h/U EDDDDDDDD" 433s0   L;L'2L;ML$	'L8	;M	M!c                F    ! R  R4      p\          ! R R\        4      4       pRpV P                  \        V4      ;_uu_ 4        \	        W4       RRR4       V P                  V! 4       V4       VP                  V4       V P                  \        V4      ;_uu_ 4        \	        W4       RRR4       V P                  V! 4       V4        ! R RV4      pV P                  W4       V P                  V! 4       V4       VP                  V4       V P                  W4       V P                  V! 4       V4       V P                  \        V4      ;_uu_ 4        \	        WB4       RRR4       R#   + '       g   i     EL"; i  + '       g   i     L; i  + '       g   i     R# ; i)c                       ] tR tRt^tRtR# )?ProtocolTests.test_protocols_issubclass_non_callable.<locals>.Ci  rl   Nr  rl   rk   rh   r  rt        Ark   r  c                       ] tR tRt^tRtR# )FProtocolTests.test_protocols_issubclass_non_callable.<locals>.PNonCalli  rl   Nr  rl   rk   rh   PNonCallrw        Ark   rx  <Protocols with non-method members don't support issubclass()Nc                       ] tR tRtRtR# )?ProtocolTests.test_protocols_issubclass_non_callable.<locals>.Di  rl   Nr   rl   rk   rh   r  r|    s    3rk   r  )
r+   r(   r
  r   r   r   registerr   r   r   )rf   r  rx  non_callable_members_illegalr  s   &    rh   &test_protocols_issubclass_non_callable4ProtocolTests.test_protocols_issubclass_non_callable  sL   	 	 
	x 	 
	 K 	% ##I/KLLq# M 	ac8,!##I/KLLq# M 	ac8, 	  &  a(	

1a#ac1%##I/KLLq# ML) MLL ML MLLs$   E(E<F(E9	<F	F 	c                   \          ! R  R\        4      4       p ! R R4      pV P                  V! 4       V4       V P                  \        R4      ;_uu_ 4        \        W!4       RRR4       R#   + '       g   i     R# ; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )RProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance.<locals>.Spami  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  _ProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance.<locals>.Spam.__annotate__  r  rk   rl   Nrm  rs   s   @rh   Spamr    rn  rk   r  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )RProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance.<locals>.Eggsi  c                   < V ^8  d   QhRR/# r  r#  Nrl   )r  rt   s   "rh   r  _ProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance.<locals>.Eggs.__annotate__  s      $ rk   c                    ^*V n         R# r   r   r   s   &rh   r   [ProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance.<locals>.Eggs.__init__  s	    rk   r   Nr   rs   s   @rh   Eggsr    s      rk   r  rz  N)r+   r(   r   r
  r   r   rf   r  r  s   &  rh   6test_no_weird_caching_with_issubclass_after_isinstanceDProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance  ss    		8 	 
		 	 	dfd+ ##J
 
 t"	
 
 
 
   A..A?	c                   \          ! R  R\        4      4       p ! R R4      pV P                  V! 4       V4       V P                  \        R4      ;_uu_ 4        \        W!4       RRR4       R#   + '       g   i     R# ; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )TProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_2.<locals>.Spami0  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  aProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_2.<locals>.Spam.__annotate__0  r  rk   rl   Nrm  rs   s   @rh   r  r  0  rn  rk   r  c                       ] tR tRtRtR# )TProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_2.<locals>.Eggsi4  rl   Nr   rl   rk   rh   r  r  4      Crk   r  rz  Nr+   r(   r   r
  r   r   r  s   &  rh   8test_no_weird_caching_with_issubclass_after_isinstance_2FProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_2/  sn    		8 	 
	 	  . ##J
 
 t"	
 
 
 
r  c                   \          ! R  R\        4      4       p ! R R4      pV P                  V! 4       V4       V P                  \        R4      ;_uu_ 4        \        W!4       RRR4       R#   + '       g   i     R# ; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )TProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_3.<locals>.SpamiD  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  aProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_3.<locals>.Spam.__annotate__D  r  rk   rl   Nrm  rs   s   @rh   r  r  D  rn  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )TProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_3.<locals>.EggsiH  c                *    VR 8X  d   ^*# \        V4      hr   AttributeErrorrf   r  s   &&rh   __getattr__`ProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_3.<locals>.Eggs.__getattr__I  s    3;$T**rk   rl   Nrm   rn   ro   rp   r  rq   rr   rs   s   @rh   r  r  H  s     + +rk   r  rz  Nr  r  s   &  rh   8test_no_weird_caching_with_issubclass_after_isinstance_3FProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_3C  ss    		8 	 
		+ 	+ 	  . ##J
 
 t"	
 
 
 
r  c                    \         R  ! 4       4       pR ! 4       pV P                  V! ^*4      V4       V P                  \        R4      ;_uu_ 4        \	        W!4       RRR4       R#   + '       g   i     R# ; i)c                  @   aa R 5;o3o ! VV3R lRS5
p \         V 4      # )r   c                   6   <a  ] tR tRt Zt o VV 3R ltRtV tR# )YProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_pep695.<locals>.Spami\  c                &   < V ^8  d   Qh/ SZ;R&   # rB  rl   )r  r   rt   s   "rh   r  fProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_pep695.<locals>.Spam.__annotate__\  s     D rk   rl   Nr:  r  s   @rh   r  r  \  r<  rk   r  r  r  s    @@rh   <generic parameters of Spam>qProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_pep695.<locals>.<generic parameters of Spam>\  s     	 	h 	rk   c                  4   aa R 5;o3o ! VV3R lRS5
q 4      # )r   c                   <   <a  ] tR tRt Zt o VV 3R lR ltRtV tR# )YProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_pep695.<locals>.Eggsi`  c                $   < V ^8  d   QhRSZRR/# rS  rl   )r  r   rt   s   "rh   r  fProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_pep695.<locals>.Eggs.__annotate__a  s      !  rk   c                    Wn         R # rb   r   r   s   &&rh   r   bProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_pep695.<locals>.Eggs.__init__a  r   rk   r   N)rm   rn   ro   rp   rX  r   rq   rr   r  s   @rh   r  r  `  s      rk   r  rl   r  s    @@rh   <generic parameters of Eggs>qProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_pep695.<locals>.<generic parameters of Eggs>`  s    1 	 	 	rk   rz  N)r+   r   r
  r   r   r  s   &  rh   =test_no_weird_caching_with_issubclass_after_isinstance_pep695KProtocolTests.test_no_weird_caching_with_issubclass_after_isinstance_pep695[  si    		 
		 	d2h- ##J
 
 t"	
 
 
 
s   A&&A7	c           	       a \        R 4      p\         ! R R\        4      4       p\         ! R R\        V,          4      4       p\         ! R R\        4      4       p\         ! R R\        4      4       p ! R	 R
4      o\         ! V3R lR\        4      4       p ! R R\        4      p ! R R\        V,          4      p ! R R4      p	 ! R R4      p
W3 F^  pW#WEV3 FR  pV P                  VP                  VP                  R7      ;_uu_ 4        V P                  V! 4       V4       RRR4       KT  	  K`  	  RpV P                  \        V4      ;_uu_ 4        \        V	! 4       W1,          4       RRR4       V P                  \        V4      ;_uu_ 4        \        V	! 4       W9,          4       RRR4       RpV P                  \        V4      ;_uu_ 4        \        V	! 4       V4       RRR4       V P                  \        V4      ;_uu_ 4        \        V	! 4       V4       RRR4       R#   + '       g   i     EK^  ; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)r   c                   &   a  ] tR tRt o R tRtV tR# )2ProtocolTests.test_protocols_isinstance.<locals>.Pit  c                    R # rb   rl   r   s   &rh   r  7ProtocolTests.test_protocols_isinstance.<locals>.P.methv  r  rk   rl   Nr  rs   s   @rh   rb  r  t  r  rk   rb  c                   &   a  ] tR tRt o R tRtV tR# )3ProtocolTests.test_protocols_isinstance.<locals>.PGix  c                    R # rb   rl   r   s   &rh   r  8ProtocolTests.test_protocols_isinstance.<locals>.PG.methz  r  rk   rl   Nr  rs   s   @rh   rI  r  x  r  rk   rI  c                   .    ] tR tRt]P
                  tRtR# );ProtocolTests.test_protocols_isinstance.<locals>.WeirdProtoi|  rl   N)rm   rn   ro   rp   r  	maketransr  rq   rl   rk   rh   
WeirdProtor  |  s    ==Drk   r  c                       ] tR tRtR tRtR# )<ProtocolTests.test_protocols_isinstance.<locals>.WeirdProto2i  c                     R # rb   rl   )r   r   s   *,rh   <lambda>EProtocolTests.test_protocols_isinstance.<locals>.WeirdProto2.<lambda>  s    4rk   rl   Nrm   rn   ro   rp   r  rq   rl   rk   rh   WeirdProto2r    s    /Drk   r  c                   &   a  ] tR tRt o R tRtV tR# )?ProtocolTests.test_protocols_isinstance.<locals>.CustomCallablei  c                    R # rb   rl   r   s   &*,rh   r  HProtocolTests.test_protocols_isinstance.<locals>.CustomCallable.__call__  r  rk   rl   Nr  rs   s   @rh   CustomCallabler    r  rk   r  c                   (   < ] tR tRt Z ! 4       tRtR# )=ProtocolTests.test_protocols_isinstance.<locals>.WeirderProtoi  rl   Nr  )r  s   rh   WeirderProtor    s    !#Drk   r  c                   &   a  ] tR tRt o R tRtV tR# )5ProtocolTests.test_protocols_isinstance.<locals>.BadPi  c                    R # rb   rl   r   s   &rh   r  :ProtocolTests.test_protocols_isinstance.<locals>.BadP.meth  r  rk   rl   Nr  rs   s   @rh   r  r    r  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )6ProtocolTests.test_protocols_isinstance.<locals>.BadPGi  c                    R # rb   rl   r   s   &rh   r  ;ProtocolTests.test_protocols_isinstance.<locals>.BadPG.meth  r  rk   rl   Nr  rs   s   @rh   r  r    r  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )2ProtocolTests.test_protocols_isinstance.<locals>.Ci  c                    R # rb   rl   r   s   &rh   r  7ProtocolTests.test_protocols_isinstance.<locals>.C.meth  r  rk   rl   Nr  rs   s   @rh   r  r    r  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )3ProtocolTests.test_protocols_isinstance.<locals>.C2i  c                    R  V n         R# )c                      R # rb   rl   rl   rk   rh   r  NProtocolTests.test_protocols_isinstance.<locals>.C2.__init__.<locals>.<lambda>  s    Drk   Nr  r   s   &rh   r   <ProtocolTests.test_protocols_isinstance.<locals>.C2.__init__  s	    (	rk   r  Nr   rs   s   @rh   r  r         ) )rk   r  )klassrz   Nr  r  )	r   r+   r(   r~   rm   r   r
  r   r   )rf   r   rb  rI  r  r  r  r  r  r  r  r  rz   r  only_runtime_checkable_msgr  s   &              @rh   test_protocols_isinstance'ProtocolTests.test_protocols_isinstanceq  s   CL		 	 
	 
	! 	 
	 
	! 	! 
	! 
	0( 	0 
	0	 	 
	$8 	$ 
	$	8 		HQK 		 		) 	) UE
E\\enn\MM))%'59 NM F 
 #g##I/FGGqsBE" H##I/FGGqsBE" H0 	#
 ##I/IJJqsD! K##I/IJJqsE" KJ# NMM
 HGGG KJJJJs<   H)	H>II$I7)H;>I	I!	$I4	7J	c                  aa  ! R  R4      p ! R R4      o ! V3R lR4      p ! R RV4      p ! R R	V4      p ! R
 R4      p\        R4      o\         ! R R\        4      4       p\         ! R R\        4      4       p\         ! R R\        S,          4      4       p\         ! V3R lR\        S,          4      4       p	\         ! R R\        4      4       p
\         ! V3R lR\        S,          4      4       pWgWW3 F  pWW43 FR  pV P                  VP                  VP                  R7      ;_uu_ 4        V P                  V! 4       V4       RRR4       KT  	  V P                  RVP                  R7      ;_uu_ 4        V P                  V! 4       V4       RRR4       K  	   ! R R\        4      p ! R R\        4      p ! R R \        S,          4      p ! V3R! lR"\        S,          4      pVS,          W,          V	S,          W,          VS,          W,          WVV3
pV Ft  pWW4V3 Fh  pV P                  VP                  VR#7      ;_uu_ 4        V P                  \        4      ;_uu_ 4        \        V! 4       V4       RRR4       RRR4       Kj  	  Kv  	  R#   + '       g   i     EK  ; i  + '       g   i     EK  ; i  + '       g   i     LL; i  + '       g   i     K  ; i)$c                   0   a  ] tR tRt o ]R 4       tRtV tR# )MProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.Ci  c                    ^*# r   rl   r   s   &rh   r  RProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.C.attr      rk   rl   Nrm   rn   ro   rp   propertyr  rq   rr   rs   s   @rh   r  r    s      rk   r  c                   *   a  ] tR tRt o RR ltRtV tR# )\ProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.CustomDescriptori  Nc                    ^*# r  rl   rf   objobjtypes   &&&rh   __get__dProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.CustomDescriptor.__get__  r  rk   rl   rb   rm   rn   ro   rp   r	  rq   rr   rs   s   @rh   CustomDescriptorr    s      rk   r	  c                   (   < ] tR tRt Z ! 4       tRtR# )MProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.Di  rl   Nrm   rn   ro   rp   r  rq   r	  s   rh   r  r		        #%Drk   r  c                       ] tR tRtRtR# )MProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.Ei  rl   Nr   rl   rk   rh   r  r	    r  rk   r  c                       ] tR tRtRtR# )MProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.Fi  rl   Nr   rl   rk   rh   r  r	    r  rk   r  c                       ] tR tRtRtR# )QProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.Emptyi  rl   Nr   rl   rk   rh   r  r	        Srk   r  r   c                   0   a  ] tR tRt o ]R 4       tRtV tR# )MProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.Pi  c                    R # rb   rl   r   s   &rh   r  RProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.P.attr      rk   rl   Nr  rs   s   @rh   rb  r	          rk   rb  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )NProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.P1i  c                &   < V ^8  d   Qh/ S[ ;R&   # r  rL  )r  rt   s   "rh   r  [ProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.P1.__annotate__       I rk   rl   Nrm  rs   s   @rh   r  r	    rn  rk   r  c                   0   a  ] tR tRt o ]R 4       tRtV tR# )NProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.PGi  c                    R # rb   rl   r   s   &rh   r  SProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.PG.attr  r	  rk   rl   Nr  rs   s   @rh   rI  r 	    r	  rk   rI  c                   0   <a  ] tR tRt o VV 3R ltRtV tR# )OProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.PG1i  c                &   < V ^8  d   Qh/ SZ;R&   # r  rl   )r  r   rt   s   "rh   r  \ProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.PG1.__annotate__       G rk   rl   Nrm  rt   r   s   @rh   PG1r$	          rk   r)	  c                   &   a  ] tR tRt o R tRtV tR# )SProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.MethodPi  c                    R # rb   rl   r   s   &rh   r  XProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.MethodP.attr  r  rk   rl   Nrm   rn   ro   rp   r  rq   rr   rs   s   @rh   MethodPr,	    r  rk   r0	  c                   6   <a  ] tR tRt o VV 3R lR ltRtV tR# )TProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.MethodPGi  c                    < V ^8  d   QhRSZ/# r`  rl   )r  r   rt   s   "rh   r  aProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.MethodPG.__annotate__  r  rk   c                    R # rb   rl   r   s   &rh   r  YProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.MethodPG.attr  r  rk   rl   Nr/	  r(	  s   @rh   MethodPGr2	         $$rk   r7	  r  protocol_classNc                   0   a  ] tR tRt o ]R 4       tRtV tR# )PProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.BadPi  c                    R # rb   rl   r   s   &rh   r  UProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.BadP.attr  r	  rk   rl   Nr  rs   s   @rh   r  r<	          rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )QProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.BadP1i  c                &   < V ^8  d   Qh/ S[ ;R&   # r  rL  )r  rt   s   "rh   r  ^ProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.BadP1.__annotate__       I rk   rl   Nrm  rs   s   @rh   BadP1rA	    rn  rk   rE	  c                   0   a  ] tR tRt o ]R 4       tRtV tR# )QProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.BadPGi  c                    R # rb   rl   r   s   &rh   r  VProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.BadPG.attr  r	  rk   rl   Nr  rs   s   @rh   r  rG	    r?	  rk   r  c                   0   <a  ] tR tRt o VV 3R ltRtV tR# )RProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.BadPG1i  c                &   < V ^8  d   Qh/ SZ;R&   # r  rl   )r  r   rt   s   "rh   r  _ProtocolTests.test_protocols_isinstance_properties_and_descriptors.<locals>.BadPG1.__annotate__  s     G rk   rl   Nrm  r(	  s   @rh   BadPG1rK	    r*	  rk   rN	  )r  r	  )
r   r+   r(   r~   rm   r   r   r   r   r   )rf   r  r  r  r  r  rb  r  rI  r)	  r0	  r7	  r:	  r  r  rE	  r  rN	  casesr	  r	  r   s   &                   @@rh   4test_protocols_isinstance_properties_and_descriptorsBProtocolTests.test_protocols_isinstance_properties_and_descriptors  s   	 	
	 		& 	&
 	CL		  	  
	  
	 	 
	 
	 ! 	  
	  
	(1+ 	 
	 
	 h 	  
	  
	%x{ 	% 
	%  Rg?Nq\\..#1#:#: "   ))%'>B	  $ GN<S<STT((.A UT @	 8 	 	H 		 HQK 	 	Xa[ 	 qE25#a&#&(1+KeV

 CqU*\\C\@@**955"57C0 6 A@ + 9   UTT2 65 A@@s<   8J 	J5K	4K
K	 J25K
KK	K.c                    \          ! R  R\        4      4       p ! R R4      p ! R R4      pV P                  V! 4       V4       V P                  V! 4       V4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )NProtocolTests.test_protocols_isinstance_not_fooled_by_custom_dir.<locals>.HasXi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  [ProtocolTests.test_protocols_isinstance_not_fooled_by_custom_dir.<locals>.HasX.__annotate__  r  rk   rl   Nrm  rs   s   @rh   r  rT	    rn  rk   r  c                   *   a  ] tR tRt o ^
tR tRtV tR# )XProtocolTests.test_protocols_isinstance_not_fooled_by_custom_dir.<locals>.CustomDirWithXi  c                    . # rb   rl   r   s   &rh   __dir__`ProtocolTests.test_protocols_isinstance_not_fooled_by_custom_dir.<locals>.CustomDirWithX.__dir__
      	rk   rl   N)rm   rn   ro   rp   r   rZ	  rq   rr   rs   s   @rh   CustomDirWithXrX	    s     A rk   r]	  c                   &   a  ] tR tRt o R tRtV tR# )[ProtocolTests.test_protocols_isinstance_not_fooled_by_custom_dir.<locals>.CustomDirWithoutXi  c                    R .# r   rl   r   s   &rh   rZ	  cProtocolTests.test_protocols_isinstance_not_fooled_by_custom_dir.<locals>.CustomDirWithoutX.__dir__  s	    urk   rl   N)rm   rn   ro   rp   rZ	  rq   rr   rs   s   @rh   CustomDirWithoutXr_	          rk   rb	  Nr  )rf   r  r]	  rb	  s   &   rh   2test_protocols_isinstance_not_fooled_by_custom_dir@ProtocolTests.test_protocols_isinstance_not_fooled_by_custom_dir  sX    		8 	 
		 	
	 	 	n.5  !2!4d;rk   c           	       aa  ! R  R4      p ! R R4      o ! V3R lR4      p ! R RV4      p ! R R	V4      p ! R
 R4      p\        R4      o\         ! R R\        4      4       p\         ! R R\        4      4       p\         ! R R\        S,          4      4       p\         ! V3R lR\        S,          4      4       p	\         ! R R\        4      4       p
\         ! V3R lR\        S,          4      4       pWgWW3 F  pWW43 FR  pV P                  VP                  VP                  R7      ;_uu_ 4        V P                  V! 4       V4       RRR4       KT  	  V P                  RVP                  R7      ;_uu_ 4        V P                  V! 4       V4       RRR4       K  	  R#   + '       g   i     K  ; i  + '       g   i     K  ; i)c                   0   a  ] tR tRt o ]R 4       tRtV tR# )UProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.Ci  c                    \        R 4      h)nor  r   s   &rh   r  ZProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.C.attr  s    $T**rk   rl   Nr  rs   s   @rh   r  rh	    s     + +rk   r  c                   *   a  ] tR tRt o RR ltRtV tR# )dProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.CustomDescriptori  Nc                    \        R 4      hNORuntimeErrorr	  s   &&&rh   r	  lProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.CustomDescriptor.__get__      "4((rk   rl   rb   r	  rs   s   @rh   r	  rm	    s     ) )rk   r	  c                   (   < ] tR tRt Z ! 4       tRtR# )UProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.Di  rl   Nr
	  r	  s   rh   r  rv	    r	  rk   r  c                       ] tR tRtRtR# )UProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.Ei#  rl   Nr   rl   rk   rh   r  rx	  #  r  rk   r  c                       ] tR tRtRtR# )UProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.Fi$  rl   Nr   rl   rk   rh   r  rz	  $  r  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )eProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.WhyWouldYouDoThisi&  c                    \        R 4      h)r-  rq	  )rf   rA  s   &&rh   r  qProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.WhyWouldYouDoThis.__getattr__'  s    "5))rk   rl   Nr  rs   s   @rh   WhyWouldYouDoThisr|	  &  s     * *rk   r	  r   c                   0   a  ] tR tRt o ]R 4       tRtV tR# )UProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.Pi,  c                    R # rb   rl   r   s   &rh   r  ZProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.P.attr.  r	  rk   rl   Nr  rs   s   @rh   rb  r	  ,  r	  rk   rb  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )VProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.P1i1  c                &   < V ^8  d   Qh/ S[ ;R&   # r  rL  )r  rt   s   "rh   r  cProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.P1.__annotate__1  r	  rk   rl   Nrm  rs   s   @rh   r  r	  1  rn  rk   r  c                   0   a  ] tR tRt o ]R 4       tRtV tR# )VProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.PGi5  c                    R # rb   rl   r   s   &rh   r  [ProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.PG.attr7  r	  rk   rl   Nr  rs   s   @rh   rI  r	  5  r	  rk   rI  c                   0   <a  ] tR tRt o VV 3R ltRtV tR# )WProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.PG1i:  c                &   < V ^8  d   Qh/ SZ;R&   # r  rl   )r  r   rt   s   "rh   r  dProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.PG1.__annotate__:  r'	  rk   rl   Nrm  r(	  s   @rh   r)	  r	  :  r*	  rk   r)	  c                   &   a  ] tR tRt o R tRtV tR# )[ProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.MethodPi>  c                    R # rb   rl   r   s   &rh   r  `ProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.MethodP.attr@  r  rk   rl   Nr/	  rs   s   @rh   r0	  r	  >  r  rk   r0	  c                   6   <a  ] tR tRt o VV 3R lR ltRtV tR# )\ProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.MethodPGiB  c                    < V ^8  d   QhRSZ/# r`  rl   )r  r   rt   s   "rh   r  iProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.MethodPG.__annotate__D  r  rk   c                    R # rb   rl   r   s   &rh   r  aProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects.<locals>.MethodPG.attrD  r  rk   rl   Nr/	  r(	  s   @rh   r7	  r	  B  r8	  rk   r7	  r9	  N)r   r+   r(   r~   rm   r   r   )rf   r  r  r  r  r	  rb  r  rI  r)	  r0	  r7	  r:	  r  r	  r   s   &             @@rh   <test_protocols_isinstance_attribute_access_with_side_effectsJProtocolTests.test_protocols_isinstance_attribute_access_with_side_effects  s   	+ 	+
	) 	)	& 	&
 		* 	* CL		  	  
	  
	 	 
	 
	 ! 	  
	  
	(1+ 	 
	 
	 h 	  
	  
	%x{ 	% 
	%  Rg?Nq\\..#1#:#: "   ))%'>B	  $ )-66    (():)<nM	  @    s   8F'	F;'F8;Gc                x    \          ! R  R\        4      4       p ! R R4      pV P                  V! 4       V4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )?ProtocolTests.test_protocols_isinstance___slots__.<locals>.HasXiW  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  LProtocolTests.test_protocols_isinstance___slots__.<locals>.HasX.__annotate__W  r  rk   rl   Nrm  rs   s   @rh   r  r	  W  rn  rk   r  c                       ] tR tRtRtRtR# )MProtocolTests.test_protocols_isinstance___slots__.<locals>.HasNothingButSlotsi[  rl   Nr   rm   rn   ro   rp   	__slots__rq   rl   rk   rh   HasNothingButSlotsr	  [  s    Irk   r	  Nr+   r(   r   )rf   r  r	  s   &  rh   #test_protocols_isinstance___slots__1ProtocolTests.test_protocols_isinstance___slots__T  s=     
	8 	 
		 	 	02D9rk   c                F    ! R  R4      p ! R R4      p ! R R4      p ! R R4      pV P                  V! ^^R4      \        4       V P                  V! ^^4      \        4       V P                  \        4       \        4       V P                  V! ^^4      \        4       V P                  \        4       \        4       V P                  \        4       \        4       V P                  V! ^*4      \        4       V P                  V! 4       \        4       V P                  V! 4       \        4       V P                  V! 4       \        4       V P                  V! 4       \        4       V P                  \        4       \        4       V P                  \        ^^4      \        4       R	# )
c                   &   a  ] tR tRt o R tRtV tR# )<ProtocolTests.test_protocols_isinstance_py36.<locals>.APointia  c                *    Wn         W n        W0n        R # rb   r   r   rs  )rf   r   r   rs  s   &&&&rh   r   EProtocolTests.test_protocols_isinstance_py36.<locals>.APoint.__init__b  s    "
rk   )rs  r   r   Nr   rs   s   @rh   APointr	  a  s     # #rk   r	  c                   *   a  ] tR tRt o RtR tRtV tR# )<ProtocolTests.test_protocols_isinstance_py36.<locals>.BPointig  r	  c                    Wn         W n        R # rb   r   r   rI  s   &&&rh   r   EProtocolTests.test_protocols_isinstance_py36.<locals>.BPoint.__init__j      rk   r	  N)rm   rn   ro   rp   rs  r   rq   rr   rs   s   @rh   BPointr	  g  s     E rk   r	  c                   ,   a  ] tR tRt o R tR tRtV tR# )7ProtocolTests.test_protocols_isinstance_py36.<locals>.Cin  c                    Wn         R # rb   r  r  s   &&rh   r   @ProtocolTests.test_protocols_isinstance_py36.<locals>.C.__init__o       	rk   c                    ^ # r   rl   r  s   &&rh   r  <ProtocolTests.test_protocols_isinstance_py36.<locals>.C.methr      rk   r	  N)rm   rn   ro   rp   r   r  rq   rr   rs   s   @rh   r  r	  n  s     ! rk   r  c                       ] tR tRtRtR# )9ProtocolTests.test_protocols_isinstance_py36.<locals>.Badiu  rl   Nr   rl   rk   rh   Badr	  u  s    4rk   r	  r  N)	r   rp  r   rv  r  r  r  r  r  )rf   r	  r	  r  r	  s   &    rh   test_protocols_isinstance_py36,ProtocolTests.test_protocols_isinstance_py36`  s&   	# 	#	 		 	 	fQ3/7fQlE2  E2fQlH5egu-hj%0aeU+  .  .  1  1  (3bAh1rk   c                    \        R 4      p\         ! R R\        4      4       p\         ! R R\        V,          4      4       p ! R R4      pV P                  V! ^4      V4       V P                  V! ^4      V4       R# )r   c                       ] tR tRt^tRtR# )7ProtocolTests.test_protocols_isinstance_init.<locals>.Pi  rl   Nr  rl   rk   rh   rb  r	    ry  rk   rb  c                       ] tR tRt^tRtR# )8ProtocolTests.test_protocols_isinstance_init.<locals>.PGi  rl   Nr  rl   rk   rh   rI  r	    ry  rk   rI  c                   &   a  ] tR tRt o R tRtV tR# )7ProtocolTests.test_protocols_isinstance_init.<locals>.Ci  c                    Wn         R # rb   r   r   s   &&rh   r   @ProtocolTests.test_protocols_isinstance_init.<locals>.C.__init__  r   rk   r   Nr   rs   s   @rh   r  r	    r   rk   r  N)r   r+   r(   r   )rf   r   rb  rI  r  s   &    rh   test_protocols_isinstance_init,ProtocolTests.test_protocols_isinstance_init  sw    CL		 	 
	 
	! 	 
		 	 	adA&adB'rk   c                    \          ! R  R\        4      4       p ! R R4      pV! 4       pV P                  W14       ^*Vn        V P	                  W14       V=V P                  W14       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )DProtocolTests.test_protocols_isinstance_monkeypatching.<locals>.HasXi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  QProtocolTests.test_protocols_isinstance_monkeypatching.<locals>.HasX.__annotate__  r  rk   rl   Nrm  rs   s   @rh   r  r	    rn  rk   r  c                       ] tR tRtRtR# )CProtocolTests.test_protocols_isinstance_monkeypatching.<locals>.Fooi  rl   Nr   rl   rk   rh   r   r	        3rk   r   N)r+   r(   r   r   r   )rf   r  r   rg   s   &   rh   (test_protocols_isinstance_monkeypatching6ProtocolTests.test_protocols_isinstance_monkeypatching  s_    		8 	 
	 	E  )a&C  )rk   c                    ! R  R\         \        ,          4      p ! R RV\        ,          4      p ! R R4      p ! R R4      pV\        ,          pV P                  V! 4       V4       V P	                  WB4        ! R R	V\        ,          4      p ! R
 RV\        ,          4      pV\
        ,          pV P                  V! 4       V4       V P                  Wr4       R# )c                       ] tR tRtRtR# )=ProtocolTests.test_protocol_checks_after_subscript.<locals>.Pi  rl   Nr   rl   rk   rh   rb  r	    r  rk   rb  c                       ] tR tRtRtR# )=ProtocolTests.test_protocol_checks_after_subscript.<locals>.Ci  rl   Nr   rl   rk   rh   r  r	        trk   r  c                       ] tR tRtRtR# )BProtocolTests.test_protocol_checks_after_subscript.<locals>.Other1i  rl   Nr   rl   rk   rh   Other1r	        drk   r	  c                       ] tR tRtRtR# )BProtocolTests.test_protocol_checks_after_subscript.<locals>.Other2i  rl   Nr   rl   rk   rh   Other2r	    r	  rk   r	  c                       ] tR tRtRtR# )>ProtocolTests.test_protocol_checks_after_subscript.<locals>.D1i  rl   Nr   rl   rk   rh   D1r	    r  rk   r	  c                       ] tR tRtRtR# )>ProtocolTests.test_protocol_checks_after_subscript.<locals>.D2i  rl   Nr   rl   rk   rh   D2r	    r  rk   r	  N)r(   r   r   r   r   r   r   r   )	rf   rb  r  r	  r	  CAr	  r	  CIs	   &        rh   $test_protocol_checks_after_subscript2ProtocolTests.test_protocol_checks_after_subscript  s    ""!sV  1-  +33sVbdA&b$rk   c                   \          ! R  R\        4      4       p ! R R\        4      p ! R RV4      p ! R R4      pVP                  V4       VP                  V4       V P                  V! 4       V4       V P                  V! 4       V4       R# )	c                       ] tR tRt^tRtR# )8ProtocolTests.test_protocols_support_register.<locals>.Pi  rl   Nr  rl   rk   rh   rb  r	    ry  rk   rb  c                   &   a  ] tR tRt o R tRtV tR# )9ProtocolTests.test_protocols_support_register.<locals>.PMi  c                    R # rb   rl   r   s   &rh   r  >ProtocolTests.test_protocols_support_register.<locals>.PM.meth  r:  rk   rl   Nr  rs   s   @rh   PMr	    r<  rk   r	  c                       ] tR tRtRtR# )8ProtocolTests.test_protocols_support_register.<locals>.Di  rl   Nr   rl   rk   rh   r  r	        Trk   r  c                       ] tR tRtRtR# )8ProtocolTests.test_protocols_support_register.<locals>.Ci  rl   Nr   rl   rk   rh   r  r	    r  rk   r  N)r+   r(   r}  r   )rf   rb  r	  r  r  s   &    rh   test_protocols_support_register-ProtocolTests.test_protocols_support_register  sp    		 	 
		! 	! 		

1	

1ac1%ac1%rk   c                    \          ! R  R\        4      4       p ! R R4      p ! R RV4      p ! R R4      pV P                  V! 4       V4       V P                  V! 4       V4       R# )	c                       ] tR tRt^tRtR# )NProtocolTests.test_none_on_non_callable_doesnt_block_implementation.<locals>.Pi  rl   Nr  rl   rk   rh   rb  r
    ry  rk   rb  c                       ] tR tRt^tRtR# )NProtocolTests.test_none_on_non_callable_doesnt_block_implementation.<locals>.Ai  rl   Nr  rl   rk   rh   r  r
    ru  rk   r  c                       ] tR tRtRtRtR# )NProtocolTests.test_none_on_non_callable_doesnt_block_implementation.<locals>.Bi  Nrl   r  rl   rk   rh   r	  r
        Ark   r	  c                   &   a  ] tR tRt o R tRtV tR# )NProtocolTests.test_none_on_non_callable_doesnt_block_implementation.<locals>.Ci  c                    R V n         R # rb   r   r   s   &rh   r   WProtocolTests.test_none_on_non_callable_doesnt_block_implementation.<locals>.C.__init__  	    rk   r   Nr   rs   s   @rh   r  r

          rk   r  Nr	  rf   rb  r  r	  r  s   &    rh   5test_none_on_non_callable_doesnt_block_implementationCProtocolTests.test_none_on_non_callable_doesnt_block_implementation  sa    		 	 
		 		 		 	 	ac1%ac1%rk   c                    \          ! R  R\        4      4       p ! R R4      p ! R RV4      p ! R R4      pV P                  V! 4       V4       V P                  V! 4       V4       R# )	c                   &   a  ] tR tRt o R tRtV tR# )DProtocolTests.test_none_on_callable_blocks_implementation.<locals>.Pi  c                    R # rb   rl   r   s   &rh   r   FProtocolTests.test_none_on_callable_blocks_implementation.<locals>.P.x  r  rk   rl   Nr  rs   s   @rh   rb  r
    r  rk   rb  c                   &   a  ] tR tRt o R tRtV tR# )DProtocolTests.test_none_on_callable_blocks_implementation.<locals>.Ai  c                    R # rb   rl   r   s   &rh   r   FProtocolTests.test_none_on_callable_blocks_implementation.<locals>.A.x  r  rk   rl   Nr  rs   s   @rh   r  r
    r  rk   r  c                       ] tR tRtRtRtR# )DProtocolTests.test_none_on_callable_blocks_implementation.<locals>.Bi  Nrl   r  rl   rk   rh   r	  r
    r
  rk   r	  c                   &   a  ] tR tRt o R tRtV tR# )DProtocolTests.test_none_on_callable_blocks_implementation.<locals>.Ci  c                    R V n         R # rb   r   r   s   &rh   r   MProtocolTests.test_none_on_callable_blocks_implementation.<locals>.C.__init__  r
  rk   r   Nr   rs   s   @rh   r  r
    r
  rk   r  N)r+   r(   r   r
  s   &    rh   +test_none_on_callable_blocks_implementation9ProtocolTests.test_none_on_callable_blocks_implementation  sa    		 	 
		 		 		 	 	  a(  a(rk   c                T    ! R  R\         4      p\         ! R R\         4      4       p ! R RV4      p ! R RV4      p ! R R	\        P                  R
7      p ! R R\        P                  R
7      pV P	                  V! 4       V4       V P	                  V! 4       V4       V P                  WS4       V P                  Wd4       V P                  V! 4       V4       V P                  WB4       V P                  R\        V4      4       V P                  R\        V4      4       V P                  R\        V4      4       V P                  R\        V4      4       V P                  \        V4      R04       V P                  \        V4      R04       V P                  \        V4      \        4       V P                  \        V4      VP                  4       V P                  \        V4      \        4       V P                  \        V4      VP                  4       0 RmpV P                  \        V4      P!                  4       \        V4      P!                  4       V,          4       V P                  \        V4      P!                  4       \        V4      P!                  4       V,          4       R# )c                       ] tR tRt^tRtR# )5ProtocolTests.test_non_protocol_subclasses.<locals>.Pi  rl   Nr  rl   rk   rh   rb  r%
    ru  rk   rb  c                   &   a  ] tR tRt o R tRtV tR# )6ProtocolTests.test_non_protocol_subclasses.<locals>.PRi  c                    R # rb   rl   r   s   &rh   r  ;ProtocolTests.test_non_protocol_subclasses.<locals>.PR.meth  r:  rk   rl   Nr  rs   s   @rh   PRr'
           rk   r*
  c                       ] tR tRt^tRtR# )8ProtocolTests.test_non_protocol_subclasses.<locals>.NonPi  rl   Nr  rl   rk   rh   NonPr-
    ru  rk   r.
  c                       ] tR tRtRtR# )9ProtocolTests.test_non_protocol_subclasses.<locals>.NonPRi  rl   Nr   rl   rk   rh   NonPRr0
    r   rk   r1
  c                       ] tR tRt^tRtR# )5ProtocolTests.test_non_protocol_subclasses.<locals>.Ci  rl   Nr  rl   rk   rh   r  r3
    ru  rk   r  r  c                   &   a  ] tR tRt o R tRtV tR# )5ProtocolTests.test_non_protocol_subclasses.<locals>.Di  c                    R # rb   rl   r   s   &rh   r  :ProtocolTests.test_non_protocol_subclasses.<locals>.D.meth  r:  rk   rl   Nr  rs   s   @rh   r  r5
    r<  rk   r  __protocol_attrs____non_callable_proto_members__r   r  N>	   r   r  _is_protocolr  rn  __subclasshook__r  _is_runtime_protocol__annotations_cache__)r(   r+   r  ABCMetar   r   r   r   assertNotInvarsr   r/   	frozensetassertIsNotr8
  assertLessEqualkeys)rf   rb  r*
  r.
  r1
  r  r  acceptable_extra_attrss   &       rh   test_non_protocol_subclasses*ProtocolTests.test_non_protocol_subclasses  s   	 	 
	! 	! 
	!	1 	 	B	#++ 		!#++ 	! 	  d+  e,  )  *egr*e(-tDz:-tE{;94:F94;G-a03%8-b1F8< 	215yA-a0!2F2FG226	B-b113G3GH"

 	T$Z__.QAW0WXKQ1G G	
rk   c                    ! R  R\         4      p ! R R4      p ! R R4      p ! R RV4      pV P                  V! 4       V4       V P                  V! 4       V4       V P                  W$4       V P	                  W44       R# )	c                       ] tR tRt^tRtR# )1ProtocolTests.test_custom_subclasshook.<locals>.Pi!  rl   Nr  rl   rk   rh   rb  rJ
  !  ru  rk   rb  c                       ] tR tRtRtR# )7ProtocolTests.test_custom_subclasshook.<locals>.OKClassi$  rl   Nr   rl   rk   rh   OKClassrL
  $  r	  rk   rM
  c                       ] tR tRt^tRtR# )8ProtocolTests.test_custom_subclasshook.<locals>.BadClassi&  rl   Nr  rl   rk   rh   BadClassrO
  &  ru  rk   rP
  c                   0   a  ] tR tRt o ]R 4       tRtV tR# )1ProtocolTests.test_custom_subclasshook.<locals>.Ci)  c                8    VP                   P                  R 4      # OK)rm   rg  r9  others   &&rh   r;
  BProtocolTests.test_custom_subclasshook.<locals>.C.__subclasshook__*  s    ~~0066rk   rl   Nrm   rn   ro   rp   classmethodr;
  rq   rr   rs   s   @rh   r  rR
  )  s     7 7rk   r  N)r(   r   r   r   r   )rf   rb  rM
  rP
  r  s   &    rh   test_custom_subclasshook&ProtocolTests.test_custom_subclasshook   sn    	 	 		 		7 	7
 	gi+  Q/g)  -rk   c                R   \          ! R  R\        4      4       p ! R R4      p ! R R4      pV P                  V! 4       V4       V P                  V! 4       V4       V P	                  W14       V P                  W!4        ! R R\        4      pRpV P                  \        V4      ;_uu_ 4        \        \        V4       R	R	R	4       V P                  \        V4      ;_uu_ 4        \        \        4       V4       R	R	R	4       R	#   + '       g   i     LM; i  + '       g   i     R	# ; i)
c                   4   a  ] tR tRt o ^t]R 4       tRtV tR# )6ProtocolTests.test_custom_subclasshook_2.<locals>.HasXi4  c                    \        VR 4      # r   hasattrrV
  s   &&rh   r;
  GProtocolTests.test_custom_subclasshook_2.<locals>.HasX.__subclasshook__;      uc**rk   rl   N)	rm   rn   ro   rp   r   rZ
  r;
  rq   rr   rs   s   @rh   r  r_
  4  s     
 A+ +rk   r  c                       ] tR tRtRtR# )7ProtocolTests.test_custom_subclasshook_2.<locals>.Emptyi?  rl   Nr   rl   rk   rh   r  rf
  ?  r	  rk   r  c                       ] tR tRt^tRtR# )@ProtocolTests.test_custom_subclasshook_2.<locals>.ImplementsHasXiA  rl   Nr  rl   rk   rh   ImplementsHasXrh
  A  ru  rk   ri
  c                   0   a  ] tR tRt o ]R 4       tRtV tR# )EProtocolTests.test_custom_subclasshook_2.<locals>.NotRuntimeCheckableiL  c                    \        VR 4      # r   ra
  rV
  s   &&rh   r;
  VProtocolTests.test_custom_subclasshook_2.<locals>.NotRuntimeCheckable.__subclasshook__M  rd
  rk   rl   NrY
  rs   s   @rh   NotRuntimeCheckablerk
  L  s     + +rk   rn
  r  N)r+   r(   r   r   r   r   r
  r   r   r  r   )rf   r  r  ri
  rn
  must_be_runtime_checkables   &     rh   test_custom_subclasshook_2(ProtocolTests.test_custom_subclasshook_23  s    		+8 	+ 
	+ 		 	 	n.5  $/n3  -
	+( 	+0 	"
 ##I/HIIv23 J##I/HIIvx!45 JI JIIIIs   ,D#DD	D&	c           
        \          ! R  R\        4      4       p ! R R\        4      p\          ! R R\        4      4       p ! R R4      pWV3 Fh  pV P                  VP                  R7      ;_uu_ 4        V P	                  \
        R	4      ;_uu_ 4        \        V! 4       V4       R
R
R
4       R
R
R
4       Kj  	  R
#   + '       g   i     L; i  + '       g   i     K  ; i)c                       ] tR tRt^tRtR# )IProtocolTests.test_issubclass_fails_correctly.<locals>.NonCallableMembersi\  rl   Nr  rl   rk   rh   NonCallableMembersrt
  \  ry  rk   ru
  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )JProtocolTests.test_issubclass_fails_correctly.<locals>.NotRuntimeCheckablei`  c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  WProtocolTests.test_issubclass_fails_correctly.<locals>.NotRuntimeCheckable.__annotate__a      111rk   c                    R # rb   rl   r   s   &rh   callable_memberZProtocolTests.test_issubclass_fails_correctly.<locals>.NotRuntimeCheckable.callable_membera  r  rk   rl   Nrm   rn   ro   rp   r|
  rq   rr   rs   s   @rh   rn
  rw
  `  r  rk   rn
  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )GProtocolTests.test_issubclass_fails_correctly.<locals>.RuntimeCheckableic  c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  TProtocolTests.test_issubclass_fails_correctly.<locals>.RuntimeCheckable.__annotate__e  rz
  rk   c                    R # rb   rl   r   s   &rh   r|
  WProtocolTests.test_issubclass_fails_correctly.<locals>.RuntimeCheckable.callable_membere  r  rk   rl   Nr~
  rs   s   @rh   RuntimeCheckabler
  c  s     11rk   r
  c                       ] tR tRtRtR# )8ProtocolTests.test_issubclass_fails_correctly.<locals>.Cig  rl   Nr   rl   rk   rh   r  r
  g  r  rk   r  )
proto_namer  N)r+   r(   r~   rm   r
  r   r   )rf   ru
  rn
  r
  r  protocols   &     rh   test_issubclass_fails_correctly-ProtocolTests.test_issubclass_fails_correctly[  s    		 	 
		2( 	2 
	2x 	2 
	2 	 +AQQH):):;;++F  qsH- <; R  <;;s$   5CB<&C<CCC c                R   \        R 4      p\        R4      p\         ! R R\        W3,          4      4       p ! R RV\        V3,          \        V,          4      pV P	                  \
        4      ;_uu_ 4        V\        ,           RRR4       V P	                  \
        4      ;_uu_ 4        V\        \        3,           RRR4        ! R RV\        V3,          4      pV P                  V\        ,          ! 4       V4       R#   + '       g   i     L; i  + '       g   i     L_; i)	r   Sc                   &   a  ] tR tRt o R tRtV tR# )9ProtocolTests.test_defining_generic_protocols.<locals>.PRiv  c                    R # rb   rl   r   s   &rh   r  >ProtocolTests.test_defining_generic_protocols.<locals>.PR.methx  r:  rk   rl   Nr  rs   s   @rh   r*
  r
  v  r+
  rk   r*
  c                       ] tR tRt^tRtR# )8ProtocolTests.test_defining_generic_protocols.<locals>.Piz  rl   Nrm   rn   ro   rp   r   rq   rl   rk   rh   rb  r
  z  ru  rk   rb  Nc                       ] tR tRtRtR# )8ProtocolTests.test_defining_generic_protocols.<locals>.Ci  rl   Nr   rl   rk   rh   r  r
    r  rk   r  )r   r+   r(   r   r   r   r  r   )rf   r   r
  r*
  rb  r  s   &     rh   test_defining_generic_protocols-ProtocolTests.test_defining_generic_protocolsr  s    CLCL		!!$ 	! 
	!	36
HQK 	 y))sG *y))c3hK * 	"36
!afh* *)))s   8D+DD	D&	c           	       a \        R 4      o\        R4      p\         ! R R\        \        SV3,          4      4       p ! R RV\        \
        3,          \        4      pV P                  \        4      ;_uu_ 4        \        V\        \
        3,          V4       RRR4       V P                  W24       V P                  \        4      ;_uu_ 4        V\        ,           RRR4        ! V3R lR\        \        S,          4      p ! V3R	 lR
\        S,          \        4      p\         ! R RV\
        ,          \        4      4       p ! R R4      pV P                  V! 4       V4       R#   + '       g   i     L; i  + '       g   i     L; i)r   r
  c                   &   a  ] tR tRt o R tRtV tR# )CProtocolTests.test_defining_generic_protocols_old_style.<locals>.PRi  c                    R # rb   rl   r   s   &rh   r  HProtocolTests.test_defining_generic_protocols_old_style.<locals>.PR.meth  r:  rk   rl   Nr  rs   s   @rh   r*
  r
    r+
  rk   r*
  c                       ] tR tRt^tRtR# )BProtocolTests.test_defining_generic_protocols_old_style.<locals>.Pi  rl   Nr
  rl   rk   rh   rb  r
    ru  rk   rb  Nc                   6   <a  ] tR tRt o VV 3R lR ltRtV tR# )CProtocolTests.test_defining_generic_protocols_old_style.<locals>.P1i  c                &   < V ^8  d   QhRSZRS[ /# rc  r\  )r  r   rt   s   "rh   r  PProtocolTests.test_defining_generic_protocols_old_style.<locals>.P1.__annotate__      ++Q+3+rk   c                    R # rb   rl   r   s   &&rh   rc  GProtocolTests.test_defining_generic_protocols_old_style.<locals>.P1.bar      rk   rl   Nrf  r(	  s   @rh   r  r
         ++rk   r  c                   6   <a  ] tR tRt o VV 3R lR ltRtV tR# )CProtocolTests.test_defining_generic_protocols_old_style.<locals>.P2i  c                &   < V ^8  d   QhRSZRS[ /# rc  r\  )r  r   rt   s   "rh   r  PProtocolTests.test_defining_generic_protocols_old_style.<locals>.P2.__annotate__  r
  rk   c                    R # rb   rl   r   s   &&rh   rc  GProtocolTests.test_defining_generic_protocols_old_style.<locals>.P2.bar  r
  rk   rl   Nrf  r(	  s   @rh   r  r
    r
  rk   r  c                       ] tR tRt^tRtR# )EProtocolTests.test_defining_generic_protocols_old_style.<locals>.PSubi  rl   Nr  rl   rk   rh   PSubr
    ry  rk   r
  c                   6   a  ] tR tRt o ^tV 3R lR ltRtV tR# )EProtocolTests.test_defining_generic_protocols_old_style.<locals>.Testi  c                &   < V ^8  d   QhRS[ RS[ /# rc  r\  )r  rt   s   "rh   r  RProtocolTests.test_defining_generic_protocols_old_style.<locals>.Test.__annotate__  s      S S rk   c                    V# rb   rl   r   s   &&rh   rc  IProtocolTests.test_defining_generic_protocols_old_style.<locals>.Test.bar  s    rk   rl   N)rm   rn   ro   rp   r   rc  rq   rr   rs   s   @rh   r  r
    s     A rk   r  )r   r+   r(   r$   r   r  r   r   r   r   r   )	rf   r
  r*
  rb  r  r  r
  r  r   s	   &       @rh   )test_defining_generic_protocols_old_style7ProtocolTests.test_defining_generic_protocols_old_style  s   CLCL		!71a4= 	! 
	!	38h 	 y))r#s(|R( *a$y))sG *	,71: 	,	,X 	, 
	2c7H 	 
		 	 	dfd+- *) *)s   <E)E<)E9	<F	c                    \         R  ! 4       4       pR ! 4       pV P                  V! 4       V4       V P                  W!4       \         R ! 4       4       pV P                  RV4       V P                  \        V4       R# )c                  @   aa R 5;o3o ! VV3R lRS5
p \         V 4      # )r   c                   <   <a  ] tR tRt Zt o VV 3R lR ltRtV tR# )HProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.Fooi  c                $   < V ^8  d   QhRSZRR/# rS  rl   )r  r   rt   s   "rh   r  UProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.Foo.__annotate__      --a-D-rk   c                    R # rb   rl   r   s   &&rh   r  MProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.Foo.meth  rm  rk   rl   Nr  r  s   @rh   r   r
    s     --rk   r   r  r  s    @@rh   r  `ProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.<generic parameters of Foo>  s     	. 	.X 	.rk   c                  4   aa R 5;o3o ! VV3R lRS5
q 4      # )r   c                   <   <a  ] tR tRt Zt o VV 3R lR ltRtV tR# )HProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.Bari  c                $   < V ^8  d   QhRSZRR/# rS  rl   )r  r   rt   s   "rh   r  UProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.Bar.__annotate__  r
  rk   c                    R # rb   rl   r   s   &&rh   r  MProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.Bar.meth  rm  rk   rl   Nr  r  s   @rh   r   r
    s     --rk   r   rl   r  s    @@rh   r  `ProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.<generic parameters of Bar>  s    ! 	. 	. 	.rk   c                  @   aa R 5;o3o ! VV3R lRS5
p \         V 4      # )r   c                   <   <a  ] tR tRt Zt o VV 3R lR ltRtV tR# )RProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.SupportsTrunci  c                    < V ^8  d   QhRSZ/# r`  rl   )r  r   rt   s   "rh   r  _ProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.SupportsTrunc.__annotate__  s    ))1)rk   c                    R # rb   rl   r   s   &rh   	__trunc__\ProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.SupportsTrunc.__trunc__      crk   rl   N)rm   rn   ro   rp   rX  r
  rq   rr   r  s   @rh   SupportsTruncr
    s     ))rk   r
  r  r  s    @@rh   %<generic parameters of SupportsTrunc>jProtocolTests.test_pep695_generic_protocol_callable_members.<locals>.<generic parameters of SupportsTrunc>  s     	* 	*x 	*rk   g        N)r+   r   r   r  )rf   r   r   r
  s   &   rh   -test_pep695_generic_protocol_callable_members;ProtocolTests.test_pep695_generic_protocol_callable_members  so    		. 
	.	. 	ceS)c'		* 
	* 	c=1e]3rk   c                   \        R 4      p ! R R\        V,          4      p ! R RW!,          4      pV P                  V\        ,          ! 4       P                  R4        ! R R4      p ! R R	WBV,          4      pV P                  V\        ,          ! 4       P                  R4        ! R
 RW!,          V4      pV P                  V\        ,          ! 4       P                  R4       R# )r   c                       ] tR tRtRtR# ))ProtocolTests.test_init_called.<locals>.Pi  rl   Nr   rl   rk   rh   rb  r
    r  rk   rb  c                   &   a  ] tR tRt o R tRtV tR# ))ProtocolTests.test_init_called.<locals>.Ci  c                    R V n         R# rU
  Ntestr   s   &rh   r   2ProtocolTests.test_init_called.<locals>.C.__init__  	     	rk   r
  Nr   rs   s   @rh   r  r
         ! !rk   r  rU
  c                   &   a  ] tR tRt o R tRtV tR# ))ProtocolTests.test_init_called.<locals>.Bi  c                    R V n         R# r
  r
  r   s   &rh   r   2ProtocolTests.test_init_called.<locals>.B.__init__  r
  rk   r
  Nr   rs   s   @rh   r	  r
    r
  rk   r	  c                       ] tR tRtRtR# )*ProtocolTests.test_init_called.<locals>.D1i  rl   Nr   rl   rk   rh   r	  r
    rw  rk   r	  c                       ] tR tRtRtR# )*ProtocolTests.test_init_called.<locals>.D2i  rl   Nr   rl   rk   rh   r	  r
    rw  rk   r	  N)r   r(   r   r   r
  )rf   r   rb  r  r	  r	  r	  s   &      rh   test_init_calledProtocolTests.test_init_called  s    CL""	! 	! 	3-	! 	!	aD 	 	C.	q 	 	C.rk   c                   \        R 4      p ! R R\        V,          4      p ! R RW!,          4      pV P                  V\        ,          ! 4       P                  R4       V P                  \        4      ;_uu_ 4        V\        ,          ! ^*4       RRR4       V P                  \        4      ;_uu_ 4        V\        ,          ! ^*R7       RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; i)r   c                       ] tR tRtRtR# )(ProtocolTests.test_new_called.<locals>.Pi  rl   Nr   rl   rk   rh   rb  r
    r  rk   rb  c                   2   a a ] tR tRt oV 3R ltRtVtV ;t# )(ProtocolTests.test_new_called.<locals>.Ci  c                :   < \         SV `  ! V .VO5!  pR Vn        V# rT
  )r   __new__r
  )r9  r   rf   r   s   &* rh   r
  0ProtocolTests.test_new_called.<locals>.C.__new__  s"    ws2T2 	rk   r
  rm   rn   ro   rp   r
  rq   rr   r   r   s   @@rh   r  r
    s      rk   r  rU
  Nr  )r   r(   r   r   r
  r   r   )rf   r   rb  r  s   &   rh   test_new_calledProtocolTests.test_new_called  s    CL""	 	 	3-y))cF2J *y))cFRL *) *))))s   <C5C'C$	'C8	c           	        \        R 4      p\        R4      pV P                  \        4      ;_uu_ 4         ! R R\        W3,          4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        \        ,          4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        V,          \        V,          4      pRRR4       V P                  \        4      ;_uu_ 4         ! R	 R\
        P                  W3,          \        V,          4      pRRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)
r   r
  c                       ] tR tRtRtR# )6ProtocolTests.test_protocols_bad_subscripts.<locals>.Pi  rl   Nr   rl   rk   rh   rb  r
    s    Trk   rb  Nc                       ] tR tRtRtR# )6ProtocolTests.test_protocols_bad_subscripts.<locals>.Qi  rl   Nr   rl   rk   rh   r   r
        Drk   r   c                       ] tR tRtRtR# )6ProtocolTests.test_protocols_bad_subscripts.<locals>.Ri  rl   Nr   rl   rk   rh   r#  r    ri  rk   r#  c                       ] tR tRtRtR# )6ProtocolTests.test_protocols_bad_subscripts.<locals>.Si  rl   Nr   rl   rk   rh   r
  r    rO  rk   )r   r   r   r(   r   rc   r6  )rf   r   r
  rb  r   r#  s   &     rh   test_protocols_bad_subscripts+ProtocolTests.test_protocols_bad_subscripts  s    CLCLy)))HQTN) *y))(HSM( *y))3HQK!3 *y))<FNN14((1+< *) *))))))))s/   D11E1#E9.E*1E	E	E'	*E;	c                    \        R 4      p\        R4      p ! R R\        W3,          4      pV P                  \        W1V3,          4      R4       V P                  \        V\        \
        3,          4      R4       R# )r   r
  c                       ] tR tRtRtR# )4ProtocolTests.test_generic_protocols_repr.<locals>.Pi  rl   Nr   rl   rk   rh   rb  r	    r  rk   rb  z	P[~T, ~S]zP[int, str]N)r   r(   r  r   r   r  rf   r   r
  rb  s   &   rh   test_generic_protocols_repr)ProtocolTests.test_generic_protocols_repr  sY    CLCL%%Da4M;7D38-}=rk   c                   \        R 4      p\        R4      p ! R R\        W3,          4      pV P                  W34       V P                  V\        V3,          V\        V3,          4       V P                  W1V3,          \        W3,          ,          \        \
        3,          V\        \        \
        3,          \        \        \
        3,          3,          4       R# )r   r
  c                       ] tR tRtRtR# )2ProtocolTests.test_generic_protocols_eq.<locals>.Pi  rl   Nr   rl   rk   rh   rb  r    r  rk   rb  N)r   r(   r   r   r   r  r
  s   &   rh   test_generic_protocols_eq'ProtocolTests.test_generic_protocols_eq  s    CLCL%%36Ac1fI.a4qt-c3h75c?E#s(O;<	>rk   c                v   \        R 4      p ! R R\        V,          4      pV P                  VP                  V34       V P                  V\        ,          P                  R4       V P                  V\        ,          P
                  \        34       V P                  V\        ,          P                  V4       R# )r   c                       ] tR tRtRtR# )DProtocolTests.test_generic_protocols_special_from_generic.<locals>.Pi  rl   Nr   rl   rk   rh   rb  r    r  rk   rb  Nrl   )r   r(   r   r  r   r  r   r  )rf   r   rb  s   &  rh   +test_generic_protocols_special_from_generic9ProtocolTests.test_generic_protocols_special_from_generic  s{    CL""))A403..333&1af''+rk   c                   \          ! R  R\        4      4       p ! R R\        4      p\        R4      p ! R R\        V,          4      pV P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP
                  R4       V P                  VP
                  R4       V P                  V\        ,          P                  R4       V P                  \        P                  ! V4      R	04       V P                  \        P                  ! V4      R
04       V P                  \        \        P                  ! V4      4      \        R
R	04      4       R# )c                       ] tR tRt^tRtR# )FProtocolTests.test_generic_protocols_special_from_protocol.<locals>.PRi  rl   Nr  rl   rk   rh   r*
  r    ry  rk   r*
  c                   &   a  ] tR tRt o R tRtV tR# )EProtocolTests.test_generic_protocols_special_from_protocol.<locals>.Pi  c                    R # rb   rl   r   s   &rh   r  JProtocolTests.test_generic_protocols_special_from_protocol.<locals>.P.meth  r  rk   rl   Nr  rs   s   @rh   rb  r    r  rk   rb  r   c                   *   a  ] tR tRt o ^tR tRtV tR# )FProtocolTests.test_generic_protocols_special_from_protocol.<locals>.PGi  c                    R # rb   rl   r   s   &rh   r  KProtocolTests.test_generic_protocols_special_from_protocol.<locals>.PG.meth  r  rk   rl   N)rm   rn   ro   rp   r   r  rq   rr   rs   s   @rh   rI  r    s     A rk   rI  TFr  r   N)r+   r(   r   r   r:
  r<
  r   r   rc   _get_protocol_attrsrA
  )rf   r*
  rb  r   rI  s   &    rh   ,test_generic_protocols_special_from_protocol:ProtocolTests.test_generic_protocols_special_from_protocol  s    		 	 
		 	 CL	! 	 	annd+boot,boot,a,,e4b--t4bg**D133A6A33B7#?6#=#=b#AB"C=1	3rk   c                X   V P                  \        4      ;_uu_ 4        \         ! R  R4      4       pRRR4        ! R R\        4      pV P                  \        4      ;_uu_ 4        \         ! R RV4      4       pRRR4       R#   + '       g   i     L[; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# )8ProtocolTests.test_no_runtime_deco_on_nominal.<locals>.Ci-  rl   Nr   rl   rk   rh   r  r'  -  s    rk   r  Nc                       ] tR tRt^tRtR# )<ProtocolTests.test_no_runtime_deco_on_nominal.<locals>.Protoi0  rl   Nr  rl   rk   rh   r  r)  0  ru  rk   r  c                       ] tR tRtRtR# )?ProtocolTests.test_no_runtime_deco_on_nominal.<locals>.Concretei4  rl   Nr   rl   rk   rh   r  r+  4  s    rk   r  )r   r   r+   r(   )rf   r  r  r  s   &   rh   test_no_runtime_deco_on_nominal-ProtocolTests.test_no_runtime_deco_on_nominal+  s}    y))M  *	H 	 y))5   *) *) *))s   B&BB	B)	c                   \          ! R  R\        4      4       p ! R R\        4      pV P                  V! 4       V4        ! R R4      p ! R R4      pV P	                  V! 4       V4       V P	                  V! 4       V4        ! R R	4      p ! R
 R4      pV P	                  V! 4       V4       V P	                  V! 4       V4       R# )c                       ] tR tRtRtRtR# )4ProtocolTests.test_none_treated_correctly.<locals>.Pi9  Nrl   r  rl   rk   rh   rb  r0  9  s    Ark   rb  c                       ] tR tRtRtR# )4ProtocolTests.test_none_treated_correctly.<locals>.Bi=  rl   Nr   rl   rk   rh   r	  r2  =  r   rk   r	  c                       ] tR tRt^tRtR# )4ProtocolTests.test_none_treated_correctly.<locals>.CiA  rl   Nr  rl   rk   rh   r  r4  A  ru  rk   r  c                       ] tR tRtRtRtR# )4ProtocolTests.test_none_treated_correctly.<locals>.DiD  Nrl   r  rl   rk   rh   r  r6  D  r
  rk   r  c                   &   a  ] tR tRt o R tRtV tR# )5ProtocolTests.test_none_treated_correctly.<locals>.CIiJ  c                    ^V n         R# r  r   r   s   &rh   r   >ProtocolTests.test_none_treated_correctly.<locals>.CI.__init__K  	    rk   r   Nr   rs   s   @rh   r	  r8  J  r   rk   r	  c                   &   a  ] tR tRt o R tRtV tR# )5ProtocolTests.test_none_treated_correctly.<locals>.DIiN  c                    R V n         R # rb   r   r   s   &rh   r   >ProtocolTests.test_none_treated_correctly.<locals>.DI.__init__O  r
  rk   r   Nr   rs   s   @rh   DIr=  N  r
  rk   r@  N)r+   r(   r  r   r   )rf   rb  r	  r  r  r	  r@  s   &      rh   test_none_treated_correctly)ProtocolTests.test_none_treated_correctly8  s    		 	 
	 	  a(	 		 	 	ac1%ac1%	 		 	 	bdA&bdA&rk   c                     ! R  R\         4      p\        P                  \        P                  V3,          p\        P                  V\        P                  3,          pV P	                  W#4       R# )c                       ] tR tRtRtRtR# )1ProtocolTests.test_protocols_in_unions.<locals>.PiV  Nrl   r  rl   rk   rh   rb  rE  V  r
  rk   rb  N)r(   rc   r   r2  r   )rf   rb  rN  Alias2s   &   rh   test_protocols_in_unions&ProtocolTests.test_protocols_in_unionsU  sL    	 	 V__a/0a01'rk   c                   \        R 4      p\         ! R R\        V,          4      4       s ! R R\        \        ,          4      s\        4       p^*Vn        RVn        \        \        P                  ^,           4       F  p\        P                  ! W#4      p\        P                  ! V4      pV P                  VP                  ^*4       V P                  VP                  R4       V P                  VP                  ^4       V P                  VP                  R^*RR/4       \        P                  ! \        V4      p\        P                  ! V4      p ! R R	4      pV P!                  V! 4       V4       K  	  R
# )r   c                       ] tR tRt^tRtR# )rb  ia  rl   Nr  rl   rk   rh   rb  rb  a  ry  rk   rb  c                       ] tR tRtRtR# )CPie  rl   Nr   rl   rk   rh   rL  rL  e  rw  rk   rL  r  rk  rc  c                       ] tR tRt^tRtR# )2ProtocolTests.test_protocols_pickleable.<locals>.Eiu  rl   Nr  rl   rk   rh   r  rN  u  s    rk   r  N)r   r+   r(   rb  r   rL  rk  rc  r{   r|   r}   r  r  r   r   __dict__r   )	rf   r   r7  rz   r  r   r   r  r  s	   &        rh   test_protocols_pickleable'ProtocolTests.test_protocols_pickleable]  s   CL		 	 
		3 	 D622Q67EQ&AQAQUUB'QUUE*QSS!$QZZ%UE)BCQ&AQA  !!!#q) 8rk   c                   \          ! R  R\        4      4       p\          ! R R\        4      4       p ! R R4      p ! R R4      p ! R R	4      pV P                  V! ^^4      V4       V P                  V! ^^4      V4       V P                  V! ^^^4      V4       V P                  V! ^^^4      V4       V P                  V! 4       V4       V P                  V! 4       V4       R
# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )GProtocolTests.test_runtime_checkable_with_match_args.<locals>.P_regulari{  c                2   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   # rj  rL  )r  rt   s   "rh   r  TProtocolTests.test_runtime_checkable_with_match_args.<locals>.P_regular.__annotate__{  s     F  F rk   rl   Nrm  rs   s   @rh   	P_regularrT  {  rn  rk   rW  c                   0   a  ] tR tRt o RtV 3R ltRtV tR# )EProtocolTests.test_runtime_checkable_with_match_args.<locals>.P_matchi  c                2   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   # rj  rL  )r  rt   s   "rh   r  RProtocolTests.test_runtime_checkable_with_match_args.<locals>.P_match.__annotate__  s      F  F	 rk   rl   Nr	  )rm   rn   ro   rp   __match_args__r  rq   rr   rs   s   @rh   P_matchrY    s     'N  rk   r]  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )EProtocolTests.test_runtime_checkable_with_match_args.<locals>.Regulari  c                &   < V ^8  d   QhRS[ RS[ /# rj  rL  )r  rt   s   "rh   r  RProtocolTests.test_runtime_checkable_with_match_args.<locals>.Regular.__annotate__  s      # # rk   c                    Wn         W n        R # rb   r	  rI  s   &&&rh   r   NProtocolTests.test_runtime_checkable_with_match_args.<locals>.Regular.__init__  r	  rk   r	  Nr   rs   s   @rh   Regularr_    s      rk   rd  c                   6   a  ] tR tRt o RtV 3R lR ltRtV tR# )GProtocolTests.test_runtime_checkable_with_match_args.<locals>.WithMatchi  c                ,   < V ^8  d   QhRS[ RS[ RS[ /# r  r   r   r  rL  )r  rt   s   "rh   r  TProtocolTests.test_runtime_checkable_with_match_args.<locals>.WithMatch.__annotate__  s"      # # # rk   c                *    Wn         W n        W0n        R # rb   r  )rf   r   r   r  s   &&&&rh   r   PProtocolTests.test_runtime_checkable_with_match_args.<locals>.WithMatch.__init__  s    rk   r  N)rm   rn   ro   rp   r\  r   rq   rr   rs   s   @rh   	WithMatchrf    s     ,N rk   rl  c                       ] tR tRtRtR# )BProtocolTests.test_runtime_checkable_with_match_args.<locals>.Nopei  rl   Nr   rl   rk   rh   Nopern    r  rk   ro  Nr  )rf   rW  r]  rd  rl  ro  s   &     rh   &test_runtime_checkable_with_match_args4ProtocolTests.test_runtime_checkable_with_match_argsz  s    		 	 
	 
	h 	 
	
	 	
	 	 	gamY7gamW5i1a0)<i1a0':  3  1rk   c                    V P                  \        \        P                  4       V P	                  \
        \        P                  4       R # rb   )r   r   rc   SupportsIntr   r  r   s   &rh   test_supports_intProtocolTests.test_supports_int  s.    c6#5#56  f&8&89rk   c                    V P                  \        \        P                  4       V P	                  \
        \        P                  4       R # rb   )r   r  rc   SupportsFloatr   r  r   s   &rh   test_supports_float!ProtocolTests.test_supports_float  s.    eV%9%9:  f&:&:;rk   c                     ! R  R4      pV P                  \        \        P                  4       V P                  V\        P                  4       V P	                  \
        \        P                  4       R# )c                   &   a  ] tR tRt o R tRtV tR# ).ProtocolTests.test_supports_complex.<locals>.Ci  c                    R # )y                rl   r   s   &rh   __complex__:ProtocolTests.test_supports_complex.<locals>.C.__complex__  r  rk   rl   N)rm   rn   ro   rp   r~  rq   rr   rs   s   @rh   r  r|    s      rk   r  N)r   complexrc   SupportsComplexr   r  rf   r  s   & rh   test_supports_complex#ProtocolTests.test_supports_complex  sP    	 	 	gv'='=>a!7!78  f&<&<=rk   c                     ! R  R4      pV P                  \        \        P                  4       V P                  V\        P                  4       V P	                  \
        \        P                  4       R# )c                   &   a  ] tR tRt o R tRtV tR# ),ProtocolTests.test_supports_bytes.<locals>.Bi  c                    R # rk   rl   r   s   &rh   	__bytes__6ProtocolTests.test_supports_bytes.<locals>.B.__bytes__      rk   rl   N)rm   rn   ro   rp   r  rq   rr   rs   s   @rh   r	  r    r   rk   r	  N)r   r  rc   SupportsBytesr   r  )rf   r	  s   & rh   test_supports_bytes!ProtocolTests.test_supports_bytes  sP    	 	 	eV%9%9:a!5!56  f&:&:;rk   c                    V P                  \        \        P                  4       V P                  \        \        P                  4       V P                  \        \        P                  4       R # rb   )r   r  rc   SupportsAbsr   r   r  r   s   &rh   test_supports_absProtocolTests.test_supports_abs  sD    eV%7%78c6#5#56  f&8&89rk   c                   \        \        \        P                  4       V P	                  \        \        P                  4       V P	                  \
        \        P                  4       V P                  \        \        P                  4       R # rb   )r   r  rc   SupportsRoundr   r   r   r  r   s   &rh   test_supports_round!ProtocolTests.test_supports_round  sT    5&../eV%9%9:c6#7#78  f&:&:;rk   c                    V P                  \        \        P                  4       V P	                  \
        \        P                  4       R # rb   )r   r.  rc   
Reversibler   r   r   s   &rh   test_reversibleProtocolTests.test_reversible  s.    dF$5$56  f&7&78rk   c                    V P                  \        \        P                  4       V P	                  \
        \        P                  4       R # rb   )r   r   rc   SupportsIndexr   r  r   s   &rh   test_supports_index!ProtocolTests.test_supports_index  s.    c6#7#78  f&:&:;rk   c                    V P                  ^ \        P                  4        ! R R\        P                  4      p ! R RV4      pV! 4       pV P                  W14       R# )r   c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )>ProtocolTests.test_bundled_protocol_instance_works.<locals>.C1i  c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  KProtocolTests.test_bundled_protocol_instance_works.<locals>.C1.__annotate__  s       rk   c                    ^*# r  rl   r   s   &rh   __int__FProtocolTests.test_bundled_protocol_instance_works.<locals>.C1.__int__  r  rk   rl   N)rm   rn   ro   rp   r  rq   rr   rs   s   @rh   r  r    r  rk   r  c                       ] tR tRtRtR# )>ProtocolTests.test_bundled_protocol_instance_works.<locals>.C2i  rl   Nr   rl   rk   rh   r  r    rw  rk   r  N)r   rc   r  rs  )rf   r  r  r7  s   &   rh   $test_bundled_protocol_instance_works2ProtocolTests.test_bundled_protocol_instance_works  sK    a!3!34	## 		 	Da$rk   c                   \          ! R  R\        P                  P                  \        4      4       p ! R R4      p ! R R4      pV P                  W14       V P                  W!4       \          ! R R\        P                  P                  \        4      4       p ! R R	4      p ! R
 R4      pV P                  Wd4       V P                  V! 4       V4       V P                  WT4       V P                  V! 4       V4       R# )c                   &   a  ] tR tRt o R tRtV tR# )@ProtocolTests.test_collections_protocols_allowed.<locals>.Customi  c                    R # rb   rl   r   s   &rh   closeFProtocolTests.test_collections_protocols_allowed.<locals>.Custom.close  r  rk   rl   Nrm   rn   ro   rp   r  rq   rr   rs   s   @rh   Customr    r+
  rk   r  c                       ] tR tRtRtR# );ProtocolTests.test_collections_protocols_allowed.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    r  rk   r  c                   ,   a  ] tR tRt o R tR tRtV tR# );ProtocolTests.test_collections_protocols_allowed.<locals>.Bi  c                    . # rb   rl   r   s   &rh   __iter__DProtocolTests.test_collections_protocols_allowed.<locals>.B.__iter__  r\	  rk   c                    ^ # r	  rl   r   s   &rh   r  AProtocolTests.test_collections_protocols_allowed.<locals>.B.close  r	  rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r	  r    s      rk   r	  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )JProtocolTests.test_collections_protocols_allowed.<locals>.ReleasableBufferi  c                $   < V ^8  d   QhRS[ RR/# r  mvr#  N
memoryview)r  rt   s   "rh   r  WProtocolTests.test_collections_protocols_allowed.<locals>.ReleasableBuffer.__annotate__  s    EEZEDErk   c                    R # rb   rl   rf   r  s   &&rh   __release_buffer__]ProtocolTests.test_collections_protocols_allowed.<locals>.ReleasableBuffer.__release_buffer__  s    #rk   rl   N)rm   rn   ro   rp   r  rq   rr   rs   s   @rh   ReleasableBufferr    s     EErk   r  c                       ] tR tRtRtR# );ProtocolTests.test_collections_protocols_allowed.<locals>.Ci  rl   Nr   rl   rk   rh   r  r    r  rk   r  c                   D   a  ] tR tRt o V 3R lR ltV 3R lR ltRtV tR# );ProtocolTests.test_collections_protocols_allowed.<locals>.Di  c                &   < V ^8  d   QhRS[ RS[/# )r  flagsr#  )r   r  )r  rt   s   "rh   r  HProtocolTests.test_collections_protocols_allowed.<locals>.D.__annotate__  s     ' ' '
 'rk   c                    \        R 4      # r  r  )rf   r  s   &&rh   
__buffer__FProtocolTests.test_collections_protocols_allowed.<locals>.D.__buffer__  s    !#&rk   c                $   < V ^8  d   QhRS[ RR/# r  r  )r  rt   s   "rh   r  r    s      Z D rk   c                    R # rb   rl   r  s   &&rh   r  NProtocolTests.test_collections_protocols_allowed.<locals>.D.__release_buffer__  r  rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r    s     ' ' rk   r  N)
r+   r  r  r2  r(   r   r   Bufferr   r   )rf   r  r  r	  r  r  r  s   &      rh   "test_collections_protocols_allowed0ProtocolTests.test_collections_protocols_allowed  s    		![__--x 	! 
	! 		 	 	a(  +		F{55x 	F 
	F 		 	 	a2ac#34  5  &67rk   c                2   \          ! R  R\        P                  \        ,          \        4      4       p ! R R4      p ! R R4      pV P                  W14       V P                  V! 4       V4       V P                  W!4       V P                  V! 4       V4       R# )c                   &   a  ] tR tRt o R tRtV tR# )CProtocolTests.test_io_reader_protocol_allowed.<locals>.CustomReaderi  c                    R # rb   rl   r   s   &rh   r  IProtocolTests.test_io_reader_protocol_allowed.<locals>.CustomReader.close  r  rk   rl   Nr  rs   s   @rh   CustomReaderr    r+
  rk   r  c                       ] tR tRtRtR# )8ProtocolTests.test_io_reader_protocol_allowed.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    r  rk   r  c                   0   a  ] tR tRt o RR ltR tRtV tR# )8ProtocolTests.test_io_reader_protocol_allowed.<locals>.Bi  c                    R # r  rl   )rf   szs   &&rh   read=ProtocolTests.test_io_reader_protocol_allowed.<locals>.B.read  r  rk   c                    R # rb   rl   r   s   &rh   r  >ProtocolTests.test_io_reader_protocol_allowed.<locals>.B.close  r  rk   rl   N))rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r	  r    s      rk   r	  N)	r+   ioReaderr  r(   r   r   r   r   )rf   r  r  r	  s   &   rh   test_io_reader_protocol_allowed-ProtocolTests.test_io_reader_protocol_allowed  y    		!299U+X 	! 
	! 		 	 	a.ac<0  1  l3rk   c                2   \          ! R  R\        P                  \        ,          \        4      4       p ! R R4      p ! R R4      pV P                  W14       V P                  V! 4       V4       V P                  W!4       V P                  V! 4       V4       R# )c                   &   a  ] tR tRt o R tRtV tR# )CProtocolTests.test_io_writer_protocol_allowed.<locals>.CustomWriteri  c                    R # rb   rl   r   s   &rh   r  IProtocolTests.test_io_writer_protocol_allowed.<locals>.CustomWriter.close  r  rk   rl   Nr  rs   s   @rh   CustomWriterr    r+
  rk   r  c                       ] tR tRtRtR# )8ProtocolTests.test_io_writer_protocol_allowed.<locals>.Ai	  rl   Nr   rl   rk   rh   r  r  	  r  rk   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )8ProtocolTests.test_io_writer_protocol_allowed.<locals>.Bi
  c                    R # rb   rl   )rf   r   s   &&rh   write>ProtocolTests.test_io_writer_protocol_allowed.<locals>.B.write  r  rk   c                    R # rb   rl   r   s   &rh   r  >ProtocolTests.test_io_writer_protocol_allowed.<locals>.B.close  r  rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r	  r  
  s      rk   r	  N)	r+   r  Writerr  r(   r   r   r   r   )rf   r  r  r	  s   &   rh   test_io_writer_protocol_allowed-ProtocolTests.test_io_writer_protocol_allowed  r  rk   c                T   V P                  \        4      ;_uu_ 4         ! R  R\        \        4      pRRR4        ! R R\        P
                  \        4      p ! R R\        P                  \        4      p ! R R\        P                  \        4      pR#   + '       g   i     Ll; i)	c                       ] tR tRtRtR# )EProtocolTests.test_builtin_protocol_allowlist.<locals>.CustomProtocoli  rl   Nr   rl   rk   rh   CustomProtocolr    r  rk   r  Nc                       ] tR tRtRtR# )MProtocolTests.test_builtin_protocol_allowlist.<locals>.CustomPathLikeProtocoli  rl   Nr   rl   rk   rh   CustomPathLikeProtocolr    rw  rk   r  c                       ] tR tRtRtR# )KProtocolTests.test_builtin_protocol_allowlist.<locals>.CustomContextManageri  rl   Nr   rl   rk   rh   CustomContextManagerr
    rw  rk   r  c                       ] tR tRtRtR# )JProtocolTests.test_builtin_protocol_allowlist.<locals>.CustomAsyncIteratori   rl   Nr   rl   rk   rh   CustomAsyncIteratorr     rw  rk   r  )	r   r   r   r(   osPathLikerc   ContextManagerAsyncIterator)rf   r  r  r  r  s   &    rh   test_builtin_protocol_allowlist-ProtocolTests.test_builtin_protocol_allowlist  si    y))8  *	R[[( 		6#8#8( 		&"6"6 	 *)s   BB'	c                     ! R  R\         4      pV P                  \        R4      ;_uu_ 4        \        ^V4       RRR4       R#   + '       g   i     R# ; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )CProtocolTests.test_non_runtime_protocol_isinstance_check.<locals>.Pi$  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  PProtocolTests.test_non_runtime_protocol_isinstance_check.<locals>.P.__annotate__$  r  rk   rl   Nrm  rs   s   @rh   rb  r  $  rn  rk   rb  z@runtime_checkableN)r(   r
  r   r   rf   rb  s   & rh   *test_non_runtime_protocol_isinstance_check8ProtocolTests.test_non_runtime_protocol_isinstance_check#  s>    	 	 ##I/CDDq! EDDDs   AA	c                H     ! R  R\         4      p ! R RV4      pV! 4        R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )-ProtocolTests.test_super_call_init.<locals>.Pi+  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  :ProtocolTests.test_super_call_init.<locals>.P.__annotate__+  r  rk   rl   Nrm  rs   s   @rh   rb  r  +  rn  rk   rb  c                   2   a a ] tR tRt oV 3R ltRtVtV ;t# )/ProtocolTests.test_super_call_init.<locals>.Fooi.  c                $   < \         SV `  4        R # rb   )r   r   rf   r   s   &rh   r   8ProtocolTests.test_super_call_init.<locals>.Foo.__init__/  s     "rk   rl   r   r   s   @@rh   r   r#  .  s     # #rk   r   Nr  )rf   rb  r   s   &  rh   test_super_call_init"ProtocolTests.test_super_call_init*  s!    	 		#! 	# 	rk   c                   V P                  \        R 4      ;_uu_ 4        \        \        4       RRR4       V P                  \        R 4      ;_uu_ 4        \        \        4       4       RRR4       V P                  \        R 4      ;_uu_ 4        \        \        4       RRR4       V P                  \        R 4      ;_uu_ 4        \        \
        4       RRR4        ! R R\        4      pV P                  \        V4      0 Rm4       V P                  \        V4      \        4       V P                  \        V4      VP                  4        ! R R4      pV P                  \        R 4      ;_uu_ 4        \        V4       RRR4       V P                  \        R 4      ;_uu_ 4        \        V! 4       4       RRR4        ! R RV4      pV P                  \        R 4      ;_uu_ 4        \        V4       RRR4       V P                  \        R 4      ;_uu_ 4        \        V! 4       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     L; i  + '       g   i     L; i  + '       g   i     R# ; i)	znot a ProtocolNc                   Z   a  ] tR tRt o V 3R lR lt]V 3R lR l4       tV 3R ltRtV t	R# )	2ProtocolTests.test_get_protocol_members.<locals>.Pi>  c                    < V ^8  d   QhRS[ /# r`  r\  )r  rt   s   "rh   r  ?ProtocolTests.test_get_protocol_members.<locals>.P.__annotate__@      ##3#rk   c                    R # rb   rl   r   s   &rh   r   4ProtocolTests.test_get_protocol_members.<locals>.P.b@  s    rk   c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  r-  B  r.  rk   c                    R # rb   rl   r   s   &rh   r7  4ProtocolTests.test_get_protocol_members.<locals>.P.cA  s     #rk   c                &   < V ^8  d   Qh/ S[ ;R&   # r  rM  rL  )r  rt   s   "rh   r  r-  >  r  rk   rl   N
rm   rn   ro   rp   r   r  r7  r  rq   rr   rs   s   @rh   rb  r+  >  s      ### #	  rk   rb  c                   Z   a  ] tR tRt o V 3R lR lt]V 3R lR l4       tV 3R ltRtV t	R# )	9ProtocolTests.test_get_protocol_members.<locals>.ConcreteiH  c                    < V ^8  d   QhRS[ /# r`  r\  )r  rt   s   "rh   r  FProtocolTests.test_get_protocol_members.<locals>.Concrete.__annotate__J      1131rk   c                    R # capybararl   r   s   &rh   r   ;ProtocolTests.test_get_protocol_members.<locals>.Concrete.bJ      zrk   c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  r:  L      ((3(rk   c                    ^# r  rl   r   s   &rh   r7  ;ProtocolTests.test_get_protocol_members.<locals>.Concrete.cK      '(rk   c                &   < V ^8  d   Qh/ S[ ;R&   # r5  rL  )r  rt   s   "rh   r  r:  H  r  rk   rl   Nr6  rs   s   @rh   r  r8  H  s      11( (	  rk   r  c                   ^   a  ] tR tRt o ^*tV 3R lR lt]V 3R lR l4       tV 3R ltRt	V t
R# )	@ProtocolTests.test_get_protocol_members.<locals>.ConcreteInheritiS  c                    < V ^8  d   QhRS[ /# r`  r\  )r  rt   s   "rh   r  MProtocolTests.test_get_protocol_members.<locals>.ConcreteInherit.__annotate__U  r;  rk   c                    R # r=  rl   r   s   &rh   r   BProtocolTests.test_get_protocol_members.<locals>.ConcreteInherit.bU  r@  rk   c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  rK  W  rB  rk   c                    ^# rD  rl   r   s   &rh   r7  BProtocolTests.test_get_protocol_members.<locals>.ConcreteInherit.cV  rF  rk   c                &   < V ^8  d   Qh/ S[ ;R&   # r5  rL  )r  rt   s   "rh   r  rK  S  s     K rk   rl   N)rm   rn   ro   rp   rM  r   r  r7  r  rq   rr   rs   s   @rh   ConcreteInheritrI  S  s%     A11( (	  rk   rR     rM  r   r7  )r
  r   r/   r  r(   r$   r   r   rA
  rB
  r8
  )rf   rb  r  rR  s   &   rh   test_get_protocol_members'ProtocolTests.test_get_protocol_members4  s   ##I/?@@ ( A##I/?@@ * A##I/?@@ * A##I/?@@ ) A	$ 	$ 	-a0/B215yA-a0!2F2FG	) 	) ##I/?@@ * A##I/?@@ , A	)a 	) ##I/?@@ 1 A##I/?@@ !23 A@M A@@@@@@@@@@@& A@@@@ A@@@@s_   H6I
II25J'J)J-K 6I	
I	I/	2J	J	J*	-J=	 K	c                   V P                  \        \        4      4       V P                  \        \        4      4       V P	                  \        \
        4      4       V P	                  \        \        4       4      4       V P	                  \        \        4      4       V P	                  \        \        4      4       V P	                  \        \        4      4       R # rb   )	
assertTruer2   r  rp  assertFalser  r$   r  r(   r   s   &rh   test_is_protocolProtocolTests.test_is_protocol^  s    E*+E*+X./XZ01W-.V,- 	X./rk   c                    \         P                  P                  P                  4         ! R  R\         P                  P                  \        4      pV P                  ^\         P                  P                  4       R# )c                       ] tR tRtRtR# )_ProtocolTests.test_interaction_with_isinstance_checks_on_superclasses_with_ABCMeta.<locals>.Fooim  rl   Nr   rl   rk   rh   r   r]  m  s    Drk   r   N)r  r  Sized_abc_registry_clearr(   r   r  s   & rh   Dtest_interaction_with_isinstance_checks_on_superclasses_with_ABCMetaRProtocolTests.test_interaction_with_isinstance_checks_on_superclasses_with_ABCMetai  sH    1138+//''8
 	  KOO$9$9:rk   c                    \         P                  P                  P                  4         ! R  R\        P                  \
        4      pV P                  ^\        P                  4       R# )c                       ] tR tRtRtR# )aProtocolTests.test_interaction_with_isinstance_checks_on_superclasses_with_ABCMeta_2.<locals>.Fooix  rl   Nr   rl   rk   rh   r   rd  x  s    4rk   r   N)r  r  r^  r_  rc   r(   r   r  s   & rh   Ftest_interaction_with_isinstance_checks_on_superclasses_with_ABCMeta_2TProtocolTests.test_interaction_with_isinstance_checks_on_superclasses_with_ABCMeta_2t  s<    113/&,,/
 	  FLL1rk   c                    \         \         ! R  R\        4      4       4       pV P                  \        V4       V P                  \	        4       V4       R# )c                       ] tR tRtRtR# )MProtocolTests.test_empty_protocol_decorated_with_final.<locals>.EmptyProtocoli  rl   Nr   rl   rk   rh   r(  ri    s    '*rk   r(  N)r'   r+   r(   r   r  r   )rf   r(  s   & rh   (test_empty_protocol_decorated_with_final6ProtocolTests.test_empty_protocol_decorated_with_final  s?    		*H* 
 
*fm4fh6rk   c                    \         \         ! R  R\        4      4       4       pV P                  \        V4       V P                  \        V4       V P                  RV4       V P                  ^*V4       R# )c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )]ProtocolTests.test_protocol_decorated_with_final_callable_members.<locals>.ProtocolWithMethodi  c                &   < V ^8  d   QhRS[ RS[/# )r  stringr#  rd  )r  rt   s   "rh   r  jProtocolTests.test_protocol_decorated_with_final_callable_members.<locals>.ProtocolWithMethod.__annotate__  s    ::::rk   c                    R # rb   rl   )rf   rp  s   &&rh   rg  hProtocolTests.test_protocol_decorated_with_final_callable_members.<locals>.ProtocolWithMethod.startswith  s    srk   rl   Nri  rs   s   @rh   ProtocolWithMethodrn    s      ;:rk   rt  rk  N)	r'   r+   r(   r   r  r   r   r   r   )rf   rt  s   & rh   3test_protocol_decorated_with_final_callable_membersAProtocolTests.test_protocol_decorated_with_final_callable_members  si    			; 	; 
 
	; 	c#56  &89e%78  %78rk   c                   \         \         ! R  R\        4      4       4       p ! R R4      pRpV P                  \        V4      ;_uu_ 4        \        W!4       RRR4       V P                  \        V4      ;_uu_ 4        \        \        V4       RRR4       V P                  V! 4       V4       V P                  ^*V4       R#   + '       g   i     Lr; i  + '       g   i     LN; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )kProtocolTests.test_protocol_decorated_with_final_noncallable_members.<locals>.ProtocolWithNonCallableMemberi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  xProtocolTests.test_protocol_decorated_with_final_noncallable_members.<locals>.ProtocolWithNonCallableMember.__annotate__        F rk   rl   Nrm  rs   s   @rh   ProtocolWithNonCallableMemberry    rn  rk   r}  c                       ] tR tRt^*tRtR# )QProtocolTests.test_protocol_decorated_with_final_noncallable_members.<locals>.Fooi  rl   Nr  rl   rk   rh   r   r    r  rk   r   rz  N	r'   r+   r(   r
  r   r   r   r   r   )rf   r}  r   only_callable_members_pleases   &   rh   6test_protocol_decorated_with_final_noncallable_membersDProtocolTests.test_protocol_decorated_with_final_noncallable_members  s    			H 	 
 
		 	 L 	% ##I/KLLs: M ##I/KLLs9: M 	ce%BC  %BC ML ML   C>CC	C%	c                   \         \         ! R  R\        4      4       4       p ! R R4      pRpV P                  \        V4      ;_uu_ 4        \        W!4       RRR4       V P                  \        V4      ;_uu_ 4        \        \        V4       RRR4       V P                  V! 4       V4       V P                  ^*V4       R#   + '       g   i     Lr; i  + '       g   i     LN; i)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# )`ProtocolTests.test_protocol_decorated_with_final_mixed_members.<locals>.ProtocolWithMixedMembersi  c                   < V ^8  d   QhRR/# r  rl   )r  rt   s   "rh   r  mProtocolTests.test_protocol_decorated_with_final_mixed_members.<locals>.ProtocolWithMixedMembers.__annotate__      )))rk   c                    R # rb   rl   r   s   &rh   r  gProtocolTests.test_protocol_decorated_with_final_mixed_members.<locals>.ProtocolWithMixedMembers.method  r
  rk   c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  r    r|  rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   ProtocolWithMixedMembersr    s      *)	  rk   r  c                   6   a  ] tR tRt o ^*tV 3R lR ltRtV tR# )KProtocolTests.test_protocol_decorated_with_final_mixed_members.<locals>.Fooi  c                   < V ^8  d   QhRR/# r  rl   )r  rt   s   "rh   r  XProtocolTests.test_protocol_decorated_with_final_mixed_members.<locals>.Foo.__annotate__  r  rk   c                    R # rb   rl   r   s   &rh   r  RProtocolTests.test_protocol_decorated_with_final_mixed_members.<locals>.Foo.method  r
  rk   rl   N)rm   rn   ro   rp   r   r  rq   rr   rs   s   @rh   r   r    s     A))rk   r   rz  Nr  )rf   r  r   r  s   &   rh   0test_protocol_decorated_with_final_mixed_members>ProtocolTests.test_protocol_decorated_with_final_mixed_members  s    			*x 	* 
 
	*	* 	*
 L 	% ##I/KLLs5 M ##I/KLLs45 M 	ce%=>  %=> ML MLr  c                4   \          ! R  R\        4      4       pV P                  VP                  0 Rm4       RpV P	                  \
        \        P                  ! V4      4      ;_uu_ 4        \        \        V4       RRR4       R#   + '       g   i     R# ; i)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# )CProtocolTests.test_protocol_issubclass_error_message.<locals>.Vec2Di  c                    < V ^8  d   QhRS[ /# r`  r  )r  rt   s   "rh   r  PProtocolTests.test_protocol_issubclass_error_message.<locals>.Vec2D.__annotate__  s     1 1U 1rk   c                X    V P                   ^,          V P                  ^,          ,           # r  r	  r   s   &rh   square_normOProtocolTests.test_protocol_issubclass_error_message.<locals>.Vec2D.square_norm  s    vv{TVVq[00rk   c                2   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   # rj  r  )r  rt   s   "rh   r  r    s     H  H rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   Vec2Dr    s     
1 1  rk   r  z[Protocols with non-method members don't support issubclass(). Non-method members: 'x', 'y'.N>   r   r   r  )
r+   r(   r   r8
  r
  r   r  r  r   r   )rf   r  expected_error_messages   &  rh   &test_protocol_issubclass_error_message4ProtocolTests.test_protocol_issubclass_error_message  sw    		1H 	1 
	1 	113LM- 	 ##Iryy9O/PQQsE" RQQQs   +BB	c                x   a  ! R  R4      o ! V3R lR\         4      pV P                  \        V4      R04       R# )c                   &   a  ] tR tRt o R tRtV tR# )aProtocolTests.test_nonruntime_protocol_interaction_with_evil_classproperty.<locals>.classpropertyi  c                    \        R 4      hro	  rq	  )rf   instancer   s   &&&rh   r	  iProtocolTests.test_nonruntime_protocol_interaction_with_evil_classproperty.<locals>.classproperty.__get__  rt	  rk   rl   Nr	  rs   s   @rh   classpropertyr    r  rk   r  c                   (   < ] tR tRt Z ! 4       tRtR# )_ProtocolTests.test_nonruntime_protocol_interaction_with_evil_classproperty.<locals>.Commentablei  rl   Nrm   rn   ro   rp   evilrq   r  s   rh   Commentabler    s
     ?Drk   r  r  N)r(   r   r/   )rf   r  r  s   & @rh   <test_nonruntime_protocol_interaction_with_evil_classpropertyJProtocolTests.test_nonruntime_protocol_interaction_with_evil_classproperty  s3    	) 	)	#( 	# 	-k:VHErk   c                  aa  ! R  R\         4      o ! V3R lR4      oV P                  \        4      ;_uu_ 4       p\         ! V3R lR\        4      4       pRRR4       XP
                  pV P                  VP                  ^ ,          R4       V P                  \        VP                  4      S4       R#   + '       g   i     Lf; i)c                       ] tR tRtRtR# )\ProtocolTests.test_runtime_protocol_interaction_with_evil_classproperty.<locals>.CustomErrori  rl   Nr   rl   rk   rh   CustomErrorr    r+  rk   r  c                   .   <a  ] tR tRt o V3R ltRtV tR# )^ProtocolTests.test_runtime_protocol_interaction_with_evil_classproperty.<locals>.classpropertyi  c                   < Shrb   rl   )rf   r  r   r  s   &&&rh   r	  fProtocolTests.test_runtime_protocol_interaction_with_evil_classproperty.<locals>.classproperty.__get__  s	    !!rk   rl   Nr	  )rt   r  s   @rh   r  r    s     " "rk   r  c                   (   < ] tR tRt Z ! 4       tRtR# )\ProtocolTests.test_runtime_protocol_interaction_with_evil_classproperty.<locals>.Commentablei  rl   Nr  r  s   rh   r  r    s
    $rk   r  NzEFailed to determine whether protocol member 'evil' is a method member)	Exceptionr   r   r+   r(   rQ  r   r   r   r   	__cause__)rf   rU  r  excr  r  s   &   @@rh   9test_runtime_protocol_interaction_with_evil_classpropertyGProtocolTests.test_runtime_protocol_interaction_with_evil_classproperty  s    *)*	" 	" y))R'h ' ' *
 llHHQKS	
 	d3==);7 *)s   B66C	c                    \          ! R  R\        4      4       p ! R R4      p ! R R4      p ! R RV\        4      pV P                  WA4       V P                  V! 4       V4       V P	                  V! 4       V4       R# )	c                   &   a  ] tR tRt o R tRtV tR# )PProtocolTests.test_isinstance_with_deferred_evaluation_of_annotations.<locals>.Pi  c                    R # rb   rl   r   s   &rh   r  UProtocolTests.test_isinstance_with_deferred_evaluation_of_annotations.<locals>.P.meth      rk   rl   Nr  rs   s   @rh   rb  r    s      rk   rb  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )\ProtocolTests.test_isinstance_with_deferred_evaluation_of_annotations.<locals>.DeferredClassi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  	undefined)r  rt   s   "rh   r  iProtocolTests.test_isinstance_with_deferred_evaluation_of_annotations.<locals>.DeferredClass.__annotate__       L rk   rl   Nrm  rs   s   @rh   DeferredClassr    rn  rk   r  c                   8   a  ] tR tRt o R tR tV 3R ltRtV tR# )iProtocolTests.test_isinstance_with_deferred_evaluation_of_annotations.<locals>.DeferredClassImplementingPi  c                    ^ V n         R# r]  r   r   s   &rh   r   rProtocolTests.test_isinstance_with_deferred_evaluation_of_annotations.<locals>.DeferredClassImplementingP.__init__  r;  rk   c                    R # rb   rl   r   s   &rh   r  nProtocolTests.test_isinstance_with_deferred_evaluation_of_annotations.<locals>.DeferredClassImplementingP.meth  r  rk   c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # rB  )r  r   )r  rt   s   "rh   r  vProtocolTests.test_isinstance_with_deferred_evaluation_of_annotations.<locals>.DeferredClassImplementingP.__annotate__  s     3 rk   r   N)	rm   rn   ro   rp   r   r  r  rq   rr   rs   s   @rh   DeferredClassImplementingPr    s       rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ZProtocolTests.test_isinstance_with_deferred_evaluation_of_annotations.<locals>.SubProtocoli  c                &   < V ^8  d   Qh/ S[ ;R&   # )r  r  r  )r  rt   s   "rh   r  gProtocolTests.test_isinstance_with_deferred_evaluation_of_annotations.<locals>.SubProtocol.__annotate__  s     O rk   rl   Nrm  rs   s   @rh   SubProtocolr    rn  rk   r  N)r+   r(   r   r   r   )rf   rb  r  r  r  s   &    rh   7test_isinstance_with_deferred_evaluation_of_annotationsEProtocolTests.test_isinstance_with_deferred_evaluation_of_annotations  ss    		 	 
		 		 		!X 	 	k-  !48:A>rk   c                     ! R  R\         4      pV P                  \        V4      R04       V P                  \        P                  ! V\        P
                  P                  R7      RR/4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )LProtocolTests.test_deferred_evaluation_of_annotations.<locals>.DeferredProtoi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  )DoesNotExist)r  rt   s   "rh   r  YProtocolTests.test_deferred_evaluation_of_annotations.<locals>.DeferredProto.__annotate__  s     O rk   rl   Nrm  rs   s   @rh   DeferredProtor    rn  rk   r  r   r  r  N)r(   r   r/   annotationlibget_annotationsFormatSTRING)rf   r  s   & rh   'test_deferred_evaluation_of_annotations5ProtocolTests.test_deferred_evaluation_of_annotations  sX    	H 	-m<seD))-@T@T@[@[\.!	
rk   rl   N)Yrm   rn   ro   rp   r  r  r  r  r  r  r(  r?  rM  r^  rj  r  r  r  r  r  rN  rW  rp  r  r  r  r  r  r  rP	  rd	  r	  r	  r	  r	  r	  r	  r	  r
  r!
  rF
  r[
  rp
  r
  r
  r
  r
  r
  r
  r  r  r  r  r#  r,  rA  rG  rP  rp  rt  rx  r  r  r  r  r  r  r  r  r  r   r  r  r'  rT  rY  r`  re  rj  ru  r  r  r  r  r  r  r  rq   rr   rs   s   @rh   r  r    s    ',/6$0 2),I":!
!&$%@!$F9!v4HXT>90v!$F#,#(#0#,<#|R1h<">N@
:#2J($*%"&"&$)$3
j.&&6P..+(!,F4$/2"
=>	>,38':(*:2B:<><:
<9<%8>4"4"(4T	0	;	27	9D,?0#"F8&?6
 
rk   r  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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. t0R/ t1R0 t2R1 t3R2 t4R3 t5R4 t6R5 t7R6 t8R7 t9R8 t:R9 t;R: t<R; t=R< t>R= t?R> t@R? tAR@ tBRA tCRB tDRC tERD tFRE tGRF tHRG tIRH tJRItKV tLRJ# )KGenericTestsi  c                >   \         \        \        3,          pV P                  VP                  R4       V P                  \        4      ;_uu_ 4        V\        ,           R R R 4       V P                  \        4      ;_uu_ 4        V\        \        3,           R R R 4       \         \        \        3,          pV P                  VP                  \        34       V\        ,           V P                  \        4      ;_uu_ 4        V\        \        3,           R R R 4       \         \        \        3,          pV P                  \        4      ;_uu_ 4        \        V\         4       R R R 4       V P                  V! 4       \         4       \        R4      pV P                  \        \        V,          \        ,          ,          P                  V34       R #   + '       g   i     EL{; i  + '       g   i     ELV; i  + '       g   i     L; i  + '       g   i     L; i)Nr   rl   )r@  r  r   r   r  r   r   r=  r   r   r   r   r   r.  r  )rf   r  r  SM1r   s   &    rh   r|  GenericTests.test_basics  sH   #s(#))2.y))cF *y))c3hK *"c'"))B51	#y))c3hK *CH%y))sM* *ce]3CLd1go.==tD *)))))
 *) *)s0   GG%G9HG"	%G6	9H		H	c           	        \        R 4      p\        R4      pV P                  \        4      ;_uu_ 4        \        V,          V,           RRR4       V P                  \        4      ;_uu_ 4        \        V,          V,           RRR4       V P                  \        4      ;_uu_ 4         ! R R\        V,          \        V,          4      pRRR4       V P                  \        4      ;_uu_ 4        \	        . \
        \        ,          4       RRR4       V P                  \        4      ;_uu_ 4        \        \        \
        \        ,          4       RRR4       V P                  \        4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        V,          \        V,          4      pRRR4       V P                  \        4      ;_uu_ 4         ! R	 R
\
        V,          \        V,          4      pRRR4       V P                  \        4      ;_uu_ 4        \        R,           RRR4        ! R R\        V,          4      pV P                  \        4      ;_uu_ 4        VR,           RRR4       R#   + '       g   i     ELX; i  + '       g   i     EL2; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELK; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     R# ; i)r   r
  Nc                       ] tR tRtRtR# )+GenericTests.test_generic_errors.<locals>.Ci4  rl   Nr   rl   rk   rh   r  r  4  r  rk   r  c                       ] tR tRtRtR# )4GenericTests.test_generic_errors.<locals>.NewGenerici:  rl   Nr   rl   rk   rh   r;  r  :  r)  rk   r;  c                       ] tR tRtRtR# )3GenericTests.test_generic_errors.<locals>.MyGenerici<  rl   Nr   rl   rk   rh   	MyGenericr  <  s    Srk   r  c                       ] tR tRtRtR# )4GenericTests.test_generic_errors.<locals>.MyGeneric2i>  rl   Nr   rl   rk   rh   
MyGeneric2r  >  s    3rk   r  c                       ] tR tRtRtR# )+GenericTests.test_generic_errors.<locals>.DiA  rl   Nr   rl   rk   rh   r  r  A  r  rk   r  rl   )	r   r   r   r$   r   r   r   r   r.  )rf   r   r
  r  r;  r  r  r  s   &       rh   test_generic_errors GenericTests.test_generic_errors,  s   CLCLy))AJqM *y))AJqM *y))0GAJ
0 *y))r49% *y))tT#Y' *y))*W* *y))8GAJ
8 *y))6T!Wgaj6 *y))BK *!
!y))bE *)' *))))))))))))))))))))))))) *))sw   J.J,(#K 0K1 K(6K<+#L3#L$;L8
MJ)	,J=	 K	K%	(K9	<L	L!	$L5	8M	M	c           	        \         \        ,          \        \        ,          \        \        \        3,          \
        \        \        3,          \        P                  R,          \        P                  P                  R,          3 F  pV P                  VR7      ;_uu_ 4        V P                  \        \        V\        4       V P                  \        \        V\        4       V P                  \        \        W4       V P                  \        \        \        V4       V P!                  \#        V\        4      4       V P                  \        \"        W4       RRR4       K  	  R#   + '       g   i     K  ; i).N)typrq  )r.  r   r   rz  r  r   rc   r#   r  r  r~   r   r   r   r  r   rW  r   )rf   r  s   & rh   test_generic_subclass_checks)GenericTests.test_generic_subclass_checksE  s    ItCy#s(OU38_OOI.OO,,Y79C #&&!!)ZfE!!)ZdC!!)ZB!!)ZE 
3 78!!)ZB '&	9 '&&s   "B6E&&E7c                R   \        R 4      p\        R4      pV P                  \        4      ;_uu_ 4        \        W3,           RRR4       V P                  \        4      ;_uu_ 4        \        WV3,           RRR4       R#   + '       g   i     LG; i  + '       g   i     R# ; i)r   r
  N)r   r   r   r$   )rf   r   r
  s   &  rh   	test_initGenericTests.test_initU  sk    CLCLy))ADM *y))A!G *) *))))s   B(BB	B&	c                ,    ! R  R\         P                  \        ,          4      p ! R RV4      pV P                  VP                  ^*4       V P                  \        4      ;_uu_ 4        VP                   RRR4       ^Vn        ^Vn         ! R RV4      p ! R RV\        ,          4      pV P                  VP                  ^4       V P                  VP                  ^*4       V P                  VP                  ^*4       R#   + '       g   i     L; i)	c                   2   a a ] tR tRt oV 3R ltRtVtV ;t# )*GenericTests.test_init_subclass.<locals>.Xi^  c                6   < \         SV `  ! R/ VB  ^*V n        R# )r   Nrl   )r   __init_subclass__r  )r9  r   r   s   &,rh   r  <GenericTests.test_init_subclass.<locals>.X.__init_subclass___  s    )3F3rk   rl   rm   rn   ro   rp   r  rq   rr   r   r   s   @@rh   r  r  ^  s      rk   r  c                       ] tR tRtRtR# )*GenericTests.test_init_subclass.<locals>.Yib  rl   Nr   rl   rk   rh   r  r  b  rw  rk   r  Nc                       ] tR tRtRtR# )*GenericTests.test_init_subclass.<locals>.Zii  rl   Nr   rl   rk   rh   Zr  i  rw  rk   r  c                       ] tR tRtRtR# )*GenericTests.test_init_subclass.<locals>.Wik  rl   Nr   rl   rk   rh   r  r  k  rw  rk   r  )rc   r$   r   r   r  r   r  r   )rf   r  r  r  r  s   &    rh   test_init_subclassGenericTests.test_init_subclass]  s    	q! 		 	$~..FF /	 		# 	#$$ /.s   )DD	c                    V P                  \        \        4      R \         R24       V P                  \        \        4      R \         R24       R# )r   z.SimpleMapping'>z.MySimpleMapping'>N)r   r   r@  rm   rU  r   s   &rh   r   GenericTests.test_reprq  sH    m,#H:-=>	@o.#H:-?@	Brk   c                   \        R 4      p\        R4      p ! R R\        V,          4      pV\        W!3,          ,          pV P                  WC\        W!3,          ,          4       V P	                  WC\        W3,          ,          4       WA\
        3,          pV P                  WTV\
        3,          4       V P	                  WTV\
        3,          4       V P	                  WTV\        3,          4       V\        ,          pV P                  We\        ,          4       V P	                  We\
        ,          4       V P	                  WeV,          4       V P                  \        V4      R4       R# )r   r
  c                       ] tR tRtRtR# )'GenericTests.test_chain_repr.<locals>.Ci{  rl   Nr   rl   rk   rh   r  r  {  rw  rk   r  z.C[typing.Tuple[str, int]]N)r   r$   r   r   r   r   r  r  )rf   r   r
  r  r  r  r  s   &      rh   test_chain_reprGenericTests.test_chain_reprw  s   CLCL	
 	 eADkNeADkN+Aqt~.fIafI&ACy)ACy)cFcF#Av&At$CF$@Ark   c                   \        R 4      p\        RRR7      p\        R4      pV P                  \        \        4      R4       V P                  \        \        V,          4      R4       V P                  \        \        V,          4      R4       V P                  \        \        V,          V,          \        ,          4      R4       V P                  \        \        \        ,          4      R4       R	# )
r   rR  Tr  r
  ztyping.Listztyping.List[~T]ztyping.List[+U]ztyping.List[int]N)r   r   r   r   r   )rf   r   rR  r
  s   &   rh   test_new_reprGenericTests.test_new_repr  s    CLC4(CLd]3d1g(9:d1g(9:d1gajo.0BCd3i*<=rk   c                   \        R 4      p\        R4      pV P                  \        \        P                  W3,          W!3,          4      R4       V P                  \        \
        \        W3,          ,          \        V3,          4      R4       V P                  \        \
        \        W3,          ,          \
        \        ,          ,          4      R4       R# )r   TSztyping.Mapping[~TS, ~T]z"typing.List[typing.Tuple[int, ~T]]z=typing.List[typing.Tuple[typing.List[int], typing.List[int]]]N)r   r   r   rc   r6  r   r   r   )rf   r   r&  s   &  rh   test_new_repr_complex"GenericTests.test_new_repr_complex  s    CLT]fnnQU3BE:;=VWd5<0a89=	?eADk"49-.K	
rk   c                F   \        R 4      pV P                  \        \        V,          4      R4       V P                  \        \        P
                  V,          4      R4        ! R R\        P                  \        \        3,          4      p\        VP                  4       R# )r   ztyping.Generic[~T]ztyping.Protocol[~T]c                       ] tR tRtRtR# )*GenericTests.test_new_repr_bare.<locals>.Ci  rl   Nr   rl   rk   rh   r  r+    s    rk   r  N)	r   r   r   r$   rc   r(   r    r   __mro__rf   r   r  s   &  rh   test_new_repr_bareGenericTests.test_new_repr_bare  sd    CLgaj)+?@fooa013HI+CH%+QYYrk   c                $   \        R 4      p ! R R\        V,          4      pV! 4       p^*Vn        V P                  VP                  R^*/4        ! R RV\
        ,          4      pV! 4       pRVn        V P                  VP                  RR/4       R# )	r   c                       ] tR tRtRtR# )!GenericTests.test_dict.<locals>.Bi  rl   Nr   rl   rk   rh   r	  r2    rw  rk   r	  rk  c                       ] tR tRtRtR# )!GenericTests.test_dict.<locals>.Ci  rl   Nr   rl   rk   rh   r  r4    rw  rk   r  r  rc  N)r   r$   rk  r   rO  r   rc  )rf   r   r	  r   r  r7  s   &     rh   	test_dictGenericTests.test_dict  s{    CL	
 	 CeR[1	# 	 CeU^4rk   c                Z    R  ! 4       pV P                  V\        ,          ! 4       V4       R# )c                  0   a R 5;p 3o ! V3R lRS5
q4      # )r   c                   .   <a  ] tR tRt Zt o R tRtV tR# )7GenericTests.test_setattr_exceptions.<locals>.Immutablei  c                    \        R 4      h)	immutablerq	  rL  s   &&&rh   __setattr__CGenericTests.test_setattr_exceptions.<locals>.Immutable.__setattr__  s    ";//rk   rl   N)rm   rn   ro   rp   rX  r=  rq   rr   r  s   @rh   	Immutabler:    s     0 0rk   r?  rl   r[  s     @rh   !<generic parameters of Immutable>OGenericTests.test_setattr_exceptions.<locals>.<generic parameters of Immutable>  s     	0 	0 	0rk   N)r   r   )rf   r?  s   & rh   test_setattr_exceptions$GenericTests.test_setattr_exceptions  s     	0 	in.	:rk   c                   \        R 4      p ! R R\        V,          4      pV P                  V\        ,          P                  R4       V P                  W"\        ,          ,          P                  R4       RW"\        ,          ,          n        V P                  VP                  R4       V P                  V\
        ,          P                  R4       RV\        \
        ,          ,          n        V P                  VP                  R4       V P                  V\        \        ,          ,          P                  R4       V P                  V! 4       P                  R4       V P                  V\        \
        ,          ,          ! 4       P                  R4        ! R RW!,          4      pV P                  V\        ,          P                  R4       V P                  VP                  R4       RVn        R	V\        ,          n        V P                  VP                  R4       V P                  V\        ,          P                  R4       V P                  VP                  R	4       V P                  V\
        ,          P                  R4       R
# )r   c                       ] tR tRtRtRtR# )<GenericTests.test_subscripted_generics_as_proxies.<locals>.Ci  defrl   Nr  rl   rk   rh   r  rF    s    Ark   r  rG  changednewc                       ] tR tRtRtR# )<GenericTests.test_subscripted_generics_as_proxies.<locals>.Di  rl   Nr   rl   rk   rh   r  rK    rw  rk   r  zfrom derived zzfrom derived xN)	r   r$   r   r   r   r  r   r  r   rf   r   r  r  s   &   rh   $test_subscripted_generics_as_proxies1GenericTests.test_subscripted_generics_as_proxies  s   CL	
 	35)S6e,C&	i(39-$s)e$5:%0	*5:**E2	 	39-e$##i(35)./3#34rk   c                F   \        R 4      p ! R R\        P                  P                  \        V,          4      pVP                  \        4       V P                  ^V4       V\        ,           V P                  ^V4       VP                  4        VP                  4        R# )r   c                       ] tR tRtRtR# ).GenericTests.test_abc_registry_kept.<locals>.Ci  rl   Nr   rl   rk   rh   r  rQ    s    crk   r  N)
r   r  r  r6  r$   r}  r   r   r_  _abc_caches_clearr-  s   &  rh   test_abc_registry_kept#GenericTests.test_abc_registry_kept  sm    CL9''9	

3a#	#a#		rk   c                     ! R  R\         \        \        3,          4      pV P                  / V4       V P                  \        V4       R# )c                       ] tR tRtRtR# )5GenericTests.test_false_subclasses.<locals>.MyMappingi  rl   Nr   rl   rk   rh   	MyMappingrW    s    4rk   rX  N)r!   r  r   r   r  )rf   rX  s   & rh   test_false_subclasses"GenericTests.test_false_subclasses  s3    7sCx07  Y/  y1rk   c                ^    ! R  R\         \        \        3,          4      pV! 4       P                  4        V P                  V! 4       \        P
                  P                   4       V P                  V! 4       \         4       V P                  V! 4       \        4       V P                  / V4       R# )c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	'GenericTests.test_abc_bases.<locals>.MMi  c                    R # rb   rl   rf   r>  s   &&rh   rG  3GenericTests.test_abc_bases.<locals>.MM.__getitem__  r  rk   c                    R # rb   rl   rf   r>  r  s   &&&rh   rM  3GenericTests.test_abc_bases.<locals>.MM.__setitem__  r  rk   c                    R # rb   rl   r_  s   &&rh   __delitem__3GenericTests.test_abc_bases.<locals>.MM.__delitem__  r  rk   c                    \        R4      # r=  iterr   s   &rh   r  0GenericTests.test_abc_bases.<locals>.MM.__iter__      Bxrk   c                    ^ # r	  rl   r   s   &rh   __len__/GenericTests.test_abc_bases.<locals>.MM.__len__  r	  rk   rl   Nrm   rn   ro   rp   rG  rM  re  r  rm  rq   rr   rs   s   @rh   MMr]    #       rk   rp  N)r!   r  updater   r  r  r   r   )rf   rp  s   & rh   test_abc_basesGenericTests.test_abc_bases  st    
	S) 
	 	bdKOO$B$BCbdN3  t,  R(rk   c                ^    ! R  R\         \        \        3,          \        P                  P                   4      p ! R R\        P                  P                   \         \        \        3,          4      pV P	                  VP
                  \        P                  P                   \        34       R# )c                       ] tR tRtRtR# )-GenericTests.test_multiple_bases.<locals>.MM1i  rl   Nr   rl   rk   rh   MM1rw    rw  rk   rx  c                       ] tR tRtRtR# )-GenericTests.test_multiple_bases.<locals>.MM2i  rl   Nr   rl   rk   rh   MM2rz    rw  rk   r{  N)r!   r  r  r  r   	__bases__r$   )rf   rx  r{  s   &  rh   test_multiple_bases GenericTests.test_multiple_bases  sg    	.c*KOO,J,J 		+//00.c2J 	)G)G(QRrk   c                    \        R 4      p ! R R\        P                  \        V3,          4      pV P	                  VP
                  \        P                  \        V3,          34       R# )r   c                       ] tR tRtRtR# )'GenericTests.test_orig_bases.<locals>.Ci  rl   Nr   rl   rk   rh   r  r    rs  rk   r  N)r   rc   r    r  r   __orig_bases__r-  s   &  rh   test_orig_basesGenericTests.test_orig_bases  sF    CL)CF#)))FKKQ,?+ABrk   c                V   R  pV P                  V! R^/\        P                  \        \        3,          4      4       V P                  V! ^R/\        P                  \        \        3,          4      4       V P                  \        4      ;_uu_ 4        V! ^R/\        P                  \        \        3,          4       RRR4       R p ! R R\        \        ,          4      pV P                  V! V\        ,          ! 4       V\        ,          4      4       V P                  V! V\        ,          ! 4       V\        ,          4      4       V P                  V! V\        ,          ! 4       \        4      4       V P                  \        4      ;_uu_ 4        V! . ROV\        ,          4       RRR4       R p ! R R\        \        ,          4      pV P                  V! . ROV4      4       V P                  V! R	R
.V4      4       R#   + '       g   i     ELO; i  + '       g   i     Lw; i)c                 <  aa \        VP                  4      ^ 8  d   \        hVP                  '       dh   VP                  w  oo\        ;QJ d.    VV3R lV P                  4        4       F  '       d   K   R# 	  R# ! VV3R lV P                  4        4       4      # R# )r   c              3   h   <"   T F'  w  r\        VS4      ;'       d    \        VS4      x  K)  	  R # 5irb   )r   ).0r>  r  r   r   s   &  rh   	<genexpr>SGenericTests.test_naive_runtime_checks.<locals>.naive_dict_check.<locals>.<genexpr>  s3       + q"%;;*Q*;; +s   22FTN)rP  r  rr  r  allr  )r	  tpr   r   s   &&@@rh   naive_dict_check@GenericTests.test_naive_runtime_checks.<locals>.naive_dict_check  s~    2$$%))){{{Bs  #		ss s s  #		   rk   r   Nc                 P    \        V R 4      '       g   \        hV P                  V8H  # )r  )rb
  rr  r  r	  r  s   &&rh   naive_generic_checkCGenericTests.test_naive_runtime_checks.<locals>.naive_generic_check!  s'    3 011))%%++rk   c                       ] tR tRtRtR# )4GenericTests.test_naive_runtime_checks.<locals>.Nodei&  rl   Nr   rl   rk   rh   Noder  &  r  rk   r  c                 x   a \         ;QJ d    V3R  lV  4       F  '       d   K   R# 	  R# ! V3R  lV  4       4      # )c              3      <"   T F3  p\        VSP                  ^ ,          P                  ^ ,          4      x  K5  	  R# 5ir]  )r   r  r  )r  r   r  s   & rh   r  XGenericTests.test_naive_runtime_checks.<locals>.naive_list_base_check.<locals>.<genexpr>/  s8      % #1 "!R%6%6q%9%B%B1%EFF #s   ;>FT)r  r  s   &frh   naive_list_base_checkEGenericTests.test_naive_runtime_checks.<locals>.naive_list_base_check-  s>    3 % #%33 %3 %3 % #% % %rk   c                       ] tR tRtRtR# )1GenericTests.test_naive_runtime_checks.<locals>.Ci1  rl   Nr   rl   rk   rh   r  r  1  s    Crk   r  rM  r   r  )rW  rc   r    r  r   rX  r   rr  r   r$   r   )rf   r  r  r  r  r  s   &     rh   test_naive_runtime_checks&GenericTests.test_naive_runtime_checks  so   		 	(#q6;;sCx3HIJ)1c(FKKS4IJK233aXv{{36':; 4	,
 	$71:#+DIKcCD,T#Y[$s)DE,T#Y[$?@233	495 4	% 	 S	-i;<.Sz1=>+ 433 43s   +HHH	H(	c                   \        R 4      p\        R4      p\        R4      p ! R R\        V,          V,          V,          4      p ! R RV\        V,          V,          V,          4      pV P                  VP                  V34       V P                  VP                  V34       V P                  V\        ,          P                  R4       V P                  V\        ,          P                  R4       V P                  V\        ,          P
                  \        34       V P                  V\        ,          P
                  \        34       V P                  VP                  \        \        34       V P                  VP                  V\        \        34       V P                  VP                  \        V,          V,          V,          34       V P                  VP                  V\        V,          V,          V,          34       R# )	r   rR  r  c                       ] tR tRtRtR# ).GenericTests.test_multi_subscr_base.<locals>.Ci9  rl   Nr   rl   rk   rh   r  r  9  r  rk   r  c                       ] tR tRtRtR# ).GenericTests.test_multi_subscr_base.<locals>.Di:  rl   Nr   rl   rk   rh   r  r  :  r  rk   r  Nrl   )
r   r   r   r  r   r  r|  r.  r$   r  )rf   r   rR  r  r  r  s   &     rh   test_multi_subscr_base#GenericTests.test_multi_subscr_base5  s^   CLCLCL#Q
1#&471:a=&))A40))A403..33..333&133&1tWo6q$&89))DGAJqM+;<))AtAwqz!}+=>rk   c                ^   \        R 4      p ! R R\        4      pV P                  \        V,          \        V,          4       V P                  \        V\
        3,          V,          \        V\
        3,          4       V P                  \        RV3,          P                  \        V34       R# )r   c                       ] tR tRtRtR# ).GenericTests.test_subscript_meta.<locals>.MetaiH  rl   Nr   rl   rk   rh   Metar  H  s    #rk   r  .N)	r   r   r   r8   r   r   r#   r  Ellipsis)rf   r   r  s   &  rh   test_subscript_meta GenericTests.test_subscript_metaF  su    CL4dT$Z0q#vt,eD#I.>?#t),55$7GHrk   c                    ! R  R\         \        ,          4      p ! R R\         \        ,          4      pV P                  W4       V P                  \        P                  \
        ,          \        P                  \
        ,          4       V P                  VP                  VP                  4       V P                  \        P                  P                  VP                  \
        ,          ,          \        P                  P                  VP                  \
        ,          ,          4       V P                  WP                  4       V P                  V\        P                  4       V P                  V\        P                  P                  4       V P                  VP                  \        P                  4       V P                  VP                  \        P                  P                  4       V P                  V\
        ,          VP                  \
        ,          4       V P                  V\        \        ,          ,          VP                  \        \        ,          ,          4       V P                  V\
        ,          \        P                  \
        ,          4       V P                  V\
        ,          \        P                  P                  \
        ,          4       V P                  VP                  \        ,          \        P                  \        ,          4       V P                  VP                  \        \        ,          ,          \        P                  P                  \        \        ,          ,          4       V P                  \        V\
        ,          ,          \        VP                  \
        ,          ,          4       V P                  \        V\        \        ,          ,          ,          \        VP                  \        \        ,          ,          ,          4       V P                  \        \
        V\
        ,          3,          \        \
        \        P                  \
        ,          3,          4       V P                  \        V\
        ,          V\
        ,          3,          \        V\
        ,          \        P                  \
        ,          3,          4       V P                  \        P                  V\
        ,          ,          \        P                  \        P                  P                  \
        ,          ,          4       V P                  \!        \        V\
        ,          ,          4      R4       V P                  \!        \        VP                  \
        ,          ,          4      R4       V P                  \!        \        \        P                  \
        ,          ,          4      R4       V P                  \!        \        \        P                  P                  \
        ,          ,          4      R4       R# )	c                       ] tR tRtRtR# )+GenericTests.test_generic_hashes.<locals>.AiN  rl   Nr   rl   rk   rh   r  r  N      rk   r  c                   :    ] tR tRt ! R R]],          4      tRtR# )+GenericTests.test_generic_hashes.<locals>.BiQ  c                       ] tR tRtRtR# )-GenericTests.test_generic_hashes.<locals>.B.AiR  rl   Nr   rl   rk   rh   r  r  R      rk   r  rl   N)rm   rn   ro   rp   r$   r   r  rq   rl   rk   rh   r	  r  Q  s    GAJ  rk   r	  z<locals>.A[str]]z<locals>.B.A[str]]zmod_generics_cache.A[str]]zmod_generics_cache.B.A[str]]N)r$   r   r   rW   r  r  r	  r   r   r   r   r   r   rc   	FrozenSetr  r   r  s   &  rh   test_generic_hashes GenericTests.test_generic_hashesM  s   	
 		
 	 	+--c24F4H4H4MNacc"+--//C9+--//C9	; 	Ass#A1334A133556ACC!3!5!56ACC!3!5!5!7!78AcFACCH-Ad3iL!##d3i.9AcF$6$8$8$=>AcF$6$8$8$:$:3$?@ACCH&8&:&:3&?@ACCS	N,>,@,@,B,B49,MNE!C&M5S?;E!DI,/qss49~1FGE#qv+.c;M;O;OPS;T6T0UVE!C&!C&.1!!C&*<*>*>s*C"CD	FF,,QsV4",,-?-A-A-C-CC-HI	K 	Dqv/1CDDqss3x13GHD'9';';C'@!AB8	:D'9';';'='=c'B!CD:	<rk   c                   \        R 4      p\        R4      pV P                  \        W3,          \        ,          \        \        \        3,          4       V P                  \        P
                  \        W3,          ,          V,          \        P
                  \        W3,          ,          4       V P                  \        4      ;_uu_ 4        \        V\        3,          R,           RRR4       V P                  \        V\        3,          \        ,          \        4       V P                  \        W3,          \        \        \        \        3,          3,          \        \        \        3,          4        ! R R4      p ! R RV4      pV P                  \        W3,          \        W43,          ,          \        W43,          4       V P                  \        V.V3,          \        ,          \        \        .\        3,          4       V P                  \        R\        V,          3,          \        ,          \        R\        \        ,          3,          4       R#   + '       g   i     EL~; i)	r   rR  Nc                       ] tR tRtRtR# )9GenericTests.test_extended_generic_rules_eq.<locals>.Basei  rl   Nr   rl   rk   rh   r  r    r  rk   r  c                       ] tR tRtRtR# )<GenericTests.test_extended_generic_rules_eq.<locals>.Derivedi  rl   Nr   rl   rk   rh   Derivedr    rL  rk   r  .rl   )r   r   r   r   rc   r2  r   r   r   r  r#   r   r   )rf   r   rR  r  r  s   &    rh   test_extended_generic_rules_eq+GenericTests.test_extended_generic_rules_eqw  s}   CLCLqtS)5c?;qt5a8&//%PQPT+:VWy))!S&M" * 	q#vs+S1qtS%S/%9:E#s(OL d qwdm(<=uT]?ST1#q&)"-xb/AB#tAw,/4hsDI~6NO *))s   II.	c                j   \        R 4      pV P                  \        \        \        \
        3,          4      P                  RR4      R4       V P                  \        \        \        \        \        ,          3,          4      P                  RR4      R4       V P                  \        \
        R\        V,          3,          \        ,          4      P                  RR4      R4       V P                  \        \
        . \        V,          3,          \        ,          4      P                  RR4      R4       R# )	r   ztyping.r   zTuple | CallablezTuple | Tuple[int].zCallable[..., int | None]zCallable[[], List[int]]N)
r   r   r   r   r   r#   r  r   r   r   r  s   & rh    test_extended_generic_rules_repr-GenericTests.test_extended_generic_rules_repr  s    CLeE8O45==iL+	-eE5:$567??	2N-	/hsHQK'78=>FFyRTU4	6hr47{3C89AA)RP2	4rk   c                R  aa	 R  R lpR R lpR R lp ! R R4      pV P                  \        V\        4       \        4       4      R\        \        V,          ,          /4       V P                  \        V\        4       \        4       4      R\
        \
        V,          ,          /4       V P                  \        V\        4       \        4       4      R\
        V\        ,          ,          \        ,          /4       \        R	4      p\        VR
3,          oV3R lR lpV P                  \        V\        4       \        4       4      R,          S4       \        R
\        V,          3,          o	V	3R lR lpV P                  \        V\        4       \        4       4      R,          S	4       R# )c                H    V ^8  d   QhR\         \         R,          ,          /# r  r   CCr   )r  s   "rh   r  ;GenericTests.test_generic_forward_ref.<locals>.__annotate__  s    ,,d4:&,rk   c                     R # rb   rl   r   s   &rh   foobar5GenericTests.test_generic_forward_ref.<locals>.foobar  s    rk   c                Z    V ^8  d   QhR\         \         \        R4      ,          ,          /# r  r.  rD   )r  s   "rh   r  r    s    99tDD!1239rk   c                     R # rb   rl   r   s   &rh   foobar26GenericTests.test_generic_forward_ref.<locals>.foobar2  rG  rk   c                Z    V ^8  d   QhR\         \        R4      ,          \        ,          /# )r  r   zCC | int)r.  rD   r   )r  s   "rh   r  r    s    ??tJz23c9?rk   c                     R # rb   rl   r   s   &rh   foobar36GenericTests.test_generic_forward_ref.<locals>.foobar3  r.  rk   c                       ] tR tRtRtR# )1GenericTests.test_generic_forward_ref.<locals>.CCi  rl   Nr   rl   rk   rh   r  r    s    #rk   r  r   r   .c                   < V ^8  d   QhRS/# rB  rl   )r  ATs   "rh   r  r        brk   c                     R # rb   rl   r   s   &rh   barfoo5GenericTests.test_generic_forward_ref.<locals>.barfoo  r/  rk   c                   < V ^8  d   QhRS/# rB  rl   )r  CTs   "rh   r  r    s    rrk   c                     R # rb   rl   r   s   &rh   barfoo26GenericTests.test_generic_forward_ref.<locals>.barfoo2  r  rk   N)r   r,   r  r  r   r.  r   r   r   r   r#   )
rf   r  r  r  r  r   r  r  r  r  s
   &       @@rh   test_generic_forward_ref%GenericTests.test_generic_forward_ref  s   ,9?679fh7$tBx.!	
 	7GIvx8$tBx.!	
 	7GIvx8$rCx.3&'	

 CL1c6]nVWYA#FKc47l#nWgiB3GLrk   c           
     L  a  ! R  R4      pV P                  \        V\        4       \        4       4      R\        V,          /4        ! R R4      pV P                  \        V\        4       \        4       4      R\
        V\        \        \        V,          ,          ,          3,          /4       / p\        \        P                  ! R4      V4       VR,          pV P                  VP                  R,          R4       V P                  \        V\        4       \        4       4      R\        \        V,          ,          /4       \        R,          oV3R	 lR
 lpV P                  \        V\        4       \        4       4      R\        \        \        R4      ,          ,          /4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )8GenericTests.test_generic_pep585_forward_ref.<locals>.C1i  c                4   < V ^8  d   Qh/ S[ R,          ;R&   # )r  r  rM  r.  )r  rt   s   "rh   r  EGenericTests.test_generic_pep585_forward_ref.<locals>.C1.__annotate__  s     DzM rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  rM  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )8GenericTests.test_generic_pep585_forward_ref.<locals>.C2i  c                h   < V ^8  d   Qh/ S[ RS[S[S[R,          ,          ,          3,          ;R&   # )r  r  r  rM  )r  r.  r   )r  rt   s   "rh   r  EGenericTests.test_generic_pep585_forward_ref.<locals>.C2.__annotate__  s(     D$tDJ/0011 rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  zf
        from __future__ import annotations
        class C3:
            a: List[list["C2"]]
        r  zList[list['C2']]r  c                   < V ^8  d   QhRS/# rB  rl   )r  r  s   "rh   r  BGenericTests.test_generic_pep585_forward_ref.<locals>.__annotate__  rD  rk   c                     R # rb   rl   r   s   &rh   rg   7GenericTests.test_generic_pep585_forward_ref.<locals>.f  rG  rk   r   N)r   r,   r  r  r.  r  r   r  textwrapdedentrn  rU   )rf   r  r  scoper  rg   r  s   &     @rh   test_generic_pep585_forward_ref,GenericTests.test_generic_pep585_forward_ref  s=   	 	2wy&(3$r(O	

	2 	22wy&(3$r4T"X//01	
 X__   		
 4[++C02DE2wy&(3$tBx.!	
 I1gi2$t-c2345	
rk   c                   \        \        P                  4      p\        \        P                  4      p\        P                  P
                  pV P                  VR ,          V^ ,          4       V P                  VR,          P                  ^ ,          \        V^,          ,          4       V P                  VR,          P                  ^ ,          V^,          4       V P                  \        P                  V4       R# r   r   r  N)
r  rV   rO  r,   r  rX  r   r   r  r   )rf   original_globalshints_for_AA_type_paramss   &   rh   1test_pep695_generic_class_with_future_annotations>GenericTests.test_pep695_generic_class_with_future_annotations  s     6 67$]__5%77k#&a(89S)2215vmA>N7OPk#&//2M!4DE 	//1ABrk   c           	         \        \        P                  4      pV P                  VR \        R\
        R\        /4       R# r  )r,   rV   r	  r   r   r  r  )rf   hints_for_Bs   & rh   Etest_pep695_generic_class_with_future_annotations_and_local_shadowingRGenericTests.test_pep695_generic_class_with_future_annotations_and_local_shadowing  s-    $]__5sCc3&FGrk   c                    \        \        P                  4      pV P                  \	        VP                  4       4      \	        \        P                  P                  4      4       R # rb   )r,   rV   r  r   rQ  valuesrX  )rf   hints_for_Cs   & rh   Mtest_pep695_generic_class_with_future_annotations_name_clash_with_global_varsZGenericTests.test_pep695_generic_class_with_future_annotations_name_clash_with_global_vars  sA    $]__5""$%//0	
rk   c                   \        \        P                  4      p\        P                  P                  pV P	                  VP                  4       0 Rm4       V P                  VR ,          V^ ,          4       V P	                  VR,          \        V^,          ,          4       V P                  VR,          P                  V^,          4       V P                  VR,          P                  V^,          4       R# )r   r   r  zzN>   r   r   r  r	  r#  )	r,   rV   generic_functionrX  r   rD
  r   r   r  )rf   hints_for_generic_functionfunc_t_paramss   &  rh   5test_pep_695_generic_function_with_future_annotationsBGenericTests.test_pep_695_generic_function_with_future_annotations  s    %3M4R4R%S"%66FF&++-/N	
 	05}Q7GH3C8&qAQ:RS05@@-PQBRS06AA=QRCSTrk   c                    V P                  \        \        \        P                  4      P                  4       4      \        \        P                  P                  4      4       R # rb   )r   rQ  r,   rV   generic_function_2r  rX  r   s   &rh   Qtest_pep_695_generic_function_with_future_annotations_name_clash_with_global_vars^GenericTests.test_pep_695_generic_function_with_future_annotations_name_clash_with_global_vars  s@    }??@GGIJ00@@A	
rk   c           	     :   \        \        P                  P                  4      p\        P                  P                  P                   Uu/ uF  pVP
                  VbK  	  ppV P                  VR VR,          RVR,          R\        P                  /4       R# u upi )r   r   r   r   r#  N)	r,   rV   r  generic_methodrX  rm   r   r  NoneType)rf   hints_for_generic_methodparamparamss   &   rh   3test_pep_695_generic_method_with_future_annotations@GenericTests.test_pep_695_generic_method_with_future_annotations  s    #1-//2P2P#Q  '77GG
G NNE!G 	 
 	$&-fUmXu~~N	
	
s   
Bc                    V P                  \        \        \        P                  P
                  4      P                  4       4      \        \        P                  P
                  P                  4      4       R # rb   )r   rQ  r,   rV   r  generic_method_2r  rX  r   s   &rh   Otest_pep_695_generic_method_with_future_annotations_name_clash_with_global_vars\GenericTests.test_pep_695_generic_method_with_future_annotations_name_clash_with_global_vars  sH    }??@GGIJ00@@A	
rk   c                   \         P                  ! 4       pV P                  \        VP                  P                  4       4      \        VP                  P                  4      4       V P                  \        VP                  P                  4       4      \        VP                  P                  P                  4      4       V P                  \        VP                  P                  4       4      \        VP                  P                  4      4       V P                  \        VP                  P                  4       4      P                  VP                  P                  4      \        4       4       V P                  \        VP                  P                  4       4      \        VP                  P                  4      4       R # rb   )rV   nestedr   rQ  hints_for_Er  r  rX  hints_for_E_methr  r   intersectionhints_for_generic_funcgeneric_func)rf   resultss   & rh   @test_pep_695_generics_with_future_annotations_nested_in_functionMGenericTests.test_pep_695_generics_with_future_annotations_nested_in_function  s;   &&(##**,-		))*	
 	((//12		((889	
 	((//12		))*	
 	((//12??		@Y@YZE	

 	..5578$$445	
rk   c                |    ! R  R\         \        \        3,          4      p ! R R\         \        R3,          4      p ! R R\        P                  \        ,          4      pV P                  VP                  \        \        34       V P                  V\        \        3,          P                  \        \        34       V P                  V\        \        3,          P                  V4       V P                  VP                  \        34       V P                  \        V\        ,          4      P                  R4      R
,          R4       V P                  VP                  \        34       V P                  V! 4       \        P                  P                  4       V P!                  V\        P                  P                  4       V P                  V! 4       \"        4       V P!                  V\"        4       V P%                  \&        4      ;_uu_ 4        \)        \         \        R3,          \        P*                  4       R	R	R	4       V P%                  \&        4      ;_uu_ 4        \)        \         \        R3,          \        P,                  4       R	R	R	4       R	#   + '       g   i     Lc; i  + '       g   i     R	# ; i)c                       ] tR tRtRtR# )@GenericTests.test_extended_generic_rules_subclassing.<locals>.T1i&  rl   Nr   rl   rk   rh   r  r+  &  r  rk   r  c                       ] tR tRtRtR# )@GenericTests.test_extended_generic_rules_subclassing.<locals>.T2i'  rl   Nr   rl   rk   rh   r  r-  '  ru  rk   r  .c                   &   a  ] tR tRt o R tRtV tR# )@GenericTests.test_extended_generic_rules_subclassing.<locals>.C1i(  c                    R # )Frl   )rf   items   &&rh   __contains__MGenericTests.test_extended_generic_rules_subclassing.<locals>.C1.__contains__)  s    rk   rl   N)rm   rn   ro   rp   r2  rq   rr   rs   s   @rh   r  r/  (  rc	  rk   r  rQ  zC1[int]Nr  )r   r   r   rc   	Containerr   r  r   r  r  r  r   splitr   r  r  r   rz  r   r   r   Sequencer2  )rf   r  r  r  s   &   rh   'test_extended_generic_rules_subclassing4GenericTests.test_extended_generic_rules_subclassing%  s   #q"u#$q#v$	!!!$ 	 	**QG4CH..c
;CF..3**QD1 	bg,,S1"5yA**QD1bdKOO$=$=>b+//";";<bdE*b%(y))uS#X8 *y))uS#X8 *) *))))s   ,J!,J*J'	*J;	c                   V P                  \        4      ;_uu_ 4        \        \        ,           R R R 4       V P                  \        4      ;_uu_ 4        \        \
        ,           R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        ,          ,           R R R 4       R #   + '       g   i     L; i  + '       g   i     Lg; i  + '       g   i     R # ; irb   )r   r   r   r&   r   r   r%   r   r   s   &rh   test_fail_with_special_forms)GenericTests.test_fail_with_special_formsB  s{    y))K *y))(O *y))# *)	 *))))))s#   B3CC3C	C	C*	c                   \        R 4      pV P                  \        4      ;_uu_ 4        \        \        ,           RRR4       V P                  \        4      ;_uu_ 4        \
        \        V,          ,           RRR4       V P                  \        4      ;_uu_ 4        \        \        P                  ,           RRR4       R#   + '       g   i     L; i  + '       g   i     Lf; i  + '       g   i     R# ; ir  )r   r   r   r   r$   r   rc   r(   r  s   & rh   test_fail_with_bare_generic(GenericTests.test_fail_with_bare_genericJ  s    CLy))M *y))'!* *y))! *)	 *))))))s#   C CC*C	C'	*C;	c                \   \        R 4      pV P                  4         ! R R\        W3,          4      pV P                  V\        ,          ! 4       P
                  V4       V P                  V\        ,          ! 4       P                  V\        ,          4        ! R R\        P                  W3,          4      pV P                  V\        ,          ! 4       P
                  V4       V P                  V\        ,          ! 4       P                  V\        ,          4        ! R R\        P                  \        V3,          4      pV P                  V\        ,          ! 4       P
                  V4       V P                  V\        ,          ! 4       P                  V\        ,          4        ! R R\        P                  \        V3,          4      pV P                  V\        ,          ! 4       P
                  V4       V P                  V\        ,          ! 4       P                  V\        ,          4       R	# )
r   c                       ] tR tRtRtR# )5GenericTests.test_type_erasure_special.<locals>.MyTupiW  rl   Nr   rl   rk   rh   MyTuprA  W      #rk   rB  c                       ] tR tRtRtR# )6GenericTests.test_type_erasure_special.<locals>.MyDictiZ  rl   Nr   rl   rk   rh   MyDictrE  Z  ry  rk   rF  c                       ] tR tRtRtR# )5GenericTests.test_type_erasure_special.<locals>.MyDefi]  rl   Nr   rl   rk   rh   MyDefrH  ]  s    rk   rI  c                       ] tR tRtRtR# )7GenericTests.test_type_erasure_special.<locals>.MyChaini`  rl   Nr   rl   rk   rh   MyChainrK  `  s    rk   rL  N)r   ri   r   r   r   r   r   r  rc   r    DefaultDictr  ChainMap)rf   r   rB  rF  rI  rL  s   &     rh   test_type_erasure_special&GenericTests.test_type_erasure_specialS  sL   CL%E!$K%eCjl,,e4s44eCjA,V[[&,fSkm--v655vc{C4F&&sAv.4eCjl,,e4s44eCjA3fooc1f-3gcln..866Erk   c                   R  \         P                   4       pV EF   pV P                  \        V4      R4       V P	                  W"4       \        VRR4      '       d   \        V\         P                  4      '       gg   \        VP                  \        4      '       dG   \        VP                  4      ^8X  d-   V P	                  V\        ,          P                  \        34       \        V\        4      '       g   K  VP                   F/  pV P                  \        V4      R4       V P	                  W34       K1  	  EK#  	  R# )c              3   B   "   T F  p\        \        V4      x  K  	  R # 5irb   )getattrrc   )r  els   & rh   r  4GenericTests.test_all_repr_eq_any.<locals>.<genexpr>e  s     =n##ns   r   r  N)rc   __all__r   r   r   rS  r   r   r  rz  rP  r   r  r   r,  )rf   objsr	  bases   &   rh   test_all_repr_eq_any!GenericTests.test_all_repr_eq_anyd  s    =fnn=CS	2.S&-t44&sFNN;;"3#5#5u==C../14  S!2!2SF;#t$$KKD''T
B7$$T0 ( rk   c                   \        R 4      p ! R R\        V,          4      p ! R RV\        ,          4      s\        4       p^*Vn        RVn        \        \        P                  ^,           4       F  p\        P                  ! W44      p\        P                  ! V4      pV P                  VP                  ^*4       V P                  VP
                  R4       V P                  VP                  R^*RR/4       K  	  \        \        \        \         \"        \        \        \$        3,          \"        \&        ,          \        \        R3,          \        R,          \         \$        .\(        3,          \*        P,                  \*        P.                  \        ,          .pV Fg  p\        \        P                  ^,           4       F@  p\        P                  ! W4      p\        P                  ! V4      pV P                  W4       KB  	  Ki  	  \&        \*        P0                  \*        P2                  \&        \        ,          \*        P2                  \*        P4                  ,          \*        P6                  \        \        \$        3,          ,          .p	V	 Fg  p\        \        P                  ^,           4       F@  p\        P                  ! W4      p\        P                  ! V4      pV P                  W4       KB  	  Ki  	  \9        R	4      s\:        P<                  \:        P>                  3 F  p
\        \        P                  ^,           4       F`  pV PA                  WR
7      ;_uu_ 4        V P                  \        P                  ! \        P                  ! W4      4      V
4       RRR4       Kb  	  K  	  @R#   + '       g   i     K|  ; i)r   c                       ] tR tRtRtR# )#GenericTests.test_pickle.<locals>.Biw  rl   Nr   rl   rk   rh   r	  r]  w  rw  rk   r	  c                       ] tR tRtRtR# )r  iz  rl   Nr   rl   rk   rh   r  r  z  rw  rk   r  r  rk  rc  .PP)r  rz   Nrl   )!r   r$   r   r  rk  rc  r{   r|   r}   r  r  r   rO  r   r   r   r#   r%   r  r   r  rc   rM  r  r2  r8   r6  AbstractSetrH   r_  r   r   r~   )rf   r   r	  r7  rz   r  r   r  r   more_samplesr  s   &          rh   r  GenericTests.test_pickles  s   CL	
 		# 	 C622Q67EQ&AQAQUUB'QUUE*QZZ%UE)BC 8 uhc?HTNE#s(OU2YSE5L)%%v'7'7'<> Av66:;LL*LLO  & < 
 foov{{DIFNN3V5G5GcSVh5XZAv66:;LL*LLO  & <  t_ggryy)Ev66:;\\\;;$$V\\%%?@ <; < *  <;;s   #;N1	1Oc                T   \        R 4      p ! R R\        V,          4      p\        V\        3,          \        V\        3,          \        R,          \
        RV3,          \
        \        .\        3,          \        \        \        3,          W!,          V\        ,          V\        ,          \        P                  V,          \        P                  \        ,          \        P                  \        ,          \        P                  \        \        3,          \        P                  V\        3,          \        \        ,          \        \        V,          ,          \        R,          \        R \        3,          \        R ,          \        P                  R \        3,          \        R,          \        .pV F\  pV P                  VR7      ;_uu_ 4        V P                  V\!        V4      4       V P                  V\#        V4      4       RRR4       K^  	  R#   + '       g   i     Ks  ; i)	r   c                       ] tR tRtRtR# )1GenericTests.test_copy_and_deepcopy.<locals>.Nodei  rl   Nr   rl   rk   rh   r  re    r  rk   r  .r  Nrl   )r   r   )   x   y)r   r$   r   r   r   r#   r   rc   r2  r    r  r%   r   r6  r~   r   r   r   )rf   r   r  thingsr  s   &    rh   test_copy_and_deepcopy#GenericTests.test_copy_and_deepcopy  sG   CL#71:#3-q#vb	36"HcUCZ$8S/47DItCy&//RSBT//#&(<fkk#s(>S++af%x}htAw6GxS/49fnnS#X.F
#S* AA&&  DG,  HQK0 '& &&&s   7HH'c                >   \        R 4      s\        R\        R7      s\        R\        \
        4      s\        R4      s\        \        \        \        \        \        P                  \        \        P                  \        \        \         \"        3 F  pV P%                  VR7      ;_uu_ 4        V P'                  \)        V4      V4       V P'                  \+        V4      V4       \-        \.        P0                  ^,           4       F=  pV P'                  \.        P2                  ! \.        P4                  ! W4      4      V4       K?  	  RRR4       K  	  @@@@\        R4      p\        R\        R7      p\        R	\        \
        4      p\        R
4      pW4WV3 F\  pV P%                  VR7      ;_uu_ 4        V P'                  \)        V4      V4       V P'                  \+        V4      V4       RRR4       K^  	  R#   + '       g   i     EKy  ; i  + '       g   i     K  ; i)rn  TPBr  TPVr_  rf  NTLTLBTLVPL)r   rn  r   rm  r  r  rn  rH   r_  r   rc   r6  r%   r2  r   r   r   r#   r~   r   r   r   r{   r|   r}   r  r  )rf   r  rz   ro  rp  rq  rr  s   &      rh   $test_immutability_by_copy_and_pickle1GenericTests.test_immutability_by_copy_and_pickle  sv    T]e3'eUC(t_c3&//eX/A A&&d1gq)hqk1-"6#:#:Q#>?EMM&,,v||A/E"FJ @ '&/ S" T]e3'eUC(t_3#AA&&d1gq)hqk1- '& $ '&& '&&s   ,BG617H6HHc                  a \        R 4      o ! V3R lR\        S,          4      pV! ^*4      pV P                  \        V4      P                  ^*4       V P                  \        V4      P                  ^*4       V P                  \        V4      V4       V P                  \        V4      V4       ^Vn        V P                  \        V4      P                  ^4       V P                  \        V4      P                  ^4       V\        ,          ! ^*4      pV P                  \        V4      P                  ^*4       V P                  \        V4      P                  ^*4       V P                  \        V4      V4       V P                  \        V4      V4       ^Vn        V P                  \        V4      P                  ^4       V P                  \        V4      P                  ^4       V P                  VP                  V\        ,          4       R# )r   c                   6   <a  ] tR tRt o VV 3R lR ltRtV tR# )3GenericTests.test_copy_generic_instances.<locals>.Ci  c                $   < V ^8  d   QhRSZRR/# )r  r  r#  Nrl   )r  r   rt   s   "rh   r  @GenericTests.test_copy_generic_instances.<locals>.C.__annotate__  s     ! !Q !4 !rk   c                    Wn         R # rb   r	  r  s   &&rh   r   <GenericTests.test_copy_generic_instances.<locals>.C.__init__  r	  rk   r	  Nr   r(	  s   @rh   r  rw    s     ! !rk   r  N)	r   r$   r   r   r  r   rB
  r   r  )rf   r  r7  cir   s   &   @rh   test_copy_generic_instances(GenericTests.test_copy_generic_instances  st   CL	!
 	! bEar*!))2.a!$!a(aq)!))1-sVBZb+"**B/b2&"r*b*"**A.**AcF3rk   c           	        \        R 4      p\        \        V\        3,          \        RV3,          \
        \        \        3,          \        \        \        ,          ,          \        P                  \        \        3,          \        P                  \        ,          \        P                  R,          .pV F.  pV P                  \        P                   ! V4      ! 4       V4       K0  	  R# )r   .whateverN)r   r   r   r   r#   r   r   r   rc   r6  r  rB   r  r2  r   r:  r  )rf   r   ri  r  s   &   rh   test_weakref_allGenericTests.test_weakref_all  s    CLuQV}hsAv&6c3h49%v~~c3h'?,,u%vz'BD AW[[^-q1 rk   c                  a \        R 4      p ! R R\        V,          4      oS! 4       pS\        ,          ! 4       p^ Vn        ^ Vn        V P	                  \
        4      ;_uu_ 4        ^ Vn        RRR4       V P	                  \
        4      ;_uu_ 4        ^ Vn        RRR4       V3R lR lpV P                  \        V\        4       \        4       4      R,          SS,          4       V P                  \        S\        ,          4      \        S\        ,          4      4       R#   + '       g   i     L; i  + '       g   i     L; i)r   c                       ] tR tRtRtRtR# )0GenericTests.test_parameterized_slots.<locals>.Ci  rl   N)potator	  rl   rk   rh   r  r    s    #Irk   r  Nc                ,   < V ^8  d   QhRSR,          /# )r  r   r  rl   )r  r  s   "rh   r  ;GenericTests.test_parameterized_slots.<locals>.__annotate__  s    1S6rk   c                     R # rb   rl   r   s   &rh   rk  2GenericTests.test_parameterized_slots.<locals>.foo  r  rk   r   )r   r$   r   r  r   r  tomator   r,   r  r  r   r   )rf   r   r7  c_intrk  r  s   &    @rh   test_parameterized_slots%GenericTests.test_parameterized_slots  s    CL	$
 	$ C#~..AH /~..EL / 	 WYA#F!Mafx#'78 /...s   'D$D7$D4	7E	c                   \        R 4      p ! R R\        V,          4      pV! 4       pV\        ,          ! 4       pRVn        RVn        V P	                  \
        4      ;_uu_ 4        RVn        RRR4       V P	                  \
        4      ;_uu_ 4        RVn        RRR4       R#   + '       g   i     L?; i  + '       g   i     R# ; i)r   c                       ] tR tRtR^*/tRtR# )5GenericTests.test_parameterized_slots_dict.<locals>.Di  bananarl   Nr	  rl   rk   rh   r  r    s    !2Irk   r  yesrj	  N)r   r$   r   r  r   r  r  )rf   r   r  r8  d_ints   &    rh   test_parameterized_slots_dict*GenericTests.test_parameterized_slots_dict  s    CL	'
 	' C#~..AH /~..EL /. /....s   &B%B8%B5	8C		c                    V P                  \        4      ;_uu_ 4        \        \        \        3,          p ! R  R\
        V,          4      pRRR4       R#   + '       g   i     R# ; i)c                       ] tR tRtRtR# )#GenericTests.test_errors.<locals>.Ci  rl   Nr   rl   rk   rh   r  r    r  rk   r  N)r   r   r@  r=  r   r$   )rf   r	  r  s   &  rh   r   GenericTests.test_errors  s@    y))b#g&AGAJ  *)))r[  c                    ! R  R\         \        ,          4      pV P                  VP                  \        4       V P                  VP
                  R4       V\        ,          pV P                  VP                  \        4       V P                  \        V4      P                  R4      R	,          R4        ! R RV\        ,          4      pV P                  VP                  \        4       V P                  VP
                  R4       R# )
c                       ] tR tRtRtR# )#GenericTests.test_repr_2.<locals>.Ci  rl   Nr   rl   rk   rh   r  r    rw  rk   r  r  rQ  zC[int]c                       ] tR tRtRtR# )#GenericTests.test_repr_2.<locals>.Yi"  rl   Nr   rl   rk   rh   r  r  "  rw  rk   r  r  Nr  )	r$   r   r   rn   rm   ro   r   r   r5  )rf   r  r  r  s   &   rh   test_repr_2GenericTests.test_repr_2  s    	
 	 	x0>	@cFx0as+B/:	# 	 	x0>	@rk   c                >   \        R 4      p\        R4      p\        R4      p\        R4      p\        R4      p ! R R\        W13,          4      p ! R R\        W4V3,          4      p ! R	 R
\        . VOVN5,          4      pWcV3,          RV\        W#3,          V3,          RV. \
        3,          RV\        .\
        3,          RV\        \        .\
        3,          RV\        \        \        ,          .\
        3,          RV\        . VOVN5,          V3,          RWtW13,          RV\        .\        .\
        3,          RV\        \        .\        \        .\
        3,          RV. VOVN5,          RV\        \        \        \        ,          . 3,          RV\        \        \        \        ,          .3,          RV\        . VOVN5,          \        3,          \        \        \
        \        .3,          R/p	V	P                  4        F|  w  rV P                  WR7      ;_uu_ 4        V P                  \        V
4      R\        P                  ! VP                   4       R\        P                  ! V4       R24       RRR4       K~  	  R#   + '       g   i     K  ; i)r   r  rb  r  rp  c                       ] tR tRtRtR# ),GenericTests.test_repr_3.<locals>.MyCallablei0  rl   Nr   rl   rk   rh   
MyCallabler  0  rw  rk   r  c                       ] tR tRtRtR# ),GenericTests.test_repr_3.<locals>.DoubleSpeci3  rl   Nr   rl   rk   rh   
DoubleSpecr  3  rw  rk   r  c                       ] tR tRtRtR# )%GenericTests.test_repr_3.<locals>.TsPi6  rl   Nr   rl   rk   rh   TsPr  6  rw  rk   r  zMyCallable[~P, ~T]z+MyCallable[typing.Concatenate[~T1, ~P], ~T]zMyCallable[[], bool]zMyCallable[[int], bool]zMyCallable[[int, str], bool]z"MyCallable[[int, list[int]], bool]z9MyCallable[typing.Concatenate[typing.Unpack[Ts], ~P], ~T]zDoubleSpec[~P2, ~P, ~T]zDoubleSpec[[int], [str], bool]z(DoubleSpec[[int, int], [str, str], bool]zTsP[typing.Unpack[Ts], ~P]zTsP[int, str, list[int], []]zTsP[int, [str, list[int]]]z(MyCallable[[int, str, bool, float], int])r	  expected_repr^z.*\.$N)r   rH   r   r$   rI   r  r   r  r.  r  r  r~   assertRegexr   r  r  rn   )rf   r   r  rb  r  rp  r  r  r  object_to_expected_reprr	  r  s   &           rh   test_repr_3GenericTests.test_repr_3)  s5   CLT]cNt_$	 		* 		'&2&q&/ 	 !t6J{25)1,-6cr4x 6Lud{#6OSz4'(6TT#Y'-.6Z{6B66*A-.6q1x 6OuseT)*6VSzC:t346`QK6RS$s)R'(6Tc49%%&6R {6B66*C/0cD%=1HI6`'#
, #:"?"?"AC#CC  I:#8#89:$ryy?W>XXYZ DC #BCCCs   (AJJc                    V P                  \        \        4       V P                  \        \        ,          \        \        ,          4       V P                  \        \        ,          \        \
        ,          4       R # rb   )r   r$   r   r   r   r   r   s   &rh   	test_eq_1GenericTests.test_eq_1V  sB    '*WQZ0GBK5rk   c                R    ! R  R\         \        ,          4      p ! R R\         \        ,          4      pV P                  W4       V P                  W4       V P                  V\        ,          V\        ,          4       V P                  V\        ,          V\        ,          4       R# )c                       ] tR tRtRtR# )!GenericTests.test_eq_2.<locals>.Ai]  rl   Nr   rl   rk   rh   r  r  ]  rw  rk   r  c                       ] tR tRtRtR# )!GenericTests.test_eq_2.<locals>.Bi`  rl   Nr   rl   rk   rh   r	  r  `  rw  rk   r	  N)r$   r   r   r   r  s   &  rh   	test_eq_2GenericTests.test_eq_2[  sp    	
 		
 	 	A!1qt$AaD!A$'rk   c           	     n    ! R  R\         \        \        3,          4      p ! R R\         \        \        3,          4      p ! R RV\        \        3,          \         \        \        \        3,          V\        \        3,          4      pV P	                  VP
                  \        \        \        34       R# )c                       ] tR tRtRtR# )1GenericTests.test_multiple_inheritance.<locals>.Aij  rl   Nr   rl   rk   rh   r  r  j  rw  rk   r  c                       ] tR tRtRtR# )1GenericTests.test_multiple_inheritance.<locals>.Bim  rl   Nr   rl   rk   rh   r	  r  m  rw  rk   r	  c                       ] tR tRtRtR# )1GenericTests.test_multiple_inheritance.<locals>.Cip  rl   Nr   rl   rk   rh   r  r  p  rw  rk   r  N)r$   r   r   r   r   r  )rf   r  r	  r  s   &   rh   test_multiple_inheritance&GenericTests.test_multiple_inheritanceh  ss    	2 		A 		!R%'"a),aAh 	 	))B2;7rk   c                    \        R 4      p ! R R\        V,          4      p ! R R\        \        ,          V4      pV P	                  VP
                  V\        V\        \        34       R# )r
  c                       ] tR tRtRtR# )9GenericTests.test_multiple_inheritance_special.<locals>.Biw  rl   Nr   rl   rk   rh   r	  r  w  rL  rk   r	  c                       ] tR tRtRtR# )9GenericTests.test_multiple_inheritance_special.<locals>.Cix  rl   Nr   rl   rk   rh   r  r  x  s    srk   r  N)r   r$   r   r   r   r,  r.  r  )rf   r
  r	  r  s   &   rh   !test_multiple_inheritance_special.GenericTests.test_multiple_inheritance_specialu  sD    CL 
 "S	1"Qa&$ABrk   c                     ! R  R4      p ! R R\         \        ,          V! 4       4      pV P                  VP                  V\        \
        \        34       R# )c                   &   a  ] tR tRt o R tRtV tR# )YGenericTests.test_multiple_inheritance_non_type_with___mro_entries__.<locals>.GoodEntriesi|  c                    \         3# rb   r  rf   basess   &&rh   __mro_entries__iGenericTests.test_multiple_inheritance_non_type_with___mro_entries__.<locals>.GoodEntries.__mro_entries__}  s
    y rk   rl   Nrm   rn   ro   rp   r  rq   rr   rs   s   @rh   GoodEntriesr  |  r
  rk   r  c                       ] tR tRtRtR# )OGenericTests.test_multiple_inheritance_non_type_with___mro_entries__.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    r  rk   r  N)r   r   r   r,  r.  r$   r  )rf   r  r  s   &  rh   7test_multiple_inheritance_non_type_with___mro_entries__DGenericTests.test_multiple_inheritance_non_type_with___mro_entries__{  s;    	! 	! 	/S	;=.Qgv$>?rk   c           	         V P                  \        R 4      ;_uu_ 4         ! R R\        \        ,          \	        4       4      pRRR4       R#   + '       g   i     R# ; i)^bases must be typesc                       ] tR tRtRtR# )RGenericTests.test_multiple_inheritance_non_type_without___mro_entries__.<locals>.Ai  rl   Nr   rl   rk   rh   r  r        #rk   r  N)r
  r   r   r   r  r  s   & rh   :test_multiple_inheritance_non_type_without___mro_entries__GGenericTests.test_multiple_inheritance_non_type_without___mro_entries__  s6    ##I/FGG-DIvx- HGGGs   $AA	c           	          ! R  R4      pV P                  \        R4      ;_uu_ 4         ! R R\        \        ,          V! 4       4      pRRR4       R#   + '       g   i     R# ; i)c                   &   a  ] tR tRt o R tRtV tR# )WGenericTests.test_multiple_inheritance_non_type_bad___mro_entries__.<locals>.BadEntriesi  c                    R # rb   rl   r  s   &&rh   r  gGenericTests.test_multiple_inheritance_non_type_bad___mro_entries__.<locals>.BadEntries.__mro_entries__  r  rk   rl   Nr  rs   s   @rh   
BadEntriesr    r  rk   r  z$^__mro_entries__ must return a tuplec                       ] tR tRtRtR# )NGenericTests.test_multiple_inheritance_non_type_bad___mro_entries__.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    r  rk   r  Nr
  r   r   r   rf   r  r  s   &  rh   6test_multiple_inheritance_non_type_bad___mro_entries__CGenericTests.test_multiple_inheritance_non_type_bad___mro_entries__  sN    	 	
 ##3
 
 2DIz|1	
 
 
 
   !AA%	c           	          ! R  R4      pV P                  \        R4      ;_uu_ 4         ! R R\        \        ,          V! 4       4      pRRR4       R#   + '       g   i     R# ; i)c                   &   a  ] tR tRt o R tRtV tR# )[GenericTests.test_multiple_inheritance___mro_entries___returns_non_type.<locals>.BadEntriesi  c                    \        4       3# rb   r  r  s   &&rh   r  kGenericTests.test_multiple_inheritance___mro_entries___returns_non_type.<locals>.BadEntries.__mro_entries__  s    {"rk   rl   Nr  rs   s   @rh   r  r    s     # #rk   r  r  c                       ] tR tRtRtR# )RGenericTests.test_multiple_inheritance___mro_entries___returns_non_type.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    r  rk   r  Nr  r  s   &  rh   :test_multiple_inheritance___mro_entries___returns_non_typeGGenericTests.test_multiple_inheritance___mro_entries___returns_non_type  sN    	# 	#
 ###
 
 2DIz|1	
 
 
 
r  c                     ! R  R\         P                  \        \        ,          4      pV P	                  VP
                  V\        P                  P                  \        \        \        34       R# )c                       ] tR tRtRtR# )CGenericTests.test_multiple_inheritance_with_genericalias.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    r  rk   r  N)
rc   r^  r.  r   r   r,  r  r  r$   r  r  s   & rh   +test_multiple_inheritance_with_genericalias8GenericTests.test_multiple_inheritance_with_genericalias  sA    -d3i-II%%wf=	
rk   c                   \        R 4      p ! R R\        P                  V,          4      p ! R R\        V,          W!,          4      pV P	                  VP
                  V\        V\        P                  P                  \        P                  P                  \        P                  P                  \        P                  P                  \        P                  P                  \        P                  P                  \        \        34       R# )r   c                       ] tR tRtRtR# )KGenericTests.test_multiple_inheritance_with_genericalias_2.<locals>.BaseSeqi  rl   Nr   rl   rk   rh   BaseSeqr     r  rk   r  c                       ] tR tRtRtR# )IGenericTests.test_multiple_inheritance_with_genericalias_2.<locals>.MySeqi  rl   Nr   rl   rk   rh   MySeqr    r  rk   r  N)r   rc   r6  r   r   r,  r.  r  r  r  
Collectionr^  r2  r4  r$   r  )rf   r   r  r  s   &   rh   -test_multiple_inheritance_with_genericalias_2:GenericTests.test_multiple_inheritance_with_genericalias_2  s    CL.fooa(.-DGWZ-MM((****%%(())	
rk   c                  aa  ! R  R\         4      o ! VV3R lR4      o ! R R\        \        ,          S4      pV P                  S4      ;_uu_ 4         ! R RV4      pRRR4       V P                  S4      ;_uu_ 4         ! R	 R
V\        ,          4      pRRR4       R#   + '       g   i     LJ; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# )DGenericTests.test_init_subclass_super_called.<locals>.FinalExceptioni  rl   Nr   rl   rk   rh   FinalExceptionr
    rw  rk   r  c                   D   <a a ] tR tRt oV3R lVVV 3R lltRtVtV ;t# );GenericTests.test_init_subclass_super_called.<locals>.Finali  c                   < V ^8  d   QhRR/# r  rl   )r  rt   s   "rh   r  HGenericTests.test_init_subclass_super_called.<locals>.Final.__annotate__  s     4 4D 4rk   c                   < V P                    F%  pVSJg   K  \        VS4      '       g   K  S! V4      h	  \        SV `  ! R/ VB  R # r=  )r|  r   r   r  )r9  r   rX  r&   r  r   s   &, rh   r  MGenericTests.test_init_subclass_super_called.<locals>.Final.__init_subclass__  sB    MMD5(Ze-D-D,T22 * )3F3rk   rl   r  )r   rt   r&   r  s   @@rh   r&   r    s     4 4 4rk   r&   c                       ] tR tRtRtR# ):GenericTests.test_init_subclass_super_called.<locals>.Testi  rl   Nr   rl   rk   rh   r  r    rw  rk   r  c                       ] tR tRtRtR# )>GenericTests.test_init_subclass_super_called.<locals>.Subclassi  rl   Nr   rl   rk   rh   Subclassr    r  rk   r  Nc                       ] tR tRtRtR# )?GenericTests.test_init_subclass_super_called.<locals>.Subclass2i  rl   Nr   rl   rk   rh   	Subclass2r    r  rk   r  )r  r$   r   r   r   )rf   r  r  r  r&   r  s   &   @@rh   test_init_subclass_super_called,GenericTests.test_init_subclass_super_called  s    	Y 		4 	4	71:u 	~..4  / ~..DI  /. /. /..s   B"B5"B2	5C	c                P   \         p ! R  RV\        ,          4      pV\        P                  \        ,          ,          p ! R RV4      pV! 4       pVP                  . 4       VP                  ^4       VP                  ^*4       V P                  VP                  4       ^^*.4       R# )c                   N   a  ] tR tRt o RtV 3R lR ltR tV 3R lR ltRtV t	R# )	)GenericTests.test_nested.<locals>.Visitori  Nc                    < V ^8  d   QhRS[ /# r5  r  )r  rt   s   "rh   r  6GenericTests.test_nested.<locals>.Visitor.__annotate__  s      Q rk   c                    Wn         R # rb   r  rf   rM  s   &&rh   rQ  -GenericTests.test_nested.<locals>.Visitor.set  r   rk   c                    V P                   # rb   r  r   s   &rh   rR  -GenericTests.test_nested.<locals>.Visitor.get      vvrk   c                    < V ^8  d   QhRS[ /# r`  r  )r  rt   s   "rh   r  r     s      q rk   c                    V P                   # rb   r  r   s   &rh   visit/GenericTests.test_nested.<locals>.Visitor.visit  r&  rk   r  )
rm   rn   ro   rp   rM  rQ  rR  r)  rq   rr   rs   s   @rh   Visitorr    s#     A  rk   r+  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )0GenericTests.test_nested.<locals>.IntListVisitori  c                    < V ^8  d   QhRS[ /# rB  rL  )r  rt   s   "rh   r  =GenericTests.test_nested.<locals>.IntListVisitor.__annotate__  s     ! ! !rk   c                <    V P                   P                  V4       R # rb   )rM  r  r   s   &&rh   r  7GenericTests.test_nested.<locals>.IntListVisitor.append  s    a rk   rl   N)rm   rn   ro   rp   r  rq   rr   rs   s   @rh   IntListVisitorr-    s     ! !rk   r2  N)	r$   r   rc   r   r   rQ  r  r   rR  )rf   r  r+  r  r2  rM  s   &     rh   test_nestedGenericTests.test_nested  s}    	ad 	 FKK$%	!Q 	!
 	b			1b'*rk   c                   a aa \        R 4      o ! V3R lR\        S,          4      oV3R lVVV 3R llpV! ^*4       R# )r   c                   :   <a  ] tR tRt o RVV 3R lR lltRtV tR# ),GenericTests.test_type_erasure.<locals>.Nodei  Nc                (   < V ^8  d   QhRSZRRRR/# )r  rs  leftNode[T]rightrl   )r  r   rt   s   "rh   r  9GenericTests.test_type_erasure.<locals>.Node.__annotate__  s$     # #a #(# )#rk   c                *    Wn         W n        W0n        R # rb   rs  r9  r;  )rf   rs  r9  r;  s   &&&&rh   r   5GenericTests.test_type_erasure.<locals>.Node.__init__  s     #
 	"
rk   r>  NNr   r(	  s   @rh   r  r7    s     # # #rk   r  c                   < V ^8  d   QhRS/# rB  rl   )r  r   s   "rh   r  4GenericTests.test_type_erasure.<locals>.__annotate__  s     		) 		)1 		)rk   c                   < S! V 4      pSS,          ! V 4      pS\         ,          ! V 4      pSP                  \        V4      S4       SP                  \        V4      S4       SP                  \        V4      S4       SP                  VP                  V 4       SP                  VP                  V 4       SP                  VP                  V 4       R # rb   )r   r   r   r   rs  )r   rM  r   r7  r  r   rf   s   &   rh   rk  +GenericTests.test_type_erasure.<locals>.foo  s    QAQ
AS	!AMM$q'4(MM$q'4(MM$q'4(QWWa(QWWa(QWWa(rk   Nr   r$   )rf   rk  r  r   s   f @@rh   r  GenericTests.test_type_erasure  s/    CL	#71: 	#		) 		) 	Brk   c                2   \        R 4      p ! R R\        V,          4      p ! R RV4      pV P                  VP                  R4       V P	                  \
        4      ;_uu_ 4        V\        ,           RRR4       V P	                  \
        4      ;_uu_ 4        V\        ,           RRR4       V P	                  \
        4      ;_uu_ 4        W1,           RRR4       R#   + '       g   i     Ls; i  + '       g   i     LS; i  + '       g   i     R# ; i)r   c                       ] tR tRtRtR# ))GenericTests.test_implicit_any.<locals>.Ci  rl   Nr   rl   rk   rh   r  rI    rw  rk   r  c                       ] tR tRtRtR# ))GenericTests.test_implicit_any.<locals>.Di  rl   Nr   rl   rk   rh   r  rK    rw  rk   r  Nrl   )r   r$   r   r  r   r   r   r   rL  s   &   rh   test_implicit_anyGenericTests.test_implicit_any	  s    CL	
 		 	 	))2.y))cF *y))cF *y))D *)	 *))))))s$   &CC2	DC/	2D	D	c                     ! R  R\         \        ,          4      p ! R R4      p ! R RW4      pV! R4      pV P                  VP                  R4       R# )c                       ] tR tRtRtR# )*GenericTests.test_new_with_args.<locals>.Ai  rl   Nr   rl   rk   rh   r  rP    rw  rk   r  c                   2   a a ] tR tRt oV 3R ltRtVtV ;t# )*GenericTests.test_new_with_args.<locals>.Bi   c                2   < \         SV `  V 4      pWn        V# rb   )r   r
  r"  r9  r"  r	  r   s   && rh   r
  2GenericTests.test_new_with_args.<locals>.B.__new__!  s    goc*
rk   rl   r
  r   s   @@rh   r	  rR           rk   r	  c                       ] tR tRtRtR# )*GenericTests.test_new_with_args.<locals>.Ci(  rl   Nr   rl   rk   rh   r  rX  (  rw  rk   r  rk  N)r$   r   r   r"  rf   r  r	  r  r7  s   &    rh   test_new_with_argsGenericTests.test_new_with_args  sG    	
 		 		 	 eH&rk   c                     ! R  R4      p ! R R\         \        ,          V4      pV! R4      pV P                  VP                  R4       V P                  VP                  R4       R# )c                   2   a a ] tR tRt oV 3R ltRtVtV ;t# )+GenericTests.test_new_with_args2.<locals>.Ai0  c                0   < Wn         \        SV `	  4        R # rb   )from_ar   r   rf   r"  r   s   &&rh   r   4GenericTests.test_new_with_args2.<locals>.A.__init__1  s    ! "rk   )r`  r   r   s   @@rh   r  r^  0  s     # #rk   r  c                   2   a a ] tR tRt oV 3R ltRtVtV ;t# )+GenericTests.test_new_with_args2.<locals>.Ci7  c                2   < Wn         \        SV `	  V4       R # rb   )from_cr   r   ra  s   &&rh   r   4GenericTests.test_new_with_args2.<locals>.C.__init__8  s    ! %rk   )rf  r   r   s   @@rh   r  rd  7  s     & &rk   r  rk  N)r$   r   r   r`  rf  )rf   r  r  r7  s   &   rh   test_new_with_args2 GenericTests.test_new_with_args2.  sQ    	# 	#	&
A 	& eH5)5)rk   c                    ! R  R\         \        ,          4      pV P                  \        4      ;_uu_ 4        V! R4       RRR4        ! R R4      p ! R RW4      pV! R4      pV P	                  VP
                  R4       V P	                  VP                  R4       V P	                  VP                  R	4       R#   + '       g   i     L; i)
c                       ] tR tRtRtR# )(GenericTests.test_new_no_args.<locals>.AiC  rl   Nr   rl   rk   rh   r  rl  C  rw  rk   r  rk  Nc                   2   a a ] tR tRt oV 3R ltRtVtV ;t# )(GenericTests.test_new_no_args.<locals>.BiI  c                4   < \         SV `  V 4      pR Vn        V# )r   )r   r
  from_b)r9  r	  r   s   & rh   r
  0GenericTests.test_new_no_args.<locals>.B.__new__J      goc* 

rk   rl   r
  r   s   @@rh   r	  rn  I  rV  rk   r	  c                   8   a a ] tR tRt oR tV 3R ltRtVtV ;t# )(GenericTests.test_new_no_args.<locals>.CiQ  c                    Wn         R # rb   r&  r  s   &&rh   r   1GenericTests.test_new_no_args.<locals>.C.__init__R  s    rk   c                4   < \         SV `  V 4      pR Vn        V# )r7  )r   r
  rf  rT  s   && rh   r
  0GenericTests.test_new_no_args.<locals>.C.__new__U  rr  rk   r&  )	rm   rn   ro   rp   r   r
  rq   rr   r   r   s   @@rh   r  rt  Q  s      rk   r  r   r7  )r$   r   r   r   r   r"  rp  rf  rY  s   &    rh   test_new_no_argsGenericTests.test_new_no_argsA  s    	
 	 y))eH *	 		 	 eH&3'3'1 *)s   	B<<C	c                   \         \        ,          \        \        ,          \        R	,          \        \        \        R4      3,          \        \        ,          \        \        ,          3 Ft  pV P                  VR7      ;_uu_ 4        V P                  \        R\        P                  ! RV: 24       R24      ;_uu_ 4         ! R RV4      pRRR4       RRR4       Kv  	  R#   + '       g   i     L; i  + '       g   i     K  ; i)
rw   rb  msgr  r  r  c                       ] tR tRtRtR# )4GenericTests.test_subclass_special_form.<locals>.Fooim  rl   Nr   rl   rk   rh   r   r  m      rk   r   Nr  )r%   r   r&   r   rI   rH   rL   rM   r{   r~   r
  r   r  r  )rf   r	  r   s   &  rh   test_subclass_special_form'GenericTests.test_subclass_special_form`  s    SM#JDMYs^+,cN5M
C #&&++!Qryy3CC71K'L&MQ#O c  '&
  '&&s$   ;C7C$C7$C4/C77Dc                    \        R RR7      p ! R R\        V,          4      p\        R4      p ! R RV\        V,          4      pR# )	r  Tr  c                       ] tR tRtRtR# )2GenericTests.test_complex_subclasses.<locals>.Baseis  rl   Nr   rl   rk   rh   r  r  s  r  rk   r  r   c                       ] tR tRtRtR# )1GenericTests.test_complex_subclasses.<locals>.Subiy  rl   Nr   rl   rk   rh   r   r  y  r  rk   r   NrE  )rf   r  r  r   r   s   &    rh   test_complex_subclasses$GenericTests.test_complex_subclassesp  s;    v.	74= 	 CL	$
 	rk   c                F   V P                  \        \        ,          P                  \        34       V P                  \        \        \        ,          ,          P                  \        34        ! R  R4      p\        \        3 F  pV\
        \        \        \        \        P                  \        3 F`  pV P                  W#R7      ;_uu_ 4        V P                  \        R4      ;_uu_ 4        W#,          \        ,           RRR4       RRR4       Kb  	  K  	  V P                  \        V! 4       ,          P                  \        34       V P                  \        V! 4       ,          P                  \        34       R#   + '       g   i     L; i  + '       g   i     K  ; i)c                       ] tR tRt]3tRtR# )0GenericTests.test_parameter_detection.<locals>.Ai  rl   N)rm   rn   ro   rp   r   r  rq   rl   rk   rh   r  r    s	    TNrk   r  )r  subz.* is not a generic classN)r   r   r   r  r.  r   r   r   rH   r  r  r   r~   r
  r   r  )rf   r  rM  r   s   &   rh   test_parameter_detection%GenericTests.test_parameter_detection|  s	   a//!6d1g55t<	" 	" Ag|Y@R@RTYZ\\!\33//	;VWWS	 X 43 [  	ac11A48ac11A48 XW 433s$   F	,E< F	<FF	F c                  a \        R 4      o ! R R\        S,          4      p ! V3R lR4      p\        W\        \        \         \
        \        \        P                  \        3
 EF  p\        \        3 F  pV P                  WCR7      ;_uu_ 4        V P                  WCS3,          \        ,          WC\        3,          4       V P                  VSV3,          \        ,          V\        V3,          4       WC,          pV P                  \        4      ;_uu_ 4        V\        ,           RRR4       RRR4       K  	  \         \"        P$                  P                   3 F  pV P                  WcR7      ;_uu_ 4        V P                  Wc.S3,          \        ,          Wc.\        3,          4       V P                  VS.V3,          \        ,          V\        .V3,          4       Wc.V3,          pV P                  \        4      ;_uu_ 4        V\        ,           RRR4       RRR4       K  	  EK  	  R#   + '       g   i     EL; i  + '       g   i     EK  ; i  + '       g   i     LL; i  + '       g   i     EK%  ; i)r   c                       ] tR tRtRtR# )2GenericTests.test_non_generic_subscript.<locals>.Gi  rl   Nr   rl   rk   rh   r  r    rw  rk   r  c                       < ] tR tRt Z 3tRtR# )2GenericTests.test_non_generic_subscript.<locals>.Ai  rl   N)rm   rn   ro   rp   r  rq   r  s   rh   r  r    s
    TNrk   r  )rz  r  N)callabler  )r   r$   r   r   r.  r   rH   r  r  r   r   rz  r~   r   r   r   r#   r  r  )rf   r  r  r   r  rM  r7  r   s   &      @rh   test_non_generic_subscript'GenericTests.test_non_generic_subscript  s   CL	
 		" 	" qT4<$$e-A E\\\\11$$Q!tWS\1V9=$$Qq!tWS\1S!V9=A**955# 6	 21 " {777\\1\44$$QsAvYs^QsCx[A$$QsAvYs^Quax[A#q&	A**955# 6	 54 8- 655	 211 65	 544sJ   B
I		H5*I		;BI1	II1	5I 	I			II.)I1	1Jc                     ! R  R4      pV! 4       pR ! 4       pV P                  \        R4      ;_uu_ 4        W2,          ^ ,           RRR4       R#   + '       g   i     R# ; i)c                   0   a  ] tR tRt o RtR tR tRtV tR# )GGenericTests.test_return_non_tuple_while_unpacking.<locals>.EvilTypeVari  Tc                     R # rb   rl   _s   *rh   __typing_prepare_subst__`GenericTests.test_return_non_tuple_while_unpacking.<locals>.EvilTypeVar.__typing_prepare_subst__  r  rk   c                     ^*# r  rl   r  s   *rh   r-  XGenericTests.test_return_non_tuple_while_unpacking.<locals>.EvilTypeVar.__typing_subst__  r  rk   rl   N)	rm   rn   ro   rp   #__typing_is_unpacked_typevartuple__r  r-  rq   rr   rs   s   @rh   EvilTypeVarr    s     26/ rk   r  c                      R R5	;p 3RR l35# )
type_aliasr  rw   c                    V ^8  d   Qh^ # r  rl   ).formats   "rh   r  FGenericTests.test_return_non_tuple_while_unpacking.<locals>.type_alias  s    ark   rl   r  s    rh   "<generic parameters of type_alias>^GenericTests.test_return_non_tuple_while_unpacking.<locals>.<generic parameters of type_alias>  s
    rk   z .+__typing_subst__.+tuple.+int.*N)r
  r   )rf   r  r  r  s   &   rh   %test_return_non_tuple_while_unpacking2GenericTests.test_return_non_tuple_while_unpacking  sI    	 	 } 	 ##I/QRRQ SRRRs   AA#	rl   N)Mrm   rn   ro   rp   r|  r  r  r	  r  r   r   r#  r'  r.  r5  rB  rM  rS  rY  rs  r}  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r'  r7  r:  r=  rO  rY  r  rj  rs  r}  r  r  r  r   r  r  r  r  r  r  r  r  r  r  r  r  r  r3  r  rL  rZ  rh  ry  r  r  r  r  r  rq   rr   rs   s   @rh   r  r    s    E&2C %(BB.	>

5";562
)&SC
"?H?"I(<TP 	4M4%
N
CH
	U
	


29: "F"1.`1.84029& @$+Z6
(8C@.

2
2

.&+<0$'&*&(> 
9"6   rk   r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	ClassVarTestsi  c                R   V P                  \        4      ;_uu_ 4        \        \        \        3,           R R R 4       V P                  \        4      ;_uu_ 4        \        \        ,          \        ,           R R R 4       R #   + '       g   i     LT; i  + '       g   i     R # ; irb   )r   r   r%   r   r  r   s   &rh   r|  ClassVarTests.test_basics  s\    y))S#X *y))SM# *) *))))s   BBB	B&	c                
   V P                  \        \        4      R 4       \        \        ,          pV P                  \        V4      R4       \        \        ,          pV P                  \        V4      R\
        ,          4       R# )ztyping.ClassVartyping.ClassVar[int]ztyping.ClassVar[%s.Employee]N)r   r   r%   r   r   rm   rf   cvs   & rh   r   ClassVarTests.test_repr  sY    h):;c]b#9:hb#AH#LMrk   c           
        V P                  \        \        4      ;_uu_ 4         ! R  R\        \        4      4      pRRR4       V P                  \        \        4      ;_uu_ 4         ! R R\        \        \
        ,          4      4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R	 R
\        \
        ,          4      pRRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ly; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# )-ClassVarTests.test_cannot_subclass.<locals>.Ci  rl   Nr   rl   rk   rh   r  r    r  rk   r  Nc                       ] tR tRtRtR# )-ClassVarTests.test_cannot_subclass.<locals>.Di  rl   Nr   rl   rk   rh   r  r    r  rk   r  z Cannot subclass typing\.ClassVarc                       ] tR tRtRtR# )-ClassVarTests.test_cannot_subclass.<locals>.Ei  rl   Nr   rl   rk   rh   r  r    r  rk   r  z'Cannot subclass typing\.ClassVar\[int\]c                       ] tR tRtRtR# )-ClassVarTests.test_cannot_subclass.<locals>.Fi  rl   Nr   rl   rk   rh   r  r    r  rk   r  )r
  r   r  r   r%   r   rf   r  r  r  r  s   &    rh   r  "ClassVarTests.test_cannot_subclass  s    ##I/CDDDN  E ##I/CDDD#'  E ##I$GI IH I ##I$NP PHSM P P ED EDI IP P P/   D&$D0D1&ED	D.	1E	E	c                   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        4      ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        \
        ,          ,          4      ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lu; i  + '       g   i     R # ; irb   )r   r   r%   r   r   r   r   s   &rh   r  ClassVarTests.test_cannot_init      y))J *y))N *y))(3-()+ *)	 *))))))#   B=C+C#=C	C 	#C4	c                J   V P                  \        4      ;_uu_ 4        \        ^\        \        ,          4       RRR4       V P                  \        4      ;_uu_ 4        \        \        \        4       RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; ir  )r   r   r   r%   r   r   r   s   &rh   r   ClassVarTests.test_no_isinstance  \    y))q(3-( *y))sH% *) *))))   A>B>B	B"	rl   Nrm   rn   ro   rp   r|  r   r  r  r  rq   rr   rs   s   @rh   r  r    s$     N ,& &rk   r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	
FinalTestsi  c                   \         \        ,           V P                  \        4      ;_uu_ 4        \         \        \        3,           R R R 4       V P                  \        4      ;_uu_ 4        \         \        ,          \        ,           R R R 4       V P                  \        4      ;_uu_ 4        \
        \         \        ,          ,           R R R 4       R #   + '       g   i     L; i  + '       g   i     Lg; i  + '       g   i     R # ; irb   )r&   r   r   r   r  r   r   s   &rh   r|  FinalTests.test_basics  s    c
y))#s(O *y))#JsO *y))U3Z  *)	 *))))))s#   C,C(.C;C%	(C8	;D	c                x   V P                  \        \        4      R 4       \        \        ,          pV P                  \        V4      R4       \        \        ,          pV P                  \        V4      R\
        ,          4       \        \        \        ,          ,          pV P                  \        V4      R4       R# )ztyping.Finalztyping.Final[int]ztyping.Final[%s.Employee]ztyping.Final[tuple[int]]N)r   r   r&   r   r   rm   rz  r  s   & rh   r   FinalTests.test_repr  sz    en53Zb#678_b#>#IJ5:b#=>rk   c           
        V P                  \        \        4      ;_uu_ 4         ! R  R\        \        4      4      pRRR4       V P                  \        \        4      ;_uu_ 4         ! R R\        \        \
        ,          4      4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R	 R
\        \
        ,          4      pRRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ly; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# )*FinalTests.test_cannot_subclass.<locals>.Ci  rl   Nr   rl   rk   rh   r  r    r  rk   r  Nc                       ] tR tRtRtR# )*FinalTests.test_cannot_subclass.<locals>.Di  rl   Nr   rl   rk   rh   r  r    r  rk   r  zCannot subclass typing\.Finalc                       ] tR tRtRtR# )*FinalTests.test_cannot_subclass.<locals>.Ei  rl   Nr   rl   rk   rh   r  r    r  rk   r  z$Cannot subclass typing\.Final\[int\]c                       ] tR tRtRtR# )*FinalTests.test_cannot_subclass.<locals>.Fi	  rl   Nr   rl   rk   rh   r  r  	  r  rk   r  )r
  r   r  r   r&   r   r  s   &    rh   r  FinalTests.test_cannot_subclass  s    ##I/CDDDK  E ##I/CDDDs$  E ##I02 2E 2 ##I79 9E#J 9 9 ED ED2 29 9 9r  c                   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        4      ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        \
        ,          ,          4      ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lu; i  + '       g   i     R # ; irb   )r   r   r&   r   r   r   r   s   &rh   r  FinalTests.test_cannot_init  s    y))G *y))KM *y))x}%&( *)	 *))))))r  c                J   V P                  \        4      ;_uu_ 4        \        ^\        \        ,          4       RRR4       V P                  \        4      ;_uu_ 4        \        \        \        4       RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; ir  )r   r   r   r&   r   r   r   s   &rh   r  FinalTests.test_no_isinstance  s\    y))q%*% *y))sE" *) *))))r  rl   Nr  rs   s   @rh   r  r    s#     !? )# #rk   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )FinalDecoratorTestsi  c                B    R  pV P                  V\        V4      4       R# )c                     R # rb   rl   r   s   &rh   func7FinalDecoratorTests.test_final_unmodified.<locals>.func  rG  rk   N)r   r'   rf   r  s   & rh   test_final_unmodified)FinalDecoratorTests.test_final_unmodified  s    dE$K(rk   c                ~   \         R  4       p\          ! R R4      4       pV P                  RVP                  4       V P                  RVP                  4        ! R R4      p\         VR 4       4       pV P                  WC4       V P	                  VR4        ! R R	\
        4      p\          ! R
 RVR7      4       pV P                  VP                  R4       \        \        4       V P	                  \        R4        ! R R4      pV P                  R\        P                  ! VR4      P                  4       V P                  R\        P                  ! VR4      P                  4       V P                  RVP                  P                  P                  4       V P                  RVP                  P                  4       R# )c                      R # rb   rl   rl   rk   rh   r  3FinalDecoratorTests.test_dunder_final.<locals>.func!      rk   c                       ] tR tRtRtR# )2FinalDecoratorTests.test_dunder_final.<locals>.Clsi#  rl   Nr   rl   rk   rh   Clsr  #  s    rk   r  Tc                   0   a  ] tR tRt o RtR tR tRtV tR# )6FinalDecoratorTests.test_dunder_final.<locals>.Wrapperi(  c                    Wn         R # rb   r  r  s   &&rh   r   ?FinalDecoratorTests.test_dunder_final.<locals>.Wrapper.__init__*  r	  rk   c                &    V P                   ! V/ VB # rb   r  r   s   &*,rh   r  ?FinalDecoratorTests.test_dunder_final.<locals>.Wrapper.__call__,  s    yy$1&11rk   r  N)	rm   rn   ro   rp   r	  r   r  rq   rr   rs   s   @rh   Wrapperr  (  s     !I!2 2rk   r  c                      R # rb   rl   rl   rk   rh   wrapped6FinalDecoratorTests.test_dunder_final.<locals>.wrapped1  s    rk   	__final__c                   0   a  ] tR tRt o ]R 4       tRtV tR# )3FinalDecoratorTests.test_dunder_final.<locals>.Metai7  c                    R # )can't set merl   r   s   &rh   r  =FinalDecoratorTests.test_dunder_final.<locals>.Meta.__final__8  s    (6rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r  7  s     6 6rk   r  c                       ] tR tRtRtR# )7FinalDecoratorTests.test_dunder_final.<locals>.WithMetai:  rl   Nr   rl   rk   rh   WithMetar  :  s    (+rk   r  r  r  c                      a  ] tR tRt o ]]R 4       4       t]]R 4       4       t]	]R 4       4       t
]]! 4       R 4       4       tRtV tR# )6FinalDecoratorTests.test_dunder_final.<locals>.MethodsiD  c                    R # rb   rl   r8  s   &rh   	clsmethod@FinalDecoratorTests.test_dunder_final.<locals>.Methods.clsmethodE  s     #rk   c                     R # rb   rl   rl   rk   rh   stmethod?FinalDecoratorTests.test_dunder_final.<locals>.Methods.stmethodI      rk   c                    R # rb   rl   r   s   &rh   prop;FinalDecoratorTests.test_dunder_final.<locals>.Methods.propO  r  rk   c                    R # rb   rl   r   s   &rh   cached=FinalDecoratorTests.test_dunder_final.<locals>.Methods.cachedS  s    !rk   rl   N)rm   rn   ro   rp   r'   rZ
  r  staticmethodr
  r  r  r   r  rq   rr   rs   s   @rh   Methodsr  D  sa     #  #     [!  !rk   r  r  r
  N)r'   r   r  r   assertNotHasAttrr   r   r   inspectgetattr_staticr  fgetr  )rf   r  r  r  r  r  r  r  s   &       rh   test_dunder_final%FinalDecoratorTests.test_dunder_final   sd   	 
	 
dDNN+dCMM*	2 	2 
	 
 
g/g{3	74 	7 
++ 
+++^< 	c
c;/	" 	"* 	""7K8BB	
 	""7J7AA	
 	dGLL--778dGNN445rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r    s     )B6 B6rk   r  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )OverrideDecoratorTestsie  c                X    ! R  R4      p ! R RV4      pV P                  W!4       V! 4       pV P                  VP                  4       ^*4       V P                  RVP                  P                  4       V P                  RVP                  P                  4       V P                  VP                  4       ^*4       V P                  RVP
                  P                  4       V P                  VP                  4       ^*4       V P                  VP                  R4       V P                  VP                  4       ^*4       V P                  RVP                  P                  4       V P                  VP                  4       ^*4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP
                  R4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       R# )c                   f   a  ] tR tRt o R t]R 4       t]R 4       t]R 4       t	]R 4       t
RtV tR# )	2OverrideDecoratorTests.test_override.<locals>.Baseig  c                    R # rb   rl   r   s   &rh   normal_method@OverrideDecoratorTests.test_override.<locals>.Base.normal_methodh  rn  rk   c                    R # rb   rl   r8  s   &rh   class_method_good_orderJOverrideDecoratorTests.test_override.<locals>.Base.class_method_good_orderi  s    .1rk   c                    R # rb   rl   r8  s   &rh   class_method_bad_orderIOverrideDecoratorTests.test_override.<locals>.Base.class_method_bad_orderk  s    -0rk   c                     R # rb   rl   rl   rk   rh   static_method_good_orderKOverrideDecoratorTests.test_override.<locals>.Base.static_method_good_orderm  s    ,/rk   c                     R # rb   rl   rl   rk   rh   static_method_bad_orderJOverrideDecoratorTests.test_override.<locals>.Base.static_method_bad_ordero  s    +.rk   rl   N)rm   rn   ro   rp   r!  rZ
  r$  r'  r  r*  r-  rq   rr   rs   s   @rh   r  r  g  s@     (1 10 0/ /. .rk   r  c                      a  ] tR tRt o ]R 4       t]]R 4       4       t]]R 4       4       t]	]R 4       4       t
]]	R 4       4       tRtV tR# )	5OverrideDecoratorTests.test_override.<locals>.Derivedir  c                    ^*# r  rl   r   s   &rh   r!  COverrideDecoratorTests.test_override.<locals>.Derived.normal_methods  r  rk   c                    ^*# r  rl   r8  s   &rh   r$  MOverrideDecoratorTests.test_override.<locals>.Derived.class_method_good_orderw       rk   c                    ^*# r  rl   r8  s   &rh   r'  LOverrideDecoratorTests.test_override.<locals>.Derived.class_method_bad_order{  r5  rk   c                     ^*# r  rl   rl   rk   rh   r*  NOverrideDecoratorTests.test_override.<locals>.Derived.static_method_good_order  r5  rk   c                     ^*# r  rl   rl   rk   rh   r-  MOverrideDecoratorTests.test_override.<locals>.Derived.static_method_bad_order  r5  rk   rl   N)rm   rn   ro   rp   r0   r!  rZ
  r$  r'  r  r*  r-  rq   rr   rs   s   @rh   r  r0  r  s                rk   r  T__override__N)
r   r   r!  r   r<  r$  r'  r  r*  r-  )rf   r  r  r  s   &   rh   test_override$OverrideDecoratorTests.test_overridef  s   		/ 		/	d 	. 	g,9//126dG11>>?dH22??@88:B?dG;;HHI7792>g<<nM99;R@dG<<IIJ88:B?g==~N 	d00.Ad::NKd99>Jd;;^Ld::NKrk   c                    ! R  R4      p ! R RV4      pV! 4       pV P                  VP                  ^4       V P                  VP                  P                  P                  R4       V P                  VP
                  ^4       V P                  VP
                  R4       V P                  VP
                  P                  R4       R# )c                   X   a  ] tR tRt o ]V 3R lR l4       t]V 3R lR l4       tRtV tR# )2OverrideDecoratorTests.test_property.<locals>.Basei  c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  ?OverrideDecoratorTests.test_property.<locals>.Base.__annotate__         rk   c                    ^# r  rl   r   s   &rh   correct:OverrideDecoratorTests.test_property.<locals>.Base.correct      rk   c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  rC          s rk   c                    ^# r  rl   r   s   &rh   wrong8OverrideDecoratorTests.test_property.<locals>.Base.wrong  rH  rk   rl   N)	rm   rn   ro   rp   r  rF  rL  rq   rr   rs   s   @rh   r  rA    s)       rk   r  c                   l   a  ] tR tRt o ]]V 3R lR l4       4       t]]V 3R lR l4       4       tRtV t	R# )3OverrideDecoratorTests.test_property.<locals>.Childi  c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  @OverrideDecoratorTests.test_property.<locals>.Child.__annotate__  rD  rk   c                    ^# r  rl   r   s   &rh   rF  ;OverrideDecoratorTests.test_property.<locals>.Child.correct       rk   c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  rQ    rJ  rk   c                    ^# r  rl   r   s   &rh   rL  9OverrideDecoratorTests.test_property.<locals>.Child.wrong  rT  rk   rl   N)
rm   rn   ro   rp   r  r0   rF  rL  rq   rr   rs   s   @rh   r  rO    s9         rk   r  Tr<  N)r   rF  r   r  r<  rL  r  fset)rf   r  r  r  s   &   rh   test_property$OverrideDecoratorTests.test_property  s    	 		D 	 7))1-emm((55t<+ekk>:ekk..?rk   c                   a  ! R  R4      o ! V3R lR4      pV P                  VP                  ^4       V P                  VP                  R4       R# )c                   4   a  ] tR tRt o RtR tRR ltRtV tR# )>OverrideDecoratorTests.test_silent_failure.<locals>.CustomPropi  c                    Wn         R # rb   r  )rf   r  s   &&rh   r   GOverrideDecoratorTests.test_silent_failure.<locals>.CustomProp.__init__  r	  rk   Nc                $    V P                  V4      # rb   r_  r	  s   &&&rh   r	  FOverrideDecoratorTests.test_silent_failure.<locals>.CustomProp.__get__  s    yy~%rk   r_  rb   )	rm   rn   ro   rp   r	  r   r	  rq   rr   rs   s   @rh   
CustomPropr]    s     !I!& &rk   rc  c                   >   <a  ] tR tRt o ] ZR 4       4       tRtV tR# )@OverrideDecoratorTests.test_silent_failure.<locals>.WithOverridei  c                    ^# r  rl   r   s   &rh   r'  EOverrideDecoratorTests.test_silent_failure.<locals>.WithOverride.some  rT  rk   rl   N)rm   rn   ro   rp   r0   r'  rq   rr   )rt   rc  s   @rh   WithOverridere    s       rk   rh  r<  N)r   r'  r  )rf   rh  rc  s   & @rh   test_silent_failure*OverrideDecoratorTests.test_silent_failure  sE    	& 	&	 	 	**A.l//@rk   c                R  a R  o ! V3R lR4      pV! 4       pV P                  VP                  ^4      ^4       V P                  VP                  P                  R4       V P                  VP	                  ^4      ^4       V P                  VP                  P                  R4       R# )c                 0   a  \        S 4      V 3R  l4       pV# )c                     < S! V / VB # rb   rl   )r   r   rg   s   *,rh   r   TOverrideDecoratorTests.test_multiple_decorators.<locals>.with_wraps.<locals>.wrapper  s    $)&))rk   r   )rg   r   s   f rh   
with_wrapsCOverrideDecoratorTests.test_multiple_decorators.<locals>.with_wraps  s    1X* *Nrk   c                   r   <a  ] tR tRt o ] ZV 3R lR l4       4       t Z]V 3R lR l4       4       tRtV tR# )EOverrideDecoratorTests.test_multiple_decorators.<locals>.WithOverridei  c                &   < V ^8  d   QhRS[ RS[ /# r  rM  r#  rL  )r  rt   s   "rh   r  ROverrideDecoratorTests.test_multiple_decorators.<locals>.WithOverride.__annotate__  s        rk   c                    V^,           # r  rl   r"  s   &&rh   on_topLOverrideDecoratorTests.test_multiple_decorators.<locals>.WithOverride.on_top       1urk   c                &   < V ^8  d   QhRS[ RS[ /# rt  rL  )r  rt   s   "rh   r  ru    s      3 3 rk   c                    V^,           # r  rl   r"  s   &&rh   	on_bottomOOverrideDecoratorTests.test_multiple_decorators.<locals>.WithOverride.on_bottom  ry  rk   rl   N)	rm   rn   ro   rp   r0   rw  r|  rq   rr   )rt   ro  s   @rh   rh  rr    s9         rk   rh  TN)r   rw  r   r<  r|  )rf   rh  r  ro  s   &  @rh   test_multiple_decorators/OverrideDecoratorTests.test_multiple_decorators  s    		 	  >+Q/hoo22D9++A.2h((55t<rk   rl   N)
rm   rn   ro   rp   r=  rY  ri  r~  rq   rr   rs   s   @rh   r  r  e  s"     8Lt@4A"= =rk   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )	CastTestsi  c                :   V P                  \        \        ^*4      ^*4       V P                  \        \        ^*4      ^*4       V P	                  \        \        \        ^*4      4      \        4       V P                  \        \        ^*4      ^*4       V P                  \        \        ^*4      ^*4       V P                  \        \        \        \        3,          ^*4      ^*4       V P                  \        \        ^*4      ^*4       V P                  \        R^*4      ^*4       R# r   )r   r*   r   r  r   r   r   r.  r   r  r   r   s   &rh   r|  CastTests.test_basics  s    c2+eR"-d4r?+S1c2+dB,eCJ/4b9fb)2.dB,rk   c                6    \        ^*^*4       \        R^*4       R# r   helloN)r*   r   s   &rh   r   CastTests.test_errors  s    RWbrk   rl   Nrm   rn   ro   rp   r|  r   rq   rr   rs   s   @rh   r  r    s     - rk   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )AssertTypeTestsi  c                   ^*pV P                  \        V\        4      V4       V P                  \        V\        \        ,          4      V4       V P                  \        V\
        4      V4       V P                  \        VR4      V4       R# r   )r   r)   r   r  r  r   r  s   & rh   r|  AssertTypeTests.test_basics  s_    k#s+S1k#sU{3S9k#v.4k#t,c2rk   c                z    ^*pV P                  \        V^*4      V4       V P                  \        VR4      V4       R# r  )r   r)   r  s   & rh   r   AssertTypeTests.test_errors  s1    k#r*C0k#w/5rk   rl   Nr  rs   s   @rh   r  r    s     36 6rk   r  c                   B    ] tR tRt]P
                  P                  tRtR# )NoTypeCheck_Outeri  rl   N)rm   rn   ro   rp   r^   r  Innerrq   rl   rk   rh   r  r    s    ))//Erk   r  c                   .    ] tR tRt]P
                  tRtR# )NoTypeCheck_WithFunctioni
  rl   N)rm   rn   ro   rp   r^   NoTypeCheck_functionrq   rl   rk   rh   r  r  
  s    &;;rk   r  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# )NoTypeCheckTestsi  c                ^    \         R  R l4       p\        V4      pV P                  V/ 4       R# )c                     V ^8  d   QhRRR/ /# r  rM  	whateversr#  rl   )r  s   "rh   r  9NoTypeCheckTests.test_no_type_check.<locals>.__annotate__       	 	; 	2 	rk   c                     R # rb   rl   r  s   &rh   rk  0NoTypeCheckTests.test_no_type_check.<locals>.foo      rk   N)r5   r,   r   )rf   rk  ths   &  rh   test_no_type_check#NoTypeCheckTests.test_no_type_check  s0    		 
	 C R rk   c                    \          ! R  R4      4       p\        VP                  4      pV P                  V/ 4       \        V! 4       P                  4      pV P                  V/ 4       R# )c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )4NoTypeCheckTests.test_no_type_check_class.<locals>.Ci  c                "   < V ^8  d   QhRRR/ /# r  rl   )r  rt   s   "rh   r  ANoTypeCheckTests.test_no_type_check_class.<locals>.C.__annotate__        { r rk   c                    R # rb   rl   r  s   &rh   rk  8NoTypeCheckTests.test_no_type_check_class.<locals>.C.foo  r  rk   rl   Nrm   rn   ro   rp   rk  rq   rr   rs   s   @rh   r  r          rk   r  N)r5   r,   rk  r   )rf   r  cthiths   &   rh   test_no_type_check_class)NoTypeCheckTests.test_no_type_check_class  sY    		 	 
	 QUU#b!QSWW%b!rk   c                  a  ! R  R4      o\          ! V3R lRS4      4       pV P                  \        SP                  4      R\        /4        ! R RV4      pV P                  \        VP
                  4      R\        /4       R# )c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )7NoTypeCheckTests.test_no_type_check_no_bases.<locals>.Ci&  c                    < V ^8  d   QhRS[ /# rB  rL  )r  rt   s   "rh   r  DNoTypeCheckTests.test_no_type_check_no_bases.<locals>.C.__annotate__'  s    ''c'rk   c                    R # rb   rl   r   s   &&rh   r  <NoTypeCheckTests.test_no_type_check_no_bases.<locals>.C.meth'  s    Crk   rl   Nr  rs   s   @rh   r  r  &  s     ''rk   r  c                      < ] tR tRt Z tRtR# )7NoTypeCheckTests.test_no_type_check_no_bases.<locals>.Di(  rl   N)rm   rn   ro   rp   r7  rq   )r  s   rh   r  r  (  s    Ark   r  r   c                   2   a  ] tR tRt o V 3R lR ltRtV tR# );NoTypeCheckTests.test_no_type_check_no_bases.<locals>.Childi0  c                    < V ^8  d   QhRS[ /# rB  rL  )r  rt   s   "rh   r  HNoTypeCheckTests.test_no_type_check_no_bases.<locals>.Child.__annotate__1  s    &&S&rk   c                    R # rb   rl   r   s   &&rh   rk  ?NoTypeCheckTests.test_no_type_check_no_bases.<locals>.Child.foo1  re  rk   rl   Nr  rs   s   @rh   r  r  0  rg  rk   r  N)r5   r   r,   r  r   rk  )rf   r  r  r  s   &  @rh   test_no_type_check_no_bases,NoTypeCheckTests.test_no_type_check_no_bases%  sp    	( 	(		 	 
	 	/#s<	'A 	' 			2S#J?rk   c           
         ! R  R4      p ! R R4      p\          ! R R4      4       pW3P                  VP                  P                  VP                  3 F]  pV P	                  VR7      ;_uu_ 4        V P                  VP                  R4       V P                  \        V4      / 4       RRR4       K_  	  W3 Fs  pV P	                  VR	7      ;_uu_ 4        V P                  \        4      ;_uu_ 4        VP                   RRR4       V P                  \        V4      / 4       RRR4       Ku  	  R#   + '       g   i     K  ; i  + '       g   i     LM; i  + '       g   i     K  ; i)
c                   ,   a  ] tR tRt o V 3R ltRtV tR# )?NoTypeCheckTests.test_no_type_check_nested_types.<locals>.Otheri7  c                &   < V ^8  d   Qh/ S[ ;R&   # r  rB  rL  )r  rt   s   "rh   r  LNoTypeCheckTests.test_no_type_check_nested_types.<locals>.Other.__annotate__7  r  rk   rl   Nrm  rs   s   @rh   r  r  7  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# );NoTypeCheckTests.test_no_type_check_nested_types.<locals>.Bi9  c                &   < V ^8  d   Qh/ S[ ;R&   # r  rL  )r  rt   s   "rh   r  HNoTypeCheckTests.test_no_type_check_nested_types.<locals>.B.__annotate__9  r  rk   rl   Nrm  rs   s   @rh   r	  r  9  rn  rk   r	  c                   X   a  ] tR tRt o  ! R R4      t ! R R4      t]tV 3R ltRtV t	R# )	;NoTypeCheckTests.test_no_type_check_nested_types.<locals>.Ai;  c                   @   a  ] tR tRt o  ! R R4      tV 3R ltRtV tR# )=NoTypeCheckTests.test_no_type_check_nested_types.<locals>.A.Bi>  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )?NoTypeCheckTests.test_no_type_check_nested_types.<locals>.A.B.Ci@  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r7  rL  )r  rt   s   "rh   r  LNoTypeCheckTests.test_no_type_check_nested_types.<locals>.A.B.C.__annotate__@  s     F rk   rl   Nrm  rs   s   @rh   r  r  @  rn  rk   r  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r   rL  )r  rt   s   "rh   r  JNoTypeCheckTests.test_no_type_check_nested_types.<locals>.A.B.__annotate__>        rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r	  r  >  s        rk   r	  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )=NoTypeCheckTests.test_no_type_check_nested_types.<locals>.A.DiB  c                &   < V ^8  d   Qh/ S[ ;R&   # )r  r8  rL  )r  rt   s   "rh   r  JNoTypeCheckTests.test_no_type_check_nested_types.<locals>.A.D.__annotate__B  r  rk   rl   Nrm  rs   s   @rh   r  r  B  rn  rk   r  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  rL  )r  rt   s   "rh   r  HNoTypeCheckTests.test_no_type_check_nested_types.<locals>.A.__annotate__;  r  rk   rl   N)
rm   rn   ro   rp   r	  r  r  r  rq   rr   rs   s   @rh   r  r  ;  s'        E  rk   r  r  TN)not_modified)r5   r	  r  r  r~   r   __no_type_check__r   r,   r   r  r   )rf   r  r	  r  r  r  s   &     rh   test_no_type_check_nested_types0NoTypeCheckTests.test_no_type_check_nested_types5  s   	 		 				 		 
		 acceeQSS)EE**e55t<  !6; +* *
 #JL<88&&~66 22 7##N<$@"E 98 '	 +** 76 988s0   28D2E4E#E2EEEE*c                X   \          ! R  R4      4       pV P                  VP                  P                  R4       V P	                  \        VP                  4      / 4       V P                  VP                  P                  R4       V P	                  \        VP                  4      / 4       R# )c                   X   a  ] tR tRt o ]V 3R lR l4       t]V 3R lR l4       tRtV t	R# )JNoTypeCheckTests.test_no_type_check_class_and_static_methods.<locals>.SomeiS  c                &   < V ^8  d   QhRS[ RS[ /# rc  rL  )r  rt   s   "rh   r  WNoTypeCheckTests.test_no_type_check_class_and_static_methods.<locals>.Some.__annotate__V  s    &&c&c&rk   c                    R # rb   rl   r   s   &rh   stMNoTypeCheckTests.test_no_type_check_class_and_static_methods.<locals>.Some.stU  s    #&rk   c                &   < V ^8  d   QhRS[ RS[ /# )r  r   r#  rL  )r  rt   s   "rh   r  r  X  s    ++3+3+rk   c                    R # rb   rl   )r9  r   s   &&rh   clMNoTypeCheckTests.test_no_type_check_class_and_static_methods.<locals>.Some.clW  s    (+rk   rl   N)
rm   rn   ro   rp   r  r  rZ
  r  rq   rr   rs   s   @rh   Somer  S  s!     & &+ +rk   r  TN)r5   r   r  r  r   r,   r  )rf   r  s   & rh   +test_no_type_check_class_and_static_methods<NoTypeCheckTests.test_no_type_check_class_and_static_methodsR  s}    		, 	, 
	, 	dgg//60"5dgg//60"5rk   c                   V P                  \        P                  R 4       V P                  \        4      ;_uu_ 4        \
        P                  P                   RRR4       V P                  \        4      ;_uu_ 4        \
        P                  P                  P                   RRR4       V P                  \        P                  R 4       V P                  \        4      ;_uu_ 4        \
        P                  P                   RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)TN)	r   r  r  r   r  r^   r  r  r  r   s   &rh   test_no_type_check_other_module0NoTypeCheckTests.test_no_type_check_other_module_  s    '994@~..));; /~..))//AA / 	.@@$G~..,,>> /. /... /..s#   D>%D (D3D	 D0	3E	c                  a R  R lo\          ! V3R lR4      4       pV P                  \        4      ;_uu_ 4        SP                   RRR4       V P	                  \        S4      R\        R\        /4       R#   + '       g   i     L9; i)c                0    V ^8  d   QhR\         R\         /# )r  r   r#  rL  )r  s   "rh   r  KNoTypeCheckTests.test_no_type_check_foreign_functions.<locals>.__annotate__l  s     	 	 	 	rk   c                      R # rb   rl   r  s   *rh   r'  CNoTypeCheckTests.test_no_type_check_foreign_functions.<locals>.somel  s    rk   c                   B   < ] tR tRt Z t]!  Z 4      t]!  Z 4      tRt	R# )@NoTypeCheckTests.test_no_type_check_foreign_functions.<locals>.Aio  rl   N)
rm   rn   ro   rp   
some_aliasrZ
  
some_classr  some_staticrq   )r'  s   rh   r  r  o  s    J$T*J&t,Krk   r  Nr   r#  )r5   r   r  r  r   r,   r   )rf   r  r'  s   & @rh   $test_no_type_check_foreign_functions5NoTypeCheckTests.test_no_type_check_foreign_functionsj  si    	 
	- 	- 
	-
 ~.."" /-Xs/KL /.s   A99B		c                    \          ! R  R4      4       pV P                  VP                  P                  R4       V P	                  \        VP                  4      / 4       R# )c                   2   a  ] tR tRt o R tV 3R ltRtV tR# )5NoTypeCheckTests.test_no_type_check_lambda.<locals>.Aiz  c                    V # rb   rl   r&  s   &rh   r  >NoTypeCheckTests.test_no_type_check_lambda.<locals>.A.<lambda>}      Crk   c                >   < V ^8  d   Qh/ S[ S[.S[3,          ;R&   # r  rc  r#   r   )r  rt   s   "rh   r  BNoTypeCheckTests.test_no_type_check_lambda.<locals>.A.__annotate__z  s      3%*%7 rk   rl   N)rm   rn   ro   rp   rc  r  rq   rr   rs   s   @rh   r  r  z  s      )8C  rk   r  TN)r5   r   rc  r  r   r,   r  s   & rh   test_no_type_check_lambda*NoTypeCheckTests.test_no_type_check_lambday  sL    		8 	8 
	8 	aee--t4.3rk   c                $    \        \        4       R # rb   )r5   r  r   s   &rh   test_no_type_check_TypeError-NoTypeCheckTests.test_no_type_check_TypeError  s     	drk   c                     ! R  R4      p ! R R4      p ! R R4      p ! R R4      pR\         P                  \        ,          /pWW43 F  pV P                  \	        V4      V4       K   	  R	# )
c                   0   a  ] tR tRt o ^tV 3R ltRtV tR# )DNoTypeCheckTests.test_no_type_check_forward_ref_as_string.<locals>.Ci  c                J   < V ^8  d   Qh/ S[ P                  S[,          ;R&   # r  rk  )rc   r%   r   )r  rt   s   "rh   r  QNoTypeCheckTests.test_no_type_check_forward_ref_as_string.<locals>.C.__annotate__  s     %) rk   rl   Nrm   rn   ro   rp   rk  r  rq   rr   rs   s   @rh   r  r    s     ()C  rk   r  c                   0   a  ] tR tRt o ^tV 3R ltRtV tR# )DNoTypeCheckTests.test_no_type_check_forward_ref_as_string.<locals>.Di  c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # r  r%   r   )r  rt   s   "rh   r  QNoTypeCheckTests.test_no_type_check_forward_ref_as_string.<locals>.D.__annotate__  s     #" rk   rl   Nr  rs   s   @rh   r  r    s     !"C  rk   r  c                   0   a  ] tR tRt o ^tV 3R ltRtV tR# )DNoTypeCheckTests.test_no_type_check_forward_ref_as_string.<locals>.Ei  c                $   < V ^8  d   Qh/ R;R&   # )r  r  rk  rl   )r  rt   s   "rh   r  QNoTypeCheckTests.test_no_type_check_forward_ref_as_string.<locals>.E.__annotate__  s     '+ rk   rl   Nr  rs   s   @rh   r  r    s     *+C  rk   r  c                   0   a  ] tR tRt o ^tV 3R ltRtV tR# )DNoTypeCheckTests.test_no_type_check_forward_ref_as_string.<locals>.Fi  c                $   < V ^8  d   Qh/ R;R&   # )r  ClassVar[int]rk  rl   )r  rt   s   "rh   r  QNoTypeCheckTests.test_no_type_check_forward_ref_as_string.<locals>.F.__annotate__  s      $ rk   rl   Nr  rs   s   @rh   r  r"    s     #$C  rk   r  rk  N)rc   r%   r   r   r,   )rf   r  r  r  r  expected_resultclazzs   &      rh   (test_no_type_check_forward_ref_as_string9NoTypeCheckTests.test_no_type_check_forward_ref_as_string  sb    	* 	*	# 	#	, 	,	% 	% !&//#"67A\E^E2OD "rk   c                   R pV P                  \        V4      ;_uu_ 4        \        R 4       pRRR4       V P                  XP                  R4       VR R l4       pV ! R R4      4       pV P                  VP                  R4       \        V4      pV P                  V/ 4       \        VP                  4      pV P                  V/ 4       \        V! 4       P                  4      pV P                  V/ 4       R#   + '       g   i     L; i)	zT'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15c                     V # rb   rl   r  s   &rh   magic_decoratorANoTypeCheckTests.test_meta_no_type_check.<locals>.magic_decorator  s    rk   Nr,  c                     V ^8  d   QhRRR/ /# r  rl   )r  s   "rh   r  >NoTypeCheckTests.test_meta_no_type_check.<locals>.__annotate__  r  rk   c                     R # rb   rl   r  s   &rh   rk  5NoTypeCheckTests.test_meta_no_type_check.<locals>.foo  r  rk   c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )3NoTypeCheckTests.test_meta_no_type_check.<locals>.Ci  c                "   < V ^8  d   QhRRR/ /# r  rl   )r  rt   s   "rh   r  @NoTypeCheckTests.test_meta_no_type_check.<locals>.C.__annotate__  r  rk   c                    R # rb   rl   r  s   &rh   rk  7NoTypeCheckTests.test_meta_no_type_check.<locals>.C.foo  r  rk   rl   Nr  rs   s   @rh   r  r3    r  rk   r  rk  )assertWarnsRegexDeprecationWarningr6   r   rm   r,   rk  )rf   depr_msgr,  rk  r  r  r  r  s   &       rh   test_meta_no_type_check(NoTypeCheckTests.test_meta_no_type_check  s    4 	 ""#5x@@$ % A
 	113DE		 
	 
	 	 
	 	u-C R QUU#b!QSWW%b!- A@s   C::D
	rl   N)rm   rn   ro   rp   r  r  r  r  r  r  r   r  r  r(  r;  rq   rr   rs   s   @rh   r  r    sE     !
"@ F:6	?M4
E" "rk   r  c                   <   a  ] tR tRt o R tR t]R 4       tRtV t	R# )InternalsTestsi  c           
        V P                  \        R 4      ;_uu_ 4       pV P                  \        P                  ! \
        R,          \        4       / 4      \
        \        ,          4       RRR4       V P                  XP                  \        4       \        R4      pV P                  \        R4      ;_uu_ 4       pV P                  VP                  \        4       / \        4       R7      \        4       RRR4       V P                  VP                  \        4       R#   + '       g   i     L; i  + '       g   i     LE; i)z[Failing to pass a value to the 'type_params' parameter of 'typing._eval_type' is deprecatedr   NzeFailing to pass a value to the 'type_params' parameter of 'typing.ForwardRef._evaluate' is deprecated)recursive_guard)r8  r9  r   rc   
_eval_typer.  r  r   filename__file__rD   r   	_evaluaterA
  )rf   rU  rg   s   &  rh   7test_deprecation_for_no_type_params_passed_to__evaluateFInternalsTests.test_deprecation_for_no_type_params_passed_to__evaluate  s    ""7
 
 V..tE{GIrJDQTIV
 	h/u""A
 
 MM!++giY[+QSVW
 	h/-
 

 
s   AD;9D1D.	1E	c                    \         P                  ! R 4      pV P                  \        R4      ;_uu_ 4       pVP                   RRR4       V P                  XP                  \        4       R#   + '       g   i     L2; i)rc   z6The private _collect_parameters function is deprecatedN)rS   import_fresh_moduler8  r9  _collect_parametersr   rB  rC  )rf   rc   rU  s   &  rh   test_collect_parameters&InternalsTests.test_collect_parameters  s_    228<""D
 
 &&	

 	h/
 
s   A,,A<	c                8    \         P                  ! R 0 Rm4       R# )rc   N>   r  r  warnings
contextlibr  )rS   ensure_lazy_importsr   s   &rh   test_lazy_importInternalsTests.test_lazy_import  s    ))( 5
 	rk   rl   N)
rm   rn   ro   rp   rE  rJ  rP   rP  rq   rr   rs   s   @rh   r>  r>    s#     020  rk   r>  c                 "    ^V ,          V,           # )r  rl   r	  s   &&rh   cached_funcrS    s    q519rk   c                   F   a  ] tR tRt o ]R 4       t]R 4       tR tRt	V t
R# )MethodHolderi  c                    R # rb   rl   r8  s   &rh   r  MethodHolder.clsmethod  s    rk   c                     R # rb   rl   rl   rk   rh   r
  MethodHolder.stmethod  r  rk   c                    R # rb   rl   r   s   &rh   r  MethodHolder.method  s    crk   rl   N)rm   rn   ro   rp   rZ
  r  r  r
  r  rq   rr   rs   s   @rh   rU  rU    s'       rk   rU  c                   t   a  ] tR tRt o R tR t]R 4       tR t]	! R]
! R 4      4      R 4       tR	 tR
tV tR# )OverloadTestsi  c                    V P                  \        4      ;_uu_ 4        \        R  4       pV! 4        RRR4       R#   + '       g   i     R# ; i)c                      R # rb   rl   rl   rk   rh   blah/OverloadTests.test_overload_fails.<locals>.blah  s    rk   N)r   rr  r   rf   r`  s   & rh   test_overload_fails!OverloadTests.test_overload_fails  s<    233  F 4333s	   <A	c                2    \         R  4       pR pV! 4        R# )c                      R # rb   rl   rl   rk   rh   r`  2OverloadTests.test_overload_succeeds.<locals>.blah  r  rk   c                      R # rb   rl   rl   rk   rh   r`  rg    r  rk   Nr   rb  s   & rh   test_overload_succeeds$OverloadTests.test_overload_succeeds  s     		 
		 	rk   c                   \        R \        R 4      4      ;_uu_ 4        V P                  \        P                  / 4       \        \        4       \        \        4       V P                  \        P                  ! \        4      . 4       V P                  \        P                  ! \        4      . 4       RRR4       R#   + '       g   i     R# ; i)typing._overload_registryc                       \        \        4      # rb   r   r  rl   rk   rh   r  COverloadTests.test_overload_on_compiled_functions.<locals>.<lambda>  s	    {4'8rk   N)	r
   r   r   rc   _overload_registryr   sumprintr   r   s   &rh   #test_overload_on_compiled_functions1OverloadTests.test_overload_on_compiled_functions  s    .89; ; V66; SMUO V11#6;V11%8"=; ; ; ;s   BB<<C	c                R    R  pTp\        V4       R pTp\        V4       R pWV.3# )c                      R # rb   rl   rl   rk   rh   r`  ,OverloadTests.set_up_overloads.<locals>.blah  r  rk   c                      R # rb   rl   rl   rk   rh   r`  rx    r  rk   c                      R # rb   rl   rl   rk   rh   r`  rx    r  rk   ri  )rf   r`  	overload1	overload2s   &   rh   set_up_overloadsOverloadTests.set_up_overloads  s=    	 		 		 +++rk   rm  c                      \        \        4      # rb   ro  rl   rk   rh   r  OverloadTests.<lambda>&  s	    K-rk   c                   V P                  \        P                  / 4       V P                  4       w  rV P	                  \        P                  / 4       V P                  \        \        V4      4      V4       R  p\        V4       TpR pV P                  \        \        V4      4      V.4       R pV P                  \        \        V4      4      . 4       \        4        V P                  \        P                  / 4       V P                  \        V4      . 4       R pV P                  \        V4      . 4       V P                  \        P                  / 4       R# )c                      R # rb   rl   rl   rk   rh   some_other_func=OverloadTests.test_overload_registry.<locals>.some_other_func/  r  rk   c                      R # rb   rl   rl   rk   rh   r  r  2  r  rk   c                      R # rb   rl   rl   rk   rh   not_overloaded<OverloadTests.test_overload_registry.<locals>.not_overloaded5  s    drk   c                      R # rb   rl   rl   rk   rh   the_only_one:OverloadTests.test_overload_registry.<locals>.the_only_one?  r:  rk   N)	r   rc   rq  r}  r   r.  r   r   r   )rf   impl	overloadsr  other_overloadr  r  s   &      rh   test_overload_registry$OverloadTests.test_overload_registry%  s
    	22B7//1F55r:mD12I>#!(#mO<=?OP"mN;<bA 	22B7t,b1 	!|4b922B7rk   c                    \        ^4       F9  pV P                  4       w  r#V P                  \        \	        V4      4      V4       K;  	  R# )r  N)r{   r}  r   r.  r   )rf   r  r  r  s   &   rh   test_overload_registry_repeated-OverloadTests.test_overload_registry_repeatedC  s:    qA"335ODT-"56	B rk   rl   N)rm   rn   ro   rp   rc  rj  rP   rt  r}  r
   r   r  r  rq   rr   rs   s   @rh   r]  r]    sY      > >,& &-.08088C Crk   r]  T_ac                   8   a  ] tR tRt o R tV 3R lR ltRtV tR# )AwaitableWrapperiL  c                    Wn         R # rb   rS  rf   rS  s   &&rh   r   AwaitableWrapper.__init__N      
rk   c                D   < V ^8  d   QhRS[ P                  S[,          /# r`  )rc   Iteratorr  )r  rt   s   "rh   r  AwaitableWrapper.__annotate__Q  s      6??3/ rk   c              #  *   "   R x  V P                   # 5irb   r  r   s   &rh   	__await__AwaitableWrapper.__await__Q  s     zzs   r  N)rm   rn   ro   rp   r   r  rq   rr   rs   s   @rh   r  r  L  s      rk   r  c                   V   a  ] tR tRt o V 3R lR ltV 3R lR ltV 3R lR ltRtV tR	# )
AsyncIteratorWrapperiU  c                D   < V ^8  d   QhRS[ P                  S[,          /# )r  rS  )rc   r2  r  )r  rt   s   "rh   r  !AsyncIteratorWrapper.__annotate__W  s      fooc2 rk   c                    Wn         R # rb   r  r  s   &&rh   r   AsyncIteratorWrapper.__init__W  r  rk   c                D   < V ^8  d   QhRS[ P                  S[,          /# r`  )rc   r  r  )r  rt   s   "rh   r  r  Z  s      6//4 rk   c                    V # rb   rl   r   s   &rh   	__aiter__AsyncIteratorWrapper.__aiter__Z  s    rk   c                    < V ^8  d   QhRS[ /# r`  )r  )r  rt   s   "rh   r  r  ]  s     % % %rk   c                V   "   V P                   G R j  xL
 pV'       d   V# \        h L5irb   )rS  StopAsyncIteration)rf   datas   & rh   	__anext__AsyncIteratorWrapper.__anext__]  s$     ZZK$$	  s   )')	)r  N)	rm   rn   ro   rp   r   r  r  rq   rr   rs   s   @rh   r  r  U  s#       % %rk   r  c                   8   a  ] tR tRt o V 3R lR ltR tRtV tR# )ACMid  c                    < V ^8  d   QhRS[ /# r`  rL  )r  rt   s   "rh   r  ACM.__annotate__e  s      # rk   c                   "   ^*# 5ir  rl   r   s   &rh   
__aenter__ACM.__aenter__e  s        c                   "   R # 5irb   rl   )rf   etyper  tbs   &&&&rh   	__aexit__ACM.__aexit__g  s     r  rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r  d  s       rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )r  ij  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r  )r  rt   s   "rh   r  A.__annotate__j  s     H rk   rl   Nrm  rs   s   @rh   r  r  j  rn  rk   r  c                   0   a  ] tR tRt o RtV 3R ltRtV tR# )r	  il  Nc                \   < V ^8  d   Qh/ S[ S[R,          ,          ;R&   S[;R&   S[;R&   # )r  r	  r   r   r   )r%   r   r   )r  rt   s   "rh   r  B.__annotate__l  s/     % 
F  F rk   rl   rm   rn   ro   rp   r   r  rq   rr   rs   s   @rh   r	  r	  l  s     !%A  rk   r	  c                   :   a  ] tR tRt o ]! 4       tV 3R ltRtV tR# )CSubip  c                4   < V ^8  d   Qh/ S[ R,          ;R&   # )r  r  r  )r%   )r  rt   s   "rh   r  CSub.__annotate__p  s      rk   rl   N)	rm   rn   ro   rp   r	  r  r  rq   rr   rs   s   @rh   r  r  p  s     #A  rk   r  c                   0   a  ] tR tRt o . tV 3R ltRtV tR# )r  ir  c                F   < V ^8  d   Qh/ S[ S[S[,          ,          ;R&   # )r  lst)r%   r   r   )r  rt   s   "rh   r  G.__annotate__r  s     	$q'	 rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r  r  s     C  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )Loopiu  c                4   < V ^8  d   Qh/ S[ R,          ;R&   # )r  r  r  r&   )r  rt   s   "rh   r  Loop.__annotate__u  s     
- rk   rl   Nrm  rs   s   @rh   r  r  u  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )NoneAndForwardix  c                .   < V ^8  d   Qh/ R;R&   R;R&   # )r  r  parentNmeaningrl   )r  rt   s   "rh   r  NoneAndForward.__annotate__x  s      M rk   rl   Nrm  rs   s   @rh   r  r  x  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )CoolEmployeei|  c                2   < V ^8  d   Qh/ S[ ;R&   S[;R&   # r  rA  coolr  )r  rt   s   "rh   r  CoolEmployee.__annotate__|  s     
I 
I rk   rl   Nrm  rs   s   @rh   r  r  |  rn  rk   r  c                   0   a  ] tR tRt o ^ tV 3R ltRtV tR# )CoolEmployeeWithDefaulti  c                2   < V ^8  d   Qh/ S[ ;R&   S[;R&   # r  r  )r  rt   s   "rh   r  $CoolEmployeeWithDefault.__annotate__  s     
I 
M rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r    s     D  rk   r  c                   2   a  ] tR tRt o R tV 3R ltRtV tR# )XMethi  c                (    ^V P                   ,          # r  r   r   s   &rh   doubleXMeth.double  s    466zrk   c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  XMeth.__annotate__  r}  rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r    s       rk   r  c                   <   a  ] tR tRt o ^tR tR tV 3R ltRtV t	R# )XRepri  c                8    V P                    R V P                   2# )z -> r	  r   s   &rh   __str__XRepr.__str__  s    &&dffX&&rk   c                    ^ # r	  rl   rf   rW
  s   &&rh   __add__XRepr.__add__  s    rk   c                2   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   # rj  rL  )r  rt   s   "rh   r  XRepr.__annotate__  s     
F 
J rk   rl   N)
rm   rn   ro   rp   r   r  r  r  rq   rr   rs   s   @rh   r  r    s     A'  rk   r  Labelrs  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )Point2Di  c                2   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   # rj  rL  )r  rt   s   "rh   r  Point2D.__annotate__  rl  rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )Point2DGenerici  c                2   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   # r  rM  r   r  )r  rt   s   "rh   r  Point2DGeneric.__annotate__  s     D D rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )r   i  c                &   < V ^8  d   Qh/ S[ ;R&   # r  rL  )r  rt   s   "rh   r  Bar.__annotate__  r}  rk   rl   Nrm  rs   s   @rh   r   r     rn  rk   r   Ftotalc                   ,   a  ] tR tRt o V 3R ltRtV tR# )
BarGenerici  c                &   < V ^8  d   Qh/ S[ ;R&   # r  rL  )r  rt   s   "rh   r  BarGeneric.__annotate__  r}  rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  c                       ] tR tRtRtR# )LabelPoint2Di  rl   Nr   rl   rk   rh   r	  r	        Crk   r	  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )Optionsi  c                2   < V ^8  d   Qh/ S[ ;R&   S[;R&   # )r  	log_levellog_pathr  )r  rt   s   "rh   r  Options.__annotate__  s     N M rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )
TotalMoviei  c                B   < V ^8  d   Qh/ S[ ;R&   S[S[,          ;R&   # r  titlerf  )r  r:   r   )r  rt   s   "rh   r  TotalMovie.__annotate__  s     J 
c
 rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )NontotalMoviei  c                B   < V ^8  d   Qh/ S[ S[,          ;R&   S[;R&   # r  )r;   r  r   )r  rt   s   "rh   r  NontotalMovie.__annotate__  s     C= 
I rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ParentNontotalMoviei  c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # )r  r  r;   r  )r  rt   s   "rh   r   ParentNontotalMovie.__annotate__  s     C= rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ChildTotalMoviei  c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # )r  rf  r:   r   )r  rt   s   "rh   r  ChildTotalMovie.__annotate__  s     
c
 rk   rl   Nrm  rs   s   @rh   r!  r!    rn  rk   r!  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ParentDeeplyAnnotatedMoviei  c                ^   < V ^8  d   Qh/ S[ S[ S[S[,          R3,          R3,          ;R&   # )r  r  another levelr  )rC   r;   r  )r  rt   s   "rh   r  'ParentDeeplyAnnotatedMovie.__annotate__  s(     Yx}h67HII rk   rl   Nrm  rs   s   @rh   r&  r&    rn  rk   r&  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ChildDeeplyAnnotatedMoviei  c                J   < V ^8  d   Qh/ S[ S[S[R3,          ,          ;R&   # )r  r  rf  )r:   rC   r   )r  rt   s   "rh   r  &ChildDeeplyAnnotatedMovie.__annotate__  s     
iT	*
++ rk   rl   Nrm  rs   s   @rh   r+  r+    rn  rk   r+  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )AnnotatedMoviei  c                z   < V ^8  d   Qh/ S[ S[S[,          R3,          ;R&   S[S[ S[R3,          ,          ;R&   # )r  r  r  r  rf  rC   r;   r  r:   r   )r  rt   s   "rh   r  AnnotatedMovie.__annotate__  s7     Xc]H,-- 
iT	*
++ rk   rl   Nrm  rs   s   @rh   r/  r/    rn  rk   r/  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )DeeplyAnnotatedMoviei  c                   < V ^8  d   Qh/ S[ S[ S[S[,          R3,          R3,          ;R&   S[S[ S[R3,          ,          ;R&   # )r  r  r(  r  r  rf  r1  )r  rt   s   "rh   r  !DeeplyAnnotatedMovie.__annotate__  sA     Yx}h67HII 
iT	*
++ rk   rl   Nrm  rs   s   @rh   r4  r4    rn  rk   r4  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )WeirdlyQuotedMoviei  c                N   < V ^8  d   Qh/ S[ R,          ;R&   S[R,          ;R&   # )r  r  zAnnotated[int, 2000]rf  )z"Annotated[Required[str], "foobar"]r(  )rC   r:   )r  rt   s   "rh   r  WeirdlyQuotedMovie.__annotate__  s'     JKK 
,
-- rk   rl   Nrm  rs   s   @rh   r8  r8    rn  rk   r8  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )HasForeignBaseClassi  c                .   < V ^8  d   Qh/ R;R&   R;R&   # )r  r  
some_xreprzmod_generics_cache.Aother_arl   )r  rt   s   "rh   r   HasForeignBaseClass.__annotate__  s      ## rk   rl   Nrm  rs   s   @rh   r<  r<    rn  rk   r<  c                N    V ^8  d   QhR\         P                  \        ,          /# )r  am)rc   AsyncContextManagerr   )r  s   "rh   r  r    s      V//4 rk   c                    "   T ;_uu_4       GR j  xL
 pTuuR R R 4      GR j  xL
  #  L L  + GR j  xL 
 '       g   i     R # ; i5irb   rl   )rB  r   s   & rh   g_withrE    s"     rrQ rrrrrrs?   A*A.A,AAA	7
A	 A		Ac                      a  ] tR tRt o ]P
                  V 3R lR l4       t]P
                  ]P
                  V 3R lR l4       4       tRtV t	R# )ForRefExamplei  c                   < V ^8  d   QhRR/# r  rf   rG  rl   )r  rt   s   "rh   r  ForRefExample.__annotate__  s      ? rk   c                    R # rb   rl   r   s   &rh   r  ForRefExample.func  s    rk   c                   < V ^8  d   QhRR/# rI  rl   )r  rt   s   "rh   r  rJ    s      _ rk   c                    R # rb   rl   r   s   &rh   r   ForRefExample.nested  s     	rk   rl   N)
rm   rn   ro   rp   rY   decr  r   rq   rr   rs   s   @rh   rG  rG    s?     ^^  ^^^^  rk   rG  c                     a  ] tR tRt o R tR t]! 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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(# ))GetTypeHintsTestsi  c                   V P                  \        4      ;_uu_ 4        \        ^{4       RRR4       V P                  \        4      ;_uu_ 4        \        R4       RRR4       V P                  \        4      ;_uu_ 4        \        R4       RRR4       R#   + '       g   i     Lt; i  + '       g   i     LV; i  + '       g   i     R# ; i){   Nr  )r   r   r1  r   s   &rh   (test_get_type_hints_from_various_objects:GetTypeHintsTests.test_get_type_hints_from_various_objects  sv    y))H *y))J *y))I *)	 *))))))s#   BB) B<B&	)B9	<C	c           	     ,   R \         \        \        3,          R\        R\        R\        \        ,          /pV P	                  \        \        4      V4       V P	                  \        \        4      / 4       V P	                  \        \        4      / 4       R# )rg   r   r   rF  N)	r   r   r  r  r   r1  rY   rZ   r[   )rf   ann_module_type_hintss   & rh   test_get_type_hints_modules-GetTypeHintsTests.test_get_type_hints_modules  sg    !$eCHosCc3PSV[P[ \Z*?@[)2.[)2.rk   z	known bugc                    R \         \        P                  ,          R\         \        P                  ,          /pV P	                  \        \        4      V4       R# )	default_a	default_bN)r   rW   r  r	  r   r1  )rf   	mgc_hintss   & rh   &test_get_type_hints_modules_forwardref8GetTypeHintsTests.test_get_type_hints_modules_forwardref  sD    
 !(+=+?+?"@ (+=+?+?"@B	/0)<rk   c           
        V P                  \        \        P                  4      R \        \        P                  ,          /4       V P                  \        \        P                  4      \        4       V P                  \        \        P                  4      R\        /4       V P                  \        \        P                  4      R\        R\        R \        \        P                  ,          /4       V P                  \        \        P                  4      R\        /4       V P                  \        \        P                  4      R \        \        P                  ,          /4       V P                  \        \        P                  4      R\        R \        /4       V P                  \        \        P                   4      R\        /4       V P                  \        \"        4      R\"        R\        R4      /4       V P                  \        \$        4      R	\&        R
\(        P*                  R\(        P,                  /4       V P                  \        \&        P.                  4      R\        R \        /4       V P                  \        \(        P,                  4      R\(        P,                  P*                  R\(        P,                  P*                  R\(        P*                  /4       R# )r   rB  r=  r>  r  r   r  r  Nr>  r?  some_bmy_inner_a1my_inner_a2
my_outer_a)r   r1  rY   r  r   r   j_classr  r  r   r  r  r  r   h_classr
  rk  r  r<  r  rW   r  r	  r
  r   s   &rh   test_get_type_hints_classes-GetTypeHintsTests.test_get_type_hints_classes  s   Z\\*x
56	8c*"4"45t<Z\\*S$K8Z\\*sCc8JLL3IJ	LZ\\*S#J7Z//0x
56	8Z\\*S#sC,@AZ^^,sCj9^,"NItDzJ	L01&y:L:N:N"$6$8$8:	; 	U]]+sC-	//112');)=)=)?)?');)=)=)?)?&(:(<(<>	?rk   c                \     ! R  R4      pV P                  \        V4      R\        /4       R# )c                   0   a  ] tR tRt o RtV 3R ltRtV tR# )[GetTypeHintsTests.test_get_type_hints_classes_no_implicit_optional.<locals>.WithNoneDefaulti  Nc                &   < V ^8  d   Qh/ S[ ;R&   # )r  fieldrL  )r  rt   s   "rh   r  hGetTypeHintsTests.test_get_type_hints_classes_no_implicit_optional.<locals>.WithNoneDefault.__annotate__  s      rk   rl   )rm   rn   ro   rp   rn  r  rq   rr   rs   s   @rh   WithNoneDefaultrl    s     E  rk   rp  rn  N)r   r1  r   )rf   rp  s   & rh   0test_get_type_hints_classes_no_implicit_optionalBGetTypeHintsTests.test_get_type_hints_classes_no_implicit_optional  s'    	 	 	_-~>rk   c                   \          ! R  R4      4       pV P                  VP                  R4       V P                  VP                  P                  P                  R4       V P                  \        \        P                  P                  4      / 4        ! R R\        \        ,          4      p\          ! R RV4      4       pV P                  \        VP                  4      R\        /4       R# )	c                   *    ] tR tRt ! R R4      tRtR# )?GetTypeHintsTests.test_respect_no_type_check.<locals>.NoTpChecki  c                   2   a  ] tR tRt o V 3R lR ltRtV tR# )CGetTypeHintsTests.test_respect_no_type_check.<locals>.NoTpCheck.Inni  c                   < V ^8  d   QhRR/# )r  r   z
not a typerl   )r  rt   s   "rh   r  PGetTypeHintsTests.test_respect_no_type_check.<locals>.NoTpCheck.Inn.__annotate__  s    88l8rk   c                    R # rb   rl   r   s   &&rh   r   LGetTypeHintsTests.test_respect_no_type_check.<locals>.NoTpCheck.Inn.__init__  r  rk   rl   Nr   rs   s   @rh   Innrw    s     88rk   r|  rl   N)rm   rn   ro   rp   r|  rq   rl   rk   rh   	NoTpCheckru    s    9 9rk   r}  Tc                   2   a  ] tR tRt o V 3R lR ltRtV tR# );GetTypeHintsTests.test_respect_no_type_check.<locals>.ABasei!  c                    < V ^8  d   QhRS[ /# rB  rL  )r  rt   s   "rh   r  HGetTypeHintsTests.test_respect_no_type_check.<locals>.ABase.__annotate__"  s    !!!rk   c                    R # rb   rl   r   s   &rh   r  @GetTypeHintsTests.test_respect_no_type_check.<locals>.ABase.meth"  s    crk   rl   Nr  rs   s   @rh   ABaser  !  s     !!rk   r  c                       ] tR tRtRtR# )9GetTypeHintsTests.test_respect_no_type_check.<locals>.Deri#  rl   Nr   rl   rk   rh   Derr  #  s    rk   r  r   N)r5   r   r  r|  r   r   r1  rZ   NTCr  r$   r   r   )rf   r}  r  r  s   &   rh   test_respect_no_type_check,GetTypeHintsTests.test_respect_no_type_check  s    		9 	9 
	9 	i1148imm,,>>E[__112B7	"GAJ 	"	% 
UZZ3*5rk   c                   V P                  \        \        4      / 4       V P                  \        \        4      / 4       V P                  \        \        4      / 4       V P                  \        \
        4      / 4       V P                  \        \        P                  4      / 4       V P                  \        \        4       P                  4      / 4       V P                  \        \        P                  4      / 4       R # rb   )
r   r1  r   r   rR  rP  r  r  r  joinr   s   &rh    test_get_type_hints_for_builtins2GetTypeHintsTests.test_get_type_hints_for_builtins'  s    S2&TB'S2&S2&V^^,b1VX--.3SXX+rk   c                    R  pRVP                   R&   V P                  \        V4      R\        /4       R R lpV P                  \        V4      R\	        R4      /4       R# )c                     R # rb   rl   r	  s   &&rh   testf7GetTypeHintsTests.test_previous_behavior.<locals>.testf2  r  rk   r   r   c                    V ^8  d   QhRR/# )r  r   Nrl   )r  s   "rh   r  >GetTypeHintsTests.test_previous_behavior.<locals>.__annotate__5  s    Trk   c                     R # rb   rl   r   s   &rh   testg7GetTypeHintsTests.test_previous_behavior.<locals>.testg5  r  rk   N)rn  r   r1  r   r   )rf   r  r  s   &  rh   test_previous_behavior(GetTypeHintsTests.test_previous_behavior1  sM    %*c"Uc3Z0Uc4:%67rk   c                     ! R  R4      p ! R R4      pV! 4       pRR/Vn         V P                  \        V\        4       4      RV/4       R# )c                       ] tR tRtRtR# )LGetTypeHintsTests.test_get_type_hints_for_object_with_annotations.<locals>.Ai9  rl   Nr   rl   rk   rh   r  r  9      rk   r  c                       ] tR tRtRtR# )LGetTypeHintsTests.test_get_type_hints_for_object_with_annotations.<locals>.Bi:  rl   Nr   rl   rk   rh   r	  r  :  r  rk   r	  r   N)rn  r   r1  r  )rf   r  r	  r   s   &   rh   /test_get_type_hints_for_object_with_annotationsAGetTypeHintsTests.test_get_type_hints_for_object_with_annotations8  s<    C #JQ)C84rk   c                   V P                  \        \        P                  \        P                  4      R \
        P                  \        P                  ,          /4       V P                  \        \        \        4       4      R\        R\        \        \        ,          ,          R\        /4       V P                  \        \        \        4       4      R\        \        ,          R\        R\        R\        \        \        ,          ,          /4       V P                  \        \        4      R\        \        \        ,          ,          /4       R# )varr   r   r   r  r  N)r   r1  rZ   CVrO  rc   r%   r	  r  r   r   r  r  r   r   r   s   &rh   test_get_type_hints_ClassVar.GetTypeHintsTests.test_get_type_hints_ClassVar?  s    [^^[-A-AB!@A	CQ	*sC(1+)>SI	KT79-x~sCcx46	7 	Q%$q'):!;<rk   c                    R \         /pV P                  \        \         P                  4      V4       V P                  \        \         P                  4      V4       R# )rf   N)rG  r   r1  r  r   )rf   expectss   & rh   ,test_get_type_hints_wrapped_decoratored_func>GetTypeHintsTests.test_get_type_hints_wrapped_decoratored_funcI  sB    =)]//0':]112G<rk   c           	     ~  aaa	 R  R lp\         \        R3,          pV P                  \        V\	        4       \        4       4      R\        \        ,          /4       V P                  \        V\	        4       \        4       RR7      R\        \         \        R3,          ,          /4       R R lp\         \        R3,          pV P                  \        V\	        4       \        4       4      R\        \        ,          /4       V P                  \        V\	        4       \        4       RR7      R\        \         \        R3,          ,          /4       \        \         \        R3,          R3,          oV3R lR	 lpV P                  \        V\	        4       \        4       4      R,          \        \        R3,          4       V P                  \        V\	        4       \        4       RR7      R,          S4       \        \         \        R3,          R3,          oV3R
 lR lpV P                  \        V\	        4       \        4       4      R,          \        \        R3,          4       V P                  \        V\	        4       \        4       RR7      R,          S4       R R lpV P                  \        V\	        4       \        4       4      R\        P                  R\        \        ,          3,          R\        P                  \        \        3,          /4       \        P                  R\        \        ,          3,          oV3R lR lpV P                  \        V\	        4       \        4       RR7      R,          S4       \        P                   \        \        ,          R3,          o	V	3R lR lpV P                  \        V\	        4       \        4       4      R\        \        ,          /4       V P                  \        V\	        4       \        4       RR7      R\        P                   \        \        ,          R3,          /4       R# )c                2    V ^8  d   QhR\         R,          /# r  r   r  r  )r  s   "rh   r  EGetTypeHintsTests.test_get_type_hints_annotated.<locals>.__annotate__O  s    %%d3i%rk   c                     R # rb   rl   r   s   &rh   r  ?GetTypeHintsTests.test_get_type_hints_annotated.<locals>.foobarO  s    #rk   r   Tinclude_extrasc                D    V ^8  d   QhR\         \        R4      ,          /# r  r  )r  s   "rh   r  r  Z  s    11d:c?+1rk   c                     R # rb   rl   r   s   &rh   r  r  Z  r  rk   .c                   < V ^8  d   QhRS/# rB  rl   )r  BAs   "rh   r  r  f  r  rk   c                     R # rb   rl   r   s   &rh   r  ?GetTypeHintsTests.test_get_type_hints_annotated.<locals>.barfoof  r/  rk   c                   < V ^8  d   QhRS/# rB  rl   )r  r  s   "rh   r  r  n  r  rk   c                     R # rb   rl   r   s   &rh   r  r  n  r/  rk   c                    V ^8  d   QhR\         P                  R\        \        \        ,          R3,          3,          R\         P
                  \        \        \        R3,          3,          /# )r  r   .constr   mutable)rc   r#   rC   r   r   r   r   )r  s   "rh   r  r  u  sR     	H 	HvsId1gw6F,G'GH 	H||C1i<)@$@A	Hrk   c                     R # rb   rl   r	  s   &&rh   r  @GetTypeHintsTests.test_get_type_hints_annotated.<locals>.barfoo2u  s    DGrk   r   c                   < V ^8  d   QhRS/# rB  rl   )r  BA2s   "rh   r  r  }        s rk   c                     R # rb   rl   r   s   &rh   barfoo3@GetTypeHintsTests.test_get_type_hints_annotated.<locals>.barfoo3}  r  rk   r  c                   < V ^8  d   QhRS/# rB  rl   )r  BA3s   "rh   r  r    r  rk   c                     R # rb   rl   r   s   &rh   barfoo4@GetTypeHintsTests.test_get_type_hints_annotated.<locals>.barfoo4  r  rk   Nrw   
   )rw   r   )rC   r   r   r,   r  r  r   r.  r   r   rz  rc   r#   r   r   r  )
rf   r  r  r  r  r  r  r  r  r  s
   &      @@@rh   test_get_type_hints_annotated/GetTypeHintsTests.test_get_type_hints_annotatedN  s   %c7l#679fh7$s)	
 	679fhtL$yg./0	

 	2c7l#679fh7$s)	
 	679fhtL$yg./0	

 9QY',-	68DSI5QRTWQW=Y679fhtLSQ	

 9QY',-	68DSI5QRTWQW=Y679fhtLSQ	

	H7GIvx8&//#tAw,/fll366JK	

 ooc47l+  7GIvxMcR	
 sU{G34  7GIvx8#+	
 	7GIvxM&""3;#789	
rk   c           	        R  R lpV P                  \        V4      R\        \        \        ,          ,          /4       V P                  \        VRR7      R\        \        \
        \        R3,          ,          ,          /4       R# )c                j    V ^8  d   QhR\         \        \        \        R3,          ,          ,          /# )r  r   meta)r   r.  rC   r  )r  s   "rh   r  NGetTypeHintsTests.test_get_type_hints_annotated_in_union.<locals>.__annotate__  s     BB#YsF{%; <<Brk   c                     R # rb   rl   r   s   &rh   
with_unionLGetTypeHintsTests.test_get_type_hints_annotated_in_union.<locals>.with_union  s    srk   r   Tr  r  N)r   r,   r   r.  r  rC   )rf   r  s   & rh   &test_get_type_hints_annotated_in_union8GetTypeHintsTests.test_get_type_hints_annotated_in_union  sZ    B
3c3c?5KL:d;#YsF{3445	
rk   c           	     `  a \         \        R 3,          o ! V3R lR\        \        ,          4      pV P                  \	        VP
                  \        4       \        4       4      RV\        ,          RV\        ,          /4       V P                  \	        VP
                  \        4       \        4       RR7      RSV\        ,          ,          RV\        ,          /4       V P                  \	        VP                  \        4       \        4       4      RV\        ,          RV\        ,          /4       R# )Constc                   H   <a  ] tR tRt o V 3R lR ltVV 3R lR ltRtV tR# )CGetTypeHintsTests.test_get_type_hints_annotated_refs.<locals>.MySeti  c                "   < V ^8  d   QhRRRR/# )r  rW
  zConst[MySet[T]]r#  MySet[T]rl   )r  rt   s   "rh   r  PGetTypeHintsTests.test_get_type_hints_annotated_refs.<locals>.MySet.__annotate__  s      %6 : rk   c                    R # rb   rl   r  s   &&rh   __ior__KGetTypeHintsTests.test_get_type_hints_annotated_refs.<locals>.MySet.__ior__  r  rk   c                2   < V ^8  d   QhRSZR,          RR/# )r  rW
  r  r#  rl   )r  r  rt   s   "rh   r  r    s       eJ&7 J rk   c                    R # rb   rl   r  s   &&rh   __iand__LGetTypeHintsTests.test_get_type_hints_annotated_refs.<locals>.MySet.__iand__  r  rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   )rt   r  s   @rh   MySetr    s       rk   r  rW
  r#  Tr  N)	rC   r   r$   r   r,   r  r  r  r  )rf   r  r  s   & @rh   "test_get_type_hints_annotated_refs4GetTypeHintsTests.test_get_type_hints_annotated_refs  s    !W*%	GAJ 	 	5>>79fh?eAh%(3	

 	5>>79fhtTeE!Hoxq:	

 	5==')VX>eAh%(3	
rk   c                    RR R llpV P                  \        V4      R\        /4       V P                  \        VRR7      R\        \        R3,          /4       R # )Nc                >    V ^8  d   QhR\         \        R3,          /# )r  r   r  )rC   r   )r  s   "rh   r  WGetTypeHintsTests.test_get_type_hints_annotated_with_none_default.<locals>.__annotate__  s    NN9S&[+ANrk   c                     R # rb   rl   r   s   &rh   annotated_with_none_defaultfGetTypeHintsTests.test_get_type_hints_annotated_with_none_default.<locals>.annotated_with_none_default  s    3rk   r   Tr  r  rb   )r   r,   r   rC   )rf   r  s   & rh   /test_get_type_hints_annotated_with_none_defaultAGetTypeHintsTests.test_get_type_hints_annotated_with_none_default  sO    N67#J	
 	6tL)CK()	
rk   c                \     ! R  R4      pV P                  \        V4      R\        /4       R# )c                   0   a  ] tR tRt o ]tV 3R ltRtV tR# )JGetTypeHintsTests.test_get_type_hints_classes_str_annotations.<locals>.Fooi  c                $   < V ^8  d   Qh/ R;R&   # )r  r   r   rl   )r  rt   s   "rh   r  WGetTypeHintsTests.test_get_type_hints_classes_str_annotations.<locals>.Foo.__annotate__  s     F rk   rl   N)	rm   rn   ro   rp   r  r   r  rq   rr   rs   s   @rh   r   r    s     A  rk   r   r   N)r   r,   r  r  s   & rh   +test_get_type_hints_classes_str_annotations=GetTypeHintsTests.test_get_type_hints_classes_str_annotations  s'    	 	 	,sCj9rk   c                     ! R  R4      pRVn         V P                  R\        P                  4       V P	                  \        V4      / 4       R# )c                       ] tR tRtRtR# )CGetTypeHintsTests.test_get_type_hints_bad_module.<locals>.BadModulei  rl   Nr   rl   rk   rh   	BadModuler    rw  rk   r  badN)rn   r?
  sysmodulesr   r,   )rf   r  s   & rh   test_get_type_hints_bad_module0GetTypeHintsTests.test_get_type_hints_bad_module  s=    	 	$	,	2B7rk   c                     ! R  R4      p ! R RV4      pR;Vn         Vn         V P                  R\        P                  4       V P	                  \        V4      R\        R\        /4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )KGetTypeHintsTests.test_get_type_hints_annotated_bad_module.<locals>.BadBasei  c                &   < V ^8  d   Qh/ S[ ;R&   # r  )rz  )r  rt   s   "rh   r  XGetTypeHintsTests.test_get_type_hints_annotated_bad_module.<locals>.BadBase.__annotate__  s     J rk   rl   Nrm  rs   s   @rh   BadBaser    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )KGetTypeHintsTests.test_get_type_hints_annotated_bad_module.<locals>.BadTypei  c                &   < V ^8  d   Qh/ S[ ;R&   # r	  r  )r  rt   s   "rh   r  XGetTypeHintsTests.test_get_type_hints_annotated_bad_module.<locals>.BadType.__annotate__  s     I rk   rl   Nrm  rs   s   @rh   BadTyper    rn  rk   r  r  rk  rc  N)rn   r?
  r  r  r   r,   rz  r.  )rf   r  r  s   &  rh   (test_get_type_hints_annotated_bad_module:GetTypeHintsTests.test_get_type_hints_annotated_bad_module  sZ    	 		g 	277W/,05%2MNrk   c                    \        \        4      pV P                  VR \        \        ,          /4       \        \        P
                  4      pV P                  VR\        /4       R# )rA  rS  N)r,   r\   r   r&   r  MyClassrf   hintss   & rh   test_forward_ref_and_final,GetTypeHintsTests.test_forward_ref_and_final  sJ    {+s 45{223% 01rk   c                j    \        \        4      pV P                  VR \        \        ,          /4       R# )rL  N)r,   r]   r   r%   r   r  s   & rh   test_top_level_class_var*GetTypeHintsTests.test_top_level_class_var  s'     {+(3- 89rk   c           
        V P                  \        \        4      R \        R\        /4       V P                  \        \        RR7      R \        R\
        \        ,          /4       V P                  \        \        4      R \        R\        /4       V P                  \        \        RR7      R \        \        \        ,          R3,          R\
        \        \        R3,          ,          /4       V P                  \        \        4      R \        R\        /4       V P                  \        \        RR7      R \        \        \        ,          RR3,          R\
        \        \        R3,          ,          /4       V P                  \        \        4      R \        R\        /4       V P                  \        \        RR7      R \        \        \        ,          RR3,          R\
        \        \        R3,          ,          /4       V P                  \        \        P                  4      R\        /4       V P                  \        \        P                  RR7      R\        \        \        ,          RRR	3,          /4       V P                  \        \        4      R \        R\        /4       V P                  \        \        RR7      R \        \        ,          R\
        \        ,          /4       V P                  \        \        4      R \        R\        /4       V P                  \        \        RR7      R \        \        \        ,          RR3,          R\
        \        \        R3,          ,          /4       R
# )r  rf  Tr  r  r  r(  rM  r   r7  N)r   r,   r  r  r   r:   r/  rC   r;   r4  r8  rX   VeryAnnotatedr!  r+  r   s   &rh   test_get_type_hints_typeddict/GetTypeHintsTests.test_get_type_hints_typeddict  s   
3gsFC5PQ
4HSK$K
 	
 	7'3PS9TUtLYx}h67K	#t) 45O
 	
 	(<=fVY?Z[(<TRYx}hGHK	#t) 45U
 	
 	(:;gsFTW=XY(:4PYx}hGHK	#t) 45S
 	
 	(:(H(HICQT:V(:(H(HY]^8C=#sC78a
 	 	87CQT:UVMXc]FK,<P
 	 	(ABWcSY[^D_`(ARVWYx}hGHK	#t) 45Z
 	rk   c                  a \        R 4      oR R lpR R lpV3R lR lpV P                  \        V4      R\        P                  P
                  \        .\        3,          /4       V P                  \        V4      R\        P                  P
                  R\        3,          /4       V P                  \        V4      R\        P                  P
                  S\        3,          /4       R	# )
rb  c                p    V ^8  d   QhR\         P                  P                  \        .\        3,          /# rB  r  r  r#   r   )r  s   "rh   r  TGetTypeHintsTests.test_get_type_hints_collections_abc_callable.<locals>.__annotate__  s"    ;;))3%*5;rk   c                     R # rb   rl   r   s   &rh   rg   IGetTypeHintsTests.test_get_type_hints_collections_abc_callable.<locals>.f  s    rk   c                f    V ^8  d   QhR\         P                  P                  R\        3,          /# )r  r   .r  )r  s   "rh   r  r    s     99))#s(39rk   c                     R # rb   rl   r   s   &rh   r:  IGetTypeHintsTests.test_get_type_hints_collections_abc_callable.<locals>.g  rG  rk   c                h   < V ^8  d   QhR\         P                  P                  S\        3,          /# rB  r  )r  rb  s   "rh   r  r    s!    77))!S&17rk   c                     R # rb   rl   r   s   &rh   r;  IGetTypeHintsTests.test_get_type_hints_collections_abc_callable.<locals>.h  r  rk   r   .N)rH   r   r,   r  r  r#   r   )rf   rg   r:  r;  rb  s   &   @rh   ,test_get_type_hints_collections_abc_callable>GetTypeHintsTests.test_get_type_hints_collections_abc_callable  s    cN;977*S+//2J2JC5RU:2V,WX*S+//2J2J3PS82T,UV*S+//2J2J1c62R,STrk   c                P    ! R  R4      pV P                  \        4      ;_uu_ 4        \        V4       RRR4       V P                  \        4      ;_uu_ 4        \        V\        P                  P
                  R7       RRR4       \        V\        P                  P                  R7      pV P                  V\        4       V P                  \        V4      R.4       V P                  VR,          \        P                  4       V P                  VR,          P                  R4       V P                  \        V\        P                  P                  R7      RR/4       V P                  \        V^R7      RR/4       R#   + '       g   i     ELU; i  + '       g   i     EL; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )7GetTypeHintsTests.test_get_type_hints_format.<locals>.Ci  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  r  )r  rt   s   "rh   r  DGetTypeHintsTests.test_get_type_hints_format.<locals>.C.__annotate__  r  rk   rl   Nrm  rs   s   @rh   r  r+    rn  rk   r  Nr  r   r  )r   	NameErrorr,   r  r  VALUE
FORWARDREFr   r  r   r.  rD   __arg__r  )rf   r  annoss   &  rh   test_get_type_hints_format,GetTypeHintsTests.test_get_type_hints_format  s/   	 	 y))1 * y))1]%9%9%?%?@ * q)=)=)H)HIeT*ese,eCj-*B*BCs++[9-2F2F2M2MN{+	- 	!4sK6HI *)) *))s   F &F F	F%	c                f   R  R lpV P                  \        4      ;_uu_ 4        \        V4       RRR4       V P                  \        4      ;_uu_ 4        \        V\        P                  P
                  R7       RRR4       V P                  \        V\        P                  P                  R7      R\        RVR7      R\        RVR7      /4       V P                  \        V\        P                  P                  R7      RRRR/4       R#   + '       g   i     L; i  + '       g   i     L; i)c                0    V ^8  d   QhR\         R\         /# rc  r  )r  s   "rh   r  KGetTypeHintsTests.test_get_type_hints_format_function.<locals>.__annotate__.  s    00I0)0rk   c                     R # rb   rl   r   s   &rh   r  CGetTypeHintsTests.test_get_type_hints_format_function.<locals>.func.  r)  rk   Nr  r   r  ownerr#  )
r   r.  r,   r  r  r/  r   r0  rU   r  r  s   & rh   #test_get_type_hints_format_function5GetTypeHintsTests.test_get_type_hints_format_function-  s    0 y))4  *y))4(<(<(B(BC * 	4(<(<(G(GH#Kt<(DAC	
 	]5I5I5P5PQ{HkB	D *)))s   D&D D	 D0	c                    R  R lpV P                  \        V\        4       \        4       4      R\        R\
        3,          /4       R# )c                    V ^8  d   QhRR/# )r  rM  zCallable[..., T]rl   )r  s   "rh   r  KGetTypeHintsTests.test_callable_with_ellipsis_forward.<locals>.__annotate__C  s     	 	% 	rk   c                     R # rb   rl   r  s   &rh   rk  BGetTypeHintsTests.test_callable_with_ellipsis_forward.<locals>.fooC  r  rk   rM  .N)r   r,   r  r  r#   r   rf   rk  s   & rh   #test_callable_with_ellipsis_forward5GetTypeHintsTests.test_callable_with_ellipsis_forwardA  s7    	 	WYAxQ/0	2rk   c                j    R  R lpV P                  \        V4      R\        \        ,          /4       R# )c                :    V ^8  d   QhR\         \        ,          /# rB  r  )r  s   "rh   r  EGetTypeHintsTests.test_special_forms_no_forward.<locals>.__annotate__J  s     	 	# 	rk   c                     R # rb   rl   r   s   &rh   rg   :GetTypeHintsTests.test_special_forms_no_forward.<locals>.fJ  r  rk   r   N)r   r,   r%   r   re   s   & rh   test_special_forms_no_forward/GetTypeHintsTests.test_special_forms_no_forwardI  s%    	*S(3-,@Ark   c                    ! R  R4      p ! R R4      pV P                  \        V\        4       4      R,          \        \        ,          4       V P                  \        V\        4       4      R,          \
        \        ,          4       V P                  \        V\        4       4      R,          \        4       V P                  \        V\        4       4      R,          \
        4       \        V\        4       4      R,          pV P                  \        V4      \        4       V P                  \        V4      \
        \        ,          34       R# )	c                   <   a  ] tR tRt o ^t^t^t^tV 3R ltRt	V t
R# )7GetTypeHintsTests.test_special_forms_forward.<locals>.CiP  c                b   < V ^8  d   Qh/ S[ R,          ;R&   S[ R,          ;R&   R;R&   R;R&   # )	r  rM  r   r%   r   r&   r   )r$  )r  r  )
Final[int]r  )rC   )r  rt   s   "rh   r  DGetTypeHintsTests.test_special_forms_forward.<locals>.C.__annotate__P  s@     015 ./3    N	 rk   rl   N)rm   rn   ro   rp   rM  r   r   r   r  rq   rr   rs   s   @rh   r  rO  P  s      45A23AAA	  rk   r  c                   0   a  ] tR tRt o ^tV 3R ltRtV tR# )8GetTypeHintsTests.test_special_forms_forward.<locals>.CFiV  c                4   < V ^8  d   Qh/ S[ R,          ;R&   # )r  rQ  r   r  )r  rt   s   "rh   r  EGetTypeHintsTests.test_special_forms_forward.<locals>.CF.__annotate__V  s     L!% rk   rl   N)rm   rn   ro   rp   r   r  rq   rr   rs   s   @rh   CFrT  V  s     $%A  rk   rW  rM  r   r   r   N)
r   r,   r  r%   r   r&   r   r-   r.  r.   )rf   r  rW  lfis   &   rh   test_special_forms_forward,GetTypeHintsTests.test_special_forms_forwardN  s    	 		& 	& 	795c:HSMJ795c:E#JG795c:HE795c:EBR+C0jot,#s6rk   c                  aa \         R ,          o\        \        S3,          o ! V3R lR4      p ! VV3R lR4      p ! VV3R lR4      p ! VV3R lR4      pV P                  \	        V\        4       \        4       4      \	        V\        4       \        4       4      4       V P                  \	        V\        4       \        4       4      R	\         \        \        \         \        \        \         R ,          3,          ,          3,          ,          /4       V P                  \	        V\        4       \        4       4      R	\        \        \         \        \        \         R ,          3,          ,          3,          /4       V P                  \	        V\        4       \        4       4      R	\        \         \        \        \         \        \        \         R ,          3,          ,          3,          ,          \         \        \        \         R ,          3,          ,          3,          /4       V P                  \	        V\        4       \        4       4      R	\        \        \         \        \        \         R ,          3,          ,          \         \        \        \         \        \        \         R ,          3,          ,          3,          ,          3,          /4       R
# )Valuec                   0   <a  ] tR tRt o VV 3R ltRtV tR# )9GetTypeHintsTests.test_union_forward_recursion.<locals>.Cie  c                6   < V ^8  d   Qh/ S[ SZ,          ;R&   # r  r  )r  r\  rt   s   "rh   r  FGetTypeHintsTests.test_union_forward_recursion.<locals>.C.__annotate__e  s     e rk   rl   Nrm  )rt   r\  s   @rh   r  r^  e  r*	  rk   r  c                   2   <a  ] tR tRt o VVV 3R ltRtV tR# )9GetTypeHintsTests.test_union_forward_recursion.<locals>.Dig  c                <   < V ^8  d   Qh/ S[ SZSZ3,          ;R&   # r  r   )r  r\  	ValueListrt   s   "rh   r  FGetTypeHintsTests.test_union_forward_recursion.<locals>.D.__annotate__g  s     ui'(( rk   rl   Nrm  rt   r\  re  s   @rh   r  rb  g        rk   r  c                   2   <a  ] tR tRt o VVV 3R ltRtV tR# )9GetTypeHintsTests.test_union_forward_recursion.<locals>.Eii  c                L   < V ^8  d   Qh/ S[ S[SZ,          SZ3,          ;R&   # r  r   r   )r  r\  re  rt   s   "rh   r  FGetTypeHintsTests.test_union_forward_recursion.<locals>.E.__annotate__i  s     tE{I-.. rk   rl   Nrm  rg  s   @rh   r  rj  i  rh  rk   r  c                   2   <a  ] tR tRt o VVV 3R ltRtV tR# )9GetTypeHintsTests.test_union_forward_recursion.<locals>.Fik  c                P   < V ^8  d   Qh/ S[ SZS[SZ,          SZ3,          ;R&   # r  rl  )r  r\  re  rt   s   "rh   r  FGetTypeHintsTests.test_union_forward_recursion.<locals>.F.__annotate__k  s      ud5k9455 rk   rl   Nrm  rg  s   @rh   r  ro  k  rh  rk   r  rk  N)r   r   r  r   r,   r  r  )rf   r  r  r  r  r\  re  s   &    @@rh   test_union_forward_recursion.GetTypeHintsTests.test_union_forward_recursiona  s   M	c9n%	 		) 	)	/ 	/	6 	6 	79fh?PQSZS\^d^fAgh79fh?eCeCg<N6O1P,P&Q!RS	U79fh?sDsDM7I1J,K'K!LM	O79fh?!%T%T']8J2K-L(L"MN!%T'](:";<=" 	 	79fh? !%T'](:";<!%T%T']8J2K-L(L"MNO" 	rk   c                   R  R lpV P                  \        V\        4       \        4       4      R\        \
        ,          /4       R R lpV P                  \        V\        4       \        4       4      R\        \
        ,          /4       R# )c                2    V ^8  d   QhR\         R,          /# r  rM  r   )r   )r  s   "rh   r  :GetTypeHintsTests.test_tuple_forward.<locals>.__annotate__       	 	5: 	rk   c                     R # rb   rl   r  s   &rh   rk  1GetTypeHintsTests.test_tuple_forward.<locals>.foo  r  rk   rM  c                D    V ^8  d   QhR\         \        R4      ,          /# rv  )rz  rD   )r  s   "rh   r  rw    s     	 	5C) 	rk   c                     R # rb   rl   r  s   &rh   rk  rz    r  rk   N)r   r,   r  r  r   r   rz  rC  s   & rh   test_tuple_forward$GetTypeHintsTests.test_tuple_forward  s`    	 	WYAuQx	*	 	WYAuQx	*rk   c                    R  R lpV P                  \        V\        4       \        4       4      R\        \
        ,          /4       R# )c                    V ^8  d   QhRR/# )r  rM  zList['int']rl   )r  s   "rh   r  ;GetTypeHintsTests.test_double_forward.<locals>.__annotate__  s     	 	? 	rk   c                     R # rb   rl   r  s   &rh   rk  2GetTypeHintsTests.test_double_forward.<locals>.foo  r  rk   rM  N)r   r,   r  r  r   r   rC  s   & rh   test_double_forward%GetTypeHintsTests.test_double_forward  s0    	WYAtCy)	+rk   c                ,   R  R lpV P                  \        V\        4       \        4       4      R\        \
        ,          /4       R R lpV P                  \        V\        4       \        4       4      R\        \
        ,          \        ,          /4       R# )c                2    V ^8  d   QhR\         R,          /# rv  rd  )r  s   "rh   r  :GetTypeHintsTests.test_union_forward.<locals>.__annotate__  rx  rk   c                     R # rb   rl   r  s   &rh   rk  1GetTypeHintsTests.test_union_forward.<locals>.foo  r  rk   rM  c                Z    V ^8  d   QhR\         \        R4      ,          \        ,          /# rv  )rz  rD   r   )r  s   "rh   r  r    s!     	 	5C)C/ 	rk   c                     R # rb   rl   r  s   &rh   rk  r    r  rk   N)r   r,   r  r  r   r   rz  r   rC  s   & rh   test_union_forward$GetTypeHintsTests.test_union_forward  se    	 	WYAuQx	*	 	WYAuQx#~.	0rk   c                    R p/ p\        W4       \        VR,          P                  4      pV P                  VRVR,          RVR,          /4       R# )z^class C:
    def foo(self, a: 'C') -> 'D': pass
class D:
    def bar(self, b: 'D') -> C: pass
r  rM  r#  r  N)r  r,   rk  r   )rf   r!  r  r  s   &   rh   test_default_globals&GetTypeHintsTests.test_default_globals  sJ    9
 Tr#w{{+bgxC ABrk   c                ^   \         pV P                  V! \        \        4       4      R ,          \        \        ,          4       V P                  V! \        \        4       4      R ,          \        \        ,          4       V P                  V! \        \        4       4      R ,          \        4       R# )r  N)r,   r   r  r  r&   r   r   )rf   r1  s   & rh   test_final_forward_ref(GetTypeHintsTests.test_final_forward_ref  si    T79-f5uT{CCgi08%*ECgi08%@rk   c                    R  R lpV P                  \        4      ;_uu_ 4        \        V\        4       4       RRR4       R#   + '       g   i     R# ; i)c                    V ^8  d   QhRR/# )r  rM  zNoode[T]rl   )r  s   "rh   r  7GetTypeHintsTests.test_name_error.<locals>.__annotate__  s     	 	: 	rk   c                     R # rb   rl   r  s   &rh   rk  .GetTypeHintsTests.test_name_error.<locals>.foo  r  rk   N)r   r.  r,   r  rC  s   & rh   test_name_error!GetTypeHintsTests.test_name_error  s5    	 y))3) *)))s   AA	c                    ! R  R\         \        ,          4      pV\        ,          p\        VP                  \        4       \        4       4      pV P                  VR,          \        V\        ,          ,          4       V P                  VR,          V\        ,          4       V P                  VR,          \        4       V P                  RV4       \        VP                  \        4       \        4       4      pV P                  VR,          \        V\        ,          ,          4       \        VP                  \        4       \        4       4      pV P                  VR,          V\        ,          4       R# )c                   p   a  ] tR tRt o V 3R lR ltRV 3R lR lltV 3R lR ltRV 3R	 lR
 lltRtV t	R# )+GetTypeHintsTests.test_basics.<locals>.Nodei  c                    < V ^8  d   QhRS[ /# rr  r  )r  rt   s   "rh   r  8GetTypeHintsTests.test_basics.<locals>.Node.__annotate__  s     . .a .rk   c                .    Wn         R ;V n        V n        R # rb   r>  )rf   rs  s   &&rh   r   4GetTypeHintsTests.test_basics.<locals>.Node.__init__  s    "
)--	DJrk   Nc                (   < V ^8  d   QhRRRRRS[ /# )r  r9  zOptional[Node[T]]r;  r:  stuffrL  )r  rt   s   "rh   r  r    s'     # #2# )# !$#rk   c                    Wn         W n        R # rb   )r9  r;  )rf   r9  r;  r  r`  s   &&&&&rh   add_both4GetTypeHintsTests.test_basics.<locals>.Node.add_both  s    
 !	"
rk   c                .   < V ^8  d   QhRS[ R,          /# r  noder:  )r   )r  rt   s   "rh   r  r    s     * *Xi%8 *rk   c                *    V P                  VR 4       R # rb   r  rf   r  s   &&rh   add_left4GetTypeHintsTests.test_basics.<locals>.Node.add_left      dD)rk   c                   < V ^8  d   QhRR/# r  rl   )r  rt   s   "rh   r  r    s     * *i *rk   c                *    V P                  R V4       R # rb   r  r  s   &&rh   	add_right5GetTypeHintsTests.test_basics.<locals>.Node.add_right  r  rk   r>  )NNNrb   )
rm   rn   ro   rp   r   r  r  r  rq   rr   rs   s   @rh   r  r    s2     . .# #* ** * *rk   r  r9  r;  r  r`  r  N)r$   r   r   r,   r  r  r  r   r   r?
  r  r  )rf   r  r  
both_hints
left_hintsright_hintss   &     rh   r|  GetTypeHintsTests.test_basics  s    	*71: 	*( I#AJJ	68D
F+Xd1g->?G,d1g6G,c2,#AJJ	68D
F+Xd1g->?$Q[[')VXFV,d1g6rk   c           
         \        R 4      pVR,          pV P                  VP                  R\        RW"P                  R7      /4       V P                  \        V4      RVP                  ^ ,          /4       R# )z
            from __future__ import annotations
            from typing import TypedDict
            class TD[UniqueT](TypedDict):
                a: UniqueT
            TDrM  UniqueT)r;  moduleN)rT   r   rn  rU   rn   r,   rX  )rf   r  r  s   &  rh   test_stringified_typeddict,GetTypeHintsTests.test_stringified_typeddict  sk    
 X++c3DYVXanan3o-pq+c23E3Ea3H-IJrk   rl   N)+rm   rn   ro   rp   rU  rY  r	   r_  rh  rq  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r'  r3  r<  rD  rK  rY  rr  r}  r  r  r  r  r  r|  r  rq   rr   rs   s   @rh   rR  rR    s     / 
+= =?0?6,85==
=
~

6

:8O2:'R	UJ*D(2B
7&@*+0	CA*!7FK Krk   rR  c                   ,   a  ] tR tRt o R tR tRtV tR# )GetUtilitiesTestCasei  c                	   \        R 4      p\        R4      p\        R4      p ! R R\        V,          4      pV P	                  \        V\        ,          4      V4       V P	                  \        WA,          4      V4       V P	                  \        \        4      R4       V P	                  \        \        \        ,          4      \        4       V P	                  \        \        \        \        3,          4      \        4       V P	                  \        \        R,          4      \        4       V P	                  \        \        \        \        ,          ,          4      \        4       V P	                  \        \        4      \        4       V P	                  \        \        V,          4      \        4       V P	                  \        \        \        W3,          ,          \        ,          4      \        4       V P	                  \        \        VR3,          4      \        4       V P	                  \        \        4      \        4       V P	                  \        \        4      \         4       V P	                  \        \"        4      \$        P&                  P"                  4       V P	                  \        \        \        ,          4      \        4       V P	                  \        \        4      R4       V P	                  \        \        \        ,          4      \        4       V P	                  \        VP(                  4      V4       V P	                  \        VP*                  4      V4       V P	                  \        \,        \        ,          4      \,        4       V P	                  \        \.        \        ,          4      \.        4       V P	                  \        . VO5^ ,          4      \0        4       V P	                  \        \0        V,          4      \0        4       V P	                  \        . \         . VO5,          O5^ ,          4      \         4       V P	                  \        \0        \        \0        V,          ,          ,          4      \0        4       R# )r   rp  rb  c                       ] tR tRtRtR# )/GetUtilitiesTestCase.test_get_origin.<locals>.Ci  rl   Nr   rl   rk   rh   r  r    r  rk   r  Nr  r   +   )r   r   rH   r$   r   r-   r   r%   r   r  r   r&   r   r   r.  rC   rz  r#   r  r  r   r   r;   r:   r   )rf   r   rp  rb  r  s   &    rh   r   $GetUtilitiesTestCase.test_get_origin  s   CL$cN!
!j3(!,j&*jot,j#/:jsCx159j17;jtCy!12E:j)73j,g6jeADk!23!78$?j1g:!67Cj&-j'/j*KOO,D,DEjc+T2j&-j,e4j(!,j*A.j#/:jS!12K@j2+V4j,f5j5":!23U;jfRj(9!:;VDrk   c           
        \        R 4      p ! R R\        V,          4      pV P                  \        V\        ,          4      \        34       V P                  \        W!,          4      V34       V P                  \        \
        P                  \        ,          4      \        34       V P                  \        \
        P                  V,          4      V34       V P                  \        \        \        ,          4      \        34       V P                  \        \        V,          4      V34       V P                  \        V4      R	4       V P                  \        \        4      R	4       V P                  \        \        4      R	4       V P                  \        \        4      R	4       V P                  \        \        4      R	4       V P                  \        \        \        ,          4      \        34       V P                  \        \        \        \        3,          4      \        \        34       V P                  \        \        R
,          4      R
4       V P                  \        \        \         \        ,          ,          4      \         \        ,          34       V P                  \        \"        \        ,          4      \        \%        R4      34       V P                  \        \        \        R3,          4      \        \%        R4      34       V P                  \        \        \        \&        V\        3,          3,          \        ,          4      \        \&        \        \        3,          34       V P                  \        \
        P(                  \        \&        W3,          3,          \"        \        ,          ,          4      \        \&        \"        \        ,          \"        \        ,          3,          34       V P                  \        \*        . V3,          \        ,          4      . \        34       V P                  \        \*        R\        3,          4      R\        34       V P                  \        \*        \        .\        3,          4      \        .\        34       V P                  \        \        \        \*        \&        VR3,          .\        3,          3,          4      \        \*        \&        VR3,          .\        3,          34       V P                  \        \&        \        R3,          4      \        R34       V P                  \        \&        R	,          4      R	4       V P                  \        \,        VR^R.3,          4      VR^R.34       V P                  \        \         4      R	4       V P                  \        \&        4      R	4       V P                  \        \*        4      R	4       V P                  \        \.        \        ,          4      \        34       V P                  \        \.        4      R	4       V P                  \        \0        P2                  P*                  \        .\        3,          4      \        .\        34       V P                  \        \0        P2                  P*                  R\        3,          4      R\        34       V P                  \        \0        P2                  P*                  . \        3,          4      . \        34       V P                  \        \0        P2                  P*                  \        .\        3,          4      \        \*        \        .\        3,          4      4       \5        R4      pV P                  \        V4      R	4       V P                  \        VP6                  4      R	4       V P                  \        VP8                  4      R	4       V P                  \        \*        V\        3,          4      V\        34       V P                  \        \0        P2                  P*                  V\        3,          4      V\        34       V P                  \        \*        \:        \        V3,          \        3,          4      \:        \        V3,          \        34       V P                  \        \0        P2                  P*                  \:        \        V3,          \        3,          4      \:        \        V3,          \        34       V P                  \        \:        \        \        V3,          4      \        \        V34       V P                  \        \.        \        ,          4      \.        \        34       V P                  \        \<        \        ,          4      \        34       V P                  \        \>        \        ,          4      \        34       V P                  \        \@        4      R	4       V P                  \        \B        \        ,          4      \        34       V P                  \        \D        \F        ,          4      \F        34       \I        R4      pV P                  \        V4      R	4       V P                  \        . VO5^ ,          4      V34       V P                  \        \J        V,          4      V34       V P                  \        \L        . VO5,          4      . VO54       V P                  \        \L        \J        V,          ,          4      \J        V,          34       V P                  \        . \L        . VO5,          O5^ ,          4      . VO54       V P                  \        \J        \L        \J        V,          ,          ,          4      \L        \J        V,          ,          34       R# )r   c                       ] tR tRtRtR# )-GetUtilitiesTestCase.test_get_args.<locals>.Ci  rl   Nr   rl   rk   rh   r  r    r  rk   r  N.onethreerb  rp  rl   r  )'r   r$   r   r.   r   rc   r  r  r   rE   rF   r%   r   r  r   r&   r   r   r   r   r    r#   rC   r.  r  r  rH   r   r   rI   r;   r:   rG   rL   rM   r{   r   r   rz  )rf   r   r  rb  rp  s   &    rh   test_get_args"GetUtilitiesTestCase.test_get_args  s   CL!
!!C&)C62!$!.&"4"4S"9:SFC&"4"4Q"781$?."56?."34qd;!b)#+#+$,-0"5(3-03&9%S/2S#J?'&/2H=%S	"23d3i\B(3-03T
2CD%T	"23c4:5FG%U1c6](:";C"@AuS#X/	1&++c5;.>"?"NOuXc]HSM%ABC	E(2q5/#"67"cC(38"45SzB(C5#:"673%F%XuQV}os6J-K(K"LMxq#v(<=>	@%S/2S#J?%),b1)Aua',B"CDq%QRU\T]F^_$,%"-(+R0$s),sf5$,+//":":C5#:"FG3%QTV+//":":38"DESzR+//":":2s7"CDr3iP+//":":C5#:"FG!(C5#:"67	9cN!b)!&&)2.!((+R0(1c6"23aX>+//":":1c6"BCaXN(;sAv+>+C"DE%c1f-s3	5+//":":;sAv;NPS;S"TU%c1f-s3	5+c3k":;c3]K$*-c{;(3-03&9+c"23cV<),b1)C.1C6:&-05(;$"r*&B&),re4&*-u5%*-vv6%r
"34vbzmD.E#2#J."34ff=&vbz):";<uVBZ?P>RSrk   rl   N)rm   rn   ro   rp   r   r  rq   rr   rs   s   @rh   r  r    s     E>BT BTrk   r  c                   V   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V tR# )EvaluateForwardRefTestsiR  c                X   \        R 4      pV P                  \        P                  ! V4      \        4       V P                  \        P                  ! VRR7      \        4       V P                  \        P                  ! V\
        P                  P                  R7      \        4       V P                  \        P                  ! V\
        P                  P                  R7      \        4       V P                  \        P                  ! V\
        P                  P                  R7      R 4       R# )r   )type_paramsr  Nrl   )rD   r   rc   evaluate_forward_refr   r  r  r/  r0  r   r  )rf   int_refs   & rh   test_evaluate_forward_ref1EvaluateForwardRefTests.test_evaluate_forward_refS  s    U#f11':C@''R@	
 	''8L8L8R8RS	
 	'' 4 4 ? ? 		
 	'' 4 4 ; ; 		
rk   c                   \        R 4      pV P                  \        4      ;_uu_ 4        \        P                  ! V4       RRR4       V P                  \        P                  ! V\        P                  P                  R7      V4       V P                  \        P                  ! V\        P                  P                  R7      R 4       R#   + '       g   i     L; i)missingNr  )rD   r   r.  rc   r  r   r  r  r0  r   r  )rf   r  s   & rh   #test_evaluate_forward_ref_undefined;EvaluateForwardRefTests.test_evaluate_forward_ref_undefinedk  s    Y'y))''0 *'' 4 4 ? ? 		
 	'' 4 4 ; ; 		
 *)s   C

C	c                :   \        R 4      pV P                  \        P                  ! V4      \        \
        \        ,          ,          4       V P                  \        P                  ! V\        P                  P                  R7      \        \
        \        ,          ,          4       V P                  \        P                  ! V\        P                  P                  R7      R 4       \        R4      pV P                  \        P                  ! V4      \        4       R# )zint | list['str']r  z"'str'"N)rD   r   rc   r  r   r.  r  r  r  r0  r  r   )rf   r  whys   &  rh    test_evaluate_forward_ref_nested8EvaluateForwardRefTests.test_evaluate_forward_ref_nested|  s    ,-'',$s)O	
 	''M4H4H4S4ST$s)O	
 	''M4H4H4O4OP	

 %f11#6<rk   c                h    \        R 4      pV P                  \        P                  ! V4      R4       R# )NoneN)rD   r   rc   r  )rf   none_refs   & rh   test_evaluate_forward_ref_none6EvaluateForwardRefTests.test_evaluate_forward_ref_none  s%    f%f11(;TBrk   c                0   R p\        R4      pV P                  \        4      ;_uu_ 4        \        P                  ! V4       RRR4       V P                  \        P                  ! VRV/R7      \        \        ,          4       R#   + '       g   i     LK; i)r  list[A]Nr  )r  )rD   r   r.  rc   r  r   r.  r  )rf   r  r  s   &  rh   test_globals$EvaluateForwardRefTests.test_globals  sg    #y))'', *''c1X>I	
 *)s   BB	c                   \        R 4      pV P                  \        4      ;_uu_ 4        \        P                  ! V4       RRR4       V P                  \        P                  ! V\        R7      \        4       R#   + '       g   i     LB; i)r  Nr:  )rD   r   r.  rc   r  r   r  r  rf   r  s   & rh   
test_owner"EvaluateForwardRefTests.test_owner  sX    oy))'', *
 	''48!	
 *)s   A::B
	c                   \        R 4      pV P                  \        P                  ! V\        R7      \
        \        ,          4       \        R \        R7      pV P                  \        P                  ! V4      \
        \        ,          4       R# )z	list['A']r:  N)rD   r   rc   r  r  r.  r  r  s   & rh   test_inherited_owner,EvaluateForwardRefTests.test_inherited_owner  sb    %''48G	
 D1'',G	
rk   c                b   \        R 4      pV P                  \        4      ;_uu_ 4        \        P                  ! V4       RRR4       V P                  \        P                  ! V\        P                  P                  R7      \        \        R4      ,          4       R#   + '       g   i     Lf; i)r  Nr  r  )rD   r   r.  rc   r  r   r  r  r0  r.  rU   r  s   & rh   test_partial_evaluation/EvaluateForwardRefTests.test_partial_evaluation  ss    #y))'', * 	''M4H4H4S4ST"3'(	
 *)s   BB.	c                R    ^ RI Hp \        P                  ! VP                  4       R# )r   )fwdref_moduleN)test.typinganndatar  rc   r  fw)rf   r  s   & rh   test_with_module(EvaluateForwardRefTests.test_with_module  s    4##	rk   rl   N)rm   rn   ro   rp   r  r  r  r  r  r  r  r  r  rq   rr   rs   s   @rh   r  r  R  s8     
0
"=$C




 rk   r  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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. t0R/ t1R0 t2R1 t3R2 t4R3 t5R4 t6R5 t7R6 t8R7t9V t:R8# )9CollectionsAbcTestsi  c                    V P                  ^*\        P                  4       V P                  . \        P                  4       R# r   )r   rc   Hashabler   r   s   &rh   test_hashable!CollectionsAbcTests.test_hashable  *    b&//2  V__5rk   c                   V P                  . \        P                  4       V P                  . \        P                  4       V P                  . \        P                  4       V P                  ^*\        P                  4       V P	                  \
        \        P                  4       V P	                  \
        \        P                  4       R# r   )r   rc   r2  r   r   r.  r   s   &rh   test_iterable!CollectionsAbcTests.test_iterable  s|    b&//2 	b&//2b&//2  V__5dFOO4dFOO4rk   c                    \        . 4      pV P                  V\        P                  4       V P	                  ^*\        P                  4       R# r   )ri  r   rc   r  r   )rf   its   & rh   test_iterator!CollectionsAbcTests.test_iterator  s3    "Xb&//2  V__5rk   c                    R  R lpV! 4       pV P                  V\        P                  4       V P                  V\        P                  4       VP	                  R4       R# )c                N    V ^8  d   QhR\         P                  \        ,          /# r`  )rc   	Awaitabler   )r  s   "rh   r  8CollectionsAbcTests.test_awaitable.<locals>.__annotate__  s     	. 	.6++C0 	.rk   c                  4   "   \        ^*4      G Rj  xL
 #  L5ir   )r  rl   rk   rh   rk  /CollectionsAbcTests.test_awaitable.<locals>.foo  s     )"----s   N)r   rc   r  r   sendrf   rk  r:  s   &  rh   test_awaitable"CollectionsAbcTests.test_awaitable  sE    	.Ea!1!12  f&6&67	trk   c                   R  pV! 4       pV P                  V\        P                  4       V P                  \        4      ;_uu_ 4        \        V\        P                  \        ,          4       RRR4       V P                  V\        P                  4        VP                  R4       R#   + '       g   i     LD; i  \         d     R# i ; i)c                     "   R # 5irb   rl   rl   rk   rh   rk  /CollectionsAbcTests.test_coroutine.<locals>.foo  s     r  N)
r   rc   	Coroutiner   r   r   r   r   r  StopIterationr  s   &  rh   test_coroutine"CollectionsAbcTests.test_coroutine  s    	Ea!1!12y))q&**3/0 *  f&6&67	FF4L	 *)
  		s   &B*B= *B:	=CCc                    \        ^
4      p\        V4      pV P                  V\        P                  4       V P                  V\        P                  4       V P                  ^*\        P                  4       R# r  N)r{   r  r   rc   AsyncIterabler   rf   base_itr  s   &  rh   test_async_iterable'CollectionsAbcTests.test_async_iterable  sW    )!'*b&"6"67b&"6"67  V%9%9:rk   c                    \        ^
4      p\        V4      pV P                  V\        P                  4       V P                  ^*\        P                  4       R# r  )r{   r  r   rc   r  r   r  s   &  rh   test_async_iterator'CollectionsAbcTests.test_async_iterator  sA    )!'*b&"6"67  V%9%9:rk   c                    V P                  . \        P                  4       V P                  ^*\        P                  4       R# r   )r   rc   r^  r   r   s   &rh   
test_sizedCollectionsAbcTests.test_sized   s*    b&,,/  V\\2rk   c                    V P                  . \        P                  4       V P                  ^*\        P                  4       R# r   )r   rc   r4  r   r   s   &rh   test_container"CollectionsAbcTests.test_container  s.    b&"2"23  V%5%56rk   c                .   V P                  \        4       \        P                  4       V P                  \	        4       \        P                  4       V P                  \        \        P                  4       V P                  ^*\        P                  4       R# r   )r   rz  rc   r  rA
  r   r  r   r   s   &rh   test_collection#CollectionsAbcTests.test_collection  s^    egv'8'89ik6+<+<=dF$5$56  V%6%67rk   c                    V P                  \        4       \        P                  4       V P	                  ^*\        P                  4       R# r   )r   rQ  rc   r`  r   r   s   &rh   test_abstractset$CollectionsAbcTests.test_abstractset  s0    ceV%7%78  V%7%78rk   c                    V P                  \        4       \        P                  4       V P	                  \        4       \        P                  4       R # rb   )r   rQ  rc   
MutableSetr   rA
  r   s   &rh   test_mutableset#CollectionsAbcTests.test_mutableset  s2    ceV%6%67  f.?.?@rk   c                    V P                  / \        P                  4       V P                  ^*\        P                  4       R# r   )r   rc   r6  r   r   s   &rh   test_mapping CollectionsAbcTests.test_mapping  s*    b&..1  V^^4rk   c                    V P                  / \        P                  4       V P                  ^*\        P                  4       R# r   )r   rc   r!   r   r   s   &rh   test_mutablemapping'CollectionsAbcTests.test_mutablemapping  s.    b&"7"78  V%:%:;rk   c                    V P                  . \        P                  4       V P                  ^*\        P                  4       R# r   )r   rc   r6  r   r   s   &rh   test_sequence!CollectionsAbcTests.test_sequence  r  rk   c                    V P                  . \        P                  4       V P                  R\        P                  4       R # r=  )r   rc   MutableSequencer   r   s   &rh   test_mutablesequence(CollectionsAbcTests.test_mutablesequence"  s.    b&"8"89  V%;%;<rk   c                   V P                  \        4      ;_uu_ 4        V P                  R \        P                  4       RRR4       V P                  \        4      ;_uu_ 4        V P                  \        R 4      \        P                  4       RRR4       V P                  \        4      ;_uu_ 4         ! R R\        P                  4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        P                  \        P                  4      pRRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)rk   Nc                       ] tR tRtRtR# )0CollectionsAbcTests.test_bytestring.<locals>.Fooi,  rl   Nr   rl   rk   rh   r   r?  ,  r  rk   r   c                       ] tR tRtRtR# )0CollectionsAbcTests.test_bytestring.<locals>.Bari.  rl   Nr   rl   rk   rh   r   rA  .  s    Crk   r   )assertWarnsr9  r   rc   
ByteString	bytearrayr  r!  s   &  rh   test_bytestring#CollectionsAbcTests.test_bytestring&  s    011!!#v'8'89 2011!!)C.&2C2CD 2011-f''- 2011?f'')9)9? 21 211111111s/   !D%$*D83E2)E%D5	8E	E	E/	c                N    V P                  \        \        P                  4       R # rb   )r   r.  rc   r   r   s   &rh   	test_listCollectionsAbcTests.test_list0      dFKK0rk   c                    V P                  \        P                  \        P                  4        ! R  R\        P                  \
        ,          4      pV P                  V! 4       \        P                  4       R# )c                       ] tR tRtRtR# )/CollectionsAbcTests.test_deque.<locals>.MyDequei5  rl   Nr   rl   rk   rh   MyDequerM  5  r  rk   rN  N)r   r  dequerc   Dequer   r   )rf   rN  s   & rh   
test_dequeCollectionsAbcTests.test_deque3  sE    k//>-fll3'-gi):):;rk   c                b    V P                  \        P                  \        P                  4       R # rb   )r   r  Counterrc   r   s   &rh   test_counter CollectionsAbcTests.test_counter8  s    k116>>Brk   c                    V P                  \        \        P                  4       V P	                  \
        \        P                  4       R # rb   )r   rQ  rc   Setr   rA
  r   s   &rh   test_setCollectionsAbcTests.test_set;  s*    c6::.  FJJ7rk   c                    V P                  \        \        P                  4       V P	                  \
        \        P                  4       R # rb   )r   rA
  rc   r  r   rQ  r   s   &rh   test_frozenset"CollectionsAbcTests.test_frozenset?  s.    i)9)9:  f&6&67rk   c                N    V P                  \        \        P                  4       R # rb   )r   r  rc   r    r   s   &rh   r5  CollectionsAbcTests.test_dictC  rJ  rk   c                   \        R 4      p\        R4      pV P                  \        W3,          \        \        3,          \        \        \        3,          4       V P                  \        V\        3,          \        ,          \        \        \        3,          4       V P                  \        \        V3,          \        ,          \        \        \        3,          4       V P                  \        V\
        V,          3,          \        \        3,          \        \        \
        \        ,          3,          4       V P                  \        V\
        \        ,          3,          \        ,          \        \        \
        \        ,          3,          4       V P                  \        V\        V,          3,          \        \        3,          \        \        \        \        ,          3,          4       V P                  \        V\        \        ,          3,          \        ,          \        \        \        \        ,          3,          4       R# )r  r  N)r   r   r    r  r   r   r.  )rf   r  r  s   &  rh   test_dict_subscribe'CollectionsAbcTests.test_dict_subscribeF  sI   CLCLadCH-tCH~>afc*DcN;c1fc*DcN;aaj)#s(3T#tCy.5IJacl+C0$sDI~2FGaaj)#s(3T#tCy.5IJacl+C0$sDI~2FGrk   c                   V P                  \        4      ;_uu_ 4        \        P                  ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \        ,          ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \
        ,          ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lk; i  + '       g   i     R # ; irb   )r   r   rc   r   r   r   r   s   &rh   test_no_list_instantiation.CollectionsAbcTests.test_no_list_instantiationQ  s    y))KKM *y))KKN *y))KK *)	 *))))))#   C
!C!C0
C	C-	0D	c                    ! R  R\         P                  \        ,          4      pV! 4       pV P                  W!4       V P                  V\         P                  4       V P                  V\        4       V P                  \        V4       R# )c                       ] tR tRtRtR# )6CollectionsAbcTests.test_list_subclass.<locals>.MyListi[  rl   Nr   rl   rk   rh   MyListri  [  rw  rk   rj  N)rc   r   r   r   r6  r   r.  r   )rf   rj  rM  s   &  rh   test_list_subclass&CollectionsAbcTests.test_list_subclassY  sb    	V[[% 	 Ha(a1fd+  v.rk   c                    V P                  \        4      ;_uu_ 4        \        P                  ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \        \
        3,          ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \        \        3,          ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lq; i  + '       g   i     R # ; irb   )r   r   rc   r    r   r   r  r   r   s   &rh   test_no_dict_instantiation.CollectionsAbcTests.test_no_dict_instantiatione  s    y))KKM *y))KKB! *y))KKS!# *)	 *))))))#   C'C)%'C<C&	)C9	<D	c                "    ! R  R\         P                  \        \        3,          4      pV! 4       pV P	                  W!4       V P	                  V\         P
                  4       V P                  V\        4       V P                  \        V4       R# )c                       ] tR tRtRtR# )6CollectionsAbcTests.test_dict_subclass.<locals>.MyDictio  rl   Nr   rl   rk   rh   rF  rs  o  rw  rk   rF  N)	rc   r    r  r   r   r!   r   r  r   )rf   rF  r8  s   &  rh   test_dict_subclass&CollectionsAbcTests.test_dict_subclassm  sh    	V[[c* 	 Ha(a!6!67fd+  v.rk   c                   V P                  \        \        P                  ! 4       4      \        P
                  4       V P                  \        \        P                  \        \        3,          ! 4       4      \        P
                  4       V P                  \        \        P                  \        \        3,          ! 4       4      \        P
                  4       R # rb   )
r   r   rc   rM  r  r   r   r   r  r   r   s   &rh   test_defaultdict_instantiation2CollectionsAbcTests.test_defaultdict_instantiationy  z    d6--/0+2I2IJd6--b"f578+:Q:QRd6--c3h79:K<S<STrk   c                
    ! R  R\         P                  \        \        3,          4      pV! 4       pV P	                  W!4       V P                  V\        P                  4       V P                  \        P                  V4       R# )c                       ] tR tRtRtR# )@CollectionsAbcTests.test_defaultdict_subclass.<locals>.MyDefDicti  rl   Nr   rl   rk   rh   	MyDefDictr|    rw  rk   r}  N)	rc   rM  r  r   r   r   r  r   r   )rf   r}  dds   &  rh   test_defaultdict_subclass-CollectionsAbcTests.test_defaultdict_subclass~  `    	**384 	 [b,i)@)@A  !8!8)Drk   c                   V P                  \        \        P                  ! 4       4      \        P                  4       V P                  \        \        P                  \
        \        3,          ! 4       4      \        P                  4       V P                  \        \        P                  \        \        3,          ! 4       4      \        P                  4       R # rb   )	r   r   rc   OrderedDictr  r   r   r  r   r   s   &rh   test_ordereddict_instantiation2CollectionsAbcTests.test_ordereddict_instantiation  ry  rk   c                
    ! R  R\         P                  \        \        3,          4      pV! 4       pV P	                  W!4       V P                  V\        P                  4       V P                  \        P                  V4       R# )c                       ] tR tRtRtR# )@CollectionsAbcTests.test_ordereddict_subclass.<locals>.MyOrdDicti  rl   Nr   rl   rk   rh   	MyOrdDictr    rw  rk   r  N)rc   r  r  r   r   r   r  r   )rf   r  ods   &  rh   test_ordereddict_subclass-CollectionsAbcTests.test_ordereddict_subclass  r  rk   c                h   V P                  \        \        P                  ! 4       4      \        P                  4       V P                  \        \        P                  \
        \        3,          ! 4       4      \        P                  4       V P                  \        \        P                  \        \        3,          ! 4       4      \        P                  4        ! R  R\        P                  \
        \        3,          4      pV P                  \        V\        \        3,          ! 4       4      V4       R# )c                       ] tR tRtRtR# );CollectionsAbcTests.test_chainmap_instantiation.<locals>.CMi  rl   Nr   rl   rk   rh   CMr    r  rk   r  N)	r   r   rc   rN  r  r   r   r  r   )rf   r  s   & rh   test_chainmap_instantiation/CollectionsAbcTests.test_chainmap_instantiation  s    d6??,-{/C/CDd6??2r6245{7K7KLd6??384679M9MN.R(.d2c3h<>*B/rk   c                
    ! R  R\         P                  \        \        3,          4      pV! 4       pV P	                  W!4       V P                  V\        P                  4       V P                  \        P                  V4       R# )c                       ] tR tRtRtR# )>CollectionsAbcTests.test_chainmap_subclass.<locals>.MyChainMapi  rl   Nr   rl   rk   rh   
MyChainMapr    rw  rk   r  N)rc   rN  r  r   r   r   r  r   )rf   r  rU  s   &  rh   test_chainmap_subclass*CollectionsAbcTests.test_chainmap_subclass  s^    	c2 	 \b-j+*>*>?  !5!5zBrk   c                8   V P                  \        \        P                  ! 4       4      \        P
                  4       V P                  \        \        P                  \        ,          ! 4       4      \        P
                  4       V P                  \        \        P                  \        ,          ! 4       4      \        P
                  4        ! R  R\        P                  \        ,          4      pV P                  \        V\        ,          ! 4       4      V4       R# )c                       ] tR tRtRtR# )7CollectionsAbcTests.test_deque_instantiation.<locals>.Di  rl   Nr   rl   rk   rh   r  r    rC  rk   r  N)r   r   rc   rP  r  rO  r   r   rf   r  s   & rh   test_deque_instantiation,CollectionsAbcTests.test_deque_instantiation  s    d6<<>*K,=,=>d6<<?,-{/@/@Ad6<<,./1B1BC%Q%d1S68na(rk   c                8   V P                  \        \        P                  ! 4       4      \        P                  4       V P                  \        \        P                  \
        ,          ! 4       4      \        P                  4       V P                  \        \        P                  \        ,          ! 4       4      \        P                  4        ! R  R\        P                  \
        ,          4      pV P                  \        V\        ,          ! 4       4      V4       R# )c                       ] tR tRtRtR# )9CollectionsAbcTests.test_counter_instantiation.<locals>.Ci  rl   Nr   rl   rk   rh   r  r    r
  rk   r  N)r   r   rc   rT  r  r   r   r  s   & rh   test_counter_instantiation.CollectionsAbcTests.test_counter_instantiation  s    d6>>+,k.A.ABd6>>!,./1D1DEd6>>#.01;3F3FG'q!'d1S68na(rk   c                     ! R  R\         P                  \        ,          4      pV! 4       pV P                  W!4       V P                  V\         P                  4       V P                  V\        P                  4       R# )c                       ] tR tRtRtR# )JCollectionsAbcTests.test_counter_subclass_instantiation.<locals>.MyCounteri  rl   Nr   rl   rk   rh   	MyCounterr    rw  rk   r  N)rc   rT  r   r   r  )rf   r  r8  s   &  rh   #test_counter_subclass_instantiation7CollectionsAbcTests.test_counter_subclass_instantiation  sX    	s+ 	 Ka+a0a!4!45rk   c                   V P                  \        4      ;_uu_ 4        \        P                  ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \        ,          ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \
        ,          ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lk; i  + '       g   i     R # ; irb   )r   r   rc   rX  r   r   r   s   &rh   test_no_set_instantiation-CollectionsAbcTests.test_no_set_instantiation  s    y))JJL *y))JJqMO *y))JJsO *)	 *))))))rf  c                ~     ! R  R\         P                  \        ,          4      pV! 4       pV P                  W!4       R# )c                       ] tR tRtRtR# )BCollectionsAbcTests.test_set_subclass_instantiation.<locals>.MySeti  rl   Nr   rl   rk   rh   r  r    rw  rk   r  N)rc   rX  r   r   )rf   r  r8  s   &  rh   test_set_subclass_instantiation3CollectionsAbcTests.test_set_subclass_instantiation  s-    	FJJsO 	 Ga'rk   c                   V P                  \        4      ;_uu_ 4        \        P                  ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \        ,          ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \
        ,          ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lk; i  + '       g   i     R # ; irb   )r   r   rc   r  r   r   r   s   &rh   test_no_frozenset_instantiation3CollectionsAbcTests.test_no_frozenset_instantiation  s    y)) *y))Q! *y))S!# *)	 *))))))rf  c                ~     ! R  R\         P                  \        ,          4      pV! 4       pV P                  W!4       R# )c                       ] tR tRtRtR# )NCollectionsAbcTests.test_frozenset_subclass_instantiation.<locals>.MyFrozenSeti  rl   Nr   rl   rk   rh   MyFrozenSetr    rw  rk   r  N)rc   r  r   r   )rf   r  r8  s   &  rh   %test_frozenset_subclass_instantiation9CollectionsAbcTests.test_frozenset_subclass_instantiation  s0    	&**3/ 	 Ma-rk   c                   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        ,          ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        ,          ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     La; i  + '       g   i     R # ; irb   )r   r   r   r   r   r   s   &rh   test_no_tuple_instantiation/CollectionsAbcTests.test_no_tuple_instantiation  sx    y))G *y))!HJ *y))#JL *)	 *))))))s#   B+B>
C+B;	>C	C"	c                l    R  pV! 4       pV P                  \        V4      \        P                  4       R# )c               3      "   ^*x  R# 5ir   rl   rl   rk   rh   rk  /CollectionsAbcTests.test_generator.<locals>.foo  s
     H   	N)r   r   rc   	Generatorr  s   &  rh   test_generator"CollectionsAbcTests.test_generator  s(    	Ed1gv'7'78rk   c                T   \         P                  \        ,          p\         P                  \        R R 3,          pV P                  \	        V4      \        \        R 4      \        R 4      34       V P                  \	        V4      \	        V4      4       \         P                  \        \        3,          p\         P                  \        \        R 3,          pV P                  \	        V4      \        \        \        R 4      34       V P                  \	        V4      \	        V4      4       R # rb   )rc   r  r   r   r.   r   r  )rf   g1g2g3g4s   &    rh   test_generator_default*CollectionsAbcTests.test_generator_default  s    c"c4o."T$Zd'DE"x|4c5j)c5$./"UDJ'?@"x|4rk   c                4   V P                  \        4      ;_uu_ 4        \        P                  ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \        \        \        3,          ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \
        \
        \
        3,          ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lv; i  + '       g   i     R # ; irb   )r   r   rc   r  r   r   r   s   &rh   test_no_generator_instantiation3CollectionsAbcTests.test_no_generator_instantiation  s    y)) *y))Q1W%' *y))S#s]+- *)	 *))))))s#   C ,C3*,D C0	3D	D	c                l    R  pV! 4       pV P                  \        V4      \        P                  4       R# )c                    "   ^*5x  R# 5ir   rl   rl   rk   rh   rg   3CollectionsAbcTests.test_async_generator.<locals>.f  s
     X   
N)r   r   rc   AsyncGenerator)rf   rg   r:  s   &  rh   test_async_generator(CollectionsAbcTests.test_async_generator  s(    	Cd1gv'<'<=rk   c                    V P                  \        4      ;_uu_ 4        \        P                  ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \        \        3,          ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        P                  \
        \
        3,          ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lq; i  + '       g   i     R # ; irb   )r   r   rc   r  r   r   r   s   &rh   %test_no_async_generator_instantiation9CollectionsAbcTests.test_no_async_generator_instantiation
  s    y))!!# *y))!!!Q$') *y))!!#s(+- *)	 *))))))rp  c                	    ! R  R\         P                  4      pV P                  \        4      ;_uu_ 4        V! 4        RRR4        ! R RV4      pV P	                  \        V! 4       4      ^ 4       V P                  \        VP                  4      4       V P                  V! 4       \         P                  4        ! R R\         P                  \        \        3,          4      pV P	                  \        V! 4       4      ^ 4       V P	                  \        V\        \        3,          ! 4       4      ^ 4       V P	                  \        V\        \        3,          ! 4       4      ^ 4       V P                  \        V4       V P                  \        V4       V P!                  V\         P                  4       V P!                  V\         P                  4       V P!                  V\         P                  4       V P                  V\        \        3,          ! 4       \         P                  4       V P                  V\        \        3,          ! 4       \"        P$                  P                  4       V P!                  V\"        P$                  P                  4       V P!                  V\"        P$                  P                  4       V P!                  V\"        P$                  P                  4       V P                  \        4      ;_uu_ 4        \'        V\        \        3,          \         P                  4       RRR4       V P!                  W!4        ! R R\         P(                  4      pV P                  \*        V4        ! R	 R
\         P,                  \.        \.        \.        3,          4      pR pV P!                  V\         P,                  4       V P!                  V\         P(                  4       V P!                  V\"        P$                  P,                  4       V P!                  V\"        P$                  P(                  4       V P                  \1        V4      V4       R#   + '       g   i     EL%; i  + '       g   i     ELH; i)c                       ] tR tRtRtR# )1CollectionsAbcTests.test_subclassing.<locals>.MMAi  rl   Nr   rl   rk   rh   MMAr    rw  rk   r  Nc                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	1CollectionsAbcTests.test_subclassing.<locals>.MMCi  c                    R # rb   rl   r_  s   &&rh   rG  =CollectionsAbcTests.test_subclassing.<locals>.MMC.__getitem__  r  rk   c                    R # rb   rl   rb  s   &&&rh   rM  =CollectionsAbcTests.test_subclassing.<locals>.MMC.__setitem__  r  rk   c                    R # rb   rl   r_  s   &&rh   re  =CollectionsAbcTests.test_subclassing.<locals>.MMC.__delitem__  r  rk   c                    \        R4      # r=  rh  r   s   &rh   r  :CollectionsAbcTests.test_subclassing.<locals>.MMC.__iter__!  rk  rk   c                    ^ # r	  rl   r   s   &rh   rm  9CollectionsAbcTests.test_subclassing.<locals>.MMC.__len__#  r	  rk   rl   Nro  rs   s   @rh   MMCr    rq  rk   r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	1CollectionsAbcTests.test_subclassing.<locals>.MMBi*  c                    R # rb   rl   r_  s   &&rh   rG  =CollectionsAbcTests.test_subclassing.<locals>.MMB.__getitem__+  r  rk   c                    R # rb   rl   rb  s   &&&rh   rM  =CollectionsAbcTests.test_subclassing.<locals>.MMB.__setitem__-  r  rk   c                    R # rb   rl   r_  s   &&rh   re  =CollectionsAbcTests.test_subclassing.<locals>.MMB.__delitem__/  r  rk   c                    \        R4      # r=  rh  r   s   &rh   r  :CollectionsAbcTests.test_subclassing.<locals>.MMB.__iter__1  rk  rk   c                    ^ # r	  rl   r   s   &rh   rm  9CollectionsAbcTests.test_subclassing.<locals>.MMB.__len__3  r	  rk   rl   Nro  rs   s   @rh   MMBr  *  rq  rk   r  c                       ] tR tRtRtR# )/CollectionsAbcTests.test_subclassing.<locals>.IiL  rl   Nr   rl   rk   rh   r  r  L  rC  rk   r  c                       ] tR tRtRtR# )/CollectionsAbcTests.test_subclassing.<locals>.GiO  rl   Nr   rl   rk   rh   r  r  O      #rk   r  c               3      "   ^ x  R# 5ir]  rl   rl   rk   rh   r:  /CollectionsAbcTests.test_subclassing.<locals>.gP  s	     qr  )rc   r!   r   r   r   rP  rW  r  rr  r   r6  r   r   r  r   r  r   r  r  r   r2  r.  r  r   r   )rf   r  r  r  r  r  r:  s   &      rh   test_subclassing$CollectionsAbcTests.test_subclassing  s   	&'' 	 y))E *
	# 
	 	SUQ',-ceV^^4
	&''B/ 
	 	SUQ'Sc]_-q1SR[]+Q/  s+  s+c6>>2c6>>2c6>>2c"b&kmV^^<c"b&km[__-D-DEc;??#:#:;c;??#:#:;c;??#:#:;y))s38}fnn5 *c'%%  q)5  c3/5a!1!12a1a!:!:;a!9!9:  a!,} *))b *))s   Q,Q/Q,	/R 	c                L    ! R  R\         P                  \        \        3,          4      pR pV P                  V\         P                  4       V P                  V\         P                  4       V P                  V\
        P                  P                  4       V P                  V\
        P                  P                  4       V P                  \        V4      V4       V! 4       pV P                  V\         P                  4       V P                  V\         P                  4       V P                  V\
        P                  P                  4       V P                  V\
        P                  P                  4       V P                  \        V4      V4       V P                  W!4       R# )c                   0   a  ] tR tRt o R tRR ltRtV tR# )?CollectionsAbcTests.test_subclassing_async_generator.<locals>.GiX  c                    R # rb   rl   r  s   &&rh   asendECollectionsAbcTests.test_subclassing_async_generator.<locals>.G.asendY  r  rk   Nc                    R # rb   rl   )rf   r  valr  s   &&&&rh   athrowFCollectionsAbcTests.test_subclassing_async_generator.<locals>.G.athrow[  r  rk   rl   r@  )rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r  X  s      rk   r  c                    "   ^ 5x  R# 5ir]  rl   rl   rk   rh   r:  ?CollectionsAbcTests.test_subclassing_async_generator.<locals>.g^  s	     Qwr  N)rc   r  r   r   r  r  r  r   r   r   r   )rf   r  r:  r  s   &   rh    test_subclassing_async_generator4CollectionsAbcTests.test_subclassing_async_generatorW  s   	%%c3h/ 	 	a!6!67a!5!56a!?!?@a!>!>?  a!,3h(=(=>h(<(<=h(F(FGh(E(EF  a!,  &rk   c                     ! R  R\         P                  4      p ! R RV4      p ! R R4      p ! R R4      pV P                  W14       V P                  W24       V P                  WB4       R# )	c                   0   a  ] tR tRt o ]R 4       tRtV tR# )?CollectionsAbcTests.test_subclassing_subclasshook.<locals>.Baseip  c                ,    VP                   R 8X  d   R# R# )r   TFrm   rV
  s   &&rh   r;
  PCollectionsAbcTests.test_subclassing_subclasshook.<locals>.Base.__subclasshook__q  s    >>U* rk   rl   NrY
  rs   s   @rh   r  r  p  s     ! !rk   r  c                       ] tR tRtRtR# )<CollectionsAbcTests.test_subclassing_subclasshook.<locals>.Cix  rl   Nr   rl   rk   rh   r  r  x      srk   r  c                       ] tR tRtRtR# )>CollectionsAbcTests.test_subclassing_subclasshook.<locals>.Fooiy  rl   Nr   rl   rk   rh   r   r  y  r	  rk   r   c                       ] tR tRtRtR# )>CollectionsAbcTests.test_subclassing_subclasshook.<locals>.Bariz  rl   Nr   rl   rk   rh   r   r  z  r	  rk   r   N)rc   r2  r   r   )rf   r  r  r   r   s   &    rh   test_subclassing_subclasshook1CollectionsAbcTests.test_subclassing_subclasshookn  sP    	!6?? 	! 	c(c%  (rk   c                    ! R  R\         P                  4      p ! R RV4      p ! R R4      pVP                  V4       V P                  W14       V P	                  W24        ! R R4      pVP                  V4       V P                  WA4       V P                  WB4        ! R R	4      p\
        P                  P                  P                  V4       V P                  V\         P                  4       R
# )c                       ] tR tRtRtR# )8CollectionsAbcTests.test_subclassing_register.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    r  rk   r  c                       ] tR tRtRtR# )8CollectionsAbcTests.test_subclassing_register.<locals>.Bi  rl   Nr   rl   rk   rh   r	  r!    r  rk   r	  c                       ] tR tRtRtR# )8CollectionsAbcTests.test_subclassing_register.<locals>.Ci  rl   Nr   rl   rk   rh   r  r#    r  rk   r  c                       ] tR tRtRtR# )8CollectionsAbcTests.test_subclassing_register.<locals>.Di  rl   Nr   rl   rk   rh   r  r%    r  rk   r  c                       ] tR tRtRtR# )8CollectionsAbcTests.test_subclassing_register.<locals>.Mi  rl   Nr   rl   rk   rh   r  r'    r	  rk   r  N)	rc   r4  r}  r   r   r  r  r!   r6  )rf   r  r	  r  r  r  s   &     rh   test_subclassing_register-CollectionsAbcTests.test_subclassing_register  s    &  &	

1a#  &	

1a#a#&&//2a0rk   c                    ! R  R\         P                  P                  4      pV P                  V\        P                  4       V P                  V\        P
                  4        ! R R\         P                  P                  4      pV P                  V\        P                  4       V P                  V\        P
                  4        ! R R\         P                  P
                  4      pV P                  V\        P
                  4        ! R R\         P                  P                  \        P                  R7      p ! R	 R
4      pVP                  V4       V P                  V\        P                  4       R# )c                       ] tR tRtRtR# )7CollectionsAbcTests.test_collections_as_base.<locals>.Mi  rl   Nr   rl   rk   rh   r  r,    r  rk   r  c                       ] tR tRtRtR# )7CollectionsAbcTests.test_collections_as_base.<locals>.Si  rl   Nr   rl   rk   rh   r
  r.    r  rk   r
  c                       ] tR tRtRtR# )7CollectionsAbcTests.test_collections_as_base.<locals>.Ii  rl   Nr   rl   rk   rh   r  r0    r  rk   r  c                       ] tR tRtRtR# )7CollectionsAbcTests.test_collections_as_base.<locals>.Ai  rl   Nr   rl   rk   rh   r  r2    s    rk   r  r  c                       ] tR tRtRtR# )7CollectionsAbcTests.test_collections_as_base.<locals>.Bi  rl   Nr   rl   rk   rh   r	  r4    r  rk   r	  N)	r  r  r6  r   rc   r2  r:  r>
  r}  )rf   r  r
  r  r  r	  s   &     rh   test_collections_as_base,CollectionsAbcTests.test_collections_as_base  s    -''-a0a15//5a!7!78a1.((.a1D''3;;D	

1a0rk   c                ~   V P                  \        P                  \        P                  ,          \        \        P                  \        P                  3,          4       V P                  \        P
                  \        P                  ,          \        \        P
                  \        P                  3,          4       R # rb   )r   rc   r^  r  r   r  r  r   s   &rh   r  #CollectionsAbcTests.test_or_and_ror  sk    (8(88%fN^N^@^:_`))FOO;U6CSCSU[UdUdCd=efrk   rl   N);rm   rn   ro   rp   r  r  r  r  r  r  r  r!  r$  r'  r*  r.  r1  r4  r7  r;  rE  rH  rQ  rU  rY  r\  r5  ra  rd  rk  rn  rt  rw  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r(  r5  r  rq   rr   rs   s   @rh   r  r    s     6	56
;;3789A5<6=@1<
C881	H
/$
/U
	EU
	E0	C))6($.9	5.>.C-J'.)"1&1$g grk   r  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )OtherABCTestsi  c                    \         P                  R  4       pV! 4       pV P                  V\        P                  4       V P                  ^*\        P                  4       R# )c               3      "   ^*x  R# 5ir   rl   rl   rk   rh   manager2OtherABCTests.test_contextmanager.<locals>.manager  
     Hr  N)rN  contextmanagerr   rc   r  r   )rf   r=  rU  s   &  rh   test_contextmanager!OtherABCTests.test_contextmanager  sO    		"	"	 
#	 Yb&"7"78  V%:%:;rk   c                   \         P                  \        ,          pV P                  \	        V4      \        \
        R ,          34       \         P                  \        R 3,          pV P                  \	        V4      \        \        P                  34       R ! 4       pV P                  \	        VP                  \        R 3,          4      \        \        P                  34       R # )Nc                  0   a a R R5;o R5;o3RV V3R ll35# )gen_cmr  r  r  c                H   < V ^8  d   Qh\         P                  SS3,          # r  )rc   r  )r  r  r  s   "rh   rE  =OtherABCTests.test_contextmanager_type_params.<locals>.gen_cm  s    ;;f33BF;;rk   rl   )r  r  s   @@rh   <generic parameters of gen_cm>UOtherABCTests.test_contextmanager_type_params.<locals>.<generic parameters of gen_cm>  s    ;BB;;rk   )	rc   r  r   r   r.   r  r  r  	__value__)rf   cm1cm2rE  s   &   rh   test_contextmanager_type_params-OtherABCTests.test_contextmanager_type_params  s    ##C(#dTk(:;##CI.#enn(=>;&"2"239"=>enn@UVrk   c                6    ! R  R4      pV P                  \        4       \        P                  4       V P	                  V! 4       \        P                  4       \
        P                  R 4       pV! 4       pV P	                  V\        P                  4       V P                  \        P                  \        ,          P                  \        \        R,          34       V P                  \        4      ;_uu_ 4        \        ^*\        P                  \        ,          4       RRR4       V P                  \        4      ;_uu_ 4        \        P                  \        \        \        3,           RRR4       R#   + '       g   i     L^; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# )7OtherABCTests.test_async_contextmanager.<locals>.NotACMi  rl   Nr   rl   rk   rh   NotACMrQ    rw  rk   rR  c               3      "   ^*x  R# 5ir   rl   rl   rk   rh   r=  8OtherABCTests.test_async_contextmanager.<locals>.manager  r?  r  N)r   r  rc   rC  r   rN  r@  r   r   r  r  r   r   r   r  r  )rf   rR  r=  rU  s   &   rh   test_async_contextmanager'OtherABCTests.test_async_contextmanager  s	   	 	ceV%?%?@  6+E+EF		"	"	 
#	 Y  V%?%?@33C8AACPTCUVy))r655c:; *y))&&sC7 *) *))))s   8&E4'F4F	F	c                ,   \         P                  \        ,          pV P                  \	        V4      \        \
        R ,          34       \         P                  \        R 3,          pV P                  \	        V4      \        \        P                  34       R # rb   )rc   rC  r   r   r.   r  r  r  )rf   rK  rL  s   &  rh   $test_asynccontextmanager_type_params2OtherABCTests.test_asynccontextmanager_type_params  s`    ((-#dTk(:;((d3#enn(=>rk   rl   N)
rm   rn   ro   rp   rA  rM  rU  rX  rq   rr   rs   s   @rh   r:  r:    s     <W8"? ?rk   r:  c                   2   a  ] tR tRt o R tR tR tRtV tR# )	TypeTestsi  c                j   a  ! R  R4      o ! R RS4      p ! R RS4      pV3R lR lpV! V4       R# )	c                       ] tR tRtRtR# )'TypeTests.test_type_basic.<locals>.Useri  rl   Nr   rl   rk   rh   Userr^    rF  rk   r_  c                       ] tR tRtRtR# ),TypeTests.test_type_basic.<locals>.BasicUseri  rl   Nr   rl   rk   rh   	BasicUserra    r3  rk   rb  c                       ] tR tRtRtR# )*TypeTests.test_type_basic.<locals>.ProUseri  rl   Nr   rl   rk   rh   ProUserrd    r  rk   re  c                8   < V ^8  d   QhR\         S,          RS/# r  
user_classr#  r7   )r  r_  s   "rh   r  /TypeTests.test_type_basic.<locals>.__annotate__  s     	  	 d 	  	 rk   c                     V ! 4       # rb   rl   rh  s   &rh   new_user+TypeTests.test_type_basic.<locals>.new_user  
    <rk   Nrl   )rf   rb  re  rl  r_  s   &   @rh   test_type_basicTypeTests.test_type_basic  s-    ##!d!	  	  	rk   c                   a  ! R  R4      p ! R RV4      p ! R RV4      p\        RVR7      oV3R lR	 lpV! V4       R
# )c                       ] tR tRtRtR# ))TypeTests.test_type_typevar.<locals>.Useri  rl   Nr   rl   rk   rh   r_  rs    rF  rk   r_  c                       ] tR tRtRtR# ).TypeTests.test_type_typevar.<locals>.BasicUseri  rl   Nr   rl   rk   rh   rb  ru    r3  rk   rb  c                       ] tR tRtRtR# ),TypeTests.test_type_typevar.<locals>.ProUseri  rl   Nr   rl   rk   rh   re  rw    r  rk   re  rR  r  c                8   < V ^8  d   QhR\         S,          RS/# rg  r7   )r  rR  s   "rh   r  1TypeTests.test_type_typevar.<locals>.__annotate__  s     	  	 a 	 Q 	 rk   c                     V ! 4       # rb   rl   rk  s   &rh   rl  -TypeTests.test_type_typevar.<locals>.new_user  rn  rk   N)r   )rf   r_  rb  re  rl  rR  s   &    @rh   test_type_typevarTypeTests.test_type_typevar  s9    ##!d!Ct$	  	  	rk   c                   a \         \        \        ,          ,          oV3R  lR lpV P                  V! \        4      \        4       V P                  V! R4      4       R# )c                @   < V ^8  d   QhRSR\         \        ,          /# rt  )r   BaseException)r  r  s   "rh   r  2TypeTests.test_type_optional.<locals>.__annotate__  s      	 	1 	-0 	rk   c                     V f   R # V ! 4       # rb   rl   r  s   &rh   rk  )TypeTests.test_type_optional.<locals>.foo  s    ys
rk   N)r   r8   r  r   KeyboardInterruptassertIsNone)rf   rk  r  s   & @rh   test_type_optionalTypeTests.test_type_optional  sG    T-()	 	 	c"346GH#d)$rk   rl   N)	rm   rn   ro   rp   ro  r|  r  rq   rr   rs   s   @rh   r[  r[    s     	
% 
%rk   r[  c                   ,   a  ] tR tRt o R.tR tRtV tR# )TestModulesi  _idfuncc                    V P                    F-  pV P                  \        \        V4      P                  R 4       K/  	  R# )_typingN)
func_namesr   rS  rc   rn   )rf   fnames   & rh   test_c_functionsTestModules.test_c_functions  s-    __EWVU3>>	J %rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r    s     JK Krk   r  c                   p   a  ] tR tRt o ]R 4       t]R 4       tR tR tR t	R t
R tR	 tR
 tR tRtV tR# )NewTypeTestsi  c                    \         P                  ! R \        4      s\         P                  ! V P                  R,           \
        4      V n        R# )UserId	.UserNameN)rc   NewTyper   r  ro   r  UserNamer8  s   &rh   
setUpClassNewTypeTests.setUpClass  s1     #.~~c&6&6&DcJrk   c                    @ V =R # rb   )r  r  r8  s   &rh   tearDownClassNewTypeTests.tearDownClass  s     Lrk   c                    V P                  \        ^4      \        4       V P                  V P                  R4      \        4       V P                  \        ^4      ^,           ^4       R# )r  JoeN)r   r  r   r  r  r   r   s   &rh   r  NewTypeTests.test_basic  sG    fQi-dmmE2C8Q*rk   c                2   V P                  \        4      ;_uu_ 4        \        \        \        4       R R R 4       V P                  \        4      ;_uu_ 4         ! R R\        4      pR R R 4       R #   + '       g   i     LG; i  + '       g   i     R # ; i)Nc                       ] tR tRtRtR# )#NewTypeTests.test_errors.<locals>.Di  rl   Nr   rl   rk   rh   r  r    r  rk   r  )r   r   r   r  r   r  s   & rh   r   NewTypeTests.test_errors  sZ    y))vs# *y))F  *) *))))s   A2B2B	B	c           	     h   \         V P                  3 EF  pV P                  VR 7      ;_uu_ 4        V P                  \        V,          \
        P                  \        V3,          4       V P                  V\        ,          \
        P                  V\        3,          4       V P                  \
        P                  ! \        V,          4      \        V34       V P                  \
        P                  ! V\        ,          4      V\        34       RRR4       EK  	  R#   + '       g   i     EK  ; ir7  )r   r  r~   r   r  rc   r   r.   )rf   r9  s   & rh   r  NewTypeTests.test_or  s    'C#&&  #v||FCK/HI  vv||CK/HI  #!>N  v!>fN '& (&&&s   CDD1c                T   V P                  \        P                  R 4       V P                  \        P                  R 4       V P                  \        P                  \        4       V P                  \        P
                  \        4       V P                  pV P                  VP                  R4       V P                  VP                  V P                  P                  R,           4       V P                  VP                  \        4       V P                  VP
                  \        4       R# )r  r  r  N)
r   r  rm   ro   rn   __supertype__r   r  r   r  )rf   r  s   & rh   test_special_attrsNewTypeTests.test_special_attrs&  s    (3,,h7**H5--s3==**J7..44{B	D,,h7//5rk   c                    V P                  \        \        4      \         R 24       V P                  \        V P                  4      \         RV P
                  P                   R24       R# )z.UserIdrQ  r  N)r   r   r  rm   r  r   ro   r   s   &rh   r   NewTypeTests.test_repr3  sR    f(7';<dmm,$:Qt~~'B'B&C9M	Ork   c           
        \         P                  ! R \        4      p\        \        P
                  ^,           4       EF  pV P                  VR7      ;_uu_ 4        \        P                  ! \        V4      p\        P                  ! V4      pV P                  V\        4       \        P                  ! V P                  V4      p\        P                  ! V4      pV P                  W@P                  4       V P                  \        P                  4      ;_uu_ 4        \        P                  ! W4       RRR4       RRR4       EK	  	  R#   + '       g   i     L; i  + '       g   i     EK2  ; i)UserAgery   N)rc   r  r  r{   r|   r}   r~   r  r  r  r   r  r   PicklingError)rf   r  rz   pickledr  s   &    rh   r  NewTypeTests.test_pickle8  s    ..E2622Q67EE** ,,vu5g.ff- ,,t}}e<g.fmm4&&v';';<<LL0 = +* 8 =< +**s%   CEE	2E	EEE.c                "    R p\        V/ 4       R# )z-import typing
NT = typing.NewType('NT', int)
Nr  r   s   & rh   r"  !NewTypeTests.test_missing__name__G  s    3 	T2rk   c                    V P                  \        \        P                  ! R 4      4      ;_uu_ 4         ! R R\        4      pRRR4       R#   + '       g   i     R# ; i)zpCannot subclass an instance of NewType. Perhaps you were looking for: `ProUserId = NewType('ProUserId', UserId)`c                       ] tR tRtRtR# )CNewTypeTests.test_error_message_when_subclassing.<locals>.ProUserIdiU  rl   Nr   rl   rk   rh   	ProUserIdr  U  r  rk   r  N)r
  r   r  r  r  )rf   r  s   & rh   #test_error_message_when_subclassing0NewTypeTests.test_error_message_when_subclassingM  sJ    ##II=
 
F 
 
 
 
s   AA	rl   N)rm   rn   ro   rp   rZ
  r  r  r  r   r  r  r   r  r"  r  rq   rr   rs   s   @rh   r  r    s\     K K
  
+
O6O
1	 	rk   r  c                      a  ] tR tRt o  ! R 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R tR tRtV tR# )NamedTupleTestsiY  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )NamedTupleTests.NestedEmployeeiZ  c                2   < V ^8  d   Qh/ S[ ;R&   S[;R&   # r  r  )r  rt   s   "rh   r  +NamedTupleTests.NestedEmployee.__annotate__Z  s     	 	 rk   rl   Nrm  rs   s   @rh   NestedEmployeer  Z  rn  rk   r  c                   \        R R\        3R\        3.4      pV P                  V\        4       V! R^*4      pV! R^R7      pV P                  W!4       V P                  V\        4       V P                  VP                  R4       V P                  VP                  ^*4       V P                  VP                  R4       V P                  VP                  ^4       V P                  VP                  R 4       V P                  VP                  R4       V P                  VP                  \        P                  ! R\        3R\        3.4      4       R# )EmprA  idr  JimrA  r  N)r9   r  r   r   rz  r   r   rA  r  rm   _fieldsrn  r  r  )rf   r  joejims   &   rh   r|  NamedTupleTests.test_basics^  s
   &#s <=c5)%nu#c'c5)5)$5)#u-n5,,$0063-$1MN	Prk   c                   \        R R4      pV P                  V\         4       V P                  V\        4       V P                  VP                  R 4       V P                  VP
                  R4       V P                  \         P                  R4       V P                  \         P                  R4       V P                  \         P                  \        P                  ! \        \        R7      4       R# )Timi(#  r  rA  r  N)r  r   rz  r   rA  r  rm   r  rn  r  r  r  r   )rf   tims   & rh   test_annotation_usage%NamedTupleTests.test_annotation_usagen  s    5$'c<0c5)5)4(..?--/?@55$00cD	Frk   c                    \        R 4      pV P                  V\         4       V P                  V\        4       V P                  VP                  R 4       V P                  VP
                  ^ 4       \        R^4      pV P                  VP
                  ^4       V P                  \         P                  R4       V P                  \         P                  R4       V P                  \         P                  \        \        \        R7      4       V P                  \         P                  \        ^ R7      4       V P                  \        4      ;_uu_ 4         ! R R\        4      pRRR4       R#   + '       g   i     R# ; i)JelleSjoerdr  r  )r  c                   0   a  ] tR tRt o ^tV 3R ltRtV tR# )RNamedTupleTests.test_annotation_usage_with_default.<locals>.NonDefaultAfterDefaulti  c                2   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   # rj  rL  )r  rt   s   "rh   r  _NamedTupleTests.test_annotation_usage_with_default.<locals>.NonDefaultAfterDefault.__annotate__  s     
  rk   rl   Nr  rs   s   @rh   NonDefaultAfterDefaultr    s       rk   r  N)r  r   rz  r   rA  r  rm   r  rn  r  r  r   _field_defaultsr   r   r9   )rf   jellecooler_employeer  s   &   rh   "test_annotation_usage_with_default2NamedTupleTests.test_annotation_usage_with_defaulty  s   '0e%<=eU+W-Q'1(A>--q1099;TU088:JK0@@3S1	30@@$A,Oy))  *)))s   E,,E=	c                   V P                  \        ^4      P                  4       ^4       V P                  \        ^*4      P                  \        ^*4      ^ ,          4       V P                  \	        \        ^*4      4      R4       V P                  \        ^^4      \        ^4      ,           ^ 4       V P                  \        4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        4      pRRR4       R#   + '       g   i     LG; i  + '       g   i     R# ; i)rw   z42 -> 1c                   2   a  ] tR tRt o R tV 3R ltRtV tR# )DNamedTupleTests.test_annotation_usage_with_methods.<locals>.XMethBadi  c                    R # )zno chance for thisrl   r   s   &rh   r  LNamedTupleTests.test_annotation_usage_with_methods.<locals>.XMethBad._fields  s    /rk   c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  QNamedTupleTests.test_annotation_usage_with_methods.<locals>.XMethBad.__annotate__  r  rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   XMethBadr    s     0  rk   r  Nc                   2   a  ] tR tRt o R tV 3R ltRtV tR# )ENamedTupleTests.test_annotation_usage_with_methods.<locals>.XMethBad2i  c                    R # )zno chance for this as wellrl   r   s   &rh   _sourceMNamedTupleTests.test_annotation_usage_with_methods.<locals>.XMethBad2._source  s    7rk   c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  RNamedTupleTests.test_annotation_usage_with_methods.<locals>.XMethBad2.__annotate__  r  rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   	XMethBad2r    s     8  rk   r  )	r   r  r  r   r  r  r   r  r9   )rf   r  r  s   &  rh   "test_annotation_usage_with_methods2NamedTupleTests.test_annotation_usage_with_methods  s    q*A.reBil3U2Y3q!uQx/3~..0: 0 / ~..8J 8 /. /. /..s   DD.D+	.D?	c                   V P                  \        4      ;_uu_ 4         ! R  R\        4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        4      pRRR4        ! R R\        4      pR\        R4      R\	        R	4      /pV P                  VP                  V4       V P                  VP                  \        P                  P                  4      V4       V P                  VP                  \        P                  P                  4      V4       V P                  VP                  \        P                  P                  4      RR
RR	/4       R#   + '       g   i     EL:; i  + '       g   i     EL; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )5NamedTupleTests.test_annotation_type_check.<locals>.Xi  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  r  )r  rt   s   "rh   r  BNamedTupleTests.test_annotation_type_check.<locals>.X.__annotate__        rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  Nc                   ,   a  ] tR tRt o V 3R ltRtV tR# )5NamedTupleTests.test_annotation_type_check.<locals>.Yi  c                $   < V ^8  d   Qh/ R;R&   # )r  rM  r  rl   )r  rt   s   "rh   r  BNamedTupleTests.test_annotation_type_check.<locals>.Y.__annotate__  s     	 rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )5NamedTupleTests.test_annotation_type_check.<locals>.Zi  c                .   < V ^8  d   Qh/ R;R&   R;R&   # )r  NrM  r  r   rl   )r  rt   s   "rh   r  BNamedTupleTests.test_annotation_type_check.<locals>.Z.__annotate__       G H rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  rM  r   r  r  )r   r   r9   r   rU   r   rn  r  r  r  r/  r0  r  )rf   r  r  r  r2  s   &    rh   test_annotation_type_check*NamedTupleTests.test_annotation_type_check  s   y))J  * y))J  *
	
 	 d4j#'8'?@**E2(<(<(B(BCUK(<(<(G(GH%P(<(<(C(CDsFTWY^F_` *)) *))s   EE3E0	3F	c           	         R p\        \        P                  ! V4      4      pVR,          pV P                  VP                  R\        R4      R\        R4      /4       R# )z
        from __future__ import annotations
        from typing import NamedTuple
        class X(NamedTuple):
            a: int
            b: None
        r  rM  r   r   r  N)rT   r  r  r   rn  rU   )rf   r!  r  r  s   &   rh   test_future_annotations'NamedTupleTests.test_future_annotations  sS     hood+,sG**S2CE2JCQbciQj,klrk   c                >  a  ! V3R  lR\         4      pV P                  VP                  R4       V P                  \        4      ;_uu_ 4        VP
                   RRR4       \        oV P                  VP
                  R\        /4       R#   + '       g   i     L:; i)c                   0   <a  ] tR tRt o V V3R ltRtV tR# )4NamedTupleTests.test_deferred_annotations.<locals>.Xi  c                &   < V ^8  d   Qh/ SZ;R&   # r  rl   )r  rt   r  s   "rh   r  ANamedTupleTests.test_deferred_annotations.<locals>.X.__annotate__  r  rk   rl   Nrm  rt   r  s   @rh   r  r    r*	  rk   r  r   Nr   )r9   r   r  r   r.  rn  r   )rf   r  r  s   & @rh   test_deferred_annotations)NamedTupleTests.test_deferred_annotations  sn    	
 	 	F+y)) * 	**S#J7	 *)s   BB	c                    ! R  R4      pV P                  \        4      ;_uu_ 4         ! R R\        V4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        \        4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\        \        4      pRRR4        ! R	 R
\        4      pV P                  \        4      ;_uu_ 4         ! R R\        V4      pRRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L}; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# )4NamedTupleTests.test_multiple_inheritance.<locals>.Ai  rl   Nr   rl   rk   rh   r  r    rw  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )4NamedTupleTests.test_multiple_inheritance.<locals>.Xi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  ANamedTupleTests.test_multiple_inheritance.<locals>.X.__annotate__  r  rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  Nc                   ,   a  ] tR tRt o V 3R ltRtV tR# )4NamedTupleTests.test_multiple_inheritance.<locals>.Yi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  ANamedTupleTests.test_multiple_inheritance.<locals>.Y.__annotate__  r  rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )4NamedTupleTests.test_multiple_inheritance.<locals>.Zi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  ANamedTupleTests.test_multiple_inheritance.<locals>.Z.__annotate__  r  rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )4NamedTupleTests.test_multiple_inheritance.<locals>.Bi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  rL  )r  rt   s   "rh   r  ANamedTupleTests.test_multiple_inheritance.<locals>.B.__annotate__  r  rk   rl   Nrm  rs   s   @rh   r	  r    rn  rk   r	  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )4NamedTupleTests.test_multiple_inheritance.<locals>.Ci  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r\  )r  rt   s   "rh   r  ANamedTupleTests.test_multiple_inheritance.<locals>.C.__annotate__  r  rk   rl   Nrm  rs   s   @rh   r  r    rn  rk   r  )r   r   r9   rz  )rf   r  r  r  r  r	  r  s   &      rh   r  )NamedTupleTests.test_multiple_inheritance  s    	 	y))J  * y))J  * y))J
  *	
 	y))J  *) *) *) *)
 *))s/   C<DD"!D5<D	D	"D2	5E	c           
     (    ! R  R\         \        \        ,          4      pV P                  VP                  \
        \        34       V P                  VP                  \         \        \        ,          34       V P                  VP                  V\
        \        \        34        ! R R\        \        ,          \         4      pV P                  VP                  \        \
        34       V P                  VP                  \        \        ,          \         34       V P                  VP                  V\        \
        \        34       W3 EF  pV P                  VR7      ;_uu_ 4        V P                  VP                  \        34       V P                  V\        ,          P                  \        34       V P                  \        V\        ,          4      \        34       V\        ,          pV P                  VP                  V4       V P                  VP                  \        34       V P                  \        V4      \        34       V P                  VP                  R4       V! ^4      pV P                  \!        V4      V4       V P                  VP"                  ^4       V P%                  \&        4      ;_uu_ 4        V\        \(        3,           RRR4       RRR4       EK  	  R#   + '       g   i     L; i  + '       g   i     EK  ; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )'NamedTupleTests.test_generic.<locals>.Xi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  r  )r  rt   s   "rh   r  4NamedTupleTests.test_generic.<locals>.X.__annotate__  r  rk   rl   Nrm  rs   s   @rh   r  r$    rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )'NamedTupleTests.test_generic.<locals>.Yi  c                &   < V ^8  d   Qh/ S[ ;R&   # rB  r  )r  rt   s   "rh   r  4NamedTupleTests.test_generic.<locals>.Y.__annotate__  r  rk   rl   Nrm  rs   s   @rh   r  r(    rn  rk   r  r   Nrl   )r9   r$   r   r   r|  rz  r  r,  r  r~   r  r  r.   r   r   r  r   r   r   r   r  )rf   r  r  r  r  rM  s   &     rh   test_genericNamedTupleTests.test_generic  s   	
GAJ 	ug&67))J
+CDQw$?@	
J 	w&67))GAJ
+CDQ$?@A1%%  !1!1A48  15  !A$!6cFallA.  cV4  !sf5  !1!126aDd1gq)  a(&&y11c3hK 2 &%  21 &%%s%   &EK?K,K?,K<7K??Lc                t   R  ! 4       pVP                   w  pV P                  V\        4       V P                  VP                  R4       V P                  VP
                  \        \        34       V P                  VP                  \        \        V,          34       V P                  VP                  V\        \        \        34       V P                  VP                  V34       V P                  V\        ,          P                  \        34       V P                  V\        ,          P                  R4       R# )c                  @   aa R 5;o3o ! VV3R lRS5
p \         V 4      # )r   c                   6   <a  ] tR tRt Zt o VV 3R ltRtV tR# ).NamedTupleTests.test_generic_pep695.<locals>.Xi  c                &   < V ^8  d   Qh/ SZ;R&   # rB  rl   )r  r   rt   s   "rh   r  ;NamedTupleTests.test_generic_pep695.<locals>.X.__annotate__  r  rk   rl   Nr:  r  s   @rh   r  r1    r<  rk   r  )r9   r  s    @@rh   r]  FNamedTupleTests.test_generic_pep695.<locals>.<generic parameters of X>  s     	 	: 	rk   r   Nrl   )rX  r   r   r   rm   r|  rz  r$   r  r9   r,  r  r  r  r  )rf   r  r   s   &  rh   test_generic_pep695#NamedTupleTests.test_generic_pep695  s    	a)S)ug&67))J
+CDQw$?@))A4033&13..3rk   c                d    ! R  R\         4      pV\        ,          pV P                  VP                  V4       V P                  VP                  R4       V P                  VP
                  \        34       V! ^^.4      pV P                  \        V4      V4       V P                  V^^.34       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )9NamedTupleTests.test_non_generic_subscript.<locals>.Groupi
   c                B   < V ^8  d   Qh/ S[ ;R&   S[S[ ,          ;R&   # )r  rB  group)r   r.  )r  rt   s   "rh   r  FNamedTupleTests.test_non_generic_subscript.<locals>.Group.__annotate__
   s     F 7N rk   rl   Nrm  rs   s   @rh   Groupr9  
   rn  rk   r=  Nrl   )r9   r   r   r  r  r  r   r   )rf   r=  r  rM  s   &   rh   r  *NamedTupleTests.test_non_generic_subscript   s    	J 	 #Ju-))2.cV,a!Id1gu%QH%rk   c                   V P                  \        R 4      ;_uu_ 4        \        R\        \        R7      pRRR4       X! R^4      pV P                  V\        4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  R4       V P                  VP                  \        \        \        R7      4       V P                  \        R4      ;_uu_ 4        \        RR\        3.\        R7       RRR4       V P                  \        R4      ;_uu_ 4        \        R. \        R7       RRR4       V P                  \        R	4      ;_uu_ 4        \        RR\        R
7       RRR4       R#   + '       g   i     ELg; i  + '       g   i     L; i  + '       g   i     Lr; i  + '       g   i     R# ; i)ACreating NamedTuple classes using keyword arguments is deprecatedLocalEmployee)rA  ageNNickzIEither list of fields or keywords can be provided to NamedTuple, not bothNamer   r   z\Cannot pass `None` as the 'fields' parameter and also specify fields using keyword argumentsr   )r8  r9  r9   r  r   r   rz  r   rA  rm   r  rn  r  r
  r   )rf   rA  nicks   &  rh   test_namedtuple_keyword_usage-NamedTupleTests.test_namedtuple_keyword_usage   sw   ""O
 
 'ScJM	
 VR(dE*F+//A..@66#38OP##W
 
 vc
|s3	
 ##W
 
 vrS)	
 ##C
 
 vts+
 
3
 
 

 

 

 
 
s/   F>F(>F;7GF%	(F8	;G	G	c           
     N   V P                  \        R 4      ;_uu_ 4        \        R\        \        \
        \        R7      pRRR4       V P                  XP                  R4       V P                  VP                  R4       V! \
        ^*RR\        3.R7      pV P                  VP                  \
        4       V P                  VP                  ^*4       V P                  VP                  R4       V P                  VP                  R\        3.4       R#   + '       g   i     L; i)r@  r  )r9  rf   typenamefieldsNrk  rc  )r8  r9  r9   r   r  r  r.  r   rm   r  rz  r9  rf   rI  rJ  )rf   r  rM  s   &  rh   %test_namedtuple_special_keyword_names5NamedTupleTests.test_namedtuple_special_keyword_names8   s    ""O
 
 Dd#dSB	
 	d+%JK3R%%8HI$$U+UEN#34
 
s   !DD$	c                   \         P                  ! R 4      pV P                  \        RV R24      ;_uu_ 4        \	        R4      pRRR4       \         P                  ! R4      pV P                  \        RV R24      ;_uu_ 4        \	        RR4      pRRR4       \	        R. 4      p ! R R\        4      pXXWE3 F  pV P                  VR	7      ;_uu_ 4        V P                  VP                  R
4       V P                  VP                  / 4       V P                  VP                  / 4       V P                  V! 4       V4       RRR4       K  	  R#   + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     K  ; i)zFailing to pass a value for the 'fields' parameter is deprecated and will be disallowed in Python 3.15. To create a NamedTuple class with 0 fields using the functional syntax, pass an empty list, e.g. `NT1 = NamedTuple('NT1', [])`.r  r  NT1NzPassing `None` as the 'fields' parameter is deprecated and will be disallowed in Python 3.15. To create a NamedTuple class with 0 fields using the functional syntax, pass an empty list, e.g. `NT2 = NamedTuple('NT2', [])`.NT2c                       ] tR tRtRtR# )2NamedTupleTests.test_empty_namedtuple.<locals>.CNTi^   rl   Nr   rl   rk   rh   CNTrQ  ^   rw  rk   rR  )structrl   )r  r  r8  r9  r9   r~   r   r  r  rn  r   )rf   expected_warningrN  rO  NT3rR  rS  s   &      rh   test_empty_namedtuple%NamedTupleTests.test_empty_namedtupleG   sM   99F
 ""#5!<L;MQ7OPPU#C Q 99F
 ""#5!<L;MQ7OPPUD)C Q #	* 	 3(FV,,  4  !7!7<  !7!7<%%fh7	 -, )% QPP QP -,,s$   EE%A,E8E"	%E5	8F	c                   V P                  \        4      ;_uu_ 4        \        P                  ! 4        R R R 4       V P	                  \        R4      ;_uu_ 4        \        4        R R R 4       V P	                  \        R4      ;_uu_ 4        \        RR\
        3.R 4       R R R 4       V P	                  \        R4      ;_uu_ 4        \        RR\
        3.4       R R R 4       V P	                  \        R4      ;_uu_ 4        \        R\
        \        R7       R R R 4       R #   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R # ; i)	Nz&missing 1 required positional argumentz7takes from 1 to 2 positional arguments but 3 were givenr  rA  z+Field names cannot start with an underscore_namez2missing 1 required positional argument: 'typename')rI  rA  r  )r   r   r9   r
  r
  r  r&  r   r   s   &rh   test_namedtuple_errors&NamedTupleTests.test_namedtuple_errorsh   s   y))  * ##4
 
 L	
 ##E
 
 u}ot4	
 ##9
 
 u~./	
 ##@
 
 CC8	
 
+ *)
 

 

 

 
 
s;   D!D4EE E-!D1	4E	E	E*	-E>	c                   \        R R\        3R\        3.4      s\        \        V P
                  3 F  pV P                  VR7      ;_uu_ 4        V! R^%4      p\        \        P                  ^,           4       FQ  p\        P                  ! W#4      p\        P                  ! V4      pV P                  WR4       V P                  WQ4       KS  	  \        V4      pV P                  WR4       V P                  WQ4       \        V4      pV P                  WR4       V P                  WQ4       RRR4       EK  	  R#   + '       g   i     EK  ; i)r  rA  r  r8  janeN)r9   r  r   r  r  r  r~   r{   r|   r}   r  r  r   r   r   r   )rf   r9  r]  rz   r  jane2s   &     rh   test_copy_and_pickle$NamedTupleTests.test_copy_and_pickle   s    &# >?d&9&99C#&&62"6#:#:Q#>?ET1A"LLOE$$U1))%5	 @ T
  -%%e1   -%%e1 '& :&&&s   CD77E	c                f   \        R 4      p ! R R\        4      p ! R R\        \        V,          4      pV P                  VP                  \        34       V P                  VP                  \        \        V,          34       \        R. 4      pV P                  VP                  \        34       R# )r   c                       ] tR tRtRtR# )9NamedTupleTests.test_orig_bases.<locals>.SimpleNamedTuplei   rl   Nr   rl   rk   rh   SimpleNamedTuplerc     rw  rk   rd  c                       ] tR tRtRtR# ):NamedTupleTests.test_orig_bases.<locals>.GenericNamedTuplei   rl   Nr   rl   rk   rh   GenericNamedTuplerf     rw  rk   rg  CallNamedTupleN)r   r9   r$   r   r  )rf   r   rd  rg  rh  s   &    rh   r  NamedTupleTests.test_orig_bases   s    CL	z 		
GAJ 	 	)88:-H*99JPQ
;ST#$4b966Frk   c                d  a  ! R  R4      o ! V3R lR\         4      pV! 4       pV P                  \        V4      ^ 4       V P                  RVP                  4       V P                  VP                  S4       V P                  VP                  P                  R4        ! V3R lR\         4      pV! 4       pV P                  \        V4      ^4       V P                  RVP                  4       V P                  VP                  S4       V P                  VP                  P                  R4       R# )c                   &   a  ] tR tRt o R tRtV tR# )RNamedTupleTests.test_setname_called_on_values_in_class_dictionary.<locals>.Vanillai   c                    W n         R # rb   r@  )rf   r;  rA  s   &&&rh   __set_name___NamedTupleTests.test_setname_called_on_values_in_class_dictionary.<locals>.Vanilla.__set_name__   r	  rk   r@  Nrm   rn   ro   rp   rn  rq   rr   rs   s   @rh   Vanillarl     r
  rk   rq  c                   (   < ] tR tRt Z ! 4       tRtR# )NNamedTupleTests.test_setname_called_on_values_in_class_dictionary.<locals>.Fooi   rl   Nr
	  )rq  s   rh   r   rs     s
    9Drk   r   r  c                   @   <a  ] tR tRt o  Z! 4       tVV 3R ltRtV tR# )NNamedTupleTests.test_setname_called_on_values_in_class_dictionary.<locals>.Bari   c                &   < V ^8  d   Qh/ SZ;R&   # r  rl   )r  rq  rt   s   "rh   r  [NamedTupleTests.test_setname_called_on_values_in_class_dictionary.<locals>.Bar.__annotate__   s     % rk   rl   N)rm   rn   ro   rp   r  r  rq   rr   )rt   rq  s   @rh   r   ru     s     #ID  rk   r   N)	r9   r   rP  r?
  r  r   r  rA  rS  )rf   r   rk  r   rc  rq  s   &    @rh   1test_setname_called_on_values_in_class_dictionaryANamedTupleTests.test_setname_called_on_values_in_class_dictionary   s    	! 	!	* 	 eS1%-chh0/	&* 	& eS1%fckk*chh0/rk   c                  aa	  ! R  R\         4      o ! V3R lR4      pV! 4       o	V P                  S4      ;_uu_ 4       p ! V	3R lR4      pRRR4       XP                  pV P                  S4      ;_uu_ 4       p ! V	3R lR\        4      pRRR4       VP                  pV P	                  \        V4      S4       V P	                  \        V4      \        V4      4       V P                  \        VP                  4      ^4       V P                  \        VP                  4      \        VP                  4      4       R	pV P                  VP                  ^ ,          V4       V P                  VP                  ^ ,          VP                  ^ ,          P                  RR4      4       R#   + '       g   i     ELd; i  + '       g   i     EL8; i)
c                       ] tR tRtRtR# )YNamedTupleTests.test_setname_raises_the_same_as_on_other_classes.<locals>.CustomExceptioni   rl   Nr   rl   rk   rh   CustomExceptionr|     r   rk   r}  c                   .   <a  ] tR tRt o V3R ltRtV tR# )RNamedTupleTests.test_setname_raises_the_same_as_on_other_classes.<locals>.Annoyingi   c                   < Shrb   rl   )rf   r;  rA  r}  s   &&&rh   rn  _NamedTupleTests.test_setname_raises_the_same_as_on_other_classes.<locals>.Annoying.__set_name__   s	    %%rk   rl   Nrp  rt   r}  s   @rh   Annoyingr     s     & &rk   r  c                      < ] tR tRt Z tRtR# )UNamedTupleTests.test_setname_raises_the_same_as_on_other_classes.<locals>.NormalClassi   rl   Nr
	  annoyings   rh   NormalClassr         rk   r  Nc                      < ] tR tRt Z tRtR# )YNamedTupleTests.test_setname_raises_the_same_as_on_other_classes.<locals>.NamedTupleClassi   rl   Nr
	  r  s   rh   NamedTupleClassr     r  rk   r  zMError calling __set_name__ on 'Annoying' instance 'attr' in 'NamedTupleClass')
r  r   rQ  r9   r   r   r   rP  	__notes__r  )
rf   r  rU  r  normal_exceptionr  namedtuple_exceptionexpected_noter}  r  s
   &       @@rh   0test_setname_raises_the_same_as_on_other_classes@NamedTupleTests.test_setname_raises_the_same_as_on_other_classes   si   2m2	& 	& ://2    0 <<//2 *   0  "||d/0/Bd/0$7G2HI1;;<a@$../5E5O5O1P	

* 	 	-77:MJ **1-&&q)11-ARS	
/ 0//
 0//s   F(:F<(F9	<G	c                  aa  ! R  R\         4      o ! V3R lR\        4      p ! R RVR7      pV! 4       oV P                  S4      ;_uu_ 4         ! V3R lR\        4      pR	R	R	4       R	#   + '       g   i     R	# ; i)
c                       ] tR tRtRtR# )[NamedTupleTests.test_strange_errors_when_accessing_set_name_itself.<locals>.CustomExceptioni   rl   Nr   rl   rk   rh   r}  r     rL  rk   r}  c                   .   <a  ] tR tRt o V3R ltRtV tR# )PNamedTupleTests.test_strange_errors_when_accessing_set_name_itself.<locals>.Metai   c                @   < VR 8X  d   Sh\         P                  W4      # )rn  )r  __getattribute__)rf   r  r}  s   &&rh   r  aNamedTupleTests.test_strange_errors_when_accessing_set_name_itself.<locals>.Meta.__getattribute__   s"    >)))..t::rk   rl   N)rm   rn   ro   rp   r  rq   rr   r  s   @rh   r  r     s     ; ;rk   r  c                       ] tR tRtRtR# )XNamedTupleTests.test_strange_errors_when_accessing_set_name_itself.<locals>.VeryAnnoyingi   rl   Nr   rl   rk   rh   VeryAnnoyingr     r  rk   r  r  c                      < ] tR tRt Z tRtR# )ONamedTupleTests.test_strange_errors_when_accessing_set_name_itself.<locals>.Fooi   rl   Nr
	  )very_annoyings   rh   r   r     s    $rk   r   N)r  r   r   r9   )rf   r  r  r   r}  r  s   &   @@rh   2test_strange_errors_when_accessing_set_name_itselfBNamedTupleTests.test_strange_errors_when_accessing_set_name_itself   sT    .i.	;4 	; 	1T0$//%j % 0///s   A--A>	c                4   R pV P                  \        VR7      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        VR7      ;_uu_ 4         ! R R\        4      pRRR4       R#   + '       g   i     LI; i  + '       g   i     R# ; i)zQuses of super() and __class__ are unsupported in methods of NamedTuple subclassesr|  c                   2   a a ] tR tRt oV 3R ltRtVtV ;t# )FNamedTupleTests.test_super_explicitly_disallowed.<locals>.ThisWontWorki   c                    < \         SV `  4       # rb   )r   __repr__r%  s   &rh   r  ONamedTupleTests.test_super_explicitly_disallowed.<locals>.ThisWontWork.__repr__   s     7+--rk   rl   )rm   rn   ro   rp   r  rq   rr   r   r   s   @@rh   ThisWontWorkr     s     . .rk   r  Nc                   <   a a ] tR tRt o]V 3R l4       tRtVtV ;t# )LNamedTupleTests.test_super_explicitly_disallowed.<locals>.ThisWontWorkEitheri!  c                   < SP                   # rb   r  r%  s   &rh   rA  QNamedTupleTests.test_super_explicitly_disallowed.<locals>.ThisWontWorkEither.name!  s    $---rk   rl   )	rm   rn   ro   rp   r  rA  rq   rr   r   r   s   @@rh   ThisWontWorkEitherr  !  s     . . .rk   r  )r   r   r9   )rf   expected_messager  r  s   &   rh    test_super_explicitly_disallowed0NamedTupleTests.test_super_explicitly_disallowed   s|    2 	
 y.>??.z . @
 y.>??.Z . @? @?
 @??s   A3B3B	B	rl   N)rm   rn   ro   rp   r9   r  r|  r  r  r  r  r   r  r  r,  r5  r  rF  rK  rV  rZ  r_  r  rx  r  r  r  rq   rr   rs   s   @rh   r  r  Y  s      P 	F(8$a&
m	8$ >4&!,F58B982(G 0.#
J%". .rk   r  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R tR t R t!R  t"R! t#R"t$V t%R## )$TypedDictTestsi!  c                T   \        R R\        R\        /4      pV P                  V\        4       V P                  V\
        P                  4       V P                  V\        P                  P                  4       V! R^R7      pV P                  \        V4      \        4       V P                  VR,          R4       V P                  VR,          ^4       V P                  VP                  R 4       V P                  VP                  \        4       V P                  VP                   \        34       R\        R\        /pV P                  VP"                  V4       V P                  VP%                  \&        P(                  P*                  4      V4       V P                  VP%                  \&        P(                  P,                  4      V4       V P                  VP%                  \&        P(                  P.                  4      RRRR/4       V P                  VP0                  R4       V P                  VP2                  RR04       V P5                  VP2                  \6        4       V P                  VP8                  \;        4       4       V P5                  VP8                  \6        4       R# )	r  rA  r  r  r  r  r   TN)r=   r  r   r   r  rc   r!   r   r  r  r6  r   r   r   rm   rn   r|  rn  r  r  r  r/  r0  r  	__total____required_keys__r   rA
  __optional_keys__rQ  )rf   r  r  r2  s   &   rh   test_basics_functional_syntax,TypedDictTests.test_basics_functional_syntax!  s   T378c4(c6#8#89  koo&>&>?u#d3i&Ve,TA&u-20dC(,,e4))-*>*>*D*DEuM))-*>*>*I*IJER))-*>*>*E*EFQVX\^cHde-..?c33Y?..6c33Y?rk   c                   V P                  \        4      ;_uu_ 4        \        P                  ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        RR\        3.R 4       R R R 4       V P                  \        4      ;_uu_ 4        \        RR7       R R R 4       V P                  \        4      ;_uu_ 4        \        R\        \
        R7       R R R 4       R #   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R # ; i)Nr  rA  )	_typenamer  )r   r   r=   r
  r  r   r   s   &rh   test_typeddict_create_errors+TypedDictTests.test_typeddict_create_errors!  s    y)) *y))K *y))evsm_d3 *y))& *y))e##. *) *))))))))))s;   DD)	D<E5E"D&	)D9	<E	E	"E3	c                   \        R R\        R\        /4      pV P                  \         P                  R4       V! R^R7      pV P                  \        4      ;_uu_ 4        \        / V4       RRR4       V P                  \        4      ;_uu_ 4        \        W!4       RRR4       V P                  \        4      ;_uu_ 4        \        \        V4       RRR4       V P                  \        4      ;_uu_ 4        \        RR\        3.\        R	7       RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Lw; i  + '       g   i     R# ; i)
r  rA  r  rc   r  r  NHir   r   )
r=   r  r   r   rn   r   r   r   r   r  )rf   r  r  s   &  rh   test_typeddict_errors$TypedDictTests.test_typeddict_errors+!  s    T378--x8u#y))r3 *y))s  *y))tS! *y))dc3ZLC0 *) *))))))))s0    DD0E9ED-	0E 	E	E'	c           	        V P                  \        P                  R 4       V P                  \        P                  \        4       V P                  \        P                  R\
        R\
        R\        /4       V P                  \        P                  \        34       V P                  \        P                  R4       V P                  \        \        P                  4       \        ^ ^R7      pV P                  VR,          ^ 4       V P                  VR,          ^4       \        ^ ^RR7      pV P                  VR,          R4       R# )	r	  r   r   rs  Tr	  hir	  N)r   r	  rm   rn   rn  r   r  r|  r  r  r   rc   r6  r  )rf   
not_originrW
  s   &  rh   test_py36_class_syntax_usage+TypedDictTests.test_py36_class_syntax_usage8!  s    ..?00(;55S#sGUX7YZ//$9//6  v?qA&
C!,C!,qAT2w.rk   c           	        \        R R\        R\        /4      s\        RRR^%/4      p\	        \
        P                  ^,           4       F  p\
        P                  ! W4      p\
        P                  ! V4      pV P                  WA4       V P                  VRRR^%/4       \
        P                  ! \        V4      p\
        P                  ! V4      pV P                  V! RRR^%/4      V4       K  	  R# )EmpDrA  r  r]  N)
r=   r  r   r  r{   r|   r}   r  r  r   )rf   r]  rz   r  r^  ZZEmpDnews   &      rh   r  TypedDictTests.test_pickleE!  s    &#tS!9:VVT2./622Q67ET)ALLOEU)UVVT2$>?dE*Bll2&GWffdB%?@$G 8rk   c           	        \        R RR7      p\        \        P                  ^,           4       F  p\        P                  ! W4      p\        P
                  ! V4      pV P                  WA4       V P                  VRR RR/4       \        P                  ! \         V4      p\        P
                  ! V4      pV P                  V! RR RR/4      V4       K  	  R# )g      @g      @)rM  r   rM  r   N)r  r{   r|   r}   r  r  r   )rf   pointrz   r  point2r  Point2DGenericNews   &      rh   test_pickle_generic"TypedDictTests.test_pickle_genericR!  s    ,622Q67EU*A\\!_FV+Vc3S%9:ne4B &R 0.S#s/CDeL 8rk   c                *   \        R R\        R\        /4      pV P                  \        P
                  V,          \        P                  RV3,          4       V P                  \        P                  V,          \        P                  V,          4       R# )r  rA  r  N)
r=   r  r   r   rc   r   r   r   r   r   )rf   r  s   & rh   r:  TypedDictTests.test_optional]!  s_    &#tS!9:.T4Z0HIFKK-v||D/ABrk   c                   \        R R\        /RR7      pV P                  V! 4       / 4       V P                  V! ^R7      R^/4       V P                  VP                  R4       V P                  VP                  \        4       4       V P                  VP                  \
        4       V P                  VP                  R04       V P                  VP                  \
        4       V P                  \        4       / 4       V P                  \        ^R7      R^/4       V P                  \        P                  R4       V P                  \        P                  \        4       4       V P                  \        P                  RR04       R# )	r  r   Fr  r   )r  r  r  N)	r=   r   r   r  r  rA
  r   r  r  r  s   & rh   
test_totalTypedDictTests.test_totalc!  s#   cC:U3b!Q#q*e,,,ik:a119=,,se4a119=B'1-Q/?@**E222IK@22[*4MNrk   c                     ! R  R\         RR7      pV P                  VP                  R4        ! R RV4      pV P                  VP                  R4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )9TypedDictTests.test_total_inherits_non_total.<locals>.TD1it!  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  rL  )r  rt   s   "rh   r  FTypedDictTests.test_total_inherits_non_total.<locals>.TD1.__annotate__t!  r  rk   rl   Nrm  rs   s   @rh   TD1r  t!  rn  rk   r  Fr  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )9TypedDictTests.test_total_inherits_non_total.<locals>.TD2iy!  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r\  )r  rt   s   "rh   r  FTypedDictTests.test_total_inherits_non_total.<locals>.TD2.__annotate__y!  r  rk   rl   Nrm  rs   s   @rh   TD2r  y!  rn  rk   r  TNr=   r   r  )rf   r  r  s   &  rh   test_total_inherits_non_total,TypedDictTests.test_total_inherits_non_totals!  sD    	)5 	 	cmmU+	# 	 	cmmT*rk   c                    ! R  R\         4      pV P                  VP                  R4        ! R R\         RR7      pV P                  VP                  R4        ! R R\         RR7      pV P                  VP                  R4       R	# )
c                       ] tR tRtRtRtR# )9TypedDictTests.test_total_with_assigned_value.<locals>.TDi!  
some_valuerl   Nrm   rn   ro   rp   r  rq   rl   rk   rh   r  r  !      $Irk   r  Tc                       ] tR tRtRtRtR# ):TypedDictTests.test_total_with_assigned_value.<locals>.TD2i!  r  rl   Nr  rl   rk   rh   r  r  !  r  rk   r  r  c                       ] tR tRtRtRtR# ):TypedDictTests.test_total_with_assigned_value.<locals>.TD3i!  rL  rl   Nr  rl   rk   rh   TD3r  !  r  rk   r  FNr  )rf   r  r  r  s   &   rh   test_total_with_assigned_value-TypedDictTests.test_total_with_assigned_value~!  sf    	% 	% 	bllD)	%)4 	% 	cmmT*	%)5 	% 	cmmU+rk   c                B    ! R  R\         RR7      pV P                  VP                  \        RR.4      4       V P	                  VP                  \        4       V P                  VP
                  \        R.4      4       V P	                  VP
                  \        4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )6TypedDictTests.test_optional_keys.<locals>.Point2Dor3Di!  c                &   < V ^8  d   Qh/ S[ ;R&   # r8  rL  )r  rt   s   "rh   r  CTypedDictTests.test_optional_keys.<locals>.Point2Dor3D.__annotate__!  r  rk   rl   Nrm  rs   s   @rh   Point2Dor3Dr  !  rn  rk   r  Fr  r   r   r  N)r  r   r  rA
  r   r  )rf   r  s   & rh   test_optional_keys!TypedDictTests.test_optional_keys!  sz    	' 	 	66	3*8MNk;;YG66	3%8HIk;;YGrk   c                (    ! R  R\         4      p ! R RVRR7      p ! R RV4      pV P                  VP                  \        R.4      4       V P                  VP                  \        . 4      4       V P                  VP
                  R\        /4       V P                  VP                  \        R.4      4       V P                  VP                  \        R	R
.4      4       V P                  VP
                  R\        R	\        R
\        /4       V P                  VP                  \        RR.4      4       V P                  VP                  \        R	R
.4      4       V P                  VP
                  R\        R\        R	\        R
\        /4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )8TypedDictTests.test_keys_inheritance.<locals>.BaseAnimali!  c                &   < V ^8  d   Qh/ S[ ;R&   # )r  rA  r\  )r  rt   s   "rh   r  ETypedDictTests.test_keys_inheritance.<locals>.BaseAnimal.__annotate__!  rD	  rk   rl   Nrm  rs   s   @rh   
BaseAnimalr  !  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )4TypedDictTests.test_keys_inheritance.<locals>.Animali!  c                2   < V ^8  d   Qh/ S[ ;R&   S[;R&   # )r  voicetailrd  )r  rt   s   "rh   r  ATypedDictTests.test_keys_inheritance.<locals>.Animal.__annotate__!  s     J J rk   rl   Nrm  rs   s   @rh   Animalr  !  rn  rk   r  Fr  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )1TypedDictTests.test_keys_inheritance.<locals>.Cati!  c                &   < V ^8  d   Qh/ S[ ;R&   # )r  	fur_colorr\  )r  rt   s   "rh   r  >TypedDictTests.test_keys_inheritance.<locals>.Cat.__annotate__!  s     N rk   rl   Nrm  rs   s   @rh   Catr  !  rn  rk   r  rA  r  r  r
  N)r=   r   r  rA
  r  rn  r  r  )rf   r  r  r  s   &   rh   test_keys_inheritance$TypedDictTests.test_keys_inheritance!  sS   	 		Zu 		& 	 	55y&7JK55y}E33fc]C119fX3FG119fg=N3OP//CDS2
 	 	..	6;:O0PQ..	67:K0LM,,CDS	/
 	rk   c                    ! R  R\         RR7      p ! R RV4      pV P                  VP                  \        4       4       V P                  VP                  \        R.4      4       V P                  VP                  \        R.4      4       V P                  VP                  \        4       4        ! R R\         4      p ! R	 R
V4      pV P                  VP                  \        R.4      4       V P                  VP                  \        R.4      4       V P                  VP                  \        R.4      4       V P                  VP                  \        R.4      4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ETypedDictTests.test_keys_inheritance_with_same_name.<locals>.NotTotali!  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  rL  )r  rt   s   "rh   r  RTypedDictTests.test_keys_inheritance_with_same_name.<locals>.NotTotal.__annotate__!  r  rk   rl   Nrm  rs   s   @rh   NotTotalr  !  rn  rk   r  Fr  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )BTypedDictTests.test_keys_inheritance_with_same_name.<locals>.Totali!  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  rL  )r  rt   s   "rh   r  OTypedDictTests.test_keys_inheritance_with_same_name.<locals>.Total.__annotate__!  r  rk   rl   Nrm  rs   s   @rh   Totalr  !  rn  rk   r  rM  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ATypedDictTests.test_keys_inheritance_with_same_name.<locals>.Basei!  c                R   < V ^8  d   Qh/ S[ S[,          ;R&   S[S[,          ;R&   # r  )r:   r   r;   )r  rt   s   "rh   r  NTypedDictTests.test_keys_inheritance_with_same_name.<locals>.Base.__annotate__!  s$     3 } rk   rl   Nrm  rs   s   @rh   r  r  !  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )BTypedDictTests.test_keys_inheritance_with_same_name.<locals>.Childi!  c                R   < V ^8  d   Qh/ S[ S[,          ;R&   S[S[,          ;R&   # r  )r;   r   r:   )r  rt   s   "rh   r  OTypedDictTests.test_keys_inheritance_with_same_name.<locals>.Child.__annotate__!  s$     } 3 rk   rl   Nrm  rs   s   @rh   r  r  !  rn  rk   r  r   N)r=   r   r  rA
  r  )rf   r  r  r  r  s   &    rh   $test_keys_inheritance_with_same_name3TypedDictTests.test_keys_inheritance_with_same_name!  s   	y 		H 	 	33Y[A33Yu5EF00)SE2BC00)+>	9 		 D 	  	//C51AB//C51AB00)SE2BC00)SE2BCrk   c                F    ! R  R\         4      p ! R R\         4      p ! R RW4      pV P                  VP                  R\        \        ,          /4       V P                  VP
                  \        R.4      4       V P                  VP                  \        4       4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ETypedDictTests.test_multiple_inheritance_with_same_key.<locals>.Base1i!  c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # r5  r#  )r  rt   s   "rh   r  RTypedDictTests.test_multiple_inheritance_with_same_key.<locals>.Base1.__annotate__!  s     3 rk   rl   Nrm  rs   s   @rh   Base1r&  !  rn  rk   r)  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ETypedDictTests.test_multiple_inheritance_with_same_key.<locals>.Base2i!  c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # r5  r  )r  rt   s   "rh   r  RTypedDictTests.test_multiple_inheritance_with_same_key.<locals>.Base2.__annotate__!       } rk   rl   Nrm  rs   s   @rh   Base2r+  !  rn  rk   r/  c                       ] tR tRtRtR# )ETypedDictTests.test_multiple_inheritance_with_same_key.<locals>.Childi!  rl   Nr   rl   rk   rh   r  r1  !  rw  rk   r  rM  N)r=   r   rn  r;   r  r  rA
  r  )rf   r)  r/  r  s   &   rh   'test_multiple_inheritance_with_same_key6TypedDictTests.test_multiple_inheritance_with_same_key!  s|    	 I 	 	I 		E 	 	..hsm0DE00)SE2BC00)+>rk   c                   RR lpR F  pR F  pV P                  W#R7      ;_uu_ 4        V! VRRR/R4      pV P                  VP                  4       V! VRRR/RRV/4      pV'       d   \        RR	VR
7      M\        pV'       d   \        RR	VR
7      M\        pV P                  VP                  RV/4       V P                  VP                  RVRV/4       R R R 4       K  	  K  	  R #   + '       g   i     K  ; i)Nc                 2   . pV '       d   VP                  R 4       VP                  R4       VP                  RV RV R24       VP                  4        F  w  rgVP                  RV RV 24       K  	  RP                  V4      p\        W4      p	W,          # )z"from __future__ import annotationszfrom typing import TypedDictzclass (z):z    z: 
)r  r  r  rT   )
future
class_namer2  rX  extra_nameslinesrA  annor!  r  s
   &&&&&     rh   _make_td8TypedDictTests.test_inheritance_pep563.<locals>._make_td!  s    EABLL78LL6*QtfB78#kkm
tD6D623 ,99U#D$,B>!rk   )base_futurechild_futurer  rX  r   r=   r  childbuiltins)r  r;  rb   )TF)r~   assertIsNotNoner  rD   r   r   rn  )rf   r=  r?  r@  rX  rA  	base_anno
child_annos   &       rh   test_inheritance_pep563&TypedDictTests.test_inheritance_pep563!  s    
	" )K -\\k\UU##Vfe_kD (():):;$$g/?&RVE U`
54 PehIVbE*E!RhkJ$$T%9%9FI;NO$$--VY/W VU !. )UUUs   AC+	AC+	+C<c                   V P                  \        P                  \        R 04      4       V P                  \        P                  \        R04      4       V P                  \
        P                  \        R 04      4       V P                  \
        P                  \        R04      4       V P                  \        P                  P                  \        4       4       V P                  \        P                  P                  \        R04      4       V P                  \        P                  \        R 04      4       V P                  \        P                  \        R04      4       V P                  \        P                  \        R 04      4       V P                  \        P                  \        R04      4       V P                  \        P                  \        R 04      4       V P                  \        P                  \        R04      4       V P                  \        P                  \        R 04      4       V P                  \        P                  \        R04      4       R# )r  rf  rM  N)r   r  r  rA
  r  r  rX   r  r/  r8  r!  r+  r   s   &rh   test_required_notrequired_keys-TypedDictTests.test_required_notrequired_keys!  s   88"G9-	/88"F8,	. 	55"G9-	/55"F8,	. 	+99KK"	&+99KK"C5)	+ 	99"G9-	/99"F8,	. 	+=="G9-	/+=="F8,	. 	::"G9-	/::"F8,	. 	2DD"G9-	/2DD"F8,	.rk   c           
         ! R  R\         4      p ! R R\         4      p ! R R\         RR7      p\        RR	\        /4      p ! R
 R4      p ! R RW4      pV P                  VP                  \	        . RO4      4       V P                  VP
                  \	        . 4      4       V P                  VP                  R\        R\        R\        /4        ! R RW4      pV P                  VP                  \	        RR.4      4       V P                  VP
                  \	        R.4      4       V P                  VP                  R\        R\        R\        /4        ! R RWRR7      pV P                  VP                  \	        R.4      4       V P                  VP
                  \	        RR.4      4       V P                  VP                  R\        R\        R\        /4        ! R RW44      p	V P                  V	P                  \	        R	R.4      4       V P                  V	P
                  \	        R.4      4       V P                  V	P                  R	\        R\        R\        /4       W3WQ3WV3WE3W53.p
V
 FY  pV P                  VR7      ;_uu_ 4        V P                  \        R4      ;_uu_ 4         ! R R.VO5!  pRRR4       RRR4       K[  	  R#   + '       g   i     L; i  + '       g   i     K  ; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )5TypedDictTests.test_multiple_inheritance.<locals>.Onei""  c                &   < V ^8  d   Qh/ S[ ;R&   # )r  r  rL  )r  rt   s   "rh   r  BTypedDictTests.test_multiple_inheritance.<locals>.One.__annotate__""       H rk   rl   Nrm  rs   s   @rh   OnerM  ""  rn  rk   rQ  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )5TypedDictTests.test_multiple_inheritance.<locals>.Twoi$"  c                &   < V ^8  d   Qh/ S[ ;R&   # )r  twor\  )r  rt   s   "rh   r  BTypedDictTests.test_multiple_inheritance.<locals>.Two.__annotate__$"  rP  rk   rl   Nrm  rs   s   @rh   TworS  $"  rn  rk   rW  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )9TypedDictTests.test_multiple_inheritance.<locals>.Untotali&"  c                &   < V ^8  d   Qh/ S[ ;R&   # )r  untotalr\  )r  rt   s   "rh   r  FTypedDictTests.test_multiple_inheritance.<locals>.Untotal.__annotate__&"  s     L rk   rl   Nrm  rs   s   @rh   UntotalrY  &"  rn  rk   r]  Fr  Inlineinlinec                       ] tR tRtRtR# )9TypedDictTests.test_multiple_inheritance.<locals>.Regulari)"  rl   Nr   rl   rk   rh   rd  ra  )"  rw  rk   rd  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )7TypedDictTests.test_multiple_inheritance.<locals>.Childi,"  c                &   < V ^8  d   Qh/ S[ ;R&   # r  rA  r  )r  rt   s   "rh   r  DTypedDictTests.test_multiple_inheritance.<locals>.Child.__annotate__,"       K rk   rl   Nrm  rs   s   @rh   r  rc  ,"  rn  rk   r  r  rU  rA  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )CTypedDictTests.test_multiple_inheritance.<locals>.ChildWithOptionali;"  c                &   < V ^8  d   Qh/ S[ ;R&   # re  rf  )r  rt   s   "rh   r  PTypedDictTests.test_multiple_inheritance.<locals>.ChildWithOptional.__annotate__;"  rh  rk   rl   Nrm  rs   s   @rh   ChildWithOptionalrj  ;"  rn  rk   rm  r[  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ETypedDictTests.test_multiple_inheritance.<locals>.ChildWithTotalFalseiJ"  c                &   < V ^8  d   Qh/ S[ ;R&   # re  rf  )r  rt   s   "rh   r  RTypedDictTests.test_multiple_inheritance.<locals>.ChildWithTotalFalse.__annotate__J"  rh  rk   rl   Nrm  rs   s   @rh   ChildWithTotalFalsero  J"  rn  rk   rr  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )LTypedDictTests.test_multiple_inheritance.<locals>.ChildWithInlineAndOptionaliY"  c                &   < V ^8  d   Qh/ S[ ;R&   # re  rf  )r  rt   s   "rh   r  YTypedDictTests.test_multiple_inheritance.<locals>.ChildWithInlineAndOptional.__annotate__Y"  rh  rk   rl   Nrm  rs   s   @rh   ChildWithInlineAndOptionalrt  Y"  rn  rk   rw  )r  z=cannot inherit from both a TypedDict type and a non-TypedDictc                       ] tR tRtRtR# )7TypedDictTests.test_multiple_inheritance.<locals>.Wrongiu"  rl   Nr   rl   rk   rh   Wrongry  u"  r  rk   rz  N)r  rU  rA  )r=   r  r   r  rA
  r  rn  r   r  r~   r
  r   )rf   rQ  rW  r]  r^  rd  r  rm  rr  rw  wrong_basesr  rz  s   &            rh   r  (TypedDictTests.test_multiple_inheritance!"  s   	) 		) 		iu 	8h%56	 		C 	##-.	
 	##bM	
 	!!CWd3	

	 	//ug&'	
 	//yk"	
 	--CC$7	

	#e 	11ug	
 	11y'*+	
 	//CC$7	

	 	&88x)*	
 	&88yk"	
 	&66tYWd;	
 NNw
 !EE**++S  	 +* !  +**s$   K&0K=K&K#K&&K7c                  a V P                  \        \        4      R 4       V P                  \        \        \        \
        3,          4      R4       V P                  \        \        4       4      R4       \        RR\
        /4      pV P                  \        V4      R 4       V P                  \        V! 4       4      R4       \        R4      o ! V3R lR\        \        S,          4      pV P                  \        V4      R 4       V P                  \        V\
        ,          4      R4       V P                  \        V! 4       4      R4       R ! 4       pV P                  \        V4      R 4       V P                  \        V\
        ,          4      R4       V P                  \        V! 4       4      R4       V P                  \        \        4      R4       R# )	TF
call_basedrM  r   c                   0   <a  ] tR tRt o VV 3R ltRtV tR# )4TypedDictTests.test_is_typeddict.<locals>.BarGenerici"  c                &   < V ^8  d   Qh/ SZ;R&   # r5  rl   )r  r   rt   s   "rh   r  ATypedDictTests.test_is_typeddict.<locals>.BarGeneric.__annotate__"  r  rk   rl   Nrm  r(	  s   @rh   r  r  "  r*	  rk   r  c                  @   aa R 5;o3o ! VV3R lRS5
p \         V 4      # )r   c                   6   <a  ] tR tRt Zt o VV 3R ltRtV tR# )4TypedDictTests.test_is_typeddict.<locals>.NewGenerici"  c                &   < V ^8  d   Qh/ SZ;R&   # r5  rl   )r  r   rt   s   "rh   r  ATypedDictTests.test_is_typeddict.<locals>.NewGeneric.__annotate__"  r  rk   rl   Nr:  r  s   @rh   r;  r  "  r<  rk   r;  r=   r  s    @@rh   r=  LTypedDictTests.test_is_typeddict.<locals>.<generic parameters of NewGeneric>"  s     	 	I 	rk   N)	r   r1   r  r   r  r   r=   r   r$   )rf   r~  r  r;  r   s   &   @rh   test_is_typeddict TypedDictTests.test_is_typeddictx"  s1   l7+T2l5c?3U;l79-u5|c3Z8
l:.5l:<0%8CL	GAJ 	l:.5l:c?3U;l:<0%8	l:.5l:c?3U;l:<0%8 	l9-u5rk   c                    V P                  \        \        4      R \        P                  \
        ,          R\
        /4       R# )rM  r   N)r   r,   r   rc   r   r   r   s   &rh   r4  "TypedDictTests.test_get_type_hints"  s-    3&//#&S1	
rk   c           	     >   V P                  \        \        4      R \        P                  \
        ,          R\        /4        ! R R\        \        ,          4      pV P                  \        V4      R \        P                  \
        ,          R\        R\        /4       R# )rM  r   c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ATypedDictTests.test_get_type_hints_generic.<locals>.FooBarGenerici"  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r\  )r  rt   s   "rh   r  NTypedDictTests.test_get_type_hints_generic.<locals>.FooBarGeneric.__annotate__"  r  rk   rl   Nrm  rs   s   @rh   FooBarGenericr  "  rn  rk   r  r7  N)r   r,   r  rc   r   r   r   r  )rf   r  s   & rh   test_get_type_hints_generic*TypedDictTests.test_get_type_hints_generic"  sn    :&&//!$c3/	

	JsO 	 	=)&//!$c3S9	
rk   c                &   R  ! 4       pVP                   w  pV P                  V\        4       V P                  VP                  R4       V P                  VP
                  \        \        34       V P                  VP                  \        \        V,          34       V P                  VP                  V\        \        \        34       V P                  VP                  RV/4       V P                  VP                  \        P                  P                   4      RR/4       V P                  VP"                  V34       V P                  V\$        ,          P"                  R4       V P                  V\$        ,          P&                  \$        34       R# )c                  @   aa R 5;o3o ! VV3R lRS5
p \         V 4      # )r   c                   6   <a  ] tR tRt Zt o VV 3R ltRtV tR# )7TypedDictTests.test_pep695_generic_typeddict.<locals>.Ai"  c                &   < V ^8  d   Qh/ SZ;R&   # r5  rl   )r  r   rt   s   "rh   r  DTypedDictTests.test_pep695_generic_typeddict.<locals>.A.__annotate__"  r  rk   rl   Nr:  r  s   @rh   r  r  "  r<  rk   r  r  r  s    @@rh   <generic parameters of A>OTypedDictTests.test_pep695_generic_typeddict.<locals>.<generic parameters of A>"  s     	 	9 	rk   r   rM  Nrl   )rX  r   r   r   rm   r|  r$   r  r  r=   r,  r  rn  r  r  r  r  r  r  r  )rf   r  r   s   &  rh   test_pep695_generic_typeddict,TypedDictTests.test_pep695_generic_typeddict"  s   	 a)S)wo6))Iwqz+BCQv$>?**S!H5(<(<(C(CDsCjQ))A403..333&1rk   c           	         ! R  R\         \        \        ,          4      pV P                  VP                  \        \
        34       V P                  VP                  \         \        \        ,          34       V P                  VP                  V\        \
        \        34       V P                  VP                  R\        /4       V P                  VP                  \        P                  P                  4      RR/4       V P                  VP                  \        34       V P                  V\        ,          P                  R4       V P                  V\        ,          P                   \        34        ! R R\        \        ,          \         4      pV P                  VP                  \        \
        34       V P                  VP                  \        \        ,          \         34       V P                  VP                  V\        \
        \        34       V P                  VP                  R\        /4       V P                  VP                  \        P                  P                  4      RR/4       V P                  VP                  \        34       V P                  V\        ,          P                  R4       V P                  V\        ,          P                   \        34        ! R RV\"        ,          RR	7      pV P                  VP                  \        \
        34       V P                  VP                  V\"        ,          34       V P                  VP                  V\        \
        \        34       V P                  VP                  R\        R
\"        /4       V P                  VP                  \        P                  P                  4      RRR
R/4       V P                  VP                  \"        34       V P                  VP$                  R4       V P                  VP&                  \)        R
.4      4       V P                  VP*                  \)        R.4      4       V P                  V\        ,          P                  R4       V P                  V\        ,          P                   \        34       V P                  V\        ,          P,                  V4        ! R RV\.        ,          4      pV P                  VP                  \        \
        34       V P                  VP                  V\.        ,          34       V P                  VP                  V\        \
        \        34       V P                  VP                  R4       V P                  VP$                  R4       V P                  VP&                  \)        R
.4      4       V P                  VP*                  \)        RR.4      4       V P                  VP                  R\        R
\"        R\.        /4       V P                  VP                  \        P                  P                  4      RRR
RRR/4       V P1                  \2        4      ;_uu_ 4        V\        ,           RRR4        ! R R\4        \        ,          \        \        \"        3,          4      pV P                  VP                  \        \
        34       V P                  VP                  \4        \        ,          \        \        \"        3,          34       V P                  VP                  V\        \
        \        34       V P                  VP                  \        \"        34       V P                  VP$                  R4       V P                  VP&                  \)        4       4       V P                  VP*                  \)        . RO4      4       V P                  VP                  R\        R
\        R\"        /4       V P                  VP                  \        P                  P                  4      RRR
RRR/4       V P                  V\.        \        3,          P,                  V4       V P1                  \2        4      ;_uu_ 4        V\.        ,           RRR4       V P1                  \2        4      ;_uu_ 4         ! R R\4        \        ,          \        \"        ,          4      pRRR4       R#   + '       g   i     EL; i  + '       g   i     Lv; i  + '       g   i     R# ; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )2TypedDictTests.test_generic_inheritance.<locals>.Ai"  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  r  )r  rt   s   "rh   r  ?TypedDictTests.test_generic_inheritance.<locals>.A.__annotate__"  r  rk   rl   Nrm  rs   s   @rh   r  r  "  rn  rk   r  rM  r   c                   ,   a  ] tR tRt o V 3R ltRtV tR# )3TypedDictTests.test_generic_inheritance.<locals>.A2i"  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  r  )r  rt   s   "rh   r  @TypedDictTests.test_generic_inheritance.<locals>.A2.__annotate__"  r  rk   rl   Nrm  rs   s   @rh   A2r  "  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )2TypedDictTests.test_generic_inheritance.<locals>.Bi"  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r   )r  rt   s   "rh   r  ?TypedDictTests.test_generic_inheritance.<locals>.B.__annotate__"       E rk   rl   Nrm  rs   s   @rh   r	  r  "  rn  rk   r	  Fr  r   r   c                   ,   a  ] tR tRt o V 3R ltRtV tR# )2TypedDictTests.test_generic_inheritance.<locals>.Ci"  c                &   < V ^8  d   Qh/ S[ ;R&   # r  rL  )r  rt   s   "rh   r  ?TypedDictTests.test_generic_inheritance.<locals>.C.__annotate__"  r  rk   rl   Nrm  rs   s   @rh   r  r  "  rn  rk   r  Tr7  r   Nc                   ,   a  ] tR tRt o V 3R ltRtV tR# )8TypedDictTests.test_generic_inheritance.<locals>.Point3Di"  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r  )r  rt   s   "rh   r  ETypedDictTests.test_generic_inheritance.<locals>.Point3D.__annotate__"  r  rk   rl   Nrm  rs   s   @rh   Point3Dr  "  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )r  i#  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r  )r  rt   s   "rh   r  r  #  s      rk   rl   Nrm  rs   s   @rh   r  r  #  rn  rk   rl   )rM  r   r7  )r=   r$   r   r   r|  r  r  r,  r  rn  r  r  r  r  r  r  r  r   r  r  rA
  r  r  r   r   r   r  )rf   r  r  r	  r  r  s   &     rh   test_generic_inheritance'TypedDictTests.test_generic_inheritance"  s   		71: 	 	wo6))Iwqz+BCQv$>?**S!H5(<(<(C(CDsCjQ))A403..333&1	Y 	 	7**WQZ,CDb'4%@A++c1X6)=)=)D)DESzR**QD1C//4C))C62	"U 	 	wo6))AbE84Qv$>?**S!S",=>(<(<(C(CDsCQTVZF[\))B51e,,,i.>?,,i.>?3..333&13**A.	# 	 	wo6))AcF95Qv$>?))2.d+,,i.>?,,ic
.CD**-
 	
 	(<(<(C(CDG
 	
 y))cF *	nQ'B 	 	**WdO<//.2CWQPRU^1TU7GT6*JK//!R9**D122IK@22Io4NO003
 	
 	--m.B.B.I.IJM
 	
 	c*55w?y))CL * y)).+WR[  *); *))4 *) *))s$    dd+d-d	d*	-d>	c           	         ! R  R\         \        \        ,          4      p ! R RV\        ,          RR7      p ! R RV4      pV P	                  VP
                  \        \        34       V P	                  VP                  V\        \        \        34       V P	                  VP                  R4       V P	                  VP                  R4       V P	                  VP                  \        R	.4      4       V P	                  VP                  \        R
R.4      4       V P	                  VP                  R
\        R	\        R\        /4       V P	                  VP!                  \"        P$                  P&                  4      R
RR	RRR/4       V P)                  \*        4      ;_uu_ 4        V\,        ,           RRR4       R#   + '       g   i     R# ; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )7TypedDictTests.test_implicit_any_inheritance.<locals>.Ai#  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  r  )r  rt   s   "rh   r  DTypedDictTests.test_implicit_any_inheritance.<locals>.A.__annotate__#  r  rk   rl   Nrm  rs   s   @rh   r  r  #  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )7TypedDictTests.test_implicit_any_inheritance.<locals>.Bi#  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r  )r  rt   s   "rh   r  DTypedDictTests.test_implicit_any_inheritance.<locals>.B.__annotate__#  r  rk   rl   Nrm  rs   s   @rh   r	  r  #  rn  rk   r	  Fr  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )ETypedDictTests.test_implicit_any_inheritance.<locals>.WithImplicitAnyi#  c                &   < V ^8  d   Qh/ S[ ;R&   # r  rL  )r  rt   s   "rh   r  RTypedDictTests.test_implicit_any_inheritance.<locals>.WithImplicitAny.__annotate__#  r  rk   rl   Nrm  rs   s   @rh   WithImplicitAnyr  #  rn  rk   r  Tr   rM  r7  r   r   r   Nrl   )r=   r$   r   r   r   r|  r  r,  r  r  r  r  rA
  r  rn  r   r  r  r  r  r   r   r  )rf   r  r	  r  s   &   rh   test_implicit_any_inheritance,TypedDictTests.test_implicit_any_inheritance#  si   		71: 		"U 		a 	 	22Wd4DE00?GTSY2Z[77<22D9::Ise<LM::IsCj<QR88;
 	
 	55m6J6J6Q6QRU
 	
 y))C  *)))s   $F<<G	c                h    ! R  R\         4      pV\        ,          pV P                  VP                  V4       V P                  VP                  R4       V P                  VP
                  \        34       V! ^R7      pV P                  \        V4      \        4       V P                  VR^/4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )5TypedDictTests.test_non_generic_subscript.<locals>.TDi5#  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  r  )r  rt   s   "rh   r  BTypedDictTests.test_non_generic_subscript.<locals>.TD.__annotate__5#  r  rk   rl   Nrm  rs   s   @rh   r  r  5#  rn  rk   r  r  rM  Nrl   )	r=   r   r   r  r  r  r   r   r  )rf   r  r  rM  s   &   rh   r  )TypedDictTests.test_non_generic_subscript2#  s    	 	sGr*))2.cV,!Hd1gt$S!H%rk   c                ~   \        R 4      p ! R R\        4      p ! R RV4      p ! R RV4      p ! R RW4V4      p ! R	 R
\        \        V,          4      p ! R RV\        ,          4      p ! R RV\        ,          4      p ! R RWxV\
        ,          4      p	 ! R RV\        ,          V\
        ,          4      p
\        R/ 4      pV P                  VP                  \        34       V P                  VP                  V34       V P                  VP                  V34       V P                  VP                  W4V34       V P                  VP                  \        \        V,          34       V P                  VP                  V\        ,          34       V P                  VP                  V\        ,          34       V P                  V	P                  WxV\
        ,          34       V P                  V
P                  V\        ,          V\
        ,          34       V P                  VP                  \        34       R# )r   c                       ] tR tRtRtR# ).TypedDictTests.test_orig_bases.<locals>.ParentiB#  rl   Nr   rl   rk   rh   Parentr  B#  rw  rk   r  c                       ] tR tRtRtR# )-TypedDictTests.test_orig_bases.<locals>.ChildiE#  rl   Nr   rl   rk   rh   r  r  E#  rw  rk   r  c                       ] tR tRtRtR# )2TypedDictTests.test_orig_bases.<locals>.OtherChildiH#  rl   Nr   rl   rk   rh   
OtherChildr  H#  rw  rk   r  c                       ] tR tRtRtR# )2TypedDictTests.test_orig_bases.<locals>.MixedChildiK#  rl   Nr   rl   rk   rh   
MixedChildr  K#  rw  rk   r  c                       ] tR tRtRtR# )5TypedDictTests.test_orig_bases.<locals>.GenericParentiN#  rl   Nr   rl   rk   rh   GenericParentr  N#  rw  rk   r  c                       ] tR tRtRtR# )4TypedDictTests.test_orig_bases.<locals>.GenericChildiQ#  rl   Nr   rl   rk   rh   GenericChildr  Q#  rw  rk   r  c                       ] tR tRtRtR# )9TypedDictTests.test_orig_bases.<locals>.OtherGenericChildiT#  rl   Nr   rl   rk   rh   OtherGenericChildr  T#  rw  rk   r  c                       ] tR tRtRtR# )9TypedDictTests.test_orig_bases.<locals>.MixedGenericChildiW#  rl   Nr   rl   rk   rh   MixedGenericChildr  W#  rw  rk   r  c                       ] tR tRtRtR# )<TypedDictTests.test_orig_bases.<locals>.MultipleGenericBasesiZ#  rl   Nr   rl   rk   rh   MultipleGenericBasesr  Z#  rw  rk   r  CallTypedDictN)r   r=   r$   r   r  r  r   r  )rf   r   r  r  r  r  r  r  r  r  r  r  s   &           rh   r  TypedDictTests.test_orig_bases?#  s   CL	Y 		F 		 		F 		Iwqz 		=- 		c 2 		uAU 		=#5}U7K 	 "/26..=--y922VI>22U4PQ55	71:7NO44}S7I6KL*99M#<N;PQ*99L]jkp]q;rs-<<}S?QS`afSg>hi55	|Drk   c                   \        R / 4      p ! R R\         4      pR ! 4       p\        R4      p ! R R\         \        V,          4      p\        P                  ! R4      pV P                  \        RV R	24      ;_uu_ 4        \        R
4      pRRR4       \        P                  ! R4      pV P                  \        RV R	24      ;_uu_ 4        \        RR4      pRRR4       WW5XX3 F  p	V P                  V	P                  R7      ;_uu_ 4        V P                  V	P                  / 4       V P                  V	P                  \        4       4       V P                  V	P                  \        4       4       V P                  V	! 4       \        4       RRR4       K  	  R#   + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     K  ; i)r  c                       ] tR tRtRtR# )6TypedDictTests.test_zero_fields_typeddicts.<locals>.T2il#  rl   Nr   rl   rk   rh   r  r  l#  r  rk   r  c                  <   a R 5;p 3o ! V3R lRS5
p\         V4      # )tvarc                      < ] tR tRt Z tRtR# )6TypedDictTests.test_zero_fields_typeddicts.<locals>.T3im#  rl   NrW  rY  s   rh   r(  r  m#  s     4rk   r(  r  )r  r\  rZ  s     @rh   <generic parameters of T3>NTypedDictTests.test_zero_fields_typeddicts.<locals>.<generic parameters of T3>m#  s    ''y'rk   r
  c                       ] tR tRtRtR# )6TypedDictTests.test_zero_fields_typeddicts.<locals>.T4io#  rl   Nr   rl   rk   rh   T4r  o#  s    rk   r  zFailing to pass a value for the 'fields' parameter is deprecated and will be disallowed in Python 3.15. To create a TypedDict class with 0 fields using the functional syntax, pass an empty dictionary, e.g. `T5 = TypedDict('T5', {})`.r  r  T5NzPassing `None` as the 'fields' parameter is deprecated and will be disallowed in Python 3.15. To create a TypedDict class with 0 fields using the functional syntax, pass an empty dictionary, e.g. `T6 = TypedDict('T6', {})`.T6r  )r=   r   r$   r  r  r8  r9  r~   rm   r   rn  r  rQ  r  r   r  )
rf   r  r  r(  r
  r  rT  r  r  r  s
   &         rh   test_zero_fields_typeddicts*TypedDictTests.test_zero_fields_typeddictsj#  sl   tR !!'CL-GAJ-99I
 ""#5!<L;MQ7OPP4B Q 99I
 ""#5!<L;MQ7OPP4&B Q RR+EENN33  !6!6;  !8!8#%@  !8!8#%@%%egt4	 43 , QPP QP 433s%   FF2B GF/	2G	Gc                    ! R  R\         4      p ! R RV4      pV P                  VP                  \        R04      4       V P                  VP                  \        R04      4        ! R R\         4      p ! R R	V4      pV P                  VP                  \        R04      4       V P                  VP                  \        R04      4       R
# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )7TypedDictTests.test_readonly_inheritance.<locals>.Base1i#  c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # r5  r<   r   )r  rt   s   "rh   r  DTypedDictTests.test_readonly_inheritance.<locals>.Base1.__annotate__#  r.  rk   rl   Nrm  rs   s   @rh   r)  r  #  rn  rk   r)  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )8TypedDictTests.test_readonly_inheritance.<locals>.Child1i#  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r\  )r  rt   s   "rh   r  ETypedDictTests.test_readonly_inheritance.<locals>.Child1.__annotate__#  r  rk   rl   Nrm  rs   s   @rh   Child1r  #  rn  rk   r
  rM  r   c                   ,   a  ] tR tRt o V 3R ltRtV tR# )7TypedDictTests.test_readonly_inheritance.<locals>.Base2i#  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  rL  )r  rt   s   "rh   r  DTypedDictTests.test_readonly_inheritance.<locals>.Base2.__annotate__#  r  rk   rl   Nrm  rs   s   @rh   r/  r  #  rn  rk   r/  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )8TypedDictTests.test_readonly_inheritance.<locals>.Child2i#  c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # r  )r<   r  )r  rt   s   "rh   r  ETypedDictTests.test_readonly_inheritance.<locals>.Child2.__annotate__#  r.  rk   rl   Nrm  rs   s   @rh   Child2r  #  rn  rk   r  Nr=   r   __readonly_keys__rA
  __mutable_keys__)rf   r)  r
  r/  r  s   &    rh   test_readonly_inheritance(TypedDictTests.test_readonly_inheritance#  s    	I 		U 	 	119cU3CD00)SE2BC	I 		U 	 	119cU3CD00)SE2BCrk   c                     ! R  R\         4      pV P                  \        4      ;_uu_ 4         ! R RV4      pRRR4       R#   + '       g   i     R# ; i)c                   ,   a  ] tR tRt o V 3R ltRtV tR# )BTypedDictTests.test_cannot_make_mutable_key_readonly.<locals>.Basei#  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  rL  )r  rt   s   "rh   r  OTypedDictTests.test_cannot_make_mutable_key_readonly.<locals>.Base.__annotate__#  r  rk   rl   Nrm  rs   s   @rh   r  r  #  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )CTypedDictTests.test_cannot_make_mutable_key_readonly.<locals>.Childi#  c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # r5  r  )r  rt   s   "rh   r  PTypedDictTests.test_cannot_make_mutable_key_readonly.<locals>.Child.__annotate__#  s     C=  rk   rl   Nrm  rs   s   @rh   r  r  #  rn  rk   r  N)r=   r   r   rf   r  r  s   &  rh   %test_cannot_make_mutable_key_readonly4TypedDictTests.test_cannot_make_mutable_key_readonly#  s<    	9 	 y))! ! *)))s   AA	c                     ! R  R\         4      p ! R RV4      pV P                  VP                  \        4       4       V P                  VP                  \        R04      4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )?TypedDictTests.test_can_make_readonly_key_mutable.<locals>.Basei#  c                6   < V ^8  d   Qh/ S[ S[,          ;R&   # r5  r  )r  rt   s   "rh   r  LTypedDictTests.test_can_make_readonly_key_mutable.<locals>.Base.__annotate__#  r.  rk   rl   Nrm  rs   s   @rh   r  r'  #  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )@TypedDictTests.test_can_make_readonly_key_mutable.<locals>.Childi#  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  rL  )r  rt   s   "rh   r  MTypedDictTests.test_can_make_readonly_key_mutable.<locals>.Child.__annotate__#  r  rk   rl   Nrm  rs   s   @rh   r  r+  #  rn  rk   r  rM  Nr  r"  s   &  rh   "test_can_make_readonly_key_mutable1TypedDictTests.test_can_make_readonly_key_mutable#  sQ    	9 		D 	 	00)+>//C51ABrk   c                0    ! R  R\         4      pV P                  VP                  \        RR04      4       V P                  VP                  \        RR04      4       V P                  VP
                  \        0 Rm4      4       V P                  VP                  \        R04      4       V P                  \        VRR7      R\        R\        R\        R\        /4       V P                  \        VRR7      R\        \        \        \        ,          ,          R	3,          R\        \        \        \        ,          R	3,          ,          R\        \        \        \        R	3,          ,          ,          R\        \        \        R	3,          ,          /4       R
# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )<TypedDictTests.test_combine_qualifiers.<locals>.AllTheThingsi#  c                
  < V ^8  d   Qh/ S[ S[S[S[,          ,          R3,          ;R&   S[S[ S[S[,          R3,          ,          ;R&   S[S[S[ S[R3,          ,          ,          ;R&   S[S[ S[R3,          ,          ;R&   # )r  why notrM  r   r7  r8  )rC   r;   r<   r   r:   )r  rt   s   "rh   r  ITypedDictTests.test_combine_qualifiers.<locals>.AllTheThings.__annotate__#  s|     (3-0);<< 	(3-":;<<  Ic9n$=>??  9S)^455	 rk   rl   Nrm  rs   s   @rh   AllTheThingsr2  #  rn  rk   r6  rM  r   r7  r8  Fr  Tr4  NrS  )r=   r   r  rA
  r  r  r  r,   r   rC   r;   r<   r:   )rf   r6  s   & rh   test_combine_qualifiers&TypedDictTests.test_combine_qualifiers#  s,   	69 	6 	77C:9NO77C:9NO77?9ST66	3%8HI<>#sCc34	
 	<=Yx6	ABXiy(@ABXk)CN*CDE[3	>!:;		
rk   c                R  a V P                  \        R 4      ;_uu_ 4         ! R R\        4      pRRR4        ! R R\        4      p\        R\        R7      pV P                  VP                  R\        R4      R	V/4       V P                  VP                  \        P                  P                  4      R\        R4      R	V/4        ! V3R
 lR\        4      pV P                  \        4      ;_uu_ 4        VP                   RRR4       \        oV P                  \        R 4      ;_uu_ 4        VP                   RRR4       RoV P                  VP                  R\        R4      /4       R#   + '       g   i     ELH; i  + '       g   i     L; i  + '       g   i     Lb; i)z0Plain typing.Final is not valid as type argumentc                   ,   a  ] tR tRt o V 3R ltRtV tR# )*TypedDictTests.test_annotations.<locals>.Xi#  c                &   < V ^8  d   Qh/ S[ ;R&   # r5  r  )r  rt   s   "rh   r  7TypedDictTests.test_annotations.<locals>.X.__annotate__#  r  rk   rl   Nrm  rs   s   @rh   r  r;  #  rn  rk   r  Nc                   ,   a  ] tR tRt o V 3R ltRtV tR# )*TypedDictTests.test_annotations.<locals>.Yi#  c                .   < V ^8  d   Qh/ R;R&   R;R&   # )r  NrM  r   r   rl   )r  rt   s   "rh   r  7TypedDictTests.test_annotations.<locals>.Y.__annotate__#  r  rk   rl   Nrm  rs   s   @rh   r  r?  #  rn  rk   r  r   )r  rM  r   c                   0   <a  ] tR tRt o V V3R ltRtV tR# )*TypedDictTests.test_annotations.<locals>.Zi#  c                &   < V ^8  d   Qh/ SZ;R&   # r5  rl   )r  rt   r  s   "rh   r  7TypedDictTests.test_annotations.<locals>.Z.__annotate__#  r  rk   rl   Nrm  r  s   @rh   r  rC  #  r*	  rk   r  )r
  r   r=   rU   rm   r   rn  r   r  r  r  r0  r   r.  r&   )rf   r  r  fwdrefr  r  s   &    @rh   test_annotationsTypedDictTests.test_annotations#  s:   ##I/abbI  c
		 	 #5:**S$t*c6,JK(<(<(G(GH3PTUYPZ\_agJhi		 	 y)) * 	##I/abb c 	**S$t*,=>1 cbb  *) cbs#   E/6F/F/F 	F	F&	c           	     `    ! R  R\         4      pV P                  VP                  \        RR04      4       V P                  VP                  \        R04      4       V P                  VP
                  \        R04      4       V P                  VP                  \        RR04      4       V P                  \        4      ;_uu_ 4        VP                   RRR4       V P                  VP                  \        P                  P                  4      RRRRRR/4       R#   + '       g   i     LQ; i)	c                   ,   a  ] tR tRt o V 3R ltRtV tR# )2TypedDictTests.test_deferred_evaluation.<locals>.Ai#  c                n   < V ^8  d   Qh/ S[ S[,          ;R&   S[S[,          ;R&   S[S[,          ;R&   # rh  )r:   r  r<   r;   )r  rt   s   "rh   r  ?TypedDictTests.test_deferred_evaluation.<locals>.A.__annotate__#  s7     9%% 	""  	"" rk   rl   Nrm  rs   s   @rh   r  rK  #  rn  rk   r  r   r  r   NzNotRequired[undefined]zReadOnly[undefined]zRequired[undefined])r=   r   r  rA
  r  r  r  r   r.  rn  r  r  r  r  r  s   & rh   test_deferred_evaluation'TypedDictTests.test_deferred_evaluation#  s    	#	 	#
 	,,ic
.CD,,i.>?,,i.>?++YSz-BCy)) * 	NN=//667*C1F')	
 *)s   DD-	rl   N)&rm   rn   ro   rp   r  r  r  r  r  r  r:  r  r  r  r  r  r"  r2  rF  rI  r  r  r4  r  r  r  r  r  r  r  r  r#  r.  r7  rG  rN  rq   rr   rs   s   @rh   r  r  !  s     @.
/1/H	MCO 	+, H@D2?<".HUn62

2 ]~!<&)EV 5DD&!C
4?8
 
rk   r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	RequiredTestsi#  c                   V P                  \        4      ;_uu_ 4        \        \        ,           R R R 4       V P                  \        4      ;_uu_ 4        \        \        \
        3,           R R R 4       V P                  \        4      ;_uu_ 4        \        \        ,          \
        ,           R R R 4       R #   + '       g   i     L; i  + '       g   i     Lg; i  + '       g   i     R # ; irb   )r   r   r;   r:   r   r  r   s   &rh   r|  RequiredTests.test_basics#  s    y))[! *y))S#X *y))SM# *)	 *))))))#   B9CC9C		C	C0	c                   V P                  \        \        4      R 4       \        \        ,          pV P                  \        V4      R4       \        \        ,          pV P                  \        V4      R\
         R24       R# )ztyping.Requiredztyping.Required[int]ztyping.Required[
.Employee]N)r   r   r;   r   r   rm   r  s   & rh   r   RequiredTests.test_repr$  s]    h):;c]b#9:hb%5hZz#JKrk   c           
        V P                  \        \        4      ;_uu_ 4         ! R  R\        \        4      4      pRRR4       V P                  \        \        4      ;_uu_ 4         ! R R\        \        \
        ,          4      4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R	 R
\        \
        ,          4      pRRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ly; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# )-RequiredTests.test_cannot_subclass.<locals>.Ci$  rl   Nr   rl   rk   rh   r  rZ  $  r  rk   r  Nc                       ] tR tRtRtR# )-RequiredTests.test_cannot_subclass.<locals>.Di$  rl   Nr   rl   rk   rh   r  r\  $  r  rk   r  z Cannot subclass typing\.Requiredc                       ] tR tRtRtR# )-RequiredTests.test_cannot_subclass.<locals>.Ei$  rl   Nr   rl   rk   rh   r  r^  $  r  rk   r  z'Cannot subclass typing\.Required\[int\]c                       ] tR tRtRtR# )-RequiredTests.test_cannot_subclass.<locals>.Fi$  rl   Nr   rl   rk   rh   r  r`  $  r  rk   r  )r
  r   r  r   r;   r   r  s   &    rh   r  "RequiredTests.test_cannot_subclass$  s    ##I/CDDDN  E ##I/CDDD#'  E ##I35 5H 5 ##I:< <HSM < < ED ED5 5< < <r  c                   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        4      ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        \
        ,          ,          4      ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lu; i  + '       g   i     R # ; irb   )r   r   r;   r   r   r   r   s   &rh   r  RequiredTests.test_cannot_init$  r  r  c                J   V P                  \        4      ;_uu_ 4        \        ^\        \        ,          4       RRR4       V P                  \        4      ;_uu_ 4        \        \        \        4       RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; ir  )r   r   r   r;   r   r   r   s   &rh   r   RequiredTests.test_no_isinstance%$  r  r  rl   Nr  rs   s   @rh   rQ  rQ  #  s$     L ,& &rk   rQ  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	NotRequiredTestsi,$  c                   V P                  \        4      ;_uu_ 4        \        \        ,           R R R 4       V P                  \        4      ;_uu_ 4        \        \        \
        3,           R R R 4       V P                  \        4      ;_uu_ 4        \        \        ,          \
        ,           R R R 4       R #   + '       g   i     L; i  + '       g   i     Lg; i  + '       g   i     R # ; irb   )r   r   r:   r;   r   r  r   s   &rh   r|  NotRequiredTests.test_basics.$  s    y))! *y))S! *y))S! *)	 *))))))rT  c                   V P                  \        \        4      R 4       \        \        ,          pV P                  \        V4      R4       \        \        ,          pV P                  \        V4      R\
         R24       R# )ztyping.NotRequiredztyping.NotRequired[int]ztyping.NotRequired[rV  N)r   r   r:   r   r   rm   r  s   & rh   r   NotRequiredTests.test_repr6$  s_    k*,@Ab#<="b%8
*#MNrk   c           
        V P                  \        \        4      ;_uu_ 4         ! R  R\        \        4      4      pRRR4       V P                  \        \        4      ;_uu_ 4         ! R R\        \        \
        ,          4      4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R	 R
\        \
        ,          4      pRRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ly; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# )0NotRequiredTests.test_cannot_subclass.<locals>.Ci?$  rl   Nr   rl   rk   rh   r  rn  ?$  r  rk   r  Nc                       ] tR tRtRtR# )0NotRequiredTests.test_cannot_subclass.<locals>.DiB$  rl   Nr   rl   rk   rh   r  rp  B$  r  rk   r  z#Cannot subclass typing\.NotRequiredc                       ] tR tRtRtR# )0NotRequiredTests.test_cannot_subclass.<locals>.EiF$  rl   Nr   rl   rk   rh   r  rr  F$  r  rk   r  z*Cannot subclass typing\.NotRequired\[int\]c                       ] tR tRtRtR# )0NotRequiredTests.test_cannot_subclass.<locals>.FiJ$  rl   Nr   rl   rk   rh   r  rt  J$  r  rk   r  )r
  r   r  r   r:   r   r  s   &    rh   r  %NotRequiredTests.test_cannot_subclass=$  s    ##I/CDDD%  E ##I/CDDDS)*  E ##I68 8K 8 ##I=? ?K$ ? ? ED ED8 8? ? ?r  c                   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        4      ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        \
        ,          ,          4      ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lu; i  + '       g   i     R # ; irb   )r   r   r:   r   r   r   r   s   &rh   r  !NotRequiredTests.test_cannot_initM$  s    y))M *y)) *y))Xc]+,. *)	 *))))))r  c                J   V P                  \        4      ;_uu_ 4        \        ^\        \        ,          4       RRR4       V P                  \        4      ;_uu_ 4        \        \        \        4       RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; ir  )r   r   r   r:   r   r   r   s   &rh   r  #NotRequiredTests.test_no_isinstanceU$  s]    y))q+c*+ *y))sK( *) *))))r  rl   Nr  rs   s   @rh   rg  rg  ,$  s$     "O /) )rk   rg  c                   2   a  ] tR tRt o R tR tR tRtV tR# )IOTestsi\$  c                z    R  R lpVP                   R,          pV P                  VP                  \        34       R# )c                0    V ^8  d   QhR\         R\        /# rt  )r>   r   )r  s   "rh   r  %IOTests.test_io.<locals>.__annotate__`$  s     	  	 R 	 F 	 rk   c                 "    V P                  4       # rb   readliner  s   &rh   r  IOTests.test_io.<locals>.stuff`$      ::<rk   rM  N)rn  r   r  r   rf   r  rM  s   &  rh   test_ioIOTests.test_io^$  s1    	  !!#&))F95rk   c                p    R  R lpVP                   R,          pV P                  VP                  R4       R# )c                0    V ^8  d   QhR\         R\        /# rt  )r?   r  )r  s   "rh   r  )IOTests.test_textio.<locals>.__annotate__h$  s     	  	 V 	  	 rk   c                 "    V P                  4       # rb   r  r  s   &rh   r  "IOTests.test_textio.<locals>.stuffh$  r  rk   rM  Nrl   rn  r   r  r  s   &  rh   test_textioIOTests.test_textiof$  /    	  !!#&))2.rk   c                p    R  R lpVP                   R,          pV P                  VP                  R4       R# )c                0    V ^8  d   QhR\         R\        /# rt  )r@   r  )r  s   "rh   r  +IOTests.test_binaryio.<locals>.__annotate__p$  s     	  	 X 	 % 	 rk   c                 "    V P                  4       # rb   r  r  s   &rh   r  $IOTests.test_binaryio.<locals>.stuffp$  r  rk   rM  Nrl   r  r  s   &  rh   test_binaryioIOTests.test_binaryion$  r  rk   rl   N)	rm   rn   ro   rp   r  r  r  rq   rr   rs   s   @rh   r{  r{  \$  s     6// /rk   r{  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	RETestsiw$  c                N   \         P                  ! R \         P                  4      pV P                  VP                  \
        4       V P                  \        V4      \
        4       V P                  V\
        4       VP                  R4      pV P                  VP                  \        4       V P                  \        V4      \        4       V P                  V\        4       \
        \        \        \        3,          ,           \        \        \        \        3,          ,           R# )z[a-z]+z12345abcde.....N)r  compiler  r   r   rA   r   r   searchrB   r   r  r  )rf   r  mats   &  rh   r|  RETests.test_basicsz$  s    jj244(cmmW5d3i1c7+jj*+cmmU3d3i/c5) 	c5j!"eE3J  rk   c                p   V P                  \        \        ,          \        \        ,          4       V P                  \        \        ,          \        \        ,          4       V P                  \        \        ,          \
        \        ,          4       V P                  \        \        ,          \        4       R # rb   )r   rA   r  r   r  rB   r   s   &rh   test_alias_equalityRETests.test_alias_equality$  s^    ws|4GCL'%.9GCL%*5GCL#.rk   c                F   \         \        \        \        3,          ,          pV P	                  \
        4      ;_uu_ 4        V\        ,           R R R 4       V P	                  \
        4      ;_uu_ 4        \        ^*\        \        ,          4       R R R 4       V P	                  \
        4      ;_uu_ 4        \        \        \        ,          \        \        ,          4       R R R 4       R #   + '       g   i     L; i  + '       g   i     Lu; i  + '       g   i     R # ; irb   )	rB   r   r  r  r   r   r   rA   r   )rf   r@  s   & rh   r   RETests.test_errors$  s    %U
#$y))cF *y))r73<( * y))wu~ws|4 *) *))) *))s$    C)3C<4+D)C9	<D	D 	c                   V P                  \        \        4      R 4       V P                  \        \        \        ,          4      R4       V P                  \        \        \        ,          4      R4       V P                  \        \
        4      R4       V P                  \        \
        \        ,          4      R4       V P                  \        \
        \        ,          4      R4       R# )ztyping.Patternztyping.Pattern[str]ztyping.Pattern[bytes]ztyping.Matchztyping.Match[str]ztyping.Match[bytes]N)r   r   rA   r  r  rB   r   s   &rh   r   RETests.test_repr$  s    g(89gcl+-BCgen-/FGen5eCj)+>?eEl+-BCrk   c                T   V P                  \        R 4      ;_uu_ 4         ! R R\        P                  4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        P                  4      pRRR4       R#   + '       g   i     LR; i  + '       g   i     R# ; i)z/type 're\.Match' is not an acceptable base typec                       ] tR tRtRtR# )'RETests.test_cannot_subclass.<locals>.Ai$  rl   Nr   rl   rk   rh   r  r  $  r  rk   r  Nz1type 're\.Pattern' is not an acceptable base typec                       ] tR tRtRtR# )'RETests.test_cannot_subclass.<locals>.Bi$  rl   Nr   rl   rk   rh   r	  r  $  r  rk   r	  )r
  r   rc   rB   rA   r  s   &  rh   r  RETests.test_cannot_subclass$  s    ##>
 
FLL 	
 ##@
 
FNN 	
 

 

 
 
s   BBB	B'	rl   N)rm   rn   ro   rp   r|  r  r   r   r  rq   rr   rs   s   @rh   r  r  w$  s$     !/	5D rk   r  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RtV t R# )AnnotatedTestsi$  c                    V P                  \        R 4      ;_uu_ 4        \        4        RRR4       R#   + '       g   i     R# ; i)z#Cannot instantiate typing.AnnotatedNr
  r   rC   r   s   &rh   test_newAnnotatedTests.test_new$  s7    ##<
 
 K
 
 
 
s	   4A	c                    V P                  \        \        \        ^^3,          4      R4       V P                  \        \        \        \        ,          ^^3,          4      R4       R# )r  ztyping.Annotated[int, 4, 5]z(typing.Annotated[typing.List[int], 4, 5]N)r   r   rC   r   r   r   s   &rh   r   AnnotatedTests.test_repr$  sP    319%&)	
 	49a?+,6	
rk   c                    \        \        \        \        ^3,          4      4      pR F7  pV P	                  VR7      ;_uu_ 4        V P                  W!4       RRR4       K9  	  R#   + '       g   i     KN  ; i)r  rN  N)r  r  r  __metadata__)rQ  rR  rC   r   r~   rS  rT  s   &  rh   rV  AnnotatedTests.test_dir$  sY    Ic1f-./	
M M::m7 ;:	
 ;::s   A%%A6c                   \         \         \        ^3,          ^3,          pV P                  V\         \        ^^3,          4       V P                  VP                  R4       V P                  VP                  \        4       R# )r  Nr   )rC   r   r   r  r  r  s   & rh   r6  AnnotatedTests.test_flatten$  s]    iQ'*+Ic1ai010s+rk   c                   V P                  \        \        \        ^3,          \        ,          4      \        \        ^3,          \        34       V P                  \        \        \        \        ^3,          \        3,          4      \        \        ^3,          \        34       V P                  \        \        \        ^3,          \        \        ^3,          ,          \        ,          4      \        \        ^3,          \        \        ^3,          \        34       V P                  \        \        \        \        ^3,          \        \        ^3,          \        3,          4      \        \        ^3,          \        \        ^3,          \        34       V P                  \        \        \        ^3,          \        \
        ^3,          ,          \        ,          4      \        \        ^3,          \        \
        ^3,          \        34       V P                  \        \        \        \        ^3,          \        \
        ^3,          \        3,          4      \        \        ^3,          \        \
        ^3,          \        34       V P                  \        \        ^3,          \        \        ^3,          ,          \        ,          \        \        ^3,          \        ,          4       V P                  \        \        \        ^3,          \        \        ^3,          \        3,          \        \        \        ^3,          \        3,          4       V P                  \        \
        \        \        / 3,          ,          \        \        \        4       3,          ,          \        ,          4      \
        \        \        / 3,          \        \        \        4       3,          \        34       V P                  \        \        \
        \        \        / 3,          \        \        \        4       3,          \        3,          4      \
        \        \        / 3,          \        \        \        4       3,          \        34       V P                  \        \
        \        \        / 3,          ,          \        \
        / 3,          ,          \        ,          4      \
        \        \        / 3,          \        \
        / 3,          \        34       V P                  \        \        \
        \        \        / 3,          \        \
        / 3,          \        3,          4      \
        \        \        / 3,          \        \
        / 3,          \        34       V P                  \        \        \        ^3,          \
        ,          \        \
        / 3,          ,          \        ,          4      \        \        ^3,          \
        \        \
        / 3,          \        34       V P                  \        \        \        \        ^3,          \
        \        \
        / 3,          \        3,          4      \        \        ^3,          \
        \        \
        / 3,          \        34       ^ RIpVP                   ! R R4      4       pV! ^^4      pV P                  \        \        \        V3,          R,          4      \        \        V3,          \        P                  34       V P                  \        \        \        \        V3,          R3,          4      \        \        V3,          \        P                  34       V P                  \        \        \        \        V3,          ,          4      \        \        V3,          \        P                  34       V P                  \        \        / 3,          \        \        / 3,          ,          \        ,          \        \        / 3,          \        ,          4       V P                  \        \        / 3,          \        \        / 3,          ,          \        ,          \        \        \        / 3,          ,          4       V P                  \        \        \        / 3,          \        \        / 3,          \        3,          \        \        \        / 3,          \        3,          4       V P                  \        \        \        / 3,          \        \        / 3,          \        3,          \        \        \        \        / 3,          3,          4       R# )rw   Nc                   ,   a  ] tR tRt o V 3R ltRtV tR# )>AnnotatedTests.test_deduplicate_from_union.<locals>.ValueRangei$  c                2   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   # )r  lor  rL  )r  rt   s   "rh   r  KAnnotatedTests.test_deduplicate_from_union.<locals>.ValueRange.__annotate__$  s     G  G rk   rl   Nrm  rs   s   @rh   
ValueRanger  $  rn  rk   r  )r   r.   rC   r   r   r  rQ  dataclasses	dataclassr  r  r   )rf   r  r  r  s   &   rh   test_deduplicate_from_union*AnnotatedTests.test_deduplicate_from_union$  s   )CF"3c"9:#CF+S1	3%	#q&(93(>"?@#CF+S1	3)CF"3iQ6G"G#"MN#CF+YsAv->D	F%	#q&(99S!V;Lc(Q"RS#CF+YsAv->D	F)CF"3iQ6G"G#"MN#CF+YsAv->D	F%	#q&(99S!V;Lc(Q"RS#CF+YsAv->D	F 	36*YsAv->>D"36*S0	2ya0)CF2CSHIya0#56	8 	#	#r'(:":YsCEz=R"RUX"XYyb19S#%Z3H#N	P%YsBw-?3PSPU:AVX[(["\]yb19S#%Z3H#N	P#	#r'(:":YsBw=O"ORU"UVyb19S"W3EsK	M%YsBw-?3PR7ASUX(X"YZyb19S"W3EsK	M 	)CF"3c"9Ic2g<N"NQT"TU#CF+S)CG2DcJ	L%	#q&(93	#r'@RTW(W"XY#CF+S)CG2DcJ	L 					 	 
	 q!)CF"3d":;#CF+U^^<	>%	#q&(94(?"@A#CF+U^^<	>(9S!V+<"=>#CF+U^^<	> 	37+iR.@@3F"37+c1	337+iR.@@3Fyb11	3yb19S"W3EsJKyb1367	9yb19S"W3EsJKsIc2g$667	9rk   c           
        \         \        ^3,          \        ,          \         \        / 3,          ,          \        ,          p\        P                  ! \        V4      4       FP  pV P                  VR7      ;_uu_ 4        V P                  V\        \        P                  V4      4       RRR4       KR  	  \        \         \        ^3,          \        \         \        / 3,          \        3,          p\        P                  ! \        V4      4       FC  pV P                  VR7      ;_uu_ 4        V P                  V\        V,          4       RRR4       KE  	  R#   + '       g   i     EK	  ; i  + '       g   i     Ko  ; i)rw   r  N)rC   r   r  r  permutationsr.   r~   r   r   operatoror_r   )rf   expr1r   expr2s   &   rh   test_order_in_union"AnnotatedTests.test_order_in_union%  s    #q&!C')CG*<<sB**8E?;D4((  x||T(BC )( < iQ'iR.@#EF**8E?;D4((  d4 )( <	 )((
 )((s   >+E,E-E*-E>c                   \         \        \        ,          R 3,          p\         \        \        ,          R 3,          pV P	                  V\        ,          \         \        \        ,          R 3,          4       V P	                  V\        ,          P
                  R4       V P	                  V\        ,          P                  \        \        ,          4       V P                  \        4      ;_uu_ 4        V\        ,           RRR4       V P                  \        4      ;_uu_ 4        V\        \        3,           RRR4       R#   + '       g   i     LK; i  + '       g   i     R# ; i)my decorationN)r  )
rC   r   r   r   r   r  r  r   r   r  )rf   r  LIs   &  rh   test_specializeAnnotatedTests.test_specialize%  s    d1g./tCy/12349o+E!FG3,,.@A3**DI6y))sG *y))c5jM *) *))))s   0E#EE	E%	c           	     (   V P                  \        \        \        ^^3,          \        \        ^^3,          04      ^4       V P	                  \        \        ^^3,          \        \        ^^3,          4       V P	                  \        \        ^^3,          \        \
        ^^3,          4       V P	                  \        \        ^3,          \        \        ^^3,          4       V P                  \        \        ^^3,          \        \        ^^3,          \        \        ^^3,          0\        \        ^^3,          \        \        ^^3,          04       \        \        . 3,          pV P                  \        4      ;_uu_ 4        \        V4       RRR4        ! R R4      p\        \        V! 4       3,          pV P                  \        4      ;_uu_ 4        \        V4       RRR4       R#   + '       g   i     Le; i  + '       g   i     R# ; i)r  Nc                       ] tR tRtRtRtR# )&AnnotatedTests.test_hash_eq.<locals>.Ai1%  Nrl   r  rl   rk   rh   r  r  1%  r  rk   r  )
r   rP  rC   r   r   r  r   r   r   r  )rf   r  r  r  s   &   rh   test_hash_eqAnnotatedTests.test_hash_eq#%  su   iQ	2Ic1ai4HIJANIc1ai0)CAI2FGIc1ai0)CAI2FGIc1f-ya/CDsAqy!9S!QY#71a79KLsAqy!9Q1W#56	

 sBwy))H *	 	sACx y))H *) *) *))s   G-H -G=	 H	c                  a  ! V3R  lR4      o\         SR3,          pV! ^4      pS! ^4      pV P                  W#4       V P                  VP                  VP                  4       V P                  VP                  VP                  4       R# )c                   8   <a  ] tR tRt o ^tR tV3R ltRtV tR# )*AnnotatedTests.test_instantiate.<locals>.Ci8%  c                    Wn         R # rb   r   r   s   &&rh   r   3AnnotatedTests.test_instantiate.<locals>.C.__init__;%  r   rk   c                f   < \        VS4      '       g   \        # VP                  V P                  8H  # rb   )r   NotImplementedr   )rf   rW
  r  s   &&rh   __eq__1AnnotatedTests.test_instantiate.<locals>.C.__eq__>%  s)    !%++))ww$&&((rk   r   N)	rm   rn   ro   rp   classvarr   r  rq   rr   )rt   r  s   @rh   r  r  8%  s     H) )rk   r  a decorationN)rC   r   r   r  )rf   r  rM  r7  r  s   &   @rh   test_instantiateAnnotatedTests.test_instantiate7%  sn    		) 		) a'(aDaDacc"QZZ0rk   c                    \         \        P                  \        ,          R 3,          pV P	                  V! . RO4      ^^^^/4       V P	                  V\
        ,          ! . RO4      ^^^^/4       R# )r  N)r  r  r  )rC   rc   rT  r   r   r   )rf   MyCounts   & rh   test_instantiate_generic'AnnotatedTests.test_instantiate_genericJ%  sX    FNN1->?+aAq\:i01aA,?rk   c                f     ! R  R4      p\         VR3,          pV P                  V! 4       V4       R# )c                   &   a  ] tR tRt o R tRtV tR# )4AnnotatedTests.test_instantiate_immutable.<locals>.CiP%  c                    \        R 4      h)zshould be ignored)r  rL  s   &&&rh   r=  @AnnotatedTests.test_instantiate_immutable.<locals>.C.__setattr__Q%  s     344rk   rl   N)rm   rn   ro   rp   r=  rq   rr   rs   s   @rh   r  r  P%  s     5 5rk   r  r  N)rC   r   rf   r  r  s   &  rh   test_instantiate_immutable)AnnotatedTests.test_instantiate_immutableO%  s1    	5 	5 a'( 	ac1%rk   c                    \         R,          pV P                  \        4      ;_uu_ 4        V! ^4       RRR4       R#   + '       g   i     R# ; i)r   N)r   r     )rC   r   r   r  s   & rh   test_cannot_instantiate_forward.AnnotatedTests.test_cannot_instantiate_forwardZ%  s3    m$y))aD *)))s	   	>A	c                    \         \        R3,          pV P                  \        4      ;_uu_ 4        V! ^4       RRR4       R#   + '       g   i     R# ; i)r  Nr  )rC   r   r   r   r  s   & rh    test_cannot_instantiate_type_var/AnnotatedTests.test_cannot_instantiate_type_var_%  s7    ai y))aD *)))s   	AA	c                    V P                  \        4      ;_uu_ 4        \        \        R3,          P                   RRR4       R#   + '       g   i     R# ; i)r  N)r     )r   r  rC   r   r   r   s   &rh   test_cannot_getattr_typevar*AnnotatedTests.test_cannot_getattr_typevard%  s4    ~..ai "" /...   AA	c                     ! R  R4      p\         VR3,          pV P                  VP                  ^4       ^Vn        V P                  VP                  ^4       R# )c                       ] tR tRt^tRtR# )/AnnotatedTests.test_attr_passthrough.<locals>.Cii%  rl   N)rm   rn   ro   rp   r  rq   rl   rk   rh   r  r  i%  s    Hrk   r  r  N)rC   r   r  r   r  s   &  rh   test_attr_passthrough$AnnotatedTests.test_attr_passthroughh%  sL    	 	 a'(Q'a rk   c                    ! R  R4      pV P                  \        V\        4       4      R,          \        \        ,          4       V P                  \        V\        4       4      R,          \
        \        ,          4       R# )c                   4   a  ] tR tRt o ^t^tV 3R ltRtV tR# )7AnnotatedTests.test_special_form_containment.<locals>.Cir%  c                z   < V ^8  d   Qh/ S[ S[S[,          R3,          ;R&   S[ S[S[,          R3,          ;R&   # )r  r  r  r  r  )rC   r%   r   r&   )r  rt   s   "rh   r  DAnnotatedTests.test_special_form_containment.<locals>.C.__annotate__r%  s7     ~ =>B U3Z015 rk   rl   N)	rm   rn   ro   rp   r  r  r  rq   rr   rs   s   @rh   r  r  r%  s     ABH45E  rk   r  r  r  N)r   r,   r  r%   r   r&   r  s   & rh   test_special_form_containment,AnnotatedTests.test_special_form_containmentq%  sR    	6 	6 	795jA8C=Q795g>c
Krk   c                    ! R  R4      p ! R R4      p ! R R4      p ! R R4      p ! R R	4      p ! R
 R4      pV P                  \        V\        4       4      R,          \        \        \
        ,          ,          4       V P                  \        V\        4       4      R,          \        \        \
        ,          ,          4       V P                  \        V\        4       4      R,          \        \        \
        ,          ,          4       V P                  \        V\        4       4      R,          \        \        \
        ,          ,          4       V P                  \        V\        4       4      R,          \        \        \
        ,          ,          4       V P                  \        V\        4       4      R,          \        \        \
        ,          ,          4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )5AnnotatedTests.test_special_forms_nesting.<locals>.CFi|%  c                F   < V ^8  d   Qh/ S[ S[S[,          ,          ;R&   # rB  )r%   r&   r   )r  rt   s   "rh   r  BAnnotatedTests.test_special_forms_nesting.<locals>.CF.__annotate__|%  s     c
## rk   rl   Nrm  rs   s   @rh   rW  r	  |%  rn  rk   rW  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )5AnnotatedTests.test_special_forms_nesting.<locals>.FCi%  c                F   < V ^8  d   Qh/ S[ S[S[,          ,          ;R&   # rB  )r&   r%   r   )r  rt   s   "rh   r  BAnnotatedTests.test_special_forms_nesting.<locals>.FC.__annotate__%  s     Xc]## rk   rl   Nrm  rs   s   @rh   FCr  %  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )6AnnotatedTests.test_special_forms_nesting.<locals>.ACFi%  c                Z   < V ^8  d   Qh/ S[ S[S[S[,          ,          R3,          ;R&   # r  r  r   )rC   r%   r&   r   )r  rt   s   "rh   r  CAnnotatedTests.test_special_forms_nesting.<locals>.ACF.__annotate__%  s#     %*-~=>> rk   rl   Nrm  rs   s   @rh   ACFr  %  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )6AnnotatedTests.test_special_forms_nesting.<locals>.CAFi%  c                Z   < V ^8  d   Qh/ S[ S[S[S[,          R3,          ,          ;R&   # r  )r%   rC   r&   r   )r  rt   s   "rh   r  CAnnotatedTests.test_special_forms_nesting.<locals>.CAF.__annotate__%  s#     	%*n"<=>> rk   rl   Nrm  rs   s   @rh   CAFr  %  rn  rk   r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )6AnnotatedTests.test_special_forms_nesting.<locals>.AFCi%  c                Z   < V ^8  d   Qh/ S[ S[S[S[,          ,          R3,          ;R&   # r  )rC   r&   r%   r   )r  rt   s   "rh   r  CAnnotatedTests.test_special_forms_nesting.<locals>.AFC.__annotate__%  s#     x}-~=>> rk   rl   Nrm  rs   s   @rh   AFCr  %  rn  rk   r   c                   ,   a  ] tR tRt o V 3R ltRtV tR# )6AnnotatedTests.test_special_forms_nesting.<locals>.FACi%  c                Z   < V ^8  d   Qh/ S[ S[S[S[,          R3,          ,          ;R&   # r  )r&   rC   r%   r   )r  rt   s   "rh   r  CAnnotatedTests.test_special_forms_nesting.<locals>.FAC.__annotate__%  s#     Yx}n<=>> rk   rl   Nrm  rs   s   @rh   FACr"  %  rn  rk   r%  r   N)r   r,   r  r%   r&   r   )rf   rW  r  r  r  r   r%  s   &      rh   test_special_forms_nesting)AnnotatedTests.test_special_forms_nestingy%  s*   	$ 	$	$ 	$	? 	?	? 	?	? 	?	? 	? 	GI6s;XeCj=QRGI6s;U8C==QRWY7<huSz>RSWY7<huSz>RSWY7<eHSM>RSWY7<eHSM>RSrk   c                    V P                  \        R 4      ;_uu_ 4         ! R R\        4      pRRR4       R#   + '       g   i     R# ; i)zCannot subclass .*Annotatedc                       ] tR tRtRtR# ).AnnotatedTests.test_cannot_subclass.<locals>.Ci%  rl   Nr   rl   rk   rh   r  r*  %  r  rk   r  Nr  r  s   & rh   r  #AnnotatedTests.test_cannot_subclass%  s2    ##I/LMMI  NMMMs	   9A
	c                    V P                  \        4      ;_uu_ 4        \        ^\        \        R3,          4       RRR4       R#   + '       g   i     R# ; i)r  positiveN)r   r   r   rC   r   r   s   &rh   test_cannot_check_instance)AnnotatedTests.test_cannot_check_instance%  s5    y))q)CO45 *)))r  c                    V P                  \        4      ;_uu_ 4        \        \        \        \        R 3,          4       RRR4       R#   + '       g   i     R# ; i)r-  N)r   r   r   r   rC   r   s   &rh   test_cannot_check_subclass)AnnotatedTests.test_cannot_check_subclass%  s5    y))sIc:o67 *)))s   "A

A	c                    V P                  \        R 4      ;_uu_ 4        \        \        ,           RRR4       R#   + '       g   i     R# ; i)zat least two argumentsN)r
  r   rC   r   r   s   &rh   test_too_few_type_args%AnnotatedTests.test_too_few_type_args%  s-    ##I/GHHcN IHHHr  c           	     D   \         P                  \         P                  \        \        3,          \         P
                  \        ,          \        \        R 3,          \         P                  \        .\        3,          .pV F  p\        VR3,          p\        \        P                  ^,           4       Fc  pV P                  WBR7      ;_uu_ 4        \        P                  ! W44      p\        P                  ! V4      pV P!                  W64       RRR4       Ke  	  K  	   ! R R\"        \$        ,          4      s\        \&        \        ,          R3,          p^*Vn        RVn        \        \        P                  ^,           4       F  p\        P                  ! Wx4      p	\        P                  ! V	4      pV P!                  VP(                  ^*4       V P!                  VP*                  R4       V P!                  VP,                  ^4       K  	  R#   + '       g   i     EKl  ; i).rM  )r
  r   Nc                       ] tR tRt^tRtR# )_Annotated_test_Gi%  rl   Nr  rl   rk   rh   r8  r8  %  ru  rk   r8  zA decorationr  )rc   r   r   r   r  r   r   r#   r  rC   r{   r|   r}   r~   r  r  r   r$   r   r8  rk  rc  r   )
rf   r  r  r   protr  restoredr  rz   r  s
   &         rh   r  AnnotatedTests.test_pickle%  sp   ::v||CH5??3'sCx??C5%<02 A!S&!Af559:\\4\88$ll13G%||G4H$$Q1 98 ; 	
 	 ',n<=622Q67EQ&AQAQUUB'QUUE*QSS!$ 8 988s   >H	Hc                   R pRp\         \        V3,          pV P                  V\        ,          \         \        V3,          4       V P                  V\         \        V3,          ,          \         \        W3,          4       \         \        \        ,          V3,          pV P                  V\        ,          \         \        \        ,          V3,          4       V P                  \        4      ;_uu_ 4        V\        \        3,           RRR4       V P                  W4\        ,          ,          \         \        \        ,          W3,          4       \         \        P                  \        \        3,          V3,          pV P                  V\        \        3,          \         \        P                  \        \        3,          V3,          4       V P                  \        4      ;_uu_ 4        V\        ,           RRR4       \         \        V3,          pV P                  \        4      ;_uu_ 4        VR,           RRR4       V\        ,          pV P                  \        4      ;_uu_ 4        VR,           RRR4       R#   + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     Lu; i  + '       g   i     R# ; i)r  zanother decorationN)rC   r   r   r   r   r   r   rc   r    r   r   r  )rf   rP  dec2r
  r  r  Itr  s   &       rh   
test_substAnnotatedTests.test_subst%  s   #ag339!569S#X./3>1JKd1gsl#349c>!:;y))c3hK * 	S6Id3i.B$CDfkk"b&)3./38iCH0Es0J&KLy))cF * sCx y))tH * sVy))tH *) *)) *) *) *))s0   5J *J0
J',
J: J	J$	'J7	:K	c                   R p\        R4      p\        R4      p\        R4      p\        R4      p\        \        . VO5,          V3,          pV P	                  V\
        ,          \        \        \
        ,          V3,          4       V P	                  V\        \
        3,          \        \        \        \
        3,          V3,          4       V P                  \        4      ;_uu_ 4        \        . VOVN5,           RRR4       \        \        \        V,          ,          V3,          pV P	                  V\
        ,          \        \        \
        ,          V3,          4       V P	                  V\        \
        3,          \        \        \        \
        3,          V3,          4       V P                  \        4      ;_uu_ 4        \        \        V,          V3,           RRR4       \        \        V.VO5,          V3,          pV P	                  V\
        ,          \        \        \
        ,          V3,          4       V P	                  V\
        \        3,          \        \        \
        \        3,          V3,          4       V P	                  V\
        \        \        3,          \        \        \
        \        \        3,          V3,          4       V P                  \        4      ;_uu_ 4        VR	,           RRR4       \        \        V\        V,          3,          V3,          p	V P	                  V	\
        ,          \        \        \
        ,          V3,          4       V P	                  V	\
        \        3,          \        \        \
        \        3,          V3,          4       V P	                  V	\
        \        \        3,          \        \        \
        \        \        3,          V3,          4       V P                  \        4      ;_uu_ 4        V	R	,           RRR4       \        \        . VOVN5,          V3,          p
V P	                  V
\
        ,          \        \        \
        ,          V3,          4       V P	                  V
\
        \        3,          \        \        \
        \        3,          V3,          4       V P	                  V
\
        \        \        3,          \        \        \
        \        \        3,          V3,          4       V P                  \        4      ;_uu_ 4        V
R	,           RRR4       \        \        \        V,          V3,          V3,          pV P	                  V\
        ,          \        \        \
        ,          V3,          4       V P	                  V\
        \        3,          \        \        \
        \        3,          V3,          4       V P	                  V\
        \        \        3,          \        \        \
        \        \        3,          V3,          4       V P                  \        4      ;_uu_ 4        VR	,           RRR4       \        \        V.VOVN5,          V3,          pV P	                  V\
        \        3,          \        \        \
        \        3,          V3,          4       V P	                  V\
        \        \        3,          \        \        \
        \        \        3,          V3,          4       V P	                  V\
        \        \        \        3,          \        \        \
        \        \        \        3,          V3,          4       V P                  \        4      ;_uu_ 4        V\
        ,           RRR4       \        \        V\        V,          V3,          V3,          pV P	                  V\
        \        3,          \        \        \
        \        3,          V3,          4       V P	                  V\
        \        \        3,          \        \        \
        \        \        3,          V3,          4       V P	                  V\
        \        \        \        3,          \        \        \
        \        \        \        3,          V3,          4       V P                  \        4      ;_uu_ 4        V\
        ,           RRR4       \        R4      p\        R4      p\        R4      pW.VOVN5,          pW\        V,          V3,          pV\        \        V.VOVN5,          V3,          3V\        \        V\        V,          V3,          V3,          3V\
        \        3,          \        \        \
        \        3,          V3,          3V\
        \        3,          \        \        \
        \        3,          V3,          3V\
        \        \        3,          \        \        \
        \        \        3,          V3,          3V\
        \        \        3,          \        \        \
        \        \        3,          V3,          3V\
        \        \        \        3,          \        \        \
        \        \        \        3,          V3,          3V\
        \        \        \        3,          \        \        \
        \        \        \        3,          V3,          33 F  w  ppV P	                  VV4       K  	  V P                  \        4      ;_uu_ 4        V\
        ,           RRR4       V P                  \        4      ;_uu_ 4        V\
        ,           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Lf; i  + '       g   i     EL2; i  + '       g   i     L; i  + '       g   i     R# ; i)
r  rp  r   r  r  Nr  r(  r  rl   )r   r   rC   rz  r   r   r  r   r   r   r   r  r  )rf   rP  rp  r   r  r  r  r	  r  r  r  r  r  r  r  r(  r  r  r  r   r   s   &                    rh   test_typevar_subst!AnnotatedTests.test_typevar_subst%  s3   $CLT]T]eCRCj#o&35:s?!;<38ic3h0D&EFy))hrh3h * eF2J',-35:s?!;<38ic3h0D&EFy))fRj#o& * eAFFmS()35:s?!;<38ic3h0D&EFc3oeCeO,c12	
 y))bE * eAvbzM*C/035:s?!;<38ic3h0D&EFc3oeCeO,c12	
 y))bE * eFRFFmS()35:s?!;<38ic3h0D&EFc3oeCeO,c12	
 y))bE * eF2JM*C/035:s?!;<38ic3h0D&EFc3oeCeO,c12	
 y))bE * eBKKRK(#-.38ic3h0D&EFc3oeCeO,c12	
 	c3e#$eCdE12C78	
 y))cF * eBr
B./4538ic3h0D&EFc3oeCeO,c12	
 	c3e#$eCdE12C78	
 y))cF *
 5!T]T] l3llO&+r!" 5c2+>+C!DE5VC["1D+Es+J!KLsCx[5c?C+?!@AsCx[5c?C+?!@AsC5c5+A3+F!GHsC5c5+A3+F!GHsCu$%!*5c41F+G+L!MOsCu$%!*5c41F+G+L!MO
DAq Q"
 y))cF *y))cF *)K *)) *)) *)) *)) *)) *)) *)) *))6 *))))sx   'm=n-
n%
n9+
o
o!
o5p	2p%p0=n	n"	%n6	9o
	o	!o2	5p		p	p-	0q	c                    \         \        \        ^3,          ,          pV P                  V\        ,          \         \        \        ^3,          ,          4       R# )r  N)r   rC   r   r   r   r  s   & rh   test_annotated_in_other_types,AnnotatedTests.test_annotated_in_other_typesS&  s6    1a4!3iQ&7!89rk   c                     ! R  R\         \        R3,          4      pV P                  VP                  V\        \        3R4       R# )c                       ] tR tRtRtR# ),AnnotatedTests.test_annotated_mro.<locals>.XiX&  rl   Nr   rl   rk   rh   r  rI  X&  r  rk   r  z Annotated should be transparent.Nr  )rC   r   r   r,  r  r  s   & rh   test_annotated_mro!AnnotatedTests.test_annotated_mroW&  s3    -	#w,'-QV$4;	=rk   c                T    ! R  R\         4      p ! R R\         4      p\        \         V! R4      3,          p\        \         V! R4      3,          pVP                  ^ ,          pVP                  ^ ,          pV P                  \	        V4      V4       V P                  WQ! R4      4       V P                  \	        V4      V4       V P                  Wb! R4      4       V P                  \	        V4      \	        V4      4       \        \         V! R4      3,          p\        \         V! R4      3,          pVP                  ^ ,          p	VP                  ^ ,          p
V P                  \	        V	4      V4       V P                  W! R4      4       V P                  \	        V
4      V4       V P                  W! R4      4       V P                  \	        V	4      \	        V
4      4       \        \        ^3,          p\        \        R3,          p\        \        R3,          pV P                  \	        VP                  ^ ,          4      \        4       V P                  \	        VP                  ^ ,          4      \        4       V P                  \	        VP                  ^ ,          4      \        4       R# )	c                       ] tR tRtRtR# ):AnnotatedTests.test_annotated_cached_with_types.<locals>.Ai]&  rl   Nr   rl   rk   rh   r  rN  ]&      crk   r  c                       ] tR tRtRtR# ):AnnotatedTests.test_annotated_cached_with_types.<locals>.Bi^&  rl   Nr   rl   rk   rh   r	  rQ  ^&  rO  rk   r	  r  r  g      ?TN)
r  rC   r  r   r   r   rB
  r   r  r  )rf   r  r	  field_a1field_a2a1_metadataa2_metadatafield_b1field_b2b1_metadatab2_metadatafield_c1field_c2field_c3s   &             rh    test_annotated_cached_with_types/AnnotatedTests.test_annotated_cached_with_types\&  s   S!C&[)S!C&[)++A.++A.d;'+af-d;'+af-k*D,=>S!C&[)S!C&[)++A.++A.d;'+af-d;'+af-k*D,=>S!V$S#X&S$Y'd80034c:d80034e<d80034d;rk   rl   N)!rm   rn   ro   rp   r  r   rV  r6  r  r  r  r  r  r  r  r  r  r  r  r  r&  r  r.  r1  r4  r  r?  rB  rE  rJ  r]  rq   rr   rs   s   @rh   r  r  $  s     
8,99v	5	(1&@
	&

#!LT8
68%<:pd:=
 <  <rk   r  c                   V   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V tR# )TypeAliasTestsi&  c                    \         pR # rb   r   rf   rN  s   & rh   -test_canonical_usage_with_variable_annotation<TypeAliasTests.test_canonical_usage_with_variable_annotation&  s    #rk   c                    \         pR # rb   rb  rc  s   & rh   &test_canonical_usage_with_type_comment5TypeAliasTests.test_canonical_usage_with_type_comment&  s    rk   c                    V P                  \        4      ;_uu_ 4        \        4        R R R 4       R #   + '       g   i     R # ; irb   )r   r   rG   r   s   &rh   r   &TypeAliasTests.test_cannot_instantiate&  '    y))K *)))rc  c                    V P                  \        4      ;_uu_ 4        \        ^*\        4       RRR4       R#   + '       g   i     R# ; ir   )r   r   r   rG   r   s   &rh   r  !TypeAliasTests.test_no_isinstance&  s,    y))r9% *)))r   c                \     ! R  R4      pV P                  \        V4      R\        /4       R# )c                   ,   a  ] tR tRt o V 3R ltRtV tR# )/TypeAliasTests.test_stringized_usage.<locals>.Ai&  c                $   < V ^8  d   Qh/ R;R&   # )r  rG   rM  rl   )r  rt   s   "rh   r  <TypeAliasTests.test_stringized_usage.<locals>.A.__annotate__&  s     N rk   rl   Nrm  rs   s   @rh   r  rp  &  rn  rk   r  rM  N)r   r,   rG   r  s   & rh   test_stringized_usage$TypeAliasTests.test_stringized_usage&  s&    	 	*S),<=rk   c                <   V P                  \        4      ;_uu_ 4        \        \        \        4       R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        4       R R R 4       R #   + '       g   i     LL; i  + '       g   i     R # ; irb   )r   r   r   r   rG   r   s   &rh   test_no_issubclass!TypeAliasTests.test_no_issubclass&  s\    y))x+ * y))y(+ *) *) *))s   A7B
7B	
B	c           	     <   V P                  \        R 4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        4      ;_uu_ 4         ! R R\	        \        4      4      pRRR4       R#   + '       g   i     LP; i  + '       g   i     R# ; i)z!Cannot subclass typing\.TypeAliasc                       ] tR tRtRtR# ).TypeAliasTests.test_cannot_subclass.<locals>.Ci&  rl   Nr   rl   rk   rh   r  rz  &  r  rk   r  Nc                       ] tR tRtRtR# ).TypeAliasTests.test_cannot_subclass.<locals>.Di&  rl   Nr   rl   rk   rh   r  r|  &  r  rk   r  )r
  r   rG   r   r   r  s   &  rh   r  #TypeAliasTests.test_cannot_subclass&  sm    ##I46 6I 6
 y))DO  *)6 6
 *))s   A7B
7B	
B	c                D    V P                  \        \        4      R 4       R# )ztyping.TypeAliasN)r   r   rG   r   s   &rh   r   TypeAliasTests.test_repr&      i*<=rk   c                    V P                  \        4      ;_uu_ 4        \        \        ,           R R R 4       R #   + '       g   i     R # ; irb   )r   r   rG   r   r   s   &rh   r  $TypeAliasTests.test_cannot_subscript&  s)    y))cN *)))r  rl   N)rm   rn   ro   rp   rd  rg  r   r  rs  rv  r  r   r  rq   rr   rs   s   @rh   r`  r`  &  s7     $&>
,> rk   r`  c                   z   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V tR# )ParamSpecTestsi&  c                    \        R 4      pV P                  W4       V P                  V\         4       V P                  VP                  R 4       V P                  VP                  \        4       R# )rb  N)rH   r   r   rm   rn   r  s   & rh   r  ParamSpecTests.test_basic_plain&  sQ    cNa+S)x0rk   c                    / p\        R W4       VR,          pV P                  V\        4       V P                  VP                  R4       V P                  VP                  R4       R# )z0from typing import ParamSpec; P = ParamSpec("P")rb  N)r  r   rH   r   rm   r   rn   )rf   r  rb  s   &  rh   r  #ParamSpecTests.test_basic_with_exec&  sQ    ?HsGa+S)allD)rk   c                   \        R 4      p\        R4      p\        V\        3,          pV P	                  VP
                  V\        34       V P	                  VP                  V34       \        W3,          pV P	                  VP
                  W34       V P	                  VP                  W34       \        P                  P                  V\        3,          pV P	                  VP
                  V\        34       V P	                  VP                  V34       \        P                  P                  W3,          pV P	                  VP
                  W34       V P	                  VP                  W34       R# rb  r   N)	rH   r   r#   r   r   r  r  r  r  rf   rb  r   r  r  r  r  s   &      rh   test_valid_usesParamSpecTests.test_valid_uses&  s   cNCLafq#h/**QD1ad^qf-**QF3__%%af-q#h/**QD1__%%ad+qf-**QF3rk   c                ^   \        R 4      p\        R4      pV P                  R\        V4      4       V P                  R\        V4      4       V P                  VP                  \
        4       V P                  VP                  \        4       V P                  VP                  P                  V4       V P                  VP                  P                  V4       V P                  VP                  VP                  4       V P                  VP                  VP                  4       V P                  VP                  VP                  4       V P                  VP                  VP                  4       V P                  VP                  VP                  4       V P                  VP                  VP                  4       V P                  VP                  VP                  4       V P                  \        VP                  4      R4       V P                  \        VP                  4      R4       R# )rb  P_2r   r   P.argsP.kwargsN)rH   rS  rR  r   r   rJ   r   rK   r   r  r   r   r   )rf   rb  r  s   &  rh   test_args_kwargsParamSpecTests.test_args_kwargs&  si   cNfc!f%hA'affm4ahh8aff''+ahh))1-(188,AFFCHH-AHHcjj1AFFAHH-AHHaff-AFFCJJ/affx0ahh4rk   c                f   \        R 4      p ! R R\        V,          4      pV P                  \        V\	        4       \        4       4      R\        V\        3,          /4       V P                  \        VP                  \	        4       \        4       4      RVP                  RVP                  /4       R# )rb  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# ))ParamSpecTests.test_stringized.<locals>.Ci&  c                "   < V ^8  d   QhRRRR/# )r  r   r  r   r  rl   )r  rt   s   "rh   r  6ParamSpecTests.test_stringized.<locals>.C.__annotate__&  s       Z rk   c                    R # rb   rl   r   s   &*,rh   rk  -ParamSpecTests.test_stringized.<locals>.C.foo&  r  rk   c                :   < V ^8  d   Qh/ S[ RS[3,          ;R&   # )r  rb  r  r
  )r  rt   s   "rh   r  r  &  s     38$$ rk   rl   Nr  rs   s   @rh   r  r  &  s        rk   r  r  r   r   N)rH   r$   r   r1  r  r  r#   r   rk  r   r   )rf   rb  r  s   &  rh   test_stringizedParamSpecTests.test_stringized&  s}    cN	
 	
 	Q	684vx3?O6PQwy&(+faffh-Q	
rk   c                	  aa \        R 4      o\        R4      o\        R4      p ! VV3R lR\        SS3,          4      pV\        V3,          pV P	                  VP
                  \        V34       V P	                  VP                  V34       V P                  \        R4      ;_uu_ 4        V\        ,           RRR4       V P                  \        R4      ;_uu_ 4        V\        V\        3,           RRR4       V\        \        \        V3,          3,          pV P	                  VP
                  \        \        \        V3,          34       V P	                  VP                  V34       V\        \        \        .3,          pV P	                  VP
                  \        \        \        334       V P	                  VP                  R4       V\        R3,          pV P	                  VP
                  \        \        34       V P	                  VP                  R4        ! V3R	 lR
\        S,          4      pV\        \        \        .,          pV P	                  VP
                  \        \        \        334       V P	                  VP                  R4       V\        \        \        3,          p	V P	                  V	P
                  \        \        \        334       V P	                  V	P                  R4       V P	                  VP
                  V	P
                  4       V P	                  VP                  V	P                  4       V P	                  VP                  V	P                  4       V P	                  W4       V\        ,          p
V P	                  V
P
                  \        334       V P	                  V
P                  R4       V P                  \        R4      ;_uu_ 4        V\        \        .\        3,           RRR4       V P                  \        R4      ;_uu_ 4        Wq\        3,           RRR4       R#   + '       g   i     EL; i  + '       g   i     ELe; i  + '       g   i     Lo; i  + '       g   i     R# ; i)r   rb  r  c                   2   <a  ] tR tRt o VVV 3R ltRtV tR# ),ParamSpecTests.test_user_generics.<locals>.Xi&  c                H   < V ^8  d   Qh/ S[ SZS[3,          ;R&   SZ;R&   # )r  rg   r   r
  )r  rb  r   rt   s   "rh   r  9ParamSpecTests.test_user_generics.<locals>.X.__annotate__&  s#     3 D rk   rl   Nrm  )rt   rb  r   s   @rh   r  r  &  rh  rk   r  r  Nr  .c                   0   <a  ] tR tRt o VV 3R ltRtV tR# ),ParamSpecTests.test_user_generics.<locals>.Zi	'  c                <   < V ^8  d   Qh/ S[ SZS[3,          ;R&   # )r  rg   r
  )r  rb  rt   s   "rh   r  9ParamSpecTests.test_user_generics.<locals>.Z.__annotate__	'  s     3 rk   rl   Nrm  )rt   rb  s   @rh   r  r  	'  r*	  rk   r  rl   )r   rH   r$   r   r   r  r  r
  r   r  rI   r  r  r  )rf   r  r  r  r  G3G4r  G5G6G7rb  r   s   &          @@rh   test_user_generics!ParamSpecTests.test_user_generics&  sA   CLcN	 	1 	 sCx[sCj1**SF3##I/BCCcF D##I/CDDc3m E sKS))*sKS,A&BC**SF3sS$K sS$K&89**B/sCx[sHo6**B/	 
 	  S$ S$'7&9:**B/sC~S$'7&9:**B/ 	bkk26**B,=,=> sVvi0**B/##I/CDDsCj$ E##I/CDD4iL EDQ DCCDDDH EDDDDs0   ,P= Q$Q%$Q8=Q	Q"	%Q5	8R		c                  aa \        R 4      o\        R4      o ! VV3R lR\        SS3,          4      pV\        \        .\        .3,          pV\        .\        \        .3,          pV P                  W#4       V P                  VP                  \        \        3\        334       V P                  VP                  \        3\        \        334       R# )rb  r  c                   2   <a  ] tR tRt o VVV 3R ltRtV tR# )CParamSpecTests.test_multiple_paramspecs_in_user_generics.<locals>.Xi''  c                ^   < V ^8  d   Qh/ S[ SZS[3,          ;R&   S[ SZS[3,          ;R&   # r  rg   r:  )r#   r   r  )r  rb  r  rt   s   "rh   r  PParamSpecTests.test_multiple_paramspecs_in_user_generics.<locals>.X.__annotate__''  s-     3 C   rk   rl   Nrm  )rt   rb  r  s   @rh   r  r  ''  rh  rk   r  N)rH   r$   r   r  r  r   r   r  )rf   r  r  r  rb  r  s   &   @@rh   )test_multiple_paramspecs_in_user_generics8ParamSpecTests.test_multiple_paramspecs_in_user_generics#'  s    cNt_	! 	!2 	! SzE7"#usEl"#B#SzE8&<=vU|&<=rk   c                  aa \        R 4      o\        R4      o ! VV3R lR\        . SOSN5,          4      pV\        \        .3,          pV P                  VP                  \        \        334       V\        \        \        .3,          pV P                  VP                  \        \        \        334       V\        .,          pV P                  VP                  \        334       V. ,          pV P                  VP                  R4       V P                  \        4      ;_uu_ 4        VR,           RRR4        ! VV3R lR\        S.SO5,          4      pV\        .\        3,          pV P                  VP                  \        3\        34       V\        .\        \        3,          pV P                  VP                  \        3\        \        34       V\        .,          pV P                  VP                  \        334       V. ,          pV P                  VP                  R4       V P                  \        4      ;_uu_ 4        VR,           RRR4       R#   + '       g   i     EL5; i  + '       g   i     R# ; i)	rp  rb  c                   2   <a  ] tR tRt o VVV 3R ltRtV tR# )KParamSpecTests.test_typevartuple_and_paramspecs_in_user_generics.<locals>.Xi5'  c                ^   < V ^8  d   Qh/ S[ SZS[3,          ;R&   S[. SZO5,          ;R&   # r  r#   r   r   )r  rb  rp  rt   s   "rh   r  XParamSpecTests.test_typevartuple_and_paramspecs_in_user_generics.<locals>.X.__annotate__5'  +     3 SbSzM rk   rl   Nrm  rt   rb  rp  s   @rh   r  r  5'  rh  rk   r  Nc                   2   <a  ] tR tRt o VVV 3R ltRtV tR# )KParamSpecTests.test_typevartuple_and_paramspecs_in_user_generics.<locals>.YiD'  c                ^   < V ^8  d   Qh/ S[ SZS[3,          ;R&   S[. SZO5,          ;R&   # r  r  )r  rb  rp  rt   s   "rh   r  XParamSpecTests.test_typevartuple_and_paramspecs_in_user_generics.<locals>.Y.__annotate__D'  r  rk   rl   Nrm  r  s   @rh   r  r  D'  rh  rk   r  rl   )rl   )
r   rH   r$   r   r  r   r  r  r   r   )	rf   r  r  r  r  r  r  rb  rp  s	   &      @@rh   1test_typevartuple_and_paramspecs_in_user_generics@ParamSpecTests.test_typevartuple_and_paramspecs_in_user_generics1'  s   $cN	 	Q 	 sUG|_sUHo6sC% !sC%&:;wZxk2rUe,y))bE *	 	B 	 w|_xo6wS !xc&:;wZxk2rUe,y))bE *) *)) *))s   *
I 
I4 I1	4J	c                   \        R 4      p\        R4      p\        R4      p\        \        P
                  P                  3 F  pV P                  VR7      ;_uu_ 4        WA\        . VO5,          3,          pV\        \        .\        \        3,          pV P                  VP                  \        \        \        \        \        3,          34       RRR4       K  	   ! R R\        W!3,          4      pV\        . VO5,          V3,          pV\        \        \        \        .3,          pV P                  VP                  \        \        \        3,          \        \        334        ! R R\        W3,          4      pW\        . VO5,          3,          pV\        \        .\        \        3,          pV P                  VP                  \        \        3\        \        \        3,          34       R#   + '       g   i     EK  ; i)	rb  r   rp  )r  Nc                       ] tR tRtRtR# )MParamSpecTests.test_typevartuple_and_paramspecs_in_generic_aliases.<locals>.Xi^'  rl   Nr   rl   rk   rh   r  r  ^'  rw  rk   r  c                       ] tR tRtRtR# )MParamSpecTests.test_typevartuple_and_paramspecs_in_generic_aliases.<locals>.Yie'  rl   Nr   rl   rk   rh   r  r  e'  rw  rk   r  )rH   r   r   r#   r  r  r~   r   r   r  r  r  r   r  r$   )	rf   rb  r   rp  r  r  r	  r  r  s	   &        rh   3test_typevartuple_and_paramspecs_in_generic_aliasesBParamSpecTests.test_typevartuple_and_paramspecs_in_generic_aliasesS'  sq   cNCL$;??333Aa((ssm$sCj%./  c3eUl8K-LM )( 4	 	 eCRCj!meUS#J&'eE5L&9C;%GH	 	 ssmsCj%&'sCk53F%GH# )((s   A3G55Hc                   \        R 4      pVP                  pV P                  V! \        \        34      \        \        34       V P                  V! \        \        .4      \        \        34       V P                  V! R.4      \        R4      34       V P                  V! R4      R4       V P                  V! V4      V4       V P                  V! \        \        V3,          4      \        \        V3,          4       R# )rb  N.)rH   r-  r   r   r  r   r   rI   )rf   rb  r/  s   &  rh   r0  $ParamSpecTests.test_var_substitutionl'  s    cN""Sz*S#J7Sz*S#J7vd6eCj#&eAh"{3623[a5HIrk   c           
     4   \        R 4      p\        R4      p^*\        RV\        \        ,          \        \        \        3,          3pV F  pV P                  VR7      ;_uu_ 4        V P                  \        4      ;_uu_ 4        VP                  V4       RRR4       V P                  \        4      ;_uu_ 4        \        P                  W!3,          V\        3,           RRR4       V P                  \        4      ;_uu_ 4        \        P                  P                  W!3,          V\        3,           RRR4       RRR4       K  	  R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     LD; i  + '       g   i     EKN  ; i)r   rb  Nr&  )r   rH   r   r  r   r~   r   r   r-  rc   r#   r  r  )rf   r   rb  r3  r"  s   &    rh   r4  (ParamSpecTests.test_bad_var_substitutionv'  s    CLcNT1c#guS#X?C#&&&&y11&&s+ 2&&y11OOAD)#s(3 2&&y11OO,,QT238< 2 '& 111111 '&&sT   &FE%F;&E!%F0E26FEFE/*F2F=FFc                   \        R 4      p\        R4      p\        R4      p\        R4      p\        R4      p ! R R\        V,          4      pWa,          pV P	                  VP
                  V34       V P	                  VP                  V334       V P	                  V\        ,          V\        ,          4       Wa.,          pV P	                  VP
                  V34       V P	                  VP                  V334       V P	                  V\        ,          V\        ,          4       V\        V.,          p	V P	                  V	P
                  V34       V P	                  V	P                  \        V334       V P	                  V	\        ,          V\        \        .,          4       Wa\        V.,          p
V P	                  V
P
                  W34       V P	                  V
P                  V\        V334       V P	                  V
\        \        3,          V\        \        \        .,          4       V. VO\        N,          pV P	                  VP
                  V34       V P	                  VP                  . VO\        N534       V P	                  V\        \        3,          V\        \        \        .,          4       V\        .VO,          pV P	                  VP
                  V34       V P	                  VP                  \        .VO534       V P	                  V\        \        3,          V\        \        \        .,          4       Wa.VO,          pV P	                  VP
                  W34       V P	                  VP                  V.VO534       V P	                  V\        \        \        3,          V\        \        \        .,          4       WaV.,          pV P	                  VP
                  V34       V P	                  VP                  W334       V P	                  V\        ,          V\        \        .,          4       Wa\        V,          .,          pV P	                  VP
                  V34       V P	                  VP                  V\        V,          334       V P	                  V\        ,          V\        \        \        ,          .,          4       V\        . VO5,          .VO,          pV P	                  VP
                  V34       V P	                  VP                  \        . VO5,          .VO534       V P	                  V\        \        3,          V\        \        \        3,          \        \        3,          4       Wd,          pV P	                  VP
                  V34       V P	                  VP                  V34       V P	                  V\        \        .,          V\        \        .,          4        ! R R\        W43,          4      pVW43,          pV P	                  VP
                  W434       V P	                  VP                  W434       V P	                  V\        \        .\        .3,          V\        \        .\        .3,          4       V P	                  V. . 3,          V. . 3,          4       V\        \        .V3,          pV P	                  VP
                  V34       V P	                  VP                  \        \        3V34       V P	                  V\        \        .,          V\        \        .\        \        .3,          4       V P	                  V. ,          V\        \        .. 3,          4       VV\        \        .3,          pV P	                  VP
                  V34       V P	                  VP                  V\        \        334       V P	                  V\        \        .,          V\        \        .\        \        .3,          4       V P	                  V. ,          V. \        \        .3,          4       VV\        .\        V.3,          pV P	                  VP
                  W34       V P	                  VP                  V\        3\        V334       V P	                  V\        \        3,          V\        \        .\        \        .3,          4       V. VO\        N\        V.3,          pV P	                  VP
                  WR34       V P	                  VP                  . VO\        N5\        V334       V P	                  V\        \        \        3,          V\        \        \        .\        \        .3,          4       VV\        .\        .VO3,          pV P	                  VP
                  W34       V P	                  VP                  V\        3\        .VO534       V P	                  V\        \        \        3,          V\        \        .\        \        \        .3,          4        ! R	 R
\        W13,          4      pVW13,          pV P	                  VP
                  W134       V P	                  VP                  W134       V P	                  V\        \        .\        3,          V\        \        .\        3,          4       V\        V.V3,          pV P	                  VP
                  V34       V P	                  VP                  \        V3V34       V P	                  V\        ,          V\        \        .\        3,          4       V\        .VOV3,          pV P	                  VP
                  WQ34       V P	                  VP                  \        .VO5V34       V P	                  V\        \        \        3,          V\        \        \        .\        3,          4       R# )r   r  rb  r  rp  c                       ] tR tRtRtR# )DParamSpecTests.test_type_var_subst_for_other_type_vars.<locals>.Basei'  rl   Nr   rl   rk   rh   r  r  '  rw  rk   r  c                       ] tR tRtRtR# )GParamSpecTests.test_type_var_subst_for_other_type_vars.<locals>.DoublePi'  rl   Nr   rl   rk   rh   DoublePr  '  rw  rk   r  c                       ] tR tRtRtR# )EParamSpecTests.test_type_var_subst_for_other_type_vars.<locals>.PandTi'  rl   Nr   rl   rk   rh   PandTr  '  rw  rk   r  N)r   rH   r   r$   r   r  r  r   r  r  r.  r   r  r  )rf   r   r  rb  r  rp  r  A1r  A3A4A5A5_2A6A7A8A9A10r  B1B2B3B4B5B6r  r  r  r  s   &                            rh   'test_type_var_subst_for_other_type_vars6ParamSpecTests.test_type_var_subst_for_other_type_vars'  s'	   CLT]cNt_$	71: 	 W**QD1tg.C$s),#Y**QD1tg.C$s),3(^**QD1Qxk2C$Sz"23c2,**QG43|o6CIc3-=(>?*B****RE2zzSzm4CIc4-=(>?SJ2J,,re4#6c4i$S$/?*@A(r(^**QG4xBxk2CdN+T3T2B-CDa&\**QD1vi0C$Sz"23d1g,**QD147|o6C$T#Y'7"895":##$**RE2crc
'8R'8&:;CHtE#s(OS#,E'FGh++bU3u-c3Z$Sz*:;	gaen 	 QU^**QG4qg.S#J./#tf9L1MNBFWRV_5c3Z^$**RE2Sz2&67T4L)7C#;t3L+MNB#b!9:Qt_%**QD1q4,&78S#J#tTl1J)KLBdD\)9!:;aXbz)***QG43x$&<=CJ#sdE]1J)KLZrZ3Z$+,**RH5zzSzD":&>?C-. #uc!2T5M!AB	D aX{r{*+**QG43x$&=>C-. #sdE5-A!AB	D	GADM 	 14[**QF3qf-S#J,-uc3Z5E/FGC8Q;**QD1Qxm4C%c
C"89C:":q=!**RG4zbz1o6Cu,-uc35Eu5L/MNrk   c                   \        R 4      p\        R4      p\        W!3,          p\        V,          p\        V,          p\        V,          \
        ,          pV P                  VP                  W!34       V P                  VP                  W!34       V P                  VP                  W!34       \        \
        \        .\        3,          pV P                  V\
        \        .\        3,          \        V,          4       V P                  V\
        \        .\        3,          \        V,          4       V P                  V\
        \        .\        3,          \        V,          \
        ,          4       R# )r   rb  N)
r   rH   r#   r   r.  r   r   r  r  r  )rf   r   rb  r  r  r  r  r  s   &       rh   !test_paramspec_in_nested_generics0ParamSpecTests.test_paramspec_in_nested_generics'  s    CLcNad^"X"X"X^**QF3**QF3**QF3c3Z&'S#J-.Q8S#J-.Q8S#J-.Q#>rk   c                   \        R 4      p\        R4      p\        V\        3,          pV P                  VP                  V34       V P                  W2,          P                  V34       V P                  V\
        ,          P                  R4       V P                  V\
        \        3,          P                  \        34       V P                  V\        \
        V3,          ,          P                  V34       V P                  V\        \        V3,          ,          P                  \        V34       V P                  VR,          P                  R4       \        \        \
        V3,          \        3,          pV P                  VP                  V34       V P                  WB,          P                  V34       V P                  V\
        ,          P                  R4       V P                  V\
        \        3,          P                  \        34       V P                  V\        \
        V3,          ,          P                  V34       V P                  V\        \        V3,          ,          P                  \        V34       R# )rb  r  .Nrl   )rH   r#   r   r   r  r  r   rI   )rf   rb  r  r  r  s   &    rh   test_paramspec_gets_copied)ParamSpecTests.test_paramspec_gets_copied(  s   cNt_af**QD1..6C//4CF22QD9KR01@@2%HK2./>>BHC//4k#q&)3./**QD1..6C//4CF22QD9KR01@@2%HK2./>>BHrk   c                $   V P                  \        \        R ,          4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        \        R,          4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        \        R,          4      ;_uu_ 4         ! R R	\
        4      pRRR4       \        R
4      pV P                  \        \        R ,          4      ;_uu_ 4         ! R RV4      pRRR4       V P                  \        \        R,          4      ;_uu_ 4         ! R RVP                  4      pRRR4       V P                  \        \        R,          4      ;_uu_ 4         ! R RVP                  4      pRRR4       R#   + '       g   i     ELk; i  + '       g   i     EL>; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)rH   c                       ] tR tRtRtR# ).ParamSpecTests.test_cannot_subclass.<locals>.Ci%(  rl   Nr   rl   rk   rh   r  r  %(  r  rk   r  NrJ   c                       ] tR tRtRtR# ).ParamSpecTests.test_cannot_subclass.<locals>.Di'(  rl   Nr   rl   rk   rh   r  r  '(  r   rk   r  rK   c                       ] tR tRtRtR# ).ParamSpecTests.test_cannot_subclass.<locals>.Ei)(  rl   Nr   rl   rk   rh   r  r  )(  r+  rk   r  rb  c                       ] tR tRtRtR# ).ParamSpecTests.test_cannot_subclass.<locals>.Fi-(  rl   Nr   rl   rk   rh   r  r  -(  r   rk   r  c                       ] tR tRtRtR# ).ParamSpecTests.test_cannot_subclass.<locals>.Gi0(  rl   Nr   rl   rk   rh   r  r  0(  r  rk   r  c                       ] tR tRtRtR# ).ParamSpecTests.test_cannot_subclass.<locals>.Hi3(  rl   Nr   rl   rk   rh   r  r  3(  r3  rk   r  )	r
  r   r  rH   rJ   rK   r  r   r   )rf   r  r  r  rb  r  r  r  s   &       rh   r  #ParamSpecTests.test_cannot_subclass#(  sU   ##I/LMM$I$ N##I/PQQ(M( R##IAR/RSS*O* TcN##I(;68 8A8 ##I(?:< <!AFF!< ##I(+<<> >#AHH#> > NMMQQQSSS8 8< <> > >sG   F+F0,G8G5G+<G>F-	0G	G	G(	+G;	>H	rl   N)rm   rn   ro   rp   r  r  r  r  r  r  r  r  r  r0  r4  r  r  r  r  rq   rr   rs   s   @rh   r  r  &  s]     1*4"5&

4l> DI2J=wOr?$I*$ $rk   r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	ConcatenateTestsi6(  c                x    \        R 4      p ! R R4      p\        W!3,          pV P                  V\        4       R# )rb  c                       ] tR tRtRtR# )-ConcatenateTests.test_basics.<locals>.MyClassi9(  rl   Nr   rl   rk   rh   r  r  9(  r  rk   r  N)rH   rI   r   )rf   rb  r  r7  s   &   rh   r|  ConcatenateTests.test_basics7(  s-    cN
#A{+rk   c                   \        R 4      p\        \        \        \        V3,          4      4      pR F7  pV P                  VR7      ;_uu_ 4        V P                  W24       RRR4       K9  	  R#   + '       g   i     KN  ; i)rb  rN  NrP  )rH   rQ  rR  rI   r   r~   rS  )rf   rb  rU  rO  s   &   rh   rV  ConcatenateTests.test_dir=(  sb    cNKQ/01	
M M::m7 ;:
 ;::s   A00Bc                   \        R 4      p\        R4      p\        \        \        V3,          \        3,          pV P                  VP                  \        \        V3,          \        34       V P                  VP                  V34       \        \        \        W!3,          V3,          pV P                  VP                  \        \        W!3,          V34       V P                  VP                  W!34       \        P                  P                  \        \        V3,          \        3,          pV P                  VP                  \        \        V3,          \        34       V P                  VP                  V34       \        P                  P                  \        \        W!3,          V3,          pV P                  VP                  \        \        W!3,          V34       V P                  VP                  W!34       R# r  )
rH   r   r#   rI   r   r   r  r  r  r  r  s   &      rh   r   ConcatenateTests.test_valid_usesF(  sr   cNCLk#q&)3./{36':C&@A**QD1k#q),a/0{39'=q&AB**QF3 __%%k#q&&93&>?{36':C&@A**QD1__%%k#q)&<a&?@{39'=q&AB**QF3rk   c                ,   V P                  \        R 4      ;_uu_ 4        \        R,           RRR4       V P                  \        R4      ;_uu_ 4        \        \        ,           RRR4       R#   + '       g   i     LJ; i  + '       g   i     R# ; i)zConcatenate of no typesNzLThe last parameter to Concatenate should be a ParamSpec variable or ellipsisrl   )r
  r   rI   r   r   s   &rh   test_invalid_uses"ConcatenateTests.test_invalid_usesX(  sl    ##I/HIIO J##1
 
 
 
 JI
 
 
s   A/B/A?	B	c                   \        R 4      p\        R4      p\        R4      p\        W3,          pV P                  V\        V3,          \        \        V3,          4       V P                  V\        \
        \        .3,          \        \
        \        34       V P                  V\        . 3,          \        34       V P                  V\        \        \
        V3,          3,          \        \        \
        V3,          4       V P                  V\        R3,          \        \        R3,          4       \        \        V3,          pV P                  WC,          \        \        V3,          4       V P                  V\
        \        .,          \        \
        \        34       V P                  V\
        \        3,          \        \
        \        34       V P                  V. ,          \        34       V P                  V\        \
        V3,          ,          \        \        \
        V3,          4       V P                  VR,          \        \        R3,          4       R# )r   rb  r  .N)r   rH   rI   r   r   r  r  )rf   r   rb  r  r  s   &    rh   r0  &ConcatenateTests.test_var_substitutiond(  s   CLcNt_37[b%9:3e,-S%/@A37cV,3CG 445$S#r\2	438k#s(&;<QCG 45C<3U*;<3:c5(9:2';sBw/0+c3l2KL3S#X!67rk   rl   N)rm   rn   ro   rp   r|  rV  r  r	  r0  rq   rr   rs   s   @rh   r  r  6(  s#     ,84$
8 8rk   r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	TypeGuardTestsiy(  c                .   \         \        ,           R  R lpV P                  \        V4      R\         \        ,          /4       V P	                  \
        4      ;_uu_ 4        \         \        \        3,           RRR4       R#   + '       g   i     R# ; i)c                :    V ^8  d   QhR\         \        ,          /# r`  )rL   r   )r  s   "rh   r  0TypeGuardTests.test_basics.<locals>.__annotate__}(  s    ++	#+rk   c                     R # rb   rl   r&  s   &rh   rk  'TypeGuardTests.test_basics.<locals>.foo}(  r
  rk   r#  N)rL   r   r   r1  r   r   r  rC  s   & rh   r|  TypeGuardTests.test_basicsz(  sU    #+SHin#=>y))c3h *)))   !BB	c                x   V P                  \        \        4      R 4       \        \        ,          pV P                  \        V4      R4       \        \        ,          pV P                  \        V4      R\
        ,          4       \        \        \        ,          ,          pV P                  \        V4      R4       R# )ztyping.TypeGuardztyping.TypeGuard[int]ztyping.TypeGuard[%s.Employee]ztyping.TypeGuard[tuple[int]]N)r   r   rL   r   r   rm   rz  r  s   & rh   r   TypeGuardTests.test_repr(  s|    i*<=s^b#:;x b#BX#MNuSz"b#ABrk   c           
        V P                  \        \        4      ;_uu_ 4         ! R  R\        \        4      4      pRRR4       V P                  \        \        4      ;_uu_ 4         ! R R\        \        \
        ,          4      4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R	 R
\        \
        ,          4      pRRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ly; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# ).TypeGuardTests.test_cannot_subclass.<locals>.Ci(  rl   Nr   rl   rk   rh   r  r  (  r  rk   r  Nc                       ] tR tRtRtR# ).TypeGuardTests.test_cannot_subclass.<locals>.Di(  rl   Nr   rl   rk   rh   r  r  (  r  rk   r  z!Cannot subclass typing\.TypeGuardc                       ] tR tRtRtR# ).TypeGuardTests.test_cannot_subclass.<locals>.Ei(  rl   Nr   rl   rk   rh   r  r  (  r  rk   r  z(Cannot subclass typing\.TypeGuard\[int\]c                       ] tR tRtRtR# ).TypeGuardTests.test_cannot_subclass.<locals>.Fi(  rl   Nr   rl   rk   rh   r  r   (  r  rk   r  )r
  r   r  r   rL   r   r  s   &    rh   r  #TypeGuardTests.test_cannot_subclass(  s    ##I/CDDDO  E ##I/CDDD3(  E ##I$HJ JI J ##I$OQ QIcN Q Q ED EDJ JQ Q Qr  c                   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        4      ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        \
        ,          ,          4      ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lu; i  + '       g   i     R # ; irb   )r   r   rL   r   r   r   r   s   &rh   r  TypeGuardTests.test_cannot_init(  s    y))K *y))O *y))8C=)*, *)	 *))))))r  c                J   V P                  \        4      ;_uu_ 4        \        ^\        \        ,          4       RRR4       V P                  \        4      ;_uu_ 4        \        \        \        4       RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; ir  )r   r   r   rL   r   r   r   s   &rh   r  !TypeGuardTests.test_no_isinstance(  s\    y))q)C.) *y))sI& *) *))))r  rl   Nr  rs   s   @rh   r  r  y(  s$      C -' 'rk   r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	TypeIsTestsi(  c                .   \         \        ,           R  R lpV P                  \        V4      R\         \        ,          /4       V P	                  \
        4      ;_uu_ 4        \         \        \        3,           RRR4       R#   + '       g   i     R# ; i)c                :    V ^8  d   QhR\         \        ,          /# r`  )rM   r   )r  s   "rh   r  -TypeIsTests.test_basics.<locals>.__annotate__(  s    ((s(rk   c                     R # rb   rl   r&  s   &rh   rk  $TypeIsTests.test_basics.<locals>.foo(  rn  rk   r#  N)rM   r   r   r1  r   r   r  rC  s   & rh   r|  TypeIsTests.test_basics(  sU    s(SHfSk#:;y))38 *)))r  c                x   V P                  \        \        4      R 4       \        \        ,          pV P                  \        V4      R4       \        \        ,          pV P                  \        V4      R\
        ,          4       \        \        \        ,          ,          pV P                  \        V4      R4       R# )ztyping.TypeIsztyping.TypeIs[int]ztyping.TypeIs[%s.Employee]ztyping.TypeIs[tuple[int]]N)r   r   rM   r   r   rm   rz  r  s   & rh   r   TypeIsTests.test_repr(  s{    f7C[b#78Hb#?(#JKE#Jb#>?rk   c           
        V P                  \        \        4      ;_uu_ 4         ! R  R\        \        4      4      pRRR4       V P                  \        \        4      ;_uu_ 4         ! R R\        \        \
        ,          4      4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R R\        4      pRRR4       V P                  \        R4      ;_uu_ 4         ! R	 R
\        \
        ,          4      pRRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Ly; i  + '       g   i     R# ; i)c                       ] tR tRtRtR# )+TypeIsTests.test_cannot_subclass.<locals>.Ci(  rl   Nr   rl   rk   rh   r  r2  (  r  rk   r  Nc                       ] tR tRtRtR# )+TypeIsTests.test_cannot_subclass.<locals>.Di(  rl   Nr   rl   rk   rh   r  r4  (  r  rk   r  zCannot subclass typing\.TypeIsc                       ] tR tRtRtR# )+TypeIsTests.test_cannot_subclass.<locals>.Ei(  rl   Nr   rl   rk   rh   r  r6  (  r  rk   r  z%Cannot subclass typing\.TypeIs\[int\]c                       ] tR tRtRtR# )+TypeIsTests.test_cannot_subclass.<locals>.Fi(  rl   Nr   rl   rk   rh   r  r8  (  r  rk   r  )r
  r   r  r   rM   r   r  s   &    rh   r   TypeIsTests.test_cannot_subclass(  s    ##I/CDDDL  E ##I/CDDD%  E ##I$EG GF G ##I$LN NF3K N N ED EDG GN N Nr  c                   V P                  \        4      ;_uu_ 4        \        4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        4      ! 4        R R R 4       V P                  \        4      ;_uu_ 4        \        \        \        \
        ,          ,          4      ! 4        R R R 4       R #   + '       g   i     L; i  + '       g   i     Lu; i  + '       g   i     R # ; irb   )r   r   rM   r   r   r   r   s   &rh   r  TypeIsTests.test_cannot_init(  s    y))H *y))LN *y))&') *)	 *))))))r  c                J   V P                  \        4      ;_uu_ 4        \        ^\        \        ,          4       RRR4       V P                  \        4      ;_uu_ 4        \        \        \        4       RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; ir  )r   r   r   rM   r   r   r   s   &rh   r  TypeIsTests.test_no_isinstance(  s\    y))q&+& *y))sF# *) *))))r  rl   Nr  rs   s   @rh   r'  r'  (  s$     @ *$ $rk   r'  SpecialAttrsPSpecialAttrsTc                   X   a  ] tR tRt o R t]P                  ! R]4      tR t	R t
RtV tR# )SpecialAttrsTestsi(  c           
     ~   / \         P                  R b\         P                  Rb\         P                  Rb\         P                  Rb\         P
                  Rb\         P                  Rb\         P                  Rb\         P                  Rb\         P                  Rb\         P                  R	b\         P                  R
b\         P                  Rb\         P                  Rb\         P                  Rb\         P                  Rb\         P                   Rb\         P"                  Rb/ \         P$                  Rb\         P&                  Rb\         P(                  Rb\         P*                  Rb\         P,                  Rb\         P.                  Rb\         P0                  Rb\         P2                  Rb\         P4                  Rb\         P6                  Rb\         P8                  Rb\         P:                  Rb\         P<                  Rb\         P>                  Rb\         P@                  Rb\         PB                  R b\         PD                  R!bC/ \         PF                  R"b\         PH                  R#b\         PJ                  R$b\         PL                  R%b\         P                  \N        ,          R b\         P                  \N        \N        3,          Rb\         P                  \N        \N        3,          Rb\         P                  \N        ,          Rb\         P
                  \N        ,          Rb\         P                  \N        ,          Rb\         P                  . \N        3,          Rb\         P                  R&\N        3,          Rb\         P                  \N        \N        3,          Rb\         P                  \N        ,          R	b\         P                  \N        ,          R
b\         P                  \N        \N        3,          Rb\         P                  \N        \N        \N        3,          RbC/ \         P                  \N        ,          Rb\         P                  \N        \N        3,          Rb\         P                   \N        ,          Rb\         P"                  \N        \N        3,          Rb\         P$                  \N        ,          Rb\         P&                  \N        \N        \N        3,          Rb\         P*                  \N        \N        3,          Rb\         P,                  \N        ,          Rb\         P.                  \N        ,          Rb\         P0                  \N        ,          Rb\         P2                  \N        ,          Rb\         P4                  \N        \N        3,          Rb\         P6                  \N        ,          Rb\         P8                  \N        \N        3,          Rb\         P:                  \N        ,          Rb\         P<                  \N        ,          Rb\         P>                  \N        \N        3,          RbC/ \         P@                  \N        ,          Rb\         PB                  \N        ,          R b\         PD                  \N        ,          R!b\         PH                  \N        ,          R#b\         PH                  \N        R&3,          R#b\         PJ                  \N        ,          R$b\         PL                  \N        ,          R%b\         PP                  R'b\         PN                  R(b\         PR                  R)b\         PT                  R*b\         PV                  R+b\         PX                  R,b\         PZ                  R-b\         P\                  R.b\         P^                  R/b\         P`                  R0bC/ \         Pb                  R1b\         Pd                  R2b\         Pf                  R3b\         Ph                  R4b\         Pj                  R5b\         PP                  \N        R63,          R'b\         PP                  \l        R63,          R'b\         PR                  \N        ,          R)b\         PT                  \N        \n        3,          R*b\         PV                  \N        ,          R+b\         PX                  \N        ,          R,b\         PX                  R;,          R,b\         PX                  R<,          R,b\         P`                  \N        ,          R7b\         Pd                  \N        ,          R2b\         Pf                  \N        ,          R3b\         Pp                  \N        ,          R(bC\         Pp                  \l        \r        3,          R7/CpVPu                  4        EF(  w  r#V Pw                  VR87      ;_uu_ 4        V Py                  VPz                  V\}        V4      4       V Py                  VP~                  V\}        V4      4       V Py                  VP                  R9\}        V4      4       \        \        P                  ^,           4       Fi  p\        P                  ! W$4      p\        P                  ! V4      p\        V\p        4      '       d   V Py                  W&4       KX  V P                  W&4       Kk  	  R:R:R:4       EK+  	  R:#   + '       g   i     EKA  ; i)=r`  rC  r  r  r  r  rC  r#   rN  r  r4  r  r  rT  rM  rP  r    r  r  r  	ItemsViewr2  r  KeysViewr   r6  MappingViewr!   r:  r-  r  r  r6  rX  r^  r   r8   
ValuesView.rC   r   r%   rI   r&   r   r  r   r   r   rG   rL   rM   r   rE   
Annotationr   r8  rc   Nr  r(  )Hrc   r`  rC  r  r  r  r  rC  r#   rN  r  r4  r  r  rT  rM  rP  r    r  r  r  rC  r2  r  rD  r   r6  rE  r!   r:  r-  r  r  r6  rX  r^  r   r8   rF  r   rC   r%   rI   r&   r   r  r   r   r   rG   rL   rM   r   rE   r   r>  r   r  r  r~   r   rm   r  ro   rn   r{   r|   r}   r  r  r   r   )rf   cls_to_checkr9  rA  rz   r   r  s   &      rh   r  $SpecialAttrsTests.test_special_attrs(  s
   p
p
 &&(=p
 !!#3	p

   /p
   /p
 kp
 |p
 OOZp
 OOZp
 |p
 kp
 !!#3p
 kp
 NNIp
  !p
" LL'#p
$ KK%p
& k'p
( k)p
* OOZ+p
, k-p
. OOZ/p
0 OOZ1p
2 OOZ3p
4 KK5p
6 NNI7p
8 9p
: !!#3;p
< ""$5=p
> |?p
@ Ap
B |Cp
D OOZEp
F JJGp
H LL'Ip
J LL'Kp
L KKMp
N |Op
R s#]Sp
T &&sCx02GUp
V !!#s(+-=Wp
X   %Yp
Z   %[p
\ S!;]p
^ OOBG$j_p
` OOCH%zap
b OOCH%zcp
d c"Lep
f S!;gp
h !!#s(+-=ip
j S#s]+[kp
l NN3mp
n sCx(-op
p LLwqp
r KKS!6sp
t S!;up
v S#s]+[wp
x S#X&yp
z OOC *{p
| OOC *}p
~ OOC *p
@ KKfAp
B NN38$iCp
D s#]Ep
F !!#s(+-=Gp
H ""3'):Ip
J c"LKp
L sCx(-Mp
N c"LOp
P OOC *Qp
R JJsOUSp
T LLwUp
V LLc"GWp
X KKfYp
Z c"L[p
^ k_p
` JJap
b OOZcp
d ep
f LL'gp
h NNIip
j NNIkp
l OOZmp
n LL'op
p OOZqp
r ksp
t kup
v MM8wp
x NNIyp
z KK{p
~ S,./p
@ S,./Ap
B OOC *Cp
D sM12MEp
F LLwGp
H NN3Ip
J NN4 )Kp
L NN7#YMp
N OOC 'Op
P S!;Qp
R MM#Sp
T LLuUp
V LLe$gWp
d &++-IC#&&  tSX>  !1!14SB  3s8D"6#:#:Q#>?ES0A#\\!_F!#u--((5c2 @	 '& .&&&s   D j**j<SpecialAttrsTests.TypeNamec                .   V P                  \        P                  P                  R 4       V P                  \        P                  P                  R4       V P                  \        P                  P
                  \        4       \        \        P                  ^,           4       F^  p\        P                  ! \        P                  V4      p\        P                  ! V4      pV P                  \        P                  V4       K`  	  V P                  \        P                  R4       V P                  \        R4       V P                  \        P
                  \        4       \        \        P                  ^,           4       FJ  p\        P                  ! \        V4      p\        P                  ! V4      pV P                  \        V4       KL  	  V P                  \        P                  R4       V P                  \        R4       V P                  \        P
                  \        4       \        \        P                  ^,           4       FJ  p\        P                  ! \        V4      p\        P                  ! V4      pV P                  \        V4       KL  	  R# )TypeNamerJ  r?  ro   r>  N)r   rA  rL  rm   ro   rn   r{   r|   r}   r  r  r   r?  r  r>  rf   rz   r   r  s   &   rh   test_special_attrs2%SpecialAttrsTests.test_special_attrs2e)  s   *33<<jI&&33(	
 	&&11	

 622Q67E.77?A\\!_FMM+44f= 8 	//Am^<118<622Q67E]E2A\\!_FMM-0 8
 	//Am^<118<622Q67E]E2A\\!_FMM-0 8rk   c                >    ! R  R\         \        ,          4      p\        \        V\        ,          4      4      pR F7  pV P                  VR7      ;_uu_ 4        V P                  W24       RRR4       K9  	  V P                  RV4       R#   + '       g   i     K`  ; i)c                   .   a  ] tR tRt o R t^t^tRtV tR# )4SpecialAttrsTests.test_genericalias_dir.<locals>.Fooi)  c                    R # rb   rl   r   s   &rh   rc  8SpecialAttrsTests.test_genericalias_dir.<locals>.Foo.bar)  r  rk   rl   N)	rm   rn   ro   rp   rc  r  	__magic__rq   rr   rs   s   @rh   r   rR  )  s     CIrk   r   rN  NrU  )rc  r  r  r  r  )r$   r   rQ  rR  r   r~   rS  r?
  )rf   r   rU  rO  s   &   rh   test_genericalias_dir'SpecialAttrsTests.test_genericalias_dir)  sw    	'!* 	 CH&	
M M::m7 ;:	
 	i0 ;::s   BBrl   N)rm   rn   ro   rp   r  rc   r  r   rL  rN  rV  rq   rr   rs   s   @rh   rA  rA  (  s/     ~3@ ~~:C@H$1L1 1rk   rA  c                   &   a  ] tR tRt o R tRtV tR# )RevealTypeTestsi)  c                    \        4       p\        4       ;_uu_ 4       pV P                  V\        V4      4       R R R 4       V P	                  XP                  4       R4       R #   + '       g   i     L2; i)NzRuntime type is 'object'
)r  rO   r   r3   r   getvalue)rf   r	  stderrs   &  rh   test_reveal_type RevealTypeTests.test_reveal_type)  sM    h&MM#{3/0 *,HI s   A##A3	rl   N)rm   rn   ro   rp   r]  rq   rr   rs   s   @rh   rY  rY  )  s     J Jrk   rY  c                   2   a  ] tR tRt o R tR tR tRtV tR# )DataclassTransformTestsi)  c                
   R RRR/R R llp\        RRR7      ! V4      p ! R R4      pV P                  W!4       V P                  VP                  R	RR
RRRRRRRR/ /4       V P                  V! RRR7      ! V4      V4       R# )frozenFkw_onlyTc                0    V ^8  d   QhR\         R\         /# )r  rb  rc  rf  )r  s   "rh   r  <DataclassTransformTests.test_decorator.<locals>.__annotate__)  s     	# 	#D 	#4 	#rk   c                     R  # )c                     V # rb   rl   r8  s   &rh   r  NDataclassTransformTests.test_decorator.<locals>.create_model.<locals>.<lambda>)  s    srk   rl   rb  rc  s   $$rh   create_model<DataclassTransformTests.test_decorator.<locals>.create_model)  s    ""rk   )kw_only_defaultorder_defaultc                   ,   a  ] tR tRt o V 3R ltRtV tR# )=DataclassTransformTests.test_decorator.<locals>.CustomerModeli)  c                &   < V ^8  d   Qh/ S[ ;R&   # r  r  rL  )r  rt   s   "rh   r  JDataclassTransformTests.test_decorator.<locals>.CustomerModel.__annotate__)       G rk   rl   Nrm  rs   s   @rh   CustomerModelro  )  rn  rk   rt  
eq_defaultrm  rl  frozen_defaultfield_specifiersr   ri  Nrl   )r4   r   r   __dataclass_transform__)rf   rj  	decoratedrt  s   &   rh   test_decorator&DataclassTransformTests.test_decorator)  s    	#5 	#$ 	# (ERS_`		 	 	i.--d!4 %"B"
	
 	T51-@	
rk   c                     ! R  R4      p\        RRRR7      ! V4      p ! R RVRR7      pV P                  W!4       V P                  VP                  RRRRR	R
RR
RRRRR//4       V P	                  W24       R# )c                   :   a  ] tR tRt o RR/V 3R lR lltRtV tR# ):DataclassTransformTests.test_base_class.<locals>.ModelBasei)  rb  Fc                    < V ^8  d   QhRS[ /# )r  rb  rf  )r  rt   s   "rh   r  GDataclassTransformTests.test_base_class.<locals>.ModelBase.__annotate__)  s    DD$Drk   c                   R # rb   rl   )r9  rb  s   &$rh   r  LDataclassTransformTests.test_base_class.<locals>.ModelBase.__init_subclass__)  s    rk   rl   N)rm   rn   ro   rp   r  rq   rr   rs   s   @rh   	ModelBaser~  )  s     DDDDrk   r  T)ru  rm  make_everything_awesomec                   ,   a  ] tR tRt o V 3R ltRtV tR# )>DataclassTransformTests.test_base_class.<locals>.CustomerModeli)  c                &   < V ^8  d   Qh/ S[ ;R&   # rq  rL  )r  rt   s   "rh   r  KDataclassTransformTests.test_base_class.<locals>.CustomerModel.__annotate__)  rs  rk   rl   Nrm  rs   s   @rh   rt  r  )  rn  rk   rt  )rb  ru  rm  rl  Frv  rw  r   r  Nrl   )r4   r   r   rx  r   )rf   r  	Decoratedrt  s   &   rh   test_base_class'DataclassTransformTests.test_base_class)  s    	E 	E ($(	

 		Id 	 	i+--d!5 %"B4d;
	
 	m7rk   c                *    ! R  R4      p ! R R\         4      p\        RRV3R7      ! V4      p ! R RVR7      p ! R	 R
VRR7      pV P                  W24       V P                  VP                  RRRRRRRRRV3R/ /4       V P                  WS4       R# )c                       ] tR tRtRtR# )5DataclassTransformTests.test_metaclass.<locals>.Fieldi)  rl   Nr   rl   rk   rh   Fieldr  )  r	  rk   r  c                   F   a a ] tR tRt oRR/V3R lV 3R llltRtVtV ;t# )9DataclassTransformTests.test_metaclass.<locals>.ModelMetai)  initTc                    < V ^8  d   QhRS[ /# )r  r  rf  )r  rt   s   "rh   r  FDataclassTransformTests.test_metaclass.<locals>.ModelMeta.__annotate__)  s     D D6:Drk   c               $   < \         SV `  WW#4      # rb   )r   r
  )r9  rA  r  	namespacer  r   s   &&&&$rh   r
  ADataclassTransformTests.test_metaclass.<locals>.ModelMeta.__new__)  s     ws%CCrk   rl   r
  r   s   @@rh   	ModelMetar  )  s      D=AD D Drk   r  T)rm  rv  rw  c                       ] tR tRtRtR# )9DataclassTransformTests.test_metaclass.<locals>.ModelBasei)  rl   Nr   rl   rk   rh   r  r  )  r  rk   r  r  c                   ,   a  ] tR tRt o V 3R ltRtV tR# )=DataclassTransformTests.test_metaclass.<locals>.CustomerModeli)  c                &   < V ^8  d   Qh/ S[ ;R&   # rq  rL  )r  rt   s   "rh   r  JDataclassTransformTests.test_metaclass.<locals>.CustomerModel.__annotate__)  rs  rk   rl   Nrm  rs   s   @rh   rt  r  )  rn  rk   rt  F)r  ru  rm  rl  rv  rw  r   N)r   r4   r   r   rx  r   )rf   r  r  r  r  rt  s   &     rh   test_metaclass&DataclassTransformTests.test_metaclass)  s    	D 	D (tuh

	 	2)1	IE 	 	i+--d!5 $"UH"
	
 	m7rk   rl   N)	rm   rn   ro   rp   rz  r  r  rq   rr   rs   s   @rh   r`  r`  )  s     
4888 8rk   r`  c                   T   a  ] tR tRt o R tR tR t]R 4       tR t	R t
R tR	tV tR
# )NoDefaultTestsi)  c                    \        \        P                  ^,           4       FJ  p\        P                  ! \        V4      p\        P
                  ! V4      pV P                  \        V4       KL  	  R# r  )r{   r|   r}   r  rN   r  r   rM  s   &   rh   test_picklingNoDefaultTests.test_pickling)  sG    622Q67EY.A\\!_FMM)V, 8rk   c                    V P                  \        \        \        4      ! 4       4       V P                  \        4      ;_uu_ 4        \        \        4      ! ^4       RRR4       R#   + '       g   i     R# ; ir  )r   rN   r   r   r   r   s   &rh   rD  NoDefaultTests.test_constructor*  sC    ii!23y))OA *)))s   A&&A7	c                D    V P                  \        \        4      R 4       R# )ztyping.NoDefaultN)r   r   rN   r   s   &rh   r   NoDefaultTests.test_repr
*  r  rk   c                N    V P                  \        P                  \        4       R # rb   )r   rN   __doc__r  r   s   &rh   test_docNoDefaultTests.test_doc*  s    i//5rk   c                `    V P                  \        P                  \        \        4      4       R # rb   )r   rN   r   r   r   s   &rh   
test_classNoDefaultTests.test_class*  s    i))4	?;rk   c                    V P                  \        4      ;_uu_ 4        \        4        R R R 4       R #   + '       g   i     R # ; irb   )r   r   rN   r   s   &rh   test_no_callNoDefaultTests.test_no_call*  rk  rc  c                `   V P                  \        4      ;_uu_ 4        ^\        n        RRR4       V P                  \        4      ;_uu_ 4        \        P                   RRR4       V P                  \        4      ;_uu_ 4        ^\        \        4      n        RRR4       V P                  \        4      ;_uu_ 4        \        \        4      P                   RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Lw; i  + '       g   i     R# ; i)r  N)r   r  rN   rk  r   r   r   s   &rh   test_no_attributes!NoDefaultTests.test_no_attributes*  s    ~..IM /~..MM / y))"#DO *~..O /. /... *)...s/   C#C6D	?D#C3	6D		D	D-	rl   N)rm   rn   ro   rp   r  rD  r   rR   r  r  r  r  rq   rr   rs   s   @rh   r  r  )  s<     -
> 6 6<
  
 rk   r  c                   ,   a  ] tR tRt o R tR tRtV tR# )AllTestsi%*  c                   ^ RI Hp V P                  RV4       V P                  RV4       V P                  RV4       V P                  RV4       V P                  RV4       V P                  RV4       V P                  RV4       V P                  R	V4       V P                  R
V4       V P                  RV4       V P                  RV4       V P                  RV4       V P                  RV4       R# )r   )rV  r`  rF  r*   r   r  rC  r  r  r  r  Textr  r  N)rc   rV  rS  r?
  r"  s   & rh   test_allAllTests.test_all(*  s    'mQ'lA&fa j!$&*+Q/q!q!q!"fa oq)'+rk   c           	        \         P                   F  p\        \         V4       K  	  \        \         P                  4      p\	        \         4      P                  4        UUu0 uFx  w  r4W29   gl   VP                  R 4      '       d   K$  VP                  R4      '       d   K=  VP                  4       V8X  d   KT  \        VRR4      \         P                  8X  g   Kv  VkKz  	  pppV P                  WR4       R# u uppi )r  rn   N)r  _contra_co)rc   rV  rS  rQ  r@
  r  rg  endswithupperrm   assertSetEqual)rf   rA  
actual_allr>  r  computed_alls   &     rh   test_all_exported_names AllTests.test_all_exported_names>*  s    NNDFD! # (
v,,,.
.$!LL%	  JJ9:  GGIN  <.&//A A. 	 
 	L5
s   !!C5C5 C57C5C5rl   N)rm   rn   ro   rp   r  r  rq   rr   rs   s   @rh   r  r  %*  s     ,,6 6rk   r  c                      a  ] tR tRt o ]]]]]3,          ]]]3,          ]	]
]]R]3,          ]].]3,          ]]]R3,          3tR tR tRtV tR# )TypeIterationTestsiT*  .r   c           
     :   R pV P                    F  pV P                  VR7      ;_uu_ 4        V P                  \        V4      ;_uu_ 4        \	        V4       RRR4       V P                  \        V4      ;_uu_ 4        \        V4       RRR4       V P                  \        V4      ;_uu_ 4        V F  pK  	  RRR4       RRR4       K  	  R#   + '       g   i     L; i  + '       g   i     La; i  + '       g   i     LD; i  + '       g   i     EK  ; i)zobject is not iterabler+  N)_UNITERABLE_TYPESr~   r
  r   ri  r.  )rf   expected_error_regex	test_typer  s   &   rh   test_cannot_iterate&TypeIterationTests.test_cannot_iteratec*  s    7//I9--++I7KLLO M++I7KLLO M++I7KLL& ' M .- 0LLLLLL .--sS   DC&D=C"	&D/
C59DCD"C2-D5D DDc                    V P                    F-  pV P                  V\        P                  P                  4       K/  	  R # rb   )r  r   r  r  r2  )rf   type_to_tests   & rh    test_is_not_instance_of_iterable3TypeIterationTests.test_is_not_instance_of_iterableo*  s,     22L$$\;??3K3KL 3rk   rl   N)rm   rn   ro   rp   r   r   r  r   r   r   r   r#   rC   r  r  r  rq   rr   rs   s   @rh   r  r  T*  sl     c3hc1fa!c!R%
M Mrk   r  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )UnionGenericAliasTestsit*  c                   V P                  \        4      ;_uu_ 4        \        P                  ! \        P                  \
        \        34      pR R R 4       V P                  X\
        \        ,          4       V P                  \        4      ;_uu_ 4        \        P                  ! \        P                  \
        R 3RR7      pR R R 4       V P                  V\
        R ,          4       R #   + '       g   i     L; i  + '       g   i     LB; i)Nr   r@  )rB  r9  rc   _UnionGenericAliasr   r   r  r   )rf   insts   & rh   rD  'UnionGenericAliasTests.test_constructoru*  s    011,,V\\C:FD 2sSy)011,,V\\C;ZXD 2 	sTz* 21 21s   0C).C<)C9	<D	c           	        V P                  \        4      ;_uu_ 4        V P                  \        \        \
        \        3,          \        P                  4      4       R R R 4       V P                  \        4      ;_uu_ 4        V P                  \        \
        \        P                  4      4       R R R 4       R #   + '       g   i     Le; i  + '       g   i     R # ; irb   )
rB  r9  rW  r   r   r   r  rc   r  rX  r   s   &rh   test_isinstance&UnionGenericAliasTests.test_isinstance*  s    011OOJuS#X8Q8QRS 2011ZV-F-FGH 21 21111s   ?B:.C:C
	C	c                J   V P                  \        4      ;_uu_ 4        V P                  \        \        P
                  4       R R R 4       V P                  \        4      ;_uu_ 4        V P                  \        P
                  \        P
                  4       R R R 4       V P                  \        4      ;_uu_ 4        V P                  \        \        P
                  4       R R R 4       R #   + '       g   i     L; i  + '       g   i     Lo; i  + '       g   i     R # ; irb   )rB  r9  r   r   rc   r  r   r   r   s   &rh   test_eqUnionGenericAliasTests.test_eq*  s    011UF$=$=> 2011V668Q8QR 2011V%>%>? 21	 2111111s#   %C+(/C><%D+C;	>D	D"	c                r    V P                  \        \        P                  4      \        \        4      4       R # rb   )r   r  rc   r  r   r   s   &rh   r  $UnionGenericAliasTests.test_hashable*  s!    f778$u+Frk   rl   N)
rm   rn   ro   rp   rD  r  r  r  rq   rr   rs   s   @rh   r  r  t*  s"     +I@G Grk   r  c                 V    ^ RI pVP                  VP                  \        4      4       V# r]  )doctestaddTestsDocTestSuiterc   )loaderr  patternr  s   &&& rh   
load_testsr  *  s!    	NN7''/0Lrk   __main__)r  rN  r  collections.abcr   	functoolsr   r   r   rT  r  r  r  r  r  r|   r  r  unittestr   r   r	   unittest.mockr
   r   r   rc   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)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   r  r  r:  rM  r  test.supportrO   rP   rQ   rR   rS   rT   rU   r  rV   rW   rX   rY   rZ   r[   r\   r]   r^   r  r  r  r`   r   r   r   r   r   r   r   r  r;  rJ  rY  r  r  rG  r  r  r  rH  r  r  r  rj  r  r  r  r  r  r  r=  r>  r@  rU  rh  rp  rv  rz  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r>  rS  rU  r]  r  r  r  r  r  r  r  r	  r  r  r  r  r  r  r  r  r  r  r  r   r   
FooGenericr  r	  r  r  r  r  r!  r&  r+  r/  r4  r8  r<  rE  r  r  r9  r1  rG  rR  r  r  r  r:  r[  r  r  r  r  rQ  rg  r{  r  r  r`  r  r  r  r'  r>  r   r  r  r?  rA  rY  r`  r  r  r  r  r  rm   rl   rk   rh   <module>r     s       # . . 	  	   	  	 
 ) )   5 5 ; ; 8 8   + + 4 4  < < 7 7 ! = =  ,  & 9  I I ' ' ! ( &  I I / / 
          @ C> 8 		 		h 		h 		gw 	F| FR&% &%R-(, -(8%| 8 
| 
&65 65r5> 5>pu2< u2pvE vErA,H+| +B@L @FB', B'J~
< ~
<B.$ .$bLG LG^)' )'Xd dN		?+\ 	?(0, (x=< x=v T3T]	GBFO 	mBF+ $ 
 J   
H H  	ueX 	 	 H  
	u 	   h  D
L D
N8` < ` F%+&L +&\0# 0#fG6, G6T{=\ {=| $6l 6" 0 0 0 < < <a"| a"H+\ +\   YCL YCx env'', %6//4 %   1  
    : j J 
J  	'WcN+,i 	WQZ 	

 
  #..q1  (7E 'iu  IU )5 ) J J, : ,,Y ,,9 ,. .$,.. $

35Mt  HK HKVbT8 bTJsl sl^g, ^gB)?L )?X$% $%NK( KR< Rjk.l k.\r
\ r
j-&L -&`-)| -)`/l /67l 7tK<\ K<\*\ *ZG$\ G$T@8| @8F/'\ /'d/$, /$d   1UGDz1 z1zJl JU8l U8p$ \ $ N,6| ,6^M M@G\ G> zF OF    s   ]5 5^^