HEX
Server: Apache
System: Linux srv1.prosuiteplus.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: prosuiteplus (1001)
PHP: 8.3.20
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/PIL/__pycache__/FpxImagePlugin.cpython-38.pyc
U

g�
^�@sxddlZddlmZmZddlmZmZddddd	d
dd�Zd
d�Z	Gdd�dej�Z
e�e
je
e	�e�
e
jd�dS)�N�)�Image�	ImageFile)�i8�i32le)�A�L)rr)�RGBAZLA)�RGBzYCC;P)r	zYCCA;P)r
r
)r	r	)i�)i)i�i�)iii)i�i�i�i�)iii)i�i�i�i�cCs|dd�tjkS)N�)�olefile�MAGIC)�prefix�r�4/usr/lib/python3/dist-packages/PIL/FpxImagePlugin.py�_accept*src@s8eZdZdZdZdd�Zddd�Zdd	d
�Zdd�Zd
S)�FpxImageFileZFPXZFlashPixcCsTzt�|j�|_Wntk
r.td��YnX|jjjdkrFtd��|�d�dS)Nz!not an FPX file; invalid OLE filez$56616700-C154-11CE-8553-00AA00A1F95Bznot an FPX file; bad root CLSIDr)	rZ	OleFileIO�fp�ole�OSError�SyntaxError�rootZclsid�_open_index��selfrrr�_open7szFpxImageFile._openrc	Cs|j�d|dg�}|d|df|_t|j�}d}|dkrN|d}|d7}q4|d|_|jd>}|d	|B}g}t|d
�}|d
kr�td��t|�D] }|�	t|d|d
�d
@�q�t
t|�\|_|_
i|_td�D]&}d|d>B}||kr�|||j|<q�|�d|j�dS)N�Data Object Store %06dzImage Contentsiir�@��i�zInvalid number of bandsri����i)rZ
getpropertiesZ_size�max�sizeZmaxid�i32�IOError�range�append�MODES�tuple�mode�rawmode�jpeg�_open_subimage)	r�indexZpropr#�i�id�sZcolorsZbandsrrrrFs2
�




zFpxImageFile._open_indexrc
Cs@d|d|dg}|j�|�}|�d�|�d�}t|d�t|d�f}t|d�t|d	�f}t|d�}t|d
�}	||jkr�td��|�d|�|�t|d�|	�}d
}
}|\}}
|\}}g|_td
t	|�|	�D�]\}t||d�}|d
k�r |j�
d|
||
|||ft||�d|jf�n�|dk�rh|j�
d|
||
|||ft||�d|j|dd�ff�n�|dk�r�t|d�}t|d�}|j}|�r�|dk�r�d\}}nd}n|}|j�
d|
||
|||ft||�d||ff�|�r|j
||_ntd��|
|}
|
|kr�d
||}
}||
kr��q0q�||_d|_dS)NrzResolution %04dzSubimage 0000 Header��$r rr�� zsubimage mismatch�r�rawrZfillr��r	)ZYCbCrKZCMYKr,zunknown/invalid compression)r�
openstream�readr$r#r�seekZtiler&�lenr'r+rr,Ztile_prefix�streamr)rr.Zsubimager>rr1r#Ztilesize�offsetZlength�x�yZxsizeZysizeZxtileZytiler/ZcompressionZinternal_color_conversionZjpeg_tablesr+Zjpegmoderrrr-vs~�





��	
��	


��zFpxImageFile._open_subimagecCs0|js$|j�|jdd�dg�|_tj�|�S)NrzSubimage 0000 Data)rrr:r>r�loadrrrrrB�szFpxImageFile.loadN)r)rr)	�__name__�
__module__�__qualname__�formatZformat_descriptionrrr-rBrrrrr2s
0
nrz.fpx)r�rrZ_binaryrrr$r(rrZ
register_openrFZregister_extensionrrrr�<module>s�?