MINI MINI MANI MO
3
  \                 @   s   d Z ddlZddlZdddZdddZG dd	 d	ejZG d
d dejZG dd
 d
ejZG dd deejZG dd deej	Z	dd Z
dS )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).
    Nstrictc             C   s   |dkst tj| t| fS )Nr   )AssertionErrorbz2compresslen)inputerrors r	   +/usr/lib64/python3.6/encodings/bz2_codec.py
bz2_encode   s    r   c             C   s   |dkst tj| t| fS )Nr   )r   r   
decompressr   )r   r   r	   r	   r
   
bz2_decode   s    r
   c               @   s    e Zd ZdddZdddZdS )	Codecr   c             C   s
   t ||S )N)r   )selfr   r   r	   r	   r
   encode   s    zCodec.encodec             C   s
   t ||S )N)r
   )r   r   r   r	   r	   r
   decode   s    zCodec.decodeN)r   )r   )__name__
__module____qualname__r   r   r	   r	   r	   r
   r      s   
r   c               @   s(   e Zd Zd
ddZdddZdd Zd	S )IncrementalEncoderr   c             C   s    |dkst || _tj | _d S )Nr   )r   r   r   
BZ2Compressorcompressobj)r   r   r	   r	   r
   __init__   s    zIncrementalEncoder.__init__Fc             C   s.   |r| j j|}|| j j  S | j j|S d S )N)r   r   flush)r   r   finalcr	   r	   r
   r   #   s    zIncrementalEncoder.encodec             C   s   t j | _d S )N)r   r   r   )r   r	   r	   r
   reset*   s    zIncrementalEncoder.resetN)r   )F)r   r   r   r   r   r   r	   r	   r	   r
   r      s   
r   c               @   s(   e Zd Zd
ddZdddZdd Zd	S )IncrementalDecoderr   c             C   s    |dkst || _tj | _d S )Nr   )r   r   r   BZ2Decompressor
decompressobj)r   r   r	   r	   r
   r   .   s    zIncrementalDecoder.__init__Fc             C   s&