
    uYf                         d dl Z d dlZd dlmZ ej                  dk\  reee j                  e   f   Zneee j                  f   Zd Zdedede	fdZ
d	edefd
Zy)    N)Union)   	   c                 p    t         j                  j                  |       }t        j                  |d       y)z1Ensure that the parent directory of `path` existsT)exist_okN)ospathdirnamemakedirs)r	   r
   s     P/var/www/highfloat_scraper/venv/lib/python3.12/site-packages/setuptools/_path.pyensure_directoryr      s"    ggood#GKK$'    p1p2returnc                 0    t        |       t        |      k(  S )a  Differs from os.path.samefile because it does not require paths to exist.
    Purely string based (no comparison between i-nodes).
    >>> same_path("a/b", "./a/b")
    True
    >>> same_path("a/b", "a/./b")
    True
    >>> same_path("a/b", "././a/b")
    True
    >>> same_path("a/b", "./a/b/c/..")
    True
    >>> same_path("a/b", "../a/b/c")
    False
    >>> same_path("a", "a/b")
    False
    )normpath)r   r   s     r   	same_pathr      s      B<8B<''r   filenamec                    t         j                  dk(  rt        j                  j	                  |       n| }t        j                  j                  t        j                  j                  t        j                  j                  |                  S )z2Normalize a file/dir name for comparison purposes.cygwin)sysplatformr   r	   abspathnormcaserealpathr   )r   files     r   r   r   $   sV     ),(@277??8$hD77BGG,,RWW-=-=d-CDEEr   )r   r   typingr   version_infostrPathLikeStrPathr   boolr   r    r   r   <module>r%      s|    	 
 vCS))*GC$%G((' (w (4 (&Fw F3 Fr   