o
    Z#ûaº  ã                   @   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é   i•j¦Y)ÚlenÚi32)Úprefix© r
   ú4/usr/lib/python3/dist-packages/PIL/SunImagePlugin.pyÚ_accept   s   r   c                   @   s   e Zd ZdZdZdd„ ZdS )ÚSunImageFileÚSUNzSun Raster Filec           	      C   sº  | j  d¡}t|ƒstdƒ‚d}t|dƒt|dƒf| _t|dƒ}t|dƒ}t|dƒ}t|dƒ}|d	kr9d
\| _}n@|dkrCd\| _}n6|dkrMd | _}n,|dkra|dkr[d\| _}nd\| _}n|dkru|dkrod\| _}n
d\| _}ntdƒ‚|r¨|dkrƒtdƒ‚|d	kr‹tdƒ‚|| }t d| j  |¡¡| _	| jdkr¨d| _| 
dd¡}| jd | d d d }|dv rÈdd| j |||ffg| _d S |dkrÙdd| j ||fg| _d S td ƒ‚)!Né    znot an SUN raster filer   é   é   é   é   é   r   )Ú1z1;I)ÚLzL;4r   é   )ÚRGBr   )r   ÚBGR)r   ÚRGBX)r   ÚBGRXzUnsupported Mode/Bit Depthi   z Unsupported Color Palette LengthzUnsupported Palette TypezRGB;LÚPé    é   é   é   )r   r   r   r   é   Úraw)r   r   Úsun_rlez Unsupported Sun Raster file type)ÚfpÚreadr   ÚSyntaxErrorr   Ú_sizeÚmoder   r"   ÚpaletteÚreplaceÚsizeÚtile)	ÚselfÚsÚoffsetÚdepthÚ	file_typeÚpalette_typeÚpalette_lengthÚrawmodeÚstrider
   r
   r   Ú_open%   sP   




zSunImageFile._openN)Ú__name__Ú
__module__Ú__qualname__ÚformatÚformat_descriptionr6   r
   r
   r
   r   r       s    r   z.rasN)Ú r   r   r   Ú_binaryr   r   r   r   Úregister_openr:   Úregister_extensionr
   r
   r
   r   Ú<module>   s   f