403Webshell
Server IP : 54.37.205.81  /  Your IP : 216.73.216.76
Web Server : nginx/1.22.1
System : Linux vps-249481fa 6.1.0-50-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.176-1 (2026-07-02) x86_64
User : debian ( 1000)
PHP Version : 8.2.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/PIL/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/PIL/__pycache__/Jpeg2KImagePlugin.cpython-311.pyc
�

�"�c�)��B�ddlZddlZddlZddlmZmZGd�d��Zd�Zd�Zd�Z	Gd	�d
ej��Z
d�Zd�Zej
e
je
e��eje
je��eje
jgd
���eje
jd��dS)�N�)�Image�	ImageFilec�>�eZdZdZdd�Zd�Zd�Zd�Zd�Zd�Z	d	�Z
d
S)�	BoxReaderz}
    A small helper class to read fields stored in JPEG2000 header boxes
    and to easily step into and read sub-boxes.
    ���c�F�||_|dk|_||_d|_dS)Nrr)�fp�
has_length�length�remaining_in_box)�selfr
rs   �7/usr/lib/python3/dist-packages/PIL/Jpeg2KImagePlugin.py�__init__zBoxReader.__init__s)����� �A�+������ "�����c��|jr'|j���|z|jkrdS|jdkr||jkSdS)NFrT)rr
�tellrr
)r�	num_bytess  r�	_can_readzBoxReader._can_read#sM���?�	�t�w�|�|�~�~�	�9�D�K�G�G��5�� �A�%�%��� 5�5�5��4rc�,�|�|��sd}t|���|j�|��}t	|��|kr%d|�dt	|���d�}t|���|jdkr|xj|zc_|S)NzNot enough data in headerzExpected to read z bytes but only got �.r)r�SyntaxErrorr
�read�len�OSErrorr
)rr�msg�datas    r�_read_byteszBoxReader._read_bytes-s����~�~�i�(�(�	#�-�C��c�"�"�"��w�|�|�I�&�&���t�9�9�y� � �Q�i�Q�Q�S��Y�Y�Q�Q�Q�C��#�,�,��� �1�$�$��!�!�Y�.�!�!��rc�~�tj|��}|�|��}tj||��S�N)�struct�calcsizer�unpack)r�field_format�sizers    r�read_fieldszBoxReader.read_fields;s6����|�,�,������%�%���}�\�4�0�0�0rc�~�|j}|�|��}ttj|��|��Sr )r
rr�io�BytesIO)rr%rs   r�
read_boxeszBoxReader.read_boxes@s7���$������%�%�����D�)�)�4�0�0�0rc�h�|jr*|j���|jz|jkSdS)NT)rr
rr
r)rs r�has_next_boxzBoxReader.has_next_boxEs0���?�	��7�<�<�>�>�D�$9�9�D�K�G�G��4rc�l�|jdkr*|j�|jtj��d|_|�d��\}}|dkr|�d��d}d}nd}||ks|�||z
��sd}t|���||z
|_|S)	Nrrz>I4srz>Q��zInvalid header length)r
r
�seek�os�SEEK_CURr&rr)r�lbox�tbox�hlenrs     r�
next_box_typezBoxReader.next_box_typeKs���� �1�$�$��G�L�L��.���<�<�<� "����%�%�f�-�-�
��d��1�9�9��#�#�D�)�)�!�,�D��D�D��D��$�;�;�d�n�n�T�D�[�9�9�;�)�C��c�"�"�"� $�t�����rN)r)�__name__�
__module__�__qualname__�__doc__rrrr&r*r,r6�rrrrs���������
#�#�#�#�������1�1�1�
1�1�1�
�������rrc��|�d��}tjd|��d}||�|dz
��z}tjd|��\}}}}}}}	}	}	}	}
dg|
z}dg|
z}dg|
z}
t	|
��D]+}tjd|dd|zz��\||<||<|
|<�,||z
||z
f}|
d	kr|
dd
zdkrd}n d
}n|
dkrd}n|
dkrd}n|
dkrd}nd}||fS)z�Parse the JPEG 2000 codestream to extract the size and component
    count from the SIZ marker segment, returning a PIL (size, mode) tuple.�z>Hrz>HHIIIIIIIIHNz>BBB�$�r�r/�I;16�L�LA�RGB��RGBA)rr!r#�unpack_from�range)r
�hdr�lsiz�siz�rsiz�xsiz�ysiz�xosiz�yosiz�_�csiz�ssiz�xrsiz�yrsiz�ir%�modes                 r�_parse_codestreamrXasW��
�'�'�!�*�*�C��=��s�#�#�A�&�D�

�����q��!�!�
!�C�=C�=O���>�>�:�D�$��d�E�5�!�Q��1�d�
�6�D�=�D�
�F�T�M�E�
�F�T�M�E�
�4�[�[�R�R��&,�&8���b�1�q�5�j�&Q�&Q�#��Q���q��5��8�8��5�L�$��,�'�D��q�y�y��!�H�t�O�q� � ��D�D��D�D�	
�������	
�������	
�����������:�rc�4�|dkrd|zd|zzd|zzSdS)z�Convert JPEG2000's (numerator, denominator, exponent-base-10) resolution,
    calculated as (num / denom) * 10^exp and stored in dots per meter,
    to floating-point dots per inch.r��
i'Nr;)�num�denom�exps   r�_res_to_dpir_�s0��
��z�z��c�	�R��W�%�%�%�-�8�8��zrc���t|��}d}d}|���rj|���}|dkr|���}n;|dkr!|�d��ddkrd}|����jd}d}d}d}d}	|����r&|���}|dkrT|�d	��\}
}}}||
f}|d
kr|dzdkrd
}n�|d
krd}n�|dkrd}n�|dkrd}n�|dkrd}n�|dkr�|���}|���ru|���}
|
dkrG|�d��\}}}}}}t|||��}t|||��}|�|�||f}	n|����u|�����&|�|�d}t
|���||||	fS)z�Parse the JP2 header box to extract size, component count,
    color space information, and optionally DPI information,
    returning a (size, mode, mimetype, dpi) tuple.Nsjp2hsftypz>4srsjpx z	image/jpxsihdrz>IIHBrr@r/rArBr=rCr?rDrErFsres srescz>HHHHBBzMalformed JP2 header)rr,r6r*r&r_r)r
�reader�header�mimetyper4r%rW�bpc�nc�dpi�height�width�res�tres�vrcn�vrcd�hrcn�hrcd�vrce�hrce�hres�vresrs                       r�_parse_jp2_headerrs�s`���r�]�]�F�
�F��H�
�
�
�
�
�'��#�#�%�%���7�?�?��&�&�(�(�F��
�W�_�_��!�!�%�(�(��+�w�6�6�&���
�
�
�
�'��D��D�
�C�	
�B�
�C�
�
�
�
�
���#�#�%�%���7�?�?�%+�%7�%7��%@�%@�"�F�E�2�s��6�?�D��Q�w�w�C�$�J�!�+�+�����q�������q�������q�������q������
�W�_�_��#�#�%�%�C��"�"�$�$�
��(�(�*�*���7�?�?�9<����9S�9S�6�D�$��d�D�$�&�t�T�4�8�8�D�&�t�T�4�8�8�D��'�D�,<�#�T�l����"�"�$�$�
�%�
�
�
�
��8�|�t�|�$���#������x��$�$rc�b��eZdZdZdZd�Ze�fd���Zejd���Zd�Z	�xZ
S)�Jpeg2KImageFile�JPEG2000zJPEG 2000 (ISO 15444)c���|j�d��}|dkr)d|_t|j��\|_|_nr||j�d��z}|dkr>d|_t
|j��}|\|_|_|_}|�
||jd<nd}t|���|j
�|j�d	}t|���d
|_d
|_d}d}	|j�
��}tj|��j}n�#t"$r�d}	|j���}|j�d
t(j��|j���}|j�|��n#t"$rd}YnwxYwYnwxYwdd
|j
zd
|j|j|j||ffg|_dS)NrE��O�Q�j2kr/�jP  
�
�jp2rfznot a JPEG 2000 filezunable to determine size/moderr�jpeg2k�rr)r
r�codecrX�_sizerWrs�custom_mimetype�inforr%�_reduce�layers�filenor1�fstat�st_size�	Exceptionrr0r(�SEEK_END�tile)r�sigrbrfr�fdr�poss        r�_openzJpeg2KImageFile._open�s����g�l�l�1�o�o���%�%�%��D�J�$5�d�g�$>�$>�!�D�J��	�	������Q���'�C��=�=�=�"��
�*�4�7�3�3��CI�@��
�D�I�t�';�S��?�'*�D�I�e�$��,��!�#�&�&�&��9���	� 1�1�C��c�"�"�"�������
����	�����!�!�B��X�b�\�\�)�F�F���	�	�	��B�
��g�l�l�n�n������Q���,�,�,������������S�!�!�!�!���
�
�
�����
������	��������"����T�\�4�;��F�C�	
�
��	�	�	s7�.2D!�!F5�.A1F �F5� F/�,F5�.F/�/F5�4F5c�8��|jpt��jSr )r��super�reduce)r�	__class__s �rr�zJpeg2KImageFile.reduces���
�|�-�u�w�w�~�-rc��||_dSr )r�)r�values  rr�zJpeg2KImageFile.reduces
������rc���|jr�|jr�d|jz}|dz	}t|jd|z|z��t|jd|z|z��f|_|jd}|dd|j|j|dd|ddf}|dd|jz|d|fg|_tj�|��S)Nrrr?rEr}r=)r�r��intr%rr�r�load)r�power�adjust�t�t3s     rr�zJpeg2KImageFile.loads����9�	?���	?����%�E��a�Z�F��T�Y�q�\�F�*�e�3�4�4��T�Y�q�\�F�*�e�3�4�4��D�J��	�!��A��A�$�q�'�4�<���a��d�1�g�q��t�A�w�G�B��A�$���� 2�A�a�D�"�=�>�D�I��"�'�'��-�-�-r)r7r8r9�format�format_descriptionr��propertyr��setterr��
__classcell__)r�s@rruru�s��������
�F�0��0
�0
�0
�d�.�.�.�.��X�.��]����]��.�.�.�.�.�.�.rruc�:�|dd�dkp
|dd�dkS)NrErx�rzr;)�prefixs r�_acceptr�s/���r��r�
�)�)�	B��#�2�#�;�A�A�rc�$�|j}|�d��s|�dd��rd}nd}|�dd��}|�dd��}|�dd��}|�d	d
��}|�dd��}	|	�Ft|	tt
f��rt
d�|	D����sd
}
t|
���|�dd��}|�dd��}|�dd��}
|�dd��}|�dd��}|�dd��}|�dd��}|�dd��}d}t|d��r(	|�	��}n#t$rd}YnwxYw|||||	|||
||||||f|_tj
||dd|jzd|fg��dS)N�.j2k�no_jp2Fryr{�offset�tile_offset�	tile_size�quality_mode�rates�quality_layersc�F�g|]}t|ttf����Sr;)�
isinstancer��float)�.0�
quality_layers  r�
<listcomp>z_save.<locals>.<listcomp>9s6��
�
�
�!��=�3��,�7�7�
�
�
rz,quality_layers must be a sequence of numbers�num_resolutionsr�codeblock_size�
precinct_size�irreversible�progression�LRCP�cinema_mode�no�mct�signedrr�r|r})�encoderinfo�endswith�getr��list�tuple�all�
ValueError�hasattrr�r��
encoderconfigr�_saver%)�imr
�filenamer��kindr�r�r�r�r�rr��	cblk_sizer�r�r�r�r�r�r�s                    rr�r�(sK��
�>�D����� � ��D�H�H�X�u�$=�$=�������
�X�X�h��
%�
%�F��(�(�=�$�/�/�K�����d�+�+�I��8�8�N�G�4�4�L��X�X�.��5�5�N��!��>�D�%�=�1�1�"��
�
�%3�
�
�
�
�
�"�=����o�o���h�h�0�!�4�4�O����)�4�0�0�I��H�H�_�d�3�3�M��8�8�N�E�2�2�L��(�(�=�&�1�1�K��(�(�=�$�/�/�K�
�(�(�5�!�
�
�C�
�X�X�h��
&�
&�F�	�B��r�8����	������B�B���	�	�	��B�B�B�	����	�������������
��B��"�O�B��h����(8�!�T�B�C�D�D�D�D�Ds�1G�G�G)z.jp2r�z.jpcz.jpfz.jpxz.j2cz	image/jp2)r(r1r!�rrrrXr_rsrur�r��
register_openr��
register_save�register_extensions�
register_mimer;rr�<module>r�sl�� 
�	�	�	�	�	�	�	�
�
�
�
���������G�G�G�G�G�G�G�G�T���D9�9�9�9%�9%�9%�@O.�O.�O.�O.�O.�i�)�O.�O.�O.�d���;E�;E�;E�D���O�*�O�W�E�E�E����O�*�E�2�2�2������L�L�L�������O�*�K�8�8�8�8�8r

Youez - 2016 - github.com/yon3zu
LinuXploit