
    .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 GRIB image handler.

    :param handler: Handler object.
    N_handler)r   s    S/var/www/html/analyses/venv/lib/python3.11/site-packages/PIL/GribStubImagePlugin.pyregister_handlerr      s     HHH    prefixbytesboolc                j    t          |           dk    o |                     d          o| d         dk    S )N   s   GRIB   r   )len
startswith)r   s    r   _acceptr   #   s3    v;;!M 1 1' : :MvayA~Mr   c                  &    e Zd ZdZdZddZd	dZdS )
GribStubImageFileGRIBr
   r   c                6   t          | j                            d                    sd}t          |          | j                            dt
          j                   d| _        d| _        | 	                                }|r|
                    |            d S d S )Nr   zNot a GRIB fileiF)r   r   )r   fpreadSyntaxErrorseekosSEEK_CUR_mode_size_loadopen)selfmsgloaders      r   _openzGribStubImageFile._open+   s    tw||A'' 	##Cc"""R%%% 

 	KK	 	r   r	   c                    t           S )Nr   )r*   s    r   r(   zGribStubImageFile._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GRIB save handler not installed)r   hasattrOSErrorr;   )r5   r    r8   r+   s       r   _saver>   >   sD    wx88/cllMM"b(#####r   z.grib)r   r	   r
   r   )r   r   r
   r   )r5   r6   r    r7   r8   r9   r
   r   )
__future__r   r$   typingr    r   r   r   r   r   StubImageFiler   r>   register_openr2   register_saveregister_extensionr4   r   r   <module>rF      s   # " " " " " 				                 N N N N    	/   .$ $ $ $  %,.? I I I  %,e 4 4 4  *17 ; ; ; ; ;r   