Ë
    û—hÊ%  ã                   ó`   — d Z ddlZ G d„ d«      Z G d„ d«      Z G d„ d«      Z G d	„ d
«      Zy)zThe Proxy implementation.é    Nc                   ó    — e Zd ZdZed„ «       Zy)ÚProxyTypeFactoryzFactory for proxy types.c                 ó   — | |dœS )N©Úff_valueÚstring© r   s     úb/home/bbl/html/w1hd.aprs.trek/venv/lib/python3.12/site-packages/selenium/webdriver/common/proxy.pyÚmakezProxyTypeFactory.make   s   € à$°Ñ7Ð7ó    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústaticmethodr   r	   r   r
   r   r      s   „ Ù"àñ8ó ñ8r   r   c                   ó  — e Zd ZdZej                  dd«      Zej                  dd«      Zej                  dd«      Zej                  dd	«      Z	ej                  d
d«      Z
ej                  dd«      Zej                  dd«      Zed„ «       Zy)Ú	ProxyTypez Set of possible types of proxy.

    Each proxy type has 2 properties: 'ff_value' is value of Firefox
    profile preference, 'string' is id of proxy type.
    r   ÚDIRECTé   ÚMANUALé   ÚPACé   Ú	RESERVED1é   Ú
AUTODETECTé   ÚSYSTEMé   ÚUNSPECIFIEDc                 óþ   — t        |t        «      r	d|v r|d   }t        |«      j                  «       }t	        | «      D ]0  }t        | |«      }t        |t        «      sŒ d|v sŒ%|d   |k(  sŒ.|c S  t        d|› �«      ‚)Nr   zNo proxy type is found for )Ú
isinstanceÚdictÚstrÚupperÚdirÚgetattrÚ	Exception)ÚclsÚvalueÚattrÚ
attr_values       r
   ÚloadzProxyType.load.   s‡   € ä�eœTÔ" x°5Ñ'8Ø˜(‘OˆEÜ�E“
× Ñ Ó"ˆÜ˜“Hò 	"ˆDÜ   dÓ+ˆJÜ˜*¤dÕ+°¸JÒ0FÈ:ÐV^ÑK_ÐchÓKhØ!Ò!ð	"ô Ð5°e°WÐ=Ó>Ð>r   N)r   r   r   r   r   r   r   r   r   Ú
RESERVED_1r   r   r    Úclassmethodr-   r	   r   r
   r   r      s™   „ ñð ×"Ñ" 1 hÓ/€FØ×"Ñ" 1 hÓ/€FØ
×
Ñ
  5Ó
)€CØ!×&Ñ& q¨+Ó6€JØ!×&Ñ& q¨,Ó7€JØ×"Ñ" 1 hÓ/€FØ"×'Ñ'¨¨=Ó9€Kàñ?ó ñ?r   r   c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)Ú_ProxyTypeDescriptorc                 ó    — || _         || _        y ©N)ÚnameÚp_type)Úselfr4   r5   s      r
   Ú__init__z_ProxyTypeDescriptor.__init__;   s   € ØˆŒ	Øˆ�r   c                 ó.   — t        || j                  «      S r3   )r'   r4   )r6   Úobjr)   s      r
   Ú__get__z_ProxyTypeDescriptor.__get__?   s   € Ü�s˜DŸI™IÓ&Ð&r   c                 óB  — | j                   dk(  rt        |t        «      st        d«      ‚| j                   dk(  rt	        j
                  dt        d¬«        t        |d«      | j                  «       t        |d| j                  «       t        || j                   |«       y )	NÚ
autodetectz,Autodetect proxy value needs to be a booleanÚftpProxyú8ftpProxy is deprecated and will be removed in the futurer   ©Ú
stacklevelÚ _verify_proxy_type_compatibilityÚ	proxyType)
r4   r"   ÚboolÚ
ValueErrorÚwarningsÚwarnÚDeprecationWarningr'   r5   Úsetattr)r6   r9   r*   s      r
   Ú__set__z_ProxyTypeDescriptor.__set__B   s~   € Ø�9‰9˜Ò$¬Z¸¼tÔ-DÜÐKÓLÐLØ�9‰9˜
Ò"ô �M‰MØJÜ"Øõð
 	9Œ�Ð7Ó8¸¿¹ÔEÜ��[ $§+¡+Ô.Ü��T—Y‘Y Õ&r   N)r   r   r   r7   r:   rI   r	   r   r
   r1   r1   :   s   „ òò'ó'r   r1   c                   ó*  — e Zd ZdZej
                  ZdZdZdZ	dZ
dZdZdZdZdZdZ edej$                  «      Z	  edej(                  «      Z	  edej(                  «      Z	  edej(                  «      Z	  ed	ej0                  «      Z	  ed
ej(                  «      Z	  edej(                  «      Z	  edej(                  «      Z	  edej(                  «      Z	  edej(                  «      Z	 dd„Ze d„ «       Z!e!jD                  dd„«       Z!d„ Z#d„ Z$y)ÚProxyzMProxy contains information about proxy type and necessary proxy
    settings.FÚ Nr<   r=   Ú	httpProxyÚnoProxyÚproxyAutoconfigUrlÚsslProxyÚ
socksProxyÚsocksUsernameÚsocksPasswordÚsocksVersionc                 ó  — |�rd|v r"|d   rt         j                  |d   «      | _        d|v r+|d   r&t        j                  dt
        d¬«       |d   | _        d|v r|d   r
|d   | _        d|v r|d   r
|d   | _        d|v r|d   r
|d   | _	        d	|v r|d	   r
|d	   | _
        d
|v r|d
   r
|d
   | _        d|v r|d   r
|d   | _        d|v r|d   r
|d   | _        d|v r|d   r
|d   | _        d|v r|d   r|d   | _        yyyy)zuCreates a new Proxy.

        :Args:
         - raw: raw proxy data. If None, default class values are used.
        rB   r=   r>   r   r?   rM   rN   rO   rP   r<   rQ   rR   rS   rT   N)r   r-   Ú
proxy_typerE   rF   rG   Ú	ftp_proxyÚ
http_proxyÚno_proxyÚproxy_autoconfig_urlrP   Úauto_detectÚsocks_proxyÚsocks_usernameÚsocks_passwordÚsocks_version)r6   Úraws     r
   r7   zProxy.__init__ú   sa  € ò Ø˜cÑ! c¨+Ò&6Ü"+§.¡.°°[Ñ1AÓ"B�”ð ˜SÑ  S¨¢_Ü—‘ØNÜ&Ø õð
 "% Z¡�”Ø˜cÑ! c¨+Ò&6Ø"% kÑ"2�”Ø˜CÑ C¨	¢NØ # I¡�”Ø# sÑ*¨sÐ3GÒ/HØ,/Ð0DÑ,E�Ô)Ø˜SÑ  S¨¢_Ø # J¡�”Ø˜sÑ" s¨<Ò'8Ø#& |Ñ#4�Ô Ø˜sÑ" s¨<Ò'8Ø#& |Ñ#4�Ô Ø #Ñ%¨#¨oÒ*>Ø&)¨/Ñ&:�Ô#Ø #Ñ%¨#¨oÒ*>Ø&)¨/Ñ&:�Ô#Ø Ñ$¨¨^Ò)<Ø%(¨Ñ%8�Õ"ð *=Ð$ð9 r   c                 ó   — | j                   S )z"Returns proxy type as `ProxyType`.)rB   )r6   s    r
   rV   zProxy.proxy_type  s   € ð �~‰~Ðr   c                 ó4   — | j                  |«       || _        y)zKSets proxy type.

        :Args:
         - value: The proxy type.
        N)rA   rB   )r6   r*   s     r
   rV   zProxy.proxy_type$  s   € ð 	×-Ñ-¨eÔ4Øˆ�r   c                 óx   — | j                   t        j                  |fvrt        d|› d| j                   › d�«      ‚y )NzSpecified proxy type (z') not compatible with current setting (ú))rB   r   r    rD   )r6   Úcompatible_proxys     r
   rA   z&Proxy._verify_proxy_type_compatibility.  sK   € Ø�>‰>¤)×"7Ñ"7Ð9IÐ!JÑJÜØ(Ð)9Ð(:Ð:aÐbf×bpÑbpÐaqÐqrÐsóð ð Kr   c                 ó‚   — d| j                   d   j                  «       i}g d¢}|D ]  }t        | |«      }|sŒ|||<   Œ |S )NrB   r   )
r<   r=   rM   rO   rP   rN   rQ   rR   rS   rT   )rB   Úlowerr'   )r6   Ú
proxy_capsÚproxiesÚproxyr,   s        r
   Úto_capabilitieszProxy.to_capabilities4  sW   € Ø! 4§>¡>°(Ñ#;×#AÑ#AÓ#CÐDˆ
ò
ˆð ò 	/ˆEÜ   uÓ-ˆJÚØ$.�
˜5Ò!ð	/ð Ðr   r3   )ÚreturnN)%r   r   r   r   r   r    rB   r<   r=   rM   rN   rO   rP   rQ   rR   rS   rT   r1   r   r[   r   rW   rX   rY   r   rZ   Ú	ssl_proxyr\   r]   r^   r_   r7   ÚpropertyrV   ÚsetterrA   rk   r	   r   r
   rK   rK   R   s  „ ñð ×%Ñ%€IØ€JØ€HØ€IØ€GØÐØ€HØ€JØ€MØ€MØ€Lñ ' |°Y×5IÑ5IÓJ€Kðñ % Z°×1AÑ1AÓB€Iðñ & k°9×3CÑ3CÓD€Jðñ $ I¨y×/?Ñ/?Ó@€Hðñ 0Ð0DÀiÇmÁmÓTÐðñ % Z°×1AÑ1AÓB€Iðñ ' |°Y×5EÑ5EÓF€Kðñ *¨/¸9×;KÑ;KÓL€Nðñ *¨/¸9×;KÑ;KÓL€Nðñ )¨¸×9IÑ9IÓJ€Mðó#9ðJ ñó ðð ×Ñòó ðòór   rK   )r   rE   r   r   r1   rK   r	   r   r
   ú<module>rp      s7   ðñ$  ã ÷8ñ 8÷?ñ ?÷6'ñ '÷0uò ur   