
    Mh?4                    6   S SK J r Jr  S SKrS SKrS SKJrJr  S SKr	S SKJ
r
JrJrJrJrJrJrJrJrJr  S SKJr  S SKJr  S SKJrJrJr  S rS r " S	 S
5      r " S S5      r  " S S5      r! " S S5      r" " S S5      r# " S S5      r$ " S S5      r%S r&g)    )datetime	timedeltaN)OutOfBoundsDatetimePerformanceWarning)
	DataFrameDatetimeIndexIndexNaTSeries	TimedeltaTimedeltaIndex	Timestampoffsetstimedelta_range)NumpyExtensionArray)assert_invalid_addsub_typeassert_invalid_comparisonget_upcast_boxc                 >    [         R                  " U 5      nX!:X  d   eg)zL
Helper to check the dtype for a Series, Index, or single-column DataFrame.
N)tm	get_dtype)objexpected_dtypedtypes      Z/var/www/html/env/lib/python3.13/site-packages/pandas/tests/arithmetic/test_timedelta64.pyassert_dtyper   &   s     LLE"""    c                     U [         L a  US   nU$ U [        R                  [        R                  4;   a  US   nU$ US   nU$ )Nr         )r   r   to_arraypdarray)boxnamesexnames      r   get_expected_namer'   /   sS    
i q
 M	 
bhh'	'q M qMr   c                      \ rS rSrS r\R                  R                  S\" SS9\	" SS9\	" SS9R                  5       \R                  " S5      /5      S 5       r\R                  R                  SS	S
\" S5      \" S5      R                  S5      \" S5      R                  5       R!                  5       \" S5      R                  5       R#                  5       \" S5      R%                  5       \R(                  " S5      /5      S 5       r\R                  R                  S\" \" S5      5      \R0                  " S5      \R0                  " S5      R3                  \R4                  5      \R0                  " S5      R3                  \5      \R:                  " SSSS9R(                  \R(                  " \R:                  " SSS95      \" \R:                  " SSS95      \R:                  " SSS9R3                  \5      \R<                  " SSSS9R(                  \R<                  " SSSS9R3                  \5      /
5      S 5       rS r Sr!g)#TestTimedelta64ArrayLikeComparisons?   c                 ~   UnU[         [        R                  4;  a  UO[        R                  n[        SSS9n[        R                  " UR                  5       S   5      n[        R                  " XB5      nXE:*  n[        R                  " / SQ5      n[        R                  " Xs5      n[        R                  " Xg5        g )N2h   periodsr   )TFFF)
r	   r"   r#   npndarrayr   to_numpyr   box_expectedassert_equal)selfbox_with_arrayr$   xboxtdiotherresexpecteds           r    test_compare_timedelta64_zerodimDTestTimedelta64ArrayLikeComparisons.test_compare_timedelta64_zerodimD   s    !/rxx7H!H~bjjdA.*+ooc'l8878??82
&r   	td_scalarr   days   c                 <   UnU[         [        R                  4;  a  UO[        R                  n[        [        SS9[        SS9/5      n[        R                  " XS5      nXR:  n[        SS/5      n[        R                  " Xt5      n[        R                  " Xg5        g )Nr   r?   r    FT)
r	   r"   r#   r0   r1   r   r   r   r3   r4   )r5   r6   r>   r$   r7   seractualr;   s           r   !test_compare_timedeltalike_scalarETestTimedelta64ArrayLikeComparisons.test_compare_timedeltalike_scalarR   sz     %!22s

iQ'):;<ooc'5$-(??82
)r   invalidl     x
Ii	 a
2021-01-01UTCr-   c                 `    Un[        SSS9n[        R                  " XC5      n[        XRU5        g N1 days
   r.   )r   r   r3   r   )r5   r6   rG   r$   rngr   s         r   test_td64_comparisons_invalidATestTimedelta64ArrayLikeComparisons.test_td64_comparisons_invalidg   s-     h3ooc'!#4r   r9   rN   z
1970-01-01r/   tzr.   z
1971-01-01Dfreqr/   c                 p    [        SSS9R                  n[        R                  " X25      n[	        X1U5        g rL   )r   _datar   r3   r   )r5   r9   r6   rO   s       r   "test_td64arr_cmp_arraylike_invalidFTestTimedelta64ArrayLikeComparisons.test_td64arr_cmp_arraylike_invalid}   s.    & h399ooc2!#n=r   c           	         [        SSS9R                  n[        R                  " SSSUS   [	        S5      /5      nX:H  n[        R                  " / S	Q5      n[
        R                  " X45        X:g  n[
        R                  " X4) 5        S
n[        R                  " [        US9   X:    S S S 5        [        R                  " [        US9   X:    S S S 5        [        R                  " [        US9   X:*    S S S 5        [        R                  " [        US9   X:    S S S 5        g ! , (       d  f       N= f! , (       d  f       Nl= f! , (       d  f       NW= f! , (       d  f       g = f)NrM      r.   r   r   r       rI   )FFFTFzDInvalid comparison between|Cannot compare type|not supported betweenmatch)
r   rX   r0   r#   r   r   assert_numpy_array_equalpytestraises	TypeError)r5   rO   r9   resultr;   msgs         r   test_td64arr_cmp_mixed_invalidBTestTimedelta64ArrayLikeComparisons.test_td64arr_cmp_mixed_invalid   s    h288!Q3q69\+BCD88>?
##F5
##FI6T]]9C0K 1]]9C0K 1]]9C0L 1]]9C0L 10 10000000s0   $D$
D50EE$
D25
E
E
E% N)"__name__
__module____qualname____firstlineno__r<   ra   markparametrizer   r   to_timedelta64r   HourrE   r   nowto_datetime64to_pydatetimedater0   r#   rP   listrangearangeastypefloat32objectr"   
date_rangeperiod_rangerY   rf   __static_attributes__rh   r   r   r)   r)   ?   s   
' [[111,,.LL		

*
* [[l#l#''.l#'')779l#'')779l#((*HHQK		
55 [[rOIIbMIIbM  ,IIbM  (MM,u=CCHHR]]<<=|R89MM,3::6BOOLsB?EEOOLsB?FFvN	
>>r   r)   c                      \ rS rSr\R
                  R                  SS\/5      S 5       r\R
                  R                  S\	" SS\
\
SS/5      \R                  " \R                  " S	S
5      \R                  " S	S
5      \R                  " S5      \R                  " S5      \R                  " SS
5      \R                  " S	S5      -   \R                  " SS
5      \R                  " SS5      -   /5      /5      S 5       rS rSrg)TestTimedelta64ArrayComparisons   r   Nc                    [        [        S5      [        [        S5      /5      n[        [        [        [        S5      /5      nX#pTU[        L a)  UR	                  [        5      UR	                  [        5      pTXT:H  n[
        R                  " / SQ5      n[        R                  " Xg5        XT:g  n[
        R                  " / SQ5      n[        R                  " Xg5        [
        R                  " / SQ5      n[        R                  " U[        :H  U5        [        R                  " [        U:H  U5        [
        R                  " / SQ5      n[        R                  " U[        :g  U5        [        R                  " [        U:g  U5        [
        R                  " / SQ5      n[        R                  " U[        :  U5        [        R                  " [        U:  U5        g )NrM   3 days)FFT)TTF)FFFTTT)	r   r   r
   rz   rx   r0   r#   r   r`   )r5   r   leftrightlhsrhsrd   r;   s           r   test_comp_nat-TestTimedelta64ArrayComparisons.test_comp_nat   sE   y2C89LMNS)H*=>?SF?{{6*ELL,@8801
##F588/0
##F58812
##C3J9
##C3J988./
##C3J9
##C3J98812
##C#Ix8
##C#Ix8r   idx2z2 dayz1 day 00:00:02z5 days 00:00:03r    rT   natr   sr\   r]   c                    [        S[        S[        SS/5      nX!:  n[        R                  " / SQ5      n[        R
                  " X45        X:  n[        R                  " / SQ5      n[        R
                  " X45        X!:*  n[        R                  " / SQ5      n[        R
                  " X45        X:  n[        R                  " / SQ5      n[        R
                  " X45        X!:H  n[        R                  " / SQ5      n[        R
                  " X45        X!:g  n[        R                  " / SQ5      n[        R
                  " X45        g )N1 dayz1 day 00:00:01z5 day 00:00:03)TFFFTF)TFFFTT)FFFFFT)TTTTTF)r   r
   r0   r#   r   r`   )r5   r   idx1rd   r;   s        r   test_comparisons_nat4TestTimedelta64ArrayComparisons.test_comparisons_nat   s    &    	
 88DE
##F588DE
##F588CD
##F588CD
##F588EF
##F588AB
##F5r   c                     [        SSS9nXS   :  n[        R                  " / SQS/S-  -   5      n[        R                  " X#5        U[        U5      :H  nX:H  n[        R                  " X$5        g )NrM   rN   r.   r]   r   F   )r   r0   r#   r   r`   ru   )r5   rO   rd   r;   exps        r   test_comparisons_coverage9TestTimedelta64ArrayComparisons.test_comparisons_coverage  sd    h31v88.%1<=
##F5S	!j
##F0r   rh   )ri   rj   rk   rl   ra   rm   rn   rz   r   r   r
   r0   r#   timedelta64r   r   r}   rh   r   r   r   r      s     [[WtVn59 698 [['3-=?PQ HHNN1c*NN1c*NN5)NN5)NN1c*R^^As-CCNN1c*R^^As-CC			
$"6%$"6J	1r   r   c                       \ rS rSrS rS rS rS rS r\	R                  R                  SSS	/5      S
 5       rS rS rS rS rS rS rSrg)!TestTimedelta64ArithmeticUnsortedi  c                    [        / SQSSS9nUS-  [        R                  " US5      4 HO  n[        U[         5      (       d   e[        / SQSSS9n[        R
                  " X#5        UR                  S:X  a  MO   e   US-  [        R                  " US5      4 HO  n[        U[         5      (       d   e[        / SQS	SS9n[        R
                  " X#5        UR                  S	:X  a  MO   e   U* [        R                  " U5      4 HO  n[        U[         5      (       d   e[        / S
QSSS9n[        R
                  " X#5        UR                  S:X  a  MO   e   [        / SQS	SS9n[        U5      [        R                  " U5      4 HL  n[        U[         5      (       d   e[        / SQS SS9n[        R
                  " X#5        UR                  c  ML   e   g )N)r,   4h6h8h10hr,   xrV   namer    )r   r   12h16h20hr   )1hr,   3hr   5hh)-2hz-4hz-6hz-8hz-10hr   )r   z-1h0hr   r,   )r,   r   r   r   r,   )r   r0   multiply
isinstancer   assert_index_equalrV   dividenegativeabsabsolute)r5   idxrd   r   s       r   test_ufunc_coercions6TestTimedelta64ArithmeticUnsorted.test_ufunc_coercions  s   <4cRQwC 34Ffn5555 !BTWXC!!&.;;$&&&	 5 Qw		#q 12Ffn5555 !?cPSTC!!&.;;#%%%	 3 tR[[-.Ffn5555 45sC !!&.;;%''' / =CcR3xS!12Ffn5555 !?dQTUC!!&.;;&&&	 3r   c                 6   [        S[        S/SS9n[        R                  " SSSS9n[	        S5      n[        S5      nS	n[        R                  " [        US
9   X-
    S S S 5        [        R                  " [        US
9   X-
    S S S 5        Sn[        R                  " [        US
9   X4-
    S S S 5        Sn[        R                  " [        US
9   X2-
    S S S 5        XB-
  n[        / SQSS9n[        R                  " Xg5        X$-
  n[        / SQSS9n[        R                  " Xg5        X-
  n[        S[        S/SS9n[        R                  " Xg5        X1-
  n[        S[        S/SS9n[        R                  " Xg5        X#-
  n[        / SQSSSS9n[        R                  " Xg5        XA-
  n[        S[        S/SSS9n[        R                  " Xg5        g ! , (       d  f       GN|= f! , (       d  f       GNh= f! , (       d  f       GNR= f! , (       d  f       GN<= f)NrM   2 daysfoor   20130101r]   barr/   r   z0cannot subtract a datelike from a TimedeltaArrayr^   z#unsupported operand type\(s\) for -z((bad|unsupported) operand type for unary0 days-1 days-2 daysr   rM   r   r   r   20121231r   20130102M8[ns]rT   )r   rV   r   r   20121230r   r   )r   r
   r"   r{   r   r   ra   rb   rc   r   r   r   )r5   r8   dtitddtre   rd   r;   s           r   test_subtraction_ops6TestTimedelta64ArithmeticUnsorted.test_subtraction_ops4  s   hX6UCmmJ>x z"@]]9C0H 1]]9C0I 1 5]]9C0G 1 9]]9C0H 1 !"BO
f/!"@uM
f/!8S(";%H
f/!8S)"<5I
f/ 0sQV
 	f/ j)
 	f/O 1000 10 10s0   G?G%'G7H	
G"%
G47
H	
Hc                 r   [         R                  " SSS9n[        R                  " X!5      n[	        S5      nUR                  5       n[         R                  " SSS9R                  S5      n[        R                  " XQ5      n[	        S5      R                  S5      n[	        S5      R                  S5      nUR                  5       n[        S5      n	S n
X3-
  n[        S5      nU
" X5        X-
  n[        S5      nU
" X5        Xh-
  n[        S5      nU
" X5        S	n[        R                  " [        US
9   X-
    S S S 5        Sn[        R                  " [        US
9   X-
    S S S 5        Sn[        R                  " [        US
9   XH-
    S S S 5        S	n[        R                  " [        US
9   X8-
    S S S 5        [        R                  " [        US
9   Xs-
    S S S 5        [        R                  " [        US
9   Xt-
    S S S 5        Sn[        R                  " [        US
9   X&-
    S S S 5        [        R                  " [        US
9   XS-
    S S S 5        XX-
  n[        / SQ5      n[        R                  " X5      n[        R                  " X5        X-
  n[        / SQ5      n[        R                  " X5      n[        R                  " X5        XV-
  n[        / SQ5      n[        R                  " X5      n[        R                  " X5        Xe-
  n[        / SQ5      n[        R                  " X5      n[        R                  " X5        X-
  n[        S5      nU
" X5        XY-
  n[        / SQSS9R                  S5      n[        R                  " X5      n[        R                  " X5        g ! , (       d  f       GNx= f! , (       d  f       GNb= f! , (       d  f       GNL= f! , (       d  f       GN6= f! , (       d  f       GN"= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f)Nr   r]   r.   z
US/EasternCETrM   c                 @    X:X  d   e[        U [        5      (       d   eg N)r   r   )rd   r;   s     r   _checkNTestTimedelta64ArithmeticUnsorted.test_subtraction_ops_with_tz.<locals>._checkr  s!    %%%fi0000r   r   z<Cannot subtract tz-naive and tz-aware datetime-like objects.r^   z6can't subtract offset-naive and offset-aware datetimesz%Cannot subtract tz-naive and tz-awarer   r   r   rS   ns)r"   r{   r   r3   r   rs   tz_localizer   ra   rb   rc   r   r4   r   as_unit)r5   r6   r   tsr   dti_tzts_tzts_tz2dt_tzr   r   rd   r;   re   s                 r   test_subtraction_ops_with_tz>TestTimedelta64ArithmeticUnsorted.test_subtraction_ops_with_tze  s   mmJ2ooc2z"z15AA,O8*%11,?:&2259##%x 	1
 X&v X&v X&v  M]]9C0J 1F]]9C0J 1F]]9C0J 1L]]9C0J 1]]9C0K 1]]9C0K 1 6]]9C0K 1]]9C0K 1 !"@A??8<
)!"BC??8<
)!"@A??8<
)!"BC??8<
)X&v  0\

'$- 	 ??8<
)i 10 10 10 100000
 1000s`   3N)N;O+OO17PPP')
N8;
O

O
O.1
P 
P
P$'
P6c                 T   [        S[        S/SS9n[        R                  " SSSS9nX-
  n[        S	[        S	/SS9n[        R
                  " X45        X-   n[        S[        S
/SS9n[        R
                  " X45        X!-
  n[        S[        S/SS9n[        R
                  " X45        g )NrM   r   r   r   r   r]   r   r   r   4 daysr   r   r   )r   r
   r"   r{   r   r   r   )r5   r8   r   rd   r;   s        r   test_dti_tdi_numeric_ops:TestTimedelta64ArithmeticUnsorted.test_dti_tdi_numeric_ops  s    hX6UCmmJ>!8S(";%H
f/!8S(";%H
f/ *c:!>hO
f/r   c                 p   [        S[        S/SS9n[        R                  " SSSS9n[	        S5      n[        S5      nX-   n[        S	[        S
/SSS9n[        R                  " XV5        XA-   n[        S	[        S
/SSS9n[        R                  " XV5        X1-   n[        S[        S/SS9n[        R                  " XV5        X-   n[        S[        S/SS9n[        R                  " XV5        Sn[        R                  " [        US9   XSS -     S S S 5        [        R                  " [        US9   USS U-     S S S 5        Sn[        R                  " [        US9   U[        / SQ[        R                  S9-     S S S 5        X-   n[        S	[        S/SS9n[        R                  " XV5        X!-   n[        S	[        S/SS9n[        R                  " XV5        XC-   n[        S	5      nXV:X  d   eX4-   n[        S	5      nXV:X  d   eg ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f)NrM   r   r   r   r   r]   r   r   r   20130103r   r   r   z$cannot add indices of unequal lengthr^   r   r   3Addition/subtraction of integers and integer-arraysr   r    r]   r   20130105)r   r
   r"   r{   r   r   r   r   r   ra   rb   
ValueErrorrc   r	   r0   int64)r5   r8   r   r   r   rd   r;   re   s           r   test_addition_ops3TestTimedelta64ArithmeticUnsorted.test_addition_ops  s   hX6UCmmJ>x z" j)
 	f/ j)
 	f/!8S(";%H
f/!8S(";%H
f/ 5]]:S1a(N 2]]:S1!HsN 2 D]]9C0%	22 1  *c:!>hO
f/ *c:!>hO
f/Z(!!!Z(!!!9 2111
 10s$   H0	HH'
H
H$'
H5rV   rT   Bc                    [         R                  " SSUS9nU[        S5      -   nU[        S5      -   nUR                  S5      n[        R
                  " X$5        US:X  a`  [         R                  R                  R                  S5      nUR                  U:X  d   eUR                  U:X  d   eUR                  U:X  d   eOUR                  [         R                  R                  R                  S5      :X  d   eUR                  b   eUR                  [         R                  R                  R                  S5      :X  d   eU[        S5      -
  nU[        S5      -   n[        R
                  " Xe5        g )Nz1/1/20002   r/   rV   r   inferrT   )r"   r{   r   
_with_freqr   r   tseriesr   DayrV   BusinessDay)r5   rV   indexshiftedbackr;   rd   s          r   test_timedelta0TestTimedelta64ArithmeticUnsorted.test_timedelta	  s+   j"4@)A,&2&w'
e*3;zz))--a0H::)))<<8+++99(((::!3!3!?!?!BBBB<<'''99

 2 2 > >q AAAA1%9R=(
f/r   c                 @   [         R                  " SS5      n[        U5      nU[        R                  " S5      -
  n[        U[        R                  " S5      -
  5      nU[        R                  " S5      -
  n[        U[        R                  " S5      -
  5      nUR                  UR                  :X  d   eUR                  S 5      n[        R                  " X65        UR                  UR                  :X  d   eUR                  S 5      n[        R                  " XE5        g )N20132014r   i )r"   r{   r   r   rp   r   r0   r   rV   r   r   r   )r5   rO   r   result1result2result3result4s          r   test_timedelta_tick_arithmetic@TestTimedelta64ArithmeticUnsorted.test_timedelta_tick_arithmetic   s    mmFF+3KQ'BNN9$= =>y11GLLO 34||sxx'''$$T*
g/||sxx'''$$T*
g/r   c                     [        S[        S/5      nUR                  n[        R                  " SSSS9nX#-   nX-   n[
        R                  " XE5        X!-   nX-   n[
        R                  " XE5        X!-
  nX-
  n[
        R                  " XE5        g )NrM   r   z
1999-12-31r]   rT   r   )r   r
   r#   r"   r{   r   r   )r5   r8   tdar   rd   r;   s         r   test_tda_add_sub_index8TestTimedelta64ArithmeticUnsorted.test_tda_add_sub_index1  s    hX67iimmL!#>9
f/9
f/9
f/r   c                    Un[         R                  " SSUS9nUR                  S 5      nXD-
  n[        R                  " XS5      n[        R                  " XC5      n[        R
                  " [        5         XgR                  [        5      -   nS S S 5        [        R                  " WUR                  [        5      5        g ! , (       d  f       N9= f)N
2016-01-01r]   rR   )
r"   r{   r   r   r3   assert_produces_warningr   rx   rz   r4   )	r5   r6   tz_naive_fixturer$   r   r8   r   r9   rd   s	            r   test_tda_add_dt64_object_array@TestTimedelta64ArithmeticUnsorted.test_tda_add_dt64_object_arrayD  s    mmL!8HInnT"iooc')''(:;<<//F <
V 45 <;s   4B??
Cc                    [        SS5      n[        SSSS9n[        R                  " X25      n[        R                  " XB5      nUnX1-  n[        R                  " X45        U[        La  [        R                  " XT5        g g NrM   10 daysz1 days 02:00:00z10 days 02:00:00rT   rV   r   r   r3   r4   r	   r5   	two_hoursr6   rO   r;   orig_rngs         r   test_tdi_iadd_timedeltalike=TestTimedelta64ArithmeticUnsorted.test_tdi_iadd_timedeltalikeV  sl    h	2"#46HsSooc2??8<
&&OOH/ 'r   c                    [        SS5      n[        SS5      n[        R                  " X25      n[        R                  " XB5      nUnX1-  n[        R                  " X45        U[        La  [        R                  " XT5        g g NrM   r  z0 days 22:00:00z9 days 22:00:00r  r  s         r   test_tdi_isub_timedeltalike=TestTimedelta64ArithmeticUnsorted.test_tdi_isub_timedeltalikee  sj    h	2"#46GHooc2??8<
&&OOH/ 'r   c                    [        SSSSS9nUSUR                  -  -   n[        SSSSS9n[        R                  " X#5        UR                  S:X  d   eUSUR                  -  -
  n[        S	SSSS9n[        R                  " X#5        UR                  S:X  d   eUS-  n[        SSS
SS9n[        R                  " X#5        UR                  S
:X  d   eUS-  n[        SSSSS9n[        R                  " X#5        UR                  S:X  d   eU* n[        S	SSSS9n[        R                  " X#5        UR                  S:X  d   e[        S	SSSS9n[	        U5      n[        / SQSS9n[        R                  " X#5        UR                  b   eg )Nr   r\   2Dr   )r/   rV   r   r   r   r    r   4DrM   rT   z-2D)r   rM   r   rM   r   r   )r   rV   r   r   r   r   )r5   rO   rd   r   s       r   test_tdi_ops_attributes9TestTimedelta64ArithmeticUnsorted.test_tdi_ops_attributesv  s   h3Gq388|#h3G
f*{{d"""q388|#iCH
f*{{d"""qh3G
f*{{d"""qh#F
f*{{c!!!iSI
f*{{e###i3GS>S
 	f*{{"""r   rh   N)ri   rj   rk   rl   r   r   r   r   r   ra   rm   rn   r   r  r  r  r  r  r  r}   rh   r   r   r   r     sf    '>/0bT*l0"9"z [[Vc3Z00 10,0"0&6$00"##r   r   c                   b    \ rS rSr\R
                  R                  SSS/5      S 5       rS rSr	g)	TestAddSubNaTMaskingi  str_tsz
1950-01-01z
1980-01-01c                    [         R                  " SS/5      n[        R                  " X15      n[	        U5      nUUR                  5       UR                  5       R                  S5      UR                  5       R                  S5      /nU H8  nXG-   nU[        L a  UR                  S   [        L d   eM*  US   [        L a  M8   e   g )Nz24658 days 11:15:00r
   zdatetime64[ns]zdatetime64[D])r   r   r   )r"   to_timedeltar   r3   r   rs   rr   rx   r   ilocr
   )	r5   r6   r"  tdinattdobjr   ts_variantsvariantr:   s	            r   $test_tdarr_add_timestamp_nat_masking9TestAddSubNaTMasking.test_tdarr_add_timestamp_nat_masking  s     "7!?@7v%%&67%%o6	
 #G/C*xx~,,,1v}$} #r   c                    [         R                  " [        SS9   [        R                  " SS5      [        S5      -     S S S 5        [         R                  " [        SS9   [        S5      [        R                  " SS5      -     S S S 5        [        R                  S-   nSn[         R                  " [        US9   [        R                  " S/S5      [        S5      -     S S S 5        [         R                  " [        US9   [        S5      [        R                  " S/S5      -     S S S 5        [         R                  " [        US9   [        R                  " U/5      [        S5      -
    S S S 5        [         R                  " [        US9   [        R                  " S	U/5      [        S5      -
    S S S 5        [         R                  " [        US9   [        R                  " US	S
/5      [        R                  " SUS/5      -
    S S S 5        [        [        /5      n[        R                  " [        /5      [        S5      -
  n[        R                  " XC5        [        S[        /5      n[        R                  " S	[        /5      [        S5      -
  n[        R                  " XC5        [        [        [        S/5      n[        R                  " [        S	S
/5      [        R                  " S[        S/5      -   n[        R                  " XC5        g ! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN]= f! , (       d  f       GN)= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f)N10155196800000000000r^   iT rT   2000r   zOverflow in int64 additionrM   z5 days1 hoursz	7 secondsz4 hoursr   z5 hours)ra   rb   r   r"   r$  r   r
   _valueOverflowErrorr   r   r   r   )r5   _NaTre   r   rd   s        r   test_tdi_add_overflow*TestAddSubNaTMasking.test_tdi_add_overflow  s\    ]].6LMOOFC(9V+<< N]].6LMf << N zzA~*]]=4OOVHc*Yv->> 5]]=4f# >> 5]]=4OOTF#i&99 5]]=4OOXt,-	(0CC 5]]=4x ;<//;i"@AB 5 cU##')H*==
f*h_-(C1Ih4GG
f*c3	23#x!;<r#y)@
 
 	f*E NMMM
 5444444444sS   $L$L"9%L4?%M$M
%M*4M<
L"
L14
M
M
M'*
M9<
Nrh   N)
ri   rj   rk   rl   ra   rm   rn   r*  r3  r}   rh   r   r   r!  r!    s2     [[Xl'CD% E%(&+r   r!  c            
       <   \ rS rSrS rS rS rS r\R                  R                  S\\\R                  /5      S 5       rS rS	 rS
 r\R                  R                  S/ SQ5      \R                  R                  SSS/5      S 5       5       r\R                  R                  SSSS\R(                  " S5      /5      S 5       r\R                  R                  S\R(                  " / SQ5      \" / SQ5      \" / SQ5      \" / SQ/5      /S S9S 5       rS rS rS rS rS  r\R                  R                  S!\R>                  " S"5      \ /5      S# 5       r!S$ r"S% r#S& r$S' r%S( r&\R                  R                  S)\R(                  \\/5      S* 5       r'S+ r(S,r)g)-TestTimedeltaArraylikeAddSubOpsi  c                     [         R                  " [        S/5      5      R                  S5      nU[        -
  n[        [        /SS9n[
        R                  " X#5        g )N00:00:01zm8[s]r   )r"   r$  r   rx   r
   r   assert_series_equal)r5   rC   rd   r;   s       r   test_sub_nat_retain_unit8TestTimedeltaArraylikeAddSubOps.test_sub_nat_retain_unit  sG    oofj\23::7Cs3%w/
v0r   c                 
   [         R                  " [        S/5      5      n[         R                  " [        S/5      5      n[         R                  " [        [        /SS95      n[	        S/5      R                  [         R                  5      n[	        S/5      R                  [         R                  5      n[	        [        R                  /5      R                  [         R                  5      n[         R                  " S5      n[         R                  " S5      n[         R                  " S5      n	Xw-   n
X:X  d   eX-
  n
X:X  d   eX-   n
[        R                  " X5        X!-
  n
[        R                  " X5        X-   n
[        R                  " X5        Xq-   n
[        R                  " X5        X'-
  n
[        R                  " X5        U* U-   n
[        R                  " X5        X-   n
[        R                  " X5        X-   n
[        R                  " X5        X-
  n
[        R                  " X5        U	* U-   n
[        R                  " X5        Sn[        R                  " [        US9   U[        R                  -     S S S 5        [        R                  " [        US9   [        R                  U-     S S S 5        [        R                  " [        US9   U[        R                  -
    S S S 5        [        R                  " [        US9   [        R                  * U-     S S S 5        U[        -   n
[        R                  " X5        U[        -
  n
[        R                  " X5        X-   n
[        R                  " X5        X$-
  n
[        R                  " X5        XA-   n
[        R                  " X5        XQ-
  n
[        R                  " X5        XD-   n
[        R                  " X5        XT-
  n
[        R                  " X5        XG-   n
[        R                  " X5        XW-
  n
[        R                  " X5        XI-   n
[        R                  " X5        XI-
  n
[        R                  " X5        Sn[        R                  " [        US9   U[        R                  -     S S S 5        [        R                  " [        US9   U[        R                  -
    S S S 5        U[        -   n
[        R                  " X5        U[        -
  n
[        R                  " X5        g ! , (       d  f       GN= f! , (       d  f       GNy= f! , (       d  f       GNV= f! , (       d  f       GN2= f! , (       d  f       N= f! , (       d  f       N= f)	Nr8  z00:00:02m8[ns]r   r
   unsupported operand typer^   z8cannot subtract a datelike from|unsupported operand type)r"   r$  r   r
   r   applyr0  r   r9  ra   rb   rc   r0   nanassert_frame_equal)r5   s1s2sndf1df2dfnscalar1scalar2timedelta_NaTrD   re   s               r   &test_timedelta_ops_with_missing_valuesFTestTimedeltaArraylikeAddSubOps.test_timedelta_ops_with_missing_values  s   __VZL12__VZL12__VSE:;%++BOO<%++BOO<%++BOO<//*-//*-."   "   
v*
v*
v*
v*
v*B
v*#
v*#
v*#
v*"$
v*(]]9C0K 1]]9C0FFRK 1]]9C0K 1]]9C0VVGbL 1 c
v*c
v*
f*
f*
f*
f*
f*
f*
f*
f*$
f*$
f*H]]9C0"&&L 1]]9C0"&&L 1 s
f*s
f*_ 10000000B 1000sH   (TT#T5UU6U*
T #
T25
U
U
U'*
U8c           
         [         R                  " SSSS9n[         R                  " SSSS9n[        U5      [        U5      -
  n[        SUR                  5      R	                  S5      R	                  S5      n[
        R                  " X45        UR                  S:X  d   e[        S	U05      n[        [        S5       Vs/ s H  n[        US
9PM     sn5      nUR                  S:X  d   eUS	   US	   R                  5       -
  nUR                  S:X  d   eUS	   U-   nUR                  S:X  d   eUS	   R                  5       n	[        U	[        5      (       d   eUS	   US	   R                  5       -
  n
U
R                  S:X  d   eXS	   -   n[        S5      [        S5      [        S5      /n[        USS	S9n[
        R                  " X5        US	   [        SSS5      -
  n[        [        S5       Vs/ s H  n[        SU-   S
9PM     snS	S9n[
        R                  " X5        UR                  S:X  d   e[        SSSSS5      nUS	   U-
  nUR                  S:X  d   eX-   n
[
        R                  " US	   U
5        [        SS
9nUS	   U-   nX-
  n
[
        R                  " XS	   5        U
R                  S:X  d   e[        SSS9nUS	   U-   nX-
  n
[
        R                  " US	   U
5        U
R                  S:X  d   eUS   [         R"                  " [        SSS95      -   nUS==   [         R"                  " [        SSS95      -  ss'   US   U:X  d   eg s  snf s  snf )Nz2012-1-1r]   rT   r   z2012-1-2g  S$Br   timedelta64[ns]Ar?   r   201112302012010120120103r   i  r   i  r   r=  r-   r\   minutessecondsr    )r"   r{   r   r   rx   r   r9  r   r   rv   r   shiftmaxr   r   r   r0   r   )r5   v1v2rsxpdfir   rd   maxaresultbvaluesr;   dresultavalues                   r   test_operators_timedelta64:TestTimedeltaArraylikeAddSubOps.test_operators_timedelta64I  s8   ]]:qs;]]:qs;BZ&*$ORXX.55g>EEFWX
r&xx,,,,Ry!a91YA&9:xx,,,, C2c7==?*||0000C2||x''' #w{{}$	****S'BsGKKM)}} 1111 c7"J':)>	*@UV&s;
v0 C8D!Q//U1XFX9$(3XFSQ
v0||x'''T1aA&S'A+}}((( +
r#w0 AS'B,,
w30}}((( q!,S'B,,
r#w0}}((( 1yA'FGG
1	!Q ?@@!u~~m :2 Gs   ?M2Mc           	      D   [        [        [        S5      /5      n[        [        [        /SS9n[        [        /SS9n[        R                  " U[        -
  U5        [        R                  " [        * U-   U5        [        R                  " X-
  U5        [        R                  " U* U-   U5        [        R                  " U[        -   U5        [        R                  " [        U-   U5        [        R                  " X#-   U5        [        R                  " X2-   U5        [        R                  " U[        -   U5        [        R                  " [        U-   U5        [        R                  " X-   U5        [        R                  " X1-   U5        [        R                  " U[        -   U5        [        R                  " [        U-   U5        [        R                  " X#-   U5        [        R                  " X2-   U5        [        R                  " US-  U5        [        R                  " SU-  U5        [        R                  " US-  U5        [        R                  " SU-  U5        [        R                  " US-  [        [        [        S5      /5      5        [        R                  " SU-  [        [        [        S5      /5      5        [        R                  " U[
        R                  -  U5        [        R                  " [
        R                  U-  U5        [        R                  " US-  [        [        [        S	5      /5      5        [        R                  " US
-  [        [        [        S	5      /5      5        [        R                  " U[
        R                  -  U5        g )N1srN  r         ?r         ?z1.5sr    z0.5s       @)r   r
   r   r   r9  r0   r@  )r5   timedelta_seriesnat_series_dtype_timedeltasingle_nat_dtype_timedeltas       r   test_timedelta64_ops_nat8TestTimedeltaArraylikeAddSubOps.test_timedelta64_ops_nat  s    !3	$"89%+S#J>O%P"%+SE9J%K" 	/#57QR
t&668RS
9;U	
 	''*::<V	

 	&,.H	
 	,,.H	
 	&C&	
 	&C&	

 	/#57QR
s%557QR
9;U	
 	&9;U	
 	&,.H	
 	,,.H	
 	&C&	
 	&C&	
 	&,.H	
 	,,.H	
 	/!35EF
q#335EF
/#5vsIfDU>V7WX
s%55vsIfDU>V7WX
/"&&8:TU
rvv(88:TU 	/!3VS)FBS<T5UV
/#5vsIfDU>V7WX
/"&&8:TUr   clsc                    Un[        SUS9nU[        L a  UR                  5       nODU[        R                  L a/  Ub  [
        R                  " U SU 35        UR                  5       nOUn[        SSS9n[        R                  " SSUS9n[        R                  " Xr5      n	[        R                  " X5      n[        R                  " Xi-   U5        [        R                  " X-   U5        [        R                  " S	SS
US9n
[        R                  " X5      n
[        R                  " Xi-
  U
5        [        R                  " Xi* -   U
5        Sn[
        R                  " [        US9   X-
    S S S 5        g ! , (       d  f       g = f)Nz
2012-01-01r   z doesn support r   r]   r.   z
2012-01-02rR   z
2011-12-31z-1D)r/   rV   rS   zcannot subtract a dateliker^   )r   r   rs   r0   
datetime64ra   skiprr   r   r"   r{   r   r3   r4   rb   rc   )r5   rp  r6   r
  rS   	dt_scalarr   r8   r;   tdarr	expected2re   s               r   (test_td64arr_add_sub_datetimelike_scalarHTestTimedeltaArraylikeAddSubOps.test_td64arr_add_sub_datetimelike_scalar  s*   
 lr2	(?((*BBMM!+se?3C2DEF((*BBgq1==qR@4??8<

H-

H-MM,"M	OOI>	

I.
fy1*]]9C0J 100s   $E22
F c                    [         R                  " S5      n[        SSS9n[        / SQSS9n[        R
                  " X15      n[        R
                  " XA5      n[        R                  " XR-   U5        [        R                  " X%-   U5        g )Nr
   r   r]   r.   )r
   r
   r
   r   r   )r0   rr  r   r   r   r3   r4   )r5   r6   r9   r8   r;   tdsers         r   test_td64arr_add_datetime64_nat?TestTimedeltaArraylikeAddSubOps.test_td64arr_add_datetime64_nat  se    e$gq1 !6hG4??8<
x0
x0r   c                 ~   [         R                  " SSS9n[        S/S-  5      nUR                  n[	        U5      U-
  n[
        R                  " X15      n[
        R                  " XQ5      nSn[        R                  " [        US9   X4-
    S S S 5        XC-
  n[
        R                  " Xu5        g ! , (       d  f       N)= f)Nr  r]   r.   -1 Dayzcannot subtract a datelike fromr^   )r"   r{   r   r`  r   r   r3   ra   rb   rc   r4   )r5   r6   r   r8   dtarrr;   re   rd   s           r   test_td64arr_sub_dt64_array;TestTimedeltaArraylikeAddSubOps.test_td64arr_sub_dt64_array  s    mmL!4hZ!^,

 '#-ooc2??8</]]9C0K 1 
) 10s   B..
B<c                 @   [         R                  " SSS9n[        S/S-  5      nUR                  n[	        U5      U-   n[
        R                  " X15      n[
        R                  " XQ5      nX4-   n[
        R                  " Xe5        XC-   n[
        R                  " Xe5        g )Nr  r]   r.   r~  )r"   r{   r   r`  r   r   r3   r4   )r5   r6   r   r8   r  r;   rd   s          r   test_td64arr_add_dt64_array;TestTimedeltaArraylikeAddSubOps.test_td64arr_add_dt64_array"  s|    mmL!4hZ!^,

 '#-ooc2??8<
)
)r   pi_freq)rT   WQr   tdi_freqNr   c                    [        SS/US9n[        S5      U-   nUR                  U5      nUS   n[        R                  " XQ5      n[        R                  " Xr5      nSn	[
        R                  " [        U	S9   XW-
    S S S 5        [
        R                  " [        U	S9   XX-
    S S S 5        g ! , (       d  f       N5= f! , (       d  f       g = f)Nr/  z2 hoursr  z2018-03-07 17:16:40r   z(cannot subtract|unsupported operand typer^   )r   r   	to_periodr   r3   ra   rb   rc   )
r5   r6   box_with_array2r  r  r8   r   piperre   s
             r   test_td64arr_sub_periodlike;TestTimedeltaArraylikeAddSubOps.test_td64arr_sub_periodlike3  s     i3(C-.4]]7#eooc2__R18]]9C0H 1 ]]9C0I 10	 10 10s   8B,B=,
B:=
Cr9   rH   r   ri  r    c                 ^    [        / SQSS9n[        R                  " X15      n[        XB5        g N59 Daysr  r
   r=  r   )r   r   r3   r   )r5   r6   r9   rz  ru  s        r   *test_td64arr_addsub_numeric_scalar_invalidJTestTimedeltaArraylikeAddSubOps.test_td64arr_addsub_numeric_scalar_invalidH  s'     4HE6"50r   vecr   c                 ,    [        U 5      R                  $ r   typeri   r   s    r   <lambda>(TestTimedeltaArraylikeAddSubOps.<lambda>b      d1g&&r   idsc                     [        / SQSS9n[        R                  " XA5      nUR                  U5      n[	        XV5        g r  )r   r   r3   rx   r   )r5   r6   r  any_real_numpy_dtyperz  ru  vectors          r   'test_td64arr_addsub_numeric_arr_invalidGTestTimedeltaArraylikeAddSubOps.test_td64arr_addsub_numeric_arr_invalidZ  s6     4HE601"51r   c                 >   [        SSSS9n[        R                  " X15      nSn[        XBU5        [        R
                  " [        US9   XB-  nS S S 5        [        R
                  " [        US9   XB-  nS S S 5        g ! , (       d  f       N5= f! , (       d  f       g = f)N1 days 09:00:00r   rN   rU    Addition/subtraction of integersr^   )r   r   r3   r   ra   rb   rc   )r5   r6   onerO   ru  re   s         r   test_td64arr_add_sub_int8TestTimedeltaArraylikeAddSubOps.test_td64arr_add_sub_intm  sw    /c2F40"5s3 ]]9C0LE 1]]9C0LE 10 1000s   	A=/B=
B
Bc                     UnU[         R                  L a  [        R                  OUn[	        SSSS9n[
        R                  " XB5      n[
        R                  " / SQU5      nSn[        XVU5        g )Nr  r   r]   rU   )r-   r]   r    r   )r"   r#   r0   r1   r   r   r3   r   )r5   r6   r$   r7   rO   ru  r9   re   s           r   "test_td64arr_add_sub_integer_arrayBTestTimedeltaArraylikeAddSubOps.test_td64arr_add_sub_integer_array{  sZ      BHH_rzz#/c1E)	40C"55r   c                     UnU[         R                  L a  [        R                  OUn[	        / SQ5      n[
        R                  " XB5      n[
        R                  " / SQU5      nSn[        XVU5        g )N)1 Dayr
   z3 Hours)   r      r  )r"   r#   r0   r1   r   r   r3   r   )r5   r6   r$   r7   r8   ru  r9   re   s           r   )test_td64arr_addsub_integer_array_no_freqITestTimedeltaArraylikeAddSubOps.test_td64arr_addsub_integer_array_no_freq  sT     BHH_rzz#89)d30"55r   c                    Un[         R                  " SSS9nX3R                  S5      -
  nUR                  nSU-  n[        R
                  " XB5      n[        R
                  " Xb5      nXE-   n[        R                  " Xv5        XT-   n[        R                  " Xv5        SU-  nXE-
  n[        R                  " Xx5        XT-
  n[        R                  " Xx5        g )Nr  r]   r.   r   r    r   )r"   r{   rV  r`  r   r3   r4   )	r5   r6   r$   r   r8   ru  r;   rd   expected_subs	            r   test_td64arr_add_sub_td64_array?TestTimedeltaArraylikeAddSubOps.test_td64arr_add_sub_td64_array  s    mmL!4IIaL 

s7ooc'??81
)
)3w
-
-r   c                    Un[        X25      n[        SS/US   S9nU[        R                  [        R
                  4;   a  [        R
                  " U5      OUn[        [        SS9[        SS9/US   S9n[        [        SS9[        SSS	9/US9n[        R                  " Xc5      n[        R                  " Xs5      nXV-   n[        R                  " X5        [        US
5        Xe-   n[        R                  " X5        [        US
5        [        [        SS9[        SSS	9/US9n[        R                  " Xs5      nXV-
  n[        R                  " X5        [        US
5        Xe-
  n[        R                  " X* 5        [        US
5        g )Nr   r   r   r   r]   )hoursr-   r   )r@   r  rN  )r'   r   r   r!   r"   r#   r0   r   r   r3   r4   r   )	r5   r6   r%   r$   r&   r8   rC   r;   rd   s	            r   test_td64arr_add_sub_tdi8TestTimedeltaArraylikeAddSubOps.test_td64arr_add_sub_tdi  sN    "3.h0uQx@"r{{BHH&==bhhsm3ia()!*<=E!HM91-yaq/IJQWXooc'??81
)V./
)V./R )""=>V
 ??81
)V./
	*V./r   tdnatr
   c                    Un[        [        [        S5      /5      n[        S/S-  5      n[        R                  " XC5      n[        R                  " XS5      nXb-   n[        R
                  " Xu5        X&-   n[        R
                  " Xu5        Xb-
  n[        R
                  " Xu5        X&-
  n[        R
                  " Xu5        g )Nrg  r
   r    )r   r
   r   r   r3   r4   )r5   r6   r  r$   r8   r;   r   rd   s           r   test_td64arr_add_sub_td64_nat=TestTimedeltaArraylikeAddSubOps.test_td64arr_add_sub_td64_nat  s     c9T?34!5'A+.ooc'??81
)
)
)
)r   c                     Un[        SS5      n[        SSSS9n[        R                  " XC5      n[        R                  " XS5      nXA-   n[        R                  " Xe5        X-   n[        R                  " Xe5        g r  r   r   r3   r4   r5   r  r6   r$   rO   r;   rd   s          r   test_td64arr_add_timedeltalike>TestTimedeltaArraylikeAddSubOps.test_td64arr_add_timedeltalike  sg     h	2"#46HsSooc'??81
)
)r   c                     Un[        SS5      n[        SS5      n[        R                  " XC5      n[        R                  " XS5      nXA-
  n[        R                  " Xe5        X-
  n[        R                  " Xe* 5        g r  r  r  s          r   test_td64arr_sub_timedeltalike>TestTimedeltaArraylikeAddSubOps.test_td64arr_sub_timedeltalike  sg     h	2"#46GHooc'??81
)
	*r   c                    Un[        X15      n[        SS/US   S9n[        [        R                  " SS9[        R
                  " SS9/US   S9nU[        R                  [        R                  4;   a  [        R                  " U5      OUn[        [        [        U5      5       Vs/ s H  ouU   Xg   -   PM     snSUS	9n[        [        [        U5      5       Vs/ s H  ouU   Xg   -
  PM     snSUS	9n	[        R                  " XS5      n[        R                  " X5      R                  [        S
S9n[        R                  " X5      R                  [        S
S9n	[        R                   " ["        5         XV-   n
S S S 5        [        R$                  " W
U5        [        R                   " ["        5         Xe-   nS S S 5        [        R$                  " WU5        [        R                   " ["        5         XV-
  nS S S 5        [        R$                  " WU	5        g s  snf s  snf ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       NR= f)N1 days 00:00:003 days 04:00:00r   r   r   nr   r   F)copy)r'   r   r	   r   rp   Minuter   r!   r"   r#   r0   rv   lenr3   rx   rz   r	  r   r4   )r5   r%   r6   r$   r&   r8   r9   r  r;   r  r:   res2res_subs                r   !test_td64arr_add_sub_offset_indexATestTimedeltaArraylikeAddSubOps.test_td64arr_add_sub_offset_index  s   "3./1BC%PQ(Sw||a('..2*>?eAhO#&2;;*A#Au!(-c#h81Veh8wV
 &(-c#h81Veh8wV
 ooc'??8188e8L|9@@e@T''(:;+C <
X&''(:;;D <
h'''(:;kG <
.) 9 9 <; <; <;s0   'HH6H!4H22I!
H/2
I 
Ic                 (   Un[        SS/5      n[        R                  " [        R                  " SS9[        R
                  " SS9/5      n[        [        [        U5      5       Vs/ s H  oSU   XE   -   PM     snSS9n[        [        [        U5      5       Vs/ s H  oSU   XE   -
  PM     snSS9n[        R                  " X25      n[        R                  " Xb5      R                  [        5      n[        R                  " [        5         X4-   nS S S 5        [        R                  " WU5        [        R                  " [        5         XC-   n	S S S 5        [        R                  " W	U5        [        R                  " Xq5      R                  [        5      n[        R                  " [        5         X4-
  n
S S S 5        [        R                  " W
U5        g s  snf s  snf ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       NR= f)Nr  r  r   r  r  r   r  )r   r0   r#   r   rp   r  rv   r  r   r3   rx   rz   r	  r   r4   )r5   r6   r$   r8   r9   r  r;   r  r:   r  r  s              r   !test_td64arr_add_sub_offset_arrayATestTimedeltaArraylikeAddSubOps.test_td64arr_add_sub_offset_array%  s   /1BCD',,+W^^b-ABC!(-c#h81Veh8w
 &(-c#h81Veh8w
 ooc'??8188@''(:;+C <
X&''(:;;D <
h'|DKKFS''(:;kG <
.) 9 9 <; <;
 <;s0   'GGG!G22H!
G/2
H 
Hc                    UnU[         [        R                  [        R                  4;   a  [
        OUn[        X15      n[        SS/US   S9n[        [        R                  " SS9[        R                  " SS9/US   S9n[        [        [        U5      5       Vs/ s H  oU   Xx   -   PM     snU[        S9n	[        R                  " Xc5      n
[        R                  " X5      R                  [        5      n	[        R                   " ["        5         X-   nS S S 5        [        R$                  " WU	5        [        R                   " ["        5         Xz-   nS S S 5        [        R$                  " WU	5        [        [        [        U5      5       Vs/ s H  oU   Xx   -
  PM     snU[        S9n[        R                  " X5      R                  [        5      n[        R                   " ["        5         X-
  nS S S 5        [        R$                  " WU5        g s  snf ! , (       d  f       GN
= f! , (       d  f       N= fs  snf ! , (       d  f       NS= f)	Nr  r  r   r   r   r  r  )r   r   )r	   r   r!   r"   r#   r   r'   r   r   rp   r  rv   r  rz   r3   rx   r	  r   r4   )r5   r%   r6   r$   box2r&   r8   r9   r  expected_addr   r:   r  r  res3s                  r   test_td64arr_with_offset_series?TestTimedeltaArraylikeAddSubOps.test_td64arr_with_offset_seriesB  s   RXX >>vC"3./1BC%PQ(Sq)7>>B+?@uQxP(-c#h81Veh8vV
 ooc'|:AA&I''(:;+C <
\*''(:;;D <
l+(-c#h81Veh8vV
 |:AA&I''(:;;D <
l+) 9
 <; <;
 9 <;s0   HHH-H>1I
H*-
H;
Ioboxc                    [        SS/5      n[        R                  " X25      nU" [        R                  " 5       [        R
                  " SS9/5      nSn[        R                  " [        US9   [        R                  " [        5         X4-     S S S 5        S S S 5        [        R                  " [        US9   [        R                  " [        5         XC-     S S S 5        S S S 5        [        R                  " [        US9   [        R                  " [        5         X4-
    S S S 5        S S S 5        [        R                  " [        US9   [        R                  " [        5         XC-
    S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N}= f! , (       d  f       g = f)Nr  r  r    r  z/has incorrect type|cannot add the type MonthEndr^   )r   r   r3   r   MonthEndr   ra   rb   rc   r	  r   )r5   r  r6   r8   anchoredre   s         r   -test_td64arr_addsub_anchored_offset_arraylikeMTestTimedeltaArraylikeAddSubOps.test_td64arr_addsub_anchored_offset_arraylikeb  sU    /1BCDooc2))+W[[1-=>? @]]9C0++,>? @ 1 ]]9C0++,>? @ 1 ]]9C0++,>? @ 1 ]]9C0++,>? @ 10 @? 10 @? 10 @? 10 @? 10s   .F	E:F7F-FF- GF> G	G1$G )G1:
F	F
F
F*	&F--
F;>
G	G
G 
G.	*G11
G?c                 d   UnU[         R                  L a  [        R                  OUn[	        SSSS9n[
        R                  " XB5      n[        R                  " [        SS9[        R                  " S5      [        S5      /5      n[
        R                  " [        5         XV-   nS S S 5        [        [        SS9[        S	S9[        S
5      /5      n[
        R                  " X5      R                  [        5      n[
        R                   " WU5        Sn	["        R$                  " [&        U	S9   [
        R                  " [        5         XV-
    S S S 5        S S S 5        [
        R                  " [        5         Xe-
  nS S S 5        [        [        S5      [        S5      [        S5      /5      n[
        R                  " X5      R                  [        5      n[
        R                   " Xx5        g ! , (       d  f       GNO= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f)Nr   r]   rT   r   r   r?   r    z
2000-01-04r-   z
2000-01-07z3unsupported operand type|cannot subtract a dateliker^   r   z
2000-01-01)r"   r#   r0   r1   r   r   r3   r   r   r   r   r	  r   r	   rx   rz   r4   ra   rb   rc   )
r5   r6   r$   r7   r8   ru  r9   rd   r;   re   s
             r   !test_td64arr_add_sub_object_arrayATestTimedeltaArraylikeAddSubOps.test_td64arr_add_sub_object_array}  s    BHH_rzz#gqs;))+W[[^Y|=TUV''(:;]F < A	q 19\3JK
 ??8299&A
)C]]9C0++,>? @ 1 ''(:;]F < )A,	!i6MNO??8299&A
)' <; @? 10 <;s<    G--HG?H7H!-
G<?
H		H
H!
H/rh   )*ri   rj   rk   rl   r:  rK  rd  rn  ra   rm   rn   r   r   r0   rr  rw  r{  r  r  r  r#   r  r	   r   r   r  r  r  r  r  r  r   r
   r  r  r  r  r  r  r  r  r}   rh   r   r   r6  r6    s   1\+@@DPVj [[UY"--$HI! J!F1*"*" [[Y(<=[[Z$5 6 >& [[ HHQK	

1
1 [[HHY)9yk"		
 '  	2	26
6.*!0F [[Wr~~e'<c&BC* D*$*+&/@/:,@ [[Vbhhv%>? @4*r   r6  c                      \ rS rSrS rS rS rS rS rS r	\
R                  R                  S\R                  " S	S
5      \" \R                  " S	S
5      \R                   5      \" \" S	S
5      \R$                  5      \" \" S	S
5      \R&                  5      \R*                  " S	S
5      /S S9S 5       rS rS rS rS r\
R                  R                  S/ SQ5      \
R                  R                  S/ SQ5      S 5       5       rS rS rS rS rS r \
R                  RC                  S5      S 5       r"S r#S r$S  r%S! r&S" r'S# r(S$ r)S% r*\
R                  R                  S&S'S(\RV                  " S'5      \RV                  " S(5      /5      S) 5       r,\
R                  R                  S&S'S(\RV                  " S'5      \RV                  " S(5      /5      S* 5       r-\
R                  R                  S+\RV                  " / S,Q5      \" / S,Q5      \." / S,Q5      /S- S9S. 5       r/\
R                  R                  S+\RV                  " / S,Q5      \" / S,Q5      \." / S,Q5      /S/ S9S0 5       r0S1 r1S2 r2S3 r3S4r4g5)6TestTimedeltaArraylikeMulDivOpsi  c                     [        [        R                  " SSS95      n[        R                  " X!5      nUS-  n[        R
                  " X25        SU-  n[        R
                  " X25        g )Nr\   r   r   r   )r   r0   rw   r   r3   r4   r5   r6   r   rd   s       r   test_td64arr_mul_int4TestTimedeltaArraylikeMulDivOps.test_td64arr_mul_int  sO    RYYq89ooc2q
$S
$r   c                     [        SSSS9n[        R                  " X25      nSR                  / SQ5      n[        R
                  " [        US9   X1-    S S S 5        g ! , (       d  f       g = f)NrM   r  r   r   |)zargument must be an integer$cannot use operands with types dtypezCannot multiply withr^   )r   r   r3   joinra   rb   rc   )r5   r  r6   rO   re   s        r   %test_td64arr_mul_tdlike_scalar_raisesETestTimedeltaArraylikeMulDivOps.test_td64arr_mul_tdlike_scalar_raises  sR    h	>ooc2hh
 ]]9C0O 100s   A
A*c                    [         R                  " SSS9n[        U5      n[        US-  5      n[        R                  " X15      n[        R                  " XA5      nU[         R
                  " SSS9-  n[        R                  " XT5        g )Nr\   r   r   )r0   rw   r   r   r3   r#   r4   r5   r6   rng5r   r;   rd   s         r   test_tdi_mul_int_array_zerodim>TestTimedeltaArraylikeMulDivOps.test_tdi_mul_int_array_zerodim  sg    yy'*T"!$(+ooc2??8<rxx11
)r   c                     [         R                  " SSS9n[        U5      n[        US-  5      n[        R                  " X15      n[        R                  " XA5      nX2-  n[        R
                  " XT5        g Nr\   r   r   r    )r0   rw   r   r   r3   r4   r  s         r   test_tdi_mul_int_array6TestTimedeltaArraylikeMulDivOps.test_tdi_mul_int_array  sY    yy'*T"!$'*ooc2??8<
)r   c                    UnU[         [        R                  [        R                  4;   a  [
        OUn[        [        R                  " SSS95      n[        [        R                  " SSS9S-  5      n[        R                  " XB5      n[        R                  " XS5      nU[        [        R                  " SSS95      -  n[        R                  " Xe5        g r  r	   r   r!   r"   r#   r   r   r0   rw   r3   r4   )r5   r6   r$   r7   r   r;   rd   s          r   test_tdi_mul_int_series7TestTimedeltaArraylikeMulDivOps.test_tdi_mul_int_series  s    RXX >>vCRYYq89!"))AW"="BCooc'??82vbii9::
)r   c                    UnU[         [        R                  [        R                  4;   a  [
        OUn[        [        R                  " SSS95      n[        R                  " XB5      n[        R                  " SSS9n[        XUS-   -  5      n[        R                  " Xc5      nU[        US-   5      -  n[        R                  " Xv5        g )Nr\   r   r   float64rh  r  )r5   r6   r$   r7   r   rng5fr;   rd   s           r   test_tdi_mul_float_series9TestTimedeltaArraylikeMulDivOps.test_tdi_mul_float_series  s    RXX >>vCRYYq89ooc'		!9-!%3;"78??82veck**
)r   r9   r      c                 ,    [        U 5      R                  $ r   r  r  s    r   r  (TestTimedeltaArraylikeMulDivOps.<lambda>  r  r   r  c                 2   Un[        S/S-  5      n[        SS5      R                  S 5      n[        R                  " XC5      n[        XA5      n[        R                  " XV5      nX-  n[        R                  " Xu5        XA-  n[        R                  " X5        g )Nr  rN   rM   r  )r   r   r   r   r3   r   r4   )	r5   r9   r6   r$   r8   r;   r7   rd   commutes	            r   test_tdi_rmul_arraylike7TestTimedeltaArraylikeMulDivOps.test_tdi_rmul_arraylike  s|     gY^,"8Y7BB4Hooc'c)??82
)+
*r   c                 f   [        SSSS9n[        R                  " X!5      n[        R                  " [
        SS9   U[        -    S S S 5        [        R                  " [
        SS9   [        U-    S S S 5        [        R                  " SS	5      nS
R                  / SQ5      n[        R                  " [
        US9   X#-    S S S 5        [        R                  " [
        US9   X2-    S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       NW= f! , (       d  f       g = f)NrM   r  r   r   r>  r^   zCannot divide NaTType byr
   r   r  )z0ufunc '(true_divide|divide)' cannot use operandszcannot perform __r?truediv__z*Cannot divide datetime64 by TimedeltaArray)
r   r   r3   ra   rb   rc   r
   r0   rr  r  )r5   r6   rO   dt64natre   s        r   test_td64arr_div_nat_invalid<TestTimedeltaArraylikeMulDivOps.test_td64arr_div_nat_invalid  s    h	>ooc2]]9,FG#I H]]9,FG#I H --t,hh
 ]]9C0M 1]]9C0M 10! HGGG 1000s/   
C/&
D ;D!D"/
C= 
D
D"
D0c                    UnU[         R                  L a  [        R                  OUn[	        SS5      n[
        R                  " XB5      n[        R                  " S5      n[        R                  " [        R                  /S-  5      n[
        R                  " Xc5      nXE-  n[
        R                  " Xv5        XT-  n[
        R                  " Xv5        g )NrM   r  r
   rN   )
r"   r#   r0   r1   r   r   r3   r   r@  r4   )r5   r6   r$   r7   rO   r9   r;   rd   s           r   test_td64arr_div_td64nat8TestTimedeltaArraylikeMulDivOps.test_td64arr_div_td64nat#  s     BHH_rzz#h	2ooc'u%88RVVHrM*??82
)
)r   c                    [        [        R                  " SSS95      n[        R                  " X!5      nUS-  n[        R
                  " X25        [        R                  " [        SS9   SU-    S S S 5        g ! , (       d  f       g = f)Nr\   r   r   r   Cannot divider^   	r   r0   rw   r   r3   r4   ra   rb   rc   r  s       r   test_td64arr_div_int4TestTimedeltaArraylikeMulDivOps.test_td64arr_div_int6  s[    RYYq89ooc2q
$]]9O<G =<<s   )A88
Bc                    UnU[         R                  L a  [        R                  OUn[	        SSSS9n[        [        R                  " S5      S-   S-  [        R                  SS9n[        R                  " XS5      n[        R                  " Xd5      nXQ-  n[        R                  " Xv5        X-  nSU-  n[        R                  " Xv5        g )	NrM   r  r   r   rN   r      r   )r"   r#   r0   r1   r   r	   rw   r  r   r3   r4   r5   r  r6   r$   r7   rO   r;   rd   s           r   test_td64arr_div_tdlike_scalar>TestTimedeltaArraylikeMulDivOps.test_td64arr_div_tdlike_scalarA  s     BHH_rzz#h	>"))B-!+r1%Pooc'??82
)x<
)r   m)r   r]   rN   unit)rT   r   r  r   msusr   c                    UnU[         R                  L a  [        R                  OUn[	        [        SS9/S-  5      n[        R                  US'   Un[        R                  " Xd5      n[	        U Vs/ s H  o[        R                  " X5      -  PM     sn5      n	[        R                  " X5      n	U[        R                  " X5      -  n
[        R                  " X5        [	        U Vs/ s H%  n[        [        R                  " X5      5      U-  PM'     sn5      n	[        R                  " X5      n	[        R                  " X5      U-  n
[        R                  " X5        g s  snf s  snf )N;   r?   r]   r    )r"   r#   r0   r1   r   r   r@  r   r3   r   r4   )r5   r  r   r6   r$   r7   rC   flatr   r;   rd   s              r   test_td64arr_div_td64_scalar<TestTimedeltaArraylikeMulDivOps.test_td64arr_div_td64_scalarS  s     BHH_rzz#iR()A-.Aooc' E1r~~a66EF??82r~~a..
) 4P4a9R^^A%<=A4PQ??82(3.
) F Qs   2"E"),E'c                    UnU[         R                  L a  [        R                  OUn[	        S[
        S/SS9n[        S[        R                  S/[        R                  SS9n[        R                  " XS5      n[        R                  " Xd5      nXQ-  n[        R                  " Xv5        X-  nSU-  n[        R                  " Xv5        g )	NrM   r   r   r   r  rA   r   r   )r"   r#   r0   r1   r   r
   r	   r@  r  r   r3   r4   r  s           r   'test_td64arr_div_tdlike_scalar_with_natGTestTimedeltaArraylikeMulDivOps.test_td64arr_div_tdlike_scalar_with_natj  s     BHH_rzz#hX6UC"bffb)%Hooc'??82
)x<
)r   c                    UnU[         R                  L a  [        R                  OUn[	        S[
        S/5      n[        S[        R                  S/[        R                  S9n[        R                  " XB5      n[        R                  " XS5      n[        R                  " / SQSS9nXF-  n[        R                  " Xu5        U[        R                  " Xb5      -  n[        R                  " Xu5        XFR                  [        5      -  n[        R                  " XuR                  [        5      5        U[        U5      -  n[        R                  " Xu5        SU-  nXd-  n[        R                  " Xu5        [        R                  " Xb5      U-  n[        R                  " Xu5        UR                  [        5      U-  n[        R                  " Xu5        [        U5      U-  n[        R                  " Xu5        g )	NrM   r   r  rA   r   )r    r-   r    zm8[h]r   )r"   r#   r0   r1   r   r
   r	   r@  r  r   r3   r4   rx   rz   ru   )r5   r6   r$   r7   rO   r;   r9   rd   s           r   test_td64arr_div_td64_ndarray=TestTimedeltaArraylikeMulDivOps.test_td64arr_div_td64_ndarray{  s\    BHH_rzz#hX67"bffb)<ooc'??82'2
)ru22
)||F++
 78tE{"
) x<
),s2
)f%+
)es"
)r   c                    [        S[        S/5      n/ SQn[        R                  " X!5      nSnX3S S 4 Hx  nU[        R
                  " U5      [        U5      4 HO  n[        R                  " [        US9   X&-    S S S 5        [        R                  " [        US9   Xb-    S S S 5        MQ     Mz     g ! , (       d  f       N== f! , (       d  f       Mx  = f)NrM   r   )r   r    r]   r-   z0Cannot divide vectors|Unable to coerce to Seriesr    r^   )
r   r
   r   r3   r0   r#   r	   ra   rb   r   )r5   r6   rO   
mismatchedre   r   r9   s          r   test_tdarr_div_length_mismatch>TestTimedeltaArraylikeMulDivOps.test_tdarr_div_length_mismatch  s    hX67!
ooc2@2A/Crxx}eCj9]]:S9K :]]:S9K :9 : 0 :999s   6B2C2
C 
Cc                    [        SSS9R                  S[        5      n[        R                  " X!SS9n[
        R                  " US   SS	US
   /[        S9n[        R                  " XASS9nX4-  n[        S[
        R                  " SS5      US   S/[        S9n[        R                  " XaSS9n[        U[        5      (       a  UR                  5       n[        R                  " XV5        U[        L a.  [        UR                  S   [
        R                  5      (       d   eX4-  n[        S[
        R                  " SS5      US   S/[        S9n[        R                  " XaSS9n[        U[        5      (       a  UR                  5       n[        R                  " XV5        U[        L a/  [        UR                  S   [
        R                  5      (       d   eg g )Nr  r]   r.   r   F	transposer   ri  rj  r    r   rh  r
   r   )r   r   )r   insertr
   r   r3   r0   r#   rz   r	   r   r   r   r2   r4   r   r%  )r5   r6   origr8   r9   r:   r;   s          r   !test_td64_div_object_mixed_resultATestTimedeltaArraylikeMulDivOps.test_td64_div_object_mixed_result  sx    w299!SAoodeD$q'3T!W5VDGk#r~~eT:DGSIQWX??8uMh 344((*H
&Y&chhtnbnn====l!R^^E48$q'1EVT??8uMh 344((*H
&Y&chhtnbnn==== 'r   c                 h   UnU[         R                  L a  [        R                  OUn[	        / SQSS9n[	        / SQSS9n[
        R                  " XS5      n[
        R                  " Xc5      n[        R                  " SS[        R                  /[        R                  S9n[
        R                  " Xt5      nU[        L a"  U(       a  USS/   R                  S5      USS/'   [
        R                  " [        U[         R                  L S	S
9   XV-  nS S S 5        [
        R                  " WU5        [
        R                  " [        U[         R                  L S	S
9   [        R                  " U5      U-  nS S S 5        [
        R                  " X5        g ! , (       d  f       N= f! , (       d  f       N6= f)N)  zd    rN  r   )r:  r;  Nrh  r   r   r   F)check_stacklevel)r"   r#   r0   r1   r   r   r3   r@  r  r   rx   maybe_produces_warningRuntimeWarningr4   asarray)	r5   r6   using_array_managerr$   r7   r   r   r;   rd   s	            r   &test_td64arr_floordiv_td64arr_with_natFTestTimedeltaArraylikeMulDivOps.test_td64arr_floordiv_td64arr_with_nat  sJ     BHH_rzz#(0AB+3DEt)+88S#rvv.bjjA??82) 3  (A/66w?HaV&&C288Oe
 ]F

 	) &&C288Oe
 ZZ%.F
 	)
 

 
s   FF#
F #
F1z/ignore:invalid value encountered:RuntimeWarningc                 ,   UnU[         R                  L a  [        R                  OUn[	        S5      n[        XU[        /SS9n[        R                  " XcSS9n[        SS[        R                  /5      n[        R                  " XtSS9nXb-  n[        R                  " X5        [        SS[        R                  /5      n[        R                  " XtSS9nX&-  n[        R                  " X5        UR                  U5      n[        R                  " X5        g )N5m3sr=  r   Fr3  r   r    )r"   r#   r0   r1   r   r   r
   r   r3   r@  r4   __rfloordiv__)	r5   r6   	scalar_tdr$   r7   r   td1r;   rd   s	            r   test_td64arr_floordiv_tdscalar>TestTimedeltaArraylikeMulDivOps.test_td64arr_floordiv_tdscalar  s      BHH_rzz#vbc](3ooc%81a.)??8UC!
) 1a.)??8UC!
) ""9-
)r   c                    [        [        R                  " SSS95      n[        R                  " X!5      nUS-  n[        R
                  " X25        Sn[        R                  " [        US9   SU-    S S S 5        g ! , (       d  f       g = f)Nr\   r   r   r   z@floor_divide cannot use operands|Cannot divide int by Timedelta*r^   r  )r5   r6   r   rd   patterns        r   test_td64arr_floordiv_int9TestTimedeltaArraylikeMulDivOps.test_td64arr_floordiv_int  s`    RYYq89ooc2
$T]]9G4H 544s   +A::
Bc                 4   [        SS5      n[        R                  " X15      n[        / SQS-  5      n[        R                  " XQ5      nXB-  n[        R                  " Xe5        S nU[
        L a:  [        U[        R                  5      (       a  [        nUR                  [        5      n[        R                  " U5         [        XB5      nS S S 5        [        R                  " US   U5        [        R                  " US   XB-  5        g ! , (       d  f       NE= f)Nr  9 days)r  z2 Days0 Daysr]   r   r   )r   r   r3   r   r4   r   r   r"   
DateOffsetr   rx   rz   r	  divmod)r5   r6   
three_daysr8   ru  r;   rd   warns           r   test_td64arr_mod_tdscalar9TestTimedeltaArraylikeMulDivOps.test_td64arr_mod_tdscalar  s    gx04!"?!"CD??8<#
)Y&:j"--+P+P%D  v.H''-E.F . 	q	8,
q	5#67	 .-s   >D		
Dc                    [        SSSS9n[        R                  " X!5      n[        SS/S-  5      n[        R                  " XA5      nUS-  n[        R                  " XT5        Sn[
        R                  " [        US	9   SU-    S S S 5        [        US5      n[        R                  " US
   U5        [        R                  " US   US-  5        g ! , (       d  f       NR= f)Nz1 nsz10 nsrN   r.   z0 nsr\   r    zCannot divide int byr^   r   r   )	r   r   r3   r   r4   ra   rb   rc   rS  )r5   r6   r8   ru  r;   rd   re   s          r   test_td64arr_mod_int4TestTimedeltaArraylikeMulDivOps.test_td64arr_mod_int6  s    fgr:4!66"2Q"67??8<
)$]]9C0I 1 q!
q	8,
q	5A:. 10s   >C
Cc                 V   [        SS5      n[        R                  " X15      n/ SQS/S-  -   n[        U5      n[        R                  " XQ5      nX$-  n[        R                  " Xe5        [        X$5      n[        R                  " US   U5        [        R                  " US   X$-  5        g )Nr  rP  )rQ  r  rQ  z3 Days   r   r   )r   r   r3   r   r4   rS  )r5   r6   rT  r8   ru  r;   rd   s          r   test_td64arr_rmod_tdscalar:TestTimedeltaArraylikeMulDivOps.test_td64arr_rmod_tdscalarH  s    gx040H:>A!(+??8<#
)
*
q	8,
q	:#67r   c                 x   [        [        SSS9/S-  5      n[        R                  UR                  S'   [
        R                  " X15      nSn[        R                  " [        US9   X2-    S S S 5        [        R                  " [        US9   X#-    S S S 5        g ! , (       d  f       N5= f! , (       d  f       g = fNr\   r]   rS  r    z(operate|unsupported|cannot|not supportedr^   
r   r   r0   r@  r%  r   r3   ra   rb   rc   )r5   r6   rG  rH  rL  s        r   !test_td64arr_mul_tdscalar_invalidATestTimedeltaArraylikeMulDivOps.test_td64arr_mul_tdscalar_invalidZ  s    i156:;ffooc2
 =]]9G4O 5]]9G4O 54 5444   &BB+
B(+
B9c                    [        [        R                  " SSS95      n[        R                  " X!5      nSR                  / SQ5      n[        R                  " [        US9   X"S S -    S S S 5        [        R                  " [        US9   U[        R                  " SS	/5      -    S S S 5        g ! , (       d  f       NL= f! , (       d  f       g = f)
Nr\   r   r   r  )r  z$Cannot multiply with unequal lengthszUnable to coerce to Seriesr^   r]   r   r    )r   r0   rw   r   r3   r  ra   rb   rc   r   r#   r5   r6   r   re   s       r   !test_td64arr_mul_too_short_raisesATestTimedeltaArraylikeMulDivOps.test_td64arr_mul_too_short_raisesi  s    RYYq89ooc2hh
 ]]9C0bq'M 1 ]]:S1"((Aq6"" 21 10 21s   !B/
C /
B= 
Cc                     [        [        R                  " SSS95      n[        R                  " X!5      nSn[
        R                  " [        US9   X"-    S S S 5        g ! , (       d  f       g = f)Nr\   r   r   r  r^   )r   r0   rw   r   r3   ra   rb   rc   rf  s       r   test_td64arr_mul_td64arr_raises?TestTimedeltaArraylikeMulDivOps.test_td64arr_mul_td64arr_raisesy  sI    RYYq89ooc24]]9C0I 100s   A
A,c                    [        / SQSS9n[        / SQSS9n[        R                  " X15      n[        R                  " XA5      nX2* -  n[        R                  " XT5        U* U-  n[        R                  " XT5        [        / SQSS9n[        R                  " XA5      nUSU-  -  n[        R                  " XT5        SU-  U-  n[        R                  " XT5        g )Nr  r=  r   )-59 Daysrm  r
   rN  )118 Daysrn  r
   r    )r   r   r3   r4   )r5   r6   r  rz  r;   rd   s         r   test_td64arr_mul_numeric_scalar?TestTimedeltaArraylikeMulDivOps.test_td64arr_mul_numeric_scalar  s     4HE9ARS6??8<$
)$%
)9ARS??8<!c'"
)c'U"
)r   twor    rj  c                 .   [        / SQSS9n[        / SQSS9n[        R                  " X15      n[        R                  " XA5      nX2-  n[        R                  " XT5        [        R
                  " [        SS9   X#-    S S S 5        g ! , (       d  f       g = fNr  r=  r   )29.5Drt  r
   rN  r  r^   r   r   r3   r4   ra   rb   rc   r5   r6   rq  rz  r;   rd   s         r   test_td64arr_div_numeric_scalar?TestTimedeltaArraylikeMulDivOps.test_td64arr_div_numeric_scalar  sm     4HE3;LM6??8<
)]]9O<K =<<   8B
Bc                 .   [        / SQSS9n[        / SQSS9n[        R                  " X15      n[        R                  " XA5      nX2-  n[        R                  " XT5        [        R
                  " [        SS9   X#-    S S S 5        g ! , (       d  f       g = frs  ru  rv  s         r   $test_td64arr_floordiv_numeric_scalarDTestTimedeltaArraylikeMulDivOps.test_td64arr_floordiv_numeric_scalar  sk    4HE3;LM6??8<
)]]9O<L =<<ry  r  )   r<  (   c                 ,    [        U 5      R                  $ r   r  r  s    r   r  r	    r  r   c                 ,   [        / SQSS9nUR                  U5      n[        / SQSS9n[        R                  " XA5      n[	        XB5      n[        R                  " XV5      nXB-  n[        R
                  " Xu5        X$-  n[        R
                  " Xu5        g )Nr  r=  r   )z	1180 Daysz	1770 Daysr
   rN  )r   rx   r   r3   r   r4   )r5   r6   r  r  rz  r;   r7   rd   s           r   test_td64arr_rmul_numeric_array?TestTimedeltaArraylikeMulDivOps.test_td64arr_rmul_numeric_array  sz     4HE34;CTU6e,??82
)
)r   c                 ,    [        U 5      R                  $ r   r  r  s    r   r  r	    r  r   c                 x   [        / SQSS9nUR                  U5      n[        / SQSS9n[        R                  " XA5      n[	        XB5      n[        R                  " XV5      nXB-  n[        R
                  " Xu5        SR                  / SQ5      n[        R                  " [        US9   X$-    S S S 5        XBR                  [        5      -  nU[        L a  [        [        U5      5       V	s/ s H  oR                  S	U	4   X)   -  PM     nn	[        R                  " XV5      R                  [        5      nS
n
[        R                  " [         U
S9   US   R#                  [$        R&                  " SS5      SS9US'   S S S 5        O[        [        U5      5       V	s/ s H  oU	   X)   -  PM     nn	U Vs/ s H$  o[(        La  UO[$        R&                  " SS5      PM&     nnU[        R*                  L a*  [        R*                  " U5      R                  [        5      nOU" U[        S9n[        R
                  " Xu5        [        R                  " [        US9   UR                  [        5      U-    S S S 5        g ! , (       d  f       GN= fs  sn	f ! , (       d  f       Nv= fs  sn	f s  snf ! , (       d  f       g = f)Nr  r=  r   )z2.95Dz
1D 23h 12mr
   rN  r  )z!true_divide'? cannot use operandszcannot perform __div__zcannot perform __truediv__zunsupported operandr  z-ufunc 'divide' cannot use operands with typesr^   r   z The 'downcast' keyword in fillnar    r
   r   Fdowncast)r   rx   r   r3   r   r4   r  ra   rb   rc   rz   r   rv   r  r%  r	  FutureWarningfillnar0   r   r
   r!   )r5   r6   r  r  rz  r;   r7   rd   rL  r  re   r   s               r   test_td64arr_div_numeric_array>TestTimedeltaArraylikeMulDivOps.test_td64arr_div_numeric_array  s/    4HE348@QR6e,??82
)((	
 ]]9G4N 5 v..Y&>CCK>PQ>P

1a4(694>PHQx6==fEH4C++ME&qk00NN5$/% 1  FE
 7<CJ6GH6Ga69,6GHHLTLTqc\r~~eT'BBH   r{{";;x077?7
)]]9G4MM&!E) 543 54
 R FE
 I 54s6   'I9*J,JJ!3+J&J+9
J
J+
J9c                 h   Un[        X25      n[        / SQUS   S9n[        / SQ[        R                  US   S9n[        / SQSUS9n[
        R                  " XS5      n[        XV5      n[
        R                  " Xx5      nXe-  n	[
        R                  " X5        XV-  n	[
        R                  " X5        g )	N0days1day2days3days4daysr   r   )r   r   r    r]   r-   r   r   )r  r  r  9days16daysrN  )	r'   r   r   r0   r   r   r3   r   r4   )
r5   r6   r%   r$   r&   r8   rC   r;   r7   rd   s
             r   test_td64arr_mul_int_series;TestTimedeltaArraylikeMulDivOps.test_td64arr_mul_int_series  s    "3.8uQx
 _BHH58D9#
 ooc'c'??82
)
)r   c                    Un[        / SQUS   S9n[        / SQ[        R                  US   S9nU[        R
                  [        R                  4;  a  US   OUS   n[        [        [        U5      5       Vs/ s H  otU   XW   -  PM     snSUS9n[        R                  " XC5      n[        XE5      n	[        R                  " X5      nUR                  U5      n
U[        L a  U
[        L d   eg [        R                  " X5        g s  snf )	Nr  r   r   )ri  r]   g      @r\  g      @r   r   r    rN  )r   r   r0   r  r   r!   r"   r#   rv   r  r3   r   __rtruediv__r   NotImplementedr4   )r5   r6   r%   r$   r8   rC   xnamer  r;   r7   rd   s              r   test_float_series_rdiv_td64arr>TestTimedeltaArraylikeMulDivOps.test_float_series_rdiv_td64arr/  s    8uQx
 *"**58LRXX'>>aE!H&+CHo6oVcf_o6#
 ooc'c'??82!!#&)^+++OOF- 7s   9Dc                 X   [        [        [        /5      n[        R                  " X!5      n[        R
                  " SS/[        S9n[        R                  " SS5      n[        U/S-  [        S9nU[        Lam  [        R                  " Xa5      R                  [        5      nU[        [        4;   a4  Sn[        R                  " [        US9   UR                  USS	9nS S S 5        X4-  n[        R                  " X5        X4-  n[        R                  " X5        g ! , (       d  f       NC= f)
Nr    rj  r   r
   r   z.The 'downcast' keyword in fillna is deprecatedr^   Fr  )r   r
   r   r3   r0   r#   rz   r   r	   rx   r   r   r	  r  r  r4   )	r5   r6   r8   r   r   r  r;   re   rd   s	            r   -test_td64arr_all_nat_div_object_dtype_numericMTestTimedeltaArraylikeMulDivOps.test_td64arr_all_nat_div_object_dtype_numericH  s    c3Z(s3!S0ud+%1F3&x@GGOH&)!44F//SI'uuEH J 
)
) JIs   D
D)rh   N)5ri   rj   rk   rl   r  r  r  r  r   r  ra   rm   rn   r0   rw   r	   r   rv   uint64r  r"   
RangeIndexr  r  r  r  r  r&  r)  r,  r0  r7  rB  filterwarningsrI  rM  rV  rY  r]  rb  rg  rj  ro  r#   rw  r{  r   r  r  r  r  r  r}   rh   r   r   r  r    s   %	*	*** [[IIa"))Ar"BHH-%2,		*%2,

+MM!R 	
 '  
+
+&0*&	*$ [[S*-[[V%KL* M .***"$*L >D!*F [[ QR* S*480/$8$# *, [[UQRXXa["((3-$HI J [[UQRXXa["((3-$HI J [[	,	|!4f\6JK&  
*
*2 [[	,	|!4f\6JK&  
6*
6*p*:.2*r   r  c                       \ rS rSrS rSrg)"TestTimedelta64ArrayLikeArithmetici_  c                 x   [        [        SSS9/S-  5      n[        R                  UR                  S'   [
        R                  " X25      nSn[        R                  " [        US9   X-    S S S 5        [        R                  " [        US9   X1-    S S S 5        g ! , (       d  f       N5= f! , (       d  f       g = fr`  ra  )r5   rG  r6   rH  rL  s        r   test_td64arr_pow_invalid;TestTimedelta64ArrayLikeArithmetic.test_td64arr_pow_invalidd  s    i156:;ffooc2
 =]]9G4N 5 ]]9G4N 54 54 54rd  rh   N)ri   rj   rk   rl   r  r}   rh   r   r   r  r  _  s    
r   r  c                  8   [        S5      n U [        SSSS9-   n[        [        S5       Vs/ s HF  nU [        R
                  " S5      U-  [        R
                  " S5      [        US5      S	   -  -   -   PMH     sn5      n[        R                  " X5        g s  snf )
NrI   0srg     r.   z0.033333333sz0.000000001sr]   r   )	r   r   r   rv   r"   r$  rS  r   r   )	timestamprd   r]  r;   s       r   test_add_timestamp_to_timedeltar  u  s    ,'ItR@@F 2Y	
  /!3//.1F1aLOCD
 	
	H &+	
s   AB)'r   r   numpyr0   ra   pandas.errorsr   r   pandasr"   r   r   r	   r
   r   r   r   r   r   r   pandas._testing_testingr   pandas.core.arraysr   pandas.tests.arithmetic.commonr   r   r   r   r'   r)   r   r   r!  r6  r  r  r  rh   r   r   <module>r     s   
  
     2 #	 h hV`1 `1NH# H#V>+ >+B|
* |
*~@* @*F ,,r   