
    Pi9e                        d dl Z d dlZd dlZd dlZd dlmZmZmZm	Z	 d dl
mZ  ej         eg dg ddej        dg eg d          g d ej        d	                              d
           ej        d                              d
           ej        d                              d
          g ej        d	d                              d
           ej        dd                              d
           ej        dd                              d
          g ej        d           ej        d           ej        d          g ej        dd           ej        dd           ej        dd          gd	                                                    d             Zej        d             Z G d d          ZdS )    N)Categorical	DataFrameIndexSeries)TFT         g?gffffff
@)XYZabc
2011-01-01s
2011-01-02z
2011-01-03
US/Easterntz1 days2 daysz3 days2011-01Mfreq2011-02z2011-03)	boolint64float64categoryobjectzdatetime64[s]zdatetime64[s, US/Eastern]ztimedelta64[us]z	period[M])paramsc                     | j         \  }}||fS N)param)requestkeydatas      /home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pandas/tests/reshape/concat/test_append_common.pyitemr,      s    @ IC9    c                     | S r&    )r,   s    r+   item2r0   4   s    Kr-   c                       e Zd ZdZd Zd Zd Zd Zd Ze	j
                            dg d          d	             Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd ZdS )TestConcatAppendCommonzE
    Test common dtype coercion rules between concat and append.
    c                    |\  }} ||          }|dk    r|rd}t          |t                    r|j        |k    sJ d S t          |t                    r1|                    d          r|j        dk    sJ d S |j        |k    sJ d S d S )Nr#   stringperiodz	Period[M])
isinstancer   dtyper   
startswith)selfr,   index_or_seriesusing_infer_stringtypvalsobjs          r+   test_dtypesz"TestConcatAppendCommon.test_dtypes>   s    	Tod##(??1?Cc5!! 	(9######V$$ 	(~~h'' (yK//////yC''''		( 	( ('r-   c                    |\  }}|}|}|dk    rit          t          |          t          |          z             }t          t          |          t          |          z   t          |          z             }n||z   }||z   |z   }t          |                              t          |                    }t          |          }	t	          j        ||	           t          |                              t          |          t          |          g          }t          |          }	t	          j        ||	           t          |d          }
t          |d          }|
                    |          }t          |          }	t	          j        ||	           t          |d          }
t          |d          }|
                    |          }t          |d          }	t	          j        ||	           t          j        t          d          5  t          |                              |           d d d            n# 1 swxY w Y   t          j        t          d          5  t          |                              t          |          |g           d d d            n# 1 swxY w Y   t          |          
                    t          |          d          }t          |          }	t	          j        ||	d	           t          j        t          |          t          |          gd          }t	          j        ||	d	           t          |          }	t          j        t          |          t          |          t          |          gd          }t	          j        ||	           t          |d          }t          |d          }|
                    |d          }t          |          }	t	          j        ||	d	           t          j        ||gd          }t	          j        ||	d	           t          |d          }t          |d          }|
                    |d          }t          |d          }	t	          j        ||	d	           t          j        ||gd          }t	          j        ||	d	           d
}t          j        t          |          5  t          j        t          |          |g           d d d            n# 1 swxY w Y   t          j        t          |          5  t          j        t          |          t          |          |g           d d d            d S # 1 swxY w Y   d S )Nr"   x)nameyzall inputs must be Index)matchTignore_indexcheck_index_typezPcannot concatenate object of type '.+'; only Series and DataFrame objs are valid)r   listr   appendtmassert_index_equalpytestraises	TypeErrorr   _append_internalassert_series_equalpdconcat)r9   r,   typ1vals1vals2vals3exp_data	exp_data3resexpi1i2s1s2msgs                  r+   test_concatlike_same_dtypesz2TestConcatAppendCommon.test_concatlike_same_dtypesL   s   e:"4;;e#<==H#DKK$u++$=U$KLLIIu}H-I
 Ell!!%,,//Hoo
c3''' Ell!!5<<u">??I
c3''' 5s###5s###iimmHoo
c3''' 5s###5s###iimmH3'''
c3''' ]9,FGGG 	' 	'%LL&&&	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' ]9,FGGG 	7 	7%LLuu 5666	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 	7 Umm,,VE]],NNX
sC$???? iu6TJJJ
sC$???? YiE]]F5MM6%==9
 
 
 	sC((( E$$$E$$$!!"4!88X
sC$????iRt444
sC$???? E$$$E$$$!!"4!88XC(((
sC$????iRt444
sC$????7 	 ]9C000 	. 	.Ive}}e,---	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. ]9C000 	= 	=Ive}}fUmmU;<<<	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	=sH   #H==II#2J!!J%(J%+$TT"T2V  VVc                 l   |\  }}|\  }}|}d }	d }
||k    rt          j        d           n |dk    s|dk    rt          j        d           |dk    r<|dv r8|}
t           j                            d          }|                    |           nX|dk    r<|dv r8|}
t           j                            d          }|                    |           n|dv s|dv rt
          }	t
          }
||z   }||z   |z   }t          |                              t          |                    }t          ||		          }t          j	        ||           t          |                              t          |          t          |          g          }t          ||		          }t          j	        ||           t          |                              t          |          d
          }t          ||
	          }t          j        ||d
           t          j        t          |          t          |          gd
          }t          j        ||d
           t          ||
	          }t          j        t          |          t          |          t          |          gd
          }t          j        ||           d S )Nz3same dtype is tested in test_concatlike_same_dtypesr"   z!categorical type tested elsewherer   )r    r!   zGH#39187 casting to object)reason>   timedelta64[ns]datetime64[ns, US/Eastern]r7   TrE   rG   )rM   skipmarkxfailapplymarkerr#   r   rJ   rK   rL   r   rP   rQ   rR   rS   )r9   r,   r0   r(   rT   rU   typ2rV   rW   exp_index_dtypeexp_series_dtyperh   rX   rY   rZ   r[   s                   r+   test_concatlike_dtypes_coercionz6TestConcatAppendCommon.test_concatlike_dtypes_coercion   s   ee 4<<KMNNNNZ4:#5#5K;<<< 6>>d&:::  $;$$,H$IID%%%%V^^(< < <#;$$,H$IID%%%%FFF$ S
 K
 K
 %O%5=EME)	 Ell!!%,,//HO444
c3''' Ell!!5<<u">??I_555
c3''' Umm,,VE]],NNX%5666
sC$???? iu6TJJJ
sC$???? Y&6777iE]]F5MM6%==9
 
 
 	sC(((((r-   c                 R   t          j        ddg          }t          j        ddg          }t          t          j        d          t          j        d          t          j        d          t          j        d          g          }|                    |          }t          j        ||           t          |d         t           j                  sJ t          |d         t           j                  sJ t          |          }t          |          }|                    |          }t          j        |t          |g d                     t          |j        d         t           j                  sJ t          |j        d         t           j                  sJ t          j        ||g          }t          j        |t          |g d                     t          |j        d         t           j                  sJ t          |j        d         t           j                  sJ d S )	Nr   r   r   r   r   r   r   r   r   index)rR   DatetimeIndexTimedeltaIndexr   	Timestamp	TimedeltarJ   rK   rL   r6   r   rP   rQ   ilocrS   )r9   dtitdir[   rZ   dtstdss          r+   .test_concatlike_common_coerce_to_pandas_objectzETestConcatAppendCommon.test_concatlike_common_coerce_to_pandas_object   s    l;<<8 455\**\**X&&X&&	
 
 jjoo
c3'''#a&",/////#b'2<00000SkkSkk""3''
sF3lll$C$C$CDDD#(1+r|44444#(2,55555ic
##
sF3lll$C$C$CDDD#(1+r|44444#(2,5555555r-   c                    |}t          j        ddg|          }t          j        ddg|          }t          j        g d|          }|                    |          }t          j        ||           t          |          }t          |          }|                    |          }t          j        |t          |g d                     t          j        ||g          }t          j        |t          |g d                     d S )	Nr   r   r   
2012-01-01
2012-01-02)r   r   r   r   rq   rr   )	rR   rt   rJ   rK   rL   r   rP   rQ   rS   )	r9   tz_aware_fixturer   dti1dti2r[   rZ   dts1dts2s	            r+   test_concatlike_datetimetzz1TestConcatAppendCommon.test_concatlike_datetimetz  s   | <DDD| <DDDDDD
 
 
 kk$
c3'''d||d||##D))
sF3lll$C$C$CDDDit%%
sF3lll$C$C$CDDDDDr-   r   )UTCr   z
Asia/TokyoEST5EDTc                    t          j        ddd|d          }t          j        ddg|          }t          d	|d
dg          }t          d	|d
dg          }t          j        g d|                              d          }t          d	|d
dg          }t          j        t          j        ||g          |           d S )N
2014-07-15
2014-07-17Dns)startendr   r   unit
2014-07-11
2014-07-21r   r   AB)rs   columns)r   z
2014-07-16r   r   r   )rR   
date_rangert   r   as_unitrK   assert_frame_equalrS   )r9   r   ix1ix2df1df2exp_idxr[   s           r+    test_concatlike_datetimetz_shortz7TestConcatAppendCommon.test_concatlike_datetimetz_short*  s     mLsr
 
 
 l;CCCsCj999sCj999"RRR
 
 
 '$-- 	 3*===
bic
33S99999r-   c           	      Z   |}t          j        ddg|          }t          j        ddg          }t          t          j        d|          t          j        d|          t          j        d          t          j        d          gt                    }|                    |          }t          j        ||           t          |          }t          |          }|	                    |          }t          j
        |t          |g d                     t          j        ||g          }t          j
        |t          |g d                     t          j        d	          }	t          j        ddg|	          }
t          t          j        d|          t          j        d|          t          j        d|	          t          j        d|	          gt                    }|                    |
          }t          j        ||           t          |          }t          |
          }|	                    |          }t          j
        |t          |g d                     t          j        ||g          }t          j
        |t          |g d                     d S )
Nr   r   r   r   r   rf   rq   rr   z	US/Hawaii)rR   rt   r   rv   r#   rJ   rK   rL   r   rP   rQ   rS   zoneinfoZoneInfo)r9   r   r   r   r   r[   rZ   r   r   tz_diffdti3dts3s               r+   $test_concatlike_datetimetz_to_objectz;TestConcatAppendCommon.test_concatlike_datetimetz_to_object<  s    | <DDD| <==\b111\b111\**\**	 
 
 
 kk$
c3'''d||d||##D))
sF3lll$C$C$CDDDit%%
sF3lll$C$C$CDDD #K00| <III\b111\b111\g666\g666	 
 
 
 kk$
c3'''d||d||##D))
sF3lll$C$C$CDDDit%%
sF3lll$C$C$CDDDDDr-   c                    t          j        ddgd          }t          j        ddgd          }t          j        g dd          }|                    |          }t          j        ||           t          |          }t          |          }|                    |          }t          j        |t          |g d	                     t          j        ||g          }t          j        |t          |g d	                     d S )
Nr   r   r   r   2012-012012-02)r   r   r   r   rq   rr   )	rR   PeriodIndexrJ   rK   rL   r   rP   rQ   rS   r9   pi1pi2r[   rZ   ps1ps2s          r+   test_concatlike_common_periodz4TestConcatAppendCommon.test_concatlike_common_periodr  s    ni3#>>>ni3#>>>nIIIPSTTTjjoo
c3'''SkkSkk""3''
sF3lll$C$C$CDDDic
##
sF3lll$C$C$CDDDDDr-   c           	         t          j        ddgd          }t          j        ddgd          }t          t          j        dd          t          j        dd          t          j        dd          t          j        dd          gt                    }|                    |          }t          j        ||           t          |          }t          |          }|	                    |          }t          j
        |t          |g d	
                     t          j        ||g          }t          j
        |t          |g d	
                     d S )Nr   r   r   r   r   z
2012-02-01r   rf   rq   rr   )rR   r   r   Periodr#   rJ   rK   rL   r   rP   rQ   rS   r   s          r+   1test_concatlike_common_period_diff_freq_to_objectzHTestConcatAppendCommon.test_concatlike_common_period_diff_freq_to_object  sH   ni3#>>>nlL9DDD	)#...	)#...	,S111	,S111	 
 
 
 jjoo
c3'''SkkSkk""3''
sF3lll$C$C$CDDDic
##
sF3lll$C$C$CDDDDDr-   c           	         t          j        ddgd          }t          j        ddg          }t          t          j        dd          t          j        dd          t          j        d          t          j        d          gt                    }|                    |          }t          j	        ||           t          |          }t          |          }|                    |          }t          j        |t          |g d	                     t          j        ||g          }t          j        |t          |g d	                     t          t          j        d          t          j        d          t          j        dd          t          j        dd          gt                    }|                    |          }t          j	        ||           t          |          }t          |          }|                    |          }t          j        |t          |g d	                     t          j        ||g          }t          j        |t          |g d	                     d S )
Nr   r   r   r   r   r   rf   rq   rr   )rR   r   ru   r   r   rw   r#   rJ   rK   rL   r   rP   rQ   rS   )r9   r   rz   r[   rZ   r   r|   s          r+   0test_concatlike_common_period_mixed_dt_to_objectzGTestConcatAppendCommon.test_concatlike_common_period_mixed_dt_to_object  sB    ni3#>>>8 455	)#...	)#...X&&X&&	 
 
 
 jjoo
c3'''SkkSkk""3''
sF3lll$C$C$CDDDic
##
sF3lll$C$C$CDDD X&&X&&	)#...	)#...	 
 
 
 jjoo
c3'''SkkSkk""3''
sF3lll$C$C$CDDDic
##
sF3lll$C$C$CDDDDDr-   c           	         t          ddt          j        gd          }t          g dd          }t          ddt          j        dddgd          }t          j        t          j        ||gd          |           t          j        |                    |d          |           t          ddgd          }t          ddgd          }t          g d	          }t          j        t          j        ||gd          |           t          j        |                    |d          |           t          d
dt          j        gd          }t          t          j        dddgd          }t          d
dt          j        t          j        dddgt          j                  }t          j        t          j        ||gd          |           t          j        |                    |d          |           d S )Nr   r	   r"   rf   r	   r   r	   TrE   r
   r
   r	   r	   r   
      )	r   npnanrK   rQ   rR   rS   rP   r!   r9   r^   r_   r[   s       r+   test_concat_categoricalz.TestConcatAppendCommon.test_concat_categorical  s    Q26N*555IIIZ000aBFAq!,J???
ry"bEEEsKKK
r222D2II3OOO QF*---QF*---\\\""
ry"bEEEsKKK
r222D2II3OOO RRV$J777RVQ1%Z888b"bfbfaA6bjIII
ry"bEEEsKKK
r222D2II3OOOOOr-   c                 ,   t          t          g dg d                    }t          t          g dg d                    }t          j        ||gd          }t          t          g dg d                    }t	          j        ||           d S )Nr   
categories)r   r   r   TrE   )r   r   r   r   r   r   )r   r   rR   rS   rK   rQ   )r9   r   r   resultexpecteds        r+   6test_union_categorical_same_categories_different_orderzMTestConcatAppendCommon.test_union_categorical_same_categories_different_order  s    ;???KKKLL;???KKKLLAq6555666???SSS
 
 	vx00000r-   c                 r   t          ddt          j        gd          }t          g d          }t          ddt          j        dddgt          j                  }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          dddddt          j        gt          j                  }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          ddgd          }t          ddg          }t          g d	          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          g d
          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          ddt          j        gd          }t          g d          }t          ddt          j        dddgt          j                  }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          dddddt          j        gt          j                  }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          ddt          j        gd          }t          g d          }t          ddt          j        dddg          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          dddddt          j        g          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          ddgd          }t          t          j        t          j        t          j        g          }t          ddt          j        t          j        t          j        g          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           t          t          j        t          j        t          j        ddg          }t	          j        t          j        ||gd          |           t	          j        |                    |d          |           d S )Nr   r	   r"   rf   r   TrE   r
   r   )r	   r   r
   r	   r   r   r   r
   r	   r   r   r   r   )	r   r   r   r!   rK   rQ   rR   rS   rP   r   s       r+    test_concat_categorical_coercionz7TestConcatAppendCommon.test_concat_categorical_coercion  s    Q26N*555IIIaBFAq!,BJ???
ry"bEEEsKKK
r222D2II3OOO aAq!RV,BJ???
ry"bEEEsKKK
r222D2II3OOO QF*---QF^^\\\""
ry"bEEEsKKK
r222D2II3OOO\\\""
ry"bEEEsKKK
r222D2II3OOO RRV$J777IIIb"bfaA.bjAAA
ry"bEEEsKKK
r222D2II3OOOaAr2rv.bjAAA
ry"bEEEsKKK
r222D2II3OOO RRV$J777OOO$$b"bfc3455
ry"bEEEsKKK
r222D2II3OOOc3RRV455
ry"bEEEsKKK
r222D2II3OOO RHJ///RVRVRV,--b"bfbfbf566
ry"bEEEsKKK
r222D2II3OOObfbfbfb"566
ry"bEEEsKKK
r222D2II3OOOOOr-   c                    t          ddt          j        gd          }t          g dd          }t          ddddt          j        g          }t          ddt          j        dddddddt          j        gd          }t          j        t          j        |||gd          |           t          ddddt          j        ddt          j        dddgd          }t          j        t          j        |||gd          |           t          g d	d          }t          g d
d          }t          g d          }t          g d          }t          j        t          j        |||gd          |           t          g d          }t          j        t          j        |||gd          |           t          g d	d          }t          g d
d          }t          g d          }t          g d          }t          j        t          j        |||gd          |           t          g d          }t          j        t          j        |||gd          |           d S )Nr   r	   r"   rf   r   floatTrE   )         r   )r   r
   r   )	r   r   r   r   r	   r
   r   r
   r   )	r   r
   r   r   r   r   r   r	   r
   )r   r      )	r   r   r   r   r	   r
   r   r   r   )	r   r   r   r   r   r   r   r	   r
   )r   r   r   rK   rQ   rR   rS   )r9   r^   r_   s3r[   s        r+   &test_concat_categorical_3elem_coercionz=TestConcatAppendCommon.test_concat_categorical_3elem_coercion3  sl    Q26N*555IIIZ000Q1a())aBFAq!Q1a@PPP
ry"b"DIII3OOOaAq"&!Q1a@PPP
ry"b"DIII3OOO IIIZ000IIIZ000III00011
ry"b"DIII3OOO00011
ry"b"DIII3OOO IIIZ000IIIZ000LLL!!33344
ry"b"DIII3OOO33344
ry"b"DIII3OOOOOr-   c                 R   t          ddgd          }t          ddgd          }t          ddg          }t          ddgd          }t          dt          j        g          }t          g dd          }t          dddddddddt          j        dddg          }t          j        ||||||gd	          }t          j        ||           t          ddddt          j        ddddddddg          }t          j        ||||||gd	          }t          j        ||           d S )
Nr   r
   r"   rf   r   r	   r   TrE   )r   r   r   rR   rS   rK   rQ   )	r9   r^   r_   r   s4s5s6r[   rZ   s	            r+   &test_concat_categorical_multi_coercionz=TestConcatAppendCommon.test_concat_categorical_multi_coercionW  sB    QF*---QF*---QF^^QF*---QK  IIIZ000 aAq!Q1aAqABBiRRR0tDDD
sC(((aAq"&!Q1aAqABBiRRR0tDDD
sC(((((r-   c                    t          t          ddt          j        gd                    }t          t          g dd                    }t          t          ddt          j        dddgd                    }t	          j        t          j        ||gd          |           t          t          ddt          j        dddddt          j        g	d                    }t	          j        t          j        |||gd          |           d S )Nr   r	   T)orderedr   rE   )r   r   r   r   rK   rQ   rR   rS   r   s       r+   test_concat_categorical_orderedz6TestConcatAppendCommon.test_concat_categorical_orderedj  s     KArv===>>K			488899[!Q1a!8$GGGHH
ry"bEEEsKKK[!Q1aArv!FPTUUUVV
ry"b"DIII3OOOOOr-   c                    t          t          j        t          j        t          j        gt          j                  d          }t          t          j        dg          }t          t          j        t          j        t          j        dg          }t          j        t          j        ||gd          |           t          dt          j        gd          }t          t          j        t          j        g          }t          dt          j        t          j        t          j        gd          }t          j        t          j        ||gd          |           t          t          j        t          j        gd          }t          t          j        t          j        g          }t          t          j        t          j        t          j        t          j        g          }t          j        t          j        ||gd          |           t          j        t          j        ||gd          |           t          t          j        t          j        gd          }t          t          j        t          j        gd          }t          t          j        t          j        t          j        t          j        gd          }t          j        t          j        ||gd          |           d S )Nrf   r"   r   TrE   r   )	r   r   arrayr   r!   rK   rQ   rR   rS   r   s       r+   $test_concat_categorical_coercion_nanz;TestConcatAppendCommon.test_concat_categorical_coercion_nanv  s   
 BHbfbf-RZ@@@
SSSRVQK  bfbfbfa011
ry"bEEEsKKKQKz222RVRV$%%a0@@@
ry"bEEEsKKK RVRV$J777RVRV$%%bfbfbfbf566
ry"bEEEsKKK
ry"bEEEsKKK RVRV$J777RVRV$J777bfbfbfbf5ZHHH
ry"bEEEsKKKKKr-   c                    t          g d          }t          ddgd          }|                    t                    }t          j        t          j        ||gd          |           t          j        |                    |d          |           t          j        t          j        ||gd          |           t          j        |                    |d          |           t          g d          }t          g d          }t          j        t          j        ||gd          |           t          j        |                    |d          |           t          g d          }t          g d          }t          j        t          j        ||gd          |           t          j        |                    |d          |           t          j        t          j        ||gd          |           t          j        |                    |d          |           t          g d          }t          t          j	        t          j	        g          }t          t          j	        t          j	        gt                    }t          j        t          j        ||gd          |           t          j        t          j        ||gd          |           d S )Nr"   rf   r   r	   TrE   r#   )
r   astyper#   rK   rQ   rR   rS   rP   r   r   r   s       r+   test_concat_categorical_emptyz4TestConcatAppendCommon.test_concat_categorical_empty  s    Bj)))QF*---ii
ry"bEEEsKKK
r222D2II3OOO
ry"bEEEsKKK
r222D2II3OOOBj)))Bj)))
ry"bEEErJJJ
r222D2II2NNNBj)))Bh''' 	ry"bEEErJJJ
r222D2II2NNN
ry"bEEErJJJ
r222D2II2NNNBj)))RVRV$%%bfbf%V444
ry"bEEEsKKK
ry"bEEEsKKKKKr-   c                    t          ddgddg          }ddg}t          ||d          }t          g dddg          }g d}t          ||dt          g d	          
          }t          j        t          j        ||g          |           t          ddgg d          }ddg}t          ||d          }	t          j        ||	gd          }
t          t          d          g dd          }t          j        |
|           d S )Nr   r   r   r   r	   )catsr=   )r   r   r   r   )r   r	   r   r	   rq   rr   r   TrE   abab)r   r   r   rK   r   rR   rS   rI   )r9   catr=   dfcat2rV   r[   cat3rW   df_different_categoriesrZ   s              r+   test_categorical_concat_appendz5TestConcatAppendCommon.test_categorical_concat_append  s4   3*#s<<<1vT2233///S#JGGGu55U<<<=P=PQQQ
biR113777 C:///BBBA"+T5,I,I"J"Ji45DIIIf|||DDEE
c3'''''r-   N)__name__
__module____qualname____doc__r?   ra   rn   r}   r   rM   rh   parametrizer   r   r   r   r   r   r   r   r   r   r   r   r   r   r/   r-   r+   r2   r2   9   s        ( ( (_= _= _=BF) F) F)P6 6 6@E E E* [T#Q#Q#QRR: : SR:"4E 4E 4ElE E E$E E E4.E .E .E`P P P61 1 1>P >P >P@"P "P "PH) ) )&
P 
P 
PL L LB!L !L !LF( ( ( ( (r-   r2   )r   numpyr   rM   pandasrR   r   r   r   r   pandas._testing_testingrK   fixturerI   r   rv   r   rw   r   itemsr,   r0   r2   r/   r-   r+   <module>r      s                              4'''YYRVS)#OOO44%oo\**22377\**22377\**22377 \l;;;CCCHH\l;;;CCCHH\l;;;CCCHH* X&&X&&X&&  	)#...	)#...	)#...+	
 	
4 %''7   > ? >
   R
( R
( R
( R
( R
( R
( R
( R
( R
( R
(r-   