
    daf3              	           	 g d Z ddlZddlZddlZddl ddlmZmZ ddlZdZdZ	dZ
 G d dej                        Zddd	dddddd
dZed	ddfdZeddfdZy))$
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 Zd Z	 dddddddZd Zed        Zd Zd Zd	 Z	d
 Z
ddZddZddZddZd Zej"                  fdZd Zy)r    Nformatcheckpresetfiltersc                   	 d | _         d| _        t        | _        |dv r,|dk7  rt	        d      |t	        d      |t
        }t        }nH|dv r*|t        }t        }t        ||||      | _
        d| _        nt	        d	j                  |            t        |t        t        t         j"                  f      r3d
|vr|d
z  }t%        j&                  ||      | _         d| _        || _        n2t)        |d      st)        |d      r|| _         || _        nt+        d      | j                  t        k(  rGt-        j.                  | j                   t0        t2        ||      }t5        j6                  |      | _        y y )NF)rrbr-   zACannot specify an integrity check when opening a file for readingzICannot specify a preset compression level when opening a file for reading)wwbaabxxbr.   r&   zInvalid mode: {!r}bTreadwritez6filename must be a str, bytes, file or PathLike object)trailing_errorr/   r2   )_fp_closefp_MODE_CLOSED_mode
ValueErrorr   
_MODE_READr   _MODE_WRITEr   _compressor_posr/   
isinstancestrbytesosPathLikebuiltinsr"   hasattr	TypeError_compressionDecompressReaderr   r!   ioBufferedReader_buffer)	selffilenamemoder/   r0   r1   r2   	mode_coderaws	            /root/Python-3.12.4/Lib/lzma.py__init__zLZMAFile.__init__1   sp   )	T !
;{  "C D D!  "I J J~$"I66~"#I-V55;W NDDI188>??heR[[ 9:$}}Xt4DH DM"DJXv&'(G*DDH"DJTUU::#//:J(JC,,S1DL $    c                    	 | j                   t        k(  ry 	 | j                   t        k(  r"| j                  j	                          d | _        nM| j                   t
        k(  r:| j                  j                  | j                  j                                d | _        	 | j                  r| j                  j	                          d | _        d| _
        t        | _         y # d | _        d| _
        t        | _         w xY w# 	 | j                  r| j                  j	                          d | _        d| _
        t        | _         w # d | _        d| _
        t        | _         w xY wxY w)NF)rC   rB   rE   rU   closerF   r@   r>   rG   flushrA   rV   s    r[   r_   zLZMAFile.close   s   	
 ::%	*zzZ'""$#{*t//5578#' *==HHNN$ %)
   %)
*==HHNN$ %)
   %)
s0   BC8 &C C58E:&D: E:EEc                 *    	 | j                   t        k(  S N)rC   rB   ra   s    r[   closedzLZMAFile.closed   s    *zz\))r]   c                 X    	 | j                          | j                  j                         S rc   )_check_not_closedr@   filenora   s    r[   rg   zLZMAFile.fileno   s"    A xx  r]   c                 \    	 | j                         xr | j                  j                         S rc   )readablerU   seekablera   s    r[   rj   zLZMAFile.seekable   s#    7}}:4<<#8#8#::r]   c                 J    	 | j                          | j                  t        k(  S rc   )rf   rC   rE   ra   s    r[   ri   zLZMAFile.readable   s     = zzZ''r]   c                 J    	 | j                          | j                  t        k(  S rc   )rf   rC   rF   ra   s    r[   writablezLZMAFile.writable   s     = zz[((r]   c                 Z    	 | j                          | j                  j                  |      S rc   )_check_can_readrU   peekrV   sizes     r[   rp   zLZMAFile.peek   s,    	
 	 ||  &&r]   c                 Z    	 | j                          | j                  j                  |      S rc   )ro   rU   r=   rq   s     r[   r=   zLZMAFile.read   s*    	
 	||  &&r]   c                     	 | j                          |dk  rt        j                  }| j                  j	                  |      S )Nr&   )ro   rS   DEFAULT_BUFFER_SIZErU   read1rq   s     r[   rv   zLZMAFile.read1   s<    	 	!8))D||!!$''r]   c                 Z    	 | j                          | j                  j                  |      S rc   )ro   rU   readlinerq   s     r[   rx   zLZMAFile.readline   s*    	 	||$$T**r]   c                 0   	 | j                          t        |t        t        f      rt	        |      }nt        |      }|j                  }| j                  j                  |      }| j                  j                  |       | xj                  |z  c_        |S rc   )_check_can_writerI   rK   	bytearraylen
memoryviewnbytesrG   r#   r@   r>   rH   )rV   datalength
compresseds       r[   r>   zLZMAFile.write   s{    	 	dUI./YF d#D[[F%%..t4
z"		V	r]   c                 \    	 | j                          | j                  j                  ||      S rc   )_check_can_seekrU   seek)rV   offsetwhences      r[   r   zLZMAFile.seek   s,    	 	||  00r]   c                     	 | j                          | j                  t        k(  r| j                  j	                         S | j
                  S rc   )rf   rC   rE   rU   tellrH   ra   s    r[   r   zLZMAFile.tell  s:    / ::#<<$$&&yyr]   )Nr4   )r-   )__name__
__module____qualname__r\   r_   propertyrd   rg   rj   ri   rm   rp   r=   rv   rx   r>   rS   SEEK_SETr   r    r]   r[   r    r    &   sv    S2BtTS2j*0 * *!
;(
)
	''
(+* #%++ 1$r]   r    r-   )r/   r0   r1   r2   encodingerrorsnewlinec                *   	 d|v rd|v r5t        d|      |t        d      |t        d      |t        d      |j                  dd      }	t        | |	||||      }
d|v r-t        j                  |      }t        j
                  |
|||      S |
S )	Ntr<   zInvalid mode: z0Argument 'encoding' not supported in binary modez.Argument 'errors' not supported in binary modez/Argument 'newline' not supported in binary mode r.   )rD   replacer    rS   text_encodingTextIOWrapper)rW   rX   r/   r0   r1   r2   r   r   r   lz_modebinary_files              r[   r"   r"     s    . d{$;49::OPPMNNNOOll3#G8WV5"(';K d{##H-XvwGGr]   c                 d    	 t        ||||      }|j                  |       |j                         z   S rc   )r   r#   r`   )r   r/   r0   r1   r2   comps         r[   r#   r#   ?  s3     &%9D==--r]   c                     	 g }	 t        |||      }	 |j                  |       }|j                  |       |j                  st        d      |j
                  } | snWdj                  |      S # t        $ r |rY  w xY w)NzACompressed data ended before the end-of-stream marker was reachedr]   )r   r$   r!   appendeofunused_datajoin)r   r/   memlimitr2   resultsdecompress          r[   r$   r$   K  s     G
!&(G<	##D)C 	szz ? @ @!!   88G  			s   A- -A<:A<)r5   )__all__rN   rS   rL   _lzmar(   r)   rQ   rB   rE   rF   
BaseStreamr    r"   r   r#   r   r$   r   r]   r[   <module>r      s     	 	  F  
f|&& fR-BtTtT-` $2dD 	. ($ r]   