python (3.12.0)

(root)/
lib/
python3.12/
test/
__pycache__/
test_except_star.cpython-312.pyc

͑eddlZddlZddlZddlmZGddej
ZGddej
ZGddeej
ZGd	d
eZ	GddeZ
Gd
deZGddeZGddeZ
GddeZGddeZGddeZedk(rej$yy)N)ExceptionIsLikeMixinc$eZdZdZdZdZdZy)TestInvalidExceptStarcgd}|D]-}|jt5t|ddddd/y#1swY:xYw)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)assertRaisesSyntaxErrorcompile)selferrorserrs   I/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/test/test_except_star.py1test_mixed_except_and_except_star_is_syntax_errorzGTestInvalidExceptStar.test_mixed_except_and_except_star_is_syntax_errorsN	
	1C"";/
1Z0
1
1	1
1
1s	8A	c|jt5	td#gxt%x}d}~nd}~nnxYncYwxYwdddy#1swYyxYw)Nblah)r		TypeErrorOSErrorExceptionGroupres  r7test_except_star_ExceptionGroup_is_runtime_error_singlezMTestInvalidExceptStar.test_except_star_ExceptionGroup_is_runtime_error_singlesN


y
)	
fo%
N

			sA#AAAc|jt5	tdtdg#gxttf%xnnnxYncYwxYwdddy#1swYyxYw)Neg*)r	rr
ValueErrorrs r6test_except_star_ExceptionGroup_is_runtime_error_tuplezLTestInvalidExceptStar.test_except_star_ExceptionGroup_is_runtime_error_tuples]


y
)	
$TJrN+;<<
Y/

			sA.AAA%cB|jt5	t#gxd%xnnnxYncYwxYwdddn#1swYnxYw|jt5	t#gxtdf%xnnnxYncYwxYwdddy#1swYyxYw)Nr)r	rrrs r'test_except_star_invalid_exception_typez=TestInvalidExceptStar.test_except_star_invalid_exception_type%s


y
)	
  
B

			

y
)	
  
Z$

			s6A6AA#B%A++B	BBN)__name__
__module____qualname__rrrr rrrs1 r%rc4eZdZdZdZdZdZdZdZdZ	y)	(TestBreakContinueReturnInExceptStarBlockzC'break', 'continue' and 'return' cannot appear in an except\* blockc|jt|j5tt	j
|dddddy#1swYyxYw)Nrr)assertRaisesRegexr
MSGrtextwrapdedent)rsrcs  r
check_invalidz6TestBreakContinueReturnInExceptStarBlock.check_invalid7s@

#
#K
:	>HOOC(*f=	>	>	>s!AAcj|jd|jd|jdy)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
            r.rs rtest_break_in_except_starzBTestBreakContinueReturnInExceptStarBlock.test_break_in_except_star;s?
		

		
	

	r%cj|jd|jd|jdy)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
            r0rs r*test_continue_in_except_star_block_invalidzSTestBreakContinueReturnInExceptStarBlock.test_continue_in_except_star_block_invalid[s?
		

		
	

	r%cH|jd|jdy)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
            r0rs r(test_return_in_except_star_block_invalidzQTestBreakContinueReturnInExceptStarBlock.test_return_in_except_star_block_invalid{s*
		

		r%c&	td#gxt%xV}d}tdD]}|dk(r	|dk(rn|dz
}|j|d|jd|}d}~nd}~nnxYncYwxYw|j	t
y)Nrr)r	ExceptionrangeassertEqualassertIsInstancer)rrcountiexcs     r.test_break_continue_in_except_star_block_validzWTestBreakContinueReturnInExceptStarBlock.test_break_continue_in_except_star_block_valids
	R. 			E1X
66


UA&Q"CC		
c>2s
A9A
A'	#A9c	td#gxt%x}d}|d}|}d}~nd}~nnxYncYwxYw|jd|jty)Nrcd|zS)Nr$)xs rfzZTestBreakContinueReturnInExceptStarBlock.test_return_in_except_star_block_valid.<locals>.fss
r%r:)rr;r=r>r)rrrGrrAs     r&test_return_in_except_star_block_validzOTestBreakContinueReturnInExceptStarBlock.test_return_in_except_star_block_valids]	R. 			
!ACC		
	
Ac>2s
<
*	<N)
r!r"r#r*r.r1r3r5rBrJr$r%rr'r'3s)2C>@@*3"	3r%r'ceZdZdZdZy)ExceptStarTestc$|||j|duxr|duy|j|j|j|j|j|j|j|j|jyN)
assertTruer=__context__	__cause__
__traceback__re1e2s   rassertMetadataEqualz"ExceptStarTest.assertMetadataEqualsp
:OOB$J52:6R^^R^^<R\\2<<8R--r/?/?@r%c|||j||y|j|jk(xr4|j|jk(xr|j|jk(SrN)assertNotEqualrPrQrRrSs   rassertMetadataNotEqualz%ExceptStarTest.assertMetadataNotEqualsg
:B'"..8ALLBLL8A,,0@0@@B
Br%N)r!r"r#rVrYr$r%rrLrLsABr%rLceZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZdZdZy)TestExceptStarSplitSemanticsctj}dx}x}}		|#gx|%x"}	tj}|	}d}	~	nd}	~	nnxYncYwxYwn#t$r}	|	}Yd}	~	nd}	~	wwxYw|j|||j	|||j	|||jtj|yrN)sys	exception
BaseExceptionr=assertExceptionIsLike
rrATmatch_template
rest_templateinitial_sys_exception
sys_exceptionmatchrestrs
          rdoSplitTestNamedz-TestExceptStarSplitSemantics.doSplitTestNameds #

'++
+	
	
A
 #



	D		
.""5.9""47*?@s+AA	AA	A, A''A,cdtj}dx}x}}		|#gx|%xtjx}}nnnxYncYwxYwn#t$r}	|	}Yd}	~	nd}	~	wwxYw|j	|||j	|||jtj|yrN)r]r^failr_r`r=ras
          rdoSplitTestUnnamedz/TestExceptStarSplitSemantics.doSplitTestUnnameds #

'++
+		
6	
8A
8(+

7

8
	D	""5.9""47*?@s*A
>	A
A	A&A!!A&c	tdtdtdg#t$r+|j	|||||j||||YywxYwNrr9rErrrr;rirlrrArbrcrds     rdoSplitTestInExceptHandlerz7TestExceptStarSplitSemantics.doSplitTestInExceptHandlers[	K 	!jm'DEE	K!!#q.-H##CNMJ	Ks "1AAc
	tdtdtdg#gxt%x.|j	|||||j||||nnnxYycYwxYwrnrorps     rdoSplitTestInExceptStarHandlerz;TestExceptStarSplitSemantics.doSplitTestInExceptStarHandlerse	K 	!jm'DEE	K		K!!#q.-H##CNMJJ	Ks "A&(A	A&c|j|||||j|||||j|||||j||||yrN)rirlrqrsrps     rdoSplitTestz(TestExceptStarSplitSemantics.doSplitTestsRc1nmDQ
F''Q
N++CNMRr%c|jtdtdtdgtdtdtdtdgy)Ntest1Vrb)rurrrr
rs rtest_no_match_single_typez6TestExceptStarSplitSemantics.test_no_match_single_typesE7Z_in$EF7Z_in$EF		Hr%c|jtdtdtdgttdtdtdgdy)Ntest2V1V2)rurrrs rtest_match_single_typez3TestExceptStarSplitSemantics.test_match_single_typesH7Z%5z$7G$HI7Z%5z$7G$HI		r%c|jtdtdtdtdgttdtdtdgtdtdgy)Ntest3r|OSr})rurrrrs r$test_match_single_type_partial_matchzATestExceptStarSplitSemantics.test_match_single_type_partial_matchsbD!74=*T2BC
E
7Z%5z$7G$HI7WT]O4
	6r%cz|jtdtdtdtdtdtdt	dggttdtdtdtdggtdtdtdtdt	dggy)Ng1r|OS1g2OS2r}rbrurrrrrs rtest_match_single_type_nestedz:TestExceptStarSplitSemantics.test_match_single_type_nested
s4 ENt$cN$%&
'
4 tj&6%78:
;
4tENIcN&45"6
7	8r%c|jtdtdtdtdtdtdt	dggttftdtdtdtdt	dggtdtdtdtdggy)Nh1r|rh2rr}rbrrs rtest_match_type_tuple_nestedz9TestExceptStarSplitSemantics.test_match_type_tuple_nested"s4 75>:d+;Ys^LNO
P#4 tj&6	#%GHJ
K
tgen%568
9	:r%c|jtdtdtdgtdtdtdgtdtdggttdtdtdgtdtdggtdtdtdgtdtdggy)	Nri1r|i2r}T1i3T2rurrrrs rtest_empty_groups_removedz6TestExceptStarSplitSemantics.test_empty_groups_removed4stj&6%78tj&6	$%HItio%679
:

4tio%67tio%67"9
:
4"4*T*:);<"4*T*:);<">
?	@r%cZ|jtdtdtdtdgtdtdgggttdtdtdtdgggtdtdtdtdgggy)Nj1j2j3r|j4rbrrs rtest_singleton_groups_are_keptz;TestExceptStarSplitSemantics.test_singleton_groups_are_keptCs4t"4*T*:);<"4)C.)9:&<=">
?
~dYs^<L'M&NOP
R
~dZ=M<N'O&PQR
T	Ur%c
n|jtdttdtdgdyNrx)rurrrs r%test_naked_exception_matched_wrapped1zBTestExceptStarSplitSemantics.test_naked_exception_matched_wrapped1Qs.sO2
301		r%c
n|jtdttdtdgdyr)rurr;rrs r%test_naked_exception_matched_wrapped2zBTestExceptStarSplitSemantics.test_naked_exception_matched_wrapped2Xs.sO2
301		r%c
|jtdtdgttdtdgdy)Nrrx)rurrr;rs r6test_exception_group_except_star_Exception_not_wrappedzSTestExceptStarSplitSemantics.test_exception_group_except_star_Exception_not_wrapped_s84*S/!234*S/!23		r%cX|jtdtdtdy)Nrx)rurrrs r test_plain_exception_not_matchedz=TestExceptStarSplitSemantics.test_plain_exception_not_matchedfs$sOsO		r%c|jtdtdtdgttdtdgtdtdgy)Nstiorb)rurBlockingIOErrorrrrs rtest_match__supertypez2TestExceptStarSplitSemantics.test_match__supertypemsN4/$"73!HI4/$"7!894)C.!12		4r%c
P	tdtdtdg#gxt%x2}|j|tdtdgd}~nd}~nnt%x2}|j|tdtdgd}~nd}~nnxYycYwxYw)Nmmnosr)rrrr`rkrs  rtest_multiple_matches_namedz8TestExceptStarSplitSemantics.test_multiple_matches_namedts		. 8M(NOO	@	@&&qut'<&=>
@
@
@	@	8&&quwt}o6
8
8
8	8s  "B%&A	B%)&B	B%c
	tdtdtdg#gxt%x@tj}|j|tdtdgnnnt%x@tj}|j|tdtdgnnnxYycYwxYw)Nmmurr)rrrr]r^r`rkrs  rtest_multiple_matches_unnamedz:TestExceptStarSplitSemantics.test_multiple_matches_unnameds	. 8M(NOO	@	@

A&&qut'<&=>
@
@	@	8

A&&quwt}o6
8
8	8s  "C:A)	(C7:B2	1Cc
	tdtdg#gxt%x2}|j|tdtdgd}~nd}~nnt%x|j	dnnnxYycYwxYw)Nfstrz#Should have been matched as OSError)rrrr`rkrs  rtest_first_match_wins_namedz8TestExceptStarSplitSemantics.test_first_match_wins_nameds	. )>(?@@	@	@&&qut'<&=>
@
@
@	@ 	=II;<<	=s B&A	
BA1	0Bc
	tdtdg#gxt%x@tj}|j|tdtdgnnnt%xnnnxYycYwxYw)Nfstur)rrrr]r^r`rkrs  rtest_first_match_wins_unnamedz:TestExceptStarSplitSemantics.test_first_match_wins_unnameds}		. /$*?)@AA	A	A

A&&qv(='>?
A
A	A 	D	sA=:A	A=c
N	tdtdg#gxt%xv	tdtdg#gxt%xnnnxYncYwxYwt	j
}|j
|tdtdgnnnxYycYwxYw)Nnr)rrrrkr]r^r`rs  rtest_nested_except_starsz5TestExceptStarSplitSemantics.test_nested_except_starss
	. t'<&=>>		?		?
2$S:d+;*<==
J



A&&qod&;%<=
?
?		?sB$;AAB	B$ctdD]}	tdtdgy#gxt%xnnnxY5cYwxYw)NrEnlr)r<rrrk)r_s  rtest_nested_in_loopz0TestExceptStarSplitSemantics.test_nested_in_loopsIq	2A
2$TOD,A+BCC	2
O

s	(AN)r!r"r#rirlrqrsruryr~rrrrrrrrrrrrrrrrr$r%rr[r[s}A"A"KKSH68*:$
@U4
..	.
.. 2r%r[c<eZdZdZdZdZdZdZdZdZ	dZ
y	)
TestExceptStarReraisecf		tdtdtdtdg#gxt%x}d}~nt%x}d}~nxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	tdtdtdtdgyNrr9rEr:rrrrr`rrrAs   rtest_reraise_all_namedz,TestExceptStarReraise.test_reraise_all_nameds
	
$9Q<A
CEE
I



	C		
""4)A,
1
wqz!JK	Ms6*-A:	A
A	AA  	A5)A00A5cZ		tdtdtdtdg#gxt%xnt%xnxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	tdtdtdtdgyrrrs   rtest_reraise_all_unnamedz.TestExceptStarReraise.test_reraise_all_unnameds
	
$9Q<A
CEE
I



	C		
""4)A,
1
wqz!JK	Ms6*-A:	
AA		AA	A/#A**A/c
Z		tdtdtdtdg#gxt%x}d}~nt%x}d}~nd}~nnxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	tdtdtdgyrrrs   r"test_reraise_some_handle_all_namedz8TestExceptStarReraise.test_reraise_some_handle_all_named
	
$9Q<A
CEE
I



	C		
""y|WQZ&@A	C**-A :	!A A$$	A9-A44A9c	 		tdtdtdg#gxt%xnt%xnnnxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|jtdtdgyrn)rrrr`rs   r'test_reraise_partial_handle_all_unnamedz=TestExceptStarReraise.test_reraise_partial_handle_all_unnameds		
$9Q<A799
I



	C		
""y|n5	7s* #A
0	A
A	A&A!!A&c
Z		tdtdtdtdg#gxt%x}d}~nt%x}d}~nd}~nnxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	tdtdtdgyrrrs   r&test_reraise_partial_handle_some_namedz<TestExceptStarReraise.test_reraise_partial_handle_some_namedrrc
H		tdtdtdtdg#gxt%xnt%xnnnxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	tdtdtdgyrrrs   r(test_reraise_partial_handle_some_unnamedz>TestExceptStarReraise.test_reraise_partial_handle_some_unnameds		
$9Q<A
CEE
I



	C		
""y|WQZ&@A	Cs**-A:	AA	A0$A++A0c			td#gxt%x}d}~nxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|jtdtdgyNrrrrr`rs   r"test_reraise_plain_exception_namedz8TestExceptStarReraise.test_reraise_plain_exception_named se	
 n$
J

	C		
""Z^$45	7s$,	,0	AAAc			td#gxt%xnxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|jtdtdgyrrrs   r$test_reraise_plain_exception_unnamedz:TestExceptStarReraise.test_reraise_plain_exception_unnamed,se	
 n$
J

	C		
""Z^$45	7s")		)-	A=AN)r!r"r#rrrrrrrrr$r%rrrs/M"M"C 
7C 
C
7
7r%rc0eZdZdZdZdZdZdZdZy)TestExceptStarRaisec
:tdtdtdg}		|#gxt%x}tdd}~nxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	tdtdtdtdgg|j	|j
djtdtdg|j|||j||j
djyNrr9rEr:rr	rrrrr`
exceptionsrPrYrVrorigrrAs    rtest_raise_namedz$TestExceptStarRaise.test_raise_named:sdZ]GAJ$?@	
#

#G
#l"
#	C		
""Yq\>$A#HI
K	L
	
""NN1))4'!*.	0	
##D#.  s~~a'8'D'DEs*%A
<	A
A	A&A!!A&c
4tdtdtdg}		|#gxt%xtdnxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	tdtdtdtdgg|j	|j
djtdtdg|j|||j||j
djyrrrs    rtest_raise_unnamedz&TestExceptStarRaise.test_raise_unnamedPsdZ]GAJ$?@	
#

#G
#l"
#	C		
""Yq\>$A#HI
K	L
	
""NN1))4'!*.	0	
##D#.  s~~a'8'D'DEs*%A
<		A
A	A#AA#c
tdtdtdg}		|#gxttf%x}tdd}~nxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	td|j	|j
tdtdtdg|j
|||j||j
yrrrrr
r`rPrYrVrs    r%test_raise_handle_all_raise_one_namedz9TestExceptStarRaise.test_raise_handle_all_raise_one_namedfdYq\:a=$AB	
%

%Y
+
%!!n$
%	C		
""3A7""OO4)A,
1
!>?	A	
##D#.  s7,%AA	AA	A, A''A,c
tdtdtdg}		|#gxttf%x}tdd}~nxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	td|j	|j
tdtdtdg|j
|||j||j
yrrrs    r'test_raise_handle_all_raise_one_unnamedz;TestExceptStarRaise.test_raise_handle_all_raise_one_unnamedyrrc
&tdtdtdg}		|#gxt%x}tdd}~nt%x}tdd}~nxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	tdtdtdg|j	|j
djtdtdg|j	|j
djtdtdg|j|||j||j
dj|j||j
djyNrr9rEr:r8rr	rrrr
r`rrPrYrVrs    r%test_raise_handle_all_raise_two_namedz9TestExceptStarRaise.test_raise_handle_all_raise_two_namedsSdYq\:a=$AB	
%

%I
%!!n$
%
%!!n$
%	C		
""[^[^$DE	G	
""NN1))4)A,0	2	
""NN1))4*Q-1	3	
##D#.  s~~a'8'D'DE  s~~a'8'D'DEs6%A(<	A(A	A(#A,,	B5A<<Bc
tdtdtdg}		|#gxt%xtdnt%xtdnxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	tdtdtdg|j	|j
djtdtdg|j	|j
djtdtdg|j|||j||j
dj|j||j
djyrrrs    r'test_raise_handle_all_raise_two_unnamedz;TestExceptStarRaise.test_raise_handle_all_raise_two_unnamedsSdYq\:a=$AB	
%

%I
%!!n$
%
%!!n$
%	C		
""[^[^$DE	G	
""NN1))4)A,0	2	
""NN1))4*Q-1	3	
##D#.  s~~a'8'D'DE  s~~a'8'D'DEs6%A"<	
A"	A		A"A&&	A;/A66A;N	r!r"r#rrrrrrr$r%rrr9s$F,F,8&8&F6Fr%rc0eZdZdZdZdZdZdZdZy)TestExceptStarRaiseFromc
tdtdtdg}		|#gxt%x}td|d}~nxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	tdtdtdtdgg|j	|j
djtdtdg|j	|j
djtdtdg|j|||j||j
dj|j||j
dj|j||j
dj|j||j
djyr)
rrrrr`rrPrQrYrVrs    rrz(TestExceptStarRaiseFrom.test_raise_namedsdZ]GAJ$?@	
*

*G
*l)
*	C		
""Yq\>$A#HI
K	L
	
""NN1))4'!*.	0	
""NN1''4'!*.	0	
##D#.  s~~a'8'D'DE  s~~a'8'B'BC##D#..*;*G*GH##D#..*;*E*EFs*%A=	A	A	A'A""A'c
tdtdtdg}		|#gxt%x$tj}td|nxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j
tdtdtdtdgg|j
|jdjtdtdg|j
|jdjtdtdg|j|||j||jdj|j||jdj|j||jdj|j||jdjyr)rrrr]r^rr`rrPrQrYrVrs    rrz*TestExceptStarRaiseFrom.test_raise_unnamedsdZ]GAJ$?@	
*

*G
*MMOl)
*	C		
""Yq\>$A#HI
K	L
	
""NN1))4'!*.	0	
""NN1''4'!*.	0	
##D#.  s~~a'8'D'DE  s~~a'8'B'BC##D#..*;*G*GH##D#..*;*E*EFs,%A A		AA##	A8,A33A8c
tdtdtdg}		|#gxttf%x}td|d}~nxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	td|j	|j
tdtdtdg|j	|jtdtdtdg|j|||j||j
|j||jyr)	rrrr
r`rPrQrYrVrs    rrz=TestExceptStarRaiseFrom.test_raise_handle_all_raise_one_namedsdYq\:a=$AB	
,

,Y
+
,!!n!+
,	C		
""3A7""OO4)A,
1
!>?	A	
""MM4)A,
1
!>?	A	
##D#.  s7  s}}5s,%AA	AA	A-!A((A-c
tdtdtdg}		|#gxttf%x'}tj}td|d}~nxYncYwxYwn#t
$r}|}Yd}~nd}~wwxYw|j
td|j
|jtdtdtdg|j
|jtdtdtdg|j|||j||j|j||jyr)rrrr]r^r
r`rPrQrYrVrs    rrz?TestExceptStarRaiseFrom.test_raise_handle_all_raise_one_unnamedsdYq\:a=$AB	
,

,Y
+
,MMO!!n!+
,	C		
""3A7""OO4)A,
1
!>?	A	
""MM4)A,
1
!>?	A	
##D#.  s7  s}}5s,%A( A	A(#A,,	B5A<<Bc
tdtdtdg}		|#gxt%x}td|d}~nt%x}td|d}~nxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j	tdtdtdg|j	|j
djtdtdg|j	|j
djtdtdg|j	|j
djtdtdg|j	|j
djtdtdg|j|||j||j
dj|j||j
djyr)
rrrr
r`rrPrQrYrVrs    rrz=TestExceptStarRaiseFrom.test_raise_handle_all_raise_two_named0sdYq\:a=$AB	
,

,I
,!!n!+
,
,!!n!+
,	C		
""[^[^$DE	G	
""NN1))4)A,0	2	
""NN1''4)A,0	2	
""NN1))4*Q-1	3	
""NN1''4*Q-1	3	
##D#.  s~~a'8'D'DE  s~~a'8'B'BCs6%A*=	A*
A	A*%A..	B7A>>Bc
tdtdtdg}		|#gxt%x$tj}td|nt%x$tj}td|nxYncYwxYwn#t$r}|}Yd}~nd}~wwxYw|j
tdtdtdg|j
|jdjtdtdg|j
|jdjtdtdg|j
|jdjtdtdg|j
|jdjtdtdg|j|||j||jdj|j||jdj|j||jdj|j||jdjyr)rrrr]r^r
r`rrPrQrYrVrs    rrz?TestExceptStarRaiseFrom.test_raise_handle_all_raise_two_unnamedSsdYq\:a=$AB
	
,

,I
,MMO!!n!+
,
,MMO!!n!+
,	C		
""[^[^$DE	G	
""NN1))4)A,0	2	
""NN1''4)A,0	2	
""NN1))4*Q-1	3	
""NN1''4*Q-1	3	
##D#.  s~~a'8'D'DE  s~~a'8'B'BC  s~~a'8'D'DE  s~~a'8'B'BCs8%B A	
B A>	>	BB	B%B  B%Nrr$r%rrrs%G:G<6062!DF%Dr%rceZdZdZdZy)$TestExceptStarExceptionGroupSubclasscGfddt				td#t$r}d|gddd}~wwxYw#$r.}	td#t$r}d||gdd}~wwxYwd}~wwxYw#gxt%x}|}d}~nd}~nnxYncYwxYwn#$r}|}Yd}~nd}~wwxYw|j|j|j|jd	|j|||j
|jd|j
|jd|j
|jd	jdy)
Nc*eZdZfdZfdZxZS)MTestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass.<locals>.EGc8t||||}||_|SrN)super__new__code)clsmessageexcsrobj	__class__s     rrzUTestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass.<locals>.EG.__new__~s!goc7D9
r%c@|j||jSrN)rr)rrEGs  rderivezTTestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass.<locals>.EG.derives$,,dii88r%)r!r"r#rr	
__classcell__)rrs@rrr}s


9
9r%rrEnesteder9rrr)rrrr>rrVr=r)rtervervegtegrs       @rtest_except_star_EG_subclasszATestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass|sT	9	9	
	9@'l*$@ B454?@99(m+%9 F|R8899

J

	C		
c2&c2&cnnQ/4  c*2&2&*//5sm"	<7<?A2A	A*A%%A**A--A22A55BB	BBB."B))B.c	8Gfddt		dtdtdg#gxt%x
}|}d}~nt%x}|}d}~nd}~nnxYncYwxYwn#t$r}|}Yd}~nd}~wwxYwfD]%}|j	||j|'|j
|dtdg|j
|dtdg|j
|dtdgy)NceZdZdZfdZy)YTestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclass.<locals>.FalsyEGcyNFr$rs r__bool__zbTestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclass.<locals>.FalsyEG.__bool__sr%c*|j|SrN)r)rrFalsyEGs  rr	z`TestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclass.<locals>.FalsyEG.derivest||T22r%N)r!r"r#rr	)rsrrrs


3r%rrr9rE)rrrr;assertFalser>r`)rrtesvesrArs     @r#test_falsy_exception_group_subclasszHTestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclasss	3n	3
	
dYq\:a=$ABB
I



	C	sC	.AQ!!!W-	.	
""3y|n(EF""3y|n(EF""3z!}o(FGs82A)A	A)A	A)$A--	B6A==BN)r!r"r#rrr$r%rrr{s!6FHr%rceZdZdZy)TestExceptStarCleanupc		td#	tt#gxt%xnnnxYncYwxYwddzYnxYwn#t$r}|}Yd}~nd}~wwxYw|j	td|j	|jtd|jtjdy)Nrr9rzdivision by zero)
rrintr;r`ZeroDivisionErrorrPr=r]r^rs   rtest_sys_exception_restoredz1TestExceptStarCleanup.test_sys_exception_restoreds
	
 n$
#C.(	D!	C		
""3(9:L(MN""3??JrNC$/s.A <
AA

	AAAN)r!r"r#r#r$r%rrrs0r%rceZdZGddeZGddeZGddeZGddeZd	Zd
Z	dZ
dZd
ZdZ
dZy)"TestExceptStar_WeirdLeafExceptionsceZdZdZy)0TestExceptStar_WeirdLeafExceptions.UnhashableExcN)r!r"r#__hash__r$r%r
UnhashableExcr'sr%r)ceZdZdZy)1TestExceptStar_WeirdLeafExceptions.AlwaysEqualExccyNTr$rothers  r__eq__z8TestExceptStar_WeirdLeafExceptions.AlwaysEqualExc.__eq__r%Nr!r"r#r0r$r%rAlwaysEqualExcr+s	r%r3ceZdZdZy)0TestExceptStar_WeirdLeafExceptions.NeverEqualExccyrr$r.s  rr0z7TestExceptStar_WeirdLeafExceptions.NeverEqualExc.__eq__r%Nr2r$r%r
NeverEqualExcr5s	r%r8ceZdZdZy)1TestExceptStar_WeirdLeafExceptions.BrokenEqualExcctrNRuntimeErrorr.s  rr0z8TestExceptStar_WeirdLeafExceptions.BrokenEqualExc.__eq__
. r%Nr2r$r%rBrokenEqualExcr:s	!r%r?cj|j|j|j|jg|_yrN)r)r3r8r?	bad_typesrs rsetUpz(TestExceptStar_WeirdLeafExceptions.setUps/,,--,,--/r%cd\}}		|#gx|%x}|}d}~nd}~nnxYncYwxYw||fS#t$r}|}Yd}~||fSd}~wwxYwN)NNr;rrtypergrhrs      rexcept_typez.TestExceptStar_WeirdLeafExceptions.except_typec t	

D

d{	Dd{	$
*	*1	A	AA	ch|jD]}|j|5tdtd|dg}|j	||\}}|j|td|dg|j|tdtdgdddy#1swYxYwrnrAsubTestrrrHr`rBadrrgrhs     r$test_catch_unhashable_leaf_exceptionzGTestExceptStar_WeirdLeafExceptions.test_catch_unhashable_leaf_exceptions>>	@Cc"
@#D9Q<Q*@A"..r37t**>$Q9;**.	!~>@
@
@	@
@
@sA<B((B1	cp|jD]}|j|5tdtd|dg}|j	|t\}}|j|tdtdg|j|td|dgdddy#1swYxYwrnrLrNs     rtest_propagate_unhashable_leafzATestExceptStar_WeirdLeafExceptions.test_propagate_unhashable_leafs>>	:Cc"
:#D9Q<Q*@A"..r9=t**>$1?A**.Ax8:
:
:	:
:
:sBB,,B5	c	$|jD]u}|j|5tdtd|dg}|j	|t
\}}|j
||j||dddwy#1swYxYwrn)rArMrrrHrassertIsNoner`rNs     r"test_catch_nothing_unhashable_leafzETestExceptStar_WeirdLeafExceptions.test_catch_nothing_unhashable_leafs>>	5Cc"
5#D9Q<Q*@A"..r7;t!!%(**44	
5
5	5
5
5ABB	c	$|jD]u}|j|5tdtd|dg}|j	|t
\}}|j
|||j|dddwy#1swYxYwrn)rArMrrrHr;r`rTrNs     r%test_catch_everything_unhashable_leafzHTestExceptStar_WeirdLeafExceptions.test_catch_everything_unhashable_leafs>>	(Cc"
(#D9Q<Q*@A"..r9=t**5"5!!$'	
(
(	(
(
(rVc|jD]>}|j|5tdtd|dt	dg}		|y#gxt%xnnn|%xnxYncYwxYwn#t
$r}|}Yd}~nd}~wwxYw|j
td|dt	dgddd#1swYxYwr)rArMrrrr;r`)rrOrrrAs     rtest_reraise_unhashable_leafz?TestExceptStar_WeirdLeafExceptions.test_reraise_unhashable_leafs>>	HCc"
H#9Q<QA?A 	HI C**s1vz!}.EFH
H
H
HsM(CAA5&A'
'	A50A98C9	BB	C	B0CC	N)r!r"r#rr)r3r8r?rBrHrPrRrUrXrZr$r%rr%r%sW

!!/	@:5(Hr%r%ceZdZGddeZGddeZGddeZGddeZd	Zd
Z	dZ
dZd
ZdZ
y)*TestExceptStar_WeirdExceptionGroupSubclassceZdZdZdZy)7TestExceptStar_WeirdExceptionGroupSubclass.UnhashableEGNc:t||j|SrNrGrrrs  rr	z>TestExceptStar_WeirdExceptionGroupSubclass.UnhashableEG.derive24:dllD11r%)r!r"r#r(r	r$r%rUnhashableEGr^/s	2r%rcceZdZdZdZy)8TestExceptStar_WeirdExceptionGroupSubclass.AlwaysEqualEGcyr-r$r.s  rr0z?TestExceptStar_WeirdExceptionGroupSubclass.AlwaysEqualEG.__eq__6r1r%c:t||j|SrNr`ras  rr	z?TestExceptStar_WeirdExceptionGroupSubclass.AlwaysEqualEG.derive9rbr%Nr!r"r#r0r	r$r%r
AlwaysEqualEGre5s		2r%riceZdZdZdZy)7TestExceptStar_WeirdExceptionGroupSubclass.NeverEqualEGcyrr$r.s  rr0z>TestExceptStar_WeirdExceptionGroupSubclass.NeverEqualEG.__eq__=r7r%c:t||j|SrNr`ras  rr	z>TestExceptStar_WeirdExceptionGroupSubclass.NeverEqualEG.derive@rbr%Nrhr$r%rNeverEqualEGrk<s		2r%rnceZdZdZdZy)8TestExceptStar_WeirdExceptionGroupSubclass.BrokenEqualEGctrNr<r.s  rr0z?TestExceptStar_WeirdExceptionGroupSubclass.BrokenEqualEG.__eq__Dr>r%c:t||j|SrNr`ras  rr	z?TestExceptStar_WeirdExceptionGroupSubclass.BrokenEqualEG.deriveGrbr%Nrhr$r%r
BrokenEqualEGrpCs	!	2r%rscj|j|j|j|jg|_yrN)rcrirnrsrArs rrBz0TestExceptStar_WeirdExceptionGroupSubclass.setUpJs/++,,++,,.r%cd\}}		|#gx|%x}|}d}~nd}~nnxYncYwxYw||fS#t$r}|}Yd}~||fSd}~wwxYwrDrErFs      rrHz6TestExceptStar_WeirdExceptionGroupSubclass.except_typePrIrJc|jD]}|j|5|dtd|dtdgg}|j	|t\}}|j||dtdg|j||d|dtdggdddy#1swYxYwNrr9rrE)rArMrrrHr`rBadEGrrgrhs     r3test_catch_some_unhashable_exception_group_subclassz^TestExceptStar_WeirdExceptionGroupSubclass.test_catch_some_unhashable_exception_group_subclass[s^^		EEe$
E4%aL!(Z]O<>?#..r9=t**5%y|n2MN**4$x*Q-!A BCE
E
E		E
E
EsB
B99C	c4|jD]}}|j|5|dtd|dtdgg}|j	|t
\}}|j
||j||dddy#1swYxYwrw)rArMrrrHrrTr`rxs     r3test_catch_none_unhashable_exception_group_subclassz^TestExceptStar_WeirdExceptionGroupSubclass.test_catch_none_unhashable_exception_group_subclassgs^^		5Ee$
54%aL!(Z]O<>?#..r7;t!!%(**44
5
5		5
5
5A"BB	c4|jD]}}|j|5|dtd|dtdgg}|j	|t
\}}|j
|||j|dddy#1swYxYwrw)rArMrrrHr;r`rTrxs     r2test_catch_all_unhashable_exception_group_subclassz]TestExceptStar_WeirdExceptionGroupSubclass.test_catch_all_unhashable_exception_group_subclassss^^		(Ee$
(4%aL!(Z]O<>?#..r9=t**5"5!!$'
(
(		(
(
(r}c|jD]P}|j|5|dtdtd|dtdt	dgg}		|y#gxt%xnnnt%xnxYncYwxYwn#t
$r}|}Yd}~nd}~wwxYw|j
|dtd|dt	dggddd#1swYxYw)Nrr9rErr:r8)rArMrrrr;r`)rryrrrAs     rtest_reraise_unhashable_egzETestExceptStar_WeirdExceptionGroupSubclass.test_reraise_unhashable_egs^^	@Ee$
@4%aL*Q-!(Z]GAJ,GHJK 	@J# C**til$X
|<&>?@!
@
@
@sM:C%A!!B<A=
=	BBC%	B$BC%B$$8C%%C.	N)r!r"r#rrcrirnrsrBrHrzr|rrr$r%rr\r\+sR2~2222~222.	
E
5
(@r%r\__main__)r]unittestr+test.support.testcaserTestCaserr'rLr[rrrrrr%r\r!mainr$r%r<module>rs
6*H--*Zw3x/@/@w3tB)8+<+<B$}2>}2@w7Nw7tGF.GFTuDnuDp>H>>HB0N0&YHYHxh@h@VzHMMOr%