+
    BiA                        ^ RI t ^ RIHt ^ RIt^ RIt^ RIHt ^ RIH	t	H
t
 ^ RIt^ RIt^ RIHt  ! R R4      t ! R R	4      t ! R
 R]4      t ! R R]4      t ! R R] P&                  4      t]R8X  d   ] P,                  ! 4        R# R# )    N)WeakSet)
UserString)Set
MutableSet)supportc                       ] tR t^tRtR# )Foo N__name__
__module____qualname____firstlineno____static_attributes__r
       (/usr/lib/python3.14/test/test_weakset.pyr	   r	          r   r	   c                   &   a  ] tR t^t o R tRtV tR# )RefCyclec                    W n         R # Ncycleselfs   &r   __init__RefCycle.__init__   s    
r   r   N)r   r   r   r   r   r   __classdictcell____classdict__s   @r   r   r      s      r   r   c                       ] tR t^tRtR# )WeakSetSubclassr
   Nr   r
   r   r   r"   r"      r   r   r"   c                       ] tR t^tRtRtR# )WeakSetWithSlotsr
   N)xy)r   r   r   r   	__slots__r   r
   r   r   r$   r$      s    Ir   r$   c                   :  a  ] tR t^t o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!R t"R  t#R! 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. t1R/ t2R0t3V t4R1# )2TestWeakSetc                L   R Uu. uF  p\        V4      NK  	  upV n        R Uu. uF  p\        V4      NK  	  upV n        R Uu. uF  p\        V4      NK  	  upV n        R Uu. uF  p\        V4      NK  	  upV n        R Uu. uF  p\        V4      NK  	  upV n        \        V P                  4      V n        \        V P                  4      V n        \        V P
                  4      V n	        \        P                   Uu. uF  p\        V4      NK  	  upV n        \        V P                  4      V n        \        P                  V P                  4      V n        \        R4      V n        \        V P"                  .4      V n        R# u upi u upi u upi u upi u upi u upi )aababcdedefFNr+   bc)r%   r&   z)ustritemsitems2ab_itemsabcde_items	def_itemsr   
ab_weaksetabcde_weaksetdef_weaksetstringascii_lettersletterssdictfromkeysdobjfsr   r2   s   & r   setUpTestWeakSet.setUp   s2   '67!d1g7
(781tAw8*./$Qa$/-45WDGW5+015a$q'51!$--0$T%5%56"4>>2)/)=)=>)=AQ)=>$tzz*9488*% 88/51 ?s"   FFF%FFF!c                    \        \        4      p\        \        4       F5  pVP                  R 4      '       d   K  V P	                  W!RV,           4       K7  	  R# )_zWeakSet missing method N)dirr   set
startswithassertIn)r   weaksetmethodsmethods   &  r   test_methodsTestWeakSet.test_methods,   sC    W#hF  %%MM&2V;= r   c                >    V P                  \        \        . ^4       R#    N)assertRaises	TypeErrorr   r   s   &r   test_new_or_initTestWeakSet.test_new_or_init4   s    )Wb!4r   c                8   V P                  \        V P                  4      \        V P                  4      4       V P                  \        V P                  4      ^4       V =\        P                  ! 4        V P                  \        V P                  4      ^ 4       R#    N)assertEquallenr@   rC   rE   rD   r   
gc_collectr   s   &r   test_lenTestWeakSet.test_len7   sc    TVVc$&&k2TWWq)HTWWq)r   c                |   V P                    F-  pV P                  WP                  9   WP                  9   4       K/  	  V P	                  ^V P                  4       V P                  V P                  V P                  4       V =\        P                  ! 4        V P	                  \        R4      V P                  4       R# )r\   r/   N)r?   r]   r@   rC   assertNotInrN   rD   rE   r   r_   r4   rF   s   & r   test_containsTestWeakSet.test_contains>   s    AQ&&[!vv+6  	DFF#dhh(HcDGG,r   c                t   V P                   P                  V P                  4      pV P                   F9  pT P	                  W!9   W P
                  9   ;'       g    W P                  9   4       K;  	  V P	                  V P                   \        V P                  4      4       V P	                  \        V4      \        4       V P                  \        V P                   P                  . .4       \        \        \        P                  \        \         3 Fg  p\        V P                  V P                  ,           4      pV! V P                  4      pV P	                  V P                   P                  V4      V4       ?Ki  	  V P	                  \#        V4      \#        V P                  4      \#        V P                  4      ,           4       V P                  P%                  4        \&        P(                  ! 4        V P	                  \#        V4      \#        V P                  4      \#        V P                  4      ,           4       R # r   )r@   unionr6   r?   r]   rC   r   r5   typerV   rW   rL   	frozensetrA   rB   listtupler^   popgccollect)r   ur2   Cr%   s   &    r   
test_unionTestWeakSet.test_unionH   sc   FFLL%AQVQ&&[%D%DA4DE !45a'*)TVV\\B48ie;A

T[[01A$++ATVV\\!_a0	 <
 	QTZZ3t{{3C!CD


QTZZ3t{{3C!CDr   c                (   V P                   P                  V P                  4      pV P                  V P                   \	        V P                  4      ,          V4       V P                  V P                   \        V P                  4      ,          V4       R # r   )r@   rg   r6   r]   rL   ri   r   is   & r   test_orTestWeakSet.test_orY   s\    FFLL%#dkk"22A6)DKK"88!<r   c                f   \        V P                  4      pVP                  V P                  4      pV P                   F9  pT P	                  W29   W0P                  9   ;'       d    W0P                  9   4       K;  	  V P	                  V\        V P                  4      4       V P	                  \        V4      \         4       \        \        \        P                  \        \        3 F?  p\        . 4      pV P	                  VP                  V! V P                  4      4      V4       KA  	  V P	                  \        V4      \        V P                  4      4       V P                  P                  4        \        P                   ! 4        V P	                  \        V4      \        V P                  4      4       R # r   )r   r?   intersectionr6   r]   rh   rL   ri   rA   rB   rj   rk   r5   r^   rl   rm   rn   )r   r@   ru   r2   rp   r%   s   &     r   test_intersectionTestWeakSet.test_intersection^   s   DLL!NN4;;'AQVQ++%5%K%K!||:KL GDLL12a'*ie;AAQ^^AdjjM:A> < 	QT[[!12


QT[[!12r   c                   V P                  V P                  P                  \        V P                  4      4      4       V P                  V P                  P                  \        V P
                  4      4      '       * 4       R # r   )
assertTruer@   
isdisjointr   r6   r?   r   s   &r   test_isdisjointTestWeakSet.test_isdisjointm   sM    ))'$++*>?@DFF--gdll.CDDEr   c                (   V P                   P                  V P                  4      pV P                  V P                   \	        V P                  4      ,          V4       V P                  V P                   \        V P                  4      ,          V4       R # r   )r@   ry   r6   r]   rL   ri   rt   s   & r   test_andTestWeakSet.test_andq   s^    FF,#dkk"22A6)DKK"88!<r   c                   V P                   P                  V P                  4      pV P                   F9  pT P	                  W!9   W P
                  9   ;'       d    W P                  9  4       K;  	  V P	                  V P                   \        V P                  4      4       V P	                  \        V4      \        4       V P                  \        V P                   P                  . .4       R # r   )r@   
differencer6   r?   r]   rC   r   r5   rh   rV   rW   r   ru   r2   s   &  r   test_differenceTestWeakSet.test_differencev   s    FFdkk*AQVQ&&[%I%IQkk5IJ !45a'*)TVV%6%6=r   c                (   V P                   P                  V P                  4      pV P                  V P                   \	        V P                  4      ,
          V4       V P                  V P                   \        V P                  4      ,
          V4       R # r   )r@   r   r6   r]   rL   ri   rt   s   & r   test_subTestWeakSet.test_sub~   s^    FFdkk*#dkk"22A6)DKK"88!<r   c                N   V P                   P                  V P                  4      pV P                   F6  pV P	                  W!9   W P
                  9   W P                  9   ,          4       K8  	  V P	                  V P                   \        V P                  4      4       V P	                  \        V4      \        4       V P                  \        V P                   P                  . .4       V P	                  \        V4      \        V P                  4      \        V P                  4      ,           4       V P                  P                  4        \        P                  ! 4        V P	                  \        V4      \        V P                  4      \        V P                  4      ,           4       R # r   )r@   symmetric_differencer6   r?   r]   rC   r   r5   rh   rV   rW   r^   rl   rm   rn   r   s   &  r   test_symmetric_difference%TestWeakSet.test_symmetric_difference   s   FF''4AQVa66ka;;6F%GH !45a'*)TVV%@%@2$GQTZZ3t{{3C!CD


QTZZ3t{{3C!CDr   c                (   V P                   P                  V P                  4      pV P                  V P                   \	        V P                  4      ,          V4       V P                  V P                   \        V P                  4      ,          V4       R # r   )r@   r   r6   r]   rL   ri   rt   s   & r   test_xorTestWeakSet.test_xor   s^    FF''4#dkk"22A6)DKK"88!<r   c                   V P                  V P                  V P                  8*  4       V P                  V P                  V P                  8*  4       V P                  V P                  V P                  8  4       V P                  V P                  V P                  8*  4       V P                  V P                  V P                  8  4       V P                  \        R 4      P                  R4      4       V P                  \        R4      P                  R 4      4       V P                  \        R 4      P                  R4      4       V P                  \        R4      P                  R 4      4       R# )r+   abccbsN)r}   r:   r;   assertFalser<   rL   issubset
issupersetr   s   &r   test_sub_and_superTestWeakSet.test_sub_and_super   s   4+=+==>**d.@.@@A**doo=>++t/?/??@++t/?/??@C))%01E
--c23S**512U..s34r   c                >   V P                  V P                  V P                  8  4       V P                  V P                  V P                  8  4       V P                  V P                  V P                  8  4       V P                  \        4       \        4       8  4       R # r   )r}   r:   r;   r   r<   r   r   s   &r   test_ltTestWeakSet.test_lt   sn    $*<*<<=++d.>.>>?4??:;WY./r   c                >   V P                  V P                  V P                  8  4       V P                  V P                  V P                  8  4       V P                  V P                  V P                  8  4       V P                  \        4       \        4       8  4       R # r   )r}   r;   r:   r   r<   r   r   s   &r   test_gtTestWeakSet.test_gt   sn    **T__<=++d.>.>>?4??:;WY./r   c                    \        R  \        R4       4       4      pV F   pWn        W"n        \        V.4      Vn        K"  	  R# )c              3   6   "   T F  p\        4       x  K  	  R # 5ir   )r	   ).0ru   s   & r   	<genexpr>&TestWeakSet.test_gc.<locals>.<genexpr>   s     /;aCEE;s   i  N)r   ranger   subrL   )r   r@   elems   &  r   test_gcTestWeakSet.test_gc   s7    /5;//DJHvDH r   c                     ! R  R\         4      pV! 4       p\        4       pVP                  V4       V P                  W#4       VP	                  V4       VP                  V4       VP                  V4       R# )c                   &   a  ] tR t^t o R tRtV tR# )5TestWeakSet.test_subclass_with_custom_hash.<locals>.Hc                8    \        \        V 4      R ,          4      # )i)intidr   s   &r   __hash__>TestWeakSet.test_subclass_with_custom_hash.<locals>.H.__hash__   s    2d8j011r   r
   N)r   r   r   r   r   r   r   r   s   @r   Hr      s     2 2r   r   N)r   rL   addrN   removediscard)r   r   r@   fs   &   r   test_subclass_with_custom_hash*TestWeakSet.test_subclass_with_custom_hash   sV    	2 	2 #
%	aa		a			!r   c                   \        4       pVP                  V P                  4       V P                  WP                  4       VP                  V P
                  4       V P                  V\        V P
                  4      4       V P                  \        VP                  V^4       V P                  \        VP                  ^4       R# rT   )r   r   r5   r]   r@   r6   rV   rW   )r   r@   s   & r   	test_initTestWeakSet.test_init   s    I	

4::FF#	

4;;GDKK01)QZZA6)QZZ3r   c                    \        V P                  4      p\        V4      pV P                  \        V4      \        V4      4       R # r   )r   r5   assertNotEqualr   )r   r@   ts   &  r   test_constructor_identity%TestWeakSet.test_constructor_identity   s1    DJJAJBqE2a5)r   c                P    V P                  \        \        V P                  4       R # r   )rV   rW   hashr@   r   s   &r   	test_hashTestWeakSet.test_hash   s    )T4662r   c                    V P                   P                  4        V P                  V P                   \        . 4      4       V P                  \	        V P                   4      ^ 4       R# )r   N)r@   clearr]   r   r^   r   s   &r   
test_clearTestWeakSet.test_clear   s?    -TVVa(r   c                    V P                   P                  4       pV P                  V P                   V4       V P                  \	        V P                   4      \	        V4      4       R # r   )r@   copyr]   r   r   )r   dups   & r   	test_copyTestWeakSet.test_copy   sA    ffkkm%BtvvJ30r   c                   \        R 4      pV P                  P                  V4       V P                  WP                  4       V P                  P	                  4       pV P                  P                  V4       V P                  V P                  V4       V P                  \        V P                  P                  . 4       V P                  P                  \        4       4       \        P                  ! 4        V P                  \        V P                  4      ^8H  4       V P                  P                  V P                  4       V P                  \        V P                  4      ^8H  4       R# )QN)r4   r@   r   rN   r   r]   rV   rW   rE   r	   r   r_   r}   r^   rD   )r   r%   r   s   &  r   test_addTestWeakSet.test_add   s    I

1a ffkkm

1%)TVVZZ4CEDGG)*DHHDGG)*r   c                4   \        R 4      pV P                  P                  V4       V P                  WP                  4       V P	                  \
        V P                  P                  V4       V P	                  \        V P                  P                  . 4       R# )r+   N)r4   r@   r   rc   rV   KeyErrorrW   )r   r%   s   & r   test_removeTestWeakSet.test_remove   sa    IaFF#(DFFMM15)TVV]]B7r   c                (   \        R 4      \        R4      r!V P                  P                  V4       V P                  WP                  4       V P                  P                  V4       V P	                  \
        V P                  P                  . 4       R# )r+   r   N)r4   r@   r   rc   rV   rW   )r   r+   qs   &  r   test_discardTestWeakSet.test_discard   s]    Cy$s)1qFF#q)TVV^^R8r   c                   \        \        V P                  4      4       F8  pV P                  P                  4       pV P	                  W P                  4       K:  	  V P                  \        V P                  P                  4       R # r   )r   r^   r@   rl   rc   rV   r   )r   ru   r   s   &  r   test_popTestWeakSet.test_pop   sT    s466{#A66::<DT66* $ 	(DFFJJ/r   c                J   V P                   P                  V P                  4      pV P                  VR 4       V P                  V P                  ,            F  pV P                  W P                   4       K   	  V P                  \        V P                   P                  . .4       R # r   )r@   updater6   r]   r5   rN   rV   rW   r   retvalr2   s   &  r   test_updateTestWeakSet.test_update   sn    t{{+&**t{{**AMM!VV$ +)TVV]]RD9r   c                    V P                   P                  \        V P                  4      4       V P                  V P                  ,            F  pV P                  WP                   4       K   	  R # r   )r@   r   rL   r6   r5   rN   rF   s   & r   test_update_setTestWeakSet.test_update_set  sE    c$++&'**t{{**AMM!VV$ +r   c                    V ;P                   \        V P                  4      ,          un         V P                  V P                  ,            F  pV P	                  WP                   4       K   	  R # r   )r@   rL   r6   r5   rN   rF   s   & r   test_iorTestWeakSet.test_ior	  sC    #dkk""**t{{**AMM!VV$ +r   c                   V P                   P                  V P                  4      pV P                  VR 4       V P                  V P                  ,            F[  pW P                  9   d.   W P                  9   d   V P                  W P                   4       K@  V P                  W P                   4       K]  	  V P                  \        V P                   P                  . .4       R # r   )	r@   intersection_updater6   r]   r5   rN   rc   rV   rW   r   s   &  r   test_intersection_update$TestWeakSet.test_intersection_update  s    ++DKK8&**t{{**AKKAOa(  FF+	 +
 	)TVV%?%?"Fr   c                V   V ;P                   \        V P                  4      ,          un         V P                  V P                  ,            F[  pWP                  9   d.   WP                  9   d   V P	                  WP                   4       K@  V P                  WP                   4       K]  	  R # r   r@   rL   r6   r5   rN   rc   rF   s   & r   	test_iandTestWeakSet.test_iand  sg    #dkk""**t{{**AKKAOa(  FF+	 +r   c                   V P                   P                  V P                  4      pV P                  VR 4       V P                  V P                  ,            F[  pW P                  9   d.   W P                  9  d   V P                  W P                   4       K@  V P                  W P                   4       K]  	  V P                  \        V P                   P                  . .4       V P                  \        V P                   P                  . .4       R # r   )
r@   difference_updater6   r]   r5   rN   rc   rV   rW   symmetric_difference_updater   s   &  r   test_difference_update"TestWeakSet.test_difference_update   s    ))$++6&**t{{**AJJ1KK#7a(  FF+	 +
 	)TVV%=%=tD)TVV%G%G"Nr   c                V   V ;P                   \        V P                  4      ,          un         V P                  V P                  ,            F[  pWP                  9   d.   WP                  9  d   V P	                  WP                   4       K@  V P                  WP                   4       K]  	  R # r   r   rF   s   & r   	test_isubTestWeakSet.test_isub+  sg    #dkk""**t{{**AJJ1KK#7a(  FF+	 +r   c                   V P                   P                  V P                  4      pV P                  VR 4       V P                  V P                  ,            Fb  pW P                  9   W P                  9   ,          '       d   V P                  W P                   4       KG  V P                  W P                   4       Kd  	  V P                  \        V P                   P                  . .4       R # r   )	r@   r   r6   r]   r5   rN   rc   rV   rW   r   s   &  r    test_symmetric_difference_update,TestWeakSet.test_symmetric_difference_update3  s    33DKK@&**t{{**AZZA$455a(  FF+	 +
 	)TVV%G%G"Nr   c                d   V ;P                   \        V P                  4      ,          un         V P                  V P                  ,            Fb  pWP                  9   WP                  9   ,          '       d   V P	                  WP                   4       KG  V P                  WP                   4       Kd  	  R # r   r   rF   s   & r   	test_ixorTestWeakSet.test_ixor=  sm    #dkk""**t{{**AZZA$455a(  FF+	 +r   c                   V P                   P                  4       pW,          pV P                  WP                   4       W,          pV P                  WP                   4       W,          pV P                  V\        4       4       V P                   P                  4       pW,          pV P                  V\        4       4       R # r   )r@   r   r]   r   )r   r   s   & r   test_inplace_on_self TestWeakSet.test_inplace_on_selfE  s    FFKKM	FF#	FF#	GI&FFKKM	GI&r   c                r   V P                  V P                  V P                  8H  4       V P                  V P                  \        V P                  4      8H  4       V P	                  V P                  \        V P                  4      8H  4       V P	                  V P                  \        V P                  4      8H  4       V P	                  V P                  \        V P                  4      8H  4       V P	                  V P                  \        \        .4      8H  4       V P	                  V P                  ^8H  4       R# r[   )	r}   r@   r   r5   r   rL   rj   rk   r	   r   s   &r   test_eqTestWeakSet.test_eqQ  s    $&&()'$**"5563tzz?234

#3345#4457C5>121%r   c                    V P                  V P                  \        V P                  4      8g  4       \	        4       p\	        4       pV P                  W8g  4       R # r   )r}   r@   rL   r5   r   r   )r   s1s2s   &  r   test_neTestWeakSet.test_ne[  s=    #djj/12YY"r   c                ~   R Uu. uF  p\        V4      NK  	  pp\        V4      p\        V4      p\        V4       VR \        P
                  ! 4        V P                  \        \        V4      4      \        V4      \        V4      ^,
          .4       ?V P                  \        V4      \        V4      4       R# u upi )r+   Nr0   )
r4   r   iternextrm   rn   rN   r^   rj   r]   )r   r2   r5   r@   its   &    r   !test_weak_destroy_while_iterating-TestWeakSet.test_weak_destroy_while_iteratinga  s     #22/Qa/2EN!WR"I


c$r(mc%j#e*q.%ABQU, 3s   B:c                  aa \         P                   Uu. uF  p\        V4      NK  	  upo\        S4      o\        P
                  VV3R  l4       pV! 4       ;_uu_ 4       pV P                  VS4       RRR4       V! 4       ;_uu_ 4       pV P                  \        SP                  V4       RRR4       V P                  XS4       V! 4       ;_uu_ 4       pSP                  V4       RRR4       V P                  VS4       SP                  4       pV! 4       ;_uu_ 4       pSP                  V4       RRR4       V P                  \        S4      \        V4      4       V! 4       ;_uu_ 4       pSP!                  4        RRR4       V P                  \        S4      ^ 4       R# u upi   + '       g   i     EL>; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i)c               3     <"    \        S4      p \        \        \        V 4      4      4      p\        \        SP	                  4       4      4      pW8X  d   \        V 4       \
        P                  ! 4        Vx  R p R #   R p i ; i5ir   )r  r4   strr  rl   rm   rn   )r  yieldedro   r5   r@   s      r   testcontextMTestWeakSet.test_weak_destroy_and_mutate_while_iterating.<locals>.testcontextu  sa     !Ws48}-UYY[)*< H

Ts   BA4A= 9B=BBN)r=   r>   r4   r   
contextlibcontextmanagerrc   rV   r   r   r   rN   r   r   r]   r^   r   )r   r2   r  ro   r   r5   r@   s   &    @@r   ,test_weak_destroy_and_mutate_while_iterating8TestWeakSet.test_weak_destroy_and_mutate_while_iteratingq  sV   "("6"67"6Qa"67EN		"	"	 
#	  ]]aQ" ]]ah!4 A]]aEE!H aFFH]]aHHQK QQ(]]aGGI Q#C 8& ]]]] ] ] ]sA   F# F(
"F<G G#-G6(F9	<G	G 	#G3	6H	c                   ^p\        V4       Uu. uF  p\        4       NK  	  pp\        V4      p?\        V4      p \	        V4       \        P                  ! 4        \        V4      p?\        P                  ! 4        \        P                  ! 4        \        V4      pV P                  VR4       V P                  V^ 4       R# u upi   \
         d     Li ; i)   N)r   r\   )r   r   r   r  r  StopIterationrm   rn   r^   rN   r]   )r   Nru   r5   r@   r  n1n2s   &       r   test_len_cyclesTestWeakSet.test_len_cycles  s    %*1X.XX.EN!W	H 	

V





Vb&!Q! /  		s   CC	 	CCc                d   V P                   ! \        P                  .\        P                  ! 4       O5!   \	        ^^d4       F  p^p\        P
                  ! ^ 4       \        P                  ! WV4       \	        V4       Uu. uF  p\        4       NK  	  pp\        V4      p?\        V4      p \        V4       \        V4      p?\        V4      pV P                  V^ 4       V P                  Wr4       V P                  V^ 4       V P                  W4       K  	  R# u upi   \         d     Lui ; ir[   )
addCleanuprm   set_thresholdget_thresholdr   rn   r   r   r  r  r  r^   assertGreaterEqualassertLessEqual)	r   thr  ru   r5   r@   r  r   r!  s	   &        r   test_len_raceTestWeakSet.test_len_race  s    ((>2+;+;+=>3-BAJJqMRR().q2AXZE2AaBR QBQB##B*  '##B*  ('   3 ! s   D.D!!D/.D/c                    R # r   r
   r   s   &r   	test_reprTestWeakSet.test_repr  s    r   c                    V P                  V P                  \        4       V P                  V P                  \        4       R # r   )assertIsInstancer@   r   r   r   s   &r   test_abcTestWeakSet.test_abc  s*    dffc*dffj1r   c                   \         \        3 EF  pV! V P                  4      pR .Vn        R.Vn        \
        P
                  ! V4      pV P                  W14       V P                  W24       V P                  W24       V P                  VP                  VP                  4       V P                  VP                  VP                  4       V P                  VR4       \
        P                  ! V4      pV P                  W14       V P                  W24       V P                  W24       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R4       EK  	  R# )r%   r3   r&   N)r   r$   r5   r%   r3   r   r1  r]   assertIsNotassertIsassertNotHasAttrdeepcopy)r   clsr@   r   s   &   r   test_copyingTestWeakSet.test_copying  sL   ,,CDJJA%AC%AC))A,C!!#+S$S$MM#%%%MM#%%%!!#s+--"C!!#+S$S$SUUACC(SUUACC(SUUACC(SUUACC(!!#s++ -r   )r7   r:   r8   r;   rC   r9   r<   rE   r5   r6   r?   rD   r@   N)5r   r   r   r   rG   rQ   rX   r`   rd   rq   rv   rz   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  r"  r+  r.  r2  r:  r   r   r   s   @r   r)   r)      s     & =5*-E"=
3F=
>=

E=
	500'5*
3)
1
+890:%
%
G,	O,O,
'&#- #$J ()012, ,r   r)   __main__)unittestweakrefr   r   r=   collectionsr   r4   collections.abcr   r   rm   r  testr   r	   r   r"   r$   TestCaser)   r   mainr
   r   r   <module>rD     sy        * + 	  	 	 	g 	w E,(## E,P zMMO r   