o
    Ti+                     @  s  d Z ddlmZ ddlmZ ddlmZmZmZmZm	Z	 ddl
mZ ddlZddlZddlmZ ddlmZmZ dd	lmZmZ ddlZdd
lmZ ddlZddlZddlmZmZ ddlm   m!Z" ddl#m$Z$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/Z0 ddl1m2Z2 ddl3m4Z4m5Z5 ddl6m7Z7 erddl8m9Z9m:Z: zddl;Z<W n e=y   dZ>Y nw [<dZ>ddl?Z?ze?@d W n e?jAy   dZ?Y nw dddZBdddZCdd d!ZDejEjFgZGe7ejHe7d"kreGIejEjJ ejKjLd#deMeGd$ ejKNd# d%O D ]ZPeQe'jRjSePZTeUeTejVeTeWd&d'eX d( qd)O D ]"ZPeQe'jRjSePZTeUeTejVeTeWd*d+eX ejWd,d-d.d/ q-d0O D ]"ZPeQe'jRjSePZTeUeTejVeTeWd1d2eX ejWd,d-d.d3 qTejYdd4d5ZZejYdd6dd7d8Z[ejYg d9d:d; d<d=d> Z\e\Z]ejYd,d?gd@d; d<dAdB Z^ejYg dCdDdEdF Z_ejYg dCdDdGdH Z`ejYddgdDdIdJ ZaejYg dKdDdLdM ZbejYg dNdDdOdP ZcejYg dQdDdRdS ZdejYg dQdDdTdU ZeejYddVdWdXdYdZejfd[e"gd\d]gdDd^d_ ZhejYdVdWdXdYdZejfd[e"gd\d]gdDd`da ZiejYddgdDdbdc ZjejYg dddDdedf ZkejYdgdhgdDdidj ZlejYe0jmdkd; d<dldm ZnenZoejYdejpe'jqgdDdndo ZrerZsejYe0jtdpd; d<dqdr ZueuZvejYe(e+gdDdsdt ZwejYe4e+gdudvgd<dwdx ZxexZyejYe4e+e'jzgg dyd<dzd{ Z{ejYe4e+e(e'jzgd|d; d<d}d~ Z|e|Z}ejYdd Z~ejYdd ZejYdd ZejYdddZejYdddZdd Zdd Zi de0dde0dde0jdddde0dde0dde0dde0jdddde0jdddde0jdddde0jdddde0jdddde0jdddde0jdddde0jdddde0jdddde0jdddde0dee4ejdddk e0jdddde0jdddde0de0de4g e5eg dg de e e4g de4eddde4eddde4eddde4ededde4e'jze0ddddZe>re4e'jze0dddZeed< ejYe dDddu ZeZejYdd e D dDdd ZeZejYdd e D dDdd ZejYdddZejYdddZejYdddZddÄ Zddń e D ZejYdddǄZejYdddɄZddń e0jD Zi eeeZejYe dDdd̄ Zddń e0jD Zi eeeeZejYe dDddτ ZejYdddфZejYdddӄZejYdddՄZejYdddׄZejYdddلZejYe)dd+dڍe%ddۃfe)dddڍe%ddۃfe*ddddfe*ddddfe-ddde$dddfe,dddfgdDdd ZejYe0jdDdd ZejYeje2jeje2jeje2jeje2jeje2jeje2jeje2jejejejejejejeje2jeje2jeje2jgdDdd ZejYeje2jeje2jeje2jeje2jeje2jeje2jeje2jgdDdd Zg dZejYedDdd ZddgZejYedDdd Zee ZejYedDdd ZejYejejejejejejgdDdd ZejYg ddDd d ZejYg ddDdd Zg dZejYedDdd ZejYdd	 ZejYdddZejYdddZejYdddZejYdddZdddddddddde e ededede	je	ed,de	edddd gZe?durdee?@de?@dg d!d eD Ze"eeejYeed<d"d# Ze"eed,d ejYed,d ed,d d<d$d% ZeZd&d'ee e	jgZe?dureIe?@d ejYedDd(d) ZeZejYe0jdDd*d+ ZejYdejfde"gd,d]gdDd-d. ZejYd/ejfd,e"gd,d]ejfd0e"gd,d]gdDd1d2 ZejYd3ejfd,e"gd,d]gdDd4d5 ZeZejYe0jdDd6d7 ZejYe0jdDd8d9 ZejYd:dejfde"gd,d]ejfd;e"gd,d]gdDd<d= ZejYe0jdDd>d? ZejYe0jdDd@dA ZejYddCdDZ ejYe0jdDdEdF ZejYe0jdDdGdH ZejYe0jdDdIdJ ZejYe0jdDdKdL ZejYe0j	dDdMdN Z
ejYe0jdDdOdP ZejYe0jdDdQdR ZejYe0jdDdSdT ZejYe0jdDdUdV ZejYe0je0j dDdWdX ZejYe0je0j e0j e0j dDdYdZ ZejYe0jdDd[d\ ZejYe0jdDd]d^ ZejYe0jdDd_d` ZejYe0jdDdadb ZejYe0jdDdcdd Z ddeejpdfgfddee'j!dfgfdgdee'jqdfgfdhdiejpdjgfdkejpejpejpgfdkg fdldeejpdgfdgdeejpdmgfdndoejpdmgfdpd,ejpdgfdqd,ejpdmgfdred,ejpedgfddejpdgfdde'j!dgfdse"dtejpe"dugfde-dvejpe-dwgfdxedyd,d,ejpedzd,d,gfd{d|ejpd}gfded,ejpedgfd~ed,ejpedgfde*dye'jqe*dzgfde)dd,ejpe)ddgfgZ#ee# \Z$Z%ejYe#e$d<dd Z&ejYdd Z'ejYg ddDdd Z(ejYdd e'jSj)D dDdd Z*ejYddd; gdDdd Z+eY dd Z,ejYdddejpejpejpfejpe'jqdfejpe'j!dfe'j!e'j!e'j!fgdDdddZ-ejYe0j.e0j/e0j0gdDdd Z1ejYe0j/e0j0gdDdd Z2ejYe0j.e0j0gdDdd Z3ejYe0j.e0j/gdDdd Z4ejYe0j5e0j/gdDdd Z6ejYe0j7e0j0gdDdd Z8ejYdddZ9ejYdddZ:ddgZ;e?du
re;Ie?@d ejYe;dDdddZ<eY dd Z=dS (  a  
This file is very long and growing, but it was decided to not split it yet, as
it's still manageable (2020-03-17, ~1.1k LoC). See gh-31989

Instead of splitting it was decided to define sections here:
- Configuration / Settings
- Autouse fixtures
- Common arguments
- Missing values & co.
- Classes
- Indices
- Series'
- DataFrames
- Operators & Operations
- Data sets/files
- Time zones
- Dtypes
- Misc
    )annotations)abc)datedatetimetime	timedeltatimezone)DecimalN)Path)TYPE_CHECKINGCallable)tzlocaltzutc)
strategies)FixedOffsetutc)DatetimeTZDtypeIntervalDtype)	DataFrameIntervalPeriodSeries	Timedelta	Timestamp)ops)Index
MultiIndex)Version)HashableIteratorFTUTCreturnNonec                 C  s   | j dddd d S )N--no-strict-data-filesstore_falsez6Don't fail if a test is skipped for missing data file.)actionhelp)Z	addoption)parser r(   O/var/www/html/evchargy.com/venv/lib/python3.10/site-packages/pandas/conftest.pypytest_addoptionh   s
   
r*   itempytest.Itempathstrmessagec                 C  s,   | j |r| tjd|  dS dS )a  Ignore doctest warning.

    Parameters
    ----------
    item : pytest.Item
        pytest test item.
    path : str
        Module path to Python object, e.g. "pandas.core.frame.DataFrame.append". A
        warning will be filtered when item.name ends with in given path. So it is
        sufficient to specify e.g. "DataFrame.append".
    message : str
        Message to be filtered.
    zignore:N)nameendswith
add_markerpytestmarkfilterwarnings)r+   r-   r/   r(   r(   r)   ignore_doctest_warningp   s   r6   c                 C  sv   | dp|j ddd}g d}| D ]&}|r,|tjd |D ]
\}}t||| q!d|jv r8|tjj qd S )Nz--doctest-modulesz--doctest-cythonF)default))Zis_int64_dtypezis_int64_dtype is deprecated)Zis_interval_dtypezis_interval_dtype is deprecated)Zis_period_dtypezis_period_dtype is deprecated)Zis_datetime64tz_dtypez#is_datetime64tz_dtype is deprecated)Zis_categorical_dtypez"is_categorical_dtype is deprecated)Z	is_sparsezis_sparse is deprecated)NDFrame.replacezThe 'method' keyword)r8   zSeries.replace without 'value')zSeries.idxminThe behavior of Series.idxmin)zSeries.idxmaxThe behavior of Series.idxmax)zSeriesGroupBy.idxminr9   )zSeriesGroupBy.idxmaxr:   )zmissing.mask_zero_div_zerozdivide by zero encountered)Zto_pydatetimez>The behavior of DatetimeProperties.to_pydatetime is deprecated)z pandas.core.generic.NDFrame.boolzY(Series|DataFrame).bool is now deprecated and will be removed in future version of pandas)z!pandas.core.generic.NDFrame.firstzqfirst is deprecated and will be removed in a future version. Please create a mask and filter using `.loc` instead)zResampler.fillnaz+DatetimeIndexResampler.fillna is deprecated)DataFrameGroupBy.fillnaz3DataFrameGroupBy.fillna with 'method' is deprecated)r;   z,DataFrame.fillna with 'method' is deprecatedadd_doctest_importsz/frame/)	getoptionr2   r3   r4   Zusefixturesr6   ZnodeidZarraymanager)itemsconfigZ
is_doctestZignored_doctest_warningsr+   r-   r/   r(   r(   r)   pytest_collection_modifyitems   s   +
r@   z6.83.2ci)deadlineZsuppress_health_checkz)MonthBegin MonthEnd BMonthBegin BMonthEndic   )n	normalizez%YearBegin YearEnd BYearBegin BYearEnd         )Z	min_valueZ	max_value)rD   rE   monthz1QuarterBegin QuarterEnd BQuarterBegin BQuarterEndi   )rD   rE   ZstartingMonthc                 C  s   t | d< t| d< dS )z:
    Make `np` and `pd` names available for doctests.
    nppdN)rL   rM   )Zdoctest_namespacer(   r(   r)   r<      s   r<   )Zautousec                   C  s   t dd dS )z<
    Configure settings for all tests and test modules.
    Zchained_assignmentraiseN)rM   Z
set_optionr(   r(   r(   r)   configure_tests  s   rO   )r   rH   indexcolumnsc                 C     dt |  S Nzaxis=reprxr(   r(   r)   <lambda>      rX   )paramsidsc                 C     | j S )z@
    Fixture for returning the axis numbers of a DataFrame.
    paramrequestr(   r(   r)   axis     ra   rQ   c                 C  rR   rS   rT   rV   r(   r(   r)   rX     rY   c                 C  r\   )zA
    Fixture for returning aliases of axis 1 of a DataFrame.
    r]   r_   r(   r(   r)   axis_1  rb   rc   )TFN)rZ   c                 C  r\   )a  
    Pass in the observed keyword to groupby for [True, False]
    This indicates whether categoricals should return values for
    values which are not in the grouper [False / None], or only values which
    appear in the grouper [True]. [None] is supported for future compatibility
    if we decide to change the default (and would need to warn if this
    parameter is not passed).
    r]   r_   r(   r(   r)   observed      
rd   c                 C  r\   )z6
    Boolean 'ordered' parameter for Categorical.
    r]   r_   r(   r(   r)   ordered-  rb   rf   c                 C  r\   )z%
    Boolean 'skipna' parameter.
    r]   r_   r(   r(   r)   skipna5  rb   rg   )firstlastFc                 C  r\   )z[
    Valid values for the 'keep' parameter used in
    .duplicated or .drop_duplicates
    r]   r_   r(   r(   r)   keep=     rj   )bothneitherleftrightc                 C  r\   )zA
    Fixture for trying all interval 'inclusive' parameters.
    r]   r_   r(   r(   r)   inclusive_endpoints_fixtureF  rb   rp   )rn   ro   rl   rm   c                 C  r\   )z<
    Fixture for trying all interval closed parameters.
    r]   r_   r(   r(   r)   closedN  rb   rq   c                 C  r\   )zS
    Secondary closed fixture to allow parametrizing over all pairs of closed.
    r]   r_   r(   r(   r)   other_closedV  rb   rr   gzipbz2zipxztarZzstdZ	zstandard)Zmarksc                 C  r\   )zK
    Fixture for trying common compression types in compression tests.
    r]   r_   r(   r(   r)   compression^     rx   c                 C  r\   )zk
    Fixture for trying common compression types in compression tests excluding
    uncompressed case.
    r]   r_   r(   r(   r)   compression_onlyp  ry   rz   c                 C  r\   )z,
    Fixture that an array is writable.
    r]   r_   r(   r(   r)   writable  rb   r{   )innerouterrn   ro   c                 C  r\   )z:
    Fixture for trying all types of join operations.
    r]   r_   r(   r(   r)   	join_type  rb   r~   nlargest	nsmallestc                 C  r\   )z1
    Fixture for trying all nselect methods.
    r]   r_   r(   r(   r)   nselect_method  rb   r   c                 C  
   t | jS Ntype__name__rV   r(   r(   r)   rX        
 c                 C  r\   )z/
    Fixture for each null type in pandas.
    r]   r_   r(   r(   r)   nulls_fixture  rb   r   c                 C  r\   )zL
    Fixture for each null type in pandas, each null type exactly once.
    r]   r_   r(   r(   r)   unique_nulls_fixture  rb   r   c                 C  r   r   r   rV   r(   r(   r)   rX     r   c                 C  r\   )z-
    Fixture for each NaT type in numpy.
    r]   r_   r(   r(   r)   np_nat_fixture  rb   r   c                 C  r\   )z;
    Fixture to parametrize over DataFrame and Series.
    r]   r_   r(   r(   r)   frame_or_series  rb   r   rP   seriesc                 C  r\   )z
    Fixture to parametrize over Index and Series, made necessary by a mypy
    bug, giving an error:

    List item 0 has incompatible type "Type[Series]"; expected "Type[PandasObject]"

    See GH#29725
    r]   r_   r(   r(   r)   index_or_series  re   r   )rP   r   arrayc                 C  r\   )zG
    Fixture to parametrize over Index, Series, and ExtensionArray
    r]   r_   r(   r(   r)   index_or_series_or_array  rb   r   c                 C  r\   r   )r   rV   r(   r(   r)   rX         c                 C  r\   )z]
    Fixture to test behavior for Index, Series, DataFrame, and pandas Array
    classes
    r]   r_   r(   r(   r)   box_with_array  rk   r   c                  C  s   G dd dt } | S )z,
    Fixture for a dictionary subclass.
    c                   @  s   e Zd ZdddZdS )z"dict_subclass.<locals>.TestSubDictr!   r"   c                 _  s   t j| g|R i | d S r   )dict__init__)selfargskwargsr(   r(   r)   r     s   z+dict_subclass.<locals>.TestSubDict.__init__Nr!   r"   )r   
__module____qualname__r   r(   r(   r(   r)   TestSubDict  s    r   )r   )r   r(   r(   r)   dict_subclass  s   r   c                  C  s   G dd dt j} | S )z8
    Fixture for a non-mapping dictionary subclass.
    c                   @  s2   e Zd ZdddZdd Zddd	ZdddZdS )z5non_dict_mapping_subclass.<locals>.TestNonDictMappingr!   r"   c                 S  s
   || _ d S r   )_data)r   Zunderlying_dictr(   r(   r)   r        
z>non_dict_mapping_subclass.<locals>.TestNonDictMapping.__init__c                 S  s   | j |S r   )r   __getitem__)r   keyr(   r(   r)   r   	  s   zAnon_dict_mapping_subclass.<locals>.TestNonDictMapping.__getitem__r   c                 S  
   | j  S r   )r   __iter__r   r(   r(   r)   r     r   z>non_dict_mapping_subclass.<locals>.TestNonDictMapping.__iter__intc                 S  r   r   )r   __len__r   r(   r(   r)   r     r   z=non_dict_mapping_subclass.<locals>.TestNonDictMapping.__len__Nr   )r!   r   )r!   r   )r   r   r   r   r   r   r   r(   r(   r(   r)   TestNonDictMapping  s
    

r   )r   Mapping)r   r(   r(   r)   non_dict_mapping_subclass  s   r   c                  C  s^   t d} | dd dd dd g }|jdd |jjD |_|jjg dd	d
 |S )z
    DataFrame with 3 level MultiIndex (year, month, day) covering
    first 100 business days from 2000-01-01 with random data
    d   c                 S  r\   r   )yearrV   r(   r(   r)   rX     r   zAmultiindex_year_month_day_dataframe_random_data.<locals>.<lambda>c                 S  r\   r   )rJ   rV   r(   r(   r)   rX     r   c                 S  r\   r   )dayrV   r(   r(   r)   rX     r   c                 S  s   g | ]}| d qS )i8)astype).0Zlevr(   r(   r)   
<listcomp>!  s    zCmultiindex_year_month_day_dataframe_random_data.<locals>.<listcomp>)r   rJ   r   T)Zinplace)tmZmakeTimeDataFramegroupbysumrP   Z
set_levelslevelsZ	set_names)ZtdfZymdr(   r(   r)   /multiindex_year_month_day_dataframe_random_data  s
   
 r   r   c                   C  s*   t g dg dgg dg dgddgdS )z;
    2-level MultiIndex, lexsorted, with string names.
    foobarbazquxonetwothree)
r   r   r   rH   rH      r      r   r   )
r   rH   r   r   rH   rH   r   r   rH   r   rh   second)r   codesnames)r   r(   r(   r(   r)   %lexsorted_two_level_string_multiindex&  s
   r   r   c                 C  s,   | }t tjdd|tg ddddS )z2DataFrame with 2 level MultiIndex with random datar   )
   r   )ABCexpr0   )rP   rQ   )r   rL   randomdefault_rngstandard_normalr   )r   rP   r(   r(   r)    multiindex_dataframe_random_data2  s   r   c                  C  sT   t g d} t ddg}tg d}tg d}ddg}t| |g||g|dd	S )
zJ
    MultiIndex used to test the general functionality of this object
    r   r   r   )r   r   rH   r   r   r   )r   rH   r   rH   r   rH   rh   r   F)r   r   r   Zverify_integrity)r   rL   r   r   )Z
major_axisZ
minor_axisZmajor_codesZminor_codesZindex_namesr(   r(   r)   _create_multiindex?  s   r   c                   C  s,   t jddgddgtjddddgg d	d
S )zB
    MultiIndex with a level that is a tzaware DatetimeIndex.
    rH   r   ab20130101r   
US/Eastern)Zperiodstzr   )r   )r   Zfrom_productrM   Z
date_ranger(   r(   r(   r)   _create_mi_with_dt64tz_levelS  s   r   stringr   r   zdatetime-tzz
US/Pacific)r   Zperiodr   rangeZint8dtypeZint16int32int64Zuint8Zuint16Zuint32Zuint64float32Zfloat64zbool-objectr   r   	complex64
complex128)r   r   r   )rH   r   r   )r   r   rH   rH   r   r   ZInt64ZUInt16ZFloat32booleanzstring[python])
bool-dtyper   r   Zcategoricalintervalemptytuplesmi-with-dt64tz-levelmultirepeatsZnullable_intZnullable_uintZnullable_floatZnullable_boolzstring-pythonzstring[pyarrow]zstring-pyarrowc                 C  s   t | j  S )z
    Fixture for many "simple" kinds of indices.

    These indices are unlikely to cover corner cases, e.g.
        - no names
        - no NaTs/NaNs
        - no values near implementation bounds
        - ...
    )indices_dictr^   copyr_   r(   r(   r)   rP     s   c                 C  s   g | ]\}}t |ts|qS r(   )
isinstancer   r   r   valuer(   r(   r)   r     s
    r   c                 C  s   | j }t|  S )z8
    index fixture, but excluding MultiIndex cases.
    )r^   r   r   )r`   r   r(   r(   r)   
index_flat  s   	r   c                 C  s0   g | ]\}}| d s|dv st|ts|qS ))r   Zuintfloat)r   r   r   r   )
startswithr   r   r   r(   r(   r)   r     s    c                 C  s   t | j jdd}|j }| jdv r4| }d|d dd  |d< d|d dd  |d< t|S d|d< d|d< t||S )	z
    Fixture for indices with missing values.

    Integer-dtype and empty cases are excluded because they cannot hold missing
    values.

    MultiIndex is excluded because isna() is not defined for MultiIndex.
    Tdeep)r   r   r   r   r   rH   N)r   r^   r   valuestolistr   from_tuplesr   )r`   indvalsr(   r(   r)   index_with_missing  s   


r   r   c                  C     t  } d| _| S )zC
    Fixture for Series of floats with Index of unique strings
    r   )r   ZmakeStringSeriesr0   sr(   r(   r)   string_series     r   c                  C  r   )zI
    Fixture for Series of dtype object with Index of unique strings
    objects)r   ZmakeObjectSeriesr0   r   r(   r(   r)   object_series  r   r   c                  C  r   )z9
    Fixture for Series of floats with DatetimeIndex
    ts)r   ZmakeTimeSeriesr0   r   r(   r(   r)   datetime_series  r   r   c                 C  s*   t | }tjd|}t|| dddS )zHelper for the _series dictr   r   F)rP   r0   r   )lenrL   r   r   r   r   )rP   sizedatar(   r(   r)   _create_series  s   r  c                 C  s"   i | ]\}}d | dt |qS )zseries-with-z-indexr  )r   Zindex_idrP   r(   r(   r)   
<dictcomp>  s    r  c                 C  s   t | S )zE
    Fixture for tests on series with changing types of indices.
    r  rP   r(   r(   r)   series_with_simple_index  s   r  c                  C  sP   g dg dg} t |  }t|}tjdd}t||d}tj|j	d< |S )z:
    Fixture with a Series with a 2-level MultiIndex.
    )r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r      r  r   )
ru   r   r   rL   r   r   r   r   naniloc)Zarraysr   rP   r  Zserr(   r(   r)   series_with_multilevel_index  s   
r
  c                 C  s$   i | ]}|j  d tjd|dqS )-seriesr   )r0   r   )r   r   Zmake_rand_seriesr   r   r(   r(   r)   r    s    c                 C     t | j jddS )z|
    Fixture for tests on indexes, series and series with a narrow dtype
    copy to avoid mutation, e.g. setting .name
    Tr   )_index_or_series_objsr^   r   r_   r(   r(   r)   index_or_series_obj  s   r  c                 C  s   i | ]}|j  d t|qS )r  )r   r   r  r(   r(   r)   r  '  s    c                 C  r  )z
    Fixture for tests on indexes, series, series with a narrow dtype and
    series with empty objects type
    copy to avoid mutation, e.g. setting .name
    Tr   )_index_or_series_memory_objsr^   r   r_   r(   r(   r)   index_or_series_memory_obj4  s   r  c                   C  s   t t dS )a6  
    Fixture for DataFrame of ints with index of unique strings

    Columns are ['A', 'B', 'C', 'D']

                A  B  C  D
    vpBeWjM651  1  0  1  0
    5JyxmrP1En -1  0  0  0
    qEDaoD49U2 -1  1  0  0
    m66TkTfsFe  0  0  0  0
    EHPaNzEUFm -1  0 -1  0
    fpRJCevQhi  2  0  0  0
    OlQvnmfi3Q  0  0 -2  0
    ...        .. .. .. ..
    uB1FPlz4uP  0  0  0  1
    EcSe6yNzCU  0  0 -1  0
    L50VudaiI8 -1  1 -2  0
    y3bpw4nwIp  0 -1  0  0
    H0RdLLwrCT  1  1  0  0
    rY82K0vMwm  0  0  0  0
    1OPIUjnkjk  2  0  0  0

    [30 rows x 4 columns]
    r   )r   r   getSeriesDatar   r(   r(   r(   r)   	int_frameA  s   r  c                   C     t t S )a  
    Fixture for DataFrame of floats with DatetimeIndex

    Columns are ['A', 'B', 'C', 'D']

                       A         B         C         D
    2000-01-03 -1.122153  0.468535  0.122226  1.693711
    2000-01-04  0.189378  0.486100  0.007864 -1.216052
    2000-01-05  0.041401 -0.835752 -0.035279 -0.414357
    2000-01-06  0.430050  0.894352  0.090719  0.036939
    2000-01-07 -0.620982 -0.668211 -0.706153  1.466335
    2000-01-10 -0.752633  0.328434 -0.815325  0.699674
    2000-01-11 -2.236969  0.615737 -0.829076 -1.196106
    ...              ...       ...       ...       ...
    2000-02-03  1.642618 -0.579288  0.046005  1.385249
    2000-02-04 -0.544873 -1.160962 -0.284071 -1.418351
    2000-02-07 -2.656149 -0.601387  1.410148  0.444150
    2000-02-08 -1.201881 -1.289040  0.772992 -1.445300
    2000-02-09  1.377373  0.398619  1.008453 -0.928207
    2000-02-10  0.473194 -0.636677  0.984058  0.511519
    2000-02-11 -0.965556  0.408313 -1.312844 -0.381948

    [30 rows x 4 columns]
    )r   r   ZgetTimeSeriesDatar(   r(   r(   r)   datetime_frame^     r  c                   C  r  )a  
    Fixture for DataFrame of floats with index of unique strings

    Columns are ['A', 'B', 'C', 'D'].

                       A         B         C         D
    P7GACiRnxd -0.465578 -0.361863  0.886172 -0.053465
    qZKh6afn8n -0.466693 -0.373773  0.266873  1.673901
    tkp0r6Qble  0.148691 -0.059051  0.174817  1.598433
    wP70WOCtv8  0.133045 -0.581994 -0.992240  0.261651
    M2AeYQMnCz -1.207959 -0.185775  0.588206  0.563938
    QEPzyGDYDo -0.381843 -0.758281  0.502575 -0.565053
    r78Jwns6dn -0.653707  0.883127  0.682199  0.206159
    ...              ...       ...       ...       ...
    IHEGx9NO0T -0.277360  0.113021 -1.018314  0.196316
    lPMj8K27FA -1.313667 -0.604776 -1.305618 -0.863999
    qa66YMWQa5  1.110525  0.475310 -0.747865  0.032121
    yOa0ATsmcE -0.431457  0.067094  0.096567 -0.264962
    65znX3uRNG  1.528446  0.160416 -0.109635 -0.032987
    eCOBvKqf3e  0.235281  1.622222  0.781255  0.392871
    xSucinXxuV -1.263557  0.252799 -0.552247  0.400426

    [30 rows x 4 columns]
    )r   r   r  r(   r(   r(   r)   float_frame{  r  r  c                	   C  s>   t dddtjdgd ddtjdgd ddd	tdd
S )z
    Fixture for DataFrame of float/int/string columns with RangeIndex
    Columns are ['a', 'b', 'c', 'float32', 'int32'].
          ?r   r   r   r   r   rH   r   )r   r   cr   r   r  )r   rL   r   aranger(   r(   r(   r)   mixed_type_frame  s   r  c                  C  s   t dddt dddt dddt dddt dddt dddt dddt dddt dddt dddg
} ttjdt| | dS )zF
    Fixture for Series with a DatetimeIndex that has duplicates.
    i  rH   r   r      rG   r  )r   r   rL   r   r   r   r   )datesr(   r(   r)   (rand_series_with_duplicate_datetimeindex  s   









r  )rn   ro   ro   g?g      ?z2012-01M)freqz	period[M]z
2012-02-01Dz	period[D]z
2011-01-01r   r   )unitr   i  )secondsztimedelta64[ns]c                 C  r\   r   r]   r_   r(   r(   r)   ea_scalar_and_dtype     r$  c                 C  r\   )zD
    Fixture for dunder names for common arithmetic operations.
    r]   r_   r(   r(   r)   all_arithmetic_operators  rb   r&  c                 C  r\   )zU
    Fixture for operator and roperator arithmetic, comparison, and logical ops.
    r]   r_   r(   r(   r)   all_binary_operators     "r'  c                 C  r\   )z
    Fixture for operator and roperator arithmetic functions.

    Notes
    -----
    This includes divmod and rdivmod, whereas all_arithmetic_operators
    does not.
    r]   r_   r(   r(   r)   all_arithmetic_functions  s   r)  )countr   maxminmeanprodZstdvarZmedianZkurtZskewZsemc                 C  r\   )z.
    Fixture for numeric reduction names.
    r]   r_   r(   r(   r)   all_numeric_reductions3  rb   r0  allanyc                 C  r\   )z.
    Fixture for boolean reduction names.
    r]   r_   r(   r(   r)   all_boolean_reductions>  rb   r3  c                 C  r\   )z>
    Fixture for all (boolean + numeric) reduction names.
    r]   r_   r(   r(   r)   all_reductionsI  rb   r4  c                 C  r\   )z;
    Fixture for operator module comparison functions.
    r]   r_   r(   r(   r)   comparison_opQ  r%  r5  )__le____lt____ge____gt__c                 C  r\   )zm
    Fixture for dunder names for compare operations except == and !=

    * >=
    * >
    * <
    * <=
    r]   r_   r(   r(   r)   compare_operators_no_eq_neb  re   r:  )__and____rand____or____ror____xor____rxor__c                 C  r\   )zY
    Fixture for dunder names for common logical operations

    * |
    * &
    * ^
    r]   r_   r(   r(   r)   all_logical_operatorso     rA  )ZcumsumZcumprodZcumminZcummaxc                 C  r\   )z0
    Fixture for numeric accumulation names
    r]   r_   r(   r(   r)   all_numeric_accumulations  rb   rC  c                 C  s
   |  dS )zR
    Returns the configuration for the test setting `--no-strict-data-files`.
    r#   )r=   )Zpytestconfigr(   r(   r)   strict_data_files  s   
rD  r
   c                   C  s   t tjd S )Ntests)r
   __file__parentr(   r(   r(   r)   
tests_path  s   rH  c                 C  s   | d d S )Nior  r(   )rH  r(   r(   r)   tests_io_data_path  s   rJ  Callable[..., str]c                   s(   t jt jtd  fdd}|S )aD  
    Get the path to a data file.

    Parameters
    ----------
    path : str
        Path to the file, relative to ``pandas/tests/``

    Returns
    -------
    path including ``pandas/tests``.

    Raises
    ------
    ValueError
        If the path doesn't exist and the --no-strict-data-files option is not set.
    rE  c                    sJ   t jj g| R  }t j|s#rtd| dtd| d |S )NzCould not find file z' and --no-strict-data-files is not set.zCould not find .)osr-   joinexists
ValueErrorr3   skip)r   r-   Z	BASE_PATHrD  r(   r)   deco  s   
zdatapath.<locals>.deco)rM  r-   rN  dirnamerF  )rD  rS  r(   rR  r)   datapath  s   
rU  c                 C  s   t | ddddS )z*
    The iris dataset as a DataFrame.
    rI  r  csvziris.csv)rM   Zread_csv)rU  r(   r(   r)   iris  s   rW  z
Asia/Tokyozdateutil/US/Pacificzdateutil/Asia/Singaporez+01:15z-02:15z	UTC+01:15z	UTC-02:15i,  i)hoursr   r   r   c                 C  s   g | ]}t |qS r(   rT   )r   ir(   r(   r)   r     s    c                 C  r\   )zD
    Fixture for trying timezones including default (None): {0}
    r]   r_   r(   r(   r)   tz_naive_fixture  rk   rZ  c                 C  r\   )z4
    Fixture for trying explicit timezones: {0}
    r]   r_   r(   r(   r)   tz_aware_fixture  rk   r[  r   zdateutil/UTCc                 C  r\   )zQ
    Fixture to provide variants of UTC timezone strings and tzinfo objects.
    r]   r_   r(   r(   r)   utc_fixture  rb   r\  c                 C  r\   )zR
    Parametrized fixture for string dtypes.

    * str
    * 'str'
    * 'U'
    r]   r_   r(   r(   r)   string_dtype     	r]  pyarrowc                 C  r\   )za
    Parametrized fixture for string dtypes.

    * 'string[python]'
    * 'string[pyarrow]'
    r]   r_   r(   r(   r)   nullable_string_dtype     r`  pythonpyarrow_numpyc                 C  r\   )zx
    Parametrized fixture for pd.options.mode.string_storage.

    * 'python'
    * 'pyarrow'
    * 'pyarrow_numpy'
    r]   r_   r(   r(   r)   string_storage-  ry   rd  Znumpy_nullablec                 C  r\   )zb
    Parametrized fixture for pd.options.mode.string_storage.

    * 'python'
    * 'pyarrow'
    r]   r_   r(   r(   r)   dtype_backend?  ra  re  c                 C  r\   )zK
    Parametrized fixture for bytes dtypes.

    * bytes
    * 'bytes'
    r]   r_   r(   r(   r)   bytes_dtypeS     rf  c                 C  r\   )zN
    Parametrized fixture for object dtypes.

    * object
    * 'object'
    r]   r_   r(   r(   r)   object_dtype^  rg  rh  objectzstring[pyarrow_numpy]c                 C  r\   )zo
    Parametrized fixture for string dtypes.
    * 'object'
    * 'string[python]'
    * 'string[pyarrow]'
    r]   r_   r(   r(   r)   any_string_dtypei  ry   rj  c                 C  r\   )z\
    Parametrized fixture for datetime64 dtypes.

    * 'datetime64[ns]'
    * 'M8[ns]'
    r]   r_   r(   r(   r)   datetime64_dtype{  rg  rk  c                 C  r\   )z^
    Parametrized fixture for timedelta64 dtypes.

    * 'timedelta64[ns]'
    * 'm8[ns]'
    r]   r_   r(   r(   r)   timedelta64_dtype  rg  rl  r   c                	   C  s   t ddddddddS )z-
    Fixture emits fixed Timestamp.now()
    i  rH   rI   r        )r   rJ   r   hourminuter   microsecond)r   r(   r(   r(   r)   fixed_now_ts  s   rr  c                 C  r\   )z^
    Parameterized fixture for float dtypes.

    * float
    * 'float32'
    * 'float64'
    r]   r_   r(   r(   r)   float_numpy_dtype  r^  rs  c                 C  r\   )zR
    Parameterized fixture for float dtypes.

    * 'Float32'
    * 'Float64'
    r]   r_   r(   r(   r)   float_ea_dtype  rg  rt  c                 C  r\   )z~
    Parameterized fixture for float dtypes.

    * float
    * 'float32'
    * 'float64'
    * 'Float32'
    * 'Float64'
    r]   r_   r(   r(   r)   any_float_dtype  rB  ru  c                 C  r\   )zg
    Parameterized fixture for complex dtypes.

    * complex
    * 'complex64'
    * 'complex128'
    r]   r_   r(   r(   r)   complex_dtype  r^  rv  c                 C  r\   )z|
    Parameterized fixture for signed integer dtypes.

    * int
    * 'int8'
    * 'int16'
    * 'int32'
    * 'int64'
    r]   r_   r(   r(   r)   any_signed_int_numpy_dtype  rB  rw  c                 C  r\   )zx
    Parameterized fixture for unsigned integer dtypes.

    * 'uint8'
    * 'uint16'
    * 'uint32'
    * 'uint64'
    r]   r_   r(   r(   r)   any_unsigned_int_numpy_dtype  re   rx  c                 C  r\   )z
    Parameterized fixture for any integer dtype.

    * int
    * 'int8'
    * 'uint8'
    * 'int16'
    * 'uint16'
    * 'int32'
    * 'uint32'
    * 'int64'
    * 'uint64'
    r]   r_   r(   r(   r)   any_int_numpy_dtype  ry   ry  c                 C  r\   )z
    Parameterized fixture for any nullable integer dtype.

    * 'UInt8'
    * 'Int8'
    * 'UInt16'
    * 'Int16'
    * 'UInt32'
    * 'Int32'
    * 'UInt64'
    * 'Int64'
    r]   r_   r(   r(   r)   any_int_ea_dtype  r%  rz  c                 C  r\   )a.  
    Parameterized fixture for any nullable integer dtype.

    * int
    * 'int8'
    * 'uint8'
    * 'int16'
    * 'uint16'
    * 'int32'
    * 'uint32'
    * 'int64'
    * 'uint64'
    * 'UInt8'
    * 'Int8'
    * 'UInt16'
    * 'Int16'
    * 'UInt32'
    * 'Int32'
    * 'UInt64'
    * 'Int64'
    r]   r_   r(   r(   r)   any_int_dtype
  s   r{  c                 C  r\   )z
    Parameterized fixture for any nullable integer dtype and
    any float ea dtypes.

    * 'UInt8'
    * 'Int8'
    * 'UInt16'
    * 'Int16'
    * 'UInt32'
    * 'Int32'
    * 'UInt64'
    * 'Int64'
    * 'Float32'
    * 'Float64'
    r]   r_   r(   r(   r)   any_numeric_ea_dtype$  s   r|  c                 C  r\   )a  
    Parameterized fixture for any nullable integer dtype and
    any float ea dtypes.

    * 'UInt8'
    * 'Int8'
    * 'UInt16'
    * 'Int16'
    * 'UInt32'
    * 'Int32'
    * 'UInt64'
    * 'Int64'
    * 'Float32'
    * 'Float64'
    * 'uint8[pyarrow]'
    * 'int8[pyarrow]'
    * 'uint16[pyarrow]'
    * 'int16[pyarrow]'
    * 'uint32[pyarrow]'
    * 'int32[pyarrow]'
    * 'uint64[pyarrow]'
    * 'int64[pyarrow]'
    * 'float32[pyarrow]'
    * 'float64[pyarrow]'
    r]   r_   r(   r(   r)   any_numeric_ea_and_arrow_dtype:  s    r}  c                 C  r\   )z~
    Parameterized fixture for any signed nullable integer dtype.

    * 'Int8'
    * 'Int16'
    * 'Int32'
    * 'Int64'
    r]   r_   r(   r(   r)   any_signed_int_ea_dtype]  re   r~  c                 C  r\   )z
    Parameterized fixture for any (purely) real numeric dtype.

    * int
    * 'int8'
    * 'uint8'
    * 'int16'
    * 'uint16'
    * 'int32'
    * 'uint32'
    * 'int64'
    * 'uint64'
    * float
    * 'float32'
    * 'float64'
    r]   r_   r(   r(   r)   any_real_numpy_dtypej  s   r  c                 C  r\   )a  
    Parameterized fixture for any (purely) real numeric dtype.

    * int
    * 'int8'
    * 'uint8'
    * 'int16'
    * 'uint16'
    * 'int32'
    * 'uint32'
    * 'int64'
    * 'uint64'
    * float
    * 'float32'
    * 'float64'

    and associated ea dtypes.
    r]   r_   r(   r(   r)   any_real_numeric_dtype  s   r  c                 C  r\   )a  
    Parameterized fixture for all numpy dtypes.

    * bool
    * 'bool'
    * int
    * 'int8'
    * 'uint8'
    * 'int16'
    * 'uint16'
    * 'int32'
    * 'uint32'
    * 'int64'
    * 'uint64'
    * float
    * 'float32'
    * 'float64'
    * complex
    * 'complex64'
    * 'complex128'
    * str
    * 'str'
    * 'U'
    * bytes
    * 'bytes'
    * 'datetime64[ns]'
    * 'M8[ns]'
    * 'timedelta64[ns]'
    * 'm8[ns]'
    * object
    * 'object'
    r]   r_   r(   r(   r)   any_numpy_dtype  r(  r  c                 C  r\   )a  
    Parameterized fixture for all numeric dtypes.

    * int
    * 'int8'
    * 'uint8'
    * 'int16'
    * 'uint16'
    * 'int32'
    * 'uint32'
    * 'int64'
    * 'uint64'
    * float
    * 'float32'
    * 'float64'
    * complex
    * 'complex64'
    * 'complex128'
    * 'UInt8'
    * 'Int8'
    * 'UInt16'
    * 'Int16'
    * 'UInt32'
    * 'Int32'
    * 'UInt64'
    * 'Int64'
    * 'Float32'
    * 'Float64'
    r]   r_   r(   r(   r)   any_numeric_dtype  s   r  r   r  mixedbytes   a   cr   zmixed-integerg       @Zfloatingr  integerzmixed-integer-floatdecimal
datetime64z
2013-01-01z
2018-01-01r   Z20180101r   i  i  complexy      ?      ?y       @       @r   r   c                 C  s    | j \}}tj|td}||fS )a  
    Fixture for all inferred dtypes from _libs.lib.infer_dtype

    The covered (inferred) types are:
    * 'string'
    * 'empty'
    * 'bytes'
    * 'mixed'
    * 'mixed-integer'
    * 'mixed-integer-float'
    * 'floating'
    * 'integer'
    * 'decimal'
    * 'boolean'
    * 'datetime64'
    * 'datetime'
    * 'date'
    * 'timedelta'
    * 'time'
    * 'period'
    * 'interval'

    Returns
    -------
    inferred_dtype : str
        The string for the inferred dtype from _libs.lib.infer_dtype
    values : np.ndarray
        An array of object dtype that will be inferred to have
        `inferred_dtype`

    Examples
    --------
    >>> from pandas._libs import lib
    >>>
    >>> def test_something(any_skipna_inferred_dtype):
    ...     inferred_dtype, values = any_skipna_inferred_dtype
    ...     # will pass
    ...     assert lib.infer_dtype(values, skipna=True) == inferred_dtype
    r   )r^   rL   r   ri  )r`   Zinferred_dtyper   r(   r(   r)   any_skipna_inferred_dtype  s   
)r  c                  C  s>   t jddd ddlm}  ddlm} | }d|j_| |dS )	zj
    Get an instance of IPython.InteractiveShell.

    Will raise a skip if IPython is not installed.
    ZIPythonz6.0.0)Z
minversionr   )InteractiveShell)Configz:memory:)r?   )r3   importorskipZIPython.core.interactiveshellr  Ztraitlets.configr  ZHistoryManagerZ	hist_file)r  r  r  r(   r(   r)   ip/  s   
r  )ZbsrZcooZcscZcsrZdiaZdokZlilc                 C  s   t d}t|| jd S )z-
    Yields scipy sparse matrix classes.
    zscipy.sparseZ_matrix)r3   r  getattrr^   )r`   sparser(   r(   r)   spmatrixB  s   
r  c                 C  s6   g | ]}t ttj|tjjr|d krttj|qS )Tick)
issubclassr  rM   offsetsr  )r   or(   r(   r)   r   M  s    
c                 C  r\   )zN
    Fixture for Tick based datetime offsets available for a time series.
    r]   r_   r(   r(   r)   tick_classesL  rB  r  c                 C  s   | S r   r(   rV   r(   r(   r)   rX   Z  s    c                 C  r\   )zk
    Simple fixture for testing keys in sorting methods.
    Tests None (no key) and the identity key.
    r]   r_   r(   r(   r)   sort_by_keyZ  rk   r  c                  c  sz    t d ddlm}  ddlm} ddlm} G dd d|}| d|d	d
 | V  |dd  d |j	d< |j
  d S )Nfsspecr   )register_implementation)MemoryFileSystem)	_registryc                      s(   e Zd ZdZdgZd fddZ  ZS )z fsspectest.<locals>.TestMemoryFStestmemNr!   r"   c                   s(   | dd | jd< t jdi | d S )Ntestr   r(   )popr  superr   )r   r   	__class__r(   r)   r   n  s   z)fsspectest.<locals>.TestMemoryFS.__init__r   )r   r   r   protocolr  r   __classcell__r(   r(   r  r)   TestMemoryFSj  s    r  r  T)clobber)r3   r  r  r  Zfsspec.implementations.memoryr  Zfsspec.registryr  r  r  storeclear)r  r  registryr  r(   r(   r)   
fsspectestc  s   

r  )r   NN)ZEgonZVenkmanN)NCC1701Dr  r  #tuple[Hashable, Hashable, Hashable]c                 C  r\   )zP
    A 3-tuple of names, the first two for operands, the last for a result.
    r]   r_   r(   r(   r)   r   y  s   r   c                 C  r\   )zI
    Parametrize over __setitem__, loc.__setitem__, iloc.__setitem__
    r]   r_   r(   r(   r)   indexer_sli  rb   r  c                 C  r\   )z<
    Parametrize over loc.__getitem__, iloc.__getitem__
    r]   r_   r(   r(   r)   
indexer_li  rb   r  c                 C  r\   )z8
    Parametrize over __setitem__, iloc.__setitem__
    r]   r_   r(   r(   r)   
indexer_si  rb   r  c                 C  r\   )z7
    Parametrize over __setitem__, loc.__setitem__
    r]   r_   r(   r(   r)   
indexer_sl  rb   r  c                 C  r\   )z:
    Parametrize over at.__setitem__, loc.__setitem__
    r]   r_   r(   r(   r)   
indexer_al  rb   r  c                 C  r\   )z<
    Parametrize over iat.__setitem__, iloc.__setitem__
    r]   r_   r(   r(   r)   indexer_ial  rb   r  boolc                   C  s   t jjjdkS )z>
    Fixture to check if the array manager is being used.
    r   )rM   optionsmodedata_managerr(   r(   r(   r)   using_array_manager  s   r  c                   C  s   t jjjot jjjdkS )z7
    Fixture to check if Copy-on-Write is enabled.
    block)rM   r  r  Zcopy_on_writer  r(   r(   r(   r)   using_copy_on_write  s   r  zEurope/Warsawzdateutil/Europe/Warsawc                 C  r\   )zE
    tzinfo for Europe/Warsaw using pytz, dateutil, or zoneinfo.
    r]   r_   r(   r(   r)   warsaw  rb   r  c                   C  s   dS )N)r_  rc  r(   r(   r(   r(   r)   arrow_string_storage  s   r  r   )r+   r,   r-   r.   r/   r.   r!   r"   )r!   r   )r!   r   )r!   r   )r!   r
   )rD  r.   r!   rK  )r!   r   )r!   r  )r!   r  )r!   r.   (>  __doc__
__future__r   collectionsr   r   r   r   r   r   r  r	   operatorrM  pathlibr
   typingr   r   Zdateutil.tzr   r   Z
hypothesisr   stnumpyrL   r3   Zpytzr   r   Zpandas.util._test_decoratorsutilZ_test_decoratorstdZpandas.core.dtypes.dtypesr   r   ZpandasrM   r   r   r   r   r   r   Zpandas._testingZ_testingr   Zpandas.corer   Zpandas.core.indexes.apir   r   Zpandas.util.versionr   collections.abcr   r   r_  paImportErrorZhas_pyarrowZzoneinfoZZoneInfoZZoneInfoNotFoundErrorr*   r6   r@   ZHealthCheckZtoo_slowZhypothesis_health_checks__version__appendZdiffering_executorssettingsZregister_profiletupleZload_profilesplitr0   r  Ztseriesr  clsZregister_type_strategyZbuildsZintegersZbooleansZfixturer<   rO   ra   Z
axis_framerc   rd   rf   rg   rj   rp   rq   rr   r^   Z
skip_if_norx   rz   r{   r~   r   ZNULL_OBJECTSr   Znulls_fixture2r  ZNaTr   Zunique_nulls_fixture2ZNP_NAT_OBJECTSr   Znp_nat_fixture2r   r   Zindex_or_series2r   r   r   Zbox_with_array2r   r   r   r   r   r   r   ZmakeStringIndexZmakeDateIndexZmakePeriodIndexZmakeTimedeltaIndexZmakeRangeIndexZmakeIntIndexZmakeUIntIndexZmakeFloatIndexZmakeBoolIndexr   ri  r   r   r   ZmakeNumericIndexZmakeCategoricalIndexZmakeIntervalIndexr   ru   r  r  r   idxkeysrP   Zindex_fixture2r>   r   Zindex_flat2r   r   r   r   r  Z_seriesr  r
  ZNARROW_NP_DTYPESZ_narrow_seriesr  r  ZPYTHON_DATA_TYPESZ_typ_objects_seriesr  r  r  r  r  r  r  r$  Zarithmetic_dunder_methodsr&  addZraddsubZrsubmulZrmultruedivZrtruedivfloordivZ	rfloordivmodZrmodpowZrpoweqneltlegtgeand_Zrand_xorZrxoror_Zror_r'  r)  Z_all_numeric_reductionsr0  Z_all_boolean_reductionsr3  Z_all_reductionsr4  r5  r:  rA  Z_all_numeric_accumulationsrC  rD  rH  rJ  rU  rW  Z	TIMEZONESextendZTIMEZONE_IDSZparametrize_fixture_docr.   rZ  r[  Ztz_aware_fixture2Z_UTCSr\  Zutc_fixture2ZSTRING_DTYPESr]  r`  rd  re  Zstring_storage2ZBYTES_DTYPESrf  ZOBJECT_DTYPESrh  rj  ZDATETIME64_DTYPESrk  ZTIMEDELTA64_DTYPESrl  rr  ZFLOAT_NUMPY_DTYPESrs  ZFLOAT_EA_DTYPESrt  ZALL_FLOAT_DTYPESru  ZCOMPLEX_DTYPESrv  ZSIGNED_INT_NUMPY_DTYPESrw  ZUNSIGNED_INT_NUMPY_DTYPESrx  ZALL_INT_NUMPY_DTYPESry  ZALL_INT_EA_DTYPESrz  ZALL_INT_DTYPESr{  r|  ZALL_INT_PYARROW_DTYPES_STR_REPRZFLOAT_PYARROW_DTYPES_STR_REPRr}  ZSIGNED_INT_EA_DTYPESr~  ZALL_REAL_NUMPY_DTYPESr  ZALL_REAL_DTYPESr  ZALL_NUMPY_DTYPESr  ZALL_NUMERIC_DTYPESr  ZNAr  Z_any_skipna_inferred_dtyper[   _r  r  r  __all__r  r  r  r   setitemlocr	  r  r  r  r  atr  Ziatr  r  r  Zwarsawsr  r  r(   r(   r(   r)   <module>   sj    

@



































	

"

	
			




	













!








	
$#$$2	
