ó
    �œ‘hD ã                   ót  • S SK r S SKrS SKrS SKrS SKrS SKrS SKrS SKrS SK	J
s  Jr  S SKJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJ r J!r!J"r"   " S S5      r# " S S\#5      r$ " S S5      r% " S	 S
\$5      r& " S S\#5      r' " S S\#5      r( " S S5      r) " S S5      r* " S S5      r+ " S S5      r, " S S5      r- " S S5      r. " S S5      r/S r0S r1S r2S  r3S! r4S" r5S# r6S$ r7S% r8S& r9S' r: " S( S)\5      r;S* r<\Rz                  R}                  \(       + S+S,9 " S- S.5      5       r?g)/é    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                   óD   • \ rS rSrS rS rS rS rS rS r	S r
S	 rS
rg)Ú_GenericTesté%   c                 ó&   • U R                  X5        g ©N©Ú_assert_func©ÚselfÚaÚbs      ÚbC:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\numpy/testing/tests/test_utils.pyÚ_test_equalÚ_GenericTest._test_equal'   s   € Ø×Ñ˜!Õó    c                 óx   • [        [        5         U R                  X5        S S S 5        g ! , (       d  f       g = fr   )r   ÚAssertionErrorr   r   s      r#   Ú_test_not_equalÚ_GenericTest._test_not_equal*   s$   € Üœ>Õ*Ø×Ñ˜aÔ#÷ +×*Ö*ús   �+«
9c                 ó†   • [         R                  " SS/5      n[         R                  " SS/5      nU R                  X5        g)z/Test two equal array of rank 1 are found equal.é   é   N©ÚnpÚarrayr$   r   s      r#   Útest_array_rank1_eqÚ _GenericTest.test_array_rank1_eq.   s4   € ä�HŠH�a˜�VÓˆÜ�HŠH�a˜�VÓˆà×Ñ˜Õr&   c                 ó†   • [         R                  " SS/5      n[         R                  " SS/5      nU R                  X5        g)z7Test two different array of rank 1 are found not equal.r,   r-   N©r/   r0   r)   r   s      r#   Útest_array_rank1_noteqÚ#_GenericTest.test_array_rank1_noteq5   s4   € ä�HŠH�a˜�VÓˆÜ�HŠH�a˜�VÓˆà×Ñ˜QÕ"r&   c                 ó–   • [         R                  " SS/SS//5      n[         R                  " SS/SS//5      nU R                  X5        g)z/Test two equal array of rank 2 are found equal.r,   r-   é   é   Nr.   r   s      r#   Útest_array_rank2_eqÚ _GenericTest.test_array_rank2_eq<   sF   € ä�HŠH�q˜!�f˜q !˜fÐ%Ó&ˆÜ�HŠH�q˜!�f˜q !˜fÐ%Ó&ˆà×Ñ˜Õr&   c                 óŽ   • [         R                  " SS/5      n[         R                  " SS/SS//5      nU R                  X5        g)ú:Test two arrays with different shapes are found not equal.r,   r-   Nr4   r   s      r#   Útest_array_diffshapeÚ!_GenericTest.test_array_diffshapeC   s=   € ä�HŠH�a˜�VÓˆÜ�HŠH�q˜!�f˜q !˜fÐ%Ó&ˆà×Ñ˜QÕ"r&   c                 ó^   • [         R                  " SS/[        S9nU R                  US5        g)zTest object arrays.r,   ©ÚdtypeN)r/   r0   Úobjectr$   ©r    r!   s     r#   Útest_objarrayÚ_GenericTest.test_objarrayJ   s&   € ä�HŠH�a˜�V¤6Ñ*ˆØ×Ñ˜˜AÕr&   c                 ó,   • U R                  / SQS5        g )N©r,   r-   r8   )r$   ©r    s    r#   Útest_array_likesÚ_GenericTest.test_array_likesO   s   € Ø×Ñš IÕ.r&   © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r$   r)   r1   r5   r:   r>   rE   rJ   Ú__static_attributes__rL   r&   r#   r   r   %   s*   † ò ò$òò#òò#òõ
/r&   r   c                   ót   • \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rS rS rS rS rS rS rSrg)ÚTestArrayEqualéS   c                 ó   • [         U l        g r   )r
   r   rI   s    r#   Úsetup_methodÚTestArrayEqual.setup_methodU   s
   € Ü.ˆÕr&   c                 óV   ^ • U 4S jnS H  nU" U5        M     S H  nU" U5        M     g)z!Test rank 1 array for all dtypes.c                 óü   >• [         R                  " SU 5      nUR                  S5        UR                  5       nUR                  5       nUR                  S5        TR	                  X5        TR                  X25        g )Nr-   r,   r   ©r/   ÚemptyÚfillÚcopyr$   r)   ©Útr!   r"   Úcr    s       €r#   ÚfooÚ.TestArrayEqual.test_generic_rank1.<locals>.fooZ   sZ   ø€ Ü—’˜˜A“ˆAØ�F‰F�1ŒIØ—‘“ˆAØ—‘“ˆAØ�F‰F�1ŒIØ×Ñ˜QÔ"Ø× Ñ  Õ&r&   ú?bhilqpBHILQPfdgFDG©ÚS1ÚU1NrL   ©r    ra   r_   s   `  r#   Útest_generic_rank1Ú!TestArrayEqual.test_generic_rank1X   ó.   ø€ õ	'ó 'ˆAÙ�ŽFñ 'ó ˆAÙ�ŽFò r&   c                 ó„  • [         R                  " S5      n[         R                  " S5      n[        R                  " [        5       nU R                  X5        S S S 5        [        WR                  5      n[        SU;   5        UnU R                  X5        [         R                  " S5      n[         R                  " S5      nSn[        R                  " [        [        R                  " U5      S9   U R                  X5        S S S 5        UnU R                  X5        g ! , (       d  f       NÍ= f! , (       d  f       N3= f)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)r/   r0   ÚpytestÚraisesr(   r   ÚstrÚvaluer   ÚreÚescape)r    ÚxÚyÚexc_infoÚmsgÚexpected_msgs         r#   Útest_0_ndim_arrayÚ TestArrayEqual.test_0_ndim_arrayk   sð   € Ü�HŠHÐ9Ó:ˆÜ�HŠHÐ8Ó9ˆä�]Š]œ>Ô*¨hØ×Ñ˜aÔ#÷ +ä�(—.‘.Ó!ˆÜÐ5Øñô 	ð ˆØ×Ñ˜!Ôä�HŠHÐ3Ó4ˆÜ�HŠH�Q‹KˆðJˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ Jð ˆØ×Ñ˜!Õ÷' +Õ*ú÷ JÕIús   ÁD Ã2D1Ä 
D.Ä1
D?c                 óV   ^ • U 4S jnS H  nU" U5        M     S H  nU" U5        M     g)z!Test rank 3 array for all dtypes.c                 óü   >• [         R                  " SU 5      nUR                  S5        UR                  5       nUR                  5       nUR                  S5        TR	                  X5        TR                  X25        g )N)r9   r-   r8   r,   r   rZ   r^   s       €r#   ra   Ú.TestArrayEqual.test_generic_rank3.<locals>.foo†   s[   ø€ Ü—’˜ AÓ&ˆAØ�F‰F�1ŒIØ—‘“ˆAØ—‘“ˆAØ�F‰F�1ŒIØ×Ñ˜QÔ"Ø× Ñ  Õ&r&   rc   rd   NrL   rg   s   `  r#   Útest_generic_rank3Ú!TestArrayEqual.test_generic_rank3„   rj   r&   c                 ó  • [         R                  " SS[         R                  /5      n[         R                  " SS[         R                  /5      nU R                  X5        [         R                  " / SQ5      nU R	                  X25        g)z$Test arrays with nan values in them.r,   r-   rH   N)r/   r0   Únanr$   r)   ©r    r!   r"   r`   s       r#   Útest_nan_arrayÚTestArrayEqual.test_nan_array—   s\   € ä�HŠH�a˜œBŸF™F�^Ó$ˆÜ�HŠH�a˜œBŸF™F�^Ó$ˆà×Ñ˜Ôä�HŠH’YÓˆØ×Ñ˜QÕ"r&   c                 óØ   • [         R                  " SS/5      n[         R                  " SS/5      nU R                  X5        [         R                  " SS/5      nU R                  X25        g)r=   ÚfloupiÚfloupaÚfloupipiN)r/   r0   r$   r)   r‚   s       r#   Útest_string_arraysÚ!TestArrayEqual.test_string_arrays¡   sW   € ä�HŠH�h Ð)Ó*ˆÜ�HŠH�h Ð)Ó*ˆà×Ñ˜Ôä�HŠH�j (Ð+Ó,ˆà×Ñ˜QÕ"r&   c                 óæ  • [         R                  " SS[        4S[        4/5      nSS/US'   SS/US'   UR                  5       nU R	                  X5        [         R                  " SS[        4S[        4S[        4/5      nUS   R                  5       US'   US   R                  5       US'   [
        R                  " [        5         U R                  X25        SSS5        g! , (       d  f       g= f)zTest record arrays.r-   r†   r‡   r,   rˆ   N)	r/   r[   Úfloatr]   r$   rn   ro   Ú	TypeErrorr)   r‚   s       r#   Útest_recarraysÚTestArrayEqual.test_recarrays¬   sÒ   € ä�HŠH�Q˜(¤EÐ*¨X´uÐ,=Ð>Ó?ˆØ˜!�fˆˆ(‰Ø˜!�fˆˆ(‰Ø�F‰F‹Hˆà×Ñ˜Ôä�HŠH�Q˜*¤eÐ,Ø"¤EÐ*¨X´uÐ,=ð?ó @ˆà˜(™×(Ñ(Ó*ˆˆ*‰Ø˜‘k×&Ñ&Ó(ˆˆ(‰ä�]Š]œ9Õ%Ø× Ñ  Ô&÷ &×%Ö%ús   ÃC"Ã"
C0c                 ó°  • [         R                  R                  / SQ/ SQS9n[         R                  " S[         R                  S/5      nU R                  X5        U R                  X!5        [         R                  R                  / SQ/ SQS9n[         R                  " [         R                  SS/5      nU R                  X5        U R                  X!5        g )N©ç      @ç      @ç      @)FTF©Úmaskr’   r”   )TFFr“   )r/   ÚmaÚMaskedArrayr0   r�   r$   Úinfr   s      r#   Útest_masked_nan_infÚ"TestArrayEqual.test_masked_nan_inf½   s    € ä�E‰E×ÑšmÒ2FÐÐGˆÜ�HŠH�bœ"Ÿ&™& #Ð&Ó'ˆØ×Ñ˜ÔØ×Ñ˜ÔÜ�E‰E×ÑšmÒ2FÐÐGˆÜ�HŠH”b—f‘f˜b #Ð&Ó'ˆØ×Ñ˜ÔØ×Ñ˜Õr&   c                 óX  •  " S S[         R                  5      n[         R                  " SS/5      R                  U5      n[         R                  " SS/5      R                  U5      n[	        [        X":H  5      [        5        [	        X":H  5        [	        X#:g  5        U R                  X"5        U R                  X#5        U R                  X25        Sn[        R                  " [        [        R                  " U5      S9   U R                  X#5        S S S 5        [         R                  " SS	/5      R                  U5      nS
n[        R                  " [        [        R                  " U5      S9   U R                  X55        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)Nc                   ó    • \ rS rSrS rS rSrg)Ú?TestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArrayéÍ   c                 ó\   • [        [        R                  " X5      R                  5       5      $ r   )Úboolr/   ÚequalÚall©r    Úothers     r#   Ú__eq__ÚFTestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArray.__eq__Î   s   € ÜœBŸHšH TÓ1×5Ñ5Ó7Ó8Ð8r&   c                 ó   • X:X  + $ r   rL   r¤   s     r#   Ú__ne__ÚFTestArrayEqual.test_subclass_that_overrides_eq.<locals>.MyArray.__ne__Ñ   s   € ØÒ(Ð(r&   rL   N)rM   rN   rO   rP   r¦   r©   rQ   rL   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.5rl   ç        g333333@z{Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 2.
Max relative difference among violations: inf)r/   Úndarrayr0   Úviewr   Útyper¡   r$   r)   rn   ro   r(   rr   rs   )r    r«   r!   r"   rx   r`   s         r#   Útest_subclass_that_overrides_eqÚ.TestArrayEqual.test_subclass_that_overrides_eqÈ   s:  € ô
	)”b—j‘jô 	)ô �HŠH�b˜"�XÓ×#Ñ# GÓ,ˆÜ�HŠH�b˜"�XÓ×#Ñ# GÓ,ˆÜ”�Q‘V“œdÔ#Ü�‘ŒÜ�‘ŒØ×Ñ˜ÔØ×Ñ˜QÔ"Ø×Ñ˜QÔ"ðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜QÔ"÷ Jô �HŠH�b˜#�YÓ×$Ñ$ WÓ-ˆðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜QÔ"÷ JÐI÷ JÕIú÷ JÕIús   Ã?F
Å/FÆ

FÆ
F)c                 ó¶  •  " S S[         R                  5      n[         R                  " SS/5      R                  U5      n[         R                  " SS/5      R                  U5      n[	        [
        5         [         R                  " U5        S S S 5        U R                  X"5        U R                  X#5        U R                  X25        g ! , (       d  f       NB= f)Nc                   ó   • \ rS rSrS rSrg)ÚKTestArrayEqual.test_subclass_that_does_not_implement_npall.<locals>.MyArrayéë   c                 ó   • [         $ r   )ÚNotImplemented©r    ÚargsÚkwargss      r#   Ú__array_function__Ú^TestArrayEqual.test_subclass_that_does_not_implement_npall.<locals>.MyArray.__array_function__ì   s   € Ü%Ð%r&   rL   N)rM   rN   rO   rP   r½   rQ   rL   r&   r#   r«   r¶   ë   s   † õ&r&   r«   r¬   r­   r’   )	r/   r¯   r0   r°   r   r�   r£   r$   r)   )r    r«   r!   r"   s       r#   Ú+test_subclass_that_does_not_implement_npallÚ: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÷ &à×Ñ˜ÔØ×Ñ˜QÔ"Ø×Ñ˜QÕ"÷	 &Õ%ús   Á7C
Ã

Cc           	      óœ  • [         R                  " [        5         [        R                  " SS9   [        R
                  R                  [        R                  " / SQ[        R                  5      [        R                  " / SQ[        R                  5      5        S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)NÚraise©r£   rH   )r,   gœWw'&l¡7r8   )	rn   ro   r(   r/   ÚerrstateÚtestingr
   r0   Úfloat32rI   s    r#   Útest_suppress_overflow_warningsÚ.TestArrayEqual.test_suppress_overflow_warnings÷   sm   € ä�]Š]œ>Õ*Ü—’ Ó)Ü—
‘
×-Ñ-Ü—H’HšY¬¯
©
Ó3Ü—H’Hš]¬B¯J©JÓ7ô9÷ *÷ +Ð*ß)Õ)ú÷ +Õ*ús#   ›B=°A+B,ÂB=Â,
B:	Â6B=Â=
Cc                 óZ   • [         R                  " / SQ5      nSnU R                  X5        g)z@Test comparing an array with a scalar when all values are equal.©r¬   r¬   r¬   r¬   Nr.   r   s      r#   Útest_array_vs_scalar_is_equalÚ,TestArrayEqual.test_array_vs_scalar_is_equalÿ   s#   € ä�HŠH’\Ó"ˆØˆà×Ñ˜Õr&   c                 óü  • [         R                  " / SQ5      n[         R                  " / SQ5      nSn[        R                  " [        [
        R                  " U5      S9   U R                  X5        SSS5        [         R                  " / SQ5      nSn[        R                  " [        [
        R                  " U5      S9   U R                  X5        SSS5        g! , (       d  f       Np= f! , (       d  f       g= f)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%)
Max absolute difference among violations: 563766
Max relative difference among violations: infrl   N)rÎ   rÏ   gÍÌÌÌœÕArÑ   z‹Mismatched elements: 2 / 4 (50%)
Max absolute difference among violations: 563766.
Max relative difference among violations: 4.54902139e-07©r/   r0   rn   ro   r(   rr   rs   r   ©r    r!   r"   rx   s       r#   Útest_array_vs_array_not_equalÚ,TestArrayEqual.test_array_vs_array_not_equal  s±   € ä�HŠHÒ4Ó5ˆÜ�HŠHÒ/Ó0ˆðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ Jô �HŠHÒ6Ó7ˆð)ˆô
 �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ JÐI÷ JÕIú÷ JÕIús   Á CÃC-Ã
C*Ã-
C;c                 óÀ   • [         R                  " / SQ5      nSn[        R                  " [        5         U R                  XSS9  SSS5        g! , (       d  f       g= f)z9Test comparing an array with a scalar with strict option.rÊ   r¬   T©ÚstrictN©r/   r0   rn   ro   r(   r   r   s      r#   Útest_array_vs_scalar_strictÚ*TestArrayEqual.test_array_vs_scalar_strict  s@   € ä�HŠH’\Ó"ˆØˆä�]Š]œ>Õ*Ø×Ñ˜a¨4ÐÑ0÷ +×*Ö*ús   µAÁ
Ac                 ó„   • [         R                  " / SQ5      n[         R                  " / SQ5      nU R                  XSS9  g)ú-Test comparing two arrays with strict option.rÊ   Tr×   N)r/   r0   r   r   s      r#   Útest_array_vs_array_strictÚ)TestArrayEqual.test_array_vs_array_strict"  s1   € ä�HŠH’\Ó"ˆÜ�HŠH’\Ó"ˆà×Ñ˜! tÐÒ,r&   c                 óì   • [         R                  " / SQ5      n[         R                  " / SQ5      n[        R                  " [        5         U R                  XSS9  SSS5        g! , (       d  f       g= f)rÝ   )r,   r,   r,   rÊ   Tr×   NrÙ   r   s      r#   Ú test_array_vs_float_array_strictÚ/TestArrayEqual.test_array_vs_float_array_strict)  sI   € ä�HŠH’YÓˆÜ�HŠH’\Ó"ˆä�]Š]œ>Õ*Ø×Ñ˜a¨4ÐÑ0÷ +×*Ö*ús   ÁA%Á%
A3r   N)rM   rN   rO   rP   rV   rh   ry   r~   rƒ   r‰   rŽ   rš   r²   r¿   rÇ   rË   rÔ   rÚ   rÞ   rá   rQ   rL   r&   r#   rS   rS   S   sS   † ò/òò& ò2ò&#ò	#ò'ò"	ò #òD#ò9òò$ò(1ò-õ1r&   rS   c                   ó,   • \ rS rSrS rS rS rS rSrg)ÚTestBuildErrorMessagei2  c                 óœ   • [         R                  " / SQ5      n[         R                  " / SQ5      nSn[        X/U5      nSn[        XE5        g )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])©r/   r0   r   r   ©r    rt   ru   Úerr_msgr!   r"   s         r#   Útest_build_err_msg_defaultsÚ1TestBuildErrorMessage.test_build_err_msg_defaults4  sD   € Ü�HŠHÒ0Ó1ˆÜ�HŠHÒ0Ó1ˆØ'ˆä˜1˜& 'Ó*ˆð"ˆô 	�QÕr&   c                 óš   • [         R                  " / SQ5      n[         R                  " / SQ5      nSn[        X/USS9nSn[        XE5        g )Nræ   ré   rì   F)Úverbosez)
Items are not equal: There is a mismatchrí   rî   s         r#   Útest_build_err_msg_no_verboseÚ3TestBuildErrorMessage.test_build_err_msg_no_verbose?  sB   € Ü�HŠHÒ0Ó1ˆÜ�HŠHÒ0Ó1ˆØ'ˆä˜1˜& '°5Ñ9ˆØ8ˆÜ�QÕr&   c                 óš   • [         R                  " / SQ5      n[         R                  " / SQ5      nSn[        X/USS9nSn[        XE5        g )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_namesÚ5TestBuildErrorMessage.test_build_err_msg_custom_namesH  sF   € Ü�HŠHÒ0Ó1ˆÜ�HŠHÒ0Ó1ˆØ'ˆä˜1˜& '°Ñ@ˆðˆô 	�QÕr&   c                 óš   • [         R                  " / SQ5      n[         R                  " / SQ5      nSn[        X/USS9nSn[        XE5        g )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_precisionÚ9TestBuildErrorMessage.test_build_err_msg_custom_precisionS  sF   € Ü�HŠHÒ4Ó5ˆÜ�HŠHÒ4Ó5ˆØ'ˆä˜1˜& '°RÑ8ˆð7ˆô 	�QÕr&   rL   N)	rM   rN   rO   rP   rð   rô   rú   rÿ   rQ   rL   r&   r#   rä   rä   2  s   † ò	òò	õ	r&   rä   c                   óP   • \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rSrg)Ú	TestEquali_  c                 ó   • [         U l        g r   )r   r   rI   s    r#   rV   ÚTestEqual.setup_methoda  s
   € Ü(ˆÕr&   c                 ó^  • U R                  [        R                  [        R                  5        U R                  [        R                  /[        R                  /5        U R                  [        R                  [        R                  /5        U R                  [        R                  S5        g ©Nr,   )r   r/   r�   r)   rI   s    r#   Útest_nan_itemsÚTestEqual.test_nan_itemsd  sd   € Ø×Ñœ"Ÿ&™&¤"§&¡&Ô)Ø×Ñœ2Ÿ6™6˜(¤R§V¡V HÔ-Ø×ÑœRŸV™V¤b§f¡f XÔ.Ø×ÑœRŸV™V QÕ'r&   c                 ó  • U R                  [        R                  [        R                  5        U R                  [        R                  /[        R                  /5        U R                  [        R                  [        R                  /5        g r   )r   r/   r™   r)   rI   s    r#   Útest_inf_itemsÚTestEqual.test_inf_itemsj  sP   € Ø×Ñœ"Ÿ&™&¤"§&¡&Ô)Ø×Ñœ2Ÿ6™6˜(¤R§V¡V HÔ-Ø×ÑœRŸV™V¤b§f¡f XÕ.r&   c                 óä  • U R                  [        R                  " SS5      [        R                  " SS5      5        U R                  [        R                  " SS5      [        R                  " SS5      5        U R                  [        R                  " SS5      [        R                  " SS5      5        U R                  [        R                  " SS5      [        R                  " SS5      5        g )Nú
2017-01-01ÚsÚmz
2017-01-02)r$   r/   Ú
datetime64r)   rI   s    r#   Útest_datetimeÚTestEqual.test_datetimeo  s°   € Ø×ÑÜ�MŠM˜,¨Ó,Ü�MŠM˜,¨Ó,ô	
ð 	×ÑÜ�MŠM˜,¨Ó,Ü�MŠM˜,¨Ó,ô	
ð 	×ÑÜ�MŠM˜,¨Ó,Ü�MŠM˜,¨Ó,ô	
ð 	×ÑÜ�MŠM˜,¨Ó,Ü�MŠM˜,¨Ó,õ	
r&   c                 ól  • [         R                  " S5      n[         R                  " SS5      n[         R                  " SS5      n[         R                  " S5      n[         R                  " SS5      n[         R                  " SS5      nXU/nXEU/n[        R                  " Xw5       H=  u  pšU R                  Xš5        U R                  U	/U
/5        U R                  U	/U
5        M?     [        R                  " Xˆ5       H=  u  pšU R                  Xš5        U R                  U	/U
/5        U R                  U	/U
5        M?     [        R                  " X‡5       HÜ  u  pšU R                  Xš5        U R                  Xš/5        U R                  U	/U
/5        U R                  U	/[         R                  " SS5      5        U R                  U
/[         R                  " SS5      5        U R                  U	/[         R                  " SS5      5        U R                  U
/[         R                  " SS5      5        MÞ     g )NÚNaTr  Únsr  é{   )r/   r  Útimedelta64Ú	itertoolsÚproductr   r)   )r    Únadt_no_unitÚnadt_sÚnadt_dÚnatd_no_unitÚnatd_sÚnatd_dÚdtsÚtdsr!   r"   s              r#   Útest_nat_itemsÚTestEqual.test_nat_itemsƒ  sÉ  € ä—}’} UÓ+ˆÜ—’˜u cÓ*ˆÜ—’˜u dÓ+ˆä—~’~ eÓ,ˆÜ—’  sÓ+ˆÜ—’  tÓ,ˆà VÐ,ˆØ VÐ,ˆÜ×%Ò% cÖ/‰DˆAØ×Ñ˜aÔ#Ø×Ñ˜q˜c A 3Ô'Ø× Ñ  !  aÖ(ñ 0ô
 ×%Ò% cÖ/‰DˆAØ×Ñ˜aÔ#Ø×Ñ˜q˜c A 3Ô'Ø× Ñ  !  aÖ(ñ 0ô
 ×%Ò% cÖ/‰DˆAØ× Ñ  Ô&Ø× Ñ   CÔ(Ø× Ñ  !  q cÔ*Ø× Ñ  ! ¤b§m¢m°LÀ#Ó&FÔGØ× Ñ  ! ¤b§m¢m°LÀ#Ó&FÔGØ× Ñ  ! ¤b§n¢n°S¸#Ó&>Ô?Ø× Ñ  ! ¤b§n¢n°S¸#Ó&>Ö?ò 0r&   c                 óL   • U R                  SS5        U R                  SS5        g )NÚabÚabb)r   r)   rI   s    r#   Útest_non_numericÚTestEqual.test_non_numeric¢  s"   € Ø×Ñ˜$ Ô%Ø×Ñ˜T 5Õ)r&   c                 ó`  • U R                  [        SS5      [        SS5      5        U R                  [        S[        R                  5      [        S[        R                  5      5        U R	                  [        S[        R                  5      [        SS5      5        U R	                  [        [        R                  S5      [        S[        R                  5      5        U R	                  [        [        R                  [        R
                  5      [        [        R                  S5      5        g ©Nr,   r-   )r   Úcomplexr/   r�   r)   r™   rI   s    r#   Útest_complex_itemÚ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                 ó`   • U R                  [        R                  [        R                  5        g r   )r)   ÚncuÚPZEROÚNZEROrI   s    r#   Útest_negative_zeroÚTestEqual.test_negative_zero­  s   € Ø×ÑœSŸY™Y¬¯	©	Õ2r&   c                 ó  • [         R                  " [        SS5      [        S[         R                  5      /5      n[         R                  " [        SS5      [        SS5      /5      nU R	                  X5        U R                  X5        g r*  ©r/   r0   r+  r�   r   r)   ©r    rt   ru   s      r#   Útest_complexÚTestEqual.test_complex°  sa   € Ü�HŠH”g˜a “m¤W¨Q´·±Ó%7Ð8Ó9ˆÜ�HŠH”g˜a “m¤W¨Q°£]Ð3Ó4ˆØ×Ñ˜!ÔØ×Ñ˜QÕ"r&   c                 ó®   • SS K n[        R                  " UR                  SSS5      UR                  SSS5      /5      nU R                  X"S S S2   5        g )Nr   iÐ  r,   r-   éÿÿÿÿ)Údatetimer/   r0   r)   )r    r;  r!   s      r#   Útest_objectÚTestEqual.test_object¶  sQ   € ãÜ�HŠH�h×'Ñ'¨¨a°Ó3Ø×'Ñ'¨¨a°Ó3ð5ó 6ˆà×Ñ˜Q¡$ B $¡Õ(r&   r   N)rM   rN   rO   rP   rV   r  r
  r  r"  r'  r,  r2  r7  r<  rQ   rL   r&   r#   r  r  _  s6   † ò)ò(ò/ò

ò(@ò>*òJò3ò#õ)r&   r  c                   óJ   • \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rSrg)ÚTestArrayAlmostEquali¾  c                 ó   • [         U l        g r   )r   r   rI   s    r#   rV   Ú!TestArrayAlmostEqual.setup_methodÀ  s
   € Ü5ˆÕr&   c                 ó  • Sn[         R                  " [        [        R                  " U5      S9   U R                  SSSS9  S S S 5        U R                  S/S/SS9  Sn[         R                  " [        [        R                  " U5      S9   U R                  S/S/SS9  S S S 5        SS	/nS
S/nSn[         R                  " [        [        R                  " U5      S9   U R                  X#SS9  S S S 5        Sn[         R                  " [        [        R                  " U5      S9   U R                  X2SS9  S S S 5        g ! , (       d  f       GN= f! , (       d  f       N¹= f! , (       d  f       Nz= f! , (       d  f       g = f)Nz}Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.5
Max relative difference among violations: infrl   ç      ø?r®   r   ©Údecimalçõ…�óþÿ÷?ge(åÿÿ÷?giUMuÿ>gB?×çÿÿ÷?zMismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 3.e-05
Max relative difference among violations: infé   z~Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 3.e-05
Max relative difference among violations: 1.©rn   ro   r(   rr   rs   r   )r    rx   r!   r"   s       r#   Útest_closenessÚ#TestArrayAlmostEqual.test_closenessÃ  sM  € ðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜c 3°ÐÑ2÷ Jð 	×Ñ˜8˜* s e°QÐÑ7ðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜s˜e c U°AÐÑ6÷ Jð ˜Ð ˆØ˜ˆOˆðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜a¨AÐÑ.÷ JðGˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜a¨AÐÑ.÷ JÐI÷/ JÖIú÷ JÕIú÷ JÕIú÷ JÕIús/   °EÂEÃE$Ä'E5Å
EÅ
E!Å$
E2Å5
Fc                 óR  • [         R                  " S/5      n[         R                  " S/5      nU R                  XSS9  U R                  XSS9  Sn[        R                  " [
        [        R                  " U5      S9   U R                  XSS9  S S S 5        g ! , (       d  f       g = f)	Ng¯”eˆãH“@gšwœ¢ãH“@r8   rD  r9   z‹Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.e-04
Max relative difference among violations: 8.10226812e-08rl   é   ©r/   r0   r   rn   ro   r(   rr   rs   ©r    rt   ru   rx   s       r#   Útest_simpleÚ TestArrayAlmostEqual.test_simpleè  sˆ   € Ü�HŠH�i�[Ó!ˆÜ�HŠH�i�[Ó!ˆà×Ñ˜!¨ÐÑ*Ø×Ñ˜!¨ÐÑ*ð)ˆô
 �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜a¨AÐÑ.÷ J×IÖIús   Á>BÂ
B&c                 óä  • / SQnSnSn[         R                  " [        [        R                  " U5      S9   U R                  XSS9  S S S 5        Sn[         R                  " [        [        R                  " U5      S9   U R                  X!SS9  S S S 5        SS/nS	n[         R                  " [        [        R                  " U5      S9   U R                  X!S
S9  S S S 5        SnS	n[         R                  " [        [        R                  " U5      S9   U R                  XS
S9  S S S 5        g ! , (       d  f       Ní= f! , (       d  f       N¶= f! , (       d  f       N{= f! , (       d  f       g = f)N)çŒmlzµ@gHPüXŒŠ@r®   rR  z„Mismatched elements: 2 / 3 (66.7%)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: 1.rl   é	   rD  z‹Mismatched elements: 2 / 3 (66.7%)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: 5.4722099r®   zƒMismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 5498.42354
Max relative difference among violations: infrG  r   rH  rÓ   s       r#   Útest_array_vs_scalarÚ)TestArrayAlmostEqual.test_array_vs_scalar÷  s2  € Ú)ˆØˆðGˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜a¨AÐÑ.÷ JðNˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜a¨AÐÑ.÷ Jð ˜ÐˆðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜a¨AÐÑ.÷ Jð ˆðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜a¨AÐÑ.÷ JÐI÷/ JÕIú÷ JÕIú÷ JÕIú÷ JÕIús/   ¶D.Á>D?Ã
EÄE!Ä.
D<Ä?
EÅ
EÅ!
E/c                 óv  ^ ^^^• [         R                  " [         R                  /5      m[         R                  " S/5      m[         R                  " [         R                  /5      mT R	                  TT5        [        [        UUU 4S j5        [        [        UUU 4S j5        [        [        UUU 4S j5        g )Nr,   c                  ó(   >• TR                  T T5      $ r   r   ©ÚananÚaoner    s   €€€r#   Ú<lambda>Ú/TestArrayAlmostEqual.test_nan.<locals>.<lambda>  ó   ø€ ˜d×/Ñ/°°dÔ;r&   c                  ó(   >• TR                  TT 5      $ r   r   ©ÚainfrY  r    s   €€€r#   r[  r\     r]  r&   c                  ó(   >• TR                  T T5      $ r   r   r_  s   €€€r#   r[  r\  "  r]  r&   ©r/   r0   r�   r™   r   r   r(   ©r    r`  rY  rZ  s   `@@@r#   Útest_nanÚTestArrayAlmostEqual.test_nan  sq   û€ Ü�xŠxœŸ™˜Ó!ˆÜ�xŠx˜˜‹}ˆÜ�xŠxœŸ™˜Ó!ˆØ×Ñ˜$ Ô%Ü”nÞ;ô	=ä”nÞ;ô	=ä”nÞ;õ	=r&   c                 ó  ^ ^^• [         R                  " SS/SS//5      mTR                  5       m[         R                  TS'   [	        [
        UUU 4S j5        [         R                  * TS'   [	        [
        UUU 4S j5        g )Nr¬   r­   r’   r“   )r   r   c                  ó(   >• TR                  T T5      $ r   r   ©r!   r"   r    s   €€€r#   r[  Ú/TestArrayAlmostEqual.test_inf.<locals>.<lambda>)  ó   ø€ ˜d×/Ñ/°°1Ô5r&   c                  ó(   >• TR                  T T5      $ r   r   rh  s   €€€r#   r[  ri  ,  rj  r&   )r/   r0   r]   r™   r   r(   r   s   `@@r#   Útest_infÚTestArrayAlmostEqual.test_inf$  s_   ú€ Ü�HŠH�r˜2�h  R Ð)Ó*ˆØ�F‰F‹HˆÜ—&‘&ˆˆ$‰Ü”nÞ5ô	7ä—6‘6�'ˆˆ$‰Ü”nÞ5õ	7r&   c                 ó¾  • [         R                  " SS/SS//5      n[         R                  R                  SS/SS//SS/SS//5      nU R	                  X5        U R	                  X!5        U R	                  X"5        [         R                  R                  SSS	9n[         R                  " / S
Q5      nU R                  X5        U R                  X!5        [         R                  R                  n[         R                  " / S
Q5      nU R                  X5        U R                  X!5        [         R                  R                  / S
Q/ SQS	9n[         R                  " / SQ5      nU R                  X5        U R                  X!5        [         R                  R                  / S
Q/ SQS	9n[         R                  " S5      nU R                  X5        U R                  X!5        g )Nr¬   r­   r’   r“   r®   FTg      @r•   r‘   )TTT)r¬   r­   r’   )r/   r0   r—   Úmasked_arrayr   r˜   r$   Úmaskedr   s      r#   Útest_subclassÚ"TestArrayAlmostEqual.test_subclass.  s~  € Ü�HŠH�r˜2�h  R Ð)Ó*ˆÜ�E‰E×Ñ  R ¨2¨r¨(Ð3Ø!&¨ °°u°Ð>ó@ˆà×Ñ˜!ÔØ×Ñ˜!ÔØ×Ñ˜!Ôô �E‰E×Ñ˜c¨ÐÐ-ˆÜ�HŠH’]Ó#ˆØ×Ñ˜ÔØ×Ñ˜ÔÜ�E‰E�L‰LˆÜ�HŠH’]Ó#ˆØ×Ñ˜ÔØ×Ñ˜ÔÜ�E‰E×ÑšmÒ2DÐÐEˆÜ�HŠH’\Ó"ˆØ×Ñ˜ÔØ×Ñ˜ÔÜ�E‰E×ÑšmÒ2DÐÐEˆÜ�HŠH�R‹LˆØ×Ñ˜ÔØ×Ñ˜Õr&   c                 ó  •  " S S[         R                  5      n[         R                  " SS/5      R                  U5      nU R	                  X"5        [         R                  " SS/5      R                  U5      n[        U5        [         R                  " SS/5      R                  U5      nSn[        R                  " [        [        R                  " U5      S9   U R	                  X$5        S S S 5        g ! , (       d  f       g = f)	Nc                   ó:   ^ • \ rS rSrU 4S jrU 4S jrS rSrU =r$ )Ú5TestArrayAlmostEqual.test_subclass_2.<locals>.MyArrayiM  c                 ó\   >• [         TU ]  U5      R                  [        R                  5      $ r   ©Úsuperr¦   r°   r/   r¯   ©r    r¥   Ú	__class__s     €r#   r¦   Ú<TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.__eq__N  ó!   ø€ Ü‘w‘~ eÓ,×1Ñ1´"·*±*Ó=Ð=r&   c                 ó\   >• [         TU ]  U5      R                  [        R                  5      $ r   ©rx  Ú__lt__r°   r/   r¯   ry  s     €r#   r  Ú<TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.__lt__Q  r|  r&   c                 ó   • [        U 5      $ r   rÃ   rº   s      r#   r£   Ú9TestArrayAlmostEqual.test_subclass_2.<locals>.MyArray.allT  s   € Ü˜4“yÐ r&   rL   ©	rM   rN   rO   rP   r¦   r  r£   rQ   Ú__classcell__©rz  s   @r#   r«   ru  M  s   ø† õ>õ>÷!ð !r&   r«   r¬   r­   TéÊ   z�Mismatched elements: 1 / 2 (50%)
Max absolute difference among violations: 200.
Max relative difference among violations: 0.99009rl   )r/   r¯   r0   r°   r   r£   rn   ro   r(   rr   rs   )r    r«   r!   Úzr"   rx   s         r#   Útest_subclass_2Ú$TestArrayAlmostEqual.test_subclass_2H  s¼   € ô
	!”b—j‘jô 	!ô �HŠH�b˜"�XÓ×#Ñ# GÓ,ˆØ×Ñ˜!Ôä�HŠH�d˜D�\Ó"×'Ñ'¨Ó0ˆÜˆAŒÜ�HŠH�b˜#�YÓ×$Ñ$ WÓ-ˆðLˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ J×IÖIús   ÃC5Ã5
Dc                 ó¦   •  " S S[         R                  5      n[         R                  " SS/5      R                  U5      nU R	                  X"5        g )Nc                   ó:   ^ • \ rS rSrU 4S jrU 4S jrS rSrU =r$ )ÚGTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArrayih  c                 ó\   >• [         TU ]  U5      R                  [        R                  5      $ r   rw  ry  s     €r#   r¦   ÚNTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__eq__i  r|  r&   c                 ó\   >• [         TU ]  U5      R                  [        R                  5      $ r   r~  ry  s     €r#   r  ÚNTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__lt__l  r|  r&   c                 ó   • [         er   ©ÚNotImplementedErrorrº   s      r#   r£   ÚKTestArrayAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.allo  ó   € Ü)Ð)r&   rL   rƒ  r…  s   @r#   r«   rŒ  h  ó   ø† õ>õ>÷*ð *r&   r«   r¬   r­   ©r/   r¯   r0   r°   r   ©r    r«   r!   s      r#   Ú!test_subclass_that_cannot_be_boolÚ6TestArrayAlmostEqual.test_subclass_that_cannot_be_boolc  ó?   € ô
	*”b—j‘jô 	*ô �HŠH�b˜"�XÓ×#Ñ# GÓ,ˆØ×Ñ˜!Õr&   r   N)rM   rN   rO   rP   rV   rI  rO  rT  rd  rl  rq  rˆ  r™  rQ   rL   r&   r#   r?  r?  ¾  s1   † ò6ò#/òJ/ò/òB
=ò7òò4$õ6 r&   r?  c                   óP   • \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rSrg)ÚTestAlmostEqualiv  c                 ó   • [         U l        g r   )r   r   rI   s    r#   rV   ÚTestAlmostEqual.setup_methodx  ó
   € Ü/ˆÕr&   c                 óž   ^ • T R                  SSSS9  [        [        U 4S j5        T R                  S/S/SS9  [        [        U 4S j5        g )NrF  r®   r   rD  c                  ó&   >• T R                  SSSS9$ ©NrC  r®   r   rD  r   rI   s   €r#   r[  Ú0TestAlmostEqual.test_closeness.<locals>.<lambda>…  s   ø€ ˜d×/Ñ/°°SÀ!Ð/ÑDr&   c                  ó*   >• T R                  S/S/SS9$ r£  r   rI   s   €r#   r[  r¤  Š  s   ø€ ˜d×/Ñ/°°¸°uÀaÐ/ÑHr&   ©r   r   r(   rI   s   `r#   rI  ÚTestAlmostEqual.test_closeness{  sQ   ø€ ð 	×Ñ˜( C°ÐÑ3Ü”nÜDô	Fð 	×Ñ˜8˜* s e°QÐÑ7Ü”nÜHõ	Jr&   c                 óÚ   ^ • T R                  [        R                  [        R                  5        [        [        U 4S j5        [        [        U 4S j5        [        [        U 4S j5        g )Nc                  óD   >• T R                  [        R                  S5      $ r  )r   r/   r�   rI   s   €r#   r[  Ú/TestAlmostEqual.test_nan_item.<locals>.<lambda>�  ó   ø€ ˜d×/Ñ/´·±¸Ô:r&   c                  ó`   >• T R                  [        R                  [        R                  5      $ r   )r   r/   r�   r™   rI   s   €r#   r[  rª  ‘  ó   ø€ ˜d×/Ñ/´·±¼¿¹Ô?r&   c                  ó`   >• T R                  [        R                  [        R                  5      $ r   )r   r/   r™   r�   rI   s   €r#   r[  rª  “  r­  r&   )r   r/   r�   r   r(   rI   s   `r#   Útest_nan_itemÚTestAlmostEqual.test_nan_itemŒ  sD   ø€ Ø×Ñœ"Ÿ&™&¤"§&¡&Ô)Ü”nÜ:ô	<ä”nÜ?ô	Aä”nÜ?õ	Ar&   c                 ó  ^ • T R                  [        R                  [        R                  5        T R                  [        R                  * [        R                  * 5        [        [        U 4S j5        [        [        U 4S j5        g )Nc                  óD   >• T R                  [        R                  S5      $ r  ©r   r/   r™   rI   s   €r#   r[  Ú/TestAlmostEqual.test_inf_item.<locals>.<lambda>™  r«  r&   c                  ób   >• T R                  [        R                  * [        R                  5      $ r   r³  rI   s   €r#   r[  r´  ›  s   ø€ ˜d×/Ñ/´·±°¼¿¹Ô@r&   )r   r/   r™   r   r(   rI   s   `r#   Útest_inf_itemÚTestAlmostEqual.test_inf_item•  sR   ø€ Ø×Ñœ"Ÿ&™&¤"§&¡&Ô)Ø×Ñœ2Ÿ6™6˜'¤B§F¡F 7Ô+Ü”nÜ:ô	<ä”nÜ@õ	Br&   c                 ó(   • U R                  SS5        g r*  )r)   rI   s    r#   Útest_simple_itemÚ TestAlmostEqual.test_simple_item�  s   € Ø×Ñ˜Q Õ"r&   c                 ó  • U R                  [        SS5      [        SS5      5        U R                  [        S[        R                  5      [        S[        R                  5      5        U R                  [        [        R                  [        R                  5      [        [        R                  [        R                  5      5        U R                  [        S[        R                  5      [        SS5      5        U R                  [        [        R                  S5      [        S[        R                  5      5        U R                  [        [        R                  [        R                  5      [        [        R                  S5      5        g r*  )r   r+  r/   r�   r™   r)   rI   s    r#   r,  Ú!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                 óª  • [         R                  " [        SS5      [        S[         R                  5      /5      n[         R                  " [        SS5      [        [         R                  S5      /5      n[         R                  " [        SS5      [        SS5      /5      nU R	                  X5        U R                  X5        U R                  X5        g r*  r5  )r    rt   r‡  ru   s       r#   r7  Ú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Õ"r&   c                 ó.  • [         R                  " / SQ5      n[         R                  " / SQ5      nSn[        R                  " [        [
        R                  " U5      S9   U R                  XSS9  SSS5        Sn[        R                  " [        [
        R                  " U5      S9   U R                  X5        SSS5        [         R                  " [         R                  S	/5      n[         R                  " [         R                  S
/5      nSn[        R                  " [        [
        R                  " U5      S9   U R                  X5        SSS5        [         R                  " S
S/5      n[         R                  " S	S	/5      nSn[        R                  " [        [
        R                  " U5      S9   U R                  X5        SSS5        g! , (       d  f       GNg= f! , (       d  f       GN0= f! , (       d  f       N¬= f! , (       d  f       g= f)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%)
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      ])rl   é   rD  NzåMismatched elements: 1 / 3 (33.3%)
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%)
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%)
Max absolute difference among violations: 2
Max relative difference among violations: inf)	r/   r0   rn   ro   r(   rr   rs   r   r™   rN  s       r#   Útest_error_messageÚ"TestAlmostEqual.test_error_message°  sy  € ô �HŠHÒ<Ó=ˆÜ�HŠHÒ<Ó=ˆð*ˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜a¨BÐÑ/÷ JðGˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ Jô �HŠH”b—f‘f˜a�[Ó!ˆÜ�HŠH”b—f‘f˜a�[Ó!ˆð6ˆô
 �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ Jô �HŠH�a˜�VÓˆÜ�HŠH�a˜�VÓˆðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ JÐI÷A JÖIú÷ JÖIú÷ JÕIú÷ JÕIús0   Á GÂ(G#Ä=G5Æ6HÇ
G Ç#
G2Ç5
HÈ
Hc                 óÎ  •  Sn[         R                  " S5      nSn[        R                  " [        [
        R                  " U5      S9   U R                  X5        SSS5        Sn[         R                  " S5      nSn[        R                  " [        [
        R                  " U5      S9   U R                  X5        SSS5        g! , (       d  f       Np= f! , (       d  f       g= f)z)Check the message is formatted correctly r-   é   z}Mismatched elements: 20 / 20 (100%)
Max absolute difference among violations: 1.
Max relative difference among violations: 1.rl   Nz~Mismatched elements: 20 / 20 (100%)
Max absolute difference among violations: 1.
Max relative difference among violations: 0.5)r/   Úonesrn   ro   r(   rr   rs   r   rN  s       r#   Útest_error_message_2Ú$TestAlmostEqual.test_error_message_2ã  s¬   € à-ØˆÜ�GŠG�B‹KˆðGˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ Jð ˆÜ�GŠG�B‹KˆðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ JÐI÷ JÕIú÷ JÕIús   Á	CÂ*CÃ
CÃ
C$c                 ó¦   •  " S S[         R                  5      n[         R                  " SS/5      R                  U5      nU R	                  X"5        g )Nc                   ó:   ^ • \ rS rSrU 4S jrU 4S jrS rSrU =r$ )ÚBTestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArrayiû  c                 ó\   >• [         TU ]  U5      R                  [        R                  5      $ r   rw  ry  s     €r#   r¦   ÚITestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__eq__ü  r|  r&   c                 ó\   >• [         TU ]  U5      R                  [        R                  5      $ r   r~  ry  s     €r#   r  ÚITestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.__lt__ÿ  r|  r&   c                 ó   • [         er   r’  rº   s      r#   r£   ÚFTestAlmostEqual.test_subclass_that_cannot_be_bool.<locals>.MyArray.all  r•  r&   rL   rƒ  r…  s   @r#   r«   rÊ  û  r–  r&   r«   r¬   r­   r—  r˜  s      r#   r™  Ú1TestAlmostEqual.test_subclass_that_cannot_be_boolö  r›  r&   r   N)rM   rN   rO   rP   rV   rI  r¯  r¶  r¹  r,  r7  rÁ  rÆ  r™  rQ   rL   r&   r#   r�  r�  v  s9   † ò0òJò"AòBò#òJò#ò1$òf$õ& r&   r�  c                   ó2   • \ rS rSrS rS rS rS rS rSr	g)	ÚTestApproxEquali	  c                 ó   • [         U l        g r   )r   r   rI   s    r#   rV   ÚTestApproxEqual.setup_method  r   r&   c                 óÒ   ^ ^^• [         R                  " S5      m[         R                  " S5      mT R                  TTSS9  T R                  TTSS9  [        [        U UU4S j5        g )Nç{®GáH“@çR¸…ëH“@rL  ©Úsignificanté   c                  ó&   >• T R                  TTSS9$ ©NrG  rÙ  r   r6  s   €€€r#   r[  Ú7TestApproxEqual.test_simple_0d_arrays.<locals>.<lambda>  ó   ø€ ˜d×/Ñ/°°1À!Ð/ÑDr&   )r/   r0   r   r   r(   r6  s   `@@r#   Útest_simple_0d_arraysÚ%TestApproxEqual.test_simple_0d_arrays  sW   ú€ Ü�HŠH�WÓˆÜ�HŠH�WÓˆà×Ñ˜!˜Q¨AÐÑ.Ø×Ñ˜!˜Q¨AÐÑ.Ü”nÞDõ	Fr&   c                 ó¤   ^ ^^• SmSmT R                  TTSS9  T R                  TTSS9  T R                  TTSS9  [        [        U UU4S j5        g )Nr×  rØ  r9   rÙ  rL  rÛ  c                  ó&   >• T R                  TTSS9$ rÝ  r   r6  s   €€€r#   r[  Ú3TestApproxEqual.test_simple_items.<locals>.<lambda>  rß  r&   r¦  r6  s   `@@r#   Útest_simple_itemsÚ!TestApproxEqual.test_simple_items  sZ   ú€ ØˆØˆà×Ñ˜!˜Q¨AÐÑ.Ø×Ñ˜!˜Q¨AÐÑ.Ø×Ñ˜!˜Q¨AÐÑ.Ü”nÞDõ	Fr&   c                 óp  ^ ^^^• [         R                  " [         R                  5      m[         R                  " S5      m[         R                  " [         R                  5      mT R	                  TT5        [        [        UUU 4S j5        [        [        UUU 4S j5        [        [        UUU 4S j5        g )Nr,   c                  ó(   >• TR                  T T5      $ r   r   rX  s   €€€r#   r[  Ú0TestApproxEqual.test_nan_array.<locals>.<lambda>&  ó   ø€ ¨d×.?Ñ.?ÀÀdÔ.Kr&   c                  ó(   >• TR                  TT 5      $ r   r   r_  s   €€€r#   r[  ré  '  rê  r&   c                  ó(   >• TR                  T T5      $ r   r   r_  s   €€€r#   r[  ré  (  rê  r&   rb  rc  s   `@@@r#   rƒ   ÚTestApproxEqual.test_nan_array!  óe   û€ Ü�xŠxœŸ™ÓˆÜ�xŠx˜‹{ˆÜ�xŠxœŸ™ÓˆØ×Ñ˜$ Ô%Ü”nÖ&KÔLÜ”nÖ&KÔLÜ”nÖ&KÕLr&   c                 óp  ^ ^^^• [         R                  " [         R                  5      m[         R                  " S5      m[         R                  " [         R                  5      mT R	                  TT5        [        [        UUU 4S j5        [        [        UUU 4S j5        [        [        UUU 4S j5        g )Nr,   c                  ó(   >• TR                  T T5      $ r   r   rX  s   €€€r#   r[  Ú0TestApproxEqual.test_nan_items.<locals>.<lambda>/  rê  r&   c                  ó(   >• TR                  TT 5      $ r   r   r_  s   €€€r#   r[  rñ  0  rê  r&   c                  ó(   >• TR                  T T5      $ r   r   r_  s   €€€r#   r[  rñ  1  rê  r&   rb  rc  s   `@@@r#   r  ÚTestApproxEqual.test_nan_items*  rî  r&   r   N)
rM   rN   rO   rP   rV   rà  rå  rƒ   r  rQ   rL   r&   r#   rÓ  rÓ  	  s   † ò0òFòFòMõMr&   rÓ  c                   ó\   • \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rS rS rSrg)ÚTestArrayAssertLessi4  c                 ó   • [         U l        g r   )r   r   rI   s    r#   rV   Ú TestArrayAssertLess.setup_method6  s
   € Ü-ˆÕr&   c                 óV  ^ ^^• [         R                  " SS/5      m[         R                  " SS/5      mT R                  TT5        [        [        U UU4S j5        [         R                  " SS/5      m[        [        U UU4S j5        [        [        U UU4S j5        [         R                  " / S	Q5      n[         R                  " / S
Q5      nSn[
        R                  " [        [        R                  " U5      S9   T R                  X5        S S S 5        g ! , (       d  f       g = f)Nçš™™™™™ñ?çš™™™™™@ç333333ó?çffffff@c                  ó(   >• T R                  TT5      $ r   r   r6  s   €€€r#   r[  Ú8TestArrayAssertLess.test_simple_arrays.<locals>.<lambda>>  ó   ø€ ¨d×.?Ñ.?ÀÀ1Ô.Er&   r¬   c                  ó(   >• T R                  TT5      $ r   r   r6  s   €€€r#   r[  rÿ  B  r   r&   c                  ó(   >• T R                  TT5      $ r   r   r6  s   €€€r#   r[  rÿ  C  r   r&   )r,   r8   rÛ  rÄ  )r-   r9   rÛ  é   z{Mismatched elements: 2 / 4 (50%)
Max absolute difference among violations: 12
Max relative difference among violations: 1.5rl   )	r/   r0   r   r   r(   rn   ro   rr   rs   )r    r!   r"   rx   rt   ru   s   `   @@r#   Útest_simple_arraysÚ&TestArrayAssertLess.test_simple_arrays9  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Ô#÷ J×IÖIús   Ã?DÄ
D(c                 óä  ^ ^^• [         R                  " SS/SS//5      m[         R                  " SS/SS//5      mT R                  TT5        S	n[        R                  " [
        [        R                  " U5      S
9   T R                  TT5        S S S 5        [         R                  " SS/SS//5      m[        [
        U UU4S j5        [        [
        U UU4S j5        g ! , (       d  f       NW= f)Nrú  rû  çffffff
@gš™™™™™@rü  rý  g333333@g      @z„Mismatched elements: 4 / 4 (100%)
Max absolute difference among violations: 0.1
Max relative difference among violations: 0.09090909rl   r¬   c                  ó(   >• T R                  TT5      $ r   r   r6  s   €€€r#   r[  Ú0TestArrayAssertLess.test_rank2.<locals>.<lambda>Z  r   r&   c                  ó(   >• T R                  TT5      $ r   r   r6  s   €€€r#   r[  r	  [  r   r&   )	r/   r0   r   rn   ro   r(   rr   rs   r   ©r    rx   rt   ru   s   ` @@r#   Ú
test_rank2ÚTestArrayAssertLess.test_rank2N  s½   ú€ Ü�HŠH�s˜C�j 3¨ *Ð-Ó.ˆÜ�HŠH�s˜C�j 3¨ *Ð-Ó.ˆà×Ñ˜!˜QÔðOˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜a Ô#÷ Jô �HŠH�s˜C�j 3¨ *Ð-Ó.ˆÜ”nÖ&EÔFÜ”nÖ&EÕF÷ JÕIús   Á=C!Ã!
C/c                 óœ  ^ ^^• [         R                  " SS9m[         R                  " SS9S-   mT R                  TT5        [        [        U UU4S j5        STS'   Sn[
        R                  " [        [        R                  " U5      S9   T R                  TT5        S S S 5        [        [        U UU4S	 j5        g ! , (       d  f       N%= f)
N)r-   r-   r-   )Úshaper,   c                  ó(   >• T R                  TT5      $ r   r   r6  s   €€€r#   r[  Ú0TestArrayAssertLess.test_rank3.<locals>.<lambda>b  r   r&   r   )r   r   r   z}Mismatched elements: 1 / 8 (12.5%)
Max absolute difference among violations: 1.
Max relative difference among violations: infrl   c                  ó(   >• T R                  TT5      $ r   r   r6  s   €€€r#   r[  r  k  r   r&   )	r/   rÅ  r   r   r(   rn   ro   rr   rs   r  s   ` @@r#   Ú
test_rank3ÚTestArrayAssertLess.test_rank3]  s–   ú€ Ü�GŠG˜)Ñ$ˆÜ�GŠG˜)Ñ$ qÑ(ˆà×Ñ˜!˜QÔÜ”nÖ&EÔFàˆˆ'‰
ðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜a Ô#÷ Jô 	”nÖ&EÕF÷ JÕIús   ÂB=Â=
Cc                 óÈ  ^ ^^• SmSmT R                  TT5        Sn[        R                  " [        [        R
                  " U5      S9   T R                  TT5        S S S 5        [        R                  " SS/5      mT R                  TT5        [        [        U UU4S j5        [        R                  " SS/5      m[        [        U UU4S j5        g ! , (       d  f       N}= f)	Nrú  rû  z|Mismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 1.1
Max relative difference among violations: 1.rl   r  c                  ó(   >• T R                  TT5      $ r   r   r6  s   €€€r#   r[  Ú7TestArrayAssertLess.test_simple_items.<locals>.<lambda>{  r   r&   r¬   c                  ó(   >• T R                  TT5      $ r   r   r6  s   €€€r#   r[  r    r   r&   )	r   rn   ro   r(   rr   rs   r/   r0   r   r  s   ` @@r#   rå  Ú%TestArrayAssertLess.test_simple_itemsm  sª   ú€ ØˆØˆà×Ñ˜!˜QÔðGˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜a Ô#÷ Jô �HŠH�c˜3�ZÓ ˆà×Ñ˜!˜QÔÜ”nÖ&EÔFä�HŠH�c˜3�ZÓ ˆä”nÖ&EÕF÷ JÕIús   Á	CÃ
C!c                 ó8  • [         R                  " / SQ/ SQ/ SQ/5      nSnU R                  X5        SnU R                  X!5        [         R                  " / SQ/ SQ/ SQ/5      nS	nS
n[        R                  " [
        [        R                  " U5      S9   U R                  X5        S S S 5        Sn[        R                  " [
        [        R                  " U5      S9   U R                  X!5        S S S 5        g ! , (       d  f       NX= f! , (       d  f       g = f)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%)
Max absolute difference among violations: 0.
Max relative difference among violations: 0.rl   z’Mismatched elements: 12 / 12 (100%)
Max absolute difference among violations: 999087.0864
Max relative difference among violations: 289288.5934676rM  rN  s       r#   Útest_simple_items_and_arrayÚ/TestArrayAssertLess.test_simple_items_and_array�  sé   € Ü�HŠHÒ@Ú6Ú4ð6ó 7ˆð ˆØ×Ñ˜!ÔàˆØ×Ñ˜!Ôä�HŠHÒAÚ?Ú;ð=ó >ˆð ˆðGˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ Jð)ˆô
 �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ JÐI÷ JÕIú÷ JÕIús   ÂC:ÃDÃ:
DÄ
Dc                 ó4  • [         R                  " / SQ5      n[         R                  " S5      nSn[        R                  " [        [
        R                  " U5      S9   U R                  X5        S S S 5        Sn[        R                  " [        [
        R                  " U5      S9   U R                  X!5        S S S 5        SnSn[        R                  " [        [
        R                  " U5      S9   U R                  X5        S S S 5        Sn[        R                  " [        [
        R                  " U5      S9   U R                  X!5        S S S 5        g ! , (       d  f       Nì= f! , (       d  f       N´= f! , (       d  f       Nz= f! , (       d  f       g = f)	N)g    0­ Ar   g)\�Âõè.@g    `fõ@z‰Mismatched elements: 1 / 3 (33.3%)
Max absolute difference among violations: 458802.
Max relative difference among violations: 5.23423917rl   zŠMismatched elements: 2 / 3 (66.7%)
Max absolute difference among violations: 87654.
Max relative difference among violations: 5670.5626011r   z�Mismatched elements: 3 / 3 (100%)
Max absolute difference among violations: 546456.
Max relative difference among violations: infz}Mismatched elements: 1 / 3 (33.3%)
Max absolute difference among violations: 0.
Max relative difference among violations: infrÒ   rN  s       r#   Útest_zeroesÚTestArrayAssertLess.test_zeroesž  s$  € Ü�HŠHÒ)Ó*ˆÜ�HŠH�VÓˆðOˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ Jð'ˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ Jð ˆðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ JðHˆô �]Š]œ>´·²¸<Ó1HÓIØ×Ñ˜aÔ#÷ JÐI÷+ JÕIú÷ JÕIú÷ JÕIú÷ JÕIús0   ÁEÂ'E'Ã2E8Ä;F	Å
E$Å'
E5Å8
FÆ	
Fc                 óœ  ^ ^^^• [         R                  " [         R                  5      m[         R                  " S5      m[         R                  " [         R                  5      mT R	                  TT5        [        [        UUU 4S j5        [        [        UUU 4S j5        [        [        UUU 4S j5        [        [        UUU 4S j5        g )Nr,   c                  ó(   >• TR                  TT 5      $ r   r   rX  s   €€€r#   r[  Ú9TestArrayAssertLess.test_nan_noncompare.<locals>.<lambda>Â  rê  r&   c                  ó(   >• TR                  T T5      $ r   r   rX  s   €€€r#   r[  r'  Ã  rê  r&   c                  ó(   >• TR                  TT 5      $ r   r   r_  s   €€€r#   r[  r'  Ä  rê  r&   c                  ó(   >• TR                  T T5      $ r   r   r_  s   €€€r#   r[  r'  Å  rê  r&   rb  rc  s   `@@@r#   Útest_nan_noncompareÚ'TestArrayAssertLess.test_nan_noncompare½  sp   û€ Ü�xŠxœŸ™ÓˆÜ�xŠx˜‹{ˆÜ�xŠxœŸ™ÓˆØ×Ñ˜$ Ô%Ü”nÖ&KÔLÜ”nÖ&KÔLÜ”nÖ&KÔLÜ”nÖ&KÕLr&   c                 ó   ^ ^^^• [         R                  " / SQ5      m[         R                  " [         R                  5      m[        [        UU U4S j5        [        [        UU U4S j5        [         R                  " SS[         R                  /5      m[        [        UU U4S j5        [        [        UU U4S j5        [         R                  " SS	[         R                  /5      mT R                  TT5        [        [        U UU4S
 j5        g )N)rú  rû  r  c                  ó(   >• TR                  TT 5      $ r   r   ©rY  r    rt   s   €€€r#   r[  Ú?TestArrayAssertLess.test_nan_noncompare_array.<locals>.<lambda>Ë  ó   ø€ ¨d×.?Ñ.?ÀÀ4Ô.Hr&   c                  ó(   >• TR                  T T5      $ r   r   r/  s   €€€r#   r[  r0  Ì  ó   ø€ ¨d×.?Ñ.?ÀÀaÔ.Hr&   rú  rû  c                  ó(   >• TR                  TT 5      $ r   r   r/  s   €€€r#   r[  r0  Ð  r1  r&   c                  ó(   >• TR                  T T5      $ r   r   r/  s   €€€r#   r[  r0  Ñ  r3  r&   r¬   r­   c                  ó(   >• T R                  TT5      $ r   r   r6  s   €€€r#   r[  r0  Ö  r   r&   )r/   r0   r�   r   r(   r   )r    rY  rt   ru   s   `@@@r#   Útest_nan_noncompare_arrayÚ-TestArrayAssertLess.test_nan_noncompare_arrayÇ  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                 óÄ  ^ ^^• [         R                  " S5      m[         R                  " [         R                  5      mT R                  TT5        T R                  T* T5        T R                  T* T5        [	        [
        UUU 4S j5        [	        [
        UUU 4S j5        [	        [
        UU 4S j5        [	        [
        UU 4S j5        [	        [
        UU 4S j5        g )Nr,   c                  ó(   >• TR                  T T5      $ r   r   ©r`  rZ  r    s   €€€r#   r[  Ú6TestArrayAssertLess.test_inf_compare.<locals>.<lambda>ß  rê  r&   c                  ó*   >• TR                  TT * 5      $ r   r   r;  s   €€€r#   r[  r<  à  ó   ø€ ¨d×.?Ñ.?ÀÀtÀeÔ.Lr&   c                  ó(   >• TR                  T T 5      $ r   r   ©r`  r    s   €€r#   r[  r<  á  rê  r&   c                  ó*   >• TR                  T T * 5      $ r   r   r@  s   €€r#   r[  r<  â  r>  r&   c                  ó,   >• TR                  T * T * 5      $ r   r   r@  s   €€r#   r[  r<  ã  s   ø€ ¨d×.?Ñ.?ÀÀÈÀuÔ.Mr&   )r/   r0   r™   r   r   r(   )r    r`  rZ  s   `@@r#   Útest_inf_compareÚ$TestArrayAssertLess.test_inf_compareØ  s�   ú€ Ü�xŠx˜‹{ˆÜ�xŠxœŸ™Óˆà×Ñ˜$ Ô%Ø×Ñ˜4˜% Ô&Ø×Ñ˜4˜% Ô&Ü”nÖ&KÔLÜ”nÖ&LÔMÜ”nÕ&KÔLÜ”nÕ&LÔMÜ”nÕ&MÕNr&   c                 ó¢  ^ ^^• [         R                  " SS[         R                  /5      m[         R                  " [         R                  5      m[        [        UU U4S j5        [        [        UU U4S j5        [        [        UU U4S j5        [        [        UU U4S j5        [        [        UU U4S j5        T R                  T* T5        g )Nrú  rû  c                  ó(   >• TR                  TT 5      $ r   r   ©r`  r    rt   s   €€€r#   r[  Ú<TestArrayAssertLess.test_inf_compare_array.<locals>.<lambda>é  r1  r&   c                  ó(   >• TR                  T T5      $ r   r   rG  s   €€€r#   r[  rH  ê  r3  r&   c                  ó*   >• TR                  TT * 5      $ r   r   rG  s   €€€r#   r[  rH  ë  s   ø€ ¨d×.?Ñ.?ÀÀDÀ5Ô.Ir&   c                  ó,   >• TR                  T* T * 5      $ r   r   rG  s   €€€r#   r[  rH  ì  s   ø€ ¨d×.?Ñ.?ÀÀÀTÀEÔ.Jr&   c                  ó,   >• TR                  T * T* 5      $ r   r   rG  s   €€€r#   r[  rH  í  s   ø€ ¨d×.?Ñ.?ÀÀÈÀrÔ.Jr&   )r/   r0   r™   r   r(   r   )r    r`  rt   s   `@@r#   Útest_inf_compare_arrayÚ*TestArrayAssertLess.test_inf_compare_arrayå  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                 ó*  • [         R                  " S5      n[         R                  " S5      nU R                  X5        [        R
                  " [        5         U R                  XSS9  SSS5        [         R                  " X!R                  5      nU R                  X5        [        R
                  " [        5         U R                  XR                  [         R                  5      SS9  SSS5        g! , (       d  f       N�= f! , (       d  f       g= f©z)Test the behavior of the `strict` option.r8   rL   Tr×   N)r/   ÚzerosrÅ  r   rn   ro   r(   Úbroadcast_tor  ÚastyperÆ   r6  s      r#   Útest_strictÚTestArrayAssertLess.test_strictð  s´   € ä�HŠH�Q‹KˆÜ�GŠG�B‹KˆØ×Ñ˜!ÔÜ�]Š]œ>Õ*Ø×Ñ˜a¨4ÐÑ0÷ +ä�OŠO˜AŸw™wÓ'ˆØ×Ñ˜!ÔÜ�]Š]œ>Õ*Ø×Ñ˜a§¡¬"¯*©*Ó!5¸dÐÑC÷ +Ð*÷	 +Õ*ú÷ +Õ*ús   ÁC3Â<.DÃ3
DÄ
Dr   N)rM   rN   rO   rP   rV   r  r  r  rå  r   r#  r+  r7  rC  rM  rT  rQ   rL   r&   r#   rö  rö  4  sE   † ò.ò$ò*GòGò Gò($ò:$ò>MòGò"Oò	$õ
Dr&   rö  c                   ó,   • \ rS rSrS rS rS rS rSrg)Ú	TestWarnsiý  c                 ó(  • S n[         R                  S   R                  S S  n[        [	        [
        U5      S5        [         R                  S   R                  n[        [        [        U5        [        [        S S5      S5        [        X#S5        g )Nc                  ó0   • [         R                  " S5        g)NÚyor8   ©ÚwarningsÚwarnrL   r&   r#   ÚfÚTestWarns.test_warn.<locals>.f   s   € Ü�MŠM˜$ÔØr&   r\  r8   c                 ó   • U $ r   rL   )rt   s    r#   r[  Ú%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_warnÚTestWarns.test_warnÿ  sv   € ò	ô Ÿ™ ZÑ0×8Ñ8¹Ð;ˆÜ”\¤+¨qÓ1°1Ô5ÜŸ™ JÑ/×7Ñ7ˆä”nÔ&8¸!Ô<ÜÔ'©°QÓ7¸Ô;ô 	�^ØEõ	Gr&   c                 ó:  • [         R                  S   R                  S S  n[        [        5         [
        R                  " S5        S S S 5        [         R                  S   R                  nS n[        [        U5        [        XS5        g ! , (       d  f       NK= f)Nr\  rZ  c                  óx   • [        5          [        R                  " S5        S S S 5        g ! , (       d  f       g = f©NrZ  )r   r\  r]  rL   r&   r#   Úno_warningsÚ3TestWarns.test_context_manager.<locals>.no_warnings  s    € Ü#Õ%Ü—’˜dÔ#÷ &×%Ö%ús   ‹+«
9rb  )
rc  rd  re  r   rf  r\  r]  r   r(   r   )r    rg  rh  rn  s       r#   Útest_context_managerÚTestWarns.test_context_manager  sp   € äŸ™ ZÑ0×8Ñ8¹Ð;ˆÜœ+Õ&Ü�MŠM˜$Ô÷ 'äŸ™ JÑ/×7Ñ7ˆò	$ô 	”n kÔ2Ü�^ØEõ	G÷ 'Õ&ús   °BÂ
Bc                 óœ  • S
S jn[        [        USS9S:X  d   e[        R                  " [        5       n[        [        SS9   [
        R                  " S[        5        S S S 5        S S S 5        S[        W5      ;   d   eS[        U5      ;   d   e[        R                  " [        5       n[        [        SS	9   [
        R                  " S[        5        S S S 5        S S S 5        S[        U5      ;   d   eS[        U5      ;  d   eg ! , (       d  f       N°= f! , (       d  f       N¹= f! , (       d  f       N[= f! , (       d  f       Nd= f)Nc                 ó6   • [         R                  " S5        X-   $ rm  r[  )r!   r"   s     r#   r^  ÚTestWarns.test_args.<locals>.f  s   € Ü�MŠM˜$ÔØ‘5ˆLr&   rÄ  ©r"   ÚArl   ÚBr   zpytest.warns)Úwrong)r   r,   )r   rf  rn   ro   ÚRuntimeErrorr\  r]  rp   )r    r^  Úexcs      r#   Ú	test_argsÚTestWarns.test_args  sð   € ô	ô œK¨¨bÑ1°RÓ7Ð7Ð7ä�]Š]œ<Ô(¨Cäœk°Ó5Ü—’˜c¤;Ô/÷ 6÷ )ð ¤ S£Ó)Ð)Ð)Ø¤ S£Ó)Ð)Ð)ä�]Š]œ<Ô(¨Cäœk°Ó5Ü—’˜c¤;Ô/÷ 6÷ )ð ¤ S£Ó)Ð)Ð)Ø¤S¨£XÓ-Ð-Ñ-÷ 6Õ5ú÷ )Õ(ú÷ 6Õ5ú÷ )Õ(úsG   µDÁD
Á DÂ,D=Â;D,ÃD=Ä

D	ÄDÄ
D)Ä,
D:	Ä6D=Ä=
Ec                 ó  • S nSn[         R                  " 5          [         R                  " S[        5         [	        [
        U5        SnS S S 5        U(       a  [        S5      eg ! [         a     N'f = f! , (       d  f       N1= f)Nc                  ó:   • [         R                  " S[        5        g rm  )r\  r]  ÚDeprecationWarningrL   r&   r#   r^  Ú,TestWarns.test_warn_wrong_warning.<locals>.f4  s   € Ü�MŠM˜$Ô 2Õ3r&   FÚerrorTz#wrong warning caught by assert_warn)r\  Úcatch_warningsÚsimplefilterr  r   rf  r(   )r    r^  Úfaileds      r#   Útest_warn_wrong_warningÚ!TestWarns.test_warn_wrong_warning3  sw   € ò	4ð ˆÜ×$Ò$Õ&Ü×!Ò! 'Ô+=Ô>ðäœ[¨!Ô,Ø�÷ 'ö Ü Ð!FÓGÐGð øô &ó Ùðú÷ 'Õ&ús(   ›A5¸A%Á%
A2Á/A5Á1A2Á2A5Á5
BrL   N)	rM   rN   rO   rP   ri  rp  r{  r…  rQ   rL   r&   r#   rW  rW  ý  s   † òGò Gò.õ*Hr&   rW  c                   óP   • \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rSrg)ÚTestAssertAllcloseiE  c                 ó(  • SnSn[        XSS9  [        [        [         X5        Sn[        R                  " [        [
        R                  " U5      S9   [        X5        S S S 5        SnSn[        R                  " [        [
        R                  " U5      S9   [        X$5        S S S 5        S	n[        R                  " [        [
        R                  " U5      S9   [        XB5        S S S 5        [        R                  " XX/5      n[        R                  " XX/5      n[        XVSS9  [        [        [         XV5        US
-  US'   [        XV5        [        [        [         XVSS9  [        SSSS9  [        [        [         SSSS9  [        R                  " XX/5      n[        R                  " XX/5      nSn[        R                  " [        [
        R                  " U5      S9   [        Xg5        S S S 5        Sn[        R                  " [        [
        R                  " U5      S9   [        Xv5        S S S 5        g ! , (       d  f       GNä= f! , (       d  f       GN±= f! , (       d  f       GN€= f! , (       d  f       Nˆ= f! , (       d  f       g = f)Ngü©ñÒMbP?g•Ö&è.>r,   ©ÚatolzƒMismatched elements: 1 / 1 (100%)
Max absolute difference among violations: 0.001
Max relative difference among violations: 999999.rl   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%)
Max absolute difference among violations: 0.001
Max relative difference among violations: infz}Mismatched elements: 1 / 4 (25%)
Max absolute difference among violations: 0.001
Max relative difference among violations: 1.)	r   r   r(   rn   ro   rr   rs   r/   r0   )r    rt   ru   rx   r‡  r!   r"   r`   s           r#   rO  ÚTestAssertAllclose.test_simpleG  sé  € ØˆØˆä˜ 1Ò%Ü”n¤o°qÔ<ðLˆô �]Š]œ>´·²¸<Ó1HÓIÜ˜AÔ!÷ Jð ˆðHˆô �]Š]œ>´·²¸<Ó1HÓIÜ˜AÔ!÷ JðGˆô �]Š]œ>´·²¸<Ó1HÓIÜ˜AÔ!÷ Jô �HŠH�a˜A�\Ó"ˆÜ�HŠH�a˜A�\Ó"ˆä˜ 1Ò%Ü”n¤o°qÔ<à�X‘ˆˆ"‰Ü˜ÔÜ”n¤o°qÀ$ÒGä˜˜2 CÒ(Ü”n¤o°r¸1À3ÒGä�HŠH�a˜A�\Ó"ˆÜ�HŠH�a˜A�\Ó"ˆðHˆô �]Š]œ>´·²¸<Ó1HÓIÜ˜AÔ!÷ JðGˆô �]Š]œ>´·²¸<Ó1HÓIÜ˜AÔ!÷ JÐI÷Q JÖIú÷ JÖIú÷ JÖIú÷* JÕIú÷ JÕIús<   ÁH<ÂIÃI Ç$I2È'JÈ<
IÉ
IÉ 
I/É2
J Ê
Jc                 óº   • [         R                  " [         R                  " [         R                  5      R                  /[         R                  S9n[        X5        g )NrA   )r/   r0   ÚiinfoÚint_Úminr   rD   s     r#   Útest_min_intÚTestAssertAllclose.test_min_int|  s4   € Ü�HŠH”b—h’hœrŸw™wÓ'×+Ñ+Ð,´B·G±GÑ<ˆä˜Õr&   c                 ó  • [         R                  " / SQ5      n[         R                  " / SQ5      nSn[        R                  " [        [
        R                  " U5      S9   [        X5        S S S 5        g ! , (       d  f       g = f)N)r,   r,   r,   r,   )r,   r,   r,   r-   zzMismatched elements: 1 / 4 (25%)
Max absolute difference among violations: 1
Max relative difference among violations: 0.5rl   ©r/   r0   rn   ro   r(   rr   rs   r   rÓ   s       r#   Útest_report_fail_percentageÚ.TestAssertAllclose.test_report_fail_percentage�  sT   € Ü�HŠH’\Ó"ˆÜ�HŠH’\Ó"ˆðHˆô �]Š]œ>´·²¸<Ó1HÓIÜ˜AÔ!÷ J×IÖIúó   Á A5Á5
Bc                 ó¬   • [         R                  " [         R                  /5      n[         R                  " [         R                  /5      n[        XSS9  g )NT©Ú	equal_nan)r/   r0   r�   r   r   s      r#   Útest_equal_nanÚ!TestAssertAllclose.test_equal_nan‹  s4   € Ü�HŠH”b—f‘f�XÓˆÜ�HŠH”b—f‘f�XÓˆä˜¨Ó-r&   c                 óÀ   • [         R                  " [         R                  /5      n[         R                  " [         R                  /5      n[        [        [
        XSS9  g )NFrš  )r/   r0   r�   r   r(   r   r   s      r#   Útest_not_equal_nanÚ%TestAssertAllclose.test_not_equal_nan‘  s8   € Ü�HŠH”b—f‘f�XÓˆÜ�HŠH”b—f‘f�XÓˆÜ”n¤o°qÀuÓMr&   c                 óð   • [         R                  " [         R                  /5      n[         R                  " [         R                  /5      n[        X5        [	        X5        [        X5        [        X5        g r   )r/   r0   r�   r
   r   r   r   r   s      r#   Útest_equal_nan_defaultÚ)TestAssertAllclose.test_equal_nan_default–  sL   € ô �HŠH”b—f‘f�XÓˆÜ�HŠH”b—f‘f�XÓˆÜ˜1Ô Ü! !Ô'Ü˜!ÔÜ˜Õr&   c                 ó  • [         R                  " SS/5      n[         R                  " SS/5      nSn[        R                  " [        [
        R                  " U5      S9   [        X5        S S S 5        g ! , (       d  f       g = f)Nr   r,   r-   z-Max relative difference among violations: 0.5rl   r•  rÓ   s       r#   Útest_report_max_relative_errorÚ1TestAssertAllclose.test_report_max_relative_error¡  sW   € Ü�HŠH�a˜�VÓˆÜ�HŠH�a˜�VÓˆàFˆÜ�]Š]œ>´·²¸<Ó1HÓIÜ˜AÔ!÷ J×IÖIúr˜  c                 óJ   • [         R                  " / SQ/SS9n[        X5        g )N)r,   r-   r8   r  zm8[ns]rA   )r/   r0   r   rD   s     r#   Útest_timedeltaÚ!TestAssertAllclose.test_timedelta©  s   € ä�HŠHÒ&Ð'¨xÑ8ˆÜ˜Õr&   c                 ó  • [         R                  " / SQSS9n[         R                  " / SQSS9nSn[        R                  " [        [
        R                  " U5      S9   [        XSS9  S	S	S	5        g	! , (       d  f       g	= f)
zJCheck the message is formatted correctly when overflow can occur
(gh21768))r   r,   r  Úuint8rA   )r9   r9   r9   z+Max absolute difference among violations: 4rl   r8   rŠ  N)r/   Úasarrayrn   ro   r(   rr   rs   r   rN  s       r#   Útest_error_message_unsignedÚ.TestAssertAllclose.test_error_message_unsigned®  sW   € ô �JŠJ’y¨Ñ0ˆÜ�JŠJ’y¨Ñ0ˆØDˆÜ�]Š]œ>´·²¸<Ó1HÓIÜ˜A qÒ)÷ J×IÖIús   ÁA2Á2
B c                 óº  • [         R                  " S5      n[         R                  " S5      n[        X5        [        R                  " [
        5         [        XSS9  SSS5        [        X5        [        R                  " [
        5         [        XR                  [         R                  5      SS9  SSS5        g! , (       d  f       Nd= f! , (       d  f       g= frP  )r/   rÅ  r   rn   ro   r(   rS  rÆ   r6  s      r#   rT  ÚTestAssertAllclose.test_strict»  s„   € ä�GŠG�A‹JˆÜ�GŠG�B‹KˆÜ˜ÔÜ�]Š]œ>Õ*Ü˜A¨Ò.÷ +ä˜ÔÜ�]Š]œ>Õ*Ü˜AŸx™x¬¯
©
Ó3¸DÒA÷ +Ð*÷ +Õ*ú÷ +Õ*ús   ÁB;Â
(CÂ;
C	Ã
CrL   N)rM   rN   rO   rP   rO  r’  r–  rœ  rŸ  r¢  r¥  r¨  r­  rT  rQ   rL   r&   r#   rˆ  rˆ  E  s7   † ò3"òjò
"ò.òNò
	ò"òò
*õ	Br&   rˆ  c                   ób   • \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rS rS rS rSrg)ÚTestArrayAlmostEqualNulpiÇ  c                 ó”  • Sn[         R                  " SSS[         R                  S9nSU-  n[         R                  U* U4   n[         R                  " UR
                  5      R                  nX"U-  U-  S-  -   n[        X$U5        [         R                  " UR
                  5      R                  nX"U-  U-  S-  -
  n[        X$U5        g ©NrL  éìÿÿÿrÄ  é2   rA   rý   r­   ©	r/   ÚlinspaceÚfloat64Úr_ÚfinforB   Úepsr	   Úepsneg©r    Únulprt   r¼  ru   r½  s         r#   Útest_float64_passÚ*TestArrayAlmostEqualNulp.test_float64_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                 ó¼  • Sn[         R                  " SSS[         R                  S9nSU-  n[         R                  U* U4   n[         R                  " UR
                  5      R                  nX"U-  U-  S-  -   n[        [        [        X$U5        [         R                  " UR
                  5      R                  nX"U-  U-  S-  -
  n[        [        [        X$U5        g r´  ©r/   r¸  r¹  rº  r»  rB   r¼  r   r(   r	   r½  r¾  s         r#   Útest_float64_failÚ*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                 óh  • [         R                  " S5      n[         R                  " [         R                  [         R                  S9R                  [         R                  5      nX!-  nUR                  [         R                  5      nUR                  [         R                  5      n[        XES5        g )Nl   ÿÿ rA   r   )r/   Úuint64r0   r�   r¹  r°   r   )r    ÚoffsetÚnan1_i64Únan2_i64Únan1_f64Únan2_f64s         r#   Útest_float64_ignore_nanÚ0TestArrayAlmostEqualNulp.test_float64_ignore_nanë  so   € ô —’˜:Ó&ˆÜ—8’8œBŸF™F¬"¯*©*Ñ5×:Ñ:¼2¿9¹9ÓEˆØÑ$ˆØ—=‘=¤§¡Ó,ˆØ—=‘=¤§¡Ó,ˆÜ˜X°Õ3r&   c                 ó”  • Sn[         R                  " SSS[         R                  S9nSU-  n[         R                  U* U4   n[         R                  " UR
                  5      R                  nX"U-  U-  S-  -   n[        X$U5        [         R                  " UR
                  5      R                  nX"U-  U-  S-  -
  n[        X$U5        g r´  ©	r/   r¸  rÆ   rº  r»  rB   r¼  r	   r½  r¾  s         r#   Útest_float32_passÚ*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                 ó¼  • Sn[         R                  " SSS[         R                  S9nSU-  n[         R                  U* U4   n[         R                  " UR
                  5      R                  nX"U-  U-  S-  -   n[        [        [        X$U5        [         R                  " UR
                  5      R                  nX"U-  U-  S-  -
  n[        [        [        X$U5        g r´  ©r/   r¸  rÆ   rº  r»  rB   r¼  r   r(   r	   r½  r¾  s         r#   Útest_float32_failÚ*TestArrayAlmostEqualNulp.test_float32_fail  rÆ  r&   c                 óh  • [         R                  " S5      n[         R                  " [         R                  [         R                  S9R                  [         R                  5      nX!-  nUR                  [         R                  5      nUR                  [         R                  5      n[        XES5        g )Niÿÿ  rA   r   )r/   Úuint32r0   r�   rÆ   r°   r   )r    rÉ  Únan1_i32Únan2_i32Únan1_f32Únan2_f32s         r#   Útest_float32_ignore_nanÚ0TestArrayAlmostEqualNulp.test_float32_ignore_nan  so   € ô —’˜6Ó"ˆÜ—8’8œBŸF™F¬"¯*©*Ñ5×:Ñ:¼2¿9¹9ÓEˆØÑ$ˆØ—=‘=¤§¡Ó,ˆØ—=‘=¤§¡Ó,ˆÜ˜X°Õ3r&   c                 ó”  • Sn[         R                  " SSS[         R                  S9nSU-  n[         R                  U* U4   n[         R                  " UR
                  5      R                  nX"U-  U-  S-  -   n[        X$U5        [         R                  " UR
                  5      R                  nX"U-  U-  S-  -
  n[        X$U5        g ©NrL  éüÿÿÿr9   rý   rA   r­   )	r/   r¸  Úfloat16rº  r»  rB   r¼  r	   r½  r¾  s         r#   Útest_float16_passÚ*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                 ó¼  • Sn[         R                  " SSS[         R                  S9nSU-  n[         R                  U* U4   n[         R                  " UR
                  5      R                  nX"U-  U-  S-  -   n[        [        [        X$U5        [         R                  " UR
                  5      R                  nX"U-  U-  S-  -
  n[        [        [        X$U5        g rá  )r/   r¸  rã  rº  r»  rB   r¼  r   r(   r	   r½  r¾  s         r#   Útest_float16_failÚ*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                 óh  • [         R                  " S5      n[         R                  " [         R                  [         R                  S9R                  [         R                  5      nX!-  nUR                  [         R                  5      nUR                  [         R                  5      n[        XES5        g )Néÿ   rA   r   )r/   Úuint16r0   r�   rã  r°   r   )r    rÉ  Únan1_i16Únan2_i16Únan1_f16Únan2_f16s         r#   Útest_float16_ignore_nanÚ0TestArrayAlmostEqualNulp.test_float16_ignore_nan=  sn   € ô —’˜4“ˆÜ—8’8œBŸF™F¬"¯*©*Ñ5×:Ñ:¼2¿9¹9ÓEˆØÑ$ˆØ—=‘=¤§¡Ó,ˆØ—=‘=¤§¡Ó,ˆÜ˜X°Õ3r&   c                 ó~  • Sn[         R                  " SSS[         R                  S9nSU-  n[         R                  U* U4   nX"S-  -   n[         R                  " UR
                  5      R                  nX"U-  U-  S-  -   n[        X2US-  -   U5        [        X5US-  -   U5        X"U-  U-  S	-  -   n[        X5US-  -   U5        [         R                  " UR
                  5      R                  nX"U-  U-  S-  -
  n[        X2US-  -   U5        [        X5US-  -   U5        X"U-  U-  S	-  -
  n[        X5US-  -   U5        g ©
NrL  rµ  rÄ  r¶  rA   rý   ù              ð?r­   r“   r·  ©r    r¿  rt   Úxir¼  ru   r½  s          r#   Útest_complex128_passÚ-TestArrayAlmostEqualNulp.test_complex128_passH  s:  € ØˆÜ�KŠK˜˜R ¬2¯:©:Ñ6ˆØ�‰EˆÜ�E‰E�1�"�a�%‰LˆØ�R‘‰Zˆä�hŠh�q—w‘wÓ×#Ñ#ˆØ�C‘˜$‘ Ñ#Ñ#ˆÜ& r¨q°2©v©:°tÔ<Ü& r¨q°2©v©:°tÔ<ð �C‘˜$‘ Ñ#Ñ#ˆÜ& r¨q°2©v©:°tÔ<ä—’˜!Ÿ'™'Ó"×)Ñ)ˆØ�F‘
˜TÑ! BÑ&Ñ&ˆÜ& r¨q°2©v©:°tÔ<Ü& r¨q°2©v©:°tÔ<Ø�F‘
˜TÑ! BÑ&Ñ&ˆÜ& r¨q°2©v©:°tÕ<r&   c                 óê  • Sn[         R                  " SSS[         R                  S9nSU-  n[         R                  U* U4   nX"S-  -   n[         R                  " UR
                  5      R                  nX"U-  U-  S-  -   n[        [        [        X2US-  -   U5        [        [        [        X5US-  -   U5        X"U-  U-  -   n[        [        [        X5US-  -   U5        [         R                  " UR
                  5      R                  nX"U-  U-  S-  -
  n[        [        [        X2US-  -   U5        [        [        [        X5US-  -   U5        X"U-  U-  -
  n[        [        [        X5US-  -   U5        g ©	NrL  rµ  rÄ  r¶  rA   rý   rô  r­   rÃ  rõ  s          r#   Útest_complex128_failÚ-TestArrayAlmostEqualNulp.test_complex128_fail_  sb  € ØˆÜ�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                 ó~  • Sn[         R                  " SSS[         R                  S9nSU-  n[         R                  U* U4   nX"S-  -   n[         R                  " UR
                  5      R                  nX"U-  U-  S-  -   n[        X2US-  -   U5        [        X5US-  -   U5        X"U-  U-  S	-  -   n[        X5US-  -   U5        [         R                  " UR
                  5      R                  nX"U-  U-  S-  -
  n[        X2US-  -   U5        [        X5US-  -   U5        X"U-  U-  S	-  -
  n[        X5US-  -   U5        g ró  rÑ  rõ  s          r#   Útest_complex64_passÚ,TestArrayAlmostEqualNulp.test_complex64_pass|  s8  € ØˆÜ�KŠK˜˜R ¬2¯:©:Ñ6ˆØ�‰EˆÜ�E‰E�1�"�a�%‰LˆØ�R‘‰Zˆä�hŠh�q—w‘wÓ×#Ñ#ˆØ�C‘˜$‘ Ñ#Ñ#ˆÜ& r¨q°2©v©:°tÔ<Ü& r¨q°2©v©:°tÔ<Ø�C‘˜$‘ Ñ#Ñ#ˆÜ& r¨q°2©v©:°tÔ<ä—’˜!Ÿ'™'Ó"×)Ñ)ˆØ�F‘
˜TÑ! BÑ&Ñ&ˆÜ& r¨q°2©v©:°tÔ<Ü& r¨q°2©v©:°tÔ<Ø�F‘
˜TÑ! BÑ&Ñ&ˆÜ& r¨q°2©v©:°tÕ<r&   c                 óê  • Sn[         R                  " SSS[         R                  S9nSU-  n[         R                  U* U4   nX"S-  -   n[         R                  " UR
                  5      R                  nX"U-  U-  S-  -   n[        [        [        X2US-  -   U5        [        [        [        X5US-  -   U5        X"U-  U-  -   n[        [        [        X5US-  -   U5        [         R                  " UR
                  5      R                  nX"U-  U-  S-  -
  n[        [        [        X2US-  -   U5        [        [        [        X5US-  -   U5        X"U-  U-  -
  n[        [        [        X5US-  -   U5        g rú  rÕ  rõ  s          r#   Útest_complex64_failÚ,TestArrayAlmostEqualNulp.test_complex64_fail‘  s`  € ØˆÜ�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&   rL   N)rM   rN   rO   rP   rÀ  rÄ  rÎ  rÒ  rÖ  rÞ  rä  rç  rð  r÷  rû  rþ  r  rQ   rL   r&   r#   r²  r²  Ç  sC   † ò3ò$"ò 	4ò3ò"ò 	4ò3ò"ò 	4ò=ò.,ò:=õ*,r&   r²  c                   ó2   • \ rS rSrS rS rS rS rS rSr	g)	ÚTestULPi­  c                 óV   • [         R                  R                  S5      n[        XSS9  g )Nrý   r   ©Úmaxulp)r/   ÚrandomÚrandnr   )r    rt   s     r#   Ú
test_equalÚTestULP.test_equal¯  s   € Ü�I‰I�O‰O˜BÓˆÜ˜Q¨!Ó,r&   c                 ód  • [         R                  " S5      R                  [         R                  5      nUS[         R                  R                  S5      R                  [         R                  5      -  -  n[         R                  " [         R                  5      R                  n[        XU-   SS9  g )Nrý   ç{®Gáz„?rÄ  r  )	r/   rÅ  rS  rÆ   r  r	  r»  r¼  r   ©r    rt   r¼  s      r#   Útest_singleÚTestULP.test_single³  so   € ä�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                 ód  • [         R                  " S5      R                  [         R                  5      nUS[         R                  R                  S5      R                  [         R                  5      -  -  n[         R                  " [         R                  5      R                  n[        XU-   SS9  g )Nrý   r  éÈ   r  )	r/   rÅ  rS  r¹  r  r	  r»  r¼  r   r  s      r#   Útest_doubleÚTestULP.test_doubleº  so   € ä�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                 ó8  • [         R                  [         R                  4 Hv  n[         R                  " [         R                  /5      R                  U5      n[         R                  " [         R                  " U5      R                  /5      n[        X#SS9  Mx     g )Nr  r  )	r/   rÆ   r¹  r0   r™   rS  r»  Úmaxr   )r    Údtr™   Úbigs       r#   rl  ÚTestULP.test_infÁ  sa   € Ü—:‘:œrŸz™zÓ*ˆBÜ—(’(œBŸF™F˜8Ó$×+Ñ+¨BÓ/ˆCÜ—(’(œBŸHšH R›L×,Ñ,Ð-Ó.ˆCÜ  °#Ô6ò +r&   c                 ó®  ^^^^^^^• [         R                  [         R                  4 GH©  nU[         R                  :X  a  SmOSm[         R                  " [         R                  /5      R                  U5      m[         R                  " [         R                  /5      R                  U5      m[         R                  " [         R                  " U5      R                  /5      m[         R                  " [         R                  " U5      R                  /5      m[         R                  " S/5      R                  U5      m[         R                  " S/5      R                  U5      m[        [        UUU4S j5        [        [        UUU4S j5        [        [        UUU4S j5        [        [        UUU4S j5        [        [        UUU4S	 j5        GM¬     g )
Ng    €„.Ag   ¢”mBr®   g       €c                  ó   >• [        TT TS9$ ©Nr  ©r   )r™   r  r�   s   €€€r#   r[  Ú"TestULP.test_nan.<locals>.<lambda>Õ  ó   ø€ Ô"6°s¸CØ>Dò#Fr&   c                  ó   >• [        TT TS9$ r  r  )r  r  r�   s   €€€r#   r[  r  Ø  r  r&   c                  ó   >• [        TTT S9$ r  r  )r  r�   Útinys   €€€r#   r[  r  Û  ó   ø€ Ô"6°s¸DØ>Dò#Fr&   c                  ó   >• [        TTT S9$ r  r  )r  r�   Úzeros   €€€r#   r[  r  Þ  r#  r&   c                  ó   >• [        TTT S9$ r  r  )r  r�   Únzeros   €€€r#   r[  r  á  s   ø€ Ô"6°s¸EØ>Dò#Fr&   )r/   rÆ   r¹  r0   r™   rS  r�   r»  r  r"  r   r(   )	r    r  r  r™   r  r�   r'  r"  r%  s	     @@@@@@@r#   rd  ÚTestULP.test_nanÇ  s>  þ€ ä—:‘:œrŸz™zÔ*ˆ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ò/ +r&   rL   N)
rM   rN   rO   rP   r
  r  r  rl  rd  rQ   rL   r&   r#   r  r  ­  s   † ò-ò4ò5ò7õGr&   r  c                   ó    • \ rS rSrS rS rSrg)ÚTestStringEqualiå  c                 ó  • [        SS5        [        SS5        [        R                  " [        5       n[        SS5        S S S 5        [	        WR
                  5      n[        US5        [        [        S 5        g ! , (       d  f       NA= f)NÚhellozhello
multilinezfoo
barz	hello
barz%Differences in strings:
- foo
+ helloc                  ó   • [        SS5      $ )Nra   r,  ©r   rL   r&   r#   r[  Ú-TestStringEqual.test_simple.<locals>.<lambda>ð  s   € Ô1°%¸ÔAr&   )r   rn   ro   r(   rp   rq   r   r   )r    rv   rw   s      r#   rO  ÚTestStringEqual.test_simpleæ  se   € Ü˜G WÔ-ÜÐ.Ð0BÔCä�]Š]œ>Ô*¨hÜ 
¨LÔ9÷ +ä�(—.‘.Ó!ˆÜ�SÐCÔDä”nÙAõ	C÷ +Õ*ús   ³A;Á;
B	c                 ó>   • [        SS5        [        [        S 5        g )Nza+*bc                  ó   • [        SS5      $ )NÚaaaza+br.  rL   r&   r#   r[  Ú,TestStringEqual.test_regex.<locals>.<lambda>ö  s   € Ô1°%¸Ô?r&   )r   r   r(   rI   s    r#   Ú
test_regexÚTestStringEqual.test_regexò  s   € Ü˜F FÔ+ä”nÙ?õ	Ar&   rL   N)rM   rN   rO   rP   rO  r5  rQ   rL   r&   r#   r*  r*  å  s   † ò
CõAr&   r*  c                 ó„   •  U R                   n[        U5      nSU;   a  US-  n[        X15        g ! [         a    0 n N0f = f)NÚversionr,   )Ú__warningregistry__ÚAttributeErrorÚlenr   )ÚmodÚn_in_contextÚ	mod_warnsÚ	num_warnss       r#   Úassert_warn_len_equalr@  ù  sP   € ð
Ø×+Ñ+ˆ	ô �I“€Ià�IÓð 	�Q‰ˆ	ä�Õ)øô# ó ð Š	ðús   ‚0 °?¾?c                  óp   •  " S S5      n U " 5       n[        USS9   " S S5      n U " 5       n[        USS9  g )Nc                   ó   • \ rS rSrSrg)Ú/test_warn_len_equal_call_scenarios.<locals>.modi  rL   N)rM   rN   rO   rP   rQ   rL   r&   r#   r<  rC    s   † Úr&   r<  r   )r<  r=  c                   ó   • \ rS rSrS rSrg)rC  i"  c                 ó   • SSS.U l         g )Nr,   r-   ©Úwarning1Úwarning2©r9  rI   s    r#   Ú__init__Ú8test_warn_len_equal_call_scenarios.<locals>.mod.__init__#  s   € Ø45Ø45ñ(7ˆDÕ$r&   rI  N)rM   rN   rO   rP   rJ  rQ   rL   r&   r#   r<  rC  "  s   † õ	7r&   r-   )r@  )r<  Úmod_insts     r#   Ú"test_warn_len_equal_call_scenariosrM    sB   € ÷ñ ñ ‹u€Hä˜hØ'(ò*÷
7ñ 7ñ
 ‹u€HÜ˜hØ'(ó*r&   c                  óŒ   • [         R                  [           n  U R                  R	                  5         U $ ! [
         a     U $ f = fr   )rc  rd  rM   r9  Úclearr:  ©Úmy_mods    r#   Ú_get_fresh_modrR  ,  sI   € ä�[‰[œÑ"€FðØ×"Ñ"×(Ñ(Ô*ð
 €Møô	 ó ð 	Ø€Mð	ús   ™5 µ
AÁAc                  óP  • [        5       n [        [        U S0 5      0 5        [        U /S9   [        R
                  " S5        [        R                  " S5        S S S 5        [        U R                  0 5        [        5          [        R
                  " S5        [        R                  " S5        S S S 5        [        U S5        SSS.U l        [        U /S9   [        R
                  " S5        [        R                  " S	5        S S S 5        [        U S5        [        5          [        R
                  " S5        [        R                  " S	5        S S S 5        [        U S5        g ! , (       d  f       GN= f! , (       d  f       NÍ= f! , (       d  f       N‰= f! , (       d  f       NO= f)
Nr9  )rd  ÚignoreúSome warningr   r,   r-   rF  zAnother warning)	rR  r   Úgetattrr   r\  rƒ  r]  r9  r@  rP  s    r#   Útest_clear_and_catch_warningsrW  8  s.  € äÓ€FÜ”˜Ð!6¸Ó;¸RÔ@Ü	!¨6¨(Ó	3Ü×Ò˜hÔ'Ü�Š�nÔ%÷ 
4ô �×+Ñ+¨RÔ0ô 
"Õ	#Ü×Ò˜hÔ'Ü�Š�nÔ%÷ 
$ô ˜& !Ô$ð /0Ø./ñ"1€FÔô 
"¨6¨(Ó	3Ü×Ò˜hÔ'Ü�ŠÐ'Ô(÷ 
4ô ˜& !Ô$ô 
"Õ	#Ü×Ò˜hÔ'Ü�ŠÐ'Ô(÷ 
$ô ˜& !Õ$÷3 
4Ö	3ú÷ 
$Õ	#ú÷ 
4Õ	3ú÷ 
$Õ	#ús/   ¬-E#Â-E5Ã-FÄ!-FÅ#
E2Å5
FÆ
FÆ
F%c                  ó  • [        5       n [        [        U S0 5      0 5        S n[        U S5        [	        5        nUR                  [        5        UR                  [        R                  R                  S9  [        R                  " S5        U" 5         S S S 5        [        [        WR                  5      S5        [        UR                  S   R                  R                   S   S5        [        U S5        [	        5       nUR                  U S9  U   [        R                  " S5        S S S 5        [        U S5        UR                  U S9  U   [        R                  " S5        S S S 5        [        U S5        [	        5          [        R"                  " S5        [        R                  " S5        S S S 5        [        U S5        g ! , (       d  f       GN8= f! , (       d  f       N´= f! , (       d  f       N‰= f! , (       d  f       NO= f)Nr9  c                  ó<   • S n [         R                  " U SS/5        g )Nc                 ó0   • [         R                  " SSS9  U $ )NzSome warning 2r-   ©Ú
stacklevelr[  ©Úarrs    r#   r]  ÚFtest_suppress_warnings_module.<locals>.warn_other_module.<locals>.warn`  s   € Ü�MŠMÐ*°qÒ9ØˆJr&   r   ©r/   Úapply_along_axis©r]  s    r#   Úwarn_other_moduleÚ8test_suppress_warnings_module.<locals>.warn_other_module]  ó   € ò	ô 	×Ò˜D ! a SÕ)r&   r   ©ÚmodulerU  r,   rT  )rR  r   rV  r@  r   Úrecordrf  Úfilterr/   ÚlibÚ_shape_base_implr\  r]  r;  ÚlogÚmessager»   rƒ  )rQ  rc  Úsups      r#   Útest_suppress_warnings_modulero  X  sj  € äÓ€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&Ç)
G7Ç:
Hc                  ó  • [        5       n [        [        U S0 5      0 5        [        5        nUR	                  [
        5        [        R                  " S5        S S S 5        [        U S5        [        5       nUR	                  [
        5        U   [        R                  " S5        S S S 5        [        U S5        UR	                  U S9  U   [        R                  " S5        S S S 5        [        U S5        [        5          [        R                  " S5        [        R                  " S5        S S S 5        [        U S5        g ! , (       d  f       Nî= f! , (       d  f       N³= f! , (       d  f       Nˆ= f! , (       d  f       NN= f)Nr9  rU  r   rf  rT  )
rR  r   rV  r   ri  rf  r\  r]  r@  rƒ  )rQ  rn  s     r#   Útest_suppress_warnings_typerq  †  s  € äÓ€FÜ”˜Ð!6¸Ó;¸RÔ@ô 
Ô	 Ø�
‰
”;ÔÜ�Š�nÔ%÷ 
ô ˜& !Ô$Ü
Ó
€CØ‡J�JŒ{ÔÚ	Ü�Š�nÔ%÷ 
ä˜& !Ô$à‡J�J�f€JÑÚ	Ü�Š�nÔ%÷ 
ä˜& !Ô$ô 
Õ	Ü×Ò˜hÔ'Ü�Š�nÔ%÷ 
ô ˜& !Õ$÷' 
Õ	ú÷ 
�ú÷
 
�ú÷
 
Õ	ús/   ¬,E ÂEÃ	E"Ã>-E3Å 
EÅ
EÅ"
E0Å3
Fc                  ó4  • [        5       n U R                  [        5        U S 5       n[        R                  " SS9 n[        R
                  " S5        U" [        5        U" [        5        [        [        U5      S5        S S S 5        g ! , (       d  f       g = f)Nc                 ó2   • [         R                  " SU 5        g )NrU  r[  )Úcategorys    r#   r]  Ú7test_suppress_warnings_decorate_no_record.<locals>.warn¦  s   € ä�Š�n hÕ/r&   T)rh  Úalwaysr,   )	r   ri  rf  r\  r‚  rƒ  ÚRuntimeWarningr   r;  )rn  r]  Úws      r#   Ú)test_suppress_warnings_decorate_no_recordry  ¢  sr   € Ü
Ó
€CØ‡J�JŒ{Ôàñ0ó 	ð0ô 
×	 Ò	 ¨Ò	-°Ü×Ò˜hÔ'ÙŒ[ÔÙŒ^ÔÜ”S˜“V˜QÔ÷	 
.×	-Ö	-ús   ¼AB	Â	
Bc                  óˆ  • [        5       n U R                  5       nU    U R                  SS9nU R                  SS9  [        R                  " S5        [        R                  " S5        [        R                  " S5        [        [        U R                  5      S5        [        [        U5      S5        [        [        U5      S5        [        US   R                  R                  S   S5        S S S 5        U    U R                  SS9nU R                  SS9  [        R                  " S5        [        R                  " S5        [        R                  " S5        [        [        U R                  5      S5        [        [        U5      S5        [        [        U5      S5        [        US   R                  R                  S   S5        S S S 5        [        5        n U R                  5         [        5        nUR                  SS9  [        R                  " S5        [        R                  " S5        [        [        UR                  5      S5        S S S 5        [        [        U R                  5      S5        S S S 5        g ! , (       d  f       GN™= f! , (       d  f       NÐ= f! , (       d  f       NY= f! , (       d  f       g = f)NzSome other warning 2)rm  rU  úSome other warningr-   r,   r   )
r   rh  ri  r\  r]  r   r;  rl  rm  r»   )rn  Úlog1Úlog2Úsup2s       r#   Útest_suppress_warnings_recordr  ±  sà  € Ü
Ó
€CØ�:‰:‹<€Dâ	Ø�z‰zÐ"8ˆzÐ9ˆØ�
‰
˜>ˆ
Ñ*Ü�Š�nÔ%Ü�ŠÐ*Ô+Ü�ŠÐ,Ô-ä”S˜Ÿ™“\ 1Ô%Ü”S˜“Y Ô"Ü”S˜“Y Ô"Ü�T˜!‘W—_‘_×)Ñ)¨!Ñ,Ð.DÔE÷ 
ò 
Ø�z‰zÐ"8ˆzÐ9ˆØ�
‰
˜>ˆ
Ñ*Ü�Š�nÔ%Ü�ŠÐ*Ô+Ü�ŠÐ,Ô-ä”S˜Ÿ™“\ 1Ô%Ü”S˜“Y Ô"Ü”S˜“Y Ô"Ü�T˜!‘W—_‘_×)Ñ)¨!Ñ,Ð.DÔE÷ 
ô 
Ô	 Ø�
‰
ŒÜÔ  DØ�K‰K ˆKÑ/Ü�MŠM˜.Ô)Ü�MŠMÐ.Ô/Üœ˜TŸX™X›¨Ô*÷	 !ô
 	”S˜Ÿ™“\ 1Ô%÷ 
Ð	÷5 
Žú÷ 
�ú÷ !Õ ú÷ 
Õ	ús>   �CI?Ã7CJÇJ3Ç4AJ"É'J3É?
JÊ
JÊ"
J0	Ê,J3Ê3
Kc                  ó¶  • S n [        5        nUR                  5         [        S5         [        S5       H  n[        R                  " S5        M     S S S 5        [        [        UR                  5      S5        S S S 5        [        5        nUR                  5         [        S5         [        S5       H/  n[        R                  " S5        [        R                  " S5        M1     S S S 5        [        [        UR                  5      S5        S S S 5        [        5        nUR                  5         [        S5         [        S5       H6  n[        R                  " S5        [        R                  " S5        U " 5         M8     S S S 5        [        [        UR                  5      S5        S S S 5        [        5        nUR                  5         [        S5         [        S5       H6  n[        R                  " S5        [        R                  " S5        U " 5         M8     S S S 5        [        [        UR                  5      S5        S S S 5        g ! , (       d  f       GN= f! , (       d  f       GNì= f! , (       d  f       GN‘= f! , (       d  f       GN|= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       N¢= f! , (       d  f       g = f)	Nc                  ó<   • S n [         R                  " U SS/5        g )Nc                 ó0   • [         R                  " SSS9  U $ )NrU  r-   r[  r[  r]  s    r#   r]  ÚJtest_suppress_warnings_forwarding.<locals>.warn_other_module.<locals>.warnÝ  s   € Ü�MŠM˜.°QÒ7ØˆJr&   r   r`  rb  s    r#   rc  Ú<test_suppress_warnings_forwarding.<locals>.warn_other_moduleÚ  re  r&   rv  r-   rU  Úlocationrg  Úoncer{  )r   rh  Úranger\  r]  r   r;  rl  )rc  rn  Ú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Ô%÷ 
Ð	÷3 )Ö(ú÷ 
Ö	ú÷ +Ö*ú÷ 
Ö	ú÷ )Ö(ú÷ 
Ö	ú÷ 'Õ&ú÷ 
Õ	ús�   ŽIª)IÁ'IÂJÂ(?I1Ã''JÄ J'Ä<AJÆ'J'Æ;K
ÇAJ9È'K
É
I	ÉIÉ
I.É1
J 	É;JÊ
JÊ
J$	ÊJ'Ê'
J6Ê9
K	ËK
Ë

Kc                  ó  • [        5        n [        R                  R                  U S5      n[	        US5          S S S 5        S S S 5        [        [        R                  R                  W 5      (       + 5        Sn [        5        n [        e! , (       d  f       NW= f! , (       d  f       N`= f! , (       d  f       O= f! [         a    Sn Of = f[        U5        [        [        R                  R                  U 5      (       + 5        g )NÚtmprx  FT)r   ÚosÚpathÚjoinÚopenr   ÚisdirÚ
ValueError)ÚtdirÚfpathÚraiseds      r#   Útest_tempdirr•    s°   € Ü	Œ�dÜ—‘—‘˜T 5Ó)ˆÜ�%˜ÕØ÷ ÷ 
ô ”—‘—‘˜dÓ#Ô#Ô$à€FðÜŒY˜$ÜÐ÷ Õú÷ 
�ú÷ �Yûäó ØŠðúäˆF„OÜ”—‘—‘˜dÓ#Ô#Õ$sK   ‹-B¸BºBÁ:
B> ÂB-Â
B	ÂBÂ
B*Â-
B;Â7B> Â;B> Â>CÃCc                  óÒ  • [        5        n [        U S5          S S S 5        S S S 5        [        [        R                  R                  W 5      (       + 5        Sn [        5        n [        e! , (       d  f       NW= f! , (       d  f       N`= f! , (       d  f       O= f! [         a    Sn Of = f[        U5        [        [        R                  R                  U 5      (       + 5        g )Nrx  FT)r   r�  r   rŒ  r�  Úisfiler‘  )r“  r”  s     r#   Útest_temppathr˜    sœ   € Ü	Œ�uÜ�%˜ÕØ÷ ÷ 
ô ”—‘—‘˜uÓ%Ô%Ô&à€FðÜŒZ˜5ÜÐ÷ Õú÷ 
�ú÷ �Zûäó ØŠðúäˆF„OÜ”—‘—‘˜uÓ%Ô%Õ&sK   ‹A<˜A+šA<Á
B Á$BÁ+
A9	Á5A<Á<
B
Â
BÂB ÂB ÂB-Â,B-c                   ó4   • \ rS rSr\R
                  \    4rSrg)Úmy_cacwi)  rL   N)rM   rN   rO   rP   rc  rd  Úclass_modulesrQ   rL   r&   r#   rš  rš  )  s   † à—[‘[ Ñ*Ð,ƒMr&   rš  c                  óä   • [        5       n [        5          [        R                  " S5        [        R                  " S5        S S S 5        [        U R                  0 5        g ! , (       d  f       N%= f)NrT  rU  )rR  rš  r\  rƒ  r]  r   r9  rP  s    r#   Ú%test_clear_and_catch_warnings_inheritr�  .  sH   € äÓ€FÜ	�Ü×Ò˜hÔ'Ü�Š�nÔ%÷ 
ô �×+Ñ+¨RÕ0÷ 
�ús   •-A!Á!
A/zPython lacks refcounts)Úreasonc                   ó\   • \ rS rSrSrS rS r\R                  R                  S 5       r
Srg)ÚTestAssertNoGcCyclesi7  zTest assert_no_gc_cycles c                 óv   • S n[        5          U" 5         S S S 5        [        U5        g ! , (       d  f       N= f)Nc                  ó,   • / n U R                  / 5        U $ r   ©Úappendru  s    r#   Úno_cycleÚ2TestAssertNoGcCycles.test_passes.<locals>.no_cycle<  s   € ØˆAØ�H‰H�RŒLØˆHr&   )r   )r    r¥  s     r#   Útest_passesÚ TestAssertNoGcCycles.test_passes;  s,   € ò	ô
 !Õ"ÙŒJ÷ #ô 	˜HÕ%÷ #Õ"ús   Ž*ª
8c                 ó  • S n[        [        5         [        5          U" 5         S S S 5        S S S 5        [        [        5         [        U5        S S S 5        g ! , (       d  f       N:= f! , (       d  f       NC= f! , (       d  f       g = f)Nc                  óN   • / n U R                  U 5        U R                  U 5        U $ r   r£  )r!   s    r#   Ú
make_cycleÚ5TestAssertNoGcCycles.test_asserts.<locals>.make_cycleG  s"   € ØˆAØ�H‰H�QŒKØ�H‰H�QŒKØˆHr&   )r   r(   r   )r    r«  s     r#   Útest_assertsÚ!TestAssertNoGcCycles.test_assertsF  s[   € ò	ô œ>Õ*Ü$Õ&Ù”÷ '÷ +ô œ>Õ*Ü 
Ô+÷ +Ð*÷ 'Õ&ú÷ +Õ*ú÷ +Õ*ús-   “A+žA¦A+ÁA<Á
A(	Á$A+Á+
A9Á<
B
c                 óH  ^•  " U4S jS5      m [         R                  " T" 5       5      n [        [        5         [	        S 5        SSS5        STl        g! , (       d  f       N= f! [
         a"    U" 5       b  [        R                  " S5        e  NDf = f! STl        f = f)z}
Test that in cases where the garbage cannot be collected, we raise an
error, instead of hanging forever trying to clear it.
c                   ó0   >• \ rS rSrSrSrS rU 4S jrSrg)Ú<TestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDeli[  z�
An object that not only contains a reference cycle, but creates new
cycles whenever it's garbage-collected and its __del__ runs
Tc                 ó   • X l         g r   ©ÚcyclerI   s    r#   rJ  ÚETestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDel.__init__b  s   € Ø!•
r&   c                 óF   >• S U l         TR                  (       a  T" 5         g g r   )r´  r«  )r    ÚReferenceCycleInDels    €r#   Ú__del__ÚDTestAssertNoGcCycles.test_fails.<locals>.ReferenceCycleInDel.__del__e  s    ø€ à!�”
à&×1×1ñ (Õ)ð 2r&   r³  N)	rM   rN   rO   rP   Ú__doc__r«  rJ  r¸  rQ   )r·  s   €r#   r·  r±  [  s   ø† ñð ˆJò"÷*ð *r&   r·  c                  ó   • g r   rL   rL   r&   r#   r[  Ú1TestAssertNoGcCycles.test_fails.<locals>.<lambda>s  s   € °r&   Nz*GC does not call __del__ on cyclic objectsF)	ÚweakrefÚrefr   ry  r   r(   rn   Úskipr«  )r    rx  r·  s     @r#   Ú
test_failsÚTestAssertNoGcCycles.test_failsT  sŒ   ø€ ÷	*ô 	*ð&	3Ü—’Ñ/Ó1Ó2ˆAð	Ü"¤<Õ0ä'©Ô5÷ 1ð .3ÐÕ*÷ 1Õ0ûô "ó ñ “3‘?Ü—K’KÐ LÔMØñ #ðûð .3ÐÕ*úsK   �B ¬A) »AÁA) Á
A&Á"A) Á%B Á&A) Á))BÂB ÂBÂB Â	B!rL   N)rM   rN   rO   rP   rº  r§  r­  rn   ÚmarkÚslowrÀ  rQ   rL   r&   r#   r   r   7  s-   † á$ò	&ò,ð ‡[�[×Ññ(3ó ó(3r&   r   )@r  rŒ  rr   rc  r\  r½  rn   Únumpyr/   Ú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   rS   rä   r  r?  r�  rÓ  rö  rW  rˆ  r²  r  r*  r@  rM  rR  rW  ro  rq  ry  r  r‰  r•  r˜  rš  r�  rÂ  Úskipifr   rL   r&   r#   Ú<module>rÊ     su  ðÛ Û 	Û 	Û 
Û Û ã ã ß +Ð +÷÷ ÷ ÷ ÷ õ ÷2+/ñ +/ô\\1�\ô \1÷~*ñ *ôZ\)�ô \)ô~u ˜<ô u ôpP �lô P ÷f(Mñ (M÷VFDñ FD÷REHñ EH÷PBñ B÷Dc,ñ c,÷L5Gñ 5G÷pAñ Aò(*ò.*ò8	ò%ò@+%ò\%ò8 ò%&òP,&ò^%ò"'ô -Ð&ô -ò
1ð ‡�×Ñ˜Ô$Ð-EÐÐF÷E3ð E3ó GñE3r&   