3 \2$@sdddddddddd d d d d ddddddddddddddddddd d!d"d#g$Zd$d%lZd$d%lZd$d%lZd$d&lTd$d'lmZmZd$d%lZd$Zd(Z d)Z Gd*ddej Z d0d%d1d%d%d%d%d%d,d-d Z ed2d%d%fd.d!Zed%d%fd/d"Zd%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_ARMZFILTER_ARMTHUMBZFILTER_POWERPCZ FILTER_SPARC FORMAT_AUTO FORMAT_XZZ FORMAT_ALONEZ FORMAT_RAWZMF_HC3ZMF_HC4ZMF_BT2ZMF_BT3ZMF_BT4Z MODE_FASTZ MODE_NORMALZPRESET_DEFAULTZPRESET_EXTREMELZMACompressorLZMADecompressorLZMAFile LZMAErroropencompress decompressZis_check_supportedN)*)_encode_filter_properties_decode_filter_propertiesc@seZdZd!dd"dddddZddZed d Zd d Zd dZddZ ddZ d$ddZ d&ddZ d(ddZ d*ddZddZejfddZdd ZdS)+rNrr)formatcheckpresetfiltersc Cs&d|_d|_t|_|dkrL|dkr*td|dk r:td|dkrFt}t}n@|dkr~|dkr`t}t}t ||||d |_ d|_ ntdj |t |tttjfrd|kr|d7}tj|||_d|_||_n*t|dst|dr||_||_ntd|jtkr"tj|jtt||d}tj||_dS)NFrrbrzACannot specify an integrity check when opening a file for readingzICannot specify a preset compression level when opening a file for readingwwbaabxxb)rrrrr zInvalid mode: {!r}bTreadwritez6filename must be a str, bytes, file or PathLike object)Ztrailing_errorrr)rr)rrrrrr)_fp_closefp _MODE_CLOSED_mode ValueErrorr _MODE_READr _MODE_WRITEr _compressor_posr isinstancestrbytesosPathLikebuiltinsrhasattr TypeError _compressionZDecompressReaderrrioBufferedReader_buffer) selffilenamemoderrrrZ mode_coderawr9/usr/lib64/python3.6/lzma.py__init__1sB,    zLZMAFile.__init__cCs|jtkrdSzB|jtkr,|jjd|_n"|jtkrN|jj|jj d|_Wdz|j rd|jjWdd|_d|_ t|_XXdS)NF) r#r"r%r4closer&r rr'flushr!)r5r9r9r:r<s     zLZMAFile.closecCs |jtkS)N)r#r")r5r9r9r:closedszLZMAFile.closedcCs|j|jjS)N)_check_not_closedr fileno)r5r9r9r:r@szLZMAFile.filenocCs|jo|jjS)N)readabler4seekable)r5r9r9r:rBszLZMAFile.seekablecCs|j|jtkS)N)r?r#r%)r5r9r9r:rAszLZMAFile.readablecCs|j|jtkS)N)r?r#r&)r5r9r9r:writableszLZMAFile.writablecCs|j|jj|S)N)_check_can_readr4peek)r5sizer9r9r:rEsz LZMAFile.peekcCs|j|jj|S)N)rDr4r)r5rFr9r9r:rsz LZMAFile.readcCs"|j|dkrtj}|jj|S)Nr )rDr2DEFAULT_BUFFER_SIZEr4read1)r5rFr9r9r:rHszLZMAFile.read1cCs|j|jj|S)N)rDr4readline)r5rFr9r9r:rIszLZMAFile.readlinecCs:|j|jj|}|jj||jt|7_t|S)N)Z_check_can_writer'rr rr(len)r5dataZ compressedr9r9r:rs   zLZMAFile.writecCs|j|jj||S)N)Z_check_can_seekr4seek)r5offsetwhencer9r9r:rLsz LZMAFile.seekcCs"|j|jtkr|jjS|jS)N)r?r#r%r4tellr()r5r9r9r:rOs  z LZMAFile.tell)Nrrr)rr)rr)rr)r)__name__ __module__ __qualname__r;r<propertyr>r@rBrArCrErrHrIrr2SEEK_SETrLrOr9r9r9r:r&s T   r)rrrrencodingerrorsnewlinec Csd|kr d|krPtd|fn0|dk r0td|dk r@td|dk rPtd|jdd} t|| ||||d} d|krtj| |||S| SdS) NtrzInvalid mode: %rz0Argument 'encoding' not supported in binary modez.Argument 'errors' not supported in binary modez/Argument 'newline' not supported in binary mode)rrrr)r$replacerr2 TextIOWrapper) r6r7rrrrrUrVrWZlz_modeZ binary_filer9r9r:rs   cCs t||||}|j||jS)N)rrr=)rKrrrrcompr9r9r:r6sc Csrg}xbt|||}y|j|}Wntk r>|r8PnYnX|j||jsXtd|j}|sPqWdj|S)NzACompressed data ended before the end-of-stream marker was reached)rr rappendeofZ unused_datajoin)rKrZmemlimitrZresultsZdecompresr9r9r:r Bs   )rrr)__all__r.r2r,Z_lzmar r r1r"r%r&Z BaseStreamrrrrrr r9r9r9r: s0   b-