Ë
    ímxiU7 ã                   ó  — d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl	m
c mZ d dlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"  G d„ d«      Z# G d„ de#«      Z$ G d„ d«      Z% G d	„ d
e$«      Z& G d„ de#«      Z' G d„ de#«      Z( G d„ d«      Z) G d„ d«      Z*ejV                  jY                  d«      ejV                  j[                  d¬«       G d„ d«      «       «       Z. G d„ d«      Z/ G d„ d«      Z0 G d„ d«      Z1 G d„ d«      Z2d „ Z3d!„ Z4d"„ Z5ejV                  j[                  d¬«      d#„ «       Z6ejV                  jY                  d«      ejV                  j[                  d¬«      d$„ «       «       Z7ejV                  jY                  d«      ejV                  j[                  d¬«      d%„ «       «       Z8ejV                  jY                  d«      ejV                  j[                  d&¬«      d'„ «       «       Z9ejV                  jY                  d«      ejV                  j[                  d&¬«      d(„ «       «       Z:ejV                  jY                  d«      ejV                  j[                  d&¬«      d)„ «       «       Z;d*„ Z<d+„ Z= G d,„ d-e«      Z>ejV                  j[                  d¬«      d.„ «       Z?ejV                  j�                  e d/¬«      ejV                  j[                  d0¬«       G d1„ d2«      «       «       ZAy)3é    N)ÚHAS_REFCOUNTÚassert_Úassert_allcloseÚassert_almost_equalÚassert_approx_equalÚassert_array_almost_equalÚassert_array_almost_equal_nulpÚassert_array_equalÚassert_array_lessÚassert_array_max_ulpÚassert_equalÚassert_no_gc_cyclesÚassert_no_warningsÚassert_raisesÚassert_string_equalÚassert_warnsÚbuild_err_msgÚclear_and_catch_warningsÚsuppress_warningsÚtempdirÚtemppathc                   óB   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zy
)Ú_GenericTestc                  ó   — y ©N© ©ÚselfÚargsÚkwargss      úU/home/htdocs/ttos/venv/lib/python3.12/site-packages/numpy/testing/tests/test_utils.pyÚ_assert_funcz_GenericTest._assert_func'   s   € Øó    c                 ó(   — | j                  ||«       y r   ©r"   ©r   ÚaÚbs      r!   Ú_test_equalz_GenericTest._test_equal*   s   € Ø×Ñ˜!˜QÕr#   c                 óp   — t        t        «      5  | j                  ||«       d d d «       y # 1 sw Y   y xY wr   )r   ÚAssertionErrorr"   r&   s      r!   Ú_test_not_equalz_GenericTest._test_not_equal-   s/   € Üœ>Ó*ñ 	$Ø×Ñ˜a Ô#÷	$÷ 	$ñ 	$ús   �,¬5c                 ó„   — t        j                  ddg«      }t        j                  ddg«      }| j                  ||«       y)z/Test two equal array of rank 1 are found equal.é   é   N©ÚnpÚarrayr)   r&   s      r!   Útest_array_rank1_eqz _GenericTest.test_array_rank1_eq1   s6   € ä�H‰H�a˜�VÓˆÜ�H‰H�a˜�VÓˆà×Ñ˜˜AÕr#   c                 ó„   — t        j                  ddg«      }t        j                  ddg«      }| j                  ||«       y)z7Test two different array of rank 1 are found not equal.r.   r/   N©r1   r2   r,   r&   s      r!   Útest_array_rank1_noteqz#_GenericTest.test_array_rank1_noteq8   s6   € ä�H‰H�a˜�VÓˆÜ�H‰H�a˜�VÓˆà×Ñ˜Q Õ"r#   c                 ó”   — t        j                  ddgddgg«      }t        j                  ddgddgg«      }| j                  ||«       y)z/Test two equal array of rank 2 are found equal.r.   r/   é   é   Nr0   r&   s      r!   Útest_array_rank2_eqz _GenericTest.test_array_rank2_eq?   sH   € ä�H‰H�q˜!�f˜q !˜fÐ%Ó&ˆÜ�H‰H�q˜!�f˜q !˜fÐ%Ó&ˆà×Ñ˜˜AÕr#   c                 óŒ   — t        j                  ddg«      }t        j                  ddgddgg«      }| j                  ||«       y)ú:Test two arrays with different shapes are found not equal.r.   r/   Nr5   r&   s      r!   Útest_array_diffshapez!_GenericTest.test_array_diffshapeF   s?   € ä�H‰H�a˜�VÓˆÜ�H‰H�q˜!�f˜q !˜fÐ%Ó&ˆà×Ñ˜Q Õ"r#   c                 ób   — t        j                  ddgt        ¬«      }| j                  |d«       y)zTest object arrays.r.   ©ÚdtypeN)r1   r2   Úobjectr)   ©r   r'   s     r!   Útest_objarrayz_GenericTest.test_objarrayM   s&   € ä�H‰H�a˜�V¤6Ô*ˆØ×Ñ˜˜AÕr#   c                 ó,   — | j                  g d¢d«       y )N©r.   r/   r8   )r)   ©r   s    r!   Útest_array_likesz_GenericTest.test_array_likesR   s   € Ø×Ñš IÕ.r#   N)Ú__name__Ú
__module__Ú__qualname__r"   r)   r,   r3   r6   r:   r=   rC   rG   r   r#   r!   r   r   %   s/   „ òò ò$òò#òò#òó
/r#   r   c                   ór   — 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y)ÚTestArrayEqualc                 ó   — t        |i |¤Ž y r   )r
   r   s      r!   r"   zTestArrayEqual._assert_funcX   s   € Ü˜DÐ+ FÓ+r#   c                 óL   ‡ — ˆ fd„}dD ]
  } ||«       Œ dD ]
  } ||«       Œ y)z!Test rank 1 array for all dtypes.c                 óþ   •— t        j                  d| «      }|j                  d«       |j                  «       }|j                  «       }|j                  d«       ‰j	                  ||«       ‰j                  ||«       y )Nr/   r.   r   ©r1   ÚemptyÚfillÚcopyr)   r,   ©Útr'   r(   Úcr   s       €r!   Úfooz.TestArrayEqual.test_generic_rank1.<locals>.foo]   s^   ø€ Ü—‘˜˜A“ˆAØ�F‰F�1ŒIØ—‘“ˆAØ—‘“ˆAØ�F‰F�1ŒIØ×Ñ˜Q Ô"Ø× Ñ   AÕ&r#   ú?bhilqpBHILQPfdgFDG©ÚS1ÚU1Nr   ©r   rW   rU   s   `  r!   Útest_generic_rank1z!TestArrayEqual.test_generic_rank1[   ó8   ø€ ô	'ð 'ò 	ˆAÙ��Fð	ð ò 	ˆAÙ��Fñ	r#   c                 ón  — t        j                  d«      }t        j                  d«      }t        j                  t        «      5 }| j                  ||«       d d d «       t        j                  «      }t        d|v «       |}| j                  ||«       t        j                  d«      }t        j                  d«      }d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       d d d «       |}| j                  ||«       y # 1 sw Y   ŒÉxY w# 1 sw Y   Œ*xY w)Nl   Cj¬<T"3ÿËwÝ¤-l   (M$c7u£†vÈz"Mismatched elements: 1 / 1 (100%)
g„L”xrú�Br   z‰Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 4.39506535e+12
Max relative difference among violations: inf
©Úmatch)r1   r2   ÚpytestÚraisesr+   r"   ÚstrÚvaluer   ÚreÚescape)r   ÚxÚyÚexc_infoÚmsgÚexpected_msgs         r!   Útest_0_ndim_arrayz TestArrayEqual.test_0_ndim_arrayn   s  € Ü�H‰HÐ9Ó:ˆÜ�H‰HÐ8Ó9ˆä�]‰]œ>Ó*ð 	$¨hØ×Ñ˜a Ô#÷	$ä�(—.‘.Ó!ˆÜÐ5Øðô 	ð ˆØ×Ñ˜!˜QÔä�H‰HÐ3Ó4ˆÜ�H‰H�Q‹KˆðJˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ð ˆØ×Ñ˜!˜QÕ÷'	$ð 	$ú÷	$ð 	$ús   ÁDÃ/D+ÄD(Ä+D4c                 óL   ‡ — ˆ fd„}dD ]
  } ||«       Œ dD ]
  } ||«       Œ y)z!Test rank 3 array for all dtypes.c                 óþ   •— t        j                  d| «      }|j                  d«       |j                  «       }|j                  «       }|j                  d«       ‰j	                  ||«       ‰j                  ||«       y )N)r9   r/   r8   r.   r   rP   rT   s       €r!   rW   z.TestArrayEqual.test_generic_rank3.<locals>.foo‰   s_   ø€ Ü—‘˜ AÓ&ˆAØ�F‰F�1ŒIØ—‘“ˆAØ—‘“ˆAØ�F‰F�1ŒIØ×Ñ˜Q Ô"Ø× Ñ   AÕ&r#   rX   rY   Nr   r\   s   `  r!   Útest_generic_rank3z!TestArrayEqual.test_generic_rank3‡   r^   r#   c                 ó  — t        j                  ddt         j                  g«      }t        j                  ddt         j                  g«      }| j                  ||«       t        j                  g d¢«      }| j	                  ||«       y)z$Test arrays with nan values in them.r.   r/   rE   N)r1   r2   Únanr)   r,   ©r   r'   r(   rV   s       r!   Útest_nan_arrayzTestArrayEqual.test_nan_arrayš   s`   € ä�H‰H�a˜œBŸF™F�^Ó$ˆÜ�H‰H�a˜œBŸF™F�^Ó$ˆà×Ñ˜˜AÔä�H‰H’YÓˆØ×Ñ˜Q Õ"r#   c                 óÖ   — t        j                  ddg«      }t        j                  ddg«      }| j                  ||«       t        j                  ddg«      }| j                  ||«       y)r<   ÚfloupiÚfloupaÚfloupipiN)r1   r2   r)   r,   rs   s       r!   Útest_string_arraysz!TestArrayEqual.test_string_arrays¤   s[   € ä�H‰H�h Ð)Ó*ˆÜ�H‰H�h Ð)Ó*ˆà×Ñ˜˜AÔä�H‰H�j (Ð+Ó,ˆà×Ñ˜Q Õ"r#   c                 óÚ  — t        j                  ddt        fdt        fg«      }ddg|d<   ddg|d<   |j                  «       }| j	                  ||«       t        j                  ddt        fdt        fdt        fg«      }|d   j                  «       |d<   |d   j                  «       |d<   t        j                  t        «      5  | j                  ||«       ddd«       y# 1 sw Y   yxY w)zTest record arrays.r/   rv   rw   r.   rx   N)	r1   rQ   ÚfloatrS   r)   rb   rc   Ú	TypeErrorr,   rs   s       r!   Útest_recarrayszTestArrayEqual.test_recarrays¯   sß   € ä�H‰H�Q˜(¤EÐ*¨X´uÐ,=Ð>Ó?ˆØ˜!�fˆˆ(‰Ø˜!�fˆˆ(‰Ø�F‰F‹Hˆà×Ñ˜˜AÔä�H‰H�Q˜*¤eÐ,Ø"¤EÐ*¨X´uÐ,=ð?ó @ˆà˜(™×(Ñ(Ó*ˆˆ*‰Ø˜‘k×&Ñ&Ó(ˆˆ(‰ä�]‰]œ9Ó%ñ 	'Ø× Ñ   AÔ&÷	'÷ 	'ñ 	'ús   ÃC!Ã!C*c                 óÀ  — t         j                  j                  g d¢g d¢¬«      }t        j                  dt         j                  dg«      }| j                  ||«       | j                  ||«       t         j                  j                  g d¢g d¢¬«      }t        j                  t         j                  ddg«      }| j                  ||«       | j                  ||«       y )N©ç      @ç      @ç      @)FTF©Úmaskr€   r‚   )TFFr�   )r1   ÚmaÚMaskedArrayr2   rr   r)   Úinfr&   s      r!   Útest_masked_nan_infz"TestArrayEqual.test_masked_nan_infÀ   s¨   € ä�E‰E×ÑšmÒ2FÐÓGˆÜ�H‰H�bœ"Ÿ&™& #Ð&Ó'ˆØ×Ñ˜˜AÔØ×Ñ˜˜AÔÜ�E‰E×ÑšmÒ2FÐÓGˆÜ�H‰H”b—f‘f˜b #Ð&Ó'ˆØ×Ñ˜˜AÔØ×Ñ˜˜AÕr#   c           
      óœ  — t        j                  dt        j                  t        j                  gddt        j                  t        j                  t        j                   gddg«      D ]ƒ  \  }}}t        j
                  j                  |d¬«      }|r!t        j
                  j                  |d¬«      nt        j                  |«      }| j                  ||«       | j                  ||«       Œ… t        j                  dt        j                  t        j                   gt        j                  ddt        j                  t        j                  t        j                   gd¬«      «      D ]_  \  }}t        j
                  j                  |d¬«      }t        j                  |«      }| j                  ||«       | j                  ||«       Œa t        j                  dt        j                  t        j                  gt        j                  ddt        j                  t        j                  t        j                   gd¬«      t        j                  ddgd¬«      «      D ]l  \  }}}t        j
                  j                  |d¬«      }t        j
                  j                  ||¬«      }| j                  ||«       | j                  ||«       Œn y )Nr€   r�   FTrƒ   r/   )Úrepeat)	Ú	itertoolsÚproductr1   rr   r‡   r…   r†   r2   r)   )r   Úa_valÚb_valÚb_maskedr'   r(   Úb_masks          r!   Útest_masked_scalarz!TestArrayEqual.test_masked_scalarÌ   s#  € ä&/×&7Ñ&7Ø”—‘œŸ™Ð Ø�”R—V‘VœRŸV™V¤b§f¡f WÐ-Ø�DˆMó'
ò 	#Ñ"ˆE�5˜(ô
 —‘×!Ñ! %¨dÐ!Ó3ˆAÙ7?”—‘×!Ñ! %¨dÐ!Ô3ÄRÇXÁXÈeÃ_ˆAØ×Ñ˜Q Ô"Ø×Ñ˜Q Õ"ð	#ô &×-Ñ-Ø”—‘œ"Ÿ&™&˜Ð!Ü×Ñ˜r 2¤r§v¡v¬r¯v©v¼¿¹°wÐ?ÈÔJó
ò 	#‰LˆE�5ô —‘×!Ñ! %¨dÐ!Ó3ˆAÜ—‘˜“ˆAØ×Ñ˜Q Ô"Ø×Ñ˜Q Õ"ð	#ô %.×$5Ñ$5Ø”—‘œŸ™Ð Ü×Ñ˜r 2¤r§v¡v¬r¯v©v¼¿¹°wÐ?ÈÔJÜ×Ñ˜u d˜m°AÔ6ó%
ò 	#Ñ ˆE�5˜&ô
 —‘×!Ñ! %¨dÐ!Ó3ˆAÜ—‘×!Ñ! %¨fÐ!Ó5ˆAØ×Ñ˜Q Ô"Ø×Ñ˜Q Õ"ñ	#r#   c                 óR  —  G d„ dt         j                  «      }t        j                  ddg«      j                  |«      }t        j                  ddg«      j                  |«      }t	        t        ||k(  «      t        «       t	        ||k(  «       t	        ||k7  «       | j                  ||«       | j                  ||«       | j                  ||«       d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       d d d «       t        j                  dd	g«      j                  |«      }d
}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       d d d «       y # 1 sw Y   Œ{xY w# 1 sw Y   y xY w)Nc                   ó   — e Zd Zd„ Zd„ Zy)ú?TestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArrayc                 ó\   — t        t        j                  | |«      j                  «       «      S r   )Úboolr1   ÚequalÚall©r   Úothers     r!   Ú__eq__zFTestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArray.__eq__ó   s!   € ÜœBŸH™H T¨5Ó1×5Ñ5Ó7Ó8Ð8r#   c                 ó   — | |k(   S r   r   r™   s     r!   Ú__ne__zFTestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArray.__ne__ö   s   € Ø 5™=Ð(Ð(r#   N)rH   rI   rJ   r›   r�   r   r#   r!   ÚMyArrayr”   ò   s   „ ò9ó)r#   rž   ç      ð?ç       @r€   z{Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 1.
Max relative difference among violations: 0.5r`   ç        g333333@z{Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 2.
Max relative difference among violations: inf)r1   Úndarrayr2   Úviewr   Útyper–   r)   r,   rb   rc   r+   rf   rg   )r   rž   r'   r(   rl   rV   s         r!   Útest_subclass_that_overrides_eqz.TestArrayEqual.test_subclass_that_overrides_eqí   sV  € ô
	)”b—j‘jô 	)ô �H‰H�b˜"�XÓ×#Ñ# GÓ,ˆÜ�H‰H�b˜"�XÓ×#Ñ# GÓ,ˆÜ”�Q˜!‘V“œdÔ#Ü��Q‘ŒÜ��Q‘ŒØ×Ñ˜˜AÔØ×Ñ˜Q Ô"Ø×Ñ˜Q Ô"ðHˆô �]‰]œ>´·±¸<Ó1HÔIñ 	#Ø×Ñ˜Q Ô"÷	#ô �H‰H�b˜#�YÓ×$Ñ$ WÓ-ˆðHˆô �]‰]œ>´·±¸<Ó1HÔIñ 	#Ø×Ñ˜Q Ô"÷	#ð 	#÷	#ð 	#ú÷	#ð 	#ús   ÄFÅ5FÆFÆF&c                 ó¬  —  G d„ dt         j                  «      }t        j                  ddg«      j                  |«      }t        j                  ddg«      j                  |«      }t	        t
        «      5  t        j                  |«       d d d «       | j                  ||«       | j                  ||«       | j                  ||«       y # 1 sw Y   Œ@xY w)Nc                   ó   — e Zd Zd„ Zy)úKTestArrayEqual.test_subclass_that_does_not_implement_npall.<locals>.MyArrayc                 ó   — t         S r   )ÚNotImplementedr   s      r!   Ú__array_function__z^TestArrayEqual.test_subclass_that_does_not_implement_npall.<locals>.MyArray.__array_function__  s   € Ü%Ð%r#   N)rH   rI   rJ   r«   r   r#   r!   rž   r¨     s   „ ó&r#   rž   rŸ   r    r€   )	r1   r¢   r2   r£   r   r|   r˜   r)   r,   )r   rž   r'   r(   s       r!   Ú+test_subclass_that_does_not_implement_npallz:TestArrayEqual.test_subclass_that_does_not_implement_npall  s¦   € ô	&”b—j‘jô 	&ô �H‰H�b˜"�XÓ×#Ñ# GÓ,ˆÜ�H‰H�b˜"�XÓ×#Ñ# GÓ,ˆÜœ9Ó%ñ 	Ü�F‰F�1ŒI÷	à×Ñ˜˜AÔØ×Ñ˜Q Ô"Ø×Ñ˜Q Õ"÷		ð 	ús   Á5C
Ã
Cc           	      ó†  — t        j                  t        «      5  t        j                  d¬«      5  t        j
                  j                  t        j                  g d¢t        j                  «      t        j                  g d¢t        j                  «      «       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)NÚraise©r˜   rE   )r.   gœWw'&l¡7r8   )	rb   rc   r+   r1   ÚerrstateÚtestingr
   r2   Úfloat32rF   s    r!   Útest_suppress_overflow_warningsz.TestArrayEqual.test_suppress_overflow_warnings  s   € ä�]‰]œ>Ó*ñ 	9Ü—‘ Ô)ñ 9Ü—
‘
×-Ñ-Ü—H‘HšY¬¯
©
Ó3Ü—H‘Hš]¬B¯J©JÓ7ô9÷9÷	9ð 	9÷9ð 9ú÷	9ð 	9ús#   šB7±A)B+ÂB7Â+B4	Â0B7Â7C c                 óZ   — t        j                  g d¢«      }d}| j                  ||«       y)z@Test comparing an array with a scalar when all values are equal.©rŸ   rŸ   rŸ   rŸ   Nr0   r&   s      r!   Útest_array_vs_scalar_is_equalz,TestArrayEqual.test_array_vs_scalar_is_equal$  s%   € ä�H‰H’\Ó"ˆØˆà×Ñ˜˜AÕr#   c                 óê  — t        j                  g d¢«      }t        j                  g d¢«      }d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       ddd«       t        j                  g d¢«      }d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       ddd«       y# 1 sw Y   ŒlxY w# 1 sw Y   yxY w)z@Test comparing an array with a scalar when not all values equal.)éªˆ  éŒS égµ é6š )r¸   r¹   rº   r   zµMismatched elements: 1 / 4 (25%)
Mismatch at index:
 [3]: 563766 (ACTUAL), 0 (DESIRED)
Max absolute difference among violations: 563766
Max relative difference among violations: infr`   N)r¸   r¹   gÍÌÌÌœÕAr»   zïMismatched elements: 2 / 4 (50%)
Mismatch at indices:
 [2]: 439655.2 (ACTUAL), 439655 (DESIRED)
 [3]: 563766.0 (ACTUAL), 0 (DESIRED)
Max absolute difference among violations: 563766.
Max relative difference among violations: 4.54902139e-07©r1   r2   rb   rc   r+   rf   rg   r"   ©r   r'   r(   rl   s       r!   Útest_array_vs_array_not_equalz,TestArrayEqual.test_array_vs_array_not_equal+  sÁ   € ä�H‰HÒ4Ó5ˆÜ�H‰HÒ/Ó0ˆðHˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ô �H‰HÒ6Ó7ˆð)ˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ð 	$÷	$ð 	$ú÷	$ð 	$ús   ÁCÃC)ÃC&Ã)C2c                 óº   — t        j                  g d¢«      }d}t        j                  t        «      5  | j                  ||d¬«       ddd«       y# 1 sw Y   yxY w)z9Test comparing an array with a scalar with strict option.rµ   rŸ   T©ÚstrictN©r1   r2   rb   rc   r+   r"   r&   s      r!   Útest_array_vs_scalar_strictz*TestArrayEqual.test_array_vs_scalar_strictD  sK   € ä�H‰H’\Ó"ˆØˆä�]‰]œ>Ó*ñ 	1Ø×Ñ˜a ¨4ÐÔ0÷	1÷ 	1ñ 	1ús   ³AÁAc                 óˆ   — t        j                  g d¢«      }t        j                  g d¢«      }| j                  ||d¬«       y)ú-Test comparing two arrays with strict option.rµ   TrÀ   N)r1   r2   r"   r&   s      r!   Útest_array_vs_array_strictz)TestArrayEqual.test_array_vs_array_strictL  s3   € ä�H‰H’\Ó"ˆÜ�H‰H’\Ó"ˆà×Ñ˜!˜Q tÐÕ,r#   c                 óä   — t        j                  g d¢«      }t        j                  g d¢«      }t        j                  t        «      5  | j                  ||d¬«       ddd«       y# 1 sw Y   yxY w)rÅ   )r.   r.   r.   rµ   TrÀ   NrÂ   r&   s      r!   Ú test_array_vs_float_array_strictz/TestArrayEqual.test_array_vs_float_array_strictS  sT   € ä�H‰H’YÓˆÜ�H‰H’\Ó"ˆä�]‰]œ>Ó*ñ 	1Ø×Ñ˜a ¨4ÐÔ0÷	1÷ 	1ñ 	1ús   ÁA&Á&A/N)rH   rI   rJ   r"   r]   rm   rp   rt   ry   r}   rˆ   r‘   r¥   r¬   r³   r¶   r¾   rÃ   rÆ   rÈ   r   r#   r!   rL   rL   V   sY   „ ò,òò& ò2ò&#ò	#ò'ò"	ò#òB #òD#ò9òò$ò21ò-ó1r#   rL   c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚTestBuildErrorMessagec                 óœ   — t        j                  g d¢«      }t        j                  g d¢«      }d}t        ||g|«      }d}t        ||«       y )N©grÄZ|
 ð?çrÄZ|
  @ç«&ˆº @©gãˆµø ð?ç«&ˆº  @çãˆµø @úThere is a mismatchz‚
Items are not equal: There is a mismatch
 ACTUAL: array([1.00001, 2.00002, 3.00003])
 DESIRED: array([1.00002, 2.00003, 3.00004])©r1   r2   r   r   ©r   rh   ri   Úerr_msgr'   r(   s         r!   Útest_build_err_msg_defaultsz1TestBuildErrorMessage.test_build_err_msg_defaults^  sH   € Ü�H‰HÒ0Ó1ˆÜ�H‰HÒ0Ó1ˆØ'ˆä˜1˜a˜& 'Ó*ˆð"ˆô 	�Q˜Õr#   c                 ó    — t        j                  g d¢«      }t        j                  g d¢«      }d}t        ||g|d¬«      }d}t        ||«       y )NrÌ   rÏ   rÒ   F)Úverbosez)
Items are not equal: There is a mismatchrÓ   rÔ   s         r!   Útest_build_err_msg_no_verbosez3TestBuildErrorMessage.test_build_err_msg_no_verbosei  sF   € Ü�H‰HÒ0Ó1ˆÜ�H‰HÒ0Ó1ˆØ'ˆä˜1˜a˜& '°5Ô9ˆØ8ˆÜ�Q˜Õr#   c                 ó    — t        j                  g d¢«      }t        j                  g d¢«      }d}t        ||g|d¬«      }d}t        ||«       y )NrÌ   rÏ   rÒ   )ÚFOOÚBAR)Únamesz{
Items are not equal: There is a mismatch
 FOO: array([1.00001, 2.00002, 3.00003])
 BAR: array([1.00002, 2.00003, 3.00004])rÓ   rÔ   s         r!   Útest_build_err_msg_custom_namesz5TestBuildErrorMessage.test_build_err_msg_custom_namesr  sJ   € Ü�H‰HÒ0Ó1ˆÜ�H‰HÒ0Ó1ˆØ'ˆä˜1˜a˜& '°Ô@ˆðˆô 	�Q˜Õr#   c                 ó    — t        j                  g d¢«      }t        j                  g d¢«      }d}t        ||g|d¬«      }d}t        ||«       y )N)g0¸D   ð?rÍ   rÎ   )g_p‰   ð?rÐ   rÑ   rÒ   é
   )Ú	precisionzš
Items are not equal: There is a mismatch
 ACTUAL: array([1.000000001, 2.00002    , 3.00003    ])
 DESIRED: array([1.000000002, 2.00003    , 3.00004    ])rÓ   rÔ   s         r!   Ú#test_build_err_msg_custom_precisionz9TestBuildErrorMessage.test_build_err_msg_custom_precision}  sJ   € Ü�H‰HÒ4Ó5ˆÜ�H‰HÒ4Ó5ˆØ'ˆä˜1˜a˜& '°RÔ8ˆð7ˆô 	�Q˜Õr#   N)rH   rI   rJ   rÖ   rÙ   rÞ   râ   r   r#   r!   rÊ   rÊ   \  s   „ ò	òò	ó	r#   rÊ   c                   óH   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zy)Ú	TestEqualc                 ó   — t        |i |¤Ž y r   )r   r   s      r!   r"   zTestEqual._assert_func‹  s   € Ü�dÐ%˜fÓ%r#   c                 ó^  — | j                  t        j                  t        j                  «       | j                  t        j                  gt        j                  g«       | j                  t        j                  t        j                  g«       | j                  t        j                  d«       y ©Nr.   )r"   r1   rr   r,   rF   s    r!   Útest_nan_itemszTestEqual.test_nan_itemsŽ  sd   € Ø×Ñœ"Ÿ&™&¤"§&¡&Ô)Ø×Ñœ2Ÿ6™6˜(¤R§V¡V HÔ-Ø×ÑœRŸV™V¤b§f¡f XÔ.Ø×ÑœRŸV™V QÕ'r#   c                 ó  — | j                  t        j                  t        j                  «       | j                  t        j                  gt        j                  g«       | j                  t        j                  t        j                  g«       y r   )r"   r1   r‡   r,   rF   s    r!   Útest_inf_itemszTestEqual.test_inf_items”  sP   € Ø×Ñœ"Ÿ&™&¤"§&¡&Ô)Ø×Ñœ2Ÿ6™6˜(¤R§V¡V HÔ-Ø×ÑœRŸV™V¤b§f¡f XÕ.r#   c                 óÔ  — | j                  t        j                  dd«      t        j                  dd«      «       | j                  t        j                  dd«      t        j                  dd«      «       | j                  t        j                  dd«      t        j                  dd«      «       | j                  t        j                  dd«      t        j                  dd«      «       y )Nú
2017-01-01ÚsÚmz
2017-01-02)r)   r1   Ú
datetime64r,   rF   s    r!   Útest_datetimezTestEqual.test_datetime™  s°   € Ø×ÑÜ�M‰M˜,¨Ó,Ü�M‰M˜,¨Ó,ô	
ð 	×ÑÜ�M‰M˜,¨Ó,Ü�M‰M˜,¨Ó,ô	
ð 	×ÑÜ�M‰M˜,¨Ó,Ü�M‰M˜,¨Ó,ô	
ð 	×ÑÜ�M‰M˜,¨Ó,Ü�M‰M˜,¨Ó,õ	
r#   c                 ó^  — t        j                  d«      }t        j                  dd«      }t        j                  dd«      }t        j                  d«      }t        j                  dd«      }t        j                  dd«      }|||g}|||g}t        j                  ||«      D ]>  \  }	}
| j                  |	|
«       | j                  |	g|
g«       | j                  |	g|
«       Œ@ t        j                  ||«      D ]>  \  }	}
| j                  |	|
«       | j                  |	g|
g«       | j                  |	g|
«       Œ@ t        j                  ||«      D ]Ú  \  }	}
| j                  |	|
«       | j                  |	|
g«       | j                  |	g|
g«       | j                  |	gt        j                  dd«      «       | j                  |
gt        j                  dd«      «       | j                  |	gt        j                  dd«      «       | j                  |
gt        j                  dd«      «       ŒÜ y )NÚNaTrí   Únsrì   é{   )r1   rï   Útimedelta64r‹   rŒ   r"   r,   )r   Únadt_no_unitÚnadt_sÚnadt_dÚnatd_no_unitÚnatd_sÚnatd_dÚdtsÚtdsr'   r(   s              r!   Útest_nat_itemszTestEqual.test_nat_items­  sò  € ä—}‘} UÓ+ˆÜ—‘˜u cÓ*ˆÜ—‘˜u dÓ+ˆä—~‘~ eÓ,ˆÜ—‘  sÓ+ˆÜ—‘  tÓ,ˆà˜V VÐ,ˆØ˜V VÐ,ˆÜ×%Ñ% c¨3Ó/ò 	)‰DˆAˆqØ×Ñ˜a Ô#Ø×Ñ˜q˜c A 3Ô'Ø× Ñ  !  aÕ(ð	)ô
 ×%Ñ% c¨3Ó/ò 	)‰DˆAˆqØ×Ñ˜a Ô#Ø×Ñ˜q˜c A 3Ô'Ø× Ñ  !  aÕ(ð	)ô
 ×%Ñ% c¨3Ó/ò 	@‰DˆAˆqØ× Ñ   AÔ&Ø× Ñ   Q CÔ(Ø× Ñ  !  q cÔ*Ø× Ñ  ! ¤b§m¡m°LÀ#Ó&FÔGØ× Ñ  ! ¤b§m¡m°LÀ#Ó&FÔGØ× Ñ  ! ¤b§n¡n°S¸#Ó&>Ô?Ø× Ñ  ! ¤b§n¡n°S¸#Ó&>Õ?ñ	@r#   c                 óL   — | j                  dd«       | j                  dd«       y )NÚabÚabb)r"   r,   rF   s    r!   Útest_non_numericzTestEqual.test_non_numericÌ  s"   € Ø×Ñ˜$ Ô%Ø×Ñ˜T 5Õ)r#   c                 ó`  — | j                  t        dd«      t        dd«      «       | j                  t        dt        j                  «      t        dt        j                  «      «       | j	                  t        dt        j                  «      t        dd«      «       | j	                  t        t        j                  d«      t        dt        j                  «      «       | j	                  t        t        j                  t        j
                  «      t        t        j                  d«      «       y ©Nr.   r/   )r"   Úcomplexr1   rr   r,   r‡   rF   s    r!   Útest_complex_itemzTestEqual.test_complex_itemÐ  sµ   € Ø×Ñœ' ! Q›-¬°°A«Ô7Ø×Ñœ' !¤R§V¡VÓ,¬g°a¼¿¹Ó.@ÔAØ×ÑœW Q¬¯©Ó/´¸¸A³Ô?Ø×ÑœW¤R§V¡V¨QÓ/´¸¼B¿F¹FÓ1CÔDØ×ÑœW¤R§V¡V¬R¯V©VÓ4´g¼b¿f¹fÀaÓ6HÕIr#   c                 ó`   — | j                  t        j                  t        j                  «       y r   )r,   ÚncuÚPZEROÚNZEROrF   s    r!   Útest_negative_zerozTestEqual.test_negative_zero×  s   € Ø×ÑœSŸY™Y¬¯	©	Õ2r#   c                 ó  — t        j                  t        dd«      t        dt         j                  «      g«      }t        j                  t        dd«      t        dd«      g«      }| j	                  ||«       | j                  ||«       y r  ©r1   r2   r  rr   r"   r,   ©r   rh   ri   s      r!   Útest_complexzTestEqual.test_complexÚ  se   € Ü�H‰H”g˜a “m¤W¨Q´·±Ó%7Ð8Ó9ˆÜ�H‰H”g˜a “m¤W¨Q°£]Ð3Ó4ˆØ×Ñ˜!˜QÔØ×Ñ˜Q Õ"r#   c                 ó®   — dd l }t        j                  |j                  ddd«      |j                  ddd«      g«      }| j                  ||d d d…   «       y )Nr   iÐ  r.   r/   éÿÿÿÿ)Údatetimer1   r2   r,   )r   r  r'   s      r!   Útest_objectzTestEqual.test_objectà  sS   € ãÜ�H‰H�h×'Ñ'¨¨a°Ó3Ø×'Ñ'¨¨a°Ó3ð5ó 6ˆà×Ñ˜Q ¡$ B $¡Õ(r#   N)rH   rI   rJ   r"   rè   rê   rð   rþ   r  r  r  r  r  r   r#   r!   rä   rä   ‰  s6   „ ò&ò(ò/ò

ò(@ò>*òJò3ò#ó)r#   rä   c                   óH   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zy)ÚTestArrayAlmostEqualc                 ó   — t        |i |¤Ž y r   )r   r   s      r!   r"   z!TestArrayAlmostEqual._assert_funcê  s   € Ü! 4Ð2¨6Ó2r#   c                 ó  — d}t        j                  t        t        j                  |«      ¬«      5  | j                  ddd¬«       d d d «       | j                  dgdgd¬«       d}t        j                  t        t        j                  |«      ¬«      5  | j                  dgdgd¬«       d d d «       d	d
g}ddg}d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||d¬«       d d d «       d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||d¬«       d d d «       y # 1 sw Y   �ŒxY w# 1 sw Y   Œ¹xY w# 1 sw Y   ŒpxY w# 1 sw Y   y xY w)Nz}Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.5
Max relative difference among violations: infr`   ç      ø?r¡   r   ©Údecimalçõ…�óþÿ÷?z²Mismatched elements: 1 / 1 (100%)
Mismatch at index:
 [0]: 1.5 (ACTUAL), 0.0 (DESIRED)
Max absolute difference among violations: 1.5
Max relative difference among violations: infge(åÿÿ÷?giUMuÿ>gB?×çÿÿ÷?z¶Mismatched elements: 1 / 2 (50%)
Mismatch at index:
 [1]: 3e-05 (ACTUAL), 0.0 (DESIRED)
Max absolute difference among violations: 3.e-05
Max relative difference among violations: infé   zµMismatched elements: 1 / 2 (50%)
Mismatch at index:
 [1]: 0.0 (ACTUAL), 3e-05 (DESIRED)
Max absolute difference among violations: 3.e-05
Max relative difference among violations: 1.©rb   rc   r+   rf   rg   r"   )r   rl   r'   r(   s       r!   Útest_closenessz#TestArrayAlmostEqual.test_closenessí  sg  € ðHˆô �]‰]œ>´·±¸<Ó1HÔIñ 	3Ø×Ñ˜c 3°ÐÔ2÷	3ð 	×Ñ˜8˜* s e°QÐÔ7ðHˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	7Ø×Ñ˜s˜e c U°AÐÔ6÷	7ð ˜Ð ˆØ˜ˆOˆðHˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	/Ø×Ñ˜a ¨AÐÔ.÷	/ðGˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	/Ø×Ñ˜a ¨AÐÔ.÷	/ð 	/÷;	3ñ 	3ú÷	7ð 	7ú÷	/ð 	/ú÷	/ð 	/ús/   ±EÂE#Ã+E/Ä8E;ÅE Å#E,Å/E8Å;Fc                 ó^  — t        j                  dg«      }t        j                  dg«      }| j                  ||d¬«       | j                  ||d¬«       d}t        j                  t
        t        j                  |«      ¬«      5  | j                  ||d¬«       d d d «       y # 1 sw Y   y xY w)	Ng¯”eˆãH“@gšwœ¢ãH“@r8   r  r9   zÌMismatched elements: 1 / 1 (100%)
Mismatch at index:
 [0]: 1234.2222 (ACTUAL), 1234.2223 (DESIRED)
Max absolute difference among violations: 1.e-04
Max relative difference among violations: 8.10226812e-08r`   é   ©r1   r2   r"   rb   rc   r+   rf   rg   ©r   rh   ri   rl   s       r!   Útest_simplez TestArrayAlmostEqual.test_simple  s–   € Ü�H‰H�i�[Ó!ˆÜ�H‰H�i�[Ó!ˆà×Ñ˜!˜Q¨ÐÔ*Ø×Ñ˜!˜Q¨ÐÔ*ð)ˆô �]‰]œ>´·±¸<Ó1HÔIñ 	/Ø×Ñ˜a ¨AÐÔ.÷	/÷ 	/ñ 	/ús   ÂB#Â#B,c                 óä  — g d¢}d}d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||d¬«       d d d «       d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||d¬«       d d d «       ddg}d	}t        j                  t        t        j                  |«      ¬«      5  | j                  ||d
¬«       d d d «       d}d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||d
¬«       d d d «       y # 1 sw Y   Œ÷xY w# 1 sw Y   Œ¶xY w# 1 sw Y   ŒqxY w# 1 sw Y   y xY w)N)çŒmlzµ@gHPüXŒŠ@r¡   r%  zñMismatched elements: 2 / 3 (66.7%)
Mismatch at indices:
 [1]: 849.54345 (ACTUAL), 5498.42354 (DESIRED)
 [2]: 0.0 (ACTUAL), 5498.42354 (DESIRED)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: 1.r`   é	   r  zøMismatched elements: 2 / 3 (66.7%)
Mismatch at indices:
 [1]: 5498.42354 (ACTUAL), 849.54345 (DESIRED)
 [2]: 5498.42354 (ACTUAL), 0.0 (DESIRED)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: 5.4722099r¡   z¿Mismatched elements: 1 / 2 (50%)
Mismatch at index:
 [1]: 5498.42354 (ACTUAL), 0.0 (DESIRED)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: infr  r   z½Mismatched elements: 1 / 2 (50%)
Mismatch at index:
 [0]: 5498.42354 (ACTUAL), 0 (DESIRED)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: infr  r½   s       r!   Útest_array_vs_scalarz)TestArrayAlmostEqual.test_array_vs_scalar)  sP  € Ú)ˆØˆðGˆô �]‰]œ>´·±¸<Ó1HÔIñ 	/Ø×Ñ˜a ¨AÐÔ.÷	/ðNˆô �]‰]œ>´·±¸<Ó1HÔIñ 	/Ø×Ñ˜a ¨AÐÔ.÷	/ð ˜ÐˆðHˆô �]‰]œ>´·±¸<Ó1HÔIñ 	/Ø×Ñ˜a ¨AÐÔ.÷	/ð ˆðHˆô �]‰]œ>´·±¸<Ó1HÔIñ 	/Ø×Ñ˜a ¨AÐÔ.÷	/ð 	/÷=	/ð 	/ú÷	/ð 	/ú÷	/ð 	/ú÷	/ð 	/ús/   ·EÂEÃEÄ$E&ÅEÅEÅE#Å&E/c                 ój  ‡ ‡‡‡— t        j                  t         j                  g«      Št        j                  dg«      Št        j                  t         j                  g«      Š‰ j	                  ‰‰«       t        t        ˆˆˆ fd„«       t        t        ˆˆˆ fd„«       t        t        ˆˆˆ fd„«       y )Nr.   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   ©ÚananÚaoner   s   €€€r!   ú<lambda>z/TestArrayAlmostEqual.test_nan.<locals>.<lambda>Z  ó   ø€ ˜d×/Ñ/°°dÓ;€ r#   c                  ó(   •— ‰j                  ‰‰ «      S r   r%   ©Úainfr+  r   s   €€€r!   r-  z/TestArrayAlmostEqual.test_nan.<locals>.<lambda>\  r.  r#   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   r0  s   €€€r!   r-  z/TestArrayAlmostEqual.test_nan.<locals>.<lambda>^  r.  r#   ©r1   r2   rr   r‡   r"   r   r+   ©r   r1  r+  r,  s   `@@@r!   Útest_nanzTestArrayAlmostEqual.test_nanT  sq   û€ Ü�x‰xœŸ™˜Ó!ˆÜ�x‰x˜˜‹}ˆÜ�x‰xœŸ™˜Ó!ˆØ×Ñ˜$ Ô%Ü”nÝ;ô	=ä”nÝ;ô	=ä”nÝ;õ	=r#   c                 ó  ‡ ‡‡— t        j                  ddgddgg«      Š‰j                  «       Št         j                  ‰d<   t	        t
        ˆˆˆ fd„«       t         j                   ‰d<   t	        t
        ˆˆˆ fd„«       y )NrŸ   r    r€   r�   )r   r   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   ©r'   r(   r   s   €€€r!   r-  z/TestArrayAlmostEqual.test_inf.<locals>.<lambda>e  ó   ø€ ˜d×/Ñ/°°1Ó5€ r#   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   r8  s   €€€r!   r-  z/TestArrayAlmostEqual.test_inf.<locals>.<lambda>h  r9  r#   )r1   r2   rS   r‡   r   r+   r&   s   `@@r!   Útest_infzTestArrayAlmostEqual.test_inf`  s_   ú€ Ü�H‰H�r˜2�h  R Ð)Ó*ˆØ�F‰F‹HˆÜ—&‘&ˆˆ$‰Ü”nÝ5ô	7ä—6‘6�'ˆˆ$‰Ü”nÝ5õ	7r#   c                 óR  — t        j                  t         j                  dz   ddg«      }|j                  «       }| j	                  ||«       d|d<   d}t        j                  t        t        j                  |«      ¬«      5  | j	                  ||«       d d d «       y # 1 sw Y   y xY w)Nù              ð?y       @      ð?y      @      ð?r.   z‹Mismatched elements: 1 / 3 (33.3%)
Mismatch at index:
 [1]: (2+1j) (ACTUAL), (3+1j) (DESIRED)
Max absolute difference among violations: 1.
r`   )
r1   r2   r‡   rS   r"   rb   rc   r+   rf   rg   r½   s       r!   Útest_complex_infz%TestArrayAlmostEqual.test_complex_infj  s‰   € Ü�H‰H”b—f‘f˜s‘l H¨hÐ7Ó8ˆØ�F‰F‹HˆØ×Ñ˜!˜QÔØˆˆ!‰ðIˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$÷ 	$ñ 	$ús   ÂBÂB&c                 óÜ  — t        j                  ddgddgg«      }t         j                  j                  ddgddggddgddgg«      }| j	                  ||«       | j	                  ||«       | j	                  ||«       t         j                  j                  dd¬	«      }t        j                  g d
¢«      }| j                  ||«       | j                  ||«       t         j                  j                  }t        j                  g d
¢«      }| j                  ||«       | j                  ||«       t         j                  j                  g d
¢g d¢¬	«      }t        j                  g d¢«      }| j                  ||«       | j                  ||«       t         j                  j                  g d
¢g d¢¬	«      }t        j                  d«      }| j                  ||«       | j                  ||«       y )NrŸ   r    r€   r�   r¡   FTg      @rƒ   r   )TTT)rŸ   r    r€   )r1   r2   r…   Úmasked_arrayr"   r†   r)   Úmaskedr&   s      r!   Útest_subclassz"TestArrayAlmostEqual.test_subclassv  s”  € Ü�H‰H�r˜2�h  R Ð)Ó*ˆÜ�E‰E×Ñ  R ¨2¨r¨(Ð3Ø!&¨ °°u°Ð>ó@ˆà×Ñ˜!˜QÔØ×Ñ˜!˜QÔØ×Ñ˜!˜QÔô �E‰E×Ñ˜c¨ÐÓ-ˆÜ�H‰H’]Ó#ˆØ×Ñ˜˜AÔØ×Ñ˜˜AÔÜ�E‰E�L‰LˆÜ�H‰H’]Ó#ˆØ×Ñ˜˜AÔØ×Ñ˜˜AÔÜ�E‰E×ÑšmÒ2DÐÓEˆÜ�H‰H’\Ó"ˆØ×Ñ˜˜AÔØ×Ñ˜˜AÔÜ�E‰E×ÑšmÒ2DÐÓEˆÜ�H‰H�R‹LˆØ×Ñ˜˜AÔØ×Ñ˜˜AÕr#   c                 ó  —  G d„ dt         j                  «      }t        j                  ddg«      j                  |«      }| j	                  ||«       t        j                  ddg«      j                  |«      }t        |«       t        j                  ddg«      j                  |«      }d}t        j                  t        t        j                  |«      ¬«      5  | j	                  ||«       d d d «       y # 1 sw Y   y xY w)	Nc                   ó.   ‡ — e Zd Zˆ fd„Zˆ fd„Zd„ Zˆ xZS )ú5TestArrayAlmostEqual.test_subclass_2.<locals>.MyArrayc                 ó\   •— t         ‰| �  |«      j                  t        j                  «      S r   ©Úsuperr›   r£   r1   r¢   ©r   rš   Ú	__class__s     €r!   r›   z<TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.__eq__–  ó!   ø€ Ü‘w‘~ eÓ,×1Ñ1´"·*±*Ó=Ð=r#   c                 ó\   •— t         ‰| �  |«      j                  t        j                  «      S r   ©rH  Ú__lt__r£   r1   r¢   rI  s     €r!   rN  z<TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.__lt__™  rK  r#   c                 ó   — t        | «      S r   r¯   r   s      r!   r˜   z9TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.allœ  s   € Ü˜4“yÐ r#   ©rH   rI   rJ   r›   rN  r˜   Ú__classcell__©rJ  s   @r!   rž   rE  •  s   ø„ ô>ô>ö!r#   rž   rŸ   r    TéÊ   z¸Mismatched elements: 1 / 2 (50%)
Mismatch at index:
 [1]: 2.0 (ACTUAL), 202.0 (DESIRED)
Max absolute difference among violations: 200.
Max relative difference among violations: 0.99009r`   )r1   r¢   r2   r£   r"   r˜   rb   rc   r+   rf   rg   )r   rž   r'   Úzr(   rl   s         r!   Útest_subclass_2z$TestArrayAlmostEqual.test_subclass_2�  sÈ   € ô
	!”b—j‘jô 	!ô �H‰H�b˜"�XÓ×#Ñ# GÓ,ˆØ×Ñ˜!˜QÔä�H‰H�d˜D�\Ó"×'Ñ'¨Ó0ˆÜˆAŒÜ�H‰H�b˜#�YÓ×$Ñ$ WÓ-ˆðLˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$÷ 	$ñ 	$ús   ÃC5Ã5C>c                 ó¦   —  G d„ dt         j                  «      }t        j                  ddg«      j                  |«      }| j	                  ||«       y )Nc                   ó.   ‡ — e Zd Zˆ fd„Zˆ fd„Zd„ Zˆ xZS )úGTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArrayc                 ó\   •— t         ‰| �  |«      j                  t        j                  «      S r   rG  rI  s     €r!   r›   zNTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__eq__³  rK  r#   c                 ó\   •— t         ‰| �  |«      j                  t        j                  «      S r   rM  rI  s     €r!   rN  zNTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__lt__¶  rK  r#   c                 ó   — t         ‚r   ©ÚNotImplementedErrorr   s      r!   r˜   zKTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.all¹  ó   € Ü)Ð)r#   rP  rR  s   @r!   rž   rX  ²  ó   ø„ ô>ô>ö*r#   rž   rŸ   r    ©r1   r¢   r2   r£   r"   ©r   rž   r'   s      r!   Ú!test_subclass_that_cannot_be_boolz6TestArrayAlmostEqual.test_subclass_that_cannot_be_bool­  óA   € ô
	*”b—j‘jô 	*ô �H‰H�b˜"�XÓ×#Ñ# GÓ,ˆØ×Ñ˜!˜QÕr#   N)rH   rI   rJ   r"   r  r#  r'  r5  r;  r>  rB  rU  rb  r   r#   r!   r  r  è  s6   „ ò3ò)/òV/ò")/òV
=ò7ò
$òò4$ó: r#   r  c                   óH   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zy)ÚTestAlmostEqualc                 ó   — t        |i |¤Ž y r   )r   r   s      r!   r"   zTestAlmostEqual._assert_funcÂ  ó   € Ü˜TÐ, VÓ,r#   c                 ó¦   ‡ — ‰ j                  ddd¬«       t        t        ˆ fd„«       ‰ j                  dgdgd¬«       t        t        ˆ fd„«       y )Nr  r¡   r   r  c                  ó,   •— ‰ j                  ddd¬«      S ©Nr  r¡   r   r  r%   rF   s   €r!   r-  z0TestAlmostEqual.test_closeness.<locals>.<lambda>Ï  s   ø€ ˜d×/Ñ/°°SÀ!Ð/ÓD€ r#   c                  ó0   •— ‰ j                  dgdgd¬«      S rj  r%   rF   s   €r!   r-  z0TestAlmostEqual.test_closeness.<locals>.<lambda>Ô  s   ø€ ˜d×/Ñ/°°¸°uÀaÐ/ÓH€ r#   ©r"   r   r+   rF   s   `r!   r  zTestAlmostEqual.test_closenessÅ  sQ   ø€ ð 	×Ñ˜( C°ÐÔ3Ü”nÛDô	Fð 	×Ñ˜8˜* s e°QÐÔ7Ü”nÛHõ	Jr#   c                 óÔ   ‡ — ‰ j                  t        j                  t        j                  «       t        t        ˆ fd„«       t        t        ˆ fd„«       t        t        ˆ fd„«       y )Nc                  óD   •— ‰ j                  t        j                  d«      S rç   )r"   r1   rr   rF   s   €r!   r-  z/TestAlmostEqual.test_nan_item.<locals>.<lambda>Ù  ó   ø€ ˜d×/Ñ/´·±¸Ó:€ r#   c                  ó`   •— ‰ j                  t        j                  t        j                  «      S r   )r"   r1   rr   r‡   rF   s   €r!   r-  z/TestAlmostEqual.test_nan_item.<locals>.<lambda>Û  ó   ø€ ˜d×/Ñ/´·±¼¿¹Ó?€ r#   c                  ó`   •— ‰ j                  t        j                  t        j                  «      S r   )r"   r1   r‡   rr   rF   s   €r!   r-  z/TestAlmostEqual.test_nan_item.<locals>.<lambda>Ý  rq  r#   )r"   r1   rr   r   r+   rF   s   `r!   Útest_nan_itemzTestAlmostEqual.test_nan_itemÖ  sD   ø€ Ø×Ñœ"Ÿ&™&¤"§&¡&Ô)Ü”nÛ:ô	<ä”nÛ?ô	Aä”nÛ?õ	Ar#   c                 ó  ‡ — ‰ j                  t        j                  t        j                  «       ‰ j                  t        j                   t        j                   «       t        t        ˆ fd„«       t        t        ˆ fd„«       y )Nc                  óD   •— ‰ j                  t        j                  d«      S rç   ©r"   r1   r‡   rF   s   €r!   r-  z/TestAlmostEqual.test_inf_item.<locals>.<lambda>ã  ro  r#   c                  ób   •— ‰ j                  t        j                   t        j                  «      S r   rv  rF   s   €r!   r-  z/TestAlmostEqual.test_inf_item.<locals>.<lambda>å  s   ø€ ˜d×/Ñ/´·±°¼¿¹Ó@€ r#   )r"   r1   r‡   r   r+   rF   s   `r!   Útest_inf_itemzTestAlmostEqual.test_inf_itemß  sR   ø€ Ø×Ñœ"Ÿ&™&¤"§&¡&Ô)Ø×Ñœ2Ÿ6™6˜'¤B§F¡F 7Ô+Ü”nÛ:ô	<ä”nÛ@õ	Br#   c                 ó(   — | j                  dd«       y r  )r,   rF   s    r!   Útest_simple_itemz TestAlmostEqual.test_simple_itemç  s   € Ø×Ñ˜Q Õ"r#   c                 ó  — | j                  t        dd«      t        dd«      «       | j                  t        dt        j                  «      t        dt        j                  «      «       | j                  t        t        j                  t        j                  «      t        t        j                  t        j                  «      «       | j                  t        dt        j                  «      t        dd«      «       | j                  t        t        j                  d«      t        dt        j                  «      «       | j                  t        t        j                  t        j                  «      t        t        j                  d«      «       y r  )r"   r  r1   rr   r‡   r,   rF   s    r!   r  z!TestAlmostEqual.test_complex_itemê  sã   € Ø×Ñœ' ! Q›-¬°°A«Ô7Ø×Ñœ' !¤R§V¡VÓ,¬g°a¼¿¹Ó.@ÔAØ×Ñœ'¤"§&¡&¬"¯&©&Ó1´7¼2¿6¹6Ä2Ç6Á6Ó3JÔKØ×ÑœW Q¬¯©Ó/´¸¸A³Ô?Ø×ÑœW¤R§V¡V¨QÓ/´¸¼B¿F¹FÓ1CÔDØ×ÑœW¤R§V¡V¬R¯V©VÓ4´g¼b¿f¹fÀaÓ6HÕIr#   c                 óª  — t        j                  t        dd«      t        dt         j                  «      g«      }t        j                  t        dd«      t        t         j                  d«      g«      }t        j                  t        dd«      t        dd«      g«      }| j	                  ||«       | j                  ||«       | j                  ||«       y r  r  )r   rh   rT  ri   s       r!   r  zTestAlmostEqual.test_complexò  s™   € Ü�H‰H”g˜a “m¤W¨Q´·±Ó%7Ð8Ó9ˆÜ�H‰H”g˜a “m¤W¬R¯V©V°QÓ%7Ð8Ó9ˆÜ�H‰H”g˜a “m¤W¨Q°£]Ð3Ó4ˆØ×Ñ˜!˜QÔØ×Ñ˜Q Ô"Ø×Ñ˜Q Õ"r#   c                 ó  — t        j                  g d¢«      }t        j                  g d¢«      }d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||d¬«       ddd«       d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       ddd«       t        j                  t         j                  d	g«      }t        j                  t         j                  d
g«      }d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       ddd«       t        j                  d
dg«      }t        j                  d	d	g«      }d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       ddd«       y# 1 sw Y   �ŒdxY w# 1 sw Y   �Œ&xY w# 1 sw Y   Œ�xY w# 1 sw Y   yxY w)zŠCheck the message is formatted correctly for the decimal value.
           Also check the message when input includes inf or nan (gh12200))gì¯    ð?gì¯     @rÎ   )gØ_   ð?gâ    @rÑ   a³  Mismatched elements: 3 / 3 (100%)
Mismatch at indices:
 [0]: 1.00000000001 (ACTUAL), 1.00000000002 (DESIRED)
 [1]: 2.00000000002 (ACTUAL), 2.00000000003 (DESIRED)
 [2]: 3.00003 (ACTUAL), 3.00004 (DESIRED)
Max absolute difference among violations: 1.e-05
Max relative difference among violations: 3.33328889e-06
 ACTUAL: array([1.00000000001, 2.00000000002, 3.00003      ])
 DESIRED: array([1.00000000002, 2.00000000003, 3.00004      ])r`   é   r  Na"  Mismatched elements: 1 / 3 (33.3%)
Mismatch at index:
 [2]: 3.00003 (ACTUAL), 3.00004 (DESIRED)
Max absolute difference among violations: 1.e-05
Max relative difference among violations: 3.33328889e-06
 ACTUAL: array([1.     , 2.     , 3.00003])
 DESIRED: array([1.     , 2.     , 3.00004])r   r.   zæMismatched elements: 1 / 2 (50%)
Mismatch at index:
 [1]: 0.0 (ACTUAL), 1.0 (DESIRED)
Max absolute difference among violations: 1.
Max relative difference among violations: 1.
 ACTUAL: array([inf,  0.])
 DESIRED: array([inf,  1.])r/   zÌMismatched elements: 2 / 2 (100%)
Mismatch at indices:
 [0]: 1 (ACTUAL), 0 (DESIRED)
 [1]: 2 (ACTUAL), 0 (DESIRED)
Max absolute difference among violations: 2
Max relative difference among violations: inf)	r1   r2   rb   rc   r+   rf   rg   r"   r‡   r"  s       r!   Útest_error_messagez"TestAlmostEqual.test_error_messageú  s—  € ô �H‰HÒ<Ó=ˆÜ�H‰HÒ<Ó=ˆð*ˆô �]‰]œ>´·±¸<Ó1HÔIñ 	0Ø×Ñ˜a ¨BÐÔ/÷	0ðGˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ô �H‰H”b—f‘f˜a�[Ó!ˆÜ�H‰H”b—f‘f˜a�[Ó!ˆð6ˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ô �H‰H�a˜�VÓˆÜ�H‰H�a˜�VÓˆðHˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ð 	$÷O	0ñ 	0ú÷	$ñ 	$ú÷	$ð 	$ú÷	$ð 	$ús0   ÁGÂ,G#ÅG0Æ:G<ÇG Ç#G-Ç0G9Ç<Hc                 ó¾  — 	 d}t        j                  d«      }d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       ddd«       d}t        j                  d«      }d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       ddd«       y# 1 sw Y   ŒlxY w# 1 sw Y   yxY w)z)Check the message is formatted correctly r/   é   a@  Mismatched elements: 20 / 20 (100%)
First 5 mismatches are at indices:
 [0]: 2 (ACTUAL), 1.0 (DESIRED)
 [1]: 2 (ACTUAL), 1.0 (DESIRED)
 [2]: 2 (ACTUAL), 1.0 (DESIRED)
 [3]: 2 (ACTUAL), 1.0 (DESIRED)
 [4]: 2 (ACTUAL), 1.0 (DESIRED)
Max absolute difference among violations: 1.
Max relative difference among violations: 1.r`   NaA  Mismatched elements: 20 / 20 (100%)
First 5 mismatches are at indices:
 [0]: 1.0 (ACTUAL), 2 (DESIRED)
 [1]: 1.0 (ACTUAL), 2 (DESIRED)
 [2]: 1.0 (ACTUAL), 2 (DESIRED)
 [3]: 1.0 (ACTUAL), 2 (DESIRED)
 [4]: 1.0 (ACTUAL), 2 (DESIRED)
Max absolute difference among violations: 1.
Max relative difference among violations: 0.5)r1   Úonesrb   rc   r+   rf   rg   r"   r"  s       r!   Útest_error_message_2z$TestAlmostEqual.test_error_message_28  s¼   € à-ØˆÜ�G‰G�B‹KˆðGˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ð ˆÜ�G‰G�B‹KˆðHˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ð 	$÷	$ð 	$ú÷	$ð 	$ús   Á	CÂ+CÃCÃCc                 ó¦   —  G d„ dt         j                  «      }t        j                  ddg«      j                  |«      }| j	                  ||«       y )Nc                   ó.   ‡ — e Zd Zˆ fd„Zˆ fd„Zd„ Zˆ xZS )úBTestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArrayc                 ó\   •— t         ‰| �  |«      j                  t        j                  «      S r   rG  rI  s     €r!   r›   zITestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__eq__]  rK  r#   c                 ó\   •— t         ‰| �  |«      j                  t        j                  «      S r   rM  rI  s     €r!   rN  zITestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__lt__`  rK  r#   c                 ó   — t         ‚r   r\  r   s      r!   r˜   zFTestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.allc  r^  r#   rP  rR  s   @r!   rž   r†  \  r_  r#   rž   rŸ   r    r`  ra  s      r!   rb  z1TestAlmostEqual.test_subclass_that_cannot_be_boolW  rc  r#   N)rH   rI   rJ   r"   r  rs  rx  rz  r  r  r  rƒ  rb  r   r#   r!   re  re  À  s9   „ ò-òJò"AòBò#òJò#ò<$ò|$ó> r#   re  c                   ó*   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestApproxEqualc                 ó   — t        |i |¤Ž y r   )r   r   s      r!   r"   zTestApproxEqual._assert_funcl  rg  r#   c                 óØ   ‡ ‡‡— t        j                  d«      Št        j                  d«      Š‰ j                  ‰‰d¬«       ‰ j                  ‰‰d¬«       t        t        ˆ ˆˆfd„«       y )Nç{®GáH“@çR¸…ëH“@r   ©Úsignificanté   c                  ó,   •— ‰ j                  ‰‰d¬«      S ©Nr  r�  r%   r  s   €€€r!   r-  z7TestApproxEqual.test_simple_0d_arrays.<locals>.<lambda>v  ó   ø€ ˜d×/Ñ/°°1À!Ð/ÓD€ r#   )r1   r2   r"   r   r+   r  s   `@@r!   Útest_simple_0d_arraysz%TestApproxEqual.test_simple_0d_arrayso  sW   ú€ Ü�H‰H�WÓˆÜ�H‰H�WÓˆà×Ñ˜!˜Q¨AÐÔ.Ø×Ñ˜!˜Q¨AÐÔ.Ü”nÝDõ	Fr#   c                 ó´   ‡ ‡‡— dŠdŠ‰ j                  ‰‰d¬«       ‰ j                  ‰‰d¬«       ‰ j                  ‰‰d¬«       t        t        ˆ ˆˆfd„«       y )NrŽ  r�  r9   r�  r   r’  c                  ó,   •— ‰ j                  ‰‰d¬«      S r”  r%   r  s   €€€r!   r-  z3TestApproxEqual.test_simple_items.<locals>.<lambda>€  r•  r#   rl  r  s   `@@r!   Útest_simple_itemsz!TestApproxEqual.test_simple_itemsx  sZ   ú€ ØˆØˆà×Ñ˜!˜Q¨AÐÔ.Ø×Ñ˜!˜Q¨AÐÔ.Ø×Ñ˜!˜Q¨AÐÔ.Ü”nÝDõ	Fr#   c                 ód  ‡ ‡‡‡— t        j                  t         j                  «      Št        j                  d«      Št        j                  t         j                  «      Š‰ j	                  ‰‰«       t        t        ˆˆˆ fd„«       t        t        ˆˆˆ fd„«       t        t        ˆˆˆ fd„«       y )Nr.   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   r*  s   €€€r!   r-  z0TestApproxEqual.test_nan_array.<locals>.<lambda>‡  ó   ø€ ¨d×.?Ñ.?ÀÀdÓ.K€ r#   c                  ó(   •— ‰j                  ‰‰ «      S r   r%   r0  s   €€€r!   r-  z0TestApproxEqual.test_nan_array.<locals>.<lambda>ˆ  rœ  r#   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   r0  s   €€€r!   r-  z0TestApproxEqual.test_nan_array.<locals>.<lambda>‰  rœ  r#   r3  r4  s   `@@@r!   rt   zTestApproxEqual.test_nan_array‚  óe   û€ Ü�x‰xœŸ™ÓˆÜ�x‰x˜‹{ˆÜ�x‰xœŸ™ÓˆØ×Ñ˜$ Ô%Ü”nÕ&KÔLÜ”nÕ&KÔLÜ”nÕ&KÕLr#   c                 ód  ‡ ‡‡‡— t        j                  t         j                  «      Št        j                  d«      Št        j                  t         j                  «      Š‰ j	                  ‰‰«       t        t        ˆˆˆ fd„«       t        t        ˆˆˆ fd„«       t        t        ˆˆˆ fd„«       y )Nr.   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   r*  s   €€€r!   r-  z0TestApproxEqual.test_nan_items.<locals>.<lambda>�  rœ  r#   c                  ó(   •— ‰j                  ‰‰ «      S r   r%   r0  s   €€€r!   r-  z0TestApproxEqual.test_nan_items.<locals>.<lambda>‘  rœ  r#   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   r0  s   €€€r!   r-  z0TestApproxEqual.test_nan_items.<locals>.<lambda>’  rœ  r#   r3  r4  s   `@@@r!   rè   zTestApproxEqual.test_nan_items‹  rŸ  r#   N)rH   rI   rJ   r"   r–  r™  rt   rè   r   r#   r!   r‹  r‹  j  s   „ ò-òFòFòMóMr#   r‹  c                   óT   — 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y)ÚTestArrayAssertLessc                 ó   — t        |i |¤Ž y r   )r   r   s      r!   r"   z TestArrayAssertLess._assert_func—  s   € Ü˜4Ð* 6Ó*r#   c                 ó@  ‡ ‡‡— t        j                  ddg«      Št        j                  ddg«      Š‰ j                  ‰‰«       t        t        ˆ ˆˆfd„«       t        j                  ddg«      Št        t        ˆ ˆˆfd„«       t        t        ˆ ˆˆfd„«       t        j                  g d	¢«      }t        j                  g d
¢«      }d}t        j                  t        t        j                  |«      ¬«      5  ‰ j                  ||«       d d d «       y # 1 sw Y   y xY w)Nçš™™™™™ñ?çš™™™™™@ç333333ó?çffffff@c                  ó(   •— ‰ j                  ‰‰«      S r   r%   r  s   €€€r!   r-  z8TestArrayAssertLess.test_simple_arrays.<locals>.<lambda>Ÿ  ó   ø€ ¨d×.?Ñ.?ÀÀ1Ó.E€ r#   rŸ   c                  ó(   •— ‰ j                  ‰‰«      S r   r%   r  s   €€€r!   r-  z8TestArrayAssertLess.test_simple_arrays.<locals>.<lambda>£  r­  r#   c                  ó(   •— ‰ j                  ‰‰«      S r   r%   r  s   €€€r!   r-  z8TestArrayAssertLess.test_simple_arrays.<locals>.<lambda>¤  r­  r#   )r.   r8   r’  r�  )r/   r9   r’  é   z·Mismatched elements: 2 / 4 (50%)
Mismatch at indices:
 [2]: 6 (x), 6 (y)
 [3]: 20 (x), 8 (y)
Max absolute difference among violations: 12
Max relative difference among violations: 1.5r`   )	r1   r2   r"   r   r+   rb   rc   rf   rg   )r   r'   r(   rl   rh   ri   s   `   @@r!   Útest_simple_arraysz&TestArrayAssertLess.test_simple_arraysš  sÌ   ú€ Ü�H‰H�c˜3�ZÓ ˆÜ�H‰H�c˜3�ZÓ ˆà×Ñ˜!˜QÔÜ”nÕ&EÔFä�H‰H�c˜3�ZÓ ˆä”nÕ&EÔFÜ”nÕ&EÔFä�H‰H’]Ó#ˆÜ�H‰H’\Ó"ˆðHˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$÷ 	$ñ 	$ús   Ã8DÄDc                 óÒ  ‡ ‡‡— t        j                  ddgddgg«      Št        j                  ddgddgg«      Š‰ j                  ‰‰«       d	}t        j                  t
        t        j                  |«      ¬
«      5  ‰ j                  ‰‰«       d d d «       t        j                  ddgddgg«      Št        t
        ˆ ˆˆfd„«       t        t
        ˆ ˆˆfd„«       y # 1 sw Y   ŒOxY w)Nr¨  r©  çffffff
@gš™™™™™@rª  r«  g333333@g      @a  Mismatched elements: 4 / 4 (100%)
Mismatch at indices:
 [0, 0]: 1.2 (x), 1.1 (y)
 [0, 1]: 2.3 (x), 2.2 (y)
 [1, 0]: 3.4 (x), 3.3 (y)
 [1, 1]: 4.5 (x), 4.4 (y)
Max absolute difference among violations: 0.1
Max relative difference among violations: 0.09090909r`   rŸ   c                  ó(   •— ‰ j                  ‰‰«      S r   r%   r  s   €€€r!   r-  z0TestArrayAssertLess.test_rank2.<locals>.<lambda>Ã  r­  r#   c                  ó(   •— ‰ j                  ‰‰«      S r   r%   r  s   €€€r!   r-  z0TestArrayAssertLess.test_rank2.<locals>.<lambda>Ä  r­  r#   )	r1   r2   r"   rb   rc   r+   rf   rg   r   ©r   rl   rh   ri   s   ` @@r!   Ú
test_rank2zTestArrayAssertLess.test_rank2²  sÂ   ú€ Ü�H‰H�s˜C�j 3¨ *Ð-Ó.ˆÜ�H‰H�s˜C�j 3¨ *Ð-Ó.ˆà×Ñ˜!˜QÔðOˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ô �H‰H�s˜C�j 3¨ *Ð-Ó.ˆÜ”nÕ&EÔFÜ”nÕ&EÕF÷	$ð 	$ús   Á<CÃC&c                 ó˜  ‡ ‡‡— t        j                  d¬«      Št        j                  d¬«      dz   Š‰ j                  ‰‰«       t        t        ˆ ˆˆfd„«       d‰d<   d}t        j                  t        t        j                  |«      ¬«      5  ‰ j                  ‰‰«       d d d «       t        t        ˆ ˆˆfd	„«       y # 1 sw Y   ŒxY w)
N)r/   r/   r/   )Úshaper.   c                  ó(   •— ‰ j                  ‰‰«      S r   r%   r  s   €€€r!   r-  z0TestArrayAssertLess.test_rank3.<locals>.<lambda>Ë  r­  r#   r   )r   r   r   z­Mismatched elements: 1 / 8 (12.5%)
Mismatch at index:
 [0, 0, 0]: 1.0 (x), 0.0 (y)
Max absolute difference among violations: 1.
Max relative difference among violations: infr`   c                  ó(   •— ‰ j                  ‰‰«      S r   r%   r  s   €€€r!   r-  z0TestArrayAssertLess.test_rank3.<locals>.<lambda>Ö  r­  r#   )	r1   r‚  r"   r   r+   rb   rc   rf   rg   r¶  s   ` @@r!   Ú
test_rank3zTestArrayAssertLess.test_rank3Æ  s›   ú€ Ü�G‰G˜)Ô$ˆÜ�G‰G˜)Ô$ qÑ(ˆà×Ñ˜!˜QÔÜ”nÕ&EÔFàˆˆ'‰
ðHˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ô 	”nÕ&EÕF÷	$ð 	$ús   ÂC Ã C	c                 ó¸  ‡ ‡‡— dŠdŠ‰ j                  ‰‰«       d}t        j                  t        t	        j
                  |«      ¬«      5  ‰ j                  ‰‰«       d d d «       t        j                  ddg«      Š‰ j                  ‰‰«       t        t        ˆ ˆˆfd„«       t        j                  ddg«      Št        t        ˆ ˆˆfd„«       y # 1 sw Y   ŒtxY w)	Nr¨  r©  z|Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.1
Max relative difference among violations: 1.r`   r³  c                  ó(   •— ‰ j                  ‰‰«      S r   r%   r  s   €€€r!   r-  z7TestArrayAssertLess.test_simple_items.<locals>.<lambda>æ  r­  r#   rŸ   c                  ó(   •— ‰ j                  ‰‰«      S r   r%   r  s   €€€r!   r-  z7TestArrayAssertLess.test_simple_items.<locals>.<lambda>ê  r­  r#   )	r"   rb   rc   r+   rf   rg   r1   r2   r   r¶  s   ` @@r!   r™  z%TestArrayAssertLess.test_simple_itemsØ  s¯   ú€ ØˆØˆà×Ñ˜!˜QÔðGˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ô �H‰H�c˜3�ZÓ ˆà×Ñ˜!˜QÔÜ”nÕ&EÔFä�H‰H�c˜3�ZÓ ˆä”nÕ&EÕF÷	$ð 	$ús   Á
CÃCc                 ó,  — t        j                  g d¢g d¢g d¢g«      }d}| j                  ||«       d}| j                  ||«       t        j                  g d¢g d¢g d¢g«      }d	}d
}t        j                  t
        t        j                  |«      ¬«      5  | j                  ||«       d d d «       d}t        j                  t
        t        j                  |«      ¬«      5  | j                  ||«       d d d «       y # 1 sw Y   ŒUxY w# 1 sw Y   y xY w)N)g.c}Ãjƒ@g±áé•²hx@gÄ|yöÅE@gã¥›Ä “ƒ@)g…ëQ¸EK@gH¿}¸šƒ@g      *@çV-²Xy@)ç�Âõ(\ü€@ç®Gáz® @ç˜nƒÀâV@gÍÌÌÌÌÔt@g…ëQ¸šƒ@gmXSY® @)gŒ¹k	ù @g6<½R­¢@g˜//À¾8{@gÓMbÐµÎA)g×£p=ŠIµ@çHáze}.Ag=
×£øÏÿ@rÁ  )rÂ  rÃ  rÄ  g¼‘ye}.ArÅ  z¶Mismatched elements: 1 / 12 (8.33%)
Mismatch at index:
 [1, 1]: 999090.54 (x), 999090.54 (y)
Max absolute difference among violations: 0.
Max relative difference among violations: 0.r`   ap  Mismatched elements: 12 / 12 (100%)
First 5 mismatches are at indices:
 [0, 0]: 999090.54 (x), 3.4536 (y)
 [0, 1]: 999090.54 (x), 2390.5436 (y)
 [0, 2]: 999090.54 (x), 435.54657 (y)
 [0, 3]: 999090.54 (x), 324525.4535 (y)
 [1, 0]: 999090.54 (x), 5449.54 (y)
Max absolute difference among violations: 999087.0864
Max relative difference among violations: 289288.5934676r!  r"  s       r!   Útest_simple_items_and_arrayz/TestArrayAssertLess.test_simple_items_and_arrayì  sý   € Ü�H‰HÒ@Ú6Ú4ð6ó 7ˆð ˆØ×Ñ˜!˜QÔàˆØ×Ñ˜!˜QÔä�H‰HÒAÚ?Ú;ð=ó >ˆð ˆðGˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ð
)ˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ð 	$÷	$ð 	$ú÷	$ð 	$ús   ÂC>Ã"D
Ã>DÄ
Dc                 ó  — t        j                  g d¢«      }t        j                  d«      }d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       d d d «       d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       d d d «       d}d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       d d d «       d}t        j                  t        t        j                  |«      ¬«      5  | j                  ||«       d d d «       y # 1 sw Y   ŒíxY w# 1 sw Y   Œ®xY w# 1 sw Y   ŒmxY w# 1 sw Y   y xY w)	N)g    0­ Ar   g)\�Âõè.@g    `fõ@z¼Mismatched elements: 1 / 3 (33.3%)
Mismatch at index:
 [0]: 546456.0 (x), 87654.0 (y)
Max absolute difference among violations: 458802.
Max relative difference among violations: 5.23423917r`   zØMismatched elements: 2 / 3 (66.7%)
Mismatch at indices:
 [1]: 87654.0 (x), 0.0 (y)
 [2]: 87654.0 (x), 15.455 (y)
Max absolute difference among violations: 87654.
Max relative difference among violations: 5670.5626011r   zÝMismatched elements: 3 / 3 (100%)
Mismatch at indices:
 [0]: 546456.0 (x), 0 (y)
 [1]: 0.0 (x), 0 (y)
 [2]: 15.455 (x), 0 (y)
Max absolute difference among violations: 546456.
Max relative difference among violations: infz¥Mismatched elements: 1 / 3 (33.3%)
Mismatch at index:
 [1]: 0 (x), 0.0 (y)
Max absolute difference among violations: 0.
Max relative difference among violations: infr¼   r"  s       r!   Útest_zeroeszTestArrayAssertLess.test_zeroes  sB  € Ü�H‰HÒ)Ó*ˆÜ�H‰H�VÓˆðOˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ð'ˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ð ˆðHˆô �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ðHˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	$Ø×Ñ˜a Ô#÷	$ð 	$÷=	$ð 	$ú÷	$ð 	$ú÷	$ð 	$ú÷	$ð 	$ús0   ÁEÂ(E(Ã5E4Å F ÅE%Å(E1Å4E=Æ F	c                 óŽ  ‡ ‡‡‡— t        j                  t         j                  «      Št        j                  d«      Št        j                  t         j                  «      Š‰ j	                  ‰‰«       t        t        ˆˆˆ fd„«       t        t        ˆˆˆ fd„«       t        t        ˆˆˆ fd„«       t        t        ˆˆˆ fd„«       y )Nr.   c                  ó(   •— ‰j                  ‰‰ «      S r   r%   r*  s   €€€r!   r-  z9TestArrayAssertLess.test_nan_noncompare.<locals>.<lambda>@  rœ  r#   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   r*  s   €€€r!   r-  z9TestArrayAssertLess.test_nan_noncompare.<locals>.<lambda>A  rœ  r#   c                  ó(   •— ‰j                  ‰‰ «      S r   r%   r0  s   €€€r!   r-  z9TestArrayAssertLess.test_nan_noncompare.<locals>.<lambda>B  rœ  r#   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   r0  s   €€€r!   r-  z9TestArrayAssertLess.test_nan_noncompare.<locals>.<lambda>C  rœ  r#   r3  r4  s   `@@@r!   Útest_nan_noncomparez'TestArrayAssertLess.test_nan_noncompare;  sp   û€ Ü�x‰xœŸ™ÓˆÜ�x‰x˜‹{ˆÜ�x‰xœŸ™ÓˆØ×Ñ˜$ Ô%Ü”nÕ&KÔLÜ”nÕ&KÔLÜ”nÕ&KÔLÜ”nÕ&KÕLr#   c                 ó  ‡ ‡‡‡— t        j                  g d¢«      Št        j                  t         j                  «      Št        t        ˆˆ ˆfd„«       t        t        ˆˆ ˆfd„«       t        j                  ddt         j                  g«      Št        t        ˆˆ ˆfd„«       t        t        ˆˆ ˆfd„«       t        j                  dd	t         j                  g«      Š‰ j                  ‰‰«       t        t        ˆ ˆˆfd
„«       y )N)r¨  r©  r³  c                  ó(   •— ‰j                  ‰‰ «      S r   r%   ©r+  r   rh   s   €€€r!   r-  z?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>I  ó   ø€ ¨d×.?Ñ.?ÀÀ4Ó.H€ r#   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   rÑ  s   €€€r!   r-  z?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>J  ó   ø€ ¨d×.?Ñ.?ÀÀaÓ.H€ r#   r¨  r©  c                  ó(   •— ‰j                  ‰‰ «      S r   r%   rÑ  s   €€€r!   r-  z?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>N  rÒ  r#   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   rÑ  s   €€€r!   r-  z?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>O  rÔ  r#   rŸ   r    c                  ó(   •— ‰ j                  ‰‰«      S r   r%   r  s   €€€r!   r-  z?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>T  r­  r#   )r1   r2   rr   r   r+   r"   )r   r+  rh   ri   s   `@@@r!   Útest_nan_noncompare_arrayz-TestArrayAssertLess.test_nan_noncompare_arrayE  sœ   û€ Ü�H‰H’_Ó%ˆÜ�x‰xœŸ™Óˆä”nÕ&HÔIÜ”nÕ&HÔIä�H‰H�c˜3¤§¡Ð'Ó(ˆä”nÕ&HÔIÜ”nÕ&HÔIä�H‰H�c˜3¤§¡Ð'Ó(ˆà×Ñ˜!˜QÔÜ”nÕ&EÕFr#   c                 ó¶  ‡ ‡‡— t        j                  d«      Št        j                  t         j                  «      Š‰ j                  ‰‰«       ‰ j                  ‰ ‰«       ‰ j                  ‰ ‰«       t	        t
        ˆˆˆ fd„«       t	        t
        ˆˆˆ fd„«       t	        t
        ˆˆ fd„«       t	        t
        ˆˆ fd„«       t	        t
        ˆˆ fd„«       y )Nr.   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   ©r1  r,  r   s   €€€r!   r-  z6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>]  rœ  r#   c                  ó*   •— ‰j                  ‰‰  «      S r   r%   rÛ  s   €€€r!   r-  z6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>^  ó   ø€ ¨d×.?Ñ.?ÀÀtÀeÓ.L€ r#   c                  ó(   •— ‰j                  ‰ ‰ «      S r   r%   ©r1  r   s   €€r!   r-  z6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>_  rœ  r#   c                  ó*   •— ‰j                  ‰ ‰  «      S r   r%   rß  s   €€r!   r-  z6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>`  rÝ  r#   c                  ó,   •— ‰j                  ‰  ‰  «      S r   r%   rß  s   €€r!   r-  z6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>a  s   ø€ ¨d×.?Ñ.?ÀÀÈÀuÓ.M€ r#   )r1   r2   r‡   r"   r   r+   )r   r1  r,  s   `@@r!   Útest_inf_comparez$TestArrayAssertLess.test_inf_compareV  s�   ú€ Ü�x‰x˜‹{ˆÜ�x‰xœŸ™Óˆà×Ñ˜$ Ô%Ø×Ñ˜4˜% Ô&Ø×Ñ˜4˜% Ô&Ü”nÕ&KÔLÜ”nÕ&LÔMÜ”nÔ&KÔLÜ”nÔ&LÔMÜ”nÔ&MÕNr#   c                 ó”  ‡ ‡‡— t        j                  ddt         j                  g«      Št        j                  t         j                  «      Št        t        ˆˆ ˆfd„«       t        t        ˆˆ ˆfd„«       t        t        ˆˆ ˆfd„«       t        t        ˆˆ ˆfd„«       t        t        ˆˆ ˆfd„«       ‰ j                  ‰ ‰«       y )Nr¨  r©  c                  ó(   •— ‰j                  ‰‰ «      S r   r%   ©r1  r   rh   s   €€€r!   r-  z<TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>g  rÒ  r#   c                  ó(   •— ‰j                  ‰ ‰«      S r   r%   rå  s   €€€r!   r-  z<TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>h  rÔ  r#   c                  ó*   •— ‰j                  ‰‰  «      S r   r%   rå  s   €€€r!   r-  z<TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>i  s   ø€ ¨d×.?Ñ.?ÀÀDÀ5Ó.I€ r#   c                  ó,   •— ‰j                  ‰ ‰  «      S r   r%   rå  s   €€€r!   r-  z<TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>j  s   ø€ ¨d×.?Ñ.?ÀÀÀTÀEÓ.J€ r#   c                  ó,   •— ‰j                  ‰  ‰ «      S r   r%   rå  s   €€€r!   r-  z<TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>k  s   ø€ ¨d×.?Ñ.?ÀÀÈÀrÓ.J€ r#   )r1   r2   r‡   r   r+   r"   )r   r1  rh   s   `@@r!   Útest_inf_compare_arrayz*TestArrayAssertLess.test_inf_compare_arrayc  sw   ú€ Ü�H‰H�c˜3¤§¡Ð'Ó(ˆÜ�x‰xœŸ™Óˆä”nÕ&HÔIÜ”nÕ&HÔIÜ”nÕ&IÔJÜ”nÕ&JÔKÜ”nÕ&JÔKØ×Ñ˜4˜% Õ#r#   c                 ó"  — t        j                  d«      }t        j                  d«      }| j                  ||«       t	        j
                  t        «      5  | j                  ||d¬«       ddd«       t        j                  ||j                  «      }| j                  ||«       t	        j
                  t        «      5  | j                  ||j                  t         j                  «      d¬«       ddd«       y# 1 sw Y   Œ�xY w# 1 sw Y   yxY w©z)Test the behavior of the `strict` option.r8   r   TrÀ   N)r1   Úzerosr‚  r"   rb   rc   r+   Úbroadcast_tor¹  Úastyper²   r  s      r!   Útest_strictzTestArrayAssertLess.test_strictn  sÓ   € ä�H‰H�Q‹KˆÜ�G‰G�B‹KˆØ×Ñ˜!˜QÔÜ�]‰]œ>Ó*ñ 	1Ø×Ñ˜a ¨4ÐÔ0÷	1ä�O‰O˜A˜qŸw™wÓ'ˆØ×Ñ˜!˜QÔÜ�]‰]œ>Ó*ñ 	DØ×Ñ˜a §¡¬"¯*©*Ó!5¸dÐÔC÷	Dð 	D÷		1ð 	1ú÷	Dð 	Dús   ÁC9Â>2DÃ9DÄDN)rH   rI   rJ   r"   r±  r·  r¼  r™  rÆ  rÈ  rÎ  rØ  râ  rê  rð  r   r#   r!   r¥  r¥  •  sG   „ ò+ò$ò0Gò(Gò$Gò(#$òJ($òTMòGò"Oò	$ó
Dr#   r¥  z^ignore:.*NumPy warning suppression and assertion utilities are deprecated.*:DeprecationWarningz*checks global module & deprecated warnings)Úreasonc                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)Ú	TestWarnsc                 ó*  — d„ }t         j                  d   j                  d d  }t        t	        t
        |«      d«       t         j                  d   j                  }t        t        t        |«       t        t        d„ d«      d«       t        ||d«       y )Nc                  ó.   — t        j                  d«       y)NÚyor8   ©ÚwarningsÚwarnr   r#   r!   ÚfzTestWarns.test_warn.<locals>.f�  s   € Ü�M‰M˜$ÔØr#   rø  r8   c                 ó   — | S r   r   )rh   s    r!   r-  z%TestWarns.test_warn.<locals>.<lambda>Š  s   € °!€ r#   r.   ú.assert_warns does not preserver warnings state)	ÚsysÚmodulesÚfiltersr   r   ÚUserWarningr   r+   r   )r   rú  Úbefore_filtersÚafter_filterss       r!   Ú	test_warnzTestWarns.test_warn€  sx   € ò	ô Ÿ™ ZÑ0×8Ñ8¹Ð;ˆÜ”\¤+¨qÓ1°1Ô5ÜŸ™ JÑ/×7Ñ7ˆä”nÔ&8¸!Ô<ÜÔ'©°QÓ7¸Ô;ô 	�^ ]ØEõ	Gr#   c                 ó0  — t         j                  d   j                  d d  }t        t        «      5  t        j                  d«       d d d «       t         j                  d   j                  }d„ }t        t        |«       t        ||d«       y # 1 sw Y   ŒGxY w)Nrø  rö  c                  ól   — t        «       5  t        j                  d«       d d d «       y # 1 sw Y   y xY w©Nrö  )r   rø  rù  r   r#   r!   Úno_warningsz3TestWarns.test_context_manager.<locals>.no_warnings—  s)   € Ü#Ó%ñ $Ü—‘˜dÔ#÷$÷ $ñ $ús   ‹*ª3rü  )
rý  rþ  rÿ  r   r   rø  rù  r   r+   r   )r   r  r  r  s       r!   Útest_context_managerzTestWarns.test_context_manager�  sy   € äŸ™ ZÑ0×8Ñ8¹Ð;ˆÜœ+Ó&ñ 	 Ü�M‰M˜$Ô÷	 äŸ™ JÑ/×7Ñ7ˆò	$ô 	”n kÔ2Ü�^ ]ØEõ	G÷	 ð 	 ús   °BÂBc                 ój  — d
d„}t        t        |d¬«      dk(  sJ ‚t        j                  t        «      5 }t        t        d¬«      5  t        j                  dt        «       d d d «       d d d «       dt        «      v sJ ‚dt        |«      v sJ ‚t        j                  t        «      5 }t        t        d¬	«      5  t        j                  dt        «       d d d «       d d d «       dt        |«      v sJ ‚dt        |«      vsJ ‚y # 1 sw Y   Œ¤xY w# 1 sw Y   Œ¨xY w# 1 sw Y   ŒHxY w# 1 sw Y   ŒLxY w)Nc                 ó6   — t        j                  d«       | |z   S r  r÷  )r'   r(   s     r!   rú  zTestWarns.test_args.<locals>.f   s   € Ü�M‰M˜$ÔØ�q‘5ˆLr#   r�  ©r(   ÚAr`   ÚBr   zpytest.warns)Úwrong)r   r.   )r   r   rb   rc   ÚRuntimeErrorrø  rù  rd   )r   rú  Úexcs      r!   Ú	test_argszTestWarns.test_argsŸ  s  € ó	ô œK¨¨bÔ1°RÒ7Ð7Ð7ä�]‰]œ<Ó(ð 	0¨Cäœk°Ô5ñ 0Ü—‘˜c¤;Ô/÷0÷	0ð ¤ S£Ñ)Ð)Ð)Ø¤ S£Ñ)Ð)Ð)ä�]‰]œ<Ó(ð 	0¨Cäœk°Ô5ñ 0Ü—‘˜c¤;Ô/÷0÷	0ð ¤ S£Ñ)Ð)Ð)Ø¤S¨£XÑ-Ð-Ñ-÷0ð 0ú÷	0ð 	0ú÷0ð 0ú÷	0ð 	0úsG   µDÁDÁ"DÂ)D)Â;DÃD)ÄD	Ä
DÄDÄD&	Ä"D)Ä)D2c                 óò   — d„ }d}t        j                  «       5  t        j                  dt        «       	 t	        t
        |«       d}d d d «       |rt        d«      ‚y # t        $ r Y Œ!w xY w# 1 sw Y   Œ&xY w)Nc                  ó8   — t        j                  dt        «       y r  )rø  rù  ÚDeprecationWarningr   r#   r!   rú  z,TestWarns.test_warn_wrong_warning.<locals>.fµ  s   € Ü�M‰M˜$Ô 2Õ3r#   FÚerrorTz#wrong warning caught by assert_warn)rø  Úcatch_warningsÚsimplefilterr  r   r   r+   )r   rú  Úfaileds      r!   Útest_warn_wrong_warningz!TestWarns.test_warn_wrong_warning´  s~   € ò	4ð ˆÜ×$Ñ$Ó&ñ 	Ü×!Ñ! 'Ô+=Ô>ðäœ[¨!Ô,Ø�÷	ñ Ü Ð!FÓGÐGð øô &ò Ùðú÷	ð 	ús(   šA-¶AÁ	A*Á'A-Á)A*Á*A-Á-A6N)rH   rI   rJ   r  r  r  r  r   r#   r!   ró  ró  z  s   „ òGò Gò.ó*Hr#   ró  c                   óN   — 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y)ÚTestAssertAllclosec                 ó<  — d}d}t        ||d¬«       t        t        t         ||«       d}t        j                  t        t        j                  |«      ¬«      5  t        ||«       d d d «       d}d}t        j                  t        t        j                  |«      ¬«      5  t        ||«       d d d «       d	}t        j                  t        t        j                  |«      ¬«      5  t        ||«       d d d «       t        j                  ||||g«      }t        j                  ||||g«      }t        ||d¬«       t        t        t         ||«       |d
z  |d<   t        ||«       t        t        t         ||d¬«       t        ddd¬«       t        t        t         ddd¬«       t        j                  ||||g«      }t        j                  ||||g«      }d}t        j                  t        t        j                  |«      ¬«      5  t        ||«       d d d «       d}t        j                  t        t        j                  |«      ¬«      5  t        ||«       d d d «       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   ŒvxY w# 1 sw Y   y xY w)Ngü©ñÒMbP?g•Ö&è.>r.   ©ÚatolzƒMismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 0.001
Max relative difference among violations: 999999.r`   r   z€Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.e-09
Max relative difference among violations: infzMismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.e-09
Max relative difference among violations: 1.gÜ1¯  ð?r  )Úrtolr’  rà   g      à?zµMismatched elements: 1 / 4 (25%)
Mismatch at index:
 [3]: 0.001 (ACTUAL), 0.0 (DESIRED)
Max absolute difference among violations: 0.001
Max relative difference among violations: infz´Mismatched elements: 1 / 4 (25%)
Mismatch at index:
 [3]: 0.0 (ACTUAL), 0.001 (DESIRED)
Max absolute difference among violations: 0.001
Max relative difference among violations: 1.)	r   r   r+   rb   rc   rf   rg   r1   r2   )r   rh   ri   rl   rT  r'   r(   rV   s           r!   r#  zTestAssertAllclose.test_simpleÈ  s*  € ØˆØˆä˜˜1 1Õ%Ü”n¤o°q¸!Ô<ðLˆô �]‰]œ>´·±¸<Ó1HÔIñ 	"Ü˜A˜qÔ!÷	"ð ˆðHˆô �]‰]œ>´·±¸<Ó1HÔIñ 	"Ü˜A˜qÔ!÷	"ðGˆô �]‰]œ>´·±¸<Ó1HÔIñ 	"Ü˜A˜qÔ!÷	"ô �H‰H�a˜˜A˜q�\Ó"ˆÜ�H‰H�a˜˜A˜q�\Ó"ˆä˜˜1 1Õ%Ü”n¤o°q¸!Ô<à�X‘ˆˆ"‰Ü˜˜1ÔÜ”n¤o°q¸!À$ÕGä˜˜2 CÕ(Ü”n¤o°r¸1À3ÕGä�H‰H�a˜˜A˜q�\Ó"ˆÜ�H‰H�a˜˜A˜q�\Ó"ˆðHˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	"Ü˜A˜qÔ!÷	"ðGˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	"Ü˜A˜qÔ!÷	"ð 	"÷Y	"ñ 	"ú÷	"ñ 	"ú÷	"ñ 	"ú÷.	"ð 	"ú÷	"ð 	"ús<   ÁIÂ I,Ã%I9ÈJÉ	JÉI)É,I6É9JÊJÊJc                 ó¾   — t        j                  t        j                  t         j                  «      j                  gt         j                  ¬«      }t        ||«       y )Nr?   )r1   r2   ÚiinfoÚint_Úminr   rB   s     r!   Útest_min_intzTestAssertAllclose.test_min_int  s6   € Ü�H‰H”b—h‘hœrŸw™wÓ'×+Ñ+Ð,´B·G±GÔ<ˆä˜˜1Õr#   c                 ó  — t        j                  g d¢«      }t        j                  g d¢«      }d}t        j                  t        t        j                  |«      ¬«      5  t        ||«       d d d «       y # 1 sw Y   y xY w)N)r.   r.   r.   r.   )r.   r.   r.   r/   z«Mismatched elements: 1 / 4 (25%)
Mismatch at index:
 [3]: 1 (ACTUAL), 2 (DESIRED)
Max absolute difference among violations: 1
Max relative difference among violations: 0.5r`   ©r1   r2   rb   rc   r+   rf   rg   r   r½   s       r!   Útest_report_fail_percentagez.TestAssertAllclose.test_report_fail_percentage  s^   € Ü�H‰H’\Ó"ˆÜ�H‰H’\Ó"ˆðHˆô
 �]‰]œ>´·±¸<Ó1HÔIñ 	"Ü˜A˜qÔ!÷	"÷ 	"ñ 	"úó   ÁA5Á5A>c                 óR  — t        j                  t         j                  g«      }t        j                  t         j                  g«      }t        ||d¬«       t        j                  t	        t         j                  t         j
                  «      g«      }t        j                  t	        t         j                  t         j
                  «      g«      }t        ||d¬«       t        j                  t	        t         j                  t         j
                   «      g«      }t        ||d¬«       y )NT©Ú	equal_nan)r1   r2   rr   r   r  r‡   r&   s      r!   Útest_equal_nanz!TestAssertAllclose.test_equal_nan  s°   € Ü�H‰H”b—f‘f�XÓˆÜ�H‰H”b—f‘f�XÓˆä˜˜1¨Õ-ä�H‰H”gœbŸf™f¤b§f¡fÓ-Ð.Ó/ˆÜ�H‰H”gœbŸf™f¤b§f¡fÓ-Ð.Ó/ˆÜ˜˜1¨Õ-Ü�H‰H”gœbŸf™f¤r§v¡v gÓ.Ð/Ó0ˆÜ˜˜1¨Ö-r#   c                 óä  — t        j                  t         j                  g«      }t        j                  t         j                  g«      }t        t        t
        ||d¬«       t        j                  t        t         j                  t         j                  «      g«      }t        j                  t        t         j                  t         j                  «      g«      }t        t        t
        ||d¬«       y )NFr*  )r1   r2   rr   r   r+   r   r  r‡   r&   s      r!   Útest_not_equal_nanz%TestAssertAllclose.test_not_equal_nan  sŠ   € Ü�H‰H”b—f‘f�XÓˆÜ�H‰H”b—f‘f�XÓˆÜ”n¤o°q¸!ÀuÕMä�H‰H”gœbŸf™f¤b§f¡fÓ-Ð.Ó/ˆÜ�H‰H”gœbŸf™f¤b§f¡fÓ-Ð.Ó/ˆÜ”n¤o°q¸!ÀuÖMr#   c                 óô   — t        j                  t         j                  g«      }t        j                  t         j                  g«      }t        ||«       t	        ||«       t        ||«       t        ||«       y r   )r1   r2   rr   r
   r   r   r   r&   s      r!   Útest_equal_nan_defaultz)TestAssertAllclose.test_equal_nan_default'  sT   € ô �H‰H”b—f‘f�XÓˆÜ�H‰H”b—f‘f�XÓˆÜ˜1˜aÔ Ü! ! QÔ'Ü˜!˜QÔÜ˜˜1Õr#   c                 ó  — t        j                  ddg«      }t        j                  ddg«      }d}t        j                  t        t        j                  |«      ¬«      5  t        ||«       d d d «       y # 1 sw Y   y xY w)Nr   r.   r/   z-Max relative difference among violations: 0.5r`   r&  r½   s       r!   Útest_report_max_relative_errorz1TestAssertAllclose.test_report_max_relative_error2  sa   € Ü�H‰H�a˜�VÓˆÜ�H‰H�a˜�VÓˆàFˆÜ�]‰]œ>´·±¸<Ó1HÔIñ 	"Ü˜A˜qÔ!÷	"÷ 	"ñ 	"úr(  c                 óP   — t        j                  g d¢gd¬«      }t        ||«       y )N)r.   r/   r8   rò   zm8[ns]r?   )r1   r2   r   rB   s     r!   Útest_timedeltaz!TestAssertAllclose.test_timedelta:  s    € ä�H‰HÒ&Ð'¨xÔ8ˆÜ˜˜1Õr#   c                 ó  — t        j                  g d¢d¬«      }t        j                  g d¢d¬«      }d}t        j                  t        t        j                  |«      ¬«      5  t        ||d¬«       d	d	d	«       y	# 1 sw Y   y	xY w)
zUCheck the message is formatted correctly when overflow can occur
           (gh21768))r   r.   r°  Úuint8r?   )r9   r9   r9   z+Max absolute difference among violations: 4r`   r8   r  N)r1   Úasarrayrb   rc   r+   rf   rg   r   r"  s       r!   Útest_error_message_unsignedz.TestAssertAllclose.test_error_message_unsigned?  sa   € ô �J‰J’y¨Ô0ˆÜ�J‰J’y¨Ô0ˆØDˆÜ�]‰]œ>´·±¸<Ó1HÔIñ 	*Ü˜A˜q qÕ)÷	*÷ 	*ñ 	*ús   Á#A;Á;Bc                 ó²  — t        j                  d«      }t        j                  d«      }t        ||«       t        j                  t
        «      5  t        ||d¬«       ddd«       t        ||«       t        j                  t
        «      5  t        ||j                  t         j                  «      d¬«       ddd«       y# 1 sw Y   ŒcxY w# 1 sw Y   yxY wrì  )r1   r‚  r   rb   rc   r+   rï  r²   r  s      r!   rð  zTestAssertAllclose.test_strictL  s¡   € ä�G‰G�A‹JˆÜ�G‰G�B‹KˆÜ˜˜1ÔÜ�]‰]œ>Ó*ñ 	/Ü˜A˜q¨Õ.÷	/ä˜˜1ÔÜ�]‰]œ>Ó*ñ 	BÜ˜A˜qŸx™x¬¯
©
Ó3¸DÕA÷	Bð 	B÷	/ð 	/ú÷	Bð 	Bús   ÁCÂ,CÃC
ÃCc                 ó6  — t        j                  t         j                  g«      }t        j                  t         j                  g«      }t        ||«       t        j                  dg«      }d}t	        j
                  t        t        j                  |«      ¬«      5  t        ||«       d d d «       t        j                  t         j                   g«      }d}t	        j
                  t        t        j                  |«      ¬«      5  t        ||«       d d d «       t        j                  t        t         j                  d«      g«      }d}t	        j
                  t        t        j                  |«      ¬«      5  t        ||«       d d d «       t        j                  t        t         j                  d«      g«      }t        j                  t        t         j                  d«      g«      }t        ||«       t        j                  t        t         j                  d«      g«      }d}t	        j
                  t        t        j                  |«      ¬«      5  t        ||«       d d d «       y # 1 sw Y   �ŒÃxY w# 1 sw Y   �ŒfxY w# 1 sw Y   ŒÿxY w# 1 sw Y   y xY w)Nr€   zinf location mismatch:r`   zinf values mismatch:rŸ   r    )
r1   r2   r‡   r   rb   rc   r+   rf   rg   r  r½   s       r!   Ú	test_infszTestAssertAllclose.test_infsW  sÈ  € Ü�H‰H”b—f‘f�XÓˆÜ�H‰H”b—f‘f�XÓˆÜ˜˜1Ôä�H‰H�b�T‹NˆØ/ˆÜ�]‰]œ>´·±¸<Ó1HÔIñ 	"Ü˜A˜qÔ!÷	"ô �H‰H”r—v‘v�g�YÓˆØ-ˆÜ�]‰]œ>´·±¸<Ó1HÔIñ 	"Ü˜A˜qÔ!÷	"ä�H‰H”gœbŸf™f bÓ)Ð*Ó+ˆØ-ˆÜ�]‰]œ>´·±¸<Ó1HÔIñ 	"Ü˜A˜qÔ!÷	"ô �H‰H”gœbŸf™f bÓ)Ð*Ó+ˆÜ�H‰H”gœbŸf™f bÓ)Ð*Ó+ˆÜ˜˜1Ôä�H‰H”gœbŸf™f bÓ)Ð*Ó+ˆØ-ˆÜ�]‰]œ>´·±¸<Ó1HÔIñ 	"Ü˜A˜qÔ!÷	"ð 	"÷%	"ñ 	"ú÷
	"ñ 	"ú÷	"ð 	"ú÷	"ð 	"ús0   ÂI)ÄI6Å8JÉJÉ)I3É6J ÊJÊJN)rH   rI   rJ   r#  r$  r'  r,  r.  r0  r2  r4  r8  rð  r;  r   r#   r!   r  r  Æ  s<   „ ò7"òrò

"ò
.òNò	ò"òò
*ò	Bó"r#   r  c                   óZ   — 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y)ÚTestArrayAlmostEqualNulpc                 óœ  — d}t        j                  dddt         j                  ¬«      }d|z  }t         j                  | |f   }t        j                  |j
                  «      j                  }|||z  |z  dz  z   }t        |||«       t        j                  |j
                  «      j                  }|||z  |z  dz  z
  }t        |||«       y ©Nr   éìÿÿÿr�  é2   r?   rà   r    ©	r1   ÚlinspaceÚfloat64Úr_Úfinfor@   Úepsr	   Úepsneg©r   Únulprh   rG  ri   rH  s         r!   Útest_float64_passz*TestArrayAlmostEqualNulp.test_float64_passu  s¸   € ð ˆÜ�K‰K˜˜R ¬2¯:©:Ô6ˆØ�‰EˆÜ�E‰E�1�"�a�%‰Lˆô �h‰h�q—w‘wÓ×#Ñ#ˆØ��C‘˜$‘ Ñ#Ñ#ˆÜ& q¨!¨TÔ2ô —‘˜!Ÿ'™'Ó"×)Ñ)ˆØ��F‘
˜TÑ! BÑ&Ñ&ˆÜ& q¨!¨TÕ2r#   c                 óÄ  — d}t        j                  dddt         j                  ¬«      }d|z  }t         j                  | |f   }t        j                  |j
                  «      j                  }|||z  |z  dz  z   }t        t        t        |||«       t        j                  |j
                  «      j                  }|||z  |z  dz  z
  }t        t        t        |||«       y r?  ©r1   rC  rD  rE  rF  r@   rG  r   r+   r	   rH  rI  s         r!   Útest_float64_failz*TestArrayAlmostEqualNulp.test_float64_fail‡  óÄ   € ØˆÜ�K‰K˜˜R ¬2¯:©:Ô6ˆØ�‰EˆÜ�E‰E�1�"�a�%‰Lˆä�h‰h�q—w‘wÓ×#Ñ#ˆØ��C‘˜$‘ Ñ#Ñ#ˆÜ”nÔ&DØ˜˜Dô	"ô —‘˜!Ÿ'™'Ó"×)Ñ)ˆØ��F‘
˜TÑ! BÑ&Ñ&ˆÜ”nÔ&DØ˜˜Dõ	"r#   c                 ón  — t        j                  d«      }t        j                  t         j                  t         j                  ¬«      j                  t         j                  «      }||z  }|j                  t         j                  «      }|j                  t         j                  «      }t        ||d«       y )Nl   ÿÿ r?   r   )r1   Úuint64r2   rr   rD  r£   r   )r   ÚoffsetÚnan1_i64Únan2_i64Únan1_f64Únan2_f64s         r!   Útest_float64_ignore_nanz0TestArrayAlmostEqualNulp.test_float64_ignore_nan—  ss   € ô —‘˜:Ó&ˆÜ—8‘8œBŸF™F¬"¯*©*Ô5×:Ñ:¼2¿9¹9ÓEˆØ˜fÑ$ˆØ—=‘=¤§¡Ó,ˆØ—=‘=¤§¡Ó,ˆÜ˜X x°Õ3r#   c                 óœ  — d}t        j                  dddt         j                  ¬«      }d|z  }t         j                  | |f   }t        j                  |j
                  «      j                  }|||z  |z  dz  z   }t        |||«       t        j                  |j
                  «      j                  }|||z  |z  dz  z
  }t        |||«       y r?  ©	r1   rC  r²   rE  rF  r@   rG  r	   rH  rI  s         r!   Útest_float32_passz*TestArrayAlmostEqualNulp.test_float32_pass¢  s²   € ØˆÜ�K‰K˜˜R ¬2¯:©:Ô6ˆØ�‰EˆÜ�E‰E�1�"�a�%‰Lˆä�h‰h�q—w‘wÓ×#Ñ#ˆØ��C‘˜$‘ Ñ#Ñ#ˆÜ& q¨!¨TÔ2ä—‘˜!Ÿ'™'Ó"×)Ñ)ˆØ��F‘
˜TÑ! BÑ&Ñ&ˆÜ& q¨!¨TÕ2r#   c                 óÄ  — d}t        j                  dddt         j                  ¬«      }d|z  }t         j                  | |f   }t        j                  |j
                  «      j                  }|||z  |z  dz  z   }t        t        t        |||«       t        j                  |j
                  «      j                  }|||z  |z  dz  z
  }t        t        t        |||«       y r?  ©r1   rC  r²   rE  rF  r@   rG  r   r+   r	   rH  rI  s         r!   Útest_float32_failz*TestArrayAlmostEqualNulp.test_float32_fail°  rO  r#   c                 ón  — t        j                  d«      }t        j                  t         j                  t         j                  ¬«      j                  t         j                  «      }||z  }|j                  t         j                  «      }|j                  t         j                  «      }t        ||d«       y )Niÿÿ  r?   r   )r1   Úuint32r2   rr   r²   r£   r   )r   rR  Únan1_i32Únan2_i32Únan1_f32Únan2_f32s         r!   Útest_float32_ignore_nanz0TestArrayAlmostEqualNulp.test_float32_ignore_nanÀ  ss   € ô —‘˜6Ó"ˆÜ—8‘8œBŸF™F¬"¯*©*Ô5×:Ñ:¼2¿9¹9ÓEˆØ˜fÑ$ˆØ—=‘=¤§¡Ó,ˆØ—=‘=¤§¡Ó,ˆÜ˜X x°Õ3r#   c                 óœ  — d}t        j                  dddt         j                  ¬«      }d|z  }t         j                  | |f   }t        j                  |j
                  «      j                  }|||z  |z  dz  z   }t        |||«       t        j                  |j
                  «      j                  }|||z  |z  dz  z
  }t        |||«       y ©Nr   éüÿÿÿr9   rà   r?   r    )	r1   rC  Úfloat16rE  rF  r@   rG  r	   rH  rI  s         r!   Útest_float16_passz*TestArrayAlmostEqualNulp.test_float16_passË  s²   € ØˆÜ�K‰K˜˜A˜r¬¯©Ô4ˆØ�‰EˆÜ�E‰E�1�"�a�%‰Lˆä�h‰h�q—w‘wÓ×#Ñ#ˆØ��C‘˜$‘ Ñ#Ñ#ˆÜ& q¨!¨TÔ2ä—‘˜!Ÿ'™'Ó"×)Ñ)ˆØ��F‘
˜TÑ! BÑ&Ñ&ˆÜ& q¨!¨TÕ2r#   c                 óÄ  — d}t        j                  dddt         j                  ¬«      }d|z  }t         j                  | |f   }t        j                  |j
                  «      j                  }|||z  |z  dz  z   }t        t        t        |||«       t        j                  |j
                  «      j                  }|||z  |z  dz  z
  }t        t        t        |||«       y rf  )r1   rC  rh  rE  rF  r@   rG  r   r+   r	   rH  rI  s         r!   Útest_float16_failz*TestArrayAlmostEqualNulp.test_float16_failÙ  sÄ   € ØˆÜ�K‰K˜˜A˜r¬¯©Ô4ˆØ�‰EˆÜ�E‰E�1�"�a�%‰Lˆä�h‰h�q—w‘wÓ×#Ñ#ˆØ��C‘˜$‘ Ñ#Ñ#ˆÜ”nÔ&DØ˜˜Dô	"ô —‘˜!Ÿ'™'Ó"×)Ñ)ˆØ��F‘
˜TÑ! BÑ&Ñ&ˆÜ”nÔ&DØ˜˜Dõ	"r#   c                 ón  — t        j                  d«      }t        j                  t         j                  t         j                  ¬«      j                  t         j                  «      }||z  }|j                  t         j                  «      }|j                  t         j                  «      }t        ||d«       y )Néÿ   r?   r   )r1   Úuint16r2   rr   rh  r£   r   )r   rR  Únan1_i16Únan2_i16Únan1_f16Únan2_f16s         r!   Útest_float16_ignore_nanz0TestArrayAlmostEqualNulp.test_float16_ignore_nané  sr   € ô —‘˜4“ˆÜ—8‘8œBŸF™F¬"¯*©*Ô5×:Ñ:¼2¿9¹9ÓEˆØ˜fÑ$ˆØ—=‘=¤§¡Ó,ˆØ—=‘=¤§¡Ó,ˆÜ˜X x°Õ3r#   c                 ó”  — d}t        j                  dddt         j                  ¬«      }d|z  }t         j                  | |f   }||dz  z   }t        j                  |j
                  «      j                  }|||z  |z  dz  z   }t        |||dz  z   |«       t        |||dz  z   |«       |||z  |z  d	z  z   }t        |||dz  z   |«       t        j                  |j
                  «      j                  }|||z  |z  dz  z
  }t        |||dz  z   |«       t        |||dz  z   |«       |||z  |z  d	z  z
  }t        |||dz  z   |«       y ©
Nr   r@  r�  rA  r?   rà   r=  r    r�   rB  ©r   rJ  rh   ÚxirG  ri   rH  s          r!   Útest_complex128_passz-TestArrayAlmostEqualNulp.test_complex128_passô  sP  € ØˆÜ�K‰K˜˜R ¬2¯:©:Ô6ˆØ�‰EˆÜ�E‰E�1�"�a�%‰LˆØ��R‘‰Zˆä�h‰h�q—w‘wÓ×#Ñ#ˆØ��C‘˜$‘ Ñ#Ñ#ˆÜ& r¨1¨q°2©v©:°tÔ<Ü& r¨1¨q°2©v©:°tÔ<ð ��C‘˜$‘ Ñ#Ñ#ˆÜ& r¨1¨q°2©v©:°tÔ<ä—‘˜!Ÿ'™'Ó"×)Ñ)ˆØ��F‘
˜TÑ! BÑ&Ñ&ˆÜ& r¨1¨q°2©v©:°tÔ<Ü& r¨1¨q°2©v©:°tÔ<Ø��F‘
˜TÑ! BÑ&Ñ&ˆÜ& r¨1¨q°2©v©:°tÕ<r#   c                 ó   — d}t        j                  dddt         j                  ¬«      }d|z  }t         j                  | |f   }||dz  z   }t        j                  |j
                  «      j                  }|||z  |z  dz  z   }t        t        t        |||dz  z   |«       t        t        t        |||dz  z   |«       |||z  |z  z   }t        t        t        |||dz  z   |«       t        j                  |j
                  «      j                  }|||z  |z  dz  z
  }t        t        t        |||dz  z   |«       t        t        t        |||dz  z   |«       |||z  |z  z
  }t        t        t        |||dz  z   |«       y ©	Nr   r@  r�  rA  r?   rà   r=  r    rM  rv  s          r!   Útest_complex128_failz-TestArrayAlmostEqualNulp.test_complex128_fail  sx  € ØˆÜ�K‰K˜˜R ¬2¯:©:Ô6ˆØ�‰EˆÜ�E‰E�1�"�a�%‰LˆØ��R‘‰Zˆä�h‰h�q—w‘wÓ×#Ñ#ˆØ��C‘˜$‘ Ñ#Ñ#ˆÜ”nÔ&DØ˜!˜a "™f™* dô	,ä”nÔ&DØ˜!˜a "™f™* dô	,ð ��C‘˜$‘ÑˆÜ”nÔ&DØ˜!˜a "™f™* dô	,ô —‘˜!Ÿ'™'Ó"×)Ñ)ˆØ��F‘
˜TÑ! BÑ&Ñ&ˆÜ”nÔ&DØ˜!˜a "™f™* dô	,ä”nÔ&DØ˜!˜a "™f™* dô	,à��F‘
˜TÑ!Ñ!ˆÜ”nÔ&DØ˜!˜a "™f™* dõ	,r#   c                 ó”  — d}t        j                  dddt         j                  ¬«      }d|z  }t         j                  | |f   }||dz  z   }t        j                  |j
                  «      j                  }|||z  |z  dz  z   }t        |||dz  z   |«       t        |||dz  z   |«       |||z  |z  d	z  z   }t        |||dz  z   |«       t        j                  |j
                  «      j                  }|||z  |z  dz  z
  }t        |||dz  z   |«       t        |||dz  z   |«       |||z  |z  d	z  z
  }t        |||dz  z   |«       y ru  rY  rv  s          r!   Útest_complex64_passz,TestArrayAlmostEqualNulp.test_complex64_pass(  sN  € ØˆÜ�K‰K˜˜R ¬2¯:©:Ô6ˆØ�‰EˆÜ�E‰E�1�"�a�%‰LˆØ��R‘‰Zˆä�h‰h�q—w‘wÓ×#Ñ#ˆØ��C‘˜$‘ Ñ#Ñ#ˆÜ& r¨1¨q°2©v©:°tÔ<Ü& r¨1¨q°2©v©:°tÔ<Ø��C‘˜$‘ Ñ#Ñ#ˆÜ& r¨1¨q°2©v©:°tÔ<ä—‘˜!Ÿ'™'Ó"×)Ñ)ˆØ��F‘
˜TÑ! BÑ&Ñ&ˆÜ& r¨1¨q°2©v©:°tÔ<Ü& r¨1¨q°2©v©:°tÔ<Ø��F‘
˜TÑ! BÑ&Ñ&ˆÜ& r¨1¨q°2©v©:°tÕ<r#   c                 ó   — d}t        j                  dddt         j                  ¬«      }d|z  }t         j                  | |f   }||dz  z   }t        j                  |j
                  «      j                  }|||z  |z  dz  z   }t        t        t        |||dz  z   |«       t        t        t        |||dz  z   |«       |||z  |z  z   }t        t        t        |||dz  z   |«       t        j                  |j
                  «      j                  }|||z  |z  dz  z
  }t        t        t        |||dz  z   |«       t        t        t        |||dz  z   |«       |||z  |z  z
  }t        t        t        |||dz  z   |«       y rz  r\  rv  s          r!   Útest_complex64_failz,TestArrayAlmostEqualNulp.test_complex64_fail=  sv  € ØˆÜ�K‰K˜˜R ¬2¯:©:Ô6ˆØ�‰EˆÜ�E‰E�1�"�a�%‰LˆØ��R‘‰Zˆä�h‰h�q—w‘wÓ×#Ñ#ˆØ��C‘˜$‘ Ñ#Ñ#ˆÜ”nÔ&DØ˜!˜a "™f™* dô	,ä”nÔ&DØ˜!˜a "™f™* dô	,à��C‘˜$‘ÑˆÜ”nÔ&DØ˜!˜a "™f™* dô	,ô —‘˜!Ÿ'™'Ó"×)Ñ)ˆØ��F‘
˜TÑ! BÑ&Ñ&ˆÜ”nÔ&DØ˜!˜a "™f™* dô	,ä”nÔ&DØ˜!˜a "™f™* dô	,à��F‘
˜TÑ!Ñ!ˆÜ”nÔ&DØ˜!˜a "™f™* dõ	,r#   N)rH   rI   rJ   rK  rN  rW  rZ  r]  rd  ri  rk  rs  rx  r{  r}  r  r   r#   r!   r=  r=  s  sC   „ ò3ò$"ò 	4ò3ò"ò 	4ò3ò"ò 	4ò=ò.,ò:=ó*,r#   r=  c                   ó*   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestULPc                 ó^   — t         j                  j                  d«      }t        ||d¬«       y )Nrà   r   ©Úmaxulp)r1   ÚrandomÚrandnr   )r   rh   s     r!   Ú
test_equalzTestULP.test_equal[  s    € Ü�I‰I�O‰O˜BÓˆÜ˜Q ¨!Ö,r#   c                 óh  — t        j                  d«      j                  t         j                  «      }|dt         j                  j                  d«      j                  t         j                  «      z  z  }t        j                  t         j                  «      j                  }t        |||z   d¬«       y )Nrà   ç{®Gáz„?r�  rƒ  )	r1   r‚  rï  r²   r…  r†  rF  rG  r   ©r   rh   rG  s      r!   Útest_singlezTestULP.test_single_  sq   € ä�G‰G�B‹K×ÑœrŸz™zÓ*ˆØ	ˆT”B—I‘I—O‘O BÓ'×.Ñ.¬r¯z©zÓ:Ñ:Ñ:ˆÜ�h‰h”r—z‘zÓ"×&Ñ&ˆÜ˜Q  C¡°Ö3r#   c                 óh  — t        j                  d«      j                  t         j                  «      }|dt         j                  j                  d«      j                  t         j                  «      z  z  }t        j                  t         j                  «      j                  }t        |||z   d¬«       y )Nrà   r‰  éÈ   rƒ  )	r1   r‚  rï  rD  r…  r†  rF  rG  r   rŠ  s      r!   Útest_doublezTestULP.test_doublef  sq   € ä�G‰G�B‹K×ÑœrŸz™zÓ*ˆØ	ˆT”B—I‘I—O‘O BÓ'×.Ñ.¬r¯z©zÓ:Ñ:Ñ:ˆÜ�h‰h”r—z‘zÓ"×&Ñ&ˆÜ˜Q  C¡°Ö4r#   c                 ó6  — t         j                  t         j                  fD ]v  }t        j                  t         j                  g«      j                  |«      }t        j                  t        j                  |«      j                  g«      }t        ||d¬«       Œx y )Nr�  rƒ  )	r1   r²   rD  r2   r‡   rï  rF  Úmaxr   )r   Údtr‡   Úbigs       r!   r;  zTestULP.test_infm  sh   € Ü—:‘:œrŸz™zÐ*ò 	7ˆBÜ—(‘(œBŸF™F˜8Ó$×+Ñ+¨BÓ/ˆCÜ—(‘(œBŸH™H R›L×,Ñ,Ð-Ó.ˆCÜ   c°#Ö6ñ	7r#   c                 óŽ  ‡‡‡‡‡‡‡— t         j                  t         j                  fD �]š  }|t         j                  k(  rdŠndŠt        j                  t         j                  g«      j                  |«      Št        j                  t         j                  g«      j                  |«      Št        j                  t        j                  |«      j                  g«      Št        j                  t        j                  |«      j                  g«      Št        j                  dg«      j                  |«      Št        j                  dg«      j                  |«      Št        t        ˆˆˆfd„«       t        t        ˆˆˆfd„«       t        t        ˆˆˆfd„«       t        t        ˆˆˆfd„«       t        t        ˆˆˆfd	„«       �Œ� y )
Ng    €„.Ag   ¢”mBr¡   g       €c                  ó    •— t        ‰‰ ‰¬«      S ©Nrƒ  ©r   )r‡   r„  rr   s   €€€r!   r-  z"TestULP.test_nan.<locals>.<lambda>�  ó   ø€ Ô"6°s¸CØ>Dô#F€ r#   c                  ó    •— t        ‰‰ ‰¬«      S r•  r–  )r’  r„  rr   s   €€€r!   r-  z"TestULP.test_nan.<locals>.<lambda>„  r—  r#   c                  ó    •— t        ‰‰‰ ¬«      S r•  r–  )r„  rr   Útinys   €€€r!   r-  z"TestULP.test_nan.<locals>.<lambda>‡  ó   ø€ Ô"6°s¸DØ>Dô#F€ r#   c                  ó    •— t        ‰‰‰ ¬«      S r•  r–  )r„  rr   Úzeros   €€€r!   r-  z"TestULP.test_nan.<locals>.<lambda>Š  r›  r#   c                  ó    •— t        ‰‰‰ ¬«      S r•  r–  )r„  rr   Únzeros   €€€r!   r-  z"TestULP.test_nan.<locals>.<lambda>�  s   ø€ Ô"6°s¸EØ>Dô#F€ r#   )r1   r²   rD  r2   r‡   rï  rr   rF  r�  rš  r   r+   )	r   r‘  r’  r‡   r„  rr   rŸ  rš  r�  s	     @@@@@@@r!   r5  zTestULP.test_nans  sE  þ€ ä—:‘:œrŸz™zÐ*ó 	GˆBØ”R—Z‘ZÒØ‘à�Ü—(‘(œBŸF™F˜8Ó$×+Ñ+¨BÓ/ˆCÜ—(‘(œBŸF™F˜8Ó$×+Ñ+¨BÓ/ˆCÜ—(‘(œBŸH™H R›L×,Ñ,Ð-Ó.ˆCÜ—8‘8œRŸX™X b›\×.Ñ.Ð/Ó0ˆDÜ—8‘8˜S˜E“?×)Ñ)¨"Ó-ˆDÜ—H‘H˜d˜VÓ$×+Ñ+¨BÓ/ˆEÜœ.õFôGô œ.õFôGô œ.õFôGô œ.õFôGô œ.õFöGñ/	Gr#   N)rH   rI   rJ   r‡  r‹  rŽ  r;  r5  r   r#   r!   r�  r�  Y  s   „ ò-ò4ò5ò7óGr#   r�  c                   ó   — e Zd Zd„ Zd„ Zy)ÚTestStringEqualc                 ó  — t        dd«       t        dd«       t        j                  t        «      5 }t        dd«       d d d «       t	        j
                  «      }t        |d«       t        t        d„ «       y # 1 sw Y   Œ<xY w)NÚhellozhello
multilinezfoo
barz	hello
barz%Differences in strings:
- foo
+ helloc                  ó   — t        dd«      S )NrW   r£  ©r   r   r#   r!   r-  z-TestStringEqual.test_simple.<locals>.<lambda>œ  s   € Ô1°%¸ÓA€ r#   )r   rb   rc   r+   rd   re   r   r   )r   rj   rk   s      r!   r#  zTestStringEqual.test_simple’  sl   € Ü˜G WÔ-ÜÐ.Ð0BÔCä�]‰]œ>Ó*ð 	:¨hÜ 
¨LÔ9÷	:ä�(—.‘.Ó!ˆÜ�SÐCÔDä”nÙAõ	C÷	:ð 	:ús   ²A:Á:Bc                 ó>   — t        dd«       t        t        d„ «       y )Nza+*bc                  ó   — t        dd«      S )NÚaaaza+br¥  r   r#   r!   r-  z,TestStringEqual.test_regex.<locals>.<lambda>¢  s   € Ô1°%¸Ó?€ r#   )r   r   r+   rF   s    r!   Ú
test_regexzTestStringEqual.test_regexž  s   € Ü˜F FÔ+ä”nÙ?õ	Ar#   N)rH   rI   rJ   r#  r©  r   r#   r!   r¡  r¡  ‘  s   „ ò
CóAr#   r¡  c                 ó€   — 	 | j                   }t        |«      }d|v r|dz  }t        ||«       y # t        $ r i }Y Œ.w xY w)NÚversionr.   )Ú__warningregistry__ÚAttributeErrorÚlenr   )ÚmodÚn_in_contextÚ	mod_warnsÚ	num_warnss       r!   Úassert_warn_len_equalr³  ¥  sR   € ð
Ø×+Ñ+ˆ	ô �I“€Ià�IÑð 	�Q‰ˆ	ä�˜LÕ)øô# ò ð Š	ðús   ‚/ ¯=¼=c                  ó|   —  G d„ d«      }  | «       }t        |d¬«        G d„ d«      }  | «       }t        |d¬«       y )Nc                   ó   — e Zd Zy)ú/test_warn_len_equal_call_scenarios.<locals>.modN)rH   rI   rJ   r   r#   r!   r¯  r¶  Ä  s   „ Ør#   r¯  r   )r¯  r°  c                   ó   — e Zd Zd„ Zy)r¶  c                 ó   — dddœ| _         y )Nr.   r/   ©Úwarning1Úwarning2)r¬  rF   s    r!   Ú__init__z8test_warn_len_equal_call_scenarios.<locals>.mod.__init__Ï  s   € Ø45Ø45ñ(7ˆDÕ$r#   N)rH   rI   rJ   r¼  r   r#   r!   r¯  z/test_warn_len_equal_call_scenarios.<locals>.modÎ  s   „ ó	7r#   r/   )r³  )r¯  Úmod_insts     r!   Ú"test_warn_len_equal_call_scenariosr¾  ¼  sB   € ÷ñ ñ ‹u€Hä˜hØ'(õ*÷
7ñ 7ñ
 ‹u€HÜ˜hØ'(ö*r#   c                  óŠ   — t         j                  t           } 	 | j                  j	                  «        | S # t
        $ r Y | S w xY wr   )rý  rþ  rH   r¬  Úclearr­  ©Úmy_mods    r!   Ú_get_fresh_modrÃ  Ø  sI   € ä�[‰[œÑ"€FðØ×"Ñ"×(Ñ(Ô*ð
 €Møô	 ò ð 	Ø€Mð	ús   ™5 µ	AÁAc                  ó$  — t        «       } t        t        | di «      i «       t        | g¬«      5  t	        j
                  d«       t	        j                  d«       d d d «       t        | j                  i «       t        «       5  t	        j
                  d«       t	        j                  d«       d d d «       t        | d«       dddœ| _        t        | g¬«      5  t	        j
                  d«       t	        j                  d	«       d d d «       t        | d«       t        «       5  t	        j
                  d«       t	        j                  d	«       d d d «       t        | d«       y # 1 sw Y   �Œ	xY w# 1 sw Y   ŒÂxY w# 1 sw Y   ŒxxY w# 1 sw Y   Œ;xY w)
Nr¬  )rþ  ÚignoreúSome warningr   r.   r/   r¹  zAnother warning)	rÃ  r   Úgetattrr   rø  r  rù  r¬  r³  rÁ  s    r!   Útest_clear_and_catch_warningsrÈ  ä  sL  € ô Ó€FÜ”˜Ð!6¸Ó;¸RÔ@Ü	!¨6¨(Ô	3ñ &Ü×Ñ˜hÔ'Ü�‰�nÔ%÷&ô �×+Ñ+¨RÔ0ô 
"Ó	#ñ &Ü×Ñ˜hÔ'Ü�‰�nÔ%÷&ô ˜& !Ô$ð /0Ø./ñ"1€FÔô 
"¨6¨(Ô	3ñ )Ü×Ñ˜hÔ'Ü�‰Ð'Ô(÷)ô ˜& !Ô$ô 
"Ó	#ñ )Ü×Ñ˜hÔ'Ü�‰Ð'Ô(÷)ô ˜& !Õ$÷3&ñ &ú÷&ð &ú÷)ð )ú÷)ð )ús/   ¯+E!Â+E.Ã+E:Ä!+FÅ!E+Å.E7Å:FÆFc                  óö  — t        «       } t        t        | di «      i «       d„ }t        | d«       t	        «       5 }|j                  t        «       |j                  t        j                  j                  ¬«       t        j                  d«        |«        d d d «       t        t        j                  «      d«       t        |j                  d   j                  j                   d   d«       t        | d«       t	        «       }|j                  | ¬«       |5  t        j                  d«       d d d «       t        | d«       |j                  | ¬«       |5  t        j                  d«       d d d «       t        | d«       t	        «       5  t        j"                  d«       t        j                  d«       d d d «       t        | d«       y # 1 sw Y   �Œ5xY w# 1 sw Y   ŒªxY w# 1 sw Y   ŒxxY w# 1 sw Y   Œ;xY w)Nr¬  c                  ó:   — d„ } t        j                  | ddg«       y )Nc                 ó4   — t        j                  dd¬«       | S )NzSome warning 2r/   ©Ú
stacklevelr÷  ©Úarrs    r!   rù  zFtest_suppress_warnings_module.<locals>.warn_other_module.<locals>.warn  s   € Ü�M‰MÐ*°qÕ9ØˆJr#   r   ©r1   Úapply_along_axis©rù  s    r!   Úwarn_other_modulez8test_suppress_warnings_module.<locals>.warn_other_module  ó   € ò	ô 	×Ñ˜D ! a SÕ)r#   r   ©ÚmodulerÆ  r.   rÅ  )rÃ  r   rÇ  r³  r   Úrecordr   Úfilterr1   ÚlibÚ_shape_base_implrø  rù  r®  ÚlogÚmessager   r  )rÂ  rÓ  Úsups      r!   Útest_suppress_warnings_modulerÞ    sŠ  € ô Ó€FÜ”˜Ð!6¸Ó;¸RÔ@ò*ô ˜& !Ô$Ü	Ó	ð  Ø�
‰
”;Ôð 	�
‰
œ"Ÿ&™&×1Ñ1ˆ
Ô2Ü�‰�nÔ%ÙÔ÷ô ”�S—W‘W“˜qÔ!Ü�—‘˜‘×#Ñ#×(Ñ(¨Ñ+¨^Ô<Ü˜& !Ô$Ü
Ó
€Cà‡J�J�f€JÔØ	ñ &Ü�‰�nÔ%÷&ä˜& !Ô$à‡J�J�f€JÔØ	ñ &Ü�‰�nÔ%÷&ä˜& !Ô$ô 
Ó	ñ &Ü×Ñ˜hÔ'Ü�‰�nÔ%÷&ô ˜& !Õ$÷9ñ ú÷&ð &ú÷
&ð &ú÷
&ð &ús0   »AG
ÄGÅG#Æ
+G/Ç
GÇG Ç#G,Ç/G8c                  óÜ  — t        «       } t        t        | di «      i «       t        «       5 }|j	                  t
        «       t        j                  d«       d d d «       t        | d«       t        «       }|j	                  t
        «       |5  t        j                  d«       d d d «       t        | d«       |j	                  | ¬«       |5  t        j                  d«       d d d «       t        | d«       t        «       5  t        j                  d«       t        j                  d«       d d d «       t        | d«       y # 1 sw Y   ŒèxY w# 1 sw Y   Œ©xY w# 1 sw Y   ŒwxY w# 1 sw Y   Œ:xY w)Nr¬  rÆ  r   rÕ  rÅ  )
rÃ  r   rÇ  r   rØ  r   rø  rù  r³  r  )rÂ  rÝ  s     r!   Útest_suppress_warnings_typerà  7  s$  € ô Ó€FÜ”˜Ð!6¸Ó;¸RÔ@ô 
Ó	ð & Ø�
‰
”;ÔÜ�‰�nÔ%÷&ô ˜& !Ô$Ü
Ó
€CØ‡J�JŒ{ÔØ	ñ &Ü�‰�nÔ%÷&ä˜& !Ô$à‡J�J�f€JÔØ	ñ &Ü�‰�nÔ%÷&ä˜& !Ô$ô 
Ó	ñ &Ü×Ñ˜hÔ'Ü�‰�nÔ%÷&ô ˜& !Õ$÷'&ð &ú÷&ð &ú÷
&ð &ú÷
&ð &ús/   ¬+D>ÂE
Ã
EÃ>+E"Ä>EÅ
EÅEÅ"E+z8uses deprecated thread-unsafe warnings control utilitiesc                  ó,  — t        «       } | j                  t        «       | d„ «       }t        j                  d¬«      5 }t        j
                  d«        |t        «        |t        «       t        t        |«      d«       d d d «       y # 1 sw Y   y xY w)Nc                 ó0   — t        j                  d| «       y )NrÆ  r÷  )Úcategorys    r!   rù  z7test_suppress_warnings_decorate_no_record.<locals>.warna  s   € ä�‰�n hÕ/r#   T)r×  Úalwaysr.   )	r   rØ  r   rø  r  r  ÚRuntimeWarningr   r®  )rÝ  rù  Úws      r!   Ú)test_suppress_warnings_decorate_no_recordrç  W  s}   € ô Ó
€CØ‡J�JŒ{Ôàñ0ó 	ð0ô 
×	 Ñ	 ¨Ô	-ð  °Ü×Ñ˜hÔ'ÙŒ[ÔÙŒ^ÔÜ”S˜“V˜QÔ÷	 ÷  ñ  ús   ¾AB
Â
Bc                  ón  — t        «       } | j                  «       }| 5  | j                  d¬«      }| j                  d¬«       t        j                  d«       t        j                  d«       t        j                  d«       t        t        | j                  «      d«       t        t        |«      d«       t        t        |«      d«       t        |d   j                  j                  d   d«       d d d «       | 5  | j                  d¬«      }| j                  d¬«       t        j                  d«       t        j                  d«       t        j                  d«       t        t        | j                  «      d«       t        t        |«      d«       t        t        |«      d«       t        |d   j                  j                  d   d«       d d d «       t        «       5 } | j                  «        t        «       5 }|j                  d¬«       t        j                  d«       t        j                  d«       t        t        |j                  «      d«       d d d «       t        t        | j                  «      d«       d d d «       y # 1 sw Y   �Œ˜xY w# 1 sw Y   ŒÇxY w# 1 sw Y   ŒJxY w# 1 sw Y   y xY w)NzSome other warning 2)rÜ  rÆ  úSome other warningr/   r.   r   )
r   r×  rØ  rø  rù  r   r®  rÛ  rÜ  r   )rÝ  Úlog1Úlog2Úsup2s       r!   Útest_suppress_warnings_recordrí  l  s
  € ô Ó
€CØ�:‰:‹<€Dà	ñ 
FØ�z‰zÐ"8ˆzÓ9ˆØ�
‰
˜>ˆ
Ô*Ü�‰�nÔ%Ü�‰Ð*Ô+Ü�‰Ð,Ô-ä”S˜Ÿ™“\ 1Ô%Ü”S˜“Y Ô"Ü”S˜“Y Ô"Ü�T˜!‘W—_‘_×)Ñ)¨!Ñ,Ð.DÔE÷
Fð 
ñ 
FØ�z‰zÐ"8ˆzÓ9ˆØ�
‰
˜>ˆ
Ô*Ü�‰�nÔ%Ü�‰Ð*Ô+Ü�‰Ð,Ô-ä”S˜Ÿ™“\ 1Ô%Ü”S˜“Y Ô"Ü”S˜“Y Ô"Ü�T˜!‘W—_‘_×)Ñ)¨!Ñ,Ð.DÔE÷
Fô 
Ó	ð & Ø�
‰
ŒÜÓ ð 	+ DØ�K‰K ˆKÔ/Ü�M‰M˜.Ô)Ü�M‰MÐ.Ô/Üœ˜TŸX™X›¨Ô*÷		+ô 	”S˜Ÿ™“\ 1Ô%÷&ð &÷5
Fñ 
Fú÷
Fð 
Fú÷	+ð 	+ú÷&ð &ús>   �CJÃ:CJÇJ+Ç:AJÉ'J+ÊJÊJÊJ(	Ê$J+Ê+J4c                  óL  — d„ } t        «       5 }|j                  «        t        d«      5  t        d«      D ]  }t        j                  d«       Œ 	 d d d «       t        t        |j                  «      d«       d d d «       t        «       5 }|j                  «        t        d«      5  t        d«      D ],  }t        j                  d«       t        j                  d«       Œ. 	 d d d «       t        t        |j                  «      d«       d d d «       t        «       5 }|j                  «        t        d«      5  t        d«      D ]3  }t        j                  d«       t        j                  d«        | «        Œ5 	 d d d «       t        t        |j                  «      d«       d d d «       t        «       5 }|j                  «        t        d«      5  t        d«      D ]3  }t        j                  d«       t        j                  d	«        | «        Œ5 	 d d d «       t        t        |j                  «      d«       d d d «       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   �Œbx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   y xY w)
Nc                  ó:   — d„ } t        j                  | ddg«       y )Nc                 ó4   — t        j                  dd¬«       | S )NrÆ  r/   rÌ  r÷  rÎ  s    r!   rù  zJtest_suppress_warnings_forwarding.<locals>.warn_other_module.<locals>.warn¥  s   € Ü�M‰M˜.°QÕ7ØˆJr#   r   rÐ  rÒ  s    r!   rÓ  z<test_suppress_warnings_forwarding.<locals>.warn_other_module¢  rÔ  r#   rä  r/   rÆ  r8   ÚlocationrÖ  Úonceré  )r   r×  Úrangerø  rù  r   r®  rÛ  )rÓ  rÝ  Úis      r!   Ú!test_suppress_warnings_forwardingrõ  ›  s  € ò*ô 
Ó	ð & Ø�
‰
ŒÜ˜xÓ(ñ 	.Ü˜1“Xò .�Ü—‘˜nÕ-ñ.÷	.ô
 	”S˜Ÿ™“\ 1Ô%÷&ô 
Ó	ð & Ø�
‰
ŒÜ˜zÓ*ñ 	.Ü˜1“Xò .�Ü—‘˜nÔ-Ü—‘˜nÕ-ñ.÷	.ô 	”S˜Ÿ™“\ 1Ô%÷&ô 
Ó	ð 	& Ø�
‰
ŒÜ˜xÓ(ñ 	$Ü˜1“Xò $�Ü—‘˜nÔ-Ü—‘˜nÔ-Ù!Õ#ñ$÷	$ô 	”S˜Ÿ™“\ 1Ô%÷	&ô 
Ó	ð 	& Ø�
‰
ŒÜ˜vÓ&ñ 	$Ü˜1“Xò $�Ü—‘˜nÔ-Ü—‘Ð2Ô3Ù!Õ#ñ$÷	$ô 	”S˜Ÿ™“\ 1Ô%÷	&ð 	&÷9	.ñ 	.ú÷&ñ &ú÷	.ñ 	.ú÷&ñ &ú÷	$ð 	$ú÷	&ð 	&ú÷	$ð 	$ú÷	&ð 	&ús�   ŽIª&IÁ'IÂ
I)Â&;IÃ"'I)ÄJÄ7AI6Å:'JÆ3JÇAJÈ'JÉI	ÉIÉIÉI&	É!I)É)I3É6I?	É;JÊJÊJ	ÊJÊJ#c                  óä  — t        «       5 } t        j                  j                  | d«      }t	        |d«      5  	 d d d «       d d d «       t        t        j                  j                   «       «       d}	 t        «       5 } t        ‚# 1 sw Y   ŒNxY w# 1 sw Y   ŒRxY w# 1 sw Y   nxY wn# t        $ r d}Y nw xY wt        |«       t        t        j                  j                  | «       «       y )NÚtmpræ  FT)r   ÚosÚpathÚjoinÚopenr   ÚisdirÚ
ValueError)ÚtdirÚfpathÚraiseds      r!   Útest_tempdirr  Ô  sÍ   € Ü	‹ð �dÜ—‘—‘˜T 5Ó)ˆÜ�%˜Óñ 	Ø÷	÷ô ”—‘—‘˜dÓ#Ð#Ô$à€FðÜ‹Yð 	˜$ÜÐ÷	ð 	ú÷ð ú÷	ð 	úð 	øäò ØŠðúäˆF„OÜ”—‘—‘˜dÓ#Ð#Õ$sE   ‹-B¸BºBÁ6
B, Â BÂB	ÂBÂBÂB(Â$B, Â,B:Â9B:c                  ó¤  — t        «       5 } t        | d«      5  	 d d d «       d d d «       t        t        j                  j                   «       «       d}	 t        «       5 } t        ‚# 1 sw Y   ŒNxY w# 1 sw Y   ŒRxY w# 1 sw Y   nxY wn# t        $ r d}Y nw xY wt        |«       t        t        j                  j                  | «       «       y )Nræ  FT)r   rû  r   rø  rù  Úisfilerý  )rÿ  r   s     r!   Útest_temppathr  å  s¹   € Ü	‹ð �uÜ�%˜Óñ 	Ø÷	÷ô ”—‘—‘˜uÓ%Ð%Ô&à€FðÜ‹Zð 	˜5ÜÐ÷	ð 	ú÷ð ú÷	ð 	úð 	øäò ØŠðúäˆF„OÜ”—‘—‘˜uÓ%Ð%Õ&sE   ‹A3˜A'šA3Á
B Á A?Á'A0	Á,A3Á3A<Á?BÂB ÂBÂBc                   ó,   — e Zd Zej                  e    fZy)Úmy_cacwN)rH   rI   rJ   rý  rþ  Úclass_modulesr   r#   r!   r  r  õ  s   „ à—[‘[ Ñ*Ð,�Mr#   r  c                  óÖ   — t        «       } t        «       5  t        j                  d«       t        j                  d«       d d d «       t        | j                  i «       y # 1 sw Y   Œ xY w)NrÅ  rÆ  )rÃ  r  rø  r  rù  r   r¬  rÁ  s    r!   Ú%test_clear_and_catch_warnings_inheritr	  ú  sR   € ô Ó€FÜ	‹ñ &Ü×Ñ˜hÔ'Ü�‰�nÔ%÷&ô �×+Ñ+¨RÕ0÷&ð &ús   •+AÁA(zPython lacks refcountsz!garbage collector is global statec                   óT   — e Zd ZdZd„ Zd„ Zej                  j                  d„ «       Z	y)ÚTestAssertNoGcCyclesz Test assert_no_gc_cycles c                 ól   — d„ }t        «       5   |«        d d d «       t        |«       y # 1 sw Y   ŒxY w)Nc                  ó,   — g } | j                  g «       | S r   ©Úappendr  s    r!   Úno_cyclez2TestAssertNoGcCycles.test_passes.<locals>.no_cycle
  s   € ØˆAØ�H‰H�RŒLØˆHr#   )r   )r   r  s     r!   Útest_passesz TestAssertNoGcCycles.test_passes	  s3   € ò	ô
 !Ó"ñ 	ÙŒJ÷	ô 	˜HÕ%÷	ð 	ús   Ž*ª3c                 óü   — d„ }t        t        «      5  t        «       5   |«        d d d «       d d d «       t        t        «      5  t        |«       d d d «       y # 1 sw Y   Œ5xY w# 1 sw Y   Œ9xY w# 1 sw Y   y xY w)Nc                  óN   — g } | j                  | «       | j                  | «       | S r   r  )r'   s    r!   Ú
make_cyclez5TestAssertNoGcCycles.test_asserts.<locals>.make_cycle  s"   € ØˆAØ�H‰H�QŒKØ�H‰H�QŒKØˆHr#   )r   r+   r   )r   r  s     r!   Útest_assertsz!TestAssertNoGcCycles.test_asserts  sr   € ò	ô œ>Ó*ñ 	Ü$Ó&ñ Ù”÷÷	ô œ>Ó*ñ 	,Ü 
Ô+÷	,ð 	,÷ð ú÷	ð 	ú÷	,ð 	,ús-   “A&žA¦A&ÁA2ÁA#	ÁA&Á&A/Á2A;c                 ó4  ‡—  G ˆfd„d«      Š	 t        j                   ‰«       «      }	 t        t        «      5  t	        d„ «       ddd«       d‰_        y# 1 sw Y   ŒxY w# t
        $ r   |«       �t        j                  d«       ‚ Y Œ<w xY w# d‰_        w xY w)z•
        Test that in cases where the garbage cannot be collected, we raise an
        error, instead of hanging forever trying to clear it.
        c                   ó&   •— e Zd ZdZdZd„ Zˆ fd„Zy)ú<TestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDelz¥
            An object that not only contains a reference cycle, but creates new
            cycles whenever it's garbage-collected and its __del__ runs
            Tc                 ó   — | | _         y r   )ÚcyclerF   s    r!   r¼  zETestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDel.__init__0  s	   € Ø!�•
r#   c                 ó<   •— d | _         ‰j                  r ‰«        y y r   )r  r  )r   ÚReferenceCycleInDels    €r!   Ú__del__zDTestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDel.__del__3  s    ø€ à!�”
à&×1Ò1ñ (Õ)ð 2r#   N)rH   rI   rJ   Ú__doc__r  r¼  r  )r  s   €r!   r  r  )  s   ø„ ñð ˆJò"õ*r#   r  c                   ó   — y r   r   r   r#   r!   r-  z1TestAssertNoGcCycles.test_fails.<locals>.<lambda>A  s   � r#   Nz*GC does not call __del__ on cyclic objectsF)	ÚweakrefÚrefr   r  r   r+   rb   Úskipr  )r   ræ  r  s     @r!   Ú
test_failszTestAssertNoGcCycles.test_fails"  s“   ø€ ÷	*ó 	*ð&	3Ü—‘Ñ/Ó1Ó2ˆAð	Ü"¤<Ó0ñ 6ä'©Ô5÷6ð .3ÐÕ*÷6ð 6ûô "ò ñ “3�?Ü—K‘KÐ LÔMØñ #ðûð .3ÐÕ*ús?   �B ªA" ¹AÁA" ÁAÁA" Á"&BÂB Â
BÂB Â	BN)
rH   rI   rJ   r  r  r  rb   ÚmarkÚslowr#  r   r#   r!   r  r    s/   „ ñ %ò	&ò,ð ‡[�[×Ññ(3ó ñ(3r#   r  )Br‹   rø  rf   rý  rø  r   rb   Únumpyr1   Únumpy._core._multiarray_umathÚ_coreÚ_multiarray_umathr  Únumpy.testingr   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rL   rÊ   rä   r  re  r‹  r¥  r$  ÚfilterwarningsÚthread_unsaferó  r  r=  r�  r¡  r³  r¾  rÃ  rÈ  rÞ  rà  rç  rí  rõ  r  r  r  r	  Úskipifr  r   r#   r!   ú<module>r.     sf  ðÛ Û 	Û 	Û 
Û Û ã ã ß +Ð +÷÷ ÷ ÷ ÷ õ ÷2./ñ ./ôbC1�\ô C1÷L*ñ *ôZ\)�ô \)ô~U ˜<ô U ôpg �lô g ÷T(Mñ (M÷VcDñ cDðJ ‡�×Ñðóð ‡�×ÑÐ"NÐÓO÷EHð EHó PóðEH÷Pk"ñ k"÷Zc,ñ c,÷L5Gñ 5G÷pAñ Aò(*ò.*ò8	ð ‡�×ÑÐ"NÐÓOñ%ó Pð%ð@ ‡�×Ñðóð ‡�×ÑÐ"NÐÓOñ+%ó Póð+%ð\ ‡�×Ñðóð ‡�×ÑÐ"NÐÓOñ%ó Póð%ð8 ‡�×Ñðóð ‡�×ÑØEð ó ñ óóð ð ‡�×Ñðóð ‡�×ÑØEð ó ñ&&óóð&&ðR ‡�×Ñðóð ‡�×ÑØEð ó ñ0&óóð0&òf%ò"'ô -Ð&ô -ð
 ‡�×ÑÐ"NÐÓOñ1ó Pð1ð ‡�×Ñ˜Ð$Ð-EÐÓFØ‡�×ÑÐ"EÐÓF÷E3ð E3ó Gó GñE3r#   