o
    ­}”e†  ã                
   @  sÄ  d Z 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 ddl	m
Z
 ddlm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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" zddl#Z#W n	 e$yw   Y n"w e#j% &d¡s‹e 'de#j%›d�ej(¡ ne#j)dk r™e$de#j%›d�ƒ‚dZ*dZ+eZdZ,e -e.¡ /eƒ ¡ ej0fd@dd„Z1[ej2dej3d d!� ej2d"ej4d d!� ej5fdAd&d'„Z6eƒ Z7dddd d d dd(dd)œ	dBd>d?„Z8dS )Cze
Python HTTP library with thread-safe connection pooling, file post support, user friendly, and more
é    )ÚannotationsN)ÚNullHandleré   )Ú
exceptions)Ú
_TYPE_BODY)ÚHTTPHeaderDict)Ú__version__)ÚHTTPConnectionPoolÚHTTPSConnectionPoolÚconnection_from_url)Ú_TYPE_FIELDSÚencode_multipart_formdata)ÚPoolManagerÚProxyManagerÚproxy_from_url)ÚBaseHTTPResponseÚHTTPResponse)Úmake_headers)ÚRetry)ÚTimeoutzOpenSSL zUurllib3 v2 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with z5. See: https://github.com/urllib3/urllib3/issues/3020)r   r   r   z5. See: https://github.com/urllib3/urllib3/issues/2168z(Andrey Petrov (andrey.petrov@shazow.net)ÚMIT)r	   r   r
   r   r   r   r   r   Úadd_stderr_loggerr   Údisable_warningsr   r   r   Úrequestr   ÚlevelÚintÚreturnú$logging.StreamHandler[typing.TextIO]c                 C  sF   t  t¡}t  ¡ }| t  d¡¡ | |¡ | | ¡ | dt¡ |S )z†
    Helper for quickly adding a StreamHandler to the logger. Useful for
    debugging.

    Returns the handler after adding it.
    z%%(asctime)s %(levelname)s %(message)sz,Added a stderr logging handler to logger: %s)	ÚloggingÚ	getLoggerÚ__name__ÚStreamHandlerÚsetFormatterÚ	FormatterÚ
addHandlerÚsetLevelÚdebug)r   ÚloggerÚhandler© r)   úY/Users/abhinavbhinder/Documents/map/venv/lib/python3.10/site-packages/urllib3/__init__.pyr   I   s   


r   ÚalwaysT)ÚappendÚdefaultÚcategoryútype[Warning]ÚNonec                 C  s   t  d| ¡ dS )z<
    Helper for quickly disabling all urllib3 warnings.
    ÚignoreN)ÚwarningsÚsimplefilter)r.   r)   r)   r*   r   j   s   r   é   ©	ÚbodyÚfieldsÚheadersÚpreload_contentÚdecode_contentÚredirectÚretriesÚtimeoutÚjsonÚmethodÚstrÚurlr6   ú_TYPE_BODY | Noner7   ú_TYPE_FIELDS | Noner8   útyping.Mapping[str, str] | Noner9   úbool | Noner:   r;   r<   úRetry | bool | int | Noner=   úTimeout | float | int | Noner>   útyping.Any | Noner   c       	         C  s    t j| |||||||||	|
d�S )aX  
    A convenience, top-level request method. It uses a module-global ``PoolManager`` instance.
    Therefore, its side effects could be shared across dependencies relying on it.
    To avoid side effects create a new ``PoolManager`` instance and use it instead.
    The method does not accept low-level ``**urlopen_kw`` keyword arguments.
    r5   )Ú_DEFAULT_POOLr   )r?   rA   r6   r7   r8   r9   r:   r;   r<   r=   r>   r)   r)   r*   r   t   s   õr   )r   r   r   r   )r.   r/   r   r0   )r?   r@   rA   r@   r6   rB   r7   rC   r8   rD   r9   rE   r:   rE   r;   rE   r<   rF   r=   rG   r>   rH   r   r   )9Ú__doc__Ú
__future__r   r   Útypingr2   r   Ú r   Z_base_connectionr   Ú_collectionsr   Ú_versionr   Úconnectionpoolr	   r
   r   Úfilepostr   r   Úpoolmanagerr   r   r   Úresponser   r   Zutil.requestr   Z
util.retryr   Zutil.timeoutr   ÚsslÚImportErrorÚOPENSSL_VERSIONÚ
startswithÚwarnZNotOpenSSLWarningÚOPENSSL_VERSION_INFOÚ
__author__Ú__license__Ú__all__r   r    r$   ÚDEBUGr   r3   ÚSecurityWarningÚInsecurePlatformWarningÚHTTPWarningr   rI   r   r)   r)   r)   r*   Ú<module>   sr    ÿÿü
ÿÿÿô