o
    Ȑi	                     @   sT   d dl Z ddlmZmZ dd ZG dd dejZeejee e	ejd dS )	    N   )ImageTiffImagePluginc                 C   s   | d d t jkS )N   )olefileMAGIC)prefix r	   a/var/www/html/eduruby.in/lip-sync/lip-sync-env/lib/python3.10/site-packages/PIL/MicImagePlugin.py_accept   s   r   c                       sL   e Zd ZdZdZdZdd Zdd Zdd	 Z fd
dZ	 fddZ
  ZS )MicImageFileZMICzMicrosoft Image ComposerFc              
   C   s   z	t | j| _W n ty } zd}t||d }~ww g | _| j D ]}|dd  rC|d dd  dkrC|d dkrC| j| q%| jsMd}t|d | _	t
| j| _| jdk| _| d d S )Nz!not an MIC file; invalid OLE filer   r   z.ACIr   z!not an MIC file; no image entries)r   Z	OleFileIOfpoleOSErrorSyntaxErrorimageslistdirappendframelenZ	_n_framesZis_animatedseek)selfemsgpathr	   r	   r
   _open)   s&   
,zMicImageFile._openc              
   C   sh   |  |sd S z| j| }W n ty! } zd}t||d }~ww | j|| _tj	|  || _
d S )Nzno such frame)Z_seek_checkr   
IndexErrorEOFErrorr   Z
openstreamr   r   TiffImageFiler   r   )r   r   filenamer   r   r	   r	   r
   r   G   s   


zMicImageFile.seekc                 C   s   | j S N)r   r   r	   r	   r
   tellV   s   zMicImageFile.tellc                    s   | j   t   d S r!   )r   closesuperr"   	__class__r	   r
   r$   Y      
zMicImageFile.closec                    s   | j   t   d S r!   )r   r$   r%   __exit__)r   argsr&   r	   r
   r)   ]   r(   zMicImageFile.__exit__)__name__
__module____qualname__formatformat_descriptionZ!_close_exclusive_fp_after_loadingr   r   r#   r$   r)   __classcell__r	   r	   r&   r
   r   $   s    r   z.mic)
r    r   r   r   r   r   Zregister_openr.   Zregister_extensionr	   r	   r	   r
   <module>   s   A