+
    yȇiV                        ^ RI t^ RIt^ RIHt ^ RIHt ^ RIHu H	t
 ^ RIHtHtHtHt ^ RIHt ^ RIHt ^ RIHt ]P.                  P0                  .t]P4                  ! R4      t]P9                  ]P.                  P;                  ]! ]P<                  4      ]! R4      8H  ;'       d    ]! 4       R	]P<                   2R
7      4       ]P>                  ! RR.R7      R 4       t ]P>                  ! R/ .R/ .R/ .R/ .R/ .R/ .RR^ /.R/ .RR^ /..	R7      R 4       t!]P>                  R 4       t"]
PF                  ! R4      ]P.                  PI                  R4       ! R R4      4       4       t%]
PF                  ! R4       ! R R4      4       t&]
PF                  ! R4      R 4       t']
PF                  ! R4      R 4       t(]
PF                  ! R4      ]P.                  PR                  ]P.                  PI                  R4       ! R  R!4      4       4       4       t*]
PF                  ! R4      R" 4       t+ ! R# R$]4      t,]
PF                  ! R4       ! R% R&4      4       t-R# )'    N)is_platform_arm)NumbaUtilError)	DataFrameSeriesoption_contextto_datetime)BaseIndexer)Versionnumbaz0.61z&Segfaults on ARM platforms with numba )reasonsingletable)paramsc                    V P                   # )z3method keyword in rolling/expanding/ewm constructorparamrequests   &n/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/window/test_numba.pymethodr      s     ==    summeanmedianmaxminvarddofstdc                     V P                   # Nr   r   s   &r   $arithmetic_numba_supported_operatorsr"   #   s     ==r   c                      \        R ^.^,          ^.^,          ,           ^.^,          ,           R\        P                  ! ^(4      /4      # )AB)r   nparange r   r   
roll_framer)   4   s:    cA38qcBh.!q8#ryy}MNNr   ignorec                   z  a  ] tR t^9t o ]P
                  P                  RRR.4      R 4       tR tR t	]P
                  P                  R]
! ]P                  ! ^4      4      ]
! ^^^^]P                  ]P                  ^^^^.
^^^^]P                  ]P                  ^^^^.
]P                  ]P                  ^^^^^^^^.
.4      P                  ]! ]! ^4      RR	7      ]! ^^
^
]P                  ^^^^.4      ]! ^^
^
]P                  ^
^^^.4      .4      R
 4       t]P
                  P                  R]
! ]P                  ! ^4      4      ]! ]! ^4      RR	7      .4      R 4       t]P
                  P                  RRR.4      R 4       t]P
                  P                  RRR^R^ /.R/ ..4      R 4       tR tRtV tR# )
TestEnginejitTFc                F   R  pV'       d   ^ RI pVP                  V4      pRVRVRV/p	Rp
\        \        ^
4      4      pVP	                  ^WVR7      P                  WzRV	RR7      pVP	                  ^WVR7      P                  VR	V
RR
7      p\        P                  ! W4       R# )c                 b    ^ pV F  pW#,          pK  	  \         P                  ! V 4      V,           # r   r&   r   )xargsarg_sumargs   &*  r   f0TestEngine.test_numba_vs_cython_apply.<locals>.f?   s+    G 771:''r   Nnogilparallelnopython)centerstepr   T)r3   engineengine_kwargsrawcython)r=   r3   r?      r   r-   r   rangerollingapplytmassert_series_equal)selfr-   r8   r9   r:   r;   r<   r6   r   r>   r3   sresultexpecteds   &&&&&&&       r   test_numba_vs_cython_apply%TestEngine.test_numba_vs_cython_apply=   s    	( 		!A %Xz8T591V7==4 > 
 99Qv99??hTt @ 
 	v0r   c                   R	R lp\        \        ^
4      4      pVP                  ^4      P                  VRRR^/R7      pVP                  ^4      P	                  4       ^,           p\
        P                  ! WE4       VP                  ^4      P                  VRRR
R7      p\
        P                  ! WE4       VP                  4       P                  VRRR^/R7      pVP                  4       P	                  4       ^,           p\
        P                  ! WE4       VP                  4       P                  VRRR
R7      p\
        P                  ! WE4       VP                  R4      P                  ^4      P                  VRRR^/R7      pVP                  R4      P                  ^4      P	                  4       ^,           p\
        P                  ! WE4       VP                  R4      P                  ^4      P                  VRRR
R7      p\
        P                  ! WE4       VP                  R4      P                  4       P                  VRRR^/R7      pVP                  R4      P                  4       P	                  4       ^,           p\
        P                  ! WE4       VP                  R4      P                  4       P                  VRRR
R7      p\
        P                  ! WE4       R# )r   c                 0    V P                  4       V,           # r!   r   )sras   &&r   func5TestEngine.test_apply_numba_with_kwargs.<locals>.funcY   s    668a<r   r   TrS   )r=   r?   kwargs)r=   r?   r3   r$   Nr0      )	r   rD   rE   rF   r   rG   assert_frame_equal	expandinggroupby)rI   r)   rT   datarK   rL   s   &&    r   test_apply_numba_with_kwargs'TestEngine.test_apply_numba_with_kwargsV   sg   	  r#a&&tGsTUh&W<<?&&(1,
f/a&&tGD&Q
f/ !''W$PSUVx'X>>#'')A-
f/!''W$T'R
f/ s#WQZU4T3(UC 	
 %%c*221599;a?
f/ s#WQZU4TU= 	
 	f/ s#Y[U4T3(UC 	
 %%c*446::<q@
f/ s#Y[U4TU= 	
 	f/r   c                P   R  p\        ^^.^^.^^.^^..4      pVP                  ^R^R7      P                  VRRR7      p\        \        P                  \        P                  .\        P                  \        P                  .^^.^^..4      p\
        P                  ! W44       R# )c                 8    \        V 4      ^8X  g   Q hV R,          # )   )lenr2   s   &r   last_row3TestEngine.test_numba_min_periods.<locals>.last_row   s    q6Q;;R5Lr   r   r   min_periodsTr   r?   r=   N)r   rE   rF   r&   nanrG   rY   )rI   re   dfrK   rL   s   &    r   test_numba_min_periods!TestEngine.test_numba_min_periods   s    	 AAAA78Ag1=CC$w D 
 rvvrvv.0@1a&1a&QR
f/r   r\   foonamec                    Vw  rxR VRVRV/p	VP                  ^VR7      p
\        W4      ! R	RRRV	/VB p\        W4      ! R	RR/VB p\        P                  ! W4       R# )
r8   r9   r:   r<   r=   r   r>   r@   Nr(   )rE   getattrrG   assert_equal)rI   r\   r8   r9   r:   r"   r<   r   rV   r>   rollrK   rL   s   &&&&&&&      r   $test_numba_vs_cython_rolling_methods/TestEngine.test_numba_vs_cython_rolling_methods   s{    2 > %Xz8T||AD|)& 

*7
;A
 4(CCFC
)r   c                    Vw  rgR VRVRV/p\        \        P                  ! ^4      4      pVP                  4       p	\	        W4      ! RRRRV/VB p
\	        W4      ! RRR/VB p\
        P                  ! W4       R# )	r8   r9   r:   r=   r   r>   r@   Nr(   )r   r&   eyerZ   rs   rG   rt   )rI   r\   r8   r9   r:   r"   r   rV   r>   expandrK   rL   s   &&&&&&      r   &test_numba_vs_cython_expanding_methods1TestEngine.test_numba_vs_cython_expanding_methods   s     > %Xz8T#!( 

*7
;A
 6*E(EfE
)r   c                B   R  pR pV'       d'   ^ RI pVP                  V4      pVP                  V4      pRVRVRV/p	\        \        ^
4      4      P	                  ^VR7      p
V
P                  VRV	RR	7      pV
P                  VR
RR7      p\        P                  ! W4       V
P                  VRV	RR	7      pV
P                  VR
RR7      p\        P                  ! W4       V
P                  VRV	RR	7      pV
P                  VR
RR7      p\        P                  ! W4       R# )c                 <    \         P                  ! V 4      ^,           # )   r1   rd   s   &r   func_1+TestEngine.test_cache_apply.<locals>.func_1   s    771:>!r   c                 <    \         P                  ! V 4      ^,          # )   )r&   r   rd   s   &r   func_2+TestEngine.test_cache_apply.<locals>.func_2   s    66!9q= r   Nr8   r9   r:   rr   r   T)r=   r>   r?   r@   r=   r?   rC   )rI   r-   r8   r9   r:   r<   r   r   r   r>   ru   rK   rL   s   &&&&&&       r   test_cache_applyTestEngine.test_cache_apply   s    	"	! YYv&FYYv&F %Xz8TeBi (((67-T  
 ::fX4:@
v07-T  
 ::fX4:@
v07-T  
 ::fX4:@
v0r   zwindow,window_kwargsrE   windowrh   rZ   c                j   R  pRVRVRV/p\        R. R
O/4      p	\        W4      ! RRV/VB P                  VRRVRR7      p
\        R. RO/4      p\        P                  ! W4       \        W4      ! RRV/VB P                  VRRVRR7      p
\        R. RO/4      p\        P                  ! W4       R	# )c                 <    \         P                  ! V 4      V,           # r!   r&   r   )valuesr2   s   &&r   add,TestEngine.test_dont_cache_args.<locals>.add  s    66&>A%%r   r:   r8   r9   valuer   Tr   )r?   r=   r>   r3   Nr   r   r   r(   rW         ?r   r   rA          @r   r   )r   rs   rF   rG   rY   )rI   r   window_kwargsr8   r9   r:   r   r   r>   rk   rK   rL   s   &&&&&&&     r   test_dont_cache_argsTestEngine.test_dont_cache_args   s    	& $Xwz8T+,$DFDmDJJT'T K 
 g78
f/$DFDmDJJT'T K 
 g78
f/r   c                  aaa R oRoRoVVV3R lpRSRSRS/p\        R. R
O/4      pVP                  ^4      P                  VRRVR7      p\        R. RO/4      p\        P                  ! WE4       R oRSRSRS/pVP                  ^4      P                  VRRVR7      p\        R. RO/4      p\        P                  ! WE4       R	# )FTc                 $   < SS,           S,           # r!   r(   )r2   r8   r:   r9   s   &r   rT   6TestEngine.test_dont_cache_engine_kwargs.<locals>.func  s    8#h..r   r:   r8   r9   r   r   )r?   r=   r>   Nr   r   r   r   rE   rF   rG   rY   )	rI   rT   r>   rk   rK   rL   r8   r:   r9   s	   &     @@@r   test_dont_cache_engine_kwargs(TestEngine.test_dont_cache_engine_kwargs  s     	/ $Xwz8T+,A$$d7- % 
 g78
f/#Xwz8TA$$d7- % 
 g78
f/r   r(   N)__name__
__module____qualname____firstlineno__pytestmarkparametrizerM   r]   rl   r   r&   ry   rj   infTr   rD   rv   r{   r   r   r   __static_attributes____classdictcell____classdict__s   @r   r,   r,   9   s     [[UT5M21 31060p0 [[bffQi 1aAq!<1aAq!<VVRVVQ1aAq!< a58%(BB1a34BBAq!45	
 *! *( [[266!9%veAhU'CD** [[UT5M2!1 3!1F [[1mQ78"	
00,0 0r   r,   c                     a  ] tR tRt o ]P
                  P                  RR R .RR.R7      ]P
                  P                  RR	R
.4      R 4       4       t]P
                  P                  RR R .RR.R7      ]P
                  P                  RR	R
.4      R 4       4       t]P
                  P                  RRR.4      ]P
                  P                  RR	R
.4      R 4       4       t	]P
                  P                  RRR.4      R 4       t
RtV tR# )TestEWMi/  grouperc                    V # r!   r(   rd   s   &r   <lambda>TestEWM.<lambda>2      ar   c                $    V P                  R 4      # r$   r[   rd   s   &r   r   r   2      199S>r   Noner[   )idsr   r   r   c                   \        R . R	OR\        ^4      /4      p\        P                  ! \        RR7      ;_uu_ 4        \        V! V4      P                  RR7      V4      ! RR7       RRR4       R#   + '       g   i     R# ; i)
r$   r%   zengine must be eithermatchr   comrn   r=   NrS   brS   r   r   rD   r   raises
ValueErrorrs   ewmrI   r   r   rk   s   &&& r   test_invalid_engineTestEWM.test_invalid_engine1  s\    
 13aAB]]:-DEEGBKOOO,f5UC FEEEs   *A33B	c                    V # r!   r(   rd   s   &r   r   r   ;  r   r   c                $    V P                  R 4      # r   r   rd   s   &r   r   r   ;  r   r   c                   \        R . ROR\        ^4      /4      p\        P                  ! \        RR7      ;_uu_ 4        \        V! V4      P                  RR7      V4      ! RRR/R	7       R
R
R
4       R
#   + '       g   i     R
# ; i)r$   r%   zcython engine does notr   r   r   r@   r:   Tr=   r>   Nr   r   r   s   &&& r   test_invalid_engine_kwargs"TestEWM.test_invalid_engine_kwargs:  sf    
 13aAB]]:-EFFGBKOOO,f5
D/A GFFFs   -A66B	c                &   \        R \        ^4      /4      pVR8X  d   R pM
. ROVR&   R pVR8X  d   RpV! V4      P                  RWvR7      p	R	VR
VRV/p
\        W4      ! RV
R7      p\        W4      ! RR7      p\        P
                  ! W4       R# )r%   r   c                     V # r!   r(   rd   s   &r   r   .TestEWM.test_cython_vs_numba.<locals>.<lambda>L      r   r$   c                 $    V P                  R 4      # r   r   rd   s   &r   r   r   O      		#r   r   Tr   )r   adjust	ignore_nar8   r9   r:   r   r   r@   r   Nr   )r   rD   r   rs   rG   rY   )rI   r   r   r8   r9   r:   r   r   rk   r   r>   rK   rL   s   &&&&&&&&     r   test_cython_vs_numbaTestEWM.test_cython_vs_numbaE  s    
 U1X'f!G*BsG.GU?Fbkoo#foJ %Xz8T%WMR3'x8
f/r   c                &   \        R . RO/4      pVR8X  d   R pM
R p. ROVR&   Rp\        . RO4      pV! V4      P                  VRWXR7      p	RVR	VR
V/p
V	P                  RV
R7      pV	P                  RR7      p\        P
                  ! W4       R# )r%   r   c                     V # r!   r(   rd   s   &r   r   4TestEWM.test_cython_vs_numba_times.<locals>.<lambda>`  r   r   c                 $    V P                  R 4      # r   r   rd   s   &r   r   r   b  r   r   r$   z23 daysT)halflifer   r   timesr8   r9   r:   r   r   r@   r   N)r   r   rX   rX   rB   rB   )rS   r   rS   r   r   rS   )
2020-01-01r   z
2020-01-02z
2020-01-10z
2020-02-23z
2020-01-03)r   r   r   r   rG   rY   )rI   r   r8   r9   r:   r   rk   r   r   r   r>   rK   rL   s   &&&&&&       r   test_cython_vs_numba_times"TestEWM.test_cython_vs_numba_timesZ  s     /01f!G.G4BsG	
 bkoodi  
 !%Xz8TF8888,
f/r   r(   N)r   r   r   r   r   r   r   r   r   r   r   r   r   r   s   @r   r   r   /  s(    [[K!9:@S   [[X7D 8D
 [[K!9:@S   [[X7 8 [[Y(;<[[X70 8 =0& [[Y(;<0 =0r   r   c                  N   R  p \        \        ^
4      4      p\        RR4      ;_uu_ 4        VP                  ^4      P	                  V RRR7      pRRR4       VP                  ^4      P	                  V RRR7      p\
        P                  ! VX4       R#   + '       g   i     LL; i)c                 <    \         P                  ! V 4      ^,           # rA   r1   rd   s   &r   r6   !test_use_global_config.<locals>.f~  s    wwqzA~r   zcompute.use_numbaTNr   r   )r   rD   r   rE   rF   rG   rH   )r6   rJ   rK   rL   s       r   test_use_global_configr   |  s     	uRyA	+T	2	21##Ad#= 
3yy|!!!G!>H8V, 
3	2s   $BB$	c            
         \         P                  ! \        R R7      ;_uu_ 4        \        \	        ^4      4      P                  ^4      P                  R R^/RRR7       RRR4       \         P                  ! \        RR7      ;_uu_ 4        \        \	        ^4      4      P                  ^4      P                  R	 R^/RRR7       RRR4       \        P                  ! \        \	        ^4      \        R
7      ^,           \        \	        ^4      4      P                  ^4      P                  R R^/RRR7      4       R#   + '       g   i     L; i  + '       g   i     L; i)z&got an unexpected keyword argument 'a'r   c                     V # r!   r(   rd   s   &r   r   .test_invalid_kwargs_nopython.<locals>.<lambda>  s    ar   rS   r   T)rV   r=   r?   Nz-numba does not support keyword-only argumentsc                    V # r!   r(   r2   rS   s   &$r   r   r     s    Ar   dtypec                 .    W,           P                  4       # r!   rQ   r   s   &&r   r   r     s    QUKKMr   )r   r   	TypeErrorr   rD   rE   rF   r   rG   rH   floatr(   r   r   test_invalid_kwargs_nopythonr     s   	y(P	Q	QuQx  #))ad 	* 	
 
R 
M
 
 	uQx  #))sAhwD 	* 	

 uQxu%)uQx		)3(7PT	U	 
R	Q
 
s   :D<:E<E	E	c                   6  a  ] tR tRt o R tR tR tR tR tR t	R t
]P                  P                  R	]P                  ! ^4      ]P                   ! R4      ]P                   ! R4      .4      ]P                  P                  R
RR.4      R 4       4       tRtV tR# )TestTableMethodi  c                    R  p\         P                  ! \        RR7      ;_uu_ 4        \        \	        ^4      4      P                  ^RR7      P                  VRRR7       RRR4       R#   + '       g   i     R# ; i)	c                 @    \         P                  ! V ^ R7      ^,           # r   axisr   rd   s   &r   r6   7TestTableMethod.test_table_series_valueerror.<locals>.f      66!!$q((r   z1method='table' not applicable for Series objects.r   r   r   r   Tr   N)r   r   r   r   rD   rE   rF   )rI   r6   s   & r   test_table_series_valueerror,TestTableMethod.test_table_series_valueerror  sj    	) ]]Q
 
 58$$Qw$7=='t > 
 
 
 
s   8A**A;	c           	        Vw  rgR VRVRV/p\        \        P                  ! ^4      4      p	V	P                  ^R^ VR7      p
VR9   dH   \        P
                  ! \        V R2R7      ;_uu_ 4        \        W4      ! RRVRR	/VB  R
R
R
4       R
# V	P                  ^R^ VR7      p\        W4      ! RRVRR	/VB p\        W4      ! RRVRR	/VB p\        P                  ! W4       R
#   + '       g   i     R
# ; i)r8   r9   r:   r   r   rh   r<    not supportedr   r>   r=   r   Nr   r   r   r(   )
r   r&   ry   rE   r   r   NotImplementedErrorrs   rG   rY   )rI   r8   r9   r:   r"   r<   r   rV   r>   rk   
roll_tableroll_singlerK   rL   s   &&&&&&        r   !test_table_method_rolling_methods1TestTableMethod.test_table_method_rolling_methods  s    > %Xz8Trvvay!ZZ'qtZL
^#2VHN:STT
+ "/8?CI UT
 **QxQT*RKZ0 +4;?EF {3 +4;?EH !!&3 UTTs   /C&&C7	c                &   R VRVRV/pR p\        \        P                  ! ^4      4      pVP                  ^R^ VR7      P	                  VRVRR7      pVP                  ^R	^ VR7      P	                  VRVRR7      p	\
        P                  ! W4       R
# )r8   r9   r:   c                 @    \         P                  ! V ^ R7      ^,           # r   r   rd   s   &r   r6   :TestTableMethod.test_table_method_rolling_apply.<locals>.f  r   r   r   r   Tr   r?   r>   r=   r   N)r   r&   ry   rE   rF   rG   rY   )
rI   r8   r9   r:   r<   r>   r6   rk   rK   rL   s
   &&&&&     r   test_table_method_rolling_apply/TestTableMethod.test_table_method_rolling_apply  s     %Xz8T	) rvvay!Ag14HNN4}W O 
 ::aad:KQQ4}W R 
 	f/r   c                   R  p\        R. R	OR. R
O/4      pVP                  ^R^ R7      RR.,          P                  VRRR7      p\        R. ROR. RO/4      p\        P                  ! W44       VP                  ^R^ R7      RR.,          P                  VRRR7      p\        R. ROR. RO/4      p\        P                  ! W44       R# )c                 X    \         P                  ! V R,          V R,          ,
          4      # )NNN)r  r   )r  rX   )r&   nanmeanrd   s   &r   r6   DTestTableMethod.test_table_method_rolling_apply_col_order.<locals>.f  s    ::ag$/00r   rS   r   r   rg   Tr   ri   N)rX   rB   ra   r   r      )r        r   r  r  )r  r  gh˹WUg4F먪rb   )r   r   r   gh˹WU@g4F먪@rX   )r   rE   rF   rG   assert_almost_equal)rI   r6   rk   rK   rL   s   &    r   )test_table_method_rolling_apply_col_order9TestTableMethod.test_table_method_rolling_apply_col_order  s    	1 ''
 Ag1=sCjIOO4 P 
 99
 	v0Ag1=sCjIOO4 P 
 33
 	v0r   c                    R  p\        . RO. RO. R	O. R
O.4      pVP                  ^R^ VR7      P                  VRRR7      p\        . RO. RO. RO. RO.4      RRV1,          p\        P                  ! WE4       R# )c                     \         P                  ! ^V P                  ^,          34      pV R,          V R,          ,          P                  ^ R7      V R,          P                  4       ,          VR&   V# )rX   r   )r  :NrB   N)r  rB   )r&   onesshaper   )r2   arrs   & r   weighted_meanNTestTableMethod.test_table_method_rolling_weighted_mean.<locals>.weighted_mean  sT    ''1aggaj/*CE(QtW,11q19AdGKKMICJJr   r   r   Tr   ri   N)rX   rB   g333333?)rB   ra   g?)ra   r   g?)r   r   gffffff?)r   r   r   )g?r   r   )gk}
@gk}@r   )g1?r  r   r   )rI   r<   r  rk   rK   rL   s   &&    r   'test_table_method_rolling_weighted_mean7TestTableMethod.test_table_method_rolling_weighted_mean  s    	
 [+{KLAg14HNNtG O 
 )"	
 D& 	f/r   c                   R VRVRV/pR p\        \        P                  ! ^4      4      pVP                  RR7      P	                  VRVRR7      pVP                  R	R7      P	                  VRVRR7      p\
        P                  ! Wx4       R
# )r8   r9   r:   c                 @    \         P                  ! V ^ R7      ^,           # r   r   rd   s   &r   r6   <TestTableMethod.test_table_method_expanding_apply.<locals>.f  r   r   r   r   Tr   r  r   N)r   r&   ry   rZ   rF   rG   rY   )	rI   r8   r9   r:   r>   r6   rk   rK   rL   s	   &&&&     r   !test_table_method_expanding_apply1TestTableMethod.test_table_method_expanding_apply  s     %Xz8T	) rvvay!W-334}W 4 
 <<x<0664}W 7 
 	f/r   c           	        Vw  rVR VRVRV/p\        \        P                  ! ^4      4      pVP                  RR7      p	VR9   dH   \        P
                  ! \        V R2R7      ;_uu_ 4        \        W4      ! RRVRR	/VB  R
R
R
4       R
# VP                  RR7      p
\        W4      ! RRVRR	/VB p\        W4      ! RRVRR	/VB p\        P                  ! W4       R
#   + '       g   i     R
# ; i)r8   r9   r:   r   r   r   r   r>   r=   r   Nr   r   r(   )
r   r&   ry   rZ   r   r   r   rs   rG   rY   )rI   r8   r9   r:   r"   r   rV   r>   rk   expand_tableexpand_singlerK   rL   s   &&&&&        r   #test_table_method_expanding_methods3TestTableMethod.test_table_method_expanding_methods  s    > %Xz8Trvvay!||7|3^#2VHN:STT- "/8?CI UT
 LLL9M\2 +4;?EF }5 +4;?EH !!&3 UTTs   ,C  C1	r\   r   r   r   c                    R VRVRV/p\        V4      p\        VP                  ^RR7      V4      ! VRR7      p\        VP                  ^RR7      V4      ! VRR7      p	\        P                  ! W4       R# )	r8   r9   r:   r   )r   r   r   )r>   r=   r   N)r   rs   r   rG   rY   )
rI   r\   r   r8   r9   r:   r>   rk   rK   rL   s
   &&&&&&    r   test_table_method_ewm%TestTableMethod.test_table_method_ewm4  sw     !%Xz8Tt_Ag6?'
 266a696B'
 	f/r   r(   N)rB   ra   )ra   rB   )r   r   r   r   r   r  r	  r  r  r#  r(  r   r   r   r&   ry   r  r+  r   r   r   s   @r   r   r     s     
	4:01@0(040 [[VbffQi"''&/%RS[[X70 8 T0r   r   c                     \        R . RO/4      p \        P                  ! R4      ;_uu_ 4        V P                  P	                  ^4      P                  \        P                  RRR7       RRR4       R#   + '       g   i     R# ; i)col1FTr   ri   N)rX   rB   ra   r   r   )r   rG   assert_produces_warningr.  rE   rF   r&   prod)rk   s    r   test_npfunc_no_warningsr1  D  sW    	FO,	-B		#	#E	*	*
  d7 C 
+	*	*	*s   <A44B	c                   <   a a ] tR tRt oV 3R ltRR ltRtVtV ;t# )PrescribedWindowIndexeriK  c                <   < Wn         W n        \        SV `  4        R # r!   )_start_endsuper__init__)rI   startend	__class__s   &&&r   r8   PrescribedWindowIndexer.__init__L  s    	r   c                    Vf   \        V P                  4      p\        P                  ! V P                  ^ V4      p\        P                  ! V P                  ^ V4      pWg3# r!   )rc   r5  r&   clipr6  )rI   
num_valuesrh   r;   closedr<   r9  r:  s   &&&&&&  r   get_window_bounds)PrescribedWindowIndexer.get_window_boundsQ  sL     T[[)JQ
3ggdiiJ/zr   )r6  r5  )NNNNN)	r   r   r   r   r8  rA  r   r   __classcell__)r;  r   s   @@r   r3  r3  K  s     
 r   r3  c            
          a  ] tR tRt o ]P
                  P                  RRR. R	O3RR. R
O3RR. RO3RR. RO3.4      R 4       tR tRt	V t
R# )TestMinMaxNumbai[  zis_max, has_nan, exp_listTFc           	        . ROp\        R. R	OR. R
OR. RO/4      pV'       d    \        P                  VP                  VR3&   \	        VRR7      pVP
                  P                  \        VP                  P                  4       VP                  P                  4       4      4      pV'       d   VP                  RR7      pMVP                  RR7      p\        P                  ! W4       R# )r   r\   r9  r:  ro   r   r   N)r   r   r  )
      @      @      @r   r                 @      @       @      "@)
rB   r   ra   r   r   r   r   r   r  ra   )
ra   r   r   r   r   r  r  r  	   
   )r   r&   rj   locr   r\   rE   r3  r9  to_numpyr:  r   r   rG   rH   )	rI   is_maxhas_nanexp_listnan_idxrk   rL   rrK   s	   &&&&     r   test_minmaxTestMinMaxNumba.test_minmax]  s     J76
 &(ffBFF7F?#(0GGOO#BHH$5$5$79JK
 UU'U*FUU'U*F
v0r   c                   \         P                  ! \        ^4      \         P                  R7      pV^,           pV^,          V^&   V^,          ^,
          V^&   \	        RVR,          RVRV/4      pVP
                  P                  \        W4      4      p\        P                  ! \        RR7      ;_uu_ 4        VP                  RR	7       R
R
R
4       R
#   + '       g   i     R
# ; i)r   r   r\   r   r9  r:  z5Start/End ordering requirement is violated at index 3r   r   r   N)r&   arrayrD   int64r   r\   rE   r3  r   r   r   r   )rI   r9  r:  rk   rW  s   &    r   test_wrong_order TestMinMaxNumba.test_wrong_order|  s    q2aiQA8a<aWeUCHIGGOO3E?@]]U
 
 EEE!
 
 
 
s   8CC&	r(   N)
rI  rG  r   rG  r   rG  rK  rL  rM  rN  )
rI  rH  r   rH  r   rH  rK  rL  rL  rN  )
rI  r   r   r   r   rJ  rJ  rJ  rL  rJ  )
rI  r   r   r   r   r   rK  rK  rL  r   )r   r   r   r   r   r   r   rX  r]  r   r   r   s   @r   rE  rE  [  sd     [[#5LM4KLEMNDLM		
11," "r   rE  ).numpyr&   r   pandas.compatr   pandas.errorsr   pandas.util._test_decoratorsutil_test_decoratorstdpandasr   r   r   r   pandas._testing_testingrG   pandas.api.indexersr	   pandas.util.versionr
   r   
single_cpu
pytestmarkimportorskipr   appendskipif__version__fixturer   r"   r)   
skip_if_nofilterwarningsr,   r   r   r   slowr   r1  r3  rE  r(   r   r   <module>ru     s     ) ( ) )   + 'kk$$%
G$ 
  
KK!!"gfo5KK/:K78I8I7JK   '*+ ,
 			2						
 O O wH%p0 p0 & p0f wI0 I0 I0X w- - w ( wH%`0 `0 &  `0F wD Dk   w," ," ,"r   