B
    Õ¹`­  ã               @   s,   d dl Z d dlZdd„ Zdd„ Zdd„ ZdS )é    Nc             C   sT   t | tƒrt d| ¡S y$|  d¡} t d| ¡} |  d¡} W n tk
rN   Y nX | S )NZNFDzutf-8)Ú
isinstanceÚstrÚunicodedataÚ	normalizeÚdecodeÚencodeÚUnicodeError)Úpath© r
   ú@/tmp/pip-install-4tin_oll/setuptools/setuptools/unicode_utils.pyÚ	decompose   s    

r   c          	   C   sV   t | tƒr| S t ¡ pd}|df}x.|D ]&}y
|  |¡S  tk
rL   w(Y q(X q(W dS )zY
    Ensure that the given path is decoded,
    NONE when no expected encoding works
    zutf-8N)r   r   ÚsysÚgetfilesystemencodingr   ÚUnicodeDecodeError)r	   Zfs_encÚ
candidatesÚencr
   r
   r   Úfilesys_decode   s    


r   c             C   s$   y
|   |¡S  tk
r   dS X dS )z/turn unicode encoding into a functional routineN)r   ÚUnicodeEncodeError)Ústringr   r
   r
   r   Ú
try_encode%   s    
r   )r   r   r   r   r   r
   r
   r
   r   Ú<module>   s   