
    bMhM                         d dl Zd dlZd dlmZ d dlmc mZ d dl	Z
d dl	mZmZmZmZmZmZ d dlmZ d Z G d d          Z G d d          Zej        d	             Zd
 Zd Zd ZdS )    N)SettingWithCopyError)	DataFrame
MultiIndexSeries
date_rangeisnanotnac                     | |k    sJ d S N )abs     m/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/indexing/multiindex/test_setitem.pyassert_equalr      s    666666    c                       e Zd ZedfdZd 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d Zd Zej                            d          d             Zd Zd Zd Zd Zd ZdS )TestMultiIndexSetItemNc                 T    ||j         |<   |j         |         }||} |||           d S r   )loc)selftargetindexersvalue
compare_fnexpectedresults          r   checkzTestMultiIndexSetItem.check   s=    $
8H%H
68$$$$$r   c                 @   g d}t          j        t          j        dd          t          j        dd          gddg          }d\  }}t	          t          j        ||	          }|                     |||fd
fd           t	          d||	          }|                     |||fd
fd           t	          ||	          }|                     |||fd
fd           t	          d||	          }|                     |||fd
ft          j        d          d           d S )N)Awlr   xXdprofitr   d   P   timefirmnames)r      columnsindexr#   )r   r   r   i   r,      )r   r   r   r   )r   from_productnparanger   nanr   array)r   colsr/   tndfs         r   test_setitem_multiindexz-TestMultiIndexSetItem.test_setitem_multiindex   sT   <<<'Yq#	!R 0 01&&9I
 
 
 1F
 
 

 	

"A}A
>>>tT777

"A}A
>>>t5111

"A}A
>>> tT777

!fc](1++	 	 	
 	
 	
 	
 	
r   c                    t          t          j        d                              dd          d                    d          t
                    }d|d<   |d         d	z  d
k    }ddg}|d         |j        ||f<   t          dg dddg          }t          j        |j        ||f         |           | 	                    |||f|d         t          j        |           d S )N      z	A,B,C,D,E,r.   dtypec   Fr   r,   r   BCg     X@)r   r,      r/   r.   r   r   r   r   r   )
r   r3   r4   reshapesplitfloatr   tmassert_frame_equalr   )r   r:   row_selectioncol_selectionoutputs        r   test_setitem_multiindex2z.TestMultiIndexSetItem.test_setitem_multiindex2=   s    IbMM!!!Q''1B1B31G1Gu
 
 
 33!q(c
/1#w}m+,4yyy3*EEE
bf]M%ABFKKK

#]3S', 	 	
 	
 	
 	
 	
r   c           	         t          j        g dt          ddd          g          }t          j        ddgt          dd	d          g          }t          t          j                            d
                              d          ||          }t          j        ddgt          ddd          g          }t          j        ddgt          dd	d          g          }t          t          j                            d
                              d          ||          }|                     |||f|t          j
                   t          t          j                            d
                              d          ||          }|                     ||t          d d d           f|t          j
                   |                                }|                     ||j        |j        f|t          j
        |           d S )Nr   rD   rE   z
2015-01-01z
2015-04-01MS)freqfoobarz
2016-01-01z
2016-02-01r,   )   rF   rG   r   z
2015-02-01)r,   r,   )r   r   r   r   )r,   rF   rH   )r   r2   r   r   r3   randomdefault_rngfrom_arraysr   rL   rM   slicecopyr/   r.   )r   idxr7   r:   subidxsubcolsvalsr]   s           r   test_setitem_multiindex3z.TestMultiIndexSetItem.test_setitem_multiindex3P   s*   %__j|$OOOP
 
 &U^ZlNNNO
 
 I!!!$$++G44C
 
 
 '3ZL,TJJJK
 
 (U^ZlNNNO
 
 I!!!$$++F3367
 
 
 	

g&,	 	 	
 	
 	
 I!!!$$++F3364
 
 
 	

eD$556,	 	 	
 	
 	
 wwyy

h
+, 	 	
 	
 	
 	
 	
r   c                    t          j        g d          t          j        g d          t          j        ddd          g}t          t           j                            d                              d          |g d	                                          }|j        d
g         dz  }|	                                }|j        d
gxx         dz  cc<   t          j        |j        d
g         |           d}t          j        t          |          5  |j        d
xx         dz  cc<   d d d            d S # 1 swxY w Y   d S )N)rW   rW   bazquxre   rW   )onetworf   rf   rg   rf   r      r0   r,   )rh   r1   rS   rG   rW   zAcannot align on a multi-index with out specifying the join levelsmatch)r3   r6   r4   r   rY   rZ   standard_normal
sort_indexr   r]   rL   rM   pytestraises	TypeError)r   arraysdf_origr   r:   msgs         r   test_multiindex_setitemz-TestMultiIndexSetItem.test_multiindex_setitem   s   
 H???@@H???@@IaA
 I!!!$$44V<<#OO
 
 
 *,,	 	 ;w'!+\\^^
w1
bfeWox888 R]9C000 	 	F5MMMQMMM	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   D44D8;D8c           
      *   t          j        ddddddddi          }t          j        |j        g d	          |_        |                                }|j        g d
xx         dz  cc<   t          j        }|                                }|j	        |d d d d df         d d fxx         dz  cc<   t          j        ||           |                                }|j	        |d d d d df         dfxx         dz  cc<   t          j        ||           d S )Npricer,   rF   r0   r>   r   ))DECoalStock)rv   Gasrx   )rv   ElecDemand)FRry   rx   )r|   SolarSupIm)r|   Windr~   )SitComTyper*   )r   r0   r1   rx   )r   	from_dictr   from_tuplesr/   r]   ilocpd
IndexSlicer   rL   rM   )r   rq   r   r^   r:   s        r   test_multiindex_setitem2z.TestMultiIndexSetItem.test_multiindex_setitem2   sQ    %-.,-./,-./-. 	
 
 #.M!7!7!7
 
 
 <<>>iii   A%   m\\^^
s111aaa=!111$%%%*%%%
b(+++\\^^
s111aaa=!7*+++q0+++
b(+++++r   c                    t          t          j                            d                              ddd                              dd          t          d          g dg d	g
          }t          j        |d<   t          j        ddg          }||j	        d<   t          j        |j	        d         t          |ddgd                     d S )Nr,   r>   
   	   sizer1   abcrF   rF      r   r   rX   r-   r$                 ?)rF   r$   r   )r/   name)r   r3   rY   rZ   integersrI   listr5   r6   r   rL   assert_series_equalr   )r   r:   arrs      r   test_multiindex_assignmentz0TestMultiIndexSetItem.test_multiindex_assignment   s     I!!!$$--a!-<<DDQJJKK99kkk*
 
 

 &3hSz""v
rvf~vc!Rs/S/S/STTTTTr   c                 n   t          j        ddg          }t          t           j                            d                              ddd                              dd          t          d	          g d
g dgt           j                  }|d         j	        d d         j
        }||j        d<   t          |ddgdd          }|j        d         }t          j        ||           |st          j        ||j
                   t          j        t"          d          5  |dz   |j        d<   d d d            n# 1 swxY w Y   |j        d         }|dz   }t          j        ||           t          j        |          5  d|j        d<   d d d            n# 1 swxY w Y   t          dddgdd          }t          j        |j        d         |           d}t'          j        t*          |          5  g d|j        d<   d d d            n# 1 swxY w Y   t'          j        t*          |          5  dg|j        d<   d d d            n# 1 swxY w Y   t          j        |          5  dg|j        ddgf<   d d d            n# 1 swxY w Y   |j        d         dk                                    sJ d S )Nr   r   r,   r>   r   r   r   r1   r   r   r   )r.   r/   rA   c)rF   r   r   int64)r/   r   rA   zitem of incompatible dtyperi   g      ?float64z@Must have equal len keys and value when setting with an iterable)r   r0   r,   r1   r   rF   )r3   r6   r   rY   rZ   r   rI   r   r   r   valuesr   r   rL   r   assert_numpy_array_equalassert_produces_warningFutureWarningassert_cow_warningrm   rn   
ValueErrorall)	r   using_copy_on_writewarn_copy_on_writer   r:   viewexpr   rr   s	            r   'test_multiindex_assignment_single_dtypez=TestMultiIndexSetItem.test_multiindex_assignment_single_dtype   s   
 hSz""I!!!$$--a!-<<DDQJJKK99kkk*(	
 
 
 #w|BQB&
 vSBcAAA
vs+++ # 	:'cj999 '!=
 
 
 	' 	' !3YBF6N	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' Ci
vs+++ "#566 	  	 BF6N	  	  	  	  	  	  	  	  	  	  	  	  	  	  	 R2wS	BBB
rvf~s333 Q]:S111 	* 	*)\\BF6N	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* ]:S111 	! 	!SBF6N	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	!
 "#566 	# 	# !sBF1se8	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#v!#((*******sZ    D::D>D> FFF4HHH3III*JJ	J	c                 V   d}d}d t          t          t          j        |                                                    D             }|d d         }t          t          j                            d                              d||f          t          j	        |          }|
                    |                                          }|                    |d d         	          }t          j        |d
<   |D ]0\  }}t          j        |j        d                   }	|	|j        |d
f<   1d S )Nr&   r   c                     g | ]}d |z   S )r   r   ).0nums     r   
<listcomp>z>TestMultiIndexSetItem.test_groupby_example.<locals>.<listcomp>  s    QQQ3S3YQQQr   r>   r,   r   )rA   r.   rF   )levelnew_colr   )mapstrr3   r4   tolistr   rY   rZ   r   r   	set_indexrl   groupbyr5   shaper   )
r   NUM_ROWSNUM_COLS	col_names
index_colsr:   grpr   df2new_valss
             r   test_groupby_examplez*TestMultiIndexSetItem.test_groupby_example  s   QQ#c29X3F3F3M3M3O3O*P*PQQQ	rr]
I!!!$$--ax6J-KK(
 
 

 \\*%%0022jjz"1"~j..9  	/ 	/ID#y1..H&.BF4?##	/ 	/r   c                    |}|d         }t          j        |          5  t          j        |d<   d d d            n# 1 swxY w Y   t	          |j        dd                                                   sJ t          |j        d d                                                   sJ t          |j        dd                                                    sJ t          j        |          5  t          j        |d<   d d d            n# 1 swxY w Y   t	          |j        d                   sJ t          j
        t          d          5  |d          d d d            d S # 1 swxY w Y   d S )	Nr   )  r1   *   A   )r   r1   r   1   49ri   )rL   r   r3   r5   r   r   r   r	   r   rm   rn   KeyError)r   /multiindex_year_month_day_dataframe_random_datar   ymdss        r   test_series_setitemz)TestMultiIndexSetItem.test_series_setitem  s    >H"#566 	  	 AgJ	  	  	  	  	  	  	  	  	  	  	  	  	  	  	 AHRUO$$((*****QXcrc]##'')))))QXbcc]##'')))))"#566 	$ 	$VAkN	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$AF2J]84000 	 	bEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s1   ;??*DD
D
	EE"%E"c                    |}|j                                         }|j                                        }||dk             }|                    |dk              }t	          j        ||           d||dk    <   d||dk    <   t	          j        |j        |           d||dk    <   d||dk    <   t	          j        |j        |           d||d d         dk     <   t          j        |d d         |d d         dk     d           t	          j        |j        |           t          j
        t          d          5  d||dz  <   d d d            d S # 1 swxY w Y   d S )Nr   r>   r,   zboolean values onlyri   )Tr]   r   whererL   rM   assert_almost_equalr3   putmaskrm   rn   ro   )r    multiindex_dataframe_random_dataframer:   r   r   r   s          r   "test_frame_getitem_setitem_booleanz8TestMultiIndexSetItem.test_frame_getitem_setitem_boolean-  s   0W\\^^!!BF88BF##
fh///26
vz
ry&11127v{
ry&111 2crc7Q;

6#2#;ssa333
ry&111]9,ABBB 	 	BrAvJ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   7	EEEc                 <   ddgg dg}g dg dg}t          ||d dg          }t          dg d	i|
          }|j        d d df         }t          j        |d         |           |j        |j        dd         df         }t          j        |d         dd         |           |j        d d d d f         }t          j        ||           |}d|j        d d df<   d|d<   t          j        ||           d|j        d d d d f<   t          j        ||           d S )Nt1t2r   r   r   )r   r   r   r0   r0   )r   r0   r,   r   r0   id)codeslevelsr+   r   )r0   r,   r1      r   r/   r0   r1   r   )r   r   r   rL   r   r/   rM   )r   r   r   midxr:   r   s         r   %test_frame_getitem_setitem_multislicez;TestMultiIndexSetItem.test_frame_getitem_setitem_multisliceF  sN   ,0 ///2fT4LIII1>>>7
#
r'{F3331w./
r'{1Q3/888111
b&)))qqq'zw
b&)))qqq!!!t
b&)))))r   c                    t          t          j                            d                              d          g dg dg          }|                                }|d         |d<   t          j        |d         |d                    |                                }|d         j        |d<   t          j        |d         |d                    d S )Nr,   )r   rF   )r   r   r   r   )r   r0   r   r0   r.   r   r   )	r   r3   rY   rZ   rk   r]   rL   rM   r   )r   r:   cps      r   test_frame_setitem_multi_columnz5TestMultiIndexSetItem.test_frame_setitem_multi_column]  s    I!!!$$44W==)))<<<8
 
 

 WWYYS'3
bgr#w/// WWYYS'.3
bgr#w/////r   c                    t          j        g d          }t          g d|          }d|d<   |d         j        dk                                    sJ g d|d<   |d         |d<   |d	         }|d
         }|d         }t          j        ||d           t          j        ||d           |j        d	k    sJ |j        d
k    sJ |j        dk    sJ d S )N)r   1r   2rD   r   )r0   r1   r>   rG   r   r   r   r0   r,   r1   r   r   r   F)check_names)r   r   r   r   r   rL   r   r   )r   r.   r:   	sliced_a1	sliced_a2	sliced_b1s         r    test_frame_setitem_multi_column2z6TestMultiIndexSetItem.test_frame_setitem_multi_column2l  s    ()M)M)MNNYYY888 33!#((***** !yy8X,3xL	xL	xL	
y)GGGG
y)GGGG~++++~++++~++++++r   c                     |}|d d         }|j         dg df         }|j         d         g d         }t          j        ||           d S )Nr>   )r   r0   rh   rS   )r   rL   r   )r   r   r   r:   r   r   s         r   #test_loc_getitem_tuple_plus_columnsz9TestMultiIndexSetItem.test_loc_getitem_tuple_plus_columns  sY     >!Wooo566*%ooo6
vx00000r   z.ignore:Setting a value on a view:FutureWarningc                    t          g dddggg dg dg          }t          t          j                            d                              t          |          df          |g d	          }t          j        ||          }|j	        d
d         }|
                    |j        dd                    }t          j        ||           d|j	        d
d<   |j	        d
d         dk    j                                        sJ d S )Nr   r0   r,   r   r,   )r   r   r0   r0   r,   r,   )r   r0   r   r0   r   r0   )r   r   rF   r   r   r   r$   rG   r0   r   )r   r   r3   rY   rZ   rk   lenrL   get_objr   reindexr/   r   r   r   )r   frame_or_seriesr/   objresr   s         r   'test_loc_getitem_setitem_slice_integersz=TestMultiIndexSetItem.test_loc_getitem_setitem_slice_integers  s   II1v&/A/A/ACUCUCU.V
 
 
 I!!!$$44c%jj!_EE(((
 
 

 jo..gaclkk#)ABB-((
S!!!!!!)--///////r   c                 P   |}|j         }|d         }||                                k    |d<   t          j        |d         ||                                k               |                    dg          }t          j        |d         ||                                k               d S )N)rV   rg   r   )r   medianrL   r   r   )r   r   r   dftr   	reindexeds         r   test_setitem_change_dtypez/TestMultiIndexSetItem.test_setitem_change_dtype  s    0g

NL
s<0!ahhjj.AAA KK(8K99	
y6AHHJJGGGGGr   c                    |}|j         g d         }d|j        |<   |j        |         j        dk                                    sJ |                                }|d         }t          j        |          5  d||<   d d d            n# 1 swxY w Y   |rt          j        ||           d S |j        |df         dk                                    sJ d S )N)r0   rF   r>   rB   rD   a   )r/   r   r   r   r]   rL   r   rM   )r   r   r   r   r   subsetframe_originalcols           r   test_set_column_scalar_with_locz5TestMultiIndexSetItem.test_set_column_scalar_with_loc  s!    1YYY'	&	&!(B.3355555Cj"#566 	 	CK	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	8!%88888Ifck*b0557777777s   6BBBc                 *   t          g dg dg dgt          d                    }|                    ddg          }t          j        dg          }d	|j        |d
f<   |                    d          d
         d	k                                    sJ d S )N)r0   r0   r"   r#   )r0   r0   yY)r0   r,   zZABCDr   r   rD   r0   r0   _rE   )r   r   r   r   r   r   xsr   )r   r:   mis      r   test_nonunique_assignment_1750z4TestMultiIndexSetItem.test_nonunique_assignment_1750  s    ///1A1A1ABDQWLL
 
 
 \\3*%%#VH--r3wfc"c)..0000000r   c                 `   t          j        g d          }t          t          j        d                              d          |t                    }|j                                        }|d         	                    t          j
                  |d<   t          j        |j        |           d S )N)r   r   r   r1   )r0   r1   r@   r   )r   r   r   r3   r4   rI   objectr/   r]   astyper   rL   assert_index_equal)r   r7   r:   r/   s       r    test_astype_assignment_with_dupsz6TestMultiIndexSetItem.test_astype_assignment_with_dups  s     %&J&J&JKKry||++F33TPPPS'..,,3
bh.....r   c                     t          j        g dddg          }t          g d|dg          }t          j        dd	d
          |j        d<   t          dg di|          }t          j        ||           d S )N))r   r   )r   r"   )r   r$   l1l2r*   r   edatar/   r.   rB   e   r   )rA   )r   r  )rB   r0   r&   r   )r   r   r   r3   r4   r   rL   rM   )r   r/   r:   r   s       r   test_setitem_nonmonotonicz/TestMultiIndexSetItem.test_setitem_nonmonotonic  s    &000t
 
 
 IIIUSEBBB9RG<<<xc<<<0>>>
b(+++++r   )__name__
__module____qualname__r   r   r;   rQ   rb   td&skip_array_manager_not_yet_implementedrs   r   r   r   r   r   r   r   r   r   r   rm   markfilterwarningsr   r   r  r  r  r  r   r   r   r   r      s       8Dt % % % %
 
 
<
 
 
&/
 /
 /
f .  /.2, , ,>U U U6+ 6+ 6+p/ / /,  (  2* * *.0 0 0, , ,.	1 	1 	1 [ PQQ0 0 RQ0&	H 	H 	H8 8 8&
1 
1 
1/ / /, , , , ,r   r   c                        e Zd Zd Zd Zd ZdS )"TestSetitemWithExpansionMultiIndexc                    g dg dg dg}t          t          |           }t          j        |          }t	          t
          j                            d                              d          |          }|	                                }|	                                }g d|d<   g d|d	<   t          j        ||           d S )
N)r   topr'  routine1r(  routine2) ODr+  result1result2r,  )r*  wxwyr*  r*  r*  r,   )rF   rh   r   )r0   r,   r1   rF   r   )r   r*  r*  )sortedzipr   r   r   r3   rY   rZ   rk   r]   rL   rM   )r   rp   tuplesr/   r:   r   r   s          r   #test_setitem_new_column_mixed_depthzFTestSetitemWithExpansionMultiIndex.test_setitem_new_column_mixed_depth  s    CCC===(((
 V%%&v..ry,,Q//??GGQVWWW7799"lls ,
fh/////r   c                     t          j        g d          }t          ddgddgddgg|          }t          ddd	          }||d
<   |d
                                                                         sJ d S )N))1a2a)r5  2b)r5  2cr0   r,   r1   rF   r>   rh   r   )r  )r0   r,   new)r   r   r   r   r   r   )r   mixr:   r   s       r   test_setitem_new_column_all_nazATestSetitemWithExpansionMultiIndex.test_setitem_new_column_all_na  s    $%O%O%OPPAAA/s;;;Aq))**5	%y~~##%%%%%%%r   c                 "   t          j        dgg d          }t          g dg|g d          }|j        d         |j        d<   t          j        ddgg d          }t          g dg dg|g d          }t	          j        ||           d S )Nr   )i1i2i3r*   )r         rS   r  )r   r   r   )r   r   r   r   rL   rM   )r   r  r:   mi_expectedr   s        r   )test_setitem_enlargement_keep_index_nameszLTestSetitemWithExpansionMultiIndex.test_setitem_enlargement_keep_index_names  s    #YK7I7I7IJJJ\\\N"oooNNNF9-y ,	"*<*<*<
 
 
 ,,-#OO
 
 

 	b(+++++r   N)r  r  r  r3  r;  rC  r   r   r   r%  r%    sA        0 0 0"& & &, , , , ,r   r%  c                 ^   | j         }|rlt          j        t          d          5  d|d         j        d d <   d d d            n# 1 swxY w Y   |d         j        dk                                    sJ d S d|d         j        d d <   |d         j        dk                                    sJ d S )Nz	read-onlyri   r   rV   )r   rm   rn   r   r   r   )r   r   r:   s      r   test_frame_setitem_view_directrE    s     
*	+B -]:[999 	$ 	$"#BuIQQQ	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$5	 A%**,,,,,,,5	5	 A%**,,,,,,,s   AAAc                 f   | j         }|s|r9t          j                    5  d|d         d<   d d d            d S # 1 swxY w Y   d S d}t          j        t
          |          5  t          j                    5  d|d         d<   d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S Nr,   rV   rf   zAA value is trying to be set on a copy of a slice from a DataFrameri   )r   rL   raises_chained_assignment_errorrm   rn   r   )r   r   r   r:   rr   s        r   test_frame_setitem_copy_raisesrI    s    
*	+B %0 %/11 	! 	! BuIe	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! R]/s;;; 	% 	%355 % %#$5	% % % % % % % % % % % % % % % %	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	%sB   8<<"B&6BB&B	B&B	B&&B*-B*c                    | j         }|}|                                }|s|r7t          j                    5  d|d         d<   d d d            n# 1 swxY w Y   nkd}t	          j        t          |          5  t          j                    5  d|d         d<   d d d            n# 1 swxY w Y   d d d            n# 1 swxY w Y   |}t          j        ||           d S rG  )r   r]   rL   rH  rm   rn   r   rM   )r   r   r   r   r   r:   rr   r   s           r    test_frame_setitem_copy_no_writerK  +  s    -.EH	B %0 %/11 	! 	! BuIe	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! R]/s;;; 	% 	%355 % %#$5	% % % % % % % % % % % % % % % %	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% F&(+++++sG   AAA6B9
B"B9"B&	&B9)B&	*B99B= B=c                  @   t          g dg dddd                              g d          } t          d| j                            d          	          }|                                 }||d
<   |                                 }d|d
<   t          j        ||           d S )Nr   )r1   rF   r>   rh   r   r   r   r   r   r   r$   )r   r   r   r/   	droplevelr]   rL   rM   )r:   serr   r   s       r   %test_frame_setitem_partial_multiindexrO  >  s    			
 	

 
 i    "(,,S11
2
2
2CWWYYFF3KwwyyHHSM&(+++++r   )numpyr3   rm   pandas.errorsr   pandas.util._test_decoratorsutil_test_decoratorsr   pandasr   r   r   r   r   r   r	   pandas._testing_testingrL   r   r   r%  skip_array_manager_invalid_testrE  rI  rK  rO  r   r   r   <module>rY     sv        . . . . . . ) ) ) ) ) ) ) ) )                           G, G, G, G, G, G, G, G,T', ', ', ', ', ', ', ',T #- - $#-% % %, , ,&, , , , ,r   