§
    ~Štjà=  ã                   ó²  — U d dl Z d dlZd dlZd dlmZmZ d dlmZ d dlm	Z	m
Z
mZmZmZ ej        dk    rd dlmZ nd dlmZ eeedd	f         Z	 	 d dlZn# e$ r d dlZY nw xY wd
Zn# e$ r dZY nw xY w	 ej        dk    rd dlmZ nd dlmZ d
Zn# e$ r dZY nw xY wdZd ZdZ G d„ de¦  «        Z G d„ de¦  «        Z  G d„ de¦  «        Z! G d„ ded¬¦  «        Z" G d„ d¦  «        Z# e#e¦  «        Z$e#e%d<   de!ddfd„Z&	 	 d,de'dz  d e(de)fd!„Z* G d"„ d#e¦  «        Z+ G d$„ d%¦  «        Z, G d&„ d'e+¦  «        Z- G d(„ d)e+¦  «        Z. G d*„ d+e+¦  «        Z/dS )-é    N)ÚABCÚabstractmethod)ÚExecutor)ÚAnyÚFinalÚProtocolÚ	TypedDictÚcast)é   é   )ÚBuffer)ÚUnionzmemoryview[int]zmemoryview[bytes]TF)r   é   )ÚZstdDecompressori   éÿÿÿÿc                   ó0   — e Zd Zdedefd„Zddedefd„ZdS )	ÚZLibCompressObjProtocolÚdataÚreturnc                 ó   — d S ©N© ©Úselfr   s     úW/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/aiohttp/compression_utils.pyÚcompressz ZLibCompressObjProtocol.compress,   ó   € € € ó    .Úmodec                ó   — d S r   r   ©r   r   s     r   ÚflushzZLibCompressObjProtocol.flush-   r   r   N©.)Ú__name__Ú
__module__Ú__qualname__r   Úbytesr   Úintr"   r   r   r   r   r   +   s?   € € € € € Ø2˜VÐ2¨Ð2Ð2Ð2Ð2Ø5Ð5˜#Ð5¨5Ð5Ð5Ð5Ð5Ð5Ð5r   r   c                   óŠ   — e Zd Zddededefd„Zddedefd„Zede	fd„¦   «         Z
edefd	„¦   «         Zedefd
„¦   «         ZdS )ÚZLibDecompressObjProtocol.r   Ú
max_lengthr   c                 ó   — d S r   r   ©r   r   r+   s      r   Ú
decompressz$ZLibDecompressObjProtocol.decompress1   r   r   Úlengthc                ó   — d S r   r   ©r   r/   s     r   r"   zZLibDecompressObjProtocol.flush2   r   r   c                 ó   — d S r   r   ©r   s    r   ÚeofzZLibDecompressObjProtocol.eof4   s   € Ø˜3r   c                 ó   — d S r   r   r3   s    r   Úunconsumed_tailz)ZLibDecompressObjProtocol.unconsumed_tail7   s   € Ø(+¨r   c                 ó   — d S r   r   r3   s    r   Úunused_dataz%ZLibDecompressObjProtocol.unused_data:   s   € Ø$' Cr   Nr#   )r$   r%   r&   r   r(   r'   r.   r"   ÚpropertyÚboolr4   r6   r8   r   r   r   r*   r*   0   s˜   € € € € € ØKÐK˜vÐK°3ÐKÀÐKÐKÐKÐKØ7Ð7˜CÐ7¨UÐ7Ð7Ð7Ð7àØ�TÐÐÐñ „XØàØ+ Ð+Ð+Ð+ñ „XØ+àØ'˜UÐ'Ð'Ð'ñ „XØ'Ð'Ð'r   r*   c                   óÊ   — e Zd ZU eed<   eed<   eed<   eed<   eed<   	 	 	 	 	 	 ddeded	ed
edededz  defd„Z	 dd	ededefd„Z		 dded	edede
fd„Z	 dd	ededede
fd„ZdS )ÚZLibBackendProtocolÚ	MAX_WBITSÚZ_FULL_FLUSHÚZ_SYNC_FLUSHÚZ_BEST_SPEEDÚZ_FINISH.ÚlevelÚmethodÚwbitsÚmemLevelÚstrategyÚzdictNr   c                 ó   — d S r   r   )r   rB   rC   rD   rE   rF   rG   s          r   ÚcompressobjzZLibBackendProtocol.compressobjE   s	   € ð #& #r   c                 ó   — d S r   r   )r   rD   rG   s      r   Údecompressobjz!ZLibBackendProtocol.decompressobjN   s   € à$' Cr   r   c                ó   — d S r   r   )r   r   rB   rD   s       r   r   zZLibBackendProtocol.compressR   ó   € à�r   Úbufsizec                ó   — d S r   r   )r   r   rD   rN   s       r   r.   zZLibBackendProtocol.decompressU   rM   r   )......)..)r$   r%   r&   r(   Ú__annotations__r   r   rI   r*   rK   r'   r   r.   r   r   r   r<   r<   >   sv  € € € € € € Ø€N€N�NØÐÐÑØÐÐÑØÐÐÑØ€M€M�Mð ØØØØØ"ð&ð &àð&ð ð&ð ð	&ð
 ð&ð ð&ð ˜‰}ð&ð 
!ð&ð &ð &ð &ð 14ð(ð (Øð(Ø'-ð(à	"ð(ð (ð (ð (ð
 ?Bðð Ø&)ðØ8;ðØðà	ðð ð ð ð ADðð Ø&)ðØ:=ðØðà	ðð ð ð ð ð r   r<   c                   ó.   — e Zd ZU eed<   eed<   eed<   dS )ÚCompressObjArgsrD   rF   rB   N)r$   r%   r&   r(   rP   r   r   r   rR   rR   Z   s+   € € € € € € Ø€J€J�JØ€M€M�MØ€J€J�J€J€Jr   rR   )Útotalc                   ó*  — e Zd Zdefd„Zedefd„¦   «         Zedefd„¦   «         Z	edefd„¦   «         Z
edefd„¦   «         Zedefd„¦   «         Zedefd	„¦   «         Zd
ededefd„Zd
ededefd„Zded
ededefd„Zded
ededefd„Zdedefd„ZdS )ÚZLibBackendWrapperÚ_zlib_backendc                 ó   — || _         d S r   )rV   )r   rV   s     r   Ú__init__zZLibBackendWrapper.__init__a   s   € Ø2?ˆÔÐÐr   r   c                 ó.   — t          | j        dd¦  «        S )Nr$   Ú	undefined©ÚgetattrrV   r3   s    r   ÚnamezZLibBackendWrapper.named   s   € å�tÔ)¨:°{ÑCÔCÐCr   c                 ó   — | j         j        S r   )rV   r=   r3   s    r   r=   zZLibBackendWrapper.MAX_WBITSh   s   € àÔ!Ô+Ð+r   c                 ó   — | j         j        S r   )rV   r>   r3   s    r   r>   zZLibBackendWrapper.Z_FULL_FLUSHl   ó   € àÔ!Ô.Ð.r   c                 ó   — | j         j        S r   )rV   r?   r3   s    r   r?   zZLibBackendWrapper.Z_SYNC_FLUSHp   r`   r   c                 ó   — | j         j        S r   )rV   r@   r3   s    r   r@   zZLibBackendWrapper.Z_BEST_SPEEDt   r`   r   c                 ó   — | j         j        S r   )rV   rA   r3   s    r   rA   zZLibBackendWrapper.Z_FINISHx   s   € àÔ!Ô*Ð*r   ÚargsÚkwargsc                 ó&   —  | j         j        |i |¤ŽS r   )rV   rI   ©r   rd   re   s      r   rI   zZLibBackendWrapper.compressobj|   s   € Ø-ˆtÔ!Ô-¨tÐ>°vÐ>Ð>Ð>r   c                 ó&   —  | j         j        |i |¤ŽS r   )rV   rK   rg   s      r   rK   z ZLibBackendWrapper.decompressobj   s   € Ø/ˆtÔ!Ô/°Ð@¸Ð@Ð@Ð@r   r   c                 ó.   —  | j         j        |g|¢R i |¤ŽS r   )rV   r   ©r   r   rd   re   s       r   r   zZLibBackendWrapper.compress‚   s(   € Ø*ˆtÔ!Ô*¨4ÐA°$ÐAÐAÐA¸&ÐAÐAÐAr   c                 ó.   —  | j         j        |g|¢R i |¤ŽS r   )rV   r.   rj   s       r   r.   zZLibBackendWrapper.decompress…   s(   € Ø,ˆtÔ!Ô,¨TÐC°DÐCÐCÐC¸FÐCÐCÐCr   Úattrnamec                 ó,   — t          | j        |¦  «        S r   r[   )r   rl   s     r   Ú__getattr__zZLibBackendWrapper.__getattr__‰   s   € Ý�tÔ)¨8Ñ4Ô4Ð4r   N)r$   r%   r&   r<   rX   r9   Ústrr]   r(   r=   r>   r?   r@   rA   r   r   rI   r*   rK   r   r'   r   r.   rn   r   r   r   rU   rU   `   s  € € € € € ð@Ð&9ð @ð @ð @ð @ð ðD�cð Dð Dð Dñ „XðDð ð,˜3ð ,ð ,ð ,ñ „Xð,ð ð/˜cð /ð /ð /ñ „Xð/ð ð/˜cð /ð /ð /ñ „Xð/ð ð/˜cð /ð /ð /ñ „Xð/ð ð+˜#ð +ð +ð +ñ „Xð+ð? ð ?°ð ?Ð8Oð ?ð ?ð ?ð ?ðA 3ð A°#ð AÐ:Sð Að Að Að AðB˜Vð B¨Cð B¸3ð BÀ5ð Bð Bð Bð BðD˜vð D¨cð D¸Sð DÀUð Dð Dð Dð Dð5 Cð 5¨Cð 5ð 5ð 5ð 5ð 5ð 5r   rU   ÚZLibBackendÚnew_zlib_backendr   c                 ó   — | t           _        d S r   )rp   rV   )rq   s    r   Úset_zlib_backendrs   �   s   € Ø 0…KÔÐÐr   ÚencodingÚsuppress_deflate_headerc                 ób   — | dk    rdt           j        z   S |rt           j         nt           j        S )NÚgzipé   )rp   r=   )rt   ru   s     r   Úencoding_to_modery   ”   s6   € ð �6ÒÐØ•KÔ)Ñ)Ð)à%<ÐW�KÔ!Ð!Ð!Å+ÔBWÐWr   c                   óœ   — e Zd Zdefdedz  dedz  fd„Zeefde	dede
fd„¦   «         Zefde	dede
fd	„Zeedefd
„¦   «         ¦   «         ZdS )ÚDecompressionBaseHandlerNÚexecutorÚmax_sync_chunk_sizec                 ó"   — || _         || _        dS )z&Base class for decompression handlers.N)Ú	_executorÚ_max_sync_chunk_size)r   r|   r}   s      r   rX   z!DecompressionBaseHandler.__init__Ÿ   s   € ð "ˆŒØ$7ˆÔ!Ð!Ð!r   r   r+   r   c                 ó   — dS ©úDecompress the given data.Nr   r-   s      r   Údecompress_syncz(DecompressionBaseHandler.decompress_sync¨   r   r   c              ƒ   óâ   K  — | j         �Qt          |¦  «        | j         k    r9t          j        ¦   «                              | j        | j        ||¦  «        ƒ d{V —†S |                      ||¦  «        S r‚   )r€   ÚlenÚasyncioÚget_event_loopÚrun_in_executorr   r„   r-   s      r   r.   z#DecompressionBaseHandler.decompress®   sŠ   è è € ð
 Ô%Ð1Ý�D‘	”	˜DÔ5Ò5Ð5å Ô/Ñ1Ô1×AÒAØ” Ô 4°d¸Jñô ð ð ð ð ð ð ð ð ×#Ò# D¨*Ñ5Ô5Ð5r   c                 ó   — dS )z7Return True if more output is available by passing b"".Nr   r3   s    r   Údata_availablez'DecompressionBaseHandler.data_available»   r   r   )r$   r%   r&   ÚMAX_SYNC_CHUNK_SIZEr   r(   rX   r   ÚZLIB_MAX_LENGTH_UNLIMITEDr   r'   r„   r.   r9   r:   r‹   r   r   r   r{   r{   ž   sþ   € € € € € ð %)Ø*=ð8ð 8à˜T‘/ð8ð ! 4™Zð8ð 8ð 8ð 8ð à.Gð)ð )Øð)Ø(+ð)à	ð)ð )ð )ñ „^ð)ð /Hð6ð 6Øð6Ø(+ð6à	ð6ð 6ð 6ð 6ð ØðF ð Fð Fð Fñ „^ñ „XðFð Fð Fr   r{   c                   óž   — e Zd Zddddddefdedz  dededz  dedz  dedz  dedz  d	edz  fd
„Zde	de
fd„Zde	de
fd„Zddedz  de
fd„ZdS )ÚZLibCompressorNFrt   ru   rB   rD   rF   r|   r}   c                 óò   — || _         || _        |€t          ||¦  «        n|| _        t	          t
          j        ¦  «        | _        i }| j        |d<   |�||d<   |�||d<    | j        j        di |¤Ž| _        d S )NrD   rF   rB   r   )	r   r€   ry   Ú_moderU   rp   rV   rI   Ú_compressor)	r   rt   ru   rB   rD   rF   r|   r}   re   s	            r   rX   zZLibCompressor.__init__Â   sŸ   € ð "ˆŒØ$7ˆÔ!ð ˆ}õ ˜XÐ'>Ñ?Ô?Ð?àð 	Œ
õ
 %7µ{Ô7PÑ$QÔ$QˆÔà"$ˆØœ*ˆˆw‰ØÐØ!)ˆF�:ÑØÐØ#ˆF�7‰OØ9˜4Ô-Ô9ÐCÐC¸FÐCÐCˆÔÐÐr   r   r   c                 ó6   — | j                              |¦  «        S r   )r’   r   r   s     r   Úcompress_synczZLibCompressor.compress_syncÝ   s   € ØÔ×(Ò(¨Ñ.Ô.Ð.r   c              ƒ   óð   K  — | j         duot          |¦  «        | j         k    }|r=t          j        ¦   «                              | j        | j        j        |¦  «        ƒ d{V —†S |                      |¦  «        S )a  Compress the data and returned the compressed bytes.

        Note that flush() must be called after the last call to compress()

        If the data size is large than the max_sync_chunk_size, the compression
        will be done in the executor. Otherwise, the compression will be done
        in the event loop.

        **WARNING: This method is NOT cancellation-safe when used with flush().**
        If this operation is cancelled, the compressor state may be corrupted.
        The connection MUST be closed after cancellation to avoid data corruption
        in subsequent compress operations.

        For cancellation-safe compression (e.g., WebSocket), the caller MUST wrap
        compress() + flush() + send operations in a shield and lock to ensure atomicity.
        N)	r€   r†   r‡   Úget_running_loopr‰   r   r’   r   r”   )r   r   Úshould_use_executors      r   r   zZLibCompressor.compressà   sœ   è è € ð& Ô%¨TÐ1ð 6Ý�D‘	”	˜DÔ5Ò5ð 	ð ð 	Ý Ô1Ñ3Ô3×CÒCØ” Ô 0Ô 9¸4ñô ð ð ð ð ð ð ð ð ×!Ò! $Ñ'Ô'Ð'r   r   c                 óR   — | j                              |�|n| j        j        ¦  «        S )a	  Flush the compressor synchronously.

        **WARNING: This method is NOT cancellation-safe when called after compress().**
        The flush() operation accesses shared compressor state. If compress() was
        cancelled, calling flush() may result in corrupted data. The connection MUST
        be closed after compress() cancellation.

        For cancellation-safe compression (e.g., WebSocket), the caller MUST wrap
        compress() + flush() + send operations in a shield and lock to ensure atomicity.
        )r’   r"   rV   rA   r!   s     r   r"   zZLibCompressor.flushü   s1   € ð Ô×%Ò%ØÐ$ˆDˆD¨$Ô*<Ô*Eñ
ô 
ð 	
r   r   )r$   r%   r&   rŒ   ro   r:   r(   r   rX   r   r'   r”   r   r"   r   r   r   r�   r�   Á   s  € € € € € ð  $Ø(-Ø Ø Ø#Ø$(Ø*=ðDð Dà˜‘*ðDð "&ðDð �T‰zð	Dð
 �T‰zðDð ˜‘*ðDð ˜T‘/ðDð ! 4™ZðDð Dð Dð Dð6/ &ð /¨Uð /ð /ð /ð /ð( 6ð (¨eð (ð (ð (ð (ð8
ð 
˜# ™*ð 
°ð 
ð 
ð 
ð 
ð 
ð 
r   r�   c            
       ó®   ‡ — e Zd Zdddefdedz  dededz  dedz  fˆ fd„Ze	fde
d	ed
efd„Zdded
efd„Zed
efd„¦   «         Zed
efd„¦   «         Zˆ xZS )ÚZLibDecompressorNFrt   ru   r|   r}   c                 ó  •— t          ¦   «                              ||¬¦  «         t          ||¦  «        | _        t	          t
          j        ¦  «        | _        | j                             | j        ¬¦  «        | _        d| _	        d | _
        d S )N©r|   r}   ©rD   F)ÚsuperrX   ry   r‘   rU   rp   rV   rK   Ú_decompressorÚ_last_emptyÚ_pending_unused_data)r   rt   ru   r|   r}   Ú	__class__s        €r   rX   zZLibDecompressor.__init__  s|   ø€ õ 	‰Œ×Ò (Ð@SÐÑTÔTÐTÝ% hÐ0GÑHÔHˆŒ
Ý$6µ{Ô7PÑ$QÔ$QˆÔØ!Ô/×=Ò=ÀDÄJÐ=ÑOÔOˆÔØ ˆÔØ26ˆÔ!Ð!Ð!r   r   r+   r   c                 ó°  — | j         �| j         t          |¦  «        z   }d | _         | j                             | j        j        |z   |¦  «        }|dk    | _        | j        j        r«| j        j        rŸ| j        j        }| j         	                    | j
        ¬¦  «        | _        |t          k    r |t          |¦  «        z  }|dk    r|| _         nC| j                             ||¦  «        }|dk    | _        ||z  }| j        j        r| j        j        °Ÿ| j        j        r:| j
        | j        j        k    r%| j         	                    | j
        ¬¦  «        | _        |S )Nr   r�   r   )r¡   r'   rŸ   r.   r6   r    r4   r8   rV   rK   r‘   r�   r†   r=   )r   r   r+   ÚresultÚunusedÚchunks         r   r„   z ZLibDecompressor.decompress_sync  sd  € ð Ô$Ð0ØÔ,­u°T©{¬{Ñ:ˆDØ(,ˆDÔ%ØÔ#×.Ò.ØÔÔ.°Ñ5°zñ
ô 
ˆð " Sš=ˆÔð
 Ô Ô$ð 
	¨Ô);Ô)Gð 
	ØÔ'Ô3ˆFØ!%Ô!3×!AÒ!AÈÌ
Ð!AÑ!SÔ!SˆDÔØÕ6Ò6Ð6Ø�c &™kœkÑ)�
Ø ’?�?Ø06�DÔ-ØØÔ&×1Ò1°&¸*ÑEÔEˆEØ$¨š|ˆDÔØ�e‰OˆFð Ô Ô$ð 
	¨Ô);Ô)Gð 
	ð  ÔÔ!ð 	T d¤j°4Ô3EÔ3OÒ&OÐ&OØ!%Ô!3×!AÒ!AÈÌ
Ð!AÑ!SÔ!SˆDÔàˆr   r   r/   c                 ót   — |dk    r| j                              |¦  «        n| j                              ¦   «         S ©Nr   )rŸ   r"   r1   s     r   r"   zZLibDecompressor.flush?  s=   € ð ˜Šzˆzð Ô×$Ò$ VÑ,Ô,Ð,àÔ#×)Ò)Ñ+Ô+ð	
r   c                 óV   — t          | j        j        ¦  «        p| j         p| j        d uS r   )r:   rŸ   r6   r    r¡   r3   s    r   r‹   zZLibDecompressor.data_availableF  s8   € õ �Ô#Ô3Ñ4Ô4ð 5ØÔ#Ð#ð5àÔ(°Ð4ð	
r   c                 ó   — | j         j        S r   )rŸ   r4   r3   s    r   r4   zZLibDecompressor.eofN  s   € àÔ!Ô%Ð%r   )r   )r$   r%   r&   rŒ   ro   r:   r   r(   rX   r�   r   r'   r„   r"   r9   r‹   r4   Ú__classcell__©r¢   s   @r   rš   rš     s/  ø€ € € € € ð  $Ø(-Ø$(Ø*=ð7ð 7à˜‘*ð7ð "&ð7ð ˜T‘/ð	7ð
 ! 4™Zð7ð 7ð 7ð 7ð 7ð 7ð /Hð"ð "Øð"Ø(+ð"à	ð"ð "ð "ð "ðH
ð 
˜Cð 
¨ð 
ð 
ð 
ð 
ð ð
 ð 
ð 
ð 
ñ „Xð
ð ð&�Tð &ð &ð &ñ „Xð&ð &ð &ð &ð &r   rš   c                   ó~   ‡ — e Zd Zdefdedz  dedz  ddfˆ fd„Zefdedede	fd„Z
de	fd	„Zedefd
„¦   «         Zˆ xZS )ÚBrotliDecompressorNr|   r}   r   c                 ó¸   •— t           st          d¦  «        ‚t          j        ¦   «         | _        d| _        t          ¦   «                              ||¬¦  «         dS )z)Decompress data using the Brotli library.zIThe brotli decompression is not available. Please install `Brotli` moduleFrœ   N)Ú
HAS_BROTLIÚRuntimeErrorÚbrotliÚDecompressorÚ_objr    rž   rX   ©r   r|   r}   r¢   s      €r   rX   zBrotliDecompressor.__init__W  sb   ø€ õ ð 	Ýð1ñô ð õ Ô'Ñ)Ô)ˆŒ	Ø ˆÔÝ‰Œ×Ò (Ð@SÐÑTÔTÐTÐTÐTr   r   r+   c                 óä  — t          | j        d¦  «        rh|t          k    r.t          t          | j                             |¦  «        ¦  «        }n–t          t          | j                             ||¦  «        ¦  «        }ng|t          k    r.t          t          | j                             |¦  «        ¦  «        }n.t          t          | j                             ||¦  «        ¦  «        }|dk    | _        |S )rƒ   r.   r   )Úhasattrr´   r�   r
   r'   r.   Úprocessr    )r   r   r+   r¤   s       r   r„   z"BrotliDecompressor.decompress_syncf  sÈ   € õ �4”9˜lÑ+Ô+ð 		JØÕ6Ò6Ð6Ý�e T¤Y×%9Ò%9¸$Ñ%?Ô%?Ñ@Ô@��å�e T¤Y×%9Ò%9¸$À
Ñ%KÔ%KÑLÔL��àÕ6Ò6Ð6Ý�e T¤Y×%6Ò%6°tÑ%<Ô%<Ñ=Ô=��å�e T¤Y×%6Ò%6°t¸ZÑ%HÔ%HÑIÔI�à! Sš=ˆÔØˆr   c                 óˆ   — t          | j        d¦  «        r,t          t          | j                             ¦   «         ¦  «        S dS )zFlush the decompressor.r"   r   )r·   r´   r
   r'   r"   r3   s    r   r"   zBrotliDecompressor.flushx  s7   € å�4”9˜gÑ&Ô&ð 	2Ý�˜tœyŸšÑ0Ô0Ñ1Ô1Ð1Øˆsr   c                 óF   — | j                              ¦   «          o| j         S r   )r´   Úis_finishedr    r3   s    r   r‹   z!BrotliDecompressor.data_available~  s$   € à”9×(Ò(Ñ*Ô*Ð*ÐC°4Ô3CÐ/CÐCr   ©r$   r%   r&   rŒ   r   r(   rX   r�   r   r'   r„   r"   r9   r:   r‹   r«   r¬   s   @r   r®   r®   S  sú   ø€ € € € € ð %)Ø*=ðUð Uà˜T‘/ðUð ! 4™ZðUð 
ð	Uð Uð Uð Uð Uð Uð  /Hðð ØðØ(+ðà	ðð ð ð ð$�uð ð ð ð ð ðD ð Dð Dð Dñ „XðDð Dð Dð Dð Dr   r®   c                   ó~   ‡ — e Zd Zdefdedz  dedz  ddfˆ fd„Zefdedede	fd„Z
de	fd	„Zedefd
„¦   «         Zˆ xZS )ÚZSTDDecompressorNr|   r}   r   c                 ó®   •— t           st          d¦  «        ‚t          ¦   «         | _        d | _        t          ¦   «                              ||¬¦  «         d S )NzOThe zstd decompression is not available. Please install `backports.zstd` modulerœ   )ÚHAS_ZSTDr±   r   r´   r¡   rž   rX   rµ   s      €r   rX   zZSTDDecompressor.__init__„  s_   ø€ õ
 ð 	Ýð9ñô ð õ %Ñ&Ô&ˆŒ	Ø26ˆÔ!Ý‰Œ×Ò (Ð@SÐÑTÔTÐTÐTÐTr   r   r+   c                 ó  — |t           k    rt          n|}| j        �| j        |z   }d | _        | j                             ||¦  «        }| j        j        rŒ| j        j        r€| j        j        }t          ¦   «         | _        |t          k    r |t          |¦  «        z  }|dk    r|| _        n6|| j                             ||¦  «        z  }| j        j        r| j        j        °€| j        j        rt          ¦   «         | _        |S r¨   )	r�   ÚZSTD_MAX_LENGTH_UNLIMITEDr¡   r´   r.   r4   r8   r   r†   )r   r   r+   Úzstd_max_lengthr¤   r8   s         r   r„   z ZSTDDecompressor.decompress_sync’  s  € ð Õ6Ò6Ð6õ &Ð%àð 	ð
 Ô$Ð0ØÔ,¨tÑ3ˆDØ(,ˆDÔ%Ø”×%Ò% d¨OÑ<Ô<ˆð ŒiŒmð 	I ¤	Ô 5ð 	IØœ)Ô/ˆKÝ(Ñ*Ô*ˆDŒIØÕ";Ò;Ð;Ø¥3 v¡;¤;Ñ.�Ø" aÒ'Ð'Ø0;�DÔ-ØØ�d”i×*Ò*¨;¸ÑHÔHÑHˆFð ŒiŒmð 	I ¤	Ô 5ð 	Ið Œ9Œ=ð 	+Ý(Ñ*Ô*ˆDŒIàˆr   c                 ó   — dS )Nr   r   r3   s    r   r"   zZSTDDecompressor.flush¸  s   € Øˆsr   c                 óH   — | j         j         o| j         j         p| j        d uS r   )r´   Úneeds_inputr4   r¡   r3   s    r   r‹   zZSTDDecompressor.data_available»  s0   € ð ”	Ô%Ð%Ð;¨d¬i¬mÐ*;ð3àÔ&¨dÐ2ð	3r   r¼   r¬   s   @r   r¾   r¾   ƒ  sò   ø€ € € € € ð %)Ø*=ðUð Uà˜T‘/ðUð ! 4™ZðUð 
ð	Uð Uð Uð Uð Uð Uð /Hð$ð $Øð$Ø(+ð$à	ð$ð $ð $ð $ðL�uð ð ð ð ð ð3 ð 3ð 3ð 3ñ „Xð3ð 3ð 3ð 3ð 3r   r¾   )NF)0r‡   ÚsysÚzlibÚabcr   r   Úconcurrent.futuresr   Útypingr   r   r   r	   r
   Úversion_infoÚcollections.abcr   r   r'   Ú	bytearrayÚ
brotlicffir²   ÚImportErrorr°   Úcompression.zstdr   Úbackports.zstdrÀ   rŒ   r�   rÂ   r   r*   r<   rR   rU   rp   rP   rs   ro   r:   r(   ry   r{   r�   rš   r®   r¾   r   r   r   ú<module>rÓ      s
  ðØ €€€€Ø 
€
€
€
Ø €€€Ø #Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8àÔ�wÒÐØ&Ð&Ð&Ð&Ð&Ð&Ð&àÐÐÐÐÐà�5˜)Ð%6Ð8KÐKÔL€FððØ#Ð#Ð#Ð#Ð#øØð ð ð Øˆˆˆˆˆðøøøð €J€JøØð ð ð Ø€J€J€JðøøøðØ
Ô˜7Ò"Ð"Ø5Ð5Ð5Ð5Ð5Ð5Ð5à3Ð3Ð3Ð3Ð3Ð3à€H€HøØð ð ð Ø€H€H€Hðøøøð Ð ð Ð ØÐ ð6ð 6ð 6ð 6ð 6˜hñ 6ô 6ð 6ð
(ð (ð (ð (ð ( ñ (ô (ð (ðð ð ð ð ˜(ñ ô ð ð8ð ð ð ð �i uð ñ ô ð ð*5ð *5ð *5ð *5ð *5ñ *5ô *5ð *5ðZ #5Ð"4°TÑ":Ô":€ÐÐ :Ð :Ñ :ð1Ð':ð 1¸tð 1ð 1ð 1ð 1ð
  Ø$)ðXð XØ�D‰jðXà!ðXð 	ðXð Xð Xð Xð Fð  Fð  Fð  Fð  F˜sñ  Fô  Fð  FðFH
ð H
ð H
ð H
ð H
ñ H
ô H
ð H
ðVD&ð D&ð D&ð D&ð D&Ð/ñ D&ô D&ð D&ðN-Dð -Dð -Dð -Dð -DÐ1ñ -Dô -Dð -Dð`<3ð <3ð <3ð <3ð <3Ð/ñ <3ô <3ð <3ð <3ð <3sB   ÁA ÁA' Á	A!ÁA' Á A!Á!A' Á'A1Á0A1Á5B ÂBÂB