
    :h                        d dl mZ ddlmZmZmZ ddlmZ d
dZ	 G d dej                        Z
 ej                  e
j                  e
e	        ej                  e
j                  d       y	)    )annotations   )Image	ImageFileImagePalette)i32bec                >    t        |       dk\  xr t        |       dk(  S )N   ijY)leni32)prefixs    P/var/www/urcfiles/bundle/venv/lib/python3.12/site-packages/PIL/SunImagePlugin.py_acceptr      s    v;!9Fz 99    c                      e Zd ZdZdZddZy)SunImageFileSUNzSun Raster Filec                >   | j                   J | j                   j                  d      }t        |      sd}t        |      d}t	        |d      t	        |d      f| _        t	        |d      }t	        |d      }t	        |d      }t	        |d      }|d	k(  rd
\  | _        }nl|dk(  rd\  | _        }n\|dk(  r
dx| _        }nM|dk(  r|dk(  rd\  | _        }n8d\  | _        }n-|dk(  r|dk(  rd\  | _        }nd\  | _        }nd}t        |      |r|dkD  rd}t        |      |d	k7  rd}t        |      ||z   }t        j                  d| j                   j                  |            | _	        | j                  dk(  rd| _        |j                  dd      }| j                  d   |z  dz   dz  dz  }	|dv r.t        j                  dd| j                  z   |||	f      g| _        y |dk(  r,t        j                  dd| j                  z   ||      g| _        y d }t        |      )!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Pr            )r   r   r   r
      raw)r   r   sun_rlez Unsupported Sun Raster file type)fpreadr   SyntaxErrorr   _size_moder   r'   palettemodereplacesizer   _Tiletile)
selfsmsgoffsetdepth	file_typepalette_typepalette_lengthrawmodestrides
             r   _openzSunImageFile._open$   s3     ww""" GGLLqz*Cc""AYAq	)
Ar
2J	1bzQA:",DJaZ",DJaZ#&&DJb[A~&2#
G&2#
Gb[A~&3#
G&3#
G.Cc""$8!#&&q 0!#&&n,F'++GTWW\\.5QRDLyyC 
!//#s3 99Q<%'",3q8( 'v		'96GVCTUDI !^	6DII+=vwODI 5Cc""r   N)returnNone)__name__
__module____qualname__formatformat_descriptionr>    r   r   r   r       s    F*d#r   r   z.rasN)r   bytesr?   bool)
__future__r    r   r   r   _binaryr   r   r   r   register_openrD   register_extensionrF   r   r   <module>rN      sa   $ # , , !:h#9&& h#^   L''w ?   ,,f 5r   