
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
U
    ¡ê,a#  ã                   @   sž   d Z ddlZddlZddlmZ ddd„Zdd	d
„ZG dd„ dejƒZG dd„ dejƒZG dd„ dej	ƒZ	G dd„ deej
ƒZ
G dd„ deejƒZdd„ ZdS )a  Python 'uu_codec' Codec - UU content transfer encoding.

This codec de/encodes from bytes to bytes.

Written by Marc-Andre Lemburg (mal@lemburg.com). Some details were
adapted from uu.py which was written by Lance Ellinghouse and
modified by Jack Jansen and Fredrik Lundh.
é    N)ÚBytesIOÚstrictú<data>é¶  c           	      C   s”   |dkst ‚t| ƒ}tƒ }|j}|j}| dd¡}| dd¡}|d|d@ |f  d¡ƒ |d	ƒ}|r||t |¡ƒ |d	ƒ}q`|d
ƒ | ¡ t	| ƒfS )Nr   Ú
z\núz\rzbegin %o %s
iÿ  Úasciié-   s    
end
)
ÚAssertionErrorr   ÚreadÚwriteÚreplaceÚencodeÚbinasciiZb2a_uuÚgetvalueÚlen)	ÚinputÚerrorsÚfilenameÚmodeÚinfileÚoutfiler   r   Úchunk© r   ú7/opt/alt/python38/lib64/python3.8/encodings/uu_codec.pyÚ	uu_encode   s    
r   c           
   
   C   sè   |dkst ‚t| ƒ}tƒ }|j}|j}|ƒ }|s8tdƒ‚|d d… dkr&qLq&|ƒ }|rÌ|dkr`qÌzt |¡}W nR tjk
rÀ } z2|d d d@ d	 d d
 }	t |d |	… ¡}W 5 d }~X Y nX ||ƒ qL|sØtdƒ‚| ¡ t	| ƒfS )Nr   z"Missing "begin" line in input dataé   s   begins   end
r   é    é?   é   é   zTruncated input data)
r
   r   Úreadliner   Ú
ValueErrorr   Za2b_uuÚErrorr   r   )
r   r   r   r   r!   r   ÚsÚdataÚvÚnbytesr   r   r   Ú	uu_decode%   s,    $
r(   c                   @   s    e Zd Zddd„Zddd„ZdS )	ÚCodecr   c                 C   s
   t ||ƒS ©N)r   ©Úselfr   r   r   r   r   r   G   s    zCodec.encodec                 C   s
   t ||ƒS r*   )r(   r+   r   r   r   ÚdecodeJ   s    zCodec.decodeN)r   )r   )Ú__name__Ú
__module__Ú__qualname__r   r-   r   r   r   r   r)   F   s   
r)   c                   @   s   e Zd Zddd„ZdS )ÚIncrementalEncoderFc                 C   s   t || jƒd S ©Nr   )r   r   ©r,   r   Úfinalr   r   r   r   N   s    zIncrementalEncoder.encodeN)F)r.   r/   r0   r   r   r   r   r   r1   M   s   r1   c                   @   s   e Zd Zddd„ZdS )ÚIncrementalDecoderFc                 C   s   t || jƒd S r2   )r(   r   r3   r   r   r   r-   R   s    zIncrementalDecoder.decodeN)F)r.   r/   r0   r-   r   r   r   r   r5   Q   s   r5   c                   @   s   e Zd ZeZdS )ÚStreamWriterN©r.   r/   r0   ÚbytesÚcharbuffertyper   r   r   r   r6   U   s   r6   c                   @   s   e Zd ZeZdS )ÚStreamReaderNr7   r   r   r   r   r:   X   s   r:   c                
   C   s   t jdttttttdd�S )NÚuuF)Únamer   r-   ÚincrementalencoderÚincrementaldecoderÚstreamreaderÚstreamwriterÚ_is_text_encoding)ÚcodecsÚ	CodecInfor   r(   r1   r5   r:   r6   r   r   r   r   Úgetregentry]   s    ørD   )r   r   r   )r   )Ú__doc__rB   r   Úior   r   r(   r)   r1   r5   r6   r:   rD   r   r   r   r   Ú<module>   s   	

!