Ë
    çÿæiKR  ã                   ó$  — 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	m
Z
mZ ddlmZ e	e
gZe j                  d„ «       Zej"                  j%                  de«       G d„ d	«      «       Zej"                  j%                  de«       G d
„ d«      «       Zy)é    N)Úassert_allcloseÚassert_equal)Ú	csr_arrayÚ	dok_arrayÚSparseEfficiencyWarningé   )Útoarrayc              #   óÖ   K  — d–— t        | d«      r| j                  sy| j                  j                  «       }d| _        | j	                  «        t        || j                  d«       y­w)zDChecks that sorted indices property is retained through an operationNÚhas_sorted_indicesFz'Expected sorted indices, found unsorted)Úhasattrr   ÚindicesÚcopyÚsort_indicesr   )ÚXr   s     úw/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/scipy/sparse/tests/test_indexing1d.pyÚcheck_remains_sortedr      sT   è ø€ ó 
Ü�1Ð*Ô+°1×3GÒ3GØØ�i‰i�n‰nÓ€GØ €AÔØ‡N�NÔÜ�˜!Ÿ)™)Ð%NÕOùs   ‚A'A)Ú	spcreatorc                   óˆ   — e Zd Zd„ Zd„ Zd„ Zej                  j                  dd„ e	j                  d„ gg d¢¬«      d	„ «       Zy
)ÚTestGetSet1Dc                 ó`  — t        j                  g d¢«      } ||«      }|j                  d   }t        | |«      D ]p  }t	        ||d f   j                  «       ||d f   «       t	        |d |f   j                  «       |d |f   «       t	        |d d |f   j                  «       |d d |f   «       Œr y )N©é   é   r   r   )ÚnpÚarrayÚshapeÚranger   r	   )Úselfr   ÚDÚAÚNÚjs         r   Útest_None_indexzTestGetSet1D.test_None_index   s§   € Ü�H‰H’YÓˆÙ�a‹Lˆà�G‰G�A‰JˆÜ˜�r˜1–ˆAÜ˜˜1˜d˜7™×+Ñ+Ó-¨q°°D°©zÔ:Ü˜˜4 ˜7™×+Ñ+Ó-¨q°°q°©zÔ:Ü˜˜4  q˜=Ñ)×1Ñ1Ó3°Q°t¸TÀ1°}Ñ5EÕFñ ó    c                 ó   —  |t        j                  d«      j                  dd«      «      }|d   j                  dk(  sJ ‚|ddd…f   j                  dk(  sJ ‚|d ddd…f   j                  d	k(  sJ ‚|d
   j                  dk(  sJ ‚|d   j                  d	k(  sJ ‚|d   j                  dk(  sJ ‚|d   j                  dk(  sJ ‚|d dd d …f   j                  dk(  sJ ‚|dd d d …f   j                  dk(  sJ ‚|dd d …d f   j                  dk(  sJ ‚|j
                  dk(  rd|d   j                  dk(  sJ ‚|d dd…d df   j                  dk(  sJ ‚|dd…dd …d f   j                  dk(  sJ ‚|dd …dd d f   j                  dk(  sJ ‚y y )Né   r   r   )r   é   r   r   r'   ©r   )r   r   )Nr   r'   )Nr   r'   N)Nr   )r   r   )r   N)r   r   Úcoo)Nr'   r   NN)r   r   r   )r   r'   r   )r   r   r   )r   r   r   )r   ÚarangeÚreshapeÚndimr   Úformat©r   r   r    s      r   Útest_getitem_shapezTestGetSet1D.test_getitem_shape'   sÒ  € Ù”b—i‘i Ó&×.Ñ.¨q°!Ó4Ó5ˆØ�‰w�|‰|˜qÒ Ð Ð Ø��A�a�C�‰y�‰ $Ò&Ð&Ð&Ø��q˜!˜A˜#�‰×$Ñ$¨Ò.Ð.Ð.Ø�‰}×"Ñ" dÒ*Ð*Ð*ØÐ!Ñ"×(Ñ(¨FÒ2Ð2Ð2ð �‰z×Ñ 6Ò)Ð)Ð)Ø�‰z×Ñ 6Ò)Ð)Ð)Ø��qš!�‰}×"Ñ" fÒ,Ð,Ð,Ø��Dš!�‰}×"Ñ" fÒ,Ð,Ð,Ø�’A�t�‰}×"Ñ" fÒ,Ð,Ð,ð �8‰8�uÒØÐ+Ñ,×2Ñ2°iÒ?Ð?Ð?Ø�T˜1˜Q˜3  aÐ'Ñ(×.Ñ.°'Ò9Ð9Ð9Ø�Q�q�S˜!™"˜d�]Ñ#×)Ñ)¨WÒ4Ð4Ð4Ø�Q‘R˜˜D $Ð&Ñ'×-Ñ-°Ò8Ð8Ñ8ð	 r$   c                 óÎ  — t        j                  g d¢«      } ||«      }|j                  d   }t        | |«      D ]  }t	        ||   ||   «       Œ dD ]7  }t        j                  t        d¬«      5  |j                  |«       d d d «       Œ9 |d   dk(  sJ ‚t        j                  t        d¬«      5  |j                  d«       d d d «       y # 1 sw Y   ŒƒxY w# 1 sw Y   y xY w)	Nr   r   )r   éüÿÿÿz index (.*) out of (range|bounds)©Úmatch)r   r   ©r   )	r   r   r   r   r   ÚpytestÚraisesÚ
IndexErrorÚ__getitem__)r   r   r   r    r!   r"   Úijs          r   Útest_getelementzTestGetSet1D.test_getelement=   sÄ   € Ü�H‰H’YÓˆÙ�a‹Lˆà�G‰G�A‰JˆÜ˜�r˜1–ˆAÜ˜˜1™˜q ™tÕ$ð ó ˆBÜ—‘œzÐ1SÖTØ—‘˜bÔ!÷ UÐTð ð
 �‰w˜!Š|Ðˆ|ä�]‰]œ:Ð-OÖPØ�M‰M˜$Ô÷ QÐP÷ UÐTú÷ QÐPús   Á3CÂ4CÃC	ÃC$Úscalar_containerc                 óB   — t        t        j                  | gg«      «      S ©N)r   r   r   ©Úxs    r   Ú<lambda>zTestGetSet1D.<lambda>Q   s   € ”9œRŸX™X¨ s e›_Ô-r$   c                 ó   — | S r=   © r>   s    r   r@   zTestGetSet1D.<lambda>Q   s   € Á1r$   )ÚsparseÚdenseÚscalar)Úidsc                 ó6  — t         j                  } |d|¬«      }t        j                  «       5  t        j                  ddt
        «        | |d«      «      |d<    | |d«      «      |d<    | |d«      «      |d	<    | |d
«      «      |d<    |d«      |d<    | |d	«      «      |d<    | |d«      «      |d<   dD ]8  }t        j                  t        d¬«      5  |j                  |d«       d d d «       Œ: 	 d d d «       y # 1 sw Y   ŒNxY w# 1 sw Y   y xY w)N©r&   ©ÚdtypeÚignoreú2Changing the sparsity structure of .* is expensiver   r   r   g      "@é   é   éþÿÿÿé	   é   )i÷ÿÿÿr(   )é   éòÿÿÿ©rR   )é   zout of (range|bounds)r2   ç     À^@)
r   Úfloat64ÚwarningsÚcatch_warningsÚfilterwarningsr   r5   r6   r7   Ú__setitem__)r   r   r;   rJ   r    r9   s         r   Útest_setelementzTestGetSet1D.test_setelementO   s  € ô —
‘
ˆÙ�e 5Ô)ˆÜ×$Ñ$Õ&Ü×#Ñ#ØØDÜ'ôñ
 $¡E¨!£HÓ-ˆAˆa‰DÙ#¡E¨!£HÓ-ˆAˆa‰DÙ#¡E¨#£JÓ/ˆAˆa‰DÙ$¡U¨1£XÓ.ˆAˆb‰EÙ# AÓ&ˆAˆa‰Dá%¡e¨A£hÓ/ˆAˆc‰FÙ$¡U¨1£XÓ.ˆAˆb‰Eã-�Ü—]‘]¤:Ð5LÖMØ—M‘M " eÔ,÷ NÐMñ .÷ 'Ð&÷  NÐMú÷! 'Ð&ús$   ¯B-DÃDÃ/
DÄDÄDÄDN)Ú__name__Ú
__module__Ú__qualname__r#   r/   r:   r5   ÚmarkÚparametrizer   r   r\   rB   r$   r   r   r      sN   „ òGò9ò, ð$ ‡[�[×ÑØÙ	-¨r¯x©x¹ÐEÚ)ð ó ñ
-óñ
-r$   r   c                   óœ   — e 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„ Zd„ Zd„ Zy)ÚTestSlicingAndFancy1Dc                 ó  — t        j                  g d¢«      } ||«      }t        |d   j                  «       |d   «       dD ]7  }t	        j
                  t        d¬«      5  |j                  |«       d d d «       Œ9 y # 1 sw Y   ŒDxY w)Nr   rB   )©r   r   ©r   z"out of (range|bounds)|many indicesr2   )r   r   r   r	   r5   r6   r7   r8   )r   r   r   r    r9   s        r   Útest_get_array_indexz*TestSlicingAndFancy1D.test_get_array_indexp   sf   € Ü�H‰H’YÓˆÙ�a‹Lˆä�Q�r‘U—]‘]“_ a¨¡eÔ,Û ˆBÜ—‘œzÐ1UÖVØ—‘˜bÔ!÷ WÐVñ !ßVÐVús   Á A=Á=B	c                 óÐ  — t         j                  } |d|¬«      }t        j                  «       5  t        j                  ddt
        «        |d«      |t        j                  d«      <    |d«      |t        j                  d«      <   t        |j                  «       g d¢«       d	D ]8  }t        j                  t        d
¬«      5  |j                  |d«       d d d «       Œ: ddg d¢t        j                  g d¢«      fD ]:  }d}t        j                  t        |¬«      5  |j                  d|«       d d d «       Œ< 	 d d d «       y # 1 sw Y   Œ¨xY w# 1 sw Y   Œ\xY w# 1 sw Y   y xY w)NrH   rI   rK   rL   g      @é   g       @)r   r   r   r   r   r   r'   r   r   r   r   r   )rT   )rS   zindex .* out of (range|bounds)r2   rV   rB   re   )r   r'   r   ú&Trying to assign a sequence to an itemr   )r   rW   rX   rY   rZ   r   r   r   r	   r5   r6   r7   r[   Ú
ValueError)r   r   rJ   r    r9   ÚvÚmsgs          r   Útest_set_array_indexz*TestSlicingAndFancy1D.test_set_array_indexy   s  € Ü—
‘
ˆÙ�e 5Ô)ˆÜ×$Ñ$Õ&Ü×#Ñ#ØØDÜ'ôñ
 # 3›ZˆAŒb�h‰h�q‹k‰NÙ" 3›ZˆAŒb�h‰h�q‹k‰NÜ˜Ÿ™›Ò&JÔKã%�Ü—]‘]¤:Ð5UÖVØ—M‘M " eÔ,÷ WÐVð &ð ˜&¢)¬R¯X©X²iÓ-@ÓA�Ø>�Ü—]‘]¤:°SÖ9Ø—M‘M ! QÔ'÷ :Ð9ñ B÷ 'Ð&÷ WÐVú÷
 :Ð9ú÷! 'Ð&ús=   ¯BEÃEÃAEÄEÄ0
EÅEÅ	EÅEÅEÅE%c                 óx  — t         |dt        j                  ¬«      dd j                  t        j                  «       t         |dt        j                  ¬«      ddd…   j                  t        j                  «       t         |dt        j
                  ¬«      d d  j                  t        j
                  «       y )N©é
   rI   r   rQ   )ri   r   r'   )r   r   Úint16rJ   Úint32Úint64)r   r   s     r   Útest_dtype_preservationz-TestSlicingAndFancy1D.test_dtype_preservation’   sv   € Ü‘Y˜u¬B¯H©HÔ5°a¸Ð:×@Ñ@Ä"Ç(Á(ÔKÜ‘Y˜t¬2¯8©8Ô4°Q°q¸°UÑ;×AÑAÄ2Ç8Á8ÔLÜ‘Y˜t¬2¯8©8Ô4±QÐ7×=Ñ=¼r¿x¹xÕHr$   c                 óž  — t        j                  d«      } ||«      }t        |d d  |d d  j                  «       «       t        |dd |dd j                  «       «       t        j                  g d¢«      } ||«      }t        |dd |dd j                  «       «       t        j                  g d¢«      } ||«      }t        |dd |dd j                  «       «       t        |dd  |dd  j                  «       «       t        |d d  |d d  j                  «       «       t        |t        d «         |t        d «         j                  «       «       y )	Ng      I@r'   rQ   )	r   r   ri   r   r   r   r   r   r   r   r   )r   r   r   r   r   rO   )r   r*   r   r	   r   Úslice)r   r   ÚBr    ÚCr   ÚEÚFs           r   Útest_get_1d_slicez'TestSlicingAndFancy1D.test_get_1d_slice—   s  € Ü�I‰I�c‹NˆÙ�a‹LˆÜ�Q‘q�T˜1™Q˜4Ÿ<™<›>Ô*Ü�Q�q˜�V˜Q˜q ˜VŸ^™^Ó-Ô.ä�H‰HÒ0Ó1ˆÙ�a‹LˆÜ�Q�q˜�V˜Q˜q ˜VŸ^™^Ó-Ô.ô �H‰H’_Ó%ˆÙ�a‹LˆÜ�Q�q˜�V˜Q˜q ˜VŸ^™^Ó-Ô.Ü�Q�r�s�V˜Q˜r˜s˜VŸ^™^Ó-Ô.Ü�Q‘q�T˜1™Q˜4Ÿ<™<›>Ô*Ü�Q”u˜T“{‘^ Q¤u¨T£{¡^×%;Ñ%;Ó%=Õ>r$   c                 ó<  — t        j                  d«      } ||«      }t        |d   |d   «       t        |d   |d   «       t        |t        j                  d«         |d   «       t        |d d  j	                  «       |d d  «       t        |dd j	                  «       |dd «       t        |ddd…   j	                  «       |ddd…   «       t        t        j                  d«      t        j                  d«      d «      }t        ||   j	                  «       |dd «       t         j                  }|d d |d	d |dd  |dd d…   |d
d |dd |ddd…   |dd d…   |d dd…   dd	|d d  |d	d dddt        j                  d«      t        j                  d«      g}t        |«      D ]x  \  }}||   }	||   }
|
j                  dk(  rt        |	|
t        |«      «       Œ6|	j                  dk(  r|
j                  dk(  rŒUt        |	j	                  «       |
t        |«      «       Œz y )Né2   r'   éÿÿÿÿrO   rQ   r&   r   r   r   é   é   rM   r   éûÿÿÿéýÿÿÿrB   )r   r*   r   r   r	   rw   Úint8Ús_Ú	enumerater   ÚreprÚsize)r   r   rx   r    Úsr…   Úslicesr"   Úar?   Úys              r   Útest_slicing_idx_slicez,TestSlicingAndFancy1D.test_slicing_idx_slice©   sû  € Ü�I‰I�b‹MˆÙ�a‹Lˆô 	�Q�q‘T˜1˜Q™4Ô Ü�Q�r‘U˜A˜b™EÔ"Ü�Q”r—x‘x “|‘_ a¨¡eÔ,ô 	�Q‘q�T—\‘\“^ Q¡q TÔ*Ü�Q�q˜�W—_‘_Ó&¨¨!¨B¨Ô0Ü�Q�q˜˜A�v‘Y×&Ñ&Ó(¨!¨A¨b°¨F©)Ô4ô ”"—'‘'˜!“*œbŸg™g a›j¨$Ó/ˆÜ�Q�q‘T—\‘\“^ Q q¨ VÔ,ô �U‰UˆØ�R�a�&˜"˜Q˜q˜' 2 a b 6¨2¨a¨d°¨d©8Ø�R˜�)˜R  !˜WØ�Q�q˜�V‘*˜b   B ™i¨¨E¨Q¨r¨E©Ø�Q˜™1˜˜r ! A˜w¨¨B°Ü—(‘(˜2“,¤§¡¨£ð	-ˆô ˜fÖ%‰DˆAˆqØ�!‘ˆAØ�!‘ˆAØ�w‰w˜"Š}Ü˜Q ¤4¨£7Õ+à—6‘6˜Q’; 1§6¡6¨Q¢;Øä  §¡£¨a´°a³Õ9ñ &r$   c                 ó¾   — t        j                  d«      } ||«      }t        |d   j                  «       |d   «       t        |d   j                  «       |d   «       y )Nr~   .).)r   r*   r   r	   ©r   r   rx   r    s       r   Útest_ellipsis_1d_slicingz.TestSlicingAndFancy1D.test_ellipsis_1d_slicingÎ   sJ   € Ü�I‰I�b‹MˆÙ�a‹LˆÜ�Q�s‘V—^‘^Ó% q¨¡vÔ.Ü�Q�t‘W—_‘_Ó&¨¨$©Õ0r$   c                 óF  —  |d«      }t        j                  d«      }t        j                  «       5  t        j                  ddt
        «       ||fD ]  }d|dd d|dd d|dd	 d|d	d  d|d	d d
…<   Œ  	 d d d «       t        |j                  «       |«       y # 1 sw Y   Œ$xY w)N©rQ   rK   rL   r   r   r   r'   rP   r   r   )r   ÚzerosrX   rY   rZ   r   r   r	   )r   r   r    rx   ry   s        r   Útest_slice_scalar_assignz.TestSlicingAndFancy1D.test_slice_scalar_assign×   s¦   € Ù�d‹OˆÜ�H‰H�T‹NˆÜ×$Ñ$Õ&Ü×#Ñ#ØØDÜ'ôð
 ˜“V�Ø��!�A�Ø��!�A�Ø��!�A�Ø��!�"�Ø��!�%�R�%’ñ ÷ 'ô 	�Q—Y‘Y“[ !Õ$÷ 'Ð&ús   ²ABÂB c                 óp  — d}t        d«      t        d dd«      t        dd«      fD ]‚  } ||«      }t        j                  «       5  t        j                  ddt        «       d	||<   d d d «       t        j                  |«      }d	||<   d
|›�}t        |j                  «       ||¬«       Œ„ y # 1 sw Y   ŒGxY w)Nrp   r   rq   r   rQ   rO   rK   rL   r   zidx=)Úerr_msg)	rw   rX   rY   rZ   r   r   r“   r   r	   )r   r   r   Úidxr    rx   rm   s          r   Útest_slice_assign_2z)TestSlicingAndFancy1D.test_slice_assign_2è   s¥   € Øˆä˜!“Hœe D¨"¨aÓ0´%¸¸2³,Ó?ˆCÙ˜%Ó ˆAÜ×(Ñ(Õ*Ü×'Ñ'ØØHÜ+ôð
 ��#‘÷ +ô —‘˜“ˆAØˆAˆc‰FØ˜˜�.ˆCÜ˜AŸI™I›K¨°CÖ8ñ @ç*Ð*ús   Á!B,Â,B5	c                 ó0  —  |d«      }t        j                  «       5  t        j                  ddt        «       d|d<   d|d<   d|d<   d|d<   |dz  }|d d  |d d  t	        |d d  j                  «       |d d  j                  «       «       |dz  }|d d |d d  t	        t        j                  d«      |d   z   |j                  «       «       |dz  }|dd  |d d	 t	        |dd  j                  «       |d d	 j                  «       «       d d d «       y # 1 sw Y   y xY w)
Nr’   rK   rL   r'   r   r   r   rq   r   )rX   rY   rZ   r   r   r	   r   r“   r�   s       r   Útest_self_self_assignmentz/TestSlicingAndFancy1D.test_self_self_assignmentù   s
  € á�d‹OˆÜ×$Ñ$Õ&Ü×#Ñ#ØØDÜ'ôð
 ˆAˆa‰DØˆAˆa‰DØˆAˆa‰DØˆAˆa‰Dà�B‘ˆAØ‘Q�4ˆA‰aˆDÜ˜™1˜Ÿ™›¨©1¨¯©«Ô8à�B‘ˆAØ�R�a�5ˆA‰aˆDÜœŸ™ $›¨!¨A©$Ñ.°·	±	³Ô<à�B‘ˆAØ�q�r�UˆAˆcˆrˆFÜ˜˜1˜2˜Ÿ™›¨!¨C¨R¨&¯.©.Ó*:Ô;÷+ '×&Ñ&ús   �C&DÄDc                 ó€  —  |d«      }t        j                  g d¢«      }ddg}t        j                  «       5  t        j                  ddt
        «       d|d<   d	|d<   ||z   |d d  t        |j                  «       |«       t        |«      |d d t        |j                  «       d d |«       d d d «       y # 1 sw Y   y xY w)
Nr4   )rq   r   rU   r   r'   r   rK   rL   rQ   r   rN   )	r   r   rX   rY   rZ   r   r   r	   r   )r   r   rx   ÚexpectedÚblocks        r   Útest_slice_assignmentz+TestSlicingAndFancy1D.test_slice_assignment  s¨   € Ù�d‹OˆÜ—8‘8šNÓ+ˆØ�A�ˆä×$Ñ$Õ&Ü×#Ñ#ØØDÜ'ôð
 ˆAˆa‰DØˆAˆa‰DØ�q‘5ˆA‰aˆDÜ˜Ÿ™› hÔ/ä˜eÓ$ˆAˆbˆqˆEÜ˜Ÿ™› R a˜¨%Ô0÷ '×&Ñ&ús   ¸A3B4Â4B=c                 óò  —  |d«      }t        j                  dt        «      }t         j                  }|d d |dd |dd  |dd d…   |ddd…   |dd d	…   |d dd…   d
d|d d  |dd dd	dt        j                  d«      t        j
                  d«      g}t        j                  «       5  t        j                  ddt        «       t        |«      D ]3  \  }}|||<   |||<   t        |j                  «       |t        |«      «       Œ5 t        ddd«      |ddd…<   t        ddd«      |ddd…<   t        |j                  «       |«       d d d «       t        t        d«      «      }t!        j"                  t$        d¬«      5  |j'                  d
|«       d d d «       t!        j"                  t$        d¬«      5  |j'                  t)        d «      |«       d d d «       y # 1 sw Y   Œ“xY w# 1 sw Y   ŒUxY w# 1 sw Y   y xY w)Nr’   rQ   r'   r   r   rM   r   r   rO   r   r‚   rƒ   rK   rL   rq   éd   rj   r2   zcould not be broadcast together)r   r“   Úfloatr…   r   r„   rX   rY   rZ   r   r†   r   r	   r‡   r   Úlistr5   r6   rk   r[   rw   )	r   r   r    rx   r…   rŠ   r"   r‹   Útoobigs	            r   Útest_set_slicez$TestSlicingAndFancy1D.test_set_slice&  sÁ  € Ù�d‹OˆÜ�H‰H�QœÓˆÜ�U‰UˆØ�R�a�&˜"˜Q˜q˜' 2 a b 6¨2¨a¨d°¨d©8Ø�Q�q˜�V‘*˜b   B ™i¨¨E¨Q¨r¨E©Ø�Q˜™1˜˜r ! A˜w¨¨B°Ü—(‘(˜2“,¤§¡¨£ð-ˆô
 ×$Ñ$Õ&Ü×#Ñ#ØØDÜ'ôô
 " &Ö)‘��1Ø��!‘Ø��!‘Ü˜QŸY™Y›[¨!¬T°!«WÕ5ð *ô
 ˜a  A›ˆAˆa��1ˆf‰IÜ˜a  A›ˆAˆa��1ˆf‰IÜ˜Ÿ™› aÔ(÷ 'ô  ”e˜C“jÓ!ˆÜ�]‰]œ:Ð-UÖVØ�M‰M˜!˜VÔ$÷ Wä�]‰]œ:Ð-NÖOØ�M‰Mœ% ›+ vÔ.÷ PÐO÷' 'Ð&ú÷" WÐVúçOÐOús%   Â&BGÅ:G!Æ0G-ÇGÇ!G*Ç-G6c                 óŒ   —  |t        j                  d«      «      } |d«      }||d d t        |j                  «       g d¢«       y )Nr   ©r'   r'   )r   r   r   )r   Úonesr   r	   )r   r   r    rx   s       r   Útest_assign_emptyz'TestSlicingAndFancy1D.test_assign_emptyE  s8   € Ù”b—g‘g˜a“jÓ!ˆÙ�d‹OˆØˆˆ"ˆ1ˆÜ�Q—Y‘Y“[¢)Õ,r$   c                 óÔ   —  |dt         j                  ¬«      }t        |ddg   j                  t         j                  «       t        |g    j                  t         j                  «       y )Nr¦   rI   F)r   rr   r   rJ   r.   s      r   Ú#test_dtype_preservation_empty_indexz9TestSlicingAndFancy1D.test_dtype_preservation_empty_indexN  sE   € Ù�d¤"§(¡(Ô+ˆÜ�Q˜˜u�~Ñ&×,Ñ,¬b¯h©hÔ7Ü�Q�r‘U—[‘[¤"§(¡(Õ+r$   c                 ó>  —  |t        j                  d«      «      }t        j                  t        d¬«      5  |j                  d«       d d d «       t        j                  t        d¬«      5  |j                  d«       d d d «       y # 1 sw Y   Œ?xY w# 1 sw Y   y xY w)NrQ   zIndex dimension must be 1 or 2r2   Úfooztuple index out of range)r'   r¬   )r   r“   r5   r6   r7   r8   r.   s      r   Útest_bad_indexz$TestSlicingAndFancy1D.test_bad_indexS  sj   € Ù”b—h‘h˜q“kÓ"ˆÜ�]‰]œ:Ð-MÖNØ�M‰M˜%Ô ÷ Oä�]‰]œ:Ð-GÖHØ�M‰M˜*Ô%÷ IÐH÷ OÐNúçHÐHús   ·BÁ,BÂBÂBc           
      óØ  — t        j                  d«      j                  d«      } ||«      }t        |ddg   j	                  «       |ddg   «       t        |dddgf   j	                  «       |dddgf   «       t        |dddgf   j	                  «       |dddgf   «       t        |t        j
                  d«      ddgf   j	                  «       |dddgf   «       t        |dt        j
                  ddg«      f   j	                  «       |dddgf   «       t        |t        j
                  d«      t        j
                  ddg«      f   j	                  «       |dddgf   «       t        |d d …g d¢f   j	                  «       |d d …g d¢f   «       t        |dd	…d
gf   j	                  «       |dd	…d
gf   «       t        |dd	…ddgf   j	                  «       |dd	…ddgf   «       t        |dd	…t        j
                  ddg«      f   j	                  «       |dd	…ddgf   «       t        |ddgdf   j	                  «       |ddgdf   «       t        |ddgdf   j	                  «       |ddgdf   «       t        |t        j
                  ddg«      df   j	                  «       |ddgdf   «       t        |ddgt        j
                  d«      f   j	                  «       |ddgdf   «       t        |t        j
                  ddg«      t        j
                  d«      f   j	                  «       |ddgdf   «       t        |ddgd d …f   j	                  «       |ddgd d …f   «       t        |ddgdd…f   j	                  «       |ddgdd…f   «       t        |t        j
                  ddg«      dd…f   j	                  «       |ddgdd…f   «       t        t	        |ddgdd	gf   «      |ddgdd	gf   «       t        t	        |ddgddgf   «      |ddgddgf   «       t        t	        |t        j
                  ddg«      ddgf   «      |ddgddgf   «       t        t	        |ddgt        j
                  ddg«      f   «      |ddgddgf   «       t        t	        |t        j
                  ddg«      t        j
                  ddg«      f   «      |ddgddgf   «       t        |dgdggdd	gf   j	                  «       |dgdggdd	gf   «       t        |dgdgdggddgf   j	                  «       |dgdgdggddgf   «       t        |t        j
                  dgdgdgg«      ddgf   j	                  «       |dgdgdggddgf   «       t        |dgdgdggt        j
                  ddg«      f   j	                  «       |dgdgdggddgf   «       t        |t        j
                  dgdgdgg«      t        j
                  ddg«      f   j	                  «       |dgdgdggddgf   «       t        |ddg   j	                  «       |ddg   «       t        |ddg   j	                  «       |ddg   «       t        |t        j
                  ddg«         j	                  «       |ddg   «       t        |ddgd d …f   d d …dd	gf   j	                  «       |ddgd d …f   d d …dd	gf   «       t        |ddgd d …f   d d …ddgf   j	                  «       |ddgd d …f   d d …ddgf   «       t        |t        j
                  ddg«      d d …f   d d …t        j
                  ddg«      f   j	                  «       |ddgd d …f   d d …ddgf   «       t        |d d …ddgf   dd	gd d …f   j	                  «       |d d …ddgf   dd	gd d …f   «       t        |d d …ddgf   ddgd d …f   j	                  «       |d d …ddgf   ddgd d …f   «       t        |d d …t        j
                  ddg«      f   t        j
                  ddg«      d d …f   j	                  «       |d d …ddgf   ddgd d …f   «       y )Nr~   )rQ   rq   r   r   r   r'   r‚   )r'   rM   r   r   r   rP   r1   rM   rƒ   rO   )r   r*   r+   r   r	   r   r�   s       r   Útest_fancy_indexing_2darrayz1TestSlicingAndFancy1D.test_fancy_indexing_2darrayZ  sã  € Ü�I‰I�b‹M×!Ñ! 'Ó*ˆÙ�a‹Lˆô 	�Q˜˜1�v‘Y×&Ñ&Ó(¨!¨Q°¨F©)Ô4ô 	�Q�q˜1˜a˜&�y‘\×)Ñ)Ó+¨Q¨q°1°a°&¨y©\Ô:Ü�Q�r˜A˜r˜7�{‘^×+Ñ+Ó-¨q°°a¸°W°©~Ô>Ü�Q”r—x‘x “| a¨ WÐ,Ñ-×5Ñ5Ó7¸¸2ÀÀ2¸w¸;¹ÔHÜ�Q�rœ2Ÿ8™8 Q¨ GÓ,Ð,Ñ-×5Ñ5Ó7¸¸2ÀÀ2¸w¸;¹ÔHÜ�Q”r—x‘x “|¤R§X¡X¨q°"¨gÓ%6Ð6Ñ7×?Ñ?ÓAÀ1ÀRÈ!ÈRÈÀ[Á>ÔRô 	�Q’qš-Ð'Ñ(×0Ñ0Ó2°A²aºÐ6FÑ4GÔHÜ�Q�q˜�s˜Q˜C�x‘[×(Ñ(Ó*¨A¨a°¨c°A°3¨h©KÔ8Ü�Q�q˜�s˜R ˜H�}Ñ%×-Ñ-Ó/°°1°Q°3¸¸R¸°=Ñ1AÔBÜ�Q�q˜�sœBŸH™H b¨" XÓ.Ð.Ñ/×7Ñ7Ó9¸1¸Q¸q¸SÀ2ÀrÀ(¸]Ñ;KÔLô 	�Q˜˜1�v˜q�y‘\×)Ñ)Ó+¨Q°°1¨v°q¨y©\Ô:Ü�Q˜˜2�w �{‘^×+Ñ+Ó-¨q°!°R°¸"°©~Ô>Ü�Q”r—x‘x  B Ó(¨"Ð,Ñ-×5Ñ5Ó7¸¸A¸r¸7ÀB¸;¹ÔHÜ�Q˜˜2�w¤§¡¨£Ð,Ñ-×5Ñ5Ó7¸¸A¸r¸7ÀB¸;¹ÔHÜ�Q”r—x‘x  B Ó(¬"¯(©(°2«,Ð6Ñ7×?Ñ?ÓAÀ1ÀaÈÀWÈbÀ[Á>ÔRô 	�Q˜˜1�všq�y‘\×)Ñ)Ó+¨Q°°1¨v²q¨y©\Ô:Ü�Q˜˜2�w  " �}Ñ%×-Ñ-Ó/°°A°r°7¸A¸b¸D°=Ñ1AÔBÜ�Q”r—x‘x  B Ó(¨!¨B¨$Ð.Ñ/×7Ñ7Ó9¸1¸aÀ¸WÀaÈÀd¸]Ñ;KÔLô 	”W˜Q  1˜v¨¨1 v˜~Ñ.Ó/°°A°q°6¸A¸q¸6°>Ñ1BÔCÜ”W˜Q  B˜x¨!¨R¨Ð0Ñ1Ó2°A°r¸2°hÀÀBÀÐ6GÑ4HÔIÜÜ�A”b—h‘h  B˜xÓ(¨1¨b¨'Ð1Ñ2Ó3°Q¸¸B°xÀ!ÀRÀÐ7HÑ5Iô	
ô 	Ü�A�r˜2�h¤§¡¨!¨R¨Ó 1Ð1Ñ2Ó3°Q¸¸B°xÀ!ÀRÀÐ7HÑ5Iô	
ô 	Ü�A”b—h‘h  B˜xÓ(¬"¯(©(°A°r°7Ó*;Ð;Ñ<Ó=¸qÀ"ÀbÀÈAÈrÈ7ÐARÑ?Sô	
ô
 	�Q˜˜˜a˜S�z A q 6Ð)Ñ*×2Ñ2Ó4°a¸!¸¸q¸c¸
ÀQÈÀFÐ8JÑ6KÔLÜØ�ˆt�b�T˜B˜4Ð  1 b 'Ð)Ñ*×2Ñ2Ó4Ø�ˆt�b�T˜B˜4Ð  1 b 'Ð)Ñ*ô	
ô 	ØŒb�h‰h˜˜˜r˜d R DÐ)Ó*¨Q°¨GÐ3Ñ4×<Ñ<Ó>Ø�ˆt�b�T˜B˜4Ð  1 b 'Ð)Ñ*ô	
ô 	Ø�ˆt�b�T˜B˜4Ð ¤"§(¡(¨A¨r¨7Ó"3Ð3Ñ4×<Ñ<Ó>Ø�ˆt�b�T˜B˜4Ð  1 b 'Ð)Ñ*ô	
ô 	ØŒb�h‰h˜˜˜r˜d R DÐ)Ó*¬B¯H©H°a¸°WÓ,=Ð=Ñ>×FÑFÓHØ�ˆt�b�T˜B˜4Ð  1 b 'Ð)Ñ*ô	
ô 	�Q˜˜1�v‘Y×&Ñ&Ó(¨!¨Q°¨F©)Ô4Ü�Q˜˜B�x‘[×(Ñ(Ó*¨A¨r°2¨h©KÔ8Ü�Q”r—x‘x  R Ó)Ñ*×2Ñ2Ó4°a¸¸R¸±kÔBô 	Øˆq�!ˆf’aˆi‰Lš˜Q ˜F˜Ñ#×+Ñ+Ó-¨q°!°Q°º°©|ºAÀÀ1¸v¸IÑ/Fô	
ô 	Øˆr�2ˆhšˆk‰Nš1˜q "˜g˜:Ñ&×.Ñ.Ó0°!°R¸°Hºa°K±.ÂÀQÈÀGÀÑ2Lô	
ô 	ØŒb�h‰h˜˜B�xÓ ¢!Ð#Ñ$¢Q¬¯©°!°R°Ó(9Ð%9Ñ:×BÑBÓDØˆr�2ˆhšˆk‰Nš1˜q "˜g˜:Ñ&ô	
ô 	ØŠa�!�Q�ˆi‰L˜!˜Q˜¢˜Ñ#×+Ñ+Ó-¨q²°Q¸°F°©|¸QÀ¸FÂA¸IÑ/Fô	
ô 	ØŠa�"�b�ˆk‰N˜A˜r˜7¢A˜:Ñ&×.Ñ.Ó0°!²A¸¸B°x°K±.À!ÀRÀÊ!ÀÑ2Lô	
ô 	ØŠa”—‘˜2˜r˜(Ó#Ð#Ñ$¤R§X¡X¨q°"¨gÓ%6ºÐ%9Ñ:×BÑBÓDØŠa�"�b�ˆk‰N˜A˜r˜7¢A˜:Ñ&õ	
r$   c                 óØ  — t        j                  d«      } ||«      }t        |dg   j                  «       |dg   «       t        |ddg   j                  «       |ddg   «       t        |ddg   j                  «       |ddg   «       t        |t        j                  d«         |d   «       t        |t        j                  ddg«         j                  «       |ddg   «       t        |t        j                  d«         |t        j                  d«         «       t        j                  dgdgg«      }t        ||   j                  «       ||   «       t        j                  dgdgd	gg«      }t        ||   j                  «       ||   «       t        |ddg   j                  «       |ddg   «       t        |ddg   j                  «       |ddg   «       t        |t        j                  ddg«         j                  «       |ddg   «       t        |g d
¢   ddg   j                  «       |g d
¢   ddg   «       t        |g d¢   ddg   j                  «       |g d¢   ddg   «       y )Nr~   r   r   r'   r‚   r   rQ   rƒ   rO   )r   rQ   r'   rM   )r   r‚   r'   rM   r1   )r   r*   r   r	   r   )r   r   rx   r    Úinds        r   Útest_fancy_indexingz)TestSlicingAndFancy1D.test_fancy_indexing·  s&  € Ü�I‰I�b‹MˆÙ�a‹Lˆô 	�Q˜�s‘V—^‘^Ó% q¨!¨¡vÔ.ô 	�Q˜˜1�v‘Y×&Ñ&Ó(¨!¨Q°¨F©)Ô4Ü�Q˜˜2�w‘Z×'Ñ'Ó)¨1¨a°¨W©:Ô6Ü�Q”r—x‘x “|‘_ a¨¡eÔ,Ü�Q”r—x‘x  Q Ó(Ñ)×1Ñ1Ó3°Q¸¸A°w±ZÔ@Ü�Q”r—x‘x “{‘^ Q¤r§x¡x°£{¡^Ô4ô �h‰h˜˜˜a˜S�zÓ"ˆÜ�Q�s‘V—^‘^Ó% q¨¡vÔ.Ü�h‰h˜˜˜r˜d R DÐ)Ó*ˆÜ�Q�s‘V—^‘^Ó% q¨¡vÔ.ô 	�Q˜˜1�v‘Y×&Ñ&Ó(¨!¨Q°¨F©)Ô4Ü�Q˜˜B�x‘[×(Ñ(Ó*¨A¨r°2¨h©KÔ8Ü�Q”r—x‘x  R Ó)Ñ*×2Ñ2Ó4°a¸¸R¸±kÔBô 	�Q’|‘_ a¨ VÑ,×4Ñ4Ó6Ø’|‘_ a¨ VÑ,ô	.ä�Q’~Ñ&¨¨2 wÑ/×7Ñ7Ó9Ø’~Ñ&¨¨2 wÑ/õ	1r$   c                 óª  — t         j                  j                  d«       t        j                  d«      } ||«      }t        j                  t         j                  j                  ddd¬«      t        ¬«      }t        t        ||   «      ||   «       t        t        ||dkD     «      ||dkD     «       t        j                  dt        ¬«      }t        j                  dt        ¬«      }d	|d
<   t        j                  dt        ¬«      }d	|d<   d}t        j                  t        |¬«      5  |j                  |«       d d d «       t        j                  t        |¬«      5  |j                  |«       d d d «       t        j                  t        |¬«      5  |j                  |«       d d d «       y # 1 sw Y   ŒtxY w# 1 sw Y   ŒKxY w# 1 sw Y   y xY w)NéÒ  r~   r   r'   ©rˆ   rI   rP   é3   Tr   z3bool index .* has shape|boolean index did not matchr2   )r   ÚrandomÚseedr*   r   ÚrandintÚboolr   r	   r“   r5   r6   r7   r8   )	r   r   rx   r    ÚIÚZ1ÚZ2ÚZ3rm   s	            r   Útest_fancy_indexing_booleanz1TestSlicingAndFancy1D.test_fancy_indexing_booleanÖ  sA  € Ü
�	‰	�‰�tÔä�I‰I�b‹MˆÙ�a‹Lˆä�H‰H”R—Y‘Y×&Ñ& q¨!°"Ð&Ó5¼TÔBˆä”W˜Q˜q™T“] A a¡DÔ)Ü”W˜Q˜q 1™u™XÓ&¨¨!¨a©%©Ô1ä�X‰X�b¤Ô%ˆÜ�X‰X�b¤Ô%ˆØˆˆ2‰Ü�X‰X�b¤Ô%ˆØˆˆ1‰àCˆÜ�]‰]œ:¨SÖ1Ø�M‰M˜"Ô÷ 2ä�]‰]œ:¨SÖ1Ø�M‰M˜"Ô÷ 2ä�]‰]œ:¨SÖ1Ø�M‰M˜"Ô÷ 2Ð1÷	 2Ð1úç1Ð1úç1Ð1ús$   Ä,F1Å!F=ÆG	Æ1F:Æ=GÇ	Gc                 ó  — t         j                  j                  d«       t        j                  d«      } ||«      }t        j                  t         j                  j                  ddd¬«      t        ¬«      }t        |«      }t        t        ||   «      ||   «       t        t        ||dkD     «      ||dkD     «       t        j                  t         j                  j                  ddd¬«      t        ¬«      }t        |«      }t        j                  t        d	¬
«      5  |j                  |«       d d d «       t        j                  t        d¬
«      5  |j                  |df«       d d d «       y # 1 sw Y   ŒAxY w# 1 sw Y   y xY w)Nr´   r�   r   r'   rµ   rI   rP   é<   z%bool index .* has shape|only integersr2   z&tuple index out of range|only integersr   )r   r·   r¸   r*   r   r¹   rº   r   r   r	   r5   r6   r7   r8   )r   r   rx   r    r   ÚXspÚYÚYsps           r   Ú"test_fancy_indexing_sparse_booleanz8TestSlicingAndFancy1D.test_fancy_indexing_sparse_booleanï  s  € Ü
�	‰	�‰�tÔä�I‰I�b‹MˆÙ�a‹Lˆä�H‰H”R—Y‘Y×&Ñ& q¨!°"Ð&Ó5¼TÔBˆÜ˜‹lˆä”W˜Q˜s™V“_ a¨¡dÔ+Ü”W˜Q˜q 1™u™XÓ&¨¨!¨a©%©Ô1ä�H‰H”R—Y‘Y×&Ñ& q¨!°"Ð&Ó5¼TÔBˆä˜‹lˆä�]‰]œ:Ð-TÖUØ�M‰M˜#Ô÷ Vä�]‰]œ:Ð-UÖVØ�M‰M˜3 ˜(Ô#÷ WÐV÷ VÐUúçVÐVús   Ä E2ÅE>Å2E;Å>Fc                 óì   —  |t        j                  ddg«      «      }t        j                  t        d¬«      5  |j                  dt        j                  ddg«      «       d d d «       y # 1 sw Y   y xY w)Nr   r   rj   r2   r'   )r   r   r5   r6   rk   r[   )r   r   Úmats      r   Útest_fancy_indexing_seq_assignz4TestSlicingAndFancy1D.test_fancy_indexing_seq_assign  sP   € ÙœŸ™ ! Q Ó(Ó)ˆÜ�]‰]œ:Ð-UÖVØ�O‰O˜AœrŸx™x¨¨A¨Ó/Ô0÷ W×VÑVús   ¹(A*Á*A3c                 ó–  — t        j                  d«      }d|dd d|d<    ||«      }t        j                  dgdz  «      }t        t	        ||   «      ||   «       t        j                  g t
        ¬«      }t        t	        ||   «      ||   «       t        j                  g d¢t
        ¬«      }t        t	        ||   «      ||   «       y )	Nr~   r   r   rP   é   FrI   )r   r   r'   r   r   ©r   r*   r   r   r	   Úint)r   r   rx   r    ÚKÚJs         r   Útest_fancy_indexing_emptyz/TestSlicingAndFancy1D.test_fancy_indexing_empty	  s¢   € Ü�I‰I�b‹MˆØˆˆ!ˆAˆØˆˆ"‰Ù�a‹Lˆä�H‰H�e�W˜r‘\Ó"ˆÜ”W˜Q˜q™T“] A a¡DÔ)Ü�H‰H�RœsÔ#ˆÜ”W˜Q˜q™T“] A a¡DÔ)Ü�H‰H’_¬CÔ0ˆÜ”W˜Q˜q™T“] A a¡DÕ)r$   c                 óØ   —  |t        j                  d«      «      }d}t        j                  t        t
        t        f|¬«      5  |j                  dd«       d d d «       y # 1 sw Y   y xY w)NrQ   z,Index dimension must be 1 or 2|only integersr2   r¬   r'   )r   r“   r5   r6   r7   rk   Ú	TypeErrorr[   )r   r   r    rm   s       r   Útest_bad_index_assignz+TestSlicingAndFancy1D.test_bad_index_assign  sI   € Ù”b—h‘h˜q“kÓ"ˆØ<ˆÜ�]‰]œJ¬
´IÐ>ÀcÖJØ�M‰M˜% Ô#÷ K×JÑJús   ÁA Á A)c                 óÒ  — d}g d¢t        d dd«      t        j                  d«      t        dd«      t        dd«      fD ]�  } ||«      }t        j                  |«      }t	        j
                  «       5  t	        j                  d	d
t        «       d||<   t        |«      5  d||<   d d d «       d d d «       t        |j                  «       |«       Œ‘ y # 1 sw Y   Œ.xY w# 1 sw Y   Œ2xY w)Nr’   )r'   r   r   rq   r   r   rQ   rO   r'   rK   rL   r   )rw   r   r*   r“   rX   rY   rZ   r   r   r   r	   )r   r   ÚMr"   r    rx   s         r   Útest_fancy_indexing_setz-TestSlicingAndFancy1D.test_fancy_indexing_set  sÁ   € Øˆò œU 4¨¨QÓ/´·±¸1³Ü˜1˜b“\¤5¨¨A£;ó0ˆAá˜!“ˆAÜ—‘˜“ˆAÜ×(Ñ(Õ*Ü×'Ñ'ØØHÜ+ôð
 ��!‘Ü)¨!Õ,Ø�A�a‘D÷ -÷ +ô ˜AŸI™I›K¨Õ+ñ0÷ -Ð,ú÷ +Ð*ús$   Á2,CÂCÂ$CÃCÃCÃC&	c                 óª  —  |d«      } |d«      }g d¢}d}t        j                  |«      }t        j                  «       5  t        j                  ddt
        «       t        |«      5  ||   ||<   d}t        j                  t        |¬«      5  |j                  |«       d d d «       ||   ||<   d d d «       t        |d d j                  «       |j                  «       «       |j                  dk(  sJ ‚ |d«      }t        |«      5  d	d
g|dd d d d «       t        |j                  «       g d¢«        |d«      }t        j                  d«      }t        |«      5  ||fD ]  }g d¢|g d¢<   Œ 	 d d d «       t        |j                  «       |«       d d d «       y # 1 sw Y   ŒûxY w# 1 sw Y   Œ÷xY w# 1 sw Y   Œ¤xY w# 1 sw Y   ŒPxY w# 1 sw Y   y xY w)Nr4   rf   )r   r   r'   rK   rL   z3Too many indices for array|tuple index out of ranger2   r   rq   r�   r   )r   rq   r�   r   r   )r   rQ   ri   )r   r   rX   rY   rZ   r   r   r5   r6   r7   r8   r   r	   r   r“   )	r   r   r    rx   Úi0Úi1Úi2rm   ry   s	            r   Útest_sequence_assignmentz.TestSlicingAndFancy1D.test_sequence_assignment2  sƒ  € Ù�d‹OˆÙ�d‹OˆâˆØˆÜ�X‰X�b‹\ˆä×$Ñ$Õ&Ü×#Ñ#ØØDÜ'ôô
 & aÕ(Ø˜"™��"‘ØK�Ü—]‘]¤:°SÖ9Ø—M‘M "Ô%÷ :à˜"™��"‘÷ )ô ˜˜2˜A˜Ÿ™›¨!¯)©)«+Ô6Ø—7‘7˜d’?Ð"�?ñ ˜$“ˆAÜ% aÕ(Ø˜b˜��!�A�÷ )ä˜Ÿ™›¢nÔ5ñ ˜$“ˆAÜ—‘˜“ˆAÜ% aÕ(Ø˜Q›�AÚ#,�A’i’Lñ  ÷ )ô ˜Ÿ™› aÔ(÷7 'Ð&÷ :Ð9ú÷ )Ð(ú÷ )Ð(ú÷ )Ð(ú÷1 'Ð&úsn   Á 'G	Á'&F%ÂFÂF%Â/AG	ÄF1ÄAG	ÅF=Å."G	ÆF"ÆF%Æ%F.	Æ*G	Æ1F:	Æ6G	Æ=G	ÇG	Ç	Gc                 ó:  — t        j                  d«      }d|d<   d|ddg<    ||«      }t        j                  dgdz  «      }d||<   t        |j	                  «       |«       t        j                  g t
        ¬«      }d||<   t        |j	                  «       |«       y )	Nr~   r   r'   r   ri   Fé*   rI   rË   )r   r   rx   r    rÍ   s        r   Útest_fancy_assign_emptyz-TestSlicingAndFancy1D.test_fancy_assign_emptyW  s„   € Ü�I‰I�b‹MˆØˆˆ!‰Øˆˆ1ˆaˆ&‰	Ù�a‹Lˆä�H‰H�e�W˜r‘\Ó"ˆØˆˆ!‰Ü�Q—Y‘Y“[ !Ô$ä�H‰H�RœsÔ#ˆØˆˆ!‰Ü�Q—Y‘Y“[ !Õ$r$   N)r]   r^   r_   rg   rn   ru   r|   r�   r�   r”   r˜   rš   rž   r¤   r¨   rª   r­   r¯   r²   r¿   rÅ   rÈ   rÏ   rÒ   rÕ   rÚ   rÝ   rB   r$   r   rc   rc   k   s   „ ò
"ò(ò2Iò
?ò$#:òJ1ò%ò"9ò"<ò41ò&/ò>-ò,ò
&ò[
òz1ò>ò2$ò*1ò
*ò $ò,ò&#)óJ%r$   rc   )Ú
contextlibrX   r5   Únumpyr   Únumpy.testingr   r   Úscipy.sparser   r   r   Útest_arithmetic1dr	   Úformats_for_index1dÚcontextmanagerr   r`   ra   r   rc   rB   r$   r   Ú<module>rå      s£   ðÛ Û ã Û ß 7ç FÑ FÝ &ð ! )Ð,Ð ð ×ÑñPó ðPð ‡�×Ñ˜Ð&9Ó:÷L-ð L-ó ;ðL-ð^ ‡�×Ñ˜Ð&9Ó:÷w%ð w%ó ;ñw%r$   