3 �L�j�� @s�dZddlZddlZddddddd d d d d dg Zdd�Zdd �Zdd �Zdd�Zdd�Zdd�Z dd�Z dd�Z dd �Z dd �Z dd �Zdd�Zdd�ZejGdd�d��ZdS)z� Path operations common to more than one OS Do not use directly. The OS specific modules import the appropriate functions from this module themselves. �N� commonprefix�exists�getatime�getctime�getmtime�getsize�isdir�isfile�samefile� sameopenfile�samestat� ALLOW_MISSINGc Cs(ytj|�Wntk r"dSXdS)zDTest whether a path exists. Returns False for broken symbolic linksFT)�os�stat�OSError)�path�r�#/usr/lib64/python3.6/genericpath.pyrs c Cs0ytj|�}Wntk r"dSXtj|j�S)z%Test whether a path is a regular fileF)rrr�S_ISREG�st_mode)r�strrrr s c Cs0ytj|�}Wntk r"dSXtj|j�S)zW||dd�fS)z�Split the extension from a pathname. Extension is everything from the last dot to the end, ignoring leading dots. Returns "(root, ext)"; ext may be empty.�Nr)�rfindr%)�p�sep�altsep�extsep�sepIndex� altsepIndex�dotIndex� filenameIndexrrr� _splitextus      r=cGsbd}}xB|D]:}t|t�r"d}qt|t�r2d}qtd||jjf�d�qW|r^|r^td�d�dS)NFTz*%s() argument must be str or bytes, not %rz.Can't mix strings and bytes in path components)r�str�bytes� TypeError� __class__�__name__)�funcname�args�hasstr�hasbytesrrrr�_check_arg_types�s   rGc@s eZdZdZdd�Zdd�ZdS)r z$Special value for use in realpath().cCsdS)Nzos.path.ALLOW_MISSINGr)�selfrrr�__repr__�szALLOW_MISSING.__repr__cCs|jjS)N)rArB)rHrrr� __reduce__�szALLOW_MISSING.__reduce__N)rB� __module__� __qualname__�__doc__rIrJrrrrr �s)rMrr�__all__rr rrrrrrr r r r=rG�object�__new__r rrrr�s&