Ë
    6Š·jåÕ  ã                   óÊ  — d dl Z d dlZd dlmZ d dlZd dlZd dlmZ d dl	m
Z
mZ d dlmZmZ d dlmZmZmZmZmZmZ  ej,                  dej.                  dd	ej.                  d
gddej.                  dddgej.                  ej.                  ej.                  dej.                  dgdej.                  ej.                  ddej.                  gg«      Z ej,                  g d¢«       ej,                  g d¢«       ej,                  ddg«       ej,                  g d¢«      gZ ej,                  g d¢g d¢g d¢g d¢g«      Z ej,                  g d¢g d¢g d¢g d¢g«      Z G d „ d!«      Z G d"„ d#«      Z G d$„ d%«      Z ej,                  d&«       ej,                  g d'¢«      d(œZejA                  «       D ]  Z!e!jE                  d)¬*«       Œ ejF                  jI                  d+ejJ                  d,   ejJ                  d-   z   d.z   «      ejF                  jI                  d/ejA                  «       ejM                  «       ¬0«       G d1„ d2«      «       «       Z' G d3„ d4«      Z( G d5„ d6e(«      Z) G d7„ d8e(«      Z* G d9„ d:e(«      Z+d;Z, e-ejJ                  d-   «      Z.e.e,D � cg c]  } d<| › d=�‘Œ
 c} z  Z. G d>„ d?«      Z/ G d@„ dA«      Z0 G dB„ dC«      Z1ejF                  jI                  dD ej,                  ej.                  dEej.                  ejd                  g«       ej,                  g dF¢«      f ej,                  g dG¢ejf                  ¬H«      dIf ej,                  g dF¢«      dIf ej,                  ej.                  dEgej.                  ejd                  ggejh                  ¬H«       ej,                  d)dIgd)dIgg«      fg«      dJ„ «       Z5dK„ Z6ejF                  jo                  dL¬M«      dN„ «       Z8yc c} w )Oé    N)Úpartial)Únormalize_axis_tuple)Ú	AxisErrorÚComplexWarning)Ú	_nan_maskÚ_replace_nan)Úassert_Úassert_almost_equalÚassert_array_equalÚassert_equalÚassert_raisesÚassert_raises_regexç³êsµûã?ç&S£’:Ñ?çàœ¥½Á‡?çÁÊ¡E¶ó½?çÞ	Šá?ç»¸�ðî¿çáz®GáÊ?çL¦
F%uÞ?ç6<½R–!Ò?ç[B>èÙ¬º?ç“:M„ã¿çÏ÷Sã¥›Ä?çzÇ):’ËÇ?ç•Ô	h"Ô?)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   c                   ó8  — e Zd Zej                  ej
                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                   ej"                  ej$                  ej&                  ej(                  ej*                  ej,                  ej.                  ej0                  ej2                  ej4                  ej6                  ej8                  ej:                  ej<                  ej>                  iZ e D � �cg c]  }|j                   ‘Œ c}} Z!e"dd„«       Z#e$jJ                  jM                  de jO                  «       e!¬«      d„ «       Z(d„ Z)yc c}} w )ÚTestSignatureMatchc                 óJ  — g }t        j                  | «      }|j                  j                  «       D ][  }|j                  t         j
                  j                  u r|j                  |«       Œ;|j                  |j                  |¬«      «       Œ] t        j                  |«      S )z?Construct a signature and replace all default parameter-values.)Údefault)
ÚinspectÚ	signatureÚ
parametersÚvaluesr"   Ú	ParameterÚemptyÚappendÚreplaceÚ	Signature)Úfuncr"   Úprm_listr$   Úprms        úW/root/workspace/.venv/lib/python3.12/site-packages/numpy/lib/tests/test_nanfunctions.pyÚget_signaturez TestSignatureMatch.get_signatureA   s…   € ð ˆÜ×%Ñ% dÓ+ˆ	Ø×'Ñ'×.Ñ.Ó0ò 	>ˆCØ�{‰{œg×/Ñ/×5Ñ5Ñ5Ø—‘ Õ$à—‘ §¡°G Ó <Õ=ð		>ô
 × Ñ  Ó*Ð*ó    znan_func,func©Úidsc                 óˆ   — | j                  |«      }| j                  |«      }t        j                  j                  ||«       y ©N)r0   ÚnpÚtestingr   )ÚselfÚnan_funcr,   r$   Únan_signatures        r/   Útest_signature_matchz'TestSignatureMatch.test_signature_matchM   s8   € ð
 ×&Ñ& tÓ,ˆ	Ø×*Ñ*¨8Ó4ˆÜ
�
‰
×Ñ 	¨=Õ9r1   c                 óÀ   — t         j                  j                  t        | j                  «      t        t         j
                  j                  j                  «      «       y)z4Validate that all nan functions are actually tested.N)r6   r7   r   ÚsetÚIDSÚlibÚ_nanfunctions_implÚ__all__©r8   s    r/   Útest_exhaustivenessz&TestSignatureMatch.test_exhaustivenessV   s6   € ä
�
‰
×ÑÜ�—‘‹Mœ3œrŸv™v×8Ñ8×@Ñ@ÓAõ	
r1   N)z...)*Ú__name__Ú
__module__Ú__qualname__r6   ÚnanminÚaminÚnanmaxÚamaxÚ	nanargminÚargminÚ	nanargmaxÚargmaxÚnansumÚsumÚnanprodÚprodÚ	nancumsumÚcumsumÚ
nancumprodÚcumprodÚnanmeanÚmeanÚ	nanmedianÚmedianÚnanpercentileÚ
percentileÚnanquantileÚquantileÚnanvarÚvarÚnanstdÚstdÚNANFUNCSr>   Ústaticmethodr0   ÚpytestÚmarkÚparametrizeÚitemsr;   rC   )Ú.0Úks   00r/   r    r    .   s%  „ à
�	‰	�2—7‘7Ø
�	‰	�2—7‘7Ø
�‰�b—i‘iØ
�‰�b—i‘iØ
�	‰	�2—6‘6Ø
�
‰
�B—G‘GØ
�‰�b—i‘iØ
�‰�r—z‘zØ
�
‰
�B—G‘GØ
�‰�b—i‘iØ
×Ñ˜"Ÿ-™-Ø
�‰˜Ÿ™Ø
�	‰	�2—6‘6Ø
�	‰	�2—6‘6ð€Hð   (×
(˜!ˆ1�:‹:Ó
(€Càò	+ó ð	+ð ‡[�[×Ñ˜_¨h¯n©nÓ.>ÀCÐÓHñ:ó Ið:ó
ùó/ )s   Å Fr    c            
       ó²  — e Zd Zej                  ej
                  gZej                  ej                  gZ	d„ Z
d„ Zd„ Zd„ Zd„ Zej                   j#                  dg d¢«      ej                   j#                  dej$                  d	   «      ej                   j#                  d
 ej&                  ej(                  «       ej*                  dej(                  «      gddg¬«      d„ «       «       «       Zd„ Zd„ Zd„ Zd„ Zej                   j#                  dej$                  d	   «      d„ «       Zej                   j#                  dej$                  d	   «      d„ «       Zy)ÚTestNanFunctions_MinMaxc                 ó~   — t         j                  «       }| j                  D ]  } ||«       t        |t         «       Œ y r5   ©Ú_ndatÚcopyÚnanfuncsr   ©r8   ÚndatÚfs      r/   Útest_mutationz%TestNanFunctions_MinMax.test_mutationb   ó1   € ä�z‰z‹|ˆØ—‘ò 	&ˆAÙˆdŒGÜ˜œuÕ%ñ	&r1   c                 óü   — t        j                  d«      }t        | j                  | j                  «      D ]D  \  }}dD ]:  } |||d¬«      } |||d¬«      }t        |j                  |j                  k(  «       Œ< ŒF y ©Né   ©Nr   é   T©ÚaxisÚkeepdims©r6   ÚeyeÚziprq   Ústdfuncsr	   Úndim©r8   ÚmatÚnfÚrfr}   ÚtgtÚress          r/   Útest_keepdimsz%TestNanFunctions_MinMax.test_keepdimsi   óq   € Ü�f‰f�Q‹iˆÜ˜$Ÿ-™-¨¯©Ó7ò 	.‰FˆB�Ø$ò .�Ù˜ 4°$Ô7�Ù˜ 4°$Ô7�Ü˜Ÿ™ C§H¡HÑ,Õ-ñ.ñ	.r1   c                 ó  — t        j                  d«      }t        | j                  | j                  «      D ]G  \  }}t        j
                  d«      } ||d¬«      } ||d|¬«      }t        ||«       t        ||«       ŒI y ©Nry   r{   ©r}   ©r}   Úout©r6   r€   r�   rq   r‚   Úzerosr
   ©r8   r…   r†   r‡   Úresoutrˆ   r‰   s          r/   Útest_outz TestNanFunctions_MinMax.test_outq   ók   € Ü�f‰f�Q‹iˆÜ˜$Ÿ-™-¨¯©Ó7ò 	*‰FˆB�Ü—X‘X˜a“[ˆFÙ�S˜q”/ˆCÙ�S˜q fÔ-ˆCÜ  VÔ,Ü  SÕ)ñ	*r1   c                 ó¸  — d}t        | j                  | j                  «      D ]µ  \  }}|D ]«  }t        j                  d|¬«      } ||d¬«      j
                  j                  } ||d¬«      j
                  j                  }t        ||u «        ||d ¬«      j
                  j                  } ||d ¬«      j
                  j                  }t        ||u «       Œ­ Œ· y )NÚefdgFDGry   ©Údtyper{   rŽ   ©r�   rq   r‚   r6   r€   rš   Útyper	   ©r8   Úcodesr†   r‡   Úcr…   rˆ   r‰   s           r/   Útest_dtype_from_inputz-TestNanFunctions_MinMax.test_dtype_from_inputz   s¾   € ØˆÜ˜$Ÿ-™-¨¯©Ó7ò 		$‰FˆB�Øò $�Ü—f‘f˜Q aÔ(�Ù˜ 1”o×+Ñ+×0Ñ0�Ù˜ 1”o×+Ñ+×0Ñ0�Ü˜˜s˜
Ô#á˜ 4Ô(×.Ñ.×3Ñ3�Ù˜ 4Ô(×.Ñ.×3Ñ3�Ü˜˜s˜
Õ#ñ$ñ		$r1   c                 óÄ   — t        | j                  | j                  «      D ]8  \  }}t        D �cg c]
  } ||«      ‘Œ }} |t        d¬«      }t        ||«       Œ: y c c}w ©Nr{   rŽ   ©r�   rq   r‚   Ú_rdatro   r
   ©r8   r†   r‡   Údrˆ   r‰   s         r/   Útest_result_valuesz*TestNanFunctions_MinMax.test_result_values‡   óT   € Ü˜$Ÿ-™-¨¯©Ó7ò 	*‰FˆB�Ü"'Ö(˜Q‘2�a•5Ð(ˆCÐ(Ù”U Ô#ˆCÜ  SÕ)ñ	*ùÚ(ó   ¯Ar}   rz   rš   ÚAllFloatÚarray©ry   ry   Ú0dÚ2dr2   c                 óŒ  — |�$|j                   dk(  rt        j                  d«       |j                  |«      }d}| j                  D ]p  }t        j
                  t        |¬«      5   |||¬«      }d d d «       t        j                  «      j                  «       sJ ‚|j                  |j                  k(  rŒpJ ‚ y # 1 sw Y   ŒLxY w©Nr   ú*`axis != None` not supported for 0d arraysúAll-NaN slice encountered©ÚmatchrŽ   )rƒ   re   ÚskipÚastyperq   ÚwarnsÚRuntimeWarningr6   ÚisnanÚallrš   ©r8   r}   rš   r«   r´   r,   r�   s          r/   Útest_allnansz$TestNanFunctions_MinMax.test_allnans�   s¦   € ð Ð §
¡
¨a¢Ü�K‰KÐDÔEà—‘˜UÓ#ˆØ+ˆØ—M‘Mò 	,ˆDÜ—‘œn°EÔ:ñ -Ù˜5 tÔ,�÷-ä—8‘8˜C“=×$Ñ$Ô&Ð&Ð&Ø—9‘9 §¡Ó+Ð+Ð+ñ		,÷-ð -ús   Á$B:Â:C	c                 óx  — t         j                  j                  t        «      }|j                  j                  «       }t         j                  fD ]i  } ||d¬«      } |t        d¬«      }t        ||«       t        |j                  |«       t        t        j                  |«      j                  «        «       Œk y r¢   )r6   ÚmaÚfix_invalidro   Ú_maskrp   rG   r   r	   ÚisinfÚany)r8   r…   Úmskrt   r‰   rˆ   s         r/   Útest_maskedz#TestNanFunctions_MinMax.test_maskedŸ   s†   € Ü�e‰e×Ñ¤Ó&ˆØ�i‰i�n‰nÓˆÜ—)‘)�ò 	-ˆAÙ�C˜a”.ˆCÙ”E Ô"ˆCÜ˜˜cÔ"Ü˜Ÿ™ CÔ(ÜœŸ™ ›×)Ñ)Ó+Ð+Õ,ñ	-r1   c                 óN   — | j                   D ]  }t         |d«      dk(  «       Œ y ©Nr   ©rq   r	   ©r8   rt   s     r/   Útest_scalarz#TestNanFunctions_MinMax.test_scalar©   ó%   € Ø—‘ò 	!ˆAÜ‘A�b“E˜R‘KÕ ñ	!r1   c           	      ój  —  G d„ dt         j                  «      }t        j                  d«      j                  |«      }| j                  D ]�  } ||d¬«      }t        t        ||«      «       t        |j                  dk(  «        ||d¬«      }t        t        ||«      «       t        |j                  dk(  «        ||«      }t        |j                  dk(  «       Œ’ t         j                  |d<   | j                  D �]  }t        j                  d	¬
«      5 }t        j                  d«        ||d¬«      }t        t        ||«      «       t        t        j                  t        j                  |«      «       «       t        t        |«      dk(  «       d d d «       t        j                  d	¬
«      5 }t        j                  d«        ||d¬«      }t        t        ||«      «       t        t        j                  |d   «      xr4 t        j                  |d   «       xr t        j                  |d   «       «       t        t        |«      dk(  d«       t        t        |d   j                   t"        «      «       d d d «       t        j                  d	¬
«      5 }t        j                  d«        ||«      }t        |j                  dk(  «       t        |t         j                  k7  «       t        t        |«      dk(  «       d d d «       �Œ y # 1 sw Y   �Œ}xY w# 1 sw Y   Œ¡xY w# 1 sw Y   �Œ6xY w)Nc                   ó   — e Zd Zy)ú8TestNanFunctions_MinMax.test_subclass.<locals>.MyNDArrayN©rD   rE   rF   © r1   r/   Ú	MyNDArrayrÍ   ®   ó   „ Ør1   rÐ   ry   r   rŽ   ©ry   r{   rÏ   T©ÚrecordÚalwaysé   úno warning raised)r6   Úndarrayr€   Úviewrq   r	   Ú
isinstanceÚshapeÚnanÚwarningsÚcatch_warningsÚsimplefilterrÂ   r¹   ÚlenÚ
issubclassÚcategoryr¸   )r8   rÐ   Úminert   r‰   Úws         r/   Útest_subclassz%TestNanFunctions_MinMax.test_subclass­   s}  € ô	œŸ
™
ô 	ô
 �v‰v�a‹y�~‰~˜iÓ(ˆØ—‘ò 	%ˆAÙ�D˜q”/ˆCÜ”J˜s IÓ.Ô/Ü�C—I‘I Ñ%Ô&Ù�D˜q”/ˆCÜ”J˜s IÓ.Ô/Ü�C—I‘I Ñ%Ô&Ù�D“'ˆCÜ�C—I‘I ‘OÕ$ð	%ô —&‘&ˆˆQ‰Ø—‘ó 	%ˆAÜ×(Ñ(°Ô5ð %¸Ü×%Ñ% hÔ/Ù˜ 1”o�Üœ
 3¨	Ó2Ô3ÜœBŸF™F¤2§8¡8¨C£=Ó1Ð1Ô2Üœ˜A› !™Ô$÷%ô ×(Ñ(°Ô5ð C¸Ü×%Ñ% hÔ/Ù˜ 1”o�Üœ
 3¨	Ó2Ô3ÜœŸ™  Q¡Ó(ò 1´·±¸#¸a¹&Ó1AÐ-Aò 1Ü "§¡¨¨Q©Ó 0Ð0ô2äœ˜A› !™Ð%8Ô9Üœ
 1 Q¡4§=¡=´.ÓAÔB÷Cô ×(Ñ(°Ô5ð %¸Ü×%Ñ% hÔ/Ù˜“g�Ü˜Ÿ	™	 R™Ô(Ü˜œrŸv™v™Ô&Üœ˜A› !™Ô$÷%ñ %ñ#	%÷%ñ %ú÷Cð Cú÷%ñ %ús'   ÄA>LÆ2C
LÊA)L(ÌL	ÌL%	Ì(L2	c           	      ó–  — t        j                  ddgt         j                  dgt         j                  t         j                  ggt        ¬«      }t	        t        j
                  |«      d«       t	        t        j
                  |d¬«      ddg«       t        j                  d¬«      5 }t        j                  d	«       t	        t        t        j
                  |d
¬«      «      ddt         j                  g«       t        t        |«      d
k(  d«       t        t        |d   j                  t        «      «       d d d «       y # 1 sw Y   y xY w)Nr   ç       @ç      @r™   r   rŽ   TrÓ   rÕ   r{   r×   )r6   r«   rÜ   Úobjectr   rG   rÝ   rÞ   rß   Úlistr	   rà   rá   râ   r¸   )r8   Úarrrä   s      r/   Útest_object_arrayz)TestNanFunctions_MinMax.test_object_arrayØ   sß   € Ü�h‰h˜˜c˜
¤R§V¡V¨S M´B·F±F¼B¿F¹FÐ3CÐDÌFÔSˆÜ”R—Y‘Y˜s“^ SÔ)Ü”R—Y‘Y˜s¨Ô+¨c°3¨ZÔ8ä×$Ñ$¨DÔ1ð 	?°QÜ×!Ñ! (Ô+äœœbŸi™i¨°!Ô4Ó5¸¸SÄ"Ç&Á&Ð7IÔJÜ”C˜“F˜a‘KÐ!4Ô5Ü”J˜q ™tŸ}™}¬nÓ=Ô>÷	?÷ 	?ñ 	?ús   Â'BD?Ä?Ec                 ó˜  —  G d„ dt         j                  «      }t        j                  d«      j                  |«      }t         j                  |d d | j
                  D ]k  }|t         j                  u rdnd} |||¬«      }|j                  |k(  sJ ‚||k(  sJ ‚ ||j                  |«      |¬«      }|j                  |k(  sJ ‚||k(  rŒkJ ‚ y )Nc                   ó   — e Zd Zy)ú7TestNanFunctions_MinMax.test_initial.<locals>.MyNDArrayNrÎ   rÏ   r1   r/   rÐ   rï   æ   rÑ   r1   rÐ   é	   é   éd   r   ©Úinitial)	r6   rØ   Úaranger¶   rÜ   rq   rI   rš   rÙ   )r8   rš   rÐ   Úarrt   rô   Úret1Úret2s           r/   Útest_initialz$TestNanFunctions_MinMax.test_initialä   s¼   € ô	œŸ
™
ô 	ô �Y‰Y�q‹\× Ñ  Ó'ˆÜ—‘ˆˆ2ˆAˆà—‘ò 		#ˆAØ¤"§)¡)™^‘c°ˆGá�R Ô)ˆDØ—:‘: Ò&Ð&Ð&Ø˜7’?Ð"�?á�R—W‘W˜YÓ'°Ô9ˆDØ—:‘: Ò&Ð&Ð&Ø˜7“?Ð"�?ñ		#r1   c                 ó   —  G d„ dt         j                  «      }t        j                  d«      j                  dd«      j	                  |«      }t         j
                  |dd d …f<   t        j                  |t         j                  ¬«      }d|d d …df<   | j                  D ]m  }|t         j                  u rdnd	} |||d
¬«      }|j                  |k(  sJ ‚||k(  sJ ‚ ||j                  |«      |d
¬«      }|j                  |k(  sJ ‚||k(  rŒmJ ‚ y )Nc                   ó   — e Zd Zy)ú5TestNanFunctions_MinMax.test_where.<locals>.MyNDArrayNrÎ   rÏ   r1   r/   rÐ   rü   ù   rÑ   r1   rÐ   rð   ry   r   r™   Fé   é   rñ   ©Úwhererô   )r6   rØ   rõ   Úreshaper¶   rÜ   Ú	ones_likeÚboolrq   rG   rš   rÙ   )	r8   rš   rÐ   rö   r   rt   Ú	referencer÷   rø   s	            r/   Ú
test_wherez"TestNanFunctions_MinMax.test_where÷   sô   € ô	œŸ
™
ô 	ô �Y‰Y�q‹\×!Ñ! ! QÓ'×.Ñ.¨uÓ5ˆÜ—6‘6ˆˆ1Šaˆ4‰Ü—‘˜R¤r§w¡wÔ/ˆØˆŠa�ˆd‰à—‘ò 		%ˆAØ¤"§)¡)™^™°ˆIá�R˜u¨aÔ0ˆDØ—:‘: Ò&Ð&Ð&Ø˜9Ò$Ð$Ð$á�R—W‘W˜YÓ'¨u¸aÔ@ˆDØ—:‘: Ò&Ð&Ð&Ø˜9Ó$Ð$Ð$ñ		%r1   N)rD   rE   rF   r6   rG   rI   rq   ÚminÚmaxr‚   ru   rŠ   r•   r    r§   re   rf   rg   Ú	typecodesr«   rÜ   Úfullr¼   rÄ   rÉ   rå   rì   rù   r  rÏ   r1   r/   rl   rl   ]   sL  „ à—	‘	˜2Ÿ9™9Ð%€HØ—‘˜Ÿ™Ð€Hò&ò.ò*ò$ò*ð ‡[�[×Ñ˜V¢\Ó2Ø‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?Ø‡[�[×Ñ˜WØˆ�‰�—‘ÓØˆ�‰�˜Ÿ™Óð'ð �$ˆ<ð ó ñ
,ó	ó @ó 3ð
,ò-ò!ò)%òV
?ð ‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?ñ#ó @ð#ð$ ‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?ñ%ó @ñ%r1   rl   c            
       ój  — e Zd Zej                  ej
                  gZd„ Zd„ Ze	j                  j                  dg d¢«      e	j                  j                  dej                  d   «      e	j                  j                  d ej                  ej                  «       ej                  dej                  «      gd	d
g¬«      d„ «       «       «       Zd„ Zd„ Zd„ Ze	j                  j                  dej                  d   «      d„ «       Ze	j                  j                  dej                  d   «      d„ «       Zy)ÚTestNanFunctions_ArgminArgmaxc                 ó~   — t         j                  «       }| j                  D ]  } ||«       t        |t         «       Œ y r5   rn   rr   s      r/   ru   z+TestNanFunctions_ArgminArgmax.test_mutation  rv   r1   c                 ó  — t        | j                  t        j                  t        j                  g«      D ]Æ  \  }}t
        D ]¸  }t        j                  «       5  t        j                  ddt        «        ||«      }||   }t        t        j                  |«       «       t         |||«      j                  «        «       t        t        j                  ||d | «      j                  «        «       d d d «       Œº ŒÈ y # 1 sw Y   ŒÇxY w)NÚignorezinvalid value encountered in)r�   rq   r6   ÚgreaterÚlessro   rÝ   rÞ   Úfilterwarningsr¸   r	   r¹   rÂ   Úequal)r8   rt   ÚfcmpÚrowÚindÚvals         r/   r§   z0TestNanFunctions_ArgminArgmax.test_result_values  sè   € Ü˜4Ÿ=™=¬2¯:©:´r·w±wÐ*?Ó@ò 	@‰GˆAˆtÜò 
@�Ü×,Ñ,Ó.ñ 	@Ü×+Ñ+Ø Ð"@Ä.ôRá˜C›&�CØ˜c™(�Cô ¤§¡¨£Ð-Ô.Ü¡ S¨#£× 2Ñ 2Ó 4Ð4Ô5Ü¤§¡¨¨c°$°3¨iÓ 8× <Ñ <Ó >Ð>Ô?÷	@ð 	@ñ
@ñ	@÷	@ð 	@ús   ÁBC?Ã?Dr}   rz   rš   rª   r«   r¬   r­   r®   r2   c                 ó  — |�$|j                   dk(  rt        j                  d«       |j                  |«      }| j                  D ]0  }t        j
                  t        d¬«      5   |||¬«       d d d «       Œ2 y # 1 sw Y   Œ=xY wr°   )rƒ   re   rµ   r¶   rq   ÚraisesÚ
ValueError)r8   r}   rš   r«   r,   s        r/   r¼   z*TestNanFunctions_ArgminArgmax.test_allnans&  su   € ð Ð §
¡
¨a¢Ü�K‰KÐDÔEà—‘˜UÓ#ˆØ—M‘Mò 	'ˆDÜ—‘œzÐ1LÔMñ 'Ù�U Õ&÷'ð 'ñ	'÷'ð 'ús   Á"A8Á8B	c           	      óæ   — t        j                  d«      }| j                  D ]M  }dD ]  }t        t        d|||¬«       Œ dD ]+  } |||¬«      }t        |t        j                  d«      «       Œ- ŒO y )N©r   ry   ©r   Nz*attempt to get argm.. of an empty sequencerŽ   ©r{   r   )r6   r’   rq   r   r  r   )r8   r…   rt   r}   r‰   s        r/   Ú
test_emptyz(TestNanFunctions_ArgminArgmax.test_empty5  sv   € Ü�h‰h�vÓˆØ—‘ò 	/ˆAØ!ò +�Ü#Ü"ØDØ˜3 Tö+ð+ð
 ò /�Ù˜ $Ô'�Ü˜S¤"§(¡(¨1£+Õ.ñ/ñ	/r1   c                 óN   — | j                   D ]  }t         |d«      dk(  «       Œ y rÆ   rÇ   rÈ   s     r/   rÉ   z)TestNanFunctions_ArgminArgmax.test_scalarA  rÊ   r1   c                 ó¼  —  G d„ dt         j                  «      }t        j                  d«      j                  |«      }| j                  D ]�  } ||d¬«      }t        t        ||«      «       t        |j                  dk(  «        ||d¬«      }t        t        ||«      «       t        |j                  dk(  «        ||«      }t        |j                  dk(  «       Œ’ y )	Nc                   ó   — e Zd Zy)ú>TestNanFunctions_ArgminArgmax.test_subclass.<locals>.MyNDArrayNrÎ   rÏ   r1   r/   rÐ   r"  F  rÑ   r1   rÐ   ry   r   rŽ   rÒ   r{   rÏ   )r6   rØ   r€   rÙ   rq   r	   rÚ   rÛ   )r8   rÐ   rã   rt   r‰   s        r/   rå   z+TestNanFunctions_ArgminArgmax.test_subclassE  s¬   € ô	œŸ
™
ô 	ô
 �v‰v�a‹y�~‰~˜iÓ(ˆØ—‘ò 	%ˆAÙ�D˜q”/ˆCÜ”J˜s IÓ.Ô/Ü�C—I‘I Ñ%Ô&Ù�D˜q”/ˆCÜ”J˜s IÓ.Ô/Ü�C—I‘I Ñ%Ô&Ù�D“'ˆCÜ�C—I‘I ‘OÕ$ñ	%r1   c                 ó  — t        j                  d«      j                  |«      }t         j                  |d d | j                  D ]D  }|t         j
                  u rdnd} ||d¬«      }|j                  |j                  k(  sJ ‚||k(  rŒDJ ‚ y )Nrð   rñ   rþ   T)r~   )r6   rõ   r¶   rÜ   rq   rK   rƒ   ©r8   rš   rö   rt   r  Úrets         r/   rŠ   z+TestNanFunctions_ArgminArgmax.test_keepdimsV  s~   € ä�Y‰Y�q‹\× Ñ  Ó'ˆÜ—‘ˆˆ2ˆAˆà—‘ò 	$ˆAØ¤"§,¡,Ñ.™°AˆIÙ�B Ô&ˆCØ—8‘8˜rŸw™wÒ&Ð&Ð&Ø˜)Ó#Ð#Ð#ñ		$r1   c                 ó8  — t        j                  d«      j                  |«      }t         j                  |d d | j                  D ]T  }t        j
                  dt         j                  ¬«      }|t         j                  u rdnd} |||¬«      }||u sJ ‚||k(  rŒTJ ‚ y )Nrð   rñ   rÏ   r™   rþ   ©r�   )r6   rõ   r¶   rÜ   rq   r’   ÚintprK   )r8   rš   rö   rt   r�   r  r%  s          r/   r•   z&TestNanFunctions_ArgminArgmax.test_outa  s‡   € ä�Y‰Y�q‹\× Ñ  Ó'ˆÜ—‘ˆˆ2ˆAˆà—‘ò 	$ˆAÜ—(‘(˜2¤R§W¡WÔ-ˆCØ¤"§,¡,Ñ.™°AˆIÙ�B˜C”.ˆCØ˜#‘:Ð�:Ø˜)Ó#Ð#Ð#ñ	$r1   N)rD   rE   rF   r6   rK   rM   rq   ru   r§   re   rf   rg   r  r«   rÜ   r	  r¼   r  rÉ   rå   rŠ   r•   rÏ   r1   r/   r  r    s&  „ à—‘˜bŸl™lÐ+€Hò&ò@ð ‡[�[×Ñ˜V¢\Ó2Ø‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?Ø‡[�[×Ñ˜WØˆ�‰�—‘ÓØˆ�‰�˜Ÿ™Óð'ð �$ˆ<ð ó ñ'ó	ó @ó 3ð'ò
/ò!ò%ð" ‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?ñ$ó @ð$ð ‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?ñ	$ó @ñ	$r1   r  rñ   )é   é'   é]   éW   é.   )r­   Ú1dF)Úwriterš   Ú
AllIntegerrª   ÚOr…   r2   c                   ó´  — e Zd Zej                  ej
                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                   ej"                  ej$                  ej&                  ej(                  ej*                  ej,                  ej.                  ej0                  ej2                  ej4                  ej6                  iZeD � �cg c]  }|j                   ‘Œ c}} Zej>                  jA                  dejC                  «       e¬«       ejD                  d¬«      d„ «       «       Z#ej>                  jA                  dejH                  ejJ                  fejL                  ejN                  fgddg¬«      d„ «       Z(ej>                  jA                  dej0                  ej2                  fej4                  ej6                  fgd	d
g¬«      d„ «       Z)ej>                  jA                  dej0                  ej4                  g«      d„ «       Z*yc c}} w )ÚTestNanFunctions_NumberTypesznanfunc,funcr2   r  )Úoverc                 óÐ   — |j                  |«      } ||«      } ||«      }t        ||«       |dk(  rt        |«      t        |«      u sJ ‚y |j                  |j                  k(  sJ ‚y )Nr1  ©r¶   r
   rœ   rš   ©r8   r…   rš   Únanfuncr,   rˆ   r�   s          r/   Útest_nanfuncz)TestNanFunctions_NumberTypes.test_nanfuncŒ  sa   € ð �j‰j˜ÓˆÙ�3‹iˆÙ�c‹lˆä˜C Ô%Ø�CŠ<Ü˜“9¤ S£	Ñ)Ð)Ñ)à—9‘9 §	¡	Ò)Ð)Ñ)r1   r]   r[   c                 óX  — |j                  |«      }|j                  j                  dk(  r't        t        ||d¬«       t        t        ||d¬«       y  ||d¬«      } ||d¬«      }t        ||«       |dk(  rt        |«      t        |«      u sJ ‚y |j                  |j                  k(  sJ ‚y )NrŸ   r{   )Úqr1  )r¶   rš   Úkindr   Ú	TypeErrorr
   rœ   r7  s          r/   Útest_nanfunc_qz+TestNanFunctions_NumberTypes.test_nanfunc_q™  s”   € ð �j‰j˜ÓˆØ�9‰9�>‰>˜SÒ Üœ) T¨3°!Õ4Üœ) W¨c°QÖ7ñ �s˜a”.ˆCÙ˜# Ô#ˆCä  SÔ)à˜Š|Ü˜C“y¤D¨£IÑ-Ð-Ñ-à—y‘y C§I¡IÒ-Ð-Ñ-r1   r_   ra   c                 óØ   — |j                  |«      } ||d¬«      } ||d¬«      }t        ||«       |dk(  rt        |«      t        |«      u sJ ‚y |j                  |j                  k(  sJ ‚y )Nç      à?©Úddofr1  r6  r7  s          r/   Útest_nanfunc_ddofz.TestNanFunctions_NumberTypes.test_nanfunc_ddof¯  sg   € ð �j‰j˜ÓˆÙ�3˜SÔ!ˆÙ�c Ô$ˆä˜C Ô%Ø�CŠ<Ü˜“9¤ S£	Ñ)Ð)Ñ)à—9‘9 §	¡	Ò)Ð)Ñ)r1   r8  c                 ó"  — |j                  |«      }t         ||d¬«       ||d¬«      «       d}t        t        |«      5   ||dd¬«       d d d «       t        t        |«      5   ||dd¬«       d d d «       y # 1 sw Y   Œ.xY w# 1 sw Y   y xY w)Nr@  )Ú
correctionrA  z5ddof and correction can't be provided simultaneously.)rB  rE  r{   r   )r¶   r
   r   r  )r8   r…   rš   r8  Úerr_msgs        r/   Útest_nanfunc_correctionz4TestNanFunctions_NumberTypes.test_nanfunc_correction¿  s’   € ð �j‰j˜ÓˆÜÙ�C CÔ(©'°#¸CÔ*@ô	
ð JˆÜ ¤¨WÓ5ñ 	3Ù�C˜c¨cÕ2÷	3ô !¤¨WÓ5ñ 	/Ù�C˜a¨AÕ.÷	/ð 	/÷	3ð 	3ú÷	/ð 	/ús   Á A9Á$BÁ9BÂBN)+rD   rE   rF   r6   rG   r  rI   r  rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r_   r`   ra   rb   rq   Únanfunc_idsre   rf   rg   rh   Úerrstater9  r]   r^   r[   r\   r>  rC  rG  )ri   Úis   00r/   r3  r3  v  sç  „ ð 	�	‰	�2—6‘6Ø
�	‰	�2—6‘6Ø
�‰�b—i‘iØ
�‰�b—i‘iØ
�	‰	�2—6‘6Ø
�
‰
�B—G‘GØ
�‰�b—i‘iØ
�‰�r—z‘zØ
�
‰
�B—G‘GØ
�‰�b—i‘iØ
�	‰	�2—6‘6Ø
�	‰	�2—6‘6ð€Hð (0×0 !�1—:“:Ó0€Kà‡[�[×Ñ˜^¨X¯^©^Ó-=À;ÐÓOØ€R‡[�[�hÔñ	*ó  ó Pð	*ð ‡[�[×ÑØØ
�.‰.˜"Ÿ+™+Ð	&¨×)9Ñ)9¸2¿=¹=Ð(IÐJØ˜OÐ,ð ó ñ
.óð
.ð" ‡[�[×ÑØØ
�)‰)�R—V‘VÐ	˜rŸy™y¨"¯&©&Ð1Ð2Ø�xÐ ð ó ñ
	*óð
	*ð ‡[�[×ÑØ�B—I‘I˜rŸy™yÐ)óñ/óñ/ùóq 1s   ÄIr3  c                   óB   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zy
)ÚSharedNanFunctionsTestsMixinc                 ó~   — t         j                  «       }| j                  D ]  } ||«       t        |t         «       Œ y r5   rn   rr   s      r/   ru   z*SharedNanFunctionsTestsMixin.test_mutationÑ  rv   r1   c                 óü   — t        j                  d«      }t        | j                  | j                  «      D ]D  \  }}dD ]:  } |||d¬«      } |||d¬«      }t        |j                  |j                  k(  «       Œ< ŒF y rx   r   r„   s          r/   rŠ   z*SharedNanFunctionsTestsMixin.test_keepdimsØ  r‹   r1   c                 ó  — t        j                  d«      }t        | j                  | j                  «      D ]G  \  }}t        j
                  d«      } ||d¬«      } ||d|¬«      }t        ||«       t        ||«       ŒI y r�   r‘   r“   s          r/   r•   z%SharedNanFunctionsTestsMixin.test_outà  r–   r1   c           	      ó0  — t        j                  d«      }d}t        | j                  | j                  «      D �]N  \  }}|D �]B  }t        j                  «       5  |t         j                  t         j                  hv r|dv rt        j                  dt        «        ||t        j                  |«      d¬«      j                  j                  } ||t        j                  |«      d¬«      j                  j                  }t        ||u «        ||t        j                  |«      d ¬«      j                  j                  } ||t        j                  |«      d ¬«      j                  j                  }t        ||u «       d d d «       �ŒE �ŒQ y # 1 sw Y   �ŒTxY w©Nry   r˜   ÚFDGr  r{   )rš   r}   ©r6   r€   r�   rq   r‚   rÝ   rÞ   ra   r_   rß   r   rš   rœ   r	   ©r8   r…   rž   r†   r‡   rŸ   rˆ   r‰   s           r/   Útest_dtype_from_dtypez2SharedNanFunctionsTestsMixin.test_dtype_from_dtypeé  s6  € Ü�f‰f�Q‹iˆØˆÜ˜$Ÿ-™-¨¯©Ó7ó 	(‰FˆB�Øó (�Ü×,Ñ,Ó.ñ 
(ØœbŸi™i¬¯©Ð3Ñ3¸¸U¹
ä ×-Ñ-¨h¼ÔGÙ˜S¬¯©°«¸!Ô<×BÑB×GÑG�CÙ˜S¬¯©°«¸!Ô<×BÑB×GÑG�CÜ˜C 3˜JÔ'á˜S¬¯©°«¸$Ô?×EÑE×JÑJ�CÙ˜S¬¯©°«¸$Ô?×EÑE×JÑJ�CÜ˜C 3˜JÔ'÷
(ñ 
(ò(ñ	(÷
(ñ 
(ús   ÁD#FÆFc                 ó”  — t        j                  d«      }d}t        | j                  | j                  «      D �]   \  }}|D ]õ  }t        j                  «       5  |t         j                  t         j                  hv r|dv rt        j                  dt        «        |||d¬«      j                  j                  } |||d¬«      j                  j                  }t        ||u «        |||d ¬«      j                  j                  } |||d ¬«      j                  j                  }t        ||u «       d d d «       Œ÷ �Œ y # 1 sw Y   �ŒxY wrQ  rS  rT  s           r/   Útest_dtype_from_charz1SharedNanFunctionsTestsMixin.test_dtype_from_charú  s  € Ü�f‰f�Q‹iˆØˆÜ˜$Ÿ-™-¨¯©Ó7ó 	(‰FˆB�Øò (�Ü×,Ñ,Ó.ñ 
(ØœbŸi™i¬¯©Ð3Ñ3¸¸U¹
ä ×-Ñ-¨h¼ÔGÙ˜S¨°Ô2×8Ñ8×=Ñ=�CÙ˜S¨°Ô2×8Ñ8×=Ñ=�CÜ˜C 3˜JÔ'á˜S¨°Ô5×;Ñ;×@Ñ@�CÙ˜S¨°Ô5×;Ñ;×@Ñ@�CÜ˜C 3˜JÔ'÷
(ð 
(ò(ñ	(÷
(ñ 
(ús   ÁCD=Ä=Ec           	      óÆ  — d}t        | j                  | j                  «      D ]¼  \  }}|D ]²  }t        j                  d|¬«      } ||d¬«      j
                  j                  } ||d¬«      j
                  j                  }t        ||u d|› d|› �«        ||d ¬«      j
                  j                  } ||d ¬«      j
                  j                  }t        ||u «       Œ´ Œ¾ y )Nr˜   ry   r™   r{   rŽ   zres z, tgt r›   r�   s           r/   r    z2SharedNanFunctionsTestsMixin.test_dtype_from_input  sÍ   € ØˆÜ˜$Ÿ-™-¨¯©Ó7ò 		$‰FˆB�Øò $�Ü—f‘f˜Q aÔ(�Ù˜ 1”o×+Ñ+×0Ñ0�Ù˜ 1”o×+Ñ+×0Ñ0�Ü˜˜s˜
 d¨3¨%¨v°c°UÐ$;Ô<á˜ 4Ô(×.Ñ.×3Ñ3�Ù˜ 4Ô(×.Ñ.×3Ñ3�Ü˜˜s˜
Õ#ñ$ñ		$r1   c                 óÄ   — t        | j                  | j                  «      D ]8  \  }}t        D �cg c]
  } ||«      ‘Œ }} |t        d¬«      }t        ||«       Œ: y c c}w r¢   r£   r¥   s         r/   r§   z/SharedNanFunctionsTestsMixin.test_result_values  r¨   r©   c                 óN   — | j                   D ]  }t         |d«      dk(  «       Œ y rÆ   rÇ   rÈ   s     r/   rÉ   z(SharedNanFunctionsTestsMixin.test_scalar  rÊ   r1   c                 ó^  —  G d„ dt         j                  «      }t        j                  d«      }|j                  |«      }| j                  D ]ß  } ||d¬«      j
                  } ||d¬«      }t        t        ||«      «       t        |j
                  |k(  «        ||d¬«      j
                  } ||d¬«      }t        t        ||«      «       t        |j
                  |k(  «        ||«      j
                  } ||«      }t        t        ||«      «       t        |j
                  |k(  «       Œá y )Nc                   ó   — e Zd Zy)ú=SharedNanFunctionsTestsMixin.test_subclass.<locals>.MyNDArrayNrÎ   rÏ   r1   r/   rÐ   r]  #  rÑ   r1   rÐ   ry   r   rŽ   r{   )r6   rØ   r€   rÙ   rq   rÛ   r	   rÚ   )r8   rÐ   r«   rã   rt   Úexpected_shaper‰   s          r/   rå   z*SharedNanFunctionsTestsMixin.test_subclass"  sò   € ô	œŸ
™
ô 	ô
 —‘�q“	ˆØ�z‰z˜)Ó$ˆØ—‘ò 	1ˆAÙ˜u¨1Ô-×3Ñ3ˆNÙ�D˜q”/ˆCÜ”J˜s IÓ.Ô/Ü�C—I‘I Ñ/Ô0Ù˜u¨1Ô-×3Ñ3ˆNÙ�D˜q”/ˆCÜ”J˜s IÓ.Ô/Ü�C—I‘I Ñ/Ô0Ù˜u›XŸ^™^ˆNÙ�D“'ˆCÜ”J˜s IÓ.Ô/Ü�C—I‘I Ñ/Õ0ñ	1r1   N)rD   rE   rF   ru   rŠ   r•   rU  rW  r    r§   rÉ   rå   rÏ   r1   r/   rL  rL  Ð  s/   „ ò&ò.ò*ò(ò"(ò"$ò*ò!ó1r1   rL  c            
       ó‚  — e Zd Zej                  ej
                  gZej                  ej                  gZ	e
j                  j                  dg d¢«      e
j                  j                  dej                  d   «      e
j                  j                  d ej                  ej                  «       ej                   dej                  «      gddg¬	«      d
„ «       «       «       Zd„ Ze
j                  j                  dej                  d   «      d„ «       Ze
j                  j                  dej                  d   «      d„ «       Zy)ÚTestNanFunctions_SumProdr}   rz   rš   rª   r«   r¬   r­   r®   r2   c                 ó0  — |�$|j                   dk(  rt        j                  d«       |j                  |«      }t	        | j
                  ddg«      D ]D  \  }} |||¬«      }t        j                  ||k(  «      sJ ‚|j                  |j                  k(  rŒDJ ‚ y )Nr   r±   r{   rŽ   ©	rƒ   re   rµ   r¶   r�   rq   r6   rº   rš   ©r8   r}   rš   r«   r,   Úidentityr�   s          r/   r¼   z%TestNanFunctions_SumProd.test_allnans>  s‰   € ð Ð §
¡
¨a¢Ü�K‰KÐDÔEà—‘˜UÓ#ˆÜ! $§-¡-°!°Q°Ó8ò 	,‰NˆD�(Ù�u 4Ô(ˆCÜ—6‘6˜# ™/Ô*Ð*Ð*Ø—9‘9 §¡Ó+Ð+Ð+ñ	,r1   c                 ó.  — t        t        j                  t        j                  gddg«      D ]f  \  }}t        j                  d«      }|gdz  } ||d¬«      }t        ||«       g } ||d¬«      }t        ||«       |} ||d ¬«      }t        ||«       Œh y )Nr   r{   r  ry   rŽ   )r�   r6   rO   rQ   r’   r   ©r8   rt   Ú	tgt_valuer…   rˆ   r‰   s         r/   r  z#TestNanFunctions_SumProd.test_emptyN  s�   € Ü¤§¡¬B¯J©JÐ 7¸!¸Q¸Ó@ò 
	#‰LˆAˆyÜ—(‘(˜6Ó"ˆCØ�+ ‘/ˆCÙ�C˜a”.ˆCÜ˜˜cÔ"ØˆCÙ�C˜a”.ˆCÜ˜˜cÔ"ØˆCÙ�C˜dÔ#ˆCÜ˜˜cÕ"ñ
	#r1   c                 ó  — t        j                  d«      j                  |«      }t         j                  |d d | j                  D ]:  }|t         j
                  u rdnd} ||d¬«      }|j                  |k(  sJ ‚||k(  rŒ:J ‚ y )Nrð   rñ   é   i   rÖ   ró   )r6   rõ   r¶   rÜ   rq   rO   rš   r$  s         r/   rù   z%TestNanFunctions_SumProd.test_initial[  sy   € ä�Y‰Y�q‹\× Ñ  Ó'ˆÜ—‘ˆˆ2ˆAˆà—‘ò 	$ˆAØ¤2§9¡9™n™°$ˆIÙ�B Ô"ˆCØ—9‘9 Ò%Ð%Ð%Ø˜)Ó#Ð#Ð#ñ		$r1   c                 óŠ  — t        j                  d«      j                  dd«      j                  |«      }t         j                  |dd d …f<   t        j
                  |t         j                  ¬«      }d|d d …df<   | j                  D ];  }|t         j                  u rdnd} |||d¬	«      }|j                  |k(  sJ ‚||k(  rŒ;J ‚ y )
Nrð   ry   r   r™   Fé   iÀ  rÖ   rÿ   )
r6   rõ   r  r¶   rÜ   r  r  rq   rO   rš   )r8   rš   rö   r   rt   r  r%  s          r/   r  z#TestNanFunctions_SumProd.test_wheref  s«   € ä�Y‰Y�q‹\×!Ñ! ! QÓ'×.Ñ.¨uÓ5ˆÜ—6‘6ˆˆ1Šaˆ4‰Ü—‘˜R¤r§w¡wÔ/ˆØˆŠa�ˆd‰à—‘ò 	$ˆAØ¤2§9¡9™n™°$ˆIÙ�B˜e¨QÔ/ˆCØ—9‘9 Ò%Ð%Ð%Ø˜)Ó#Ð#Ð#ñ		$r1   N)rD   rE   rF   r6   rO   rQ   rq   rP   rR   r‚   re   rf   rg   r  r«   rÜ   r	  r¼   r  rù   r  rÏ   r1   r/   r`  r`  9  s!  „ à—	‘	˜2Ÿ:™:Ð&€HØ—‘˜Ÿ™Ð €Hà‡[�[×Ñ˜V¢\Ó2Ø‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?Ø‡[�[×Ñ˜WØˆ�‰�—‘ÓØˆ�‰�˜Ÿ™Óð'ð �$ˆ<ð ó ñ,ó	ó @ó 3ð,ò#ð ‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?ñ$ó @ð$ð ‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?ñ
$ó @ñ
$r1   r`  c            
       óØ  — e Zd Zej                  ej
                  gZej                  ej                  gZ	e
j                  j                  dg d¢«      e
j                  j                  dej                  d   «      e
j                  j                  d ej                  ej                  «       ej                   dej                  «      gddg¬	«      d
„ «       «       «       Zd„ Zd„ Zd„ Zd„ Zy)ÚTestNanFunctions_CumSumProdr}   rz   rš   rª   r«   r¬   r­   r®   r2   c                 ó,  — |�$|j                   dk(  rt        j                  d«       |j                  |«      }t	        | j
                  ddg«      D ]B  \  }} ||«      }t        j                  ||k(  «      sJ ‚|j                  |j                  k(  rŒBJ ‚ y )Nr   r±   r{   rb  rc  s          r/   r¼   z(TestNanFunctions_CumSumProd.test_allnansy  s†   € ð Ð §
¡
¨a¢Ü�K‰KÐDÔEà—‘˜UÓ#ˆÜ! $§-¡-°!°Q°Ó8ò 	,‰NˆD�(Ù�u“+ˆCÜ—6‘6˜# ™/Ô*Ð*Ð*Ø—9‘9 §¡Ó+Ð+Ð+ñ	,r1   c                 óP  — t        | j                  ddg«      D ]‹  \  }}t        j                  d«      }|t        j                  d«      z  } ||d¬«      }t        ||«       |} ||d¬«      }t        ||«       t        j                  d«      } ||d ¬«      }t        ||«       Œ� y )Nr   r{   r  rŽ   )r�   rq   r6   r’   Úonesr   rf  s         r/   r  z&TestNanFunctions_CumSumProd.test_empty‰  s–   € Ü §¡°°1¨vÓ6ò 
	#‰LˆAˆyÜ—(‘(˜6Ó"ˆCØœbŸg™g f›oÑ-ˆCÙ�C˜a”.ˆCÜ˜˜cÔ"ØˆCÙ�C˜a”.ˆCÜ˜˜cÔ"Ü—(‘(˜1“+ˆCÙ�C˜dÔ#ˆCÜ˜˜cÕ"ñ
	#r1   c                 ó”  — t        | j                  | j                  «      D ]Y  \  }}t        j                  d«      }dD ]:  } |||d ¬«      } |||d ¬«      }t        |j                  |j                  k(  «       Œ< Œ[ | j                  D ]½  }t        j                  d«      }t        j                  j                  d«      }t        j                  | |j                  |j                  Ž dk  <    ||d ¬«      }t        |j                  d«       t        j                  d	«      D ]"  } |||¬«      }t        |j                  d«       Œ$ Œ¿ y )
Nry   rz   r�   ©ry   rñ   é   é   r   r@  rŽ   )iƒ  rý   )r�   rq   r‚   r6   r€   r	   rƒ   rp  ÚrandomÚRandomStaterÜ   ÚrandrÛ   r   rõ   )	r8   rt   Úgr…   r}   rˆ   r‰   r¦   Úrss	            r/   rŠ   z)TestNanFunctions_CumSumProd.test_keepdims–  s  € Ü˜Ÿ™ t§}¡}Ó5ò 	.‰DˆAˆqÜ—&‘&˜“)ˆCØ$ò .�Ù˜ $¨DÔ1�Ù˜ $¨DÔ1�Ü˜Ÿ™ C§H¡HÑ,Õ-ñ.ð	.ð —‘ò 		7ˆAÜ—‘˜Ó&ˆAä—‘×&Ñ& qÓ)ˆBÜ)+¯©ˆAˆgˆb�g‰g�q—w‘wÐ #Ñ%Ñ&Ù�A˜D”/ˆCÜ˜Ÿ™ GÔ,ÜŸ	™	 !›ò 7�Ù˜ ”o�Ü˜SŸY™Y¨Õ6ñ7ñ		7r1   c                 ó  — dD ]†  }t        j                  t        |¬«      }t        j                  t        |¬«      }t        ||«       t        j                  t        |¬«      }t        j                  t        |¬«      }t        ||«       Œˆ y )N)éþÿÿÿéÿÿÿÿr   r{   NrŽ   )	r6   rV   Ú
_ndat_onesrU   ro   r
   rT   Ú_ndat_zerosrS   )r8   r}   rˆ   r‰   s       r/   r§   z.TestNanFunctions_CumSumProd.test_result_values©  se   € Ø(ò 	*ˆDÜ—*‘*œZ¨dÔ3ˆCÜ—-‘-¤¨DÔ1ˆCÜ  SÔ)Ü—)‘)œK¨dÔ3ˆCÜ—,‘,œu¨4Ô0ˆCÜ  SÕ)ñ	*r1   c                 ó  — t        j                  d«      }t        | j                  | j                  «      D ]N  \  }}t        j                  d«      }dD ]/  } |||¬«      } ||||¬«      }t        ||«       t        ||«       Œ1 ŒP y )Nry   )r{  r|  r   r{   rŽ   r�   )r6   r€   r�   rq   r‚   r
   )r8   r…   r†   r‡   r”   r}   rˆ   r‰   s           r/   r•   z$TestNanFunctions_CumSumProd.test_out²  s{   € Ü�f‰f�Q‹iˆÜ˜$Ÿ-™-¨¯©Ó7ò 	.‰FˆB�Ü—V‘V˜A“YˆFØ&ò .�Ù˜ 4Ô(�Ù˜ 4¨VÔ4�Ü# C¨Ô0Ü# C¨Õ-ñ	.ñ	.r1   N)rD   rE   rF   r6   rS   rU   rq   rT   rV   r‚   re   rf   rg   r  r«   rÜ   r	  r¼   r  rŠ   r§   r•   rÏ   r1   r/   rm  rm  t  sÒ   „ à—‘˜bŸm™mÐ,€HØ—	‘	˜2Ÿ:™:Ð&€Hà‡[�[×Ñ˜V¢\Ó2Ø‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?Ø‡[�[×Ñ˜WØˆ�‰�—‘ÓØˆ�‰�˜Ÿ™Óð'ð �$ˆ<ð ó ñ,ó	ó @ó 3ð,ò#ò7ò&*ó.r1   rm  c            
       ón  — e Zd Zej                  ej
                  ej                  gZej                  ej                  ej                  gZd„ Zd„ Zd„ Zd„ Zej"                  j%                  dg d¢«      ej"                  j%                  dej&                  d   «      ej"                  j%                  d	 ej(                  ej*                  «       ej,                  d
ej*                  «      gddg¬«      d„ «       «       «       Zd„ Zej"                  j%                  dej&                  d   «      d„ «       Zd„ Zy)ÚTestNanFunctions_MeanVarStdc           	      ó¾   — | j                   D ]N  }t        j                  t        j                  t        j                  fD ]  }t        t        |t        d|¬«       Œ ŒP y )Nr{   )r}   rš   )rq   r6   r  Úint_Úobject_r   r=  ro   )r8   rt   rš   s      r/   Útest_dtype_errorz,TestNanFunctions_MeanVarStd.test_dtype_errorÂ  sK   € Ø—‘ò 	HˆAÜŸ'™'¤2§7¡7¬B¯J©JÐ7ò H�Üœi¨¬E¸ÀÖGñHñ	Hr1   c           	      ó  — | j                   D ]v  }t        j                  t        j                  t        j                  fD ]B  }t        j
                  t        j                  d   |¬«      }t        t        |t        d|¬«       ŒD Œx y )Nr   r™   r{   r�   )
rq   r6   r  rƒ  r„  r(   ro   rÛ   r   r=  )r8   rt   rš   r�   s       r/   Útest_out_dtype_errorz0TestNanFunctions_MeanVarStd.test_out_dtype_errorÇ  sc   € Ø—‘ò 	DˆAÜŸ'™'¤2§7¡7¬B¯J©JÐ7ò D�Ü—h‘hœuŸ{™{¨1™~°UÔ;�Üœi¨¬E¸¸sÖCñDñ	Dr1   c           	      ó0  — t         j                  t         j                  g}t         j                  t         j                  g}t        ||«      D ]B  \  }}dD ]8  }t        D �cg c]  } |||¬«      ‘Œ }} |t        d|¬«      }t        ||«       Œ: ŒD y c c}w )N©r   r{   rA  r{   ©r}   rB  )	r6   r_   ra   r`   rb   r�   r¤   ro   r
   )	r8   rq   r‚   r†   r‡   rB  r¦   rˆ   r‰   s	            r/   Ú	test_ddofz%TestNanFunctions_MeanVarStd.test_ddofÍ  s„   € Ü—I‘IœrŸy™yÐ)ˆÜ—F‘FœBŸF™FÐ#ˆÜ˜( HÓ-ò 	.‰FˆB�Øò .�Ü16Ö7¨A‘r˜! $Ö'Ð7�Ð7Ùœ Q¨TÔ2�Ü# C¨Õ-ñ.ñ	.ùâ7s   Á Bc                 óÀ  — t         j                  t         j                  g}t         j                  t         j                  g}t
        D �cg c]  }t        |«      ‘Œ }}t        ||«      D ]Ý  \  }}t        d«      D ]Ê  }t        j                  d¬«      5 }t        j                  d«       t        j                  dt        «       |D �cg c]  }||k\  ‘Œ	 }	} |t        d|¬«      }
t        t        j                  |
«      |	«       d d d «       t!        	«      rt#        t        «      dk(  «       Œ´t#        t        «      dk(  «       ŒÌ Œß y c c}w c c}w # 1 sw Y   ŒRxY w)	Nrñ   TrÓ   rÕ   r  r{   rŠ  r   )r6   r_   ra   r`   rb   r¤   rà   r�   ÚrangerÝ   rÞ   rß   r   ro   r   r¹   rÂ   r	   )r8   rq   r‚   r¦   Údsizer†   r‡   rB  rä   rˆ   r‰   s              r/   Útest_ddof_too_bigz-TestNanFunctions_MeanVarStd.test_ddof_too_bigÖ  s  € Ü—I‘IœrŸy™yÐ)ˆÜ—F‘FœBŸF™FÐ#ˆÜ!&Ö'˜A”�Q•Ð'ˆÐ'Ü˜( HÓ-ò 	)‰FˆB�Ü˜a›ò 
)�Ü×,Ñ,°DÔ9ð 5¸QÜ×)Ñ)¨(Ô3Ü×)Ñ)¨(´NÔCØ.3Ö4¨˜4 1›9Ð4�CÐ4ÙœU¨°Ô6�CÜ ¤§¡¨#£°Ô4÷5ô �s”8ÜœC ›F a™KÕ(äœC ›F a™KÕ(ñ
)ñ	)ùò (ùò 5÷5ð 5ús$   Á	E
Â4EÃE
Ã0EÅEÅEr}   rz   rš   rª   r«   r¬   r­   r®   r2   c                 ó  — |�$|j                   dk(  rt        j                  d«       |j                  |«      }d}| j                  D ]±  }t        j
                  t        |¬«      5   |||¬«      }d d d «       t        j                  «      j                  «       sJ ‚|t        j                  u r|j                  |j                  k(  rŒ‚J ‚|j                  t        j                  |«      j                  k(  rŒ±J ‚ y # 1 sw Y   Œ�xY w)Nr   r±   z:(Degrees of freedom <= 0 for slice.)|(Mean of empty slice)r³   rŽ   )rƒ   re   rµ   r¶   rq   r·   r¸   r6   r¹   rº   rW   rš   Úabsr»   s          r/   r¼   z(TestNanFunctions_MeanVarStd.test_allnansç  sÔ   € ð Ð §
¡
¨a¢Ü�K‰KÐDÔEà—‘˜UÓ#ˆØLˆØ—M‘Mò 
	8ˆDÜ—‘œn°EÔ:ñ -Ù˜5 tÔ,�÷-ä—8‘8˜C“=×$Ñ$Ô&Ð&Ð&ð ”r—z‘zÑ!Ø—y‘y E§K¡KÓ/Ð/Ð/à—y‘y¤B§F¡F¨5£M×$7Ñ$7Ó7Ð7Ð7ñ
	8÷-ð -ús   Á$C;Ã;D	c                 óÐ  — t        j                  d«      }| j                  D �](  }dD ]§  }t        j                  d¬«      5 }t        j
                  d«       t        t        j                   |||¬«      «      j                  «       «       t        t        |«      dk(  «       t        t        |d   j                  t        «      «       d d d «       Œ© d	D ]t  }t        j                  d¬«      5 }t        j
                  d«       t         |||¬«      t        j                  g «      «       t        t        |«      dk(  «       d d d «       Œv �Œ+ y # 1 sw Y   �Œ1xY w# 1 sw Y   Œ‘xY w©
Nr  r  TrÓ   rÕ   rŽ   r{   r   r  )r6   r’   rq   rÝ   rÞ   rß   r	   r¹   rº   rà   rá   râ   r¸   r   )r8   r…   rt   r}   rä   s        r/   r  z&TestNanFunctions_MeanVarStd.test_emptyÿ  s+  € Ü�h‰h�vÓˆØ—‘ó 	)ˆAØ!ò G�Ü×,Ñ,°DÔ9ð G¸QÜ×)Ñ)¨(Ô3ÜœBŸH™H¡Q s°Ô%6Ó7×;Ñ;Ó=Ô>ÜœC ›F a™KÔ(ÜœJ q¨¡t§}¡}´nÓEÔF÷	Gð GðGð ò )�Ü×,Ñ,°DÔ9ð )¸QÜ×)Ñ)¨(Ô3Ü ¡ 3¨TÔ!2´B·H±H¸R³LÔAÜœC ›F a™KÔ(÷)ð )ò)ñ	)÷Gñ Gú÷)ð )ús   ÁBEÃ-AEÅEÅE%c                 ó,  — t        j                  d«      j                  dd«      j                  |«      }t         j                  |dd d …f<   t        j
                  |t         j                  ¬«      }d|d d …df<   t        | j                  | j                  «      D ]x  \  }} |||   dd  «      }|t         j                  u r|n|j                  j                  } |||¬«      }|j                  |k(  sJ ‚t         j                  j                  ||«       Œz y )Nrð   ry   r   r™   FrÖ   )r   )r6   rõ   r  r¶   rÜ   r  r  r�   rq   r‚   rW   Úrealrš   r7   Úassert_allclose)	r8   rš   rö   r   rt   Úf_stdr  Údtype_referencer%  s	            r/   r  z&TestNanFunctions_MeanVarStd.test_where  sÚ   € ä�Y‰Y�q‹\×!Ñ! ! QÓ'×.Ñ.¨uÓ5ˆÜ—6‘6ˆˆ1Šaˆ4‰Ü—‘˜R¤r§w¡wÔ/ˆØˆŠa�ˆd‰ä˜DŸM™M¨4¯=©=Ó9ò 	7‰HˆAˆuÙ˜b ™i¨¨˜mÓ,ˆIØ'(¬B¯J©J¡™e¸B¿G¹G¿M¹MˆOá�B˜eÔ$ˆCØ—9‘9 Ò/Ð/Ð/Ü�J‰J×&Ñ& s¨IÕ6ñ	7r1   c                 óJ  — t         j                  j                  d«      }|j                  ddd«      dz   }t         j                  |d d …dd d …f<   t        j
                  d«      }t        j
                  d«      }t        j                  ||dd¬	«      }||u sJ ‚t        j                  ||dd|¬
«      }||u sJ ‚|j                  |j                  k(  sJ ‚|j                  dk(  sJ ‚t        j                  |dd¬«      }|j                  |j                  k(  sJ ‚t        ||«       y )NiÒ  é
   é   rñ   r@  )rš  r{   rñ   r{   T)r�   r}   r~   )r�   r}   r~   rX   r|   )
r6   ru  rv  ÚrandnrÜ   r’   rW   ra   rÛ   r
   )r8   ÚrngÚAÚmean_outÚstd_outrX   rb   Ústd_olds           r/   Útest_nanstd_with_mean_keywordz9TestNanFunctions_MeanVarStd.test_nanstd_with_mean_keyword  s  € ä�i‰i×#Ñ# DÓ)ˆØ�I‰I�b˜"˜aÓ  3Ñ&ˆÜ—V‘VˆŠ!ˆQ’ˆ'‰
ä—8‘8˜JÓ'ˆÜ—(‘(˜:Ó&ˆä�z‰z˜!Ø#ØØ $ô&ˆð ˜4ÑÐÐä�i‰i˜Ø ØØ"Øô	 ˆð ˜#‰~Ðˆ~ð �y‰y˜DŸJ™JÒ&Ð&Ð&Ø�y‰y˜JÒ&Ð&Ð&ô —)‘)˜A A°Ô5ˆà�}‰} §
¡
Ò*Ð*Ð*Ü˜C Õ)r1   N)rD   rE   rF   r6   rW   r_   ra   rq   rX   r`   rb   r‚   r…  r‡  r‹  r�  re   rf   rg   r  r«   rÜ   r	  r¼   r  r  r¢  rÏ   r1   r/   r�  r�  ½  s  „ à—
‘
˜BŸI™I r§y¡yÐ1€HØ—‘˜Ÿ™ §¡Ð(€HòHò
Dò.ò)ð" ‡[�[×Ñ˜V¢\Ó2Ø‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?Ø‡[�[×Ñ˜WØˆ�‰�—‘ÓØˆ�‰�˜Ÿ™Óð'ð �$ˆ<ð ó ñ8ó	ó @ó 3ð8ò$)ð ‡[�[×Ñ˜W b§l¡l°:Ñ&>Ó?ñ7ó @ð7ó"*r1   r�  )ÚYÚMÚWÚDÚhÚmÚsÚmsÚusÚnsÚpsÚfsÚaszm8[ú]c                   óN  — e Zd Zd„ Zd„ Zej                  j                  dg d¢¬«      ej                  j                  d«      d„ «       «       Z	d„ Z
d	„ Zd
„ Zej                  j                  dg d¢«      ej                  j                  de«      d„ «       «       Zd„ Zd„ Zd„ Zd„ Zy)ÚTestNanFunctions_Medianc                 óv   — t         j                  «       }t        j                  |«       t	        |t         «       y r5   )ro   rp   r6   rY   r   ©r8   rs   s     r/   ru   z%TestNanFunctions_Median.test_mutationM  s#   € ä�z‰z‹|ˆÜ
�‰�TÔÜ�Tœ5Õ!r1   c                 ó¾  — t        j                  d«      }dD ]V  }t        j                  ||d d¬«      }t        j                  ||d d¬«      }t	        |j
                  |j
                  k(  «       ŒX t        j                  d«      }t         j                  j                  d«      t        j                  |j                  «      d d …d f   z  }|j                  t         j                  «      }t         j                  |t        |«      <   t        j                  «       5  t        j                   dt"        «       t        j                  |d d¬	«      }t%        |j                  d
«       t        j                  |dd¬	«      }t%        |j                  d«       t        j                  |dd¬	«      }t%        |j                  d«       t        j                  |dd¬	«      }t%        |j                  d«       t        j                  |dd¬	«      }t%        |j                  d
«       t        j                  |dd¬	«      }t%        |j                  d«       d d d «       y # 1 sw Y   y xY w)Nry   rz   F©r}   r�   Úoverwrite_inputrr  ©rý   éÈ   r  Tr|   ©r{   r{   r{   r{   r‰  ©r{   r{   rs  rt  r  ©r{   rñ   rs  r{   r  ©ry   r{   rs  rt  ©r   r{   rÖ   ry   ©r   r{   ry   ©r{   r{   rs  r{   )r6   r€   rZ   rY   r	   rƒ   rp  ru  r«   rÛ   r¶   r(  rÜ   ÚtuplerÝ   rÞ   rß   r¸   r   ©r8   r…   r}   rˆ   r‰   r¦   rä   s          r/   rŠ   z%TestNanFunctions_Median.test_keepdimsS  s®  € Ü�f‰f�Q‹iˆØ ò 	*ˆDÜ—)‘)˜C d°ÀeÔLˆCÜ—,‘,˜s¨°4ÈÔOˆCÜ�C—H‘H §¡Ñ(Õ)ð	*ô
 �G‰G�MÓ"ˆä�I‰I×Ñ˜XÓ&¬¯©°!·'±'Ó):º1¸d¸7Ñ)CÑCˆØ�H‰H”R—W‘WÓˆÜ—f‘fˆŒ%�‹(‰Ü×$Ñ$Ó&ñ 	2Ü×!Ñ! (¬NÔ;Ü—,‘,˜q t°dÔ;ˆCÜ˜Ÿ™ LÔ1Ü—,‘,˜q v¸Ô=ˆCÜ˜Ÿ™ MÔ2Ü—,‘,˜q v¸Ô=ˆCÜ˜Ÿ™ LÔ1Ü—,‘,˜q t°dÔ;ˆCÜ˜Ÿ™ MÔ2Ü—,‘,˜q |¸dÔCˆCÜ˜Ÿ™ LÔ1Ü—,‘,˜q y¸4Ô@ˆCÜ˜Ÿ™ LÔ1÷	2÷ 	2ñ 	2ús   ÄD/IÉIr}   ©Nr{   r  r‰  )éýÿÿÿr|  ©ÚargnamesÚ	argvaluesú#ignore:All-NaN slice:RuntimeWarningc                 óh  ‡‡— t        j                  d«      Št         j                  j                  d«      t        j                  ‰j                  «      d d …d f   z  }|j                  t         j                  «      }t         j                  ‰t        |«      <   |€d‰j                  z  }n>t        |‰j                  «      Št        ˆˆfd„t        ‰j                  «      D «       «      }t        j                  |«      }t        j                  ‰|d|¬«      }||u sJ ‚t        |j                  |«       y )Nrr  r¸  r  c              3   óH   •K  — | ]  }|‰v rd n‰j                   |   –— Œ y­w©r{   N©rÛ   ©ri   rJ  Ú	axis_normr¦   s     €€r/   ú	<genexpr>z<TestNanFunctions_Median.test_keepdims_out.<locals>.<genexpr>ƒ  ó+   øè ø€ ò LØ89�Q˜)‘^‘¨¯©°©Ó3ñLùó   ƒ"T©r}   r~   r�   )r6   rp  ru  r«   rÛ   r¶   r(  rÜ   rÁ  rƒ   r   r�  r(   rY   r   )r8   r}   rä   Ú	shape_outr�   ÚresultrÎ  r¦   s         @@r/   Útest_keepdims_outz)TestNanFunctions_Median.test_keepdims_outn  så   ù€ ô �G‰G�MÓ"ˆä�I‰I×Ñ˜XÓ&¬¯©°!·'±'Ó):º1¸d¸7Ñ)CÑCˆØ�H‰H”R—W‘WÓˆÜ—f‘fˆŒ%�‹(‰Øˆ<Ø˜qŸv™v™‰Iä,¨T°1·6±6Ó:ˆIÜô LÜ=BÀ1Ç6Á6»]ôLó LˆIä�h‰h�yÓ!ˆÜ—‘˜a d°T¸sÔCˆØ˜‰}Ðˆ}Ü�V—\‘\ 9Õ-r1   c                 óf  — t         j                  j                  dd«      }t        j                  |ddgt         j                  d¬«      }t        j
                  d«      }t        j                  |d¬«      }t        j                  |d|¬«      }t        ||«       t        ||«       t        j
                  d«      }t        j                  |d ¬«      }t        j                  |d |¬«      }t        ||«       t        ||«       t        j                  |d|¬«      }t        ||«       t        ||«       y )	Nry   r   rÖ   r{   rŽ   r�   rÏ   r‰  )	r6   ru  rw  ÚinsertrÜ   r’   rZ   rY   r
   )r8   r…   Únan_matr”   rˆ   r‰   s         r/   r•   z TestNanFunctions_Median.test_outŠ  sÞ   € Ü�i‰i�n‰n˜Q Ó"ˆÜ—)‘)˜C ! Q ¬¯©°aÔ8ˆÜ—‘˜!“ˆÜ�i‰i˜ !Ô$ˆÜ�l‰l˜7¨°Ô7ˆÜ˜C Ô(Ü˜C Ô%ä—‘˜"“ˆÜ�i‰i˜ $Ô'ˆÜ�l‰l˜7¨°6Ô:ˆÜ˜C Ô(Ü˜C Ô%Ü�l‰l˜7¨°VÔ<ˆÜ˜C Ô(Ü˜C Õ%r1   c                 ó  — dD �]   }t         j                  j                  d|«      }t         j                  j                  d|j                  |j                  dz  ¬«      }t         j
                  |j                  «       |<   d|d d …df<   g }|D ]R  }t        j                  t        j                  |«       |«      }|j                  t        j                  |d¬«      «       ŒT t        t        j                  |d	¬
«      |«       �Œ y )N)rñ   r›  é3   r¹  iè  rý   r   rñ   ©Úsizer   T)r·  r|  rŽ   )r6   ru  rœ  ÚrandintrÜ  rÜ   ÚravelÚcompressr¹   r)   rZ   r   rY   )r8   r©  r¦   rä   rˆ   ÚxÚnonans          r/   Útest_small_largez(TestNanFunctions_Median.test_small_largeœ  sÊ   € à'ó 	>ˆAÜ—	‘	—‘  1Ó%ˆAä—	‘	×!Ñ! ! Q§V¡V°!·&±&¸A±+Ð!Ó>ˆAÜŸ6™6ˆA�G‰G‹I�a‰LØˆAŠa�ˆd‰GàˆCØò C�ÜŸ™¤R§X¡X¨a£[ L°!Ó4�Ø—
‘
œ2Ÿ9™9 U¸DÔAÕBðCô œrŸ|™|¨A°BÔ7¸Ö=ñ	>r1   c                 ó¨   — t         D �cg c]  }t        j                  |«      ‘Œ }}t        j                  t        d¬«      }t        ||«       y c c}w r¢   )r¤   r6   rZ   rY   ro   r
   )r8   r¦   rˆ   r‰   s       r/   r§   z*TestNanFunctions_Median.test_result_values¬  s<   € Ü%*Ö+ Œr�y‰y˜�|Ð+ˆÐ+Ü�l‰lœ5 qÔ)ˆÜ˜C Õ%ùò ,s   ‰Arz   rš   c                 óÞ  — t        j                  dt         j                  |¬«      }t        j                  t
        t        f«      5 }t        j                  ||¬«      }|j                  |j                  k(  sJ ‚t        j                  |«      j                  «       sJ ‚|D �cg c]%  }dt        |j                  «      v r|j                  ‘Œ' }}|€t        t        |«      dk(  «       nt        t        |«      dk(  «       t        j                  dt         j                  |¬«      d   }t        j                  |«      }	|	j                  |j                  k(  sJ ‚t        j                  |	«      sJ ‚|D �cg c]%  }dt        |j                  «      v r|j                  ‘Œ' }}|€t        t        |«      d	k(  «       nt        t        |«      d
k(  «       d d d «       y c c}w c c}w # 1 sw Y   y xY w)Nr¬   r™   rŽ   r²   r{   ry   ©r{   r{   )r   r   rÖ   rý   )r6   r	  rÜ   re   r·   r¸   ÚDeprecationWarningrY   rš   r¹   rº   ÚstrÚmessager	   rà   )
r8   rš   r}   r…   ÚrÚoutputÚitemÚ_filtered_recordÚscalarÚoutput_scalars
             r/   r¼   z$TestNanFunctions_Median.test_allnans±  s¬  € ô �g‰g�fœbŸf™f¨EÔ2ˆÜ�\‰\œ>Ô+=Ð>Ó?ð 	4À1Ü—\‘\ #¨DÔ1ˆFØ—<‘< 3§9¡9Ò,Ð,Ð,Ü—8‘8˜FÓ#×'Ñ'Ô)Ð)Ð)ð ö àØ.´#°d·l±lÓ2CÑCð —“ð Ðð  ð
 ˆ|ÜœÐ,Ó-°Ñ2Õ3äœÐ,Ó-°Ñ2Ô3ô —W‘W˜V¤R§V¡V°5Ô9¸$Ñ?ˆFÜŸL™L¨Ó0ˆMØ ×&Ñ&¨&¯,©,Ò6Ð6Ð6Ü—8‘8˜MÔ*Ð*Ð*ð ö àØ.´#°d·l±lÓ2CÑCð —“ð Ðð  ð
 ˆ|ÜœÐ,Ó-°Ñ2Õ3äœÐ,Ó-°Ñ2Ô3÷;	4ð 	4ùò
 ùò  ÷+	4ð 	4ús,   ÁAG#Â"*GÃB'G#Å3*GÆ3G#Ç
G#Ç#G,c           
      óÞ  — t        j                  d«      }dD ]´  }t        j                  d¬«      5 }t        j                  d«       t        t        j                  t        j                  ||¬«      «      j                  «       «       t        t        |«      dk(  «       t        t        |d   j                  t        «      «       d d d «       Œ¶ d	D ]�  }t        j                  d¬«      5 }t        j                  d«       t        t        j                  ||¬«      t        j                  g «      «       t        t        |«      dk(  «       d d d «       Œƒ y # 1 sw Y   �ŒHxY w# 1 sw Y   Œ›xY wr“  )r6   r’   rÝ   rÞ   rß   r	   r¹   rY   rº   rà   rá   râ   r¸   r   ©r8   r…   r}   rä   s       r/   r  z"TestNanFunctions_Median.test_emptyÔ  s   € Ü�h‰h�vÓˆØò 	CˆDÜ×(Ñ(°Ô5ð C¸Ü×%Ñ% hÔ/ÜœŸ™¤§¡¨c¸Ô!=Ó>×BÑBÓDÔEÜœ˜A› !™Ô$Üœ
 1 Q¡4§=¡=´.ÓAÔB÷	Cð Cð	Cð ò 	%ˆDÜ×(Ñ(°Ô5ð %¸Ü×%Ñ% hÔ/ÜœRŸ\™\¨#°DÔ9¼2¿8¹8ÀB»<ÔHÜœ˜A› !™Ô$÷%ð %ñ	%÷Cñ Cú÷%ð %ús   ±BEÃ*A!E#ÅE 	Å#E,	c                 óF   — t        t        j                  d«      dk(  «       y rÆ   )r	   r6   rY   rB   s    r/   rÉ   z#TestNanFunctions_Median.test_scalarâ  s   € Ü”—‘˜RÓ  BÑ&Õ'r1   c                 óx  — t        j                  d«      }t        t        t         j                  |d¬«       t        t        t         j                  |d¬«       t        t        t         j                  |d¬«       t        t        t         j                  |d¬«       t        t
        t         j                  |d¬«       y )Nrr  éûÿÿÿrŽ   ©r   ró  rý   ©r   rý   rå  )r6   rp  r   r   rY   r  ©r8   r¦   s     r/   Útest_extended_axis_invalidz2TestNanFunctions_Median.test_extended_axis_invalidå  sj   € Ü�G‰G�MÓ"ˆÜ”i¤§¡¨q°rÕ:Ü”i¤§¡¨q°wÕ?Ü”i¤§¡¨q°qÕ9Ü”i¤§¡¨q°vÕ>Ü”j¤"§,¡,°¸Ö?r1   c           
      óÎ	  — t        j                  «       5  t        j                  dt        «       t        j
                  t        j
                   fD �]|  }t	        j                  |t        j                  gt        j                  t        j                  gg«      }t        t	        j                  |d¬«      |t        j                  g«       t        t	        j                  |d¬«      |t        j                  g«       t        t	        j                  |«      |«       t	        j                  t        j                  t        j                  |gt        j                  t        j                  |gg«      }t        t	        j                  |«      |«       t        t	        j                  |d¬«      t        j                  t        j                  |g«       t        t	        j                  |d¬«      |«       t	        j                  ||g||gg«      }t        t	        j                  |d¬«      |«       t	        j                  |d| dgdt        j                  t        j                  dgd	t        j                  t        j                  |ggt        j                  ¬
«      }|dkD  rFt        t	        j                  |d¬«      dd| dg«       t        t	        j                  |«      d«       nEt        t	        j                  |d¬«      dd| dg«       t        t	        j                  |«      d«       t        t	        j                  |d¬«      dd|g«       t        d«      D �]r  }t        dd«      D �]_  }t	        j                  t        j                  g|z  |g|z  z   gdz  «      }t        t	        j                  |«      |«       t        t	        j                  |d¬«      |«       t        t	        j                  |d¬«      t        j                  g|z  |g|z  z   «       t	        j                  t        j                  g|z  | g|z  z   gdz  «      }t        t	        j                  |«      | «       t        t	        j                  |d¬«      | «       t        t	        j                  |d¬«      t        j                  g|z  | g|z  z   «       �Œb �Œu �Œ 	 d d d «       y # 1 sw Y   y xY w)Nr  r   rŽ   r{   rs  i÷ÿÿÿiöÿÿÿrñ   rý   r™   rè   g      @ç      @g      @g      $Àg      "Àg      Àr|  g      ð¿rš  rÖ   )rÝ   rÞ   rß   r¸   r6   Úinfr«   rÜ   r   rY   Úfloat32r�  )r8   rú  ÚarJ  Újs        r/   Útest_float_specialz*TestNanFunctions_Median.test_float_specialí  s�  € Ü×$Ñ$Ó&ñ +	BÜ×!Ñ! (¬NÔ;ÜŸ™¤§¡ Ð(ó )B�Ü—H‘H˜s¤R§V¡V˜n¬r¯v©v´r·v±vÐ.>Ð?Ó@�ÜœRŸ\™\¨!°!Ô4°s¼R¿V¹V°nÔEÜœRŸ\™\¨!°!Ô4°s¼R¿V¹V°nÔEÜœRŸ\™\¨!›_¨cÔ2ô —H‘HœrŸv™v¤r§v¡v¨sÐ3Ü Ÿf™f¤b§f¡f¨cÐ2ð4ó 5�äœRŸ\™\¨!›_¨cÔ2ÜœRŸ\™\¨!°!Ô4´r·v±v¼r¿v¹vÀsÐ6KÔLÜœRŸ\™\¨!°!Ô4°cÔ:ô —H‘H˜s C˜j¨3°¨*Ð5Ó6�ÜœRŸ\™\¨!°!Ô4°cÔ:ä—H‘H˜s A¨ t¨RÐ0Ø"¤B§F¡F¬B¯F©F°AÐ6Ø ¤"§&¡&¬"¯&©&°#Ð6ð8ô %'§J¡Jô0�ð ˜’7Ü ¤§¡¨a°aÔ!8¸2¸rÀCÀ4ÈÐ:LÔMÜ ¤§¡¨a£°#Õ6ä ¤§¡¨a°aÔ!8¸4ÀÀcÀTÈ3Ð:OÔPÜ ¤§¡¨a£°$Ô7ÜœRŸ\™\¨!°"Ô5¸¸TÀ3Ð7GÔHä˜r›ó B�AÜ" 1 b›\ó B˜ÜŸH™H¬¯© x°!¡|¸¸À¹	Ñ&BÐ%CÀaÑ%GÓH˜Ü$¤R§\¡\°!£_°cÔ:Ü$¤R§\¡\°!¸!Ô%<¸cÔBÜ$¤R§\¡\°!¸!Ô%<Ü')§v¡v h°¡l°s°e¸a±iÑ%?ôAô ŸH™H¬¯© x°!¡|¸#¸¸À¹
Ñ&CÐ%DÀqÑ%HÓI˜Ü$¤R§\¡\°!£_°s°dÔ;Ü$¤R§\¡\°!¸!Ô%<¸s¸dÔCÜ$¤R§\¡\°!¸!Ô%<Ü')§v¡v h°¡l¸°t°f¸q±jÑ%@öBòBòBñ;)B÷+	B÷ +	Bñ +	Bús   •R<SÓS$N)rD   rE   rF   ru   rŠ   re   rf   rg   r  rÕ  r•   râ  r§   Ú_TYPE_CODESr¼   r  rÉ   r÷  rþ  rÏ   r1   r/   r²  r²  K  s»   „ ò"ò2ð6 ‡[�[×ÑØò
ð ó 	ð ‡[�[×ÑÐ EÓFñ.ó Gó	ð.ò"&ò$>ò &ð
 ‡[�[×Ñ˜V¢\Ó2Ø‡[�[×Ñ˜W kÓ2ñ4ó 3ó 3ð4òB%ò(ò@ó,Br1   r²  c            
       óê  — e Zd Zd„ Zd„ Zej                  j                  ddddgg«      ej                  j                  dg d¢¬«      ej                  j                  d	«      d
„ «       «       «       Z	ej                  j                  dddg«      d„ «       Z
d„ Zej                  j                  dddg«      ej                  j                  dddg«      d„ «       «       Zej                  j                  dg d¢«      ej                  j                  dej                  d   «      ej                  j                  d ej                  ej                   «       ej"                  dej                   «      gddg¬«      d„ «       «       «       Zd„ Zd„ Zd„ Zd„ Zej                  j                  dg d ¢«      d!„ «       Zej                  j                  dg d"¢«      ej                  j0                  d#„ «       «       Zy$)%ÚTestNanFunctions_Percentilec                 óx   — t         j                  «       }t        j                  |d«       t	        |t         «       y )Né   )ro   rp   r6   r[   r   r´  s     r/   ru   z)TestNanFunctions_Percentile.test_mutation  s'   € ä�z‰z‹|ˆÜ
×Ñ˜˜rÔ"Ü�Tœ5Õ!r1   c                 óÎ  — t        j                  d«      }dD ]X  }t        j                  |d|d d¬«      }t        j                  |d|d d¬«      }t	        |j
                  |j
                  k(  «       ŒZ t        j                  d«      }t         j                  j                  d«      t        j                  |j                  «      d d …d f   z  }|j                  t         j                  «      }t         j                  |t        |«      <   t        j                  «       5  t        j                   dt"        «       t        j                  |d	d d
¬«      }t%        |j                  d«       t        j                  |d	dd
¬«      }t%        |j                  d«       t        j                  |d	dd
¬«      }t%        |j                  d«       t        j                  |d	dd
¬«      }t%        |j                  d«       t        j                  |d	dd
¬«      }t%        |j                  d«       t        j                  |d	dd
¬«      }t%        |j                  d«       d d d «       y # 1 sw Y   y xY w)Nry   rz   éF   Fr¶  rr  r¸  r  éZ   Tr|   rº  r‰  r»  r  r¼  r  r½  r¾  r¿  rÀ  )r6   r€   r\   r[   r	   rƒ   rp  ru  r«   rÛ   r¶   r(  rÜ   rÁ  rÝ   rÞ   rß   r¸   r   rÂ  s          r/   rŠ   z)TestNanFunctions_Percentile.test_keepdims$  sÒ  € Ü�f‰f�Q‹iˆØ ò 	*ˆDÜ—-‘-  R¨d¸Ø05ô7ˆCä×"Ñ" 3¨°¸4Ø38ô:ˆCä�C—H‘H §¡Ñ(Õ)ð	*ô �G‰G�MÓ"ˆä�I‰I×Ñ˜XÓ&¬¯©°!·'±'Ó):º1¸d¸7Ñ)CÑCˆØ�H‰H”R—W‘WÓˆÜ—f‘fˆŒ%�‹(‰Ü×$Ñ$Ó&ñ 	2Ü×!Ñ! (¬NÔ;Ü×"Ñ" 1 b¨t¸dÔCˆCÜ˜Ÿ™ LÔ1Ü×"Ñ" 1 b¨vÀÔEˆCÜ˜Ÿ™ MÔ2Ü×"Ñ" 1 b¨vÀÔEˆCÜ˜Ÿ™ LÔ1Ü×"Ñ" 1 b¨t¸dÔCˆCÜ˜Ÿ™ MÔ2Ü×"Ñ" 1 b¨|ÀdÔKˆCÜ˜Ÿ™ LÔ1Ü×"Ñ" 1 b¨yÀ4ÔHˆCÜ˜Ÿ™ LÔ1÷	2÷ 	2ñ 	2ús   ÄD5IÉI$r;  rs  r{   r}   rÃ  rÅ  rÈ  c                 óš  ‡‡— t        j                  d«      Št         j                  j                  d«      t        j                  ‰j                  «      d d …d f   z  }|j                  t         j                  «      }t         j                  ‰t        |«      <   |€d‰j                  z  }n>t        |‰j                  «      Št        ˆˆfd„t        ‰j                  «      D «       «      }t        j                  |«      |z   }t        j                  |«      }t        j                  ‰||d|¬«      }||u sJ ‚t        |j                  |«       y )Nrr  r¸  r  c              3   óH   •K  — | ]  }|‰v rd n‰j                   |   –— Œ y­wrË  rÌ  rÍ  s     €€r/   rÏ  z@TestNanFunctions_Percentile.test_keepdims_out.<locals>.<genexpr>W  rÐ  rÑ  TrÒ  )r6   rp  ru  r«   rÛ   r¶   r(  rÜ   rÁ  rƒ   r   r�  r(   r[   r   )	r8   r;  r}   rä   rÓ  r�   rÔ  rÎ  r¦   s	          @@r/   rÕ  z-TestNanFunctions_Percentile.test_keepdims_outA  sû   ù€ ô �G‰G�MÓ"ˆä�I‰I×Ñ˜XÓ&¬¯©°!·'±'Ó):º1¸d¸7Ñ)CÑCˆØ�H‰H”R—W‘WÓˆÜ—f‘fˆŒ%�‹(‰Øˆ<Ø˜qŸv™v™‰Iä,¨T°1·6±6Ó:ˆIÜô LÜ=BÀ1Ç6Á6»]ôLó LˆIä—H‘H˜Q“K )Ñ+ˆ	ä�h‰h�yÓ!ˆÜ×!Ñ! ! Q¨T¸DÀcÔJˆØ˜‰}Ðˆ}Ü�V—\‘\ 9Õ-r1   ÚweightedFTc                 óè  — t         j                  j                  dd«      }t        j                  |ddgt         j                  d¬«      }t        j
                  d«      }|r1t        j                  |«      ddœ}t        j                  |«      ddœ}ni }i }t        j                  |dfd	di|¤Ž}t        j                  |dfd|d
œ|¤Ž}t        ||«       t        ||«       t        j
                  d«      }t        j                  |dfd	d i|¤Ž}t        j                  |dfd |d
œ|¤Ž}t        ||«       t        ||«       t        j                  |dfd|d
œ|¤Ž}t        ||«       t        ||«       y )Nry   r   rÖ   r{   rŽ   Úinverted_cdf©ÚweightsÚmethodé*   r}   r�   rÏ   r‰  )
r6   ru  rw  r×  rÜ   r’   r  r\   r[   r
   )	r8   r	  r…   rØ  r”   Úw_argsÚ
nan_w_argsrˆ   r‰   s	            r/   r•   z$TestNanFunctions_Percentile.test_out`  sc  € ä�i‰i�n‰n˜Q Ó"ˆÜ—)‘)˜C ! Q ¬¯©°aÔ8ˆÜ—‘˜!“ˆÙÜ!#§¡¨cÓ!2¸nÑMˆFäŸ<™<¨Ó0¸Nñ‰Jð ˆFØˆJÜ�m‰m˜C Ñ6¨!Ð6¨vÑ6ˆÜ×Ñ˜w¨ÐM°¸ÑMÀ*ÑMˆÜ˜C Ô(Ü˜C Ô%ä—‘˜"“ˆÜ�m‰m˜C Ñ9¨$Ð9°&Ñ9ˆÜ×ÑØ�Rð
Ø"¨ñ
Ø2<ñ
ˆô 	˜C Ô(Ü˜C Ô%Ü×ÑØ�Rð
Ø$¨&ñ
Ø4>ñ
ˆô 	˜C Ô(Ü˜C Õ%r1   c                 óZ  — t        j                  g d¢d¬«      }t        t        t         j                  |d«       t        j                  g d¢d¬«      }t        t        t         j                  |d«       t        j                  g d¢d¬«      }t        t        t         j                  |d«       y ©N)y      à?      @yÍÌÌÌÌÌ @      à?yš™™™™™ù?ffffff@ÚGr™   r@  r¦  ÚF)r6   r«   r   r=  r[   ©r8   Úarr_cs     r/   Útest_complexz(TestNanFunctions_Percentile.test_complex  sq   € Ü—‘Ò=ÀSÔIˆÜ”i¤×!1Ñ!1°5¸#Ô>Ü—‘Ò=ÀSÔIˆÜ”i¤×!1Ñ!1°5¸#Ô>Ü—‘Ò=ÀSÔIˆÜ”i¤×!1Ñ!1°5¸#Õ>r1   Úuse_outc                 ó†  — |r:t        t        j                  d¬«      }t        t        j                  d¬«      }d„ }n#t        j                  }t        j                  }d„ }t        D �cg c]  } ||d ||«      ¬«      ‘Œ }}|rt        j
                  |«      nd } |t        dd |t        «      |¬«      }	t        |	|«       t        j                  t        D �cg c]  } ||d	 ||«      ¬«      ‘Œ c}«      }|rt        j
                  |«      nd } |t        d	d |t        «      |¬«      }	t        |	|«       y c c}w c c}w )
Nr  ©r  c                 ó,   — t        j                  | «      S r5   )r6   r  ©r¦   s    r/   Úgen_weightszCTestNanFunctions_Percentile.test_result_values.<locals>.gen_weightsŽ  s   € Ü—|‘| A“Ð&r1   c                  ó   — y r5   rÏ   r  s    r/   r  zCTestNanFunctions_Percentile.test_result_values.<locals>.gen_weights•  s   € Ør1   ri  )r  r{   )r}   r  r�   )ri  éb   )	r   r6   r\   r[   r¤   Ú
empty_likero   r
   Ú	transpose)
r8   r	  r  r\   r[   r  r¦   rˆ   r�   r‰   s
             r/   r§   z.TestNanFunctions_Percentile.test_result_values‡  s  € ñ Ü ¤§¡°~ÔFˆJÜ#¤B×$4Ñ$4¸^ÔLˆMó'ô Ÿ™ˆJÜ×,Ñ,ˆMòô CHÖH¸Q‰z˜!˜R©°Q«Ö8ÐHˆÐHÙ$+Œb�m‰m˜CÔ °ˆÙœE 2¨AÙ$/´Ó$6¸CôAˆä˜C Ô%ä�l‰lÜ%*ö,Ø !ñ ' q¨(¹KÈ»NÖKò ,ó -ˆá$+Œb�m‰m˜CÔ °ˆÙœE 8°!Ù$/´Ó$6¸CôAˆä˜C Õ%ùò Iùò,s   Á(D9ÃD>rz   rš   ÚFloatr«   r¬   r­   r®   r2   c                 ó‚  — |�$|j                   dk(  rt        j                  d«       |j                  |«      }t        j                  t
        d¬«      5  t        j                  |d|¬«      }d d d «       t        j                  «      j                  «       sJ ‚|j                  |j                  k(  sJ ‚y # 1 sw Y   ŒJxY w)Nr   r±   r²   r³   é<   rŽ   )rƒ   re   rµ   r¶   r·   r¸   r6   r[   r¹   rº   rš   ©r8   r}   rš   r«   r�   s        r/   r¼   z(TestNanFunctions_Percentile.test_allnans¥  s—   € ð Ð §
¡
¨a¢Ü�K‰KÐDÔEà—‘˜UÓ#ˆÜ�\‰\œ.Ð0KÔLñ 	9Ü×"Ñ" 5¨"°4Ô8ˆC÷	9ä�x‰x˜‹}× Ñ Ô"Ð"Ð"Ø�y‰y˜EŸK™KÒ'Ð'Ñ'÷	9ð 	9úó   ÁB5Â5B>c                 óâ  — t        j                  d«      }dD ]µ  }t        j                  d¬«      5 }t        j                  d«       t        t        j                  t        j                  |d|¬«      «      j                  «       «       t        t        |«      dk(  «       t        t        |d	   j                  t        «      «       d d d «       Œ· d
D ]‚  }t        j                  d¬«      5 }t        j                  d«       t        t        j                  |d|¬«      t        j                  g «      «       t        t        |«      d	k(  «       d d d «       Œ„ y # 1 sw Y   �ŒJxY w# 1 sw Y   ŒœxY w)Nr  r  TrÓ   rÕ   é(   rŽ   r{   r   r  )r6   r’   rÝ   rÞ   rß   r	   r¹   r[   rº   rà   rá   râ   r¸   r   rð  s       r/   r  z&TestNanFunctions_Percentile.test_emptyµ  s(  € Ü�h‰h�vÓˆØò 	CˆDÜ×(Ñ(°Ô5ð C¸Ü×%Ñ% hÔ/ÜœŸ™¤×!1Ñ!1°#°rÀÔ!EÓF×JÑJÓLÔMÜœ˜A› !™Ô$Üœ
 1 Q¡4§=¡=´.ÓAÔB÷	Cð Cð	Cð ò 	%ˆDÜ×(Ñ(°Ô5ð %¸Ü×%Ñ% hÔ/ÜœR×-Ñ-¨c°2¸DÔAÄ2Ç8Á8ÈBÃ<ÔPÜœ˜A› !™Ô$÷%ð %ñ	%÷Cñ Cú÷%ð %ús   ±BEÃ+A"E%ÅE"	Å%E.	c                 óò   — t        t        j                  dd«      d«       t        j                  d«      }t        j                  |dd¬«      }t        |d«       t	        t        j
                  |«      «       y )Nr   rò   é   é2   r   rŽ   g      @)r   r6   r[   rõ   r	   Úisscalar)r8   rü  ré  s      r/   rÉ   z'TestNanFunctions_Percentile.test_scalarÃ  sT   € Ü”R×%Ñ% b¨#Ó.°Ô3Ü�I‰I�a‹LˆÜ×Ñ˜Q ¨Ô+ˆÜ�Q˜ÔÜ”—‘˜A“Õr1   c                 ó‚  — t        j                  d«      }t        t        t         j                  |dd¬«       t        t        t         j                  |dd¬«       t        t        t         j                  |dd¬«       t        t        t         j                  |dd¬«       t        t
        t         j                  |dd¬«       y )	Nrr  rñ   ró  ©r;  r}   rô  rý   rõ  rå  )r6   rp  r   r   r[   r  rö  s     r/   r÷  z6TestNanFunctions_Percentile.test_extended_axis_invalidÊ  s~   € Ü�G‰G�MÓ"ˆÜ”i¤×!1Ñ!1°1¸ÀÕCÜ”i¤×!1Ñ!1°1¸ÀÕHÜ”i¤×!1Ñ!1°1¸ÀÕBÜ”i¤×!1Ñ!1°1¸ÀÕGÜ”j¤"×"2Ñ"2°A¸ÀÖHr1   c           	      ó  — ddg}t        j                  d«      }t         j                  |z  }t        j                  d«      }d|d d …ddd…d d …f<   |d d …d d …dd …fxx   dz  cc<   d	D ]Ñ  }d
D ]Ê  }t        j                  «       5  t        j
                  ddt        «       t        j                  ||||¬«      }t        j                  ||||¬«      }t        |j                  |j                  «       t        j                  ||||¬«      }t        j                  ||||¬«      }t        ||«       d d d «       ŒÌ ŒÓ t        j                  d«      }	t        t        j                  |	|d¬«      j                  d«       y # 1 sw Y   �ŒxY w)Nr,  rò   )rý   ry   )ry   rý   rñ   r   rÖ   rý   ry   rz   )FTr  r²   r|   )ry   rý   rñ   r+  )r{   rÖ   rŽ   )rÖ   ry   r+  )r6   rp  rÜ   rÝ   rÞ   r  r¸   r\   r[   r   rÛ   )
r8   Úpercr…   rØ  Ú	large_matr}   Úkeepdimr  Únan_valÚmegamats
             r/   Útest_multiple_percentilesz5TestNanFunctions_Percentile.test_multiple_percentilesÒ  si  € Ø�CˆyˆÜ�g‰g�f‹oˆÜ—&‘&˜3‘,ˆä—G‘G˜IÓ&ˆ	Ø!"ˆ	’!�Q�q˜�UšA�+ÑØ’!’Q˜™�(Ó˜qÑ ÓØ ò 	/ˆDØ(ò /�Ü×,Ñ,Ó.ñ /Ü×+Ñ+Ø Ð"=¼~ôOäŸ-™-¨¨T¸ÀwÔO�CÜ ×.Ñ.¨w¸À4Ø8?ôA�Gä  §¡°·	±	Ô:äŸ-™-¨	°4¸dØ18ô:�Cä ×.Ñ.¨y¸$ÀTØ8?ôA�Gä  ¨#Ô.÷/ð /ñ/ð	/ô  —'‘'˜,Ó'ˆÜÜ×Ñ˜W d°Ô8×>Ñ>À	õ	
÷/ñ /ús   ÂB,E?Å?F	Ú
nan_weight)r   r{   rÖ   ry   çZb××çtic                 óô   — dt         j                  ddg}t        j                  d«      }t        j                  |dd¬«      }t	        ||«       d|ddg}t        j                  |d|d¬	«      }t	        ||«       y )
Nr{   rÖ   ry   rç   r,  r  r  r   r  )r6   rÜ   Úfloat64r[   r   )r8   r7  rà  rÔ  Úq_unweightedrä   Ú
q_weighteds          r/   Útest_nan_value_with_weightz6TestNanFunctions_Percentile.test_nan_value_with_weightï  so   € à”—‘˜˜1ÐˆÜ—‘˜C“ˆÜ×'Ñ'¨¨2°nÔEˆÜ�\ 6Ô*ð �*˜c 3Ð'ˆÜ×%Ñ% a¨°Q¸~ÔNˆ
Ü�Z Õ(r1   ©r   r{   rÖ   c                 ó(  — t         j                  j                  d«       t         j                  j                  d¬«      }|j                  «       }t         j                  |t        j
                  d«      t        j
                  d«      df<   t        j                  g d¢g d¢g«      }t        j                  |«      }d|t        j                  |«      <   t        j                  ||||d¬	«      }t        j                  |||d¬
«      }t        ||«       d|t        j                  |«      <   t        j                  ||||d¬	«      }t        ||«       t        j                  |«      }	t        j                  |||||	d¬«      }
|
|	u sJ ‚t        |	|«       y )Nr{   )rò   éc   rÖ   rÛ  r@  r   )g      4@g      I@r  )r  é!   éP   r  )r}   r  r  )r}   r  r8  )r}   r  r�   r  )r6   ru  Úseedrp   rÜ   rõ   r«   r  r¹   r\   r[   r   r!  )r8   r}   Úx_no_nanrà  Úpr  Ú
p_expectedÚp_unweightedÚ
p_weightedr�   r‰   s              r/   Útest_nan_value_with_weight_ndimz;TestNanFunctions_Percentile.test_nan_value_with_weight_ndimû  sP  € ô 	�	‰	�‰�qÔÜ—9‘9×#Ñ#¨Ð#Ó6ˆð �M‰M‹OˆÜ-/¯V©VˆŒ"�)‰)�B‹-œŸ™ 2›¨Ð
)Ñ*ä�H‰H’n¢lÐ3Ó4ˆô —,‘,˜q“/ˆð
  !ˆ”—‘˜“ÑÜ—]‘]Ø�a˜d¨G¸NôLˆ
ô ×'Ñ'Øˆq�t Nô4ˆô 	�\ :Ô.à$ˆ”—‘˜“ÑÜ×%Ñ%Øˆq�t W°^ôEˆ
ä�Z Ô,ä�m‰m˜JÓ'ˆÜ×ÑØˆq�t W°#¸nôNˆð �c‰zÐˆzÜ�S˜*Õ%r1   N)rD   rE   rF   ru   rŠ   re   rf   rg   r  rÕ  r•   r  r§   r6   r  r«   rÜ   r	  r¼   r  rÉ   r÷  r6  r=  ÚslowrI  rÏ   r1   r/   r  r    sø  „ ò"ò2ð: ‡[�[×Ñ˜S 1 q¨! f +Ó.Ø‡[�[×ÑØò
ð ó 	ð ‡[�[×ÑÐ EÓFñ.ó Gó	ó /ð.ð& ‡[�[×Ñ˜Z¨%°¨Ó7ñ&ó 8ð&ò<?ð ‡[�[×Ñ˜Z¨%°¨Ó7Ø‡[�[×Ñ˜Y¨°¨Ó6ñ&ó 7ó 8ð&ð8 ‡[�[×Ñ˜V¢\Ó2Ø‡[�[×Ñ˜W b§l¡l°7Ñ&;Ó<Ø‡[�[×Ñ˜WØˆ�‰�—‘ÓØˆ�‰�˜Ÿ™Óð'ð �$ˆ<ð ó ñ(ó	ó =ó 3ð(ò%ò òIò
ð: ‡[�[×Ñ˜\Ò+>Ó?ñ	)ó @ð	)ð ‡[�[×Ñ˜V¢YÓ/Ø‡[�[×Ññ%&ó ó 0ñ%&r1   r  c            
       óº  — e Zd Zej                  j                  dddg«      d„ «       Zd„ Zd„ Zd„ Z	ej                  j                  dg d	¢«      ej                  j                  d
e
j                  d   «      ej                  j                  d e
j                  e
j                  «       e
j                  de
j                  «      gddg¬«      d„ «       «       «       Zy)ÚTestNanFunctions_Quantiler	  FTc           	      ó(  — t        j                  d«      j                  ddd«      j                  t        «      }t         j
                  |d   d<   |rt        j                  |«      ddœ}ni }t        t        j                  |fd	d
i|¤Žt        j                  |fd	di|¤Ž«       t        t        j                  |fd
ddœ|¤Žt        j                  |fdddœ|¤Ž«       t        t        j                  |fd
ddœ|¤Žt        j                  |fdddœ|¤Ž«       t        t        j                  |fd
gddœ|¤Žt        j                  |fdgddœ|¤Ž«       t        t        j                  |fg d¢ddœ|¤Žt        j                  |fg d¢ddœ|¤Ž«       y )Né   rÖ   ry   rý   r   r{   r  r  r;  r@  r,  r/  )ç      Ð?r@  ç      è?)é   r,  éK   )
r6   rõ   r  r¶   ÚfloatrÜ   r  r   r]   r[   )r8   r	  rö   r  s       r/   Útest_regressionz)TestNanFunctions_Quantile.test_regression(  sw  € ä�Y‰Y�r‹]×"Ñ" 1 a¨Ó+×2Ñ2´5Ó9ˆÜ—6‘6ˆˆ1‰ˆa‰ÙÜ!#§¡¨bÓ!1¸^ÑL‰FàˆFä”R—^‘^ BÑ8¨#Ð8°Ñ8Ü×%Ñ% bÑ9¨BÐ9°&Ñ9ô	;ä”R—^‘^ BÐ@¨#°AÑ@¸Ñ@Ü×%Ñ% bÐA¨B°QÑA¸&ÑAô	Cä”R—^‘^ BÐ@¨#°AÑ@¸Ñ@Ü×%Ñ% bÐA¨B°QÑA¸&ÑAô	Cä”R—^‘^ BÐB¨3¨%°aÑB¸6ÑBÜ×%Ñ% bÐC¨R¨D°qÑC¸FÑCô	Eä”R—^‘^ BÐNÒ*;À!ÑNÀvÑNÜ×%Ñ% bÐKªL¸qÑKÀFÑKõ	Mr1   c                 óô   — t        j                  d«      dz  }t        t        j                  |d«      d«       t        t        j                  |d«      d«       t        t        j                  |d«      d«       y )Nrþ   r@  r   r   r{   g      @g      ü?)r6   rõ   r   r]   )r8   rà  s     r/   Ú
test_basicz$TestNanFunctions_Quantile.test_basic<  sS   € Ü�I‰I�a‹L˜3ÑˆÜ”R—^‘^ A qÓ)¨2Ô.Ü”R—^‘^ A qÓ)¨3Ô/Ü”R—^‘^ A sÓ+¨TÕ2r1   c                 óZ  — t        j                  g d¢d¬«      }t        t        t         j                  |d«       t        j                  g d¢d¬«      }t        t        t         j                  |d«       t        j                  g d¢d¬«      }t        t        t         j                  |d«       y r  )r6   r«   r   r=  r]   r  s     r/   r  z&TestNanFunctions_Quantile.test_complexB  sk   € Ü—‘Ò=ÀSÔIˆÜ”i¤§¡°¸Ô<Ü—‘Ò=ÀSÔIˆÜ”i¤§¡°¸Ô<Ü—‘Ò=ÀSÔIˆÜ”i¤§¡°¸Õ<r1   c                 ón  — t        j                  g d¢«      }|j                  «       }t        j                  t        j                  d«      |d¬«       t        ||«       |j                  «       }|j                  «       }t        j                  t        j                  d«      |d¬«       t        ||«       y )N)r   rP  rO  r@  r   g      Y@Úmidpointr  )r6   r«   rp   r]   rõ   r   Útolist)r8   Úp0rE  s      r/   Útest_no_p_overwritez-TestNanFunctions_Quantile.test_no_p_overwriteJ  sv   € ä�X‰XÒ/Ó0ˆØ�G‰G‹IˆÜ
�‰”r—y‘y “¨°*Õ=Ü˜1˜bÔ!à�Y‰Y‹[ˆØ�H‰H‹JˆÜ
�‰”r—y‘y “¨°*Õ=Ü˜1˜bÕ!r1   r}   rz   rš   r#  r«   r¬   r­   r®   r2   c                 ó‚  — |�$|j                   dk(  rt        j                  d«       |j                  |«      }t        j                  t
        d¬«      5  t        j                  |d|¬«      }d d d «       t        j                  «      j                  «       sJ ‚|j                  |j                  k(  sJ ‚y # 1 sw Y   ŒJxY w)Nr   r±   r²   r³   r{   rŽ   )rƒ   re   rµ   r¶   r·   r¸   r6   r]   r¹   rº   rš   r&  s        r/   r¼   z&TestNanFunctions_Quantile.test_allnansV  s•   € ð Ð §
¡
¨a¢Ü�K‰KÐDÔEà—‘˜UÓ#ˆÜ�\‰\œ.Ð0KÔLñ 	6Ü—.‘. ¨°Ô5ˆC÷	6ä�x‰x˜‹}× Ñ Ô"Ð"Ð"Ø�y‰y˜EŸK™KÒ'Ð'Ñ'÷	6ð 	6úr'  N)rD   rE   rF   re   rf   rg   rT  rV  r  r\  r6   r  r«   rÜ   r	  r¼   rÏ   r1   r/   rL  rL  %  sÕ   „ ð ‡[�[×Ñ˜Z¨%°¨Ó7ñMó 8ðMò&3ò=ò
"ð ‡[�[×Ñ˜V¢\Ó2Ø‡[�[×Ñ˜W b§l¡l°7Ñ&;Ó<Ø‡[�[×Ñ˜WØˆ�‰�—‘ÓØˆ�‰�˜Ÿ™Óð'ð �$ˆ<ð ó ñ(ó	ó =ó 3ñ(r1   rL  zarr, expectedrù  )FTFT)r{   rñ   rs  rð   r™   Tc                 óæ   — d t        j                  | j                  t         j                  ¬«      fD ]=  }t	        | |¬«      }t        ||«       t        |«      t         j                  usŒ8|du rŒ=J ‚ y )Nr™   r'  T)r6   r(   rÛ   r  r   r   rœ   rØ   )rë   Úexpectedr�   Úactuals       r/   Útest__nan_maskra  f  s_   € ð" ”b—h‘h˜sŸy™y´·±Ô8Ð9ò "ˆÜ˜3 CÔ(ˆÜ�V˜XÔ&ô �‹>¤§¡Ò+Ø˜T’>Ð!�>ñ"r1   c                  óê  — t         j                  t         j                  t         j                  fD ]4  } t        j                  ddg| ¬«      }t        |d«      \  }}|�J ‚||u rŒ4J ‚ t         j                  t         j                  fD ]ê  } t        j                  ddg| ¬«      }t        |d«      \  }}|dk(  j                  «       sJ ‚||usJ ‚t        ||«       t        j                  ddt         j                  g| ¬«      }t        |d«      \  }}t        |t        j                  g d¢«      «       ||usJ ‚t        |t        j                  g d¢«      «       t        j                  |d	   «      rŒêJ ‚ y)
z] Test that _replace_nan returns the original array if there are no
    NaNs, not a copy.
    r   r{   r™   NrÖ   F)FFTr>  r|  )r6   r  Úint32Úint64r«   r   rû  r:  rº   r   rÜ   r¹   )rš   rë   rÔ  ÚmaskÚarr_nanÚ
result_nanÚmask_nans          r/   Útest__replace_nanri  �  sF  € ô —'‘'œ2Ÿ8™8¤R§X¡XÐ.ò ˆÜ�h‰h˜˜1�v UÔ+ˆÜ# C¨Ó+‰ˆ�Øˆ|Ðˆ|à˜Š}Ðˆ}ðô —*‘*œbŸj™jÐ)ò %ˆÜ�h‰h˜˜1�v UÔ+ˆÜ# C¨Ó+‰ˆ�Ø˜‘×"Ñ"Ô$Ð$Ð$à˜SÑ Ð Ð Ü�V˜SÔ!ä—(‘(˜A˜q¤"§&¡&˜>°Ô7ˆÜ+¨G°QÓ7Ñˆ
�HÜ�XœrŸx™xÒ(<Ó=Ô>Ø Ñ(Ð(Ð(Ü�Z¤§¡ª)Ó!4Ô5Ü�x‰x˜ ™Õ$Ð$Ð$ñ%r1   z"memmap is thread-unsafe (gh-29126))Úreasonc                 ó˜  — t        j                  dt        ¬«      }t        | j	                  d«      d«      5 }|j                  |j                  «       «       t        j                  ||j                  |j                  ¬«      }t        j                  t        d¬«      5  t        j                  |t        j                  d«      ¬	«       d d d «       t        j                  t        d
¬«      5  t        j                  |t        j                  d«      ¬	«       d d d «       d d d «       y # 1 sw Y   Œ`xY w# 1 sw Y   ŒxY w# 1 sw Y   y xY w)Ng      $@r™   zdata.binzw+b)rš   rÛ   zreduction operation fmaxr³   rÖ   r'  zreduction operation fmin)r6   rõ   rS  ÚopenÚjoinr/  ÚtobytesÚmemmaprš   rÛ   re   r  r  rI   r’   rG   )Útmpdirrü  ÚfhÚmms       r/   Útest_memmap_takes_fast_routers  œ  så   € ô
 	�	‰	�#œUÔ#€AÜ	ˆf�k‰k˜*Ó% uÓ	-ð +°Ø
�‰�—‘“ÔÜ�Y‰Y�r §¡°·±Ô8ˆÜ�]‰]œ:Ð-GÔHñ 	+Ü�I‰I�bœbŸh™h q›kÕ*÷	+ô �]‰]œ:Ð-GÔHñ 	+Ü�I‰I�bœbŸh™h q›kÕ*÷	+÷+ð +÷	+ð 	+ú÷	+ð 	+ú÷+ð +ús<   ·A'E Â+D(Ã	#E Ã,+D4ÄE Ä(D1	Ä-E Ä4D=	Ä9E Å E	)9r#   rÝ   Ú	functoolsr   re   Únumpyr6   Únumpy._core.numericr   Únumpy.exceptionsr   r   Únumpy.lib._nanfunctions_implr   r   Únumpy.testingr	   r
   r   r   r   r   r«   rÜ   ro   r¤   r}  r~  r    rl   r  Ú_TEST_ARRAYSr&   Ú_vÚsetflagsrf   rg   r  Úkeysr3  rL  r`  rm  r�  Ú_TIME_UNITSrê   rÿ  r²  r  rL  rú  rd  Ú	complex64ra  ri  Úthread_unsafers  )Úunits   0r/   ú<module>r‚     sî  ðÛ Û Ý ã ã Ý 4ß 6ß @÷÷ ð 	ˆ�‰�6˜2Ÿ6™6 6¨6°2·6±6¸6ÐBØ˜7 B§F¡F¨F°F¸FÐCØ—6‘6˜2Ÿ6™6 2§6¡6¨6°2·6±6¸7ÐCØ˜2Ÿ6™6 2§6¡6¨6°6¸2¿6¹6ÐBðDó 	E€ð 
ˆ�‰Ò2Ó	3Ø	ˆ�‰Ò;Ó	<Ø	ˆ�‰�6˜7Ð#Ó	$Ø	ˆ�‰Ò*Ó	+ð	-€ð ˆR�X‰XÒAÚEÚ<Ú>ð@ó A€
ð ˆb�h‰hÒBÚFÚ=Ú?ðAó B€÷,
ñ ,
÷^m%ñ m%÷`^$ñ ^$ðD ˆ"�(‰(�1‹+Ø
ˆ"�(‰(Ò(Ó
)ñ€ð ×
Ñ
Ó
ò €BØ‡K�K�e€KÕðð ‡�×ÑØØ‡L�L�Ñ §¡¨jÑ!9Ñ9¸CÑ?óð ‡�×Ñ˜ × 3Ñ 3Ó 5¸<×;LÑ;LÓ;NÐÓO÷R/ð R/ó Pó	ð
R/÷jf1ñ f1ôR8$Ð;ô 8$ôvF.Ð">ô F.ôRB*Ð">ô B*ðJ€ñ
 �2—<‘< 
Ñ+Ó,€Ø ¨+Ö6 $�#�d�V˜1’Ò6Ñ 6€÷NBñ NB÷bF&ñ F&÷R?(ñ ?(ðB ‡�×Ñ˜à€R‡X�Xˆr�v‰v�s˜BŸF™F B§F¡FÐ+Ó,Ø€R‡X�XÒ(Ó)ð+ð €R‡X�XŠl "§(¡(Ô+Ø	ðð €R‡X�XÒ(Ó)Ø	ðð €R‡X�X�—‘˜ˆ}Ø—‘˜Ÿ™Ðð!Ø(*¯©ô6à€R‡X�X��tˆ}Ø�tˆ}ðó ð ð+ó ñ "ó!ð "ò%ð6 ‡�×ÑÐ"FÐÓGñ+ó Hñ+ùòk 7s   ÊO 