o
    h                     @   sr   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dede
de
fddZdS )    N)Sequence)TypeVarT)boundc                   @   s,   e Zd ZejZdee dedefddZdS )StrEnumMetaselfmemberreturnc              	   C   s4   z| | W S  t y   td| d| j dd w )NzUnknown value 'z' for .)KeyError
ValueError__name__)r   r    r   X/home/www/facesmatcher.com/frenv_anti/lib/python3.10/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>   s    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    