
    A>i                        S SK r S SKJrJr  S SKJr  S SKrS SKrS SKJ	r	  S SK
Jr  S SKJr  S SKJrJrJrJrJrJrJrJrJrJr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
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/S r0S r1S r2 " S S5      r3 " S S5      r4\Rj                  Rm                  S\Rn                  " \" \ " S S!5      5      \" \" S S"5      \Rp                  \" S#S$5      \" S$S!5      /S%S&9S S'S(S)9\Rn                  " \" / S*Q5      \" \Rp                  S#\Rp                  S!\Rp                  S+\Rp                  S,\Rp                  /	5      \9" SSS"5      S-S.S)9\Rn                  " \" / S/Q5      \" \Rp                  S'\Rp                  S-/\:S&9\9" SSS"5      S'S0S)9\Rn                  " \" \Rv                  " S15      5      \" \Rp                  \Rp                  \Rp                  \Rp                  \Rp                  S!S2S+S3S,/
5      \9" SS!5      S-S4S)9\Rn                  " \" / S5Q5      \" \Rp                  S"S#/5      S S-S6S)9\Rn                  " \" S-/5      \" \Rp                  /\:S&9S S'S7S)9\Rn                  " \" S-S'/5      \" \Rp                  S'/\:S&9S S'S8S)9/5       " S9 S:\45      5       r< " S; S<\45      r= " S= S>\45      r> " S? S@\45      r? " SA SB\45      r@ " SC SD\45      rA\Rj                  Rm                  SE\" / S5Q5      \" \Rp                  S"S#/5      4\" / SFQ5      \" \Rp                  SGSH/5      4\" \" SIS S 5      \" SIS S"5      \" SIS S#5      /5      \" \\" SIS S"5      \" SIS S#5      /5      4\" / SJQ5      \" / SKQ5      4/5       " SL SM\45      5       rB " SN SO\45      rC " SP SQ\45      rD\Rj                  Rm                  SR\R:                  " SGSH/5      S-4\R:                  " SSST/5      S'4\R:                  " S"SU-  S"SU-  S -   /\R                  S&9S'4/5       " SV SW\45      5       rF\Rj                  Rm                  SXSY\R                  " SY5      /5       " SZ S[\45      5       rH\Rj                  Rm                  SX/ S\Q5       " S] S^\45      5       rI " S_ S`\45      rJ\Rj                  Rm                  Sa\R                  " S 5      \R                  S4\R                  " SY5      \R                  S'4/5       " Sb Sc\J5      5       rM\Rj                  Rm                  SX/ SdQ5      \Rj                  Rm                  Se\:/5       " Sf Sg\J5      5       5       rN\Rj                  Rm                  SaS \:S'4Sh\" \Rp                  Si9S-4/5       " Sj Sk\J5      5       rO\Rj                  Rm                  SaS \R                  S-4Sl\R                  S-4Sm\R                  S-4S'\:S'4/5       " Sn So\J5      5       rQ\Rj                  Rm                  SaS \:S'4Sp\:S'4S#\:S'4Sl\:S'4Sm\:S'4S'\RS-4/5       " Sq Sr\J5      5       rS\Rj                  Rm                  SaS \R                  S-4Sl\R                  S'4Sm\R                  S'4S'\:S'4/5       " Ss St\J5      5       rU\Rj                  Rm                  SaS \R                  S-4Sl\R                  S-4Sm\R                  S'4S'\:S'4/5       " Su Sv\J5      5       rV\Rj                  Rm                  SaS \R                  S-4\Rn                  " Sl\R                  S-\Rj                  R                  \	(       + SwSx9Sy9Sm\R                  S'4S'\:S'4\R                  " S"5      \R                  S-4\R                  " S"5      \R                  S-4\R                  " \R                  " \R                  5      R                  5      \R                  S'4\R                  " S"5      \R                  S-4\R                  " S"5      \R                  S-4/	5       " Sz S{\J5      5       r^\Rj                  Rm                  Se/ S|Q5       " S} S~\J5      5       r_\Rj                  Rm                  Sa\" S5      SS-4S \:S'4S\:S'4/5       " S S\J5      5       r`\Rj                  Rm                  Sa\" SSS9SS-4\" SSS9SS-4\" S5      \:S'4S \:S'4/5       " S S\J5      5       ra\Rj                  Rm                  Sa\" S5      SS-4S \:S'4S\:S'4/5       " S S\J5      5       rb\Rj                  Rm                  SXS\" SSS9\" S S"SS9/5      \Rj                  Rm                  Se\:/5       " S S\J5      5       5       rcS rdS reS rfS rgS rhS riS rjS rkS rlS rmS rn\Rj                  Rm                  S\o" S"S25      5      \Rj                  Rm                  S/ SQS'S-/S-//5      \Rj                  Rm                  SSG\Rp                  \R                  " \q5      R                  \R                  " \q5      R                  /5      \Rj                  Rm                  S\R:                  \s\t/5      S 5       5       5       5       ruS rvS rwg)    N)datedatetime)Decimal)np_version_gt2)IndexingError)is_list_like)NACategorical	DataFrameDatetimeIndexIndexIntervalIntervalIndex
MultiIndexNaTPeriodSeriesStringDtype	Timedelta	Timestamparrayconcat
date_rangeinterval_rangeperiod_rangetimedelta_range)BDayc                       \ rS rSrS rS rS rS r\R                  R                  S/ SQ5      S 5       rS	 rS
 rSrg)TestSetitemDT64Values+   c                     [        [        SSSS95      nS US'   US   [        L d   eS USS& US   [        L d   e[        R                  US'   US   [        L d   e[        R                  USS& US	   [        L d   eg )
Nz1/1/2000
   ns)periodsunit               )r   r   r   npnanselfseriess     h/var/www/html/land-tabula/venv/lib/python3.13/site-packages/pandas/tests/series/indexing/test_setitem.pytest_setitem_none_nan+TestSetitemDT64Values.test_setitem_none_nan,   s    
:rEFq	ayCqayCFFq	ayCffqayC    c                     [         R                  " SS/5      n[        SS/US9nUR                  5       nSUR                  / '   [
        R                  " X#5        g )N)a   )b   r6   r8   indexr   )r   from_tuplesr   copyloctmassert_series_equal)r.   idxresultexpecteds       r0   #test_setitem_multiindex_empty_slice9TestSetitemDT64Values.test_setitem_multiindex_empty_slice:   sM    $$h%9:Ac*;;=

2
v0r3   c                     [        / SQ/ SQ[        S9n[        R                  " 5       US'   UR                  [        R                  " 5       :X  d   eUS   [        R                  " 5       :X  d   eg )Nr6   r8   r&   )Dater7   otherr:   dtyperG   )r   objectr   todayrG   r.   sers     r0   test_setitem_with_string_index4TestSetitemDT64Values.test_setitem_with_string_indexB   sR     Y&<FKjjlFxx4::<'''6{djjl***r3   c                     [        SSSSS9n/ SQn[        XS9nUR                  5       n[        R                  US'   [        R                  UR
                  S	'   [        R                  " X45        g )
N2017r(   
US/Easternr#   )r$   tzr%   )r   r6   )r   r8   )r   r&   )r   r(   r9   rU   r   )r   r   r<   r+   r,   ilocr>   r?   )r.   arrr:   rA   rB   s        r0   )test_setitem_tuple_with_datetimetz_values?TestSetitemDT64Values.test_setitem_tuple_with_datetimetz_valuesJ   sY    |$G0);;=v66a
v0r3   rT   )rS   UTCz
Asia/Tokyoc           
      l   [        [        SSSUSS95      nUR                  SU S3:X  d   e[        [        SUS	9[        S
US	9[        SUS	9/UR                  S9nUR	                  5       n[        SUS	9U" U5      S'   [
        R                  " XT5        [        [        SUS	9[        SUS	9/SS/UR                  S9nUR                  SU S3:X  d   e[        [        SUS	9[        S
US	9[        SUS	9/UR                  S9nUR	                  5       nXb" U5      SS/'   [
        R                  " XT5        g )N
2016-01-01hr&   r#   freqr$   rT   r%   datetime64[ns, ]z2016-01-01 00:00rT   2011-01-01 00:00z2016-01-01 02:00rJ   
2011-01-01r6   
2012-01-01r8   rI   2012-01-01 00:00r   r   rJ   r   r<   r>   r?   )r.   rT   indexer_sliorigexprN   valss          r0   test_setitem_with_tz*TestSetitemDT64Values.test_setitem_with_tzT   sS   jCrPTUVzzrd!4444,4,4,4
 **
 iik'<C
s( |+Y|-KLa&**

 zzrd!4444,4,4,4
 **
 iik#'C!Q 
s(r3   c           
      p   Sn[        [        SSSUSS95      nUR                  SU S3:X  d   e[        [        S	US
9[        SUS
9[        SUS
9/UR                  S9nUR	                  5       n[        SUS
9U" U5      S'   [
        R                  " XT5        [        [        SUS
9[        SUS
9/SS/UR                  S9nUR                  SU S3:X  d   e[        [        SUS
9[        SUS
9[        SUS
9/UR                  S9nUR	                  5       nXa" U5      SS/'   [
        R                  " XT5        g )NrS   z
2016-11-06r]   r&   r#   r^   r`   ra   z2016-11-06 00:00-04:00rb   z2011-01-01 00:00-05:00z2016-11-06 01:00-05:00rd   re   r6   rf   r8   rI   z2016-11-06 00:00rc   rg   rh   )r.   ri   rT   rj   rk   rN   rl   s          r0   test_setitem_with_tz_dst.TestSetitemDT64Values.test_setitem_with_tz_dst|   sX   jCrPTUVzzrd!44442r:2r:2r:
 **
 iik'<C
s( |+Y|-KLa&**

 zzrd!4444,4,4,4
 **
 iik#'C!Q 
s(r3   c                 (   [        S[        R                  0[        S9nS/n[        R                  " S/SS9nX1R
                  U'   [        US   /S/[        S9n[        S UR                   5       5      (       d   e[        R                  " X5        g )	NXrd   Tr(   M8[ns]r   rI   c              3   V   #    U  H  n[        U[        R                  5      v   M!     g 7fN)
isinstancer+   
datetime64.0xs     r0   	<genexpr>YTestSetitemDT64Values.test_object_series_setitem_dt64array_exact_match.<locals>.<genexpr>   s     IA:a//s   '))
r   r+   r,   rK   r   rV   allvaluesr>   r?   )r.   rN   indexervaluerB   s        r0   0test_object_series_setitem_dt64array_exact_matchFTestSetitemDT64Values.test_object_series_setitem_dt64array_exact_match   s~     c266]&1& !H-!58*SE@IIIIII
s-r3    N)__name__
__module____qualname____firstlineno__r1   rC   rO   rX   pytestmarkparametrizerm   rp   r   __static_attributes__r   r3   r0   r   r   +   sI     1+1 [[T#FG%) H%)N')R.r3   r   c                   ,   \ rS rSrS r\R                  R                  S\R                  \R                  /5      \R                  R                  SSS/5      S 5       5       r\R                  R                  SS	S\R                  4/5      S
 5       rSrg)TestSetitemScalarIndexer   c                     [        S/S-  S/S-  S9nSUS'   [        S/S-  S/-   S/S-  S/-   S9n[        R                  " X5        g )Nr5   r"   r9   fooir   r>   r?   )r.   rN   rk   s      r0   #test_setitem_negative_out_of_bounds<TestSetitemScalarIndexer.test_setitem_negative_out_of_bounds   sY     cURZurz2CcURZ5')#se1CD
s(r3   r   	ser_indexr   r6   c                     [        SS/SS9nU" U5      n[        S/U/S9US'   [        [        S/U/S9S/SS9n[        R                  " X55        g )Nr   rK   rd   *   r9   r   )r.   r   r   rN   idxrrB   s         r0    test_setitem_series_object_dtype9TestSetitemScalarIndexer.test_setitem_series_object_dtype   s[     aV8,s|"i[1Q62$yk:A>hO
s-r3   zindex, exp_value)r   r   c                     [        SS/5      n[        S/U/S9UR                  S'   [        US/5      n[        R                  " X45        g )Nr   r   r9   )r   r=   r>   r?   )r.   r:   	exp_valuerN   rB   s        r0   test_setitem_series,TestSetitemScalarIndexer.test_setitem_series   sE     aVnRD0
9a.)
s-r3   r   N)r   r   r   r   r   r   r   r   r>   r=   atr   r+   r,   r   r   r   r3   r0   r   r      s    ) [[Y8[[[1a&1. 2 9. [[/'Arvv;1GH. I.r3   r   c                   2    \ rS rSrS rS rS rS rS rSr	g)	TestSetitemSlices   c                    Sn[         R                  " [        UR                  SS9S9   SUSS& S S S 5        [         R                  " [        UR                  SS9S9   SUS	S& S S S 5        g ! , (       d  f       NC= f! , (       d  f       g = f)
NzUcannot do slice indexing on DatetimeIndex with these indexers \[{key}\] of type floatz4\.0)keymatchr   g      @g      $@z4\.5g      @)r   raises	TypeErrorformat)r.   datetime_seriesmsgs      r0   test_setitem_slice_float_raises1TestSetitemSlices.test_setitem_slice_float_raises   s}    ' 	 ]]9CJJ7J,CD()OC% E ]]9CJJ7J,CD()OC% ED ED EDs   A,A=,
A:=
Bc                     [        [        S5      [        [        S5      5      S9nSUSS & US:H  R                  5       (       d   eSUS S& US:H  R                  5       (       d   eg )Nr"   r9   r   ir'   )r   rangelistr~   rM   s     r0   test_setitem_slice$TestSetitemSlices.test_setitem_slice   s^    U2Yd59o6CD	q~~DS	q~~r3   c                     [        [        R                  R                  S5      R	                  S5      / SQS9nSUS S& US S S:H  R                  5       (       d   eUSS  S:H  R                  5       (       a   eg )Nr8      )r8   r(   r*   r   r"            r9   r   r(   )r   r+   randomdefault_rngstandard_normalr~   anyrM   s     r0   test_setitem_slice_integers-TestSetitemSlices.test_setitem_slice_integers   sz    II!!!$44Q7.

 BQBQ1!!####GqL%%'''''r3   c                     [        [        R                  " S[        R                  S9[        R                  " S[        R                  S9S9nSUS S S2'   US S S2   S:H  R                  5       (       d   eg )N   rd   r9   r   r8   )r   r+   arangefloat64int64r~   r-   s     r0   test_setitem_slicestep(TestSetitemSlices.test_setitem_slicestep   s`    IIb

+299Rrxx3P
 ssssq %%''''r3   c                    [         R                  " SS/[        S5      45      n[        [        R
                  " S[        R                  S9U5      nSU" U5      S S S2'   [        / SQU5      n[        R                  " X45        g )	Nr   r6   abcder"   rd   d   r(   )
r   r6   r8   r&   r   r'   r*   r)   r   	   )	r   from_productr   r   r+   r   r   r>   r?   )r.   ri   mirA   rB   s        r0   test_setitem_multiindex_slice/TestSetitemSlices.test_setitem_multiindex_slice   sh    $$q!fd7m%<=		"BHH5r:#&FCaC >C
v0r3   r   N)
r   r   r   r   r   r   r   r   r   r   r   r3   r0   r   r      s    	* ((1r3   r   c                       \ rS rSrS 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S rS rSrg)TestSetitemBooleanMaski  c                     [        SS/SS/SS9n[        S/S/SS9USS/'   [        SS/SS/SS9n[        R                  " X5        g )Nr6   r8   r   rI   r   TFr   r.   rN   rB   s      r0   test_setitem_mask_cast-TestSetitemBooleanMask.test_setitem_mask_cast  sY     aVAq69#QCs'BT5M1a&Ag>
s-r3   c                    [        [        R                  R                  S5      R	                  S5      [        R
                  " SSS5      S9R                  S5      nUS:  nUR                  5       nX   R                  5       R                  [        5      n[        R                  " [        SS9   XCU'   S S S 5        g ! , (       d  f       g = f)	Nr8   r   r   r9   r'   Invalid valuer   )r   r+   r   r   r   r   roundr<   mapstrr   r   r   )r.   tsmaskleftrights        r0   #test_setitem_mask_align_and_promote:TestSetitemBooleanMask.test_setitem_mask_align_and_promote  s    II!!!$44S93PQSUAV

%( 	 Avwwy##C(]]9O<J =<<s   /B==
Cc                     [        / SQ5      nUS:  nX   R                  [        5      n[        R                  " [
        SS9   X1U'   S S S 5        g ! , (       d  f       g = f)N)r   r6   r8   r   r   r   r   )r   r   r   r   r   r   )r.   rN   r   ser2s       r0   test_setitem_mask_promote_strs5TestSetitemBooleanMask.test_setitem_mask_promote_strs  sF    \"Qwy}}S!]]9O<I =<<s   A
Ac                     [        / SQ5      n[        / SQ5      nX   nX1U'   [        / SQ5      n[        R                  " X5        g )N)r   r   barr   )FTTFr   )r.   rN   r   r   rB   s        r0   test_setitem_mask_promote0TestSetitemBooleanMask.test_setitem_mask_promote   s?    )*01yD	./
s-r3   c                 <   XR                  5       :  nUR                  5       nUS-  X2'   US-  n[        R                  " X2   XB   5        UR                  5       nUS-  SS X2'   US-  SS R	                  U5      nX   XB* '   [        R                  " X2   XB   5        g )Nr8   r   r'   )medianr<   r>   r?   reindex_like)r.   string_seriesr   rA   rB   s        r0   test_setitem_boolean+TestSetitemBooleanMask.test_setitem_boolean)  s    3355 ##%$q( 1$
v|X^< ##%%)1Q/!A%q+88G'-
v|X^<r3   c                 P   UnUR                  S[        5       S9UR                  5       :  nSn[        R                  " [
        US9   SX#'   S S S 5        [        R                  " [
        US9   SUR                  U'   S S S 5        g ! , (       d  f       N@= f! , (       d  f       g = f)Nr6   r_   zsUnalignable boolean Series provided as indexer \(index of the boolean Series and of the indexed object do not matchr   )shiftr   r   r   r   r   r=   )r.   r   r   mask_shiftedr   s        r0   test_setitem_boolean_corner2TestSetitemBooleanMask.test_setitem_boolean_corner9  s    xxx/"))+=I 	 ]]=4 B 5 ]]=4#$BFF<  54 54 54s   B-B
B
B%c                     UR                  5       nUR                  5       nSX2S:  '   UR                  5       nSXDS:  '   [        R                  " X45        g Nr   )sort_valuesr<   r>   r?   )r.   r   orderedr<   rB   s        r0   $test_setitem_boolean_different_order;TestSetitemBooleanMask.test_setitem_boolean_different_orderG  sR    ++-!!#q[ %%'!"A
t.r3   funcc                     [        / SQ5      nU" / SQ5      nSS/X#'   [        / SQ5      n[        R                  " X$5        g )N)Nr7   NTFTr5   cr5   r7   r   r   )r.   r   rN   r   rB   s        r0    test_setitem_boolean_python_list7TestSetitemBooleanMask.test_setitem_boolean_python_listR  s=     &''(#J	/*
s-r3   c                    [        / SQUS9n[        [        S5      US9X"S:  '   [        / SQUS9n[        R                  " X#5        [        / SQUS9n[        [        S5      US9UR                  US:  '   [        R                  " X#5        [        / SQUS9n[        [        S5      US9nUR                  US:     UR                  US:  '   [        R                  " X#5        g )N)r'   r*   r)   r   rd   r(   r*   )r'   r*   r8   r&   r6   )r   r   r>   r?   r=   )r.   any_numeric_ea_dtyperN   rB   loc_sers        r0   'test_setitem_boolean_nullable_int_types>TestSetitemBooleanMask.test_setitem_boolean_nullable_int_types[  s    \)=>eAh.BC!G,.BC
s-\)=>!%(2FGa
s-\)=>q)=>";;w{3a
s-r3   c                     [        S /S-  5      nS/S-  S/S-  -   S/S-  -   n[        S5      X'   Un[        S /S-  [        [        S5      5      -   S /S-  -   [        S9n[        R
                  " X45        g )Nr"   Fr&   Tr'   r8   rd   )r   r   r   rK   r>   r?   )r.   rN   r   rA   rB   s        r0   Atest_setitem_with_bool_mask_and_values_matching_n_trues_in_lengthXTestSetitemBooleanMask.test_setitem_with_bool_mask_and_values_matching_n_trues_in_lengthk  s{    dVb[!w{dVaZ'5'A+5!H	4&1*tE!H~5
B&Q
v0r3   c                     [        / SQ5      n[        R                  " [        SS9   [        R
                  US'   S S S 5        g ! , (       d  f       g = f)Nr   r   r   r   )r   r   r   r   r+   r,   )r.   rA   s     r0   test_setitem_nan_with_bool1TestSetitemBooleanMask.test_setitem_nan_with_boolt  s4    +,]]9O<F1I =<<s   A
Ac                 :   [        / SQSS9n[        R                  " / SQ[        R                  S9n[        R                  " / SQ5      nUR	                  5       n[
        R                  " [        SS9   [        U5      XC'   S S S 5        [
        R                  " [        SS9   UR                  X2SS	9  S S S 5        UR                  U) [        U5      5      n[        / S
Q5      n[        R                  " XV5        g ! , (       d  f       N= f! , (       d  f       N_= f)NrF   int8rd   )      r   r   r   Tinplace)r  r8   r  )r   r+   r   r   r<   r   r   r   r   wherer>   r?   )r.   rj   altr   rN   resrB   s          r0   !test_setitem_mask_smallint_upcast8TestSetitemBooleanMask.test_setitem_mask_smallint_upcastz  s    iv.hh(9xx+,iik]]9O<sCI = ]]9O<HHTH- = iivc{+.)
s- =< =<s   3C;"D;
D	
Dc                    [        / SQSS9n[        / SQ[        R                  S9n[        R                  " / SQ5      nUR	                  5       nX$U'   [        / SQSS9n[
        R                  " XE5        UR	                  5       nUR                  X2SS9  [
        R                  " Xe5        UR	                  5       nUR                  U) U5      n[
        R                  " XS	S
9  g )NrF   uint8rd   )   r     r   )r  r8   r  Tr  F)check_dtype)	r   r+   r   r   r<   r>   r?   r   r  )	r.   rj   r  r   rN   rB   r   ser3r  s	            r0   $test_setitem_mask_smallint_no_upcast;TestSetitemBooleanMask.test_setitem_mask_smallint_no_upcast  s     iw/%RXX6xx+,iikD	-w7
s-yy{		$T	*
t. yy{jj$$
s%@r3   r   N)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   r3   r0   r   r     so    .	.= %	/ [[VdBHHf%=>. ?.. 1."Ar3   r   c                        \ rS rSrS rS rSrg)TestSetitemViewCopySemanticsi  c                 @   [        SSSS9nUS   n[        U5      nUR                  ULd   eUR                  R                  R                  UR
                  R                  R                  L d   eUR                  S:X  d   e[        UR                  S'   UR                  R                  b   eUR                  ULd   eUR                  R                  R                  UR
                  R                  R                  Ld   eUS   U:X  d   eUR                  S:X  d   eg )N20130101r&   rS   r$   rT   r6   D)	r   r   _values_ndarraybase_datar_   r   rV   r.   dtir   rN   s       r0   ,test_setitem_invalidates_datetime_index_freqITestSetitemViewCopySemantics.test_setitem_invalidates_datetime_index_freq  s     Q<@VSk{{#%%%{{##((CII,>,>,C,CCCCxx3{{''' {{#%%%{{##((		0B0B0G0GGGG1v||xx3r3   c                 0   [        SSSS9nUS   n[        U5      nUR                  ULd   eUR                  R                  R                  UR
                  R                  R                  L d   eUR                  R                  S   R                  R                  R                  UR
                  R                  R                  L d   eUR                  R                  S   R                  ULd   e[        US S S2'   US   [        L d   eUS   U:X  d   eg )Nr\   r"   
US/Pacificr#  r   r&   )
r   r   r%  r&  r'  r(  _mgrblocksr   r   r)  s       r0   'test_dt64tz_setitem_does_not_mutate_dtiDTestSetitemViewCopySemantics.test_dt64tz_setitem_does_not_mutate_dti  s    rlCVSk{{#%%%{{##((CII,>,>,C,CCCCxxq!((1166#)):L:L:Q:QQQQxxq!((333CaC1v}}1v||r3   r   N)r   r   r   r   r+  r1  r   r   r3   r0   r   r     s    &r3   r   c                        \ rS rSrS rS rSrg)TestSetitemCallablei  c                     [        / SQ[        S5      S9nSUS '   [        / SQ[        S5      S9n[        R                  " X5        g )Nr6   r8   r&   r(   ABCDr9   r   c                     g)NAr   r{   s    r0   <lambda>?TestSetitemCallable.test_setitem_callable_key.<locals>.<lambda>  s    cr3   )r   r8   r&   r(   )r   r   r>   r?   r   s      r0   test_setitem_callable_key-TestSetitemCallable.test_setitem_callable_key  s:    \f6M-tF|<
s-r3   c                     S n[        / SQ[        S9nXUS:  '   [        SSUS/5      n[        R                  " X#5        g )Nc                     U S-   $ Nr6   r   r:  s    r0   r;  ATestSetitemCallable.test_setitem_callable_other.<locals>.<lambda>  s    Ar3   )r6   r8   r   r(   rd   r   r6   r8   r(   r   rK   r>   r?   )r.   incrN   rB   s       r0   test_setitem_callable_other/TestSetitemCallable.test_setitem_callable_other  s@     ]&1C!G1aa.)
s-r3   r   N)r   r   r   r   r=  rE  r   r   r3   r0   r4  r4    s    .	.r3   r4  c                      \ rS rSrS rS rS r\R                  R                  S\
" S5      \
" S5      R                  5       \
" S5      R                  5       /5      S 5       rS rS	 rS
 r\R                  R                  S\\SSSS4\\SSSS4\\R&                  SSSS4\\R&                  SSSS4\\SSSS4\\SSSS4\R&                  \SSSS4\R&                  \SSSS4\R&                  \SSSS4\R&                  \SSSS4\R&                  \R&                  SSSS4\R&                  \R&                  SSSS4/5      S 5       rS rSrg)TestSetitemWithExpansioni  c                     [        S5      n[        [        S9nSX2'   [        SU(       a  U/O[        U/[        S9S9n[        R
                  " X45        g )Nrf   rd   /   r9   )r   r   rK   r   r>   r?   )r.   using_infer_stringr   r/   rB   s        r0   test_setitem_empty_series2TestSetitemWithExpansion.test_setitem_empty_series  sL    %f%1seucU&7Q
 	v0r3   c                 *   [        / SSS9n[        / U[        S9n[        S5      nSX#'   [        S[        U/SS9R	                  S5      5      n[
        R                  " X$5        UR                  R                  UR                  R                  :X  d   eg )	Nr$  rt   )r_   rJ   rI   rf   rJ  r   r#   )	r   r   rK   r   as_unitr>   r?   r:   r_   )r.   r*  r/   r   rB   s        r0   6test_setitem_empty_series_datetimeindex_preserves_freqOTestSetitemWithExpansion.test_setitem_empty_series_datetimeindex_preserves_freq  s    BS9#V4%"mSE<DDTJK
v0||  HNN$7$7777r3   c                     [        S5      n[        U/S/[        S9nUS   n[        / [        S9nSUS'   XS'   US   nXC:X  d   eg )Nl    Pi5 	timestamprI   rd   g     r@anything)r   r   rK   )r.   rS  r/   rB   rA   s        r0   3test_setitem_empty_series_timestamp_preserves_dtypeLTestSetitemWithExpansion.test_setitem_empty_series_timestamp_preserves_dtype  s]    12	K=G+&&)"z'{$!!!r3   td9 daysc                    U(       aA  [        U[        5      (       d,  UR                  [        R                  R                  SS95        [        SU/SS/[        S9n[        S/5      nXS'   [        R                  " XT5        [        US   [        5      (       d   e[        S/5      n[        S5      UR                  S'   [        R                  " XT5        [        US   [        5      (       d   eg )Nzinferred as stringreasonr{   r   rW  rI   rX  )rw   r   applymarkerr   r   xfailr   rK   r>   r?   r=   )r.   rW  rK  requestrB   rN   s         r0   #test_append_timedelta_does_not_cast<TestSetitemWithExpansion.test_append_timedelta_does_not_cast  s     jY&?&? 1 19M 1 NO3)At9FCcUmD	
s-#d)Y////cUm!(+
s-#d)Y////r3   c                     [        [        S9n[        S5      US'   SUS'   SUS'   [        [        S5      SS// SQS	9n[        R                  " X5        g )
Nrd   r\   r5         @r7   r   r   r   r9   )r   rK   r   r>   r?   r   s      r0   *test_setitem_with_expansion_type_promotionCTestSetitemWithExpansion.test_setitem_with_expansion_type_promotion  sR    6"\*CCC9\2C?W
s-r3   c                     UR                  5       nSUR                  ;  d   eSUS'   [        S/S/SS9n[        X/5      n[        R
                  " X$5        g )Nfoobarr6   r/   )r:   name)r<   r:   r   r   r>   r?   )r.   r   rN   apprB   s        r0   test_setitem_not_contained3TestSetitemWithExpansion.test_setitem_not_contained  sX      "syy(((HaS
:=./
s-r3   c                 j    [        SS/US9nSUS'   [        / SQUS9n[        R                  " X#5        g )Nr6   r8   rd   r"   )r6   r8   r"   r   )r.   r  rN   rB   s       r0   test_setitem_keep_precision4TestSetitemWithExpansion.test_setitem_keep_precision)  s7    aV#78A*,@A
s-r3   z3na, target_na, dtype, target_dtype, indexer, raisesInt64r6   Fr8   r   r   rK   TFloat64c                     [        SS/US9nU(       a'  [        R                  " [        SS9   XU'   S S S 5        g XU'   US:X  a  SU/OSSU/n[        XS9n	[        R
                  " Xy5        g ! , (       d  f       g = f)Nr6   r8   rd   r   r   )r   r   r   r   r>   r?   )
r.   na	target_narJ   target_dtyper   r   rN   expected_valuesrB   s
             r0   test_setitem_enlarge_with_na5TestSetitemWithExpansion.test_setitem_enlarge_with_na0  sx    * aV5)y@!G A@ L071q)n1aBSOoBH""31 A@s   A..
A<c                    [        SS/5      nXS'   U(       a  [        U[        5      (       d  SO[        n[        SSU// SQUS9n[        R
                  " X55        U(       a  US   [        R                  L   g US   UL d   eg )Nr5   r7   r&   r   )r   r6   r&   rI   )r   rw   r   rK   r>   r?   r+   r,   )r.   nulls_fixturerK  rN   rJ   rB   s         r0   $test_setitem_enlargement_object_none=TestSetitemWithExpansion.test_setitem_enlargement_object_noneO  s    c3Z A "*]G*L*L  	
 3]39ER
s-Fbffq6]***r3   r   N)r   r   r   r   rL  rP  rU  r   r   r   r   to_timedelta64to_pytimedeltar_  rc  ri  rl  r	   r+   r,   r   ru  ry  r   r   r3   r0   rH  rH    s   18
" [[hh..0h..0	
00$... [[=Wgq%0Wgq%0)Q6)Q6#w!T2#w!U3VVR'1e4VVR'1e4VVRIq%8VVRIq%8VVRVVWiE:VVRVVWiE:	
"2#"2+r3   rH  c                     [         R                  " S5      n SU R                  l        [	        U SS9nUR
                   H5  nSn[        R                  " [        US9   SX'   S S S 5        X   S:X  a  M5   e   g ! , (       d  f       N= f)Nr'   Fr<   #assignment destination is read-onlyr   r6   r   )	r+   zerosflags	writeabler   r:   r   r   
ValueError)r   r/   nr   s       r0   .test_setitem_scalar_into_readonly_backing_datar  `  sm     HHQKE!EKKE&F\\3]]:S1FI 2 x1}} 11s   A88
B	c                  
   [         R                  " S5      n SU R                  l        [	        U SS9nSn[
        R                  " [        US9   SUSS& S S S 5        U R                  " 5       (       a   eg ! , (       d  f       N'= f)Nr'   Fr~  r  r   r6   r&   )	r+   r  r  r  r   r   r   r  r   )r   r/   r   s      r0   -test_setitem_slice_into_readonly_backing_datar  o  si     HHQKE!EKKE&F
/C	z	-q 
. yy{{?{ 
.	-s   A44
Bc                     [        [        SS/SS/S95      n U R                  5       nSUS S & [        [        SS/SS/S95      n[        R                  " X5        U R                  5       nSUS'   [        [        SS/SS/S95      n[        R                  " X5        U R                  5       nSXR
                  S:  '   [        [        SS/SS/S95      n[        R                  " X5        U R                  5       nSUSS/'   [        [        SS/SS/S95      n[        R                  " X5        U R                  5       nSS	/Ul        SUS	'   [        [        SS/SS/S9SS	/S
9n[        R                  " X5        g )Nr7   r5   
categoriesr6   r   FTr{   yr9   )r   r
   r<   r>   r?   r:   )rj   rN   rk   s      r0   &test_setitem_categorical_assigning_opsr  }  s_   +sCjc3Z@AD
))+CCF
c3ZS#J?
@C3$
))+CCF
c3ZS#J?
@C3$
))+CC		A
c3ZS#J?
@C3$
))+CC
c3ZS#J?
@C3$
))+Cc
CICH
c3ZS#J?Sz
RC3$r3   c                      [        [        / SQ5      5      n [        [        S[        R                  S// SQS95      n[        R                  U S'   [        R
                  " X5        g )NrF   r6   r&   r  )r   r
   r+   r,   r>   r?   )rN   rk   s     r0   !test_setitem_nan_into_categoricalr    sG    
Y'
(C
a^	B
CCVVCF3$r3   c                       \ rS rSr\R
                  R                  SSS/5      \R
                  R                  S/ SQ\S9S 5       5       rS	 r	S
r
g)TestSetitemCastingi  uniqueTFval)r&   rb  3)idsc                     [        SS/5      nU(       d	  SS/Ul        [        R                  " [        SS9   X" U5      S'   S S S 5        g ! , (       d  f       g = f)NTFr6   r   r   )r   r:   r   r   r   )r.   r  ri   r  rN   s        r0   test_setitem_non_bool_into_bool2TestSetitemCasting.test_setitem_non_bool_into_bool  sI     dE]#ACI]]9O<"%KQ =<<s   A
Ac                     [        / SQ5      nUR                  n[        / SQ5      nUS S US S& UR                  UL d   e[        R                  " [
        SS9   USS  USS & S S S 5        g ! , (       d  f       g = f)Nr   )TFNr8   r   r   r6   )r   r%  r   r   r   r   )r.   rN   r   rW   s       r0   &test_setitem_boolean_array_into_npbool9TestSetitemCasting.test_setitem_boolean_array_into_npbool  so    ()'(bq'BQ{{f$$$]]9O<!"gCG =<<s   	A++
A9r   N)r   r   r   r   r   r   r   typer  r  r   r   r3   r0   r  r    sL    [[Xe}5[[UMt<& = 6&
r3   r  c                   l    \ rS rSrSr\R                  S 5       rS rS r	S r
S rS rS	 rS
 rS rSrg)SetitemCastingEquivalentsi  z
Check each of several methods that _should_ be equivalent to `obj[key] = val`

We assume that
    - obj.index is the default Index(range(len(obj)))
    - the setitem does not expand the obj
c                 4    UR                   UR                   :H  $ )z6
Whether we expect the setting to be in-place or not.
rd   )r.   objrB   s      r0   
is_inplace$SetitemCastingEquivalents.is_inplace  s    
 ~~**r3   c                     UnUR                  5       nUR                  nXE" U5      U'   [        R                  " X5        U R	                  XgX5        g rv   )r<   r%  r>   r?   _check_inplace)	r.   r  r   rB   r  r   r  rj   rW   s	            r0   check_indexer'SetitemCastingEquivalents.check_indexer  sG    hhjkkS
s-Jc7r3   c                     Uc  g U(       aR  UR                   R                  S;   a&  UR                  UR                  R                  L d   eg UR                  UL d   eg [        R
                  " X2R                  5        g )N)mM)rJ   kindr&  r%  r>   assert_equal)r.   r  rj   rW   r  s        r0   r  (SetitemCastingEquivalents._check_inplace  s`    yy~~+ ||s{{';';;;;{{c))) OOC.r3   c           	         [        U[        5      (       d  [        R                  " S5        U(       a  [        R                  " [
        SS9nO[        R                  " 5       nU   U R                  XX5Xg5        S S S 5        U[        R                  L a.  U   U R                  XX5[        R                  U5        S S S 5        O@U[        R                  L a-  U   U R                  XX5[        R                  U5        S S S 5        [        X"S-   5      n	U   U R                  XX5Xg5        S S S 5        U[        R                  La,  [        X"S-   5      n
U   U R                  XX5Xg5        S S S 5        U/nU   U R                  XX5Xg5        S S S 5        [         R"                  " U5      nU   U R                  XX5Xg5        S S S 5        S U4 5       nU   U R                  XX5Xg5        S S S 5        g ! , (       d  f       GNy= f! , (       d  f       GN
= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)NzNot relevant for int keyr   r   r6   c              3   $   #    U  H  ov   M     g 7frv   r   ry   s     r0   r|   9SetitemCastingEquivalents.test_int_key.<locals>.<genexpr>  s     #U!U   )rw   intr   skipr   r   
contextlibnullcontextr  r>   r=   r   rV   iatr   slicer+   r   )r.   r  r   rB   r   r  ri   r  ctxrngslcilkeyindkeygenkeys                 r0   test_int_key&SetitemCastingEquivalents.test_int_key  s   #s##KK23--	AC((*CsP  "&& ""3XBEE:N BGG#""3XBFFJO  Cq!sP  bff$1W%C""3XKT  s8+R  %sH;S  $cU#sH;S S; S   S  S S Ss`   $G*#G<#HH H21I%II%*
G9<
H
H 
H/2
I 
I
I"%
I3c           	         [        U[        5      (       d  [        R                  " S5        U(       a  [        R                  " [
        SS9nO[        R                  " 5       nU[        R                  La  U   U R                  XX5Xg5        S S S 5        [        [        [        U5      5      5      U   n	U   U R                  XX5Xg5        S S S 5        [        R                  " U	5      n
U   U R                  XX5Xg5        S S S 5        S U
 5       nU   U R                  XX5Xg5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N{= f! , (       d  f       NX= f! , (       d  f       g = f)NzNot relevant for slice keyr   r   c              3   $   #    U  H  ov   M     g 7frv   r   ry   s     r0   r|   ;SetitemCastingEquivalents.test_slice_key.<locals>.<genexpr>!  s     $V!Vr  )rw   r  r   r  r   r   r  r  r>   r=   r  r   r   lenr+   r   )r.   r  r   rB   r   r  ri   r  r  r  r  r  s               r0   test_slice_key(SetitemCastingEquivalents.test_slice_key  s   #u%%KK45--	AC((*Cbff$""3XKT  U3s8_%c*s8+R  %sH;S  %V$sH;S S  S S Ss0   7D-5D>)EE -
D;>
E
E 
E.c                    [         R                  " UR                  [        S9nSXr'   UR	                  5       n[        U5      (       aL  [        U5      UR                  5       :  a/  Sn[        R                  " [        US9   XV" U5      U'   S S S 5        g U(       a-  [        R                  " [        SS9   XV" U5      U'   S S S 5        g XV" U5      U'   g ! , (       d  f       g = f! , (       d  f       g = f)Nrd   Tz9boolean index did not match indexed array along dimensionr   r   )r+   r  shapeboolr<   r   r  sumr   r   
IndexErrorr   )	r.   r  r   rB   r   r  ri   r   r   s	            r0   test_mask_key'SetitemCastingEquivalents.test_mask_key%  s    xx		.	hhjSDHHJ!6MCz5),C & 6y@),C & A@ &)KT" 65 A@s    C4C$
C!$
C2c                    [         R                  " UR                  [        S9nSXr'   [	        U5      (       aP  [        U5      [        U5      :  a8  Sn[        R                  " [        US9   UR                  U) U5        S S S 5        g Un	UR                  5       nUR                  n
UR                  U) U5      nU[        L a*  UR                  [        :X  a  UR                  [        5      nOOUcL  UR                  [        :X  a8  UR                  [        :X  d   eUR                  5       nS X3R!                  5       '   ["        R$                  " X5        U R'                  XiX5        g ! , (       d  f       g = f)Nrd   Tz4operands could not be broadcast together with shapesr   )r+   r  r  r  r   r  r   r   r  r  r<   r%  r	   rJ   rK   fillnaisnar>   r?   r  )r.   r  r   rB   r   r  r  r   r   rj   rW   r  s               r0   test_series_where+SetitemCastingEquivalents.test_series_where8  s   xx		.	SCH!4HCz5		4%% 6hhjkkiis#"9f,r*H[SYY&0>>V+++}}H(,H]]_%
s-Jc7% 65s   +E$$
E2c                     [         R                  " UR                  [        S9nSXb'   [	        U5      R                  U) U5      n[	        X3R                  S9n[        R                  " Xx5        g Nrd   T)	r+   r  r  r  r   r  rJ   r>   assert_index_equal)	r.   r  r   rB   r   r  r   r  expected_idxs	            r0   test_index_where*SetitemCastingEquivalents.test_index_whereS  sQ    xx		.	Cjuc*X^^<
c0r3   c                     [         R                  " UR                  [        S9nSXb'   [	        U5      R                  Xe5      n[        R                  " U[	        X3R                  S95        g r  )	r+   r  r  r  r   putmaskr>   r  rJ   )r.   r  r   rB   r   r  r   r  s           r0   test_index_putmask,SetitemCastingEquivalents.test_index_putmask[  sJ    xx		.	Cj  +
c5#HIr3   r   N)r   r   r   r   __doc__r   fixturer  r  r  r  r  r  r  r  r  r   r   r3   r0   r  r    sK     ^^+ +8/&TPT2)&861Jr3   r  zobj,expected,key,raisesr6   r'   r8   r&   r(   zinterval[float64]rd   Tinterval_int_na_value)id)	r8   r&   r(   r'   r*   r)   r   r   r"   r)   r   Fint_series_slice_key_step)TTFFbool_series_slice_key_stepr"   r*   r   int_series_slice_keyrF   int_series_int_keybool_series_int_key_change_allbool_series_int_keyc                   |    \ rS rSr\R
                  " \R                  \R                  " S5      S\	/S9S 5       r
Srg)TestSetitemCastingEquivalentsic  NaNNparamsc                     UR                   $ )z
NA values that should generally be valid_na for *all* dtypes.

Include both python float NaN and np.float64; only np.float64 has a
`dtype` attribute.
paramr.   r^  s     r0   r  !TestSetitemCastingEquivalents.val  s     }}r3   r   )r   r   r   r   r   r  r+   r,   r   r	   r  r   r   r3   r0   r  r  c  s7    D ^^BFFBJJu$5tR@A Br3   r  c                       \ rS rSr\R
                  S 5       r\R
                  " \\\	/S9S 5       r
\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r\R
                  S 5       rS	rg
)!TestSetitemTimedelta64IntoNumerici  c                 4    [         R                  " SS5      nU$ )Nr(   r#   )r+   timedelta64)r.   rW  s     r0   r  %TestSetitemTimedelta64IntoNumeric.val  s    ^^At$	r3   r  c                     UR                   $ rv   r  r  s     r0   rJ   'TestSetitemTimedelta64IntoNumeric.dtype      }}r3   c                 f    [         R                  " S5      R                  U5      n[        U5      nU$ )Nr'   )r+   r   astyper   r.   rJ   rW   rN   s       r0   r  %TestSetitemTimedelta64IntoNumeric.obj  s(    iil!!%(Sk
r3   c                     [         R                  " S5      R                  U5      n[        U5      nUR                  [        5      n[         R
                  " SS5      UR                  S'   U$ )Nr'   r(   r#   r   )r+   r   r  r   rK   r  rV   r  s       r0   rB   *TestSetitemTimedelta64IntoNumeric.expected  sN    iil!!%(Skjj nnQ-
r3   c                     gr   r   r.   s    r0   r   %TestSetitemTimedelta64IntoNumeric.key      r3   c                     gNTr   r  s    r0   r   (TestSetitemTimedelta64IntoNumeric.raises      r3   r   N)r   r   r   r   r   r  r  complexr  floatrJ   r  rB   r   r   r   r   r3   r0   r  r    s     ^^ 
 ^^GS%01 2 ^^ 
 ^^  ^^  ^^ r3   r  c                   >   \ rS rSr\R
                  " SS/S9S 5       r\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r	\R
                  S	 5       r
\R
                  " S
\\R                  /S9S 5       r\R
                  S 5       rSrg
)TestSetitemDT64IntoInti  rt   m8[ns]r  c                     UR                   $ rv   r  r  s     r0   rJ   TestSetitemDT64IntoInt.dtype  r  r3   c                 H    [         R                  " SS5      nUS:X  a  X"-
  nU$ )Nz2021-01-18 13:25:00r#   r  )r+   rx   )r.   rJ   r  s      r0   scalarTestSetitemDT64IntoInt.scalar  s'    mm148H)C
r3   c                 d    [        XS/[        S9n[        US   [        U5      5      (       d   eU$ )Nr&   rd   r   )r   rK   rw   r  )r.   r  rB   s      r0   rB   TestSetitemDT64IntoInt.expected  s3    61-V<(1+tF|4444r3   c                     [        / SQ5      $ )NrF   r   r  s    r0   r  TestSetitemDT64IntoInt.obj  s    i  r3   c                     [        S S5      $ )Nr   r  r  s    r0   r   TestSetitemDT64IntoInt.key  s    T2r3   Nc                 6    UR                   nUc  U$ U" X/5      $ rv   r  )r.   r  r^  boxs       r0   r  TestSetitemDT64IntoInt.val  s#    mm;MF#$$r3   c                     gr  r   r  s    r0   r   TestSetitemDT64IntoInt.raises  r  r3   r   )r   r   r   r   r   r  rJ   r  rB   r  r   r   r+   r   r  r   r   r   r3   r0   r  r    s     ^^Hh/0 1 ^^  ^^ 
 ^^! ! ^^  ^^D$12% 3% ^^ r3   r  c                      \ rS rSr\R
                  S 5       r\R
                  S 5       r\R
                  " S\" SS5      /S9S 5       r	\R
                  " S\
R                  /S9S	 5       r\R
                  S
 5       rSrg)TestSetitemNAPeriodDtypei  c                     [        [        SSSS95      n[        R                  UR                  R                  S5      U'   X!   [        L d  [        S X!    5       5      (       d   eU$ )N
2000-01-01r"   r$  r$   r_   i8c              3   0   #    U  H  o[         L v   M     g 7frv   )r   ry   s     r0   r|   4TestSetitemNAPeriodDtype.expected.<locals>.<genexpr>  s     %A13hs   )r   r   r   _valuer%  viewr~   )r.   r   rk   s      r0   rB   !TestSetitemNAPeriodDtype.expected   sX    \,EF&)jjs#x3#%A%A"A"AAA
r3   c                 *    [        [        SSSS95      $ )Nr  r"   r$  r  )r   r   r  s    r0   r  TestSetitemNAPeriodDtype.obj  s    l<#FGGr3   r&   r'   r  c                     UR                   $ rv   r  r  s     r0   r   TestSetitemNAPeriodDtype.key  r  r3   Nc                     UR                   $ rv   r  r  s     r0   r  TestSetitemNAPeriodDtype.val  r  r3   c                     gNFr   r  s    r0   r   TestSetitemNAPeriodDtype.raises      r3   r   )r   r   r   r   r   r  rB   r  r  r   r+   r,   r  r   r   r   r3   r0   r  r    s     ^^  ^^H H ^^AuQ{+, - ^^D"&&>* + ^^ r3   r  c            
          \ rS rSr\R
                  " / SQS9S 5       r\R
                  S 5       r\R
                  " S\R                  \
\R                  " SS5      \R                  " SS5      /S9S	 5       r\R
                  S
 5       r\R
                  S 5       r\R
                  S 5       r\R
                  S 5       rSrg)TestSetitemNADatetimeLikeDtypei  )r  rt   zdatetime64[ns, UTC]zdatetime64[ns, US/Central]r  c                     UR                   $ rv   r  r  s     r0   rJ   $TestSetitemNADatetimeLikeDtype.dtype  s     }}r3   c                 v    [        SSS9R                  n[        X!S9nUR                  U:X  d   e[	        U5      $ )Nr\   r&   r$   rd   )r   asi8r   rJ   r   )r.   rJ   i8valsr@   s       r0   r  "TestSetitemNADatetimeLikeDtype.obj$  s:    L!499F(yyE!!!c{r3   Nr   r#   c                     UR                   $ rv   r  r  s     r0   r  "TestSetitemNADatetimeLikeDtype.val+  s     }}r3   c                     U[         L =(       d=    US L =(       d2    U[        R                  L =(       d    UR                  UR                  :H  $ rv   )r   r+   r,   rJ   )r.   r  r  s      r0   r  )TestSetitemNADatetimeLikeDtype.is_inplace7  s6    
 czSSD[SC266MSSYY#))=SSr3   c                 j    U(       a  UR                   O[        n[        U/[        USS  5      QUS9nU$ )Nr6   rd   )rJ   rK   r   r   )r.   r  r  r  rJ   rB   s         r0   rB   'TestSetitemNADatetimeLikeDtype.expected>  s2    '		V3/c!"g/u=r3   c                     gr   r   r  s    r0   r   "TestSetitemNADatetimeLikeDtype.keyD  r  r3   c                     U(       a  S$ S$ )NFTr   )r.   r  s     r0   r   %TestSetitemNADatetimeLikeDtype.raisesH  s    "u,,r3   r   )r   r   r   r   r   r  rJ   r  r+   r,   r   r  rx   r  r  rB   r   r   r   r   r3   r0   r1  r1    s     ^^X ^^  ^^FFNN5$'MM%&
 ^^T T ^^ 
 ^^  ^^- -r3   r1  c                       \ rS rSr\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r	\R
                  S 5       r
Srg)	$TestSetitemMismatchedTZCastsToObjectiM  c                 *    [        [        SSSS95      $ )N2000r8   
US/Centralr#  r   r   r  s    r0   r  (TestSetitemMismatchedTZCastsToObject.objO  s    j|DEEr3   c                     [        SSS9$ )NrF  rS   rb   )r   r  s    r0   r  (TestSetitemMismatchedTZCastsToObject.valS  s    L11r3   c                     gr   r   r  s    r0   r   (TestSetitemMismatchedTZCastsToObject.keyW  r  r3   c                 `    [        UR                  S5      [        SSS9/UR                  S9nU$ )NrG  z2000-01-02 00:00:00-06:00rb   rd   )r   
tz_convertr   rJ   )r.   r  r  rB   s       r0   rB   -TestSetitemMismatchedTZCastsToObject.expected[  s:     |,5,G ))
 r3   c                     gr-  r   r  s    r0   r   +TestSetitemMismatchedTZCastsToObject.raisesh  r/  r3   r   Nr   r   r   r   r   r  r  r  r   rB   r   r   r   r3   r0   rD  rD  M  sz    ^^F F ^^2 2 ^^  ^^
 
 ^^ r3   rD  zobj,expected)      ?       @rb  rU  rb  i  )r   r   baz)Nr   rV  c                       \ rS rSr\R
                  S 5       r\R
                  S 5       r\R
                  S 5       rSr	g)TestSeriesNoneCoercionim  c                     gr   r   r  s    r0   r   TestSeriesNoneCoercion.key}  r  r3   c                     g rv   r   r  s    r0   r  TestSeriesNoneCoercion.val  r  r3   c                     gr-  r   r  s    r0   r   TestSeriesNoneCoercion.raises  r/  r3   r   N)
r   r   r   r   r   r  r   r  r   r   r   r3   r0   rX  rX  m  sJ      ^^  ^^  ^^ r3   rX  c                       \ rS rSrS r\R                  S 5       r\R                  S 5       r\R                  S 5       r	\R                  S 5       r
\R                  S 5       rSrg	)
-TestSetitemFloatIntervalWithIntIntervalValuesi  c                     [         R                  " [        S5      5      n[        U5      n[	        SS5      n[
        R                  " [        SS9   X2S'   S S S 5        g ! , (       d  f       g = f)Nr(         ?      ?r   r   r   )r   from_breaksr   r   r   r   r   r   )r.   r@   r  r  s       r0   test_setitem_exampleBTestSetitemFloatIntervalWithIntIntervalValues.test_setitem_example  sL    ''a1SksC ]]9O<F =<<s   A
A,c                 V    [         R                  " [        S5      5      n[        U5      $ )z5
Fixture to create a Series [(0, 1], (1, 2], (2, 3]]
r(   )r   rd  r   r   )r.   r@   s     r0   r  1TestSetitemFloatIntervalWithIntIntervalValues.obj  s"    
 ''a1c{r3   c                     [        SS5      $ )z'
Fixture to get an interval (0.5, 1.5]
rb  rc  )r   r  s    r0   r  1TestSetitemFloatIntervalWithIntIntervalValues.val  s    
 S!!r3   c                     g)z
Fixture to get a key 0
r   r   r  s    r0   r   1TestSetitemFloatIntervalWithIntIntervalValues.key  s    
 r3   c                 N    U/[        USS 5      Qn[        USS9n[        U5      $ )z>
Fixture to get a Series [(0.5, 1.5], (1.0, 2.0], (2.0, 3.0]]
r6   NzInterval[float64]rd   )r   r   r   )r.   r  r  datar@   s        r0   rB   6TestSetitemFloatIntervalWithIntIntervalValues.expected  s2    
 $d3qr7m$D(;<c{r3   c                     g)z-
Fixture to enable raising pytest exceptions
Tr   r  s    r0   r   4TestSetitemFloatIntervalWithIntIntervalValues.raises  s    
 r3   r   N)r   r   r   r   re  r   r  r  r  r   rB   r   r   r   r3   r0   r`  r`    s     ^^  ^^" " ^^  ^^  ^^ r3   r`  c                       \ rS rSr\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r	\R
                  S 5       r
Srg)	!TestSetitemRangeIntoIntegerSeriesi  c                 X    [         R                  " U5      n[        [        S5      US9nU$ Nr'   rd   )r+   rJ   r   r   )r.   any_int_numpy_dtyperJ   rN   s       r0   r  %TestSetitemRangeIntoIntegerSeries.obj  s&    ,-U1XU+
r3   c                     [        SS5      $ )Nr8   r(   )r   r  s    r0   r  %TestSetitemRangeIntoIntegerSeries.val      Q{r3   c                     [        SS5      $ Nr   r8   r  r  s    r0   r   %TestSetitemRangeIntoIntegerSeries.key  rz  r3   c                 J    [         R                  " U5      n[        / SQUS9nU$ )N)r8   r&   r8   r&   r(   rd   )r+   rJ   r   )r.   rv  rJ   rk   s       r0   rB   *TestSetitemRangeIntoIntegerSeries.expected  s"    ,-_E2
r3   c                     gr-  r   r  s    r0   r   (TestSetitemRangeIntoIntegerSeries.raises  r/  r3   r   NrS  r   r3   r0   rs  rs    sz     ^^ 
 ^^  ^^  ^^ 
 ^^ r3   rs  zval, raisesg      @g      @A   c                       \ rS rSr\R
                  S 5       r\R
                  S 5       r\R
                  S 5       rSr	g)(TestSetitemFloatNDarrayIntoIntegerSeriesi  c                 D    [        [        S5      [        R                  S9$ ru  )r   r   r+   r   r  s    r0   r  ,TestSetitemFloatNDarrayIntoIntegerSeries.obj  s    eAhbhh//r3   c                     [        SS5      $ r|  r  r  s    r0   r   ,TestSetitemFloatNDarrayIntoIntegerSeries.key  rz  r3   c                     US   S:X  a  [         R                  nO[         R                  n[         R                  " [	        S5      US9nXS S& [        U5      $ )Nr   r8   r'   rd   )r+   r   r   r   r   r   )r.   r  rJ   
res_valuess       r0   rB   1TestSetitemFloatNDarrayIntoIntegerSeries.expected  sG    q6Q;HHEJJEXXeAhe4
2Aj!!r3   r   N)
r   r   r   r   r   r  r  r   rB   r   r   r3   r0   r  r    sJ     ^^0 0 ^^  ^^" "r3   r  r     c                       \ rS rSr\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r	Sr
g)'TestSetitemIntoIntegerSeriesNeedsUpcasti  c                 6    [        / SQ[        R                  S9$ )NrF   rd   r   r+   r  r  s    r0   r  +TestSetitemIntoIntegerSeriesNeedsUpcast.obj  s    irww//r3   c                     grA  r   r  s    r0   r   +TestSetitemIntoIntegerSeriesNeedsUpcast.key   r  r3   c                 6    [        / SQ[        R                  S9$ )N)r6   r  r&   rd   )r   r+   int16r  s    r0   rB   0TestSetitemIntoIntegerSeriesNeedsUpcast.expected  s    k22r3   c                     gr  r   r  s    r0   r   .TestSetitemIntoIntegerSeriesNeedsUpcast.raises  r  r3   r   Nr   r   r   r   r   r  r  r   rB   r   r   r   r3   r0   r  r    s`    ^^0 0 ^^  ^^3 3 ^^ r3   r  )g      Bg    Bl            c                       \ rS rSr\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r\R
                  S 5       r	Sr
g)TestSmallIntegerSetitemUpcasti  c                     [        / SQSS9$ )NrF   i4rd   r  r  s    r0   r  !TestSmallIntegerSetitemUpcast.obj  s    it,,r3   c                     gr   r   r  s    r0   r   !TestSmallIntegerSetitemUpcast.key  r  r3   c                 8    US-  S:w  a  SnOSn[        USS/US9$ )Nr6   r   f8r   r8   r&   rd   r  )r.   r  rJ   s      r0   rB   &TestSmallIntegerSetitemUpcast.expected  s*    7a<EEsAqk//r3   c                     gr  r   r  s    r0   r   $TestSmallIntegerSetitemUpcast.raises   r  r3   r   Nr  r   r3   r0   r  r    sb     ^^- - ^^  ^^0 0 ^^ r3   r  c                   \    \ rS rSr\R
                  S 5       r\R
                  S 5       rSrg)CoercionTesti%  c                     grA  r   r  s    r0   r   CoercionTest.key(  r  r3   c                 2    [        U5      nX5U'   [        XTS9$ )Nrd   )r   r   )r.   r  r   r  	exp_dtyperl   s         r0   rB   CoercionTest.expected,  s    CyS	d,,r3   r   N)	r   r   r   r   r   r  r   rB   r   r   r3   r0   r  r  %  s2     ^^  ^^- -r3   r  zval,exp_dtype,raisesc                   8    \ rS rSr\R
                  S 5       rSrg)TestCoercionInt8i3  c                 6    [        / SQ[        R                  S9$ )Nr6  rd   r  r  s    r0   r  TestCoercionInt8.obj9  s    l"''22r3   r   Nr   r   r   r   r   r  r  r   r   r3   r0   r  r  3  s     ^^3 3r3   r  )r6   皙?      ?      ?Tr  c                   \    \ rS rSr\R
                  S 5       r\R
                  S 5       rSrg)TestCoercionObjecti>  c                 "    [        / SQ[        S9$ )Nr5   r7   r   drd   )r   rK   r  s    r0   r  TestCoercionObject.objB  s    *&99r3   c                     gr-  r   r  s    r0   r   TestCoercionObject.raisesF  r/  r3   r   N	r   r   r   r   r   r  r  r   r   r   r3   r0   r  r  >  s2     ^^: : ^^ r3   r  ena_valuec                   8    \ rS rSr\R
                  S 5       rSrg)TestCoercionStringiK  c                 D    [        / SQ[        [        R                  S9S9$ )Nr  r  rd   )r   r   r+   r,   r  s    r0   r  TestCoercionString.objS  s    *+rvv2NOOr3   r   Nr  r   r3   r0   r  r  K  s     ^^P Pr3   r  r  r  c                   8    \ rS rSr\R
                  S 5       rSrg)TestCoercionComplexiX  c                     [        / SQ5      $ )N)r  y       @       @y      @      @y      @      @r  r  s    r0   r  TestCoercionComplex.objc  s    677r3   r   Nr  r   r3   r0   r  r  X  s     ^^8 8r3   r  r  c                   8    \ rS rSr\R
                  S 5       rSrg)TestCoercionBoolih  c                 "    [        / SQ[        S9$ )N)TFTFrd   )r   r  r  s    r0   r  TestCoercionBool.obju  s    0==r3   r   Nr  r   r3   r0   r  r  h  s     ^^> >r3   r  c                   8    \ rS rSr\R
                  S 5       rSrg)TestCoercionInt64iz  c                     [        / SQ5      $ )Nr6  r  r  s    r0   r  TestCoercionInt64.obj  s    l##r3   r   Nr  r   r3   r0   r  r  z  s     ^^$ $r3   r  c                   8    \ rS rSr\R
                  S 5       rSrg)TestCoercionFloat64i  c                     [        / SQ5      $ )Nr  g@gffffff
@g@r  r  s    r0   r  TestCoercionFloat64.obj  s    *++r3   r   Nr  r   r3   r0   r  r    s     ^^, ,r3   r  zbnp.float32(1.1) ends up as 1.100000023841858, so np_can_hold_element raises and we cast to float64rZ  )marksc                   L   ^  \ rS rSr\R
                  S 5       rU 4S jrSrU =r	$ )TestCoercionFloat32i  c                 6    [        / SQ[        R                  S9$ )Nr  rd   )r   r+   float32r  s    r0   r  TestCoercionFloat32.obj  s    *"**==r3   c           	      j   > [         TU ]  XX4XVU5        [        U[        5      (       a  [	        S5      eg )Nz!xfail not relevant for this test.)superr  rw   r  AssertionError)	r.   r  r   rB   r   r  ri   r  	__class__s	           r0   r  "TestCoercionFloat32.test_slice_key  s4    s3ZXc5!! !DEE "r3   r   )
r   r   r   r   r   r  r  r  r   __classcell__)r  s   @r0   r  r    s'    6 ^^> >F Fr3   r  )zM8[ms]M8[ms, UTC]m8[ms]c                       \ rS rSr\R
                  S 5       r\R
                  S 5       r\R
                  S 5       rSr	g) TestCoercionDatetime64HigherResoi  c                     [        SSSSS9nUS:X  a0  U[        S5      R                  S5      -
  nUR                  S:X  d   eOUS	:X  a  UR	                  S
5      n[        U5      $ )Nre   r$  r(   sr_   r$   r%   r  
1970-01-01zm8[s]r  rZ   )r   r   rO  rJ   tz_localizer   )r.   r  r@   s      r0   r  $TestCoercionDatetime64HigherReso.obj  sf    CE 	,/77<<C99'''-'//%(Cc{r3   c                     [        S5      R                  S5      nUS:X  a  U[        S5      R                  S5      -
  $ US:X  a  UR                  S5      $ U$ )Nz2011-01-02 03:04:05.678msr  r  r  r  rZ   )r   rO  r  )r.   r  r   s      r0   r  $TestCoercionDatetime64HigherReso.val  sW    0199$? 	,/77<<<-'>>%((	r3   c                     gr  r   r  s    r0   r   'TestCoercionDatetime64HigherReso.raises  r  r3   r   N)
r   r   r   r   r   r  r  r  r   r   r   r3   r0   r  r    sJ     ^^  ^^  ^^ r3   r  rf   zdatetime64[ns]r{   c                   \    \ rS rSr\R
                  S 5       r\R
                  S 5       rSrg)TestCoercionDatetime64i  c           	      ,    [        [        SSSSS95      $ )Nre   r$  r(   r#   r  rH  r  s    r0   r  TestCoercionDatetime64.obj  s    jCNOOr3   c                     gr-  r   r  s    r0   r   TestCoercionDatetime64.raises  r/  r3   r   Nr  r   r3   r0   r  r    s4     ^^P P ^^ r3   r  rS   rb   zdatetime64[ns, US/Eastern]r.  c                   \    \ rS rSr\R
                  S 5       r\R
                  S 5       rSrg)TestCoercionDatetime64TZi  c           
      2    Sn[        [        SSSUSS95      $ )NrS   re   r$  r(   r#   r^   rH  )r.   rT   s     r0   r  TestCoercionDatetime64TZ.obj  s     jCrPTUVVr3   c                     gr-  r   r  s    r0   r   TestCoercionDatetime64TZ.raises  r/  r3   r   Nr  r   r3   r0   r  r    s4     ^^W W ^^ r3   r  z12 dayztimedelta64[us]c                   \    \ rS rSr\R
                  S 5       r\R
                  S 5       rSrg)TestCoercionTimedelta64i  c                 (    [        [        SSS95      $ )Nz1 dayr(   r5  )r   r   r  s    r0   r  TestCoercionTimedelta64.obj  s    ogq9::r3   c                     gr-  r   r  s    r0   r   TestCoercionTimedelta64.raises  r/  r3   r   Nr  r   r3   r0   r  r    s2     ^^; ; ^^ r3   r  r   2016Yr   both)closedc                       \ rS rSr\R
                  " \" SSSS9\" SS5      /S9S	 5       r\R
                  S
 5       r	Sr
g)TestPeriodIntervalCoercioni  r\   r&   r$  r  r6   r'   r  c                 ,    [        UR                  5      $ rv   )r   r  r  s     r0   r  TestPeriodIntervalCoercion.obj%  s     gmm$$r3   c                     gr  r   r  s    r0   r   !TestPeriodIntervalCoercion.raises.  r  r3   r   N)r   r   r   r   r   r  r   r   r  r   r   r   r3   r0   r  r    sR     ^^qs;1a 
%% ^^ r3   r  c                  <   [        / SQ/ SQS9n U R                  5       n[        R                  " [        SS9   SUR
                  S'   S S S 5        [        R                  " [        SS9   SUR                  S'   S S S 5        [        R                  " [        SS9   SUS'   S S S 5        U R                  5       n[        R                  " [        SS9   SUR                  S'   S S S 5        [        R                  " [        SS9   SUR                  S'   S S S 5        U R                  S	5      nUR                  5       n[        R                  " [        SS9   SUR
                  S
'   S S S 5        [        R                  " [        SS9   SUR                  S
'   S S S 5        [        R                  " [        SS9   SUR                  S'   S S S 5        [        R                  " [        SS9   SUR                  S'   S S S 5        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       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)Nr   r6   r8   r   r9   r   r   g@r7   r6   r9  )r7   r9  )r6   r   )
r   r<   r   r   r   r   r=   r  rV   to_frame)rj   rN   orig_dfdfs       r0   
test_20643r  3  s   )?3D
))+C	y	8s 
9 
y	8 
9 
y	8C 
9 ))+C	y	8
 
9 
y	8 
9 mmC G	B	y	8h 
9 
y	8x 
9 
y	8 
9 
y	8t 
9	89 
9	8 
9	8 
9	8 
9	8 
9	8 
9	8 
9	8 
9	8 
9	8sk   H )HH$H6III+6I<'J 
H
H!$
H36
I
I
I(+
I9<
J

Jc                  .   [        / SQ/ SQS9n [        [        R                  SS// SQS9nU R                  5       nS UR                  S'   [
        R                  " X!5        U R                  5       nS UR                  S'   [
        R                  " X!5        g )Nr  r   r9   r6   r8   r   )r   r+   r,   r<   r  r>   r?   rV   )rj   rB   rN   s      r0   test_20643_commentr  X  sr     )?3Drvvq!nO<H
))+CCGGAJ3)
))+CCHHQK3)r3   c                  v   [        / SQ5      n [        R                  " [        SS9   X S:H  ==   S-  ss'   S S S 5        [        R                  " [        SS9   U S==   S-  ss'   S S S 5        [        R                  " [        SS9   U R                  S==   S-  ss'   S S S 5        [        R                  " [        SS9   U R
                  S==   S-  ss'   S S S 5        [        R                  " [        SS9   U R                  S==   S-  ss'   S S S 5        [        R                  " [        SS9   U R                  S==   S-  ss'   S S S 5        g ! , (       d  f       GN#= f! , (       d  f       GN= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)NrF   r   r   r8   rb  r6   )r   r   r   r   r=   rV   r  r   )rN   s    r0   
test_15413r  g  s&   

C	y	81H 
9 
y	8A# 
9 
y	8
c
 
9 
y	8s 
9 
y	8
c
 
9 
y	8q	S	 
9	8 
9	8 
9	8 
9	8 
9	8 
9	8 
9	8sG   EE%E7 F9F2F*
E"%
E47
F
F
F'*
F8c                  V   [         R                  " S5      R                  S5      n [        U 5      n[         R                  " [         R
                  " [         R                  5      R                  5      n[        R                  " [        SS9   X!S'   S S S 5        g ! , (       d  f       g = f)Nr'   r  r   r   r   )
r+   r   r  r   r   iinfomaxr   r   r   rW   rN   r  s      r0   test_32878_int_itemsizer  ~  se    
))A,

d
#C
+C
((288BHH%))
*C	y	8A 
9	8	8s   B
B(c                  P   [         R                  " S5      R                  S5      n [        U 5      n[         R                  " [         R
                  5      R                  nUR                  S5      n[        R                  " [        SS9   X!S'   S S S 5        g ! , (       d  f       g = f)Nr'   c8c16r   r   r   )
r+   r   r  r   finfor   r  r   r   r   r  s      r0   test_32878_complex_itemsizer    sl    
))A,

d
#C
+C
((2::

"
"C
**U
C 
y	8A 
9	8	8s   	B
B%c                     [        / SQ/ SQS9n[        R                  " [        SS9   SU " U5      S'   S S S 5        g ! , (       d  f       g = f)NrF   r   r9   r   r   testr7   )r   r   r   r   )
indexer_alrN   s     r0   
test_37692r#    s6    
/
2C	y	8%
3 
9	8	8s	   =
Ac                    [         R                  [         R                  4 H  n[        S[	        S5      US9n[
        R                  " [        SS9   SU " U5      S'   S S S 5        [        S[	        S5      [        S9n[
        R                  " [        SS9   U" S5      US'   S S S 5        M     [        S[	        S5      [         R                  S9n[         R                  " S5      U " U5      S'   UR                  [         R                  :X  d   e[        S[	        S5      [         R                  S9n[         R                  " S5      U " U5      S'   g ! , (       d  f       N= f! , (       d  f       GMQ  = f)	Nr   r&   rI   r   r   Tr6   rT  )
r+   r   r   r   r   r   r   r   r  rJ   )ri   rJ   rN   s      r0   'test_setitem_bool_int_float_consistencyr%    s   
 **bhh'QeAhe4]]9O<"&KQ = QeAhd3]]9O<1XCF =< ( %("((
3C**S/KQ99    %("**
5C((1+KQ =< =<s   EE"
E	"
E2	c                  |    [        / SQ/ SQS9n SU S'   [        / SQ/ SQ[        S9n[        R                  " X5        g )	NrF   r   r9   rs   r   )r6   r8   r&   rs   r5   r7   r   r   rI   rC  rN   rB   s     r0   $test_setitem_positional_with_castingr)    s6    
 /
2CCFn,>fMH3)r3   c                  r    [        / SQ/ SQS9n SU S'   [        / SQ/ SQS9n[        R                  " X5        g )NrF   r   r9   rc  r   )r6   r8   r&   rc  r'  r   r(  s     r0   .test_setitem_positional_float_into_int_coercesr+    s4    
 /
2CCFn,>?H3)r3   c                  .   [        / SQ/ SQS9n U R                  R                  (       a   eSU S'   [        / SQU R                  S9n[        R                  " X5        SU S'   [        / SQ/ S	QS9n[        R                  " X5        [
        R                  " [        S5      5      S S S
2   n[        [        [        U5      5      US9nUR                  [        5      R                  [        S/5      5      n[        / SQUS9nSUS'   [        R                  " X55        [        R                  " U R                  SS//5      n[        [        [        U5      5      US9nUR                  5       nSUR                   S'   SUS'   [        R                  " Xx5        g )Nr6  )r   @rb  ffffff@r9   r"   r&   )r6   r8   r"   r(   r'   )r6   r8   r"   r(   r'   )r  r-  rb  r.  g      @r8   r(   )r   r6   r8   r&   r(   r   r   r9  Bc   )r   r:   _should_fallback_to_positionalr>   r?   r   rd  r   r  r  rK   appendr   r   r   r<   r=   )	rN   rB   iir   	exp_index	expected2r   r  	expected3s	            r0   test_setitem_int_not_positionalr7    sI    %9
:Cyy7777 CFm3995H3) CF&.GHH3)		"	"59	-cc	2B%B.+D		&!((s4I);IDG4+		 	 #))c3Z!8	9B%B.+D		IIMM!DG4+r3   c                  (   [        / SQ/ SQS.5      n U R                  S5      R                  5       nSU/ SQ'   [        / SQSS9n[        R
                  " X5        S	U R                  / SQS
4'   [        S
/ SQ05      n[        R                  " X5        g )NrF   )r(   r'   r*   )r5   r7   r7   r   )TFF)r   r'   r*   )rn  rg  r"   r5   )r"   r8   r&   )r   popr<   r   r>   r?   r=   assert_frame_equal)r  rA   rB   s      r0   test_setitem_with_bool_indexerr;    s     
3	4BVVC[F#$F 93/H6,(*BFF$%#z*+H"'r3   sizer   )TFFFFitemr  c                    [         R                  " X5      n[         R                  " U [        S9n[	        U5      nUR                  5       S:w  a0  Sn[        R                  " [        US9   U" U/5      Xd'   S S S 5        g U" U/5      Xd'   [	        [         R                  " U [        S95      nX(U'   [        R                  " Xh5        g ! , (       d  f       g = f)Nrd   r6   zKcannot set using a list-like indexer with a different length than the valuer   )r+   resizer   r  r   r  r   r   r  r>   r?   )	r<  r   r=  r  	selectionrn  rN   r   rB   s	            r0   7test_setitem_bool_indexer_dont_broadcast_length1_valuesrA    s     		$%I99T'D
,C}}!$ 	 ]]:S1 $[CN 21 dV"))D67"
s- 21s   *C
Cc                  r   [        SSS9n [        U 5      nUR                  5       n[        R                  " S[
        S9nSX'   UR                  U R                  :X  d   e[        R                  " X5        UR                  USSS9  UR                  U R                  :X  d   e[        R                  " X5        g )Nr\   r&   r5  rd   r   Tr  )
r   r   r<   r+   r  r  rJ   r>   r?   r   )r*  rN   rj   r   s       r0   (test_setitem_empty_mask_dont_upcast_dt64rC    s    
\1
-C
+C88:D88AT"DCI99		!!!3%HHT5$H'99		!!!3%r3   c                      [        / SQ[        S9n [        / SQ[        S9n/ SQnX   X'   [        / SQ[        S9n[        R                  " X5        g )N)TTTrd   )FFF)FTFr   )r   r  r>   r?   )s1s2	conditionrB   s       r0   ,test_setitem_bool_dtype_with_boolean_indexerrH  ,  sE    	"$	/B	%T	2B$IMBM)6H2(r3   )xr  r   r   decimalr   numpyr+   r   pandas.compat.numpyr   pandas.errorsr   pandas.core.dtypes.commonr   pandasr	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   pandas._testing_testingr>   pandas.tseries.offsetsr   r   r   r   r   r   r4  rH  r  r  r  r  r  r  r   r   r  r,   r  rK   r   r  r  r  r  r1  rD  rX  r`  rs  r   r  r  r  r  r  int32r  r  r  r  
complex128r  r  r  r   r  r  r  r]  r  uint32r  r  uint64r  r  r  r  r  r  r  r  r  r  r  r#  r%  r)  r+  r7  r;  r   r  r  minr   tuplerA  rC  rH  r   r3   r0   <module>rX     s       . ' 2     ,  'J. J.Z. .8-1 -1`[A [A|! !H. .*B+ B+J%:% 2eJ eJP  >!Q'(!Q!Q!QH) &	
 	/0BFFArvvq"&&!RVVQGH$a *	
 	-.BFFD"&&%0?$a +	
 	299R=!BFFBFFBFFBFFBFFAq!QJK$N%	
 	9BFFAq>"#	
 	E7OBFF86*/	
 	E4=!BFFD>0$	
k=@B	$= 	C@B	"(A "J%6 %P8 62-%> 2-j+D @  
		FBFFAq>23		 &"&&#s);"<= HT1a((4A*>qRS@TUVC$1-xa/CDE	

 
%	&/C(DE6 04M 0f(A : 	3*	u%	3*	t$HHaeQUQY'rzz:	

"/H "
"* bhhsm 45.G  6$  AB$=  C.-, - hhqk277D!BHHTNBHHd#CD3| 3	3  67vh/  0 8 	
FD	k266*E2P PP 	
BMM5!	bmmU#	&	vt	8, 88 	
FD	fd	
FD	fd		tU
>| >
> 	
BHHe	bjj$	%	vt	$ $$ 	
BJJ	bjj% 	%	vt	,, ,, 	
BJJJJ++##""D $ 			
 
%	vt	!bjj%(	1rzz5) 
288BII&**	+RZZ>	1rzz5)	!bjj%(+4
F, 
F54
F | 2 	<	 "2E:	
FD	fd	\ 		 	<L	13OQVW	<L	13OQVW	<	 &$/	
FD		| 			 	8	/7	
FD	fdl  	E6&s+Xa6-JK vh/  0 "J*.&&0	*	*,D( q!-
/$H 
S"&&"((5/--rxx/B/BC 4 78. 9 ..8&)r3   