403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.216.202
Web Server : Microsoft-IIS/10.0
System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64
User : IUSR ( 0)
PHP Version : 8.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /Python315/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /Python315/Lib/test/__pycache__/test_traceback.cpython-315.opt-2.pyc
R
>lqj�rc
�	�]QHGs]QHGs]PHs]PHs]PHs]PHs]PH s]PH$s	]PH(s	]PH,s]PH0s]PH4s
]PH8s]PH<s]PH@s]PHHs]QHLGs]PHTs]QHXGsGsGsGsGsGsGsGs]QH|G s G!s!G"s"]QH�G$s$G%s%G&s&]QH�G(s(G)s)]QHXG*s*G+s+]PH�s,]PH�s-]PH�s.]Q	H�G0s0]Q
H�G2s2]PH�s3\4Q6Xc\4Q0LPs5\Q
QQ,2s6Q\6m7\Q,QoN2s8\Q,QpN2s9QQQQQQQQ-s:\3OvO\Oy2TTt-tFD,vq\:O{V]*O}22UaJ.	toos?\2\@2O�Q*sBQQ\	O�2sDQQ2sEQ Q!2sFQ"Q#\F2sG\2Q$Q%22sHQ&Q'\	O�2sI\2\+Q(Q)\E\H\	O�222sJ\\2\+Q*Q+\F\H\	O�2222sK\\2\+Q,Q-\G\H\	O�2222sLQ.Q/2sMQ0sNQ1sO\O�Q2\O�\N28Q3\O�\O28Q402sR\+Q5Q6\	O�\M22sS\\+Q7Q8\	O�\M222sTQ9Q:2sU\+Q;Q<\U\	O�22sV\+Q=Q>\U\	O�22sWQ?Q@\	O�2sXQAQB\	O�2sYQCQD\	O�2sZQEQF\	O�2s[QGQH2s\QIQJ\]2s^QKQL\_2s`QMQN\	O�2saQOQP\	O�2sbPscQQQR2sdQSQT\d2seQUQV\e2sfQWQX\e2sgQYQZ\d2shQ[Q\\E\h\	O�2si\Q]Q^\F\h\	O�22sjQ_Q`\E\f\	O�2skQaQb\E\g\	O�2sl\QcQd\F\f\	O�22sm\QeQf\F\g\	O�22snQgQh\	O�2soQiQj\	O�2spQkQl\	O�2sqQmQn\	O�2sr\4Q6Xc\	O�2P!P!ttooh)q�)�
namedtuple)�StringIO)�support)�Error�captured_output�cpython_only�	ALWAYS_EQ�requires_debug_ranges�has_no_debug_ranges�requires_subprocess�	os_helper)�TESTFN�temp_dir�unlink)�assert_python_ok�assert_python_failure�make_script)�ensure_lazy_imports�forget)�force_not_colorized�force_not_colorized_test_class)�partial)�Path�__main__�.�code�co_filename�co_namec��[Q,2!)�)rrrr)�iter)�_s&�(C:\Python315\\Lib\test\test_traceback.py�<lambda>r#'s��4���#7��frame�tb�reset�z�filename�fn�error_highlight�E�note�nzlevenshtein_examples.jsonc�n``�\sQs]5snU1QksU1QksQsQsQsQs	Qs
QsQ	sQ
s
QsQsQ
sQsQs\Q2sQsQsQsQsQsQsQsQsQsQsQsQs Qs!Qs"Qs#Q s$Q!s%Q"s&\'2\Q#22s(Q$s)\*Q%2s+Q&s,Q's-Q(s.Q)s/Q*s0Q+s1Q,s2Q-s3Us4U9s5!).�TracebackCasesc�f:�[RU_2[OUmP
[mP!�F)�super�setUp�	_colorize�COLORIZE�colorize��self�	__class__s&�r"r4�TracebackCases.setUp8s!���
��
��!�*�*��
�"�	�r$c�P:�[RU_2UO[mP!�N)r3�tearDownr7r5r6r8s&�r"r>�TracebackCases.tearDown=s���
����!�]�]�	�r$c�~�U2[Q2gSc!o[OX#2tPo=!Po=hh9h)zcall did not raise exception)�
ValueError�	traceback�format_exception_only)r9�func�exc�values&&& r"�get_exception_format�#TracebackCases.get_exception_formatAs=��	=��F��;�<�<���	?��2�2�3�>�>��	?�s��<�<�7�<�<c�"�[QQQ2P!)zdef fact(x):
	return x!
�?�exec��compile�r9s&r"�syntax_error_with_caret�&TracebackCases.syntax_error_with_caretIs���-�s�F�;r$c�"�[QQQ2P!)z1 +
rJrKrLrNs&r"�syntax_error_with_caret_2�(TracebackCases.syntax_error_with_caret_2Ls�����f�%r$c�"�[QQQ2P!)zf(x, y for y in range(30), z)rJrKrLrNs&r"�syntax_error_with_caret_range�,TracebackCases.syntax_error_with_caret_rangeOs���/��f�=r$c�"�[QQQ2P!)z def spam():
  print(1)
 print(2)rJrKrLrNs&r"�syntax_error_bad_indentation�+TracebackCases.syntax_error_bad_indentationRs���4�c�6�Br$c�"�[QQQ2P!)uPython = "Ṕýţĥòñ" +rJrKrLrNs&r"�!syntax_error_with_caret_non_ascii�0TracebackCases.syntax_error_with_caret_non_asciiUs���=�s�F�Kr$c�"�[QQQ2P!)z	 print(2)rJrKrLrNs&r"�syntax_error_bad_indentation2�,TracebackCases.syntax_error_bad_indentation2Xs����S�&�)r$c�"�[QQQ2P!)z
blech  (  rJrKrLrNs&r"� tokenizer_error_with_caret_range�/TracebackCases.tokenizer_error_with_caret_range[s����c�6�*r$c�"�[QQQ2P!)u女女女=1; 女女女/rJrKrLrNs&r"�!syntax_error_with_caret_wide_char�0TracebackCases.syntax_error_with_caret_wide_char^s���)�3��7r$c�"�[QQQ2P!)u-f(x, 女女女 for 女女女 in range(30), z)rJrKrLrNs&r"�'syntax_error_with_caret_wide_char_range�6TracebackCases.syntax_error_with_caret_wide_char_rangeas���?��f�Mr$c�0�UOUO[2oUO[	U2]2UOU]*O2Q2UO
QU]*2UOU]*OQ2U]*OQ22UOU]*OQ2]2UOUO[2oUO
QU]*2UOU]*OQ2]2UOU]*OQ2]*U]*OQ22UOU]*OQ2]2UOUO[2oUO
QU]*2UOU]*OQ2]2UOU]*OQ2]*U]*OQ22UOU]*OQ2]2UOUO[2oUO
QU]*2UOU]*OQ2]2UOU]*OQ2U]*OQ22UOU]*OQ2[	Q22UOUO[2oUO
QU]*2UOU]*OQ2]2UOU]*OQ2U]*OQ22UOU]*OQ2]2P!)	�z	return x!�^�!�
�+�yzy for y in range(30)�()
rGrO�SyntaxError�assertEqual�len�strip�assertIn�find�countrRr[rUra�r9�errs& r"�
test_caret�TracebackCases.test_caretds����'�'��(D�(D�(3�5������S��1�%�����Q������5��
�
�c�3�q�6�"�����Q����S�)�3�q�6�;�;�s�+;�<�����Q����c�*�A�.��'�'��(F�(F�(3�5���
�
�c�3�q�6�"�����Q����d�+�Q�/�����Q����S�)�A�-�s�1�v�{�{�3�/?�@�����Q����c�*�A�.��'�'��(N�(N�(3�5���
�
�c�3�q�6�"�����Q����d�+�Q�/�����Q����S�)�A�-�s�1�v�{�{�3�/?�@�����Q����c�*�A�.��'�'��(J�(J�(3�5���
�
�c�3�q�6�"�����Q����d�+�Q�/�����Q����S�)�3�q�6�;�;�s�+;�<�����Q����c�*�C�0F�,G�H��'�'��(M�(M�(3�5���
�
�c�3�q�6�"�����Q����d�+�Q�/�����Q����S�)�3�q�6�;�;�s�+;�<�����Q����c�*�A�.r$c���UOUO[2oUOQU]*2UO	U]*OQ2]2UOUO[2oUOQU]*2UO	U]*OQ2]	2UO	U]*OQ2]2P!)rk)rGrdrqrurrrvrgrwrxs& r"�test_caret_wide_char�#TracebackCases.test_caret_wide_char�s����'�'��(N�(N�(3�5���
�
�c�3�q�6�"�����Q����S�)�6�2��'�'��(T�(T�(3�5���
�
�c�3�q�6�"�����Q����S�)�5�1�����Q����c�*�B�/r$c���[QQ2o[O[U2oUO[	U2]2UOU]*O2Q2P!)�error�
bad syntax�zx.py�Nr�)rqrBrCrrrsrt�r9rErys&  r"�test_nocaret�TracebackCases.test_nocaret�sO���'�#C�D���-�-�k�3�?������S��1�%�����Q������6r$c� �[[Q29^tt^2oUOQ2PPP2[QQ[2vq#UO	2oUO[
U2]2UOU]*Q2UOQU]*2UOU]*Q2UOU]*Q2[[2P!)%fhK�9h[[2h9h)�wz
x = 1 / 0
�-X�no_debug_ranges�"Traceback (most recent call last):sline 1, in <module>�
    x = 1 / 0�#ZeroDivisionError: division by zero)	�openr
�writer�
splitlinesrrrsrur)r9�fr!�stderr�liness&    r"�'test_no_caret_with_no_debug_ranges_flag�6TracebackCases.test_no_caret_with_no_debug_ranges_flag�s���	��f�c�"�"�a����
�&�#�1��'��1�L�A�q��%�%�'�E����S��Z��+����U�1�X�'L�M��M�M�0�%��(�;����U�1�X�'7�8����U�1�X�'M�N��6�N�#�"��
�6�N�s(�C<�C)�B+C<�)C9	�2C9	�4C<�<D
c�L�[OQ2o[[Q29^tt^2oUO	U2PPP2[QQ[2vq4UO
2oUO[U2]2UOU]*Q2UOQU]*2UOU]*Q2UOU]*Q2[[2P!)%fhK�9h[[2h9h)z�
            import traceback
            try:
                x = 1 / 0
            except ZeroDivisionError:
                traceback.print_exc()
            r�r�r�r�sline 4, in <module>r�r�)�textwrap�dedentr�r
r�rr�rrrsrur)r9rr�r!r�r�s&     r"�8test_no_caret_with_no_debug_ranges_flag_python_traceback�GTracebackCases.test_no_caret_with_no_debug_ranges_flag_python_traceback�s������ ���	��f�c�"�"�a�����
�#�,��'��1�L�A�q��%�%�'�E����S��Z��+����U�1�X�'L�M��M�M�0�%��(�;����U�1�X�'7�8����U�1�X�'M�N��6�N�#�"��
�6�N�s)�D�C?�B+D�?D	�D	�
D�D#c�P�[OQ2o[[Q29^tt^2oUO	U2PPP2[[2vooUO
U]2[[2P!)%fhKF9h[[2h9h)a>
                import sys
                from weakref import ref

                sys.setrecursionlimit(15)

                def f():
                    ref(lambda: 0, [])
                    f()

                try:
                    f()
                except RecursionError:
                    pass
        r�)r�r�r�r
r�rrrr)r9rr��rcr!s&    r"�%test_recursion_error_during_traceback�4TracebackCases.test_recursion_error_during_traceback�su����� �
��	��f�c�"�"�a�����
�#�(��/�H�B��1����R��#��6�N�
#�"��
�6�N�s(�B�B�-B�B	�
B	�B�B%c�L�UOUO[2oUO[	U2]2UOU]*O2Q2UO
QU]*2UOU]*OQ2]*U]*OQ22UOUO[2oUO[	U2]2UOU]*O2Q2P!)rjzprint(2)rk�))	rGrX�IndentationErrorrrrsrtrurvr^rxs& r"�test_bad_indentation�#TracebackCases.test_bad_indentation�s����'�'��(I�(I�(8�:������S��1�%�����Q������4��
�
�c�3�q�6�"�����Q����S�)�A�-�s�1�v�{�{�3�/?�@��'�'��(J�(J�(8�:������S��1�%�����Q������4r$c��[2o[OUOU2oUO	UQ,2P!)zKeyboardInterrupt
)�KeyboardInterruptrBrCr:rr)r9�e�lsts&  r"�test_base_exception�"TracebackCases.test_base_exception�s4������-�-�a�k�k�1�=������4�5�6r$c�b�QQ[2o[OV22oUO[	U2]2QoUO
Q7cUOoL'QOUO
UO,2oUOU]*U8QU8Q02P!)c�(`�\sQs]�snQsQsUsP!)�?TracebackCases.test_format_exception_only_bad__str__.<locals>.Xc��]]*P!���rNs&r"�__str__�GTracebackCases.test_format_exception_only_bad__str__.<locals>.X.__str__�����!��r$r���__name__�
__module__�__qualname__�__firstlineno__r��__static_attributes__�__classdictcell__��
__classdict__s@r"�Xr�������
�
r$r��<exception str() failed>r�: rm)r�builtins)�	ExceptionrBrCrrrsr�r��join�r9r�ry�	str_value�str_names&    r"�%test_format_exception_only_bad__str__�4TracebackCases.test_format_exception_only_bad__str__�s���	�	�	��-�-�a���5������S��1�%�.�	��<�<�3�3��~�~�H��x�x����q�~�~� >�?�H�����Q��x��!C�Dr$c��[Q[Q2,2o[OU2oUO	UQ,2P!)�A�B�$ExceptionGroup: A (1 sub-exception)
��ExceptionGrouprArBrCrr�r9�egrys&  r"�.test_format_exception_group_without_show_group�=TracebackCases.test_format_exception_group_without_show_groups9��
�C�*�S�/�!2�
3���-�-�b�1������F�G�Hr$c��[Q[Q2,2o[OUP	Q5oUO	UQQ,2P!�r�r���
show_groupr��   ValueError: B
r�r�s&  r"�test_format_exception_group�*TracebackCases.test_format_exception_groupsB��
�C�*�S�/�!2�
3���-�-�b�T�B������3� �
�	r$c��[Q[Q2,2o[OUP	Q5oUO	UQQ,2P!)r�r�r�z(BaseExceptionGroup: A (1 sub-exception)
z   BaseException: B
)�BaseExceptionGroup�
BaseExceptionrBrCrrr�s&  r"� test_format_base_exception_group�/TracebackCases.test_format_base_exception_groupsC��
��m�C�&8�%9�
:���-�-�b�T�B������7�#�
�	r$c��[Q2oUOQ2[QU,2o[OUP	Q5oUOU,QN2P!)r��Noter�r�)r�r�z   Note
)rA�add_noter�rBrCrr�r9rEr�rys&   r"�%test_format_exception_group_with_note�4TracebackCases.test_format_exception_group_with_notesL����o�����V��
�C�#��
'���-�-�b�T�B������
�	r$c��[Q[Q2,2o[O[UP	Q5oUO	UQQ,2P!r�r�r�s&  r"�*test_format_exception_group_explicit_class�9TracebackCases.test_format_exception_group_explicit_class#sD��
�C�*�S�/�!2�
3���-�-�n�b�T�R������3� �
�	r$c��[Q[Q2[Q2,2o[OUP	Q5oUOU,QN2P!)r�r��Cr�)�%ExceptionGroup: A (2 sub-exceptions)
r�z   TypeError: C
)r�rA�	TypeErrorrBrCrrr�s&  r"�/test_format_exception_group_multiple_exceptions�>TracebackCases.test_format_exception_group_multiple_exceptions+sB��
�C�*�S�/�9�S�>�!B�
C���-�-�b�T�B������
�	r$c��[Q[Q2,2o[OUP	Q5oUO	U,QN2P!)�A
1zB
2r�)�&ExceptionGroup: A
1 (1 sub-exception)
r��   2
r�r�s&  r"�.test_format_exception_group_multiline_messages�=TracebackCases.test_format_exception_group_multiline_messages4s=��
�F�Z��%7�$8�
9���-�-�b�T�B������
�	r$c���[Q2oUOQ2[QU[Q2,2o[O
UP	Q5oUO
U,QN2P!)zB

2
z
C

3zA

1
�Dr�)
z)ExceptionGroup: A

1
 (2 sub-exceptions)
r��   
r�r�r�z   C
r�z   3
z   IndexError: D
)rAr�r��
IndexErrorrBrCrrr�s&   r"�/test_format_exception_group_multiline2_messages�>TracebackCases.test_format_exception_group_multiline2_messages=sT����$�����Z� �
�J��j��o�(>�
?���-�-�b�T�B������
�	r$c��[QQ2o[QU,2o[OUP	Q5oUO	U,QN2P!)r�r�r�r�)r�z     File "x.py", line 23
z       bad syntax
z   SyntaxError: error
)rqr�rBrCrrr�s&   r"�(test_format_exception_group_syntax_error�7TracebackCases.test_format_exception_group_syntax_errorOsD���'�#C�D��
�F�S�E�
*���-�-�b�T�B������
�	r$c��[Q2oUOQ2[Q[Q2[QU[	Q2,2[Q2,2o[OUP	Q5oUOU,QN2P!)	r�zNote
multiliner�r�r�r,�Fr�)z%ExceptionGroup: A (3 sub-exceptions)
r�z(   ExceptionGroup: C (2 sub-exceptions)
z      IndexError: D
z      Note
z      multiline
z      LookupError: E
z   TypeError: F
)	r�r�r�rA�LookupErrorr�rBrCrrr�s&   r"�-test_format_exception_group_nested_with_notes�<TracebackCases.test_format_exception_group_nested_with_notesZst����o�����&�'�
�C��s�O��3��k�#�&6� 7�8��c�N�"
���
�-�-�b�T�B������	
�		r$c	��QoQo[QU2[QU2,2,2o[OUP	Q5oUOU,QN2P!)c�P�]]*P![c
oStPo=!Po=hh9hr���ZeroDivisionError�r�s r"r��ETracebackCases.test_format_exception_group_with_tracebacks.<locals>.fos%��
��A����$�
����
�s�	�	%�%� �%�%c�P�[Q2g[c
oStPo=!Po=hh9h��g�r�rs r"r
�ETracebackCases.test_format_exception_group_with_tracebacks.<locals>.gus&��
���n�$���
����
�s��	%�%� �%�%r�r�r�)r�z'   ZeroDivisionError: division by zero
z'   ExceptionGroup: B (1 sub-exception)
z      TypeError: g
�r�rBrCrr)r9r�r
r�rys&    r"�+test_format_exception_group_with_tracebacks�:TracebackCases.test_format_exception_group_with_tracebacksns[��	�	��C�
�C��3����&�"
����-�-�b�T�B������
�	r$c��Qo[QU2,2o[OUP	Q5oUOUQQ,2P!)c��]]*P![c
[]2gh9h[c
oStPo=!Po=hh9hr�)rrAr�rs r"r��@TracebackCases.test_format_exception_group_with_cause.<locals>.f�sB��
�(���E�E��(�(�$�Q�-�'�(���
����
�s(�	�	&�
&�)�	A�A�;�A�Ar�r�r�z   ValueError: 0
r
)r9r�r�rys&   r"�&test_format_exception_group_with_cause�5TracebackCases.test_format_exception_group_with_cause�sF��	��C�!�#��
'���-�-�b�T�B������3� �
�	r$c��[QQ2[QP,]*2[QQ2[QQ2[QQ2[QQ2[QP,]*2[QQ	2[QQ
21	FD�oUOUQ59^tt^2[OUP	Q5oUOdDUO[
U2]2UOU]*OQ22LUO[
U2]2UOUP*Q2PPP2J�	P!)%fhJ�9h)r��abcd�abcdef�rEr��  FilezSyntaxError: error
)r���rj)r��a�br)r�rrrj�r)r�rrr�c�d)	rq�subTestrBrC�linenorrrs�
assertTrue�
startswithr�s&  r"�;test_format_exception_group_syntax_error_with_custom_values�JTracebackCases.test_format_exception_group_syntax_error_with_custom_values�s��
���(���$��!��,����.����.���!1�2����*���$��!��,���!3�4���!;�<�
�C����#��&�&��5�5�c�d�K���:�:�)��$�$�S��X�q�1��O�O�C��F�$5�$5�h�$?�@��$�$�S��X�q�1�� � ��R��*@�A�'�&�
�'�&�&�s�&E	�<A7E	�E
�
E
c�````	�]PHn	]PHnROR	OQQ,RORO
Q5oUO
2vq#[UQ2O2]*nUUUU	1QkoUPQQ]2QFDdoUQ6XcQoLUQ6XcQ	oLQ
oUQOU2Ve]2UQOU2Ve]2UQ
OU2Ve]2Jf	UQQ
Q]2P!)r�-cz&import sys; print(sys.stdout.encoding)��stdoutr��asciic�:�[[QUQ59^tt^2oUOQOV22PPP2RO	RO
[,ROROQ5oUO2vqgUOR
2O2o[[2UOR
Q2oUOR
2o	QOU	2o
QOU	2oROQU*U]*2ROU]*U
2U]*oROV�2P!)%fhCK#9h[[2h9h)r�)�encodingz}{0}if 1:
                        import traceback;
                        raise RuntimeError('{1}')
                        r)�backslashreplacezraise RuntimeError('{0}')zRuntimeError: {0}zline %s)r�r
r��format�Popen�
executable�PIPE�STDOUT�communicate�decoder�r�encoderu�assertEndsWithrr)�
firstlines�message�charsetr"�output�processr*r��encoded_message�
message_ascii�err_line�err_msg�actual_err_msg�output_encodingr9�
subprocess�syss&&&&         ����r"�do_test�1TracebackCases.test_encoded_file.<locals>.do_test�s;���
��&�#��8�8�F��L�L�"�#�F�:�7�9�9�%�*�*�C�N�N�F�+C�%�?�?�:�3D�3D�+�F��!(�!4�!4�!6�������7�B�B�D���v��&�n�n�_�-?�A�O�,�2�2�?�C�M�2�9�9�-�H�H�)�0�0��?�G��M�M�)�f�,�f�Q�i�8�����q�	�8�4�#�A�Y�N����^�5�39�8�8���v��s(�E-�!E�A1E-�E*	�"E*	�$	E-�-E>�foo�utf-8�GBKu丂儀uhé hoz# coding: {0}
z#!shebang
# coding: {0}
z 	
# coding: {0}
zx=0
# coding: GBK
)r+z
iso-8859-1rHrI)
rDrCr0r1r2r3r4�strr�r/)
r9r<r*r�rEr:�textrBrCrDs
f      @@@r"�test_encoded_file� TracebackCases.test_encoded_file�s���	�
�"�"�C�N�N�D�$L�$N�*4�/�/�*4�*;�*;�#�=��!�,�,�.����f�g�.�9�9�;�A�>��	6�	6�<	��E�7�A�&�>�G��'�!����E�!�%��!���%�,�,�W�5��1�
&��0�7�7��@��1�
&��,�3�3�G�<��1�
&�?�	�&�
�G�Q�?r$c��[OQ2o[QU2vq#o,QNoUOUO	2U2P!)a
            import sys
            import traceback

            class PrintExceptionAtExit(object):
                def __init__(self):
                    try:
                        x = 1 / 0
                    except Exception as e:
                        self.exc = e
                        # self.exc.__traceback__ contains frames:
                        # explicitly clear the reference to self in the current
                        # frame to break a reference cycle
                        self = None

                def __del__(self):
                    traceback.print_exception(self.exc)

            # Keep a reference in the module namespace to call the destructor
            # when the module is unloaded
            obj = PrintExceptionAtExit()
        r()r�s&  File "<string>", line 8, in __init__r�s
        ^^^^^r�)r�r�rrrr�)r9rr�r*r��expecteds&     r"�test_print_traceback_at_exit�+TracebackCases.test_print_traceback_at_exit�sL����� �
��,.�d�D�9���F�<��
	
����*�*�,�h�7r$c�Z�[OQ2o[29^tt^2o[UQUQ5o[	U2vqEoPPP2UOW]2QQWQ0O
2Q,oUOWO2U2P!)%fhK[9h)z�            import io
            import traceback
            # Trigger fallback mode
            traceback._print_exception_bltin = None
            del io.open
            raise RuntimeError("should not crash")
        �tb_test_no_io_open)�
script_dir�script_basename�sourcer��  File "z", line 6, in <module>sRuntimeError: should not crash)r�r�rrrrrr6r�)r9�crasherrT�scriptr�r*r�rOs&       r"�test_lost_io_open� TracebackCases.test_lost_io_opens����/�/�#�
���Z�Z�:� �%� 4�� �F�"7�v�!>��B���	
����Q��9��v�h�&<�=�D�D�F�5�7��	
����*�*�,�h�7��Z�s�B�B*	�#B*	c��[2o[O[[Q2PUQ5UO	UO2Q2P!��	projector��file�Exception: projector
�rrB�print_exceptionr�rr�getvalue�r9r;s& r"�test_print_exception�#TracebackCases.test_print_exception-s?������!�!��y��-�t�&�	
�	
������*�,D�Er$c��[2o[O[Q2UQ5UO	UO2Q2P!r]rbres& r"�test_print_exception_exc�'TracebackCases.test_print_exception_exc4s6������!�!�)�K�"8�v�F�������*�,D�Er$c��[O[Q[]*229^tt^2[	2o[
OUQ5UOUO2Q2PPP2P!)%fhP!9h)�last_excr_zValueError: 42
)	r�	swap_attrrDrArrB�
print_lastrrrdres& r"�test_print_last�TracebackCases.test_print_last9sX��
�
�
�s�J�
�2��
?�
?��Z�F�� � �f�-����V�_�_�.�0B�C�@�
?�
?�
?�s�AA;�;B	�B	c��[Q2o[OU2oUOUQ,2UO	[
Q29^tt^2[OUOU2PPP2UO	[
Q29^tt^2[OUOUOQ5PPP2UO	[Q29^tt^2[OUQ5PPP2P!)%fhK�9h)%fhKc9h)%fhP!9h)r^razBoth or neither�r&zrequired positional argumentr)	r�rB�format_exceptionrr�assertRaisesRegexrAr:�
__traceback__r�)r9r�r;s&  r"�test_format_exception_exc�(TracebackCases.test_format_exception_exc?s����k�"���+�+�A�.������":�!;�<�
�
#�
#�J�0A�
B�
B��&�&�q�{�{�A�6�C�
�
#�
#�J�0A�
B�
B��&�&�q�{�{�q���G�C�
�
#�
#�I�/M�
N�
N��&�&�1�-�O�
N�	C�
B��
B�
B��
N�
N�
N�s6�"D�-D$�/D7�D!	�D!	�$D4	�-D4	�7E	�E	c�l�[O[Q22oUOUQ,2P!)r^ra)rBrCr�rrres& r"�test_format_exception_only_exc�-TracebackCases.test_format_exception_only_excJs+���0�0��;�1G�H������":�!;�<r$c�&�Qo[2o[OPUQ5UOUO	2U2[2o[OPPPUQ5UOUO	2U2[2o[O
PUQ5UOUO	2U2UO[OP2U2UO[OP2U,2UO[OPPP2U,2UO[OP2U,2UO[OPP2U,2P!)zNoneType: None
r_)	rrBrcrrrd�	print_exc�
format_excrsrC)r9�NONE_EXC_STRING�excfiles&  r"�test_exception_is_None�%TracebackCases.test_exception_is_NoneNs@��,���*���!�!�$�W�5�����)�)�+�_�=��*���!�!�$��d��A�����)�)�+�_�=��*�����D�w�/�����)�)�+�_�=�����-�-�d�3�_�E�����3�3�D�9�O�;L�M�����&�&�t�T�4�8�?�:K�	M�����+�+�D�1�O�3D�	F�����+�+�D�$�7�/�9J�	Lr$c�v�UO[[O[O
22Q2UO[[O[O22Q2UO[[O[O22Q2P!)zV(exc, /, value=<implicit>, tb=<implicit>, limit=None, file=None, chain=True, **kwargs)zK(exc, /, value=<implicit>, tb=<implicit>, limit=None, chain=True, **kwargs)z9(exc, /, value=<implicit>, *, show_group=False, **kwargs))rrrJ�inspect�	signaturerBrcrsrCrNs&r"�test_signatures�TracebackCases.test_signatureses��������!�!�)�";�";�<�=�<�	>�
	
�����!�!�)�"<�"<�=�>�%�	'�
	
�����!�!�)�"A�"A�B�C�G�	Ir$�r7)6r�r�r�r�r4r>rGrOrRrUrXr[r^rardrgrzr}r�rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrr%rrLrPrrZrfrirorvryr�r�r�r��
__classcell__�r:r�s@@r"r0r05s/����#�
+�=�<�&�>�C�L�*�+�8�N�#/�J0�7�����&�0�25�7�E�I�
��	�����$	��(�2�"B�0���=@���=@�~8�B�8��8�4F�F�
D�	.�=�L�.
I�
Ir$r0c�f`�\sQsQsnQQks\O
O]*sQsUs	P!)�"PurePythonExceptionFormattingMixin�uc��U2UOQ2P![c)[O2O	2X#t!h9h)�No exception thrown.)�failr�rBr}r�)r9�callable�slice_start�	slice_ends&&&&r"�
get_exception�0PurePythonExceptionFormattingMixin.get_exceptionvsK��	.��J�
�I�I�,�-���	N��'�'�)�4�4�6�{�M�M�	N�s��	A�&A�Ar��r���)
r�r�r�r�r��__code__�co_firstlineno�
callable_liner�r�r�s@r"r�r�us"����.�"�*�*�9�9�A�=�Mr$r�c�j`�\sQsQsn]sQQks\OO]*sQs	Us
P!)�CAPIExceptionFormattingMixin�c�:�]QHGoU2UOQ2P![cmo[	Q29^tt^2oSXPO
2PPP2L)%fhL9hWO
2O2X#tPo=!Po=hh9h)r��exception_printr�r�)�	_testcapir�r�r�r�LEGACYrdr�)r9r�r�r�r�r��tbstderrs&&&&   r"r��*CAPIExceptionFormattingMixin.get_exception�st��-�	K��J��I�I�,�-���	K� ��*�*�h���;�;�/�+�*�*�*���$�$�&�1�1�3�K�J�J��	K�s=�#�	B�B�B�A�	B�A-�&A-�('B�B�Br�r�)r�r�r�r�r�r�r�r�r�r�r�r�s@r"r�r��s(����
�F�K�"�*�*�9�9�A�=�Mr$r�c��\sQsQs]sQsP!)�"CAPIExceptionFormattingLegacyMixin�r�)r�r�r�r�r�r�r�r$r"r�r��s��
�Fr$r�c�$`�\sQsQsnQsQsQsQsQsQs	Qs
Q	sQ
sQs
QsQ
sQsQsQsQsQsQsQsQsQsQsQsQsQsQsQsQsQs Qs!Q s"Q!s#Q"s$Q#s%Q$s&Q%s'Q&s(Q's)Q(s*Q)s+Q*s,Q+s-Q,s.Q-s/Us0P!).�#TracebackErrorLocationCaretTestBase�c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c��[Q2g)Tzbasic caret tests�rAr�r$r"r��?TracebackErrorLocationCaretTestBase.test_basic_caret.<locals>.f�s��%�&9�:�:r$�+Traceback (most recent call last):
  File "�", line �9, in get_exception
    callable()
    ~~~~~~~~^^
  File "zm, in f
    if True: raise ValueError("basic caret tests")
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
�r�r��__file__r�r�rrr�)r9r��lineno_f�
expected_f�result_liness&    r"�test_basic_caret�4TracebackErrorLocationCaretTestBase.test_basic_caret�s��	;��:�:�,�,��
��j���);�);�(<�=� �j���!���5C�	
C�	��)�)�!�,������'<�'<�'>�?r$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c��[Q2g)TuĤellö Wörldr�r�r$r"�f_with_unicode�RTracebackErrorLocationCaretTestBase.test_line_with_unicode.<locals>.f_with_unicode�s��%�&6�7�7r$r�r�r�uq, in f_with_unicode
    if True: raise ValueError("Ĥellö Wörld")
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
r�)r9r�r�r�r�s&    r"�test_line_with_unicode�:TracebackErrorLocationCaretTestBase.test_line_with_unicode�s��	8�"�*�*�9�9��
��j���);�);�(<�=� �j���!���5=�	
=�	��)�)�.�9������'<�'<�'>�?r$c
��QoUOOoQ[QUOQ[QU]*Q[QU]*Q0
oUO	U2oUOVCO
22P!)c�,�QQkoUOP!)c�2�U]6�cPgQ[Q[-!)rr�return)�THIS_DOES_NOT_EXIST�int)r/s"r"�__annotate__�pTracebackErrorLocationCaretTestBase.test_caret_in_type_annotation.<locals>.f_with_type.<locals>.foo.__annotate__�s��
�
�*�
��
r$c��]!)rr��rs&r"rG�cTracebackErrorLocationCaretTestBase.test_caret_in_type_annotation.<locals>.f_with_type.<locals>.foo�s��r$)�__annotations__�rGs r"�f_with_type�VTracebackErrorLocationCaretTestBase.test_caret_in_type_annotation.<locals>.f_with_type�s��
���r$r�r�r�z1, in f_with_type
    foo.__annotations__
  File "zb, in __annotate__
    def foo(a: THIS_DOES_NOT_EXIST ) -> int:
               ^^^^^^^^^^^^^^^^^^^
r�)r9r�r�r�r�s&    r"�test_caret_in_type_annotation�ATracebackErrorLocationCaretTestBase.test_caret_in_type_annotation�s���	 �
�'�'�6�6��
��j���);�);�(<�=� �j���!���5��j���!���53�

3�	��)�)�+�6������'<�'<�'>�?r$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c��[Q2g)Tzerror over multiple linesr�r�r$r"�f_with_multiline�]TracebackErrorLocationCaretTestBase.test_caret_multiline_expression.<locals>.f_with_multiline�s��%�+��r$r�r�r�z�, in f_with_multiline
    if True: raise ValueError(
             ^^^^^^^^^^^^^^^^^
        "error over multiple lines"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^r��r9r�r�r�r�s&    r"�test_caret_multiline_expression�CTracebackErrorLocationCaretTestBase.test_caret_multiline_expression�s���	�
$�,�,�;�;��
��j���);�);�(<�=� �j���!���5�	

�	��)�)�*:�;������'<�'<�'>�?r$c	�2`�[OQ2nU1QkoUOOoQ[QUO
Q[QU]*Q0	oUO
U2oUOVCO22[OQ2nU1QkoUOOoQ[QUO
Q[QU]*Q0	oUO
U2oUOVCO22P!)	z�
        def foo(*args, **kwargs):
            pass

        a, b, c = 1, 2, 3

        foo(a, z
                for z in
                    range(10), b, c)
        c� :�[RQQ2!�rJrKrL�rs�r"r��jTracebackErrorLocationCaretTestBase.test_caret_multiline_expression_syntax_error.<locals>.f_with_multiline������4��f�-�-r$r�r�r�zh, in f_with_multiline
    return compile(code, "?", "exec")
  File "?", line 7
    foo(a, z
           ^zX
        dummy_call(
            "dummy value"
            foo="bar",
        )
        c� :�[RQQ2!r�rLr�s�r"r�r�r�r$zr, in f_with_multiline
    return compile(code, "?", "exec")
  File "?", line 3
    "dummy value"
    ^^^^^^^^^^^^^)	r�r�r�r�r�r�r�rrr�)r9r�r�r�r�rs&    @r"�,test_caret_multiline_expression_syntax_error�PTracebackErrorLocationCaretTestBase.test_caret_multiline_expression_syntax_error�s)������	 �	
��	.�$�,�,�;�;��
��j���);�);�(<�=� �j���!���5�	
�	��)�)�*:�;������'<�'<�'>�?���� �
��	.�$�,�,�;�;��
��j���);�);�(<�=� �j���!���5 �	
 �	��)�)�*:�;������'<�'<�'>�?r$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�$�]]]**!�rr�r�r$r"r��dTracebackErrorLocationCaretTestBase.test_caret_multiline_expression_bin_op.<locals>.f_with_multiline/s���A����
r$r�r�r�z9, in f_with_multiline
    2 + 1 /
        ~~^
    0
    ~r�r�s&    r"�&test_caret_multiline_expression_bin_op�JTracebackErrorLocationCaretTestBase.test_caret_multiline_expression_bin_op,s���	�$�,�,�;�;��
��j���);�);�(<�=� �j���!���5�	
�	��)�)�*:�;������'<�'<�'>�?r$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�6�]o]
U]**]*!��r���divisors r"�f_with_binary_operator�cTracebackErrorLocationCaretTestBase.test_caret_for_binary_operators.<locals>.f_with_binary_operatorEs���G���!��#�b�(�(r$r�r�r�zY, in f_with_binary_operator
    return 10 + divisor / 0 + 30
                ~~~~~~~~^~~
r��r9r�r��expected_errorr�s&    r"�test_caret_for_binary_operators�CTracebackErrorLocationCaretTestBase.test_caret_for_binary_operatorsDs���	)�*�2�2�A�A��
��j���);�);�(<�=� �j���!���5,�	
,�	��)�)�*@�A������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�6�]o]
U]**]*!r�r�)�áóís r"r��pTracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_with_unicode.<locals>.f_with_binary_operatorWs���F����
�?�R�'�'r$r�r�r�uT, in f_with_binary_operator
    return 10 + áóí / 0 + 30
                ~~~~^~~
r�r�s&    r"�,test_caret_for_binary_operators_with_unicode�PTracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_with_unicodeVs���	(�*�2�2�A�A��
��j���);�);�(<�=� �j���!���5(�	
(�	��)�)�*@�A������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�6�]o]
U]**]*!r�r�r�s r"r��lTracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_two_char.<locals>.f_with_binary_operatoris���G���1��$�r�)�)r$r�r�r�z[, in f_with_binary_operator
    return 10 + divisor // 0 + 30
                ~~~~~~~~^^~~
r�r�s&    r"�(test_caret_for_binary_operators_two_char�LTracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_two_charhs���	*�*�2�2�A�A��
��j���);�);�(<�=� �j���!���5-�	
-�	��)�)�*@�A������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�,�]oP9qV*U*!r�r��rrrs   r"r��TracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_with_spaces_and_parenthesis.<locals>.f_with_binary_operator{s���A��J�A��<�!�#�#r$r�r�r�zP, in f_with_binary_operator
    return ( a   )   +b + c
           ~~~~~~~~~~^~
r�r�s&    r"�;test_caret_for_binary_operators_with_spaces_and_parenthesis�_TracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_with_spaces_and_parenthesiszs���	$�
*�2�2�A�A��
��j���);�);�(<�=� �j���!���5(�	
(�	��)�)�*@�A������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�"�]oPoUU*oU!r�r��rrrs   r"r��mTracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_multiline.<locals>.f_with_binary_operator�s ���A��A����A��Hr$r�r�r�zn, in f_with_binary_operator
       a = b    \
           ~~~~~~
    +\
    ^~
          c  # test
          ~
r�r�s&    r"�)test_caret_for_binary_operators_multiline�MTracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_multiline�s���	�*�2�2�A�A��
��j���);�);�(<�=� �j���!���5�	

�	��)�)�*@�A������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�"�]oPoUU*oU!r�r�rs   r"r��vTracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_multiline_two_char.<locals>.f_with_binary_operator�s%���A��A����
��Hr$r�r�r�z�, in f_with_binary_operator
        (b  # test +
        ~~~~~~~~~~~~
            )  \
            ~~~~
        # +
        ~~~
    << (c  # test
    ^^~~~~~~~~~~~
        \
        ~
    )  # test
    ~
r�r�s&    r"�2test_caret_for_binary_operators_multiline_two_char�VTracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_multiline_two_char�s���	�*�2�2�A�A��
��j���);�);�(<�=� �j���!���5�	
�	�&�)�)�*@�A������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c��]oQU*oU!)r�u
ááááár�)rrs  r"r��zTracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_multiline_with_unicode.<locals>.f_with_binary_operator�s���A����A��Hr$r�r�r�ug, in f_with_binary_operator
    a = ("ááá" +
        ~~~~~~~~
        "áá") + b
        ~~~~~~^~~
r�r�s&    r"�6test_caret_for_binary_operators_multiline_with_unicode�ZTracebackErrorLocationCaretTestBase.test_caret_for_binary_operators_multiline_with_unicode�s���	�*�2�2�A�A��
��j���);�);�(<�=� �j���!���5"�	
"�	��)�)�*@�A������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�>�QQP--oUQ*Q*Q*!��xror(r���	some_dicts r"�f_with_subscript�VTracebackErrorLocationCaretTestBase.test_caret_for_subscript.<locals>.f_with_subscript�s$���s�D�k�*�I��S�>�#�&�s�+�+r$r�r�r�z^, in f_with_subscript
    return some_dict['x']['y']['z']
           ~~~~~~~~~~~~~~~~~~~^^^^^
r��r9rr�r�r�s&    r"�test_caret_for_subscript�<TracebackErrorLocationCaretTestBase.test_caret_for_subscript�s���	,�$�,�,�;�;��
��j���);�);�(<�=� �j���!���54�	
4�	��)�)�*:�;������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�T�QQQQ]----oUQ*Q*Q*Q*!)�ó�á�í�theta�betar�rs r"r�^TracebackErrorLocationCaretTestBase.test_caret_for_subscript_unicode.<locals>.f_with_subscript�s3����t�g�q�\�&:�;�<�I��T�?�4�(��.�v�6�6r$r�r�r�uq, in f_with_subscript
    return some_dict['ó']['á']['í']['beta']
           ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^
r�rs&    r"� test_caret_for_subscript_unicode�DTracebackErrorLocationCaretTestBase.test_caret_for_subscript_unicode�s���	7�$�,�,�;�;��
��j���);�);�(<�=� �j���!���5<�	
<�	��)�)�*:�;������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�,�,o]9qV*U*!r�r�r�s   r"r��xTracebackErrorLocationCaretTestBase.test_caret_for_subscript_with_spaces_and_parenthesis.<locals>.f_with_binary_operators���A��I�A��?�Q�&�&r$r�r�r�zV, in f_with_binary_operator
    return b     [    a  ] + c
           ~~~~~~^^^^^^^^^
r�r�s&    r"�4test_caret_for_subscript_with_spaces_and_parenthesis�XTracebackErrorLocationCaretTestBase.test_caret_for_subscript_with_spaces_and_parenthesiss���	'�
*�2�2�A�A��
��j���);�);�(<�=� �j���!���5+�	
+�	��)�)�*@�A������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�4�-o]o]oUUU**oU!r�r�)�bbbbb�ccc�dddrs    r"r�`TracebackErrorLocationCaretTestBase.test_caret_for_subscript_multiline.<locals>.f_with_subscripts-���E��C��C������A��Hr$r�r�r�z�, in f_with_subscript
    b = bbbbb \
        ~~~~~~~
        [  ccc # test
        ^^^^^^^^^^^^^
    
    
         + ddd  \
         ^^^^^^^^
    
    
        ] # test
        ^
r�rs&    r"�"test_caret_for_subscript_multiline�FTracebackErrorLocationCaretTestBase.test_caret_for_subscript_multilines���
	�$�,�,�;�;��
��j���);�);�(<�=� �j���!���5�	
�	�&�)�)�*:�;������'@�'@�'B�Cr$c
��QoUOOoQ[QUOQ[QU]*Q[QU]*Q0
oUO	U2oUOVCO
22P!)c�2�QoUQ2Q2Q2!)c��QoU!)c��[Q2g�r���RuntimeError�rs&r"�f2�dTracebackErrorLocationCaretTestBase.test_caret_for_call.<locals>.f_with_call.<locals>.f1.<locals>.f2@�
��&�v�.�.r$r��rr<s& r"�f1�XTracebackErrorLocationCaretTestBase.test_caret_for_call.<locals>.f_with_call.<locals>.f1?���/��	r$rror(r��r@s r"�f_with_call�LTracebackErrorLocationCaretTestBase.test_caret_for_call.<locals>.f_with_call>s��
��c�7�3�<��$�$r$r�r�r�zN, in f_with_call
    return f1("x")("y")("z")
           ~~~~~~~^^^^^
  File "�', in f2
    raise RuntimeError("fail")
r��r9rDr�r�r�s&    r"�test_caret_for_call�7TracebackErrorLocationCaretTestBase.test_caret_for_call=s���	%��'�'�6�6��
��j���);�);�(<�=� �j���!���5� �j���!���5/�
/�	��)�)�+�6������'@�'@�'B�Cr$c
��QoUOOoQ[QUOQ[QU]*Q[QU]*Q0
oUO	U2oUOVCO
22P!)c�&�QoUQ2Q2!)c��QoU!)c��[Q2gr8r9r;s&r"r<�lTracebackErrorLocationCaretTestBase.test_caret_for_call_unicode.<locals>.f_with_call.<locals>.f1.<locals>.f2Wr>r$r�r?s& r"r@�`TracebackErrorLocationCaretTestBase.test_caret_for_call_unicode.<locals>.f_with_call.<locals>.f1VrBr$rr r�rCs r"rD�TTracebackErrorLocationCaretTestBase.test_caret_for_call_unicode.<locals>.f_with_callUs��
��d�8�D�>�!r$r�r�r�uK, in f_with_call
    return f1("ó")("á")
           ~~~~~~~^^^^^
  File "rFr�rGs&    r"�test_caret_for_call_unicode�?TracebackErrorLocationCaretTestBase.test_caret_for_call_unicodeTs���	"��'�'�6�6��
��j���);�);�(<�=� �j���!���5� �j���!���5/�
/�	��)�)�+�6������'@�'@�'B�Cr$c
��QoUOOoQ[QUOQ[QU]*Q[QU]*Q0
oUO	U2oUOVCO
22P!)c�(�QoUQ2]*!)c��[Q2gr8r9r�s&r"r��~TracebackErrorLocationCaretTestBase.test_caret_for_call_with_spaces_and_parenthesis.<locals>.f_with_binary_operator.<locals>.fms
��"�6�*�*r$rr��r�s r"r��sTracebackErrorLocationCaretTestBase.test_caret_for_call_with_spaces_and_parenthesis.<locals>.f_with_binary_operatorls��
+��c�$�q�(�(r$r�r�r�zb, in f_with_binary_operator
    return f     (    "x"  ) + 2
           ~~~~~~^^^^^^^^^^^
  File "�&, in f
    raise RuntimeError("fail")
r�r�s&    r"�/test_caret_for_call_with_spaces_and_parenthesis�STracebackErrorLocationCaretTestBase.test_caret_for_call_with_spaces_and_parenthesisks���	)�
*�2�2�A�A��
��j���);�);�(<�=� �j���!���5� �j���!���5/�
/�	��)�)�*@�A������'@�'@�'B�Cr$c
��QoUOOoQ[QUOQ[QU]*Q[QU]*Q0
oUO	U2oUOVCO
22P!)c�p`�QQ2nU1QkoU]2O]2]2]2oU!)c�(`�\sQsQsnQsQsUsP!)�aTracebackErrorLocationCaretTestBase.test_caret_for_call_multiline.<locals>.f_with_call.<locals>.Ci�c��QoU!)c��[Q2gr8r9r;s&r"r��nTracebackErrorLocationCaretTestBase.test_caret_for_call_multiline.<locals>.f_with_call.<locals>.C.y.<locals>.f�s
��*�6�2�2r$r�)r9rr�s&& r"ro�cTracebackErrorLocationCaretTestBase.test_caret_for_call_multiline.<locals>.f_with_call.<locals>.C.y�s��3��Hr$r�)r�r�r�r�ror�r�r�s@r"r�r_�s�����r$r�c�:�R2!r=r�)rr�s&�r"r
�aTracebackErrorLocationCaretTestBase.test_caret_for_call_multiline.<locals>.f_with_call.<locals>.g�s
����s�
r$)ro)r
rr�s  @r"rD�VTracebackErrorLocationCaretTestBase.test_caret_for_call_multiline.<locals>.f_with_call�s>���
�
�

��1����������A��Hr$r�r�r�zf, in f_with_call
    a = (g(1).y)(
        ~~~~~~~~~
        2
        ~
    )(3)(4)
    ~^^^
  File "rYr�rGs&    r"�test_caret_for_call_multiline�ATracebackErrorLocationCaretTestBase.test_caret_for_call_multiline�s���	��'�'�6�6��
��j���);�);�(<�=� �j���!���5� �j���!���5/�
/�	��)�)�+�6������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c��]oUQ*
oP!�r��aar��rs r"r��>TracebackErrorLocationCaretTestBase.test_many_lines.<locals>.f�s���A����Qr$r�r�r�zW, in f
    if True: x += (
             ^^^^^^
    ...<2 lines>...
    )  # test
    ^
r��r9r�r�r�r�s&    r"�test_many_lines�3TracebackErrorLocationCaretTestBase.test_many_lines�s}��	��:�:�,�,��
��j���);�);�(<�=� �j���!���5�		
�	��)�)�!�,������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c��]oUQ*
oP!rkr�rms r"r��GTracebackErrorLocationCaretTestBase.test_many_lines_no_caret.<locals>.f�s���A�
��
�Ar$r�r�r�z,, in f
    x += (
    ...<2 lines>...
    )
r�ros&    r"�test_many_lines_no_caret�<TracebackErrorLocationCaretTestBase.test_many_lines_no_caret�s}��	��:�:�,�,��
��j���);�);�(<�=� �j���!���5�	
�	��)�)�!�,������'@�'@�'B�Cr$c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�L�]oQoUU*UU*U**oU!)r�rr�rs   r"r��]TracebackErrorLocationCaretTestBase.test_many_lines_binary_op.<locals>.f_with_binary_operator�s:���A��A���������	�A��Hr$r�r�r�z�, in f_with_binary_operator
    a = (
        ~
        b +
        ~~~
        b
        ~
    ) + (
    ~~^~~
        c +
        ~~~
    ...<2 lines>...
    )
    ~
r�r�s&    r"�test_many_lines_binary_op�=TracebackErrorLocationCaretTestBase.test_many_lines_binary_op�s���	�*�2�2�A�A��
��j���);�);�(<�=� �j���!���
5�	
�	�(�)�)�*@�A������'@�'@�'B�Cr$c	���[Q[Q2o[[Q29^tt^2oUOQ2PPP2UO	[
[2[
[U2oUOU2oUOoQ[QUOQ[QUQ0	oUOVFO22P!)%fhK�9h)z1 / 0 / 1 / 2
rKr�z1 $ 0 / 1 / 2
r�r�r�z*, in <module>
    1 $ 0 / 1 / 2
    ^^^^^
)rMr
r�r��
addCleanuprrrKr�r�r�r�rrr�)r9�bytecoder`rDr�r�r�s&      r"�/test_traceback_specialization_with_syntax_error�STracebackErrorLocationCaretTestBase.test_traceback_specialization_with_syntax_error�s����,�f�f�=��
�&�#�
�
�$��J�J�(�)��	
�����'��t�X�&���)�)�$�/���*�*��
��j���);�);�(<�=��h�h�x�j�1�	
�	�	
����'@�'@�'B�C�%�
�s�C�C	�C	c��Q
o[U[Q2o[[Q29^tt^2oUOU2PPP2UO	[
[2[
[U2oUOU2oUOoQ[QUOQ[QUQUQQ[Q2*Q*Q	0
oUOVWO22P!)%fhK�9h)z	if True: rKr�r�r�r�z, in <module>
    �
    � rma	if True: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^)rMr
r�r�r}rrrKr�r�r�r�rsrrr�)r9rVr~r`rDr�r�r�s&       r"�test_traceback_very_long_line�ATracebackErrorLocationCaretTestBase.test_traceback_very_long_lines���(���6�6�6�2��
�&�#�
�
�$��J�J�v��������'��t�X�&���)�)�$�/���*�*��
��j���);�);�(<�=��h�h�x�j�1��(���s�;�'�'�'�1�2�"�

6�	�	
����'@�'@�'B�C�#�
�s�C-�-C=	�6C=	c	���QoUOOoQ[QUOQ[QU]*Q0	oUO	U2oUOVCO
22P!)c�B�QQP--oUQ*Q*Q*P!rr�rs r"r�]TracebackErrorLocationCaretTestBase.test_secondary_caret_not_elided.<locals>.f_with_subscript%s$���s�D�k�*�I��c�N�3���$�$r$r�r�r�zP, in f_with_subscript
    some_dict['x']['y']['z']
    ~~~~~~~~~~~~~~~~~~~^^^^^
r�rs&    r"�test_secondary_caret_not_elided�CTracebackErrorLocationCaretTestBase.test_secondary_caret_not_elided#s���	%�$�,�,�;�;��
��j���);�);�(<�=� �j���!���5-�	
-�	��)�)�*:�;������'@�'@�'B�Cr$c	���QoQ[QUOQ[QUOO]*Q0	oUO	U2oUOV2O
22P!)c�D�[Q[]2[]2,2g)Tr��r�rAr�r�r$r"rE�KTracebackErrorLocationCaretTestBase.test_caret_exception_group.<locals>.exc;s��)�$��A��	�!��0M�N�Nr$�C  + Exception Group Traceback (most recent call last):
  |   File "r�zE, in get_exception
  |     callable()
  |     ~~~~~~~~^^
  |   File "aB, in exc
  |     if True: raise ExceptionGroup("eg", [ValueError(1), TypeError(2)])
  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  | ExceptionGroup: eg (2 sub-exceptions)
  +-+---------------- 1 ----------------
    | ValueError: 1
    +---------------- 2 ----------------
    | TypeError: 2
)r�r�r�r�r�rrr�)r9rEr�r�s&   r"�test_caret_exception_group�>TracebackErrorLocationCaretTestBase.test_caret_exception_group6s{��
	O��$�:�X�d�.@�.@�-A�B�%�:�X�c�l�l�.I�.I�A�.M�-N�O$�	%�	��)�)�#�.������'@�'@�'B�Cr$c�|�UOU2oUP*oUOUO2U2P!r�)r�rr�lstrip)r9rD�expected_specializationr��specialization_lines&&&  r"�assertSpecialized�5TracebackErrorLocationCaretTestBase.assertSpecializedOs8���)�)�$�/��*�2�.�����,�3�3�5�7N�Or$c�B�UOQQ2UOQQ2UOQQ2UOQQ2UOQQ2UOQQ2UOQ	Q
2UOQQ
2UOQQ
2UOQQ2UOQQ2UOQQ2UOQQ2UOQQ2UOQQ2P!)c��]]*!r�r�r�r$r"r#�TTracebackErrorLocationCaretTestBase.test_specialization_variations.<locals>.<lambda>Us��q��sr$z~^~c�$�]]*]*!r�r�r�r$r"r#r�Ws��q��s�1�ur$c��]]*!r�r�r�r$r"r#r�Y���q�1�ur$z~~^~~c�$�]]*]*!r�r�r�r$r"r#r�[s��q�1�u�q�yr$c��]]*!r�r�r�r$r"r#r�]���q�!�tr$z~^~~c�$�]]*]*!r�r�r�r$r"r#r�_s��q�!�t�A�vr$c��]]*!r�r�r�r$r"r#r�as��q�q�yr$z	~~~~~^~~~c�$�]]*]*!r�r�r�r$r"r#r�cs��q�q�y�Q�r$c��]]*!r�r�r�r$r"r#r�er�r$z~~^~c��]]*!r�r�r�r$r"r#r�gr�r$z~^^~c�$�]]*]*!r�r�r�r$r"r#r�is��q�!�t�Q�wr$c��]]*!r�r�r�r$r"r#r�ks��q�A�vr$z~~^^~~c�$�]]*]*!r�r�r�r$r"r#r�ms��q�A�v��{r$c��]]*!r�r�r�r$r"r#r�or�r$z~~^^~c��]]*!r�r�r�r$r"r#r�qr�r$z~^^~~)r�rNs&r"�test_specialization_variations�BTracebackErrorLocationCaretTestBase.test_specialization_variationsTs#�����{�&+�	-����}�&+�	-����}�&-�	/����0�&-�	/����|�&,�	.����~�&,�	.����0�&1�	3����6�&1�	3����|�&,�	.����|�&,�	.�����&,�	.����~�&.�	0����2�&.�	0����}�&-�	/����}�&-�	/r$c
�\``	�QnQn	UU	1QkoUOU2oUOOoROOoQ[QUOQ[QU]*Q[QU]*Q0
oUOV%O
22UU	1QkoUOU2oUOOoQ[QUOQ[QU]*Q	[QU]*Q0
oUOV%O
22P!)
c��[gr=r�rDs&r"�	dec_error�`TracebackErrorLocationCaretTestBase.test_decorator_application_lineno_correct.<locals>.dec_errorus���Or$c��U!r=r�r�s&r"�dec_fine�_TracebackErrorLocationCaretTestBase.test_decorator_application_lineno_correct.<locals>.dec_finews���Kr$c�$:�RRQ22oP!)c��P!r=r�r�r$r"r
�kTracebackErrorLocationCaretTestBase.test_decorator_application_lineno_correct.<locals>.applydecs.<locals>.gzs��r$r�)r
r�r�s ��r"�	applydecs�`TracebackErrorLocationCaretTestBase.test_decorator_application_lineno_correct.<locals>.applydecsys���
�
����r$r�r�r�z5, in applydecs
    @dec_error
     ^^^^^^^^^
  File "z#, in dec_error
    raise TypeError
c�2:�RRQQ222oP!)c��\sQsQsQsP!)�qTracebackErrorLocationCaretTestBase.test_decorator_application_lineno_correct.<locals>.applydecs_class.<locals>.Ai�r��r�r�r�r�r�r�r$r"r�r��s��r$r�r�)r�r�r�s ��r"�applydecs_class�fTracebackErrorLocationCaretTestBase.test_decorator_application_lineno_correct.<locals>.applydecs_class�s���
�
��M���r$z;, in applydecs_class
    @dec_error
     ^^^^^^^^^
  File ")r�r�r�r�r�rrr�)
r9r�r��lineno_applydescs�lineno_dec_errorr�r��lineno_applydescs_classr�r�s
&       @@r"�)test_decorator_application_lineno_correct�MTracebackErrorLocationCaretTestBase.test_decorator_application_lineno_correcttsU���	�	�	��)�)�)�4��%�.�.�=�=��$�-�-�<�<��
��j���);�);�(<�=� �j��):�Q�)>�(?�@� �j��)9�A�)=�(>�?$�
$�	�	
����'@�'@�'B�C�	��)�)�/�:��"1�":�":�"I�"I��
��j���);�);�(<�=� �j��)@�1�)D�(E�F� �j��)9�A�)=�(>�?$�
$�	�	
����'@�'@�'B�Cr$c	���QoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQ	,oUOV#2P!)
c�(�PO2P!r=��methodr�r$r"r��KTracebackErrorLocationCaretTestBase.test_multiline_method_call_a.<locals>.f�s��
���r$�"Traceback (most recent call last):rWr��, in get_exception�    callable()�    ~~~~~~~~^^�, in fz    .methodz     ^^^^^^�r�r�r�r�r�rr�r9r��actualrOs&   r"�test_multiline_method_call_a�@TracebackErrorLocationCaretTestBase.test_multiline_method_call_a�s{��	��#�#�A�&��0���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P���
��	
����*r$c	���QoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0Q,oUOV#2P!)	c�(�PO2P!r=r�r�r$r"r��KTracebackErrorLocationCaretTestBase.test_multiline_method_call_b.<locals>.f�s��
���r$r�rWr�r�r�r�r�z
    methodr�r�s&   r"�test_multiline_method_call_b�@TracebackErrorLocationCaretTestBase.test_multiline_method_call_b�sx��	��#�#�A�&��0���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P��

��	
����*r$c	���QoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQ	,oUOV#2P!)
c�(�PO2P!r=r�r�r$r"r��KTracebackErrorLocationCaretTestBase.test_multiline_method_call_c.<locals>.f�s��
��&�r$r�rWr�r�r�r�r�z    . methodz      ^^^^^^r�r�s&   r"�test_multiline_method_call_c�@TracebackErrorLocationCaretTestBase.test_multiline_method_call_c�s{��	��#�#�A�&��0���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P���
��	
����*r$c	���QoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0Q,oUOV#2P!)	c��[P!r=��widthr�r$r"r��hTracebackErrorLocationCaretTestBase.test_wide_characters_unicode_with_problematic_byte_offset.<locals>.f�s��r$r�rWr�r�r�r�r�u    widthr�r�s&   r"�9test_wide_characters_unicode_with_problematic_byte_offset�]TracebackErrorLocationCaretTestBase.test_wide_characters_unicode_with_problematic_byte_offset�sx��	��#�#�A�&��0���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P�!�

��	
����*r$c	���QoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0Q,oUOV#2P!)	c��]o[U2gr�r�r�s r"r��[TracebackErrorLocationCaretTestBase.test_byte_offset_with_wide_characters_middle.<locals>.f�s���O��_�-�-r$r�rWr�r�r�r�r�u%    raise ValueError(width)r�r�s&   r"�,test_byte_offset_with_wide_characters_middle�PTracebackErrorLocationCaretTestBase.test_byte_offset_with_wide_characters_middle�sx��	.��#�#�A�&��0���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P�3�

��	
����*r$c	���QoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQ	Q
Q,	oUOV#2P!)c�4�]o]o[]UU22P!r���print)�www�ths  r"r��ITracebackErrorLocationCaretTestBase.test_byte_offset_multiline.<locals>.f�s ���I��F��!�Y���
r$r�rWr�r�r�r�r�u    print(1, www(z             ~~~~~~^u            th))z            ^^^^^r�r�s&   r"�test_byte_offset_multiline�>TracebackErrorLocationCaretTestBase.test_byte_offset_multiline�s���	��#�#�A�&��0���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P�%�"�"��

��	
����*r$c	���QoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQ	,oUOV#2P!)
c��]o]oV*!r�r�)�说明说明�şçöğıĤellös  r"r��cTracebackErrorLocationCaretTestBase.test_byte_offset_with_wide_characters_term_highlight.<locals>.f	s���L� !���3�3r$r�rWr�r�r�r�r�u+    return 说明说明 / şçöğıĤellöz            ~~~~~~~~~^~~~~~~~~~~~r�r�s&   r"�4test_byte_offset_with_wide_characters_term_highlight�XTracebackErrorLocationCaretTestBase.test_byte_offset_with_wide_characters_term_highlights{��	4�
�#�#�A�&��0���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P�9�.�
��	
����*r$c	���QoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQ	,oUOV#2P!)
c�8�Q[QQ2*Q*!)u✨🐍u📗🚛�🐍)�func_说明说明r�r$r"r��ZTracebackErrorLocationCaretTestBase.test_byte_offset_with_emojis_term_highlight.<locals>.fs$���0��� ��$�%�
%r$r�rWr�r�r�r�r�u4    return "✨🐍" + func_说明说明("📗🚛",z!                    ^^^^^^^^^^^^^r�r�s&   r"�+test_byte_offset_with_emojis_term_highlight�OTracebackErrorLocationCaretTestBase.test_byte_offset_with_emojis_term_highlights{��	%��#�#�A�&��0���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P�B�/�
��	
����*r$c	���QoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQ	,oUOV#2P!)
c�^�QQQP---oUQ*Q*Q*Q*Q*!)u
✨🚛✨u说明u🐍🐍🐍r�u🐍🐍r�)�my_dcts r"r��TTracebackErrorLocationCaretTestBase.test_byte_offset_wide_chars_subscript.<locals>.f,s?����&�����F��,�'��1�&�9�(�C�J�O�Or$r�rWr�r�r�r�r�uG    return my_dct["✨🚛✨"]["说明"]["🐍"]["说明"]["🐍🐍"]z)           ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^r�r�s&   r"�%test_byte_offset_wide_chars_subscript�ITracebackErrorLocationCaretTestBase.test_byte_offset_wide_chars_subscript+s|��	P��#�#�A�&��0���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P�U�7�
��	
����*r$c	���QoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0Q,oUOV#2P!)	c��[2gr=)�MemoryErrorr�r$r"r��@TracebackErrorLocationCaretTestBase.test_memory_error.<locals>.fCs
���-�r$r�rWr�r�r�r�r�z    raise MemoryError()r�r�s&   r"�test_memory_error�5TracebackErrorLocationCaretTestBase.test_memory_errorBsx��	 ��#�#�A�&��8��x�j���);�);�(<�<N�O����x�j�����)B�)B�Q�)F�(G�v�N�%�'��	
����*r$c��`�QnU1QkoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0Q	Q[QROO]*Q
0QQ,	oUOV#2Q
nU1QkoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQQ[QROO]*Q
0QQ,
oUOV#2QnU1QkoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQQQ[QROO]*Q
0QQ,oUOV#2QnU1QkoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQQQQQQ[QROO]*Q
0QQ,oUOV#2P!)c��]]*P!r�r�r�r$r"r
�cTracebackErrorLocationCaretTestBase.test_anchors_for_simple_return_statements_are_elided.<locals>.gP���
�a�C�Cr$c�:�R2!r=r�r	s�r"r��cTracebackErrorLocationCaretTestBase.test_anchors_for_simple_return_statements_are_elided.<locals>.fSs
����3�Jr$r�rWr�r�r�r�r�z    return g()�, in g�    1/0�    ~^~c��]]*P!r�r�r�r$r"r
rcrr$c�":�R2]*!r�r�r	s�r"r�rfs����3��7�Nr$z    return g() + 1z           ~^^c��]]*P!r�r���argss*r"r
rwrr$c�:�R]]]]2!r�r�r	s�r"r�rzs����Q�����
r$z    return g(1,z             2, 4,z             5)c��]]*P!r�r�rs*r"r
r�rr$c�*:�R]]]]2]*!r�r�r	s�r"r�r�s"����Q�������
r$z           ~^^^z             ^^^^^z             5) + 1z             ^^r��r9r�r�rOr
s&   @r"�4test_anchors_for_simple_return_statements_are_elided�XTracebackErrorLocationCaretTestBase.test_anchors_for_simple_return_statements_are_elidedOs����	�	��)�)�!�,��8���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P����z��1�:�:�+D�+D�q�+H�*I��P���	
��	
����0�	�	��)�)�!�,��8���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P� ����z��1�:�:�+D�+D�q�+H�*I��P���

��	
����0�	�	�
�)�)�!�,��8���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P�� ����z��1�:�:�+D�+D�q�+H�*I��P���
��	
����0�	�	�
�)�)�!�,��8���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P��� � �!����z��1�:�:�+D�+D�q�+H�*I��P���
��	
����0r$c��`�QnU1QkoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0Q	Q[QROO]*Q
0QQ,	oUOV#2Q
nU1QkoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQQQ[QROO]*Q
0QQ,oUOV#2QnU1QkoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQQ[QROO]*Q
0QQ,
oUOV#2QnU1QkoUOU2oQQ[QUOQ0QQQ[QUOO]*Q0QQQQQQQ[QROO]*Q
0QQ,oUOV#2P!)c��]]*P!r�r�r�r$r"r
�cTracebackErrorLocationCaretTestBase.test_anchors_for_simple_assign_statements_are_elided.<locals>.g�rr$c�:�R2oP!r=r��rr
s �r"r��cTracebackErrorLocationCaretTestBase.test_anchors_for_simple_assign_statements_are_elided.<locals>.f�s
�����Ar$r�rWr�r�r�r�r�z    x = g()rrrc��]]*P!r�r�rs*r"r
r#�rr$c� :�R]]]]2oP!r�r�r%s �r"r�r&�s����!��Q���Ar$z    x = g(1,z          2, 3,z          4)c��]]*P!r�r�r�r$r"r
r#�rr$c�:�R29qP!r=r��rror
s  �r"r�r&�s����C�K�A�r$z    x = y = g()z            ~^^c��]]*P!r�r�rs*r"r
r#�rr$c�":�R]]]]29qP!r�r�r+s  �r"r�r&�s����a�����
�A�r$z    x = y = g(1,z            ~^^^z              2, 3,z              ^^^^^z              4)z              ^^r�rs&   @r"�4test_anchors_for_simple_assign_statements_are_elided�XTracebackErrorLocationCaretTestBase.test_anchors_for_simple_assign_statements_are_elided�s����	�	��)�)�!�,��8���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P����z��1�:�:�+D�+D�q�+H�*I��P���	
��	
����0�	�	�
�)�)�!�,��8���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P������z��1�:�:�+D�+D�q�+H�*I��P���
��	
����0�	�	��)�)�!�,��8���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P�����z��1�:�:�+D�+D�q�+H�*I��P���

��	
����0�	�	�
�)�)�!�,��8���z��4�+=�+=�*>�>P�Q�����z��1�:�:�+D�+D�q�+H�*I��P���!�!�����z��1�:�:�+D�+D�q�+H�*I��P���
��	
����0r$r�)1r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrr%r*r2rHrQrZrgrprurzrr�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrr.r�r�r�s@r"r�r��s
����
@�&@�&@�*@�2>@�@@�0D�$D�$D�$D�&D�4#D�JD�,D�$D�$D�&"D�HD�.D�.D�*D�BD�0D�,$D�LD�.D�.D�&D�2P�
/�@*D�X+�"+� +�"
+� +� +�,+�$+�"+�.+�W1�rW1�W1r$r�c�<`�\sQsQsn,QNsQsQsQsQsUs	P!)�TestKeywordTypoSuggestionsic��[O29^tt^2o[UO2FD�vovq4UO	UQ59^tt^2[
OU2O2o[UQU0U2o[U2vqxo	U	OQ2o
UOQUQ0U
2PPP2J�	PPP2P!)%fhJ�9h)%fhP!9h)��typo�script_rH�Did you mean '�')�tempfile�TemporaryDirectory�	enumerate�
TYPO_CASESr!r�r�rtrrr5ru)r9rT�ir�expected_kwrV�script_namer�r*r��stderr_texts&          r"�"test_keyword_suggestions_from_file�=TestKeywordTypoSuggestions.test_keyword_suggestions_from_files���
�
(�
(�
*�
*�j�*3�D�O�O�*D�&��&�D��\�\�{�\�3�3�%�_�_�T�2�8�8�:�F�"-�j�G�A�3�-��"P�K�)>�{�)K�&�B��"(�-�-��"8�K��M�M�N�;�-�q�"A�;�O�4�3�+E�+�
*�3�3�3��+�
*�
*�s0�9C,�A*C
�C,�C)�!C)�#	C,�,C=	�5C=	c	�V�UOFD�vqUOUQ59^tt^2[OU2O	2o[QU2vqEoUO
Q2oUOQUQ0U2PPP2J�	P!)%fhJ�9h)r3r(rHr6r7)r;r!r�r�rtrr5ru)r9rr=rVr�r*r�r?s&       r"�,test_keyword_suggestions_from_command_string�GTestKeywordTypoSuggestions.test_keyword_suggestions_from_command_string&s���!%����D����;��/�/�!����.�4�4�6��%:�4��%H�"��F�$�m�m�G�4���
�
��{�m�1�=�{�K�	0�/�"1�/�/�/�s�AB	�B(
� B(
c���Qo[OU2O2o[QU2vq4oUO	Q2oUOQU2UO
QU2P!)z@import sys
print(
    "line1"
    "line2"
    file=sys.stderr
)
r(rHzPerhaps you forgot a comma�Did you mean)r�r�rtrr5ru�assertNotIn)r9rrVr�r*r�r?s&      r"�+test_no_keyword_suggestion_for_comma_errors�FTestKeywordTypoSuggestions.test_no_keyword_suggestion_for_comma_errors.s`��������&�,�,�.��2�4��@���F��m�m�G�,���
�
�2�K�@������5r$r�))zwith block ad something:
  pass�and)zfur a in b:
  pass�for)zfor a in b:
  pass
elso:
  pass�else)zwhille True:
  pass�while)ziff x > 5:
  pass�if)zif x:
  pass
elseif y:
  pass�elif)ztyo:
  pass
except y:
  pass�try)zclasse MyClass:
  pass�class)z
impor math�import)zform x import y�from)z(defn calculate_sum(a, b):
  return a + b�def)zdef foo():
  returm resultr�)zlamda x: x ** 2�lambda)zdef foo():
  yeld i�yield)zdef foo():
  globel counter�global)zfrum math import sqrtrS)zasynch def fetch_data():
  pass�async)z%async def foo():
  awaid fetch_data()�await)zraisee ValueError("Error")�raise)z[x for x
in range(3)
of x]rN)z[123 fur x
in range(3)
if x]rK)zfor x im n:
  pass�in)
r�r�r�r�r;r@rCrHr�r�r�s@r"r1r1s"�����J�2P�L�6�6r$r1c��\sQsQsQsP!)�"PurePythonTracebackErrorCaretTestsi?r�r�r�r$r"r]r]?s��	r$r]c��\sQsQsQsP!)�CPythonTracebackErrorCaretTestsiLr�r�r�r$r"r_r_L���	r$r_c��\sQsQsQsP!)�%CPythonTracebackLegacyErrorCaretTestsiXr�r�r�r$r"rbrbXr`r$rbc�`�\sQsQsnP	sQsQsQs\QQk2s	Qs
QsQsQ	s
Q
s\2Q2sQs\Q
2sQs\\O*2Q22s\O*2Q2s\Q2sQsQsUsP!)�TracebackFormatMixiniec��[Q2g)�blah)�KeyErrorrNs&r"�some_exception�#TracebackFormatMixin.some_exceptionhs
���v��r$c��STt,tFD.o[UO22[Q26:cJ,UMJ0	to!ttoh)z^~)�setrt)r9rO�lines&& r"�_filter_debug_ranges�)TracebackFormatMixin._filter_debug_rangesks2��!)�P����T�Z�Z�\�1B�c�$�i�1O����P�P��Ps�+>�>c�N�UO%fUOU2!U!r=)�DEBUG_RANGESrm)r9rOs&&r"�_maybe_filter_debug_ranges�/TracebackFormatMixin._maybe_filter_debug_rangesns$��� � � ��,�,�X�6�6��r$c��]QHGoUO2[Q2g[Cc�oSO
oSdSSO2QPO[OS22*oQOSOSO222Q*o[2oSXF2SO2o[Q29^tt^2o[OS2PPP2L)%fhL9h[2o	[OXIQ5[Q29^tt^2o
[O 2PPP2L)%fhL9h[O"2o[2o[O SQ5Po=LPo=hh9hSO%XW2SO%WO2S	O22SO%W
O2SO22SO%X�O22SO2o
S
]*oSO%['S
2]2S
Q
*S
P*ooSO)SQ2SO)SQ2SO)SQ	2P!)r)�traceback_printz&unable to create test traceback stringz#Traceback (most recent call last):
rmr�r_�	Tracebackrz	    raise���)r�rtrhrrgru�tb_nextr�rB�	format_tbrmr�rrdr�print_tbr|r}rrrs�assertStartsWith)r9�cleanup_funcrtr�r&�
traceback_fmt�file_�
python_fmtr��tbfile�	excstderr�excfmtr�tb_lines�banner�location�source_lines&&               r"�check_traceback_format�+TracebackFormatMixin.check_traceback_formatss#��-�	B����!�6�@�A�A��5�	.����B��'��R�Z�Z�(�B��G�G�I�$7�$7��$;�<�=�M�!�I�I��)�)�-�*B�*B�*D�E����M��J�E��B�&��.�.�*�J� ��*�*�h��"�"�2�&�+�*�*�*���Z�F����r�/� ��*�*�i��#�#�%�+�*�*�*���)�)�+�F��j�G����W�-�-��1	.��:	
����3�����*�*�,�f�o�o�.?�@�����+�+�-�w�/?�/?�/A�B�����!1�!1�!3�4��(�(�*���!�������X���*� (���h�r�l�+�����f�k�2����h��1����k�;�7s\�$�
G�G�F<�B(F<�(D�?	F<�D�D�<F<�E.�%	F<�.E>�7E>�9>F<�<Gc�(�UO2P!r=�r�rNs&r"�test_traceback_format�*TracebackFormatMixin.test_traceback_format�s���#�#�%r$c�0�QoUOU2P!)c�<�UOO2P!r=)�tb_frame�clearrrs&r"�
cleanup_tb�RTracebackFormatMixin.test_traceback_format_with_cleared_frames.<locals>.cleanup_tb�s���K�K���r$r�)r9r�s& r"�)test_traceback_format_with_cleared_frames�>TracebackFormatMixin.test_traceback_format_with_cleared_frames�s��	 ��#�#�J�/r$c�4�[Q29^tt^2o[O[O]22PPP2[2o[O[O]2UQ5UO
WO2UO22[O[O]22oUO
UO2POU22P!)%fhK�9h)r�r_)
rrB�print_stackrD�	_getframerrrrd�format_stackr�)r9�ststderr�stfile�stfmts&   r"�test_stack_format�&TracebackFormatMixin.test_stack_format�s����X�
&�
&�(��!�!�#�-�-��"2�3�'�������c�m�m�A�.�V�<�����*�*�,�f�o�o�.?�@��&�&�s�}�}�Q�'7�8������*�*�,�b�g�g�e�n�=�'�
&�s�+D�D	�D	c	�`�Qo[Q29^tt^2oU2PPP2UOOoUOWO	2O2QPQ[U]*1*QQ[U]*1*Q,2P!)%fhK�9h)c�2�[O2P!r=)rBr�r�r$r"�prn�2TracebackFormatMixin.test_print_stack.<locals>.prn�s���!�!�#r$r�z)  File "%s", line %d, in test_print_stackz	    prn()z  File "%s", line %d, in prnz    traceback.print_stack()���)rr�r�rrrdr�r�)r9r�r�r"s&   r"�test_print_stack�%TracebackFormatMixin.test_print_stack�s���	$�
�X�
&�
&�&��E�'����,�,��������*�5�5�7���<�7�8�V�A�X�:N�N��*�h��q��-A�A�)�	?
�	�'�
&�s�B�B-	�&B-	c��```�PUmU1Qkn[Q29^tt^2oR2UOQ2PPP2ROO
oQ[QU]*Q[QU]*Q[QU]*Q[QU]*Q0oUOUO22oWO2O2oUOUPQUPQ2UOUQ*UQ*2UOUP*UP*2[O2oUO[[ O"Q	UQ*2O%22['U]<*
U22QU1Q
kkn[Q29^tt^2oR2UOQ2PPP2ROO
o	Q[QU	]*Q
[QU	]*Q
[QU	]*Q[QU	]*Q0o
Q[QU	]*Q0oUOV�*O22oWO2O2oUOVe2QUU1Qkkn[Q29^tt^2oR2UOQ2PPP2ROO
o
Q[QU
]*Q[QU
]*Q[QU
]*Q[QU
]*Q[QU
]*Q0oUOV�*O22oWO2O2oUOVe2[Q29^tt^2oR[*O,2UOQ2PPP2Q[QU	]*Q
[QU	]*Q
[QU	]*Q
[QU	]*Q0o
Q[QU	]M*Q0oUOV�*O22oUO2O2oUOVe2[Q29^tt^2oR[*O,]*2UOQ2PPP2Q[QU	]*Q
[QU	]*Q
[QU	]*Q[QU	]*Q0o
Q[QU	]m*Q0oUOV�*O22oUO2O2oUOVe2P![cS2CKkh9h)%fhCKx9h[(cS2CK�h9h)%fhCK9h[(cS2CK(h9h)%fhCK59h[(cS2CKOh9h)%fhCK\9h[(cS2CK�h9h)%fhCK�9h)Nc�:�R2P!r=r�rWs�r"r��BTracebackFormatMixin._check_recursive_traceback_display.<locals>.f�s���
�Cr$r�zno recursion occurredr�r�z@, in _check_recursive_traceback_display
    f()
    ~^^
  File "z, in f
    f()
    ~^^
  File "zv, in f
    f()
    ~^^
  \[Previous line repeated (\d+) more times\]
RecursionError: maximum recursion depth exceeded
z\d+c�N:�U%cRU]*
2]*![gr�r�)rwr
s&�r"r
�BTracebackFormatMixin._check_recursive_traceback_display.<locals>.gs������q��z�A�~�%��r$zno value error was raisedrWz?, in g
    return g(count-1) + 1
           ~^^^^^^^^^
  File "zg, in g
    return g(count-1) + 1
           ~^^^^^^^^^
  [Previous line repeated 7 more times]
  File "z', in g
    raise ValueError
ValueError
z8, in _check_recursive_traceback_display
    g()
    ~^^
c�F:�U%cRU]*
2!R2P!r�r�)rwr
�hs&��r"r��BTracebackFormatMixin._check_recursive_traceback_display.<locals>.h)s������q��z�!�
�Cr$z@, in _check_recursive_traceback_display
    h()
    ~^^
  File "z%, in h
    return h(count-1)
  File "zM, in h
    return h(count-1)
  [Previous line repeated 7 more times]
  File "z, in h
    g()
    ~^^
zno error raisedzn, in _check_recursive_traceback_display
    g(traceback._RECURSIVE_CUTOFF)
    ~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
zf, in g
    return g(count-1) + 1
           ~^^^^^^^^^
  [Previous line repeated 1 more time]
  File "zv, in _check_recursive_traceback_display
    g(traceback._RECURSIVE_CUTOFF + 1)
    ~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
rv)�
)�maxDiffrr��RecursionErrorr�r�r�rqr�rdrr�assertRegexrurD�getrecursionlimitr��re�search�group�rangerArB�_RECURSIVE_CUTOFF)r9�
render_exc�stderr_fr��result_frOr��	rec_limit�stderr_g�lineno_g�result_g�tb_line�stderr_h�lineno_h�result_hr�r
r�s&&             @@@r"�"_check_recursive_traceback_display�7TracebackFormatMixin._check_recursive_traceback_display�s9������	��X�
&�
&�(�
3����	�	�1�2�
'��:�:�,�,��
��j���!���5� �j���!���5� �j���!���5� �j���!���5A�
A�	�,�2�2�8�3F�3F�3H�I���"�"�$�/�/�1��	
�������h�s��m�4�������X�b�\�2��
�
�h�r�l�F�2�J�/��)�)�+�	��
�
�c�"�)�)�F�F�2�J�7�=�=�?�@�%�	�RT��V_�B`�a�	�
�X�
&�
&�(�
7����	�	�5�6�
'��:�:�,�,���x�j���!���5� �j���!���5� �j���!���5� �j���!���5�
�	� 
��j���!���5�
�	��2�2�G�4F�3R�3R�3T�U���"�"�$�/�/�1������*�	�	�
�X�
&�
&�(�
7����	�	�5�6�
'��:�:�,�,��
��j���!���5� �j���!���5��j���!���5��j���!���5� �j���!���5�

�	� �2�2�H�4G�3S�3S�3U�V���"�"�$�/�/�1������*��X�
&�
&�(�
-��)�-�-�.��	�	�+�,�
'��x�j���!���5� �j���!���5� �j���!���5� �j���!���5�
�	�
��j���"��
�63�
3�	��2�2�G�4F�3R�3R�3T�U���"�"�$�/�/�1������*��X�
&�
&�(�
-��)�-�-��1�2��	�	�+�,�
'��x�j���!���5� �j���!���5� �j���!���5� �j���!���5�
�	� 
��j���#���77�
7�	��2�2�G�4F�3R�3R�3T�U���"�"�$�/�/�1������*��i"�
���
��'�
&�
&��l�
���
��'�
&�
&��V�
���
��'�
&�
&��B�
���
��'�
&�
&��F�
���
��'�
&�
&�s)�V.�V�V.�?W�W�W�X�W/�X�9X5�;X�X5�,Y"�.Y	�Y"�	V+�V+�'V.�*V+�+V.�.V?	�7V?	�	W�W�W�W�W�W,	�$W,	�/	X�9X�X�X�X�X	�X	�	X2�&X2�.X5�1X2�2X5�5Y	�>Y	�		Y�Y�Y"�Y�Y"�"Y3	�+Y3	c�`�UO%c"UO[O2P!]QHGnU1QkoUOU2P!)rr�c�@:�R[O22P!r=)rD�	exceptionr�s�r"r��ATracebackFormatMixin.test_recursive_traceback.<locals>.render_exc�s�����
�
��0r$)rpr�rBr|r�r�)r9r�r�s& @r"�test_recursive_traceback�-TracebackFormatMixin.test_recursive_traceback�s9��������3�3�I�4G�4G�H�1�
1��3�3�J�?r$c���QoU2oUOOoUOUQPQ[U]*1*Q[U]*1*,2P!)c�.�[O2!r=)rBr�r�r$r"�fmt�3TracebackFormatMixin.test_format_stack.<locals>.fmt�s���)�)�+�+r$z>  File "%s", line %d, in test_format_stack
    result = fmt()
zA  File "%s", line %d, in fmt
    return traceback.format_stack()
rv)r�r�rrr�)r9r��resultr"s&   r"�test_format_stack�&TracebackFormatMixin.test_format_stack�se��	,�������,�,���������
#�&.��q��%9�
:�
4�7?����6J�
K�'
�	r$c�Z�]QHGoQQ[2oUQ2oUQ2oVCgScSgScoSoPo=LPo=hh9hh9h[Q29^tt^2oSS2PPP2L)%fhL9hWO	2O2O
2oSO][S22SO[O2S]*2SOQS]*2SOQS]
*2P!)	rr�c�(`�\sQsQsnQsQsUsP!)�ATracebackFormatMixin.test_unhashable.<locals>.UnhashableExceptioni�c��P	!�Tr��r9�others&&r"�__eq__�HTracebackFormatMixin.test_unhashable.<locals>.UnhashableException.__eq__����r$r��r�r�r�r�r�r�r�r�s@r"�UnhashableExceptionr�������
�
r$r��ex1�ex2r�zUnhashableException: ex2zUnhashableException: ex1)r�r�r�rrdrtr�rrrs�context_messageru)	r9r�r�r�r�r��exc_valr�r&s	&        r"�test_unhashable�$TracebackFormatMixin.test_unhashable�s���-�	�)�	�"�%�(��!�%�(��	����"�	�
��	��&�
����
��	���X�
&�
&�(��G�$�'�
&�
&�
&���
�
�
 �
&�
&�
(�
3�
3�
5������S��W�%�����.�.�0�"�Q�%�8��
�
�0�"�Q�%�8��
�
�0�"�R�&�9sD�*�A�A�4�A�A�A�A�A�A�"	A4�4B	�=B	c�^�[]2o[Q2FDo[QU,2oJ	U!)r���r�)r�r�r�)r9r�r<s&  r"�deep_eg�TracebackFormatMixin.deep_eg�s,���a�L���t��A��t�a�S�)�A���r$c	��]QHGo]KoUO2o[Q29^tt^2o[O
UQ59^tt^2UU2PPP2PPP2WO
2oUOQU2UOUOQ2U2P!)%fhK]9h)%fhKh9h)rr�r���	max_depthr�)
r�r�r�rr�infinite_recursionrdru�assertLessEqualrw)r9r��LIMITr�r�r;s&     r"�(test_exception_group_deep_recursion_capi�=TracebackFormatMixin.test_exception_group_deep_recursion_capi�s���	.���
�\�\�^��
�X�
&�
&�(��+�+�e�<�<���#�=�'��"�"�$���
�
�&��/����V�\�\�*:�;�U�C�	=�<��'�
&�s/� B>�
	B+	�B>�+B;
�4B;
�6B>�>C	�C	c	���]KoUO2o[Q29^tt^2o[OUQ59^tt^2[O
[
U2V"O2PPP2PPP2WO2oUOQU2UOUOQ2U2P!)%fhK]9h)%fhKh9h)�Kr�r�r�)r�rrr�rBrc�typerurdrur�rw)r9r�r�r�r;s&    r"�-test_exception_group_deep_recursion_traceback�BTracebackFormatMixin.test_exception_group_deep_recursion_traceback�s�����
�\�\�^��
�X�
&�
&�(��+�+�e�<�<��)�)�$�r�(�B�8H�8H�I�=�'��"�"�$���
�
�&��/����V�\�\�*:�;�U�C�	=�<��'�
&�s/� C�+C	�2C�C
�C
�C�C*	�#C*	c	�4�]QHGo[Q29^tt^2o[O29^tt^2U]*2PPP2PPP2UOWO
2Q2P!)%fhK:9h)%fhKE9h)rr�r�zFTypeError: print_exception(): Exception expected for value, int found
)r�r�rr�catch_unraisable_exceptionrrrd)r9r�r�s&  r"�"test_print_exception_bad_type_capi�7TracebackFormatMixin.test_print_exception_bad_type_capi�sd��-�
�X�
&�
&�&��3�3�5�5���#�6�'�	
����O�O��9�	
�6�5��'�
&�s.�B�	A4	�B�4B
�=B
�?B�B	�B	c��QoUO[U29^tt^2[O]*2PPP2P!)%fhP!9h)z'Exception expected for value, int found)rtr�rBrc)r9�msgs& r"�$test_print_exception_bad_type_python�9TracebackFormatMixin.test_print_exception_bad_type_python�s7��7��
�
#�
#�I�s�
3�
3��%�%�b�)�4�
3�
3�
3�s�A�A	�A	)r�r=)r�r�r�r�rprhrmrqrr�r�r�r�r�r�r	r�r�r�r�r�skip_emscripten_stack_overflowr�r�r�r�r�r�r�s@r"rdrdes������L��Q��
�/8��/8�b&�0�>��A+�F��@��@�
��:��:�4���+�+�-�	D�.��	D�
�+�+�-�D�.�D��	
��	
�*�*r$rdzG
The above exception was the direct cause of the following exception:

zF
During handling of the above exception, another exception occurred:

rp�|r�c��\sQsQsQsP!)�TestTracebackFormati�r�r�r�r$r"r�r��s��r$r�c�\``�\sQsQsnP
sU1QkU1QkksU1QkU1QkksQsUsU9s	!)�TestFallbackTracebackFormati�c� :�U]6�cPgQP-!�rr�r�)r/r�s"�r"r��.TestFallbackTracebackFormat.setUp.__annotate__	s�����t�r$c�:�[OUmQ[m[OUmQ[m[RU_2!)c��P!r=r�rs*r"r#�3TestFallbackTracebackFormat.setUp.<locals>.<lambda>	s��4r$c��]]*!r�r�rs*r"r#r	s���1�r$)rD�unraisablehook�original_unraisable_hookrB�_print_exception_bltin�
original_hookr3r4r8s&�r"r4�!TestFallbackTracebackFormat.setUp	s;���(+�(:�(:��%�/���&�=�=���+<�	�(��w�}��r$c� :�U]6�cPgQP-!rr�)r/r�s"�r"r��1TestFallbackTracebackFormat.tearDown.__annotate__	s���"�"�$�"r$c�v:�UO[mUO[m[RU_2!r=)rrBrr
rDr	r3r>r8s&�r"r>�$TestFallbackTracebackFormat.tearDown	s-���+/�+=�+=�	�(�!�:�:����w��!�!r$)rr
)
r�r�r�r�rpr4r>r�r�r�r�s@@r"rr�s%�����L���"�"�"r$rc�`�\sQsQsnQs\O
O]*sQsQs	Qs
QsQsQs
Q	sQ
sQsQsQ
sQsQsQsQsQsQsQsQsQsQsQsQsQsQs Qs!Qs"Qs#Qs$Q s%Q!s&Us'P!)"�BaseExceptionReportingTestsi	c�|�[U[2%cU!U2P![c
oStPo=!Po=hh9hr=)�
isinstancer�r�)r9�exception_or_callabler�s&& r"r��)BaseExceptionReportingTests.get_exception	s6���+�]�;�;�(�(�	�!�#���	��H��	�s�$�	;�;�6�;�;c��]]*P!r�r�rNs&r"�zero_div�$BaseExceptionReportingTests.zero_div	s��	�!��r$c�D�UO2o[2%c4UOUQ*Q2UOQUQ*2L2UOUQ*Q2UOQUQ*2UOUP*Q2P!)rrz1/0 # In zero_divr���rvr�)r�r
rzru)r9r�r�s&& r"�check_zero_div�*BaseExceptionReportingTests.check_zero_div	sz����� ��� � ��!�!�%��)�X�6��M�M�-�u�R�y�9��!�!�%��)�X�6��M�M�-�u�R�y�9����e�B�i�)<�=r$c��]]*UOW2O2o[2%c6UO	[U2]2UO
U]*Q2L4UO	[U2]2UO
U]*Q2UO
U]*Q2UO
U]*Q2UOQU]*2P![c
oSoPo=K�Po=hh9h)r�rrurz1/0 # Marker)r�
get_reportr�r
rrrsrzru�r9r!r�r�s&   r"�test_simple�'BaseExceptionReportingTests.test_simple%	s���	�
�a�C�����"�-�-�/��� � ����S��Z��+��!�!�%��(�,?�@����S��Z��+��!�!�%��(�,?�@����e�A�h��4����e�A�h��1��
�
�n�e�A�h�/��!�	��A��	�s�	C1�1	D�;D�<D�Dc�>``�U1QknU1Qko[OROU22oRO[	U2]2ROU]*[
2RO
U]*2ROQU]*2P!)c�`:�RO2P![c
o[SgPo=hh9hr=�rrrg)r�r9s �r"�inner_raise�;BaseExceptionReportingTests.test_cause.<locals>.inner_raise6	s)���
&��
�
���$�
&��A�%��
&�s��	-�-�(�-c�:�R2P!r=r��r's�r"�outer_raise�;BaseExceptionReportingTests.test_cause.<locals>.outer_raise;	�����Mr$�inner_raise() # Marker��
boundaries�splitr rrrs�
cause_messagerru�r9r+�blocksr'sf  @r"�
test_cause�&BaseExceptionReportingTests.test_cause5	ss���	&�
	��!�!�$�/�/�+�">�?������V��a�(�������M�2����F�1�I�&��
�
�.��q�	�:r$c�>``�U1QknU1Qko[OROU22oRO[	U2]2ROU]*[
2RO
U]*2ROQU]*2P!)c�V:�RO2P![c[gh9hr=r&rNs�r"r'�=BaseExceptionReportingTests.test_context.<locals>.inner_raiseD	s%���
��
�
���$�
���
�s��	(�(c�:�R2P!r=r�r*s�r"r+�=BaseExceptionReportingTests.test_context.<locals>.outer_raiseI	r-r$r.)r0r1r rrrsr�rrur3sf  @r"�test_context�(BaseExceptionReportingTests.test_contextC	ss���	�
	��!�!�$�/�/�+�">�?������V��a�(�������O�4����F�1�I�&��
�
�.��q�	�:r$c��[g[c	[Pgh9h[c
oSoPo=LPo=hh9hSOS2O2oSO	[S2]2SO
S]*Q2SO
S]*Q2SO
S]*Q2SOQS]*2P!)NrrurzZeroDivisionError from None)r�rr r�rrrsrzrur!s&   r"�test_context_suppression�4BaseExceptionReportingTests.test_context_suppressionQ	s���	�
2�����
2�'�T�1�
2�� �	��A��	������"�-�-�/������U��Q�'����e�A�h�(;�<����e�A�h��4����e�A�h��1��
�
�3�U�1�X�>s �
�	�	� �	7�7�2�7c�>``�U1QknU1Qko[OROU22oRO[	U2]2ROU]*[
2RO
U]*2ROQU]*2P!)c�:�RO2[P![c
oSoPo=KPo=hh9h[c	[Wgh9hr=)rr�xyzzy�	NameErrorrg)�_er�r9s  �r"r'�GBaseExceptionReportingTests.test_cause_and_context.<locals>.inner_raisec	sH���
��
�
��
&���%�
����
���
&��A�%�
&�s#��7�	4�4�/�4�	A
�	A
c�:�R2P!r=r�r*s�r"r+�GBaseExceptionReportingTests.test_cause_and_context.<locals>.outer_raisel	r-r$r.r/r3sf  @r"�test_cause_and_context�2BaseExceptionReportingTests.test_cause_and_context`	ss���	&�	��!�!�$�/�/�+�">�?������V��a�(�������M�2����F�1�I�&��
�
�.��q�	�:r$c�``�U1QknU1Qko[OROU22oRO[	U2]2ROU]*[
2RO
QU]*2ROQU]*2RO
QU]*2ROU]*2P!)c�:�RO2P![coSo[SgPo=hh9h[c	oWSgPo=hh9hr=r&)r�r(r9s  �r"r'�EBaseExceptionReportingTests.test_cause_recursive.<locals>.inner_raiseu	sK���
�*��M�M�O��(�*��A�"��)��*���
��Q���
�s-��	0�0�	+�0�3�	A�A�A�Ac�:�R2P!r=r�r*s�r"r+�EBaseExceptionReportingTests.test_cause_recursive.<locals>.outer_raise~	r-r$zraise KeyError from ez1/0r.)	r0r1r rrrsr2rurGrr3sf  @r"�test_cause_recursive�0BaseExceptionReportingTests.test_cause_recursivet	s����	�	��!�!�$�/�/�+�">�?������V��a�(�������M�2��
�
�-�v�a�y�9������q�	�*�	
�
�
�.��q�	�:����F�1�I�&r$c���QoUOU2O2oUOUQ*Q2QoUOU2O2oUOUQ*Q2P!)c��[PQ2g)�)rTrr�hello)rqr�r$r"r��FBaseExceptionReportingTests.test_syntax_error_offset_at_eol.<locals>.e�	s���b�"5�6�6r$z	        ^c��[Q2P!)zx = 5 | 4 |)rKr�r$r"r�rV�	s
����r$z               ^rv)r r�rr�r9r�r�s&  r"�test_syntax_error_offset_at_eol�;BaseExceptionReportingTests.test_syntax_error_offset_at_eol�	sc��	7��o�o�a� �+�+�-������R��+�.�	 ��o�o�a� �+�+�-������R��"4�5r$c���[Q2oUOU2O2oUOUQ,2]dUmUOU2O2oUOUQQ,2[Q2oQUmUOU2O2oUOUQ,2]dUmUOU2O2oUOUQQ,2P!)r�zSyntaxError: bad syntaxz  File "<string>", line 100z	myfile.pyz#SyntaxError: bad syntax (myfile.py)z  File "myfile.py", line 100)rqr r�rrr"r)rXs&  r"�test_syntax_error_no_lineno�7BaseExceptionReportingTests.test_syntax_error_no_lineno�	s���
��%���o�o�a� �+�+�-������
&�'�	)�����o�o�a� �+�+�-������
*�,E�F�	H�
��%�� ��
��o�o�a� �+�+�-������
2�3�	5�����o�o�a� �+�+�-������
+�-F�G�	Ir$c�f�UO[P22oUOQU2UO[Q22oUOQU2UO[22oUOQU2UO[P22oUOQU2P!)NzException: None
�Nonez
Exception
)r r�rurxs& r"�test_message_none�-BaseExceptionReportingTests.test_message_none�	s����o�o�i��o�.���
�
�)�3�/��o�o�i��/�0���
�
�)�3�/��o�o�i�k�*���
�
�m�S�)��o�o�i��m�,���
�
�m�S�)r$c
��[Q]
2FCD�oQFCD�oQU*QU**oQ,oU]6c(UOQUO2*2L�U]6:c�UOQUO2*2[][	UO22U*
]*2oUOQQU]*
*8QU*802Lo[][	UO22]*
2oUOQUO2*2UOQQ
8QU*802UOQ2UOP2UO[
QQ	]V*U122oQ
OU2oUOVv2CJ�	CJ�	P!)rr�ztext%dz  File "file.py", line 1z    %s�    rkzSyntaxError: msgr�zfile.pyrm���)rrz     )	r��appendr��maxrsr rqr�rr)r9�offset�addrKrO�caret_lengthry�exps&       r"�!test_syntax_error_various_offsets�=BaseExceptionReportingTests.test_syntax_error_various_offsets�	sT���B��m�m�F����S�y�8�f�#4�4��6�7���A�:��O�O�H�t�{�{�}�$<�=��q�[��O�O�H�t�{�{�}�$<�=�#&�q�#�d�k�k�m�*<�v�*E��*I�#J�L��O�O�#��!��2D�c�L�FX�$Y�Z�#&�q�#�d�k�k�m�*<�q�*@�#A�L��O�O�H�t�{�{�}�$<�=��O�O�'�3��;M�$N�O���� 2�3�����#��o�o�k�%�)�Q���VZ�9[�&\�]���i�i��)��� � ��*�%�$r$c���[]{2oUOU2oUOQ2UOUOU2UQ*2U;UOP2UOUOU2UQ*2U;UOQ2UOUOU2UQ*2U;UOUOU2U2P!)�{zMy NotezMy Note
rmz	Your Notez
Your Note
)rAr r�rr�	__notes__�r9r��vanillas&  r"�test_exception_with_note�4BaseExceptionReportingTests.test_exception_with_note�	s����s�O���/�/�!�$��	�
�
�9���������+�W�{�-B�C�
�K�	�
�
�2���������+�W�t�^�<�
�K�	�
�
�;���������+�W�}�-D�E�
�K��������+�W�5r$c���[]{2oUOU2oQQ2oQQ2oU2UmQoUOUOU2V%*Q*2U2UmQoUOUOU2V&*Q*2U2Q,UmQ	oUOUOU2V'*Q
*2U2Q,UmQoUOUOU2V&*Q
*2QUmQ
oUOUOU2V&*Q*2QUmQoUOUOU2V&*Q*2QQ[2oU]{2oUOU2oP	UmUOUOU2UQ*2P!)rnc�.`�\sQsQsnQsQsQsUsP!)�OBaseExceptionReportingTests.test_exception_with_invalid_notes.<locals>.BadThingi�	c��Q!)�bad strr�rNs&r"r��WBaseExceptionReportingTests.test_exception_with_invalid_notes.<locals>.BadThing.__str__�	s�� r$c��Q!)�bad reprr�rNs&r"�__repr__�XBaseExceptionReportingTests.test_exception_with_invalid_notes.<locals>.BadThing.__repr__�	s��!r$r�)r�r�r�r�r�r|r�r�r�s@r"�BadThingrv�	s����
!�
"�
"r$r~c�(`�\sQsQsnQsQsUsP!)�RBaseExceptionReportingTests.test_exception_with_invalid_notes.<locals>.Unprintablei�	c��[Q2g��	bad valuer�rNs&r"r|�[BaseExceptionReportingTests.test_exception_with_invalid_notes.<locals>.Unprintable.__repr__�	s
�� ��-�-r$r��r�r�r�r�r|r�r�r�s@r"�Unprintabler��	s����
.�
.r$r�r{rmz<__notes__ repr() failed>z
Final Noterxz
Final Note
z<note str() failed>zplease do not explode mez'please do not explode me's please do not show me as numbersz#b'please do not show me as numbers'c�,`�\sQsQsnP
sQsQsUsP!)�VBaseExceptionReportingTests.test_exception_with_invalid_notes.<locals>.BrokenExceptioni
c�H�UO%c[QU02gP!)zno )�brokenrA�r9�names&&r"�__getattr__�bBaseExceptionReportingTests.test_exception_with_invalid_notes.<locals>.BrokenException.__getattr__
s!���;�;�;�$�s�4�&�\�2�2�r$r�)r�r�r�r�r�r�r�r�r�s@r"�BrokenExceptionr�
s�����F�
3�
3r$r�z<Ignored error getting __notes__: ValueError('no __notes__')
)rAr rorrr�r�)	r9r�rqr~r��
notes_reprr@�bad_noter�s	&        r"�!test_exception_with_invalid_notes�=BaseExceptionReportingTests.test_exception_with_invalid_notes�	s����s�O���/�/�!�$��	"�	"�	.�	.��j����
��������+�W�-A�D�-H�I�!�m���-���������+�W�->��-E�F�!�
�L�1������������+�W�-?�BR�-R�S�$�
�|�4���'���������+�W�->�AQ�-Q�R�1���.���������+�W�->��-E�F�:���7���������+�W�->��-E�F�	3�i�	3�
�C� ���/�/�!�$���������O�O�A���U�U�	Wr$c	�x�[]*2[Q21FCDoUOUQ59^tt^2UOU2oUO	Q2UO	Q2UO	Q2UOUOU2UQ*Q*Q*2U;UO	Q	2U;UO	Q
2UO	Q2UOUOU2UQ*Q
*2PPP2CJ
	P!)%fhCJ 9h)�*r�rzNote 1zNote 2zNote 3zNote 1
zNote 2
zNote 3
zNote 4zNote 5zNote 6zNote 5
zNote 6
)rArqr!r r�rrrorps&  r"�"test_exception_with_multiple_notes�>BaseExceptionReportingTests.test_exception_with_multiple_notes
s����R�.�+�l�";�<�A������"�"��/�/�!�,���
�
�8�$��
�
�8�$��
�
�8�$�� � ��O�O�A�&��j�(�:�5�
�B�D��K��
�
�8�$��K��
�
�8�$��
�
�8�$�� � ��O�O�A�&��j�(�:�5�7�##�"�=�"�"�"�s�C!D'	�'D9
�0D9
c�^�QQ2oUOUOO22oQoQOUOOOUOOO
,2oU8QU8Q0oUO
U[U*2P!)c�,�\sQsQsQQ2sQsP!)�>BaseExceptionReportingTests.test_exception_qualname.<locals>.Ai3
c�.�\sQsQsQQ\2sQsP!)�@BaseExceptionReportingTests.test_exception_qualname.<locals>.A.Bi4
c�(`�\sQsQsnQsQsUsP!)�BBaseExceptionReportingTests.test_exception_qualname.<locals>.A.B.Xi5
c��Q!��I am Xr�rNs&r"r��JBaseExceptionReportingTests.test_exception_qualname.<locals>.A.B.X.__str__6
s��'r$r�r�r�s@r"r�r�5
s����(�(r$r�r�)r�r�r�r�r�r�r�r�r$r"r�r�4
s��(�	�(�(r$r�r�)r�r�r�r�r�r�r�r$r"r�r�3
s��
(�
(r$r�r�rr�rm)r r�r�r�r�r�rr�
MODULE_PREFIX)r9r�ryr�r�rjs&     r"�test_exception_qualname�3BaseExceptionReportingTests.test_exception_qualname2
sy��	(�	(��o�o�a�c�c�e�e�g�&���	��8�8�Q�S�S�U�U�-�-�q�s�s�u�u�/A�/A�B�C��$�i�0������m�c�1�2r$c	��QQ[2oQFD�oV!mUOUQ59^tt^2UOU22oQoUQ7cUOoL'QOUOUO,2oU8QU8Q0oUO
Vc2PPP2J�	P!)%fhJ�9h)	c�(`�\sQsQsnQsQsUsP!)�@BaseExceptionReportingTests.test_exception_modulename.<locals>.Xi@
c��Q!r�r�rNs&r"r��HBaseExceptionReportingTests.test_exception_modulename.<locals>.X.__str__A
���r$r�r�r�s@r"r�r�@
�����
 �
 r$r�)�
modulenamer�rr�rm)rr��some_module)r�r)r�r�r!r r�r�rr)r9r�r�ryr�r�rjs&      r"�test_exception_modulename�5BaseExceptionReportingTests.test_exception_modulename?
s���	 �	�	 �@�J�%�L������4�4��o�o�a�c�*��$�	��!9�9� �~�~�H�"�x�x����q�~�~�(F�G�H�$,�i�8��� � ��*�5�4�@�4�4�4�s�B4	�AB4	�4C
�=C
c���[OQ2o[UQQ2o--qC[V#U2UO	UQ*2oQoUOVe2P!)z~
            try:
                raise ValueError(42)
            except Exception as e:
                exc = e
            z<does not exist>rKrEz>  File "<does not exist>", line 3, in <module>
ValueError: 42
)r�r�rMrKr ru)r9�srcrr
�lryrjs&      r"�'test_exception_angle_bracketed_filename�CBaseExceptionReportingTests.test_exception_angle_bracketed_filenameP
sZ���o�o�����s�.��7���2�1��T�a���o�o�a��h�'��P���
�
�c�r$c��QQ[2o]*UmUOU22oQUOQ0oUO	V22P!)c�(`�\sQsQsnQsQsUsP!)�LBaseExceptionReportingTests.test_exception_modulename_not_unicode.<locals>.Xi`
c��Q!r�r�rNs&r"r��TBaseExceptionReportingTests.test_exception_modulename_not_unicode.<locals>.X.__str__a
r�r$r�r�r�s@r"r�r�`
r�r$r�z
<unknown>.z	: I am X
)r�r�r r�rr)r9r�ryrjs&   r"�%test_exception_modulename_not_unicode�ABaseExceptionReportingTests.test_exception_modulename_not_unicode_
sH��	 �	�	 �����o�o�a�c�"���1�>�>�*�*�5������"r$c���QQ[2oUOU22oQoQOUOUO,2oUO[U*UQUQ02P!)c�(`�\sQsQsnQsQsUsP!)�@BaseExceptionReportingTests.test_exception_bad__str__.<locals>.Xik
c��]]*P!r�r�rNs&r"r��HBaseExceptionReportingTests.test_exception_bad__str__.<locals>.X.__str__l
r�r$r�r�r�s@r"r�r�k
r�r$r�r�rr�rm)r�r r�r�r�rrr�r�s&    r"�test_exception_bad__str__�5BaseExceptionReportingTests.test_exception_bad__str__j
sb��	�	�	��o�o�a�c�"��.�	��8�8�Q�\�\�1�>�>�:�;�������,��
�"�Y�K�r�.J�Kr$c	���QoQ[QUOQ[QUOO]*Q0	oUO	U2oUOV22P!)c�D�[Q[]2[]2,2g)r�r�r�r$r"rE�CBaseExceptionReportingTests.test_exception_group_basic.<locals>.excw
s�� ��
�1�
�y��|�'D�E�Er$r�r��_, in get_exception
  |     exception_or_callable()
  |     ~~~~~~~~~~~~~~~~~~~~~^^
  |   File "a, in exc
  |     raise ExceptionGroup("eg", [ValueError(1), TypeError(2)])
  | ExceptionGroup: eg (2 sub-exceptions)
  +-+---------------- 1 ----------------
    | ValueError: 1
    +---------------- 2 ----------------
    | TypeError: 2
    +------------------------------------
�r�r�r�r�r rr�r9rErO�reports&   r"�test_exception_group_basic�6BaseExceptionReportingTests.test_exception_group_basicv
sp��	F��$�:�X�d�.@�.@�-A�B�%�:�X�c�l�l�.I�.I�A�.M�-N�O;�	<�	�����%������*r$c
��QoQ[QUOO]*Q[QUOQ[QUOO]*Q0
oUO	U2oUOV22P!)c��[oUQ[]2[]2,2g[c$oSQ[]2[]2,2SgPo=hh9h��eg1�eg2�r�rAr�r�)�EGr�s  r"rE�CBaseExceptionReportingTests.test_exception_group_cause.<locals>.exc�
sU���B�
F����A��	�!�� =�>�>���
F����A��	�!�� =�>�A�E��
F�s�&�	A�A�A�Ar�r�a�, in exc
  |     raise EG("eg1", [ValueError(1), TypeError(2)])
  | ExceptionGroup: eg1 (2 sub-exceptions)
  +-+---------------- 1 ----------------
    | ValueError: 1
    +---------------- 2 ----------------
    | TypeError: 2
    +------------------------------------

The above exception was the direct cause of the following exception:

  + Exception Group Traceback (most recent call last):
  |   File "r�a, in exc
  |     raise EG("eg2", [ValueError(3), TypeError(4)]) from e
  | ExceptionGroup: eg2 (2 sub-exceptions)
  +-+---------------- 1 ----------------
    | ValueError: 3
    +---------------- 2 ----------------
    | TypeError: 4
    +------------------------------------
�r�r�r�r�r rrr�s&   r"�test_exception_group_cause�6BaseExceptionReportingTests.test_exception_group_cause�
s���	F�#�#+�*�H�S�\�\�5P�5P�ST�5T�4U�V#�$,�*�H�T�5G�5G�4H�I#�$,�*�H�S�\�\�5P�5P�ST�5T�4U�VB�!C��2����%������*r$c�^�QoQ[QUOO]*Q[QUOO]*Q[QUOQ[QUOO]*Q0oUO	U2oUOV22P!)c���[oUQ[]2[]2,2gScSQ[]2[]2,2gh9hSc
[]2gh9hr�)r�rAr��ImportError)r�s r"rE�RBaseExceptionReportingTests.test_exception_group_context_with_context.<locals>.exc�
so���B�
%�C��U�Z��]�I�a�L�$A�B�B���C��U�Z��]�I�a�L�$A�B�B�C���
%�!�!�n�$�
%�s �'�A�A�A�A"�
A"r�r�a�, in exc
  |     raise EG("eg1", [ValueError(1), TypeError(2)])
  | ExceptionGroup: eg1 (2 sub-exceptions)
  +-+---------------- 1 ----------------
    | ValueError: 1
    +---------------- 2 ----------------
    | TypeError: 2
    +------------------------------------

During handling of the above exception, another exception occurred:

  + Exception Group Traceback (most recent call last):
  |   File "a, in exc
  |     raise EG("eg2", [ValueError(3), TypeError(4)])
  | ExceptionGroup: eg2 (2 sub-exceptions)
  +-+---------------- 1 ----------------
    | ValueError: 3
    +---------------- 2 ----------------
    | TypeError: 4
    +------------------------------------

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "zS, in get_exception
    exception_or_callable()
    ~~~~~~~~~~~~~~~~~~~~~^^
  File "z1, in exc
    raise ImportError(5)
ImportError: 5
r�r�s&   r"�)test_exception_group_context_with_context�EBaseExceptionReportingTests.test_exception_group_context_with_context�
s���	%��$�:�X�c�l�l�.I�.I�A�.M�-N�O�%�:�X�c�l�l�.I�.I�A�.M�-N�O�!�z��$�*<�*<�)=�>�!�z��#�,�,�*E�*E��*I�)J�K �9!�	�B����%������*r$c�^�QoQ[QUOO]	*Q[QUOO]*Q[QUOQ[QUOO]*Q0oUO	U2oUOV22P!)c���[o[o[oUQU]2U]2,2g[c
oSoPo=LPo=hh9hSQS]2XA]2,2gScSQS]2,2gh9h)�nestedr��topr�)r��VE�TEr�rEs     r"rE�DBaseExceptionReportingTests.test_exception_group_nested.<locals>.exc�
s����B��B��B�
)���X��1��r�!�u�~�6�6�� ���C�������1��s�B�q�E�2�3�3���
)����A���(�(�
)�s.�-�	A�A�?�A�A�A�A6�$A6r�r�a, in exc
  |     raise EG("eg", [VE(1), exc, VE(4)])
  | ExceptionGroup: eg (3 sub-exceptions)
  +-+---------------- 1 ----------------
    | ValueError: 1
    +---------------- 2 ----------------
    | Exception Group Traceback (most recent call last):
    |   File "a, in exc
    |     raise EG("nested", [TE(2), TE(3)])
    | ExceptionGroup: nested (2 sub-exceptions)
    +-+---------------- 1 ----------------
      | TypeError: 2
      +---------------- 2 ----------------
      | TypeError: 3
      +------------------------------------
    +---------------- 3 ----------------
    | ValueError: 4
    +------------------------------------

During handling of the above exception, another exception occurred:

  + Exception Group Traceback (most recent call last):
  |   File "r�z�, in exc
  |     raise EG("top", [VE(5)])
  | ExceptionGroup: top (1 sub-exception)
  +-+---------------- 1 ----------------
    | ValueError: 5
    +------------------------------------
r�r�s&   r"�test_exception_group_nested�7BaseExceptionReportingTests.test_exception_group_nested�
s���	)�#�#+�*�H�S�\�\�5P�5P�ST�5T�4U�V%�&.�J�h�s�|�|�7R�7R�UV�7V�6W�X#�$,�*�H�T�5G�5G�4H�I#�$,�*�H�S�\�\�5P�5P�SU�5U�4V�WB�5C��B����%������*r$c���,o[Q2FDoUO[U22J	[QU2oQoUO	U2oUOVT2P!)��r�a>  | ExceptionGroup: eg (1000 sub-exceptions)
  +-+---------------- 1 ----------------
    | ValueError: 0
    +---------------- 2 ----------------
    | ValueError: 1
    +---------------- 3 ----------------
    | ValueError: 2
    +---------------- 4 ----------------
    | ValueError: 3
    +---------------- 5 ----------------
    | ValueError: 4
    +---------------- 6 ----------------
    | ValueError: 5
    +---------------- 7 ----------------
    | ValueError: 6
    +---------------- 8 ----------------
    | ValueError: 7
    +---------------- 9 ----------------
    | ValueError: 8
    +---------------- 10 ----------------
    | ValueError: 9
    +---------------- 11 ----------------
    | ValueError: 10
    +---------------- 12 ----------------
    | ValueError: 11
    +---------------- 13 ----------------
    | ValueError: 12
    +---------------- 14 ----------------
    | ValueError: 13
    +---------------- 15 ----------------
    | ValueError: 14
    +---------------- ... ----------------
    | and 985 more exceptions
    +------------------------------------
)r�rerAr�r rr)r9�excsr<r�rOr�s&     r"� test_exception_group_width_limit�<BaseExceptionReportingTests.test_exception_group_width_limitsX�����t��A��K�K�
�1�
�&��
�D�$�
'��!B��F����$������*r$c
���[Q2o[Q2FD(o[QU0[U2U[U'2,2oJ*	QoUO	U2oUOVC2P!)�bad typer�r�a�  | ExceptionGroup: eg999 (3 sub-exceptions)
  +-+---------------- 1 ----------------
    | ValueError: 999
    +---------------- 2 ----------------
    | ExceptionGroup: eg998 (3 sub-exceptions)
    +-+---------------- 1 ----------------
      | ValueError: 998
      +---------------- 2 ----------------
      | ExceptionGroup: eg997 (3 sub-exceptions)
      +-+---------------- 1 ----------------
        | ValueError: 997
        +---------------- 2 ----------------
        | ExceptionGroup: eg996 (3 sub-exceptions)
        +-+---------------- 1 ----------------
          | ValueError: 996
          +---------------- 2 ----------------
          | ExceptionGroup: eg995 (3 sub-exceptions)
          +-+---------------- 1 ----------------
            | ValueError: 995
            +---------------- 2 ----------------
            | ExceptionGroup: eg994 (3 sub-exceptions)
            +-+---------------- 1 ----------------
              | ValueError: 994
              +---------------- 2 ----------------
              | ExceptionGroup: eg993 (3 sub-exceptions)
              +-+---------------- 1 ----------------
                | ValueError: 993
                +---------------- 2 ----------------
                | ExceptionGroup: eg992 (3 sub-exceptions)
                +-+---------------- 1 ----------------
                  | ValueError: 992
                  +---------------- 2 ----------------
                  | ExceptionGroup: eg991 (3 sub-exceptions)
                  +-+---------------- 1 ----------------
                    | ValueError: 991
                    +---------------- 2 ----------------
                    | ExceptionGroup: eg990 (3 sub-exceptions)
                    +-+---------------- 1 ----------------
                      | ValueError: 990
                      +---------------- 2 ----------------
                      | ... (max_group_depth is 10)
                      +---------------- 3 ----------------
                      | ValueError: -990
                      +------------------------------------
                    +---------------- 3 ----------------
                    | ValueError: -991
                    +------------------------------------
                  +---------------- 3 ----------------
                  | ValueError: -992
                  +------------------------------------
                +---------------- 3 ----------------
                | ValueError: -993
                +------------------------------------
              +---------------- 3 ----------------
              | ValueError: -994
              +------------------------------------
            +---------------- 3 ----------------
            | ValueError: -995
            +------------------------------------
          +---------------- 3 ----------------
          | ValueError: -996
          +------------------------------------
        +---------------- 3 ----------------
        | ValueError: -997
        +------------------------------------
      +---------------- 3 ----------------
      | ValueError: -998
      +------------------------------------
    +---------------- 3 ----------------
    | ValueError: -999
    +------------------------------------
)r�r�r�rAr rr)r9rEr<rOr�s&    r"� test_exception_group_depth_limit�<BaseExceptionReportingTests.test_exception_group_depth_limit<si���
�#���t��A� ��Q�C���A���Z���^�4�6�C��
FB��P����%������*r$c�^�QoQ[QUOQ[QUOO]	*Q[QUOO]*Q[QUOO]*Q0oUO	U2oUOV22P!)c��,oQFD
o[U2g	[QU2g[c1oSOQS02SOS2Po=JSPo=hh9h[coSOQ2gPo=hh9h)r��the r��t>> Multi line note
>> Because I am such
>> an important exception.
>> empty lines work too

(that was an empty line)�r�zterrible value�rAr�rer��r�r�r�s   r"rE�HBaseExceptionReportingTests.test_exception_group_with_notes.<locals>.exc�s���
���:�C�'�(��o�-�;�%�X�t�4�4��&�'��
�
�T�#��<�0����A����'��"�
��
�
�7�9���
�sG�A#�%�A#�	A �A �%A�A#�A � A#�#	B�-B�.B�Br�r�r�aQ, in exc
  |     raise ExceptionGroup("nested", excs)
  | ExceptionGroup: nested (2 sub-exceptions)
  | >> Multi line note
  | >> Because I am such
  | >> an important exception.
  | >> empty lines work too
  | 
  | (that was an empty line)
  +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    |   File "z�, in exc
    |     raise ValueError(msg)
    | ValueError: bad value
    | the bad value
    +---------------- 2 ----------------
    | Traceback (most recent call last):
    |   File "z�, in exc
    |     raise ValueError(msg)
    | ValueError: terrible value
    | the terrible value
    +------------------------------------
r�r�s&   r"�test_exception_group_with_notes�;BaseExceptionReportingTests.test_exception_group_with_notes�s���	�&#�#+�*�H�T�5G�5G�4H�I#�$,�*�H�S�\�\�5P�5P�ST�5T�4U�V%�&.�J�h�s�|�|�7R�7R�UV�7V�6W�X%�&.�J�h�s�|�|�7R�7R�UV�7V�6W�XB�+C��6����%������*r$c�^�QoQ[QUOQ[QUOO]
*Q[QUOO]*Q[QUOO]*Q0oUO	U2oUOV22P!)c�Z�,oQFD
o[U2g	[QU2g[cEoSOQS02SOQS02SOS2Po=JgPo=hh9h[c)oSOQ2SOQ2gPo=hh9h)r�r�zGoodbye r�r�zGoodbye!r�r�r�s   r"rE�QBaseExceptionReportingTests.test_exception_group_with_multiple_notes.<locals>.exc�s���
���:�C�'�(��o�-�;�%�X�t�4�4��	&�'��
�
�T�#��<�0��
�
�X�c�U�#3�4����A����'��
"�
��
�
�7�9��
�
�:�&���
�sG�A7�%�A7�	A4�A4�9A/�)A7�/A4�4A7�7	B*�B*�#B%�%B*r�r�r�a^, in exc
  |     raise ExceptionGroup("nested", excs)
  | ExceptionGroup: nested (2 sub-exceptions)
  | >> Multi line note
  | >> Because I am such
  | >> an important exception.
  | >> empty lines work too
  | 
  | (that was an empty line)
  | Goodbye!
  +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    |   File "z�, in exc
    |     raise ValueError(msg)
    | ValueError: bad value
    | the bad value
    | Goodbye bad value
    +---------------- 2 ----------------
    | Traceback (most recent call last):
    |   File "z�, in exc
    |     raise ValueError(msg)
    | ValueError: terrible value
    | the terrible value
    | Goodbye terrible value
    +------------------------------------
r�r�s&   r"�(test_exception_group_with_multiple_notes�DBaseExceptionReportingTests.test_exception_group_with_multiple_notes�s���	�*#�#+�*�H�T�5G�5G�4H�I#�$,�*�H�S�\�\�5P�5P�SU�5U�4V�W%�&.�J�h�s�|�|�7R�7R�UV�7V�6W�X%�&.�J�h�s�|�|�7R�7R�UV�7V�6W�XB�/C��<����%������*r$c
��QoQ[QUOQ[QUOO]*Q[QUOO]*Q0
oUO	U2oUOV22P!)c�j�[]*2g,9[9d
ogPo=MMLM49eP!th9h�r��r�rs r"rE�KBaseExceptionReportingTests.test_exception_group_wrapped_naked.<locals>.exc�s)��
���m�#��
�I�
���
��s��2�2�	�
2�2r�r�r�z�, in exc
  |     except* Exception as e:
  |         raise
  | ExceptionGroup:  (1 sub-exception)
  +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    |   File "ze, in exc
    |     raise Exception(42)
    | Exception: 42
    +------------------------------------
r�r�s&   r"�"test_exception_group_wrapped_naked�>BaseExceptionReportingTests.test_exception_group_wrapped_naked�s���	�#�#+�*�H�T�5G�5G�4H�I#�$,�*�H�S�\�\�5P�5P�ST�5T�4U�V%�&.�J�h�s�|�|�7R�7R�UV�7V�6W�XB�
C������%������*r$c��QoPoU2o]oUOOo[OV#VE2o[	2oVgmQ[QUQ0oUOU2o	QOU	OQ2T
t,tFDp�O2MJ	to
2o	UOV�2P!tto
h)c�.�[O2!r=�rDr�r�r$r"r��TBaseExceptionReportingTests.test_KeyboardInterrupt_at_first_line_of_frame.<locals>.fs���=�=�?�"r$r�r�z', in f
    def f():

KeyboardInterrupt
rm)r�r��types�
TracebackTyper�rur�r r�r1�rstriprr)r9r�rwr%�lastir"r&rErOr�r�s&          r"�-test_KeyboardInterrupt_at_first_line_of_frame�IBaseExceptionReportingTests.test_KeyboardInterrupt_at_first_line_of_frames���	#�����������*�*��
�
 �
 ���
?���!�����'�j����9*�+������%��������T�0B�C�0B�1�H�H�J�0B�C�D������*��Ds�B<r�)(r�r�r�r�r�r�r�r�rrr"r5r<r?rIrPrYr\r`rkrrr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrr�r�r�s@r"rr	s������"�*�*�9�9�A�=�M��>�0� ;�;�
?�;�('�.	6�I�2	*�+�,6�$7W�r7�.3�+�"
 �	#�L�+�*"+�H-+�^0+�d*+�XP+�d0+�d5+�n+�6+�+r$rc�(`�\sQsQsnQsQsUsP!)�PyExcReportingTestsi,c��UOU2oPO[O[	U2VO
22o[
Q29^tt^2o[O[	U2VO
2PPP2UOWO2U2U!)%fhK29h)rTr�)
r�r�rBrsr�rurrcrrrd)r9r��s�sios&&  r"r �PyExcReportingTests.get_report3s������q�!���G�G��&�&�t�A�w��?�?�C�
E��
�X�
&�
&�#��%�%�d�1�g�q�/�/�B�'���������+���'�
&�s�+B4�4C	�=C	r�)r�r�r�r�r r�r�r�s@r"rr,s�����r$rc�2`�\sQsQsn\Q2sQsUsP!)�CExcReportingTestsi=c���]QHGoUOU2o[Q29^tt^2oUU2PPP2UO	2!)%fhWO	2!9h)rr�r�)r�r�r�rrd)r9r�r�rs&&  r"r �CExcReportingTests.get_reportCsP��-����q�!��
�X�
&�
&�!��A��'��z�z�|��'�
&��z�z�|��s�	A
�
A,	�A,	r�)r�r�r�r�rr r�r�r�s@r"rr=s�������r$rc�p`�\sQsQsnQsQsQsQsQsQs	Qs
Q	sQ
sQs
QsQ
sQsQsUsP!)�
LimitTestsiLc��[Q2g)zLast raisedrrNs&r"�last_raises1�LimitTests.last_raises1Qs
���
�&�&r$c�(�UO2P!r=)rrNs&r"�last_raises2�LimitTests.last_raises2T������r$c�(�UO2P!r=)r rNs&r"�last_raises3�LimitTests.last_raises3Wr"r$c�(�UO2P!r=)r$rNs&r"�last_raises4�LimitTests.last_raises4Zr"r$c�(�UO2P!r=)r'rNs&r"�last_raises5�LimitTests.last_raises5]r"r$c�.�[O2!r=rrNs&r"�last_returns_frame1�LimitTests.last_returns_frame1`s���}�}��r$c�$�UO2!r=)r-rNs&r"�last_returns_frame2�LimitTests.last_returns_frame2c����'�'�)�)r$c�$�UO2!r=)r0rNs&r"�last_returns_frame3�LimitTests.last_returns_frame3fr2r$c�$�UO2!r=)r4rNs&r"�last_returns_frame4�LimitTests.last_returns_frame4ir2r$c�$�UO2!r=)r7rNs&r"�last_returns_frame5�LimitTests.last_returns_frame5lr2r$c	�``�RO2nU1QkoU1Qko[O[QQ29^tt^2U2oRO	[U2]2RO
U]Q5UQP2UU]dQ5UQ	PQ
2RO
UQQ5UQ*2UUQ	Q5UQ*[U2]*
]*
2RO
U]Q5,2[;UU2UQ
2][mRO
U2UQP2RO
U]Q5UQP2RO
UQQ5UQ*2][mRO
U2,2P[mRO
U2,2PPP2P!)%fhP!9h)c�6:�[OR1-U@!r=�rB�
extract_stack)�kwargsr%s,�r"�extract�.LimitTests.test_extract_stack.<locals>.extractqs����*�*�5�;�F�;�;r$c��:�ROUPUUPU2ROV]*PV]*P2RO[U2[U22P!r=)rrrs)r�rO�ignorer9s&&&�r"�assertEqualExcept�8LimitTests.test_extract_stack.<locals>.assertEqualExceptssZ������V�G�V�_�h�w��.?�@����V�1�H�I�.�����0C�D����S��[�#�h�-�8r$�tracebacklimitr���limit�NrN:N�dN�NrNrvi����i����r)r:rrmrD�
assertGreaterrsrrrG)r9rArE�nolimr%sf   @r"�test_extract_stack�LimitTests.test_extract_stackosz����(�(�*��	<�	9�
�
�
�s�$4�d�
;�
;��I�E����s�5�z�1�-����W�1�-�u�R�S�z�:��g�C�0�%���,��E����W�2�.��b�	�:��g�D�1�5��;��E�
�1��Q��O����W�1�-�r�2��"��g�i���5�!"�C�����W�Y��b�c�
�3����W�1�-�u�R�S�z�:����W�2�.��b�	�:�!"�C�����W�Y��+�!#�C�����W�Y��+�#<�
;�
;�
;�s�E5G�G	�G	c��`�UO2U1Qko[O[
QQ29^tt^2U2oUO
[U2]2UO
U]Q5UQ*2UO
U]
Q5U2UO
UQQ5UQP2UO
UQQ5U2UO
U]Q5,2[
;UO
U2U2][
mUO
U2UQ*2UO
U]Q5UQ*2UO
UQ	Q5UQ	P2][
mUO
U2,2P[
mUO
U2,2PPP2P![coSOnPo=CK�Po=hh9h)%fhP!9h)
Nc�6:�[OR1-U@!r=)rB�
extract_tb)r@r&s,�r"rA�+LimitTests.test_extract_tb.<locals>.extract�s����'�'��5�f�5�5r$rGr�rHrJrLrv���r)	r*r�rurrmrDrrrsrG)r9r�rArNr&s&   @r"�test_extract_tb�LimitTests.test_extract_tb�s����	!�����	6��
�
�s�$4�d�
;�
;��I�E����S��Z��-����W�1�-�u�R�y�9����W�2�.��6����W�2�.��b�c�
�;����W�3�/��7����W�1�-�r�2��"����W�Y��.�!"�C�����W�Y��b�	�2����W�1�-�u�R�y�9����W�2�.��b�c�
�;�!"�C�����W�Y��+�!#�C�����W�Y��+�#<�
;���	!����B��	!��
<�
;�
;�s/�F8�E0G�8	G�G�G�G�G.	�&G.	c��`�UO2U1Qko[O[QQ29^tt^2U2oUO[
U2]2UOU]Q5UQ*2UOU]
Q5U2UOUQQ5UQP2UOUQQ5U2UOU]Q5,2[;UOU2U2][mUOU2UQ*2UOU]Q5UQ*2UOUQ	Q5UQ	P2][mUOU2,2P[mUOU2,2PPP2P![coSnPo=CK�Po=hh9h)%fhP!9h)
Nc�<:�[OR1-U@]P!r�)rBrs)r@rEs,�r"rA�1LimitTests.test_format_exception.<locals>.extract�s ����-�-�c�<�V�<�Q�r�B�Br$rGr�rHrJrLrvrUr)r*r�rrmrDrrrsrG)r9r�rArNrEs&   @r"�test_format_exception� LimitTests.test_format_exception�s����	�����
	C��
�
�s�$4�d�
;�
;��I�E����S��Z��-����W�1�-�u�R�y�9����W�2�.��6����W�2�.��b�c�
�;����W�3�/��7����W�1�-�r�2��"����W�Y��.�!"�C�����W�Y��b�	�2����W�1�-�u�R�y�9����W�2�.��b�c�
�;�!"�C�����W�Y��+�!#�C�����W�Y��+�#<�
;���	��C��	��<�
;�
;�s/�F8�E0G�8	G�G�G�G�G$	�G$	r�)r�r�r�r�rr r$r'r*r-r0r4r7r:rOrVr[r�r�r�s@r"rrLsK����
'������*�*�*�*�,�8,�6,�,r$rc�.`�\sQsQsnQsQsQsUsP!)�MiscTracebackCasesi�c�``�U1QkoU1QknQnU2WOOOOoUO	[UO2]2[OU2UO	[UO2]2P![coSOoPo=K�Po=hh9h)c�:�R2P!r=r���middles�r"�outer�,MiscTracebackCases.test_clear.<locals>.outer�s����Hr$c�:�R2P!r=r���inners�r"rb�-MiscTracebackCases.test_clear.<locals>.middle�s����Gr$c��]o]]*P!r�r�)r<s r"rg�,MiscTracebackCases.test_clear.<locals>.inner�s���A�
�a�C�Cr$)	r�rurwr�rrrs�f_localsrB�clear_frames)r9rcr�r&�inner_framergrbs&    @@r"�
test_clear�MiscTracebackCases.test_clear�s����	�	�	�	!��G�
�j�j�(�(�0�0�9�9������[�1�1�2�A�6�	���r�"�	
����[�1�1�2�A�6���	!����B��	!�s�B'�'	C�1C�2C�Cc��QoU2oUOOoUOUQP[U]*QQ1[U]*QQ1,2UO[	U]*2]2P!)c�.�[O2!r=r>r�r$r"rA�6MiscTracebackCases.test_extract_stack.<locals>.extract�s���*�*�,�,r$rOzresult = extract()rAz return traceback.extract_stack()rv)r�r�rrr�rs)r9rAr�r"s&   r"rO�%MiscTracebackCases.test_extract_stack�sw��	-�����!�!�0�0���������
�v�a�x�!5�7K�L�
�v�a�x��,N�O�'�	�	
����V�A�Y���+r$r�)r�r�r�r�rnrOr�r�r�s@r"r^r^�s����
7�0	,�	,r$r^c�@`�\sQsQsnQsQsQsQsQsQs	Us
P!)�	TestFramei�c�L�[O2[OQ[22[O
Q]Q2oUO
UQ2UO
[U2Q2UO
U[O
Q]Q22UO
U[U22UO
[U2U2UOUO2UOU[22UO
U[2P!)r��dummy)r�r�rw�%"""Test cases for traceback module""")
�	linecache�
clearcache�	lazycache�globalsrB�FrameSummaryrr�tuple�assertIsNone�locals�assertNotEqual�objectr�r9r�s& r"�test_basics�TestFrame.test_basics�s����������C���+��"�"�3��7�3������F�	H�����q��F�	H�����I�2�2�3��7�C�D�����E�!�H�%�	
����q��1�%����!�(�(�#����A�v�x�(�����I�&r$c��[O2[OQ]QP
Q5oUO	PUO
2[OQ[22UO	QUO2P!)r�rw)�lookup_linerx)	ryrzrBr}rr�_linesr{r|rlr�s& r"�test_lazy_lines�TestFrame.test_lazy_lines
sb�������"�"�3��7��F������q�x�x�(����C���+����3�
�F�F�	r$c�p�[OQPQ2oUOUOP2P!)r�rw�rBr}rrrlr�s& r"�test_no_line�TestFrame.test_no_line	
s*���"�"�3��g�6���������&r$c�t�[OQ]QQQ5oUOQUO2P!�r�rwrl)rlr�r�s& r"�test_explicit_line�TestFrame.test_explicit_line

s,���"�"�3��7��@���������(r$c�r�[OQ]QQQ5oUO[U2]2P!r�)rBr}rrrsr�s& r"�test_len�TestFrame.test_len
s,���"�"�3��7��@������Q���#r$r�)r�r�r�r�r�r�r�r�r�r�r�r�s@r"ruru�s#����'�"�'�)�$�$r$ruc�`�\sQsQsnQsQsQsQsQsQs	Qs
Q	sQ
sQs
QsQ
sQsQsQsQsQsUsP!)�	TestStacki
c���Qo[[OP22U2q2UO[	U2[	U2*
]2UOUQ*U2P!)c�B�[[OP22!r=��listrB�
walk_stackr�r$r"�deeper�)TestStack.test_walk_stack.<locals>.deeper
����	�,�,�T�2�3�3r$:r�NN)r�rBr�rrrs)r9r��s1�s2s&   r"�test_walk_stack�TestStack.test_walk_stack
sQ��	4��i�*�*�4�0�1�6�8�B�����R��3�r�7�*�A�.�����B���$r$c�~�QoU2oU]*vq4UOUOOQ2P!)c�B�[[OP22!r=r�r�r$r"rg�2TestStack.test_walk_innermost_frame.<locals>.inner 
r�r$rg)rr�f_coder)r9rg�frames�innermost_framer!s&    r"�test_walk_innermost_frame�#TestStack.test_walk_innermost_frame
s6��	4����#�A�Y�������/�/�7�7��Ar$c���]]*[[OW22oUO[
U2]2P![coSOoPo=KXPo=hh9hr�)r�rur�rB�walk_tbrrrs)r9r�r&rs&   r"�test_walk_tb�TestStack.test_walk_tb&
sT��	!�
�a�C�
��"�"�2�&�'������Q���#���	!����B��	!�s�	A�	A)�A)�A$�$A)c��[OO[OP22oUO	U[O2P!r=)rB�StackSummaryrAr��assertIsInstance�r9rs& r"rO�TestStack.test_extract_stack.
s9���"�"�*�*�9�+?�+?��+E�F�����a��!7�!7�8r$c��[OO[OP2]Q5oUO	[U2]2P!�NrH)rBr�rAr�rrrsr�s& r"�test_extract_stack_limit�"TestStack.test_extract_stack_limit2
s<���"�"�*�*�9�+?�+?��+E�Q�*�O������Q���#r$c�l�[O2[OQ[22[	QQ2o[UPP2o[OO[U]1,2P	Q5o[O2UOU]*OQ2P!��/foo.pyr���lookup_lines�
import sys)ryrz�updatecacher|�	test_code�
test_framerBr�rAr rrrl�r9rr�rs&   r"�test_extract_stack_lookup_lines�)TestStack.test_extract_stack_lookup_lines6
s����������i���3��i��*���q�$��%���"�"�*�*�4�!�Q���>��*�M����������1����L�1r$c��[O2[QQ2o[UPP2o[O
O
[U]1,2P
Q5oUO-[O2[OQ[22UOU]*OQ2P!r�)
ryrzr�r�rBr�rAr rr�cacher�r|rlr�s&   r"�*test_extract_stackup_deferred_lookup_lines�4TestStack.test_extract_stackup_deferred_lookup_lines?
s��������i��*���q�$��%���"�"�*�*�4�!�Q���>��*�N������Y�_�_�-����i���3�����1����L�1r$c��[OOQ,2oUOQ,UO	22P!��foo.pyz*  File "foo.py", line 1, in fred
    line
�r�r��fredrl�rBr��	from_listrrr/r�s& r"�test_from_list�TestStack.test_from_listH
s9���"�"�,�,�.K�-L�M�����
;�<�
�H�H�J�	r$c���[OOQ,2oQU]$[OOU2oUOQ,UO	22P!)r�z*  File "foo.py", line 2, in fred
    line
r�)r�rr�rlr�)r9rr�s&  r"�test_from_list_edited_stack�%TestStack.test_from_list_edited_stackN
sX���"�"�,�,�.K�-L�M��,��!��
�
#�
#�
-�
-�a�
0�����
;�<��I�I�K�	r$c��[OOQ,2oUOQ,UO	22P!r�r�r�s& r"�test_format_smoke�TestStack.test_format_smokeV
s;��
�"�"�,�,�.K�-L�M�����
;�<�
�H�H�J�	r$c�0�[OQ[22[QQ2o[	U[2Q]-2o[
OO[U]1,2P	Q5oUOU]*OQQ-2P!)r�r��	something��capture_locals�1�ryr�r|r�r�rBr�rAr rrr�r�s&   r"�test_locals�TestStack.test_locals^
sw�����i���3��i��*���q�'�)�k�1�%5�6���"�"�*�*�4�!�Q���>�$�*�O������1����{�C�&8�9r$c�(�[OQ[22[QQ2o[	U[2Q]-2o[
OO[U]1,22oUOU]*OP2P!)r�r�r�r�r�s&   r"�test_no_locals�TestStack.test_no_localse
sm�����i���3��i��*���q�'�)�k�1�%5�6���"�"�*�*�4�!�Q���>�:������1����d�+r$c��QoU]]2oUOQ[UOO]*1*,UO	22P!)c�x�]o]o[OO[OP2P	]Q5!)r�)r�rI)rBr�rAr�)�k�vrrs&&  r"�
some_inner�0TestStack.test_format_locals.<locals>.some_innerm
s>���A��A��)�)�1�1��$�$�T�*�4�q�2�J�
Jr$zw  File "%s", line %d, in some_inner
    return traceback.StackSummary.extract(
    a = 1
    b = 2
    k = 3
    v = 4
)rrr�r�r�r/)r9r�rs&  r"�test_format_locals�TestStack.test_format_localsl
sZ��	J�

�q�!�������
'�
�(;�(;�(J�(J�Q�(N�O�P�
��x�x�z�	r$c��`�QQ[O2nU1QkoU2oUOUO2[QUO
O]*0,2P!)c�,`�\sQsQsnQQksQsUsP!)�>TestStack.test_custom_format_frame.<locals>.CustomStackSummaryi}
c�:�UOQUO0!)�:)r)r")r9�
frame_summaryr7s&&&r"�format_frame_summary�STestStack.test_custom_format_frame.<locals>.CustomStackSummary.format_frame_summary~
s!��'�0�0�1��=�3G�3G�2H�I�Ir$r�r2)r�r�r�r�r�r�r�r�s@r"�CustomStackSummaryr�}
s����
J�
Jr$r�c�T:�RO[OP2]Q5!r�)rArBr�)r�s�r"r��6TestStack.test_custom_format_frame.<locals>.some_inner�
s+���%�-�-��$�$�T�*�!�.�5�
5r$r�)rBr�rrr/r�r�r�)r9r�rr�s&  @r"�test_custom_format_frame�"TestStack.test_custom_format_frame|
s`���	J��!7�!7�	J�	5�
�L�����
�H�H�J��z��:�.�.�=�=��A�B�
C�D�	Fr$c�z`�QnU1QkoU2oQQ[O2oUO[OU22O	2oUO[
U2]2ROO]*oUOU]*Q[QUQ02P!)c��]]*P!r�r�r�r$r"r��)TestStack.test_dropping_frames.<locals>.f�
rr$c�b:�R2P![coSOtPo=!Po=hh9hr=)r�ru)r�r�s �r"r
�)TestStack.test_dropping_frames.<locals>.g�
s'���
'�����
'����&��
'�s�
�	.�.�)�.�.c�8``�\sQsQsnQU1QkksQsUsU9s!)�.TestStack.test_dropping_frames.<locals>.Skip_Gi�
c�J:�UOQ6XcP![RU_	U2!r	)r�r3r�)r9r�r7r:s&&&�r"r��CTestStack.test_dropping_frames.<locals>.Skip_G.format_frame_summary�
s$��� �%�%��,���w�3�M�B�Br$r�r2)r�r�r�r�r�r�r�r�r�s@@r"�Skip_Gr��
s����
C�
Cr$rrWr�z, in f
    1/0
)
rBr�rAr�r/rrrsr�r�r�)r9r
r&r�stack�lnor�s&     @r"�test_dropping_frames�TestStack.test_dropping_frames�
s����	�	'��S��	C�Y�+�+�	C�������b�!�#�#)�6�8�	�	
����U��Q�'��j�j�'�'�!�+������!�H��x�j����->�?�	
r$c	���QoUOQ2oU[Q2*oQoUO[[2[[Q29^tt^2oUO
U2PPP2[O[-2[[U[Q22P!)%fhKH9h[Cc&o[OOS2OoSO!S[O"2[$O&O(O+SQSO,Q59^tt^2oSO/[S2]2SO1SO3S]*2O52Q[Q0Q	S0,2SO7X#S,P2PPP2Po=P!)%fhPo=P!9hPo=hh9h)
zabcdef = 1 / 0 and 2.0z1 / 0z)# this line will be used during renderingr�rK�_should_show_carets)�wrapsrWz", line 1, in <module>rc)�indexrsr}rr
r�r�ryr�rKrMrrB�TracebackException�from_exceptionrr�r��unittest�mock�patchr�rrr�assertListEqualr�r��assert_called_with)	r9�	statement�colno�	end_colno�cached_liner`rEr�ffs	&        r"�test_summary_should_show_carets�)TestStack.test_summary_should_show_carets�
s���-�	�����(���C��L�(�	�B�������'�
�&�#�
�
�$��J�J�{�#�����f�b�)�	M����F�F�3�4��
��!�	M��,�,�;�;�C�@�F�F�A��!�!�!�Y�%;�%;�<����$�$�+�+�A�/D�23�2G�2G�,�I�I�LN�� � ��Q���+��$�$��*�*�1�Q�4�0�;�;�=�"�6�(�*@�A��{�m�,����%�%�e��
�t�L�I�I�I�I�I��	M�sV�B-�C�-B=	�6B=	�
G1�G1�BG,�A3G�G,�G)�G)�G,�)G,�,G1r�)r�r�r�r�r�r�r�rOr�r�r�r�r�r�r�r�r�r�rrr�r�r�s@r"r�r�
s^����%�B�$�9�$�2�2����:�,�� F�
�8!M�!Mr$r�c�4`�\sQsQsnU1QkQksQsUsP!)�Unrepresentablei�
c�":�U]6�cPgQRZ-!r)rJ)r/r�s"�r"r��%Unrepresentable.__repr__.__annotate__�
s���+�+�#�+r$c��[Q2g)rrrNs&r"r|�Unrepresentable.__repr__�
s���)�*�*r$r�r�r�s@r"rr�
s����+�+r$rc�(`�\sQsQsnQsQsUsP!)�FalseyExceptioni�
c��P
!r2r�rNs&r"�__bool__�FalseyException.__bool__�
���r$r��r�r�r�r�r!r�r�r�s@r"rr�
������r$rc�(`�\sQsQsnQsQsUsP!)�FalseyExceptionGroupi�
c��P
!r2r�rNs&r"r!�FalseyExceptionGroup.__bool__�
r#r$r�r$r�s@r"r'r'�
r%r$r'c�`�\sQsQsnQsQsQsQsQsQs	Qs
Q	sQ
sQs
QsQ
sQsQsQsQsQsQsQsQs\2Q2sQsQsUsP!)�TestTracebackExceptioni�
c��Ug[cioSo[OOS2o[OO[OSO22oPo=LPo=hh9hSOPSO2SOPSO2SOP
SO2SOXQO2SO[29^tt^2SO[S2SO 2PPP2L)%fhL9hSOX!O"2SO[%S2[%S22P!r=)r�rBr
rr�rAr�rurr�	__cause__�__context__�__suppress_context__r�assertWarns�DeprecationWarningr��exc_type�exc_type_strrJ)r9rE�expected_type_strr��exc_obj�expected_stacks&&&   r"�
do_test_smoke�$TestTracebackException.do_test_smoke�
s��	4��I���	4��G��.�.�=�=�a�@�C�&�3�3�;�;��!�!�!�/�/�2�4�N��	4��
	
����s�}�}�-�����s���/������ 8� 8�9�������3�
�
�
�0�
1�
1����T�'�]�C�L�L�9�2�
1�
1�
1�����*�,<�,<�=�����W��s�3�x�0s,��	A8�A8�AA3�3A8�&D6�6E	�?E	c�>�UO[]*2Q2P!)r�rA)r7rArNs&r"�test_smoke_builtin�)TestTracebackException.test_smoke_builtin�
s�����:�b�>�<�8r$c�v�QQ[2o[Q6XcQoLQoUOUQ2U2P!)c��\sQsQsQsP!)�ETestTracebackException.test_smoke_user_exception.<locals>.MyExceptioni�
r�r�r�r$r"�MyExceptionr>�
���r$r?rr>zYtest.test_traceback.TestTracebackException.test_smoke_user_exception.<locals>.MyExceptionzbad things happened)r�r�r7)r9r?rOs&  r"�test_smoke_user_exception�0TestTracebackException.test_smoke_user_exception�
s>��	�)�	��z�!�I�H�I�H����;�'<�=�x�Hr$c��QoU2UOoUOoUOPUO2UOPUO2UOP
UO2UOVVO2UO[ 29^tt^2UO[#W2UO$2PPP2UO[#W2O&UO(2UO[+U2[+U22P![c~oSoSOo[OO	[O
S2]P
P	Q5Sm[OOS]P
P	Q5Sm	Po=CK�Po=hh9h)%fhK�9h)c��]]*P!r�r�r�r$r"rG�7TestTracebackException.test_from_exception.<locals>.foo�
rr$)rIr�r�)r�rurBr�rAr�r6r
rrErrr-r.r/rr0r1r�r2r�r3rJ)r9rGr�r5r&r6rEs&      r"�test_from_exception�*TestTracebackException.test_from_exception�
sj��	�		E��E��,�,���h�h������s�}�}�-�����s���/������ 8� 8�9�������3�
�
�
�0�
1�
1����T�'�]�C�L�L�9�2�����g��/�/��1A�1A�B�����W��s�3�x�0��#�	E��G����B�"+�"8�"8�"@�"@��!�!�"�%�Q�U�#�#A�#%�D��!�3�3�B�B����t�C�E�D�H�H��
	E��2�
1�s0�D4�1&F?�4	F<�>F<�?A2F7�7F<�?G	�G	c��]]*[O2o[OO	U2o[Q2o[Q2Ug[O2o[OO	S2o[Q2o[Q2Sg9h[
cioSo[OO	S2o[OO[OSO22oPo=LPo=hh9h[O[
WP2oSOXqO2SOWSO2SOP	SO2SOXaO2SO[ 29^tt^2SO[#S2SO$2PPP2L)%fhL9hSO[#S2O&SO(2SO[+S2[+S22P!)r��cause�uh oh�rDr�rBr
rr�r�rAr�rurrr-r.r/rr0r1r�r2r�r3rJ)r9rE�exc_contextrIr�r5r6�	exc_causes&       r"r5�!TestTracebackException.test_causes���	4�
4��!���m�m�o��'�:�:�I�I�#�N��!�'�*����(�e�3���m�m�o��'�:�:�I�I�#�N��!�'�*����(�e�3���	4��G��.�.�=�=�a�@�C�&�3�3�;�;��!�!�!�/�/�2�4�N��	4��
�0�0��E�4�H�	�����M�M�2�����c�o�o�6�����s�7�7�8�������3�
�
�
�0�
1�
1����T�'�]�C�L�L�9�2�
1�
1�
1������g��/�/��1A�1A�B�����W��s�3�x�0sC�	A�AB'�AB$�$B'�'	D�1D�2AD�D�&G3�3H	�<H	c�P�]]*[O2o[OO	U2o[Q2g[O2o[OO	S2o[Q2g9h[
cioSo[OO	S2o[OO[OSO22oPo=LPo=hh9hSOPSO2SOWSO2SOP
SO2SOXQO2SO[ 29^tt^2SO[#S2SO$2PPP2L)%fhL9hSO[#S2O&SO(2SO[+S2[+S22P!)r�rJrK�r9rErLr�r5r6s&     r"r<�#TestTracebackException.test_context,s���	4�
)��!���m�m�o��'�:�:�I�I�#�N����(�(���m�m�o��'�:�:�I�I�#�N����(�(���	4��G��.�.�=�=�a�@�C�&�3�3�;�;��!�!�!�/�/�2�4�N��	4��
	
����s�}�}�-�����c�o�o�6������ 8� 8�9�������3�
�
�
�0�
1�
1����T�'�]�C�L�L�9�2�
1�
1�
1������g��/�/��1A�1A�B�����W��s�3�x�0sB�	A�?B�AB�B�	D�D�AC=�=D�&G�G	�	G	c
�"`�U1QknR2UOQ2[OO	W2o[UO
22oUO[U2[O22SO[STt,tFDoQU7fJUMJ	to2[O2Q*2UOQUP*2P![c
oSoPo=K�Po=hh9httoh)c�P:�]]*P![cR2P!h9hr�rrWs�r"r��9TestTracebackException.test_long_context_chain.<locals>.fCs%���
��!����$�
���
�s�	�	%�%�%zException not raisedzZeroDivisionError:g�?z0RecursionError: maximum recursion depth exceeded)r�r�rBr
rr�r/rMrsrDr�ru)r9r�r5�te�resr�r�s&     @r"�test_long_context_chain�.TestTracebackException.test_long_context_chainBs����	�	.�
�C�
�I�I�,�-�
�
)�
)�
8�
8��
A���2�9�9�;���	
���3�s�8�S�%:�%:�%<�=�����C�=�C�q�#7�1�#<���C�=�>��!�!�#�c�)�	+�	
�
�
�>��B��	I���	��G��	��>s)�C2�D�+D�2	D	�<D	�=D�D	c���]]*[Q2o[Q2Ug[Q2o[Q2Sg9h[ckoSo[OOSP	Q5o[OO[OSO22oPo=LPo=hh9h[O[WP2oSOXdO2SOPSO2SOP	SO2SOXTO2SO[29^tt^2SO[S2SO 2PPP2L)%fhL9hSO[S2O"SO$2SO['S2['S22P!)r�rIrJ��compact)r�rBr
rr�rAr�rurrr-r.r/rr0r1r�r2r�r3rJ)r9rIr�r5rEr6rMs&      r"�test_compact_with_cause�.TestTracebackException.test_compact_with_cause[ss��
	:�
4��!��!�'�*����(�e�3��"�'�*����(�e�3���	:��G��.�.�=�=�g�t�=�T�C�&�3�3�;�;��!�!�'�"7�"7�8�:�N��	:��
�0�0��E�4�H�	�����M�M�2�����s���/�����s�7�7�8�������3�
�
�
�0�
1�
1����T�'�]�C�L�L�9�2�
1�
1�
1������g��/�/��1A�1A�B�����W��s�3�x�0s:�	$�?�<�?�	B4�	B4�
A B/�/B4�&F
�
F	�F	c�T�]]*[O2o[OO	U2o[Q2g[O2o[OO	S2o[Q2g9h[
ckoSo[OO	SP	Q5o[OO[OSO22oPo=LPo=hh9hSOPSO2SOWSO2SOP
SO2SOXQO2SO[ 29^tt^2SO[#S2SO$2PPP2L)%fhL9hSO[#S2O&SO(2SO[+S2[+S22P!)r�rJrZrKrPs&     r"�test_compact_no_cause�,TestTracebackException.test_compact_no_causeqs���	:�
)��!���m�m�o��'�:�:�I�I�#�N����(�(���m�m�o��'�:�:�I�I�#�N����(�(���	:��G��.�.�=�=�a��=�N�C�&�3�3�;�;��!�!�'�"7�"7�8�:�N��	:��
	
����s�}�}�-�����c�o�o�6������ 8� 8�9�������3�
�
�
�0�
1�
1����T�'�]�C�L�L�9�2�
1�
1�
1������g��/�/��1A�1A�B�����W��s�3�x�0sB�	A�?B�AB�B�	D�D�A C?�?D�&G�G	�G	c�<�]]*[OOWP
Q5oUO	[
29^tt^2UO
UO2PPP2P![c
oSoPo=KvPo=hh9h)%fhP!9h)r�)�
save_exc_type)r�rBr
rr0r1rr2)r9r�rErUs&   r"�test_no_save_exc_type�,TestTracebackException.test_no_save_exc_type�s��	�
�a�C��
)�
)�
8�
8��E�9�+��
�
�
�0�
1�
1����b�k�k�*�2�
1���	��C��	��
2�
1�
1�s/�	A0�
B
�0	B�:B�;B�B�
B	�B	c��Po]]*[OU2o[OUO2o[O
O
U2oUO[OU2U2UO[OUO2U2P![c
oSoPo=K�Po=hh9hr=)r�rD�getrefcountrurBr
rrr)r9r5r��refcnt1�refcnt2rEs&     r"�/test_no_refs_to_exception_and_traceback_objects�FTestTracebackException.test_no_refs_to_exception_and_traceback_objects�s�����	�
�a�C��/�/�'�*���/�/�'�"7�"7�8���*�*�9�9�'�B���������1�7�;��������)>�)>�?��I���	��G��	�s�	B;�;	C�C�C
�
Cc�r�]]*UO	WW2UOV42UO
U[22UOU[2P![cKoSo[OOS2o[OOS2oPo=K�Po=hh9hr�)	r�rBr
r�assertIsNotrrr�r�r)r9r�r5rE�exc2s&    r"�test_comparison_basic�,TestTracebackException.test_comparison_basic�s���	H�
�a�C�
	
����d�#�����#����C���*�����i�(���	H��G��.�.�=�=�g�F�C��/�/�>�>�w�G�D��	H�s�	A!�!	B6�+B6�,AB1�1B6c�`�QnU1QkoU2[OOW2o[OOU]
Q5o[OOU]Q5oUO	VE2UOVF2[OOUP	Q5oUOVG2[OOUPQ5o[OOUPP	Q5o	UO	V�2[OOUQQ5o
[OOUQP	Q5oUOV�2P![coSoPo=CKrPo=hh9h)c�<�[Q2g[cgh9hr�r�r�r$r"�	raise_exc�KTestTracebackException.test_comparison_params_variations.<locals>.raise_exc�s$��
� ��-�-���
��
�s��	�c�:�]]qR2P!r�r�)rrorrs  �r"�raise_with_locals�STestTracebackException.test_comparison_params_variations.<locals>.raise_with_locals�s����a�q��Kr$rHr�)rIr�rv)r�rBr
rrrr�)
r9rur�r5rE�exc1rm�exc3�exc4�exc5�exc6�exc7rrs
&           @r"�!test_comparison_params_variations�8TestTracebackException.test_comparison_params_variations�sW���	�	�	����*�*�9�9�'�B���+�+�:�:�7�"�:�M���+�+�:�:�7�!�:�L������#����C�&��+�+�:�:�7�SW�:�X�����C�&��+�+�:�:�7�"�:�M���+�+�:�:�7�"�]a�:�b������$��+�+�:�:�7�"�:�M���+�+�:�:�7�"�]a�:�b�����D�'��-�	��G��	�s�E3�3	F�=F�>F�Fc��,o[]2FD
o]]*J	UO
U]*U]*2UO
[U]*O22[U]*O222P![c:oSO[OOS22Po=J�Po=hh9hr�)	r�r�rerBr
rrrr�r/)r9r�r!r�s&   r"�/test_comparison_equivalent_exceptions_are_equal�FTestTracebackException.test_comparison_equivalent_exceptions_are_equal�s������q��A�
L��!����
	
����a��$�q�'�*�����d�1�g�n�n�.�/��d�1�g�n�n�6F�1G�H���
L����I�8�8�G�G��J�K�K��
L�s�	B�	C�C�.C�Cc�j�QQ[2oUQ2oUQ2oV2gScSgScoSoPo=LPo=hh9hh9h[OOS2o[	SO22oSO
QS]*2SO
QS]*2P!)c�(`�\sQsQsnQsQsUsP!)�CTestTracebackException.test_unhashable.<locals>.UnhashableExceptioni�c��P	!r�r�r�s&&r"r��JTestTracebackException.test_unhashable.<locals>.UnhashableException.__eq__�r�r$r�r�r�s@r"r�r��r�r$r�r�r�zUnhashableException: ex2
zUnhashableException: ex1
)r�rBr
rr�r/ru)r9r�r�r�r�r5rE�	formatteds&       r"r��&TestTracebackException.test_unhashable�s���	�)�	�"�%�(��!�%�(��	����"�	�
��	��&�
����
��	��
�*�*�9�9�'�B�������&�	��
�
�2�I�a�L�A��
�
�2�I�a�L�As0�$�A�A�.�A�A�=�A�A�Ac�P`�U1QknR]
2UOWWO2P![cko[OOS]Q5o[OO[OSO2]Q5oPo=K�Po=hh9h)c�N:�U%cRU]*
2P!]]*P!r�r�)r.�recurses&�r"r��2TestTracebackException.test_limit.<locals>.recurse�s������!����!��r$rH)
r�rBr
rr�rAr�rurrr)r9r�rEr6r�s&   @r"�
test_limit�!TestTracebackException.test_limit�s����	�
	=��B�K�
	
�������3��	�	=��.�.�=�=�a�q�=�I�C�&�3�3�;�;��!�!�!�/�/�2�!�<�=�N��	=�s�0�	B%�B%�A B � B%c��[O2[Q2o[QQ2o[	UPP2o[U]P]2o[O[VP
Q5oUO[O-2[OQ[22UOUO]*OQ2P!)rJr�r�r�r�)ryrzr�r�r��test_tbrBr
rrr�r�r|rrl�r9r�rr�r&rEs&     r"�test_lookup_lines�(TestTracebackException.test_lookup_lines�s��������g����i��*���q�$��%��
�Q��4��
#���*�*�9�a�%�P��������"�-����i���3�������1��*�*�L�9r$c�v�[OQ[22[Q2o[	QQ2o[U[2Q]QQQ[
2-2o[U]P]2o[O[VP	Q5oUOUO]*OQQQQ	QQ
-2P!)r�rJr�r�r��string�unrepresentabler�r�z'string'z<local repr() failed>)
ryr�r|r�r�r�rr�rBr
rrrr�r�s&     r"r��"TestTracebackException.test_localss������i���3��g����i��*���q�'�)�k�1�g�x�IZ�\k�\m�%n�o��
�Q��4��
#���*�*��q�T�3������I�I�a�L���
�#�w�
�4E�G^�_�	ar$c�N�[OQ[22[Q2o[	QQ2o[U[2Q]-2o[
U]P]2o[O[V2oUOUO]*OP2P!)r�rJr�r�)ryr�r|r�r�r�r�rBr
rrrr�r�s&     r"r��%TestTracebackException.test_no_localss�����i���3��g����i��*���q�'�)�k�1�%5�6��
�Q��4��
#���*�*�9�a�<��������1��,�,�d�3r$c��[O[[Q2P2oUO[	UO22Q,2P!)�havenzException: haven
)rBr
r�rrr�r/)r9rEs& r"�test_traceback_header�,TestTracebackException.test_traceback_headers<���*�*�9�i��6H�$�O������c�j�j�l�+�.B�-C�Dr$c��Qo[OOU2P	Q5o[2oUO	UQ5UOUO
2OQ2QP,QN2P!)c�T�]oU]*P![c
oStPo=!Po=hh9h)�r)rr�s  r"r��,TestTracebackException.test_print.<locals>.f#s*���A�
��!�����
����
�s�	�	'�'�"�'�'r�r_rmrd)z    x/0rz
    x = 12z#ZeroDivisionError: division by zerorT)rBr
rrr�rrrdr1)r9r�rEr;s&   r"�
test_print�!TestTracebackException.test_print!sj��	��*�*�9�9�!�#�d�9�S������	�	�v�	������O�O��#�#�D�)�"�#�.�
�	r$c�j�[[g[c5oSO[[O
S22Po=LPo=hh9h]]*P![c[gh9h[c6oSO[[O
S22Po=P!Po=hh9hr=)rrgrur2rBrsrr�)r9r�s& r"�6test_dont_swallow_cause_or_context_of_falsey_exception�MTestTracebackException.test_dont_swallow_cause_or_context_of_falsey_exception4s���
	H�!�x�/���	H��M�M�-��)C�)C�A�)F�G�G��	H��	J�
&��!����$�
&�%�%�
&���	J��M�M�/�9�+E�+E�a�+H�I�I��	J�sI��	A
�A
�*A�A
�	A�	A/�'A/�/A2�2	B2�<B2�=*B-�-B2)rEr6)r�r�r�r�r7r:rArFr5r<rWr\r_rcrirnr}r�r�r�r�r�r�r�r	r�r�r�r�r�s@r"r+r+�
s�����1�"9�
I�1�21�01�,I�21�,1�,	+�J�
)�#(�JI�B�&4�	:�
a�4�E������$J�Jr$r+c�j``�\sQsQsnU1QksQsQsQsQsQs	Qs
Q	sQ
sQs
QsUsU9s!)
�&TestTracebackException_ExceptionGroupsiGc�P:�[RU_2UO2UmP!r=)r3r4�_get_exception_groupr�r8s&�r"r4�,TestTracebackException_ExceptionGroups.setUpHs���
��
���+�+�-��r$c���QoQoUOOUmUOOUmU2U]*2[QWW,2g[c
oSoPo=K)Po=hh9h[c
oSoPo=K:Po=hh9h[
c
oSoPo=LPo=hh9hS]2L[c
oSoPo=LPo=hh9h[QSW,2g[
c
oStPo=!Po=hh9h)c��]]*P!r�r�r�r$r"r��FTestTracebackException_ExceptionGroups._get_exception_group.<locals>.fMrr$c��[U2gr=r��r�s&r"r
�FTestTracebackException_ExceptionGroups._get_exception_group.<locals>.gPs���Q�-�r$r�r�)r�r��lno_f�lno_gr�r�r�)	r9r�r
r�rwrmrxryr�s	&        r"r��;TestTracebackException_ExceptionGroups._get_exception_groupLs���	�	 ��Z�Z�.�.��
��Z�Z�.�.��
�	�
���C���b�E�%�U�T�4�L�9�9��
!���D����!���D����"�
����
��
��"����
����
�� ���t��5�5���	��I��	�s��A�	A9�B�	A6�)A6�*A1�,B�1A6�6B�9	B�B�B�B�B�B�	B*�B*�B%� C�%B*�*C�.B7�6C�7	C�C�C	�C�	C�C�	C6�)C6�*C1�+C6�1C6c��UOo[O[U2VO2o[OOU2oUO
V#2UOV#2P!r=)r�rBr
r�rurrlrr)r9r��teg1�teg2s&   r"�!test_exception_group_construction�HTestTracebackException_ExceptionGroups.test_exception_group_constructionlsY��
�W�W���+�+�D��H�b�:J�:J�K���+�+�:�:�2�>������$�����$r$c��[OOUO2oPO	UO22O
Q2oQO
Q2oUOV#2P!)rTrmz'ExceptionGroup: eg2 (2 sub-exceptions)
�rBr
rr�r�rCr1rr�r9�tegr�rOs&   r"�*test_exception_group_format_exception_only�QTestTracebackException_ExceptionGroups.test_exception_group_format_exception_onlyss\���*�*�9�9�$�'�'�B���G�G�C�5�5�7�8�>�>�t�D�	�=�C�C�D�I������-r$c���[OOUO2oPO	UOP	Q52O
Q2o,QNoUOV#2P!)rTr�rm)z&ExceptionGroup: eg2 (2 sub-exceptions)z)   ExceptionGroup: eg1 (2 sub-exceptions)z)      ZeroDivisionError: division by zeroz      ValueError: 42z   ValueError: 24rTr�r�s&   r"�5test_exception_group_format_exception_onlyi_recursive�\TestTracebackException_ExceptionGroups.test_exception_group_format_exception_onlyi_recursivezsZ���*�*�9�9�$�'�'�B���G�G�C�5�5��5�F�G�M�M�d�S�	���	
����-r$c��[OOUO2oPO	UO22O
Q2oUOoUOo,QMQ[QU]*Q0MQMQMQMQ	MQ
[QU]*Q0MQMQMQ
MQMQ[QU]	*Q0MQMQMQ[QU]*Q0MQMQMQMQMQMQ[QU]
*Q0MQMQMQ[QU]*Q0MQMQMQMQMQMQ
[QU]*Q0MQMQ MQ
[QU]*Q0MQ!MQ"MQ#MPMoUOV%2P!)$rTrm�6  + Exception Group Traceback (most recent call last):z  |   File "r�z, in _get_exception_groupz1  |     raise ExceptionGroup("eg2", [exc3, exc4])z*  | ExceptionGroup: eg2 (2 sub-exceptions)�(  +-+---------------- 1 ----------------z8    | Exception Group Traceback (most recent call last):z    |   File "z3    |     raise ExceptionGroup("eg1", [exc1, exc2])z,    | ExceptionGroup: eg1 (2 sub-exceptions)�*    +-+---------------- 1 ----------------z*      | Traceback (most recent call last):z      |   File "z      |     f()z      |     ~^^r�z      |     1/0z      |     ~^~z+      | ZeroDivisionError: division by zero�*      +---------------- 2 ----------------z      |     g(42)z      |     ~^^^^rz      |     raise ValueError(v)z      | ValueError: 42�+      +------------------------------------�(    +---------------- 2 ----------------�(    | Traceback (most recent call last):z    |     g(24)z    |     ~^^^^z    |     raise ValueError(v)z    | ValueError: 24�)    +------------------------------------)rBr
rr�r�r/r1r�r�r�rr)r9r�r�r�r�rOs&     r"�test_exception_group_format�BTestTracebackException_ExceptionGroups.test_exception_group_format�s����*�*�9�9�$�'�'�B���G�G�C�J�J�L�)�/�/��5�	��
�
���
�
��%�L�%�"�8�*�H�U�2�X�J�>W�X�%�H�%�A�	%�
?�%�O�
%�%�X�J�h�u�R�x�j�@Y�Z�%�J�%�C�%�A�%�A�%�'�x�j���q��	�AZ�[�%�&�%�&�%�'�x�j���q��	��H�%� &�!%�"&�#%�$B�%%�&A�'%�(A�)%�*'�x�j���r��
�B[�\�+%�,(�-%�.(�/%�0'�x�j���q��	��H�1%�26�3%�4-�5%�6B�7%�8?�9%�:?�;%�<%�X�J�h�u�R�x�j�@Y�Z�=%�>&�?%�@&�A%�B%�X�J�h�u�Q�w�i�v�F�C%�D4�E%�F+�G%�H@�I%�J�K%��N	
����-r$c���,o,o[]2FDoUO[U22J	[]
2FDoUO[U22J	[oUQUQU2UQU2,2o[
OOU]Q5oPOUO22OQ2o,QNoUOVx2P!)rr�r�r�)�max_group_widthrm)z)  | ExceptionGroup: eg (2 sub-exceptions)r�z,    | ExceptionGroup: eg1 (3 sub-exceptions)r�z      | ValueError: 0r��      | ValueError: 1�,      +---------------- ... ----------------z      | and 1 more exceptionr�r�z-    | ExceptionGroup: eg2 (10 sub-exceptions)r�z      | TypeError: 0r�z      | TypeError: 1r�z      | and 8 more exceptionsr�rT)r�rerAr�r�rBr
rr�r/r1rr)	r9�excs1�excs2r<r�r�r�r�rOs	&        r"�test_max_group_width�;TestTracebackException_ExceptionGroups.test_max_group_width�s��������q��A��L�L��A��'���r��A��L�L��1��&����
��r�%��'��E�5�)9�:�
;���*�*�9�9�"�a�9�P���G�G�C�J�J�L�)�/�/��5�	���,	
����-r$c
�P�[Q2o[]2FD%o[Q[U'2U[U2,2oJ'	[O
O
U]Q5oPOUO22OQ2o,QNoUOVE2P!)r�rE)�max_group_depthrm)z*  | ExceptionGroup: exc (3 sub-exceptions)r�z    | ValueError: -2r�z,    | ExceptionGroup: exc (3 sub-exceptions)r�z      | ValueError: -1r�z"      | ... (max_group_depth is 2)z*      +---------------- 3 ----------------r�r�z(    +---------------- 3 ----------------z    | ValueError: 2r�rT)r�r�r�rArBr
rr�r/r1rr)r9rEr<r�r�rOs&     r"�test_max_group_depth�;TestTracebackException_ExceptionGroups.test_max_group_depth�s����
�#���q��A� ���Q�B���j��m�(L�M�C���*�*�9�9�#�q�9�Q���G�G�C�J�J�L�)�/�/��5�	���$	
����-r$c��UOg[c
oSoPo=LPo=hh9h[]2FDoSg[coSoPo=JPo=hh9h	[O
O
W2o[O
O
S2o[O
O
SQQ5o[O
O
S]Q5oSOX%2SOX%2SOX&2SOX'2SOS[22SOS[2P!)N�,rH)r�r�r�r�rBr
rrlrrr�r�r)r9r�rEr!r5rmrx�nes&       r"�test_comparison�6TestTracebackException_ExceptionGroups.test_comparison�s��	��'�'�M���	��C��	���q��A�
��	���
����
���
�*�*�9�9�'�B���+�+�:�:�7�C���+�+�:�:�7�#�:�N��
�
)�
)�
8�
8���
8�
J������#�����#�����#����C�$����C���*�����i�(s/��	&�&�!�&�;�	A�A�A�Ac��[Q[2[212g[cToPO	[
OS22oSOQS2SOQS2Po=LPo=hh9hQo[Q[2[S212g[cNo[
OS2oSO[OQS0SQ*2Po=P!Po=hh9h)�Gihz$+---------------- 1 ----------------z$+---------------- 2 ----------------�bool�Gahr�rv)
r'rgrDr�r�rBrsrurr�)r9�ee�str_excr�s&   r"�8test_dont_swallow_subexceptions_of_falsey_exceptiongroup�_TestTracebackException_ExceptionGroups.test_dont_swallow_subexceptions_of_falsey_exceptiongroups���
	K�&�u�x�z�9�;�.G�H�H���	K��g�g�i�8�8��<�=�G��M�M�@�'�J��M�M�@�'�J�J��	K����	M�&�u�x�z�?�3�;O�.P�Q�Q���	M��0�0��4�G��M�M�_�5�5�6�b���>����L�L��	M�s9�!�	A?�A?�A	A:�:A?�B$�$	C<�.C<�/AC7�7C<)r�r�r�)r�r�r�r�r4r�r�r�r�r�r�r�r�r�r�r�r�r�s@@r"r�r�GsA����.�*�@%�.�.�..�`$.�L.�8)�*M�Mr$r�c�0`�\sQsQsn\sQQksQsUsP!)�SuggestionFormattingTestMixini'c�b```�Rd
UUU1QkoLRoROUPPQ5oU]*!)Nc�.:�RORR2P!r=)�
attr_function)�	attr_name�objr9s���r"r��>SuggestionFormattingTestMixin.get_suggestion.<locals>.callable,s����"�"�3�	�2r$�r�r�)r�)r9r�r�r�r�sfff  r"�get_suggestion�,SuggestionFormattingTestMixin.get_suggestion*sB���� �
3�
3��H��)�)��"��*�
���A��r$r�r=)	r�r�r�r��getattrr�r�r�r�r�s@r"r�r�'s�����M�
�
r$r�c�R`�\sQsQsnQsQsQsQsQsQs	Qs
Q	sQ
sUs
P!)�BaseSuggestionTestsi7c	�<�QQ2oQQ2oQQ2oQQ2oQQ	2oQ
Q2oQQ
2oUQ1UQ1UQ1UQ1UQ1UQ1UQ1UQ11FD5vq�UOU2Q2o
UOQU	*U
2J7	P!)c�,�\sQsQsP9s9s9ssPsQs	P!)�:BaseSuggestionTests.test_suggestions.<locals>.Substitutioni9r�)
r�r�r�r��noise�
more_noiser�bc�blechr�r�r$r"�Substitutionr�9s��*.�.�E�.�J�.��R��Er$r�c�,�\sQsQsP9s9s9ssPsQs	P!)�9BaseSuggestionTests.test_suggestions.<locals>.Eliminationi=r�)
r�r�r�r�r�r�rr��blchr�r�r$r"�Eliminationr�=s��*.�.�E�.�J�.��R��Dr$rc�,�\sQsQsP9s9s9ssPsQs	P!)�6BaseSuggestionTests.test_suggestions.<locals>.AdditioniAr�)
r�r�r�r�r�r�rr��bluchinr�r�r$r"�AdditionrAs��*.�.�E�.�J�.��R��Gr$rc� �\sQsQsPsPsQsP!)�IBaseSuggestionTests.test_suggestions.<locals>.SubstitutionOverEliminationiEr�)r�r�r�r��blach�blucr�r�r$r"�SubstitutionOverEliminationrEs���E��Dr$r	c� �\sQsQsPsPsQsP!)�FBaseSuggestionTests.test_suggestions.<locals>.SubstitutionOverAdditioniIr�)r�r�r�r�r�bluchir�r�r$r"�SubstitutionOverAdditionrIs���E��Fr$r
c� �\sQsQsPsPsQsP!)�EBaseSuggestionTests.test_suggestions.<locals>.EliminationOverAdditioniMr�)r�r�r�r��blucharr�r�r$r"�EliminationOverAdditionrMs���F��Dr$rc�$�\sQsQsPsPsPsQsP!)�HBaseSuggestionTests.test_suggestions.<locals>.CaseChangeOverSubstitutioniQr�)r�r�r�r��Luch�fluch�BLuchr�r�r$r"�CaseChangeOverSubstitutionrQs���D��E��Er$rz
'.bluchin'z'.blech'z'.blch'z'.blach'z'.bluc'z'.BLuch'�bluchz
Did you mean �r�ru)r9r�rrr	r
rr�cls�
suggestionr�s&          r"�test_suggestions�$BaseSuggestionTests.test_suggestions8s���	�	�	�	�	�	�	�	�	�	�	�	�	�	��|�$�
�:�&�
�)�$�
�|�$�
(�*�5�
%�z�2�
$�i�0�
'��4�	 
�O�C��(�(����8�F��M�M�/�J�6��?�	 
r$c	�`�QQ2oUOQUOU2Q22UOQUOU2Q22UOQUOU2Q22UOnU1QkQ2oUOQUOU2Q	22UOQUOU2Q22UOQUOU2Q
22UOQUO[	U2O
Q	222UOQUO[	U2O
Q222UOQUO[	U2O
Q
222P!)c��\sQsQsPsQsP!)�;BaseSuggestionTests.test_suggestions_underscored.<locals>.Aidr��r�r�r�r�rr�r�r$r"r�r d����Er$r��'.bluch'r�_luch�_bluchc�4:`�\sQsQsnPsU1QksQsUsP!)�;BaseSuggestionTests.test_suggestions_underscored.<locals>.Bilc�:�RV2P!r=r�)r9r�r�s&&�r"r��BBaseSuggestionTests.test_suggestions_underscored.<locals>.B.methodns����d�)r$r�)r�r�r�r�r%r�r�r�)r�r�s@�r"r�r'ls�����F�
*�
*r$r�z	'._bluch'�_blachr)rur�r�rGrr�)r9r�r�r�s&  @r"�test_suggestions_underscored�0BaseSuggestionTests.test_suggestions_underscoredcsH���	�	�	
�
�
�j�$�"5�"5�a�c�7�"C�D��
�
�j�$�"5�"5�a�c�7�"C�D��
�
�j�$�"5�"5�a�c�8�"D�E��*�*�
�	*�	*�
	
�
�
�k�4�#6�#6�q�s�H�#E�F��
�
�k�4�#6�#6�q�s�G�#D�E�����d�&9�&9�!�#�w�&G�H��
�
�k�4�#6�#6�w�q�s�z�z�8�7T�#U�V��
�
�k�4�#6�#6�w�q�s�z�z�7�7S�#T�U��
�
�k�4�#6�#6�w�q�s�z�z�7�7S�#T�Ur$c��QQ[2oQQ2oQQV!Q5oUOQUOUQ22UOQUOU2Q22UOQ	UOUQ
22UOQ	UOU2Q
22UOQUOUQ22UOQUOU2Q22P!)c�(`�\sQsQsnQsQsUsP!)�CBaseSuggestionTests.test_suggestions_with_custom___dir__.<locals>.Mizc��PQ,!)N�foxr�)rs&r"�__dir__�KBaseSuggestionTests.test_suggestions_with_custom___dir__.<locals>.M.__dir__{s���e�}�$r$r��r�r�r�r�r2r�r�r�s@r"�Mr/zs����
%�
%r$r5c�(`�\sQsQsnQsQsUsP!)�DBaseSuggestionTests.test_suggestions_with_custom___dir__.<locals>.C0i~c��QQ,!).rr�rNs&r"r2�LBaseSuggestionTests.test_suggestions_with_custom___dir__.<locals>.C0.__dir__s���W�~�%r$r�r4r�s@r"�C0r7~s����
&�
&r$r:c��\sQsQsQsP!)�DBaseSuggestionTests.test_suggestions_with_custom___dir__.<locals>.C1i�r�r�r�r$r"�C1r<�r@r$r=)�	metaclassr#rz'.fox'rG)r�rGr�ru)r9r5r:r=s&   r"�$test_suggestions_with_custom___dir__�8BaseSuggestionTests.test_suggestions_with_custom___dir__ys���	%��	%�	&�	&�	��	�	
����T�%8�%8��W�%E�F��
�
�j�$�"5�"5�b�d�G�"D�E��
�
�h�� 3� 3�B�� >�?�����4�#6�#6�r�t�U�#C�D�����T�%8�%8��W�%E�F��
�
�j�$�"5�"5�b�d�G�"D�Er$c�n�QQ2oUOU2Q2oUOQU2P!)c��\sQsQsPsQsP!)�FBaseSuggestionTests.test_do_not_trigger_for_long_attributes.<locals>.Ai�r��r�r�r�r�r�r�r�r$r"r�rC�r"r$r��somethingverywrongr��r�rG�r9r�r�s&  r"�'test_do_not_trigger_for_long_attributes�;BaseSuggestionTests.test_do_not_trigger_for_long_attributes�s3��	�	��$�$�Q�S�*>�?������&�)r$c	��QQ2oQ	FD�oUOUQ59^tt^2UOU2U2oUOQU2UOQU2UOQU2UOQU2UOQU2UOQU2PPP2J�	P!)%fhJ�9h)
c�,�\sQsQsP9s9s9s9ssQs	P!)�HBaseSuggestionTests.test_do_not_trigger_for_small_names.<locals>.MyClassi�r�)
r�r�r�r��vvv�momr��id�pythor�r�r$r"�MyClassrL�s��)-�-�C�-�#�-��-�B�r$rQ�r�rFz'vvv�'mom'�'id'�'w'�'pytho'�rr��m�py�r!r�rG)r9rQr�r�s&   r"�#test_do_not_trigger_for_small_names�7BaseSuggestionTests.test_do_not_trigger_for_small_names�s���	.�	.�*�D����4��(�(��,�,�W�Y��=��� � ���8�� � ���0�� � ��&�1�� � ���0�� � ���/�� � ��F�3�)�(�*�(�(�(�s�BB>	�>C
�C
c��QQ2o[Q2FDo[UQU0P2J	UOU2Q2oUOQU2P!)c��\sQsQsPsQsP!)�@BaseSuggestionTests.test_do_not_trigger_for_big_dicts.<locals>.Ai�r�rDr�r$r"r�r_�r"r$r�r��index_rr�)r��setattrr�rG)r9r�r	r�s&   r"�!test_do_not_trigger_for_big_dicts�5BaseSuggestionTests.test_do_not_trigger_for_big_dicts�sU��	�	��4�[�E��A���w�'��.�!��$�$�Q�S�'�2������&�)r$c�n�QQ2oUOU2Q2oUOQU2P!)c�(`�\sQsQsnQsQsUsP!)�=BaseSuggestionTests.test_suggestions_for_same_name.<locals>.Ai�c�
�Q,!�r�r�rNs&r"r2�EBaseSuggestionTests.test_suggestions_for_same_name.<locals>.A.__dir__�s
���y� r$r�r4r�s@r"r�rf������
!�
!r$r�r�rFrFrGs&  r"�test_suggestions_for_same_name�2BaseSuggestionTests.test_suggestions_for_same_name�s2��	!�	!��$�$�Q�S�'�2�������0r$c��QQ2oUOU2Q2oUOQU2UOQU2QQ2oUOU2Q2oUOQU2UOQ	U2P!)
c� �\sQsQsPsPsQsP!)�>BaseSuggestionTests.test_suggestions_not_normalized.<locals>.Ai�r�)r�r�r�r��analization�finalizationr�r�r$r"r�ro�s
���K�/3�,r$r�� fiⁿₐˡᵢᶻₐᵗᵢᵒₙz'.finalization'rpc� �\sQsQsPsPsQsP!)�>BaseSuggestionTests.test_suggestions_not_normalized.<locals>.Bi�r�)r�r�r�r��attr_a�attr_μr�r�r$r"r�rt�s���F��Gr$r��attr_µu>'.attr_μ' ('attr_\u03bc') instead of '.attr_µ' ('attr_\xb5')ru�r�rurG)r9r�rr�s&   r"�test_suggestions_not_normalized�3BaseSuggestionTests.test_suggestions_not_normalized�s���	4�	4��(�(���.P�Q�
��
�
�'��4�����
�3�	�	��(�(���k�:�
��
�
�
5��	�	
����:�.r$r�)r�r�r�r�rr+r?rHr[rbrkryr�r�r�s@r"r�r�7s6����)@�VV�,F�,*�4�	*�1�/�/r$r�c�.`�\sQsQsnQsQsQsUsP!)�GetattrSuggestionTestsi�c���QQ2oUOU2Q2oUOQU2QQ2oUOU2Q2oUOQU2P!)c�,`�\sQsQsnPsQsQsUsP!)�:GetattrSuggestionTests.test_suggestions_no_args.<locals>.Ai�c��[2gr=��AttributeError�r9�attrs&&r"r��FGetattrSuggestionTests.test_suggestions_no_args.<locals>.A.__getattr__�s��$�&�&r$r��r�r�r�r�r�r�r�r�r�s@r"r�r�s�����E�
'�
'r$r�rr�c�,`�\sQsQsnPsQsQsUsP!)ri�c��[gr=r�r�s&&r"r�r��s��$�$r$r�r�r�s@r"r�r�s�����E�
%�
%r$rrGs&  r"�test_suggestions_no_args�/GetattrSuggestionTests.test_suggestions_no_args�s^��	'�	'�
�$�$�Q�S�'�2���
�
�g�v�&�	%�	%�
�$�$�Q�S�'�2���
�
�g�v�&r$c��`�QQ2nU1QkQ2oQQ2oQQ2oVU1FD,oUOU2Q2oUOQ	U2J.	P!)
c� �\sQsQsPsPsQsP!)�OGetattrSuggestionTests.test_suggestions_invalid_args.<locals>.NonStringifyClassi�r�)r�r�r�r�r�r|r�r�r$r"�NonStringifyClassr��s���G��Hr$r�c�4:`�\sQsQsnPsU1QksQsUsP!)�?GetattrSuggestionTests.test_suggestions_invalid_args.<locals>.Ai�c�&:�[R22gr=r�)r9r�r�s&&�r"r��KGetattrSuggestionTests.test_suggestions_invalid_args.<locals>.A.__getattr__�s���$�%6�%8�9�9r$r�r�)r�r�s@�r"r�r��s�����E�
:�
:r$r�c�,`�\sQsQsnPsQsQsUsP!)�?GetattrSuggestionTests.test_suggestions_invalid_args.<locals>.Bi�c��[Q]2g)rr�r�s&&r"r��KGetattrSuggestionTests.test_suggestions_invalid_args.<locals>.B.__getattr__�s��$�W�b�1�1r$r�r�r�s@r"r�r��s�����E�
2�
2r$r�c�,`�\sQsQsnPsQsQsUsP!)�?GetattrSuggestionTests.test_suggestions_invalid_args.<locals>.Ci�c��[]2g)r�r�r�s&&r"r��KGetattrSuggestionTests.test_suggestions_invalid_args.<locals>.C.__getattr__�s
��$�R�(�(r$r�r�r�s@r"r�r��s�����E�
)�
)r$r�rr�r)r9r�r�r�rr�r�s&     @r"�test_suggestions_invalid_args�4GetattrSuggestionTests.test_suggestions_invalid_args�s]���	�	�	:�	:�
	2�	2�
	)�	)�
�!�9�C��(�(����8�F��M�M�'�6�*�r$r�)r�r�r�r�r�r�r�r�r�s@r"r|r|�s����'�"+�+r$r|c��\sQsQs\sQsP!)�DelattrSuggestionTestsi�r�)r�r�r�r��delattrr�r�r�r$r"r�r��s���Mr$r�c�f`�\sQsQsnQsQsQsQsQsQs	Qs
Q	sQ
sQs
QsQ
sQs\Q2s\Q2s\Q2s\Q2s\Q2s\Q2sQsQsQsQsQsQsQsQsQs Qs!Qs"Q s#Q!s$Q"s%Q#s&Q$s'Q%s(Q&s)Q's*Q(s+Q)s,Q*s-Q+s.Q,s/Q-s0Q.s1Us2P!)/�SuggestionFormattingTestBasei�c��QQ2oUOU2Q2oUOQU2UOQU2P!)c�,`�\sQsQsn]sQsQsUsP!)�NSuggestionFormattingTestBase.test_attribute_error_with_failing_dict.<locals>.Ti�c��[Q2g)�oh no!r�rNs&r"r2�VSuggestionFormattingTestBase.test_attribute_error_with_failing_dict.<locals>.T.__dir__�s
��$�X�.�.r$r�)r�r�r�r�rr2r�r�r�s@r"�Tr��s�����E�
/�
/r$r��blichr�r�rF)r9r�r�s&  r"�&test_attribute_error_with_failing_dict�CSuggestionFormattingTestBase.test_attribute_error_with_failing_dict�sB��	/�	/�
�$�$�Q�S�'�2������&�)�����6�*r$c��QQ2oU2o]UO]$UOUQ2oUOQU2P!)c��\sQsQs]sQsP!)�WSuggestionFormattingTestBase.test_attribute_error_with_non_string_candidates.<locals>.Tir�r!r�r$r"r�r�����Er$r�r�r)�__dict__r�ru)r9r��instancer�s&   r"�/test_attribute_error_with_non_string_candidates�LSuggestionFormattingTestBase.test_attribute_error_with_non_string_candidatessE��	�	��3�� ����!���$�$�X�w�7���
�
�g�v�&r$c�h�QoUOUPPQ5oUOQUP*2P!)c��[]]Q5g)r�)r�r�r�r�r$r"�#raise_attribute_error_with_bad_name�lSuggestionFormattingTestBase.test_attribute_error_with_bad_name.<locals>.raise_attribute_error_with_bad_names�� �b�b�1�1r$r�rJ�r�rG�r9r�r�s&  r"�"test_attribute_error_with_bad_name�?SuggestionFormattingTestBase.test_attribute_error_with_bad_names<��	2��)�)�/�R�4�*�
��	
����l�2�.�/r$c�`�QQ2nU1QkQ2oUOU2Q2oUOQU2UOQU2P!)c��\sQsQs]sQsP!)�RSuggestionFormattingTestBase.test_attribute_error_inside_nested_getattr.<locals>.Air�r!r�r$r"r�r�r�r$r�c�0:`�\sQsQsnU1QksQsUsP!)�RSuggestionFormattingTestBase.test_attribute_error_inside_nested_getattr.<locals>.Bic�,:�R2oUO!r=)r�)r9r�rr�s&& �r"�__getattribute__�cSuggestionFormattingTestBase.test_attribute_error_inside_nested_getattr.<locals>.B.__getattribute__s����C���w�w�r$r�)r�r�r�r�r�r�r�)r�r�s@�r"r�r�s����
�
r$r�r�rFrr)r9r�r�r�s&  @r"�*test_attribute_error_inside_nested_getattr�GSuggestionFormattingTestBase.test_attribute_error_inside_nested_getattrsI���	�	�	�	�
�$�$�Q�S�+�6���
�
�n�f�-��
�
�g�v�&r$c��`�QQ2nU1QkQ2oUOU2Q2oUOQU2UOU2Q2oUOQU2P!)c�(`�\sQsQsnQsQsUsP!)�USuggestionFormattingTestBase.test_getattr_nested_attribute_suggestions.<locals>.Inneri&c�$�]*UmQUmP!)r��test)rF�datarNs&r"�__init__�^SuggestionFormattingTestBase.test_getattr_nested_attribute_suggestions.<locals>.Inner.__init__'s����
�"��	r$)r�rF�r�r�r�r�r�r�r�r�s@r"�Innerr�&s����
#�
#r$r�c�0:`�\sQsQsnU1QksQsUsP!)�USuggestionFormattingTestBase.test_getattr_nested_attribute_suggestions.<locals>.Outeri+c�":�R2UmP!r=rf�r9r�s&�r"r��^SuggestionFormattingTestBase.test_getattr_nested_attribute_suggestions.<locals>.Outer.__init__,����"�W��
r$rfr��r�r�s@�r"�Outerr�+�����
%�
%r$r�rFz/Did you mean '.inner.value' instead of '.value'r�z-Did you mean '.inner.data' instead of '.data'r�r9r�r�r�s&  @r"�)test_getattr_nested_attribute_suggestions�FSuggestionFormattingTestBase.test_getattr_nested_attribute_suggestions$sa���	#�	#�
	%�	%�
�$�$�U�W�g�6���
�
�G��P��$�$�U�W�f�5���
�
�E�v�Nr$c�`�QQ2nU1QkQ2oUOU2Q2oUOQU2UOQU2P!)c�(`�\sQsQsnQsQsUsP!)�ZSuggestionFormattingTestBase.test_getattr_nested_prioritizes_direct_matches.<locals>.Inneri9c��]*UmP!rr�rNs&r"r��cSuggestionFormattingTestBase.test_getattr_nested_prioritizes_direct_matches.<locals>.Inner.__init__:s	����r$r�r�r�s@r"r�r�9s����
�
r$r�c�0:`�\sQsQsnU1QksQsUsP!)�ZSuggestionFormattingTestBase.test_getattr_nested_prioritizes_direct_matches.<locals>.Outeri=c�0:�R2Um]dUmP!�rK)rg�fooor�s&�r"r��cSuggestionFormattingTestBase.test_getattr_nested_prioritizes_direct_matches.<locals>.Outer.__init__>s���"�W��
���	r$)r�rgr�r�s@�r"r�r�=s����
 �
 r$r�rGzDid you mean '.fooo'z	inner.foorxr�s&  @r"�.test_getattr_nested_prioritizes_direct_matches�KSuggestionFormattingTestBase.test_getattr_nested_prioritizes_direct_matches7sL���	�	�	 �	 ��$�$�U�W�e�4���
�
�,�f�5�����f�-r$c�`�QQ2nU1QkQ2oUOU2Q2oUOQU2P!)c�2`�\sQsQsn\Q2sQsUsP!)�MSuggestionFormattingTestBase.test_getattr_nested_with_property.<locals>.InneriIc��[!r=)�missing_namerNs&r"�computed�VSuggestionFormattingTestBase.test_getattr_nested_with_property.<locals>.Inner.computedJs��#�#r$r�)r�r�r�r��propertyr�r�r�r�s@r"r�r�Is����
�
$��
$r$r�c�0:`�\sQsQsnU1QksQsUsP!)�MSuggestionFormattingTestBase.test_getattr_nested_with_property.<locals>.OuteriNc�":�R2UmP!r=rfr�s&�r"r��VSuggestionFormattingTestBase.test_getattr_nested_with_property.<locals>.Outer.__init__Or�r$rfr�r�s@�r"r�r�Nr�r$r�r�z5Did you mean '.inner.computed' instead of '.computed'rr�s&  @r"�!test_getattr_nested_with_property�>SuggestionFormattingTestBase.test_getattr_nested_with_propertyGs?���	$�	$�
	%�	%��$�$�U�W�j�9���
�
�C��	
r$c�``�QQ2nU1QkQ2nU1QkQ2oUOU2Q2oUOQU2P!)c�(`�\sQsQsnQsQsUsP!)�]SuggestionFormattingTestBase.test_getattr_nested_no_suggestion_for_deep_nesting.<locals>.DeepiZc��]*UmP!r�rFrNs&r"r��fSuggestionFormattingTestBase.test_getattr_nested_no_suggestion_for_deep_nesting.<locals>.Deep.__init__[s	����
r$r�r�r�s@r"�Deepr�Zr�r$r�c�0:`�\sQsQsnU1QksQsUsP!)�_SuggestionFormattingTestBase.test_getattr_nested_no_suggestion_for_deep_nesting.<locals>.Middlei^c�":�R2UmP!r=��deep)r9r�s&�r"r��hSuggestionFormattingTestBase.test_getattr_nested_no_suggestion_for_deep_nesting.<locals>.Middle.__init___s��� �F��	r$rr�)r�r�s@�r"�Middler�^s����
#�
#r$rc�0:`�\sQsQsnU1QksQsUsP!)�^SuggestionFormattingTestBase.test_getattr_nested_no_suggestion_for_deep_nesting.<locals>.Outeribc�":�R2UmP!r=ra)r9rs&�r"r��gSuggestionFormattingTestBase.test_getattr_nested_no_suggestion_for_deep_nesting.<locals>.Outer.__init__cs���$�h��r$rar�)r�rs@�r"r�rbs����
'�
'r$r�rFrFrF)r9r�r�r�rs&  @@r"�2test_getattr_nested_no_suggestion_for_deep_nesting�OSuggestionFormattingTestBase.test_getattr_nested_no_suggestion_for_deep_nestingXsG���	 �	 �	#�	#�	'�	'�
�$�$�U�W�g�6�������0r$c�`�QQ2nU1QkQ2oUOU2Q2oUOQU2P!)c�(`�\sQsQsnQsQsUsP!)�ZSuggestionFormattingTestBase.test_getattr_nested_ignores_private_attributes.<locals>.Innerilc��]*UmP!r��public_valuerNs&r"r��cSuggestionFormattingTestBase.test_getattr_nested_ignores_private_attributes.<locals>.Inner.__init__m�
��$&��!r$rr�r�s@r"r�r
l�����
'�
'r$r�c�0:`�\sQsQsnU1QksQsUsP!)�ZSuggestionFormattingTestBase.test_getattr_nested_ignores_private_attributes.<locals>.Outeripc�":�R2UmP!r=��_private_innerr�s&�r"r��cSuggestionFormattingTestBase.test_getattr_nested_ignores_private_attributes.<locals>.Outer.__init__qs
���&+�g��#r$rr�r�s@�r"r�rps����
.�
.r$r�rrFrFr�s&  @r"�.test_getattr_nested_ignores_private_attributes�KSuggestionFormattingTestBase.test_getattr_nested_ignores_private_attributesjs=���	'�	'�	.�	.�
�$�$�U�W�n�=�������0r$c�X`�QQ2nU1QkQ2oU2o[[U22Tt,tFDp3OQ2%cJUMJ	ooUOQ2oUO	U]Q2UOUQ2oUO
QU2P!ttoh)	c�(`�\sQsQsnQsQsUsP!)�WSuggestionFormattingTestBase.test_getattr_nested_limits_attribute_checks.<locals>.Innerizc��]*UmP!r��target_valuerNs&r"r��`SuggestionFormattingTestBase.test_getattr_nested_limits_attribute_checks.<locals>.Inner.__init__{rr$r r�r�s@r"r�rzrr$r�c�0:`�\sQsQsnU1QksQsUsP!)�WSuggestionFormattingTestBase.test_getattr_nested_limits_attribute_checks.<locals>.Outeri~c�j:�[]2FDo[UQUQ
0U2J	R2UmP!)��attr_�02d)r�rarg)r9r<r�s& �r"r��`SuggestionFormattingTestBase.test_getattr_nested_limits_attribute_checks.<locals>.Outer.__init__s0����r��A��D�E�!�C��/�1�5�#�#�W��
r$rfr�r�s@�r"r�r$~s����
%�
%r$r�r!rgz6inner should be after position 20 in sorted attributesr!zinner.target_value)�sorted�dirr$r	rMr�rG)r9r�r�r�attrs�inner_positionr�r�s&      @r"�+test_getattr_nested_limits_attribute_checks�HSuggestionFormattingTestBase.test_getattr_nested_limits_attribute_checksxs����	'�	'�	%�	%��g��"�3�s�8�,�F�,�q�L�L��4E���,��F����W�-�����>�2�/g�h��$�$�S�.�9�����-�v�6��
Gs�B'�B'c�```�QQ2nQQ2nQQ2nUUU1QkQ2oUOU2Q2oUOQ	U2UOUOQ
2]2P!)c�(`�\sQsQsnQsQsUsP!)�YSuggestionFormattingTestBase.test_getattr_nested_returns_first_match_only.<locals>.Inner1i�c��]UmP!r�r�rNs&r"r��bSuggestionFormattingTestBase.test_getattr_nested_returns_first_match_only.<locals>.Inner1.__init__��	����
r$r�r�r�s@r"�Inner1r2������
�
r$r6c�(`�\sQsQsnQsQsUsP!)�YSuggestionFormattingTestBase.test_getattr_nested_returns_first_match_only.<locals>.Inner2i�c��]UmP!r�r�rNs&r"r��bSuggestionFormattingTestBase.test_getattr_nested_returns_first_match_only.<locals>.Inner2.__init__�r5r$r�r�r�s@r"�Inner2r9�r7r$r<c�(`�\sQsQsnQsQsUsP!)�YSuggestionFormattingTestBase.test_getattr_nested_returns_first_match_only.<locals>.Inner3i�c��]UmP!�rr�rNs&r"r��bSuggestionFormattingTestBase.test_getattr_nested_returns_first_match_only.<locals>.Inner3.__init__�r5r$r�r�r�s@r"�Inner3r>�r7r$rBc�4:`�\sQsQsnUUU1QksQsUsP!)�XSuggestionFormattingTestBase.test_getattr_nested_returns_first_match_only.<locals>.Outeri�c�R:�R2UmR2UmR2UmP!r=��a_inner�b_inner�c_inner)r9r6r<rBs&���r"r��aSuggestionFormattingTestBase.test_getattr_nested_returns_first_match_only.<locals>.Outer.__init__�s���%�x���%�x���%�x��r$rFr�)r�r6r<rBs@���r"r�rD�s����
(�
(r$r�rFz'.a_inner.value'rF)r�rurrrw)r9r�r�r6r<rBs&  @@@r"�,test_getattr_nested_returns_first_match_only�ISuggestionFormattingTestBase.test_getattr_nested_returns_first_match_only�si���	�	�	�	�	�	�	(�	(��$�$�U�W�g�6���
�
�(�&�1�������n�5�q�9r$c�``�QQ2nQQ2nUU1QkQ2oUOU2Q2oUOQU2P!)c�8`�\sQsQsn\Q2sQsQsUsP!)�oSuggestionFormattingTestBase.test_getattr_nested_handles_attribute_access_exceptions.<locals>.ExplodingPropertyi�c��[Q2g)z#BOOM! This property always explodesr9rNs&r"�exploding_attr�~SuggestionFormattingTestBase.test_getattr_nested_handles_attribute_access_exceptions.<locals>.ExplodingProperty.exploding_attr�s��"�#H�I�Ir$c��[Q2g)zrepr also explodesr9rNs&r"r|�xSuggestionFormattingTestBase.test_getattr_nested_handles_attribute_access_exceptions.<locals>.ExplodingProperty.__repr__�s��"�#7�8�8r$r�)	r�r�r�r�r�rQr|r�r�r�s@r"�ExplodingPropertyrO�s#����
�
J��
J�
9�
9r$rUc�(`�\sQsQsnQsQsUsP!)�gSuggestionFormattingTestBase.test_getattr_nested_handles_attribute_access_exceptions.<locals>.SafeInneri�c��]*UmP!r��targetrNs&r"r��pSuggestionFormattingTestBase.test_getattr_nested_handles_attribute_access_exceptions.<locals>.SafeInner.__init__�s	�� ��r$rYr�r�s@r"�	SafeInnerrW�rjr$r\c�2:`�\sQsQsnUU1QksQsUsP!)�cSuggestionFormattingTestBase.test_getattr_nested_handles_attribute_access_exceptions.<locals>.Outeri�c�::�R2UmR2UmP!r=��exploder�
safe_inner)r9rUr\s&��r"r��lSuggestionFormattingTestBase.test_getattr_nested_handles_attribute_access_exceptions.<locals>.Outer.__init__�s��� 1� 3��
�"+�+��r$r`r�)r�rUr\s@��r"r�r^�s����
.�
.r$r�rZz'.safe_inner.target'r)r9r�r�rUr\s&  @@r"�7test_getattr_nested_handles_attribute_access_exceptions�TSuggestionFormattingTestBase.test_getattr_nested_handles_attribute_access_exceptions�sF���	9�	9�	!�	!�	.�	.��$�$�U�W�h�7���
�
�,�f�5r$c�``�QQ2nQQ2nUU1QkQ2oUOU2Q2oUOQU2P!)c�(`�\sQsQsnQsQsUsP!)�`SuggestionFormattingTestBase.test_getattr_nested_handles_hasattr_exceptions.<locals>.WeirdObjecti�c�D�UQ6Xc[Q2g[QU02g)rZz Can't check for target attributez
No attribute )r:r�r�s&&r"r��lSuggestionFormattingTestBase.test_getattr_nested_handles_hasattr_exceptions.<locals>.WeirdObject.__getattr__�s(���8�#�&�'I�J�J�$�}�T�F�%;�<�<r$r�)r�r�r�r�r�r�r�r�s@r"�WeirdObjectrh�s����
=�
=r$rkc�(`�\sQsQsnQsQsUsP!)�`SuggestionFormattingTestBase.test_getattr_nested_handles_hasattr_exceptions.<locals>.NormalInneri�c��]dUmP!r�rYrNs&r"r��iSuggestionFormattingTestBase.test_getattr_nested_handles_hasattr_exceptions.<locals>.NormalInner.__init__�s	��!��r$rYr�r�s@r"�NormalInnerrm�s����
"�
"r$rpc�2:`�\sQsQsnUU1QksQsUsP!)�ZSuggestionFormattingTestBase.test_getattr_nested_handles_hasattr_exceptions.<locals>.Outeri�c�::�R2UmR2UmP!r=)�weird�normal)r9rprks&��r"r��cSuggestionFormattingTestBase.test_getattr_nested_handles_hasattr_exceptions.<locals>.Outer.__init__�s���(�]��
�)�m��r$)rurtr�)r�rprks@��r"r�rr�s����
,�
,r$r�rZz'.normal.target'r)r9r�r�rprks&  @@r"�.test_getattr_nested_handles_hasattr_exceptions�KSuggestionFormattingTestBase.test_getattr_nested_handles_hasattr_exceptions�sF���	=�	=�	"�	"�	,�	,��$�$�U�W�h�7���
�
�(�&�1r$c
���[QQ1[QQ1[QQ1[QQ1[QQ1[Q	Q
1[QQ1[Q
Q1[QQ1[QQ1[QQ1,oSFDbvq#oUOUOUQ59^tt^2U2oUOVS2oUO
UQUQ02PPP2Jd	[QQ1[QQ1[QQ1,oSFDRvq#oUOV#Q59^tt^2U2oUOVS2oUO
Vg2PPP2JT	P!)%fhJ�9h)%fhJ}9h)�pushre�concat�extend�addAll�toUpperCase�upper�toLowerCase�lower�	trimStartr��trimEndr�keySet�keys�entrySet�items�entries�putAll�update�r�r�zDid you mean '.z'?�containszUse 'x in list'.rh�#Did you mean to use a 'set' object?�putz
Use d[k] = v.)r�rJ�dictr!r�r�r7)r9�cases�	test_typer��	hint_attrr�r�rOs&       r"�test_cross_language�0SuggestionFormattingTestBase.test_cross_language�sm���6�8�$�
�8�X�&�
�8�X�&�
�-��)�
�-��)�
�+�x�(�
�)�X�&�
�8�V�$�
�:�w�'�
�9�g�&�
�8�X�&�

��+0�&�I�Y����9�#5�#5�D��A�A��k���,�,�S�7���#�#�F�o�i�[��,K�L�B�A�+0��:�1�2�
�5�?�@�
�5�/�*�	
��*/�%�I�X����9��8�8��k���,�,�S�7���#�#�F�5�9�8�*/�B�A�A��9�8�8�s$�
/D:	�*E	�:E
�E
�E
�E
c�P�UOPQ2oUOQU2P!)rT�trimrtr�r9r�s& r"�(test_cross_language_levenshtein_fallback�ESuggestionFormattingTestBase.test_cross_language_levenshtein_fallback�s$���$�$�R��0���
�
�g�v�&r$c�P�UO,Q2oUOQU2P!)�completely_unknown_methodrFrFr�s& r"�,test_cross_language_no_hint_for_unknown_attr�ISuggestionFormattingTestBase.test_cross_language_no_hint_for_unknown_attrs%���$�$�R�)D�E�������0r$c���QQ[2oUOU2Q2oUOUQ2QQ[2oUOU2Q2oUOUQ2P!)c��\sQsQsQsP!)�USuggestionFormattingTestBase.test_cross_language_works_for_subclasses.<locals>.MyListi	r�r�r�r$r"�MyListr�	r@r$r�rzzDid you mean '.append'?c��\sQsQsQsP!)�USuggestionFormattingTestBase.test_cross_language_works_for_subclasses.<locals>.MyDictir�r�r�r$r"�MyDictr�r@r$r�r�zDid you mean '.keys'?)r�r�r7r�)r9r�r�r�s&   r"�(test_cross_language_works_for_subclasses�ESuggestionFormattingTestBase.test_cross_language_works_for_subclassessd��	�T�	��$�$�V�X�v�6�����F�$=�>�	�T�	��$�$�V�X�x�8�����F�$;�<r$c��[QQ1[QQ1[QQ1[QQ1[QQ1[QQ1[QQ1[QQ1[QQ	1,	oSFD]vq#oUOUOUQ
59^tt^2U2oUOVS2oUO
Vd2PPP2J_	P!)%fhJt9h)rez$Did you mean to use a 'list' object?r|�insert�removerhr��discardr�z$Did you mean to use a 'dict' object?r�)r~�	frozenset�
frozendictr!r�r�r7)r9r�r�r�rOr�r�s&      r"�(test_cross_language_mutable_on_immutable�ESuggestionFormattingTestBase.test_cross_language_mutable_on_immutables����H�D�E�
�H�D�E�
�H�D�E�
�H�D�E�
��D�E�
�	�#H�I�
��"G�H�
��"G�H�
��#I�J�

��*/�%�I�X����9�#5�#5�D��A�A��k���,�,�S�7���#�#�F�5�B�A�*/�A�A�A�s�:*B2	�2C
�;C
c	��,QNoSFD\oUOUQ59^tt^2UOQU2oUOQU2UOQU2PPP2J^	P!)%fhJs9h)�__or__)r�g�?z'int'zBitwise operators)r��__and__�__xor__�
__lshift__�
__rshift__)r!r�ru)r9r�r�r�s&   r"�!test_cross_language_float_bitwise�>SuggestionFormattingTestBase.test_cross_language_float_bitwise'sf��M���D����4��(�(��,�,�S�$�7���
�
�g�v�.��
�
�1�6�:�)�(��(�(�(�s�7A+	�+A<
�4A<
c���[[O22oUO[O
U2[OO[U22UO[OO2PO[O[O]Q52oV#Q**oUO!U2U!)rT)r�z.py)rr8�mkdtempr}�shutil�rmtreerD�pathrerJ�popr��random�choicesr��
ascii_letters�
write_text)r9r�tmpdir�mod_name�modules&&   r"�make_module�(SuggestionFormattingTestBase.make_module1s����h�&�&�(�)������
�
�v�.�������F��$���������%��7�7�6�>�>�&�*>�*>�"�E�F���e�+�,�����$���r$c�```�ROU2nUUU1QkoRO[R2ROUPPQ5oU]*!)c�:�[QRQR02P![c	oSPgPo=h[c)oROQ[	S202Po=P!Po=hh9h)zfrom z import zExpected ImportError but got )rKr�r�r�r�)r��modnamer�r9s ���r"r��ISuggestionFormattingTestBase.get_import_from_suggestion.<locals>.callableAs\���
E��u�W�I�X�d�V�4�5���
"��T�!���
E��	�	�9�$�q�'��C�D�D��
E�s'��	A�A�%�A�A�A�Ar�)r�r}rr�)r9rr�r�r�r�sf&f  @r"�get_import_from_suggestion�7SuggestionFormattingTestBase.get_import_from_suggestion>sQ����"�"�4�(��	E�	
�����(��)�)��"��*�
���A��r$c	���[OQ2o[OQ2o[OQ2o[OQ2o[OQ2o[OQ2o[OQ2oUQ1UQ1UQ	1UQ1UQ
1UQ
1UQ1UQ11FD(vq�UOUQ
2o
UOV�2J*	P!)zP            noise = more_noise = a = bc = None
            blech = None
        zP
            noise = more_noise = a = bc = None
            blch = None
        zS
            noise = more_noise = a = bc = None
            bluchin = None
        z:
            blach = None
            bluc = None
        z<
            blach = None
            bluchi = None
        z;
            blucha = None
            bluc = None
        zS
            Luch = None
            fluch = None
            BLuch = None
        �
'bluchin'?�'blech'?�'blch'?�'blach'?z'bluc'?z'BLuch'?r)r�r�r�ru)r9�substitution�elimination�addition�substitutionOverElimination�substitutionOverAddition�eliminationOverAddition�caseChangeOverSubstitutionrrr�s&          r"�test_import_from_suggestions�9SuggestionFormattingTestBase.test_import_from_suggestionsOs�����(�
��
�o�o�'�
��
�?�?�$�
��
'/�o�o�7�'
�#�
$,�?�?�4�$
� �
#+�/�/�3�#
��
&.�_�_�6�&
�"��|�$�
�:�&�
�)�$�
�|�$�
(�*�5�
%�z�2�
$�i�0�
'��4�	!
��D��4�4�T�7�C�F��M�M�*�-�	!
r$c��QoUOQUOUQ22UOQUOUQ22UOQUOUQ22QoUOQUOUQ22UOQUOUQ22UOQUOUQ22P!)	zbluch = None�'bluch'rr$r%z
_bluch = Nonez'_bluch'r*r)rur�rG)r9rs& r"�(test_import_from_suggestions_underscored�ESuggestionFormattingTestBase.test_import_from_suggestions_underscored�s������
�
�i��!@�!@��w�!O�P��
�
�i��!@�!@��w�!O�P��
�
�i��!@�!@��x�!P�Q����
�
�j�$�"A�"A�$��"Q�R��
�
�j�$�"A�"A�$��"P�Q�����T�%D�%D�T�7�%S�Tr$c�x�[OQ2oUOQUOUQ22P!)z;            globals()[0] = 1
            bluch = 1
        r�r�)r�r�rur�)r9�modWithNonStringAttrs& r"�'test_import_from_suggestions_non_string�DSuggestionFormattingTestBase.test_import_from_suggestions_non_string�s5��'���0� 
��	
�
�
�i��!@�!@�AU�W^�!_�`r$c�T�QoUOUQ2oUOQU2P!)zblech = NonerEr�rF)r9rr�s&  r"�?test_import_from_suggestions_do_not_trigger_for_long_attributes�\SuggestionFormattingTestBase.test_import_from_suggestions_do_not_trigger_for_long_attributes�s*�����$�$�T�+?�@������&�)r$c	��QoQFD�oUOUQ59^tt^2UOV2oUOQU2UOQU2UOQU2UOQU2UOQU2UOQU2PPP2J�	P!)%fhJ�9h)	z!vvv = mom = w = id = pytho = NonerRrFz'vvv'rSrTrUrVrW)r!r�rG)r9rr�r�s&   r"�Etest_import_from_error_bad_suggestions_do_not_trigger_for_small_names�bSuggestionFormattingTestBase.test_import_from_error_bad_suggestions_do_not_trigger_for_small_names�s���2��)�D����4��(�(��8�8��D��� � ���8�� � ��&�1�� � ��&�1�� � ���0�� � ���/�� � ��F�3�)�(�*�(�(�(�s�A>B0	�0C
�9C
c���[]�2Tt,tFD	oQUQ0MJ	ooUOQ2QOU2oUOUQ2oUO	QU2P!ttoh)��r`z = z Noner�rr�)r�rer�r�rG)r9r	�chunksrr�s&    r"�>test_import_from_suggestions_do_not_trigger_for_big_namespaces�[SuggestionFormattingTestBase.test_import_from_suggestions_do_not_trigger_for_big_namespaces�sd��38��:�>�:�%�F�5�'��%�:��>��
�
�g���x�x�����0�0��w�?������&�)��	?s�A)c�h�QoUOUPPQ5oUOQUP*2P!)c� �[]]]Q5g)r�)r�r��	name_from)r�r�r$r"r��nSuggestionFormattingTestBase.test_import_from_error_with_bad_name.<locals>.raise_attribute_error_with_bad_name�s���2�2��<�<r$r�rJr�r�s&  r"�$test_import_from_error_with_bad_name�ASuggestionFormattingTestBase.test_import_from_error_with_bad_name�s<��	=��)�)�/�R�4�*�
��	
����l�2�.�/r$c��QoQoQoQoQoQoUQ1UQ1UQ1UQ	1UQ
1UQ
11FD'vqxUOU2o	UOV�2J)	P!)c�8�P9o9o9q#Po[[2P!r=�r�r)r�r�rr�r�s     r"r��NSuggestionFormattingTestBase.test_name_error_suggestions.<locals>.Substitution�s ��*.�.�E�.�J�.���E��%�Lr$c�8�P9o9o9q#Po[[2P!r=r�)r�r�rr�r�s     r"r�MSuggestionFormattingTestBase.test_name_error_suggestions.<locals>.Elimination�s ��*.�.�E�.�J�.���D��%�Lr$c�8�P9o9o9q#Po[[2P!r=r�)r�r�rr�rs     r"r�JSuggestionFormattingTestBase.test_name_error_suggestions.<locals>.Addition�s ��*.�.�E�.�J�.���G��%�Lr$c�.�PoPo[[2P!r=r�)rrs  r"r	�]SuggestionFormattingTestBase.test_name_error_suggestions.<locals>.SubstitutionOverElimination�s���E��D��%�Lr$c�.�PoPo[[2P!r=r�)rrs  r"r
�ZSuggestionFormattingTestBase.test_name_error_suggestions.<locals>.SubstitutionOverAddition�s���E��F��%�Lr$c�.�PoPo[[2P!r=r�)rrs  r"r�YSuggestionFormattingTestBase.test_name_error_suggestions.<locals>.EliminationOverAddition�s���F��D��%�Lr$r�r�r�z	'blucha'?r�r)
r9r�rrr	r
rrDrr�s
&         r"�test_name_error_suggestions�8SuggestionFormattingTestBase.test_name_error_suggestions�s���	�
	�
	�
	�
	�
	�
#/�
�!;�!,�i� 8�!)�<� 8�!8�+� F�!<�j� I�!9�:� F�!H��D��(�(��.�F��M�M�*�-�!Hr$c�T�QoUOU2oUOQU2P!)c�&�[[2P!r=)r��global_for_suggestior�r$r"rD�SSuggestionFormattingTestBase.test_name_error_suggestions_from_globals.<locals>.func�s���&�'r$z'global_for_suggestions'?r�r9rDr�s&  r"�(test_name_error_suggestions_from_globals�ESuggestionFormattingTestBase.test_name_error_suggestions_from_globals�s&��	(��$�$�T�*���
�
�1�6�:r$c�T�QoUOU2oUOQU2P!)c�&�[[2P!r=)r��ZeroDivisionErrrrrr�r$r"rD�TSuggestionFormattingTestBase.test_name_error_suggestions_from_builtins.<locals>.func�s���$�%r$�'ZeroDivisionError'?rr	s&  r"�)test_name_error_suggestions_from_builtins�FSuggestionFormattingTestBase.test_name_error_suggestions_from_builtins�s&��	&��$�$�T�*���
�
�,�f�5r$c�T�QoUOU2oUOQU2P!)c�t�[2O2o[UQ$[[	QU22P!)�__builtins__r	)r|�copyr�r��eval)�custom_globalss r"rD�lSuggestionFormattingTestBase.test_name_error_suggestions_from_builtins_when_builtins_is_module.<locals>.func�s*��$�Y�^�^�-�N�-5�N�>�*��$�+�^�<�=r$r	rr	s&  r"�Atest_name_error_suggestions_from_builtins_when_builtins_is_module�^SuggestionFormattingTestBase.test_name_error_suggestions_from_builtins_when_builtins_is_module�s(��	>��$�$�T�*���
�
�,�f�5r$c�T�QoUOU2oUOQU2P!)c��]o[2O2o]U]$[[QU[	222P!)r��abv)r|r	r�r	r�)�abcr	s  r"rD�aSuggestionFormattingTestBase.test_name_error_suggestions_with_non_string_candidates.<locals>.func�s2���C�$�Y�^�^�-�N� !�N�1���$�u�n�f�h�7�8r$r	rr	s&  r"�6test_name_error_suggestions_with_non_string_candidates�SSuggestionFormattingTestBase.test_name_error_suggestions_with_non_string_candidates�s'��	9�
�$�$�T�*���
�
�e�V�$r$c�T�QoUOU2oUOQU2P!)c�*�Po[[2P!r=)r��somethingverywronghe)�somethingverywronghehehehehehes r"rD�dSuggestionFormattingTestBase.test_name_error_suggestions_do_not_trigger_for_long_names.<locals>.func�s��-1�*��&�'r$�somethingverywrongheherFr	s&  r"�9test_name_error_suggestions_do_not_trigger_for_long_names�VSuggestionFormattingTestBase.test_name_error_suggestions_do_not_trigger_for_long_names�s*��	(��$�$�T�*�����1�6�:r$c	��QoQoQoQoQU1QU1QU1QU11FD�vqVUOUQ59^tt^2UOU2oUOQ	U2UOQ
U2UOQU2UOQU2UOQ
U2UOQU2PPP2J�	P!)%fhJ�9h)c�&�P9o9o9o9q4[P!r=r;�rMrNr�rOrPs     r"�f_b�hSuggestionFormattingTestBase.test_name_error_bad_suggestions_do_not_trigger_for_small_names.<locals>.f_b���)-�-�C�-�#�-��-�B�
r$c�&�P9o9o9o9q4[P!r=r�r+	s     r"�f_v�hSuggestionFormattingTestBase.test_name_error_bad_suggestions_do_not_trigger_for_small_names.<locals>.f_v	r.	r$c�&�P9o9o9o9q4[P!r=)rXr+	s     r"�f_m�hSuggestionFormattingTestBase.test_name_error_bad_suggestions_do_not_trigger_for_small_names.<locals>.f_m
r.	r$c�&�P9o9o9o9q4[P!r=)rYr+	s     r"�f_py�iSuggestionFormattingTestBase.test_name_error_bad_suggestions_do_not_trigger_for_small_names.<locals>.f_pys��)-�-�C�-�#�-��-�B�r$rr�rXrYrRzyou meanrMrNrTrUrVrZ)r9r,	r0	r3	r6	r�rDr�s&       r"�>test_name_error_bad_suggestions_do_not_trigger_for_small_names�[SuggestionFormattingTestBase.test_name_error_bad_suggestions_do_not_trigger_for_small_namess���	�	�	�	� ��:��S�z�C��:��d�|�L�J�D����4��(�(��,�,�T�2��� � ��V�4�� � ���/�� � ���/�� � ���0�� � ���/�� � ��F�3�)�(�M�(�(�(�s�A>C	�C
�C
c�T�QoUOU2oUOUQ2P!)c���P9o9o9o9o9o9o9o9o9o9o	9o
9o9o9o
9o9o9o9o9o9o9o9o9o9o9o9o9o9o9o9o9o9o9o 9o!9o"9o#9o$9o%9o&9o'9o(9o)9o*9o+9o,9o-9o.9o/9o09o19o29o39o49o59o69o79o89o99o:9o;9o<9o=9o>9o?9o@9oA9oB9oC9oD9oE9oF9oG9oH9oI9oJ9oK9oL9oM9oN9oO9oP9oQ9oR9oS9oT9oU9oV9oW9oX9oY9oZ9o[9o\9o]9o^9o_9o`9oa9ob9oc9od9oe9of9og9oh9oi9oj9ok9ol9om9on9oo9op9oq9or9os9ot9ou9ov9ow9ox9oy9oz9o{9o|9o}9o~9o9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9o�9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co	9Co
9Co9Co9Co
9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co 9Co!9Co"9Co#9Co$9Co%9Co&9Co'9Co(9Co)9Co*9Co+9Co,9Co-9Co.9Co/9Co09Co19Co29Co39Co49Co59Co69Co79Co89Co99Co:9Co;9Co<9Co=9Co>9Co?9Co@9CoA9CoB9CoC9CoD9CoE9CoF9CoG9CoH9CoI9CoJ9CoK9CoL9CoM9CoN9CoO9CoP9CoQ9CoR9CoS9CoT9CoU9CoV9CoW9CoX9CoY9CoZ9Co[9Co\9Co]9Co^9Co_9Co`9Coa9Cob9Coc9Cod9Coe9Cof9Cog9Coh9Coi9Coj9Cok9Col9Com9Con9Coo9Cop9Coq9Cor9Cos9Cot9Cou9Cov9Cow9Cox9Coy9Coz9Co{9Co|9Co}9Co~9Co9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co	9Co
9Co9Co9Co
9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co 9Co!9Co"9Co#9Co$9Co%9Co&9Co'9Co(9Co)9Co*9Co+9Co,9Co-9Co.9Co/9Co09Co19Co29Co39Co49Co59Co69Co79Co89Co99Co:9Co;9Co<9Co=9Co>9Co?9Co@9CoA9CoB9CoC9CoD9CoE9CoF9CoG9CoH9CoI9CoJ9CoK9CoL9CoM9CoN9CoO9CoP9CoQ9CoR9CoS9CoT9CoU9CoV9CoW9CoX9CoY9CoZ9Co[9Co\9Co]9Co^9Co_9Co`9Coa9Cob9Coc9Cod9Coe9Cof9Cog9Coh9Coi9Coj9Cok9Col9Com9Con9Coo9Cop9Coq9Cor9Cos9Cot9Cou9Cov9Cow9Cox9Coy9Coz9Co{9Co|9Co}9Co~9Co9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co�9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co	9Co
9Co9Co9Co
9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9Co9CoCo[[2P!r=)r��a0( �a1�a2�a3�a4�a5�a6�a7�a8�a9�a10�a11�a12�a13�a14�a15�a16�a17�a18�a19�a20�a21�a22�a23�a24�a25�a26�a27�a28�a29�a30�a31�a32�a33�a34�a35�a36�a37�a38�a39�a40�a41�a42�a43�a44�a45�a46�a47�a48�a49�a50�a51�a52�a53�a54�a55�a56�a57�a58�a59�a60�a61�a62�a63�a64�a65�a66�a67�a68�a69�a70�a71�a72�a73�a74�a75�a76�a77�a78�a79�a80�a81�a82�a83�a84�a85�a86�a87�a88�a89�a90�a91�a92�a93�a94�a95�a96�a97�a98�a99�a100�a101�a102�a103�a104�a105�a106�a107�a108�a109�a110�a111�a112�a113�a114�a115�a116�a117�a118�a119�a120�a121�a122�a123�a124�a125�a126�a127�a128�a129�a130�a131�a132�a133�a134�a135�a136�a137�a138�a139�a140�a141�a142�a143�a144�a145�a146�a147�a148�a149�a150�a151�a152�a153�a154�a155�a156�a157�a158�a159�a160�a161�a162�a163�a164�a165�a166�a167�a168�a169�a170�a171�a172�a173�a174�a175�a176�a177�a178�a179�a180�a181�a182�a183�a184�a185�a186�a187�a188�a189�a190�a191�a192�a193�a194�a195�a196�a197�a198�a199�a200�a201�a202�a203�a204�a205�a206�a207�a208�a209�a210�a211�a212�a213�a214�a215�a216�a217�a218�a219�a220�a221�a222�a223�a224�a225�a226�a227�a228�a229�a230�a231�a232�a233�a234�a235�a236�a237�a238�a239�a240�a241�a242�a243�a244�a245�a246�a247�a248�a249�a250�a251�a252�a253�a254�a255�a256�a257�a258�a259�a260�a261�a262�a263�a264�a265�a266�a267�a268�a269�a270�a271�a272�a273�a274�a275�a276�a277�a278�a279�a280�a281�a282�a283�a284�a285�a286�a287�a288�a289�a290�a291�a292�a293�a294�a295�a296�a297�a298�a299�a300�a301�a302�a303�a304�a305�a306�a307�a308�a309�a310�a311�a312�a313�a314�a315�a316�a317�a318�a319�a320�a321�a322�a323�a324�a325�a326�a327�a328�a329�a330�a331�a332�a333�a334�a335�a336�a337�a338�a339�a340�a341�a342�a343�a344�a345�a346�a347�a348�a349�a350�a351�a352�a353�a354�a355�a356�a357�a358�a359�a360�a361�a362�a363�a364�a365�a366�a367�a368�a369�a370�a371�a372�a373�a374�a375�a376�a377�a378�a379�a380�a381�a382�a383�a384�a385�a386�a387�a388�a389�a390�a391�a392�a393�a394�a395�a396�a397�a398�a399�a400�a401�a402�a403�a404�a405�a406�a407�a408�a409�a410�a411�a412�a413�a414�a415�a416�a417�a418�a419�a420�a421�a422�a423�a424�a425�a426�a427�a428�a429�a430�a431�a432�a433�a434�a435�a436�a437�a438�a439�a440�a441�a442�a443�a444�a445�a446�a447�a448�a449�a450�a451�a452�a453�a454�a455�a456�a457�a458�a459�a460�a461�a462�a463�a464�a465�a466�a467�a468�a469�a470�a471�a472�a473�a474�a475�a476�a477�a478�a479�a480�a481�a482�a483�a484�a485�a486�a487�a488�a489�a490�a491�a492�a493�a494�a495�a496�a497�a498�a499�a500�a501�a502�a503�a504�a505�a506�a507�a508�a509�a510�a511�a512�a513�a514�a515�a516�a517�a518�a519�a520�a521�a522�a523�a524�a525�a526�a527�a528�a529�a530�a531�a532�a533�a534�a535�a536�a537�a538�a539�a540�a541�a542�a543�a544�a545�a546�a547�a548�a549�a550�a551�a552�a553�a554�a555�a556�a557�a558�a559�a560�a561�a562�a563�a564�a565�a566�a567�a568�a569�a570�a571�a572�a573�a574�a575�a576�a577�a578�a579�a580�a581�a582�a583�a584�a585�a586�a587�a588�a589�a590�a591�a592�a593�a594�a595�a596�a597�a598�a599�a600�a601�a602�a603�a604�a605�a606�a607�a608�a609�a610�a611�a612�a613�a614�a615�a616�a617�a618�a619�a620�a621�a622�a623�a624�a625�a626�a627�a628�a629�a630�a631�a632�a633�a634�a635�a636�a637�a638�a639�a640�a641�a642�a643�a644�a645�a646�a647�a648�a649�a650�a651�a652�a653�a654�a655�a656�a657�a658�a659�a660�a661�a662�a663�a664�a665�a666�a667�a668�a669�a670�a671�a672�a673�a674�a675�a676�a677�a678�a679�a680�a681�a682�a683�a684�a685�a686�a687�a688�a689�a690�a691�a692�a693�a694�a695�a696�a697�a698�a699�a700�a701�a702�a703�a704�a705�a706�a707�a708�a709�a710�a711�a712�a713�a714�a715�a716�a717�a718�a719�a720�a721�a722�a723�a724�a725�a726�a727�a728�a729�a730�a731�a732�a733�a734�a735�a736�a737�a738�a739�a740�a741�a742�a743�a744�a745�a746�a747�a748�a749�a750�a751�a752�a753�a754�a755�a756�a757�a758�a759�a760�a761�a762�a763�a764�a765�a766�a767�a768�a769�a770�a771�a772�a773�a774�a775�a776�a777�a778�a779�a780�a781�a782�a783�a784�a785�a786�a787�a788�a789�a790�a791�a792�a793�a794�a795�a796�a797�a798�a799�a800s                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 r"rD�iSuggestionFormattingTestBase.test_name_error_suggestions_do_not_trigger_for_too_many_locals.<locals>.func sO'��d�aP
�B�P
��P
�b�P
�2�P
��P
�R�P
�"�P
�r�P
�B�P
��P
��P
��P
��P
�!�P
�$'�P
�*-�P
�03�P
�69�P
�<?�P
�BE�P
��P
��P
��P
�!�P
�$'�P
�*-�P
�03�P
�69�P
�<?�P
�BE�P
�
�P
��P
��P
�"�P
�%(�P
�+.�P
�14�P
�7:�P
�=@�P
�CF�P
�
�	P
��	P
��	P
�"�	P
�%(�	P
�+.�	P
�14�	P
�7:�	P
�=@�	P
�CF�	P
�

�P
�
�P
�
�P
�
"�P
�
%(�P
�
+.�P
�
14�P
�
7:�P
�
=@�P
�
CF�P
�
�
P
��
P
��
P
�"�
P
�%(�
P
�+.�
P
�14�
P
�7:�
P
�=@�
P
�CF�
P
�
�P
��P
��P
�"�P
�%(�P
�+.�P
�14�P
�7:�P
�=@�P
�CF�P
�
�P
��P
��P
�"�P
�%(�P
�+.�P
�14�P
�7:�P
�=@�P
�CF�P
�
�P
��P
��P
�"�P
�%(�P
�+.�P
�14�P
�7:�P
�=@�P
�CG�P
�
�P
��P
��P
�"&�P
�)-�P
�04�P
�7;�P
�>B�P
�EI�P
�LP�P
�
�P
��P
��P
�"&�P
�)-�P
�04�P
�7;�P
�>B�P
�EI�P
�LP�P
�
�P
��P
��P
�"&�P
�)-�P
�04�P
�7;�P
�>B�P
�EI�P
�LP�P
�
�P
��P
��P
�"&�P
�)-�P
�04�P
�7;�P
�>B�P
�EI�P
�LP�P
�
�P
��P
��P
�"&�P
�)-�P
�04�P
�7;�P
�>B�P
�EI�P
�LP�P
�
�P
��P
��P
�"&�P
�)-�P
�04�P
�7;�P
�>B�P
�EI�P
�LP�P
� 
�!P
� �!P
� �!P
� "&�!P
� )-�!P
� 04�!P
� 7;�!P
� >B�!P
� EI�!P
� LP�!P
�"
�#P
�"�#P
�"�#P
�""&�#P
�")-�#P
�"04�#P
�"7;�#P
�">B�#P
�"EI�#P
�"LP�#P
�$
�%P
�$�%P
�$�%P
�$"&�%P
�$)-�%P
�$04�%P
�$7;�%P
�$>B�%P
�$EI�%P
�$LP�%P
�&
�'P
�&�'P
�&�'P
�&"&�'P
�&)-�'P
�&04�'P
�&7;�'P
�&>B�'P
�&EI�'P
�&LP�'P
�(
�)P
�(�)P
�(�)P
�("&�)P
�()-�)P
�(04�)P
�(7;�)P
�(>B�)P
�(EI�)P
�(LP�)P
�*
�+P
�*�+P
�*�+P
�*"&�+P
�*)-�+P
�*04�+P
�*7;�+P
�*>B�+P
�*EI�+P
�*LP�+P
�,
�-P
�,�-P
�,�-P
�,"&�-P
�,)-�-P
�,04�-P
�,7;�-P
�,>B�-P
�,EI�-P
�,LP�-P
�.
�/P
�.�/P
�.�/P
�."&�/P
�.)-�/P
�.04�/P
�.7;�/P
�.>B�/P
�.EI�/P
�.LP�/P
�0
�1P
�0�1P
�0�1P
�0"&�1P
�0)-�1P
�004�1P
�07;�1P
�0>B�1P
�0EI�1P
�0LP�1P
�2
�3P
�2�3P
�2�3P
�2"&�3P
�2)-�3P
�204�3P
�27;�3P
�2>B�3P
�2EI�3P
�2LP�3P
�4
�5P
�4�5P
�4�5P
�4"&�5P
�4)-�5P
�404�5P
�47;�5P
�4>B�5P
�4EI�5P
�4LP�5P
�6
�7P
�6�7P
�6�7P
�6"&�7P
�6)-�7P
�604�7P
�67;�7P
�6>B�7P
�6EI�7P
�6LP�7P
�8
�9P
�8�9P
�8�9P
�8"&�9P
�8)-�9P
�804�9P
�87;�9P
�8>B�9P
�8EI�9P
�8LP�9P
�:
�;P
�:�;P
�:�;P
�:"&�;P
�:)-�;P
�:04�;P
�:7;�;P
�:>B�;P
�:EI�;P
�:LP�;P
�<
�=P
�<�=P
�<�=P
�<"&�=P
�<)-�=P
�<04�=P
�<7;�=P
�<>B�=P
�<EI�=P
�<LP�=P
�>
�?P
�>�?P
�>�?P
�>"&�?P
�>)-�?P
�>04�?P
�>7;�?P
�>>B�?P
�>EI�?P
�>LP�?P
�@
�AP
�@�AP
�@�AP
�@"&�AP
�@)-�AP
�@04�AP
�@7;�AP
�@>B�AP
�@EI�AP
�@LP�AP
�B
�CP
�B�CP
�B�CP
�B"&�CP
�B)-�CP
�B04�CP
�B7;�CP
�B>B�CP
�BEI�CP
�BLP�CP
�D
�EP
�D�EP
�D�EP
�D"&�EP
�D)-�EP
�D04�EP
�D7;�EP
�D>B�EP
�DEI�EP
�DLP�EP
�F
�GP
�F�GP
�F�GP
�F"&�GP
�F)-�GP
�F04�GP
�F7;�GP
�F>B�GP
�FEI�GP
�FLP�GP
�H
�IP
�H�IP
�H�IP
�H"&�IP
�H)-�IP
�H04�IP
�H7;�IP
�H>B�IP
�HEI�IP
�HLP�IP
�J
�KP
�J�KP
�J�KP
�J"&�KP
�J)-�KP
�J04�KP
�J7;�KP
�J>B�KP
�JEI�KP
�JLP�KP
�L
�MP
�L�MP
�L�MP
�L"&�MP
�L)-�MP
�L04�MP
�L7;�MP
�L>B�MP
�LEI�MP
�LLP�MP
�N
�OP
�N�OP
�N�OP
�N"&�OP
�N)-�OP
�N04�OP
�N7;�OP
�N>B�OP
�NEI�OP
�NLP�OP
�P
�QP
�P�QP
�P�QP
�P"&�QP
�P)-�QP
�P04�QP
�P7;�QP
�P>B�QP
�PEI�QP
�PLP�QP
�R
�SP
�R�SP
�R�SP
�R"&�SP
�R)-�SP
�R04�SP
�R7;�SP
�R>B�SP
�REI�SP
�RLP�SP
�T
�UP
�T�UP
�T�UP
�T"&�UP
�T)-�UP
�T04�UP
�T7;�UP
�T>B�UP
�TEI�UP
�TLP�UP
�V
�WP
�V�WP
�V�WP
�V"&�WP
�V)-�WP
�V04�WP
�V7;�WP
�V>B�WP
�VEI�WP
�VLP�WP
�X
�YP
�X�YP
�X�YP
�X"&�YP
�X)-�YP
�X04�YP
�X7;�YP
�X>B�YP
�XEI�YP
�XLP�YP
�Z
�[P
�Z�[P
�Z�[P
�Z"&�[P
�Z)-�[P
�Z04�[P
�Z7;�[P
�Z>B�[P
�ZEI�[P
�ZLP�[P
�\
�]P
�\�]P
�\�]P
�\"&�]P
�\)-�]P
�\04�]P
�\7;�]P
�\>B�]P
�\EI�]P
�\LP�]P
�^
�_P
�^�_P
�^�_P
�^"&�_P
�^)-�_P
�^04�_P
�^7;�_P
�^>B�_P
�^EI�_P
�^LP�_P
�`
�aP
�`�aP
�`�aP
�`"&�aP
�`)-�aP
�`04�aP
�`7;�aP
�`>B�aP
�`EI�aP
�`LP�aP
�b
�cP
�b�cP
�b�cP
�b"&�cP
�b)-�cP
�b04�cP
�b7;�cP
�b>B�cP
�bEI�cP
�bLP�cP
�d
�eP
�d�eP
�d�eP
�d"&�eP
�d)-�eP
�d04�eP
�d7;�eP
�d>B�eP
�dEI�eP
�dLP�eP
�f
�gP
�f�gP
�f�gP
�f"&�gP
�f)-�gP
�f04�gP
�f7;�gP
�f>B�gP
�fEI�gP
�fLP�gP
�h
�iP
�h�iP
�h�iP
�h"&�iP
�h)-�iP
�h04�iP
�h7;�iP
�h>B�iP
�hEI�iP
�hLP�iP
�j
�kP
�j�kP
�j�kP
�j"&�kP
�j)-�kP
�j04�kP
�j7;�kP
�j>B�kP
�jEI�kP
�jLP�kP
�l
�mP
�l�mP
�l�mP
�l"&�mP
�l)-�mP
�l04�mP
�l7;�mP
�l>B�mP
�lEI�mP
�lLP�mP
�n
�oP
�n�oP
�n�oP
�n"&�oP
�n)-�oP
�n04�oP
�n7;�oP
�n>B�oP
�nEI�oP
�nLP�oP
�p
�qP
�p�qP
�p�qP
�p"&�qP
�p)-�qP
�p04�qP
�p7;�qP
�p>B�qP
�pEI�qP
�pLP�qP
�r
�sP
�r�sP
�r�sP
�r"&�sP
�r)-�sP
�r04�sP
�r7;�sP
�r>B�sP
�rEI�sP
�rLP�sP
�t
�uP
�t�uP
�t�uP
�t"&�uP
�t)-�uP
�t04�uP
�t7;�uP
�t>B�uP
�tEI�uP
�tLP�uP
�v
�wP
�v�wP
�v�wP
�v"&�wP
�v)-�wP
�v04�wP
�v7;�wP
�v>B�wP
�vEI�wP
�vLP�wP
�x
�yP
�x�yP
�x�yP
�x"&�yP
�x)-�yP
�x04�yP
�x7;�yP
�x>B�yP
�xEI�yP
�xLP�yP
�z
�{P
�z�{P
�z�{P
�z"&�{P
�z)-�{P
�z04�{P
�z7;�{P
�z>B�{P
�zEI�{P
�zLP�{P
�|
�}P
�|�}P
�|�}P
�|"&�}P
�|)-�}P
�|04�}P
�|7;�}P
�|>B�}P
�|EI�}P
�|LP�}P
�~
�P
�~�P
�~�P
�~"&�P
�~)-�P
�~04�P
�~7;�P
�~>B�P
�~EI�P
�~LP�P
�@
�AP
�@�AP
�@�AP
�@"&�AP
�@)-�AP
�@04�AP
�@7;�AP
�@>B�AP
�@EI�AP
�@LP�AP
�B
�CP
�B�CP
�B�CP
�B"&�CP
�B)-�CP
�B04�CP
�B7;�CP
�B>B�CP
�BEI�CP
�BLP�CP
�D
�EP
�D�EP
�D�EP
�D"&�EP
�D)-�EP
�D04�EP
�D7;�EP
�D>B�EP
�DEI�EP
�DLP�EP
�F
�GP
�F�GP
�F�GP
�F"&�GP
�F)-�GP
�F04�GP
�F7;�GP
�F>B�GP
�FEI�GP
�FLP�GP
�H
�IP
�H�IP
�H�IP
�H"&�IP
�H)-�IP
�H04�IP
�H7;�IP
�H>B�IP
�HEI�IP
�HLP�IP
�J
�KP
�J�KP
�J�KP
�J"&�KP
�J)-�KP
�J04�KP
�J7;�KP
�J>B�KP
�JEI�KP
�JLP�KP
�L
�MP
�L�MP
�L�MP
�L"&�MP
�L)-�MP
�L04�MP
�L7;�MP
�L>B�MP
�LEI�MP
�LLP�MP
�N
�OP
�N�OP
�N�OP
�N"&�OP
�N)-�OP
�N04�OP
�N7;�OP
�N>B�OP
�NEI�OP
�NLP�OP
�P
�QP
�P�QP
�P�QP
�P"&�QP
�P)-�QP
�P04�QP
�P7;�QP
�P>B�QP
�PEI�QP
�PLP�QP
�R
�SP
�R�SP
�R�SP
�R"&�SP
�R)-�SP
�R04�SP
�R7;�SP
�R>B�SP
�REI�SP
�RLP�SP
�T
�UP
�T�UP
�T�UP
�T"&�UP
�T)-�UP
�T04�UP
�T7;�UP
�T>B�UP
�TEI�UP
�TLP�UP
�V
�WP
�V�WP
�V�WP
�V"&�WP
�V)-�WP
�V04�WP
�V7;�WP
�V>B�WP
�VEI�WP
�VLP�WP
�X
�YP
�X�YP
�X�YP
�X"&�YP
�X)-�YP
�X04�YP
�X7;�YP
�X>B�YP
�XEI�YP
�XLP�YP
�Z
�[P
�Z�[P
�Z�[P
�Z"&�[P
�Z)-�[P
�Z04�[P
�Z7;�[P
�Z>B�[P
�ZEI�[P
�ZLP�[P
�\
�]P
�\�]P
�\�]P
�\"&�]P
�\)-�]P
�\04�]P
�\7;�]P
�\>B�]P
�\EI�]P
�\LP�]P
�^
�_P
�^�_P
�^�_P
�^"&�_P
�^)-�_P
�^04�_P
�^7;�_P
�^>B�_P
�^EI�4��"�Ir$z
NameError.*a1)r��assertNotRegexr	s&  r"�>test_name_error_suggestions_do_not_trigger_for_too_many_locals�[SuggestionFormattingTestBase.test_name_error_suggestions_do_not_trigger_for_too_many_localss,��S	�j�$�$�T�*�����F�$4�5r$c��QoUOU2oUOQU2QoUOU2oUOQU2P!)c��Po[2gr=�rDrhs r"rD�QSuggestionFormattingTestBase.test_name_error_with_custom_exceptions.<locals>.funcys���E��+�r$r�c��Po[gr=rcrhs r"rDrd�s���E��Or$rFr	s&  r"�&test_name_error_with_custom_exceptions�CSuggestionFormattingTestBase.test_name_error_with_custom_exceptionsxsP��	��$�$�T�*������&�)�	��$�$�T�*������&�)r$c��QQ2oU2oUOUO2oUOQU2P!)c�.`�\sQsQsnQsQsQsUsP!)�ESuggestionFormattingTestBase.test_name_error_with_instance.<locals>.Ai�c��PUmP!r=rhrNs&r"r��NSuggestionFormattingTestBase.test_name_error_with_instance.<locals>.A.__init__��	��!��
r$c��]o[oP!r�rh)r9r�rs&  r"rG�ISuggestionFormattingTestBase.test_name_error_with_instance.<locals>.A.foo�s�����r$rh�r�r�r�r�r�rGr�r�r�s@r"r�rj�s����
"�
�
r$r��
self.blech)r�rGru�r9r�r�r�s&   r"�test_name_error_with_instance�:SuggestionFormattingTestBase.test_name_error_with_instance�s7��	�	��3���$�$�X�\�\�2���
�
�l�F�+r$c��QQ2oU2oUOUO2oUOQU2UOQU2UOQU2QQ2oU2oUOUO2oUOQU2UOQU2UOQ	U2UOQ
U2P!)c�.`�\sQsQsnQsQsQsUsP!)�TSuggestionFormattingTestBase.test_name_error_with_instance_not_normalized.<locals>.Ai�c��PUmP!r=�rqrNs&r"r��]SuggestionFormattingTestBase.test_name_error_with_instance_not_normalized.<locals>.A.__init__�s
��8<��5r$c��]o[oP!r�ry)r9rprs&  r"rG�XSuggestionFormattingTestBase.test_name_error_with_instance_not_normalized.<locals>.A.foo�s����4�r$ryrpr�s@r"r�rw�s����
=�
5�
5r$r�zself.finalizationrrrpc�.`�\sQsQsnQsQsQsUsP!)�TSuggestionFormattingTestBase.test_name_error_with_instance_not_normalized.<locals>.Bi�c��PUmP!r=�rvrNs&r"r��]SuggestionFormattingTestBase.test_name_error_with_instance_not_normalized.<locals>.B.__init__�s	��#��r$c��]o[oP!r�r�)r9rurs&  r"rG�XSuggestionFormattingTestBase.test_name_error_with_instance_not_normalized.<locals>.B.foo�s�����r$r�rpr�s@r"r�r~�s����
$�
�
r$r�uself.attr_μzself.attr_\u03bcrwru)r�rGrurG)r9r�r�r�r�s&    r"�,test_name_error_with_instance_not_normalized�ISuggestionFormattingTestBase.test_name_error_with_instance_not_normalized�s���	5�	5��3���$�$�X�\�\�2���
�
�)�6�2����;�V�D������/�	�	��3���$�$�X�\�\�2���
�
�(�&�1��
�
�)�6�2�����f�-�����6�*r$c��QQ2oU2oUOUO2oUOQU2P!)c�.`�\sQsQsnQsQsQsUsP!)�NSuggestionFormattingTestBase.test_unbound_local_error_with_instance.<locals>.Ai�c��PUmP!r=rhrNs&r"r��WSuggestionFormattingTestBase.test_unbound_local_error_with_instance.<locals>.A.__init__�rmr$c��]oWo]oP!r�r�)r9r�r�rs&   r"rG�RSuggestionFormattingTestBase.test_unbound_local_error_with_instance.<locals>.A.foo�s�������r$rhrpr�s@r"r�r��s����
"�
�
r$r�rq)r�rGrGrrs&   r"�&test_unbound_local_error_with_instance�CSuggestionFormattingTestBase.test_unbound_local_error_with_instance�s9��	�	��3���$�$�X�\�\�2������v�.r$c�,�QQ2oUOU2O2oUOQU2UOQU2UOU2O2oUOQU2UOQU2P!)c�4`�\sQsQsnQsQsQsQsUsP!)�QSuggestionFormattingTestBase.test_unbound_local_error_with_side_effect.<locals>.Ai�c�P�UQ6Xc[Q2gUQ6Xc[Q2gP!)rG�spam)r�rA)r9�keys&&r"r��]SuggestionFormattingTestBase.test_unbound_local_error_with_side_effect.<locals>.A.__getattr__�s+���%�<�(��/�/��&�=�$�V�,�,�!r$c��[P!r=r�rNs&r"�bar�USuggestionFormattingTestBase.test_unbound_local_error_with_side_effect.<locals>.A.bar�s��r$c��[P!r=)r�rNs&r"�baz�USuggestionFormattingTestBase.test_unbound_local_error_with_side_effect.<locals>.A.baz�s��r$r�)	r�r�r�r�r�r�r�r�r�r�s@r"r�r��s����
-�
�
�
r$r�zself.z'foo'z'spam')r�r�rGrur�)r9r�rs&  r"�)test_unbound_local_error_with_side_effect�FSuggestionFormattingTestBase.test_unbound_local_error_with_side_effect�sv��
	�
	��(�(�����1�
�����*�-��
�
�g�z�*��(�(�����1�
�����*�-��
�
�h�
�+r$c�T�QoUOU2oUOQU2P!)c�&�]o[W2]oP!r@r�)r��	somethongs  r"rD�RSuggestionFormattingTestBase.test_unbound_local_error_does_not_match.<locals>.func�s���I��)���Ir$r�rFr	s&  r"�'test_unbound_local_error_does_not_match�DSuggestionFormattingTestBase.test_unbound_local_error_does_not_match�s)��	�
�$�$�T�*������f�-r$c�T�QoUOU2oUOQU2P!)c�0�[O2oP!r=)�ior��streams r"rD�MSuggestionFormattingTestBase.test_name_error_for_stdlib_modules.<locals>.func�s
���[�[�]�Fr$zforget to import 'io'rr	s&  r"�"test_name_error_for_stdlib_modules�?SuggestionFormattingTestBase.test_name_error_for_stdlib_modules�s(��	#��$�$�T�*���
�
�-�v�6r$c�T�QoUOU2oUOQU2P!)c�0�[O2oP!r=)�_iorr�s r"rD�USuggestionFormattingTestBase.test_name_error_for_private_stdlib_modules.<locals>.func�s
���\�\�^�Fr$zforget to import '_io'rr	s&  r"�*test_name_error_for_private_stdlib_modules�GSuggestionFormattingTestBase.test_name_error_for_private_stdlib_modules�s(��	$��$�$�T�*���
�
�.��7r$r�)3r�r�r�r�r�r�r�r�r�r�r�r	rr.rKrdrwrr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r	r	r	r	r	r'	r8	r_rfrsr�r�r�r�r�r�r�r�r�s@r"r�r��sH����+�'�0�'�O�&.� 
�"1�$1�7�0:�66�02�*�6��6�B�'��'��1��1��
=��
=��6��6�&�;��;���"0.�d	U�a�*�4�*�0�&.�P;�6�6�%�;�4�8W6�r
*�
,�+�8/�,�,.�7�8�8r$r�c��\sQsQsQsP!)�#PurePythonSuggestionFormattingTestsi�r�r�r�r$r"r�r�����
	r$r�c��\sQsQsQsP!)� CPythonSuggestionFormattingTestsi�r�r�r�r$r"r�r�����	r$r�c��\sQsQsQsP!)�*PurePythonGetattrSuggestionFormattingTestsir�r�r�r$r"r�r�r�r$r�c��\sQsQsQsP!)�*PurePythonDelattrSuggestionFormattingTestsir�r�r�r$r"r�r�r�r$r�c��\sQsQsQsP!)�'CPythonGetattrSuggestionFormattingTestsir�r�r�r$r"r�r�r�r$r�c��\sQsQsQsP!)�'CPythonDelattrSuggestionFormattingTestsi#r�r�r�r$r"r�r�#r�r$r�c�`�\sQsQsnQsQs\OQ2Q2s\	Q2s
QsQs\
O\O Q	6HQ
2Q2s\
O\O&O(%(Q2Q
2s\
O\O&O(%(Q2Q2sQsUsP!)�MiscTesti.c�&�[2o[[2FDQoUOQ2%cJ[	[U2o[	UQP2Q6XfJ@UOU2JS	UO
[OU2P!)r!r�rB)rkr+rBr$r�rh�assertCountEqual�__all__)r9rOr��
module_objects&   r"�test_all�MiscTest.test_all0sj���5���	�N�D����s�#�#��#�I�t�4�M��}�l�D�9�[�H����T�"�#�	
���i�/�/��:r$c�`�U1QkoUPP]2UPQ]2UQQ]2UQQ]2UQQ]2UQQ]2UQ	Q
]2UQQ]2UQ
Q]2UQQ]2UQQ]2UQQ]2UQQ]2UQQ]2UQQ]2UQQ]
2UQQ]2UQQ]2UQQ]
2UQQ ]2P!)!c�Z:�[OVQ2oROV22P!)i�)rB�_levenshtein_distancerr)rrrOr�r9s&&& �r"�CHECK�1MiscTest.test_levenshtein_distance.<locals>.CHECK>s#����4�4�Q�4�@�F����V�.r$rr��Apple�Aple�BananazB@n@n@�CherryzCherry!z---0---z------r	rorl�bb�aaaaa�AAAAA�wxyz�wXyZ�wXyZ123�Python�JavazC#�AbstractFoobarManager�abstract_foobar_manager�CPython�PyPy�pypyr��AttributeErrop�AttributeErrorTests�ABA�AABr�)r9r�sf r"�test_levenshtein_distance�"MiscTest.test_levenshtein_distance:s���	/�	�b�"�a��
�b�#�q��
�c�3���
�g�v�q�!�
�h��!�$�
�h�	�1�%�
�i��1�%�
�e�S�!��
�d�D�!��
�g�w��"�
�f�f�a� �
�f�i��#�
�h���#�
�f�d�A��
�%�'@�%�H�
�i���$�
�i���$�
�� 0�!�4�
�� 5�r�:�
�e�U�A�r$�cpuc��[O2%fUO[Q02[OQ29^tt^2o[O
U2oPPP2WFD�vq4o[OV4Q2oUOVeV41Q5VU]*U]*1FD/o[OV4U2oUOV�V4U1Q5J1	[U2FD/o[OV4U2o	UOV�V4U1Q5J1	J�	P!)%fhK�9h)z. is missing. Run `make regen-test-levenshtein`�rr��r�)�LEVENSHTEIN_DATA_FILE�is_filer�r��json�loadrBr�rrr�rM)
r9r��examplesrrrO�res1�	threshold�res2�res3s
&         r"�'test_levenshtein_distance_short_circuit�0MiscTest.test_levenshtein_distance_short_circuitWs��$�,�,�.�.��I�I�(�)�*5�6�
�
#�
'�
'��
,�
,���y�y��|�H�-�&�N�A�(��2�2�1��>�D����T�!���8�&�1��h��l�C�	� �6�6�q�Y�G��� � ��a�I�5F� �G�D�
#�8�_�	�!�6�6�q�Y�G���"�"�4��y�8I�"�J�	-�'�-�
,�s�D/�/D?	�8D?	c�^�]PHoUOUOQQ,Q2Q2UOUOQ,Q2P2QQ[2oUO	[
29^tt^2UOU2P2PPP2P!)%fhP!9h)rrU�world�hell�
hovercraft�eelsc��\sQsQsQsP!)�3MiscTest.test_suggestions_extension.<locals>.MyListi�r�r�r�r$r"r�r��r@r$r�)�_suggestionsrr�_generate_suggestionsr��assertRaisesr�)r9r�r�s&  r"�test_suggestions_extension�#MiscTest.test_suggestions_extensionps���	�����.�.��'�"��
�
�	
�	
����.�.����
�
�	
�	�T�	��
�
�y�
)�
)��.�.�v�x��<�*�
)�
)�
)�s�9B�B,	�$B,	c��Qo[QQU2vq#UOQU2Qo[QQU2vq#UOQU2P!)z
import boo�-Sr(s�Site initialization is disabled, did you forget to add the site-packages directory to sys.path or to enable your virtual environment?z�
            import sys
            sys.stdlib_module_names = sys.stdlib_module_names + ("boo",)
            import boo
        )rrurG�r9rr!r�s&   r"�test_no_site_package_flavour�%MiscTest.test_no_site_package_flavour�s^����,�T�4��>���1��
�
�7�9?�	
���
-�T�4��>���1����7�9?�	
r$c��Qo[QQU2vq#UOQU2Qo[QQU2vq#UOQU2P!)zh
            import sys
            sys.stdlib_module_names |= {'spam'}
            import spam
        r
r(s,Standard library module 'spam' was not foundz�
            import sys
            import traceback
            traceback._MISSING_STDLIB_MODULE_MESSAGES = {'spam': "Install 'spam4life' for 'spam'"}
            sys.stdlib_module_names |= {'spam'}
            import spam
        sInstall 'spam4life' for 'spam')rrur
s&   r"�test_missing_stdlib_module�#MiscTest.test_missing_stdlib_module�sV����
-�T�4��>���1��
�
�E�v�N���-�T�4��>���1��
�
�7��@r$�win32zNon-Windows testc��]PHoUOQ2P![c,[O2oSOQS2P!h9h)rz"ModuleNotFoundError was not raisedzFUnsupported platform for Windows-only standard library module 'msvcrt')�msvcrtr��ModuleNotFoundErrorrBr}ru)r9r	
r�s&  r"�test_windows_only_module_error�'MiscTest.test_windows_only_module_error�sJ��	<��

�I�I�:�;��	#�	o�!�,�,�.�I��M�M�b�dm�n�	o�s��	A�(A�Az+Platform does not support extension modulesc	��[OOP*o[OQ29o%cUOV2P!UO
Q2uq4P,o[OQ6XcUOQ2UOV5QU8QU8Q0Q5UO[U2]Q	Q5P!)
r��SHLIB_SUFFIXr�nt�_dzUnexpected prefix z in extension module suffix z^. traceback._find_incompatible_extension_module needs to be updated to take this into account!r�z�The last suffix in importlib.machinery.EXTENSION_SUFFIXES contains more than one extension, so it is probably different than SHLIB_SUFFIX. It probably contains an ABI tag! If this is a false positive, define SHLIB_SUFFIX in sysconfig.)�	importlib�	machinery�EXTENSION_SUFFIXES�	sysconfig�get_config_varrrr1�osr�rerurs)r9�last_extension_suffix�shlib_suffix�
before_dot�
extensions�expected_prefixess&     r"�(test_find_incompatible_extension_modules�1MiscTest.test_find_incompatible_extension_modules�s���!*� 3� 3� F� F�r� J��$�3�3�N�C�C�<�C����2�A�&;�&A�&A�#�&F�#�J�!#����w�w�$��!�(�(��.��M�M�*�$�Z�N�3�/�2�35�5�
�
�
���S��_�a�Q�
�
r$c��[OOP*o[O29^tt^2oQU0o[[OOV#2Q2O2QU8Q0o[QVBQ5vqVPPP2QWQ0oUOUWO22P!)%fhK89h)	r�zfoo.some-abi�wbz?
                import sys
                sys.path.insert(0, z))
                import foo
            r()�__cwdzKAlthough a module with this name was found for a different Python version (z).)
r
r
r
rrr�r
r�r��closerrur5)r9�untagged_suffix�tmp�incompatible_modulerr!r��hints&       r"�(test_incompatible_extension_modules_hint�1MiscTest.test_incompatible_extension_modules_hint�s���#�-�-�@�@��D��
�
�
�
!�
!�S�$0��0A�"B��������c�7��>�D�D�F�$�$'�7�+
��D�
1��t�G�L�A�q�"�]�]p�\q�qs�t���
�
�d�F�M�M�O�,�"�
!�s�AC�C	�
C	r�)r�r�r�r�r�r�r�requires_resourcer�rr�r
r
r�skipIfrD�platformr
r
r
r
r
r&
r�r�r�s@r"r�r�.s�����;��:
���u�%�K�&�K�0�=��=�4
�.A�*�_�_�S�\�\�W�,�.@�A�<�B�<��_�_��,�,�?�?�?�An�o��p��@�_�_��,�,�?�?�?�An�o�-�p�-r$r�c�P`�\sQsQsnPsQsQsQsQsQs	Qs
QsQ	sUs
P!)
�TestColorizedTracebacki�c�t``	`
�Qn
U
1Qkn	U	1QknU1QkoU2PO	WOP	Q52o[Q*o[Q*o[Q*oUOQ	U*Q
*U*U*Q*U*U2UOQU*Q
*U*U*Q*U*U2UOQU*Q*U*U*Q*U*Q*U2UOQU2UOQU2UOUQ*U*U*Q*U*U2P![c-o[OOSP	Q5oPo=CK�Po=hh9h)c�B�QQP--oUQ*Q*Q*oP!r�r�)rrros*  r"rG�<TestColorizedTraceback.test_colorized_traceback.<locals>.foo�s"���c�4�[�!�A��#��s��C� �Ar$c�$:�U1Qk]]]]2!)c�:�RU!r=r��rrGs*�r"r#�OTestColorizedTraceback.test_colorized_traceback.<locals>.baz2.<locals>.<lambda>�s	���#�t�*r$r�r2
s*�r"�baz2�=TestColorizedTraceback.test_colorized_traceback.<locals>.baz2�s���,�a��!�A�6�6r$c�:�R]]]]2!r�r�)rr4
s*�r"�baz1�=TestColorizedTraceback.test_colorized_traceback.<locals>.baz1�s�����!�A�a�=� r$c�:�R]]]]2!r�r�)r7
s�r"r��<TestColorizedTraceback.test_colorized_traceback.<locals>.bars������a���
r$r�r�r�r,r(zy = zx['a']['b']z['c']zreturn z(lambda *args: foo(*args))z	(1,2,3,4)zreturn (lambda *args: rGz(*args)z
)(1,2,3,4)zreturn baz2(1,2,3,4)z.return baz1(1,
            2,3
            ,4)r��())r�rBr
rr�r/�colorsru)r9r�r�rEr��red�boldrr'r7
r4
rGs&       @@@r"�test_colorized_traceback�/TestColorizedTraceback.test_colorized_traceback�s]���	!�	7�	!�	�	��E�
����
�
�D�
�1�2���S�k���s����s����
�
�f�s�l�]�2�U�:�U�B�W�L�u�T�V[�\��
�
�i�#�o�(D�D�u�L�u�T�Wb�b�ej�j�lq�r��
�
�.��4�u�<�u�D�u�L�y�X�[`�`�co�o�qv�w��
�
�,�e�4��
�
�H�%�P��
�
�c�E�k�E�)�E�1�D�8�5�@�%�H���	��.�.�=�=��$�>��C��	�s�F�	F7�
F7�!F2�2F7c���QoU2POWO
P	Q52o[Q*o[Q*oUOUQ*U*U2UOUQ*U*U2P![cLoSOQ2SOQ2[OO	S2oPo=K�Po=hh9h)c��[2gr=r�r�r$r"rG�BTestColorizedTraceback.test_colorized_exception_notes.<locals>.foos
���,�r$z
First notezSecond noter�r.r()	r�r�rBr
rr�r/r<
ru)r9rGr�rEr�r-r's&      r"�test_colorized_exception_notes�5TestColorizedTraceback.test_colorized_exception_notess���	�	A��E�����
�
�D�
�1�2���c�{���s����
�
�d�\�)�E�1�5�9��
�
�d�]�*�U�2�E�:���	A�
�J�J�|�$�
�J�J�}�%��.�.�=�=�a�@�C��	A�s�B
�
	C �C �AC�C c��[QQQ2POWO
P	Q52oQoUOUQ-[@U2P![c,o[OO	SP	Q5oPo=KtPo=hh9h)za $ b�<string>rKr�r�c	
�|�POQUQUQUQUQ0	QUQUQ0Q	UQ
UQ0UQUQUQ
UQ0,2!)rT�  File �
"<string>"�, line r�rmz    a �$z b
z      rkrqr��invalid syntax)r��	�trXr*r�r�r,r�r(r.s	&&&&&&&&&r"rO�DTestColorizedTraceback.test_colorized_syntax_error.<locals>.expected0sv���7�7��b�T��A�3�g�a�S��!��B�?��Q�C�q���4�(��Q�C�q���2�&��c��Q�C�r�!��N�1�#�R�@�	��
r$r�)	rMrqrBr
rr�r/rur<
)r9r�rEr�rOs&    r"�test_colorized_syntax_error�2TestColorizedTraceback.test_colorized_syntax_error(s}��	��G�Z��0�
������T��2�3��	�	
�
�
�h�(��(�&�1���	��.�.�=�=��$�>��C��	�s�
A�	B	�B	�!B�B	c
�(`�Qo]QHGoU2UOQ2UOOnU1QkoUOWUQ-[@2P![c�o[	Q29^tt^2o[
OOQP	Q59^tt^2SS2PPP2L)%fhL9hPPP2L)%fhL9hWO2O2oPo=K�Po=hh9h)c��]]*P!r�r�r�r$r"rG�KTestColorizedTraceback.test_colorized_traceback_is_the_default.<locals>.foo<rr$r�r�r�z_colorize.can_colorize)�return_valuec	� :�QQUQ[QUQUR	]*UQUQU0QUQUUQU0QUQ	UUQ
U0QUQ[QUQUR	]*UQUQU0QUQUUQUUQ
U0
QUQUUQUUQU0
UQUQUQU0,!)r�rI
�"rK
�, in �'test_colorized_traceback_is_the_defaultrcrGr;
�~~~�^^r��/�0�~rkrr��division by zero)r�)
rO
rXr*r�r�r,r�r(r.�lno_foos
&&&&&&&&&�r"rO�PTestColorizedTraceback.test_colorized_traceback_is_the_default.<locals>.expectedJs ���4��"��Q�x�j��!��-��s�7�1�9�+�a�S��a�S�0W�XY�WZ�\��q�c��Q�C��s�"�Q�C�(��q�c��Q�C��s�"�Q�C�(��"��Q�x�j��!��-��s�7�1�9�+�a�S��a�S��A�3�8��q�c��1�#�a�S��!��Q�C�q���,��q�c��1�#�a�S��!��Q�C�q���,��#�&�q�c��A�3�.>�q�c�B��
r$r�)r�r�r�r�rrr
rrdr�r�r�rrr<
)r9rGr�r�r�r�rOra
s&      @r"rZ
�>TestColorizedTraceback.test_colorized_traceback_is_the_default;s����	�	.�	6��E��I�I�,�-��,�,�-�-��	�	
�����!3�F�!3�4��)�	6� ��*�*�h��]�]�(�(�)A�PT�(�U�U�#�A�&�V�U�U�U��+�*�*�*���&�&�(�3�3�5�F��		6�sY�A � 	D�*D�+D�>*C�(	B:�1	C�:C
�C
�C�
	D�C&�C&�!&D�Dc�d``�QnR2ROO
nPO
WOP	Q52O2oUU1QkoUOV4Q-[@2P![c,o[OOSP	Q5oPo=K�Po=hh9h)c��,o]]*[QU2g[coSOS2Po=K-Po=hh9h)r�r�)rrer�)�
exceptions�	inner_excs  r"rG�QTestColorizedTraceback.test_colorized_traceback_from_exception_group.<locals>.fooZsE���J�
-��A��!���4�4��%�
-��!�!�)�,�,��
-�s�	�	A�A�;�Ar�r�c	�:�QQUQ[QUQUR
]	*UQUQU0QUQUUQU0QUQ	UUQ
U0QQR	0Q
[Q0QUQ[QUQUR
]*UQUQU0QQQUQUQUQU0QQQUQ[QUQUR
]*UQUQU0QUQUUQUUQU0
QUQUUQUUQU0
QQUQ UQUQ!U0Q",!)#r�z  |   File rX
rK
rY
�-test_colorized_traceback_from_exception_groupz  |     rGr;
r[
r\
zK  |     e = ExceptionGroup('test', [ZeroDivisionError('division by zero')])z  |     foo = z  |     self = <zQ.TestColorizedTraceback testMethod=test_colorized_traceback_from_exception_group>z0  |     raise ExceptionGroup("test", exceptions)z<  |     exceptions = [ZeroDivisionError('division by zero')]z  | r�r�ztest (1 sub-exception)r�r�z
    |   File z
    |     z1 r]
z 0z~~rkz>    |     exceptions = [ZeroDivisionError('division by zero')]z    | rr`
r�)r�r�)rO
rXr*r�r�r,r�r(r.rGra
s&&&&&&&&&��r"rO�VTestColorizedTraceback.test_colorized_traceback_from_exception_group.<locals>.expectedks����H��b�T��8�*�A�a�S���s�7�1�9�+�a�S��a�S�P}�~�~A�B��1�#�S���A�3�b���,��1�#�S���A�3�b���,�]� ���&�"�8�*�,}�~��b�T��8�*�A�a�S���s�7�1�9�+�a�S��a�S�PS�TU�SV�W�B�N��q�c���s�"�Q�C�/E�a�S�I�:�:���t�1�X�J�a��s�'�!��W�Q�Y�K��s�%�PQ�s�RU�VW�UX�Y��Q�C�r�!��Q�C�q���A�3�b���4��Q�C�r�!��Q�C�q���A�3�b���4�P����,�Q�C�r�!��4D�Q�C�H�;�'
�
r$r�)r�rBr
rr�r�r�r/r�rrr<
)r9r�rEr�rOrGra
s&    @@r"rj
�DTestColorizedTraceback.test_colorized_traceback_from_exception_groupYs����	5�	��E��,�,�-�-��������T��2�3�>�>�@��	
�,	
�����!3�F�!3�4��;�	��.�.�=�=��$�>��C��	�s�A9�9	B/�B/�!B*�*B/c�n�]p]*PO	WOP	Q52O
2oQoUOUQ*UQ-[@2[]*PO	UOP	Q52O
2oQoUOUQ*UQ-[@2P![c*o[OOS2oPo=K�Po=hh9h[c*o[OOS2oPo=K�Po=hh9h)r�r�c	�N�QUQUUQUUQUQ0QUQUUQUUQU0
,!)	u    啊哈=1; u啊哈r]
r^
z####z            z~~~~rkr_
r�rN
s	&&&&&&&&&r"rO�ITestColorizedTraceback.test_colorized_traceback_unicode.<locals>.expected�sV�� ���6�!��Q�C�q���A�3�a��s�$�?��q�c��a�S���1�Q�C��s�!�A�3�7��
r$:rrjNc	�&�QUQUQ0QUQU0,!)rcuéééééz/0z^^^^^r�rN
s	&&&&&&&&&r"rOro
�s.���q�c����2�.��q�c��q�c�"��
r$r�)
r�rBr
rr�r/r�rrr<
�
ééééé)r9�啊哈r�rEr�rOs&     r"� test_colorized_traceback_unicode�7TestColorizedTraceback.test_colorized_traceback_unicode�s��	A��F�Q�h�������T��2�3�>�>�@��	�
	
������h�&8��&8�9�	A��A��������T��2�3�>�>�@��	�
	
������h�&8��&8�9��-�	A��.�.�=�=�a�@�C��	A���	A��.�.�=�=�a�@�C��	A�s;�
C	�$
D�		C=�C=�C8�8C=�	D4�
D4�D/�/D4c�`�[Q*o[Q*o[Q*o[Q*o[Q*o[Q*oQoUQ]]Q5o[OOU2o	PO	U	OP	Q	52o
UO
Q
UQUQUQ
UQUQUQQUQUQUQUQUQUQ0U
2UQ]]Q5o[OOU2o	PO	U	OP	Q	52o
UO
QUQUQUQUQ0	U
2UQ]]Q5o[OOU2o	PO	U	OP	Q	52o
UO
QUQUQQUQUQ0
U
2P!)r,r(rO
rXr*r�c�l�[Q2oQUm]Um]UmVmVmV#mU!)rM
rG
)rqr)r"�
end_linenorKrg�
end_offset)rKrgrx
rys&&& r"�_make_syntax_error�bTestColorizedTraceback.test_colorized_syntax_error_ascii_display_width.<locals>._make_syntax_error�s6���.�/�C�%�C�L��C�J��C�N��H��J�'�N��Jr$za$
)rgrx
r�rI
rJ
rK
r�z
    arL
r�rkrmrqr�rM
z$
rcz$zab$
z
    abz   z^^^z  )r<
rBr
rr�r/ru)r9r,r(rO
rXr*r�ry
ryrEr�s&          r"�/test_colorized_syntax_error_ascii_display_width�FTestColorizedTraceback.test_colorized_syntax_error_ascii_display_width�s���
�3�K���3�K���3�K���3�K��
�D�\���3�K��	�!��A�!�D���*�*�9�9�#�>��������T��2�3���
�
��b�T��A�3�g�a�S��!��5��s�!�A�3���)�A�3�a��s�"��c��Q�C�r�!��N�1�#�R�
9�
�	
�!��1��C���*�*�9�9�#�>��������T��2�3���
�
��1�#�U�1�#���#�g�Y�q�c��
%��	
�!���a�H���*�*�9�9�#�>��������T��2�3���
�
��A�3�a��s�#��)�A�3�a��s�"�
&��	
r$r�)r�r�r�r�r�r?
rD
rQ
rZ
rj
rs
r{
r�r�r�s@r"r,
r,
�s5�����G�I�@;�"2�&5�<(5�T:�6:
�:
r$r,
c�4`�\sQsQsnQsQsQsQsUsP!)�TestLazyImportSuggestionsi�c�v�[OQ2o[QU2vq#oUOQU2P!)z{
            lazy import test.test_lazy_import.data.pkg.bar
            test.test_lazy_import.data.pkg.nonexistent
        r(�BAR_MODULE_LOADED)r�r�rrG�r9rr�r*r�s&    r"�0test_attribute_error_does_not_reify_lazy_imports�JTestLazyImportSuggestions.test_attribute_error_does_not_reify_lazy_imports�s;����� �
��3�4��>���F����-�v�6r$c��[OQ2o[QU2vq#oUOQU2UO	QU2P!)a
            import traceback
            lazy import test.test_lazy_import.data.pkg.bar
            try:
                test.test_lazy_import.data.pkg.nonexistent
            except AttributeError:
                traceback.format_exc()
            print("OK")
        r(sOKr�
)r�r�rrurGr�
s&    r"�5test_traceback_formatting_does_not_reify_lazy_imports�OTestLazyImportSuggestions.test_traceback_formatting_does_not_reify_lazy_imports�sG����� �
��.�d�D�9���F��
�
�e�V�$����-�v�6r$c��[OQ2o[QU2vq#oUOQU2UO	QU2P!)z�
            lazy import test.test_lazy_import.data.pkg.bar
            # Typo for __name__
            test.test_lazy_import.data.pkg.__nme__
        r(s__name__r�
)r�r�rrurGr�
s&    r"�3test_suggestion_still_works_for_non_lazy_attributes�MTestLazyImportSuggestions.test_suggestion_still_works_for_non_lazy_attributes�sG����� �
��
3�4��>���F��
�
�k�6�*����-�v�6r$r�)	r�r�r�r�r�
r�
r�
r�r�r�s@r"r~
r~
�s����	7�
7�	7�	7r$r~
c�F`�\sQsQsn\O
Q2sQsUsP!)�LazyImportTestic�"�[QQ.2P!)rBr5)rrNs&r"�test_lazy_import�LazyImportTest.test_lazy_imports���K�+��7r$r�)	r�r�r�r�rrr�
r�r�r�s@r"r�
r�
s�������8��8r$r�
)r��	f_globalsrk)r��	tb_linenorw�tb_lasti)t�collectionsrr�rryrDr
r�r�r�
unittest.mockr
r�r8r�r��importlib.machineryr
r
r�rr��test.supportrrrrr	r
rr�test.support.os_helperr
rr�test.support.script_helperrrr�test.support.import_helperrrrrr�r�rB�	functoolsr�pathlibrr5r�r�r��co_positionsr�r��color_overrides�
default_themer��getr�r<
r��parentr��TestCaser0r�r�r�r�r1r]r_rbrdr2r�rM�escaper0r�rrrrrr^rur�rr�rr�r'r+r��global_for_suggestionsr�r�r|r�r�r�r�r�r�r�r�r�r,
r~
r�
�main)r�r�s00r"�<module>r�
s^��#���
������	�	��
�
����
�:�:�:�<�;�[�[�B�L�������"*�j�"8�8�*�A��b�
��v�
�y�9�:�	�7�	��
��!D�
E�
�
�T�K�
L���C��T�3D�c�6�SV�W���'�'�1�1�7�7�9�
�9�������Q�4�:�:�<�(�!�+�9�
���X��-�-�0K�K��}I�X�&�&�}I�@	>�	>�
>�
>��)E����k1�k1��k1�\#;6��!2�!2�;6�z����&�'����� �������� �'����� ���������&�'����� ����E*�E*�R&��
&���Z�Z����=�)�2�9�9�_�+E�F�H�
� �	�(�+�+�-A�	� �	���"�(�"3�"3�5I�"� ��"�]+�]+�@ �
�5�x�7H�7H�
� �
�  ��4�h�6G�6G�� ��u,��"�"�u,�p&,��*�*�&,�R&$��!�!�&$�RqM��!�!�qM�f+�+��i��
�>��
jJ�X�.�.�jJ�ZZM�X�->�->�ZM�z��
�
� Q/�7�Q/�h(+�0�(+�V�0��m8�#@�m8�b�&� ������� � ��������&�������&�������� ���������� ��������C-�x� � �C-�Ld
�X�.�.�d
�L&7�� 1� 1�&7�R8�X�&�&�8��z���M�M�O���{n
s�4S

Youez - 2016 - github.com/yon3zu
LinuXploit