
    i                        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    ^/home/ubuntu/.hermes/hermes-agent/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                    | j         J t          | j                             d                    sd}t          |          | j                             dt
          j                   d| _        d| _        d S )N   zNot a BUFR fileF)r   r   )	fpr   readSyntaxErrorseekosSEEK_CUR_mode_size)selfmsgs     r   _openzBufrStubImageFile._open+   sk    w"""tw||A'' 	##Cc"""R%%% 



r   r	   c                    t           S )Nr   )r'   s    r   _loadzBufrStubImageFile._load7   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OSErrorr8   )r2   r   r5   r(   s       r   _saver;   ;   sD    wx88/cllMM"b(#####r   z.bufr)r   r	   r
   r   )r   r   r
   r   )r2   r3   r   r4   r5   r6   r
   r   )
__future__r   r#   typingr    r   r   r   r   r   StubImageFiler   r;   register_openr/   register_saveregister_extensionr1   r   r   <module>rC      s   # " " " " " 				                 1 1 1 1    	/   ($ $ $ $  %,.? I I I  %,e 4 4 4  *17 ; ; ; ; ;r   