
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3

  \·2  ã            $   @   sä   d ddddddddd	d
dddddddddddddddddddddd d!d"d#g$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„ dejƒZd0d%d1d%d%d%d%d%d,œd-d „Zed2d%d%fd.d!„Zed%d%fd/d"„Zd%S )3Z
CHECK_NONEZCHECK_CRC32ZCHECK_CRC64ZCHECK_SHA256ZCHECK_ID_MAXZCHECK_UNKNOWNZFILTER_LZMA1ZFILTER_LZMA2ZFILTER_DELTAZ
FILTER_X86ZFILTER_IA64Z
FILTER_ARMZFILTER_ARMTHUMBZFILTER_POWERPCZFILTER_SPARCÚFORMAT_AUTOÚ	FORMAT_XZZFORMAT_ALONEZ
FORMAT_RAWZMF_HC3ZMF_HC4ZMF_BT2ZMF_BT3ZMF_BT4Z	MODE_FASTZMODE_NORMALZPRESET_DEFAULTZPRESET_EXTREMEÚLZMACompressorÚLZMADecompressorÚLZMAFileÚ	LZMAErrorÚopenÚcompressÚ
decompressZis_check_supportedé    N)Ú*)Ú_encode_filter_propertiesÚ_decode_filter_propertiesé   é   c               @   sœ   e Zd Zd!dd"dddœdd„Zdd„ Zed	d
„ ƒZdd„ Zdd„ Zdd„ Z	dd„ Z
d$dd„Zd&dd„Zd(dd„Zd*dd„Zdd„ Zejfdd„Zdd „ ZdS )+r   NÚrr   )ÚformatÚcheckÚpresetÚfiltersc      	      C   s&  d | _ d| _t| _|dkrL|dkr*tdƒ‚|d k	r:tdƒ‚|d krFt}t}n@|dkr~|d kr`t}t}t	||||d�| _
d| _ntdj|ƒƒ‚t|tttjfƒrÊd|kr®|d7 }tj||ƒ| _ d| _|| _n*t|dƒsÞt|dƒrì|| _ || _ntdƒ‚| jtk�r"tj| j tt||d�}tj|ƒ| _d S )NFr   Ú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Úxb)r   r   r   r   r
   zInvalid mode: {!r}ÚbTÚreadÚwritez6filename must be a str, bytes, file or PathLike object)Ztrailing_errorr   r   )r   r   éÿÿÿÿ)r   r   r   r   r   r   )Ú_fpÚ_closefpÚ_MODE_CLOSEDÚ_modeÚ
ValueErrorr   Ú
_MODE_READr   Ú_MODE_WRITEr   Ú_compressorÚ_posr   Ú
isinstanceÚstrÚbytesÚosÚPathLikeÚbuiltinsr   ÚhasattrÚ	TypeErrorÚ_compressionZDecompressReaderr   r   ÚioÚBufferedReaderÚ_buffer)	ÚselfÚfilenameÚmoder   r   r   r   Z	mode_codeÚraw© r9   ú/usr/lib64/python3.6/lzma.pyÚ__init__1   sB    ,
zLZMAFile.__init__c             C   s‚   | j tkrd S zB| j tkr,| jjƒ  d | _n"| j tkrN| jj| jj	ƒ ƒ d | _W d z| j
rd| jjƒ  W d d | _d| _
t| _ X X d S )NF)r#   r"   r%   r4   Úcloser&   r    r   r'   Úflushr!   )r5   r9   r9   r:   r<   †   s    




zLZMAFile.closec             C   s
   | j tkS )N)r#   r"   )r5   r9   r9   r:   Úclosedž   s    zLZMAFile.closedc             C   s   | j ƒ  | jjƒ S )N)Ú_check_not_closedr    Úfileno)r5   r9   r9   r:   r@   £   s    zLZMAFile.filenoc             C   s   | j ƒ o| jjƒ S )N)Úreadabler4   Úseekable)r5   r9   r9   r:   rB   ¨   s    zLZMAFile.seekablec             C   s   | j ƒ  | jtkS )N)r?   r#   r%   )r5   r9   r9   r:   rA   ¬   s    zLZMAFile.readablec             C   s   | j ƒ  | jtkS )N)r?   r#   r&   )r5   r9   r9   r:   Úwritable±   s    zLZMAFile.writablec             C   s   | j ƒ  | jj|ƒS )N)Ú_check_can_readr4   Úpeek)r5   Úsizer9   r9   r:   rE   ¶   s    zLZMAFile.peekc             C   s   | j ƒ  | jj|ƒS )N)rD   r4   r   )r5   rF   r9   r9   r:   r   Á   s    zLZMAFile.readc             C   s"   | j ƒ  |dk rtj}| jj|ƒS )Nr
   )rD   r2   ÚDEFAULT_BUFFER_SIZEr4   Úread1)r5   rF   r9   r9   r:   rH   Ê   s    zLZMAFile.read1c             C   s   | j ƒ  | jj|ƒS )N)rD   r4   Úreadline)r5   rF   r9   r9   r:   rI   Ö   s    zLZMAFile.readlinec             C   s:   | j ƒ  | jj|ƒ}| jj|ƒ |  jt|ƒ7  _t|ƒS )N)Z_check_can_writer'   r   r    r   r(   Úlen)r5   ÚdataZ
compressedr9   r9   r:   r   à   s
    zLZMAFile.writec             C   s   | j ƒ  | jj||ƒS )N)Z_check_can_seekr4   Úseek)r5   ÚoffsetÚwhencer9   r9   r:   rL   í   s    zLZMAFile.seekc             C   s"   | j ƒ  | jtkr| jjƒ S | jS )N)r?   r#   r%   r4   Útellr(   )r5   r9   r9   r:   rO   ÿ   s    

zLZMAFile.tell)Nr   r   r   )r   r   )r   r   )r   r   )r   )Ú__name__Ú
__module__Ú__qualname__r;   r<   Úpropertyr>   r@   rB   rA   rC   rE   r   rH   rI   r   r2   ÚSEEK_SETrL   rO   r9   r9   r9   r:   r   &   s   T

	


r   )r   r   r   r   ÚencodingÚerrorsÚnewlinec            C   s�   d|kr d|krPt d|f ƒ‚n0|d k	r0t dƒ‚|d k	r@t dƒ‚|d k	rPt dƒ‚|jddƒ}	t| |	||||d�}
d|krˆtj|
|||ƒS |
S d S )	NÚtr   zInvalid mode: %rz0Argument 'encoding' not supported in binary modez.Argument 'errors' not supported in binary modez/Argument 'newline' not supported in binary modeÚ )r   r   r   r   )r$   Úreplacer   r2   ÚTextIOWrapper)r6   r7   r   r   r   r   rU   rV   rW   Zlz_modeZbinary_filer9   r9   r:   r     s    

c             C   s    t ||||ƒ}|j| ƒ|jƒ  S )N)r   r   r=   )rK   r   r   r   r   Úcompr9   r9   r:   r   6  s    c             C   sr   g }xbt |||ƒ}y|j| ƒ}W n tk
r>   |r8P n‚ Y nX |j|ƒ |jsXtdƒ‚|j} | sP qW dj|ƒS )NzACompressed data ended before the end-of-stream marker was reachedó    )r   r	   r   ÚappendÚeofZunused_dataÚjoin)rK   r   Zmemlimitr   ZresultsZdecompÚresr9   r9   r:   r	   B  s     
)r   r   r   )Ú__all__r.   r2   r,   Z_lzmar   r   r1   r"   r%   r&   Z
BaseStreamr   r   r   r   r   r	   r9   r9   r9   r:   Ú<module>   s0   

 b-