Current File : //usr/local/apps/python3/lib/python3.11/test/__pycache__/test_except_star.cpython-311.pyc
�

�KeӜ���ddlZddlZddlZGd�dej��ZGd�dej��ZGd�dej��ZGd�d	e��ZGd
�de��ZGd�d
e��Z	Gd�de��Z
Gd�de��ZGd�de��ZGd�de��Z
Gd�de��Zedkrej��dSdS)�Nc�&�eZdZd�Zd�Zd�Zd�ZdS)�TestInvalidExceptStarc��gd�}|D]E}|�t��5t|dd��ddd��n#1swxYwY�FdS)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   �?/usr/local/apps/python3/lib/python3.11/test/test_except_star.py�1test_mixed_except_and_except_star_is_syntax_errorzGTestInvalidExceptStar.test_mixed_except_and_except_star_is_syntax_errors���	
�	
�	
���	1�	1�C��"�"�;�/�/�
1�
1���Z��0�0�0�
1�
1�
1�
1�
1�
1�
1�
1�
1�
1�
1����
1�
1�
1�
1��	1�	1s�A�A	�A	c���|�t��5	td���#xgct%x�n
}d}~nd}~��Xx�YncYwxYwddd��dS#1swxYwYdS)N�blah)r�	TypeError�OSError�ExceptionGroup�r�es  r�7test_except_star_ExceptionGroup_is_runtime_error_singlezMTestInvalidExceptStar.test_except_star_ExceptionGroup_is_runtime_error_singles���
�
�
�y�
)�
)�	�	�
��f�o�o�%��
�
�
�N�
�
�
�
�
�
�����������������������		�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s �A�,�A�
A�A#�&A#c��|�t��5	tdtd��g���#xgcttf%x�nn��Xx�YncYwxYwddd��dS#1swxYwYdS)N�eg�*)rrr�
ValueError�rs r�6test_except_star_ExceptionGroup_is_runtime_error_tuplezLTestInvalidExceptStar.test_except_star_ExceptionGroup_is_runtime_error_tuples���
�
�
�y�
)�
)�	�	�
�$�T�J�r�N�N�+;�<�<�<��
�
�
�Y��/�
�
�
�
�
�
�����������������		�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s �A/�;�A�A/�/A3�6A3c�j�|�t��5	t�#xgcd%x�nn��Xx�YncYwxYwddd��n#1swxYwY|�t��5	t�#xgctdf%x�nn��Xx�YncYwxYwddd��dS#1swxYwYdS)Nr)rrrrs r�'test_except_star_invalid_exception_typez=TestInvalidExceptStar.test_except_star_invalid_exception_type$s���
�
�
�y�
)�
)�	�	�
� � ��
�
�
�B�
�
�
�
�
�
�����������������		�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
�
�y�
)�
)�	�	�
� � ��
�
�
�Z��$�
�
�
�
�
�
�����������������		�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	sB�A�$�<�A�A�A�0B(�2A9�9B�B(�(B,�/B,N)�__name__�
__module__�__qualname__rrrr��rrrsP������1�1�1� ����������r$rc�6�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	dS)	�(TestBreakContinueReturnInExceptStarBlockzC'break', 'continue' and 'return' cannot appear in an except\* blockc��|�t|j��5tt	j|��dd��ddd��dS#1swxYwYdS)Nrr)�assertRaisesRegexr	�MSGr
�textwrap�dedent)r�srcs  r�
check_invalidz6TestBreakContinueReturnInExceptStarBlock.check_invalid6s���
�
#�
#�K���
:�
:�	>�	>��H�O�C�(�(�*�f�=�=�=�	>�	>�	>�	>�	>�	>�	>�	>�	>�	>�	>�	>����	>�	>�	>�	>�	>�	>s�$A�A�Ac��|�d��|�d��|�d��dS)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 r�test_break_in_except_starzBTestBreakContinueReturnInExceptStarBlock.test_break_in_except_star:sg�����
�	�	�	�	
���
�	�	�	�	
���	
�
	�
	�
	�
	�
	r$c��|�d��|�d��|�d��dS)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
            r/rs r�*test_continue_in_except_star_block_invalidzSTestBreakContinueReturnInExceptStarBlock.test_continue_in_except_star_block_invalidZsg�����
�	�	�	�	
���
�	�	�	�	
���	
�
	�
	�
	�
	�
	r$c�Z�|�d��|�d��dS)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
            r/rs r�(test_return_in_except_star_block_invalidzQTestBreakContinueReturnInExceptStarBlock.test_return_in_except_star_block_invalidzsH�����
�	�	�	�	
���
�		�		�		�		�		r$c�T�	td���#xgct%x�n`}d}td��D]}|dkr�	|dkrn|dz
}�|�|d��|�|d��|}d}~nd}~��Xx�YncYwxYw|�|t
��dS)Nrr����)r�	Exception�range�assertEqual�assertIsInstancer)rr�count�i�excs     r�.test_break_continue_in_except_star_block_validzWTestBreakContinueReturnInExceptStarBlock.test_break_continue_in_except_star_block_valid�s���
	��R�.�.� ��	�	�	�	�	�	�	�	�	�	��E��1�X�X�
�
����6�6����6�6��E���
������U�A�&�&�&����Q��"�"�"��C�C�C�C�C����������������������c�>�2�2�2�2�2s��B
�AA;	�7B
c���	td���#xgct%x�n}d�}|d��}|}d}~nd}~��Xx�YncYwxYw|�|d��|�|t��dS)Nrc��d|zS)N�r#)�xs r�fzZTestBreakContinueReturnInExceptStarBlock.test_return_in_except_star_block_valid.<locals>.f�s����s�
r$r9�)rr:r<r=r)rrrF�rr@s     r�&test_return_in_except_star_block_validzOTestBreakContinueReturnInExceptStarBlock.test_return_in_except_star_block_valid�s���	��R�.�.� ��	�	�	�	�	�	�	�	�	�	�
�
�
���!���A��C�C�C�C�C�����������������������A�������c�>�2�2�2�2�2s��A�5	�AN)
r r!r"r)r-r0r2r4rArIr#r$rr&r&2sw������2�C�>�>�>����@���@���*3�3�3�"	3�	3�	3�	3�	3r$r&c� �eZdZd�Zd�Zd�ZdS)�ExceptStarTestc�b�|�|�dS|�|�d|����|�|�d|�d���t|t��sN|�|j|j��|�|jd|jd��dS|�|j|j��|�t|j��t|j����t|j|j��D]\}}|�
||���dS)Nzunexpected exception: zexpected an exception like z
, got Noner)�fail�
isinstancerr<�	__class__�args�message�len�
exceptions�zip�assertExceptionIsLike)rr@�templater�ts     rrUz$ExceptStarTest.assertExceptionIsLike�s6���;�8�+��F����I�I�4�s�4�4�5�5�5��;��I�I�J�H�J�J�J�K�K�K��#�~�.�.�	1����S�]�H�,>�?�?�?����S�X�a�[�(�-��*:�;�;�;�;�;����S�[�(�*:�;�;�;����S���0�0�#�h�6I�2J�2J�K�K�K��C�N�H�,?�@�@�
1�
1���1��*�*�1�a�0�0�0�0�
1�
1r$c��|�|�|�|duo|du��dS|�|j|j��|�|j|j��|�|j|j��dS�N)�
assertTruer<�__context__�	__cause__�
__traceback__�r�e1�e2s   r�assertMetadataEqualz"ExceptStarTest.assertMetadataEqual�s���
�:����O�O�B�$�J�5�2��:�6�6�6�6�6����R�^�R�^�<�<�<����R�\�2�<�8�8�8����R�-�r�/?�@�@�@�@�@r$c��|�|�|�||��dS|j|jko|j|jko|j|jkSrY)�assertNotEqualr[r\r]r^s   r�assertMetadataNotEqualz%ExceptStarTest.assertMetadataNotEqual�se��
�:�������B�'�'�'�'�'���"�.�8�A��L�B�L�8�A��,��0@�@�B�
Br$N)r r!r"rUrardr#r$rrKrK�sI������1�1�1�&A�A�A�B�B�B�B�Br$rKc��eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestExceptStarSplitSemanticsc��tj��}dx}x}}		|�#xgc|%x�n}	tj��}|	}d}	~	nd}	~	��Xx�YncYwxYwn#t$r}	|	}Yd}	~	nd}	~	wwxYw|�||��|�||��|�||��|�tj��|��dSrY)�sys�	exception�
BaseExceptionr<rU�
rr@�T�match_template�
rest_template�initial_sys_exception�
sys_exception�match�restrs
          r�doSplitTestNamedz-TestExceptStarSplitSemantics.doSplitTestNamed�s�� #�
����'+�+�
�+���	�
��	��
�
�
�A�
�
�
�
�
�
� #�
���
����������������������������	�	�	��D�D�D�D�D�D�����	����	
�����.�.�.��"�"�5�.�9�9�9��"�"�4��7�7�7��������*?�@�@�@�@�@s+��A�A	�A�A�
A+�A&�&A+c�z�tj��}dx}x}}		|�#xgc|%x�ntj��x}}n��Xx�YncYwxYwn#t$r}	|	}Yd}	~	nd}	~	wwxYw|�||��|�||��|�tj��|��dSrY)rhrirMrjrUr<rks
          r�doSplitTestUnnamedz/TestExceptStarSplitSemantics.doSplitTestUnnamed�s��� #�
����'+�+�
�+���		�
6��	��
8�
8�
8�A�
8�
8�
8�
8�
8�
8�(+�
���7�
���������������������	�	�	��D�D�D�D�D�D�����	�����"�"�5�.�9�9�9��"�"�4��7�7�7��������*?�@�@�@�@�@s*��A�?	�A�A�
A%�A � A%c���	tdtd��td��g���#t$r4|�||||��|�||||��YdSwxYw�Nrr8rD�rrrr:rsru�rr@rlrmrns     r�doSplitTestInExceptHandlerz7TestExceptStarSplitSemantics.doSplitTestInExceptHandler�s���	K� ��	�!���j��m�m�'D�E�E�E���	K�	K�	K��!�!�#�q�.�-�H�H�H��#�#�C��N�M�J�J�J�J�J�J�	K���s�,.�:A,�+A,c
��	tdtd��td��g���#xgct%x�n4|�||||��|�||||��n��Xx�YdScYwxYwrwrxrys     r�doSplitTestInExceptStarHandlerz;TestExceptStarSplitSemantics.doSplitTestInExceptStarHandler�s���	K� ��	�!���j��m�m�'D�E�E�E��	K�	K�	K�	�	K�	K�	K�	K�	K�	K��!�!�#�q�.�-�H�H�H��#�#�C��N�M�J�J�J�J����������������s�,.�A<�0A/	�.A<c���|�||||��|�||||��|�||||��|�||||��dSrY)rsrurzr|rys     r�doSplitTestz(TestExceptStarSplitSemantics.doSplitTestsp�����c�1�n�m�D�D�D�����Q��
�F�F�F��'�'��Q��
�N�N�N��+�+�C��N�M�R�R�R�R�Rr$c���|�tdtd��td��g��tdtdtd��td��g����dS)N�test1�Vrl)r~rrrr	rs r�test_no_match_single_typez6TestExceptStarSplitSemantics.test_no_match_single_typesk������7�Z��_�_�i��n�n�$E�F�F����7�Z��_�_�i��n�n�$E�F�F�		H�	H�	H�	H�	Hr$c���|�tdtd��td��g��ttdtd��td��g��d��dS)N�test2�V1�V2)r~rrrs r�test_match_single_typez3TestExceptStarSplitSemantics.test_match_single_typesn������7�Z��%5�%5�z�$�7G�7G�$H�I�I���7�Z��%5�%5�z�$�7G�7G�$H�I�I��		�	�	�	�	r$c�<�|�tdtd��td��td��g��ttdtd��td��g��tdtd��g����dS)N�test3r��OSr�)r~rrrrs r�$test_match_single_type_partial_matchzATestExceptStarSplitSemantics.test_match_single_type_partial_matchs���������D�!�!�7�4�=�=�*�T�2B�2B�C�
E�
E�
��7�Z��%5�%5�z�$�7G�7G�$H�I�I��7�W�T�]�]�O�4�4�
	6�	6�	6�	6�	6r$c��|�tdtd��td��tdtd��td��t	d��g��g��ttdtd��tdtd��g��g��tdtd��tdtd��t	d��g��g����dS)N�g1r��OS1�g2�OS2r�rl�r~rrrrrs r�test_match_single_type_nestedz:TestExceptStarSplitSemantics.test_match_single_type_nesteds��������4� � ��������E�N�N��t�$�$��c�N�N�$�%�%�&�
'�
'�
����4� � ��t�j��&6�&6�%7�8�8�:�
;�
;�
�4������t��E�N�N�I�c�N�N�&4�5�5�"6�
7�
7�	8�	8�	8�	8�	8r$c��|�tdtd��td��tdtd��td��t	d��g��g��ttftdtd��tdtd��t	d��g��g��tdtd��tdtd��g��g����dS)N�h1r�r��h2r�r�rlr�rs r�test_match_type_tuple_nestedz9TestExceptStarSplitSemantics.test_match_type_tuple_nested4s��������4� � �������7�5�>�>�:�d�+;�+;�Y�s�^�^�L�N�N�O�
P�
P���#����4� � ��t�j��&6�&6�	�#���%G�H�H�J�
K�
K�
�������t�g�e�n�n�%5�6�6�8�
9�
9�	:�	:�	:�	:�	:r$c�F�|�tdtdtd��g��tdtd��td��g��tdtd��g��g��ttdtdtd��g��tdtd��g��g��tdtdtd��g��tdtd��g��g����dS)	Nr�i1r��i2r��T1�i3�T2�r~rrrrs r�test_empty_groups_removedz6TestExceptStarSplitSemantics.test_empty_groups_removedFs��������t�j��&6�&6�%7�8�8��t�j��&6�&6�	�$���%H�I�I��t�i��o�o�%6�7�7�9�
:�
:�

��4��t�i��o�o�%6�7�7��t�i��o�o�%6�7�7�"9�
:�
:�
�4�"�4�*�T�*:�*:�);�<�<�"�4�*�T�*:�*:�);�<�<�">�
?�
?�	@�	@�	@�	@�	@r$c���|�tdtdtdtd��g��tdtd��g��g��g��ttdtdtdtd��g��g��g��tdtdtdtd��g��g��g����dS)N�j1�j2�j3r��j4rlr�rs r�test_singleton_groups_are_keptz;TestExceptStarSplitSemantics.test_singleton_groups_are_keptUs�������4��t�"�4�*�T�*:�*:�);�<�<�"�4�)�C�.�.�)9�:�:�&<�=�=�">�
?�
?�
�����~�d�Y�s�^�^�<L�'M�'M�&N�O�O�P�
R�
R�
����~�d�Z��=M�=M�<N�'O�'O�&P�Q�Q�R�
T�
T�	U�	U�	U�	U�	Ur$c
��|�td��ttdtd��g��d��dS�Nr��)r~rrrs r�%test_naked_exception_matched_wrapped1zBTestExceptStarSplitSemantics.test_naked_exception_matched_wrapped1csI������s�O�O���2�
�3���0�1�1��		�	�	�	�	r$c
��|�td��ttdtd��g��d��dSr�)r~rr:rrs r�%test_naked_exception_matched_wrapped2zBTestExceptStarSplitSemantics.test_naked_exception_matched_wrapped2jsI������s�O�O���2�
�3���0�1�1��		�	�	�	�	r$c
��|�tdtd��g��ttdtd��g��d��dS)Nrr�)r~rrr:rs r�6test_exception_group_except_star_Exception_not_wrappedzSTestExceptStarSplitSemantics.test_exception_group_except_star_Exception_not_wrappedqsV������4�*�S�/�/�!2�3�3���4�*�S�/�/�!2�3�3��		�	�	�	�	r$c�t�|�td��tdtd����dS)Nr�)r~rrrs r� test_plain_exception_not_matchedz=TestExceptStarSplitSemantics.test_plain_exception_not_matchedxs<������s�O�O����s�O�O�		�	�	�	�	r$c��|�tdtd��td��g��ttdtd��g��tdtd��g����dS)N�st�iorl)r~r�BlockingIOErrorrrrs r�test_match__supertypez2TestExceptStarSplitSemantics.test_match__supertypesu������4�/�$�"7�"7��3���!H�I�I���4�/�$�"7�"7�!8�9�9��4�)�C�.�.�!1�2�2�		4�	4�	4�	4�	4r$c
��	tdtd��td��g���#xgct%x�n<}|�|tdtd��g����d}~nd}~�t%x�n<}|�|tdtd��g����d}~nd}~��Xx�YdScYwxYw)N�mmn�osr�)rrr�rUrMrs  r�test_multiple_matches_namedz8TestExceptStarSplitSemantics.test_multiple_matches_named�s0��		.� ��������8M�8M�(N�O�O�O��	@�	@�	@��	@�	@�	@�	@�	@�	@��&�&�q��u��t�'<�'<�&=�>�>�
@�
@�
@�
@�
@�
@�
@�������	8�	8�	8�	8�	8�	8��&�&�q��u�w�t�}�}�o�6�6�
8�
8�
8�
8�
8�
8�
8�������������������s �,.�C�2A4	�0C�2B;	�7Cc
���	tdtd��td��g���#xgct%x�nItj��}|�|tdtd��g����n�t%x�nItj��}|�|tdtd��g����n��Xx�YdScYwxYw)N�mmur�r�)rrr�rhrirUrMrs  r�test_multiple_matches_unnamedz:TestExceptStarSplitSemantics.test_multiple_matches_unnamed�s��	.� ��������8M�8M�(N�O�O�O��	@�	@�	@��	@�	@�	@�	@�	@�	@��
���A��&�&�q��u��t�'<�'<�&=�>�>�
@�
@�
@�
@����	8�	8�	8�	8�	8�	8��
���A��&�&�q��u�w�t�}�}�o�6�6�
8�
8�
8�
8����������������s"�,.�C%�AB	�C%�AC	�C%c
�:�	tdtd��g���#xgct%x�n<}|�|tdtd��g����d}~nd}~�t%x�n|�d��n��Xx�YdScYwxYw)N�fstr�z#Should have been matched as OSError)rr�rrUrMrs  r�test_first_match_wins_namedz8TestExceptStarSplitSemantics.test_first_match_wins_named�s���	.� ����)>�)>�(?�@�@�@��	@�	@�	@��	@�	@�	@�	@�	@�	@��&�&�q��u��t�'<�'<�&=�>�>�
@�
@�
@�
@�
@�
@�
@�������	=�	=�	=�	=�	=�	=��I�I�;�<�<�<�<����������������s � �B�2A&	�"B�7B
	�Bc
�*�	tdtd��g���#xgct%x�nItj��}|�|tdtd��g����n�t%x�nn��Xx�YdScYwxYw)N�fstur�)rr�rrhrirUrMrs  r�test_first_match_wins_unnamedz:TestExceptStarSplitSemantics.test_first_match_wins_unnamed�s���		.� ��/�$�*?�*?�)@�A�A�A��	A�	A�	A��	A�	A�	A�	A�	A�	A��
���A��&�&�q��v���(=�(=�'>�?�?�
A�
A�
A�
A����	�	�	�	�	�	�����������������s� �B�AA6	�5Bc
��	tdtd��g���#xgct%x�n�	tdtd��g���#xgct%x�nn��Xx�YncYwxYwt	j��}|�|tdtd��g����n��Xx�YdScYwxYw)N�nr�)rr�rrMrhrirUrs  r�test_nested_except_starsz5TestExceptStarSplitSemantics.test_nested_except_stars�s��
	.� ���t�'<�'<�&=�>�>�>��		?�		?�		?��		?�		?�		?�		?�		?�		?�
2�$�S�:�d�+;�+;�*<�=�=�=��
�
�
�J�
�
�
�
�
�
������������������
���A��&�&�q���o�d�&;�&;�%<�=�=�
?�
?�
?�
?����������������s!� �C�A�A,�'A
B5	�4Cc��td��D]@}	tdtd��g���#xgct%x�nn��Xx�Y�;cYwxYwdS)NrD�nlr�)r;rr�rM)r�_s  r�test_nested_in_loopz0TestExceptStarSplitSemantics.test_nested_in_loop�s����q���	2�	2�A�
2�$�T�O�D�,A�,A�+B�C�C�C��
�
�
�O�
�
�
�
�
�
�����������������		2�	2s	�1�AN)r r!r"rsrurzr|r~r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r#r$rrfrf�s�������A�A�A�"A�A�A�"K�K�K�K�K�K�S�S�S�H�H�H����6�6�6�8�8�8�*:�:�:�$
@�
@�
@�U�U�U�������������4�4�4�
.�
.�
.�.�.�.�	.�	.�	.�
.�
.�
.�.�.�.� 2�2�2�2�2r$rfc�>�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	S)
�TestExceptStarReraisec��		tdtd��td��td��g���#xgct%x�n}�d}~�t%x�n}�d}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��td��td��g����dS�Nrr8rDr9�rrrrrU�rrr@s   r�test_reraise_all_namedz,TestExceptStarReraise.test_reraise_all_named�s.��
	�
�$��9�Q�<�<��A�����
�
�C�E�E�E��
�
�
�I�
�
�
�
�
�
��������
�
�
�
�
�
�����������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"���4�)�A�,�,�
�1�
�
�w�q�z�z�!J�K�K�	M�	M�	M�	M�	Ms9�:=�A/�
A	�A/�A 	� 
A/�*A3�3
B	�=B�B	c��		tdtd��td��td��g���#xgct%x�n��t%x�n���Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��td��td��g����dSr�r�r�s   r�test_reraise_all_unnamedz.TestExceptStarReraise.test_reraise_all_unnamed�s(��
	�
�$��9�Q�<�<��A�����
�
�C�E�E�E��
�
�
�I�
�
�
�
�
�
�����
�
�
�
�
�
��������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"���4�)�A�,�,�
�1�
�
�w�q�z�z�!J�K�K�	M�	M�	M�	M�	Ms9�:=�A)�
A	�A)�A	�A)�$A-�-
B�7A>�>Bc
��		tdtd��td��td��g���#xgct%x�n}�d}~�t%x�n
}d}~nd}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��td��g����dSr�r�r�s   r�"test_reraise_some_handle_all_namedz8TestExceptStarReraise.test_reraise_some_handle_all_named��+��
	�
�$��9�Q�<�<��A�����
�
�C�E�E�E��
�
�
�I�
�
�
�
�
�
��������
�
�
�
�
�
��������������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����y��|�|�W�Q�Z�Z�&@�A�A�	C�	C�	C�	C�	C�-�:=�A2�
A	�A2�-A6�6
B�B�Bc	�X�		tdtd��td��g���#xgct%x�n��t%x�nn��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��g����dSrw)rrrrUr�s   r�'test_reraise_partial_handle_all_unnamedz=TestExceptStarReraise.test_reraise_partial_handle_all_unnameds��		�
�$��9�Q�<�<��A���7�9�9�9��
�
�
�I�
�
�
�
�
�
�����
�
�
�
�
�
��������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����y��|�|�n�5�5�	7�	7�	7�	7�	7s,�,/�A�A	�A�A�
A5�)A0�0A5c
��		tdtd��td��td��g���#xgct%x�n}�d}~�t%x�n
}d}~nd}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��td��g����dSr�r�r�s   r�&test_reraise_partial_handle_some_namedz<TestExceptStarReraise.test_reraise_partial_handle_some_namedr�r�c
��		tdtd��td��td��g���#xgct%x�n��t%x�nn��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��td��g����dSr�r�r�s   r�(test_reraise_partial_handle_some_unnamedz>TestExceptStarReraise.test_reraise_partial_handle_some_unnamed#s��		�
�$��9�Q�<�<��A�����
�
�C�E�E�E��
�
�
�I�
�
�
�
�
�
�����
�
�
�
�
�
��������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����y��|�|�W�Q�Z�Z�&@�A�A�	C�	C�	C�	C�	Cs-�:=�A)�
A	�A)�$A-�-
B�7A>�>Bc	��		td���#xgct%x�n}�d}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��g����dS�Nrr��rrrUr�s   r�"test_reraise_plain_exception_namedz8TestExceptStarReraise.test_reraise_plain_exception_named2s���	�
� ��n�n�$��
�
�
�J�
�
�
�
�
�
�����������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����Z��^�^�$4�5�5�	7�	7�	7�	7�	7s%��2�#	�
2�6�
A�A�Ac	��		td���#xgct%x�n���Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��g����dSr�r�r�s   r�$test_reraise_plain_exception_unnamedz:TestExceptStarReraise.test_reraise_plain_exception_unnamed>s���	�
� ��n�n�$��
�
�
�J�
�
�
�
�
�
��������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����Z��^�^�$4�5�5�	7�	7�	7�	7�	7s$��/�#	�/�3�
A	�A�A	N)r r!r"r�r�r�r�r�r�r�r�r#r$rr�r��s�������M�M�M�"M�M�M�"C�C�C� 
7�
7�
7�C�C�C� 
C�
C�
C�
7�
7�
7�
7�
7�
7�
7�
7r$r�c�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestExceptStarRaisec
��tdtd��td��g��}		|�#xgct%x�n}td���d}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��tdtd��g��g����|�|jdjtdtd��g����|�||��|�||jdj��dS�Nrr8rDr9r�r�	rrrrrUrSr[rdra�r�origrr@s    r�test_raise_namedz$TestExceptStarRaise.test_raise_namedLsy���d�Z��]�]�G�A�J�J�$?�@�@��	�
#��
��
#�
#�
#�G�
#�
#�
#�
#�
#�
#���l�l�"����������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����Y�q�\�\�>�$��A����#H�#H�I�
K�
K�	L�	L�	L�
	
�"�"��N�1��)��4�'�!�*�*��.�.�	0�	0�	0�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�E�Es-�1�A�A	�
A�A#�#
A9�-A4�4A9c
��tdtd��td��g��}		|�#xgct%x�ntd�����Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��tdtd��g��g����|�|jdjtdtd��g����|�||��|�||jdj��dSr�r�r�s    r�test_raise_unnamedz&TestExceptStarRaise.test_raise_unnamedbsv���d�Z��]�]�G�A�J�J�$?�@�@��	�
#��
��
#�
#�
#�G�
#�
#�
#�
#�
#�
#���l�l�"�������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����Y�q�\�\�>�$��A����#H�#H�I�
K�
K�	L�	L�	L�
	
�"�"��N�1��)��4�'�!�*�*��.�.�	0�	0�	0�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�E�Es-�1�A�A	�A�A � 
A6�*A1�1A6c
��tdtd��td��g��}		|�#xgcttf%x�n}td���d}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��g����|�|jdjtdtd��td��g����|�||��|�	||jdj��dSr�)
rrrr	rjrUrSr[rdrar�s    r�%test_raise_handle_all_raise_one_namedz9TestExceptStarRaise.test_raise_handle_all_raise_one_namedxsk���d�Y�q�\�\�:�a�=�=�$A�B�B��	�
%��
��
%�
%�
%�Y�
�+�
%�
%�
%�
%�
%�
%�!�!�n�n�$����������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����[��^�^�$4�5�5�	7�	7�	7�	
�"�"��N�1��)��4�)�A�,�,�
�1�
�
�!>�?�?�	A�	A�	A�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�E�E�-�1�A&�A	�
A&�!A*�*
B�4A;�;Bc
��tdtd��td��g��}		|�#xgcttf%x�n}td���d}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��g����|�|jdjtdtd��td��g����|�||��|�||jdj��dSr��	rrrr	rUrSr[rdrar�s    r�'test_raise_handle_all_raise_one_unnamedz;TestExceptStarRaise.test_raise_handle_all_raise_one_unnamed�sk���d�Y�q�\�\�:�a�=�=�$A�B�B��	�
%��
��
%�
%�
%�Y�
�+�
%�
%�
%�
%�
%�
%�!�!�n�n�$����������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����[��^�^�$4�5�5�	7�	7�	7�	
�"�"��N�1��)��4�)�A�,�,�
�1�
�
�!>�?�?�	A�	A�	A�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�E�Er�c
��tdtd��td��g��}		|�#xgct%x�n}td���d}~�t%x�n}td���d}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��td��g����|�|jdjtdtd��g����|�|jdjtdtd��g����|�||��|�||jdj��|�||jdj��dS�Nrr8rDr9r7r�rr�r�s    r�%test_raise_handle_all_raise_two_namedz9TestExceptStarRaise.test_raise_handle_all_raise_two_named�s����d�Y�q�\�\�:�a�=�=�$A�B�B��	�
%��
��
%�
%�
%�I�
%�
%�
%�
%�
%�
%�!�!�n�n�$�������
%�
%�
%�
%�
%�
%�!�!�n�n�$����������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����[��^�^�[��^�^�$D�E�E�	G�	G�	G�	
�"�"��N�1��)��4�)�A�,�,��0�0�	2�	2�	2�	
�"�"��N�1��)��4�*�Q�-�-��1�1�	3�	3�	3�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�� � ��s�~�a�'8�'D�E�E�E�E�Es9�1�A?�A	�A?�!A0	�0
A?�:B�
B�
B�Bc
�|�tdtd��td��g��}		|�#xgct%x�ntd����t%x�ntd�����Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��td��g����|�|jdjtdtd��g����|�|jdjtdtd��g����|�||��|�||jdj��|�||jdj��dSr�r�r�s    r�'test_raise_handle_all_raise_two_unnamedz;TestExceptStarRaise.test_raise_handle_all_raise_two_unnamed�s����d�Y�q�\�\�:�a�=�=�$A�B�B��	�
%��
��
%�
%�
%�I�
%�
%�
%�
%�
%�
%�!�!�n�n�$����
%�
%�
%�
%�
%�
%�!�!�n�n�$�������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����[��^�^�[��^�^�$D�E�E�	G�	G�	G�	
�"�"��N�1��)��4�)�A�,�,��0�0�	2�	2�	2�	
�"�"��N�1��)��4�*�Q�-�-��1�1�	3�	3�	3�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�� � ��s�~�a�'8�'D�E�E�E�E�Es9�1�A9�A	�A9�A-	�-A9�4A=�=
B�B�BN�	r r!r"r�r�r�r�r�r�r#r$rr�r�Ks�������F�F�F�,F�F�F�,F�F�F�(F�F�F�(F�F�F�6F�F�F�F�Fr$r�c�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestExceptStarRaiseFromc
��tdtd��td��g��}		|�#xgct%x�n}td��|�d}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��tdtd��g��g����|�|jdjtdtd��g����|�|jdjtdtd��g����|�||��|�	||jdj��|�	||jdj��|�||jdj��|�||jdj��dSr�)
rrrrrUrSr[r\rdrar�s    rr�z(TestExceptStarRaiseFrom.test_raise_named�s���d�Z��]�]�G�A�J�J�$?�@�@��	�
*��
��
*�
*�
*�G�
*�
*�
*�
*�
*�
*���l�l��)����������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����Y�q�\�\�>�$��A����#H�#H�I�
K�
K�	L�	L�	L�
	
�"�"��N�1��)��4�'�!�*�*��.�.�	0�	0�	0�	
�"�"��N�1��'��4�'�!�*�*��.�.�	0�	0�	0�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�� � ��s�~�a�'8�'B�C�C�C��#�#�D�#�.��*;�*G�H�H�H��#�#�D�#�.��*;�*E�F�F�F�F�Fs-�1�A �A	�
A �A$�$
A:�.A5�5A:c
� �tdtd��td��g��}		|�#xgct%x�n&tj��}td��|���Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��tdtd��g��g����|�|jdjtdtd��g����|�|jdj	tdtd��g����|�
||��|�||jdj��|�||jdj	��|�
||jdj��|�
||jdj	��dSr�)rrrrhrirrUrSr[r\rdrar�s    rr�z*TestExceptStarRaiseFrom.test_raise_unnamed�s���d�Z��]�]�G�A�J�J�$?�@�@��	�
*��
��
*�
*�
*�G�
*�
*�
*�
*�
*�
*��M�O�O����l�l��)�������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����Y�q�\�\�>�$��A����#H�#H�I�
K�
K�	L�	L�	L�
	
�"�"��N�1��)��4�'�!�*�*��.�.�	0�	0�	0�	
�"�"��N�1��'��4�'�!�*�*��.�.�	0�	0�	0�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�� � ��s�~�a�'8�'B�C�C�C��#�#�D�#�.��*;�*G�H�H�H��#�#�D�#�.��*;�*E�F�F�F�F�Fs-�1�A0�#A$	�$A0�+A4�4
B
�>B�B
c
�t�tdtd��td��g��}		|�#xgcttf%x�n}td��|�d}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��g����|�|jdjtdtd��td��g����|�|jdjtdtd��td��g����|�	||��|�
||jdj��|�
||jdj��dSr�)rrrr	rjrUrSr[r\rdrar�s    rr�z=TestExceptStarRaiseFrom.test_raise_handle_all_raise_one_nameds����d�Y�q�\�\�:�a�=�=�$A�B�B��	�
,��
��
,�
,�
,�Y�
�+�
,�
,�
,�
,�
,�
,�!�!�n�n�!�+����������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����[��^�^�$4�5�5�	7�	7�	7�	
�"�"��N�1��)��4�)�A�,�,�
�1�
�
�!>�?�?�	A�	A�	A�	
�"�"��N�1��'��4�)�A�,�,�
�1�
�
�!>�?�?�	A�	A�	A�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�� � ��s�~�a�'8�'B�C�C�C�C�Cs-�1�A'�A	�
A'�"A+�+
B�5A<�<Bc
��tdtd��td��g��}		|�#xgcttf%x�n)}tj��}td��|�d}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��g����|�|jdjtdtd��td��g����|�|jdj	tdtd��td��g����|�
||��|�||jdj��|�||jdj	��dSr��rrrrhrir	rUrSr[r\rdrar�s    rr�z?TestExceptStarRaiseFrom.test_raise_handle_all_raise_one_unnamed,s����d�Y�q�\�\�:�a�=�=�$A�B�B��	�
,��
��
,�
,�
,�Y�
�+�
,�
,�
,�
,�
,�
,��M�O�O��!�!�n�n�!�+����������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����[��^�^�$4�5�5�	7�	7�	7�	
�"�"��N�1��)��4�)�A�,�,�
�1�
�
�!>�?�?�	A�	A�	A�	
�"�"��N�1��'��4�)�A�,�,�
�1�
�
�!>�?�?�	A�	A�	A�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�� � ��s�~�a�'8�'B�C�C�C�C�Cs-�1�A:�#A+	�+
A:�5A>�>
B�B�Bc
��tdtd��td��g��}		|�#xgct%x�n}td��|�d}~�t%x�n}td��|�d}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��td��g����|�|jdjtdtd��g����|�|jdjtdtd��g����|�|jdjtdtd��g����|�|jdjtdtd��g����|�||��|�	||jdj��|�	||jdj��dSr�)
rrrr	rUrSr[r\rdrar�s    rr�z=TestExceptStarRaiseFrom.test_raise_handle_all_raise_two_namedFso���d�Y�q�\�\�:�a�=�=�$A�B�B��	�
,��
��
,�
,�
,�I�
,�
,�
,�
,�
,�
,�!�!�n�n�!�+�������
,�
,�
,�
,�
,�
,�!�!�n�n�!�+����������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����[��^�^�[��^�^�$D�E�E�	G�	G�	G�	
�"�"��N�1��)��4�)�A�,�,��0�0�	2�	2�	2�	
�"�"��N�1��'��4�)�A�,�,��0�0�	2�	2�	2�	
�"�"��N�1��)��4�*�Q�-�-��1�1�	3�	3�	3�	
�"�"��N�1��'��4�*�Q�-�-��1�1�	3�	3�	3�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�� � ��s�~�a�'8�'B�C�C�C�C�Cs9�1�B�A	�B�"A2	�2
B�<B�
B�B�Bc
�l�tdtd��td��g��}		|�#xgct%x�n&tj��}td��|��t%x�n&tj��}td��|���Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|�|tdtd��td��g����|�|jdjtdtd��g����|�|jdj	tdtd��g����|�|jdjtdtd��g����|�|jdj	tdtd��g����|�
||��|�||jdj��|�||jdj	��|�||jdj��|�||jdj	��dSr�r�r�s    rr�z?TestExceptStarRaiseFrom.test_raise_handle_all_raise_two_unnamedis����d�Y�q�\�\�:�a�=�=�$A�B�B��
	�
,��
��
,�
,�
,�I�
,�
,�
,�
,�
,�
,��M�O�O��!�!�n�n�!�+����
,�
,�
,�
,�
,�
,��M�O�O��!�!�n�n�!�+�������������������	�	�	��C�C�C�C�C�C�����	����	
�"�"����[��^�^�[��^�^�$D�E�E�	G�	G�	G�	
�"�"��N�1��)��4�)�A�,�,��0�0�	2�	2�	2�	
�"�"��N�1��'��4�)�A�,�,��0�0�	2�	2�	2�	
�"�"��N�1��)��4�*�Q�-�-��1�1�	3�	3�	3�	
�"�"��N�1��'��4�*�Q�-�-��1�1�	3�	3�	3�	
�#�#�D�#�.�.�.�� � ��s�~�a�'8�'D�E�E�E�� � ��s�~�a�'8�'B�C�C�C�� � ��s�~�a�'8�'D�E�E�E�� � ��s�~�a�'8�'B�C�C�C�C�Cs9�1�B!�#A$	�$B!�2#B	�B!�B%�%
B;�/B6�6B;Nr�r#r$rr�r��s�������G�G�G�:G�G�G�<D�D�D�2D�D�D�4!D�!D�!D�F%D�%D�%D�%D�%Dr$r�c��eZdZd�Zd�ZdS)�$TestExceptStarExceptionGroupSubclassc���G�fd�dt���				td���#t$r}�d|gd��d�d}~wwxYw#�$r6}	td���#t$r}�d||gd���d}~wwxYwd}~wwxYw#xgct%x�n}|}d}~nd}~��Xx�YncYwxYwn#�$r}|}Yd}~nd}~wwxYw|�|���|�|���|�|jd	���|�||��|�|jd��|�|jd��|�|jd	jd��dS)
Nc�*���eZdZ�fd�Z�fd�Z�xZS)�MTestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass.<locals>.EGc�\��t���|||��}||_|SrY)�super�__new__�code)�clsrQ�excsr�objrOs     �rrzUTestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass.<locals>.EG.__new__�s(����g�g�o�o�c�7�D�9�9������
r$c�2���|j||j��SrY)rQr)rr
�EGs  �r�derivezTTestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass.<locals>.EG.derive�s����r�$�,��d�i�8�8�8r$)r r!r"rr�
__classcell__)rOr
s@�rr
r�sR��������
�
�
�
�
�

9�
9�
9�
9�
9�
9�
9�
9�
9r$r
rD�nested�er8rrr)rrrr=rSrar<r)r�ter�ver�veg�tegr
s       @r�test_except_star_EG_subclasszATestExceptStarExceptionGroupSubclass.test_except_star_EG_subclass�s/���	9�	9�	9�	9�	9�	9�	9��	9�	9�	9�	�
�	9�@�'��l�l�*��$�@�@�@� �b��B�4��5�5�4�?�����@������9�9�9�9�(��m�m�+��%�9�9�9� �b���F�|�R�8�8�8�����9��������9�����

�
�
�J�
�
�
�
�
�
����������������������������	�	�	��C�C�C�C�C�C�����	����	
���c�2�&�&�&����c�2�&�&�&����c�n�Q�/��4�4�4�� � ��c�*�*�*������2�&�&�&������2�&�&�&�������*�/��5�5�5�5�5st�*�
A�A�A�A�B�A � 
A>�*A9�9A>�>B�B�B	�	B.�B	�B.�)B2�2C�7B>�>Cc	���G�fd�dt���		�dtd��td��g���#xgct%x�n	}|}�d}~�t%x�n}|}d}~nd}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw|||fD]-}|�|��|�|����.|�|�dtd��g����|�|�dtd��g����|�|�dtd��g����dS)Nc� ��eZdZd�Z�fd�ZdS)�YTestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclass.<locals>.FalsyEGc��dS�NFr#rs r�__bool__zbTestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclass.<locals>.FalsyEG.__bool__�s���ur$c�&���|j|��SrY)rQ)rr
�FalsyEGs  �rrz`TestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclass.<locals>.FalsyEG.derive�s����w�t�|�T�2�2�2r$N)r r!r"rr)rs�rrr�s=�������
�
�
�
3�
3�
3�
3�
3�
3�
3r$rrr8rD)rrrr:�assertFalser=rU)rr�tes�vesr@rs     @r�#test_falsy_exception_group_subclasszHTestExceptStarExceptionGroupSubclass.test_falsy_exception_group_subclass�s����	3�	3�	3�	3�	3�	3�	3�n�	3�	3�	3�
	�
��g�d�Y�q�\�\�:�a�=�=�$A�B�B�B��
�
�
�I�
�
�
�
�
�
����������
�
�
�
�
�
����������������������������	�	�	��C�C�C�C�C�C�����	�����s�C��	.�	.�A����Q�����!�!�!�W�-�-�-�-��"�"�3����y��|�|�n�(E�(E�F�F�F��"�"�3����y��|�|�n�(E�(E�F�F�F��"�"�3����z�!�}�}�o�(F�(F�G�G�G�G�Gs;�(A�A:�A	�A:�%A+	�'A:�5A>�>
B�B�BN)r r!r"rr"r#r$rrr�s8������!6�!6�!6�FH�H�H�H�Hr$rc��eZdZd�ZdS)�TestExceptStarCleanupc���		td���#	tt���#xgct%x�nn��Xx�YncYwxYwddzYnxYwn#t$r}|}Yd}~nd}~wwxYw|�|td����|�|jtd����|�tj	��d��dS)Nrr8rzdivision by zero)
rr�intr:rU�ZeroDivisionErrorr[r<rhrir�s   r�test_sys_exception_restoredz1TestExceptStarCleanup.test_sys_exception_restored�s��
	�
� ��n�n�$��
��#�C�.�.�(�����	������������������������!�����������	�	�	��C�C�C�C�C�C�����	����	
�"�"�3�(9�:L�(M�(M�N�N�N��"�"�3�?�J�r�N�N�C�C�C��������$�/�/�/�/�/s0��A�)�A�
A�A�
A*�A%�%A*N)r r!r"r(r#r$rr$r$�s#������0�0�0�0�0r$r$c��eZdZGd�de��ZGd�de��ZGd�de��ZGd�de��Zd	�Zd
�Z	d�Z
d�Zd
�Zd�Z
d�ZdS)�"TestExceptStar_WeirdLeafExceptionsc��eZdZdZdS)�0TestExceptStar_WeirdLeafExceptions.UnhashableExcN)r r!r"�__hash__r#r$r�
UnhashableExcr,�s���������r$r.c��eZdZd�ZdS)�1TestExceptStar_WeirdLeafExceptions.AlwaysEqualExcc��dS�NTr#�r�others  r�__eq__z8TestExceptStar_WeirdLeafExceptions.AlwaysEqualExc.__eq__�����4r$N�r r!r"r5r#r$r�AlwaysEqualExcr0�s#������	�	�	�	�	r$r8c��eZdZd�ZdS)�0TestExceptStar_WeirdLeafExceptions.NeverEqualExcc��dSrr#r3s  rr5z7TestExceptStar_WeirdLeafExceptions.NeverEqualExc.__eq__�����5r$Nr7r#r$r�
NeverEqualExcr:�s#������	�	�	�	�	r$r=c��eZdZd�ZdS)�1TestExceptStar_WeirdLeafExceptions.BrokenEqualExcc��t���rY��RuntimeErrorr3s  rr5z8TestExceptStar_WeirdLeafExceptions.BrokenEqualExc.__eq__�����.�.� r$Nr7r#r$r�BrokenEqualExcr?�s#������	!�	!�	!�	!�	!r$rDc�D�|j|j|j|jg|_dSrY)r.r8r=rD�	bad_typesrs r�setUpz(TestExceptStar_WeirdLeafExceptions.setUp�s'���,��-��,��-�/����r$c��d\}}		|�#xgc|%x�n}|}d}~nd}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw||fS�N)NN�r:�rr�typerqrrrs      r�except_typez.TestExceptStar_WeirdLeafExceptions.except_type���� ���t�	�
����
�
�
�D�
�
�
�
�
�
����������������������������	�	�	��D�D�D�D�D�D�����	�����d�{��"�
�*�	�*�.�
A�?�Ac��|jD]�}|�|��5tdtd��|d��g��}|�||��\}}|�|td|d��g����|�|tdtd��g����ddd��n#1swxYwY��dSrw�rF�subTestrrrMrU�r�Badrrqrrs     r�$test_catch_unhashable_leaf_exceptionzGTestExceptStar_WeirdLeafExceptions.test_catch_unhashable_leaf_exception	s8���>�	@�	@�C����c�"�"�
@�
@�#�D�9�Q�<�<���Q���*@�A�A��"�.�.�r�3�7�7���t��*�*��>�$���Q����9�9�;�;�;��*�*��.��	�!���~�>�>�@�@�@�
@�
@�
@�
@�
@�
@�
@�
@�
@�
@�
@����
@�
@�
@�
@��	@�	@s�B"C
�
C	�C	c��|jD]�}|�|��5tdtd��|d��g��}|�|t��\}}|�|tdtd��g����|�|td|d��g����ddd��n#1swxYwY��dSrwrQrSs     r�test_propagate_unhashable_leafzATestExceptStar_WeirdLeafExceptions.test_propagate_unhashable_leafs#���>�	:�	:�C����c�"�"�
:�
:�#�D�9�Q�<�<���Q���*@�A�A��"�.�.�r�9�=�=���t��*�*��>�$��1����?�?�A�A�A��*�*��.����A���x�8�8�:�:�:�
:�
:�
:�
:�
:�
:�
:�
:�
:�
:�
:����
:�
:�
:�
:��	:�	:s�B'C�C	�C	c	�V�|jD]�}|�|��5tdtd��|d��g��}|�|t
��\}}|�|��|�||��ddd��n#1swxYwY��dSrw)rFrRrrrMr�assertIsNonerUrSs     r�"test_catch_nothing_unhashable_leafzETestExceptStar_WeirdLeafExceptions.test_catch_nothing_unhashable_leafs����>�	5�	5�C����c�"�"�
5�
5�#�D�9�Q�<�<���Q���*@�A�A��"�.�.�r�7�;�;���t��!�!�%�(�(�(��*�*�4��4�4�4�	
5�
5�
5�
5�
5�
5�
5�
5�
5�
5�
5����
5�
5�
5�
5��	5�	5��A2B�B!	�$B!	c	�V�|jD]�}|�|��5tdtd��|d��g��}|�|t
��\}}|�||��|�|��ddd��n#1swxYwY��dSrw)rFrRrrrMr:rUrYrSs     r�%test_catch_everything_unhashable_leafzHTestExceptStar_WeirdLeafExceptions.test_catch_everything_unhashable_leaf%s����>�	(�	(�C����c�"�"�
(�
(�#�D�9�Q�<�<���Q���*@�A�A��"�.�.�r�9�=�=���t��*�*�5�"�5�5�5��!�!�$�'�'�'�	
(�
(�
(�
(�
(�
(�
(�
(�
(�
(�
(����
(�
(�
(�
(��	(�	(r[c���|jD]�}|�|��5tdtd��|d��t	d��g��}		|�#xgct%x�nn�|%x�n���Xx�YncYwxYwn#t
$r}|}Yd}~nd}~wwxYw|�|td|d��t	d��g����ddd��n#1swxYwY��dSr�)rFrRrrrr:rU)rrTrrr@s     r�test_reraise_unhashable_leafz?TestExceptStar_WeirdLeafExceptions.test_reraise_unhashable_leaf-s����>�	H�	H�C����c�"�"�
H�
H�#��9�Q�<�<���Q����A���?�A�A���� ������I����������������������������������� �����C�C�C�C�C�C����������*�*����s�s�1�v�v�z�!�}�}�.E�F�F�H�H�H�
H�
H�
H�
H�
H�
H�
H�
H�
H�
H�
H����
H�
H�
H�
H��	H�	HsS�7C&�A�B�4A5
�5B�<B�C&�
B�B�C&�B�?C&�&C*	�-C*	N)r r!r"rr.r8r=rDrGrMrUrWrZr]r_r#r$rr*r*�s-�����������
������������������
����!�!�!�!�!��!�!�!�/�/�/�	�	�	�@�@�@�:�:�:�5�5�5�(�(�(�H�H�H�H�Hr$r*c��eZdZGd�de��ZGd�de��ZGd�de��ZGd�de��Zd	�Zd
�Z	d�Z
d�Zd
�Zd�Z
dS)�*TestExceptStar_WeirdExceptionGroupSubclassc��eZdZdZd�ZdS)�7TestExceptStar_WeirdExceptionGroupSubclass.UnhashableEGNc�>�t|��|j|��SrY�rLrQ�rr
s  rrz>TestExceptStar_WeirdExceptionGroupSubclass.UnhashableEG.deriveH����4��:�:�d�l�D�1�1�1r$)r r!r"r-rr#r$r�UnhashableEGrcEs(��������	2�	2�	2�	2�	2r$rhc��eZdZd�Zd�ZdS)�8TestExceptStar_WeirdExceptionGroupSubclass.AlwaysEqualEGc��dSr2r#r3s  rr5z?TestExceptStar_WeirdExceptionGroupSubclass.AlwaysEqualEG.__eq__Lr6r$c�>�t|��|j|��SrYrerfs  rrz?TestExceptStar_WeirdExceptionGroupSubclass.AlwaysEqualEG.deriveOrgr$N�r r!r"r5rr#r$r�
AlwaysEqualEGrjKs2������	�	�	�	2�	2�	2�	2�	2r$rnc��eZdZd�Zd�ZdS)�7TestExceptStar_WeirdExceptionGroupSubclass.NeverEqualEGc��dSrr#r3s  rr5z>TestExceptStar_WeirdExceptionGroupSubclass.NeverEqualEG.__eq__Sr<r$c�>�t|��|j|��SrYrerfs  rrz>TestExceptStar_WeirdExceptionGroupSubclass.NeverEqualEG.deriveVrgr$Nrmr#r$r�NeverEqualEGrpRs2������	�	�	�	2�	2�	2�	2�	2r$rsc��eZdZd�Zd�ZdS)�8TestExceptStar_WeirdExceptionGroupSubclass.BrokenEqualEGc��t���rYrAr3s  rr5z?TestExceptStar_WeirdExceptionGroupSubclass.BrokenEqualEG.__eq__ZrCr$c�>�t|��|j|��SrYrerfs  rrz?TestExceptStar_WeirdExceptionGroupSubclass.BrokenEqualEG.derive]rgr$Nrmr#r$r�
BrokenEqualEGruYs2������	!�	!�	!�	2�	2�	2�	2�	2r$rxc�D�|j|j|j|jg|_dSrY)rhrnrsrxrFrs rrGz0TestExceptStar_WeirdExceptionGroupSubclass.setUp`s'���+��,��+��,�.����r$c��d\}}		|�#xgc|%x�n}|}d}~nd}~��Xx�YncYwxYwn#t$r}|}Yd}~nd}~wwxYw||fSrIrJrKs      rrMz6TestExceptStar_WeirdExceptionGroupSubclass.except_typefrNrOc���|jD]�}|�|��5|dtd��|dtd��g��g��}|�|t��\}}|�||dtd��g����|�||d|dtd��g��g����ddd��n#1swxYwY��dS�Nrr8rrD)rFrRrrrMrU�r�BadEGrrqrrs     r�3test_catch_some_unhashable_exception_group_subclassz^TestExceptStar_WeirdExceptionGroupSubclass.test_catch_some_unhashable_exception_group_subclassqsZ���^�		E�		E�E����e�$�$�
E�
E��U�4�%�a�L�L�!�E�(�Z��]�]�O�<�<�>�?�?��#�.�.�r�9�=�=���t��*�*�5�%�%��y��|�|�n�2M�2M�N�N�N��*�*�4��E�$���x�*�Q�-�-��!A�!A� B�C�C�E�E�E�
E�
E�
E�
E�
E�
E�
E�
E�
E�
E�
E����
E�
E�
E�
E��		E�		Es�B9C$�$C(	�+C(	c�l�|jD]�}|�|��5|dtd��|dtd��g��g��}|�|t
��\}}|�|��|�||��ddd��n#1swxYwY��dSr|)rFrRrrrMrrYrUr}s     r�3test_catch_none_unhashable_exception_group_subclassz^TestExceptStar_WeirdExceptionGroupSubclass.test_catch_none_unhashable_exception_group_subclass}s���^�		5�		5�E����e�$�$�
5�
5��U�4�%�a�L�L�!�E�(�Z��]�]�O�<�<�>�?�?��#�.�.�r�7�;�;���t��!�!�%�(�(�(��*�*�4��4�4�4�
5�
5�
5�
5�
5�
5�
5�
5�
5�
5�
5����
5�
5�
5�
5��		5�		5��A=B(�(B,	�/B,	c�l�|jD]�}|�|��5|dtd��|dtd��g��g��}|�|t
��\}}|�||��|�|��ddd��n#1swxYwY��dSr|)rFrRrrrMr:rUrYr}s     r�2test_catch_all_unhashable_exception_group_subclassz]TestExceptStar_WeirdExceptionGroupSubclass.test_catch_all_unhashable_exception_group_subclass�s���^�		(�		(�E����e�$�$�
(�
(��U�4�%�a�L�L�!�E�(�Z��]�]�O�<�<�>�?�?��#�.�.�r�9�=�=���t��*�*�5�"�5�5�5��!�!�$�'�'�'�
(�
(�
(�
(�
(�
(�
(�
(�
(�
(�
(����
(�
(�
(�
(��		(�		(r�c�>�|jD�]}|�|��5|dtd��td��|dtd��t	d��g��g��}		|�#xgct%x�nn�t%x�n���Xx�YncYwxYwn#t
$r}|}Yd}~nd}~wwxYw|�||dtd��|dt	d��g��g����ddd��n#1swxYwY��dS)Nrr8rDrr9r7)rFrRrrrr:rU)rr~rrr@s     r�test_reraise_unhashable_egzETestExceptStar_WeirdExceptionGroupSubclass.test_reraise_unhashable_eg�s����^�	@�	@�E����e�$�$�
@�
@��U�4�%�a�L�L�*�Q�-�-�!�E�(�Z��]�]�G�A�J�J�,G�H�H�J�K�K���� ������J����������#������������������������� �����C�C�C�C�C�C����������*�*����t�i��l�l�$�u�X���
�
�|�<�<�&>�?�?�@�@�@�!
@�
@�
@�
@�
@�
@�
@�
@�
@�
@�
@����
@�
@�
@�
@��	@�	@sU�AD�2A4�4B �B
�B �B$�#D�$
B:�.B5�0D�5B:�:A
D�D	�D	N)r r!r"rrhrnrsrxrGrMrr�r�r�r#r$rraraAs������2�2�2�2�2�~�2�2�2�2�2�2�2�2��2�2�2�2�2�2�2�2�~�2�2�2�2�2�2�2�2��2�2�2�.�.�.�	�	�	�
E�
E�
E�
5�
5�
5�
(�
(�
(�@�@�@�@�@r$ra�__main__)rh�unittestr*�TestCaserr&rKrfr�r�r�rr$r*rar �mainr#r$r�<module>r�s���
�
�
�
���������*�*�*�*�*�H�-�*�*�*�Zw3�w3�w3�w3�w3�x�/@�w3�w3�w3�t"B�"B�"B�"B�"B�X�&�"B�"B�"B�J}2�}2�}2�}2�}2�>�}2�}2�}2�@w7�w7�w7�w7�w7�N�w7�w7�w7�tIF�IF�IF�IF�IF�.�IF�IF�IF�XwD�wD�wD�wD�wD�n�wD�wD�wD�t>H�>H�>H�>H�>H�>�>H�>H�>H�B0�0�0�0�0�N�0�0�0�&YH�YH�YH�YH�YH��YH�YH�YH�xh@�h@�h@�h@�h@��h@�h@�h@�V�z����H�M�O�O�O�O�O��r$