£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>

]b                 @   s   d  d l  Z  d  d l Z d  d l m Z m Z d  d l m Z i  a d d d  d d  Z d d d  d d	  Z	 d d d  d  d d  d
 d  Z
 d d   Z d d  d d  Z d d   Z d S)    N)DistutilsFileErrorDistutilsInternalError)logi     c             C   s  t  |  t  s" t d |  f   t j j |   }  g  } t j j |   sX |  d k r\ | St j t j j	 |    r{ | St j j
 |   \ } } | g } xK | r | r t j j |  r t j j
 |  \ } } | j d |  q Wx | D] } t j j | |  } t j j	 |  }	 t j |	  r0q | d k rLt j d |  | sy t j | |  Wnf t k
 r}
 zF |
 j t j k ot j j |  st d | |
 j d f   WYd  d  }
 ~
 Xn X| j |  d t |	 <q W| S)Nz(mkpath: 'name' must be a string (got %r) r   r   zcreating %szcould not create '%s': %s)
isinstancestrr   ospathnormpathisdir_path_createdgetabspathsplitinsertjoinr   infomkdirOSErrorerrnoEEXISTr   argsappend)namemodeverbosedry_runZcreated_dirsheadtailZtailsdZabs_headexc r#   -/opt/alt/python35/lib64/python3.5/dir_util.pymkpath   s>    	"$-r%   c             C   sv   t    } x6 | D]. } | j t j j |  t j j |    q Wx- t |  D] } t | | d | d | qO Wd  S)Nr   r   )setaddr
   r   r   dirnamesortedr%   )base_dirfilesr   r   r   Zneed_dirfiledirr#   r#   r$   create_treeP   s
    	,r.   c             C   s  d d l  m } | r: t j j |   r: t d |    y t j |   }	 WnM t k
 r }
 z- | rq g  }	 n t d |  |
 j f   WYd  d  }
 ~
 Xn X| s t	 | d | g  } x(|	 D] } t j j
 |  |  } t j j
 | |  } | j d  rq | rnt j j |  rnt j |  } | d k rHt j d | |  | s^t j | |  | j |  q t j j |  r| j t | | | | | | d | d	 |  q | | | | | | d | d	 | | j |  q W| S)
Nr   )	copy_filez&cannot copy tree '%s': not a directoryzerror listing files in '%s': %sr   z.nfsr   zlinking %s -> %sr   )Zdistutils.file_utilr/   r
   r   r   r   listdirr   strerrorr%   r   
startswithislinkreadlinkr   r   symlinkr   extend	copy_tree)srcdstZpreserve_modeZpreserve_timesZpreserve_symlinksupdater   r   r/   nameseZoutputsnZsrc_nameZdst_nameZ	link_destr#   r#   r$   r7   c   sH    	)r7   c             C   s   xw t  j |   D]f } t  j j |  |  } t  j j |  r` t  j j |  r` t | |  q | j t  j | f  q W| j t  j	 |  f  d  S)N)
r
   r0   r   r   r   r3   _build_cmdtupler   removermdir)r   	cmdtuplesfZreal_fr#   r#   r$   r>      s    %r>   c             C   s   | d k r t  j d |   | r& d  Sg  } t |  |  x | D] } y? | d | d  t j j | d  } | t k r t | =Wq@ t k
 r } z t  j d |  |  WYd  d  } ~ Xq@ Xq@ Wd  S)Nr   z'removing '%s' (and everything under it)r   zerror removing %s: %s)	r   r   r>   r
   r   r   r   r   warn)Z	directoryr   r   rA   cmdr   r"   r#   r#   r$   remove_tree   s    rE   c             C   sI   t  j j |   \ } }  |  d d  t  j k rE | |  d d   }  |  S)Nr   r   )r
   r   
splitdrivesep)r   Zdriver#   r#   r$   ensure_relative   s    rH   )r
   r   Zdistutils.errorsr   r   Z	distutilsr   r   r%   r.   r7   r>   rE   rH   r#   r#   r#   r$   <module>   s   ?D
