File: //usr/lib/python3.9/site-packages/pip/_vendor/distlib/__pycache__/compat.cpython-39.pyc
a
?�f�� � @ s d dl mZ d dlZd dlZd dlZzd dlZW n eyF dZY n0 ejd dk �r|d dlmZ e fZ
eZd dl
mZ d dlZd dlZddlmZ d dlmZmZmZmZmZ d d lmZmZmZm Z m!Z!m"Z"m#Z# d
d� Zd dl$Z$d dl$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z- e�r$d d
l$m.Z. d dl/Z/d dl0Z0d dl1Z2d dl3m3Z3 d dl4Z4e5Z5d dl6m7Z8 d dl6m9Z: da;dd� Z<�nd dl=mZ e>fZ
e>Zd dl=m?Z d dlZd dlZd dlZd dl@mZmZmZm<Z<mZmZmZmZm#Z# d dlAm&Z&mZm%Z%m Z m!Z!m)Z)m*Z*m+Z+m,Z,m-Z- e�r$d d
lAm.Z. d dlBm(Z(m'Z'm"Z" d dlCmDZ/ d dlAmEZ$ d dlFmDZ0 d dl2Z2d dlGm3Z3 d dlHmIZ4 eJZ5d dl6m:Z: e8Z8zd dlmKZKmLZL W n6 e�y� G dd� deM�ZLdddd�ZNdd� ZKY n0 zd dl
mOZP W n$ e�y G d d!� d!eQ�ZPY n0 zd d"lmRZR W n* e�yL ejSejTB dfd#d$�ZRY n0 d d%lUmVZW eXeWd&��rleWZVn,d d'lUmYZZ G d(d)� d)eZ�ZYG d*d+� d+eW�ZVzd d,l[m\Z\ W n e�y� d-d.� Z\Y n0 zd dl]Z]W n e�y� dd/lm]Z] Y n0 ze^Z^W n( e_�y$ d d0l`maZa d1d2� Z^Y n0 zejbZbejcZcW nF ed�y| e�e� �pRd3Zfefd4k�rdd5Zgnd6Zgd7d8� Zbd9d:� ZcY n0 zd d;lhmiZi W nF e�y� d d<ljmkZkmlZl d dlZe�md=�Znd>d?� Zod@dA� ZiY n0 zd dBlpmqZq W n e�y d dBlrmqZq Y n0 ejddC� dDk �r&e3� jsZsnd dElpmsZs zd dFltmuZu W n` e�y� d dGltmvZv zd dHlwmxZy W n e�y� dedJdK�ZyY n0 G dLdM� dMev�ZuY n0 zd dNlzm{Z{ W nD e�y� zd dNl|m{Z{ W n e�y� dfdOdP�Z{Y n0 Y n0 zd dQltm}Z} W n� e�y� zd dRl~mZ� W n e�yJ d dRl�mZ� Y n0 zd dSl�m�Z�m�Z�m�Z� W n e�yx Y n0 G dTdU� dUe��Z}Y n0 zd dVl�m�Z�m�Z� W nt e�y e�mdWej��Z�dXdY� Z�G dZd[� d[e��Z�dgd\d]�Z�G d^d_� d_e��Z�G d`da� dae��Z�G dbdc� dceQ�Z�Y n0 dS )h� )�absolute_importN� )�StringIO)�FileType� )�shutil)�urlparse�
urlunparse�urljoin�urlsplit�
urlunsplit)�urlretrieve�quote�unquote�url2pathname�pathname2url�ContentTooShortError� splittypec C s t | t�r| �d�} t| �S )N�utf-8)�
isinstance�unicode�encode�_quote)�s� r �>/usr/lib/python3.9/site-packages/pip/_vendor/distlib/compat.pyr s
r ) �Request�urlopen�URLError� HTTPError�HTTPBasicAuthHandler�HTTPPasswordMgr�HTTPHandler�HTTPRedirectHandler�build_opener)�HTTPSHandler)�
HTMLParser)�ifilter)�ifilterfalsec C s<