o
0¦iG. ã @ s„ g d ¢Z dZddlmZ ddlZddlZddlZddlm Z m
Z
dZdZdZ
G dd „ d ejƒZ ddd
„Zddd„Zdd„ ZdS ))ÚBZ2FileÚ
BZ2CompressorÚBZ2DecompressorÚopenÚcompressÚ
decompressz%Nadeem Vawda é )r N)r r é é c @ s² e Zd Z d)ddœdd„Zdd„ Zedd „ ƒZd
d„ Zdd
„ Zdd„ Z dd„ Z
d*dd„Zd+dd„Zd+dd„Z
dd„ Zd+dd„Zd+dd„Zd d!„ Zd"d#„ Zejfd$d%„Zd&d'„ Zd(S ),r Úré ©Ú
compresslevelc C s8 d | _ d| _t| _d| krdkstdƒ‚ tdƒ‚|dv r%d}t}n1|dv r3d}t}t|ƒ| _n#|d v rAd
}t}t|ƒ| _n|dv rOd}t}t|ƒ| _ntd
|f ƒ‚t |t
ttj
fƒrlt||ƒ| _ d| _|| _nt|dƒsvt|dƒr}|| _ || _ntdƒ‚| jtkr—tj| j ttd�}t |¡| _d S d| _d S )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 )Ú_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Úmoder
Z mode_codeÚraw© r3 ú*/opt/alt/python310/lib64/python3.10/bz2.pyÚ__init__% sL ÿ
ÿ
zBZ2File.__init__c C s | j tkrd S zQ| j tkr| j ¡ n| j tkr%| j | j ¡ ¡ d | _W z&| j
r>| j ¡ W d | _d| _
t| _ d | _d S W d | _d| _
t| _ d | _d S d | _d| _
t| _ d | _w z$| j
rq| j ¡ W d | _d| _
t| _ d | _w W d | _d| _
t| _ d | _w d | _d| _
t| _ d | _w )NF)r r r r- Úcloser r r r Úflushr ©r/ r3 r3 r4 r6 a sT
€
ú
ýùúýz
BZ2File.closec C s | j tkS ©N)r r r8 r3 r3 r4 Úclosedy s
zBZ2File.closedc C s | ¡ | j ¡ S r9 )Ú_check_not_closedr Úfilenor8 r3 r3 r4 r<