§
    `ŠtjW_  ã                   ó0  — d dl Z d dlZd dlmZmZmZmZmZm	Z	m
Z
mZmZmZmZmZ d dlmZmZmZmZmZmZmZ  G d„ d¦  «        Z G d„ d¦  «        Z G d„ d	¦  «        Z G d
„ d¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Zd„ Z G d„ d¦  «        Zd„ Z  G d„ d¦  «        Z!d„ Z"d„ Z#e j$         %                    dddddgdg¦  «        d„ ¦   «         Z&d„ Z'd „ Z(d!„ Z)d"„ Z*d#„ Z+d$„ Z,d%„ Z-e j$         %                    d&g d'¢¦  «        d(„ ¦   «         Z.d)„ Z/d*„ Z0dS )+é    N)Úc_Údiag_indicesÚdiag_indices_fromÚfill_diagonalÚ	index_expÚix_ÚmgridÚndenumerateÚndindexÚogridÚr_Ús_)Úassert_Úassert_almost_equalÚassert_array_almost_equalÚassert_array_equalÚassert_equalÚassert_raisesÚassert_raises_regexc                   ó�   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	e
j                             dg d	¢¦  «        d
„ ¦   «         Zd„ Zd„ ZdS )ÚTestRavelUnravelIndexc                 ó
	  — t          t          j        dd¦  «        d¦  «         t          t          j        dd¬¦  «        d¦  «         t          t          ¦  «        5  t          j        dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          ¦  «        5  t          j        dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          ¦  «        5  t          j        dd¬	¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          ¦  «        5  t          j        dd¬
¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          t          j        dd¦  «         t          t          t          j        dd¦  «         t          t          t          j        dd¦  «         t          t          t          j        dd¦  «         t          t          t          j        dd¦  «         t          t          t          j        dd¦  «         t          t          t          j        dd¦  «         t          t          t          j        dd¦  «         t          t          j        dd¦  «        g d¢¦  «         t          t          j        g d¢d¦  «        d¦  «         t          j        g d¢g d¢g¦  «        }t          t          j        |d¦  «        g d¢¦  «         t          t          j        |dd¬¦  «        g d¢¦  «         t          t          j        |dd¬ ¦  «        g d!¢¦  «         t          t          j        |d"d#¬ ¦  «        g d$¢¦  «         t          t          j        d%d&¦  «        d'¦  «         t          t          j        t          j        g d¢¦  «        d¦  «        g d¢g d¢g¦  «         t          t          j        t          j        g d¢¦  «        dd¬¦  «        g d¢g d¢g¦  «         t          t          j        d'd&¦  «        g d%¢¦  «         d S )(Né   ©r   r   ©é   r   )ÚindicesÚshape)r   Úhape)r   éþ   )é   é^   )Úims)Údims)r   éB   éÿÿÿÿg      à?é   )éýÿÿÿr   )r   r   )r   r(   ©r   r   )çš™™™™™¹?g        é.   )r'   é   é   ©r   r   r'   )r,   r-   r-   )r'   é   r   )é   r-   )é   é)   é%   ÚF©Úorder)é   r2   é   )r'   r-   Úclip©Úmode)r1   é   é   ©r'   r'   )r9   Úwrap)é   r8   r8   )r,   r   r'   r   )r-   r0   é   é	   iU  )r   ÚnpÚunravel_indexr   Ú	TypeErrorÚravel_multi_indexÚ
ValueErrorÚarray)ÚselfÚarrs     ú_/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/numpy/lib/tests/test_index_tricks.pyÚ
test_basicz TestRavelUnravelIndex.test_basic   s1  € Ý•RÔ% a¨Ñ0Ô0°&Ñ9Ô9Ð9õ 	•RÔ%¨aØ,2ð4ñ 4ô 4à&,ñ	.ô 	.ð 	.õ �9Ñ%Ô%ð 	5ð 	5ÝÔ Q¨VÐ4Ñ4Ô4Ð4ð	5ð 	5ð 	5ñ 	5ô 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5øøøð 	5ð 	5ð 	5ð 	5õ �9Ñ%Ô%ð 	-ð 	-ÝÔ˜Q VÐ,Ñ,Ô,Ð,ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-õ �9Ñ%Ô%ð 	0ð 	0ÝÔ˜S hÐ/Ñ/Ô/Ð/ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0õ �9Ñ%Ô%ð 	1ð 	1ÝÔ˜S xÐ0Ñ0Ô0Ð0ð	1ð 	1ð 	1ñ 	1ô 	1ð 	1ð 	1ð 	1ð 	1ð 	1ð 	1øøøð 	1ð 	1ð 	1ð 	1õ 	•RÔ)¨&°&Ñ9Ô9¸1Ñ=Ô=Ð=Ý•RÔ% c¨8Ñ4Ô4°gÑ>Ô>Ð>Ý•RÔ)¨'°8Ñ<Ô<¸cÑBÔBÐBÝ•j¥"Ô"2°B¸Ñ?Ô?Ð?Ý•i¥Ô!1°3¸Ñ?Ô?Ð?Ý•j¥"Ô"2°A°vÑ>Ô>Ð>Ý•j¥"Ô"6¸ÀÑHÔHÐHÝ•j¥"Ô"6¸ÀÑGÔGÐGÝ•j¥"Ô"6¸ÀÑHÔHÐHÝ•j¥"Ô"6¸ÀÑGÔGÐGÝ•i¥Ô!5°yÀ&ÑIÔIÐIå•RÔ%Ð&9¸9ÑEÔEÀyÀyÀyÑQÔQÐQÝÝÔ    ¨IÑ6Ô6Ð8Kñ	Mô 	Mð 	Mõ Œh˜	˜	˜	 9 9 9Ð-Ñ.Ô.ˆÝ•RÔ)¨#¨vÑ6Ô6¸¸¸ÑEÔEÐEÝÝÔ   f°CÐ8Ñ8Ô8¸,¸,¸,ñ	Hô 	Hð 	HåÝÔ   f°6Ð:Ñ:Ô:¸L¸L¸Lñ	Jô 	Jð 	Jå•RÔ)¨#¨vÐ<LÐMÑMÔMØ!�\�\ñ	#ô 	#ð 	#å•RÔ)¨,¸ÑEÔEÀtÑLÔLÐLå•RÔ%¥b¤h¨|¨|¨|Ñ&<Ô&<¸fÑEÔEØ�i�i   Ð+ñ	-ô 	-ð 	-åÝÔ�RœX l l lÑ3Ô3°VÀ3ÐGÑGÔGØˆYˆY˜	˜	˜	Ð"ñ	$ô 	$ð 	$õ 	•RÔ% d¨LÑ9Ô9¸<¸<¸<ÑHÔHÐHÐHÐHsH   ÁA?Á?BÂBÂCÃCÃCÃ DÄDÄ
DÄ"EÅE	ÅE	c           	      óÈ  — d}d}t          t          |t          j        g d¦  «         t          t          |t          j        dd¦  «         t          t          |t          j        t          j        g ¦  «        d¦  «         t          t          j        t          j        g t          ¬¦  «        d¦  «        g g g g¦  «         t          t          |t          j        g g fd¦  «         t          t          |t          j        g dgfd¦  «         t          t          |t          j        t          j        g ¦  «        t          j        g ¦  «        fd¦  «         t          t          j        t          j        g t          ¬¦  «        t          j        g t          ¬¦  «        fd¦  «        g ¦  «         t          t          j        t          j        g g gt          ¬¦  «        d¦  «        g ¦  «         d S )	Nz9indices must be integral: the provided empty sequence waszonly int indices permitted)é
   r,   r/   © ©Údtype©rN   r,   Úabc)r/   r,   )r   rE   rC   rD   rH   r   ÚintrF   )rI   Úmsg1Úmsg2s      rK   Útest_empty_indicesz(TestRavelUnravelIndex.test_empty_indicesU   sµ  € ØJˆØ+ˆÝ�I t­RÔ-=¸rÀ:ÑNÔNÐNÝ�I t­RÔ-=¸rÀ:ÑNÔNÐNÝ�I t­RÔ-=½r¼xÈ¹|¼|Ø&ñ	(ô 	(ð 	(å•RÔ%¥b¤h¨r½Ð&=Ñ&=Ô&=¸zÑJÔJØ˜"˜b�\ñ	#ô 	#ð 	#å�I t­RÔ-AÀBÈÀ8Ø#ñ	%ô 	%ð 	%å�I t­RÔ-AÀBÈÈÀ=Ø#ñ	%ô 	%ð 	%å�I t­RÔ-AÝ”X˜b‘\”\¥2¤8¨B¡<¤<Ð0°&ñ	:ô 	:ð 	:å•RÔ)Ý”˜"¥CÐ(Ñ(Ô(­"¬(°2½SÐ*AÑ*AÔ*AÐBÀFñLô LØMOñ	Qô 	Qð 	Qå•RÔ)­"¬(°B¸°8Å3Ð*GÑ*GÔ*GØñô Ø ñ	"ô 	"ð 	"ð 	"ð 	"ó    c                 ó„  — t           j        t           j        k    r<ddgddgddgddgdd	gddgd
dgf}t          t          j        |d¦  «        ddg¦  «         t          t          t           j        dd¦  «         d
gd
gf}t          j        t           j        ¦  «        j	        dz  }t          t          j        ||df¦  «        d
g¦  «         t          t          t           j        ||dz   df¦  «         t          t          j        ||dfd¬¦  «        d
g¦  «         t          t          t           j        ||dz   dfd¬¦  «         d S )Nr   é   r,   r/   éu   r=   r   iK	  i  r   )r2   r0   éx   é$   i’
  rA   r-   l   ¼zá l   nm )l   ÿÿ l       r4   r5   )
rC   ÚintpÚint64r   rF   r   rG   rD   ÚiinfoÚmax)rI   rJ   Ú	dummy_arrÚhalf_maxs       rK   Útest_big_indicesz&TestRavelUnravelIndex.test_big_indicesi   sx  € åŒ7•b”hÒÐØ�r�7˜Q ˜F Q¨ H¨r°1¨gØ˜$�< ! Q ¨!¨Q¨ð1ˆCåÝÔ$ SÐ*FÑGÔGØ˜\Ð*ñ,ô ,ð ,õ
 	•j¥"Ô"2°AÐ7MÑNÔNÐNð �S˜1˜#�Jˆ	Ý”8�BœGÑ$Ô$Ô(¨AÑ-ˆÝÝÔ  ¨X°q¨MÑ:Ô:¸Q¸Cñ	Aô 	Að 	Aå•jÝÔ  )¨h¸©l¸AÐ->ñ	@ô 	@ð 	@åÝÔ  ¨X°q¨MÀÐEÑEÔEÈÀsñ	Lô 	Lð 	Lå•jÝÔ  )¨h¸©l¸AÐ->Àcð	Kñ 	Kô 	Kð 	Kð 	Kð 	KrX   c           	      ó&  — t           j        t           j        t           j        t           j        t           j        t           j        fD �]Ê}t          j        g d¢g d¢g|¬¦  «        }d}d|d         z  |d         z   }t          t          j	        ||¦  «        |¦  «         t          |t          j
        ||¦  «        ¦  «         |d         d|d         z  z   }t          t          j	        ||d	¬
¦  «        |¦  «         t          |t          j
        ||d	¬
¦  «        ¦  «         t          j        g d¢g d¢g d¢g|¬¦  «        }d}dd|d         z  |d         z   z  |d         z   }t          t          j	        ||¦  «        |¦  «         t          |t          j
        ||¦  «        ¦  «         |d         d|d         d|d         z  z   z  z   }t          t          j	        ||d	¬
¦  «        |¦  «         t          |t          j
        ||d	¬
¦  «        ¦  «         �ŒÌd S )N)r   r   r   r   r,   r'   )r   r-   r   r,   r   r   rP   )r/   rA   rA   r   r   r/   r4   r5   )r   r,   r   r   rB   r/   )r/   rA   rN   rN   r   )rC   Úint16Úuint16Úint32Úuint32r_   Úuint64rH   r   rF   rD   )rI   rQ   Úcoordsr   Úuncoordss        rK   Útest_dtypesz!TestRavelUnravelIndex.test_dtypes�   s5  € å”h¥¤	­2¬8Ý”i¥¤­2¬9ð6ð 	Oñ 	OˆEå”XØ#Ð#Ð#Ð%7Ð%7Ð%7Ð8ÀðGñ Gô GˆFàˆEØ˜6 !œ9‘} v¨a¤yÑ0ˆHÝ�Ô-¨f°eÑ<Ô<¸hÑGÔGÐGÝ˜¥Ô!1°(¸EÑ!BÔ!BÑCÔCÐCØ˜a”y 1 v¨a¤y¡=Ñ0ˆHÝÝÔ$ V¨U¸#Ð>Ñ>Ô>ÀñJô Jð Jå˜¥Ô!1°(¸EÈÐ!MÑ!MÔ!MÑNÔNÐNå”XØ#Ð#Ð#Ð%7Ð%7Ð%7Ð9KÐ9KÐ9KÐLØðñ ô ˆFð ˆEØ˜Q ¨¤™]¨V°A¬YÑ6Ñ7¸&À¼)ÑCˆHÝ�Ô-¨f°eÑ<Ô<¸hÑGÔGÐGÝ˜¥Ô!1°(¸EÑ!BÔ!BÑCÔCÐCØ˜a”y 1¨¨q¬	°A¸¸q¼	±MÑ(AÑ#BÑBˆHÝÝÔ$ V¨U¸#Ð>Ñ>Ô>ÀñJô Jð Jå˜¥Ô!1°(¸EÈÐ!MÑ!MÔ!MÑNÔNÐNÑNð/	Oð 	OrX   c                 ó<  — t          t          j        g d¢dd¬¦  «        t          j        g d¢d¦  «        ¦  «         t          t          j        g d¢dd¬¦  «        t          j        g d¢d¦  «        ¦  «         t          t          t          j        g d¢d¦  «         d S )N)r/   r   r&   r   )r'   r,   r0   r@   r?   r:   )r   r   r-   r   )r?   Úraiser9   ro   )r   r   r   r   )r   rC   rF   r   rG   ©rI   s    rK   Útest_clipmodesz$TestRavelUnravelIndex.test_clipmodesœ   sÆ   € åÝÔ    °ÀFÐKÑKÔKÝÔ    ¨}Ñ=Ô=ñ	?ô 	?ð 	?õ 	•RÔ)¨-¨-¨-¸ð0PðQñ Qô Qõ Ô)¨,¨,¨,¸ÑFÔFñ	Hô 	Hð 	Hõ 	Ý�Ô,¨m¨m¨m¸]ñ	Lô 	Lð 	Lð 	Lð 	LrX   c                 óž   — t          j        g d¢d¦  «        \  }}t          |j        j        ¦  «         t          |j        j        ¦  «         d S )N©r   r   r,   )r'   r/   )rC   rD   r   ÚflagsÚ	writeable)rI   ÚxÚys      rK   Útest_writeabilityz'TestRavelUnravelIndex.test_writeability¨   sH   € åÔ 	 	 	¨6Ñ2Ô2‰ˆˆ1Ý�”Ô!Ñ"Ô"Ð"Ý�”Ô!Ñ"Ô"Ð"Ð"Ð"rX   c                 óÜ   — t          j        dd¦  «        }t          |d¦  «         t          t          dt           j        dgd¦  «         t          t          dt           j        dgd¦  «         d S )Nr   rO   z0d arrayzout of boundsr   )rC   rD   r   r   rG   ©rI   rv   s     rK   Útest_0dzTestRavelUnravelIndex.test_0d®   sp   € åÔ˜Q Ñ#Ô#ˆÝ�Q˜ÑÔÐå�J¨
µBÔ4DÀqÀcÈ2ÑNÔNÐNÝÝ˜­Ô)9¸A¸3Àñ	Dô 	Dð 	Dð 	Dð 	DrX   r;   )r9   r?   ro   c                 óN  — t          j        t          j        dt           j        ¬¦  «        d|¬¦  «        }|j        dk    sJ ‚t          t          ¦  «        5  t          j        t          j        dt           j        ¬¦  «        d|¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)r,   r   rP   ©r   r   r   r:   ©r   )r,   r   )rC   rF   Úzerosr^   r   r   rG   )rI   r;   Úress      rK   Útest_empty_array_ravelz,TestRavelUnravelIndex.test_empty_array_ravel·   s  € åÔ"Ý”H˜V­2¬7Ð3Ñ3Ô3°YÀTðKñ Kô KˆàŒy˜DÒ Ð Ð Ð å�:Ñ&Ô&ð 	Kð 	KÝÔ Ý”H˜V­2¬7Ð3Ñ3Ô3°YÀTðKñ Kô Kð Kð	Kð 	Kð 	Kñ 	Kô 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Køøøð 	Kð 	Kð 	Kð 	Kð 	Kð 	Ks   Á6BÂBÂ!Bc                 óR  — t          j        t          j        dt           j        ¬¦  «        d¦  «        }t	          |¦  «        dk    sJ ‚t          d„ |D ¦   «         ¦  «        sJ ‚t          t          ¦  «        5  t          j        dgd¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   rP   r}   r,   c              3   ó,   K  — | ]}|j         d k    V — ŒdS )r~   N©r   )Ú.0Úas     rK   ú	<genexpr>zATestRavelUnravelIndex.test_empty_array_unravel.<locals>.<genexpr>Å   s(   è è € Ð0Ð0 q�1”7˜d’?Ð0Ð0Ð0Ð0Ð0Ð0rX   r   )rC   rD   r   r^   ÚlenÚallr   rG   )rI   r€   s     rK   Útest_empty_array_unravelz.TestRavelUnravelIndex.test_empty_array_unravelÁ   sâ   € ÝÔ�rœx¨µ´Ð9Ñ9Ô9¸9ÑEÔEˆå�3‰xŒx˜1Š}ˆ}ˆ}ˆ}ÝÐ0Ð0¨CÐ0Ñ0Ô0Ñ0Ô0Ð0Ð0Ð0å�:Ñ&Ô&ð 	-ð 	-ÝÔ˜a˜S )Ñ,Ô,Ð,ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-ð 	-ð 	-s   Á8BÂB Â#B c                 ór   — t          j        t          j        g d¢gt           j        ¬¦  «        d¦  «         d S )N)r   r   r   r   rP   )r'   )rC   rD   rH   ri   rp   s    rK   Útest_regression_size_1_indexz2TestRavelUnravelIndex.test_regression_size_1_indexÊ   s4   € õ 	Ô�œ < < < .½¼	ÐBÑBÔBÀDÑIÔIÐIÐIÐIrX   N)Ú__name__Ú
__module__Ú__qualname__rL   rW   rd   rm   rq   rx   r{   ÚpytestÚmarkÚparametrizer�   rŠ   rŒ   rO   rX   rK   r   r      sé   € € € € € ð5Ið 5Ið 5Iðn"ð "ð "ð(Kð Kð Kð0Oð Oð Oð6
Lð 
Lð 
Lð#ð #ð #ðDð Dð Dð „[×Ò˜VÐ%>Ð%>Ð%>Ñ?Ô?ðKð Kñ @Ô?ðKð-ð -ð -ðJð Jð Jð Jð JrX   r   c                   ó„   — e Zd Zd„ Zd„ Zd„ Zd„ Zej         	                    dddg¦  «        d„ ¦   «         Z
d	„ Zd
„ Zd„ ZdS )ÚTestGridc                 óö  — t           ddd…         }t           ddd…         }t          |j        dk    ¦  «         t          |j        dk    ¦  «         t          |d         dk    ¦  «         t          |d         d¦  «         t          |d         dk    ¦  «         t          |d         |d         z
  dd¦  «         t          |d         |d         d	z   d¦  «         t          |d         |d         z
  d
d¦  «         d S )Nr&   r   ù              $@r*   )rN   )é   r   é   ggfffffþ?gÇqÇqÌ?)r	   r   r   r   )rI   r†   Úbs      rK   rL   zTestGrid.test_basicÐ   sê   € Ý�"�Q�s�(ŒOˆÝ�"�Q�s�(ŒOˆÝ�”˜5Ò Ñ!Ô!Ð!Ý�”˜5Ò Ñ!Ô!Ð!Ý��!”˜’
ÑÔÐÝ˜A˜bœE 1Ñ%Ô%Ð%Ý��!”˜’
ÑÔÐÝ˜A˜aœD 1 Q¤4™K¨¨bÑ1Ô1Ð1Ý˜A˜bœE 1 Q¤4¨(¡?°BÑ7Ô7Ð7Ý˜A˜aœD 1 Q¤4™K¨°BÑ7Ô7Ð7Ð7Ð7rX   c                 ó˜   — t          j        ddd¬¦  «        \  }}t          |d¦  «         t          |t          ddd…         d¦  «         d S )Nr   rN   T)Úretstepg9/§àåÄ?y              I@r8   )rC   Úlinspacer   r   r	   )rI   rw   Ústs      rK   Útest_linspace_equivalencez"TestGrid.test_linspace_equivalenceÜ   sN   € Ý”˜A˜r¨4Ð0Ñ0Ô0‰ˆˆ2Ý˜B Ñ)Ô)Ð)Ý! !¥U¨1¨R°¨8¤_°bÑ9Ô9Ð9Ð9Ð9rX   c                 ód  — t           ddd…ddd…f         }t           ddd…ddd…f         }t          |j        dk    ¦  «         t          |j        d	k    ¦  «         t          |d
         d
d d …f         t	          j        dd¦  «         ¦  «         t          |d         d d …d
f         dt	          j        dd¦  «        z  ¦  «         t          |d
         dd d …f         t	          j        dd¦  «        d¦  «         t          |d         d d …df         dt	          j        dd¦  «        z  d¦  «         t          |d
dd d …f         |d
d
d d …f         z
  dt	          j        dd¦  «        z  d¦  «         t          |dd d …df         |dd d …d
f         z
  dt	          j        dd¦  «        z  d¦  «         d S )Nr&   r   r–   éþÿÿÿr   r*   gš™™™™™É?)r   rN   rN   )r   r—   r—   r   rN   Údr˜   r—   )r	   r   r   r   rC   Úonesr   )rI   Úcr¡   s      rK   Útest_ndzTestGrid.test_ndá   sÃ  € Ý�"�Q�s�(˜B˜q ˜HÐ$Ô%ˆÝ�"�Q�s�(˜B˜q ˜HÐ$Ô%ˆÝ�”˜;Ò&Ñ'Ô'Ð'Ý�”˜;Ò&Ñ'Ô'Ð'Ý˜1˜Qœ4  1 1 1 œ:­¬°°CÑ(8Ô(8Ð'8Ñ9Ô9Ð9Ý˜1˜Qœ4    1 œ: r­B¬G°B¸Ñ,<Ô,<Ñ'<Ñ=Ô=Ð=Ý! ! A¤$ r¨1¨1¨1 u¤+­r¬w°r¸3Ñ/?Ô/?ÀÑDÔDÐDÝ! ! A¤$ q q q¨" u¤+¨qµ2´7¸2¸sÑ3CÔ3CÑ/CÀRÑHÔHÐHÝ! ! A q¨!¨!¨! G¤*¨q°°A°q°q°q°¬zÑ"9Ø"%­¬°°CÑ(8Ô(8Ñ"8¸"ñ	>ô 	>ð 	>å! ! A q q q¨! G¤*¨q°°A°A°A°q°¬zÑ"9Ø"%­¬°°CÑ(8Ô(8Ñ"8¸"ñ	>ô 	>ð 	>ð 	>ð 	>rX   c                 óÂ   — t           ddd…ddd…f         }t          ddd…ddd…f         }t          j        |Ž }t	          ||¦  «        D ]\  }}t          ||¦  «         Œd S )Nr&   r   r–   r    r   )r	   r   rC   Úbroadcast_arraysÚzipr   )rI   Ú	grid_fullÚgrid_sparseÚgrid_broadcastÚfr™   s         rK   Útest_sparsezTestGrid.test_sparseï   s�   € Ý˜"˜Q˜s˜( B q¨ HÐ,Ô-ˆ	Ý˜B˜q ˜H b¨¨3 hÐ.Ô/ˆõ Ô,¨kÐ:ˆÝ˜	 >Ñ2Ô2ð 	ð 	‰DˆAˆqÝ˜˜AÑÔÐÐð	ð 	rX   zstart, stop, step, expected)NrN   r–   )éÈ   rN   )iöÿÿÿr—   N)i  é   c                 ó¼   — t           |||…|||…f         }t           |||…         }t          |j        |d         ¦  «         t          |j        |d         ¦  «         d S )Nr   r   )r	   r   Úsize)rI   ÚstartÚstopÚstepÚexpectedÚgridÚ
grid_smalls          rK   Útest_mgrid_size_none_handlingz&TestGrid.test_mgrid_size_none_handlingø   sc   € õ �U˜4 �_ e¨D° oÐ5Ô6ˆõ ˜5  d˜?Ô+ˆ
Ý�T”Y ¨¤Ñ,Ô,Ð,Ý�Z”_ h¨q¤kÑ2Ô2Ð2Ð2Ð2rX   c                 óB  — t           ddd…f         }t           t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        …f         }t          ||¦  «         |j        t          j        k    sJ ‚|j        t          j        k    sJ ‚t           ddd…         }t           t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        …         }t          |j        t          j        k    ¦  «         t          ||¦  «         d S )Nr*   ç…ëQ¸Õ?)r	   rC   Úfloat32r   rQ   Úfloat64r   )rI   Úgrid64Úgrid32s      rK   Útest_accepts_npfloatingz TestGrid.test_accepts_npfloating  sæ   € å�s˜4 �|�}Ô&ˆÝ•r”z #‘”¥r¤z°$Ñ'7Ô'7½¼
À3¹¼ÐGÐHÔJˆÝ! &¨&Ñ1Ô1Ð1àŒ|�rœzÒ)Ð)Ð)Ð)ØŒ|�rœzÒ)Ð)Ð)Ð)õ �s˜4 �|Ô$ˆÝ•r”z #‘”¥r¤z°$Ñ'7Ô'7½¼
À3¹¼ÐGÔHˆÝ�”¥¤
Ò*Ñ+Ô+Ð+Ý! &¨&Ñ1Ô1Ð1Ð1Ð1rX   c                 óB  — t           ddd…f         }t           t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        …f         }t          |j        t          j        k    ¦  «         t          ||¦  «         t           dt          j        d¦  «        d…         }t           dt          j        d¦  «        d…f         }t          |j        |j        cxk    ot          j        k    nc ¦  «         t          ||d         ¦  «         t           ddd…         }t           t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        …         }t          |j        t          j        k    ¦  «         t          ||¦  «         d S )Nr*   r¹   r   r   y        333333@)r	   rC   Ú
longdoubler   rQ   r   r   )rI   r¼   Úgrid128Ú
grid128c_aÚ
grid128c_bs        rK   Útest_accepts_longdoublez TestGrid.test_accepts_longdouble  sd  € å�s˜4 �|�}Ô&ˆÝÝŒM˜#ÑÔ�rœ}¨TÑ2Ô2µ2´=ÀÑ3EÔ3EÐEÐFô
ˆõ 	�”¥¤Ò.Ñ/Ô/Ð/Ý! &¨'Ñ2Ô2Ð2å˜1�Rœ]¨1Ñ-Ô-¨dÐ2Ô3ˆ
Ý˜1�Rœ]¨1Ñ-Ô-¨dÐ2Ð3Ô5ˆ
Ý�
Ô  JÔ$4ÐEÐEÒEÐE½¼ÒEÐEÐEÐEÑFÔFÐFÝ˜: z°!¤}Ñ5Ô5Ð5õ �s˜4 �|Ô$ˆÝÝŒM˜#ÑÔ�rœ}¨TÑ2Ô2µ2´=ÀÑ3EÔ3EÐEô
ˆõ 	�”¥¤Ò.Ñ/Ô/Ð/Ý! &¨'Ñ2Ô2Ð2Ð2Ð2rX   c           	      óê  — t          t          ddd…f         t          ddt          j        d¦  «        …f         ¦  «         t          t          ddd…         t          ddt          j        d¦  «        …         ¦  «         t          ddd…         }t          ddd…f         d         }t	          |j        |j        cxk    ot          j        k    nc ¦  «         t          ||¦  «         t          ddt          j        d¦  «        …         }t          ddt          j        d¦  «        …f         d         }t	          |j        |j        cxk    ot          j	        k    nc ¦  «         t          ||¦  «         d S )Nr*   g333333Ó?y              @y        ffffff
@r   )
r   r	   rC   Ú	complex64r   rQ   r»   r   ÚclongdoublerÀ   )rI   Úgrid64_aÚgrid64_bÚ	grid128_aÚ	grid128_bs        rK   Útest_accepts_npcomplexfloatingz'TestGrid.test_accepts_npcomplexfloating-  sf  € å!Ý�#�c˜"�*�+Ô¥ s¨3­r¬|¸BÑ/?Ô/?Ð'?Ð'@Ô!Bñ	
ô 	
ð 	
õ
 	"Ý�#�c˜"�*Ô�u S¨­R¬\¸"Ñ-=Ô-=Ð%=Ô>ñ	
ô 	
ð 	
õ
 ˜˜S ˜Ô&ˆÝ˜˜S ˜˜Ô(¨Ô+ˆÝ�” (¤.Ð>Ð>Ò>Ð>µB´JÒ>Ð>Ð>Ð>Ñ?Ô?Ð?Ý˜8 XÑ.Ô.Ð.å˜#˜c¥"¤.°Ñ"6Ô"6Ð6Ô7ˆ	Ý˜#˜c¥"¤.°Ñ"6Ô"6Ð6Ð7Ô9¸!Ô<ˆ	Ý�	” 9¤?ÐCÐCÒCÐCµb´mÒCÐCÐCÐCÑDÔDÐDÝ˜8 XÑ.Ô.Ð.Ð.Ð.rX   N)r�   rŽ   r�   rL   rž   r¤   r¬   r�   r‘   r’   r·   r¾   rÄ   rÌ   rO   rX   rK   r”   r”   Ï   s»   € € € € € ð
8ð 
8ð 
8ð:ð :ð :ð
>ð >ð >ðð ð ð „[×ÒÐ:Ø"Ø#ð=
ñ ô ð
3ð 
3ñ	ô ð
3ð2ð 2ð 2ð3ð 3ð 3ð,/ð /ð /ð /ð /rX   r”   c                   ó2   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestConcatenatorc                 óÒ   — t          t          d         t          j        g d¢¦  «        ¦  «         t          j        d¦  «        }t          |dd|f         }t          |g d¢¦  «         d S )N)r   r   r,   r'   r/   r-   r/   r   )r   r   r   r   r   r   r   r   r   r   r   r   )r   r   rC   rH   r¢   )rI   r™   r£   s      rK   Útest_1dzTestConcatenator.test_1dE  sd   € Ý�2Ð.Ô/µ´Ð:LÐ:LÐ:LÑ1MÔ1MÑNÔNÐNÝŒG�A‰JŒJˆÝˆq�!�Q˜ˆzŒNˆÝ˜1ÐBÐBÐBÑCÔCÐCÐCÐCrX   c                 óX   — t           ddd…f         }t          |j        dk    ¦  «         d S )Ng333333$@r   rN   Úf8)r   r   rQ   ©rI   Úgs     rK   Útest_mixed_typez TestConcatenator.test_mixed_typeK  s-   € Ýˆt�Q�r�TˆzŒNˆÝ�”˜4’Ñ Ô Ð Ð Ð rX   c                 ó¦   — t           dt          j        dg¦  «        t          j        g d¢¦  «        df         }t          |j        dk    ¦  «         d S )Ng333333$Àr   )r   r,   r'   g      $@rÒ   )r   rC   rH   r   rQ   rÓ   s     rK   Útest_more_mixed_typez%TestConcatenator.test_more_mixed_typeO  sG   € Ýˆu•b”h ˜s‘m”m¥R¤X¨i¨i¨iÑ%8Ô%8¸$Ð>Ô?ˆÝ�”˜4’Ñ Ô Ð Ð Ð rX   c                 óÊ   — t           ddd…         }t          |j        dk    ¦  «         t           ddt          j        d¦  «        …         }t          |j        dk    ¦  «         d S )Nr   r]   y              Y@)éd   )r   r   r   rC   rÆ   rÓ   s     rK   Útest_complex_stepz"TestConcatenator.test_complex_stepS  s^   € åˆq��DˆyŒMˆÝ�”˜6Ò!Ñ"Ô"Ð"õ ˆq�•B”L Ñ&Ô&Ð&Ô'ˆÝ�”˜6Ò!Ñ"Ô"Ð"Ð"Ð"rX   c                 ó  — t           j                             dd¦  «        }t           j                             dd¦  «        }t          d||f         }t	          |j        dk    ¦  «         t          |d d …d d…f         |¦  «         t          |d d …dd …f         |¦  «         t          ||f         }t	          |j        dk    ¦  «         t          |d d…d d …f         |¦  «         t          |dd …d d …f         |¦  «         d S )Nr/   Ú1)r/   rN   )rN   r/   )rC   ÚrandomÚrandr   r   r   r   )rI   r™   r£   r¡   s       rK   Útest_2dzTestConcatenator.test_2d\  sø   € ÝŒI�NŠN˜1˜aÑ Ô ˆÝŒI�NŠN˜1˜aÑ Ô ˆÝˆs�A�qˆyŒMˆÝ�”˜7Ò"Ñ#Ô#Ð#Ý˜1˜Q˜Q˜Q   ˜Uœ8 QÑ'Ô'Ð'Ý˜1˜Q˜Q˜Q   ˜Uœ8 QÑ'Ô'Ð'Ýˆq�!ˆtŒHˆÝ�”˜7Ò"Ñ#Ô#Ð#Ý˜1˜R˜a˜R   ˜Uœ8 QÑ'Ô'Ð'Ý˜1˜Q˜R˜R   ˜Uœ8 QÑ'Ô'Ð'Ð'Ð'rX   c                 ó6  — t          t          dt          j        d¦  «        df         g d¢¦  «         t          t          g d¢t          j        d¦  «        f         g d¢¦  «         t          t          t          j        d¦  «        g d¢f         g d¢¦  «         d S )Nr   r   r   ©r   r   r   r,   )r   r   r   r,   rs   )r   r   rC   rH   rp   s    rK   r{   zTestConcatenator.test_0dh  s„   € Ý•R˜�2œ8 A™;œ;¨Ð)Ô*¨I¨I¨IÑ6Ô6Ð6Ý•R˜	˜	˜	¥2¤8¨A¡;¤;Ð.Ô/°°°Ñ>Ô>Ð>Ý•R�œ ™œ Y Y YÐ.Ô/°°°Ñ>Ô>Ð>Ð>Ð>rX   N)	r�   rŽ   r�   rÐ   rÕ   r×   rÚ   rß   r{   rO   rX   rK   rÎ   rÎ   D  sq   € € € € € ðDð Dð Dð!ð !ð !ð!ð !ð !ð#ð #ð #ð
(ð 
(ð 
(ð?ð ?ð ?ð ?ð ?rX   rÎ   c                   ó   — e Zd Zd„ ZdS )ÚTestNdenumeratec                 ó’   — t          j        ddgddgg¦  «        }t          t          t	          |¦  «        ¦  «        g d¢¦  «         d S )Nr   r   r,   r'   ))©r   r   r   ))r   r   r   )r   r,   ))r   r   r'   )rC   rH   r   Úlistr
   ©rI   r†   s     rK   rL   zTestNdenumerate.test_basico  sX   € ÝŒH�q˜!�f˜q !˜fÐ%Ñ&Ô&ˆÝ•T�+ a™.œ.Ñ)Ô)ØIÐIÐIñ	Kô 	Kð 	Kð 	Kð 	KrX   N)r�   rŽ   r�   rL   rO   rX   rK   rã   rã   n  s(   € € € € € ðKð Kð Kð Kð KrX   rã   c                   ó   — e Zd Zd„ Zd„ ZdS )ÚTestIndexExpressionc                 óÚ   — t          j        d¦  «        }t          |d d…         |t          d d…                  ¦  «         t          |d d…         |t          d d…                  ¦  «         d S )Nr   r&   )rC   Úaranger   r   r   rç   s     rK   Útest_regression_1z%TestIndexExpression.test_regression_1v  s^   € åŒI�a‰LŒLˆÝ�Q�s˜�s”V˜Q�r # 2 #œwœZÑ(Ô(Ð(Ý�Q�s˜�s”V˜Q�y¨¨"¨œ~Ô.Ñ/Ô/Ð/Ð/Ð/rX   c           	      ó,  — t           j                             ddd¦  «        }t          |d d …d d…ddgf         |t          d d …d d…ddgf                  ¦  «         t          |d d …d d…ddgf         |t
          d d …d d…ddgf                  ¦  «         d S )Nr'   r/   r-   r,   r   r   )rC   rÝ   rÞ   r   r   r   rç   s     rK   Útest_simple_1z!TestIndexExpression.test_simple_1|  s¥   € ÝŒI�NŠN˜1˜a Ñ#Ô#ˆå�Q�q�q�q˜"˜1˜"˜q !˜f�}Ô% q­°1°1°1°b°q°b¸1¸a¸&°=Ô)AÔ'BÑCÔCÐCÝ�Q�q�q�q˜"˜1˜"˜q !˜f�}Ô% q­¨A¨A¨A¨r°¨r°A°q°6¨MÔ):Ô';Ñ<Ô<Ð<Ð<Ð<rX   N)r�   rŽ   r�   rì   rî   rO   rX   rK   ré   ré   u  s2   € € € € € ð0ð 0ð 0ð=ð =ð =ð =ð =rX   ré   c                   ó,   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestIx_c                 óš  — t          j        t          d¦  «        ¦  «        \  }t          |j        t           j        ¦  «         t          j        g ¦  «        \  }t          |j        t           j        ¦  «         t          j        t          j        g t           j        ¬¦  «        ¦  «        \  }t          |j        t           j        ¦  «         d S )Nr   rP   )rC   r   Úranger   rQ   r^   rH   rº   rç   s     rK   rì   zTestIx_.test_regression_1„  sŽ   € åŒV•E˜!‘H”HÑÔ‰ˆÝ�Q”W�bœgÑ&Ô&Ð&åŒV�B‰ZŒZ‰ˆÝ�Q”W�bœgÑ&Ô&Ð&õ ŒV•B”H˜R¥r¤zÐ2Ñ2Ô2Ñ3Ô3‰ˆÝ�Q”W�bœjÑ)Ô)Ð)Ð)Ð)rX   c           
      óÆ  ‡‡— d}t           t          j        fD ]ÈŠt          j        ˆfd„|D ¦   «         Ž }t	          t          ||¦  «        ¦  «        D ]Ž\  Š\  }}t          |j        ‰         |¦  «         t          t          ˆfd„t	          |j        ¦  «        D ¦   «         ¦  «        ¦  «         t          t          j
        |j        t          j        ¦  «        ¦  «         Œ�ŒÉd S )N)r'   r/   r,   r   c                 ó&   •— g | ]} ‰|¦  «        ‘ŒS rO   rO   )r…   ÚszÚfuncs     €rK   ú
<listcomp>z0TestIx_.test_shape_and_dtype.<locals>.<listcomp>”  s!   ø€ Ð7Ð7Ð7¨2˜d˜d 2™hœhÐ7Ð7Ð7rX   c              3   ó6   •K  — | ]\  }}|‰k    ¯|d k    V — ŒdS )r   NrO   )r…   ÚjÚshÚks      €rK   r‡   z/TestIx_.test_shape_and_dtype.<locals>.<genexpr>—  s/   øè è € ÐNÐN©¨¨2ÀqÈAÂvÀv˜B !šGÀvÀvÀvÀvÐNÐNrX   )rò   rC   rë   r   Ú	enumerater§   r   r   r   r‰   Ú
issubdtyperQ   Úinteger)rI   ÚsizesÚarraysr†   rõ   rö   rû   s        @@rK   Útest_shape_and_dtypezTestIx_.test_shape_and_dtype�  sä   øø€ Øˆå�BœIÐ&ð 	<ð 	<ˆDÝ”VÐ7Ð7Ð7Ð7°Ð7Ñ7Ô7Ð8ˆFÝ'­¨F°EÑ(:Ô(:Ñ;Ô;ð <ð <‘
�‘7�A�rÝ˜QœW QœZ¨Ñ,Ô,Ð,Ý�ÐNÐNÐNÐNµ¸1¼7Ñ1CÔ1CÐNÑNÔNÑNÔNÑOÔOÐOÝ�œ a¤g­r¬zÑ:Ô:Ñ;Ô;Ð;Ð;ð<ð	<ð 	<rX   c                 óŠ   — g d¢}t          j        |¦  «        \  }t          t          j        |¦  «        d         |¦  «         d S )N)TFTTr   )rC   Únonzeror   r   )rI   Úbool_aÚint_as      rK   Ú	test_boolzTestIx_.test_boolš  sA   € Ø*Ð*Ð*ˆÝ”˜FÑ#Ô#‰ˆÝ•R”V˜F‘^”^ AÔ&¨Ñ.Ô.Ð.Ð.Ð.rX   c                 óV   — g d¢g d¢g}t          t          t          j        |¦  «         d S )Nrs   ©r'   r/   r-   )r   rG   rC   r   )rI   Úidx2ds     rK   Útest_1d_onlyzTestIx_.test_1d_onlyŸ  s.   € Ø��˜I˜I˜IÐ&ˆÝ•j¥"¤&¨%Ñ0Ô0Ð0Ð0Ð0rX   c                 óò   — d}t          j        |¦  «        }t          ||¦  «        }t          |d         j        |df¦  «         t          |d         j        d|f¦  «         t          |j        |f¦  «         d S )Nr/   r   r   )rC   rë   r   r   r   )rI   Úlength_of_vectorrv   Úouts       rK   Útest_repeated_inputzTestIx_.test_repeated_input£  sy   € ØÐÝŒIÐ&Ñ'Ô'ˆÝ�!�Q‰iŒiˆÝ�S˜”V”\Ð$4°aÐ#8Ñ9Ô9Ð9Ý�S˜”V”\ AÐ'7Ð#8Ñ9Ô9Ð9å�Q”WÐ/Ð1Ñ2Ô2Ð2Ð2Ð2rX   N)r�   rŽ   r�   rì   r  r  r
  r  rO   rX   rK   rð   rð   ƒ  s_   € € € € € ð
*ð 
*ð 
*ð<ð <ð <ð/ð /ð /ð
1ð 1ð 1ð3ð 3ð 3ð 3ð 3rX   rð   c                  ó¢   — t           t          j        g d¢g¦  «        ddt          j        g d¢g¦  «        f         } t          | g d¢g¦  «         d S )Nrs   r   r  )r   r   r,   r   r   r'   r/   r-   )r   rC   rH   r   )r†   s    rK   Útest_c_r  ­  sU   € Ý
�2Œ8�Y�Y�Y�KÑ Ô  ! Q­¬°)°)°)°Ñ(=Ô(=Ð=Ô>€AÝ�Ð-Ð-Ð-Ð.Ñ/Ô/Ð/Ð/Ð/rX   c                   ó8   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	dS )	ÚTestFillDiagonalc           	      ó°   — t          j        dt          ¦  «        }t          |d¦  «         t	          |t          j        g d¢g d¢g d¢g¦  «        ¦  «         d S )N)r,   r,   r/   ©r/   r   r   ©r   r/   r   ©r   r   r/   ©rC   r   rT   r   r   rH   rç   s     rK   rL   zTestFillDiagonal.test_basic³  si   € ÝŒH�V�SÑ!Ô!ˆÝ�a˜ÑÔÐÝØ�rŒx˜˜˜Ø"˜˜Ø"˜˜ð$ñ %ô %ñ	ô 	ð 	ð 	ð 	rX   c                 óÚ   — t          j        dt          ¦  «        }t          |d¦  «         t	          |t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g
¦  «        ¦  «         d S )NrR   r/   r  r  r  ©r   r   r   r  rç   s     rK   Útest_tall_matrixz!TestFillDiagonal.test_tall_matrix¼  sš   € ÝŒH�W�cÑ"Ô"ˆÝ�a˜ÑÔÐÝØ�rŒx˜˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜ð	$ñ 	%ô 	%ñ	ô 	ð 	ð 	ð 	rX   c                 óÜ   — t          j        dt          ¦  «        }t          |dd¦  «         t	          |t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g
¦  «        ¦  «         d S )NrR   r/   Tr  r  r  r  r  rç   s     rK   Útest_tall_matrix_wrapz&TestFillDiagonal.test_tall_matrix_wrapÌ  sœ   € ÝŒH�W�cÑ"Ô"ˆÝ�a˜˜DÑ!Ô!Ð!ÝØ�rŒx˜˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜Ø"˜˜ð	$ñ 	%ô 	%ñ	ô 	ð 	ð 	ð 	rX   c           	      ó°   — t          j        dt          ¦  «        }t          |d¦  «         t	          |t          j        g d¢g d¢g d¢g¦  «        ¦  «         d S )N)r,   rN   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ç   s     rK   Útest_wide_matrixz!TestFillDiagonal.test_wide_matrixÜ  sp   € ÝŒH�W�cÑ"Ô"ˆÝ�a˜ÑÔÐÝØ�rŒxÐ7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7ð9ñ :ô :ñ	ô 	ð 	ð 	ð 	rX   c                 óÚ   — t          j        dt          ¦  «        }t          |d¦  «         t          j        g d¢¦  «        }t          t          j        |dk    ¦  «        ||||f¦  «         d S )N)r,   r,   r,   r,   r'   rá   r   )rC   r   rT   r   rH   r   Úwhere)rI   r†   Úis      rK   Útest_operate_4d_arrayz&TestFillDiagonal.test_operate_4d_arrayå  sb   € ÝŒH�\¥3Ñ'Ô'ˆÝ�a˜ÑÔÐÝŒH�Y�Y�YÑÔˆÝ•R”X˜a 1šfÑ%Ô%¨¨1¨a° |Ñ4Ô4Ð4Ð4Ð4rX   c                 ó¶   — t          j        dt          ¦  «        }t          t          d¦  «        5  t          |d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr,   úat least 2-dr/   ©rC   r   rT   r   rG   r   rç   s     rK   Útest_low_dim_handlingz&TestFillDiagonal.test_low_dim_handlingë  s—   € åŒH�Q�ÑÔˆÝ ¥¨^Ñ<Ô<ð 	 ð 	 Ý˜!˜QÑÔÐð	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ó   °AÁAÁAc                 ó¶   — t          j        dt          ¦  «        }t          t          d¦  «        5  t          |d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)r,   r,   r0   r,   úequal lengthr   r%  rç   s     rK   Útest_hetero_shape_handlingz+TestFillDiagonal.test_hetero_shape_handlingñ  s™   € õ ŒH�\¥3Ñ'Ô'ˆÝ ¥¨^Ñ<Ô<ð 	 ð 	 Ý˜!˜QÑÔÐð	 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 ð 	 ð 	 r'  N)
r�   rŽ   r�   rL   r  r  r  r"  r&  r*  rO   rX   rK   r  r  ²  s}   € € € € € ðð ð ðð ð ð ð ð ð ð ð ð5ð 5ð 5ð ð  ð  ð ð  ð  ð  ð  rX   r  c            
      óˆ  — t          d¦  «        } t          j        g d¢g d¢g d¢g d¢g¦  «        }d|| <   t          |t          j        g d¢g d¢g d	¢g d
¢g¦  «        ¦  «         t          dd¦  «        }t          j        dt
          ¦  «        }d||<   t          |t          j        ddgddggddgddggg¦  «        ¦  «         d S )Nr'   )r   r   r,   r'   )r/   r-   r0   rA   )rB   rN   r˜   r@   )r8   é   é   é   rÙ   )rÙ   r   r,   r'   )r/   rÙ   r0   rA   )rB   rN   rÙ   r@   )r8   r,  r-  rÙ   r   r,   )r   r   r   r   r   )r   rC   rH   r   r   rT   )Údir†   Úd3s      rK   Útest_diag_indicesr1  ù  s  € Ý	�a‰Œ€BÝ
Œ�,�,�,Ø�,�,Ø!�/�/Ø"Ð"Ð"ð$ñ 	%ô 	%€Að €A€b�EÝØ	�2Œ8�^�^�^Ø#�^�^Ø%Ð%Ð%Ø&Ð&Ð&ð(ñ )ô )ñ
ô 
ð 
õ 
�a˜Ñ	Ô	€Bõ 	Œ��CÑ Ô €AØ€A€b�EÝØ	�2Œ8�q˜!�fØ˜!�fðà˜!�fØ˜!�fððñ  ô  ñ
ô 
ð 
ð 
ð 
rX   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTestDiagIndicesFromc                 óð   — t           j                             d¦  «        }t          |¦  «        \  }}t          |t          j        d¦  «        ¦  «         t          |t          j        d¦  «        ¦  «         d S )Nr>   r'   )rC   rÝ   r   r   rë   )rI   rv   Úrr£   s       rK   Útest_diag_indices_fromz*TestDiagIndicesFrom.test_diag_indices_from  s^   € ÝŒI×Ò˜VÑ$Ô$ˆÝ  Ñ#Ô#‰ˆˆ1Ý˜1�bœi¨™lœlÑ+Ô+Ð+Ý˜1�bœi¨™lœlÑ+Ô+Ð+Ð+Ð+rX   c                 ó¨   — t          j        d¦  «        }t          t          d¦  «        5  t	          |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr0   r$  )rC   r¢   r   rG   r   rz   s     rK   Útest_error_small_inputz*TestDiagIndicesFrom.test_error_small_input  s‘   € ÝŒG�A‰JŒJˆÝ ¥¨^Ñ<Ô<ð 	!ð 	!Ý˜aÑ Ô Ð ð	!ð 	!ð 	!ñ 	!ô 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!øøøð 	!ð 	!ð 	!ð 	!ð 	!ð 	!s   ªAÁAÁAc                 ó´   — t          j        dt          ¦  «        }t          t          d¦  «        5  t          |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)r,   r,   r   r,   r)  )rC   r   rT   r   rG   r   rz   s     rK   Útest_error_shape_mismatchz-TestDiagIndicesFrom.test_error_shape_mismatch"  s•   € ÝŒH�\¥3Ñ'Ô'ˆÝ ¥¨^Ñ<Ô<ð 	!ð 	!Ý˜aÑ Ô Ð ð	!ð 	!ð 	!ñ 	!ô 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!øøøð 	!ð 	!ð 	!ð 	!ð 	!ð 	!s   °AÁAÁAN)r�   rŽ   r�   r6  r8  r:  rO   rX   rK   r3  r3    sA   € € € € € ð,ð ,ð ,ð!ð !ð !ð
!ð !ð !ð !ð !rX   r3  c                  óœ  — t          t          ddd¦  «        ¦  «        } d„ t          t          j        d¦  «        ¦  «        D ¦   «         }t          | |¦  «         t          t          d¦  «        ¦  «        } t          | |¦  «         t          t          d¦  «        ¦  «        } t          | t          t          d¦  «        ¦  «        ¦  «         t          t          ¦   «         ¦  «        } t          | dg¦  «         t          t          d¦  «        ¦  «        } t          | dg¦  «         t          t          dgŽ ¦  «        } t          | g ¦  «         d S )	Nr   r   r,   c                 ó   — g | ]\  }}|‘ŒS rO   rO   )r…   ÚixÚes      rK   r÷   z test_ndindex.<locals>.<listcomp>*  s   € ÐAÐAÐA‘u�r˜1�ÐAÐAÐArX   rs   ©r,   rO   r   )ræ   r   r
   rC   r   r   r   )rv   r´   s     rK   Útest_ndindexr@  (  s  € Ý�W�Q˜˜1ÑÔÑÔ€AØAÐA¥­B¬H°YÑ,?Ô,?Ñ @Ô @ÐAÑAÔA€HÝ�q˜(Ñ#Ô#Ð#å�W�YÑÔÑ Ô €AÝ�q˜(Ñ#Ô#Ð#õ 	�W�T‰]Œ]ÑÔ€AÝ�q�$�w q™zœzÑ*Ô*Ñ+Ô+Ð+õ 	�W‰YŒY‰Œ€AÝ��R�DÑÔÐå�W�R‰[Œ[ÑÔ€AÝ��R�DÑÔÐõ 	�W�q�cˆ]ÑÔ€AÝ��BÑÔÐÐÐrX   c                  óö   — t          t          j        dd¦  «        ¦  «        g k    sJ ‚t          t          j        ddd¦  «        ¦  «        g k    sJ ‚t          t          j        d¦  «        ¦  «        g k    sJ ‚dS )zNTest ndindex produces empty iterators for explicit
    zero-length dimensions.r   r,   r   N)ræ   rC   r   rO   rX   rK   Ú%test_ndindex_zero_dimensions_explicitrB  @  sw   € õ •”
˜1˜aÑ Ô Ñ!Ô! RÒ'Ð'Ð'Ð'Ý•”
˜1˜a Ñ#Ô#Ñ$Ô$¨Ò*Ð*Ð*Ð*Ý•”
˜1‘”ÑÔ "Ò$Ð$Ð$Ð$Ð$Ð$rX   Ú	bad_shapeg      @Ú2r   r,   )g       @r,   c                 ó¬   — t          j        t          ¦  «        5  t          t	          j        | ¦  «        ¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z1Test that non-integer dimensions raise TypeError.N)r�   ÚraisesrE   ræ   rC   r   )rC  s    rK   Ú#test_ndindex_non_integer_dimensionsrG  H  s’   € õ 
Œ•yÑ	!Ô	!ð $ð $õ 	�RŒZ˜	Ñ"Ô"Ñ#Ô#Ð#ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $ð $ð $ó   š"A	Á	AÁAc                  óÐ   — t          j        dd¦  «        } t          | ¦  «         t          j        t
          ¦  «        5  t          | ¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z<Test that StopIteration is raised properly after exhaustion.r   N)rC   r   ræ   r�   rF  ÚStopIterationÚnext)Úits    rK   Ú$test_ndindex_stop_iteration_behaviorrM  Q  s�   € å	Œ�A�qÑ	Ô	€Båˆ�H„H€Hå	Œ•}Ñ	%Ô	%ð ð ÝˆR‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   ¾AÁAÁ"Ac                  óò   — d} t          j        | Ž }t          j        | Ž }t          |¦  «         t          |¦  «         t          t          |¦  «        d¦  «         t          t          |¦  «        d¦  «         dS )z>Test that each ndindex instance creates independent iterators.©r   r,   rå   r)   N©rC   r   rK  r   )r   Úiter1Úiter2s      rK   Ú"test_ndindex_iterator_independencerS  [  sg   € à€EÝŒJ˜Ð€EÝŒJ˜Ð€Eåˆ�K„K€KÝˆ�K„K€Kå•�e‘”˜fÑ%Ô%Ð%Ý•�e‘”˜fÑ%Ô%Ð%Ð%Ð%rX   c                  óÔ  — t          t          t          j        d¦  «        ¦  «        t          t          j        d¦  «        ¦  «        ¦  «         t          t          t          j        dd¦  «        ¦  «        t          t          j        d¦  «        ¦  «        ¦  «         d} t          t          t          j        | Ž ¦  «        t          t          j        | ¦  «        ¦  «        ¦  «         dS )zBTest that ndindex(shape) and ndindex(*shape) produce same results.r/   )r/   r   r,   rO  r.   N)r   ræ   rC   r   r„   s    rK   Ú&test_ndindex_tuple_vs_args_consistencyrU  h  s¬   € õ ••b”j ‘m”mÑ$Ô$¥d­2¬:°dÑ+;Ô+;Ñ&<Ô&<Ñ=Ô=Ð=õ ••b”j  AÑ&Ô&Ñ'Ô'­­b¬j¸Ñ.@Ô.@Ñ)AÔ)AÑBÔBÐBð €EÝ••b”j %Ð(Ñ)Ô)­4µ´
¸5Ñ0AÔ0AÑ+BÔ+BÑCÔCÐCÐCÐCrX   c                  óÒ   — dD ]c} t          t          j        | ¦  «        ¦  «        }d„ t          j        t          j        | ¦  «        ¦  «        D ¦   «         }t          ||¦  «         ŒddS )z2Test ndindex produces same indices as ndenumerate.)rs   r?  r   rO   c                 ó   — g | ]\  }}|‘ŒS rO   rO   )r…   r=  Ú_s      rK   r÷   zBtest_ndindex_against_ndenumerate_compatibility.<locals>.<listcomp>y  s   € ÐOÐOÐO¡e b¨!˜rÐOÐOÐOrX   N)ræ   rC   r   r
   r   r   )r   Úndindex_resultÚndenumerate_indicess      rK   Ú.test_ndindex_against_ndenumerate_compatibilityr[  u  sp   € à.ð @ð @ˆÝ�bœj¨Ñ/Ô/Ñ0Ô0ˆØOÐO­r¬~½b¼hÀu¹o¼oÑ/NÔ/NÐOÑOÔOÐÝ˜>Ð+>Ñ?Ô?Ð?Ð?ð@ð @rX   c                  óh   — d} t          t          j        | Ž ¦  «        }g d¢}t          ||¦  «         dS )zBTest ndindex produces correct indices for multidimensional arrays.)r   r   r,   )r  )r   r   r   )r   r   r   )r   r   r   )r   r   r   )r   r   r   N)ræ   rC   r   r   )r   Úresultr´   s      rK   Ú)test_ndindex_multidimensional_correctnessr^  }  sD   € à€EÝ•"”*˜eÐ$Ñ%Ô%€Fðð ð €Hõ �˜Ñ"Ô"Ð"Ð"Ð"rX   c                  ód   — d} t          j        | Ž }t          |¦  «        }t          |d¦  «         dS )zFTest ndindex behaves correctly when initialized with large dimensions.)éè  r`  rå   NrP  )Úlarge_shapeÚiter_objÚfirst_elements      rK   Ú&test_ndindex_large_dimensions_behaviorrd  Œ  s4   € à€KÝŒz˜;Ð'€HÝ˜‘N”N€MÝ� Ñ'Ô'Ð'Ð'Ð'rX   c                  ó  — t          j        dd¦  «        } t          t          | ¦  «        g ¦  «         t          j        ddd¦  «        }t	          j        t          ¦  «        5  t          |¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z*Test detailed behavior of empty iterators.r   r/   r,   r   N)rC   r   r   ræ   r�   rF  rJ  rK  )Ú
empty_iterÚempty_iter2s     rK   Ú$test_ndindex_empty_iterator_behaviorrh  ”  sÀ   € å”˜A˜qÑ!Ô!€JÝ•�jÑ!Ô! 2Ñ&Ô&Ð&å”*˜Q  1Ñ%Ô%€KÝ	Œ•}Ñ	%Ô	%ð ð Ýˆ[ÑÔÐðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   Á"A?Á?BÂBÚnegative_shape_arg))r&   )r   r(   r'   )r/   r   r    c                 óˆ   — t          j        t          ¦  «        5  t          | ¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z/Test that negative dimensions raise ValueError.N)r�   rF  rG   r   )ri  s    rK   Ú test_ndindex_negative_dimensionsrk  ž  s‡   € õ 
Œ•zÑ	"Ô	"ð $ð $ÝÐ"Ñ#Ô#Ð#ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $ð $ð $s   š7·;¾;c                  óœ   — dd l } t           | j        ¦   «         ¦  «        dgk    sJ ‚t           | j        d¦  «        ¦  «        dgk    sJ ‚d S )Nr   rO   )Únumpyræ   r   )rC   s    rK   Útest_ndindex_empty_shapern  ¬  s\   € ØÐÐÐå�
�”
‘”ÑÔ " Ò%Ð%Ð%Ð%Ý�
�”
˜2‘”ÑÔ B 4Ò'Ð'Ð'Ð'Ð'Ð'rX   c                  ó¬   — t          j        t          ¦  «        5  t          t	          j        d¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr&   )r�   rF  rG   ræ   rC   r   rO   rX   rK   Ú test_ndindex_negative_dim_raisesrp  ²  sŒ   € å	Œ•zÑ	"Ô	"ð ð Ý�RŒZ˜‰^Œ^ÑÔÐðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð rH  )1r�   rm  rC   Únumpy.lib._index_tricks_implr   r   r   r   r   r   r	   r
   r   r   r   r   Únumpy.testingr   r   r   r   r   r   r   r   r”   rÎ   rã   ré   rð   r  r  r1  r3  r@  rB  r‘   r’   rG  rM  rS  rU  r[  r^  rd  rh  rk  rn  rp  rO   rX   rK   ú<module>rs     s¾  ðØ €€€à Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ðpJð pJð pJð pJð pJñ pJô pJð pJðdr/ð r/ð r/ð r/ð r/ñ r/ô r/ð r/ðj'?ð '?ð '?ð '?ð '?ñ '?ô '?ð '?ðTKð Kð Kð Kð Kñ Kô Kð Kð=ð =ð =ð =ð =ñ =ô =ð =ð'3ð '3ð '3ð '3ð '3ñ '3ô '3ð '3ðT0ð 0ð 0ð
D ð D ð D ð D ð D ñ D ô D ð D ðN
ð 
ð 
ð8!ð !ð !ð !ð !ñ !ô !ð !ð&ð ð ð0%ð %ð %ð „×Ò˜ s¨C°!°Q°¸Ð&BÑCÔCð$ð $ñ DÔCð$ðð ð ð
&ð 
&ð 
&ð
Dð 
Dð 
Dð@ð @ð @ð#ð #ð #ð(ð (ð (ðð ð ð „×ÒØðð ð ñô ð$ð $ñô ð$ð(ð (ð (ðð ð ð ð rX   