
    Ng                        d dl mZ d dlZd dlZd dlmc mZ d dlmc m	Z	 d dl
mZmZmZ d dlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZY d dlZm[Z[ ej\        Z\ddZ] G d d	          Z^ G d
 d          Z_ G d d          Z`d ZadS )    )reduceN)assert_assert_raisesassert_equal)KMaskTypeMaskedArrayabsoluteaddallallcloseallequalalltruearangearccosarcsinarctanarctan2arrayaveragechooseconcatenate	conjugatecoscoshcountdivideequalexpfilledgetmaskgreatergreater_equalinnerisMaskedArrayless
less_equalloglog10	make_maskmaskedmasked_arraymasked_equalmasked_greatermasked_greater_equalmasked_insidemasked_lessmasked_less_equalmasked_not_equalmasked_outsidemasked_print_optionmasked_valuesmasked_wheremaximumminimummultiplynomasknonzero	not_equalonesouterproductputravelrepeatresizeshapesinsinhsometruesortsqrtsubtractsumtaketantanh	transposewherezeros)pickle c                 Z    t          | |          }|st          d| d|  d|            |S )NzNot eq:
z
----)r   print)vwmsgresults       V/var/www/html/ai-engine/env/lib/python3.11/site-packages/numpy/ma/tests/test_old_ma.pyeqr\      sC    a^^F -+++q++++,,,M    c                      e Zd Zd Zd Zej                            dddg          d             Zd Z	d Z
d	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Z d Z!d  Z"d! Z#d"S )#TestMac                    t          j        ddddt          dz  dddddddg          }t          j        g d	          }d}g d
}g d}t          ||          }t          ||          }t          j        g d          }t          |g d          }	t          j        |d|          }
|j        }|                    d           |||||||||	|
|f| _        d S )N      ?g              @      @      @      $      $@      @)rd           rg   rb   g            rh   re   rf   ra   rh   rg   )   r   r   r   r   r   rj   r   r   r   r   r   )r   r   rj   r   r   rj   rj   r   r   r   r   rj   mask)g      rh         ?g?r   rj   r   r   @xD)npr   pirP   rD   set_fill_valuedselfxya10m1m2xmymzzmxfss               r[   setup_methodzTestMa.setup_method&   s    Hb"b#r#vr2tS"b"MNNHJJJKK1111111212H&&&''1<<<(((Xb%##G
%   QRRQB:r]   c                    | j         \  }}}}}}}}}	}
}t          t          |                      t          t          |                     t          t	          |          |           t          |j        |           t          |j        |j                   t          |j        t          d |                     t          t          |          t          |          t          d |          z
             t          t          ||
                     t          t          t          |d          |
                     t          t          ||                     d S )Nc                     | |z  S N rv   rw   s     r[   <lambda>z)TestMa.test_testBasic1d.<locals>.<lambda>=   s
    Q r]   c                     | |z   S r   r   r   s     r[   r   z)TestMa.test_testBasic1d.<locals>.<lambda>>   s
    QU r]   ro   )rs   r   r$   r   rD   dtypesizer   r   lenr\   r   rt   s               r[   test_testBasic1dzTestMa.test_testBasic1d5   s.   48F1AsBBAr2qM!$$$%%%b!!"""U2YY"""RXq!!!RXqw'''RWf%6%6::;;;U2YYB&1B1BB*G*G GHHH2r

6"e$$b))***1b		r]   r         )      c                    | j         \  }}}}}}}}	}
}}||_        ||_        ||_        ||_        ||_        t          t          |                      t          t          |                     t	          t          |          |           t	          |j        |           t	          |j        t          d |                     t	          t          |          t          |          t          d |          z
             t          t          ||                     t          t          t          |d          |                     t          t          ||                     d S )Nc                     | |z  S r   r   r   s     r[   r   z)TestMa.test_testBasic2d.<locals>.<lambda>Q   s
    !a% r]   c                     | |z   S r   r   r   s     r[   r   z)TestMa.test_testBasic2d.<locals>.<lambda>R   s
    a!e r]   ro   )rs   rD   r   r$   r   r   r   r   r   r\   r   )ru   r   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   s               r[   test_testBasic2dzTestMa.test_testBasic2dC   s?    59F1AsBBAr2qM!$$$%%%b!!"""U2YY"""RXq!!!RWf%7%7;;<<<U2YYB&1C1CR*H*H HIII2r

6"e$$b))***1b		r]   c                 	   | j         \  }}}}}}}}}	}
}t          ddgddgg          }t          |ddgddgg          }t          t	          ||z  ||z                       t          t	          ||z   ||z                        t          t	          ||z
  ||z
                       dD ]4}|                    |          }|                    |          }|                    |          }|                    |          }|
                    |          }
t          t	          | |                      t          t	          ||z   ||z                        t          t	          ||z
  ||z
                       t          t	          ||z  ||z                       t          j        dd          5  t          t	          ||z  ||z                       d d d            n# 1 swxY w Y   t          t	          ||z   ||z                        t          t	          ||z
  ||z
                       t          t	          ||z  ||z                       t          j        dd          5  t          t	          ||z  ||z                       d d d            n# 1 swxY w Y   t          t	          ||z   ||z                        t          t	          ||z
  ||z
                       t          t	          ||z  ||z                       t          t	          ||z  ||z                       t          t	          |dz  |dz                       t          t	          t          |          dz  t          |          dz                       t          t	          ||z  ||z                       t          t	          t          j	        ||          t          ||                               t          t	          t          j
        ||          t          ||                               t          t	          t          j        ||          t          ||                               t          j        dd          5  t          t	          t          j        ||          t          ||                               d d d            n# 1 swxY w Y   6d S )	Nrj   r   r   r   ))   r   )r   r   ignorer   invalid      @)rs   r   r+   r   r\   reshaperp   errstateabsr
   rJ   r9   r   )ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   a2da2dms                 r[   test_testArithmeticzTestMa.test_testArithmeticW   s   48F1AsBBAr2qaVaV$%%C1a&1a&!12239cDj))***39cDj))***39cDj))***( 	= 	=A		!A		!AABABABBrB3KK   Bq1ub2g&&'''Bq1ub2g&&'''Bq1ub2g&&'''Hh??? , ,1q5"r'**+++, , , , , , , , , , , , , , ,BsQwb))***BsQwb))***BsQwb))***Hh??? / /37C"H--.../ / / / / / / / / / / / / / /Bq3wS))***Bq3wS))***Bq3wS))***Bq3wS))***BqAvrQw''(((Bs1vv}c"ggn55666BqAvrRx(()))Brva||SR[[11222Br{1a(((2r*:*:;;<<<Br{1a(((2r*:*:;;<<<Hh??? = =29Q??F2rNN;;<<<= = = = = = = = = = = = = = =7	= 	=s6   4$G$$G(	+G(	.$JJ"	%J"	?SS	S	c                     t          j        dg          }t          dg          }t          t          ||z   t                               t          t          ||z   t                               d S )Nrj   )rp   r   r   
isinstancer   )ru   namas      r[   test_testMixedArithmeticzTestMa.test_testMixedArithmetic}   s\    Xqc]]A3ZZ
27K00111
27K0011111r]   c                 F   | j         \  }}}}}}}}}	}
}t          t          t          j        |          t	          |                               t          t          t          j        |          t          |                               t          t          t          j        |          t          |                               t          t          t          j        |          t          |                               t          t          t          j        |          t          |                               t          t          t          j	        |          t          |                               t          j
        dd          5  t          t          t          j        t          |                    t          |                               t          t          t          j        t          |                    t          |                               t          t          t          j        t          |                    t          |                               d d d            n# 1 swxY w Y   t          t          t          j        |          t          |                               t          t          t          j        |          t!          |	                               t          t          t          j        |          t#          |	                               t          t          t          j        |          t%          |	                               t          t          t          j        ||          t'          ||                               t          t          t          j        |          t)          |                               t          t          t          j        ||          t+          ||                               t          t          t          j        ||          t-          ||                               t          t          t          j        ||          t/          ||                               t          t          t          j        ||          t1          ||                               t          t          t          j        ||          t3          ||                               t          t          t          j        ||          t5          ||                               t          t          t          j        |          t7          |                               t          t          t          j        ||f          t9          ||f                               t          t          t          j        ||f          t9          ||f                               t          t          t          j        ||f          t9          ||f                               t          t          t          j        |||f          t9          |||f                               d S )Nr   r   )rs   r   r\   rp   r   r   rE   rF   rM   rN   r   rI   r   r'   r(   r   r   r   r   r   r	   r   r<   r%   r!   r&   r"   r   r   rt   s               r[   test_testUfuncs1zTestMa.test_testUfuncs1   s   48F1AsBBAr2q26!99c"gg&&'''271::tBxx(()))26!99c"gg&&'''271::tBxx(()))26!99c"gg&&'''271::tBxx(()))[(;;; 	5 	5Brws1vvR11222Brvc!ff~~s2ww//000BrxA''r33444	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	26!99c"gg&&'''29Q<<,,---29Q<<,,---29Q<<,,---2:a##WR__556662;q>>8B<<0011128Aq>>5R==112222<1%%yR'8'899:::271a==$r2,,//0002:a##WR__556662=A&&
2r(:(:;;<<<2#Aq))=R+@+@AABBB2<??IbMM223332>1a&));Bx+@+@AABBB2>1a&));1v+>+>??@@@2>1a&));Aw+?+?@@AAA2>1a),,k1b!*.E.EFFGGGGGs   CI::I>I>c           	         t          g dg d          }t          t          |          j        j        t
          j        u            t          dt          |                     t          dt          d                     t          t          dt          ddg                               |	                    d          }t          t          |          j        j        t
          j        u            t          t          t          |d          t
          j                             t          t          |          j        j        t
          j        u            t          t          dt          |                               t          t          t          |d                    t          u            t          t          ddgt          |d                               d S )	Nrh   ra   rb   rg   rj   r   r   r   rk   r   rj   r   )r   r   r   )r   r   r   r   typerp   intpr   r\   r   r   ndarrayr    r:   )ru   otts     r[   test_xtestCountzTestMa.test_xtestCount   ss   $$$<<<888c

 %0111Qc

###Qa!!!1eAQC((())***kk&!!c

 %0111
5a=="*55666c

 %01111eCjj!!"""c1&&&0111Aq65a==))*****r]   c                 b   | j         \  }}}}}}}}}	}
}t          j        |          }t          |          }t          t	          t          |          t          j        |                               t          t	          t          |          t          j        |                               d S r   )
rs   rp   rA   r   r\   maxr7   r   minr8   )ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   xrxmrs                 r[   test_testMinMaxzTestMa.test_testMinMax   s    48F1AsBBAr2qXa[[Bii 	3r77GN3//001113r77GN3//0011111r]   c                    | j         \  }}}}}}}}}	}
}t          t          t          j                            |          t	          j        |                               t          t          t          j                            |          t	          j        |                               t          t          dt          t          d          d                               t          t          dt          t          d          d                               t          t          t          j        |d          t          |d                               t          t          t          j        t          |d          d          t          |d                               t          t          t          j        |d          t          |d                               t          t          t          j
        |d          t          |d                               t          t          t          j
        |d          t          |d                               t          t          t          j
        t          |d          d          t          |d                               t          |          dk    rt          t          t          j        ||fd          t          ||fd                               t          t          t          j                            |d          t	          j        |d                               t          t          t          j        |d          t          |d                               t          t          t          j
        |d          t          |d                               d S d S )Nr   r   axisrj   )rs   r   r\   rp   r
   r   
accumulaterK   r   r   prodr?   r   r   rt   s               r[   test_testAddSumProdzTestMa.test_testAddSumProd   s   48F1AsBBAr2q26==##SZ]]3344426$$Q''):):;;<<<1c%((+++,,---1c%((+++,,---26!!$$$c!!nnn5566626&Q--a000#bq///BBCCC26!Q<<Q++,,,2711%%%wqq'9'9'9::;;;271a=='!Q--00111276"a==q111"2A...0 0 	1 	1 	1q66A::Br~q!fa00*B8Q779 9 : : :Brv}}Q**CJq!,<,<==>>>Brva||SAYY//000Brwq!}}gamm4455555 :r]   c           	      	   t          j        g d          }t          |g d          }t          |g d          }t          |          }t          |           t          |           t	          t          t          j        |          t          |d                               t	          t          |d                   t          |d                   u            t	          |d         |d         k               t	          |d         t          u            t	          t          |d         |d                              t	          t          |dd	         |dd	                              t	          t          |d d          |d d                               t	          t          |dd          |dd                               d
|d<   d
|d<   t	          t          ||                     d|dd<   d|dd<   t	          t          ||                     t          |d<   t	          t          ||                     t          |dd<   t	          t          ||                     ||d d <   t          |d<   t	          t          t          |          t          g d                               t          g dg d          |d d <   t	          t          t          |          t          g d                               t          g dg d          |d d <   t	          t          t          |          t          g d                               t	          t          |t          g d                               t          j        d	          dz  }t          |d          }t	          t          ||                     t	          t          t          g dt                    |j                             t	          t          d|j                             t          g dt"                    }t          j        g dt"                    }|d         }|d         }t%          t          |          t                     t%          t          |          t                     t%          ||           t	          |dd         j        dk               d S )N)rj   r   r   r   r   rk   )r   rj   r   rj   r   )
fill_valuerj   r      	   c   r   rn   rj   r   r   r   )r   rj   rj   r   ra   rg   )r   r   r   rj   r   )rj   hellor   r   )r   )rp   r   strreprr   r\   rH   r   r*   r   r    r+   r   r5   r   rl   r   objectr   rD   )ru   x1x2x3x4s1s2s          r[   test_testCIzTestMa.test_testCI   s&   Xlll##2LLL)))2LLL)))2YYBR272;;RA 6 6 677888RUtBqE{{*+++1A1   2a5"Q%  !!!2ac7BqsG$$%%%2aaa5"QQQ%  !!!2abb62abb6""###112r

1Q31Q32r

12r

1Q32r

1111eLLL&9&9::;;;\\\<<<88111eLLL&9&9::;;;\\\<<<88111eLLL&9&9::;;;U<<<0011222Yq\\C2s##2r

9927CCDDD3&&'''%%%v..X(((&11UUT"XXs###T"XXs###R1Q3%&&&&&r]   c                    g d}t          |          }t          |          }t          ||u            t          |d          }t          ||u           t          j        d          }t	          ||          }t          |j        |u           t          t          ||j                             t          |j        |u            t	          |d          }t          |j        j        |j        j        k               t	          ||d          }t          |j        |u            t          |d         t          u            d	|d<   t          |d         t          u           t          |j        |u            t          t          |j
        d                     t	          ||d
          }	t          |	j        |u           t          |	d         t          u            d	|	d<   t          |	d         t          u           t          |	j        |u           t          t          |	j
        d                     t	          |dz  |          }
t          t          |
          j        |dz  j        u            t          d          }t          |d<   t          |d          }t          t          t          ||g          |                     t          t          t!          |          g d                     t#          |dd          }t          t          |g d                     t#          |dd          }t          t          ||                     d S )N)r   r   rj   r   r   T)copyr   rk   r   rl   r   r   r   rj   ra   r   )   )r   r   rj   r   r   r   rj   r   )r   r   r   r   r   )r   r   rj   rj   r   r   r   r   )r)   r   rp   r   r   _datar   _mask__array_interface__r*   rl   r   r   rC   r\   r   r    rB   )ru   nmrz   m3r   y1y1ay2y2ay3r   y4y5y6s                  r[   test_testCopySizezTestMa.test_testCopySize  s   OOaLLq\\Rqt$$$Yq\\2A"###RX&&'''ABQ 		-,- 	. 	. 	. 2BQ'''B1   11V#$$$B!$$%%%BQQ'''	"###A& !!!AAf$%%%	"###1%%&&&28!$$$r

 R#X$44555AYY1B;Bx(("--...72;; 8 8 899:::B1---2///00111B"""2r

r]   c                 "   t          d          }g d}t          |          }|                                }t          ||          }t	          |d         t
          u            t	          |d         t
          u            ddg|ddg<   t	          |j        |u            t	          |d         t
          u            t	          |d         t
          u           t	          t          |g d	                     t          ||d
          }|                    g dg d           t	          |j        |u           t	          |d         t
          u            t	          |d         t
          u            t	          t          |g d                     d S )Nr   )r   r   r   rj   rj   rk   r   r   
   (   rj   )r   r   r   r   Tr   )r   rj   r   )r   d      )r   r   r   r   r   )	r   r)   r   r   r   r*   r   r\   r@   )ru   rs   r   r   rz   rv   s         r[   test_testPutzTestMa.test_testPut5  ss   1IIOOaLLVVXX!!!!H1a&	1!!F"###1((())***!"4(((	iii(((r!"""!!1***++,,,,,r]   c                    t          d          }t          |g d          }t          ddgddg          }t          |d         t          u           t          |d	         t          u           ||dd
<   t          |d         t          u            t          |d	         t          u           t          t	          |g d                     t          d          }t          |g d          }|dd
         }t          ddgddg          }t          |d         t          u           t          |d	         t          u           ||d d <   t          |d         t          u            t          |d         t          u           t          t	          |ddg                     t          |d         t          u            t          |d	         t          u           t          t	          |g d                     d S )Nr   )r   r   r   r   r   rk   r   r   rj   r   r   r   r   )r   rj   r   r   r   )r   r   r   r*   r\   )ru   rs   rv   r}   rw   s        r[   test_testPut2zTestMa.test_testPut2K  s   1II!///***2r(!Q(((!F"###!F"###!A#!!F"###1'''(()))1II!///***acF2r(!Q(((!F"###!F"###!!!!!F"###1r2h   !!F"###1'''(()))))r]   c                     | j         \  }}}}}}}}}	}
}g d}t          j        |          d         }t          |||	           t	          t          t          ||d          |	k                         d S )N)rj   r   r   r   r   r   rj   r   r   rj   r   rj   r   r   )rs   rp   r;   r@   r   r   rL   )ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   is                 r[   test_testMaPutzTestMa.test_testMaPute  s|    48F1AsBBAr2q000JqMM!B2DQQ'''2-../////r]   c                    t          d          }|                    dd          }d|j        d<   t          |d         dk               |d|z  z   }t          t	          |j        |                     t          t	          |j        d|z                       t          t	          |t          |          z  j        d|z  |z                       d	|j        d
<   t          d          }t          |d<   t          t          |d                   t          t                    k               |dk    }t          t          t          |t          t                              dk               t          t          t          |t          t                              |j        k               t          ||t                    }t          |j        |j        u            t          |d         t          u            t          |d         t          u            t          |d         t          u            t          |d         t          u           t          |d         t          u           t          t	          ||                     t          |t          |          }t          |j        |j        u            t          |d         t          u            t          |d         t          u           t          |d         t          u           t          |d         t          u            t          |d         t          u            t          ||          }t          |j        |j        u            t          |d         t          u            t          |d         t          u           t          |d         t          u           t          |d         t          u            t          |d         t          u            t          t	          ||                     t          g d          }t          g d          }t          |d<   t          |||           }t          t	          |g d                     t          |d<   t          |||           }t          t	          |g d                     t          |d         t          u            t          |d         t          u           t          |d         t          u            t          t	          t          t!          |d          |          t#          |d                               t          t	          t          t%          |d          |          t'          |d                               t          t	          t          t)          |d          |          t+          |d                               t          t	          t          t-          |d          |          t/          |d                               t          t	          t          t1          |d          |          t3          |d                               t          t	          t          t5          |d          |          t7          |d                               t          t	          t          t1          |d          |          t3          |d                               t          t	          t9          t;          t=          d                    dd          g d                     t          t	          t?          t;          t=          d                    dd          g d                     t          t	          t9          t          t;          t=          d                    g d          dd          j         g d                     t          t	          t?          t          t;          t=          d                    g d          dd          j         g d                     t          t	          t7          t          t;          t=          d                    g d          d          j         g d                     t          t	          t3          t          g dg d          d          j         g d                     t          t	          t          g dg d           g d!                     tC          d"tD          j#        #          }tI          |j        tJ                    }t          ||          }t          t	          ||                     tM          || |f          }t          t	          |g d                     t          |d         t          u            t          |d         t          u           t          |d         t          u            t          d$          }t          |d<   t          d$          dz  }t          |d<   t          g d%g d&          }|'                    d          }t          |||          }t          |||          }	t          t	          ||	                     t          tQ          |	          tR          u            t          t	          |	g d'                     t          |t          d          }t          t	          |g d(                     t          |dt                    }t          t	          |g d)                     d S )*N   r   r   r   )rj   r   y              $@r   e   rh   .r   r   r      r   )ra   rb   rg   rc   rd   )rj   rj   rj   r   r   r   )ra   rb   rh   ri   rj   )r      r   r   r   )r   rj   r   r   r   )rj   r   r   r   r   rk   )rj   rj   rj   rj   r   )r   rj   r   r   r   )rj   rj   r   r   rj   )rj   r   rj   r   r   )r   r   rj   r   rj   )rj   r   rj   r   rj   )rj   rj   r   r   r   )rj   r   r   r   r   )r   r   r   r   r   )r   r   r   )r   r   )rj   rj   rj   r   r   r   )rj   r   r   r   r   r   )r   rj   r      r   2   )r   r   r   rj   rj   rj   )r   rj   rj   r   r   r   )*r   r   flatr   r\   realimagr   r*   r   r   rP   rD   r   r6   r   r!   r-   r"   r.   r%   r0   r&   r1   r<   r2   r   r,   r/   listranger3   rl   r=   rp   float32rQ   r   r   r   r    r:   )
ru   rv   r}   catestbtestctestrw   cmr~   s
             r[   test_testOddFeatureszTestMa.test_testOddFeaturesl  s	   2JJIIaOOq	$2aK1611626""###A	!$*C!GaK88999s2JJ!AaD		S[[()))FeAvv..//14555eAvv..//17:;;;!Q17"###!!!!F"###!F"###1a!VQ17"###!!F"###!F"###!!A17"###!!F"###!F"###!!1a&&&''///""!!QOO1+++,,---!!QOO1+++,,---!!F"###!<1q11>!Q3G3GHHIII<a 3 3Q77'1--/ / 	0 	0 	0<Q

A..Aq0A0ABBCCC<
1a 0 0!446G16M6MNNOOO<	!Q335Ea5K5KLLMMM<aQ//a1C1CDDEEE<	!Q335Ea5K5KLLMMM=eAhhA668M8M8MNNOOO>$uQxx..!Q779L9L9LMMNNN=tE!HH~~,;OO"= "= "=>?D DDH"??$ $ 	% 	% 	% 	>%U1XX-<__#> #> #>?@!E EEI"??$ $ 	% 	% 	% 	<d588nn+:??!< !< !<=>@ @@D"??$ $ 	% 	% 	% 	#E////>%@ %@ %@ABD DDH"??$ $ 	% 	% 	% 	<AA$$$& & 	' 	' 	'\444ek8,,UE**5%  !!!1r1g1+++,,---!!F"###!1II!1IIN!$$$+=+=+=>>>XXa[[!QNN2q!__1b		v%&&&2,,,--...!VQ1+++,,---!Q1,,,--.....r]   c                    t          t          t          g dg d          g d                     t          t          t          g dg d          g d                     t	          d          }t	          d          dz
  }t
          |d<   t
          |d<   t          t          t          ||          t          t          ||          ||                               t          t          t          ||          t          t          ||          ||                               t          t          j	        |          dk               t          t          j	        |          d	k               d S )
N)rj   r   r   )r   r   r   )rj   r   r   )r   r   r   r   r   r   r   r   )
r   r\   r8   r7   r   r*   rP   r%   r!   r   )ru   rv   rw   s      r[   test_testMinMax2zTestMa.test_testMinMax2  s2   7999iii00)))<<===7999iii00)))<<===1II1IIM!!71a==%Q

Aq"9"9::;;;71a==%1q!"<"<==>>>q!!Q&'''q!!Q&'''''r]   c                     t          d          }t          j         d          }t          |dd<   |                    ddd          }|                    ddd          }t	          t          t          j        |d          t          |d                               t	          t          t          j        |dd          t          |dd                               t	          t          t          j        t          |d	          t          |d	                    t          ||                               t	          t          t          j
        t          |d	          t          |d	                    t          ||                               t          g d
t                    }t          |d<   t          |g d          }t	          |d	         dk               t	          |d         dk               t	          |d         dk               d S )N   r   r   r   r   r   )r   r   rj   rj   r   )abcrj   defr   r   )r   r   r   r  )r   rp   r*   r   r   r\   rO   rL   r#   r   r>   r   r   )ru   rv   rw   ts       r[    test_testTakeTransposeInnerOuterz'TestMa.test_testTakeTransposeInnerOuter  s   2JJIbMM!A#IIaAIIaA2<9--yI/F/FGGHHH271i++T!Y-B-BCCDDD28F1aLL&A,,77A;;    	! 	! 	!28F1aLL&A,,77A;;    	! 	! 	!)))622!III!!	!	r]   c                    t          d          }t          d          }t          d          }t          |d<   |dz  }t          t          ||dz                        |dz  }t          t          ||dz                        t          d          }t          d          }t          |d<   |dz  }t          t          ||dz
                       |dz  }t          t          ||dz
                       t          d          dz  }t          d          dz  }t          |d<   |dz  }t          t          ||dz                       |dz  }t          t          ||dz                       t          d          dz  }t          d          }t          |d<   |dz  }t          t          ||                     |dz  }t          t          ||                     t          d          dz  }t          d          dz  }t          |d<   |dz  }t          t          ||dz                       |t          d          z  }t          t          |t	          d                               t          d                              t          j                  }t          d          }t          |d<   |dz  }t          t          ||dz                        d S )Nr   r   rj   ra   rb   )r   )r   r*   r   r\   r=   astyperp   r   )ru   rw   rv   r{   s       r[   test_testInplacezTestMa.test_testInplace  sy   2JJ2JJBZZ1	Q1a!e
a1a!e2JJBZZ1	Q1a!e
a2q1u2JJBZZ#1	S1a!e
c	2q1u2JJNBZZ1	a1a
q1a2JJBZZ#1	S1a#g
fRjj2tE{{##$$$2JJbj))BZZ1	R1a"fr]   c                 8   t          d          }t          |ddd<   |                    dd          }t          dt          j        dz             D ]I}t	          j        ||          }t	          j        |          }t          t          ||                     Jd S )Nr   r   r   r   r   rj   )protocol)
r   r*   r   r   rR   HIGHEST_PROTOCOLdumpsloadsr   r\   )ru   rv   protor   rw   s        r[   test_testPicklezTestMa.test_testPickle$  s    2JJ!Bq&	IIaOO1f59:: 	 	EQ///AQABq!HH	 	r]   c                    t          d          }t          |d<   t          t          t                    dk               t          |d         t          u            t	          t          |d         d          d           d S )Nr   rj   z--r   )r   r*   r   r   r   r   )ru   xxs     r[   test_testMaskedzTestMa.test_testMasked.  si    AYY1Ft#$$$1   VBqE1%%q)))))r]   c           
         t          g dg d          }t          t          dt          |d                               t          t          dt          |g d                               t          |g dd	
          \  }}t          t          d|                     t          |dk               t          |d d <   t          t          |d          t          u            t          g dg d          }|                    dd          }t          |d d df<   t          t          t          |d          ddg                     t          t          |d          d         t          u            t          t          ddgt          |d                               t          |dd	          \  }}t          t          |ddg                     d S )Nr   r   rk   rb   r   r   )ra   ra   rb   ra   weightsTr  returnedrc   r   rj   rh   r   r  ra   )r   r   r\   r   r*   r   )ru   r   rZ   wtss       r[   test_testAverage1zTestMa.test_testAverage16  s   $$$<<<8883!,,,--...3-=-=-=>>>??@@@c+;+;+;dKKK3   s
AAA!$$$.///$$$<<<888kk!QAAAqD	73Q'''#s44555!$$$Q'61222B8WSq11122333cD9993R!!"""""r]   c           
      T   g d}g dg dg}t          d          }t          t          t          |d          d                     t          t          t          |d|          d                     t	          t          d          dt          d          z  g          }t          t          t          |d           t
          j                            t          j         d                    d	z  d
z                       t          t          t          |d          t          j         d          d	z  dz                       t          t          t          |d          t          |d          t          |d          dz  g                     t          t          t          |d |          d                     t          t          t          |d|          g d                     t          t          t          |d          t          |d          t          |d          dz  g                     t          d          }g d}g dg dg}t          d          }g d}	t          t          t          t          ||          d          d                     t          t          t          t          ||          d          d                     t          t          t          ||          d          t          u            t          t          t          ||	          d          d           t          t          t          t          ||          d                    d           t          ||          }
t          t          t          |
d           d                     t          t          t          |
d          g d                     t          t          t          |
d          ddg                     t          t          t          |
d|          g d                     t          d          }t          d          dz  }t          ||g||ggdd          \  }}t          t          |          t          |                     t          |j        |j                   t          t          d          dddgd          \  }}t          t          |          t          |                     t          t          d          d          \  }}t          t          |          t          |                     t          t          d          t          d          d          \  }}t          t          |          t          |          k               t	          ddgddggt                    }t          |ddgddgg          }t          |d          }t          t!          |dd	g                     t          |d          }t          t!          |dd	g                     t          |d           }t          t!          |d                      t          |d          }t          t!          |d!d"g                     d S )#N)r   rj   rj   rj   rj   r   )rj   r   r   r   r   rj   r   r   r   r   )r   r  rb   rg   g      (@rj   r  g
@)rh   ra   rb   rg   rc   rf   )r   r   rj   rj   r   r   )r   rj   rj   rj   rj   rj   rh   )rh   ra        X@r  rc   g      @rd   )rh   ra   r  r  rc   rf   r   Tr  )r   r   r   )r   r  r  )r  r  r   r   rm   ra   g@g      ?rc   )r   r   r   r   r   rp   r
   r   rQ   r=   r+   r*   r   r   rD   floatr\   )ru   w1w2rv   rw   ry   rz   r   m4m5r}   abr1r2r   r   a2daa2dmas                      r[   test_testAverage2zTestMa.test_testAverage2I  sF      "4"4"451II+++S11222B777==>>>6!99cF1IIo.//D))!#ry||!<!<r!AC!GI I 	J 	J 	J+++RYq\\B->-CDDEEE+++")!!"4"4"4gaa6H6H6H6L!MO O 	P 	P 	PD"555x@@AAAB777!:!:!:< < 	= 	= 	=+++")!!"4"4"4gaa6H6H6H6L!MO O 	P 	P 	P1XX   "4"4"45!WWa!4!41===sCCDDDa!4!41===sCCDDDQ++!444>???W\!R00q9993???U7<2#6#6Q???@@!DDDBD))844555+++!=!=!=? ? 	@ 	@ 	@+++c3Z88999B777!>!>!>@ @ 	A 	A 	A 1II1IIM1a&1a&)DAAABU2YYb		***RXrx(((iq1a&4PPPBU2YYb		***i4888BU2YYb		***i$y//DQQQBb		U2YY&'''aVaV$e,,C1a&1a&!122s###4#s$$%%%1%%%53*%%&&&4(((5'""###1%%%53*%%&&&&&r]   c           	      d   t          dt          t          d                               t          dt          t          d                               t          dt          t          dggg                               t          dt          t          dgg                               t	          t
          t          t          ddg                     t	          t          t          t          ddg                     t	          t          t          t          ddgddg                     d S )Nrj   ra   r   rk   )r   intr   r   r   	TypeError
ValueErrorboolru   s    r[   test_testToPythonzTestMa.test_testToPython  s    QE!HH&&&S%a//***QEQC5'NN++,,,S%se--...iq!f666j$q!f666j$q!fAq6(B(B(BCCCCCr]   c                    t          dd          }t          j        d          5  t          dt          d          z  j                   d d d            n# 1 swxY w Y   t          d|z   j                   t          | j                   t          | j                   t          t          ||          j                   t          t          ||          j                   t          |                                j        |j	        j        u            t          dd          }t          |                                |j	        k               t          t          |          t          t                               d S )Nr   rj   rk   r   r   )r   rp   r   r   rl   r7   r8   r   r   r   r   r   r4   )ru   r{   rv   s      r[   test_testScalarArithmeticz TestMa.test_testScalarArithmetic  sw   11[))) 	) 	)Qq\'(((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)R"
"
B$%%%B$%%%		!RX^3444!!

ag%&&&SWWc"56677777s   %AAAc                    t          g d          }t          t          |                                |j                                                             t          t          |                                |j                                                             t          t          |                                |j                                                             t          t          |                                |j                                                             t          t          |                    ddddd          |j                            ddddd                               t          t          |	                    g d          |j        	                    g d                               t          t          |
                                |j        
                                                     t          t          |                                |j                                                             t          ddgddgg          }t          t          |                                |j                                                             t          t          |                                |j                                                             t          t          |                    ddg          |j                            ddg                               t          t          |                                |j                                                             d S )Nrj   r   r   r   rj   r   r   r   rj   r   rj   )r   r   r\   anyr   r   argmaxargminr   compressconjr   diagonalrK   rL   rO   )ru   r%  r   s      r[   test_testArrayMethodszTestMa.test_testArrayMethods  s~   )))15577AGKKMM**+++15577AGKKMM**+++188::qw~~//00111188::qw~~//00111188Aq!Q**7>>!Q1a88: : 	; 	; 	;1::iii((!'*:*:999*E*EFFGGG16688QW\\^^,,---1;;==!'"3"3"5"566777Aq6Aq6"##1::<<!1!1!3!34455515577AGKKMM**+++1661a&>>17<<A#7#7889991;;==!'"3"3"5"56677777r]   c                 R    t          g d          }t          |j        d           d S )Nr7  rj   )r   r   ndimru   r%  s     r[   test_testArrayAttributeszTestMa.test_testArrayAttributes  s+    )))QVQr]   c                 h    t          d t          t          j                  D                         d S )Nc                 h    g | ]/}|t          t                    v|                    d           -|0S )_)dirr   
startswith).0r   s     r[   
<listcomp>z'TestMa.test_testAPI.<locals>.<listcomp>  sH     , , ,1[!1!111c** 2 111r]   )r   rG  rp   r   r1  s    r[   test_testAPIzTestMa.test_testAPI  sF     , ,BJ , , , , 	- 	- 	- 	- 	-r]   c                     t          g d          }t          g dg d          }t          |d         j        d           t          |d         j        d           t          |d         j        d           d S )Nr7  r8  rk   r   r   rj   )r   r   rD   )ru   r%  r&  s      r[   test_testSingleElementSubscriptz&TestMa.test_testSingleElementSubscript  su    ))))))))),,,QqTZ$$$QqTZ$$$QqTZ$$$$$r]   c                 ~    t          g dg d          }|dk    }d||<   t          |d         t          u            d S )Nr   )rj   r   rj   r   rk   r   r   r   )r   r   r*   )ru   r%  r   s      r[   test_assignment_by_conditionz#TestMa.test_assignment_by_condition  sJ    ,,,\\\222F!!r]   c                     t          ddgddg          }t          ddgddg          }|dk     }||         ||<   ddg}t          |j        |           d S )Nr   rj   Frk   T)r+   r   rl   )ru   r%  r&  rl   expected_masks        r[   test_assignment_by_condition_2z%TestMa.test_assignment_by_condition_2  sm    !Quen555!QtTl3331uD'$QV]+++++r]   N)$__name__
__module____qualname__r   r   pytestmarkparametrizer   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r+  r2  r5  r?  rC  rK  rM  rO  rR  r   r]   r[   r_   r_   $   s	       ; ; ;   [S66"233  43&$= $= $=L2 2 2H H H>+ + +2 2 26 6 6*0' 0' 0'd1 1 1f- - -,* * *40 0 0c/ c/ c/J( ( (  (0 0 0d  * * *# # #&8' 8' 8'tD D D8 8 88 8 8"     - - -
% % %     , , , , ,r]   r_   c                   ,    e Zd Zd Zd Zd Zd Zd ZdS )
TestUfuncsc                     t          dddt          dz  gdz  ddgdgdz  z             t          dddt          dz  gdz  ddgdgdz  z             f| _        d S )Nra   r   r   r   rj   r   rk   )r   rq   rs   r1  s    r[   r   zTestUfuncs.setup_method  sr    aR!V,q01va7GHHHaR!V,q01va7GHHHKr]   c           	         g d}dD ]?}	 t          t          |          }n%# t          $ r t          t          |          }Y nw xY wt          t          j        |          }| j        d |j                 }t	          j                    5  ||v rt	          j	        d           |dv rt	          j	        d            || } || }d d d            n# 1 swxY w Y   t          t          |                    d          |                    d          |                     t          t          |j        |j                             Ad S )N)rI   arctanhr   r   arccoshr]  r'   r(   r   true_dividefloor_divide	remainderfmod)*rI   r'   r(   r   r   rE   r   rM   r   r   r   rF   r   rN   arcsinhr^  r]  r	   fabsnegativefloorceillogical_notr
   rJ   r9   r   r_  r`  ra  rb  hypotr   r   r<   r&   r"   r%   r!   logical_and
logical_orlogical_xorr   )r   )r]  r'   r(   r4  r   )getattrumathAttributeErrorfromnumericrp   r   rs   ninr   seterrr   r\   r   eqmaskrl   )ru   f_invalid_ignorefufmfargsurmrs           r[   test_testUfuncRegressionz#TestUfuncs.test_testUfuncRegression  s   @ @ @> 	. 	.A -UA&&! - - -[!,,-""B6'26'?D  (((Ih////333IX....RYRY               Bryy||RYYq\\155666F27BG,,----=	. 	.s!   !AA=CC	C	c                 &   | j         d         }t          t          |d                      t          t          |d                     t	          t          |d d         d          d           t	          t          |d          d           d S )Nr   r   r   )rs   r   r   rG   r   rK   r?   rB  s     r[   test_reducezTestUfuncs.test_reduce  s    F1IGAA&&&&'''###$$$S2A2Q'''+++WQQ'''+++++r]   c                    t          dd                              dd          }t          |dk     |          }t          |                                |                                           t          |                                d           t          |                    d          |                    d          k                                               t          |                    d          g dk                                               t          |                    d          d         j                   t          |                    d          d         j                   d S )Nrj      r   r   r   r   )r   r   r   r   )	r   r   r6   r   r   r   r   r   rl   )ru   r%  amasks      r[   test_minmaxzTestUfuncs.test_minmax  s   1bMM!!!Q''QUA&&UYY[[!%%''***UYY[[!$$$1q)..001111-2244555		!Q$%%%		!Q$%%%%%r]   c                     dD ]B}t          g dg d          }t          t          t          |          dg                     Cd S )Nz?bhilqpBHILQPfdgFDGO)rj   r   r   r   )r   r   rj   rj   rk   r   )r   r   r\   r;   )ru   r  rv   s      r[   test_nonzerozTestUfuncs.test_nonzero  sX    ' 	) 	)Alll666ABwqzzA3''((((	) 	)r]   N)rS  rT  rU  r   r{  r}  r  r  r   r]   r[   rZ  rZ    sc        K K K#. #. #.J, , ,& & &) ) ) ) )r]   rZ  c                   >    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	S )
TestArrayMethodsc                    t          j        g d          }|                    dd          }|                    dddd          }t          j        g d          }t          ||          }t          ||                    |j                            }t          ||                    |j                            }|||||||f| _        d S )N)$g      @gGz.@g-!@g      !@g&1?gʡE@g\( @gQ@g{G#@gPn@gh|?!@g!rh@gjt@gJ+@gzGa@g!rh@gʡE@g-@g)\(@g(\B#@g+@guV@g~j@g"~@gK7@g
ףp=J#@gGz@gMb@g}?5^#@g/$@g!rhm@g-#@gJ+@gMb@gʡ@g-?r   r   r   )$r   rj   r   rj   r   r   rj   r   rj   rj   r   rj   r   r   r   rj   r   rj   r   r   r   rj   rj   rj   rj   r   r   rj   r   r   r   r   rj   r   rj   r   )datarl   )rp   r   r   rD   rs   )ru   rv   XXXr   mxmXmXXs           r[   r   zTestArrayMethods.setup_method  s    H @ @ @ A A IIaOOYYq!Q""H ( ( ( ) ) """		!' 2 2333!))BH"5"5666QAr2s+r]   c                    | j         \  }}}}}}}|                                }t          |                                |                                                                                                           t          t          |                                |                                t          |j        |                                z  d          z
                       d S )Nr   r   )	rs   r>  r   trace
compressedrK   r   r\   rl   )	ru   rv   r  r  r   r  r  r  mXdiags	            r[   
test_tracezTestArrayMethods.test_trace&  s    &*f#Ar1b"cRXXZZ!9!9!;!;!?!?!A!ABBB288::7799s6;+E01(3 (3 (3 34 4 	5 	5 	5 	5 	5r]   c           	         | j         \  }}}}}}}|                    dd          }t          t          |j        |j                             t          t          |j        |                    dd                               t          t          |j        |j                            dd                               d S )Nr   r   )rs   clipr   r\   rl   r   )	ru   rv   r  r  r   r  r  r  clippeds	            r[   	test_clipzTestArrayMethods.test_clip.  s    &*f#Ar1b"c''!Q--7<))***7=!&&A,,//0007="(--1"5"56677777r]   c                    | j         \  }}}}}}}|j        \  }}t          |                                |                                                                           t          j        |t
          j                  }	t          j        |t
          j                  }
t          |          D ]5}|d d |f                                                                         |
|<   6t          |          D ]1}||                                                                         |	|<   2t          t          |                    d          |
                     t          t          |                    d          |	                     d S Nr   rj   )rs   rD   r   ptpr  rp   rQ   float_r   r   r\   )ru   rv   r  r  r   r  r  r  r   rowscolsks               r[   test_ptpzTestArrayMethods.test_ptp5  s?   &*f#Ar1b"cARVVXXr}}2244555x29%%x29%%q 	2 	2AAh))++//11DGGq 	/ 	/Ae&&((,,..DGG266!99d##$$$266!99d##$$$$$r]   c                     | j         \  }}}}}}}|                    dd          }t          t          |d         |d d df                              |                    dd          }	t	          |	j        d           d S )Nr   rj   r   r   )r   r   r   r   )rs   swapaxesr   r\   r   rD   )
ru   rv   r  r  r   r  r  r  	mXswapped
mXXswappeds
             r[   test_swapaxeszTestArrayMethods.test_swapaxesB  s    &*f#Ar1b"cKK1%%	9R="QQQU),,---\\!Q''
Z%|44444r]   c                    | j         \  }}}}}}}|                    d          }t          t          |j        |                    d                              d                               |                    d          }t          t          |j        |                    d                              d                               d S r  )rs   cumprodr   r\   r   r   	ru   rv   r  r  r   r  r  r  mXcps	            r[   test_cumprodzTestArrayMethods.test_cumprodI  s    &*f#Ar1b"czz!}}4:ryy||33A6677888zz!}}4:ryy||33A667788888r]   c                    | j         \  }}}}}}}|                    d          }t          t          |j        |                    d                              d                               |                    d          }t          t          |j        |                    d                              d                               d S r  )rs   cumsumr   r\   r   r   r  s	            r[   test_cumsumzTestArrayMethods.test_cumsumP  s    &*f#Ar1b"cyy||4:ryy||2215566777yy||4:ryy||221556677777r]   c           	      .   | j         \  }}}}}}}t          t          |                    d           |                                                                                     t          t          |                    d           |                                                                                     t          t          |                    d          j        |                    d          j                             t          t          |                                j        |                                j                             |                    d          |                    d          }	}t          d          D ]}
t          t          |	|
         ||
                                                                                              t          t          ||
         |d d |
f                                                                                              t          t          t          j	        ||
                   |d d |
f                                                                                              d S )Nr   r   r   rj   r   )
rs   r   r\   varr  stdrD   r   rp   rI   )ru   rv   r  r  r   r  r  r  mXvar0mXvar1r  s              r[   test_varstdzTestArrayMethods.test_varstdW  s    &*f#Ar1b"c266t6$$bmmoo&9&9&;&;<<===266t6$$bmmoo&9&9&;&;<<===3777??("&&a&..*>??@@@26688>15577=11222FFFNNBFFFNNq 	= 	=ABvay"Q%"2"2"4"4"8"8":":;;<<<Bvay"QQQT("5"5"7"7";";"="=>>???Brwvay))!!!!Q$x224488::< < = = = =	= 	=r]   N)rS  rT  rU  r   r  r  r  r  r  r  r  r   r]   r[   r  r    s        , , ,,5 5 58 8 8% % %5 5 59 9 98 8 8= = = = =r]   r  c                 z    | t           u r	|t           u S |t           u r	| t           u S | |k                                    S r   )r:   r   )ry   rz   s     r[   rs  rs  e  s<    	V||V|	V||V|"H>>r]   )rS   )b	functoolsr   rV  numpyrp   numpy.core.umathcorern  numpy.core.fromnumericrp  numpy.testingr   r   r   numpy.mar   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/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   numpy.compatrR   rq   r\   r_   rZ  r  rs  r   r]   r[   <module>r     si                                , , , , , , , , ,                                                                                                                                                                         U   f
, f
, f
, f
, f
, f
, f
, f
,R>) >) >) >) >) >) >) >)BT= T= T= T= T= T= T= T=n    r]   