ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     3

  \                 @   sZ   d Z ddlmZ ddlmZmZmZmZ ddlm	Z	m
Z
mZ dd ZG dd	 d	ejZd
S )zFixer for import statements.
If spam is being imported from the local directory, this import:
    from spam import eggs
Becomes:
    from .spam import eggs

And this import:
    import spam
Becomes:
    from . import spam
   )
fixer_base    )dirnamejoinexistssep)
FromImportsymstokenc             c   s   | g}x|r|j  }|jtjkr*|jV  q|jtjkrPdjdd |jD V  q|jtj	krn|j
|jd  q|jtjkr|j|jddd  qtdqW dS )	zF
    Walks over all the names imported in a dotted_as_names node.
     c             S   s   g | ]
}|j qS  )value).0Zchr   r   0/usr/lib64/python3.6/lib2to3/fixes/fix_import.py
<listcomp>   s    z$traverse_imports.<locals>.<listcomp>r   Nr   zunknown node type)poptyper
   NAMEr   r	   Zdotted_namer   childrenZdotted_as_nameappendZdotted_as_namesextendAssertionError)namespendingnoder   r   r   traverse_imports   s    
r   c                   s4   e Zd ZdZdZ fddZdd Zdd Z  ZS )		FixImportTzj
    import_from< 'from' imp=any 'import' ['('] any [')'] >
    |
    import_name< 'import' imp=any >
    c                s"   t t| j|| d|jk| _d S )NZabsolute_import)superr   
start_treeZfuture_featuresskip)selfZtreename)	__class__r   r   r   /   s    zFixImport.start_treec             C   s   | j r
d S |d }|jtjkrZxt|ds6|jd }q W | j|jrd|j |_|j  n^d}d}x$t	|D ]}| j|rd}qld}qlW |r|r| j
|d d S td|g}|j|_|S d S )Nimpr   r   .FTz#absolute and local imports together)r    r   r	   Zimport_fromhasattrr   probably_a_local_importr   Zchangedr   Zwarningr   prefix)r!   r   Zresultsr$   Z
have_localZhave_absoluteZmod_namenewr   r   r   	transform3   s,    

zFixImport.transformc             C   sv   |j drdS |jddd }t| j}t||}ttt|dsHdS x(dtddd	d
gD ]}t|| rZdS qZW dS )Nr%   F   r   z__init__.pyz.pyz.pycz.soz.slz.pydT)
startswithsplitr   filenamer   r   r   )r!   Zimp_name	base_pathZextr   r   r   r'   U   s    


z!FixImport.probably_a_local_import)	__name__
__module____qualname__ZBM_compatibleZPATTERNr   r*   r'   __classcell__r   r   )r#   r   r   &   s
   "r   N)__doc__r   r   Zos.pathr   r   r   r   Z
fixer_utilr   r	   r
   r   ZBaseFixr   r   r   r   r   <module>   s
   