U
    %d0                     @   s\   d dl mZmZmZ d dlmZ dd ZG dd dejZe	ej
ee eej
d dS )	   )Image	ImageFileImagePalette)i32bec                 C   s   t | dkot| dkS )N   ijY)leni32)prefix r
   6/tmp/pip-unpacked-wheel-pyoxjemt/PIL/SunImagePlugin.py_accept   s    r   c                   @   s   e Zd ZdZdZdd ZdS )SunImageFileZSUNzSun Raster Filec           
      C   s  | j d}t|s d}t|d}t|dt|df| _t|d}t|d}t|d}t|d}|d	krvd
\| _}n|dkrd\| _}np|dkrd | _}n\|dkr|dkrd\| _}qd\| _}n4|dkr|dkrd\| _}qd\| _}nd}t||rh|dkrd}t||d	kr,d}t||| }td| j || _	| jdkrhd| _|
dd}| jd | d d d }	|dkrdd| j |||	ffg| _n.|dkrdd| j ||fg| _nd }t|d S )!N    znot an SUN raster filer                  r   )1z1;I)LzL;4r      )RGBr   )r   ZBGR)r   ZRGBX)r   ZBGRXzUnsupported Mode/Bit Depthi   z Unsupported Color Palette LengthzUnsupported Palette TypezRGB;LP             )r   r   r   r      raw)r   r   Zsun_rlez Unsupported Sun Raster file type)fpreadr   SyntaxErrorr   _sizemoder   r   ZpalettereplacesizeZtile)
selfsmsgoffsetdepth	file_typeZpalette_typeZpalette_lengthrawmodeZstrider
   r
   r   _open%   sZ    







zSunImageFile._openN)__name__
__module____qualname__formatformat_descriptionr-   r
   r
   r
   r   r       s   r   z.rasN) r   r   r   _binaryr   r   r   r   Zregister_openr1   Zregister_extensionr
   r
   r
   r   <module>   s
   k