
    Owgi                        d dl mZm Z  d dlmZ d dlZd dlZd dlZd dlm	Z	m
Z
 d dlmZ d dlmZ d dlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z" d dl#m$Z% d dl&m'Z'  G d	 d
      Z( G d d      Z) G d d      Z* G d d      Z+ G d d      Z, G d d      Z- G d d      Z.d Z/d Z0d Z1d Z2 G d d      Z3 G d d      Z4ejj                  jm                  d ejn                   e e d d!             e ed d"      ejp                   ed#d$       ed$d!      gd%&      d e9d'(       ejn                   eg d)       eejp                  d#ejp                  d!ejp                  d*ejp                  d+ejp                  g	       e:ddd"      dd,(       ejn                   eg d-       eejp                  d.ejp                  d/ge;&       e:ddd"      e9d0(       ejn                   e ejx                  d1             eejp                  ejp                  ejp                  ejp                  ejp                  d!d2d*d3d+g
       e:dd!      dd4(       ejn                   eg d5       eejp                  d"d#g      d dd6(       ejn                   ed/g       eejp                  ge;&      d e9d7(       ejn                   ed/d.g       eejp                  d.ge;&      d e9d8(      g       G d9 d:e4             Z= G d; d<e4      Z> G d= d>e4      Z? G d? d@e4      Z@ G dA dBe4      ZA G dC dDe4      ZBejj                  jm                  dE eg d5       eejp                  d"d#g      df eg dF       eejp                  dGdHg      df e e dId d        e dId d"       e dId d#      g       ee e dId d"       e dId d#      g      df eg dJ       eg dK      dfg       G dL dMe4             ZC G dN dOe4      ZD G dP dQe4      ZEejj                  jm                  dR ej:                  dGdHg      df ej:                  dSdTg      e9f ej:                  d"dUz  d"dUz  d z   gej                  &      e9fg       G dV dWe4             ZGejj                  jm                  dXdY ej                  dY      g       G dZ d[e4             ZIejj                  jm                  dXg d\       G d] d^e4             ZJ G d_ d`e4      ZKejj                  jm                  da ej                  d       ej                  df ej                  dY      ej                  e9fg       G db dceK             ZNejj                  jm                  dXg dd      ejj                  jm                  dee;g       G df dgeK                    ZOejj                  jm                  dad ej                  dfdhej                  dfdiej                  dfd.e;e9fg       G dj dkeK             ZQejj                  jm                  dad e;e9fdle;e9fd#e;e9fdhe;e9fdie;e9fd.eRdfg       G dm dneK             ZSejj                  jm                  dad ej                  dfdhej                  e9fdiej                  e9fd.e;e9fg       G do dpeK             ZUejj                  jm                  dad ej                  dfdhej                  dfdiej                  e9fd.e;e9fg       G dq dreK             ZVejj                  jm                  dad ej                  df ejn                  dhej                  dejj                  j                  e
 xs( e
xr$ e	 xr ej                  j                  dsdt      duk7  dvw      x      diej                  e9fd.e;e9f ej                  d"      ej                  df ej                  d"      ej                  df ej                   ej                  ej                        j                        ej                  e9f ej                  d"      ej                  df ej                  d"      ej                  dfg	       G dy dzeK             Z`ejj                  jm                  da ed{      d|dfd e;e9fd}e;e9fg       G d~ deK             Zaejj                  jm                  da ed{d      ddf ed{d      ddf ed{      e;e9fd e;e9fg       G d deK             Zbejj                  jm                  da ed      ddfd e;e9fd}e;e9fg       G d deK             Zcejj                  jm                  dXd edd       ed d"d      g      ejj                  jm                  dee;g       G d deK                    Zdd Zed Zfd Zgd Zhd Zid Zjd Zkd Zld Zmd Znd Zoejj                  jm                  d epd"d2            ejj                  jm                  dg dd.d/gd/gg      ejj                  jm                  ddGejp                   ej                  er      j                   ej                  er      j                  g      ejj                  jm                  dd d d g      d                             Ztd Zuy)    )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                   x    e Zd Zd Zd Zd Zd Zej                  j                  dg d      d        Z
d Zd	 Zy
)TestSetitemDT64Valuesc                     t        t        dd            }d |d<   |d   t        u sJ d |dd |d   t        u sJ t        j                  |d<   |d   t        u sJ t        j                  |dd |d   t        u sJ y )	Nz1/1/2000
   periods               )r   r   r   npnanselfseriess     `/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/series/indexing/test_setitem.pytest_setitem_none_nanz+TestSetitemDT64Values.test_setitem_none_nan.   s    
:r:;q	ayCqayCFFq	ayCffqayC    c                     t        j                  ddg      }t        ddg|      }|j                         }d|j                  g <   t        j                  ||       y )N)a   )b   r3   r5   indexr   )r   from_tuplesr   copyloctmassert_series_equal)r,   idxresultexpecteds       r.   #test_setitem_multiindex_empty_slicez9TestSetitemDT64Values.test_setitem_multiindex_empty_slice<   sO    $$h%9:Ac*;;=

2
vx0r0   c                     t        g dg dt              }t        j                         |d<   |j                  t        j                         k(  sJ |d   t        j                         k(  sJ y )Nr3   r5   r$   )Dater4   otherr7   dtyperC   )r   objectr   todayrC   r,   sers     r.   test_setitem_with_string_indexz4TestSetitemDT64Values.test_setitem_with_string_indexD   sR     Y&<FKjjlFxx4::<'''6{djjl***r0   c                     t        ddd      }g d}t        ||      }|j                         }t        j                  |d<   t        j                  |j
                  d<   t        j                  ||       y )	N2017r&   
US/Easternr#   tz)r   r3   )r   r5   )r   r$   )r   r&   r6   rQ   r   )r   r   r9   r)   r*   ilocr;   r<   )r,   arrr7   r>   r?   s        r.   )test_setitem_tuple_with_datetimetz_valuesz?TestSetitemDT64Values.test_setitem_tuple_with_datetimetz_valuesL   s[    |<05);;=v66a
vx0r0   rP   )rN   UTCz
Asia/Tokyoc                    t        t        ddd|            }|j                  d| dk(  sJ t        t        d|      t        d	|      t        d
|      g|j                        }|j	                         }t        d|       ||      d<   t        j                  ||       t        t        d|      t        d|      gddg|j                        }|j                  d| dk(  sJ t        t        d|      t        d	|      t        d|      g|j                        }|j	                         }| ||      ddg<   t        j                  ||       y )N
2016-01-01hr$   freqr#   rP   datetime64[ns, ]z2016-01-01 00:00rP   2011-01-01 00:00z2016-01-01 02:00rF   
2011-01-01r3   
2012-01-01r5   rE   2012-01-01 00:00r   r   rF   r   r9   r;   r<   )r,   rP   indexer_sliorigexprJ   valss          r.   test_setitem_with_tzz*TestSetitemDT64Values.test_setitem_with_tzV   sT   jCrJKzzrd!4444,4,4,4
 **
 iik'<C
sC( |+Y|-KLa&**

 zzrd!4444,4,4,4
 **
 iik#'C!Q 
sC(r0   c                    d}t        t        ddd|            }|j                  d| dk(  sJ t        t        d|	      t        d
|	      t        d|	      g|j                        }|j	                         }t        d|	       ||      d<   t        j                  ||       t        t        d|	      t        d|	      gddg|j                        }|j                  d| dk(  sJ t        t        d|	      t        d|	      t        d|	      g|j                        }|j	                         }| ||      ddg<   t        j                  ||       y )NrN   z
2016-11-06rX   r$   rY   r[   r\   z2016-11-06 00:00-04:00r]   z2011-01-01 00:00-05:00z2016-11-06 01:00-05:00r_   r`   r3   ra   r5   rE   z2016-11-06 00:00r^   rb   rc   )r,   rd   rP   re   rf   rJ   rg   s          r.   test_setitem_with_tz_dstz.TestSetitemDT64Values.test_setitem_with_tz_dst~   sY   jCrJKzzrd!44442r:2r:2r:
 **
 iik'<C
sC( |+Y|-KLa&**

 zzrd!4444,4,4,4
 **
 iik#'C!Q 
sC(r0   c                 0   t        dt        j                  it              }dg}t        j                  dgd      }||j
                  |<   t        |d   gdgt              }t        d |j                  D              sJ t        j                  ||       y )	NXr_   Tr&   M8[ns]r   rE   c              3   P   K   | ]  }t        |t        j                           y wN)
isinstancer)   
datetime64.0xs     r.   	<genexpr>zYTestSetitemDT64Values.test_object_series_setitem_dt64array_exact_match.<locals>.<genexpr>   s     IA:a/Is   $&)
r   r)   r*   rG   r   rR   allvaluesr;   r<   )r,   rJ   indexervaluer?   s        r.   0test_object_series_setitem_dt64array_exact_matchzFTestSetitemDT64Values.test_object_series_setitem_dt64array_exact_match   s     c266]&1& !H-!58*SE@IIIII
sH-r0   N)__name__
__module____qualname__r/   r@   rK   rT   pytestmarkparametrizerh   rj   rz    r0   r.   r   r   -   sI     1+1 [[T#FG%) H%)N')R.r0   r   c                   $   e Zd Zd Zej
                  j                  dej                  ej                  g      ej
                  j                  dddg      d               Z
ej
                  j                  dddej                  fg      d	        Zy
)TestSetitemScalarIndexerc                     t        dgdz  dgdz        }d}d}t        j                  t        |      5  t	        j
                  t        |      5  d|d<   d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)	Nr2   r!   r6   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,   rJ   msgwarn_msgs       r.   #test_setitem_negative_out_of_boundsz<TestSetitemScalarIndexer.test_setitem_negative_out_of_bounds   s}    cURZurz2 FP]]:S1 	!++MJ ! C!	! 	!! !	! 	!s#   A4A(A4(A1	-A44A=rx   	ser_indexr   r3   c                     t        ddgd      } ||      }t        dg|g      |d<   t        t        dg|g      dgd      }t        j                  ||       y )Nr   rG   r_   *   r6   r   r;   r<   )r,   rx   r   rJ   idxrr?   s         r.    test_setitem_series_object_dtypez9TestSetitemScalarIndexer.test_setitem_series_object_dtype   s]     aV8,s|"i[1Q62$yk:A>hO
sH-r0   zindex, exp_value)r   r   c                     t        ddg      }t        dg|g      |j                  d<   t        |dg      }t        j                  ||       y )Nr   r   r6   )r   r:   r;   r<   )r,   r7   	exp_valuerJ   r?   s        r.   test_setitem_seriesz,TestSetitemScalarIndexer.test_setitem_series   sG     aVnRD0
9a.)
sH-r0   N)r{   r|   r}   r   r~   r   r   r;   r:   atr   r)   r*   r   r   r0   r.   r   r      s    ! [[Y8[[[1a&1. 2 9. [[/'Arvv;1GH. I.r0   r   c                   *    e Zd Zd Zd Zd Zd Zd Zy)TestSetitemSlicesc                    d}t        j                  t        |j                  d            5  d|dd d d d        t        j                  t        |j                  d            5  d|d	d d d d        y # 1 sw Y   CxY w# 1 sw Y   y xY w)
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_raisesz1TestSetitemSlices.test_setitem_slice_float_raises   s    ' 	 ]]9CJJ7J,CD 	*()OC%	* ]]9CJJ7J,CD 	*()OC%	* 	*	* 	*	* 	*s   A6'B6A?Bc                     t        t        d      t        t        d                  }d|dd  |dk(  j                         sJ d|d d |dk(  j                         sJ y )Nr!   r6   r   ir%   )r   rangelistrv   rI   s     r.   test_setitem_slicez$TestSetitemSlices.test_setitem_slice   sX    U2Yd59o6CD	q~~DS	q~~r0   c                     t        t        j                  j                  d      j	                  d      g d      }d|d d |d d dk(  j                         sJ |dd  dk(  j                         rJ y )Nr5      )r5   r&   r(   r   r!            r6   r   r&   )r   r)   randomdefault_rngstandard_normalrv   anyrI   s     r.   test_setitem_slice_integersz-TestSetitemSlices.test_setitem_slice_integers   st    II!!!$44Q7.

 BQBQ1!!###GqL%%''''r0   c                     t        t        j                  dt        j                        t        j                  dt        j                              }d|d d d<   |d d d   dk(  j                         sJ y )N   r_   r6   r   r5   )r   r)   arangefloat64int64rv   r+   s     r.   test_setitem_slicestepz(TestSetitemSlices.test_setitem_slicestep   s]    IIb

+299Rrxx3P
 ssssq %%'''r0   c                 
   t        j                  ddgt        d      f      }t        t	        j
                  dt        j                        |      }d ||      d d d<   t        g d|      }t        j                  ||       y )	Nr   r3   abcder!   r_   d   r&   )
r   r3   r5   r$   r   r%   r(   r'   r   	   )	r   from_productr   r   r)   r   r   r;   r<   )r,   rd   mir>   r?   s        r.   test_setitem_multiindex_slicez/TestSetitemSlices.test_setitem_multiindex_slice   sj    $$q!fd7m%<=		"BHH5r:#&FCaC >C
vx0r0   N)r{   r|   r}   r   r   r   r   r   r   r0   r.   r   r      s    	* ((1r0   r   c                       e Zd Zd Zd Zd Zd Zd Zd Zd Z	e
j                  j                  deej                  eg      d	        Zd
 Zd Zd Zd Zd Zy)TestSetitemBooleanMaskc                     t        ddgddgd      }t        dgdgd      |ddg<   t        ddgddgd      }t        j                  ||       y )Nr3   r5   r   rE   r   TFr   r,   rJ   r?   s      r.   test_setitem_mask_castz-TestSetitemBooleanMask.test_setitem_mask_cast	  s[     aVAq69#QCs'BT5M1a&Ag>
sH-r0   c                    t        t        j                  j                  d      j	                  d      t        j
                  ddd            j                  d      }|dkD  }|j                         }||   j                         j                  t              }t        j                  t        d      5  |||<   d d d        |j                  d	       }t        j                  ||       y # 1 sw Y   2xY w)
Nr5   r   r   r6   r%   item of incompatible dtyper   c                 &    | dkD  rt        |       S | S Nr   )str)ts    r.   <lambda>zLTestSetitemBooleanMask.test_setitem_mask_align_and_promote.<locals>.<lambda>  s    a!eCF  r0   )r   r)   r   r   r   r   roundr9   mapr   r;   r   r   r<   )r,   tsmaskleftrightr?   s         r.   #test_setitem_mask_align_and_promotez:TestSetitemBooleanMask.test_setitem_mask_align_and_promote  s    II!!!$44S93PQSUAV

%( 	 Avwwy4##C(''!=
 	 DJ	 66:;
tX.	 	s   4C++C4c                    t        g d      }|dkD  }||   j                  t              }t        j                  t
        d      5  |||<   d d d        t        g d      }t        j                  ||       y # 1 sw Y   -xY w)N)r   r3   r5   r   r   r   r   )r   12r   )r   r   r   r;   r   r   r<   r,   rJ   r   ser2r?   s        r.   test_setitem_mask_promote_strsz5TestSetitemBooleanMask.test_setitem_mask_promote_strs!  sx    \"Qw4y}}S!''!=
 	 CI	
 *+
sH-	 	s   A88Bc                     t        g d      }t        g d      }||   }|||<   t        g d      }t        j                  ||       y )N)r   r   barr   )FTTFr   r   s        r.   test_setitem_mask_promotez0TestSetitemBooleanMask.test_setitem_mask_promote-  sE    )*014yD	./
sH-r0   c                 J   ||j                         kD  }|j                         }|dz  ||<   |dz  }t        j                  ||   ||          |j                         }|dz  dd ||<   |dz  dd j	                  |      }||   || <   t        j                  ||   ||          y )Nr5   r   r%   )medianr9   r;   r<   reindex_like)r,   string_seriesr   r>   r?   s        r.   test_setitem_booleanz+TestSetitemBooleanMask.test_setitem_boolean6  s    }3355 ##%$q(t 1$
vd|Xd^< ##%%)1Q/t!A%q+88G'-$
vd|Xd^<r0   c                 L   |}|j                  dt                     |j                         kD  }d}t        j                  t
        |      5  d||<   d d d        t        j                  t
        |      5  d|j                  |<   d d d        y # 1 sw Y   =xY w# 1 sw Y   y xY w)Nr3   rZ   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_cornerz2TestSetitemBooleanMask.test_setitem_boolean_cornerF  s    xxx/"))+=I 	 ]]=4 	! B|	! ]]=4 	%#$BFF< 	% 	%	! 	!	% 	%s   B5BBB#c                     |j                         }|j                         }d||dkD  <   |j                         }d||dkD  <   t        j                  ||       y r   )sort_valuesr9   r;   r<   )r,   r   orderedr9   r?   s        r.   $test_setitem_boolean_different_orderz;TestSetitemBooleanMask.test_setitem_boolean_different_orderT  sX    ++-!!#Wq[ %%'!"A
tX.r0   funcc                     t        g d      } |g d      }ddg||<   t        g d      }t        j                  ||       y )N)Nr4   NTFTr2   cr2   r4   r   r   )r,   r   rJ   r   r?   s        r.    test_setitem_boolean_python_listz7TestSetitemBooleanMask.test_setitem_boolean_python_list_  sA     &''(#JD	/*
sH-r0   c                    t        g d|      }t        t        d      |      ||dkD  <   t        g d|      }t        j                  ||       t        g d|      }t        t        d      |      |j                  |dkD  <   t        j                  ||       t        g d|      }t        t        d      |      }|j                  |dkD     |j                  |dkD  <   t        j                  ||       y )N)r%   r(   r'   r   r_   r&   r(   )r%   r(   r5   r$   r3   )r   r   r;   r<   r:   )r,   any_numeric_ea_dtyperJ   r?   loc_sers        r.   'test_setitem_boolean_nullable_int_typesz>TestSetitemBooleanMask.test_setitem_boolean_nullable_int_typesh  s    \)=>eAh.BCC!G,.BC
sH-\)=>!%(2FGa
sH-\)=>q)=>";;w{3a
sH-r0   c                     t        d gdz        }dgdz  dgdz  z   dgdz  z   }t        d      ||<   |}t        d gdz  t        t        d            z   d gdz  z   t              }t	        j
                  ||       y )Nr!   Fr$   Tr%   r5   r_   )r   r   r   rG   r;   r<   )r,   rJ   r   r>   r?   s        r.   Atest_setitem_with_bool_mask_and_values_matching_n_trues_in_lengthzXTestSetitemBooleanMask.test_setitem_with_bool_mask_and_values_matching_n_trues_in_lengthx  s    dVb[!w{dVaZ'5'A+5!HD	4&1*tE!H~5
B&Q
vx0r0   c                    t        g d      }t        j                  t        d      5  t        j
                  |d<   d d d        t        t        j
                  ddgt              }t        j                  ||       y # 1 sw Y   BxY w)Nr   r   r   r   FTr_   )r   r;   r   r   r)   r*   rG   r<   )r,   r>   r?   s      r.   test_setitem_nan_with_boolz1TestSetitemBooleanMask.test_setitem_nan_with_bool  sn    +,''!=
 	 F1I	 2665$/v>
vx0	 	s   A>>Bc                    t        g dd      }t        j                  g dt        j                        }t        j                  g d      }|j	                         }t        j                  t        d      5  t        |      ||<   d d d        t        g d      }t        j                  ||       |j	                         }t        j                  t        d      5  |j                  ||d	
       d d d        t        j                  ||       |j	                         }|j                  | t        |            }t        j                  ||       y # 1 sw Y   xY w# 1 sw Y   nxY w)NrB   int8r_   )      r   r   r   )r   r5   r   Tinplace)r   r)   r   r   r9   r;   r   r   r<   r   where	r,   re   altr   rJ   r?   r   ser3ress	            r.   !test_setitem_mask_smallint_upcastz8TestSetitemBooleanMask.test_setitem_mask_smallint_upcast  s   iv.hh(9xx+,iik''!=
 	$ sCI	$ .)
sH-yy{''!=
 	/ IIdCI.	/ 	tX.yy{jj$s,
sH-!	$ 	$	/ 	/s   9EE E E)c                    t        g dd      }t        g dt        j                        }t        j                  g d      }|j	                         }|||<   t        g dd      }t        j                  ||       |j	                         }|j                  ||d       t        j                  ||       |j	                         }|j                  | |      }t        j                  ||d	
       y )NrB   uint8r_   )   r      r   )r  r5   r  Tr   F)check_dtype)	r   r)   r   r   r9   r;   r<   r   r   r   s	            r.   $test_setitem_mask_smallint_no_upcastz;TestSetitemBooleanMask.test_setitem_mask_smallint_no_upcast  s     iw/%RXX6xx+,iikD	-w7
sH-yy{		$T	*
tX. yy{jj$$
sH%@r0   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   r0   r.   r   r     so    ./
..= %	/ [[VdBHHf%=>. ?.. 11.2Ar0   r   c                       e Zd Zd Zd Zy)TestSetitemViewCopySemanticsc                    t        ddd      }|d   }t        |      }|j                  |usJ |rB|j                  j                  j                  |j
                  j                  j                  u sDJ |j                  j                  j                  |j
                  j                  j                  usJ |j                  dk(  sJ t        |j                  d<   |j                  j                  J |j                  |usJ |j                  j                  j                  |j
                  j                  j                  usJ |d   |k(  sJ |j                  dk(  sJ y )N20130101r$   rN   rO   r3   D)	r   r   _values_ndarraybase_datarZ   r   rR   r,   using_copy_on_writedtir   rJ   s        r.   ,test_setitem_invalidates_datetime_index_freqzITestSetitemViewCopySemantics.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r0   c                 (   t        ddd      }|d   }t        |      }|j                  |usJ |r|j                  j                  j                  |j
                  j                  j                  u sJ |j                  j                  d   j                  j                  |j
                  j                  j                  u sJ |j                  j                  j                  |j
                  j                  j                  usJ |j                  j                  d   j                  j                  |j
                  j                  j                  usJ |j                  j                  d   |usJ t        |d d d<   |d   t        u sJ |d   |k(  sJ y )NrW   r!   
US/PacificrO   r   r$   )	r   r   r  r  r  r  _mgrarraysr   r  s        r.   'test_dt64tz_setitem_does_not_mutate_dtizDTestSetitemViewCopySemantics.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||r0   N)r{   r|   r}   r  r  r   r0   r.   r
  r
    s    ,r0   r
  c                       e Zd Zd Zd Zy)TestSetitemCallablec                     t        g dt        d            }d|d <   t        g dt        d            }t        j                  ||       y )Nr3   r5   r$   r&   ABCDr6   r   c                      y)NAr   rt   s    r.   r   z?TestSetitemCallable.test_setitem_callable_key.<locals>.<lambda>  s    r0   )r   r5   r$   r&   )r   r   r;   r<   r   s      r.   test_setitem_callable_keyz-TestSetitemCallable.test_setitem_callable_key  s<    \f6M-tF|<
sH-r0   c                     d }t        g dt              }|||dk  <   t        dd|dg      }t        j                  ||       y )Nc                     | dz   S Nr3   r   r"  s    r.   r   zATestSetitemCallable.test_setitem_callable_other.<locals>.<lambda>  s
    A r0   )r3   r5   r   r&   r_   r   r3   r5   r&   )r   rG   r;   r<   )r,   incrJ   r?   s       r.   test_setitem_callable_otherz/TestSetitemCallable.test_setitem_callable_other  sD     ]&1C!G1aa.)
sH-r0   N)r{   r|   r}   r#  r(  r   r0   r.   r  r    s    .	.r0   r  c                      e Zd Zd Zd Zd Zej                  j                  d e	d       e	d      j                          e	d      j                         g      d        Zd Zd Zd	 Zej                  j                  d
eeddddfeeddddfeej$                  ddddfeej$                  ddddfeedddefeeddddfej$                  eddddfej$                  eddddfej$                  eddddfej$                  eddddfej$                  ej$                  ddddfej$                  ej$                  ddddfg      d        Zd Zy)TestSetitemWithExpansionc                     t        d      }t        t              }d||<   t        d|g      }t        j                  ||       y )Nra   r_   /   )r   r   rG   r;   r<   )r,   r   r-   r?   s       r.   test_setitem_empty_seriesz2TestSetitemWithExpansion.test_setitem_empty_series  s=    %f%s"se$
vx0r0   c                 <   t        g dd      }t        g |t              }t        d      }d||<   t        dt        |gd      j	                  d            }t        j                  ||       |j                  j                  |j                  j                  k(  sJ y )	Nr  rm   )rZ   rF   rE   ra   r,  r   ns)	r   r   rG   r   as_unitr;   r<   r7   rZ   )r,   r  r-   r   r?   s        r.   6test_setitem_empty_series_datetimeindex_preserves_freqzOTestSetitemWithExpansion.test_setitem_empty_series_datetimeindex_preserves_freq  s    BS9#V4%s"mSE<DDTJK
vx0||  HNN$7$7777r0   c                     t        d      }t        |gdgt              }|d   }t        g t              }d|d<   ||d<   |d   }||k(  sJ y )Nl    Pi5 	timestamprE   r_   g     r@anything)r   r   rG   )r,   r3  r-   r?   r>   s        r.   3test_setitem_empty_series_timestamp_preserves_dtypezLTestSetitemWithExpansion.test_setitem_empty_series_timestamp_preserves_dtype  sa    12	K=G+&&)"z'{$!!!r0   td9 daysc                    |r?t        |t              s/|j                  t        j                  j                  d             t        d|gddgt              }t        dg      }||d<   t        j                  ||       t        |d   t              sJ t        dg      }t        d      |j                  d<   t        j                  ||       t        |d   t              sJ y )Nzinferred as stringreasonrt   r   r6  rE   r7  )rp   r   applymarkerr~   r   xfailr   rG   r;   r<   r:   )r,   r6  using_infer_stringrequestr?   rJ   s         r.   #test_append_timedelta_does_not_castz<TestSetitemWithExpansion.test_append_timedelta_does_not_cast  s     jY&? 1 19M 1 NO3)At9FCcUmD	
sH-#d)Y///cUm!(+
sH-#d)Y///r0   c                     t        t              }t        d      |d<   d|d<   d|d<   t        t        d      ddgg d	      }t        j                  ||       y )
Nr_   rW   r2         @r4   r   r   r   r6   )r   rG   r   r;   r<   r   s      r.   *test_setitem_with_expansion_type_promotionzCTestSetitemWithExpansion.test_setitem_with_expansion_type_promotion4  sT    6"\*CCC9\2C?W
sH-r0   c                     |j                         }d|j                  vsJ d|d<   t        dgdgd      }t        ||g      }t	        j
                  ||       y )Nfoobarr3   r-   )r7   name)r9   r7   r   r   r;   r<   )r,   r   rJ   appr?   s        r.   test_setitem_not_containedz3TestSetitemWithExpansion.test_setitem_not_contained=  s\      "syy(((HaS
:=#./
sH-r0   c                 v    t        ddg|      }d|d<   t        g d|      }t        j                  ||       y )Nr3   r5   r_   r!   )r3   r5   r!   r   )r,   r   rJ   r?   s       r.   test_setitem_keep_precisionz4TestSetitemWithExpansion.test_setitem_keep_precisionG  s9    aV#78A*,@A
sH-r0   z1na, target_na, dtype, target_dtype, indexer, warnInt64r3   Nr5   r   r   rG   Float64c                     t        ddg|      }t        j                  |d      5  |||<   d d d        |dk(  rd|gndd|g}t        ||      }	t        j                  ||	       y # 1 sw Y   ;xY w)Nr3   r5   r_   incompatible dtyper   )r   r;   r   r<   )
r,   na	target_narF   target_dtyperx   warnrJ   expected_valuesr?   s
             r.   test_setitem_enlarge_with_naz5TestSetitemWithExpansion.test_setitem_enlarge_with_naN  sw    * aV5)''4HI 	CL	,3qL1i.q!Y>O/>
sH-		 	s   A''A0c                     t        ddg      }||d<   |rt        |t              sdnt        }t        dd|gg d|      }t	        j
                  ||       |r|d   t        j                  u  y |d   |u sJ y )Nr2   r4   r$   zstring[pyarrow_numpy])r   r3   r$   rE   )r   rp   r   rG   r;   r<   r)   r*   )r,   nulls_fixturer=  rJ   rF   r?   s         r.   $test_setitem_enlargement_object_nonez=TestSetitemWithExpansion.test_setitem_enlargement_object_nonej  s    c3Z A "*]G*L $ 	
 3]39ER
sH-Fbffq6]***r0   )r{   r|   r}   r-  r1  r5  r~   r   r   r   to_timedelta64to_pytimedeltar?  rB  rG  rI  r
   r)   r*   r   r   rS  rV  r   r0   r.   r*  r*    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	
"	.#"	.+r0   r*  c                     t        j                  d      } d| j                  _        t	        | d      }|j
                  D ]7  }d}t        j                  t        |      5  d||<   d d d        | |   dk(  r7J  y # 1 sw Y   xY w)Nr%   Fr9   #assignment destination is read-onlyr   r3   r   )	r)   zerosflags	writeabler   r7   r~   r   
ValueError)r   r-   nr   s       r.   .test_setitem_scalar_into_readonly_backing_datara  {  s     HHQKE!EKKE&F\\ 3]]:S1 	F1I	 Qx1}}	 	s    A;;B	c                      t        j                  d      } d| j                  _        t	        | d      }d}t        j                  t        |      5  d|dd d d d         | j                         rJ y # 1 sw Y   xY w)Nr%   FrZ  r[  r   r3   r$   )	r)   r\  r]  r^  r   r~   r   r_  r   )r   r-   r   s      r.   -test_setitem_slice_into_readonly_backing_datarc    sp     HHQKE!EKKE&F
/C	z	- q uyy{?{ s   A33A<c                  "   t        t        ddgddg            } | j                         }d|d d  t        t        ddgddg            }t        j                  ||       | j                         }d|d<   t        t        ddgddg            }t        j                  ||       | j                         }d||j
                  dkD  <   t        t        ddgddg            }t        j                  ||       | j                         }d|ddg<   t        t        ddgddg            }t        j                  ||       | j                         }dd	g|_        d|d	<   t        t        ddgddg      dd	g
      }t        j                  ||       y )Nr4   r2   
categoriesr3   r   FTrt   yr6   )r   r   r9   r;   r<   r7   )re   rJ   rf   s      r.   &test_setitem_categorical_assigning_opsrh    sk   +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$r0   c                      t        t        g d            } t        t        dt        j                  dgg d            }t        j                  | d<   t	        j
                  | |       y )NrB   r3   r$   re  )r   r   r)   r*   r;   r<   )rJ   rf   s     r.   !test_setitem_nan_into_categoricalrj    sI    
Y'
(C
a^	B
CCVVCF3$r0   c                       e Zd Zej                  j                  dddg      ej                  j                  dg de      d               Zd Zy	)
TestSetitemCastinguniqueTFval)r$   rA  3)idsc                    t        ddg      }|s	ddg|_        t        j                  t        d      5  | ||      d<   d d d        t        |j                  d         t        |      k(  sJ t        d|gt        |j                        }|s(|t        j                  urt        ||gt        ddg      }t        j                  ||       y # 1 sw Y   xY w)NTFr3   rM  r   )rF   r7   )	r   r7   r;   r   r   typerR   rG   r<   )r,   rn  rd   rm  rJ   r?   s         r.   test_setitem_non_bool_into_boolz2TestSetitemCasting.test_setitem_non_bool_into_bool  s     dE]#ACI''=QR 	&"%KQ	&CHHQK DI---4+V399E+RWW4sCjq!fEH
sH-	& 	&s   CCc                 2   t        g d      }|j                  }t        g d      }|d d |d d |j                  |u sJ t        j                  t
        d      5  |dd  |dd  d d d        t        |      }t        j                  ||       y # 1 sw Y   +xY w)Nr   )TFNr5   rM  r   r3   )r   r  r   r;   r   r   r<   )r,   rJ   rw   rS   r?   s        r.   &test_setitem_boolean_array_into_npboolz9TestSetitemCasting.test_setitem_boolean_array_into_npbool  s    ()'(bq'BQ{{f$$$''=QR 	!"gCG	#;
sH-	 	s   	BBN)	r{   r|   r}   r~   r   r   rr  rs  ru  r   r0   r.   rl  rl    sL    [[Xe}5[[UMt<. = 6..r0   rl  c                   d    e Zd ZdZej
                  d        Zd Zd Zd Z	d Z
d Zd Zd	 Zd
 Zy)SetitemCastingEquivalentsz
    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    |j                   |j                   k(  S )zF
        Whether we expect the setting to be in-place or not.
        r_   )r,   objr?   s      r.   
is_inplacez$SetitemCastingEquivalents.is_inplace  s    
 ~~**r0   c                     |}|j                         }|j                  }| ||      |<   t        j                  ||       | j	                  ||||       y ro   )r9   r  r;   r<   _check_inplace)	r,   ry  r   r?   rn  rx   rz  re   rS   s	            r.   check_indexerz'SetitemCastingEquivalents.check_indexer  sM    hhjkkS
sH-Jc37r0   c                     |y |rN|j                   j                  dv r$|j                  |j                  j                  u sJ |j                  |u sJ y y t	        j
                  ||j                         y )N)mM)rF   kindr  r  r;   assert_equal)r,   rz  re   rS   ry  s        r.   r|  z(SetitemCastingEquivalents._check_inplace  sg    yy~~+ ||s{{';';;;;{{c))) <
 OOC.r0   c           	         t        |t              st        j                  d       t	        j
                  |d      5  | j                  ||||||       d d d        |t        j                  u rEt	        j
                  |d      5  | j                  ||||t        j                  |       d d d        nV|t        j                  u rDt	        j
                  |d      5  | j                  ||||t        j                  |       d d d        t        ||dz         }t	        j
                  |d      5  | j                  ||||||       d d d        |t        j                  urEt        ||dz         }	t	        j
                  |d      5  | j                  ||	||||       d d d        |g}
t	        j
                  |d      5  | j                  ||
||||       d d d        t        j                  |
      }t	        j
                  |d      5  | j                  ||||||       d d d        d |fD        }t	        j
                  |d      5  | j                  ||||||       d d d        y # 1 sw Y   xY w# 1 sw Y   xxY w# 1 sw Y   xY w# 1 sw Y   MxY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   y xY w)NzNot relevant for int keyrM  r   r3   c              3       K   | ]  }|  y wro   r   rr   s     r.   ru   z9SetitemCastingEquivalents.test_int_key.<locals>.<genexpr>'  s     #!#   )rp   intr~   skipr;   r   r}  r:   r   rR   iatr   slicer)   r   )r,   ry  r   r?   rQ  rn  rd   rz  rngslcilkeyindkeygenkeys                r.   test_int_keyz&SetitemCastingEquivalents.test_int_key  s   #s#KK23''4HI 	QsC3ZP	Q "&& ++D8LM O""3XsBEE:NO OBGG#++D8LM P""3XsBFFJOP Cq!''4HI 	QsC3ZP	Q bff$S1W%C++D8LM U""3XsKTU ''4HI 	SsE8S+zR	S %''4HI 	TsFHc;
S	T $cU#''4HI 	TsFHc;
S	T 	T;	Q 	QO OP P	Q 	QU U	S 	S	T 	T	T 	Ts_   I*%I7%J/JJ?J+
J7
K*I47JJJJ(+J47K Kc           	         t        |t              st        j                  d       |t        j
                  ur6t	        j                  |d      5  | j                  ||||||       d d d        t        t        t        |                  |   }t	        j                  |d      5  | j                  ||||||       d d d        t        j                  |      }	t	        j                  |d      5  | j                  ||	||||       d d d        d |	D        }
t	        j                  |d      5  | j                  ||
||||       d d d        y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   axY w# 1 sw Y   y xY w)NzNot relevant for slice keyrM  r   c              3       K   | ]  }|  y wro   r   rr   s     r.   ru   z;SetitemCastingEquivalents.test_slice_key.<locals>.<genexpr><  s     $!$r  )rp   r  r~   r  r;   r:   r   r}  r   r   lenr)   r   )r,   ry  r   r?   rQ  rn  rd   rz  r  r  r  s              r.   test_slice_keyz(SetitemCastingEquivalents.test_slice_key+  sg   #u%KK45bff$++D8LM U""3XsKTU U3s8_%c*''4HI 	SsE8S+zR	S %''4HI 	TsFHc;
S	T %V$''4HI 	TsFHc;
S	T 	TU U	S 	S	T 	T	T 	Ts0   E%E0E'/E3EE$'E03E<c                    t        j                  |j                  t              }d||<   |j	                         }t        |      rNt        |      |j                         k  r2d}t        j                  t        |      5  | ||      |<   d d d        y t        j                  |d      5  | ||      |<   d d d        t        j                  ||       y # 1 sw Y   y xY w# 1 sw Y   ,xY w)Nr_   Tz9boolean index did not match indexed array along dimensionr   rM  )r)   r\  shapeboolr9   r	   r  sumr~   r   r   r;   r   r<   )	r,   ry  r   r?   rQ  rn  rd   r   r   s	            r.   test_mask_keyz'SetitemCastingEquivalents.test_mask_key@  s    xx		.S	hhjSDHHJ!6MCz5 -),C &-''4HI 	)%(KT"	)
sH--	) 	)s   ?C+C"C"C+c                    t        j                  |j                  t              }d||<   t	        |      rQt        |      t        |      k  r:d}t        j                  t        |      5  |j                  | |       d d d        y |}	|j                         }|j                  }
|j                  | |      }|t        u r)|j                  t        k(  r|j                  t              }nM|K|j                  t        k(  r8|j                  t        k(  sJ |j                         }d ||j!                         <   t#        j$                  ||       | j'                  ||	|
|       y # 1 sw Y   y xY w)Nr_   Tz4operands could not be broadcast together with shapesr   )r)   r\  r  r  r	   r  r~   r   r_  r   r9   r  r
   rF   rG   fillnaisnar;   r<   r|  )r,   ry  r   r?   rQ  rn  rz  r   r   re   rS   r  s               r.   test_series_wherez+SetitemCastingEquivalents.test_series_whereQ  s   xx		.S	SCH!4HCz5 &		4%%&hhjkkiis#"9f,r*H[SYY&0>>V+++}}H(,HX]]_%
sH-Jc37%&s   *E!!E*c                    t        j                  |j                  t              }d||<   |rT|j                  t
        k(  rAt        j                  t        d      5  t        |      j                  | |       d d d        y t        |      j                  | |      }t        ||j                        }	t        j                  ||	       y # 1 sw Y   y xY wNr_   TzScalar mustr   )r)   r\  r  r  rF   rG   r~   r   r   r   r   r;   assert_index_equal)
r,   ry  r   r?   rQ  rn  r=  r   r  expected_idxs
             r.   test_index_wherez*SetitemCastingEquivalents.test_index_wherel  s    xx		.S	#))v"5y> -c
  $,- - *""D5#.C @L!!#|4- -s   CCc                    t        j                  |j                  t              }d||<   |rS|j                  t
        k(  r@t        j                  t        d      5  t        |      j                  ||       d d d        y t        |      j                  ||      }t        j                  |t        ||j                               y # 1 sw Y   y xY wr  )r)   r\  r  r  rF   rG   r~   r   r   r   putmaskr;   r  )	r,   ry  r   r?   rQ  rn  r=  r   r  s	            r.   test_index_putmaskz,SetitemCastingEquivalents.test_index_putmaskx  s    xx		.S	#))v"5y> .c
""4-. . *$$T3/C!!#uXX^^'LM	. .s   CCN)r{   r|   r}   __doc__r~   fixturerz  r}  r|  r  r  r  r  r  r  r   r0   r.   rw  rw    sK     ^^+ +8/"THT*."86
5	Nr0   rw  zobj,expected,key,warnr3   r%   r5   r$   r&   zinterval[float64]r_   interval_int_na_value)id)	r5   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_keyrB   int_series_int_keybool_series_int_key_change_allbool_series_int_keyc                   z    e Zd Z ej                  ej                   ej                  d      deg      d        Z	y)TestSetitemCastingEquivalentsNaNNparamsc                     |j                   S )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     r.   rn  z!TestSetitemCastingEquivalents.val  s     }}r0   )
r{   r|   r}   r~   r  r)   r*   r   r
   rn  r   r0   r.   r  r    s;    D V^^BFFJBJJu$5tR@A Br0   r  c                       e Zd Zej                  d        Z ej                  eeeg      d        Z	ej                  d        Z
ej                  d        Zej                  d        Zej                  d        Zy)	!TestSetitemTimedelta64IntoNumericc                 2    t        j                  dd      }|S )Nr&   r/  )r)   timedelta64)r,   r6  s     r.   rn  z%TestSetitemTimedelta64IntoNumeric.val  s    ^^At$	r0   r  c                     |j                   S ro   r  r  s     r.   rF   z'TestSetitemTimedelta64IntoNumeric.dtype      }}r0   c                 d    t        j                  d      j                  |      }t        |      }|S )Nr%   )r)   r   astyper   r,   rF   rS   rJ   s       r.   ry  z%TestSetitemTimedelta64IntoNumeric.obj  s(    iil!!%(Sk
r0   c                     t        j                  d      j                  |      }t        |      }|j                  t              }t        j
                  dd      |j                  d<   |S )Nr%   r&   r/  r   )r)   r   r  r   rG   r  rR   r  s       r.   r?   z*TestSetitemTimedelta64IntoNumeric.expected  sN    iil!!%(Skjj nnQ-
r0   c                      yr   r   r,   s    r.   r   z%TestSetitemTimedelta64IntoNumeric.key      r0   c                     t         S ro   r   r  s    r.   rQ  z&TestSetitemTimedelta64IntoNumeric.warn      r0   N)r{   r|   r}   r~   r  rn  complexr  floatrF   ry  r?   r   rQ  r   r0   r.   r  r    s     ^^ 
 V^^GS%01 2 ^^ 
 ^^  ^^  ^^ r0   r  c                   B   e Zd Z ej                  ddg      d        Zej                  d        Zej                  d        Zej                  d        Zej                  d        Z	 ej                  d	e
ej                  g      d
        Zej                  d        Zy	)TestSetitemDT64IntoIntrm   m8[ns]r  c                     |j                   S ro   r  r  s     r.   rF   zTestSetitemDT64IntoInt.dtype  r  r0   c                 F    t        j                  dd      }|dk(  r||z
  }|S )Nz2021-01-18 13:25:00r/  r  )r)   rq   )r,   rF   rn  s      r.   scalarzTestSetitemDT64IntoInt.scalar  s)    mm148H)C
r0   c                 b    t        ||dgt              }t        |d   t        |            sJ |S )Nr$   r_   r   )r   rG   rp   rr  )r,   r  r?   s      r.   r?   zTestSetitemDT64IntoInt.expected  s2    661-V<(1+tF|444r0   c                     t        g d      S )NrB   r   r  s    r.   ry  zTestSetitemDT64IntoInt.obj
  s    i  r0   c                     t        d d      S )Nr   r  r  s    r.   r   zTestSetitemDT64IntoInt.key  s    T2r0   Nc                 6    |j                   }||S  |||g      S ro   r  )r,   r  r>  boxs       r.   rn  zTestSetitemDT64IntoInt.val  s%    mm;MFF#$$r0   c                     t         S ro   r  r  s    r.   rQ  zTestSetitemDT64IntoInt.warn  r  r0   )r{   r|   r}   r~   r  rF   r  r?   ry  r   r   r)   r   rn  rQ  r   r0   r.   r  r    s     V^^Hh/0 1 ^^  ^^ 
 ^^! ! ^^  V^^D$12% 3% ^^ r0   r  c                      e Zd Zej                  d        Zej                  d        Z ej                  d edd      g      d        Z ej                  de	j                  g      d        Zej                  d	        Zy)
TestSetitemNAPeriodDtypec                     t        t        ddd            }t        j                  |j                  j                  d      |<   ||   t        u st        d ||   D              sJ |S )N
2000-01-01r!   r  r#   rZ   i8c              3   ,   K   | ]  }|t         u   y wro   )r   rr   s     r.   ru   z4TestSetitemNAPeriodDtype.expected.<locals>.<genexpr>%  s     %A1a3h%As   )r   r   r   _valuer  viewrv   )r,   r   rf   s      r.   r?   z!TestSetitemNAPeriodDtype.expected!  sY    \,EF&)jjs#3x3#%AC%A"AAA
r0   c                 0    t        t        ddd            S )Nr  r!   r  r  )r   r   r  s    r.   ry  zTestSetitemNAPeriodDtype.obj(  s    l<#FGGr0   r$   r%   r  c                     |j                   S ro   r  r  s     r.   r   zTestSetitemNAPeriodDtype.key,  r  r0   Nc                     |j                   S ro   r  r  s     r.   rn  zTestSetitemNAPeriodDtype.val0  r  r0   c                      y ro   r   r  s    r.   rQ  zTestSetitemNAPeriodDtype.warn4      r0   )r{   r|   r}   r~   r  r?   ry  r  r   r)   r*   rn  rQ  r   r0   r.   r  r    s     ^^  ^^H H V^^AuQ{+, - V^^D"&&>* + ^^ r0   r  c            
          e Zd Z ej                  g d      d        Zej                  d        Z ej                  dej                  e	 ej                  dd       ej                  dd      g      d        Zej                  d	        Zej                  d
        Zej                  d        Zej                  d        Zy)TestSetitemNADatetimeLikeDtype)r  rm   zdatetime64[ns, UTC]zdatetime64[ns, US/Central]r  c                     |j                   S ro   r  r  s     r.   rF   z$TestSetitemNADatetimeLikeDtype.dtype?  s     }}r0   c                     t        dd      j                  }t        ||      }|j                  |k(  sJ t	        |      S )NrW   r$   r"   r_   )r   asi8r   rF   r   )r,   rF   i8valsr=   s       r.   ry  z"TestSetitemNADatetimeLikeDtype.objE  s<    L!499F%(yyE!!!c{r0   Nr   r/  c                     |j                   S ro   r  r  s     r.   rn  z"TestSetitemNADatetimeLikeDtype.valL  s     }}r0   c                 |    |t         u xs3 |d u xs- |t        j                  u xs |j                  |j                  k(  S ro   )r   r)   r*   rF   )r,   rn  ry  s      r.   rz  z)TestSetitemNADatetimeLikeDtype.is_inplaceX  s6    
 czSSD[SC266MSSYY#))=SSr0   c                 h    |r|j                   nt        }t        |gt        |dd        z   |      }|S )Nr3   r_   )rF   rG   r   r   )r,   ry  rn  rz  rF   r?   s         r.   r?   z'TestSetitemNADatetimeLikeDtype.expected_  s1    '		V3%$s12w-/u=r0   c                      yr   r   r  s    r.   r   z"TestSetitemNADatetimeLikeDtype.keye  r  r0   c                     |rd S t         S ro   r  )r,   rz  s     r.   rQ  z#TestSetitemNADatetimeLikeDtype.warni  s    !t4}4r0   )r{   r|   r}   r~   r  rF   ry  r)   r*   r   r  rq   rn  rz  r?   r   rQ  r   r0   r.   r  r  9  s     V^^X ^^  V^^FFBNN5$'BMM%&
 ^^T T ^^ 
 ^^  ^^5 5r0   r  c                       e Zd Zej                  d        Zej                  d        Zej                  d        Zej                  d        Zej                  d        Z	y)$TestSetitemMismatchedTZCastsToObjectc                 0    t        t        ddd            S )N2000r5   
US/CentralrO   r   r   r  s    r.   ry  z(TestSetitemMismatchedTZCastsToObject.objp  s    j|DEEr0   c                     t        dd      S )Nr  rN   r]   )r   r  s    r.   rn  z(TestSetitemMismatchedTZCastsToObject.valt  s    L11r0   c                      yr   r   r  s    r.   r   z(TestSetitemMismatchedTZCastsToObject.keyx  r  r0   c                 l    t        |j                  d      t        dd      g|j                        }|S )Nr  z2000-01-02 00:00:00-06:00r]   r_   )r   
tz_convertr   rF   )r,   ry  rn  r?   s       r.   r?   z-TestSetitemMismatchedTZCastsToObject.expected|  s:     |,5,G ))
 r0   c                      y ro   r   r  s    r.   rQ  z)TestSetitemMismatchedTZCastsToObject.warn  r  r0   N
r{   r|   r}   r~   r  ry  rn  r   r?   rQ  r   r0   r.   r  r  n  sz    ^^F F ^^2 2 ^^  ^^
 
 ^^ r0   r  zobj,expected,warn)      ?       @rA  r  rA  i  )r   r   baz)Nr   r  c                   T    e Zd Zej                  d        Zej                  d        Zy)TestSeriesNoneCoercionc                      yr   r   r  s    r.   r   zTestSeriesNoneCoercion.key  r  r0   c                      y ro   r   r  s    r.   rn  zTestSeriesNoneCoercion.val  r  r0   N)r{   r|   r}   r~   r  r   rn  r   r0   r.   r  r    s2    " ^^  ^^ r0   r  c                       e Zd Zd Zej
                  d        Zej
                  d        Zej
                  d        Zej
                  d        Z	ej
                  d        Z
y)-TestSetitemFloatIntervalWithIntIntervalValuesc                     t        j                  t        d            }t        |      }t	        dd      }t        j                  t        d      5  ||d<   d d d        |j                  dk(  sJ y # 1 sw Y   xY w)Nr&         ?      ?z%Setting an item of incompatible dtyper   r   zInterval[float64, right])	r   from_breaksr   r   r   r;   r   r   rF   )r,   r=   ry  rn  s       r.   test_setitem_examplezBTestSetitemFloatIntervalWithIntIntervalValues.test_setitem_example  st    ''a1SksC ''!H
 	 CF	 yy6666		 	s   A11A:c                 T    t        j                  t        d            }t        |      S )Nr&   )r   r	  r   r   )r,   r=   s     r.   ry  z1TestSetitemFloatIntervalWithIntIntervalValues.obj  s     ''a1c{r0   c                     t        dd      S )Nr  r  )r   r  s    r.   rn  z1TestSetitemFloatIntervalWithIntIntervalValues.val  s    S!!r0   c                      yr   r   r  s    r.   r   z1TestSetitemFloatIntervalWithIntIntervalValues.key  r  r0   c                 V    |gt        |dd        z   }t        |d      }t        |      S )Nr3   zInterval[float64]r_   )r   r   r   )r,   ry  rn  datar=   s        r.   r?   z6TestSetitemFloatIntervalWithIntIntervalValues.expected  s/    utCG}$D(;<c{r0   c                     t         S ro   r  r  s    r.   rQ  z2TestSetitemFloatIntervalWithIntIntervalValues.warn  r  r0   N)r{   r|   r}   r
  r~   r  ry  rn  r   r?   rQ  r   r0   r.   r  r    s    
7 ^^  ^^" " ^^  ^^ 
 ^^ r0   r  c                       e Zd Zej                  d        Zej                  d        Zej                  d        Zej                  d        Zej                  d        Z	y)!TestSetitemRangeIntoIntegerSeriesc                 \    t        j                  |      }t        t        d      |      }|S Nr%   r_   )r)   rF   r   r   )r,   any_int_numpy_dtyperF   rJ   s       r.   ry  z%TestSetitemRangeIntoIntegerSeries.obj  s&    ,-U1XU+
r0   c                     t        dd      S )Nr5   r&   )r   r  s    r.   rn  z%TestSetitemRangeIntoIntegerSeries.val      Q{r0   c                     t        dd      S Nr   r5   r  r  s    r.   r   z%TestSetitemRangeIntoIntegerSeries.key  r  r0   c                 N    t        j                  |      }t        g d|      }|S )N)r5   r$   r5   r$   r&   r_   )r)   rF   r   )r,   r  rF   rf   s       r.   r?   z*TestSetitemRangeIntoIntegerSeries.expected  s"    ,-_E2
r0   c                      y ro   r   r  s    r.   rQ  z&TestSetitemRangeIntoIntegerSeries.warn  r  r0   Nr  r   r0   r.   r  r    sz     ^^ 
 ^^  ^^  ^^ 
 ^^ r0   r  z	val, warn      @g      @A   c                   x    e Zd Zej                  d        Zej                  d        Zej                  d        Zy)(TestSetitemFloatNDarrayIntoIntegerSeriesc                 J    t        t        d      t        j                        S r  )r   r   r)   r   r  s    r.   ry  z,TestSetitemFloatNDarrayIntoIntegerSeries.obj  s    eAhbhh//r0   c                     t        dd      S r  r  r  s    r.   r   z,TestSetitemFloatNDarrayIntoIntegerSeries.key  r  r0   c                     |d   dk(  rt         j                  }nt         j                  }t        j                  t	        d      |      }||d d t        |      S )Nr   r5   r%   r_   )r)   r   r   r   r   r   )r,   rn  rF   
res_valuess       r.   r?   z1TestSetitemFloatNDarrayIntoIntegerSeries.expected   sI    q6Q;HHEJJEXXeAhe4

2Aj!!r0   N)r{   r|   r}   r~   r  ry  r   r?   r   r0   r.   r  r    sJ     ^^0 0 ^^  ^^" "r0   r  rn     c                       e Zd Zej                  d        Zej                  d        Zej                  d        Zej                  d        Zy)'TestSetitemIntoIntegerSeriesNeedsUpcastc                 <    t        g dt        j                        S )NrB   r_   r   r)   r   r  s    r.   ry  z+TestSetitemIntoIntegerSeriesNeedsUpcast.obj  s    irww//r0   c                      yr&  r   r  s    r.   r   z+TestSetitemIntoIntegerSeriesNeedsUpcast.key  r  r0   c                 <    t        g dt        j                        S )N)r3   r$  r$   r_   )r   r)   int16r  s    r.   r?   z0TestSetitemIntoIntegerSeriesNeedsUpcast.expected  s    k22r0   c                     t         S ro   r  r  s    r.   rQ  z,TestSetitemIntoIntegerSeriesNeedsUpcast.warn  r  r0   N	r{   r|   r}   r~   r  ry  r   r?   rQ  r   r0   r.   r&  r&    s`    ^^0 0 ^^  ^^3 3 ^^ r0   r&  )g      Bg    Bl            c                       e Zd Zej                  d        Zej                  d        Zej                  d        Zej                  d        Zy)TestSmallIntegerSetitemUpcastc                      t        g dd      S )NrB   i4r_   r  r  s    r.   ry  z!TestSmallIntegerSetitemUpcast.obj"  s    it,,r0   c                      yr   r   r  s    r.   r   z!TestSmallIntegerSetitemUpcast.key&  r  r0   c                 <    |dz  dk7  rd}nd}t        |ddg|      S )Nr3   r   f8r  r5   r$   r_   r  )r,   rn  rF   s      r.   r?   z&TestSmallIntegerSetitemUpcast.expected*  s*    7a<EEsAqk//r0   c                     t         S ro   r  r  s    r.   rQ  z"TestSmallIntegerSetitemUpcast.warn2  r  r0   Nr-  r   r0   r.   r/  r/    sb     ^^- - ^^  ^^0 0 ^^ r0   r/  c                   T    e Zd Zej                  d        Zej                  d        Zy)CoercionTestc                      yr&  r   r  s    r.   r   zCoercionTest.key:  r  r0   c                 <    t        |      }|||<   t        ||      S )Nr_   )r   r   )r,   ry  r   rn  	exp_dtyperg   s         r.   r?   zCoercionTest.expected>  s!    CyS	d),,r0   N)r{   r|   r}   r~   r  r   r?   r   r0   r.   r7  r7  7  s2     ^^  ^^- -r0   r7  zval,exp_dtype,warnc                   0    e Zd Zej                  d        Zy)TestCoercionInt8c                 <    t        g dt        j                        S )Nr  r_   r(  r  s    r.   ry  zTestCoercionInt8.objK  s    l"''22r0   Nr{   r|   r}   r~   r  ry  r   r0   r.   r<  r<  E  s     ^^3 3r0   r<  )r3   皙?      ?      ?Tr:  c                   T    e Zd Zej                  d        Zej                  d        Zy)TestCoercionObjectc                 (    t        g dt              S )N)r2   r4   r   dr_   )r   rG   r  s    r.   ry  zTestCoercionObject.objT  s    *&99r0   c                      y ro   r   r  s    r.   rQ  zTestCoercionObject.warnX  r  r0   Nr{   r|   r}   r~   r  ry  rQ  r   r0   r.   rB  rB  P  s2     ^^: : ^^ r0   rB  r?  r@  c                   0    e Zd Zej                  d        Zy)TestCoercionComplexc                     t        g d      S )N)r@  y       @       @y      @      @y      @      @r  r  s    r.   ry  zTestCoercionComplex.objh  s    677r0   Nr>  r   r0   r.   rH  rH  ]  s     ^^8 8r0   rH  ro  c                   0    e Zd Zej                  d        Zy)TestCoercionBoolc                 (    t        g dt              S )N)TFTFr_   )r   r  r  s    r.   ry  zTestCoercionBool.objz  s    0==r0   Nr>  r   r0   r.   rK  rK  m  s     ^^> >r0   rK  c                   0    e Zd Zej                  d        Zy)TestCoercionInt64c                     t        g d      S )Nr  r  r  s    r.   ry  zTestCoercionInt64.obj  s    l##r0   Nr>  r   r0   r.   rN  rN    s     ^^$ $r0   rN  c                   0    e Zd Zej                  d        Zy)TestCoercionFloat64c                     t        g d      S )Nr?  g@gffffff
@g@r  r  s    r.   ry  zTestCoercionFloat64.obj  s    *++r0   Nr>  r   r0   r.   rQ  rQ    s     ^^, ,r0   rQ  NPY_PROMOTION_STATElegacyweakzbnp.float32(1.1) ends up as 1.100000023841858, so np_can_hold_element raises and we cast to float64r9  )marksc                   B     e Zd Zej                  d        Z fdZ xZS )TestCoercionFloat32c                 <    t        g dt        j                        S )NrS  r_   )r   r)   float32r  s    r.   ry  zTestCoercionFloat32.obj  s    *"**==r0   c           	      f    t         |   |||||||       t        |t              rt	        d      y )Nz!xfail not relevant for this test.)superr  rp   r  AssertionError)	r,   ry  r   r?   rQ  rn  rd   rz  	__class__s	           r.   r  z"TestCoercionFloat32.test_slice_key  s7    sC4k:Vc5! !DEE "r0   )r{   r|   r}   r~   r  ry  r  __classcell__)r_  s   @r.   rY  rY    s(    D ^^> >F Fr0   rY  ra   zdatetime64[ns]rt   c                   T    e Zd Zej                  d        Zej                  d        Zy)TestCoercionDatetime64c                 0    t        t        ddd            S )Nr`   r  r&   )rZ   r#   r  r  s    r.   ry  zTestCoercionDatetime64.obj  s    jCCDDr0   c                      y ro   r   r  s    r.   rQ  zTestCoercionDatetime64.warn  r  r0   NrF  r   r0   r.   rb  rb    s4     ^^E E ^^ r0   rb  rN   r]   zdatetime64[ns, US/Eastern]r  c                   T    e Zd Zej                  d        Zej                  d        Zy)TestCoercionDatetime64TZc                 6    d}t        t        ddd|            S )NrN   r`   r  r&   rY   r  )r,   rP   s     r.   ry  zTestCoercionDatetime64TZ.obj  s    jCrJKKr0   c                      y ro   r   r  s    r.   rQ  zTestCoercionDatetime64TZ.warn  r  r0   NrF  r   r0   r.   rf  rf    s4     ^^L L ^^ r0   rf  z12 dayztimedelta64[ns]c                   T    e Zd Zej                  d        Zej                  d        Zy)TestCoercionTimedelta64c                 .    t        t        dd            S )Nz1 dayr&   r"   )r   r   r  s    r.   ry  zTestCoercionTimedelta64.obj  s    ogq9::r0   c                      y ro   r   r  s    r.   rQ  zTestCoercionTimedelta64.warn  r  r0   NrF  r   r0   r.   rj  rj    s2     ^^; ; ^^ r0   rj  r   2016Yr   both)closedc                       e Zd Z ej                   eddd       edd      g      d        Zej                  d	        Zy
)TestPeriodIntervalCoercionrW   r$   r  r  r3   r%   r  c                 ,    t        |j                        S ro   )r   r  r  s     r.   ry  zTestPeriodIntervalCoercion.obj  s     gmm$$r0   c                     t         S ro   r  r  s    r.   rQ  zTestPeriodIntervalCoercion.warn  r  r0   N)	r{   r|   r}   r~   r  r   r   ry  rQ  r   r0   r.   rr  rr  
  sT     V^^qs;1a 
%% ^^ r0   rr  c                     t        g dg d      } t        g dg d      }| j                         }t        j                  t        d      5  d|j
                  d<   d d d        t        j                  ||       | j                         }t        j                  t        d      5  d|j                  d<   d d d        t        j                  ||       | j                         }t        j                  t        d      5  d|d<   d d d        t        j                  ||       | j                         }t        j                  t        d      5  d|j                  d	<   d d d        t        j                  ||       | j                         }t        j                  t        d      5  d|j                  d	<   d d d        t        j                  ||       | j                  d
      }|j                  d
      }|j                         }t        j                  t        d      5  d|j
                  d<   d d d        t        j                  ||       |j                         }t        j                  t        d      5  d|j                  d<   d d d        t        j                  ||       |j                         }t        j                  t        d      5  d|j                  d<   d d d        t        j                  ||       |j                         }t        j                  t        d      5  d|j                  d<   d d d        t        j                  ||       y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   sxY w# 1 sw Y   'xY w# 1 sw Y   xY w# 1 sw Y   mxY w# 1 sw Y   !xY w# 1 sw Y   xY w# 1 sw Y   xY w)Nr   r3   r5   r   r6   )r   皙@r5   rM  r   rw  r4   r3   r!  )r4   r!  )r3   r   )r   r9   r;   r   r   r   r<   r:   r  rR   to_frameassert_frame_equal)re   r?   rJ   orig_dfexpected_dfdfs         r.   
test_20643r}    s   )?3Dk9H
))+C		#	#M9M	N s3)
))+C		#	#M9M	N 3)
))+C		#	#M9M	N C3)
))+C		#	#M9M	N 
3)
))+C		#	#M9M	N 3)mmC G##C(K	B		#	#M9M	N h"k*	B		#	#M9M	N x"k*	B		#	#M9M	N "k*	B		#	#M9M	N t"k*[ 
 
 
 
  
 
 
 sl   M'M* M7N(N#N<N+N8.OM'*M47NNNN(+N58OOc                  :   t        g dg d      } t        t        j                  ddgg d      }| j                         }d |j                  d<   t        j                  ||       | j                         }d |j                  d<   t        j                  ||       y )Nrv  r   r6   r3   r5   r   )r   r)   r*   r9   r  r;   r<   rR   )re   r?   rJ   s      r.   test_20643_commentr  U  sv     )?3Drvvq!nO<H
))+CCGGAJ3)
))+CCHHQK3)r0   c                     t        g d      } t        j                  t        d      5  | | dk(  xx   dz  cc<   d d d        t        g d      }t        j                  | |       t        g d      } t        j                  t        d      5  | dxx   dz  cc<   d d d        t        j                  | |       t        g d      } t        j                  t        d      5  | j
                  dxx   dz  cc<   d d d        t        j                  | |       t        g d      } t        j                  t        d      5  | j                  dxx   dz  cc<   d d d        t        j                  | |       t        g d      } t        j                  t        d      5  | j                  dxx   dz  cc<   d d d        t        j                  | |       t        g d      } t        j                  t        d      5  | j                  dxx   dz  cc<   d d d        t        j                  | |       y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   UxY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   `xY w)NrB   rM  r   r5   r  )r3   r  r$   r3   )	r   r;   r   r   r<   r:   rR   r  r   )rJ   r?   s     r.   
test_15413r  d  s   

C		#	#M9M	N C1Hk"H3)

C		#	#M9M	N A#3)

C		#	#M9M	N 
c
3)

C		#	#M9M	N s3)

C		#	#M9M	N 
c
3)

C		#	#M9M	N q	S	3)9  
 
 
 
 sG   H2H?!I?II&;I22H<?I	II#&I/2I;c                     t        j                  d      j                  d      } t        |       }t        j                  t        j
                  t         j                        j                        }t        j                  t        d      5  ||d<   d d d        t        |dddd	gt         j                  
      }t        j                  ||       y # 1 sw Y   @xY w)Nr%   r1  rM  r   r   r3   r5   r$   r&   r_   )r)   r   r  r   r   iinfomaxr;   r   r   r<   rS   rJ   rn  r?   s       r.   test_32878_int_itemsizer    s    
))A,

d
#C
+C
((288BHH%))
*C		#	#M9M	N AsAq!Q'rxx8H3) s   CCc                     t        j                  d      j                  d      } t        |       }t        j                  t         j
                        j                  }|j                  d      }t        j                  t        d      5  ||d<   d d d        |d   |k(  sJ t        |ddd	d
gd      }t        j                  ||       y # 1 sw Y   <xY w)Nr%   c8c16rM  r   r   r3   r5   r$   r&   r_   )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q6S==sAq!Q'u5H3)	 s   	C

Cc                     t        g dg d      }t        j                  t        d      5  d | |      d<   d d d        t        g dg dt        	      }t        j
                  ||       y # 1 sw Y   6xY w)
NrB   r   r6   rM  r   testr4   )r3   r  r$   rE   r   r;   r   r   rG   r<   )
indexer_alrJ   r?   s      r.   
test_37692r    s`    
/
2C		#	#M9M	N &%
3&nO6JH3)& &s   A..A7c                 >   t         j                  t         j                  fD ]  }t        dt	        d      |      }t        j                  t        d      5  d | |      d<   d d d        |j                  t        k(  sJ t        dt	        d      t              }t        j                  t        d      5   |d      |d<   d d d        |j                  t        k(  rJ  t        dt	        d      t         j                        }t        j                  d       | |      d<   |j                  t         j                  k(  sJ t        dt	        d      t         j                        }t        j                  d       | |      d<   y # 1 sw Y   &xY w# 1 sw Y   xY w)	Nr   r$   rE   rM  r   Tr3   r  )r)   r   r   r   r   r;   r   r   rF   rG   r  )rd   rF   rJ   s      r.   'test_setitem_bool_int_float_consistencyr    sD   
 **bhh' 	#QeAhe4''=QR 	'"&KQ	'yyF"""QeAhd3''=QR 	1XCF	yyF"""	# %("((
3C**S/KQ99    %("**
5C((1+KQ!	' 	'
	 	s   F5FF	F	c                      t        g dg d      } d}t        j                  t        |      5  d| d<   d d d        t        g dg dt        	      }t        j
                  | |       y # 1 sw Y   6xY w)
NrB   r   r6   r   r   rl   r   )rl   r5   r$   rE   r  rJ   r   r?   s      r.   $test_setitem_positional_with_castingr    sa     /
2CLH		#	#M	B AkGH3) s   A**A3c                      t        g dg d      } d}t        j                  t        |      5  d| d<   d d d        t        g dg d      }t        j                  | |       y # 1 sw Y   1xY w)	NrB   r   r6   r   r   r  r   )r  r5   r$   )r   r;   r   r   r<   r  s      r.   .test_setitem_positional_float_into_int_coercesr    s_     /
2CLH		#	#M	B Ak9H3) s   A%%A.c                  D   t        g dg d      } | j                  j                  rJ d| d<   t        g d| j                        }t        j                  | |       d| d<   t        g dg d	      }t        j                  | |       t        j                  t        d            d d d
   }t        t        t        |            |      }|j                  t              j                  t        dg            }t        g d|      }d|d<   t        j                  ||       t        j                  | j                  ddgg      }t        t        t        |            |      }|j                         }d|j                   d<   d|d<   t        j                  ||       y )Nr  )r?   @rA  ffffff@r6   r!   r$   )r3   r5   r!   r&   r%   )r3   r5   r!   r&   r%   )r?  r  rA  r  g      @r5   r&   )r   r3   r5   r$   r&   r   r   r!  Bc   )r   r7   _should_fallback_to_positionalr;   r<   r   r	  r   r  r  rG   appendr   r   r   r9   r:   )	rJ   r?   iir   	exp_index	expected2r   r   	expected3s	            r.   test_setitem_int_not_positionalr    sQ    %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+r0   c                  .   t        g dg dd      } | j                  d      j                         }d|g d<   t        g dd      }t	        j
                  ||       d	| j                  g dd
f<   t        d
g di      }t	        j                  | |       y )NrB   )r&   r%   r(   )r2   r4   r4   r   )TFF)r   r%   r(   )r  rE  r!   r2   )r!   r5   r$   )r   popr9   r   r;   r<   r:   ry  )r|  r>   r?   s      r.   test_setitem_with_bool_indexerr    s     
3	4BVVC[F#$F 93/H68,(*BFF$%#z*+H"h'r0   sizer   )TFFFFitemr  c                 .    t        j                  | g      S ro   )r)   r   r"  s    r.   r   r     s    bhhsm r0   c                     | gS ro   r   r"  s    r.   r   r     s    s r0   c                     | fS ro   r   r"  s    r.   r   r     s    qd r0   c                    t        j                  ||       }t        j                  | t              }t	        |      }|j                         dk7  r2d}t        j                  t        |      5   ||      ||<   d d d        y  ||      ||<   t	        t        j                  | t                    }|||<   t        j                  ||       y # 1 sw Y   y xY w)Nr_   r3   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  	selectionr  rJ   r   r?   s	            r.   7test_setitem_bool_indexer_dont_broadcast_length1_valuesr    s      		$%I99T'D
,C}}!$ 	 ]]:S1 	' YC	N	' 	' TI"))D67"
sH-	' 	's   -CCc                     t        dd      } t        |       }|j                         }t        j                  dt
              }d||<   |j                  | j                  k(  sJ t        j                  ||       |j                  |dd       |j                  | j                  k(  sJ t        j                  ||       y )NrW   r$   r"   r_   r   Tr   )
r   r   r9   r)   r\  r  rF   r;   r<   r   )r  rJ   re   r   s       r.   (test_setitem_empty_mask_dont_upcast_dt64r  3  s    
\1
-C
+C88:D88AT"DCI99		!!!3%HHT5$H'99		!!!3%r0   )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
  r  r*  ra  rc  rh  rj  rl  rw  r   r   r  r*   r   r  rG   r   r  r  r  r  r  r  r  r  r  r   r  r+  r&  r/  r7  int32r   r<  rB  
complex128rH  r  rK  r   rN  rQ  r[  r<  environgetr  uint32r  r  uint64rY  rb  rf  rj  rr  r}  r  r  r  r  r  r  r  r  r  r  r   r  r  minr  r  r   r0   r.   <module>r     sl    	   ( 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 +	
 	9299R=!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*	}-BHHaeQUQY'rzz:	

"/H "
"* hbhhsm 45.G  6$  AB$=  C.-, - bhhqk277D!HBHHTNBHHm#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( 
8288BII&**	+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/--xrxx/B/BC
 	#]NC. ..8&r0   