§
    ƒÛgd‹  ã                   óÌ  — d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZ	d dl
Z
d dlmZmZ d dlmZmZmZ d dlmZmZ d dlmZ d dlmZmZmZ d dl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% d dl&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3Z3d„ Z4d„ Z5d„ Z6d„ Z7d„ Z8d„ Z9d„ Z:d„ Z;d„ Z<d„ Z=d„ Z>d„ Z? e@¦   «         ZAd„ ZBe#jC        ZD G d„ de(¦  «        ZE G d„ de(¦  «        ZF G d„ d eF¦  «        ZG G d!„ d"eF¦  «        ZHd#„ ZId$„ ZJ G d%„ d&e'e(¦  «        ZKd'„ ZLd(„ ZM G d)„ d*e'e(¦  «        ZN G d+„ d,eF¦  «        ZO G d-„ d.e(¦  «        ZPeQd/k    r e3jR        ¦   «          dS dS )0é    N)Úfind_setupwithsÚwith_lifting)Úbypass_contextÚcall_contextÚobjmode_context)ÚFunctionIdentityÚByteCode)ÚInterpreter)ÚtypingÚerrorsÚcpu)Ú
cpu_target)Ú
compile_irÚDEFAULT_FLAGS)ÚnjitÚtypeofÚobjmodeÚtypes)Úoverload)Ú
MemoryLeakÚTestCaseÚcaptured_stdoutÚskip_unless_scipyÚ
linux_onlyÚstrace_supportedÚstraceÚexpected_failure_py311)Ú	PYVERSION)Újitclassc                 ó–   — t          j        | ¦  «        }t          |¬¦  «        }t          |¦  «        }|                     |¦  «        }|S )N)Úfunc_id)r   Úfrom_functionr	   r
   Ú	interpret)Úfuncr!   ÚbcÚinterpÚfunc_irs        úR/granary/edev/quantum/lib/python3.11/site-packages/numba/tests/test_withlifting.pyÚget_func_irr)      sG   € ÝÔ,¨TÑ2Ô2€GÝ	˜'Ð	"Ñ	"Ô	"€BÝ˜Ñ!Ô!€FØ×Ò˜rÑ"Ô"€GØ€Nó    c                  óº   — t          d¦  «         t          5  t          d¦  «         t          ¦   «          d d d ¦  «         n# 1 swxY w Y   t          d¦  «         d S )NÚAÚBÚC©Úprintr   Úb© r*   r(   Úlift1r3   &   s�   € Ý	ˆ#�J„J€JÝ	ð ð Ýˆc‰
Œ
ˆ
Ý	‰Œˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ 
ˆ#�J„J€J€J€Js   —AÁAÁAc                  ój  — d} t          d| ¦  «         d} t          5  t          d| ¦  «         | dz  } t          ¦   «          d d d ¦  «         n# 1 swxY w Y   | dz  } t          5  t          d| ¦  «         t          ¦   «          | dz  } d d d ¦  «         n# 1 swxY w Y   | dz  } t          d| ¦  «         d S )Né   r,   r-   éd   r.   é
   ÚDr/   ©Úxs    r(   Úlift2r;   .   s4  € Ø	€AÝ	ˆ#ˆq�M„M€MØ	€AÝ	ð ð Ýˆc�1‰ŒˆØ	ˆS‰ˆÝ	‰Œˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ˆ�F€AÝ	ð ð Ýˆc�1‰ŒˆÝ	‰ŒˆØ	ˆR‰ˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ˆ�F€AÝ	ˆ#ˆq�M„M€M€M€Ms#   œ$AÁAÁAÁ#$BÂBÂBc                  ój  — d} d}t          d| |¦  «         t          5  t          d¦  «         t          ¦   «          | dz  } t          5  t          d¦  «         |dz  }t          ¦   «          d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   | dz  } |dz  }t          d| |¦  «         d S )Nr5   r6   r,   r-   r.   i † r8   r/   ©r:   Úys     r(   Úlift3r?   ?   s:  € Ø	€AØ€AÝ	ˆ#ˆq�!ÑÔÐÝ	ð ð Ýˆc‰
Œ
ˆ
Ý	‰ŒˆØ	ˆS‰ˆÝð 	ð 	Ý�#‰JŒJˆJØ�‰KˆAÝ‰CŒCˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð	ð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ˆ�F€AØˆ�F€AÝ	ˆ#ˆq�!ÑÔÐÐÐs5   �*BÁ#A6Á*BÁ6A:	Á:BÁ=A:	Á>BÂBÂBc                  ó  — d} t          d| ¦  «         | dz  } t          5  t          d¦  «         t          ¦   «          | dz  } t          d¦  «        D ]C}t          5  t          d¦  «         t          ¦   «          | |z  } d d d ¦  «         n# 1 swxY w Y   ŒD	 d d d ¦  «         n# 1 swxY w Y   t          5  t          d¦  «         t          ¦   «          | r| dz  } d d d ¦  «         n# 1 swxY w Y   | dz  } t          d| ¦  «         d S )	Nr   r,   r7   r-   r5   r.   r8   ÚE)r0   r   r1   Úrange©r:   Úis     r(   Úlift4rE   P   sÆ  € Ø	€AÝ	ˆ#ˆq�M„M€MØˆ�G€AÝ	ð ð Ýˆc‰
Œ
ˆ
Ý	‰ŒˆØ	ˆQ‰ˆÝ�r‘”ð 	ð 	ˆAÝð ð Ý�c‘
”
�
Ý‘”�Ø�Q‘�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð øð	ð	ð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ 
ð ð Ýˆc‰
Œ
ˆ
Ý	‰ŒˆØð 	Ø�‰GˆAð	ð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð
 ˆ�F€AÝ	ˆ#ˆq�M„M€M€M€MsG   Ÿ;B"Á#B	Á=B"Â	BÂB"ÂBÂB"Â"B&Â)B&Â4%C%Ã%C)Ã,C)c                  ó$   — t          d¦  «         d S )Nr,   ©r0   r2   r*   r(   Úlift5rH   f   s   € Ý	ˆ#�J„J€J€J€Jr*   c                  ó’   — d} t          d| ¦  «         t          5  | dz  } d d d ¦  «         n# 1 swxY w Y   t          d| ¦  «         | S )Nr5   r,   r-   ©r0   r   r9   s    r(   Ú	liftcall1rK   j   sŠ   € Ø	€AÝ	ˆ#ˆq�M„M€MÝ	ð ð Ø	ˆQ‰ˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å	ˆ#ˆq�M„M€MØ€Hs   š,¬0³0c                  óú   — d} t          d| ¦  «         t          5  | dz  } d d d ¦  «         n# 1 swxY w Y   t          d| ¦  «         t          5  | dz  } d d d ¦  «         n# 1 swxY w Y   t          d| ¦  «         | S )Nr5   r,   r-   r7   r.   rJ   r9   s    r(   Ú	liftcall2rM   s   sû   € Ø	€AÝ	ˆ#ˆq�M„M€MÝ	ð ð Ø	ˆQ‰ˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å	ˆ#ˆq�M„M€MÝ	ð ð Ø	ˆR‰ˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å	ˆ#ˆq�M„M€MØ€Hs   š,¬0³0ÁA Á A$Á'A$c                  ó,  — d} t          d| ¦  «         t          5  | dk    r| dz  } d d d ¦  «         n# 1 swxY w Y   t          d| ¦  «         t          5  t          d¦  «        D ]}| |z  } Œ	 d d d ¦  «         n# 1 swxY w Y   t          d| ¦  «         | S )Nr5   r,   r   r-   r7   r.   )r0   r   rB   rC   s     r(   Ú	liftcall3rO      s$  € Ø	€AÝ	ˆ#ˆq�M„M€MÝ	ð ð ØˆqŠ5ˆ5Ø�‰FˆAðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ 
ˆ#ˆq�M„M€MÝ	ð ð Ý�r‘”ð 	ð 	ˆAØ�‰FˆAˆAð	ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ 
ˆ#ˆq�M„M€MØ€Hs   š2²6¹6ÁA9Á9A=Â A=c                  ó†   — t           5  t           5  	 d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S ©N)r   r2   r*   r(   Ú	liftcall4rR   �   sÊ   € Ý	ð ð Ýð 	ð 	Øð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s$   ˆ6�’6ž"	¢6¥"	¦6¶:½:c                  óÎ   — t          d¦  «        D ]T} t          5  t          | ¦  «         | dk    rt          d¦  «         	 d d d ¦  «          n	 d d d ¦  «         n# 1 swxY w Y   ŒU| S )Nr7   é   r,   )rB   r   r0   )rD   s    r(   Ú	liftcall5rU   “   sÇ   € Ý�2‰YŒYð ð ˆÝð 	ð 	Ý�!‰HŒHˆHØ�AŠvˆvÝ�c‘
”
�
Øð		ð 	ð 	ñ 	ô 	ð 	ð 	ð 	àð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	øð
 €Hs   ™&AÁA	Á A	c                  óH   — t           5  	 d d d ¦  «         d S # 1 swxY w Y   d S rQ   )Úundefined_global_varr2   r*   r(   Úlift_undefiendrX   �   óo   € Ý	ð ð Øðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð ó   ˆ—žc                  óH   — t           5  	 d d d ¦  «         d S # 1 swxY w Y   d S rQ   )Úbogus_contextmanagerr2   r*   r(   Úlift_invalidr]   ¥   rY   rZ   c                   ó2   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestWithFindingc                 ó”   — t          |¦  «        }t          t          |¦  «        d         ¦  «        }|                      ||¦  «         d S ©Nr   )r)   Úlenr   ÚassertEqual)Úselfr$   Úexpect_countÚthe_irÚcts        r(   Úcheck_num_of_withz!TestWithFinding.check_num_of_with®   sE   € Ý˜TÑ"Ô"ˆÝ• Ñ(Ô(¨Ô+Ñ,Ô,ˆØ×Ò˜˜\Ñ*Ô*Ð*Ð*Ð*r*   c                 ó>   — |                       t          d¬¦  «         d S ©Nr5   ©re   )rh   r3   ©rd   s    r(   Ú
test_lift1zTestWithFinding.test_lift1³   ó!   € Ø×Ò�u°1ÐÑ5Ô5Ð5Ð5Ð5r*   c                 ó>   — |                       t          d¬¦  «         d S ©Né   rk   )rh   r;   rl   s    r(   Ú
test_lift2zTestWithFinding.test_lift2¶   rn   r*   c                 ó>   — |                       t          d¬¦  «         d S rj   )rh   r?   rl   s    r(   Ú
test_lift3zTestWithFinding.test_lift3¹   rn   r*   c                 ó>   — |                       t          d¬¦  «         d S rp   )rh   rE   rl   s    r(   Ú
test_lift4zTestWithFinding.test_lift4¼   rn   r*   c                 ó>   — |                       t          d¬¦  «         d S )Nr   rk   )rh   rH   rl   s    r(   Ú
test_lift5zTestWithFinding.test_lift5¿   rn   r*   N)	Ú__name__Ú
__module__Ú__qualname__rh   rm   rr   rt   rv   rx   r2   r*   r(   r_   r_   ­   sn   € € € € € ð+ð +ð +ð
6ð 6ð 6ð6ð 6ð 6ð6ð 6ð 6ð6ð 6ð 6ð6ð 6ð 6ð 6ð 6r*   r_   c                   ó,   ‡ — e Zd Zˆ fd„Zd„ Zdd„Zˆ xZS )ÚBaseTestWithLiftingc                 óÚ   •— t          t          | ¦  «                             ¦   «          t          j        ¦   «         | _        t          j        | j        ¦  «        | _        t          | _
        d S rQ   )Úsuperr}   ÚsetUpr   ÚContextÚ	typingctxr   Ú
CPUContextÚ	targetctxr   Úflags)rd   Ú	__class__s    €r(   r€   zBaseTestWithLifting.setUpÄ   sM   ø€ ÝÕ! 4Ñ(Ô(×.Ò.Ñ0Ô0Ð0ÝœÑ)Ô)ˆŒÝœ¨¬Ñ7Ô7ˆŒÝ"ˆŒ
ˆ
ˆ
r*   c                 ó¤  — t          |¦  «        }t          || j        | j        | j        i ¬¦  «        \  }}|                      t          |¦  «        |¦  «         |                      |¦  «        }t          ¦   «         5 }| 	                    ¦   «          d d d ¦  «         n# 1 swxY w Y   |                      | 
                    ¦   «         |¦  «         d S ©N©Úlocals)r)   r   r‚   r„   r…   rc   rb   r   r   Úentry_pointÚgetvalue)	rd   r$   re   Úexpected_stdoutrf   Únew_irÚ	extractedÚcresÚouts	            r(   Úcheck_extracted_withz(BaseTestWithLifting.check_extracted_withÊ   sÿ   € Ý˜TÑ"Ô"ˆÝ(Ø�D”N D¤N°D´JØð
ñ 
ô 
Ñˆ�	ð 	×Ò�˜Y™œ¨Ñ6Ô6Ð6Ø�Š˜vÑ&Ô&ˆåÑÔð 	 #Ø×ÒÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò˜Ÿš™œ¨Ñ9Ô9Ð9Ð9Ð9s   Á<BÂB!Â$B!r2   Nc           
      ó¶   — | j         }| j        }| j        }t          j        ||¦  «        5  t          ||||||i ¬¦  «        cd d d ¦  «         S # 1 swxY w Y   d S rˆ   )r‚   r„   r…   r   Únested_contextr   )rd   rf   ÚargsÚreturn_typer‚   r„   r…   s          r(   r   zBaseTestWithLifting.compile_irØ   s¯   € Ø”Nˆ	Ø”Nˆ	Ø”
ˆåÔ& y°)Ñ<Ô<ð 	=ð 	=Ý˜i¨°F¸DØ)¨5¸ð=ñ =ô =ð	=ð 	=ð 	=ð 	=ñ 	=ô 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=øøøð 	=ð 	=ð 	=ð 	=ð 	=ð 	=s   «AÁAÁA)r2   N)ry   rz   r{   r€   r’   r   Ú__classcell__)r†   s   @r(   r}   r}   Ã   s[   ø€ € € € € ð#ð #ð #ð #ð #ð:ð :ð :ð=ð =ð =ð =ð =ð =ð =ð =r*   r}   c                   ó,   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestLiftByPassc                 ó@   — |                       t          dd¬¦  «         d S )Nr5   zA
C
©re   r�   )r’   r3   rl   s    r(   rm   zTestLiftByPass.test_lift1ä   s0   € Ø×!Ò!¥%°aØ2:ð 	"ñ 	<ô 	<ð 	<ð 	<ð 	<r*   c                 ó@   — |                       t          dd¬¦  «         d S )Nrq   zA 1
D 3
r›   )r’   r;   rl   s    r(   rr   zTestLiftByPass.test_lift2è   s5   € Ø×!Ò!¥%°aØ2>ð 	"ñ 	@ô 	@ð 	@ð 	@ð 	@r*   c                 ó@   — |                       t          dd¬¦  «         d S )Nr5   zA 1 100
D 2 101
r›   )r’   r?   rl   s    r(   rt   zTestLiftByPass.test_lift3ì   s5   € Ø×!Ò!¥%°aØ2Fð 	"ñ 	Hô 	Hð 	Hð 	Hð 	Hr*   c                 ó@   — |                       t          dd¬¦  «         d S )Nrq   z	A 0
E 11
r›   )r’   rE   rl   s    r(   rv   zTestLiftByPass.test_lift4ð   s5   € Ø×!Ò!¥%°aØ2?ð 	"ñ 	Aô 	Að 	Að 	Að 	Ar*   c                 ó@   — |                       t          dd¬¦  «         d S )Nr   zA
r›   )r’   rH   rl   s    r(   rx   zTestLiftByPass.test_lift5ô   s0   € Ø×!Ò!¥%°aØ27ð 	"ñ 	9ô 	9ð 	9ð 	9ð 	9r*   N)ry   rz   r{   rm   rr   rt   rv   rx   r2   r*   r(   r™   r™   â   sh   € € € € € ð<ð <ð <ð@ð @ð @ðHð Hð HðAð Að Að9ð 9ð 9ð 9ð 9r*   r™   c                   óx   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Z ej	        e
dk    d¦  «        ed„ ¦   «         ¦   «         Zd	S )
ÚTestLiftCallc                 óX  — t          |¦  «        }t          ¦   «         5 } |¦   «          ddd¦  «         n# 1 swxY w Y   t          ¦   «         5 } |¦   «          ddd¦  «         n# 1 swxY w Y   |                      |                     ¦   «         |                     ¦   «         ¦  «         dS )z2Ensure same semantic with non-jitted code
        N)r   r   rc   rŒ   )rd   r$   ÚjittedÚgotÚexpects        r(   Úcheck_same_semanticz TestLiftCall.check_same_semanticû   s  € õ �d‘”ˆÝÑÔð 	 #ØˆF‰HŒHˆHð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ ÑÔð 	 &ØˆD‰FŒFˆFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò˜Ÿš™œ¨¯ªÑ):Ô):Ñ;Ô;Ð;Ð;Ð;s   ž5µ9¼9ÁA%Á%A)Á,A)c                 ót   — |                       t          dd¬¦  «         |                      t          ¦  «         d S )Nr5   zA 1
B 2
r›   )r’   rK   r¦   rl   s    r(   Útest_liftcall1zTestLiftCall.test_liftcall1  sC   € Ø×!Ò!¥)¸!Ø2>ð 	"ñ 	@ô 	@ð 	@à× Ò ¥Ñ+Ô+Ð+Ð+Ð+r*   c                 ót   — |                       t          dd¬¦  «         |                      t          ¦  «         d S )Nrq   zA 1
B 2
C 12
r›   )r’   rM   r¦   rl   s    r(   Útest_liftcall2zTestLiftCall.test_liftcall2  óC   € Ø×!Ò!¥)¸!Ø2Dð 	"ñ 	Fô 	Fð 	Fà× Ò ¥Ñ+Ô+Ð+Ð+Ð+r*   c                 ót   — |                       t          dd¬¦  «         |                      t          ¦  «         d S )Nrq   zA 1
B 2
C 47
r›   )r’   rO   r¦   rl   s    r(   Útest_liftcall3zTestLiftCall.test_liftcall3  r«   r*   c                 óH  — t           j        t           j        t           j        t           j        f}|                      |¦  «        5 } t          t          ¦  «        ¦   «          d d d ¦  «         n# 1 swxY w Y   d}|                      |t          |j
        ¦  «        ¦  «         d S )Nz2compiler re-entrant to the same function signature)r   ÚTypingErrorÚNumbaRuntimeErrorÚNumbaValueErrorÚCompilerErrorÚassertRaisesr   rR   ÚassertInÚstrÚ	exception)rd   ÚacceptÚraisesÚmsgs       r(   Útest_liftcall4zTestLiftCall.test_liftcall4  sÇ   € ÝÔ$¥fÔ&>ÝÔ(­&Ô*>ð@ˆà×Ò˜vÑ&Ô&ð 	¨&Ø�D•‰OŒOÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð DˆØ�Š�c�3˜vÔ/Ñ0Ô0Ñ1Ô1Ð1Ð1Ð1s   ÁA-Á-A1Á4A1©é   é   zunsupported on py3.8 and beforec                 ót   — |                       t          dd¬¦  «         |                      t          ¦  «         d S )Nr5   z0
1
2
3
4
5
A
r›   )r’   rU   r¦   rl   s    r(   Útest_liftcall5zTestLiftCall.test_liftcall5!  sE   € ð 	×!Ò!¥)¸!Ø2Ið 	"ñ 	Kô 	Kð 	Kà× Ò ¥Ñ+Ô+Ð+Ð+Ð+r*   N)ry   rz   r{   r¦   r¨   rª   r­   rº   ÚunittestÚskipIfr   r   r¿   r2   r*   r(   r¡   r¡   ù   s    € € € € € ð
<ð 
<ð 
<ð,ð ,ð ,ð
,ð ,ð ,ð
,ð ,ð ,ð
2ð 2ð 2ð €X„_�Y &Ò(Ø6ñ8ô 8àð,ð ,ñ Ôñ8ô 8ð,ð ,ð ,r*   r¡   c                 ó   ‡ — ˆ fd„}|S )Nc                 óÞ   •— |                       t          j        ¦  «        5 } ‰| g|¢R i |¤Ž d d d ¦  «         n# 1 swxY w Y   |                      dt	          |j        ¦  «        ¦  «         d S )NzDoes not support list type©r³   r   r¯   r´   rµ   r¶   ©rd   r•   Úkwargsr¸   Úfns       €r(   Úcorez+expected_failure_for_list_arg.<locals>.core+  s½   ø€ Ø×Ò�vÔ1Ñ2Ô2ð 	&°fØˆBˆtÐ%�dÐ%Ð%Ð%˜fÐ%Ð%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&à�ŠÐ2Ý˜&Ô*Ñ+Ô+ñ	-ô 	-ð 	-ð 	-ð 	-ó   ¡:º>Á>r2   ©rÇ   rÈ   s   ` r(   Úexpected_failure_for_list_argrË   *  ó#   ø€ ð-ð -ð -ð -ð -ð
 €Kr*   c                 ó   ‡ — ˆ fd„}|S )Nc                 óÞ   •— |                       t          j        ¦  «        5 } ‰| g|¢R i |¤Ž d d d ¦  «         n# 1 swxY w Y   |                      dt	          |j        ¦  «        ¦  «         d S )NzDoes not support function typerÄ   rÅ   s       €r(   rÈ   z/expected_failure_for_function_arg.<locals>.core4  s½   ø€ Ø×Ò�vÔ1Ñ2Ô2ð 	&°fØˆBˆtÐ%�dÐ%Ð%Ð%˜fÐ%Ð%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&à�ŠÐ6Ý˜&Ô*Ñ+Ô+ñ	-ô 	-ð 	-ð 	-ð 	-rÉ   r2   rÊ   s   ` r(   Ú!expected_failure_for_function_argrÏ   3  rÌ   r*   c                   óè  — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
ed	„ ¦   «         Zd
„ Zed„ ¦   «         Zd„ Zed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zej        d„ ¦   «         Zed„ ¦   «         Z d„ Z!e"d„ ¦   «         Z#e$d„ ¦   «         Z%ej        d„ ¦   «         Z&d„ Z'd „ Z(d!„ Z)d"„ Z*d#„ Z+d$„ Z,d%„ Z-d&„ Z.d'„ Z/d(„ Z0d)„ Z1d*„ Z2d+„ Z3e4d,„ ¦   «         Z5d-„ Z6d.„ Z7d/„ Z8d0„ Z9d1„ Z:d2S )3ÚTestLiftObjc                 óD   — t          j        dt          j        ¦  «         d S ©NÚerror©ÚwarningsÚsimplefilterr   ÚNumbaWarningrl   s    r(   r€   zTestLiftObj.setUp>  ó   € ÝÔ˜g¥vÔ':Ñ;Ô;Ð;Ð;Ð;r*   c                 ó,   — t          j        ¦   «          d S rQ   ©rÖ   Úresetwarningsrl   s    r(   ÚtearDownzTestLiftObj.tearDownA  ó   € ÝÔÑ Ô Ð Ð Ð r*   c                 ó2  — t          j        |¦  «        }t          j        |¦  «        }t          |¦  «        }t          ¦   «         5 } ||Ž }|                     ¦   «         }d d d ¦  «         n# 1 swxY w Y   |                     t          t          t          |¦  «        ¦  «        ¦  «         t          ¦   «         5 } ||Ž }	|                     ¦   «         }
d d d ¦  «         n# 1 swxY w Y   |  	                    ||
¦  «         |  
                    ||	¦  «         d S rQ   )ÚcopyÚdeepcopyr   r   rŒ   ÚcompileÚtupleÚmapr   rc   ÚassertPreciseEqual)rd   Úpyfuncr•   Úpy_argsÚc_argsÚcfuncÚstreamÚ
expect_resÚ
expect_outÚgot_resÚgot_outs              r(   Úassert_equal_return_and_stdoutz*TestLiftObj.assert_equal_return_and_stdoutD  sv  € Ý”- Ñ%Ô%ˆÝ”˜tÑ$Ô$ˆÝ�V‘”ˆåÑÔð 	+ &Ø˜ Ð)ˆJØŸšÑ*Ô*ˆJð	+ð 	+ð 	+ñ 	+ô 	+ð 	+ð 	+ð 	+ð 	+ð 	+ð 	+øøøð 	+ð 	+ð 	+ð 	+ð
 	�Š•e�C¥¨Ñ/Ô/Ñ0Ô0Ñ1Ô1Ð1ÝÑÔð 	( &Ø�e˜V�nˆGØ—o’oÑ'Ô'ˆGð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð 	×Ò˜ WÑ-Ô-Ð-Ø×Ò 
¨GÑ4Ô4Ð4Ð4Ð4s$   ÁA,Á,A0Á3A0Â:C Ã C$Ã'C$c                 óz   ‡— d„ Šˆfd„}ˆfd„}|                       |d¦  «         |                       |d¦  «         d S )Nc                 ó0   — t          dd| dz  i¦  «         d S )Nzival =Úivalrq   rG   )rò   s    r(   Úbarz0TestLiftObj.test_lift_objmode_basic.<locals>.barW  s!   € Ý�(˜V T¨Q¡YÐ/Ñ0Ô0Ð0Ð0Ð0r*   c                 ól   •— | dz  } t           5   ‰| ¦  «         d d d ¦  «         n# 1 swxY w Y   | dz   S ©Nr5   ©r   ©rò   ró   s    €r(   Úfooz0TestLiftObj.test_lift_objmode_basic.<locals>.fooZ  s}   ø€ Ø�A‰IˆDÝ ð ð Ø��D‘	”	�	ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à˜!‘8ˆOs   Ž&¦*­*c                 óv   •— | dz  } t           j        5   ‰| ¦  «         d d d ¦  «         n# 1 swxY w Y   | dz   S rõ   ©Únumbar   r÷   s    €r(   Úfoo_nonglobalz:TestLiftObj.test_lift_objmode_basic.<locals>.foo_nonglobal`  s   ø€ Ø�A‰IˆDÝ”ð ð Ø��D‘	”	�	ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à˜!‘8ˆOs   “+«/²/é{   ©rï   )rd   rø   rü   ró   s      @r(   Útest_lift_objmode_basicz#TestLiftObj.test_lift_objmode_basicV  sx   ø€ ð	1ð 	1ð 	1ð	ð 	ð 	ð 	ð 	ð	ð 	ð 	ð 	ð 	ð 	×+Ò+¨C°Ñ5Ô5Ð5Ø×+Ò+¨M¸3Ñ?Ô?Ð?Ð?Ð?r*   c                 óH   ‡— d„ Šˆfd„}d}|                       ||¦  «         d S )Nc                 ó8   — t          d| dz  i¦  «         | dz  } d S )NÚarrrq   rG   )r  s    r(   ró   z3TestLiftObj.test_lift_objmode_array_in.<locals>.barj  s&   € Ý�5˜# ™(Ð#Ñ$Ô$Ð$à�1‰HˆCˆCˆCr*   c                 óÄ   •— t          j        | ¦  «                             t           j        ¦  «        }t          5   ‰|¦  «         d d d ¦  «         n# 1 swxY w Y   |dz   S rõ   )ÚnpÚarangeÚastypeÚint64r   )Únelemr  ró   s     €r(   rø   z3TestLiftObj.test_lift_objmode_array_in.<locals>.fooo  s•   ø€ Ý”)˜EÑ"Ô"×)Ò)­"¬(Ñ3Ô3ˆCÝ ð ð à��C‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ˜‘7ˆNs   ºAÁAÁAr7   rþ   )rd   rø   r  ró   s      @r(   Útest_lift_objmode_array_inz&TestLiftObj.test_lift_objmode_array_ini  sN   ø€ ð	ð 	ð 	ð
	ð 	ð 	ð 	ð 	ð ˆØ×+Ò+¨C°Ñ7Ô7Ð7Ð7Ð7r*   c                 óH   ‡— d„ Šˆfd„}d}|                       ||¦  «         d S )Nc                 ó$   — t          | ¦  «         d S rQ   rG   ©r>   s    r(   ró   z<TestLiftObj.test_lift_objmode_define_new_unused.<locals>.barz  s   € Ý�!‰HŒHˆHˆHˆHr*   c                 óœ   •— t          ¦   «         5  d| z   }t          j        |¦  «        } ‰|¦  «         d d d ¦  «         n# 1 swxY w Y   | S ©Nrq   )r   r  r  )r:   r>   Úaró   s      €r(   rø   z<TestLiftObj.test_lift_objmode_define_new_unused.<locals>.foo}  sŽ   ø€ Ý Ñ"Ô"ð ð Ø˜‘E�Ý”I˜a‘L”L�Ø��A‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ˆHs   �%AÁAÁArý   rþ   )rd   rø   Úargró   s      @r(   Ú#test_lift_objmode_define_new_unusedz/TestLiftObj.test_lift_objmode_define_new_unusedy  sN   ø€ ð	ð 	ð 	ð	ð 	ð 	ð 	ð 	ð ˆØ×+Ò+¨C°Ñ5Ô5Ð5Ð5Ð5r*   c                 ó~   ‡— d„ Šˆfd„}ˆfd„}d}|                       ||¦  «         |                       ||¦  «         d S )Nc                 ó*   — t          | ¦  «         d| z  S rõ   rG   r9   s    r(   Úinversez<TestLiftObj.test_lift_objmode_return_simple.<locals>.inverseˆ  ó   € Ý�!‰HŒHˆHØ�q‘5ˆLr*   c                 ór   •— t          d¬¦  «        5   ‰| ¦  «        }d d d ¦  «         n# 1 swxY w Y   | |fS ©NÚfloat64r  rö   ©r:   r>   r  s     €r(   rø   z8TestLiftObj.test_lift_objmode_return_simple.<locals>.fooŒ  s   ø€ Ý  9Ð-Ñ-Ô-ð ð Ø�G˜A‘J”J�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à�a�4ˆKó   ’*ª.±.c                 ó|   •— t          j        d¬¦  «        5   ‰| ¦  «        }d d d ¦  «         n# 1 swxY w Y   | |fS r  rú   r  s     €r(   rü   zBTestLiftObj.test_lift_objmode_return_simple.<locals>.foo_nonglobal‘  s�   ø€ Ý” Ð+Ñ+Ô+ð ð Ø�G˜A‘J”J�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à�a�4ˆKs   —/¯3¶3rý   rþ   )rd   rø   rü   r  r  s       @r(   Útest_lift_objmode_return_simplez+TestLiftObj.test_lift_objmode_return_simple‡  s}   ø€ ð	ð 	ð 	ð	ð 	ð 	ð 	ð 	ð
	ð 	ð 	ð 	ð 	ð
 ˆØ×+Ò+¨C°Ñ5Ô5Ð5Ø×+Ò+¨M¸3Ñ?Ô?Ð?Ð?Ð?r*   c                 ó†   ‡— d„ Šˆfd„}t          j        ddt           j        ¬¦  «        }|                      ||¦  «         d S )Nc                 ó*   — t          | ¦  «         d| z  S rõ   rG   r9   s    r(   r  z;TestLiftObj.test_lift_objmode_return_array.<locals>.inverse›  r  r*   c                 ó    •— t          dd¬¦  «        5   ‰| ¦  «        }t          |d         ¦  «        }d d d ¦  «         n# 1 swxY w Y   | ||fS )Nú
float64[:]r  )r>   Úzr   )r   Úint)r:   r>   r!  r  s      €r(   rø   z7TestLiftObj.test_lift_objmode_return_array.<locals>.fooŸ  s”   ø€ Ý  <°7Ð;Ñ;Ô;ð ð Ø�G˜A‘J”J�Ý˜˜!œ‘I”I�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð �a˜�7ˆNs   “!A Á AÁAr5   r7   ©Údtype)r  r  r  rï   )rd   rø   r  r  s      @r(   Útest_lift_objmode_return_arrayz*TestLiftObj.test_lift_objmode_return_arrayš  sa   ø€ ð	ð 	ð 	ð	ð 	ð 	ð 	ð 	õ Œi˜˜2¥R¤ZÐ0Ñ0Ô0ˆØ×+Ò+¨C°Ñ5Ô5Ð5Ð5Ð5r*   c                 ó@   — d„ }g d¢}|                       ||¦  «         d S )Nc                 óê   — t          d¬¦  «        5  t          | ¦  «         d| d<   t          | ¦  «         g d¢| z   }t          j        d„ |D ¦   «         ¦  «        }d d d ¦  «         n# 1 swxY w Y   | |fS )Nr   r  é   r   ©r5   rq   r¼   c                 ó   — g | ]}d |z  ‘ŒS )r5   r2   )Ú.0rD   s     r(   ú
<listcomp>zITestLiftObj.test_lift_objmode_using_list.<locals>.foo.<locals>.<listcomp>°  s   € Ð1Ð1Ð1¨!  A¡Ð1Ð1Ð1r*   )r   r0   r  Úasarrayr=   s     r(   rø   z5TestLiftObj.test_lift_objmode_using_list.<locals>.fooª  s½   € Ý  <Ð0Ñ0Ô0ð 3ð 3Ý�a‘”�Ø��!‘Ý�a‘”�Ø�I�I ‘M�Ý”JÐ1Ð1¨qÐ1Ñ1Ô1Ñ2Ô2�ð3ð 3ð 3ñ 3ô 3ð 3ð 3ð 3ð 3ð 3ð 3øøøð 3ð 3ð 3ð 3ð �a�4ˆKs   ‘A	A&Á&A*Á-A*r)  rþ   ©rd   rø   r  s      r(   Útest_lift_objmode_using_listz(TestLiftObj.test_lift_objmode_using_list¨  s8   € ð	ð 	ð 	ð ˆiˆiˆØ×+Ò+¨C°Ñ5Ô5Ð5Ð5Ð5r*   c                 ó<   — d„ }d}|                       ||¦  «         d S )Nc                 ó  — t          | ¦  «        D ]} Œ| r| dz  } t          d¬¦  «        5  t          | ¦  «         | dz  } t          | ¦  «         t          | ¦  «        D ]}| |z  } t          | ¦  «         Œ	 d d d ¦  «         n# 1 swxY w Y   | S )Nr5   Úintpr9   )rB   r   r0   rC   s     r(   rø   z4TestLiftObj.test_lift_objmode_var_redef.<locals>.foo·  sç   € Ý˜1‘X”Xð ð �ØØð Ø�Q‘�Ý  6Ð*Ñ*Ô*ð ð Ý�a‘”�Ø�Q‘�Ý�a‘”�Ý˜q™œð ð �AØ˜‘F�AÝ˜!‘H”H�H�Hðð	ð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ˆHs   ªA
BÂBÂBrý   rþ   r.  s      r(   Útest_lift_objmode_var_redefz'TestLiftObj.test_lift_objmode_var_redef¶  s4   € ð	ð 	ð 	ð ˆØ×+Ò+¨C°Ñ5Ô5Ð5Ð5Ð5r*   c                 ó>   — d„ }|                       |g d¢d¦  «         d S )Nc                 óô   — || d<   t          ¦   «         5  t          | ¦  «         d d d ¦  «         n# 1 swxY w Y   t          ¦   «         5  d|z  | d<   t          | ¦  «         d d d ¦  «         n# 1 swxY w Y   | S r  ©r   r0   ©r:   r!  s     r(   rø   z=TestLiftObj.test_case01_mutate_list_ahead_of_ctx.<locals>.fooÊ  óù   € ØˆAˆa‰Då Ñ"Ô"ð ð å�a‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ !Ñ"Ô"ð ð Ø˜1‘u��!‘å�a‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð
 ˆHó   ”0°4·4Á	A-Á-A1Á4A1r)  é   rþ   ©rd   rø   s     r(   Ú$test_case01_mutate_list_ahead_of_ctxz0TestLiftObj.test_case01_mutate_list_ahead_of_ctxÈ  s5   € ð	ð 	ð 	ð 	×+Ò+¨C°°°¸BÑ?Ô?Ð?Ð?Ð?r*   c                 óf   — d„ }t          j        g d¢¦  «        }|                      ||d¦  «         d S )Nc                 óô   — || d<   t          ¦   «         5  t          | ¦  «         d d d ¦  «         n# 1 swxY w Y   t          ¦   «         5  d|z  | d<   t          | ¦  «         d d d ¦  «         n# 1 swxY w Y   | S r  r6  r7  s     r(   rø   z>TestLiftObj.test_case02_mutate_array_ahead_of_ctx.<locals>.fooÛ  r8  r9  r)  r:  ©r  Úarrayrï   ©rd   rø   r:   s      r(   Ú%test_case02_mutate_array_ahead_of_ctxz1TestLiftObj.test_case02_mutate_array_ahead_of_ctxÚ  sD   € ð	ð 	ð 	õ ŒH�Y�Y�YÑÔˆØ×+Ò+¨C°°BÑ7Ô7Ð7Ð7Ð7r*   c                 ó8   — d„ }|                       |d¦  «         d S )Nc                 ó´   — t          d¬¦  «        5  g d¢}d d d ¦  «         n# 1 swxY w Y   t          ¦   «         5  d|d<   d d d ¦  «         n# 1 swxY w Y   |S ©NzList(int64)r  r)  r7   rq   rö   r=   s     r(   rø   z6TestLiftObj.test_case03_create_and_mutate.<locals>.fooî  óà   € Ý  =Ð1Ñ1Ô1ð ð Ø�I�I�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å Ñ"Ô"ð ð Ø��!‘ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð àˆHó   ‘"¢&©&»AÁAÁAr5   rþ   r;  s     r(   Útest_case03_create_and_mutatez)TestLiftObj.test_case03_create_and_mutateì  s/   € ð	ð 	ð 	ð 	×+Ò+¨C°Ñ3Ô3Ð3Ð3Ð3r*   c                 ó*  — d„ }t          j        g d¢¦  «        }t          |¦  «        }|                      t          j        ¦  «        5 } ||¦  «         d d d ¦  «         n# 1 swxY w Y   |                      dt          |j        ¦  «        ¦  «         d S )Nc                 ót   — t          d¬¦  «        5  t          | ¦  «         d d d ¦  «         n# 1 swxY w Y   | S )Nr   ©Úkr6  r9   s    r(   rø   z=TestLiftObj.test_case04_bogus_variable_type_info.<locals>.fooø  sx   € å  <Ð0Ñ0Ô0ð ð Ý�a‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð àˆHó   ‘-­1´1r)  z1Invalid type annotation on non-outgoing variables)	r  r@  r   r³   r   r¯   r´   rµ   r¶   ©rd   rø   r:   Úcfoor¸   s        r(   Ú$test_case04_bogus_variable_type_infoz0TestLiftObj.test_case04_bogus_variable_type_infoö  sØ   € ð	ð 	ð 	õ ŒH�Y�Y�YÑÔˆÝ�C‰yŒyˆØ×Ò�vÔ1Ñ2Ô2ð 	°fØˆD�‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�ŠØ?Ý�Ô Ñ!Ô!ñ	ô 	ð 	ð 	ð 	ó   ÁA Á A$Á'A$c                 ó   — d„ }t          j        g d¢¦  «        }t          |¦  «        }|                      t          ¦  «        5 } ||¦  «        }d d d ¦  «         n# 1 swxY w Y   |                      dt          |j        ¦  «        ¦  «         d S )Nc                 ó`   — t          d¬¦  «        5  | dz   }d d d ¦  «         n# 1 swxY w Y   |S )Nr   ©r!  y              ð?rö   r7  s     r(   rø   z4TestLiftObj.test_case05_bogus_type_info.<locals>.foo  sx   € õ ! <Ð0Ñ0Ô0ð ð Ø˜‘G�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð àˆHó   ‘#£'ª'r)  zXcan't unbox array from PyObject into native value.  The object maybe of a different type)r  r@  r   r³   Ú	TypeErrorr´   rµ   r¶   )rd   rø   r:   rO  r¸   r¤   s         r(   Útest_case05_bogus_type_infoz'TestLiftObj.test_case05_bogus_type_info  s×   € ð	ð 	ð 	õ ŒH�Y�Y�YÑÔˆÝ�C‰yŒyˆØ×Ò�yÑ)Ô)ð 	¨VØ�$�q‘'”'ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�Šð6å�Ô Ñ!Ô!ñ	
ô 	
ð 	
ð 	
ð 	
ó   ÁAÁAÁ"Ac                 óþ   — d„ }|                       t          j        ¦  «        5 } t          |¦  «        d¦  «         d d d ¦  «         n# 1 swxY w Y   d}|                      t          |j        ¦  «        |¦  «         d S )Nc                 ó¼   — t          ¦   «         5  t          ¦   «         5  t          | ¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   | S rQ   r6  r9   s    r(   rø   z3TestLiftObj.test_case06_double_objmode.<locals>.foo  sØ   € õ !Ñ"Ô"ð !ð !å(Ñ*Ô*ð !ð !Ý˜a™œ˜ð!ð !ð !ñ !ô !ð !ð !ð !ð !ð !ð !øøøð !ð !ð !ð !ð!ð !ð !ñ !ô !ð !ð !ð !ð !ð !ð !øøøð !ð !ð !ð !ð ˆHs.   �Až:®Aº>	¾AÁ>	ÁAÁAÁArý   z@During: resolving callee type: type\(ObjModeLiftedWith\(<.*>\)\))r³   r   r¯   r   ÚassertRegexrµ   r¶   )rd   rø   r¸   Úpats       r(   Útest_case06_double_objmodez&TestLiftObj.test_case06_double_objmode  s½   € ð	ð 	ð 	ð ×Ò�vÔ1Ñ2Ô2ð 	°fØ�D�‰IŒI�c‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð3ˆà×Ò�˜VÔ-Ñ.Ô.°Ñ4Ô4Ð4Ð4Ð4s   £AÁAÁAc                 óZ  — d„ }t          j        g d¢¦  «        }t          |¦  «        }|                      t          j        ¦  «        5 } ||¦  «         d d d ¦  «         n# 1 swxY w Y   t          |j        ¦  «        }|                      d|¦  «         |                      d|¦  «         d S )Nc                 ód   — t          ¦   «         5  d| i}d}d d d ¦  «         n# 1 swxY w Y   | ||fS )Nr  r¼   rö   )r:   ÚtÚus      r(   rø   z6TestLiftObj.test_case07_mystery_key_error.<locals>.foo-  s~   € Ý Ñ"Ô"ð ð Ø˜!�H�Ø�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð �a˜�7ˆNs   �"¢&©&r)  z;Missing type annotation on outgoing variable(s): ['t', 'u']z9Example code: with objmode(t='<add_type_as_string_here>'))	r  r@  r   r³   r   r¯   rµ   r¶   r´   )rd   rø   r:   rO  r¸   Úexstrs         r(   Útest_case07_mystery_key_errorz)TestLiftObj.test_case07_mystery_key_error+  s  € ð	ð 	ð 	õ
 ŒH�Y�Y�YÑÔˆÝ�C‰yŒyˆà×Ò�vÔ1Ñ2Ô2ð 	°fØˆD�‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ �FÔ$Ñ%Ô%ˆØ�Šð #àñ	ô 	ð 	ð 	�Šð 8àñ	ô 	ð 	ð 	ð 	rQ  c                 óB  ‡— t          ¦   «         Šˆfd„}t          j        g d¢¦  «        }t          |¦  «        }|                      t
          ¦  «        5 } ||¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          |j        ¦  «        d¦  «         d S )Nc                 óô   •— t          t          | ¦  «        ¦  «        D ]Y}t          ¦   «         5  t          |¦  «        }| |         }|‰|<   t	          ‰d         ¦  «         d d d ¦  «         n# 1 swxY w Y   ŒZ| S )NÚ2)rB   rb   r   rµ   r0   )r:   rD   rL  ÚvÚds       €r(   rø   z8TestLiftObj.test_case08_raise_from_external.<locals>.fooE  s³   ø€ Ý�3˜q™6œ6‘]”]ð "ð "�Ý$Ñ&Ô&ð "ð "Ý˜A™œ�AØ˜!œ�AØ�A�a‘DÝ˜!˜Cœ&‘M”M�Mð	"ð "ð "ñ "ô "ð "ð "ð "ð "ð "ð "øøøð "ð "ð "ð "øð
 ˆHs   ®2A,Á,A0	Á3A0	r)  z'2')	Údictr  r@  r   r³   ÚKeyErrorrc   rµ   r¶   )rd   rø   r:   rO  r¸   rh  s        @r(   Útest_case08_raise_from_externalz+TestLiftObj.test_case08_raise_from_external@  sá   ø€ õ ‰FŒFˆð	ð 	ð 	ð 	ð 	õ ŒH�Y�Y�YÑÔˆÝ�C‰yŒyˆØ×Ò�xÑ(Ô(ð 	¨FØˆD�‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×Ò�˜VÔ-Ñ.Ô.°Ñ6Ô6Ð6Ð6Ð6s   ÁA,Á,A0Á3A0c                 ó*  — d„ }t          j        g d¢¦  «        }t          |¦  «        }|                      t          j        ¦  «        5 } ||¦  «         d d d ¦  «         n# 1 swxY w Y   |                      dt          |j        ¦  «        ¦  «         d S )Nc                 óV   — t          ¦   «         5  t          ¦   «         ‚# 1 swxY w Y   | S rQ   )r   Ú
ValueErrorr9   s    r(   rø   z3TestLiftObj.test_case09_explicit_raise.<locals>.fooU  sO   € Ý Ñ"Ô"ð #ð #Ý ‘l”lÐ"ð#ð #ð #ð #øøøð #ð #ð #ð #àˆHs   �ž"¥"r)  zBunsupported control flow due to raise statements inside with block)	r  r@  r   r³   r   r²   r´   rµ   r¶   rN  s        r(   Útest_case09_explicit_raisez&TestLiftObj.test_case09_explicit_raiseT  sÚ   € ð	ð 	ð 	õ
 ŒH�Y�Y�YÑÔˆÝ�C‰yŒyˆØ×Ò�vÔ3Ñ4Ô4ð 	¸ØˆD�‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�Šðå�Ô Ñ!Ô!ñ	
ô 	
ð 	
ð 	
ð 	
rQ  c                 ód   — d„ }t          j        g d¢¦  «        }|                      ||¦  «         d S )Nc                 ó´   — t          d¬¦  «        5  g d¢}d d d ¦  «         n# 1 swxY w Y   t          ¦   «         5  d|d<   d d d ¦  «         n# 1 swxY w Y   |S rE  rö   r=   s     r(   rø   z;TestLiftObj.test_case10_mutate_across_contexts.<locals>.foog  rF  rG  r)  r?  rA  s      r(   Ú"test_case10_mutate_across_contextsz.TestLiftObj.test_case10_mutate_across_contextsd  sB   € ð	ð 	ð 	õ ŒH�Y�Y�YÑÔˆØ×+Ò+¨C°Ñ3Ô3Ð3Ð3Ð3r*   c                 ód   — d„ }t          j        g d¢¦  «        }|                      ||¦  «         d S )Nc                 óÜ   — t          d¬¦  «        5  t          j        g d¢d¬¦  «        }d d d ¦  «         n# 1 swxY w Y   t          ¦   «         5  d|d<   d d d ¦  «         n# 1 swxY w Y   |S )Núint64[:]r  r)  r  r#  r7   rq   )r   r  r-  r=   s     r(   rø   zATestLiftObj.test_case10_mutate_array_across_contexts.<locals>.foos  sñ   € Ý  :Ð.Ñ.Ô.ð 9ð 9Ý”J˜y˜y˜y°Ð8Ñ8Ô8�ð9ð 9ð 9ñ 9ô 9ð 9ð 9ð 9ð 9ð 9ð 9øøøð 9ð 9ð 9ð 9å Ñ"Ô"ð ð à��!‘ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ˆHs   ‘6¶:½:ÁA!Á!A%Á(A%r)  r?  rA  s      r(   Ú(test_case10_mutate_array_across_contextsz4TestLiftObj.test_case10_mutate_array_across_contextsq  sB   € ð	ð 	ð 	õ ŒH�Y�Y�YÑÔˆØ×+Ò+¨C°Ñ3Ô3Ð3Ð3Ð3r*   c                 ó   — d„ }t          j        g d¢¦  «        }t          |¦  «        }|                      t          ¦  «        5 } ||¦  «         d d d ¦  «         n# 1 swxY w Y   |                      dt          |j        ¦  «        ¦  «         d S )Nc                 óX   — t          ¦   «         5  d„ }d d d ¦  «         n# 1 swxY w Y   | S )Nc                 ó   — | dz   S rõ   r2   r  s    r(   ró   zLTestLiftObj.test_case11_define_function_in_context.<locals>.foo.<locals>.bar‚  s   € Ø˜q™5�Lr*   rö   )r:   ró   s     r(   rø   z?TestLiftObj.test_case11_define_function_in_context.<locals>.foo€  sy   € Ý Ñ"Ô"ð !ð !ð!ð !ð !ð!ð !ð !ñ !ô !ð !ð !ð !ð !ð !ð !øøøð !ð !ð !ð !ð ˆHs   �Ÿ#¦#r)  z global name 'bar' is not defined)r  r@  r   r³   Ú	NameErrorr´   rµ   r¶   rN  s        r(   Ú&test_case11_define_function_in_contextz2TestLiftObj.test_case11_define_function_in_context~  sÕ   € ð	ð 	ð 	õ ŒH�Y�Y�YÑÔˆÝ�C‰yŒyˆØ×Ò�yÑ)Ô)ð 	¨VØˆD�‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�ŠØ.Ý�Ô Ñ!Ô!ñ	
ô 	
ð 	
ð 	
ð 	
rX  c                 óp   ‡— d„ Šˆfd„}t          j        g d¢¦  «        }|                      ||¦  «         d S )Nc                 ó   — | dz   S rõ   r2   r  s    r(   ró   z>TestLiftObj.test_case12_njit_inside_a_objmode_ctx.<locals>.bar“  s   € Ø�q‘5ˆLr*   c                 ó´   •— t          d¬¦  «        5   t          ‰¦  «        | ¦  «                             d¦  «        }d d d ¦  «         n# 1 swxY w Y   | |z   S )Nru  r  r  )r   r   r  ©r:   r>   ró   s     €r(   rø   z>TestLiftObj.test_case12_njit_inside_a_objmode_ctx.<locals>.foo–  s“   ø€ Ý  :Ð.Ñ.Ô.ð 1ð 1Ø•D˜‘I”I˜a‘L”L×'Ò'¨Ñ0Ô0�ð1ð 1ð 1ñ 1ô 1ð 1ð 1ð 1ð 1ð 1ð 1øøøð 1ð 1ð 1ð 1à�q‘5ˆLs   ’,A
Á
AÁAr)  r?  )rd   rø   r:   ró   s      @r(   Ú%test_case12_njit_inside_a_objmode_ctxz1TestLiftObj.test_case12_njit_inside_a_objmode_ctx�  s\   ø€ ð	ð 	ð 	ð	ð 	ð 	ð 	ð 	õ
 ŒH�Y�Y�YÑÔˆØ×+Ò+¨C°Ñ3Ô3Ð3Ð3Ð3r*   c                 óê  — d„ }t           dk    r‘|                      t          j        ¦  «        5 }t	          |¦  «        } |t          j        g d¢¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   d}|                      |t          |j	        ¦  «        ¦  «         d S  |t          j        g d¢¦  «        ¦  «        }t
          j
                             t          j        g d¢¦  «        |¦  «         d S )Nc                 ód   — t          d¬¦  «        5  | dz  } | cd d d ¦  «         S # 1 swxY w Y   d S )Nru  r9   r5   rö   r9   s    r(   rø   zCTestLiftObj.test_case14_return_direct_from_objmode_ctx.<locals>.fooŸ  sƒ   € Ý  :Ð.Ñ.Ô.ð ð Ø�Q‘�Øðð ð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ð s   ‘%¥)¬)r»   r)  zDunsupported control flow: due to return statements inside with block)rq   r¼   r(  )r   r³   r   r²   r   r  r@  r´   rµ   r¶   ÚtestingÚassert_array_equal)rd   rø   r¸   rO  r¹   Úresults         r(   Ú*test_case14_return_direct_from_objmode_ctxz6TestLiftObj.test_case14_return_direct_from_objmode_ctxž  s&  € ð	ð 	ð 	õ
 ˜ÒÐà×"Ò"¥6Ô#7Ñ8Ô8ð *¸FÝ˜C‘y”y�Ø�•R”X˜i˜i˜iÑ(Ô(Ñ)Ô)Ð)ð*ð *ð *ñ *ô *ð *ð *ð *ð *ð *ð *øøøð *ð *ð *ð *ð YˆCØ�MŠM˜#�s 6Ô#3Ñ4Ô4Ñ5Ô5Ð5Ð5Ð5à�S�œ ) ) )Ñ,Ô,Ñ-Ô-ˆFÝŒJ×)Ò)­"¬(°9°9°9Ñ*=Ô*=¸vÑFÔFÐFÐFÐFs   ®/A)Á)A-Á0A-c                 ód   — d„ }t          j        g d¢¦  «        }|                      ||¦  «         d S )Nc                 ó.   ‡— dŠˆfd„} || ¦  «        dz   S )Nr7   c                 ó€   •— t          d¬¦  «        5  t          | ¦  «         | ‰z   cd d d ¦  «         S # 1 swxY w Y   d S )Nru  r9   r6  )r:   Újs    €r(   ró   zHTestLiftObj.test_case15_close_over_objmode_ctx.<locals>.foo.<locals>.bar¶  sŠ   ø€ Ý$ zÐ2Ñ2Ô2ð !ð !Ý˜!‘H”H�HØ˜q™5ð!ð !ð !ð !ñ !ô !ð !ð !ð !ð !ð !ð !øøøð !ð !ð !ð !ð !ð !s   ’3³7º7rq   r2   )r:   ró   rŠ  s     @r(   rø   z;TestLiftObj.test_case15_close_over_objmode_ctx.<locals>.foo³  s5   ø€ ØˆAð!ð !ð !ð !ð !ð �3�q‘6”6˜A‘:Ðr*   r)  r?  rA  s      r(   Ú"test_case15_close_over_objmode_ctxz.TestLiftObj.test_case15_close_over_objmode_ctx°  sB   € ð	ð 	ð 	õ ŒH�Y�Y�YÑÔˆØ×+Ò+¨C°Ñ3Ô3Ð3Ð3Ð3r*   c                 óv   ‡— ddl mŠ ˆfd„}t          j        g d¢¦  «        }|                      ||¦  «         d S )Nr   )Úsparsec                 óÔ   •— t          d¬¦  «        5  t          | ¦  «         ‰                     | ¦  «        }t          j        |d         ¦  «        }d d d ¦  «         n# 1 swxY w Y   |S )Nr  rK  )r   r   )r   r0   Ú
csr_matrixr  r  )r:   ÚspxrL  Úsps      €r(   rø   z>TestLiftObj.test_case16_scipy_call_in_objmode_ctx.<locals>.fooÂ  s¡   ø€ Ý  7Ð+Ñ+Ô+ð (ð (Ý�a‘”�Ø—m’m AÑ&Ô&�õ ”H˜S œYÑ'Ô'�ð(ð (ð (ñ (ô (ð (ð (ð (ð (ð (ð (øøøð (ð (ð (ð (ð ˆHs   ’?AÁA!Á$A!r)  )Úscipyr�  r  r@  rï   )rd   rø   r:   r‘  s      @r(   Ú%test_case16_scipy_call_in_objmode_ctxz1TestLiftObj.test_case16_scipy_call_in_objmode_ctx¾  s_   ø€ à&Ð&Ð&Ð&Ð&Ð&ð	ð 	ð 	ð 	ð 	õ ŒH�Y�Y�YÑÔˆØ×+Ò+¨C°Ñ3Ô3Ð3Ð3Ð3r*   c                 óv   ‡‡— dd l Šˆˆfd„Št          j        g d¢¦  «        }|                      ‰|¦  «         d S )Nr   c                 ó€   •— t          ¦   «         5  ‰                     ‰¦  «         d d d ¦  «         d S # 1 swxY w Y   d S rQ   )r   Údis)r:   r–  rø   s    €€r(   rø   z7TestLiftObj.test_case17_print_own_bytecode.<locals>.fooÑ  s‚   ø€ Ý Ñ"Ô"ð ð Ø—’˜‘”�ðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   �3³7º7r)  )r–  r  r@  rï   )rd   r:   r–  rø   s     @@r(   Útest_case17_print_own_bytecodez*TestLiftObj.test_case17_print_own_bytecodeÎ  s\   øø€ Øˆ
ˆ
ˆ
ð	ð 	ð 	ð 	ð 	ð 	õ ŒH�Y�Y�YÑÔˆØ×+Ò+¨C°Ñ3Ô3Ð3Ð3Ð3r*   c                 ó†   — d„ }t          j        g d¢¦  «        }t          d„ ¦  «        }|                      |||¦  «         d S )Nc                 óv   — t          ¦   «         5   | |d         ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S ra   rö   )r$   r:   s     r(   rø   zCTestLiftObj.test_case18_njitfunc_passed_to_objmode_ctx.<locals>.fooÙ  sƒ   € Ý Ñ"Ô"ð ð Ø��Q�q”T‘
”
�
ðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   �.®2µ2r)  c                 ó   — | dz   S )NrT   r2   rT  s    r(   ú<lambda>zHTestLiftObj.test_case18_njitfunc_passed_to_objmode_ctx.<locals>.<lambda>Þ  s
   € ˜A ™E€ r*   )r  r@  r   rï   )rd   rø   r:   rÇ   s       r(   Ú*test_case18_njitfunc_passed_to_objmode_ctxz6TestLiftObj.test_case18_njitfunc_passed_to_objmode_ctx×  sS   € ð	ð 	ð 	õ ŒH�Y�Y�YÑÔˆÝ�/�/Ñ"Ô"ˆØ×+Ò+¨C°°QÑ7Ô7Ð7Ð7Ð7r*   c                 óH  ‡— ˆfd„Š|                       t          j        t          j        f¦  «        5 }t	          ‰¦  «        } |t          j        g d¢¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   d}|                      |t          |j	        ¦  «        ¦  «         d S )Nc                 óš   •— t          ¦   «         5  | dk    r	 d d d ¦  «         dS 	 d d d ¦  «         n# 1 swxY w Y    ‰| dz
  ¦  «        }|S )Nr   é   r5   rö   )r:   Úretrø   s     €r(   rø   z.TestLiftObj.test_case19_recursion.<locals>.fooã  s³   ø€ Ý Ñ"Ô"ð ð Ø˜’6�6Øðð ð ñ ô ð ð ð Øðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð �#�a˜!‘e‘*”*ˆCØˆJs   �2²6¹6r)  zUntyped global name 'foo')
r³   r   r¯   r²   r   r  r@  r´   rµ   r¶   )rd   r¸   rO  r¹   rø   s       @r(   Útest_case19_recursionz!TestLiftObj.test_case19_recursioná  sä   ø€ ð	ð 	ð 	ð 	ð 	ð ×Ò¥Ô 2µFÔ4HÐIÑJÔJð 	&ÈfÝ˜‘9”9ˆDØˆD•”˜)˜)˜)Ñ$Ô$Ñ%Ô%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&ð *ˆØ�Š�c�3˜vÔ/Ñ0Ô0Ñ1Ô1Ð1Ð1Ð1s   ²/A-Á-A1Á4A1c                 ód   — d„ }t          j        g d¢¦  «        }|                      ||¦  «         d S )Nc                 ó  — t           j                             d¦  «         t           j                             ¦   «         }t	          d¬¦  «        5  t           j                             ¦   «         }d d d ¦  «         n# 1 swxY w Y   | |z   |z   S ©Nr   r  rT  ©r  ÚrandomÚseedÚrandr   ©r:   r>   r!  s      r(   rø   z1TestLiftObj.test_case20_rng_works_ok.<locals>.fooñ  s®   € ÝŒI�NŠN˜1ÑÔÐÝ”	—’Ñ Ô ˆAÝ  9Ð-Ñ-Ô-ð %ð %å”I—N’NÑ$Ô$�ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %ð �q‘5˜1‘9Ðs   ÁA9Á9A=Â A=r)  r?  rA  s      r(   Útest_case20_rng_works_okz$TestLiftObj.test_case20_rng_works_okï  sB   € ð	ð 	ð 	õ ŒH�Y�Y�YÑÔˆØ×+Ò+¨C°Ñ3Ô3Ð3Ð3Ð3r*   c                 ód   — d„ }t          j        g d¢¦  «        }|                      ||¦  «         d S )Nc                 óV  — t           j                             d¦  «         t           j                             ¦   «         }t	          d¬¦  «        5  t           j                             d¦  «         t           j                             ¦   «         }d d d ¦  «         n# 1 swxY w Y   | |z   |z   S r¤  r¥  r©  s      r(   rø   z6TestLiftObj.test_case21_rng_seed_works_ok.<locals>.fooý  sÂ   € ÝŒI�NŠN˜1ÑÔÐÝ”	—’Ñ Ô ˆAÝ  9Ð-Ñ-Ô-ð %ð %å”	—’˜qÑ!Ô!Ð!Ý”I—N’NÑ$Ô$�ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %ð �q‘5˜1‘9Ðs   Á>BÂBÂBr)  r?  rA  s      r(   Útest_case21_rng_seed_works_okz)TestLiftObj.test_case21_rng_seed_works_okü  sB   € ð	ð 	ð 	õ ŒH�Y�Y�YÑÔˆØ×+Ò+¨C°Ñ3Ô3Ð3Ð3Ð3r*   c                 óÒ   ‡— d„ Št           ˆfd„¦   «         }|                       |¦   «         |                     ¦   «         ¦  «         |                      t          t
          ¦  «         d S )Nc                 ó‚   — t          j        t          t          |                      ¦   «         ¦  «        ¦  «        ¦  «        S rQ   )r  r-  ÚlistÚreversedÚtolistr9   s    r(   ró   z'TestLiftObj.test_example01.<locals>.bar  s*   € Ý”:�d¥8¨A¯HªH©J¬JÑ#7Ô#7Ñ8Ô8Ñ9Ô9Ð9r*   c                  óœ   •— t          j        d¦  «        } t          d¬¦  «        5  |  ‰| ¦  «        z   }d d d ¦  «         n# 1 swxY w Y   |S )NrT   zintp[:]r  )r  r  r   r  s     €r(   rø   z'TestLiftObj.test_example01.<locals>.foo  sŽ   ø€ å”	˜!‘”ˆAÝ˜9Ð%Ñ%Ô%ð ð à˜˜˜A™œ‘J�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ˆHs   ¦AÁAÁA)r   rå   Úpy_funcÚassertIsr   r   )rd   rø   ró   s     @r(   Útest_example01zTestLiftObj.test_example01	  sw   ø€ ð	:ð 	:ð 	:õ 
ð	ð 	ð 	ð 	ñ 
Œð	ð 	×Ò  ¡¤ s§{¢{¡}¤}Ñ5Ô5Ð5Ø�Š•g�Ñ/Ô/Ð/Ð/Ð/r*   c                 ó¨   ‡— d„ Št          ‰¦  «        d„ ¦   «         }t          j        ˆfd„¦   «         }|                       |¦   «         d¦  «         d S )Nc                 ó   — d S rQ   r2   )Úss    r(   rø   z1TestLiftObj.test_objmode_in_overload.<locals>.foo  ó   € ØˆDr*   c                 ó   — d„ }|S )Nc                 ó`   — t          d¬¦  «        5  | dz   }d d d ¦  «         n# 1 swxY w Y   |S )Nr2  ©r‘   r¼   ©r   )r¹  r‘   s     r(   ÚimplzHTestLiftObj.test_objmode_in_overload.<locals>.foo_overload.<locals>.impl  sv   € Ý Ð(Ñ(Ô(ð  ð  Ø˜a™%�Cð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  à�
rU  r2   )r¹  r¿  s     r(   Úfoo_overloadz:TestLiftObj.test_objmode_in_overload.<locals>.foo_overload  s   € ðð ð ð ˆKr*   c                  ó   •—  ‰ d¦  «        S rõ   r2   ©rø   s   €r(   Úfz/TestLiftObj.test_objmode_in_overload.<locals>.f%  s   ø€ à�3�q‘6”6ˆMr*   r(  )r   rû   r   rc   )rd   rÀ  rÃ  rø   s      @r(   Útest_objmode_in_overloadz$TestLiftObj.test_objmode_in_overload  s~   ø€ ð	ð 	ð 	õ 
�#‰Œð	ð 	ñ 
Œð	õ 
Œð	ð 	ð 	ð 	ñ 
Œð	ð 	×Ò˜˜™œ˜eÑ$Ô$Ð$Ð$Ð$r*   c                 óœ   — t           d„ ¦   «         } |¦   «         }|                      |t          ¦  «         |                      |d¦  «         d S )Nc                  ód   — t          t          ¬¦  «        5  d} d d d ¦  «         n# 1 swxY w Y   | S ©N©Úvalçš™™™™™(@)r   Úgv_typerÈ  s    r(   Ú
global_varz8TestLiftObj.test_objmode_gv_variable.<locals>.global_var,  sr   € å�WÐ%Ñ%Ô%ð ð Ø�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð àˆJó   –%¥)¬)é   )r   ÚassertIsInstancer"  rc   )rd   rÌ  r   s      r(   Útest_objmode_gv_variablez$TestLiftObj.test_objmode_gv_variable+  sZ   € Ý	ð	ð 	ñ 
Œð	ð
 ˆj‰lŒlˆà×Ò˜c¥3Ñ'Ô'Ð'Ø×Ò˜˜bÑ!Ô!Ð!Ð!Ð!r*   c                 ó¬   — t           d„ ¦   «         }|                      t          j        d¦  «        5   |¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Nc                  ód   — t          t          ¬¦  «        5  d} d d d ¦  «         n# 1 swxY w Y   | S )NrÈ  rý   )r   Úgv_type2rÈ  s    r(   rÌ  z>TestLiftObj.test_objmode_gv_variable_error.<locals>.global_var8  sr   € å�XÐ&Ñ&Ô&ð ð Ø�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð àˆJrÍ  zIError handling objmode argument 'val'. Global 'gv_type2' is not defined\.©r   ÚassertRaisesRegexr   r²   )rd   rÌ  s     r(   Útest_objmode_gv_variable_errorz*TestLiftObj.test_objmode_gv_variable_error7  s¯   € Ý	ð	ð 	ñ 
Œð	ð
 ×#Ò#ÝÔ ð2ñ
ô 
ð 	ð 	ð
 ˆJ‰LŒLˆLð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	ó   ±A	Á	AÁAc                 ó@  — t           d„ ¦   «         }t           d„ ¦   «         }||fD ]x}|                      t          |¦  «        ¬¦  «        5   |¦   «         }|                      |t          ¦  «         |                      |d¦  «         d d d ¦  «         n# 1 swxY w Y   Œyd S )Nc                  ón   — t          t          j        ¬¦  «        5  d} d d d ¦  «         n# 1 swxY w Y   | S rÇ  )r   r   r2  rÈ  s    r(   Úmodattr1z6TestLiftObj.test_objmode_gv_mod_attr.<locals>.modattr1F  st   € å�UœZÐ(Ñ(Ô(ð ð Ø�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð àˆJó   ›*ª.±.c                  óx   — t          t          j        j        ¬¦  «        5  d} d d d ¦  «         n# 1 swxY w Y   | S rÇ  )r   rû   r   r2  rÈ  s    r(   Úmodattr2z6TestLiftObj.test_objmode_gv_mod_attr.<locals>.modattr2L  sw   € å�Uœ[Ô-Ð.Ñ.Ô.ð ð Ø�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð àˆJs    /¯3¶3)rÇ   rÎ  )r   ÚsubTestrµ   rÏ  r"  rc   )rd   rÚ  rÝ  rÇ   r   s        r(   Útest_objmode_gv_mod_attrz$TestLiftObj.test_objmode_gv_mod_attrE  sý   € Ý	ð	ð 	ñ 
Œð	õ
 
ð	ð 	ñ 
Œð	ð
 ˜XÐ&ð 	*ð 	*ˆBØ—’¥ R¡¤�Ñ)Ô)ð *ð *Ø�b‘d”d�à×%Ò% c­3Ñ/Ô/Ð/Ø× Ò   bÑ)Ô)Ð)ð	*ð *ð *ñ *ô *ð *ð *ð *ð *ð *ð *øøøð *ð *ð *ð *øð	*ð 	*s   Á
<BÂB	ÂB	c                 ó¬   — t           d„ ¦   «         }|                      t          j        d¦  «        5   |¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Nc                  ón   — t          t          j        ¬¦  «        5  d} d d d ¦  «         n# 1 swxY w Y   | S rÇ  )r   r   ÚTHIS_DOES_NOT_EXISTrÈ  s    r(   Úmoderrorz<TestLiftObj.test_objmode_gv_mod_attr_error.<locals>.moderrorZ  su   € å�UÔ6Ð7Ñ7Ô7ð ð Ø�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð àˆJrÛ  zQError handling objmode argument 'val'. Getattr cannot be resolved at compile-timerÔ  ©rd   rã  s     r(   Útest_objmode_gv_mod_attr_errorz*TestLiftObj.test_objmode_gv_mod_attr_errorY  s¯   € Ý	ð	ð 	ñ 
Œð	ð ×#Ò#ÝÔ ð:ñ
ô 
ð 	ð 	ð
 ˆH‰JŒJˆJð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	r×  c                 ó¬   — t           d„ ¦   «         }|                      t          j        d¦  «        5   |¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Nc                  ó¬   — t          t          j        t          j        t          j        ¬¦  «        5  d} d}d}d d d ¦  «         n# 1 swxY w Y   t
          S )N©Úv1Úv2Úv3rÊ  )r   r   r2  râ  Úfloat32rÉ  rè  s      r(   rã  zETestLiftObj.test_objmode_gv_mod_attr_error_multiple.<locals>.moderrorg  s�   € å�EœJ­5Ô+DÝ!œMð+ñ +ô +ð ð à�Ø�Ø�ð	ð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ
 ˆJs   ±AÁAÁAzPError handling objmode argument 'v2'. Getattr cannot be resolved at compile-timerÔ  rä  s     r(   Ú'test_objmode_gv_mod_attr_error_multiplez3TestLiftObj.test_objmode_gv_mod_attr_error_multiplef  s¯   € Ý	ð	ð 	ñ 
Œð	ð ×#Ò#ÝÔ ð:ñ
ô 
ð 	ð 	ð
 ˆH‰JŒJˆJð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	r×  c                 óü   ‡— d„ Št          ‰¦  «        d„ ¦   «         }t          ˆfd„¦   «         }|                       |¦   «         t          j        d¦  «                             t          j        ¦  «        ¦  «         d S )Nc                  ó   — d S rQ   r2   r2   r*   r(   rø   z>TestLiftObj.test_objmode_closure_type_in_overload.<locals>.foow  rº  r*   c                  ó:   ‡— t           j        d d …         Šˆfd„} | S )Nc                  óº   •— t          ‰¬¦  «        5  t          j        d¦  «                             t          j        ¦  «        } d d d ¦  «         n# 1 swxY w Y   | S ©Nr½  r7   ©r   r  r  r  r  ©r‘   Ú	shrubberys    €r(   r¿  zUTestLiftObj.test_objmode_closure_type_in_overload.<locals>.foo_overload.<locals>.impl}  ó‹   ø€ Ý Ð+Ñ+Ô+ð ;ð ;Ýœ) B™-œ-×.Ò.­r¬zÑ:Ô:�Cð;ð ;ð ;ñ ;ô ;ð ;ð ;ð ;ð ;ð ;ð ;øøøð ;ð ;ð ;ð ;à�
ó   ’2AÁAÁA©r   r  ©r¿  rõ  s    @r(   rÀ  zGTestLiftObj.test_objmode_closure_type_in_overload.<locals>.foo_overloadz  s3   ø€ åœ a a aÔ(ˆIðð ð ð ð ð ˆKr*   c                  ó   •—  ‰ ¦   «         S rQ   r2   rÂ  s   €r(   ró   z>TestLiftObj.test_objmode_closure_type_in_overload.<locals>.barƒ  ó   ø€ à�3‘5”5ˆLr*   r7   )r   r   rå   r  r  r  r  ©rd   rÀ  ró   rø   s      @r(   Ú%test_objmode_closure_type_in_overloadz1TestLiftObj.test_objmode_closure_type_in_overloadv  s”   ø€ ð	ð 	ð 	õ 
�#‰Œð	ð 	ñ 
Œð	õ 
ð	ð 	ð 	ð 	ñ 
Œð	ð 	×Ò  ¡¤¥r¤y°¡}¤}×';Ò';½B¼JÑ'GÔ'GÑHÔHÐHÐHÐHr*   c                 óè   ‡— d„ Št          ‰¦  «        d„ ¦   «         }t          ˆfd„¦   «         }|                      t          j        d¦  «        5   |¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Nc                  ó   — d S rQ   r2   r2   r*   r(   rø   zDTestLiftObj.test_objmode_closure_type_in_overload_error.<locals>.fooŠ  rº  r*   c                  ó<   ‡— t           j        d d …         Šˆfd„} ‹| S )Nc                  óº   •— t          ‰¬¦  «        5  t          j        d¦  «                             t          j        ¦  «        } d d d ¦  «         n# 1 swxY w Y   | S rò  ró  rô  s    €r(   r¿  z[TestLiftObj.test_objmode_closure_type_in_overload_error.<locals>.foo_overload.<locals>.impl�  rö  r÷  rø  rù  s    @r(   rÀ  zMTestLiftObj.test_objmode_closure_type_in_overload_error.<locals>.foo_overload�  s6   ø€ åœ a a aÔ(ˆIðð ð ð ð ð ØˆKr*   c                  ó   •—  ‰ ¦   «         S rQ   r2   rÂ  s   €r(   ró   zDTestLiftObj.test_objmode_closure_type_in_overload_error.<locals>.bar™  rû  r*   zIError handling objmode argument 'out'. Freevar 'shrubbery' is not defined)r   r   rÕ  r   r¯   rü  s      @r(   Ú+test_objmode_closure_type_in_overload_errorz7TestLiftObj.test_objmode_closure_type_in_overload_error‰  sì   ø€ ð	ð 	ð 	õ 
�#‰Œð		ð 		ñ 
Œð		õ 
ð	ð 	ð 	ð 	ñ 
Œð	ð ×#Ò#ÝÔð2ñ
ô 
ð 	ð 	ð
 ˆC‰EŒEˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   ÁA'Á'A+Á.A+c                 ó¬   — t           d„ ¦   «         }|                      t          j        d¦  «        5   |¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Nc                  ód   — t          d¬¦  «        5  d} d d d ¦  «         n# 1 swxY w Y   t          S )Nrq   )Úbadr5   )r   rÉ  r½  s    r(   rã  z6TestLiftObj.test_objmode_invalid_use.<locals>.moderror¥  sr   € å˜UÐ#Ñ#Ô#ð ð Ø�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð åˆJs   ‘  $§$z¤Error handling objmode argument 'bad'. The value must be a compile-time constant either as a non-local variable or a getattr expression that refers to a Numba type.rÔ  rä  s     r(   Útest_objmode_invalid_usez$TestLiftObj.test_objmode_invalid_use¤  s¯   € Ý	ð	ð 	ñ 
Œð	ð ×#Ò#ÝÔ ð'ñ
ô 
ð 	ð 	ð ˆH‰JŒJˆJð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	r×  c                 óR  ‡— t           j        d d …         Št          ˆfd„¦   «         } |¦   «         \  }}}|                      |d¦  «         |                      |d¦  «         |                      |t	          j        d¦  «                             t          j        ¦  «        ¦  «         d S )Nc                  óÖ   •— t          dt          ‰¬¦  «        5  d} | }t          j        d¦  «                             t          j        ¦  «        }d d d ¦  «         n# 1 swxY w Y   | ||fS )Nr  )Út1Út2Út3ç    :(ArT   )r   rË  r  r  r  Úint32)r
  r  r  Úarray_tys      €r(   rø   z5TestLiftObj.test_objmode_multi_type_args.<locals>.fooµ  s¤   ø€ õ
 ˜I­'°hÐ?Ñ?Ô?ð 3ð 3Ø�Ø�Ý”Y˜q‘\”\×(Ò(­¬Ñ2Ô2�ð3ð 3ð 3ñ 3ô 3ð 3ð 3ð 3ð 3ð 3ð 3øøøð 3ð 3ð 3ð 3ð �r˜2�:Ðs   ™6AÁAÁ"Ar  i  rT   )r   r  r   rå   r  r  r  )rd   rø   r
  r  r  r  s        @r(   Útest_objmode_multi_type_argsz(TestLiftObj.test_objmode_multi_type_args³  s¨   ø€ Ý”;˜q˜q˜q”>ˆÝ	ð	ð 	ð 	ð 	ñ 
Œð	ð �S‘U”U‰
ˆˆB�Ø×Ò  HÑ-Ô-Ð-Ø×Ò  FÑ+Ô+Ð+Ø×Ò ¥B¤I¨a¡L¤L×$7Ò$7½¼Ñ$AÔ$AÑBÔBÐBÐBÐBr*   c                 ó.  ‡‡‡	— dt           j        fdt           j        d d …         fg}t          |¦  «         G d„ dt          ¦  «        ¦   «         Šd} ‰|¦  «        Š	d„ Št          ‰¦  «        ˆˆ	fd„¦   «         }t          ˆfd„¦   «         } |¦   «         }|                      |‰¦  «         |                      | 	                    d	d
¦  «        d¦  «         t          j        dt          j        ¬¦  «        d
z   }|                      |j        |¦  «         d S )NÚvaluer@  c                   óF   — e Zd Zd„ Zed„ ¦   «         Zd„ Zed„ ¦   «         ZdS )ú.TestLiftObj.test_objmode_jitclass.<locals>.Bagc                 ó^   — || _         t          j        |t          j        ¬¦  «        | _        d S )Nr#  )r  r  Úzerosrì  r@  )rd   r  s     r(   Ú__init__z7TestLiftObj.test_objmode_jitclass.<locals>.Bag.__init__Í  s%   € Ø"�”
ÝœX eµ2´:Ð>Ñ>Ô>�”
�
�
r*   c                 ó   — | j         j        S rQ   )r@  Úsizerl   s    r(   r  z3TestLiftObj.test_objmode_jitclass.<locals>.Bag.sizeÑ  s   € à”z”Ð&r*   c                 óh   — t          | j        ¦  «        D ]}| j        |xx         |z  cc<   Œ| j        S rQ   )rB   r  r@  )rd   rÉ  rD   s      r(   Ú	incrementz8TestLiftObj.test_objmode_jitclass.<locals>.Bag.incrementÕ  s=   € Ý˜tœyÑ)Ô)ð )ð )�AØ”J˜q�M�M”M SÑ(�M�M‘M�MØ”zÐ!r*   c                 ó   — | |z   S rQ   r2   r=   s     r(   Úaddz2TestLiftObj.test_objmode_jitclass.<locals>.Bag.addÚ  s   € à˜1‘u�r*   N)	ry   rz   r{   r  Úpropertyr  r  Ústaticmethodr  r2   r*   r(   ÚBagr  Ë  sh   € € € € € ð?ð ?ð ?ð ð'ð 'ñ ŒXð'ð"ð "ð "ð
 ðð ñ Œ\ðð ð r*   r   é   c                  ó   — d S rQ   r2   r2   r*   r(   rø   z.TestLiftObj.test_objmode_jitclass.<locals>.fooá  rº  r*   c                  ó$   •‡— ‰j         Šˆˆfd„} | S )Nc                  ó˜   •— t          ‰¬¦  «        5   ‰d¦  «        } |                      d¦  «         d d d ¦  «         n# 1 swxY w Y   | S )Nr½  rý   r¼   )r   r  )r‘   r   rõ  s    €€r(   r¿  zETestLiftObj.test_objmode_jitclass.<locals>.foo_overload.<locals>.implç  s�   ø€ Ý Ð+Ñ+Ô+ð %ð %Ø˜#˜c™(œ(�CØ—M’M !Ñ$Ô$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %ð �
s   ’!?¿AÁA)Ú_numba_type_)r¿  rõ  r   Úmybags    @€€r(   rÀ  z7TestLiftObj.test_objmode_jitclass.<locals>.foo_overloadä  s1   øø€ àÔ*ˆIðð ð ð ð ð ð
 ˆKr*   c                  ó   •—  ‰ ¦   «         S rQ   r2   rÂ  s   €r(   ró   z.TestLiftObj.test_objmode_jitclass.<locals>.barî  rû  r*   rq   r¼   rT   rý   r#  )r   r  rì  r   Úobjectr   r   rÏ  rc   r  r  r  rå   r@  )
rd   ÚspecÚnrÀ  ró   r!  Ú	exp_arrayr   rø   r&  s
          @@@r(   Útest_objmode_jitclassz!TestLiftObj.test_objmode_jitclassÅ  s[  øøø€ à•e”kÐ"Ø•e”m A A AÔ&Ð'ð
ˆõ
 
�$‰Œð	ð 	ð 	ð 	ð 	•&ñ 	ô 	ñ 
Œð	ð$ ˆØ��A‘”ˆð	ð 	ð 	õ 
�#‰Œð	ð 	ð 	ð 	ð 	ñ 
Œð	õ 
ð	ð 	ð 	ð 	ñ 
Œð	ð ˆC‰EŒEˆØ×Ò˜a Ñ%Ô%Ð%Ø×Ò˜Ÿš˜q !™œ eÑ,Ô,Ð,Ý”H˜S­¬
Ð3Ñ3Ô3°aÑ7ˆ	Ø×Ò ¤¨Ñ3Ô3Ð3Ð3Ð3r*   c                 ó`   — t          d¬¦  «        5  | dz  }d d d ¦  «         n# 1 swxY w Y   |S ©Nr  ©Úoutputr7   r¾  ©r:   r0  s     r(   Úcase_objmode_cachezTestLiftObj.case_objmode_cacheù  sv   € å˜IÐ&Ñ&Ô&ð 	ð 	Ø˜‘VˆFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	àˆrU  c                 ó   ‡— t          g d¢¦  «        Št          ˆfd„¦   «         }|                      t          j        ¦  «        5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   |                      t          |j        ¦  «        d¦  «         d S )N©r5   rq   r¼   r(  rT   c                  ó`   •— t          ‰¬¦  «        5  g d¢} d d d ¦  «         n# 1 swxY w Y   | S )Nr½  r4  r¾  )r‘   Úret_types    €r(   Útest2z6TestLiftObj.test_objmode_reflected_list.<locals>.test2  sw   ø€ å˜XÐ&Ñ&Ô&ð &ð &Ø%�o�o�ð&ð &ð &ñ &ô &ð &ð &ð &ð &ð &ð &øøøð &ð &ð &ð &àˆJó   ’#£'ª'z”Objmode context failed. Argument 'out' is declared as an unsupported type: reflected list\(int(32|64)\)<iv=None>. Reflected types are not supported.©r   r   r³   r   r²   r[  rµ   r¶   ©rd   r7  r¸   r6  s      @r(   Útest_objmode_reflected_listz'TestLiftObj.test_objmode_reflected_listÿ  sâ   ø€ Ý˜/˜/˜/Ñ*Ô*ˆÝ	ð	ð 	ð 	ð 	ñ 
Œð	ð
 ×Ò�vÔ3Ñ4Ô4ð 	¸ØˆE‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×ÒÝ�Ô Ñ!Ô!ð3ñ	
ô 	
ð 	
ð 	
ð 	
ó   ÁAÁAÁ"Ac                 ó   ‡— t          h d£¦  «        Št          ˆfd„¦   «         }|                      t          j        ¦  «        5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   |                      t          |j        ¦  «        d¦  «         d S )N¾   r5   rq   r¼   r(  rT   c                  ó`   •— t          ‰¬¦  «        5  h d£} d d d ¦  «         n# 1 swxY w Y   | S )N)r…  r>  r¾  )r…  r6  s    €r(   r7  z5TestLiftObj.test_objmode_reflected_set.<locals>.test2  sw   ø€ å Ð)Ñ)Ô)ð )ð )Ø(˜˜�ð)ð )ð )ñ )ô )ð )ð )ð )ð )ð )ð )øøøð )ð )ð )ð )àˆMr8  z�Objmode context failed. Argument 'result' is declared as an unsupported type: reflected set\(int(32|64)\). Reflected types are not supported.r9  r:  s      @r(   Útest_objmode_reflected_setz&TestLiftObj.test_objmode_reflected_set  sâ   ø€ Ý˜/˜/˜/Ñ*Ô*ˆÝ	ð	ð 	ð 	ð 	ñ 
Œð	ð
 ×Ò�vÔ3Ñ4Ô4ð 	¸ØˆE‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×ÒÝ�Ô Ñ!Ô!ð3ñ	
ô 	
ð 	
ð 	
ð 	
r<  c                 óF  ‡— t          j        t           j        t           j        ¦  «        Št          ˆfd„¦   «         }|                      t          ¦  «        5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   |                      dt          |j	        ¦  «        ¦  «         d S )Nc                  ób   •— t          ‰¬¦  «        5  dddœ} d d d ¦  «         n# 1 swxY w Y   | S )N©Úresr5   rq   )r,   r-   r¾  ©rD  r6  s    €r(   Útest4z2TestLiftObj.test_objmode_typed_dict.<locals>.test4%  s{   ø€ å˜XÐ&Ñ&Ô&ð 'ð 'Ø AÐ&Ð&�ð'ð 'ð 'ñ 'ô 'ð 'ð 'ð 'ð 'ð 'ð 'øøøð 'ð 'ð 'ð 'àˆJs   ’$¤(«(zFcan't unbox a <class 'dict'> as a <class 'numba.typed.typeddict.Dict'>)
r   ÚDictTypeÚunicode_typer  r   r³   rV  r´   rµ   r¶   ©rd   rF  r¸   r6  s      @r(   Útest_objmode_typed_dictz#TestLiftObj.test_objmode_typed_dict#  sâ   ø€ Ý”>¥%Ô"4µe´kÑBÔBˆÝ	ð	ð 	ð 	ð 	ñ 
Œð	ð
 ×Ò�yÑ)Ô)ð 	¨VØˆE‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�Šð9å�Ô Ñ!Ô!ñ	
ô 	
ð 	
ð 	
ð 	
s   ÁA.Á.A2Á5A2c                 ó0  ‡— t          j        t           j        ¦  «        Št          ˆfd„¦   «         }|                      t
          ¦  «        5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   |                      t          |j        ¦  «        d¦  «         d S )Nc                  ó`   •— t          ‰¬¦  «        5  ddg} d d d ¦  «         n# 1 swxY w Y   | S )NrC  r5   rq   r¾  rE  s    €r(   rF  z2TestLiftObj.test_objmode_typed_list.<locals>.test45  sw   ø€ å˜XÐ&Ñ&Ô&ð ð Ø˜!�f�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð àˆJr8  zLcan't unbox a <class 'list'> as a (<class ')?numba.typed.typedlist.List('>)?)	r   ÚListTyper  r   r³   rV  r[  rµ   r¶   rI  s      @r(   Útest_objmode_typed_listz#TestLiftObj.test_objmode_typed_list3  sà   ø€ Ý”>¥%¤+Ñ.Ô.ˆÝ	ð	ð 	ð 	ð 	ñ 
Œð	ð
 ×Ò�yÑ)Ô)ð 	¨VØˆE‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à×ÒÝ�Ô Ñ!Ô!ð@ñ	
ô 	
ð 	
ð 	
ð 	
s   ÁA#Á#A'Á*A'c                 óö   — t           d„ ¦   «         }t          j        dt          j        ¦  «                             d¦  «        }|                     |¦  «        } ||¦  «        }|                      ||¦  «         d S )Nc                 óŠ   — t          j        d¬¦  «        5  |                      d¦  «        }d d d ¦  «         n# 1 swxY w Y   |S )Nz
int64[::1]r  r  )rû   r   Úviewr=   s     r(   rø   z1TestLiftObj.test_objmode_use_of_view.<locals>.fooF  s~   € å” Ð.Ñ.Ô.ð $ð $Ø—F’F˜7‘O”O�ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $àˆHs   –8¸<¿<r5   r  )r   r  Úonesr  rQ  r´  rå   )rd   rø   r  Úexpectedr¤   s        r(   Útest_objmode_use_of_viewz$TestLiftObj.test_objmode_use_of_viewC  sx   € õ 
ð	ð 	ñ 
Œð	õ
 ŒG�A•r”xÑ Ô ×%Ò% iÑ0Ô0ˆØ—;’;˜q‘>”>ˆØˆc�!‰fŒfˆØ×Ò ¨#Ñ.Ô.Ð.Ð.Ð.r*   N);ry   rz   r{   r€   rÝ   rï   rÿ   r	  r  r  r%  rË   r/  r3  r<  rB  rH  rP  rW  r]  rc  rk  ro  rr  rv  r{  r€  r†  rÀ   ÚexpectedFailurer‹  r   r“  r—  rÏ   rœ  r   r¡  rª  r­  r¶  rÄ  rÐ  rÖ  rß  rå  rí  rý  r  r  r  r,  r  r2  r;  r@  rJ  rN  rT  r2   r*   r(   rÑ   rÑ   <  s�  € € € € € ð<ð <ð <ð!ð !ð !ð5ð 5ð 5ð$@ð @ð @ð&8ð 8ð 8ð 6ð 6ð 6ð@ð @ð @ð&6ð 6ð 6ð #ð6ð 6ñ #Ô"ð6ð6ð 6ð 6ð$ #ð@ð @ñ #Ô"ð@ð"8ð 8ð 8ð$ #ð4ð 4ñ #Ô"ð4ðð ð ð"
ð 
ð 
ð&5ð 5ð 5ð"ð ð ð*7ð 7ð 7ð(
ð 
ð 
ð  #ð
4ð 
4ñ #Ô"ð
4ð4ð 4ð 4ð
ð 
ð 
ð"4ð 4ð 4ðGð Gð Gð$ Ôð4ð 4ñ Ôð4ð ð4ð 4ñ Ôð4ð4ð 4ð 4ð 'ð8ð 8ñ 'Ô&ð8ð ð2ð 2ñ Ôð2ð Ôð
4ð 
4ñ Ôð
4ð4ð 4ð 4ð0ð 0ð 0ð %ð %ð %ð$
"ð 
"ð 
"ðð ð ð*ð *ð *ð(ð ð ðð ð ð Ið Ið Ið&ð ð ð6ð ð ðCð Cð Cð$14ð 14ð 14ðh ðð ñ „\ðð

ð 
ð 
ð$
ð 
ð 
ð$
ð 
ð 
ð 
ð 
ð 
ð /ð /ð /ð /ð /r*   rÑ   c                 ó   — | dz  S ©Nr7   r2   r9   s    r(   Úcase_inner_pyfuncrX  R  s   € Øˆr‰6€Mr*   c                 ót   — t          d¬¦  «        5  t          | ¦  «        }d d d ¦  «         n# 1 swxY w Y   |S ©Nr  r/  )r   rX  r1  s     r(   r2  r2  V  sz   € Ý	˜	Ð	"Ñ	"Ô	"ð &ð &Ý" 1Ñ%Ô%ˆð&ð &ð &ñ &ô &ð &ð &ð &ð &ð &ð &øøøð &ð &ð &ð &à€MrM  c                   ó2   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestLiftObjCachingc                 óD   — t          j        dt          j        ¦  «         d S rÓ   rÕ   rl   s    r(   r€   zTestLiftObjCaching.setUp_  rÙ   r*   c                 ó,   — t          j        ¦   «          d S rQ   rÛ   rl   s    r(   rÝ   zTestLiftObjCaching.tearDownb  rÞ   r*   c                 óN  —  t          d¬¦  «        |¦  «        }|                       |d¦  «        d¦  «          t          d¬¦  «        |¦  «        }|                      |j        ¦  «         |                       |d¦  «        d¦  «         |                      |j        ¦  «         d S )NT)Úcacherý   rÊ  )r   rc   ÚassertFalseÚ_cache_hitsÚ
assertTrue)rd   r´  ÚfirstÚseconds       r(   ÚcheckzTestLiftObjCaching.checke  s¤   € Ø •˜4Ð Ñ Ô  Ñ)Ô)ˆØ×Ò˜˜˜s™œ TÑ*Ô*Ð*à!•˜DÐ!Ñ!Ô! 'Ñ*Ô*ˆØ×Ò˜Ô+Ñ,Ô,Ð,Ø×Ò˜˜ ™œ dÑ+Ô+Ð+Ø�Š˜Ô*Ñ+Ô+Ð+Ð+Ð+r*   c                 ó6   — d„ }|                       |¦  «         d S )Nc                 ó`   — t          d¬¦  «        5  | dz  }d d d ¦  «         n# 1 swxY w Y   |S r.  r¾  r1  s     r(   ræ   z=TestLiftObjCaching.test_objmode_caching_basic.<locals>.pyfunco  sv   € Ý 	Ð*Ñ*Ô*ð  ð  Ø˜R™�ð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  àˆMrU  ©rf  )rd   ræ   s     r(   Útest_objmode_caching_basicz-TestLiftObjCaching.test_objmode_caching_basicn  s+   € ð	ð 	ð 	ð
 	�
Š
�6ÑÔÐÐÐr*   c                 óB   ‡— d„ Šˆfd„}|                       |¦  «         d S )Nc                 ó   — | dz  S rW  r2   r9   s    r(   Úother_pyfunczNTestLiftObjCaching.test_objmode_caching_call_closure_bad.<locals>.other_pyfuncw  s   € Ø�r‘6ˆMr*   c                 ón   •— t          d¬¦  «        5   ‰| ¦  «        }d d d ¦  «         n# 1 swxY w Y   |S rZ  r¾  )r:   r0  rm  s     €r(   ræ   zHTestLiftObjCaching.test_objmode_caching_call_closure_bad.<locals>.pyfuncz  s{   ø€ Ý 	Ð*Ñ*Ô*ð )ð )Ø%˜ a™œ�ð)ð )ð )ñ )ô )ð )ð )ð )ð )ð )ð )øøøð )ð )ð )ð )àˆMr  ri  )rd   ræ   rm  s     @r(   Ú%test_objmode_caching_call_closure_badz8TestLiftObjCaching.test_objmode_caching_call_closure_badv  sE   ø€ ð	ð 	ð 	ð	ð 	ð 	ð 	ð 	ð
 	�
Š
�6ÑÔÐÐÐr*   c                 ó:   — |                       t          ¦  «         d S rQ   )rf  r2  rl   s    r(   Ú&test_objmode_caching_call_closure_goodz9TestLiftObjCaching.test_objmode_caching_call_closure_good�  s   € Ø�
Š
Õ%Ñ&Ô&Ð&Ð&Ð&r*   N)	ry   rz   r{   r€   rÝ   rf  rj  ro  rq  r2   r*   r(   r\  r\  \  sn   € € € € € ð<ð <ð <ð!ð !ð !ð,ð ,ð ,ðð ð ð	ð 	ð 	ð'ð 'ð 'ð 'ð 'r*   r\  c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTestBogusContextc                 ó2  — t          t          ¦  «        }|                      t          j        ¦  «        5 }t          || j        | j        | j        i ¬¦  «         d d d ¦  «         n# 1 swxY w Y   |  	                    dt          |j        ¦  «        ¦  «         d S )Nr‰   z*Undefined variable used as context manager)r)   rX   r³   r   r²   r   r‚   r„   r…   r´   rµ   r¶   ©rd   rf   r¸   s      r(   Útest_undefined_globalz&TestBogusContext.test_undefined_global†  sÓ   € Ý�^Ñ,Ô,ˆà×Ò�vÔ3Ñ4Ô4ð 	¸ÝØ˜œ¨¬¸¼
È2ðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	�ŠØ8Ý�Ô Ñ!Ô!ñ	ô 	ð 	ð 	ð 	ó   ´$A$Á$A(Á+A(c                 ó2  — t          t          ¦  «        }|                      t          j        ¦  «        5 }t          || j        | j        | j        i ¬¦  «         d d d ¦  «         n# 1 swxY w Y   |  	                    dt          |j        ¦  «        ¦  «         d S )Nr‰   z"Unsupported context manager in use)r)   r]   r³   r   r²   r   r‚   r„   r…   r´   rµ   r¶   ru  s      r(   Útest_invalidzTestBogusContext.test_invalid’  sÓ   € Ý�\Ñ*Ô*ˆà×Ò�vÔ3Ñ4Ô4ð 	¸ÝØ˜œ¨¬¸¼
È2ðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	�ŠØ0Ý�Ô Ñ!Ô!ñ	ô 	ð 	ð 	ð 	rw  c                 ó   — t           d„ ¦   «         }|                      t          j        ¦  «        5 } |¦   «          d d d ¦  «         n# 1 swxY w Y   t	          |j        ¦  «        }d}|                      ||¦  «         d S )Nc                  óX   — t          d¦  «        5 } 	 d d d ¦  «         d S # 1 swxY w Y   d S )NÚ )Úopen©rÃ  s    r(   rø   z;TestBogusContext.test_with_as_fails_gracefully.<locals>.fooŸ  sr   € å�b‘”ð ˜QØðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   �Ÿ#¦#zGThe 'with (context manager) as (variable):' construct is not supported.)r   r³   r   ÚUnsupportedErrorrµ   r¶   r´   )rd   rø   r¸   Úexcstrr¹   s        r(   Útest_with_as_fails_gracefullyz.TestBogusContext.test_with_as_fails_gracefullyž  sÄ   € Ý	ð	ð 	ñ 
Œð	ð ×Ò�vÔ6Ñ7Ô7ð 	¸6ØˆC‰EŒEˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ �VÔ%Ñ&Ô&ˆðˆà�Š�c˜6Ñ"Ô"Ð"Ð"Ð"s   °AÁAÁAN)ry   rz   r{   rv  ry  r�  r2   r*   r(   rs  rs  …  sA   € € € € € ð
ð 
ð 
ð
ð 
ð 
ð#ð #ð #ð #ð #r*   rs  c                   óB   — e Zd ZdZeej        d„ ¦   «         ¦   «         ZdS )ÚTestMiscFc                 ó¤   — t          ¦   «         s|                      d¦  «         d„ }g d¢}t          ||¦  «        }|                      |¦  «         d S )Nzstrace support missingc                  ó6   — t          d¦  «        d„ ¦   «         } d S )Nzvoid()c                  ó`   — t          j        ¦   «         5  	 d d d ¦  «         d S # 1 swxY w Y   d S rQ   rú   r2   r*   r(   rÃ  zFTestMisc.test_no_fork_in_compilation.<locals>.force_compile.<locals>.fÀ  su   € å”]‘_”_ð ð Øðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   ”#£'ª')r   r~  s    r(   Úforce_compilez;TestMisc.test_no_fork_in_compilation.<locals>.force_compile¿  s+   € Ý�(‰^Œ^ðð ñ Œ^ðð ð r*   )ÚforkÚcloneÚexecve)r   ÚskipTestr   ra  )rd   r‡  ÚsyscallsÚstrace_datas       r(   Útest_no_fork_in_compilationz$TestMisc.test_no_fork_in_compilation²  sl   € õ  Ñ!Ô!ð 	4à�MŠMÐ2Ñ3Ô3Ð3ð	ð 	ð 	ð /Ð.Ð.ˆõ ˜]¨HÑ5Ô5ˆØ×Ò˜Ñ%Ô%Ð%Ð%Ð%r*   N)ry   rz   r{   Ú_numba_parallel_test_r   r   Úrun_test_in_subprocessrŽ  r2   r*   r(   rƒ  rƒ  ­  sC   € € € € € ð "ÐàØÔ$ð&ð &ñ %Ô$ñ „Zð&ð &ð &r*   rƒ  Ú__main__)Srà   ÚosÚsignalÚ
subprocessÚsysÚtempfileÚ	threadingrÖ   Únumpyr  rû   Únumba.core.transformsr   r   Únumba.core.withcontextsr   r   r   Únumba.core.bytecoder   r	   Únumba.core.interpreterr
   Ú
numba.corer   r   r   Únumba.core.registryr   Únumba.core.compilerr   r   r   r   r   r   Únumba.core.extendingr   Únumba.tests.supportr   r   r   r   r   r   r   r   Únumba.core.utilsr   Únumba.experimentalr   rÀ   r)   r3   r;   r?   rE   rH   rK   rM   rO   rR   rU   rX   r(  r\   r]   r2  rË  r_   r}   r™   r¡   rË   rÏ   rÑ   rX  r2  r\  rs  rƒ  ry   Úmainr2   r*   r(   ú<module>r¥     sy  ðØ €€€Ø 	€	€	€	Ø €€€Ø Ð Ð Ð Ø 
€
€
€
Ø €€€Ø Ð Ð Ð Ø €€€Ø Ð Ð Ð à €€€Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ø QÐ QÐ QÐ QÐ QÐ QÐ QÐ QÐ QÐ QØ :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ø .Ð .Ð .Ð .Ð .Ð .Ø *Ð *Ð *Ð *Ð *Ð *Ð *Ð *Ð *Ð *Ø *Ð *Ð *Ð *Ð *Ð *Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ø )Ð )Ð )Ð )Ð )Ð )ð9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9ð 'Ð &Ð &Ð &Ð &Ð &Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø €€€ðð ð ðð ð ðð ð ð"ð ð ð"ð ð ð,ð ð ðð ð ð	ð 	ð 	ðð ð ðð ð ðð ð ðð ð ð
 �v‘x”xÐ ðð ð ð
 Œ*€ð6ð 6ð 6ð 6ð 6�hñ 6ô 6ð 6ð,=ð =ð =ð =ð =˜(ñ =ô =ð =ð>9ð 9ð 9ð 9ð 9Ð(ñ 9ô 9ð 9ð..,ð .,ð .,ð .,ð .,Ð&ñ .,ô .,ð .,ðbð ð ðð ð ðS/ð S/ð S/ð S/ð S/�*˜hñ S/ô S/ð S/ðlð ð ðð ð ð&'ð &'ð &'ð &'ð &'˜ Xñ &'ô &'ð &'ðR%#ð %#ð %#ð %#ð %#Ð*ñ %#ô %#ð %#ðP&ð &ð &ð &ð &ˆxñ &ô &ð &ð@ ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr*   