MINI MINI MANI MO
3
  \S                  @   s2  d Z dZdZdZdZdZdZdZdZddl	Z	ddl
T ddlZddlT d	d
ddd
ddddddddddddddddddd d!d"d#d$d%d&d'd(g Zd)d* Z
d+d	 Zd,d
 Zd-d Zd.d
 Zd/d Zejj e_ d0d Zd1d Zd2d Zd3d4 Zd5d Zd6d Zd7d Zd8d ZG d9d: d:eZd;d Zd<d Zd=d' Z d>Z!dS )?z7Pathname and path-related operations for the Macintosh.:z::.
NzDev:Null    )*normcaseisabsjoin
splitdrivesplitsplitextbasenamedirnamecommonprefixgetsizegetmtimegetatimegetctimeislinkexistslexistsisdirisfile
expanduser
expandvarsnormpathabspathcurdirpardirseppathsepdefpathaltsepextsepdevnullrealpathsupports_unicode_filenamesc             C   s   t | trdS dS d S )N   :r   )
isinstancebytes)path r*   /usr/lib64/python3.6/macpath.py
_get_colon   s    
r,   c             C   s(   t | ttfs tdj| jj| j S )Nz2normcase() argument must be str or bytes, not '{}')r'   r(   str	TypeErrorformat	__class____name__lower)r)   r*   r*   r+   r   #   s    c             C   s    t | }|| ko| dd |kS )zReturn true if a path is absolute.
    On the Mac, relative paths begin with a colon,
    but as a special case, paths with no colons at all are also relative.
    Anything else is absolute (the string up to the first colon is the
    volume name).N   )r,   )scolonr*   r*   r+   r   *   s    c          
   G   s   yt | }| }|s"|d d |  xl|D ]d}| s:t|r@|}q(|d d |kr\|dd  }||krl|| }|dd  |kr|| }|| }q(W |S  tttfk
r   tjd| f|   Y nX d S )Nr   r3   r   )r,   r   r.   AttributeErrorBytesWarninggenericpath_check_arg_types)r4   pr5   r)   tr*   r*   r+   r   5   s(    
c             C   s   t | }|| kr | dd | fS d}x0tt| D ] }| ||d  |kr2|d }q2W | d|d  | |d  }}|r||kr|| }||fS )zSplit a pathname into two parts: the directory leading up to the final
    bit, and the basename (the filename, without colons, in that directory).
    The result (s, t) is such that join(s, t) yields the original argument.Nr   r3   )r,   rangelen)r4   r5   colir)   filer*   r*   r+   r
   L   s      c             C   s.   t | trtj| dtdS tj| tttS d S )Nr&