o
    Vh                     @   sn   d dl Z d dlmZmZ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Type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   F/var/www/vscode/kcb/lib/python3.10/site-packages/torchvision/_utils.pyfrom_str
   s
   
zStrEnumMeta.from_strN)	r   
__module____qualname__enumautor   r   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   typingr   r   r   Enumr   EnumMetar   r   r   r)   r   r   r   r   <module>   s    