o
    _#ūaź
  ć                   @   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   s(   t | dkot| ddkot| ddv S )Né   é    é   é   ©r   é   )ŚlenŚi32)Śprefix© r   ś4/usr/lib/python3/dist-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   sL  t | j d”}t | j d”}|dk rtd|dvr#td| t | j d”}t | j d”}t | j d”}|dksC|dkrGtd|dvrRtd| |d	kr[|d }n|d
 }| j d”}|dkrmt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 brushr	   z Unsupported GIMP brush version: r   )r   r   z$Unsupported GIMP brush color depth: r   é   s   GIMPz"not a GIMP brush, bad magic numberZspacingé’’’’ŚLZRGBAŚcomment)r   ŚfpŚreadŚSyntaxErrorŚinfoŚmodeŚ_sizer   Z_decompression_bomb_checkŚsizeŚ
_data_size)	ŚselfŚheader_sizeŚversionŚwidthZheightZcolor_depthZcomment_lengthZmagic_numberr   r   r   r   Ś_open,   s8   


zGbrImageFile._openc                 C   s6   | j rd S tj | j| j”| _ |  | j | j	”” d S )N)
Zimr   ZcoreŚnewr   r   Z	frombytesr   r   r   )r   r   r   r   ŚloadV   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   <