
    ZMh                        d dl mZ d dlZd dlmZ ddlmZmZ dad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           dS )    )annotationsN)IO   )Image	ImageFilehandlerImageFile.StubHandler | NonereturnNonec                
    | a dS )z_
    Install application-specific BUFR image handler.

    :param handler: Handler object.
    N_handler)r   s    W/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/PIL/BufrStubImagePlugin.pyregister_handlerr      s     HHH    prefixbytesboolc                ,    |                      d          S )N)s   BUFRs   ZCZC)
startswith)r   s    r   _acceptr   #   s    /000r   c                  &    e Zd ZdZdZddZd	dZdS )
BufrStubImageFileBUFRr
   r   c                6   t          | j                            d                    sd}t          |          | j                            dt
          j                   d| _        d| _        | 	                                }|r|
                    |            d S d S )N   zNot a BUFR fileF)r   r   )r   fpreadSyntaxErrorseekosSEEK_CUR_mode_size_loadopen)selfmsgloaders      r   _openzBufrStubImageFile._open+   s    tw||A'' 	##Cc"""R%%% 

 	KK	 	r   r	   c                    t           S )Nr   )r)   s    r   r'   zBufrStubImageFile._load:   s    r   N)r
   r   )r
   r	   )__name__
__module____qualname__formatformat_descriptionr,   r'    r   r   r   r   '   sG        F        r   r   imImage.Imager   	IO[bytes]filenamestr | bytesc                    t           t          t           d          sd}t          |          t                               | ||           d S )NsavezBUFR save handler not installed)r   hasattrOSErrorr:   )r4   r   r7   r*   s       r   _saver=   >   sD    wx88/cllMM"b(#####r   z.bufr)r   r	   r
   r   )r   r   r
   r   )r4   r5   r   r6   r7   r8   r
   r   )
__future__r   r#   typingr    r   r   r   r   r   StubImageFiler   r=   register_openr1   register_saveregister_extensionr3   r   r   <module>rE      s   # " " " " " 				                 1 1 1 1    	/   .$ $ $ $  %,.? I I I  %,e 4 4 4  *17 ; ; ; ; ;r   