Ë
    òT•j	  ã                   óæ   — d Z ddlZddlZej                  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j                  «      Z
d„ Zy)z
Python 'utf-32' Codec
é    Nc                 ó0   — t        j                  | |d«      S )NT)ÚcodecsÚutf_32_decode)ÚinputÚerrorss     ú'/usr/lib/python3.12/encodings/utf_32.pyÚdecoder	   
   s   € Ü×Ñ  v¨tÓ4Ð4ó    c                   ó.   — e Zd Zdd„Zdd„Zd„ Zd„ Zd„ Zy)	ÚIncrementalEncoderc                 óR   — t         j                  j                  | |«       d | _        y ©N)r   r   Ú__init__Úencoder©Úselfr   s     r   r   zIncrementalEncoder.__init__   s   € Ü×!Ñ!×*Ñ*¨4°Ô8Øˆ�r
   c                 ó   — | j                   €dt        j                  || j                  «      d   }t        j
                  dk(  rt        j                  | _         |S t        j                  | _         |S | j                  || j                  «      d   S )Nr   Úlittle)r   r   Úutf_32_encoder   ÚsysÚ	byteorderÚutf_32_le_encodeÚutf_32_be_encode)r   r   ÚfinalÚresults       r   ÚencodezIncrementalEncoder.encode   su   € Ø�<‰<ÐÜ×)Ñ)¨%°·±Ó=¸aÑ@ˆFÜ�}‰} Ò(Ü%×6Ñ6�”ð ˆMô  &×6Ñ6�”ØˆMØ�|‰|˜E 4§;¡;Ó/°Ñ2Ð2r
   c                 óP   — t         j                  j                  | «       d | _        y r   )r   r   Úresetr   ©r   s    r   r   zIncrementalEncoder.reset   s   € Ü×!Ñ!×'Ñ'¨Ô-Øˆ�r
   c                 ó"   — | j                   €dS dS )Né   r   )r   r   s    r   ÚgetstatezIncrementalEncoder.getstate    s   € ð
 —\‘\Ð)�Ð1¨qÐ1r
   c                 ó”   — |rd | _         y t        j                  dk(  rt        j                  | _         y t        j
                  | _         y ©Nr   )r   r   r   r   r   r   ©r   Ústates     r   ÚsetstatezIncrementalEncoder.setstate'   s2   € ÙØˆD�Lä�}‰} Ò(Ü%×6Ñ6�•ä%×6Ñ6�•r
   N©Ústrict)F)Ú__name__Ú
__module__Ú__qualname__r   r   r   r"   r'   © r
   r   r   r      s   „ óó3òò2ó7r
   r   c                   ó,   — e Zd Zdd„Zd„ Zd„ Zd„ Zd„ Zy)ÚIncrementalDecoderc                 óR   — t         j                  j                  | |«       d | _        y r   )r   ÚBufferedIncrementalDecoderr   Údecoderr   s     r   r   zIncrementalDecoder.__init__1   s   € Ü×)Ñ)×2Ñ2°4¸Ô@Øˆ�r
   c                 ó,  — | j                   €lt        j                  ||d|«      \  }}}|dk(  rt        j                  | _         ||fS |dk(  rt        j                  | _         ||fS |dk\  rt        d«      ‚||fS | j                  || j                  |«      S )Nr   éÿÿÿÿé   é   ú%UTF-32 stream does not start with BOM)r2   r   Úutf_32_ex_decodeÚutf_32_le_decodeÚutf_32_be_decodeÚUnicodeErrorr   )r   r   r   r   ÚoutputÚconsumedr   s          r   Ú_buffer_decodez!IncrementalDecoder._buffer_decode5   s¦   € Ø�<‰<Ðä×'Ñ'¨¨v°q¸%Ó@ñ *ˆV�X˜yà˜BŠÜ%×6Ñ6�”ð
 ˜HÐ%Ð%ð	 ˜a’Ü%×6Ñ6�”ð ˜HÐ%Ð%ð ˜Q’Ü"Ð#JÓKÐKØ˜HÐ%Ð%Ø�|‰|˜E 4§;¡;°Ó6Ð6r
   c                 óP   — t         j                  j                  | «       d | _        y r   )r   r1   r   r2   r   s    r   r   zIncrementalDecoder.resetB   s   € Ü×)Ñ)×/Ñ/°Ô5Øˆ�r
   c                 óà   — t         j                  j                  | «      d   }| j                  €|dfS t	        t
        j                  dk(  | j                  t         j                  u k7  «      }||fS )Nr   r!   Úbig)r   r1   r"   r2   Úintr   r   r:   )r   r&   Úaddstates      r   r"   zIncrementalDecoder.getstateF   sn   € ô ×1Ñ1×:Ñ:¸4Ó@ÀÑCˆð
 �<‰<ÐØ˜1�:ÐÜœŸ™¨Ñ.ØŸ™¬×(?Ñ(?Ð?ñAó Bˆà�xÐ Ð r
   c                 ól  — t         j                  j                  | |«       |d   }|dk(  r?t        j                  dk(  rt         j
                  | _        y t         j                  | _        y |dk(  r?t        j                  dk(  rt         j                  | _        y t         j
                  | _        y d | _        y )Nr5   r   rA   )r   r1   r'   r   r   r:   r9   r2   r%   s     r   r'   zIncrementalDecoder.setstateT   s�   € ä×)Ñ)×2Ñ2°4¸Ô?Ø�a‘ˆØ�AŠ:ä"Ÿ}™}°Ò5ô #×3Ñ3ˆD�Lä!'×!8Ñ!8ð �Lð �aŠZä"Ÿ}™}°Ò5ô #×3Ñ3ˆD�Lä!'×!8Ñ!8ð �Lð  ˆD�Lr
   Nr(   )r*   r+   r,   r   r>   r   r"   r'   r-   r
   r   r/   r/   0   s   „ óò7òò!ó r
   r/   c                   ó"   — e Zd Zdd„Zd„ Zdd„Zy)ÚStreamWriterc                 óT   — d | _         t        j                  j                  | ||«       y r   )r   r   rF   r   )r   Ústreamr   s      r   r   zStreamWriter.__init__d   s!   € ØˆŒÜ×Ñ×$Ñ$ T¨6°6Õ:r
   c                 óP   — t         j                  j                  | «       d | _        y r   )r   rF   r   r   r   s    r   r   zStreamWriter.reseth   s   € Ü×Ñ×!Ñ! $Ô'Øˆ�r
   c                 óì   — | j                   €Wt        j                  ||«      }t        j                  dk(  rt        j
                  | _         |S t        j                  | _         |S | j                  ||«      S r$   )r   r   r   r   r   r   r   )r   r   r   r   s       r   r   zStreamWriter.encodel   sc   € Ø�<‰<ÐÜ×)Ñ)¨%°Ó8ˆFÜ�}‰} Ò(Ü%×6Ñ6�”ð ˆMô  &×6Ñ6�”ØˆMà—<‘<  vÓ.Ð.r
   Nr(   )r*   r+   r,   r   r   r   r-   r
   r   rF   rF   c   s   „ ó;òô	/r
   rF   c                   ó   — e Zd Zd„ Zdd„Zy)ÚStreamReaderc                 óf   — t         j                  j                  | «       	 | `y # t        $ r Y y w xY wr   )r   rL   r   r	   ÚAttributeErrorr   s    r   r   zStreamReader.resety   s2   € Ü×Ñ×!Ñ! $Ô'ð	Ø‘øÜò 	Ùð	ús   ¡$ ¤	0¯0c                 óÚ   — t        j                  ||dd«      \  }}}|dk(  rt         j                  | _        ||fS |dk(  rt         j                  | _        ||fS |dk\  rt        d«      ‚||fS )Nr   Fr4   r5   r6   r7   )r   r8   r9   r	   r:   r;   )r   r   r   Úobjectr=   r   s         r   r	   zStreamReader.decode€   s…   € ä×#Ñ# E¨6°1°eÓ<ñ 	&ˆ�˜9à˜Š?Ü ×1Ñ1ˆDŒKð
 ˜Ð!Ð!ð	 ˜!Š^Ü ×1Ñ1ˆDŒKð ˜Ð!Ð!ð �qŠ[ÜÐFÓGÐGØ˜Ð!Ð!r
   Nr(   )r*   r+   r,   r   r	   r-   r
   r   rL   rL   w   s   „ òô	"r
   rL   c            	      ój   — t        j                  dt        t        t        t
        t        t        ¬«      S )Nzutf-32)Únamer   r	   ÚincrementalencoderÚincrementaldecoderÚstreamreaderÚstreamwriter)r   Ú	CodecInfor   r	   r   r/   rL   rF   r-   r
   r   ÚgetregentryrX   �   s*   € Ü×ÑØÜÜÜ-Ü-Ü!Ü!ôð r
   r(   )Ú__doc__r   r   r   r   r	   r   r1   r/   rF   rL   rX   r-   r
   r   ú<module>rZ      sp   ðñ÷ ð 
×	Ñ	€ó5ô!7˜×2Ñ2ô !7ôF1 ˜×:Ñ:ô 1 ôf/�6×&Ñ&ô /ô("�6×&Ñ&ô "ó,	r
   