
    >>iY                     8   S SK r S SKrS SKJr  S SKJrJrJrJ	r	J
r
Jr  S SKJrJrJrJrJr  S rS rS!S j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 S5      r#S r$ " S S\RJ                  5      r& " S S\&5      r'S r(S r)S r*S  r+g)"    N)rational)_broadcast_shape
as_stridedbroadcast_arraysbroadcast_shapesbroadcast_tosliding_window_view)assert_assert_array_equalassert_equalassert_raisesassert_raises_regexc                     U  Vs/ s H  n[         R                  " U5      PM     nn[        U6 nU Vs/ s H  oUR                  PM     nnU/[	        U5      -  n[        Xg5        g s  snf s  snf N)npzerosr   shapelenr   )input_shapesexpected_shapesinarrays	outarraysa	outshapesexpecteds           a/var/www/html/land-tabula/venv/lib/python3.13/site-packages/numpy/lib/tests/test_stride_tricks.pyassert_shapes_correctr      sa     &22\\H2 (+I"+,)Q)I,#h-/H%	 3,s
    A%A*c                     U  Vs/ s H  n[         R                  " U5      PM     nn[        [        [        /UQ76   g s  snf r   )r   r   r   
ValueErrorr   )r   r   r   s      r    assert_incompatible_shapes_raiser!   !   s5     &22\\H2*.:: 3s    =c                 t   [         R                  " U [        S9n[        [         R                  R	                  U5      5      n[         R
                  " U5      R                  U5      nU(       a  UR                  nUR                  nU(       a  US S S2   nUS S S2   nXF-   n[        XF5      u  p[        Xy5        g )Ndtype)
r   r   intmultiplyreducearangereshapeTr   r   )
shape0shape1
transposedflippedx0nx1yb0b1s
             r   assert_same_as_ufuncr6   )   s     
&	$B 	BKKv&'A	1		f	%BTTTT"X"X 	Ab%FBq    c                      [         R                  " S5      n [         R                  " S5      n[        X5      u  p#[        X5        [        X5        g )N
   )r   r)   r   r   )xr3   bxbys       r   	test_samer=   ?   s8    
		"A
		"Aa#FBqqr7   c                      [         R                  " S5      n [         R                  " S5      n[        [        S5         [	        XSS9  S S S 5        g ! , (       d  f       g = f)Nr9   zgot an unexpected keywordfloat64r#   )r   r)   r   	TypeErrorr   )r:   r3   s     r   test_broadcast_kwargsrA   F   s@     			"A
		"A	Y(C	DY/ 
E	D	Ds   A
Ac                  
   [         R                  " / SQ/5      n [         R                  " S/S/S//5      n[        X5      u  p#[         R                  " / SQ/ SQ/ SQ/5      nUR                  n[	        XB5        [	        XS5        g )N         rD   rE   rF   )r   arrayr   r+   r   )r:   r3   r;   r<   bx0by0s         r   test_one_offrJ   Q   sf    
)A
1#sQC!Aa#FB
((Iy)4
5C
%%Cssr7   c                  t    / SQn U  H.  nU/n[        X!5        X/n[        X15        XU/n[        XA5        M0     g )N)
 rD   rF   r   rD   )r   rF   rD   r   )rF   r   rD   rF   rF   rD   rF   rF   r   )datar   r   input_shapes2input_shapes3s        r   test_same_input_shapesrX   [   sE    D wl2m3u-m3 r7   c                      SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/S	S/S/SS	/S/SS/S/SS/S/SS	/S	//n U  H"  u  p[        X5        [        US S S
2   U5        M$     g )NrM   rN   rQ   rS   rR   rD   rD   rP   r   r   rO   r%   rT   rU   r   r   s      r   (test_two_compatible_by_ones_input_shapesr]   v   s    
 t
&	6"
&	6"
&	6"
&	6"
&	6"
&	6"
&	6"
&	6"
&	6"
&	6"
&	6"
&	6"D )-$l;l4R40.A )-r7   c                      SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS	/S	/SS
/S	/SS	/S	/SS	/S	/SS/S/SS
/S
/SS/S/SS/S/SS
/S
//n U  H"  u  p[        X5        [        US S S2   U5        M$     g )NrL   rN   rS   rR   rM   rZ   rQ   r   r[   rO   rP   r%   rT   r\   s      r   3test_two_compatible_by_prepending_ones_input_shapesr`      s%   
 dT
 
 
 
fv
$ 
 
 
fv
fv
dT
 
 
 
fv
$ 
 
 
fv
fv)D, )-$l;l4R40.A )-r7   c                  j    SS/SS// SQSS//n U  H  n[        U5        [        US S S2   5        M!     g )	NrN      rE   rF   rE   rN   rN   rb   rD   rF   rc   rE   rF   rF   r%   )r!   )rU   r   s     r   )test_incompatible_shapes_raise_valueerrorri      sI     
t		I	D (6(dd);< r7   c            
         / SS/S/PSS/S/PSS/S/PSS/S/PSS/S/PSS/S/PSS/S/PSS/S/PS	S/S/PSS	/S/PSS/S/PSS/S/PSS	/S	/PS
S/S/PSS/S/PSS/S/PSS/S/PS
S/S/PSS/S/PSS/S/PSS/S/PS
S/S/PS
S/S/PS
S/S/PSS/S/PSS	/S/PSS/S/PS
S/S/PSS/S/PSS	/S	/PSS/S/PS
S/S/PS
S	/S	/Pn U  Hy  u  p[        US   US   SUS    SUS    35        [        US   US   5        [        US   US   S5        S
U;  d  MQ  [        US   US   SS5        [        US   US   SS5        M{     g )NrM   rN   rQ   rS   rR   rZ   rP   r[   rO   rL   r_   r   rD   zShapes:  TF)r6   r\   s      r   test_same_as_ufuncrl      s%   "
t"
&	6"" &	6"" &	6"	"
 &	6"" &	6"" &	6"" &	6"" &	6"" &	6"" &	6"" &	6"" &	6"" dT"  "   !""  #"$ fv%"& $ '"(  )"*  +", fv-". fv/"0 dT1"2  3"4  5"6  7"8 fv9": $ ;"<  =">  ?"@ fvA"B fvC"DF )-$\!_l1o'Q'8,q/9JK	M 	\!_l1o>\!_l1otD \! a,q/5$O a,q/4N )-r7   c                     [         R                  " S5      S[         R                  " S5      /[         R                  " S5      S[         R                  " S5      /[         R                  " S5      S[         R                  " S5      /[         R                  " S5      S[         R                  " S5      /[         R                  " S5      S[         R                  " S5      /[         R                  " S5      S	[         R                  " S	5      /[         R                  " S5      S[         R                  " S5      /[         R                  " S5      S
[         R                  " S5      R                  SS5      /[         R                  " S5      S[         R                  " / SQ/ SQ/5      /[         R                  " S5      S[         R                  " S5      /[         R                  " S5      S[         R                  " S5      /[         R                  " S5      S[         R                  " S5      /[         R                  " S5      S[         R                  " S5      /[         R                  " S5      S[         R                  " S5      /[         R                  " S5      S[         R                  " S5      //n U  H  u  pn[        X5      n[        X45        M     g )Nr   r_   rM   rD   rN   rF   re   rE   rC   rQ   r%   rd   r   rD   rE   rD   rE   )r   rE   rE   rD   )rE   r   )r   rG   r   onesr)   r*   r   r   )rU   input_arrayr   r   actuals        r   test_broadcast_to_succeedsrt      s   	!dBHHQK(	!dBHHQK(	!dBHHQK(	T2771:&	T2771:&	Y	 23	1tRYYq\*	1vryy|33Ar:;	1vrxxI(>?@	Q
#	Q
#	Q
# 
T2771:&	&"''&/2	&"''&/2%D( )-$Hk18, )-r7   c                     ^^ SS/SS/SS/SS/SS/SS/SS/S	S/SS
/SS/SS//n U  H1  u  nm[         R                  " U5      m[        [        UU4S j5        M3     g )Nr_   rL   rM   rN   re   rb   ro   rp   rZ   r%   )r%   )r%   rE   c                     > [        T T5      $ r   )r   )arrtarget_shapes   r   <lambda>*test_broadcast_to_raises.<locals>.<lambda>  s    ,sL*Ir7   )r   r   r   r    )rU   
orig_shaperw   rx   s     @@r   test_broadcast_to_raisesr|     s    	r
	r
	r
	t	t	t			r
	u	D %) 
Lhhz"j"IJ %)r7   c                    ^  [        [        5       S5        [        [        SS/5      S5        [        [        [        R                  " S5      5      S5        [        [        [        R                  " S5      [        R                  " S5      5      S5        [        [        [        R                  " S5      /S-  6 S5        [        [        [        R                  " S5      /S	-  6 S5        [        [        [        R                  " S5      /S-  S/-   6 S5        [        R                  " S5      /S-  [        R                  " S
5      /S-  -   m [	        [
        U 4S j5        g )NrL   rD   rE   re   rZ   rF   rc   ro       d   rF   c                     > [        T 6 $ r   )r   bad_argss   r   ry   &test_broadcast_shape.<locals>.<lambda>-      &6&Ar7   )r   r   r   rq   r   r    r   s   @r   test_broadcast_shaper     s     !#R(!1a&)40!"''&/2F;!"''&/2776?CVL!RWWV_$5$:<fE!RWWV_$5$;=vF !RWWQZL2$5$;=tD
|b BGGAJ<"#44H*ABr7   c                     / S/S/S/S/S/SS/S/S/S/SS/S// SQS/S	/S	/S
S/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S/SS/S//n U  H  u  p[        [        U6 U5        M     [        [        S/S-  6 S5        [        [        S/S-  6 S5        [        [        S/S-  6 S5        g )NrL      ro   re   rZ   r~   ))   r      r   rD   r   )r   rD   r   )r   r   r   r   rQ   rR   rS   rP   r[   rO   r_   rM   rN   rE   rF   rE   r   r   )r   r   )rU   r   rx   s      r   test_broadcast_shapes_succeedsr   0  s    
R
r


$ 
6
&	6"	-y9
i 
&	6"
&	6"
&	6"
&	6"
&	6"
&	6"
&	6"
dT
 
 
 
fv
$ 
 
 
fv
fv
t
Vf7D: '+"%|4lC '+ !VHrM3V<!VHsN4f= !TFRK148r7   c                     ^^ SS/SS// SQSS// SQS	S//n U  H  m[        [        U4S
 j5        M     S/S-  S/S-  -   m[        [        U4S j5        g )NrN   rb   rd   re   rf   rg   rh   )ro   rR   r   )r9   r   rE   c                     > [        T 6 $ r   r   )r   s   r   ry   .test_broadcast_shapes_raises.<locals>.<lambda>d  s    *:L*Ir7   r   c                     > [        T 6 $ r   r   r   s   r   ry   r   g  r   r7   )r   r    )rU   r   r   s    @@r   test_broadcast_shapes_raisesr   Y  si     
t		I)	
FD j"IJ  v{dVb[(H*ABr7   c                     [         R                  " S /5      n [        U 5      n[         R                  " S /5      n[        U[         R                  " S /5      5        [         R                  " / SQ5      n [        U SSU R                  -  4S9n[         R                  " SS/5      n[        X5        [         R                  " / SQ5      n [        U SSSU R                  -  4S9n[         R                  " / SQ/ SQ/ SQ/5      n[        X5        [         R
                  " S	S
/5      n[         R                  " SUS9n [         R                  " SS5      U S'   [        U SSU R                  4S9n/ SQ/S-  nS /S-  /S-  n[        UR
                  U5        [        XAS   5        [        XQS   5        [         R                  " SSS9n [        U SSU R                  4S9n[        U R
                  UR
                  5        [         R
                  " S/S/S.5      n[         R                  " SUS9n [        U SSU R                  4S9n[        U R
                  UR
                  5        [        S5       Vs/ s H  n[        U5      PM     nn[         R                  " U[        S9n [        U SSU R                  4S9n[        U R
                  UR
                  5        [        U/S-  U5        g s  snf )NrD   rE   rF   rc   re   rE   r   stridesrD   rF   r~   r   )numi4)objOrb   r#   r   r   rc   r   V4 )namesformats)r   rG   r   r   itemsizer$   emptyr)   r   ranger   )r   a_viewr   dtexpected_numexpected_objirs           r   test_as_stridedr   j  sO   
$A]FxxHvrxx/0
AAJJ/@AFxxAHv(
A!Q^1DEFxx|\BCHv( 
=,/	0B
R AyyAAeH!QZZAF >A%LFQJ<!#Lr"|E]3|E]3 	T"A!QZZAF&,,' 
RDdV4	5B
R A!QZZAF&,,' $Ah'h!hA'
(#A!QZZAF&,,'sQw'	 	(s   -K%c                   D    \ rS rSrS rS rS rS rS rS r	S r
S	 rS
rg)TestSlidingWindowViewi  c                     [         R                  " S5      n[        US5      n[         R                  " SS/SS/SS/SS//5      n[	        X#5        g )Nr   rE   r   rD   rF   rc   )r   r)   r	   rG   r   )selfrw   arr_viewr   s       r   test_1dTestSlidingWindowView.test_1d  sS    iil&sA.88aVVVV% & 	8.r7   c                     [         R                  S S2S S24   u  pSU-  U-   nSn[        X45      n[         R                  " SS/SS//SS/SS	//SS/S	S
///SS/SS//SS	/SS//S	S
/SS////5      n[	        XV5        g )NrF   rc   r9   )rE   rE   r   rD      rE                     r   ogridr	   rG   r   r   r   jrw   r   r   r   s          r   test_2dTestSlidingWindowView.test_2d  s    xxBQB1fqj&s2881vBx0 !1vBx0 !1vBx02 !#Bx"b2 "Bx"b2 "Bx"b245 6 	8.r7   c                     [         R                  S S2S S24   u  pSU-  U-   n[        USS5      n[         R                  " / SQ/ SQ/ SQ/ SQ//5      n[	        XE5        g )	NrF   rc   r9   r   )r   r9   r   )rD   r   r   )rE   r   r   )rF   r   r   r   r   r   r   rw   r   r   s         r   test_2d_with_axis'TestSlidingWindowView.test_2d_with_axis  sf    xxBQB1fqj&sAq188k)))+ , - 	8.r7   c                     [         R                  S S2S S24   u  pSU-  U-   n[        USS5      n[         R                  " / SQ/ SQ/// SQ/ S	Q/// S
Q/ SQ///5      n[	        XE5        g )NrF   rc   r9   rd   rZ   rn   rC   r9   r   r   r   r   r   r   r   r   r   r   r   r   r   s         r   test_2d_repeated_axis+TestSlidingWindowView.test_2d_repeated_axis  s    xxBQB1fqj&sFF;88y(* +++- .++- .	/ 0 	8.r7   c                     [         R                  S S2S S24   u  pSU-  U-   nSn[        X45      n[         R                  " / SQ/ SQ// SQ/ SQ/// SQ/ SQ// SQ/ S	Q/// SQ/ S
Q// S	Q/ SQ///5      n[	        XV5        g )Nrc   r9   rd   rn   r   rC   r   r   r   )      r   )r   r   !   r   r   s          r   test_2d_without_axis*TestSlidingWindowView.test_2d_without_axis  s    xxBQB1fqj&s288y,7(,79+\:+\:<+\:+\:<	= > 	8.r7   c                 @   [         R                  S S2S S24   u  pSU-  U-   n[        R                  " [        SS9   [        US5        S S S 5        [        R                  " [        SS9   [        US5        S S S 5        [        R                  " [        SS9   [        US	S
S9  S S S 5        [        R                  " [        SS9   [        US5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N{= f! , (       d  f       N_= f! , (       d  f       g = f)Nrc   r9   zcannot contain negative valuesmatch)r%   rF   z3must provide window_shape for all dimensions of `x`rM   z2Must provide matching length window_shape and axisrg   rO   )axisz.window shape cannot be larger than input array)r   r   )r   r   pytestraisesr    r	   )r   r   r   rw   s       r   test_errors!TestSlidingWindowView.test_errors  s    xxBQB1fqj]]:-MNW- O]]KM  T*M ]]JL  YV<L ]]FH  V,H H ONM ML LH Hs/   C+C-C>D
C*-
C;>
D
Dc                    [         R                  " S5      n[        USSS9n[        UR                  R
                  (       + 5        [        R                  " [        SS9   SUS'   S S S 5        [        USS	S9n[        UR                  R
                  5        SUS
'   [        U[         R                  " / SQ5      5        g ! , (       d  f       N`= f)Nr   rE   F	writeablez#assignment destination is read-onlyr   rF   r[   TrO   )r   rF   rE   rF   rc   )r   r)   r	   r
   flagsr   r   r   r    r   rG   )r   rw   views      r   test_writeable$TestSlidingWindowView.test_writeable  s    iil"3U;DJJ((()]];= DJ= #3T:

$$%T
3 9:= =s   B??
Cc           
      J    " S S[         R                  5      n[         R                  " S5      R                  U5      n[	        [        [        USSS9U5      (       + 5        [	        [        [        USSS9U5      5        [	        [        [        US5      U5      (       + 5        g )Nc                       \ rS rSrSrg)1TestSlidingWindowView.test_subok.<locals>.MyArrayi  rL   N)__name__
__module____qualname____firstlineno____static_attributes__rL   r7   r   MyArrayr     s    r7   r   r   rE   FsubokT)r   ndarrayr)   r   r
   
isinstancer	   )r   r   rw   s      r   
test_subok TestSlidingWindowView.test_subok  s    	bjj 	 iil(J239> @&( ( 	) 	
.sATBGLMJ23:GDDEr7   rL   N)r   r   r   r   r   r   r   r   r   r   r   r   r   rL   r7   r   r   r     s+    ///
//-$;
Fr7   r   c                     [         R                  " S5      n [        U SS9n[        UR                  R
                  (       + 5        [        U SS9n[        UR                  R
                  5        SUS'   [        U [         R                  " U S5      5        SU R                  l        [        U SS9n[        U SS9n[        UR                  R
                  (       + 5        g )Nr9   Fr   TrF   .)r   rq   r   r
   r   r   r   	full_like)rw   r   s     r   as_strided_writeabler     s    
''"+CcU+D

$$$% cT*DDJJ  !DIsBLLa01  CIIcU+DcT*D

$$$%r7   c                       \ rS rSrS rSrg)VerySimpleSubClassi  c                 P    [         R                  " USS0UD6R                  U 5      $ )Nr   T)r   rG   r   )clsargskwargss      r   __new__VerySimpleSubClass.__new__  s&    xx4T4V499#>>r7   rL   N)r   r   r   r   r   r   rL   r7   r   r   r     s    ?r7   r   c                        \ rS rSrS rS rSrg)SimpleSubClassi  c                 b    [         R                  " USS0UD6R                  U 5      nSUl        U$ )Nr   Tsimple)r   rG   r   info)r   r   r   r   s       r   r   SimpleSubClass.__new__  s1    xx4T4V499#>	r7   c                 .    [        USS5      S-   U l        g )Nr   r   z
 finalized)getattrr   )r   r   s     r   __array_finalize__!SimpleSubClass.__array_finalize__  s    C,|;	r7   )r   N)r   r   r   r   r   r  r   rL   r7   r   r   r     s    
<r7   r   c                  t   [        / SQ5      n [        [        U 5      [         L 5        [        U SSU R                  -  4S9n[        [        U5      [
        R                  L 5        [        U SSU R                  -  4SS9n[        [        U5      [         L 5        [        / SQ5      n [        U SSU R                  -  4SS9n[        [        U5      [        L 5        [        UR                  S:H  5        [
        R                  " [        U 5      5      R                  SS	5      n[        X5      u  p[        [        U5      [
        R                  L 5        [        [        U5      [
        R                  L 5        [        UR                  UR                  :H  5        [        XSS
9u  p[        [        U5      [        L 5        [        UR                  S:H  5        [        [        U5      [
        R                  L 5        [        UR                  UR                  :H  5        Sn[        X5      n[        [        U5      [
        R                  L 5        [        UR                  U:H  5        [        XSS
9n[        [        U5      [        L 5        [        UR                  S:H  5        [        UR                  U:H  5        g )Nr   re   rE   r   T)r   r   r   zsimple finalizedr%   rD   r   )rE   rc   )r   r
   typer   r   r   r   r   r   r)   r   r*   r   r   r   )r   r   bb_viewr   s        r   test_subclassesr    s   <(ADG))*AJJ/@AFDLBJJ&'AJJ/@MFDL../|$AAJJ/@MFDLN*+FKK--. 			#a&!!"a(A%a+NFDLBJJ&'DLBJJ&'FLLFLL()%a$7NFDLN*+FKK--.DLBJJ&'FLLFLL() E!#FDLBJJ&'FLLE!"!$/FDLN*+FKK--.FLLE!"r7   c                     [         R                  " / SQ5      n [        U S5      n[        UR                  R
                  S5        [        [        UR                  [        S 5      S5        S[        U 5      4S[        SU 5      4/nU H  u  p4[        X45       H  u  pQU(       a  [        R                  " [        5         [        UR                  R
                  S5        S S S 5        [        R                  " [        5         SUS S & S S S 5        [        UR                  R
                  S5        M  [        UR                  R
                  S5        M     M     [        U 5      [        SU 5      4 HB  nU H9  nSUR                  l        [        UR                  R
                  S5        SUS S & M;     MD     SU R                  l        [        SU 5      u  pa[        UR                  R
                  S5        SnS/n[!        [         R                  " S5      Xx5      n	[         R"                  " S	5      n
[        X5      u  p[%        UR&                  UR&                  :H  5        g ! , (       d  f       GN= f! , (       d  f       GNr= f)
NrC   rd   Fr   FTFTre   rM   )r   rG   r   r   r   r   r   r    __setitem__slicer   zipr   warnsFutureWarningDeprecationWarningr   r   r
   r   )originalresult
test_casesis_broadcastresultsarray_is_broadcast_r   r   tricky_arrayotherfirstseconds                r   r   r   D  s   xx	"H(F+F''/*f00%+qA -h89 "21h"?@BJ!+*-l*D&!\\-0 !7!7> 1\\"45 !F1I 6 V\\33T: V\\33T: +E ", %X.$Q13F%)FLL"//6F1I 3  %HNN H-IA''/ EcGbhhqk5:LHHTNE$\9MEEKK6<<'(= 1055s   =!I I1
I.1
J c                  *   [         R                  " / SQ5      n S[        U 5      4S[        SU 5      4/nU HZ  u  p#[        X#5       HF  u  pEU(       a  [	        U5      R
                  (       d   eM*  [	        U5      R
                  (       d  MF   e   M\     g )NrC   r
  r  r   )r   rG   r   r  
memoryviewreadonly)r  r  r  r  r  r  s         r   test_writeable_memoryviewr   t  s    
 xx	"H.x9: "21h"?@BJ!+*-l*D&! "&)2222%f-66666 +E ",r7   c                      [         R                  " S[        S9n [         R                  " S/S-  [        S9n[        U S5      n[	        X5        [        U [         R                  " S5      5      u  p#[	        X5        g )Nr   r#   rF   rN   )r   rG   objectr   r   r   rq   )rr   r   rs   r  s       r   test_reference_typesr#    sZ    ((3f-Kxx	0H+t,Fx( bggaj9IFx(r7   )FF),r   numpyr   numpy._core._rational_testsr   numpy.lib._stride_tricks_implr   r   r   r   r   r	   numpy.testingr
   r   r   r   r   r   r!   r6   r=   rA   rJ   rX   r]   r`   ri   rl   rt   r|   r   r   r   r   r   r   r   r   r   r  r   r   r#  rL   r7   r   <module>r(     s      0  &;,0 46B2B@=1Oh-4K&C"&9RC"+(\cF cFL&$? ?
<' <"#J-)`7()r7   