�
c��j � � � g d �Z dZdZdZdZ ddlmZmZ d� Z d � Z
dd
�Zdd�Zdd�Z
dd
�Zd� Zd� Zd� Zedk( r e� yy# e$ r dZdZY �8w xY w))�encode�decode�encodestring�decodestring� =�L s 0123456789ABCDEF� � )�a2b_qp�b2a_qpNc �V � | dv r|S | dk( r|S | t k( xs d| cxk xr dk nc S )N� � _� � ~)�ESCAPE)�c� quotetabs�headers �/usr/lib64/python3.12/quopri.py�needsquotingr s> � �� �F�{����D�y��
���;�1�t�q�0�D�0�1�1r c �j � t | � } t t t | dz t | dz f� z S )N� )�ordr �bytes�HEX�r s r �quoter $ s3 � �#��A��A��E�3�q�"�u�:�s�1�R�4�y�1�2�2�2r c � � t �0| j � }t |||�� }|j |� y |dfd�}d }| j � x}r�g } d}
|dd dk( r|d d }d}
|D ]P }t |f� }t |||� rt
|� }|r|dk( r| j d� �@| j |� �R |� ||� t j | � }t |� t kD r3 ||d t dz
d �
� |t dz
d }t |� t kD r�3|}| j � x}r��|� ||
�
� y y )N�r r �
c �� � | r.| dd dv r'|j | d d t | dd � z |z � y | dk( r|j t | � |z � y |j | |z � y )N�����r
� .)�writer )�s�output�lineEnds r r$ zencode.