
    =Ogo                     n    	 d dl Z d dlZg dZd Zd Zd Zd Zd Zd Zd	 Z	d
 Z
d Zd Zd Zd Zd ZdS )    N)commonprefixexistsgetatimegetctimegetmtimegetsizeisdirisfilesamefilesameopenfilesamestatc                 d    	 	 t          j        |            n# t          t          f$ r Y dS w xY wdS )NFT)osstatOSError
ValueError)paths    $/usr/lib64/python3.11/genericpath.pyr   r      sE    N
Z    uu4    --c                     	 	 t          j        |           }n# t          t          f$ r Y dS w xY wt          j        |j                  S NF)r   r   r   r   S_ISREGst_mode)r   sts     r   r
   r
      sR    /WT]]Z    uu<
###r   c                     	 	 t          j        |           }n# t          t          f$ r Y dS w xY wt          j        |j                  S r   )r   r   r   r   S_ISDIRr   )sr   s     r   r	   r	   '   sR    FWQZZZ    uu<
###r   c                 6    	 t          j        |           j        S N)r   r   st_sizefilenames    r   r   r   0   s    ;78$$    c                 6    	 t          j        |           j        S r   )r   r   st_mtimer!   s    r   r   r   5   s    M78%%r#   c                 6    	 t          j        |           j        S r   )r   r   st_atimer!   s    r   r   r   :   s    G78%%r#   c                 6    	 t          j        |           j        S r   )r   r   st_ctimer!   s    r   r   r   ?   s    K78%%r#   c                 8   	 | sdS t          | d         t          t          f          s't          t          t          j        |                     } t          |           }t          |           }t          |          D ]\  }}|||         k    r|d |         c S |S )N r   )	
isinstancelisttuplemapr   fspathminmax	enumerate)ms1s2ics        r   r   r   E   s    MRR
 adT5M** %#bi##$$	QB	QB"  11::bqb6MMM Ir#   c                 D    	 | j         |j         k    o| j        |j        k    S r   )st_inost_dev)r5   r6   s     r   r   r   W   s'    ?I" #I"$r#   c                 t    	 t          j        |           }t          j        |          }t          ||          S r   )r   r   r   )f1f2r5   r6   s       r   r   r   ^   s3    
 
B	BBr#   c                 t    	 t          j        |           }t          j        |          }t          ||          S r   )r   fstatr   )fp1fp2r5   r6   s       r   r   r   k   s/    D	#B	#BBr#   c                 @   	 |                      |          }|r%|                      |          }t          ||          }|                      |          }||k    r;|dz   }||k     r0| ||dz            |k    r| d |         | |d          fS |dz  }||k     0| | d d         fS )N   r   )rfindr2   )psepaltsepextsepsepIndexaltsepIndexdotIndexfilenameIndexs           r   	_splitextrN   y   s    ? wws||H .ggfoox--wwvH( 1h&&}Q./699(|Qxyy\11QM h&&
 ae8Or#   c                     dx}}|D ]P}t          |t                    rd}t          |t                    rd}2t          |  d|j        j                  d |r|rt          d          d d S d S )NFTz;() argument must be str, bytes, or os.PathLike object, not z.Can't mix strings and bytes in path components)r,   strbytes	TypeError	__class____name__)funcnameargshasstrhasbytesr   s        r   _check_arg_typesrY      s    FX [ [a 	[FF5!! 	[HHx P P78{7KP P Q QVZ[ T( THIItST T T Tr#   )r   r   __all__r   r
   r	   r   r   r   r   r   r   r   r   rN   rY    r#   r   <module>r\      s  
 
			     $ $ $$ $ $% % %
& & &
& & &
& & &  $$ $ $      .T T T T Tr#   