a
    eÖ0hä  ã                   @   s8   d dl Z d dlZd dlmZ dd„ Zdd„ Zdd„ ZdS )	é    N)Úsixc                 C   sT   t | tjƒrt d| ¡S z$|  d¡} t d| ¡} |  d¡} W n tyN   Y n0 | S )NZNFDúutf-8)Ú
isinstancer   Ú	text_typeÚunicodedataÚ	normalizeÚdecodeÚencodeÚUnicodeError)Úpath© r   úF/var/www/auris/lib/python3.9/site-packages/setuptools/unicode_utils.pyÚ	decompose   s    
r   c              	   C   sZ   t | tjƒr| S t ¡ pd}|df}|D ],}z|  |¡W   S  tyR   Y q(Y q(0 q(dS )zY
    Ensure that the given path is decoded,
    NONE when no expected encoding works
    r   N)r   r   r   ÚsysÚgetfilesystemencodingr   ÚUnicodeDecodeError)r   Zfs_encÚ
candidatesÚencr   r   r   Úfilesys_decode   s    r   c                 C   s&   z|   |¡W S  ty    Y dS 0 dS )z/turn unicode encoding into a functional routineN)r	   ÚUnicodeEncodeError)Ústringr   r   r   r   Ú
try_encode'   s    r   )r   r   Zsetuptools.externr   r   r   r   r   r   r   r   Ú<module>   s
   