
    m*ih4              
          S SK r S SKJr  S SKrS SKrS SKrS SKJs  J	r
  S SKrS SKJrJrJr  S SKJr  S SKJr   " S S5      r " S S5      r " S	 S
\R.                  5      r\R2                  R5                  S\ R6                  " S5      \ R6                  " S5      /\ R                   " SSS5      \ R                   " SSS5      /\R8                  " S5      \R8                  " S5      /SS/// SQS9S 5       rg)    N)Decimal)Series	Timestampoption_context)opsc            
           \ rS rSrS r\R                  R                  SS\R                  " S\	R                  " S5      S9/5      S 5       r\R                  R                  S	S
\/5      S 5       rSrg
)TestObjectComparisons   c                 8   [        [        R                  R                  S5      R	                  S5      [
        S9nUR                  S5      nUnU" X#5      nU" UR                  [        5      UR                  [        5      5      n[        R                  " XV5        g )N   
   dtype)r   nprandomdefault_rngstandard_normalobjectshiftastypefloattmassert_series_equal)selfcomparison_opsershiftedfuncresultexpecteds          c/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/pandas/tests/arithmetic/test_object.py"test_comparison_object_numeric_nas8TestObjectComparisons.test_comparison_object_numeric_nas   sp    RYY**1-==bAP))A,c#

5)7>>%+@A
v0    infer_stringFTpyarrow)marksc                 n   [        SU5         [        SS[        R                  SS/5      nUS:H  n[        / SQ5      n[        R
                  " X45        US:  n[        / SQ5      n[        R
                  " X45        US:g  nUS:H  * n[        R
                  " X45        S S S 5        g ! , (       d  f       g = f)Nzfuture.infer_stringabc)TFFFT)FFFFF)r   r   r   nanr   r   )r   r%   r   r   r    s        r!   test_object_comparisons-TestObjectComparisons.test_object_comparisons%   s     1<@#sBFFC56CCZF?@H""643YFABH""64CZF}H""64 A@@s   BB&&
B4r   Nc                    [        S[        R                  S/US9n[        S[        R                  S/US9nX#:H  n[        / SQ5      n[        R                  " XE5        X#:g  n[        / SQ5      n[        R                  " XE5        U[        R                  :H  n[        / SQ5      n[        R                  " XE5        U[        R                  :g  n[        / SQ5      n[        R                  " XE5        g )	Nr)   r+   r   d)TFF)FTT)FFF)TTTr   r   r,   r   r   )r   r   leftrightr   r    s         r!   test_more_na_comparisons.TestObjectComparisons.test_more_na_comparisons8   s    sBFFC(6RVVS)7./
v0-.
v0/0
v0,-
v0r$    )__name__
__module____qualname____firstlineno__r"   pytestmarkparametrizeparamtd
skip_if_nor-   r   r4   __static_attributes__r6   r$   r!   r	   r	      sq    1 [[Ty9Q RS55  [[WtVn51 61r$   r	   c            	          \ rS rSrS rS r\R                  R                  S\	R                  \R                  /5      \R                  R                  SSS/5      S 5       5       rS	 rS
 r\R                  R                  S/ SQ/ SQ\" S5      \" S5      \R$                  // SQ/5      \R                  R                  SS\/5      S 5       5       r\R                  R                  S\	R                  \R                  \	R*                  \R,                  /5      S 5       rS r\R                  R                  SS\/5      S 5       rS rS rS rS rS rS rS r S r!Sr"g) TestArithmeticR   c                 ,   [         R                  " SSS9n[         R                  " SSSS9nX-
  n[         R                  " U Vs/ s H  oDU-   PM	     sn[        S9nX1-   n[
        R                  " Xe5        X-   n[
        R                  " Xe5        g s  snf )Nz2012-1-1D)freqr   )periodsrG   r   )pdPeriodperiod_rangeIndexr   r   assert_index_equal)r   perpiidxxr    r   s          r!   "test_add_period_to_array_of_offset1TestArithmetic.test_add_period_to_array_of_offsetS   s{    ii
-__Z#>h88c2cWc2&A
f/
f/ 3s   Bc                    [        S[        R                  S[        R                  /[        S9n[        S[        R                  [        R                  S/[        S9nX-  n[        UR                  UR                  -  [        S9n[
        R                  " X45        X!-  n[        UR                  UR                  -  [        S9n[
        R                  " X45        g )N   r   )r   r   r,   r   valuesr   r   )r   r)   r*   r   r    s        r!   test_pow_ops_object"TestArithmetic.test_pow_ops_objecta   s     Arvvq"&&)8Arvvrvvq)8!((AHH,F;
v0!((AHH,F;
v0r$   opothercategoryInt64c           	          [        / SQ5      n[        U Vs/ s H
  oS" XQ5      PM     sn5      n[        R                  " XB5      n[        R                  " Xb5      nU" XA5      n[        R                  " Xv5        g s  snf )Nr)   r*   r+   )r   r   box_expectedassert_equal)r   rZ   box_with_arrayrY   arrrQ   r    r   s           r!   test_add_extension_scalar(TestArithmetic.test_add_extension_scalaro   sa     _%5A2a<56ooc2??8<C
) 6s   A:c                    [        S[        R                  S/5      n[        S[        R                  S/5      n[        R                  " X!5      n[        R                  " X15      nUS-   n[        R
                  " XC5        g )NrQ   xar)   r   r   r,   r   r_   r`   r   ra   r   r    r   s        r!   test_objarr_add_str"TestArithmetic.test_objarr_add_str   ]    c2663'(4./ooc2??8<s
)r$   c                    [        S[        R                  S/5      n[        S[        R                  S/5      n[        R                  " X!5      n[        R                  " X15      nSU-   n[        R
                  " XC5        g )NrQ   axr)   rg   rh   s        r!   test_objarr_radd_str#TestArithmetic.test_objarr_radd_str   rk   r$   datarU   r      )g?g@gffffff
@z
2011-01-01z
2011-01-02)rQ   yrU   r   Nc                     [        X!S9n[        R                  " XC5      nSR                  / SQ5      n[        R
                  " [        US9   SU-     S S S 5        g ! , (       d  f       g = f)Nr   |)can only concatenate strz4did not contain a loop with signature matching typesunsupported operand typemust be strmatchfoo_)r   r   r_   joinr;   raises	TypeError)r   r   rp   ra   r   msgs         r!   test_objarr_radd_str_invalid+TestArithmetic.test_objarr_radd_str_invalid   sR     T'ooc2hh
 ]]9C0SL 100s   A
A)c           	         Un[        [        S5      [        SS9n[        R                  " XC5      nSR                  / SQ5      n[        R                  " [        US9   U" US5        S S S 5        [        R                  " [        US9   U" U[        R                  " S[        R                  S95        S S S 5        g ! , (       d  f       N[= f! , (       d  f       g = f)	Nabcobjects)r   nameru   )rv   rw   rx   zhas no kernelzoperation 'add' not supportedzoperation 'radd' not supportedzoperation 'sub' not supportedzoperation 'rsub' not supportedry   rU   r   )r   listr   r   r_   r|   r;   r}   	Exceptionr   arrayint64)r   rY   ra   boxobj_serr   s         r!   test_objarr_add_invalid&TestArithmetic.test_objarr_add_invalid   s     eFC//'/hh	
 ]]9C0wN 1]]9C0w"((34 10 1000s   
B<+C<
C

Cc                    [        SSS[        R                  /5      nSU-   n[        SSS[        R                  /5      n[        R                  " X#5        US-   n[        S	S
S[        R                  /5      n[        R                  " X#5        g )Nfoobarbazprefix_
prefix_foo
prefix_bar
prefix_baz_suffix
foo_suffix
bar_suffix
baz_suffixr1   )r   r   r   r    s       r!   test_operators_na_handling)TestArithmetic.test_operators_na_handling   su    eUE26623S<|RVVLM
v0y<|RVVLM
v0r$   c                    [        [        R                  " S5      [        R                  " S5      [        R                  " S5      /US9n[        [        R                  " S5      [        R                  " S5      [        R                  " S5      /US9n[        R                  " S5      U-   n[        R                  " XC5        U[        R                  " S5      -   n[        R                  " XC5        g )N1 days2 daysz3 daysr   4 daysz5 daysz6 days)r   rI   	Timedeltar   r   )r   r   r   r    r   s        r!   %test_series_with_dtype_radd_timedelta4TestArithmetic.test_series_with_dtype_radd_timedelta   s     \\(#R\\(%;R\\(=ST
 \\(#R\\(%;R\\(=ST

 h'#-
v0r||H--
v0r$   c                 \   [        [        SSS9[        SSS9/SS9nUR                  [        :X  d   e[        [        SSS9[        SSS9/SS9n[        R
                  " U[        R                  " S5      -   U5        [        R
                  " [        R                  " S5      U-   U5        [        [        S	SS9[        S
SS9/SS9nUR                  [        :X  d   e[        [        R                  " S5      [        R                  " S5      /S[        S9n[        R
                  " X1-
  U5        [        R
                  " X-
  U* 5        [        [        R                  " S5      [        R                  " S5      /S[        S9nUR                  [        :X  d   e[        [        R                  " S5      [        R                  " S5      /S[        S9n[        R
                  " U[        R                  " S5      -   U5        [        R
                  " [        R                  " S5      U-   U5        g )Nz
2015-01-01z
US/Eastern)tzz
Asia/Tokyoxxx)r   z
2015-01-02r   z
2015-01-03z
2015-01-05r   r   )r   r   z01:00:00z02:00:00z01:30:00z02:30:00z00:30:00)r   r   r   r   r   r   rI   r   )r   r   expser2s       r!   %test_mixed_timezone_series_ops_object4TestArithmetic.test_mixed_timezone_series_ops_object   s   ,<8,<8 
 yyF""",<8,<8 
 	sR\\(%;;SA
r||H5;SA ,<8,<8 
 zzV###\\(#R\\(%;<5PV
 	tz3/
szC40\\*%r||J'?@

 yyF"""\\*%r||J'?@

 	sR\\*%==sC
r||J7#=sCr$   c                    [        / SQ5      nSUR                  l        U=R                  S-  sl        UR                  R                  S:X  d   eU=R                  S-  sl        UR                  R                  S:X  d   eg )Nrq   r   rU   )r   indexr   )r   r   s     r!   test_iadd_preserves_name'TestArithmetic.test_iadd_preserves_name  s]    Y				Q	yy~~&&&		Q	yy~~&&&r$   c                 ^    [         R                  " / SQ5      nUS-   nSU;  d   eSU;   d   eg )Nr^   r   r)   afoorI   rL   )r   r   index2s      r!   test_add_stringTestArithmetic.test_add_string$  s5    )&   r$   c                 ^    [         R                  " / SQ5      nSU;   d   eUS-  nSU;   d   eg )Nr^   r)   _xa_xr   )r   r   s     r!   test_iadd_stringTestArithmetic.test_iadd_string,  s1    )e||~~r$   c                    [         R                  " [        S5       Vs/ s H  n[        U5      PM     sn5      n[         R                  " UR                  S-  5      n[
        R                  " X"-   U5        [
        R                  " X"R                  5       -   U5        [
        R                  " UR                  5       U-   U5        [         R                  " [        S5      5      n[         R                  " / SQ5      n[
        R                  " US-   U5        [         R                  " / SQ5      n[
        R                  " SU-   U5        g s  snf )Nr   r   r   )a1b1c11)1a1b1c)	rI   rL   rangestrrV   r   rM   tolistr   )r   ir   r    s       r!   test_addTestArithmetic.test_add4  s    %)4)Q#a&)4588ELL1,-
emX6
elln4h?
ellnu4h? e%88./
eck8488./
cEk84 5s   E	c                 x   [         R                  " [        S5       Vs/ s H  n[        U5      PM     sn5      nSn[        R
                  " [        US9   US-
    S S S 5        [        R
                  " [        US9   X"-
    S S S 5        [        R
                  " [        US9   X"R                  5       -
    S S S 5        [        R
                  " [        US9   UR                  5       U-
    S S S 5        g s  snf ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nk= f! , (       d  f       g = f)Nr   z<unsupported operand type|Cannot broadcast|sub' not supportedry   r)   )rI   rL   r   r   r;   r}   r~   r   )r   r   r   r   s       r!   test_sub_failTestArithmetic.test_sub_failB  s    %)4)Q#a&)45L]]9C0CK 1]]9C0M 1]]9C0LLN" 1]]9C0LLNU" 10 5 10000000s5   C3C8<D	"DD+8
D	
D
D(+
D9c                    [         R                  " [        S5      [        S5      /5      n[         R                  " [        S5      [        S5      /5      nU[        S5      -
  n[        R                  " X25        U[         R                  " [        S5      [        S5      /5      -
  n[        R                  " X25        Sn[
        R                  " [        US9   US-
    S S S 5        [
        R                  " [        US9   U[        R                  " SS/[        S9-
    S S S 5        g ! , (       d  f       NO= f! , (       d  f       g = f)NrU   r   r   rw   ry   r   r   )rI   rL   r   r   rM   r;   r}   r~   r   r   r   )r   r   r    r   r   s        r!   test_sub_objectTestArithmetic.test_sub_objectO  s    '!*gaj1288WQZ45#
f/71:wqz":;;
f/(]]9C0EM 1 ]]9C0BHHaZv66 10 10 10s   D&>D7&
D47
Ec                    [         R                  " [        S5      [        S5      /5      n[         R                  " [        S5      [        S5      /5      n[        S5      U-
  n[        R                  " XC5        [
        R                  " [        S5      [        S5      /5      U-
  n[        R                  " XC5        Sn[        R                  " [        US9   SU-
    S S S 5        [        R                  " [        US9   [
        R                  " SU/5      U-
    S S S 5        g ! , (       d  f       NL= f! , (       d  f       g = f)NrU   r   r   rw   ry   r   T)
rI   rL   r   r   rM   r   r   r;   r}   r~   )r   fixed_now_tsr   r    r   r   s         r!   test_rsub_objectTestArithmetic.test_rsub_objecta  s    '!*gaj1288WQZ45e#
f/71:wqz23e;
f/(]]9C0EM 1 ]]9C0HHdL)*U2 10 10 10s   D#>D4#
D14
Er6   )#r7   r8   r9   r:   rR   rW   r;   r<   r=   operatoraddr   raddrc   ri   rn   r   rI   NaTr   r   subrsubr   r   r   r   r   r   r   r   r   r   r   rA   r6   r$   r!   rC   rC   R   sh   01 [[THLL#((#;<[[Wz7&;<* = =*** [[|$i&=rvvF		
 [[WtVn5 6 [[THLL#((HLL#((#ST5 U521 [[WtVn51 61&1Dh	' 5#7$3r$   rC   c                   @    \ rS rSr% \\S'   \SS j5       rS rS r	Sr
g)	MyIndexit  _callsNc                 v    [         R                  U 5      nXl        X$l        SUl        UR                  5         U$ )Nr   )r   __new___data_namer   _reset_identity)clsrV   r   r   r   s        r!   _simple_newMyIndex._simple_newy  s2    $ r$   c                 b    U =R                   S-  sl         U R                  U R                  5      $ )NrU   )r   r   r   r   rZ   s     r!   __add__MyIndex.__add__  s%    q

++r$   c                 $    U R                  U5      $ )N)r   r   s     r!   __radd__MyIndex.__radd__  s    ||E""r$   r6   )NN)r7   r8   r9   r:   int__annotations__classmethodr   r   r   rA   r6   r$   r!   r   r   t  s%     K ,#r$   r   rZ   rU   r     20002001r)   r*   )	timedeltadatetimeperiodr   )idsc                 B   [         R                  " [        R                  " SSS5      [        R                  " SSS5      /[        S9n[
        R                  U5      n[        R                  " U 5      n X-   n[        U[
        5      (       d   eUR                  S:X  d   eg )Nr   rU   r   r   )r   r   r   dater   r   r   rI   rL   
isinstancer   )rZ   rV   r)   r   s       r!   *test_index_ops_defer_to_unknown_subclassesr     s     XX	tQ	"HMM$1$=>fF 	F#AHHUOEYFfg&&&&88q==r$   )r   decimalr   r   numpyr   r;   pandas.util._test_decoratorsutil_test_decoratorsr?   pandasrI   r   r   r   pandas._testing_testingr   pandas.corer   r	   rC   rL   r   r<   r=   r   rJ   r   r6   r$   r!   <module>r      s         ) )  
  11 11p_3 _3D	#bhh #. 			A	 2 21 56			4A	&(9(9$1(EF	6	BIIf-.	c
	 	6  				r$   