
    (ph                    (   S SK Jr  S SKJr  SSKJrJr  SqSS jrSS jr	 " S S	\R                  5      rSS
 jr\R                  " \R                  \\	5        \R                  " \R                  \5        \R                   " \R                  S5        g)    )annotations)IO   )Image	ImageFileNc                    U q g)zS
Install application-specific GRIB image handler.

:param handler: Handler object.
N_handler)handlers    J/var/www/html/venv/lib/python3.13/site-packages/PIL/GribStubImagePlugin.pyregister_handlerr      s	     H    c                0    U S S S:H  =(       a    U S   S:H  $ )N   s   GRIB   r    )prefixs    r   _acceptr   "   s     "1: 3VAY!^3r   c                  0    \ rS rSrSrSrSS jrSS jrSrg)	GribStubImageFile&   GRIBc                H   U R                   R                  5       n[        U R                   R                  S5      5      (       d  Sn[	        U5      eU R                   R                  U5        SU l        SU l        U R                  5       nU(       a  UR                  U 5        g g )N   zNot a GRIB fileF)r   r   )
fptellr   readSyntaxErrorseek_mode_size_loadopen)selfoffsetmsgloaders       r   _openGribStubImageFile._open*   sw    tww||A''#Cc""V 

KK r   c                    [         $ )Nr	   )r%   s    r   r#   GribStubImageFile._load;   s    r   )r!   r"   N)returnNone)r-   ImageFile.StubHandler | None)	__name__
__module____qualname____firstlineno__formatformat_descriptionr)   r#   __static_attributes__r   r   r   r   r   &   s    F"r   r   c                    [         b  [        [         S5      (       d  Sn[        U5      e[         R                  XU5        g )NsavezGRIB save handler not installed)r
   hasattrOSErrorr8   )imr   filenamer'   s       r   _saver=   ?   s1    wx88/clMM"(#r   z.grib)r   r/   r-   r.   )r   bytesr-   bool)r;   zImage.Imager   z	IO[bytes]r<   zstr | bytesr-   r.   )
__future__r   typingr    r   r   r
   r   r   StubImageFiler   r=   register_openr4   register_saveregister_extensionr   r   r   <module>rG      s    #  4	// 2$   %,,.? I   %,,e 4   *117 ;r   