
    Kh:                        S SK rS SKrS SKJrJrJr  S SKJrJ	r	J
r
JrJrJr  S SKJr   " S S5      r " S S5      r " S	 S
5      r " S S5      r " S S5      r " S S5      r " S S5      r " S S5      r " S S5      rg)    N)matrixasmatrixbmat)assert_assert_equalassert_almost_equalassert_array_equalassert_array_almost_equalassert_raises)matrix_powerc                   &    \ rS rSrS rS rS rSrg)TestCtor   c                    [         R                  " SS/SS//5      n[        U5      n[        [         R                  " UR
                  U:H  5      5        [        S5      n[        X/X//5      n[         R                  " / SQ/ SQ/ SQ/ SQ/5      n[        [         R                  " UR
                  U:H  5      5        [        [         R                  " UR
                  U:H  5      5        [         R                  " SS	/S
S//5      n[        / SQ/ SQ/5      n[        [         R                  " [        X/5      U:H  5      5        [         R                  " S5      n[        U5      n	[        U	R                  S:H  5        g )N            A,A;A,Ar   r   r   r   r   r   r   r               r   r   r   r   r   r   r   r   )r   r   )	nparrayr   r   allAr   arangeshape)
selfr!   mABCDEAEresultvecmvecs
             V/var/www/html/env/lib/python3.13/site-packages/numpy/matrixlib/tests/test_defmatrix.py
test_basicTestCtor.test_basic   s   HHq!fq!f%&AYrttqy!"O1&1&!"HHl"""$ % 	qssax !qssax !HHq!fq!f%&<67tQF|x/01iilc{

f$%    c                 .    [        [        [        S5        g )Ninvalid)r   
ValueErrorr   r$   s    r-   test_exceptionsTestCtor.test_exceptions"   s    j&)4r0   c           
         [         R                  " SS/SS//5      n[         R                  " SS/SS//5      n[         R                  " / S	Q/ S
Q/ S	Q/ S
Q/5      n[         R                  " / SQ/ SQ/ SQ/ SQ/5      n[        [         R                  " [	        S5      U:H  5      5        [        [         R                  " [	        SSU0S9U:H  5      5        [        [        [        SSU0S9  [        [         R                  " [	        SSU0SU0S9U:H  5      5        [	        SXS.X!S.S9n[        [         R                  " XT:H  5      5        g )Nr   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   )r   r   r   r   r   r!   )ldict)gdict)r8   r9   zA,B;C,D)r!   r&   )r'   r(   )r   r   r   r    r   r   	TypeError)r$   r!   r&   Aresult	mixresultb2s         r-   test_bmat_nondefault_str!TestCtor.test_bmat_nondefault_str&   s   HHq!fq!f%&HHq!fq!f%&((L(((* + HHl***, -	 	tI'123tIc!W5@ABiyQ@FF4	#aQ@GKL	N)=QFr'(r0    N)__name__
__module____qualname____firstlineno__r.   r5   r>   __static_attributes__r@   r0   r-   r   r      s    &,5)r0   r   c                   b    \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rS rS rS rSrg)TestProperties:   c                    [        / SQ/ SQ/ SQ/ SQ/5      n[        / SQ5      n[        / SQ5      R                  nSn[        X!R                  SS	95        [        X1R                  S
S	95        [	        XAR                  5       5        [        U[
        R                  " USS	95        [        U[
        R                  " US
S	95        [	        U[
        R                  " U5      5        g)zUTest whether matrix.sum(axis=1) preserves orientation.
Fails in NumPy <= 0.9.6.2127.
)r   r   r   r   )r   r   r   r   r   r   )r      r   r   )r   r   r         r   axisr   N)r   Tr	   sumr   r   )r$   Msum0sum1sumalls        r-   test_sumTestProperties.test_sum;   s     L! " m$m$&&4A/4A/VUUW%4!234!23VRVVAY'r0   c                 8   [        / SQ/ SQ/5      n[        UR                  5       S5        [        UR                  S5      [        / SQ/5      5        [        UR                  S5      [        S/S//5      5        [        [        R                  " U5      S5        [        [        R                  " USS	9[        / SQ/5      5        [        [        R                  " USS	9[        S/S//5      5        [        / S
Q5      n[	        UR                  5       S:H  5        g )Nr   r   r   r   r   r   i  r   )r   
      r   r   x   rM   )r   r   r   )r   r   prodr   r   r$   xys      r-   	test_prodTestProperties.test_prodN   s    Iy)*QVVXs#QVVAY} 56QVVAYcU| 45RWWQZ%RWWQQ')>?RWWQQ'!se)=>9Ar0   c                    [        / SQ/ SQ/5      n[        UR                  5       S5        [        UR                  S5      [        / SQ/5      5        [        UR                  S5      [        S/S//5      5        [        [        R                  " U5      S5        [        [        R                  " USS9[        / SQ/5      5        [        [        R                  " USS9[        S/S//5      5        g )NrX   rY   r   r   r   r   rM   )r   r   maxr   r$   r_   s     r-   test_maxTestProperties.test_max[       Iy)*QUUWa QUU1Xvyk23QUU1XvsQCj12RVVAY"RVVAA&	{(;<RVVAA&aSz(:;r0   c                    [        / SQ/ SQ/5      n[        UR                  5       S5        [        UR                  S5      [        / SQ/5      5        [        UR                  S5      [        S/S//5      5        [        [        R                  " U5      S5        [        [        R                  " USS9[        / SQ/5      5        [        [        R                  " USS9[        S/S//5      5        g )NrX   rY   r   r   r   rM   )r   r   minr   re   s     r-   test_minTestProperties.test_mine   rh   r0   c           	         [         R                  " S5      R                  S5      nUR                  [         R                  5      n[        UR                  5       S:H  5        [        [         R                  " UR                  S5      [         R                  " SS/5      :H  5      5        [        [         R                  " UR                  S5      [         R                  " SS/5      :H  5      5        g )Nr   )r   r   r   r   r   r   )	r   r"   reshapeviewr   r   ptpr    r   r$   r_   mxs      r-   test_ptpTestProperties.test_ptpo   s    IIaL  (VVBIIArvvayBHHaV$4456rvvayBHHaV$4456r0   c                 $   [         R                  " S5      R                  S5      nUR                  [         R                  5      n[        UR                  SS9UR                  SS95        [        UR                  SS9UR                  SS95        g )N	   )r   r   r   )ddofr   )r   r"   rn   ro   r   r   varrq   s      r-   test_varTestProperties.test_varv   sh    IIaL  (VVBIIQUUU]BFFFN3QUUU]BFFFN3r0   c           	      z   SS K Jn  [        R                  " SS/SS//5      n[	        U5      n[        [        R                  " UR                  U5      UR                  5      5        [        [        R                  " [        R                  " [        R                  " U5      UR                  :H  5      5      5        [        [        R                  " [        R                  " [        R                  " U5      UR                  :H  5      5      5        [        [        R                  " X#R                  :H  5      5        USU-  -   n[	        U5      n[        [        R                  " UR                  U5      UR                  5      5        [        [        R                  " [        R                  " [        R                  " U5      UR                  :H  5      5      5        [        [        R                  " [        R                  " [        R                  " U5      R                  5       UR                  :H  5      5      5        g )Nr         ?       @      @      @y               @)numpy.linalglinalgr   r   r   r   allcloseinvIr    	transposerO   Hr!   conj)r$   r   r!   r%   r&   mBs         r-   r.   TestProperties.test_basic|   sN   %HHr2h2h  !AYFJJqM24401rxxQ244 789:rxxQ244 789:qDDy!"1HAYFJJqM24401rxxQ244 789:rxxQ 4 4 6"$$ >?@Ar0   c                     [        [        R                  " S5      R                  SS5      5      n[        SS/SS/SS	//5      n[	        UR
                  U5        g )
Nr   r   r   g:gn)t?g#qg#q?gn)t?g6Bq)r   r   r"   rn   r   r   )r$   r_   xpinvs      r-   	test_pinvTestProperties.test_pinv   sW    299Q<''1-.z2$z2$k24 5 	ACC'r0   c           	      @   [         R                  " S5      R                  SS5      n[        U5      n[        U5      S-   n[	        [         R
                  " X1S-   :H  5      5        [	        [         R
                  " U[        US-   5      :H  5      5        [	        [         R                  " U[        US-
  5      :H  5      (       + 5        [	        [         R
                  " X#:  5      5        [	        [         R
                  " X#:*  5      5        [	        [         R
                  " X":*  5      5        [	        [         R                  " X":  5      (       + 5        [	        [         R                  " X2:  5      (       + 5        [	        [         R
                  " X2:  5      5        [	        [         R
                  " X3:  5      5        [	        [         R                  " X3:  5      (       + 5        [	        [         R
                  " X":H  5      5        [	        [         R                  " X#:H  5      (       + 5        [	        [         R
                  " X2:g  5      5        [	        [         R
                  " [        U5      S:  5      (       + 5        [	        [         R
                  " [        US:  5      5      5        g )Nd   rZ   皙?r   )r   r"   rn   r   r   r    anyabs)r$   r!   r%   r   s       r-   test_comparisonsTestProperties.test_comparisons   s   IIcN""2r*AYAY_rsU{#$rVAcE]*+,BFF2#.//0rw rx !rx !BFF27O#$BFF27O#$rx !rx !BFF27O#$rx !BFF28$$%rx !BFF3r7Q;''(s26{#$r0   c                     [         R                  " S5      R                  SS5      n[        U5      nSUS'   [	        US   US   :H  5        g )Nr   rZ   ir   r   )r   r"   rn   r   r   )r$   r!   r%   s      r-   test_asmatrixTestProperties.test_asmatrix   sC    IIcN""2r*a[$$2d8#$r0   c                     [        SS/SS//5      n[        UR                  5       [        S5      :H  5        [        UR                  5       [        S5      :H  5        g )Nr   r   r         ?)r   r   rP   meanr$   r!   s     r-   test_noaxisTestProperties.test_noaxis   sG    QFQF#$6!9$%F3K'(r0   c                 T    [        SS/SS//5      n[        [        U5      S:H  5        g )Nr   r   z matrix([[1, 0],
        [0, 1]]))r   r   reprr   s     r-   	test_reprTestProperties.test_repr   s+    QFQF#$Q>>?r0   c                 R    [        S5      n[        S/S/S//5      n[        X5        g )NzTrue; True; FalseTF)r   r	   )r$   r!   r&   s      r-   test_make_bool_matrix_from_str-TestProperties.test_make_bool_matrix_from_str   s,    &'TFTFUG,-1 r0   r@   N)rA   rB   rC   rD   rU   ra   rf   rk   rs   ry   r.   r   r   r   r   r   r   rE   r@   r0   r-   rG   rG   :   sE    (&<<74B"(%0%)
@!r0   rG   c                       \ rS rSrS rSrg)TestCasting   c                    [         R                  " S5      R                  SS5      n[        U5      nUR	                  5       n[         R
                  " S[         R                  5      S-  nX4-   n[        UR                  R                  [         R                  :H  5        [        [         R                  " X#:g  5      5        [        [         R                  " X2S-   :H  5      5        UR	                  5       n[         R
                  " S[         R                  5      nXT-  n[        UR                  R                  [         R                  :H  5        [        [         R                  " X#:g  5      5        g )Nr   rZ   )rZ   rZ   r   )r   r"   rn   r   copyonesfloat64r   dtypetyper    
complex128)r$   r!   r%   r   OmCs         r-   r.   TestCasting.test_basic   s    IIcN""2r*AYWWYGGHbjj)C/V+,rx !rV|$%WWYGGHbmm,V./rx !r0   r@   NrA   rB   rC   rD   r.   rE   r@   r0   r-   r   r      s    "r0   r   c                   ,    \ rS rSrS rS rS rS rSrg)TestAlgebra   c           	         SS K Jn  [        R                  " SS/SS//5      n[	        U5      n[        R
                  " S5      n[        S5       HE  n[        [        R                  " X5-  R                  U5      5        [        R                  " XB5      nMG     UR                  U5      n[        R
                  " S5      n[        S5       HF  n[        [        R                  " X5* -  R                  U5      5        [        R                  " XF5      nMH     [        [        R                  " X3-  R                  [        R                  " X"5      5      5        [        [        R                  " X3-   R                  X"-   5      5        [        [        R                  " SU-  R                  SU-  5      5        [	        U5      nUS-  n[        [        R                  " UR                  SU-  5      5        g )	Nr   r|   r}   r~   r   r   r   r   )r   r   r   r   r   identityranger   r   r!   dotr   )r$   r   r!   r%   r&   iAinvmA2s           r-   r.   TestAlgebra.test_basic   sF   %HHr2hR)*AYKKNqABKKQ/0qA  zz!}KKNqABKKra01qA  	RWKK67RWKK!%12QrTHHqs,-QiqCEE1Q3'(r0   c                 \   [        S5      nUR                  5       nUS-  nUR                  5       nUS-  nUR                  5       nUS-  n[        X!S-  5        [        U[        R                  " X"5      5        [        [        R                  " X15      [        R
                  " S5      5        g)z<Test raising a matrix to an integer power works as expected.z1. 2.; 3. 4.r   N)r   r   r
   r   r   eye)r$   mm2mim4s        r-   test_powTestAlgebra.test_pow   s    >"VVX
qVVX
r	WWY
q!"d+!"bffRn5!"&&-;r0   c                     [        SS/SS//5      n[        R                  [        R                  4 H  nU" S5      n[	        US-  X-  5        M     g Nr   r   r   r   )r   r   int8uint8r
   )r$   r   scalar_ttwos       r-   test_scalar_type_pow TestAlgebra.test_scalar_type_pow   sI    QFQF#$"((+H1+C%a1fah7 ,r0   c                     [        SS/SS//5      n[        [        5         SU-    SSS5        [        [        5         U[        5       -    SSS5        g! , (       d  f       N4= f! , (       d  f       g= f)z:Check that 'not implemented' operations produce a failure.r|   r}   r~   r   N)r   r   r:   objectr   s     r-   test_notimplementedTestAlgebra.test_notimplemented   sa    RHH  9%F & 9%fhJ &%	 &% &%s   AA&
A#&
A4r@   N)	rA   rB   rC   rD   r.   r   r   r   rE   r@   r0   r-   r   r      s    )2<8r0   r   c                       \ rS rSrS rSrg)TestMatrixReturni  c           	      (   [        S/SS9nSSS/4SSS[        R                  " S/5      S	.n/ S
Qn[        U5       H  nUR	                  S5      (       d  XC;   a  M   [        X5      n[        U[        R                  R                  5      (       d  MV  UR                  S5        UR                  S5        XB;   a  X$   nOSnU" U6 n[        [        U5      [         L SU-  5        M     [        [        UR                  5      [         L 5        [        [        UR                  5      [         L 5        [        S/5      R!                  5       u  p[        [        U5      [        R"                  L 5        [        [        U	5      [        R"                  L 5        g )Nr|   f8)r   )intc)        r|   r   )r   r   )astypeclipcompressrepeatrn   swapaxesr   ))argminchoosedumpdumpsfillgetfieldgetAgetA1itemnonzeroputputmaskresizesearchsortedsetflagssetfieldsort	partitionargpartitionnewbyteorder	to_devicetaketofiletolisttostringtobytesr    r   rP   argmaxr   rj   rd   r   rx   rp   r]   stdctypesitemsetbitwise_count_r@   z%sr   )r   r   r   dir
startswithgetattr
isinstancecollectionsabcCallabler   r   r   r   realimagr   ndarray)
r$   a
methodargsexcluded_methodsattribfargsbcds
             r-   test_instance_methods&TestMatrixReturn.test_instance_methods  sA   C5%88SE?
 !fF  %%)C"A![__5566s'%-DDtHQ6)4&=9  	QVV&'QVV&'se}$$&Q2::%&Q2::%&r0   r@   N)rA   rB   rC   rD   r  rE   r@   r0   r-   r   r     s    &'r0   r   c                       \ rS rSrS rSrg)TestIndexingi8  c                     [        [        R                  " S[        5      5      n[        R                  " S[        5      n/ SQUS S 2S4'   US:  US S 2S4'   [	        USS/SS/SS//5        g )Nr   r   )r   r   )g?g?g333333?r   r   r   r   r   zerosfloatr   r^   s      r-   r.   TestIndexing.test_basic9  sb    RXXfe,-HHVU#!!Q$c'!Q$Q!Q!Q!Q01r0   r@   Nr   r@   r0   r-   r  r  8  s    2r0   r  c                   f    \ rS rSr\" SS/SS//5      rS rS rS rS	 r	S
 r
S rS rS rS rSrg)TestNewScalarIndexingiA  r   r   r   r   c                 R    U R                   nUS   n[        UR                  S5        g )Nr   r   )r	  r   ndimr$   r	  r_   s      r-   test_dimesions$TestNewScalarIndexing.test_dimesionsD  s"    FFaDQVVQr0   c                 z    U R                   n[        R                  " X/5      n[        UR                  / SQ5        g )N)r   r   r   )r	  r   r   r   r#   r   s      r-   test_array_from_matrix_list1TestNewScalarIndexing.test_array_from_matrix_listI  s)    FFHHaVQWWi(r0   c                 \    U R                   n[        UR                  5       SS/SS//5        g r   )r	  r   r   r$   r	  s     r-   test_array_to_list(TestNewScalarIndexing.test_array_to_listN  s(    FFQXXZ1a&1a&!12r0   c                    U R                   nUS/ SQ4   n[        [        U[        5      5        [	        U[        / SQ/5      5        USS/   n[        [        U[        5      5        [	        U[        SS/SS//5      5        US/S//SS/SS//4   n[        [        U[        5      5        [	        U[        SS/SS//5      5        g )Nr   )r   r   r   )r   r   r   r   r   r   r   )r	  r   r  r   r   r   s      r-   test_fancy_indexing)TestNewScalarIndexing.test_fancy_indexingR  s    FFalO
1f%&Q}-.q!fI
1f%&QQ!Q012sQCjAq6Aq6**+
1f%&QQ!a123r0   c                    [        / SQ/ SQ/5      n[        US   S   [        / SQ/5      5        [        US   S   R                  S5        [        US   R                  S5        [        US S 2S4   R                  S5        [        S5      n[        US   S5        [        US   S5        [        US S 2S4   R                  UR                  5        g )NrX   rY   r   )r   r   r   r   r   )r   r   r#   re   s     r-   test_matrix_element)TestNewScalarIndexing.test_matrix_element^  s    Iy)*QqT!Wfi[12QqT!W]]F+QqTZZ(Qq!tW]]F+1IQtWa QqT1Qq!tW]]AGG,r0   c                 v    [        [        R                  " S[        5      5      n[	        US   US   S   5        g )Nr  r   r   r  re   s     r-   test_scalar_indexing*TestNewScalarIndexing.test_scalar_indexingj  s-    RXXfe,-QtWad1g&r0   c                     [        [        R                  " S5      5      n[        USS S 24   SS//5        [        USS S 24   SS//5        [        US S 2S4   S/S//5        [        US S 2S4   S/S//5        g )Nr   r   r   )r   r   r   r	   re   s     r-   test_row_column_indexing.TestNewScalarIndexing.test_row_column_indexingn  sx    RVVAY1QqS6QF8,1QqS6QF8,1QT7aS1#J/1QT7aS1#J/r0   c                    [         R                  " S5      nSUl        [        U5      n[	        US S 2[         R
                  " SS/5      4   US S 2S4   5        [	        U[         R
                  " / SQ5      S S 24   USS S 24   5        g )Nr   r  TFr   )TFF)r   r"   r#   r   r	   r   r$   r!   r_   s      r-   test_boolean_indexing+TestNewScalarIndexing.test_boolean_indexingu  sn    IIaLQK1Q$ 778!AqD'B1RXX&:;A=>!A#Gr0   c                     [         R                  " S5      nSUl        [        U5      n[	        US S 2SS/4   US S 2S S S24   5        [	        U/ SQS S 24   US S S2S S 24   5        g )Nr   r  r   r   r   )r   r   r   )r   r"   r#   r   r	   r8  s      r-   test_list_indexing(TestNewScalarIndexing.test_list_indexing|  s_    IIaLQK1QAY<1dd741Yq[>1TrT!V95r0   r@   N)rA   rB   rC   rD   r   r	  r!  r$  r(  r+  r/  r2  r5  r9  r<  rE   r@   r0   r-   r  r  A  sG    AA A 
)
3
4
-'0H6r0   r  c                        \ rS rSrS rS rSrg)	TestPoweri  c                     [         R                  " SS/SS//5      n[        [        [	        US5      5      [         R
                  L 5        [        U5      n[        [        [	        US5      5      [        L 5        g Nr   r   r   )r   r   r   r   r   r  r   r   r'  s     r-   test_returntypeTestPower.test_returntype  s\    HHq!fq!f%&\!Q'(BJJ67QK\!Q'(F23r0   c                 H    [        [        SS/SS//S5      SS/SS//5        g rA  )r	   r   r4   s    r-   	test_listTestPower.test_list  s-    <!Q!Q(8!<1v1v>NOr0   r@   N)rA   rB   rC   rD   rB  rE  rE   r@   r0   r-   r?  r?    s    4Pr0   r?  c                       \ rS rSr\R
                  " S/S//5      r\" S/S//5      rS r	S r
S rS rS rS	 rS
 rS rS rSrg)	TestShapei  r   r   c                     [        U R                  R                  S5        [        U R                  R                  S5        g )Nr.  )r   r	  r#   r   r4   s    r-   
test_shapeTestShape.test_shape  s&    TVV\\6*TVV\\6*r0   c                     [        [        R                  " U R                  5      R                  S5        [        [        R                  " U R
                  5      R                  S5        g )Nr   )r   r   ravelr	  r#   r   r4   s    r-   test_numpy_ravelTestShape.test_numpy_ravel  s<    RXXdff%++T2RXXdff%++T2r0   c                     [        U R                  R                  5       R                  S5        [        U R                  R                  5       R                  S5        g NrM  )r   r   )r   r	  rN  r#   r   r4   s    r-   test_member_ravelTestShape.test_member_ravel  s6    TVV\\^))40TVV\\^))62r0   c                     [        U R                  R                  5       R                  S5        [        U R                  R                  5       R                  S5        g rR  )r   r	  flattenr#   r   r4   s    r-   test_member_flattenTestShape.test_member_flatten  s8    TVV^^%++T2TVV^^%++V4r0   c                    [         R                  " / SQ/ SQ/5      n[        [         R                  " U5      / SQ5        [        [         R                  " USS9/ SQ5        [        [         R                  " UR                  5      / SQ5        [        [         R                  " UR                  SS9/ SQ5        [        / SQ/ SQ/5      n[        [         R                  " U5      / SQ5        [        [         R                  " USS9/ SQ5        [        [         R                  " UR                  5      / SQ5        [        [         R                  " UR                  SS9/ SQ5        g NrX   rY   )r   r   r   r   r   r   F)order)r   r   r   r   r   r   r!   )r   r   r   rN  rO   r   re   s     r-   test_numpy_ravel_order TestShape.test_numpy_ravel_order  s    HHi+,RXXa["45RXXas+-?@RXXacc]$67RXXacc-/ABIy)*RXXa["45RXXas+-?@RXXacc]$67RXXacc-/ABr0   c                 2   [        / SQ/ SQ/5      n[        UR                  5       / SQ/5        [        UR                  SS9/ SQ/5        [        UR                  R                  5       / SQ/5        [        UR                  R                  SS9/ SQ/5        g rZ  )r   r   rN  rO   re   s     r-   test_matrix_ravel_order!TestShape.test_matrix_ravel_order  ss    Iy)*QWWY!3 45QWW3W'*<)=>QSSYY[#5"67QSSYYSY),>+?@r0   c                    [        [        R                  " U R                  U R                  R	                  5       5      5        [        [        R                  " U R                  U R                  R                  5       5      (       + 5        g N)r   r   may_share_memoryr	  rN  rV  r4   s    r-   test_array_memory_sharing#TestShape.test_array_memory_sharing  L    ##DFFDFFLLN;<B''0@AABr0   c                    [        [        R                  " U R                  U R                  R	                  5       5      5        [        [        R                  " U R                  U R                  R                  5       5      (       + 5        g rc  )r   r   rd  r   rN  rV  r4   s    r-   test_matrix_memory_sharing$TestShape.test_matrix_memory_sharing  rg  r0   c                 .   [         R                  " S5      R                  S5      R                  [         R                  5      n[         R
                  " USS9n[        UR                  S5        [        [        U[         R                  5      (       + 5        g )NrZ   )r   r   r   rM   r   )
r   r"   rn   ro   r   expand_dimsr   r  r   r  )r$   r	  expandeds      r-   test_expand_dims_matrix!TestShape.test_expand_dims_matrix  s_     IIbM!!&)..ryy9>>!!,X]]A&Jx334r0   r@   N)rA   rB   rC   rD   r   r   r	  r   r   rJ  rO  rS  rW  r]  r`  re  ri  rn  rE   r@   r0   r-   rH  rH    s[    
1#sAaSzA+335
CACC5r0   rH  )collections.abcr  numpyr   r   r   r   numpy.testingr   r   r   r	   r
   r   r   r   r   rG   r   r   r   r  r  r?  rH  r@   r0   r-   <module>rs     s      ( (  &,) ,)^D! D!L" "&8 8v'' ''T2 2@6 @6FP P65 65r0   