
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3

  \^  ã               @   s°   d dddgZ dZdZdZdZydd	lmZmZ W n ek
rL   d
Zd
ZY nX dd„ Z	dd„ Z
ddd „Zddd„Zddd„Zddd„Zdd„ Zdd„ Zdd„ Zedkr¬eƒ  d
S )ÚencodeÚdecodeÚencodestringÚdecodestringó   =éL   s   0123456789ABCDEFó    é    )Úa2b_qpÚb2a_qpNc             C   s:   | dkr|S | dkr|S | t kp8d|   ko2dkn   S )Ns    	ó   _ó    ó   ~)ÚESCAPE)ÚcÚ	quotetabsÚheader© r   ú/usr/lib64/python3.6/quopri.pyÚneedsquoting   s
    r   c             C   s(   t | ƒ} ttt| d  t| d  fƒ S )Né   )Úordr   ÚbytesÚHEX)r   r   r   r   Úquote$   s    r   Fc             C   s<  t d k	r,| jƒ }t |||d�}|j|ƒ d S |dfdd„}d }xâ| jƒ }|sNP g }	d}
|dd … dkrv|d d… }d}
xL|D ]D}t|fƒ}t|||ƒržt|ƒ}|r¶|dkr¶|	jdƒ q||	j|ƒ q|W |d k	rÔ||ƒ tj	|	ƒ}x:t
|ƒtk�r||d td … d	d
� |td d … }qàW |}q@W |d k	�r8|||
d
� d S )N)r   r   ó   
c             S   sj   | r<| dd … dkr<|j | d d… t| dd … ƒ | ƒ n*| dkrX|j t| ƒ| ƒ n|j | | ƒ d S )Né   s    	ó   .éÿÿÿÿr   r   )Úwriter   )ÚsÚoutputÚlineEndr   r   r   r   ;   s
    (zencode.<locals>.writer   r   r   r   s   =
)r!   r   r   )r
   Úreadr   Úreadliner   r   r   ÚappendÚEMPTYSTRINGÚjoinÚlenÚMAXLINESIZE)Úinputr    r   r   ÚdataÚodatar   ZprevlineÚlineZoutlineÚstrippedr   Zthisliner   r   r   r   ,   s@    	





c             C   sF   t d k	rt | ||d�S ddlm} || ƒ}|ƒ }t||||ƒ |jƒ S )N)r   r   r   )ÚBytesIO)r
   Úior.   r   Úgetvalue)r   r   r   r.   ÚinfpÚoutfpr   r   r   r   j   s    c             C   s  t d k	r*| jƒ }t ||d�}|j|ƒ d S d}�xÀ| jƒ }|s@P dt|ƒ }}|dkr¢||d |… dkr¢d}	|d }x.|dkrž||d |… dkrž|d }qxW nd}	�x.||k �rÖ|||d … }
|
dkrâ|râ|d }|d }qª|
tk� rþ||
 }|d }qª|d |k�r|	 �rd}	P qª|d |k �rV||d |d	 … tk�rV|t }|d	 }qª|d	 |k �rÄt||d |d	 … ƒ�rÄt||d	 |d
 … ƒ�rÄ|tt||d |d
 … ƒfƒ }|d
 }qª||
 }|d }qªW |	s2|j|d ƒ d}q2W |�r|j|ƒ d S )N)r   r   r   r   r   s    	r   r   é   é   )	r	   r"   r   r#   r'   r   Úishexr   Úunhex)r)   r    r   r*   r+   Únewr,   ÚiÚnÚpartialr   r   r   r   r   u   sR    
   

 
 ( 
B" 
 c             C   sD   t d k	rt | |d�S ddlm} || ƒ}|ƒ }t|||d� |jƒ S )N)r   r   )r.   )r	   r/   r.   r   r0   )r   r   r.   r1   r2   r   r   r   r       s    c             C   sH   d|   kodkn  pFd|   ko*dkn  pFd|   koBdkS   S )Nó   0ó   9ó   aó   fó   Aó   Fr   )r   r   r   r   r5   ¬   s    r5   c             C   s¢   d}x˜| D ]�}t |fƒ}d|  ko*dkn  r:tdƒ}nLd|  koLdkn  r`tdƒd }n&d	|  kord
kn  r†td	ƒd }n |d t|ƒ|  }q
W |S )Nr   r;   r<   Ú0r=   r>   Úaé
   r?   r@   r   )r   r   )r   Úbitsr   r8   r   r   r   r6   ±   s    


r6   c           (   C   s¬  dd l } dd l}y|j| jdd … dƒ\}}W nV |jk
r„ } z8| j| _t|ƒ tdƒ tdƒ tdƒ | jdƒ W Y d d }~X nX d}d}x(|D ] \}}|dkr¨d}|d	kr”d}q”W |rÚ|rÚ| j| _td
ƒ | jdƒ |sädg}d}	x®|D ]¦}
|
dk�r| jj	}nNyt
|
dƒ}W n> tk
�rR } z | jjd|
|f ƒ d}	wîW Y d d }~X nX z*|�rlt|| jj	ƒ nt|| jj	|ƒ W d |
dk�r’|jƒ  X qîW |	�r¨| j|	ƒ d S )Nr   r   Ztdz"usage: quopri [-t | -d] [file] ...z-t: quote tabsz-d: decode; default encoder3   z-tz-dz -t and -d are mutually exclusiveú-Úrbz%s: can't open (%s)
)ÚsysÚgetoptÚargvÚerrorÚstderrÚstdoutÚprintÚexitÚstdinÚbufferÚopenÚOSErrorr   r   r   Úclose)rG   rH   ZoptsÚargsÚmsgZdecoZtabsÚorB   ÚstsÚfileÚfpr   r   r   ÚmainÃ   sT      
 



rZ   Ú__main__)F)FF)F)F)Ú__all__r   r(   r   r%   Zbinasciir	   r
   ÚImportErrorr   r   r   r   r   r   r5   r6   rZ   Ú__name__r   r   r   r   Ú<module>   s(   

>

+
.