a
    h                     @   sn   d dl Z d dlmZ d dlmZ ede jdZG dd de jZG dd	 d	e jed
Z	dee
e
dddZdS )    N)Sequence)TypeVarT)boundc                   @   s(   e Zd ZejZee eedddZdS )StrEnumMeta)selfmemberreturnc              	   C   s<   z
| | W S  t y6   td| d| j dd Y n0 d S )NzUnknown value 'z' for .)KeyError
ValueError__name__)r   r    r   @/var/www/auris/lib/python3.9/site-packages/torchvision/_utils.pyfrom_str   s    
zStrEnumMeta.from_strN)	r   
__module____qualname__enumautotyper   strr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )StrEnumN)r   r   r   r   r   r   r   r      s   r   )	metaclass )seqseparate_lastr	   c                 C   s~   | sdS t | dkr$d| d  dS dddd | d d D  d }|r\t | d	kr\dnd
 d| d| d  d}|| S )Nr      'r   z', 'c                 S   s   g | ]}t |qS r   )r   ).0itemr   r   r   
<listcomp>       z#sequence_to_str.<locals>.<listcomp>   , )lenjoin)r   r   headtailr   r   r   sequence_to_str   s    $.r*   )r   )r   collections.abcr   typingr   Enumr   EnumMetar   r   r   r*   r   r   r   r   <module>   s   