Ë
    Bü´jý% ã                   ó@  — d Z ddlZddlZddlZddlZddlm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 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 m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7 ddl8m9Z9m:Z:m;Z;m<Z<  G d„ d«      Z= G d	„ d
«      Z> G d„ d«      Z? G d„ d«      Z@ G d„ d«      ZA G d„ d«      ZB G d„ d«      ZC G d„ d«      ZD G d„ d«      ZE G d„ d«      ZF G d„ d«      ZG G d„ d«      ZH G d„ d «      ZI G d!„ d"«      ZJ G d#„ d$«      ZKy)%z�Tests suite for MaskedArray.
Adapted from the original test_ma by Pierre Gerard-Marchant

:author: Pierre Gerard-Marchant
:contact: pierregm_at_uga_dot_edu

é    N)Únormalize_axis_tuple)ÚMaskedArrayÚarangeÚarrayÚcountÚgetmaskarrayÚmaskedÚmasked_arrayÚnomaskÚonesÚshapeÚzeros)#Ú
_covhelperÚapply_along_axisÚapply_over_axesÚ
atleast_1dÚ
atleast_2dÚ
atleast_3dÚaverageÚclump_maskedÚclump_unmaskedÚcompress_ndÚcompress_rowcolsÚcorrcoefÚcovÚdiagflatÚdotÚediff1dÚflatnotmasked_contiguousÚin1dÚintersect1dÚisinÚmask_rowcolsÚ
masked_allÚmasked_all_likeÚmedianÚmr_ÚndenumerateÚnotmasked_contiguousÚnotmasked_edgesÚpolyfitÚ	setdiff1dÚsetxor1dÚstackÚunion1dÚuniqueÚvstack)Úassert_Úassert_almost_equalÚassert_array_equalÚassert_equalc                   ó<   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
y	)
ÚTestGenericc                 ó–  — t        dt        ¬«      }t        ddgddgt        ¬«      }t        ||«       t	        j
                  ddgddgdœ«      }t        d|¬«      }t        d	d	gd
d
g|¬«      }t        ||«       t        d|¬«      }t        d	d	gd	d	ggd
d
gd
d
gg|¬«      }t        ||«       t	        j
                  ddddgfg«      }t        d|¬«      }t        ddgddg|¬«      }t        ||«       t        d|¬«      }t        ddgddg|¬«      }t        ||«       t        d
|¬«      }t        dggdgg|¬«      }t        ||«       y )N©é   ©Údtypeé   ©Úmaskr<   ÚaÚbÚf©ÚnamesÚformats©r   r   ©r=   r=   ©r:   r:   ©r@   rB   ©ÚbarB   ©ÚbbrB   ©r=   rG   )r$   Úfloatr   r5   Únpr<   )ÚselfÚtestÚcontrolÚdts       úX/root/workspace/ytshorts/venv/lib/python3.12/site-packages/numpy/ma/tests/test_extras.pyÚtest_masked_allzTestGeneric.test_masked_allK   sn  € ô ˜$¤eÔ,ˆÜ˜˜A˜ a¨ V´5Ô9ˆÜ�T˜7Ô#ä�X‰X  c 
¸¸S°zÑBÓCˆÜ˜$ bÔ)ˆÜ˜ Ð(°¸Ð/?ÀrÔJˆÜ�T˜7Ô#Ü˜&¨Ô+ˆÜ˜& &Ð)¨F°FÐ+;Ð<Ø% vÐ.°¸Ð0@ÐAØ ô"ˆô 	�T˜7Ô#ä�X‰X�z C¨+°{Ð)CÐ#DÐEÓFˆÜ˜$ bÔ)ˆÜ˜ kÐ2Ø)¨;Ð7¸rôCˆä�T˜7Ô#Ü˜$ bÔ)ˆÜ˜ kÐ2Ø)¨;Ð7¸rôCˆä�T˜7Ô#Ü˜&¨Ô+ˆÜ˜+˜˜°¨}¨oÀRÔHˆÜ�T˜7Õ#ó    c                 ó.  — t        j                  ddt        fgdffg«      }t         j                  j	                  d|«      }t        t        |d   «      t         j                  j                  j                  «       t        t        |d   d   «      t         j                  j                  j                  «       t        t        |d   d   «      d«       t        |d   d   j                  d«       t        |d   d   j                  j                  d«       y )NrA   Úc©r=   r=   rG   © ©rP   r<   ÚobjectÚmar$   r5   ÚtypeÚcorer   Úlenr   Ú_fill_value©rQ   Úmy_dtypeÚ
masked_arrs      rU   Ú"test_masked_all_with_object_nestedz.TestGeneric.test_masked_all_with_object_nestedi   sÒ   € ô —8‘8˜c c¬6 ] O°TÐ#:Ð;Ð<Ó=ˆÜ—U‘U×%Ñ% d¨HÓ5ˆ
ä”T˜* S™/Ó*¬B¯E©E¯J©J×,BÑ,BÔCÜ”T˜* S™/¨#Ñ.Ó/´·±·±×1GÑ1GÔHÜ”S˜ C™¨Ñ-Ó.°Ô2Ü�Z ‘_ SÑ)×/Ñ/°Ô8Ü�Z ‘_ SÑ)×5Ñ5×;Ñ;¸RÕ@rW   c                 óœ  — t        j                  dt        dffg«      }t         j                  j	                  d|«      }t        t        |d   «      t         j                  j                  j                  «       t        t        |d   «      d«       t        |d   j                  d«       t        |d   j                  j                  d«       y )NrA   rZ   r=   rG   r[   r\   rc   s      rU   Útest_masked_all_with_objectz'TestGeneric.test_masked_all_with_objectu   s”   € ä—8‘8˜c¤F¨D >Ð2Ð3Ó4ˆÜ—U‘U×%Ñ% d¨HÓ5ˆ
ä”T˜* S™/Ó*¬B¯E©E¯J©J×,BÑ,BÔCÜ”S˜ C™Ó)¨1Ô-Ü�Z ‘_×*Ñ*¨FÔ3Ü�Z ‘_×0Ñ0×6Ñ6¸Õ;rW   c                 óº  — t        ddgt        ¬«      }t        |«      }t        ddgddgt        ¬«      }t        ||«       t	        j
                  ddgddgdœ«      }t        d	d	gd
d
g|¬«      }t        |«      }t        ddgd
d
g|¬«      }t        ||«       t	        j
                  ddddgfg«      }t        ddgddg|¬«      }t        |«      }t        ||«       y )Nr=   r:   r;   r>   r@   rA   rB   rC   rF   rG   )é
   rj   rI   rJ   rL   rN   )r   rO   r%   r5   rP   r<   )rQ   ÚbaserR   rS   rT   s        rU   Útest_masked_all_likez TestGeneric.test_masked_all_like   sê   € ô �a˜�V¤5Ô)ˆÜ˜tÓ$ˆÜ˜˜A˜ a¨ V´5Ô9ˆÜ�T˜7Ô#ä�X‰X  c 
¸¸S°zÑBÓCˆÜ�f˜fÐ%¨V°VÐ,<ÀBÔGˆÜ˜tÓ$ˆÜ˜ 8Ð,°F¸FÐ3CÈ2ÔNˆÜ�T˜7Ô#ä�X‰X�z C¨+°{Ð)CÐ#DÐEÓFˆÜ˜ kÐ2Ø)¨;Ð7¸rôCˆä˜wÓ'ˆÜ�T˜7Õ#rW   c                 ó0  — t        dd«      D �]  }t        d|z  «      D ]ò  }t        j                  |t        ¬«      }t        j                  ||t        ¬«      }t        d|z  «      }|d|z  z  dk7  |_        d} ||«      D ]"  }||j                  |   j                  «       z  }Œ$ |t        k(  r)t        |j                  «       j                  «       |«       Œ¹|j                   |_        t        |j                  «       j                  «       |«       Œô �Œ	 y )Nr=   é   r:   r;   r   )ÚrangerP   r   ÚintÚfullr
   r?   ÚdataÚsumr   r5   Ú
compressed)	rQ   rB   ÚiÚjÚkÚjar@   ÚsÚsls	            rU   Úcheck_clumpzTestGeneric.check_clump“   sê   € Ü�q˜!“ó 	:ˆAÜ˜1˜a™4“[ò :�Ü—I‘I˜a¤sÔ+�Ü—W‘W˜Q ¬Ô-�Ü   A¡Ó&�Ø  1¡™+¨!Ñ+�”Ø�Ù˜A›$ò *�BØ˜Ÿ™ ™Ÿ™Ó)Ñ)‘Að*àœÒ&Ü  §¡£×!3Ñ!3Ó!5°qÕ9àŸf™f˜W�A”FÜ  §¡£×!3Ñ!3Ó!5°qÕ9ò:ñ	:rW   c                 óô   — t        t        j                  d«      «      }t        |g d¢<   t	        |«      }t        dd«      t        dd«      t        dd«      g}t        ||«       | j                  t        «       y )Nrj   ©r   r=   r:   é   é   é	   r   é   r~   rn   r   )r
   rP   r   r	   r   Úslicer5   r{   ©rQ   r@   rR   rS   s       rU   Útest_clump_maskedzTestGeneric.test_clump_masked£   s^   € äœŸ™ 2›Ó'ˆÜ &ˆÒ
Ñä˜A‹ˆÜ˜˜A“;¤ a¨£¬U°1°b«\Ð:ˆÜ�T˜7Ô#à×ÑœÕ&rW   c                 óÞ   — t        t        j                  d«      «      }t        |g d¢<   t	        |«      }t        dd«      t        dd«      g}t        ||«       | j                  t        «       y )Nrj   r}   r�   r~   rn   r   )r
   rP   r   r	   r   r‚   r5   r{   rƒ   s       rU   Útest_clump_unmaskedzTestGeneric.test_clump_unmasked®   sW   € äœŸ™ 2›Ó'ˆÜ &ˆÒ
ÑÜ˜aÓ ˆÜ˜˜A“;¤ a¨£Ð.ˆÜ�T˜7Ô#à×ÑœÕ(rW   c                 ó¾  — t        d«      }t        |«      }t        |t        d|j                  «      g«       t        j                  dt        ¬«      |_        t        |t        d|j                  «      g«       t        ||dk  |dkD  z  |dk(  z  <   t        |«      }t        |t        dd«      t        dd«      g«       t        |d d  t        |«      }t        |g «       y )	Nrj   r   r;   r�   r   é   r~   r€   )
r   r   r5   r‚   ÚsizerP   r   Úboolr?   r	   )rQ   r@   rR   s      rU   Útest_flatnotmasked_contiguousz)TestGeneric.test_flatnotmasked_contiguous¸   s¹   € ä�2‹Jˆä'¨Ó*ˆÜ�TœE ! Q§V¡VÓ,Ð-Ô.ä—‘˜"¤DÔ)ˆŒÜ�TœE ! Q§V¡VÓ,Ð-Ô.ä*0ˆˆ1ˆq‰5�Q˜‘UÑ
˜q A™vÑ
&Ñ'Ü'¨Ó*ˆÜ�TœE ! Q›K¬¨q°!«Ð5Ô6äˆ‰!ˆÜ'¨Ó*ˆÜ�T˜2ÕrW   N)Ú__name__Ú
__module__Ú__qualname__rV   rf   rh   rl   r{   r„   r†   r‹   r[   rW   rU   r7   r7   I   s+   „ ò$ò<
Aò<ò$ò(:ò 	'ò)órW   r7   c                   óÌ   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	e
j                  j                  dg d	¢d
dgg d¢dgdgfg d¢g d¢gdg d¢gddgg d¢gg d¢gfg«      d„ «       Zd„ Zy
)ÚTestAveragec                 ó‚  — t        g d¢g d¢¬«      }t        dt        |d¬«      «       t        dt        |g d¢¬«      «       t        |g d¢d	¬
«      \  }}t        d|«       t        |dk(  «       t        |d d  t        t        |d¬«      j
                  d	g«       t        g d¢g d¢¬«      }|j                  dd«      }t        |d d …df<   t        t        |d¬«      ddg«       t        t        |d¬«      j
                  d   d	g«       t        ddgt        |d¬«      «       t        |dd	¬«      \  }}t        |ddg«       y )N)ç        ç      ð?ç       @ç      @)TFFF©r?   r”   r   ©Úaxis)r“   r“   r”   r“   ©ÚweightsT©rš   Úreturnedç      @r:   r=   r’   ©r˜   rœ   r“   )r   r5   r   r2   r	   r?   Úreshape)rQ   ÚottÚresultÚwtss       rU   Útest_testAverage1zTestAverage.test_testAverage1Í   s  € äÒ$Ò+FÔGˆÜ�Sœ' #¨AÔ.Ô/Ü�Sœ' #Ò/?Ô@ÔAÜ˜cÒ+;ÀdÔK‰ˆ�Ü�S˜&Ô!Ü��s‘
ÔÜˆ‰AˆÜ”W˜S qÔ)×.Ñ.°°Ô7ÜÒ$Ò+FÔGˆØ�k‰k˜!˜QÓˆÜˆŠAˆqˆD‰	Ü”W˜S qÔ)¨C°¨:Ô6Ü”W˜S qÔ)×.Ñ.¨qÑ1°D°6Ô:Ü�b˜"�Xœw s°Ô3Ô4Ü˜c¨°DÔ9‰ˆ�Ü�S˜2˜r˜(Õ#rW   c           
      óÒ  — g d¢}g d¢g d¢g}t        dt        j                  ¬«      }t        t	        |d¬«      d«       t        t	        |d|¬«      d«       t        t        dt        j                  ¬«      d	t        d«      z  g«      }t        t	        |d «      t        j                  j                  t        j                   d«      «      d
z  dz  «       t        t	        |d¬«      t        j                   d«      d
z  d	z  «       t        t	        |d¬«      t	        |d¬«      t	        |d¬«      d	z  g«       t        t	        |d |¬«      d«       t        t	        |d|¬«      g d¢«       t        t	        |d¬«      t	        |d¬«      t	        |d¬«      d	z  g«       t        d«      }g d¢}g d¢g d¢g}t        d«      }g d¢}	t        t	        t        ||«      d¬«      d«       t        t	        t        ||«      d¬«      d«       t        t	        t        ||«      d¬«      j                  dg«       t        t	        t        ||	«      d¬«      d«       t        t        t	        t        ||«      d¬«      «      d«       t        ||«      }
t        t	        |
d «      d«       t        t	        |
d¬«      g d¢«       t        t	        |
d¬«      ddg«       t        t	        |
d|¬«      g d¢«       y )N©r   r=   r=   r=   r=   r   ©r=   r   r   r   r   r=   r~   r;   r   r—   ç      @©r˜   rš   r”   r•   ç      (@r=   r™   g«ªªªªª
@)r’   r“   r”   r•   r�   ç      $@)r   r   r=   r=   r   r   )r   r=   r=   r=   r=   r=   Tr’   )r’   r“   ç     ÀX@r«   r�   g      @ç      @)r’   r“   r«   r«   r�   rª   )r   rP   Úfloat64r5   r   r   ÚaddÚreducer   r   r
   r?   r   )rQ   Úw1Úw2ÚxÚyÚm1Úm2Úm3Úm4Úm5Úzs              rU   Útest_testAverage2zTestAverage.test_testAverage2à   sD  € âˆÚ Ò"4Ð5ˆÜ�1œBŸJ™JÔ'ˆÜ”W˜Q QÔ'¨Ô-Ü”W˜Q Q°Ô3°SÔ9Ü”6˜!¤2§:¡:Ô.°´f¸Q³i±Ð@ÓAˆÜ”W˜Q Ó%¤r§v¡v§}¡}´R·Y±Y¸q³\Ó'BÀRÑ'GÈ#Ñ'MÔNÜ”W˜Q QÔ'¬¯©°1«¸Ñ):¸RÑ)?Ô@Ü”W˜Q QÔ'Ü˜a aÔ(¬'°!¸!Ô*<¸sÑ*BÐCô	Eä”W˜Q ¨bÔ1°8Ô<Ü”W˜Q Q°Ô3Ú.ô	0ä”W˜Q QÔ'Ü˜a aÔ(¬'°!¸!Ô*<¸sÑ*BÐCô	Eä�1‹XˆÚˆÚ Ò"4Ð5ˆÜ�!‹WˆÚˆÜ”Wœ\¨!¨RÓ0°qÔ9¸3Ô?Ü”Wœ\¨!¨RÓ0°qÔ9¸3Ô?Ü”Wœ\¨!¨RÓ0°qÔ9×>Ñ>ÀÀÔGÜ”Wœ\¨!¨RÓ0°qÔ9¸3Ô?Ü”Uœ7¤<°°2Ó#6¸QÔ?Ó@À!ÔDÜ˜˜BÓˆÜ”W˜Q Ó% xÔ0Ü”W˜Q QÔ'Ò)EÔFÜ”W˜Q QÔ'¨#¨s¨Ô4Ü”W˜Q Q°Ô3Ú2õ	4rW   c                 ój  — t        d«      }t        d«      dz  }t        ||g||ggdd¬«      \  }}t        t        |«      t        |«      «       t        |j                  |j                  «       t        t	        d«      dddgd¬«      \  }}t        t        |«      t        |«      «       t        t	        d«      d¬	«      \  }}t        t        |«      t        |«      «       t        t	        d«      t	        d«      d¬
«      \  }}t        t        |«      t        |«      «       t        ddgddggt        «      }t        |ddgddgg«      }t        |d¬«      }	t        |	ddg«       t        |d¬«      }
t        |
ddg«       t        |d ¬«      }
t        |
d«       t        |d¬«      }
t        |
ddg«       y )Nr~   r�   r=   Trž   ©r:   r:   r�   r   ©r˜   rš   rœ   )rœ   r›   r:   é   Fr—   ç      à?r•   r“   g«ªªªªª@ç      ø?r�   )r   r   r5   r   r   r   rO   r
   )rQ   r@   rA   Úr1r°   Úr2r±   Úa2dÚa2dmÚa2daÚa2dmas              rU   Útest_testAverage3zTestAverage.test_testAverage3  sq  € ä�1‹IˆÜ�1‹I˜‰MˆÜ˜1˜a˜& 1 a &Ð)°¸DÔA‰ˆˆBÜ”U˜2“Y¤ b£	Ô*Ü�R—X‘X˜rŸx™xÔ(Üœ˜i›¨q¸1¸a¸&È4ÔP‰ˆˆBÜ”U˜2“Y¤ b£	Ô*Üœ˜i›°4Ô8‰ˆˆBÜ”U˜2“Y¤ b£	Ô*Üœ˜i›´$°y³/ÈDÔQ‰ˆˆBÜ”U˜2“Y¤ b£	Ô*Ü�a˜�V˜a ˜VÐ$¤eÓ,ˆÜ˜C 5¨% .°4¸°-Ð!@ÓAˆÜ�s Ô#ˆÜ�T˜C ˜:Ô&Ü˜ 1Ô%ˆÜ�U˜S #˜JÔ'Ü˜ 4Ô(ˆÜ�U˜GÔ$Ü˜ 1Ô%ˆÜ�U˜S #˜JÕ'rW   c                 óT  — t        j                  g d¢«      j                  dd«      }t         j                  j                  |dgdgdgg¬«      }t        j                  g d¢«      j                  dd«      }t	        ||dd¬«      }t        d	gd
gdggdgdgdgg«      }t        ||«       y )N©r:   r�   r¾   r�   r=   FTr–   )r¾   rˆ   r~   )rš   r˜   Úkeepdimsr”   r•   r�   )rP   r   rŸ   r^   r   r
   r5   )rQ   r²   rA   ÚwÚactualÚdesireds         rU   Útest_testAverage4zTestAverage.test_testAverage4  s›   € ä�H‰H’YÓ×'Ñ'¨¨1Ó-ˆÜ�E‰E�K‰K˜ % ¨5¨'°D°6Ð :ˆKÓ;ˆÜ�H‰H’YÓ×'Ñ'¨¨1Ó-ˆÜ˜ A¨A¸Ô=ˆÜ   r d¨R¨DÐ1°U°G¸e¸WÀtÀfÐ3MÓNˆÜ�V˜WÕ%rW   c                 ó¸  — t        j                  d«      j                  ddd«      }t        j                  g d¢«      j                  ddd«      }t        j                  dd«      }t         j
                  j                  ||¬«      }|d d …d d …df   }t        |d	|¬
«      }t        g d¢g d¢¬«      }t        ||«       t        j                  dd«      }d|d d …d d …df<   d|d<   t         j
                  j                  ||¬«      }t        |d	|¬
«      }t        t         j                  ddgg d¢¬«      }t        ||«       t        j                  dd«      }t         j
                  j                  ||¬«      }|dd d …d d …f   }t        |d|¬
«      }t        ddgddg¬«      }t        ||«       t        j                  t        d¬«      5  t        |d|¬
«       d d d «       t        j                  t        d¬«      5  t        |d	|¬
«       d d d «       t        |d|¬
«      }t        |d	|j                  ¬
«      }t        ||«       y # 1 sw Y   ŒnxY w# 1 sw Y   ŒHxY w)Né   r:   r�   )r’   r’   r“   r¿   r¿   r’   r’   r¿   r¿   r“   r’   r’   r¼   Fr–   r   ©r   r=   r¨   )ç      @ç       @ç      "@)FFFT©r   r   r=   rÓ   rÔ   )TFFr=   ©r=   r:   g      @g     € @zHShape of weights must be consistent with shape of a along specified axis)Úmatch©r   r=   r:   )r=   r   )rP   r   rŸ   r   rq   r^   r   r
   r3   ÚnanÚpytestÚraisesÚ
ValueErrorÚT)	rQ   r³   rË   ÚmÚymaÚsubw0rÌ   rÍ   Úsubw1s	            rU   Ú$test_weight_and_input_dims_differentz0TestAverage.test_weight_and_input_dims_different#  s  € ô �I‰I�b‹M×!Ñ! ! Q¨Ó*ˆÜ�H‰HÒEÓFß‰W�Q˜˜1Óð 	
ô �G‰G�I˜uÓ%ˆÜ�e‰e�k‰k˜! !ˆkÓ$ˆØ’!’Q˜�'‘
ˆä˜ 6°5Ô9ˆÜš|Ò2GÔHˆÜ˜F GÔ,ä�G‰G�I˜uÓ%ˆØˆŠ!ŠQ�ˆ'‰
Øˆˆ'‰
Ü�e‰e�k‰k˜! !ˆkÓ$ˆÜ˜ 6°5Ô9ˆÜÜ�V‰V�R˜ÐÚ%ô'ˆô 	˜F GÔ,ä�G‰G�I˜uÓ%ˆÜ�e‰e�k‰k˜! !ˆkÓ$ˆà�!’Qš�'‘
ˆÜ˜ 6°5Ô9ˆÜ  d˜|°5¸%°.ÔAˆÜ˜F GÔ,ô �]‰]Üð8ô9ñ 	8ô �C˜i°Õ7÷		8ô �]‰]Üð8ô9ñ 	5ô �C˜f¨eÕ4÷		5ô ˜ 6°5Ô9ˆÜ˜# F°E·G±GÔ<ˆÜ˜F GÕ,÷	8ð 	8ú÷	5ð 	5ús   ÇIÇ:IÉIÉIc                 ó”   — t        t        ddg«      «      }t        |d«       t        t        g d¢g d¢¬«      «      }t        |d«       y )Nr=   r:   rÀ   )r=   r:   r�   r¾   ©FFTTr–   )r   r   r5   ©rQ   r@   s     rU   Útest_onintegers_with_maskz%TestAverage.test_onintegers_with_maskV  s:   € ä”E˜1˜a˜&“MÓ"ˆÜ�Q˜ÔÜ”Eš,Ò-GÔHÓIˆÜ�Q˜ÕrW   c                 ón  — t        j                  g d¢g d¢gt        ¬«      }t        g d¢g d¢g|¬«      }t	        |«      }t        j                  |j                  «       «      }t        |j                  |j                  «       t        |j                  |j                  «       t	        |d¬«      }t	        |j                  d¬«      t	        |j                  d¬«      d	z  z   }t        |j                  |j                  «       t        |j                  |j                  «       t	        |d
¬«      }t	        |j                  d
¬«      t	        |j                  d
¬«      d	z  z   }t        |j                  |j                  «       t        |j                  |j                  «       t        j                  g d¢g d¢g«      }	t	        ||	¬«      }
t        j                  |j                  «       |	|    ¬«      }t        |
j                  |j                  «       t        |
j                  |j                  «       t	        ||	d¬«      }t	        |j                  |	d¬«      t	        |j                  |	d¬«      d	z  z   }t        |j                  |j                  «       t        |j                  |j                  «       t	        ||	d
¬«      }t	        |j                  |	d
¬«      t	        |j                  |	d
¬«      d	z  z   }t        |j                  |j                  «       t        |j                  |j                  «       y )N)r   r   r   r=   r   ©r   r=   r   r   r   r;   )r   y      ð?       @y      @      @y      @      @y      @       @)y              "@ù              ð?y       @      @y      @      @y      @      @r–   r   r—   ré   r=   )r¿   r“   r”   r“   r¿   )r“   r“   r“   r“   r“   r™   ©rš   r˜   )	rP   r   rŠ   r
   r   rt   r3   ÚrealÚimag)rQ   r?   r@   ÚavÚexpectedÚav0Ú	expected0Úav1Ú	expected1r¢   ÚwavÚwav0Úwav1s                rU   Útest_complexzTestAverage.test_complex]  sH  € ô �x‰xšÚ(ð*Ü15ô7ˆäÒ=Ú>ð@à"ô$ˆô �Q‹ZˆÜ—:‘:˜aŸl™l›nÓ-ˆÜ˜BŸG™G X§]¡]Ô3Ü˜BŸG™G X§]¡]Ô3ä�a˜aÔ ˆÜ˜AŸF™F¨Ô+¬g°a·f±fÀ1Ô.EÈÑ.JÑJˆ	Ü˜CŸH™H i§n¡nÔ5Ü˜CŸH™H i§n¡nÔ5ä�a˜aÔ ˆÜ˜AŸF™F¨Ô+¬g°a·f±fÀ1Ô.EÈÑ.JÑJˆ	Ü˜CŸH™H i§n¡nÔ5Ü˜CŸH™H i§n¡nÔ5ô �h‰hÒ1Ú1ð3ó 4ˆä�a Ô%ˆÜ—:‘:˜aŸl™l›n°c¸4¸%±jÔAˆÜ˜CŸH™H h§m¡mÔ4Ü˜CŸH™H h§m¡mÔ4ä�q #¨AÔ.ˆÜ˜QŸV™V¨S°qÔ9Ü˜QŸV™V¨S°qÔ9¸BÑ>ñ?ˆ	ä˜DŸI™I y§~¡~Ô6Ü˜DŸI™I y§~¡~Ô6ä�q #¨AÔ.ˆÜ˜QŸV™V¨S°qÔ9Ü˜QŸV™V¨S°qÔ9¸BÑ>ñ?ˆ	ä˜DŸI™I y§~¡~Ô6Ü˜DŸI™I y§~¡~Õ6rW   z<x, axis, expected_avg, weights, expected_wavg, expected_wsum©r=   r:   r�   Nr”   )r�   r¾   r=   g      ü?rÓ   )r=   r:   rˆ   )r=   r~   é   r   )r“   r�   rÓ   r=   r�   )r“   r¬   g      #@)r¾   r¾   r¾   c                 ó\  — t         j                  j                  ||d¬«      }|j                  t        j                  |«      k(  sJ ‚t	        ||«       t         j                  j                  |||d¬«      }|j                  t        j                  |«      k(  sJ ‚t	        ||«       t         j                  j                  |||dd¬«      \  }}	|j                  t        j                  |«      k(  sJ ‚t	        ||«       |	j                  t        j                  |«      k(  sJ ‚t	        |	|«       y )NT)r˜   rÊ   )r˜   rš   rÊ   )r˜   rš   rœ   rÊ   )rP   r^   r   r   r4   )
rQ   r²   r˜   Úexpected_avgrš   Úexpected_wavgÚexpected_wsumÚavgÚwavgÚwsums
             rU   Útest_basic_keepdimszTestAverage.test_basic_keepdims‰  sñ   € ô �e‰e�m‰m˜A D°4ˆmÓ8ˆØ�y‰yœBŸH™H \Ó2Ò2Ð2Ð2Ü˜3 Ô-ä�u‰u�}‰}˜Q T°7ÀTˆ}ÓJˆØ�z‰zœRŸX™X mÓ4Ò4Ð4Ð4Ü˜4 Ô/ä—U‘U—]‘] 1¨4¸Ø,0¸4ð #ó A‰
ˆˆdà�z‰zœRŸX™X mÓ4Ò4Ð4Ð4Ü˜4 Ô/Ø�z‰zœRŸX™X mÓ4Ò4Ð4Ð4Ü˜4 Õ/rW   c                 óð  — t         j                  j                  t        j                  d«      j	                  dd«      g d¢g d¢g d¢g¬«      }t        g d¢d¬«      }t        g d¢g d¢¬«      }t        |d|d¬	«      }t        j                  g d
¢«      }t        ||«       t        |d|d¬	«      }t        j                  g d¢«      }t        ||«       t         j                  j                  g d¢g d¢¬«      }t        |dddt         j                  g¬«      }t        |d«       t         j                  j                  g d¢g d¢g d¢gg d¢g d¢g d¢g¬«      }t         j                  j                  |dt         j                  dgd¬«      }t         j                  j                  dt         j                  t         j                  dgg d¢¬«      }t        ||«       t        |j                  |j                  «       y )Nr€   r�   ©r=   r   r   ©r   r   r   r–   )rˆ   é   é   Fr   r½   )ç      @g     à@g     à@)r  g0�­N@g0�­N@)r“   r”   r•   r�   rä   r=   r™   rÀ   )r¬   r  rÒ   rÓ   )rÔ   r“   r”   r•   )FTTF)TFTT)TFTFrê   r“   ç      @)rP   r^   r   r   rŸ   r
   r   r3   rÙ   r5   r?   )	rQ   r@   Úweights_unmaskedÚweights_maskedÚavg_unmaskedÚexpected_unmaskedÚ
avg_maskedÚexpected_maskedÚavg_expecteds	            rU   Útest_masked_weightszTestAverage.test_masked_weights   s–  € ô �E‰E�K‰KœŸ	™	 !›×,Ñ,¨Q°Ó2Ú'ª²IÐ>ð ó @ˆä'ª¸%Ô@ÐÜ%¢kº	ÔBˆä˜q qØ'7À%ôIˆäŸH™HÒ%<Ó=ÐÜ˜LÐ*;Ô<ä˜Q Q°ÈÔOˆ
ÜŸ(™(Ò#NÓOˆÜ˜J¨Ô8ô
 �E‰E�K‰KÒ1Ú2ð ó 4ˆä˜q¨1¨a°´B·F±FÐ*;Ô<ˆä˜L¨#Ô.ä�E‰E�K‰KÚ Ú Ú ð
ò
 'Ú%Ú&ð
ð	 ó ˆô —U‘U—]‘] 1¨q´"·&±&¸!¨nÀ1�]ÓEˆ
Ü—u‘u—{‘{ C¬¯©´·±¸Ð#=Ú#=ð #ó ?ˆô 	˜J¨Ô5Ü�Z—_‘_ l×&7Ñ&7Õ8rW   )rŒ   r�   rŽ   r£   rº   rÇ   rÎ   râ   ræ   rö   rÚ   ÚmarkÚparametrizer   r  r[   rW   rU   r�   r�   Ë   s’   „ ò$ò& 4òD(ò0&ò1-òfò*7ðX ‡[�[×ÑØFÚ
�T˜C˜5¢)¨d¨V°c°UÐ	;Ú’jÐ
! 1¢Ð&7Øˆaˆ&’?Ð#¢i [ð
2ð	3óñ0óð0ó")9rW   r�   c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚTestConcatenatorc                 ó"  — t        t        d   t        g d¢«      «       t        d«      }g d¢}t	        ||¬«      }t        |dd|f   }t        t        |t        «      «       t        |g d¢«       t        |j                  t        |dd|f   «       y )N©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=   )	r4   r'   r   r   r
   r2   Ú
isinstancer   r?   )rQ   rA   rÞ   ÚdrY   s        rU   Útest_1dzTestConcatenator.test_1dÏ  sw   € äœ3Ð/Ñ0´%Ò8JÓ2KÔLÜ�‹GˆÚˆÜ˜ Ô#ˆÜ��1�a˜�
‰OˆÜ”
˜1œkÓ*Ô+Ü˜1ÒBÔCÜ˜1Ÿ6™6¤3 q¨!¨Q° z¡?Õ3rW   c                 ód  — t         j                  j                  dd«      }t         j                  j                  dd«      }t        j                  t         j                  j                  dd«      d«      }t        j                  t         j                  j                  dd«      d«      }t	        ||¬«      }t	        ||¬«      }t
        d||f   }t        |j                  dk(  «       t        |d d …d d…f   |«       t        |d d …dd …f   |«       t        |j                  t         j                  d||f   «       t
        ||f   }t        |j                  dk(  «       t        |d d…d d …f   |«       t        |dd …d d …f   |«       t        |j                  t         j                  ||f   «       y )Nrˆ   r   r–   Ú1)rˆ   rj   )rj   rˆ   )rP   ÚrandomÚrandÚroundr
   r'   r2   r   r4   r?   Úr_)rQ   Úa_1Úa_2Úm_1Úm_2Úb_1Úb_2r  s           rU   Útest_2dzTestConcatenator.test_2dÚ  sJ  € ä�i‰i�n‰n˜Q Ó"ˆÜ�i‰i�n‰n˜Q Ó"ˆÜ�h‰h”r—y‘y—~‘~ a¨Ó+¨QÓ/ˆÜ�h‰h”r—y‘y—~‘~ a¨Ó+¨QÓ/ˆÜ˜3 SÔ)ˆÜ˜3 SÔ)ˆä��S˜#�ÑˆÜ�—‘˜7Ñ"Ô#Ü˜1šQ   ˜U™8 SÔ)Ü˜1šQ ¡˜U™8 SÔ)Ü˜1Ÿ6™6¤2§5¡5¨¨c°3¨Ñ#7Ô8Ü��S�‰MˆÜ�—‘˜7Ñ"Ô#Ü˜1˜R˜a˜R¢˜U™8 SÔ)Ü˜1˜Q™R¢˜U™8 SÔ)Ü˜1Ÿ6™6¤2§5¡5¨¨c¨¡?Õ3rW   c                 ó\  — t         t        j                  j                  df   }t	        |j
                  ddg«       t	        |j                  d   d«       t         ddgt        j                  j                  f   }t	        |j
                  g d¢«       t	        |j                  d d ddg«       y )Nr=   TFr:   )FFT)r'   rP   r^   r	   r5   r?   rr   )rQ   rÌ   s     rU   Útest_masked_constantz%TestConcatenator.test_masked_constantî  s~   € Ü”R—U‘U—\‘\ 1�_Ñ%ˆÜ�V—[‘[ 4¨ -Ô0Ü�V—[‘[ ‘^ QÔ'ä�a˜�VœRŸU™UŸ\™\Ð)Ñ*ˆÜ�V—[‘[Ò"6Ô7Ü�V—[‘[  !�_ q¨! fÕ-rW   N)rŒ   r�   rŽ   r  r%  r'  r[   rW   rU   r  r  Ì  s   „ ò	4ò4ó(.rW   r  c                   ó   — e Zd Zd„ Zd„ Zy)ÚTestNotMaskedc           	      ó`  — t        t        j                  d«      j                  dd«      g d¢g d¢g d¢g d¢g d¢g¬«      }t	        |d «      }t        |d	d
g«       t	        |d	«      }t        |d	   ddg«       t        |d   ddg«       t	        |d«      }t        |d	   ddg«       t        |d   ddg«       t	        |j                  d «      }t        |d	d
g«       t	        |j                  d	«      }t        |d	   ddg«       t        |d   ddg«       t	        |j                  d«      }t        |d	   ddg«       t        |d   ddg«       t        |d<   t	        |d	«      }t        |d	   ddg«       t        |d   ddg«       t	        |d«      }t        |d	   ddg«       t        |d   ddg«       y )Né   rˆ   )r   r   r=   r   r   )r   r   r   r=   r=   )r=   r=   r   r   r   )r   r   r   r   r   )r=   r=   r=   r   r   r–   r   é   ©r   r=   r:   r�   r¾   r=   )r�   r�   r�   r¾   r¾   )r   r   r:   r   r�   )r¾   r:   r¾   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
   rP   r   rŸ   r*   r5   rr   r	   ©rQ   rr   rR   s      rU   Ú
test_edgeszTestNotMasked.test_edgesû  s®  € äœBŸI™I b›M×1Ñ1°!°QÓ7Ú"1Ú"1Ú"1Ú"1Ú"1ð	"3ô5ˆô ˜t TÓ*ˆÜ�T˜A˜r˜7Ô#Ü˜t QÓ'ˆÜ�T˜!‘W˜°Ð@ÔAÜ�T˜!‘W˜°Ð@ÔAÜ˜t QÓ'ˆÜ�T˜!‘W˜°Ð@ÔAÜ�T˜!‘W˜°Ð@ÔAä˜tŸy™y¨$Ó/ˆÜ�T˜A˜r˜7Ô#Ü˜tŸy™y¨!Ó,ˆÜ�T˜!‘W˜°Ð@ÔAÜ�T˜!‘W˜°Ð@ÔAÜ˜tŸy™y¨"Ó-ˆÜ�T˜!‘W˜°Ð@ÔAÜ�T˜!‘W˜°Ð@ÔAäˆˆR‰Ü˜t QÓ'ˆÜ�T˜!‘W˜°Ð@ÔAÜ�T˜!‘W˜°Ð@ÔAÜ˜t RÓ(ˆÜ�T˜!‘W˜|¨\Ð:Ô;Ü�T˜!‘W˜|¨\Ð:Õ;rW   c                 ó´  — t        t        j                  d«      j                  dd«      g d¢g d¢g d¢g¬«      }t	        |d «      }t        |t        dd	d «      t        d
dd «      t        ddd «      g«       t	        |d«      }t        |t        ddd «      t        ddd «      gt        ddd «      t        ddd «      gt        ddd «      t        ddd «      gt        ddd «      t        ddd «      gt        ddd «      gt        ddd «      gg t        ddd «      gg«       t	        |d«      }t        |t        dd	d «      gg t        ddd «      t        ddd «      gg«       y )Nr,  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~   rn   )r
   rP   r   rŸ   r)   r5   r‚   )rQ   r@   Útmps      rU   Útest_contiguouszTestNotMasked.test_contiguous  sp  € äœŸ™ 2›×.Ñ.¨q°!Ó4Ú7Ú7Ú7ð9ô:ˆô # 1 dÓ+ˆÜ�SÜ�!�Q˜ÓÜ�"�b˜$ÓÜ�"�b˜$Óð
ô 	ô # 1 aÓ(ˆÜ�SÜ�1�a˜Ó¤ a¨¨DÓ 1Ð2Ü�1�a˜Ó¤ a¨¨DÓ 1Ð2Ü�1�a˜Ó¤ a¨¨DÓ 1Ð2Ü�1�a˜Ó¤ a¨¨DÓ 1Ð2Ü�1�a˜ÓÐÜ�1�a˜ÓÐØÜ�1�a˜ÓÐð	
ô 		ô # 1 aÓ(ˆÜ�SÜ�1�a˜ÓÐØÜ�1�a˜Ó¤ a¨¨DÓ 1Ð2ð
õ 	rW   N)rŒ   r�   rŽ   r1  r7  r[   rW   rU   r)  r)  ø  s   „ ò <óDrW   r)  c                   ó  — e Zd Zd„ Zd„ Zd„ Zej                  j                  dg d¢«      ej                  j                  ddge	j                  j                  dfe	j                  j                  d	fg«      d
„ «       «       Zd„ Zd„ Zd„ Zy)ÚTestCompressFunctionsc           
      óÄ  — t        j                  t        t        d«      «      «      j	                  ddd«      }t        j
                  d«      j                  t        «      }d|d<   t        ||¬«      }t        |«      }t        |g d	¢g d
¢g d¢gg d¢g d¢g d¢gg«       t        |d«      }t        |g d¢g d¢g d¢g d¢gg d¢g d¢g d¢g d¢gg«       t        |d«      }t        |g d¢g d¢g d¢gg d¢g d¢g d¢gg d¢g d¢g d¢gg«       t        |d«      }t        |d«      }t        |d«      }t        ||«       t        ||«       t        ||«       t        |d«      }t        |g d	¢g d ¢g d
¢g d¢gg d!¢g d"¢g d#¢g d$¢gg d¢g d%¢g d¢g d¢gg«       t        |d&«      }t        |d'«      }t        |d(«      }t        ||«       t        ||«       t        ||«       t        |d)«      }t        |g d¢g d¢g d¢gg d¢g d¢g d¢gg«       t        |d*«      }t        ||«       t        |d+«      }t        |g d	¢g d
¢g d¢gg d!¢g d#¢g d$¢gg d¢g d¢g d¢gg«       t        |d,«      }t        |d-«      }t        |d.«      }t        ||«       t        ||«       t        ||«       t        |d/«      }t        |g d	¢g d ¢g d
¢g d¢gg d¢g d%¢g d¢g d¢gg«       t        |d0«      }t        ||«       y )1Né<   r�   r¾   rˆ   ©r�   r¾   rˆ   T©r=   r=   r=   r–   )r   r:   r�   r¾   )rj   rÐ   é   é   )é   é   é   é   )é(   é*   é+   é,   )é2   é4   é5   é6   )é7   é9   é:   é;   r   r-  )rˆ   r~   rn   r   r€   )rj   rø   rÐ   r>  r?  )r@  r3  rA  rB  rC  )rD  é)   rE  rF  rG  )é-   é.   é/   é0   é1   )rH  é3   rI  rJ  rK  )rL  é8   rM  rN  rO  r=   )é   é   r4  r5  r,  )é   r  é    é!   é"   )é#   é$   é%   é&   é'   rZ   r/  )r/  r:   )rˆ   rn   r   r€   )rX  r4  r5  r,  )r+  é   r  é   )rZ  r[  r\  r]  )r^  r`  ra  rb  )rQ  rS  rT  rU  r9   r.  )r.  rÑ   )r   r/  rÖ   )r/  r:   )r=   r.  )r/  r.  ©r   r:   )r   r.  )
rP   r   Úlistro   rŸ   r   ÚastyperŠ   r   r5   )rQ   r²   rÞ   r@   Úa2Úa3Úa4s          rU   Útest_compress_ndz&TestCompressFunctions.test_compress_nd@  s1  € ä�H‰H”Tœ% 	Ó*Ó+Ó,×4Ñ4°Q¸¸1Ó=ˆÜ�H‰H�YÓ×&Ñ&¤tÓ,ˆØˆˆ'‰
Ü�!˜!Ôˆô ˜‹NˆÜ�QÒ*Ú*Ú*ð,ò +Ú*Ú*ð,ð-ô 	.ô ˜˜1ÓˆÜ�QÒ.Ú.Ú.Ú.ð0ò /Ú.Ú.Ú.ð0ð	1ô 	2ô ˜˜1ÓˆÜ�QÒ.Ú.Ú.ð0ò /Ú.Ú.ð0ò /Ú.Ú.ð0ð1ô 	2ô ˜˜DÓ!ˆÜ˜˜BÓˆÜ˜˜EÓ"ˆÜ�Q˜ÔÜ�Q˜ÔÜ�Q˜Ôô ˜˜1ÓˆÜ�Qš/Ú)Ú*Ú*ð,ò +Ú*Ú*Ú*ð,ò +Ú*Ú*Ú*ð,ð-ô 	.ô ˜˜DÓ!ˆÜ˜˜BÓˆÜ˜˜EÓ"ˆÜ�Q˜ÔÜ�Q˜ÔÜ�Q˜Ôô ˜˜6Ó"ˆÜ�QÒ.Ú.Ú.ð0ò /Ú.Ú.ð0ð1ô 	2ô ˜˜GÓ$ˆÜ�Q˜Ôô ˜˜6Ó"ˆÜ�QÒ*Ú*Ú*ð,ò +Ú*Ú*ð,ò +Ú*Ú*ð,ð-ô 	.ô ˜˜GÓ$ˆÜ˜˜GÓ$ˆÜ˜˜HÓ%ˆÜ�Q˜ÔÜ�Q˜ÔÜ�Q˜Ôô ˜˜6Ó"ˆÜ�QÒ*Ú*Ú*Ú*ð,ò +Ú*Ú*Ú*ð,ð	-ô 	.ô ˜˜GÓ$ˆÜ�Q˜ÕrW   c                 óä  — t        t        j                  d«      j                  dd«      g d¢g d¢g d¢g¬«      }t	        t        |«      ddgdd	gg«       t	        t        |d
«      g d¢g d¢g«       t	        t        |d«      ddgddgdd	gg«       t        |j                  g d¢g d¢g d¢g¬«      }t	        t        |«      d
dgdd	gg«       t	        t        |d
«      g d¢g d¢g«       t	        t        |d«      d
dgddgdd	gg«       t        |j                  g d¢g d¢g d¢g¬«      }t	        t        |«      d	gg«       t	        t        |d
«      g d¢g«       t	        t        |d«      dgdgd	gg«       t        |j                  g d¢g d¢g d¢g¬«      }t	        t        |«      j                  d
«       t	        t        |d
«      j                  d
«       t	        t        |d«      j                  d
«       y )Nr€   r�   r  r  r–   r¾   rˆ   rn   r   r   r<  )r~   rn   r   r=   r:   ©r   r=   r   r~   rØ   rÕ   )r   rP   r   rŸ   r5   r   Ú_datar‰   ©rQ   r²   s     rU   Útest_compress_rowcolsz+TestCompressFunctions.test_compress_rowcols°  s°  € ä”"—)‘)˜A“,×&Ñ& q¨!Ó,Ú!¢9ªiÐ8ô:ˆäÔ% aÓ(¨A¨q¨6°A°q°6Ð*:Ô;ÜÔ% a¨Ó+ªiºÐ-CÔDÜÔ% a¨Ó+¨q°!¨f°q¸!°f¸qÀ!¸fÐ-EÔFÜ�!—'‘'¢ªI²yÐ AÔBˆÜÔ% aÓ(¨A¨q¨6°A°q°6Ð*:Ô;ÜÔ% a¨Ó+ªiºÐ-CÔDÜÔ% a¨Ó+¨q°!¨f°q¸!°f¸qÀ!¸fÐ-EÔFÜ�!—'‘'¢ªI²yÐ AÔBˆÜÔ% aÓ(¨A¨3¨%Ô0ÜÔ% a¨Ó+ªi¨[Ô9ÜÔ% a¨Ó,°¨s°Q°C¸!¸¨oÔ>Ü�!—'‘'¢ªI²yÐ AÔBˆÜÔ% aÓ(×-Ñ-¨qÔ1ÜÔ% a¨Ó+×0Ñ0°!Ô4ÜÔ% a¨Ó+×0Ñ0°!Õ4rW   c                 ó  — t        t        j                  d«      j                  dd«      g d¢g d¢g d¢g¬«      }t	        t        |«      j                  g d¢g d¢g d¢g«       t	        t        |d«      j                  g d¢g d¢g d¢g«       t	        t        |d«      j                  g d¢g d¢g d¢g«       t        |j                  g d¢g d	¢g d¢g¬«      }t	        t        |«      j                  g d	¢g d¢g d	¢g«       t	        t        |d«      j                  g d¢g d¢g d¢g«       t	        t        |d«      j                  g d	¢g d	¢g d	¢g«       t        |j                  g d¢g d	¢g d¢g¬«      }t	        t        |«      j                  g d¢g d¢g d
¢g«       t	        t        |d«      j                  g d¢g d¢g d¢g«       t	        t        |d«      j                  g d
¢g d
¢g d
¢g«       t        |j                  g d¢g d	¢g d¢g¬«      }t        t        |«      j                  «       t        u «       t        t        |d«      j                  «       t        u «       t        t        |d«      j                  «       t        u «       t        t        |«      j                  j                  «       «       t        t        |d«      j                  j                  «       «       t        t        |d«      j                  j                  «       «       y )Nr€   r�   r  r  r–   r=  r   r=   rm  )r=   r=   r   rÕ   )r   rP   r   rŸ   r5   r#   r?   rn  r2   Úallr	   ro  s     rU   Útest_mask_rowcolsz'TestCompressFunctions.test_mask_rowcolsÄ  s=  € ä”"—)‘)˜A“,×&Ñ& q¨!Ó,Ú!¢9ªiÐ8ô:ˆä”\ !“_×)Ñ)Ú¢ªIÐ6ô	8ä”\ ! QÓ'×,Ñ,Ú¢ªIÐ6ô	8ä”\ ! QÓ'×,Ñ,Ú¢ªIÐ6ô	8ä�!—'‘'¢ªI²yÐ AÔBˆÜ”\ !“_×)Ñ)Ú¢ªIÐ6ô	8ä”\ ! QÓ'×,Ñ,Ú¢ªIÐ6ô	8ä”\ ! QÓ'×,Ñ,Ú¢ªIÐ6ô	8ä�!—'‘'¢ªI²yÐ AÔBˆÜ”\ !“_×)Ñ)Ú¢ªIÐ6ô	8ä”\ ! QÓ'×,Ñ,Ú¢ªIÐ6ô	8ä”\ ! QÓ(×-Ñ-Ú¢ªIÐ6ô	8ä�!—'‘'¢ªI²yÐ AÔBˆÜ”˜Q“×#Ñ#Ó%¬Ð/Ô0Ü”˜Q Ó"×&Ñ&Ó(¬FÐ2Ô3Ü”˜Q Ó"×&Ñ&Ó(¬FÐ2Ô3Ü”˜Q“×$Ñ$×(Ñ(Ó*Ô+Ü”˜Q Ó"×'Ñ'×+Ñ+Ó-Ô.Ü”˜Q Ó"×'Ñ'×+Ñ+Ó-Õ.rW   r˜   )Nr   r=   ÚfuncÚrowcols_axisr   r=   c                 ó  — t        t        j                  d«      j                  dd«      g d¢g d¢g d¢g¬«      }t	        j
                  t        «      5   |||¬«      }t        |t        ||«      «       d d d «       y # 1 sw Y   y xY w)Nr€   r�   r  r  r–   r—   )	r   rP   r   rŸ   rÚ   ÚwarnsÚDeprecationWarningr5   r#   )rQ   r˜   rt  ru  r²   Úress         rU   Ú#test_mask_row_cols_axis_deprecationz9TestCompressFunctions.test_mask_row_cols_axis_deprecationä  sp   € ô
 ”"—)‘)˜A“,×&Ñ& q¨!Ó,Ú!¢9ªiÐ8ô:ˆô �\‰\Ô,Ó-ñ 	=Ù�q˜tÔ$ˆCÜ˜œl¨1¨lÓ;Ô<÷	=÷ 	=ñ 	=ús   Á!A=Á=Bc           	      ó¶  — t        j                  dd«      }g d¢}t        ||¬«      j                  dd«      }t        ||¬«      j                  dd«      }t	        ||d¬«      }t        |j                  ddgdd	gg«       t	        ||d¬«      }t        |j                  g d
¢g d¢g d¢g«       t	        ||d¬«      }t        |t        j                  |j                  d	«      |j                  d	«      «      «       t	        ||d¬«      }t        |t        j                  |j                  d	«      |j                  d	«      «      «       g d¢}t        ||¬«      j                  dd«      }t        ||¬«      j                  dd«      }t	        ||d¬«      }t        |j                  d	dgddgg«       t	        ||d¬«      }t        |j                  g d¢g d¢g d
¢g«       t	        ||d¬«      }t        |t        j                  |j                  d	«      |j                  d	«      «      «       t        |t	        ||«      «       t	        ||d¬«      }t        |t        j                  |j                  d	«      |j                  d	«      «      «       g d¢}t        ||¬«      j                  dd«      }t        ||¬«      j                  dd«      }t	        ||«      }t        |j                  t        «       t	        ||«      }t        |j                  t        «       t        |g d¢¬«      j                  dd«      }t        |g d¢¬«      j                  dd«      }t	        ||d¬«      }t        |j                  ddgd	d	gg«       t	        ||d¬«      }t        |t        j                  |j                  d	«      |j                  d	«      «      «       t	        ||d¬«      }t        |j                  g d¢g d¢g d¢g«       t	        ||d¬«      }t        |t        j                  |j                  d	«      |j                  d	«      «      «       t        |g d¢¬«      j                  dd«      }t        |g d¢¬«      j                  dd«      }t	        ||d¬«      }t        |j                  d	d	gddgg«       t	        ||«      }t        |t        j                  |j                  d	«      |j                  d	«      «      «       t	        ||d¬«      }t        |j                  g d¢g d¢g d¢g«       t	        ||d¬«      }t        |t        j                  |j                  d	«      |j                  d	«      «      «       t        |g d¢¬«      j                  dd«      }t        |g d¢¬«      j                  dd«      }t	        ||d¬«      }t        |j                  dd	gddgg«       t	        ||d¬«      }t        |t        j                  |j                  d	«      |j                  d	«      «      «       t	        ||d¬«      }t        |j                  g d¢g d
¢g d¢g«       t	        ||d¬«      }t        |t        j                  |j                  d	«      |j                  d	«      «      «       t        t        j                  d«      j                  ddd«      dd	gd	d	ggd	d	gd	d	ggg¬«      }t        t        j                  d«      j                  ddd«      d	d	gd	d	ggd	d	gd	dggg¬«      }t	        ||d¬«      }t        |j                  ddgddggd	d	gd	dgggd	d	gd	dggd	d	gd	dgggg«       t	        ||d¬«      }t        |j                  d	d	gd	dggd	d	gd	d	gggd	d	gd	d	ggd	d	gd	d	gggg«       t	        ||d¬«      }t        |j                  dd	gd	d	ggdd	gd	d	gggdd	gd	d	ggddgddgggg«       t	        ||d¬«      }t        |j                  d	d	gd	d	ggd	d	gd	d	gggd	d	gd	d	ggdd	gd	d	gggg«       t        t        j                  d«      j                  ddd«      dd	gd	d	ggd	d	gd	d	ggg¬«      }d}t	        ||d¬«      }t        |j                  dd	gd	d	ggd	d	gd	d	ggg«       t	        ||d¬«      }t        |j                  dd	gd	d	ggd	d	gd	d	ggg«       t	        ||d¬«      }t        |j                  dd	gd	d	ggd	d	gd	d	ggg«       t	        ||d¬«      }t        |j                  dd	gd	d	ggd	d	gd	d	ggg«       t        t        j                  d«      j                  ddd«      dd	gd	d	ggd	d	gd	d	ggg¬«      }t        t        j                  d«      d	dg¬«      }t	        ||d¬«      }t        |j                  ddgddgg«       t	        ||d¬«      }t        |j                  dd	gd	d	gg«       y )Nr=   rn   )r=   r   r   r   r   r   r–   r:   r�   T)Ústrictr   r=  r  F©r   r   r   r   r   r=   rÕ   )r   r   r   r   r   r   )r   r   r=   r   r   r   r   r¬   )	rP   r   r
   rŸ   r   r5   r?   Úfilledr   )rQ   ÚnrÞ   r@   rA   rY   s         rU   Útest_dotzTestCompressFunctions.test_dotð  s	  € ä�I‰I�a˜‹OˆâˆÜ˜ Ô#×+Ñ+¨A¨qÓ1ˆÜ˜ Ô#×+Ñ+¨A¨qÓ1ˆÜ��1˜TÔ"ˆÜ�Q—V‘V˜q !˜f q¨! fÐ-Ô.Ü��1˜TÔ"ˆÜ�Q—V‘Všiª²IÐ>Ô?Ü��1˜UÔ#ˆÜ�QœŸ™˜qŸx™x¨›{¨A¯H©H°Q«KÓ8Ô9Ü��1˜UÔ#ˆÜ�QœŸ™˜qŸx™x¨›{¨A¯H©H°Q«KÓ8Ô9âˆÜ˜ Ô#×+Ñ+¨A¨qÓ1ˆÜ˜ Ô#×+Ñ+¨A¨qÓ1ˆÜ��1˜TÔ"ˆÜ�Q—V‘V˜q !˜f q¨! fÐ-Ô.Ü��1˜TÔ"ˆÜ�Q—V‘Všiª²IÐ>Ô?Ü��1˜UÔ#ˆÜ�QœŸ™˜qŸx™x¨›{¨A¯H©H°Q«KÓ8Ô9Ü�Qœ˜A˜q›	Ô"Ü��1˜UÔ#ˆÜ�QœŸ™˜qŸx™x¨›{¨A¯H©H°Q«KÓ8Ô9âˆÜ˜ Ô#×+Ñ+¨A¨qÓ1ˆÜ˜ Ô#×+Ñ+¨A¨qÓ1ˆÜ��1‹IˆÜ�Q—V‘VœVÔ$Ü��1‹IˆÜ�Q—V‘VœVÔ$ä˜Ò!3Ô4×<Ñ<¸QÀÓBˆÜ˜Ò!3Ô4×<Ñ<¸QÀÓBˆÜ��1˜TÔ"ˆÜ�Q—V‘V˜q !˜f q¨! fÐ-Ô.Ü��1˜UÔ#ˆÜ�QœŸ™˜qŸx™x¨›{¨A¯H©H°Q«KÓ8Ô9Ü��1˜TÔ"ˆÜ�Q—V‘Všiª²IÐ>Ô?Ü��1˜UÔ#ˆÜ�QœŸ™˜qŸx™x¨›{¨A¯H©H°Q«KÓ8Ô9ä˜Ò!3Ô4×<Ñ<¸QÀÓBˆÜ˜Ò!3Ô4×<Ñ<¸QÀÓBˆÜ��1˜TÔ"ˆÜ�Q—V‘V˜q !˜f q¨! fÐ-Ô.Ü��1‹IˆÜ�QœŸ™˜qŸx™x¨›{¨A¯H©H°Q«KÓ8Ô9Ü��1˜TÔ"ˆÜ�Q—V‘Všiª²IÐ>Ô?Ü��1˜UÔ#ˆÜ�QœŸ™˜qŸx™x¨›{¨A¯H©H°Q«KÓ8Ô9ä˜Ò!3Ô4×<Ñ<¸QÀÓBˆÜ˜Ò!3Ô4×<Ñ<¸QÀÓBˆÜ��1˜TÔ"ˆÜ�Q—V‘V˜q !˜f q¨! fÐ-Ô.Ü��1˜UÔ#ˆÜ�QœŸ™˜qŸx™x¨›{¨A¯H©H°Q«KÓ8Ô9Ü��1˜TÔ"ˆÜ�Q—V‘Všiª²IÐ>Ô?Ü��1˜UÔ#ˆÜ�QœŸ™˜qŸx™x¨›{¨A¯H©H°Q«KÓ8Ô9äœŸ™ 1›×-Ñ-¨a°°AÓ6Ø!" A ¨¨A¨Ð/°1°a°&¸1¸a¸&Ð1AÐBôDˆäœŸ™ 1›×-Ñ-¨a°°AÓ6Ø!" A ¨¨A¨Ð/°1°a°&¸1¸a¸&Ð1AÐBôDˆä��1˜TÔ"ˆÜ�Q—V‘VØ˜A˜  A Ð'¨1¨a¨&°1°a°&Ð)9Ð:Ø˜A˜  A Ð'¨1¨a¨&°1°a°&Ð)9Ð:ð<ô	=ô ��1˜UÔ#ˆÜ�Q—V‘VØ˜A˜  A Ð'¨1¨a¨&°1°a°&Ð)9Ð:Ø˜A˜  A Ð'¨1¨a¨&°1°a°&Ð)9Ð:ð<ô	=ô ��1˜TÔ"ˆÜ�Q—V‘VØ˜A˜  A Ð'¨1¨a¨&°1°a°&Ð)9Ð:Ø˜A˜  A Ð'¨1¨a¨&°1°a°&Ð)9Ð:ð<ô	=ô ��1˜UÔ#ˆÜ�Q—V‘VØ˜A˜  A Ð'¨1¨a¨&°1°a°&Ð)9Ð:Ø˜A˜  A Ð'¨1¨a¨&°1°a°&Ð)9Ð:ð<ô	=ô œŸ™ 1›×-Ñ-¨a°°AÓ6Ø!" A ¨¨A¨Ð/°1°a°&¸1¸a¸&Ð1AÐBôDˆàˆÜ��1˜TÔ"ˆÜ�Q—V‘V  1˜v¨¨1 vÐ.°!°Q°¸!¸Q¸Ð0@ÐAÔBÜ��1˜UÔ#ˆÜ�Q—V‘V  1˜v¨¨1 vÐ.°!°Q°¸!¸Q¸Ð0@ÐAÔBÜ��1˜TÔ"ˆÜ�Q—V‘V  1˜v¨¨1 vÐ.°!°Q°¸!¸Q¸Ð0@ÐAÔBÜ��1˜UÔ#ˆÜ�Q—V‘V  1˜v¨¨1 vÐ.°!°Q°¸!¸Q¸Ð0@ÐAÔBäœŸ™ 1›×-Ñ-¨a°°AÓ6Ø!" A ¨¨A¨Ð/°1°a°&¸1¸a¸&Ð1AÐBôDˆäœŸ™ 1›¨Q°¨FÔ3ˆÜ��1˜TÔ"ˆÜ�Q—V‘V˜q !˜f q¨! fÐ-Ô.Ü��1˜UÔ#ˆÜ�Q—V‘V˜q !˜f q¨! fÐ-Õ.rW   c                 ód  — t        j                  d«      }t        |«      }t        t	        t        ||«      «      t        u «       t        t	        t        ||«      «      t        u «       t        t	        t        ||«      «      t        u «       t        t	        t        ||«      «      t        u «       y )Nr�   )rP   Úeyer   r2   r_   r   r   ©rQ   r@   rA   s      rU   Útest_dot_returns_maskedarrayz2TestCompressFunctions.test_dot_returns_maskedarray_  st   € ä�F‰F�1‹IˆÜ�!‹HˆÜ””S˜˜A“Y“¤;Ð.Ô/Ü””S˜˜A“Y“¤;Ð.Ô/Ü””S˜˜A“Y“¤;Ð.Ô/Ü””S˜˜A“Y“¤;Ð.Õ/rW   c                 óÊ   — t        t        j                  d«      «      }t        t        j                  d«      «      }t	        |||¬«      }t        ||u «       t        ||«       y )Nr�   )r�   r�   ©Úout)r   rP   r‚  r   r   r2   r5   )rQ   r@   r‡  ry  s       rU   Útest_dot_outz"TestCompressFunctions.test_dot_outh  sK   € Ü”"—&‘&˜“)ÓˆÜ”B—H‘H˜VÓ$Ó%ˆÜ�!�Q˜CÔ ˆÜ��s�
ÔÜ�Q˜ÕrW   N)rŒ   r�   rŽ   rk  rp  rs  rÚ   r  r  rP   r^   Ú	mask_rowsÚ	mask_colsrz  r€  r„  rˆ  r[   rW   rU   r9  r9  >  sŒ   „ ònò`5ò(/ð@ ‡[�[×Ñ˜V¢\Ó2Ø‡[�[×Ñ˜f nÐ5Ø!Ÿu™uŸ™°Ð2°R·U±U·_±_ÀaÐ4HÐIóKñ=óKó 3ð=òm/ò^0órW   r9  c                   ó   — e Zd Zd„ Zd„ Zy)ÚTestApplyAlongAxisc                 ó€   — t        d«      j                  ddd«      }d„ }t        |d|«      }t        |ddgddgg«       y )	Nr©   r:   r�   c                 ó   — | d   S ©Nr=   r[   )rA   s    rU   Úmyfuncz*TestApplyAlongAxis.test_3d.<locals>.myfuncu  s   € Ø�Q‘4ˆKrW   r=   r¾   rn   rj   ©r   rŸ   r   r5   ©rQ   r@   r�  Úxas       rU   Útest_3dzTestApplyAlongAxis.test_3dr  sF   € Ü�3‹K×Ñ  1 aÓ(ˆò	ô ˜f a¨Ó+ˆÜ�R˜1˜a˜& 1 b 'Ð*Õ+rW   c                 ó†   — t        d«      j                  ddd«      }d
d„}t        |d|d¬«      }t        |ddgdd	gg«       y )NrÐ   r:   r�   c                 ó   — | d|z      S r�  r[   )rA   Úoffsets     rU   r�  z1TestApplyAlongAxis.test_3d_kwargs.<locals>.myfunc  s   € Ø�Q˜‘Z‘=Ð rW   r=   )r—  rˆ   r   rø   )r   r‘  r’  s       rU   Útest_3d_kwargsz!TestApplyAlongAxis.test_3d_kwargs|  sH   € Ü�2‹J×Ñ˜q ! QÓ'ˆó	!ô ˜f a¨°1Ô5ˆÜ�R˜1˜a˜& 1 b 'Ð*Õ+rW   N)rŒ   r�   rŽ   r”  r˜  r[   rW   rU   rŒ  rŒ  p  s   „ ò,ó,rW   rŒ  c                   ó   — e Zd Zd„ Zy)ÚTestApplyOverAxesc                 óŽ  — t        d«      j                  ddd«      }t        t        j                  |ddg«      }t        j
                  dgdgdggg«      }t        ||«       t        ||dz  j                  t        «      <   t        t        j                  |ddg«      }t        j
                  d	gd
gdggg«      }t        ||«       y )Nr,  r:   r�   r¾   r   r;  é\   é|   r  rG  )
r   rŸ   r   rP   rs   r   r5   r	   rg  rŠ   )rQ   r@   rR   Úctrls       rU   Ú
test_basiczTestApplyOverAxes.test_basicˆ  s­   € Ü�2‹J×Ñ˜q ! QÓ'ˆÜœrŸv™v q¨1¨a¨&Ó1ˆÜ�x‰x˜2˜$   s eÐ,Ð-Ó.ˆÜ�T˜4Ô Ü"(ˆˆ1ˆq‰5�.‰.œÓ
ÑÜœrŸv™v q¨1¨a¨&Ó1ˆÜ�x‰x˜2˜$   r dÐ+Ð,Ó-ˆÜ�T˜4Õ rW   N)rŒ   r�   rŽ   rŸ  r[   rW   rU   rš  rš  †  s   „ ó!rW   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ej$                  j'                  dg d¢¬«      d„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)Ú
TestMedianc                 óö   — t         j                  j                  t         j                  t         j                  gt         j                  t         j                  ggd¬«      }t	        |t         j                  «       y )Nr.  r—   )rP   r^   r&   Úinfr5   ©rQ   Úrs     rU   Útest_pytypezTestMedian.test_pytype”  sE   € Ü�E‰E�L‰Lœ2Ÿ6™6¤2§6¡6Ð*¬R¯V©V´R·V±VÐ,<Ð=ÀBˆLÓGˆÜ�QœŸ™ÕrW   c                 ó¬  — t         j                  j                  t         j                  j                  t         j                  t         j                  gt         j                  t         j                  gg«      d¬«      }t        |t         j                  «       t         j                  j                  t         j                  j                  t         j                  t         j                  gt         j                  t         j                  gg«      d ¬«      }t        |t         j                  «       t         j                  j                  t         j                  j                  t         j                  t         j                  gt         j                  t         j                  ggd¬«      d¬«      }t        |j                  d«       t         j                  j                  t         j                  j                  t         j                  t         j                  gt         j                  t         j                  ggd¬«      d ¬«      }t        |j                  d«       y )Nr.  r—   Tr–   )rP   r^   r&   r
   r£  r5   r?   r¤  s     rU   Útest_infzTestMedian.test_inf˜  s�  € ä�E‰E�L‰LœŸ™×+Ñ+¬b¯f©f´b·f±fÐ-=Ü.0¯f©f´b·f±fÐ-=ð-?ó @ØFHð ó Jˆä�QœŸ™ÔÜ�E‰E�L‰LœŸ™×+Ñ+¬b¯f©f´b·f±fÐ-=Ü.0¯f©f´b·f±fÐ-=ð-?ó @ØFJð ó Lˆä�QœŸ™Ôä�E‰E�L‰LœŸ™×+Ñ+¬b¯f©f´b·f±fÐ-=Ü.0¯f©f´b·f±fÐ-=ð-?ØEIð ,ó Kà ð ó "ˆô 	�Q—V‘V˜TÔ"Ü�E‰E�L‰LœŸ™×+Ñ+¬b¯f©f´b·f±fÐ-=Ü.0¯f©f´b·f±fÐ-=ð-?ØEIð ,ó Kà"ð ó $ˆô 	�Q—V‘V˜TÕ"rW   c                 óÜ  — t        j                  d«      }t        t         j                  j	                  |«      d«       t        t        t         j                  j	                  |«      «      t        u«       t        d«      }t        t         j                  j	                  |«      d«       t        t        t         j                  j	                  |«      «      t        u«       d}t        t         j                  j	                  |«      d«       t        t        t         j                  j	                  |«      «      t        u«       t        j                  d«      j                  dd«      }t        t         j                  j	                  |d¬	«      t        j                  |d¬	«      «       t        t         j                  j	                  |d
¬	«      t        j                  |d
¬	«      «       t        t         j                  j	                  |d
¬	«      t        u«       t        j                  d«      j                  dd«      }t        t         j                  j	                  |d¬	«      t        j                  |d¬	«      «       t        t         j                  j	                  |d
¬	«      t        j                  |d
¬	«      «       t        t         j                  j	                  |d
¬	«      t        u«       y )Nr€   r�   r   r  rˆ   r¬   éH   r   r—   r=   g      R@)
rP   r   r5   r^   r&   r2   r_   r   ro   rŸ   ro  s     rU   Útest_non_maskedzTestMedian.test_non_maskedª  sÃ  € Ü�I‰I�a‹LˆÜ”R—U‘U—\‘\ !“_ bÔ)Ü””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9Ü�!‹HˆÜ”R—U‘U—\‘\ !“_ cÔ*Ü””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9ØˆÜ”R—U‘U—\‘\ !“_ bÔ)Ü””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9ä�I‰I�eÓ×$Ñ$ Q¨Ó*ˆÜ”R—U‘U—\‘\ !¨!�\Ó,¬b¯i©i¸ÀÔ.BÔCÜ”R—U‘U—\‘\ !¨!�\Ó,¬b¯i©i¸ÀÔ.BÔCÜ”—‘—‘˜Q Q�Ó'¬{Ð:Ô;ä�I‰I�fÓ×%Ñ% a¨Ó+ˆÜ”R—U‘U—\‘\ !¨!�\Ó,¬b¯i©i¸ÀÔ.BÔCÜ”R—U‘U—\‘\ !¨!�\Ó,¬b¯i©i¸ÀÔ.BÔCÜ”—‘—‘˜Q Q�Ó'¬{Ð:Õ;rW   c                 óâ  — t        t        j                  d«      dgdz  dgdz  z   ¬«      }t        t        j                  j                  |«      d«       t        t        j                  j                  |«      j                  dd«       t        t        t        j                  j                  |«      «      t        u«       t        t        j                  d	«      j                  d
d«      dgdz  dgdz  z   ¬«      }t        t        j                  j                  |«      d«       t        t        j                  j                  |«      j                  dd«       t        t        t        j                  j                  |«      «      t        u«       t        j                  j                  |dd¬«      }t        |ddg«       t        |j                  dd«       t        t        |«      t        u «       y)z5test the examples given in the docstring of ma.medianr   r   r¾   r=   r–   rÀ   r[   úshape mismatchrj   r:   rˆ   r~   r§   r.  T©r˜   Úoverwrite_inputr”   r¬   r9   N)r   rP   r   r5   r^   r&   r   r2   r_   r   rŸ   )rQ   r²   Úma_xs      rU   Útest_docstring_examplesz"TestMedian.test_docstring_examples¿  sG  € ä”"—)‘)˜A“, a S¨1¡W°¨s°Q©wÑ%6Ô7ˆÜ”R—U‘U—\‘\ !“_ cÔ*Ü”R—U‘U—\‘\ !“_×*Ñ*¨BÐ0@ÔAÜ””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9Ü”"—)‘)˜B“-×'Ñ'¨¨1Ó-°Q°C¸!±G¸q¸cÀA¹gÑ4EÔFˆÜ”R—U‘U—\‘\ !“_ cÔ*Ü”R—U‘U—\‘\ !“_×*Ñ*¨BÐ0@ÔAÜ””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9Ü�u‰u�|‰|˜A B¸ˆ|Ó=ˆÜ�T˜B ˜8Ô$Ü�T—Z‘Z Ð'7Ô8Ü”�T“
œkÐ)Õ*rW   c                 ó.  — d}t        d«      D ]Ã  }dD ]¼  }t        d||¬«      }t        j                  t        | |«      ddg«      }|D ](  \  }}	 t        j
                  j                  |||¬«       Œ* t        j                  |dz    |gddg«      }|D ]9  \  }}	 t        j
                  j                  |||¬«       t        |||||fz  «      ‚ Œ¾ ŒÅ y # t        $ r t        |||||fz  «      ‚w xY w# t        j                  j                  $ r Y Œw xY w)	Nz5mask = %s, ndim = %s, axis = %s, overwrite_input = %srˆ   )FTr=   )Úndminr?   FTr®  )ro   r   Ú	itertoolsÚproductrP   r^   r&   Ú	ExceptionÚAssertionErrorÚ
exceptionsÚ	AxisError)rQ   Úmsgr³  r?   r²   Úargsr˜   Úovers           rU   Útest_axis_argument_errorsz$TestMedian.test_axis_argument_errorsÎ  sE  € ØEˆÜ˜1“Xò 	NˆEØ%ò N�Ü˜! 5¨tÔ4�ô !×(Ñ(¬°¨v°uÓ)=ÀÀt¸}ÓM�Ø"&ò N‘J�D˜$ðNÜŸ™Ÿ™ Q¨TÀ4˜ÕHðNô !×(Ñ(¨E°A©I¨,¸Ð)>ÀÈÀÓN�Ø"&ò N‘J�D˜$ðNÜŸ™Ÿ™ Q¨TÀ4˜ÔHô -¨S°D¸%ÀÀtÐ3LÑ-LÓMÐMñNñNñ	Nøô %ò NÜ,¨S°D¸%ÀÀtÐ3LÑ-LÓMÐMðNûô Ÿ=™=×2Ñ2ò Ùðús   Á"CÂ"C4ÃC1	Ã4D	ÄD	c                 ó  — t        dd¬«      }t        t        j                  j	                  |«      d«       t        dd¬«      }t        t        j                  j	                  |«      t        j                  j
                  «       y )Nr=   Fr–   T)r   r5   rP   r^   r&   r	   ro  s     rU   Útest_masked_0dzTestMedian.test_masked_0dæ  sN   € ä�!˜%Ô ˆÜ”R—U‘U—\‘\ !“_ aÔ(Ü�!˜$ÔˆÜ”R—U‘U—\‘\ !“_¤b§e¡e§l¡lÕ3rW   c                 óÈ  — t        t        j                  d«      d¬«      }t        t        j                  j                  |«      t        j                  j                  «       t        t        j                  j                  |«      j                  dd«       t        t        t        j                  j                  |«      «      t        j                  j                  j                  u «       t        t        j                  d«      d¬«      }t        t        j                  j                  |«      d«       t        t        j                  j                  |«      j                  dd«       t        t        t        j                  j                  |«      «      t        u«       t        t        j                  d«      g d¢¬«      }t        t        j                  j                  |«      d	«       t        t        j                  j                  |«      j                  dd«       t        t        t        j                  j                  |«      «      t        u«       t        t        j                  d«      g d
¢¬«      }t        t        j                  j                  |«      d«       t        t        j                  j                  |«      j                  dd«       t        t        t        j                  j                  |«      «      t        u«       t        t        j                  d«      g d¢¬«      }t        t        j                  j                  |«      d«       t        t        j                  j                  |«      j                  dd«       t        t        t        j                  j                  |«      «      t        u«       t        t        j                  d«      g d¢¬«      }t        t        j                  j                  |«      d«       t        t        j                  j                  |«      j                  dd«       t        t        t        j                  j                  |«      «      t        u«       t        t        j                  d«      g d¢¬«      }t        t        j                  j                  |«      d	«       t        t        j                  j                  |«      j                  dd«       t        t        t        j                  j                  |«      «      t        u«       t        t        j                  d«      g d¢¬«      }t        t        j                  j                  |«      d	«       t        t        j                  j                  |«      j                  dd«       t        t        t        j                  j                  |«      «      t        u«       y )Nrˆ   Tr–   r[   r­  Fr”   rè   r§   )r   r=   r=   r=   r=   r’   )r   r=   r=   r   r   r•   r¬   r~   r¥   r  )r   rP   r   r5   r^   r&   r	   r   r2   r_   r`   ÚMaskedConstantr   ro  s     rU   Útest_masked_1dzTestMedian.test_masked_1dí  sR  € Ü”"—)‘)˜A“, TÔ*ˆÜ”R—U‘U—\‘\ !“_¤b§e¡e§l¡lÔ3Ü”R—U‘U—\‘\ !“_×*Ñ*¨BÐ0@ÔAÜ””R—U‘U—\‘\ !“_Ó%¬¯©¯©×)BÑ)BÐBÔCÜ”"—)‘)˜A“, UÔ+ˆÜ”R—U‘U—\‘\ !“_ bÔ)Ü”R—U‘U—\‘\ !“_×*Ñ*¨BÐ0@ÔAÜ””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9Ü”"—)‘)˜A“,¢_Ô5ˆÜ”R—U‘U—\‘\ !“_ cÔ*Ü”R—U‘U—\‘\ !“_×*Ñ*¨BÐ0@ÔAÜ””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9Ü”"—)‘)˜A“,¢_Ô5ˆÜ”R—U‘U—\‘\ !“_ bÔ)Ü”R—U‘U—\‘\ !“_×*Ñ*¨BÐ0@ÔAÜ””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9ä”"—)‘)˜A“,¢_Ô5ˆÜ”R—U‘U—\‘\ !“_ bÔ)Ü”R—U‘U—\‘\ !“_×*Ñ*¨BÐ0@ÔAÜ””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9ä”"—)‘)˜B“-¢oÔ6ˆÜ”R—U‘U—\‘\ !“_ bÔ)Ü”R—U‘U—\‘\ !“_×*Ñ*¨BÐ0@ÔAÜ””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9ä”"—)‘)˜A“,Ò%7Ô8ˆÜ”R—U‘U—\‘\ !“_ cÔ*Ü”R—U‘U—\‘\ !“_×*Ñ*¨BÐ0@ÔAÜ””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9ä”"—)‘)˜B“-Ò&8Ô9ˆÜ”R—U‘U—\‘\ !“_ cÔ*Ü”R—U‘U—\‘\ !“_×*Ñ*¨BÐ0@ÔAÜ””R—U‘U—\‘\ !“_Ó%¬[Ð8Õ9rW   c           
      óô   — t        t        j                  j                  t	        g d¢g d¢¬«      «      j
                  t        j                  j                  t	        g d¢g d¢¬«      «      j
                  «       y )Nr÷   r  r–   rm  )r5   rP   r^   r&   r   r   ©rQ   s    rU   Útest_1d_shape_consistencyz$TestMedian.test_1d_shape_consistency  sD   € Ü”R—U‘U—\‘\¤%ª	º	Ô"BÓC×IÑIÜ—U‘U—\‘\¤%ª	º	Ô"BÓC×IÑIõ	KrW   c                 ó   — d\  }}t        t        j                  dd|«      «      }t        x|d d |dd  t        t        j                  ||ft
        ¬«      «      }|d d  |d d …df<   t        j                  t        |«      «      }t        d|«      D ]-  }t        j                  j                  |«       ||   |d d …|f<   Œ/ t        t        |d d …df   «      d«       t        t        |«      d«       t        t        |d¬	«      t        j                  |«      «       t        t        |j                  d¬	«      t        j                  |«      «       y )
N)ée   rZ  ç      ð¿r“   rj   éöÿÿÿr;   r   r=   r—   )r
   rP   Úlinspacer	   ÚemptyrO   r   ra   ro   r  Úshuffler5   r&   r   rÝ   )rQ   r  Úpr²   r¹   Úidxru   s          rU   r%  zTestMedian.test_2d  s  € à‰ˆˆAÜœŸ™ S¨"¨aÓ0Ó2ˆÜ!Ð!ˆˆ#ˆ2ˆ��3�4�ÜœŸ™ 1 a &´Ô6Ó7ˆØ‘A�$ˆŠ!ˆQˆ$‰Ü�i‰iœ˜A›ÓˆÜ�q˜!“ò 	ˆAÜ�I‰I×Ñ˜cÔ"Ø˜‘fˆAŠa�ˆdŠGð	ô 	”V˜Aša ˜d™G“_ aÔ(Ü”V˜A“Y Ô"Ü”V˜A AÔ&¬¯©°«Ô4Ü”V˜AŸC™C aÔ(¬"¯(©(°1«+Õ6rW   c                 ó¢  — t        t        j                  d«      j                  dd«      «      }t        x|d d |dd  t        t        |«      d«       t        t        t        j                  j                  |«      «      t        u«       t        t        |d¬«      g d¢«       t        t        t        j                  j                  |d¬«      «      t        u «       t        t        |d	¬«      g d
¢«       t        t        t        j                  j                  |d	¬«      «      t        u «       t        t        |d	¬«      j                  g d¢«       y )NrZ  rj   r�   éýÿÿÿç      -@r   r—   )ç      +@rÑ  g      /@r=   )
r   r   r   rj   r>  r3  rC  r   r   r   )
r=   r=   r=   r   r   r   r   r=   r=   r=   )r
   rP   r   rŸ   r	   r5   r&   r2   r_   r^   r   r?   ro  s     rU   Útest_2d_waxiszTestMedian.test_2d_waxis'  så   € äœŸ™ 2›×.Ñ.¨r°1Ó5Ó6ˆÜÐˆˆ"ˆ1ˆ��"�#�Ü”V˜A“Y Ô%Ü””R—U‘U—\‘\ !“_Ó%¬[Ð8Ô9Ü”V˜A AÔ&Ò(:Ô;Ü””R—U‘U—\‘\ !¨!�\Ó,Ó-´Ð<Ô=Ü”V˜A AÔ&Ò(JÔKÜ””R—U‘U—\‘\ !¨!�\Ó,Ó-´Ð<Ô=Ü”V˜A AÔ&×+Ñ+Ò-KÕLrW   c                 óâ  — t         j                  j                  d«      j                  ddd«      }t        ||dz  dk(  <   t        t        |d«      ddgdd	gddgd
d	gg«       |j                  d«      }t        t        |d«      ddgddgddgg«       t         j                  j                  d«      j                  ddd«      }t        ||dz  dk(  <   t        t        |d«      ddgddgddgg«       y )Nr,  r�   r¾   r:   r   rÐ   r€   r~   r@  rB  )r¾   r�   r:   éc   rj   rø   r>  r?  rˆ   r   r3  rA  )rP   r^   r   rŸ   r	   r5   r&   ro  s     rU   r”  zTestMedian.test_3d3  sã   € ä�E‰E�L‰L˜Ó×$Ñ$ Q¨¨1Ó-ˆÜˆˆ!ˆa‰%�1‰*‰Ü”V˜A˜q“\ R¨ G¨a°¨W°r¸1°gÀÀB¸xÐ#HÔIØ�I‰I�iÓ ˆÜ”V˜A˜q“\ R¨ H¨r°2¨h¸¸R¸Ð#AÔBÜ�E‰E�L‰L˜Ó×$Ñ$ Q¨¨1Ó-ˆÜˆˆ!ˆa‰%�1‰*‰Ü”V˜A˜q“\ R¨ H¨q°!¨f°r¸2°hÐ#?Õ@rW   c                 óÀ   — t        t        j                  d«      j                  dd«      «      }t        x|d d |dd  t        t        |d¬«      t        |d¬«      «       y )NrZ  rj   r�   rÐ  r.  r—   r=   )r
   rP   r   rŸ   r	   r5   r&   ro  s     rU   Útest_neg_axiszTestMedian.test_neg_axis>  sO   € ÜœŸ™ 2›×.Ñ.¨r°1Ó5Ó6ˆÜÐˆˆ"ˆ1ˆ��"�#�Ü”V˜A BÔ'¬°¸Ô):Õ;rW   c                 óJ  — dD ]ž  }t        t        j                  |«      «      }t        x|d d |dd  t        t        j                  d«      «      }t        ||¬«      }|dk(  rt        |d«       nt        |d«       t        ||u «       t        t        |«      t        u «       Œ  y )	N)rZ  ç      >@r  g      ?@r�   rÐ  r[   r†  rZ  rÑ  g      .@)
r
   rP   r   r	   r   r&   r5   r2   r_   r   )rQ   Úvr²   r‡  r¥  s        rU   Útest_out_1dzTestMedian.test_out_1dC  s�   € à#ò 
	,ˆAÜœRŸY™Y q›\Ó*ˆAÜ#Ð#ˆAˆbˆqˆE�A�b�c�FÜœrŸw™w r›{Ó+ˆCÜ�q˜cÔ"ˆAØ�BŠwÜ˜S $Õ'ä˜S #Ô&Ü�A˜�HÔÜ”D˜“Gœ{Ð*Õ+ñ
	,rW   c                 ó  — dD �]  }t        t        j                  |«      j                  dd«      «      }t        x|d d |dd  t        t        j
                  d«      «      }t        |d|¬«      }|dk(  r0t        d	gdz  g d
¢z   d	gdz  z   dgdz  dgdz  z   dgdz  z   ¬«      }n/t        d	gdz  g d¢z   d	gdz  z   dgdz  dgdz  z   dgdz  z   ¬«      }t        ||«       t        ||u «       t        t        |«      t        u «       �Œ y )N)rD  g      D@rZ  rÙ  rj   r.  r�   rÐ  r=   )r˜   r‡  rZ  r’   )rj   r>  r3  rC  TFr¾   r–   )rÒ  g     €1@g     €5@g     €9@)r
   rP   r   rŸ   r	   r   r&   r5   r2   r_   r   )rQ   rÚ  r²   r‡  r¥  Úes         rU   Útest_outzTestMedian.test_outQ  s  € à#ó 	,ˆAÜœRŸY™Y q›\×1Ñ1°"°bÓ9Ó:ˆAÜ#Ð#ˆAˆbˆqˆE�A�b�c�FÜœrŸw™w r›{Ó+ˆCÜ�q˜q cÔ*ˆAØ�BŠwÜ  " ¨¡Ò,<Ñ!<À¸tÀa¹xÑ!GØ'+ f¨q¡j°E°7¸Q±;Ñ&>À$ÀÈ!ÁÑ&KôM‘ô ! " ¨¡Ò,DÑ!DÈÀtÈaÁxÑ!OØ'+ f¨q¡j°E°7¸Q±;Ñ&>À$ÀÈ!ÁÑ&KôM�ä˜˜AÔÜ�A˜�HÔÜ”D˜“Gœ{Ð*Ö+ñ	,rW   r˜   )Nr=   rZ   rÑ   )rÐ  r.  )ÚargnamesÚ	argvaluesc                 óÆ  ‡‡— t        j                  dt        ¬«      }t         j                  j                  d«      t        j                  |j
                  «      d d …d f   z  }|j                  t         j                  «      }t         j                  |t        |«      <   t        t        j                  |j
                  «      |¬«      Š|€d‰j                  z  }n>t        |‰j                  «      Št        ˆˆfd„t        ‰j                  «      D «       «      }t        t        j                  |«      «      }t!        ‰|d|¬«      }||u sJ ‚t#        |j
                  |«       y )	N)r�   rˆ   rn   rø   r;   )r¾   éÈ   r–   rZ   c              3   óH   •K  — | ]  }|‰v rd n‰j                   |   –— Œ y­w)r=   N)r   )Ú.0ru   Ú	axis_normr  s     €€rU   ú	<genexpr>z/TestMedian.test_keepdims_out.<locals>.<genexpr>w  s+   øè ø€ ò LØ89�Q˜)‘^‘¨¯©°©Ó3ñLùs   ƒ"T)r˜   rÊ   r‡  )rP   r   rŠ   r  r   r   rg  ÚintprÙ   Útupler
   r   Úndimr   ro   rË  r&   r5   )	rQ   r˜   r?   rË   Ú	shape_outr‡  r¡   rå  r  s	          @@rU   Útest_keepdims_outzTestMedian.test_keepdims_outb  s  ù€ ô �x‰x˜¬TÔ2ˆä�I‰I×Ñ˜XÓ&¬¯©°$·*±*Ó)=ºaÀ¸gÑ)FÑFˆØ�H‰H”R—W‘WÓˆÜŸ™ˆŒU�1‹X‰ÜœŸ™ §¡Ó,°4Ô8ˆØˆ<Ø˜qŸv™v™‰Iä,¨T°1·6±6Ó:ˆIÜô LÜ=BÀ1Ç6Á6»]ôLó LˆIäœ2Ÿ8™8 IÓ.Ó/ˆÜ˜ ¨t¸Ô=ˆØ˜‰}Ðˆ}Ü�V—\‘\ 9Õ-rW   c                 ó¸   — ddgddgddgg}t         j                  j                  |d«      }ddg}t        t         j                  j	                  |d¬«      |«       y )Nr“   r’   r•   r   r—   )rP   r^   Úmasked_equalr4   r&   )rQ   rr   re   rî   s       rU   Ú$test_single_non_masked_value_on_axisz/TestMedian.test_single_non_masked_value_on_axis~  s]   € Ø�R�Ø�R�Ø�R�ðˆô —U‘U×'Ñ'¨¨aÓ0ˆ
Ø˜�8ˆÜœ2Ÿ5™5Ÿ<™<¨
¸˜<Ó;Ø#õ	%rW   c                 óR  — dt        j                  dt        ¬«      fD �]  }t         j                  j	                  dt         j
                  dgg d¢g«      }||_        t         j                  j                  |d ¬«      }t        t        j                  |«      «       t        |t         j
                  «       t         j                  j                  |j                  «       d¬«      }t        t        j                  |«      «       t        |t         j
                  «       t         j                  j                  |d¬«      }t        t        |«      t        «       t        |dt         j
                  dg«       t         j                  j                  |d¬«      }t        t        |«      t        «       t        |t         j
                  d	g«       t         j                  j                  |d
¬«      }t        t        |«      t        «       t        |t         j
                  d	g«       �Œ t         j                  j	                  dt         j
                  dgg d¢g«      }t         j                  j                  |d d …d	f<   t        t         j                  j                  |d ¬«      t         j
                  «       t        t         j                  j                  |d¬«      dt         j
                  dg«       t        t         j                  j                  |d¬«      t         j
                  dg«       y )NFr~   r;   r=   r�   r÷   r—   r   r:   r.  rÀ   )rP   r   rŠ   r^   r   rÙ   r?   r&   r2   Úisscalarr4   Úravelr5   r_   r   r	   )rQ   r?   Údmr¥  s       rU   Útest_nanzTestMedian.test_nan‡  sü  € ØœBŸH™H Q¬dÔ3Ð4ó 	/ˆDÜ—‘—‘˜q¤"§&¡&¨!˜nªiÐ8Ó9ˆBØˆBŒGô —‘—‘˜R d�Ó+ˆAÜ”B—K‘K “NÔ#Ü˜q¤"§&¡&Ô)Ü—‘—‘˜RŸX™X›Z¨a�Ó0ˆAÜ”B—K‘K “NÔ#Ü˜q¤"§&¡&Ô)ä—‘—‘˜R a�Ó(ˆAÜœ˜a›¤+Ô.Ü˜q 1¤b§f¡f¨a .Ô1Ü—‘—‘˜R a�Ó(ˆAÜœ˜a›¤+Ô.Ü˜q¤2§6¡6¨1 +Ô.Ü—‘—‘˜R b�Ó)ˆAÜœ˜a›¤+Ô.Ü˜q¤2§6¡6¨1 +Ö.ð)	/ô, �U‰U�[‰[˜1œbŸf™f a˜.ª)Ð4Ó5ˆÜ—5‘5—<‘<ˆŠ1ˆaˆ4‰Üœ2Ÿ5™5Ÿ<™<¨°˜<Ó6¼¿¹Ô?Üœ2Ÿ5™5Ÿ<™<¨°˜<Ó3°a¼¿¹À°^ÔDÜœ2Ÿ5™5Ÿ<™<¨°˜<Ó3´b·f±f¸c°]ÕCrW   c                 óú  — t         j                  j                  t        j                  d«      «      }t         j                  j                  t        j                  d«      «      }t         j
                  |d<   t         j                  j                  |d<   t        t         j                  j                  |d|¬«      |«       t         j                  j                  t        j                  d«      «      }t        t         j                  j                  |d|¬«      |«       t         j                  j                  t        j                  d	«      «      }t        t         j                  j                  ||¬«      |«       y )
N)r¾   ©r�   r¾   ©r:   r=   rH   r   r†  ©r�   r=   r[   )	rP   r^   r
   r   r   rÙ   r	   r5   r&   )rQ   Úor  s      rU   Útest_out_nanzTestMedian.test_out_nan¤  så   € Ü�E‰E×ÑœrŸx™x¨›~Ó.ˆÜ�E‰E×ÑœrŸw™w v›Ó/ˆÜ—&‘&ˆˆ$‰Ü—%‘%—,‘,ˆˆ$‰Ü”R—U‘U—\‘\ ! Q¨A�\Ó.°Ô2Ü�E‰E×ÑœrŸx™x¨›~Ó.ˆÜ”R—U‘U—\‘\ ! Q¨A�\Ó.°Ô2Ü�E‰E×ÑœrŸx™x¨›|Ó,ˆÜ”R—U‘U—\‘\ !¨�\Ó+¨QÕ/rW   c                 ó–  — t         j                  j                  t        j                  dt        ¬«      «      }t         j                  j
                  |d d d…<   t         j                  |d<   t        t         j                  j                  |«      t         j                  «       t        t         j                  j                  |d¬«      t         j                  «       t         j                  j                  t        j                  dt        ¬«      j                  ddd«      «      }t        j                  |j                  «      dz  dk(  |_        |j                  «       }t         j                  |d	<   t         j                  |d
<   t        t         j                  j                  |«      t         j                  «       t        t        j                  t         j                  j                  |«      «      «       t         j                  j                  |d¬«      }t         j                  |d<   t         j                  |d<   t        t         j                  j                  |d«      |«       t         j                  j                  |d¬«      }t         j                  |d<   t         j                  |d<   t        t         j                  j                  |d«      |«       t         j                  j                  |d¬«      }t         j                  |d<   t         j                  |d<   t        t         j                  j                  |d«      |«       y )Nr,  r;   r�   r:   r   r—   r¾   r=   r÷   )r=   r=   r:   ©r:   r�   rÖ   ©r=   r�   re  )rP   r^   r
   r   rO   r	   rÙ   r4   r&   rŸ   r‰   r?   Úcopyr2   rð  r5   )rQ   r@   ÚaorigrA   s       rU   Útest_nan_behaviorzTestMedian.test_nan_behavior¯  s  € Ü�E‰E×ÑœrŸy™y¨´5Ô9Ó:ˆÜ—‘—‘ˆ‰#ˆAˆ#‰Ü�v‰vˆˆ!‰Üœ2Ÿ5™5Ÿ<™<¨›?¬B¯F©FÔ3Üœ2Ÿ5™5Ÿ<™<¨°˜<Ó2´B·F±FÔ;ä�E‰E×ÑœrŸy™y¨´5Ô9×AÑAÀ!ÀQÈÓJÓKˆÜ—‘˜1Ÿ6™6Ó" QÑ&¨!Ñ+ˆŒØ—‘“ˆÜ—V‘Vˆˆ'‰
Ü—V‘Vˆˆ'‰
ô 	œ2Ÿ5™5Ÿ<™<¨›?¬B¯F©FÔ3Ü”—‘œBŸE™EŸL™L¨›OÓ,Ô-ô �E‰E�L‰L˜ QˆLÓ'ˆÜ—&‘&ˆˆ$‰Ü—&‘&ˆˆ$‰Ü”R—U‘U—\‘\ ! QÓ'¨Ô+ô �E‰E�L‰L˜ QˆLÓ'ˆÜ—&‘&ˆˆ$‰Ü—&‘&ˆˆ$‰Ü”R—U‘U—\‘\ ! QÓ'¨Ô+ô �E‰E�L‰L˜ VˆLÓ,ˆÜ�v‰vˆˆ!‰Ü�v‰vˆˆ!‰Ü”R—U‘U—\‘\ ! VÓ,¨aÕ0rW   c                 ó  — t        j                  g d¢g d¢gt         j                  ¬«      }t         j                  j	                  ||dk(  ¬«      }t        t         j                  j                  |d¬«      d«       t        t         j                  j                  |d¬«      j                  d«       t        t         j                  j                  |d	¬«      |d	   «       t        t         j                  j                  |«      d«       y )
N)r�   r�   éÿ   r;   r�   r–   r=   r—   r  Fr   )rP   r   Úuint8r^   r
   r4   r&   r?   rå   s     rU   Útest_ambiguous_fillzTestMedian.test_ambiguous_fillÒ  s©   € ä�H‰H’k¢;Ð/´r·x±xÔ@ˆÜ�E‰E×Ñ˜q q¨A¡vÐÓ.ˆÜœ2Ÿ5™5Ÿ<™<¨°˜<Ó2°CÔ8Üœ2Ÿ5™5Ÿ<™<¨°˜<Ó2×7Ñ7¸Ô?Üœ2Ÿ5™5Ÿ<™<¨°˜<Ó2°A°a±DÔ9Üœ2Ÿ5™5Ÿ<™<¨›?¨CÕ0rW   c           	      óŒ  — t         j                  t         j                   fD �]Ÿ  }t        j                  |t         j                  gt         j                  t         j                  gg«      }t         j                  j                  |t        j                  |«      ¬«      }t        t         j                  j                  |d¬«      |t         j                  g«       t        t         j                  j                  |d¬«      |t         j                  g«       t        t         j                  j                  |«      |«       t        j                  t         j                  t         j                  |gt         j                  t         j                  |gg«      }t         j                  j                  |t        j                  |«      ¬«      }t        t         j                  j                  |d¬«      |«       t        t         j                  j                  |d¬«      j                  d«       t        t         j                  j                  |d¬«      |d   «       t        t         j                  j                  |«      |«       t        j                  ||g||gg«      }t        t         j                  j                  |«      |«       t        t         j                  j                  |d¬«      |«       t        t         j                  j                  |d¬«      |«       t        j                  |d| dgdt         j                  t         j                  d	gd
t         j                  t         j                  |ggt         j                  ¬«      }t         j                  j                  |t        j                  |«      ¬«      }|dkD  rZt        t         j                  j                  |d¬«      dd| dg«       t        t         j                  j                  |«      d«       nYt        t         j                  j                  |d¬«      dd| dg«       t        t         j                  j                  |«      d«       t        t         j                  j                  |d¬«      dd|g«       t        d«      D �]  }t        dd«      D �]  }t        j                  t         j                  g|z  |g|z  z   gdz  «      }t         j                  j                  |t        j                  |«      ¬«      }t        t         j                  j                  |«      |«       t        t         j                  j                  |d¬«      |«       t        t         j                  j                  |d¬«      t         j                  g|z  |g|z  z   «       �Œ �Œ �Œ¢ y )Nr–   r   r—   r=   Frn   i÷ÿÿÿrÉ  rˆ   r¾   r;   r�   rÒ   r¬   g      @g      $Àg      "Àg      ÀrÈ  rj   r:   )rP   r£  r   rÙ   r^   r
   Úisnanr5   r&   r4   r?   Úfloat32ro   )rQ   r£  r@   ru   rv   s        rU   Útest_specialzTestMedian.test_specialÛ  sß  € Ü—F‘FœRŸV™V˜GÐ$ó (	=ˆCÜ—‘˜3¤§¡˜-¬"¯&©&´"·&±&Ð)9Ð:Ó;ˆAÜ—‘×"Ñ" 1¬2¯8©8°A«;Ð"Ó7ˆAÜœŸ™Ÿ™ a¨a˜Ó0°3¼¿¹°-Ô@ÜœŸ™Ÿ™ a¨a˜Ó0°3¼¿¹°-Ô@ÜœŸ™Ÿ™ a›¨#Ô.ä—‘œ2Ÿ6™6¤2§6¡6¨3Ð/´"·&±&¼"¿&¹&À#Ð1FÐGÓHˆAÜ—‘×"Ñ" 1¬2¯8©8°A«;Ð"Ó7ˆAÜœrŸu™uŸ|™|¨A°A˜|Ó6¸Ô<ÜœrŸu™uŸ|™|¨A°A˜|Ó6×;Ñ;¸UÔCÜœrŸu™uŸ|™|¨A°A˜|Ó6¸¸!¹Ô=ÜœrŸu™uŸ|™|¨A›°Ô4ô —‘˜3 ˜* s¨C jÐ1Ó2ˆAÜœŸ™Ÿ™ a›¨#Ô.ÜœŸ™Ÿ™ a¨a˜Ó0°#Ô6ÜœŸ™Ÿ™ a¨a˜Ó0°#Ô6ä—‘˜3  C 4¨Ð,Ø¤§¡¬¯©°Ð2ØœbŸf™f¤b§f¡f¨cÐ2ð4ô !#§
¡
ô,ˆAô —‘×"Ñ" 1¬2¯8©8°A«;Ð"Ó7ˆAØ�QŠwÜœRŸU™UŸ\™\¨!°!˜\Ó4°r¸2À¸tÀRÐ6HÔIÜœRŸU™UŸ\™\¨!›_¨cÕ2äœRŸU™UŸ\™\¨!°!˜\Ó4°t¸RÀ#ÀÀsÐ6KÔLÜœRŸU™UŸ\™\¨!›_¨dÔ3ÜœŸ™Ÿ™ a¨a˜Ó0°3¸¸cÐ2BÔCä˜2“Yó =�Ü˜q "›ó =�AÜŸ™¤B§F¡F 8¨a¡<°S°E¸A±IÑ">Ð!?À!Ñ!CÓD�AÜŸ™×*Ñ*¨1´2·8±8¸A³;Ð*Ó?�AÜ ¤§¡§¡¨a£°#Ô6Ü ¤§¡§¡¨a°a Ó!8¸#Ô>Ü ¤§¡§¡¨a°a Ó!8Ü#%§6¡6 (¨Q¡,°3°%¸!±)Ñ!;ö=ò=ò=ñC(	=rW   c                 óÜ  — t         j                  j                  t        j                  g t        ¬«      «      }t        j                  t        «      5  t        t         j                  j                  |«      t         j                  «       d d d «       t         j                  j                  t        j                  g t        d¬«      «      }t        j                  t        «      5  t        t         j                  j                  |«      t         j                  «       d d d «       t         j                  j                  t        j                  g t        d¬«      «      }t        t         j                  j                  |d¬«      |«       t        t         j                  j                  |d¬«      |«       t         j                  j                  t        j                  t         j                  t        d¬«      «      }t        j                  t        «      5  t        t         j                  j                  |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)Nr;   r�   )r<   r³  r:   r   r—   r=   )rP   r^   r
   r   rO   rÚ   rw  ÚRuntimeWarningr4   r&   rÙ   r5   rƒ  s      rU   Ú
test_emptyzTestMedian.test_empty  s{  € ä�E‰E×ÑœrŸx™x¨´%Ô8Ó9ˆÜ�\‰\œ.Ó)ñ 	8ÜœrŸu™uŸ|™|¨A›´·±Ô7÷	8ô �E‰E×ÑœrŸx™x¨´%¸qÔAÓBˆä�\‰\œ.Ó)ñ 	8ÜœrŸu™uŸ|™|¨A›´·±Ô7÷	8ô �E‰E×ÑœrŸx™x¨´%¸qÔAÓBˆÜ”R—U‘U—\‘\ !¨!�\Ó,¨aÔ0Ü”R—U‘U—\‘\ !¨!�\Ó,¨aÔ0ô �E‰E×ÑœrŸx™x¬¯©´eÀ1ÔEÓFˆÜ�\‰\œ.Ó)ñ 	5ÜœŸ™Ÿ™ a¨a˜Ó0°!Ô4÷	5ð 	5÷!	8ñ 	8ú÷	8ñ 	8ú÷	5ð 	5ús$   Á8IÃ$8IÈ,I"ÉIÉIÉ"I+c           	      ó²  — t         j                  j                  t        j                  d«      «      }t	        t        t         j                  j                  |j                  t        «      «      «      t        «       t         j                  |d<   t	        t        t         j                  j                  |j                  t        «      «      «      t        «       y )NrÒ   r:   )rP   r^   r
   r   r2   r_   r&   rg  r]   rO   rÙ   )rQ   rø  s     rU   Útest_objectzTestMedian.test_object  su   € Ü�E‰E×ÑœrŸy™y¨›}Ó-ˆÜ””R—U‘U—\‘\ !§(¡(¬6Ó"2Ó3Ó4´eÔ<Ü�v‰vˆˆ!‰Ü””R—U‘U—\‘\ !§(¡(¬6Ó"2Ó3Ó4´eÕ<rW   N)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[   rW   rU   r¡  r¡  “  s¨   „ ò ò#ò$<ò*+òNò04ò$:òLKò7ò 
Mò	Aò<ò
,ò,ð" ‡[�[×ÑØò
ð ó 	ñ.ó	ð.ò$%òDò:	0ò!1òF1ò)=òV5ó,=rW   r¡  c                   ó0   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestCovc                 óR   — t        t        j                  j                  d«      «      S ©NrÐ   ©r   rP   r  r  rÄ  s    rU   Ú_create_datazTestCov._create_data%  s   € Ü”R—Y‘Y—^‘^ BÓ'Ó(Ð(rW   c                 óv  — | j                  «       }t        t        |d¬«      d   j                  t        j
                  «       t        t        ||d¬«      d   j                  t        j
                  «       |dkD  }t        t        t        j                  j                  ||«      d¬«      d   j                  t        «      |j                  dd«       «       t        t        t        j                  j                  ||«      |d¬«      d   j                  t        «      t	        j                  | | f«      «       y )NT©Úrowvarr=   F)r³   r  r¿   r.  )r  r2   r   r<   rP   r  r4   r^   r
   rg  rŠ   rŸ   r1   )rQ   r²   r?   s      rU   Útest_covhelperzTestCov.test_covhelper(  sò   € Ø×ÑÓˆä”
˜1 TÔ*¨1Ñ-×3Ñ3´R·Z±ZÔ@Ü”
˜1 ¨%Ô0°Ñ3×9Ñ9¼2¿:¹:ÔFà�3‰wˆÜÜÜ—‘×"Ñ" 1 dÓ+°Dôàñç‘œ“Ø�\‰\˜!˜RÓ Ð ô		
ô 	ÜÜ—‘×"Ñ" 1 dÓ+¨q¸ôàñç‘œ“Ü�I‰I˜�u˜t˜e�nÓ%õ		
rW   c                 ó(  — | j                  «       }t        t        j                  |«      t        |«      «       t        t        j                  |d¬«      t        |d¬«      «       t        t        j                  |dd¬«      t        |dd¬«      «       y )NFr  T©r  Úbias)r  r3   rP   r   ro  s     rU   Útest_1d_without_missingzTestCov.test_1d_without_missing<  se   € à×ÑÓˆÜœBŸF™F 1›I¤s¨1£vÔ.ÜœBŸF™F 1¨UÔ3´S¸À5Ô5IÔJÜœBŸF™F 1¨U¸Ô>Ü ¨%°dÔ;õ	=rW   c                 óH  — | j                  «       j                  dd«      }t        t        j                  |«      t	        |«      «       t        t        j                  |d¬«      t	        |d¬«      «       t        t        j                  |dd¬«      t	        |dd¬«      «       y )Nr�   r¾   Fr  Tr  )r  rŸ   r3   rP   r   ro  s     rU   Útest_2d_without_missingzTestCov.test_2d_without_missingD  sr   € à×ÑÓ×'Ñ'¨¨1Ó-ˆÜœBŸF™F 1›I¤s¨1£vÔ.ÜœBŸF™F 1¨UÔ3´S¸À5Ô5IÔJÜœBŸF™F 1¨U¸Ô>Ü ¨%°dÔ;õ	=rW   c           
      ó  — | j                  «       }t        |d<   ||j                  «       z  }|j                  «       }t	        t        j                  |«      t        |«      «       t	        t        j                  |d¬«      t        |d¬«      «       t	        t        j                  |dd¬«      t        |dd¬«      «       	 t        |d¬«       |dd }t	        t        j                  ||d d d…   «      t        ||d d d…   «      «       t	        t        j                  ||d d d…   d¬«      t        ||d d d…   d¬«      «       t	        t        j                  ||d d d…   dd¬«      t        ||d d d…   dd¬«      «       y # t        $ r Y Œ½w xY w)Nr.  Fr  Tr  ©Úallow_maskedr=   )r  r	   Úmeanrt   r3   rP   r   rÜ   ©rQ   r²   Únxs      rU   Útest_1d_with_missingzTestCov.test_1d_with_missingL  sN  € à×ÑÓˆÜˆˆ"‰Ø	ˆQ�V‰V‹X‰ˆØ�\‰\‹^ˆÜœBŸF™F 2›J¬¨A«Ô/ÜœBŸF™F 2¨eÔ4´c¸!ÀEÔ6JÔKÜœBŸF™F 2¨e¸$Ô?Ü ¨%°dÔ;ô	=ð	Ü� Õ&ð
 ˆq�ˆWˆÜœBŸF™F 2 r©$¨B¨$¡xÓ0´#°a¸¹4¸R¸4¹³/ÔBÜœBŸF™F 2 r©$¨B¨$¡x¸Ô>Ü  1¡T r T¡7°5Ô9ô	;äœBŸF™F 2 r©$¨B¨$¡x¸ÀDÔIÜ  1¡T r T¡7°5¸tÔDõ	Føô ò 	Ùð	ús   Ã E? Å?	FÆ
Fc                 óâ  — | j                  «       }t        |d<   |j                  dd«      }t        j                  t        |«      «      j                  t        «      }t        j                  ||j                  «      }||j                  d«      d d …d f   z
  j                  d«      }t        t        |«      t        j                  |«      |j                  d   dz
  z  |dz
  z  «       t        t        |d¬«      t        j                  |d¬«      |j                  d   z  |z  «       t        j                  |j                  |«      }||j                  d«      z
  j                  d«      }t        t        |d	¬
«      t        j                  |d	¬
«      |j                  d   dz
  z  |dz
  z  «       t        t        |d	d¬«      t        j                  |d	d¬«      |j                  d   z  |z  «       y )Nr.  r�   r¾   r=   r   r“   T)r  Fr  r  )r  r	   rŸ   rP   Úlogical_notr   rg  rp   r   rÝ   r   r~  r3   r   r   )rQ   r²   ÚvalidÚfracÚxfs        rU   Útest_2d_with_missingzTestCov.test_2d_with_missingd  s‘  € à×ÑÓˆÜˆˆ"‰Ø�I‰I�a˜‹OˆÜ—‘œ|¨A›Ó/×6Ñ6´sÓ;ˆÜ�v‰v�e˜UŸW™WÓ%ˆØ�!—&‘&˜“)šA˜t˜GÑ$Ñ$×,Ñ,¨QÓ/ˆÜœC ›FÜŸF™F 2›J¨!¯'©'°!©*°q©.Ñ9¸TÀB¹YÑGô	IäœC ¨Ô-ÜŸF™F 2¨DÔ1°A·G±G¸A±JÑ>ÀÑEô	Gä�v‰v�e—g‘g˜uÓ%ˆØ�!—&‘&˜“)‰m×#Ñ# AÓ&ˆÜœC ¨%Ô0ÜŸV™V B¨uÔ5ØŸg™g a™j¨1™nñ.Ø15¸±ñ<ô	>ô 	œC ¨%°dÔ;ÜŸV™V B¨u¸4Ô@ØŸW™W Q™Zñ(Ø*.ñ/õ	1rW   N)	rŒ   r�   rŽ   r  r  r  r  r#  r)  r[   rW   rU   r  r  #  s!   „ ò)ò
ò(=ò=òFó01rW   r  c                   ó*   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestCorrcoefc                 óª   — t        t        j                  j                  d«      «      }t        t        j                  j                  d«      «      }||fS r  r  )rQ   rr   Údata2s      rU   r  zTestCorrcoef._create_data|  s:   € Ü”R—Y‘Y—^‘^ BÓ'Ó(ˆÜ”b—i‘i—n‘n RÓ(Ó)ˆØ�Uˆ{ÐrW   c                 óÒ   — | j                  «       d   }t        t        j                  |«      t        |«      «       t        t        j                  |d¬«      t        |d¬«      «       y )Nr   Fr  )r  r3   rP   r   ro  s     rU   r  z$TestCorrcoef.test_1d_without_missing�  sJ   € à×ÑÓ Ñ"ˆÜœBŸK™K¨›N¬H°Q«KÔ8ÜœBŸK™K¨°%Ô8Ü$ Q¨uÔ5õ	7rW   c                 óò   — | j                  «       d   j                  dd«      }t        t        j                  |«      t	        |«      «       t        t        j                  |d¬«      t	        |d¬«      «       y )Nr   r�   r¾   Fr  )r  rŸ   r3   rP   r   ro  s     rU   r  z$TestCorrcoef.test_2d_without_missingˆ  sW   € à×ÑÓ Ñ"×*Ñ*¨1¨aÓ0ˆÜœBŸK™K¨›N¬H°Q«KÔ8ÜœBŸK™K¨°%Ô8Ü$ Q¨uÔ5õ	7rW   c           
      óþ  — | j                  «       d   }t        |d<   ||j                  «       z  }|j                  «       }t	        t        j                  |d¬«      t        |d¬«      «       	 t        |d¬«       |dd }t	        t        j                  ||d d d…   «      t        ||d d d…   «      «       t	        t        j                  ||d d d…   d¬«      t        ||d d d…   d¬«      «       y # t        $ r Y Œ�w xY w)Nr   r.  Fr  r  r=   )r  r	   r   rt   r3   rP   r   rÜ   r!  s      rU   r#  z!TestCorrcoef.test_1d_with_missing�  sç   € à×ÑÓ Ñ"ˆÜˆˆ"‰Ø	ˆQ�V‰V‹X‰ˆØ�\‰\‹^ˆÜœBŸK™K¨°5Ô9Ü$ Q¨uÔ5ô	7ð	Ü�Q UÕ+ð ˆq�ˆWˆÜœBŸK™K¨¨B©t°¨t©HÓ5´xÀÀ1ÁTÀrÀTÁ7Ó7KÔLÜœBŸK™K¨¨B©t°¨t©H¸UÔCÜ$ Q¨©$¨B¨$©¸Ô>õ	@øô ò 	Ùð	ús   Á-C0 Ã0	C<Ã;C<c                 óÜ   — | j                  «       d   }t        |d<   |j                  dd«      }t        |«      }t	        j                  |«      }t        |d d…d d…f   |d d…d d…f   «       y )Nr   r.  r�   r¾   )r  r	   rŸ   r   rP   r3   ©rQ   r²   rR   rS   s       rU   r)  z!TestCorrcoef.test_2d_with_missing¡  sn   € à×ÑÓ Ñ"ˆÜˆˆ"‰Ø�I‰I�a˜‹Oˆä˜‹{ˆÜ—+‘+˜a“.ˆÜ˜D  "  c r c ™N¨G°C°R°C¸¸"¸°HÑ,=Õ>rW   N)rŒ   r�   rŽ   r  r  r  r#  r)  r[   rW   rU   r+  r+  z  s   „ òò
7ò7ò@ó$?rW   r+  c                   ó   — e Zd Zd„ Zd„ Zy)ÚTestPolynomialc                 ó€  — t         j                  j                  d«      }t         j                  j                  d«      j                  dd«      }t	        t        ||d«      t        j
                  ||d«      «       |j                  t        «      }t        |d<   |j                  t        «      }t        x|d<   |d<   t        ||d d …df   dd	¬
«      \  }}}}}t        j
                  |dd  |dd …df   j                  «       dd	¬
«      \  }}	}
}}t        |||||f||	|
||f«      D ]  \  }}t	        ||«       Œ t        ||d d …df   dd	¬
«      \  }}}}}t        j
                  |dd |dd…df   dd	¬
«      \  }}	}
}}t        |||||f||	|
||f«      D ]  \  }}t	        ||«       Œ t        ||dd	¬
«      \  }}}}}t        j
                  |dd |dd…d d …f   dd	¬
«      \  }}	}
}}t        |||||f||	|
||f«      D ]  \  }}t	        ||«       Œ t         j                  j                  d«      dz   }|j                  «       }|dd }|dd }|dd }t        ||dd	|¬«      \  }}}}}t        j
                  ||dd	|¬«      \  }}	}
}}t        ||«       t        |||||f||	|
||f«      D ]  \  }}t	        ||«       Œ y )Nrj   rX  r.  r:   r�   r   rF   ©r.  r.  T©rq   r=   )rq   rË   )rP   r  r  rŸ   r3   r+   Úviewr   r	   rt   Úziprý  r5   )rQ   r²   r³   ÚCÚRÚKÚSÚDrY   r¥  rw   ry   r  r@   Úa_rË   ÚwoÚxsÚysÚwss                       rU   Útest_polyfitzTestPolynomial.test_polyfit®  só  € ô �I‰I�N‰N˜2ÓˆÜ�I‰I�N‰N˜2Ó×&Ñ& r¨1Ó-ˆÜœG A q¨!Ó,¬b¯j©j¸¸A¸qÓ.AÔBà�F‰F”;ÓˆÜˆˆ!‰Ø�F‰F”;ÓˆÜ$Ð$ˆˆ$‰�!�F‘)ä! ! Q¢q¨! t¡W¨a°dÔ;‰ˆˆAˆq�!�QÜŸ*™* Q q r U¨A¨a©b°!¨e©H×,?Ñ,?Ó,AÀ1Ø*.ô0‰ˆˆAˆq�!�Qä˜A˜q ! Q¨˜?¨Q°°1°a¸¨OÓ<ò 	'‰GˆQ�Ü  2Õ&ð	'ô " ! Q¢q¨" u¡X¨q°tÔ<‰ˆˆAˆq�!�QÜŸ*™* Q q¨ W¨a°°"°°b°©k¸1À4ÔH‰ˆˆAˆq�!�QÜ˜A˜q ! Q¨˜?¨Q°°1°a¸¨OÓ<ò 	'‰GˆQ�Ü  2Õ&ð	'ô " ! Q¨°Ô5‰ˆˆAˆq�!�QÜŸ*™* Q q¨ W¨a°°"°²a°©j¸!À$ÔG‰ˆˆAˆq�!�QÜ˜A˜q ! Q¨˜?¨Q°°1°a¸¨OÓ<ò 	'‰GˆQ�Ü  2Õ&ð	'ô �I‰I�N‰N˜2Ó Ñ"ˆØ�V‰V‹XˆØˆq�ˆWˆØˆq�ˆWˆØˆq�ˆWˆÜ! ! Q¨°¸Ô:‰ˆˆAˆq�!�QÜŸ*™* R¨¨Q°T¸RÔ@‰ˆˆAˆq�!�QÜ�Q˜ÔÜ˜A˜q ! Q¨˜?¨Q°°1°a¸¨OÓ<ò 	'‰GˆQ�Ü  2Õ&ñ	'rW   c                 ó8  — t         j                  j                  d«      }t         j                  j                  d«      j                  dd«      }t         j                  |d<   t         j                  |d<   |j                  t        «      }|j                  t        «      }t        |d<   t        |d<   t        ||dd¬	«      \  }}}}}t        j                  |d
d |d
d…d d …f   dd¬	«      \  }}	}
}}t        |||||f||	|
||f«      D ]  \  }}t        ||«       Œ y )Nrj   rX  r.  r:   r   r6  r�   Tr7  r=   )rP   r  r  rŸ   rÙ   r8  r   r	   r+   r9  r3   )rQ   r²   r³   r:  r;  r<  r=  r>  rY   r¥  rw   ry   r  r@   r?  s                  rU   Útest_polyfit_with_masked_NaNsz,TestPolynomial.test_polyfit_with_masked_NaNsÕ  sý   € Ü�I‰I�N‰N˜2ÓˆÜ�I‰I�N‰N˜2Ó×&Ñ& r¨1Ó-ˆä�v‰vˆˆ!‰Ü—F‘Fˆˆ&‰	Ø�F‰F”;ÓˆØ�F‰F”;ÓˆÜˆˆ!‰Üˆˆ&‰	ä! ! Q¨°Ô5‰ˆˆAˆq�!�QÜŸ*™* Q q¨ W¨a°°"°²a°©j¸!À$ÔG‰ˆˆAˆq�!�QÜ˜A˜q ! Q¨˜?¨Q°°1°a¸¨OÓ<ò 	'‰GˆQ�Ü  2Õ&ñ	'rW   N)rŒ   r�   rŽ   rD  rF  r[   rW   rU   r4  r4  ¬  s   „ ò%'óN'rW   r4  c                   ór   — 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y)ÚTestArraySetOpsc                 óà   — g d¢}t        |dd¬«      }t        t        |d   t        «      «       t	        |d   t        g d¢g d¢¬«      «       t	        |d   g d	¢«       t	        |d
   g d¢«       y )N©r=   r=   r=   r:   r:   r�   T©Úreturn_indexÚreturn_inverser   r÷   r  r–   r=   )r   r�   rˆ   r:   )r   r   r   r=   r=   r:   )r0   r2   r  r   r5   r
   r0  s      rU   Útest_unique_onlistz"TestArraySetOps.test_unique_onlistè  sZ   € â!ˆÜ�d¨¸dÔCˆÜ”
˜4 ™7¤KÓ0Ô1Ü�T˜!‘Wœlª9º9ÔEÔFÜ�T˜!‘WšiÔ(Ü�T˜!‘WÒ0Õ1rW   c                 ó�  — t        g d¢g d¢¬«      }t        |dd¬«      }t        |d   t        g d¢g d¢¬«      «       t        |d	   g d
¢«       t        |d   g d¢«       d|_        t        g d¢g d¢d¬«      }t        |dd¬«      }t        |d   t        g d¢g d¢¬«      «       t        |d	   g d
¢«       t        |d   g d¢«       y )NrJ  )r   r   r=   r   r=   r   r–   TrK  r   )r=   r:   r�   r.  ©r   r   r   r=   r=   )r   r�   rˆ   r:   r:   )r   r   r�   r=   r�   r:   r�   )rr   r?   Ú
fill_value)r
   r0   r5   rQ  r0  s      rU   Útest_unique_onmaskedarrayz)TestArraySetOps.test_unique_onmaskedarrayñ  sª   € äÒ.Ò5GÔHˆÜ�d¨¸dÔCˆÜ�T˜!‘Wœlª=º|ÔLÔMÜ�T˜!‘WšlÔ+Ü�T˜!‘WÒ0Ô1àˆŒÜÒ!3Ú!3ÀôCˆä�d¨¸dÔCˆÜ�T˜!‘Wœlª=º|ÔLÔMÜ�T˜!‘WšlÔ+Ü�T˜!‘WÒ0Õ1rW   c                 óX  — t        g d¢d¬«      }t        |dd¬«      }t        |d   t        dgdg¬«      «       t        |d   dg«       t        |d   g d¢«       t        }t        |dd¬«      }t        |d   t        t        «      «       t        |d   dg«       t        |d   dg«       y )	Nr=  Tr–   rK  r   r=   r:   r  )r
   r0   r5   r	   r0  s      rU   Útest_unique_allmaskedz%TestArraySetOps.test_unique_allmasked  s›   € äšI¨DÔ1ˆÜ�d¨¸dÔCˆÜ�T˜!‘Wœl¨A¨5¸°vÔ>Ô?Ü�T˜!‘W˜q˜cÔ"Ü�T˜!‘WšiÔ(ô ˆÜ�d¨¸dÔCˆÜ�T˜!‘Wœl¬6Ó2Ô3Ü�T˜!‘W˜q˜cÔ"Ü�T˜!‘W˜q˜cÕ"rW   c                 ó,  — t        t        j                  d«      g d¢¬«      }t        g d¢g d¢¬«      }t	        |«      }t        ||«       t        |j                  d«      |j                  d«      «       t        |j                  |j                  «       y )Nrˆ   ©r=   r   r   r   r=   r–   )r=   r=   r=   r¾   )r=   r   r   r=   r   )r
   rP   r   r   r   r5   r~  r?   )rQ   r²   rS   rR   s       rU   Útest_ediff1dzTestArraySetOps.test_ediff1d  sb   € äœŸ™ 1›ªOÔ<ˆÜšª<Ô8ˆÜ�q‹zˆÜ�T˜7Ô#Ü�T—[‘[ “^ W§^¡^°AÓ%6Ô7Ü�T—Y‘Y §¡Õ-rW   c                 ó$  — t        t        j                  d«      g d¢¬«      }t        |t        ¬«      }t        g d¢g d¢¬«      }t        ||«       t        |j                  d«      |j                  d«      «       t        |j                  |j                  «       t        |g d¢¬«      }t        g d	¢g d
¢¬«      }t        ||«       t        |j                  d«      |j                  d«      «       t        |j                  |j                  «       y )Nrˆ   rV  r–   )Úto_begin)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
   rP   r   r   r	   r   r5   r~  r?   r2  s       rU   Útest_ediff1d_tobeginz$TestArraySetOps.test_ediff1d_tobegin  s¶   € äœŸ™ 1›ªOÔ<ˆÜ�q¤6Ô*ˆÜšªoÔ>ˆÜ�T˜7Ô#Ü�T—[‘[ “^ W§^¡^°AÓ%6Ô7Ü�T—Y‘Y §¡Ô-ä�q¢9Ô-ˆÜÒ-Ò4IÔJˆÜ�T˜7Ô#Ü�T—[‘[ “^ W§^¡^°AÓ%6Ô7Ü�T—Y‘Y §¡Õ-rW   c                 ó$  — t        t        j                  d«      g d¢¬«      }t        |t        ¬«      }t        g d¢g d¢¬«      }t        ||«       t        |j                  d«      |j                  d«      «       t        |j                  |j                  «       t        |g d¢¬«      }t        g d	¢g d
¢¬«      }t        ||«       t        |j                  d«      |j                  d«      «       t        |j                  |j                  «       y )Nrˆ   rV  r–   )Úto_end)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   rZ  r2  s       rU   Útest_ediff1d_toendz"TestArraySetOps.test_ediff1d_toend(  s¶   € äœŸ™ 1›ªOÔ<ˆÜ�q¤Ô(ˆÜšªoÔ>ˆÜ�T˜7Ô#Ü�T—[‘[ “^ W§^¡^°AÓ%6Ô7Ü�T—Y‘Y §¡Ô-ä�q¢Ô+ˆÜÒ-Ò4IÔJˆÜ�T˜7Ô#Ü�T—[‘[ “^ W§^¡^°AÓ%6Ô7Ü�T—Y‘Y §¡Õ-rW   c                 ó8  — t        t        j                  d«      g d¢¬«      }t        |t        t        ¬«      }t        g d¢g d¢¬«      }t        ||«       t        |j                  d«      |j                  d«      «       t        |j                  |j                  «       t        |g d¢t        ¬«      }t        g d	¢g d
¢¬«      }t        ||«       t        |j                  d«      |j                  d«      «       t        |j                  |j                  «       y )Nrˆ   rV  r–   ©r]  rY  )r   r=   r=   r=   r¾   r   )r=   r=   r   r   r=   r=   r   r÷   )r   r=   r=   r=   r¾   r=   r:   r�   )r=   r=   r   r   r=   r   r   r   rZ  r2  s       rU   Útest_ediff1d_tobegin_toendz*TestArraySetOps.test_ediff1d_tobegin_toend7  s¾   € äœŸ™ 1›ªOÔ<ˆÜ�q¤´&Ô9ˆÜÒ*Ò1CÔDˆÜ�T˜7Ô#Ü�T—[‘[ “^ W§^¡^°AÓ%6Ô7Ü�T—Y‘Y §¡Ô-ä�q¢´VÔ<ˆÜÒ0Ú5ô7ˆä�T˜7Ô#Ü�T—[‘[ “^ W§^¡^°AÓ%6Ô7Ü�T—Y‘Y §¡Õ-rW   c                 óX  — t        j                  d«      }t        |«      }t        g d¢g d¢¬«      }t	        ||«       t        t        |t        «      «       t	        |j                  d«      |j                  d«      «       t	        |j                  |j                  «       t        |t        t        ¬«      }t        g d¢g d¢¬«      }t        t        |t        «      «       t	        |j                  d«      |j                  d«      «       t	        |j                  |j                  «       y )	Nrˆ   ©r=   r=   r=   r=   ©r   r   r   r   r–   r   r`  r¥   r¦   )rP   r   r   r   r5   r2   r  r   r~  r?   r	   r2  s       rU   Útest_ediff1d_ndarrayz$TestArraySetOps.test_ediff1d_ndarrayG  sÂ   € ä�I‰I�a‹LˆÜ�q‹zˆÜšª<Ô8ˆÜ�T˜7Ô#Ü”
˜4¤Ó-Ô.Ü�T—[‘[ “^ W§^¡^°AÓ%6Ô7Ü�T—Y‘Y §¡Ô-ä�q¤´&Ô9ˆÜÒ*Ò1CÔDˆÜ”
˜4¤Ó-Ô.Ü�T—[‘[ “^ W§^¡^°AÓ%6Ô7Ü�T—Y‘Y §¡Õ-rW   c                 óš   — t        g d¢g d¢¬«      }t        g d¢g d¢¬«      }t        ||«      }t        g d¢g d¢¬«      }t        ||«       y )N)r=   r�   r�   r�   rP  r–   )r�   r=   r=   r=   )r=   r�   r.  rÕ   )r   r!   r5   )rQ   r²   r³   rR   rS   s        rU   Útest_intersect1dz TestArraySetOps.test_intersect1dW  s<   € ä’,¢\Ô2ˆÜ’,¢\Ô2ˆÜ˜1˜aÓ ˆÜš
ªÔ3ˆÜ�T˜7Õ#rW   c                 óv  — t        g d¢g d¢¬«      }t        g d¢g d¢¬«      }t        ||«      }t        |t        g d¢«      «       t        g d¢g d¢¬«      }g d¢}t        ||«      }t        |t        g d¢g d	¢¬«      «       t        g d
¢«      }t        g d¢«      }t        ||«      }t        t	        |t
        «      «       t        |g d¢«       t        g d¢g d¢¬«      }t        g d¢g d	¢¬«      }t        ||«      }t        t	        |t
        «      «       t        |g d¢«       t        g t        g g «      «       y )N©r=   r:   rˆ   rn   r.  ©r   r   r   r   r=   r–   ©r=   r:   r�   r¾   rˆ   r.  r}  )r�   r¾   rn   ©r=   r:   r�   r¾   rˆ   ©r�   r¾   rn   r.  rP  r÷   )r~   rˆ   r¾   r  ©r=   r   r:   r�   ©r   r=   r   r   ©r~   rˆ   r¾   r   )r   r-   r5   r2   r  r   r4   ©rQ   r@   rA   rR   s       rU   Útest_setxor1dzTestArraySetOps.test_setxor1d_  sì   € äÒ"ªÔ9ˆÜÒ%Ò,>Ô?ˆÜ˜˜1‹~ˆÜ�Tœ5¢Ó+Ô,äÒ"ªÔ9ˆÚˆÜ˜˜1‹~ˆÜ�Tœ5¢²\ÔBÔCä’)ÓˆÜ’)ÓˆÜ˜˜1‹~ˆÜ”
˜4¤Ó-Ô.Ü�TÒ-Ô.ä’,¢\Ô2ˆÜ’,¢\Ô2ˆÜ˜˜1‹~ˆÜ”
˜4¤Ó-Ô.Ü�TÒ-Ô.ä˜2œx¨¨BÓ/Õ0rW   c                 óà  — t        g d¢g d¢¬«      }g d¢}t        ||d¬«      }t        |t        g d¢g d¢¬«      «       t        g d	¢g d
¢¬«      }t        g d¢g d¢¬«      }t        ||d¬«      }t        t	        |t
        «      «       t        |g d¢«       t        dgdgdgdgg«      }t        ddgddgg«      }t        ||d¬«      }t        t	        |t
        «      «       t        |g d¢«       y )Nri  rj  r–   rl  T)Úassume_uniquerm  rP  rn  ro  rp  r  r=   r   r:   r�   r~   rˆ   r¾   )r   r-   r5   r2   r  r   rq  s       rU   Útest_setxor1d_uniquez$TestArraySetOps.test_setxor1d_uniquey  sÍ   € äÒ"ªÔ9ˆÚˆÜ˜˜1¨DÔ1ˆÜ�Tœ5¢²\ÔBÔCä’,¢\Ô2ˆÜ’,¢\Ô2ˆÜ˜˜1¨DÔ1ˆÜ”
˜4¤Ó-Ô.Ü�TÒ-Ô.ä�A�3˜˜˜a˜S 1 #Ð&Ó'ˆÜ�A�q�6˜A˜q˜6Ð"Ó#ˆÜ˜˜1¨DÔ1ˆÜ”
˜4¤Ó-Ô.Ü�TÒ-Õ.rW   c                 óâ  — t        j                  d«      j                  g d¢«      }t        j                  g d¢«      }d|d<   t	        ||¬«      }t	        g d¢g d¢¬«      }t        dt
        ¬	«      }d
|d<   d
|d<   d
|d<   t        ||«      }t        t        |t        «      «       t        ||«       t        j                  |||j                      «      |j                   z  }t        ||«       y )Nr,  rÉ   r=   )r=   r:   r   r–   )	r   rj   rX  rZ  r=   r�   rø   r4  r\  )	r   r=   r   r=   r   r=   r   r=   r   )rr   r?   r;   Tr  rÕ   )r   r:   r�   )rP   r   rŸ   r   r   rŠ   r"   r2   r  r   r4   r?   )rQ   r@   r?   rA   ÚecrY   r  s          rU   Ú	test_isinzTestArraySetOps.test_isinŒ  sÉ   € ô �I‰I�b‹M×!Ñ!¢)Ó,ˆÜ�x‰xš	Ó"ˆØˆˆW‰Ü�!˜$ÔˆÜÒ:Ú:ô<ˆä�9¤DÔ)ˆØˆˆ7‰Øˆˆ7‰Øˆˆ7‰Ü��A‹JˆÜ”
˜1œkÓ*Ô+Ü˜1˜bÔ!ä�G‰G�A�q˜!Ÿ&™&˜‘zÓ" a§f¡f WÑ,ˆÜ˜1˜aÕ rW   c                 ó   — t        g d¢g d¢¬«      }t        g d¢g d¢¬«      }t        ||«      }t        |g d¢«       t        g d¢g d¢¬«      }t        g d¢g d	¢¬«      }t        ||«      }t        |g d
¢«       t        g t        g g «      «       y )Nri  rj  r–   rk  r}  )TTTFT©rˆ   rˆ   r:   r=   r.  ©r=   rˆ   r.  rÕ   )TTFTT)r   r    r5   r4   rq  s       rU   Ú	test_in1dzTestArraySetOps.test_in1d¡  sr   € äÒ"ªÔ9ˆÜÒ%Ò,>Ô?ˆÜ�A�q‹zˆÜ�TÒ:Ô;äÒ"ªÔ9ˆÜ’*¢9Ô-ˆÜ�A�q‹zˆÜ�TÒ:Ô;ä˜2œt B¨›|Õ,rW   c                 ó�  — t        g d¢g d¢¬«      }t        g d¢g d¢¬«      }t        t        j                  t	        ||«      «      t	        ||d¬«      «       t        g d¢g d¢¬«      }t        g d	¢g d
¢¬«      }t        t        j                  t	        ||«      «      t	        ||d¬«      «       t        g t	        g g d¬«      «       y )Nri  rj  r–   rk  r}  T)Úinvertrz  r{  rÕ   )r   r5   rP   r~  r    r4   rƒ  s      rU   Útest_in1d_invertz TestArraySetOps.test_in1d_invert¯  s�   € äÒ"ªÔ9ˆÜÒ%Ò,>Ô?ˆÜ”R—Y‘Yœt A q›zÓ*¬D°°A¸dÔ,CÔDäÒ"ªÔ9ˆÜ’*¢9Ô-ˆÜ”R—Y‘Yœt A q›zÓ*¬D°°A¸dÔ,CÔDä˜2œt B¨°4Ô8Õ9rW   c                 ól  — t        g d¢g d¢¬«      }t        g d¢g d¢¬«      }t        ||«      }t        g d¢g d¢¬«      }t        ||«       t        g d¢g d¢gg d	¢g d
¢g¬«      }t        g d¢g d¢¬«      }t        g d¢g d¢¬«      }t        ||«      }t        ||«       t        g t        g g «      «       y )N)r=   r:   rˆ   rn   rˆ   r.  r}  r–   rk  )r=   r:   r�   r¾   rˆ   rn   r.  )r   r   r   r   r   r   r=   rØ   r<  r  rÕ   r-  rj  )r   r=   r:   r�   r¾   rˆ   )r   r/   r5   r4   )	rQ   r@   rA   rR   rS   r²   r³   Úezr¹   s	            rU   Útest_union1dzTestArraySetOps.test_union1d»  s˜   € äÒ%Ò,>Ô?ˆÜÒ%Ò,>Ô?ˆÜ�q˜!‹}ˆÜÒ.Ò5JÔKˆÜ�T˜7Ô#ô ’9šiÐ(²	º9Ð/EÔFˆÜ’/ªÔ8ˆÜÒ%Ò,>Ô?ˆÜ�A�q‹MˆÜ�Q˜Ôä˜2œw r¨2›Õ/rW   c                 ó�  — t        g d¢g d¢¬«      }t        g d¢«      }t        ||«      }t        |t        g d¢g d¢¬«      «       t        d«      }t        d«      }t        t        ||«      t        dd	g«      «       t        g t        j
                  g ¬«      }t        t        |g «      j                  t        j
                  «       y )
N)r~   rˆ   r¾   rn   rn   r=   r:   r=   )r   r   r   r   r   r   r   r=   r–   )r:   r¾   r�   r�   r:   r=   rˆ   )r~   rn   r.  rÕ   rj   r   r€   )r   r,   r5   r   rP   Úuint32r<   rq  s       rU   Útest_setdiff1dzTestArraySetOps.test_setdiff1dÍ  sŽ   € äÒ*Ò1IÔJˆÜÒ'Ó(ˆÜ˜˜A‹ˆÜ�Tœ5¢²)Ô<Ô=ä�2‹JˆÜ�1‹IˆÜ”Y˜q !“_¤e¨Q°¨F£mÔ4Ü�"”b—i‘i bÔ)ˆÜ”Y˜q "Ó%×+Ñ+¬R¯Y©YÕ7rW   c                 ó´   — t        j                  g d¢«      }t        j                  g d¢«      }t        t        ||«      t        j                  dg«      «       y )N)r@   rA   rY   )r@   rA   ry   rY   )rP   r   r4   r,   rƒ  s      rU   Útest_setdiff1d_char_arrayz)TestArraySetOps.test_setdiff1d_char_arrayÚ  s8   € ä�H‰H’_Ó%ˆÜ�H‰H’_Ó%ˆÜœ9 Q¨›?¬B¯H©H°c°U«OÕ<rW   N)rŒ   r�   rŽ   rN  rR  rT  rW  r[  r^  ra  re  rg  rr  ru  rx  r|  r  r‚  r…  r‡  r[   rW   rU   rH  rH  æ  sW   „ ò2ò2ò #ò.ò.ò.ò.ò .ò $ò1ò4/ò&!ò*-ò
:ò0ò$8ó=rW   rH  c                   ób   — e Zd Zd„ Zd„ Zej                  j                  dee	e
g«      d„ «       Zy)ÚTestShapeBasec                 óÌ  — t        g d¢g d¢¬«      }t        |«      }t        |j                  d«       t        |j                  j                  |j
                  j                  «       t        |j                  d«       t        |j                  j                  |j
                  j                  «       t        |j                  j                  |j
                  j                  «       y )NrØ   rm  r–   rü  r÷  )r
   r   r5   r   r?   rr   rƒ  s      rU   Útest_atleast_2dzTestShapeBase.test_atleast_2dã  s�   € äšªÔ3ˆÜ�q‹MˆÜ�Q—W‘W˜fÔ%Ü�Q—V‘V—\‘\ 1§6¡6§<¡<Ô0Ü�Q—W‘W˜dÔ#Ü�Q—V‘V—\‘\ 1§6¡6§<¡<Ô0Ü�Q—V‘V—\‘\ 1§6¡6§<¡<Õ0rW   c                 óZ  — t        d«      }t        |j                  d«       t        |j                  j                  |j                  «       t        |j                  j                  |j                  «       t        dd«      }|D ]l  }t        |j                  d«       t        |j                  j                  |j                  «       t        |j                  j                  |j                  «       Œn t        d«      }t        |j                  d«       t        |j                  j                  |j                  «       t        |j                  j                  |j                  «       t        dd«      }|D ]l  }t        |j                  d«       t        |j                  j                  |j                  «       t        |j                  j                  |j                  «       Œn t        d«      }t        |j                  d«       t        |j                  j                  |j                  «       t        |j                  j                  |j                  «       t        dd«      }|D ]l  }t        |j                  d«       t        |j                  j                  |j                  «       t        |j                  j                  |j                  «       Œn t        d«      }t        |j                  d«       t        |j                  j                  |j                  j                  «       y )Nr“   rZ   r”   rG   r=  )r   r5   r   r?   rr   r   r   r   )rQ   rA   r@   s      rU   Útest_shape_scalarzTestShapeBase.test_shape_scalarí  s  € ô
 �s‹OˆÜ�Q—W‘W˜dÔ#Ü�Q—V‘V—\‘\ 1§7¡7Ô+Ü�Q—V‘V—\‘\ 1§7¡7Ô+ä�s˜CÓ ˆØò 	0ˆAÜ˜Ÿ™ $Ô'Ü˜Ÿ™Ÿ™ q§w¡wÔ/Ü˜Ÿ™Ÿ™ q§w¡wÕ/ð	0ô
 �s‹OˆÜ�Q—W‘W˜fÔ%Ü�Q—V‘V—\‘\ 1§7¡7Ô+Ü�Q—V‘V—\‘\ 1§7¡7Ô+ä�s˜CÓ ˆØò 	0ˆAÜ˜Ÿ™ &Ô)Ü˜Ÿ™Ÿ™ q§w¡wÔ/Ü˜Ÿ™Ÿ™ q§w¡wÕ/ð	0ô
 �s‹OˆÜ�Q—W‘W˜iÔ(Ü�Q—V‘V—\‘\ 1§7¡7Ô+Ü�Q—V‘V—\‘\ 1§7¡7Ô+ä�s˜CÓ ˆØò 	0ˆAÜ˜Ÿ™ )Ô,Ü˜Ÿ™Ÿ™ q§w¡wÔ/Ü˜Ÿ™Ÿ™ q§w¡wÕ/ð	0ô
 �S‹MˆÜ�Q—W‘W˜fÔ%Ü�Q—V‘V—\‘\ 1§6¡6§<¡<Õ0rW   Úfnc                 ó  — |j                   }t        t        j                  |«      |u sJ ‚|j                  dk(  sJ ‚t        t        |j                   «      }t        j                  |«      }t        j                  |«      }||k(  sJ ‚y )Nznumpy.ma.extras)rŒ   ÚgetattrrP   r^   r�   ÚinspectÚ	signature)rQ   rŽ  ÚnameÚwrappedÚsig_wrappedÚsigs         rU   Útest_inspect_signaturez$TestShapeBase.test_inspect_signature  su   € à�{‰{ˆÜ”r—u‘u˜dÓ# rÑ)Ð)Ð)à�}‰}Ð 1Ò1Ð1Ð1äœ"˜bŸk™kÓ*ˆÜ×'Ñ'¨Ó0ˆÜ×Ñ Ó#ˆØ�kÒ!Ð!Ñ!rW   N)rŒ   r�   rŽ   r‹  r�  rÚ   r  r  r   r1   r   r—  r[   rW   rU   r‰  r‰  á  s:   „ ò1ò(1ðT ‡[�[×Ñ˜T J°¸Ð#AÓBñ	"ó Cñ	"rW   r‰  c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚTestNDEnumeratec           	      óÔ  — t        j                  d«      j                  d«      }t        j                  |t        ¬«      }t        ||¬«      }t        t        t        j                  |«      «      t        t        |«      «      «       t        t        t        |«      «      t        t        |«      «      «       t        t        t        |«      «      t        t        |d¬«      «      «       y )Nr  )r=   r�   r:   r;   r–   F©rt   )	rP   r   rŸ   Ú
zeros_likerŠ   r
   r5   rf  r(   )rQ   ÚordinaryÚ
empty_maskÚ	with_masks       rU   Útest_ndenumerate_nomaskedz)TestNDEnumerate.test_ndenumerate_nomasked&  s    € Ü—9‘9˜R“=×(Ñ(¨Ó3ˆÜ—]‘] 8´4Ô8ˆ
Ü  °
Ô;ˆ	Ü”Tœ"Ÿ.™.¨Ó2Ó3Üœ+ hÓ/Ó0ô	2ä”Tœ+ hÓ/Ó0Üœ+ iÓ0Ó1ô	3ä”Tœ+ iÓ0Ó1Üœ+ i¸EÔBÓCõ	ErW   c           
      ó2  — t        d«      }t        d«      }t        d«      }t        t        t        |«      «      g «       t        t        t        |«      «      g «       t        t        t        |d¬«      «      t        t	        t        j                  d«      dt        gz  «      «      «       t        t        t        |«      «      g «       t        t        t        |d¬«      «      t        t	        t        j                  d«      dt        gz  «      «      «       y )Nr[   )éd   rÉ   Fr›  r¢  r,  )r$   r5   rf  r(   r9  rP   Úndindexr	   )rQ   r@   rA   rY   s       rU   Útest_ndenumerate_allmaskedz*TestNDEnumerate.test_ndenumerate_allmasked1  sÃ   € Ü�r‹NˆÜ�vÓˆÜ�yÓ!ˆÜ”Tœ+ a›.Ó)¨2Ô.Ü”Tœ+ a›.Ó)¨2Ô.Ü”Tœ+ a°EÔ:Ó;Üœ#œbŸj™j¨Ó0°#¼¸±.ÓAÓBô	Dä”Tœ+ a›.Ó)¨2Ô.Ü”Tœ+ a°EÔ:Ó;Üœ#œbŸj™j¨Ó3°YÄ&ÀÑ5IÓJÓKõ	MrW   c           
      óf  — t        t        j                  d«      j                  d«      g d¢g d¢g d¢g¬«      }g d¢}t	        t        t        |«      «      |«       t	        t        t        t        |d¬	«      «      «      |j                  «       t        |d¬	«      D ]  \  }}t	        ||   |«       Œ y )
NrÐ   rõ  rc  )r=   r=   r   r=   rd  r–   ))rÖ   r~   ))r:   r   r   )rö  r€   )rH   rj   )rû  rø   Fr›  )	r
   rP   r   rŸ   r5   rf  r(   ra   r‰   )rQ   r@   ÚitemsÚ
coordinateÚvalues        rU   Útest_ndenumerate_mixedmaskedz,TestNDEnumerate.test_ndenumerate_mixedmasked=  s’   € ÜœŸ™ 2›×.Ñ.¨vÓ6Ú+Ú+Ú+ð-ô.ˆòGˆä”Tœ+ a›.Ó)¨5Ô1Ü”Sœœk¨!¸Ô>Ó?Ó@À!Ç&Á&ÔIÜ!,¨Q¸5Ô!Aò 	/ÑˆJ˜Ü˜˜:™¨Õ.ñ	/rW   N)rŒ   r�   rŽ   r   r¤  r©  r[   rW   rU   r™  r™  $  s   „ ò	Eò
Mó
/rW   r™  c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)Ú	TestStackc                 óž  — t        g d¢g d¢¬«      }t        g d¢g d¢¬«      }t        ||gd¬«      }t        |j                  d«       t	        |j
                  |d   j
                  «       t	        |j
                  |d	   j
                  «       t        ||g«      }t	        |j                  |j                  «       t	        |j
                  |j
                  «       t        ||gd	¬«      }t        |j                  d
«       t	        |j
                  |d d …df   j
                  «       t	        |j
                  |d d …d	f   j
                  «       y )NrØ   rm  r–   ©r€   r   rn   r  r   r—   rû  r=   ©r�   r:   ©r
   r.   r5   r   r4   r?   r1   rr   ©rQ   r@   rA   rY   r  s        rU   Útest_stack_1dzTestStack.test_stack_1dL  sç   € ÜšªÔ3ˆÜšªÔ3ˆä�1�a�&˜qÔ!ˆÜ�Q—W‘W˜fÔ%Ü˜1Ÿ6™6 1 Q¡4§9¡9Ô-Ü˜1Ÿ6™6 1 Q¡4§9¡9Ô-ä�A�q�6‹NˆÜ˜1Ÿ6™6 1§6¡6Ô*Ü˜1Ÿ6™6 1§6¡6Ô*ä�1�a�&˜qÔ!ˆÜ�Q—W‘W˜fÔ%Ü˜1Ÿ6™6 1¢Q¨ T¡7§<¡<Ô0Ü˜1Ÿ6™6 1¢Q¨ T¡7§<¡<Õ0rW   c                 ó–  — t        g d¢d¬«      }t        g d¢d¬«      }t        ||gd¬«      }t        |j                  d«       t	        |j
                  |d   j
                  «       t	        |j
                  |d	   j
                  «       t        ||g«      }t	        |j                  |j                  «       t	        |j
                  |j
                  «       t        ||gd	¬«      }t        |j                  d
«       t	        |j
                  |d d …df   j
                  «       t	        |j
                  |d d …d	f   j
                  «       y )NrØ   Tr–   r­  Fr   r—   rû  r=   r®  r¯  r°  s        rU   Útest_stack_maskszTestStack.test_stack_masks^  sç   € Üš¨Ô.ˆÜš¨Ô/ˆä�1�a�&˜qÔ!ˆÜ�Q—W‘W˜fÔ%Ü˜1Ÿ6™6 1 Q¡4§9¡9Ô-Ü˜1Ÿ6™6 1 Q¡4§9¡9Ô-ä�A�q�6‹NˆÜ˜1Ÿ6™6 1§6¡6Ô*Ü˜1Ÿ6™6 1§6¡6Ô*ä�1�a�&˜qÔ!ˆÜ�Q—W‘W˜fÔ%Ü˜1Ÿ6™6 1¢Q¨ T¡7§<¡<Ô0Ü˜1Ÿ6™6 1¢Q¨ T¡7§<¡<Õ0rW   c                 óœ  — d}t         j                  j                  dd|«      }t         j                  j                  dd|«      }t         j                  j                  dd|«      j                  t        «      }t         j                  j                  dd|«      j                  t        «      }t        ||¬«      }t        ||¬«      }t        ||gd¬«      }d|z   }	t        |j                  |	«       t        |j                  |d   j                  «       t        |j                  |d   j                  «       t        ||gd	¬«      }|dz   }	t        |j                  |	«       t        |j                  |d
   j                  «       t        |j                  |d   j                  «       d}t         j                  j                  dd|«      }t         j                  j                  dd|«      }t         j                  j                  dd|«      j                  t        «      }t         j                  j                  dd|«      j                  t        «      }t        ||¬«      }t        ||¬«      }t        ||gd¬«      }d|z   }	t        |j                  |	«       t        |j                  |d   j                  «       t        |j                  |d   j                  «       t        ||gd	¬«      }|dz   }	t        |j                  |	«       t        |j                  |d
   j                  «       t        |j                  |d   j                  «       y )Nr®  r   rj   r:   r–   r—   r9   r=   r.  ).r   ).r=   )r�   r:   r¾   rˆ   )rP   r  Úrandintrg  rŠ   r
   r.   r5   r   r4   r?   )
rQ   ÚshpÚd1Úd2r´   rµ   Úa1rh  rY   Úc_shps
             rU   Útest_stack_ndzTestStack.test_stack_ndp  sv  € àˆÜ�Y‰Y×Ñ˜q " cÓ*ˆÜ�Y‰Y×Ñ˜q " cÓ*ˆÜ�Y‰Y×Ñ˜q ! SÓ)×0Ñ0´Ó6ˆÜ�Y‰Y×Ñ˜q ! SÓ)×0Ñ0´Ó6ˆÜ˜" 2Ô&ˆÜ˜" 2Ô&ˆä�2�r�( Ô#ˆØ�s‘
ˆÜ�Q—W‘W˜eÔ$Ü˜2Ÿ7™7 A a¡D§I¡IÔ.Ü˜2Ÿ7™7 A a¡D§I¡IÔ.ä�2�r�( Ô$ˆØ�d‘
ˆÜ�Q—W‘W˜eÔ$Ü˜2Ÿ7™7 A f¡I§N¡NÔ3Ü˜2Ÿ7™7 A f¡I§N¡NÔ3ð ˆÜ�Y‰Y×Ñ˜q " cÓ*ˆÜ�Y‰Y×Ñ˜q " cÓ*ˆÜ�Y‰Y×Ñ˜q ! SÓ)×0Ñ0´Ó6ˆÜ�Y‰Y×Ñ˜q ! SÓ)×0Ñ0´Ó6ˆÜ˜" 2Ô&ˆÜ˜" 2Ô&ˆä�2�r�( Ô#ˆØ�s‘
ˆÜ�Q—W‘W˜eÔ$Ü˜2Ÿ7™7 A a¡D§I¡IÔ.Ü˜2Ÿ7™7 A a¡D§I¡IÔ.ä�2�r�( Ô$ˆØ�d‘
ˆÜ�Q—W‘W˜eÔ$Ü˜2Ÿ7™7 A f¡I§N¡NÔ3Ü˜2Ÿ7™7 A f¡I§N¡NÕ3rW   N)rŒ   r�   rŽ   r±  r³  r»  r[   rW   rU   r«  r«  J  s   „ ò1ò$1ó$)4rW   r«  )LÚ__doc__r‘  r´  rÚ   ÚnumpyrP   Únumpy._core.numericr   Únumpy.ma.corer   r   r   r   r   r	   r
   r   r   r   r   Únumpy.ma.extrasr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   Únumpy.ma.testutilsr2   r3   r4   r5   r7   r�   r  r)  r9  rŒ  rš  r¡  r  r+  r4  rH  r‰  r™  r«  r[   rW   rU   ú<module>rÂ     s   ðñó Û ã ã Ý 4÷÷ ÷ ñ ÷$÷ $÷ $÷ $÷ $÷ $÷ $÷ $÷ $ñ $÷Jó ÷ñ ÷D~9ñ ~9÷B).ñ ).÷XCñ C÷Loñ o÷d	,ñ ,÷,
!ñ 
!÷M=ñ M=÷`T1ñ T1÷n/?ñ /?÷d7'ñ 7'÷tx=ñ x=÷v@"ñ @"÷F#/ñ #/÷LO4ò O4rW   