3
`JZ	                 @   sX   d dl mZmZ ddlZdZdd ZG dd dejZejej	ee ej
ej	d	 dS )
   )ImageTiffImagePlugin    Nz0.1c             C   s   | d d t jkS )N   )olefileMAGIC)prefix r	   4/usr/lib/python3/dist-packages/PIL/MicImagePlugin.py_accept   s    r   c               @   sH   e Zd ZdZdZdZdd Zedd Zedd	 Z	d
d Z
dd ZdS )MicImageFileZMICzMicrosoft Image ComposerFc             C   s   yt j| j| _W n tk
r.   tdY nX g | _xJ| jj D ]<}|dd  rB|d dd  dkrB|d dkrB| jj| qBW | jstd| j| _	d | _
t| jdkrtj| _| j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IOErrorSyntaxErrorimageslistdirappendZ_MicImageFile__fpframelenr   Z	CONTAINERcategoryseek)selfpathr	   r	   r
   _open,   s    ,zMicImageFile._openc             C   s
   t | jS )N)r   r   )r   r	   r	   r
   n_framesK   s    zMicImageFile.n_framesc             C   s   t | jdkS )Nr   )r   r   )r   r	   r	   r
   is_animatedO   s    zMicImageFile.is_animatedc             C   s^   | j |sd S y| j| }W n tk
r8   tdY nX | jj|| _tjj	|  || _
d S )Nzno such frame)Z_seek_checkr   
IndexErrorEOFErrorr   Z
openstreamr   r   TiffImageFiler   r   )r   r   filenamer	   r	   r
   r   S   s    
zMicImageFile.seekc             C   s   | j S )N)r   )r   r	   r	   r
   tella   s    zMicImageFile.tellN)__name__
__module____qualname__formatZformat_descriptionZ!_close_exclusive_fp_after_loadingr   propertyr   r   r   r#   r	   r	   r	   r
   r   &   s   r   z.mic) r   r   r   __version__r   r!   r   Zregister_openr'   Zregister_extensionr	   r	   r	   r
   <module>   s   C