o
    Z�¿já+  ã                   @   s.  d dl mZ d dlmZ d dlmZmZmZ ddlm	Z	 ed Z
dZdZd	Zd
Zd	Zd
ZdZdZdZddd	d
d	d
ddddœ	Zdd„ ZG dd„ deeƒZeG dd„ dƒƒZG dd„ dedd�Ze	je	je	je	jdœZi dd“dd“dd“d d!“d"d#“d$d%“d&d'“d(d)“d*d+“d,d-“d.d/“d0d1“d2d3“d4d5“d6d7“d8d9“d:d;“i d<d=“d>d?“d@dA“dBdC“dDdE“dFdG“dHdI“dJdK“dLdM“dNdO“dPdQ“dRdS“dTdU“dVdW“dXdY“dZd[“d\d]“¥d^d_d`daœ¥Zi d db“dcdd“dde“dfdg“dhdi“djdk“dldm“dndo“dpdq“drds“ddt“dudv“dwdx“dydz“d{d|“d}d~“dd€“i d�d‚“dƒd„“d…d†“d‡dˆ“d‰dŠ“d‹dŒ“d�dŽ“d�d�“d‘d’“d“d”“d•d–“d—d˜“d™dš“d›dœ“d�dž“dŸd “d¡d¢“¥i d£d¤“d¥d¦“d§d¨“d©dª“d«d¬“d­d®“d¯d°“d±d²“d³d´“dµd¶“d·d¸“dd¹“dºd»“d¼d½“d¾d¿“ddÀ“dÁdÂ“¥dÃdÄdÅdÆdÇdÈdÉdÊdËdÌdÍdÎdÏdÐœ¥Z dÑdÒdÓdÔdÕdÖd×dØdÙdÚdÛœ
Z!dÜS )Ýé    )Ú	dataclass)ÚEnum)ÚLiteralÚOptionalÚ	TypedDicté   )ÚCurlSslVersion)6Úedge99Úedge101Úchrome99Ú	chrome100Ú	chrome101Ú	chrome104Ú	chrome107Ú	chrome110Ú	chrome116Ú	chrome119Ú	chrome120Ú	chrome123Ú	chrome124Ú	chrome131Ú
chrome133aÚ	chrome136Ú	chrome142Ú	chrome145Ú	chrome146Ú	chrome150Úchrome99_androidÚchrome131_androidÚ	safari153Ú	safari155Ú	safari170Úsafari172_iosÚ	safari180Úsafari180_iosÚ	safari184Úsafari184_iosÚ	safari260Ú
safari2601Úsafari260_iosÚ
firefox133Ú
firefox135Ú
firefox144Ú
firefox147Útor145ÚchromeÚedgeÚsafariÚ
safari_iosÚsafari_betaÚsafari_ios_betaÚchrome_androidÚfirefoxÚ
safari15_3Ú
safari15_5Ú
safari17_0Úsafari17_2_iosÚ
safari18_0Úsafari18_0_iosÚ
safari18_4Úsafari18_4_iosr   r
   r(   r)   r   r-   r.   )	r/   r0   r1   r2   r3   r4   r5   r6   Útorc                 C   sp   | dkrt S | dkrtS | dkrtS | dkrtS | dkrtS | dkr$tS | dkr*tS | dkr0tS | d	kr6tS | S )
Nr/   r0   r1   r2   r3   r4   r5   r6   r?   )	ÚDEFAULT_CHROMEÚDEFAULT_EDGEÚDEFAULT_SAFARIÚDEFAULT_SAFARI_IOSÚDEFAULT_SAFARI_BETAÚDEFAULT_SAFARI_IOS_BETAÚDEFAULT_CHROME_ANDROIDÚDEFAULT_FIREFOXÚDEFAULT_TOR)Úitem© rJ   úY/home/dinkstrade/pdmp/venv/lib/python3.10/site-packages/curl_cffi/requests/impersonate.pyÚresolve_latest_browser_typei   s&   rL   c                   @   s¼   e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&Z(d'Z)d(Z*d)Z+d*Z,d+Z-d,Z.d-S ).ÚBrowserTyper	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r)   r(   r*   r+   r,   r-   r.   r7   r8   r9   r:   r;   r<   N)/Ú__name__Ú
__module__Ú__qualname__r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r)   r(   r*   r+   r,   r-   r.   r7   r8   r9   r:   r;   r<   rJ   rJ   rJ   rK   rM   €   sZ    rM   c                   @   sú   e Zd ZU dZee ed< dZee ed< dZ	ee ed< dZ
eed  ed< dZeee  ed< dZeed	< d
Zeed< dZee ed< dZee ed< dZeed< dZee ed< dZee ed< dZee ed< dZee ed< dZee ed< dS )ÚExtraFingerprintsNÚtls_min_versionÚ
tls_greaseÚtls_permute_extensions©ÚzlibÚbrotliÚtls_cert_compressionÚtls_signature_algorithmsÚ Útls_delegated_credentialr   Útls_record_size_limitÚhttp2_stream_weightÚhttp2_stream_exclusiveFÚhttp2_no_priorityÚheader_orderÚsplit_cookiesÚform_boundaryÚhttp3_sig_hash_algsÚhttp3_tls_extension_order)rN   rO   rP   rR   r   ÚintÚ__annotations__rS   ÚboolrT   rX   r   rY   ÚlistÚstrr[   r\   r]   r^   r_   r`   ra   rb   rc   rd   rJ   rJ   rJ   rK   rQ   ±   s    
 rQ   c                   @   s¾   e Zd ZU ee ed< ee ed< ee ed< eed  ed< eee	  ed< e	ed< eed< ee ed	< ee ed
< eed< ee	 ed< ee ed< ee ed< ee	 ed< ee	 ed< dS )ÚExtraFpDictrR   rS   rT   rU   rX   rY   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   N)
rN   rO   rP   r   re   rf   rg   r   rh   ri   rJ   rJ   rJ   rK   rj   Ä   s    
 rj   F)Útotal)i  i  i  i  é
   ÚTLS_RSA_WITH_3DES_EDE_CBC_SHAé/   ÚTLS_RSA_WITH_AES_128_CBC_SHAé3   Ú TLS_DHE_RSA_WITH_AES_128_CBC_SHAé5   ÚTLS_RSA_WITH_AES_256_CBC_SHAé9   Ú TLS_DHE_RSA_WITH_AES_256_CBC_SHAé<   ÚTLS_RSA_WITH_AES_128_CBC_SHA256é=   ÚTLS_RSA_WITH_AES_256_CBC_SHA256ég   Ú#TLS_DHE_RSA_WITH_AES_128_CBC_SHA256ék   Ú#TLS_DHE_RSA_WITH_AES_256_CBC_SHA256éŒ   ÚTLS_PSK_WITH_AES_128_CBC_SHAé�   ÚTLS_PSK_WITH_AES_256_CBC_SHAéœ   ÚTLS_RSA_WITH_AES_128_GCM_SHA256é�   ÚTLS_RSA_WITH_AES_256_GCM_SHA384éž   Ú#TLS_DHE_RSA_WITH_AES_128_GCM_SHA256éŸ   Ú#TLS_DHE_RSA_WITH_AES_256_GCM_SHA384i  ÚTLS_AES_128_GCM_SHA256i  ÚTLS_AES_256_GCM_SHA384i  ÚTLS_CHACHA20_POLY1305_SHA256iÀ  Ú%TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHAi	À  Ú$TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHAi
À  Ú$TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHAiÀ  Ú#TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHAiÀ  Ú"TLS_ECDHE_RSA_WITH_AES_128_CBC_SHAiÀ  Ú"TLS_ECDHE_RSA_WITH_AES_256_CBC_SHAi#À  Ú'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256i$À  Ú'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384i'À  Ú%TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256i(À  Ú%TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384i+À  Ú'TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256i,À  Ú'TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384i/À  Ú%TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256i0À  Ú%TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384i5À  Ú"TLS_ECDHE_PSK_WITH_AES_128_CBC_SHAi6À  Ú"TLS_ECDHE_PSK_WITH_AES_256_CBC_SHAÚ+TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256Ú-TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256Ú+TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256)i¨Ì  i©Ì  i¬Ì  Úserver_nameé   Úmax_fragment_lengthÚclient_certificate_urlé   Útrusted_ca_keysé   Útruncated_hmacé   Ústatus_requesté   Úuser_mappingé   Úclient_authzé   Úserver_authzé	   Ú	cert_typeÚsupported_groupsé   Úec_point_formatsé   Úsrpé   Úsignature_algorithmsé   Úuse_srtpé   Ú	heartbeaté   Ú&application_layer_protocol_negotiationé   Ústatus_request_v2é   Úsigned_certificate_timestampé   Úclient_certificate_typeé   Úserver_certificate_typeé   Úpaddingé   Úencrypt_then_macé   Úextended_master_secreté   Útoken_bindingé   Úcached_infoé   Útls_ltsé   Úcompress_certificateé   Úrecord_size_limité   Úpwd_protecté   Ú	pwd_clearé   Úpassword_salté    Úticket_pinningé!   Útls_cert_with_extern_pské"   Údelegated_credentialé#   Úsession_ticketé$   ÚTLMSPé%   ÚTLMSP_proxyingé&   ÚTLMSP_delegateé'   Úsupported_ekt_ciphersé)   Úpre_shared_keyé*   Ú
early_dataé+   Úsupported_versionsé,   Úcookieé-   Úpsk_key_exchange_modesÚcertificate_authoritiesé0   Úoid_filtersé1   Úpost_handshake_authé2   Úsignature_algorithms_certÚ	key_shareé4   Útransparency_infoÚconnection_idÚexternal_id_hashÚexternal_session_idÚquic_transport_parametersÚticket_requestÚdnssec_chainÚ%sequence_number_encryption_algorithmsÚrrcÚapplication_settingszapplication_settings newÚech_outer_extensionsÚencrypted_client_helloÚrenegotiation_info)é6   é7   é8   rt   é:   é;   rv   rx   iiD  iÍD  i ý  iþ  iÿ  zP-192zP-224zP-256zP-384zP-521ÚX25519Ú	ffdhe2048Ú	ffdhe3072ÚX25519MLKEM768ÚX25519Kyber768Draft00)
rÃ   rÇ   rË   rÍ   rÏ   r×   é   i  iì  i™c  N)"Údataclassesr   Úenumr   Útypingr   r   r   Úconstr   ÚBrowserTypeLiteralr@   rA   rB   rC   rD   rE   rF   rG   rH   ÚREAL_TARGET_MAPrL   ri   rM   rQ   rj   ÚTLSv1_0ÚTLSv1_1ÚTLSv1_2ÚTLSv1_3ÚTLS_VERSION_MAPÚTLS_CIPHER_NAME_MAPÚTLS_EXTENSION_NAME_MAPÚTLS_EC_CURVES_MAPrJ   rJ   rJ   rK   Ú<module>   sÚ   þI÷1üÿþýüûúùø	÷
öõôóòñðïîíìëêéèçæåäãâá à!ß"Þ#Û+ÿþýüûúùø	÷
öõôóòñðïîíìëêéèçæåäãâá à!ß"Þ#Ý$Ü%Û&Ú'Ù(Ø*Ö+Õ,Ô-Ó.Ò0Ð1Ï2Î3Í4Ì5Ë7"™m
ö