
    6h                       S SK Jr  S SKrS SKrS SKrS SKrS SKrSSK	J
r
  \
R                  r " S S5      r\" 5       r\" 5       r\" 5       r\R#                  \R$                  S5        \R'                  \R$                  SS	5        \R'                  \R$                  S
S5        \R'                  \R$                  SS5        \R#                  \R(                  S5        \R#                  \R*                  S5        \R#                  \R,                  S5        \R#                  \R.                  S5        SS jrSS jr\\l        \\l        S rS rS rS rS rg)    )annotationsN   )pycompatc                  ,    \ rS rSrS rS rS rS rSrg)_pycompatstub   c                    0 U l         g N_aliases)selfs    8/usr/lib/python3/dist-packages/mercurial/urllibcompat.py__init___pycompatstub.__init__   s	        c                p   ^ [        [        U5      nU R                  R                  U4S jU 5       5        g)z4Add items that will be populated at the first accessc              3  j   >#    U  H(  oR                  S S5      R                  5       TU44v   M*     g7f)_ N)replacelower).0itemorigins     r   	<genexpr>1_pycompatstub._registeraliases.<locals>.<genexpr>   s/      
HM\\#r"((*VTN;s   03N)map_sysstrr   update)r   r   itemss    ` r   _registeraliases_pycompatstub._registeraliases   s.    GU# 
HM
 	
r   c                J    U[        U5      4U R                  [        U5      '   g)z%Alias ``origin``.``attr`` as ``name``N)r   r   )r   r   attrnames       r   _registeralias_pycompatstub._registeralias    s    (.'>gdm$r   c                     U R                   U   u  p#[        X#5      =U R                  U'   nU$ ! [         a    [        U5      ef = fr
   )r   KeyErrorAttributeErrorgetattr__dict__)r   r%   r   r   objs        r   __getattr___pycompatstub.__getattr__$   sR    	'==.LF %,F$99dc
  	' &&	's	   / Ar   N)	__name__
__module____qualname____firstlineno__r   r!   r&   r.   __static_attributes__ r   r   r   r      s    
?r   r   )s	   splitattrs   splitpasswds	   splitports	   splitusers   urlparses
   urlunparses   parse_qss   parseqss	   parse_qsls   parseqsls   unquote_to_bytess   unquote)s   AbstractHTTPHandlers   BaseHandlers   build_openers   FileHandlers
   FTPHandlers
   ftpwrappers   HTTPCookieProcessors   HTTPHandlers   HTTPSHandlers   install_openers   pathname2urls   HTTPBasicAuthHandlers   HTTPDigestAuthHandlers   HTTPPasswordMgrWithDefaultRealms   ProxyHandlers   Requests   url2pathnames   urlopen)s   addclosehooks
   addinfourl)s	   HTTPErrors   URLError)s
   HTTPServers   BaseHTTPRequestHandlers   SimpleHTTPRequestHandlers   CGIHTTPRequestHandlerc                    [        U [        R                  5      (       a  [        U 5      n [        R
                  R                  XS9n U R                  SS5      $ )N)safeasciistrict)
isinstancer   bytestrbytesurllibparsequote_from_bytesencode)sr7   s     r   quoterB   w   sH     !X%%&&!H%%a%3A88GX&&r   c                ^    [         R                  R                  XS9nUR                  S5      $ )N)doseqr8   )r=   r>   	urlencoder@   )queryrD   rA   s      r   rE   rE      s(    u2A88Gr   c                    U R                   $ r
   )full_urlreqs    r   
getfullurlrK          <<r   c                    U R                   $ r
   )hostrI   s    r   gethostrO          88Or   c                    U R                   $ r
   )selectorrI   s    r   getselectorrS      rL   r   c                    U R                   $ r
   datarI   s    r   getdatarW      rP   r   c                    U R                   S L$ r
   rU   rI   s    r   hasdatarY      s    884r   )/)F)
__future__r   http.serverhttpurllib.errorr=   urllib.parseurllib.requesturllib.responser   r   sysstrr   r   
httpserverurlrequrlerrr!   r>   r&   requestresponseerrorserverrB   rE   rK   rO   rS   rW   rY   r5   r   r   <module>rj      sG   #      
// 0 _
		   
LL
   fllK <   fllL+ >   fll$7 D   
NN2   
OO   
LL   KK'
   r   