Ë
    Eü´jà=  ã                   ór  — 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d
Z	 ej                  dk\  rd dlmZ nd dlmZ d
Z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/y# e$ r d dlZY ŒÆw xY w# e$ r dZY ŒÑw xY w# e$ r dZY Œ¿w xY w)-é    N)ÚABCÚabstractmethod)ÚExecutor)ÚAnyÚFinalÚProtocolÚ	TypedDictÚcast)é   é   )ÚBuffer)ÚUnionzmemoryview[int]zmemoryview[bytes]TF)r   é   )ÚZstdDecompressori   éÿÿÿÿc                   ó.   — e Zd Zdedefd„Zddedefd„Zy)ÚZLibCompressObjProtocolÚdataÚreturnc                  ó   — y ©N© ©Úselfr   s     úW/root/workspace/ytshorts/venv/lib/python3.12/site-packages/aiohttp/compression_utils.pyÚcompressz ZLibCompressObjProtocol.compress,   ó   � ó    Úmodec                 ó   — y 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Ù5˜#Ð5¨5Ô5r   r   c                   óv   — 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y
)ÚZLibDecompressObjProtocolr   Ú
max_lengthr   c                  ó   — y r   r   ©r   r   r+   s      r   Ú
decompressz$ZLibDecompressObjProtocol.decompress1   r   r   Úlengthc                 ó   — y r   r   ©r   r/   s     r   r"   zZLibDecompressObjProtocol.flush2   r   r   c                  ó   — y r   r   ©r   s    r   ÚeofzZLibDecompressObjProtocol.eof4   s   € Ør   c                  ó   — y r   r   r3   s    r   Úunconsumed_tailz)ZLibDecompressObjProtocol.unconsumed_tail7   s   € Ø(+r   c                  ó   — y r   r   r3   s    r   Úunused_dataz%ZLibDecompressObjProtocol.unused_data:   s   € Ø$'r   Nr#   )r$   r%   r&   r   r(   r'   r.   r"   ÚpropertyÚboolr4   r6   r8   r   r   r   r*   r*   0   sZ   „ ÙK˜vÐK°3ÐKÀÓKÙ7˜CÐ7¨UÓ7àØ�TÒó ØàØ+ Ò+ó Ø+àØ'˜UÒ'ó Ù'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y)ÚZLibBackendProtocolÚ	MAX_WBITSÚZ_FULL_FLUSHÚZ_SYNC_FLUSHÚZ_BEST_SPEEDÚZ_FINISHÚlevelÚmethodÚwbitsÚmemLevelÚstrategyÚzdictNr   c                  ó   — y r   r   )r   rB   rC   rD   rE   rF   rG   s          r   ÚcompressobjzZLibBackendProtocol.compressobjE   s   € ð #&r   c                  ó   — y r   r   )r   rD   rG   s      r   Údecompressobjz!ZLibBackendProtocol.decompressobjN   s   € à$'r   r   c                 ó   — y r   r   )r   r   rB   rD   s       r   r   zZLibBackendProtocol.compressR   ó   € àr   Úbufsizec                 ó   — y 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<   >   sø   … ØƒNØÓØÓØÓØƒMð ØØØØØ"ñ&àð&ð ð&ð ð	&ð
 ð&ð ð&ð ˜‰}ð&ð 
!ó&ð 14ñ(Øð(Ø'-ð(à	"ó(ð
 ?BñØ&)ðØ8;ðØðà	óð ADñØ&)ðØ:=ðØðà	ôr   r<   c                   ó,   — e Zd ZU eed<   eed<   eed<   y)ÚCompressObjArgsrD   rF   rB   N)r$   r%   r&   r(   rP   r   r   r   rR   rR   Z   s   … ØƒJØƒMØ„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y)ÚZLibBackendWrapperÚ_zlib_backendc                 ó   — || _         y r   )rV   )r   rV   s     r   Ú__init__zZLibBackendWrapper.__init__a   s
   € Ø2?ˆÕr   r   c                 ó0   — t        | j                  dd«      S )Nr$   Ú	undefined©ÚgetattrrV   r3   s    r   ÚnamezZLibBackendWrapper.named   s   € ä�t×)Ñ)¨:°{Ó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                 óB   —  | j                   j                  |g|¢­i |¤ŽS r   )rV   r   ©r   r   rd   re   s       r   r   zZLibBackendWrapper.compress‚   s%   € Ø*ˆt×!Ñ!×*Ñ*¨4ÐA°$ÒA¸&ÑAÐAr   c                 óB   —  | j                   j                  |g|¢­i |¤ŽS r   )rV   r.   rj   s       r   r.   zZLibBackendWrapper.decompress…   s%   € Ø,ˆt×!Ñ!×,Ñ,¨TÐC°DÒC¸FÑCÐCr   Úattrnamec                 ó.   — t        | j                  |«      S r   r[   )r   rl   s     r   Ú__getattr__zZLibBackendWrapper.__getattr__‰   s   € Ü�t×)Ñ)¨8Ó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   `   sO  „ ð@Ð&9ó @ð ðD�cò Dó ðDð ð,˜3ò ,ó ð,ð ð/˜cò /ó ð/ð ð/˜cò /ó ð/ð ð/˜cò /ó ð/ð ð+˜#ò +ó ð+ð? ð ?°ð ?Ð8Oó ?ðA 3ð A°#ð AÐ:Só AðB˜Vð B¨Cð B¸3ð BÀ5ó BðD˜vð D¨cð D¸Sð DÀUó Dð5 Cð 5¨Cô 5r   rU   ÚZLibBackendÚnew_zlib_backendr   c                 ó   — | t         _        y r   )rp   rV   )rq   s    r   Úset_zlib_backendrs   �   s
   € Ø 0„KÕr   ÚencodingÚsuppress_deflate_headerc                 óx   — | dk(  rdt         j                  z   S |rt         j                   S t         j                  S )NÚgzipé   )rp   r=   )rt   ru   s     r   Úencoding_to_modery   ”   s9   € ð �6ÒØ”K×)Ñ)Ñ)Ð)á%<ŒK×!Ñ!Ð!ÐWÄ+×BWÑ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y)ÚDecompressionBaseHandlerNÚexecutorÚmax_sync_chunk_sizec                 ó    — || _         || _        y)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                  ó   — y©úDecompress the given data.Nr   r-   s      r   Údecompress_syncz(DecompressionBaseHandler.decompress_sync¨   r   r   c              ƒ   óþ   K  — | j                   �Zt        |«      | j                   kD  rBt        j                  «       j	                  | j
                  | j                  ||«      ƒ d{  –—† S | j                  ||«      S 7 Œ­wr‚   )r€   ÚlenÚasyncioÚget_event_loopÚrun_in_executorr   r„   r-   s      r   r.   z#DecompressionBaseHandler.decompress®   st   è ø€ ð
 ×%Ñ%Ð1Ü�D“	˜D×5Ñ5Ò5ä ×/Ñ/Ó1×AÑAØ—‘ × 4Ñ 4°d¸Jó÷ ð ð ×#Ñ# D¨*Ó5Ð5ðús   ‚A"A=Á$A;Á%A=c                  ó   — y)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à˜T‘/ð8ð ! 4™Zó8ð à.Gñ)Øð)Ø(+ð)à	ò)ó ð)ð /Hñ6Øð6Ø(+ð6à	ó6ð Øð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y)ÚZLibCompressorNFrt   ru   rB   rD   rF   r|   r}   c                 ó  — || _         || _        |€t        ||«      n|| _        t	        t
        j                  «      | _        i }| j                  |d<   |�||d<   |�||d<    | j                  j                  di |¤Ž| _        y )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Ñ7PÓ$QˆÔà"$ˆØŸ*™*ˆˆw‰ØÐØ!)ˆF�:ÑØÐØ#ˆF�7‰OØ9˜4×-Ñ-×9Ñ9ÑC¸FÑCˆÕr   r   r   c                 ó8   — | j                   j                  |«      S r   )r’   r   r   s     r   Úcompress_synczZLibCompressor.compress_syncÝ   s   € Ø×Ñ×(Ñ(¨Ó.Ð.r   c              ƒ   ó  K  — | j                   duxr t        |«      | j                   kD  }|rKt        j                  «       j	                  | j
                  | j                  j                  |«      ƒ d{  –—† S | j                  |«      S 7 Œ­w)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Ñ5ð 	ñ Ü ×1Ñ1Ó3×CÑCØ—‘ × 0Ñ 0× 9Ñ 9¸4ó÷ ð ð ×!Ñ! $Ó'Ð'ðús   ‚A1BÁ3B	Á4Br   c                 óp   — | j                   j                  |�|«      S | 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ü   s>   € ð ×Ñ×%Ñ%ØÐ$ˆDó
ð 	
Ø*.×*<Ñ*<×*EÑ*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ð �T‰zð	Dð
 �T‰zðDð ˜‘*ðDð ˜T‘/ðDð ! 4™Zó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                  | j                  ¬«      | _        d| _	        d | _
        y )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__  sj   ø€ ô 	‰Ñ (Ð@SÐÔTÜ% hÐ0GÓHˆŒ
Ü$6´{×7PÑ7PÓ$QˆÔØ!×/Ñ/×=Ñ=ÀDÇJÁJÐ=ÓOˆÔØ ˆÔØ26ˆÕ!r   r   r+   r   c                 óp  — | j                   �| j                   t        |«      z   }d | _         | j                  j                  | j                  j                  |z   |«      }|dk(  | _        | j                  j                  rÓ| j                  j                  r½| j                  j                  }| j                  j                  | j                  ¬«      | _        |t        k7  r|t        |«      z  }|dk  r|| _         nX| j                  j                  ||«      }|dk(  | _        ||z  }| j                  j                  r| j                  j                  rŒ½| j                  j                  rN| j                  | j                  j                  kD  r+| j                  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  sx  € ð ×$Ñ$Ð0Ø×,Ñ,¬u°T«{Ñ:ˆDØ(,ˆDÔ%Ø×#Ñ#×.Ñ.Ø×Ñ×.Ñ.°Ñ5°zó
ˆð " S™=ˆÔð
 × Ñ ×$Ò$¨×);Ñ);×)GÒ)GØ×'Ñ'×3Ñ3ˆFØ!%×!3Ñ!3×!AÑ!AÈÏ
É
Ð!AÓ!SˆDÔØÔ6Ò6Øœc &›kÑ)�
Ø ’?Ø06�DÔ-ØØ×&Ñ&×1Ñ1°&¸*ÓEˆEØ$¨™|ˆDÔØ�e‰OˆFð × Ñ ×$Ò$¨×);Ñ);×)GÓ)Gð  ×Ñ×!Ò! d§j¡j°4×3EÑ3E×3OÑ3OÒ&OØ!%×!3Ñ!3×!AÑ!AÈÏ
É
Ð!AÓ!SˆDÔàˆr   r/   c                 óv   — |dkD  r| j                   j                  |«      S | j                   j                  «       S ©Nr   )rŸ   r"   r1   s     r   r"   zZLibDecompressor.flush?  s?   € ð ˜Šzð ×Ñ×$Ñ$ VÓ,ð	
ð ×#Ñ#×)Ñ)Ó+ð	
r   c                 ó~   — t        | j                  j                  «      xs | j                   xs | j                  d uS r   )r:   rŸ   r6   r    r¡   r3   s    r   r‹   zZLibDecompressor.data_availableF  sA   € ô �×#Ñ#×3Ñ3Ó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ð ˜T‘/ð	7ð
 ! 4™Zõ7ð /Hñ"Øð"Ø(+ð"à	ó"ñH
˜Cð 
¨ó 
ð ð
 ò 
ó ð
ð ð&�Tò &ó ô&r   rš   c                   óx   ‡ — 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        ‰| �  ||¬«       y)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  sG   ø€ õ Üð1óð ô ×'Ñ'Ó)ˆŒ	Ø ˆÔÜ‰Ñ (Ð@SÐÕTr   r   r+   c                 ó¼  — t        | j                  d«      r^|t        k(  r*t        t        | j                  j                  |«      «      }nˆt        t        | j                  j                  ||«      «      }n]|t        k(  r*t        t        | j                  j                  |«      «      }n*t        t        | j                  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‘9˜lÔ+ØÔ6Ò6Üœe T§Y¡Y×%9Ñ%9¸$Ó%?Ó@‘äœe T§Y¡Y×%9Ñ%9¸$À
Ó%KÓL‘àÔ6Ò6Üœe T§Y¡Y×%6Ñ%6°tÓ%<Ó=‘äœe T§Y¡Y×%6Ñ%6°t¸ZÓ%HÓI�à! S™=ˆÔØˆr   c                 ó€   — t        | j                  d«      r(t        t        | j                  j	                  «       «      S y)zFlush the decompressor.r"   r   )r·   r´   r
   r'   r"   r3   s    r   r"   zBrotliDecompressor.flushx  s+   € ä�4—9‘9˜gÔ&Üœ˜tŸy™yŸ™Ó0Ó1Ð1Ør   c                 óV   — | j                   j                  «        xr | j                   S r   )r´   Úis_finishedr    r3   s    r   r‹   z!BrotliDecompressor.data_available~  s&   € à—9‘9×(Ñ(Ó*Ð*ÒC°4×3CÑ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à˜T‘/ðUð ! 4™ZðUð 
õ	Uð  /HñØðØ(+ðà	óð$�uó ð ðD ò Dó ôDr   r®   c                   óx   ‡ — 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                 óv   •— t         st        d«      ‚t        «       | _        d | _        t
        ‰| �  ||¬«       y )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__„  sA   ø€ õ
 Üð9óð ô %Ó&ˆŒ	Ø26ˆÔ!Ü‰Ñ (Ð@SÐÕTr   r   r+   c                 óp  — |t         k(  rt        n|}| j                  �| j                  |z   }d | _        | j                  j	                  ||«      }| j                  j
                  r«| j                  j                  r•| j                  j                  }t        «       | _        |t        k7  r|t        |«      z  }|dk  r|| _        nL|| j                  j	                  ||«      z  }| j                  j
                  r| j                  j                  rŒ•| 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õ &àð 	ð
 ×$Ñ$Ð0Ø×,Ñ,¨tÑ3ˆDØ(,ˆDÔ%Ø—‘×%Ñ% d¨OÓ<ˆð �i‰i�mŠm §	¡	× 5Ò 5ØŸ)™)×/Ñ/ˆKÜ(Ó*ˆDŒIØÔ";Ò;Ø¤3 v£;Ñ.�Ø" aÒ'Ø0;�DÔ-ØØ�d—i‘i×*Ñ*¨;¸ÓHÑHˆFð �i‰i�mŠm §	¡	× 5Ó 5ð �9‰9�=Š=Ü(Ó*ˆDŒIàˆr   c                  ó   — y)Nr   r   r3   s    r   r"   zZSTDDecompressor.flush¸  s   € Ør   c                 ó‚   — | j                   j                   xr | j                   j                   xs | j                  d uS r   )r´   Úneeds_inputr4   r¡   r3   s    r   r‹   zZSTDDecompressor.data_available»  s<   € ð —	‘	×%Ñ%Ð%Ò;¨d¯i©i¯m©mÐ*;ò3à×&Ñ&¨dÐ2ð	3r   r¼   r¬   s   @r   r¾   r¾   ƒ  sƒ   ø„ ð %)Ø*=ñUà˜T‘/ðUð ! 4™ZðUð 
õ	Uð /Hñ$Øð$Ø(+ð$à	ó$ðL�uó ð ð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à×Ñ�wÒÞ&åà�5˜)Ð%6Ð8KÐKÑL€FððÛ#ð €JðØ
×Ñ˜7Ò"Þ5å3à€Hð
 Ð ð Ð ØÐ ô6˜hô 6ô
( ô (ô˜(ô ô8�i uõ ÷*5ñ *5ñZ #5°TÓ":€ÐÓ :ð1Ð':ð 1¸tó 1ð
  Ø$)ñXØ�D‰jðXà!ðXð 	óXô F˜sô  F÷FH
ñ H
ôVD&Ð/ô D&ôN-DÐ1ô -Dô`<3Ð/õ <3øðc ò Ýðûð ò Ø‚Jðûð ò Ø‚HðúsB   ÁD ÁD ÁD, Ä	DÄD ÄDÄD ÄD)Ä(D)Ä,D6Ä5D6