a
    Ö¶îaa  ã                   @   sb   d dl mZ d dlmZ d dlmZ dZdd„ ZG dd„ deƒZ	e 
e	je	e¡ e e	jd	¡ d
S )é   )ÚImage)Úi32le)ÚPcxImageFilei±hÞ:c                 C   s   t | ƒdkot| ƒtkS )Né   )ÚlenÚi32ÚMAGIC)Úprefix© r
   úb/Users/vegardjervell/Documents/master/model/venv/lib/python3.9/site-packages/PIL/DcxImagePlugin.pyÚ_accept   s    r   c                   @   s8   e Zd ZdZdZdZdd„ Zdd„ Zdd	„ Zd
d„ Z	dS )ÚDcxImageFileZDCXz	Intel DCXFc                 C   sˆ   | j  d¡}t|ƒstdƒ‚g | _tdƒD ](}t| j  d¡ƒ}|sF qT| j |¡ q*| j | _d | _	t
| jƒ| _| jdk| _|  d¡ d S )Nr   znot a DCX filei   r   é    )ÚfpÚreadr   ÚSyntaxErrorÚ_offsetÚranger   ÚappendÚ_DcxImageFile__fpÚframer   Zn_framesZis_animatedÚseek)ÚselfÚsÚiÚoffsetr
   r
   r   Ú_open-   s    zDcxImageFile._openc                 C   s<   |   |¡sd S || _| j| _| j | j| ¡ t | ¡ d S ©N)Z_seek_checkr   r   r   r   r   r   r   )r   r   r
   r
   r   r   B   s    
zDcxImageFile.seekc                 C   s   | j S r   )r   ©r   r
   r
   r   ÚtellJ   s    zDcxImageFile.tellc                 C   sF   z8z| j | jkr| j  ¡  W n ty.   Y n0 W d | _ nd | _ 0 d S r   )r   r   ÚcloseÚAttributeErrorr   r
   r
   r   Ú
_close__fpM   s    zDcxImageFile._close__fpN)
Ú__name__Ú
__module__Ú__qualname__ÚformatÚformat_descriptionZ!_close_exclusive_fp_after_loadingr   r   r   r"   r
   r
   r
   r   r   '   s   r   z.dcxN)Ú r   Ú_binaryr   r   ZPcxImagePluginr   r   r   r   Zregister_openr&   Zregister_extensionr
   r
   r
   r   Ú<module>   s   0