o �J�h� �@s�ddlmZddlZddlmZddlmZmZe�d�Z dd d �Z Gd d�dej�Z ddd�Z e� e je e �e�e je �e�e jd�e�e jd�dS)�)� annotationsN)�IO�)�Image� ImageFiles�\s*#define[ \t]+.*_width[ \t]+(?P<width>[0-9]+)[\r\n]+#define[ ]+.*_height[ ]+(?P<height>[0-9]+)[ ]+(?P<hotspot>#define[ ]+[^_]*_x_hot[ ]+(?P<xhot>[0-9]+)[ ]+#define[ ]+[^_]*_y_hot[ ]+(?P<yhot>[0-9]+)[ ]+)?[\000-\377]*_bits\[]�prefix�bytes�return�boolcCs|��dd�dkS)N�s#define)�lstrip)r�r �PC:\pinokio\api\whisper-webui.git\app\env\lib\site-packages\PIL\XbmImagePlugin.py�_accept(src@seZdZdZdZddd�ZdS) � XbmImageFileZXBMz X11 Bitmapr �NonecCs�|jdusJ�t�|j�d��}|sd}t|��t|�d��}t|�d��}|�d�r<t|�d��t|�d��f|jd<d|_||f|_ t � d d |j |� �d�g|_dS) Niznot a XBM file�width�height�hotspotZxhotZyhot�1�xbm�rr)�fp�xbm_head�match�read� SyntaxError�int�group�info�_mode�_sizer�_Tile�size�end�tile)�self�m�msg�xsize�ysizer r r�_open4s " "zXbmImageFile._openN)r r)�__name__� __module__� __qualname__�format�format_descriptionr+r r r rr0sr�im� Image.Imager� IO[bytes]�filename� str | bytesrc Cs�|jdkrd|j�d�}t|��|�d|jd�d��d��|�d|jd �d��d��|j�d �}|rR|�d |d�d��d��|�d |d �d��d��|�d �t�||t� dd|jdd�g�|�d�dS)Nrzcannot write mode z as XBMz#define im_width r� �asciiz#define im_height rrz#define im_x_hot z#define im_y_hot sstatic char im_bits[] = { rrs}; ) �mode�OSError�writer#�encode� encoderinfo�getr�_saver")r1rr4r(rr r rr>Is   "r>z.xbmz image/xbm)rrr r )r1r2rr3r4r5r r)� __future__r�re�typingr�rr�compilerrrr>� register_openr/� register_save�register_extension� register_mimer r r r�<module>s  �  
Memory