
    Mhi                        S SK JrJ r   S SKJr  S SKrS SKrS SKrS SKJ	r	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"  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 \9S'S(9\Rn                  " \" / S)Q5      \" \Rp                  S#\Rp                  S!\Rp                  S*\Rp                  S+\Rp                  /	5      \:" SSS"5      SS,S(9\Rn                  " \" / S-Q5      \" \Rp                  S.\Rp                  S//\;S&9\:" SSS"5      \9S0S(9\Rn                  " \" \Rx                  " S15      5      \" \Rp                  \Rp                  \Rp                  \Rp                  \Rp                  S!S2S*S3S+/
5      \:" SS!5      SS4S(9\Rn                  " \" / S5Q5      \" \Rp                  S"S#/5      S SS6S(9\Rn                  " \" S//5      \" \Rp                  /\;S&9S \9S7S(9\Rn                  " \" S/S./5      \" \Rp                  S./\;S&9S \9S8S(9/5       " S9 S:\45      5       r= " S; S<\45      r> " S= S>\45      r? " S? S@\45      r@ " SA SB\45      rA " SC SD\45      rB\Rj                  Rm                  SE\" / S5Q5      \" \Rp                  S"S#/5      S4\" / SFQ5      \" \Rp                  SGSH/5      S4\" \ " SIS S 5      \ " SIS S"5      \ " SIS S#5      /5      \" \\ " SIS S"5      \ " SIS S#5      /5      S4\" / SJQ5      \" / SKQ5      S4/5       " SL SM\45      5       rC " SN SO\45      rD " SP SQ\45      rE\Rj                  Rm                  SR\R:                  " SGSH/5      S4\R:                  " SSST/5      \94\R:                  " S"SU-  S"SU-  S -   /\R                  S&9\94/5       " SV SW\45      5       rG\Rj                  Rm                  SXSY\R                  " SY5      /5       " SZ S[\45      5       rI\Rj                  Rm                  SX/ S\Q5       " S] S^\45      5       rJ " S_ S`\45      rK\Rj                  Rm                  Sa\R                  " S 5      \R                  S4\R                  " SY5      \R                  \94/5       " Sb Sc\K5      5       rN\Rj                  Rm                  SX/ SdQ5      \Rj                  Rm                  Se\;/5       " Sf Sg\K5      5       5       rO\Rj                  Rm                  SaS \R                  S4Sh\R                  S4Si\R                  S4S.\;\94/5       " Sj Sk\K5      5       rQ\Rj                  Rm                  SaS \;\94Sl\;\94S#\;\94Sh\;\94Si\;\94S.\RS4/5       " Sm Sn\K5      5       rS\Rj                  Rm                  SaS \R                  S4Sh\R                  \94Si\R                  \94S.\;\94/5       " So Sp\K5      5       rU\Rj                  Rm                  SaS \R                  S4Sh\R                  S4Si\R                  \94S.\;\94/5       " Sq Sr\K5      5       rV\Rj                  Rm                  SaS \R                  S4\Rn                  " Sh\R                  S\Rj                  R                  \
(       + =(       d6    \
=(       a-    \	(       + =(       a    \R                  R                  SsSt5      Su:g  SvSw9Sx9Si\R                  \94S.\;\94\R                  " S"5      \R                  S4\R                  " S"5      \R                  S4\R                  " \R                  " \R                  5      R                  5      \R                  \94\R                  " S"5      \R                  S4\R                  " S"5      \R                  S4/	5       " Sy Sz\K5      5       r`\Rj                  Rm                  Sa\" S{5      S|S4S \;\94S}\;\94/5       " S~ S\K5      5       ra\Rj                  Rm                  Sa\" S{SS9SS4\" S{SS9SS4\" S{5      \;\94S \;\94/5       " S S\K5      5       rb\Rj                  Rm                  Sa\" S5      SS4S \;\94S}\;\94/5       " S S\K5      5       rc\Rj                  Rm                  SXS\" SSS9\" S S"SS9/5      \Rj                  Rm                  Se\;/5       " S S\K5      5       5       rdS reS rfS rgS rhS riS rjS rkS rlS rmS rnS ro\Rj                  Rm                  S\p" S"S25      5      \Rj                  Rm                  S/ SQS.S//S///5      \Rj                  Rm                  SSG\Rp                  \R                  " \r5      R                  \R                  " \r5      R                  /5      \Rj                  Rm                  SS S S /5      S 5       5       5       5       rtS rug)    )datedatetime)DecimalN)np_version_gt2np_version_gte1p24)IndexingError)is_list_like)NACategorical	DataFrameDatetimeIndexIndexIntervalIntervalIndex
MultiIndexNaTPeriodSeries	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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
   periods               )r   r   r   npnanselfseriess     [/var/www/html/env/lib/python3.13/site-packages/pandas/tests/series/indexing/test_setitem.pytest_setitem_none_nan+TestSetitemDT64Values.test_setitem_none_nan.   s    
:r:;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   r5   r7   indexr   )r   from_tuplesr   copyloctmassert_series_equal)r-   idxresultexpecteds       r/   #test_setitem_multiindex_empty_slice9TestSetitemDT64Values.test_setitem_multiindex_empty_slice<   sM    $$h%9:Ac*;;=

2
v0r2   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r5   r7   r%   )Dater6   otherr9   dtyperF   )r   objectr   todayrF   r-   sers     r/   test_setitem_with_string_index4TestSetitemDT64Values.test_setitem_with_string_indexD   sR     Y&<FKjjlFxx4::<'''6{djjl***r2   c                     [        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/Easternr$   tz)r   r5   )r   r7   )r   r%   )r   r'   r8   rU   r   )r   r   r;   r*   r+   ilocr=   r>   )r-   arrr9   r@   rA   s        r/   )test_setitem_tuple_with_datetimetz_values?TestSetitemDT64Values.test_setitem_tuple_with_datetimetz_valuesL   sW    |<0);;=v66a
v0r2   rT   )rR   UTCz
Asia/Tokyoc           	      j   [        [        SSSU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%   freqr$   rT   datetime64[ns, ]z2016-01-01 00:00rT   2011-01-01 00:00z2016-01-01 02:00rI   
2011-01-01r5   
2012-01-01r7   rH   2012-01-01 00:00r   r   rI   r   r;   r=   r>   )r-   rT   indexer_sliorigexprM   valss          r/   test_setitem_with_tz*TestSetitemDT64Values.test_setitem_with_tzV   sP   jCrJK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(r2   c           	      n   Sn[        [        SSSU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 )NrR   z
2016-11-06r]   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   r5   rf   r7   rH   z2016-11-06 00:00rc   rg   rh   )r-   ri   rT   rj   rk   rM   rl   s          r/   test_setitem_with_tz_dst.TestSetitemDT64Values.test_setitem_with_tz_dst~   sU   jCrJK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(r2   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   rH   c              3   V   #    U  H  n[        U[        R                  5      v   M!     g 7fN)
isinstancer*   
datetime64.0xs     r/   	<genexpr>YTestSetitemDT64Values.test_object_series_setitem_dt64array_exact_match.<locals>.<genexpr>   s     IA:a//s   '))
r   r*   r+   rJ   r   rV   allvaluesr=   r>   )r-   rM   indexervaluerA   s        r/   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-r2    N)__name__
__module____qualname____firstlineno__r0   rB   rN   rX   pytestmarkparametrizerm   rp   r   __static_attributes__r   r2   r/   r   r   -   sI     1+1 [[T#FG%) H%)N')R.r2   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nSn[        R                  " [        US9   [        R
                  " [        US9   SUS'   S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)	Nr4   r"   r8   z5index -11|-1 is out of bounds for axis 0 with size 10;Series.__setitem__ treating keys as positions is deprecatedmatchfooi)r   r   raises
IndexErrorr=   assert_produces_warningFutureWarning)r-   rM   msgwarn_msgs       r/   #test_setitem_negative_out_of_bounds<TestSetitemScalarIndexer.test_setitem_negative_out_of_bounds   sl    cURZurz2 FP]]:S1++MJ C K 21JJ 21s#   A2
A!A2!
A/	+A22
B r   	ser_indexr   r5   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   rJ   rd   *   r8   r   r=   r>   )r-   r   r   rM   idxrrA   s         r/    test_setitem_series_object_dtype9TestSetitemScalarIndexer.test_setitem_series_object_dtype   s[     aV8,s|"i[1Q62$yk:A>hO
s-r2   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   r8   )r   r<   r=   r>   )r-   r9   	exp_valuerM   rA   s        r/   test_setitem_series,TestSetitemScalarIndexer.test_setitem_series   sE     aVnRD0
9a.)
s-r2   r   N)r   r   r   r   r   r   r   r   r=   r<   atr   r*   r+   r   r   r   r2   r/   r   r      s    ! [[Y8[[[1a&1. 2 9. [[/'Arvv;1GH. I.r2   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)keyr   r   g      @g      $@z4\.5g      @)r   r   	TypeErrorformat)r-   datetime_seriesr   s      r/   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"   r8   r   ir&   )r   rangelistr~   rL   s     r/   test_setitem_slice$TestSetitemSlices.test_setitem_slice   s^    U2Yd59o6CD	q~~DS	q~~r2   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 )Nr7      )r7   r'   r)   r   r"            r8   r   r'   )r   r*   randomdefault_rngstandard_normalr~   anyrL   s     r/   test_setitem_slice_integers-TestSetitemSlices.test_setitem_slice_integers   sz    II!!!$44Q7.

 BQBQ1!!####GqL%%'''''r2   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   r8   r   r7   )r   r*   arangefloat64int64r~   r,   s     r/   test_setitem_slicestep(TestSetitemSlices.test_setitem_slicestep   s`    IIb

+299Rrxx3P
 ssssq %%''''r2   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   r5   abcder"   rd   d   r'   )
r   r5   r7   r%   r   r&   r)   r(   r   	   )	r   from_productr   r   r*   r   r   r=   r>   )r-   ri   mir@   rA   s        r/   test_setitem_multiindex_slice/TestSetitemSlices.test_setitem_multiindex_slice   sh    $$q!fd7m%<=		"BHH5r:#&FCaC >C
v0r2   r   N)
r   r   r   r   r   r   r   r   r   r   r   r2   r/   r   r      s    	* ((1r2   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 )Nr5   r7   r   rH   r   TFr   r-   rM   rA   s      r/   test_setitem_mask_cast-TestSetitemBooleanMask.test_setitem_mask_cast	  sY     aVAq69#QCs'BT5M1a&Ag>
s-r2   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        UR                  S	 5      n[        R                  " X55        g ! , (       d  f       N7= f)
Nr7   r   r   r8   r&   item of incompatible dtyper   c                 (    U S:  a  [        U 5      $ U $ Nr   )str)ts    r/   <lambda>LTestSetitemBooleanMask.test_setitem_mask_align_and_promote.<locals>.<lambda>  s    a!eCF$:$:r2   )r   r*   r   r   r   r   roundr;   mapr   r=   r   r   r>   )r-   tsmaskleftrightrA   s         r/   #test_setitem_mask_align_and_promote:TestSetitemBooleanMask.test_setitem_mask_align_and_promote  s    II!!!$44S93PQSUAV

%( 	 Avwwy##C(''!=
 J
 66:;
t.
 
s   /C%%
C3c                 
   [        / SQ5      nUS:  nX   R                  [        5      n[        R                  " [
        SS9   X1U'   S S S 5        [        / SQ5      n[        R                  " X5        g ! , (       d  f       N2= f)N)r   r5   r7   r   r   r   r   )r   12r   )r   r   r   r=   r   r   r>   r-   rM   r   ser2rA   s        r/   test_setitem_mask_promote_strs5TestSetitemBooleanMask.test_setitem_mask_promote_strs!  sm    \"Qwy}}S!''!=
 I

 *+
s-
 
s   A44
B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   s        r/   test_setitem_mask_promote0TestSetitemBooleanMask.test_setitem_mask_promote-  s?    )*01yD	./
s-r2   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 )Nr7   r   r&   )medianr;   r=   r>   reindex_like)r-   string_seriesr   r@   rA   s        r/   test_setitem_boolean+TestSetitemBooleanMask.test_setitem_boolean6  s    3355 ##%$q( 1$
v|X^< ##%%)1Q/!A%q+88G'-
v|X^<r2   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)Nr5   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        r/   test_setitem_boolean_corner2TestSetitemBooleanMask.test_setitem_boolean_cornerF  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 r   )sort_valuesr;   r=   r>   )r-   r   orderedr;   rA   s        r/   $test_setitem_boolean_different_order;TestSetitemBooleanMask.test_setitem_boolean_different_orderT  sR    ++-!!#q[ %%'!"A
t.r2   funcc                     [        / SQ5      nU" / SQ5      nSS/X#'   [        / SQ5      n[        R                  " X$5        g )N)Nr6   NTFTr4   cr4   r6   r  r   )r-   r  rM   r   rA   s        r/    test_setitem_boolean_python_list7TestSetitemBooleanMask.test_setitem_boolean_python_list_  s=     &''(#J	/*
s-r2   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)   r7   r%   r5   )r   r   r=   r>   r<   )r-   any_numeric_ea_dtyperM   rA   loc_sers        r/   'test_setitem_boolean_nullable_int_types>TestSetitemBooleanMask.test_setitem_boolean_nullable_int_typesh  s    \)=>eAh.BC!G,.BC
s-\)=>!%(2FGa
s-\)=>q)=>";;w{3a
s-r2   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&   r7   rd   )r   r   r   rJ   r=   r>   )r-   rM   r   r@   rA   s        r/   Atest_setitem_with_bool_mask_and_values_matching_n_trues_in_lengthXTestSetitemBooleanMask.test_setitem_with_bool_mask_and_values_matching_n_trues_in_lengthx  s{    dVb[!w{dVaZ'5'A+5!H	4&1*tE!H~5
B&Q
v0r2   c                    [        / SQ5      n[        R                  " [        SS9   [        R
                  US'   S S S 5        [        [        R
                  SS/[        S9n[        R                  " X5        g ! , (       d  f       ND= f)Nr  r   r   r   FTrd   )r   r=   r   r   r*   r+   rJ   r>   )r-   r@   rA   s      r/   test_setitem_nan_with_bool1TestSetitemBooleanMask.test_setitem_nan_with_bool  sg    +,''!=
 F1I
 2665$/v>
v0
 
s   A99
B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        [        / SQ5      n[
        R                  " XE5        UR	                  5       n[
        R                  " [        SS9   UR                  X2S	S
9  S S S 5        [
        R                  " Xe5        UR	                  5       nUR                  U) [        U5      5      n[
        R                  " X5        g ! , (       d  f       N= f! , (       d  f       Nx= f)NrE   int8rd   )      r  r   r   )r  r7   r  Tinplace)r   r*   r   r   r;   r=   r   r   r>   r   where	r-   rj   altr   rM   rA   r   ser3ress	            r/   !test_setitem_mask_smallint_upcast8TestSetitemBooleanMask.test_setitem_mask_smallint_upcast  s   iv.hh(9xx+,iik''!=
 sCI
 .)
s-yy{''!=
 IIdI.
 	t.yy{jj$s,
s-!
 

 
s   3EE
E
E&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 )NrE   uint8rd   )   r     r  )r'  r7   r(  Tr  F)check_dtype)	r   r*   r   r   r;   r=   r>   r   r  r  s	            r/   $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%@r2   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   r2   r/   r   r     so    ./
..= %	/ [[VdBHHf%=>. ?.. 11.2Ar2   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(       aD  UR                  R                  R                  UR
                  R                  R                  L d   eOCU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%   rR   rS   r5   D)	r   r   _values_ndarraybase_datar_   r   rV   r-   using_copy_on_writedtir   rM   s        r/   ,test_setitem_invalidates_datetime_index_freqITestSetitemViewCopySemantics.test_setitem_invalidates_datetime_index_freq  s*    Q<@VSk{{#%%%;;'',,		0B0B0G0GGGG;;'',,CII4F4F4K4KKKKxx3{{''' {{#%%%{{##((		0B0B0G0GGGG1v||xx3r2   c                 >   [        SSSS9nUS   n[        U5      nUR                  ULd   eU(       a  UR                  R                  R                  UR
                  R                  R                  L d   eUR                  R                  S   R                  R                  UR
                  R                  R                  L d   eOUR                  R                  R                  UR
                  R                  R                  Ld   eUR                  R                  S   R                  R                  UR
                  R                  R                  Ld   eUR                  R                  S   ULd   e[        US S S2'   US   [        L d   eUS   U:X  d   eg )Nr\   r"   
US/PacificrS   r   r%   )	r   r   r1  r2  r3  r4  _mgrarraysr   r5  s        r/   'test_dt64tz_setitem_does_not_mutate_dtiDTestSetitemViewCopySemantics.test_dt64tz_setitem_does_not_mutate_dti  sI   rlCVSk{{#%%%;;'',,		0B0B0G0GGGG88??1%..33syy7I7I7N7NNNN;;'',,CII4F4F4K4KKKK88??1%..33399;M;M;R;RRRRxxq!,,,CaC1v}}1v||r2   r   N)r   r   r   r   r8  r>  r   r   r2   r/   r-  r-    s    ,r2   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r5   r7   r%   r'   ABCDr8   r   c                     g)NAr   r{   s    r/   r   ?TestSetitemCallable.test_setitem_callable_key.<locals>.<lambda>  s    cr2   )r   r7   r%   r'   )r   r   r=   r>   r   s      r/   test_setitem_callable_key-TestSetitemCallable.test_setitem_callable_key  s:    \f6M-tF|<
s-r2   c                     S n[        / SQ[        S9nXUS:  '   [        SSUS/5      n[        R                  " X#5        g )Nc                     U S-   $ Nr5   r   rG  s    r/   r   ATestSetitemCallable.test_setitem_callable_other.<locals>.<lambda>  s    Ar2   )r5   r7   r   r'   rd   r   r5   r7   r'   )r   rJ   r=   r>   )r-   incrM   rA   s       r/   test_setitem_callable_other/TestSetitemCallable.test_setitem_callable_other  s@     ]&1C!G1aa.)
s-r2   r   N)r   r   r   r   rI  rP  r   r   r2   r/   rA  rA    s    .	.r2   rA  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\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X!'   [        SU/5      n[        R                  " X#5        g )Nrf   rd   /   )r   r   rJ   r=   r>   )r-   r   r.   rA   s       r/   test_setitem_empty_series2TestSetitemWithExpansion.test_setitem_empty_series  s9    %f%"se$
v0r2   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 )	Nr0  rt   )r_   rI   rH   rf   rU  r   ns)	r   r   rJ   r   as_unitr=   r>   r9   r_   )r-   r7  r.   r   rA   s        r/   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7r2   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 	timestamprH   rd   g     r@anything)r   r   rJ   )r-   r^  r.   rA   r@   s        r/   3test_setitem_empty_series_timestamp_preserves_dtypeLTestSetitemWithExpansion.test_setitem_empty_series_timestamp_preserves_dtype  s]    12	K=G+&&)"z'{$!!!r2   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   rb  rH   rc  )rw   r   applymarkerr   r   xfailr   rJ   r=   r>   r<   )r-   rb  using_infer_stringrequestrA   rM   s         r/   #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////r2   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\   r4         @r6   r   r  r	  r8   )r   rJ   r   r=   r>   r   s      r/   *test_setitem_with_expansion_type_promotionCTestSetitemWithExpansion.test_setitem_with_expansion_type_promotion4  sR    6"\*CCC9\2C?W
s-r2   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foobarr5   r.   )r9   name)r;   r9   r   r   r=   r>   )r-   r   rM   apprA   s        r/   test_setitem_not_contained3TestSetitemWithExpansion.test_setitem_not_contained=  sX      "syy(((HaS
:=./
s-r2   c                 j    [        SS/US9nSUS'   [        / SQUS9n[        R                  " X#5        g )Nr5   r7   rd   r"   )r5   r7   r"   r   )r-   r  rM   rA   s       r/   test_setitem_keep_precision4TestSetitemWithExpansion.test_setitem_keep_precisionG  s7    aV#78A*,@A
s-r2   z1na, target_na, dtype, target_dtype, indexer, warnInt64r5   Nr7   r   r   rJ   Float64c                     [        SS/US9n[        R                  " USS9   XU'   S S S 5        US:X  a  SU/OSSU/n[        XS9n	[        R                  " Xy5        g ! , (       d  f       N== f)Nr5   r7   rd   incompatible dtyper   )r   r=   r   r>   )
r-   na	target_narI   target_dtyper   warnrM   expected_valuesrA   s
             r/   test_setitem_enlarge_with_na5TestSetitemWithExpansion.test_setitem_enlarge_with_naN  sl    * aV5)''4HIL J,3qL1i.q!Y>O/>
s-	 JIs   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 )Nr4   r6   r%   zstring[pyarrow_numpy])r   r5   r%   rH   )r   rw   r   rJ   r=   r>   r*   r+   )r-   nulls_fixtureri  rM   rI   rA   s         r/   $test_setitem_enlargement_object_none=TestSetitemWithExpansion.test_setitem_enlargement_object_nonej  s    c3Z A "*]G*L*L $ 	
 3]39ER
s-Fbffq6]***r2   r   )r   r   r   r   rV  r[  r`  r   r   r   r   to_timedelta64to_pytimedeltark  ro  ru  rx  r
   r*   r+   r   r   r  r  r   r   r2   r/   rS  rS    s   18
" [[hh..0h..0	
00$... [[;Wgq$/Wgq$/)Q5)Q5#w!];#w!T2VVR'1d3VVR'1d3VVRIq$7VVRIq$7VVRVVWiD9VVRVVWiD9	
"	.#"	.+r2   rS  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   r5   r   )	r*   zerosflags	writeabler   r9   r   r   
ValueError)r   r.   nr   s       r/   .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   r5   r%   )	r*   r  r  r  r   r   r   r  r   )r   r.   r   s      r/   -test_setitem_slice_into_readonly_backing_datar    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 )Nr6   r4   
categoriesr5   r   FTr{   yr8   )r   r   r;   r=   r>   r9   )rj   rM   rk   s      r/   &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$r2   c                      [        [        / SQ5      5      n [        [        S[        R                  S// SQS95      n[        R                  U S'   [        R
                  " X5        g )NrE   r5   r%   r  )r   r   r*   r+   r=   r>   )rM   rk   s     r/   !test_setitem_nan_into_categoricalr    sG    
Y'
(C
a^	B
CCVVCF3$r2   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%   rn  3)idsc                    [        SS/5      nU(       d	  SS/Ul        [        R                  " [        SS9   X" U5      S'   S S S 5        [        UR                  S   5      [        U5      :X  d   e[        SU/[        UR                  S9nU(       d%  U[        R                  La  [        X/[        SS/S9n[        R                  " XE5        g ! , (       d  f       N= f)NTFr5   r}  r   )rI   r9   )	r   r9   r=   r   r   typerV   rJ   r>   )r-   r  ri   r  rM   rA   s         r/   test_setitem_non_bool_into_bool2TestSetitemCasting.test_setitem_non_bool_into_bool  s     dE]#ACI''=QR"%KQ SCHHQK DI---4+V399E+RWW4sjq!fEH
s- SRs   C
C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        [        U5      n[        R                  " X5        g ! , (       d  f       N0= f)Nr  )TFNr7   r}  r   r5   )r   r1  r   r=   r   r   r>   )r-   rM   r   rW   rA   s        r/   &test_setitem_boolean_array_into_npbool9TestSetitemCasting.test_setitem_boolean_array_into_npbool  s    ()'(bq'BQ{{f$$$''=QR!"gCG S#;
s- SRs   	B
Br   N)r   r   r   r   r   r   r   r  r  r  r   r   r2   r/   r  r    sL    [[Xe}5[[UMt<. = 6..r2   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-   objrA   s      r/   
is_inplace$SetitemCastingEquivalents.is_inplace  s    
 ~~**r2   c                     UnUR                  5       nUR                  nXE" U5      U'   [        R                  " X5        U R	                  XgX5        g rv   )r;   r1  r=   r>   _check_inplace)	r-   r  r   rA   r  r   r  rj   rW   s	            r/   check_indexer'SetitemCastingEquivalents.check_indexer  sG    hhjkkS
s-Jc7r2   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)rI   kindr2  r1  r=   assert_equal)r-   r  rj   rW   r  s        r/   r  (SetitemCastingEquivalents._check_inplace  s`    yy~~+ ||s{{';';;;;{{c))) OOC.r2   c           	         [        U[        5      (       d  [        R                  " S5        [        R
                  " USS9   U R                  XX5Xg5        S S S 5        U[        R                  L aA  [        R
                  " USS9   U R                  XX5[        R                  U5        S S S 5        OSU[        R                  L a@  [        R
                  " USS9   U R                  XX5[        R                  U5        S S S 5        [        X"S-   5      n[        R
                  " USS9   U R                  XX5Xg5        S S S 5        U[        R                  La?  [        X"S-   5      n	[        R
                  " USS9   U R                  XX5Xg5        S S S 5        U/n
[        R
                  " USS9   U R                  XX5Xg5        S S S 5        [        R                  " U
5      n[        R
                  " USS9   U R                  XX5Xg5        S S S 5        S U4 5       n[        R
                  " USS9   U R                  XX5Xg5        S S S 5        g ! , (       d  f       GN= f! , (       d  f       GNi= f! , (       d  f       GN{= f! , (       d  f       GNN= f! , (       d  f       GN= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)NzNot relevant for int keyr}  r   r5   c              3   $   #    U  H  ov   M     g 7frv   r   ry   s     r/   r|   9SetitemCastingEquivalents.test_int_key.<locals>.<genexpr>'  s     #U!U   )rw   intr   skipr=   r   r  r<   r   rV   iatr   slicer*   r   )r-   r  r   rA   r  r  ri   r  rngslcilkeyindkeygenkeys                r/   test_int_key&SetitemCastingEquivalents.test_int_key  s2   #s##KK23''4HIsP J "&& ++D8LM""3XBEE:N NMBGG#++D8LM""3XBFFJO N Cq!''4HIsP J bff$1W%C++D8LM""3XKT N ''4HIs8+R J %''4HIsH;S J $cU#''4HIsH;S JI; JI NM NM JI NM JI JI JIs`   I#I#I0'J9J-J&4J7/K
I
I-0
I?
J
J#&
J47
K
Kc           	         [        U[        5      (       d  [        R                  " S5        U[        R
                  La1  [        R                  " USS9   U R                  XX5Xg5        S S S 5        [        [        [        U5      5      5      U   n[        R                  " USS9   U R                  XX5Xg5        S S S 5        [        R                  " U5      n	[        R                  " USS9   U R                  XX5Xg5        S S S 5        S U	 5       n
[        R                  " USS9   U R                  XX5Xg5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nk= 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     r/   r|   ;SetitemCastingEquivalents.test_slice_key.<locals>.<genexpr><  s     $V!Vr  )rw   r  r   r  r=   r<   r   r  r   r   lenr*   r   )r-   r  r   rA   r  r  ri   r  r  r  r  s              r/   test_slice_key(SetitemCastingEquivalents.test_slice_key+  s+   #u%%KK45bff$++D8LM""3XKT N U3s8_%c*''4HIs8+R J %''4HIsH;S J %V$''4HIsH;S JI NM JI JI JIs0   E%E,E%&E6
E
E"%
E36
F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 [        R                  " USS9   XV" U5      U'   S S S 5        [        R                  " X5        g ! , (       d  f       g = f! , (       d  f       N6= f)Nrd   Tz9boolean index did not match indexed array along dimensionr   r}  )r*   r  shapeboolr;   r	   r  sumr   r   r   r=   r   r>   )	r-   r  r   rA   r  r  ri   r   r   s	            r/   test_mask_key'SetitemCastingEquivalents.test_mask_key@  s    xx		.	hhjSDHHJ!6MCz5),C & 6''4HI%(KT" J
s- 65IIs    C)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;   r1  r
   rI   rJ   fillnaisnar=   r>   r  )r-   r  r   rA   r  r  r  r   r   rj   rW   r"  s               r/   test_series_where+SetitemCastingEquivalents.test_series_whereQ  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Xr'   U(       aS  UR                  [
        :X  a?  [        R                  " [        SS9   [        U5      R                  U) U5        S S S 5        g [        U5      R                  U) U5      n[        X3R                  S9n	[        R                  " X5        g ! , (       d  f       g = fNrd   TzScalar mustr   )r*   r  r  r  rI   rJ   r   r   r   r   r  r=   assert_index_equal)
r-   r  r   rA   r  r  ri  r   r"  expected_idxs
             r/   test_index_where*SetitemCastingEquivalents.test_index_wherel  s    xx		.	#))v"5y>c
  $, ?> *""D5#.C @L!!#4 ?>s   C
Cc                    [         R                  " UR                  [        S9nSXr'   U(       aQ  UR                  [
        :X  a=  [        R                  " [        SS9   [        U5      R                  Xu5        S S S 5        g [        U5      R                  Xu5      n[        R                  " U[        X3R                  S95        g ! , (       d  f       g = fr  )r*   r  r  r  rI   rJ   r   r   r   r   putmaskr=   r  )	r-   r  r   rA   r  r  ri  r   r"  s	            r/   test_index_putmask,SetitemCastingEquivalents.test_index_putmaskx  s    xx		.	#))v"5y>c
""4- ?> *$$T/C!!#uX^^'LM	 ?>s   C
Cr   N)r   r   r   r   __doc__r   fixturer  r  r  r  r  r  r  r  r  r   r   r2   r/   r  r    sK     ^^+ +8/"THT*."86
5	Nr2   r  zobj,expected,key,warnr5   r&   r7   r%   r'   zinterval[float64]rd   interval_int_na_value)id)	r7   r%   r'   r&   r)   r(   r   r   r"   r(   r   int_series_slice_key_step)TTFFTFbool_series_slice_key_stepr"   r)   r   int_series_slice_keyrE   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)TestSetitemCastingEquivalentsi  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-   rj  s     r/   r  !TestSetitemCastingEquivalents.val  s     }}r2   r   )r   r   r   r   r   r  r*   r+   r   r
   r  r   r   r2   r/   r  r    s7    D ^^BFFBJJu$5tR@A Br2   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'   rY  )r*   timedelta64)r-   rb  s     r/   r  %TestSetitemTimedelta64IntoNumeric.val  s    ^^At$	r2   r  c                     UR                   $ rv   r  r  s     r/   rI   'TestSetitemTimedelta64IntoNumeric.dtype      }}r2   c                 f    [         R                  " S5      R                  U5      n[        U5      nU$ )Nr&   )r*   r   astyper   r-   rI   rW   rM   s       r/   r  %TestSetitemTimedelta64IntoNumeric.obj  s(    iil!!%(Sk
r2   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'   rY  r   )r*   r   r  r   rJ   r  rV   r  s       r/   rA   *TestSetitemTimedelta64IntoNumeric.expected  sN    iil!!%(Skjj nnQ-
r2   c                     gr   r   r-   s    r/   r   %TestSetitemTimedelta64IntoNumeric.key      r2   c                     [         $ rv   r   r  s    r/   r  &TestSetitemTimedelta64IntoNumeric.warn      r2   r   N)r   r   r   r   r   r  r  complexr  floatrI   r  rA   r   r  r   r   r2   r/   r  r    s     ^^ 
 ^^GS%01 2 ^^ 
 ^^  ^^  ^^ r2   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     r/   rI   TestSetitemDT64IntoInt.dtype  r  r2   c                 H    [         R                  " SS5      nUS:X  a  X"-
  nU$ )Nz2021-01-18 13:25:00rY  r  )r*   rx   )r-   rI   r  s      r/   scalarTestSetitemDT64IntoInt.scalar  s'    mm148H)C
r2   c                 d    [        XS/[        S9n[        US   [        U5      5      (       d   eU$ )Nr%   rd   r   )r   rJ   rw   r  )r-   r  rA   s      r/   rA   TestSetitemDT64IntoInt.expected  s3    61-V<(1+tF|4444r2   c                     [        / SQ5      $ )NrE   r   r  s    r/   r  TestSetitemDT64IntoInt.obj
  s    i  r2   c                     [        S S5      $ )Nr   r  r  s    r/   r   TestSetitemDT64IntoInt.key  s    T2r2   Nc                 6    UR                   nUc  U$ U" X/5      $ rv   r  )r-   r  rj  boxs       r/   r  TestSetitemDT64IntoInt.val  s#    mm;MF#$$r2   c                     [         $ rv   r  r  s    r/   r  TestSetitemDT64IntoInt.warn  r  r2   r   )r   r   r   r   r   r  rI   r  rA   r  r   r   r*   r   r  r  r   r   r2   r/   r  r    s     ^^Hh/0 1 ^^  ^^ 
 ^^! ! ^^  ^^D$12% 3% ^^ r2   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"   r0  r$   r_   i8c              3   0   #    U  H  o[         L v   M     g 7frv   )r   ry   s     r/   r|   4TestSetitemNAPeriodDtype.expected.<locals>.<genexpr>%  s     %A13hs   )r   r   r   _valuer1  viewr~   )r-   r   rk   s      r/   rA   !TestSetitemNAPeriodDtype.expected!  sX    \,EF&)jjs#x3#%A%A"A"AAA
r2   c                 *    [        [        SSSS95      $ )Nr(  r"   r0  r)  )r   r   r  s    r/   r  TestSetitemNAPeriodDtype.obj(  s    l<#FGGr2   r%   r&   r  c                     UR                   $ rv   r  r  s     r/   r   TestSetitemNAPeriodDtype.key,  r  r2   Nc                     UR                   $ rv   r  r  s     r/   r  TestSetitemNAPeriodDtype.val0  r  r2   c                     g rv   r   r  s    r/   r  TestSetitemNAPeriodDtype.warn4      r2   r   )r   r   r   r   r   r  rA   r  r  r   r*   r+   r  r  r   r   r2   r/   r&  r&    s     ^^  ^^H H ^^AuQ{+, - ^^D"&&>* + ^^ r2   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)TestSetitemNADatetimeLikeDtypei9  )r  rt   zdatetime64[ns, UTC]zdatetime64[ns, US/Central]r  c                     UR                   $ rv   r  r  s     r/   rI   $TestSetitemNADatetimeLikeDtype.dtype?  s     }}r2   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   rI   r   )r-   rI   i8valsr?   s       r/   r  "TestSetitemNADatetimeLikeDtype.objE  s:    L!499F(yyE!!!c{r2   Nr   rY  c                     UR                   $ rv   r  r  s     r/   r  "TestSetitemNADatetimeLikeDtype.valL  s     }}r2   c                     U[         L =(       d=    US L =(       d2    U[        R                  L =(       d    UR                  UR                  :H  $ rv   )r   r*   r+   rI   )r-   r  r  s      r/   r  )TestSetitemNADatetimeLikeDtype.is_inplaceX  s6    
 czSSD[SC266MSSYY#))=SSr2   c                 l    U(       a  UR                   O[        n[        U/[        USS  5      -   US9nU$ )Nr5   rd   )rI   rJ   r   r   )r-   r  r  r  rI   rA   s         r/   rA   'TestSetitemNADatetimeLikeDtype.expected_  s1    '		V3%$s12w-/u=r2   c                     gr   r   r  s    r/   r   "TestSetitemNADatetimeLikeDtype.keye  r	  r2   c                      U(       a  S $ [         $ rv   r  )r-   r  s     r/   r  #TestSetitemNADatetimeLikeDtype.warni  s    !t4}4r2   r   )r   r   r   r   r   r  rI   r  r*   r+   r   r  rx   r  r  rA   r   r  r   r   r2   r/   r:  r:  9  s     ^^X ^^  ^^FFNN5$'MM%&
 ^^T T ^^ 
 ^^  ^^5 5r2   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)	$TestSetitemMismatchedTZCastsToObjectin  c                 *    [        [        SSSS95      $ )N2000r7   
US/CentralrS   r   r   r  s    r/   r  (TestSetitemMismatchedTZCastsToObject.objp  s    j|DEEr2   c                     [        SSS9$ )NrN  rR   rb   )r   r  s    r/   r  (TestSetitemMismatchedTZCastsToObject.valt  s    L11r2   c                     gr   r   r  s    r/   r   (TestSetitemMismatchedTZCastsToObject.keyx  r	  r2   c                 `    [        UR                  S5      [        SSS9/UR                  S9nU$ )NrO  z2000-01-02 00:00:00-06:00rb   rd   )r   
tz_convertr   rI   )r-   r  r  rA   s       r/   rA   -TestSetitemMismatchedTZCastsToObject.expected|  s:     |,5,G ))
 r2   c                     g rv   r   r  s    r/   r  )TestSetitemMismatchedTZCastsToObject.warn  r8  r2   r   Nr   r   r   r   r   r  r  r  r   rA   r  r   r   r2   r/   rL  rL  n  sz    ^^F F ^^2 2 ^^  ^^
 
 ^^ r2   rL  zobj,expected,warn)      ?       @rn  r]  rn  i  )r   r   baz)Nr   r^  c                   \    \ rS rSr\R
                  S 5       r\R
                  S 5       rSrg)TestSeriesNoneCoercioni  c                     gr   r   r  s    r/   r   TestSeriesNoneCoercion.key  r	  r2   c                     g rv   r   r  s    r/   r  TestSeriesNoneCoercion.val  r8  r2   r   N)	r   r   r   r   r   r  r   r  r   r   r2   r/   r`  r`    s2    " ^^  ^^ r2   r`  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        UR                  S:X  d   eg ! , (       d  f       N!= f)Nr'         ?      ?z%Setting an item of incompatible dtyper   r   zInterval[float64, right])	r   from_breaksr   r   r   r=   r   r   rI   )r-   r?   r  r  s       r/   test_setitem_exampleBTestSetitemFloatIntervalWithIntIntervalValues.test_setitem_example  sm    ''a1SksC ''!H
 F
 yy6666	
 
s   A00
A>c                 V    [         R                  " [        S5      5      n[        U5      $ )Nr'   )r   rj  r   r   )r-   r?   s     r/   r  1TestSetitemFloatIntervalWithIntIntervalValues.obj  s     ''a1c{r2   c                     [        SS5      $ )Nrh  ri  )r   r  s    r/   r  1TestSetitemFloatIntervalWithIntIntervalValues.val  s    S!!r2   c                     gr   r   r  s    r/   r   1TestSetitemFloatIntervalWithIntIntervalValues.key  r	  r2   c                 P    U/[        USS  5      -   n[        USS9n[        U5      $ )Nr5   zInterval[float64]rd   )r   r   r   )r-   r  r  datar?   s        r/   rA   6TestSetitemFloatIntervalWithIntIntervalValues.expected  s/    utCG}$D(;<c{r2   c                     [         $ rv   r  r  s    r/   r  2TestSetitemFloatIntervalWithIntIntervalValues.warn  r  r2   r   N)r   r   r   r   rk  r   r  r  r  r   rA   r  r   r   r2   r/   rf  rf    s    
7 ^^  ^^" " ^^  ^^ 
 ^^ r2   rf  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*   rI   r   r   )r-   any_int_numpy_dtyperI   rM   s       r/   r  %TestSetitemRangeIntoIntegerSeries.obj  s&    ,-U1XU+
r2   c                     [        SS5      $ )Nr7   r'   )r   r  s    r/   r  %TestSetitemRangeIntoIntegerSeries.val      Q{r2   c                     [        SS5      $ Nr   r7   r  r  s    r/   r   %TestSetitemRangeIntoIntegerSeries.key  r  r2   c                 J    [         R                  " U5      n[        / SQUS9nU$ )N)r7   r%   r7   r%   r'   rd   )r*   rI   r   )r-   r|  rI   rk   s       r/   rA   *TestSetitemRangeIntoIntegerSeries.expected  s"    ,-_E2
r2   c                     g rv   r   r  s    r/   r  &TestSetitemRangeIntoIntegerSeries.warn  r8  r2   r   Nr[  r   r2   r/   ry  ry    sz     ^^ 
 ^^  ^^  ^^ 
 ^^ r2   ry  z	val, warn      @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$ r{  )r   r   r*   r   r  s    r/   r  ,TestSetitemFloatNDarrayIntoIntegerSeries.obj  s    eAhbhh//r2   c                     [        SS5      $ r  r  r  s    r/   r   ,TestSetitemFloatNDarrayIntoIntegerSeries.key  r  r2   c                     US   S:X  a  [         R                  nO[         R                  n[         R                  " [	        S5      US9nXS S& [        U5      $ )Nr   r7   r&   rd   )r*   r   r   r   r   r   )r-   r  rI   
res_valuess       r/   rA   1TestSetitemFloatNDarrayIntoIntegerSeries.expected   sG    q6Q;HHEJJEXXeAhe4
2Aj!!r2   r   N)
r   r   r   r   r   r  r  r   rA   r   r   r2   r/   r  r    sJ     ^^0 0 ^^  ^^" "r2   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$ )NrE   rd   r   r*   r  r  s    r/   r  +TestSetitemIntoIntegerSeriesNeedsUpcast.obj  s    irww//r2   c                     grM  r   r  s    r/   r   +TestSetitemIntoIntegerSeriesNeedsUpcast.key  r	  r2   c                 6    [        / SQ[        R                  S9$ )N)r5   r  r%   rd   )r   r*   int16r  s    r/   rA   0TestSetitemIntoIntegerSeriesNeedsUpcast.expected  s    k22r2   c                     [         $ rv   r  r  s    r/   r  ,TestSetitemIntoIntegerSeriesNeedsUpcast.warn  r  r2   r   Nr   r   r   r   r   r  r  r   rA   r  r   r   r2   r/   r  r    s`    ^^0 0 ^^  ^^3 3 ^^ r2   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$ )NrE   i4rd   r  r  s    r/   r  !TestSmallIntegerSetitemUpcast.obj"  s    it,,r2   c                     gr   r   r  s    r/   r   !TestSmallIntegerSetitemUpcast.key&  r	  r2   c                 8    US-  S:w  a  SnOSn[        USS/US9$ )Nr5   r   f8r*  r7   r%   rd   r  )r-   r  rI   s      r/   rA   &TestSmallIntegerSetitemUpcast.expected*  s*    7a<EEsAqk//r2   c                     [         $ rv   r  r  s    r/   r  "TestSmallIntegerSetitemUpcast.warn2  r  r2   r   Nr  r   r2   r/   r  r    sb     ^^- - ^^  ^^0 0 ^^ r2   r  c                   \    \ rS rSr\R
                  S 5       r\R
                  S 5       rSrg)CoercionTesti7  c                     grM  r   r  s    r/   r   CoercionTest.key:  r	  r2   c                 2    [        U5      nX5U'   [        XTS9$ )Nrd   )r   r   )r-   r  r   r  	exp_dtyperl   s         r/   rA   CoercionTest.expected>  s    CyS	d,,r2   r   N)	r   r   r   r   r   r  r   rA   r   r   r2   r/   r  r  7  s2     ^^  ^^- -r2   r  zval,exp_dtype,warnc                   8    \ rS rSr\R
                  S 5       rSrg)TestCoercionInt8iE  c                 6    [        / SQ[        R                  S9$ )NrC  rd   r  r  s    r/   r  TestCoercionInt8.objK  s    l"''22r2   r   Nr   r   r   r   r   r  r  r   r   r2   r/   r  r  E  s     ^^3 3r2   r  )r5   皙?      ?      ?Tr  c                   \    \ rS rSr\R
                  S 5       r\R
                  S 5       rSrg)TestCoercionObjectiP  c                 "    [        / SQ[        S9$ )N)r4   r6   r  drd   )r   rJ   r  s    r/   r  TestCoercionObject.objT  s    *&99r2   c                     g rv   r   r  s    r/   r  TestCoercionObject.warnX  r8  r2   r   N	r   r   r   r   r   r  r  r  r   r   r2   r/   r  r  P  s2     ^^: : ^^ r2   r  r  r  c                   8    \ rS rSr\R
                  S 5       rSrg)TestCoercionComplexi]  c                     [        / SQ5      $ )N)r  y       @       @y      @      @y      @      @r  r  s    r/   r  TestCoercionComplex.objh  s    677r2   r   Nr  r   r2   r/   r  r  ]  s     ^^8 8r2   r  r  c                   8    \ rS rSr\R
                  S 5       rSrg)TestCoercionBoolim  c                 "    [        / SQ[        S9$ )N)TFTFrd   )r   r  r  s    r/   r  TestCoercionBool.objz  s    0==r2   r   Nr  r   r2   r/   r  r  m  s     ^^> >r2   r  c                   8    \ rS rSr\R
                  S 5       rSrg)TestCoercionInt64i  c                     [        / SQ5      $ )NrC  r  r  s    r/   r  TestCoercionInt64.obj  s    l##r2   r   Nr  r   r2   r/   r  r    s     ^^$ $r2   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    r/   r  TestCoercionFloat64.obj  s    *++r2   r   Nr  r   r2   r/   r  r    s     ^^, ,r2   r  NPY_PROMOTION_STATElegacyweakzbnp.float32(1.1) ends up as 1.100000023841858, so np_can_hold_element raises and we cast to float64re  )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    r/   r  TestCoercionFloat32.obj  s    *"**==r2   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   rA   r  r  ri   r  	__class__s	           r/   r  "TestCoercionFloat32.test_slice_key  s4    s:Vc5!! !DEE "r2   r   )
r   r   r   r   r   r  r  r  r   __classcell__)r  s   @r/   r  r    s(    D ^^> >F Fr2   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95      $ )Nre   r0  r'   )r_   r$   rP  r  s    r/   r  TestCoercionDatetime64.obj  s    jCCDDr2   c                     g rv   r   r  s    r/   r  TestCoercionDatetime64.warn  r8  r2   r   Nr  r   r2   r/   r  r    s4     ^^E E ^^ r2   r  rR   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           	      0    Sn[        [        SSSUS95      $ )NrR   re   r0  r'   r^   rP  )r-   rT   s     r/   r  TestCoercionDatetime64TZ.obj  s    jCrJKKr2   c                     g rv   r   r  s    r/   r  TestCoercionDatetime64TZ.warn  r8  r2   r   Nr  r   r2   r/   r  r    s4     ^^L L ^^ r2   r  z12 dayztimedelta64[ns]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'   r#   )r   r   r  s    r/   r  TestCoercionTimedelta64.obj  s    ogq9::r2   c                     g rv   r   r  s    r/   r  TestCoercionTimedelta64.warn  r8  r2   r   Nr  r   r2   r/   r  r    s2     ^^; ; ^^ r2   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%   r0  r)  r5   r&   r  c                 ,    [        UR                  5      $ rv   )r   r  r  s     r/   r  TestPeriodIntervalCoercion.obj  s     gmm$$r2   c                     [         $ rv   r  r  s    r/   r  TestPeriodIntervalCoercion.warn  r  r2   r   N)r   r   r   r   r   r  r   r   r  r  r   r   r2   r/   r  r  
  sR     ^^qs;1a 
%% ^^ r2   r  c                     [        / SQ/ SQS9n [        / SQ/ SQS9nU R                  5       n[        R                  " [        SS9   SUR
                  S'   S S S 5        [        R                  " X!5        U R                  5       n[        R                  " [        SS9   SUR                  S'   S S S 5        [        R                  " X!5        U R                  5       n[        R                  " [        SS9   SUS'   S S S 5        [        R                  " X!5        U R                  5       n[        R                  " [        SS9   SUR                  S	'   S S S 5        [        R                  " X!5        U R                  5       n[        R                  " [        SS9   SUR                  S	'   S S S 5        [        R                  " X!5        U R                  S
5      nUR                  S
5      nUR                  5       n[        R                  " [        SS9   SUR
                  S'   S S S 5        [        R                  " XT5        UR                  5       n[        R                  " [        SS9   SUR                  S'   S S S 5        [        R                  " XT5        UR                  5       n[        R                  " [        SS9   SUR                  S'   S S S 5        [        R                  " XT5        UR                  5       n[        R                  " [        SS9   SUR                  S'   S S S 5        [        R                  " XT5        g ! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GNv= f! , (       d  f       GN1= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN@= f! , (       d  f       N= f! , (       d  f       N= f)Nr   r5   r7   r	  r8   )r   皙@r7   r}  r   r  r6   r5   rF  )r6   rF  )r5   r   )r   r;   r=   r   r   r   r>   r<   r  rV   to_frameassert_frame_equal)rj   rA   rM   orig_dfexpected_dfdfs         r/   
test_20643r    s   )?3Dk9H
))+C		#	#M9M	Ns 
O3)
))+C		#	#M9M	N 
O3)
))+C		#	#M9M	NC 
O3)
))+C		#	#M9M	N
 
O3)
))+C		#	#M9M	N 
O3)mmC G##C(K	B		#	#M9M	Nh 
O"*	B		#	#M9M	Nx 
O"*	B		#	#M9M	N 
O"*	B		#	#M9M	Nt 
O"*[ 
O	N
 
O	N
 
O	N
 
O	N
 
O	N 
O	N
 
O	N
 
O	N
 
O	Nsl   MM4M)M;NN(N1?OO
M
M&)
M8;
N

N
N.1
O 
O
O"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	  r8   r5   r7   r   )r   r*   r+   r;   r  r=   r>   rV   )rj   rA   rM   s      r/   test_20643_commentr	  U  sr     )?3Drvvq!nO<H
))+CCGGAJ3)
))+CCHHQK3)r2   c                     [        / SQ5      n [        R                  " [        SS9   X S:H  ==   S-  ss'   S S S 5        [        / SQ5      n[        R                  " X5        [        / SQ5      n [        R                  " [        SS9   U S==   S-  ss'   S S S 5        [        R                  " X5        [        / SQ5      n [        R                  " [        SS9   U R
                  S==   S-  ss'   S S S 5        [        R                  " X5        [        / SQ5      n [        R                  " [        SS9   U R                  S==   S-  ss'   S S S 5        [        R                  " X5        [        / SQ5      n [        R                  " [        SS9   U R                  S==   S-  ss'   S S S 5        [        R                  " X5        [        / SQ5      n [        R                  " [        SS9   U R                  S==   S-  ss'   S S S 5        [        R                  " X5        g ! , (       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)NrE   r}  r   r7   rh  )r5   r  r%   r5   )	r   r=   r   r   r>   r<   rV   r  r   )rM   rA   s     r/   
test_15413r  d  s   

C		#	#M9M	N1H 
Ok"H3)

C		#	#M9M	NA# 
O3)

C		#	#M9M	N
c
 
O3)

C		#	#M9M	Ns 
O3)

C		#	#M9M	N
c
 
O3)

C		#	#M9M	Nq	S	 
O3)9 
O	N 
O	N
 
O	N
 
O	N
 
O	N
 
O	NsG   H%H7I	6II-.I>%
H47
I	
I
I*-
I;>
Jc                     [         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        [        USSSS	/[         R                  S
9n[        R                  " X5        g ! , (       d  f       NB= f)Nr&   r  r}  r   r   r5   r7   r%   r'   rd   )r*   r   r  r   r   iinfomaxr=   r   r   r>   rW   rM   r  rA   s       r/   test_32878_int_itemsizer    s    
))A,

d
#C
+C
((288BHH%))
*C		#	#M9M	NA 
OsAq!Q'rxx8H3) 
O	Ns   C
Cc                     [         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        US   U:X  d   e[        USSS	S
/SS9n[        R                  " X5        g ! , (       d  f       N?= f)Nr&   c8c16r}  r   r   r5   r7   r%   r'   rd   )r*   r   r  r   finfor   r  r=   r   r   r>   r  s       r/   test_32878_complex_itemsizer    s    
))A,

d
#C
+C
((2::

"
"C
**U
C 
	#	#M9M	NA 
Oq6S==sAq!Q'u5H3)	 
O	Ns   	C
Cc                     [        / SQ/ SQS9n[        R                  " [        SS9   SU " U5      S'   S S S 5        [        / SQ/ SQ[        S	9n[        R
                  " X5        g ! , (       d  f       N8= f)
NrE   r	  r8   r}  r   testr6   )r5   r  r%   rH   r   r=   r   r   rJ   r>   )
indexer_alrM   rA   s      r/   
test_37692r    sY    
/
2C		#	#M9M	N%
3 
OnO6JH3) 
O	Ns   A&&
A4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        UR                  [        :X  d   e[        S[	        S5      [        S9n[
        R                  " [        SS9   U" S5      US'   S S S 5        UR                  [        :X  a  M   e   [        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       GN'= f! , (       d  f       N= f)	Nr   r%   rH   r}  r   Tr5   r\  )r*   r   r   r   r   r=   r   r   rI   rJ   r  )ri   rI   rM   s      r/   'test_setitem_bool_int_float_consistencyr    s5   
 **bhh'QeAhe4''=QR"&KQ SyyF"""QeAhd3''=QR1XCF SyyF""" ( %("((
3C**S/KQ99    %("**
5C((1+KQ! SR
 SRs   E=,F=
F	
F	c                      [        / SQ/ SQS9n Sn[        R                  " [        US9   SU S'   S S S 5        [        / SQ/ SQ[        S	9n[        R
                  " X5        g ! , (       d  f       N8= f)
NrE   r	  r8   r   r   rs   r   )rs   r7   r%   rH   r  rM   r   rA   s      r/   $test_setitem_positional_with_castingr    sZ     /
2CLH		#	#M	BA 
CkGH3) 
C	Bs   A""
A0c                      [        / SQ/ SQS9n Sn[        R                  " [        US9   SU S'   S S S 5        [        / SQ/ SQS9n[        R                  " X5        g ! , (       d  f       N3= f)	NrE   r	  r8   r   r   ri  r   )ri  r7   r%   )r   r=   r   r   r>   r  s      r/   .test_setitem_positional_float_into_int_coercesr!    sX     /
2CLH		#	#M	BA 
Ck9H3) 
C	Bs   A
A+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 )NrC  )r   @rn  ffffff@r8   r"   r%   )r5   r7   r"   r'   r&   )r5   r7   r"   r'   r&   )r  r#  rn  r$  g      @r7   r'   )r   r5   r7   r%   r'   r   r   rF  Bc   )r   r9   _should_fallback_to_positionalr=   r>   r   rj  r   r  r  rJ   appendr   r   r   r;   r<   )	rM   rA   iir   	exp_index	expected2r   r!  	expected3s	            r/   test_setitem_int_not_positionalr-    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+r2   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 )NrE   )r'   r&   r)   )r4   r6   r6   r   )TFF)r   r&   r)   )rt  rs  r"   r4   )r"   r7   r%   )r   popr;   r   r=   r>   r<   r  )r  r@   rA   s      r/   test_setitem_with_bool_indexerr0    s     
3	4BVVC[F#$F 93/H6,(*BFF$%#z*+H"'r2   sizer   )TFFFFitemr!  c                 0    [         R                  " U /5      $ rv   )r*   r   rG  s    r/   r   r     s    bhhsmr2   c                     U /$ rv   r   rG  s    r/   r   r     s    sr2   c                     U 4$ rv   r   rG  s    r/   r   r     s    qdr2   c                    [         R                  " X5      n[         R                  " U [        S9n[	        U5      nUR                  5       S:w  a/  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   r5   zKcannot set using a list-like indexer with a different length than the valuer   )r*   resizer   r  r   r  r   r   r  r=   r>   )	r1  r   r2  r!  	selectionrt  rM   r   rA   s	            r/   7test_setitem_bool_indexer_dont_broadcast_length1_valuesr9    s      		$%I99T'D
,C}}!$ 	 ]]:S1 YCN 21 T"))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%   r#   rd   r   Tr  )
r   r   r;   r*   r  r  rI   r=   r>   r   )r7  rM   rj   r   s       r/   (test_setitem_empty_mask_dont_upcast_dt64r;  3  s    
\1
-C
+C88:D88AT"DCI99		!!!3%HHT5$H'99		!!!3%r2   )vr   r   decimalr   osnumpyr*   r   pandas.compat.numpyr   r   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   pandas._testing_testingr=   pandas.tseries.offsetsr   r   r   r   r   r-  rA  rS  r  r  r  r  r  r  r   r   r  r+   r   r  rJ   r   r  r  r  r&  r:  rL  r`  rf  ry  r   r  r  r  r  r  int32r  r  r  
complex128r  r  r  r   r  r  r  rh  environgetr&  uint32r  r  uint64r  r  r  r  r  r  r	  r  r  r  r  r  r  r!  r-  r0  r   r  r  minr9  r;  r   r2   r/   <module>rM     s>    	   ( 2     *  'J. J.Z. .<-1 -1`pA pAf( (V. .*}+ }+@%:%. .BcN cNL  >!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5%> 25j+D @  
		FBFFAq>2D9		 &"&&#s);"<dC HT1a((4A*>qRS@TUVC$1-xa/CDE	
 
%	&/C(DdK 6 ! $4M $N(A : 	3*	t$	3*	}-HHaeQUQY'rzz:	

"/H "
"* bhhsm 45.G  6$  AB$=  C.-, - hhqk277D!BHHTNBHHm#LM3| 3	3  67vh/  0 8 	
BMM4 	bmmT"	%	v}%	8, 88 	
FM"	fm$	
FM"	fm$	'	tT
>| >
> 	
BHHd	bjj-(	.	v}%	$ $$ 	
BJJ	bjj$	.	v}%	,, ,, 	
BJJJJ++##** * V ..VJJNN+@(KvUD $ 		
" 
.	v}%	!bjj$'	1rzz4( 
288BII&**	+RZZG	1rzz4(	!bjj$'9 B
F, 
FC B
F 	<	 "2D9	
FM"	fm$	\ 		 	<L	13OQUV	<L	13OQUV	<	 &-8	
FM"		| 			 	8	/6	
FM"	fm$l  	E6&s+Xa6-JK vh/  0 4+n* *F***&4	*	*,D( q!-
/$H 
S"&&"((5/--rxx/B/BC
 	#]NC. ..8&r2   