
    eR
                    r    d Z ddlmZ ddlmZmZmZ ddlmZ	 ddlm
Z  G d dej                        Zdd	Zy
)a  
.. note::
    This format cannot be automatically recognized, so the
    class is not registered for use with :py:func:`PIL.Image.open()`.  To open a
    gd file, use the :py:func:`PIL.GdImageFile.open()` function instead.

.. warning::
    THE GD FORMAT IS NOT DESIGNED FOR DATA INTERCHANGE.  This
    implementation is provided for convenience and demonstrational
    purposes only.
    )annotations   )	ImageFileImagePaletteUnidentifiedImageError)i16be)i32bec                      e Zd ZdZdZdZd Zy)GdImageFilea%  
    Image plugin for the GD uncompressed format.  Note that this format
    is not supported by the standard :py:func:`PIL.Image.open()` function.  To use
    this plugin, you have to import the :py:mod:`PIL.GdImageFile` module and
    use the :py:func:`PIL.GdImageFile.open()` function.
    GDzGD uncompressed imagesc                   | j                   j                  d      }t        |      dvrd}t        |      d| _        t        |d      t        |d      f| _        |d   }|rdnd}t        |d	|z         }|d
k  r|| j                  d<   t        j                  d|d	|z   dz   d	|z   dz   dz          | _
        dd| j                  z   d	|z   dz   dz   dfg| _        y )Ni  )i  i  zNot a valid GD 2.x .gd fileL         r         transparencyXBGRi   raw)r   r   )r   r   r   )fpreadi16SyntaxError_mode_sizei32infor   r   palettesizetile)selfsmsg
true_colortrue_color_offsettindexs         1/usr/lib/python3/dist-packages/PIL/GdImageFile.py_openzGdImageFile._open.   s    GGLLq6'/Cc""
AYAq	)
qT
!+A Q--.C<(.DIIn%#''Aa++a/!6G2G!2Kg2UV
 "%%)G3	
	    N)__name__
__module____qualname____doc__formatformat_descriptionr)    r*   r(   r   r   #   s     F1
r*   r   c                |    |dk7  rd}t        |      	 t        |       S # t        $ r}d}t        |      |d}~ww xY w)a#  
    Load texture from a GD image file.

    :param fp: GD file name, or an opened file handle.
    :param mode: Optional mode.  In this version, if the mode argument
        is given, it must be "r".
    :returns: An image instance.
    :raises OSError: If the image could not be read.
    rzbad modezcannot identify this image fileN)
ValueErrorr   r   r   )r   moder$   es       r(   openr7   O   sK     s{o12 1/$S)q01s   
 	;6;N)r3   )r.   
__future__r    r   r   r   _binaryr   r   r	   r   r   r7   r1   r*   r(   <module>r;      s3   "
 # = = ! !)
)%% )
X1r*   