Ë
    ³¸‘iÚ-  ã                   óz  — 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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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e)   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-«      Z0 G d+„ d,e-«      Z1y# 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ÚOptionalÚProtocolÚ	TypedDictÚcast)é   é   )ÚBuffer)ÚUnionzmemoryview[int]zmemoryview[bytes]TF)r   é   )ÚZstdDecompressori   i   éÿÿÿÿ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     úS/var/www/telegram/bot_env/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                   óJ   — 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
y)
ÚZLibDecompressObjProtocolr   Ú
max_lengthr   c                  ó   — y r   r   ©r   r   r,   s      r   Ú
decompressz$ZLibDecompressObjProtocol.decompress2   r   r   Úlengthc                 ó   — y r   r   ©r   r0   s     r   r#   zZLibDecompressObjProtocol.flush3   r   r   c                  ó   — y r   r   ©r   s    r   ÚeofzZLibDecompressObjProtocol.eof5   s   € Ør   Nr$   )r%   r&   r'   r   r)   r(   r/   r#   ÚpropertyÚboolr5   r   r   r   r+   r+   1   s4   „ ÙK˜vÐK°3ÐKÀÓKÙ7˜CÐ7¨UÓ7àØ�TÒó Ù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e   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Úzdictr   c                  ó   — y r   r   )r   r?   r@   rA   rB   rC   rD   s          r   ÚcompressobjzZLibBackendProtocol.compressobj@   s   € ð #&r   c                  ó   — y r   r   )r   rA   rD   s      r   Údecompressobjz!ZLibBackendProtocol.decompressobjI   s   € à$'r   r   c                 ó   — y r   r   )r   r   r?   rA   s       r   r   zZLibBackendProtocol.compressM   ó   € àr   Úbufsizec                 ó   — y r   r   )r   r   rA   rK   s       r   r/   zZLibBackendProtocol.decompressP   rJ   r   N)......)..)r%   r&   r'   r)   Ú__annotations__r   r   r   rF   r+   rH   r(   r   r/   r   r   r   r9   r9   9   sù   … ØƒNØÓØÓØÓØƒMð ØØØØØ"%ñ&àð&ð ð&ð ð	&ð
 ð&ð ð&ð ˜Ñð&ð 
!ó&ð 14ñ(Øð(Ø'-ð(à	"ó(ð
 ?BñØ&)ðØ8;ðØðà	óð ADñØ&)ðØ:=ðØðà	ôr   r9   c                   ó,   — e Zd ZU eed<   eed<   eed<   y)ÚCompressObjArgsrA   rC   r?   N)r%   r&   r'   r)   rM   r   r   r   rO   rO   U   s   … ØƒJØƒMØ„Jr   rO   )Ú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   )rS   )r   rS   s     r   Ú__init__zZLibBackendWrapper.__init__\   s
   € Ø2?ˆÕr   r   c                 ó0   — t        | j                  dd«      S )Nr%   Ú	undefined©ÚgetattrrS   r4   s    r   ÚnamezZLibBackendWrapper.name_   s   € ä�t×)Ñ)¨:°{ÓCÐCr   c                 ó.   — | j                   j                  S r   )rS   r:   r4   s    r   r:   zZLibBackendWrapper.MAX_WBITSc   s   € à×!Ñ!×+Ñ+Ð+r   c                 ó.   — | j                   j                  S r   )rS   r;   r4   s    r   r;   zZLibBackendWrapper.Z_FULL_FLUSHg   ó   € à×!Ñ!×.Ñ.Ð.r   c                 ó.   — | j                   j                  S r   )rS   r<   r4   s    r   r<   zZLibBackendWrapper.Z_SYNC_FLUSHk   r]   r   c                 ó.   — | j                   j                  S r   )rS   r=   r4   s    r   r=   zZLibBackendWrapper.Z_BEST_SPEEDo   r]   r   c                 ó.   — | j                   j                  S r   )rS   r>   r4   s    r   r>   zZLibBackendWrapper.Z_FINISHs   s   € à×!Ñ!×*Ñ*Ð*r   ÚargsÚkwargsc                 ó:   —  | j                   j                  |i |¤ŽS r   )rS   rF   ©r   ra   rb   s      r   rF   zZLibBackendWrapper.compressobjw   s    € Ø-ˆt×!Ñ!×-Ñ-¨tÐ>°vÑ>Ð>r   c                 ó:   —  | j                   j                  |i |¤ŽS r   )rS   rH   rd   s      r   rH   z ZLibBackendWrapper.decompressobjz   s    € Ø/ˆt×!Ñ!×/Ñ/°Ð@¸Ñ@Ð@r   r   c                 óB   —  | j                   j                  |g|¢­i |¤ŽS r   )rS   r   ©r   r   ra   rb   s       r   r   zZLibBackendWrapper.compress}   s%   € Ø*ˆt×!Ñ!×*Ñ*¨4ÐA°$ÒA¸&ÑAÐAr   c                 óB   —  | j                   j                  |g|¢­i |¤ŽS r   )rS   r/   rg   s       r   r/   zZLibBackendWrapper.decompress€   s%   € Ø,ˆt×!Ñ!×,Ñ,¨TÐC°DÒC¸FÑCÐCr   Úattrnamec                 ó.   — t        | j                  |«      S r   rX   )r   ri   s     r   Ú__getattr__zZLibBackendWrapper.__getattr__„   s   € Ü�t×)Ñ)¨8Ó4Ð4r   N)r%   r&   r'   r9   rU   r6   ÚstrrZ   r)   r:   r;   r<   r=   r>   r   r   rF   r+   rH   r   r(   r   r/   rk   r   r   r   rR   rR   [   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   rR   ÚZLibBackendÚnew_zlib_backendr   c                 ó   — | t         _        y r   )rm   rS   )rn   s    r   Úset_zlib_backendrp   ‹   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é   )rm   r:   )rq   rr   s     r   Úencoding_to_moderv   �   s9   € ð �6ÒØ”K×)Ñ)Ñ)Ð)á%<ŒK×!Ñ!Ð!ÐWÄ+×BWÑBWÐWr   c                   óh   — e Zd Zdefdee   dee   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y)
ÚDecompressionBaseHandlerNÚexecutorÚmax_sync_chunk_sizec                 ó    — || _         || _        y)z&Base class for decompression handlers.N)Ú	_executorÚ_max_sync_chunk_size)r   ry   rz   s      r   rU   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=)r%   r&   r'   ÚMAX_SYNC_CHUNK_SIZEr   r   r)   rU   r   ÚZLIB_MAX_LENGTH_UNLIMITEDr(   r�   r/   r   r   r   rx   rx   ™   s|   „ ð (,Ø-@ñ8à˜8Ñ$ð8ð & c™]ó8ð à-Fñ)Øð)Ø'*ð)à	ò)ó ð)ð .Gñ6Øð6Ø'*ð6à	ô6r   rx   c                   óœ   — e Zd Zddddddefdee   dedee   dee   dee   dee   d	ee   fd
„Z	de
de
fd„Zde
de
fd„Zddee   de
fd„Zy)ÚZLibCompressorNFrq   rr   r?   rA   rC   ry   rz   c                 ó  — || _         || _        |€t        ||«      n|| _        t	        t
        j                  «      | _        i }| j                  |d<   |�||d<   |�||d<    | j                  j                  di |¤Ž| _        y )NrA   rC   r?   r   )	r|   r}   rv   Ú_moderR   rm   rS   rF   Ú_compressor)	r   rq   rr   r?   rA   rC   ry   rz   rb   s	            r   rU   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#   rS   r>   r"   s     r   r#   zZLibCompressor.flushò   s>   € ð ×Ñ×%Ñ%ØÐ$ˆDó
ð 	
Ø*.×*<Ñ*<×*EÑ*Eó
ð 	
r   r   )r%   r&   r'   r‡   r   rl   r7   r)   r   rU   r(   r�   r   r#   r   r   r   rŠ   rŠ   ·   sÀ   „ ð #'Ø(-Ø#Ø#Ø"&Ø'+Ø-@ñDà˜3‘-ðDð "&ðDð ˜‰}ð	Dð
 ˜‰}ðDð ˜3‘-ðDð ˜8Ñ$ðDð & c™]óDð6/ %ð /¨Eó /ð( 5ð (¨Uó (ñ8
˜( 3™-ð 
°5ô 
r   rŠ   c            
       óŒ   ‡ — e Zd Zdddefdee   dedee   dee   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ˆ xZS )ÚZLibDecompressorNFrq   rr   ry   rz   c                 óÜ   •— t         ‰| �  ||¬«       t        ||«      | _        t	        t
        j                  «      | _        | j                  j                  | j                  ¬«      | _        y )N©ry   rz   )rA   )	ÚsuperrU   rv   rŒ   rR   rm   rS   rH   Ú_decompressor)r   rq   rr   ry   rz   Ú	__class__s        €r   rU   zZLibDecompressor.__init__  sZ   ø€ ô 	‰Ñ (Ð@SÐÔTÜ% hÐ0GÓHˆŒ
Ü$6´{×7PÑ7PÓ$QˆÔØ!×/Ñ/×=Ñ=ÀDÇJÁJÐ=ÓOˆÕr   r   r,   r   c                 ó:   — | j                   j                  ||«      S r   )r™   r/   r.   s      r   r�   z ZLibDecompressor.decompress_sync  s   € ð ×!Ñ!×,Ñ,¨T°:Ó>Ð>r   r0   c                 óv   — |dkD  r| j                   j                  |«      S | j                   j                  «       S )Nr   )r™   r#   r2   s     r   r#   zZLibDecompressor.flush  s?   € ð ˜Šzð ×Ñ×$Ñ$ VÓ,ð	
ð ×#Ñ#×)Ñ)Ó+ð	
r   c                 ó.   — | j                   j                  S r   )r™   r5   r4   s    r   r5   zZLibDecompressor.eof  s   € à×!Ñ!×%Ñ%Ð%r   )r   )r%   r&   r'   r‡   r   rl   r7   r   r)   rU   rˆ   r   r(   r�   r#   r6   r5   Ú__classcell__©rš   s   @r   r•   r•     sŸ   ø„ ð #'Ø(-Ø'+Ø-@ñ
Pà˜3‘-ð
Pð "&ð
Pð ˜8Ñ$ð	
Pð
 & c™]õ
Pð /Hñ?Øð?Ø(+ð?à	ó?ñ

˜Cð 
¨ó 
ð ð&�Tò &ó ô&r   r•   c                   ób   ‡ — e Zd Zdefdee   dee   ddfˆ fd„Zefde	dede
fd„Zde
fd	„Zˆ xZS )
ÚBrotliDecompressorNry   rz   r   c                 ó|   •— t         st        d«      ‚t        j                  «       | _        t
        ‰| �  ||¬«       y)z)Decompress data using the Brotli library.zIThe brotli decompression is not available. Please install `Brotli` moduler—   N)Ú
HAS_BROTLIÚRuntimeErrorÚbrotliÚDecompressorÚ_objr˜   rU   ©r   ry   rz   rš   s      €r   rU   zBrotliDecompressor.__init__$  s?   ø€ õ Üð1óð ô ×'Ñ'Ó)ˆŒ	Ü‰Ñ (Ð@SÐÕTr   r   r,   c                 óÖ   — t        | j                  d«      r*t        t        | j                  j	                  ||«      «      S t        t        | j                  j                  ||«      «      S )r€   r/   )Úhasattrr§   r   r(   r/   Úprocessr.   s      r   r�   z"BrotliDecompressor.decompress_sync2  sN   € ô �4—9‘9˜lÔ+Üœ˜tŸy™y×3Ñ3°D¸*ÓEÓFÐFÜ”E˜4Ÿ9™9×,Ñ,¨T°:Ó>Ó?Ð?r   c                 ó€   — t        | j                  d«      r(t        t        | j                  j	                  «       «      S y)zFlush the decompressor.r#   r   )rª   r§   r   r(   r#   r4   s    r   r#   zBrotliDecompressor.flush:  s+   € ä�4—9‘9˜gÔ&Üœ˜tŸy™yŸ™Ó0Ó1Ð1Ør   )r%   r&   r'   r‡   r   r   r)   rU   rˆ   r   r(   r�   r#   rž   rŸ   s   @r   r¡   r¡      sl   ø„ ð (,Ø-@ñUà˜8Ñ$ðUð & c™]ðUð 
õ	Uð /Hñ@Øð@Ø(+ð@à	ó@ð�u÷ r   r¡   c                   ób   ‡ — e Zd Zdefdee   dee   ddfˆ fd„Zefde	dede	fd„Z
de	fd	„Zˆ xZS )
ÚZSTDDecompressorNry   rz   r   c                 óh   •— t         st        d«      ‚t        «       | _        t        ‰| �  ||¬«       y )NzOThe zstd decompression is not available. Please install `backports.zstd` moduler—   )ÚHAS_ZSTDr¤   r   r§   r˜   rU   r¨   s      €r   rU   zZSTDDecompressor.__init__B  s9   ø€ õ
 Üð9óð ô %Ó&ˆŒ	Ü‰Ñ (Ð@SÐÕTr   r   r,   c                 ó\   — |t         k(  rt        n|}| j                  j                  ||«      S r   )rˆ   ÚZSTD_MAX_LENGTH_UNLIMITEDr§   r/   )r   r   r,   Úzstd_max_lengths       r   r�   z ZSTDDecompressor.decompress_syncO  s3   € ð Ô6Ò6õ &àð 	ð
 �y‰y×#Ñ# D¨/Ó:Ð:r   c                  ó   — y)Nr   r   r4   s    r   r#   zZSTDDecompressor.flush[  s   € Ør   )r%   r&   r'   r‡   r   r   r)   rU   rˆ   r(   r�   r#   rž   rŸ   s   @r   r®   r®   A  sh   ø„ ð (,Ø-@ñUà˜8Ñ$ðUð & c™]ðUð 
õ	Uð .Gñ
;Øð
;Ø'*ð
;à	ó
;ð�u÷ r   r®   )NF)2r„   ÚsysÚzlibÚabcr   r   Úconcurrent.futuresr   Útypingr   r   r   r	   r
   r   Úversion_infoÚcollections.abcr   r   r(   Ú	bytearrayÚ
brotlicffir¥   ÚImportErrorr£   Úcompression.zstdr   Úbackports.zstdr°   r‡   ÚDEFAULT_MAX_DECOMPRESS_SIZErˆ   r²   r   r+   r9   rO   rR   rm   rM   rp   rl   r7   r)   rv   rx   rŠ   r•   r¡   r®   r   r   r   ú<module>rÂ      s£  ðÜ Û 
Û ß #Ý 'ß B× Bà×Ñ�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Ø�s‰mðXà!ðXð 	óXô6˜sô 6÷<H
ñ H
ôV&Ð/ô &ô<Ð1ô ôBÐ/õ øð_	 ò Ýðûð ò Ø‚Jðûð ò Ø‚HðúsB   ÁD ÁD# ÁD0 Ä	D ÄD# ÄD Ä D# Ä#D-Ä,D-Ä0D:Ä9D: