
    4bh                         	 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 Zej$                   G d d             Zy)    N)commonprefixexistsgetatimegetctimegetmtimegetsizeisdirisfileislinksamefilesameopenfilesamestatALLOW_MISSINGc                 \    	 	 t        j                  |        y# t        t        f$ r Y yw xY w)NFT)osstatOSError
ValueError)paths    5/opt/python-3.12.12/usr/lib/python3.12/genericpath.pyr   r      s3    N
  Z  s    ++c                     	 	 t        j                  |       }t        j                  |j
                        S # t        t        f$ r Y yw xY wNF)r   r   r   r   S_ISREGst_moder   sts     r   r
   r
      sE    /WWT] <<

## Z     7 A	A	c                     	 	 t        j                  |       }t        j                  |j
                        S # t        t        f$ r Y yw xY wr   )r   r   r   r   S_ISDIRr   )sr   s     r   r	   r	   '   sE    FWWQZ <<

## Z  r   c                     	 	 t        j                  |       }t        j                  |j                        S # t        t        t        f$ r Y yw xY wr   )r   lstatr   r   AttributeErrorr   S_ISLNKr   r   s     r   r   r   3   sG    0XXd^ <<

## Z0 s   7 AAc                 B    	 t        j                  |       j                  S N)r   r   st_sizefilenames    r   r   r   <   s    ;778$$$    c                 B    	 t        j                  |       j                  S r&   )r   r   st_mtimer(   s    r   r   r   A   s    M778%%%r*   c                 B    	 t        j                  |       j                  S r&   )r   r   st_atimer(   s    r   r   r   F   s    G778%%%r*   c                 B    	 t        j                  |       j                  S r&   )r   r   st_ctimer(   s    r   r   r   K   s    K778%%%r*   c                     	 | syt        | d   t        t        f      s#t        t        t        j
                  |             } t        |       }t        |       }t        |      D ]  \  }}|||   k7  s|d | c S  |S )N r   )	
isinstancelisttuplemapr   fspathminmax	enumerate)ms1s2ics        r   r   r   Q   st    MR
 adT5M*#bii#$	QB	QB"11:bq6M  Ir*   c                 l    	 | j                   |j                   k(  xr | j                  |j                  k(  S r&   )st_inost_dev)r<   r=   s     r   r   r   c   s/    ?II" #II"$r*   c                 p    	 t        j                  |       }t        j                  |      }t        ||      S r&   )r   r   r   )f1f2r<   r=   s       r   r   r   j   s0    
 
B	BBr*   c                 p    	 t        j                  |       }t        j                  |      }t        ||      S r&   )r   fstatr   )fp1fp2r<   r=   s       r   r   r   w   s,    D	#B	#BBr*   c                     	 | j                  |      }|r| j                  |      }t        ||      }| j                  |      }||kD  r*|dz   }||k  r | ||dz    |k7  r
| d | | |d  fS |dz  }||k  r | | d d fS )N   r   )rfindr9   )psepaltsepextsepsepIndexaltsepIndexdotIndexfilenameIndexs           r   	_splitextrU      s    ? wws|Hggfox-wwvH( 1h&}Q/69(|Qxy\11QM h&
 ae8Or*   c                     dx}}|D ]L  }t        |t              rd}t        |t              rd})t        |  d|j                  j
                        d  |r|rt        d      d y y )NFTz;() argument must be str, bytes, or os.PathLike object, not z.Can't mix strings and bytes in path components)r3   strbytes	TypeError	__class____name__)funcnameargshasstrhasbytesr    s        r   _check_arg_typesr`      s    FXaF5!Hxj )778{{7K7K6NP QVZ[  (HItS vr*   c                       e Zd Z	 d Zd Zy)r   c                      y)Nzos.path.ALLOW_MISSING selfs    r   __repr__zALLOW_MISSING.__repr__   s    &r*   c                 .    | j                   j                  S r&   )rZ   r[   rd   s    r   
__reduce__zALLOW_MISSING.__reduce__   s    ~~&&&r*   N)r[   
__module____qualname__rf   rh   rc   r*   r   r   r      s    .''r*   r   )r   r   __all__r   r
   r	   r   r   r   r   r   r   r   r   r   rU   r`   object__new__r   rc   r*   r   <module>rn      s}   
 
 ($$$%
&
&
&$$.T ' ' 'r*   