� c��j� � � � d Z ddlZddlZdd�Zdd�Z G d� dej � Z G d� dej � Z G d � d ej � Z G d� deej � Z G d � deej � Z d� Z y)z�Python 'zlib_codec' Codec - zlib compression encoding. This codec de/encodes from bytes to bytes. Written by Marc-Andre Lemburg ([email protected]). � Nc �P � |dk( sJ �t j | � t | � fS �N�strict)�zlib�compress�len��input�errorss �-/usr/lib64/python3.12/encodings/zlib_codec.py�zlib_encoder s( � ��X�����M�M�%� �#�e�*�-�-� c �P � |dk( sJ �t j | � t | � fS r )r � decompressr r s r �zlib_decoder s( � ��X�����O�O�E�"�C��J�/�/r c � � e Zd Zdd�Zdd�Zy)�Codecc � � t ||� S �N)r ��selfr r s r �encodezCodec.encode � � ��5�&�)�)r c � � t ||� S r )r r s r �decodezCodec.decode r r N�r )�__name__� __module__�__qualname__r r � r r r r s � �*�*r r c �" � e Zd Zdd�Zdd�Zd� Zy)�IncrementalEncoderc �R � |dk( sJ �|| _ t j � | _ y r )r r �compressobj�r r s r �__init__zIncrementalEncoder.__init__ s( � ���!�!�!�����+�+�-��r c � � |r8| j j |� }|| j j � z S | j j |� S r )r$ r �flush�r r �final�cs r r zIncrementalEncoder.encode! sL � ��� � �)�)�%�0�A��t�'�'�-�-�/�/�/��#�#�,�,�U�3�3r c �6 � t j � | _ y r )r r$ �r s r �resetzIncrementalEncoder.reset( s � ��+�+�-��r Nr �F)r r r r&