ó
    �œ‘h5R  ã                   ó"  • S SK r S SKrS SKJrJrJrJrJrJ	r	J
r
JrJrJrJrJr  S SKJrJrJrJrJrJrJr   " S S5      r " S S5      r " S S	5      r " S
 S5      r " S S5      r " S S5      rS r " S S5      rS r  " S S5      r!S r"g)é    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                   óŒ   • \ rS rSrS rS rS rS rS rS r	S r
\R                  R                  S	/ S
Q5      S 5       rS rSrg)ÚTestRavelUnravelIndexé   c                 ó’  • [        [        R                  " SS5      S5        [        [        R                  " SSS9S5        [        [        5         [        R                  " SSS9  S S S 5        [        [        5         [        R                  " SSS9  S S S 5        [        [        5         [        R                  " SSS	9  S S S 5        [        [        5         [        R                  " SSS
9  S S S 5        [        [        R
                  " SS5      S5        [        [        R                  " SS5      S5        [        [        R
                  " SS5      S5        [        [        [        R                  SS5        [        [        [        R                  SS5        [        [        [        R                  SS5        [        [        [        R
                  SS5        [        [        [        R
                  SS5        [        [        [        R
                  SS5        [        [        [        R
                  SS5        [        [        [        R
                  SS5        [        [        R                  " SS5      / SQ5        [        [        R
                  " / SQS5      S5        [        R                  " / SQ/ SQ/5      n[        [        R
                  " US5      / SQ5        [        [        R
                  " USSS9/ SQ5        [        [        R
                  " USSS 9/ S!Q5        [        [        R
                  " US"S#S 9/ S$Q5        [        [        R
                  " S%S&5      S'5        [        [        R                  " [        R                  " / SQ5      S5      / SQ/ SQ/5        [        [        R                  " [        R                  " / SQ5      SSS9/ SQ/ SQ/5        [        [        R                  " S'S&5      / S%Q5        g ! , (       d  f       GN¢= f! , (       d  f       GN‡= f! , (       d  f       GNl= f! , (       d  f       GNQ= f)(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)é   r0   é   )r'   r,   Úclip©Úmode)r/   é   é   ©r'   r'   )r7   Úwrap)é   r6   r6   )r+   r   r'   r   )r,   r.   é   é	   iU  )r   ÚnpÚunravel_indexr   Ú	TypeErrorÚravel_multi_indexÚ
ValueErrorÚarray)ÚselfÚarrs     ÚeC:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\numpy/lib/tests/test_index_tricks.pyÚ
test_basicÚ TestRavelUnravelIndex.test_basic   sú  € Ü”R×%Ò% a¨Ó0°&Ô9ô 	”R×%Ò%¨aØ,2ñ4à&,ô	.ô œ9Õ%Ü×Ò Q¨VÒ4÷ &ô œ9Õ%Ü×Ò˜Q VÒ,÷ &ô œ9Õ%Ü×Ò˜S hÒ/÷ &ô œ9Õ%Ü×Ò˜S xÒ0÷ &ô 	”R×)Ò)¨&°&Ó9¸1Ô=Ü”R×%Ò% c¨8Ó4°gÔ>Ü”R×)Ò)¨'°8Ó<¸cÔBÜ”j¤"×"2Ñ"2°B¸Ô?Ü”i¤×!1Ñ!1°3¸Ô?Ü”j¤"×"2Ñ"2°A°vÔ>Ü”j¤"×"6Ñ"6¸ÀÔHÜ”j¤"×"6Ñ"6¸ÀÔGÜ”j¤"×"6Ñ"6¸ÀÔHÜ”j¤"×"6Ñ"6¸ÀÔGÜ”i¤×!5Ñ!5°yÀ&ÔIä”R×%Ò%Ð&9¸9ÓEÂyÔQÜÜ× Ò ¢¨IÓ6Ð8Kô	Mô �hŠhš	¢9Ð-Ó.ˆÜ”R×)Ò)¨#¨vÓ6ºÔEÜÜ× Ò   f°CÑ8º,ô	HäÜ× Ò   f°6Ñ:ºLô	Jä”R×)Ò)¨#¨vÐ<LÑMÚ!ô	#ä”R×)Ò)¨,¸ÓEÀtÔLä”R×%Ò%¤b§h¢hª|Ó&<¸fÓEÚ¢Ð+ô	-äÜ×ÒœRŸXšX¢lÓ3°VÀ3ÑGÚš	Ð"ô	$ô 	”R×%Ò% d¨LÓ9º<ÕH÷W &Ö%ú÷ &Ö%ú÷ &Ö%ú÷ &Ö%ús0   ÁPÁ=PÂ*P%ÃP7Ð
PÐ
P"Ð%
P4Ð7
Qc           
      óª  • SnSn[        [        U[        R                  / S5        [        [        U[        R                  SS5        [        [        U[        R                  [        R                  " / 5      S5        [        [        R                  " [        R                  " / [        S9S5      / / / /5        [        [        U[        R                  / / 4S5        [        [        U[        R                  / S/4S5        [        [        U[        R                  [        R                  " / 5      [        R                  " / 5      4S5        [        [        R                  " [        R                  " / [        S9[        R                  " / [        S94S5      / 5        [        [        R                  " [        R                  " / / /[        S9S5      / 5        g )	Nz9indices must be integral: the provided empty sequence waszonly int indices permitted)é
   r+   r-   © ©Údtype©rM   r+   Úabc)r-   r+   )r   rC   rA   rB   rF   r   ÚintrD   )rG   Úmsg1Úmsg2s      rI   Útest_empty_indicesÚ(TestRavelUnravelIndex.test_empty_indicesU   sT  € ØJˆØ+ˆÜœI t¬R×-=Ñ-=¸rÀ:ÔNÜœI t¬R×-=Ñ-=¸rÀ:ÔNÜœI t¬R×-=Ñ-=¼r¿xºxÈ»|Ø&ô	(ä”R×%Ò%¤b§h¢h¨r¼Ñ&=¸zÓJØ˜"˜b�\ô	#äœI t¬R×-AÑ-AÀBÈÀ8Ø#ô	%äœI t¬R×-AÑ-AÀBÈÈÀ=Ø#ô	%äœI t¬R×-AÑ-AÜ—X’X˜b“\¤2§8¢8¨B£<Ð0°&ô	:ä”R×)Ò)Ü—’˜"¤CÑ(¬"¯(ª(°2¼SÑ*AÐBÀFóLØMOô	Qä”R×)Ò)¬"¯(ª(°B¸°8Ä3Ñ*GØóØ õ	"ó    c                 ó‚  • [         R                  [         R                  :X  a:  SS/SS/SS/SS/SS	/SS/S
S/4n[        [         R                  " US5      SS/5        [        [        [         R                  SS5        S
/S
/4n[         R                  " [         R                  5      R                  S-  n[        [         R                  " X#S45      S
/5        [        [        [         R                  X#S-   S45        [        [         R                  " X#S4SS9S
/5        [        [        [         R                  X#S-   S4SS9  g )Nr   r   r+   r-   éu   r;   r   iK	  i  r   )r0   r.   éx   é$   i’
  r?   r,   l   ¼zá l   nm )l   ÿÿ l       r2   r3   )
rA   ÚintpÚint64r   rD   r   rE   rB   ÚiinfoÚmax)rG   rH   Ú	dummy_arrÚhalf_maxs       rI   Útest_big_indicesÚ&TestRavelUnravelIndex.test_big_indicesi   s)  € ä�7‰7”b—h‘hÓØ�r�7˜Q ˜F Q¨ H¨r°1¨gØ˜$�< ! Q ¨!¨Q¨ð1ˆCäÜ×$Ò$ SÐ*FÓGØ˜\Ð*ô,ô
 	”j¤"×"2Ñ"2°AÐ7MÔNð �S˜1˜#�Jˆ	Ü—8’8œBŸG™GÓ$×(Ñ(¨AÑ-ˆÜÜ× Ò  °q¨MÓ:¸Q¸Cô	Aä”jÜ× Ñ  )¸©l¸AÐ->ô	@äÜ× Ò  °q¨MÀÑEÈÀsô	Lä”jÜ× Ñ  )¸©l¸AÐ->Àcó	KrX   c           
      óÔ  • [         R                  [         R                  [         R                  [         R                  [         R
                  [         R                  4 GH‡  n[         R                  " / SQ/ SQ/US9nSnSUS   -  US   -   n[        [         R                  " X#5      U5        [        U[         R                  " XC5      5        US   SUS   -  -   n[        [         R                  " X#S	S
9U5        [        U[         R                  " XCS	S
95        [         R                  " / SQ/ SQ/ SQ/US9nSnSSUS   -  US   -   -  US   -   n[        [         R                  " X#5      U5        [        U[         R                  " XC5      5        US   SUS   SUS   -  -   -  -   n[        [         R                  " X#S	S
9U5        [        U[         R                  " XCS	S
95        GMŠ     g )N)r   r   r   r   r+   r'   )r   r,   r   r+   r   r   rO   )r-   r?   r?   r   r   r-   r2   r3   )r   r+   r   r   r@   r-   )r-   r?   rM   rM   r   )rA   Úint16Úuint16Úint32Úuint32r^   Úuint64rF   r   rD   rB   )rG   rP   Úcoordsr   Úuncoordss        rI   Útest_dtypesÚ!TestRavelUnravelIndex.test_dtypes�   s£  € ä—h‘h¤§	¡	¬2¯8©8Ü—i‘i¤§¡¬2¯9©9ô6ˆEä—X’XÚ#Ò%7Ð8ÀñGˆFàˆEØ˜6 !™9‘} v¨a¡yÑ0ˆHÜœ×-Ò-¨fÓ<¸hÔGÜ˜¤×!1Ò!1°(Ó!BÔCØ˜a‘y 1 v¨a¡y¡=Ñ0ˆHÜÜ×$Ò$ V¸#Ñ>ÀôJä˜¤×!1Ò!1°(ÈÑ!MÔNä—X’XÚ#Ò%7Ò9KÐLØñˆFð ˆEØ˜Q ¨¡™]¨V°A©YÑ6Ñ7¸&À¹)ÑCˆHÜœ×-Ò-¨fÓ<¸hÔGÜ˜¤×!1Ò!1°(Ó!BÔCØ˜a‘y 1¨¨q©	°A¸¸q¹	±MÑ(AÑ#BÑBˆHÜÜ×$Ò$ V¸#Ñ>ÀôJä˜¤×!1Ò!1°(ÈÑ!M×Nò/6rX   c                 ó,  • [        [        R                  " / SQSSS9[        R                  " / SQS5      5        [        [        R                  " / SQSSS9[        R                  " / SQS5      5        [        [        [        R                  / SQS5        g )N)r-   r   r&   r   )r'   r+   r.   r>   r=   r8   )r   r   r,   r   )r=   Úraiser7   rp   )r   r   r   r   )r   rA   rD   r   rE   ©rG   s    rI   Útest_clipmodesÚ$TestRavelUnravelIndex.test_clipmodesœ   s{   € äÜ× Ò ¢°ÀFÑKÜ× Ò ¢¨}Ó=ô	?ô 	”R×)Ò)ª-¸ð0PñQô ×)Ò)ª,¸ÓFô	Hô 	Üœ×,Ñ,ªm¸]õ	LrX   c                 ó¶   • [         R                  " / SQS5      u  p[        UR                  R                  5        [        UR                  R                  5        g )N©r   r   r+   )r'   r-   )rA   rB   r   ÚflagsÚ	writeable)rG   ÚxÚys      rI   Útest_writeabilityÚ'TestRavelUnravelIndex.test_writeability¨   s:   € ä×Ò¢	¨6Ó2‰ˆÜ�—‘×!Ñ!Ô"Ü�—‘×!Ñ!Õ"rX   c                 óÒ   • [         R                  " SS5      n[        US5        [        [        S[         R                  S/S5        [        [        S[         R                  S/S5        g )Nr   rN   z0d arrayzout of boundsr   )rA   rB   r   r   rE   ©rG   rx   s     rI   Útest_0dÚTestRavelUnravelIndex.test_0d®   sR   € ä×Ò˜Q Ó#ˆÜ�Q˜ÔäœJ¨
´B×4DÑ4DÀqÀcÈ2ÔNÜÜ˜¬×)9Ñ)9¸A¸3Àõ	DrX   r9   )r7   r=   rp   c                 óV  • [         R                  " [         R                  " S[         R                  S9SUS9nUR                  S:X  d   e[        [        5         [         R                  " [         R                  " S[         R                  S9SUS9  S S S 5        g ! , (       d  f       g = f)N)r+   r   rO   ©r   r   r   r8   ©r   )r+   r   )rA   rD   Úzerosr]   r   r   rE   )rG   r9   Úress      rI   Útest_empty_array_ravelÚ,TestRavelUnravelIndex.test_empty_array_ravel·   st   € ä×"Ò"Ü—H’H˜V¬2¯7©7Ñ3°YÀTñKˆà�y‰y˜DÓ Ð Ð äœ:Õ&Ü× Ò Ü—H’H˜V¬2¯7©7Ñ3°YÀTòK÷ '×&Ö&ús   Á8BÂ
B(c                 óJ  • [         R                  " [         R                  " S[         R                  S9S5      n[	        U5      S:X  d   e[        S U 5       5      (       d   e[        [        5         [         R                  " S/S5        S S S 5        g ! , (       d  f       g = f)Nr   rO   r�   r+   c              3   ó>   #   • U  H  oR                   S :H  v •  M     g7f)r‚   N)r   )Ú.0Úas     rI   Ú	<genexpr>ÚATestRavelUnravelIndex.test_empty_array_unravel.<locals>.<genexpr>Å   s   é € Ð0ªC q—7‘7˜d–?ªCùs   ‚r   )rA   rB   rƒ   r]   ÚlenÚallr   rE   )rG   r„   s     rI   Útest_empty_array_unravelÚ.TestRavelUnravelIndex.test_empty_array_unravelÁ   sp   € Ü×ÒœrŸxšx¨´·±Ñ9¸9ÓEˆä�3‹x˜1‹}Ðˆ}ÜÑ0©CÓ0×0Ñ0Ð0Ð0äœ:Õ&Ü×Ò˜a˜S )Ô,÷ '×&Ö&ús   Á2BÂ
B"rN   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__rJ   rV   rc   rm   rr   rz   r~   ÚpytestÚmarkÚparametrizer…   r�   Ú__static_attributes__rN   rX   rI   r   r      sY   † ò5Iòn"ò(Kò0Oò6
Lò#òDð ‡[�[×Ñ˜VÒ%>Ó?ñKó @ðKõ-rX   r   c                   ó†   • \ rS rSrS rS rS rS r\R                  R                  SSS/5      S	 5       rS
 rS rS rSrg)ÚTestGridéÊ   c                 óz  • [         SSS2   n[         SSS2   n[        UR                  S:H  5        [        UR                  S:H  5        [        US   S:H  5        [        US   S5        [        US   S:H  5        [        US   US   -
  SS5        [        US   US   S	-   S5        [        US   US   -
  S
S5        g )Nr&   r   ù              $@r)   )rM   )é   r   é   ggfffffþ?gÇqÇqÌ?)r	   r   r   r   )rG   rŠ   Úbs      rI   rJ   Ú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Ü˜A˜b™E 1 Q¡4¨(¡?°BÔ7Ü˜A˜a™D 1 Q¡4™K¨°BÕ7rX   c                 óz   • [         R                  " SSSS9u  p[        US5        [        U[        SSS2   S5        g )Nr   rM   T)Úretstepg9/§àåÄ?y              I@r6   )rA   Úlinspacer   r   r	   )rG   ry   Ústs      rI   Útest_linspace_equivalenceÚ"TestGrid.test_linspace_equivalence×   s6   € Ü—’˜A˜r¨4Ñ0‰ˆÜ˜B Ô)Ü! !¤U¨1¨R°¨8¡_°bÕ9rX   c                 óò  • [         SSS2SSS24   n[         SSS2SSS24   n[        UR                  S:H  5        [        UR                  S	:H  5        [        US
   S
S S 24   [        R
                  " SS5      * 5        [        US   S S 2S
4   S[        R
                  " SS5      -  5        [        US
   SS S 24   [        R
                  " SS5      S5        [        US   S S 2S4   S[        R
                  " SS5      -  S5        [        US
SS S 24   US
S
S S 24   -
  S[        R
                  " SS5      -  S5        [        USS S 2S4   USS S 2S
4   -
  S[        R
                  " SS5      -  S5        g )Nr&   r   r�   éþÿÿÿr   r)   gš™™™™™É?)r   rM   rM   )r   rž   rž   r   rM   ÚdrŸ   rž   )r	   r   r   r   rA   Úonesr   )rG   Úcrª   s      rI   Útest_ndÚTestGrid.test_ndÜ   s_  € Ü�"�Q�s�(˜B˜q ˜HÐ$Ñ%ˆÜ�"�Q�s�(˜B˜q ˜HÐ$Ñ%ˆÜ�—‘˜;Ñ&Ô'Ü�—‘˜;Ñ&Ô'Ü˜1˜Q™4 ¢1 ™:¬¯ª°°CÓ(8Ð'8Ô9Ü˜1˜Q™4¢ 1 ™: r¬B¯GªG°B¸Ó,<Ñ'<Ô=Ü! ! A¡$ rª1 u¡+¬r¯wªw°r¸3Ó/?ÀÔDÜ! ! A¡$¢q¨" u¡+¨q´2·7²7¸2¸sÓ3CÑ/CÀRÔHÜ! ! A qª! G¡*¨q°°A²q°©zÑ"9Ø"%¬¯ª°°CÓ(8Ñ"8¸"ô	>ä! ! A¢q¨! G¡*¨q°²A°q°©zÑ"9Ø"%¬¯ª°°CÓ(8Ñ"8¸"õ	>rX   c                 ó¬   • [         SSS2SSS24   n[        SSS2SSS24   n[        R                  " U6 n[	        X5       H  u  pE[        XE5        M     g )Nr&   r   r�   r©   r   )r	   r   rA   Úbroadcast_arraysÚzipr   )rG   Ú	grid_fullÚgrid_sparseÚgrid_broadcastÚfr    s         rI   Útest_sparseÚTestGrid.test_sparseê   sc   € Ü˜"˜Q˜s˜( B q¨ HÐ,Ñ-ˆ	Ü˜B˜q ˜H b¨¨3 hÐ.Ñ/ˆô ×,Ò,¨kÐ:ˆÜ˜	Ö2‰DˆAÜ˜Öò 3rX   zstart, stop, step, expected)NrM   r�   )éÈ   rM   )iöÿÿÿrž   N)i  é   c                 óœ   • [         XU2XU24   n[         XU2   n[        UR                  US   5        [        UR                  US   5        g )Nr   r   )r	   r   Úsize)rG   ÚstartÚstopÚstepÚexpectedÚgridÚ
grid_smalls          rI   Útest_mgrid_size_none_handlingÚ&TestGrid.test_mgrid_size_none_handlingó   sO   € ô �U �_ e° oÐ5Ñ6ˆô ˜5 d˜?Ñ+ˆ
Ü�T—Y‘Y ¨¡Ô,Ü�Z—_‘_ h¨q¡kÕ2rX   c                 óP  • [         SSS24   n[         [        R                  " S5      [        R                  " S5      [        R                  " S5      24   n[        X5        UR                  [        R                  :X  d   eUR                  [        R
                  :X  d   e[         SSS2   n[         [        R                  " S5      [        R                  " S5      [        R                  " S5      2   n[        UR                  [        R
                  :H  5        [        X5        g )Nr)   ç…ëQ¸Õ?)r	   rA   Úfloat32r   rP   Úfloat64r   )rG   Úgrid64Úgrid32s      rI   Útest_accepts_npfloatingÚ TestGrid.test_accepts_npfloating  sÎ   € ä�s˜4 �|�}Ñ&ˆÜ”r—z’z #“¤r§z¢z°$Ó'7¼¿
º
À3»ÐGÐHÑJˆÜ! &Ô1à�|‰|œrŸz™zÓ)Ð)Ð)Ø�|‰|œrŸz™zÓ)Ð)Ð)ô �s˜4 �|Ñ$ˆÜ”r—z’z #“¤r§z¢z°$Ó'7¼¿
º
À3»ÐGÑHˆÜ�—‘¤§
¡
Ñ*Ô+Ü! &Õ1rX   c                 ó:  • [         SSS24   n[         [        R                  " S5      [        R                  " S5      [        R                  " S5      24   n[        UR                  [        R                  :H  5        [        X5        [         S[        R                  " S5      S2   n[         S[        R                  " S5      S24   n[        UR                  UR                  s=:H  =(       a    [        R                  :H  Os  5        [        X4S   5        [         SSS2   n[         [        R                  " S5      [        R                  " S5      [        R                  " S5      2   n[        UR                  [        R                  :H  5        [        X5        g )Nr)   rÅ   r   r   y        333333@)r	   rA   Ú
longdoubler   rP   r   r   )rG   rÈ   Úgrid128Ú
grid128c_aÚ
grid128c_bs        rI   Útest_accepts_longdoubleÚ TestGrid.test_accepts_longdouble  s-  € ä�s˜4 �|�}Ñ&ˆÜÜ�MŠM˜#ÓœrŸ}š}¨TÓ2´2·=²=ÀÓ3EÐEÐFñ
ˆô 	�—‘¤§¡Ñ.Ô/Ü! &Ô2ä˜1œRŸ]š]¨1Ó-¨dÐ2Ñ3ˆ
Ü˜1œRŸ]š]¨1Ó-¨dÐ2Ð3Ñ5ˆ
Ü�
× Ñ  J×$4Ñ$4×EÓE¼¿¹ÔEÔFÜ˜:°!¡}Ô5ô �s˜4 �|Ñ$ˆÜÜ�MŠM˜#ÓœrŸ}š}¨TÓ2´2·=²=ÀÓ3EÐEñ
ˆô 	�—‘¤§¡Ñ.Ô/Ü! &Õ2rX   c           	      óÄ  • [        [        SSS24   [        SS[        R                  " S5      24   5        [        [        SSS2   [        SS[        R                  " S5      2   5        [        SSS2   n[        SSS24   S   n[	        UR
                  UR
                  s=:H  =(       a    [        R                  :H  Os  5        [        X5        [        SS[        R                  " S5      2   n[        SS[        R                  " S5      24   S   n[	        UR
                  UR
                  s=:H  =(       a    [        R                  :H  Os  5        [        X5        g )Nr)   g333333Ó?y              @y        ffffff
@r   )
r   r	   rA   Ú	complex64r   rP   rÇ   r   ÚclongdoublerÍ   )rG   Úgrid64_aÚgrid64_bÚ	grid128_aÚ	grid128_bs        rI   Útest_accepts_npcomplexfloatingÚ'TestGrid.test_accepts_npcomplexfloating(  s  € ä!Ü�#�c˜"�*�+Ñ¤ s¨3¬r¯|ª|¸BÓ/?Ð'?Ð'@Ñ!Bô	
ô
 	"Ü�#�c˜"�*Ñœu S¨¬R¯\ª\¸"Ó-=Ð%=Ñ>ô	
ô
 ˜˜S ˜Ñ&ˆÜ˜˜S ˜˜Ñ(¨Ñ+ˆÜ�—‘ (§.¡.×>Ó>´B·J±JÔ>Ô?Ü˜8Ô.ä˜#˜c¤"§.¢.°Ó"6Ð6Ñ7ˆ	Ü˜#˜c¤"§.¢.°Ó"6Ð6Ð7Ñ9¸!Ñ<ˆ	Ü�	—‘ 9§?¡?×CÓC´b·m±mÔCÔDÜ˜8Õ.rX   rN   N)r‘   r’   r“   r”   rJ   r¦   r­   r¶   r•   r–   r—   rÂ   rÊ   rÑ   rÚ   r˜   rN   rX   rI   rš   rš   Ê   sV   † ò
8ò:ò
>òð ‡[�[×ÑÐ:Ø"Ø#ð=
ó ñ
3ó	ð
3ò2ò3õ,/rX   rš   c                   ó8   • \ rS rSrS rS rS rS rS rS r	Sr
g	)
ÚTestConcatenatori?  c                 ó¸   • [        [        S   [        R                  " / SQ5      5        [        R                  " S5      n[        USSU4   n[        U/ SQ5        g )N)r   r   r+   r'   r-   r,   r-   r   )r   r   r   r   r   r   r   r   r   r   r   r   )r   r   rA   rF   r«   )rG   r    r¬   s      rI   Útest_1dÚTestConcatenator.test_1d@  sE   € Üœ2Ð.Ñ/´·²Ò:LÓ1MÔNÜ�GŠG�A‹JˆÜˆq�!�Q˜ˆz‰NˆÜ˜1ÒBÕCrX   c                 óN   • [         SSS24   n[        UR                  S:H  5        g )Ng333333$@r   rM   Úf8)r   r   rP   ©rG   Úgs     rI   Útest_mixed_typeÚ TestConcatenator.test_mixed_typeF  s#   € Üˆt�Q�r�Tˆz‰NˆÜ�—‘˜4‘Õ rX   c                 ó¤   • [         S[        R                  " S/5      [        R                  " / SQ5      S4   n[        UR                  S:H  5        g )Ng333333$Àr   )r   r+   r'   g      $@râ   )r   rA   rF   r   rP   rã   s     rI   Útest_more_mixed_typeÚ%TestConcatenator.test_more_mixed_typeJ  s8   € Üˆu”b—h’h ˜s“m¤R§X¢XªiÓ%8¸$Ð>Ñ?ˆÜ�—‘˜4‘Õ rX   c                 ó¼   • [         SSS2   n[        UR                  S:H  5        [         SS[        R                  " S5      2   n[        UR                  S:H  5        g )Nr   r\   y              Y@)éd   )r   r   r   rA   rÔ   rã   s     rI   Útest_complex_stepÚ"TestConcatenator.test_complex_stepN  sO   € äˆq��Dˆy‰MˆÜ�—‘˜6Ñ!Ô"ô ˆq�”B—L’L Ó&Ð&Ñ'ˆÜ�—‘˜6Ñ!Õ"rX   c                 ó¶  • [         R                  R                  SS5      n[         R                  R                  SS5      n[        SX4   n[	        UR
                  S:H  5        [        US S 2S S24   U5        [        US S 2SS 24   U5        [        X4   n[	        UR
                  S:H  5        [        US S2S S 24   U5        [        USS 2S S 24   U5        g )Nr-   Ú1)r-   rM   )rM   r-   )rA   ÚrandomÚrandr   r   r   r   )rG   r    r¬   rª   s       rI   Útest_2dÚTestConcatenator.test_2dW  s¸   € Ü�I‰I�N‰N˜1˜aÓ ˆÜ�I‰I�N‰N˜1˜aÓ ˆÜˆs�Aˆy‰MˆÜ�—‘˜7Ñ"Ô#Ü˜1šQ   ˜U™8 QÔ'Ü˜1šQ ¡˜U™8 QÔ'Üˆqˆt‰HˆÜ�—‘˜7Ñ"Ô#Ü˜1˜R˜a˜R¢˜U™8 QÔ'Ü˜1˜Q™R¢˜U™8 QÕ'rX   c                 ó  • [        [        S[        R                  " S5      S4   / SQ5        [        [        / SQ[        R                  " S5      4   / SQ5        [        [        [        R                  " S5      / SQ4   / SQ5        g )Nr   r   r   ©r   r   r   r+   )r   r   r   r+   ru   )r   r   rA   rF   rq   s    rI   r~   ÚTestConcatenator.test_0dc  sX   € Ü”R˜œ2Ÿ8š8 A›;¨Ð)Ñ*ªIÔ6Ü”Rš	¤2§8¢8¨A£;Ð.Ñ/²Ô>Ü”RœŸš ›¢YÐ.Ñ/²Õ>rX   rN   N)r‘   r’   r“   r”   rß   rå   rè   rì   rò   r~   r˜   rN   rX   rI   rÝ   rÝ   ?  s!   † òDò!ò!ò#ò
(õ?rX   rÝ   c                   ó   • \ rS rSrS rSrg)ÚTestNdenumerateii  c                 ó|   • [         R                  " SS/SS//5      n[        [        [	        U5      5      / SQ5        g )Nr   r   r+   r'   )))r   r   r   ))r   r   r   )r   r+   ))r   r   r'   )rA   rF   r   Úlistr
   ©rG   rŠ   s     rI   rJ   ÚTestNdenumerate.test_basicj  s4   € Ü�HŠH�q˜!�f˜q !˜fÐ%Ó&ˆÜ”Tœ+ a›.Ó)ÚIõ	KrX   rN   N)r‘   r’   r“   r”   rJ   r˜   rN   rX   rI   rø   rø   i  s   † õKrX   rø   c                   ó    • \ rS rSrS rS rSrg)ÚTestIndexExpressionip  c                 ó”   • [         R                  " S5      n[        US S U[        S S    5        [        US S U[        S S    5        g )Nr   r&   )rA   Úaranger   r   r   rû   s     rI   Útest_regression_1Ú%TestIndexExpression.test_regression_1q  sD   € ä�IŠI�a‹LˆÜ�Q�s˜�V˜Qœr # 2˜w™ZÔ(Ü�Q�s˜�V˜Qœy¨¨"˜~Ñ.Õ/rX   c           	      óò   • [         R                  R                  SSS5      n[        US S 2S S2SS/4   U[        S S 2S S2SS/4      5        [        US S 2S S2SS/4   U[
        S S 2S S2SS/4      5        g )Nr'   r-   r,   r+   r   r   )rA   rð   rñ   r   r   r   rû   s     rI   Útest_simple_1Ú!TestIndexExpression.test_simple_1w  s‚   € Ü�I‰I�N‰N˜1˜a Ó#ˆä�Q’q˜"˜1˜"˜q !˜f�}Ñ% q¬²1°b°q°b¸1¸a¸&°=Ñ)AÑ'BÔCÜ�Q’q˜"˜1˜"˜q !˜f�}Ñ% q¬ªA¨r°¨r°A°q°6¨MÑ):Ñ';Õ<rX   rN   N)r‘   r’   r“   r”   r  r  r˜   rN   rX   rI   rþ   rþ   p  s   † ò0õ=rX   rþ   c                   ó2   • \ rS rSrS rS rS rS rS rSr	g)	ÚTestIx_i~  c                 óÀ  • [         R                  " [        S5      5      u  n[        UR                  [         R
                  5        [         R                  " / 5      u  n[        UR                  [         R
                  5        [         R                  " [         R                  " / [         R                  S95      u  n[        UR                  [         R                  5        g )Nr   rO   )rA   r   Úranger   rP   r]   rF   rÆ   rû   s     rI   r  ÚTestIx_.test_regression_1  s|   € ä�VŠV”E˜!“HÓ‰ˆÜ�Q—W‘WœbŸg™gÔ&ä�VŠV�B‹Z‰ˆÜ�Q—W‘WœbŸg™gÔ&ô �VŠV”B—H’H˜R¤r§z¡zÑ2Ó3‰ˆÜ�Q—W‘WœbŸj™jÕ)rX   c           
      óä  ^• Sn[         [        R                  4 HÎ  n[        R                  " U Vs/ s H
  o2" U5      PM     sn6 n[	        [        XA5      5       HŠ  u  mu  pS[        UR                  T   U5        [        [        U4S j[	        UR                  5       5       5      5        [        [        R                  " UR                  [        R                  5      5        MŒ     MÐ     g s  snf )N)r'   r-   r+   r   c              3   óB   >#   • U  H  u  pUT:w  d  M  US :H  v •  M     g7f)r   NrN   )r‰   ÚjÚshÚks      €rI   r‹   Ú/TestIx_.test_shape_and_dtype.<locals>.<genexpr>’  s!   øé € ÐNÒ1C©¨ÀqÈAÁv›G˜B !žGÒ1Cùs   ƒ“)r	  rA   r   r   Ú	enumerater±   r   r   r   rŽ   Ú
issubdtyperP   Úinteger)rG   ÚsizesÚfuncÚszÚarraysrŠ   r  s         @rI   Útest_shape_and_dtypeÚTestIx_.test_shape_and_dtype‹  s¢   ø€ ØˆäœBŸI™IÓ&ˆDÜ—V’V±Ó7²¨2˜d 2žh±Ñ7Ð8ˆFÜ'¬¨FÓ(:Ö;‘
�‘7�AÜ˜QŸW™W Q™Z¨Ô,ÜœÔN´¸1¿7¹7Ô1CÓNÓNÔOÜœŸš a§g¡g¬r¯z©zÓ:Ö;ó <ò 'ùÚ7s   ±C-
c                 ó‚   • / SQn[         R                  " U5      u  n[        [         R                  " U5      S   U5        g )N)TFTTr   )rA   Únonzeror   r   )rG   Úbool_aÚint_as      rI   Ú	test_boolÚTestIx_.test_bool•  s.   € Ú*ˆÜ—’˜FÓ#‰ˆÜ”R—V’V˜F“^ AÑ&¨Õ.rX   c                 óR   • / SQ/ SQ/n[        [        [        R                  U5        g )Nru   ©r'   r-   r,   )r   rE   rA   r   )rG   Úidx2ds     rI   Útest_1d_onlyÚTestIx_.test_1d_onlyš  s   € ÚšIÐ&ˆÜ”j¤"§&¡&¨%Õ0rX   c                 óä   • Sn[         R                  " U5      n[        X"5      n[        US   R                  US45        [        US   R                  SU45        [        UR                  U45        g )Nr-   r   r   )rA   r   r   r   r   )rG   Úlength_of_vectorrx   Úouts       rI   Útest_repeated_inputÚTestIx_.test_repeated_inputž  sb   € ØÐÜ�IŠIÐ&Ó'ˆÜ�!‹iˆÜ�S˜‘V—\‘\Ð$4°aÐ#8Ô9Ü�S˜‘V—\‘\ AÐ'7Ð#8Ô9ä�Q—W‘WÐ/Ð1Õ2rX   rN   N)
r‘   r’   r“   r”   r  r  r  r#  r(  r˜   rN   rX   rI   r  r  ~  s   † ò
*ò<ò/ò
1õ3rX   r  c                  ó˜   • [         [        R                  " / SQ/5      SS[        R                  " / SQ/5      4   n [        U / SQ/5        g )Nru   r   r!  )r   r   r+   r   r   r'   r-   r,   )r   rA   rF   r   )rŠ   s    rI   Útest_c_r+  ¨  s9   € Ü
Œ2�8Š8’Y�KÓ  ! Q¬¯ª²)°Ó(=Ð=Ñ>€AÜ�Ò-Ð.Õ/rX   c                   ó>   • \ rS rSrS rS rS rS rS rS r	S r
S	rg
)ÚTestFillDiagonali­  c           	      ó¤   • [         R                  " S[        5      n[        US5        [	        U[         R
                  " / SQ/ SQ/ SQ/5      5        g )N)r+   r+   r-   ©r-   r   r   ©r   r-   r   ©r   r   r-   ©rA   rƒ   rS   r   r   rF   rû   s     rI   rJ   ÚTestFillDiagonal.test_basic®  s?   € Ü�HŠH�VœSÓ!ˆÜ�a˜ÔÜØŒr�xŠxšÚ"Ú"ð$ó %õ	rX   c                 óÎ   • [         R                  " S[        5      n[        US5        [	        U[         R
                  " / SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/
5      5        g )NrQ   r-   r/  r0  r1  ©r   r   r   r2  rû   s     rI   Útest_tall_matrixÚ!TestFillDiagonal.test_tall_matrix·  sT   € Ü�HŠH�WœcÓ"ˆÜ�a˜ÔÜØŒr�xŠxšÚ"Ú"Ú"Ú"Ú"Ú"Ú"Ú"Ú"ð	$ó 	%õ	rX   c                 óÐ   • [         R                  " S[        5      n[        USS5        [	        U[         R
                  " / SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/
5      5        g )NrQ   r-   Tr/  r0  r1  r5  r2  rû   s     rI   Útest_tall_matrix_wrapÚ&TestFillDiagonal.test_tall_matrix_wrapÇ  sV   € Ü�HŠH�WœcÓ"ˆÜ�a˜˜DÔ!ÜØŒr�xŠxšÚ"Ú"Ú"Ú"Ú"Ú"Ú"Ú"Ú"ð	$ó 	%õ	rX   c           	      ó¤   • [         R                  " S[        5      n[        US5        [	        U[         R
                  " / SQ/ SQ/ SQ/5      5        g )N)r+   rM   r-   )
r-   r   r   r   r   r   r   r   r   r   )
r   r-   r   r   r   r   r   r   r   r   )
r   r   r-   r   r   r   r   r   r   r   r2  rû   s     rI   Útest_wide_matrixÚ!TestFillDiagonal.test_wide_matrix×  s@   € Ü�HŠH�WœcÓ"ˆÜ�a˜ÔÜØŒr�xŠxÒ7Ú7Ú7ð9ó :õ	rX   c                 óÌ   • [         R                  " S[        5      n[        US5        [         R                  " / SQ5      n[        [         R                  " US:g  5      X"X"45        g )N)r+   r+   r+   r+   r'   rõ   r   )rA   rƒ   rS   r   rF   r   Úwhere)rG   rŠ   Úis      rI   Útest_operate_4d_arrayÚ&TestFillDiagonal.test_operate_4d_arrayà  sE   € Ü�HŠH�\¤3Ó'ˆÜ�a˜ÔÜ�HŠH’YÓˆÜ”R—X’X˜a 1™fÓ%¨¨a |Õ4rX   c                 ó¦   • [         R                  " S[        5      n[        [        S5         [        US5        S S S 5        g ! , (       d  f       g = f)Nr+   úat least 2-dr-   ©rA   rƒ   rS   r   rE   r   rû   s     rI   Útest_low_dim_handlingÚ&TestFillDiagonal.test_low_dim_handlingæ  s2   € ä�HŠH�QœÓˆÜ ¤¨^Õ<Ü˜!˜QÔ÷ =×<Ö<úó   ¬AÁ
Ac                 ó¦   • [         R                  " S[        5      n[        [        S5         [        US5        S S S 5        g ! , (       d  f       g = f)N)r+   r+   r.   r+   úequal lengthr   rE  rû   s     rI   Útest_hetero_shape_handlingÚ+TestFillDiagonal.test_hetero_shape_handlingì  s4   € ô �HŠH�\¤3Ó'ˆÜ ¤¨^Õ<Ü˜!˜QÔ÷ =×<Ö<úrH  rN   N)r‘   r’   r“   r”   rJ   r6  r9  r<  rA  rF  rK  r˜   rN   rX   rI   r-  r-  ­  s%   † òòò ò ò5ò õ rX   r-  c            
      óp  • [        S5      n [        R                  " / SQ/ SQ/ SQ/ SQ/5      nSX'   [        U[        R                  " / SQ/ SQ/ S	Q/ S
Q/5      5        [        SS5      n[        R                  " S[
        5      nSX'   [        U[        R                  " SS/SS//SS/SS///5      5        g )Nr'   )r   r   r+   r'   )r-   r,   r.   r?   )r@   rM   rŸ   r>   )r6   é   é   é   rë   )rë   r   r+   r'   )r-   rë   r.   r?   )r@   rM   rë   r>   )r6   rN  rO  rë   r   r+   )r   r   r   r   r   )r   rA   rF   r   rƒ   rS   )ÚdirŠ   Úd3s      rI   Útest_diag_indicesrS  ô  s¿   € Ü	�a‹€BÜ
�Š’,ÚÚ!Ú"ð$ó 	%€Að €A�EÜØ	Œ2�8Š8’^Ú#Ú%Ú&ð(ó )ô
ô 
�a˜Ó	€Bô 	�Š�œCÓ €AØ€A�EÜØ	Œ2�8Š8�q˜!�fØ˜!�fðà˜!�fØ˜!�fððó  õ
rX   c                   ó&   • \ rS rSrS rS rS rSrg)ÚTestDiagIndicesFromi  c                 óÜ   • [         R                  R                  S5      n[        U5      u  p#[        U[         R                  " S5      5        [        U[         R                  " S5      5        g )Nr<   r'   )rA   rð   r   r   r   )rG   rx   Úrr¬   s       rI   Útest_diag_indices_fromÚ*TestDiagIndicesFrom.test_diag_indices_from  sF   € Ü�I‰I×Ñ˜VÓ$ˆÜ  Ó#‰ˆÜ˜1œbŸiši¨›lÔ+Ü˜1œbŸiši¨›lÕ+rX   c                 óš   • [         R                  " S5      n[        [        S5         [	        U5        S S S 5        g ! , (       d  f       g = f)Nr.   rD  )rA   r«   r   rE   r   r}   s     rI   Útest_error_small_inputÚ*TestDiagIndicesFrom.test_error_small_input  s-   € Ü�GŠG�A‹JˆÜ ¤¨^Õ<Ü˜aÔ ÷ =×<Ö<ús	   §<¼
A
c                 ó¤   • [         R                  " S[        5      n[        [        S5         [        U5        S S S 5        g ! , (       d  f       g = f)N)r+   r+   r   r+   rJ  )rA   rƒ   rS   r   rE   r   r}   s     rI   Útest_error_shape_mismatchÚ-TestDiagIndicesFrom.test_error_shape_mismatch  s0   € Ü�HŠH�\¤3Ó'ˆÜ ¤¨^Õ<Ü˜aÔ ÷ =×<Ö<ús   ¬AÁ
ArN   N)r‘   r’   r“   r”   rX  r[  r^  r˜   rN   rX   rI   rU  rU    s   † ò,ò!õ
!rX   rU  c                  ó  • [        [        SSS5      5      n [        [        R                  " S5      5       VVs/ s H  u  pUPM	     nnn[        X5        [        [        S5      5      n [        X5        [        [        S5      5      n [        U [        [        S5      5      5        [        [        5       5      n [        U S/5        [        [        S5      5      n [        U S/5        [        [        S/6 5      n [        U / 5        g s  snnf )Nr   r   r+   ru   )r+   rN   r   )rú   r   r
   rA   rƒ   r   r   )rx   ÚixÚer¿   s       rI   Útest_ndindexrc  #  sÒ   € ÜŒW�Q˜˜1ÓÓ€AÜ +¬B¯HªH°YÓ,?Ô @ÔAÒ @‘u�r“Ñ @€HÑAÜ�qÔ#äŒW�YÓÓ €AÜ�qÔ#ô 	ŒW�T‹]Ó€AÜ�qœ$œw q›zÓ*Ô+ô 	ŒW‹Y‹€AÜ��R�DÔäŒW�R‹[Ó€AÜ��R�DÔô 	ŒW�q�cˆ]Ó€AÜ��BÕùó' Bs   ¹D)#r•   ÚnumpyrA   Ú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-  rS  rU  rc  rN   rX   rI   Ú<module>rg     sš   ðÛ ã ÷÷ ÷ ó ÷÷ ñ ÷k-ñ k-÷Zr/ñ r/÷j'?ñ '?÷TKñ K÷=ñ =÷'3ñ '3òT0÷
D ñ D òN
÷8!ñ !ó&rX   