3 }\(@sddlZddlmZmZmZddlmZdZdZdZ dZ d Z d Z d Z d Zd ZdZede de de de de dedededi ZdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dad'Zx6dbD].Zdd.efed/e<dd.efed0e<qWx>dcD]6Zd3ed3efed/e<d3ed3efed0e<qWx6ddD].Zdd3efed/e<dd3efed0e<q$Wx(ed5d6D]Zdd.efed0e<qbWejd7Zd8d9ZGd:d;d;ejZdedfdgdhdidjdkdldmdndodpdqdrdsdJZdKdLZejejeejejeejejdMdS)tN)Image ImageFile ImagePalette)i8z0.7CommentDatezDigitalization equipmentzFile size (no of images)ZLutNamez Scale (x,y)zImage size (x*y)z Image type1LRGBRGB;LRLBPP;2P;4II;32FF;32RGB;TRYB;TLALA;LRGBARGBA;LRGBXRGBX;LCMYKCMYK;LYCbCrYCbCr;L)z 0 1 imagez L 1 imagezGreyscale imagezGrayscale imagez RGB imagez RLB imagez RYB imagezB1 imagezB2 imagezB4 imagez X 24 imagez L 32 S imagez L 32 F imagez RGB3 imagez RYB3 imagezLA imagez RGBA imagez RGBX imagez CMYK imagez YCC image88S1616S3232FzF;%sz L %s imagez L*%s image16L16BzI;%s32S!s"^([A-Za-z][^:]*):[ \t]*(.*)[ \t]*$c Cs&yt|Stk r t|SXdS)N)int ValueErrorfloat)sr1i/private/var/folders/pf/wv4htv3x0qs2c2mp0dnn0kchsvlck3/T/pip-install-i584jbuk/Pillow/PIL/ImImagePlugin.pynumberdsr3c@sPeZdZdZdZdZddZeddZedd Z d d Z d d Z ddZ dS) ImImageFileZIMzIFUNC Image MemoryFc Csd|jjdkrtd|jjdd}d|jt<d+|jt<d|jt<d|_x|jjd}|dkrfqP| s||d ks||d kr~P||jj }t |dkrtd|d,dd kr|dd-}n|d.ddkr|dd/}yt j |}Wn t jk rtdYnX|r|jdd \}}|jd d}|jd d}|tttgkr|jdd}ttt|j d}t |dkr|d}n"|tkr|tkrt|\}|_|tkr||jkr|j|j|n |g|j|<n ||j|<|tkr |d7}qPtd|jddqPW|std|jt|_|jt|_x*|r^|ddd kr^|jjd}q6W|sntdt|jkr|jjd}d}d}x^tdD]R} || || dko|| dknrt|| | krd}nd}qW|jdks|jdkrn|r,|sldd|ddD|_n@|jdkrFd|_|_n|jdkr^d|_|_t j!d||_"n,|jdkr| s| rdd|D|_d|_#|jj$|_%} |j|_&|jdd dkr(yDt'|jd d} | d0krd#d1|j(| | d d$dd2ffg|_)dSWnt*k r&YnX|jd3kr|j(d|j(d} d'd4|j(| d6fd'd7|j(| | d9fd'd:|j(| d | dffg|_)dS)?N dznot an IM filerr r r+s zlatin-1replace*,zSyntax error in IM header: asciizNot an IM filezFile truncatedircSsg|] }t|qSr1)r).0cr1r1r2 sz%ImImageFile._open..rPAzRGB;Lr cSsg|] }t|qSr1)r)r@rAr1r1r2rBszF; bitRGB;TRYB;TrawGRB)r7r7rOrP)rDrErF)rrrP)rIrJ)rrrP)rLrrP)rrrP)rMrrP)rrrP)rNrrP)rrrP)+fpread SyntaxErrorseekinfoMODESIZEFRAMESrawmodereadlinelensplitmatchreerrorgroupdecodeSCALEr;tuplemapr3OPENCOMMENTappendTAGS_sizemodeLUTrangerZlutrrKpaletteframetell_ImImageFile__offset_ImImageFile__fpr-sizetiler.) selfnr0mkvrmZ greyscaleZlinearioffsbitsrrr1r1r2_opents                    0          zImImageFile._opencCs |jtS)N)rUrX)rtr1r1r2n_frames szImImageFile.n_framescCs|jtdkS)Nr)rUrX)rtr1r1r2 is_animatedszImImageFile.is_animatedcCs|j|sdS||_|jdkr$d}ndt|j}|jd|dd|jd}|j||}|j|_dd|j||jddffg|_ dS) Nr rrDrrK)rrrP) Z _seek_checkrnrjr[rrrprqrQrYrs)rtrnr{rrrzr1r1r2rTs   zImImageFile.seekcCs|jS)N)rn)rtr1r1r2ro$szImImageFile.tellcCsBz4y|j|jkr|jjWntk r0YnXWdd|_XdS)N)rqrQcloseAttributeError)rtr1r1r2 _close__fp's   zImImageFile._close__fpN) __name__ __module__ __qualname__formatformat_descriptionZ!_close_exclusive_fp_after_loadingr|propertyr}r~rTrorr1r1r1r2r4ns  r40 1 GreyscalePA;LL 32SI;32SL 16I;16L 16LI;16LL 16BI;16BL 32FF;32FYCC)r r rrrCrzI;16zI;16LzI;16Brr rrrr cCsyt|j\}}Wn"tk r4td|jYnX|jjdd}|jd|jd|rp|jd|jd|jd|jjd|jd|jd|jd kr|jd |jd d |j d |jd kr|j|j j ddt j ||dd|jd|ddffgdS)NzCannot save %s images as IMframesrzImage type: %s image r>z Name: %s zImage size (x*y): %d*%d zFile size (no of images): %d rsLut: 1 r9ir:r zRGB;LrKr)rrrP)SAVErjKeyErrorr.Z encoderinfogetwriteencoderrroimZ getpaletter_save)rrQfilenameZ image_typerYrr1r1r2rIs    rz.im)r r )r r )r r )r r )r r )r r)r r)r r )rr)rr)r r )rr)rr)r r)r r)rr)rr)rr)rr)r r!)r"r#r$r%r&r')r$r(r))r*)rr )rr )rr)rr)rr)rr)rr)rr)rr)rr)r r )rr)rr)rr)rr!)r^rrr_binaryr __version__rfZDATEZ EQUIPMENTrXrkNAMErbrWrVrhreryrlcompiler\r3r4rrZ register_openrZ register_saveZregister_extensionr1r1r1r2s      J