
    Aei                        d dl mZ ddlmZmZ ddlmZ d
dZ G d dej                        Z	 ej                  e	j                  e	e        ej                  e	j                  d       y	)    )annotations   )Image	ImageFile)i32bec                `    t        |       dk\  xr t        | d      dk\  xr t        | d      dv S )N   r         r      )leni32)prefixs    E/var/www/card/venv/lib/python3.12/site-packages/PIL/GbrImagePlugin.py_acceptr       s1    v;!QFA" 4QVQ69QQ    c                  $    e Zd ZdZdZddZddZy)GbrImageFileGBRzGIMP brush filec                   | j                   J t        | j                   j                  d            }|dk  rd}t        |      t        | j                   j                  d            }|dvrd| }t        |      t        | j                   j                  d            }t        | j                   j                  d            }t        | j                   j                  d            }|dk(  s|dk(  rd}t        |      |dvrd| }t        |      |d	k(  r|dz
  }nc|d
z
  }| j                   j                  d      }|dk7  rd}t        |      t        | j                   j                  d            | j                  d<   | j                   j                  |      d d | j                  d<   |d	k(  rd| _        nd| _        ||f| _        t        j                  | j                         ||z  |z  | _
        y )Nr   r
   znot a GIMP brushr   z Unsupported GIMP brush version: r   )r   r   z$Unsupported GIMP brush color depth: r      s   GIMPz"not a GIMP brush, bad magic numberspacingcommentLRGBA)fpr   readSyntaxErrorinfo_mode_sizer   _decompression_bomb_checksize
_data_size)	selfheader_sizemsgversionwidthheightcolor_depthcomment_lengthmagic_numbers	            r   _openzGbrImageFile._open,   s   ww"""$'',,q/*$Cc""dggll1o&& 4WI>Cc""DGGLLO$TWW\\!_%$'',,q/*A:1$Cc""f$8FCc""a<(2-N(2-N77<<?Lw&:!#&&#&tww||A#7DIIi #ww||N;CR@		)!DJDJF]
 	''		2  &.;6r   c                N   | j                   {| j                  J t        j                  j	                  | j
                  | j                        | _        | j                  | j                  j                  | j                               t        j                  j                  |       S )N)_imr   r   corenewmoder%   im	frombytesr   r&   load)r'   s    r   r8   zGbrImageFile.loadZ   sl    8877&&&jjnnTYY		:DGNN477<<89{{%%r   N)returnNone)r9   zImage.core.PixelAccess | None)__name__
__module____qualname__formatformat_descriptionr0   r8    r   r   r   r   (   s    F*,7\&r   r   z.gbrN)r   bytesr9   bool)
__future__r    r   r   _binaryr   r   r   r   register_openr>   register_extensionr@   r   r   <module>rH      s]   4 #  !R7&9&& 7&|   L''w ?   ,,f 5r   