Ë
    u™ãjõ  ã                  óî   — d dl mZ d dlmZmZ d dlZd dlZd dlmZm	Z	m
Z
 d dlmZ d dlmZ d dlmZ e	rd dlmZ d dlZd d	lmZmZmZ e	 	 	 	 	 	 dd
„«       Zedd„«       Zedd„«       Z	 	 d	 	 	 	 	 dd„Zy)é    )Úannotations)ÚAbstractContextManagerÚcontextmanagerN)ÚIOÚTYPE_CHECKINGÚAny)ÚCHAINED_WARNING_DISABLED)ÚChainedAssignmentError)Ú
get_handle)Ú	Generator)Ú
BaseBufferÚCompressionOptionsÚFilePathc              #  óp   K  — t        | d|d¬«      5 }|j                  –— ddd«       y# 1 sw Y   yxY w­w)a&  
    Open a compressed file and return a file object.

    Parameters
    ----------
    path : str
        The path where the file is read from.

    compression : {'gzip', 'bz2', 'zip', 'xz', 'zstd', None}
        Name of the decompression to use

    Returns
    -------
    file object
    ÚrbF)ÚcompressionÚis_textN)r   Úhandle)Úpathr   r   s      úc/var/www/html/python-recuperauto-other/env/lib/python3.12/site-packages/pandas/_testing/contexts.pyÚdecompress_filer      s6   è ø€ ô& 
�D˜$¨KÀÔ	Gð È6Ø�m‰mÒ÷÷ ñ üs   ‚6’*¡	6ª3¯6c              #  ó¤   ‡K  — ddl Šdˆfd„}t        j                  j                  d«      } || «       	 d–—  ||«       y#  ||«       w xY w­w)a´  
    Context manager for temporarily setting a timezone.

    Parameters
    ----------
    tz : str
        A string representing a valid timezone.

    Examples
    --------
    >>> from datetime import datetime
    >>> from dateutil.tz import tzlocal
    >>> tzlocal().tzname(datetime(2021, 1, 1))  # doctest: +SKIP
    'IST'

    >>> with set_timezone("US/Eastern"):
    ...     tzlocal().tzname(datetime(2021, 1, 1))
    'EST'
    r   Nc                óÖ   •— t        ‰d«      rM| €	 t        j                  d= y | t        j                  d<   t        j
                  dk7  r‰j                  «        y y y # t        $ r Y y w xY w)NÚtzsetÚTZÚwin32)ÚhasattrÚosÚenvironÚKeyErrorÚsysÚplatformr   )ÚtzÚtimes    €r   ÚsetTZzset_timezone.<locals>.setTZM   sf   ø€ Ü�4˜Ô!ØˆzðÜŸ
™
 4Ñ(ð $&”—
‘
˜4Ñ ä—<‘< 7Ò*Ø—J‘J•Lð +ð "øô  ò Ùðús   ‘A Á	A(Á'A(r   )r#   z
str | NoneÚreturnÚNone)r$   r   r   Úget)r#   r%   Úorig_tzr$   s      @r   Úset_timezoner*   6   sB   øè ø€ ó* õ!ô �j‰j�n‰n˜TÓ"€GÙ	ˆ"„IðÛáˆg�ø‰ˆg�üs   ƒ2A¶A º	AÁ
AÁAc              +  ó¸   K  — ddl }h d£}| |v rt        d«      ‚ |j                  | fi |¤Ž 	 d–— |j                  | «       y# |j                  | «       w xY w­w)au  
    Context manager to temporarily register a CSV dialect for parsing CSV.

    Parameters
    ----------
    name : str
        The name of the dialect.
    kwargs : mapping
        The parameters for the dialect.

    Raises
    ------
    ValueError : the name of the dialect conflicts with a builtin one.

    See Also
    --------
    csv : Python's CSV library.
    r   N>   ú	excel-tabÚunixÚexcelz Cannot override builtin dialect.)ÚcsvÚ
ValueErrorÚregister_dialectÚunregister_dialect)ÚnameÚkwargsr/   Ú_BUILTIN_DIALECTSs       r   Úwith_csv_dialectr6   b   s_   è ø€ ó( â6ÐàÐ Ñ ÜÐ;Ó<Ð<à€C×Ñ˜Ñ( Ò(ð%Ûà×Ñ˜tÕ$øˆ×Ñ˜tÕ$üs   ‚+A®A ²AÁAÁAc                óˆ   — ddl m} t        r| sddlm}  |«       S  || |¬«      S t
        }d}| r|g| ¢­} |||g|¢­¬«      S )Nr   )Úassert_produces_warning)Únullcontext)ÚmatchzRA value is being set on a copy of a DataFrame or Series through chained assignment)Úpandas._testingr8   r	   Ú
contextlibr9   r
   )Úextra_warningsÚextra_matchr8   r9   Úwarningr:   s         r   Úraises_chained_assignment_errorr@   „   si   € õ 8åÙÝ.á“=Ð á*ØØ!ôð ô
 )ˆð)ð 	ñ ØÐ0 Ñ0ˆGÙ&ØØÐ'˜;Ñ'ô
ð 	
ó    )r   zFilePath | BaseBufferr   r   r&   zGenerator[IO[bytes]])r#   Ústrr&   úGenerator[None])r3   rB   r4   r   r&   rC   )© rD   )r=   ztuple[type[Warning], ...]r>   ztuple[str | None, ...]r&   z<AbstractContextManager[list[warnings.WarningMessage] | None])Ú
__future__r   r<   r   r   r   r!   Útypingr   r   r   Úpandas.compatr	   Úpandas.errorsr
   Úpandas.io.commonr   Úcollections.abcr   ÚwarningsÚpandas._typingr   r   r   r   r*   r6   r@   rD   rA   r   ú<module>rM      s»   ðÝ "÷ó 
Û 
÷ñ õ 3Ý 0å 'áÝ)Û÷ñ ð ðØ
ðØ.@ðàòó ðð, ò(ó ð(ðV ò%ó ð%ðD 13Ø*,ð
Ø-ð
à'ð
ð Bô
rA   