
    Pia                     r"   d dl mZmZmZ d dlZd dlZd dlZd dlZd dlZd dl	Z
d dlmZmZ d dlmZmZ d dlmZmZmZmZmZmZ d dlmZ d dlmZ  eej                            dd	                    Zd
 Z d Z!d Z"d Z#d Z$d Z%d Z&d Z'ddZ(ddZ)g ej*         e+             e,            ddddfej-        d e,            ddddfej.         e+            ddiddddfej/        dddidddd fej/         e+             e,            dddd  fej/         e+            ddidddd! fej0         e+             e,            dddd" fej1         e+             e,            dddd# fej2        d$ e,            dddd% fej3        d& e,            dddd' fej4         e+             e,            dddd( fej5         e+             e,            dddd) fej6         e+             e,            dddd* fej7         e+             e,            dddd+ fej8         e+             e,            dddd, fej9         e+             e,            dddd- fej:         e+             e,            dddd. fej:         e+             e,ddg/          ddddfej;         e+             e,            ddddfej<         e
j=        d g          f e,            dd0de fej>         e+             e,            dd0de fej?         e+             e,            dd0de f e!ej<                  d1 e,            ddddf e!ej>                   e+             e,            ddddf e!ej?                   e+             e,            ddddfej@         e+             e,            dddd2 fejA         e+             e,            dddd3 fejB         e+             e,            dddd4 fejC         e+             e,            ddddfejD         e+             e,d56          ddddfejE         e+            i ddddfejF         e+            i ddddfejG        ejH        f e,            dd7dd8 fejG        ejH        f e,d9:          dd7dd; fejG        ejH        f e,d<:          dd7dd= fejI         e+             e,            dd7dd> fejJ        ejH        f e,            dd7dd? fejJ         e+             e,            dd7dd@ fejK         e+            i ddddfejL         e+            dAdBdCddddfejM         e+            i ddddfejN         e+             e,            ddddD fejN         e+             e,            ddddE fejO         e+             e,            ddddfejP         e+             e,            ddddfejQ         e+             e,            ddddfejR        ejH        f e,            ddddF fejS         e+             e,dG          ddddH fejT         e+             e,            ddddfejU         e+            i ddddfejV         e+            i ddddI fejW         e+            i ddddJ fejX         e+            i ddddK fejY         e+            i ddddL fejZ         e+            i ddddM fej[         e+            i ddddN fej\         e+             e,            ddddO fej]         e+             e,            ddddP fej^         e+             e,            ddddQ fej_         e+            i ddddfej_         e+            dRdiddddfej`         e+            i ddddS feja         e+            i ddddfejb         e+             e,            dd7ddT fe& e+            i ddddfe" e+             e,            ddddU fe# e+             e,            ddddV fe$ e+             e,            ddddW fejc         e+             e,            ddddX fejd         e+             e,            ddddY feje         e+             e,            ddddZ fejf         e+             e,            dddd[ fejg         e+             e,            dddd\ fe' e+             e,            dddd] fejh         e+             e,            dd^dd_ feji         e+             e,            dd7de+feji         e+             e,            dd7de+fejj         e+             e,            ddde+fejj         e+             e,            ddde+fe% e+             e,            dddd` fejk         e+             e,            ddddfejl         e+             e,            ddddfejm         e+             e,            dddda fe( e+             e,dbc          ddddd fe) e+             e,dbc          dddde fZnh dfZodgdhhZpej@        e'ejg        hZqejN        ejl        ejk        hZrejN        ejl        ejk        hZs	 ddiZt	 ddjZuddkdddldmZvejw        x                    dn          ejw        x                    do          ejw        x                    dp          ejw        x                    dq          ejw        x                    dr          ejw        x                    ds          ejw        y                    dten          ejw        y                    dudv          ejw        y                    dwdx          ejw        y                    dydz          d{                                                                                                                         ZzerQejw        x                    dn          ejw        x                    do          ejw        x                    dp          ejw        x                    d|          ejw        x                    dr          ejw        x                    ds          ejw        y                    dten          ejw        y                    dudv          ejw        y                    dw e{d}d                    ejw        y                    dyd~          d                                                                                                                         Z|d Z}d Z~ejw        y                    dten          ejw        y                    dudv          ejw        y                    dyd          d                                     Zejw        x                    d          ejw        x                    d          ejw        y                    dud          ejw        y                    dten          ejw        y                    dd          d                                                             Zejw        y                    dej8        dfej9        dfg          d             Zejw        y                    dwd          d             Zd Zd Zejw        y                    dten          d             Zd Zd Zejw        j        ejw        y                    dten          d                         Zd Zejw        y                    dwd dg          ejw        y                    dt e                      d                         Zd Zed             Zed             Zejw        x                    d          ejw        x                    d          eejw        y                    dw e{d}d                    d                                                 Zejw        x                    d          ejw        x                    d          ed                                     Zejw        x                    d          ejw        x                    d          ed                                     Zd Zd Zejw        y                    dw e e e{d}d          d                    dgz             d             Zejw        x                    d          ejw        x                    d          eejw        y                    ddd fdd fdd fdd fg          d                                                 Zd Zejw        y                    de
j        e
j        e
j        g          d             ZdS )    )productcombinations_with_replacementpermutationsN)assert_allcloseassert_equal)statsspecial) _masked_arrays_2_sentinel_arraysSmallSampleWarningtoo_small_nd_omittoo_small_nd_not_omittoo_small_1d_omittoo_small_1d_not_omit)	AxisError)skip_xp_invalid_argSCIPY_XSLOW0c                 t    |                                  \  }}| j        | j        | j        | j        | j        ||fS N)confidence_interval	statisticpvaluedf_standard_error	_estimate)reslowhighs      z/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/scipy/stats/tests/test_axis_nan_policy.pyunpack_ttest_resultr       s<    ''))ICM3:svs/BM3& &    c                       fd}|S )Nc                  <     | i |}|                                 S r   )r   )argskwargsr   ttests      r   ttest_ciz_get_ttest_ci.<locals>.ttest_ci$   s)    eT$V$$&&(((r!    )r&   r'   s   ` r   _get_ttest_cir)   "   s#    ) ) ) ) ) Or!   c                  Z    |                     dd            t          j        j        | i |S N_no_decopopr   	_stats_py_xp_meanr$   r%   s     r   xp_mean_1sampr2   *   s.    
JJz4   ?#T4V444r!   c                      |                     dd            | d         }t          j        j        | d         g| dd          R d|i|S )Nr,      r      weightsr-   )r$   r%   r6   s      r   xp_mean_2sampr7   /   sS    
JJz4   1gG?#DGRd122hRRRR6RRRr!   c                  Z    |                     dd            t          j        j        | i |S r+   )r.   r   r/   _xp_varr1   s     r   xp_varr:   5   s.    
JJz4   ?"D3F333r!   c                  P    |                     dd            t          j        | i |S r+   )r.   r   gstdr1   s     r   r<   r<   :   s+    
JJz4   :t&v&&&r!   c                  Z    t          j        | d         g| dd          R | d         dd|S )Nr   r5   r4   stouffer)r6   method)r   combine_pvaluesr1   s     r   combine_pvalues_weightedrA   ?   sL     a >48 > >T!W(2> >6<> > >r!   c                     |                     dd          }|                     dd          }t          j        |||          }t          j        | ||fi |S )Naxisr   
nan_policy	propagaterC   rD   )getr   rankdataweightedtau)xyrankr%   rC   rD   s         r   weightedtau_weightedrM   D   s[    ::fa  DL+66J>$TjAAADQ4226222r!   Fc                 t    |r"t           j                            | ||          S t          j        || fd|i|S N)lmbrC   rC   )r   
_morestats_boxcox_llf
boxcox_llfdatarP   rC   r,   r%   s        r   rS   rS   K   sI     F++Dc+EEEC;;D;F;;;r!   c                 t    |r"t           j                            | ||          S t          j        || fd|i|S rO   )r   rQ   _yeojohnson_llfyeojohnson_llfrT   s        r   rX   rX   Q   sI     J//#D/IIIT??????r!      r5   )lessr?   
asymptotic)prattmodeautoTc                     | j         | j        fS r   r   r   r   s    r   <lambda>rb   _       #-, r!   r4   c                     | j         | j        fS r   r`   ra   s    r   rb   rb   a   rc   r!   c                 *    | j         | j        | j        fS r   )r   r   
zstatisticra   s    r   rb   rb   c   s    #-S^< r!   c                     | fS r   r(   rJ   s    r   rb   rb   d       1$ r!   c                     | fS r   r(   rh   s    r   rb   rb   e   ri   r!   )gQ?c                     | fS r   r(   rh   s    r   rb   rb   f   ri   r!   )g?c                     | fS r   r(   rh   s    r   rb   rb   g       qd r!   c                     | fS r   r(   rh   s    r   rb   rb   h        r!   c                     | fS r   r(   rh   s    r   rb   rb   i   ro   r!   c                     | fS r   r(   rh   s    r   rb   rb   j       aT r!   c                     | fS r   r(   rh   s    r   rb   rb   k   s    ! r!   c                     | fS r   r(   rh   s    r   rb   rb   l   ri   r!   c                     | fS r   r(   rh   s    r   rb   rb   m   rr   r!   c                     | fS r   r(   rh   s    r   rb   rb   n       A4 r!   )order   )r   c                     | j         | j        fS r   )r]   countrh   s    r   rb   rb   x   s    8I r!   c                     | fS r   r(   rh   s    r   rb   rb   y       ! r!   c                     | fS r   r(   rh   s    r   rb   rb   z   rm   r!   normal)distribution   c                 (    g | | j         | j        R S r   statistic_locationstatistic_signra   s    r   rb   rb          C3C.C0BCC r!   greater)alternativec                 (    g | | j         | j        R S r   r   ra   s    r   rb   rb      r   r!   rZ   c                 (    g | | j         | j        R S r   r   ra   s    r   rb   rb      r   r!   c                 (    g | | j         | j        R S r   r   ra   s    r   rb   rb      r   r!   c                 (    g | | j         | j        R S r   r   ra   s    r   rb   rb      r   r!   c                 (    g | | j         | j        R S r   r   ra   s    r   rb   rb      r   r!   trimmedg{Gz?)centerproportiontocutc                     | fS r   r(   rh   s    r   rb   rb          QD r!   c                     | fS r   r(   rh   s    r   rb   rb      rw   r!   c                     | j         | j        fS r   r`   ra   s    r   rb   rb      rc   r!   )r?   c                     | j         | j        fS r   r`   ra   s    r   rb   rb      rc   r!   c                     | fS r   r(   rh   s    r   rb   rb      s    qd r!   c                     | fS r   r(   rh   s    r   rb   rb          aT r!   c                     | fS r   r(   rh   s    r   rb   rb      r   r!   c                     | fS r   r(   rh   s    r   rb   rb      r   r!   c                     | fS r   r(   rh   s    r   rb   rb      r   r!   c                     | fS r   r(   rh   s    r   rb   rb      r   r!   c                     | fS r   r(   rh   s    r   rb   rb      rr   r!   c                     | fS r   r(   rh   s    r   rb   rb      r   r!   c                     | fS r   r(   rh   s    r   rb   rb      r   r!   	equal_varc                     | j         | j        fS r   r`   ra   s    r   rb   rb      rc   r!   c                      t          |           S r   )tuplerh   s    r   rb   rb      s    E!HH r!   c                     | fS r   r(   rh   s    r   rb   rb      r   r!   c                     | fS r   r(   rh   s    r   rb   rb      rw   r!   c                     | fS r   r(   rh   s    r   rb   rb      r   r!   c                     | j         | j        fS r   r`   ra   s    r   rb   rb      rc   r!   c                     | j         | j        fS r   r`   ra   s    r   rb   rb      rc   r!   c                 *    | j         | j        | j        fS r   r   r   correlationra   s    r   rb   rb          #-S_= r!   c                 *    | j         | j        | j        fS r   r   ra   s    r   rb   rb      r   r!   c                 *    | j         | j        | j        fS r   r   ra   s    r   rb   rb      r   r!   c                 *    | j         | j        | j        fS r   r   ra   s    r   rb   rb      r   r!      c                 2    t          |           | j        fz   S r   )r   intercept_stderrra   s    r   rb   rb      s    ss355 r!   c                     | fS r   r(   rh   s    r   rb   rb      s    A4 r!   c                     | fS r   r(   rh   s    r   rb   rb      r}   r!   g      ?)rP   c                     | fS r   r(   rh   s    r   rb   rb      s     r!   c                     | fS r   r(   rh   s    r   rb   rb      s    QD r!   >   division by zeroNot enough observations.Inputs must not be empty.divide by zero encounteredData input must not be emptyNot enough test observations`skewtest` requires at leastNot enough other observationsData must be at least length 3 `kurtosistest` requires at least!Degrees of freedom <= 0 for slice!x and y must contain at least two"All `x` coordinates are identical.#No array values within given limits$At least one observation is required$The sample must contain at least two$`x` and `y` must be of nonzero size.'x and y should have at least 5 elements(`x` and `y` must have length at least 2.)Data passed to ks_2samp must not be empty)One or more sample arguments is too small*attempt to get argmax of an empty sequence+Input sample size must be greater than one.+The exact distribution of the Wilcoxon test+Window length (0) must be positive and less+Window length (1) must be positive and less+Window length (2) must be positive and less.zero-size array to reduction operation maximum/At least one slice along `axis` has zero lengthMean of empty sliceinvalid value encounteredz-Precision loss occurred in moment calculationz/Sample size too small for normal approximation.c           
      b   g }t          |           D ]}d}|rdnd|z   }t          j        |||f          t          j        z  }	t          |          D ]}
|	|
d d d d f         }t	          dddd|dz
  |g          D ]=\  }}|                    |          d |         }|                    |          |||f<   >|                    |d          |d d <   |gdg| z  z   |gz   }d|d|z   <   |	                    |          }	t          j        |	d	|          }	|	                    |	           |S )
Nr      r   r4   r5   rY   sizerC   )
rangenponesnan	enumeratepermutationrandomreshapemoveaxisappend)	n_samplesn_repetitionsrC   rngpairedrU   i
n_patternsn_obsrJ   jsampleskn_realsindices	new_shapes                   r   _mixed_data_generatorr      sm    D9  
("q&G]J677"&@}%% 	: 	:A111aaajG (Aq!U1We(DEE ? ?
7//%00':&)jjgj&>&>7
## q99GAAAJJ
 #Oqc)m3ug=		!a%IIi  K2t$$AKr!   c                 2   g }t          |           D ]}|rdnd|z   }|gdg| z  z   |gz   }	d|	d|z   <   |r!t          j        |	          t          j        z  n|                    |	          }
t          j        |
d|          }
|                    |
           |S )Nr   r4   r5   r   )r   r   r   r   r   r   r   )r   r   rC   r   r   all_nansrU   r   r   shaperJ   s              r   _homogeneous_data_generatorr     s    
 D9  ("q&1#i-/5'9a!e'/FBGENNRV##SZZ5F5FK2t$$AKr!   raise	n_outputsrD   r   r,   c                P  
 |dk    r;|D ]7}	t          j        t          j        |	                    rt          d          8n|dk    rV| t          vrM|D ]I}	t          j        t          j        |	                    r!t          j        |t           j                  c S Jnq|dk    rk|sd |D             }n\t          j        |d                   
|dd          D ])}	t          j        
t          j        |	                    
*
fd|D             } | | g ||R d	|i|          S )
Nr   The input contains nan valuesrE   omitc                 D    g | ]}|t          j        |                    S r(   )r   isnan.0samples     r   
<listcomp>z!nan_policy_1d.<locals>.<listcomp>E  s*    EEEFfbhv.../EEEr!   r   r4   c                 "    g | ]}|          S r(   r(   )r  r  nan_masks     r   r  z!nan_policy_1d.<locals>.<listcomp>J  s     ===FfhY'===r!   r,   )r   anyr   
ValueErroroverride_propagate_funcsfullr   
logical_or)hypotestdata1dunpackerr   rD   r   r,   r$   kwdsr  r  s             @r   nan_policy_1dr  /  s    W 	B 	BFvbhv&&'' B !@AAAB	B 
#
#666
  	2 	2Fvbhv&&'' 2wy"&111112	2 
v		 	>EEfEEEFFxq	**H * E E=28F3C3CDD====f===F8HHGfGtGGGhG$GGHHHr!   z3ignore:Sample size too small for normal:UserWarningz0ignore:`kurtosistest` p-value may be:UserWarningz5ignore:all input arrays have length 1.:RuntimeWarningz7ignore:Degrees of freedom <= 0 for slice:RuntimeWarningz2ignore:Invalid value encountered in:RuntimeWarningz0ignore:divide by zero encountered:RuntimeWarning)r  r$   r  r   r   r   r  rD   )rE   r   r   rC   )r4   data_generator)mixedc
                     | t           j        hv rt          st          j        d           t          | |||||||||	
  
         d S )N	Too slow.)r   kruskalr   pytestskip_axis_nan_policy_test
r  r$   r  r   r   r   r  rD   rC   r  s
             r   test_axis_nan_policy_fastr  Q  s^    0 EM?"";"K   (D$	9f"JnF F F F Fr!   z1ignore:Degrees of freedom <= 0 for:RuntimeWarning)r   
all_finiter  c
                 6    t          | |||||||||	
  
         d S r   )r  r  s
             r   test_axis_nan_policy_fullr  v  s:    2 	hdIy&&
D.	J 	J 	J 	J 	Jr!   c
           
      T   |sd }t           j                            d          }
d}|||
|d}|	dk    rd}t          di |}n3|	dk    rd}d	|d<   t	          di |}n|	d
k    rd}d|d<   t	          di |}|g|g|z  z   fd|D             }fd|D             }t          j        |gz             }t          j        t          j                            D ]U\  }fd|D             }t          d |D                       }d}|dk    r|rt          j	        t          |          5  t          | ||g|R |||d	d| d d d            n# 1 swxY w Y   t          j	        t          |          5   | g ||R d|i| d d d            n# 1 swxY w Y   	 t          | ||g|R |||d	d|}nz# t          t          t          t          f$ rZ}t          |          t          fdt           D                       r t          j        |t           j                  }n Y d }~nd }~ww xY w|dk    rW|	dk    rQ| t&          vrHt          j        t*          t,                    5   | g ||R d|i|}d d d            n# 1 swxY w Y   n|dk    rj|	dk    rd| t&          vr[t/          j                    5  t/          j        dt,          t*                      | g ||R d|i|}d d d            n# 1 swxY w Y   n | g ||R d|i|} ||          }t5          ||d           ||<   Wt          j        |dd          }|dk    rM|	d
k    sGd}t          j	        t          |          5   | g ||R |d| d d d            n# 1 swxY w Y   d S |dk    rV|	dv rR| t&          vrIt          j        t*          t8                    5   | g ||R |d|}d d d            n# 1 swxY w Y   n | g ||R |d|} ||          }t5          ||d           d S )Nc                     | S r   r(   ra   s    r   r  z'_axis_nan_policy_test.<locals>.unpacker      Jr!   r   rY   )r   r   rC   r   r   r  r   r   r5   Tr  Fc                 <    g | ]}t          j        |d           S r   )r   r   )r  r  rC   s     r   r  z)_axis_nan_policy_test.<locals>.<listcomp>  s'    ???bk&$++???r!   c                 X    g | ]&}t          j        ||j        d          gz             'S r"  )r   broadcast_tor   )r  r  output_shapes     r   r  z)_axis_nan_policy_test.<locals>.<listcomp>  sD     $ $ $ oflfl26F5G&GHH $ $ $r!   c                      g | ]
}|         S r(   r(   )r  r  r   s     r   r  z)_axis_nan_policy_test.<locals>.<listcomp>  s    111&)111r!   c                 Z    g | ](}t          j        |                                          )S r(   )r   r   r  r   s     r   r  z)_axis_nan_policy_test.<locals>.<listcomp>  s.    HHHvBHV,,0022HHHr!   r   r   matchr   rD   c                 T    g | ]$}t                                        |          %S r(   str
startswithr  msgea_strs     r   r  z)_axis_nan_policy_test.<locals>.<listcomp>  s-    NNNCCKK**3//NNNr!   r   ignoregV瞯<rtolr   rF   >   r  r   gdy=r(   )r   r   default_rngr   r   zerosndenumerater  r  raisesr  r  RuntimeWarningZeroDivisionErrorUserWarningr,  too_small_messagesr	  r   too_small_special_case_funcswarnsr   r   warningscatch_warningsfilterwarningsr   r   r   )r  r$   r  r   r   r   r  rD   rC   r  r   r   data_gen_kwdsinherent_sizerU   data_bres_1d_r  contains_nanmessageres_1daear   res_1dbres_ndr0  r   r%  s           `                 @@@r   r  r    s     	 	 	 )


"
"C M"+m!#A AM  $55}55	:	%	%$(j!*;;];;	<	'	'$)j!*;;];;!?m_Y%>>L
 @???$???F$ $ $ $"$ $ $FXli[011Frx5566 5 511111&111HHHHHII 2  \ z999 D Dh D4 D D(1)3%+dD D ?CD D DD D D D D D D D D D D D D D D z999 H HG&G4GGGJG$GGGH H H H H H H H H H H H H H H 

	#Hfh J J J.7/9+1DJ J EIJ JGG N,={K 	 	 	WWFNNNN;MNNNOO ')RV44 	 &  ^z%A%A">>>08IJJJ N NhMMMMM*MMMN N N N N N N N N N N N N N N F""~'@'@">>>(** N N'2CEWXXXhMMMMM*MMMN N N N N N N N N N N N N N N
 (IFITIIIjIDIIC(3-- 	u5555q		[Q''F W^|%C%C1]:W555 	M 	MHLdLtLL*LLtLLL	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	f3H!H!H:::\,4EFFF 	S 	S(RDRTRRt
RRTRRC	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S hNNNN4JNNNN Xc]]F FF//////s   1EE	E	;FF	F	$F<<H3AH..H3+JJ	J	;0K77K;	>K;	5NNNO//O36O3c                  B   	 t          j        d          5  t          j        ddt           j        g          } t          j        |            d d d            d S # 1 swxY w Y   d S # t
          $ r-}t          j        d|j        j	         d           Y d }~d S d }~ww xY w)Nr   )allr4   r5   znan raises unexpected z	 in numpy)
r   errstateasarrayr   mean	Exceptionr  r  	__class____name__)rJ   es     r   skip_nan_unexpected_exceptionrU    s    N[W%%% 	 	
Aq"&>**AGAJJJ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	  N N NLQ[-ALLLMMMMMMMMMNs:   A' 6AA' AA' !A"A' '
B1"BB)r   r  r  emptyc	           	         |sd }|dk    r|dk    r| j         dv rt                       |dk    r|dk    r| j         dk    rt                       |dk    r|dk    r| j         dk    rt                       t          j                            d	          |d
k    rfdt          |          D             }	nfdt          |          D             }	|dk    rAfdt          |          D             }
t          |	|
          D ]\  }}t          j        ||<   n|dk    rd |	D             }	d |	D             }|dk    r|dvrd}t          j	        t          |          5   | g |	|R d |d| d d d            n# 1 swxY w Y   t          j	        t          |          5   | g ||R d |d| d d d            n# 1 swxY w Y   d S t          j                    5  t          j        d           d\  }}	 t          | ||g|R |||dd|}n;# t          t          t           t"          f$ r}d }t%          |          Y d }~nd }~ww xY w	  | g ||R d|i|}n&# t&          $ r}t%          |          }Y d }~nd }~ww xY w	  | g |	|R d |d|}n&# t&          $ r}t%          |          }Y d }~nd }~ww xY wd d d            n# 1 swxY w Y   s|s|rt)          fdt*          D                       }|sJ t,          t.          h}t%          |          |v sJ t%          |          |v sJ t          j                    5  t          j        d            | g ||R d|i|} | g |	|R d |d|}d d d            n# 1 swxY w Y    ||           ||          }}t1          ||d           t3          |          t3          |          z   }|$t1          ||d           |t3          |          z  }|D ]>}t          j        |j        t          j                  sJ t          j        |          sJ ?d S )Nc                     | S r   r(   ra   s    r   r  z3test_axis_nan_policy_axis_is_None.<locals>.unpacker$  r   r!   r  rE   )iqrr'   r2   r7   r:   rI   rM   r   r'   r   r:   r   rV  c                 :    g | ]}                     d           S ))r5   r   r   r  r   r   s     r   r  z5test_axis_nan_policy_axis_is_None.<locals>.<listcomp><  s%    ===q

6""===r!   c                 :    g | ]}                     d           S )r5   r   r[  r\  s     r   r  z5test_axis_nan_policy_axis_is_None.<locals>.<listcomp>>  s%    >>>

7##>>>r!   c                 B    g | ]}                     d           dk    S )r^  g?r[  r\  s     r   r  z5test_axis_nan_policy_axis_is_None.<locals>.<listcomp>A  s*    EEEqG$$s*EEEr!   c                 ,    g | ]}|t           j        z  S r(   )r   r   r   s     r   r  z5test_axis_nan_policy_axis_is_None.<locals>.<listcomp>E  s    333F333r!   c                 6    g | ]}|                                 S r(   ravelr   s     r   r  z5test_axis_nan_policy_axis_is_None.<locals>.<listcomp>G  s     666vFLLNN666r!   r   >   rV  r  r   r(  rF   error)NNNTr   rD   c                 T    g | ]$}t                                        |          %S r(   r+  r.  s     r   r  z5test_axis_nan_policy_axis_is_None.<locals>.<listcomp>w  s-    PPPcc&kk,,S11PPPr!   r1  gVs<r2  )rS  rU  r   r   r4  r   zipr   r  r7  r  r>  r?  simplefilterr  r8  r9  r:  r,  r   r  r;  r   r   r   list
issubdtypedtypenumberisscalar)r  r$   r  r   r   r   r  rD   r  rU   masksr  maskdata_raveledrG  eb_strec_strres1darI  res1dbebres1dcecok_msgdesired_warningsall_resultsitemr0  r   s                              @@r   !test_axis_nan_policy_axis_is_Noner{    s     	 	 	 w:{#:#: !H H H *+++
""z;'>'>z))%'''J$6$6x''%'''
)


"
"C  ====E),<,<===>>>>U9-=-=>>>  EEEEE)4D4DEEEe,, 	" 	"LFD6F4LL	"	:	%	%33d33366666LW7N!N!N1 ]:W555 	$ 	$H $d $$ $* $ $"$ $ $	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ ]:W555 	$ 	$H $l $$ $* $ $"$ $ $	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	 
	 	"	"  g&&&!1	"8\8 Id I I-6:*04I ICGI IFF 
,={K 	 	 	FWWFFFFFF		XR|RdRRRzRTRRFF! 	 	 	WWFFFFFF		XUtUdUU*UUPTUUFF! 	 	 	WWFFFFFF	'              ,  V V6 V PPPP=OPPPQQ6) ./DE6{{.....6{{.....$&& 	V 	V!(+++XR|RdRRRzRTRRFXUtUdUU*UUPTUUF	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V 	V Xf%%xx'7'7FFFF////v,,f-KU3333tF||# ! !}TZ33333{4      ! !s   E::E>E> F==GGK9HKI	.I?KI		KIK
J 'I;6K;J  KJK
J8J3.K3J88KKK4NN	N	zignore::UserWarningzignore::RuntimeWarning)r   rE   )sample_shape
axis_cases))r5   rY   rY   r   )Nr   r   )r   r5   )r4   r   )rY   r4   r5   r   ))
   )r   r   ))r   r   r   r4   c
           
         t           j        t           j        t           j        t           j        t           j        h}
dk    r| |
v rt          j        d           | t          hv rt          j        d           |sd }t          j
                            d          fdt          |          D             }d |D             }fdt          |          D             }t          ||          D ]\  }}t          j        ||<   |D ]T}t                    }|"t          j        t#                              }n%t%          |t&                    rd	||<   n
|D ]}d	||<   t)          |          } | | g ||R |d
d|          } | | g ||R |dd|          } | | g ||R |d
|	d|          } | | g ||R |d|	d|          }t          ||||          D ]q\  }}}}|j        |k    sJ t          j        ||          }t/          ||d           |j        |k    sJ t          j        ||          }t/          ||d           rVd S )Nr~  z$Sample too small; test raises error.z6`rankdata` used in testing doesn't support axis tuple.c                     | S r   r(   ra   s    r   r  ztest_keepdims.<locals>.unpacker  r   r!   r   c                 :    g | ]}                               S r(   r[  r  rE  r   r|  s     r   r  z!test_keepdims.<locals>.<listcomp>  s%    ???CJJ|$$???r!   c                 6    g | ]}|                                 S r(   )copyr   s     r   r  z!test_keepdims.<locals>.<listcomp>  s     111&111r!   c                 B    g | ]}                               d k     S )皙?r[  r  s     r   r  z!test_keepdims.<locals>.<listcomp>  s*    III1

<((3.IIIr!   r4   T)rC   keepdimsF)rC   r  rD   r   gؗҜ<)atol)r   skewtestkurtosistest
normaltestdifferential_entropyepps_singleton_2sampr  r  rM   r   r   r4  r   rf  r   rh  r   len
isinstanceintr   r   squeezer   )r  r$   r  r   r   r   r  r|  r}  rD   small_sample_raisesrU   nan_datar  r  rn  rC   expected_shapeaxr   res_basenan_resnan_res_baserr_basernrn_baser   s          `                   @r   test_keepdimsr    s    !>5+=u?O 5u7QS|##4G(G(G:;;;()))LMMM 	 	 	
)


"
"C?????eI.>.>???D11D111HIIIIIi8H8HIIIHHh//  vt 5 5l++<WS%6%677NN$$$ +'(t$$ + +B)*N2&&~..hxx ( ( ( (4$ ( ("&( ( ) )8HH -d -T - -u - -'+- - . .(88 ,X , , ,4-1j, ,&*, , - -  x !H( !HT !H !H274>!H !HBF!H !H I I '*#x*6'8 '8 	5 	5"Avr77n,,,,
14(((AAvE22228~----BT***BBe44444	5+5 5r!   )funnsampc                    d\  }}t           j                            d          }|                    |||f          } | | } | |ddi} | d |D                       }t          ||           t          ||           d S )N)   	   r   r,   Tc                 6    g | ]}|                                 S r(   rb  )r  xis     r   r  z5test_hypotest_back_compat_no_axis.<locals>.<listcomp>  s     '''r

'''r!   )r   r   r4  r   )	r  r  mnr   rJ   r   res2res3s	            r   !test_hypotest_back_compat_no_axisr    s     DAq
)


"
"C

E1a=!!A
#q'C3!D!!D3''Q'''((Dddr!   r   r4   r5   c           	         d}t           j                            d          }|                    |          }|                    |          }t          j        ||dd|           }t          j        ||dd|           }t          ||           d}t          j        t          t          j
        |                    5  t          j        ||dd| |            d d d            d S # 1 swxY w Y   d S )N)r  r  r  r   Tz	two-sidedr   z6mannwhitneyu() got multiple values for argument 'axis'r(  )r   r   r4  r   mannwhitneyur   r  r7  	TypeErrorreescape)rC   r   r   rJ   rK   res1r  rG  s           r   .test_axis_nan_policy_decorated_positional_axisr    s=    E
)


"
"C

5A

5AaD+t<<DaD+DAAADtFG	y	'(:(:	;	;	; E E1a{DtDDDDE E E E E E E E E E E E E E E E E Es   <C$$C(+C(c                     d} t           j                            d          }|                    |           }t           j        |d<   t	          j        |  d}t          j        t          t          j
        |                    5  t	          j        |           d d d            n# 1 swxY w Y   t          j        t          t          j
        |                    5  t	          j        |d|i d d d            d S # 1 swxY w Y   d S )NrY   r  r  r  r   r   r   r   r   z6kruskal() got an unexpected keyword argument 'samples'r(  )r   r   )r   r   r4  r   r   r  r  r7  r  r  r  )r   r   rJ   rG  s       r   .test_axis_nan_policy_decorated_positional_argsr    sm    E
)


"
"C

5AFAjM	M1FG	y	'(:(:	;	;	; ! !a    ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 
y	'(:(:	;	;	; % %q$!$$$% % % % % % % % % % % % % % % % % %s$   B%%B),B)C<<D D c                     d} t           j                            d          }|                    |           }t           j        |d<   t	          j        | }t	          j        |d         |d                   }t          ||           d}t          j        t          t          j        |                    5  t	          j        ||d         |d         d d d d            d S # 1 swxY w Y   d S )N)r5   r  r  r  r   r  r4   )rJ   rK   z/mannwhitneyu() got multiple values for argumentr(  )r   r   r4  r   r   r  r   r  r7  r  r  r  )r   r   rJ   r  r  rG  s         r   .test_axis_nan_policy_decorated_keyword_samplesr    s   
 E
)


"
"C

5AFAjMq!D!!---Dt?G	y	'(:(:	;	;	; / /A11..../ / / / / / / / / / / / / / / / / /s   5C!!C%(C%c                    d| j         v rt          j        d           t          j                            d          }|sd }|                    |ddf          }t          j        |           }	t          j	        |	          }
 | | g ||R dd	i|          } | |
g ||R dd	i|          }t          ||d
           d S )Nr'   z0Can't pickle functions defined within functions.r   c                     | S r   r(   ra   s    r   r  z8test_axis_nan_policy_decorated_pickled.<locals>.unpacker+  r   r!   r5      r   rC   r   g-q=r2  )rS  r  r  r   r   r4  uniformpickledumpsloadsr   )r  r$   r  r   r   r   r  r   rU   pickled_hypotestunpickled_hypotestr  r  s                r   &test_axis_nan_policy_decorated_pickledr    s    X&&&FGGG
)


"
"C  	 	 	 ;;Y2.;//D|H--&6778HH;d;T;;;;d;;<<D8&&EEtEEE"EEEFFDD$U++++++r!   c            	      >   t          d          D ]} t          g d|           D ]}t          t          |                    D ]}t          j        |          f}t
          j                            ||          }|t          j	                    5  t          j
        ddt                     t          j
        ddt                     |d                             |          }d d d            n# 1 swxY w Y   t          j                            ||           ׌d S )N   r  r1  r   r   r   r   )r   r   r  r   r5  r   _axis_nan_policy_check_empty_inputsr>  r?  r@  r8  rP  testingr   )r   comborC   r   output	references         r   test_check_empty_inputsr  6  sr    1XX ? ?2999a@@ 	? 	?Ec%jj)) ? ?8E??,/CCGDHJ J%!022 ? ? /$&;^M M M /$&A>S S S$+AJOOO$>$>	? ? ? ? ? ? ? ? ? ? ? ? ? ? ? J++FI>>>?	?? ?s   AC.	.C25C2c                 b   t          d | D                       }||dk    r| |z   n|}t          d|dz             D ]q}| |k    r
t                      }| D ]@}||j        k    r3|j        |          dk    r!|                    |j        |                     At          |          dk    r dS rdS )Nc                     g | ]	}|j         
S r(   ndim)r  arrs     r   r  z/_check_arrays_broadcastable.<locals>.<listcomp>\  s    ---s#(---r!   r   r4   FT)maxr   setr  r   addr  )arraysrC   n_dimsdimdim_lengthsr  s         r   _check_arrays_broadcastabler  N  s     --f---..F#'199$$Qq!! 
 
44<<ee 	1 	1Cch39cT?a#7#7	3$000{a55  4r!   c           	      f   | t           j        t           j        hv rt          st	          j        d           | t          v rd}t	          j        |           |d }d }g d}	 |||	          D ]@}
t          d |
D                       st          d |
D                       }t          | |          D ]}	 t           j
                            |
||	          }t          j                    5  t          j        d
dt                     t          j        d
dt                     t!          j        ||          t           j        z  t!          j                  }fdt          |          D             d d d            n# 1 swxY w Y   | t(          v rY | g g gt+          |
          z  |R i |}t-           ||                    }t          |          D ]}||         |         |<   d         j        r`| t0          vrW|dk    rt2          nt4          }t	          j        t8          |          5   | g |
|R d|i|}d d d            n# 1 swxY w Y   nWt          j                    5  d}t          j        d
|t8                      | g |
|R d|i|}d d d            n# 1 swxY w Y    ||          }t          |          D ]}t;          ||         |                    :# t<          $ r t?          |
|rd n|          rJ d}t	          j         t<          |          5  t           j
                            |
||           d d d            n# 1 swxY w Y   t	          j         t<          |          5   | g |
|R d|i| d d d            n# 1 swxY w Y   Y w xY wBd S )Nr  z4Doesn't follow the usual pattern. Tested separately.)reasonc                 "    | d         | d         fS )Nr   r4   r(   ra   s    r   rb   ztest_empty.<locals>.<lambda>|  s    AA/ r!   c              3   j   K   d fdt          |           D             }t          | E d {V  d S )Nc              3   j   K   | D ]-}t          g d|          D ]}t          j        |          V  .d S )Nr  )r   r   r5  )r  r   r  s      r   small_sample_generatorzHtest_empty.<locals>.small_data_generator.<locals>.small_sample_generator  sX       * *:999aHH * *E(5//))))** *r!   c                 &    g | ]}           S r(   r(   )r  r   r  r  s     r   r  z<test_empty.<locals>.small_data_generator.<locals>.<listcomp>  s%    III1&&v..IIIr!   )r   r   )r   r  gensr  s    ` @r   small_data_generatorz(test_empty.<locals>.small_data_generator~  s`      	* 	* 	* JIIIIi8H8HIIID>!!!!!!!!!r!   r4   r5   rY   c              3   ,   K   | ]}|j         d k    V  dS )r   Nr   r   s     r   	<genexpr>ztest_empty.<locals>.<genexpr>  s)      ::6;!#::::::r!   c              3   $   K   | ]}|j         V  d S r   r  r   s     r   r  ztest_empty.<locals>.<genexpr>  s$      99vv{999999r!   )r   r1  r   r   r   c                 \    g | ](}t          j                                                  )S r(   )r   rO  r  )r  r   expecteds     r   r  ztest_empty.<locals>.<listcomp>  s+    VVV
8==?? ; ;VVVr!   r   r4   r(  rC   zall input arrays have length 1/Array shapes are incompatible for broadcasting.)!r   r  friedmanchisquarer   r  r  r  r  r  r   r  _broadcast_concatenater>  r?  r@  r8  r   rP  r   r   empty_special_case_funcsr  rh  r   r<  r   r   r=  r   r   r  r  r7  )r  r$   r  r   r   r   r  r  r  r  r   max_axisrC   concatrn  	empty_valr   rG  r   r/  r  s                       @r   
test_emptyr  o  s$   
 EM5#:;;;K;K   +++G6""""//" " " YYF''	6:: ;A ;A ::'::::: 	9999999 8)X.. 2	A 2	AD0A /FFwPTNT G V V,.. W W+ "7I I I+ "=~O O O!wvD999BFBH8H--DVVVVU9EUEUVVVHW W W W W W W W W W W W W W W 777 ( MB4G+< M M M M M MI $XXi%8%8 9 9I"9-- 9 9,5aLD))A;# 
K8T(T(T8@A44$9 &8HHH K K&hJJ$JJJTJTJJK K K K K K K K K K K K K K K "022 K K> /#?QRRR&hJJ$JJJTJTJJ	K K K K K K K K K K K K K K K
 hsmmy)) 6 6A Q!55556  A A A6w?E7Ott4Q Q Q Q Q
 L]:W=== Y Y*AA'4QWXXXY Y Y Y Y Y Y Y Y Y Y Y Y Y Y]:W=== A AH@g@@@@4@4@@@A A A A A A A A A A A A A A AAO2	A;A ;As   :5K0/B	F8K0FK0FB*K06IK0IK0IK01-J*K0*J..K01J.2<K00=N,-"M	N,MN,"M#N,N	N,N!!N,$N!%N,+N,c               #   H   K   t           D ]} | \  }}}}}}}|dk    r| V  d S )Nr4   )axis_nan_policy_cases)caser  r$   r  r   r   r   r  s           r   paired_non_broadcastable_casesr    sJ      %  GKD$iFH>>



	 r!   c                    t           j                            d          d}|r.fdt          |          D             }	t	          |	|          }|.d}
t          j        t          |
          5   | g |	|R i | d d d            n# 1 swxY w Y   |sd S                     ddd	          fd
t          |dz
            D             }t                    |xx         dz  cc<                       	          }t          j        t          |
          5   | |g||R i | d d d            d S # 1 swxY w Y   d S )Nl   T;]L Tc           	      h    g | ].}                                         d dd                     /S )r5   d   r   )r   integersr\  s     r   r  z*test_non_broadcastable.<locals>.<listcomp>  sI     . . . ::3<<3Q<#?#?:@@ . . .r!   r   r  r(  r5   r  r   c                 <    g | ]}                                S )r   r[  )r  r   r   r   s     r   r  z*test_non_broadcastable.<locals>.<listcomp>  s'    GGGqCJJEJ**GGGr!   r4   )
r   r   r4  r   r  r  r7  r  r  rh  )r  r$   r  r   r   r   r  rC   get_samplesr   rG  most_samplesother_sampler   r   s                @@r   test_non_broadcastabler    s/    )


/
/CK
 F. . . .!),,. . . 2'EEE	  F @G	z	1	1	1 * *)')D)))D)))* * * * * * * * * * * * * * *  
 LLBQL''EGGGGGE)A+4F4FGGGLKKE	$KKK1KKK::5:))L	z	1	1	1 = =<<t<<<t<<<= = = = = = = = = = = = = = = = = =s$   1BBB!D==EEc                     t           j                            d          } |                     d          }|                     d          }|dk     }t           j                            ||          }t          j        t           j                  j        }t          j        |t           j	                   }t          j        |t           j	                   }t           j
        |d<   t           j	        |d<   ||d<   t           j
        |d<   t           j	        |d	<   ||d
<   t          ||g          \  }}|\  }	}
||k    r||k    sJ ||k    sJ |j        }|||j        <   t           j                            |	|           |
|u sJ d S )NiT=0)r        r   g      ?)rY   r   r4   )r   r  r5   )r  r   rY   r  ry   r   )r   r   r4  mamasked_arrayfinfofloat64r  	nextafterinfr   r
   rU   rn  r  assert_array_equal)r   ABrn  	max_float
max_float2
max_float3
out_arrayssentinelA_outB_outA_references               r   "test_masked_array_2_sentinel_arrayr    sb   
)

	
*
*C

<  A

2As7D
1d##A $$(Ii"&11Jj26'22JAgJAgJAgJ6AaD6AaDAaD <QFCCJLE5 	!!J(>(>(>?z!!!! &K"KJ!!%555A::::::r!   c                     t          j        t           j                  j        } t          j        t           j                  j        }t          j        dd| gt           j                  }t           j                            g dt           j        g d          }t           j                            g dt           j        g d          }t          ||g          \  }}|\  }}|| dz
  k    sJ |j
        t           j        k    sJ t          ||d         ||d	         g           ||u sJ t          |t           j        j                  rJ t          ||g          \  }}|\  }}	||k    sJ |j
        t           j        k    sJ t          ||d         ||d	         g           t          |t           j        j                  rJ t          |	t           j        j                  rJ t          j        t           j                  j        t          j        t           j                  j        }}
t          j        |
|dz   t           j                  }t          j        |t"                    }t          j        |t"                    }d
|d<   t           j                            ||          }t          |g          \  }}||
dz   k    sJ d
|d<   t           j                            ||          }d}t%          j        t(          |          5  t          |g           d d d            n# 1 swxY w Y   t           j                            g dg dt           j                  }t-          j        |          j
        t           j        k    sJ d S )Nr4   r5   rj  )r4   r5   r4   r   r4   r   )rj  rn  r   r   r   r   r   Trn  z7This function replaces masked elements with sentinel...r(  r  )rn  rj  )r   iinfoint16r  r  
complex128arrayr  int8r
   rj  r   r  MaskedArrayminarange
zeros_likeboolr  r7  r  float32r   gmean)max16max128cabcr  r  a_outb_outc_outmin8max8mask1mask0a1a0rG  s                    r   test_masked_dtyper2    s`    HRX"Ehr}%%)G 	!Qbh///A
IIIRW999==A
IIIR]CCA <QFCCJLE5uQw;"(""""EAaD(AbE2333A::::%!233333 <QFCCJLE5w;"-''''EAaD(AbE2333%!233333%!233333 "'""&(9(9(=$D
	$Qbg...AM!4(((EM!4(((E E!H	QU	#	#B;RDAAJtAv E!H	QU	#	#BGG	z	1	1	1 / /(".../ / / / / / / / / / / / / / / 	IIIIIIRZ@@A;q>>2:------s   L((L,/L,c                     g d} g d}t          j        | |          }dddt          j        dg}t          j        | |d          }t          j                            ||           g d	}g d
}t          j                            ||          }t          j        | |          }t          j                            ||           dddt          j        ddg}g d}	t          j                            ||	          }t          j        | |d          }
t          j                            |
|           dddt          j        ddg}g d}t          j                            ||          }t          j        | |d          }t          j        | |d          }t          j                            ||           t          j                            ||           d S )N)               )r   r     r   r   r  r9  r   r   )rD   )r   r  r9    r   )FFFTFr  r:  )FFFFTF)FFFTTFrE   r   )r   r  r   r   r  r  r  r  )malesfemalesr   females2r  females3mask3r  females4mask4res4females5mask5res5res6s                  r   test_masked_stat_1drG  P  s    !  EG

UG
,
,C BBFB'HeX&AAADJ!!$,,, &%%H...Eu!!(!77HeX..DJ!!$,,, BBFD"-H555Eu!!(!77HeX&AAADJ!!$,,, BBFD"-H444Eu!!(!77HeX+FFFDeX'BBBDJ!!$,,,J!!$,,,,,r!   zignore:After omitting NaNs...z(ignore:One or more axis-slices of one...c                    t           j                            d          }|                    d          }|                    d          }|                    d          }|dk     }g d}t           j                            ||          }t           j                            ||          }|                                }	t           j        |	|<   |                                }
t           j        |
|<   t          j        |	||
d| 	          }t          j        |||| 
          }t           j	        
                    ||           d S )Nl   36 rY   r   r  )r   r  )r   r4   皙?)FFFTr  r   rD   rC   r   )r   r   r4  r  r  r  r   r   r  r  r  )rC   r   r&  r'  r(  mask_amask_ca_maskedc_maskeda_nansc_nansr   r  s                r   test_masked_stat_3drR  t  s    )



+
+C

9A

6A

6AWF(((Fu!!!&!11Hu!!!&!11HVVXXFVF6NVVXXFVF6N
-6f4
H
H
HC=1hT:::DJ!!#t,,,,,r!   c                  $   d\  } }d}t           j                            d          }|                    | |          }|                    | |          }|                    | |          dk     }|                    | |          dk     }|                    | |          dk     }|                    | |          dk     }	d|dd d f<   |                                }
|                                }t           j        |
||z  <   t           j        |||	z  <   t           j                            ||	          }t           j                            ||	          }t           j        ||<   t           j        ||	<   t           j                            ||	          }t           j                            ||		          }t           j        ||<   t           j        ||<   t           j                            |||z  	          }t           j                            |||	z  	          }t          j	        |
|d
|          }t          j	        ||d
|          }t          j	        ||d
|          }t          j	        ||d|          }t          j	        ||d|          }t           j
                            ||           t           j
                            ||           t           j
                            ||           t           j
                            ||           d S )NrY   r   r   r   r  rJ  333333?Tr5   r  r   rK  r   rE   )r   r   RandomStaterandr  r   r  r  r   wilcoxonr  r  )r  r  rC   r   r&  r'  mask_a1mask_a2mask_b1mask_b2rP  b_nans	a_masked1	b_masked1	a_masked2	b_masked2	a_masked3	b_masked3r   r  r  r  rB  s                          r   test_mixed_mask_nan_1rd    s    DAqD
)


"
"CAAAAhhq!nns"Ghhq!nns"Ghhq!nnt#Ghhq!nnt#GGAqqqDMVVXXFVVXXF "F7W "F7W""17"33I""17"33IIgIg""17"33I""17"33IIgIg""1Gg,="??I""1Gg,="??I
.F
F
F
FC>)Y6MMMD>)Y6MMMD>)Y7NNND>)Y%0t= = =D J!!$,,,J!!$,,,J!!$,,,J!!$,,,,,r!   c                     dt           j        dgt           j        t           j        t           j        gg ddt           j        dgdt           j        dgg dg} g dg dg dg dg dg dg}t           j                            | |	          }g d
g}t	          j        ddgg d
          }t	          j        g dg d
          }t	          j        ||dd          }t           j        t           j        t           j        |j        |j        |j        g}t           j        t           j        t           j        |j        |j        |j        g}t           j        	                    |j        |           t           j        	                    |j        |           t	          j        ||dd          }t           j        t           j        t           j        t           j        |j        |j        g}t           j        t           j        t           j        t           j        |j        |j        g}t           j        	                    |j        |           t           j        	                    |j        |           d S )Nr4   r5   r  rY   )r4   r   r4   r  r4   r4   r4   r  r  r   r  r   r   r   rK  rE   )
r   r   r  r  r   ranksumsr   r   r  r  )	r&  rn  rN  r'  ref1ref2r   stat_refp_refs	            r   test_mixed_mask_nan_2rm    s    RVQ"&"&"&1999
RVQ!RVQ	4AIIyyy)))IIyyy)))-Du!!!$!//H	A>1a&))),,D>)))YYY//D .1b
A
A
AC@HVRVRV[$+t{4EJ!!#-:::J!!#*e444 .12
F
F
FC8HVRVRVVT[$+/EJ!!#-:::J!!#*e44444r!   c                      d} t           j                            d          }|                    |           }t          j        |dd i}t          j        |ddi}t           j                            ||           d S )Nr  r   rC   r  )r   r   r4  r   r  r  r  )r   r   rJ   r   r  s        r   test_axis_None_vs_tuplero    ss    E
)


"
"C

5A
-
&
&
&C=!,),,DJ!!#t,,,,,r!   c                  8   t           j                            d          } |                     d          }|                     d          }t          j        ||          \  }}t	          j        |                                |                                          }t	          j        ||d           }t	          j        ||d          }t	          j        |                                |                                          }||k    sJ ||k    sJ ||k    sJ d S )Nr   )r  r4   )r4   r  r   r  )r   r   r4  broadcast_arraysr   r  rc  )	r   rJ   rK   x2y2res0r  r  r  s	            r   )test_axis_None_vs_tuple_with_broadcastingru    s     )


"
"C

6A

6A A&&FBaggii33Da...Da000Dbhhjj"((**55D4<<<<4<<<<4<<<<<<r!   )r4   c                    t           j                            d          }d}d}|                    |          }|                    |          }| }t          d | D                       } t	          |           } t          t          |                     t          |           k    r`d}t          j        t          t          j        |                    5  t          j        |||           d d d            n# 1 swxY w Y   d S | d         dk     s| d         d	k    r`d
}t          j        t          t          j        |                    5  t          j        |||           d d d            n# 1 swxY w Y   d S t          j        |||          }h dt          |           z
  }	t          t          |	                    }	|}
g d}||	         ||	<   t          j        ||          }|
j        |	         }t          j        |
| d          }
t          j        || d          }t          j        |
|df          }
t          j        ||df          }t          j        |
|d          }t           j                            ||           d S )Nr   rg  )r4   r   c                 (    g | ]}|d k    r|nd|z   S )r   rY   r(   )r  r   s     r   r  z*test_other_axis_tuples.<locals>.<listcomp>  s(    999qQ11AE999r!   z*`axis` must contain only distinct elementsr(  r   r   r5   z0`axis` is out of bounds for array of dimension 3>   r   r4   r5   )r4   r4   r   )r4   r5   r4   )r   r   r4  r   sortedr  r  r  r7  r   r  r  r   r  nextiterr$  r   r   r   r  r  )rC   r   shape_xshape_yrJ   rK   axis_originalrG  r   not_axisrr  shape_y_broadcastedrs  r  r  s                  r   test_other_axis_tuplesr  	  s    )


"
"CGG

7A

7AM 99D999::D$<<D
3t99~~T"">]9BIg,>,>??? 	9 	9q!-8888	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9Aw{{d2hllD]9BIg,>,>??? 	9 	9q!-8888	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9

Q
6
6
6C yy3t99$HDNN##H	
B#))$+H$5!	/	0	0B
A	Rv	&	&B	Rv	&	&B	BB	 	 B	BB	 	 Bb"1---DJ!!#t,,,,,s$   C88C<?C<E00E47E4zweighted_fun_name, unpackerr#  c                     | S r   r(   rh   s    r   rb   rb   ?      A r!   hmeanc                     | S r   r(   rh   s    r   rb   rb   @  r  r!   pmeanc                     | S r   r(   rh   s    r   rb   rb   A  r  r!   r@   c                     | j         | j        fS r   )r   r   rh   s    r   rb   rb   B  s    qx&= r!   c                    | dk    rd nt          t          |           fd}d\  }}d}t          j                            d          }|                    ||f          }|                    ||f          }|                    ||f          dk     }	|                    ||f          d	k     }
|                    ||f          d
k     }|                    ||f          d
k     }d|	dd d f<   |                                }|                                }t          j        ||	|
z  <   t          j        |||z  <   t          j        	                    ||	          }t          j        	                    ||          }t          j        ||
<   t          j        ||<   t          j        	                    ||
          }t          j        	                    ||          }t          j        ||	<   t          j        ||<   t          j        	                    ||	|
z            }t          j        	                    |||z            }t          j                    5  d}t          j        d|t                      |||d|          } |||d|          } |||d|          } |||d|          } |||d|          }d d d            n# 1 swxY w Y   t          j                            ||           t          j                            ||           t          j                            ||           t          j                            ||           d S )Nr  c                 *    t          j        | fddi|S )NpgzG?)r   r  )r&  r%   s     r   weighted_funz6test_mean_mixed_mask_nan_weights.<locals>.weighted_funK  s    ;q33D3F333r!   c                  &      | i |          S r   r(   )r$   r%   r  r  s     r   funcz.test_mean_mixed_mask_nan_weights.<locals>.funcP  s"    xd5f55666r!   rT  r   l    r   r  rJ  rU  Tr5   r  r   r1  r   )r6   rD   rC   r   rE   )getattrr   r   r   r4  r  r  r   r  r  r>  r?  r@  r8  r  r  )weighted_fun_namer  r  r  r  rC   r   r&  r'  rY  rZ  r[  r\  rP  r]  r^  r_  r`  ra  rb  rc  rG  r   r  r  r  rB  r  s    `                         @r    test_mean_mixed_mask_nan_weightsr  9  s   " G##	4 	4 	4 	4 u&7887 7 7 7 7 7 DAqD
)



+
+C!Q  A!Q  Akk1vk&&,Gkk1vk&&,Gkk1vk&&-Gkk1vk&&-GGAqqqDMVVXXFVVXXF "F7W "F7W""17"33I""17"33IIgIg""17"33I""17"33IIgIg""1Gg,="??I""1Gg,="??I		 	"	" U U-'>BBBd66f4HHHtIyV$OOOtIyV$OOOtIyW4PPPtIy[tTTTU U U U U U U U U U U U U U U J!!$,,,J!!$,,,J!!$,,,J!!$,,,,,s   A)KKKc                  x   d} t          j        t          |           5  t          j        g dd           d d d            n# 1 swxY w Y   d} t          j        t          |           5  t          j        g dd           d d d            n# 1 swxY w Y   d} t          j        t          |           5  t          j                     d d d            n# 1 swxY w Y   d	} t          j        t          |           5  t          j        g dd
t
          g dd           d d d            d S # 1 swxY w Y   d S )Nz"got an unexpected keyword argumentr(  r  T)invalid_argz! got multiple values for argument)r&  z&missing 1 required positional argumentz7takes from 1 to 4 positional arguments but 5 were givenr   rf  r  )r  r7  r  r   r#  float)rG  s    r   test_raise_invalid_args_g17713r    s3    3G	y	0	0	0 1 1III400001 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2G	y	0	0	0 ' 'III&&&&' ' ' ' ' ' ' ' ' ' ' ' ' ' ' 7G	y	0	0	0                 HG	y	0	0	0 8 8IIIq%B7778 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8sG   AA
A+BBB8CCC "D//D36D3rj  c                      G fdd          }dgdz  g dz   t          j         ||                     }|j        dk    sJ |j        dk    sJ d S )Nc                   (    e Zd Zd Zd fd	Zd ZdS )&test_array_like_input.<locals>.ArrLikec                 "    || _         || _        d S r   )_x_dtype)selfrJ   rj  s      r   __init__z/test_array_like_input.<locals>.ArrLike.__init__  s    DGDKKKr!   Nc                 :    t          j        | j                  S )Nr  )r   rO  r  )r  rj  r  rJ   s      r   	__array__z0test_array_like_input.<locals>.ArrLike.__array__  s    :at{3333r!   c                 *    t          | j                  S r   )r{  r  )r  s    r   __iter__z/test_array_like_input.<locals>.ArrLike.__iter__  s    
 == r!   )NN)rS  
__module____qualname__r  r  r  rh   s   r   ArrLiker    sQ        	  	  	 	4 	4 	4 	4 	4 	4	! 	! 	! 	! 	!r!   r  r4   r5   rI  r  )r   r]   r{   )rj  r  r   rJ   s      @r   test_array_like_inputr    s    
! ! ! ! ! ! ! ! ! ! 
A			A
*WWQe,,,
-
-C8q====9>>>>>>r!   )r   F)F)FT)	itertoolsr   r   r   osr  r  r  r>  numpyr   numpy.testingr   r   scipyr   r	   scipy.stats._axis_nan_policyr
   r   r   r   r   r   scipy._lib._utilr   scipy.conftestr   r  environrG   r   r    r)   r2   r7   r:   r<   rA   rM   rS   rX   r  r   dictrh  r  rX  r#  r  r  	trim_meansemrY  kurtosisskewkstatkstatvarmomentjarque_berattest_1sampr  	ttest_rel	ttest_indr]   r  	variationr  brunnermunzelmoodshapiroks_1sampndtrks_2sampkstestlevenefligneransarientropyr  r  r  cramervonmisescramervonmises_2sampr  bartletttmeantvartmintmaxtstdtsemcircmeancircvarcircstdf_onewayalexandergovernr@   lmomentchatterjeexispearmanrhopointbiserialr
kendalltaurI   
linregresstheilslopessiegelslopespower_divergence	chisquaremedian_abs_deviationr  r;  inaccuracy_messagesr  r  r<  r   r   r  markr@  parametrizer  r   r  r  rU  r{  r  r  r  r  r  r  r  r  slowr  r  r  r  r2  rG  rR  rd  rm  ro  ru  rh  r  r  r  r  r"  r  r  r(   r!   r   <module>r     s   K J J J J J J J J J 				 				        7 7 7 7 7 7 7 7                T T T T T T T T T T T T T T T T ' & & & & & . . . . . . c"*..4455& & &  5 5 5
S S S4 4 4
' ' '
> > >
3 3 3< < < <@ @ @ @n ]EEGGTTVVQ5$7	n
 ^Y1eT:n 8\":Aq%Nn ^Z&&!11a,,.n ^UUWWddffaD,,.n ^UUWWx61d<<>n [%%''44661a?n [%%''44661a?n ['44661a?n  _gttvvq!UNNC!n" YAunn=#n$ YAunn=%n& ^UUWWddffaE>>B'n( Z$$&&!Q~~>)n* [%%''44661a?+n, ^UUWWddffaE>>B-n. \5577DDFFAq%@/n0 \5577DD1v...1eTB1n2 Aud;3n4 1#($$&&!Q5n8 _eeggttvvq!T3FG9n: _eeggttvvq!U4GH;n< ]5$%%tTTVVQ5$G=n> ]5?##UUWWddffaD$G?n@ ]5?##UUWWddffaE4HAnB Z$$&&!Q.I.IJCnD $$&&!Q~~NEnF _eeggttvvq!UNNCGnH eeggttvvq!T4@InJ %%''44X#>#>#>1eTRKnL Z"aE40MnN ]EEGGRAud3OnP ^gl_ddffaECCEQnT ^gl_ddy&A&A&A1aCCEUnX ^gl_ddv&>&>&>1eCCEYn\ ^UUWWddffaECCE]n` \GL?DDFFAq%CCEand \5577DDFFAq%CCEenh \5577B1eT2inj ]EEGG	dKK5$knn \5577B1eT2onp ]EEGGTTVVQ5..Aqnr ]EEGGTTVVQ4@snt ^UUWWddffaE48unv $$&&!Qt<wnx uuww1eT:ynz GL?DDFFAq%,,.{n~ $$l*C*C*CQ5,,.nB $$&&!QtDCnD ^UUWWb!Qt4EnF [%%''2q!UNN;GnH Z"aE>>:InJ Z"aE>>:KnL Z"aE>>:MnN Z"aE>>:OnP Z"aE>>:QnR ^UUWWddffaE>>BSnT ]EEGGTTVVQ5..AUnV ]EEGGTTVVQ5..AWnX ^UUWWb!Qt4YnZ ^UUWW{E2Aq%F[n\ EEGGRAu,,.]n` EEGGRAud;anb ]EEGGTTVVQ52D2DEcnd uuwwAq$=enf EEGGTTVVQ5..Agnh EEGGTTVVQ4@inj UUWWddffaE>>:knl $$&&!Q,,.mnp At,,.qnt 5577DDFFAq$==?unx uuww1d==?yn| At==?}n@ 5577DDFFAq$==?AnD uuww1d557EnH AtU;InJ AtU;KnL $$&&!Qe<MnN $$&&!Qe<OnP 
5577DDFFAq%8QnR UUWWddffaE4@SnT _eeggttvvq!UD9UnV $$&&!Q~~NWnX $$3---AunnEYnZ UUWWddsmmmQ5..I[n d   F GHJ  "J(<e>OP  "M5?E<RS  !&u@VW  "'$ $ $ $P 8<     @A$UTI I I I ID QRRNOOSTT
 UVV PQQNOO 01FH H,)GHH&4((*Z88F F 98 )( IHH H PO RQ WV UT PO SR*F  !J [ UVV[ RSS[ WXX
 [ STT [ TUU[ RSS[ 45JL L[l-KLL[fuuR||44[.@B BJ JB B 54 MLL L TS VU UT YX TS WV,Jx0 x0 x0|N N N  01FH H,)GHH*EG Gs! s!G G IHH H
s!z 122455'<== 01FH H" /5 /5 H H >= 65 32/5d ) ;* >1-/0 0	 	0 0	 &9--E E .-E$% % %$/ / /$  01FH H, ,H H,*? ? ?0  B  01FH HUA UAH H UAp   !Q(( 07799; ;= =; ; )(=:     F 6. 6. 6.r  -  -  -F ;<<FGG&55Q<<00- - 10  HG =<-, ;<<FGG,- ,-  HG =<,-^ ;<<FGG'5 '5  HG =<'5T- - -  $ &ll55Q<<;;<<yHJ J+- +-J J+-\ ;<<FGG"	++	++	++	==>	 8- 8-   HG =<8-v8 8 8* 28RZ"GHH  IH  r!   