ó
    Ñ]j¹#  ã                  ó  • S r SSKJr  SSKrSSKJrJr  SSKrSSKJ	r	  SSK
Jr  SSKJr  \(       a  SSKJrJrJrJrJr  SS	KJrJr  \" S
5      S\R.                  S4           SS jj5       r\" S
5        S       SS jj5       rg)zpickle compaté    )ÚannotationsN)ÚTYPE_CHECKINGÚAny)Úpickle_compat)Ú
set_module)Ú
get_handle)ÚCompressionOptionsÚFilePathÚReadPickleBufferÚStorageOptionsÚWriteBuffer)Ú	DataFrameÚSeriesÚpandasÚinferc                ó¼   • US:  a  [         R                  n[        USUSUS9 n[         R                  " XR                  US9  SSS5        g! , (       d  f       g= f)aþ  
Pickle (serialize) object to file.

Parameters
----------
obj : any object
    Any python object.
filepath_or_buffer : str, path object, or file-like object
    String, path object (implementing ``os.PathLike[str]``), or file-like
    object implementing a binary ``write()`` function.
    Also accepts URL. URL has to be of S3 or GCS.
compression : str or dict, default 'infer'
    For on-the-fly compression of the output data. If 'infer' and
    'filepath_or_buffer' is path-like, then detect compression from the
    following extensions: '.gz', '.bz2', '.zip', '.xz', '.zst', '.tar',
    '.tar.gz', '.tar.xz' or '.tar.bz2' (otherwise no compression).
    Set to ``None`` for no compression.
    Can also be a dict with key ``'method'`` set
    to one of {``'zip'``, ``'gzip'``, ``'bz2'``, ``'zstd'``, ``'xz'``,
    ``'tar'``} and other key-value pairs are forwarded to
    ``zipfile.ZipFile``, ``gzip.GzipFile``,
    ``bz2.BZ2File``, ``zstandard.ZstdCompressor``, ``lzma.LZMAFile`` or
    ``tarfile.TarFile``, respectively.
    As an example, the following could be passed for faster compression
    and to create a reproducible gzip archive:
    ``compression={'method': 'gzip', 'compresslevel': 1, 'mtime': 1}``.
protocol : int
    Int which indicates which protocol should be used by the pickler,
    default HIGHEST_PROTOCOL (see [1], paragraph 12.1.2). The possible
    values for this parameter depend on the version of Python. For Python
    2.x, possible values are 0, 1, 2. For Python>=3.0, 3 is a valid value.
    For Python >= 3.4, 4 is a valid value. A negative value for the
    protocol parameter is equivalent to setting its value to
    HIGHEST_PROTOCOL.
storage_options : dict, optional
    Extra options that make sense for a particular storage connection, e.g.
    host, port, username, password, etc. For HTTP(S) URLs the key-value pairs
    are forwarded to ``urllib.request.Request`` as header options. For other
    URLs (e.g. starting with "s3://", and "gcs://") the key-value pairs are
    forwarded to ``fsspec.open``. Please see ``fsspec`` and ``urllib`` for more
    details, and for more examples on storage options refer `here
    <https://pandas.pydata.org/docs/user_guide/io.html?
    highlight=storage_options#reading-writing-remote-files>`_.

    .. [1] https://docs.python.org/3/library/pickle.html

See Also
--------
read_pickle : Load pickled pandas object (or any object) from file.
DataFrame.to_hdf : Write DataFrame to an HDF5 file.
DataFrame.to_sql : Write DataFrame to a SQL database.
DataFrame.to_parquet : Write a DataFrame to the binary parquet format.

Examples
--------
>>> original_df = pd.DataFrame(
...     {"foo": range(5), "bar": range(5, 10)}
... )  # doctest: +SKIP
>>> original_df  # doctest: +SKIP
   foo  bar
0    0    5
1    1    6
2    2    7
3    3    8
4    4    9
>>> pd.to_pickle(original_df, "./dummy.pkl")  # doctest: +SKIP

>>> unpickled_df = pd.read_pickle("./dummy.pkl")  # doctest: +SKIP
>>> unpickled_df  # doctest: +SKIP
   foo  bar
0    0    5
1    1    6
2    2    7
3    3    8
4    4    9
r   ÚwbF©ÚcompressionÚis_textÚstorage_options)ÚprotocolN)ÚpickleÚHIGHEST_PROTOCOLr   ÚdumpÚhandle)ÚobjÚfilepath_or_bufferr   r   r   Úhandless         ÚM/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pandas/io/pickle.pyÚ	to_pickler!       sU   € ðh �!ƒ|Ü×*Ñ*ˆä	ØØØØØ'ò
ð 
ä�Š�CŸ™°(Ò;÷
÷ 
ö 
ús   ¤ AÁ
Ac                ó$  • [         [        [        [        4n[	        U SUSUS9 n [
        R                  " SS9   [
        R                  " S[        5        [        R                  " UR                  5      sSSS5        sSSS5        $ ! , (       d  f       Oa= f! U aU    UR                  R                  S5        [        R                  " UR                  5      R                  5       s sSSS5        $ f = f SSS5        g! , (       d  f       g= f)	a"  
Load pickled pandas object (or any object) from file and return unpickled object.

.. warning::

   Loading pickled data received from untrusted sources can be
   unsafe. See `here <https://docs.python.org/3/library/pickle.html>`__.

Parameters
----------
filepath_or_buffer : str, path object, or file-like object
    String, path object (implementing ``os.PathLike[str]``), or file-like
    object implementing a binary ``readlines()`` function.
    Also accepts URL. URL is not limited to S3 and GCS.
compression : str or dict, default 'infer'
    For on-the-fly decompression of on-disk data. If 'infer' and
    'filepath_or_buffer' is path-like, then detect compression from the
    following extensions: '.gz', '.bz2', '.zip', '.xz', '.zst', '.tar',
    '.tar.gz', '.tar.xz' or '.tar.bz2' (otherwise no compression).
    If using 'zip' or 'tar', the ZIP file must contain only one data file
    to be read in.
    Set to ``None`` for no decompression.
    Can also be a dict with key ``'method'`` set
    to one of {``'zip'``, ``'gzip'``, ``'bz2'``, ``'zstd'``, ``'xz'``,
    ``'tar'``} and other key-value pairs are forwarded to
    ``zipfile.ZipFile``, ``gzip.GzipFile``,
    ``bz2.BZ2File``, ``zstandard.ZstdDecompressor``, ``lzma.LZMAFile`` or
    ``tarfile.TarFile``, respectively.
    As an example, the following could be passed for Zstandard decompression
    using a custom compression dictionary:
    ``compression={'method': 'zstd', 'dict_data': my_compression_dict}``.
storage_options : dict, optional
    Extra options that make sense for a particular storage connection, e.g.
    host, port, username, password, etc. For HTTP(S) URLs the key-value pairs
    are forwarded to ``urllib.request.Request`` as header options. For other
    URLs (e.g. starting with "s3://", and "gcs://") the key-value pairs are
    forwarded to ``fsspec.open``. Please see ``fsspec`` and ``urllib`` for more
    details, and for more examples on storage options refer `here
    <https://pandas.pydata.org/docs/user_guide/io.html?
    highlight=storage_options#reading-writing-remote-files>`_.

Returns
-------
object
    The unpickled pandas object (or any object) that was stored in file.

See Also
--------
DataFrame.to_pickle : Pickle (serialize) DataFrame object to file.
Series.to_pickle : Pickle (serialize) Series object to file.
read_hdf : Read HDF5 file into a DataFrame.
read_sql : Read SQL query or database table into a DataFrame.
read_parquet : Load a parquet object, returning a DataFrame.

Notes
-----
read_pickle is only guaranteed to be backwards compatible to pandas 1.0
provided the object was serialized with to_pickle.

Examples
--------
>>> original_df = pd.DataFrame(
...     {"foo": range(5), "bar": range(5, 10)}
... )  # doctest: +SKIP
>>> original_df  # doctest: +SKIP
   foo  bar
0    0    5
1    1    6
2    2    7
3    3    8
4    4    9
>>> pd.to_pickle(original_df, "./dummy.pkl")  # doctest: +SKIP

>>> unpickled_df = pd.read_pickle("./dummy.pkl")  # doctest: +SKIP
>>> unpickled_df  # doctest: +SKIP
   foo  bar
0    0    5
1    1    6
2    2    7
3    3    8
4    4    9
ÚrbFr   T)ÚrecordÚignoreNr   )ÚAttributeErrorÚImportErrorÚModuleNotFoundErrorÚ	TypeErrorr   ÚwarningsÚcatch_warningsÚsimplefilterÚWarningr   Úloadr   Úseekr   Ú	Unpickler)r   r   r   Úexcs_to_catchr   s        r    Úread_pickler2   ‚   sâ   € ôr $¤[Ô2EÄyÐQ€MÜ	ØØØØØ'ò
ð 
ð
	BÜ×(Ò(°Ó5ä×%Ò% h´Ô8Ü—{’{ 7§>¡>Ó2÷ 6Ð5÷
ñ 
÷ 6Õ5ûð ó 	Bð �N‰N×Ñ Ô"Ü ×*Ò*¨7¯>©>Ó:×?Ñ?ÓAÑA÷'
ñ 
ð	Búð	 6÷
÷ 
ö 
úsL   ¤D¦Bº;BÁ5	BÂ
B	ÂBÂDÂBÂAC4Ã(DÃ3C4Ã4DÄ
D)r   r   r   zFilePath | WriteBuffer[bytes]r   r	   r   Úintr   úStorageOptions | NoneÚreturnÚNone)r   N)r   zFilePath | ReadPickleBufferr   r	   r   r4   r5   zDataFrame | Series)Ú__doc__Ú
__future__r   r   Útypingr   r   r*   Úpandas.compatr   Úpandas.util._decoratorsr   Úpandas.io.commonr   Úpandas._typingr	   r
   r   r   r   r   r   r   r   r!   r2   © ó    r    Ú<module>r@      sï   ðÙ å "ã ÷ó å 'Ý .å 'æ÷õ ÷ñ ˆHÓð '.Ø×+Ñ+Ø-1ð^<Ø	ð^<à5ð^<ð $ð^<ð ð	^<ð
 +ð^<ð 
ô^<ó ð^<ñB ˆHÓð '.Ø-1ðlBØ3ðlBà#ðlBð +ðlBð ô	lBó ñlBr?   