a
    ¨º”hÀ  ã                   @  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¡r,qt|ƒdkrDd}t|ƒ‚dd„ | ¡ D ƒ}z|\}}}}	W n" tyˆ   |\}}| }}	Y n0 d|  kržd	krn qt|ƒt|ƒ t|	ƒ ||< qd
 |¡| _	d S )Nc                 S  s   g | ]}t |ƒd  ‘qS )é   r   )Ú.0Úi© r   ú=/var/www/auris/lib/python3.9/site-packages/PIL/PaletteFile.pyÚ
<listcomp>   ó    z(PaletteFile.__init__.<locals>.<listcomp>é   ó   #éd   zbad palette filec                 S  s   g | ]}t |ƒ‘qS r   )Úint)r   Úxr   r   r   r   )   r   r   éÿ   r   )
ÚrangeÚreadlineÚ
startswithÚ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   