+
    xȇiS                       R t ^ RIHt ^ RIHtHt ^ RIt^ RIt^ RIH	t	H
t
HtHtHt ^ RIHu Hu Ht ^ RIHtHtHt ^ RIHt ^ RIHtHtHtHt ^ RIHt ^ RI H!t! ^ R	I"Ht ^ R
I#H$t$H%t%H&t&H't'H(t(H)t)H*t*H+t+H,t,H-t-H.t.H/t/H0t0H1t1H2t2H3t3H4t4H5t5 . RZOt6R[R lt7]Pp                  ! ]Pr                   U u. uF7  p ]:! ];! ]V 4      ]Px                  4      '       g   K%  V R8w  g   K.  ];! ]V 4      NK9  	  up R7      R 4       t=]Pp                  ! ]Pr                   U u. uF  q R\9  g   K  ];! ]V 4      NK  	  up R7      R 4       t>]Pp                  R 4       t?]Pp                  R 4       t@ ! R R4      tA ! R R4      tB ! R R4      tCR  tDR! tE ! R" R#4      tFR$ tG ! R% R&4      tHR' tI]P                  P                  R(]L! ]P                  4      4      R) 4       tNR* tO]P                  P                  R(]L! ]P                  4      4      R+ 4       tP]P                  P                  R(]L! ]P                  4      4      R, 4       tQR- tRR. tSR/ tT]P                  P                  R0R1^/R23R1^/R33R1R]/R43R^/R53RR]/R63R^/R73RR]/R83R^/R93RR]/R:3R^/R;3RR]/R<3R^/R=3RR]/R>3R^/R?3RR]/R@3R^/RA3RR]/RB3R^/RC3RR]/RD3.4      RE 4       tURF tV]P                  P                  RG. R^O4      RH 4       tWRI tX]P                  P                  RJ. R_O4      RK 4       tY]P                  P                  RL],! ^^RM7      ]! RN4      3],! ^RO7      ]! RP4      3.4      RQ 4       tZ]P                  P                  RR. R`O4      RS 4       t[RT t\RU t]RV t^]P                  P                  RW],! ^4      ]2! ^4      .4      ]P                  P                  RX],! ^4      ]2! ^4      .4      RY 4       4       t_R# u up i u up i )az!
Tests of pandas.tseries.offsets
)annotations)datetime	timedeltaN)NaT	Timedelta	Timestamp
conversion	timezones)_get_offset_offset_map	to_offset)INVALID_FREQ_ERR_MSG)	DataFrameDatetimeIndexSeries
date_range)WeekDay)offsets)FY5253BDay	BMonthEndBusinessHourCustomBusinessDayCustomBusinessHourCustomBusinessMonthBeginCustomBusinessMonthEnd
DateOffsetDayEasterFY5253QuarterLastWeekOfMonth
MonthBeginNanoTickWeekWeekOfMonthyearsmonthsweeksdayshoursminutessecondsmicrosecondsc           	     4   V \         J d   V ! V^^RVR7      p V # V \        J d   V ! V^^^RVR7      p V # V \        J d   V ! V^VR7      p V # V \        J d   V ! V^^VR7      p V # V \        J d   V ! V^VR7      p V # V \
        J d   V ! WR7      p V # V ! WR7      p V # )   last)nstartingMonthweekday	variation	normalize)r1   r2   r3   qtr_with_extra_weekr4   r5   )r1   r3   r5   )r1   weekr3   r5   )r)   r5   r5   )r   r   r    r%   r$   r   )klassvaluer5   s   &&&y/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/tseries/offsets/test_offsets.py_create_offsetr<   J   s    
4 L' 
-	 !
$ L 
/	!qI> L 
+	AqIF L 
$qI>
 L	 
*	56 L e1L    MonthOffset)paramsc                    V P                   # )zG
Fixture for month based datetime offsets available for a time series.
paramrequests   &r;   month_classesrE   j   s     ==r=   c                    V P                   # )zC
Fixture for all the datetime offsets available for a time series.
rA   rC   s   &r;   offset_typesrG   y   s     ==r=   c                 .    \        \        R ^^4      4      # )  )r   r    r=   r;   dtrK      s    XdAq)**r=   c                    / R \        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR	\        R
4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      b/ R\        R4      bR\        R4      bR\        R4      bR\        R4      bR \        R!4      bR"\        R4      bR#\        R!4      bR$\        R%4      bR&\        R%4      bR'\        R(4      bR)\        R*4      bR+\        R,4      bR-\        R,4      bR.\        R(4      bR/\        R04      bR1\        R24      bR3\        R44      bCR5\        R64      R7\        R84      R9\        R:4      R;\        R<4      /C# )=r   z2011-01-02 09:00:00r   BusinessDay2011-01-03 09:00:00r   r   z2011-01-31 09:00:00r   r!   z2011-02-01 09:00:00BusinessMonthBeginMonthEndSemiMonthEndz2011-01-15 09:00:00SemiMonthBeginBusinessMonthEnd	YearBeginz2012-01-01 09:00:00
BYearBeginYearEndz2011-12-31 09:00:00BYearEndz2011-12-30 09:00:00QuarterBeginz2011-03-01 09:00:00BQuarterBegin
QuarterEndz2011-03-31 09:00:00BQuarterEndHalfYearBeginz2011-07-01 09:00:00HalfYearEndz2011-06-30 09:00:00BHalfYearBeginBHalfYearEndr   z2011-01-03 10:00:00r   r%   z2011-01-08 09:00:00r    z2011-01-29 09:00:00r   z2011-01-25 09:00:00r   r$   r   z2011-04-24 09:00:00Hourz2011-01-01 10:00:00Minutez2011-01-01 09:01:00Secondz2011-01-01 09:00:01Milliz2011-01-01 09:00:00.001000Microz2011-01-01 09:00:00.000001r"   z2011-01-01T09:00:00.000000001)r   rJ   r=   r;   	expectedsre      s   
'y./'i 56' 	y!67' 	Y'<=	'
 	!),A"B' 	#I.C$D' 	i 56' 	i(=>' 	I34' 		"78' 	)$9:' 	I&;<' 	Y45' 	i 56' 	923'  	I34!'" 		"78#'$ 	#89%'& 	i 56''( 	y!67)'* 	#89+', 	y!67-'. 	)$9:/'0 		"781'2 		"783'4 	i(=>5'6 	y!677'8 	9%:;9': 	#89;'< 	)12='> 		/0?'@ 	)12A'B 		/0C'D 	)12E'F 	)127878	9:M' 'r=   c                      ] tR t^tR tR tR tR tR tR t	RR lt
R tR	 tR
 tR tR tR tR tR tR t]P*                  P-                  R4      ]P*                  P/                  R. RO4      R 4       4       tRtR# )
TestCommonc                	>   \        V4      pR p\        P                  ! \        VR7      ;_uu_ 4        RVn        RRR4       \        P                  ! \        VR7      ;_uu_ 4        ^[Vn        RRR4       R#   + '       g   i     LF; i  + '       g   i     R# ; i)z8objects is not writable|DateOffset objects are immutablematchTN)r<   pytestraisesAttributeErrorr5   r1   )selfrG   offsetmsgs   &&  r;   test_immutableTestCommon.test_immutable   sb    -H]]>55#F 6]]>55FH 65 65555s   A8&B8B	B	c                	:   \        V4      p\        R 4      V,           p\        V\        4      '       g   Q h\        V,           \        J g   Q hV\        ,           \        J g   Q h\        V,
          \        J g   Q hV) P	                  \        4      \        J g   Q hR# )20080101N)r<   r   
isinstancer   _apply)rn   rG   ro   results   &&  r;   test_return_typeTestCommon.test_return_type   s    - :&/&),,,, V|s"""|s"""V|s"""$+++r=   c                	    \        V4      pVP                  ^8X  g   Q hVR,          pVP                  R8X  g   Q hV^,          pVP                  ^8X  g   Q hR# )r/   N)r<   r1   )rn   rG   ro   
neg_offset
mul_offsets   &&   r;   test_offset_nTestCommon.test_offset_n   sR    -xx1}}b[
||r!!!aZ
||q   r=   c                	   \        V4      p\        P                  ! R R4      p\        P                  ! \
        RR7      ;_uu_ 4        \        V4      ! RRV/VP                  B  RRR4       R#   + '       g   i     R# ; i)i  sargument must be an integerri   r1   NrJ   )r<   nptimedelta64rk   rl   	TypeErrortypekwds)rn   rG   offtd64s   &&  r;   test_offset_timedelta64_arg&TestCommon.test_offset_timedelta64_arg   sX     \*~~dC(]]9,IJJI))) KJJJs   A//B 	c                	`   \        V4      p\        P                  ! W"^,          .V^,          V^,          ..4      p\        P                  ! ^^.^^..4      V,          p\        P                  ! WC4       V\        P                  ! ^^.^^..4      ,          p\        P                  ! WC4       R#    N)r<   r   arraytmassert_numpy_array_equal)rn   rG   r   expectedrw   s   &&   r;   test_offset_mul_ndarray"TestCommon.test_offset_mul_ndarray   s    \*88c7^cAgsQw-?@AAq6Aq6*+c1
##F5rxx!Q!Q 011
##F5r=   c                	    \        V4      pVP                  pVR9  d!   \        V4      pVP                  V8X  g   Q hR# R# )<Easter: method=3>N)r   z<DateOffset: days=1>zLWOM-SAT)r<   freqstrr
   	rule_code)rn   rG   ro   r   codes   &&   r;   test_offset_freqstrTestCommon.test_offset_freqstr   sB    -..TTw'D##t+++ Ur=   c                	2   V'       d   \        V\        \        34      '       d   R # \        WR7      p\	        Wb4      pV! V4      p\        V\        4      '       g   Q hW8X  g   Q hV! \        V4      4      p\        V\        4      '       g   Q hW8X  g   Q h\        V4      \        ^4      ,           p	\        P                  ! R 4      ;_uu_ 4        V! V	4      pR R R 4       \        V\        4      '       g   Q hVRJ d   W\        ^4      ,           8X  g   Q hMW8X  g   Q h\        V\        P                  4      '       d   R # R EF'  p
VP                  V
4      p\        P                  ! V
4      p\        P                   ! W<4      pV! V4      p\        V\        4      '       g   Q hW8X  g   Q hV! \        W:R7      4      p\        V\        4      '       g   Q hW8X  g   Q h\        W:R7      \        ^4      ,           p	\        P                  ! R 4      ;_uu_ 4        V! V	4      pR R R 4       \        V\        4      '       g   Q hVRJ d   W\        ^4      ,           8X  g   Q hEK  W8X  d   EK(  Q h	  R #   + '       g   i     EL; i  + '       g   i     Ll; i)Nr8   Ftz)NUTCz
Asia/Tokyoz
US/Easternzdateutil/Asia/Tokyozdateutil/US/Pacific)
issubclassr#   r   r<   getattrru   r   r"   r   assert_produces_warningr   
datetime64tz_localizer	   maybe_get_tzr   localize_pydatetime)rn   ro   funcnamerK   r   r5   offset_sfuncrw   tsr   expected_localizetz_objdt_tzs   &&&&&&        r;   _check_offsetfunc_works"TestCommon._check_offsetfunc_works   s!   FT3K88!&>x*b&),,,,!!!im$&),,,,!!! r]T!W$''--"XF . &),,,,Q////%%%b"--((
B !) 4 4R 8++B/F222>E%[Ffi0000...)B./Ffi0000... 2%Q/B++D11b 2fi0000E!T!W!<<<<222;
 .--H 21s   	I2	J2J	Jc           	     	
   \        R ^^^	^ 4      p\        P                  ! R4      pW!P                  ,          p\	        VP                  4       4      pW43 F+  pV P                  VRWu4       V P                  VRWvRR7       K-  	  R# )  2011-01-01 09:00rv   Tr8   N)r   r   r   __name__r   dater   )rn   rG   re   sdtndtr   expected_normrK   s   &&&     r;   
test_applyTestCommon.test_apply6  s{    tQ1a(mm./223!(--/2*B((xN((hT )  r=   c                	*   VP                  4       p. ROpV F  p\        R4      W$&   K  	  \        R4      VR&   \        R4      VR&   VP                  4       pV F$  p\        WV,          P                  4       4      WV&   K&  	  R \        R4      R\        R4      R\        R4      R\        R4      R\        R4      R\        R4      R\        R4      R\        R4      R\        R4      R\        R4      R	\        R4      R
\        R4      /pVP                  V4       \	        R^^^	^ 4      p\
        P                  ! R4      p	W3 FO  p
W!P                  ,          pV P                  VRW4       WQP                  ,          pV P                  VRWRR7       KQ  	  R# )r   r!   rR   rT   r\   r$   r`   ra   rb   rc   rd   r   2011/01/01 09:00rN   r   r   z2011-01-02 00:00:00z2011-02-01 00:00:00z2011-01-15 00:00:00z2012-01-01 00:00:00z2011-07-01 00:00:00z2011-01-08 00:00:00z2011-01-01 00:00:00r   r   rollforwardTr8   Nr   r!   rR   rT   r\   r$   r`   ra   rb   rc   rd   r"   r   )	copyr   r   updater   r   r   r   r   )rn   rG   re   
no_changesr1   norm_expectedk
normalizedr   r   rK   r   s   &&&         r;   test_rollforwardTestCommon.test_rollforwardD  s   NN$	

 A$%78IL  %..C$D	.!*34I*J	&' "(A()9)>)>)@AM  923)$9:)$9:i(=>#89Y'<=I34I34i 56i 56Y45Y45

 	Z(tQ1a(mm./*B !6!67H((}bS$%:%:;H((mRT ) 	 r=   c                	   / R \        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR	\        R4      bR
\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      bR\        R4      R\        R4      R\        R4      R\        R4      R\        R4      R\        R4      R\        R4      R \        R!4      R"\        R#4      /	CpR+ F  p\        R$4      W#&   K  	  VP                  4       pV F$  p\        WE,          P                  4       4      WE&   K&  	  \        R%^^^	^ 4      p\        P
                  ! R&4      pWg3 FO  pW!P                  ,          p	V P                  VR'W4       WAP                  ,          p	V P                  VR'WR(R)7       KQ  	  R*# ),rM   z2010-12-31 09:00:00r   r   r   z2010-12-01 09:00:00rO   rP   rQ   rS   rU   z2010-01-01 09:00:00rV   rW   rX   rY   rZ   r[   r\   z2010-07-01 09:00:00r]   r^   r_   r   z2010-12-31 17:00:00r   r%   z2010-12-11 09:00:00r    z2010-12-25 09:00:00r   z2010-10-26 09:00:00r   z2010-01-26 09:00:00r   z2010-04-04 09:00:00r   r   r   rollbackTr8   Nr   )r   r   r   r   r   r   r   r   )
rn   rG   re   r1   r   r   r   r   rK   r   s
   &&        r;   test_rollbackTestCommon.test_rollback}  sf   
9%:;
+@!A
 %i0E&F
 '	2G(H	

 !),A"B
 	"78
 I&;<
 	*? @
 )$9:
 y!67
 	"78
 I&;<
 Y'<=
 )$9:
 9%:;
  Y'<=!
" 9%:;#
$ i(=>I&;<I&;< ),A"B9%:;y)>?Y'<=i 56i 565
	<
A %%78IL
$ "(A()9)>)>)@AM  tQ1a(mm./*B !6!67H((z2P$%:%:;H((j"$ )  r=   c                	   W!P                   ,          p\        V4      pVP                  V4      '       g   Q h\        V\        \
        34      '       d   R # \        VRR7      pVP                  V4      '       d   Q hV\        \        39   d   R # \        VP                  VP                  VP                  4      pVP                  V4      '       g   Q hR # )NTr8   )r   r<   is_on_offsetr   r#   r   r   r   r   yearmonthday)rn   rG   re   rK   r   offset_nr   s   &&&    r;   test_is_on_offsetTestCommon.test_is_on_offset  s    ,,-!,/$$R(((( lT3K00!,$?((,,,,L*<== 2662$$T****r=   c                	
   Tp\        R ^^^	^ 4      p\        V4      pW1P                  ,          pWV,           p\        V4      V,           p	W3 F#  p
\	        V
\        4      '       g   Q hW8X  d   K#  Q h	  VP                  V4      p\        WTR7      V,           p
\	        V
\        4      '       g   Q hW8X  g   Q h\        V\        \        34      '       d   R# \        VRR7      p\        VP                  4       4      pWV,           p\        V4      V,           p	W3 F#  p
\	        V
\        4      '       g   Q hW8X  d   K#  Q h	  VP                  V4      p\        WTR7      V,           p
\	        V
\        4      '       g   Q hW8X  g   Q hR# )r   r   NTr8   )
r   r<   r   r   ru   r   r   r#   r   r   )rn   rG   tz_naive_fixturere   r   rK   r   r   	result_dt	result_tsrw   r   s   &&&&        r;   test_addTestCommon.test_add  sg   dAq!Q'!,/223M	bMH,	 ,Ffi0000%%% - %0042%0&),,,,*** lT3K00!,$?X]]_-M	bMH,	 ,Ffi0000%%% - %0042%0&),,,,***r=   c                	   \        V4      p\        . VR 7      P                  R4      p\        V\        \
        \        \        \        \        \        \        \        \        3
4      '       g   RpVRJ p\        P                  ! WR7      ;_uu_ 4        WT,           pRRR4       \        P                   ! XV4       \        P                  ! WR7      ;_uu_ 4        WE,           pRRR4       \        P                   ! Wu4       VP"                  p\        P                  ! WR7      ;_uu_ 4        W,           pRRR4       \        P$                  ! Wx4       \        P                  ! WR7      ;_uu_ 4        WH,           pRRR4       \        P$                  ! Wx4       R#   + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     Lb; i)r   nsFN)check_stacklevel)r<   r   as_unitru   r   r%   r    r   r   r   r   r   r   r   r   r   assert_index_equal_dataassert_equal)	rn   performance_warningrG   r   r   dtir   rw   dtas	   &&&&     r;   test_add_empty_datetimeindex'TestCommon.test_add_empty_datetimeindex  sv    ",/B#34<<TB!"(&
 
  #( ,t3''
 
 ^F
 	fc*''
 
 ^F
 	f*ii''
 
 ^F
 	$''
 
 ^F
 	$+
 
 


 

 


 
s0   	F	F-*	G 0	GF*	-F=	 G	G#	c                	    \        V4      p\        P                  ! W24      pW48X  g   Q h\        V4      \        Jd:   VP
                   F'  pVR 8X  d   K  \        W54      \        WE4      8X  d   K'  Q h	  R# R# )calendarN)r<   r   round_trip_pickler   r   _attributesr   )rn   rG   	temp_filer   resattrs   &&&   r;   test_pickle_roundtrip TestCommon.test_pickle_roundtrip(  sj    \*""32zz9J&:% s)WS-???? ( 'r=   c                	    \        ^R7      p\        P                  ! W!4      pW#8X  g   Q h\        R^^4      pWB,           WC,           8X  g   Q hR# )   r'   i  N)r   r   r   r   )rn   r   r   r   base_dts   &&   r;   !test_pickle_dateoffset_odd_inputs,TestCommon.test_pickle_dateoffset_odd_inputs5  sF    #""32zz4A&}---r=   c                	:    \        V4      p\        V4      f   Q hR # N)r<   hash)rn   rG   r   s   && r;   test_offsets_hashable TestCommon.test_offsets_hashable>  s    \*Cy$$$r=   zIignore:Non-vectorized DateOffset being applied to Series or DatetimeIndexunitc                	   \        V4      p\        R ^#RVR7      pWC,           P                  R4      pTp\        V\        4      '       d;   VP
                  VP                  P
                  8  d   \        V4      P                  p\        V Uu. uF  qwV,           NK  	  up4      P                  V4      p\        P                  ! WX4       R# u upi )z
2016-01-01D)periodsfreqr   N)r<   r   
_with_freqru   r#   _cresor   r   r   r   r   r   r   )	rn   rG   r   r   r   rw   exp_unitxr   s	   &&&      r;   test_add_dt64_ndarray_non_nano)TestCommon.test_add_dt64_ndarray_non_nanoD  s     \*r$G)''-c4  SZZ#))2B2B%B ~**H 3!73ac''3!78@@J
f/ "8s   CrJ   N)F)r   msus)r   
__module____qualname____firstlineno__rq   rx   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   rk   markfilterwarningsparametrizer  __static_attributes__rJ   r=   r;   rg   rg      s    ,!*	6,=3~7r?B+&!+F2%h@.% [[S [[V%670 80r=   rg   c                     ] tR tRtR tR tR t]P                  P                  R]
! ]P                  4      4      R 4       tR tR t]P                  P                  R	]! ]. R)OR
R7      4      R 4       t]P                  P                  R	]! ]. R*OR
R7      4      R 4       t]P                  P                  R]! ]]! ^^
4      . R+OR
R7      4      R 4       t]P                  P                  R]! ]]! ^^
4      . R,OR
R7      4      R 4       tR tR t]P                  P                  RR^R^/R3R^R^/R3R^R^/R3R^R^/R3R^R^/R3R^R^/R 3R!^R^/R"3R#^R^/R$3.4      R% 4       tR& tR'tR(# )-TestDateOffsetiZ  c                	0    \         P                  ! 4        R # r   r   clearrn   s   &r;   setup_methodTestDateOffset.setup_method[      r=   c                	    \        \        4       4       \        \        ^4      4       \        ^\        4       ,          4       \        ^\        ^R7      ,          4       R# )r   r   N)reprr   r  s   &r;   	test_reprTestDateOffset.test_repr^  s9    Z\Z]QQ1%%&r=   c                	    \        ^4      ^\        ^4      ,          8X  g   Q h\        ^4      \        ^4      ^,          8X  g   Q hR# r   r   r  s   &r;   test_mulTestDateOffset.test_muld  s8    !}JqM 1111!}
1 1111r=   kwdc                	    VR 8X  d5   VP                  \        P                  P                  \        RR7      4       \        R/ V^/B pVP                  V^/8X  g   Q h\        W14      ^8X  g   Q hR# millisecondzGConstructing DateOffset object with `millisecond` is not yet supported.)rl   reasonNrJ   )applymarkerrk   r  xfailNotImplementedErrorr   r   r   )rn   r  rD   ro   s   &&& r;   test_constructorTestDateOffset.test_constructorh  ss    -!!.% "  'sAh'{{sAh&&&v#q(((r=   c                	N    V\        ^4      ,           \        R^^4      8X  g   Q hR# )r   rI   N)r   r   )rn   rK   s   &&r;   test_default_constructor'TestDateOffset.test_default_constructorv  s"    Z]"xa';;;;r=   c                	    \        ^R7      P                  4       \        ^R7      8X  g   Q h\        ^R7      P                  4       \        ^R7      8X  g   Q hR# )r   r   millisecondsN)r   r   r  s   &r;   	test_copyTestDateOffset.test_copyy  sD    #((*j.BBBBq)..0JA4NNNNr=   z arithmatic_offset_type, expectedT)strictc                	    \        R/ V^/B V,           \        V4      8X  g   Q hV\        R/ V^/B ,           \        V4      8X  g   Q hR# r/   NrJ   r   r   rn   arithmatic_offset_typer   rK   s   &&&&r;   r   TestDateOffset.test_add}  sP    & 83Q782=8ATTTTJ="8!!<==8ATTTTr=   c                	    V\        R/ V^/B ,
          \        V4      8X  g   Q h\        P                  ! \        RR7      ;_uu_ 4        \        R/ V^/B V,
           RRR4       R#   + '       g   i     R# ; i)r/   z$Cannot subtract datetime from offsetri   NrJ   )r   r   rk   rl   r   r3  s   &&&&r;   test_subTestDateOffset.test_sub  sb    & J="8!!<==8ATTTT]]9,RSS50!45: TSSSs   	A((A9	z#arithmatic_offset_type, n, expectedc                	\   \        R/ V^/B V,          V,           \        V4      8X  g   Q hV\        R/ V^/B ,          V,           \        V4      8X  g   Q hV\        R/ V^/B V,          ,           \        V4      8X  g   Q hWB\        R/ V^/B ,          ,           \        V4      8X  g   Q hR# r1  r2  rn   r4  r1   r   rK   s   &&&&&r;   test_mul_addTestDateOffset.test_mul_add  s    ( 83Q781<rAYxEXXXX:<!7 ;<<rAYxEXXXXJ="8!!<=AAYxEXXXX
A&<a%@AAAYxEXXXXr=   c                	    V\        R/ V^/B V,          ,
          \        V4      8X  g   Q hWB\        R/ V^/B ,          ,
          \        V4      8X  g   Q hR# r1  r2  r:  s   &&&&&r;   test_mul_subTestDateOffset.test_mul_sub  sX    ( J="8!!<=AAYxEXXXX
A&<a%@AAAYxEXXXXr=   c                	j    \        R ^^4      pV\        ^R7      ,           \        R ^^4      8X  g   Q hR# )rI   r   N)r   r   )rn   ds   & r;   test_leap_yearTestDateOffset.test_leap_year  s1    T1b!Ja((XdAr-BBBBr=   c                	    \        ^R7      p\        RR7      pW8w  g   Q h\        ^R7      \        ^R7      8w  g   Q hR# )r/   )r)   im  r+  Nr  )rn   offset1offset2s   &  r;   test_eqTestDateOffset.test_eq  s:    !$#&!!!q)ZQ-GGGGr=   offset_kwargs, expected_argr-   r,  z2022-01-01 00:00:00.001001r,   z2022-01-01 00:00:01.001r+   z2022-01-01 00:01:00.001r*   z2022-01-01 01:00:00.001r)   z2022-01-02 00:00:00.001r(   z2022-01-08 00:00:00.001r'   z2022-02-01 00:00:00.001r&   z2023-01-01 00:00:00.001c                	h    \        R/ VB p\        R 4      pWC,           p\        V4      pWV8X  g   Q hR# )
2022-01-01NrJ   r2  )rn   offset_kwargsexpected_argro   r   rw   r   s   &&&    r;   test_milliseconds_combination,TestDateOffset.test_milliseconds_combination  s8     ,m,|$\*!!!r=   c                	    R p\         P                  ! \        VR7      ;_uu_ 4        \        ^R7       RRR4       R#   + '       g   i     R# ; i)z3^Invalid argument/s or bad combination of argumentsri   )picosecondsN)rk   rl   
ValueErrorr   )rn   rp   s   & r;   test_offset_invalid_arguments,TestDateOffset.test_offset_invalid_arguments  s/    C]]:S111% 2111s	   >A	rJ   N)	
2009-01-02z
2008-02-02z
2008-01-09z
2008-01-03z2008-01-02 01:00:00z2008-01-02 00:01:00z2008-01-02 00:00:01z2008-01-02 00:00:00.001000000z2008-01-02 00:00:00.000001000)	
2007-01-02z
2007-12-02z
2007-12-26z
2008-01-01z2008-01-01 23:00:00z2008-01-01 23:59:00z2008-01-01 23:59:59z2008-01-01 23:59:59.999000000z2008-01-01 23:59:59.999999000)	rU  z
2008-03-02z
2008-01-23z
2008-01-06z2008-01-02 05:00:00z2008-01-02 00:06:00z2008-01-02 00:00:07z2008-01-02 00:00:00.008000000z2008-01-02 00:00:00.000009000)	rV  z
2007-11-02z
2007-12-12z
2007-12-29z2008-01-01 19:00:00z2008-01-01 23:54:00z2008-01-01 23:59:53z2008-01-01 23:59:59.992000000z2008-01-01 23:59:59.999991000)r   r  r  r  r  r  r  rk   r  r
  sorted
liboffsets_relativedelta_kwdsr%  r(  r-  zip_ARITHMETIC_DATE_OFFSETr   r7  ranger;  r>  rB  rG  rN  rS  r  rJ   r=   r;   r  r  Z  s   '2 [[UF:+I+I$JK) L)<O [[*#
 	
$U%$U [[*#
 	
$;%$;
 [[-#!RL
 	
&Y'&Y [[-#!RL
 	
&Y'&YCH [[%a35QRNA.0IJNA.0IJq.!,.GHa+-FGq.!,.GH>1-/HIq.!,.GH		
""&r=   r  c                      ] tR tRtR tRtR# )TestOffsetNamesi  c                	"   \        4       P                  R 8X  g   Q h\        ^4      P                  R8X  g   Q h\        4       P                  R8X  g   Q h\        ^ R7      P                  R8X  g   Q h\        ^R7      P                  R8X  g   Q h\        ^R7      P                  R8X  g   Q h\        ^R7      P                  R8X  g   Q h\        ^R7      P                  R8X  g   Q h\	        \
        P                  R7      P                  R	8X  g   Q hR
# )B2BBMEr3   W-MONW-TUEW-WEDW-THUW-FRIzLWOM-SUNN)r   r   r   r$   r    r   SUNr  s   &r;   test_get_offset_name$TestOffsetNames.test_get_offset_name  s    v~~$$$Aw$&&&{""e+++A&&'111A&&'111A&&'111A&&'111A&&'111w{{3;;zIIIr=   rJ   N)r   r  r  r  rj  r  rJ   r=   r;   r^  r^    s    
Jr=   r^  c                 T   \         P                  ! \        \        R 7      ;_uu_ 4        \	        R4       RRR4       \         P                  ! \        \        R 7      ;_uu_ 4        \	        R4       RRR4       R\        4       3R\        4       3R\        ^ R7      3R\        ^R7      3R	\        ^R7      3R
\        ^R7      3R\        ^R7      3.p V  F*  w  r\	        V4      pW28X  d   K  Q RV: RV: RV: R24       h	  R#   + '       g   i     L; i  + '       g   i     L; i)ri   	gibberishNzQS-JAN-Br`  rb  rd  rc  re  rf  rg  rh  z	Expected z
 to yield z
 (actual: ))rk   rl   rR  r   r
   r   r   r$   )pairsnamer   ro   s       r;   test_get_offsetrq    s    	z)=	>	>K  
?	z)=	>	>J 
? 
df			$q/"	$q/"	$q/"	$q/"	$q/"E  T"! 	
xz(ZzK	
!   
?	>	>	>s   D%DD	D'	c                     R \        ^R7      3.p V  FA  w  r\        P                  ! \        \        R7      ;_uu_ 4        \        V4       RRR4       KC  	  R#   + '       g   i     KX  ; i)zw@Satrc  ri   N)r$   rk   rl   rR  r   r
   )ro  rp  r   s      r;   test_get_offset_legacyrs  '  sL    tA'(E]]:-ABB CB  BBBs   AA*c                  (    ] tR tRtR tR tR tRtR# )TestOffsetAliasesi.  c                	0    \         P                  ! 4        R # r   r  r  s   &r;   r  TestOffsetAliases.setup_method/  r  r=   c                	z    \         P                  ! 4        F!  w  rVf   K  WP                  4       8X  d   K!  Q h	  R # r   )r   itemsr   )rn   r   vs   &  r;   test_alias_equality%TestOffsetAliases.test_alias_equality2  s/    %%'DAy= = (r=   c                	N   . ROpV FO  pV\        V4      P                  8X  g   Q hV\        9   g   Q hV\        V4      ^,          P                  8X  d   KO  Q h	  . ROpRpV FT  pRP                  WE.4      pV\        V4      P                  8X  g   Q hV\        V4      ^,          P                  8X  d   KT  Q h	  . ROp. ROpV F]  pV FT  pRP                  WE.4      pV\        V4      P                  8X  g   Q hV\        V4      ^,          P                  8X  d   KT  Q h	  K_  	  R# )MEW-N)r~  MSrb  BMSr   r`  hminr   r  r  MONTUEWEDTHUFRISATri  JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC)YEYSBYEBYSQEQSBQEBQSHYEHYSBHYEBHYS)r
   r   r   join)rn   lstr   
suffix_lstbaserz  aliasbase_lsts   &       r;   test_rule_code TestOffsetAliases.test_rule_code8  s   OAA00000###Q!+66666	  G
AHHdY'EK.88888[/!3>>>>> 



 D$+E 2 < <<<<U!3a!7 B BBBB   r=   rJ   N)r   r  r  r  r  r{  r  r  rJ   r=   r;   ru  ru  .  s    !/Cr=   ru  c                     \        ^\        ^ R4      R7      p V P                  R8X  g   Q h\        ^\        ^ R4      R7      p V P                  R8X  g   Q hR# )r/   i  )ro   zB+30MinzB-30MinNi)r   r   r   )r   s    r;   test_freq_offsetsr  j  sL    
q1d+
,C;;)###
q1e,
-C;;)###r=   c                      ] tR tRtR tRtR# )TestReprNamesir  c                	   . ROpV UUu. uF  pR F  pVR,           V,           NK  	  K  	  ppp. ROpYE Uu. uF  pRV,           NK  	  up,          pTR UUu. uF  qu F  pRV,           V,           NK  	  K  	  upp,          p\         P                  ! 4        V F!  p\        V4      p	V	P                  V8X  d   K!  Q h	  R# u uppi u upi u uppi )	r  r  zW-zWOM-N)r  r  r  r  r  r  r  r  r  r  r  r  r  r  )1234)r   r  r
   r   )
rn   month_prefixesprefixr   namesr)   r   r7   rp  ro   s
   &         r;   test_str_for_named_is_name(TestReprNames.test_str_for_named_is_names  s    
  )
( SL5   !( 	 
$ A-$**--2FW2F$RV3&4-#%%RV%2FWWD &F>>T))) -
& .Ws   "CC!CrJ   N)r   r  r  r  r  r  rJ   r=   r;   r  r  r  s    (*r=   r  c                    T pV! 4        R # r   rJ   rG   clss   & r;   test_valid_default_argumentsr    s     CEr=   r  c                    TpR V  R2p\         P                  ! \        VR7      ;_uu_ 4        V! R/ V ^/B  RRR4       R#   + '       g   i     R# ; iz1__init__\(\) got an unexpected keyword argument ''ri   NrJ   rk   rl   r   )r  rE   r  rp   s   &&  r;   test_valid_month_attributesr    sD     C>se1
EC	y	,	,sAh 
-	,	,	,   AA	c                `    V ! ^4      pV ! ^4      pVP                   VP                   8X  g   Q hR# )r/   N)rp  )rE   objobj2s   &  r;   test_month_offset_namer    s,    

CD99   r=   c                    V R 8X  d5   VP                  \        P                  P                  \        RR7      4       \        R/ V ^/B  R# r  )r"  rk   r  r#  r$  r   )r  rD   s   &&r;   test_valid_relativedelta_kwargsr    sH    
mKK*!  	
 #qr=   c                    TpR V  R2p\         P                  ! \        VR7      ;_uu_ 4        V! R/ V ^/B  RRR4       R#   + '       g   i     R# ; ir  r  )r  tick_classesr  rp   s   &&  r;   test_valid_tick_attributesr    sD     C>se1
EC	y	,	,sAh 
-	,	,	,r  c            	     .   \         P                  ! \        R R7      ;_uu_ 4        \        RR7       RRR4       \         P                  ! \        R R7      ;_uu_ 4        \	        \        ^4      R7       RRR4       \         P                  ! \        R R7      ;_uu_ 4        \        \        P                  ! ^^.\        P                  R7      R7       RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)r   ri   zDoh!r1   N)dtype)
rk   rl   r   r   r!   r   r   r   r   int64rJ   r=   r;   test_validate_n_errorr    s    	y(E	F	FV 
G 
y(E	F	FYq\" 
G 
y(E	F	FrxxAbhh/0 
G	F 
G	F 
G	F 
G	F	Fs#   CC0 3DC-	0D 	D	c                    T p\         P                  ! \        R R7      ;_uu_ 4        V! RR7       RRR4       R#   + '       g   i     R# ; i)r   ri   g      ?r  Nrk   rl   rR  r  s   & r;   test_require_integersr    s0    
C	z)F	G	Gc
 
H	G	G	Gs	   
;A	c                    T pR p\         P                  ! \        VR7      ;_uu_ 4        V! ^RR7       RRR4       R#   + '       g   i     R# ; i)z2Tick offset with `normalize=True` are not allowed.ri   T)r1   r5   Nr  )r  r  rp   s   &  r;   test_tick_normalize_raisesr    s8     C
>C	z	-	-a4  
.	-	-	-s	   >A	rI  nanosecondsz1970-01-01 00:00:00.000000001z1970-01-01 00:00:00.000000005z1969-12-31 23:59:59.999999999z1970-01-01 00:00:00.000001z1969-12-31 23:59:59.999999z1970-01-01 00:00:01z1969-12-31 23:59:59z1970-01-01 00:01:00z1969-12-31 23:59:00z1970-01-01 01:00:00z1969-12-31 23:00:00z1970-01-02 00:00:00z1969-12-31 00:00:00z1970-01-08 00:00:00z1969-12-25 00:00:00z1970-02-01 00:00:00z1969-12-01 00:00:00z1971-01-01 00:00:00z1969-01-01 00:00:00c                    \        R/ V B p\        ^ 4      pW2,           p\        V4      pWE8X  g   Q hWB,          pWC8X  g   Q hW#,           pWE8X  g   Q hR# )    NrJ   r2  )rL  rM  ro   r   rw   r   s   &&    r;   test_dateoffset_add_subr    s\    2 (-(F	1B[F&H
F<<[Fr=   c                    \        ^^	R7      p \        ^4      pW,           p\        R4      pW#8X  g   Q hW ,          pW!8X  g   Q hW,           pW#8X  g   Q h\        ^^	^R7      pVP                  '       g   Q h\        P                  ! R4      ;_uu_ 4        W,           pRRR4       \        R4      pXV8X  g   Q hR#   + '       g   i     L&; i)r   r+   r  z1970-01-01 00:02:00.000000013)r+   r  hourNz1970-01-01 01:02:00.000000013)r   r   _use_relativedeltar   r   )ro   r   rw   r   rF  result2	expected2s          r;   +test_dateoffset_add_sub_timestamp_with_nanor    s    q1F	1B[F89H
F<<[F:G%%%%%		#	#D	)	), 
* 9:Ii	 
*	)s   	B;;C		attributec                    \        R/ V ^ /B pRp\        P                  ! \        VR7      ;_uu_ 4        \	        W^4       RRR4       R#   + '       g   i     R# ; i)r  z DateOffset objects are immutableri   NrJ   )r   rk   rl   rm   setattr)r  ro   rp   s   &  r;   test_dateoffset_immutabler  $  sD     )9a.)F
,C	~S	1	11% 
2	1	1	1s   AA	c                     \         P                  ! ^^R7      p V P                   \         P                  ! ^R7      ^8X  d   Q hR# )r   )r'   r)   r   N)r   r   r   )osets    r;   test_dateoffset_miscr  5  s7    QQ/DLL!!+q0000r=   r1   c                    \        V 4      pVP                  \        ^4      8X  g   Q h\        R^^4      V,           p\        R^^V ,           4      pW#8X  g   Q hR# )r/   i  N)r   _offsetr   r   )r1   ro   rw   r   s   &   r;   -test_construct_int_arg_no_kwargs_assumed_daysr  =  sT     ]F>>Yq\)))tQ"V+Fq!a%(Hr=   zoffset, expectedr  z2022-01-01 00:07:00.000000018)r  z2022-01-01 00:00:00.000000003c                    \        R 4      pTp\        V.4      pW@,           pV^ ,          V8X  g   Q hW@,          pV^ ,          V8X  g   Q hW,           pV^ ,          V8X  g   Q hR# )rK  N)r   r   )ro   r   
start_time	teststamp
testseriess   &&   r;   2test_dateoffset_add_sub_timestamp_series_with_nanor  G  sm     <(JI%J$Ja=H$$$Ja=I%%%$Ja=H$$$r=   z=n_months, scaling_factor, start_timestamp, expected_timestampc                    \        V R 7      p\        V4      p\        V.4      pWTV,          ,           pWdV,          ,           p\        V4      p	\        V	.4      p
Wy8X  g   Q h\        P                  ! W4       R# )r   N)r   r   r   r   assert_series_equal)n_monthsscaling_factorstart_timestampexpected_timestampmo1startscalar
startarrayresultscalarresultarrayexpectedscalarexpectedarrays   &&&&       r;   test_offset_multiplicationr  ^  sp     H
%CO,K&J"67Ln 45K12NN+,M)));6r=   c                     \         P                  ! \        R R7      ;_uu_ 4        \        R^RR7       RRR4       R#   + '       g   i     R# ; i)zDid you mean hri   z
2012-01-01H)r   r   N)rk   rl   rR  r   rJ   r=   r;   test_offset_deprecated_errorr  |  s/    	z)9	:	:<5 
;	:	:	:s	   >A	c           
        \        R \        R4      .R\        ^R7      ./4      pVR ,          ^VR,          ,          ,           p\        R \        R4      \        R4      .R\        ^R7      \        ^R7      ./4      p\        R4      p\        P                  ! V 4      ;_uu_ 4        VR ,          ^VR,          ,          ,           pRRR4       V^ ,          V8X  g   Q hX^ ,          V8X  g   Q hR#   + '       g   i     L2; i)Tz
2019-04-30r   r   z
2021-06-30N)r   r   r   r   r   )r   dfframeresult1df2expecteddateframeresult2s   &     r;   (test_dateoffset_operations_on_dataframesr
    s    	C)L12C*A:N9OP	QBc7R"S'\)L
)L)9\+BC*A&
!(<=	
C \*L		#	#$7	8	83x"s3x-/ 
9 ?l***?l***	 
9	8s   %C..C>	c                    \        R 4      p \        R4      p\        R4      p\        R4      p\        R4      p\        R4      p\        R4      p. V P                  \        R4      4      ^3NVP                  \        R4      4      ^ 3NV P                  \        R4      4      ^ 3NVP                  \        R4      4      ^3NVP                  \        R	4      4      ^3NVP	                  \        R	4      4      ^3NVP                  \        R	4      4      ^3NVP                  \        R
4      4      ^3NVP                  \        R
4      4      ^3NVP                  \        R
4      4      ^3NVP                  \        R4      4      ^3NVP	                  \        R4      4      ^ 3NVP                  \        R4      4      ^ 3NVP                  \        R4      4      ^3NVP                  \        R4      4      ^3NVP                  \        R4      4      ^3NVP                  \        R4      4      ^ 3NVP	                  \        R4      4      ^ 3NVP                  \        R4      4      ^ 3NVP                  \        R4      4      ^3NVP	                  \        R4      4      ^3NVP                  \        R4      4      ^ 3NVP                  \        R4      4      ^ 3NVP	                  \        R4      4      ^ 3NVP                  \        R4      4      ^ 3NVP                  \        R4      4      ^3NVP	                  \        R4      4      ^3NVP                  \        R4      4      ^3NVP                  \        R4      4      ^3NVP                  \        R4      4      ^3N\        R4      P                  ^3N\        R4      P                  ^3NpV F  w  rW8X  d   K  Q h	  R# )r~  rb  zQE-FEBzQS-FEBr  zBQS-APRzYS-NOVz
2013-06-01z
2013-06-03z
2013-02-28z
2013-03-01z
2013-03-31z
2013-02-01z
2013-06-30z
2013-06-28z
2013-03-29z
2013-11-01z
2013-10-31z
2012-02-01N)	r   is_month_startr   is_month_endis_quarter_endis_year_endis_quarter_startis_year_startdays_in_month)
freq_mbmqfebqsfebbqbqs_apras_novtestsr   r:   s
             r;   test_is_yqm_start_endr    s3   t_F	5	BXDhE	5	B	"Gx F!			y6	7;!			9\2	3Q7! 
		y6	7;! 
		9\2	3Q7	!
 
		9\2	3Q7! 
		Y|4	5q9! 
		)L1	2A6! 
		Y|4	5q9! 
		y6	7;! 
		Il3	4a8! 
		Il3	4a8! 
		i5	6:! 
		9\2	3Q7! 
		i5	6:! 
			, 7	8!<!  
		Y|4	5q9!!" 
<0	115#!$ 
		9\2	3Q7%!& 
	,/	0!4'!( 
<0	115)!* 
		9\2	3Q7+!, 
	,/	0!4-!. 
		i5	6:/!0 
			, 7	8!<1!2 
		Y|4	5q93!4 
		i5	6:5!6 
			, 7	8!<7!8 
		Y|4	5q99!: 
		i5	6:;!< 
		Il3	4a8=!> 
<	 	.	.3?!@ 
<	 	.	.3A!EF 	{{ r=   leftrightc                    \         P                  ! \        R R7      ;_uu_ 4        W,           RRR4       R#   + '       g   i     R# ; i)zCannot multiplyri   Nr  )r  r  s   &&r;   "test_multiply_dateoffset_typeerrorr    s*     
y(9	:	: 
;	:	:	:s	   	8A		)	r&   r'   r(   r)   r*   r+   r,   r,  r-   )r/   F)r#   
BaseOffsetr{   )r*   r)   r(   r'   r&   )r{   r/      ))r/   r   
2020-01-30
2020-03-30)r   r/   r"  r#  )r/   r  r"  r"  )r   r  r"  r"  )r/   r{   r"  z
2019-12-30)r   r{   r"  z
2019-11-30)`__doc__
__future__r   r   r   numpyr   rk   pandas._libs.tslibsr   r   r   r   r	   pandas._libs.tslibs.offsets_libstslibsr   rX  r
   r   r   pandas._libs.tslibs.periodr   pandasr   r   r   r   pandas._testing_testingr   #pandas.tests.tseries.offsets.commonr   pandas.tseriespandas.tseries.offsetsr   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r[  r<   fixture__all__r   r   r>   rE   rG   rK   re   rg   r  r^  rq  rs  ru  r  r  r  r  r
  rW  rY  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r
  r  r  )os   0r;   <module>r5     s   #
    1 0 
 <   7 "    *
 @   Aggq):+A+AB 	  	  %,__%4AW8W_

 + + + +\^0 ^0Be& e&PJ J
.9C 9Cx$)* )*^
 z'E'E FG H! z'E'E FG H z'E'E FG H1! !
	<=
	<=
	=>
!	:;
"	;<
Q./
R/0
Q./
R/0
1,-
2-.
!+,
",-
1,-
2-.
A-.
B./
1,-
2-.'0	10	 ( 	&	&1 j) *  qb156	
 
	"I.M$NO	
%	
% C
7
7&6
+$-` *Q-a!9::a=$q'":; < ;u"s   ,"OOOO O 