
    Rf7
                        d dl mZ d dlZddlmZmZ d Z G d dej                  Z ej	        ej
        ee            ej        ej
        d           dS )	    )annotationsN   )ImageTiffImagePluginc                2    | d d         t           j        k    S )N   )olefileMAGIC)prefixs    D/var/www/html/env/lib/python3.11/site-packages/PIL/MicImagePlugin.py_acceptr      s    "1":&&    c                  F     e Zd ZdZdZdZd Zd Zd Z fdZ	 fdZ
 xZS )	MicImageFileMICzMicrosoft Image ComposerFc                   	 t          j        | j                  | _        n$# t          $ r}d}t          |          |d }~ww xY wd | j                                        D             | _        | j        sd}t          |          d | _        t          | j                  | _
        | j
        dk    | _        | j        | _        |                     d           d S )Nz!not an MIC file; invalid OLE filec                f    g | ].}|d d         r"|d         dd         dk     |d          dk    ,|/S )r   Nr   z.ACIr    ).0paths     r   
<listcomp>z&MicImageFile._open.<locals>.<listcomp>6   sY     
 
 
ABBx
 !GBCCLF22tAw'7I7I 7I7I7Ir   z!not an MIC file; no image entriesr   r   )r	   	OleFileIOfpoleOSErrorSyntaxErrorlistdirimagesframelen	_n_framesis_animated_MicImageFile__fpseek)selfemsgs      r   _openzMicImageFile._open)   s    	*(11DHH 	* 	* 	*5Cc"")	*
 
((**
 
 
 { 	#5Cc"""
T[))>A-G			!s   ! 
A=Ac                $   |                      |          sd S 	 | j        |         }n$# t          $ r}d}t          |          |d }~ww xY w| j                            |          | _        t          j        	                    |            || _
        d S )Nzno such frame)_seek_checkr   
IndexErrorEOFErrorr   
openstreamr   r   TiffImageFiler)   r    )r&   r    filenamer'   r(   s        r   r%   zMicImageFile.seekI   s    && 	F	'{5)HH 	' 	' 	'!C3--Q&	' (%%h//%++D111


s   ' 
AAAc                    | j         S N)r    )r&   s    r   tellzMicImageFile.tellX   s
    zr   c                    | j                                          | j                                         t                                                       d S r2   )r$   closer   super)r&   	__class__s    r   r5   zMicImageFile.close[   s<    	r   c                    | j                                          | j                                         t                                                       d S r2   )r$   r5   r   r6   __exit__)r&   argsr7   s     r   r9   zMicImageFile.__exit__`   sC    	r   )__name__
__module____qualname__formatformat_description!_close_exclusive_fp_after_loadingr)   r%   r3   r5   r9   __classcell__)r7   s   @r   r   r   $   s        F3(-%  @        
        r   r   z.mic)
__future__r   r	    r   r   r   r/   r   register_openr>   register_extensionr   r   r   <module>rF      s   $ # " " " " "  $ $ $ $ $ $ $ $' ' '? ? ? ? ??0 ? ? ?J  L'w ? ? ?  ,f 5 5 5 5 5r   