
    /hhϞ                        S SK r S SKrS SKrS SKJr   " S S\R
                  5      r " S S\R
                  5      r " S S\\R
                  5      r " S	 S
\5      r	 " S S\5      r
 " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r\S:X  a  \R$                  " 5         gg)    N)ExceptionIsLikeMixinc                   ,    \ rS rSrS rS rS rS rSrg)TestInvalidExceptStar   c                     / SQnU H.  nU R                  [        5         [        USS5        S S S 5        M0     g ! , (       d  f       MB  = f)N)z:try: pass
except ValueError: pass
except* TypeError: pass
z:try: pass
except* ValueError: pass
except TypeError: pass
z?try: pass
except ValueError as e: pass
except* TypeError: pass
z?try: pass
except* ValueError as e: pass
except TypeError: pass
z?try: pass
except ValueError: pass
except* TypeError as e: pass
z?try: pass
except* ValueError: pass
except TypeError as e: pass
z0try: pass
except ValueError: pass
except*: pass
z0try: pass
except* ValueError: pass
except: pass
<string>exec)assertRaisesSyntaxErrorcompile)selferrorserrs      >/opt/python-3.13.8/usr/lib/python3.13/test/test_except_star.py1test_mixed_except_and_except_star_is_syntax_errorGTestInvalidExceptStar.test_mixed_except_and_except_star_is_syntax_error   s>    	
 C"";/Z0 0/ //s	   :
A		c                     U R                  [        5          [        S5      e! / =[         =b  nS nAPO	S nAP  PO  P8=c     Os f = fS S S 5        g ! , (       d  f       g = f)Nblah)r
   	TypeErrorOSErrorExceptionGroupr   es     r   7test_except_star_ExceptionGroup_is_runtime_error_singleMTestInvalidExceptStar.test_except_star_ExceptionGroup_is_runtime_error_single   sC    y)fo%N  *))s   A# AA
A"c                     U R                  [        5          [        S[        S5      /5      e! / =[        [        4 =b    POP  PO  P8=c     Os f = fS S S 5        g ! , (       d  f       g = f)Neg*   )r
   r   r   
ValueErrorr   s    r   6test_except_star_ExceptionGroup_is_runtime_error_tupleLTestInvalidExceptStar.test_except_star_ExceptionGroup_is_runtime_error_tuple   sR    y)$TJrN+;<<Y/  *))s   A. AA
A-c                 b   U R                  [        5          [        e! / =S =b    POP  PO  P8=c     Os f = fS S S 5        O! , (       d  f       O= fU R                  [        5          [        e! / =[        S4 =b    POP  PO  P8=c     Os f = fS S S 5        g ! , (       d  f       g = f)Nr   )r
   r   r   r    s    r   'test_except_star_invalid_exception_type=TestInvalidExceptStar.test_except_star_invalid_exception_type%   s    y)  B  *)) y)  Z$  *))s6   A9A
A+B -A33BB  
B. N)	__name__
__module____qualname____firstlineno__r   r   r!   r$   __static_attributes__r&       r   r   r      s    1 r,   r   c                   <    \ rS rSrSrS rS rS rS rS r	S r
S	rg
)(TestBreakContinueReturnInExceptStarBlock3   zC'break', 'continue' and 'return' cannot appear in an except\* blockc                     U R                  [        U R                  5         [        [        R
                  " U5      SS5        S S S 5        g ! , (       d  f       g = f)Nr   r	   )assertRaisesRegexr   MSGr   textwrapdedent)r   srcs     r   check_invalid6TestBreakContinueReturnInExceptStarBlock.check_invalid7   s7    ##K:HOOC(*f= ;::s   "A
Ac                 j    U R                  S5        U R                  S5        U R                  S5        g )Nzy
            try:
                raise ValueError
            except* Exception as e:
                break
            z
            for i in range(5):
                try:
                    pass
                except* Exception as e:
                    if i == 2:
                        break
            z
            for i in range(5):
                try:
                    pass
                except* Exception as e:
                    if i == 2:
                        break
                finally:
                    return 0
            r6   r    s    r   test_break_in_except_starBTestBreakContinueReturnInExceptStarBlock.test_break_in_except_star;   s?    	 		 		
	r,   c                 j    U R                  S5        U R                  S5        U R                  S5        g )Nz
            for i in range(5):
                try:
                    raise ValueError
                except* Exception as e:
                    continue
            z
            for i in range(5):
                try:
                    pass
                except* Exception as e:
                    if i == 2:
                        continue
            z
            for i in range(5):
                try:
                    pass
                except* Exception as e:
                    if i == 2:
                        continue
                finally:
                    return 0
            r9   r    s    r   *test_continue_in_except_star_block_invalidSTestBreakContinueReturnInExceptStarBlock.test_continue_in_except_star_block_invalid[   s?    	 		 		
	r,   c                 H    U R                  S5        U R                  S5        g )Nz
            def f():
                try:
                    raise ValueError
                except* Exception as e:
                    return 42
            z
            def f():
                try:
                    pass
                except* Exception as e:
                    return 42
                finally:
                    finished = True
            r9   r    s    r   (test_return_in_except_star_block_invalidQTestBreakContinueReturnInExceptStarBlock.test_return_in_except_star_block_invalid{   s*    	 			r,   c                 6    [        S5      e! / =[         =b\  nSn[        S5       H  nUS:X  a  M  US:X  a    O	US-  nM     U R                  US5        U R                  WS5        UnS nAPO	S nAP  PO  P8=c     Os f = fU R	                  W[
        5        g )Nr   r               )r   	ExceptionrangeassertEqualassertIsInstancer   )r   r   countiexcs        r   .test_break_continue_in_except_star_block_validWTestBreakContinueReturnInExceptStarBlock.test_break_continue_in_except_star_block_valid   s    	R. 		 	E1X66
  UA&Q"C	 	c>2s    BAA.	)Bc                      [        S5      e! / =[         =b  nS nU" S5      nUnS nAPO	S nAP  PO  P8=c     Os f = fU R                  WS5        U R                  W[        5        g )Nr   c                     SU -  $ )N   r&   )xs    r   fZTestBreakContinueReturnInExceptStarBlock.test_return_in_except_star_block_valid.<locals>.f   s    s
r,   rF   r   )r   rG   rI   rJ   r   )r   r   rT   rrM   s        r   &test_return_in_except_star_block_validOTestBreakContinueReturnInExceptStarBlock.test_return_in_except_star_block_valid   s[    	R. 		 	!AC		
 	Ac>2s    ?,	?r&   N)r'   r(   r)   r*   r2   r6   r:   r=   r@   rN   rW   r+   r&   r,   r   r.   r.   3   s)    2C>@@*3"	3r,   r.   c                        \ rS rSrS rS rSrg)ExceptStarTest   c                 2   Ub  Uc  U R                  US L =(       a    US L 5        g U R                  UR                  UR                  5        U R                  UR                  UR                  5        U R                  UR                  UR                  5        g N)
assertTruerI   __context__	__cause____traceback__r   e1e2s      r   assertMetadataEqual"ExceptStarTest.assertMetadataEqual   sp    :OOB$J52:6R^^R^^<R\\2<<8R--r/?/?@r,   c                     Ub  Uc  U R                  X5        g UR                  UR                  :H  =(       a9    UR                  UR                  :H  =(       a    UR                  UR                  :H  (       + $ r]   )assertNotEqualr_   r`   ra   rb   s      r   assertMetadataNotEqual%ExceptStarTest.assertMetadataNotEqual   se    :'"..8 ALLBLL8A,,0@0@@B Br,   r&   N)r'   r(   r)   r*   re   ri   r+   r&   r,   r   rZ   rZ      s    ABr,   rZ   c                       \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rSrg)TestExceptStarSplitSemantics   c                    [         R                  " 5       nS =n=px  Ue! / =U =b$  n	[         R                  " 5       nU	nS n	A	PO	S n	A	P  PO  P8=c     Os f = f! [         a  n	U	n S n	A	OS n	A	ff = fU R                  Xg5        U R	                  Xs5        U R	                  X5        U R                  [         R                  " 5       U5        g r]   )sys	exceptionBaseExceptionrI   assertExceptionIsLike
r   rM   Tmatch_templaterest_templateinitial_sys_exceptionsys_exceptionmatchrestr   s
             r   doSplitTestNamed-TestExceptStarSplitSemantics.doSplitTestNamed   s     #'+++		A  #  	D	 	.""59""47*?@s1    	AA	AA A 
A0$A++A0c                 h   [         R                  " 5       nS =n=px  Ue! / =U =b    [         R                  " 5       =pgPOP  PO  P8=c     Os f = f! [         a  n	U	n S n	A	OS n	A	ff = fU R	                  Xs5        U R	                  X5        U R                  [         R                  " 5       U5        g r]   )ro   rp   failrq   rr   rI   rs   s
             r   doSplitTestUnnamed/TestExceptStarSplitSemantics.doSplitTestUnnamed   s     #'+++		6	8A 8(+78
  	D	""59""47*?@s1    	AA 	AA A 
A)A$$A)c                      [        S[        S5      [        S5      /5      e! [         a'    U R	                  XX45        U R                  XX45         g f = fNr   rE   rR   r   r   r   rG   r{   r   r   rM   rt   ru   rv   s        r   doSplitTestInExceptHandler7TestExceptStarSplitSemantics.doSplitTestInExceptHandler   sS    	K 	!jm'DEE 	K!!#.H##CNJ	Ks    " .AAc           
           [        S[        S5      [        S5      /5      e! / =[         =b+    U R	                  XX45        U R                  XX45        POP  PO  P8=c     g s f = fr   r   r   s        r   doSplitTestInExceptStarHandler;TestExceptStarSplitSemantics.doSplitTestInExceptStarHandler   sZ    	K 	!jm'DEE	K	 	K!!#.H##CNJ	Ks    " A%$A	A%c                     U R                  XX45        U R                  XX45        U R                  XX45        U R                  XX45        g r]   )r{   r   r   r   r   s        r   doSplitTest(TestExceptStarSplitSemantics.doSplitTest   sB    cnDF''N++CNRr,   c                     U R                  [        S[        S5      [        S5      /5      [        S [        S[        S5      [        S5      /5      5        g )Ntest1Vrt   )r   r   r   r   r   r    s    r   test_no_match_single_type6TestExceptStarSplitSemantics.test_no_match_single_type   sE    7Z_in$EF7Z_in$EF		Hr,   c                     U R                  [        S[        S5      [        S5      /5      [        [        S[        S5      [        S5      /5      S 5        g )Ntest2V1V2)r   r   r   r    s    r   test_match_single_type3TestExceptStarSplitSemantics.test_match_single_type   sH    7Z%5z$7G$HI7Z%5z$7G$HI		r,   c                     U R                  [        S[        S5      [        S5      [        S5      /5      [        [        S[        S5      [        S5      /5      [        S[        S5      /5      5        g )Ntest3r   OSr   )r   r   r   r   r    s    r   $test_match_single_type_partial_matchATestExceptStarSplitSemantics.test_match_single_type_partial_match  sb    D!74=*T2BCE 7Z%5z$7G$HI7WT]O4	6r,   c                 z   U R                  [        S[        S5      [        S5      [        S[        S5      [        S5      [	        S5      /5      /5      [        [        S[        S5      [        S[        S5      /5      /5      [        S[        S5      [        S[        S5      [	        S5      /5      /5      5        g )Ng1r   OS1g2OS2r   rt   r   r   r   r   r   r    s    r   test_match_single_type_nested:TestExceptStarSplitSemantics.test_match_single_type_nested  s    4 ENt$cN$%&' 4 tj&6%78:; 4tENIcN&4 5"6 7	8r,   c                    U R                  [        S[        S5      [        S5      [        S[        S5      [        S5      [	        S5      /5      /5      [        [        4[        S[        S5      [        S[        S5      [	        S5      /5      /5      [        S[        S5      [        S[        S5      /5      /5      5        g )Nh1r   r   h2r   r   rt   r   r    s    r   test_match_type_tuple_nested9TestExceptStarSplitSemantics.test_match_type_tuple_nested"  s    4 75>:d+;Ys^LNOP #4 tj&6	#%GHJK tgen%5689	:r,   c                    U R                  [        S[        S[        S5      /5      [        S[        S5      [        S5      /5      [        S[        S5      /5      /5      [        [        S[        S[        S5      /5      [        S[        S5      /5      /5      [        S[        S[        S5      /5      [        S[        S5      /5      /5      5        g )	Nr   i1r   i2r   T1i3T2r   r   r   r   r    s    r   test_empty_groups_removed6TestExceptStarSplitSemantics.test_empty_groups_removed4  s    tj&6%78tj&6	$%HItio%679:
 4tio%67tio%67"9 : 4"4*T*:);<"4*T*:);<"> ?	@r,   c                 Z   U R                  [        S[        S[        S[        S5      /5      [        S[        S5      /5      /5      /5      [        [        S[        S[        S[        S5      /5      /5      /5      [        S[        S[        S[        S5      /5      /5      /5      5        g )Nj1j2j3r   j4rt   r   r    s    r   test_singleton_groups_are_kept;TestExceptStarSplitSemantics.test_singleton_groups_are_keptC  s    4t"4*T*:);<"4)C.)9:&< ="> ? ~dYs^<L'M&NOPR ~dZ=M<N'O&PQRT	Ur,   c           
      n    U R                  [        S5      [        [        S[        S5      /5      S 5        g Nr    )r   r   r   r    s    r   %test_naked_exception_matched_wrapped1BTestExceptStarSplitSemantics.test_naked_exception_matched_wrapped1Q  s.    sO2
301		r,   c           
      n    U R                  [        S5      [        [        S[        S5      /5      S 5        g r   )r   r   rG   r   r    s    r   %test_naked_exception_matched_wrapped2BTestExceptStarSplitSemantics.test_naked_exception_matched_wrapped2X  s.    sO2
301		r,   c           
          U R                  [        S[        S5      /5      [        [        S[        S5      /5      S 5        g )Nr   r   )r   r   r   rG   r    s    r   6test_exception_group_except_star_Exception_not_wrappedSTestExceptStarSplitSemantics.test_exception_group_except_star_Exception_not_wrapped_  s8    4*S/!234*S/!23		r,   c                 X    U R                  [        S5      [        S [        S5      5        g )Nr   )r   r   r   r    s    r    test_plain_exception_not_matched=TestExceptStarSplitSemantics.test_plain_exception_not_matchedf  s$    sOsO		r,   c                     U R                  [        S[        S5      [        S5      /5      [        [        S[        S5      /5      [        S[        S5      /5      5        g )Nstiort   )r   r   BlockingIOErrorr   r   r    s    r   test_match__supertype2TestExceptStarSplitSemantics.test_match__supertypem  sN    4/$"73!HI4/$"7!894)C.!12		4r,   c                 V    [        S[        S5      [        S5      /5      e! / =[         =b1  nU R                  U[        S[        S5      /5      5        S nAOS nAP  O  [         =b3  nU R                  U[        S[        S5      /5      5        S nAPO	S nAP  PO  P8=c     g s f = f)Nmmnosr   )r   r   r   rr   r~   r   s     r   test_multiple_matches_named8TestExceptStarSplitSemantics.test_multiple_matches_namedt  s    		. 8M(NOO	@ 	@&&qut'<&=>@ @	@  	8&&quwt}o68 8	8s     " B(&A	B(*&B	B(c                     [        S[        S5      [        S5      /5      e! / =[         =b@    [        R                  " 5       nU R                  U[        S[        S5      /5      5        OP  O  [         =bB    [        R                  " 5       nU R                  U[        S[        S5      /5      5        POP  PO  P8=c     g s f = f)Nmmur   r   )r   r   r   ro   rp   rr   r~   r   s     r   test_multiple_matches_unnamed:TestExceptStarSplitSemantics.test_multiple_matches_unnamed  s    	. 8M(NOO	@ 	@A&&qut'<&=>@	@  	8A&&quwt}o68	8s     " C;A+	*C9;B6	4Cc                     [        S[        S5      /5      e! / =[         =b1  nU R                  U[        S[        S5      /5      5        S nAOS nAP  O  [         =b    U R	                  S5        POP  PO  P8=c     g s f = f)Nfstr   z#Should have been matched as OSError)r   r   r   rr   r~   r   s     r   test_first_match_wins_named8TestExceptStarSplitSemantics.test_first_match_wins_named  sz    	. )>(?@@	@ 	@&&qut'<&=>@ @	@   	=II;<	=s     B&A	B A3	1Bc                     [        S[        S5      /5      e! / =[         =b@    [        R                  " 5       nU R                  U[        S[        S5      /5      5        OP  O  [         =b    POP  PO  P8=c     g s f = f)Nfstur   )r   r   r   ro   rp   rr   r~   r   s     r   test_first_match_wins_unnamed:TestExceptStarSplitSemantics.test_first_match_wins_unnamed  su    		. /$*?)@AA	A 	AA&&qv(='>?A	A   		s    B;A!	 Bc                 \    [        S[        S5      /5      e! / =[         =b{     [        S[        S5      /5      e! / =[         =b    POP  PO  P8=c     Os f = f[        R
                  " 5       nU R                  U[        S[        S5      /5      5        POP  PO  P8=c     g s f = f)Nnr   )r   r   r   r~   ro   rp   rr   r   s     r   test_nested_except_stars5TestExceptStarSplitSemantics.test_nested_except_stars  s    	. t'<&=>>		? 		?2$S:d+;*<==J  A&&qod&;%<=?		?s    B+<AAB	B+c                     [        S5       H  n [        S[        S5      /5      e   g ! / =[         =b    POP  PO  P8=c     M:  s f = f)NrR   nlr   )rH   r   r   r~   )r   _s     r   test_nested_in_loop0TestExceptStarSplitSemantics.test_nested_in_loop  sB    qA2$TOD,A+BCC O s	   )A	r&   N)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   rl   rl      s}    A"A"KKSH68*:$@U4
..	.
.. 2r,   rl   c                   D    \ rS rSrS rS rS rS rS rS r	S r
S	 rS
rg)TestExceptStarReraisei  c                 n     [        S[        S5      [        S5      [        S5      /5      e! / =[         =b  ne S nAP  O  [         =b	  ne S nAP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R	                  W[        S[        S5      [        S5      [        S5      /5      5        g Nr   rE   rR   rF   r   r   r   r   rr   r   r   rM   s      r   test_reraise_all_named,TestExceptStarReraise.test_reraise_all_named  s    
	$9Q<A
CE EI    	C	 	""4)A,
1wqz!JK	Ms<   *- A ;	A A	A A# A# #
A9-A44A9c                 b     [        S[        S5      [        S5      [        S5      /5      e! / =[         =b    e P  O  [         =b    e P  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R	                  W[        S[        S5      [        S5      [        S5      /5      5        g r   r   r   s      r   test_reraise_all_unnamed.TestExceptStarReraise.test_reraise_all_unnamed  s    
	$9Q<A
CE EI    	C	 	""4)A,
1wqz!JK	Ms<   *- A;	A	A
	
AA A 
A3'A..A3c           
      b     [        S[        S5      [        S5      [        S5      /5      e! / =[         =b  ne S nAP  O  [         =b  nS nAPO	S nAP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R	                  W[        S[        S5      [        S5      /5      5        g r   r   r   s      r   "test_reraise_some_handle_all_named8TestExceptStarReraise.test_reraise_some_handle_all_named      
	$9Q<A
CE EI    	C	 	""y|WQZ&@A	C0   *- A$;	$A$A' !A' '
A=1A88A=c           	      (     [        S[        S5      [        S5      /5      e! / =[         =b    e P  O  [         =b    POP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R                  W[        S[        S5      /5      5        g r   )r   r   r   rr   r   s      r   'test_reraise_partial_handle_all_unnamed=TestExceptStarReraise.test_reraise_partial_handle_all_unnamed  s    		$9Q<A79 9I   	C	 	""y|n5	7s0    # A1	AA A 
A*A%%A*c           
      b     [        S[        S5      [        S5      [        S5      /5      e! / =[         =b  ne S nAP  O  [         =b  nS nAPO	S nAP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R	                  W[        S[        S5      [        S5      /5      5        g r   r   r   s      r   &test_reraise_partial_handle_some_named<TestExceptStarReraise.test_reraise_partial_handle_some_named  r   r   c           
      P     [        S[        S5      [        S5      [        S5      /5      e! / =[         =b    e P  O  [         =b    POP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R	                  W[        S[        S5      [        S5      /5      5        g r   r   r   s      r   (test_reraise_partial_handle_some_unnamed>TestExceptStarReraise.test_reraise_partial_handle_some_unnamed  s    		$9Q<A
CE EI   	C	 	""y|WQZ&@A	Cs0   *- A;	AA A 
A4(A//A4c           	            [        S5      e! / =[          =b	  ne S nAP  PO  P8=c     Os f = f! [         a  nUn S nAOS nAff = fU R                  W[        S[        S5      /5      5        g Nr   r   r   r   rr   r   s      r   "test_reraise_plain_exception_named8TestExceptStarReraise.test_reraise_plain_exception_named   se    	 n$J  	C	 	""Z^$45	7s(    /	/2 2 
AAAc           	            [        S5      e! / =[          =b    e P  PO  P8=c     Os f = f! [         a  nUn S nAOS nAff = fU R                  W[        S[        S5      /5      5        g r  r  r   s      r   $test_reraise_plain_exception_unnamed:TestExceptStarReraise.test_reraise_plain_exception_unnamed,  se    	 n$J  	C	 	""Z^$45	7s(    ,	,/ / 
AA  Ar&   N)r'   r(   r)   r*   r   r   r   r   r   r   r  r  r+   r&   r,   r   r   r     s/    M"M"C 7C C
7
7r,   r   c                   8    \ rS rSrS rS rS rS rS rS r	Sr
g	)
TestExceptStarRaisei9  c                 <   [        S[        S5      [        S5      /5      n  Ue! / =[         =b  n[        S5      eS nAP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R	                  W[        S[        S5      [        S[        S5      /5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R                  X5        U R                  XR
                  S   R                  5        g Nr   rE   rR   rF   r   r   	r   r   r   r   rr   
exceptionsr_   ri   re   r   origr   rM   s       r   test_raise_named$TestExceptStarRaise.test_raise_named:  s    dZ]GAJ$?@	#
#G #l"# 	C	 	""Yq\>$A#HIK	L
 	""NN1))4'!*.	0 	##D.  ~~a'8'D'DEs0   % A=	AA A 
A)A$$A)c                 6   [        S[        S5      [        S5      /5      n  Ue! / =[         =b    [        S5      eP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R	                  W[        S[        S5      [        S[        S5      /5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R                  X5        U R                  XR
                  S   R                  5        g r  r  r  s       r   test_raise_unnamed&TestExceptStarRaise.test_raise_unnamedP  s    dZ]GAJ$?@	#
#G #l"# 	C	 	""Yq\>$A#HIK	L
 	""NN1))4'!*.	0 	##D.  ~~a'8'D'DEs0   % A=	AA 
A 
A&A!!A&c           
         [        S[        S5      [        S5      /5      n  Ue! / =[        [        4 =b  n[        S5      eS nAP  PO  P8=c     Os f = f! [         a  nUn S nAOS nAff = fU R	                  W[        S5      5        U R	                  UR
                  [        S[        S5      [        S5      /5      5        U R                  X5        U R                  XR
                  5        g r   r   r   r   r   rr   r_   ri   re   r  s       r   %test_raise_handle_all_raise_one_named9TestExceptStarRaise.test_raise_handle_all_raise_one_namedf      dYq\:a=$AB	%
%Y
+ %!!n$% 	C	 	""3A7""OO4)A,
1!>?	A 	##D.  72   % AA	AA A 
A/#A**A/c           
         [        S[        S5      [        S5      /5      n  Ue! / =[        [        4 =b  n[        S5      eS nAP  PO  P8=c     Os f = f! [         a  nUn S nAOS nAff = fU R	                  W[        S5      5        U R	                  UR
                  [        S[        S5      [        S5      /5      5        U R                  X5        U R                  XR
                  5        g r   r  r  s       r   'test_raise_handle_all_raise_one_unnamed;TestExceptStarRaise.test_raise_handle_all_raise_one_unnamedy  r  r  c           
      (   [        S[        S5      [        S5      /5      n  Ue! / =[         =b  n[        S5      eS nAP  O  [         =b  n[        S5      eS nAP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R	                  W[        S[        S5      [        S5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R                  X5        U R                  XR
                  S   R                  5        U R                  XR
                  S   R                  5        g Nr   rE   rR   rF   rD   r   r   	r   r   r   r   rr   r  r_   ri   re   r  s       r   %test_raise_handle_all_raise_two_named9TestExceptStarRaise.test_raise_handle_all_raise_two_named  sM   dYq\:a=$AB	%
%I %!!n$% %!!n$% 	C	 	""[^[^$DE	G 	""NN1))4)A,0	2 	""NN1))4*Q-1	3 	##D.  ~~a'8'D'DE  ~~a'8'D'DEs<   % A,=	A,A	A,'A/ )A/ /
B9B  Bc           
         [        S[        S5      [        S5      /5      n  Ue! / =[         =b    [        S5      eP  O  [         =b    [        S5      eP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R	                  W[        S[        S5      [        S5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R                  X5        U R                  XR
                  S   R                  5        U R                  XR
                  S   R                  5        g r   r!  r  s       r   'test_raise_handle_all_raise_two_unnamed;TestExceptStarRaise.test_raise_handle_all_raise_two_unnamed  sM   dYq\:a=$AB	%
%I %!!n$% %!!n$% 	C	 	""[^[^$DE	G 	""NN1))4)A,0	2 	""NN1))4*Q-1	3 	##D.  ~~a'8'D'DE  ~~a'8'D'DEs<   % A&=	A&A	A&!A) #A) )
A?3A::A?r&   Nr'   r(   r)   r*   r  r  r  r  r"  r%  r+   r&   r,   r   r
  r
  9  s$    F,F,8&8&F6Fr,   r
  c                   8    \ rS rSrS rS rS rS rS rS r	Sr
g	)
TestExceptStarRaiseFromi  c                    [        S[        S5      [        S5      /5      n  Ue! / =[         =b  n[        S5      UeS nAP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R	                  W[        S[        S5      [        S[        S5      /5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R                  X5        U R                  XR
                  S   R                  5        U R                  XR
                  S   R                  5        U R                  XR
                  S   R                  5        U R                  XR
                  S   R                  5        g r  )
r   r   r   r   rr   r  r_   r`   ri   re   r  s       r   r  (TestExceptStarRaiseFrom.test_raise_named  s   dZ]GAJ$?@	*
*G *l)* 	C	 	""Yq\>$A#HIK	L
 	""NN1))4'!*.	0 	""NN1''4'!*.	0 	##D.  ~~a'8'D'DE  ~~a'8'B'BC##D..*;*G*GH##D..*;*E*EFs0   % A>	AA A 
A*A%%A*c                    [        S[        S5      [        S5      /5      n  Ue! / =[         =b&    [        R                  " 5       n[        S5      UeP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R                  W[        S[        S5      [        S[        S5      /5      /5      5        U R                  UR                  S   R                  [        S[        S5      /5      5        U R                  UR                  S   R                  [        S[        S5      /5      5        U R                  X5        U R                  XR                  S   R                  5        U R                  XR                  S   R                  5        U R                  XR                  S   R                  5        U R                  XR                  S   R                  5        g r  )r   r   r   ro   rp   r   rr   r  r_   r`   ri   re   r  s       r   r  *TestExceptStarRaiseFrom.test_raise_unnamed  s   dZ]GAJ$?@	*
*G *MMOl)*  	C	 	""Yq\>$A#HIK	L
 	""NN1))4'!*.	0 	""NN1''4'!*.	0 	##D.  ~~a'8'D'DE  ~~a'8'B'BC##D..*;*G*GH##D..*;*E*EFs2   % A#!A	A#A&  A& &
A<0A77A<c           
         [        S[        S5      [        S5      /5      n  Ue! / =[        [        4 =b  n[        S5      UeS nAP  PO  P8=c     Os f = f! [         a  nUn S nAOS nAff = fU R	                  W[        S5      5        U R	                  UR
                  [        S[        S5      [        S5      /5      5        U R	                  UR                  [        S[        S5      [        S5      /5      5        U R                  X5        U R                  XR
                  5        U R                  XR                  5        g r   )	r   r   r   r   rr   r_   r`   ri   re   r  s       r   r  =TestExceptStarRaiseFrom.test_raise_handle_all_raise_one_named  s
   dYq\:a=$AB	,
,Y
+ ,!!n!+, 	C	 	""3A7""OO4)A,
1!>?	A 	""MM4)A,
1!>?	A 	##D.  7  }}5s2   % AA	AA A 
A0$A++A0c           
         [        S[        S5      [        S5      /5      n  Ue! / =[        [        4 =b)  n[        R                  " 5       n[        S5      UeS nAP  PO  P8=c     Os f = f! [
         a  nUn S nAOS nAff = fU R                  W[        S5      5        U R                  UR                  [        S[        S5      [        S5      /5      5        U R                  UR                  [        S[        S5      [        S5      /5      5        U R                  X5        U R                  XR                  5        U R                  XR                  5        g r   )r   r   r   ro   rp   r   rr   r_   r`   ri   re   r  s       r   r  ?TestExceptStarRaiseFrom.test_raise_handle_all_raise_one_unnamed  s   dYq\:a=$AB	,
,Y
+ ,MMO!!n!+,  	C	 	""3A7""OO4)A,
1!>?	A 	""MM4)A,
1!>?	A 	##D.  7  }}5s2   % A,!A	A,'A/ )A/ /
B9B  Bc           
          [        S[        S5      [        S5      /5      n  Ue! / =[         =b  n[        S5      UeS nAP  O  [         =b  n[        S5      UeS nAP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R	                  W[        S[        S5      [        S5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R	                  UR
                  S   R                  [        S[        S5      /5      5        U R                  X5        U R                  XR
                  S   R                  5        U R                  XR
                  S   R                  5        g r   )
r   r   r   r   rr   r  r_   r`   ri   re   r  s       r   r"  =TestExceptStarRaiseFrom.test_raise_handle_all_raise_two_named0  s   dYq\:a=$AB	,
,I ,!!n!+, ,!!n!+, 	C	 	""[^[^$DE	G 	""NN1))4)A,0	2 	""NN1''4)A,0	2 	""NN1))4*Q-1	3 	""NN1''4*Q-1	3 	##D.  ~~a'8'D'DE  ~~a'8'B'BCs<   % A.>	A.A	A.)A1 +A1 1
B;BBc           
         [        S[        S5      [        S5      /5      n  Ue! / =[         =b%    [        R                  " 5       n[        S5      UeP  O  [         =b&    [        R                  " 5       n[        S5      UeP  PO  P8=c     Os f = f! [          a  nUn S nAOS nAff = fU R                  W[        S[        S5      [        S5      /5      5        U R                  UR                  S   R                  [        S[        S5      /5      5        U R                  UR                  S   R                  [        S[        S5      /5      5        U R                  UR                  S   R                  [        S[        S5      /5      5        U R                  UR                  S   R                  [        S[        S5      /5      5        U R                  X5        U R                  XR                  S   R                  5        U R                  XR                  S   R                  5        U R                  XR                  S   R                  5        U R                  XR                  S   R                  5        g r   )r   r   r   ro   rp   r   rr   r  r_   r`   ri   re   r  s       r   r%  ?TestExceptStarRaiseFrom.test_raise_handle_all_raise_two_unnamedS  s	   dYq\:a=$AB
	,
,I ,MMO!!n!+,  ,MMO!!n!+,  	C	 	""[^[^$DE	G 	""NN1))4)A,0	2 	""NN1''4)A,0	2 	""NN1))4*Q-1	3 	""NN1''4*Q-1	3 	##D.  ~~a'8'D'DE  ~~a'8'B'BC  ~~a'8'D'DE  ~~a'8'B'BCs>   % B!A	B!!B	BB B 
B+B&&B+r&   Nr'  r&   r,   r   r)  r)    s%    G:G<6062!DF%Dr,   r)  c                   &    \ rS rSrS rS rS rSrg)$TestExceptStarExceptionGroupSubclassi{  c                   ^  " U4S jS[         5      m    [        S5      e! [         a  nT" SU/S5      S eS nAff = f! T a.  n [        S5      e! [         a  nT" SX2/S5      eS nAff = fS nAff = f! / =[         =b  nUnS nAPO	S nAP  PO  P8=c     Os f = f! T a  nUn S nAOS nAff = fU R                  WT5        U R                  WT5        U R                  UR                  S	   T5        U R                  XV5        U R                  UR                  S5        U R                  UR                  S5        U R                  UR                  S	   R                  S5        g )
Nc                   6   >^  \ rS rSrU 4S jrU4S jrSrU =r$ )MTestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass.<locals>.EGi}  c                 4   > [         TU ]  XU5      nX4l        U$ r]   )super__new__code)clsmessageexcsr>  obj	__class__s        r   r=  UTestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass.<locals>.EG.__new__~  s    gocD9
r,   c                 >   > T" U R                   XR                  5      $ r]   )r@  r>  )r   rA  EGs     r   deriveTTestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass.<locals>.EG.derive  s    $,,ii88r,   r&   )r'   r(   r)   r*   r=  rG  r+   __classcell__)rC  rF  s   @r   rF  r:  }  s    
9 9r,   rF  rR   nestede   rE   r   r   r   )r   r   r   rJ   r  re   rI   r>  )r   terJ  ver   vegtegrF  s          @r   test_except_star_EG_subclassATestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass|  sN   	9 	9		9@'l*$ @ B454?@ 99(m+% 9 |R8899
J  	C	 	c2&c2&cnnQ/4  *2&2&*//5su   # 
>9>A A5A
A-A((A--A00A55A8 8BB	BB" B" "B4(B//B4c           	      F  ^  " U4S jS[         5      m  T" S[        S5      [        S5      /5      e! / =[         =b
  nUne S nAP  O  [         =b  nUnS nAPO	S nAP  PO  P8=c     Os f = f! [         a  nUn S nAOS nAff = fWWW4 H&  nU R	                  U5        U R                  UT5        M(     U R                  UT" S[        S5      /5      5        U R                  UT" S[        S5      /5      5        U R                  UT" S[        S5      /5      5        g )Nc                   (   > \ rS rSrS rU 4S jrSrg)YTestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclass.<locals>.FalsyEGi  c                     gNFr&   r    s    r   __bool__bTestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclass.<locals>.FalsyEG.__bool__  s    r,   c                 *   > T" U R                   U5      $ r]   )r@  )r   rA  FalsyEGs     r   rG  `TestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclass.<locals>.FalsyEG.derive  s    t||T22r,   r&   N)r'   r(   r)   r*   rW  rG  r+   )rZ  s   r   rZ  rT    s    3 3r,   rZ  r   rE   rR   )r   r   r   rG   assertFalserJ   rr   )r   r   tesvesrM   rZ  s        @r   #test_falsy_exception_group_subclassHTestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclass  s   	3n 	3
	dYq\:a=$ABBI     	C	 sCAQ!!!W- ! 	""3y|n(EF""3y|n(EF""3z!}o(FGs?   3 A. A	A.A	A.)A1 +A1 1
B;BBc           	      P    " S S[         5      n " S S[         5      nU" S[        S5      [        S5      /5      S4U" S[        S5      [        S5      /5      S	4/nU H  u  pEU R                  [        U5       n Ue    " S
 S[         5      n U" S[        S5      [        S5      /5      e! / =[         =b    OP  O  [         =b    POP  PO  P8=c     Os f = fS S S 5        O! , (       d  f       O= fU R                  WR                  R                  U5        M  ! / =[         =b  nUn	S nAOS nAP  O  [         =b  nUn
S nAPO	S nAP  PO  P8=c     Os f = fU R                  W	U" S[        S5      /5      5        U R                  W
U" S[        S5      /5      5        g )Nc                       \ rS rSrS rSrg)fTestExceptStarExceptionGroupSubclass.test_exception_group_subclass_with_bad_split_func.<locals>.BadEG1i  c                     g)NNOT A 2-TUPLE!r&   r   argss     r   splitlTestExceptStarExceptionGroupSubclass.test_exception_group_subclass_with_bad_split_func.<locals>.BadEG1.split  s    'r,   r&   Nr'   r(   r)   r*   rh  r+   r&   r,   r   BadEG1rc    s    (r,   rk  c                       \ rS rSrS rSrg)fTestExceptStarExceptionGroupSubclass.test_exception_group_subclass_with_bad_split_func.<locals>.BadEG2i  c                     g)N)re  r&   rf  s     r   rh  lTestExceptStarExceptionGroupSubclass.test_exception_group_subclass_with_bad_split_func.<locals>.BadEG2.split  s    *r,   r&   Nrj  r&   r,   r   BadEG2rm    s    +r,   rp  r   {   i  z"split must return a tuple, not strz0split must return a 2-tuple, got tuple of size 1c                   (   ^  \ rS rSrU 4S jrSrU =r$ )gTestExceptStarExceptionGroupSubclass.test_exception_group_subclass_with_bad_split_func.<locals>.WeirdEGi  c                 $   > [         TU ]  " U6 S-   $ )N)anythingi@ N)r<  rh  )r   rg  rC  s     r   rh  mTestExceptStarExceptionGroupSubclass.test_exception_group_subclass_with_bad_split_func.<locals>.WeirdEG.split  s    w}d+.HHHr,   r&   )r'   r(   r)   r*   rh  r+   rI  )rC  s   @r   WeirdEGrs    s    I Ir,   rw  )r   r   r   r1   r   rr   rp   r_   )r   rk  rp  eg_listeg_classmsgmrw  r   oegrN  s              r   1test_exception_group_subclass_with_bad_split_funcVTestExceptStarExceptionGroupSubclass.test_exception_group_subclass_with_bad_split_func  st   	(^ 	(	+^ 	+
 D73<C9:24D73<C9:@B
 %MH''	371"N %	In 	I	$z# ?@@
   877 &&q{{'>'>I	 	C	 	C	 	""3ws|n(EF""3z#6G(HIsB   :C'<B-D  -)CC''
C5	 E-D3	/EE	Er&   N)r'   r(   r)   r*   rP  r_  r}  r+   r&   r,   r   r7  r7  {  s    !6FH8)Jr,   r7  c                       \ rS rSrS rSrg)TestExceptStarCleanupi  c                      [        S5      e!    [        [        5      e! / =[         =b    POP  PO  P8=c     Os f = fSS-     O= f! [         a  nUn S nAOS nAff = fU R	                  W[        S5      5        U R	                  UR                  [        S5      5        U R                  [        R                  " 5       S 5        g )Nr   rE   r   zdivision by zero)
r   r   intrG   rr   ZeroDivisionErrorr_   rI   ro   rp   r   s      r   test_sys_exception_restored1TestExceptStarCleanup.test_sys_exception_restored  s    
	 n$#C.(	 ! 	C	 	""3(9:L(MN""3??JrNC$/s4    A	 ?A	A 	A 
A"AA"r&   N)r'   r(   r)   r*   r  r+   r&   r,   r   r  r    s    0r,   r  c                       \ rS rSr " S S\5      r " S S\5      r " S S\5      r " S S	\5      rS
 r	S r
S rS rS rS rS rSrg)"TestExceptStar_WeirdLeafExceptionsi  c                       \ rS rSrSrSrg)0TestExceptStar_WeirdLeafExceptions.UnhashableExci  Nr&   )r'   r(   r)   r*   __hash__r+   r&   r,   r   UnhashableExcr    s    r,   r  c                       \ rS rSrS rSrg)1TestExceptStar_WeirdLeafExceptions.AlwaysEqualExci  c                     gNTr&   r   others     r   __eq__8TestExceptStar_WeirdLeafExceptions.AlwaysEqualExc.__eq__      r,   r&   Nr'   r(   r)   r*   r  r+   r&   r,   r   AlwaysEqualExcr    s    	r,   r  c                       \ rS rSrS rSrg)0TestExceptStar_WeirdLeafExceptions.NeverEqualExci  c                     grV  r&   r  s     r   r  7TestExceptStar_WeirdLeafExceptions.NeverEqualExc.__eq__      r,   r&   Nr  r&   r,   r   NeverEqualExcr    s    	r,   r  c                       \ rS rSrS rSrg)1TestExceptStar_WeirdLeafExceptions.BrokenEqualExci	  c                     [        5       er]   RuntimeErrorr  s     r   r  8TestExceptStar_WeirdLeafExceptions.BrokenEqualExc.__eq__
  
    . r,   r&   Nr  r&   r,   r   BrokenEqualExcr  	  s    	!r,   r  c                 j    U R                   U R                  U R                  U R                  /U l        g r]   )r  r  r  r  	bad_typesr    s    r   setUp(TestExceptStar_WeirdLeafExceptions.setUp  s/    ,,--,,--/r,   c                     Su  p4  Ue! / =U =b  nUnS nAPO	S nAP  PO  P8=c     X44$ s f = f! [          a  nUn S nAX44$ S nAff = fN)NNrG   r   r   typery   rz   r   s         r   except_type.TestExceptStar_WeirdLeafExceptions.except_type  Z     	D  {  	D{	(   	 	.	.1 1 
A	AA	c                 t   U R                    H  nU R                  U5         [        S[        S5      U" S5      /5      nU R	                  X!5      u  p4U R                  U[        SU" S5      /5      5        U R                  U[        S[        S5      /5      5        S S S 5        M     g ! , (       d  f       M  = fr   r  subTestr   r   r  rr   r   Badr   ry   rz   s        r   $test_catch_unhashable_leaf_exceptionGTestExceptStar_WeirdLeafExceptions.test_catch_unhashable_leaf_exception  s    >>Cc"#D9Q<Q*@A"..r7**>$Q9;**.	!~>@ #" """s   A:B((
B7	c                 ~   U R                    H  nU R                  U5         [        S[        S5      U" S5      /5      nU R	                  U[        5      u  p4U R                  U[        S[        S5      /5      5        U R                  U[        SU" S5      /5      5        S S S 5        M     g ! , (       d  f       M  = fr   r  r  s        r   test_propagate_unhashable_leafATestExceptStar_WeirdLeafExceptions.test_propagate_unhashable_leaf(  s    >>Cc"#D9Q<Q*@A"..r9=**>$1?A**.Ax8: #" """s   A?B--
B<	c           	      0   U R                    Ht  nU R                  U5         [        S[        S5      U" S5      /5      nU R	                  U[
        5      u  p4U R                  U5        U R                  XB5        S S S 5        Mv     g ! , (       d  f       M  = fr   )r  r  r   r   r  r   assertIsNonerr   r  s        r   "test_catch_nothing_unhashable_leafETestExceptStar_WeirdLeafExceptions.test_catch_nothing_unhashable_leaf2  st    >>Cc"#D9Q<Q*@A"..r7;!!%(**44	 #" """   AB
B	c           	      0   U R                    Ht  nU R                  U5         [        S[        S5      U" S5      /5      nU R	                  U[
        5      u  p4U R                  X25        U R                  U5        S S S 5        Mv     g ! , (       d  f       M  = fr   )r  r  r   r   r  rG   rr   r  r  s        r   %test_catch_everything_unhashable_leafHTestExceptStar_WeirdLeafExceptions.test_catch_everything_unhashable_leaf:  st    >>Cc"#D9Q<Q*@A"..r9=**55!!$'	 #" """r  c                    U R                    H>  nU R                  U5         [        S[        S5      U" S5      [	        S5      /5      n  Ue   g ! / =[         =b    OP  O  U =b    e P  PO  P8=c     Os f = f! [
         a  nUn S nAOS nAff = fU R                  W[        SU" S5      [	        S5      /5      5        S S S 5        M  ! , (       d  f       M  = fr   )r  r  r   r   r   rG   rr   )r   r  r   r   rM   s        r   test_reraise_unhashable_leaf?TestExceptStar_WeirdLeafExceptions.test_reraise_unhashable_leafB  s    >>Cc"#9Q<QA?A  "I    C **s1vz!}.EFH #"""sS   (CAA9(A))A94A<5C6A<<
BBCB0C
C	r  N)r'   r(   r)   r*   r   r  r  r  r  r  r  r  r  r  r  r  r+   r&   r,   r   r  r    sW    
  
 ! !/	@:5(Hr,   r  c                       \ rS rSr " S S\5      r " S S\5      r " S S\5      r " S S	\5      rS
 r	S r
S rS rS rS rSrg)*TestExceptStar_WeirdExceptionGroupSubclassiV  c                       \ rS rSrSrS rSrg)7TestExceptStar_WeirdExceptionGroupSubclass.UnhashableEGiZ  Nc                 :    [        U 5      " U R                  U5      $ r]   r  r@  r   rA  s     r   rG  >TestExceptStar_WeirdExceptionGroupSubclass.UnhashableEG.derive]      :dllD11r,   r&   )r'   r(   r)   r*   r  rG  r+   r&   r,   r   UnhashableEGr  Z  s    	2r,   r  c                        \ rS rSrS rS rSrg)8TestExceptStar_WeirdExceptionGroupSubclass.AlwaysEqualEGi`  c                     gr  r&   r  s     r   r  ?TestExceptStar_WeirdExceptionGroupSubclass.AlwaysEqualEG.__eq__a  r  r,   c                 :    [        U 5      " U R                  U5      $ r]   r  r  s     r   rG  ?TestExceptStar_WeirdExceptionGroupSubclass.AlwaysEqualEG.derived  r  r,   r&   Nr'   r(   r)   r*   r  rG  r+   r&   r,   r   AlwaysEqualEGr  `  s    		2r,   r  c                        \ rS rSrS rS rSrg)7TestExceptStar_WeirdExceptionGroupSubclass.NeverEqualEGig  c                     grV  r&   r  s     r   r  >TestExceptStar_WeirdExceptionGroupSubclass.NeverEqualEG.__eq__h  r  r,   c                 :    [        U 5      " U R                  U5      $ r]   r  r  s     r   rG  >TestExceptStar_WeirdExceptionGroupSubclass.NeverEqualEG.derivek  r  r,   r&   Nr  r&   r,   r   NeverEqualEGr  g  s    		2r,   r  c                        \ rS rSrS rS rSrg)8TestExceptStar_WeirdExceptionGroupSubclass.BrokenEqualEGin  c                     [        5       er]   r  r  s     r   r  ?TestExceptStar_WeirdExceptionGroupSubclass.BrokenEqualEG.__eq__o  r  r,   c                 :    [        U 5      " U R                  U5      $ r]   r  r  s     r   rG  ?TestExceptStar_WeirdExceptionGroupSubclass.BrokenEqualEG.deriver  r  r,   r&   Nr  r&   r,   r   BrokenEqualEGr  n  s    	!	2r,   r  c                 j    U R                   U R                  U R                  U R                  /U l        g r]   )r  r  r  r  r  r    s    r   r  0TestExceptStar_WeirdExceptionGroupSubclass.setUpu  s/    ++,,++,,.r,   c                     Su  p4  Ue! / =U =b  nUnS nAPO	S nAP  PO  P8=c     X44$ s f = f! [          a  nUn S nAX44$ S nAff = fr  r  r  s         r   r  6TestExceptStar_WeirdExceptionGroupSubclass.except_type{  r  r  c                    U R                    H  nU R                  U5         U" S[        S5      U" S[        S5      /5      /5      nU R	                  U[        5      u  p4U R                  X1" S[        S5      /5      5        U R                  UU" SU" S[        S5      /5      /5      5        S S S 5        M     g ! , (       d  f       M  = fNr   rE   rJ  rR   )r  r  r   r   r  rr   r   BadEGr   ry   rz   s        r   3test_catch_some_unhashable_exception_group_subclass^TestExceptStar_WeirdExceptionGroupSubclass.test_catch_some_unhashable_exception_group_subclass  s    ^^Ee$4%aL!(Z]O<>? #..r9=**5%y|n2MN**4$x*Q-!A BCE %$ $$$s   BB99
C	c                 @   U R                    H|  nU R                  U5         U" S[        S5      U" S[        S5      /5      /5      nU R	                  U[
        5      u  p4U R                  U5        U R                  XB5        S S S 5        M~     g ! , (       d  f       M  = fr  )r  r  r   r   r  r   r  rr   r  s        r   3test_catch_none_unhashable_exception_group_subclass^TestExceptStar_WeirdExceptionGroupSubclass.test_catch_none_unhashable_exception_group_subclass  s    ^^Ee$4%aL!(Z]O<>? #..r7;!!%(**44 %$ $$$   A B
B	c                 @   U R                    H|  nU R                  U5         U" S[        S5      U" S[        S5      /5      /5      nU R	                  U[
        5      u  p4U R                  X25        U R                  U5        S S S 5        M~     g ! , (       d  f       M  = fr  )r  r  r   r   r  rG   rr   r  r  s        r   2test_catch_all_unhashable_exception_group_subclass]TestExceptStar_WeirdExceptionGroupSubclass.test_catch_all_unhashable_exception_group_subclass  s    ^^Ee$4%aL!(Z]O<>? #..r9=**55!!$' %$ $$$r  c                    U R                    HP  nU R                  U5         U" S[        S5      [        S5      U" S[        S5      [	        S5      /5      /5      n  Ue   g ! / =[         =b    OP  O  [         =b    e P  PO  P8=c     Os f = f! [
         a  nUn S nAOS nAff = fU R                  WU" S[        S5      U" S[	        S5      /5      /5      5        S S S 5        M  ! , (       d  f       M  = f)Nr   rE   rR   rJ  rF   rD   )r  r  r   r   r   rG   rr   )r   r  r   r   rM   s        r   test_reraise_unhashable_egETestExceptStar_WeirdExceptionGroupSubclass.test_reraise_unhashable_eg  s    ^^Ee$4%aL*Q-!(Z]GAJ,GHJK  $J #   C **til$X
|<&> ?@! %$$$sS   :C*A""B>A??B
BC*B
B(B#C*#B((8C**
C9	r  N)r'   r(   r)   r*   r   r  r  r  r  r  r  r  r  r  r  r+   r&   r,   r   r  r  V  sR    2~ 22 22~ 22 2.	
E
5
(@r,   r  __main__)ro   unittestr3   test.support.testcaser   TestCaser   r.   rZ   rl   r   r
  r)  r7  r  r  r  r'   mainr&   r,   r   <module>r     s    
   6*H-- *Zw3x/@/@ w3tB)8+<+< B$}2> }2@w7N w7tGF. GFTuDn uDpiJ> iJX0N 0&YH YHxh@ h@V zMMO r,   