
    
3j	                          " S  S5      r g)c                   j    \ rS rSrSrSrSr\\\4rSrSr	Sr
SrS	rS
rSr\S 5       r\SS j5       rSrg)UserComment   asciijisunicode	shift_jis	utf_16_be   s   ASCII   s   JIS     s   UNICODE s           c                    [        U5      U R                  :  a  [        S5      eUSU R                   nXR                  S nX R                  :X  a  [        S5      e U R                  U R
                  U R                  U R                  U R                  U R                  0U   nUR                  USS9$ ! [         a    [        S5      ef = f)z
Convert "UserComment" value in exif format to str.

:param bytes data: "UserComment" value from exif
:return: u"foobar"
:rtype: str(Unicode)
:raises: ValueError if the data does not conform to the EXIF specification,
or the encoding is unsupported.
z%not enough data to decode UserCommentNz1prefix is UNDEFINED, unable to decode UserCommentz(unable to determine appropriate encodingreplaceerrors)len_PREFIX_SIZE
ValueError_UNDEFINED_PREFIX_ASCII_PREFIXASCII_JIS_PREFIX_JIS_UNICODE_PREFIX_UNICODEKeyErrordecode)clsdataprefixbodyencodings        G/home/wildlama/miniconda3/lib/python3.13/site-packages/piexif/helper.pyloadUserComment.load   s     t9s'''DEE's''($$%&***PQQ	I!!399coosxxI\I\^a^j^jH
 {{8I{66  	IGHH	Is   AB4 4C
c                    X R                   ;  a$  [        SR                  X R                   5      5      eU R                  U R                  U R
                  U R                  U R                  U R                  0U   nU R                  U R                  U R
                  U R                  0R                  X"5      nX1R                  USS9-   $ )z
Convert str to appropriate format for "UserComment".

:param data: Like u"foobar"
:param str encoding: "ascii", "jis", or "unicode"
:return: b"ASCII   foobar"
:rtype: bytes
:raises: ValueError if the encoding is unsupported.
z!encoding {!r} must be one of {!r}r   r   )	ENCODINGSr   formatr   r   JISr   UNICODEr   r   r   getencode)r   r   r   r   internal_encodings        r    dumpUserComment.dump3   s     ==(@GGR_R_`aa))S..#++WZWjWjkltu [[#,,JNNxb$5iHHH     N)r   )__name__
__module____qualname____firstlineno__r   r&   r'   r$   r   r   r   r   r   r   r   classmethodr!   r+   __static_attributes__r.   r-   r    r   r      so     E
CGW%I DHL 8M5K9O;7 70 I Ir-   r   N)r   r.   r-   r    <module>r5      s   AI AIr-   