£Á°è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
    YI~db                 @   sl   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Zddd	Z	dd
dZ
dd ZdddZdd ZdS )    N)DistutilsFileErrorDistutilsInternalError)log     c             C   sn  t | tstd| f tj| } g }tj| s<| dkr@|S ttj	| rV|S tj
| \}}|g}x4|r|rtj|stj
|\}}|d| qnW x|D ]}tj||}tj	|}	t|	rq|dkrtd| |s^yt|| W nV tk
rR }
 z6|
jtjkr,tj|sBtd||
jd f W d d }
~
X Y nX || dt|	< qW |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errnoZEEXISTr   argsappend)namemodeverbosedry_runZcreated_dirsheadtailZtailsdZabs_headexc r#   7/opt/alt/python37/lib64/python3.7/distutils/dir_util.pymkpath   s>    


&
r%   c          	   C   sV   t  }x(|D ] }|tj| tj| qW x t|D ]}t||||d q:W d S )N)r   r   )setaddr   r   r   dirnamesortedr%   )Zbase_dirfilesr   r   r   Zneed_dirfiledirr#   r#   r$   create_treeP   s
    
 r-   c             C   sd  ddl m} |s(tj| s(td|  yt| }	W n> tk
rt }
 z |rRg }	ntd| |
jf W d d }
~
X Y nX |st	||d g }x|	D ]}tj
| |}tj
||}|drq|rtj|rt|}|dkrtd|| |st|| || qtj|r<|t||||||||d	 q||||||||d	 || qW |S )
Nr   )	copy_filez&cannot copy tree '%s': not a directoryzerror listing files in '%s': %s)r   z.nfsr   zlinking %s -> %s)r   r   )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$   r6   c   sH    
"


r6   c             C   sj   xTt | D ]F}t j| |}t j|rBt j|sBt|| q|t j|f qW |t j	| f d S )N)
r   r/   r   r   r   r2   _build_cmdtupler   removermdir)r   	cmdtuplesfZreal_fr#   r#   r$   r=      s    r=   c             C   s   |dkrt d|  |rd S g }t| | xp|D ]h}y2|d |d  tj|d }|tkrdt|= W q0 tk
r } zt d| | W d d }~X Y q0X q0W d 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   r@   cmdr   r"   r#   r#   r$   remove_tree   s    


rD   c             C   s6   t j| \}} | dd t jkr2|| dd   } | S )Nr   r   )r   r   
splitdrivesep)r   Zdriver#   r#   r$   ensure_relative   s    rG   )r   r   r   )r   r   r   )r   r   r   r   r   r   )r   r   )r   r   Zdistutils.errorsr   r   Z	distutilsr   r   r%   r-   r6   r=   rD   rG   r#   r#   r#   r$   <module>   s   
?
 
D

