Ë
    òT•j#  ã                   ó  — 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y)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)ÚBytesIOc                 ó–  — |dk(  sJ ‚t        | «      }t        «       }|j                  }|j                  }|j                  dd«      }|j                  dd«      } |d|dz  |fz  j	                  d«      «        |d	«      }|r& |t        j                  |«      «        |d	«      }|rŒ& |d
«       |j                  «       t        | «      fS )NÚstrictú
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.12/encodings/uu_codec.pyÚ	uu_encoder      sÈ   € Ø�XÒÐÐÜ�U‹^€FÜ‹i€GØ�;‰;€DØ�M‰M€Eð ×Ñ  UÓ+€HØ×Ñ  UÓ+€Hñ 
ˆ?˜d U™l¨HÐ5Ñ5×
=Ñ
=¸gÓ
FÔGÙ�‹H€EÙ
ÙŒh�o‰o˜eÓ$Ô%Ù�R“ˆò ñ 
ˆ+Ôà×ÑÓ¤ E£
Ð+Ð+ó    c                 óî  — |dk(  sJ ‚t        | «      }t        «       }|j                  }|j                  }	  |«       }|st        d«      ‚|d d dk(  rnŒ	  |«       }|r|dk(  rn	 t	        j
                  |«      } ||«       Œ.|st        d«      ‚|j                  «       t        | «      fS # t        j                  $ r6}|d   dz
  dz  d	z  dz   d
z  }	t	        j
                  |d |	 «      }Y d }~Œud }~ww xY w)Nr   z"Missing "begin" line in input dataé   s   begins   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€GØ�‰€HØ�M‰M€Eð Ù‹JˆÙÜÐAÓBÐBØˆRˆaˆ5�HÒØð ð Ù‹JˆÙ�A˜’MØð	/Ü—?‘? 1Ó%ˆDñ 	ˆdŒð ñ ÜÐ/Ó0Ð0à×ÑÓ¤ E£
Ð+Ð+øô �~‰~ò 	/à˜!™˜R™ 2‘~¨Ñ*¨QÑ.°1Ñ4ˆFÜ—?‘? 1 W f :Ó.�Dûð	/ús   Á%B+ Â+C4Â>,C/Ã/C4c                   ó   — e Zd Zdd„Zdd„Zy)ÚCodecc                 ó   — t        ||«      S ©N)r   ©Úselfr   r   s      r   r   zCodec.encodeG   ó   € Ü˜ Ó'Ð'r   c                 ó   — t        ||«      S r.   )r*   r/   s      r   ÚdecodezCodec.decodeJ   r1   r   N©r   )Ú__name__Ú
__module__Ú__qualname__r   r3   © r   r   r,   r,   F   s   „ ó(ô(r   r,   c                   ó   — e Zd Zdd„Zy)ÚIncrementalEncoderc                 ó4   — t        || j                  «      d   S ©Nr   )r   r   ©r0   r   Úfinals      r   r   zIncrementalEncoder.encodeN   ó   € Ü˜ §¡Ó,¨QÑ/Ð/r   N©F)r5   r6   r7   r   r8   r   r   r:   r:   M   ó   „ ô0r   r:   c                   ó   — e Zd Zdd„Zy)ÚIncrementalDecoderc                 ó4   — t        || j                  «      d   S r<   )r*   r   r=   s      r   r3   zIncrementalDecoder.decodeR   r?   r   Nr@   )r5   r6   r7   r3   r8   r   r   rC   rC   Q   rA   r   rC   c                   ó   — e Zd ZeZy)ÚStreamWriterN©r5   r6   r7   ÚbytesÚcharbuffertyper8   r   r   rF   rF   U   ó   „ Ø�Nr   rF   c                   ó   — e Zd ZeZy)ÚStreamReaderNrG   r8   r   r   rL   rL   X   rJ   r   rL   c            
      ól   — t        j                  dt        t        t        t
        t        t        d¬«      S )NÚuuF)Únamer   r3   ÚincrementalencoderÚincrementaldecoderÚstreamreaderÚstreamwriterÚ_is_text_encoding)ÚcodecsÚ	CodecInfor   r*   r:   rC   rL   rF   r8   r   r   ÚgetregentryrW   ]   s-   € Ü×ÑØÜÜÜ-Ü-Ü!Ü!Øô	ð 	r   )r   z<data>i¶  r4   )Ú__doc__rU   r   Úior   r   r*   r,   r:   rC   rF   rL   rW   r8   r   r   ú<module>rZ      s�   ðñó Û Ý ó,ó*,ôB(ˆF�L‰Lô (ô0˜×2Ñ2ô 0ô0˜×2Ñ2ô 0ô�5˜&×-Ñ-ô ô�5˜&×-Ñ-ô ó

r   