<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
2ao                 @   s\  d dl Z d dlZd dlZdddddddd	d
ddddddddddddgZdddddddddd d!d"d#d$d%d&d'd(d)gZdddddd*dddd!dd d+d"d#d$d,d&d'd%d-d.d/d(d)gZddd0d"dddd d#d$d1d2d!d%d3gZdd0d4d5d*ddd+d1d2g
Zdddddd d!dd#d$d1d2gZddd0ddd5dddd d+dd"gZ	d6Z
d7d8d9gZd:Zi Zd;d< Zd=Zd>Zd?d@ ZeefdAdBZeefdCdDZdEdF ZG dGdH dHeZG dIdJ dJeZG dKdL dLeZG dMdN dNeeZG dOdP dPeeZd dQlmZ eddRZeddSZeddTZdUe_dVej _dWej!_dXe_dYej"_dZe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!_eZ'G d`d deeZ(G dad deeZ)G dbd deeZ*G dcd deeZ+G ddd deeZ,G ded deeZ-dfdg Z.e.  [.ddidZ/djdk Z0ddldmZ1dndo Z2dpdq Z3ddrdZ4dsd Z5dtd Z6ddudZ7dvd Z8dwZ9da:dxd Z;e j<dyZ=dd|dZ>ddd	Z?ddd
Z@dddZAeBdZCeDeCZEi ZFG dd dejGZHdddZIdddZJdddZKd}dddeJfddZLdd ZMdd ZNdaOdd ZPdaQdd ZRdd ZSdd ZTdaUdd ZVdddZWdd ZXdd ZYdd ZZdd Z[dS )    Nurlparse
urlunparseurljoin	urldefragurlsplit
urlunsplit	urlencodeparse_qs	parse_qslquote
quote_plusquote_from_bytesunquoteunquote_plusunquote_to_bytesDefragResultParseResultSplitResultDefragResultBytesParseResultBytesSplitResultBytes ZftphttpZgopherZnntpZimapZwaisfileZhttpsZshttpZmmsZprosperoZrtspZrtspuZsftpZsvnzsvn+sshZwsZwssZtelnetZsnewsZrsyncZnfsZgitzgit+sshZhdlZsipZsipsZtelZmailtoZnewszAabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+-.	
   c               C   s   t j  tj  d S )N)_parse_cacheclear_safe_quoters r!   r!   */opt/alt/python36/lib64/python3.6/parse.pyclear_cacheV   s    r#   asciistrictc             C   s   | S )Nr!   )objr!   r!   r"   _noope   s    r'   c             C   s   | j ||S )N)encode)r&   encodingerrorsr!   r!   r"   _encode_resulth   s    r+   c                s   t  fdd| D S )Nc             3   s"   | ]}|r|j  nd V  qdS )r   N)decode).0x)r)   r*   r!   r"   	<genexpr>n   s    z_decode_args.<locals>.<genexpr>)tuple)argsr)   r*   r!   )r)   r*   r"   _decode_argsl   s    r2   c              G   sZ   t | d t}x.| dd  D ]}|rt |t|krtdqW |rL| tf S t| tf S )Nr      z$Cannot mix str and non-str arguments)
isinstancestr	TypeErrorr'   r2   r+   )r1   Z	str_inputargr!   r!   r"   _coerce_argsp   s    
r8   c               @   s   e Zd Zf ZdddZdS )_ResultMixinStrr$   r%   c                s   | j  fdd| D  S )Nc             3   s   | ]}|j  V  qd S )N)r(   )r-   r.   )r)   r*   r!   r"   r/      s    z)_ResultMixinStr.encode.<locals>.<genexpr>)_encoded_counterpart)selfr)   r*   r!   )r)   r*   r"   r(      s    z_ResultMixinStr.encodeN)r$   r%   )__name__
__module____qualname__	__slots__r(   r!   r!   r!   r"   r9      s   r9   c               @   s   e Zd Zf ZdddZdS )_ResultMixinBytesr$   r%   c                s   | j  fdd| D  S )Nc             3   s   | ]}|j  V  qd S )N)r,   )r-   r.   )r)   r*   r!   r"   r/      s    z+_ResultMixinBytes.decode.<locals>.<genexpr>)_decoded_counterpart)r;   r)   r*   r!   )r)   r*   r"   r,      s    z_ResultMixinBytes.decodeN)r$   r%   )r<   r=   r>   r?   r,   r!   r!   r!   r"   r@      s   r@   c               @   s@   e Zd Zf Zedd Zedd Zedd Zedd Zd	S )
_NetlocResultMixinBasec             C   s
   | j d S )Nr   )	_userinfo)r;   r!   r!   r"   username   s    z_NetlocResultMixinBase.usernamec             C   s
   | j d S )Nr3   )rC   )r;   r!   r!   r"   password   s    z_NetlocResultMixinBase.passwordc             C   sD   | j d }|sd S t|tr dnd}|j|\}}}|j | | S )Nr   %   %)	_hostinfor4   r5   	partitionlower)r;   hostname	separatorpercentZzoner!   r!   r"   rK      s    
z_NetlocResultMixinBase.hostnamec             C   s@   | j d }|d k	r<t|d}d|  ko.dkn  s<td|S )Nr3   
   r   i  zPort out of range 0-65535)rH   int
ValueError)r;   portr!   r!   r"   rQ      s    

z_NetlocResultMixinBase.portN)	r<   r=   r>   r?   propertyrD   rE   rK   rQ   r!   r!   r!   r"   rB      s
   rB   c               @   s(   e Zd Zf Zedd Zedd ZdS )_NetlocResultMixinStrc             C   sD   | j }|jd\}}}|r4|jd\}}}|s<d }nd  }}||fS )N@:)netloc
rpartitionrI   )r;   rV   userinfo	have_infohostinforD   have_passwordrE   r!   r!   r"   rC      s    z_NetlocResultMixinStr._userinfoc             C   sl   | j }|jd\}}}|jd\}}}|rL|jd\}}}|jd\}}}n|jd\}}}|sdd }||fS )NrT   []rU   )rV   rW   rI   )r;   rV   _rZ   have_open_br	bracketedrK   rQ   r!   r!   r"   rH      s    z_NetlocResultMixinStr._hostinfoN)r<   r=   r>   r?   rR   rC   rH   r!   r!   r!   r"   rS      s   rS   c               @   s(   e Zd Zf Zedd Zedd ZdS )_NetlocResultMixinBytesc             C   sD   | j }|jd\}}}|r4|jd\}}}|s<d }nd  }}||fS )N   @   :)rV   rW   rI   )r;   rV   rX   rY   rZ   rD   r[   rE   r!   r!   r"   rC      s    z!_NetlocResultMixinBytes._userinfoc             C   sl   | j }|jd\}}}|jd\}}}|rL|jd\}}}|jd\}}}n|jd\}}}|sdd }||fS )Nrb      [   ]rc   )rV   rW   rI   )r;   rV   r^   rZ   r_   r`   rK   rQ   r!   r!   r"   rH      s    z!_NetlocResultMixinBytes._hostinfoN)r<   r=   r>   r?   rR   rC   rH   r!   r!   r!   r"   ra      s   ra   )
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               @   s   e Zd Zf Zdd ZdS )r   c             C   s    | j r| jd | j  S | jS d S )N#)fragmenturl)r;   r!   r!   r"   geturl;  s    zDefragResult.geturlN)r<   r=   r>   r?   rj   r!   r!   r!   r"   r   9  s   c               @   s   e Zd Zf Zdd ZdS )r   c             C   s   t | S )N)r   )r;   r!   r!   r"   rj   C  s    zSplitResult.geturlN)r<   r=   r>   r?   rj   r!   r!   r!   r"   r   A  s   c               @   s   e Zd Zf Zdd ZdS )r   c             C   s   t | S )N)r   )r;   r!   r!   r"   rj   H  s    zParseResult.geturlN)r<   r=   r>   r?   rj   r!   r!   r!   r"   r   F  s   c               @   s   e Zd Zf Zdd ZdS )r   c             C   s    | j r| jd | j  S | jS d S )N   #)rh   ri   )r;   r!   r!   r"   rj   N  s    zDefragResultBytes.geturlN)r<   r=   r>   r?   rj   r!   r!   r!   r"   r   L  s   c               @   s   e Zd Zf Zdd ZdS )r   c             C   s   t | S )N)r   )r;   r!   r!   r"   rj   V  s    zSplitResultBytes.geturlN)r<   r=   r>   r?   rj   r!   r!   r!   r"   r   T  s   c               @   s   e Zd Zf Zdd ZdS )r   c             C   s   t | S )N)r   )r;   r!   r!   r"   rj   [  s    zParseResultBytes.geturlN)r<   r=   r>   r?   rj   r!   r!   r!   r"   r   Y  s   c              C   s8   t tfttfttff} x| D ]\}}||_||_qW d S )N)r   r   r   r   r   r   r:   rA   )Z_result_pairsZ_decodedZ_encodedr!   r!   r"   _fix_result_transcoding_  s    
rl   Tc       
      C   sf   t | |\} }}t| ||}|\}}} }}|tkrHd| krHt| \} }nd}t||| |||}	||	S )N;r   )r8   r   uses_params_splitparamsr   )
ri   schemeallow_fragments_coerce_resultZsplitresultrV   queryrh   paramsresultr!   r!   r"   r   l  s    c             C   sR   d| kr,| j d| jd}|dk r6| dfS n
| j d}| d | | |d d  fS )N/rm   r   r   r3   )findrfind)ri   ir!   r!   r"   ro   |  s    

ro   c             C   sL   t | }x*dD ]"}| j||}|dkrt||}qW | || | |d  fS )Nz/?#r   )lenrw   min)ri   startdelimcZwdelimr!   r!   r"   _splitnetloc  s    
r   c             C   s   |  st dd | D  rd S dd l}| jdd}|jdd}|jdd}|jdd}|jd	|}||krnd S x(d
D ] }||krttd|  d d qtW d S )Nc             s   s   | ]}t |d kV  qdS )   N)ord)r-   r~   r!   r!   r"   r/     s    z_checknetloc.<locals>.<genexpr>r   rT   r   rU   rg   ?NFKCz/?#@:znetloc 'z' contains invalid z#characters under NFKC normalization)anyunicodedatareplace	normalizerP   )rV   r   nZnetloc2r~   r!   r!   r"   _checknetloc  s    
r   c             C   s   xt D ]}| j|d} qW | S )Nr   )_UNSAFE_URL_BYTES_TO_REMOVEr   )ri   br!   r!   r"   _remove_unsafe_bytes_from_url  s    
r   c             C   s~  t | |\} }}t| } t|}t|}| ||t| t|f}tj|d }|rV||S tttkrht  d } }}| j	d}	|	dkr| d |	 dkrf| d |	 j
 }| |	d d  } | d d dkrt| d\}} d|krd	|ksd	|kod|krtd
|r$d| kr$| jdd\} }d| kr>| jdd\} }t| t||| ||}
|
t|< ||
S xd| d |	 D ]}|tkrtP qtW | |	d d  }| stdd |D r| d |	 j
 | }} | d d dkrt| d\}} d|kr d	|ksd	|krd|krtd
|r<d| kr<| jdd\} }d| krV| jdd\} }t| t||| ||}
|
t|< ||
S )Nr   rU   r   r   r3      z//r\   r]   zInvalid IPv6 URLrg   r   c             s   s   | ]}|d kV  qdS )
0123456789Nr!   )r-   r~   r!   r!   r"   r/     s    zurlsplit.<locals>.<genexpr>)r8   r   booltyper   getrz   MAX_CACHE_SIZEr#   rw   rJ   r   rP   splitr   r   scheme_charsr   )ri   rp   rq   rr   keycachedrV   rs   rh   ry   vr~   restr!   r!   r"   r     s`    




c             C   s<   t |  \}}}}}}}|r&d||f }|t|||||fS )Nz%s;%s)r8   r   )
componentsrp   rV   ri   rt   rs   rh   rr   r!   r!   r"   r     s    c             C   s   t |  \}}}}}}|s4|r`|tkr`|d d dkr`|rP|d d dkrPd| }d|pXd | }|rp|d | }|r|d | }|r|d | }||S )	Nr   z//r3   rv   r   rU   r   rg   )r8   uses_netloc)r   rp   rV   ri   rs   rh   rr   r!   r!   r"   r     s      c             C   s  | s|S |s| S t | |\} }}t| d|\}}}}}}	t|||\}
}}}}}|
|ks`|
tkrh||S |
tkr|r|t|
|||||fS |}| r| r|}|}|s|}|t|
|||||fS |jd}|d dkr|d= |d d dk r|jd}n(||jd }td |dd |dd	< g }xX|D ]P}|dkrdy|j  W n tk
r`   Y nX n|dkrtq0n
|j	| q0W |d
 dkr|j	d |t|
|dj
|pd|||fS )Nr   rv   r3   ...r   r   r   r   )r   r   )r8   r   uses_relativer   r   r   filterpop
IndexErrorappendjoin)baseri   rq   rr   ZbschemeZbnetlocZbpathZbparamsZbqueryZ	bfragmentrp   rV   pathrt   rs   rh   Z
base_partsZsegmentsZresolved_pathZsegr!   r!   r"   r     sT    






c       	      C   sT   t | \} }d| kr>t| \}}}}}}t|||||df}nd}| }|t||S )Nrg   r   )r8   r   r   r   )	ri   rr   sr   paqZfragZdefragr!   r!   r"   r   C  s    Z0123456789ABCDEFabcdefc             C   s   | s| j  dS t| tr"| jd} | j d}t|dkr<| S |d g}|j}td krbdd tD axb|dd  D ]R}y(|t|d d   ||dd   W qp tk
r   |d || Y qpX qpW dj	|S )	N    zutf-8rG   r3   r   c             S   s4   i | ],}t D ]"}tt|| d g|| j qqS )   )_hexdigbytesrO   r(   )r-   r   r   r!   r!   r"   
<dictcomp>i  s   z$unquote_to_bytes.<locals>.<dictcomp>r   )
r   r4   r5   r(   rz   r   
_hextobyter   KeyErrorr   )stringbitsresr   itemr!   r!   r"   r   V  s*    



z([ -]+)utf-8r   c             C   s   d| kr| j  | S |d krd}|d kr*d}tj | }|d g}|j}x@tdt|dD ],}|t|| j|| |||d   qVW dj|S )NrF   zutf-8r   r   r3   r   r   )r   _asciirer   rangerz   r   r,   r   )r   r)   r*   r   r   r   ry   r!   r!   r"   r   v  s    


F&c          	   C   sR   i }t | ||||||d}x2|D ]*\}	}
|	|kr@||	 j|
 q |
g||	< q W |S )N)r)   r*   max_num_fieldsrL   )r
   r   )qskeep_blank_valuesstrict_parsingr)   r*   r   rL   Zparsed_resultpairsnamevaluer!   r!   r"   r	     s    
c             C   s.  t | \} }| s"t|ttf r*td|d k	rPd| j| }||k rPtddd | j|D }	g }
x|	D ]}| r| rqn|jdd}t|dkr|rtd|f |rn|jd	 nqnt|d s|rn|d
 j	dd}t
|||d}||}|d j	dd}t
|||d}||}|
j||f qnW |
S )Nz*Separator must be of type string or bytes.r3   zMax number of fields exceededc             S   s   g | ]}|qS r!   r!   )r-   s1r!   r!   r"   
<listcomp>  s    zparse_qsl.<locals>.<listcomp>=r   zbad query field: %rr   r   + )r)   r*   )r8   r4   r5   r   rP   countr   rz   r   r   r   )r   r   r   r)   r*   r   rL   rr   
num_fieldsr   rZ
name_valueZnvr   r   r!   r!   r"   r
     s8    
c             C   s   | j dd} t| ||S )Nr   r   )r   r   )r   r)   r*   r!   r!   r"   r     s    sA   ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_.-c               @   s$   e Zd Zdd Zdd Zdd ZdS )Quoterc             C   s   t j|| _d S )N)_ALWAYS_SAFEunionsafe)r;   r   r!   r!   r"   __init__  s    zQuoter.__init__c             C   s   d| j jt| f S )Nz<%s %r>)	__class__r<   dict)r;   r!   r!   r"   __repr__  s    zQuoter.__repr__c             C   s(   || j krt|ndj|}|| |< |S )Nz%{:02X})r   chrformat)r;   r   r   r!   r!   r"   __missing__  s    zQuoter.__missing__N)r<   r=   r>   r   r   r   r!   r!   r!   r"   r     s   r   rv   c             C   sb   t | tr8| s| S |d krd}|d kr*d}| j||} n |d k	rHtd|d k	rXtdt| |S )Nzutf-8r%   z,quote() doesn't support 'encoding' for bytesz*quote() doesn't support 'errors' for bytes)r4   r5   r(   r6   r   )r   r   r)   r*   r!   r!   r"   r   "  s    
c             C   sd   t | trd| ks$t | tr2d| kr2t| |||S t |trBd}nd}t| || ||} | jddS )Nr       r   )r4   r5   r   r   r   )r   r   r)   r*   Zspacer!   r!   r"   r   N  s    
c                s   t | ttfstd| sdS t |tr6|jdd}ntdd |D }| jt| s^| j S yt	|  W n& t
k
r   t|j t	|<  Y nX dj fdd| D S )Nz!quote_from_bytes() expected bytesr   r$   ignorec             S   s   g | ]}|d k r|qS )   r!   )r-   r~   r!   r!   r"   r   l  s    z$quote_from_bytes.<locals>.<listcomp>c                s   g | ]} |qS r!   r!   )r-   char)quoterr!   r"   r   s  s    )r4   r   	bytearrayr6   r5   r(   rstrip_ALWAYS_SAFE_BYTESr,   r    r   r   __getitem__r   )bsr   r!   )r   r"   r   _  s    
c             C   s  t | dr| j } nRy t| r2t| d t r2tW n0 tk
rd   tj \}}}tdj|Y nX g }	|sxr| D ]j\}
}t|
t	r||
|}
n|t
|
|||}
t|t	r|||}n|t
||||}|	j|
d |  qtW n,x(| D ]\}
}t|
t	r||
|}
n|t
|
|||}
t|t	rL|||}|	j|
d |  qt|t
rz|||||}|	j|
d |  qyt|}W n: tk
r   |t
||||}|	j|
d |  Y qX xJ|D ]B}t|t	r|||}n|t
||||}|	j|
d |  qW qW dj|	S )Nitemsr   z1not a valid non-string sequence or mapping objectr   r   )hasattrr   rz   r4   r0   r6   sysexc_infowith_tracebackr   r5   r   r   )rs   Zdoseqr   r)   r*   Z	quote_viaZtyZvatblkr   r.   Zeltr!   r!   r"   r   u  sP    





c             C   sJ   t | trFy| jdj } W n( tk
rD   tdt|  d Y nX | S )NASCIIzURL z contains non-ASCII characters)r4   r5   r(   r,   UnicodeErrorrepr)ri   r!   r!   r"   to_bytes  s    
r   c             C   s`   t | j } | d d dkr<| dd  dkr<| dd j } | d d dkr\| dd  j } | S )Nr3   <>   zURL:r   r   )r5   strip)ri   r!   r!   r"   unwrap  s      r   c             C   sD   t d krtjdtja t j| }|r<|j \}}|j |fS d | fS )Nz([^/:]+):(.*))	_typeprogrecompileDOTALLmatchgroupsrJ   )ri   r   rp   datar!   r!   r"   	splittype  s    
r   c             C   sX   t d krtjdtja t j| }|rP|j \}}|rH|d dkrHd| }||fS d | fS )Nz//([^/#?]*)(.*)r   rv   )	_hostprogr   r   r   r   r   )ri   r   Z	host_portr   r!   r!   r"   	splithost  s    
r   c             C   s    | j d\}}} |r|nd | fS )NrT   )rW   )hostuserr}   r!   r!   r"   	splituser  s    r   c             C   s    | j d\} }}| |r|nd fS )NrU   )rI   )r   r}   Zpasswdr!   r!   r"   splitpasswd  s    r   c             C   sD   t d krtjdtja t j| }|r<|j \} }|r<| |fS | d fS )Nz(.*):([0-9]*)$)	_portprogr   r   r   r   r   )r   r   rQ   r!   r!   r"   	splitport  s    
r   r3   c             C   sT   | j d\} }}|s|} n2|rLyt|}W n tk
rB   d }Y nX | |fS | |fS )NrU   )rW   rO   rP   )r   Zdefportr}   rQ   Znportr!   r!   r"   
splitnport  s    
r   c             C   s$   | j d\}}}|r||fS | d fS )Nr   )rW   )ri   r   r}   rs   r!   r!   r"   
splitquery  s    r   c             C   s$   | j d\}}}|r||fS | d fS )Nrg   )rW   )ri   r   r}   tagr!   r!   r"   splittag&  s    r  c             C   s   | j d}|d |dd  fS )Nrm   r   r3   )r   )ri   Zwordsr!   r!   r"   	splitattr-  s    
r  c             C   s    | j d\} }}| |r|nd fS )Nr   )rI   )attrr}   r   r!   r!   r"   
splitvalue3  s    r  )r   T)r   )r   T)T)r   r   )FFr   r   Nr   )FFr   r   Nr   )r   r   )rv   NN)r   NN)rv   r   )r   )\r   r   collections__all__r   r   rn   Znon_hierarchicalZ
uses_queryZuses_fragmentr   r   r   r   r#   Z_implicit_encodingZ_implicit_errorsr'   r+   r2   r8   objectr9   r@   rB   rS   ra   rf   Z_DefragResultBaseZ_SplitResultBaseZ_ParseResultBase__doc__ri   rh   rp   rV   r   rs   rt   Z
ResultBaser   r   r   r   r   r   rl   r   ro   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r	   r
   r   	frozensetr   r   r   r    defaultdictr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r!   r!   r!   r"   <module>   s   





!


	

<
E

 
) 
A
	
,

O
