o
     JAfç  ã                   @   sj   	 g d ¢Z ddlmZ ddlmZmZ dZdZdZdZ	dd	„ Z
ddd„Zdefdd„Zdd„ ZeZeZdS ))Úbody_decodeÚbody_encodeÚdecodeÚdecodestringÚheader_encodeÚheader_lengthé    )Ú	b64encode)Ú
b2a_base64Ú
a2b_base64z
Ú
Ú é   c                 C   s,   	 t t| ƒdƒ\}}|d }|r|d7 }|S )Né   é   )ÚdivmodÚlen)Ú	bytearrayZgroups_of_3ZleftoverÚn© r   ú'/usr/lib/python3.10/email/base64mime.pyr   2   s   r   ú
iso-8859-1c                 C   s8   	 | sdS t | tƒr|  |¡} t| ƒ d¡}d||f S )Nr   Úasciiz=?%s?b?%s?=)Ú
isinstanceÚstrÚencoder   r   )Zheader_bytesÚcharsetÚencodedr   r   r   r   =   s   

r   éL   c                 C   s€   	 | sdS g }|d d }t dt| ƒ|ƒD ]%}t| ||| … ƒ d¡}| t¡r5|tkr5|d d… | }| |¡ qt |¡S )Nr   r   r   r   r   éÿÿÿÿ)	Úranger   r	   r   ÚendswithÚNLÚappendÚEMPTYSTRINGÚjoin)ÚsZ
maxlinelenZeolZencvecZmax_unencodedÚiÚencr   r   r   r   L   s   	
r   c                 C   s,   	 | st ƒ S t| tƒrt|  d¡ƒS t| ƒS )Nzraw-unicode-escape)Úbytesr   r   r
   r   )Ústringr   r   r   r   f   s   
r   N)r   )Ú__all__Úbase64r   Zbinasciir	   r
   ZCRLFr!   r#   ZMISC_LENr   r   r   r   r   r   r   r   r   r   Ú<module>   s   

