
    (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 BUFR image handler.

:param handler: Handler object.
N_handler)handlers    J/var/www/html/venv/lib/python3.13/site-packages/PIL/BufrStubImagePlugin.pyregister_handlerr      s	     H    c                0    U S S S:H  =(       d    U S S S:H  $ )N   s   BUFRs   ZCZC )prefixs    r   _acceptr   "   s#    "1: 9F2AJ'$99r   c                  0    \ rS rSrSrSrSS jrSS jrSrg)	BufrStubImageFile&   BUFRc                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 )Nr   zNot a BUFR fileF)r   r   )
fptellr   readSyntaxErrorseek_mode_size_loadopen)selfoffsetmsgloaders       r   _openBufrStubImageFile._open*   sw    tww||A''#Cc""V 

KK r   c                    [         $ )Nr	   )r#   s    r   r!   BufrStubImageFile._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BUFR save handler not installed)r
   hasattrOSErrorr6   )imr   filenamer%   s       r   _saver;   ?   s1    wx88/clMM"(#r   z.bufr)r   r-   r+   r,   )r   bytesr+   bool)r9   zImage.Imager   z	IO[bytes]r:   zstr | bytesr+   r,   )
__future__r   typingr    r   r   r
   r   r   StubImageFiler   r;   register_openr2   register_saveregister_extensionr   r   r   <module>rE      s    #  :	// 2$   %,,.? I   %,,e 4   *117 ;r   