
    (php+                    b   S SK Jr  S SKrS SKrS SKJrJr  SSKJrJ	r	J
r
  SrSrSrS	rS
rSrSrSrSr\S \S \S \S \S \S \S \S \S 0	r0 SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS _S!S"_S#S$_S%S&_S'S(_S)S*_S+S,_S-S.S/S0S1.ErS2 H  rS3S4\ 34\S5\ S63'   S3S4\ 34\S7\ S63'   M!     S8 H%  rS9\ 3S9\ 34\S5\ S63'   S9\ 3S9\ 34\S7\ S63'   M'     S: H  rS;S9\ 34\S5\ S63'   S;S9\ 34\S7\ S63'   M!     \" S<S=5       H  rS3S4\ 34\S7\ S63'   M     \R2                  " S>5      rSOS? jr " S@ SA\	R                  5      rSBSCS*SDS,SESFSGSHSISS-SJS/SKSL.rSPSM jr\R>                  " \R@                  \5        \RB                  " \R@                  \5        \RD                  " \R@                  SN5        g)Q    )annotationsN)IOAny   )Image	ImageFileImagePaletteCommentDatezDigitalization equipmentzFile size (no of images)LutNamezScale (x,y)zImage size (x*y)z
Image typez	0 1 image)1r   z	L 1 imagezGreyscale image)Lr   zGrayscale imagez	RGB image)RGBRGB;Lz	RLB image)r   RLBz	RYB imagezB1 imagezB2 image)PzP;2zB4 image)r   zP;4z
X 24 image)r   r   zL 32 S image)IzI;32zL 32 F image)FzF;32z
RGB3 image)r   RGB;Tz
RYB3 image)r   RYB;TzLA image)LAzLA;LzPA image)r   PA;L)RGBAzRGBA;L)r   RGBX;L)CMYKzCMYK;L)YCbCrYCbCr;L)z
RGBA imagez
RGBX imagez
CMYK imagez	YCC image)88S1616S3232Fr   F;zL z imagezL*)r!   16L16BzI;)32Sr      !   s"   ^([A-Za-z][^:]*):[ \t]*(.*)[ \t]*$c                P     [        U 5      $ ! [         a    [        U 5      s $ f = fN)int
ValueErrorfloat)ss    D/var/www/html/venv/lib/python3.13/site-packages/PIL/ImImagePlugin.pynumberr2   k   s(    1v Qxs   
 %%c                  f    \ rS rSrSrSrSrSS jr\SS j5       r	\SS j5       r
SS jrSS	 jrS
rg)ImImageFilev   IMzIFUNC Image MemoryFc                @   SU R                   R                  S5      ;  a  Sn[        U5      eU R                   R                  S5        SnSU R                  [
        '   SU R                  [        '   SU R                  [        '   SU l         U R                   R                  S5      nUS:X  a  M$  U(       a  US	:X  d  US
:X  a  GOX0R                   R                  5       -   n[        U5      S:  a  Sn[        U5      eUSS  S:X  a  US S nOUSS  S:X  a  US S n [        R                  U5      nU(       Ga'  UR                  SS5      u  pgUR!                  SS5      nUR!                  SS5      nU[        ["        [        4;   aO  UR%                  SS5      n['        [)        [*        UR                  S5      5      5      n[        U5      S:X  a  US   nO$U[
        :X  a  U[,        ;   a  [,        U   u  opl        U[.        :X  a?  X`R                  ;   a  U R                  U   R1                  U5        OU/U R                  U'   OXpR                  U'   U[2        ;   a  US-  nO SUR!                  SS5       3n[        U5      eGM  U(       d  Sn[        U5      eU R                  [           U l        U R                  [
           U l        U(       a6  US S S
:w  a-  U R                   R                  S5      nU(       a  US S S
:w  a  M-  U(       d  Sn[        U5      e[8        U R                  ;   Ga  U R                   R                  S5      nSn	Sn
[;        S5       H/  nX   XS-      s=:X  a  XS-      :X  a  O  OX   U:w  a  Sn
M+  M-  Sn	M1     U R<                  S;   a|  U	(       a  U
(       d  [?        US S 5      U l         OU R<                  S;   a  S=U l        U l        OU R<                  S;   a  SU l        SU l        [B        RD                  " S U5      U l#        O.U R<                  S!:X  a  U	(       a  U
(       d  [?        U5      U l         SU l$        U R                   RK                  5       =U l&        nU R                   U l'        U R                  S S S":X  a>   [Q        U R                  SS  5      nUS#;  a  S$S%U RR                  -   XS&S'SS44/U l*        g  U R                  S(;   ae  U RR                  S   U RR                  S   -  nS)S%U RR                  -   US*4S)S%U RR                  -   X-   S+4S)S%U RR                  -   USU-  -   S,4/U l*        g S)S%U RR                  -   XR                  SS44/U l*        g ! [        R                   a  nSn[        U5      UeS nAff = f! [V         a     Nf = f)-N   
d   znot an IM filer   r   )   r:   r             s   
r)   zlatin-1replace*,zSyntax error in IM header: asciizNot an IM filezFile truncatedi      r:   )r   r   r   PA)r   r   r   )r   rE   rE   r   r   r   r%   )          bitr   r   rF      )r   r   raw)Gr   r?   )Rr   r?   )Br   r?   ),fpreadSyntaxErrorseekinfoMODESIZEFRAMESrawmodereadlinelensplitmatchreerrorgroupdecodeSCALEr@   tuplemapr2   OPENCOMMENTappendTAGS_size_modeLUTrangemodelistlutr	   rL   paletteframetell_ImImageFile__offset_fpr-   sizetiler.   )selfmsgnr0   mekvro   	greyscalelinearioffsbitsrt   s                  r1   _openImImageFile._open{   s    S))"Cc""Q 		$$		$		&QA EzU
a7l GG$$&&A1v|&!#&&v crF235crF.KKN
 wwq!} HHY	2HHY	2 --		#s+Ac&!''#,78A1v{aD$Y19&*1gOA| <II~		!++A.()s		!#$IIaL9FA 4AHHWi4P3QR!#&&y | "Cc"" YYt_
YYt_
 AbqEW$QA AbqEW$"Cc""$))ggll3'GIF3Z:S!1EWW5EEzQ!" ' !"I   yy22!#'#6yyJ.477
T\l2%)
'-#/#3#3GW#EDLe# #G}DH
#ww||~-77<<t#4<<+,{*"'$)));T!QPQSUCV!W XDI + <<-- 99Q<$))A,.D*D,?*DKF*D1t8O\JDI  $))!3TLL!R;PQRDIW 88 .&!#&A-.z  s*   U& ;V &V:VV
VVc                (    U R                   [           $ r,   rT   rW   rv   s    r1   n_framesImImageFile.n_frames  s    yy      c                .    U R                   [           S:  $ )Nr   r   r   s    r1   is_animatedImImageFile.is_animated  s    yy 1$$r   c                r   U R                  U5      (       d  g Xl        U R                  S:X  a  SnOS[        U R                  5      -  nU R                  S   U-  S-   S-  U R                  S   -  nU R
                  X-  -   nU R                  U l        SSU R                  -   X@R                  SS44/U l	        g )	Nr   r   rF   r      rL   rJ   r?   )
_seek_checkrp   rl   rZ   rt   rr   rs   rP   rX   ru   )rv   rp   r   rt   r   s        r1   rS   ImImageFile.seek  s    &&
99Ds499~%D1$q(Q.$))A,>}}u|+((Vdii/a7LMN	r   c                    U R                   $ r,   )rp   r   s    r1   rq   ImImageFile.tell,  s    zzr   )
__offsetrs   ri   rh   rP   rp   rn   ro   rX   ru   N)returnNone)r   r-   )r   bool)rp   r-   r   r   )__name__
__module____qualname____firstlineno__formatformat_description!_close_exclusive_fp_after_loadingr   propertyr   r   rS   rq   __static_attributes__ r   r1   r4   r4   v   sN    F-(-%USn ! ! % %O$r   r4   )z0 1r   )	Greyscaler   )r   r   )zL 32SzI;32S)zL 16I;16)zL 16LI;16L)zL 16BI;16B)zL 32FzF;32F)RGBXr   )YCCr   )r   r   r   r   rE   r   r   r   r   r   r   r   r   r   r   c           
         [         U R                     u  p4U R                  R                  SS5      nUR                  SU S3R                  S5      5        U(       a  [        U[        5      (       a  UR                  S5      n[        R                  R                  [        R                  R                  U5      5      u  pSR                  US S	[!        U	5      -
   U	/5      nUR                  S
U S3R                  S5      5        UR                  SU R"                  -  R                  S5      5        UR                  SU S3R                  S5      5        U R                  S;   a  UR                  S5        UR                  SSUR%                  5       -
  -  S-   5        U R                  S;   ah  U R&                  R)                  SS5      n
[!        U
5      S-  nSn[+        S5       H  nXX-  XS-   -   -  nUSSU-
  -  -  nM     UR                  U5        [,        R.                  " XSSU R"                  -   SUSS44/5        g ! [         a!  nSU R                   S3n[        U5      UeS nAff = f)NzCannot save z images as IMframesr   zImage type: z image
rC    \   zName: z
zImage size (x*y): %d*%d
zFile size (no of images): )r   rE   s   Lut: 1
r<   i  r=   r   r   rK   r   rD   rL   rJ   r   r?   )SAVErl   KeyErrorr.   encoderinfogetwriteencode
isinstancebytesr`   ospathsplitextbasenamejoinrZ   rt   rq   im
getpaletterk   r   _save)r   rP   filename
image_typerX   rz   rw   r   nameext
im_palettecolorsro   r   s                 r1   r   r   I  s&   %"277m

 ^^!,FHH|J<z299'BC
 h&&w/HGG$$RWW%5%5h%?@	ww_rCH}-s34
6$t$++G45HH+bgg5==gFGHH)&6==gFG	ww+
HHWbggi(723	ww+UU%%eW5
ZA%qA&*vQ/?@@Gw#,//G  	OOBeVbgg%5q7Ar:JKLM?  %RWWI]3o1$%s   I 
I2I--I2z.im)r0   r   r   r/   )r   zImage.ImagerP   z	IO[bytes]r   zstr | bytesr   r   )#
__future__r   r   r]   typingr   r   r   r   r   r	   re   DATE	EQUIPMENTrW   rj   NAMEra   rV   rU   rg   rd   r   rk   jcompiler[   r2   r4   r   r   register_openr   register_saveregister_extensionr   r   r1   <module>r      s  6 # 	 	  , ,
 &		# Q!q
A!	1!!
  z	
 z !   
   . M M  "!" "#& '( )* %#$%18 
/A2aS?D2aS2aS?D2aS 
/ 
A H1#h/D2aS H1#h/D2aS 
 
A2aS?D2aS2aS?D2aS 
 
q"A2aS?D2aS 
 	

9:w)%% wB 
	
	
		!("NT   K&& 4   K&& .   ++U 3r   