+
    UBi                       ^ RI Ht ^ RIt^ RIt^ RIHt ^RIHtHt ^RI	H
t ^RI	Ht R R ltRR	RR	RR
RR
RRRRRRRR/t ! R R]P                  4      tR R lt ! R R]P"                  4      t]P&                  ! R]4       ]P(                  ! ]P*                  ]]4       ]P,                  ! ]P*                  ]4       ]P.                  ! ]P*                  R4       ]P0                  ! ]P*                  . RO4       R# )     )annotationsN)IO)Image	ImageFile)i16be)o8c                    V ^8  d   QhRRRR/# )   prefixbytesreturnbool )formats   "7/usr/lib/python3.14/site-packages/PIL/SgiImagePlugin.py__annotate__r   "   s     3 3E 3d 3    c                J    \        V 4      ^8  ;'       d    \        V 4      R8H  # )r
     )leni16)r   s   &r   _acceptr   "   s"    v;!22Fs 22r   LL;16BRGBzRGB;16BRGBAzRGBA;16Bc                  *    ] tR t^4tRtRtR R ltRtR# )SgiImageFileSGIzSGI Image File Formatc                   V ^8  d   QhRR/# )r
   r   Noner   )r   s   "r   r   SgiImageFile.__annotate__8   s     G Gt Gr   c                	   V P                   f   Q hRpV P                   P                  V4      p\        V4      '       g   Rp\        V4      hV^,          pV^,          p\	        V^4      p\	        V^4      p\	        V^4      p\	        V^
4      p	 \
        WVV	3,          p
Yx3T n        T
P                  R4      ^ ,          T n	        T P                  R8X  d   RT n        R
pT^ 8X  d   Yx,          T,          pT^8X  d@   \        P                  ! RRT P                  ,           TT P                  ^ T34      .T n        R # . T n        TpT P                   FP  pT P                  P!                  \        P                  ! RRT P                  ,           Y^ T34      4       Y,          pKR  	  R # T^8X  d4   \        P                  ! R	RT P                  ,           YY34      .T n        R # R #   \         d    Rp\        T4      hi ; i)N   zNot an SGI image fileUnsupported SGI image mode;r   z	image/rgbSGI16rawsgi_rle)r   r   )fpreadr   
ValueErrorr   MODESKeyError_sizesplit_modemodecustom_mimetyper   _Tilesizetileappend)selfheadlensmsgcompressionbpc	dimensionxsizeysizezsizerawmodeorientationpagesizeoffsetlayers   &              r   _openSgiImageFile._open8   s   ww"""GGLL!qzz)CS/! d d 1I	 Aq	 Aq	 Ar
	"SU34G
 \
]]3'*
99#.D   !}s*HaxOO*A{3		 	 !YYEII$$!!6DII#5vq+?V
 &F ' Av		17k<WDI E  	".CS/!	"s   G   G9)r2   r0   r4   r7   N)__name__
__module____qualname____firstlineno__r   format_descriptionrH   __static_attributes__r   r   r   r   r   4   s    F0G Gr   r   c               (    V ^8  d   QhRRRRRRRR/# )	r
   imzImage.Imager+   z	IO[bytes]filenamezstr | bytesr   r!   r   )r   s   "r   r   r      s.     A Ak Ay AK AD Ar   c           	        V P                   R9  d   Rp\        V4      hV P                  pVP                  R^4      pVR9  d   Rp\        V4      hRpRp^ pV P                  w  r\        V P                   4      pV P                   R8X  d   V
^8X  d   ^M^pM^p^ p^p\        P                  P                  \        P                  P                  V4      4      ^ ,          p\        V\        4      '       d   VP                  RR4      p^ pVP                  \        P                  ! RV4      4       VP                  \!        V4      4       VP                  \!        V4      4       VP                  \        P                  ! R	V4      4       VP                  \        P                  ! R	V	4      4       VP                  \        P                  ! R	V
4      4       VP                  \        P                  ! R	V4      4       VP                  \        P                  ! R
V4      4       VP                  \        P                  ! R
V4      4       VP                  \        P                  ! RR4      4       VP                  \        P                  ! RV4      4       VP                  \        P                  ! RR4      4       VP                  \        P                  ! R
V4      4       VP                  \        P                  ! RR4      4       RpV^8X  d   RpV P#                  4        F&  pVP                  VP%                  RV^ V4      4       K(  	  \'        VR4      '       d   VP)                  4        R# R# )r   r   r%   r>   z%Unsupported number of bytes per pixelr   asciiignorez>hz>Hz>l4sr   79sr;   404sr   r(   flushN>   r   r   r   )   r
   r*   )r3   r-   encoderinfogetr6   r   ospathsplitextbasename
isinstancestrencodewritestructpackr   r1   tobyteshasattrrY   )rQ   r+   rR   r<   infor>   rD   magic_numberrlexyzr?   pinminpinmaximg_namecolormaprC   channels   &&&                r   _savert      s}   	ww***o >>D ((5!
C
&5o KL
C 77DABGGA	ww#~aAQ		 FFww 0 0 :;A>H(C  ??7H5HHHV[[|,-HHRWHHRWHHV[[y)*HHV[[q!"HHV[[q!"HHV[[q!"HHV[[v&'HHV[[v&'HHV[[s#$HHV[[)*HHV[[c"#HHV[[x()HHV[[%&G
ax88:
K@A  r7

 r   c                  &    ] tR t^tRtR R ltRtR# )SGI16DecoderTc                    V ^8  d   QhRRRR/# )r
   bufferz$bytes | Image.SupportsArrayInterfacer   ztuple[int, int]r   )r   s   "r   r   SGI16Decoder.__annotate__   s      A o r   c                	   V P                   f   Q hV P                  f   Q hV P                  w  r#pV P                  P                  V P                  P
                  ,          p\        V P                  4      pV P                   P                  R4       \        V4       F  p\        P                  ! RV P                  P                  V P                  P
                  34      pVP                  V P                   P                  ^V,          4      RRW44       V P                  P                  VP                  V4       K  	  R# )Nr$   r   r(   r   )r*   r   )fdrQ   argsstater@   rA   r   r3   seekranger   new	frombytesr,   putband)	r9   rx   rC   striderD   rE   rB   bandrs   s	   &&       r   decodeSGI16Decoder.decode   s    ww"""ww"""'+yy$::##djj&6&66DIIS%LDiidjj&6&6

8H8H%IJGQ\*E7F GGOOGJJ- ! r   r   N)rJ   rK   rL   rM   	_pulls_fdr   rO   r   r   r   rv   rv      s    I r   rv   r'   z	image/sgi)rZ   rZ   rZ   )rZ   r
   rZ   )r
   rZ   rZ   )r
   r
   rZ   )rZ      r   )r
   r   r   )rZ   r      )r
   r   r   )z.bwz.rgbz.rgbaz.sgi)
__future__r   r]   re   typingr    r   r   _binaryr   r   r   r   r.   r   rt   	PyDecoderrv   register_decoderregister_openr   register_saveregister_mimeregister_extensionsr   r   r   <module>r      s   . # 	    ! 3
 sswwuyvz		K9&& K\AH9&& 4   w -   L''w ?   L'' /   L'' 5   ,--/O Pr   