Ë
    ?²XjX  ã                   ó’   — d dl mZ d dlZ G d„ de«      Z G d„ de«      Z G d„ de«      Z G d	„ d
e«      Zdefd„Z G d„ de«      Z	y)é    )ÚProtocolNc                   ó   — e Zd ZdZy)ÚDecodeRatioErrorzBOutput-to-input amplification ratio exceeded the configured limit.N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    úU/var/www/html/content_generation/venv/lib/python3.12/site-packages/httplib2/decode.pyr   r      s   „ ÚLr   r   c                   ó   — e Zd ZdZy)ÚDecodeLimitErrorz,Total output length exceeded the hard limit.Nr   r   r   r   r   r   	   s   „ Ú6r   r   c                   óT   — e Zd Zedefd„«       Zdedefd„Zdefd„Zd
dede	defd„Z
y	)ÚDecoderProtocolÚreturnc                  ó   — y ©Nr   ©Úselfs    r   Úneeds_inputzDecoderProtocol.needs_input   s   € àr   Úbc                  ó   — y r   r   ©r   r   s     r   ÚdecodezDecoderProtocol.decode   ó   € Ør   c                  ó   — y r   r   r   s    r   ÚflushzDecoderProtocol.flush   r   r   ÚdataÚ
chunk_sizec                 ó  — t        «       }|dk(  rt        |«      }t        dt        |«      |«      D ]*  }||||z    }|j                  | j	                  |«      «       Œ, |j                  | j                  «       «       t        |«      S )Nr   )Ú	bytearrayÚlenÚrangeÚextendr   r   Úbytes)r   r   r    ÚoutÚiÚchunks         r   Úconsume_byteszDecoderProtocol.consume_bytes   ss   € Ü‹kˆØ˜Š?Ü˜T›ˆJÜ�qœ#˜d›) ZÖ0ˆAØ˜˜Q ™^Ð,ˆEØ�J‰J�t—{‘{ 5Ó)Õ*ð 1ð 	�
‰
�4—:‘:“<Ô Ü�S‹zÐr   N)é   )r   r   r	   ÚpropertyÚboolr   r&   r   r   Úintr*   r   r   r   r   r      sT   „ Øð˜Tò ó ðð˜ð  %ó ð�uó ñ %ð °Sð Èô r   r   c                   óf   — e Zd ZdZdZdZdZdZdZefde	fd„Z
ed	efd
„«       Zded	efd„Zd	efd„Zy)ÚZlibDecodera#  
    Thin wrapper around zlib.Decompressor conforming to the Decoder interface.

    Note: zlib pushes all available decompressed data immediately upon receiving
    input. It never holds back output requiring `decode(b"")` to extract it.
    Thus, `needs_input` naturally remains True.
    )Ú_decoderiñÿÿÿé   é   é/   Úwbitsc                 ó8   — t        j                  |«      | _        y r   )ÚzlibÚdecompressobjr1   )r   r5   s     r   Ú__init__zZlibDecoder.__init__3   s   € Ü15×1CÑ1CÀEÓ1Jˆ�r   r   c                 ó^   — | j                   €t        d«      ‚| j                   j                   S ©Nzused after flush())r1   ÚRuntimeErrorÚeofr   s    r   r   zZlibDecoder.needs_input6   s+   € à�=‰=Ð ÜÐ3Ó4Ð4Ø—=‘=×$Ñ$Ð$Ð$r   r   c                 óf   — | j                   €t        d«      ‚| j                   j                  |«      S r;   )r1   r<   Ú
decompressr   s     r   r   zZlibDecoder.decode<   s-   € Ø�=‰=Ð ÜÐ3Ó4Ð4Ø�}‰}×'Ñ'¨Ó*Ð*r   c                 óv   — | j                   €t        d«      ‚| j                   j                  «       }d | _         |S r;   )r1   r<   r   )r   Úresults     r   r   zZlibDecoder.flushA   s6   € Ø�=‰=Ð ÜÐ3Ó4Ð4Ø—‘×$Ñ$Ó&ˆØˆŒØˆr   N)r   r   r	   r
   Ú	__slots__ÚWBITS_DEFLATEÚ
WBITS_ZLIBÚ
WBITS_GZIPÚWBITS_AUTO_GZIP_ZLIBr.   r9   r,   r-   r   r&   r   r   r   r   r   r0   r0   #   sn   „ ñð €Ià€MØ€JØ€JØ"Ðà$8ñ K˜có Kð ð%˜Tò %ó ð%ð
+˜ð + %ó +ð
�uô r   r0   r   c                  ó4   — t        t         j                  «      S r   )r0   rC   r   r   r   ÚDeflateDecoderrH   I   s   € Ü”{×0Ñ0Ó1Ð1r   c                   ó„   — e Zd ZdZ	 	 	 	 ddedededededdfd	„Zdd
„Ze	de
fd„«       Zdedefd„Zdefd„Zdedefd„Zy)ÚLimitDecoder)	r1   Ú_ratioÚ_chunk_sizeÚ_safe_limitÚ_hard_limitÚ_consumed_lengthÚ_output_lengthÚ_input_bufferÚ_flushedÚdecoderÚratior    Ú
safe_limitÚ
hard_limitr   Nc                 ó2  — |dk  rt        d|› d�«      ‚|dk  rt        d|› d�«      ‚|dk  rt        d|› d�«      ‚|dk  rt        d|› d�«      ‚|| _        || _        || _        || _        || _        d| _        d| _        t        «       | _	        d| _
        y )Nr   zLimitDecoder() ratio=z expected >= 0zLimitDecoder() chunk_size=zLimitDecoder() safe_limit=F)Ú
ValueErrorr1   rK   rL   rM   rN   rO   rP   r"   rQ   rR   )r   rS   rT   r    rU   rV   s         r   r9   zLimitDecoder.__init__Z   s»   € ð �1Š9ÜÐ4°U°G¸>ÐJÓKÐKØ˜Š>ÜÐ9¸*¸À^ÐTÓUÐUØ˜Š>ÜÐ9¸*¸À^ÐTÓUÐUØ˜Š>ÜÐ9¸*¸À^ÐTÓUÐUà)0ˆŒØ"ˆŒØ *ˆÔØ *ˆÔØ *ˆÔØ%&ˆÔØ#$ˆÔÜ(1«ˆÔØ#ˆ�r   c           
      ó.  — | j                   dkD  r>| j                  | j                   kD  r%t        d| j                  › d| j                   › �«      ‚| j                  dkD  r| j                  | j                  k  ry | j                  dkD  r�| j                  | j
                  | j                  z  kD  ri| j
                  dkD  r| j                  | j
                  z  n
t        d«      }t        d|d›d| j                  › d| j
                  › d	| j                  › �«      ‚y y )
Nr   zOutput length z exceeds hard limit ÚinfzAmplification ratio z.1fz (Ú/z) exceeds limit )rN   rP   r   rM   rK   rO   Úfloatr   )r   Úactual_ratios     r   Ú_check_limitszLimitDecoder._check_limitsu   s  € Ø×Ñ˜qÒ  t×':Ñ':¸T×=MÑ=MÒ'MÜ" ^°D×4GÑ4GÐ3HÐH\Ð]a×]mÑ]mÐ\nÐ#oÓpÐpØ×Ñ˜qÒ  t×':Ñ':¸T×=MÑ=MÒ'MØØ�K‰K˜!ŠO $×"5Ñ"5¸×8MÑ8MÐPT×P[ÑP[Ñ8[Ò"[ØJN×J_ÑJ_ÐbcÒJc˜4×.Ñ.°×1FÑ1FÒFÔinÐotÓiuˆLÜ"Ø& |°CÐ&8¸¸4×;NÑ;NÐ:OÈqÐQU×QfÑQfÐPgð h"Ø"&§+¡+ ð0óð ð #\ˆOr   c                 ó.   — | j                   j                  S r   )r1   r   r   s    r   r   zLimitDecoder.needs_input�   s   € à�}‰}×(Ñ(Ð(r   r   c                 óh   — | j                   rt        d«      ‚| j                  |«      }t        |«      S )Nzdecode() called after flush())rR   r<   Ú_pumpr&   )r   r   Úoutputs      r   r   zLimitDecoder.decode…   s,   € Ø�=Š=ÜÐ>Ó?Ð?Ø—‘˜A“ˆÜ�V‹}Ðr   c                 ó(  — | j                   rt        d«      ‚d| _         | j                  d«      }| j                  j	                  «       }|j                  |«       | xj                  t        |«      z  c_        | j                  «        t        |«      S )Nzflush() called more than onceTr   )
rR   r<   ra   r1   r   r%   rP   r#   r^   r&   )r   rb   r   s      r   r   zLimitDecoder.flush‹   sr   € Ø�=Š=ÜÐ>Ó?Ð?ØˆŒà—‘˜C“ˆà�}‰}×"Ñ"Ó$ˆØ�‰�dÔØ×Òœs 4›yÑ(ÕØ×ÑÔä�V‹}Ðr   c                 óÀ  — | j                   j                  |«       t        «       }	 | j                  j                  s]| j                  j                  d«      }|r@|j                  |«       | xj                  t        |«      z  c_        | j                  «        Œt| j                   r·t        | j                   d | j                   «      }| j                   d | j                  …= | j                  j                  |«      }| xj                  t        |«      z  c_        |r?|j                  |«       | xj                  t        |«      z  c_        | j                  «        �Œ7	 |S )Nr   )rQ   r%   r"   r1   r   r   rP   r#   r^   r&   rL   rO   )r   r   rb   r   r)   s        r   ra   zLimitDecoder._pump™   s  € Ø×Ñ×!Ñ! !Ô$ä“ˆØØ—=‘=×,Ò,Ø—}‘}×+Ñ+¨CÓ0�ÙØ—M‘M $Ô'Ø×'Ò'¬3¨t«9Ñ4Õ'Ø×&Ñ&Ô(Øà×!Ò!Ü˜d×0Ñ0Ð1C°4×3CÑ3CÐDÓE�Ø×&Ñ&Ð'9¨×)9Ñ)9Ð'9Ð:à—}‘}×+Ñ+¨EÓ2�Ø×%Ò%¬¨U«Ñ3Õ%áØ—M‘M $Ô'Ø×'Ò'¬3¨t«9Ñ4Õ'Ø×&Ñ&Ô(áð àˆr   )éd   r+   i    l       
 )r   N)r   r   r	   rB   r   r\   r.   r9   r^   r,   r-   r   r&   r   r   r"   ra   r   r   r   rJ   rJ   M   s¨   „ ð
€Ið Ø"Ø"Ø"ñ$à ð$ð ð$ð ð	$ð
 ð$ð ð$ð 
ó$ó6
ð ð)˜Tò )ó ð)ð˜ð  %ó ð�uó ð�uð  ô r   rJ   )
Útypingr   r7   Ú	Exceptionr   r   r   r0   rH   rJ   r   r   r   Ú<module>rh      sX   ðÝ Û ôM�yô Mô7�yô 7ô�hô ô,#�/ô #ðL2˜ó 2ôj�?õ jr   