§
    2@Äjù`  ã                   ó¢  — d dl Z d dlZd dlmZ d dlZd dlmZmZm	Z	m
Z
 d dlmZmZ d dlmZmZmZmZ d dlmZmZmZmZmZmZmZmZmZmZmZ  G d„ de¦  «        Z  G d	„ d
e¦  «        Z! G d„ de¦  «        Z" G d„ de¦  «        Z# G d„ dee¦  «        Z$ G d„ de¦  «        Z%e G d„ de¦  «        ¦   «         Z&e'dk    r ej(        ¦   «          dS dS )é    N)Úproduct)ÚnjitÚtypedÚobjmodeÚprange)Úir_utilsÚir)ÚCompilerErrorÚNumbaPerformanceWarningÚTypingErrorÚUnsupportedBytecodeError)ÚTestCaseÚunittestÚcaptured_stdoutÚMemoryLeakMixinÚskip_parfors_unsupportedÚskip_unless_scipyÚexpected_failure_py311Úexpected_failure_py312Úexpected_failure_py313Úexpected_failure_py314Úexpected_failure_py315c                   ó   — e Zd ZdS )ÚMyErrorN)Ú__name__Ú
__module__Ú__qualname__© ó    úLC:\Projects\Historical\venv\Lib\site-packages\numba/tests/test_try_except.pyr   r      s   € € € € € Ø€Dr   r   c                   ó|   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zed„ ¦   «         Zd„ Zd„ Zd„ ZdS )ÚTestTryBareExceptzrTest the following pattern:

        try:
            <body>
        except Exception:
            <handling>
    c                 óÈ   ‡— t           d„ ¦   «         Št           ˆfd„¦   «         }|                       |d¦  «        d¦  «         |                       |d¦  «        d¦  «         d S )Nc                 ó   — | rt           ‚d S ©N©r   ©Úxs    r    Úinnerz5TestTryBareExcept.test_try_inner_raise.<locals>.inner"   s   € àð Ý�ðð r   c                 ó0   •— 	  ‰| ¦  «         dS #  Y dS xY w)Nú
not raisedÚcaughtr   )r(   r)   s    €r    Úudtz3TestTryBareExcept.test_try_inner_raise.<locals>.udt'   s*   ø€ ð Ø��a‘”�Ø#�|øð Ø�x�xøøøs   ƒ �Fr+   Tr,   ©r   ÚassertEqual)Úselfr-   r)   s     @r    Útest_try_inner_raisez&TestTryBareExcept.test_try_inner_raise!   s…   ø€ Ý	ð	ð 	ñ 
Œð	õ 
ð	 ð 	 ð 	 ð 	 ñ 
Œð	 ð 	×Ò˜˜˜U™œ \Ñ2Ô2Ð2Ø×Ò˜˜˜T™œ HÑ-Ô-Ð-Ð-Ð-r   c                 ó’  ‡— t           d„ ¦   «         Št           ˆfd„¦   «         }|                      t          ¦  «        5 } |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t	          |j        ¦  «        d¦  «         |                       |d¦  «        d¦  «         |                       |d¦  «        d¦  «         d S )	Nc                 óZ   — | dk    rt          d¦  «        ‚| dk    rt          d¦  «        ‚d S )Né   Úoneé   Útwor&   r'   s    r    r)   z5TestTryBareExcept.test_try_state_reset.<locals>.inner3   s3   € à�AŠvˆvÝ˜e‘n”nÐ$Ø�a’�Ý˜e‘n”nÐ$ð �r   c                 óZ   •— 	  ‰| ¦  «         d}n	#  d}Y nxY w| dk    r ‰d¦  «         |S )Nr+   r,   r   r6   r   )r(   Úresr)   s     €r    r-   z3TestTryBareExcept.test_try_state_reset.<locals>.udt:   sI   ø€ ðØ��a‘”�Ø"��øðØ���øøøØ�AŠvˆvØ��a‘”�ØˆJs   ƒ ‘r   r7   r4   r,   éÿÿÿÿr+   )r   ÚassertRaisesr   r/   ÚstrÚ	exception)r0   r-   Úraisesr)   s      @r    Útest_try_state_resetz&TestTryBareExcept.test_try_state_reset2   s  ø€ Ý	ð	%ð 	%ñ 
Œð	%õ 
ð	ð 	ð 	ð 	ñ 
Œð	ð ×Ò�wÑ'Ô'ð 	¨6ØˆC�‰FŒFˆFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×Ò�˜VÔ-Ñ.Ô.°Ñ6Ô6Ð6Ø×Ò˜˜˜Q™œ Ñ*Ô*Ð*Ø×Ò˜˜˜R™œ ,Ñ/Ô/Ð/Ð/Ð/s   ¾AÁAÁAc                 ó&   — t           d„ ¦   «         }|S )Nc                 óü   — | dk    rt          d¦  «         t          d¦  «        ‚| dk    rt          d¦  «         t          d¦  «        ‚| dk    rt          d¦  «         t          d	¦  «        ‚t          d
¦  «         d S )Nr4   Úcall_oner5   r6   Úcall_twor7   é   Ú
call_threeÚthreeÚ
call_other©Úprintr   r'   s    r    r)   z-TestTryBareExcept._multi_inner.<locals>.innerL   s�   € à�AŠvˆvÝ�jÑ!Ô!Ð!Ý˜e‘n”nÐ$Ø�a’�Ý�jÑ!Ô!Ð!Ý˜e‘n”nÐ$Ø�a’�Ý�lÑ#Ô#Ð#Ý˜gÑ&Ô&Ð&å�lÑ#Ô#Ð#Ð#Ð#r   )r   )r0   r)   s     r    Ú_multi_innerzTestTryBareExcept._multi_innerK   s"   € Ý	ð	$ð 	$ñ 
Œð	$ð ˆr   c                 ó¢  ‡— |                       ¦   «         Št          ˆfd„¦   «         }|                      t          ¦  «        5 }t	          ¦   «         5 } |ddd¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         g d¢¦  «         |                      t          |j	        ¦  «        d¦  «         t	          ¦   «         5 } |ddd¦  «         d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         g d¢¦  «         t	          ¦   «         5 } |ddd¦  «         d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         g d	¢¦  «         d S )
Nc                 ó"  •— 	 	 t          d¦  «          ‰| ¦  «         t          d¦  «         d S #  t          d¦  «          ‰|¦  «         t          d¦  «         Y d S xY w#  t          d¦  «          ‰|¦  «         t          d¦  «         Y d S xY w)NÚAÚBÚCÚDÚEÚF)rI   )r(   ÚyÚzr)   s      €r    r-   z.TestTryBareExcept.test_nested_try.<locals>.udt_   s˜   ø€ ððÝ˜#‘J”J�JØ�E˜!‘H”H�HÝ˜#‘J”J�J�J�JøðÝ˜#‘J”J�JØ�E˜!‘H”H�HÝ˜#‘J”J�J�J�J�JøøøøðÝ�c‘
”
�
Ø��a‘”�Ý�c‘
”
�
�
�
�
øøøs   „)/ ¯+AÁA  ÁA  Á +Br4   r6   rD   )rM   rB   rO   rC   rQ   rE   rF   r   )rM   rB   rO   rG   rP   )rM   rB   rO   rC   rQ   rG   rR   )
rJ   r   r;   r   r   r/   ÚgetvalueÚsplitr<   r=   )r0   r-   r>   Ústdoutr)   s       @r    Útest_nested_tryz!TestTryBareExcept.test_nested_try\   sÍ  ø€ Ø×!Ò!Ñ#Ô#ˆå	ð	ð 	ð 	ð 	ñ 
Œð	ð  ×Ò�wÑ'Ô'ð 	¨6Ý Ñ"Ô"ð  fØ��A�q˜!‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%ØAÐAÐAñ	
ô 	
ð 	
ð 	×Ò�˜VÔ-Ñ.Ô.°Ñ8Ô8Ð8õ ÑÔð 	 &ØˆC��1�a‰LŒLˆLð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%Ø5Ð5Ð5ñ	
ô 	
ð 	
õ ÑÔð 	 &ØˆC��1�a‰LŒLˆLð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%ØFÐFÐFñ	
ô 	
ð 	
ð 	
ð 	
sZ   ÁBÁA+ÁBÁ+A/	Á/BÁ2A/	Á3BÂBÂ	BÃ?DÄDÄ DÅ.FÆFÆFc                 ól  ‡— |                       ¦   «         Št          ˆfd„¦   «         }t          ¦   «         5 } |dd¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         g d¢¦  «         |                      |d¦  «         t          ¦   «         5 } |dd¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         g d¢¦  «         |                      |d¦  «         t          ¦   «         5 } |dd¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         g d¢¦  «         |                      |d	¦  «         d S )
Nc                 óº   •— 	 t          d¦  «         t          |¦  «        D ]"}t          |¦  «         || k    r ‰|¦  «         Œ#n#  t          d¦  «         Y nxY w|S )NrM   rN   )rI   Úrange)r(   ÚnÚir)   s      €r    r-   z/TestTryBareExcept.test_loop_in_try.<locals>.udtŒ   sl   ø€ ðÝ�c‘
”
�
Ý˜q™œð !ð !�AÝ˜!‘H”H�HØ˜A’v�vØ˜˜a™œ˜øð!øðÝ�c‘
”
�
�
�
øøøØˆHs   ƒAA ÁArD   é   )rM   Ú0Ú1Ú2Ú3rE   rN   r4   )rM   r_   r`   rB   rN   r   )rM   r_   rG   r`   ra   r6   )rJ   r   r   r/   rU   rV   )r0   r-   rW   r9   r)   s       @r    Útest_loop_in_tryz"TestTryBareExcept.test_loop_in_try‰   s€  ø€ Ø×!Ò!Ñ#Ô#ˆå	ð		ð 		ð 		ð 		ñ 
Œð		õ ÑÔð 	 &Ø�#�a˜‘)”)ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%Ø8Ð8Ð8ñ	
ô 	
ð 	
ð 	×Ò˜˜aÑ Ô Ð õ ÑÔð 	 &Ø�#�a˜‘)”)ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%Ø,Ð,Ð,ñ	
ô 	
ð 	
ð 	×Ò˜˜aÑ Ô Ð õ ÑÔð 	 &Ø�#�a˜‘)”)ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%Ø.Ð.Ð.ñ	
ô 	
ð 	
ð 	×Ò˜˜aÑ Ô Ð Ð Ð s5   ¶AÁAÁAÂ:CÃCÃCÄ>EÅEÅEc                 ó2  — t           d„ ¦   «         }t          ¦   «         5 } |d¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         ddg¦  «         |                      |d¦  «         t          ¦   «         5 } |d¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         ddg¦  «         |                      |d¦  «         d S )	Nc                 ó–   — 	 t          d¦  «         | rt          d¦  «        ‚t          d¦  «         n#  t          d¦  «         Y dS xY wdS )NrM   Úmy_errorrN   rO   éA  é{   rH   r'   s    r    r-   z0TestTryBareExcept.test_raise_in_try.<locals>.udt´   sU   € ðÝ�c‘
”
�
Øð .Ý! *Ñ-Ô-Ð-Ý�c‘
”
�
�
øðÝ�c‘
”
�
Ø�s�søøøØ�3s	   ‚/2 ²ATrM   rO   rg   FrN   rh   ©r   r   r/   rU   rV   ©r0   r-   rW   r9   s       r    Útest_raise_in_tryz#TestTryBareExcept.test_raise_in_try³   sŸ  € Ý	ð		ð 		ñ 
Œð		õ ÑÔð 	 &Ø�#�d‘)”)ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%Ø�#ˆJñ	
ô 	
ð 	
ð 	×Ò˜˜cÑ"Ô"Ð"õ ÑÔð 	 &Ø�#�e‘*”*ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%Ø�#ˆJñ	
ô 	
ð 	
ð 	×Ò˜˜cÑ"Ô"Ð"Ð"Ð"ó   Ÿ7·;¾;Â"B:Â:B>ÃB>c                 ó.  ‡— t           ˆfd„¦   «         Št          ¦   «         5 } ‰d¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |¦  «         |                      |                     ¦   «                              ¦   «         dg¦  «         d S )Nc                 óŒ   •— | dk    r'	  ‰| dz
  ¦  «         n#  t          d¦  «         Y dS xY w| dk    rt          d¦  «        ‚d S )Nr   r4   ÚCAUGHTé   r=   )rI   Ú
ValueError)r(   Úfoos    €r    rr   z-TestTryBareExcept.test_recursion.<locals>.fooÕ   s]   ø€ à�1ŠuˆuðØ�C˜˜A™‘J”J�J�JøðÝ˜(‘O”O�OØ˜2˜2øøøØ�AŠvˆvÝ  Ñ-Ô-Ð-ð ˆvs   ‰ ˜,é
   ro   )r   r   ÚassertIsNoner/   rU   rV   )r0   rW   r9   rr   s      @r    Útest_recursionz TestTryBareExcept.test_recursionÔ   sÝ   ø€ Ý	ð	.ð 	.ð 	.ð 	.ñ 
Œð	.õ ÑÔð 	 &Ø�#�b‘'”'ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò˜#ÑÔÐØ×Ò˜ŸšÑ*Ô*×0Ò0Ñ2Ô2°X°KÑAÔAÐAÐAÐAs   ¢:º>Á>c                 óN  ‡— t           d„ ¦   «         Št           ˆfd„¦   «         }t          ¦   «         5 } |d¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |d¦  «         |                      |                     ¦   «                              ¦   «         g ¦  «         d S )Nc              3   ó~   K  — | dk    r4	 dV — t          d¦  «        ‚# t          $ r t          d¦  «         Y d S w xY wd S )Nr   é   r=   ro   )rq   Ú	ExceptionrI   r'   s    r    rr   z)TestTryBareExcept.test_yield.<locals>.fooç   s^   è è € à�1Šuˆuð$Ø�G�G�GÝ$ [Ñ1Ô1Ð1øÝ ð $ð $ð $Ý˜(‘O”O�O�O�O�Oð$øøøð	 ˆus   Š �:¹:c                 ó4   •— t           ‰| ¦  «        ¦  «        S r%   )Únext)rT   rr   s    €r    Úbarz)TestTryBareExcept.test_yield.<locals>.barð   s   ø€ å˜˜˜A™œ‘<”<Ðr   rs   rx   ri   )r0   r|   rW   r9   rr   s       @r    Ú
test_yieldzTestTryBareExcept.test_yieldæ   sø   ø€ Ý	ð	$ð 	$ñ 
Œð	$õ 
ð	 ð 	 ð 	 ð 	 ñ 
Œð	 õ ÑÔð 	 &Ø�#�b‘'”'ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò˜˜aÑ Ô Ð Ø×Ò˜ŸšÑ*Ô*×0Ò0Ñ2Ô2°BÑ7Ô7Ð7Ð7Ð7s   ²A
Á
AÁAc                 óþ   — t           d„ ¦   «         }t          ¦   «         5 } |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         dg¦  «         d S )Nc                 ó    — d„ } |¦   «          d S )Nc                  óP   — 	 t          d¦  «        ‚#  t          d¦  «         Y dS xY w)Nr=   ro   rp   ©rq   rI   r   r   r    r|   z9TestTryBareExcept.test_closure2.<locals>.foo.<locals>.barý   s0   € ðÝ$ [Ñ1Ô1Ð1øðÝ˜(‘O”O�OØ˜2˜2øøøs   ‚ ‘%r   ©r(   r|   s     r    rr   z,TestTryBareExcept.test_closure2.<locals>.fooû   s"   € ðð ð ð ˆC‰EŒEˆEˆEˆEr   rs   ro   ri   ©r0   rr   rW   s      r    Útest_closure2zTestTryBareExcept.test_closure2ú   s¾   € Ý	ð	ð 	ñ 
Œð	õ ÑÔð 	 &ØˆC�‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò˜ŸšÑ*Ô*×0Ò0Ñ2Ô2°X°KÑAÔAÐAÐAÐAó   Ÿ7·;¾;c                 ó4  — t           d„ ¦   «         }t          ¦   «         5 } |d¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |g d¢¦  «         |                      |                     ¦   «                              ¦   «         dgdz  ¦  «         d S )Nc                 ó@   — d„ }d„ t          |g d¢¦  «        D ¦   «         S )Nc                 óR   — 	 t          d¦  «        ‚#  t          d¦  «         | cY S xY w)Nr=   ro   r�   ©rT   s    r    r|   z9TestTryBareExcept.test_closure3.<locals>.foo.<locals>.bar  s2   € ðÝ$ [Ñ1Ô1Ð1øðÝ˜(‘O”O�OØ�H�H�Høøøs   ‚ ‘&c                 ó   — g | ]}|‘ŒS r   r   ©Ú.0r(   s     r    ú
<listcomp>z@TestTryBareExcept.test_closure3.<locals>.foo.<locals>.<listcomp>  s   € Ð3Ð3Ð3˜!�AÐ3Ð3Ð3r   ©r4   r6   rD   )Úmapr‚   s     r    rr   z,TestTryBareExcept.test_closure3.<locals>.foo  s5   € ðð ð ð 4Ð3�s 3¨	¨	¨	Ñ2Ô2Ð3Ñ3Ô3Ð3r   rs   rŽ   ro   rD   ri   ©r0   rr   rW   r9   s       r    Útest_closure3zTestTryBareExcept.test_closure3
  sÜ   € Ý	ð	4ð 	4ñ 
Œð	4õ ÑÔð 	 &Ø�#�b‘'”'ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò˜˜i˜i˜iÑ(Ô(Ð(Ø×Ò˜ŸšÑ*Ô*×0Ò0Ñ2Ô2°X°KÀ!±OÑEÔEÐEÐEÐEr…   c                 ó  — t           d„ ¦   «         }t          ¦   «         5 } |d¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         d¦  «         |                      |¦  «         t          ¦   «         5 } |d¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «         d¦  «         |                      |g d¢¦  «         d S )Nc                 ót   — d„ }	 d„ t          |ddd| g¦  «        D ¦   «         S #  t          d¦  «         Y d S xY w)Nc                 ó0   — | dk     rt          d¦  «        ‚| S )Nr   r=   ©rq   r‰   s    r    r|   z9TestTryBareExcept.test_closure4.<locals>.foo.<locals>.bar  s   € Ø�q’5�5Ý$ [Ñ1Ô1Ð1Ø�r   c                 ó   — g | ]}|‘ŒS r   r   r‹   s     r    r�   z@TestTryBareExcept.test_closure4.<locals>.foo.<locals>.<listcomp>$  s   € Ð:Ð:Ð:˜a˜Ð:Ð:Ð:r   r4   r6   rD   ro   )r�   rI   r‚   s     r    rr   z,TestTryBareExcept.test_closure4.<locals>.foo  sV   € ðð ð ð
 Ø:Ð:¥3 s¨Q°°1°a¨LÑ#9Ô#9Ð:Ñ:Ô:Ð:øð Ý�h‘”����øøøs   …# £7r:   ro   é   Ú )r4   r6   rD   r—   )r   r   r/   rU   Ústriprt   r�   s       r    Útest_closure4zTestTryBareExcept.test_closure4  su  € Ý	ð		 ð 		 ñ 
Œð		 õ ÑÔð 	 &Ø�#�b‘'”'ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò˜ŸšÑ*Ô*×0Ò0Ñ2Ô2°HÑ=Ô=Ð=Ø×Ò˜#ÑÔÐåÑÔð 	 &Ø�#�a‘&”&ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×Ò˜ŸšÑ*Ô*¨BÑ/Ô/Ð/Ø×Ò˜˜l˜l˜lÑ+Ô+Ð+Ð+Ð+s   Ÿ7·;¾;ÂB7Â7B;Â>B;c                 óü   — t           d„ ¦   «         }t          ¦   «         5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         dg¦  «         d S )Nc                  óž   — t          j        d¦  «        } 	 t           j                             | ¦  «        }d S #  t	          d¦  «         |cY S xY w)N)r—   r—   ro   )ÚnpÚzerosÚlinalgÚcholeskyrI   )ÚaÚchols     r    rr   z0TestTryBareExcept.test_real_problem.<locals>.foo5  sL   € å”˜Ñ Ô ˆAðÝ”y×)Ò)¨!Ñ,Ô,���øðÝ�h‘”�Ø���øøøs	   –7 ·Aro   ri   rƒ   s      r    Útest_real_problemz#TestTryBareExcept.test_real_problem3  s¼   € å	ð	ð 	ñ 
Œð	õ ÑÔð 	 &ØˆC‰EŒEˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò˜ŸšÑ*Ô*×0Ò0Ñ2Ô2°X°KÑ@Ô@Ð@Ð@Ð@s   Ÿ6¶:½:c           	      ó:  — t           d„ ¦   «         }t          ¦   «         5 } |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         dgdz  d„ t          dd¦  «        D ¦   «         z   ¦  «         d S )Nc                 ó.  — t          | ¦  «        D ]&}	 |dk    rt          ‚Œ#  t          d¦  «         Y Œ$xY w	 	 	 |dk    rt          ‚n#  t          d¦  «         t          ‚xY wd S #  t          d¦  «         t          ‚xY w#  t          d¦  «         Y d S xY w)Nr^   ro   ÚCAUGHT1ÚCAUGHT2ÚCAUGHT3)r[   rq   rI   )r\   r]   s     r    rr   z,TestTryBareExcept.test_for_loop.<locals>.fooD  sÎ   € õ ˜1‘X”Xð %ð %�ð$Ø˜1’u�uÝ(Ð(ð øð$Ý˜(‘O”O�O�O�Oøøøð%ð	)ð-Ø  1šu˜uÝ&0Ð 0ð  %øð-Ý! )Ñ,Ô,Ð,Ý",Ð,øøøð	  %˜uøð
)Ý˜iÑ(Ô(Ð(Ý(Ð(øøøøð%Ý˜)Ñ$Ô$Ð$Ð$Ð$Ð$øøøs1   “!¡4ºA ÁA% ÁA Á A% Á%A=Á=B  Â Brs   ro   r—   c                 ó   — g | ]}d |z  ‘ŒS )zCAUGHT%sr   )rŒ   r]   s     r    r�   z3TestTryBareExcept.test_for_loop.<locals>.<listcomp>a  s   € ÐCÐCÐC°!˜z¨A™~ÐCÐCÐCr   r4   )r   r   r/   rU   rV   r[   rƒ   s      r    Útest_for_loopzTestTryBareExcept.test_for_loopC  sê   € Ý	ð	%ð 	%ñ 
Œð	%õ. ÑÔð 	 &ØˆC�‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%ØˆK˜!‰OÐCÐCµu¸QÀ±{´{ÐCÑCÔCÑCñ	
ô 	
ð 	
ð 	
ð 	
r…   c                 óh   — t           d„ ¦   «         } |d¦  «        }|                      |d¦  «         d S )Nc                 ó   — 	 n#  Y nxY w| S r%   r   r'   s    r    rr   z,TestTryBareExcept.test_try_pass.<locals>.fooe  s   € ðØøðØ�øøøØˆHs   ƒrh   r.   )r0   rr   r9   s      r    Útest_try_passzTestTryBareExcept.test_try_passd  sF   € Ý	ð	ð 	ñ 
Œð	ð ˆc�#‰hŒhˆØ×Ò˜˜cÑ"Ô"Ð"Ð"Ð"r   c                 óî   — t           d„ ¦   «         }|                      t          ¦  «        5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   |                      dt	          |j        ¦  «        ¦  «         d S )Nc                  ó.   — 	 t          d¦  «        ‚#  ‚ xY w©NÚERRORr•   r   r   r    r-   z6TestTryBareExcept.test_try_except_reraise.<locals>.udtq  s!   € ðÝ  Ñ)Ô)Ð)øðØøøøs   ‚ ‘ú4The re-raising of an exception is not yet supported.©r   r;   r   ÚassertInr<   r=   ©r0   r-   r>   s      r    Útest_try_except_reraisez)TestTryBareExcept.test_try_except_reraisep  óÀ   € Ý	ð	ð 	ñ 
Œð	ð ×ÒÕ7Ñ8Ô8ð 	¸FØˆC‰EŒEˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�ŠØBÝ�Ô Ñ!Ô!ñ	
ô 	
ð 	
ð 	
ð 	
ó   «AÁAÁ	AN)r   r   r   Ú__doc__r1   r?   rJ   rX   rc   rk   ru   r}   r„   r‘   rš   r   r£   rª   r­   r¶   r   r   r    r"   r"      s  € € € € € ðð ð.ð .ð .ð"0ð 0ð 0ð2ð ð ð"+
ð +
ð +
ðZ(!ð (!ð (!ðT#ð #ð #ðBBð Bð Bð$8ð 8ð 8ð(Bð Bð Bð Fð Fð Fð",ð ,ð ,ð0 ðAð Añ ÔðAð
ð 
ð 
ðB
#ð 
#ð 
#ð
ð 
ð 
ð 
ð 
r   r"   c                   ó2   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestTryExceptCaughtc                 óÚ  — t           d„ ¦   «         }t          ¦   «         5 } |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         g d¢¦  «         t          ¦   «         5 } |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         g d¢¦  «         d S )Nc                 óÄ   — 	 t          d¦  «         | rt          d¦  «        ‚t          d¦  «         n# t          $ r t          d¦  «         Y nw xY wt          d¦  «         d S )NrM   Ú321rN   rO   rP   ©rI   ÚZeroDivisionErrorry   r'   s    r    r-   z5TestTryExceptCaught.test_catch_exception.<locals>.udt‚  sn   € ðÝ�c‘
”
�
Øð 3Ý+¨EÑ2Ô2Ð2Ý�c‘
”
�
�
øÝð ð ð Ý�c‘
”
�
�
�
ðøøøå�#‰JŒJˆJˆJˆJs   ‚/2 ²AÁAT)rM   rO   rP   F©rM   rN   rP   ri   )r0   r-   rW   s      r    Útest_catch_exceptionz(TestTryExceptCaught.test_catch_exception�  ss  € Ý	ð	ð 	ñ 
Œð	õ ÑÔð 	 &ØˆC�‰IŒIˆIð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%ØˆOˆOñ	
ô 	
ð 	
õ ÑÔð 	 &ØˆC�‰JŒJˆJð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%ØˆOˆOñ	
ô 	
ð 	
ð 	
ð 	
s   Ÿ7·;¾;ÂB$Â$B(Â+B(c                 ó2  — t           d„ ¦   «         }t          ¦   «         5 } |d¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         ddg¦  «         |                      |d¦  «         t          ¦   «         5 } |d¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      |                     ¦   «                              ¦   «         g d¢¦  «         |                      |d¦  «         d S )	Nc                 óÀ   — 	 t          d¦  «         | rt          ‚t          d¦  «         d}n## t          $ r t          d¦  «         d}|cY S w xY wt          d¦  «         |S )NrM   rN   rh   rO   rg   rP   r¿   )r(   Úrs     r    r-   z5TestTryExceptCaught.test_return_in_catch.<locals>.udt   sx   € ð	Ý�c‘
”
�
Øð ,Ý+Ð+Ý�c‘
”
�
Ø��øÝð ð ð Ý�c‘
”
�
Ø�Ø���ðøøøõ �#‰JŒJˆJØˆHs   ‚), ¬AÁATrM   rO   rg   FrÁ   rh   ri   rj   s       r    Útest_return_in_catchz(TestTryExceptCaught.test_return_in_catchŸ  sŸ  € Ý	ð	ð 	ñ 
Œð	õ ÑÔð 	 &Ø�#�d‘)”)ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%Ø�#ˆJñ	
ô 	
ð 	
ð 	×Ò˜˜cÑ"Ô"Ð"õ ÑÔð 	 &Ø�#�e‘*”*ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×ÒØ�OŠOÑÔ×#Ò#Ñ%Ô%ØˆOˆOñ	
ô 	
ð 	
ð 	×Ò˜˜cÑ"Ô"Ð"Ð"Ð"rl   c                 óð   — t           d„ ¦   «         }|                      t          ¦  «        5 } |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                      dt	          |j        ¦  «        ¦  «         d S )Nc                 óV   — 	 | rt           ‚d}n# t          $ r}d}|cY d }~S d }~ww xY w|S )Nrh   rg   )rÀ   ry   )r(   rÅ   Úes      r    r-   z1TestTryExceptCaught.test_save_caught.<locals>.udtÄ  sV   € ðØð ,Ý+Ð+Ø��øÝð ð ð Ø�Ø������øøøøðøøøð ˆHs   ‚ Ž
&˜!›&¡&Tz3Exception object cannot be stored into variable (e)r³   rµ   s      r    Útest_save_caughtz$TestTryExceptCaught.test_save_caughtÃ  sÂ   € Ý	ð	ð 	ñ 
Œð	ð ×ÒÕ7Ñ8Ô8ð 	¸FØˆC�‰IŒIˆIð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�ŠØAÝ�Ô Ñ!Ô!ñ	
ô 	
ð 	
ð 	
ð 	
s   «AÁAÁ
Ac                 óî   — t           d„ ¦   «         }|                      t          ¦  «        5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   |                      dt	          |j        ¦  «        ¦  «         d S )Nc                  ó@   — 	 t          d¦  «        ‚# t          $ r ‚ w xY wr°   ©rq   ry   r   r   r    r-   z8TestTryExceptCaught.test_try_except_reraise.<locals>.udt×  s3   € ðÝ  Ñ)Ô)Ð)øÝð ð ð Øðøøøs   ‚ ‘r²   r³   rµ   s      r    r¶   z+TestTryExceptCaught.test_try_except_reraiseÖ  r·   r¸   c                 óî   — t           d„ ¦   «         }|                      t          ¦  «        5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   |                      dt	          |j        ¦  «        ¦  «         d S )Nc                  ó`   — 	 t          d¦  «        ‚# t          $ r 	 ‚ # t          $ r ‚ w xY ww xY wr°   rÍ   r   r   r    r-   z>TestTryExceptCaught.test_try_except_reraise_chain.<locals>.udtæ  sV   € ðÝ  Ñ)Ô)Ð)øÝð ð ð ðØøÝ ð ð ð Øðøøøðøøøs   ‚ ‘
-œ�)©-r²   r³   rµ   s      r    Útest_try_except_reraise_chainz1TestTryExceptCaught.test_try_except_reraise_chainå  sÀ   € Ý	ð	ð 	ñ 
Œð	ð ×ÒÕ7Ñ8Ô8ð 	¸FØˆC‰EŒEˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�ŠØBÝ�Ô Ñ!Ô!ñ	
ô 	
ð 	
ð 	
ð 	
r¸   c                 ó¢   — t           d„ ¦   «         }|                       |d¦  «        d¦  «         |                       |d¦  «        d¦  «         d S )Nc                 ó:   — 	 d| z   d| z  S # t           $ r Y dS w xY w)Nr4   é­Þ  )ry   ©rS   s    r    r-   z7TestTryExceptCaught.test_division_operator.<locals>.udtú  s?   € ðØ�A‘�ð ˜1‘u�øõ ð ð ð Ø�v�vðøøøs   ‚ Œ
™r   rÓ   r6   g      à?r.   ©r0   r-   s     r    Útest_division_operatorz*TestTryExceptCaught.test_division_operator÷  sa   € õ 
ð	ð 	ñ 
Œð	ð 	×Ò˜˜˜Q™œ Ñ(Ô(Ð(Ø×Ò˜˜˜Q™œ Ñ%Ô%Ð%Ð%Ð%r   N)	r   r   r   rÂ   rÆ   rÊ   r¶   rÐ   rÖ   r   r   r    r»   r»   €  so   € € € € € ð
ð 
ð 
ð<"#ð "#ð "#ðH
ð 
ð 
ð&
ð 
ð 
ð
ð 
ð 
ð$&ð &ð &ð &ð &r   r»   c                   ó$   — e Zd ZdZd„ Zd„ Zd„ ZdS )ÚTestTryExceptNestedzTests for complicated nestingc                 óf  — t          ¦   «         5 } ||i |¤Ž d d d ¦  «         n# 1 swxY w Y   |                     ¦   «         }t          ¦   «         5 } ||i |¤Ž d d d ¦  «         n# 1 swxY w Y   |                     ¦   «         }|                      ||d                     ||¦  «        ¬¦  «         d S )Nzargs={} kwargs={})Úmsg)r   rU   r/   Úformat)r0   ÚcfuncÚpyfuncÚargsÚkwargsrW   ÚexpectÚgots           r    Úcheck_comparez!TestTryExceptNested.check_compare
  sE  € ÝÑÔð 	$ &ØˆF�DÐ#˜FÐ#Ð#Ð#ð	$ð 	$ð 	$ñ 	$ô 	$ð 	$ð 	$ð 	$ð 	$ð 	$ð 	$øøøð 	$ð 	$ð 	$ð 	$à—’Ñ"Ô"ˆåÑÔð 	# &ØˆE�4Ð"˜6Ð"Ð"Ð"ð	#ð 	#ð 	#ñ 	#ô 	#ð 	#ð 	#ð 	#ð 	#ð 	#ð 	#øøøð 	#ð 	#ð 	#ð 	#à�oŠoÑÔˆØ×ÒØ�CØ#×*Ò*¨4°Ñ8Ô8ð 	ñ 	
ô 	
ð 	
ð 	
ð 	
s   �	$¤(«(Á	A&Á&A*Á-A*c           	      óä   — t           d„ ¦   «         }t          t          ddgd¬¦  «        ¦  «        }|                      |¦  «         |D ]'\  }}}}|                      ||j        ||||¬¦  «         Œ(d S )Nc                 óØ  — t          d¦  «         | �rHt          d¦  «         	 t          d¦  «         |rt          d¦  «         t          d¦  «        ‚t          d¦  «         t          d¦  «         nÛ# t          $ rÎ t          d¦  «         	 t          d	¦  «         	 t          d
¦  «         |rt          d¦  «         t          d¦  «        ‚t          d¦  «         t          d¦  «         n# t          $ r t          d¦  «         Y nw xY wt          d¦  «         n# t          $ r t          d¦  «         Y nw xY wt          d¦  «         Y nw xY wt          d¦  «         t          d¦  «         d S )NrM   rN   rO   rP   rS   rQ   ÚGrR   ÚHÚIÚJrT   ÚKÚMÚLÚOÚNÚPÚQÚR©rI   r   ry   ©r(   rS   rT   Úps       r    r-   z5TestTryExceptNested.test_try_except_else.<locals>.udt  s~  € å�#‰JŒJˆJØñ Ý�c‘
”
�
ðÝ˜#‘J”J�JØð +Ý˜c™
œ
˜
Ý% c™lœlÐ*Ý˜#‘J”J�Jõ* ˜#‘J”J�J�Jøõ) !ð ð ð Ý˜#‘J”J�Jð#Ý˜c™
œ
˜
ð	'Ý! #™JœJ˜JØ ð 3Ý % c¡
¤
 
Ý&-¨c¡l¤lÐ 2Ý! #™JœJ˜Jõ " #™JœJ˜J˜Jøõ  )ð 'ð 'ð 'Ý! #™JœJ˜J˜J˜Jð'øøøõ ˜c™
œ
˜
˜
øõ %ð #ð #ð #Ý˜c™
œ
˜
˜
˜
ð#øøøõ ˜#‘J”J�J�J�Jð%øøøõ* �c‘
”
�
Ý�#‰JŒJˆJˆJˆJsY   £>A1 Á1E	ÂDÂ>C)ÃDÃ)DÄDÄDÄDÄE	ÄD4Ä1E	Ä3D4Ä4E	ÅE	TFr—   ©Úrepeatrò   ©r   Úlistr   Ú
assertTruerâ   Úpy_func)r0   r-   Úcasesr(   rS   rT   ró   s          r    Útest_try_except_elsez(TestTryExceptNested.test_try_except_else  s¡   € Ý	ð 	ð  	ñ 
Œð 	õD •W˜d E˜]°1Ð5Ñ5Ô5Ñ6Ô6ˆØ�Š˜ÑÔÐØð 	ð 	‰JˆAˆq�!�QØ×ÒØ�S”[Ø�q˜A ð ñ ô ð ð ð	ð 	r   c                 óÜ   — t           d„ ¦   «         }t          t          ddgd¬¦  «        ¦  «        }|                      |¦  «         |D ]#\  }}|                      ||j        ||¬¦  «         Œ$d S )Nc                 ó˜  — 	 t          d¦  «         | rt          d¦  «         t          ‚t          d¦  «         n#  t          d¦  «         Y nxY w	 t          d¦  «         |rt          d¦  «         t          ‚	 t          d¦  «         n# t          $ r t          d¦  «         Y nw xY wt          d	¦  «         d S # t          d	¦  «         w xY w# 	 t          d¦  «         |rt          d¦  «         t          ‚	 t          d¦  «         n# t          $ r t          d¦  «         Y nw xY wt          d	¦  «         w # t          d	¦  «         w xY wxY w)
NrM   rN   rO   rP   rQ   rR   ræ   rå   rç   rñ   ©ró   Úqs     r    r-   z8TestTryExceptNested.test_try_except_finally.<locals>.udtD  sc  € ðÝ�c‘
”
�
Øð "Ý˜#‘J”J�JÝ!�MÝ�c‘
”
�
�
øðÝ�c‘
”
�
�
�
øøøð
Ý˜#‘J”J�JØð &Ý˜c™
œ
˜
Ý%˜ð&õ ˜#‘J”J�J�Jøõ !ð ð ð Ý˜#‘J”J�J�J�Jðøøøõ
 ˜#‘J”J�J�J�Jø•E˜#‘J”J�J�Jøøøøð
Ý˜#‘J”J�JØð &Ý˜c™
œ
˜
Ý%˜ð&õ ˜#‘J”J�J�Jøõ !ð ð ð Ý˜#‘J”J�J�J�Jðøøøõ
 ˜#‘J”J�J�Jø•E˜#‘J”J�J�Jøøøøøøsz   ‚69 ¸C ¹AÁ
C Á'B Á8B8 ÂB$Â!B8 Â#B$Â$B8 Â8C	ÃE	Ã'DÃ6D5ÄD"ÄD5Ä!D"Ä"D5Ä%E	Ä5EÅE	TFr6   rô   rþ   rö   )r0   r-   rú   ró   rÿ   s        r    Útest_try_except_finallyz+TestTryExceptNested.test_try_except_finallyC  s˜   € Ý	ð	ð 	ñ 
Œð	õ, •W˜d E˜]°1Ð5Ñ5Ô5Ñ6Ô6ˆØ�Š˜ÑÔÐØð 	ð 	‰DˆAˆqØ×ÒØ�S”[Ø�qð ñ ô ð ð ð	ð 	r   N)r   r   r   r¹   râ   rû   r   r   r   r    rØ   rØ     sH   € € € € € Ø#Ð#ð
ð 
ð 
ð*ð *ð *ðXð ð ð ð r   rØ   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTestTryExceptRefctc                 óN  — t           d„ ¦   «         } |dd¬¦  «        }|                      t          |¦  «        t          t          d¦  «        ¦  «        ¦  «          |dd¬¦  «        }|                      t          |¦  «        t          t          d¦  «        ¦  «        ¦  «         d S )Nc                 ó¼   — t          j        ¦   «         }	 t          | ¦  «        D ]$}||k    rt          ‚|                     |¦  «         Œ%	 |S # t
          $ r |cY S w xY wr%   )r   ÚListr[   Ú
IndexErrorÚappendry   )r\   Úraise_atÚlstr]   s       r    r-   z6TestTryExceptRefct.test_list_direct_raise.<locals>.udtf  sy   € å”*‘,”,ˆCðÝ˜q™œð "ð "�AØ˜H’}�}Ý(Ð(Ø—J’J˜q‘M”M�M�Mð"ð �
øõ ð ð ð Ø�
�
�
ðøøøs   •4A ÁAÁArs   r^   ©r  ©r   r/   r÷   r[   )r0   r-   Úouts      r    Útest_list_direct_raisez)TestTryExceptRefct.test_list_direct_raisee  s›   € Ý	ð
	ð 
	ñ 
Œð
	ð ˆc�"˜qÐ!Ñ!Ô!ˆØ×Ò�˜c™œ¥D­¨q©¬¡N¤NÑ3Ô3Ð3Øˆc�"˜rÐ"Ñ"Ô"ˆØ×Ò�˜c™œ¥D­¨r©¬¡O¤OÑ4Ô4Ð4Ð4Ð4r   c           	      ó„  ‡— t           d„ ¦   «         Št           ˆfd„¦   «         } |dd¬¦  «        }|                      t          |¦  «        dgt          t          d¦  «        ¦  «        z   ¦  «          |dd¬¦  «        }|                      t          |¦  «        dgt          t          d¦  «        ¦  «        z   ¦  «         d S )Nc                 ón   — t          |¦  «        D ]$}||k    rt          ‚|                      |¦  «         Œ%| S r%   )r[   r  r  )r	  r\   r  r]   s       r    Úappenderz=TestTryExceptRefct.test_list_indirect_raise.<locals>.appendery  s<   € å˜1‘X”Xð ð �Ø˜’=�=Ý$Ð$Ø—
’
˜1‘”��ØˆJr   c                 ó˜   •— t          j        ¦   «         }|                     d¦  «         	  ‰|| |¦  «         |S # t          $ r |cY S w xY w)Né¾  )r   r  r  ry   )r\   r  r	  r  s      €r    r-   z8TestTryExceptRefct.test_list_indirect_raise.<locals>.udt�  sf   ø€ å”*‘,”,ˆCØ�JŠJ�vÑÔÐðØ�˜˜a Ñ*Ô*Ð*ð �
øõ ð ð ð Ø�
�
�
ðøøøs   «: ºA	ÁA	rs   r^   r
  r  r  )r0   r-   r  r  s      @r    Útest_list_indirect_raisez+TestTryExceptRefct.test_list_indirect_raisex  sÏ   ø€ Ý	ð	ð 	ñ 
Œð	õ 
ð	ð 	ð 	ð 	ñ 
Œð	ð ˆc�"˜qÐ!Ñ!Ô!ˆØ×Ò�˜c™œ V H­tµE¸!±H´H©~¬~Ñ$=Ñ>Ô>Ð>Øˆc�"˜rÐ"Ñ"Ô"ˆØ×Ò�˜c™œ V H­tµE¸"±I´I©¬Ñ$>Ñ?Ô?Ð?Ð?Ð?r   c                 óî   — t           d„ ¦   «         }|                      t          ¦  «        5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   |                      t	          |j        ¦  «        d¦  «         d S )Nc                  ó  — 	 t          j        ¦   «         } t          d¦  «         |                      d¦  «         t          d¦  «         |                      d¦  «         t          d¦  «         | S # t          $ r t          d¦  «         Y d S w xY w)NrM   r   rN   ÚfdarO   rP   )r   r  rI   r  ry   )r	  s    r    r-   z<TestTryExceptRefct.test_incompatible_refinement.<locals>.udt’  s…   € ð	Ý”j‘l”l�Ý�c‘
”
�
Ø—
’
˜1‘”�Ý�c‘
”
�
Ø—
’
˜5Ñ!Ô!Ð!Ý�c‘
”
�
Ø�
øÝð ð ð Ý�c‘
”
�
�
�
�
ðøøøs   ‚A+A. Á.BÂ
Bz@Cannot refine type|cannot safely cast unicode_type to int(32|64))r   r;   r   ÚassertRegexr<   r=   rµ   s      r    Útest_incompatible_refinementz/TestTryExceptRefct.test_incompatible_refinement‘  sÁ   € Ý	ð
	ð 
	ñ 
Œð
	ð ×Ò�{Ñ+Ô+ð 	¨vØˆC‰EŒEˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×ÒÝ�Ô Ñ!Ô!ØOñ	
ô 	
ð 	
ð 	
ð 	
r¸   N)r   r   r   r  r  r  r   r   r    r  r  d  sD   € € € € € ð5ð 5ð 5ð&@ð @ð @ð2
ð 
ð 
ð 
ð 
r   r  c                   óÆ   — e Zd Zd„ Zeeeeed„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z	eeeeed„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z
d„ ZdS )ÚTestTryExceptOtherControlFlowc                 óB  — t           d„ ¦   «         }|                      t           |dd¦  «        ¦  «        t          t          d¦  «        ¦  «        ¦  «         |                      t           |dd¦  «        ¦  «        t          t          d¦  «        ¦  «        ¦  «         d S )Nc              3   óv   K  — t          | ¦  «        D ]&}	 ||k    rt          ‚|V — Œ# t          $ r Y  d S w xY wd S r%   )r[   rq   ry   )r\   r(   r]   s      r    r-   z5TestTryExceptOtherControlFlow.test_yield.<locals>.udt©  sh   è è € å˜1‘X”Xð ð �ðØ˜A’v�vÝ(Ð(Ø�G�G�G�GøÝ ð ð ð Ø�F�F�Fðøøøðð s   •'§
6µ6rs   r^   r  rÕ   s     r    r}   z(TestTryExceptOtherControlFlow.test_yield¨  s‹   € Ý	ð	ð 	ñ 
Œð	ð 	×Ò�˜c˜c " a™jœjÑ)Ô)­4µ°a±´©>¬>Ñ:Ô:Ð:Ø×Ò�˜c˜c " b™kœkÑ*Ô*­Dµ°r±´©O¬OÑ<Ô<Ð<Ð<Ð<r   c                 óò   — t           d„ ¦   «         }|                      t          ¦  «        5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   d}|                      |t	          |j        ¦  «        ¦  «         d S )Nc                  ó®   — 	 t          ¦   «         5  t          t          ¦   «         ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S # t          $ r Y d S w xY wr%   )r   rI   Úobjectry   r   r   r    r-   z7TestTryExceptOtherControlFlow.test_objmode.<locals>.udt¼  s¦   € ðÝ‘Y”Yð $ð $Ý�&™(œ(‘O”O�Oð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $ð $ð $øåð ð ð Ø��ðøøøs.   ‚A �9¬A ¹=½A Á =ÁA Á
AÁAúlunsupported control flow: with-context contains branches (i.e. break/return/raise) that can leave the block ©r   r;   r
   r´   r<   r=   )r0   r-   r>   rÚ   s       r    Útest_objmodez*TestTryExceptOtherControlFlow.test_objmode¶  sÉ   € õ 
ð	ð 	ñ 
Œð	ð ×Ò�}Ñ-Ô-ð 	°ØˆC‰EŒEˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ðEˆà�ŠØÝ�Ô Ñ!Ô!ñ	
ô 	
ð 	
ð 	
ð 	
r¸   c                 óþ   ‡— d„ Št           ˆfd„¦   «         }|                      t          ¦  «        5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   d}|                      |t	          |j        ¦  «        ¦  «         d S )Nc                 ó‚   — t          j        t          t          |                      ¦   «         ¦  «        ¦  «        ¦  «        S r%   )r�   Úasarrayr÷   ÚreversedÚtolistr'   s    r    r|   zCTestTryExceptOtherControlFlow.test_objmode_output_type.<locals>.barÓ  s*   € Ý”:�d¥8¨A¯HªH©J¬JÑ#7Ô#7Ñ8Ô8Ñ9Ô9Ð9r   c                  óè   •— t          j        d¦  «        } t          j        | ¦  «        }	 t          d¬¦  «        5  | ‰| ¦  «        z  }d d d ¦  «         n# 1 swxY w Y   n# t          $ r Y nw xY w|S )Nr^   zintp[:]rÔ   )r�   ÚarangeÚ
zeros_liker   ry   )r(   rS   r|   s     €r    r"  zLTestTryExceptOtherControlFlow.test_objmode_output_type.<locals>.test_objmodeÖ  sÃ   ø€ å”	˜!‘”ˆAÝ”˜aÑ Ô ˆAðÝ˜yÐ)Ñ)Ô)ð  ð  à˜˜˜Q™œ‘K�Að ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  øøõ ð ð ð Ø�ðøøøàˆHs4   «A" »AÁ
A" ÁAÁA" ÁAÁA" Á"
A/Á.A/r   r!  )r0   r"  r>   rÚ   r|   s       @r    Útest_objmode_output_typez6TestTryExceptOtherControlFlow.test_objmode_output_typeÍ  sã   ø€ ð	:ð 	:ð 	:õ 
ð		ð 		ð 		ð 		ñ 
Œð		ð ×Ò�}Ñ-Ô-ð 	°ØˆL‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ðEˆà�ŠØÝ�Ô Ñ!Ô!ñ	
ô 	
ð 	
ð 	
ð 	
s   ±AÁAÁAc                 óž  — d„ }t          j        |¦  «        D ]}|j        dk    r nŒ|                      d¦  «         t	          j        i |j        ¦  «        }d}|j                             ¦   «         D ]A\  }}| 	                    t          j        ¦  «        D ]}d}|j        r||j        d         v rd}ŒŒB|s|                      d¦  «         d S d S )	Nc                  óL   — 	 t           ‚# t           $ r t          d¦  «        ‚w xY wr°   )ry   rq   r   r   r    rÝ   zMTestTryExceptOtherControlFlow.test_reraise_opcode_unreachable.<locals>.pyfuncð  s5   € ð*Ý�øÝð *ð *ð *Ý  Ñ)Ô)Ð)ð*øøøs   ‚	 ‰#ÚRERAISEz!expected RERAISE opcode not foundFz8Unreachable condition reached (op code RERAISE executed)r   Tz.expected RERAISE unreachable message not found)ÚdisÚget_instructionsÚopnameÚfailr   Úget_ir_of_codeÚ__code__ÚblocksÚitemsÚ
find_instsr	   ÚStaticRaiseÚexc_args)	r0   rÝ   ÚinstÚfunc_irÚfoundÚlblÚblkÚstmtrÚ   s	            r    Útest_reraise_opcode_unreachablez=TestTryExceptOtherControlFlow.test_reraise_opcode_unreachableë  s  € ð
	*ð 	*ð 	*õ
 Ô(¨Ñ0Ô0ð 	;ð 	;ˆDØŒ{˜iÒ'Ð'Ø�ð (ð �IŠIÐ9Ñ:Ô:Ð:ÝÔ)¨"¨f¬oÑ>Ô>ˆØˆØœ×,Ò,Ñ.Ô.ð 	!ð 	!‰HˆC�ØŸš¥r¤~Ñ6Ô6ð !ð !�ð Q�Ø”=ð ! S¨D¬M¸!Ô,<Ð%<Ð%<Ø �Eøð!ð ð 	HØ�IŠIÐFÑGÔGÐGÐGÐGð	Hð 	Hr   N)r   r   r   r}   r   r   r   r   r   r"  r+  r@  r   r   r    r  r  §  sÇ   € € € € € ð=ð =ð =ð ØØØØð
ð 
ñ Ôñ Ôñ Ôñ Ôñ Ôð

ð$ ØØØØð
ð 
ñ Ôñ Ôñ Ôñ Ôñ Ôð

ð2Hð Hð Hð Hð Hr   r  c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestTryExceptParforsc                 óÜ   — d„ }dg} ||Ž }|                         t          d¬¦  «        |¦  «        |Ž |¦  «         |                         t          d¬¦  «        |¦  «        |Ž |¦  «         d S )Nc                 ód   — d}t          | ¦  «        D ]}	 |dz  }Œ	# t          $ r |dz  }Y Œw xY w|S )Nr   r4   ©r   ry   ©r\   Úcr]   s      r    r-   z>TestTryExceptParfors.test_try_in_prange_reduction.<locals>.udt  sY   € ØˆAÝ˜A‘Y”Yð ð �ðØ˜‘F�A�AøÝ ð ð ð Ø˜‘F�A�A�AðøøøàˆHs   •›-¬-rs   F©ÚparallelT)r/   r   ©r0   r-   rÞ   rà   s       r    Útest_try_in_prange_reductionz1TestTryExceptParfors.test_try_in_prange_reduction  s“   € ð	ð 	ð 	ð ˆtˆØ��d�ˆØ×ÒÐ2Ð-� uÐ-Ñ-Ô-¨cÑ2Ô2°DÐ9¸6ÑBÔBÐBØ×ÒÐ1Ð,� tÐ,Ñ,Ô,¨SÑ1Ô1°4Ð8¸&ÑAÔAÐAÐAÐAr   c                 ó  — d„ }dg} ||Ž }|                         t          d¬¦  «        |¦  «        |Ž |¦  «         t          j        d¬¦  «        5 }t          j        dt
          ¦  «         |                         t          d¬¦  «        |¦  «        |Ž |¦  «         d d d ¦  «         n# 1 swxY w Y   |                       t          |¦  «        d¦  «         |                      d	t          |d
         ¦  «        ¦  «         d S )Nc                 ó^   — d}	 t          | ¦  «        D ]}|dz  }Œ	 |S # t          $ r Y dS w xY w)Nr   r4   rÓ   rE  rF  s      r    r-   zCTestTryExceptParfors.test_try_outside_prange_reduction.<locals>.udt  s\   € ØˆAðÝ ™œð ð �AØ˜‘F�A�Aðð
 �øõ ð ð ð Ø�v�vðøøøs   „ ž
,«,rs   FrH  T)ÚrecordÚalwaysr4   z5no transformation for parallel execution was possibler   )	r/   r   ÚwarningsÚcatch_warningsÚsimplefilterr   Úlenr´   r<   )r0   r-   rÞ   rà   Úws        r    Ú!test_try_outside_prange_reductionz6TestTryExceptParfors.test_try_outside_prange_reduction  se  € ð	ð 	ð 	ð ˆtˆØ��d�ˆØ×ÒÐ2Ð-� uÐ-Ñ-Ô-¨cÑ2Ô2°DÐ9¸6ÑBÔBÐBåÔ$¨DÐ1Ñ1Ô1ð 	F°QÝÔ! (Õ,CÑDÔDÐDØ×ÒÐ5Ð0�T¨4Ð0Ñ0Ô0°Ñ5Ô5°tÐ<¸fÑEÔEÐEð	Fð 	Fð 	Fñ 	Fô 	Fð 	Fð 	Fð 	Fð 	Fð 	Fð 	Føøøð 	Fð 	Fð 	Fð 	Fð 	×Ò�˜Q™œ Ñ#Ô#Ð#Ø�ŠÐMÝ˜!˜Aœ$‘i”iñ	!ô 	!ð 	!ð 	!ð 	!s   ÁAB(Â(B,Â/B,c                 ó  — d„ }t          j        d¦  «        dg} ||Ž }|                        t          d¬¦  «        |¦  «        |Ž |¦  «         |                        t          d¬¦  «        |¦  «        |Ž |¦  «         d S )Nc                 ó¾   — |                       ¦   «         }t          | j        ¦  «        D ]3}	 ||k    rt          ‚| |         |z   ||<   Œ# t          $ r d||<   Y Œ0w xY w|S ©Nr:   ©Úcopyr   Úsizerq   ry   ©Úarrr(   r  r]   s       r    r-   z8TestTryExceptParfors.test_try_in_prange_map.<locals>.udt3  s|   € Ø—(’(‘*”*ˆCÝ˜CœHÑ%Ô%ð  ð  �ð Ø˜A’v�vÝ(Ð(Ø  œV a™Z�C˜‘F�FøÝ ð  ð  ð  Ø�C˜‘F�F�Fð øøøàˆJs   ¬AÁAÁArs   é   FrH  T©r�   r)  ÚassertPreciseEqualr   rJ  s       r    Útest_try_in_prange_mapz+TestTryExceptParfors.test_try_in_prange_map2  óž   € ð		ð 		ð 		õ ”	˜"‘”˜qÐ!ˆØ��d�ˆØ×ÒÐ 9Ð 4¥¨eÐ 4Ñ 4Ô 4°SÑ 9Ô 9¸4Ð @À&ÑIÔIÐIØ×ÒÐ 8Ð 3¥¨dÐ 3Ñ 3Ô 3°CÑ 8Ô 8¸$Ð ?ÀÑHÔHÐHÐHÐHr   c                 ó  — d„ }t          j        d¦  «        dg} ||Ž }|                        t          d¬¦  «        |¦  «        |Ž |¦  «         |                        t          d¬¦  «        |¦  «        |Ž |¦  «         d S )Nc                 óÀ   — |                       ¦   «         }	 t          | j        ¦  «        D ]}||k    rt          ‚| |         |z   ||<   Œn# t          $ r d||<   Y nw xY w|S rX  rY  r\  s       r    r-   z=TestTryExceptParfors.test_try_outside_prange_map.<locals>.udtD  sƒ   € Ø—(’(‘*”*ˆCðÝ ¤Ñ)Ô)ð (ð (�AØ˜A’v�vÝ(Ð(Ø  œV a™Z�C˜‘F�Fð(øõ ð ð ð Ø��A‘��ðøøøàˆJs   –2A	 Á	AÁArs   r^  FrH  Tr_  rJ  s       r    Útest_try_outside_prange_mapz0TestTryExceptParfors.test_try_outside_prange_mapC  rb  r   N)r   r   r   rK  rU  ra  re  r   r   r    rB  rB    s[   € € € € € ðBð Bð Bð !ð !ð !ð.Ið Ið Ið"Ið Ið Ið Ið Ir   rB  Ú__main__))rP  r/  Ú	itertoolsr   Únumpyr�   Únumbar   r   r   r   Ú
numba.corer   r	   Únumba.core.errorsr
   r   r   r   Únumba.tests.supportr   r   r   r   r   r   r   r   r   r   r   ry   r   r"   r»   rØ   r  r  rB  r   Úmainr   r   r    ú<module>rn     sÐ  ðØ €€€Ø 
€
€
€
Ø Ð Ð Ð Ð Ð à Ð Ð Ð à .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ø #Ð #Ð #Ð #Ð #Ð #Ð #Ð #ðð ð ð ð ð ð ð ð ð ð ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð	ð 	ð 	ð 	ð 	ˆiñ 	ô 	ð 	ðd
ð d
ð d
ð d
ð d
˜ñ d
ô d
ð d
ðND&ð D&ð D&ð D&ð D&˜(ñ D&ô D&ð D&ðNZð Zð Zð Zð Z˜(ñ Zô Zð Zðz@
ð @
ð @
ð @
ð @
˜¨(ñ @
ô @
ð @
ðF^Hð ^Hð ^Hð ^Hð ^H Hñ ^Hô ^Hð ^HðB ðIIð IIð IIð IIð II˜8ñ IIô IIñ ÔðIIðX ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr   