Ë
    èÿæi ã                   óÞ  — d dl mZmZ d dlZd dlZd dlZd dlZd dlZd dl	m
Z
mZmZ d dlmZ d dlmZmZ d dlmZmZ d dlmZmZmZmZmZ dZd	Zd
„ Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d„ Z#dVd„Z$d„ Z%d„ Z&d„ Z'd„ Z(d„ Z)d„ Z*d„ Z+d„ Z,d„ Z-d„ Z.d„ Z/d„ Z0d„ Z1d„ Z2d „ Z3d!„ Z4d"„ Z5d#„ Z6d$„ Z7d%„ Z8d&„ Z9d'„ Z:d(„ Z;d)„ Z<d*„ Z=ej|                  d+d fd,ej~                  fd-„Z@dWd.„ZAdWd/„ZBd0„ ZCd1„ ZDd2„ ZEd3„ ZFd4„ ZGd5„ ZHd6„ ZId7„ ZJd8„ ZKd9„ ZLd:„ ZMd;„ ZNd<„ ZOd=„ ZPd>„ ZQd?„ ZRd@„ ZSdA„ ZTdB„ ZUdC„ ZVdD„ ZWdE„ ZXdXdF„ZYdXdG„ZZdYdH„Z[dYdI„Z\dJ„ Z]dK„ Z^dL„ Z_dM„ Z`dN„ ZadO„ ZbdP„ Zc G dQ„ dRee«      Zd G dS„ dTe«      ZeefdUk(  r ejÎ                  «        yy)Zé    )ÚproductÚcycleN)ÚjitÚnjitÚtypeof)Útypes)ÚTypingErrorÚNumbaValueError)Úas_dtypeÚnumpy_version)ÚTestCaseÚMemoryLeakMixinÚ
needs_blasÚskip_if_numpy_2Úexpected_failure_np2ztimedelta64[M]ztimedelta64[Y]c                 ó2   — t        j                  | ||«       y ©N©ÚnpÚaround©ÚarrÚdecimalsÚouts      ús/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/numba/tests/test_array_methods.pyÚnp_around_arrayr      ó   € Ü‡I�Iˆc�8˜SÕ!ó    c                 ó.   — t        j                  | |«      S r   r   ©Úvalr   s     r   Únp_around_binaryr"      s   € Ü�9‰9�S˜(Ó#Ð#r   c                 ó,   — t        j                  | «      S r   r   ©r!   s    r   Únp_around_unaryr%      s   € Ü�9‰9�S‹>Ðr   c                 ó2   — t        j                  | ||«       y r   ©r   Úroundr   s      r   Únp_round_arrayr)      s   € Ü‡H�HˆS�(˜CÕ r   c                 ó2   — t        j                  | ||«       y r   )r   Úround_r   s      r   Únp_round__arrayr,   !   r   r   c                 ó.   — t        j                  | |«      S r   r'   r    s     r   Únp_round_binaryr.   $   s   € Ü�8‰8�C˜Ó"Ð"r   c                 ó,   — t        j                  | «      S r   r'   r$   s    r   Únp_round_unaryr0   '   s   € Ü�8‰8�C‹=Ðr   c                 óÖ  — |�]| j                   j                  dk(  rDt        | j                  ||j                  «       t        | j                  ||j                  «       |S t        j                  | ||«      }|€pd„ }t        | t        t
        j                  f«      rDt         || j                  |j                  «       || j                  |j                  «      «      }|S  || |«      }|S )z4
    A slightly bugfixed version of np.round().
    Úcc                 óF   — |dk(  r| dk  rt        j                  |«       S |S )Nç        r   )r   Úabs)ÚargÚress     r   Úfixup_signed_zeroz*_fixed_np_round.<locals>.fixup_signed_zero7   s$   € Ø˜#’: #¨¢'ÜŸF™F 3›K˜<Ð'à�Jr   )
ÚdtypeÚkindÚ_fixed_np_roundÚrealÚimagr   r(   Ú
isinstanceÚcomplexÚcomplexfloating)r   r   r   r7   r8   s        r   r;   r;   *   sÁ   € ð €˜3Ÿ9™9Ÿ>™>¨SÒ0ä˜Ÿ™ (¨C¯H©HÔ5Ü˜Ÿ™ (¨C¯H©HÔ5Øˆ
ä�h‰h�s˜H cÓ*ˆØˆ;òô
 ˜#¤¬×);Ñ);Ð<Ô=ÜÑ/°·±¸#¿(¹(ÓCÙ/°·±¸#¿(¹(ÓCóE�ð ˆ
ñ (¨¨SÓ1�Øˆ
r   c                 ó   — | j                   S r   )ÚT©r   s    r   Úarray_TrD   D   s   € Ø�5‰5€Lr   c                 ó"   — | j                  «       S r   )Ú	transposerC   s    r   Úarray_transposerG   G   s   € Ø�=‰=‹?Ðr   c                 ó"   — | j                  «       S r   )ÚcopyrC   s    r   Ú
array_copyrJ   J   s   € Ø�8‰8‹:Ðr   c                 ó,   — t        j                  | «      S r   )r   rI   rC   s    r   Únp_copyrL   M   s   € Ü�7‰7�3‹<Ðr   c                 ó,   — t        j                  | «      S r   )r   ÚasfortranarrayrC   s    r   Únp_asfortranarrayrO   P   s   € Ü×Ñ˜SÓ!Ð!r   c                 ó,   — t        j                  | «      S r   )r   ÚascontiguousarrayrC   s    r   Únp_ascontiguousarrayrR   S   s   € Ü×Ñ Ó$Ð$r   c                 ó$   — | j                  |«      S r   ©Úview©r   Únewtypes     r   Ú
array_viewrX   V   ó   € Ø�8‰8�GÓÐr   c                 ó$   — | j                  |«      S r   ©Útake)r   Úindicess     r   Ú
array_taker^   Y   rY   r   c                 ó(   — | j                  ||¬«      S ©N©Úaxisr[   )r   r]   rb   s      r   Úarray_take_kwsrc   \   s   € Ø�8‰8�G $ˆ8Ó'Ð'r   c                 ó,   — t        j                  | «      S r   ©r   Úarange)Úarg0s    r   Únp_arange_1rh   _   s   € Ü�9‰9�T‹?Ðr   c                 ó.   — t        j                  | |«      S r   re   )rg   Úarg1s     r   Únp_arange_2rk   b   s   € Ü�9‰9�T˜4Ó Ð r   c                 ó0   — t        j                  | ||«      S r   re   )rg   rj   Úarg2s      r   Únp_arange_3rn   e   s   € Ü�9‰9�T˜4 Ó&Ð&r   c                 ó2   — t        j                  | |||«      S r   re   )rg   rj   rm   Úarg3s       r   Únp_arange_4rq   h   s   € Ü�9‰9�T˜4  tÓ,Ð,r   c                 ó0   — t        j                  | |¬«      S ©N)Ústopre   )rg   rt   s     r   Únp_arange_1_stopru   k   ó   € Ü�9‰9�T Ô%Ð%r   c                 ó0   — t        j                  | |¬«      S ©N©Ústepre   )rg   rz   s     r   Únp_arange_1_stepr{   n   rv   r   c                 ó0   — t        j                  | |¬«      S ©N©r9   re   )rg   r9   s     r   Únp_arange_1_dtyper   q   s   € Ü�9‰9�T Ô'Ð'r   c                 ó2   — t        j                  | ||¬«      S rx   re   )rg   rj   rz   s      r   Únp_arange_2_stepr�   t   s   € Ü�9‰9�T˜4 dÔ+Ð+r   c                 ó2   — t        j                  | ||¬«      S r}   re   )rg   rj   r9   s      r   Únp_arange_2_dtyperƒ   w   s   € Ü�9‰9�T˜4 uÔ-Ð-r   c                 ó0   — t        j                  | |¬«      S rs   re   )Ústartrt   s     r   Únp_arange_start_stopr†   z   s   € Ü�9‰9�U Ô&Ð&r   c                 ó2   — t        j                  | ||¬«      S ©N)rt   rz   re   )r…   rt   rz   s      r   Únp_arange_start_stop_stepr‰   }   s   € Ü�9‰9�U ¨DÔ1Ð1r   c                 ó4   — t        j                  | |||¬«      S )N)rt   rz   r9   re   )r…   rt   rz   r9   s       r   Únp_arange_start_stop_step_dtyper‹   €   s   € Ü�9‰9�U ¨D¸Ô>Ð>r   c                 ó$   — | j                  |«      S r   )Úfill)r   r!   s     r   Ú
array_fillrŽ   ƒ   s   € Ø�8‰8�C‹=Ðr   c                 ó   ‡ — ˆ fd„}|S )Nc                 ó&   •— | j                  ‰«      S r   rT   rV   s    €r   rX   z#make_array_view.<locals>.array_viewˆ   s   ø€ Ø�x‰x˜Ó Ð r   © )rW   rX   s   ` r   Úmake_array_viewr’   ‡   s   ø€ ô!àÐr   c                 óL   — | dd j                  t        j                  «      d   S )Nr   é   )rU   r   Úfloat32rC   s    r   Úarray_sliced_viewr–   Œ   s    € Øˆq�ˆ8�=‰=œŸ™Ó$ QÑ'Ð'r   c                 ó   ‡ — ˆ fd„}|S )Nc                 ó&   •— | j                  ‰«      S r   )ÚastyperV   s    €r   Úarray_astypez'make_array_astype.<locals>.array_astype�   s   ø€ Ø�z‰z˜'Ó"Ð"r   r‘   )rW   rš   s   ` r   Úmake_array_astyper›   �   s   ø€ ô#àÐr   éÿÿÿÿr9   c                 ó4   — t        j                  | |||¬«      S )z7
    np.frombuffer() on a Python-allocated buffer.
    ©r9   ÚcountÚoffset©r   Ú
frombuffer)Úbr9   rŸ   r    s       r   Únp_frombufferr¤   •   s   € ô �=‰=˜ %¨u¸VÔDÐDr   c                 óP   — t        j                  | t         j                  ||¬«      S )Nrž   )r   r¢   Ú	complex64©r£   rŸ   r    s      r   Únp_frombuffer_dtyper¨   ›   s   € Ü�=‰=˜¤"§,¡,°eÀFÔKÐKr   c                 ó4   — t        j                  | d||¬«      S )Nr¦   rž   r¡   r§   s      r   Únp_frombuffer_dtype_strrª   ž   s   € Ü�=‰=˜ +°UÀ6ÔJÐJr   c                 óv   — t        j                  | t         j                  ¬«      }t        j                  |«      S )z6
    np.frombuffer() on a Numba-allocated buffer.
    r~   )r   ÚonesÚint32r¢   ©Úshaper   s     r   Únp_frombuffer_allocatedr°   ¡   s'   € ô �'‰'�%œrŸx™xÔ
(€CÜ�=‰=˜ÓÐr   c                 ó–   — t        j                  | t         j                  ¬«      }t        j                  |t         j                  ¬«      S r}   )r   r¬   r­   r¢   r¦   r®   s     r   Únp_frombuffer_allocated_dtyper²   ¨   s+   € Ü
�'‰'�%œrŸx™xÔ
(€CÜ�=‰=˜¤B§L¡LÔ1Ð1r   c                 ó   — | |u | |ufS r   r‘   ©Úar£   s     r   Úidentity_usecaser¶   ¬   s   € Ø�ˆF�a˜q�jÐ!Ð!r   c                 ó"   — | j                  «       S r   )Útobytes©rµ   s    r   Úarray_tobytesrº   ¯   ó   € Ø�9‰9‹;Ðr   c                 ó"   — | j                  «       S r   )Únonzeror¹   s    r   Úarray_nonzeror¾   ²   r»   r   c                 ó,   — t        j                  | «      S r   )r   r½   r¹   s    r   Ú
np_nonzerorÀ   µ   s   € Ü�:‰:�a‹=Ðr   c                 ó,   — t        j                  | «      S r   ©r   Úwhere)r2   s    r   Ú
np_where_1rÄ   ¸   s   € Ü�8‰8�A‹;Ðr   c                 ó0   — t        j                  | ||«      S r   rÂ   )r2   ÚxÚys      r   Ú
np_where_3rÈ   »   s   € Ü�8‰8�A�q˜!ÓÐr   c                 ó"   — | j                  «       S r   )Úitemr¹   s    r   Ú
array_itemrË   ¾   ó   € Ø�6‰6‹8€Or   c                 ó&   — | j                  |«       y r   )Úitemset)rµ   Úvs     r   Úarray_itemsetrÐ   Á   s   € Ø‡I�Iˆa…Lr   c                 ó    —  | j                   |Ž S r   ©Úsum©rµ   Úargss     r   Ú	array_sumrÖ   Ä   s   € Øˆ1�5‰5�$ˆ<Ðr   c                 ó&   — | j                  |¬«      S r`   rÒ   ©rµ   rb   s     r   Úarray_sum_axis_kwsrÙ   Ç   s   € Ø�5‰5�dˆ5ÓÐr   c                 ó&   — | j                  |¬«      S r}   rÒ   )rµ   r9   s     r   Úarray_sum_dtype_kwsrÛ   Ê   s   € Ø�5‰5�uˆ5ÓÐr   c                 ó(   — | j                  ||¬«      S )N©rb   r9   rÒ   )rµ   r9   rb   s      r   Úarray_sum_axis_dtype_kwsrÞ   Í   s   € Ø�5‰5�d %ˆ5Ó(Ð(r   c                 ó&   — | j                  ||«      S r   rÒ   )rµ   Úa1Úa2s      r   Úarray_sum_axis_dtype_posrâ   Ð   s   € Ø�5‰5��R‹=Ðr   c                 óè   — t        j                  | d¬«      }t        j                  | d«      }t        j                  | |«      }| j                  d¬«      }t        j                  | d¬«      }|||||fS )Nr”   ra   é   é   rœ   )r   rÓ   )r   rb   rµ   r£   r2   ÚdÚes          r   Úarray_sum_const_multirè   Ó   sb   € ô 	�‰ˆs˜Ô€AÜ
�‰ˆs�A‹€Aä
�‰ˆs�DÓ€Aà�‰�Qˆ‹€Aä
�‰ˆs˜Ô€AØˆa��A�qˆ=Ðr   c                 ó&   — | j                  d¬«      S )Nrœ   ra   rÒ   rØ   s     r   Úarray_sum_const_axis_neg_onerê   á   s   € ð �5‰5�bˆ5‹>Ðr   c                 ó    —  | j                   |Ž S r   ©ÚcumsumrÔ   s     r   Úarray_cumsumrî   æ   s   € Øˆ1�8‰8�Tˆ?Ðr   c                 ó&   — | j                  |¬«      S r`   rì   rØ   s     r   Úarray_cumsum_kwsrð   é   s   € Ø�8‰8˜ˆ8ÓÐr   c                 ó,   — t        j                  | «      S r   )r   r<   r¹   s    r   Ú
array_realrò   ì   ó   € Ü�7‰7�1‹:Ðr   c                 ó,   — t        j                  | «      S r   )r   r=   r¹   s    r   Ú
array_imagrõ   ï   ró   r   c                 ó0   — t        j                  | ||«      S r   ©r   Úclip©rµ   Úa_minÚa_maxs      r   Únp_clip_no_outrü   ò   s   € Ü�7‰7�1�e˜UÓ#Ð#r   c                 ó2   — t        j                  | |||«      S r   r÷   ©rµ   rú   rû   r   s       r   Únp_cliprÿ   õ   s   € Ü�7‰7�1�e˜U CÓ(Ð(r   c                 ó4   — t        j                  | |||¬«      S ©N©r   r÷   rþ   s       r   Únp_clip_kwargsr  ø   s   € Ü�7‰7�1�e˜U¨Ô,Ð,r   c                 ó(   — | j                  |||«      S r   ©rø   rþ   s       r   Ú
array_clipr  û   s   € Ø�6‰6�%˜ Ó$Ð$r   c                 ó*   — | j                  |||¬«      S r  r  rþ   s       r   Úarray_clip_kwargsr  þ   s   € Ø�6‰6�%˜ Cˆ6Ó(Ð(r   c                 ó&   — | j                  ||«      S r   r  rù   s      r   Úarray_clip_no_outr
    s   € Ø�6‰6�%˜ÓÐr   c                 ó"   — | j                  «       S r   )Úconjr¹   s    r   Ú
array_conjr    rÌ   r   c                 ó"   — | j                  «       S r   )Ú	conjugater¹   s    r   Úarray_conjugater    s   € Ø�;‰;‹=Ðr   c                 ó,   — t        j                  | «      S r   )r   Úuniquer¹   s    r   Ú	np_uniquer  
  s   € Ü�9‰9�Q‹<Ðr   c                 ó$   — | j                  |«      S r   ©Údotr´   s     r   Ú	array_dotr    s   € Ø�5‰5�‹8€Or   c                 óB   — | j                  |«      j                  |«      S r   r  r´   s     r   Úarray_dot_chainr    s   € Ø�5‰5�‹8�<‰<˜‹?Ðr   c                 ó0   — t        j                  | |¬«      S r}   )r   r¬   )Únr9   s     r   Ú
array_ctorr    s   € Ü�7‰7�1˜EÔ"Ð"r   c                   óf  ‡ — e Zd ZdZˆ fd„Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
ed	„ «       Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zej4                  d„ fd„Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d„ Z#d „ Z$d!„ Z%d"„ Z&d#„ Z'd$„ Z(d%„ Z)d&„ Z*d'„ Z+d(„ Z,d)„ Z-d*„ Z.d+„ Z/d,„ Z0d-„ Z1d.„ Z2d/„ Z3d0„ Z4d1„ Z5d2„ Z6d3„ Z7d4„ Z8d5„ Z9d6„ Z:d7„ Z;d8„ Z<ed9„ «       Z=d:„ Z>d;„ Z?d<„ Z@d=„ ZAd>„ ZBd?„ ZCd@„ ZDdA„ ZEdB„ ZFdC„ ZGdD„ ZHdE„ ZIdF„ ZJdG„ ZKdH„ ZLdI„ ZMdJ„ ZNdK„ ZOdL„ ZPdM„ ZQdN„ ZRdO„ ZSdP„ ZTdQ„ ZUdR„ ZVeWdS„ «       ZXdT„ ZYdU„ ZZdV„ Z[dW„ Z\dX„ Z]dY„ Z^dZ„ Z_ˆ xZ`S )[ÚTestArrayMethodszA
    Test various array methods and array-related functions.
    c                 ó*   •— t         t        | �  «        y r   )Úsuperr  ÚsetUp)ÚselfÚ	__class__s    €r   r!  zTestArrayMethods.setUp  s   ø€ ÜÔ Ñ+Õ-r   c                 ó°  — g d¢}|D �cg c]  }|dz  ‘Œ	 }}|D �cg c]  }t        |«      ‘Œ }}t        j                  t        j                  t        j                  t        j
                  t        j                  f}|||||g}|}	t        ||«      D ]e  \  }
} t        |
t        j                  f«      |	«      }dD ]:  }|D ]3  }|dkD  r|dz  }t        ||«      } |||«      }| j                  ||«       Œ5 Œ< Œg |}	t        ||«      D ]C  \  }
} t        |
f«      |	«      }|D ]'  }t        |«      } ||«      }| j                  ||«       Œ) ŒE y c c}w c c}w )N©g      Àg      Àg      Àg      ø¿ç      ø?g      @ç      @g      @ù      ð?      ð¿)é   r   rœ   r   é
   )Úintr   Úfloat64r•   r­   r¦   Ú
complex128Úzipr   r;   ÚassertPreciseEqual)r"  Úunary_pyfuncÚbinary_pyfuncÚbase_valuesrÆ   Úcomplex_valuesÚ
int_valuesÚargtypesÚ	argvaluesÚpyfuncÚtyÚvaluesÚcfuncr   rÏ   ÚexpectedÚgots                    r   Úcheck_round_scalarz#TestArrayMethods.check_round_scalar  sX  € ÚEˆÙ0;Ó<±¨1˜!˜v›,°ˆÐ<Ù&1Ó2¡k ”c˜!•f kˆ
Ð2Ü—M‘M¤5§=¡=´%·+±+Ü—O‘O¤U×%5Ñ%5ð7ˆà  +¨zØ# ^ð5ˆ	ð ˆÜ˜h¨	Ö2‰JˆB�Ø+”D˜"œeŸk™kÐ*Ó+¨FÓ3ˆEÛ&�Û�AØ !’|Ø˜R™˜Ü.¨q°(Ó;�HÙ  8Ó,�CØ×+Ñ+¨C°Õ:ñ  ñ 'ð 3ð ˆÜ˜h¨	Ö2‰JˆB�Ø”D˜"˜“K Ó'ˆEÛ�Ü*¨1Ó-�Ù˜A“h�Ø×'Ñ'¨¨XÕ6ñ ñ 3ùò' =ùÚ2s
   ‰E›Ec                 ó8   — | j                  t        t        «       y r   )r=  r0   r.   ©r"  s    r   Útest_round_scalarz"TestArrayMethods.test_round_scalar;  s   € Ø×Ñ¤´Õ@r   c                 ó8   — | j                  t        t        «       y r   )r=  r%   r"   r?  s    r   Útest_around_scalarz#TestArrayMethods.test_around_scalar>  s   € Ø×Ñ¤Ô1AÕBr   c                 ó  ‡ ‡‡— ˆ fd„Šˆˆfd„}t        j                  g d¢«      }t        j                  t        j                  f} ||||«       t        j
                  t        j                  f} ||||dz  «       ‰ j                  «        y )Nc                 ó  •— |j                  t        |«      «      }t        j                  |«      j                  t        |«      «      }|j	                  «       }t        |||«       ‰	j                  «         | |||«       ‰	j                  «        t        j                  j                  ||«       ‰	j                  t        «      5 } | |||dd  «       d d d «       ‰	j                  t        j                  «      d«       y # 1 sw Y   Œ/xY w)Nr)  zinvalid output shape)r™   r   r   Ú
zeros_likerI   r;   Úmemory_leak_setupÚmemory_leak_teardownÚtestingÚassert_allcloseÚassertRaisesÚ
ValueErrorÚassertEqualÚstrÚ	exception)
r:  r9  ÚintyÚouttyr   r   r   ÚpyoutÚraisesr"  s
            €r   Úcheck_roundz7TestArrayMethods.check_round_array.<locals>.check_roundB  sÏ   ø€ à—-‘-¤¨£Ó/ˆCÜ—-‘- Ó$×+Ñ+¬H°U«OÓ<ˆCØ—H‘H“JˆEÜ˜C ¨5Ô1Ø×"Ñ"Ô$Ù�#�x Ô%Ø×%Ñ%Ô'Ü�J‰J×&Ñ& s¨EÔ2à×"Ñ"¤:Ô.°&Ù�c˜8 S¨¨ WÔ-÷ /à×ÑœS ×!1Ñ!1Ó2Ø3õ5÷ /Ð.ús   ÃDÄD
c                 óN  •— t        | |«      D ]•  \  }}t        j                  |dd«      t        j                  t        j                  |dd«      f} t	        |«      ‰«      } ‰||||d«        ‰||||d«       t        |t        j                  «      s ‰||dz  ||d«       Œ–Œ— y )Nr)  ÚAr   r*  rœ   )r   r   ÚArrayr­   r   r>   ÚInteger)	r5  Úouttypesr9  rO  rP  Úargtysr:  rS  r7  s	          €€r   Úcheck_typesz7TestArrayMethods.check_round_array.<locals>.check_typesR  sœ   ø€ Ü& x°Ö:‘��eÜŸ+™+ d¨A¨sÓ3´U·[±[ÜŸ+™+ e¨Q°Ó4ð6�à$œ˜V› VÓ,�Ù˜E 6¨4°¸Ô:Ù˜E 6¨4°¸Ô:Ü! %¬¯©Ô7Ù  v°¡{°D¸%ÀÕDð ñ  ;r   r%  r(  )r   Úarrayr   r,  r•   r¦   r-  Údisable_leak_check)r"  r7  rZ  r9  r5  rS  s   ``   @r   Úcheck_round_arrayz"TestArrayMethods.check_round_arrayA  so   ú€ ô	5õ 	ô —‘ÒIÓJˆä—M‘M¤5§=¡=Ð1ˆÙ�H˜h¨Ô/ä—O‘O¤U×%5Ñ%5Ð6ˆÙ�H˜h¨°&Ñ(9Ô:ð 	×ÑÕ!r   c                 ó.   — | j                  t        «       y r   )r]  r)   r?  s    r   Útest_round_arrayz!TestArrayMethods.test_round_arrayk  s   € Ø×Ñœ~Õ.r   c                 ó.   — | j                  t        «       y r   )r]  r   r?  s    r   Útest_around_arrayz"TestArrayMethods.test_around_arrayn  s   € Ø×ÑœÕ/r   c                 ó.   — | j                  t        «       y r   )r]  r,   r?  s    r   Útest_round__arrayz"TestArrayMethods.test_round__arrayq  s   € à×ÑœÕ/r   c                 ó´   — t         t        fD ]=  } t        d¬«      |«      }d}| j                  t        |«      5   |d «       d d d «       Œ? y # 1 sw Y   ŒJxY w)NT©Únopythonú'.*The argument "a" must be array-like.*)r0   r%   r   ÚassertRaisesRegexr	   ©r"  r7  r:  Úmsgs       r   Útest_around_bad_arrayz&TestArrayMethods.test_around_bad_arrayu  sO   € Ü%¤Ó7ˆFØ&”C Ô& vÓ.ˆEØ;ˆCØ×'Ñ'¬°SÕ9Ù�d”÷ :Ð9ñ 8÷ :Ð9ús   º	AÁA	c                 óú   — t         t        g}t        dk  r|j                  t        «       |D ]@  } t        d¬«      |«      }d}| j                  t        |«      5   |ddd¬«       d d d «       ŒB y # 1 sw Y   ŒMxY w)	N©é   r   Tre  ú9.*The argument "out" must be an array if it is provided.*rå   r   é   r  )r)   r   r   Úappendr,   r   rh  r	   )r"  ÚfuncsÚpy_funcr:  rj  s        r   Útest_around_bad_outz$TestArrayMethods.test_around_bad_out|  sm   € Ü¤Ð1ˆÜ˜6Ò!Ø�L‰LœÔ)ÛˆGØ&”C Ô& wÓ/ˆEØMˆCØ×'Ñ'¬°SÕ9Ù�a˜ Õ"÷ :Ð9ñ ÷ :Ð9ús   ÁA1Á1A:	c                 óô	  ‡ ‡— d„ Šˆˆ fd„}ˆˆ fd„}ˆˆ fd„}ˆˆ fd„}ˆˆ fd„}ˆˆ fd„}t        j                  dt         j                  fd	t         j                  fg«      }t        j                  d
t         j                  fdt         j                  fg«      }t        j                  dt         j                  fdt         j                  fg«      }	t        dk\  r	|}
|}|}|}n|}
|}|}|}t        j
                  dt         j                  ¬«      } ||t        j                  d«      «        ||t         j                  «        ||t         j                  «        ||t         j                  «        ||t         j                  «        |||«        |||«        |
|t         j                  «       |j                  d«      } ||t         j                  «        ||t         j                  «        ||t         j                  «        |||«        |
||«        |
|t         j                  «       t        j
                  dt         j                  ¬«      j                  d«      j                  }t        j                  d«      j                  d d d…d d d…f   }t        dk\  r|}n|} ||t         j                  «        ||t         j                  «        ||t         j                  «        ||t         j                  «        |||«        |||«        ||t         j                  «        ||t         j                  «       t        j
                  dt         j                  ¬«      d d d…   } ||t         j                  «        ||t         j                  «        |||	«        ||t         j                  «        ||t         j                  «        ||t         j                  «        |||«        |||«       t        j                   dgt         j                  ¬«      j                  d«      } ||t         j                  «        ||t         j                  «        |||	«        ||t         j                  «        ||t         j                  «        ||t         j                  «        |||«        |||«       t        j                   dg«      } ||t         j                  «       ‰ j#                  «        y )Nc                 ó:   — t        |«      } t        |«      | «      S r   )r’   r   ©r   r9   r7  s      r   Úrunz-TestArrayMethods.test_array_view.<locals>.runˆ  s   € Ü$ UÓ+ˆFØ”4˜“< Ó$Ð$r   c                 ó    •— | j                  |«      }‰j                  «         ‰| |«      }‰j                  ||«       ~‰j                  «        y r   )rU   rF  r/  rG  ©r   r9   r;  r<  rx  r"  s       €€r   Úcheckz/TestArrayMethods.test_array_view.<locals>.checkŒ  sF   ø€ Ø—x‘x “ˆHØ×"Ñ"Ô$Ù�c˜5“/ˆCØ×#Ñ# C¨Ô2ØØ×%Ñ%Õ'r   c                 ó¶   •— ‰j                  t        «      5 } ‰| |«       d d d «       ‰j                  t        j                  «      d«       y # 1 sw Y   Œ/xY w)Nz"new type not compatible with array)rJ  rK  rL  rM  rN  )r   r9   rR  rx  r"  s      €€r   Ú	check_errz3TestArrayMethods.test_array_view.<locals>.check_err”  sI   ø€ Ø×"Ñ"¤:Ô.°&Ù�C˜”÷ /à×ÑœS ×!1Ñ!1Ó2ØAõC÷ /Ð.úó   —
AÁAc                 óz  •— d}‰j                  t        «      5 } t        |«      | «       d d d «       ‰j                  t	        j
                  «      |«       ‰j                  t        «      5 } ‰| |«       d d d «       ‰j                  t	        |j
                  «      |«       y # 1 sw Y   Œ{xY w# 1 sw Y   Œ;xY w)NzJTo change to a dtype of a different size, the last axis must be contiguous©rJ  rK  r’   rL  rM  rN  ©r   r9   rj  rR  rx  r"  s       €€r   Úcheck_err_noncontig_last_axiszGTestArrayMethods.test_array_view.<locals>.check_err_noncontig_last_axisš  s”   ø€ ð(ˆCà×"Ñ"¤:Ô.°&Ø&” Ó& sÔ+÷ /à×ÑœS ×!1Ñ!1Ó2°CÔ8à×"Ñ"¤:Ô.°&Ù�C˜”÷ /à×ÑœS ×!1Ñ!1Ó2°CÕ8÷ /Ð.ú÷ /Ð.úó   ™B%Á-
B1Â%B.Â1B:c                 óz  •— d}‰j                  t        «      5 } t        |«      | «       d d d «       ‰j                  t	        j
                  «      |«       ‰j                  t        «      5 } ‰| |«       d d d «       ‰j                  t	        |j
                  «      |«       y # 1 sw Y   Œ{xY w# 1 sw Y   Œ;xY w)NzOChanging the dtype of a 0d array is only supported if the itemsize is unchangedr€  r�  s       €€r   Úcheck_err_0dz6TestArrayMethods.test_array_view.<locals>.check_err_0d¦  s”   ø€ ð2ˆCà×"Ñ"¤:Ô.°&Ø&” Ó& sÔ+÷ /à×ÑœS ×!1Ñ!1Ó2°CÔ8à×"Ñ"¤:Ô.°&Ù�C˜”÷ /à×ÑœS ×!1Ñ!1Ó2°CÕ8÷ /Ð.ú÷ /Ð.úrƒ  c                 óz  •— d}‰j                  t        «      5 } t        |«      | «       d d d «       ‰j                  t	        j
                  «      |«       ‰j                  t        «      5 } ‰| |«       d d d «       ‰j                  t	        |j
                  «      |«       y # 1 sw Y   Œ{xY w# 1 sw Y   Œ;xY w)NzZWhen changing to a smaller dtype, its size must be a divisor of the size of original dtyper€  r�  s       €€r   Úcheck_err_smaller_dtypezATestArrayMethods.test_array_view.<locals>.check_err_smaller_dtype²  s”   ø€ ð;ˆCà×"Ñ"¤:Ô.°&Ø&” Ó& sÔ+÷ /à×ÑœS ×!1Ñ!1Ó2°CÔ8à×"Ñ"¤:Ô.°&Ù�C˜”÷ /à×ÑœS ×!1Ñ!1Ó2°CÕ8÷ /Ð.ú÷ /Ð.úrƒ  c                 óz  •— d}‰j                  t        «      5 } t        |«      | «       d d d «       ‰j                  t	        j
                  «      |«       ‰j                  t        «      5 } ‰| |«       d d d «       ‰j                  t	        |j
                  «      |«       y # 1 sw Y   Œ{xY w# 1 sw Y   Œ;xY w)NzuWhen changing to a larger dtype, its size must be a divisor of the total size in bytes of the last axis of the array.r€  r�  s       €€r   Úcheck_err_larger_dtypez@TestArrayMethods.test_array_view.<locals>.check_err_larger_dtype¾  s–   ø€ ð#ˆCð ×"Ñ"¤:Ô.°&Ø&” Ó& sÔ+÷ /à×ÑœS ×!1Ñ!1Ó2°CÔ8à×"Ñ"¤:Ô.°&Ù�C˜”÷ /à×ÑœS ×!1Ñ!1Ó2°CÕ8÷ /Ð.ú÷ /Ð.úrƒ  rµ   r£   ÚurÏ   rÆ   rÇ   )r)  é   é   r~   Úint16©rä   é   ©r”   r”   rn  é   é*   r‘   Úabcdef)r   r9   Úint8r�  r   rf   r•   r¦   r-  ÚreshaperB   ÚzerosÚuint64r­   Úuint32Úint64r[  r\  )r"  r{  r}  r‚  r…  r‡  r‰  Údt1Údt2Údt3Úcheck_error_larger_dtÚcheck_error_smaller_dtÚcheck_error_noncontigÚcheck_error_0dr   Úf_arrÚnot_f_or_c_arrÚcheck_maybe_errorrx  s   `                 @r   Útest_array_viewz TestArrayMethods.test_array_view†  s¦  ù€ ò	%õ	(õ	Cõ
	9õ
	9õ
	9õ	9ô �h‰h˜œbŸg™g˜¨¬b¯g©g¨Ð7Ó8ˆÜ�h‰h˜œbŸh™h˜¨#¬r¯w©w¨Ð8Ó9ˆÜ�h‰h˜œbŸh™h˜¨#¬r¯x©x¨Ð9Ó:ˆô
 ˜GÒ#Ø$:Ð!Ø%<Ð"Ø$AÐ!Ø)‰Nà$-Ð!Ø%.Ð"Ø$-Ð!Ø&ˆNô �i‰i˜¤"§'¡'Ô*ˆÙˆc”2—8‘8˜GÓ$Ô%Ùˆc”2—8‘8ÔÙˆc”2—7‘7ÔÙˆc”2—:‘:ÔÙˆc”2—<‘<Ô Ùˆc�3ŒÙˆc�3ŒÙ˜c¤2§=¡=Ô1ð �k‰k˜&Ó!ˆÙˆc”2—7‘7ÔÙˆc”2—:‘:ÔÙˆc”2—<‘<Ô Ùˆc�3ŒÙ˜c 3Ô'Ù˜c¤2§=¡=Ô1ô —	‘	˜"¤B§G¡GÔ,×4Ñ4°VÓ<×>Ñ>ˆäŸ™ &Ó)×+Ñ+©C¨a¨C±°1°¨HÑ5ˆô ˜GÒ#Ø =Ñà %Ðáˆe”R—W‘WÔÙˆnœbŸi™iÔ(Ù˜%¤§¡Ô,Ù˜%¤§¡Ô.Ù˜% Ô%á˜e SÔ)Ù˜e¤R§]¡]Ô3Ù˜n¬b¯g©gÔ6ô �i‰i˜¤"§(¡(Ô+©C¨a¨CÑ0ˆÙˆc”2—9‘9ÔÙˆc”2—:‘:ÔÙˆc�3ŒÙ˜c¤2§7¡7Ô+Ù˜c¤2§8¡8Ô,Ù˜c¤2§8¡8Ô,Ù˜c 3Ô'Ù˜c 3Ô'ô �h‰h˜�t¤2§8¡8Ô,×4Ñ4°RÓ8ˆÙˆc”2—9‘9ÔÙˆc”2—:‘:ÔÙˆc�3ŒÙ�sœBŸG™GÔ$Ù�sœBŸH™HÔ%Ù�sœBŸH™HÔ%Ù�s˜CÔ Ù�s˜CÔ ô �h‰h˜�zÓ"ˆÙ˜s¤B§M¡MÔ2ð 	×ÑÕ!r   c                 ó&  — t         } t        t        j                  dd f«      |«      }t	        j
                  ddgt        j                  ¬«      }|j                  t        j                  «      } ||«      } ||«      }| j                  ||«       y)zX
        Test .view() on A layout array but has contiguous innermost dimension.
        Nr&  rn  r~   )	r–   r   r   Úuint8r   r[  r•   rU   rL  )r"  r7  r:  ÚorigÚbytearyÚexpectr<  s          r   Útest_array_sliced_viewz'TestArrayMethods.test_array_sliced_view$  sq   € ô #ˆØ'””e—k‘k¡!�nÐ&Ó'¨Ó/ˆä�x‰x˜˜a˜¬¯
©
Ô3ˆØ—)‘)œBŸH™HÓ%ˆá˜“ˆÙ�G‹nˆà×Ñ˜ Õ%r   c                 ó¾  ‡ ‡— d„ Šˆˆ fd„}t        j                  dt         j                  ¬«      } ||t        j                  d«      «        ||t         j                  «        ||t         j
                  «        ||t         j                  «        ||d«       t        j                  dt         j                  ¬«      j                  d«      j                  } ||t         j
                  «       t        j                  dt         j                  ¬«      d d d	…   } ||t         j                  «       t        j                  dt         j                  ¬«      }d
|j                  _         ||t         j                  «       t        j                  dt         j                  fg«      }‰ j                  «       5 } |||«       d d d «       ‰ j                  dt        j                  «      «       d}‰ j                  «       5 }t!        d¬«      d„ «       } ||«       d d d «       ‰ j                  dt        |j                  «      «       y # 1 sw Y   Œ‰xY w# 1 sw Y   Œ;xY w)Nc                 ó:   — t        |«      } t        |«      | «      S r   )r›   r   rw  s      r   rx  z/TestArrayMethods.test_array_astype.<locals>.run5  s   € Ü& uÓ-ˆFØ”4˜“< Ó$Ð$r   c                 ó~   •— | j                  |«      j                  d¬«      } ‰| |«      }‰j                  ||«       y )NrU  ©Úorder)r™   rI   r/  rz  s       €€r   r{  z1TestArrayMethods.test_array_astype.<locals>.check9  s:   ø€ Ø—z‘z %Ó(×-Ñ-°CÐ-Ó8ˆHÙ�c˜5“/ˆCØ×#Ñ# C¨Õ2r   rŒ  r~   r�  r•   rŽ  r‘  rn  FrÆ   z#cannot convert from int32 to RecordTre  c                 óN   — t        j                  dg«      j                  | «       y ©Nr)  )r   r[  r™   r~   s    r   Úfooz/TestArrayMethods.test_array_astype.<locals>.foo\  s   € ä—‘˜!˜“×$Ñ$ UÕ+r   z5array.astype if dtype is a string it must be constant)r   rf   r”  r9   r­   r•   r-  r•  rB   r—  ÚflagsÚ	writeableÚassertTypingErrorÚassertInrM  rN  r   )r"  r{  r   ÚdtrR  Úunicode_valr²  rx  s   `      @r   Útest_array_astypez"TestArrayMethods.test_array_astype3  sº  ù€ ò	%õ	3ô �i‰i˜¤"§'¡'Ô*ˆÙˆc”2—8‘8˜GÓ$Ô%Ùˆc”2—8‘8ÔÙˆc”2—:‘:ÔÙˆc”2—=‘=Ô!Ùˆc�9Ôô �i‰i˜¤"§'¡'Ô*×2Ñ2°6Ó:×<Ñ<ˆÙˆc”2—:‘:Ôô �i‰i˜¤"§(¡(Ô+©C¨a¨CÑ0ˆÙˆc”2—9‘9Ôô �i‰i˜¤"§(¡(Ô+ˆØ#ˆ�	‰	ÔÙˆc”2—8‘8Ôô �X‰X˜œRŸW™W�~Ð&Ó'ˆØ×#Ñ#Ô%¨Ù�#�rŒN÷ &à�‰Ð;Ü˜&×*Ñ*Ó+ô	-ð  ˆØ×#Ñ#Ô%¨Ü˜$Ôñ,ó  ð,á�Ô÷	 &ð
 	�‰ÐMÜ˜&×*Ñ*Ó+õ	-÷ &Ð%ú÷ &Ð%ús   Æ5
IÇ>IÉIÉIc                 ó4   — | j                  t        d„ ¬«       y )Nc                 ót   — t        j                  | t         j                  ¬«      j                  j                  S r}   )r   r¢   r¦  ÚctypesÚdata©rÆ   s    r   Ú<lambda>z5TestArrayMethods.test_array_tobytes.<locals>.<lambda>f  s   € ¤§¡¨q¼¿¹Ô!A×!HÑ!H×!MÒ!Mr   )Ú
memoryaddr)Úcheck_layout_dependent_funcrº   r?  s    r   Útest_array_tobytesz#TestArrayMethods.test_array_tobytesc  s   € Ø×(Ñ(ÜÙMð 	)õ 	
r   c                 ó  ‡ ‡‡— t        ‰«      Šˆˆˆ fd„}t        t        d«      «      } ||«        |t        |«      «        |t	        |«      «        |t        j                  d«      «       t        j                  d«      j                  d«      } ||«       ‰ j                  «        ‰ j                  t        «      5 } ‰t        d«      «       d d d «       ‰ j                  dt        j                  «      «       y # 1 sw Y   Œ/xY w)Nc                 ó¢  •— t        j                  | «      } ‰| «      }‰j                  «         ‰| «      }‰j                  ||«       ~t	        j
                  «        ‰j                  t        j                  | «      |dz   «       ~t	        j
                  «        ‰j                  t        j                  | «      |«       ‰j                  «        y r±  )ÚsysÚgetrefcountrF  r/  ÚgcÚcollectrL  rG  )ÚbufÚ
old_refcntr;  r<  r:  r7  r"  s       €€€r   r{  z3TestArrayMethods.check_np_frombuffer.<locals>.checkm  s›   ø€ ÜŸ™¨Ó-ˆJÙ˜c“{ˆHØ×"Ñ"Ô$Ù˜“*ˆCØ×#Ñ# C¨Ô2Øô �J‰JŒLØ×ÑœSŸ_™_¨SÓ1°:À±>ÔBØÜ�J‰JŒLØ×ÑœSŸ_™_¨SÓ1°:Ô>Ø×%Ñ%Õ'r   r‘  é   )rä   r”   s   xxxz.buffer size must be a multiple of element size)r   Ú	bytearrayÚrangeÚbytesÚ
memoryviewr   rf   r•  r\  rJ  rK  rL  rM  rN  )r"  r7  r{  r£   rR  r:  s   ``   @r   Úcheck_np_frombufferz$TestArrayMethods.check_np_frombufferi  sÆ   ú€ ä�V“ˆö	(ô  ”e˜B“iÓ ˆÙˆaŒÙŒe�A‹hŒÙŒj˜‹mÔÙŒb�i‰i˜‹mÔÜ�I‰I�b‹M×!Ñ! &Ó)ˆÙˆaŒð 	×ÑÔ!à×ÑœzÔ*¨fÙ”)˜FÓ#Ô$÷ +à×ÑÐIÜ˜V×-Ñ-Ó.õ	0÷ +Ð*ús   Ã D Ä D	c                 ó.   — | j                  t        «       y r   )rÐ  r¤   r?  s    r   Útest_np_frombufferz#TestArrayMethods.test_np_frombuffer�  s   € Ø× Ñ ¤Õ/r   c                 ó.   — | j                  t        «       y r   )rÐ  r¨   r?  s    r   Útest_np_frombuffer_dtypez)TestArrayMethods.test_np_frombuffer_dtype�  s   € Ø× Ñ Ô!4Õ5r   c                 ó.   — | j                  t        «       y r   )rÐ  rª   r?  s    r   Útest_np_frombuffer_dtype_strz-TestArrayMethods.test_np_frombuffer_dtype_str“  s   € Ø× Ñ Ô!8Õ9r   c                 ó  — t        d¬«      d„ «       }| j                  t        «      5 } |t        t	        d«      «      d«       d d d «       t        j                  «      }d}| j                  ||«       y # 1 sw Y   Œ3xY w)NTre  c                 ó2   — t        j                  | |¬«       y r}   r¡   )rÉ  r·  s     r   ÚfunczETestArrayMethods.test_np_frombuffer_dtype_non_const_str.<locals>.func—  s   € ä�M‰M˜# RÖ(r   r‘  r­   z@If np.frombuffer dtype is a string it must be a string constant.)r   rJ  r	   rÌ  rÍ  rM  rN  r¶  )r"  rÙ  rR  Úexcstrrj  s        r   Ú&test_np_frombuffer_dtype_non_const_strz7TestArrayMethods.test_np_frombuffer_dtype_non_const_str–  ss   € Ü	�dÔ	ñ	)ó 
ð	)ð ×Ñœ{Ô+¨vÙ”œ5 ›9Ó% wÔ/÷ ,ô �V×%Ñ%Ó&ˆð"ˆà�‰�c˜6Õ"÷ ,Ð+ús   ¨A6Á6A?c                 ó’   — t        d¬«      d„ «       }d}| j                  t        |«      5 } |d «       d d d «       y # 1 sw Y   y xY w)NTre  c                 ó,   — t        j                  | «      S r   r¡   )rÉ  s    r   rÙ  z<TestArrayMethods.test_np_frombuffer_bad_buffer.<locals>.func¤  s   € ä—=‘= Ó%Ð%r   z).*Argument "buffer" must be buffer-like.*)r   rh  r	   )r"  rÙ  rj  rR  s       r   Útest_np_frombuffer_bad_bufferz.TestArrayMethods.test_np_frombuffer_bad_buffer£  sE   € Ü	�dÔ	ñ	&ó 
ð	&ð :ˆØ×#Ñ#¤K°Ô5¸Ù�ŒJ÷ 6×5Ñ5ús	   «	=½Ac                 ó.   — | j                   j                  S r   )r¼  r½  r¾  s    r   r¿  zTestArrayMethods.<lambda>­  s   € ¸!¿(¹(¿-º-r   c                 óæ  ‡ ‡‡— ˆˆˆ fd„} |d«      } ||«        ||j                  d«      «        ||j                  d«      j                  «        ||j                  d«      d d d…   «        ||j                  d«      «        ||j                  d«      j                  «        ||j                  d«      d d d…   «       t        j                  dg«      j                  d«      } ||«       y )Nc                 ó  •—  t        t        | «      f«      ‰«      } ‰| «      } || «      }‰j                  ||«       ‰j                  | j                  j
                   ‰|«      k(  | j                  j
                   ‰|«      k(  «       y r   )r   r   r/  rL  r¼  r½  )r   r:  r;  r<  rÀ  r7  r"  s       €€€r   Ú	check_arrz?TestArrayMethods.check_layout_dependent_func.<locals>.check_arr¯  ss   ø€ Ø(”Dœ& ›+˜Ó(¨Ó0ˆEÙ˜c“{ˆHÙ˜“*ˆCØ×#Ñ# H¨cÔ2Ø×ÑØ—
‘
—‘¡:¨hÓ#7Ñ7Ø—
‘
—‘¡:¨c£?Ñ2õr   rŒ  rŽ  rn  ©rn  rä   r”   r   r‘   )r•  rB   r   r[  )r"  r7  ÚfacrÀ  râ  r   s   `` `  r   rÁ  z,TestArrayMethods.check_layout_dependent_func¬  s¿   ú€ ö	ñ �"‹gˆÙ�#ŒÙ�#—+‘+˜fÓ%Ô&Ù�#—+‘+˜fÓ%×'Ñ'Ô(Ù�#—+‘+˜fÓ%¡c¨ cÑ*Ô+Ù�#—+‘+˜iÓ(Ô)Ù�#—+‘+˜iÓ(×*Ñ*Ô+Ù�#—+‘+˜iÓ(©¨1¨Ñ-Ô.Ü�h‰h˜�s‹m×#Ñ# BÓ'ˆÙ�#�r   c                 ó.   — | j                  t        «       y r   )rÁ  rG   r?  s    r   Útest_array_transposez%TestArrayMethods.test_array_transposeÄ  s   € Ø×(Ñ(¬Õ9r   c                 ó.   — | j                  t        «       y r   )rÁ  rD   r?  s    r   Útest_array_TzTestArrayMethods.test_array_TÇ  s   € Ø×(Ñ(¬Õ1r   c                 ó.   — | j                  t        «       y r   )rÁ  rJ   r?  s    r   Útest_array_copyz TestArrayMethods.test_array_copyÊ  s   € Ø×(Ñ(¬Õ4r   c                 óØ   ‡ ‡— ˆˆ fd„} |d«        |g d¢«        |d«       d}‰ j                  t        |«      5 } t        t        d«      f«      ‰«       d d d «       y # 1 sw Y   y xY w)Nc                 ó€   •—  t        t        | «      f«      ‰«      } ‰| «      } || «      }‰j                  ||«       y r   ©r   r   r/  )Úobjr:  r;  r<  r7  r"  s       €€r   Ú	check_objz5TestArrayMethods.check_object_copy.<locals>.check_objÎ  s<   ø€ Ø(”Dœ& ›+˜Ó(¨Ó0ˆEÙ˜c“{ˆHÙ˜“*ˆCØ×#Ñ# H¨cÕ2r   ©r)  rn  rä   )ç      ð?ç       @ç      @rp  rg  Úhello©rh  r	   r   r   )r"  r7  rï  rj  rR  s   ``   r   Úcheck_object_copyz"TestArrayMethods.check_object_copyÍ  sZ   ù€ õ	3ñ 	�)ÔÙ’/Ô"Ù�!Œà7ˆØ×#Ñ#¤K°Ô5¸Ø%ŒD”&˜“/Ð$Ó% fÔ-÷ 6×5Ñ5ús   »A Á A)c                 óX   — | j                  t        «       | j                  t        «       y r   )rÁ  rL   rö  r?  s    r   Útest_np_copyzTestArrayMethods.test_np_copyÜ  s   € Ø×(Ñ(¬Ô1Ø×ÑœwÕ'r   c                 óŠ   ‡ ‡— ˆˆ fd„}dddt        j                  d«      t        j                  d«      dfD ]
  } ||«       Œ y )Nc                 ó€   •—  t        t        | «      f«      ‰«      } ‰| «      } || «      }‰j                  ||«       y r   rí  )rÆ   r:  r;  r<  r7  r"  s       €€r   Úcheck_scalarzETestArrayMethods.check_ascontiguousarray_scalar.<locals>.check_scalará  s<   ø€ Ø&”Dœ& ›)˜Ó& vÓ.ˆEÙ˜a“yˆHÙ˜“(ˆCØ×#Ñ# H¨cÕ2r   r’  g      E@y              E@T)r   r•   r,  )r"  r7  rû  rÆ   s   ``  r   Úcheck_ascontiguousarray_scalarz/TestArrayMethods.check_ascontiguousarray_scalarà  s9   ù€ õ	3ð
 �d˜C¤§¡¨B£´·±¸B³ÀÓFˆAÙ˜�Oñ Gr   c                 ó”   — d}| j                  t        |«      5 } t        t        d«      f«      |«       d d d «       y # 1 sw Y   y xY w)Nrg  rô  rõ  )r"  r7  rj  rR  s       r   Úcheck_bad_arrayz TestArrayMethods.check_bad_arrayé  s;   € Ø7ˆØ×#Ñ#¤K°Ô5¸Ø%ŒD”&˜“/Ð$Ó% fÔ-÷ 6×5Ñ5ús	   ™>¾Ac                 ó‚   — | j                  t        «       | j                  t        «       | j                  t        «       y r   )rÁ  rO   rþ  rü  r?  s    r   Útest_np_asfortranarrayz'TestArrayMethods.test_np_asfortranarrayî  s/   € Ø×(Ñ(Ô):Ô;Ø×ÑÔ.Ô/Ø×+Ñ+Ô,=Õ>r   c                 ót  ‡ ‡‡— t         Št        ‰«      Šdˆˆˆ fd„	} |t        j                  t        j                  d«      d«      d¬«        |t        j
                  ddgddgd	d
ggd¬«      «        |t        j
                  ddgddgd	d
ggd¬«      «        |t        j
                  g d¢d¬«      «       y )Nc                 óä   •— |rd| j                   _         ‰| «      } ‰| «      }‰j                  ||«       ‰j                  |j                   j                  |j                   j                  «       y ©NF©r³  r´  r/  rL  ©r   Úset_readonlyr;  r<  r:  r7  r"  s       €€€r   r{  z?TestArrayMethods.test_np_asfortranarray_readonly.<locals>.checkø  óX   ø€ ÙØ&+�—	‘	Ô#Ù˜c“{ˆHÙ˜“*ˆCØ×#Ñ# H¨cÔ2Ø×Ñ˜SŸY™Y×0Ñ0°(·.±.×2JÑ2JÕKr   rn  ©rå   rn  F©r  r)  rä   r”   rå   rp  ÚFr®  ÚC©r)  rn  rä   r”   rå   ©T)rO   r   r   Úbroadcast_tor–  r[  ©r"  r{  r:  r7  s   ` @@r   Útest_np_asfortranarray_readonlyz0TestArrayMethods.test_np_asfortranarray_readonlyó  s•   ú€ ä"ˆÜ�V“ˆ÷	Lñ 	Œb�o‰oœbŸh™h q›k¨6Ó2ÀÕGáŒb�h‰h˜˜A˜  A ¨¨A¨Ð/°sÔ;Ô<áŒb�h‰h˜˜A˜  A ¨¨A¨Ð/°sÔ;Ô<áŒb�h‰h’¨cÔ2Õ3r   c                 ó‚   — | j                  t        «       | j                  t        «       | j	                  t        «       y r   )rÁ  rR   rþ  rO   rü  r?  s    r   Útest_np_ascontiguousarrayz*TestArrayMethods.test_np_ascontiguousarray	  s/   € Ø×(Ñ(Ô)=Ô>Ø×ÑÔ.Ô/Ø×+Ñ+Ô,@ÕAr   c                 óˆ  ‡ ‡‡— t         Št        ‰«      Šdˆˆˆ fd„	} |t        j                  t        j                  d«      d«      j
                  d¬«        |t        j                  ddgddgd	d
ggd¬«      «        |t        j                  ddgddgd	d
ggd¬«      «        |t        j                  g d¢d¬«      «       y )Nc                 óä   •— |rd| j                   _         ‰| «      } ‰| «      }‰j                  ||«       ‰j                  |j                   j                  |j                   j                  «       y r  r  r  s       €€€r   r{  zBTestArrayMethods.test_np_ascontiguousarray_readonly.<locals>.check  r  r   rn  r  Fr	  r)  rä   r”   rå   rp  r  r®  r
  r  r  )rR   r   r   r  r–  rB   r[  r  s   ` @@r   Ú"test_np_ascontiguousarray_readonlyz3TestArrayMethods.test_np_ascontiguousarray_readonly  s›   ú€ ä%ˆÜ�V“ˆ÷	Lñ 	Œb�o‰oœbŸh™h q›k¨6Ó2×4Ñ4À5ÕIáŒb�h‰h˜˜A˜  A ¨¨A¨Ð/°sÔ;Ô<áŒb�h‰h˜˜A˜  A ¨¨A¨Ð/°sÔ;Ô<áŒb�h‰h’¨cÔ2Õ3r   c                 ó^   ‡ ‡‡— t        ‰«      Šˆˆˆ fd„} |d«        |d«        |d«       y )Nc                 óJ   •—  ‰| «      } ‰| «      }‰j                  ||«       y r   ©r/  )r¯   r;  r<  r:  r7  r"  s      €€€r   r{  z=TestArrayMethods.check_np_frombuffer_allocated.<locals>.check(  s%   ø€ Ù˜e“}ˆHÙ˜“,ˆCØ×#Ñ# C¨Õ2r   )r‘  r�  ©r)  r   r)  )r   )r"  r7  r{  r:  s   `` @r   Úcheck_np_frombuffer_allocatedz.TestArrayMethods.check_np_frombuffer_allocated$  s)   ú€ ä�V“ˆö	3ñ
 	ˆeŒÙˆfŒÙˆiÕr   c                 ó.   — | j                  t        «       y r   )r  r°   r?  s    r   Útest_np_frombuffer_allocatedz-TestArrayMethods.test_np_frombuffer_allocated1  s   € Ø×*Ñ*Ô+BÕCr   c                 ó.   — | j                  t        «       y r   )r  r²   r?  s    r   Útest_np_frombuffer_allocated2z.TestArrayMethods.test_np_frombuffer_allocated24  s   € Ø×*Ñ*Ô+HÕIr   c                 óÀ  ‡ ‡— d„ }ˆˆ fd„}t        j                  g d¢«      } ||«       t        j                  g d¢«      } ||«        |d«      } ||«        ||j                  d«      «        ||j                  d«      j                  «        ||j                  d«      d d d…   «        ||j                  d«      «        ||j                  d«      j                  «        ||j                  d«      d d d…   «       t        j
                  g d	¢«      } ||«       d
dt        d«      fD ]Ÿ  }t        j
                  |g«      j                  d«      }t        dk  r	 ||«       Œ:‰ j                  t        t        f«      5 } t        t        |«      f«      ‰«       d d d «       d}‰ j                  |t        j                  «      «       Œ¡ y # 1 sw Y   Œ3xY w)Nc                 ó´   — t         j                  j                  d«       t         j                  j                  | «      }d||dk  <   t        d«      ||dkD  <   |S ©Nr’  r4   g333333Ó?Únangffffffæ?©r   ÚrandomÚseedÚfloat©ÚNr   s     r   rä  z+TestArrayMethods.check_nonzero.<locals>.fac8  óI   € Ü�I‰I�N‰N˜2ÔÜ—)‘)×"Ñ" 1Ó%ˆCØ ˆC��c‘	‰NÜ" 5›\ˆC��c‘	‰NØˆJr   c                 óÀ   •—  t        t        | «      f«      ‰«      } ‰| «      }|D �cg c]  }|j                  «       ‘Œ }}‰j                   || «      |«       y c c}w r   )r   r   rI   r/  )r   r:  r;  rµ   r7  r"  s       €€r   râ  z1TestArrayMethods.check_nonzero.<locals>.check_arr?  sV   ø€ Ø(”Dœ& ›+˜Ó(¨Ó0ˆEÙ˜c“{ˆHÙ*2Ó3©( Q˜Ÿ™�¨(ˆHÐ3Ø×#Ñ#¡E¨#£J°Õ9ùò 4s   ©A©r)  r   rœ   r   r  rŒ  rŽ  rn  rã  )ÚHelloÚ Úworldr4   r&  r"  r‘   )rn  r)  zYCalling nonzero on 0d arrays is not allowed. Use np.atleast_1d(scalar).nonzero() instead.)r   r�  Úbool_r•  rB   r[  r&  r   rJ  rK  r	   r   r   r¶  rM  rN  )r"  r7  rä  râ  r   rÏ   rR  rj  s   ``      r   Úcheck_nonzerozTestArrayMethods.check_nonzero7  s|  ù€ ò	õ	:ô �h‰h’}Ó%ˆÙ�#ŒÜ�h‰h’yÓ!ˆÙ�#Œá�"‹gˆÙ�#ŒÙ�#—+‘+˜fÓ%Ô&Ù�#—+‘+˜fÓ%×'Ñ'Ô(Ù�#—+‘+˜fÓ%¡c¨ cÑ*Ô+Ù�#—+‘+˜iÓ(Ô)Ù�#—+‘+˜iÓ(×*Ñ*Ô+Ù�#—+‘+˜iÓ(©¨1¨Ñ-Ô.ä�h‰hÒ-Ó.ˆÙ�#Œà�sœE %›LÓ)ˆAÜ—(‘(˜A˜3“-×'Ñ'¨Ó+ˆCÜ˜vÒ%Ù˜#•à×&Ñ&¬
´KÐ'@ÔAÀVØ(”Dœ& ›+˜Ó(¨Ô0÷ BðA�à—‘˜c¤3 v×'7Ñ'7Ó#8Õ9ñ *÷
 BÐAús   ÆGÇG	c                 ó.   — | j                  t        «       y r   )r0  r¾   r?  s    r   Útest_array_nonzeroz#TestArrayMethods.test_array_nonzeroa  s   € Ø×Ñœ=Õ)r   c                 ó.   — | j                  t        «       y r   )r0  rÀ   r?  s    r   Útest_np_nonzeroz TestArrayMethods.test_np_nonzerod  ó   € Ø×Ñœ:Õ&r   c                 ó.   — | j                  t        «       y r   )r0  rÄ   r?  s    r   Útest_np_where_1z TestArrayMethods.test_np_where_1g  r5  r   c                 ó’  ‡ ‡‡‡	— t         Š	d„ }t        g d¢«      Št        j                  t        j                  t        j
                  t        j                  t        j                  t        j                  gŠt        j                  j                  d«       dˆˆˆ	ˆ fd„	}ˆˆ	ˆ fd„}t        j                  g d¢«      } ||«       t        j                  g d¢«      } ||«        |d«      } ||«        ||j                  d	«      «        ||j                  d	«      j                  «        ||j                  d	«      d d d
…   «        ||j                  d«      «        ||j                  d«      j                  «        ||j                  d«      d d d
…   «        ||j                  d«      d¬«        ||j                  d«      j                  d¬«        ||j                  d«      d d d
…   d¬«       ddt        d«      fD ]/  }t        j                   |g«      j                  d«      } ||«       Œ1 dD ]
  } ||«       Œ y )Nc                 ó´   — t         j                  j                  d«       t         j                  j                  | «      }d||dk  <   t        d«      ||dkD  <   |S r!  r#  r'  s     r   rä  z-TestArrayMethods.test_np_where_3.<locals>.facl  r)  r   ©r  r
  rU  r’  c                 ó^  •— t         j                  j                  ‰«       |dk7  rIt        j                  | ‰d   |¬«      }t        j                  | ‰d   |¬«      }| j	                  |¬«      } nHt        j                  | ‰d   t        ‰«      ¬«      }t        j                  | ‰d   t        ‰«      ¬«      }|j                  d«       |j                  d«        t        t        | «      t        |«      t        |«      f«      ‰	«      } ‰	| ||«      } || ||«      }‰
j                  ||«       y )NFr   )r9   r¯  r)  r®  r”   é	   )
r   r$  ÚshufflerE  rI   Únextr�   r   r   r/  )r   ÚlayoutrÆ   rÇ   r:  r;  r<  Ú_typesÚlayoutsr7  r"  s          €€€€r   râ  z3TestArrayMethods.test_np_where_3.<locals>.check_arry  sò   ø€ Ü�I‰I×Ñ˜fÔ%Ø˜ŠÜ—M‘M #¨V°A©Y¸fÔE�Ü—M‘M #¨V°A©Y¸fÔE�Ø—h‘h V�hÓ,‘ä—M‘M #¨V°A©Y¼dÀ7»mÔL�Ü—M‘M #¨V°A©Y¼dÀ7»mÔL�Ø�F‰F�1ŒIØ�F‰F�1ŒIØ=”Dœ& ›+¤v¨a£y´&¸³)Ð<Ó=¸fÓEˆEÙ˜c 1 aÓ(ˆHÙ˜˜Q Ó"ˆCØ×#Ñ# C¨Õ2r   c                 ó"  •— d}d}t         j                  j                  ‰«        ‰d   d«      } ‰d   d«      } t        t	        | «      t	        |«      t	        |«      f«      ‰«      } ‰| ||«      } || ||«      }‰j                  ||«       y )Nr”   rå   r   r)  )r   r$  r=  r   r   r/  )	ÚscalrÆ   rÇ   r:  r;  r<  r@  r7  r"  s	         €€€r   Ú
check_scalz4TestArrayMethods.test_np_where_3.<locals>.check_scal‰  s�   ø€ ØˆAØˆAÜ�I‰I×Ñ˜fÔ%Ø��q‘	˜!“ˆAØ��q‘	˜!“ˆAØ>”Dœ& ›,¬¨q«	´6¸!³9Ð=Ó>¸vÓFˆEÙ˜d A qÓ)ˆHÙ˜˜a Ó#ˆCØ×#Ñ# C¨Õ2r   r+  r  rŒ  rŽ  rn  rã  r
  )r?  r4   r&  r"  r‘   )r   r)  TFr'  y                ©F)rÈ   r   r   r­   r™  r•   r,  r¦   r-  r$  r%  r�  r/  r•  rB   r&  r[  )
r"  rä  râ  rD  r   rÏ   rÆ   r@  rA  r7  s
   `      @@@r   Útest_np_where_3z TestArrayMethods.test_np_where_3j  s¸  û€ Üˆò	ô šÓ(ˆÜ—(‘(œBŸH™H¤b§j¡j´"·*±*¼b¿l¹lÜ—-‘-ð!ˆô 	�	‰	�‰�rÔ÷	3ð 	3ö 		3ô �h‰h’}Ó%ˆÙ�#ŒÜ�h‰h’yÓ!ˆÙ�#Œá�"‹gˆÙ�#ŒÙ�#—+‘+˜fÓ%Ô&Ù�#—+‘+˜fÓ%×'Ñ'Ô(Ù�#—+‘+˜fÓ%¡c¨ cÑ*Ô+Ù�#—+‘+˜iÓ(Ô)Ù�#—+‘+˜iÓ(×*Ñ*Ô+Ù�#—+‘+˜iÓ(©¨1¨Ñ-Ô.á�#—+‘+˜iÓ(°Õ5Ù�#—+‘+˜iÓ(×*Ñ*°3Õ7Ù�#—+‘+˜iÓ(©¨1¨Ñ-°cÕ:à�sœE %›LÓ)ˆAÜ—(‘(˜A˜3“-×'Ñ'¨Ó+ˆCÙ�c�Nð *ó .ˆAÙ�q�Mñ .r   c                 óæ   ‡ ‡‡— t         Š t        d¬«      ‰«      Šˆˆˆ fd„}ˆ fd„} |«       D ]@  }|dkD  ddf} ||«       |dk  t        j                  df} ||«       |dkD  ddf} ||«       ŒB y )	NTre  c                 ó>   •—  ‰| Ž } ‰| Ž }‰j                  ||«       y r   r  )rÕ   r;  r<  r:  r7  r"  s      €€€r   Úcheck_okzGTestArrayMethods.test_np_where_3_broadcast_x_y_scalar.<locals>.check_ok±  s%   ø€ Ù˜t�}ˆHÙ˜�,ˆCØ×#Ñ# C¨Õ2r   c               3   ó  •K  — t        j                  ddd«      } ‰j                  j                  | «       | –— | j	                  ddd«      –— | j	                  ddd¬«      –— | j	                  ddd«      d d d…   –— y ­w)	Néþÿÿÿr”   é   rn  rå   r
  r®  rœ   )r   Úlinspacer$  r=  r•  )rµ   r"  s    €r   Úa_variationszKTestArrayMethods.test_np_where_3_broadcast_x_y_scalar.<locals>.a_variations¶  st   øè ø€ Ü—‘˜B  2Ó&ˆAØ�K‰K×Ñ Ô"ØŠGØ—)‘)˜A˜q !Ó$Ò$Ø—)‘)˜A˜q¨�)Ó,Ò,Ø—)‘)˜A˜q !Ó$¡T r TÑ*Ó*ùs   ƒA>Br   r)  y      ð?      @F)rÈ   r   r   r"  )r"  rI  rN  rµ   Úparamsr:  r7  s   `    @@r   Ú$test_np_where_3_broadcast_x_y_scalarz5TestArrayMethods.test_np_where_3_broadcast_x_y_scalar­  s|   ú€ ÜˆØ"”˜TÔ" 6Ó*ˆö	3ô
	+ñ –ˆAØ˜!‘e˜Q �]ˆFÙ�VÔà˜!‘eœRŸV™V VÐ,ˆFÙ�VÔà˜!‘e˜T 5Ð)ˆFÙ�VÕñ  r   c                 óÒ   ‡ ‡	‡
— t         Š
 t        d¬«      ‰
«      Š	ˆ	ˆ
ˆ fd„}d„ }d„ } |«       D ]5  } |«       D ])  }t        j                  |«      }||kD  }|||f} ||«       Œ+ Œ7 y )NTre  c                 óª   •— | \  }}} ‰|||«      } ‰|||«      }‰j                  ||«        ‰|||«      } ‰|||«      }‰j                  ||«       y r   r  )	rÕ   Ú	conditionrÆ   rÇ   r;  r<  r:  r7  r"  s	         €€€r   rI  zJTestArrayMethods.test_np_where_3_broadcast_x_or_y_scalar.<locals>.check_okÌ  sh   ø€ Ø"‰OˆI�q˜!á˜i¨¨AÓ.ˆHÙ˜	 1 aÓ(ˆCØ×#Ñ# C¨Ô2ñ ˜i¨¨AÓ.ˆHÙ˜	 1 aÓ(ˆCØ×#Ñ# C¨Õ2r   c               3   ó  K  — t        j                  d«      j                  dd«      } | –— | dz  –— t        j                  | «      –— | d d d…   –— t        j                  ddd«      j                  ddd	«      d
z  –— y ­w)Nr<  rä   gš™™™™™ñ?rœ   éöÿÿÿr*  é<   r”   rå   ù              ð?)r   rf   r•  rN   rM  r¾  s    r   Úarray_permutationszTTestArrayMethods.test_np_where_3_broadcast_x_or_y_scalar.<locals>.array_permutationsØ  ss   è ø€ Ü—	‘	˜!“×$Ñ$ Q¨Ó*ˆAØŠGØ�c‘'ŠMÜ×#Ñ# AÓ&Ò&Ø‘D�b�D‘'ŠMÜ—+‘+˜c 2 rÓ*×2Ñ2°1°a¸Ó;¸bÑ@Ó@ùs   ‚B Bc               3   óP   K  — d–— d–— t         j                  –— d–— d–— y ­w)Nr   g333333@Ty       @      @)r   r"  r‘   r   r   Úscalar_permutationszUTestArrayMethods.test_np_where_3_broadcast_x_or_y_scalar.<locals>.scalar_permutationsà  s#   è ø€ ØŠGØŠIÜ—&‘&ŠLØŠJØ‹Lùs   ‚$&)rÈ   r   r   Úmean)r"  rI  rX  rZ  rÆ   rÇ   Úx_meanrS  rO  r:  r7  s   `        @@r   Ú'test_np_where_3_broadcast_x_or_y_scalarz8TestArrayMethods.test_np_where_3_broadcast_x_or_y_scalarÈ  so   ú€ ÜˆØ"”˜TÔ" 6Ó*ˆö
	3ò	Aò	ñ $Ö%ˆAÙ(Ö*�ÜŸ™ ›�Ø ™J�	Ø# Q¨Ð*�Ù˜Õ ñ	 +ñ &r   c                 ól  — t         } t        d¬«      |«      }t        t        j                  t        j
                  t        j                  t        j                  t        j                  g}|D �]Ä  }t        j                  dt        ¬«      }t        j                  j                   || |d«       |d«      «       |d«      «       t        j                  j                   ||  |d«       |d«      «       |d«      «       t        j                  j                   |d |d«       |d«      «       |d«      «       t        j                  j                   |d |d«       |d«      «       |d«      «       t        j                  |«      j                  |«      }t        j                  |«      }|j                  |«      }d|d<   |d   |d<   t        j                  j                   ||||«      |«       t        j                  j                   ||||«      |«       t        j                  j                   ||||d   «      |«       t        j                  j                   |||d   |«      |«       t        j                  j                   ||d d d	…   |d d d	…   |d d d	…   «      |d d d	…   «       t        j                  j                   ||dd d	…   |dd d	…   |dd d	…   «      |dd d	…   «       t        j                  j                   ||d d d
…   |d d d
…   |d d d
…   «      |d d d
…   «       t        j                  j                   ||dd d
…   |dd d
…   |dd d
…   «      |dd d
…   «       t        j                  j                   ||d d d…   |d d d…   |d d d…   «      |d d d…   «       t        j                  j                   ||d d d…   |d d d…   |d d d…   «      |d d d…   «       t        j                  j                   ||dd d…   |dd d…   |dd d…   «      |dd d…   «       �ŒÇ y )NTre  é5   r~   r   r)  Fé   rn  rä   rK  éýÿÿÿ)rÈ   r   Úboolr   r�  r­   r™  Údoubler-  r¬   rH  Úassert_equalÚ	ones_liker™   rE  )	r"  r7  r:  Údtsr·  r2   ræ   rç   Úrs	            r   Útest_np_where_numpy_basicz*TestArrayMethods.test_np_where_numpy_basicî  s†  € äˆØ"”˜TÔ" 6Ó*ˆô ”R—X‘XœrŸx™x¬¯©´2·9±9¼b¿m¹mÐLˆÜˆBÜ—‘˜¤$Ô'ˆAÜ�J‰J×#Ñ#¡E¨1©b°«e±R¸³UÓ$;¹RÀ»UÔCÜ�J‰J×#Ñ#¡E¨1¨"©b°«e±R¸³UÓ$;¹RÀ»UÔCÜ�J‰J×#Ñ#¡E¨$±°1³±r¸!³uÓ$=¹rÀ!»uÔEÜ�J‰J×#Ñ#¡E¨%±°A³¹¸1»Ó$>ÁÀ1ÃÔFÜ—‘˜Q“×&Ñ& rÓ*ˆAÜ—‘˜aÓ ˆAØ—‘˜“ˆAØˆAˆa‰DØ�Q‘4ˆAˆa‰DÜ�J‰J×#Ñ#¡E¨!¨Q°£N°AÔ6Ü�J‰J×#Ñ#¡E¨!¨Q°£N°AÔ6Ü�J‰J×#Ñ#¡E¨!¨Q°°!±Ó$5°qÔ9Ü�J‰J×#Ñ#¡E¨!¨Q¨q©T°1Ó$5°qÔ9Ü�J‰J×#Ñ#¡E¨!©C¨a¨C©&°!±C°a°C±&¸!¹C¸a¸C¹&Ó$AÀ1ÁSÀqÀSÁ6ÔJÜ�J‰J×#Ñ#¡E¨!¨A¨D¨q¨D©'°1°Q°T¸°T±7¸A¸a¸dÀ¸d¹GÓ$DÀaÈÈÈ1ÈÁgÔNÜ�J‰J×#Ñ#¡E¨!©C¨a¨C©&°!±C°a°C±&¸!¹C¸a¸C¹&Ó$AÀ1ÁSÀqÀSÁ6ÔJÜ�J‰J×#Ñ#¡E¨!¨A¨D¨q¨D©'°1°Q°T¸°T±7¸A¸a¸dÀ¸d¹GÓ$DÀaÈÈÈ1ÈÁgÔNÜ�J‰J×#Ñ#¡E¨!©D¨b¨D©'°1±T°r°T±7¸A¹dÀ¸d¹GÓ$DÀaÉÈ"ÈÁgÔNÜ�J‰J×#Ñ#¡E¨!©D¨b¨D©'°1±T°r°T±7¸A¹dÀ¸d¹GÓ$DÀaÉÈ"ÈÁgÔNÜ�J‰J×#Ñ#¡E¨!¨A¨E¨r¨E©(°A°a°e¸°e±H¸aÀÀÀ2À¹hÓ$GÈÈ1È5ÈbÈ5ÉÖRñ+ r   c                 óˆ  — t         } t        d¬«      |«      }ddg}t        j                  d«      }t        j                  d«      } |t        j
                  |«      d d …t        j                  f   ||«      }t        j                  j                  |d   |d   «       t        j                  j                  |d   |d   «       |j                  }|j                  } ||||«      }t        j                  j                  |d d …df   |d d …df   «       t        j                  j                  |d d …df   |d d …df   «       y )NTre  F)rn  é   r   r)  )
rÈ   r   r   r–  r¬   r[  ÚnewaxisrH  Úassert_array_equalrB   )r"  r7  r:  r2   rµ   r£   rg  s          r   Útest_np_where_numpy_ndimz)TestArrayMethods.test_np_where_numpy_ndim  sÿ   € äˆØ"”˜TÔ" 6Ó*ˆà�5ˆMˆÜ�H‰H�WÓˆÜ�G‰G�GÓˆÙ”"—(‘(˜1“+ša¤§
¡
˜lÑ+¨Q°Ó2ˆÜ
�
‰
×%Ñ% a¨¡d¨A¨a©DÔ1Ü
�
‰
×%Ñ% a¨¡d¨A¨a©DÔ1à�C‰CˆØ�C‰CˆÙ�!�Q˜‹NˆÜ
�
‰
×%Ñ% aª¨!¨¡f¨a²°!°©fÔ5Ü
�
‰
×%Ñ% aª¨!¨¡f¨a²°!°©fÕ5r   c                 óB  — t         } t        d¬«      |«      }t        j                  g d¢«      }t        j                  d«      }t        j                  g d¢t        j
                  ¬«      }t        j                  g d¢t        j
                  ¬«      }t        j                  j                   ||||«      |«       |j                  t        j                  «      }|j                  t        j                  «      }t        j                  j                   ||||«      |«       |j                  t        «      }d||d	k7  <   t        j                  j                   ||||«      |«       |d	k7  }d
||d	k(  <   d	||<   t        j                  j                   ||||«      |«       y )NTre  )FTFFFFTFFFTFr)  )ç      @r4   ró  rò  ç      ð¿ç      Àr4   ç      $Àç      $@rñ  r4   ró  r~   )ro  rñ  ró  rò  rp  rq  rñ  rr  rs  rñ  rñ  ró  i
r   iìau)rÈ   r   r   r[  r˜  r,  rH  rd  r™   r•   r™  r+  )r"  r7  r:  r2   rµ   r£   rg  Útmpmasks           r   Útest_np_where_numpy_dtype_mixz.TestArrayMethods.test_np_where_numpy_dtype_mix  s7  € äˆØ"”˜TÔ" 6Ó*ˆä�H‰Hò 0ó 1ˆä�I‰I�a‹LˆÜ�H‰HÒJÜŸJ™Jô(ˆä�H‰HÒJÜŸ:™:ô'ˆä
�
‰
×Ñ¡ a¨¨A£°Ô2à�H‰H”R—Z‘ZÓ ˆØ�H‰H”R—X‘XÓˆÜ
�
‰
×Ñ¡ a¨¨A£°Ô2ð �H‰H”S‹MˆØˆˆ!ˆq‰&‰	Ü
�
‰
×Ñ¡ a¨¨A£°Ô2à�q‘&ˆØˆˆ!ˆq‰&‰	Øˆˆ'‰
Ü
�
‰
×Ñ¡ a¨¨A£°Õ2r   c                 óŠ  — t         } t        d¬«      |«      }ddg}t        j                  d«      }t        j                  d«      }| j	                  «        | j                  t        d«      5   ||||«       d d d «       | j                  t        d«      5   ||d   ||«       d d d «       y # 1 sw Y   Œ6xY w# 1 sw Y   y xY w)NTre  )r”   rå   )rå   rå   zobjects cannot be broadcastr   )rÈ   r   r   r¬   r\  rh  rK  )r"  r7  r:  r2   rµ   r£   s         r   Útest_np_where_numpy_test_errorz/TestArrayMethods.test_np_where_numpy_test_error;  s©   € äˆØ"”˜TÔ" 6Ó*ˆà�4ˆLˆÜ�G‰G�F‹OˆÜ�G‰G�F‹Oˆà×ÑÔ!Ø×#Ñ#¤JÐ0MÕNÙ�!�Q˜ŒN÷ Oð ×#Ñ#¤JÐ0MÕNÙ�!�A‘$˜˜1Ô÷ OÐN÷ OÐNú÷ OÐNús   Á-B-ÂB9Â-B6Â9Cc                 óì  — t         } t        d¬«      |«      }d}| j                  t        |«      5   |d dd«       d d d «       d}| j                  t        |«      5   |ddd«       d d d «       d	}| j                  t        |«      5   |ddd
«       d d d «       d}| j                  t        |«      5   |dd d «       d d d «       y # 1 sw Y   Œ‹xY w# 1 sw Y   ŒlxY w# 1 sw Y   ŒMxY w# 1 sw Y   y xY w)NTre  z+The argument "condition" must be array-likern  rä   z/The argument "x" must be array-like if providedr)  rô  z/The argument "y" must be array-like if providedr.  z"Argument "x" or "y" cannot be None)rÈ   r   rh  r	   ri  s       r   Útest_np_where_invalid_inputsz-TestArrayMethods.test_np_where_invalid_inputsK  sß   € ÜˆØ"”˜TÔ" 6Ó*ˆà;ˆØ×#Ñ#¤K°Õ5Ù�$˜˜1Ô÷ 6ð @ˆØ×#Ñ#¤K°Õ5Ù�!�W˜aÔ ÷ 6ð @ˆØ×#Ñ#¤K°Õ5Ù�!�Q˜Ô ÷ 6ð 3ˆØ×#Ñ#¤K°Õ5Ù�!�T˜4Ô ÷ 6Ð5÷ 6Ð5ú÷ 6Ð5ú÷ 6Ð5ú÷
 6Ð5ús/   ±CÁCÂCÂ2C*ÃCÃCÃC'Ã*C3c                 ó  ‡‡— t         d„ d„ f}|D ]o  Š t        d¬«      ‰«      Šˆˆfd„} |d«        |d«        |d«        |d	«        |d
«        |t        dd«      «        |t        j                  d«      «       Œq y )Nc                 ó.   — t        j                  | d«      S )Nr*  re   r¾  s    r   r¿  z4TestArrayMethods.test_arange_1_arg.<locals>.<lambda>d  s   € ”b—i‘i  2Ô&r   c           	      óV   — t        j                  dt        dt        | «      «      ¬«      S )Nr`  r)  ry   )r   rf   Úmaxr5   r¾  s    r   r¿  z4TestArrayMethods.test_arange_1_arg.<locals>.<lambda>e  s   € ”b—i‘i ¬¨A¬s°1«v«Õ7r   Tre  c                 óf   •—  ‰| «      } ‰| «      }t         j                  j                  ||«       y r   ©r   rH  rI  )rg   r;  r<  r:  r7  s      €€r   rI  z4TestArrayMethods.test_arange_1_arg.<locals>.check_okk  s)   ø€ Ù! $›<�Ù˜D“k�Ü—
‘
×*Ñ*¨8°SÕ9r   r   r)  r”   g      @ra  )rh   r   r?   r   r”  )r"  Úall_pyfuncsrI  r:  r7  s      @@r   Útest_arange_1_argz"TestArrayMethods.test_arange_1_arg`  sz   ù€ ô Ù&Ù7ð
ˆó "ˆFØ&”C Ô& vÓ.ˆEõ:ñ
 �QŒKÙ�QŒKÙ�QŒKÙ�SŒMÙ�RŒLÙ”W˜Q “]Ô#Ù”R—W‘W˜Q“ZÕ ñ "r   c                 óò  — d„ }t         t        t        t        d„ d„ f}|D ]“  } t	        d¬«      |«      } |dd||«        |dd||«        |d	d
||«        |d
d	||«        |dd ||«       t
        dk  sŒV |t        dd«      t        d	d	«      ||«        |t        d	d	«      t        dd«      ||«       Œ• t        } t	        d¬«      |«      } |dt        j                  ||«        |dt        j                  ||«        |dd ||«        |t        j                  d«      d ||«       t
        dk  rF |dt        j                  ||«        |t        j                  d«      t        j                  ||«       y y )Nc                 óh   —  || |«      } || |«      }t         j                  j                  ||«       y r   r  )rg   rj   r7  r:  r;  r<  s         r   rI  z4TestArrayMethods.test_arange_2_arg.<locals>.check_oky  s.   € Ù˜d DÓ)ˆHÙ˜˜dÓ#ˆCÜ�J‰J×&Ñ& x°Õ5r   c                 ó0   — t        j                  | |d«      S )Nrå   re   ©rÆ   rÇ   s     r   r¿  z4TestArrayMethods.test_arange_2_arg.<locals>.<lambda>ƒ  s   € œŸ™ 1 a¨Ô+r   c                 ó2   — t        j                  d|| ¬«      S )Nrn  ry   re   r…  s     r   r¿  z4TestArrayMethods.test_arange_2_arg.<locals>.<lambda>„  s   € œŸ™ 1 a¨aÕ0r   Tre  rœ   rå   éøÿÿÿr”   ç      à?rä   rm  r)  rò  r`  r   r*  )rk   r†   ru   r{   r   r   r?   r   r   r•   r­   r”  r-  r¦   )r"  rI  r€  r7  r:  s        r   Útest_arange_2_argz"TestArrayMethods.test_arange_2_argx  s[  € ò	6ô Ü ÜÜÙ+Ù0ð
ˆó "ˆFØ&”C Ô& vÓ.ˆEá�R˜˜F EÔ*Ù�R˜˜V UÔ+Ù�Q˜˜V UÔ+Ù�S˜!˜V UÔ+Ù�Q˜˜f eÔ,Ü˜vÓ%Ùœ  A›¬°°1«°v¸uÔEÙœ  A›¬°°1«°v¸uÕEð "ô #ˆØ"”˜TÔ" 6Ó*ˆá�”B—J‘J ¨Ô.Ù�”b—h‘h ¨Ô.Ù��D˜& %Ô(Ù”—‘˜“˜T 6¨5Ô1ä˜6Ò!Ù�RœŸ™¨°Ô6Ù”R—\‘\ "Ó%¤r§}¡}°f¸eÕDð "r   c           	      óR  ‡ ‡— t         j                  j                  d«      xr t         j                  dkD  Šdˆ ˆfd„	}t        t
        t        fD �]y  } t        d¬«      |«      } |ddd||«        |d	d
d||«        |ddd||«        |ddd||«        |ddd||«        |ddd ||«        |dd d ||«        |t        j                  d«      t        j                  d«      t        j                  d«      ||«        |t        j                  d«      t        j                  d«      t        j                  d«      ||«       t        j                  } | |d«       |d«       |d«      ||d«        |t        j                  d«       |d«       |d«      ||d«       t        dk  s�ŒZ |dt        dd«      t        dd«      ||«       �Œ| t        } t        d¬«      |«      } |ddt        j                   ||«        |ddt        j                  ||«        |ddd ||«        |t        j                  d«      t        j                  d«      d ||d«       t        dk  rH |ddt        j"                  ||«        |dt        j$                  d«      t        j"                  ||«       y y )NÚwin32l        c                 óÀ   •—  || ||«      } || ||«      }t         j                  j                  ||«       ‰	s'‰j                  |j                  |j                  «       y y r   )r   rH  rI  rL  r9   )
rg   rj   rm   r7  r:  Úcheck_dtyper;  r<  r"  Ú	windows64s
           €€r   rI  z4TestArrayMethods.test_arange_3_arg.<locals>.check_ok¢  sU   ø€ Ù˜d D¨$Ó/ˆHÙ˜˜d DÓ)ˆCÜ�J‰J×&Ñ& x°Ô5ñ Ø× Ñ  §¡°·±Õ;ð r   Tre  r   rå   r)  r‡  rœ   rä   rU  rK  rˆ  r”   rn  çš™™™™™¹?rp  rm  rò  r�  r`  r*  rE  )rÅ  ÚplatformÚ
startswithÚmaxsizern   r�   r‰   r   r   r”  r�  r­   r™  r   r?   rƒ   r•   r-  r¦   )r"  rI  r7  r:  Úi8rŽ  s   `    @r   Útest_arange_3_argz"TestArrayMethods.test_arange_3_argŸ  s.  ù€ Ü—L‘L×+Ñ+¨GÓ4ÒN¼¿¹ÀwÑ9Nˆ	ö	<ô #Ô$4Ô6OÔPˆFØ&”C Ô& vÓ.ˆEá�Q˜˜1˜f eÔ,Ù�R˜˜Q ¨Ô.Ù�Q˜˜R ¨Ô/Ù�S˜!˜Q ¨Ô.Ù�Q˜˜3 ¨Ô.Ù�Q˜˜4 ¨Ô/Ù�Q˜˜d F¨EÔ2Ù”R—W‘W˜Q“Z¤§¡¨£¬R¯W©W°Q«Z¸ÀÔGÙ”R—W‘W˜Q“Z¤§¡¨!£¬b¯h©h°q«k¸6À5ÔIä—‘ˆBÙ‘R˜“U™B˜q›E¡2 a£5¨&°%¸Ô>Ù”R—X‘X˜a“[¡" Q£%©¨A«°¸¸tÔDÜ˜vÔ%Ù˜œG A q›M¬7°1°a«=¸&À%ÖHð# Qô& #ˆØ"”˜TÔ" 6Ó*ˆá��A”r—z‘z 6¨5Ô1Ù��aœŸ™ 6¨5Ô1Ù��A�t˜V UÔ+Ù”—‘˜“œRŸX™X a›[¨$°¸¸tÔDÜ˜6Ò!Ù�R˜œRŸ]™]¨F°EÔ:Ù�QœŸ™ RÓ(¬"¯-©-¸ÀÕGð "r   c           	      óÒ  ‡‡— t         t        fD ]Ö  Š t        d¬«      ‰«      Šˆˆfd„} |dddt        j                  «        |ddd	t        j
                  «        |dd
dt        j                  «        |dddd «        |d	dd d «        |d	d d d «       t        dk  sŒ‘ |dddt        j                  «        |dt        dd«      t        dd«      t        j                  «       ŒØ y )NTre  c                 ór   •—  ‰| |||«      } ‰| |||«      }t         j                  j                  ||«       y r   r  )rg   rj   rm   rp   r;  r<  r:  r7  s         €€r   rI  z4TestArrayMethods.test_arange_4_arg.<locals>.check_okÎ  s7   ø€ Ù! $¨¨d°DÓ9�Ù˜D $¨¨dÓ3�Ü—
‘
×*Ñ*¨8°SÕ9r   r   rå   r)  r‡  rœ   rä   rU  rK  rˆ  r”   rn  rp  rm  r�  )
rq   r‹   r   r   r,  r­   r•   r   r-  r?   )r"  rI  r:  r7  s     @@r   Útest_arange_4_argz"TestArrayMethods.test_arange_4_argÊ  sÄ   ù€ Ü"Ô$CÓDˆFØ&”C Ô& vÓ.ˆEõ:ñ
 �Q˜˜1œbŸj™jÔ)Ù�R˜˜Q¤§¡Ô)Ù�Q˜˜R¤§¡Ô,Ù�S˜!˜Q Ô%Ù�Q˜˜4 Ô&Ù�Q˜˜d DÔ)Ü˜vÓ%Ù˜˜A˜s¤B§M¡MÔ2Ù˜œG A q›M¬7°1°a«=¼"¿-¹-ÕHñ! Er   c           	      ó&  — | j                  «        d„ d„ d„ g}d„ d„ g}|D ]:  }| j                  t        «      5 } t        d¬«      |«      } |d«       d d d «       Œ< |D ];  }| j                  t        «      5 } t        d¬«      |«      } |dd	«       d d d «       Œ= t        } t        d¬«      |«      }||fD ]£  }d
t        j                  d«      dfdfD ]„  }t        t        f}| j                  |«      5 }t        j                  «       5  t        j                  d«        ||Ž  d d d «       | j                  dt        |j                  «      «       d d d «       Œ† Œ¥ y # 1 sw Y   �ŒJxY w# 1 sw Y   �ŒxY w# 1 sw Y   ŒUxY w# 1 sw Y   Œ¹xY w)Nc                 ó.   — t        j                  | ¬«      S rs   re   r¾  s    r   r¿  z5TestArrayMethods.test_arange_throws.<locals>.<lambda>â  ó   € ”b—i‘i QÕ'r   c                 ó.   — t        j                  | ¬«      S rx   re   r¾  s    r   r¿  z5TestArrayMethods.test_arange_throws.<locals>.<lambda>ã  rš  r   c                 ó.   — t        j                  | ¬«      S r}   re   r¾  s    r   r¿  z5TestArrayMethods.test_arange_throws.<locals>.<lambda>ä  s   € ”b—i‘i aÕ(r   c                 ó0   — t        j                  | |¬«      S rˆ   re   r…  s     r   r¿  z5TestArrayMethods.test_arange_throws.<locals>.<lambda>ç  s   € œŸ™¨°Õ2r   c                 ó0   — t        j                  | |¬«      S )N)rt   r9   re   r…  s     r   r¿  z5TestArrayMethods.test_arange_throws.<locals>.<lambda>è  s   € œŸ™¨°Õ3r   Tre  rn  rp  r)  r   )r)  rn  r   ÚignorezMaximum allowed size exceeded)r\  rJ  r	   r   rn   r   r�  ÚZeroDivisionErrorrK  ÚwarningsÚcatch_warningsÚsimplefilterr¶  rM  rN  )	r"  Úbad_funcs_1Úbad_funcs_2r7  rR  r:  ÚfÚinputsÚpermitted_errorss	            r   Útest_arange_throwsz#TestArrayMethods.test_arange_throwsÝ  s}  € à×ÑÔ!ñ (Ù'Ù(ð
ˆñ 3Ù3ð
ˆó
 "ˆFØ×"Ñ"¤;Ô/°6Ø*œ TÔ*¨6Ó2�Ù�a”÷ 0Ð/ð "ó "ˆFØ×"Ñ"¤;Ô/°6Ø*œ TÔ*¨6Ó2�Ù�a˜”÷ 0Ð/ð "ô ˆØ"”˜TÔ" 6Ó*ˆØ˜%Ó!ˆAØœrŸx™x¨›{¨AÐ.°	Ó:�ô %6´zÐ#BÐ Ø×&Ñ&Ð'7Ô8¸Fä!×0Ñ0Õ2Ü ×-Ñ-¨hÔ7Ù˜6™
÷ 3ð —M‘MÐ"AÜ # F×$4Ñ$4Ó 5ô7÷ 9Ð8ñ	 ;ñ "÷ 0Ñ/ú÷ 0Ñ/ú÷ 3Ð2ú÷ 9Ð8ús;   ¹E!Á8E.Ã7FÄE;	Ä'-FÅ!E+	Å.E8	Å;FÆ FÆFc                 óz   — t        d¬«      d„ «       }d}| j                   ||«      |j                  |«      «       y )NTre  c                 ó6   — t        j                  dd| z   | «      S )Nr   r)  re   ry   s    r   r²  z2TestArrayMethods.test_arange_accuracy.<locals>.foo  s   € ä—9‘9˜Q  D¡¨$Ó/Ð/r   g[¿R Ö¯„?)r   r/  rs  )r"  r²  rÆ   s      r   Útest_arange_accuracyz%TestArrayMethods.test_arange_accuracy  s>   € ô 
�dÔ	ñ	0ó 
ð	0ð !ˆØ×Ñ¡ A£¨¯©°A«Õ7r   c                 óø  ‡ ‡‡— t         Š t        d¬«      ‰«      Šˆˆˆ fd„}ˆˆ fd„}‰ j                  «         |t        j                  dg«      «        |t        j
                  dgg«      «        |t        j                  d«      «        |t        j                  d«      «        |t        j                  d«      «        |t        j                  ddg«      «        |t        j                  g «      «       y )	NTre  c                 óJ   •—  ‰| «      } ‰| «      }‰j                  ||«       y r   r  )r6   r;  r<  r:  r7  r"  s      €€€r   rI  z,TestArrayMethods.test_item.<locals>.check_ok  s%   ø€ Ù˜c“{ˆHÙ˜“*ˆCØ×#Ñ# C¨Õ2r   c                 ó´   •— ‰j                  t        «      5 } ‰| «       d d d «       ‰j                  dt        j                  «      «       y # 1 sw Y   Œ/xY w)Nz>item(): can only convert an array of size 1 to a Python scalar©rJ  rK  r¶  rM  rN  )r6   rR  r:  r"  s     €€r   r}  z-TestArrayMethods.test_item.<locals>.check_err  sE   ø€ Ø×"Ñ"¤:Ô.°&Ù�c”
÷ /à�M‰MÐZÜ˜f×.Ñ.Ó/õ1÷ /Ð.ús   —	AÁAr&  ù              ø?r)  rn  )rË   r   r\  r   r•   r-  r[  r/  ©r"  rI  r}  r:  r7  s   `  @@r   Ú	test_itemzTestArrayMethods.test_item  s°   ú€ ÜˆØ"”˜TÔ" 6Ó*ˆö	3õ
	1ð 	×ÑÔ!ñ 	”—‘˜S˜EÓ"Ô#Ù”—‘  ˜xÓ(Ô)Ù”—‘˜#“ÔÙ”—‘˜$“Ô Ù”—‘˜C“Ô!á”"—(‘(˜A˜q˜6Ó"Ô#Ù”"—(‘(˜2“,Õr   c                 ó’  ‡ ‡‡— t         Š t        d¬«      ‰«      Šˆˆˆ fd„}ˆˆ fd„}‰ j                  «         |t        j                  dg«      d«        |t        j
                  dgg«      d«        |t        j                  d«      d«        |t        j                  dd	g«      «        |t        j                  g «      «       y )
NTre  c                 óŽ   •— | j                  «       }| j                  «       } ‰||«        ‰||«       ‰j                  ||«       y r   )rI   r/  )rµ   rÏ   r;  r<  r:  r7  r"  s       €€€r   rI  z/TestArrayMethods.test_itemset.<locals>.check_ok/  s<   ø€ Ø—v‘v“xˆHØ—&‘&“(ˆCÙ�8˜QÔÙ�#�qŒMØ×#Ñ# C¨Õ2r   c                 ó¶   •— ‰j                  t        «      5 } ‰| d«       d d d «       ‰j                  dt        j                  «      «       y # 1 sw Y   Œ/xY w)Nr’  z/itemset(): can only write to an array of size 1r°  )rµ   rR  r:  r"  s     €€r   r}  z0TestArrayMethods.test_itemset.<locals>.check_err6  sG   ø€ Ø×"Ñ"¤:Ô.°&Ù�a˜”÷ /à�M‰MÐKÜ˜f×.Ñ.Ó/õ1÷ /Ð.úr~  r&  r’  r±  r)  rn  )rÐ   r   r\  r   r•   r-  r[  r²  s   `  @@r   Útest_itemsetzTestArrayMethods.test_itemset*  s–   ú€ äˆØ"”˜TÔ" 6Ó*ˆö	3õ	1ð 	×ÑÔ!ñ 	”—‘˜S˜EÓ" BÔ'Ù”—‘  ˜xÓ(¨"Ô-Ù”—‘˜#“ Ô#á”"—(‘(˜A˜q˜6Ó"Ô#Ù”"—(‘(˜2“,Õr   c           	      óf  — t         } t        d¬«      |«      }t        j                  t        j                  t        j
                  t        j                  t        j                  t        j                  t        j                  g}|D �cg c]F  }t        j                  d|«      t        j                  d|«      t        j                  d|«      dz  g‘ŒH }}t        j                  t        j                  t        j                  g}|D �cg c].  }t        j                  d|«      t        j                  d|«      g‘Œ0 }}|D ]Z  }|D ]S  }| j                  dj                  |j                   «      «      5  | j#                   ||«       ||«      «       ddd«       ŒU Œ\ yc c}w c c}w # 1 sw Y   ŒlxY w)	zK test sum over a whole range of dtypes, no axis or dtype parameter
        Tre  ©r`  rp  rå   r”   rä   r)  ©r`  rä   éûÿÿÿzTest np.sum with {} input N)rÖ   r   r   r,  r•   r™  r­   r¦   r-  Útimedelta64r¬   r˜  r—  r/  ÚsubTestÚformatr9   r/  )	r"  r7  r:  Ú
all_dtypesÚ	arr_dtypeÚall_test_arraysÚunsigned_dtypesÚarr_listr   s	            r   Útest_sumzTestArrayMethods.test_sumG  sh  € ô ˆØ"”˜TÔ" 6Ó*ˆÜ—j‘j¤"§*¡*¬b¯h©h¼¿¹Ü—l‘l¤B§M¡M´2·>±>ðCˆ
ñ (ó	)ñ (�	ô �W‰W�_ iÓ0Ü�W‰W�Q˜	Ó"Ü�W‰W�V˜YÓ'¨"Ñ,ò.ð (ð	 	ð )ô Ÿ9™9¤b§i¡i´·±Ð:ˆñ -ó.ñ -�	ô �W‰W�_ iÓ0Ü�W‰W�Q˜	Ó"ò$à,ð 	ð .ó
 (ˆHÛ�Ø—\‘\Ð">×"EÑ"EÀcÇiÁiÓ"PÕQØ×+Ñ+©F°3«K¹¸s»ÔD÷ RÐQñ  ñ (ùò)ùò.÷ RÐQús   ÂAFÄ3F"Å1F'Æ'F0c                 ól  — t         } t        d¬«      |«      }t        j                  t        j                  t        j
                  t        j                  t        j                  t        g}|D �cg c]F  }t        j                  d|«      t        j                  d|«      t        j                  d|«      dz  g‘ŒH }}t        j                  t        j                  g}||D �cg c].  }t        j                  d|«      t        j                  d|«      g‘Œ0 c}z  }|D ]�  }|D ]z  }dD ]s  }	|	t        |j                  «      dz
  kD  rŒ| j                  dj                  |j                   «      «      5  | j#                   |||	¬	«       |||	¬	«      «       d
d
d
«       Œu Œ| Œƒ y
c c}w c c}w # 1 sw Y   ŒŽxY w)z< test sum with axis parameter over a whole range of dtypes  Tre  r¹  r)  rº  r»  ©r   r)  rn  ú#Testing np.sum(axis) with {} input ra   N)rÙ   r   r   r,  r•   r™  r¦   r-  ÚTIMEDELTA_Mr¬   r—  r/  Úlenr¯   r½  r¾  r9   r/  )
r"  r7  r:  r¿  rÀ  rÁ  rÂ  rÃ  r   rb   s
             r   Útest_sum_axis_kws1z#TestArrayMethods.test_sum_axis_kws1_  s�  € ä#ˆØ"”˜TÔ" 6Ó*ˆÜ—j‘j¤"§*¡*¬b¯h©h¼¿¹Ü—m‘m¤[ð2ˆ
ñ (ó	)ñ (�	ô �W‰W�_ iÓ0Ü�W‰W�Q˜	Ó"Ü�W‰W�V˜YÓ'¨"Ñ,ò.ð (ð	 	ð )ô Ÿ9™9¤b§h¡hÐ/ˆØñ -ó.ñ -�	ô �W‰W�_ iÓ0Ü�W‰W�Q˜	Ó"ò$à,ñ.ñ 	.ˆó
 (ˆHÛ�Û%�DØœc #§)¡)›n¨QÑ.Ò.Ø ØŸ™ð '/ß/5©v°c·i±iÓ/@õBà×/Ñ/±°sÀÔ0FÙ05°cÀÔ0EôG÷Bð Bñ &ñ  ñ (ùò)ùò.÷Bð Bús   Á/AF Ã!3F%Å.#F*	Æ*F3c                 óÔ  — t         } t        d¬«      |«      }t        j                  g}t        j                  d«      t        j
                  t        j                  d«      t        j                  t        j                  d«      t        j
                  t        j                  t        «      t        j                  t        «      i}|D �cg c]F  }t        j                  d|«      t        j                  d|«      t        j                  d|«      d	z  g‘ŒH }}t        j                  g}||D �cg c].  }t        j                  d|«      t        j                  d|«      g‘Œ0 c}z  }|D ]ê  }|D ]ã  }	d
D ]Ü  }
|
t        |	j                  «      dz
  kD  rŒ| j                  dj                  |	j                  «      «      5   ||	|
¬«      } ||	|
¬«      }t        |t        j                  «      rK| j!                  |j#                  ||	j                     «      |j#                  ||	j                     «      «       n| j%                  ||«       ddd«       ŒÞ Œå Œì yc c}w c c}w # 1 sw Y   Œ÷xY w)a�    testing uint32 and int32 separately

        uint32 and int32 must be tested separately because Numpy's current
        behaviour is different in 64bits Windows (accumulates as int32)
        and 64bits Linux (accumulates as int64), while Numba has decided to always
        accumulate as int64, when the OS is 64bits. No testing has been done
        for behaviours in 32 bits platforms.
        Tre  r­   r˜  r™  r¹  r)  rº  r»  rÆ  rÇ  ra   N)rÙ   r   r   r­   r9   r™  r—  rÈ  r¬   r˜  rÉ  r¯   r½  r¾  r>   Úndarrayr/  r™   rL  )r"  r7  r:  r¿  Ú
out_dtypesrÀ  rÁ  rÂ  rÃ  r   rb   Únpy_resÚ	numba_ress                r   Útest_sum_axis_kws2z#TestArrayMethods.test_sum_axis_kws2{  s  € ô $ˆØ"”˜TÔ" 6Ó*ˆÜ—h‘h�Zˆ
ä—h‘h˜wÓ'¬¯©´2·8±8¸HÓ3EÄrÇyÁyÜ—h‘h˜wÓ'¬¯©Ü—h‘hœ{Ó+¬R¯X©X´kÓ-BðDˆ
ñ (ó	)ñ (�	ô �W‰W�_ iÓ0Ü�W‰W�Q˜	Ó"Ü�W‰W�V˜YÓ'¨"Ñ,ò.ð (ð	 	ð )ô Ÿ9™9˜+ˆØñ -ó.ñ -�	ô �W‰W�_ iÓ0Ü�W‰W�Q˜	Ó"ò$à,ñ.ñ 	.ˆó
 (ˆHÛ�Û%�DØœc #§)¡)›n¨QÑ.Ò.Ø ØŸ™ð '/ß/5©v°c·i±iÓ/@õBá"(¨°4Ô"8˜Ù$)¨#°DÔ$9˜	Ü% i´·±Ô<Ø ×3Ñ3Ø '§¡¨z¸#¿)¹)Ñ/DÓ EØ )× 0Ñ 0°¸C¿I¹IÑ1FÓ GõIð
 !×,Ñ,¨W°iÔ@÷Bð Bñ &ñ  ñ (ùò)ùò.÷Bð Bús   Ã	AIÄ,3IÆ9BI	ÉI'c                 ó®  — t         } t        d¬«      |«      }t        j                  t        j                  t        j
                  t        j                  t        j                  t        j                  g}|D �cg c]F  }t        j                  d|«      t        j                  d|«      t        j                  d|«      dz  g‘ŒH }}t        j                  t        j                  t        j                  g}|D �cg c].  }t        j                  d|«      t        j                  d|«      g‘Œ0 }}t        j                  d«      t        j                  gt        j                  d«      t        j                  t        j                  gt        j                  d	«      t        j                  t        j
                  t        j                  gt        j                  d
«      t        j                  t        j
                  t        j                  t        j                  gt        j                  d«      t        j                  t        j
                  t        j                  gt        j                  d«      t        j                  t        j
                  gt        j                  d«      t        j                  t        j
                  t        j                  t        j                  t        j                  gt        j                  d«      t        j                  t        j                  gt        j                  d«      t        j                  gi	}|D ]u  }|D ]n  }	||	j                     D ]Z  }
dj                  |	j                  |
«      }| j                  |«      5  | j!                   ||	|
¬«       ||	|
¬«      «       ddd«       Œ\ Œp Œw yc c}w c c}w # 1 sw Y   ŒuxY w)z< test sum with dtype parameter over a whole range of dtypes Tre  r¹  r)  rº  r»  r,  r•   r™  r­   r˜  r—  rb  r¦   r-  z*Testing np.sum with {} input and {} outputr~   N)rÛ   r   r   r,  r•   r™  r­   r¦   r-  r¬   r˜  r—  r/  r9   r¾  r½  r/  )r"  r7  r:  r¿  rÀ  rÁ  rÂ  rÍ  rÃ  r   Ú	out_dtypeÚsubtest_strs               r   Útest_sum_dtype_kwsz#TestArrayMethods.test_sum_dtype_kws¨  s�  € ä$ˆØ"”˜TÔ" 6Ó*ˆÜ—j‘j¤"§*¡*¬b¯h©h¼¿¹Ü—l‘l¤B§M¡Mð3ˆ
ñ (ó	)ñ (�	ô �W‰W�_ iÓ0Ü�W‰W�Q˜	Ó"Ü�W‰W�V˜YÓ'¨"Ñ,ò.ð (ð	 	ð )ô Ÿ9™9¤b§i¡i´·±Ð:ˆñ -ó.ñ -�	ô �W‰W�_ iÓ0Ü�W‰W�Q˜	Ó"ò$à,ð 	ð .ô
 —h‘h˜yÓ)¬B¯J©J¨<Ü—h‘h˜yÓ)¬B¯J©J¼¿
¹
Ð+CÜ—h‘h˜wÓ'¬"¯*©*´b·h±hÄÇ
Á
Ð)KÜ—h‘h˜wÓ'¬"¯*©*´b·h±hÄÇ
Á
ÌBÏHÉHÐ)UÜ—h‘h˜xÓ(¬2¯:©:´r·x±xÄÇÁÐ*LÜ—h‘h˜xÓ(¬2¯:©:´r·x±xÐ*@Ü—h‘h˜vÓ&¬¯©´R·X±X¼r¿z¹zÌ2Ï8É8ÔUW×U]ÑU]Ð(^Ü—h‘h˜{Ó+¬b¯l©l¼B¿M¹MÐ-JÜ—h‘h˜|Ó,¬r¯}©}¨oð?ˆ
ó (ˆHÛ�Ø!+¨C¯I©IÔ!6�IØ#Oß$*¡F¨3¯9©9°iÓ$@ð  àŸ™ kÕ2Ø ×3Ñ3±F¸3ÀiÔ4PÙ49¸#ÀYÔ4OôQ÷ 3Ð2ñ "7ñ  ñ (ùò-)ùò.÷( 3Ð2ús   Á9AOÃ93OÎ#O	ÏOc                 ó   — t         } t        d¬«      |«      }t        j                  t        j                  t        j
                  t        j                  t        j                  t        j                  g}|D �cg c]F  }t        j                  d|«      t        j                  d|«      t        j                  d|«      dz  g‘ŒH }}t        j                  t        j                  t        j                  g}|D �cg c].  }t        j                  d|«      t        j                  d|«      g‘Œ0 }}t        j                  d«      t        j                  gt        j                  d«      t        j                  t        j                  gt        j                  d	«      t        j                  t        j
                  t        j                  gt        j                  d
«      t        j                  t        j
                  t        j                  t        j                  gt        j                  d«      t        j                  t        j
                  t        j                  gt        j                  d«      t        j                  t        j                  gt        j                  d«      t        j                  t        j
                  t        j                  t        j                  t        j                  gt        j                  d«      t        j                  t        j                  gt        j                  d«      t        j                  gi	}|D ]ž  }|D ]—  }	||	j                     D ]ƒ  }
dD ]|  }|t        |	j                  «      dz
  kD  rŒdj!                  |	j                  |
«      }| j#                  |«      5   ||	||
¬«      } ||	||
¬«      }| j%                  ||«       ddd«       Œ~ Œ… Œ™ Œ  yc c}w c c}w # 1 sw Y   Œ™xY w)zF test sum with axis and dtype parameters over a whole range of dtypes Tre  r¹  r)  rº  r»  r,  r•   r™  r­   r˜  r—  rb  r¦   r-  rÆ  z+Testing np.sum with {} input and {} output rÝ   N)rÞ   r   r   r,  r•   r™  r­   r¦   r-  r¬   r˜  r—  r/  r9   rÉ  r¯   r¾  r½  r/  )r"  r7  r:  r¿  rÀ  rÁ  rÂ  rÍ  rÃ  r   rÒ  rb   rÓ  Úpy_resÚnb_ress                  r   Útest_sum_axis_dtype_kwsz(TestArrayMethods.test_sum_axis_dtype_kwsÍ  sÉ  € ä)ˆØ"”˜TÔ" 6Ó*ˆÜ—j‘j¤"§*¡*¬b¯h©h¼¿¹Ü—l‘l¤B§M¡Mð3ˆ
ñ (ó	)ñ (�	ô �W‰W�_ iÓ0Ü�W‰W�Q˜	Ó"Ü�W‰W�V˜YÓ'¨"Ñ,ò.ð (ð	 	ð )ô Ÿ9™9¤b§i¡i´·±Ð:ˆñ -ó.ñ -�	ô �W‰W�_ iÓ0Ü�W‰W�Q˜	Ó"ò$à,ð 	ð .ô
 —h‘h˜yÓ)¬B¯J©J¨<Ü—h‘h˜yÓ)¬B¯J©J¼¿
¹
Ð+CÜ—h‘h˜wÓ'¬"¯*©*´b·h±hÄÇ
Á
Ð)KÜ—h‘h˜wÓ'¬"¯*©*´b·h±hÄÇ
Á
ÌBÏHÉHÐ)UÜ—h‘h˜xÓ(¬2¯:©:´r·x±xÄÇÁÐ*LÜ—h‘h˜xÓ(¬2¯:©:´r·y±yÐ*AÜ—h‘h˜vÓ&¬¯©´R·X±X¼r¿z¹zÌ2Ï8É8ÔUW×U]ÑU]Ð(^Ü—h‘h˜{Ó+¬b¯l©l¼B¿M¹MÐ-JÜ—h‘h˜|Ó,¬r¯}©}¨oð?ˆ
ó (ˆHÛ�Ø!+¨C¯I©IÔ!6�IÛ )˜Ø¤# c§i¡i£.°1Ñ"4Ò4Ø$Ø'Tß(.©¨s¯y©y¸)Ó(Dð $à!Ÿ\™\¨+Õ6Ù%+¨C°dÀ)Ô%L˜FÙ%*¨3°TÀÔ%K˜FØ ×3Ñ3°F¸FÔC÷ 7Ð6ñ !*ñ "7ñ  ñ (ùò-)ùò.÷. 7Ð6ús   Á9AO*Ã93O/Î0)O4Ï4O=c                 ó  — t         } t        d¬«      |«      }t        j                  }t        j                  d«      }| j                   ||d|«       ||d|«      «       | j                   ||d|«       ||d|«      «       y)zC testing that axis and dtype inputs work when passed as positional Tre  r¹  r)  rn  N)râ   r   r   r,  r¬   r/  )r"  r7  r:  r9   rµ   s        r   Útest_sum_axis_dtype_pos_argz,TestArrayMethods.test_sum_axis_dtype_pos_argö  s{   € ä)ˆØ"”˜TÔ" 6Ó*ˆÜ—
‘
ˆä�G‰G�OÓ$ˆØ×Ñ¡ q¨!¨UÓ 3Ù % a¨!¨UÓ 3ô	5ð 	×Ñ¡ q¨!¨UÓ 3Ù % a¨¨EÓ 2õ	4r   c                 ó@  — t         } t        d¬«      |«      }t        j                  d«      }| j	                   ||d¬«       ||d¬«      «       t
        } t        d¬«      |«      }t        j                  d«      }| j	                   ||d¬«       ||d¬«      «       y )NTre  rs  r   ra   rœ   )rÙ   r   r   rf   r/  rê   ©r"  r7  r:  rµ   s       r   Útest_sum_1d_kwsz TestArrayMethods.test_sum_1d_kws  s„   € ä#ˆØ"”˜TÔ" 6Ó*ˆÜ�I‰I�c‹NˆØ×Ñ¡ q¨qÔ 1±5¸ÀÔ3CÔDÜ-ˆØ"”˜TÔ" 6Ó*ˆÜ�I‰I�c‹NˆØ×Ñ¡ q¨rÔ 2±E¸!À"Ô4EÕFr   c                 óæ   — t         } t        d¬«      |«      }t        j                  d«      }d}| j	                   |||«       |||«      «       d}| j	                   |||«       |||«      «       y )NTre  )rä   r”   rå   rp  r`  r�  r)  rn  )rè   r   r   r¬   r/  )r"  r7  r:  r   rb   s        r   Útest_sum_constzTestArrayMethods.test_sum_const  sm   € Ü&ˆØ"”˜TÔ" 6Ó*ˆä�g‰gÐ(Ó)ˆØˆØ×Ñ¡ s¨DÓ 1±5¸¸dÓ3CÔDØˆØ×Ñ¡ s¨DÓ 1±5¸¸dÓ3CÕDr   c                 óÚ  — | j                  «        t        } t        d¬«      |«      }t        j                  d«      }t        j                  d«      }| j                  t        «      5   ||d«       d d d «       | j                  t        «      5   ||d«       d d d «       | j                  t        «      5   ||d«       d d d «       y # 1 sw Y   ŒXxY w# 1 sw Y   Œ=xY w# 1 sw Y   y xY w)NTre  r¹  ©r”   rä   rn  rœ   r”   )r\  rÖ   r   r   r¬   rJ  rK  ©r"  r7  r:  rµ   r£   s        r   Útest_sum_exceptionsz$TestArrayMethods.test_sum_exceptions  sµ   € à×ÑÔ!ÜˆØ"”˜TÔ" 6Ó*ˆä�G‰G�OÓ$ˆÜ�G‰G�F‹Oˆà×ÑœzÕ*Ù�!�QŒK÷ +ð ×ÑœzÕ*Ù�!�RŒL÷ +ð ×ÑœzÕ*Ù�!�QŒK÷ +Ð*÷ +Ð*ú÷ +Ð*ú÷ +Ð*ús$   Á(
C	Â
CÂ6
C!Ã	CÃCÃ!C*c                 óÔ  — | j                  «        t        d¬«      d„ «       }t        j                  d«      }| j	                   ||«      |j                  |«      «       t        j                  d«      }| j	                   ||«      |j                  |«      «       t        j                  d«      }| j                  t        «      5 } ||«       d d d «       d}| j                  |t        j                  «      «       | j                  t        «      5 }|j                  |«       d d d «       | j                  dt        |j                  «      «       y # 1 sw Y   Œ…xY w# 1 sw Y   Œ;xY w)	NTre  c                 ó&   — | j                  d¬«      S )Nra  ra   rÒ   rC   s    r   r²  z5TestArrayMethods.test_sum_const_negative.<locals>.foo.  s   € à—7‘7 �7Ó#Ð#r   )r)  rn  rä   r”   rð  )r)  rn  z"'axis' entry (-1) is out of boundszout of bounds)r\  r   r   r¬   r/  rs  rJ  r
   r¶  rM  rN  rK  )r"  r²  rµ   rR  Úerrmsgs        r   Útest_sum_const_negativez(TestArrayMethods.test_sum_const_negative*  s  € à×ÑÔ!ä	�dÔ	ñ	$ó 
ð	$ô �G‰G�LÓ!ˆØ×Ñ¡ A£¨¯©°A«Ô7ä�G‰G�IÓˆØ×Ñ¡ A£¨¯©°A«Ô7ä�G‰G�F‹OˆØ×ÑœÔ/°6Ù�ŒF÷ 0à5ˆØ�‰�fœc &×"2Ñ"2Ó3Ô4Ø×ÑœzÔ*¨fØ�K‰K˜ŒN÷ +à�‰�o¤s¨6×+;Ñ+;Ó'<Õ=÷ 0Ð/ú÷ +Ð*ús   Ã	EÄEÅEÅE'c                 ó˜  — t         } t        d¬«      |«      }t        j                  d«      }| j	                   ||«       ||«      «       | j                  t        «      5   ||d«       d d d «       t        } t        d¬«      |«      }| j                  t        «      5   ||d¬«       d d d «       y # 1 sw Y   ŒJxY w# 1 sw Y   y xY w)NTre  )rn  rä   r)  ra   )rî   r   r   r¬   r/  rJ  r	   rð   rÜ  s       r   Útest_cumsumzTestArrayMethods.test_cumsumB  s£   € ÜˆØ"”˜TÔ" 6Ó*ˆä�G‰G�F‹OˆØ×Ñ¡ q£	©5°«8Ô4à×Ñœ{Õ+Ù�!�QŒK÷ ,ô "ˆØ"”˜TÔ" 6Ó*ˆØ×Ñœ{Õ+Ù�!˜!Õ÷ ,Ð+÷ ,Ð+ú÷
 ,Ð+ús   Á!
B4Â C Â4B=Ã C	c                 ó®  ‡ ‡
‡— t         Š t        d¬«      ‰«      Š
ˆ
ˆˆ fd„}g }|j                  d«       |j                  d«       |j                  d«       |j                  d«       |j                  t        j                  g d¢«      «       |j                  t        j                  g d	¢g d
¢gd¬«      «       |j                  t        j                  g d	¢g d
¢gg«      «       |j                  t        j                  ddggddggddgggg«      «       |j                  g d¢«       |j                  d	«       |j                  d«       |j                  d«       t        g d¢«      }t        j                  t        j                  t        j                  fD ]C  }t        j                  d|¬«      j                  dt        |«      ¬«      }|D ]  } |||«       Œ ŒE t        j                  d¬«      j                  dt        |«      ¬«      }|j                  }|| dz
  t        j                  |«      t        j                  | dz
  «      |g| dz
  gg}|D ])  }	‰ j                  t        «      5   ‰
||	«       d d d «       Œ+ ‰ j                  t        «      5   ‰
|dg«       d d d «       ‰ j!                  «        y # 1 sw Y   ŒnxY w# 1 sw Y   Œ&xY w)NTre  c                 ó¸   •—  ‰| |«      } ‰| |«      }‰j                  ||«       t        |d«      r)‰j                  |j                  |j                  k(  «       y y )Nr¯  )r/  ÚhasattrrL  r¯  )r   Úindr;  r<  r:  r7  r"  s       €€€r   r{  z)TestArrayMethods.test_take.<locals>.checkU  sT   ø€ Ù˜c 3Ó'ˆHÙ˜˜S“/ˆCØ×#Ñ# H¨cÔ2Ü�x Ô)Ø× Ñ  §¡°3·9±9Ñ!<Õ=ð *r   r)  rå   é   rK  )r)  rå   r)  rî  rä   ©r)  rå   r)  )rî  rä   r   r
  r®  r   rn  )rï  )rî  rä   rn  ))©r)  )rå   rð  ))rî  )rä   )rn  r:  rË  r~   rá  ç333333û?)r^   r   rq  r   r[  r   r,  r™  r-  rf   r•  r>  ÚsizerJ  Ú
IndexErrorr	   r\  )r"  r{  Útest_indicesrA  r·  rU  rí  ÚszAÚillegal_indicesrÆ   r:  r7  s   `         @@r   Ú	test_takezTestArrayMethods.test_takeQ  sR  ú€ ÜˆØ"”˜TÔ" 6Ó*ˆö	>ð ˆØ×Ñ˜AÔØ×Ñ˜AÔØ×Ñ˜BÔØ×Ñ˜BÔØ×ÑœBŸH™HÒ%5Ó6Ô7Ø×ÑœBŸH™H¢i²Ð%<ÀCÔHÔIØ×ÑœBŸH™H¢y²*Ð&=Ð%>Ó?Ô@Ø×ÑœBŸH™H¨¨A¨ x°2°q°'°¸aÀ¸V¸HÐ&EÐ%FÓGÔHØ×ÑÒ,Ô-Ø×Ñ˜IÔ&Ø×ÑÐ3Ô4Ø×ÑÐEÔFäšÓ(ˆä—:‘:œrŸx™x¬¯©Ó7ˆBÜ—	‘	˜" BÔ'×/Ñ/°¼dÀ7»mÐ/ÓLˆAÛ#�Ù�a˜•ñ $ð 8ô �I‰I�b Ô#×+Ñ+¨F¼$¸w»-Ð+ÓHˆØ�f‰fˆØ   q¡¬"¯(©(°3«-¼¿¹À3À$ÈÁ(Ó9KØ˜5 C 4¨!¡8 *ð.ˆã ˆAØ×"Ñ"¤:Õ.Ù�a˜”÷ /Ð.ð !ð
 ×Ñœ{Õ+Ù�!�c�UŒO÷ ,ð 	×ÑÕ!÷ /Ð.ú÷ ,Ð+ús   É2
J?ÊKÊ?K	ËKc                 ó€  ‡ ‡‡— t         Š t        d¬«      ‰«      Šˆˆˆ fd„}t        j                  d«      }t        j                  t        j
                  fD ]  } || |d«      «       Œ t        j                  d«      j                  dd«      }t        j                  t        j
                  fD ]  } || |d«      «       Œ t        j                  d	t        j                  ¬
«      j                  dddd«      }t        j                  t        j                  t        j
                  fD ]  } || |d«      «       Œ y )NTre  c                 óî   •— t        j                  | «      } ‰||«      }‰j                  |d u «       t        j                  | «      } ‰||«      }‰j                  |d u «       ‰j                  ||«       y r   )r   rI   Ú
assertTruer/  )	r   r!   r;  Úervr<  Úgrvr:  r7  r"  s	         €€€r   r{  z)TestArrayMethods.test_fill.<locals>.check‹  sd   ø€ Ü—w‘w˜s“|ˆHÙ˜ 3Ó'ˆCØ�O‰O˜C 4˜KÔ(Ü—'‘'˜#“,ˆCÙ˜˜S“/ˆCØ�O‰O˜C 4˜KÔ(à×#Ñ# H¨cÕ2r   r)  r*  rË  rä   r”   é0   r~   rn  )	rŽ   r   r   rf   r,  r/  r•  r¦   r-  )r"  r{  rU  rÆ   r:  r7  s   `   @@r   Ú	test_fillzTestArrayMethods.test_fillˆ  sâ   ú€ ÜˆØ"”˜TÔ" 6Ó*ˆö	3ô �I‰I�a‹LˆÜ—*‘*œbŸh™hÓ'ˆAÙ�!‘Q�r“U�Oð (ô �I‰I�b‹M×!Ñ! ! QÓ'ˆÜ—*‘*œbŸh™hÓ'ˆAÙ�!‘Q�r“U�Oð (ô �I‰I�b¤§¡Ô-×5Ñ5°a¸¸A¸qÓAˆÜ—*‘*œbŸm™m¬R¯X©XÓ6ˆAÙ�!‘Q�r“U�Oñ 7r   c                 óR  — t         } t        d¬«      |«      }t        j                  dd«      }t        j                  j                   ||«       ||«      «       t        j                  ||«      \  }}|d|z  z   }t        j                  j                   ||«       ||«      «       y ©NTre  rU  r*  rW  )rò   r   r   rM  rH  rd  Úmeshgrid©r"  r7  r:  rÆ   rÇ   Úzs         r   Ú	test_realzTestArrayMethods.test_real¤  ó�   € ÜˆØ"”˜TÔ" 6Ó*ˆä�K‰K˜˜RÓ ˆÜ
�
‰
×Ñ¡ q£	©5°«8Ô4ä�{‰{˜1˜aÓ ‰ˆˆ1Ø��1‘‰HˆÜ
�
‰
×Ñ¡ q£	©5°«8Õ4r   c                 óR  — t         } t        d¬«      |«      }t        j                  dd«      }t        j                  j                   ||«       ||«      «       t        j                  ||«      \  }}|d|z  z   }t        j                  j                   ||«       ||«      «       y r   )rõ   r   r   rM  rH  rd  r  r  s         r   Ú	test_imagzTestArrayMethods.test_imag¯  r  r   c                 ó�   ‡‡‡— ˆˆˆfd„}t         j                  j                   ||«        t        d¬«      |«      |«      «       y )Nc                 ó>   •— t        j                   ‰| ‰‰«      «      S r   )r   Úexpm1)rµ   rû   rú   rÙ  s    €€€r   Úlower_clip_resultzHTestArrayMethods._lower_clip_result_test_util.<locals>.lower_clip_result½  s   ø€ Ü—8‘8™D  E¨5Ó1Ó2Ð2r   Tre  )r   rH  Úassert_almost_equalr   )r"  rÙ  rµ   rú   rû   r  s    ` `` r   Ú_lower_clip_result_test_utilz-TestArrayMethods._lower_clip_result_test_utilº  s<   ú€ ö	3ô 	�
‰
×&Ñ&Ù˜aÓ Ø1ÐŒC˜ÔÐ0Ó1°!Ó4õ	6r   c                 óÈ  — t         t        t        t        f}t        t
        f}t        j                  ddd«      t        j                  ddd«      j                  ddd«      fD �]p  }||z   D �]d  } t        d¬	«      |«      }d
}| j                  t        |«      5   ||d d «       d d d «       t        j                  j                   ||dd «       ||dd «      «       t        j                  j                   ||d d«       ||d d«      «       t        j                  j                   ||dd«       ||dd«      «       ||v r|t        j                  |«      }t        j                  |«      }t        j                  j                   ||dd|«       ||dd|«      «       t        j                  j                  ||«       | j                  ||dd«       �Œg �Œs y # 1 sw Y   �Œ5xY w)NrU  r*  ée   é(   rå   rn  r”   Tre  ú&array_clip: must set either max or minr   r»  )rÿ   r  r  r  rü   r
  r   rM  r•  r   rh  rK  rH  rd  Ú
empty_liker  )	r"  Úhas_outÚ
has_no_outrµ   r7  r:  rj  rQ  Úcouts	            r   Ú	test_clipzTestArrayMethods.test_clipÄ  s“  € ÜœN¬JÔ8IÐJˆÜ$Ô&7Ð8ˆ
ä—+‘+˜c 2 sÓ+Ü—+‘+˜c 2 rÓ*×2Ñ2°1°a¸Ó;ô=ˆAà! JÕ.�Ø*œ TÔ*¨6Ó2�à>�Ø×+Ñ+¬J¸Õ<Ù˜!˜T 4Ô(÷ =ô —
‘
×'Ñ'©¨q°!°TÓ(:¹EÀ!ÀQÈÓ<MÔNÜ—
‘
×'Ñ'©¨q°$¸Ó(:¹EÀ!ÀTÈ1Ó<MÔNä—
‘
×'Ñ'©¨q°"°aÓ(8¹%ÀÀ2Àq»/ÔJà˜WÑ$ÜŸM™M¨!Ó,�EÜŸ=™=¨Ó+�DÜ—J‘J×+Ñ+©F°1°b¸!¸UÓ,CÙ,1°!°R¸¸DÓ,AôCä—J‘J×+Ñ+¨E°4Ô8à×1Ñ1°%¸¸BÀÖBò' /ñ=÷ =Ñ<ús   ÂGÇG!c                 ó  — t         t        t        t        f}t        t
        f}t        j                  ddd«      j                  ddd«      }t        j                  dd«      j                  |j                  «      j                  dd«      }t        j                  dd	«      j                  |j                  «      j                  dd«      }dd
|d g}dd|d g}||z   D �]  } t        d¬«      |«      }	|D ]ý  }
|D ]ö  }|
€.|€,d}| j                  t        |«      5   |	|d d «       d d d «       Œ3t        j                  j!                   |||
|«       |	||
|«      «       ||v r|t        j"                  |«      }t        j"                  |«      }t        j                  j!                   |||
||«       |	||
||«      «       t        j                  j!                  ||«       | j%                  |	||
|«       Œø Œÿ �Œ y # 1 sw Y   ŒÖxY w)NrU  r*  r  rå   rn  r”   r‡  r   r�  r»  Tre  r  )rÿ   r  r  r  rü   r
  r   rM  r•  rf   r™   r9   r   rh  rK  rH  rd  r  r  )r"  r  r  rµ   Ú	a_min_arrÚ	a_max_arrÚminsÚmaxsr7  r:  rú   rû   rj  rQ  r  s                  r   Útest_clip_array_min_maxz(TestArrayMethods.test_clip_array_min_maxß  sÂ  € ÜœN¬JÔ8IÐJˆÜ$Ô&7Ð8ˆ
ä�K‰K˜˜R Ó$×,Ñ,¨Q°°1Ó5ˆÜ—I‘I˜b !Ó$×+Ñ+¨A¯G©GÓ4×<Ñ<¸QÀÓBˆ	Ü—I‘I˜a “O×*Ñ*¨1¯7©7Ó3×;Ñ;¸A¸qÓAˆ	Ø�2�y $Ð'ˆØ�1�i Ð&ˆØ 
Õ*ˆFØ&”C Ô& vÓ.ˆEã�Û!�Eà�}¨¨ØF˜Ø!×3Ñ3´JÀÕDÙ! ! T¨4Ô0÷ Eà ä—J‘J×+Ñ+©F°1°e¸UÓ,CÁUÈ1ÈeÐUZÓE[Ô\à Ñ(Ü "§¡¨aÓ 0˜Ü!Ÿ}™}¨QÓ/˜ÜŸ
™
×/Ñ/±°q¸%ÀÈÓ0NÙ05°a¸ÀÀtÓ0LôNäŸ
™
×/Ñ/°°tÔ<à×5Ñ5°e¸QÀÀuÕMñ# "ò ñ +÷ EÐDús   ÄG6	Ç6G?c                 óž   —  t        d¬«      t        «      }d}| j                  t        |«      5   |d dd«       d d d «       y # 1 sw Y   y xY w)NTre  rg  r   r*  ©r   rÿ   rh  r	   ©r"  r:  rj  s      r   Útest_clip_bad_arrayz$TestArrayMethods.test_clip_bad_arrayÿ  s@   € Ø"”˜TÔ"¤7Ó+ˆØ7ˆØ×#Ñ#¤K°Õ5Ù�$˜˜2Ô÷ 6×5Ñ5úó   ¯AÁAc                 óž   —  t        d¬«      t        «      }d}| j                  t        |«      5   |ddd«       d d d «       y # 1 sw Y   y xY w)NTre  z).*The argument "a_min" must be a number.*r)  rµ   r*  r  r  s      r   Útest_clip_bad_minz"TestArrayMethods.test_clip_bad_min  s@   € Ø"”˜TÔ"¤7Ó+ˆØ9ˆØ×#Ñ#¤K°Õ5Ù�!�S˜"Ô÷ 6×5Ñ5úr!  c                 óž   —  t        d¬«      t        «      }d}| j                  t        |«      5   |ddd«       d d d «       y # 1 sw Y   y xY w)NTre  z).*The argument "a_max" must be a number.*r)  r£   r  r  s      r   Útest_clip_bad_maxz"TestArrayMethods.test_clip_bad_max  s@   € Ø"”˜TÔ"¤7Ó+ˆØ9ˆØ×#Ñ#¤K°Õ5Ù�!�Q˜Ô÷ 6×5Ñ5úr!  c                 ó¢   —  t        d¬«      t        «      }d}| j                  t        |«      5   |dddd¬«       d d d «       y # 1 sw Y   y xY w)	NTre  ro  rå   r)  r*  rp  r  r  r  s      r   Útest_clip_bad_outz"TestArrayMethods.test_clip_bad_out  sB   € Ø"”˜TÔ"¤7Ó+ˆØIˆØ×#Ñ#¤K°Õ5Ù�!�Q˜ Õ"÷ 6×5Ñ5ús   ¯AÁAc                 ó@  — | j                  «         t        d¬«      t        «      }d}t        j                  ddd«      j                  ddd	«      }t        j                  d
d«      j                  |j                  «      j                  dd«      }t        j                  dd«      j                  |j                  «      j                  dd«      }d|fd
|f||f|df|dfg}|D ].  \  }}| j                  t        |«      5   ||||«       d d d «       Œ0 y # 1 sw Y   Œ;xY w)NTre  zA.*shape mismatch: objects cannot be broadcast to a single shape.*rU  r*  r  rå   rn  r”   r»  r   r)  )r\  r   rÿ   r   rM  r•  rf   r™   r9   rh  rK  )	r"  r:  rj  rµ   r  r  Úmin_maxrú   rû   s	            r   Útest_clip_no_broadcastz'TestArrayMethods.test_clip_no_broadcast  s   € Ø×ÑÔ!Ø"”˜TÔ"¤7Ó+ˆØQˆÜ�K‰K˜˜R Ó$×,Ñ,¨Q°°1Ó5ˆÜ—I‘I˜b !Ó$×+Ñ+¨A¯G©GÓ4×<Ñ<¸QÀÓBˆ	Ü—I‘I˜a “O×*Ñ*¨1¯7©7Ó3×;Ñ;¸A¸qÓAˆ	Ø�y�> B¨	 ?Ø˜yÐ)Ø˜q�> I¨q >ð3ˆó $‰LˆE�5Ø×'Ñ'¬
°CÕ8Ù�a˜ Ô&÷ 9Ð8ñ $ß8Ð8ús   Ã>DÄD	c                 óh  — t         t        fD ]£  } t        d¬«      |«      }t        j                  dd«      }t        j
                  j                   ||«       ||«      «       t        j                  ||«      \  }}|d|z  z   }t        j
                  j                   ||«       ||«      «       Œ¥ y r   )r  r  r   r   rM  rH  rd  r  r  s         r   Ú	test_conjzTestArrayMethods.test_conj%  s‹   € Ü!¤?Ó3ˆFØ&”C Ô& vÓ.ˆEä—‘˜C Ó$ˆAÜ�J‰J×#Ñ#¡F¨1£I©u°Q«xÔ8ä—;‘;˜q !Ó$‰DˆAˆqØ�B�q‘D‘ˆAÜ�J‰J×#Ñ#¡F¨1£I©u°Q«xÕ8ñ 4r   c           
      óæ  ‡‡— t         Š t        d¬«      ‰«      Šˆˆfd„} |t        j                  g d¢g d¢g«      «        |t        j                  t        j                  d«      «      «        |t        j                  ddgdd	gd
dgg«      «        |t        j                  g «      «        |t        j                  t        j
                  t        j
                  g«      «        |t        j                  g d¢d¬«      «        |t        j                  t        j                  d«      t        j                  d«      t        j                  d«      t        j                  d«      g«      «       y )NTre  c                 ó^   •— t         j                  j                   ‰| «       ‰| «      «       y r   )r   rH  rd  )rµ   r:  r7  s    €€r   r{  z+TestArrayMethods.test_unique.<locals>.check4  s   ø€ Ü�J‰J×#Ñ#¡F¨1£I©u°Q«xÕ8r   )r)  r)  rä   )rä   r”   rå   rå   gÍÌÌÌÌÌ@rñ  gR¸…ëQ@gffffff
@)rU  rU  ÚBz<U16r~   z
2001-01-01z
2001-01-02ÚNAT)r  r   r   r[  r–  r"  Ú
datetime64r  s     @@r   Útest_uniquezTestArrayMethods.test_unique0  sû   ù€ ÜˆØ"”˜TÔ" 6Ó*ˆõ	9ñ 	Œb�h‰hš	¢9Ð-Ó.Ô/ÙŒb�h‰h”r—x‘x “{Ó#Ô$ÙŒb�h‰h˜˜c˜
 S¨$ K°#°s°Ð<Ó=Ô>ÙŒb�h‰h�r‹lÔÙŒb�h‰hœŸ™¤§¡Ð'Ó(Ô)ÙŒb�h‰h’¨fÔ5Ô6ÙŒb�h‰hœŸ™ lÓ3ÜŸ™ lÓ3ÜŸ™ lÓ3ÜŸ™ eÓ,ð.ó /õ 	0r   c                 óÚ  — t         } t        d¬«      |«      }t        j                  d«      j	                  dd«      }t        j                  d«      }t        j
                  j                   |||«       |||«      «       t        } t        d¬«      |«      }t        j                  d«      j	                  dd«      }t        j
                  j                   |||«       |||«      «       y )NTre  g      4@r”   rå   ro  g      0@)r  r   r   rf   r•  rH  rd  r  râ  s        r   Útest_array_dotzTestArrayMethods.test_array_dotB  s³   € ô ˆØ"”˜TÔ" 6Ó*ˆÜ�I‰I�c‹N×"Ñ" 1 aÓ(ˆÜ�I‰I�b‹MˆÜ
�
‰
×Ñ¡ q¨!£©e°A°q«kÔ:ô !ˆØ"”˜TÔ" 6Ó*ˆÜ�I‰I�c‹N×"Ñ" 1 aÓ(ˆÜ
�
‰
×Ñ¡ q¨!£©e°A°q«kÕ:r   c                 ó  — t         } t        d¬«      |«      }d}|t        j                  f}t        j                  j                   ||Ž  ||Ž «       |t        j                  d«      f}t        j                  j                   ||Ž  ||Ž «       |t        j                  f}t        j                  j                   ||Ž  ||Ž «       |t        j                  d«      f}t        j                  j                   ||Ž  ||Ž «       y )NTre  rn  r­   Úf4)r  r   r   r­   rH  rl  r9   r•   )r"  r7  r:  r  rÕ   s        r   Útest_array_ctor_with_dtype_argz/TestArrayMethods.test_array_ctor_with_dtype_argR  sÌ   € äˆØ"”˜TÔ" 6Ó*ˆØˆØ”"—(‘(ˆ{ˆÜ
�
‰
×%Ñ%¡f¨d m±U¸D°\ÔBØ”"—(‘(˜7Ó#Ð#ˆÜ
�
‰
×%Ñ%¡f¨d m±U¸D°\ÔBØ”"—*‘*ˆ}ˆÜ
�
‰
×%Ñ%¡f¨d m±U¸D°\ÔBØ”"—(‘(˜4“.Ð ˆÜ
�
‰
×%Ñ%¡f¨d m±U¸D°\ÕBr   c                 ó  — t        j                  dt         j                  ¬«      }d}t        ||j                  |¬«      }t        j
                  g d¢|j                  ¬«      }t         j                  j                  ||«       y )Nr�  r~   rn  ©r9   r    )rn  rä   r”   rå   rp  r`  ©r   rf   r¦  r¤   r9   r[  rH  rl  )r"  Úbufferr    Úresultr;  s        r   Útest_frombuffer_offsetz'TestArrayMethods.test_frombuffer_offset`  sV   € ä—‘˜1¤B§H¡HÔ-ˆØˆÜ˜v¨V¯\©\À&ÔIˆÜ—8‘8Ò.°f·l±lÔCˆÜ
�
‰
×%Ñ% f¨hÕ7r   c                 ó  — t        j                  dt         j                  ¬«      }d}t        ||j                  |¬«      }t        j
                  g d¢|j                  ¬«      }t         j                  j                  ||«       y )NrŒ  r~   r”   ©r9   rŸ   )r   r)  rn  rä   r:  )r"  r;  rŸ   r<  r;  s        r   Útest_frombuffer_countz&TestArrayMethods.test_frombuffer_counth  sU   € ä—‘˜2¤R§X¡XÔ.ˆØˆÜ˜v¨V¯\©\ÀÔGˆÜ—8‘8šL°·±Ô=ˆÜ
�
‰
×%Ñ% f¨hÕ7r   c                 ó  — t        j                  dt         j                  ¬«      }t        ||j                  d¬«      }t        j
                  g d¢|j                  ¬«      }t         j                  j                  ||«       y )Nr�  r~   rœ   r?  )r   r)  rn  rä   r”   rå   rp  r`  r:  )r"  r;  r<  r;  s       r   Ú(test_frombuffer_count_negative_means_allz9TestArrayMethods.test_frombuffer_count_negative_means_allp  sQ   € ä—‘˜1¤B§H¡HÔ-ˆÜ˜v¨V¯\©\ÀÔDˆÜ—8‘8Ò4¸F¿L¹LÔIˆÜ
�
‰
×%Ñ% f¨hÕ7r   c                 ó  — t        j                  dt         j                  ¬«      }d}d}t        ||j                  ||¬«      }t        j
                  g d¢|j                  ¬«      }t         j                  j                  ||«       y )NrŒ  r~   rn  rä   )r9   r    rŸ   rã  r:  )r"  r;  r    rŸ   r<  r;  s         r   Ú test_frombuffer_offset_and_countz1TestArrayMethods.test_frombuffer_offset_and_countw  s]   € ä—‘˜2¤R§X¡XÔ.ˆØˆØˆÜ˜v¨V¯\©\À&ÐPUÔVˆÜ—8‘8šI¨V¯\©\Ô:ˆÜ
�
‰
×%Ñ% f¨hÕ7r   c                 óô   — t        j                  dt         j                  ¬«      }t        |«      dz   }d}| j	                  t
        |«      5  t        ||j                  |¬«       d d d «       y # 1 sw Y   y xY w)NrŒ  r~   r)  z=offset must be non-negative and no greater than buffer lengthr9  )r   rf   r¦  rÉ  rh  rK  r¤   r9   )r"  r;  r    rj  s       r   Útest_frombuffer_invalid_offsetz/TestArrayMethods.test_frombuffer_invalid_offset€  sT   € ä—‘˜2¤R§X¡XÔ.ˆÜ�V“˜q‘ˆØMˆØ×#Ñ#¤J°Õ4Ü˜&¨¯©¸VÕD÷ 5×4Ñ4ús   ÁA.Á.A7c                 ó  — t        j                  dt         j                  ¬«      }t        |«      dz   }d}| j	                  t
        |«      5  t        j                  ||j                  |¬«       d d d «       y # 1 sw Y   y xY w)NrŒ  r~   r)  z%buffer is smaller than requested sizer?  )r   rf   r¦  rÉ  rh  rK  r¢   r9   )r"  r;  rŸ   rj  s       r   Útest_frombuffer_invalid_countz.TestArrayMethods.test_frombuffer_invalid_countˆ  sX   € ä—‘˜2¤R§X¡XÔ.ˆÜ�F“˜a‘ˆØ5ˆØ×#Ñ#¤J°Õ4Ü�M‰M˜&¨¯©¸EÕB÷ 5×4Ñ4ús   Á#A8Á8B)aÚ__name__Ú
__module__Ú__qualname__Ú__doc__r!  r=  r@  rB  r]  r_  ra  r   rc  rk  rt  r¤  rª  r¹  rÂ  rÐ  rÒ  rÔ  rÖ  rÛ  rÞ  r   rf   rÁ  ræ  rè  rê  rö  rø  rü  rþ  r   r  r  r  r  r  r  r0  r2  r4  r7  rF  rP  r]  rh  rm  ru  rw  ry  r�  r‰  r”  r—  r©  r¬  r³  r·  rÄ  rÊ  rÐ  rÔ  rØ  rÚ  rÝ  rß  rã  rç  ré  r÷  rþ  r  r  r  r  r  r   r#  r%  r'  r*  r,  r2  r   r4  r7  r=  r@  rB  rD  rF  rH  Ú__classcell__)r#  s   @r   r  r    s  ø„ ñô.ò7ò8AòCò("òT/ò0ð ñ0ó ð0òò#ò\"ò|&ò.-ò`
ò"0òH0ò6ò:ò#òð Ÿ)™)Ñ0Góò0:ò2ò5ò.ò(òò.ò
?ò
4ò,Bò
4ò,òDòJò(:òT*ò'ò'òAòFò6$!òLSò>6ò$3ò8ò !ò*!ò0%EòN)HòVIò&%7òN8ò ð8 ñ ó ð ò8Eò0Gò8+AòZ#QòJ'DòR4ò	GòEòò$>ò0ò5"ònò8	5ò	5ò6òCò6Nò@òòò#ò'ò	9ò0ð$ ñ;ó ð;òCò8ò8ò8ò8òEöCr   r  c                   ó   — e Zd Zd„ Zy)ÚTestArrayComparisonsc                 óZ  ‡ ‡— ˆˆ fd„}t         Št        j                  dt        j                  ¬«      j	                  d«      } |||d«        |||d d  d«        |||j                  «       d«        |||j                  d«      d«        |||j                  d«        |||d d d«       y )	Nc                 óˆ   •—  t        t        | «      t        |«      f«      ‰«      }‰j                   || |«      || f«       y r   rí  )rµ   r£   r;  r:  r7  r"  s       €€r   r{  z1TestArrayComparisons.test_identity.<locals>.check”  sA   ø€ Ø0”Dœ& ›)¤V¨A£YÐ/Ó0°Ó8ˆEØ×#Ñ#¡E¨!¨Q£KØ%-°8¨|Ð$<õ>r   r*  r~   )rn  rå   TFr˜  rœ   )r¶   r   r–  r­   r•  rI   rU   rB   )r"  r{  r   r7  s   `  @r   Útest_identityz"TestArrayComparisons.test_identity“  s“   ù€ õ	>ô
 "ˆä�h‰h�r¤§¡Ô*×2Ñ2°6Ó:ˆÙˆc�3˜ÔÙˆc�3‘q�6˜4Ô Ùˆc�3—8‘8“:˜uÔ%Ùˆc�3—8‘8˜HÓ% uÔ-Ùˆc�3—5‘5˜%Ô Ùˆc�3�s˜�8˜UÕ#r   N)rI  rJ  rK  rR  r‘   r   r   rO  rO  ‘  s   „ ó$r   rO  Ú__main__)r   N)rœ   r   r   )NNN)hÚ	itertoolsr   r   rÇ  rÅ  Úunittestr¡  Únumpyr   Únumbar   r   r   Ú
numba.corer   Únumba.core.errorsr	   r
   Únumba.np.numpy_supportr   r   Únumba.tests.supportr   r   r   r   r   rÈ  ÚTIMEDELTA_Yr   r"   r%   r)   r,   r.   r0   r;   rD   rG   rJ   rL   rO   rR   rX   r^   rc   rh   rk   rn   rq   ru   r{   r   r�   rƒ   r†   r‰   r‹   rŽ   r’   r–   r›   r,  r9   r¤   r¨   rª   r°   r²   r¶   rº   r¾   rÀ   rÄ   rÈ   rË   rÐ   rÖ   rÙ   rÛ   rÞ   râ   rè   rê   rî   rð   rò   rõ   rü   rÿ   r  r  r  r
  r  r  r  r  r  r  r  rO  rI  Úmainr‘   r   r   Ú<module>r^     sê  ðß $Û 	Û 
Û Û ã ç #Ñ #Ý ß :ß :÷7õ 7ð €Ø€ò"ò$òò!ò"ò#òóò4òòòò"ò%òòò(òò!ò'ò-ò&ò&ò(ò,ò.ò'ò2ò?òòò
(òð (*§z¡z¸ÀAñ E˜BŸH™Hó EóLóKòò2ò"òòòòòòòòòòò)òòòò
òòòò$ó)ó-ó%ó)ò òòòòòò#ôwC�¨ô wCôt3$˜8ô $ð* ˆzÒØ€H‡M�M…Oð r   