§
    *‚Kg#  ã                   óþ   — d Z ddlZddlZddlmZ dd„Zdd„Z G d	„ d
ej        ¦  «        Z G d„ dej        ¦  «        Z G d„ dej	        ¦  «        Z	 G d„ deej
        ¦  «        Z
 G d„ deej        ¦  «        Z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                 óÖ  — |dk    sJ ‚t          | ¦  «        }t          ¦   «         }|j        }|j        }|                     dd¦  «        }|                     dd¦  «        } |d|dz  |fz                       d¦  «        ¦  «          |d	¦  «        }|r* |t          j        |¦  «        ¦  «          |d	¦  «        }|°* |d
¦  «         |                     ¦   «         t          | ¦  «        fS )Nr   ú
z\núz\rzbegin %o %s
iÿ  Úasciié-   s    
end
)	r   ÚreadÚwriteÚreplaceÚencodeÚbinasciiÚb2a_uuÚgetvalueÚlen)	ÚinputÚerrorsÚfilenameÚmodeÚinfileÚoutfiler   r   Úchunks	            ú)/usr/lib/python3.11/encodings/uu_codec.pyÚ	uu_encoder      s  € Ø�XÒÐÐÐÝ�U‰^Œ^€FÝ‰iŒi€GØŒ;€DØŒM€Eð ×Ò  UÑ+Ô+€HØ×Ò  UÑ+Ô+€Hð 
€Eˆ?˜d U™l¨HÐ5Ñ5×
=Ò
=¸gÑ
FÔ
FÑGÔGÐGØˆD�‰HŒH€EØ
ð Øˆ�hŒo˜eÑ$Ô$Ñ%Ô%Ð%Ø��R‘”ˆð ð ð 
€Eˆ+ÑÔÐà×ÒÑÔ¥ E¡
¤
Ð+Ð+ó    c                 ó2  — |dk    sJ ‚t          | ¦  «        }t          ¦   «         }|j        }|j        }	  |¦   «         }|st          d¦  «        ‚|d d…         dk    rnŒ+	  |¦   «         }|r|dk    rnq	 t	          j        |¦  «        }nO# t          j        $ r=}|d         d	z
  d
z  dz  dz   dz  }	t	          j        |d |	…         ¦  «        }Y d }~nd }~ww xY w ||¦  «         Œ„|st          d¦  «        ‚|                     ¦   «         t          | ¦  «        fS )Nr   é   z"Missing "begin" line in input dataé   s   beginTs   end
r   é    é?   é   é   zTruncated input data)	r   Úreadliner   Ú
ValueErrorr   Úa2b_uuÚErrorr   r   )
r   r   r   r   r%   r   ÚsÚdataÚvÚnbytess
             r   Ú	uu_decoder-   %   s]  € Ø�XÒÐÐÐÝ�U‰^Œ^€FÝ‰iŒi€GØŒ€HØŒM€EðØˆH‰JŒJˆØð 	CÝÐAÑBÔBÐBØˆRˆaˆRŒ5�HÒÐØððØˆH‰JŒJˆØð 	�A˜’M�MØð	/Ý”? 1Ñ%Ô%ˆDˆDøÝŒ~ð 	/ð 	/ð 	/à˜!œ˜R™ 2‘~¨Ñ*¨QÑ.°1Ñ4ˆFÝ”? 1 W f W¤:Ñ.Ô.ˆDˆDˆDˆDˆDˆDøøøøð	/øøøð
 	ˆˆd‰Œˆðð ð 1ÝÐ/Ñ0Ô0Ð0à×ÒÑÔ¥ E¡
¤
Ð+Ð+s   Á5B
 Â
CÂ3CÃCc                   ó   — e Zd Zdd„Zdd„ZdS )ÚCodecr   c                 ó"   — t          ||¦  «        S ©N)r   ©Úselfr   r   s      r   r   zCodec.encodeG   ó   € Ý˜ Ñ'Ô'Ð'r   c                 ó"   — t          ||¦  «        S r1   )r-   r2   s      r   ÚdecodezCodec.decodeJ   r4   r   N©r   )Ú__name__Ú
__module__Ú__qualname__r   r6   © r   r   r/   r/   F   s<   € € € € € ð(ð (ð (ð (ð(ð (ð (ð (ð (ð (r   r/   c                   ó   — e Zd Zdd„ZdS )ÚIncrementalEncoderFc                 ó8   — t          || j        ¦  «        d         S ©Nr   )r   r   ©r3   r   Úfinals      r   r   zIncrementalEncoder.encodeN   ó   € Ý˜ ¤Ñ,Ô,¨QÔ/Ð/r   N©F)r8   r9   r:   r   r;   r   r   r=   r=   M   ó(   € € € € € ð0ð 0ð 0ð 0ð 0ð 0r   r=   c                   ó   — e Zd Zdd„ZdS )ÚIncrementalDecoderFc                 ó8   — t          || j        ¦  «        d         S r?   )r-   r   r@   s      r   r6   zIncrementalDecoder.decodeR   rB   r   NrC   )r8   r9   r:   r6   r;   r   r   rF   rF   Q   rD   r   rF   c                   ó   — e Zd ZeZdS )ÚStreamWriterN©r8   r9   r:   ÚbytesÚcharbuffertyper;   r   r   rI   rI   U   ó   € € € € € Ø€N€N€Nr   rI   c                   ó   — e Zd ZeZdS )ÚStreamReaderNrJ   r;   r   r   rO   rO   X   rM   r   rO   c            
      óv   — t          j        dt          t          t          t
          t          t          d¬¦  «        S )NÚuuF)Únamer   r6   ÚincrementalencoderÚincrementaldecoderÚstreamreaderÚstreamwriterÚ_is_text_encoding)ÚcodecsÚ	CodecInfor   r-   r=   rF   rO   rI   r;   r   r   ÚgetregentryrZ   ]   s4   € ÝÔØÝÝÝ-Ý-Ý!Ý!Øð	ñ 	ô 	ð 	r   )r   r   r   r7   )Ú__doc__rX   r   Úior   r   r-   r/   r=   rF   rI   rO   rZ   r;   r   r   ú<module>r]      s[  ððð ð €€€Ø €€€Ø Ð Ð Ð Ð Ð ð,ð ,ð ,ð ,ð*,ð ,ð ,ð ,ðB(ð (ð (ð (ð (ˆFŒLñ (ô (ð (ð0ð 0ð 0ð 0ð 0˜Ô2ñ 0ô 0ð 0ð0ð 0ð 0ð 0ð 0˜Ô2ñ 0ô 0ð 0ðð ð ð ð �5˜&Ô-ñ ô ð ðð ð ð ð �5˜&Ô-ñ ô ð ð

ð 
ð 
ð 
ð 
r   