§
    yØj>  ã            	      ó°  — d dl mZ ddhZd dlZd dlZddlmZmZ ddlm	Z
 ddlmZ d	Zerd d
lmZ d&d„ZdddddddddœZ G d„ dej        ¦  «        Zd'd „Z G d!„ d"ej        ¦  «        Z ej        d#e¦  «          ej        ej        ee¦  «          ej        ej        e¦  «          ej        ej        d$¦  «          ej        ej        g d%¢¦  «         dS )(é    )ÚannotationszPIL._binaryÚstructNé   )ÚImageÚ	ImageFile)Úi16be)Úo8F)ÚIOÚprefixÚbytesÚreturnÚboolc                óN   — t          | ¦  «        dk    ot          | ¦  «        dk    S )Né   éÚ  )ÚlenÚi16)r   s    ú‡/Users/tedpeters/Documents/Projects/Claude Projects/Misc Tools/notename-sheets/.venv/lib/python3.11/site-packages/PIL/SgiImagePlugin.pyÚ_acceptr   '   s#   € Ýˆv‰;Œ;˜!ÒÐ2¥ F¡¤¨sÒ 2Ð2ó    ÚLúL;16BÚRGBzRGB;16BÚRGBAzRGBA;16B))r   r   r   )r   r   r   )r   r   r   )r   r   r   )r   é   r   )r   r   r   )r   r   é   )r   r   r   c                  ó   — e Zd ZdZdZdd„ZdS )ÚSgiImageFileÚSGIzSGI Image File Formatr   ÚNonec                ó¦  — | j         €J ‚d}| j                              |¦  «        }t          |¦  «        sd}t          |¦  «        ‚|d         }|d         }t	          |d¦  «        }t	          |d¦  «        }t	          |d¦  «        }t	          |d¦  «        }		 t
          |||	f         }
n# t          $ r d	}t          |¦  «        ‚w xY w||f| _        |
                     d
¦  «        d         | _	        | j
        dk    rd| _        d}|dk    r•||z  |z  }|dk    r1t          j        dddg| j        ¢R || j
        d|f¦  «        g| _        d S g | _        |}| j
        D ]C}| j                             t          j        dddg| j        ¢R ||d|f¦  «        ¦  «         ||z  }ŒDd S |dk    r,t          j        dddg| j        ¢R ||
||f¦  «        g| _        d S d S )Né   zNot an SGI image filer   r   r   é   é   é
   úUnsupported SGI image modeú;r   r   z	image/rgbéÿÿÿÿÚSGI16Úrawr   Úsgi_rle)Ú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   Ú_openzSgiImageFile._open=   sR  € àŒwÐ"Ð"Ð"àˆØŒG�LŠL˜Ñ!Ô!ˆå�q‰zŒzð 	"Ø)ˆCÝ˜S‘/”/Ð!ð ˜”dˆð �Œdˆõ ˜˜1‘I”Iˆ	õ �A�q‘	”	ˆõ �A�q‘	”	ˆõ �A�r‘
”
ˆð	"Ý˜S )¨UÐ3Ô4ˆGˆGøÝð 	"ð 	"ð 	"Ø.ˆCÝ˜S‘/”/Ð!ð	"øøøð ˜E�\ˆŒ
Ø—]’] 3Ñ'Ô'¨Ô*ˆŒ
ØŒ9˜ÒÐØ#.ˆDÔ ð ˆð ˜!ÒÐØ˜u‘} sÑ*ˆHØ�aŠxˆxå”OØØ˜AÐ* ¤	Ð*Ð*ØØœ A {Ð3ñ	ô ð�”	�	�	ð �”	Ø �Ø!œYð 'ð '�EØ”I×$Ò$Ý!œØ! A qÐ#5¨4¬9Ð#5Ð#5°vÀÀqÈ+Ð?Vñô ñô ð ð
 ˜hÑ&�F�Fð'ð 'ð ˜AÒÐå”Ø  1Ð1 t¤yÐ1Ð1°7¸WÀkÐSVÐ<Wñô ðˆDŒIˆIˆIð Ðs   ÂB( Â(CN)r   r    )Ú__name__Ú
__module__Ú__qualname__ÚformatÚformat_descriptionrI   © r   r   r   r   9   s9   € € € € € Ø€FØ0ÐðGð Gð Gð Gð Gð Gr   r   ÚimúImage.Imager,   ú	IO[bytes]Úfilenameústr | bytesr    c           	     ó(  — | j         dvrd}t          |¦  «        ‚| j        }|                     dd¦  «        }|dvrd}t          |¦  «        ‚d}d}d	}| j        \  }	}
t          | j         ¦  «        }| j         d
k    r|
dk    rdnd}nd}d	}d}t          j                             t          j         	                    |¦  «        ¦  «        d	         }t          |t          ¦  «        r|                     dd¦  «        }d	}|                     t          j        d|¦  «        ¦  «         |                     t!          |¦  «        ¦  «         |                     t!          |¦  «        ¦  «         |                     t          j        d|¦  «        ¦  «         |                     t          j        d|	¦  «        ¦  «         |                     t          j        d|
¦  «        ¦  «         |                     t          j        d|¦  «        ¦  «         |                     t          j        d|¦  «        ¦  «         |                     t          j        d|¦  «        ¦  «         |                     t          j        dd¦  «        ¦  «         |                     t          j        d|¦  «        ¦  «         |                     t          j        dd¦  «        ¦  «         |                     t          j        d|¦  «        ¦  «         |                     t          j        dd¦  «        ¦  «         d
}|dk    rd}|                      ¦   «         D ]-}|                     |                     d|d	|¦  «        ¦  «         Œ.t'          |d¦  «        r|                     ¦   «          d S d S )N>   r   r   r   r&   r?   r   )r   r   z%Unsupported number of bytes per pixelr(   r   r   r   r   r   éÿ   ÚasciiÚignorez>hz>Hz>lÚ4sr   Ú79sr<   Ú404sr   r*   Úflush)r4   r.   ÚencoderinfoÚgetr7   r   ÚosÚpathÚsplitextÚbasenameÚ
isinstanceÚstrÚencodeÚwriter   Úpackr	   r2   ÚtobytesÚhasattrr\   )rP   r,   rS   r=   Úinfor?   rE   Úmagic_numberÚrleÚxÚyÚzr@   ÚpinminÚpinmaxÚimg_nameÚcolormaprD   Úchannels                      r   Ú_saveru   ‡   s!  € Ø	„wÐ*Ð*Ð*Ø*ˆÝ˜‰oŒoÐð Œ>€Dð �(Š(�5˜!Ñ
Ô
€Cà
�&ÐÐØ5ˆÝ˜‰oŒoÐð €Kà€Là
€Cð Œ7�D€A€qåˆBŒG‰Œ€Aà	„w�#‚~€~Ø˜aš˜�A�A Qˆ	ˆ	àˆ	ð €Fà€FåŒw×Ò¥¤× 0Ò 0°Ñ :Ô :Ñ;Ô;¸AÔ>€HÝ�(�CÑ Ô ð 6Ø—?’? 7¨HÑ5Ô5ˆà€HØ‡H‚H�VŒ[˜˜|Ñ,Ô,Ñ-Ô-Ð-Ø‡H‚H�R�‰WŒWÑÔÐØ‡H‚H�R�‰WŒWÑÔÐØ‡H‚H�VŒ[˜˜yÑ)Ô)Ñ*Ô*Ð*Ø‡H‚H�VŒ[˜˜qÑ!Ô!Ñ"Ô"Ð"Ø‡H‚H�VŒ[˜˜qÑ!Ô!Ñ"Ô"Ð"Ø‡H‚H�VŒ[˜˜qÑ!Ô!Ñ"Ô"Ð"Ø‡H‚H�VŒ[˜˜vÑ&Ô&Ñ'Ô'Ð'Ø‡H‚H�VŒ[˜˜vÑ&Ô&Ñ'Ô'Ð'Ø‡H‚H�VŒ[˜˜sÑ#Ô#Ñ$Ô$Ð$Ø‡H‚H�VŒ[˜ Ñ)Ô)Ñ*Ô*Ð*Ø‡H‚H�VŒ[˜˜cÑ"Ô"Ñ#Ô#Ð#Ø‡H‚H�VŒ[˜˜xÑ(Ô(Ñ)Ô)Ð)Ø‡H‚H�VŒ[˜ Ñ%Ô%Ñ&Ô&Ð&à€GØ
ˆa‚x€xØˆà—8’8‘:”:ð Bð BˆØ
�Š�—’ ¨°°KÑ@Ô@ÑAÔAÐAÐAåˆr�7ÑÔð Ø
�Š‰
Œ
ˆ
ˆ
ˆ
ðð r   c                  ó   — e Zd ZdZdd„ZdS )	ÚSGI16DecoderTÚbufferúImage.DecoderInputr   útuple[int, int]c                óð  — | j         €J ‚| j        €J ‚| j        \  }}}| j        j        | j        j        z  }t          | j        ¦  «        }| j                              d¦  «         t          |¦  «        D ]�}t          j        d| j        j        | j        j        f¦  «        }|                     | j                              d|z  ¦  «        dd||¦  «         | j                             |j        |¦  «         Œ‚dS )Nr"   r   r   r*   r   )r(   r   )ÚfdrP   ÚargsÚstaterA   rB   r   r4   ÚseekÚranger   ÚnewÚ	frombytesr-   Úputband)	r:   rx   rD   ÚstriderE   rF   rC   Úbandrt   s	            r   ÚdecodezSGI16Decoder.decodeÎ   sí   € ØŒwÐ"Ð"Ð"ØŒwÐ"Ð"Ð"à'+¤yÑ$ˆ�˜Ø”:Ô# d¤jÔ&6Ñ6ˆÝ�D”I‘”ˆØŒ�Š�SÑÔÐå˜%‘L”Lð 	.ð 	.ˆDÝ”i  d¤jÔ&6¸¼
Ô8HÐ%IÑJÔJˆGØ×ÒØ”—’˜Q ™\Ñ*Ô*¨E°7¸FÀKñô ð ð ŒG�OŠO˜GœJ¨Ñ-Ô-Ð-Ð-àˆur   N)rx   ry   r   rz   )rJ   rK   rL   Ú	_pulls_fdr†   rO   r   r   rw   rw   Ë   s-   € € € € € Ø€Iðð ð ð ð ð r   rw   r)   z	image/sgi)z.bwz.rgbz.rgbaz.sgi)r   r   r   r   )rP   rQ   r,   rR   rS   rT   r   r    )Ú
__future__r   Ú__lazy_modules__r_   r   Ú r   r   Ú_binaryr   r   r	   ÚTYPE_CHECKINGÚtypingr
   r   r/   r   ru   Ú	PyDecoderrw   Úregister_decoderÚregister_openrM   Úregister_saveÚregister_mimeÚregister_extensionsrO   r   r   ú<module>r”      sÍ  ðð. #Ð "Ð "Ð "Ð "Ð "à! 8Ð,Ð à 	€	€	€	Ø €€€à Ð Ð Ð Ð Ð Ð Ð Ø !Ð !Ð !Ð !Ð !Ð !Ø Ð Ð Ð Ð Ð à€Øð ØÐÐÐÐÐð3ð 3ð 3ð 3ð
 ØØØØØØØð		ð 		€ðKð Kð Kð Kð K�9Ô&ñ Kô Kð Kð\Að Að Að AðHð ð ð ð �9Ô&ñ ô ð ð4 €Ô �w Ñ -Ô -Ð -Ø €Ô �LÔ'¨°wÑ ?Ô ?Ð ?Ø €Ô �LÔ'¨Ñ /Ô /Ð /Ø €Ô �LÔ'¨Ñ 5Ô 5Ð 5à €Ô ˜,Ô-Ð/OÐ/OÐ/OÑ PÔ PÐ PÐ PÐ Pr   