o
    p̦iG                     @   s   d Z dd Zdd ZdS )zConvert a NT pathname to a file URL and vice versa.

This module only exists to provide OS-specific code
for urllib.requests, thus do not use directly.
c                 C   s   ddl }ddl}| dd} d| vr.| dd dkr | dd } | d}|jd	|S | d}t|dksB|d d
 |jvrJd|  }t	||d d
 
 }|d d}|d }|D ]}|rm|d	 |j| }q_|dr|| dr||d	7 }|S )z{OS-specific conversion from a relative URL of the 'file' scheme
    to a file system path; not recommended for general use.    N:|   z////   /\z	Bad URL:    )stringurllib.parsereplacesplitparseunquotejoinlenascii_lettersOSErrorupperendswith)urlr
   urllib
componentscomperrordrivepath r   !/usr/lib/python3.10/nturl2path.pyurl2pathname   s*   	

r   c                 C   s0  ddl }| dd dkr3| dd } | dd  dkr%d| dd  } n| dd d	kr3td
|  d	| vrQ| dd dkrCd|  } | d}|jd|S | jd	dd}t|dksft|d dkrnd
|  }t||j|d  }|d d}d| d	 }|D ]}|r|d |j| }q|S )z{OS-specific conversion from a file system path to a relative URL
    of the 'file' scheme; not recommended for general use.r   Nr   z\\?\zUNC\r   r	   r   r   z
Bad path: z\\r   )maxsplitz///)r   r   r   r   r   quoter   r   )pr   r   r   r   r   r   r   r   r   pathname2url-   s0   
r#   N)__doc__r   r#   r   r   r   r   <module>   s    %