U
    ڲg                     @  s6   d dl mZ d dlmZ ddlmZ G dd dZdS )    )annotations)IO   o8c                   @  s2   e Zd ZdZdZdddddZdd	d
dZdS )PaletteFilez-File handler for Teragon-style palette files.ZRGBz	IO[bytes]None)fpreturnc           
      C  s   dd t dD }| }|s q|d d dkr2qt|dkrJd}t|dd | D }z|\}}}}	W n$ tk
r   |\}}| }}	Y nX d	|  krd
krn qt|t| t|	 ||< qd|| _d S )Nc                 S  s   g | ]}t |d  qS )   r   ).0i r   3/tmp/pip-unpacked-wheel-xela2va7/PIL/PaletteFile.py
<listcomp>   s     z(PaletteFile.__init__.<locals>.<listcomp>   r      #d   zbad palette filec                 S  s   g | ]}t |qS r   )int)r   xr   r   r   r   )   s     r          )	rangereadlinelenSyntaxErrorsplit
ValueErrorr   joinpalette)
selfr	   r   smsgvr   rgbr   r   r   __init__   s$    zPaletteFile.__init__ztuple[bytes, str])r
   c                 C  s   | j | jfS )N)r   rawmode)r    r   r   r   
getpalette5   s    zPaletteFile.getpaletteN)__name__
__module____qualname____doc__r(   r'   r)   r   r   r   r   r      s   r   N)
__future__r   typingr   _binaryr   r   r   r   r   r   <module>   s   