
     fY
                    >   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    U/var/www/api.educacionweb.es/myenv/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| _	        d	d
| j
        z   |                                d f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_size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\
Vdi/$?@			r   N)r
   r   )__name__
__module____qualname__formatformat_descriptionr1    r   r   r   r   0   s9        F%A A A A A A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        | |dd| j        z   dd f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   _save)r8   r   r;   r.   r   s        r   rF   rF   I   s_   	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eVbg%5q$?@AAAHHWr   z.xbmz	image/xbm)r   r	   r
   r   )r8   r9   r   r:   r;   r<   r
   r   )
__future__r   retypingr    r   r   compiler    r   r   rF   register_openr5   register_saveregister_extensionregister_mimer7   r   r   <module>rP      s-  * # " " " " " 				               2: - - - -A A A A A9& A A A2   (  L'w ? ? ?  L' / / /  ,f 5 5 5  L' 5 5 5 5 5r   