grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026a XC?hŸ0ã@sŠgd¢ZdZddlmZddlZddlZddlZddlm Z ddl m Z m Z dZ dZdZGd d „d ejƒZdd d„Zddd„Zdd„ZdS))ÚBZ2FileÚ BZ2CompressorÚBZ2DecompressorÚopenÚcompressÚ decompressz%Nadeem Vawda é)rN)ÚRLock)rrééc@s°eZdZd)ddœdd„Zdd„Zedd „ƒZd d „Zd d „Zdd„Z dd„Z d*dd„Z d+dd„Z d,dd„Z dd„Zd-dd„Zd.dd„Zd d!„Zd"d#„Zejfd$d%„Zd&d'„Zd(S)/rÚré ©Ú compresslevelcCs8tƒ|_d|_d|_t|_d|kr.dks8ntdƒ‚|dvrJd}t}nb|dvrfd}t}t |ƒ|_ nF|d vr‚d }t}t |ƒ|_ n*|d vržd }t}t |ƒ|_ ntd |fƒ‚t |t t tjfƒrØt||ƒ|_d|_||_n*t|dƒsìt|dƒrú||_||_ntdƒ‚|jtk�r.tj|jttd�}t |¡|_nd|_dS)NFr r z%compresslevel must be between 1 and 9)Úr Úrbr)ÚwÚwbr)ÚxÚxbr)ÚaÚabrúInvalid mode: %rTÚreadÚwritez6filename must be a str, bytes, file or PathLike object)Ztrailing_errorr)rÚ_lockÚ_fpÚ_closefpÚ _MODE_CLOSEDÚ_modeÚ ValueErrorÚ _MODE_READÚ _MODE_WRITErÚ _compressorÚ isinstanceÚstrÚbytesÚosÚPathLikeÚ _builtin_openÚhasattrÚ TypeErrorÚ _compressionZDecompressReaderrÚOSErrorÚioÚBufferedReaderÚ_bufferÚ_pos)ÚselfÚfilenameÚmoderZ mode_codeÚraw©r5ú(/opt/alt/python39/lib64/python3.9/bz2.pyÚ__init__&sH     ÿzBZ2File.__init__cCs|j�ú|jtkr"WdƒdSz„|jtkr:|j ¡n"|jtkr\|j |j   ¡¡d|_ Wz,|j rp|j ¡Wd|_d|_ t|_d|_qòd|_d|_ t|_d|_0nJz,|j rº|j ¡Wd|_d|_ t|_d|_nd|_d|_ t|_d|_00Wdƒn1�s0YdS)NF) rrrr r/Úcloser!rrr"Úflushr©r1r5r5r6r8es>     ý ù ýz BZ2File.closecCs |jtkS©N)rrr:r5r5r6Úclosed~szBZ2File.closedcCs| ¡|j ¡Sr;)Ú_check_not_closedrÚfilenor:r5r5r6r>ƒszBZ2File.filenocCs| ¡o|j ¡Sr;)Úreadabler/Úseekabler:r5r5r6r@ˆszBZ2File.seekablecCs| ¡|jtkSr;)r=rr r:r5r5r6r?ŒszBZ2File.readablecCs| ¡|jtkSr;)r=rr!r:r5r5r6Úwritable‘szBZ2File.writablercCs>|j�$| ¡|j |¡WdƒS1s00YdSr;)rÚ_check_can_readr/Úpeek)r1Únr5r5r6rC–sz BZ2File.peekéÿÿÿÿcCs>|j�$| ¡|j |¡WdƒS1s00YdSr;)rrBr/r©r1Úsizer5r5r6r£sz BZ2File.readcCsL|j�2| ¡|dkrtj}|j |¡WdƒS1s>0YdS)Nr)rrBr-ÚDEFAULT_BUFFER_SIZEr/Úread1rFr5r5r6rI­s z BZ2File.read1cCs>|j�$| ¡|j |¡WdƒS1s00YdSr;)rrBr/Úreadinto)r1Úbr5r5r6rJºszBZ2File.readintocCsbt|tƒs$t|dƒstdƒ‚| ¡}|j�$| ¡|j |¡WdƒS1sT0YdS©NÚ __index__zInteger argument expected) r#Úintr)r*rMrrBr/ÚreadlinerFr5r5r6rOÃs  zBZ2File.readlinecCsbt|tƒs$t|dƒstdƒ‚| ¡}|j�$| ¡|j |¡WdƒS1sT0YdSrL) r#rNr)r*rMrrBr/Ú readlinesrFr5r5r6rPÒs  zBZ2File.readlinescCs‚|j�h| ¡t|ttfƒr(t|ƒ}nt|ƒ}|j}|j  |¡}|j   |¡|j |7_ |WdƒS1st0YdSr;) rZ_check_can_writer#r%Ú bytearrayÚlenÚ memoryviewÚnbytesr"rrrr0)r1ÚdataZlengthZ compressedr5r5r6rás   z BZ2File.writecCs8|j�tj ||¡WdƒS1s*0YdSr;)rr+Ú BaseStreamÚ writelines)r1Úseqr5r5r6rW÷szBZ2File.writelinescCs@|j�&| ¡|j ||¡WdƒS1s20YdSr;)rZ_check_can_seekr/Úseek)r1ÚoffsetÚwhencer5r5r6rYsz BZ2File.seekcCsZ|j�@| ¡|jtkr2|j ¡WdƒS|jWdƒS1sL0YdSr;)rr=rr r/Útellr0r:r5r5r6r\s  z BZ2File.tellN)r )r)rE)rE)rE)rE)Ú__name__Ú __module__Ú __qualname__r7r8Úpropertyr<r>r@r?rArCrrIrJrOrPrrWr-ÚSEEK_SETrYr\r5r5r5r6rs$ ?     rrr cCsŠd|vr d|vrPtd|fƒ‚n0|dur0tdƒ‚|dur@tdƒ‚|durPtdƒ‚| dd¡}t|||d�}d|vr‚t ||||¡S|SdS) NÚtrKrz0Argument 'encoding' not supported in binary modez.Argument 'errors' not supported in binary modez/Argument 'newline' not supported in binary moderr )rÚreplacerr-Ú TextIOWrapper)r2r3rÚencodingÚerrorsÚnewlineZbz_modeZ binary_filer5r5r6rs rcCst|ƒ}| |¡| ¡Sr;)rrr9)rUrÚcompr5r5r6rGsrcCsfg}|r\tƒ}z| |¡}Wnty:|r4Yq\n‚Yn0| |¡|jsTtdƒ‚|j}qd |¡S)NzACompressed data ended before the end-of-stream marker was reachedó)rrr,ÚappendÚeofrZ unused_dataÚjoin)rUZresultsZdecompÚresr5r5r6rRs  r)rr NNN)r )Ú__all__Ú __author__Úbuiltinsrr(r-r&r+Z threadingrZ_bz2rrrr r!rVrrrr5r5r5r6Ús$  ÿ )