???<!-- GIF89;a -->
123123123123
.....................................................................................................................................???<!-- GIF89;a -->
123123123123
.....................................................................................................................................U
    e5d                     @   sV   d dl Z d dlmZ d dlmZ ddddZdd	d
ZdddZdddZdd Z	dS )    N)DistutilsFileError)logZcopyingzhard linkingzsymbolically linking)Nhardsym @  c              
   C   s  d }d }ztzt| d}W n4 tk
rN } ztd| |jf W 5 d }~X Y nX tj|rzt| W n4 tk
r } ztd||jf W 5 d }~X Y nX zt|d}W n4 tk
r } ztd||jf W 5 d }~X Y nX z|	|}W n6 tk
r( } ztd| |jf W 5 d }~X Y nX |s4q|z|
| W q tk
rx } ztd||jf W 5 d }~X Y qX qW 5 |r|   |r|   X d S )Nrbzcould not open '%s': %szcould not delete '%s': %swbzcould not create '%s': %szcould not read from '%s': %szcould not write to '%s': %s)closeopenOSErrorr   strerrorospathexistsunlinkreadwrite)srcdstZbuffer_sizeZfsrcZfdsteZbuf r   +/usr/lib64/python3.8/distutils/file_util.py_copy_file_contents   sL    	$r      c                 C   s  ddl m} ddlm}	m}
m}m} tj	| s<t
d|  tj|rd|}tj|tj| }ntj|}|r|| |s|dkrtd|  |dfS zt| }W n  tk
r   td| Y nX |dkrtj|tj| krtd|| | ntd|| | |r|dfS |d	krrtj|rBtj| |szt| | |dfW S  tk
rn   Y nX n<|d
krtj|rtj| |st| | |dfS t| | |s|rt| }|rt|||	 ||
 f |rt||||  |dfS )Nr   )newer)ST_ATIMEST_MTIMEST_MODES_IMODEz4can't copy '%s': doesn't exist or not a regular filer   z"not copying %s (output up-to-date)z&invalid value '%s' for 'link' argumentz%s %s -> %sr   r   )Zdistutils.dep_utilr   statr   r   r   r   r   r   isfiler   isdirjoinbasenamedirnamer   debug_copy_actionKeyError
ValueErrorinfor   samefilelinkr   symlinkr   utimechmod)r   r   Zpreserve_modeZpreserve_timesupdater+   verbosedry_runr   r   r   r   r   diractionstr   r   r   	copy_fileC   sV    !





r5   c                 C   s  ddl m}m}m}m}m} dd l}	|dkr:td| | |rB|S || sVt	d|  ||rrt
j||| }n||rt	d| |f |||st	d| |f d}
zt
| | W nP tk
r
 } z0|j\}}||	jkrd	}
nt	d
| ||f W 5 d }~X Y nX |
rt| ||d zt
|  W nh tk
r } zH|j\}}zt
| W n tk
rp   Y nX t	d| || |f W 5 d }~X Y nX |S )Nr   )r   r    r!   r#   r$   r   zmoving %s -> %sz#can't move '%s': not a regular filez0can't move '%s': destination '%s' already existsz2can't move '%s': destination '%s' not a valid pathFTzcouldn't move '%s' to '%s': %s)r0   zAcouldn't move '%s' to '%s' by copy/delete: delete '%s' failed: %s)Zos.pathr   r    r!   r#   r$   errnor   r)   r   r   r   r"   renamer   argsZEXDEVr5   r   )r   r   r0   r1   r   r    r!   r#   r$   r6   Zcopy_itr   Znummsgr   r   r   	move_file   s`    



r:   c                 C   s6   t | d}z|D ]}||d  qW 5 |  X d S )Nw
)r
   r	   r   )filenamecontentsfliner   r   r   
write_file   s
    
rA   )r   )r   r   r   Nr   r   )r   r   )
r   Zdistutils.errorsr   Z	distutilsr   r&   r   r5   r:   rA   r   r   r   r   <module>   s    
3      
d  
?