File: //lib/python3.12/__pycache__/lzma.cpython-312.pyc
�
    )!�h�3  �            	       �   � d Z g d�ZddlZddlZddlZddl� ddlmZmZ ddlZdZ	dZ
dZ G d� d	ej                  �      Z
ddd
dddddd�d�Zed
ddfd
�Zeddfd�Zy)aS  Interface to the liblzma compression library.
This module provides a class for reading and writing compressed files,
classes for incremental (de)compression, and convenience functions for
one-shot (de)compression.
These classes and functions support both the XZ and legacy LZMA
container formats, as well as raw compressed data streams.
)$�
CHECK_NONE�CHECK_CRC32�CHECK_CRC64�CHECK_SHA256�CHECK_ID_MAX�
CHECK_UNKNOWN�FILTER_LZMA1�FILTER_LZMA2�FILTER_DELTA�
FILTER_X86�FILTER_IA64�
FILTER_ARM�FILTER_ARMTHUMB�FILTER_POWERPC�FILTER_SPARC�FORMAT_AUTO�	FORMAT_XZ�FORMAT_ALONE�
FORMAT_RAW�MF_HC3�MF_HC4�MF_BT2�MF_BT3�MF_BT4�	MODE_FAST�MODE_NORMAL�PRESET_DEFAULT�PRESET_EXTREME�LZMACompressor�LZMADecompressor�LZMAFile�	LZMAError�open�compress�
decompress�is_check_supported�    N)�*)�_encode_filter_properties�_decode_filter_properties�   �   c                   �   � e Zd ZdZdddddd�d�Zd� Zed� �       Zd� Zd	� Z	d
� Z
d� Zdd�Zdd
�Z
dd�Zdd�Zd� Zej$                  fd�Zd� Zy)r    a@  A file object providing transparent LZMA (de)compression.
    An LZMAFile can act as a wrapper for an existing file object, or
    refer directly to a named file on disk.
    Note that LZMAFile provides a *binary* file interface - data read
    is returned as bytes, and data to be written must be given as bytes.
    N�����format�check�preset�filtersc                ��  � d| _         d| _        t        | _        |dv r,|dk7  rt	        d�      �|�t	        d�      �|�t
        }t        }nH|dv r*|�t        }t        }t        ||||��      | _
        d	| _        nt	        d
j                  |�      �      �t        |t        t        t         j"