
    1\h~                         	 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ej         G d d                      ZdS )    N)commonprefixexistsgetatimegetctimegetmtimegetsizeisdirisfilesamefilesameopenfilesamestatALLOW_MISSINGc                 d    	 	 t          j        |            n# t          t          f$ r Y dS w xY wdS )NFT)osstatOSError
ValueError)paths    5/opt/python-3.11.14/usr/lib/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)r6   r7   s     r   r   r   W   s'    ?I" #I"$r$   c                 t    	 t          j        |           }t          j        |          }t          ||          S r    )r   r   r   )f1f2r6   r7   s       r   r   r   ^   s3    
 
B	BBr$   c                 t    	 t          j        |           }t          j        |          }t          ||          S r    )r   fstatr   )fp1fp2r6   r7   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   )rfindr3   )psepaltsepextsepsepIndexaltsepIndexdotIndexfilenameIndexs           r   	_splitextrO   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_typesrZ      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$   c                       e Zd Z	 d Zd ZdS )r   c                     dS )Nzos.path.ALLOW_MISSING selfs    r   __repr__zALLOW_MISSING.__repr__   s    &&r$   c                     | j         j        S r    )rT   rU   r^   s    r   
__reduce__zALLOW_MISSING.__reduce__   s    ~&&r$   N)rU   
__module____qualname__r`   rb   r]   r$   r   r   r      s5        .' ' '' ' ' ' 'r$   r   )r   r   __all__r   r
   r	   r   r   r   r   r   r   r   r   rO   rZ   object__new__r   r]   r$   r   <module>rh      s5  
 
			 ( ( (  $ $ $$ $ $% % %
& & &
& & &
& & &  $$ $ $      .T T T ' ' ' ' ' ' ' ' ' 'r$   