Ë
    èÿæiÁ ã                   óŒ  — d 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
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 dd	lmZ dd
lmZmZmZmZmZ ddlmZ ddlm Z   G d„ dee«      Z! G d„ de«      Z" G d„ dee«      Z# G d„ d«      Z$ G d„ dee$«      Z% G d„ dee$«      Z& G d„ dee«      Z' G d„ de«      Z( G d„ de«      Z) G d„ d e«      Z* ed!ejV                  fg¬"«       G d#„ d$e,«      «       Z- G d%„ d&e«      Z. G d'„ d(e«      Z/ G d)„ d*e«      Z0 G d+„ d,ee«      Z1 G d-„ d.ee«      Z2e3d/k(  r ejh                  «        yy)0zâ
Testing numba implementation of the numba dictionary.

The tests here only check that the numba typing and codegen are working
correctly.  Detailed testing of the underlying dictionary operations is done
in test_dictimpl.py.
é    N)ÚnjitÚ	literally)Úint32Úint64Úfloat32Úfloat64)Útypeof)ÚDictÚ
dictobjectÚList©Ú_sentry_safe_cast)ÚTypingError)Útypes)ÚTestCaseÚMemoryLeakMixinÚunittestÚoverride_configÚforbid_codegen)Újitclass)Úoverloadc                   óœ  — 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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d„ Zd„ Zd„ Zd„ Zd„ Z d„ Z! e"jF                  e$jJ                  d kD  d!«      d"„ «       Z&d#„ Z'd$„ Z(d%„ Z)d&„ Z*d'„ Z+d(„ Z,d)„ Z-d*„ Z.d+„ Z/d,„ Z0e"jb                  d-„ «       Z2d.„ Z3d/„ Z4d0„ Z5d1„ Z6d2„ Z7d3„ Z8d4„ Z9y5)6ÚTestDictObjectc                 óä   — t         d„ «       }| j                   |d¬«      d«       | j                   |d¬«      d«       | j                   |d¬«      d«       | j                   |d¬«      d«       y	)
z%
        Exercise bool(dict)
        c                 ó„   — t        j                  t        t        «      }t	        | «      D ]
  }|dz   ||<   Œ t        |«      S ©Né   )r   Únew_dictr   r   ÚrangeÚbool©ÚnÚdÚis      úp/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/numba/tests/test_dictobject.pyÚfooz*TestDictObject.test_dict_bool.<locals>.foo    s8   € ä×#Ñ#¤E¬7Ó3ˆAÜ˜1–X�Ø˜1‘u��!’ð ä˜“7ˆNó    r   ©r"   Fr   Té   éd   N©r   ÚassertEqual©Úselfr&   s     r%   Útest_dict_boolzTestDictObject.test_dict_bool   sh   € ô 
ñ	ó 
ð	ð 	×Ñ™˜qœ 5Ô)à×Ñ™˜qœ 4Ô(à×Ñ™˜qœ 4Ô(à×Ñ™˜sœ TÕ*r'   c                 óä   — t         d„ «       }| j                   |d¬«      d«       | j                   |d¬«      d«       | j                   |d¬«      d«       | j                   |d¬«      d«       y)zA
        Exercise dictionary creation, insertion and len
        c                 ó„   — t        j                  t        t        «      }t	        | «      D ]
  }|dz   ||<   Œ t        |«      S r   )r   r   r   r   r   Úlenr!   s      r%   r&   z,TestDictObject.test_dict_create.<locals>.foo4   s8   € ä×#Ñ#¤E¬7Ó3ˆAÜ˜1–X�Ø˜1‘u��!’ð ä�q“6ˆMr'   r   r(   r   r)   r*   Nr+   r-   s     r%   Útest_dict_createzTestDictObject.test_dict_create0   sh   € ô 
ñ	ó 
ð	ð 	×Ñ™˜qœ 1Ô%à×Ñ™˜qœ 1Ô%à×Ñ™˜qœ 1Ô%à×Ñ™˜sœ SÕ)r'   c                 óÊ   — t         d„ «       }| j                   |dg d¢«      g d¢«       | j                   |dg d¢«      g d¢«       | j                   |dg d¢«      g d¢«       y)	zA
        Exercise dictionary creation, insertion and get
        c                 ó¾   — t        j                  t        t        «      }t	        | «      D ]  }|||<   Œ	 g }|D ]"  }|j                  |j                  |«      «       Œ$ |S ©N)r   r   r   r   r   ÚappendÚget)r"   Útargetsr#   r$   ÚoutputÚts         r%   r&   z)TestDictObject.test_dict_get.<locals>.fooH   sU   € ä×#Ñ#¤E¬7Ó3ˆAä˜1–X�Ø��!’ð ð ˆFÛ�Ø—‘˜aŸe™e A›hÕ'ð àˆMr'   é   )r   r   é	   )r   r   Né
   )éÿÿÿÿr=   r   )Nr=   r   Nr+   r-   s     r%   Útest_dict_getzTestDictObject.test_dict_getD   s]   € ô 
ñ		ó 
ð		ð 	×Ñ™˜Q¢	Ó*ªLÔ9Ø×Ñ™˜R¢Ó+ªYÔ7Ø×Ñ™˜R¢Ó,ªlÕ;r'   c                 ó„   — t         d„ «       }| j                   |ddd«      d«       | j                   |ddd«      d«       y)z8
        Exercise dict.get(k, d) where d is set
        c                 óŒ   — t        j                  t        t        «      }t	        | «      D ]  }|||<   Œ	 |j                  ||«      S r6   ©r   r   r   r   r   r8   )r"   ÚtargetÚdefaultr#   r$   s        r%   r&   z6TestDictObject.test_dict_get_with_default.<locals>.foo\   s>   € ä×#Ñ#¤E¬7Ó3ˆAä˜1–X�Ø��!’ð ð —5‘5˜ Ó)Ð)r'   r<   é   r?   Nr+   r-   s     r%   Útest_dict_get_with_defaultz)TestDictObject.test_dict_get_with_defaultX   sH   € ô 
ñ	*ó 
ð	*ð 	×Ñ™˜Q  2›¨Ô*Ø×Ñ™˜Q  2›¨Õ+r'   c                 óÜ  — t         d„ «       }g d¢}g d¢}| j                   |||d«      d«       | j                   |||d«      d«       | j                   |||d«      d	«       | j                  «        | j                  «        | j	                  t
        d
«      5   |||d«       ddd«       | j	                  t
        d«      5   |||d«       ddd«       y# 1 sw Y   Œ3xY w# 1 sw Y   yxY w)z1
        Exercise dictionary __getitem__
        c                 óz   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ ||   S r6   ©r   r   r   r   Úzip©ÚkeysÚvalsrD   r#   ÚkÚvs         r%   r&   z-TestDictObject.test_dict_getitem.<locals>.fool   s=   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (ð �V‘9Ðr'   ©r   r)   rF   ©çš™™™™™¹?çš™™™™™É?ç333333Ó?r   rS   r)   rT   rF   rU   Ú0r   NÚ4é   )r   r,   Úassert_no_memory_leakÚdisable_leak_checkÚassertRaisesRegexÚKeyError©r.   r&   rM   rN   s       r%   Útest_dict_getitemz TestDictObject.test_dict_getitemh   sÚ   € ô 
ñ	ó 
ð	ò ˆÚˆØ×Ñ™˜T 4¨Ó+¨SÔ1Ø×Ñ™˜T 4¨Ó+¨SÔ1Ø×Ñ™˜T 4¨Ó+¨SÔ1à×"Ñ"Ô$à×ÑÔ!Ø×#Ñ#¤H¨cÕ2Ù��d˜AÔ÷ 3à×#Ñ#¤H¨cÕ2Ù��d˜AÔ÷ 3Ð2÷ 3Ð2úç2Ð2ús   ÂCÃC"ÃCÃ"C+c           	      óº   — t         d„ «       }g d¢}g d¢}t        dt        |«      «      D ]/  }| j                   ||d| |d| «      ||dz
     ||dz
     f«       Œ1 y)ú.
        Exercise dictionary .popitem
        c                 ó�   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ |j                  «       S r6   )r   r   r   r   rK   Úpopitem©rM   rN   r#   rO   rP   s        r%   r&   z-TestDictObject.test_dict_popitem.<locals>.fooˆ   s?   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (ð —9‘9“;Ðr'   rQ   rR   r   N)r   r   r2   r,   )r.   r&   rM   rN   r$   s        r%   Útest_dict_popitemz TestDictObject.test_dict_popitem„   ss   € ô 
ñ	ó 
ð	ò ˆÚˆÜ�qœ#˜d›)Ö$ˆAØ×ÑÙ�D˜˜!�H˜d 2 A˜hÓ'Ø�a˜!‘e‘˜d 1 q¡5™kÐ*õñ %r'   c                 ó¤  ‡— t         d„ «       Št         ˆfd„«       }g d¢}g d¢}t        t        |«      «      D ]A  }| j                   |||d¬«      ‰j	                  t        t        ||«      «      d¬«      «       ŒC | j                  «        | j                  «        | j                  t        «      5   |||d¬«       ddd«       y# 1 sw Y   yxY w)	r`   c                 ón   — d\  }}t        |«      D ]  }| j                  «       \  }}||z  }||z  }Œ! ||fS )N©r   r   )r   rb   )r#   ÚnpopÚkeysumÚvalsumÚ_rO   rP   s          r%   Úcorez3TestDictObject.test_dict_popitem_many.<locals>.coreŸ   sH   € ð "‰NˆF�FÜ˜4–[�Ø—y‘y“{‘��1Ø˜!‘�Ø˜!‘‘ð !ð ˜6�>Ð!r'   c                 ó„   •— t        j                  t        t        «      }t        | |«      D ]
  \  }}|||<   Œ  ‰||«      S r6   )r   r   r   rK   )rM   rN   rh   r#   rO   rP   rl   s         €r%   r&   z2TestDictObject.test_dict_popitem_many.<locals>.foo©   s@   ø€ ä×#Ñ#¤E¬5Ó1ˆAä˜D $ž‘��1Ø��!’ð (ñ ˜˜4“=Ð r'   rQ   ©r>   é   é   rF   )rh   rX   N)r   r   r2   r,   Úpy_funcÚdictrK   rY   rZ   ÚassertRaisesr\   )r.   r&   rM   rN   r$   rl   s        @r%   Útest_dict_popitem_manyz%TestDictObject.test_dict_popitem_manyš   s¿   ø€ ô
 
ñ	"ó 
ð	"ô 
ó	!ó 
ð	!ò ˆÚˆä”s˜4“yÖ!ˆAØ×ÑÙ�D˜$ QÔ'Ø—‘œT¤# d¨D£/Ó2¸�Ó;õð "ð 	×"Ñ"Ô$à×ÑÔ!à×ÑœxÕ(Ù��d Õ#÷ )×(Ñ(ús   Â1CÃCc                 ó¶  — t         d„ «       }g d¢}g d¢}| j                   |||d«      d«       | j                   |||d«      d«       | j                   |||d«      d	«       | j                   |||d
«      d«       | j                  «        | j                  «        t         d„ «       }| j	                  t
        «      5   |«        ddd«       y# 1 sw Y   yxY w)ú*
        Exercise dictionary .pop
        c                 óª   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ |j                  |d «      t        |«      fS r6   )r   r   r   r   rK   Úpopr2   rL   s         r%   r&   z)TestDictObject.test_dict_pop.<locals>.fooÇ   sM   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (ð —5‘5˜ Ó&¬¨A«Ð.Ð.r'   rQ   rR   r   )rS   r)   r)   )rT   r)   rF   )rU   r)   r   ©NrF   c                  ó`   — t        j                  t        t        «      } | j	                  d«      S )Nr   ©r   r   r   r   rx   ©r#   s    r%   r&   z)TestDictObject.test_dict_pop.<locals>.fooÞ   s!   € ä×#Ñ#¤E¬7Ó3ˆAà—5‘5˜“8ˆOr'   N©r   r,   rY   rZ   rs   r\   r]   s       r%   Útest_dict_popzTestDictObject.test_dict_popÃ   sÓ   € ô 
ñ	/ó 
ð	/ò ˆÚˆà×Ñ™˜T 4¨Ó+¨XÔ6Ø×Ñ™˜T 4¨Ó+¨XÔ6Ø×Ñ™˜T 4¨Ó+¨XÔ6Ø×Ñ™˜T 4¨Ó+¨YÔ7ð 	×"Ñ"Ô$à×ÑÔ!ä	ñ	ó 
ð	ð
 ×ÑœxÕ(ÙŒE÷ )×(Ñ(ús   Â>CÃCc                 óÌ   ‡— t         d„ «       Št         ˆfd„«       }g d¢}g d¢}g d¢}| j                   ||||«      ‰j                  t        t	        ||«      «      |«      «       y)rv   c                 ój   — d}|D ]+  }||| j                  |d«      z   t        | «      z   z  }|dz  }Œ- |S )Nr   g°rh‘í|¿?r)   )rx   r2   )r#   ÚpopsÚtotalrO   s       r%   rl   z/TestDictObject.test_dict_pop_many.<locals>.coreì   sC   € àˆEÛ�Ø˜˜QŸU™U 1 e›_Ñ,¬s°1«vÑ5Ñ5�Ø˜‘
‘ð ð ˆLr'   c                 ó„   •— t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ  ‰||«      S r6   rJ   )rM   rN   r�   r#   rO   rP   rl   s         €r%   r&   z.TestDictObject.test_dict_pop_many.<locals>.fooô   s@   ø€ ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (ñ ˜˜4“=Ð r'   rQ   rR   )	r)   rF   rF   r   r   r)   r   r   r?   N)r   r,   rq   rr   rK   )r.   r&   rM   rN   r�   rl   s        @r%   Útest_dict_pop_manyz!TestDictObject.test_dict_pop_manyç   so   ø€ ô
 
ñ	ó 
ð	ô 
ó	!ó 
ð	!ò ˆÚˆÚ+ˆà×ÑÙ��d˜DÓ!Ø�L‰Lœœc $¨›oÓ.°Ó5õ	
r'   c                 óp  — t         d„ «       }g d¢}g d¢}| j                   |||d«      d«       | j                   |||d«      d«       | j                   |||d«      d«       | j                  «        | j                  «        | j	                  t
        «      5   |||d«       d d d «       y # 1 sw Y   y xY w)	Nc                 ó®   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ ||= t        |«      |j                  |«      fS r6   )r   r   r   r   rK   r2   r8   rL   s         r%   r&   z-TestDictObject.test_dict_delitem.<locals>.foo  sO   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (à�&�	Ü�q“6˜1Ÿ5™5 ›=Ð(Ð(r'   rQ   rR   r   )r)   Nr)   rF   r   r}   r]   s       r%   Útest_dict_delitemz TestDictObject.test_dict_delitem  s©   € Ü	ñ	)ó 
ð	)ò ˆÚˆØ×Ñ™˜T 4¨Ó+¨YÔ7Ø×Ñ™˜T 4¨Ó+¨YÔ7Ø×Ñ™˜T 4¨Ó+¨YÔ7à×"Ñ"Ô$à×ÑÔ!Ø×ÑœxÕ(Ù��d˜AÔ÷ )×(Ñ(ús   ÂB,Â,B5c                 ó^   — t         d„ «       }g d¢}g d¢}| j                   |||«      d«       y)z%
        Exercise dict.clear
        c                 óÀ   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ t        |«      }|j                  «        |t        |«      fS r6   )r   r   r   r   rK   r2   Úclear)rM   rN   r#   rO   rP   Úb4s         r%   r&   z+TestDictObject.test_dict_clear.<locals>.foo   sQ   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (ä�Q“ˆBà�G‰GŒIØ”s˜1“v�:Ðr'   rQ   rR   )rF   r   Nr+   r]   s       r%   Útest_dict_clearzTestDictObject.test_dict_clear  s8   € ô 
ñ	ó 
ð	ò ˆÚˆØ×Ñ™˜T 4›¨&Õ1r'   c           	      óÊ   — t         d„ «       }g d¢}g d¢}| j                   |||«      t        t        ||«      «      «       t         d„ «       }| j                   |«       g «       y)z%
        Exercise dict.items
        c                 óÄ   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ g }|j                  «       D ]  }|j                  |«       Œ |S r6   )r   r   r   r   rK   Úitemsr7   )rM   rN   r#   rO   rP   ÚoutÚkvs          r%   r&   z+TestDictObject.test_dict_items.<locals>.foo3  sV   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (àˆCØ—g‘g–i�Ø—
‘
˜2•ð  àˆJr'   rQ   rR   c                  ó’   — t        j                  t        t        «      } g }| j	                  «       D ]  }|j                  |«       Œ |S r6   )r   r   r   r   r�   r7   )r#   r�   r‘   s      r%   r&   z+TestDictObject.test_dict_items.<locals>.fooG  s9   € ä×#Ñ#¤E¬7Ó3ˆAØˆCØ—g‘g–i�Ø—
‘
˜2•ð  àˆJr'   N)r   r,   ÚlistrK   r]   s       r%   Útest_dict_itemszTestDictObject.test_dict_items/  so   € ô 
ñ	ó 
ð	ò ˆÚˆà×ÑÙ��d‹OÜ”�T˜4“Ó!ô	
ô 
ñ	ó 
ð	ð 	×Ñ™› Õ#r'   c                 ó^   — t         d„ «       }g d¢}g d¢}| j                   |||«      |«       y)z$
        Exercise dict.keys
        c                 óÄ   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ g }|j                  «       D ]  }|j                  |«       Œ |S r6   )r   r   r   r   rK   rM   r7   ©rM   rN   r#   rO   rP   r�   s         r%   r&   z*TestDictObject.test_dict_keys.<locals>.fooU  sV   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (àˆCØ—V‘V–X�Ø—
‘
˜1•ð àˆJr'   rQ   rR   Nr+   r]   s       r%   Útest_dict_keyszTestDictObject.test_dict_keysQ  ó<   € ô 
ñ	ó 
ð	ò ˆÚˆà×ÑÙ��d‹OØõ	
r'   c                 óp   — t         d„ «       }g d¢}g d¢}| j                   |||«      t        |«      «       y)z+
        Exercise len(dict.keys())
        c                 ó¢   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ t        |j                  «       «      S r6   )r   r   r   r   rK   r2   rM   rc   s        r%   r&   z.TestDictObject.test_dict_keys_len.<locals>.fool  sA   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (ä�q—v‘v“x“=Ð r'   rQ   rR   N©r   r,   r2   r]   s       r%   Útest_dict_keys_lenz!TestDictObject.test_dict_keys_lenh  s@   € ô 
ñ	!ó 
ð	!ò ˆÚˆà×ÑÙ��d‹OÜ�‹Iõ	
r'   c                 ó^   — t         d„ «       }g d¢}g d¢}| j                   |||«      |«       y)z&
        Exercise dict.values
        c                 óÄ   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ g }|j                  «       D ]  }|j                  |«       Œ |S r6   )r   r   r   r   rK   Úvaluesr7   r—   s         r%   r&   z,TestDictObject.test_dict_values.<locals>.foo€  sV   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (àˆCØ—X‘X–Z�Ø—
‘
˜1•ð  àˆJr'   rQ   rR   Nr+   r]   s       r%   Útest_dict_valueszTestDictObject.test_dict_values|  r™   r'   c                 óp   — t         d„ «       }g d¢}g d¢}| j                   |||«      t        |«      «       y)z-
        Exercise len(dict.values())
        c                 ó¢   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ t        |j                  «       «      S r6   )r   r   r   r   rK   r2   r    rc   s        r%   r&   z0TestDictObject.test_dict_values_len.<locals>.foo—  sA   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (ä�q—x‘x“z“?Ð"r'   rQ   rR   Nrœ   r]   s       r%   Útest_dict_values_lenz#TestDictObject.test_dict_values_len“  s@   € ô 
ñ	#ó 
ð	#ò ˆÚˆà×ÑÙ��d‹OÜ�‹Iõ	
r'   c                 óp   — t         d„ «       }g d¢}g d¢}| j                   |||«      t        |«      «       y)z,
        Exercise len(dict.items())
        c                 ó¢   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ t        |j                  «       «      S r6   )r   r   r   r   rK   r2   r�   rc   s        r%   r&   z/TestDictObject.test_dict_items_len.<locals>.foo«  sA   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (ä�q—w‘w“y“>Ð!r'   rQ   rR   N)r   ÚassertPreciseEqualr2   r]   s       r%   Útest_dict_items_lenz"TestDictObject.test_dict_items_len§  s@   € ô 
ñ	"ó 
ð	"ò ˆÚˆØ×ÑÙ��d‹OÜ�‹Iõ	
r'   c                 ób   — t         d„ «       }g d¢}g d¢}| j                   |||«      g d¢«       y)z%
        Exercise iter(dict)
        c                 ó¨   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ g }|D ]  }|j                  |«       Œ |S r6   ©r   r   r   r   rK   r7   r—   s         r%   r&   z*TestDictObject.test_dict_iter.<locals>.foo¾  sP   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (àˆCÛ�Ø—
‘
˜1•ð àˆJr'   rQ   rR   Nr+   r]   s       r%   Útest_dict_iterzTestDictObject.test_dict_iterº  s<   € ô 
ñ	ó 
ð	ò ˆÚˆà×ÑÙ��d‹OÚõ	
r'   c                 óh   — t         d„ «       }g d¢}g d¢}| j                   |||g d¢«      g d¢«       y)z,
        Exercise operator.contains
        c                 ó¬   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ g }|D ]  }|j                  ||v «       Œ |S r6   r«   )rM   rN   Ú	checklistr#   rO   rP   r�   s          r%   r&   z.TestDictObject.test_dict_contains.<locals>.fooÕ  sU   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (àˆCÛ�Ø—
‘
˜1 ˜6Õ"ð àˆJr'   rQ   rR   )r)   rF   rX   r   r   )TTFTFNr+   r]   s       r%   Útest_dict_containsz!TestDictObject.test_dict_containsÑ  s?   € ô 
ñ	ó 
ð	ò ˆÚˆà×ÑÙ��dšOÓ,Ú,õ	
r'   c           	      óò   — t         d„ «       }t        t        d«      «      }t        |«      D ��cg c]  \  }}||dz  z   ‘Œ }}} |||«      }| j	                  |t        t        ||«      «      «       yc c}}w )z$
        Exercise dict.copy
        c                 ó¾   — t        j                  t        t        «      }t	        | |«      D ]
  \  }}|||<   Œ t        |j                  «       j                  «       «      S r6   )r   r   r   r   rK   r“   Úcopyr�   rc   s        r%   r&   z*TestDictObject.test_dict_copy.<locals>.fooì  sI   € ä×#Ñ#¤E¬7Ó3ˆAä˜D $ž‘��1Ø��!’ð (ä˜Ÿ™›Ÿ™Ó(Ó)Ð)r'   ro   r*   N)r   r“   r   Ú	enumerater,   rK   )r.   r&   rM   r$   ÚxrN   r�   s          r%   Útest_dict_copyzTestDictObject.test_dict_copyè  st   € ô 
ñ	*ó 
ð	*ô ”E˜"“I‹ˆÜ(1°$¬Ô8©¡  1��A˜‘G“¨ˆÑ8Ù�$˜‹oˆØ×Ñ˜œd¤3 t¨T£?Ó3Õ4ùó 9s   ¯A3c                 óJ   — t         d„ «       }| j                   |«       d«       y)z*
        Exercise dict.setdefault
        c                  ó
  — t        j                  t        t        «      } | j	                  dd«       | j                  d«      }d| d<   | j                  d«      }d| d<   | j	                  dd«       | j                  d«      }|||fS )Nr   ç333333ó?çffffff@ç333333@r)   g      @)r   r   r   r   Ú
setdefaultr8   )r#   ÚaÚbÚcs       r%   r&   z0TestDictObject.test_dict_setdefault.<locals>.fooý  st   € ä×#Ñ#¤E¬7Ó3ˆAØ�L‰L˜˜CÔ Ø—‘�a“ˆAØˆAˆa‰DØ—‘�a“ˆAØˆAˆa‰DØ�L‰L˜˜CÔ Ø—‘�a“ˆAØ�a˜�7ˆNr'   )r¹   rº   r»   Nr+   r-   s     r%   Útest_dict_setdefaultz#TestDictObject.test_dict_setdefaultù  s*   € ô 
ñ		ó 
ð		ð 	×Ñ™› Õ0r'   c                 óô   — t         d„ «       }| j                   |dddd«      d«       | j                   |dddd«      d«       | j                   |dddd«      d«       | j                   |dddd«      d«       y)	z2
        Exercise dict.__eq__ and .__ne__
        c                 óî   — t        j                  t        t        «      }t        j                  t        t        «      }t	        | «      D ]
  }||z  ||<   Œ t	        |«      D ]
  }||z  ||<   Œ ||k(  ||k7  fS r6   ©r   r   r   r   r   )ÚnaÚnbÚfaÚfbÚdaÚdbr$   s          r%   r&   z.TestDictObject.test_dict_equality.<locals>.foo  so   € ä×$Ñ$¤U¬GÓ4ˆBÜ×$Ñ$¤U¬GÓ4ˆBÜ˜2–Y�Ø˜B™��1’ð ä˜2–Y�Ø˜B™��1’ð à˜‘8˜R 2™XÐ%Ð%r'   r>   rF   )TFgÍÌÌÌÌÌ@)FTé   Nr+   r-   s     r%   Útest_dict_equalityz!TestDictObject.test_dict_equality  s„   € ô 
ñ	&ó 
ð	&ð 	×Ñ™˜R  Q¨Ó*¨MÔ:à×Ñ™˜R  Q¨Ó,¨mÔ<à×Ñ™˜R  Q¨Ó*¨MÔ:à×Ñ™˜R  Q¨Ó*¨MÕ:r'   c                 ól  — t         d„ «       }g d¢}g d¢}g d¢}g d¢}| j                   |||||«      «       g d¢}g d¢}g d¢}g d¢}| j                   |||||«      «       g d¢}g d¢}g d¢}g d¢}| j                   |||||«      «       g d¢}g d¢}g d¢}g d¢}| j                   |||||«      «       y)	ú&
        Exercise dict.__eq__
        c                 ó  — t        j                  t        t        «      }t        j                  t        t
        «      }t        t        | «      «      D ]  }||   || |   <   Œ t        t        |«      «      D ]  }||   |||   <   Œ ||k(  S r6   )r   r   r   r   r   r   r   r2   )ÚakÚavÚbkÚbvrÈ   rÉ   r$   s          r%   r&   z3TestDictObject.test_dict_equality_more.<locals>.foo&  sw   € ô ×$Ñ$¤U¬GÓ4ˆBÜ×$Ñ$¤U¬GÓ4ˆBÜœ3˜r›7–^�Ø˜q™E��2�a‘5’	ð $äœ3˜r›7–^�Ø˜q™E��2�a‘5’	ð $à˜‘8ˆOr'   rQ   )r)   rF   rX   )r   r)   r)   rF   )r)   r   rF   rX   )r)   r   rX   )r   r)   rF   N©r   Ú
assertTrueÚassertFalse)r.   r&   rÏ   rÐ   rÑ   rÒ   s         r%   Útest_dict_equality_morez&TestDictObject.test_dict_equality_more"  sÎ   € ô 
ñ	ó 
ð	ò ˆÚˆÚˆÚˆØ�‰™˜B  B¨Ó+Ô,ò ˆÚˆÚˆÚˆØ�‰™˜B  B¨Ó+Ô,ò ˆÚˆÚˆÚˆØ×Ñ™˜R  R¨Ó,Ô-ò ˆÚˆÚˆÚˆØ×Ñ™˜R  R¨Ó,Õ-r'   c                 ó|   — t         d„ «       }| j                   |dd«      «       | j                   |dd«      «       y)rÍ   c                 ór   — t        j                  t        t        «      }t	        | «      D ]  }|||<   Œ	 ||k(  S r6   rÃ   )rÄ   r¾   rÈ   r$   s       r%   r&   z8TestDictObject.test_dict_equality_diff_type.<locals>.fooQ  s4   € ä×$Ñ$¤U¬GÓ4ˆBÜ˜2–Y�Ø��1’ð à˜‘7ˆNr'   r>   r   )r   N©r   rÕ   r-   s     r%   Útest_dict_equality_diff_typez+TestDictObject.test_dict_equality_diff_typeM  s@   € ô 
ñ	ó 
ð	ð 	×Ñ™˜R ›Ô$à×Ñ™˜R ›Õ'r'   c                 óD  ‡‡— t         d„ «       Št         ˆfd„«       }t        j                  t        t        «      Št         ˆfd„«       } |d«      }| j                  |j                  d«        ||«      }t        ‰j                  d«      «      }| j                  ||«       y)zB
        Exercise dictobject.{_as_meminfo, _from_meminfo}
        c              3   óJ   K  — t        | «      D ]  }|||dz   dz  z   f–— Œ y ­w©Nr   r*   ©r   )Únelemr$   s     r%   Úmake_contentz>TestDictObject.test_dict_to_from_meminfo.<locals>.make_contenta  s,   è ø€ ä˜5–\�Ø˜˜a !™e s™]Ñ*Ð*Ó*ñ "ùs   ‚!#c                 ó”   •— t        j                  t        t        «      } ‰| «      D ]
  \  }}|||<   Œ t        j                  |«      S r6   )r   r   r   r   Ú_as_meminfo)rß   r#   rO   rP   rà   s       €r%   Úboxerz7TestDictObject.test_dict_to_from_meminfo.<locals>.boxerf  sB   ø€ ä×#Ñ#¤E¬7Ó3ˆAÙ$ UÖ+‘��1Ø��!’ð ,ä×)Ñ)¨!Ó,Ð,r'   c                 ób   •— t        j                  | ‰«      }t        |j                  «       «      S r6   )r   Ú_from_meminfor“   r�   )Úmir#   Údcttypes     €r%   Úunboxerz9TestDictObject.test_dict_to_from_meminfo.<locals>.unboxero  s%   ø€ ä×(Ñ(¨¨WÓ5ˆAÜ˜Ÿ™›	“?Ð"r'   r>   r   N)	r   r   ÚDictTyper   r   r,   Úrefcountr“   rq   )r.   rã   rè   ræ   ÚgotÚexpectedrç   rà   s         @@r%   Útest_dict_to_from_meminfoz(TestDictObject.test_dict_to_from_meminfo]  sœ   ù€ ô 
ñ	+ó 
ð	+ô 
ó	-ó 
ð	-ô —.‘.¤¬Ó0ˆä	ó	#ó 
ð	#ñ �2‹YˆØ×Ñ˜Ÿ™ aÔ(á�b‹kˆÜ˜×,Ñ,¨RÓ0Ó1ˆØ×Ñ˜˜hÕ'r'   c                 óÊ   — t         d„ «       }| j                  t        «      5 } |d«       d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                 ó”   — t        j                  t        t        «      }t	        | «      D ]
  }|dz   ||<   Œ |j                  d«      }|S )Nr   ù              ð?rC   ©r"   r#   r$   Úzs       r%   r&   z8TestDictObject.test_001_cannot_downcast_key.<locals>.foo|  sC   € ä×#Ñ#¤E¬7Ó3ˆAÜ˜1–X�Ø˜1‘u��!’ð ð —‘�b“	ˆAØˆHr'   r>   ú&cannot safely cast complex128 to int32©r   rs   r   ÚassertInÚstrÚ	exception©r.   r&   Úraisess      r%   Útest_001_cannot_downcast_keyz+TestDictObject.test_001_cannot_downcast_key{  sX   € Ü	ñ	ó 
ð	ð ×Ñœ{Ô+¨vÙ�ŒG÷ ,à�‰Ø4Ü�× Ñ Ó!õ	
÷ ,Ð+úó   ¢	AÁA"c                 óÊ   — t         d„ «       }| j                  t        «      5 } |d«       d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                 óœ   — t        j                  t        t        «      }t	        | «      D ]
  }|dz   ||<   Œ |j                  d| z  d«      }|S )Nr   r)   rð   rC   rñ   s       r%   r&   z<TestDictObject.test_002_cannot_downcast_default.<locals>.foo�  sJ   € ä×#Ñ#¤E¬7Ó3ˆAÜ˜1–X�Ø˜1‘u��!’ð ð —‘�a˜!‘e˜RÓ ˆAØˆHr'   r>   ú(cannot safely cast complex128 to float64rô   rø   s      r%   Ú test_002_cannot_downcast_defaultz/TestDictObject.test_002_cannot_downcast_defaultŒ  sX   € Ü	ñ	ó 
ð	ð ×Ñœ{Ô+¨vÙ�ŒG÷ ,à�‰Ø6Ü�× Ñ Ó!õ	
÷ ,Ð+úrû   c                 óÊ   — t         d„ «       }| j                  t        «      5 } |d«       d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                 ó”   — t        j                  t        t        «      }t	        | «      D ]
  }|dz   ||<   Œ |j                  d«      }|S )Nr   g333333@rC   rñ   s       r%   r&   z8TestDictObject.test_003_cannot_downcast_key.<locals>.foož  sC   € ä×#Ñ#¤E¬7Ó3ˆAÜ˜1–X�Ø˜1‘u��!’ð ð —‘�c“
ˆAØˆHr'   r>   ú#cannot safely cast float64 to int32rô   rø   s      r%   Útest_003_cannot_downcast_keyz+TestDictObject.test_003_cannot_downcast_key�  sX   € Ü	ñ	ó 
ð	ð ×Ñœ{Ô+¨vÙ�ŒG÷ ,à�‰Ø1Ü�× Ñ Ó!õ	
÷ ,Ð+úrû   c                 óÈ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                  óJ   — t        j                  t        t        «      } d| d<   y )Nç      @rð   ©r   r   r   r   r|   s    r%   r&   z8TestDictObject.test_004_cannot_downcast_key.<locals>.foo°  s   € ä×#Ñ#¤E¬7Ó3ˆAàˆAˆbŠEr'   ró   rô   rø   s      r%   Útest_004_cannot_downcast_keyz+TestDictObject.test_004_cannot_downcast_key¯  sV   € Ü	ñ	ó 
ð	ð
 ×Ñœ{Ô+¨vÙŒE÷ ,à�‰Ø4Ü�× Ñ Ó!õ	
÷ ,Ð+úó   ¢AÁA!c                 óÈ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                  óJ   — t        j                  t        t        «      } d| d<   y )Nrð   r   r  r|   s    r%   r&   z:TestDictObject.test_005_cannot_downcast_value.<locals>.foo¾  s   € ä×#Ñ#¤E¬7Ó3ˆAàˆAˆaŠDr'   rþ   rô   rø   s      r%   Útest_005_cannot_downcast_valuez-TestDictObject.test_005_cannot_downcast_value½  sV   € Ü	ñ	ó 
ð	ð
 ×Ñœ{Ô+¨vÙŒE÷ ,à�‰Ø6Ü�× Ñ Ó!õ	
÷ ,Ð+úr	  c                 óÈ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                  óJ   — t        j                  t        t        «      } | d    y )Ng      '@r  r|   s    r%   r&   z8TestDictObject.test_006_cannot_downcast_key.<locals>.fooÌ  s   € ä×#Ñ#¤E¬7Ó3ˆAàˆd‹Gr'   r  rô   rø   s      r%   Útest_006_cannot_downcast_keyz+TestDictObject.test_006_cannot_downcast_keyË  sV   € Ü	ñ	ó 
ð	ð
 ×Ñœ{Ô+¨vÙŒE÷ ,à�‰Ø1Ü�× Ñ Ó!õ	
÷ ,Ð+úr	  l        z64 bit test onlyc                 ó†   — t         d„ «       }d\  }} |||«      \  }}| j                  ||«       | j                  ||«       y )Nc                 óì   — t        j                  t        t        «      }t	        j
                  d«      }t	        j
                  d«      }t        |«      t        |«      k(  sJ ‚| ||<   |||<   ||   ||   fS )Nl   ÿÿÿÿ r   )r   r   r   r   ÚnpÚuint64Úhash)Úv1Úv2r#   Úc1Úc2s        r%   r&   z5TestDictObject.test_007_collision_checks.<locals>.fooÜ  si   € ä×#Ñ#¤E¬7Ó3ˆAÜ—‘˜;Ó'ˆBÜ—‘˜1“ˆBÜ˜“8œt B›xÒ'Ð'Ð'ØˆAˆb‰EØˆAˆb‰EØ�b‘E˜1˜R™5�>Ð!r'   )g      $@g      4@r+   )r.   r&   r½   r¾   rµ   Úys         r%   Útest_007_collision_checksz(TestDictObject.test_007_collision_checksÙ  sP   € ô 
ñ	"ó 
ð	"ð ‰ˆˆ1Ù�1�a‹y‰ˆˆ1Ø×Ñ˜˜AÔØ×Ñ˜˜AÕr'   c                 ó  — t         d„ «       }d} ||«      \  }}| j                  |t        t        |«      «      D �cg c]  }|‘Œ c}«       | j                  |t        t        |«      «      D �cg c]  }|dz   ‘Œ	 c}«       y c c}w c c}w )Nc                 ó  — t        j                  t        t        «      }t	        | «      D ]
  }|dz   ||<   Œ g }g }t	        | «      D ]:  }|j                  «       }|j                  |d   «       |j                  |d   «       Œ< ||fS )Nr   r   )r   r   r   r   r   rb   r7   )r"   r#   r$   rM   rN   Útmps         r%   r&   z1TestDictObject.test_008_lifo_popitem.<locals>.fooí  s~   € ä×#Ñ#¤E¬7Ó3ˆAÜ˜1–X�Ø˜1‘u��!’ð àˆDØˆDÜ˜1–X�Ø—i‘i“k�Ø—‘˜C ™FÔ#Ø—‘˜C ™FÕ#ð ð ˜�:Ðr'   r>   r   )r   r,   Úreversedr   )r.   r&   rò   ÚgkÚgvrµ   s         r%   Útest_008_lifo_popitemz$TestDictObject.test_008_lifo_popitemë  sˆ   € ä	ñ
	ó 
ð
	ð ˆÙ�Q“‰ˆˆBà×Ñ˜¬´%¸³(Ô);Ó<Ñ); AšaÐ);Ñ<Ô=Ø×Ñ˜¬X´e¸A³hÔ-?Ó@Ñ-?¨˜a !›eÐ-?Ñ@ÕAùò =ùÚ@s   ¼	B
Á.B
c                 óÈ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                  óx   — t        j                  t        t        «      } d| d<   d| d<   | j	                  dd«       y )Nç      @r   r  r   rÊ   ù              (@r{   r|   s    r%   r&   z<TestDictObject.test_010_cannot_downcast_default.<locals>.foo  s3   € ä×#Ñ#¤E¬7Ó3ˆAØˆAˆa‰DØˆAˆa‰Dà�E‰E�"�c�Nr'   rþ   rô   rø   s      r%   Ú test_010_cannot_downcast_defaultz/TestDictObject.test_010_cannot_downcast_default   sV   € Ü	ñ	ó 
ð	ð ×Ñœ{Ô+¨vÙŒE÷ ,à�‰Ø6Ü�× Ñ Ó!õ	
÷ ,Ð+úr	  c                 óÈ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                  óv   — t        j                  t        t        «      } d| d<   d| d<   | j	                  d«       y )Nr$  r   r  r   y              &@r{   r|   s    r%   r&   z8TestDictObject.test_011_cannot_downcast_key.<locals>.foo  s1   € ä×#Ñ#¤E¬7Ó3ˆAØˆAˆa‰DØˆAˆa‰Dà�E‰E�#�Jr'   ró   rô   rø   s      r%   Útest_011_cannot_downcast_keyz+TestDictObject.test_011_cannot_downcast_key  sV   € Ü	ñ	ó 
ð	ð ×Ñœ{Ô+¨vÙŒE÷ ,à�‰Ø4Ü�× Ñ Ó!õ	
÷ ,Ð+úr	  c                 óÈ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                  óP   — t        j                  t        t        «      } d| d<   d| v S )Nr$  r   rð   r  r|   s    r%   r&   z8TestDictObject.test_012_cannot_downcast_key.<locals>.foo!  s&   € ä×#Ñ#¤E¬7Ó3ˆAØˆAˆa‰Dà˜�7ˆNr'   ró   rô   rø   s      r%   Útest_012_cannot_downcast_keyz+TestDictObject.test_012_cannot_downcast_key   sV   € Ü	ñ	ó 
ð	ð ×Ñœ{Ô+¨vÙŒE÷ ,à�‰Ø4Ü�× Ñ Ó!õ	
÷ ,Ð+úr	  c                 óH   — t         d„ «       }| j                   |«       «       y )Nc                  óF   — t        j                  t        t        «      } d| v S r   r  r|   s    r%   r&   z8TestDictObject.test_013_contains_empty_dict.<locals>.foo0  s   € ä×#Ñ#¤E¬7Ó3ˆAà˜�6ˆMr'   rÙ   r-   s     r%   Útest_013_contains_empty_dictz+TestDictObject.test_013_contains_empty_dict/  s&   € Ü	ñ	ó 
ð	ð
 	×Ñ™›Õr'   c                 óH   — t         d„ «       }| j                   |«       «       y )Nc                  óF   — t        j                  t        t        «      } d| vS r   r  r|   s    r%   r&   z<TestDictObject.test_014_not_contains_empty_dict.<locals>.foo9  s   € ä×#Ñ#¤E¬7Ó3ˆAà˜A�:Ðr'   )r   rÔ   r-   s     r%   Ú test_014_not_contains_empty_dictz/TestDictObject.test_014_not_contains_empty_dict8  s$   € Ü	ñ	ó 
ð	ð
 	�‰™›Õr'   c                 óT   — t         d„ «       }d}| j                   ||«      |df«       y )Nc                 óÂ   — t        j                  t        t        «      }t	        | «      D ]
  }|dz   ||<   Œ t        |«      }|j                  «        t        |«      }||fS r   )r   r   r   r   r   r2   rŠ   )r"   r#   r$   rµ   r  s        r%   r&   z/TestDictObject.test_015_dict_clear.<locals>.fooB  sS   € ä×#Ñ#¤E¬7Ó3ˆAÜ˜1–X�Ø˜1‘u��!’ð ä�A“ˆAØ�G‰GŒIÜ�A“ˆAØ�a�4ˆKr'   r>   r   r+   )r.   r&   Úms      r%   Útest_015_dict_clearz"TestDictObject.test_015_dict_clearA  s3   € Ü	ñ	ó 
ð	ð ˆØ×Ñ™˜Q› ! Q Õ(r'   c                 óÈ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                  ód   — t        j                  t        t        «      } | j	                  dd«       y )Nrð   ç      (@©r   r   r   r   r¼   r|   s    r%   r&   z8TestDictObject.test_016_cannot_downcast_key.<locals>.fooP  s"   € ä×#Ñ#¤E¬7Ó3ˆAà�L‰L˜˜SÕ!r'   ró   rô   rø   s      r%   Útest_016_cannot_downcast_keyz+TestDictObject.test_016_cannot_downcast_keyO  sV   € Ü	ñ	"ó 
ð	"ð
 ×Ñœ{Ô+¨vÙŒE÷ ,à�‰Ø4Ü�× Ñ Ó!õ	
÷ ,Ð+úr	  c                 óÈ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                  ód   — t        j                  t        t        «      } | j	                  dd«       y )Nr   r%  r:  r|   s    r%   r&   z<TestDictObject.test_017_cannot_downcast_default.<locals>.foo^  s"   € ä×#Ñ#¤E¬7Ó3ˆAà�L‰L˜˜DÕ!r'   rþ   rô   rø   s      r%   Ú test_017_cannot_downcast_defaultz/TestDictObject.test_017_cannot_downcast_default]  sV   € Ü	ñ	"ó 
ð	"ð
 ×Ñœ{Ô+¨vÙŒE÷ ,à�‰Ø6Ü�× Ñ Ó!õ	
÷ ,Ð+úr	  c                 ó|   — t         d„ «       } |«       \  }}| j                  ||«       | j                  |ddg«       y )Nc                  óê   — t        j                  t        t        «      } d| d<   | j	                  «       }d| d<   | j	                  «       }|D �cg c]  }|‘Œ }}|D �cg c]  }|‘Œ }}||fS c c}w c c}w )Nr9  rÊ   ç      "@é   ©r   r   r   r   rM   )r#   Úk1Úk2rµ   Úrk1Úrk2s         r%   r&   z8TestDictObject.test_018_keys_iter_are_views.<locals>.foon  sq   € ä×#Ñ#¤E¬7Ó3ˆAØˆAˆb‰EØ—‘“ˆBØˆAˆb‰EØ—‘“ˆBÙ “/™b˜’1˜bˆC�/Ù “/™b˜’1˜bˆC�/Ø˜�8ˆOùò "ùÚ!s   Á	A+Á	A0rÊ   rB  r+   )r.   r&   r½   r¾   s       r%   Útest_018_keys_iter_are_viewsz+TestDictObject.test_018_keys_iter_are_viewsk  sG   € ô 
ñ	ó 
ð	ñ ‹u‰ˆˆ1Ø×Ñ˜˜AÔØ×Ñ˜˜R ˜HÕ%r'   c                 ó<   — t         d„ «       }t         |«       «       y )Nc                  ó~   — t        j                  t        t        «      } d| d<   d| d<   | j	                  «       dhz  }|S )Nr9  rÊ   rA  rB  é   rC  )r#   rE  s     r%   r&   z$TestDictObject.test_019.<locals>.foo�  s=   € ä×#Ñ#¤E¬7Ó3ˆAØˆAˆb‰EØˆAˆb‰EØ—‘“˜R˜FÑ"ˆBØˆIr'   )r   Úprintr-   s     r%   Útest_019zTestDictObject.test_019~  s!   € ô 
ñ	ó 
ð	ô 	‰c‹e�r'   c                 ó|   — t         d„ «       } |«       \  }}| j                  |g d¢«       | j                  |d«       y )Nc                  óØ   — t        j                  t        j                  t        «      } d| d<   d| d<   d| d<   d| d<   g }| j                  «       D ]  }|j                  |«       Œ || d   fS )	Nç      ð?r½   ç       @r¾   ç      @r¿   g      @r#   )r   r   r   Úunicode_typer   r�   r7   )r#   r�   rµ   s      r%   r&   z/TestDictObject.test_020_string_key.<locals>.fooŒ  sl   € ä×#Ñ#¤E×$6Ñ$6¼Ó@ˆAØˆAˆc‰FØˆAˆc‰FØˆAˆc‰FØˆAˆc‰FØˆCØ—W‘W–Y�Ø—
‘
˜1•ð à˜˜#™�;Ðr'   ))r½   rP  )r¾   rQ  )r¿   rR  )r#   rX   rP  r+   )r.   r&   r�   rÈ   s       r%   Útest_020_string_keyz"TestDictObject.test_020_string_key‹  sB   € Ü	ñ		ó 
ð		ñ “E‰	ˆˆrØ×Ñ˜Ò KÔLØ×Ñ˜˜RÕ r'   c                 óV   — t         d„ «       }| j                   |«       ddz  dfg«       y )Nc                  óú   — t        j                  t        j                  t        «      } g }t        d«      D ]  }|j                  d«       Œ dj                  |«      }d| |<   t        | j                  «       «      }|S )Né'  r½   Ú rP  )
r   r   r   rS  r   r   r7   Újoinr“   r�   )r#   r  r$   Úsr�   s        r%   r&   z1TestDictObject.test_021_long_str_key.<locals>.foo�  sb   € ä×#Ñ#¤E×$6Ñ$6¼Ó@ˆAØˆCÜ˜5–\�Ø—
‘
˜3•ð "à—‘˜“ˆAØˆAˆa‰DÜ�q—w‘w“y“/ˆCØˆJr'   r½   rW  r   r+   r-   s     r%   Útest_021_long_str_keyz$TestDictObject.test_021_long_str_keyœ  s4   € Ü	ñ	ó 
ð	ð 	×Ñ™› #¨¡+¨qÐ!1Ð 2Õ3r'   c                 óª   — t         d„ «       } |«       \  }}}| j                  |ddg«       | j                  |ddg«       | j                  |ddg«       y )Nc                  ó„  — t        j                  t        t        «      } | }d| d<   d|d<   t        j                  t        t        «      }d|d<   d|d<   | }|} | j	                  «       D �cg c]  }|‘Œ }}|j	                  «       D �cg c]  }|‘Œ }}|j	                  «       D �cg c]  }|‘Œ }}|||fS c c}w c c}w c c}w )Nr9  r   ç      ,@r)   ç      Y@ç     @�@)r   r   r   r   r�   )r#   ÚeÚfrµ   rD  rE  Úk3s          r%   r&   z6TestDictObject.test_022_references_juggle.<locals>.fooª  s¾   € ä×#Ñ#¤E¬7Ó3ˆAØˆAØˆAˆa‰DØˆAˆa‰DÜ×#Ñ#¤E¬7Ó3ˆAØˆAˆa‰DØˆAˆa‰DØˆAØˆAàŸW™WœYÓ'™Y˜’!˜YˆBÐ'ØŸW™WœYÓ'™Y˜’!˜YˆBÐ'ØŸW™WœYÓ'™Y˜’!˜YˆBÐ'à�r˜2�:Ðùò	 (ùÚ'ùÚ's   Á)	B3Â	B8Â#	B=)r   r_  )r)   r`  )r   rK  )r)   é   r+   )r.   r&   rD  rE  rc  s        r%   Útest_022_references_jugglez)TestDictObject.test_022_references_juggle©  sb   € Ü	ñ	ó 
ð	ñ" “U‰
ˆˆB�Ø×Ñ˜˜j¨+Ð6Ô7Ø×Ñ˜˜j¨+Ð6Ô7Ø×Ñ˜˜g wÐ/Õ0r'   c                 óN   — t         d„ «       }| j                   |«       ddg«       y )Nc                  óž   ‡— t        j                  t        t        «      Šˆfd„}  | «        ‰j	                  «       D �cg c]  }|‘Œ c}S c c}w )Nc                  ó   •— d‰ d<   d‰ d<   y )Nr9  r   r^  r)   © r|   s   €r%   Úbarz9TestDictObject.test_023_closure.<locals>.foo.<locals>.barÆ  s   ø€ Ø��!‘Ø��!’r'   rC  )rj  rµ   r#   s     @r%   r&   z,TestDictObject.test_023_closure.<locals>.fooÂ  s?   ø€ ä×#Ñ#¤E¬7Ó3ˆAôñ ŒEØ Ÿv™vœxÓ(™x˜!’A˜xÑ(Ð(ùÒ(s   ¾	A
r   r)   r+   r-   s     r%   Útest_023_closurezTestDictObject.test_023_closureÁ  s,   € Ü	ñ	)ó 
ð	)ð 	×Ñ™›  A Õ'r'   c                 óÈ   — t         d„ «       }| j                   |«       |j                  «       «       t         d„ «       }| j                   |«       |j                  «       «       y )Nc                  ó   — d} | d   di}|d   S )Nu   aáˆ´r   r   r½   ri  ©rZ  r#   s     r%   r&   z9TestDictObject.test_024_unicode_getitem_keys.<locals>.fooÐ  s   € àˆAØ�1‘˜�
ˆAØ�S‘6ˆMr'   c                  ó   — d} | d d di}|d   S )Nu   abcáˆ´r   r½   ri  rn  s     r%   r&   z9TestDictObject.test_024_unicode_getitem_keys.<locals>.fooØ  s   € àˆAØ�2�A�˜�ˆAØ�S‘6ˆMr'   ©r   r,   rq   r-   s     r%   Útest_024_unicode_getitem_keysz,TestDictObject.test_024_unicode_getitem_keysÎ  sZ   € ä	ñ	ó 
ð	ð
 	×Ñ™› §¡£Ô.ä	ñ	ó 
ð	ð
 	×Ñ™› §¡£Õ.r'   c                 ó´   ‡— t        j                  t         j                  t         j                  g«      Št        ˆfd„«       }| j                   |«       «       y )Nc                  óT  •— t        j                  ‰t        «      } t        j                  dgt        j
                  ¬«      }t        j                  dgt        j                  ¬«      }t        j                  dgt        j                  ¬«      }|d   | |d   |d   f<   |d   |d   f| v S )NrF   ©Údtypeg®Gáz®@gö(\�Âu$@r   )r   r   r   r  Úarrayr  r   )r#   Út1Út2r  Úkeytys       €r%   r&   z<TestDictObject.test_issue6570_alignment_padding.<locals>.fooç  sˆ   ø€ ä×#Ñ# E¬7Ó3ˆAÜ—‘˜1˜#¤R§Y¡YÔ/ˆBÜ—‘˜4˜&¬¯
©
Ô3ˆBÜ—‘˜5˜'¬¯©Ô4ˆBØ " 1¡ˆAˆr�!‰u�b˜‘eˆnÑØ�q‘E˜2˜a™5�> QÐ&Ð&r'   )r   ÚTupler  r   r   rÔ   )r.   r&   ry  s     @r%   Ú test_issue6570_alignment_paddingz/TestDictObject.test_issue6570_alignment_paddingà  sB   ø€ ô
 —‘œUŸ\™\¬5¯=©=Ð9Ó:ˆä	ó	'ó 
ð	'ð 	�‰™›Õr'   c                 óä   — d}d„ }|} t        «       |«      } ||«      } ||«      }| j                  ||«       d„ }|} t        «       |«      } ||«      } ||«      }| j                  ||«       y)zD
        Tests dict.update works with various dictionaries.
        r>   c                 ó¬   — t        | «      D �ci c]  }||dz   “Œ
 }}t        | «      D �ci c]  }d|z  |“Œ
 }}|j                  |«       |S c c}w c c}w )z@
            Test update with a regular dictionary.
            r   rF   ©r   Úupdate)r"   r$   Úd1Úd2s       r%   Úf1z+TestDictObject.test_dict_update.<locals>.f1ø  s\   € ô %*¨!¤HÓ-¡H˜q�!�Q˜‘U‘( HˆBÐ-Ü$)¨!¤HÓ-¡H˜q�!�a‘%˜‘( HˆBÐ-Ø�I‰I�bŒMØˆIùò .ùÚ-s
   ŽAªAc                 óv   — ddddœ}t        | «      D �ci c]  }d|z  |“Œ
 }}|j                  |«       |S c c}w )zo
            Test update where one of the dictionaries
            is created as a Python literal.
            r)   rX   é   )r   rF   r<   rF   r~  )r"   r€  r$   r�  s       r%   Úf2z+TestDictObject.test_dict_update.<locals>.f2  sK   € ð ØØñˆBô
 %*¨!¤HÓ-¡H˜q�!�a‘%˜‘( HˆBÐ-Ø�I‰I�bŒMØˆIùò .s   ”6Nr+   )r.   r"   r‚  rq   Úcfuncr½   r¾   r…  s           r%   Útest_dict_updatezTestDictObject.test_dict_updateò  s   € ð ˆò	ð ˆØ”“�r“
ˆÙ�A‹JˆÙ�!‹HˆØ×Ñ˜˜AÔò	ð ˆØ”“�r“
ˆÙ�A‹JˆÙ�!‹HˆØ×Ñ˜˜AÕr'   N):Ú__name__Ú
__module__Ú__qualname__r/   r3   r@   rG   r^   rd   rt   r~   r„   r‡   rŒ   r”   r˜   r�   r¡   r¤   r¨   r¬   r°   r¶   rÀ   rË   rÖ   rÚ   rí   rú   rÿ   r  r  r  r  r   Ú
skipUnlessÚsysÚmaxsizer  r!  r&  r)  r,  r/  r2  r6  r;  r>  rH  ÚexpectedFailurerM  rT  r[  re  rk  rq  r{  r‡  ri  r'   r%   r   r      s?  „ ò+ò(*ò(<ò(,ò ò8ò,'$òR"òH
ò>ò,2ò& $òD
ò.
ò(
ò.
ò(
ò&
ò.
ò.5ò"1ò$;ò.).òV(ò (ò<
ò"
ò"
ò$
ò
ò
ð €X×Ñ˜Ÿ™ wÑ.Ð0BÓCñó Dðò"Bò*
ò 
ò 
ò òò)ò
ò
ò&ð& ×Ññ
ó ð
ò!ò"4ò1ò0(ò/ò$ó$'r'   r   c                   ó*   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestDictTypeCastingc                 ó   — t        ||«       y r6   r   )r.   ÚfromtyÚtotys      r%   Ú
check_goodzTestDictTypeCasting.check_good  s   € Ü˜& $Õ'r'   c                 óê   — | j                  t        «      5 }t        ||«       d d d «       | j                   dj                  di t        «       ¤Žt        j                  «      «       y # 1 sw Y   ŒGxY w)Nz%cannot safely cast {fromty} to {toty}ri  )rs   r   r   rõ   ÚformatÚlocalsrö   r÷   )r.   r’  r“  rù   s       r%   Ú	check_badzTestDictTypeCasting.check_bad   sZ   € Ø×Ñœ{Ô+¨vÜ˜f dÔ+÷ ,à�‰Ø:Ð3×:Ñ:ÑF¼V»XÑFÜ�× Ñ Ó!õ	
÷ ,Ð+ús   –A)Á)A2c                 ó,  — | j                  t        j                  t        j                  «       | j                  t        j                  t        j                  «       | j                  t        j                  t        j
                  «       | j                  t        j                  t        j
                  «       | j                  t        j                  t        j                  «       | j                  t        j                  t        j                  «       y r6   )
r”  r   r   r   r   Ú
complex128r   r˜  Ú	complex64Úint8©r.   s    r%   Útest_cast_int_toz$TestDictTypeCasting.test_cast_int_to(  sŠ   € Ø�‰œŸ™¤U§]¡]Ô3Ø�‰œŸ™¤U§]¡]Ô3Ø�‰œŸ™¤U×%5Ñ%5Ô6Ø�‰œŸ™¤U×%5Ñ%5Ô6Ø�‰”u—{‘{¤E§O¡OÔ4Ø�‰œŸ
™
¤E§O¡OÕ4r'   c                 ó  — | j                  t        j                  t        j                  «       | j                  t        j                  t        j                  «       | j                  t        j                  t        j
                  «       y r6   )r”  r   r   r   r›  rš  r�  s    r%   Útest_cast_float_toz&TestDictTypeCasting.test_cast_float_to0  sF   € Ø�‰œŸ™¤u§}¡}Ô5Ø�‰œŸ™¤u§¡Ô7Ø�‰œŸ™¤u×'7Ñ'7Õ8r'   c                 ó  — | j                  t        j                  t        j                  «       | j                  t        j                  t        j                  «       | j                  t        j                  t        j
                  «       y r6   )r”  r   Úbooleanr   r   rš  r�  s    r%   Útest_cast_bool_toz%TestDictTypeCasting.test_cast_bool_to5  sF   € Ø�‰œŸ™¤u§{¡{Ô3Ø�‰œŸ™¤u§}¡}Ô5Ø�‰œŸ™¤u×'7Ñ'7Õ8r'   N)rˆ  r‰  rŠ  r”  r˜  rž  r   r£  ri  r'   r%   r�  r�    s   „ ò(ò
ò5ò9ó
9r'   r�  c                   ó8   — e Zd Zd„ Zd„ Zd„ Zd„ Zd	d„Zd„ Zd„ Z	y)
ÚTestTypedDictc                 ó  — t        j                  t        t        «      }| j	                  t        |«      d«       d|d<   d|d<   d|d<   | j	                  t        |«      d«       | j	                  t        |j                  «       «      g d¢«       t        t        |j                  «       «      g d¢«      D ]  \  }}| j                  ||d	¬
«       Œ | j                  |d   d«       | j                  |d   dd	¬
«       | j                  |d   dd	¬
«       |d= | j	                  t        |«      d«       | j                  |j                  d«      «       |j                  dd«       |j                  dd«       | j	                  |d   d«       | j                  |d   dd	¬
«       |j                  dddœ«       | j                  |d	   d«       | j                  |d   d«       | j                  d	|v «       t!        |j#                  «       «      }| j	                  t        |«      t        |«      «       | j                  |j%                  d	«      d«       t        |«      }|j'                  «       \  }}| j	                  t        |«      |dz
  «       | j                  ||v«       |j)                  «       }| j	                  ||«       | j	                  t        |j#                  «       «      t        |j#                  «       «      «       y )Nr   r   rº   r)   r»   rF   rQ   )r   rº   r»   rX   )Úplacesr*   éÈ   r<   r„  )rX   r<   )r
   Úemptyr   r   r,   r2   r“   rM   rK   r    ÚassertAlmostEqualÚassertIsNoner8   r¼   r  rÔ   rr   r�   rx   rb   r³   )	r.   r#   rµ   r  Úpydrß   rO   rP   Úcopieds	            r%   Ú
test_basiczTestTypedDict.test_basic<  sm  € Ü�J‰J”uœgÓ&ˆà×Ñœ˜Q› Ô#àˆˆ!‰Øˆˆ!‰Øˆˆ!‰Ø×Ñœ˜Q› Ô#à×Ñœ˜aŸf™f›h›ªÔ3äœ˜QŸX™X›ZÓ(ª-Ö8‰DˆAˆqØ×"Ñ" 1 a°Ð"Õ2ð 9ð 	×Ñ˜q ™t QÔ'Ø×Ñ˜q ™t S°ÐÔ3Ø×Ñ˜q ™t S°ÐÔ3àˆaˆDØ×Ñœ˜Q› Ô#à×Ñ˜!Ÿ%™% ›(Ô#à	�‰�Q˜ÔØ	�‰�Q˜ÔØ×Ñ˜˜1™˜sÔ#Ø×Ñ˜q ™t S°ÐÔ3à	�‰�Q˜1‘ÔØ×Ñ˜q ™t QÔ'Ø×Ñ˜q ™t QÔ'à�‰˜˜Q˜Ôä�1—7‘7“9‹oˆØ×Ñœ˜S›¤3 q£6Ô*à×Ñ˜qŸu™u Q›x¨Ô+ä�A“ˆØ�y‰y‹{‰ˆˆ1Ø×Ñœ˜Q› ¨¡Ô+Ø�‰˜ ˜
Ô#à—‘“ˆØ×Ñ˜ Ô#Ø×Ñœ˜fŸl™l›nÓ-¬t°A·G±G³I«Õ?r'   c                 ó6  — t        t        d«      t        dd«      «      D ��ci c]  \  }}|t        |«      “Œ }}}t        j                  t
        t        «      }|j                  «       D ]
  \  }}|||<   Œ t        |«      }| j                  ||«       y c c}}w )Nr>   ro   )
rK   r   Úfloatr
   r©  r   r   r�   rr   r,   )r.   rO   rP   ÚexpectÚnbdrë   s         r%   Útest_copy_from_dictz!TestTypedDict.test_copy_from_dictm  s�   € Ü*-¬e°B«i¼¸rÀ2»Ô*GÔHÑ*G¡$ ! Q�!”U˜1“X‘+Ð*GˆÑHÜ�j‰jœ¤Ó(ˆØ—L‘L–N‰DˆAˆqØˆC�ŠFð #ä�3‹iˆØ×Ñ˜˜fÕ%ùó Is   £Bc                 óv   — t         d„ «       }t         d„ «       } |«       } ||«      }| j                  |d«       y )Nc                  óL   — t        j                  t        t        «      } d| d<   | S )Nç®Gáz®ó?r   )r
   r©  r   r   r|   s    r%   Úproducerz-TestTypedDict.test_compiled.<locals>.producerv  s    € ä—
‘
œ5¤'Ó*ˆAØˆAˆa‰DØˆHr'   c                 ó   — | d   S r   ri  r|   s    r%   Úconsumerz-TestTypedDict.test_compiled.<locals>.consumer|  s   € à�Q‘4ˆKr'   r¶  r+   )r.   r·  r¹  r#   Úvals        r%   Útest_compiledzTestTypedDict.test_compiledu  sJ   € Ü	ñ	ó 
ð	ô
 
ñ	ó 
ð	ñ ‹JˆÙ�q‹kˆØ×Ñ˜˜dÕ#r'   c                 óî   — t        j                  t        j                  t        j                  t        j                  g«      t
        ¬«      }d|d<   | j                  |d   |j                  d«      «       y )N©Úkey_typeÚ
value_typei90  )r   r   )r
   r©  r   rz  Úuint32r   r,   r8   ©r.   r#   s     r%   Útest_gh7908zTestTypedDict.test_gh7908„  sX   € Ü�J‰JÜ—[‘[¤%§,¡,Ü"'§,¡,ð"0ó 1äôˆð
 ˆˆ&‰	Ø×Ñ˜˜6™ A§E¡E¨&£MÕ2r'   c                 ó²  — t        j                  t        t        «      }i }d|d<   d|d<   |r| j                  n| j                  } | ||«       ||«      «       d|d<   d|d<    | ||«       ||«      «       t        dd«      D ]  }|dz   ||<   |dz   ||<   Œ  | ||«       ||«      «       |r'| j                   ||«      j                  d«      «       y y )Nr)   r   rF   r>   ro   ré   )r
   r©  r   rõ   r,   r   rÔ   Ú
startswith)r.   ÚstrfnÚprefixr²  r#   Úcheckerr$   s          r%   Úcheck_stringifyzTestTypedDict.check_stringify�  sÓ   € Ü�j‰jœ¤Ó&ˆØˆØˆˆA‰Øˆˆ!‰Ù#)�$—-’-¨t×/?Ñ/?ˆÙ‘�a“™% ›*Ô%ØˆˆA‰Øˆˆ!‰Ù‘�a“™% ›*Ô%Ü�r˜2–ˆAØ˜‘UˆC�‰FØ�q‘5ˆAˆaŠDð ñ 	‘�a“™% ›*Ô%ÙØ�O‰O™E #›J×1Ñ1°*Ó=Õ>ð r'   c                 ó2   — | j                  t        d¬«       y )NT)rÆ  )rÈ  Úreprr�  s    r%   Ú	test_reprzTestTypedDict.test_reprž  s   € Ø×ÑœT¨$ÐÕ/r'   c                 ó.   — | j                  t        «       y r6   )rÈ  rö   r�  s    r%   Útest_strzTestTypedDict.test_str¡  s   € Ø×ÑœSÕ!r'   N)F)
rˆ  r‰  rŠ  r®  r³  r»  rÂ  rÈ  rË  rÍ  ri  r'   r%   r¥  r¥  ;  s'   „ ò/@òb&ò$ò3ó?ò"0ó"r'   r¥  c                   ó   — e Zd Zd„ Zy)ÚDictIterableCtorc                 ó¶  — t         d„ «       }t         d„ «       }t         d„ «       }t         d„ «       }t         d„ «       }t         d„ «       }t         d„ «       }t         d„ «       }d	„ }	|d
dg |	dddd
œ«      f|d
dg |	dddd
œ«      f|d
dg |	dddd
œ«      f|d
dg |	dddd
œ«      f|d
dg |	ddddœ«      f|dg |	dddœ«      f|d |	ddi«      g |	ddi«      f|d |	ddi«      g |	d |	ddi«      i«      f|dt        g d¢«      g |	dt        g d¢«      i«      ff	}
|
D ]9  \  }}}| j                  r ||Ž }n |j                  |Ž }| j	                  ||«       Œ; y )Nc                 ó0   — t        t        | |«      «      }|S r6   ©r
   rK   )r½   r¾   r#   s      r%   Úfunc1z>DictIterableCtor.test_iterable_type_constructor.<locals>.func1©  s   € ä”S˜˜A“Y“ˆAØˆHr'   c                 óB   — t        d«      }t        t        ||«      «      S ry   )r   r
   rK   ©Úa_r¾   r½   s      r%   Úfunc2z>DictIterableCtor.test_iterable_type_constructor.<locals>.func2®  s   € ä�a“ˆAÜœ˜A˜q›	“?Ð"r'   c                 ó4   — g d¢}t        t        ||«      «      S )N©r   r   r)   rÒ  rÕ  s      r%   Úfunc3z>DictIterableCtor.test_iterable_type_constructor.<locals>.func3³  s   € âˆAÜœ˜A˜q›	“?Ð"r'   c           	      óX   — t        | |«      }t        t        | t        || «      «      «      S r6   )rK   r
   ©r½   r¾   r¿   s      r%   Úfunc4z>DictIterableCtor.test_iterable_type_constructor.<locals>.func4¸  s%   € ä�A�q“	ˆAÜœ˜Aœs 1 a›yÓ)Ó*Ð*r'   c                 ó@   — t        t        t        | |«      |«      «      S r6   rÒ  ©r½   r¾   s     r%   Úfunc5z>DictIterableCtor.test_iterable_type_constructor.<locals>.func5½  s   € äœœC  1›I qÓ)Ó*Ð*r'   c                 ó   — t        | «      S r6   ©r
   )r�   s    r%   Úfunc6z>DictIterableCtor.test_iterable_type_constructor.<locals>.func6Á  s   € ä˜“;Ðr'   c                 ó   — t        | |i«      S r6   râ  )rO   rP   s     r%   Úfunc7z>DictIterableCtor.test_iterable_type_constructor.<locals>.func7Å  s   € ä˜˜A˜“<Ðr'   c                 ó$   — t        «       }||| <   |S r6   râ  ©rO   rP   r#   s      r%   Úfunc8z>DictIterableCtor.test_iterable_type_constructor.<locals>.func8É  ó   € ä“ˆAØˆAˆa‰DØˆHr'   c                 óT   — t        «       }| j                  «       D ]
  \  }}|||<   Œ |S r6   )r
   r�   )Úpy_dictr#   rO   rP   s       r%   Ú	_get_dictzBDictIterableCtor.test_iterable_type_constructor.<locals>._get_dictÏ  s+   € Ü“ˆAØŸ™ž‘��1Ø��!’ð (àˆHr'   rÙ  Úabcr½   r¾   r¿   )©r   r½   r   )©r   r¾   r   )©r)   r¿   r)   )rî  rï  rð  )©r   r½   )rF   r¾   ©r   rF   Úkeyr   rO   rQ   )r   r   Újit_enabledrq   r§   )r.   rÓ  r×  rÚ  rÝ  rà  rã  rå  rè  rì  rN   ÚfuncÚargsrì   rë   s                  r%   Útest_iterable_type_constructorz/DictIterableCtor.test_iterable_type_constructor§  s  € ä	ñ	ó 
ð	ô 
ñ	#ó 
ð	#ô 
ñ	#ó 
ð	#ô 
ñ	+ó 
ð	+ô 
ñ	+ó 
ð	+ô 
ñ	ó 
ð	ô 
ñ	 ó 
ð	 ô 
ñ	ó 
ð	ò
	ð �Y Ð&©	°c¸cÀcÑ2JÓ(KÐLØ�Y Ð&©	°c¸cÀcÑ2JÓ(KÐLØ�Y Ð&©	°c¸cÀcÑ2JÓ(KÐLØ�Y Ð&©	Ø! m¸ÑFó)Hð Ià�Y Ð&©	Ø¨#¸Ñ=ó)?ð @ð Ð)Ð+©Y¸3À3Ñ7GÓ-HÐIØ�U™I q¨% jÓ1Ð2±I¸sÀA¸hÓ4GÐHØ�U™I q¨% jÓ1Ð2±IØ™	 1 e *Ó-Ð.ó50ð 1à�UœD¢›OÐ,©iØœšY›Ð(ó/*ð +ð
ˆó" %)Ñ ˆD�$˜Ø×ÒÙ˜D�k‘à"�d—l‘l DÐ)�Ø×#Ñ# H¨cÕ2ñ %)r'   N)rˆ  r‰  rŠ  r÷  ri  r'   r%   rÏ  rÏ  ¥  s   „ óD3r'   rÏ  c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚTestDictIterableCtorJitc                 ó   — d| _         y )NT©rô  r�  s    r%   ÚsetUpzTestDictIterableCtorJit.setUpð  s
   € ØˆÕr'   c                 ó„   — t         d„ «       }d}| j                  t        |«      5   |«        d d d «       y # 1 sw Y   y xY w)Nc                  ó   — t        d«      S ry   râ  ri  r'   r%   ÚctorzDTestDictIterableCtorJit.test_exception_no_iterable_arg.<locals>.ctorô  s   € ä˜“7ˆNr'   ú!.*No implementation of function.*©r   r[   r   ©r.   rÿ  Úmsgs      r%   Útest_exception_no_iterable_argz6TestDictIterableCtorJit.test_exception_no_iterable_argó  s<   € Ü	ñ	ó 
ð	ð 2ˆØ×#Ñ#¤K°Õ5ÙŒF÷ 6×5Ñ5úó   ¥6¶?c                 ó„   — t         d„ «       }d}| j                  t        |«      5   |«        d d d «       y # 1 sw Y   y xY w)Nc                  ó   — t        dddœ«      S )Nr)   rX   rò  râ  ri  r'   r%   rÿ  zATestDictIterableCtorJit.test_exception_dict_mapping.<locals>.ctorý  s   € ä˜A !™Ó%Ð%r'   r   r  r  s      r%   Útest_exception_dict_mappingz3TestDictIterableCtorJit.test_exception_dict_mappingü  s<   € Ü	ñ	&ó 
ð	&ð 2ˆØ×#Ñ#¤K°Õ5ÙŒF÷ 6×5Ñ5úr  c                 ó„   — t         d„ «       }d}| j                  t        |«      5   |«        d d d «       y # 1 sw Y   y xY w)Nc                  ó   — t        d«      S )N©rñ  )r)   r¾   rF   râ  ri  r'   r%   rÿ  z<TestDictIterableCtorJit.test_exception_setitem.<locals>.ctor  s   € äÐ/Ó0Ð0r'   r   r  r  s      r%   Útest_exception_setitemz.TestDictIterableCtorJit.test_exception_setitem  s<   € Ü	ñ	1ó 
ð	1ð 2ˆØ×#Ñ#¤K°Õ5ÙŒF÷ 6×5Ñ5úr  N)rˆ  r‰  rŠ  rü  r  r  r  ri  r'   r%   rù  rù  î  s   „ ò òòór'   rù  c                   ó*   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestDictIterableCtorNoJitc                 ó   — d| _         y )NFrû  r�  s    r%   rü  zTestDictIterableCtorNoJit.setUp  s
   € Ø ˆÕr'   c                 óv   — d}| j                  t        |«      5  t        dd«       d d d «       y # 1 sw Y   y xY w)Nz%Dict expect at most 1 argument, got 2r   r)   ©r[   r   r
   ©r.   r  s     r%   Útest_exception_nargsz.TestDictIterableCtorNoJit.test_exception_nargs  s,   € Ø5ˆØ×#Ñ#¤K°Õ5Ü��AŒJ÷ 6×5Ñ5ús   ™/¯8c                 óx   — d}| j                  t        |«      5  t        ddi«       d d d «       y # 1 sw Y   y xY w)Nz$.*dict\(mapping\) is not supported.*r   r)   r  r  s     r%   Útest_exception_mapping_ctorz5TestDictIterableCtorNoJit.test_exception_mapping_ctor  s.   € Ø5ˆØ×#Ñ#¤K°Õ5Ü�!�Q�ŒL÷ 6×5Ñ5ús   ™0°9c                 ót   — d}| j                  t        |«      5  t        d«       d d d «       y # 1 sw Y   y xY w)Nz.*object is not iterable.*rF   r  r  s     r%   Útest_exception_non_iterable_argz9TestDictIterableCtorNoJit.test_exception_non_iterable_arg  s*   € Ø*ˆØ×#Ñ#¤K°Õ5Ü�ŒG÷ 6×5Ñ5úó   ™.®7c                 ót   — d}| j                  t        |«      5  t        d«       d d d «       y # 1 sw Y   y xY w)Nz6.*dictionary update sequence element #1 has length 3.*r  )r[   Ú
ValueErrorr
   r  s     r%   r  z0TestDictIterableCtorNoJit.test_exception_setitem#  s,   € ØFˆØ×#Ñ#¤J°Õ4ÜÐ(Ô)÷ 5×4Ñ4úr  N)rˆ  r‰  rŠ  rü  r  r  r  r  ri  r'   r%   r  r    s   „ ò!òò
ò
ó
*r'   r  c                   ó<   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
y	)
ÚTestDictRefctTypesc                 ó   — t         d„ «       } |«       }| j                  |d   d«       | j                  |d   d«       dddœ}| j                  t        |«      |«       d|d<   d|d<   | j                  |d   d«       | j                  t        |«      |«       d}t        |«      D ]  }||t	        |«      <   ||t	        |«      <   Œ  t        |«      D ]   }| j                  |t	        |«         |«       Œ" | j                  t        |«      |«       y )	Nc                  ó€   — t        j                  t        j                  t        j                  ¬«      } d| d<   d| d<   | S )Nr½  é{   Ú123éA  Ú321)r
   r©  r   rS  r   r|   s    r%   r&   z,TestDictRefctTypes.test_str_key.<locals>.foo,  s9   € ä—
‘
Ü×+Ñ+Ü Ÿ;™;ôˆAð ˆAˆe‰HØˆAˆe‰HØˆHr'   r   r  r"  r!  )r   r"  éç   r*   ©r   r,   rr   r   rö   ©r.   r&   r#   r±  rß   r$   s         r%   Útest_str_keyzTestDictRefctTypes.test_str_key+  s  € Ü	ñ	ó 
ð	ñ ‹EˆØ×Ñ˜˜5™ 3Ô'Ø×Ñ˜˜5™ 3Ô'Ø SÑ)ˆØ×Ñœ˜a› &Ô)àˆˆ%‰Øˆˆu‰Ø×Ñ˜˜5™ 3Ô'Ø×Ñœ˜a› &Ô)àˆÜ�u–ˆAØˆAŒc�!‹f‰IØˆF”3�q“6ŠNð ô �u–ˆAØ×Ñ˜Qœs 1›v™Y¨Õ*ð à×Ñœ˜a› &Õ)r'   c                 óö  — t         d„ «       } |«       }| j                  |d   d«       | j                  |d   d«       dddœ}| j                  t        |«      |«       d|d<   d|d<   | j                  t        |«      |«       d}t        |«      D ]  }t	        |«      ||<   t	        |«      ||<   Œ  t        |«      D ]   }| j                  ||   t	        |«      «       Œ" | j                  t        |«      |«       y )	Nc                  ó€   — t        j                  t        j                  t        j                  ¬«      } d| d<   d| d<   | S )Nr½  r   r  r"  r!  )r
   r©  r   r   rS  r|   s    r%   r&   z,TestDictRefctTypes.test_str_val.<locals>.fooJ  s9   € ä—
‘
ÜŸ™Ü ×-Ñ-ôˆAð ˆAˆc‰FØˆAˆc‰FØˆHr'   r  r   r!  r"  ©r  r!  Ú231r   r$  r%  s         r%   Útest_str_valzTestDictRefctTypes.test_str_valI  sò   € Ü	ñ	ó 
ð	ñ ‹EˆØ×Ñ˜˜3™ Ô'Ø×Ñ˜˜3™ Ô'Ø 5Ñ)ˆØ×Ñœ˜a› &Ô)àˆˆ#‰Øˆˆs‰Ø×Ñœ˜a› &Ô)àˆÜ�u–ˆAÜ�q“6ˆAˆa‰DÜ˜A›ˆF�1ŠIð ô �u–ˆAØ×Ñ˜Q˜q™T¤3 q£6Õ*ð à×Ñœ˜a› &Õ)r'   c                 óD  — t         j                  j                  d«       t        j                  t
        j                  t
        j                  d d  ¬«      }g }|j                  t         j                  j                  d«      «       |d   |d<   |j                  t         j                  j                  d«      «       |d   |d<   t        d«      D ]A  }|j                  t         j                  j                  |«      «       |d   |t        |«      <   ŒC | j                  t        |«      t        |«      «       | j                  |d   |d	   «       | j                  |d   |d
   «       t        |j                  «       |«      D ]  \  }}| j                  ||«       Œ | j!                  d|v «       | j!                  d|v «       |d= | j#                  d|v «       |d= | j#                  d|v «       |d	d…= t        d«      D ]7  }|j%                  «       \  }}|j'                  «       }| j                  ||«       Œ9 |j                  t         j                  j                  d«      «       |d   |d<   t        |j                  «       |«      D ]  \  }}| j                  ||«       Œ y )Nr  r½  r>   r?   Úmassro   Úvelocityr*   r   r   r)   éZ   Úlast)r  ÚrandomÚseedr
   r©  r   rS  r   r7   r   rö   r,   r2   r§   rK   r    rÔ   rÕ   rb   rx   )	r.   r#   r±  r$   rë   ÚexprO   rP   Úws	            r%   Útest_str_key_array_valuez+TestDictRefctTypes.test_str_key_array_valuef  s)  € Ü
�	‰	�‰�sÔÜ�J‰JÜ×'Ñ'Ü—}‘}¡QÐ'ô
ˆð ˆØ�‰”b—i‘i×&Ñ& rÓ*Ô+Ø˜2‘Jˆˆ&‰	Ø�‰”b—i‘i×&Ñ& rÓ*Ô+Ø˜r™
ˆˆ*‰Ü�s–ˆAØ�M‰Mœ"Ÿ)™)×*Ñ*¨1Ó-Ô.Ø˜r™
ˆAŒc�!‹fŠIð ð 	×Ñœ˜Q›¤ V£Ô-Ø×Ñ  &¡	¨6°!©9Ô5Ø×Ñ  *¡¨v°a©yÔ9ä˜AŸH™H›J¨Ö/‰HˆC�Ø×#Ñ# C¨Õ-ð 0ð 	�‰˜ !˜Ô$Ø�‰˜
 a˜Ô(ØˆfˆIØ×Ñ˜ 1˜Ô%ØˆjˆMØ×Ñ˜ q˜Ô)Ø�1�Q�3ˆKä�r–ˆAØ—9‘9“;‰DˆAˆqØ—
‘
“ˆAØ×#Ñ# A qÕ)ð ð 	�‰”b—i‘i×&Ñ& rÓ*Ô+Ø˜2‘Jˆˆ&‰	ô ˜AŸH™H›J¨Ö/‰HˆC�Ø×#Ñ# C¨Õ-ñ 0r'   c                 ó˜  — d„ }t        j                  t        j                  t        j                  t        j                  t        j                  «      ¬«      }d„ } |||«      } |i t
        «      }| j                  |t
        «       | j                  t        |«      |«       dD ]#  }||= ||= | j                  t        |«      |«       Œ% y )Nc                  ól   — t        j                  t        j                  t        j                  ¬«      } | S ©Nr½  ©r
   r©  r   Úintpr|   s    r%   Úinner_numba_dictzITestDictRefctTypes.test_dict_of_dict_int_keyval.<locals>.inner_numba_dict’  s%   € Ü—
‘
ÜŸ™Ü Ÿ:™:ôˆAð ˆHr'   r½  c                 ót   — t        d«      D ])  } |«       }t        |dz   «      D ]
  }|dz  ||<   Œ || |<   Œ+ | S )Nr*   r   rW  rÞ   )r#   Úmake_inner_dictr$   ÚmidÚjs        r%   Úusecasez@TestDictRefctTypes.test_dict_of_dict_int_keyval.<locals>.usecasež  sG   € Ü˜3–Z�Ù%Ó'�Ü˜q 1™už�AØ ™Y�C˜’Fð &à��!’ð	  ð
 ˆHr'   )rK  rF   r„  é   r>   )r
   r©  r   r:  ré   rr   ÚassertIsInstancer,   )r.   r;  r#   r@  rë   r±  Úwheres          r%   Útest_dict_of_dict_int_keyvalz/TestDictRefctTypes.test_dict_of_dict_int_keyval‘  s¦   € ò	ô �J‰JÜ—Z‘ZÜ—~‘~¤e§j¡j´%·*±*Ó=ô
ˆò
	ñ �aÐ)Ó*ˆÙ˜œTÓ"ˆà×Ñ˜f¤dÔ+à×Ñœ˜c› FÔ+ó 'ˆEØ�E�
Ø�u�Ø×ÑœT #›Y¨Õ/ñ 'r'   c                 ó¤  ‡‡	— t        j                  t         j                  t         j                  «      Št        d„ «       Š	t        ˆˆ	fd„«       } |d«      }d}|j	                  «       D ]R  \  }}|dz  }| j                  t        |«      |dz   «       |j	                  «       D ]  \  }}| j                  ||«       Œ ŒT | j                  |d«       y )Nc                  ól   — t        j                  t        j                  t        j                  ¬«      } | S r8  r9  r|   s    r%   r;  zBTestDictRefctTypes.test_dict_of_dict_npm.<locals>.inner_numba_dict¶  s%   € ä—
‘
ÜŸ™Ü Ÿ:™:ôˆAð ˆHr'   c                 ó¼   •— t        j                  t        j                  ‰¬«      }t	        | «      D ]'  } ‰«       ||<   t	        |dz   «      D ]
  }|||   |<   Œ Œ) |S )Nr½  r   )r
   r©  r   r:  r   )Úcountr#   r$   r?  Úinner_dict_tyr;  s       €€r%   r&   z5TestDictRefctTypes.test_dict_of_dict_npm.<locals>.foo¾  s]   ø€ ä—
‘
ÜŸ™Ø(ôˆAô ˜5–\�Ù'Ó)��!‘Ü˜q 1™už�AØ�A�a‘D˜’Gñ &ð "ð
 ˆHr'   r*   r   r   )r   ré   r:  r   r�   r,   r2   )
r.   r&   r#   ÚctrO   ÚddÚkkÚvvrI  r;  s
           @@r%   Útest_dict_of_dict_npmz(TestDictRefctTypes.test_dict_of_dict_npm³  s¼   ù€ ÜŸ™¤u§z¡z´5·:±:Ó>ˆä	ñ	ó 
ð	ô 
ô
	ó 
ð
	ñ �‹HˆØˆØ—W‘W–Y‰EˆAˆrØ�!‰GˆBØ×ÑœS ›W a¨!¡eÔ,ØŸ(™(ž*‘��BØ× Ñ   RÕ(ñ %ð ð 	×Ñ˜˜SÕ!r'   c                 óô   — t        j                  t        j                  t        j                  «      }d|d<   t
        d„ «       } ||d«       | j                  t        |«      d«       | j                  |«       y )NÚappler   c                 ó
   — | d= y r   ri  )rµ   rO   s     r%   r&   z,TestDictRefctTypes.test_delitem.<locals>.fooÙ  s	   € à�!‘r'   r   )	r
   r©  r   r   rS  r   r,   r2   rÕ   )r.   r#   r&   s      r%   Útest_delitemzTestDictRefctTypes.test_delitemÕ  sd   € Ü�J‰J”u—{‘{¤E×$6Ñ$6Ó7ˆØˆˆ!‰ä	ñ	ó 
ð	ñ 	ˆAˆqŒ	Ø×Ñœ˜Q› Ô#Ø×Ñ˜Õr'   c                 ó  — t        j                  t        j                  t        j                  d d  «      }t	        j
                  dt        j                  ¬«      |d<   t        d„ «       } ||«       |j                  d   j                  }| j                  |t        j                  «       | j                  |t        j                  «       | j                  |d   t	        j
                  dt        j                  ¬«      dz   «       y )Nr>   rt  r   c                 ó&   — | dxx   dz  cc<   | d   S rÝ   ri  r|   s    r%   r&   z8TestDictRefctTypes.test_getitem_return_type.<locals>.fooæ  s   € àˆa‹D�C‰K‹DØ�Q‘4ˆKr'   r   r*   )r
   r©  r   r   r  Úaranger   Únopython_signaturesÚreturn_typerB  ÚArrayÚassertNotIsInstanceÚOptionalr§   )r.   r#   r&   Úrettys       r%   Útest_getitem_return_typez+TestDictRefctTypes.test_getitem_return_typeá  s·   € ä�J‰J”u—{‘{¤E§K¡K± NÓ3ˆÜ�y‰y˜¤2§8¡8Ô,ˆˆ!‰ä	ñ	ó 
ð	ñ 	ˆAŒà×'Ñ'¨Ñ*×6Ñ6ˆØ×Ñ˜e¤U§[¡[Ô1Ø× Ñ  ¬¯©Ô7à×Ñ  !¡¤b§i¡i°¼"¿(¹(Ô&CÀcÑ&IÕJr'   c                 óˆ   — t        «       }g d¢}|D ]  }|||<   Œ	 t        |«      D ]  \  }}| j                  ||   |«       Œ y )N))r½   Tr½   )r¾   Fr¾   )r¿   Fr¿   )r
   r´   r,   )r.   ÚdctÚrefrµ   r$   s        r%   Útest_storage_model_mismatchz.TestDictRefctTypes.test_storage_model_mismatchó  sO   € ô ‹fˆò
ˆó ˆAØˆC�ŠFð ô ˜c–N‰DˆAˆqØ×Ñ˜S ™V QÕ'ñ #r'   N)rˆ  r‰  rŠ  r&  r+  r5  rD  rN  rR  r\  r`  ri  r'   r%   r  r  )  s.   „ ò*ò<*ò:).òV 0òD "òD
òKó$(r'   r  c                   ó*   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestDictForbiddenTypesc                 ó´   — | j                  t        «      5 } |«        d d d «       t        j                  «      }| j	                  ||«       y # 1 sw Y   Œ1xY wr6   )rs   r   rö   r÷   rõ   )r.   r±  Úcallablerù   r  s        r%   Úassert_disallowz&TestDictForbiddenTypes.assert_disallow  sC   € Ø×Ñœ{Ô+¨vÙŒJ÷ ,ä�&×"Ñ"Ó#ˆØ�‰�f˜cÕ"÷ ,Ð+ús   –AÁAc                 ó’   ‡— dj                  ‰«      }| j                  |ˆfd„«       t        ˆfd„«       }| j                  ||«       y )Nz{} as key is forbiddenc                  óL   •— t        j                  ‰ t        j                  «      S r6   r9  ©Útys   €r%   Ú<lambda>z<TestDictForbiddenTypes.assert_disallow_key.<locals>.<lambda>  s   ø€ ¬$¯*©*°R¼¿¹Ô*Dr'   c                  óN   •— t        j                  ‰ t        j                  «       y r6   r9  rh  s   €r%   r&   z7TestDictForbiddenTypes.assert_disallow_key.<locals>.foo  s   ø€ ä�J‰J�rœ5Ÿ:™:Õ&r'   ©r–  re  r   ©r.   ri  r  r&   s    `  r%   Úassert_disallow_keyz*TestDictForbiddenTypes.assert_disallow_key  sF   ø€ Ø&×-Ñ-¨bÓ1ˆØ×Ñ˜SÓ"DÔEä	ó	'ó 
ð	'à×Ñ˜S #Õ&r'   c                 ó’   ‡— dj                  ‰«      }| j                  |ˆfd„«       t        ˆfd„«       }| j                  ||«       y )Nz{} as value is forbiddenc                  óL   •— t        j                  t        j                  ‰ «      S r6   r9  rh  s   €r%   rj  z>TestDictForbiddenTypes.assert_disallow_value.<locals>.<lambda>  s   ø€ ¬$¯*©*´U·Z±ZÀÔ*Dr'   c                  óN   •— t        j                  t        j                  ‰ «       y r6   r9  rh  s   €r%   r&   z9TestDictForbiddenTypes.assert_disallow_value.<locals>.foo  s   ø€ ä�J‰J”u—z‘z 2Õ&r'   rl  rm  s    `  r%   Úassert_disallow_valuez,TestDictForbiddenTypes.assert_disallow_value  sF   ø€ Ø(×/Ñ/°Ó3ˆØ×Ñ˜SÓ"DÔEä	ó	'ó 
ð	'à×Ñ˜S #Õ&r'   c                 óÌ   — | j                  t        j                  t        j                  «      «       | j	                  t        j                  t        j                  «      «       y r6   )rn  r   r   r:  rr  r�  s    r%   Útest_disallow_listz)TestDictForbiddenTypes.test_disallow_list  s8   € Ø× Ñ ¤§¡¬E¯J©JÓ!7Ô8Ø×"Ñ"¤5§:¡:¬e¯j©jÓ#9Õ:r'   c                 óÌ   — | j                  t        j                  t        j                  «      «       | j	                  t        j                  t        j                  «      «       y r6   )rn  r   ÚSetr:  rr  r�  s    r%   Útest_disallow_setz(TestDictForbiddenTypes.test_disallow_set!  s8   € Ø× Ñ ¤§¡¬5¯:©:Ó!6Ô7Ø×"Ñ"¤5§9¡9¬U¯Z©ZÓ#8Õ9r'   N)rˆ  r‰  rŠ  re  rn  rr  rt  rw  ri  r'   r%   rb  rb    s   „ ò#ò'ò'ò;ó:r'   rb  c                   ól   — 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d„ Zd„ Zd„ Zd„ Zy)ÚTestDictInferredc                 ó&  — t         d„ «       }d\  }} |«       }| j                  t        |«      ||i«       | j                  t        |«      j                  t        |«      «       | j                  t        |«      j
                  t        |«      «       y )Nc                  ó$   — t        «       } d| d<   | S )Nr!  r  râ  r|   s    r%   r&   z1TestDictInferred.test_simple_literal.<locals>.foo(  s   € ä“ˆAØˆAˆc‰FØˆHr'   r)  ©r   r,   rr   r	   r¾  r¿  ©r.   r&   rO   rP   r#   s        r%   Útest_simple_literalz$TestDictInferred.test_simple_literal'  sz   € Ü	ñ	ó 
ð	ð
 ‰ˆˆ1Ù‹EˆØ×Ñœ˜a› 1 a &Ô)Ø×Ñœ ›×+Ñ+¬V°A«YÔ7Ø×Ñœ ›×-Ñ-¬v°a«yÕ9r'   c                 ó*  — t         d„ «       }d\  }} |||«      }| j                  t        |«      ||i«       | j                  t        |«      j                  t        |«      «       | j                  t        |«      j
                  t        |«      «       y )Nc                 ó$   — t        «       }||| <   |S r6   râ  rç  s      r%   r&   z.TestDictInferred.test_simple_args.<locals>.foo5  ré  r'   r)  r|  r}  s        r%   Útest_simple_argsz!TestDictInferred.test_simple_args4  s~   € Ü	ñ	ó 
ð	ð
 ‰ˆˆ1Ù��1‹IˆØ×Ñœ˜a› 1 a &Ô)Ø×Ñœ ›×+Ñ+¬V°A«YÔ7Ø×Ñœ ›×-Ñ-¬v°a«yÕ9r'   c                 ó.  — t         d„ «       }d\  }}} ||||«      }| j                  t        |«      ||i«       | j                  t        |«      j                  t        |«      «       | j                  t        |«      j
                  t        |«      «       y )Nc                 ó.   — t        «       }||| <   ||| <   |S r6   râ  ©rO   rP   r4  r#   s       r%   r&   z0TestDictInferred.test_simple_upcast.<locals>.fooB  ó    € ä“ˆAØˆAˆa‰DØˆAˆa‰DØˆHr'   )r  çÍÌÌÌÌ@@r!  r|  )r.   r&   rO   rP   r4  r#   s         r%   Útest_simple_upcastz#TestDictInferred.test_simple_upcastA  s‚   € Ü	ñ	ó 
ð	ð !‰ˆˆ1ˆaÙ��1�a‹LˆØ×Ñœ˜a› 1 a &Ô)Ø×Ñœ ›×+Ñ+¬V°A«YÔ7Ø×Ñœ ›×-Ñ-¬v°a«yÕ9r'   c                 ó
  — t         d„ «       }d\  }}}| j                  t        «      5 } ||||«       d d d «       | j                  dj	                  t        |«      «      t        j                  «      «       y # 1 sw Y   ŒGxY w)Nc                 ó.   — t        «       }||| <   ||| <   |S r6   râ  r„  s       r%   r&   z9TestDictInferred.test_conflicting_value_type.<locals>.fooP  r…  r'   )r  r!  r†  ú cannot safely cast float64 to {}©r   rs   r   rõ   r–  r	   rö   r÷   )r.   r&   rO   rP   r4  rù   s         r%   Útest_conflicting_value_typez,TestDictInferred.test_conflicting_value_typeO  sv   € Ü	ñ	ó 
ð	ð !‰ˆˆ1ˆaØ×Ñœ{Ô+¨vÙ��1�aŒL÷ ,à�‰Ø.×5Ñ5´f¸Q³iÓ@Ü�× Ñ Ó!õ	
÷ ,Ð+úó   ¨A9Á9Bc                 ó
  — t         d„ «       }d\  }}}| j                  t        «      5 } ||||«       d d d «       | j                  dj	                  t        |«      «      t        j                  «      «       y # 1 sw Y   ŒGxY w)Nc                 ó.   — t        «       }||| <   |||<   |S r6   râ  )rO   ÚhrP   r#   s       r%   r&   z7TestDictInferred.test_conflicting_key_type.<locals>.foo`  r…  r'   )r  gfffffÆ^@r!  rŠ  r‹  )r.   r&   rO   r�  rP   rù   s         r%   Útest_conflicting_key_typez*TestDictInferred.test_conflicting_key_type_  sv   € Ü	ñ	ó 
ð	ð "‰ˆˆ1ˆaØ×Ñœ{Ô+¨vÙ��1�aŒL÷ ,à�‰Ø.×5Ñ5´f¸Q³iÓ@Ü�× Ñ Ó!õ	
÷ ,Ð+úr�  c                 óª  — t         d„ «       }t        j                  d«      t        j                  d«      f}t        j                  d«      t        j                  d«      f}t        j                  d«      }t        j                  d¬«      5 } ||||«      \  }}d d d «       | j                  t        «      d«       d}| j                  |t        |d   «      «       t        j                  «       «      }	| j                  |	d   d	«       | j                  |t        j                  d«      t        j                  d«      f   «       y # 1 sw Y   Œ°xY w)
Nc                 ó.   — t        «       }||| <   |||   fS r6   râ  )rD  r  rE  r#   s       r%   r&   z?TestDictInferred.test_conflict_key_type_non_number.<locals>.fooq  s   € ä“ˆAØˆAˆb‰EØ�a˜‘e�8ˆOr'   r   r)   r  T)Úrecordz:unsafe cast from UniTuple(int32 x 2) to UniTuple(int8 x 2)r   )r   r)   )r   r  rœ  r   r:  ÚwarningsÚcatch_warningsr,   r2   rõ   rö   r“   rM   )
r.   r&   rD  rE  r  r4  r#   Údk2r  rM   s
             r%   Ú!test_conflict_key_type_non_numberz2TestDictInferred.test_conflict_key_type_non_numbero  s  € ä	ñ	ó 
ð	ô �g‰g�a‹jœ"Ÿ'™' !›*Ð%ˆÜ�h‰h�q‹kœ2Ÿ8™8 A›;Ð'ˆÜ�W‰W�S‹\ˆä×$Ñ$¨DÕ1°QÙ˜˜R “_‰FˆAˆs÷ 2à×Ñœ˜Q› Ô#àJˆØ�‰�cœ3˜q ™t›9Ô%ä�A—F‘F“H‹~ˆØ×Ñ˜˜a™ &Ô)Ø×Ñ˜˜a¤§¡¨!£¬b¯h©h°q«kÐ :Ñ;Õ<÷ 2Ð1ús   ÂE	Å	Ec                 óÎ   — t         d„ «       }d\  }} |||«      }| j                  t        |«      ||i«       d\  }} |||«      }| j                  t        |«      d|dz   i«       y )Nc                 ó<   — t        «       }| r||| <   |S |dz   |d<   |S )Nr   é­Þ  râ  rç  s      r%   r&   z>TestDictInferred.test_ifelse_filled_both_branches.<locals>.fooˆ  s0   € ä“ˆAÙØ��!‘ð ˆHð  ™E��&‘	àˆHr'   r)  rg   r›  r   ©r   r,   rr   r}  s        r%   Ú test_ifelse_filled_both_branchesz1TestDictInferred.test_ifelse_filled_both_branches‡  sr   € Ü	ñ	ó 
ð	ð ‰ˆˆ1Ù��1‹IˆØ×Ñœ˜a› 1 a &Ô)Ø‰ˆˆ1Ù��1‹IˆØ×Ñœ˜a› 6¨1¨q©5 /Õ2r'   c                 ó|  — t         d„ «       }d\  }} |||«      }| j                  t        |«      ||i«       d\  }} |||«      }| j                  t        |«      i «       | j                  t        |«      j                  t        |«      «       | j                  t        |«      j
                  t        |«      «       y )Nc                 ó(   — t        «       }| r||| <   |S r6   râ  rç  s      r%   r&   z:TestDictInferred.test_ifelse_empty_one_branch.<locals>.fooš  s   € ä“ˆAÙØ��!‘àˆHr'   r)  rg   r|  r}  s        r%   Útest_ifelse_empty_one_branchz-TestDictInferred.test_ifelse_empty_one_branch™  s¦   € Ü	ñ	ó 
ð	ð ‰ˆˆ1Ù��1‹IˆØ×Ñœ˜a› 1 a &Ô)Ø‰ˆˆ1Ù��1‹IˆØ×Ñœ˜a› "Ô%Ø×Ñœ ›×+Ñ+¬V°A«YÔ7Ø×Ñœ ›×-Ñ-¬v°a«yÕ9r'   c           	      óÞ   — t         d„ «       }t        t        d«      «      }t        t        d„ |«      «      } |||«      }| j	                  t        |«      t        t        ||«      «      «       y )Nc                 óL   — t        «       }t        | |«      D ]
  \  }}|||<   Œ |S r6   rÒ  )ÚksÚvsr#   rO   rP   s        r%   r&   z'TestDictInferred.test_loop.<locals>.foo¬  s+   € ä“ˆAÜ˜B ž‘��1Ø��!’ð $àˆHr'   rX   c                 ó   — | dz   S )Nr*   ri  ©rµ   s    r%   rj  z,TestDictInferred.test_loop.<locals>.<lambda>´  s   €   S¢r'   )r   r“   r   Úmapr,   rr   rK   )r.   r&   r¤  r£  r#   s        r%   Ú	test_loopzTestDictInferred.test_loop«  s_   € Ü	ñ	ó 
ð	ô ”%˜“(‹^ˆÜ”#Ñ(¨"Ó-Ó.ˆÙ��B‹KˆØ×Ñœ˜a›¤$¤s¨2¨r£{Ó"3Õ4r'   c                 óÈ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                  ó   — t        «       } | S r6   râ  r|   s    r%   r&   z)TestDictInferred.test_unused.<locals>.foo¹  s   € ä“ˆAØˆHr'   zimprecise typerô   rø   s      r%   Útest_unusedzTestDictInferred.test_unused¸  sV   € Ü	ñ	ó 
ð	ð ×Ñœ{Ô+¨vÙŒE÷ ,à�‰ØÜ�× Ñ Ó!õ	
÷ ,Ð+úr	  c                 óL  — t         d„ «       } |d«      \  }}}| j                  |d«       | j                  |d«       | j                  t        |«      ddi«        |d«      \  }}}| j                  |d«       | j                  t        |«      i «       | j                  |d«       y )Nc                 ó�   — t        «       }t        |«      }|j                  «       D ]
  \  }}||z  }Œ | rd|d<   ||t        |«      fS ©Nr)   r   )r
   r2   r�   )Údefiner#   rJ  rO   rP   s        r%   r&   z3TestDictInferred.test_define_after_use.<locals>.fooÆ  sM   € ä“ˆAÜ�Q“ˆBØŸ™ž	‘��1Ø�a‘‘ð "ñ à��!‘Ø�qœ#˜a›&�=Ð r'   Tr   r   r)   Frœ  )r.   r&   rJ  r#   r"   s        r%   Útest_define_after_usez&TestDictInferred.test_define_after_useÅ  s    € Ü	ñ		!ó 
ð		!ñ �t“9‰ˆˆAˆqØ×Ñ˜˜QÔØ×Ñ˜˜AÔØ×Ñœ˜a› 1 a &Ô)á�u“:‰ˆˆAˆqØ×Ñ˜˜QÔØ×Ñœ˜a› "Ô%Ø×Ñ˜˜AÕr'   c           	      óš   — t         d„ «       }d\  }}} ||||«      }| j                  t        |«      ||dz   ||z   i||dz   ||z   ii«       y )Nc                 ó‚   — t        «       }t        «       }|| z   || dz   <   t        «       }||z   ||dz   <   ||| <   |||<   |S ©Nr   r)   râ  )rD  rE  rP   r#   Úz1Úz2s         r%   r&   z/TestDictInferred.test_dict_of_dict.<locals>.fooÝ  sP   € ä“ˆAÜ“ˆBØ˜R™ˆBˆr�A‰v‰JÜ“ˆBØ˜R™ˆBˆr�A‰v‰JØˆAˆb‰EØˆAˆb‰EØˆHr'   )r*   r¨  r!  r   r)   rœ  )r.   r&   rD  rE  rP   r#   s         r%   Útest_dict_of_dictz"TestDictInferred.test_dict_of_dictÜ  sl   € Ü	ñ	ó 
ð	ð "‰	ˆˆB�Ù��B˜‹NˆØ×ÑÜ�‹Gà�R˜!‘V˜R !™VÐ$Ø�R˜!‘V˜R !™VÐ$ðõ	
r'   c                 óf   — t         d„ «       }| j                   |«       |j                  «       «       y )Nc                  óF   — t        d«      D � ci c]  } | d| z  “Œ
 c} S c c} w )Nr>   r)   rÞ   )r$   s    r%   r&   z6TestDictInferred.test_comprehension_basic.<locals>.fooó  s&   € ä&+¨B¤iÓ0¡i �A�q˜1‘u‘H iÑ0Ð0ùÒ0s   Žrp  r-   s     r%   Útest_comprehension_basicz)TestDictInferred.test_comprehension_basicò  s.   € Ü	ñ	1ó 
ð	1ð 	×Ñ™› §¡£Õ.r'   c                 óf   — t         d„ «       }| j                   |«       |j                  «       «       y )Nc                  óˆ   — t        t        d«      t        ddd«      «      D � �ci c]  \  } }| t        |«      “Œ c}} S c c}} w )Nr>   r   r?   )rK   r   r°  )r$   r?  s     r%   r&   zATestDictInferred.test_comprehension_basic_mixed_type.<locals>.fooú  s<   € ä,/´°b³	¼5ÀÀQÈÓ;KÔ,LÔMÑ,L¡D A q�A”u˜Q“x‘KÐ,LÒMÐMùÓMs   ¤>rp  r-   s     r%   Ú#test_comprehension_basic_mixed_typez4TestDictInferred.test_comprehension_basic_mixed_typeù  s0   € Ü	ñ	Nó 
ð	Nð 	×Ñ™› §¡£Õ.r'   c                 óf   — t         d„ «       }| j                   |«       |j                  «       «       y )Nc                  óX   — ddddœ} t        d«      D �ci c]  }d|z   | |   “Œ c}S c c}w )NÚAÚBÚCrÙ  rF   rÞ   ©r½   r$   s     r%   r&   z9TestDictInferred.test_comprehension_involved.<locals>.foo  s6   € à˜C CÑ(ˆAÜ).¨q¬Ó2© A�A˜‘E˜1˜Q™4‘K¨Ñ2Ð2ùÒ2ó   ”'rp  r-   s     r%   Útest_comprehension_involvedz,TestDictInferred.test_comprehension_involved   s.   € Ü	ñ	3ó 
ð	3ð 	×Ñ™› §¡£Õ.r'   c                 óÌ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       t        j                  «      }| j                  d|«       y # 1 sw Y   Œ1xY w)Nc                  óX   — ddddœ} t        d«      D �ci c]  }d|z   | |   “Œ c}S c c}w )Nr¿  rÀ  rð   rÙ  rF   rÞ   rÂ  s     r%   r&   z@TestDictInferred.test_comprehension_fail_mixed_type.<locals>.foo	  s6   € à˜C BÑ'ˆAÜ).¨q¬Ó2© A�A˜‘E˜1˜Q™4‘K¨Ñ2Ð2ùÒ2rÃ  z&Cannot cast complex128 to unicode_type)r   rs   r   rö   r÷   rõ   )r.   r&   ra  Úexcstrs       r%   Ú"test_comprehension_fail_mixed_typez3TestDictInferred.test_comprehension_fail_mixed_type  sX   € Ü	ñ	3ó 
ð	3ð ×Ñœ{Ô+¨qÙŒE÷ ,ô �Q—[‘[Ó!ˆØ�‰Ð>ÀÕG÷	 ,Ð+úó   ¢AÁA#N)rˆ  r‰  rŠ  r~  r�  r‡  rŒ  r‘  r˜  r�  r   r¨  r«  r°  r¶  r¹  r¼  rÄ  rÈ  ri  r'   r%   ry  ry  &  sS   „ ò:ò:ò:ò
ò 
ò =ò03ò$:ò$5ò
òò.
ò,/ò/ò/ó
Hr'   ry  c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚTestNonCompiledInferc                 ó:  — t        «       }| j                  |j                  «       | j                  t	        |«      d«       | j                  t        |«      t        i «      «       | j                  t        t        |«      «      g «       | j                  t        «      5 }|d    d d d «       | j                  t        j                  «      t        t        d«      «      «       | j                  t        «      5 }|d= d d d «       | j                  t        |j                  «      t        t        d«      «      «       | j                  t        «      5  |j                  d«       d d d «       | j                  t        |j                  «      t        t        d«      «      «       | j                  |j                  dd «      d «       | j                  |j                  d«      d «       | j                  t        «      5 }|j                  «        d d d «       | j                  t        |j                  «      t        t        d«      «      «       | j                  t        «      5 }|j!                  d«       d d d «       | j                  t        |j                  «      t        t        d«      «      «       | j                  d|v «       | j                  |j                  «       y # 1 sw Y   �Œ<xY w# 1 sw Y   �ŒñxY w# 1 sw Y   �Œ˜xY w# 1 sw Y   ŒüxY w# 1 sw Y   Œ¢xY w)Nr   r   zdictionary is emptyz'invalid operation on untyped dictionary)r
   rÕ   Ú_typedr,   r2   rö   r“   Úiterrs   r\   r÷   rx   ÚassertIsr8   rb   Ú	TypeErrorr¼   )r.   r#   rù   s      r%   Útest_check_untyped_dict_opsz0TestNonCompiledInfer.test_check_untyped_dict_ops  s5  € ä‹FˆØ×Ñ˜Ÿ™Ô"Ø×Ñœ˜Q› Ô#Ø×Ñœ˜Q›¤ R£Ô)Ø×Ñœœd 1›g›¨Ô+à×ÑœxÔ(¨FØˆaŠD÷ )à×Ñœ˜V×-Ñ-Ó.´´H¸Q³KÓ0@ÔAà×ÑœxÔ(¨FØ�!�÷ )à×Ñœ˜V×-Ñ-Ó.´´H¸Q³KÓ0@ÔAà×ÑœxÕ(Ø�E‰E�!ŒH÷ )à×Ñœ˜V×-Ñ-Ó.´´H¸Q³KÓ0@ÔAà�‰�a—e‘e˜A˜t“n dÔ+à�‰�a—e‘e˜A“h Ô%à×ÑœxÔ(¨FØ�I‰IŒK÷ )à×Ñœ˜V×-Ñ-Ó.ÜœXÐ&;Ó<Ó=ô	?ð ×ÑœyÔ)¨VØ�L‰L˜ŒO÷ *à×ÑÜ�× Ñ Ó!Ü”	ÐCÓDÓEô	
ð
 	×Ñ˜˜a˜Ô à×Ñ˜Ÿ™Õ"÷= )Ñ(ú÷ )Ñ(ú÷ )Ñ(ú÷ )Ð(ú÷
 *Ð)ús<   ÂKÃ8K+ÅK8Ç9LÉLËK(Ë+K5Ë8LÌLÌLc                 ó‚   — t        «       }d|d<   | j                  |j                  «       | j                  |d   d«       y r®  )r
   rÔ   rÍ  r,   rÁ  s     r%   Útest_getitemz!TestNonCompiledInfer.test_getitem>  s6   € ä‹FˆØˆˆ!‰à�‰˜Ÿ™Ô!Ø×Ñ˜˜1™˜qÕ!r'   c                 óœ   — t        «       }|j                  dd«       | j                  |j                  «       | j	                  |d   d«       y r³  )r
   r¼   rÔ   rÍ  r,   rÁ  s     r%   Útest_setdefaultz$TestNonCompiledInfer.test_setdefaultF  s;   € ä‹FˆØ	�‰�Q˜Ôà�‰˜Ÿ™Ô!Ø×Ñ˜˜1™˜qÕ!r'   N)rˆ  r‰  rŠ  rÑ  rÓ  rÕ  ri  r'   r%   rË  rË    s   „ ò&#òP"ó"r'   rË  r½   )Úspecc                   ó   — e Zd Zd„ Zd„ Zy)ÚBagc                 ó   — || _         y r6   ©r½   )r.   r½   s     r%   Ú__init__zBag.__init__Q  s	   € Øˆ�r'   c                 ó,   — t        | j                  «      S r6   )r  r½   r�  s    r%   Ú__hash__zBag.__hash__T  s   € Ü�D—F‘F‹|Ðr'   N)rˆ  r‰  rŠ  rÛ  rÝ  ri  r'   r%   rØ  rØ  O  s   „ òór'   rØ  c                   ó   — e Zd Zd„ Zy)ÚTestDictWithJitclassc                 ó¼   — t         d„ «       } |t        d¬«      «      }| j                  |d   j                  d«       | j                  |d   j                  d«       y )Nc                 ó@   — t        «       }| |d<   t        d«      |d<   |S )Nr   ée   r   )r
   rØ  )rµ   r#   s     r%   r&   z8TestDictWithJitclass.test_jitclass_as_value.<locals>.fooZ  s$   € ä“ˆAØˆAˆa‰DÜ�s“8ˆAˆa‰DØˆHr'   r*   rÚ  r   r   râ  )r   rØ  r,   r½   )r.   r&   r#   s      r%   Útest_jitclass_as_valuez+TestDictWithJitclass.test_jitclass_as_valueY  sS   € Ü	ñ	ó 
ð	ñ ”�c”
‹OˆØ×Ñ˜˜1™Ÿ™ Ô%Ø×Ñ˜˜1™Ÿ™ Õ%r'   N)rˆ  r‰  rŠ  rã  ri  r'   r%   rß  rß  X  s   „ ó
&r'   rß  c                   ó"   — e Zd ZdZd„ Zd„ Zd„ Zy)Ú	TestNoJitz0Exercise dictionary creation with JIT disabled. c                 óþ   — t        dd«      5  t        «       5  t        j                  t        t
        «      }| j                  t        |«      t        «       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w©NÚDISABLE_JITT)	r   r   r   r   r   r   r,   Útyperr   rÁ  s     r%   Ú&test_dict_create_no_jit_using_new_dictz0TestNoJit.test_dict_create_no_jit_using_new_dicti  sU   € Ü˜]¨DÕ1ÜÕ!Ü×'Ñ'¬¬wÓ7�Ø× Ñ ¤ a£¬$Ô/÷ "÷ 2Ð1ß!Ð!ú÷ 2Ð1ús"   �A3˜>A'ÁA3Á'A0	Á,A3Á3A<c                 óÖ   — t        dd«      5  t        «       5  t        «       }| j                  t	        |«      t
        «       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY wrç  )r   r   r
   r,   ré  rr   rÁ  s     r%   Ú"test_dict_create_no_jit_using_Dictz,TestNoJit.test_dict_create_no_jit_using_Dicto  sJ   € Ü˜]¨DÕ1ÜÕ!Ü“F�Ø× Ñ ¤ a£¬$Ô/÷ "÷ 2Ð1ß!Ð!ú÷ 2Ð1ús"   �A˜*AÁAÁA	ÁAÁA(c                 ó&  — t        dd«      5  t        «       5  t        j                  t        j
                  t        j                  «      }| j                  t        |«      t        «       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY wrç  )
r   r   r
   r©  r   r   r   r,   ré  rr   rÁ  s     r%   Ú#test_dict_create_no_jit_using_emptyz-TestNoJit.test_dict_create_no_jit_using_emptyu  s[   € Ü˜]¨DÕ1ÜÕ!Ü—J‘JœuŸ{™{¬E¯M©MÓ:�Ø× Ñ ¤ a£¬$Ô/÷ "÷ 2Ð1ß!Ð!ú÷ 2Ð1ús#   �B˜AA;Á*BÁ;B	Â BÂBN)rˆ  r‰  rŠ  Ú__doc__rê  rì  rî  ri  r'   r%   rå  rå  f  s   „ Ù:ò0ò0ó0r'   rå  c                   ó   — e Zd Zd„ Zy)ÚTestDictIteratorc                 ó  — t         d„ «       }t         d„ «       } |«       } |«       }| j                  g d¢|d   «       | j                  g d¢|d   «       | j                  g d¢|d   «       | j                  g d¢|d   «       y )	Nc                  óê   — t        j                  t        j                  t        j                  ¬«      } d| d<   d| d<   d| d<   t	        | j                  «       «      t	        | j                  «       «      fS )Nr½  r>   r   ro   r   rp   r)   ©r
   r©  r   r:  r“   rM   r    ©rK  s    r%   Úfun1z1TestDictIterator.test_dict_iterator.<locals>.fun1~  óX   € ä—‘¤U§Z¡ZÜ',§z¡zô3ˆBàˆBˆq‰EØˆBˆq‰EØˆBˆq‰Eä˜Ÿ™›	“?¤D¨¯©«Ó$5Ð5Ð5r'   c                  óê   — t        j                  t        j                  t        j                  ¬«      } d| d<   d| d<   d| d<   t	        | j                  «       «      t	        | j                  «       «      fS )Nr½  éM   rX   éX   r<   éc   r„  rô  rõ  s    r%   Úfun2z1TestDictIterator.test_dict_iterator.<locals>.fun2ˆ  r÷  r'   rÙ  r   rn   r   )rX   r<   r„  )rù  rú  rû  r+   )r.   rö  rü  Úres1Úres2s        r%   Útest_dict_iteratorz#TestDictIterator.test_dict_iterator}  sˆ   € Ü	ñ	6ó 
ð	6ô 
ñ	6ó 
ð	6ñ ‹vˆÙ‹vˆà×Ñš $ q¡'Ô*Ø×Ñš T¨!¡WÔ-Ø×Ñš $ q¡'Ô*Ø×Ñš T¨!¡WÕ-r'   N)rˆ  r‰  rŠ  rÿ  ri  r'   r%   rñ  rñ  |  s   „ ó.r'   rñ  c                   ó4   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	y)	ÚTestTypedDictInitialValueszBTests that typed dictionaries carry their initial value if presentc                 ó^   ‡ ‡— d„ Št        ‰«      ˆ fd„«       }t        ˆfd„«       } |«        y )Nc                  ó   — y r6   ri  r|   s    r%   rj  zDTestTypedDictInitialValues.test_homogeneous_and_literal.<locals>.barž  ó   € Ør'   c                 óò   •— | j                   €d„ S ‰j                  t        | t        j                  «      «       ‰j                  | j                   ddddœ«       ‰j                  t        | d«      d«       d„ S )	Nc                 ó   — t        | «      S r6   ©r   r|   s    r%   rj  zYTestTypedDictInitialValues.test_homogeneous_and_literal.<locals>.ol_bar.<locals>.<lambda>¤  ó   € ¤¨1¤r'   r   r)   rF   rÜ  Úliteral_valueFc                 ó   — | S r6   ri  r|   s    r%   rj  zYTestTypedDictInitialValues.test_homogeneous_and_literal.<locals>.ol_bar.<locals>.<lambda>¨  ó   € ™Qr'   )Úinitial_valuerÔ   Ú
isinstancer   ré   r,   Úhasattr©r#   r.   s    €r%   Úol_barzGTestTypedDictInitialValues.test_homogeneous_and_literal.<locals>.ol_bar¡  sb   ø€ à�‰Ð&Ù-Ð-Ø�O‰OœJ q¬%¯.©.Ó9Ô:Ø×Ñ˜QŸ_™_°A¸AÀAÑ.FÔGØ×ÑœW Q¨Ó8¸%Ô@ÙÐr'   c                  ó"   •— ddddœ}  ‰| «       y )Nr   r)   rF   rÜ  ri  ©rµ   rj  s    €r%   r&   zDTestTypedDictInitialValues.test_homogeneous_and_literal.<locals>.fooª  s   ø€ ð ˜a aÑ(ˆAÙ��Fr'   ©r   r   ©r.   r  r&   rj  s   `  @r%   Útest_homogeneous_and_literalz7TestTypedDictInitialValues.test_homogeneous_and_literal�  s;   ù€ ò	ô 
�#‹ó	ó 
ð	ô 
ó	ó 
ð	ñ
 	�r'   c                 ó^   ‡ ‡— d„ Št        ‰«      ˆ fd„«       }t        ˆfd„«       } |«        y )Nc                  ó   — y r6   ri  r|   s    r%   rj  zVTestTypedDictInitialValues.test_heterogeneous_but_castable_to_homogeneous.<locals>.bar³  r  r'   c                 óÌ   •— ‰j                  t        | t        j                  «      «       ‰j	                  | j
                  d «       ‰j	                  t        | d«      d«       d„ S )Nr	  Fc                 ó   — | S r6   ri  r|   s    r%   rj  zkTestTypedDictInitialValues.test_heterogeneous_but_castable_to_homogeneous.<locals>.ol_bar.<locals>.<lambda>»  r  r'   )rÔ   r  r   ré   r,   r  r  r  s    €r%   r  zYTestTypedDictInitialValues.test_heterogeneous_but_castable_to_homogeneous.<locals>.ol_bar¶  sK   ø€ à�O‰OœJ q¬%¯.©.Ó9Ô:Ø×Ñ˜QŸ_™_¨dÔ3Ø×ÑœW Q¨Ó8¸%Ô@ÙÐr'   c                  ó"   •— ddddœ}  ‰| «       y )Nrð   r)   rF   rÜ  ri  r  s    €r%   r&   zVTestTypedDictInitialValues.test_heterogeneous_but_castable_to_homogeneous.<locals>.foo½  s   ø€ ð ˜q qÑ)ˆAÙ��Fr'   r  r  s   `  @r%   Ú.test_heterogeneous_but_castable_to_homogeneouszITestTypedDictInitialValues.test_heterogeneous_but_castable_to_homogeneous²  s;   ù€ ò	ô 
�#‹ó	ó 
ð	ô 
ó	ó 
ð	ñ 	�r'   c                 ó^   ‡ ‡— d„ Št        ‰«      ˆ fd„«       }t        ˆfd„«       } |«        y )Nc                  ó   — y r6   ri  r|   s    r%   rj  zZTestTypedDictInitialValues.test_heterogeneous_but_not_castable_to_homogeneous.<locals>.barÉ  r  r'   c                 ób  •— ddddœ}d„ }|j                  «       D ��ci c]!  \  }}t        j                  |«       ||«      “Œ# }}}‰j                  t	        | t        j
                  «      «       ‰j                  | j                  |«       ‰j                  t        | d«      d«       d„ S c c}}w )	Nr   ù               @rF   rÜ  c                 ól   — t        j                  | «      rt        j                  | «      S t        | «      S r6   )r   Úmaybe_literalÚliteralr	   ©rò   s    r%   Úspecific_tyzrTestTypedDictInitialValues.test_heterogeneous_but_not_castable_to_homogeneous.<locals>.ol_bar.<locals>.specific_tyÐ  s'   € Ü+0×+>Ñ+>¸qÔ+A”u—}‘} QÓ'ÐPÄvÈaÃyÐPr'   r  Fc                 ó   — | S r6   ri  r|   s    r%   rj  zoTestTypedDictInitialValues.test_heterogeneous_but_not_castable_to_homogeneous.<locals>.ol_bar.<locals>.<lambda>Ö  r  r'   )	r�   r   r"  rÔ   r  ÚLiteralStrKeyDictr,   r	  r  )r#   r½   r$  rµ   r  rì   r.   s         €r%   r  z]TestTypedDictInitialValues.test_heterogeneous_but_not_castable_to_homogeneous.<locals>.ol_barÌ  s•   ø€ à˜b qÑ)ˆAòQàEFÇWÁWÄYÔOÁY¹T¸QÀœŸ™ aÓ(©+°a«.Ñ8ÀYˆHÑOØ�O‰OœJ q¬%×*AÑ*AÓBÔCØ×Ñ˜QŸ_™_¨hÔ7Ø×ÑœW Q¨Ó8¸%Ô@ÙÐùó	 Ps   ž&B+c                  ó"   •— ddddœ}  ‰| «       y )Nr   r  rF   rÜ  ri  r  s    €r%   r&   zZTestTypedDictInitialValues.test_heterogeneous_but_not_castable_to_homogeneous.<locals>.fooØ  s   ø€ ð ˜b qÑ)ˆAÙ��Fr'   r  r  s   `  @r%   Ú2test_heterogeneous_but_not_castable_to_homogeneouszMTestTypedDictInitialValues.test_heterogeneous_but_not_castable_to_homogeneousÈ  s;   ù€ ò	ô 
�#‹ó		ó 
ð		ô 
ó	ó 
ð	ñ 	�r'   c                 ó^   ‡ ‡— d„ Št        ‰«      ˆ fd„«       }t        ˆfd„«       } |«        y )Nc                  ó   — y r6   ri  r|   s    r%   rj  zATestTypedDictInitialValues.test_mutation_not_carried.<locals>.barä  r  r'   c                 óº   •— | j                   €d„ S ‰j                  t        | t        j                  «      «       ‰j                  | j                   ddddœ«       d„ S )Nc                 ó   — t        | «      S r6   r  r|   s    r%   rj  zVTestTypedDictInitialValues.test_mutation_not_carried.<locals>.ol_bar.<locals>.<lambda>ê  r  r'   r   r)   rF   rÜ  c                 ó   — | S r6   ri  r|   s    r%   rj  zVTestTypedDictInitialValues.test_mutation_not_carried.<locals>.ol_bar.<locals>.<lambda>í  r  r'   )r  rÔ   r  r   ré   r,   r  s    €r%   r  zDTestTypedDictInitialValues.test_mutation_not_carried.<locals>.ol_barç  sK   ø€ à�‰Ð&Ù-Ð-Ø�O‰OœJ q¬%¯.©.Ó9Ô:Ø×Ñ˜QŸ_™_°A¸AÀAÑ.FÔGÙÐr'   c                  ó,   •— ddddœ} d| d<    ‰| «       y ©Nr   r)   rF   rÜ  rX   r#   ri  r  s    €r%   r&   zATestTypedDictInitialValues.test_mutation_not_carried.<locals>.fooï  s!   ø€ ð ˜a aÑ(ˆAØˆAˆc‰FÙ��Fr'   r  r  s   `  @r%   Útest_mutation_not_carriedz4TestTypedDictInitialValues.test_mutation_not_carriedã  s;   ù€ ò	ô 
�#‹ó	ó 
ð	ô 
ó	ó 
ð	ñ 	�r'   c                 ó  ‡‡‡— t         d„ «       }|d ft        ddddœffD ]k  \  Š}t         d„ «       Šd„ Št        ‰«      ˆˆfd„«       }t         ˆfd	„«       } |«        ‰j                  d
   d
   }| j	                  |j
                  |«       Œm y )Nc                   ó   — y r6   ri  )rö  s    r%   ÚnopzQTestTypedDictInitialValues.test_mutation_not_carried_single_function.<locals>.nopü  s   € àr'   r   r)   rF   rÜ  c                  ó   — y r6   ri  r¦  s    r%   ÚbazzQTestTypedDictInitialValues.test_mutation_not_carried_single_function.<locals>.baz  s   € àr'   c                  ó   — y r6   ri  r#  s    r%   rj  zQTestTypedDictInitialValues.test_mutation_not_carried_single_function.<locals>.bar  ó   € Ør'   c                 ó   •— ˆˆfd„}|S )Nc                 ó&   •—  ‰| «        ‰| «       y r6   ri  )rò   r5  Úfns    €€r%   ÚimplzbTestTypedDictInitialValues.test_mutation_not_carried_single_function.<locals>.ol_bar.<locals>.impl
  s   ø€ Ù�q”EÙ˜•Fr'   ri  )rò   r;  r5  r:  s     €€r%   r  zTTestTypedDictInitialValues.test_mutation_not_carried_single_function.<locals>.ol_bar  s   ø€ õð �r'   c                  ó.   •— ddddœ}  ‰| «       d| d<   | S r/  ri  r  s    €r%   r&   zQTestTypedDictInitialValues.test_mutation_not_carried_single_function.<locals>.foo  s$   ø€ à !¨!Ñ,�Ù�A”Ø��#‘Ø�r'   r   )r   r   r   Ú
signaturesr,   r  )	r.   r3  Úivr  r&   Úlargrj  r5  r:  s	         @@@r%   Ú)test_mutation_not_carried_single_functionzDTestTypedDictInitialValues.test_mutation_not_carried_single_functionù  s²   ú€ ô 
ñ	ó 
ð	ð ˜D�k¤I°Q¸QÀQÑ/GÐ#HÓH‰FˆB�Üñó ðòô �c‹]ôó ðô óó ðñ ŒEð —>‘> !Ñ$ QÑ'ˆDØ×Ñ˜T×/Ñ/°Õ4ñ5 Ir'   c                 óÖ   ‡— t         d„ «       Št         ˆfd„«       }t        «       }d|d<   t        «       }d|d<   | j                   |d«      |«       | j                   |d«      |«       y )	Nc                 ó   — ddi}| rddi}|S )Nr   r)   rF   ri  )rµ   Úos     r%   rj  zGTestTypedDictInitialValues.test_unify_across_function_call.<locals>.bar  s   € à�A�ˆAÙØ˜�F�ØˆHr'   c                 ó(   •— | rddi}|S  ‰| «      }|S )NrF   rX   ri  )rµ   r#   rj  s     €r%   r&   zGTestTypedDictInitialValues.test_unify_across_function_call.<locals>.foo%  s&   ø€ áØ˜�F�ð ˆHñ ˜“F�ØˆHr'   rX   rF   r)   r   TF)r   r
   r,   )r.   r&   Úe1Úe2rj  s       @r%   Útest_unify_across_function_callz:TestTypedDictInitialValues.test_unify_across_function_call  ss   ø€ ä	ñ	ó 
ð	ô 
ó	ó 
ð	ô ‹VˆØˆˆ1‰Ü‹VˆØˆˆ1‰Ø×Ñ™˜T› BÔ'Ø×Ñ™˜U› RÕ(r'   N)
rˆ  r‰  rŠ  rï  r  r  r(  r0  r@  rG  ri  r'   r%   r  r  š  s$   „ ÙLòò*ò,ò6ò,!5óF)r'   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d„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestLiteralStrKeyDictzB Tests for dictionaries with string keys that can map to anything!c                 óJ   — t         d„ «       }| j                   |«       d«       y )Nc                  ó*   — ddddœ} | d   | d   | d   fS )Nr   r  r#   rÜ  r½   r¾   r¿   ri  ©Úlds    r%   r&   zCTestLiteralStrKeyDict.test_basic_const_lowering_boxing.<locals>.foo9  s'   € à˜r¨Ñ,ˆBØ�s‘G˜R ™W b¨¡gÐ.Ð.r'   )r   r  r#   r+   r-   s     r%   Ú test_basic_const_lowering_boxingz6TestLiteralStrKeyDict.test_basic_const_lowering_boxing8  s(   € Ü	ñ	/ó 
ð	/ð 	×Ñ™› Õ-r'   c                 óx   — t         d„ «       }| j                   |d«      «       | j                   |d«      «       y )Nc                 ó6   — | dz   }|dkD  rdnd}ddd|dœ}|d	   S )
Nr<   r)   TFr   r  r#   )r½   r¾   r¿   Ú	non_constrQ  ri  )rµ   r  ra  rM  s       r%   r&   z?TestLiteralStrKeyDict.test_basic_nonconst_in_scope.<locals>.fooA  s0   € à�A‘ˆAØ˜Aš‘ 5ˆAØ˜r¨¸!Ñ<ˆBØ�k‘?Ð"r'   é"   éœÿÿÿrÓ   r-   s     r%   Útest_basic_nonconst_in_scopez2TestLiteralStrKeyDict.test_basic_nonconst_in_scope@  s8   € Ü	ñ	#ó 
ð	#ð 	�‰™˜B›Ô Ø×Ñ™˜T›Õ#r'   c                 óf   ‡ ‡‡— dŠd„ Št        ‰«      ˆ fd„«       }t        ˆˆfd„«       } |«        y )Nr<   c                  ó   — y r6   ri  r¦  s    r%   rj  z>TestLiteralStrKeyDict.test_basic_nonconst_freevar.<locals>.barQ  ó   € Ør'   c                 ór  •— ‰j                  | j                  t        j                  d«      t        j                  d«      t        j                  d«      t	        d«      t        j                  d«      t        j                  d«      t        j                  d«      t        j                  d«      i«       d„ }|S )	Nr½   r   r¾   r  r¿   r#   r<   c                  ó   — y r6   ri  r¦  s    r%   r;  zOTestLiteralStrKeyDict.test_basic_nonconst_freevar.<locals>.ol_bar.<locals>.impl\  r7  r'   ©r,   r	  r   r"  r	   ©rµ   r;  r.   s     €r%   r  zATestLiteralStrKeyDict.test_basic_nonconst_freevar.<locals>.ol_barT  s   ø€ à×Ñ˜QŸ_™_Ü#Ÿm™m¨CÓ0´%·-±-ÀÓ2BÜ#Ÿm™m¨CÓ0´&¸³*Ü#Ÿm™m¨CÓ0´%·-±-ÀÓ2DÜ#Ÿm™m¨CÓ0´%·-±-ÀÓ2BðDôEòàˆKr'   c                  ó$   •— ddd‰dœ}  ‰| «       y )Nr   r  r#   ©r½   r¾   r¿   r#   ri  )rM  rj  ra  s    €€r%   r&   z>TestLiteralStrKeyDict.test_basic_nonconst_freevar.<locals>.foo`  s   ø€ à˜r¨°!Ñ4ˆBÙ��Gr'   r  )r.   r  r&   rj  ra  s   `  @@r%   Útest_basic_nonconst_freevarz1TestLiteralStrKeyDict.test_basic_nonconst_freevarN  s@   ú€ Øˆò	ô 
�#‹ó		ó 
ð		ô 
ô	ó 
ð	ñ 	�r'   c                 ó^   ‡ ‡— d„ Št        ‰«      ˆ fd„«       }t        ˆfd„«       } |«        y )Nc                  ó   — y r6   ri  r¦  s    r%   rj  z5TestLiteralStrKeyDict.test_literal_value.<locals>.bari  rW  r'   c                 ó"  •— ‰j                  | j                  t        j                  d«      t        j                  d«      t        j                  d«      t	        d«      t        j                  d«      t        j                  d«      i«       d„ }|S )Nr½   r   r¾   r  r¿   r#   c                  ó   — y r6   ri  r¦  s    r%   r;  zFTestLiteralStrKeyDict.test_literal_value.<locals>.ol_bar.<locals>.impls  r7  r'   rZ  r[  s     €r%   r  z8TestLiteralStrKeyDict.test_literal_value.<locals>.ol_barl  sh   ø€ à×Ñ˜QŸ_™_Ü#Ÿm™m¨CÓ0´%·-±-ÀÓ2BÜ#Ÿm™m¨CÓ0´&¸³*Ü#Ÿm™m¨CÓ0´%·-±-ÀÓ2DðFôGò
àˆKr'   c                  ó"   •— ddddœ}  ‰| «       y ©Nr   r  r#   rÜ  ri  ©rM  rj  s    €r%   r&   z5TestLiteralStrKeyDict.test_literal_value.<locals>.foow  s   ø€ à˜r¨Ñ,ˆBÙ��Gr'   r  r  s   `  @r%   Útest_literal_valuez(TestLiteralStrKeyDict.test_literal_valueg  s;   ù€ ò	ô 
�#‹ó	ó 
ð	ô 
ó	ó 
ð	ñ 	�r'   c                 ó^   ‡ ‡— d„ Št        ‰«      ˆ fd„«       }t        ˆfd„«       } |«        y )Nc                  ó   — y r6   ri  r¦  s    r%   rj  z?TestLiteralStrKeyDict.test_list_and_array_as_value.<locals>.bar€  rW  r'   c                 ól  •— ‰j                  | j                  t        j                  d«      t        j                  d«      t        j                  d«      t        j                  t        j
                  g d¢¬«      t        j                  d«      t        t        j                  d«      «      i«       d„ }|S )	Nr½   r   r¾   rQ   )r  r¿   r<   c                  ó   — y r6   ri  r¦  s    r%   r;  zPTestLiteralStrKeyDict.test_list_and_array_as_value.<locals>.ol_bar.<locals>.impl‹  r7  r'   )	r,   r	  r   r"  r   r:  r	   r  Úzerosr[  s     €r%   r  zBTestLiteralStrKeyDict.test_list_and_array_as_value.<locals>.ol_barƒ  sx   ø€ à×Ñ˜QŸ_™_Ü#Ÿm™m¨CÓ0´%·-±-ÀÓ2BÜ#Ÿm™m¨CÓ0Ü#Ÿj™j¬¯©Â7ÔKÜ#Ÿm™m¨CÓ0´&¼¿¹À!»Ó2EðGôHòàˆKr'   c                  óP   •— g d¢} d| t        j                  d«      dœ} ‰|«       y )NrQ   r   r<   rÜ  ©r  rk  )r¾   rM  rj  s     €r%   r&   z?TestLiteralStrKeyDict.test_list_and_array_as_value.<locals>.foo�  s#   ø€ âˆAØ˜q¤r§x¡x°£{Ñ3ˆBÙ��Gr'   r  r  s   `  @r%   Útest_list_and_array_as_valuez2TestLiteralStrKeyDict.test_list_and_array_as_value~  s;   ù€ ò	ô 
�#‹ó		ó 
ð		ô 
ó	ó 
ð	ñ
 	�r'   c                 ó^   ‡ ‡— d„ Št        ‰«      ˆ fd„«       }t        ˆfd„«       } |«        y )Nc                  ó   — y r6   ri  r¦  s    r%   rj  zBTestLiteralStrKeyDict.test_repeated_key_literal_value.<locals>.bar™  rW  r'   c                 ó"  •— ‰j                  | j                  t        j                  d«      t        j                  d«      t        j                  d«      t	        d«      t        j                  d«      t        j                  d«      i«       d„ }|S )Nr½   Úaaaar¾   r  r¿   r#   c                  ó   — y r6   ri  r¦  s    r%   r;  zSTestLiteralStrKeyDict.test_repeated_key_literal_value.<locals>.ol_bar.<locals>.impl¤  r7  r'   rZ  r[  s     €r%   r  zETestLiteralStrKeyDict.test_repeated_key_literal_value.<locals>.ol_barœ  sj   ø€ ð ×Ñ˜QŸ_™_Ü#Ÿm™m¨CÓ0´%·-±-ÀÓ2GÜ#Ÿm™m¨CÓ0´&¸³*Ü#Ÿm™m¨CÓ0´%·-±-ÀÓ2DðFôGò
àˆKr'   c                  ó&   •— ddddddœ}  ‰| «       y )Nr   r>   r  r#   rr  )r½   r½   r¾   r¿   r½   ri  re  s    €r%   r&   zBTestLiteralStrKeyDict.test_repeated_key_literal_value.<locals>.foo¨  s   ø€ à˜r¨°¸6ÑBˆBÙ��Gr'   r  r  s   `  @r%   Útest_repeated_key_literal_valuez5TestLiteralStrKeyDict.test_repeated_key_literal_value—  s;   ù€ ò	ô 
�#‹ó		ó 
ð		ô 
ó	ó 
ð	ñ 	�r'   c                 óà   — d„ }d„ }d„ }d„ }||||f}|D ]K  }| j                  |j                  «      5  | j                   t        |«      «        |«       «       d d d «       ŒM y # 1 sw Y   ŒXxY w)Nc                  ó$   — ddddœ} t        | «      S rd  )r2   rL  s    r%   Ú_lenz2TestLiteralStrKeyDict.test_read_only.<locals>._len±  s   € Ø˜r¨Ñ,ˆBÜ�r“7ˆNr'   c                  ó   — ddddœ} | d   S )Nr   r  r#   rÜ  r¾   ri  rL  s    r%   Ústatic_getitemz<TestLiteralStrKeyDict.test_read_only.<locals>.static_getitemµ  s   € Ø˜r¨Ñ,ˆBØ�c‘7ˆNr'   c                  ó   — ddddœ} d| v d| v fS )Nr   r  r#   rÜ  r¾   rb  ri  rL  s    r%   Úcontainsz6TestLiteralStrKeyDict.test_read_only.<locals>.contains¹  s!   € Ø˜r¨Ñ,ˆBØ˜"�9˜c R˜iÐ'Ð'r'   c                  ó8   — ddddœ} | j                  «       }| |k(  S rd  )r³   )rM  Únews     r%   r³   z2TestLiteralStrKeyDict.test_read_only.<locals>.copy½  s#   € Ø˜r¨Ñ,ˆBØ—'‘'“)ˆCØ˜‘9Ðr'   )ÚsubTestrˆ  r§   r   )r.   rx  rz  r|  r³   ÚrdonlysÚtests          r%   Útest_read_onlyz$TestLiteralStrKeyDict.test_read_only¯  si   € ò	ò	ò	(ò	ð
 ˜¨°4Ð8ˆãˆDØ—‘˜dŸm™mÕ,Ø×'Ñ'¨
¬¨T«
«±d³fÔ=÷ -Ð,ñ ß,Ð,ús   ³&A$Á$A-	c                 óh  — d„ }d„ }d„ }d„ }d„ }d„ }||||||f}|D ]{  }| j                  |j                  «      5  | j                  t        «      5 }	 t	        |«      «        d d d «       d}
| j                  |
t        	j                  «      «       d d d «       Œ} y # 1 sw Y   Œ;xY w# 1 sw Y   Œ”xY w)Nc                  ó   — ddddœ} d| d<   y )Nr   r  r#   rÜ  rK  r½   ri  rL  s    r%   Úsetitemz<TestLiteralStrKeyDict.test_mutation_failure.<locals>.setitemÊ  s   € Ø˜r¨Ñ,ˆBØˆBˆsŠGr'   c                  ó   — ddddœ} | d= y )Nr   r  r#   rÜ  r½   ri  rL  s    r%   Údelitemz<TestLiteralStrKeyDict.test_mutation_failure.<locals>.delitemÎ  s   € Ø˜r¨Ñ,ˆBØ�3‘r'   c                  ó0   — ddddœ} | j                  «        y rd  )rb   rL  s    r%   rb   z<TestLiteralStrKeyDict.test_mutation_failure.<locals>.popitemÒ  s   € Ø˜r¨Ñ,ˆBØ�J‰J�Lr'   c                  ó0   — ddddœ} | j                  «        y rd  )rx   rL  s    r%   rx   z8TestLiteralStrKeyDict.test_mutation_failure.<locals>.popÖ  s   € Ø˜r¨Ñ,ˆBØ�F‰F�Hr'   c                  ó0   — ddddœ} | j                  «        y rd  )rŠ   rL  s    r%   rŠ   z:TestLiteralStrKeyDict.test_mutation_failure.<locals>.clearÚ  s   € Ø˜r¨Ñ,ˆBØ�H‰H�Jr'   c                  ó4   — ddddœ} | j                  dd«       y )Nr   r  r#   rÜ  rb  )r¼   rL  s    r%   r¼   z?TestLiteralStrKeyDict.test_mutation_failure.<locals>.setdefaultÞ  s   € Ø˜r¨Ñ,ˆBØ�M‰M˜#˜qÕ!r'   ú"Cannot mutate a literal dictionary)r  rˆ  rs   r   r   rõ   rö   r÷   )r.   r…  r‡  rb   rx   rŠ   r¼   Úillegalsr�  rù   r±  s              r%   Útest_mutation_failurez+TestLiteralStrKeyDict.test_mutation_failureÈ  s¤   € ò	ò	ò	ò	ò	ò	"ð ˜W g¨s°E¸:ÐFˆãˆDØ—‘˜dŸm™mÕ,Ø×&Ñ&¤{Ô3°vØ”D˜“J”L÷ 4à=�Ø—‘˜f¤c¨&×*:Ñ*:Ó&;Ô<÷	 -Ð,ñ ç3Ð3ú÷ -Ð,ús#   »B(ÁBÁ"/B(ÂB%Â!B(Â(B1	c                 óX  — t         d„ «       }t         d„ «       }||fD ]s  }| j                  |j                  «      5  | j                  t        «      5 } |d«       d d d «       d}| j                  |t        j                  «      «       d d d «       Œu y # 1 sw Y   Œ;xY w# 1 sw Y   ŒŒxY w)Nc                 ó.   — dddœ}|j                  | «      S ©Nr  r#   )r½   r¿   )r8   ©rµ   rM  s     r%   r8   z+TestLiteralStrKeyDict.test_get.<locals>.getí  s   € à Ñ$ˆBØ—6‘6˜!“9Ðr'   c                 ó   — dddœ}||    S r‘  ri  r’  s     r%   Úgetitemz/TestLiteralStrKeyDict.test_get.<locals>.getitemò  s   € à Ñ$ˆBØ�a‘5ˆLr'   r½   z*Cannot get{item}() on a literal dictionary)r   r  rˆ  rs   r   rõ   rö   r÷   )r.   r8   r”  r�  rù   r±  s         r%   Útest_getzTestLiteralStrKeyDict.test_getë  sš   € ä	ñ	ó 
ð	ô 
ñ	ó 
ð	ð ˜'“NˆDØ—‘˜dŸm™mÕ,Ø×&Ñ&¤{Ô3°vÙ˜”I÷ 4àE�Ø—‘˜f¤c¨&×*:Ñ*:Ó&;Ô<÷	 -Ð,ñ #ç3Ð3ú÷ -Ð,ús#   »B Á	BÁ/B ÂBÂB Â B)	c                 óN   — t         d„ «       }| j                   |«       ddg«       y )Nc                  óR   — dddœ} | j                  «       D �cg c]  }|‘Œ c}S c c}w r‘  )rM   )rM  rµ   s     r%   r&   z1TestLiteralStrKeyDict.test_dict_keys.<locals>.foo 	  s*   € à Ñ$ˆBØ!Ÿw™wœyÓ)™y˜!’A˜yÑ)Ð)ùÒ)s   ˜	$r½   r¿   r+   r-   s     r%   r˜   z$TestLiteralStrKeyDict.test_dict_keysþ  s,   € ä	ñ	*ó 
ð	*ð 	×Ñ™›  c 
Õ+r'   c                 óJ   — t         d„ «       }| j                   |«       d«       y )Nc                  ó,   — dddœ} | j                  «       S r‘  )r    rL  s    r%   r&   z3TestLiteralStrKeyDict.test_dict_values.<locals>.foo		  s   € à Ñ$ˆBØ—9‘9“;Ðr'   )r  r#   r+   r-   s     r%   r¡   z&TestLiteralStrKeyDict.test_dict_values	  s(   € ä	ñ	ó 
ð	ð 	×Ñ™› 	Õ*r'   c           	      óz   — t         d„ «       }| j                   |«       dddt        j                  d«      ff«       y )Nc                  óT   — ddt        j                  d«      dœ} | j                  «       S )Nr  r#   r<   )r½   r¿   rb  )r  rk  r�   rL  s    r%   r&   z2TestLiteralStrKeyDict.test_dict_items.<locals>.foo	  s"   € à ¬"¯(©(°A«-Ñ8ˆBØ—8‘8“:Ðr'   )r½   r  )r¿   r#   rb  r<   )r   r§   r  rk  r-   s     r%   r”   z%TestLiteralStrKeyDict.test_dict_items	  s@   € Ü	ñ	ó 
ð	ð 	×Ñ¡£Ø!*¨J¸¼b¿h¹hÈ»mÐ8LÐ Mõ	Or'   c                 óÌ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       t        j                  «      }| j                  d|«       y # 1 sw Y   Œ1xY w)Nc                  ó   — dddœ} | S r‘  ri  rL  s    r%   r&   z3TestLiteralStrKeyDict.test_dict_return.<locals>.foo	  s   € à Ñ$ˆBØˆIr'   z#cannot convert native LiteralStrKey)r   rs   rÐ  rö   r÷   rõ   )r.   r&   rù   rÇ  s       r%   Útest_dict_returnz&TestLiteralStrKeyDict.test_dict_return	  sZ   € ä	ñ	ó 
ð	ð
 ×ÑœyÔ)¨VÙŒE÷ *ô �V×%Ñ%Ó&ˆØ�‰Ð;¸VÕD÷	 *Ð)úrÉ  c                 ó  — t         d„ «       }| j                   |d«      d«       | j                   |d«      d«       | j                   |d«      |j                  d«      «       | j                   |d«      |j                  d«      «       y )Nc                 óŠ   — | dz   dkD  rddt        j                  d«      dœ}|d	   S ddt        j                  d«      dœ}|d	   S )
Né   rX   r  r#   ©r½   r¿   ra  ù              @ÚCAT©r<   r¿   rm  )rµ   r½   s     r%   r&   z2TestLiteralStrKeyDict.test_dict_unify.<locals>.foo(	  sK   € à�1‰u�qŠyØ 3¬R¯X©X°a«[Ñ9�ð �S‘6ˆMð  5¬r¯x©x¸«~Ñ>�Ø�S‘6ˆMr'   r*   r#   rS  r¤  rp  r-   s     r%   Útest_dict_unifyz%TestLiteralStrKeyDict.test_dict_unify'	  sx   € Ü	ñ	ó 
ð	ð 	×Ñ™˜S› 3Ô'Ø×Ñ™˜T› EÔ*Ø×Ñ™˜S› 3§;¡;¨sÓ#3Ô4Ø×Ñ™˜T› C§K¡K°Ó$5Õ6r'   c                 ó�  — t         d„ «       }| j                  t        «      5 } |d«       d d d «       | j                  dt	        j
                  «      «       t         d„ «       }| j                  t        «      5 } |d«       d d d «       | j                  dt	        |j
                  «      «       y # 1 sw Y   Œ†xY w# 1 sw Y   Œ;xY w)Nc                 ó’   — | dz   dkD  rddt        j                  d«      dœ}nddt        j                  d«      d	œ}d
}d}d}d}|d   S )Nr¡  rX   r  r#   )ÚBAD_KEYr¿   ra  r£  r¤  r¥  r¢  r   r)   rF   r½   rm  ©rµ   r½   Úpy310_defeat1Úpy310_defeat2Úpy310_defeat3Úpy310_defeat4s         r%   Úkey_mismatchz?TestLiteralStrKeyDict.test_dict_not_unify.<locals>.key_mismatch8	  sR   € à�1‰u�qŠyØ "¨´2·8±8¸A³;Ñ?‘à 5¬r¯x©x¸«~Ñ>�àˆMØˆMØˆMØˆMØ�S‘6ˆMr'   r*   zCannot unify LiteralStrKeyc                 ó’   — | dz   dkD  rddt        j                  d«      dœ}nddt        j                  d	«      dœ}d
}d}d}d}|d   S )Nr¡  rX   r  r#   )rX   rF   r¢  r£  r¤  r¥  r   r)   rF   r½   rm  rª  s         r%   Úvalue_type_mismatchzFTestLiteralStrKeyDict.test_dict_not_unify.<locals>.value_type_mismatchJ	  sS   € à�1‰u�qŠyØ 3¬R¯X©X°fÓ-=Ñ>‘à 5¬r¯x©x¸«~Ñ>�àˆMØˆMØˆMØˆMØ�S‘6ˆMr'   rô   )r.   r¯  rù   r±  s       r%   Útest_dict_not_unifyz)TestLiteralStrKeyDict.test_dict_not_unify6	  s®   € ä	ñ
	ó 
ð
	ð ×Ñœ{Ô+¨vÙ˜Ô÷ ,ð 	�‰Ð2´C¸×8HÑ8HÓ4IÔJä	ñ
	ó 
ð
	ð ×Ñœ{Ô+¨vÙ Ô$÷ ,ð 	�‰Ð2´C¸×8HÑ8HÓ4IÕJ÷+ ,Ð+ú÷$ ,Ð+ús   ¢	B0Á9	B<Â0B9Â<Cc                 óˆ  ‡ ‡‡‡‡— t         j                  t         j                  ft        j                  t         j                  t         j                  ft        j                  t         j
                  t         j                  ft        j                  t         j                  t         j
                  ft        j                  t         j                  t         j                  ft        j                  t         j                  t         j                  ft        j                  t         j                  t         j                  ft        j                  t         j                  t         j                  ft        j                  i}d„ Š|j                  «       D ]5  \  }Št        ‰«      ˆˆ fd„«       }|\  ŠŠt        ˆˆˆfd„«       } |«        Œ7 y )Nc                  ó   — y r6   ri  r¦  s    r%   rj  z;TestLiteralStrKeyDict.test_dict_value_coercion.<locals>.barp	  rW  r'   c                 óD   •— ‰j                  t        | ‰«      «       d„ }|S )Nc                  ó   — y r6   ri  r¦  s    r%   r;  zLTestLiteralStrKeyDict.test_dict_value_coercion.<locals>.ol_bar.<locals>.implx	  s   € Ør'   )rÔ   r  )rµ   r;  Ú	containerr.   s     €€r%   r  z>TestLiteralStrKeyDict.test_dict_value_coercion.<locals>.ol_bart	  s    ø€ à—‘¤
¨1¨iÓ 8Ô9òà�r'   c                  ó8   •—  ‰d«       ‰d«      dœ}  ‰| «       y )Nr   r)   rß  ri  )r#   rj  Úty1Úty2s    €€€r%   r&   z;TestLiteralStrKeyDict.test_dict_value_coercion.<locals>.foo~	  s   ø€ á˜a›&¡s¨1£vÑ.�Ù�A•r'   )r  r   r   ré   rœ  rš  r&  rv  r   r   r�   r   r   )	r.   ÚpÚdtsr  r&   rj  r·  r¹  rº  s	   `    @@@@r%   Útest_dict_value_coercionz.TestLiteralStrKeyDict.test_dict_value_coercion\	  s  ü€ ô �h‰hœŸ™Ð!¤5§>¡>ä�h‰hœŸ™Ð ¤%§.¡.ä�m‰mœRŸX™XÐ&¬¯©ä�h‰hœŸ™Ð&¬×(?Ñ(?ä�h‰hœŸ™Ð!¤5×#:Ñ#:ä�h‰hœŸ™Ð!¤5×#:Ñ#:ä�g‰g”r—x‘xÐ ¤%×"9Ñ"9ä�h‰hœŸ
™
Ð#¤U×%<Ñ%<ð?ˆò"	ð  Ÿg™gži‰NˆC�Ü�c‹]ôó ðð ‰HˆC�äõó ðñ �Eñ! (r'   c                 óX   ‡— d„ Št        ‰«      d„ «       }t        ˆfd„«       } |«        y )Nc                  ó   — y r6   ri  r¦  s    r%   rj  z9TestLiteralStrKeyDict.test_build_map_op_code.<locals>.barŠ	  rW  r'   c                 ó   — d„ }|S )Nc                  ó   — y r6   ri  r¦  s    r%   r;  zJTestLiteralStrKeyDict.test_build_map_op_code.<locals>.ol_bar.<locals>.impl�	  r7  r'   ri  )rµ   r;  s     r%   r  z<TestLiteralStrKeyDict.test_build_map_op_code.<locals>.ol_bar�	  s   € òàˆKr'   c                  ó$   •— ddddœi}  ‰| «       y )Nr½   r>   Ústring)Úb1Úb2ri  )r½   rj  s    €r%   r&   z9TestLiteralStrKeyDict.test_build_map_op_code.<locals>.foo“	  s   ø€ à˜R xÑ0Ð1ˆAÙ��Fr'   r  r  s      @r%   Útest_build_map_op_codez,TestLiteralStrKeyDict.test_build_map_op_code…	  s;   ø€ ò
	ô 
�#‹ñ	ó 
ð	ô
 
ó	ó 
ð	ñ 	�r'   c                 ó²   ‡— t         dd„«       Št         ˆfd„«       }t        j                  j                   |«       t        j                  d«      dz  «       y )Nc                 ó,   — | �| d   d d xxx dz  ccc y y )Nr#   r>   ri  ©Úfake_kwargss    r%   rj  z3TestLiteralStrKeyDict.test_dict_as_arg.<locals>.bar›	  s"   € àÐ&à˜CÑ ¡Ó# rÑ)Ô#ð 'r'   c                  ód   •— d} d}d}t        j                  d«      }| |||dœ} ‰|¬«       |d   S )Nr   r  rÃ  rF   r]  rÉ  r#   rm  )r½   r¾   r¿   r#   ra  rj  s        €r%   r&   z3TestLiteralStrKeyDict.test_dict_as_arg.<locals>.foo¡	  s>   ø€ àˆAØˆAØˆAÜ—‘˜“ˆAØ˜a a¨aÑ0ˆAÙ˜AÕØ�S‘6ˆMr'   rF   r>   r6   )r   r  ÚtestingÚassert_allcloseÚones©r.   r&   rj  s     @r%   Útest_dict_as_argz&TestLiteralStrKeyDict.test_dict_as_argš	  sM   ø€ Ü	ò	*ó 
ð	*ô
 
ó	ó 
ð	ô 	�
‰
×"Ñ"¡3£5¬"¯'©'°!«*°r©/Õ:r'   c                 óf   — t         d„ «       }| j                   |«       |j                  «       «       y )Nc                  ó,   — dd„ dgi}  | d   d   d«      S )Nr¿  c                 ó   — d| z  S )Nr)   ri  rÚ  s    r%   rj  z\TestLiteralStrKeyDict.test_dict_with_single_literallist_value.<locals>.foo.<locals>.<lambda>±	  s   €   Q¢r'   rÀ  r   r<   ri  r#  s    r%   r&   zJTestLiteralStrKeyDict.test_dict_with_single_literallist_value.<locals>.foo¯	  s%   € à‘¨Ð,Ð-ˆAØ�1�S‘6˜!‘9˜Q“<Ðr'   ©r   r§   rq   r-   s     r%   Ú'test_dict_with_single_literallist_valuez=TestLiteralStrKeyDict.test_dict_with_single_literallist_value­	  s.   € ä	ñ	 ó 
ð	 ð 	×Ñ¡£ s§{¡{£}Õ5r'   c                 ó^   ‡ ‡— d„ Št        ‰«      ˆ fd„«       }t        ˆfd„«       } |«        y )Nc                  ó   — y r6   ri  r¦  s    r%   rj  z8TestLiteralStrKeyDict.test_tuple_not_in_mro.<locals>.bar¹	  rW  r'   c                 ó®   •— ‰j                  t        | t        j                  «      «       ‰j	                  t        | t        j
                  «      «       d„ S )Nc                  ó   — y)N.ri  r¦  s    r%   rj  zMTestLiteralStrKeyDict.test_tuple_not_in_mro.<locals>.ol_bar.<locals>.<lambda>À	  s   € ˜Sr'   )rÕ   r  r   Ú	BaseTuplerÔ   r&  )rµ   r.   s    €r%   r  z;TestLiteralStrKeyDict.test_tuple_not_in_mro.<locals>.ol_bar¼	  s;   ø€ à×ÑœZ¨¬5¯?©?Ó;Ô<Ø�O‰OœJ q¬%×*AÑ*AÓBÔCÙ Ð r'   c                  ó    •— dddœ}  ‰| «       y )Nr   r¿   rß  ri  )r#   rj  s    €r%   r&   z8TestLiteralStrKeyDict.test_tuple_not_in_mro.<locals>.fooÂ	  s   ø€ à˜cÑ"ˆAÙ��Fr'   r  r  s   `  @r%   Útest_tuple_not_in_mroz+TestLiteralStrKeyDict.test_tuple_not_in_mro¶	  s;   ù€ ò	ô 
�#‹ó	!ó 
ð	!ô
 
ó	ó 
ð	ñ 	�r'   c                 óÈ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                  ó>   — ddt        j                  d«      dœ} | d   S )Nr  r#   rX   )Únot_ar¿   ra  r½   rm  rÚ  s    r%   r&   z=TestLiteralStrKeyDict.test_const_key_not_in_dict.<locals>.fooË	  s   € à 3¬R¯X©X°a«[Ñ9ˆAØ�S‘6ˆMr'   zKey 'a' is not in dict.rô   rø   s      r%   Útest_const_key_not_in_dictz0TestLiteralStrKeyDict.test_const_key_not_in_dictÉ	  sU   € ä	ñ	ó 
ð	ð ×Ñœ{Ô+¨vÙŒE÷ ,ð 	�‰Ð/´°V×5EÑ5EÓ1FÕG÷ ,Ð+úr	  c                 óÈ   — t         d„ «       }| j                   |«       |j                  «       «       t         d„ «       }| j                   |«       |j                  «       «       y )Nc                  óH   — t        j                  d«      ddœ} t        | «      S )Nr<   rX   )rV   Ú1©r  rÎ  r2   r|   s    r%   r&   z<TestLiteralStrKeyDict.test_uncommon_identifiers.<locals>.fooÚ	  s   € ä—g‘g˜a“j qÑ)ˆAÜ�q“6ˆMr'   c                  óH   — t        j                  d«      ddœ} t        | «      S )Nr<   rX   )Ú+zx--rä  r|   s    r%   rj  z<TestLiteralStrKeyDict.test_uncommon_identifiers.<locals>.barâ	  s   € ä—g‘g˜a“j¨Ñ+ˆAÜ�q“6ˆMr'   rÔ  rÏ  s      r%   Útest_uncommon_identifiersz/TestLiteralStrKeyDict.test_uncommon_identifiersÕ	  s^   € ô
 
ñ	ó 
ð	ð 	×Ñ¡£ s§{¡{£}Ô5ô 
ñ	ó 
ð	ð 	×Ñ¡£ s§{¡{£}Õ5r'   c                 óÈ   — t         d„ «       }| j                  t        «      5 } |«        d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Nc                  ó8   — ddddœ} | j                  ddi«       | S )Nr)   rX   r½   rÜ  rµ   rF   )r  )r€  s    r%   r&   z4TestLiteralStrKeyDict.test_update_error.<locals>.fooì	  s+   € ð ØØñˆBð
 �I‰I�s˜A�hÔØˆIr'   rŒ  rô   rø   s      r%   Útest_update_errorz'TestLiteralStrKeyDict.test_update_erroré	  sZ   € ô 
ñ	ó 
ð	ð ×Ñœ{Ô+¨vÙŒE÷ ,ð 	�‰Ø0Ü�× Ñ Ó!õ	
÷ ,Ð+úr	  N)rˆ  r‰  rŠ  rï  rN  rT  r^  rf  rn  ru  r‚  rŽ  r•  r˜   r¡   r”   rž  r¦  r²  r½  rÆ  rÐ  rÕ  rÜ  rà  rç  rê  ri  r'   r%   rI  rI  5  s   „ ÙLò.ò$òò2ò.ò2ò0>ò2!=òF=ò&,ò+òOòEò7ò$KòL'òRò*;ò&6òò&
Hò6ó(
r'   rI  Ú__main__)5rï  rŒ  r•  Únumpyr  Únumbar   r   r   r   r   r   r	   Únumba.typedr
   r   r   Únumba.typed.typedobjectutilsr   Únumba.core.errorsr   Ú
numba.corer   Únumba.tests.supportr   r   r   r   r   Únumba.experimentalr   Únumba.extendingr   r   r�  r¥  rÏ  rù  r  r  rb  ry  rË  r:  ÚobjectrØ  rß  rå  rñ  r  rI  rˆ  Úmainri  r'   r%   Ú<module>r÷     sd  ðñó Û ã ç !ß 0Ó 0Ý ß .Ñ .Ý :Ý )Ý ÷Bõ Bå 'Ý $ô~�_ hô ~ôB 9˜(ô 9ô>g"�O Xô g"÷TF3ñ F3ôR˜hÐ(8ô ôB* Ð*:ô *ô4X(˜¨(ô X(ôv:˜Xô :ôDlH�xô lHô^7"˜8ô 7"ñt 
��e—j‘jÐ!Ð"Ô#ôˆ&ó ó $ðô&˜8ô &ô0�ô 0ô,.�xô .ô<X) °(ô X)ôvH
˜O¨Xô H
ðV ˆzÒØ€H‡M�M…Oð r'   