B
    ³è0\Â
  ã               @   sX   d dl mZmZ d dlmZ dd„ ZG dd„ dejƒZe ej	ee¡ e 
ej	d¡ dS )	é   )ÚImageÚ	ImageFile)Úi32bec             C   s4   t | ƒdko2t| d d… ƒdko2t| dd… ƒdkS )Né   é   é   )r   é   )ÚlenÚi32)Úprefix© r   ú1lib/python3.7/site-packages/PIL/GbrImagePlugin.pyÚ_accept   s    r   c               @   s$   e Zd ZdZdZdd„ Zdd„ ZdS )ÚGbrImageFileZGBRzGIMP brush filec       	      C   sJ  t | j d¡ƒ}t | j d¡ƒ}|dk r0tdƒ‚|dkrDtd| ƒ‚t | j d¡ƒ}t | j d¡ƒ}t | j d¡ƒ}|dks„|dkrŒtdƒ‚|dkr td| ƒ‚|d	kr²|d }n:|d
 }| j d¡}|dkrÖtdƒ‚t | j d¡ƒ| jd< | j |¡d d… }|d	krd| _nd| _||f| _|| jd< t | j	¡ || | | _
d S )Nr   r   znot a GIMP brush)r   r   z"Unsupported GIMP brush version: %sé    )r   r   z&Unsupported GIMP brush color depth: %sr   é   s   GIMPz"not a GIMP brush, bad magic numberZspacingéÿÿÿÿÚLZRGBAÚcomment)r
   ÚfpÚreadÚSyntaxErrorÚinfoÚmodeZ_sizer   Z_decompression_bomb_checkÚsizeÚ
_data_size)	ÚselfZheader_sizeÚversionÚwidthZheightZcolor_depthZcomment_lengthZmagic_numberr   r   r   r   Ú_open,   s:    




zGbrImageFile._openc             C   s,   t j | j| j¡| _|  | j | j	¡¡ d S )N)
r   ZcoreÚnewr   r   ZimZ	frombytesr   r   r   )r   r   r   r   ÚloadW   s    zGbrImageFile.loadN)Ú__name__Ú
__module__Ú__qualname__ÚformatZformat_descriptionr   r!   r   r   r   r   r   '   s   +r   z.gbrN)Ú r   r   Z_binaryr   r
   r   r   Zregister_openr%   Zregister_extensionr   r   r   r   Ú<module>   s
   8