3 \¡ ã @ sò d dl mZmZ d dlmZmZmZmZmZm Z m Z ddddddd d dgfdd ddddddddddddddgfddgfgddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4gfdd5d6gfgd7œZed8 jed9 d: ƒ d;d<„ Z G d=d>„ d>eƒZd?S )@é )Ú alternatesÚ FixImports)ÚNameÚCommaÚ FromImportÚNewlineÚfind_indentationÚNodeÚsymszurllib.requestZ URLopenerZFancyURLopenerZurlretrieveZ _urlopenerZurlopenZ urlcleanupZpathname2urlZurl2pathnamezurllib.parseZquoteZ quote_plusZunquoteZunquote_plusZ urlencodeZ splitattrZ splithostZ splitnportZsplitpasswdZ splitportZ splitqueryZsplittagZ splittypeZ splituserZ splitvaluezurllib.errorZContentTooShortErrorZinstall_openerZbuild_openerZRequestZOpenerDirectorZBaseHandlerZHTTPDefaultErrorHandlerZHTTPRedirectHandlerZHTTPCookieProcessorZProxyHandlerZHTTPPasswordMgrZHTTPPasswordMgrWithDefaultRealmZAbstractBasicAuthHandlerZHTTPBasicAuthHandlerZProxyBasicAuthHandlerZAbstractDigestAuthHandlerZHTTPDigestAuthHandlerZProxyDigestAuthHandlerZHTTPHandlerZHTTPSHandlerZFileHandlerZ FTPHandlerZCacheFTPHandlerZUnknownHandlerZURLErrorZ HTTPError)ÚurllibÚurllib2r r é c c s~ t ƒ } xrtjƒ D ]f\}}x\|D ]T}|\}}t|ƒ}d||f V d|||f V d| V d| V d||f V qW qW d S )Nz�import_name< 'import' (module=%r | dotted_as_names< any* module=%r any* >) > zÆimport_from< 'from' mod_member=%r 'import' ( member=%s | import_as_name< member=%s 'as' any > | import_as_names< members=any* >) > zIimport_from< 'from' module_star=%r 'import' star='*' > ztimport_name< 'import' dotted_as_name< module_as=%r 'as' any > > zKpower< bare_with_attr=%r trailer< '.' member=%s > any* > )ÚsetÚMAPPINGÚitemsr )ZbareZ old_moduleZchangesÚchangeZ new_moduleÚmembers© r ú0/usr/lib64/python3.6/lib2to3/fixes/fix_urllib.pyÚ build_pattern0 s r c @ s4 e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd d „ ZdS )Ú FixUrllibc C s dj tƒ ƒS )Nú|)Újoinr )Úselfr r r r I s zFixUrllib.build_patternc C sz |j dƒ}|j}g }x6t|j d d… D ] }|jt|d |d�tƒ gƒ q(W |jtt|j d d |d�ƒ |j|ƒ d S )NÚmoduler r )Úprefixéÿÿÿÿr ) Úgetr r ÚvalueÚextendr r ÚappendÚreplace)r ÚnodeÚresultsZ import_modÚprefÚnamesÚnamer r r Útransform_importL s zFixUrllib.transform_importc C s> |j dƒ}|j}|j dƒ}|rˆt|tƒr0|d }d }x*t|j D ]}|j|d kr@|d }P q@W |rx|jt||d�ƒ n| j|dƒ �n²g }i } |d } x–| D ]Ž}|j t jkrÈ|jd j}|jd j}n |j}d }|d kržxPt|j D ]B}||d kræ|d | k�r|j |d ƒ | j|d g ƒj |ƒ qæW qžW g } t|ƒ}d }dd„ }x˜|D ]�}| | }g }x2|d d… D ]"}|j|||ƒƒ |j tƒ ƒ �qlW |j||d |ƒƒ t||ƒ}| �sÈ|jjj|ƒ�rÎ||_| j |ƒ d }�qNW | �r.g }x&| d d… D ]}|j|tƒ gƒ �qúW |j | d ƒ |j|ƒ n| j|dƒ d S )NÚ mod_memberÚmemberr r )r z!This is an invalid module elementr é ú,Tc S sX | j tjkrHt| jd j|d�| jd jƒ | jd jƒ g}ttj|ƒgS t| j|d�gS )Nr )r r r* )Útyper Úimport_as_namer Úchildrenr Zcloner )r&