
    zvgh
                    >   d dl mZ d dlZd dlmZ ddlmZmZ  ej        d          Z	ddZ
 G d dej                  ZddZ ej        ej        ee
            ej        ej        e            ej        ej        d            ej        ej        d           dS )    )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boolc                B    |                                  d d         dk    S )N   s   #define)lstrip)r   s    O/var/www/pixelcanvas.ch/venv/lib/python3.11/site-packages/PIL/XbmImagePlugin.py_acceptr   (   s    ==??2A2*,,    c                      e Zd ZdZdZddZdS )XbmImageFileXBMz
X11 Bitmapr
   Nonec                x   | j         J t                              | j                             d                    }|sd}t	          |          t          |                    d                    }t          |                    d                    }|                    d          rLt          |                    d                    t          |                    d                    f| j        d<   d| _        ||f| _	        t          j        d	d
| j        z   |                                          g| _        d S )Ni   znot a XBM filewidthheighthotspotxhotyhot1xbmr   r   )fpxbm_headmatchreadSyntaxErrorintgroupinfo_mode_sizer   _Tilesizeendtile)selfmmsgxsizeysizes        r   _openzXbmImageFile._open4   s   w"""NN47<<,,-- 	#"Cc"""AGGG$$%%AGGH%%&&779 	P$'$8$8#aggfoo:N:N#ODIi 
E\
_UFTY,>HHI			r   N)r
   r   )__name__
__module____qualname__formatformat_descriptionr2    r   r   r   r   0   s9        F%J J J J J Jr   r   imImage.Imager   	IO[bytes]filenamestr | bytesr   c           	        | j         dk    rd| j          d}t          |          |                    d| j        d          d                    d                     |                    d| j        d	          d                    d                     | j                            d
          }|rd|                    d|d          d                    d                     |                    d|d	          d                    d                     |                    d           t          j        | |t          j	        dd| j        z             g           |                    d           d S )Nr   zcannot write mode z as XBMz#define im_width r   
asciiz#define im_height r   r   z#define im_x_hot z#define im_y_hot s   static char im_bits[] = {
r   r   s   };
)
modeOSErrorwriter*   encodeencoderinfogetr   _saver)   )r9   r   r<   r/   r   s        r   rG   rG   I   sb   	w#~~327333cllHH////66w??@@@HH0"'!*00077@@AAAn  ++G E
3WQZ333::7CCDDD
3WQZ333::7CCDDDHH+,,,OBY_UFRW4DEEFGGGHHWr   z.xbmz	image/xbm)r   r	   r
   r   )r9   r:   r   r;   r<   r=   r
   r   )
__future__r   retypingr    r   r   compiler    r   r   rG   register_openr6   register_saveregister_extensionregister_mimer8   r   r   <module>rQ      s-  * # " " " " " 				               2: - - - -J J J J J9& J J J2   (  L'w ? ? ?  L' / / /  ,f 5 5 5  L' 5 5 5 5 5r   