o
    ä›e8  ã                   @  sz   d dl mZ ddlmZmZ dadd„ Zdd„ ZG d	d
„ d
ejƒZ	dd„ Z
e e	je	e¡ e e	je
¡ e e	jd¡ dS )é    )Úannotationsé   )ÚImageÚ	ImageFileNc                 C  s   | a dS )z_
    Install application-specific BUFR image handler.

    :param handler: Handler object.
    N©Ú_handler)Úhandler© r	   úJ/var/www/html/venv/lib/python3.10/site-packages/PIL/BufrStubImagePlugin.pyÚregister_handler   s   r   c                 C  s    | d d… dkp| d d… dkS )Né   s   BUFRs   ZCZCr	   )Úprefixr	   r	   r
   Ú_accept    s    r   c                   @  s$   e Zd ZdZdZdd„ Zdd„ ZdS )ÚBufrStubImageFileÚBUFRc                 C  s\   | j  ¡ }t| j  d¡ƒsd}t|ƒ‚| j  |¡ d| _d| _|  ¡ }|r,| 	| ¡ d S d S )Nr   zNot a BUFR fileÚF)r   r   )
ÚfpÚtellr   ÚreadÚSyntaxErrorÚseekÚ_modeÚ_sizeÚ_loadÚopen)ÚselfÚoffsetÚmsgÚloaderr	   r	   r
   Ú_open(   s   
ÿzBufrStubImageFile._openc                 C  s   t S )Nr   )r   r	   r	   r
   r   9   s   zBufrStubImageFile._loadN)Ú__name__Ú
__module__Ú__qualname__ÚformatÚformat_descriptionr   r   r	   r	   r	   r
   r   $   s
    r   c                 C  s0   t d u s	tt dƒsd}t|ƒ‚t  | ||¡ d S )NÚsavezBUFR save handler not installed)r   ÚhasattrÚOSErrorr%   )Úimr   Úfilenamer   r	   r	   r
   Ú_save=   s   r*   z.bufr)Ú
__future__r   Ú r   r   r   r   r   ÚStubImageFiler   r*   Úregister_openr#   Úregister_saveÚregister_extensionr	   r	   r	   r
   Ú<module>   s   

