a
    ze                     @   s   d dl Z d dlZdddZdddZG dd de jZG d	d
 d
e jZG dd de jZG dd dee jZG dd dee jZdd Z	dS )    Nstrictc                 C   s   t | t| fS N)bz2compressleninputerrors r
   )/usr/lib/python3.9/encodings/bz2_codec.py
bz2_encode   s    r   c                 C   s   t | t| fS r   )r   
decompressr   r   r
   r
   r   
bz2_decode   s    r   c                   @   s    e Zd ZdddZdddZdS )	Codecr   c                 C   s
   t ||S r   )r   selfr   r	   r
   r
   r   encode   s    zCodec.encodec                 C   s
   t ||S r   )r   r   r
   r
   r   decode   s    zCodec.decodeN)r   )r   )__name__
__module____qualname__r   r   r
   r
   r
   r   r      s   
r   c                   @   s(   e Zd Zd
ddZdddZdd Zd	S )IncrementalEncoderr   c                 C   s   || _ t | _d S r   )r	   r   BZ2Compressorcompressobjr   r	   r
   r
   r   __init__   s    zIncrementalEncoder.__init__Fc                 C   s.   |r| j |}|| j   S | j |S d S r   )r   r   flush)r   r   finalcr
   r
   r   r   #   s    zIncrementalEncoder.encodec                 C   s   t  | _d S r   )r   r   r   r   r
   r
   r   reset*   s    zIncrementalEncoder.resetN)r   )F)r   r   r   r   r   r    r
   r
   r
   r   r      s   

r   c                   @   s(   e Zd Zd
ddZdddZdd Zd	S )IncrementalDecoderr   c                 C   s   || _ t | _d S r   )r	   r   BZ2Decompressordecompressobjr   r
   r
   r   r   .   s    zIncrementalDecoder.__init__Fc                 C   s(   z| j |W S  ty"   Y dS 0 d S )N )r#   r   EOFError)r   r   r   r
   r
   r   r   3   s    zIncrementalDecoder.decodec                 C   s   t  | _d S r   )r   r"   r#   r   r
   r
   r   r    9   s    zIncrementalDecoder.resetN)r   )F)r   r   r   r   r   r    r
   r
   r
   r   r!   -   s   

r!   c                   @   s   e Zd ZeZdS )StreamWriterNr   r   r   bytescharbuffertyper
   r
   r
   r   r&   <   s   r&   c                   @   s   e Zd ZeZdS )StreamReaderNr'   r
   r
   r
   r   r*   ?   s   r*   c                
   C   s   t jdttttttddS )Nr   F)namer   r   incrementalencoderincrementaldecoderstreamwriterstreamreader_is_text_encoding)codecs	CodecInfor   r   r   r!   r&   r*   r
   r
   r
   r   getregentryD   s    r3   )r   )r   )
r1   r   r   r   r   r   r!   r&   r*   r3   r
   r
   r
   r   <module>
   s   

