ROOTPLOIT
Server: LiteSpeed
System: Linux server71.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64
User: niphet (1079)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: //lib64/python3.6/urllib/__pycache__/parse.cpython-36.opt-2.pyc
3

ie@sddlZddlZddlZddlZddlZdddddddd	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
Z	dddddd d!dd#d$d1d2gZ
ddd0ddd5dddd d+dd"g
Zd6Zd7Z
d8d9d:gZd;ZiZd<d=Zd>Zd?Zd@dAZeefdBdCZeefdDdEZdFdGZGdHdIdIeZGdJdKdKeZGdLdMdMeZGdNdOdOeeZGdPdQdQeeZddRlmZeddSZeddTZ eddUZ!dVe_"dWej#_"dXej$_"dYe _"dZe j%_"d[e j&_"d\e j'_"d]e j(_"d^e j$_"d_e!_"e j%j"e!j%_"e j&j"e!j&_"e j'j"e!j'_"d`e!j)_"e j(j"e!j(_"e j$j"e!j$_"eZ*GdaddeeZ+Gdbdde eZ,Gdcdde!eZ-GddddeeZ.Gdedde eZ/Gdfdde!eZ0dgdhZ1e1[1ddjdZ2dkdlZ3ddmdnZ4dodpZ5dqdrZ6dsdtZ7dudvZ8ddwdZ9dxdZ:dydZ;ddzdZ<d{dZ=d|Z>da?d}dZ@ejAd~ZBdddZCddd	ZDGdddeEZFdZGdaHddd
ZIdddZJeKdZLeMeLZNiZOGdddejPZQdddZRdddZSddd
ZTddddeSfddZUddZVddZWdaXddZYdaZddZ[ddZ\ddZ]da^ddZ_dddZ`ddZaddZbddZcddZddS)Nurlparse
urlunparseurljoin	urldefragurlsplit
urlunsplit	urlencodeparse_qs	parse_qslquote
quote_plusquote_from_bytesunquoteunquote_plusunquote_to_bytesDefragResultParseResultSplitResultDefragResultBytesParseResultBytesSplitResultBytesZftphttpZgopherZnntpZimapZwaisfileZhttpsZshttpZmmsZprosperoZrtspZrtspuZsftpZsvnzsvn+sshZwsZwssZtelnetZsnewsZrsyncZnfsZgitzgit+sshZhdlZsipZsipsZtelZmailtoZnewszAabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+-.z!	

 	

cCstjtjdS)N)_parse_cacheclear
_safe_quotersr!r!$/usr/lib64/python3.6/urllib/parse.pyclear_cache`sr#asciistrictcCs|S)Nr!)objr!r!r"_nooposr'cCs|j||S)N)encode)r&encodingerrorsr!r!r"_encode_resultrsr+cstfdd|DS)Nc3s"|]}|r|jndVqdS)rN)decode).0x)r)r*r!r"	<genexpr>xsz_decode_args.<locals>.<genexpr>)tuple)argsr)r*r!)r)r*r"_decode_argsvsr2cGsZt|dt}x.|ddD]}|rt|t|krtdqW|rL|tfSt|tfS)Nrz$Cannot mix str and non-str arguments)
isinstancestr	TypeErrorr'r2r+)r1Z	str_inputargr!r!r"_coerce_argszs
r8c@seZdZfZdddZdS)_ResultMixinStrr$r%cs|jfdd|DS)Nc3s|]}|jVqdS)N)r()r-r.)r)r*r!r"r/sz)_ResultMixinStr.encode.<locals>.<genexpr>)_encoded_counterpart)selfr)r*r!)r)r*r"r(sz_ResultMixinStr.encodeN)r$r%)__name__
__module____qualname__	__slots__r(r!r!r!r"r9sr9c@seZdZfZdddZdS)_ResultMixinBytesr$r%cs|jfdd|DS)Nc3s|]}|jVqdS)N)r,)r-r.)r)r*r!r"r/sz+_ResultMixinBytes.decode.<locals>.<genexpr>)_decoded_counterpart)r;r)r*r!)r)r*r"r,sz_ResultMixinBytes.decodeN)r$r%)r<r=r>r?r,r!r!r!r"r@sr@c@s@eZdZfZeddZeddZeddZeddZd	S)
_NetlocResultMixinBasecCs
|jdS)Nr)	_userinfo)r;r!r!r"usernamesz_NetlocResultMixinBase.usernamecCs
|jdS)Nr3)rC)r;r!r!r"passwordsz_NetlocResultMixinBase.passwordcCsD|jd}|sdSt|tr dnd}|j|\}}}|j||S)Nr%%)	_hostinfor4r5	partitionlower)r;hostname	separatorZpercentZzoner!r!r"rKs
z_NetlocResultMixinBase.hostnamecCs@|jd}|dk	r<t|d}d|ko.dkns<td|S)Nr3
rizPort out of range 0-65535)rHint
ValueError)r;portr!r!r"rPs

z_NetlocResultMixinBase.portN)	r<r=r>r?propertyrDrErKrPr!r!r!r"rBs
rBc@s(eZdZfZeddZeddZdS)_NetlocResultMixinStrcCsD|j}|jd\}}}|r4|jd\}}}|s<d}nd}}||fS)N@:)netloc
rpartitionrI)r;rUuserinfo	have_infohostinforD
have_passwordrEr!r!r"rCsz_NetlocResultMixinStr._userinfocCsl|j}|jd\}}}|jd\}}}|rL|jd\}}}|jd\}}}n|jd\}}}|sdd}||fS)NrS[]rT)rUrVrI)r;rU_rYhave_open_br	bracketedrKrPr!r!r"rHsz_NetlocResultMixinStr._hostinfoN)r<r=r>r?rQrCrHr!r!r!r"rRsrRc@s(eZdZfZeddZeddZdS)_NetlocResultMixinBytescCsD|j}|jd\}}}|r4|jd\}}}|s<d}nd}}||fS)N@:)rUrVrI)r;rUrWrXrYrDrZrEr!r!r"rCsz!_NetlocResultMixinBytes._userinfocCsl|j}|jd\}}}|jd\}}}|rL|jd\}}}|jd\}}}n|jd\}}}|sdd}||fS)Nra[]rb)rUrVrI)r;rUr]rYr^r_rKrPr!r!r"rHsz!_NetlocResultMixinBytes._hostinfoN)r<r=r>r?rQrCrHr!r!r!r"r`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)r;r!r!r"geturlEszDefragResult.geturlN)r<r=r>r?rir!r!r!r"rCsc@seZdZfZddZdS)rcCst|S)N)r)r;r!r!r"riMszSplitResult.geturlN)r<r=r>r?rir!r!r!r"rKsc@seZdZfZddZdS)rcCst|S)N)r)r;r!r!r"riRszParseResult.geturlN)r<r=r>r?rir!r!r!r"rPsc@seZdZfZddZdS)rcCs |jr|jd|jS|jSdS)N#)rgrh)r;r!r!r"riXszDefragResultBytes.geturlN)r<r=r>r?rir!r!r!r"rVsc@seZdZfZddZdS)rcCst|S)N)r)r;r!r!r"ri`szSplitResultBytes.geturlN)r<r=r>r?rir!r!r!r"r^sc@seZdZfZddZdS)rcCst|S)N)r)r;r!r!r"rieszParseResultBytes.geturlN)r<r=r>r?rir!r!r!r"rcscCs8ttfttfttff}x|D]\}}||_||_qWdS)N)rrrrrrr:rA)Z
_result_pairsZ_decodedZ_encodedr!r!r"_fix_result_transcodingis
rkTc
Csft||\}}}t|||}|\}}}}}|tkrHd|krHt|\}}nd}t||||||}	||	S)N;r)r8ruses_params_splitparamsr)
rhschemeallow_fragments_coerce_resultZsplitresultrUqueryrgparamsresultr!r!r"rvscCsRd|kr,|jd|jd}|dkr6|dfSn
|jd}|d|||ddfS)N/rlrrr3)findrfind)rhir!r!r"rns

rncCsLt|}x*dD]"}|j||}|dkrt||}qW|||||dfS)Nz/?#r)lenrvmin)rhstartdelimcZwdelimr!r!r"_splitnetlocs
r~cCs|stdd|DrdSddl}|jdd}|jdd}|jdd}|jdd}|jd	|}||krndSx(d
D] }||krttd|dd
qtWdS)Ncss|]}t|dkVqdS)N)ord)r-r}r!r!r"r/sz_checknetloc.<locals>.<genexpr>rrSrrTrf?NFKCz/?#@:znetloc 'z' contains invalid z#characters under NFKC normalization)anyunicodedatareplace	normalizerO)rUrnZnetloc2r}r!r!r"_checknetlocs
rcCsxtD]}|j|d}qW|S)Nr)_UNSAFE_URL_BYTES_TO_REMOVEr)rhbr!r!r"_remove_unsafe_bytes_from_urls
rcCst|jdd}|jd\}}}|rX|r.td|jd\}}}|rh|jdrhtdn|jd\}}}t|dS)NrSr[zInvalid IPv6 URLr\rT)rVrIrO
startswith_check_bracketed_host)rUZhostname_and_portZbefore_bracketr^r_rKr]rPr!r!r"_check_bracketed_netlocs
rcCsB|jdr tjd|s>tdntj|}t|tjr>tddS)Nvz\Av[a-fA-F0-9]+\..+\ZzIPvFuture address is invalidz%An IPv4 address cannot be in brackets)rrematchrO	ipaddressZ
ip_addressr4ZIPv4Address)rKZipr!r!r"rs


rc
Cst||\}}}t|}t|}|jt}|jt}t|}|||t|t|f}tj|d}|rj||St	tt
kr|td}}}|jd}	|	dkr|d|	dkr~|d|	j
}||	dd}|dddkrt|d\}}d|kod	|ksd	|krd|krtd
|r<d|kr<|jdd\}}d|krV|jdd\}}t|t|||||}
|
t|<||
Sxd|d|	D]}|tkrPqW||	dd}|std
d|Dr|d|	j
|}}|dddkrPt|d\}}d|krd	|ks,d	|kr4d|kr4td
d|krPd	|krPt||rpd|krp|jdd\}}d|kr|jdd\}}t|t|||||}
|
t|<||
S)NrrTrrr3rz//r[r\zInvalid IPv6 URLrfrcss|]}|dkVqdS)
0123456789Nr!)r-r}r!r!r"r/szurlsplit.<locals>.<genexpr>)r8rlstrip_WHATWG_C0_CONTROL_OR_SPACEstripbooltypergetryMAX_CACHE_SIZEr#rvrJr~rOsplitrrscheme_charsrr)
rhrorprqkeycachedrUrrrgrxrr}restr!r!r"rsh






cCs<t|\}}}}}}}|r&d||f}|t|||||fS)Nz%s;%s)r8r)
componentsrorUrhrsrrrgrqr!r!r"rscCst|\}}}}}}|s4|r`|tkr`|dddkr`|rP|dddkrPd|}d|pXd|}|rp|d|}|r|d|}|r|d|}||S)	Nrz//r3rurrTrrf)r8uses_netloc)rrorUrhrrrgrqr!r!r"rs 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)Nrrur3...rrrr)rr)r8r
uses_relativerrrfilterpop
IndexErrorappendjoin)baserhrprqZbschemeZbnetlocZbpathZbparamsZbqueryZ	bfragmentrorUpathrsrrrgZ
base_partsZsegmentsZ
resolved_pathZsegr!r!r"r*sT






c	CsTt|\}}d|kr>t|\}}}}}}t|||||df}nd}|}|t||S)Nrfr)r8rrr)	rhrqsrpaqZfragZdefragr!r!r"rosZ0123456789ABCDEFabcdefcCs|s|jdSt|tr"|jd}|jd}t|dkr<|S|dg}|j}tdkrbddtDaxb|ddD]R}y(|t|dd||ddWqptk
r|d||YqpXqpWdj	|S)	Nzutf-8rGr3rcSs4i|],}tD]"}tt||dg||jqqS))_hexdigbytesrNr()r-rrr!r!r"
<dictcomp>sz$unquote_to_bytes.<locals>.<dictcomp>r)
rr4r5r(ryr
_hextobyterKeyErrorr)stringbitsresritemr!r!r"rs*



z([-]+)utf-8rcCsd|kr|j|S|dkrd}|dkr*d}tj|}|dg}|j}x@tdt|dD],}|t||j|||||dqVWdj|S)NrFzutf-8rrr3rr)r_asciirerrangeryrr,r)rr)r*rrrrxr!r!r"rs


Fc	CsRi}t|||||||d}x2|D]*\}	}
|	|kr@||	j|
q |
g||	<q W|S)N)r)r*max_num_fieldsrL)r
r)qskeep_blank_valuesstrict_parsingr)r*rrLZ
parsed_resultpairsnamevaluer!r!r"r	sc@seZdZdS)_QueryStringSeparatorWarningN)r<r=r>r!r!r!r"rsrz/etc/python/urllib.cfgcCst|\}}t|tr |jd}|s6t|ttfrF|dk	rFtdt}|dkrVt}d}	|dkrvtj	j
|	}d}
|dkrytt}Wnt
k
rYnJX|:ddl}|jdd&d}
|
j||
j
d|	dd	}|aWdQRXt}
|dkrd
|krddlm}|d,tddd}n:|dkr,|}n*t|dkrVt|	d|
ddd|dk	r||krd|jd|jd
}nd|j|}||krtd||krdd|jdD}ndd|j|D}g}x|D]}|r|rq|jd d}t|dkr>|r(td!|f|r|jd"nqt|dsR|r|djd#d$}t|||d%}||}|djd#d$}t|||d%}||}|j||fqW|S)-Nr$z*Separator must be of type string or bytes.ZPYTHON_URLLIB_QS_SEPARATORzenvironment variablerrf)Z
interpolationZcomment_prefixesr	)Zfallbackrl)warnz4The default separator of urllib.parse.parse_qsl and z1parse_qs was changed to '&' to avoid a web cache z"poisoning issue (CVE-2021-23336). z4By default, semicolons no longer act as query field zseparators. z3See https://access.redhat.com/articles/5860431 for z
more details.r)
stacklevel&Zlegacyr3z (from z) must contain z1 character, or "legacy". See z<https://access.redhat.com/articles/5860431 for more details.zMax number of fields exceededcSs g|]}|jdD]}|qqS)rl)r)r-s1s2r!r!r"
<listcomp>Lszparse_qsl.<locals>.<listcomp>cSsg|]}|qSr!r!)r-rr!r!r"rNs=zbad query field: %rr+ )r)r*)rfzeThe default separator of urllib.parse.parse_qsl and parse_qs was changed to '&' to avoid a web cache zThe default separator of urllib.parse.parse_qsl and parse_qs was changed to '&' to avoid a web cache poisoning issue (CVE-2021-23336). zThe default separator of urllib.parse.parse_qsl and parse_qs was changed to '&' to avoid a web cache poisoning issue (CVE-2021-23336). By default, semicolons no longer act as query field zThe default separator of urllib.parse.parse_qsl and parse_qs was changed to '&' to avoid a web cache poisoning issue (CVE-2021-23336). By default, semicolons no longer act as query field separators. zThe default separator of urllib.parse.parse_qsl and parse_qs was changed to '&' to avoid a web cache poisoning issue (CVE-2021-23336). By default, semicolons no longer act as query field separators. See https://access.redhat.com/articles/5860431 for aThe default separator of urllib.parse.parse_qsl and parse_qs was changed to '&' to avoid a web cache poisoning issue (CVE-2021-23336). By default, semicolons no longer act as query field separators. See https://access.redhat.com/articles/5860431 for more details.)r8r4rr,r5rOobject_default_qs_separatorosenvironropen_QS_SEPARATOR_CONFIG_FILENAMEFileNotFoundErrorconfigparserZConfigParserZ	read_filewarningsrrrycountrrrr)rrrr)r*rrLrqZ_legacyZenvvar_nameZ
config_sourcerrconfigr
num_fieldsrrZ
name_valueZnvrrr!r!r"r
s












cCs|jdd}t|||S)Nrr)rr)rr)r*r!r!r"rfssAABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_.-c@s$eZdZddZddZddZdS)QuotercCstj||_dS)N)_ALWAYS_SAFEunionsafe)r;rr!r!r"__init__~szQuoter.__init__cCsd|jjt|fS)Nz<%s %r>)	__class__r<dict)r;r!r!r"__repr__szQuoter.__repr__cCs(||jkrt|ndj|}|||<|S)Nz%{:02X})rchrformat)r;rrr!r!r"__missing__szQuoter.__missing__N)r<r=r>rrrr!r!r!r"rvsrrucCsbt|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)r4r5r(r6r
)rrr)r*r!r!r"rs
cCsdt|trd|ks$t|tr2d|kr2t||||St|trBd}nd}t|||||}|jddS)Nr r)r4r5rrr)rrr)r*Zspacer!r!r"r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-r}r!r!r"rsz$quote_from_bytes.<locals>.<listcomp>csg|]}|qSr!r!)r-char)quoterr!r"rs)r4r	bytearrayr6r5r(rstrip_ALWAYS_SAFE_BYTESr,r rr__getitem__r)Zbsrr!)rr"r
s
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)
hasattrrryr4r0r6sysexc_infowith_tracebackrr5rr)rrZdoseqrr)r*Z	quote_viaZtyZvatblkrr.Zeltr!r!r"rsP





cCsJt|trFy|jdj}Wn(tk
rDtdt|dYnX|S)NASCIIzURL z contains non-ASCII characters)r4r5r(r,UnicodeErrorrepr)rhr!r!r"to_bytes/s
rcCs`t|j}|dddkr<|dddkr<|ddj}|dddkr\|ddj}|S)Nr3<>zURL:rr)r5r)rhr!r!r"unwrap<s rcCsDtdkrtjdtjatj|}|r<|j\}}|j|fSd|fS)Nz
([^/:]+):(.*))	_typeprogrcompileDOTALLrgroupsrJ)rhrrodatar!r!r"	splittypeEs
rcCsXtdkrtjdtjatj|}|rP|j\}}|rH|ddkrHd|}||fSd|fS)Nz//([^/#?]*)(.*)rru)	_hostprogrrrrr)rhrZ	host_portrr!r!r"	splithostRs
r	cCs |jd\}}}|r|nd|fS)NrS)rV)hostuserr|r!r!r"	splituser`srcCs |jd\}}}||r|ndfS)NrT)rI)rr|Zpasswdr!r!r"splitpasswdesr
cCsDtdkrtjdtjatj|}|r<|j\}}|r<||fS|dfS)Nz(.*):([0-9]*)$)	_portprogrrrrr)r
rrPr!r!r"	splitportls
rr3cCsT|jd\}}}|s|}n2|rLyt|}Wntk
rBd}YnX||fS||fS)NrT)rVrNrO)r
Zdefportr|rPZnportr!r!r"
splitnportys
rcCs$|jd\}}}|r||fS|dfS)Nr)rV)rhrr|rrr!r!r"
splitquerysrcCs$|jd\}}}|r||fS|dfS)Nrf)rV)rhrr|tagr!r!r"splittagsrcCs|jd}|d|ddfS)Nrlrr3)r)rhZwordsr!r!r"	splitattrs
rcCs |jd\}}}||r|ndfS)Nr)rI)attrr|rr!r!r"
splitvaluesr)rT)r)rT)T)rr)FFrrNN)FFrrNN)rr)ruNN)rNN)rur)r)errrcollectionsr__all__rrrmZnon_hierarchicalZ
uses_queryZ
uses_fragmentrrrrrr#Z_implicit_encodingZ_implicit_errorsr'r+r2r8rr9r@rBrRr`reZ_DefragResultBaseZ_SplitResultBaseZ_ParseResultBase__doc__rhrgrorUrrrrsZ
ResultBaserrrrrrrkrrnr~rrrrrrrrrrrrrrrr	RuntimeWarningrrrr
r	frozensetrrrr defaultdictrrrr
rrrrrrr	rr
rrrrrrrr!r!r!r"<module>"s





!


	
	
B
E


&
y
	
,

O