§
    ƒÛg¹û  ã                   ó´  — 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m	Z	m
Z
 d dl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 dlZd	Zd
Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d„ Z#d„ Z$dTd„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=d+„ Z>d,„ Z?d-„ Z@d.„ ZAd/„ ZBd0„ ZCd1„ ZDd2„ ZEd3„ ZFd4„ ZGd5„ ZHd6„ ZId7„ ZJd8„ ZKd9„ ZLd:„ ZMd;„ ZNd<„ ZOd=„ ZPd>„ ZQd?„ ZRd@„ ZSdA„ ZTdB„ ZUdC„ ZVdUdD„ZWdUdE„ZXdVdF„ZYdVdG„ZZdH„ Z[dI„ Z\dJ„ Z]dK„ Z^dL„ Z_dM„ Z`dN„ Za G dO„ dPee¦  «        Zb G dQ„ dRe¦  «        ZceddSk    r eje        ¦   «          dS dS )Wé    )ÚproductÚcycleN)ÚjitÚtypeof)Útypes)Úcompile_isolated)ÚTypingErrorÚNumbaValueError)Úas_dtypeÚnumpy_version)ÚTestCaseÚCompilationCacheÚMemoryLeakMixinÚtagÚ
needs_blasztimedelta64[M]ztimedelta64[Y]c                 ó2   — t          j        | ||¦  «         d S ©N©ÚnpÚaround©ÚarrÚdecimalsÚouts      úT/granary/edev/quantum/lib/python3.11/site-packages/numba/tests/test_array_methods.pyÚnp_around_arrayr      ó   € Ý„Iˆc�8˜SÑ!Ô!Ð!Ð!Ð!ó    c                 ó,   — t          j        | |¦  «        S r   r   ©Úvalr   s     r   Únp_around_binaryr"      s   € ÝŒ9�S˜(Ñ#Ô#Ð#r   c                 ó*   — t          j        | ¦  «        S r   r   ©r!   s    r   Únp_around_unaryr%      s   € ÝŒ9�S‰>Œ>Ðr   c                 ó2   — t          j        | ||¦  «         d S r   ©r   Úroundr   s      r   Únp_round_arrayr)      s   € Ý„HˆS�(˜CÑ Ô Ð Ð Ð r   c                 ó2   — t          j        | ||¦  «         d S 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�C˜Ñ"Ô"Ð"r   c                 ó*   — t          j        | ¦  «        S r   r'   r$   s    r   Únp_round_unaryr0   '   s   € ÝŒ8�C‰=Œ=Ðr   c                 óœ  — |�H| j         j        dk    r8t          | j        ||j        ¦  «         t          | j        ||j        ¦  «         |S t          j        | ||¦  «        }|€id„ }t          | t          t
          j	        f¦  «        r9t           || j        |j        ¦  «         || j        |j        ¦  «        ¦  «        }n || |¦  «        }|S )z4
    A slightly bugfixed version of np.round().
    NÚcc                 óH   — |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 3™Kœ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œ>¨SÒ0Ð0å˜œ (¨C¬HÑ5Ô5Ð5Ý˜œ (¨C¬HÑ5Ô5Ð5Øˆ
åŒh�s˜H cÑ*Ô*ˆØˆ;ðð ð õ
 ˜#¥­Ô);Ð<Ñ=Ô=ð 2ÝÐ/Ð/°´¸#¼(ÑCÔCØ/Ð/°´¸#¼(ÑCÔCñEô E��ð (Ð'¨¨SÑ1Ô1�Øˆ
r   c                 ó   — | j         S r   )ÚT©r   s    r   Úarray_TrD   D   s	   € ØŒ5€Lr   c                 ó*   — |                       ¦   «         S r   )Ú	transposerC   s    r   Úarray_transposerG   G   s   € Ø�=Š=‰?Œ?Ðr   c                 ó*   — |                       ¦   «         S r   ©ÚcopyrC   s    r   Ú
array_copyrK   J   s   € Ø�8Š8‰:Œ:Ðr   c                 ó*   — t          j        | ¦  «        S r   )r   rJ   rC   s    r   Únp_copyrM   M   s   € ÝŒ7�3‰<Œ<Ðr   c                 ó*   — t          j        | ¦  «        S r   )r   ÚasfortranarrayrC   s    r   Únp_asfortranarrayrP   P   s   € ÝÔ˜SÑ!Ô!Ð!r   c                 ó*   — t          j        | ¦  «        S r   )r   ÚascontiguousarrayrC   s    r   Únp_ascontiguousarrayrS   S   s   € ÝÔ Ñ$Ô$Ð$r   c                 ó,   — |                       |¦  «        S r   ©Úview©r   Únewtypes     r   Ú
array_viewrY   V   ó   € Ø�8Š8�GÑÔÐr   c                 ó,   — |                       |¦  «        S r   ©Útake)r   Úindicess     r   Ú
array_taker_   Y   rZ   r   c                 ó0   — |                       ||¬¦  «        S ©N©Úaxisr\   )r   r^   rc   s      r   Úarray_take_kwsrd   \   s   € Ø�8Š8�G $ˆ8Ñ'Ô'Ð'r   c                 ó*   — t          j        | ¦  «        S r   ©r   Úarange)Úarg0s    r   Únp_arange_1ri   _   s   € ÝŒ9�T‰?Œ?Ðr   c                 ó,   — t          j        | |¦  «        S r   rf   )rh   Úarg1s     r   Únp_arange_2rl   b   s   € ÝŒ9�T˜4Ñ Ô Ð r   c                 ó.   — t          j        | ||¦  «        S r   rf   )rh   rk   Úarg2s      r   Únp_arange_3ro   e   s   € ÝŒ9�T˜4 Ñ&Ô&Ð&r   c                 ó0   — t          j        | |||¦  «        S r   rf   )rh   rk   rn   Úarg3s       r   Únp_arange_4rr   h   s   € ÝŒ9�T˜4  tÑ,Ô,Ð,r   c                 ó.   — t          j        | |¬¦  «        S ©N)Ústoprf   )rh   ru   s     r   Únp_arange_1_stoprv   k   ó   € ÝŒ9�T Ð%Ñ%Ô%Ð%r   c                 ó.   — t          j        | |¬¦  «        S ©N©Ústeprf   )rh   r{   s     r   Únp_arange_1_stepr|   n   rw   r   c                 ó.   — t          j        | |¬¦  «        S ©N©r9   rf   )rh   r9   s     r   Únp_arange_1_dtyper€   q   s   € ÝŒ9�T Ð'Ñ'Ô'Ð'r   c                 ó0   — t          j        | ||¬¦  «        S ry   rf   )rh   rk   r{   s      r   Únp_arange_2_stepr‚   t   s   € ÝŒ9�T˜4 dÐ+Ñ+Ô+Ð+r   c                 ó0   — t          j        | ||¬¦  «        S r~   rf   )rh   rk   r9   s      r   Únp_arange_2_dtyper„   w   s   € ÝŒ9�T˜4 uÐ-Ñ-Ô-Ð-r   c                 ó.   — t          j        | |¬¦  «        S )N©Ústartru   rf   r†   s     r   Únp_arange_start_stoprˆ   z   s   € ÝŒ9˜5 tÐ,Ñ,Ô,Ð,r   c                 ó0   — t          j        | ||¬¦  «        S )N©r‡   ru   r{   rf   rŠ   s      r   Únp_arange_start_stop_stepr‹   }   s   € ÝŒ9˜5 t°$Ð7Ñ7Ô7Ð7r   c                 ó2   — t          j        | |||¬¦  «        S )N©r‡   ru   r{   r9   rf   r�   s       r   Únp_arange_start_stop_step_dtyperŽ   €   s   € ÝŒ9˜5 t°$¸eÐDÑDÔDÐDr   c                 ó,   — |                       |¦  «        S r   )Úfill)r   r!   s     r   Ú
array_fillr‘   ƒ   s   € Ø�8Š8�C‰=Œ=Ðr   c                 ó   ‡ — ˆ fd„}|S )Nc                 ó.   •— |                       ‰¦  «        S r   rU   rW   s    €r   rY   z#make_array_view.<locals>.array_viewˆ   s   ø€ Ø�xŠx˜Ñ Ô Ð r   © )rX   rY   s   ` r   Úmake_array_viewr•   ‡   s"   ø€ ð!ð !ð !ð !ð !àÐr   c                 ó\   — | dd…                               t          j        ¦  «        d         S )Nr   é   )rV   r   Úfloat32rC   s    r   Úarray_sliced_viewr™   Œ   s#   € Øˆq�ˆsŒ8�=Š=�œÑ$Ô$ QÔ'Ð'r   c                 ó   ‡ — ˆ fd„}|S )Nc                 ó.   •— |                       ‰¦  «        S r   )ÚastyperW   s    €r   Úarray_astypez'make_array_astype.<locals>.array_astype�   s   ø€ Ø�zŠz˜'Ñ"Ô"Ð"r   r”   )rX   r�   s   ` r   Úmake_array_astyperž   �   s"   ø€ ð#ð #ð #ð #ð #àÐr   c                 ó*   — t          j        | ¦  «        S )z7
    np.frombuffer() on a Python-allocated buffer.
    ©r   Ú
frombuffer©Úbs    r   Únp_frombufferr¤   •   s   € õ Œ=˜ÑÔÐr   c                 óB   — t          j        | t           j        ¬¦  «        S r~   )r   r¡   Ú	complex64r¢   s    r   Únp_frombuffer_dtyper§   ›   s   € ÝŒ=˜¥"¤,Ð/Ñ/Ô/Ð/r   c                 ó.   — t          j        | d¬¦  «        S )Nr¦   r   r    r¢   s    r   Únp_frombuffer_dtype_strr©   ž   s   € ÝŒ=˜ +Ð.Ñ.Ô.Ð.r   c                 ój   — 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Ð
(Ñ
(Ô
(€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Ð
(Ñ
(Ô
(€CÝŒ=˜¥B¤LÐ1Ñ1Ô1Ð1r   c                 ó   — | |u | |ufS r   r”   ©Úar£   s     r   Úidentity_usecaserµ   ¬   s   € Ø�ˆF�a˜q�jÐ!Ð!r   c                 ó*   — |                       ¦   «         S r   )Únonzero©r´   s    r   Úarray_nonzeror¹   ¯   s   € Ø�9Š9‰;Œ;Ð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�A‰;Œ;Ðr   c                 ó.   — t          j        | ||¦  «        S r   r½   )r2   ÚxÚys      r   Ú
np_where_3rÃ   ¸   s   € ÝŒ8�A�q˜!ÑÔÐr   c                 ó*   — |                       ¦   «         S r   )Úitemr¸   s    r   Ú
array_itemrÆ   »   ó   € Ø�6Š6‰8Œ8€Or   c                 ó0   — |                       |¦  «         d S r   )Úitemset)r´   Úvs     r   Úarray_itemsetrË   ¾   s   € Ø‡I‚Iˆa�L„L€L€L€Lr   c                 ó   —  | j         |Ž S r   ©Úsum©r´   Úargss     r   Ú	array_sumrÑ   Á   s   € Øˆ1Œ5�$ˆ<Ðr   c                 ó.   — |                       |¬¦  «        S ra   rÍ   ©r´   rc   s     r   Úarray_sum_axis_kwsrÔ   Ä   s   € Ø�5Š5�dˆ5ÑÔÐr   c                 ó.   — |                       |¬¦  «        S r~   rÍ   )r´   r9   s     r   Úarray_sum_dtype_kwsrÖ   Ç   s   € Ø�5Š5�uˆ5ÑÔÐr   c                 ó0   — |                       ||¬¦  «        S )N©rc   r9   rÍ   )r´   r9   rc   s      r   Úarray_sum_axis_dtype_kwsrÙ   Ê   s   € Ø�5Š5�d %ˆ5Ñ(Ô(Ð(r   c                 ó.   — |                       ||¦  «        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        | |¦  «        }|                      d¬¦  «        }t          j        | d¬¦  «        }|||||fS )Nr—   rb   é   é   éÿÿÿÿ)r   rÎ   )r   rc   r´   r£   r2   ÚdÚes          r   Úarray_sum_const_multirä   Ð   sm   € õ 	Œˆs˜ÐÑÔ€AÝ
Œˆs�A‰Œ€Aå
Œˆs�DÑÔ€Aà�Š�Qˆ‰Œ€Aå
Œˆs˜ÐÑÔ€AØˆa��A�qˆ=Ðr   c                 ó.   — |                       d¬¦  «        S )Nrá   rb   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�Tˆ?Ðr   c                 ó.   — |                       |¬¦  «        S ra   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�1‰:Œ:Ðr   c                 ó*   — t          j        | ¦  «        S r   )r   r=   r¸   s    r   Ú
array_imagrñ   ì   rï   r   c                 ó.   — t          j        | ||¦  «        S r   ©r   Úclip©r´   Úa_minÚa_maxs      r   Únp_clip_no_outrø   ï   s   € ÝŒ7�1�e˜UÑ#Ô#Ð#r   c                 ó0   — t          j        | |||¦  «        S r   ró   ©r´   rö   r÷   r   s       r   Únp_cliprû   ò   s   € ÝŒ7�1�e˜U CÑ(Ô(Ð(r   c                 ó2   — t          j        | |||¬¦  «        S ©N©r   ró   rú   s       r   Únp_clip_kwargsrÿ   õ   s   € ÝŒ7�1�e˜U¨Ð,Ñ,Ô,Ð,r   c                 ó0   — |                       |||¦  «        S r   ©rô   rú   s       r   Ú
array_clipr  ø   s   € Ø�6Š6�%˜ Ñ$Ô$Ð$r   c                 ó2   — |                       |||¬¦  «        S rý   r  rú   s       r   Úarray_clip_kwargsr  û   s   € Ø�6Š6�%˜ Cˆ6Ñ(Ô(Ð(r   c                 ó.   — |                       ||¦  «        S r   r  rõ   s      r   Úarray_clip_no_outr  þ   s   € Ø�6Š6�%˜ÑÔÐr   c                 ó*   — |                       ¦   «         S r   )Úconjr¸   s    r   Ú
array_conjr	    rÇ   r   c                 ó*   — |                       ¦   «         S r   )Ú	conjugater¸   s    r   Úarray_conjugater    s   € Ø�;Š;‰=Œ=Ðr   c                 ó*   — t          j        | ¦  «        S r   )r   Úuniquer¸   s    r   Ú	np_uniquer    s   € ÝŒ9�Q‰<Œ<Ðr   c                 ó,   — |                       |¦  «        S r   ©Údotr³   s     r   Ú	array_dotr    s   € Ø�5Š5�‰8Œ8€Or   c                 óR   — |                       |¦  «                              |¦  «        S r   r  r³   s     r   Úarray_dot_chainr    s   € Ø�5Š5�‰8Œ8�<Š<˜‰?Œ?Ðr   c                 ó.   — t          j        | |¬¦  «        S r~   ©r   r«   )Únr9   s     r   Ú
array_ctorr    s   € ÝŒ7�1˜EÐ"Ñ"Ô"Ð"r   c                   ó  ‡ — e Zd ZdZˆ 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ej        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*„ Z.d+„ Z/d,„ Z0d-„ Z1d.„ Z2d/„ Z3d0„ Z4d1„ Z5d2„ Z6d3„ Z7d4„ Z8d5„ Z9d6„ Z:d7„ Z;d8„ Z<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„ ZQeRdN„ ¦   «         ZSdO„ ZTˆ xZUS )PÚTestArrayMethodszA
    Test various array methods and array-related functions.
    c                 ó|   •— t          t          | ¦  «                             ¦   «          t          ¦   «         | _        d S r   )Úsuperr  ÚsetUpr   Úccache)ÚselfÚ	__class__s    €r   r  zTestArrayMethods.setUp  s1   ø€ ÝÕ Ñ%Ô%×+Ò+Ñ-Ô-Ð-Ý&Ñ(Ô(ˆŒˆˆr   c                 óŒ  — g d¢}d„ |D ¦   «         }d„ |D ¦   «         }t           j        t           j        t           j        t           j        t           j        f}|||||g}|}t          ||¦  «        D ]o\  }	}
t          ||	t           j        f¦  «        }|j        }dD ]D}|
D ]?}|dk    r|dz  }t          ||¦  «        } |||¦  «        }|  
                    ||¦  «         Œ@ŒEŒp|}t          ||¦  «        D ]R\  }	}
t          ||	f¦  «        }|j        }|
D ]2}t          |¦  «        } ||¦  «        }|  
                    ||¦  «         Œ3ŒSd S )N©g      Àg      Àg      Àg      ø¿ç      ø?g      @ç      @g      @c                 ó   — g | ]}|d z  ‘ŒS )ù      ð?      ð¿r”   ©Ú.0rÁ   s     r   ú
<listcomp>z7TestArrayMethods.check_round_scalar.<locals>.<listcomp>  s   € Ð<Ð<Ð<¨1˜!˜v™,Ð<Ð<Ð<r   c                 ó,   — g | ]}t          |¦  «        ‘ŒS r”   )Úintr(  s     r   r*  z7TestArrayMethods.check_round_scalar.<locals>.<listcomp>   s   € Ð2Ð2Ð2 •c˜!‘f”fÐ2Ð2Ð2r   )é   r   rá   r   é
   )r   Úfloat64r˜   r¬   r¦   Ú
complex128Úzipr   Úentry_pointr;   ÚassertPreciseEqual)r   Úunary_pyfuncÚbinary_pyfuncÚbase_valuesÚcomplex_valuesÚ
int_valuesÚargtypesÚ	argvaluesÚpyfuncÚtyÚvaluesÚcresÚcfuncr   rÊ   ÚexpectedÚgots                    r   Úcheck_round_scalarz#TestArrayMethods.check_round_scalar  s§  € ØEÐEÐEˆØ<Ð<°Ð<Ñ<Ô<ˆØ2Ð2 kÐ2Ñ2Ô2ˆ
Ý”M¥5¤=µ%´+Ý”O¥UÔ%5ð7ˆà  +¨zØ# ^ð5ˆ	ð ˆÝ˜h¨	Ñ2Ô2ð 		;ð 		;‰JˆB�Ý# F¨Rµ´Ð,=Ñ>Ô>ˆDØÔ$ˆEØ&ð ;ð ;�Øð ;ð ;�AØ !’|�|Ø˜R™˜Ý.¨q°(Ñ;Ô;�HØ˜%  8Ñ,Ô,�CØ×+Ò+¨C°Ñ:Ô:Ð:Ð:ð;ð;ð ˆÝ˜h¨	Ñ2Ô2ð 	7ð 	7‰JˆB�Ý# F¨R¨EÑ2Ô2ˆDØÔ$ˆEØð 7ð 7�Ý*¨1Ñ-Ô-�Ø�e˜A‘h”h�Ø×'Ò'¨¨XÑ6Ô6Ð6Ð6ð7ð	7ð 	7r   c                 óF   — |                       t          t          ¦  «         d S r   )rB  r0   r.   ©r   s    r   Útest_round_scalarz"TestArrayMethods.test_round_scalar;  s   € Ø×Ò¥µÑ@Ô@Ð@Ð@Ð@r   c                 óF   — |                       t          t          ¦  «         d S r   )rB  r%   r"   rD  s    r   Útest_around_scalarz#TestArrayMethods.test_around_scalar>  s   € Ø×Ò¥Õ1AÑBÔBÐBÐBÐBr   c                 ó  ‡ ‡‡— ˆ fd„Šˆˆfd„}t          j        g d¢¦  «        }t          j        t          j        f} ||||¦  «         t          j        t          j        f} ||||dz  ¦  «         ‰                      ¦   «          d S )Nc                 ó†  •— |                      t          |¦  «        ¦  «        }t          j        |¦  «                              t          |¦  «        ¦  «        }|                     ¦   «         }t          |||¦  «         ‰	                     ¦   «           | |||¦  «         ‰	                     ¦   «          t          j         	                    ||¦  «         ‰	 
                    t          ¦  «        5 } | |||dd …         ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰	                     t          |j        ¦  «        d¦  «         d S )Nr-  zinvalid output shape)rœ   r   r   Ú
zeros_likerJ   r;   Úmemory_leak_setupÚmemory_leak_teardownÚtestingÚassert_allcloseÚassertRaisesÚ
ValueErrorÚassertEqualÚstrÚ	exception)
r?  r=  ÚintyÚouttyr   r   r   ÚpyoutÚraisesr   s
            €r   Úcheck_roundz7TestArrayMethods.check_round_array.<locals>.check_roundB  s`  ø€ à—-’-¥¨¡¤Ñ/Ô/ˆCÝ”- Ñ$Ô$×+Ò+­H°U©O¬OÑ<Ô<ˆCØ—H’H‘J”JˆEÝ˜C ¨5Ñ1Ô1Ð1Ø×"Ò"Ñ$Ô$Ð$ØˆE�#�x Ñ%Ô%Ð%Ø×%Ò%Ñ'Ô'Ð'ÝŒJ×&Ò& s¨EÑ2Ô2Ð2à×"Ò"¥:Ñ.Ô.ð .°&Ø��c˜8 S¨¨¨¤WÑ-Ô-Ð-ð.ð .ð .ñ .ô .ð .ð .ð .ð .ð .ð .øøøð .ð .ð .ð .à×Ò�S Ô!1Ñ2Ô2Ø3ñ5ô 5ð 5ð 5ð 5s   Ã,DÄDÄDc                 ó€  •— t          | |¦  «        D ]«\  }}t          ‰t          j        |dd¦  «        t          j        t          j        |dd¦  «        f¦  «        }|j        } ‰|j        |||d¦  «          ‰|j        |||d¦  «         t          |t          j        ¦  «        s ‰|j        |dz  ||d¦  «         Œ«Œ¬d S )Nr-  ÚAr   r.  rá   )r   r   r   ÚArrayr¬   r2  r>   ÚInteger)	r9  Úouttypesr=  rT  rU  r>  r?  rX  r;  s	          €€r   Úcheck_typesz7TestArrayMethods.check_round_array.<locals>.check_typesR  så   ø€ Ý& x°Ñ:Ô:ð ð ‘��eÝ'¨Ý).¬°T¸1¸cÑ)BÔ)BÝ).¬Ý).¬°U¸A¸sÑ)CÔ)Cð)EñFô F�ð Ô(�Ø�˜DÔ,¨f°d¸EÀ1ÑEÔEÐEØ�˜DÔ,¨f°d¸EÀ1ÑEÔEÐEÝ! %­¬Ñ7Ô7ð Ø�K Ô 0°&¸2±+¸tÀUÈBÑOÔOÐOÐOð ðð r   r#  r'  )r   Úarrayr   r/  r˜   r¦   r0  Údisable_leak_check)r   r;  r^  r=  r9  rX  s   ``   @r   Úcheck_round_arrayz"TestArrayMethods.check_round_arrayA  s¸   øøø€ ð	5ð 	5ð 	5ð 	5ð 	5ð 	ð 	ð 	ð 	ð 	ð 	õ  ”ÐIÐIÐIÑJÔJˆå”M¥5¤=Ð1ˆØˆ�H˜h¨Ñ/Ô/Ð/å”O¥UÔ%5Ð6ˆØˆ�H˜h¨°&Ñ(9Ñ:Ô:Ð:ð 	×ÒÑ!Ô!Ð!Ð!Ð!r   c                 ó:   — |                       t          ¦  «         d S r   )ra  r)   rD  s    r   Útest_round_arrayz!TestArrayMethods.test_round_arraym  s   € Ø×Ò�~Ñ.Ô.Ð.Ð.Ð.r   c                 ó:   — |                       t          ¦  «         d S r   )ra  r   rD  s    r   Útest_around_arrayz"TestArrayMethods.test_around_arrayp  ó   € Ø×Ò�Ñ/Ô/Ð/Ð/Ð/r   c                 ó:   — |                       t          ¦  «         d S r   )ra  r,   rD  s    r   Útest_round__arrayz"TestArrayMethods.test_round__arrays  rf  r   c                 óÚ   — t           t          fD ][} t          d¬¦  «        |¦  «        }d}|                      t          |¦  «        5   |d ¦  «         d d d ¦  «         n# 1 swxY w Y   Œ\d S )NT©Únopythonú'.*The argument "a" must be array-like.*)r0   r%   r   ÚassertRaisesRegexr	   ©r   r;  r?  Úmsgs       r   Útest_around_bad_arrayz&TestArrayMethods.test_around_bad_arrayv  s¸   € Ý%¥Ð7ð 	ð 	ˆFØ&•C Ð&Ñ&Ô& vÑ.Ô.ˆEØ;ˆCØ×'Ò'­°SÑ9Ô9ð ð Ø��d‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð øð	ð 	s   ÁAÁA#	Á&A#	c                 óì   — t           t          t          fD ]^} t          d¬¦  «        |¦  «        }d}|                      t
          |¦  «        5   |ddd¬¦  «         d d d ¦  «         n# 1 swxY w Y   Œ_d S )NTrj  ú9.*The argument "out" must be an array if it is provided.*rà   r   é   rþ   )r)   r   r,   r   rm  r	   )r   Úpy_funcr?  ro  s       r   Útest_around_bad_outz$TestArrayMethods.test_around_bad_out}  sÄ   € Ý&­½ÐIð 	#ð 	#ˆGØ&•C Ð&Ñ&Ô& wÑ/Ô/ˆEØMˆCØ×'Ò'­°SÑ9Ô9ð #ð #Ø��a˜ Ð"Ñ"Ô"Ð"ð#ð #ð #ñ #ô #ð #ð #ð #ð #ð #ð #øøøð #ð #ð #ð #øð	#ð 	#s   ÁA(Á(A,	Á/A,	c                 óÐ	  ‡ ‡— ˆ f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        ¦  «         | 	                    d¦  «        } ||t           j        ¦  «          ||t           j        ¦  «          ||t           j        ¦  «          |||¦  «          |
||¦  «          |
|t           j        ¦  «         t          j        dt           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        ¬¦  «         	                    d¦  «        } ||t           j        ¦  «          ||t           j        ¦  «          |||	¦  «          ||t           j        ¦  «          ||t           j        ¦  «          ||t           j        ¦  «          |||¦  «          |||¦  «         t          j        dg¦  «        } ||t           j        ¦  «         ‰                      ¦   «          d S )Nc                 óž   •— t          |¦  «        }‰j                             |t          | ¦  «        f¦  «        }|                     | ¦  «        S r   )r•   r  Úcompiler   r2  ©r   r9   r;  r>  r   s       €r   Úrunz-TestArrayMethods.test_array_view.<locals>.run†  sC   ø€ Ý$ UÑ+Ô+ˆFØ”;×&Ò& vµ°s±´¨~Ñ>Ô>ˆDØ×#Ò# CÑ(Ô(Ð(r   c                 óÈ   •— |                       |¦  «        }‰                     ¦   «           ‰| |¦  «        }‰                     ||¦  «         ~‰                     ¦   «          d S r   )rV   rK  r3  rL  ©r   r9   r@  rA  rz  r   s       €€r   Úcheckz/TestArrayMethods.test_array_view.<locals>.checkŠ  sd   ø€ Ø—x’x ‘”ˆHØ×"Ò"Ñ$Ô$Ð$Ø�#�c˜5‘/”/ˆCØ×#Ò# C¨Ñ2Ô2Ð2ØØ×%Ò%Ñ'Ô'Ð'Ð'Ð'r   c                 óÔ   •— ‰                      t          ¦  «        5 } ‰| |¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                     t          |j        ¦  «        d¦  «         d S )Nz"new type not compatible with array)rO  rP  rQ  rR  rS  )r   r9   rW  rz  r   s      €€r   Ú	check_errz3TestArrayMethods.test_array_view.<locals>.check_err‘  s¯   ø€ Ø×"Ò"¥:Ñ.Ô.ð  °&Ø��C˜‘”�ð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  à×Ò�S Ô!1Ñ2Ô2ØAñCô Cð Cð Cð Có   œ5µ9¼9c                 ó¼  •— d}‰                      t          ¦  «        5 } t          |¦  «        | ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                     t	          |j        ¦  «        |¦  «         ‰                      t          ¦  «        5 } ‰| |¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                     t	          |j        ¦  «        |¦  «         d S )NzJTo change to a dtype of a different size, the last axis must be contiguous©rO  rP  r•   rQ  rR  rS  ©r   r9   ro  rW  rz  r   s       €€r   Úcheck_err_noncontig_last_axiszGTestArrayMethods.test_array_view.<locals>.check_err_noncontig_last_axis–  sE  ø€ ð(ˆCà×"Ò"¥:Ñ.Ô.ð ,°&Ø&• Ñ&Ô& sÑ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,à×Ò�S Ô!1Ñ2Ô2°CÑ8Ô8Ð8à×"Ò"¥:Ñ.Ô.ð  °&Ø��C˜‘”�ð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  à×Ò�S Ô!1Ñ2Ô2°CÑ8Ô8Ð8Ð8Ð8ó#   žAÁAÁ
AÂB)Â)B-Â0B-c                 ó¼  •— d}‰                      t          ¦  «        5 } t          |¦  «        | ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                     t	          |j        ¦  «        |¦  «         ‰                      t          ¦  «        5 } ‰| |¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                     t	          |j        ¦  «        |¦  «         d S )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¢  sE  ø€ ð2ˆCà×"Ò"¥:Ñ.Ô.ð ,°&Ø&• Ñ&Ô& sÑ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,à×Ò�S Ô!1Ñ2Ô2°CÑ8Ô8Ð8à×"Ò"¥:Ñ.Ô.ð  °&Ø��C˜‘”�ð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  à×Ò�S Ô!1Ñ2Ô2°CÑ8Ô8Ð8Ð8Ð8r…  c                 ó¼  •— d}‰                      t          ¦  «        5 } t          |¦  «        | ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                     t	          |j        ¦  «        |¦  «         ‰                      t          ¦  «        5 } ‰| |¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                     t	          |j        ¦  «        |¦  «         d S )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®  sE  ø€ ð;ˆCà×"Ò"¥:Ñ.Ô.ð ,°&Ø&• Ñ&Ô& sÑ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,à×Ò�S Ô!1Ñ2Ô2°CÑ8Ô8Ð8à×"Ò"¥:Ñ.Ô.ð  °&Ø��C˜‘”�ð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  à×Ò�S Ô!1Ñ2Ô2°CÑ8Ô8Ð8Ð8Ð8r…  c                 ó¼  •— d}‰                      t          ¦  «        5 } t          |¦  «        | ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                     t	          |j        ¦  «        |¦  «         ‰                      t          ¦  «        5 } ‰| |¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                     t	          |j        ¦  «        |¦  «         d S )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º  sG  ø€ ð#ˆCð ×"Ò"¥:Ñ.Ô.ð ,°&Ø&• Ñ&Ô& sÑ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,à×Ò�S Ô!1Ñ2Ô2°CÑ8Ô8Ð8à×"Ò"¥:Ñ.Ô.ð  °&Ø��C˜‘”�ð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  à×Ò�S Ô!1Ñ2Ô2°CÑ8Ô8Ð8Ð8Ð8r…  r´   r£   ÚurÊ   rÁ   rÂ   )r-  é   é   r   Úint16©rß   é   ©r—   r—   é   é   é*   r”   Úabcdef)r   r9   Úint8r�  r   rg   r˜   r¦   r0  Ú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_errorrz  s   `                 @r   Útest_array_viewz TestArrayMethods.test_array_view„  s�  øø€ ð	)ð 	)ð 	)ð 	)ð 	)ð	(ð 	(ð 	(ð 	(ð 	(ð 	(ð	Cð 	Cð 	Cð 	Cð 	Cð 	Cð

	9ð 
	9ð 
	9ð 
	9ð 
	9ð 
	9ð
	9ð 
	9ð 
	9ð 
	9ð 
	9ð 
	9ð
	9ð 
	9ð 
	9ð 
	9ð 
	9ð 
	9ð	9ð 	9ð 	9ð 	9ð 	9ð 	9õ Œh˜�bœg˜¨­b¬g¨Ð7Ñ8Ô8ˆÝŒh˜�bœh˜¨#­r¬w¨Ð8Ñ9Ô9ˆÝŒh˜�bœh˜¨#­r¬x¨Ð9Ñ:Ô:ˆõ
 ˜GÒ#Ð#Ø$:Ð!Ø%<Ð"Ø$AÐ!Ø)ˆNˆNà$-Ð!Ø%.Ð"Ø$-Ð!Ø&ˆNõ Œi˜¥"¤'Ð*Ñ*Ô*ˆØˆˆc•2”8˜GÑ$Ô$Ñ%Ô%Ð%Øˆˆc•2”8ÑÔÐØˆˆc•2”7ÑÔÐØˆˆc•2”:ÑÔÐØˆˆc•2”<Ñ Ô Ð Øˆˆc�3‰ŒˆØˆˆc�3‰ŒˆØÐ˜c¥2¤=Ñ1Ô1Ð1ð �kŠk˜&Ñ!Ô!ˆØˆˆc•2”7ÑÔÐØˆˆc•2”:ÑÔÐØˆˆc•2”<Ñ Ô Ð Øˆˆc�3‰ŒˆØÐ˜c 3Ñ'Ô'Ð'ØÐ˜c¥2¤=Ñ1Ô1Ð1õ ”	˜"¥B¤GÐ,Ñ,Ô,×4Ò4°VÑ<Ô<Ô>ˆåœ &Ñ)Ô)Ô+¨C¨C¨a¨C°°°1°¨HÔ5ˆõ ˜GÒ#Ð#Ø =ÐÐà %Ðàˆˆe•R”WÑÔÐØˆˆn�bœiÑ(Ô(Ð(ØÐ˜%¥¤Ñ,Ô,Ð,ØÐ˜%¥¤Ñ.Ô.Ð.ØÐ˜% Ñ%Ô%Ð%àÐ˜e SÑ)Ô)Ð)ØÐ˜e¥R¤]Ñ3Ô3Ð3ØÐ˜n­b¬gÑ6Ô6Ð6õ Œi˜¥"¤(Ð+Ñ+Ô+¨C¨C¨a¨CÔ0ˆØˆˆc•2”9ÑÔÐØˆˆc•2”:ÑÔÐØˆˆc�3‰ŒˆØÐ˜c¥2¤7Ñ+Ô+Ð+ØÐ˜c¥2¤8Ñ,Ô,Ð,ØÐ˜c¥2¤8Ñ,Ô,Ð,ØÐ˜c 3Ñ'Ô'Ð'ØÐ˜c 3Ñ'Ô'Ð'õ Œh˜�t¥2¤8Ð,Ñ,Ô,×4Ò4°RÑ8Ô8ˆØˆˆc•2”9ÑÔÐØˆˆc•2”:ÑÔÐØˆˆc�3‰ŒˆØˆ�s�BœGÑ$Ô$Ð$Øˆ�s�BœHÑ%Ô%Ð%Øˆ�s�BœHÑ%Ô%Ð%Øˆ�s˜CÑ Ô Ð Øˆ�s˜CÑ Ô Ð õ Œh˜�zÑ"Ô"ˆØÐ˜s¥B¤MÑ2Ô2Ð2ð 	×ÒÑ!Ô!Ð!Ð!Ð!r   c                 óX  — t           }| j                             |t          j        dd…         f¦  «        }|j        }t          j        ddgt          j        ¬¦  «        }| 	                    t          j        ¦  «        } ||¦  «        } ||¦  «        }|  
                    ||¦  «         dS )zX
        Test .view() on A layout array but has contiguous innermost dimension.
        Nr$  r“  r   )r™   r  rx  r   Úuint8r2  r   r_  r˜   rV   rQ  )r   r;  r>  r?  ÚorigÚbytearyÚexpectrA  s           r   Útest_array_sliced_viewz'TestArrayMethods.test_array_sliced_view   s˜   € õ #ˆØŒ{×"Ò" 6­E¬K¸¸¸¬NÐ+<Ñ=Ô=ˆØÔ ˆåŒx˜˜a˜­¬
Ð3Ñ3Ô3ˆØ—)’)�BœHÑ%Ô%ˆà�˜‘”ˆØˆe�G‰nŒnˆà×Ò˜ Ñ%Ô%Ð%Ð%Ð%r   c                 óÌ  ‡ ‡— ˆ fd„Šˆˆ fd„}t          j        dt           j        ¬¦  «        } ||t          j        d¦  «        ¦  «          ||t           j        ¦  «          ||t           j        ¦  «          ||t           j        ¦  «          ||d¦  «         t          j        dt           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¦  «        }‰                      ¦   «         5 } |||¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      dt          |j        ¦  «        ¦  «         d}‰                      ¦   «         5 }t!          d¬¦  «        d„ ¦   «         } ||¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      dt          |j        ¦  «        ¦  «         d S )Nc                 óž   •— t          |¦  «        }‰j                             |t          | ¦  «        f¦  «        }|                     | ¦  «        S r   )rž   r  rx  r   r2  ry  s       €r   rz  z/TestArrayMethods.test_array_astype.<locals>.run2  sC   ø€ Ý& uÑ-Ô-ˆFØ”;×&Ò& vµ°s±´¨~Ñ>Ô>ˆDØ×#Ò# CÑ(Ô(Ð(r   c                 óž   •— |                       |¦  «                             d¬¦  «        } ‰| |¦  «        }‰                     ||¦  «         d S )NrZ  ©Úorder)rœ   rJ   r3  r|  s       €€r   r}  z1TestArrayMethods.test_array_astype.<locals>.check6  sP   ø€ Ø—z’z %Ñ(Ô(×-Ò-°CÐ-Ñ8Ô8ˆHØ�#�c˜5‘/”/ˆCØ×#Ò# C¨Ñ2Ô2Ð2Ð2Ð2r   rŽ  r   r�  r˜   r�  r”  r“  FrÁ   z#cannot convert from int32 to RecordTrj  c                 óV   — t          j        dg¦  «                             | ¦  «         d S ©Nr-  )r   r_  rœ   r   s    r   Úfooz/TestArrayMethods.test_array_astype.<locals>.fooY  s&   € å”˜!˜‘”×$Ò$ UÑ+Ô+Ð+Ð+Ð+r   z5array.astype if dtype is a string it must be constant)r   rg   r—  r9   r¬   r˜   r0  r˜  rB   rš  ÚflagsÚ	writeableÚassertTypingErrorÚassertInrR  rS  r   )r   r}  r   ÚdtrW  Úunicode_valrµ  rz  s   `      @r   Útest_array_astypez"TestArrayMethods.test_array_astype0  sî  øø€ ð	)ð 	)ð 	)ð 	)ð 	)ð	3ð 	3ð 	3ð 	3ð 	3ð 	3õ Œi˜¥"¤'Ð*Ñ*Ô*ˆØˆˆc•2”8˜GÑ$Ô$Ñ%Ô%Ð%Øˆˆc•2”8ÑÔÐØˆˆc•2”:ÑÔÐØˆˆc•2”=Ñ!Ô!Ð!Øˆˆc�9ÑÔÐõ Œi˜¥"¤'Ð*Ñ*Ô*×2Ò2°6Ñ:Ô:Ô<ˆØˆˆc•2”:ÑÔÐõ Œi˜¥"¤(Ð+Ñ+Ô+¨C¨C¨a¨CÔ0ˆØˆˆc•2”9ÑÔÐõ Œi˜¥"¤(Ð+Ñ+Ô+ˆØ#ˆŒ	ÔØˆˆc•2”8ÑÔÐõ ŒX˜�RœW�~Ð&Ñ'Ô'ˆØ×#Ò#Ñ%Ô%ð 	¨ØˆE�#�r‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�ŠÐ;Ý˜&Ô*Ñ+Ô+ñ	-ô 	-ð 	-ð  ˆØ×#Ò#Ñ%Ô%ð 	¨Ý˜$ÐÑÔð,ð ,ñ  Ôð,àˆC�ÑÔÐð		ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð
 	�ŠÐMÝ˜&Ô*Ñ+Ô+ñ	-ô 	-ð 	-ð 	-ð 	-s$   ÆF7Æ7F;Æ>F;È %H1È1H5È8H5c                 ó~  ‡ ‡‡— ˆˆ fd„Šˆˆˆ fd„}t          t          d¦  «        ¦  «        } ||¦  «          |t          |¦  «        ¦  «          |t          |¦  «        ¦  «          |t	          j        d¦  «        ¦  «         t	          j        d¦  «                             d¦  «        } ||¦  «         ‰                      ¦   «          ‰                      t          ¦  «        5 } ‰t          d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰  
                    dt          |j        ¦  «        ¦  «         d S )Nc                 ó€   •— ‰j                              ‰t          | ¦  «        f¦  «        }|                     | ¦  «        S r   ©r  rx  r   r2  )Úbufr>  r;  r   s     €€r   rz  z1TestArrayMethods.check_np_frombuffer.<locals>.runa  s6   ø€ Ø”;×&Ò& vµ°s±´¨~Ñ>Ô>ˆDØ×#Ò# CÑ(Ô(Ð(r   c                 óÎ  •— t          j        | ¦  «        } ‰| ¦  «        }‰                     ¦   «           ‰| ¦  «        }‰                     ||¦  «         ~t	          j        ¦   «          ‰                     t          j        | ¦  «        |dz   ¦  «         ~t	          j        ¦   «          ‰                     t          j        | ¦  «        |¦  «         ‰                     ¦   «          d S r´  )ÚsysÚgetrefcountrK  r3  ÚgcÚcollectrQ  rL  )rÀ  Ú
old_refcntr@  rA  r;  rz  r   s       €€€r   r}  z3TestArrayMethods.check_np_frombuffer.<locals>.checkd  sÎ   ø€ Ýœ¨Ñ-Ô-ˆJØ�v˜c‘{”{ˆHØ×"Ò"Ñ$Ô$Ð$Ø�#�c‘(”(ˆCØ×#Ò# C¨Ñ2Ô2Ð2Øõ ŒJ‰LŒLˆLØ×Ò�Sœ_¨SÑ1Ô1°:À±>ÑBÔBÐBØÝŒJ‰LŒLˆLØ×Ò�Sœ_¨SÑ1Ô1°:Ñ>Ô>Ð>Ø×%Ò%Ñ'Ô'Ð'Ð'Ð'r   r”  é   )rß   r—   s   xxxz.buffer size must be a multiple of element size)Ú	bytearrayÚrangeÚbytesÚ
memoryviewr   rg   r˜  r`  rO  rP  rQ  rR  rS  )r   r;  r}  r£   rW  rz  s   ``   @r   Úcheck_np_frombufferz$TestArrayMethods.check_np_frombuffer`  s–  øøø€ ð	)ð 	)ð 	)ð 	)ð 	)ð 	)ð	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(õ  •e˜B‘i”iÑ Ô ˆØˆˆa‰ŒˆØˆ�e�A‰hŒh‰ŒˆØˆ�j˜‰mŒmÑÔÐØˆ�bŒi˜‰mŒmÑÔÐÝŒI�b‰MŒM×!Ò! &Ñ)Ô)ˆØˆˆa‰Œˆð 	×ÒÑ!Ô!Ð!à×Ò�zÑ*Ô*ð 	#¨fØˆC•	˜&Ñ!Ô!Ñ"Ô"Ð"ð	#ð 	#ð 	#ñ 	#ô 	#ð 	#ð 	#ð 	#ð 	#ð 	#ð 	#øøøð 	#ð 	#ð 	#ð 	#à×ÒÐIÝ˜VÔ-Ñ.Ô.ñ	0ô 	0ð 	0ð 	0ð 	0s   Ã%D
Ä
DÄDc                 ó:   — |                       t          ¦  «         d S r   )rÌ  r¤   rD  s    r   Útest_np_frombufferz#TestArrayMethods.test_np_frombuffer„  s   € Ø× Ò ¥Ñ/Ô/Ð/Ð/Ð/r   c                 ó:   — |                       t          ¦  «         d S r   )rÌ  r§   rD  s    r   Útest_np_frombuffer_dtypez)TestArrayMethods.test_np_frombuffer_dtype‡  s   € Ø× Ò Õ!4Ñ5Ô5Ð5Ð5Ð5r   c                 ó:   — |                       t          ¦  «         d S r   )rÌ  r©   rD  s    r   Útest_np_frombuffer_dtype_strz-TestArrayMethods.test_np_frombuffer_dtype_strŠ  s   € Ø× Ò Õ!8Ñ9Ô9Ð9Ð9Ð9r   c                 ó@  — t          d¬¦  «        d„ ¦   «         }|                      t          ¦  «        5 } |t          t	          d¦  «        ¦  «        d¦  «         d d d ¦  «         n# 1 swxY w Y   t          |j        ¦  «        }d}|                      ||¦  «         d S )NTrj  c                 ó2   — t          j        | |¬¦  «         d S r~   r    )rÀ  rº  s     r   ÚfunczETestArrayMethods.test_np_frombuffer_dtype_non_const_str.<locals>.funcŽ  s   € åŒM˜# RÐ(Ñ(Ô(Ð(Ð(Ð(r   r”  r¬   z@If np.frombuffer dtype is a string it must be a string constant.)r   rO  r	   rÈ  rÉ  rR  rS  r¹  )r   rÕ  rW  Úexcstrro  s        r   Ú&test_np_frombuffer_dtype_non_const_strz7TestArrayMethods.test_np_frombuffer_dtype_non_const_str�  sâ   € Ý	�dÐ	Ñ	Ô	ð	)ð 	)ñ 
Ô	ð	)ð ×Ò�{Ñ+Ô+ð 	0¨vØˆD•�5 ™9œ9Ñ%Ô% wÑ/Ô/Ð/ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0õ �VÔ%Ñ&Ô&ˆð"ˆà�Š�c˜6Ñ"Ô"Ð"Ð"Ð"s   ´'A'Á'A+Á.A+c                 óº   — t          d¬¦  «        d„ ¦   «         }d}|                      t          |¦  «        5 } |d ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NTrj  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   rm  r	   )r   rÕ  ro  rW  s       r   Útest_np_frombuffer_bad_bufferz.TestArrayMethods.test_np_frombuffer_bad_bufferš  s²   € Ý	�dÐ	Ñ	Ô	ð	&ð 	&ñ 
Ô	ð	&ð :ˆØ×#Ò#¥K°Ñ5Ô5ð 	¸ØˆD�‰JŒJˆJð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   ·AÁAÁAc                 óR  ‡ ‡‡— d„ Šˆˆˆ fd„} |d¦  «        } ||¦  «          ||                      d¦  «        ¦  «          ||                      d¦  «        j        ¦  «          ||                      d¦  «        d d d…         ¦  «          ||                      d¦  «        ¦  «          ||                      d¦  «        j        ¦  «          ||                      d¦  «        d d d…         ¦  «         t          j        dg¦  «                              d¦  «        } ||¦  «         d S )	Nc                 ó6   — | j         j        |j         j        k    S r   )ÚctypesÚdatar³   s     r   Úis_samez=TestArrayMethods.check_layout_dependent_func.<locals>.is_same¤  s   € Ø”8”= A¤H¤MÒ1Ð1r   c                 ó  •— t          ‰t          | ¦  «        f¦  «        } ‰| ¦  «        }|                     | ¦  «        }‰                     ||¦  «         ‰                      ‰|| ¦  «         ‰|| ¦  «        ¦  «         d S r   )r   r   r2  r3  rQ  )r   r>  r@  rA  rß  r;  r   s       €€€r   Ú	check_arrz?TestArrayMethods.check_layout_dependent_func.<locals>.check_arr¦  s„   ø€ Ý# F­V°C©[¬[¨NÑ;Ô;ˆDØ�v˜c‘{”{ˆHØ×"Ò" 3Ñ'Ô'ˆCØ×#Ò# H¨cÑ2Ô2Ð2Ø×Ò˜W˜W X¨sÑ3Ô3°W°W¸SÀ#Ñ5FÔ5FÑGÔGÐGÐGÐGr   rŽ  r�  r“  ©r“  rß   r—   r   r”   )r˜  rB   r   r_  )r   r;  Úfacrá  r   rß  s   ``   @r   Úcheck_layout_dependent_funcz,TestArrayMethods.check_layout_dependent_func£  sL  øøø€ ð	2ð 	2ð 	2ð	Hð 	Hð 	Hð 	Hð 	Hð 	Hð 	Hð ˆc�"‰gŒgˆØˆ	�#‰ŒˆØˆ	�#—+’+˜fÑ%Ô%Ñ&Ô&Ð&Øˆ	�#—+’+˜fÑ%Ô%Ô'Ñ(Ô(Ð(Øˆ	�#—+’+˜fÑ%Ô% c c¨ cÔ*Ñ+Ô+Ð+Øˆ	�#—+’+˜iÑ(Ô(Ñ)Ô)Ð)Øˆ	�#—+’+˜iÑ(Ô(Ô*Ñ+Ô+Ð+Øˆ	�#—+’+˜iÑ(Ô(¨¨¨1¨Ô-Ñ.Ô.Ð.ÝŒh˜�s‰mŒm×#Ò# BÑ'Ô'ˆØˆ	�#‰Œˆˆˆr   c                 ó:   — |                       t          ¦  «         d S r   )rä  rG   rD  s    r   Útest_array_transposez%TestArrayMethods.test_array_transpose·  s   € Ø×(Ò(­Ñ9Ô9Ð9Ð9Ð9r   c                 ó:   — |                       t          ¦  «         d S r   )rä  rD   rD  s    r   Útest_array_TzTestArrayMethods.test_array_Tº  ó   € Ø×(Ò(­Ñ1Ô1Ð1Ð1Ð1r   c                 ó:   — |                       t          ¦  «         d S r   )rä  rK   rD  s    r   Útest_array_copyz TestArrayMethods.test_array_copy½  s   € Ø×(Ò(­Ñ4Ô4Ð4Ð4Ð4r   c                 ó:   — |                       t          ¦  «         d S r   )rä  rM   rD  s    r   Útest_np_copyzTestArrayMethods.test_np_copyÀ  ré  r   c                 óŠ   ‡ ‡— ˆˆ fd„}dddt          j        d¦  «        t          j        d¦  «        dfD ]} ||¦  «         Œd S )Nc                 ó°   •— t          ‰t          | ¦  «        f¦  «        } ‰| ¦  «        }|                     | ¦  «        }‰                     ||¦  «         d S r   )r   r   r2  r3  )rÁ   r>  r@  rA  r;  r   s       €€r   Úcheck_scalarzETestArrayMethods.check_ascontiguousarray_scalar.<locals>.check_scalarÄ  sV   ø€ Ý# F­V°A©Y¬Y¨MÑ:Ô:ˆDØ�v˜a‘y”yˆHØ×"Ò" 1Ñ%Ô%ˆCØ×#Ò# H¨cÑ2Ô2Ð2Ð2Ð2r   r•  g      E@y              E@T)r   r˜   r/  )r   r;  rð  rÁ   s   ``  r   Úcheck_ascontiguousarray_scalarz/TestArrayMethods.check_ascontiguousarray_scalarÃ  si   øø€ ð	3ð 	3ð 	3ð 	3ð 	3ð 	3ð
 �d˜C¥¤¨B¡¤µ´¸B±´ÀÐFð 	ð 	ˆAØˆL˜‰OŒOˆOˆOð	ð 	r   c                 ó®   — d}|                       t          |¦  «        5 }t          |t          d¦  «        f¦  «        }d d d ¦  «         d S # 1 swxY w Y   d S )Nrl  Úhello)rm  r	   r   r   )r   r;  ro  rW  r>  s        r   Úcheck_bad_arrayz TestArrayMethods.check_bad_arrayÌ  s©   € Ø7ˆØ×#Ò#¥K°Ñ5Ô5ð 	A¸Ý# F­V°G©_¬_Ð,?Ñ@Ô@ˆDð	Að 	Að 	Añ 	Aô 	Að 	Að 	Að 	Að 	Að 	Að 	Að 	Aøøøð 	Að 	Að 	Að 	Að 	Að 	As   žA
Á
AÁAc                 ó¢   — |                       t          ¦  «         |                      t          ¦  «         |                      t          ¦  «         d S r   )rä  rP   rô  rñ  rD  s    r   Útest_np_asfortranarrayz'TestArrayMethods.test_np_asfortranarrayÑ  sG   € Ø×(Ò(Õ):Ñ;Ô;Ð;Ø×ÒÕ.Ñ/Ô/Ð/Ø×+Ò+Õ,=Ñ>Ô>Ð>Ð>Ð>r   c                 ó¢   — |                       t          ¦  «         |                      t          ¦  «         |                      t          ¦  «         d S r   )rä  rS   rô  rP   rñ  rD  s    r   Útest_np_ascontiguousarrayz*TestArrayMethods.test_np_ascontiguousarrayÖ  sG   € Ø×(Ò(Õ)=Ñ>Ô>Ð>Ø×ÒÕ.Ñ/Ô/Ð/Ø×+Ò+Õ,@ÑAÔAÐAÐAÐAr   c                 óh   ‡ ‡‡— ˆˆ fd„Šˆˆˆ fd„} |d¦  «          |d¦  «          |d¦  «         d S )Nc                 ó€   •— ‰j                              ‰t          | ¦  «        f¦  «        }|                     | ¦  «        S r   r¿  )r®   r>  r;  r   s     €€r   rz  z;TestArrayMethods.check_np_frombuffer_allocated.<locals>.runÜ  s7   ø€ Ø”;×&Ò& vµ°u±´Ð/?Ñ@Ô@ˆDØ×#Ò# EÑ*Ô*Ð*r   c                 ó`   •—  ‰| ¦  «        } ‰| ¦  «        }‰                      ||¦  «         d S r   ©r3  )r®   r@  rA  r;  rz  r   s      €€€r   r}  z=TestArrayMethods.check_np_frombuffer_allocated.<locals>.checkß  s9   ø€ Ø�v˜e‘}”}ˆHØ�#�e‘*”*ˆCØ×#Ò# C¨Ñ2Ô2Ð2Ð2Ð2r   )r”  r’  ©r-  r   r-  r”   )r   r;  r}  rz  s   `` @r   Úcheck_np_frombuffer_allocatedz.TestArrayMethods.check_np_frombuffer_allocatedÛ  sx   øøø€ ð	+ð 	+ð 	+ð 	+ð 	+ð 	+ð	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð
 	ˆˆe‰ŒˆØˆˆf‰ŒˆØˆˆiÑÔÐÐÐr   c                 ó:   — |                       t          ¦  «         d S r   )rþ  r¯   rD  s    r   Útest_np_frombuffer_allocatedz-TestArrayMethods.test_np_frombuffer_allocatedè  s   € Ø×*Ò*Õ+BÑCÔCÐCÐCÐCr   c                 ó:   — |                       t          ¦  «         d S r   )rþ  r±   rD  s    r   Útest_np_frombuffer_allocated2z.TestArrayMethods.test_np_frombuffer_allocated2ë  s   € Ø×*Ò*Õ+HÑIÔIÐIÐIÐIr   c                 ó>  ‡ ‡— d„ }ˆˆ fd„}t          j        g d¢¦  «        } ||¦  «         t          j        g d¢¦  «        } ||¦  «          |d¦  «        } ||¦  «          ||                     d¦  «        ¦  «          ||                     d¦  «        j        ¦  «          ||                     d¦  «        d d d…         ¦  «          ||                     d¦  «        ¦  «          ||                     d¦  «        j        ¦  «          ||                     d¦  «        d d d…         ¦  «         d	d
t          d¦  «        fD ]5}t          j        |g¦  «                             d¦  «        } ||¦  «         Œ6t          j        g d¢¦  «        } ||¦  «         d S )Nc                 óÀ   — t           j                             d¦  «         t           j                             | ¦  «        }d||dk     <   t          d¦  «        ||dk    <   |S ©Nr•  r4   g333333Ó?Únangffffffæ?©r   ÚrandomÚseedÚfloat©ÚNr   s     r   rã  z+TestArrayMethods.check_nonzero.<locals>.facï  óP   € ÝŒI�NŠN˜2ÑÔÐÝ”)×"Ò" 1Ñ%Ô%ˆCØ ˆC��c’	‰NÝ" 5™\œ\ˆC��c’	‰NØˆJr   c                 óÄ   •— t          ‰t          | ¦  «        f¦  «        } ‰| ¦  «        }d„ |D ¦   «         }‰                     |                     | ¦  «        |¦  «         d S )Nc                 ó6   — g | ]}|                      ¦   «         ‘ŒS r”   rI   )r)  r´   s     r   r*  zETestArrayMethods.check_nonzero.<locals>.check_arr.<locals>.<listcomp>ù  s    € Ð3Ð3Ð3 Q˜Ÿš™œÐ3Ð3Ð3r   ©r   r   r3  r2  )r   r>  r@  r;  r   s      €€r   rá  z1TestArrayMethods.check_nonzero.<locals>.check_arrö  sd   ø€ Ý# F­V°C©[¬[¨NÑ;Ô;ˆDØ�v˜c‘{”{ˆHØ3Ð3¨(Ð3Ñ3Ô3ˆHØ×#Ò# D×$4Ò$4°SÑ$9Ô$9¸8ÑDÔDÐDÐDÐDr   ©r-  r   rá   r   rý  rŽ  r�  r“  râ  r4   r$  r  r”   )ÚHelloÚ Úworld)r   r�  Úbool_r˜  rB   r
  r_  )r   r;  rã  rá  r   rÊ   s   ``    r   Úcheck_nonzerozTestArrayMethods.check_nonzeroî  sÆ  øø€ ð	ð 	ð 	ð	Eð 	Eð 	Eð 	Eð 	Eð 	Eõ Œh�}�}�}Ñ%Ô%ˆØˆ	�#‰ŒˆÝŒh�y�y�yÑ!Ô!ˆØˆ	�#‰Œˆàˆc�"‰gŒgˆØˆ	�#‰ŒˆØˆ	�#—+’+˜fÑ%Ô%Ñ&Ô&Ð&Øˆ	�#—+’+˜fÑ%Ô%Ô'Ñ(Ô(Ð(Øˆ	�#—+’+˜fÑ%Ô% c c¨ cÔ*Ñ+Ô+Ð+Øˆ	�#—+’+˜iÑ(Ô(Ñ)Ô)Ð)Øˆ	�#—+’+˜iÑ(Ô(Ô*Ñ+Ô+Ð+Øˆ	�#—+’+˜iÑ(Ô(¨¨¨1¨Ô-Ñ.Ô.Ð.Ø�s�E %™LœLÐ)ð 	ð 	ˆAÝ”(˜A˜3‘-”-×'Ò'¨Ñ+Ô+ˆCØˆI�c‰NŒNˆNˆNåŒhÐ-Ð-Ð-Ñ.Ô.ˆØˆ	�#‰Œˆˆˆr   c                 ó:   — |                       t          ¦  «         d S r   )r  r¹   rD  s    r   Útest_array_nonzeroz#TestArrayMethods.test_array_nonzero  s   € Ø×Ò�=Ñ)Ô)Ð)Ð)Ð)r   c                 ó:   — |                       t          ¦  «         d S r   )r  r»   rD  s    r   Útest_np_nonzeroz TestArrayMethods.test_np_nonzero  ó   € Ø×Ò�:Ñ&Ô&Ð&Ð&Ð&r   c                 ó:   — |                       t          ¦  «         d S r   )r  r¿   rD  s    r   Útest_np_where_1z TestArrayMethods.test_np_where_1  r  r   c                 ó  ‡ ‡‡‡	— t           Š	d„ }t          g d¢¦  «        Št          j        t          j        t          j        t          j        t          j        t          j        gŠt          j	         
                    d¦  «         dˆˆˆ	ˆ fd„	}ˆˆ	ˆ fd„}t          j        g d¢¦  «        } ||¦  «         t          j        g d¢¦  «        } ||¦  «          |d	¦  «        } ||¦  «          ||                     d
¦  «        ¦  «          ||                     d
¦  «        j        ¦  «          ||                     d
¦  «        d d d…         ¦  «          ||                     d¦  «        ¦  «          ||                     d¦  «        j        ¦  «          ||                     d¦  «        d d d…         ¦  «          ||                     d¦  «        d¬¦  «          ||                     d¦  «        j        d¬¦  «          ||                     d¦  «        d d d…         d¬¦  «         ddt          d¦  «        fD ]5}t          j        |g¦  «                             d¦  «        } ||¦  «         Œ6dD ]} ||¦  «         Œd S )Nc                 óÀ   — t           j                             d¦  «         t           j                             | ¦  «        }d||dk     <   t          d¦  «        ||dk    <   |S r  r  r  s     r   rã  z-TestArrayMethods.test_np_where_3.<locals>.fac  r  r   ©ÚCÚFrZ  r•  Fc                 óØ  •— t           j                             ‰¦  «         |dk    rQt          j        | ‰d         |¬¦  «        }t          j        | ‰d         |¬¦  «        }|                      |¬¦  «        } nTt          j        | ‰d         t          ‰¦  «        ¬¦  «        }t          j        | ‰d         t          ‰¦  «        ¬¦  «        }|                     d¦  «         |                     d¦  «         t          ‰	t          | ¦  «        t          |¦  «        t          |¦  «        f¦  «        } ‰	| ||¦  «        }| 	                    | ||¦  «        }‰
 
                    ||¦  «         d S )NFr   )r9   r²  r-  r±  r—   é	   )r   r  ÚshufflerJ  rJ   Únextr�   r   r   r2  r3  )r   ÚlayoutrÁ   rÂ   r>  r@  rA  Ú_typesÚlayoutsr;  r   s          €€€€r   rá  z3TestArrayMethods.test_np_where_3.<locals>.check_arr(  s7  ø€ ÝŒI×Ò˜fÑ%Ô%Ð%Ø˜ŠˆÝ”M #¨V°A¬Y¸fÐEÑEÔE�Ý”M #¨V°A¬Y¸fÐEÑEÔE�Ø—h’h V�hÑ,Ô,��å”M #¨V°A¬Y½dÀ7¹m¼mÐLÑLÔL�Ý”M #¨V°A¬Y½dÀ7¹m¼mÐLÑLÔL�Ø�FŠF�1‰IŒIˆIØ�FŠF�1‰IŒIˆIÝ# F­V°C©[¬[½&À¹)¼)ÅVÈAÁYÄYÐ,OÑPÔPˆDØ�v˜c 1 aÑ(Ô(ˆHØ×"Ò" 3¨¨1Ñ-Ô-ˆCØ×#Ò# C¨Ñ2Ô2Ð2Ð2Ð2r   c                 óz  •— d}d}t           j                             ‰¦  «          ‰d         d¦  «        } ‰d         d¦  «        }t          ‰t	          | ¦  «        t	          |¦  «        t	          |¦  «        f¦  «        } ‰| ||¦  «        }|                     | ||¦  «        }‰                     ||¦  «         d S )Nr—   rà   r   r-  )r   r  r%  r   r   r2  r3  )	ÚscalrÁ   rÂ   r>  r@  rA  r(  r;  r   s	         €€€r   Ú
check_scalz4TestArrayMethods.test_np_where_3.<locals>.check_scal8  s³   ø€ ØˆAØˆAÝŒI×Ò˜fÑ%Ô%Ð%Ø��q”	˜!‘”ˆAØ��q”	˜!‘”ˆAÝ# F­V°D©\¬\½6À!¹9¼9ÅfÈQÁiÄiÐ,PÑQÔQˆDØ�v˜d A qÑ)Ô)ˆHØ×"Ò" 4¨¨AÑ.Ô.ˆCØ×#Ò# C¨Ñ2Ô2Ð2Ð2Ð2r   r  rý  rŽ  r�  r“  râ  r"  )r'  r4   r$  r  r”   )r   r-  TFr%  y                ©F)rÃ   r   r   r¬   rœ  r˜   r/  r¦   r0  r  r	  r�  r  r˜  rB   r
  r_  )
r   rã  rá  r,  r   rÊ   rÁ   r(  r)  r;  s
   `      @@@r   Útest_np_where_3z TestArrayMethods.test_np_where_3  sµ  øøøø€ Ýˆð	ð 	ð 	õ ˜˜˜Ñ(Ô(ˆÝ”(�BœH¥b¤jµ"´*½b¼lÝ”-ð!ˆõ 	Œ	�Š�rÑÔÐð	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 		3ð 		3ð 		3ð 		3ð 		3ð 		3ð 		3õ Œh�}�}�}Ñ%Ô%ˆØˆ	�#‰ŒˆÝŒh�y�y�yÑ!Ô!ˆØˆ	�#‰Œˆàˆc�"‰gŒgˆØˆ	�#‰ŒˆØˆ	�#—+’+˜fÑ%Ô%Ñ&Ô&Ð&Øˆ	�#—+’+˜fÑ%Ô%Ô'Ñ(Ô(Ð(Øˆ	�#—+’+˜fÑ%Ô% c c¨ cÔ*Ñ+Ô+Ð+Øˆ	�#—+’+˜iÑ(Ô(Ñ)Ô)Ð)Øˆ	�#—+’+˜iÑ(Ô(Ô*Ñ+Ô+Ð+Øˆ	�#—+’+˜iÑ(Ô(¨¨¨1¨Ô-Ñ.Ô.Ð.àˆ	�#—+’+˜iÑ(Ô(°Ð5Ñ5Ô5Ð5Øˆ	�#—+’+˜iÑ(Ô(Ô*°3Ð7Ñ7Ô7Ð7Øˆ	�#—+’+˜iÑ(Ô(¨¨¨1¨Ô-°cÐ:Ñ:Ô:Ð:à�s�E %™LœLÐ)ð 	ð 	ˆAÝ”(˜A˜3‘-”-×'Ò'¨Ñ+Ô+ˆCØˆI�c‰NŒNˆNˆNà-ð 	ð 	ˆAØˆJ�q‰MŒMˆMˆMð	ð 	r   c                 ó
  ‡ ‡‡— t           Š t          d¬¦  «        ‰¦  «        Šˆˆˆ fd„}ˆ fd„} |¦   «         D ]H}|dk    ddf} ||¦  «         |dk     t          j        df} ||¦  «         |dk    ddf} ||¦  «         ŒId S )	NTrj  c                 óH   •—  ‰| Ž } ‰| Ž }‰                      ||¦  «         d S r   rü  )rÐ   r@  rA  r?  r;  r   s      €€€r   Úcheck_okzGTestArrayMethods.test_np_where_3_broadcast_x_y_scalar.<locals>.check_ok`  s5   ø€ Ø�v˜t�}ˆHØ�%˜�,ˆCØ×#Ò# C¨Ñ2Ô2Ð2Ð2Ð2r   c               3   ó  •K  — t          j        ddd¦  «        } ‰j                             | ¦  «         | V — |                      ddd¦  «        V — |                      ddd¬¦  «        V — |                      ddd¦  «        d d d…         V — d S )	Néþÿÿÿr—   é   r“  rà   r"  r±  rá   )r   Úlinspacer  r%  r˜  )r´   r   s    €r   Úa_variationszKTestArrayMethods.test_np_where_3_broadcast_x_y_scalar.<locals>.a_variationse  s    øè è € Ý”˜B  2Ñ&Ô&ˆAØŒK×Ò Ñ"Ô"Ð"ØˆGˆGˆGØ—)’)˜A˜q !Ñ$Ô$Ð$Ð$Ð$Ø—)’)˜A˜q¨�)Ñ,Ô,Ð,Ð,Ð,Ø—)’)˜A˜q !Ñ$Ô$ T T r TÔ*Ð*Ð*Ð*Ð*Ð*r   r   r-  y      ð?      @F)rÃ   r   r   r  )r   r1  r6  r´   Úparamsr?  r;  s   `    @@r   Ú$test_np_where_3_broadcast_x_y_scalarz5TestArrayMethods.test_np_where_3_broadcast_x_y_scalar\  så   øøø€ ÝˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆð	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð
	+ð 	+ð 	+ð 	+ð 	+ð �‘”ð 	ð 	ˆAØ˜!’e˜Q �]ˆFØˆH�VÑÔÐà˜!’e�RœV VÐ,ˆFØˆH�VÑÔÐà˜!’e˜T 5Ð)ˆFØˆH�VÑÔÐÐð	ð 	r   c                 óî   ‡ ‡	‡
— t           Š
 t          d¬¦  «        ‰
¦  «        Š	ˆ	ˆ
ˆ fd„}d„ }d„ } |¦   «         D ]9} |¦   «         D ],}t          j        |¦  «        }||k    }|||f} ||¦  «         Œ-Œ:d S )NTrj  c                 óÔ   •— | \  }}} ‰|||¦  «        } ‰|||¦  «        }‰                      ||¦  «          ‰|||¦  «        } ‰|||¦  «        }‰                      ||¦  «         d S r   rü  )	rÐ   Ú	conditionrÁ   rÂ   r@  rA  r?  r;  r   s	         €€€r   r1  zJTestArrayMethods.test_np_where_3_broadcast_x_or_y_scalar.<locals>.check_ok{  sŽ   ø€ Ø"‰OˆI�q˜!à�v˜i¨¨AÑ.Ô.ˆHØ�%˜	 1 aÑ(Ô(ˆCØ×#Ò# C¨Ñ2Ô2Ð2ð �v˜i¨¨AÑ.Ô.ˆHØ�%˜	 1 aÑ(Ô(ˆCØ×#Ò# C¨Ñ2Ô2Ð2Ð2Ð2r   c               3   ó  K  — t          j        d¦  «                             dd¦  «        } | V — | dz  V — t          j        | ¦  «        V — | d d d…         V — t          j        ddd¦  «                             ddd	¦  «        d
z  V — d S )Nr$  rß   gš™™™™™ñ?rá   éöÿÿÿr.  é<   r—   rà   ù              ð?)r   rg   r˜  rO   r5  ©rÁ   s    r   Úarray_permutationszTTestArrayMethods.test_np_where_3_broadcast_x_or_y_scalar.<locals>.array_permutations‡  sš   è è € Ý”	˜!‘”×$Ò$ Q¨Ñ*Ô*ˆAØˆGˆGˆGØ�c‘'ˆMˆMˆMÝÔ# AÑ&Ô&Ð&Ð&Ð&Ø�D�D�b�D”'ˆMˆMˆMÝ”+˜c 2 rÑ*Ô*×2Ò2°1°a¸Ñ;Ô;¸bÑ@Ð@Ð@Ð@Ð@Ð@r   c               3   óF   K  — dV — dV — t           j        V — dV — dV — d S )Nr   g333333@Ty       @      @)r   r  r”   r   r   Úscalar_permutationszUTestArrayMethods.test_np_where_3_broadcast_x_or_y_scalar.<locals>.scalar_permutations�  s9   è è € ØˆGˆGˆGØˆIˆIˆIÝ”&ˆLˆLˆLØˆJˆJˆJØˆLˆLˆLˆLˆLr   )rÃ   r   r   Úmean)r   r1  rA  rC  rÁ   rÂ   Úx_meanr;  r7  r?  r;  s   `        @@r   Ú'test_np_where_3_broadcast_x_or_y_scalarz8TestArrayMethods.test_np_where_3_broadcast_x_or_y_scalarw  sÞ   øøø€ ÝˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆð
	3ð 
	3ð 
	3ð 
	3ð 
	3ð 
	3ð 
	3ð	Að 	Að 	Að	ð 	ð 	ð $Ð#Ñ%Ô%ð 	!ð 	!ˆAØ(Ð(Ñ*Ô*ð !ð !�Ýœ ™œ�Ø šJ�	Ø# Q¨Ð*�Ø�˜Ñ Ô Ð Ð ð	!ð	!ð 	!r   c                 ó¼	  — t           } t          d¬¦  «        |¦  «        }t          t          j        t          j        t          j        t          j        t          j        g}|D �]x}t          j	        dt          ¬¦  «        }t          j
                              || |d¦  «         |d¦  «        ¦  «         |d¦  «        ¦  «         t          j
                              ||  |d¦  «         |d¦  «        ¦  «         |d¦  «        ¦  «         t          j
                              |d |d¦  «         |d¦  «        ¦  «         |d¦  «        ¦  «         t          j
                              |d |d¦  «         |d¦  «        ¦  «         |d¦  «        ¦  «         t          j        |¦  «                             |¦  «        }t          j        |¦  «        }|                     |¦  «        }d|d<   |d         |d<   t          j
                              ||||¦  «        |¦  «         t          j
                              ||||¦  «        |¦  «         t          j
                              ||||d         ¦  «        |¦  «         t          j
                              |||d         |¦  «        |¦  «         t          j
                              ||d d d	…         |d d d	…         |d d d	…         ¦  «        |d d d	…         ¦  «         t          j
                              ||dd d	…         |dd d	…         |dd d	…         ¦  «        |dd d	…         ¦  «         t          j
                              ||d d d
…         |d d d
…         |d d d
…         ¦  «        |d d d
…         ¦  «         t          j
                              ||dd d
…         |dd d
…         |dd d
…         ¦  «        |dd d
…         ¦  «         t          j
                              ||d d d…         |d d d…         |d d d…         ¦  «        |d d d…         ¦  «         t          j
                              ||d d d…         |d d d…         |d d d…         ¦  «        |d d d…         ¦  «         t          j
                              ||dd d…         |dd d…         |dd d…         ¦  «        |dd d…         ¦  «         �Œzd S )NTrj  é5   r   r   r-  Fé   r“  rß   r3  éýÿÿÿ)rÃ   r   Úboolr   r�  r¬   rœ  Údoubler0  r«   rM  Úassert_equalÚ	ones_likerœ   rJ  )	r   r;  r?  Údtsrº  r2   râ   rã   Úrs	            r   Útest_np_where_numpy_basicz*TestArrayMethods.test_np_where_numpy_basic�  sz  € åˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆõ •R”X�rœx­¬µ2´9½b¼mÐLˆØð 	Sñ 	SˆBÝ”˜¥$Ð'Ñ'Ô'ˆAÝŒJ×#Ò# E E¨1¨b¨b°©e¬e°R°R¸±U´UÑ$;Ô$;¸R¸RÀ¹U¼UÑCÔCÐCÝŒJ×#Ò# E E¨1¨"¨b¨b°©e¬e°R°R¸±U´UÑ$;Ô$;¸R¸RÀ¹U¼UÑCÔCÐCÝŒJ×#Ò# E E¨$°°°1±´°r°r¸!±u´uÑ$=Ô$=¸r¸rÀ!¹u¼uÑEÔEÐEÝŒJ×#Ò# E E¨%°°°A±´¸¸¸1¹¼Ñ$>Ô$>ÀÀÀ1ÁÄÑFÔFÐFÝ”˜Q‘”×&Ò& rÑ*Ô*ˆAÝ”˜aÑ Ô ˆAØ—’˜‘”ˆAØˆAˆa‰DØ�Q”4ˆAˆa‰DÝŒJ×#Ò# E E¨!¨Q°¡N¤N°AÑ6Ô6Ð6ÝŒJ×#Ò# E E¨!¨Q°¡N¤N°AÑ6Ô6Ð6ÝŒJ×#Ò# E E¨!¨Q°°!´Ñ$5Ô$5°qÑ9Ô9Ð9ÝŒJ×#Ò# E E¨!¨Q¨q¬T°1Ñ$5Ô$5°qÑ9Ô9Ð9ÝŒJ×#Ò# E E¨!¨C¨C¨a¨C¬&°!°C°C°a°C´&¸!¸C¸C¸a¸C¼&Ñ$AÔ$AÀ1ÀSÀSÀqÀSÄ6ÑJÔJÐJÝŒJ×#Ò# E E¨!¨A¨D¨q¨D¬'°1°Q°T¸°T´7¸A¸a¸dÀ¸d¼GÑ$DÔ$DÀaÈÈÈ1ÈÄgÑNÔNÐNÝŒJ×#Ò# E E¨!¨C¨C¨a¨C¬&°!°C°C°a°C´&¸!¸C¸C¸a¸C¼&Ñ$AÔ$AÀ1ÀSÀSÀqÀSÄ6ÑJÔJÐJÝŒJ×#Ò# E E¨!¨A¨D¨q¨D¬'°1°Q°T¸°T´7¸A¸a¸dÀ¸d¼GÑ$DÔ$DÀaÈÈÈ1ÈÄgÑNÔNÐNÝŒJ×#Ò# E E¨!¨D¨D¨b¨D¬'°1°T°T°r°T´7¸A¸d¸dÀ¸d¼GÑ$DÔ$DÀaÈÈÈ"ÈÄgÑNÔNÐNÝŒJ×#Ò# E E¨!¨D¨D¨b¨D¬'°1°T°T°r°T´7¸A¸d¸dÀ¸d¼GÑ$DÔ$DÀaÈÈÈ"ÈÄgÑNÔNÐNÝŒJ×#Ò# E E¨!¨A¨E¨r¨E¬(°A°a°e¸°e´H¸aÀÀÀ2À¼hÑ$GÔ$GÈÈ1È5ÈbÈ5ÌÑRÔRÐRÑRð+	Sð 	Sr   c                 óº  — t           } t          d¬¦  «        |¦  «        }ddg}t          j        d¦  «        }t          j        d¦  «        } |t          j        |¦  «        d d …t          j        f         ||¦  «        }t          j                             |d         |d         ¦  «         t          j                             |d         |d         ¦  «         |j	        }|j	        } ||||¦  «        }t          j                             |d d …df         |d d …df         ¦  «         t          j                             |d d …df         |d d …df         ¦  «         d S )NTrj  F)r“  é   r   r-  )
rÃ   r   r   r™  r«   r_  ÚnewaxisrM  Úassert_array_equalrB   )r   r;  r?  r2   r´   r£   rP  s          r   Útest_np_where_numpy_ndimz)TestArrayMethods.test_np_where_numpy_ndim¼  s7  € åˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆà�5ˆMˆÝŒH�WÑÔˆÝŒG�GÑÔˆØˆE•"”(˜1‘+”+˜a˜a˜a¥¤
˜lÔ+¨Q°Ñ2Ô2ˆÝ
Œ
×%Ò% a¨¤d¨A¨a¬DÑ1Ô1Ð1Ý
Œ
×%Ò% a¨¤d¨A¨a¬DÑ1Ô1Ð1àŒCˆØŒCˆØˆE�!�Q˜‰NŒNˆÝ
Œ
×%Ò% a¨¨¨¨!¨¤f¨a°°°°!°¬fÑ5Ô5Ð5Ý
Œ
×%Ò% a¨¨¨¨!¨¤f¨a°°°°!°¬fÑ5Ô5Ð5Ð5Ð5r   c                 ód  — t           } t          d¬¦  «        |¦  «        }t          j        g d¢¦  «        }t          j        d¦  «        }t          j        g d¢t          j        ¬¦  «        }t          j        g d¢t          j        ¬¦  «        }t          j                              ||||¦  «        |¦  «         |                     t          j	        ¦  «        }|                     t          j
        ¦  «        }t          j                              ||||¦  «        |¦  «         |                     t          ¦  «        }d||d	k    <   t          j                              ||||¦  «        |¦  «         |d	k    }d
||d	k    <   d	||<   t          j                              ||||¦  «        |¦  «         d S )NTrj  )FTFFFFTFFFTFr-  )ç      @r4   ç      @ç       @ç      ð¿ç      Àr4   ç      $Àç      $@ç      ð?r4   rY  r   )rX  r_  rY  rZ  r[  r\  r_  r]  r^  r_  r_  rY  i
r   iìau)rÃ   r   r   r_  r›  r/  rM  rM  rœ   r˜   rœ  r,  )r   r;  r?  r2   r´   r£   rP  Útmpmasks           r   Útest_np_where_numpy_dtype_mixz.TestArrayMethods.test_np_where_numpy_dtype_mixÎ  s�  € åˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆåŒHð 0ð 0ð 0ñ 1ô 1ˆåŒI�a‰LŒLˆÝŒHÐJÐJÐJÝœJð(ñ (ô (ˆåŒHÐJÐJÐJÝœ:ð'ñ 'ô 'ˆå
Œ
×Ò   a¨¨A¡¤°Ñ2Ô2Ð2à�HŠH•R”ZÑ Ô ˆØ�HŠH•R”XÑÔˆÝ
Œ
×Ò   a¨¨A¡¤°Ñ2Ô2Ð2ð �HŠH•S‰MŒMˆØˆˆ!ˆqŠ&‰	Ý
Œ
×Ò   a¨¨A¡¤°Ñ2Ô2Ð2à�q’&ˆØˆˆ!ˆqŠ&‰	Øˆˆ'‰
Ý
Œ
×Ò   a¨¨A¡¤°Ñ2Ô2Ð2Ð2Ð2r   c                 óÔ  — t           } t          d¬¦  «        |¦  «        }ddg}t          j        d¦  «        }t          j        d¦  «        }|                      ¦   «          |                      t          d¦  «        5   ||||¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          d¦  «        5   ||d         ||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NTrj  )r—   rà   )rà   rà   zobjects cannot be broadcastr   )rÃ   r   r   r«   r`  rm  rP  )r   r;  r?  r2   r´   r£   s         r   Útest_np_where_numpy_test_errorz/TestArrayMethods.test_np_where_numpy_test_errorê  sh  € åˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆà�4ˆLˆÝŒG�F‰OŒOˆÝŒG�F‰OŒOˆà×ÒÑ!Ô!Ð!Ø×#Ò#¥JÐ0MÑNÔNð 	ð 	ØˆE�!�Q˜‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ×#Ò#¥JÐ0MÑNÔNð 	ð 	ØˆE�!�A”$˜˜1ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s$   Á<BÂBÂBÂ<CÃC!Ã$C!c                 óX  — t           } t          d¬¦  «        |¦  «        }d}|                      t          |¦  «        5   |d dd¦  «         d d d ¦  «         n# 1 swxY w Y   d}|                      t          |¦  «        5   |ddd¦  «         d d d ¦  «         n# 1 swxY w Y   d	}|                      t          |¦  «        5   |ddd
¦  «         d d d ¦  «         n# 1 swxY w Y   d}|                      t          |¦  «        5   |dd d ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NTrj  z+The argument "condition" must be array-liker“  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   rm  r	   rn  s       r   Útest_np_where_invalid_inputsz-TestArrayMethods.test_np_where_invalid_inputsú  sH  € ÝˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆà;ˆØ×#Ò#¥K°Ñ5Ô5ð 	ð 	ØˆE�$˜˜1ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð @ˆØ×#Ò#¥K°Ñ5Ô5ð 	!ð 	!ØˆE�!�W˜aÑ Ô Ð ð	!ð 	!ð 	!ñ 	!ô 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!øøøð 	!ð 	!ð 	!ð 	!ð @ˆØ×#Ò#¥K°Ñ5Ô5ð 	!ð 	!ØˆE�!�Q˜Ñ Ô Ð ð	!ð 	!ð 	!ñ 	!ô 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!øøøð 	!ð 	!ð 	!ð 	!ð 3ˆØ×#Ò#¥K°Ñ5Ô5ð 	!ð 	!ØˆE�!�T˜4Ñ Ô Ð ð	!ð 	!ð 	!ñ 	!ô 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!øøøð 	!ð 	!ð 	!ð 	!ð 	!ð 	!sG   ¾AÁAÁAÂ BÂBÂ!BÃCÃC Ã#C ÄDÄD#Ä&D#c                 óD  ‡‡— t           d„ d„ f}|D ]ŽŠ t          d¬¦  «        ‰¦  «        Šˆˆfd„} |d¦  «          |d¦  «          |d¦  «          |d	¦  «          |d
¦  «          |t          dd¦  «        ¦  «          |t          j        d¦  «        ¦  «         Œ�d S )Nc                 ó,   — t          j        | d¦  «        S )Nr.  rf   r@  s    r   ú<lambda>z4TestArrayMethods.test_arange_1_arg.<locals>.<lambda>  s   € •b”i  2Ñ&Ô&€ r   c           	      ód   — t          j        dt          dt          | ¦  «        ¦  «        ¬¦  «        S )NrI  r-  rz   )r   rg   Úmaxr5   r@  s    r   rh  z4TestArrayMethods.test_arange_1_arg.<locals>.<lambda>  s#   € •b”i ­¨A­s°1©v¬v©¬Ð7Ñ7Ô7€ r   Trj  c                 ót   •—  ‰| ¦  «        } ‰| ¦  «        }t           j                             ||¦  «         d S r   ©r   rM  rN  )rh   r@  rA  r?  r;  s      €€r   r1  z4TestArrayMethods.test_arange_1_arg.<locals>.check_ok  s;   ø€ Ø!˜6 $™<œ<�Ø�e˜D‘k”k�Ý”
×*Ò*¨8°SÑ9Ô9Ð9Ð9Ð9r   r   r-  r—   g      @rJ  )ri   r   r?   r   r—  )r   Úall_pyfuncsr1  r?  r;  s      @@r   Útest_arange_1_argz"TestArrayMethods.test_arange_1_arg  så   øø€ õ Ø&Ð&Ø7Ð7ð
ˆð "ð 	!ð 	!ˆFØ&•C Ð&Ñ&Ô& vÑ.Ô.ˆEð:ð :ð :ð :ð :ð :ð
 ˆH�Q‰KŒKˆKØˆH�Q‰KŒKˆKØˆH�Q‰KŒKˆKØˆH�S‰MŒMˆMØˆH�R‰LŒLˆLØˆH•W˜Q ‘]”]Ñ#Ô#Ð#ØˆH•R”W˜Q‘Z”ZÑ Ô Ð Ð ð	!ð 	!r   c                 ó8  — d„ }t           t          t          t          d„ d„ f}|D ]µ} t	          d¬¦  «        |¦  «        } |dd||¦  «          |dd||¦  «          |d	d
||¦  «          |d
d	||¦  «          |t          dd¦  «        t          d	d	¦  «        ||¦  «          |t          d	d	¦  «        t          dd¦  «        ||¦  «          |dd ||¦  «         Œ¶t          } t	          d¬¦  «        |¦  «        } |dt          j        ||¦  «          |dt          j	        ||¦  «          |dt          j
        ||¦  «          |t          j        d¦  «        t          j
        ||¦  «          |dd ||¦  «          |t          j        d¦  «        d ||¦  «         d S )Nc                 óv   —  || |¦  «        } || |¦  «        }t           j                             ||¦  «         d S r   rl  )rh   rk   r;  r?  r@  rA  s         r   r1  z4TestArrayMethods.test_arange_2_arg.<locals>.check_ok(  sB   € Ø�v˜d DÑ)Ô)ˆHØ�%˜˜dÑ#Ô#ˆCÝŒJ×&Ò& x°Ñ5Ô5Ð5Ð5Ð5r   c                 ó.   — t          j        | |d¦  «        S )Nrà   rf   ©rÁ   rÂ   s     r   rh  z4TestArrayMethods.test_arange_2_arg.<locals>.<lambda>2  s   € �œ 1 a¨Ñ+Ô+€ r   c                 ó0   — t          j        d|| ¬¦  «        S )Nr“  rz   rf   rr  s     r   rh  z4TestArrayMethods.test_arange_2_arg.<locals>.<lambda>3  s   € �œ 1 a¨aÐ0Ñ0Ô0€ r   Trj  rá   rà   éøÿÿÿr—   ç      à?r-  rß   rZ  r.  rI  r   )rl   rˆ   rv   r|   r   r?   r€   r   r˜   r¬   r0  r¦   r—  )r   r1  rm  r;  r?  s        r   Útest_arange_2_argz"TestArrayMethods.test_arange_2_arg'  sÝ  € ð	6ð 	6ð 	6õ Ý ÝÝØ+Ð+Ø0Ð0ð
ˆð "ð 		-ð 		-ˆFØ&•C Ð&Ñ&Ô& vÑ.Ô.ˆEàˆH�R˜˜F EÑ*Ô*Ð*ØˆH�R˜˜V UÑ+Ô+Ð+ØˆH�Q˜˜V UÑ+Ô+Ð+ØˆH�S˜!˜V UÑ+Ô+Ð+ØˆH•W˜Q ‘]”]¥G¨A¨q¡M¤M°6¸5ÑAÔAÐAØˆH•W˜Q ‘]”]¥G¨A¨q¡M¤M°6¸5ÑAÔAÐAØˆH�Q˜˜f eÑ,Ô,Ð,Ð,å"ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆàˆ�•B”J ¨Ñ.Ô.Ð.Øˆ�•b”h ¨Ñ.Ô.Ð.Øˆ�•R”] F¨EÑ2Ô2Ð2Øˆ•”˜bÑ!Ô!¥2¤=°&¸%Ñ@Ô@Ð@Øˆ��D˜& %Ñ(Ô(Ð(Øˆ•”˜‘”˜T 6¨5Ñ1Ô1Ð1Ð1Ð1r   c           	      óž  ‡ ‡— t           j                             d¦  «        ot           j        dk    Šdˆ ˆfd„	}t          t
          t          fD �]¥} t          d¬¦  «        |¦  «        } |ddd	||¦  «          |d
dd||¦  «          |ddd||¦  «          |ddd||¦  «          |dd	d||¦  «          |dt          dd¦  «        t          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          } t          d¬¦  «        |¦  «        } |d	dt          j        ||¦  «          |ddt          j        ||¦  «          |ddt          j        ||¦  «          |dt          j        d¦  «        t          j        ||¦  «          |d	dd ||¦  «          |t          j
        d¦  «        t          j        d¦  «        d ||d¦  «         d S )NÚwin32l        Fc                 óÄ   •—  || ||¦  «        } || ||¦  «        }t           j                             ||¦  «         ‰	s"‰                     |j        |j        ¦  «         d S d S r   )r   rM  rN  rQ  r9   )
rh   rk   rn   r;  r?  Úcheck_dtyper@  rA  r   Ú	windows64s
           €€r   r1  z4TestArrayMethods.test_arange_3_arg.<locals>.check_okN  su   ø€ Ø�v˜d D¨$Ñ/Ô/ˆHØ�%˜˜d DÑ)Ô)ˆCÝŒJ×&Ò& x°Ñ5Ô5Ð5ð ð <Ø× Ò  ¤°´Ñ;Ô;Ð;Ð;Ð;ð<ð <r   Trj  r   rà   r-  rt  rá   rß   r=  r3  ru  r—   r“  çš™™™™™¹?rs  rZ  r‘  r.  rI  r-  )rÂ  ÚplatformÚ
startswithÚmaxsizero   r‚   r‹   r   r?   r   r—  r�  r¬   rœ  r„   r˜   r0  r¦   )r   r1  r;  r?  Úi8r{  s   `    @r   Útest_arange_3_argz"TestArrayMethods.test_arange_3_argK  sõ  øø€ Ý”L×+Ò+¨GÑ4Ô4ÐN½¼ÀwÒ9Nˆ	ð	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<õ #Õ$4Õ6OÐPð 	Eñ 	EˆFØ&•C Ð&Ñ&Ô& vÑ.Ô.ˆEàˆH�Q˜˜1˜f eÑ,Ô,Ð,ØˆH�R˜˜Q ¨Ñ.Ô.Ð.ØˆH�Q˜˜R ¨Ñ/Ô/Ð/ØˆH�S˜!˜Q ¨Ñ.Ô.Ð.ØˆH�Q˜˜3 ¨Ñ.Ô.Ð.ØˆH�Q�  1™œ¥w¨q°!¡}¤}°f¸eÑDÔDÐDØˆH�Q˜˜4 ¨Ñ/Ô/Ð/ØˆH�Q˜˜d F¨EÑ2Ô2Ð2ØˆH•R”W˜Q‘Z”Z¥¤¨¡¤­R¬W°Q©Z¬Z¸ÀÑGÔGÐGØˆH•R”W˜Q‘Z”Z¥¤¨!¡¤­b¬h°q©k¬k¸6À5ÑIÔIÐIå”ˆBØˆH�R�R˜‘U”U˜B˜B˜q™EœE 2 2 a¡5¤5¨&°%¸Ñ>Ô>Ð>ØˆH•R”X˜a‘[”[ " " Q¡%¤%¨¨¨A©¬°¸¸tÑDÔDÐDÑDå"ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆàˆ��A•r”z 6¨5Ñ1Ô1Ð1Øˆ��a�œ 6¨5Ñ1Ô1Ð1Øˆ��R�œ¨°Ñ6Ô6Ð6Øˆ�•B”L Ñ$Ô$¥b¤m°V¸UÑCÔCÐCØˆ��A�t˜V UÑ+Ô+Ð+Øˆ•”˜‘”�RœX a™[œ[¨$°¸¸tÑDÔDÐDÐDÐDr   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t          j        ¦  «          |dt          dd¦  «        t          dd¦  «        t          j        ¦  «          |d	dd d ¦  «          |d	d d d ¦  «         Œàd S )NTrj  c                 ó€   •—  ‰| |||¦  «        } ‰| |||¦  «        }t           j                             ||¦  «         d S r   rl  )rh   rk   rn   rq   r@  rA  r?  r;  s         €€r   r1  z4TestArrayMethods.test_arange_4_arg.<locals>.check_okx  sK   ø€ Ø!˜6 $¨¨d°DÑ9Ô9�Ø�e˜D $¨¨dÑ3Ô3�Ý”
×*Ò*¨8°SÑ9Ô9Ð9Ð9Ð9r   r   rà   r-  rt  rá   rß   r=  r3  ru  r—   r“  r|  rs  )	rr   rŽ   r   r   r/  r¬   r˜   r0  r?   )r   r1  r?  r;  s     @@r   Útest_arange_4_argz"TestArrayMethods.test_arange_4_argt  s*  øø€ Ý"Õ$CÐDð 	*ð 	*ˆFØ&•C Ð&Ñ&Ô& vÑ.Ô.ˆEð:ð :ð :ð :ð :ð :ð
 ˆH�Q˜˜1�bœjÑ)Ô)Ð)ØˆH�R˜˜Q¥¤Ñ)Ô)Ð)ØˆH�Q˜˜R¥¤Ñ,Ô,Ð,ØˆH�S˜!˜Q Ñ%Ô%Ð%ØˆH�Q˜˜3¥¤Ñ.Ô.Ð.ØˆH�Q�  1™œ¥w¨q°!¡}¤}µb´mÑDÔDÐDØˆH�Q˜˜4 Ñ&Ô&Ð&ØˆH�Q˜˜d DÑ)Ô)Ð)Ð)ð	*ð 	*r   c           	      óŒ  — |                       ¦   «          d„ d„ d„ g}d„ d„ g}|D ]X}|                      t          ¦  «        5 } t          d¬¦  «        |¦  «        } |d¦  «         d d d ¦  «         n# 1 swxY w Y   ŒY|D ]Y}|                      t          ¦  «        5 } t          d¬¦  «        |¦  «        } |dd	¦  «         d d d ¦  «         n# 1 swxY w Y   ŒZt          } t          d¬¦  «        |¦  «        }||fD ]Å}d
t          j        d¦  «        dfdfD ]©}t          t          f}|                      |¦  «        5 }t          j
        ¦   «         5  t          j        d¦  «          ||Ž  d d d ¦  «         n# 1 swxY w Y   |                      dt          |j        ¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   ŒªŒÆd S )Nc                 ó,   — t          j        | ¬¦  «        S rt   rf   r@  s    r   rh  z5TestArrayMethods.test_arange_throws.<locals>.<lambda>‹  ó   € •b”i QÐ'Ñ'Ô'€ r   c                 ó,   — t          j        | ¬¦  «        S ry   rf   r@  s    r   rh  z5TestArrayMethods.test_arange_throws.<locals>.<lambda>Œ  r‡  r   c                 ó,   — t          j        | ¬¦  «        S r~   rf   r@  s    r   rh  z5TestArrayMethods.test_arange_throws.<locals>.<lambda>�  s   € •b”i aÐ(Ñ(Ô(€ r   c                 ó.   — t          j        | |¬¦  «        S )N)ru   r{   rf   rr  s     r   rh  z5TestArrayMethods.test_arange_throws.<locals>.<lambda>�  s   € �œ¨°Ð2Ñ2Ô2€ r   c                 ó.   — t          j        | |¬¦  «        S )N)ru   r9   rf   rr  s     r   rh  z5TestArrayMethods.test_arange_throws.<locals>.<lambda>‘  s   € �œ¨°Ð3Ñ3Ô3€ r   Trj  r“  rs  r-  r   )r-  r“  r   ÚignorezMaximum allowed size exceeded)r`  rO  r	   r   ro   r   r�  ÚZeroDivisionErrorrP  ÚwarningsÚcatch_warningsÚsimplefilterr¹  rR  rS  )	r   Úbad_funcs_1Úbad_funcs_2r;  rW  r?  ÚfÚinputsÚpermitted_errorss	            r   Útest_arange_throwsz#TestArrayMethods.test_arange_throws†  s	  € à×ÒÑ!Ô!Ð!ð (Ð'Ø'Ð'Ø(Ð(ð
ˆð 3Ð2Ø3Ð3ð
ˆð
 "ð 	ð 	ˆFØ×"Ò"¥;Ñ/Ô/ð °6Ø*� TÐ*Ñ*Ô*¨6Ñ2Ô2�Ø��a‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð øð "ð 	ð 	ˆFØ×"Ò"¥;Ñ/Ô/ð °6Ø*� TÐ*Ñ*Ô*¨6Ñ2Ô2�Ø��a˜‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð øõ
 ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆØ˜%Ð!ð 	7ð 	7ˆAØ�rœx¨™{œ{¨AÐ.°	Ð:ð 
7ð 
7�õ %6µzÐ#BÐ Ø×&Ò&Ð'7Ñ8Ô8ð 7¸Få!Ô0Ñ2Ô2ð #ð #Ý Ô-¨hÑ7Ô7Ð7Ø˜˜6˜
˜
ð#ð #ð #ñ #ô #ð #ð #ð #ð #ð #ð #øøøð #ð #ð #ð #ð —M’MÐ"AÝ # FÔ$4Ñ 5Ô 5ñ7ô 7ð 7ð7ð 7ð 7ñ 7ô 7ð 7ð 7ð 7ð 7ð 7ð 7øøøð 7ð 7ð 7ð 7øð	
7ð	7ð 	7sZ   Á%A2Á2A6	Á9A6	Â&CÃC	ÃC	Ä>F7ÅE8	Å,F7Å8E<Å<F7Å?E<Æ +F7Æ7F;Æ>F;c                 ó    — t          d¬¦  «        d„ ¦   «         }d}|                       ||¦  «        |                     |¦  «        ¦  «         d S )NTrj  c                 ó4   — t          j        dd| z   | ¦  «        S )Nr   r-  rf   rz   s    r   rµ  z2TestArrayMethods.test_arange_accuracy.<locals>.foo°  s   € å”9˜Q  D¡¨$Ñ/Ô/Ð/r   g[¿R Ö¯„?)r   r3  rt  )r   rµ  rÁ   s      r   Útest_arange_accuracyz%TestArrayMethods.test_arange_accuracy­  s^   € õ 
�dÐ	Ñ	Ô	ð	0ð 	0ñ 
Ô	ð	0ð !ˆØ×Ò   A¡¤¨¯ª°A©¬Ñ7Ô7Ð7Ð7Ð7r   c                 ó.  ‡ ‡‡— t           Š t          d¬¦  «        ‰¦  «        Šˆˆˆ fd„}ˆˆ fd„}‰                      ¦   «           |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 ¦  «        ¦  «         d S )	NTrj  c                 ó`   •—  ‰| ¦  «        } ‰| ¦  «        }‰                      ||¦  «         d S r   rü  )r6   r@  rA  r?  r;  r   s      €€€r   r1  z,TestArrayMethods.test_item.<locals>.check_ok»  s9   ø€ Ø�v˜c‘{”{ˆHØ�%˜‘*”*ˆCØ×#Ò# C¨Ñ2Ô2Ð2Ð2Ð2r   c                 óÒ   •— ‰                      t          ¦  «        5 } ‰| ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                     dt          |j        ¦  «        ¦  «         d S )Nz>item(): can only convert an array of size 1 to a Python scalar©rO  rP  r¹  rR  rS  )r6   rW  r?  r   s     €€r   r  z-TestArrayMethods.test_item.<locals>.check_errÀ  s§   ø€ Ø×"Ò"¥:Ñ.Ô.ð °&Ø��c‘
”
�
ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à�MŠMÐZÝ˜fÔ.Ñ/Ô/ñ1ô 1ð 1ð 1ð 1s   œ4´8»8r$  ù              ø?r-  r“  )rÆ   r   r`  r   r˜   r0  r_  r  ©r   r1  r  r?  r;  s   `  @@r   Ú	test_itemzTestArrayMethods.test_item·  s9  øøø€ ÝˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆð	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð
	1ð 	1ð 	1ð 	1ð 	1ð 	1ð 	×ÒÑ!Ô!Ð!ð 	ˆ•”˜S˜EÑ"Ô"Ñ#Ô#Ð#Øˆ•”  ˜xÑ(Ô(Ñ)Ô)Ð)Øˆ•”˜#‘”ÑÔÐØˆ•”˜$‘”Ñ Ô Ð Øˆ•”˜C‘”Ñ!Ô!Ð!àˆ	•"”(˜A˜q˜6Ñ"Ô"Ñ#Ô#Ð#Øˆ	•"”(˜2‘,”,ÑÔÐÐÐr   c                 óÀ  ‡ ‡‡— t           Š t          d¬¦  «        ‰¦  «        Šˆˆˆ fd„}ˆˆ fd„}‰                      ¦   «           |t          j        dg¦  «        d¦  «          |t          j        dgg¦  «        d¦  «          |t          j        d¦  «        d¦  «          |t          j        dd	g¦  «        ¦  «          |t          j        g ¦  «        ¦  «         d S )
NTrj  c                 ó´   •— |                       ¦   «         }|                       ¦   «         } ‰||¦  «          ‰||¦  «         ‰                     ||¦  «         d S r   )rJ   r3  )r´   rÊ   r@  rA  r?  r;  r   s       €€€r   r1  z/TestArrayMethods.test_itemset.<locals>.check_ok×  sZ   ø€ Ø—v’v‘x”xˆHØ—&’&‘(”(ˆCØˆF�8˜QÑÔÐØˆE�#�q‰MŒMˆMØ×#Ò# C¨Ñ2Ô2Ð2Ð2Ð2r   c                 óÔ   •— ‰                      t          ¦  «        5 } ‰| d¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                     dt          |j        ¦  «        ¦  «         d S )Nr•  z/itemset(): can only write to an array of size 1r�  )r´   rW  r?  r   s     €€r   r  z0TestArrayMethods.test_itemset.<locals>.check_errÞ  s©   ø€ Ø×"Ò"¥:Ñ.Ô.ð °&Ø��a˜‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à�MŠMÐKÝ˜fÔ.Ñ/Ô/ñ1ô 1ð 1ð 1ð 1r€  r$  r•  rž  r-  r“  )rË   r   r`  r   r˜   r0  r_  rŸ  s   `  @@r   Útest_itemsetzTestArrayMethods.test_itemsetÓ  s  øøø€ ÝˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆð	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð	1ð 	1ð 	1ð 	1ð 	1ð 	1ð 	×ÒÑ!Ô!Ð!ð 	ˆ•”˜S˜EÑ"Ô" BÑ'Ô'Ð'Øˆ•”  ˜xÑ(Ô(¨"Ñ-Ô-Ð-Øˆ•”˜#‘” Ñ#Ô#Ð#àˆ	•"”(˜A˜q˜6Ñ"Ô"Ñ#Ô#Ð#Øˆ	•"”(˜2‘,”,ÑÔÐÐÐr   c           	      ó  — t           } t          d¬¦  «        |¦  «        }t          j        t          j        t          j        t          j        t          j        t          j        t          j	        t          j
        t          j        g	}d„ |D ¦   «         }|D ]t}|D ]o}|                      d                     |j        ¦  «        ¦  «        5  |                       ||¦  «         ||¦  «        ¦  «         ddd¦  «         n# 1 swxY w Y   ŒpŒudS )zK test sum over a whole range of dtypes, no axis or dtype parameter
        Trj  c                 ó�   — g | ]C}t          j        d |¦  «        t          j        d|¦  «        t          j        d|¦  «        dz  g‘ŒDS ©©rI  rs  rà   r—   rß   r-  )rI  rß   éûÿÿÿr  ©r)  Ú	arr_dtypes     r   r*  z-TestArrayMethods.test_sum.<locals>.<listcomp>ö  ó^   € ð )ð )ð )ð õ ŒW�_ iÑ0Ô0ÝŒW�Q˜	Ñ"Ô"ÝŒW�V˜YÑ'Ô'¨"Ñ,ð.ð)ð )ð )r   zTest np.sum with {} input N)rÑ   r   r   r/  r˜   rœ  r¬   r¦   r0  r›  rš  Útimedelta64ÚsubTestÚformatr9   r3  )r   r;  r?  Ú
all_dtypesÚall_test_arraysÚarr_listr   s          r   Útest_sumzTestArrayMethods.test_sumï  sW  € õ ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆÝ”j¥"¤*­b¬h½¼Ý”l¥B¤Mµ2´9½b¼iÍÌðYˆ
ð)ð )ð (ð	)ñ )ô )ˆð (ð 	Eð 	EˆHØð Eð E�Ø—\’\Ð">×"EÒ"EÀcÄiÑ"PÔ"PÑQÔQð Eð EØ×+Ò+¨F¨F°3©K¬K¸¸¸s¹¼ÑDÔDÐDðEð Eð Eñ Eô Eð Eð Eð Eð Eð Eð Eøøøð Eð Eð Eð EøðEð	Eð 	Es   Ã)C<Ã<D ÄD c                 ó*  — t           } t          d¬¦  «        |¦  «        }t          j        t          j        t          j        t          j        t          j        t          j        t          g}d„ |D ¦   «         }|D ]™}|D ]”}dD ]�}|t          |j        ¦  «        dz
  k    rŒ|                      d                     |j        ¦  «        ¦  «        5  |                       |||¬¦  «         |||¬¦  «        ¦  «         ddd¦  «         n# 1 swxY w Y   Œ�Œ•ŒšdS )	z< test sum with axis parameter over a whole range of dtypes  Trj  c                 ó�   — g | ]C}t          j        d |¦  «        t          j        d|¦  «        t          j        d|¦  «        dz  g‘ŒDS r§  r  rª  s     r   r*  z7TestArrayMethods.test_sum_axis_kws1.<locals>.<listcomp>  r¬  r   ©r   r-  r“  r-  ú#Testing np.sum(axis) with {} input rb   N)rÔ   r   r   r/  r˜   rœ  rš  r¦   r0  ÚTIMEDELTA_MÚlenr®   r®  r¯  r9   r3  )r   r;  r?  r°  r±  r²  r   rc   s           r   Útest_sum_axis_kws1z#TestArrayMethods.test_sum_axis_kws1  s›  € å#ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆÝ”j¥"¤*­b¬h½¼	Å2Ä<Ý”m¥[ð2ˆ
ð)ð )ð (ð	)ñ )ô )ˆð
 (ð 	Gð 	GˆHØð Gð G�Ø%ð Gð G�DØ�c #¤)™nœn¨QÑ.Ò.Ð.Ø ØŸšð '/ß/5ªv°c´iÑ/@Ô/@ñBô Bð Gð Gà×/Ò/°°°sÀÐ0FÑ0FÔ0FØ05°°cÀÐ0EÑ0EÔ0EñGô Gð GðGð Gð Gñ Gô Gð Gð Gð Gð Gð Gð Gøøøð Gð Gð Gð GøðGðGð	Gð 	Gs   Ã-D	ÄD	ÄD	c                 óÌ  — t           } t          d¬¦  «        |¦  «        }t          j        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„ |D ¦   «         }|D �]}|D �]}dD �]}|t          |j
        ¦  «        dz
  k    rŒ|                      d	                     |j        ¦  «        ¦  «        5   |||¬
¦  «        }	 |||¬
¦  «        }
t          |
t          j        ¦  «        rS|                      |	                     ||j                 ¦  «        |
                     ||j                 ¦  «        ¦  «         n|                      |	|
¦  «         ddd¦  «         n# 1 swxY w Y   �Œ�Œ
�ŒdS )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.
        Trj  r¬   r›  rœ  c                 ó�   — g | ]C}t          j        d |¦  «        t          j        d|¦  «        t          j        d|¦  «        dz  g‘ŒDS r§  r  rª  s     r   r*  z7TestArrayMethods.test_sum_axis_kws2.<locals>.<listcomp>&  r¬  r   r¶  r-  r·  rb   N)rÔ   r   r   r¬   r›  r9   rœ  rš  r¸  r¹  r®   r®  r¯  r>   Úndarrayr3  rœ   rQ  )r   r;  r?  r°  Ú
out_dtypesr±  r²  r   rc   Únpy_resÚ	numba_ress              r   Útest_sum_axis_kws2z#TestArrayMethods.test_sum_axis_kws2  sA  € õ $ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆÝ”h¥¤	Ð,ˆ
å”h˜wÑ'Ô'­¬µ2´8¸HÑ3EÔ3EÅrÄyÝ”h˜wÑ'Ô'­¬Ý”h�{Ñ+Ô+­R¬XµkÑ-BÔ-BðDˆ
ð)ð )ð (ð	)ñ )ô )ˆð (ð 	Añ 	AˆHØð Añ A�Ø%ð Añ A�DØ�c #¤)™nœn¨QÑ.Ò.Ð.Ø ØŸšð '/ß/5ªv°c´iÑ/@Ô/@ñBô Bð 
Að 
Aà"( &¨°4Ð"8Ñ"8Ô"8˜Ø$) E¨#°DÐ$9Ñ$9Ô$9˜	Ý% iµ´Ñ<Ô<ð AØ ×3Ò3Ø '§¢¨z¸#¼)Ô/DÑ EÔ EØ )× 0Ò 0°¸C¼IÔ1FÑ GÔ GñIô Ið Ið Ið
 !×,Ò,¨W°iÑ@Ô@Ð@ð
Að 
Að 
Añ 
Aô 
Að 
Að 
Að 
Að 
Að 
Að 
Aøøøð 
Að 
Að 
Að 
AùñAñAð	Að 	As   Ä)BG	ÇGÇGc                 óþ  — t           } t          d¬¦  «        |¦  «        }t          j        t          j        t          j        t          j        t          j        t          j        t          j	        t          j
        g}d„ |D ¦   «         }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
        gt          j        d¦  «        t          j
        gi}|D ]‹}|D ]†}||j                 D ]v}d                     |j        |¦  «        }	|                      |	¦  «        5  |                       |||¬¦  «         |||¬¦  «        ¦  «         ddd¦  «         n# 1 swxY w Y   ŒwŒ‡ŒŒdS )z< test sum with dtype parameter over a whole range of dtypes Trj  c                 ó�   — g | ]C}t          j        d |¦  «        t          j        d|¦  «        t          j        d|¦  «        dz  g‘ŒDS r§  r  rª  s     r   r*  z7TestArrayMethods.test_sum_dtype_kws.<locals>.<listcomp>C  r¬  r   r/  r˜   rœ  r¬   r›  rš  r¦   r0  z*Testing np.sum with {} input and {} outputr   N)rÖ   r   r   r/  r˜   rœ  r¬   r›  rš  r¦   r0  r9   r¯  r®  r3  )
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¥"¤*­b¬h½¼Å"Ä)Ý”i¥¤­r¬}ð>ˆ
ð)ð )ð (ð	)ñ )ô )ˆõ ”h˜yÑ)Ô)­B¬J¨<Ý”h˜yÑ)Ô)­B¬J½¼
Ð+CÝ”h˜wÑ'Ô'­"¬*µb´hÅÄ
Ð)KÝ”h˜wÑ'Ô'­"¬*µb´hÅÄ
ÍBÌHÐ)UÝ”h˜xÑ(Ô(­2¬:µr´xÅÄÐ*LÝ”h˜xÑ(Ô(­2¬:µr´xÐ*@Ý”h˜{Ñ+Ô+­b¬l½B¼MÐ-JÝ”h˜|Ñ,Ô,­r¬}¨oð?ˆ
ð (ð 	Qð 	QˆHØð Qð Q�Ø!+¨C¬IÔ!6ð Qð Q�IØ#Oß$*¢F¨3¬9°iÑ$@Ô$@ð  àŸš kÑ2Ô2ð Qð QØ ×3Ò3°F°F¸3ÀiÐ4PÑ4PÔ4PØ49°E¸#ÀYÐ4OÑ4OÔ4OñQô Qð QðQð Qð Qñ Qô Qð Qð Qð Qð Qð Qð Qøøøð Qð Qð Qð QøðQðQð	Qð 	Qs   È6-I/	É/I3É6I3c                 óL  — t           } t          d¬¦  «        |¦  «        }t          j        t          j        t          j        t          j        t          j        t          j        t          j	        t          j
        g}d„ |D ¦   «         }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
        gt          j        d¦  «        t          j
        gi}|D ]²}|D ]­}||j                 D ]�}dD ]˜}	|	t          |j        ¦  «        dz
  k    rŒd                     |j        |¦  «        }
|                      |
¦  «        5   |||	|¬¦  «        } |||	|¬¦  «        }|                      ||¦  «         ddd¦  «         n# 1 swxY w Y   Œ™ŒžŒ®Œ³dS )zF test sum with axis and dtype parameters over a whole range of dtypes Trj  c                 ó�   — g | ]C}t          j        d |¦  «        t          j        d|¦  «        t          j        d|¦  «        dz  g‘ŒDS r§  r  rª  s     r   r*  z<TestArrayMethods.test_sum_axis_dtype_kws.<locals>.<listcomp>a  r¬  r   r/  r˜   rœ  r¬   r›  rš  r¦   r0  r¶  r-  z+Testing np.sum with {} input and {} output rØ   N)rÙ   r   r   r/  r˜   rœ  r¬   r›  rš  r¦   r0  r9   r¹  r®   r¯  r®  r3  )r   r;  r?  r°  r±  r¾  r²  r   rÄ  rc   rÅ  Úpy_resÚnb_ress                r   Útest_sum_axis_dtype_kwsz(TestArrayMethods.test_sum_axis_dtype_kws[  s“  € å)ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆÝ”j¥"¤*­b¬h½¼Å"Ä)Ý”i¥¤­r¬}ð>ˆ
ð)ð )ð (ð	)ñ )ô )ˆõ ”h˜yÑ)Ô)­B¬J¨<Ý”h˜yÑ)Ô)­B¬J½¼
Ð+CÝ”h˜wÑ'Ô'­"¬*µb´hÅÄ
Ð)KÝ”h˜wÑ'Ô'­"¬*µb´hÅÄ
ÍBÌHÐ)UÝ”h˜xÑ(Ô(­2¬:µr´xÅÄÐ*LÝ”h˜xÑ(Ô(­2¬:µr´yÐ*AÝ”h˜{Ñ+Ô+­b¬l½B¼MÐ-JÝ”h˜|Ñ,Ô,­r¬}¨oð?ˆ
ð (ð 	Dð 	DˆHØð 
Dð 
D�Ø!+¨C¬IÔ!6ð 	Dð 	D�IØ )ð Dð D˜Ø¥# c¤i¡.¤.°1Ñ"4Ò4Ð4Ø$Ø'Tß(.ª¨s¬y¸)Ñ(DÔ(Dð $à!Ÿ\š\¨+Ñ6Ô6ð Dð DØ%+ V¨C°dÀ)Ð%LÑ%LÔ%L˜FØ%* U¨3°TÀÐ%KÑ%KÔ%K˜FØ ×3Ò3°F¸FÑCÔCÐCðDð Dð Dñ Dô Dð Dð Dð Dð Dð Dð Døøøð Dð Dð Dð DøðDð	Dð
Dð	Dð 	Ds   É3JÊJÊJc                 ó6  — t           } t          d¬¦  «        |¦  «        }t          j        }t          j        d¦  «        }|                       ||d|¦  «         ||d|¦  «        ¦  «         |                       ||d|¦  «         ||d|¦  «        ¦  «         dS )zC testing that axis and dtype inputs work when passed as positional Trj  r¨  r-  r“  N)rÝ   r   r   r/  r«   r3  )r   r;  r?  r9   r´   s        r   Útest_sum_axis_dtype_pos_argz,TestArrayMethods.test_sum_axis_dtype_pos_arg}  sµ   € å)ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆÝ”
ˆåŒG�OÑ$Ô$ˆØ×Ò   q¨!¨UÑ 3Ô 3Ø %  a¨!¨UÑ 3Ô 3ñ	5ô 	5ð 	5ð 	×Ò   q¨!¨UÑ 3Ô 3Ø %  a¨¨EÑ 2Ô 2ñ	4ô 	4ð 	4ð 	4ð 	4r   c                 ó†  — t           } t          d¬¦  «        |¦  «        }t          j        d¦  «        }|                       ||d¬¦  «         ||d¬¦  «        ¦  «         t
          } t          d¬¦  «        |¦  «        }t          j        d¦  «        }|                       ||d¬¦  «         ||d¬¦  «        ¦  «         d S )NTrj  r^  r   rb   rá   )rÔ   r   r   rg   r3  ræ   ©r   r;  r?  r´   s       r   Útest_sum_1d_kwsz TestArrayMethods.test_sum_1d_kwsŠ  sÈ   € å#ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆÝŒI�c‰NŒNˆØ×Ò   q¨qÐ 1Ñ 1Ô 1°5°5¸ÀÐ3CÑ3CÔ3CÑDÔDÐDÝ-ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆÝŒI�c‰NŒNˆØ×Ò   q¨rÐ 2Ñ 2Ô 2°E°E¸!À"Ð4EÑ4EÔ4EÑFÔFÐFÐFÐFr   c                 ó  — t           } t          d¬¦  «        |¦  «        }t          j        d¦  «        }d}|                       |||¦  «         |||¦  «        ¦  «         d}|                       |||¦  «         |||¦  «        ¦  «         d S )NTrj  )rß   r—   rà   rs  rI  r‘  r-  r“  )rä   r   r   r«   r3  )r   r;  r?  r   rc   s        r   Útest_sum_constzTestArrayMethods.test_sum_const•  s�   € Ý&ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆåŒgÐ(Ñ)Ô)ˆØˆØ×Ò   s¨DÑ 1Ô 1°5°5¸¸dÑ3CÔ3CÑDÔDÐDØˆØ×Ò   s¨DÑ 1Ô 1°5°5¸¸dÑ3CÔ3CÑDÔDÐDÐDÐDr   c                 ó4  — |                       ¦   «          t          } t          d¬¦  «        |¦  «        }t          j        d¦  «        }t          j        d¦  «        }|                      t          ¦  «        5   ||d¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          ¦  «        5   ||d¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          ¦  «        5   ||d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NTrj  r¨  ©r—   rß   r“  rá   r—   )r`  rÑ   r   r   r«   rO  rP  ©r   r;  r?  r´   r£   s        r   Útest_sum_exceptionsz$TestArrayMethods.test_sum_exceptionsŸ  sÊ  € à×ÒÑ!Ô!Ð!ÝˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆåŒG�OÑ$Ô$ˆÝŒG�F‰OŒOˆà×Ò�zÑ*Ô*ð 	ð 	ØˆE�!�Q‰KŒKˆKð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ×Ò�zÑ*Ô*ð 	ð 	ØˆE�!�R‰LŒLˆLð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ×Ò�zÑ*Ô*ð 	ð 	ØˆE�!�Q‰KŒKˆKð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s6   Á7BÂBÂBÂ5CÃCÃCÃ3DÄDÄDc                 óL  — |                       ¦   «          t          d¬¦  «        d„ ¦   «         }t          j        d¦  «        }|                       ||¦  «        |                     |¦  «        ¦  «         t          j        d¦  «        }|                       ||¦  «        |                     |¦  «        ¦  «         t          j        d¦  «        }|                      t          ¦  «        5 } ||¦  «         d d d ¦  «         n# 1 swxY w Y   d}|                      |t          |j
        ¦  «        ¦  «         |                      t          ¦  «        5 }|                     |¦  «         d d d ¦  «         n# 1 swxY w Y   |                      dt          |j
        ¦  «        ¦  «         d S )	NTrj  c                 ó.   — |                       d¬¦  «        S )NrJ  rb   rÍ   rC   s    r   rµ  z5TestArrayMethods.test_sum_const_negative.<locals>.fooµ  s   € à—7’7 �7Ñ#Ô#Ð#r   )r-  r“  rß   r—   )r-  r“  rß   )r-  r“  z"'axis' entry (-1) is out of boundszout of bounds)r`  r   r   r«   r3  rt  rO  r
   r¹  rR  rS  rP  )r   rµ  r´   rW  Úerrmsgs        r   Útest_sum_const_negativez(TestArrayMethods.test_sum_const_negative±  sç  € à×ÒÑ!Ô!Ð!å	�dÐ	Ñ	Ô	ð	$ð 	$ñ 
Ô	ð	$õ ŒG�LÑ!Ô!ˆØ×Ò   A¡¤¨¯ª°A©¬Ñ7Ô7Ð7åŒG�IÑÔˆØ×Ò   A¡¤¨¯ª°A©¬Ñ7Ô7Ð7åŒG�F‰OŒOˆØ×Ò�Ñ/Ô/ð 	°6ØˆC�‰FŒFˆFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à5ˆØ�Š�f�c &Ô"2Ñ3Ô3Ñ4Ô4Ð4Ø×Ò�zÑ*Ô*ð 	¨fØ�KŠK˜‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�Š�o¥s¨6Ô+;Ñ'<Ô'<Ñ=Ô=Ð=Ð=Ð=s$   Ã(D Ä DÄDÅE1Å1E5Å8E5c                 óú  — t           } t          d¬¦  «        |¦  «        }t          j        d¦  «        }|                       ||¦  «         ||¦  «        ¦  «         |                      t          ¦  «        5   ||d¦  «         d d d ¦  «         n# 1 swxY w Y   t          } t          d¬¦  «        |¦  «        }|                      t          ¦  «        5   ||d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NTrj  )r“  rß   r-  rb   )rê   r   r   r«   r3  rO  r	   rì   rÏ  s       r   Útest_cumsumzTestArrayMethods.test_cumsumÉ  sz  € ÝˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆåŒG�F‰OŒOˆØ×Ò   q¡	¤	¨5¨5°©8¬8Ñ4Ô4Ð4à×Ò�{Ñ+Ô+ð 	ð 	ØˆE�!�Q‰KŒKˆKð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ "ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆØ×Ò�{Ñ+Ô+ð 	ð 	ØˆE�!˜!ÐÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s$   Á7BÂBÂBÃC0Ã0C4Ã7C4c                 óº  ‡ ‡‡— t           Š t          d¬¦  «        ‰¦  «        Šˆˆˆ fd„}g }|                     d¦  «         |                     d¦  «         |                     d¦  «         |                     d¦  «         |                     t          j        g d¢¦  «        ¦  «         |                     t          j        g d	¢g d
¢gd¬¦  «        ¦  «         |                     t          j        g d	¢g d
¢gg¦  «        ¦  «         |                     t          j        ddggddggddgggg¦  «        ¦  «         |                     g d¢¦  «         |                     d	¦  «         |                     d¦  «         |                     d¦  «         t          g d¢¦  «        }t          j        t          j        t          j        fD ]K}t          j	        d|¬¦  «         
                    dt          |¦  «        ¬¦  «        }|D ]} |||¦  «         ŒŒLt          j	        d|¬¦  «         
                    dt          |¦  «        ¬¦  «        }|j        }|| dz
  t          j        |¦  «        t          j        | dz
  ¦  «        |g| dz
  gg}|D ]@}	‰                      t          ¦  «        5   ‰||	¦  «         d d d ¦  «         n# 1 swxY w Y   ŒA‰                      t          ¦  «        5   ‰|dg¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      t          ¦  «        5   t          d¬¦  «        t           ¦  «        }
 |
|dd¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      t          ¦  «        5   t          d¬¦  «        t           ¦  «        }
 |
|dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      ¦   «          d S )NTrj  c                 óÎ   •—  ‰| |¦  «        } ‰| |¦  «        }‰                      ||¦  «         t          |d¦  «        r%‰                     |j        |j        k    ¦  «         d S d S )Nr²  )r3  ÚhasattrrQ  r²  )r   Úindr@  rA  r?  r;  r   s       €€€r   r}  z)TestArrayMethods.test_take.<locals>.checkÜ  sx   ø€ Ø�v˜c 3Ñ'Ô'ˆHØ�%˜˜S‘/”/ˆCØ×#Ò# H¨cÑ2Ô2Ð2Ý�x Ñ)Ô)ð >Ø× Ò  ¤°3´9Ò!<Ñ=Ô=Ð=Ð=Ð=ð>ð >r   r-  rà   é   r3  )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Ô  ç333333û?rb   )r_   r   Úappendr   r_  r   r/  rœ  r0  rg   r˜  r&  ÚsizerO  Ú
IndexErrorr	   rd   r`  )r   r}  Útest_indicesr)  rº  rZ  rà  ÚszAÚillegal_indicesrÁ   Útake_kwsr?  r;  s   `          @@r   Ú	test_takezTestArrayMethods.test_takeØ  sù  øøø€ ÝˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆð	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð ˆØ×Ò˜AÑÔÐØ×Ò˜AÑÔÐØ×Ò˜BÑÔÐØ×Ò˜BÑÔÐØ×Ò�BœHÐ%5Ð%5Ð%5Ñ6Ô6Ñ7Ô7Ð7Ø×Ò�BœH i i i°°°Ð%<ÀCÐHÑHÔHÑIÔIÐIØ×Ò�BœH y y y°*°*°*Ð&=Ð%>Ñ?Ô?Ñ@Ô@Ð@Ø×Ò�BœH¨¨A¨ x°2°q°'°¸aÀ¸V¸HÐ&EÐ%FÑGÔGÑHÔHÐHØ×ÒÐ,Ð,Ð,Ñ-Ô-Ð-Ø×Ò˜IÑ&Ô&Ð&Ø×ÒÐ3Ñ4Ô4Ð4Ø×ÒÐEÑFÔFÐFå˜˜˜Ñ(Ô(ˆå”:�rœx­¬Ð7ð 	ð 	ˆBÝ”	˜" BÐ'Ñ'Ô'×/Ò/°½dÀ7¹m¼mÐ/ÑLÔLˆAØ#ð ð �Ø��a˜‘”��ðõ ŒI�b Ð#Ñ#Ô#×+Ò+¨F½$¸w¹-¼-Ð+ÑHÔHˆØŒfˆØ   q¡­"¬(°3©-¬-½¼À3À$ÈÁ(Ñ9KÔ9KØ˜5 C 4¨!¡8 *ð.ˆà ð 	ð 	ˆAØ×"Ò"¥:Ñ.Ô.ð ð Ø��a˜‘”�ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð øð ×Ò�{Ñ+Ô+ð 	ð 	ØˆE�!�c�U‰OŒOˆOð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ×Ò�{Ñ+Ô+ð 	ð 	Ø)•s DÐ)Ñ)Ô)­.Ñ9Ô9ˆHØˆH�Q˜˜1ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð
 ×Ò�{Ñ+Ô+ð 	#ð 	#Ø)•s DÐ)Ñ)Ô)­.Ñ9Ô9ˆHØˆH�Q˜ Ð"Ñ"Ô"Ð"ð	#ð 	#ð 	#ñ 	#ô 	#ð 	#ð 	#ð 	#ð 	#ð 	#ð 	#øøøð 	#ð 	#ð 	#ð 	#ð
 	×ÒÑ!Ô!Ð!Ð!Ð!sH   Ê(KËK	ËK	Ë'LÌLÌLÌ&,MÍM"Í%M"Î-N<Î<O ÏO c                 ót  ‡ ‡‡— t           Š t          d¬¦  «        ‰¦  «        Šˆˆˆ fd„}t          j        d¦  «        }t          j        t          j        fD ]} || |d¦  «        ¦  «         Œt          j        d¦  «                             dd¦  «        }t          j        t          j        fD ]} || |d¦  «        ¦  «         Œt          j        d	t          j        ¬
¦  «                             dddd¦  «        }t          j        t          j        t          j        fD ]} || |d¦  «        ¦  «         Œd S )NTrj  c                 ó  •— t          j        | ¦  «        } ‰||¦  «        }‰                     |d u ¦  «         t          j        | ¦  «        } ‰||¦  «        }‰                     |d u ¦  «         ‰                     ||¦  «         d S r   )r   rJ   Ú
assertTruer3  )	r   r!   r@  ÚervrA  Úgrvr?  r;  r   s	         €€€r   r}  z)TestArrayMethods.test_fill.<locals>.check  s…   ø€ Ý”w˜s‘|”|ˆHØ�&˜ 3Ñ'Ô'ˆCØ�OŠO˜C 4˜KÑ(Ô(Ð(Ý”'˜#‘,”,ˆCØ�%˜˜S‘/”/ˆCØ�OŠO˜C 4˜KÑ(Ô(Ð(à×#Ò# H¨cÑ2Ô2Ð2Ð2Ð2r   r-  r.  rÇ  rß   r—   é0   r   r“  )	r‘   r   r   rg   r/  r  r˜  r¦   r0  )r   r}  rZ  rÁ   r?  r;  s   `   @@r   Ú	test_fillzTestArrayMethods.test_fill  sB  øøø€ ÝˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆð	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3õ ŒI�a‰LŒLˆÝ”*�bœhÐ'ð 	ð 	ˆAØˆE�!�Q�Q�r‘U”U‰OŒOˆOˆOõ ŒI�b‰MŒM×!Ò! ! QÑ'Ô'ˆÝ”*�bœhÐ'ð 	ð 	ˆAØˆE�!�Q�Q�r‘U”U‰OŒOˆOˆOõ ŒI�b¥¤Ð-Ñ-Ô-×5Ò5°a¸¸A¸qÑAÔAˆÝ”*�bœm­R¬XÐ6ð 	ð 	ˆAØˆE�!�Q�Q�r‘U”U‰OŒOˆOˆOð	ð 	r   c                 óx  — t           } t          d¬¦  «        |¦  «        }t          j        dd¦  «        }t          j                              ||¦  «         ||¦  «        ¦  «         t          j        ||¦  «        \  }}|d|z  z   }t          j                              ||¦  «         ||¦  «        ¦  «         d S ©NTrj  r=  r.  r?  )rî   r   r   r5  rM  rM  Úmeshgrid©r   r;  r?  rÁ   rÂ   Úzs         r   Ú	test_realzTestArrayMethods.test_real5  óª   € ÝˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆåŒK˜˜RÑ Ô ˆÝ
Œ
×Ò   q¡	¤	¨5¨5°©8¬8Ñ4Ô4Ð4åŒ{˜1˜aÑ Ô ‰ˆˆ1Ø��1‘‰HˆÝ
Œ
×Ò   q¡	¤	¨5¨5°©8¬8Ñ4Ô4Ð4Ð4Ð4r   c                 óx  — t           } t          d¬¦  «        |¦  «        }t          j        dd¦  «        }t          j                              ||¦  «         ||¦  «        ¦  «         t          j        ||¦  «        \  }}|d|z  z   }t          j                              ||¦  «         ||¦  «        ¦  «         d S rõ  )rñ   r   r   r5  rM  rM  rö  r÷  s         r   Ú	test_imagzTestArrayMethods.test_imag@  rú  r   c                 ó¬   ‡‡‡— ˆˆˆfd„}t           j                              ||¦  «          t          d¬¦  «        |¦  «        |¦  «        ¦  «         d S )Nc                 óB   •— t          j         ‰| ‰‰¦  «        ¦  «        S r   )r   Úexpm1)r´   r÷   rö   rÕ  s    €€€r   Úlower_clip_resultzHTestArrayMethods._lower_clip_result_test_util.<locals>.lower_clip_resultN  s!   ø€ Ý”8˜D˜D  E¨5Ñ1Ô1Ñ2Ô2Ð2r   Trj  )r   rM  Úassert_almost_equalr   )r   rÕ  r´   rö   r÷   r   s    ` `` r   Ú_lower_clip_result_test_utilz-TestArrayMethods._lower_clip_result_test_utilK  s€   øøø€ ð	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3õ 	Œ
×&Ò&ØÐ˜aÑ Ô Ø1Ð�C˜ÐÑÔÐ0Ñ1Ô1°!Ñ4Ô4ñ	6ô 	6ð 	6ð 	6ð 	6r   c                 ó(  — t           t          t          t          f}t          t
          f}t          j        ddd¦  «        t          j        ddd¦  «                             ddd¦  «        fD �]¦}||z   D �]œ} t          d¬	¦  «        |¦  «        }d
}|  
                    t          |¦  «        5   ||d d ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j                              ||dd ¦  «         ||dd ¦  «        ¦  «         t          j                              ||d d¦  «         ||d d¦  «        ¦  «         t          j                              ||dd¦  «         ||dd¦  «        ¦  «         ||v r€t          j        |¦  «        }t          j        |¦  «        }t          j                              ||dd|¦  «         ||dd|¦  «        ¦  «         t          j                             ||¦  «         |                      ||dd¦  «         �Œž�Œ¨d S )Nr=  r.  ée   é(   rà   r“  r—   Trj  ú&array_clip: must set either max or minr   r©  )rû   rÿ   r  r  rø   r  r   r5  r˜  r   rm  rP  rM  rM  Ú
empty_liker  )	r   Úhas_outÚ
has_no_outr´   r;  r?  ro  rV  Úcouts	            r   Ú	test_clipzTestArrayMethods.test_clipU  se  € Ý�N­JÕ8IÐJˆÝ$Õ&7Ð8ˆ
å”+˜c 2 sÑ+Ô+Ý”+˜c 2 rÑ*Ô*×2Ò2°1°a¸Ñ;Ô;ð=ð 	Cñ 	CˆAà! JÑ.ð Cñ C�Ø*� TÐ*Ñ*Ô*¨6Ñ2Ô2�à>�Ø×+Ò+­J¸Ñ<Ô<ð )ð )Ø�E˜!˜T 4Ñ(Ô(Ð(ð)ð )ð )ñ )ô )ð )ð )ð )ð )ð )ð )øøøð )ð )ð )ð )õ ”
×'Ò'¨¨¨q°!°TÑ(:Ô(:¸E¸EÀ!ÀQÈÑ<MÔ<MÑNÔNÐNÝ”
×'Ò'¨¨¨q°$¸Ñ(:Ô(:¸E¸EÀ!ÀTÈ1Ñ<MÔ<MÑNÔNÐNå”
×'Ò'¨¨¨q°"°aÑ(8Ô(8¸%¸%ÀÀ2Àq¹/¼/ÑJÔJÐJà˜WÐ$Ð$ÝœM¨!Ñ,Ô,�EÝœ=¨Ñ+Ô+�DÝ”J×+Ò+¨F¨F°1°b¸!¸UÑ,CÔ,CØ,1¨E°!°R¸¸DÑ,AÔ,AñCô Cð Cå”J×+Ò+¨E°4Ñ8Ô8Ð8à×1Ò1°%¸¸BÀÑBÔBÐBÑBñ'Cð	Cð 	Cs   Â+CÃC	ÃC	c                 ó\  — t           t          t          t          f}t          t
          f}t          j        ddd¦  «                             ddd¦  «        }t          j	        dd¦  «         
                    |j        ¦  «                             dd¦  «        }t          j	        dd	¦  «         
                    |j        ¦  «                             dd¦  «        }dd
|d g}dd|d g}||z   D �]C} t          d¬¦  «        |¦  «        }	|D �]#}
|D �]}|
€E|€Cd}|                      t          |¦  «        5   |	|d d ¦  «         d d d ¦  «         n# 1 swxY w Y   ŒJt          j                              |||
|¦  «         |	||
|¦  «        ¦  «         ||v r€t          j        |¦  «        }t          j        |¦  «        }t          j                              |||
||¦  «         |	||
||¦  «        ¦  «         t          j                             ||¦  «         |                      |	||
|¦  «         �Œ�Œ%�ŒEd S )Nr=  r.  r  rà   r“  r—   rt  r   r‘  r©  Trj  r  )rû   rÿ   r  r  rø   r  r   r5  r˜  rg   rœ   r9   r   rm  rP  rM  rM  r  r  )r   r  r	  r´   Ú	a_min_arrÚ	a_max_arrÚminsÚmaxsr;  r?  rö   r÷   ro  rV  r
  s                  r   Útest_clip_array_min_maxz(TestArrayMethods.test_clip_array_min_maxp  sŒ  € Ý�N­JÕ8IÐJˆÝ$Õ&7Ð8ˆ
åŒK˜˜R Ñ$Ô$×,Ò,¨Q°°1Ñ5Ô5ˆÝ”I˜b !Ñ$Ô$×+Ò+¨A¬GÑ4Ô4×<Ò<¸QÀÑBÔBˆ	Ý”I˜a ‘O”O×*Ò*¨1¬7Ñ3Ô3×;Ò;¸A¸qÑAÔAˆ	Ø�2�y $Ð'ˆØ�1�i Ð&ˆØ 
Ñ*ð 	Nñ 	NˆFØ&•C Ð&Ñ&Ô& vÑ.Ô.ˆEàð Nñ N�Ø!ð Nñ N�Eà�}¨¨ØF˜Ø!×3Ò3µJÀÑDÔDð 1ð 1Ø!˜E ! T¨4Ñ0Ô0Ð0ð1ð 1ð 1ñ 1ô 1ð 1ð 1ð 1ð 1ð 1ð 1øøøð 1ð 1ð 1ð 1à å”J×+Ò+¨F¨F°1°e¸UÑ,CÔ,CÀUÀUÈ1ÈeÐUZÑE[ÔE[Ñ\Ô\Ð\à Ð(Ð(Ý "¤¨aÑ 0Ô 0˜Ý!œ}¨QÑ/Ô/˜Ýœ
×/Ò/°°°q¸%ÀÈÑ0NÔ0NØ05°°a¸ÀÀtÑ0LÔ0LñNô Nð Nåœ
×/Ò/°°tÑ<Ô<Ð<à×5Ò5°e¸QÀÀuÑMÔMÐMÑMñ#NñNð	Nð 	Ns   Ä.E	ÅEÅEc                 óÈ   —  t          d¬¦  «        t          ¦  «        }d}|                      t          |¦  «        5   |d dd¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NTrj  rl  r   r.  ©r   rû   rm  r	   ©r   r?  ro  s      r   Útest_clip_bad_arrayz$TestArrayMethods.test_clip_bad_array�  s¯   € Ø"•˜TÐ"Ñ"Ô"¥7Ñ+Ô+ˆØ7ˆØ×#Ò#¥K°Ñ5Ô5ð 	ð 	ØˆE�$˜˜2ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	ó   ¼AÁAÁAc                 óÈ   —  t          d¬¦  «        t          ¦  «        }d}|                      t          |¦  «        5   |ddd¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NTrj  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Ô5ð 	ð 	ØˆE�!�S˜"ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	r  c                 óÈ   —  t          d¬¦  «        t          ¦  «        }d}|                      t          |¦  «        5   |ddd¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NTrj  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Ô5ð 	ð 	ØˆE�!�Q˜ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	r  c                 óÌ   —  t          d¬¦  «        t          ¦  «        }d}|                      t          |¦  «        5   |dddd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	NTrj  rr  rà   r-  r.  rs  rþ   r  r  s      r   Útest_clip_bad_outz"TestArrayMethods.test_clip_bad_out¢  s´   € Ø"•˜TÐ"Ñ"Ô"¥7Ñ+Ô+ˆØIˆØ×#Ò#¥K°Ñ5Ô5ð 	#ð 	#ØˆE�!�Q˜ Ð"Ñ"Ô"Ð"ð	#ð 	#ð 	#ñ 	#ô 	#ð 	#ð 	#ð 	#ð 	#ð 	#ð 	#ð 	#øøøð 	#ð 	#ð 	#ð 	#ð 	#ð 	#s   ¼AÁAÁ Ac                 óz  — |                       ¦   «           t          d¬¦  «        t          ¦  «        }d}t          j        ddd¦  «                             ddd	¦  «        }t          j        d
d¦  «                             |j        ¦  «                             dd¦  «        }t          j        dd¦  «                             |j        ¦  «                             dd¦  «        }d|fd
|f||f|df|dfg}|D ]E\  }}|  	                    t          |¦  «        5   ||||¦  «         d d d ¦  «         n# 1 swxY w Y   ŒFd S )NTrj  zA.*shape mismatch: objects cannot be broadcast to a single shape.*r=  r.  r  rà   r“  r—   r©  r   r-  )r`  r   rû   r   r5  r˜  rg   rœ   r9   rm  rP  )	r   r?  ro  r´   r  r  Úmin_maxrö   r÷   s	            r   Útest_clip_no_broadcastz'TestArrayMethods.test_clip_no_broadcast¨  s€  € Ø×ÒÑ!Ô!Ð!Ø"•˜TÐ"Ñ"Ô"¥7Ñ+Ô+ˆØQˆÝŒK˜˜R Ñ$Ô$×,Ò,¨Q°°1Ñ5Ô5ˆÝ”I˜b !Ñ$Ô$×+Ò+¨A¬GÑ4Ô4×<Ò<¸QÀÑBÔBˆ	Ý”I˜a ‘O”O×*Ò*¨1¬7Ñ3Ô3×;Ò;¸A¸qÑAÔAˆ	Ø�y�> B¨	 ?Ø˜yÐ)Ø˜q�> I¨q >ð3ˆð $ð 	'ð 	'‰LˆE�5Ø×'Ò'­
°CÑ8Ô8ð 'ð 'Ø��a˜ Ñ&Ô&Ð&ð'ð 'ð 'ñ 'ô 'ð 'ð 'ð 'ð 'ð 'ð 'øøøð 'ð 'ð 'ð 'øð	'ð 	's   ÄD/Ä/D3	Ä6D3	c                 óŒ  — t           t          fD ]´} t          d¬¦  «        |¦  «        }t          j        dd¦  «        }t          j                              ||¦  «         ||¦  «        ¦  «         t          j        ||¦  «        \  }}|d|z  z   }t          j                              ||¦  «         ||¦  «        ¦  «         Œµd S rõ  )r	  r  r   r   r5  rM  rM  rö  r÷  s         r   Ú	test_conjzTestArrayMethods.test_conj¶  sÀ   € Ý!¥?Ð3ð 	9ð 	9ˆFØ&•C Ð&Ñ&Ô& vÑ.Ô.ˆEå”˜C Ñ$Ô$ˆAÝŒJ×#Ò# F F¨1¡I¤I¨u¨u°Q©x¬xÑ8Ô8Ð8å”;˜q !Ñ$Ô$‰DˆAˆqØ�B�q‘D‘ˆAÝŒJ×#Ò# F F¨1¡I¤I¨u¨u°Q©x¬xÑ8Ô8Ð8Ð8ð	9ð 	9r   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 ¦  «        ¦  «         d S )NTrj  c                 ól   •— t           j                              ‰| ¦  «         ‰| ¦  «        ¦  «         d S r   )r   rM  rM  )r´   r?  r;  s    €€r   r}  z+TestArrayMethods.test_unique.<locals>.checkÅ  s1   ø€ ÝŒJ×#Ò# F F¨1¡I¤I¨u¨u°Q©x¬xÑ8Ô8Ð8Ð8Ð8r   )r-  r-  rß   )rß   r—   rà   rà   gÍÌÌÌÌÌ@rä  gR¸…ëQ@gffffff
@)r  r   r   r_  r™  )r   r}  r?  r;  s     @@r   Útest_uniquezTestArrayMethods.test_uniqueÁ  s×   øø€ ÝˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆð	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	ˆ�bŒh˜	˜	˜	 9 9 9Ð-Ñ.Ô.Ñ/Ô/Ð/Øˆ�bŒh•r”x ‘{”{Ñ#Ô#Ñ$Ô$Ð$Øˆ�bŒh˜˜c˜
 S¨$ K°#°s°Ð<Ñ=Ô=Ñ>Ô>Ð>Øˆ�bŒh�r‰lŒlÑÔÐÐÐr   c                 ó  — t           } t          d¬¦  «        |¦  «        }t          j        d¦  «                             dd¦  «        }t          j        d¦  «        }t          j                              |||¦  «         |||¦  «        ¦  «         t          } t          d¬¦  «        |¦  «        }t          j        d¦  «                             dd¦  «        }t          j                              |||¦  «         |||¦  «        ¦  «         d S )NTrj  g      4@r—   rà   rX  g      0@)r  r   r   rg   r˜  rM  rM  r  rÕ  s        r   Útest_array_dotzTestArrayMethods.test_array_dotÍ  sé   € õ ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆÝŒI�c‰NŒN×"Ò" 1 aÑ(Ô(ˆÝŒI�b‰MŒMˆÝ
Œ
×Ò   q¨!¡¤¨e¨e°A°q©k¬kÑ:Ô:Ð:õ !ˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆÝŒI�c‰NŒN×"Ò" 1 aÑ(Ô(ˆÝ
Œ
×Ò   q¨!¡¤¨e¨e°A°q©k¬kÑ:Ô:Ð:Ð:Ð:r   c                 ó
  — t           } t          d¬¦  «        |¦  «        }d}|t          j        f}t          j                              ||Ž  ||Ž ¦  «         |t          j        d¦  «        f}t          j                              ||Ž  ||Ž ¦  «         |t          j        f}t          j                              ||Ž  ||Ž ¦  «         |t          j        d¦  «        f}t          j                              ||Ž  ||Ž ¦  «         d S )NTrj  r“  r¬   Úf4)r  r   r   r¬   rM  rU  r9   r˜   )r   r;  r?  r  rÐ   s        r   Útest_array_ctor_with_dtype_argz/TestArrayMethods.test_array_ctor_with_dtype_argÝ  sø   € åˆØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆØˆØ•"”(ˆ{ˆÝ
Œ
×%Ò% f f¨d m°U°U¸D°\ÑBÔBÐBØ•"”(˜7Ñ#Ô#Ð#ˆÝ
Œ
×%Ò% f f¨d m°U°U¸D°\ÑBÔBÐBØ•"”*ˆ}ˆÝ
Œ
×%Ò% f f¨d m°U°U¸D°\ÑBÔBÐBØ•"”(˜4‘.”.Ð ˆÝ
Œ
×%Ò% f f¨d m°U°U¸D°\ÑBÔBÐBÐBÐBr   )VÚ__name__Ú
__module__Ú__qualname__Ú__doc__r  rB  rE  rG  ra  rc  re  rh  rp  ru  r§  r­  r¼  rÌ  rÎ  rÐ  rÒ  r×  rÚ  r   rg   rä  ræ  rè  rë  rí  rñ  rô  rö  rø  rþ  r   r  r  r  r  r  r.  r8  rF  rQ  rV  ra  rc  re  rn  rv  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)  Ú__classcell__)r!  s   @r   r  r    s+  ø€ € € € € ðð ð)ð )ð )ð )ð )ð7ð 7ð 7ð<Að Að AðCð Cð Cð*"ð *"ð *"ðX/ð /ð /ð0ð 0ð 0ð0ð 0ð 0ðð ð ð#ð #ð #ðZ"ð Z"ð Z"ðx&ð &ð &ð .-ð .-ð .-ð`"0ð "0ð "0ðH0ð 0ð 0ð6ð 6ð 6ð:ð :ð :ð#ð #ð #ðð ð ð 79´ið ð ð ð ð(:ð :ð :ð2ð 2ð 2ð5ð 5ð 5ð2ð 2ð 2ðð ð ðAð Að Að
?ð ?ð ?ð
Bð Bð Bð
ð ð ðDð Dð DðJð Jð Jð ð  ð  ðD*ð *ð *ð'ð 'ð 'ð'ð 'ð 'ðAð Að AðFð ð ð6$!ð $!ð $!ðLSð Sð Sð>6ð 6ð 6ð$3ð 3ð 3ð8ð ð ð !ð !ð !ð*!ð !ð !ð0"2ð "2ð "2ðH'Eð 'Eð 'EðR*ð *ð *ð$%7ð %7ð %7ðN8ð 8ð 8ð ð  ð  ð8 ð  ð  ð8Eð Eð Eð$Gð Gð Gð*%Að %Að %AðNQð Qð Qð< Dð  Dð  DðD4ð 4ð 4ð	Gð 	Gð 	GðEð Eð Eðð ð ð$>ð >ð >ð0ð ð ð?"ð ?"ð ?"ðBð ð ð8	5ð 	5ð 	5ð	5ð 	5ð 	5ð6ð 6ð 6ðCð Cð Cð6Nð Nð Nð@ð ð ðð ð ðð ð ð#ð #ð #ð'ð 'ð 'ð	9ð 	9ð 	9ð
ð 
ð 
ð ð;ð ;ñ „Zð;ðCð Cð Cð Cð Cð Cð Cr   r  c                   ó   — e Zd Zd„ ZdS )ÚTestArrayComparisonsc                 óš  ‡ ‡— ˆˆ fd„}t           Št          j        dt          j        ¬¦  «                             d¦  «        } |||d¦  «          |||d d …         d¦  «          |||                     ¦   «         d¦  «          |||                     d¦  «        d¦  «          |||j        d¦  «          |||d d…         d¦  «         d S )	Nc                 óº   •— t          ‰t          | ¦  «        t          |¦  «        f¦  «        }‰                     |                     | |¦  «        || f¦  «         d S r   r  )r´   r£   r@  r>  r;  r   s       €€r   r}  z1TestArrayComparisons.test_identity.<locals>.checkî  sa   ø€ Ý# F­V°A©Y¬Y½¸q¹	¼	Ð,BÑCÔCˆDØ×#Ò# D×$4Ò$4°Q¸Ñ$:Ô$:Ø%-°8¨|Ð$<ñ>ô >ð >ð >ð >r   r.  r   )r“  rà   TFr›  rá   )rµ   r   r™  r¬   r˜  rJ   rV   rB   )r   r}  r   r;  s   `  @r   Útest_identityz"TestArrayComparisons.test_identityí  sñ   øø€ ð	>ð 	>ð 	>ð 	>ð 	>ð 	>õ
 "ˆåŒh�r¥¤Ð*Ñ*Ô*×2Ò2°6Ñ:Ô:ˆØˆˆc�3˜ÑÔÐØˆˆc�3�q�q�q”6˜4Ñ Ô Ð Øˆˆc�3—8’8‘:”:˜uÑ%Ô%Ð%Øˆˆc�3—8’8˜HÑ%Ô% uÑ-Ô-Ð-Øˆˆc�3”5˜%Ñ Ô Ð Øˆˆc�3�s˜�s”8˜UÑ#Ô#Ð#Ð#Ð#r   N)r*  r+  r,  r3  r”   r   r   r0  r0  ë  s#   € € € € € ð$ð $ð $ð $ð $r   r0  Ú__main__)r   Nr   )NNN)fÚ	itertoolsr   r   rÄ  rÂ  rŽ  Únumpyr   Únumbar   r   Ú
numba.corer   Únumba.core.compilerr   Únumba.core.errorsr	   r
   Únumba.np.numpy_supportr   r   Únumba.tests.supportr   r   r   r   r   Úunittestr¸  ÚTIMEDELTA_Yr   r"   r%   r)   r,   r.   r0   r;   rD   rG   rK   rM   rP   rS   rY   r_   rd   ri   rl   ro   rr   rv   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ÿ   r  r  r  r	  r  r  r  r  r  r  r0  r*  Úmainr”   r   r   ú<module>r@     s¼  ðØ $Ð $Ð $Ð $Ð $Ð $Ð $Ð $Ø 	€	€	€	Ø 
€
€
€
Ø €€€à Ð Ð Ð à Ð Ð Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ø :Ð :Ð :Ð :Ð :Ð :Ð :Ð :ðCð Cð Cð Cð Cð Cð Cð Cð Cð Cð Cð Cð Cð Cà €€€à€Ø€ð"ð "ð "ð$ð $ð $ðð ð ð!ð !ð !ð"ð "ð "ð#ð #ð #ðð ð ðð ð ð ð4ð ð ðð ð ðð ð ðð ð ð"ð "ð "ð%ð %ð %ðð ð ðð ð ð(ð (ð (ðð ð ð!ð !ð !ð'ð 'ð 'ð-ð -ð -ð&ð &ð &ð&ð &ð &ð(ð (ð (ð,ð ,ð ,ð.ð .ð .ð-ð -ð -ð8ð 8ð 8ðEð Eð Eðð ð ðð ð ð
(ð (ð (ðð ð ðð ð ð0ð 0ð 0ð/ð /ð /ðð ð ð2ð 2ð 2ð"ð "ð "ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ð)ð )ð )ðð ð ðð ð ðð ð ð
ð ð ðð ð ðð ð ðð ð ð$ð $ð $ð)ð )ð )ð )ð-ð -ð -ð -ð%ð %ð %ð %ð)ð )ð )ð )ð ð  ð  ðð ð ðð ð ðð ð ðð ð ðð ð ð#ð #ð #ðUCð UCð UCð UCð UC�¨ñ UCô UCð UCðn.$ð $ð $ð $ð $˜8ñ $ô $ð $ð* ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr   