Ë
    ž…Åju3  ã                   ó†  — d dl mZ d dlZd dlZd dlZd dlmZ d dlmZm	Z	m
Z
 d dlmZmZ d dlmZ ddlmZ dd	lmZ d
dlmZ d
dlmZmZ d
dlmZ d
dlmZ 	 d dlmZ  ee«      5  d dl!m!Z" d dl#Z$ddd«        ejJ                  d«      Z&h d£Z'dZ( G d„ d«      Z) G d„ d«      Z*y# e$ r	 d dl mZ Y ŒUw xY w# 1 sw Y   ŒGxY w)é    )ÚsuppressN)ÚFuture)ÚAnyÚOptionalÚUnion)Ú	AwaitableÚCallable)Ú	timedeltaé   )ÚCurl)ÚCurlCffiWarningé   )ÚCookies)Ú	HTTPErrorÚRequestException)ÚHeaders)Ú
STREAM_END)Úloads)Úmarkdownifyzcharset=([\w-]+)>   úutf-16úutf-32úutf-16beúutf-16leúutf-32beúutf-32leú	utf-16-beú	utf-16-leú	utf-32-beú	utf-32-leÚutf8Úutf16Úutf32úutf-8ú	utf-8-sig)i-  i.  i/  i3  i4  c            
       ó2   — e Zd ZdZ	 ddedededee   fd„Zy)	ÚRequestzÑRepresenting a sent request.

    Attributes:
        url: request url.
        headers: request headers.
        method: request http method.
        body: request body as bytes, or None if not provided.
    NÚurlÚheadersÚmethodÚbodyc                 ó<   — || _         || _        || _        || _        y ©N)r'   r(   r)   r*   )Úselfr'   r(   r)   r*   s        úO/opt/euro-skaner/venv/lib/python3.12/site-packages/curl_cffi/requests/models.pyÚ__init__zRequest.__init__;   s    € ð ˆŒØˆŒØˆŒØˆ�	ó    r,   )	Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústrr   r   Úbytesr/   © r0   r.   r&   r&   1   s;   „ ñð !%ñ
àð
ð ð
ð ð	
ð
 �u‰oô
r0   r&   c                   ó€  — e Zd ZdZd dee   dee   fd„Zdee	e
f   fd„Zdee	e
f   ddfd	„Zede	fd
„«       Zede	fd„«       Zej                   de	ddfd„«       Zedee	   fd„«       Zede	fd„«       Zde	fd„Zdede	fd„Zd„ Zedefd„«       Zd!d„Zd"d„Zd„ Zd„ Zd#d„Zd!d„Zd"d„Zde	fd„Z defd„Z!d„ Z"de	fd„Z#y)$ÚResponsea¶  Contains information the server sends.

    Attributes:
        url: url used in the request.
        content: response body in bytes.
        text: response body in str.
        status_code: http status code.
        reason: http response reason, such as OK, Not Found.
        ok: is status_code in [200, 400)?
        headers: response headers.
        cookies: response cookies.
        elapsed: timedelta of the request duration.
        encoding: http body encoding.
        charset: alias for encoding.
        primary_ip: primary ip of the server.
        primary_port: primary port of the server.
        local_ip: local ip used in this connection.
        local_port: local port used in this connection.
        charset_encoding: encoding specified by the Content-Type header.
        default_encoding: encoding for decoding response content if charset is not found
            in headers. Defaults to "utf-8". Can be set to a callable for automatic
            detection.
        redirect_count: how many redirects happened.
        redirect_url: the final redirected url.
        http_version: http version used.
        history: redirect responses, in request order. Response bodies are not
            available.
        download_size: total downloaded bytes (body).
        upload_size: total uploaded bytes (body).
        header_size: total header size.
        request_size: request size.
        response_size: download_size + header_size
    NÚcurlÚrequestc                 óØ  — || _         || _        d| _        d| _        d| _        d| _        d| _        t        «       | _        t        «       | _
        t        «       | _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        g | _        i | _        d | _        d | _        d | _        d | _        d| _        d| _        d| _        d| _        d| _        d| _         y )	NÚ r0   éÈ   ÚOKTr#   r   F)!r:   r;   r'   ÚcontentÚstatus_codeÚreasonÚokr   r(   r   Úcookiesr
   ÚelapsedÚdefault_encodingÚredirect_countÚredirect_urlÚhttp_versionÚ
primary_ipÚprimary_portÚlocal_ipÚ
local_portÚhistoryÚinfosÚqueueÚstream_taskÚastream_taskÚquit_nowÚ_stream_closedÚdownload_sizeÚupload_sizeÚheader_sizeÚrequest_sizeÚresponse_size)r-   r:   r;   s      r.   r/   zResponse.__init__k   sè   € ØˆŒ	ØˆŒØˆŒØˆŒØˆÔØˆŒØˆŒÜ“yˆŒÜ“yˆŒÜ"+£+ˆŒØDKˆÔØˆÔØˆÔØˆÔØ!ˆŒØ!"ˆÔØˆŒØ ˆŒØ')ˆŒØ%'ˆŒ
Ø,0ˆŒ
Ø-1ˆÔØ15ˆÔØˆŒØ#ˆÔØ"#ˆÔØ !ˆÔØ !ˆÔØ!"ˆÔØ"#ˆÕr0   Úreturnc                 óþ   — t        d„ | j                  | j                  | j                  | j                  fD «       «      rt        d«      ‚| j                  j                  «       }dD ]  }|j                  |d «       Œ |S )Nc              3   ó$   K  — | ]  }|d u–— Œ
 y ­wr,   r7   )Ú.0Úvalues     r.   ú	<genexpr>z(Response.__getstate__.<locals>.<genexpr>Œ   s   è ø€ ò 
àð ˜Ôñ
ùs   ‚ziStreaming responses cannot be pickled; make the request without stream=True before pickling the response.)r:   rP   rQ   rR   rS   )	ÚanyrP   rQ   rR   rS   Ú	TypeErrorÚ__dict__ÚcopyÚpop)r-   ÚstateÚ	attributes      r.   Ú__getstate__zResponse.__getstate__‹   s‹   € Üñ 
ð —
‘
Ø× Ñ Ø×!Ñ!Ø—‘ð	ô
ô 
ô ð<óð ð
 —‘×"Ñ"Ó$ˆð
ò 	'ˆIð �I‰I�i Õ&ð	'ð ˆr0   re   c                 óŽ   — | j                   j                  |«       d | _        d | _        d | _        d | _        d | _        d| _        y ©NT)rb   Úupdater:   rP   rQ   rR   rS   rT   )r-   re   s     r.   Ú__setstate__zResponse.__setstate__¥   sA   € Ø�‰×Ñ˜UÔ#ØˆŒ	ØˆŒ
ØˆÔØ ˆÔØˆŒØ"ˆÕr0   c                 ó   — | j                   S )zAlias for encoding.)Úencoding©r-   s    r.   ÚcharsetzResponse.charset®   s   € ð �}‰}Ðr0   c                 ó  — t        | d«      sp| j                  }|€Wt        | j                  t        «      r| j                  }n0t        | j                  «      r| j                  | j                  «      }|xs d| _        | j                  S )aé  
        Determines the encoding to decode byte content into text.

        The method follows a specific priority to decide the encoding:
        1. If ``.encoding`` has been explicitly set, it is used.
        2. The encoding specified by the ``charset`` parameter in the ``Content-Type``
            header.
        3. The encoding specified by the ``default_encoding`` attribute. This can either
            be a string (e.g., "utf-8") or a callable for charset autodetection.
        Ú	_encodingr#   )ÚhasattrÚcharset_encodingÚ
isinstancerF   r5   Úcallabler@   rq   )r-   rm   s     r.   rm   zResponse.encoding³   sr   € ô �t˜[Ô)Ø×,Ñ,ˆHØÐÜ˜d×3Ñ3´SÔ9Ø#×4Ñ4‘HÜ˜d×3Ñ3Ô4Ø#×4Ñ4°T·\±\ÓB�HØ%Ò0¨ˆDŒNØ�~‰~Ðr0   r^   c                 ó@   — t        | d«      rt        d«      ‚|| _        y )NÚ_textz0Cannot set encoding after text has been accessed)rr   Ú
ValueErrorrq   )r-   r^   s     r.   rm   zResponse.encodingÉ   s   € ä�4˜Ô!ÜÐOÓPÐPØˆ�r0   c                 ó’   — | j                   j                  d«      }|r*t        j                  |«      }|r|j	                  d«      S dS y)z=Return the encoding, as specified by the Content-Type header.zContent-Typer   N)r(   ÚgetÚ
CHARSET_REÚsearchÚgroup)r-   Úcontent_typeÚcharset_matchs      r.   rs   zResponse.charset_encodingÏ   sF   € ð —|‘|×'Ñ'¨Ó7ˆÙÜ&×-Ñ-¨lÓ;ˆMÙ-:�=×&Ñ& qÓ)ÐDÀÐDØr0   c                 ó°   — t        | d«      s?| j                  sd| _        | j                  S | j                  | j                  «      | _        | j                  S )Nrw   r=   )rr   r@   rw   Ú_decodern   s    r.   ÚtextzResponse.textØ   sF   € ä�t˜WÔ%Ø—<’<Ø�”
ð �z‰zÐð "Ÿ\™\¨$¯,©,Ó7�”
Ø�z‰zÐr0   c                 ó¬   — t        j                  | j                  «      }|j                  «       }|j	                  d¬«      }t        d|› d|› d�«      }|S )NT)Úhtml_partialz<h1>z</h1><main>z</main>)ÚrdÚDocumentr@   ÚtitleÚsummaryÚmd)r-   Údocr‡   rˆ   Ú
body_as_mds        r.   ÚmarkdownzResponse.markdowná   sN   € Ü�k‰k˜$Ÿ,™,Ó'ˆØ—	‘	“ˆØ—+‘+¨4�+Ó0ˆÜ˜$˜u˜g [°°	¸ÐAÓBˆ
ØÐr0   r@   c                 óŠ   — 	 |j                  | j                  d¬«      S # t        t        f$ r |j                  d«      cY S w xY w)NÚreplace)Úerrorsr$   )Údecoderm   ÚUnicodeDecodeErrorÚLookupError)r-   r@   s     r.   r�   zResponse._decodeè   sA   € ð	/Ø—>‘> $§-¡-¸	�>ÓBÐBøÜ"¤KÐ0ò 	/Ø—>‘> +Ó.Ò.ð	/ús   ‚ Ÿ AÁAc                 ój   — | j                   s't        d| j                  › d| j                  › �d| «      ‚y)z2Raise an error if status code is not in [200, 400)zHTTP Error z: r   N)rC   r   rA   rB   rn   s    r.   Úraise_for_statuszResponse.raise_for_statusî   s6   € à�wŠwÜ˜k¨$×*:Ñ*:Ð);¸2¸d¿k¹k¸]ÐKÈQÐPTÓUÐUð r0   c                 óF   — d| j                   v xr | j                  t        v S )z0Whether this response is a well-formed redirect.Úlocation)r(   rA   ÚREDIRECT_STATIrn   s    r.   Úis_redirectzResponse.is_redirectó   s#   € ð ˜TŸ\™\Ð)ÒP¨d×.>Ñ.>Ä.Ð.PÐPr0   c              #   ó  K  — d}| j                  ||¬«      D ]_  }|�||z   }|r|j                  |«      n|j                  «       }|r%|d   r |r|d   d   |d   k(  r|j                  «       nd}|E d{  –—†  Œa |�|–— yy7 Œ­w©z×
        iterate streaming content line by line, separated by ``\n``.

        Copied from: https://requests.readthedocs.io/en/latest/_modules/requests/models/
        which is under the License: Apache 2.0
        N)Ú
chunk_sizeÚdecode_unicodeéÿÿÿÿ)Úiter_contentÚsplitÚ
splitlinesrd   )r-   r›   rœ   Ú	delimiterÚpendingÚchunkÚliness          r.   Ú
iter_lineszResponse.iter_linesø   s²   è ø€ ð ˆà×&Ñ&Ø!°.ð 'ó 
ò 	ˆEð Ð"Ø %™�Ù.7�E—K‘K 	Ô*¸U×=MÑ=MÓ=OˆEñ ˜U 2šY©5°U¸2±Y¸r±]ÀeÈBÁiÒ5Oð —	‘	”àð ð ×Ñð	ð ÐØ‹Mð ð ús   ‚A1BÁ3BÁ4Bc              #   óT  K  — |rt        j                  dt        d¬«       |r
t        «       ‚| j                  r| j
                  sJ d«       ‚	 | j                  j                  «       }t        |t        «      r| j                  «        |‚|t        u rn|–— ŒJ| j                  «        y­w©zD
        iterate streaming content chunk by chunk in bytes.
        z9chunk_size is ignored, there is no way to tell curl that.r   )Ú
stacklevelzstream mode is not enabled.N)ÚwarningsÚwarnr   ÚNotImplementedErrorrP   r:   rz   rt   r   Ú_finalize_streamr   ©r-   r›   rœ   r£   s       r.   rž   zResponse.iter_content  s�   è ø€ ñ Ü�M‰MØKÜØõñ
 Ü%Ó'Ð'à�zŠz˜dŸišiÐFÐ)FÓFÐ'àØ—J‘J—N‘NÓ$ˆEô ˜%Ô!1Ô2Ø×%Ñ%Ô'Ø�ð œ
Ñ"ØàŠKð ð 	×ÑÕùs   ‚B&B(c                 óÆ   — | j                   }|�>|j                  «       j                  dd«      }|t        vrt	        | j
                  fi |¤ŽS t	        | j                  fi |¤ŽS )z+return a parsed json object of the content.Ú_ú-)rs   ÚlowerrŽ   ÚJSON_NATIVE_ENCODINGSr   r‚   r@   )r-   Úkwrs   rm   s       r.   ÚjsonzResponse.json0  s`   € à×0Ñ0ÐØÐ'Ø'×-Ñ-Ó/×7Ñ7¸¸SÓAˆHØÔ4Ñ4Ü˜TŸY™YÑ-¨"Ñ-Ð-Ü�T—\‘\Ñ( RÑ(Ð(r0   c                 ó$   — | j                  «        y©z:Close the streaming connection, only valid in stream mode.N)r¬   rn   s    r.   ÚclosezResponse.close9  s   € à×ÑÕr0   c                 ó\  — | j                   ry | j                  €| j                  €| j                  €y d| _         | j                  r| j                  j	                  «        | j                  r| j                  j                  «        | j                  r| j                  j                  «        y y ri   )rT   rP   rQ   rS   ÚsetÚresultr:   r·   rn   s    r.   r¬   zResponse._finalize_stream=  sƒ   € Ø×ÒØØ�:‰:Ð $×"2Ñ"2Ð":¸t¿}¹}Ð?TØØ"ˆÔØ�=Š=Ø�M‰M×ÑÔØ×ÒØ×Ñ×#Ñ#Ô%Ø�9Š9Ø�I‰I�O‰OÕð r0   c                ó  K  — d}| j                  ||¬«      2 3 d{  –—† }|�||z   }|r|j                  |«      n|j                  «       }|r%|d   r |r|d   d   |d   k(  r|j                  «       nd}|D ]  }|­–— Œ	 Œi7 Œd6 |�|­–— yy­wrš   )Úaiter_contentrŸ   r    rd   )r-   r›   rœ   r¡   r¢   r£   r¤   Úlines           r.   Úaiter_lineszResponse.aiter_linesJ  sÃ   è ø€ ð ˆà×-Ñ-Ø!°.ð .ó 
÷ 	ð 	�%ð Ð"Ø %™�Ù.7�E—K‘K 	Ô*¸U×=MÑ=MÓ=OˆEñ ˜U 2šY©5°U¸2±Y¸r±]ÀeÈBÁiÒ5Oð —	‘	”àð ð ò �Ø”
ñð	øð 
ð ÐØŒMð ùs&   ‚B˜BœB�B A!BÂBÂ
Bc                ó�  K  — |rt        j                  dt        d¬«       |r
t        «       ‚| j                  r| j
                  sJ d«       ‚	 | j                  j                  «       ƒ d{  –—† }t        |t        «      r| j                  «       ƒ d{  –—†  |‚|t        u r| j                  «       ƒ d{  –—†  y|­–— Œs7 ŒU7 Œ/7 Œ­wr§   )r©   rª   r   r«   rP   r:   rz   rt   r   Úacloser   r­   s       r.   r¼   zResponse.aiter_contente  s³   è ø€ ñ Ü�M‰MØKÜØõñ
 Ü%Ó'Ð'à�zŠz˜dŸišiÐFÐ)FÓFÐ'àØŸ*™*Ÿ.™.Ó*×*ˆEô ˜%Ô!1Ô2Ø—k‘k“m×#Ð#Ø�ð œ
Ñ"Ø—k‘k“m×#Ð#Øà‹Kð Ø*øð $øð
 $ús6   ‚A(CÁ*C Á+'CÂCÂ!CÂ4CÂ5CÃCÃCc              ƒ   ó\   K  — | j                  | j                  «       ƒ d{  –—† «      S 7 Œ­w)z*
        Return a decoded string.
        N)r�   Úacontentrn   s    r.   ÚatextzResponse.atextƒ  s#   è ø€ ð �|‰| $§-¡-£/×1Ó2Ð2Ð1ús   ‚,¡*¢	,c              ƒ   óŒ   K  — g }| j                  «       2 3 d{  –—† }|j                  |«       Œ7 Œ6 dj                  |«      S ­w)z8wait and read the streaming content in one bytes object.Nr0   )r¼   ÚappendÚjoin)r-   Úchunksr£   s      r.   rÂ   zResponse.acontent‰  sG   è ø€ àˆØ×-Ñ-Ó/÷ 	!ð 	!�%Ø�M‰M˜%Õ ð	!øÐ/à�x‰x˜ÓÐùs   ‚A•2™0š2�A°2²Ac              ƒ   óR   K  — | j                   r| j                   ƒ d{  –—†  yy7 Œ­wr¶   )rR   rn   s    r.   rÀ   zResponse.aclose�  s(   è ø€ ð ×ÒØ×#Ñ#×#Ñ#ð Ø#ús   ‚'ž%Ÿ'c                 ó"   — d| j                   › d�S )Nz<Response [z]>)rA   rn   s    r.   Ú__repr__zResponse.__repr__—  s   € Ø˜T×-Ñ-Ð.¨bÐ1Ð1r0   )NN)NFN)NF)rZ   N)$r1   r2   r3   r4   r   r   r&   r/   Údictr5   r   rg   rk   Úpropertyro   rm   Úsetterrs   r‚   rŒ   r6   r�   r”   Úboolr˜   r¥   rž   r´   r·   r¬   r¾   r¼   rÃ   rÂ   rÀ   rÊ   r7   r0   r.   r9   r9   H   sy  „ ñ ñD$˜X d™^ð $¸XÀgÑ=Nó $ð@˜d 3¨ 8™nó ð4# $ s¨C x¡.ð #°Tó #ð ð˜ò ó ðð ð˜#ò ó ðð* ‡_�_ð˜cð  dò ó ðð
 ð (¨3¡-ò ó ðð ð�cò ó ðð˜#ó ð/˜uð /¨ó /òVð
 ðQ˜Tò Qó ðQóó4 ò<)ò óóó6ð<3˜Só 3ð  ó  ò$ð2˜#ô 2r0   r9   )+Ú
contextlibr   rP   Úrer©   Úconcurrent.futuresr   Útypingr   r   r   Úcollections.abcr   r	   Údatetimer
   r:   r   Úutilsr   rD   r   Ú
exceptionsr   r   r(   r   Ústreamsr   Úorjsonr   ÚImportErrorr´   r   r‰   Úreadabilityr…   Úcompiler{   r²   r—   r&   r9   r7   r0   r.   ú<module>rÜ      s¬   ðÝ Û Û 	Û Ý %ß 'Ñ 'ß /Ý å Ý #Ý ß 3Ý Ý ðÝñ ˆkÓñ Ý-Û÷ð ˆR�Z‰ZÐ+Ó,€
òÐ ð" +€÷ñ ÷.P2ò P2øði ò ßðú÷ð ús   ÁB& Á&B7Â&B4Â3B4Â7C 