§
    œ"²c]  ã                   óÐ   — d dl Z ddlmZmZmZ ddlmZ ddlmZ	 ddlm
Z
 d„ Z G d„ d	ej        ¦  «        Z ej        ej        ee¦  «          ej        ej        d
dg¦  «         dS )é    Né   )ÚImageÚ	ImageFileÚImagePalette)Úi16le)Úi32le©Úo8c                 óp   — t          | ¦  «        dk    o#t          | d¦  «        dv ot          | d¦  «        dv S )Né   é   )é¯  i¯  é   )r   é   )ÚlenÚi16)Úprefixs    ú4/usr/lib/python3/dist-packages/PIL/FliImagePlugin.pyÚ_acceptr      s@   € åˆF‰Œ�qÒð 	&Ý�˜‰NŒNÐ.Ð.ð	&å�˜‰OŒO˜vÐ%ðó    c                   ó8   — e Zd ZdZdZdZd„ Zd„ Zd„ Zd„ Z	d„ Z
d	S )
ÚFliImageFileÚFLIzAutodesk FLI/FLC AnimationFc                 ó4  — | j                              d¦  «        }t          |¦  «        r|dd…         dk    sd}t          |¦  «        ‚t	          |d¦  «        | _        | j        dk    | _        d| _        t	          |d	¦  «        t	          |d
¦  «        f| _        t          |d¦  «        }t	          |d¦  «        }|dk    r|dz  dz  }|| j
        d<   d„ t          d¦  «        D ¦   «         }| j                              d¦  «        }d| _        t	          |d¦  «        dk    r6| j        t          |¦  «        z   | _        | j                              d¦  «        }t	          |d¦  «        dk    r¯t	          |d¦  «        }d }t          |¦  «        D ]�}|�(| j                              |dz
  t          j        ¦  «         | j                              d¦  «        }t	          |d¦  «        }	|	dv r |                      ||	dk    rdnd¦  «          nt          |¦  «        }|s nŒŽd„ |D ¦   «         }t#          j        dd                     |¦  «        ¦  «        | _        d| _        | j         | _        | j                              ¦   «         | _        |                      d¦  «         d S )Né€   é   é   s     znot an FLI/FLC filer   r   ÚPé   é
   é   r   r   iè  éF   Údurationc                 ó   — g | ]}|||f‘ŒS © r%   )Ú.0Úas     r   ú
<listcomp>z&FliImageFile._open.<locals>.<listcomp>H   s   € Ð1Ð1Ð1 �A�q˜!�9Ð1Ð1Ð1r   é   i ñ  iúñ  )r   é   r*   é   r   c                 ót   — g | ]5\  }}}t          |¦  «        t          |¦  «        z   t          |¦  «        z   ‘Œ6S r%   r	   )r&   ÚrÚgÚbs       r   r(   z&FliImageFile._open.<locals>.<listcomp>c   s9   € ÐBÐBÐB©Y¨a°°A•2�a‘5”5�2˜a™5œ5‘=¥2 a¡5¤5Ñ(ÐBÐBÐBr   ÚRGBr   éÿÿÿÿ)ÚfpÚreadr   ÚSyntaxErrorr   Ún_framesÚis_animatedÚmodeÚ_sizeÚi32ÚinfoÚrangeÚ_FliImageFile__offsetÚseekÚosÚSEEK_CURÚ_paletter   ÚrawÚjoinÚpaletteÚ_FliImageFile__frameÚ_fpÚtellÚ_FliImageFile__rewind)
ÚselfÚsÚmsgr#   ÚmagicrC   Únumber_of_subchunksÚ
chunk_sizeÚ_Ú
chunk_types
             r   Ú_openzFliImageFile._open0   sv  € ð ŒG�LŠL˜ÑÔˆÝ˜‘
”
ð 	#˜q  B œx¨;Ò6Ð6Ø'ˆCÝ˜cÑ"Ô"Ð"õ ˜A˜q™	œ	ˆŒØœ=¨1Ò,ˆÔð ˆŒ	Ý˜˜A‘Y”Y¥ A r¡
¤
Ð*ˆŒ
õ �q˜"‘:”:ˆÝ�A�q‘	”	ˆØ�FŠ?ˆ?Ø  4™¨BÑ.ˆHØ (ˆŒ	�*Ñð 2Ð1¥e¨C¡j¤jÐ1Ñ1Ô1ˆàŒG�LŠL˜ÑÔˆàˆŒåˆq�!‰9Œ9˜ÒÐà œM­C°©F¬FÑ2ˆDŒMØ”—’˜RÑ Ô ˆAåˆq�!‰9Œ9˜ÒÐå"% a¨¡)¤)ÐØˆJÝÐ.Ñ/Ô/ð 
ð 
�ØÐ)Ø”G—L’L ¨a¡µ´Ñ=Ô=Ð=Ø”G—L’L ‘O”O�Ý   A™YœY�
Ø Ð(Ð(Ø—M’M '°
¸bÒ0@Ð0@¨1¨1ÀaÑHÔHÐHØ�EÝ  ™VœV�
Ø!ð Ø�Eðð CÐB¸'ÐBÑBÔBˆÝ#Ô'¨¨s¯xªx¸Ñ/@Ô/@ÑAÔAˆŒð ˆŒØ”7ˆŒØœŸš™œˆŒØ�	Š	�!‰Œˆˆˆr   c                 óÆ  — d}t          t          | j                             d¦  «        ¦  «        ¦  «        D ]©}| j                             d¦  «        }||d         z   }|d         }|dk    rd}| j                             |dz  ¦  «        }t          dt	          |¦  «        d¦  «        D ]6}||         |z  }||dz            |z  }||dz            |z  }	|||	f||<   |dz  }Œ7Œªd S )Nr   r+   r   r)   r   )r;   r   r2   r3   r   )
rH   rC   ÚshiftÚiÚerI   Únr-   r.   r/   s
             r   r@   zFliImageFile._palettel   sû   € ð ˆÝ•s˜4œ7Ÿ<š<¨™?œ?Ñ+Ô+Ñ,Ô,ð 	ð 	ˆAØ”—’˜Q‘”ˆAØ�A�a”D‘ˆAØ�!”ˆAØ�AŠvˆvØ�Ø”—’˜Q ™UÑ#Ô#ˆAÝ˜1�c !™fœf aÑ(Ô(ð ð �Ø�a”D˜E‘M�Ø�a˜!‘e”H Ñ%�Ø�a˜!‘e”H Ñ%�Ø  A˜Y�˜‘
Ø�Q‘��ðð	ð 	r   c                 óÚ   — |                       |¦  «        sd S || j        k     r|                      d¦  «         t          | j        dz   |dz   ¦  «        D ]}|                      |¦  «         Œd S )Nr   r   )Ú_seek_checkrD   Ú_seekr;   )rH   ÚframeÚfs      r   r=   zFliImageFile.seek~   sx   € Ø×Ò Ñ&Ô&ð 	ØˆFØ�4”<ÒÐØ�JŠJ�q‰MŒMˆMå�t”| aÑ'¨°©Ñ3Ô3ð 	ð 	ˆAØ�JŠJ�q‰MŒMˆMˆMð	ð 	r   c                 ó  — |dk    r.d| _         | j                             | j        ¦  «         d| _        n|                      ¦   «          || j         dz   k    rd|› �}t          |¦  «        ‚|| _         | j        | _        | j                             | j        ¦  «         | j                             d¦  «        }|st          ‚t          |¦  «        }|| _        dd| j        z   | j        d fg| _        | xj        |z  c_        d S )	Nr   r1   r   r   zcannot seek to frame r   Úfli)r   r   )rD   rE   r=   rG   r<   ÚloadÚ
ValueErrorr2   r3   ÚEOFErrorr9   ÚdecodermaxblockÚsizeÚtile)rH   rY   rJ   rI   Ú	framesizes        r   rX   zFliImageFile._seek‡   sô   € Ø�AŠ:ˆ:ØˆDŒLØŒH�MŠM˜$œ-Ñ(Ô(Ð(ØˆDŒMˆMð �IŠI‰KŒKˆKà�D”L 1Ñ$Ò$Ð$Ø1¨%Ð1Ð1ˆCÝ˜S‘/”/Ð!ØˆŒð ”(ˆŒØŒ�Š�T”]Ñ#Ô#Ð#àŒG�LŠL˜‰OŒOˆØð 	ÝˆNå˜‘F”Fˆ	à(ˆÔØ˜V d¤iÑ/°´ÀÐEÐFˆŒ	àˆŒ˜Ñ"ˆŒˆˆr   c                 ó   — | j         S )N)rD   )rH   s    r   rF   zFliImageFile.tell¤   s
   € ØŒ|Ðr   N)Ú__name__Ú
__module__Ú__qualname__ÚformatÚformat_descriptionÚ!_close_exclusive_fp_after_loadingrP   r@   r=   rX   rF   r%   r   r   r   r   *   sq   € € € € € à€FØ5ÐØ(-Ð%ð:ð :ð :ðxð ð ð$ð ð ð#ð #ð #ð:ð ð ð ð r   r   z.fliz.flc)r>   Ú r   r   r   Ú_binaryr   r   r   r9   r
   r   r   Úregister_openrh   Úregister_extensionsr%   r   r   ú<module>ro      sè   ðð$ 
€	€	€	à ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø !Ð !Ð !Ð !Ð !Ð !Ø !Ð !Ð !Ð !Ð !Ð !Ø Ð Ð Ð Ð Ð ðð ð ð{ð {ð {ð {ð {�9Ô&ñ {ô {ð {ðB €Ô �LÔ'¨°wÑ ?Ô ?Ð ?à €Ô ˜,Ô-°¸Ð/?Ñ @Ô @Ð @Ð @Ð @r   