MINI MINI MANI MO

Path : /usr/lib64/python3.6/urllib/__pycache__/
File Upload :
Current File : //usr/lib64/python3.6/urllib/__pycache__/parse.cpython-36.opt-2.pyc

3


 \@sBddlZddlZddlZdddddddd	d
ddd
dddddddddgZdddddddddd d!d"d#d$d%d&d'd(d)gZdddddd*dddd!dd d+d"d#d$d,d&d'd%d-d.d/d(d)gZddd0d"dddd d#d$d1d2d!d%d3gZdd0d4d5d*ddd+d1d2g
Zdddddd d!dd#d$d1d2gZddd0ddd5dddd d+dd"g
Z	d6Z
d7ZiZd8d9Z
d:Zd;Zd<d=Zeefd>d?Zeefd@dAZdBdCZGdDdEdEeZGdFdGdGeZGdHdIdIeZGdJdKdKeeZGdLdMdMeeZddNlmZeddOZeddPZeddQZdRe_dSej_dTej _dUe_dVej!_dWej"_dXej#_dYej$_dZej _d[e_ej!jej!_ej"jej"_ej#jej#_d\ej%_ej$jej$_ej jej _eZ&Gd]ddeeZ'Gd^ddeeZ(Gd_ddeeZ)Gd`ddeeZ*GdaddeeZ+GdbddeeZ,dcddZ-e-[-ddfdZ.dgdhZ/ddidjZ0ddkdZ1dldZ2dmdZ3ddndZ4dodZ5dpZ6da7dqdZ8ej9drZ:ddudZ;ddwd	Z<ddxd
Z=ddydZ>e?dzZ@eAe@ZBiZCGd{d|d|ejDZEdd~dZFdddZGddd
ZHdvdddeGfddZIddZJddZKdaLddZMdaNddZOddZPddZQdaRddZSdddZTddZUddZVddZWddZXdS)Nurlparse
urlunparseurljoin	urldefragurlsplit
urlunsplit	urlencodeparse_qs	parse_qslquote
quote_plusquote_from_bytesunquoteunquote_plusunquote_to_bytesDefragResultParseResultSplitResultDefragResultBytesParseResultBytesSplitResultBytesZftphttpZgopherZnntpZimapZwaisfileZhttpsZshttpZmmsZprosperoZrtspZrtspuZsftpZsvnzsvn+sshZwsZwssZtelnetZsnewsZrsyncZnfsZgitzgit+sshZhdlZsipZsipsZtelZmailtoZnewszAabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+-.cCstjtjdS)N)_parse_cacheclear
_safe_quotersrr$/usr/lib64/python3.6/urllib/parse.pyclear_cacheSsr asciistrictcCs|S)Nr)objrrr_noopbsr$cCs|j||S)N)encode)r#encodingerrorsrrr_encode_resultesr(cstfdd|DS)Nc3s"|]}|r|jndVqdS)rN)decode).0x)r&r'rr	<genexpr>ksz_decode_args.<locals>.<genexpr>)tuple)argsr&r'r)r&r'r_decode_argsisr/cGsZt|dt}x.|ddD]}|rt|t|krtdqW|rL|tfSt|tfS)Nrz$Cannot mix str and non-str arguments)
isinstancestr	TypeErrorr$r/r()r.Z	str_inputargrrr_coerce_argsms
r5c@seZdZfZdddZdS)_ResultMixinStrr!r"cs|jfdd|DS)Nc3s|]}|jVqdS)N)r%)r*r+)r&r'rrr,sz)_ResultMixinStr.encode.<locals>.<genexpr>)_encoded_counterpart)selfr&r'r)r&r'rr%sz_ResultMixinStr.encodeN)r!r")__name__
__module____qualname__	__slots__r%rrrrr6~sr6c@seZdZfZdddZdS)_ResultMixinBytesr!r"cs|jfdd|DS)Nc3s|]}|jVqdS)N)r))r*r+)r&r'rrr,sz+_ResultMixinBytes.decode.<locals>.<genexpr>)_decoded_counterpart)r8r&r'r)r&r'rr)sz_ResultMixinBytes.decodeN)r!r")r9r:r;r<r)rrrrr=sr=c@s@eZdZfZeddZeddZeddZeddZd	S)
_NetlocResultMixinBasecCs
|jdS)Nr)	_userinfo)r8rrrusernamesz_NetlocResultMixinBase.usernamecCs
|jdS)Nr0)r@)r8rrrpasswordsz_NetlocResultMixinBase.passwordcCsD|jd}|sdSt|tr dnd}|j|\}}}|j||S)Nr%%)	_hostinfor1r2	partitionlower)r8hostnameZ	separatorZpercentZzonerrrrHs
z_NetlocResultMixinBase.hostnamecCs@|jd}|dk	r<t|d}d|ko.dkns<td|S)Nr0
rizPort out of range 0-65535)rEint
ValueError)r8portrrrrLs

z_NetlocResultMixinBase.portN)	r9r:r;r<propertyrArBrHrLrrrrr?s
r?c@s(eZdZfZeddZeddZdS)_NetlocResultMixinStrcCsD|j}|jd\}}}|r4|jd\}}}|s<d}nd}}||fS)N@:)netloc
rpartitionrF)r8rQuserinfo	have_infohostinforA
have_passwordrBrrrr@sz_NetlocResultMixinStr._userinfocCsl|j}|jd\}}}|jd\}}}|rL|jd\}}}|jd\}}}n|jd\}}}|sdd}||fS)NrO[]rP)rQrRrF)r8rQ_rUhave_open_br	bracketedrHrLrrrrEsz_NetlocResultMixinStr._hostinfoN)r9r:r;r<rMr@rErrrrrNsrNc@s(eZdZfZeddZeddZdS)_NetlocResultMixinBytescCsD|j}|jd\}}}|r4|jd\}}}|s<d}nd}}||fS)N@:)rQrRrF)r8rQrSrTrUrArVrBrrrr@sz!_NetlocResultMixinBytes._userinfocCsl|j}|jd\}}}|jd\}}}|rL|jd\}}}|jd\}}}n|jd\}}}|sdd}||fS)Nr][]r^)rQrRrF)r8rQrYrUrZr[rHrLrrrrEsz!_NetlocResultMixinBytes._hostinfoN)r9r:r;r<rMr@rErrrrr\sr\)
namedtuplezurl fragmentz!scheme netloc path query fragmentz(scheme netloc path params query fragmentz
DefragResult(url, fragment)

A 2-tuple that contains the url without fragment identifier and the fragment
identifier as a separate argument.
z$The URL with no fragment identifier.z
Fragment identifier separated from URL, that allows indirect identification of a
secondary resource by reference to a primary resource and additional identifying
information.
z
SplitResult(scheme, netloc, path, query, fragment)

A 5-tuple that contains the different components of a URL. Similar to
ParseResult, but does not split params.
z%Specifies URL scheme for the request.z0
Network location where the request is made to.
z@
The hierarchical path, such as the path to a file to download.
z
The query component, that contains non-hierarchical data, that along with data
in path component, identifies a resource in the scope of URI's scheme and
network location.
z
Fragment identifier, that allows indirect identification of a secondary resource
by reference to a primary resource and additional identifying information.
zr
ParseResult(scheme, netloc, path, params,  query, fragment)

A 6-tuple that contains components of a parsed URL.
z
Parameters for last path element used to dereference the URI in order to provide
access to perform some operation on the resource.
c@seZdZfZddZdS)rcCs |jr|jd|jS|jSdS)N#)fragmenturl)r8rrrgeturl8szDefragResult.geturlN)r9r:r;r<rerrrrr6sc@seZdZfZddZdS)rcCst|S)N)r)r8rrrre@szSplitResult.geturlN)r9r:r;r<rerrrrr>sc@seZdZfZddZdS)rcCst|S)N)r)r8rrrreEszParseResult.geturlN)r9r:r;r<rerrrrrCsc@seZdZfZddZdS)rcCs |jr|jd|jS|jSdS)N#)rcrd)r8rrrreKszDefragResultBytes.geturlN)r9r:r;r<rerrrrrIsc@seZdZfZddZdS)rcCst|S)N)r)r8rrrreSszSplitResultBytes.geturlN)r9r:r;r<rerrrrrQsc@seZdZfZddZdS)rcCst|S)N)r)r8rrrreXszParseResultBytes.geturlN)r9r:r;r<rerrrrrVscCs8ttfttfttff}x|D]\}}||_||_qWdS)N)rrrrrrr7r>)Z
_result_pairsZ_decodedZ_encodedrrr_fix_result_transcoding\s
rgTc
Csft||\}}}t|||}|\}}}}}|tkrHd|krHt|\}}nd}t||||||}	||	S)N;r)r5ruses_params_splitparamsr)
rdschemeallow_fragments_coerce_resultZsplitresultrQqueryrcparamsresultrrrriscCsRd|kr,|jd|jd}|dkr6|dfSn
|jd}|d|||ddfS)N/rhrrr0)findrfind)rdirrrrjys

rjcCsLt|}x*dD]"}|j||}|dkrt||}qW|||||dfS)Nz/?#r)lenrrmin)rdstartdelimcZwdelimrrr_splitnetlocs
rzc
CsXt||\}}}t|}|||t|t|f}tj|d}|rF||StttkrXtd}}}|jd}	|	dkr|d|	dkrH|d|	j	}||	dd}|dddkrt
|d\}}d|krd	|ksd	|krd|krtd
|od|kr|jdd\}}d|kr(|jdd\}}t
|||||}
|
t|<||
Sxd|d|	D]}|tkrVPqVW||	dd}|std
d|Dr|d|	j	|}}|dddkrt
|d\}}d|krd	|ksd	|krd|krtd
|rd|kr|jdd\}}d|kr8|jdd\}}t
|||||}
|
t|<||
S)NrrPrrr0z//rWrXzInvalid IPv6 URLrb?css|]}|dkVqdS)
0123456789Nr)r*ryrrrr,szurlsplit.<locals>.<genexpr>)r5booltypergetruMAX_CACHE_SIZEr rrrGrzrKsplitrscheme_charsany)
rdrkrlrmkeycachedrQrnrcrtvryrestrrrrsX




cCs<t|\}}}}}}}|r&d||f}|t|||||fS)Nz%s;%s)r5r)
componentsrkrQrdrornrcrmrrrrscCst|\}}}}}}|s4|r`|tkr`|dddkr`|rP|dddkrPd|}d|pXd|}|rp|d|}|r|d|}|r|d|}||S)	Nr{z//r0rqrrPr|rb)r5uses_netloc)rrkrQrdrnrcrmrrrrs cCs|s|S|s|St||\}}}t|d|\}}}}}}	t|||\}
}}}
}}|
|ks`|
tkrh||S|
tkr|r|t|
|||
||fS|}|r|
r|}|}
|s|}|t|
|||
||fS|jd}|ddkr|d=|dddkr|jd}n(||jd}td|dd|dd	<g}xX|D]P}|dkrdy|jWntk
r`YnXn|dkrtq0n
|j	|q0W|d
dkr|j	d|t|
|dj
|pd|
||fS)Nrrqr0...rrrr)rr)r5r
uses_relativerrrfilterpop
IndexErrorappendjoin)baserdrlrmZbschemeZbnetlocZbpathZbparamsZbqueryZ	bfragmentrkrQpathrornrcZ
base_partsZsegmentsZ
resolved_pathZsegrrrrsT






c	CsTt|\}}d|kr>t|\}}}}}}t|||||df}nd}|}|t||S)Nrbr)r5rrr)	rdrmsnpaqZfragZdefragrrrr%sZ0123456789ABCDEFabcdefcCs|s|jdSt|tr"|jd}|jd}t|dkr<|S|dg}|j}tdkrbddtDaxb|ddD]R}y(|t|dd||ddWqptk
r|d||YqpXqpWdj	|S)	Nzutf-8rDr0rcSs4i|],}tD]"}tt||dg||jqqS))_hexdigbytesrJr%)r*rbrrr
<dictcomp>Ksz$unquote_to_bytes.<locals>.<dictcomp>r{)
rr1r2r%rur
_hextobyterKeyErrorr)stringbitsresritemrrrr8s*



z([-]+)utf-8replacecCsd|kr|j|S|dkrd}|dkr*d}tj|}|dg}|j}x@tdt|dD],}|t||j|||||dqVWdj|S)NrCzutf-8rrr0r{r)r_asciirerrangerurr)r)rr&r'rrrrtrrrrXs


Fc
CsPi}t||||||d}x2|D]*\}}	||kr>||j|	q|	g||<qW|S)N)r&r'max_num_fields)r
r)
qskeep_blank_valuesstrict_parsingr&r'rZ
parsed_resultpairsnamevaluerrrr	rscCst|\}}|dk	r<d|jd|jd}||kr<tddd|jdD}g}	x|D]}
|
rl|rlqZ|
jdd}t|dkr|rtd	|
f|rZ|jd
nqZt|ds|rZ|djdd
}t|||d}||}|djdd
}
t|
||d}
||
}
|	j||
fqZW|	S)Nr0&rhzMax number of fields exceededcSs g|]}|jdD]}|qqS)rh)r)r*s1s2rrr
<listcomp>szparse_qsl.<locals>.<listcomp>=r{zbad query field: %rrr+ )r&r')r5countrKrrurrr)rrrr&r'rrm
num_fieldsrrZ
name_valueZnvrrrrrr
s4
cCs|jdd}t|||S)Nrr)rr)rr&r'rrrrssAABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_.-c@s$eZdZddZddZddZdS)QuotercCstj||_dS)N)_ALWAYS_SAFEunionsafe)r8rrrr__init__szQuoter.__init__cCsd|jjt|fS)Nz<%s %r>)	__class__r9dict)r8rrr__repr__szQuoter.__repr__cCs(||jkrt|ndj|}|||<|S)Nz%{:02X})rchrformat)r8rrrrr__missing__szQuoter.__missing__N)r9r:r;rrrrrrrrsrrqcCsbt|tr8|s|S|dkrd}|dkr*d}|j||}n |dk	rHtd|dk	rXtdt||S)Nzutf-8r"z,quote() doesn't support 'encoding' for bytesz*quote() doesn't support 'errors' for bytes)r1r2r%r3r
)rrr&r'rrrrs
cCsdt|trd|ks$t|tr2d|kr2t||||St|trBd}nd}t|||||}|jddS)Nr r)r1r2rrr)rrr&r'Zspacerrrr's
cst|ttfstd|sdSt|tr6|jdd}ntdd|D}|jt|s^|jSyt	|Wn&t
k
rt|jt	|<YnXdj
fdd|DS)Nz!quote_from_bytes() expected bytesrr!ignorecSsg|]}|dkr|qS)r)r*ryrrrrEsz$quote_from_bytes.<locals>.<listcomp>csg|]}|qSrr)r*char)quoterrrrLs)r1r	bytearrayr3r2r%rstrip_ALWAYS_SAFE_BYTESr)rrr__getitem__r)Zbsrr)rrr
8s
cCst|dr|j}nRy t|r2t|dtr2tWn0tk
rdtj\}}}tdj|YnXg}	|sxr|D]j\}
}t|
t	r||
|}
n|t
|
|||}
t|t	r|||}n|t
||||}|	j|
d|qtWn,x(|D]\}
}t|
t	r||
|}
n|t
|
|||}
t|t	rL|||}|	j|
d|qt|t
rz|||||}|	j|
d|qyt|}Wn:tk
r|t
||||}|	j|
d|YqXxJ|D]B}
t|
t	r||
|}
n|t
|
|||}
|	j|
d|
qWqWdj|	S)Nitemsrz1not a valid non-string sequence or mapping objectrr)
hasattrrrur1r-r3sysexc_infowith_tracebackrr2rr)rnZdoseqrr&r'Z	quote_viaZtyZvatblkrr+ZeltrrrrNsP





cCsJt|trFy|jdj}Wn(tk
rDtdt|dYnX|S)NASCIIzURL z contains non-ASCII characters)r1r2r%r)UnicodeErrorrepr)rdrrrto_bytess
rcCs`t|j}|dddkr<|dddkr<|ddj}|dddkr\|ddj}|S)Nr0<>zURL:rr)r2strip)rdrrrunwraps rcCsDtdkrtjdtjatj|}|r<|j\}}|j|fSd|fS)Nz
([^/:]+):(.*))	_typeprogrecompileDOTALLmatchgroupsrG)rdrrkdatarrr	splittypes
rcCsXtdkrtjdtjatj|}|rP|j\}}|rH|ddkrHd|}||fSd|fS)Nz//([^/#?]*)(.*)rrq)	_hostprogrrrrr)rdrZ	host_portrrrr	splithosts
rcCs |jd\}}}|r|nd|fS)NrO)rR)hostuserrxrrr	splitusersrcCs |jd\}}}||r|ndfS)NrP)rF)rrxZpasswdrrrsplitpasswdsrcCsDtdkrtjdtjatj|}|r<|j\}}|r<||fS|dfS)Nz(.*):([0-9]*)$)	_portprogrrrrr)rrrLrrr	splitports
rr0cCsT|jd\}}}|s|}n2|rLyt|}Wntk
rBd}YnX||fS||fS)NrP)rRrJrK)rZdefportrxrLZnportrrr
splitnports
rcCs$|jd\}}}|r||fS|dfS)Nr|)rR)rdrrxrnrrr
splitquerysrcCs$|jd\}}}|r||fS|dfS)Nrb)rR)rdrrxtagrrrsplittagsrcCs|jd}|d|ddfS)Nrhrr0)r)rdZwordsrrr	splitattrs
rcCs |jd\}}}||r|ndfS)Nr)rF)attrrxrrrr
splitvaluesr)rT)r)rT)T)rr)FFrrN)FFrrN)rr)rqNN)rNN)rqr)r)Yrrcollections__all__rrriZnon_hierarchicalZ
uses_queryZ
uses_fragmentrrrr Z_implicit_encodingZ_implicit_errorsr$r(r/r5objectr6r=r?rNr\raZ_DefragResultBaseZ_SplitResultBaseZ_ParseResultBase__doc__rdrcrkrQrrnroZ
ResultBaserrrrrrrgrrjrzrrrrrrrrrrrr	r
r	frozensetrrrrdefaultdictrrrr
rrrrrrrrrrrrrrrrrrrr<module>s




!


	

8
E


&
;
	
,

O



OHA YOOOO