
    =Og3              	           	 g d Z ddlZddlZddlZddlT 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dS ))$
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dS )r    Nrformatcheckpresetfiltersc                2   	 d | _         d| _        t          | _        |dv r7|dk    rt	          d          |t	          d          |t
          }t          }nV|dv r0|t          }t          }t          ||||          | _
        d| _        n"t	          d	                    |                    t          |t          t          t           j        f          r2d
|vr|d
z  }t%          j        ||          | _         d| _        || _        n>t)          |d          st)          |d          r|| _         || _        nt+          d          | j        t          k    rCt-          j        | j         t0          t2          ||          }t5          j        |          | _        d S d S )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_errorr0   r3   )_fp_closefp_MODE_CLOSED_mode
ValueErrorr   
_MODE_READr   _MODE_WRITEr   _compressor_posr0   
isinstancestrbytesosPathLikebuiltinsr"   hasattr	TypeError_compressionDecompressReaderr   r!   ioBufferedReader_buffer)	selffilenamemoder0   r1   r2   r3   	mode_coderaws	            /usr/lib64/python3.11/lzma.py__init__zLZMAFile.__init__1   s   )	T !
;{{  "C D D D!  "I J J J~$"II666~"#I-V55;W N  N  NDDII188>>???heR[ 9:: 
	V$}Xt44DH DM"DJJXv&& 	V'(G*D*D 	VDH"DJJTUUU:##/:J(J J JC,S11DLLL $#    c                    	 | j         t          k    rd S 	 | j         t          k    r!| j                                         d | _        nH| j         t
          k    r8| j                            | j        	                                           d | _        	 | j
        r| j                                         d | _        d| _
        t          | _         d S # d | _        d| _
        t          | _         w xY w# 	 | j
        r| j                                         d | _        d| _
        t          | _         n# d | _        d| _
        t          | _         w xY ww xY w)NF)rC   rB   rE   rU   closerF   r@   r>   rG   flushrA   rV   s    r[   r_   zLZMAFile.close   sI   	
 :%%F	*zZ''""$$$#{**t/5577888#' *= %HNN$$$ %)


   %)
))))*= %HNN$$$ %)

   %)
))))))))s0   A9C*  C C'*E, D'E'EEc                 $    	 | j         t          k    S N)rC   rB   ra   s    r[   closedzLZMAFile.closed   s    *z\))r]   c                 ^    	 |                                   | j                                        S rc   )_check_not_closedr@   filenora   s    r[   rg   zLZMAFile.fileno   s)    A   x   r]   c                 ^    	 |                                  o| j                                        S rc   )readablerU   seekablera   s    r[   rj   zLZMAFile.seekable   s&    7}}:4<#8#8#:#::r]   c                 L    	 |                                   | j        t          k    S rc   )rf   rC   rE   ra   s    r[   ri   zLZMAFile.readable   s$    =   zZ''r]   c                 L    	 |                                   | j        t          k    S rc   )rf   rC   rF   ra   s    r[   writablezLZMAFile.writable   s$    =   z[((r]   c                 `    	 |                                   | j                            |          S rc   )_check_can_readrU   peekrV   sizes     r[   rp   zLZMAFile.peek   s3    	
 	 |  &&&r]   c                 `    	 |                                   | j                            |          S rc   )ro   rU   r=   rq   s     r[   r=   zLZMAFile.read   s1    	
 	|  &&&r]   c                     	 |                                   |dk     rt          j        }| j                            |          S )Nr&   )ro   rS   DEFAULT_BUFFER_SIZErU   read1rq   s     r[   rv   zLZMAFile.read1   sB    	 	!88)D|!!$'''r]   c                 `    	 |                                   | j                            |          S rc   )ro   rU   readlinerq   s     r[   rx   zLZMAFile.readline   s1    	 	|$$T***r]   c                 <   	 |                                   t          |t          t          f          rt	          |          }nt          |          }|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.// 	!YYFF d##D[F%..t44
z"""		V		r]   c                 b    	 |                                   | j                            ||          S rc   )_check_can_seekrU   seek)rV   offsetwhences      r[   r   zLZMAFile.seek   s3    	 	|  000r]   c                     	 |                                   | j        t          k    r| j                                        S | j        S rc   )rf   rC   rE   rU   tellrH   ra   s    r[   r   zLZMAFile.tell  s@    /   :##<$$&&&yr]   )Nr-   )r.   )__name__
__module____qualname__r\   r_   propertyrd   rg   rj   ri   rm   rp   r=   rv   rx   r>   rS   SEEK_SETr   r    r]   r[   r    r    &   s6       S2BtTS2 S2 S2 S2 S2j* * *0 * * X*! ! !
; ; ;( ( (
) ) )
	' 	' 	' 	'' ' ' '
( 
( 
( 
(+ + + +  * #%+ 1 1 1 1$    r]   r    r5   r.   )r0   r1   r2   r3   encodingerrorsnewlinec                X   	 d|v rd|v rt          d|          n3|t          d          |t          d          |t          d          |                    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   r0   r1   r2   r3   r   r   r   lz_modebinary_files              r[   r"   r"     s    . d{{$;;*449:::  OPPPMNNNNOOOll3##G8WV5"('; ; ;K d{{#H--XvwGGGr]   c                 |    	 t          ||||          }|                    |           |                                z   S rc   )r   r#   r`   )r   r0   r1   r2   r3   comps         r[   r#   r#   ?  s;     &%99D==--r]   c                    	 g }	 t          |||          }	 |                    |           }n# t          $ r |rY n; w xY w|                    |           |j        st          d          |j        } | snqd                    |          S )NTzACompressed data ended before the end-of-stream marker was reachedr]   )r   r$   r!   appendeofunused_datajoin)r   r0   memlimitr3   resultsdecompress          r[   r$   r$   K  s     G!&(G<<	##D))CC 	 	 	 		
 	sz 	@ ? @ @ @! 	  88Gs   - ==)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 F F F F F     
f f f f f|& f f fR-BtTtT- - - - -` $2dD 	. 	. 	. 	. ($      r]   