
    F\h                        S r SSKrSSKrSS jrSS jr " S S\R
                  5      r " S S\R                  5      r " S	 S
\R                  5      r " S S\\R                  5      r " S S\\R                  5      r	S r
g)a  Python 'bz2_codec' Codec - bz2 compression encoding.

This codec de/encodes from bytes to bytes and is therefore usable with
bytes.transform() and bytes.untransform().

Adapted by Raymond Hettinger from zlib_codec.py which was written
by Marc-Andre Lemburg (mal@lemburg.com).
    Nc                 T    US:X  d   e[         R                  " U 5      [        U 5      4$ Nstrict)bz2compressleninputerrorss     */usr/lib/python3.13/encodings/bz2_codec.py
bz2_encoder      s(    XLLU,,    c                 T    US:X  d   e[         R                  " U 5      [        U 5      4$ r   )r   
decompressr   r	   s     r   
bz2_decoder      s(    XNN5!3u:..r   c                   (    \ rS rSrSS jrSS jrSrg)Codec   c                     [        X5      $ N)r   selfr
   r   s      r   encodeCodec.encode       %((r   c                     [        X5      $ r   )r   r   s      r   decodeCodec.decode   r   r    Nr   )__name__
__module____qualname____firstlineno__r   r   __static_attributes__r   r   r   r   r      s    ))r   r   c                   .    \ rS rSrSS jrSS jrS rSrg)	IncrementalEncoder   c                 T    US:X  d   eXl         [        R                  " 5       U l        g r   )r   r   BZ2Compressorcompressobjr   r   s     r   __init__IncrementalEncoder.__init__   s&    !!!,,.r   c                     U(       a7  U R                   R                  U5      nX0R                   R                  5       -   $ U R                   R                  U5      $ r   )r+   r   flush)r   r
   finalcs       r   r   IncrementalEncoder.encode#   sJ      ))%0A''--///##,,U33r   c                 8    [         R                  " 5       U l        g r   )r   r*   r+   r   s    r   resetIncrementalEncoder.reset*   s    ,,.r   )r+   r   Nr    F)r!   r"   r#   r$   r-   r   r6   r%   r   r   r   r'   r'      s    /
4/r   r'   c                   .    \ rS rSrSS jrSS jrS rSrg)	IncrementalDecoder-   c                 T    US:X  d   eXl         [        R                  " 5       U l        g r   )r   r   BZ2Decompressordecompressobjr,   s     r   r-   IncrementalDecoder.__init__.   s&    !!! 002r   c                 Z     U R                   R                  U5      $ ! [         a     gf = f)N )r>   r   EOFError)r   r
   r1   s      r   r   IncrementalDecoder.decode3   s0    	%%0077 		s    
**c                 8    [         R                  " 5       U l        g r   )r   r=   r>   r5   s    r   r6   IncrementalDecoder.reset9   s     002r   )r>   r   Nr    r8   )r!   r"   r#   r$   r-   r   r6   r%   r   r   r   r:   r:   -   s    3
3r   r:   c                       \ rS rSr\rSrg)StreamWriter<   r   Nr!   r"   r#   r$   bytescharbuffertyper%   r   r   r   rG   rG   <       Nr   rG   c                       \ rS rSr\rSrg)StreamReader?   r   NrI   r   r   r   rN   rN   ?   rL   r   rN   c                  h    [         R                  " S[        [        [        [
        [        [        SS9$ )Nr   F)namer   r   incrementalencoderincrementaldecoderstreamwriterstreamreader_is_text_encoding)codecs	CodecInfor   r   r'   r:   rG   rN   r   r   r   getregentryrY   D   s-    --!!	 	r   r    )__doc__rW   r   r   r   r   r'   r:   rG   rN   rY   r   r   r   <module>r[      s}     
-/)FLL )/22 / 322 35&-- 5&-- 

r   