
    .PhI                        d dl mZ d dlZd dlZd dlZd dlZd dlmZ  ej        e	          Z
d Zd Zd Zd Zd Zd	 Z G d
 d          Zg dZdS )    )annotationsN)S_IWUSRc                    |                                  sKt                              dt          |                      t	          j        t          |                      d S d S )Nzcreate folder %s)existsLOGGERdebugstrosmakedirs)paths    Z/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/virtualenv/util/path/_sync.py
ensure_dirr      sS    ;;== 'T333
CII     c                l   | |k    rd|  }t          |          |                                sd S |                                r@|                                s,t                              d|           t          |           d S t                              d|           |                                 d S )Nz#source and destination is the same zremove directory %szremove file %s)
ValueErrorr   is_dir
is_symlinkr   r   safe_deleteunlink)srcdestmsgs      r   ensure_safe_to_dor      s    
d{{9C99oo;;== {{}} T__.. *D111D%t,,,r   c                    t          | |           t                              dt          | |                     |                    | |                                            d S )Nz
symlink %s)target_is_directory)r   r   r   _Debug
symlink_tor   r   r   s     r   symlinkr       sT    c4   
LLvc400111OOCSZZ\\O:::::r   c                   t          | |           |                                 }|rt          nt          j        }t
                              dt          | |                      |t          |           t          |                     d S )Nzcopy %s)	r   r   copytreeshutilcopyr   r   r   r	   )r   r   r   methods       r   r#   r#   &   sq    c4   ZZ\\F0XXV[F
LLF3--...
F3s88SYYr   c                   t          j        |           D ]\  }}}t           j                            |t           j                            ||                     }t           j                            |          st          j        |           |D ]W}t           j                            ||          }t           j                            ||          }t          j        ||           Xd S N)	r
   walkr   joinrelpathisdirr   r"   r#   )	r   r   root_filesdest_dirnamesrc_fdest_fs	            r   r!   r!   .   s    '#,, ' 'a7<<bgoodC&@&@AAw}}X&& 	"K!!! 	' 	'DGLLt,,EW\\(D11FKv&&&&	'	' 'r   c                z    d }t           j        dk    rdnd|i}t          j        t	          |           fddi| d S )Nc                    t          j        |t           j                  s't          j        |t                      | |           d S  r&   )r
   accessW_OKchmodr   )funcr   exc_infos      r   onerrorzsafe_delete.<locals>.onerror:   s>    yrw'' 	HT7###DJJJJJr   )      onexcr9   ignore_errorsT)sysversion_infor"   rmtreer	   )r   r9   kwargss      r   r   r   9   sW       )W44gg)WMF
M#d))::4:6:::::r   c                      e Zd ZddZddZdS )	r   returnNonec                "    || _         || _        d S r&   r   )selfr   r   s      r   __init__z_Debug.__init__F   s    			r   r	   c                ^    | j                                         rdnd | j         d| j        S )Nz
directory  z to )r   r   r   )rF   s    r   __str__z_Debug.__str__J   s4    "&(//"3"3;,,ZTXZZTYZZZr   N)rC   rD   )rC   r	   )__name__
__module____qualname__rG   rJ    r   r   r   r   E   sB           [ [ [ [ [ [r   r   )r#   r!   r   r   r   r   )
__future__r   loggingr
   r"   r>   statr   	getLoggerrK   r   r   r   r   r#   r!   r   r   __all__rN   r   r   <module>rT      s    " " " " " "  				  



      		8	$	$    ; ; ;     ' ' '	; 	; 	;[ [ [ [ [ [ [ [  r   