Ë
    D·j?  ã                  ó  — U d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dlm	Z	 ddl
mZmZ ddlmZ ddlmZ  ej$                  d«      Z ej$                  d	«      Zdad
ed<   dadd„Zdd„Z G d„ d«      Zdd„Z G d„ dej                  «      Zddd„Z ej<                  ej>                  ee«        ej@                  ej>                  e«        ejB                  ej>                  ddg«        ejD                  ej>                  d«       y)é    )ÚannotationsN)ÚIOé   )ÚImageÚ	ImageFile)Úi32le)Ú	deprecatez^%%([^:]*):[ \t]*(.*)[ \t]*$z^%[%!\w]([^:]*)[ \t]*$zstr | bool | NoneÚ	gs_binaryc                 ó\  — t         €‡t        j                  j                  d«      r6t        €"dd l} dD ]  }| j                  |«      €Œ|a n dat        a t         duS 	 t        j                  ddgt        j                  ¬«       da t         duS t         duS # t        $ r da Y t         duS w xY w)NÚwinr   )Úgswin32cÚgswin64cÚgsFr   z	--version)Ústdout)r
   ÚsysÚplatformÚ
startswithÚgs_windows_binaryÚshutilÚwhichÚ
subprocessÚ
check_callÚDEVNULLÚOSError)r   Úbinarys     ú`/var/www/html/ai-video-generator/backend/venv/lib/python3.12/site-packages/PIL/EpsImagePlugin.pyÚhas_ghostscriptr   .   sÁ   € äÐÜ�<‰<×"Ñ" 5Ô)Ü Ð(Ûà<ò .�FØ—|‘| FÓ+Ñ7Ø,2Ð)Ùð.ð
 ).Ð%Ü)ˆIô ˜EÐ!Ð!ð"Ü×%Ñ% t¨[Ð&9Ä*×BTÑBTÕUØ �	ô ˜EÐ!Ð!Œ9˜EÐ!Ð!øô ò "Ø!‘	Ü˜EÐ!Ð!ð"ús   Á)B ÂB+Â*B+c                ób  — t        «       sd}t        |«      ‚| d   \  }} }}|\  }	}
t        |«      xs d}|d   |z  }|d   |z  }d|z  |
d   |
d   z
  z  }d|z  |
d   |
d   z
  z  }t        j                  «       \  }}t        j                  |«       d}t        |d«      r6t
        j                  j                  |j                  «      r|j                  }nÎt        j                  «       \  }}t        j                  |«       |}t        |d	«      5 }|j                  dt        j                  «       |j                  «       }|j                  d«       |}|dkD  rC|j!                  t#        |d
«      «      }|sn%|t%        |«      z  }|j'                  |«       |dkD  rŒCddd«       |rdnd}t(        dd|d›d|d›�d|d›d|d›�dddd|› �d|› �d|
d    › d|
d    › d�d|ddg}	 d}t*        j,                  j/                  d«      r7t1        j2                  «       }|xj4                  t0        j6                  z  c_        t1        j8                  ||¬«       t;        j                  |«      }|j=                  «        	 t        j>                  |«       |rt        j>                  |«       |j@                  jC                  «       }|j                  «        |S # 1 sw Y   �Œ7xY w# t        $ r Y ŒDw xY w# 	 t        j>                  |«       |rt        j>                  |«       w w # t        $ r Y w w xY wxY w)z!Render an image using Ghostscriptz%Unable to locate Ghostscript on pathsr   r   g      R@é   é   NÚnameÚwbi � ÚpngalphaÚppmrawz-qz-gÚdÚxz-rÚfz-dBATCHz	-dNOPAUSEz-dSAFERz	-sDEVICE=z-sOutputFile=z-cú z
 translatez-fÚshowpager   )Ústartupinfo)"r   r   ÚintÚtempfileÚmkstempÚosÚcloseÚhasattrÚpathÚexistsr!   ÚopenÚseekÚioÚSEEK_ENDÚtellÚreadÚminÚlenÚwriter
   r   r   r   r   ÚSTARTUPINFOÚdwFlagsÚSTARTF_USESHOWWINDOWr   r   ÚloadÚunlinkÚimÚcopy)ÚtileÚsizeÚfpÚscaleÚtransparencyÚmsgÚdecoderÚoffsetÚdataÚlengthÚbboxÚwidthÚheightÚres_xÚres_yÚout_fdÚoutfileÚinfile_tempÚinfileÚin_fdr'   ÚfsizeÚ
lengthfileÚsÚdeviceÚcommandr*   Úout_imrA   s                                r   ÚGhostscriptr]   E   s  € ô ÔØ5ˆÜ�c‹lÐð #' q¡'Ñ€GˆT�6˜4Ø�L€FˆDô �‹JŠO˜!€EØ�‰G�e‰O€EØ�!‰W�u‰_€Fà�5‰L˜D ™G d¨1¡gÑ-Ñ.€EØ�6‰M˜T !™W t¨A¡wÑ.Ñ/€Eä×&Ñ&Ó(�O€FˆGÜ‡H�HˆVÔà€KÜˆr�6ÔœrŸw™wŸ~™~¨b¯g©gÔ6Ø—‘‰ä%×-Ñ-Ó/Ñˆˆ{Ü
�‰�ŒØˆô
 �+˜tÓ$ð 	¨à�G‰G�A”r—{‘{Ô#Ø—G‘G“IˆEð �G‰G�AŒJØˆJØ˜q’.Ø—G‘GœC 
¨JÓ7Ó8�ÙØØœc !›fÑ$�
Ø—‘˜”
ð ˜q“.÷	ñ (‰Z¨X€Fô 	ØØ
ˆU�1ˆI�Q�v˜a�jÐ!Ø
ˆU�1ˆI�Q�u˜Q�iÐ ØØØØ
�F�8ÐØ
˜�yÐ!àØ�‰Gˆ8ˆ*�A�t˜A‘w�h�Z˜zÐ*ØØàØð#€Gð*ØˆÜ�<‰<×"Ñ" 5Ô)Ü$×0Ñ0Ó2ˆKØ×Ò¤:×#BÑ#BÑBÕÜ×Ñ˜g°;Õ?Ü—‘˜GÓ$ˆØ�‰Œð	Ü�I‰I�gÔÙÜ—	‘	˜+Ô&ð 
�‰�‰Ó	€BØ
‡L�L„NØ€I÷s	ñ 	ûôh ò 	Ùð	ûð		Ü�I‰I�gÔÙÜ—	‘	˜+Õ&ð øäò 	Ùð	ýsP   ÄBKÇ&BK/ É;,K  ËKË 	K,Ë+K,Ë/L.Ë1,LÌL.Ì	L+Ì(L.Ì*L+Ì+L.c                  ó<   — e Zd ZdZd„ Zej                  fd„Zdd„Zy)ÚPSFilez£
    Wrapper for bytesio object that treats either CR or LF as end of line.
    This class is no longer used internally, but kept for backwards compatibility.
    c                ó<   — t        ddd¬«       || _        d | _        y )Nr_   é   zSIf you need the functionality of this class you will need to implement it yourself.)Úaction)r	   rE   Úchar)ÚselfrE   s     r   Ú__init__zPSFile.__init__¨   s%   € ÜØØð6õ	
ð ˆŒØˆ�	ó    c                óJ   — d | _         | j                  j                  ||«       y ©N)rc   rE   r4   )rd   rJ   Úwhences      r   r4   zPSFile.seek²   s   € ØˆŒ	Ø�‰�‰�V˜VÕ$rf   c                ó¨  — | j                   xs dg}d | _         | j                  j                  d«      }|dvrGt        |«      r<|j	                  |«       | j                  j                  d«      }|dvrt        |«      rŒ<| j                  j                  d«      | _         | j                   dv rd | _         dj                  |«      j                  d«      S )Nrf   r   ó   
úlatin-1)rc   rE   r8   r:   ÚappendÚjoinÚdecode)rd   rY   Úcs      r   ÚreadlinezPSFile.readline¶   s¦   € Ø�Y‰YÒ˜#ÐˆØˆŒ	à�G‰G�L‰L˜‹OˆØ˜Ñ¤S¨¤VØ�H‰H�QŒKØ—‘—‘˜Q“ˆAð ˜Ñ¤S¨¥Vð —G‘G—L‘L “OˆŒ	à�9‰9˜ÑØˆDŒIà�x‰x˜‹{×!Ñ! )Ó,Ð,rf   N)ÚreturnÚstr)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__re   r5   ÚSEEK_SETr4   rq   © rf   r   r_   r_   ¢   s   „ ñò
ð #%§+¡+ó %ô-rf   r_   c                óR   — | d d dk(  xs t        | «      dk\  xr t        | «      dk(  S )Né   ó   %!PSì   ÅP§ )r:   Úi32)Úprefixs    r   Ú_acceptr€   Ç   s/   € Ø�"�1ˆ:˜Ñ ÒT¤S¨£[°AÑ%5Ò%S¼#¸f»+ÈÑ:SÐTrf   c                  óD   — e Zd ZdZdZdZdddddœZdd	„Zd
„ Zdd„Z	dd„Z
y)ÚEpsImageFilez.EPS File Parser for the Python Imaging LibraryÚEPSzEncapsulated PostscriptÚLÚLABÚRGBÚCMYK)r   r   r    r{   c                ó¬  ‡ ‡‡‡‡— ‰ j                  ‰ j                  «      \  ŠŠ‰ j                  j                  ‰«       d‰ _        d ‰ _        t        d«      }t        |«      }d}d}dŠdŠdˆ fd„}d ˆˆˆˆ ˆfd„}	 ‰ j                  j                  d«      }|d	k(  r|dk(  rS|r |«        �n�|d
v r|dk(  r?Œ;|dk\  r+|d   t        d«      k(  rd}t        |«      ‚|r	 |«        d}d}|d   ||<   |dz  }Œy|r£|d   t        d«      k7  s|d d dk(  r
 |«        d}Œžt        |d | d«      }	 ||	«      sùt        j                  |	«      }
|
r<|
j                  d«      }|d d dk(  r|dd  ‰ j                  d<   n¶d‰ j                  |<   n¦|	d   dk(  rn�d}t        |«      ‚|d d dk(  rY|d| j!                  d d«      }d„ |d d D «       \  }}}}|dk(  rd‰ _        n|dk(  r	 ‰ j"                  |   ‰ _        nn=||f‰ _        y |d d dk(  rn*‰r‰rt        |d | d«      }	 ||	«       n
|d d dk(  rdŠd}�Œ±‰ j                  sd}t        |«      ‚y # t$        $ r Y Œ%w xY w)!Nr†   éÿ   r   TFc                 ór   •— d‰j                   vrd} t        | «      ‚d‰j                   vrd} t        | «      ‚y)zí
            The EPS specification requires that some headers exist.
            This should be checked when the header comments formally end,
            when image data starts, or when the file ends, whichever comes first.
            úPS-Adobez'EPS header missing "%!PS-Adobe" commentÚBoundingBoxz*EPS header missing "%%BoundingBox" commentN)ÚinfoÚSyntaxError)rH   rd   s    €r   Úcheck_required_header_commentsz:EpsImageFile._open.<locals>.check_required_header_commentsè   sB   ø€ ð  §¡Ñ*Ø?�Ü! #Ó&Ð&Ø D§I¡IÑ-ØB�Ü! #Ó&Ð&ð .rf   c                ó  •— 	 t         j                  | «      }|sy|j                  dd«      \  }}|‰j                  |<   |dk(  r|dk(  rdŠ
y‰j                  r‰ri‰
rg	 |j                  «       D �cg c]  }t        t        |«      «      ‘Œ }}|d   |d   z
  |d	   |d   z
  f‰_        d
d‰j                  z   ‰	‰|ffg‰_        yy# t        j                  $ r}d}t	        |«      |‚d }~ww xY wc c}w # t        $ r Y yw xY w)Núnot an EPS fileFr   r   rŒ   z(atend)Tr   r    Úeps©r   r   )ÚsplitÚmatchÚreÚerrorrŽ   Úgroupr�   Ú_sizer+   ÚfloatrD   rC   Ú	Exception)rY   ÚmÚerH   ÚkÚvÚiÚboxrL   rJ   Úreading_trailer_commentsrd   Útrailer_reacheds           €€€€€r   Ú_read_commentz)EpsImageFile._open.<locals>._read_commentõ   s  ø€ ð.Ü—K‘K “N�ñ
 Øà—7‘7˜1˜a“=‰DˆAˆqØˆD�I‰I�a‰LØ�MÒ!Ø˜	’>Ø/3Ð,ð ð Ÿš©Ñ<Tðð 78·g±g³iÖ@°œs¤5¨£8�}Ð@˜Ð@Ø%(¨¡V¨c°!©f¡_°c¸!±f¸sÀ1¹v±oÐ%E˜œ
Ø&+¨V°d·i±iÑ-?ÀÈ&ÐRUÈÐ%WÐ$X˜œ	ñ øô- —8‘8ò .Ø'�Ü! #Ó&¨AÐ-ûð.üò" Aøô %ò ØØðús;   ƒC ÁC2 Á/C-Â
8C2 ÃC*ÃC%Ã%C*Ã-C2 Ã2	C>Ã=C>r   rf   rk   ú%r‘   é   s   %%EndCommentsrl   é   r‹   é	   Ú zbad EPS headerra   s   %ImageData:é   c              3  ó2   K  — | ]  }t        |«      –— Œ y ­wrh   )r+   )Ú.0Úvalues     r   ú	<genexpr>z%EpsImageFile._open.<locals>.<genexpr>]  s   è ø€ ò 5Ø#(”C˜—Jñ5ùs   ‚r{   Ú1é   s   %%EOFs	   %%Trailerz!cannot determine EPS bounding box©rr   ÚNone)rY   rs   rr   Úbool)Ú_find_offsetrE   r4   Ú_moder™   Ú	bytearrayÚ
memoryviewr8   ÚordrŽ   rs   Úfieldr•   r˜   r�   r   r”   Úmode_mapÚ
ValueError)rd   Úbyte_arrÚbytes_mvÚ
bytes_readÚreading_header_commentsr�   r¤   ÚbyterH   rY   rœ   rž   Úimage_data_valuesÚcolumnsÚrowsÚ	bit_depthÚmode_idrL   rJ   r¢   r£   s   `                @@@@r   Ú_openzEpsImageFile._openØ   sÕ  ü€ Ø×,Ñ,¨T¯W©WÓ5Ñˆ�ð 	�‰�‰�VÔàˆŒ
ØˆŒ
ä˜S“>ˆÜ˜hÓ'ˆØˆ
Ø"&ÐØ#(Ð Øˆõ	'÷	ñ 	ð8 Ø—7‘7—<‘< “?ˆDØ�sŠ{à ’?Ù.Ù6Ô8ÙØ˜‘ð  ’?Øð  Ò$ð   ‘{¤c¨#£hÒ.Ø/˜Ü)¨#Ó.Ð.á2Ù:Ô<Ø6;Ð3ð &'˜
Ø'+¨A¡w�˜Ñ$Ø˜a‘�
Øá&ð ˜A‘;¤# c£(Ò*¨h°s¸¨mÐ?OÒ.OÙ2Ô4Ø.3Ð+Øä˜  *Ð-¨yÓ9�Ù$ QÔ'ÜŸ™ A›�AÙØŸG™G A›J˜Ø˜R˜a˜5 JÒ.Ø45°a°b°E˜DŸI™I jÒ1à+-˜DŸI™I ašLØ˜1™ šð à.˜Ü% c›lÐ*Ø˜#˜2� .Ò0ð %-¨R°
Ð$;×$AÑ$AÀ$ÈÓ$JÐ!ñ5Ø,=¸b¸qÐ,Aô5Ñ1�˜˜y¨'ð  ’>Ø!$�D•JØ !’^ðØ%)§]¡]°7Ñ%;˜�
ð à$ d˜]�”
ØØ˜"˜1� Ò)ØÙ Ñ%=ä˜  *Ð-¨yÓ9�Ù˜aÕ Ø˜"˜1� Ò-Ø"&�ØˆJñI ðL �zŠzØ5ˆCÜ˜#“,Ðð øô# &ò Ùðús   ÇI É	IÉIc                ó(  — |j                  d«      }|dk(  r6|j                  dt        j                  «       |j	                  «       }d}||fS t        |«      dk(  r,|j                  d«      }t        |«      }t        |d«      }||fS d}t        |«      ‚)Nr{   r|   r   r}   r§   r‘   )r8   r4   r5   r6   r7   r~   rŽ   )rd   rE   rY   rL   rJ   rH   s         r   r´   zEpsImageFile._find_offset{  s“   € Ø�G‰G�A‹Jˆà�Š<à�G‰G�A”r—{‘{Ô#Ø—W‘W“YˆFØˆFð �vˆ~Ðô �‹V�zÒ!ð —‘˜“
ˆAÜ˜“VˆFÜ˜˜A“YˆFð
 �vˆ~Ðð $ˆCÜ˜cÓ"Ð"rf   c                ó6  — | j                   rot        | j                   | j                  | j                  ||«      | _        | j                  j
                  | _        | j                  j                  | _        g | _         t        j                  j                  | «      S rh   )
rC   r]   rD   rE   rA   Úmoderµ   r™   r   r?   )rd   rF   rG   s      r   r?   zEpsImageFile.load’  sc   € à�9Š9Ü! $§)¡)¨T¯Y©Y¸¿¹ÀÈÓUˆDŒGØŸ™Ÿ™ˆDŒJØŸ™Ÿ™ˆDŒJØˆDŒIÜ�{‰{×Ñ Ó%Ð%rf   c                 ó   — y rh   ry   )rd   Úposs     r   Ú	load_seekzEpsImageFile.load_seek›  s   € ð 	rf   Nr±   ©r   F)rË   r+   rr   r²   )rt   ru   rv   rw   ÚformatÚformat_descriptionrº   rÆ   r´   r?   rÌ   ry   rf   r   r‚   r‚   Ð   s4   „ Ù8à€FØ2Ðà˜5 U¨vÑ6€HóaòFó.&ôrf   r‚   c                óÖ  — | j                  «        | j                  dk(  rd}n1| j                  dk(  rd}n| j                  dk(  rd}nd}t        |«      ‚|r¥|j                  d«       |j                  d	«       |j                  d
| j                  z  «       |j                  d«       |j                  d«       |j                  d«       |j                  d| j                  z  «       |j                  d|z  «       |j                  d«       |j                  d«       |j                  d| j                  d   |d   z  z  «       |j                  d| j                  z  «       |j                  d| j                  z  «       |j                  d| j                  d   | j                  d   | j                  d   fz  «       |j                  d«       |j                  |d   dz   «       t        |d«      r|j                  «        t        j                  | |dd| j                  z   ddfg«       |j                  d«       |j                  d «       t        |d«      r|j                  «        yy)!z*EPS Writer for the Python Imaging Library.r„   )r§   r   s   imager†   )r§   r    s   false 3 colorimager‡   )r§   r{   s   false 4 colorimagezimage mode is not supporteds   %!PS-Adobe-3.0 EPSF-3.0
s   %%Creator: PIL 0.1 EpsEncode
s   %%%%BoundingBox: 0 0 %d %d
s   %%Pages: 1
s   %%EndComments
s   %%Page: 1 1
s   %%ImageData: %d %d s   %d %d 0 1 1 "%s"
s   gsave
s   10 dict begin
s   /buf %d string def
r   r   s   %d %d scale
s   %d %d 8
s   [%d 0 0 -%d 0 %d]
s+   { currentfile buf readhexstring pop } bind
r   ó   
Úflushr’   r“   Ns   
%%%%EndBinary
s   grestore end
)	r?   rÉ   r»   r;   rD   r0   rÒ   r   Ú_save)rA   rE   Úfilenamer’   ÚoperatorrH   s         r   rÓ   rÓ   ¤  s÷  € ð ‡G�G„Ið 
‡w�w�#‚~Ø#‰Ø	�‰�EÒ	Ø0‰Ø	�‰�FÒ	Ø0‰à+ˆÜ˜‹oÐá
à
�‰Ð-Ô.Ø
�‰Ð2Ô3à
�‰Ð0°2·7±7Ñ:Ô;Ø
�‰�Ô!Ø
�‰Ð#Ô$Ø
�‰Ð!Ô"Ø
�‰Ð'¨"¯'©'Ñ1Ô2Ø
�‰Ð&¨Ñ1Ô2ð ‡H�HˆZÔØ‡H�HÐÔ Ø‡H�HÐ$¨¯©°©
°X¸a±[Ñ(@ÑAÔBØ‡H�HÐ §¡Ñ'Ô(Ø‡H�Hˆ\˜BŸG™GÑ#Ô$Ø‡H�HÐ# r§w¡w¨q¡z°2·7±7¸1±:¸r¿w¹wÀq¹zÐ&JÑJÔKØ‡H�HÐ<Ô=Ø‡H�HˆX�a‰[˜5Ñ Ô!Üˆr�7ÔØ
�‰Œ
ä‡O�O�B˜˜e V¨b¯g©gÑ%5°q¸$Ð?Ð@ÔAà‡H�HÐ!Ô"Ø‡H�HÐÔÜˆr�7ÔØ
�‰�
ð rf   z.psz.epszapplication/postscript)rr   r³   rÍ   )r   Úbytesrr   r³   )r   )
rA   zImage.ImagerE   z	IO[bytes]rÔ   zstr | bytesr’   r+   rr   r²   )#Ú
__future__r   r5   r.   r–   r   r   r,   Útypingr   r©   r   r   Ú_binaryr   r~   Ú
_deprecater	   Úcompiler”   r¹   r
   Ú__annotations__r   r   r]   r_   r€   r‚   rÓ   Úregister_openrÎ   Úregister_saveÚregister_extensionsÚregister_mimery   rf   r   ú<module>rá      sþ   ðö, #ã 	Û 	Û 	Û Û 
Û Ý ç Ý !Ý !ð
 	ˆ�
‰
Ð2Ó3€Øˆ�
‰
Ð,Ó-€à#€	ÐÓ #ØÐ ó"ó.Z÷z"-ñ "-óJUôN�9×&Ñ&ô Nôh.ðh €× Ñ �L×'Ñ'¨°wÔ ?à €× Ñ �L×'Ñ'¨Ô /à €× Ñ ˜,×-Ñ-°°v¨Ô ?à €× Ñ �L×'Ñ'Ð)AÕ Brf   