B .^#@szddlmZmZddlmZmZdZddZeZ dddd Z d dd d Z d dZ e de eddedddS))Image ImageFile)o8o16be()rr)rr)rr)rfr)r3r)rr)rrr)rrr)rrr)rr r)rr r)rr r)rrr)rrr)rrr)rr r)rr r)rr r)rrr)rrr)rrr)rr r)rr r)rr r)rrr)rrr)rrr)rr r)rr r)rr r)rrr)rrr)rrr)rr r)rr r)rr r)rrr)rrr)rrr)rr r)rr r)rr r)rrr)rrr)rrr)rr r)rr r)rr r)rrr)rrr)rrr)rr r)rr r)rr r)r rr)r rr)r rr)r r r)r r r)r r r)r rr)r rr)r rr)r r r)r r r)r r r)r rr)r rr)r rr)r r r)r r r)r r r)r rr)r rr)r rr)r r r)r r r)r r r)r rr)r rr)r rr)r r r)r r r)r r r)r rr)r rr)r rr)r r r)r r r)r r r)r rr)r rr)r rr)r r r)r r r)r r r)r rr)r rr)r rr)r r r)r r r)r r r)r rr)r rr)r rr)r r r)r r r)r r r)rrr )rrr )rrr )rr r )rr r )rr r )rrr )rrr )rrr )rr r )rr r )rr r )rrr )rrr )rrr )rr r )rr r )rr r )rrr )rrr )rrr )rr r )rr r )rr r )rrr )rrr )rrr )rr r )rr r )rr r )rrr )rrr )rrr )rr r )rr r )rr r )rrr )rrr )rrr )rr r )rr r )rr r )rrr )rrr )rrr )rr r )rr r )rr r )rrr )rrr )rrr )rr r )rr r )rr r )r rr )r rr )r rr )r r r )r r r )r r r )r rr )r rr )r rr )r r r )r r r )r r r )r rr )r rr )r rr )r r r )r r r )r r r )r rr )r rr )r rr )r r r )r r r )r r r )r rr )r rr )r rr )r r r )r r r )r r r )r rr )r rr )r rr )r r r )r r r )r r r )r rr )r rr )r rr )r r r )r r r )r r r )r rr )r rr )r rr )r r r )r r r )r r r )r rr )r rr )r rr )r r r )r r r )r r )"r r )Drr)Urr)wrr)rr)rr)rr)rr)rr)rr)r r )rr r)r rr )r rr)r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r )r r r cCsftddttf}|ttttd}xtD] }||7}q4W|ddtt7}|||S)NLr)r r r )rnewlen_Palm8BitColormapValuesZputdatalistrangeZ putpalette)imageZ palettedataZ colormapValuerr7/tmp/pip-install-mwhup7aw/Pillow/PIL/PalmImagePlugin.pybuild_prototype_imageSs   r"i@ii )zcustom-colormapz is-compressedzhas-transparentrr )noneZrleZscanlinec Cs|jdkrd}d}d}n|jdkr|jddkr^|jd}|d|d|>dfdd}nD|jddkr|jd}|d|>dfd d}ntd |jd|_d t|}d}n&|jd krd }d}d}ntd |j||jd}|jd}t |d|dd|d}d} t d} d} |jdkrjd|jkrj| t d@} d} |j j} | }nd} d|jkr||dd| d}nd}|t|t|t|t| |t||t||t||t| |t| |td| dkr|tdxtdD]}|t|| dkr|t|d|t|d|dt|d|dnH| dkr4|t|d|t|d|dt|d|dq4Wt||dd|jd||dffgt|dr|dS)NPrrbpp)rcSs |||?S)Nr)xshiftmaxvalrrr!z_save..cSs |||@S)Nr)r)r+rrr!r,r-zcannot write mode %s as PalmzP;1z1;Ir r'r#zcustom-colormapioffsetr(rZRGBZRGBAraw)r r flush)modeZ encoderinfogetZpointinfoOSErrorstrloadsizeint_COMPRESSION_TYPES_FLAGSZpaletteZgetdataZ getpalettewriteo16brrr_savehasattrr3)Zimfpfilenamerawmoder&versioncolsZrowsZrowbytesZtransparent_indexZcompression_typeflagsZ colormapsizeZ colormapmodeZcolormapr0irrr!r@qsr           &  < @$ r@ZPalmz.palmz image/palmN)rr_binaryrrr?rr"ZPalm8BitColormapImager=r<r@Z register_saveZregister_extensionZ register_mimerrrr! sD   m