File: //lib64/python3.9/urllib/__pycache__/request.cpython-39.opt-2.pyc
a
    �DOg�� �                   @   s�  d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl	Z	d dl
Z
d dlZd dlZd dl
Z
d dlZd dlZd dlZd dlmZmZmZ d dlmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z' d dl(m)Z)m*Z* zd dl+Z+W n e,�y   dZ-Y n0 dZ-g d�Z.dej/dd	�  Z0da1de
j2fddddd
�dd�Z3d
d� Z4g Z5d�dd�Z6dd� Z7e	�8de	j9�Z:dd� Z;G dd� d�Z<G dd� d�Z=dd� Z>G dd� d�Z?G dd� de?�Z@G d d!� d!e?�ZAG d"d#� d#e?�ZBd$d%� ZCG d&d'� d'e?�ZDG d(d)� d)�ZEG d*d+� d+eE�ZFG d,d-� d-eF�ZGG d.d/� d/�ZHG d0d1� d1eHe?�ZIG d2d3� d3eHe?�ZJejKZLG d4d5� d5�ZMG d6d7� d7e?eM�ZNG d8d9� d9e?eM�ZOG d:d;� d;e?�ZPG d<d=� d=eP�ZQeRejSd>��r�G d?d@� d@eP�ZTe.�Ud@� G dAdB� dBe?�ZVG dCdD� dDe?�ZWdEdF� ZXdGdH� ZYG dIdJ� dJe?�ZZdKdL� Z[G dMdN� dNe?�Z\G dOdP� dPe\�Z]G dQdR� dRe?�Z^dSZ_ej`dTk�r�d dUlambZbmcZc ndVdW� ZbdXdY� Zci ZdG dZd[� d[�ZeG d\d]� d]ee�Zfdagd^d_� Zhdaid`da� Zjdakdbdc� Zldamddde� ZnG dfdg� dg�Zodhdi� Zpd�djdk�Zqdldm� Zrdndo� Zsejtdpk�rPd dqlumvZvmwZw drds� Zxdtdu� Zydvdw� Zzdxdy� Z{n6ej`dTk�r~dzd{� Z|d|dy� Z{d}d~� Z}ddw� ZznepZ{eqZzdS )��    N)�URLError�	HTTPError�ContentTooShortError)�urlparse�urlsplit�urljoin�unwrap�quote�unquote�
_splittype�
_splithost�
_splitport�
_splituser�_splitpasswd�
_splitattr�_splitquery�_splitvalue�	_splittag�	_to_bytes�unquote_to_bytes�
urlunparse)�
addinfourl�addclosehookFT)!�Request�OpenerDirector�BaseHandler�HTTPDefaultErrorHandler�HTTPRedirectHandler�HTTPCookieProcessor�ProxyHandler�HTTPPasswordMgr�HTTPPasswordMgrWithDefaultRealm�HTTPPasswordMgrWithPriorAuth�AbstractBasicAuthHandler�HTTPBasicAuthHandler�ProxyBasicAuthHandler�AbstractDigestAuthHandler�HTTPDigestAuthHandler�ProxyDigestAuthHandler�HTTPHandler�FileHandler�
FTPHandler�CacheFTPHandler�DataHandler�UnknownHandler�HTTPErrorProcessor�urlopen�install_opener�build_opener�pathname2url�url2pathname�
getproxies�urlretrieve�
urlcleanup�	URLopener�FancyURLopenerz%d.%d�   )�cafile�capath�	cadefault�contextc          
      C   s�   |s|s|rfdd l }|�dtd� |d ur2td��ts>td��tjtjj||d�}t	|d�}t
|�}	n0|r~t	|d�}t
|�}	ntd u r�t
�  a}	nt}	|	�| ||�S )Nr   zJcafile, capath and cadefault are deprecated, use a custom context instead.r:   zDYou can't pass both context and any of cafile, capath, and cadefaultzSSL support not available)r;   r<