+
    ÂHàj‡Ó  ã                  óæ  € ^ RI Ht 0 RMmt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	H
t
 ^ RIHt ^ RIHtHtHt ^RIHtHtHtHtHt ^RIHt ^RIHt ^R	IHt ^R
IHt ^RIHt  ^RI!H"t" Rt#]#'       d   ^ RI$H%t% ^ RIH&t&H't'H(t( ^RIH)t) ]PT                  ! ]+4      t,]PZ                  ! R4      P\                  t/Rt0RNRORPRQRRRSRTRURVRWRXRYRZR[R\R]R^R_R`RaRbRcRdReRfRgRhRiRjRk/t1]PZ                  ! R 4      t2]Pf                  t4 ^@]4,          t5  ! R! R"]
4      t6 ! R# R$]
4      t7R% R& lt8RlR' R( llt9 ! R) R*4      t: ! R+ R,];4      t< ! R- R.4      t= ! R/ R0]4      t> ! R1 R2]:4      t?R3 R4 lt@ ! R5 R6]P(                  4      tARRmRRnR7RoRRpRRqRRrRRsRRsRRtRRuRRvRRwRRxRRy/tBR8 R9 ltC ! R: R;4      tD ! R< R=4      tER> R? ltF ! R@ RA]4      tGRB RC ltHRD RE ltI]CR3RF RG lltJRH RI ltK]P˜                  ! ]APš                  ]A]@4       ]Pœ                  ! ]APš                  ]J4       ]Pž                  ! ]APš                  ]I4       ]P                   ! ]APš                  RJRK.4       ]P¢                  ! ]APš                  RL4       R# )zé    )ÚannotationsN)ÚIntEnum)ÚFraction)ÚIOÚ
NamedTupleÚcast)ÚImageÚ
ImageChopsÚ	ImageFileÚImagePaletteÚImageSequence)Úi16be)Úi32be)Úo8)Úo16be)Úo32be)ÚDeferredErrorF)ÚCallable)ÚAnyÚNoReturnÚSelf)Ú_imagings   \w\w\w\ws   ‰PNG

Ú1ÚLúL;2úL;4úI;16úI;16BÚRGBÚPúP;1úP;2úP;4ÚLAÚRGBAs   ^ÿ* ÿ*$c                  ó&   € ] tR t^wt^ t ^t ^tRtR# )ÚDisposal© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__ÚOP_NONEÚOP_BACKGROUNDÚOP_PREVIOUSÚ__static_attributes__r(   ó    Ú”/home/ubuntu/.hermes/installs/5f0a1ff4045d044e/environments/50f6b671e3f94b538e344231dfcb664f/venv/lib/python3.14/site-packages/PIL/PngImagePlugin.pyr'   r'   w   s$   † Ø€Gðð €Mðð
 €Kór1   r'   c                  ó    € ] tR t^Œt^ t ^tRtR# )ÚBlendr(   N)r)   r*   r+   r,   Ú	OP_SOURCEÚOP_OVERr0   r(   r1   r2   r4   r4   Œ   s   † Ø€Iðð
 €Gór1   r4   c               ó    € V ^8„  d   QhRRRR/# )é   ÚsÚbytesÚreturnr(   )Úformats   "r2   Ú__annotate__r=   š   s   € ÷ ñ ˜Uð  uñ r1   c                óš   € \         P                  ! 4       pVP                  V \        4      pVP                  '       d   R p\        V4      hV# )z=Decompressed data too large for PngImagePlugin.MAX_TEXT_CHUNK)ÚzlibÚdecompressobjÚ
decompressÚMAX_TEXT_CHUNKÚunconsumed_tailÚ
ValueError)r9   ÚdobjÚ	plaintextÚmsgs   &   r2   Ú_safe_zlib_decompressrH   š   sA   € Ü×ÒÓ€DØ—‘ ¤>Ó2€IØ××ÐØMˆÜ˜‹oÐØÐr1   c               ó$   € V ^8„  d   QhRRRRRR/# )r8   Údatar:   ÚseedÚintr;   r(   )r<   s   "r2   r=   r=   £   s!   € ÷ /ñ /�ð /˜cð /¨#ñ /r1   c                ó<   € \         P                  ! W4      R ,          # )l   ÿÿ )r?   Úcrc32)rJ   rK   s   &&r2   Ú_crc32rO   £   s   € Ü�:Š:�dÓ! JÕ.Ð.r1   c                  ó’   € ] tR t^«tR R ltR R ltR R ltR R ltR	 R
 ltR R lt	R R lt
R R ltR R ltRR R lltRtR# )ÚChunkStreamc               ó    € V ^8„  d   QhRRRR/# ©r8   Úfpú	IO[bytes]r;   ÚNoner(   )r<   s   "r2   r=   ÚChunkStream.__annotate__¬   s   € ÷ =ñ =˜9ð =¨ñ =r1   c                	ó    € Wn         . V n        R # ©N©rT   Úqueue)ÚselfrT   s   &&r2   Ú__init__ÚChunkStream.__init__¬   s   € Ø$&ŒØ:<ˆŽ
r1   c               ó   € V ^8„  d   QhRR/# )r8   r;   ztuple[bytes, int, int]r(   )r<   s   "r2   r=   rW   °   s   € ÷  ñ  Ð,ñ  r1   c                óØ  € RpV P                   f   Q hV P                  '       d:   V P                  P                  4       w  rpV P                   P                  V4       MIV P                   P	                  ^4      pVR,          pV P                   P                  4       p\        V4      p\        V4      '       g1   \        P                  '       g   R\        V4       R2p\        V4      hWV3# )z.Fetch a new chunk. Returns header information.N:é   NNzbroken PNG file (chunk Ú))rT   r[   ÚpopÚseekÚreadÚtellÚi32Úis_cidr   ÚLOAD_TRUNCATED_IMAGESÚreprÚSyntaxError)r\   ÚcidÚposÚlengthr9   rG   s   &     r2   re   ÚChunkStream.read°   s´   € àˆà�w‰wÒ"Ð"Ð"Ø�:�:ˆ:Ø#Ÿz™zŸ~™~Ó/ÑˆC�fØ�G‰G�L‰L˜Õà—‘—‘˜Q“ˆAØ�B•%ˆCØ—'‘'—,‘,“.ˆCÜ˜“VˆFä�c�{Š{Ü×2×2Ð2Ø/´°S³	¨{¸!Ð<�Ü! #Ó&Ð&à˜ÐÐr1   c               ó   € V ^8„  d   QhRR/# )r8   r;   r   r(   )r<   s   "r2   r=   rW   Å   s   € ÷ ñ ˜4ñ r1   c                	ó   € V # rY   r(   ©r\   s   &r2   Ú	__enter__ÚChunkStream.__enter__Å   s   € Øˆr1   c               ó    € V ^8„  d   QhRRRR/# )r8   ÚargsÚobjectr;   rV   r(   )r<   s   "r2   r=   rW   È   s   € ÷ ñ ˜fð ¨ñ r1   c                	ó&   € V P                  4        R # rY   )Úclose)r\   rv   s   &*r2   Ú__exit__ÚChunkStream.__exit__È   s   € Ø�
‰
Žr1   c               ó   € V ^8„  d   QhRR/# ©r8   r;   rV   r(   )r<   s   "r2   r=   rW   Ë   s   € ÷ $ñ $�tñ $r1   c                	ó"   € R ;V n         V n        R # rY   )r[   rT   rr   s   &r2   ry   ÚChunkStream.closeË   s   € Ø#Ð#ˆŒ
�T–Wr1   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r8   rl   r:   rm   rL   rn   r;   rV   r(   )r<   s   "r2   r=   rW   Î   s(   € ÷ .ñ .˜ð . Cð .°ð .¸ñ .r1   c                	ó`   € V P                   f   Q hV P                   P                  WV34       R # rY   )r[   Úappend©r\   rl   rm   rn   s   &&&&r2   ÚpushÚChunkStream.pushÎ   s)   € Ø�z‰zÒ%Ð%Ð%Ø�
‰
×Ñ˜3 VÐ,Ö-r1   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r8   rl   r:   rm   rL   rn   r;   r(   )r<   s   "r2   r=   rW   Ò   s.   € ÷ Jñ J˜ð J Cð J°ð J¸ñ Jr1   c                óx   € \         P                  RWV4       \        V RVP                  R4       24      ! W#4      # )z"Call the appropriate chunk handlerzSTREAM %r %s %sÚchunk_Úascii)ÚloggerÚdebugÚgetattrÚdecoderƒ   s   &&&&r2   ÚcallÚChunkStream.callÒ   s8   € ô 	�‰Ð&¨°&Ô9Ü�t˜v c§j¡j°Ó&9Ð%:Ð;Ô<¸SÓIÐIr1   c               ó$   € V ^8„  d   QhRRRRRR/# ©r8   rl   r:   rJ   r;   rV   r(   )r<   s   "r2   r=   rW   Ø   s!   € ÷ *ñ *�uð * Eð *¨dñ *r1   c                óÖ  € \         P                  '       d1   V^ ,          ^,	          ^,          '       d   V P                  W4       R# V P                  f   Q h \	        V\	        V4      4      p\        V P                  P                  ^4      4      pW48w  d   R\        V4       R2p\        V4      hR#   \        P                   d!   pR\        T4       R2p\        T4      ThRp?ii ; i)zRead and verify checksumNz(broken PNG file (bad header checksum in rb   z(broken PNG file (incomplete checksum in )r   ri   Úcrc_skiprT   rO   rg   re   rj   rk   ÚstructÚerror)r\   rl   rJ   Úcrc1Úcrc2rG   Úes   &&&    r2   ÚcrcÚChunkStream.crcØ   sÆ   € ô ×*×*Ð*°°Aµ¸!µ¸a·´Ø�M‰M˜#Ô$Ùà�w‰wÒ"Ð"Ð"ð	*Ü˜$¤ s£Ó,ˆDÜ�t—w‘w—|‘| A“Ó'ˆDØŒ|Ø@ÄÀcÃÀÈ1ÐM�Ü! #Ó&Ð&ñ øô �|‰|ô 	*Ø<¼TÀ#»Y¸KÀqÐIˆCÜ˜cÓ"¨Ð)ûð	*ús   ÁAB3 Â3C(ÃC#Ã#C(c               ó$   € V ^8„  d   QhRRRRRR/# r‘   r(   )r<   s   "r2   r=   rW   í   s!   € ÷ ñ ˜Eð ¨ð °4ñ r1   c                ó\   € V P                   f   Q hV P                   P                  ^4       R# )zRead checksumN)rT   re   )r\   rl   rJ   s   &&&r2   r“   ÚChunkStream.crc_skipí   s#   € ð �w‰wÒ"Ð"Ð"Ø�‰�‰�QŽr1   c               ó    € V ^8„  d   QhRRRR/# )r8   Úendchunkr:   r;   zlist[bytes]r(   )r<   s   "r2   r=   rW   ó   s   € ÷ ñ ˜uð °;ñ r1   c                	ó@  € . pV P                   f   Q h  V P                  4       w  r4pY18X  d    T# T P                  T\        P                  ! T P                   T4      4       TP                  T4       Kb    \        P                   d   pRp\	        T4      ThR p?ii ; i)Nztruncated PNG file)	rT   re   r”   r•   ÚOSErrorr™   r   Ú
_safe_readr‚   )r\   rŸ   Úcidsrl   rm   rn   r˜   rG   s   &&      r2   ÚverifyÚChunkStream.verifyó   s–   € ð ˆà�w‰wÒ"Ð"Ð"Øð*Ø#'§9¡9£;Ñ �˜&ð
 ŒØð ˆð �H‰H�Sœ)×.Ò.¨t¯w©w¸Ó?Ô@Ø�K‰K˜Öøô —<‘<ô *Ø*�Ü˜c“l¨Ð)ûð*ús   •A5 Á5BÂ
BÂBrZ   N)ó   IEND)r)   r*   r+   r,   r]   re   rs   rz   ry   r„   rŽ   r™   r“   r¤   r0   r(   r1   r2   rQ   rQ   «   s:   † õ=õ õ*õõ$õ.õJõ*õ*÷ó r1   rQ   c                  óJ   € ] tR tRt$ RtR]R&   R]R&   ]R
R R ll4       tR	tR# )ÚiTXti	  ze
Subclass of string to allow iTXt chunks to look like strings while
keeping their extra information

zstr | bytes | NoneÚlangÚtkeyNc               ó(   € V ^8„  d   QhRRRRRRRR/# )r8   ÚtextÚstrr©   z
str | Nonerª   r;   r   r(   )r<   s   "r2   r=   ÚiTXt.__annotate__  s,   € ÷ ñ ØðØ(ðØ7Aðà	ñr1   c                óH   € \         P                  W4      pW$n        W4n        V# )zŸ
:param cls: the class to use when creating the instance
:param text: value for this key
:param lang: language code
:param tkey: UTF-8 version of the key name
)r­   Ú__new__r©   rª   )Úclsr¬   r©   rª   r\   s   &&&& r2   r°   ÚiTXt.__new__  s!   € ô �{‰{˜3Ó%ˆØŒ	ØŒ	Øˆr1   )r©   rª   )NN)	r)   r*   r+   r,   Ú__doc__Ú__annotations__Ústaticmethodr°   r0   r(   r1   r2   r¨   r¨   	  s'   ‡ ñð ÓØ
Óàöó ôr1   r¨   c                  óV   € ] tR tRtRtR R ltRR R lltRR R lltRR	 R
 lltRt	R# )ÚPngInfoi$  z4
PNG chunk container (for use with save(pnginfo=))

c               ó   € V ^8„  d   QhRR/# r}   r(   )r<   s   "r2   r=   ÚPngInfo.__annotate__*  s   € ÷ :ñ :˜$ñ :r1   c                	ó   € . V n         R # rY   ©Úchunksrr   s   &r2   r]   ÚPngInfo.__init__*  s	   € Ø79ˆŽr1   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r8   rl   r:   rJ   Ú
after_idatÚboolr;   rV   r(   )r<   s   "r2   r=   r¹   -  s(   € ÷ 
4ñ 
4�uð 
4 Eð 
4°tð 
4Èñ 
4r1   c                ó@   € V P                   P                  WV34       R# )zúAppends an arbitrary chunk. Use with caution.

:param cid: a byte string, 4 bytes long.
:param data: a byte string of the encoded data
:param after_idat: for use with private chunks. Whether the chunk
                   should be written after IDAT

N)r¼   r‚   )r\   rl   rJ   r¿   s   &&&&r2   ÚaddÚPngInfo.add-  s   € ð 	�‰×Ñ˜C zÐ2Ö3r1   c               ó0   € V ^8„  d   QhRRRRRRRRRRRR	/# )
r8   Úkeyústr | bytesÚvaluer©   rª   ÚziprÀ   r;   rV   r(   )r<   s   "r2   r=   r¹   9  sN   € ÷ !Uñ !Uàð!Uð ð!Uð ð	!Uð
 ð!Uð ð!Uð 
ñ!Ur1   c                ór  € \        V\        4      '       g   VP                  RR4      p\        V\        4      '       g   VP                  RR4      p\        V\        4      '       g   VP                  RR4      p\        V\        4      '       g   VP                  RR4      pV'       dS   V P                  RVR,           V,           R,           V,           R,           \        P
                  ! V4      ,           4       R# V P                  RVR,           V,           R,           V,           R,           V,           4       R# )	zÉAppends an iTXt chunk.

:param key: latin-1 encodable text key name
:param value: value for this key
:param lang: language code
:param tkey: UTF-8 version of the key name
:param zip: compression flag

úlatin-1Ústrictúutf-8ó   iTXts     ó    ó      N)Ú
isinstancer:   ÚencoderÂ   r?   Úcompress)r\   rÅ   rÇ   r©   rª   rÈ   s   &&&&&&r2   Úadd_itxtÚPngInfo.add_itxt9  sâ   € ô$ ˜#œu×%Ò%Ø—*‘*˜Y¨Ó1ˆCÜ˜%¤×'Ò'Ø—L‘L ¨(Ó3ˆEÜ˜$¤×&Ò&Ø—;‘;˜w¨Ó1ˆDÜ˜$¤×&Ò&Ø—;‘;˜w¨Ó1ˆDçØ�H‰HØØ�kÕ! DÕ(¨5Õ0°4Õ7¸%Õ?Ä$Ç-Â-ÐPUÓBVÕVöð
 �H‰H�W˜c I�o°Õ4°uÕ<¸tÕCÀeÕKÈeÕSÖTr1   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r8   rÅ   rÆ   rÇ   zstr | bytes | iTXtrÈ   rÀ   r;   rV   r(   )r<   s   "r2   r=   r¹   \  s,   € ÷ !3ñ !3Øð!3Ø'9ð!3Ø@Dð!3à	ñ!3r1   c                óx  € \        V\        4      '       dQ   T P                  TTVP                  e   VP                  MRVP                  e   VP                  VR7      # RVR7      # \        V\
        4      '       g    VP                  RR4      p\        V\
        4      '       g   VP                  RR4      pV'       d7   V P                  RVR,           \        P                  ! V4      ,           4       R# V P                  RVR	,           V,           4       R#   \         d    T P                  YTR7      u # i ; i)
z¾Appends a text chunk.

:param key: latin-1 encodable text key name
:param value: value for this key, text or an
   :py:class:`PIL.PngImagePlugin.iTXt` instance
:param zip: compression flag

Nr1   )rÈ   rÊ   rË   ó   zTXtó     ó   tEXtrÎ   )rÐ   r¨   rÓ   r©   rª   r:   rÑ   ÚUnicodeErrorrÂ   r?   rÒ   )r\   rÅ   rÇ   rÈ   s   &&&&r2   Úadd_textÚPngInfo.add_text\  s
  € ô �eœT×"Ò"Ø—=‘=ØØØ#Ÿj™jÒ4�—
’
¸#Ø#Ÿj™jÒ4�—
‘
Øð !ó ð ð ;>Øð !ó ð ô ˜%¤×'Ò'ð:ØŸ™ Y°Ó9�ô ˜#œu×%Ò%Ø—*‘*˜Y¨Ó1ˆCçØ�H‰H�W˜c G�m¬d¯mªm¸EÓ.BÕBÖCà�H‰H�W˜c E�k¨EÕ1Ö2øô  ô :Ø—}‘} S°S�}Ó9Ò9ð:ús   Á>D ÄD9Ä8D9r»   N©F)Ú rÞ   F)
r)   r*   r+   r,   r³   r]   rÂ   rÓ   rÛ   r0   r(   r1   r2   r·   r·   $  s"   † ñõ
:÷
4÷!U÷F!3ó !3r1   r·   c                  ó6   € ] tR tRt$ R]R&   R]R&   R]R&   RtR	# )
Ú_RewindStatei„  z dict[str | tuple[int, int], Any]Úinfozlist[ImageFile._Tile]Útilez
int | NoneÚseq_numr(   N©r)   r*   r+   r,   r´   r0   r(   r1   r2   rà   rà   „  s   ‡ Ø
*Ó*Ø
ÓØ×r1   rà   c                  ó  a € ] tR tRtR V 3R lltR R ltR R ltR R	 ltR
 R ltR R lt	R R lt
R R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR  R! ltR" R# ltR$ R% ltR& R' ltR( R) ltR* R+ ltR,tV ;t# )-Ú	PngStreamiŠ  c               ó    € V ^8„  d   QhRRRR/# rS   r(   )r<   s   "r2   r=   ÚPngStream.__annotate__‹  s   € ÷ ñ ˜9ð ¨ñ r1   c                	óÖ   <€ \         SV `  V4       / V n        / V n        RV n        RV n        . V n        RV n        RV n        RV n	        RV n
        \        / . R4      V n        ^ V n        R# )r   rÞ   N)r   r   )Úsuperr]   Úim_infoÚim_textÚim_sizeÚim_modeÚim_tileÚ
im_paletteÚim_custom_mimetypeÚim_n_framesÚ_seq_numrà   Úrewind_stateÚtext_memory)r\   rT   Ú	__class__s   &&€r2   r]   ÚPngStream.__init__‹  sl   ø€ Ü‰Ñ˜Ôð :<ˆŒØ.0ˆŒØˆŒØˆŒØ.0ˆŒØ48ˆŒØ.2ˆÔØ'+ˆÔØ$(ˆŒÜ(¨¨R°Ó6ˆÔàˆÖr1   c               ó    € V ^8„  d   QhRRRR/# )r8   ÚchunklenrL   r;   rV   r(   )r<   s   "r2   r=   rè   œ  s   € ÷ "ñ "¨#ð "°$ñ "r1   c                	ó˜   € V ;P                   V,          un         V P                   \        8”  d   R V P                    R2p\        V4      hR# )z%Too much memory used in text chunks: z>MAX_TEXT_MEMORYN)rõ   ÚMAX_TEXT_MEMORYrD   )r\   rù   rG   s   && r2   Úcheck_text_memoryÚPngStream.check_text_memoryœ  sN   € Ø×Ò˜HÕ$ÕØ×ÑœoÔ-à7Ø×#Ñ#Ð$Ð$4ð6ð ô ˜S“/Ð!ñ .r1   c               ó   € V ^8„  d   QhRR/# r}   r(   )r<   s   "r2   r=   rè   ¥  s   € ÷ 
ñ 
˜Tñ 
r1   c                	ó‚   € \        V P                  P                  4       V P                  V P                  4      V n        R # rY   )rà   rë   Úcopyrï   ró   rô   rr   s   &r2   Úsave_rewindÚPngStream.save_rewind¥  s-   € Ü(Ø�L‰L×ÑÓØ�L‰LØ�M‰Mó
ˆÖr1   c               ó   € V ^8„  d   QhRR/# r}   r(   )r<   s   "r2   r=   rè   ¬  s   € ÷ 2ñ 2˜ñ 2r1   c                	óÄ   € V P                   P                  P                  4       V n        V P                   P                  V n        V P                   P                  V n        R # rY   )rô   rá   r   rë   râ   rï   rã   ró   rr   s   &r2   ÚrewindÚPngStream.rewind¬  sD   € Ø×(Ñ(×-Ñ-×2Ñ2Ó4ˆŒØ×(Ñ(×-Ñ-ˆŒØ×)Ñ)×1Ñ1ˆŽr1   c               ó$   € V ^8„  d   QhRRRRRR/# ©r8   rm   rL   rn   r;   r:   r(   )r<   s   "r2   r=   rè   ±  s!   € ÷ ñ ˜cð ¨3ð °5ñ r1   c                	ó   € V P                   f   Q h\        P                  ! V P                   V4      pVP                  R4      p\        P                  RVR V 4       W4^,           ,          p\        P                  RV4       V^ 8w  d   RV R2p\        V4      h \        W4^,           R  4      pYpP                  R&   T#   \         d    \        P                  '       d   R p L5h \        P                   d    R p LNi ; i)NrÎ   ziCCP profile name %rzCompression method %súUnknown compression method z in iCCP chunkÚicc_profile)rT   r   r¢   ÚfindrŠ   r‹   rk   rH   rD   ri   r?   r•   rë   )r\   rm   rn   r9   ÚiÚcomp_methodrG   r  s   &&&     r2   Ú
chunk_iCCPÚPngStream.chunk_iCCP±  sç   € à�w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆð �F‰F�5‹MˆÜ�‰Ð+¨Q¨r°¨UÔ3Ø˜A�•hˆÜ�‰Ð,¨kÔ:Ø˜!ÔØ/°¨}¸NÐKˆCÜ˜cÓ"Ð"ð	Ü/°°aµ%°'°
Ó;ˆKð '2�‰�]Ñ#Øˆøô ô 	Ü×.×.Ð.Ø"’àÜ�z‰zô 	ØŠKð	ús$   ÂB> Â> C=ÃC=Ã#C=Ã7C=Ã<C=c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   Í  ó!   € ÷ ñ ˜cð ¨3ð °5ñ r1   c                	óæ  € V P                   f   Q h\        P                  ! V P                   V4      pV^8  d&   \        P                  '       d   V# Rp\	        V4      h\        V^ 4      \        V^4      3V n         \        V^,          V^	,          3,          w  V n        V n	        V^,          '       d   ^V P                  R&   V^,          '       d   Rp\        V4      hV#   \         d     LIi ; i)NzTruncated IHDR chunkÚ	interlacezunknown filter category)rT   r   r¢   ri   rD   rg   rí   Ú_MODESrî   Ú
im_rawmodeÚKeyErrorrë   rk   ©r\   rm   rn   r9   rG   s   &&&  r2   Ú
chunk_IHDRÚPngStream.chunk_IHDRÍ  sÖ   € à�w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆØ�BŒ;Ü×.×.Ð.Ø�Ø(ˆCÜ˜S“/Ð!Ü˜1˜a“y¤# a¨£)Ð+ˆŒð	Ü,2°A°aµD¸!¸A½$°<Õ,@Ñ)ˆDŒL˜$œ/ð ˆR�5Œ5Ø()ˆD�L‰L˜Ñ%ØˆR�5Œ5Ø+ˆCÜ˜cÓ"Ð"Øˆøô ô 	Ùð	ús   Á<*C" Ã"C0Ã/C0c               ó$   € V ^8„  d   QhRRRRRR/# ©r8   rm   rL   rn   r;   r   r(   )r<   s   "r2   r=   rè   â  s!   € ÷ ñ ˜cð ¨3ð °8ñ r1   c                	ó^  € R V P                   9   d6   \        P                  ! RV P                   R ,          WP                  4      .pMOV P                  e   RV P                   R&   \        P                  ! R^ ^ .V P
                  O5WP                  4      .pW0n        W n        Rp\        V4      h)ÚbboxrÈ   TÚdefault_imagezimage data found)	rë   r   Ú_Tiler  rò   rí   rï   Úim_idatÚEOFError)r\   rm   rn   râ   rG   s   &&&  r2   Ú
chunk_IDATÚPngStream.chunk_IDATâ  sŠ   € à�T—\‘\Ô!Ü—O’O E¨4¯<©<¸Õ+?ÀÇoÁoÓVÐW‰Dà×ÑÒ+Ø04�—‘˜_Ñ-Ü—O’O E¨A¨qÐ+@°4·<±<Ñ+@À#ÇÁÓWÐXˆDØŒØŒØ ˆÜ�s‹mÐr1   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   ï  s!   € ÷ ñ ˜cð ¨3ð °8ñ r1   c                	ó   € R p\        V4      h)zend of PNG image)r"  )r\   rm   rn   rG   s   &&& r2   Ú
chunk_IENDÚPngStream.chunk_IENDï  s   € Ø ˆÜ�s‹mÐr1   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   ó  s!   € ÷ ñ ˜cð ¨3ð °5ñ r1   c                	óœ   € V P                   f   Q h\        P                  ! V P                   V4      pV P                  R8X  d
   RV3V n        V# )Nr    r   )rT   r   r¢   rî   rð   ©r\   rm   rn   r9   s   &&& r2   Ú
chunk_PLTEÚPngStream.chunk_PLTEó  sD   € à�w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆØ�<‰<˜3ÔØ# Q˜hˆDŒOØˆr1   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   û  ó!   € ÷ ñ ˜cð ¨3ð °5ñ r1   c                	ó  € V P                   f   Q h\        P                  ! V P                   V4      pV P                  R8X  dU   \        P                  V4      '       d)   VP                  R4      pV^ 8¼  d   W@P                  R&   V# W0P                  R&    V# V P                  R9   dß   Y P                  R8X  d   ^M^8  d&   \        P                  '       d   V# Rp\        V4      hV P                  R8X  d%   \        V4      '       d   ^ÿM^ V P                  R&   V# V P                  R9   d   \        V4      V P                  R&   V# V P                  R8X  d0   \        V4      \        V^4      \        V^4      3V P                  R&   V# )	Nr    rÎ   Útransparencyr   r   zTruncated tRNS chunk)r   r   r   r   )r   r   )rT   r   r¢   rî   Ú_simple_paletteÚmatchr  rë   ri   rD   Úi16)r\   rm   rn   r9   r  rG   s   &&&   r2   Ú
chunk_tRNSÚPngStream.chunk_tRNSû  sO  € à�w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆØ�<‰<˜3ÔÜ×$Ñ$ Q×'Ò'ð —F‘F˜5“M�Ø˜”6Ø34—L‘L Ñ0ð$ ˆð 01—‘˜^Ò,ð ˆð �\‰\Ð6Ô6àŸl™l¨eÔ3™¸Ô;Ü×2×2Ð2Ø�HØ,�Ü  “oÐ%Ø�|‰|˜sÔ"Ü69¸!·f²f©sÀ!�—‘˜^Ñ,ð
 ˆð	 —‘ Ô.Ü/2°1«v�—‘˜^Ñ,ð ˆð —‘ Ô&Ü/2°1«v´s¸1¸a³yÄ#ÀaÈÃ)Ð/K�—‘˜^Ñ,Øˆr1   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè     s!   € ÷ 
ñ 
˜cð 
¨3ð 
°5ñ 
r1   c                	óþ   € V P                   f   Q h\        P                  ! V P                   V4      pV^8  d&   \        P                  '       d   V# Rp\	        V4      h\        V4      R,          V P                  R&   V# )NzTruncated gAMA chunkç     jø@Úgamma©rT   r   r¢   ri   rD   rg   rë   r  s   &&&  r2   Ú
chunk_gAMAÚPngStream.chunk_gAMA  sk   € à�w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆØ�AŒ:Ü×.×.Ð.Ø�Ø(ˆCÜ˜S“/Ð!Ü # A£¨Õ 1ˆ�‰�WÑØˆr1   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   %  s!   € ÷ ñ ˜cð ¨3ð °5ñ r1   c                	ón  € V P                   f   Q h\        P                  ! V P                   V4      pV^ 8  d&   \        P                  '       d   V# Rp\	        V4      h\
        P                  ! RVR,          4      p\        ;QJ d    . R V 4       F  NK  	  5M! R V 4       4      V P                  R&   V# )NzTruncated cHRM chunkz>8I:Né    Nc              3  ó2   "  € T F  qR ,          x € K  	  R# 5i)r9  Nr(   )Ú.0Úelts   & r2   Ú	<genexpr>Ú'PngStream.chunk_cHRM.<locals>.<genexpr>1  s   é € Ð,PÁxÀ°8¯^ª^Ãxùs   ‚Úchromaticity)	rT   r   r¢   ri   rD   r”   ÚunpackÚtuplerë   )r\   rm   rn   r9   rG   Úraw_valss   &&&   r2   Ú
chunk_cHRMÚPngStream.chunk_cHRM%  s‘   € ð �w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆØ�BŒ;Ü×.×.Ð.Ø�Ø(ˆCÜ˜S“/Ð!Ü—=’= ¨¨#­Ó/ˆß',¤uÑ,PÁxÓ,P§u¡uÑ,PÁxÓ,PÓ'Pˆ�‰�^Ñ$Øˆr1   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   4  s!   € ÷ ñ ˜cð ¨3ð °5ñ r1   c                	óì   € V P                   f   Q h\        P                  ! V P                   V4      pV^8  d&   \        P                  '       d   V# Rp\	        V4      hV^ ,          V P
                  R&   V# )NzTruncated sRGB chunkÚsrgb)rT   r   r¢   ri   rD   rë   r  s   &&&  r2   Ú
chunk_sRGBÚPngStream.chunk_sRGB4  sh   € ð �w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆØ�AŒ:Ü×.×.Ð.Ø�Ø(ˆCÜ˜S“/Ð!Ø  �tˆ�‰�VÑØˆr1   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   E  s!   € ÷ ñ ˜cð ¨3ð °5ñ r1   c                	ó€  € V P                   f   Q h\        P                  ! V P                   V4      pV^	8  d&   \        P                  '       d   V# Rp\	        V4      h\        V^ 4      \        V^4      reV^,          pV^8X  d#   VR,          VR,          3pW€P                  R&   V# V^ 8X  d   WV3V P                  R&   V# )NzTruncated pHYs chunkç¦
F%uš?ÚdpiÚaspectr;  )	r\   rm   rn   r9   rG   ÚpxÚpyÚunitrT  s	   &&&      r2   Ú
chunk_pHYsÚPngStream.chunk_pHYsE  sµ   € à�w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆØ�AŒ:Ü×.×.Ð.Ø�Ø(ˆCÜ˜S“/Ð!Ü�Q˜“œC  1›IˆBØ��tˆØ�1Œ9Ø�v•+˜r F�{Ð*ˆCØ"%�L‰L˜Ñð ˆð �QŒYØ%' VˆD�L‰L˜Ñ"Øˆr1   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   W  s!   € ÷ ñ ˜cð ¨3ð °5ñ r1   c                	ó”  € V P                   f   Q h\        P                  ! V P                   V4      p VP                  R^4      w  rEV'       de   VP                  RR4      pVP                  RR4      pVR8X  d   TMTV P                  V&   WpP                  V&   V P                  \        V4      4       V#   \         d    TpRp Li ; i)NrÎ   r1   rÊ   rË   Úreplaces   exif)
rT   r   r¢   ÚsplitrD   r�   rë   rì   rü   Úlen)r\   rm   rn   r9   ÚkÚvÚk_strÚv_strs   &&&     r2   Ú
chunk_tEXtÚPngStream.chunk_tEXtW  s¸   € à�w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆð	Ø—7‘7˜5 !Ó$‰DˆA÷
 Ø—H‘H˜Y¨Ó1ˆEØ—H‘H˜Y¨	Ó2ˆEà'(¨G¤|¡!¸ˆD�L‰L˜ÑØ"'�L‰L˜ÑØ×"Ñ"¤3 u£:Ô.àˆøô ô 	àˆAØŠAð	ús   ³B5 Â5CÃCc               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   k  s!   € ÷ !ñ !˜cð !¨3ð !°5ñ !r1   c                	ó†  € V P                   f   Q h\        P                  ! V P                   V4      p VP                  R^4      w  rEV'       d   V^ ,          pM^ pV^ 8w  d   RV R2p\        V4      h \        VR,          4      pT'       d]   TP                  RR4      pTP                  RR4      p	T	;T P                  T&   T P                  T&   T P                  \        T	4      4       T#   \         d    TpRp L¶i ; i  \         d    \        P                  '       d   Rp L h \        P                   d    Rp L¹i ; i)	NrÎ   r1   r
  z in zTXt chunk:é   NNrÊ   rË   r]  )rT   r   r¢   r^  rD   rk   rH   ri   r?   r•   r�   rë   rì   rü   r_  )
r\   rm   rn   r9   r`  ra  r  rG   rb  rc  s
   &&&       r2   Ú
chunk_zTXtÚPngStream.chunk_zTXtk  s.  € à�w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆð	Ø—7‘7˜5 !Ó$‰DˆA÷ Ø˜A�$‰KàˆKØ˜!ÔØ/°¨}¸NÐKˆCÜ˜cÓ"Ð"ð	Ü% a¨¥eÓ,ˆA÷ Ø—H‘H˜Y¨Ó1ˆEØ—H‘H˜Y¨	Ó2ˆEà8=Ð=ˆD�L‰L˜Ñ $§,¡,¨uÑ"5Ø×"Ñ"¤3 u£:Ô.àˆøô7 ô 	ØˆAØŠAð	ûô ô 	Ü×.×.Ð.Ø’àÜ�z‰zô 	ØŠAð	ús5   ³C, Á4D Ã,C>Ã=C>Ä E Ä"E Ä&E Ä:E Ä?E c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   Ž  s!   € ÷ )ñ )˜cð )¨3ð )°5ñ )r1   c                	óˆ  € V P                   f   Q h\        P                  ! V P                   V4      ;r4 VP                  R^4      w  rS\        T4      ^8  d   T# T^ ,          T^,          TR,          r7p TP                  R^4      w  r‰p
T^ 8w  d   T^ 8X  d    \        T
4      p
MT# TR8X  d   Y P                  R&    TP                  RR4      pTP                  RR4      pT	P                  RR4      pT
P                  RR4      p\        YìT4      ;T P                  T&   T P                  T&   T P                  \        T4      4       T#   \         d    Tu # i ; i  \         d    Tu # i ; i  \         d    \        P                  '       d   Tu # h \        P                   d    Tu # i ; i  \         d    Tu # i ; i)NrÎ   :r8   NNs   XML:com.adobe.xmpÚxmprÊ   rË   rÌ   )rT   r   r¢   r^  rD   r_  rH   ri   r?   r•   rë   r�   rÚ   r¨   rì   rü   )r\   rm   rn   Úrr9   r`  ÚcfÚcmr©   Útkra  rb  Úlang_strÚtk_strrc  s   &&&            r2   Ú
chunk_iTXtÚPngStream.chunk_iTXtŽ  s¶  € à�w‰wÒ"Ð"Ð"Ü×$Ò$ T§W¡W¨fÓ5Ð5ˆð	Ø—7‘7˜5 !Ó$‰DˆAô ˆq‹6�AŒ:ØˆHØ�a•D˜!˜A�$  "¥�ˆð	ØŸ'™' %¨Ó+‰KˆD�að �Œ7Ø�QŒwðÜ-¨aÓ0‘Að �ØÐ$Ô$Ø"#�L‰L˜Ñð	Ø—H‘H˜Y¨Ó1ˆEØ—{‘{ 7¨HÓ5ˆHØ—Y‘Y˜w¨Ó1ˆFØ—H‘H˜W hÓ/ˆEô 59¸È&Ó4QÐQˆ�‰�UÑ˜dŸl™l¨5Ñ1Ø×Ñœs 5›zÔ*àˆøôG ô 	ØŠHð	ûô ô 	ØŠHð	ûô "ô Ü ×6×6Ð6Ø šàÜ—z‘zô Ø’Hðûô ô 	ØŠHð	úsZ   ´E	 Á5E ÂE/ Â=AF1 Å	EÅEÅE,Å+E,Å/ F.ÆF.ÆF.Æ(F.Æ-F.Æ1GÇ Gc               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   ¹  s!   € ÷ ñ ˜cð ¨3ð °5ñ r1   c                	ó”   € V P                   f   Q h\        P                  ! V P                   V4      pRV,           V P                  R&   V# )Nó   Exif  Úexif)rT   r   r¢   rë   r+  s   &&& r2   Ú
chunk_eXIfÚPngStream.chunk_eXIf¹  s@   € Ø�w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆØ.°Õ2ˆ�‰�VÑØˆr1   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   À  r  r1   c                	óÈ  € V P                   f   Q h\        P                  ! V P                   V4      pV^8  d&   \        P                  '       d   V# Rp\	        V4      hV P
                  e    R V n        \        P                  ! R4       V# \        V4      pV^ 8X  g   VR8”  d   \        P                  ! R4       V# WPn        \        V^4      V P                  R&   RV n
        V# )Nz"APNG contains truncated acTL chunkz4Invalid APNG, will use default PNG image if possiblel        Úloopz
image/apng)rT   r   r¢   ri   rD   rò   ÚwarningsÚwarnrg   rë   rñ   )r\   rm   rn   r9   rG   Ún_framess   &&&   r2   Ú
chunk_acTLÚPngStream.chunk_acTLÀ  sÅ   € Ø�w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆØ�AŒ:Ü×.×.Ð.Ø�Ø6ˆCÜ˜S“/Ð!Ø×ÑÒ'Ø#ˆDÔÜ�MŠMÐPÔQØˆHÜ�q“6ˆØ�qŒ=˜H zÔ1Ü�MŠMÐPÔQØˆHØ#ÔÜ" 1 a›yˆ�‰�VÑØ".ˆÔØˆr1   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   Õ  r/  r1   c                	ój  € V P                   f   Q h\        P                  ! V P                   V4      pV^8  d&   \        P                  '       d   V# Rp\	        V4      h\        V4      pV P                  f   V^ 8w  g'   V P                  e&   V P                  V^,
          8w  d   Rp\        V4      hWPn        \        V^4      \        V^4      rv\        V^4      \        V^4      r˜V P                  w  r«W†,           V
8”  g   W—,           V8”  d   Rp\        V4      hW‰W†,           W—,           3V P                  R&   \        V^4      \        V^4      rÜV^ 8X  d   ^dp\        V4      \        V4      ,          R,          V P                  R&   V^,          V P                  R&   V^,          V P                  R&   V# )	Nz"APNG contains truncated fcTL chunkú#APNG contains frame sequence errorszAPNG contains invalid framesr  éè  ÚdurationÚdisposalÚblend)rT   r   r¢   ri   rD   rg   ró   rk   rí   rë   r4  Úfloat)r\   rm   rn   r9   rG   ÚseqÚwidthÚheightrV  rW  Úim_wÚim_hÚ	delay_numÚ	delay_dens   &&&           r2   Ú
chunk_fcTLÚPngStream.chunk_fcTLÕ  sm  € Ø�w‰wÒ"Ð"Ð"Ü× Ò  §¡¨&Ó1ˆØ�BŒ;Ü×.×.Ð.Ø�Ø6ˆCÜ˜S“/Ð!Ü�!‹fˆØ�M‰MÒ! c¨Q¤hØ�M‰MÒ%¨$¯-©-¸3À½7Ô*Bà7ˆCÜ˜cÓ"Ð"ØŒÜ˜A˜q›	¤3 q¨!£9ˆvÜ�Q˜“œS  B›ZˆBØ—\‘\‰
ˆØ�:˜Ô ¥¨dÔ 2Ø0ˆCÜ˜cÓ"Ð"Ø "¨­
°BµKÐ@ˆ�‰�VÑÜ" 1 b›z¬3¨q°"«:�9Ø˜Œ>ØˆIÜ#(¨Ó#3´e¸IÓ6FÕ#FÈÕ#Mˆ�‰�ZÑ Ø#$ R¥5ˆ�‰�ZÑ Ø ! "¥ˆ�‰�WÑØˆr1   c               ó$   € V ^8„  d   QhRRRRRR/# r  r(   )r<   s   "r2   r=   rè   ó  s!   € ÷ 4ñ 4˜cð 4¨3ð 4°5ñ 4r1   c                	óª  € V P                   f   Q hV^8  dG   \        P                  '       d$   \        P                  ! V P                   V4      pV# Rp\	        V4      h\        P                  ! V P                   ^4      p\        V4      pV P                  V^,
          8w  d   Rp\        V4      hWPn        V P                  V^,           V^,
          4      # )Nz"APNG contains truncated fDAT chunkr†  )	rT   r   ri   r¢   rD   rg   ró   rk   r#  )r\   rm   rn   r9   rG   rŒ  s   &&&   r2   Ú
chunk_fdATÚPngStream.chunk_fdATó  s¬   € Ø�w‰wÒ"Ð"Ð"Ø�AŒ:Ü×.×.Ð.Ü×(Ò(¨¯©°&Ó9�Ø�Ø6ˆCÜ˜S“/Ð!Ü× Ò  §¡¨!Ó,ˆÜ�!‹fˆØ�=‰=˜C !�GÔ#Ø7ˆCÜ˜cÓ"Ð"ØŒØ�‰˜s Q�w¨°­
Ó3Ð3r1   )ró   rñ   r!  rë   rî   rò   rð   r  rí   rì   rï   rô   rõ   )r)   r*   r+   r,   r]   rü   r  r  r  r  r#  r'  r,  r5  r<  rJ  rO  rY  rd  ri  rt  rz  r‚  r“  r—  r0   Ú__classcell__©rö   s   @r2   ræ   ræ   Š  sx   ø† ÷ð õ""õ
õ2õ
õ8õ*õõõõ<
õõõ"õ$õ(!õF)õVõõ*÷<4ó 4r1   ræ   c               ó    € V ^8„  d   QhRRRR/# )r8   Úprefixr:   r;   rÀ   r(   )r<   s   "r2   r=   r=     s   € ÷ %ñ %�Eð %˜dñ %r1   c                ó,   € V P                  \        4      # rY   )Ú
startswithÚ_MAGIC)rœ  s   &r2   Ú_acceptr     s   € Ø×ÑœVÓ$Ð$r1   c                  óÂ   a € ] tR tRtRtRtR R lt]R R l4       tR V 3R	 llt	R
 R lt
RR R lltR R ltR R ltR R ltR R ltR R ltR V 3R lltRtV ;t# )ÚPngImageFilei  ÚPNGzPortable network graphicsc               ó   € V ^8„  d   QhRR/# r}   r(   )r<   s   "r2   r=   ÚPngImageFile.__annotate__  s   € ÷ B-ñ B-�tñ B-r1   c                	óÂ  € V P                   f   Q h\        V P                   P                  ^4      4      '       g   Rp\        V4      hV P                   V n        ^ V n        . V n        \        V P                   4      V n         V P                  P                  4       w  r#p V P                  P                  W#V4      pT P                  P%                  Y%4       KX    \         d     M�\         du    \        P                  RY#T4       \        P                  ! T P                   T4      pTR,          P!                  4       '       d   T P                  P#                  Y%34        L§i ; iT P                  P&                  T n        T P                  P*                  T n        T P                  P.                  T n        R T n        T P                  P4                  T n        T P                  P8                  T n        T P                  P<                  ;'       g    ^T n        T P0                  PA                  RR4      T n!        T P                  PD                  '       d4   T P                  PD                  w  rg\F        PH                  ! Yg4      T n%        TR8X  d   T^,
          T n&        MY@n&        T P                  P<                  eŽ   RT n'        T P                  PQ                  4        T PL                  T n)        T P                  PU                  4       T n+        T PB                  '       d   T ;P>                  ^,          un        T PY                  ^ 4       T P>                  ^8„  T n-        R # )Nznot a PNG fileú%r %s %s (unknown)ºrh  r8   Nr  Fó   fdAT).rT   r   re   rk   Ú_fpÚ_PngImageFile__frameÚprivate_chunksræ   ÚpngrŽ   r"  ÚAttributeErrorrŠ   r‹   r   r¢   Úislowerr‚   r™   rî   Ú_moderí   Ú_sizerë   rá   Ú_textrï   râ   rñ   Úcustom_mimetyperò   r�  Úgetr  rð   r   ÚrawÚpaletteÚ_PngImageFile__prepare_idatÚ!_close_exclusive_fp_after_loadingr  Ú_PngImageFile__rewind_idatrf   Ú_PngImageFile__rewindÚ_seekÚis_animated)r\   rG   rl   rm   rn   r9   ÚrawmoderJ   s   &       r2   Ú_openÚPngImageFile._open  sp  € Ø�w‰wÒ"Ð"Ð"Ü�t—w‘w—|‘| A“×'Ò'Ø"ˆCÜ˜cÓ"Ð"Ø—7‘7ˆŒØˆŒð
 VXˆÔÜ%.¨t¯w©wÓ%7ˆŒàð  $Ÿx™xŸ}™}›ÑˆC�fð9Ø—H‘H—M‘M #¨FÓ3�ð �H‰H�L‰L˜Ö øô ô ÙÜ!ô 9Ü—‘Ð1°3¸VÔDÜ×(Ò(¨¯©°&Ó9�Ø�s•8×#Ñ#×%Ò%Ø×'Ñ'×.Ñ.°¨xÔ8ùð	9úð —X‘X×%Ñ%ˆŒ
Ø—X‘X×%Ñ%ˆŒ
Ø—H‘H×$Ñ$ˆŒ	Ø37ˆŒ
Ø—H‘H×$Ñ$ˆŒ	Ø#Ÿx™x×:Ñ:ˆÔØŸ™×,Ñ,×1Ð1°ˆŒØ!ŸY™YŸ]™]¨?¸EÓBˆÔà�8‰8××ÐØ ŸH™H×/Ñ/‰MˆGÜ'×+Ò+¨GÓ:ˆDŒLà�'Œ>Ø"(¨1¥*ˆDÕà"(Ôà�8‰8×ÑÒ+Ø5:ˆDÔ2Ø�H‰H× Ñ Ô"Ø!%×!4Ñ!4ˆDÔØ ŸH™HŸM™M›OˆDŒMØ×!×!Ð!à—’ Õ"•Ø�J‰J�qŒMØŸ=™=¨1Ñ,ˆÖs   Â C ÃE$Ã&E$Ã/A2E$Å#E$c               ó   € V ^8„  d   QhRR/# )r8   r;   zdict[str, str | iTXt]r(   )r<   s   "r2   r=   r¥  Y  s   € ÷ ñ Ð+ñ r1   c                	ó<  € V P                   ft   V P                  '       d/   V P                  pV P                  V P                  ^,
          4       V P                  4        V P                  '       d   V P                  X4       V P                   f   Q hV P                   # rY   )r²  r¼  r«  rd   r�  Úload)r\   Úframes   & r2   r¬   ÚPngImageFile.textX  su   € ð �:‰:Òð ××ÐØŸ™�à—	‘	˜$Ÿ-™-¨!Õ+Ô,Ø�I‰IŒKØ××ÐØ—	‘	˜%Ô Ø�z‰zÒ%Ð%Ð%Ø�z‰zÐr1   c               ó   € V ^8„  d   QhRR/# r}   r(   )r<   s   "r2   r=   r¥  h  s   € ÷ ñ ˜ñ r1   c                óV  <€ V P                   f   Rp\        V4      hV P                   P                  V P                  ^ ,          ^,          ^,
          4       V P                  f   Q hV P                  P                  4        V P                  P                  4        \        SV `  4        R# )zVerify PNG fileNz)verify must be called directly after open)rT   ÚRuntimeErrorrd   râ   r­  r¤   ry   rê   )r\   rG   rö   s   & €r2   r¤   ÚPngImageFile.verifyh  sw   ø€ ð �7‰7Š?Ø=ˆCÜ˜sÓ#Ð#ð 	�‰�‰�T—Y‘Y˜q•\ !•_ qÕ(Ô)à�x‰xÒ#Ð#Ð#Ø�‰�‰ÔØ�‰�‰Ôä‰‰Ör1   c               ó    € V ^8„  d   QhRRRR/# )r8   rÃ  rL   r;   rV   r(   )r<   s   "r2   r=   r¥  x  s   € ÷ 'ñ '˜#ð ' $ñ 'r1   c                	ór  € V P                  V4      '       g   R # WP                  8  d   V P                  ^ R4       V P                  p \        V P                  ^,           V^,           4       F  pV P                  V4       K  	  R #   \         d%   pT P                  T4       Rp\	        T4      ThR p?ii ; i)NTzno more images in APNG file)Ú_seek_checkr«  r»  Úranger"  rd   )r\   rÃ  Ú
last_frameÚfr˜   rG   s   &&    r2   rd   ÚPngImageFile.seekx  s’   € Ø×Ñ ×&Ò&ÙØ—<‘<ÔØ�J‰J�q˜$Ôà—\‘\ˆ
ð	'Ü˜4Ÿ<™<¨!Õ+¨U°Q­YÖ7�Ø—
‘
˜1–ó 8øäô 	'Ø�I‰I�jÔ!Ø/ˆCÜ˜3“- QÐ&ûð	'ús   Á	<B ÂB6ÂB1Â1B6c               ó$   € V ^8„  d   QhRRRRRR/# )r8   rÃ  rL   r  rÀ   r;   rV   r(   )r<   s   "r2   r=   r¥  ‡  s&   € ÷ _5ñ _5˜3ð _5¨ð _5¸ñ _5r1   c                	óÜ
  € V P                   f   Q h\        V P                  \        4      '       d   V P                  P                  hR pV^ 8X  Ed3   V'       dŸ   V P                  P                  V P                  4       V P                   P                  4        V P                  V n	        R V n
        V P                   P                  V n        V P                   P                  V n        V P                  V n        R V n        V P                  P#                  RR4      V n        V P                  P#                  R4      V n        V P                  P#                  R4      V n        V P                  P#                  R4      p^ V n        EM0WP*                  ^,           8w  d   RV 2p\-        V4      hV P&                  \.        P0                  8X  dI   V P2                  w  rVrx\4        P6                  P9                  V P:                  Wu,
          W†,
          34      p	MdV P&                  \.        P<                  8X  dD   V P                   e6   V P?                  V P                   PA                  4       V P2                  4      p	MR p	V PC                  4        V	'       d&   V PD                  PG                  W�P2                  4       V PD                  PA                  4       V n        V P                  V n        V P                  '       d3   \H        PJ                  ! V P                  V P                  4       ^ V n	        Rp
 V P                  PM                  ^4        V P                   PM                  4       w  r¼pTR8X  d   R	p\U        T4      hTR
8X  d   T
'       d   Rp\S        T4      hRp
 T P                   PW                  Y¼T4       K‹  V'       d   W0n        V P                   f9   V P&                  \.        P<                  8X  d   \.        P0                  V n        R # R # R #   \N        PP                  \R        3 d     Mªi ; i  \X         d     M™\T         dG    TR8X  d   T^,          pT
'       d	   YÐn	         Mo\H        PJ                  ! T P                  T4        EK^  \Z         d>    \\        P_                  RY¼T4       \H        PJ                  ! T P                  T4        EK¤  i ; iYn        T P                   P                  T n        T P                  P#                  R4      T n        T P                  P#                  R4      T n        T P                  P#                  R4      pT P                  '       d   EK®  Rp\U        T4      h)Nr  Fr‰  rŠ  r  zcannot seek to frame Tr¦   zNo more images in APNG fileó   fcTLzAPNG missing frame datar©  r§  zimage not found in APNG frame)0r­  rÐ   rª  r   Úexrd   rº  r  r¹  r·  Ú_imrë   rá   rï   râ   rT   Ú_prev_imr´  r  Ú
dispose_opÚblend_opr«  rD   r'   r.   Údispose_extentr	   ÚcoreÚfillÚmoder/   Ú_cropr   rÂ  ÚimÚpaster   r¢   re   r”   r•   rk   r"  rŽ   ÚUnicodeDecodeErrorr®  rŠ   r‹   )r\   rÃ  r  rØ  rG   Úx0Úy0Úx1Úy1ÚdisposeÚframe_startrl   rm   rn   s   &&&           r2   r»  ÚPngImageFile._seek‡  sß  € Ø�x‰xÒ#Ð#Ð#Ü�d—h‘h¤×.Ò.Ø—(‘(—+‘+ÐàˆØ�A�:ßØ—‘—‘˜dŸm™mÔ,Ø—‘—‘Ô!Ø&*×&8Ñ&8�Ô#Ø�”Ø ŸH™H×,Ñ,�”	Ø ŸH™H×,Ñ,�”	ØŸ(™(�”Ø9=ˆDŒMØ!%§¡§¡¨ÀÓ!FˆDÔØ"Ÿi™iŸm™m¨JÓ7ˆDŒOØ ŸI™IŸM™M¨'Ó2ˆDŒMØ!ŸY™YŸ]™]¨6Ó2ˆNØˆDŽLàŸ™ qÕ(Ô(Ø-¨e¨WÐ5�Ü  “oÐ%à�‰¤(×"8Ñ"8Ô8Ø!%×!4Ñ!4‘�˜ÜŸ*™*Ÿ/™/¨$¯)©)°bµg¸r½wÐ5GÓH‘Ø—‘¤H×$8Ñ$8Ô8¸T¿]¹]Ò=VØŸ*™* T§]¡]×%7Ñ%7Ó%9¸4×;NÑ;NÓO‘à�ð �I‰IŒKçØ—‘—‘˜g×':Ñ':Ô;Ø ŸG™GŸL™L›NˆDŒMà—h‘hˆDŒGð ×"×"Ð"Ü×$Ò$ T§W¡W¨d×.AÑ.AÔBØ&'�Ô#ØˆKØØ—‘—‘˜Q”ðØ'+§x¡x§}¡}£Ñ$�C˜fð ˜'”>Ø7�CÜ" 3›-Ð'Ø˜'”>ß"à7˜Ü)¨#Ó.Ð.Ø"&�Kð:Ø—H‘H—M‘M #¨FÖ3÷. ØESÔð �=‰=Ò  T§_¡_¼×8LÑ8LÔ%LÜ&×4Ñ4ˆDŽOñ &MÑ øôS Ÿ™¤kÐ2ô Ùðûô *ô ÙÜô :Ø˜g”~Ø !�˜ß&Ø28Ô/Ù!Ü×(Ò(¨¯©°&×9Ð9Ü%ô :Ü—L‘LÐ!5°sÀÔHÜ×(Ò(¨¯©°&×9Ð9ð:úð !ŒLØŸ™×(Ñ(ˆDŒIØ"Ÿi™iŸm™m¨JÓ7ˆDŒOØ ŸI™IŸM™M¨'Ó2ˆDŒMØ!ŸY™YŸ]™]¨6Ó2ˆNà—9—9“9Ø5�Ü˜s“mÐ#sH   ÍP	 ÎP* Ð	P'Ð&P'Ð*SÐ7SÑ SÑSÑ!!SÒSÒ9SÓSc               ó   € V ^8„  d   QhRR/# )r8   r;   rL   r(   )r<   s   "r2   r=   r¥  è  s   € ÷ ñ �cñ r1   c                	ó   € V P                   # rY   )r«  rr   s   &r2   rf   ÚPngImageFile.tellè  s   € Ø�|‰|Ðr1   c               ó   € V ^8„  d   QhRR/# r}   r(   )r<   s   "r2   r=   r¥  ë  s   € ÷ /ñ /˜dñ /r1   c                óØ   € V P                   P                  R4      '       d   V P                  R,           V n        V P                  V n        \
        P
                  P                  V 4       R# )z"internal: prepare to read PNG filer  N)rh  )rá   r´  Údecoderconfigr·  Ú_PngImageFile__idatr   Úload_preparerr   s   &r2   rî  ÚPngImageFile.load_prepareë  sK   € ð �9‰9�=‰=˜×%Ò%Ø!%×!3Ñ!3°dÕ!:ˆDÔà×)Ñ)ˆŒÜ×Ñ×(Ñ(¨Ö.r1   c               ó    € V ^8„  d   QhRRRR/# )r8   Ú
read_bytesrL   r;   r:   r(   )r<   s   "r2   r=   r¥  ô  s   € ÷ !(ñ !( Cð !(¨Eñ !(r1   c                óp  € V P                   f   Q hV P                  f   Q hV P                  ^ 8X  dš   V P                  P                  ^4       V P                   P                  4       w  r#pVR9  d   V P                   P	                  W#V4       R# VR8X  d.    V P                   P                  W#V4       V^,
          V n        K¢  W@n        Kª  V^ 8:  d   V P                  pM\        WP                  4      pV P                  V,
          V n        V P                  P                  V4      #   \         d     L�i ; i)zinternal: read more image datar©  r1   )ó   IDATs   DDATr©  )r­  rT   rí  re   r„   rŽ   r"  Úmin)r\   rñ  rl   rm   rn   s   &&   r2   Ú	load_readÚPngImageFile.load_readô  sú   € ð �x‰xÒ#Ð#Ð#Ø�w‰wÒ"Ð"Ð"Ø�k‰k˜QÔð �G‰G�L‰L˜ŒOà#Ÿx™xŸ}™}›ÑˆC�fàÐ5Ô5Ø—‘—‘˜c¨Ô/Ùà�gŒ~ðØ—H‘H—M‘M #¨FÔ3ð % q�j�–à$–ð ˜Œ?ØŸ™‰Jä˜Z¯©Ó5ˆJà—k‘k JÕ.ˆŒà�w‰w�|‰|˜JÓ'Ð'øô  ô Ùðús   ÂD' Ä'D5Ä4D5c               ó   € V ^8„  d   QhRR/# r}   r(   )r<   s   "r2   r=   r¥    s   € ÷ =(ñ =(˜$ñ =(r1   c                óî  € V P                   f   Q hV P                  f   Q hV P                  ^ 8w  d&   V P                  P                  V P                  4        V P                  P                  ^4        V P                   P                  4       w  rpTR8X  d   M\TR8X  d7   T P                  '       d%   ^ T n        T P                   P                  YT4       M T P                   P                  YT4       Kž  T P                   P.                  T n        T P                  '       g$   T P                   P3                  4        RT n         R# T P4                  '       Edq   T P6                  \8        P:                  8X  EdO   T P=                  T P>                  T P@                  4      pT P>                  PB                  R8X  d6   R	T PD                  9   d%   TPG                  R
T PD                  R	,          4      pMŸT P>                  PB                  R8X  dt   R	T PD                  9   dc   T PD                  R	,          p\I        T\J        4      '       d   TPM                  T4       M'\I        T\N        4      '       d   TPQ                  T4       TPS                  R
4      pT P4                  PU                  Y`P@                  T4       T P4                  T n        R# R# R#   \        P
                  \        3 d     EKô  i ; i  \         d     EK  \         dk    TR8X  d
   T^,          p \        P                  ! T P                  T4        EKå    \         d&   p\        P                   '       d	    Rp? EKp  ThRp?ii ; i\"         d|    \$        P'                  RYT4       \        P                  ! T P                  T4      pTR,          P)                  4       '       d"   T P*                  P-                  YR34        EK˜   EKœ  i ; i)z%internal: finished reading image dataNTr¦   rÒ  r©  r§  r¨  r   r1  r%   r    )+r­  rT   rí  re   r”   r•   rk   r¼  r·  r„   rŽ   rß  r"  r   r¢   r¡   ri   r®  rŠ   r‹   r¯  r¬  r‚   rì   r²  ry   rÕ  r×  r4   r6   rÜ  rÝ  rØ  rÛ  rá   Úconvert_transparentrÐ   r:   ÚputpalettealphasrL   ÚputpalettealphaÚconvertrÞ  )	r\   rl   rm   rn   r˜   r9   ÚupdatedÚmaskÚts	   &        r2   Úload_endÚPngImageFile.load_end  sç  € à�x‰xÒ#Ð#Ð#Ø�w‰wÒ"Ð"Ð"Ø�;‰;˜!ÔØ�G‰G�L‰L˜Ÿ™Ô%ØØ�G‰G�L‰L˜ŒOðØ#'§8¡8§=¡=£?Ñ �˜&ð �gŒ~ØØ˜” D×$4×$4Ð$4à&'�Ô#Ø—‘—‘˜c¨Ô/Øð?Ø—‘—‘˜c¨Ö/ð$ —X‘X×%Ñ%ˆŒ
Ø××ÐØ�H‰H�N‰NÔØˆDŽHà�}�}‰} §¡´%·-±-Õ!?ØŸ*™* T§W¡W¨d×.AÑ.AÓB�Ø—7‘7—<‘< 5Ô(¨^¸t¿y¹yÔ-HØ"×6Ñ6Ø §	¡	¨.Õ 9ó‘Dð —w‘w—|‘| sÔ*¨~ÀÇÁÔ/JØ ŸI™I nÕ5˜Ü% a¬×/Ò/Ø#×4Ñ4°QÕ7Ü'¨¬3×/Ò/Ø#×3Ñ3°AÔ6Ø"Ÿ?™?¨6Ó2�DØ—‘×#Ñ# G×-@Ñ-@À$ÔGØŸ-™-�–ñ "@‰}øôG —L‘L¤+Ð.ô Ûðûô &ô ÛÜô 	 Ø˜'”>Ø˜a•K�Fð Ü×(Ò(¨¯©°&×9Ð9øÜô  Ü ×6×6Ð6ßà˜ûð	 úô
 "ô ?Ü—‘Ð1°3¸VÔDÜ×(Ò(¨¯©°&Ó9�Ø�s•8×#Ñ#×%Ò%Ø×'Ñ'×.Ñ.°¸¨~×>Ð>ó &ð?úsa   Á4K
 ÃK- Ë
K*Ë)K*Ë-O4Ë<O4ÌO4Ì!L<Ì<M,ÍM'ÍO4Í%M'Í'M,Í,O4Í8A3O4Ï3O4c               ó   € V ^8„  d   QhRR/# )r8   r;   zdict[int, Any] | Noner(   )r<   s   "r2   r=   r¥  V  s   € ÷ 1ñ 1Ð/ñ 1r1   c                	óÈ   € R V P                   9  d   V P                  4        R V P                   9  d   RV P                   9  d   R# V P                  4       P                  4       # )ry  zRaw profile type exifN)rá   rÂ  ÚgetexifÚ_get_merged_dictrr   s   &r2   Ú_getexifÚPngImageFile._getexifV  sG   € Ø˜Ÿ™Ô"Ø�I‰IŒKØ˜Ÿ™Ô"Ð'>ÀdÇiÁiÔ'OÙØ�|‰|‹~×.Ñ.Ó0Ð0r1   c               ó   € V ^8„  d   QhRR/# )r8   r;   z
Image.Exifr(   )r<   s   "r2   r=   r¥  ]  s   € ÷ !ñ !˜ñ !r1   c                	ób   <€ R V P                   9  d   V P                  4        \        SV `  4       # )ry  )rá   rÂ  rê   r  )r\   rö   s   &€r2   r  ÚPngImageFile.getexif]  s%   ø€ Ø˜Ÿ™Ô"Ø�I‰IŒKä‰w‰Ó Ð r1   )Ú__frameÚ__idatÚ__prepare_idatÚ__rewindÚ__rewind_idatr¸  rª  rÔ  r°  rÕ  r±  r²  r×  r³  rì  r  rØ  rÖ  rT   rÝ  rá   r¼  r�  r¶  r­  r¬  râ   rÝ   )r)   r*   r+   r,   r<   Úformat_descriptionr¾  Úpropertyr¬   r¤   rd   r»  rf   rî  rõ  r   r  r  r0   r™  rš  s   @r2   r¢  r¢    sd   ø† Ø€FØ4ÐõB-ðH ôó ð÷ð õ '÷_5õBõ/õ!(õF=(õ~1÷!ö !r1   r¢  úL;1c               ó(   € V ^8„  d   QhRRRRRRRR/# ©r8   rT   rU   rl   r:   rJ   r;   rV   r(   )r<   s   "r2   r=   r=   z  s(   € ÷ ñ �ð  ð ¨uð ¸ñ r1   c                óü   € RP                  V4      pV P                  \        \        V4      4      V,           4       V P                  V4       \	        V\	        V4      4      pV P                  \        V4      4       R# )z'Write a PNG chunk (including CRC field)r1   N)ÚjoinÚwriteÚo32r_  rO   )rT   rl   rJ   Ú	byte_datar™   s   &&*  r2   Úputchunkr  z  sW   € ð —‘˜“€Ià‡H�HŒS”�Y“Ó  3Õ&Ô'Ø‡H�HˆYÔÜ
�œF 3›KÓ
(€CØ‡H�HŒS�‹XÖr1   c                  ó.   € ] tR tRtR R ltR R ltRtR# )Ú_idati…  c               ó$   € V ^8„  d   QhRRRRRR/# )r8   rT   rU   ÚchunkúCallable[..., None]r;   rV   r(   )r<   s   "r2   r=   Ú_idat.__annotate__ˆ  s"   € ÷ ñ ˜9ð Ð-@ð ÀTñ r1   c                	ó   € Wn         W n        R # rY   )rT   r  )r\   rT   r  s   &&&r2   r]   Ú_idat.__init__ˆ  s   € ØŒØŽ
r1   c               ó    € V ^8„  d   QhRRRR/# ©r8   rJ   r:   r;   rV   r(   )r<   s   "r2   r=   r   Œ  s   € ÷ +ñ +˜%ð + Dñ +r1   c                	ó@   € V P                  V P                  R V4       R# )ró  N©r  rT   ©r\   rJ   s   &&r2   r  Ú_idat.writeŒ  s   € Ø�
‰
�4—7‘7˜G TÖ*r1   r&  N©r)   r*   r+   r,   r]   r  r0   r(   r1   r2   r  r  …  s   † õ÷+ñ +r1   r  c                  ó.   € ] tR tRtR R ltR R ltRtR# )Ú_fdati�  c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r8   rT   rU   r  r  rã   rL   r;   rV   r(   )r<   s   "r2   r=   Ú_fdat.__annotate__“  s*   € ÷ ñ ˜9ð Ð-@ð È3ð ÐSWñ r1   c                	ó*   € Wn         W n        W0n        R # rY   )rT   r  rã   )r\   rT   r  rã   s   &&&&r2   r]   Ú_fdat.__init__“  s   € ØŒØŒ
ØŽr1   c               ó    € V ^8„  d   QhRRRR/# r$  r(   )r<   s   "r2   r=   r-  ˜  s   € ÷ ñ ˜%ð  Dñ r1   c                	óš   € V P                  V P                  R \        V P                  4      V4       V ;P                  ^,          un        R# )r©  N)r  rT   r  rã   r'  s   &&r2   r  Ú_fdat.write˜  s/   € Ø�
‰
�4—7‘7˜G¤S¨¯©Ó%6¸Ô=Ø�Š˜Õ�r1   )r  rT   rã   Nr)  r(   r1   r2   r+  r+  �  s   † õ÷
ñ r1   r+  c               ó$   € V ^8„  d   QhRRRRRR/# )r8   rÝ  úImage.ImageÚencoderinfoúdict[str, Any]r;   rV   r(   )r<   s   "r2   r=   r=   �  s!   € ÷ ñ ˜;ð °^ð Èñ r1   c                óœ   € VP                  R R4      VP                  RR4      VP                  RR4      VP                  RR4      3V n        R# )ÚoptimizeFÚcompress_levelÚcompress_typeÚ
dictionaryr1   Néÿÿÿÿ)r´  Úencoderconfig)rÝ  r5  s   &&r2   Ú_apply_encoderinfor>  �  sE   € à�‰˜
 EÓ*Ø�‰Ð(¨"Ó-Ø�‰˜¨Ó,Ø�‰˜ cÓ*ð	€BÖr1   c                  ó6   € ] tR tRt$ R]R&   R]R&   R]R&   RtR	# )
Ú_Framei¦  r4  rÝ  z tuple[int, int, int, int] | Noner  r6  r5  r(   Nrä   r(   r1   r2   r@  r@  ¦  s   ‡ ØƒOØ
*Ó*Ø×r1   r@  c               ó8   € V ^8„  d   QhRRRRRRRRR	RR
RRRRR/# )r8   rÝ  r4  rT   rU   r  r  rÛ  r­   r½  r  zImage.Image | NoneÚappend_imageszlist[Image.Image]r;   r(   )r<   s   "r2   r=   r=   ¬  sb   € ÷ Uñ UØðUàðUð ðUð ð	Uð
 ðUð &ðUð %ðUð ñUr1   c                óÄ  € V P                   P                  R 4      pV P                   P                  RV P                  P                  R^ 4      4      pV P                   P                  RV P                  P                  R\        P                  4      4      p	V P                   P                  RV P                  P                  R\
        P                  4      4      p
V'       d   \        P                  ! V4      pM\        P                  ! V .V4      p. p^ pV EFv  p\        P                  ! V4       EFW  pVP                  V8X  d   VP                  4       pMVP                  V4      pV P                   P                  4       p\        V\        \         34      '       d   W},          VR &   M+Vf(   R VP                  9   d   VP                  R ,          VR &   \        V	\        \         34      '       d   W�,          VR&   \        V
\        \         34      '       d   W­,          VR&   V^,          pV'       Ed6   VR,          pVP                   P                  R4      pVP                   P                  R4      pV\        P"                  8X  d!   \%        V4      ^8  d   \        P&                  pV\        P&                  8X  d�   VP(                  P                  4       p\*        P,                  P/                  RV P0                  R4      pVP2                  pV'       d   VP5                  V4      pM^ ^ .V P0                  O5pVP7                  VV4       M5V\        P"                  8X  d   VR,          P(                  pMVP(                  p\8        P:                  ! VP                  R4      VP                  R4      4      pVP=                  RR7      pV'       g™   VVP                  R4      8X  dƒ   VVP                  R4      8X  dm   R V9   df   VP                   R ,          VR ,          ,           p\?        VR,          4      PA                  R	4      pVPB                  R	8:  d   VVP                   R &   EK8  MRpVPE                  \G        VVV4      4       EKZ  	  EKy  	  \%        V4      ^8X  d   V'       g   V^ ,          P(                  # V! VR
\I        \%        V4      4      \I        V4      4       V'       d�   V P                  V8X  d   T MV P                  V4      p\K        VV P                   4       \L        PN                  ! V\Q        R\S        W4      4      \L        PT                  ! R^ ^ .V P0                  O5^ V4      .4       ^ p\W        V4       EFW  w  ppVP(                  pVP2                  '       g   ^ ^ .VP0                  O5pMVP2                  pVP5                  V4      pVP0                  pVP                   pVP                  R ^ 4      p\?        VR,          4      PA                  R	4      pVPB                  R	8”  d   Rp \Y        V 4      hVP                  RV	4      p!VP                  RV
4      p"V! VR\I        V4      \I        V^ ,          4      \I        V^,          4      \I        V^ ,          4      \I        V^,          4      \[        VPB                  4      \[        VP\                  4      \_        V!4      \_        V"4      4       V^,          p\K        WðP                   4       V^ 8X  d^   V'       gV   \L        PN                  ! V\Q        R\S        W4      4      \L        PT                  ! R^ ^ .VP0                  O5^ V4      .4       EKö  \a        WV4      p#\L        PN                  ! V\Q        RV#4      \L        PT                  ! R^ ^ .VP0                  O5^ V4      .4       V#Pb                  pEKZ  	  R# )rˆ  r~  r‰  rŠ  Nr%   F)Ú
alpha_onlyr‡  éÿÿ  s   acTLrU   rÈ   zcannot write durationrÒ  r<  )r   r   r   r   éþÿÿÿ)2r5  r´  rá   r'   r-   r4   r5   Ú	itertoolsÚchainr   ÚIteratorrÛ  r   rü  rÐ   ÚlistrH  r/   r_  r.   rÝ  r	   rÙ  rÚ  Úsizer  ÚcroprÞ  r
   Úsubtract_moduloÚgetbboxr   Úlimit_denominatorÚ	numeratorr‚   r@  r  r>  r   Ú_saver   r  r   Ú	enumeraterD   Úo16Údenominatorr   r+  rã   )$rÝ  rT   r  rÛ  r½  r  rB  rˆ  r~  r‰  rŠ  rH  Ú	im_framesÚframe_countÚim_seqÚim_framer5  ÚpreviousÚprev_disposalÚ
prev_blendÚbase_imrä  r  ÚdeltaÚnew_durationÚdelayÚ
default_imrã   rÃ  Ú
frame_datarK  Úframe_durationrG   Úframe_disposalÚframe_blendÚfdat_chunkss$   &&&&&&&                             r2   Ú_write_multiple_framesrf  ¬  s   € ð �~‰~×!Ñ! *Ó-€HØ�>‰>×Ñ˜f b§g¡g§k¡k°&¸!Ó&<Ó=€DØ�~‰~×!Ñ! *¨b¯g©g¯k©k¸*Äh×FVÑFVÓ.WÓX€HØ�N‰N×Ñ˜w¨¯©¯©°G¼U¿_¹_Ó(MÓN€EçÜ—’ Ó.‰ä—’   mÓ4ˆà €IØ€KÜˆÜ%×.Ò.¨v×6ˆHØ�}‰} Ô$Ø#Ÿ=™=›?‘à#×+Ñ+¨DÓ1�ØŸ.™.×-Ñ-Ó/ˆKÜ˜(¤T¬5 M×2Ò2Ø*2Õ*?�˜JÒ'ØÒ! j°H·M±MÔ&AØ*2¯-©-¸
Õ*C�˜JÑ'Ü˜(¤T¬5 M×2Ò2Ø*2Õ*?�˜JÑ'Ü˜%¤$¬ ×/Ò/Ø',Õ'9�˜GÑ$Ø˜1ÕˆKçˆyØ$ R�=�Ø (× 4Ñ 4× 8Ñ 8¸Ó D�Ø%×1Ñ1×5Ñ5°gÓ>�
Ø ¤H×$8Ñ$8Ô8¼SÀ»^ÈaÔ=OÜ$,×$:Ñ$:�Mà ¤H×$:Ñ$:Ô:Ø&Ÿk™k×.Ñ.Ó0�GÜ#Ÿj™jŸo™o¨f°b·g±g¸|ÓL�GØ#Ÿ=™=�DßØ")§,¡,¨tÓ"4™à ! 1Ð/ r§w¡wÑ/˜Ø—M‘M '¨4Õ0Ø"¤h×&:Ñ&:Ô:Ø'¨�m×.Ñ.‘Gà&Ÿk™k�GÜ"×2Ò2Ø×$Ñ$ VÓ,¨g¯o©o¸fÓ.Eó�ð —}‘}°�}Ó6�çØ%¨¯©¸Ó)DÔDØ" k§o¡o°gÓ&>Ô>Ø" kÔ1ð !×,Ñ,¨ZÕ8¸;ÀzÕ;RÕRð !ô % \°DÕ%8Ó9×KÑKÈEÓR�EØ—‘¨%Ô/Ø;G˜×,Ñ,¨ZÑ8Ú øà�Ø×ÑœV H¨d°KÓ@×Aôo 7ñ ôt ˆ9ƒ~˜Ô§=Ø˜�|�‰Ðñ 
Ø
ØÜŒC�	‹NÓÜˆD‹	ô	÷ ØŸ7™7 dœ?‘R°·
±
¸4Ó0@ˆ
Ü˜: r§~¡~Ô6Ü�ŠØÜ�œe BÓ.Ó/Ü�_Š_˜U Q¨Ð$4¨B¯G©GÑ$4°a¸ÓAÐBô	
ð €GÜ& y×1ÑˆˆzØ—=‘=ˆØ��ˆØ�qÐ)˜8Ÿ=™=Ñ)‰Dà—?‘?ˆDØ—}‘} TÓ*ˆHØ�}‰}ˆØ ×,Ñ,ˆØ$Ÿ™¨°QÓ7ˆÜ˜¨$Õ.Ó/×AÑAÀ%ÓHˆØ�?‰?˜UÔ"Ø)ˆCÜ˜S“/Ð!Ø$Ÿ™¨°XÓ>ˆØ!—o‘o g¨uÓ5ˆáØØÜ�‹LÜ��Q•‹LÜ��Q•‹LÜ��Q•‹LÜ��Q•‹LÜ�—‘Ó Ü�×!Ñ!Ó"Üˆ~ÓÜˆ{‹Oô	
ð 	�1�ˆä˜8§^¡^Ô4Ø�AŒ:Ÿmä�OŠOØÜ�[¤%¨Ó"2Ó3Ü—’ ¨¨AÐ(>°·±Ñ(>ÀÀ7ÓKÐL÷ô   ¨7Ó3ˆKÜ�OŠOØÜ�[ +Ó.Ü—’ ¨¨AÐ(>°·±Ñ(>ÀÀ7ÓKÐLôð
 "×)Ñ)‹Gñ_ 2ñ` r1   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r8   rÝ  r4  rT   rU   ÚfilenamerÆ   r;   rV   r(   )r<   s   "r2   r=   r=   D  s(   € ÷ +ñ +�+ð + 9ð +¸ð +Èñ +r1   c                ó"   € \        WVR R7       R# )T)Úsave_allN)rQ  )rÝ  rT   rh  s   &&&r2   Ú	_save_allrk  D  s   € Ü	ˆ"�( T×*r1   c               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )r8   rÝ  r4  rT   rU   rh  rÆ   r  r  rj  rÀ   r;   rV   r(   )r<   s   "r2   r=   r=   H  sL   € ÷ bñ bØðbàðbð ðbð ð	bð
 ðbð 
ñbr1   c                óŒ  a+€ V'       Edâ   V P                   P                  R V P                  P                  R 4      4      p\        4       p\        4       o+RpRpRp	V P                   P                  R. 4      p
\        P
                  ! V .V
4       Fß  p\        P                  ! V4       FÂ  pVP                  VP                  4       S+P                  VP                  4       VP                  R8X  dd   VP                  '       d   VP                  P                  R8X  d   TpV	f/   VP                  4       ;'       g    . pVe   W×8w  d   Rp	K¥  K§  TpK«  K­  VP                  R69   g   KÀ  Rp	KÄ  	  Ká  	  V	'       d   V'       d   RMRpM!R7 F  pWæ9   g   K   M	  VP                  4       p\        ;QJ d     . V+3R l\        ^4       4       F  NK  	  5M! V+3R l\        ^4       4       4      pMjV P                  pV P                  pVR8X  dL   V P                  '       d:   V P                  4       ;'       g    . pV P                  P                  R8X  d   T MRpTpVR8X  d}   \!        ^\#        ^V P                   P                  R	^4      ,          X'       d   \%        V4      ^,          M^ R
4      4      pV^8:  d#   V^8:  d   ^pMV^8:  d   ^pM^pVRV 2,          pMEVR8X  d?   V P                   P                  R	^4      ^8w  d   VRV P                   R	,           2,          p \&        V,          w  pppTP-                  \.        4       T! TR\1        T^ ,          4      \1        T^,          4      TTRRR4	       . R8OpT P                   P                  RT P                  P                  R4      4      ;p'       dB   RpTR,           \2        P4                  ! T4      ,           pT! TRT4       TP7                  R4       T P                   P                  R4      ;p'       d­   . R9OpTP8                   F˜  pTR,          w  ppTT9   d   TP7                  T4       T! TTT4       K3  TT9   d   T! TTT4       KF  TR,          P;                  4       '       g   Ke  \%        T4      ^8H  ;'       d
    T^,          p T '       d   KŽ  T! TTT4       Kš  	  TR8X  d4   X;'       d    \=        TRX^,           4      ;'       g    Rp!T! TRT!4       T P                   P                  RT P                  P                  R4      4      p"T"Ee°   TR8X  d€   Xp#\?        T"\<        4      '       d   T! TRT"RT# 4       EM»\?        T"\@        4      '       d6   \!        ^ \#        ^ÿT"4      4      p"RT",          R,           p$T! TRT$RT# 4       EMpRp\C        T4      hT P                  R:9   d]   \?        T"\@        4      '       d,   \!        ^ \#        RT"4      4      p"T! TR\E        T"4      4       EMR T P                   R!2p\C        T4      hT P                  R8X  d�   \?        T"\F        \        34      '       g   R"p\C        T4      h\%        T"4      ^8w  d   R#p\C        T4      hT"w  p%p&p'T! TR\E        T%4      \E        T&4      ,           \E        T'4      ,           4       MeT P                   P                  R4      e   R$p\+        T4      hM:TR8X  d4   X'       d,   TPH                  P                  RR%4      p$Xp#T! TRT$RT# 4       T P                   P                  R&4      ;p('       d[   T! TR'\1        \A        T(^ ,          R(,          R),           4      4      \1        \A        T(^,          R(,          R),           4      4      R*4       T'       dH   R+R,.pTP8                   F3  pTR,          w  ppTT9   g   K  TP7                  T4       T! TTT4       K5  	  T P                   P                  R-4      ;p)'       d\   \?        T)\J        PL                  4      '       d   T)PO                  ^4      p)T)PQ                  R.4      '       d
   T)R/,          p)T! TR0T)4       T p*T'       d   \S        YY>TXX
4      p*T*'       di   \U        T*T P                   4       \V        PX                  ! T*\[        R1\]        Y4      4      \V        P^                  ! R2^ ^ .T*P                  O5^ T4      .4       T'       dr   TP8                   Fa  pTR,          w  ppTR,          P;                  4       '       g   K.  \%        T4      ^8H  ;'       d
    T^,          p T '       g   KW  T! TTT4       Kc  	  T! TR3R44       \a        TR54      '       d   TPc                  4        R# R#   \(         d   pRT R2p\+        T4      ThRp?ii ; i);r  NrB  r    r%   TFr   c              3  óP   <a"  € T F  o\        V3R  lS 4       4      x € K  	  R# 5i)c              3  ó4   <"  € T F  qS,          x € K  	  R # 5irY   r(   )rB  Ú
frame_sizer  s   & €r2   rD  Ú"_save.<locals>.<genexpr>.<genexpr>t  s   øé € Ð?¹¨: AŸš»ùs   ƒN)Úmax)rB  r  Úsizess   &@€r2   rD  Ú_save.<locals>.<genexpr>t  s   ùé € ÐRÉÀA”SÔ?¹Ó?×?Ð?Ëùs   „"&Úbitsé   Ú;r   zcannot write mode z as PNGs   IHDRrÎ   ó   sRGBr  s   ICC ProfilerØ   s   iCCPÚpnginfo:Nr8   Nr¨  rÏ   s   PLTEr1  s   tRNSó   ÿz.transparency for P must be an integer or bytesrE  ztransparency for z must be an integerz*transparency for RGB must be list or tuplez'transparency for RGB must have length 3z%cannot use transparency for this modeÚArT  s   pHYsrS  g      à?ó   s   bKGDs   hISTry  rx  :é   NNs   eXIfrU   rÈ   r¦   r1   Úflush©r%   r%   )r%   r   r    )s   cHRMs   cICPs   gAMAs   sBITrx  s   tIME)s   sPLTrÍ   rÙ   r×   )r   r   ÚIr   )2r5  r´  rá   ÚsetrG  rH  r   rI  rÂ   rÛ  rK  r¶  Ú
getpaletterc   rH  rÌ  rr  rô  r_  Ú	_OUTMODESr  r¡   r  rŸ  r  r?   rÒ   Úremover¼   r¯  r:   rÐ   rL   rD   rS  rJ  rÝ  r	   ÚExifÚtobytesrž  rf  r>  r   rQ  r   r  r   Úhasattrr~  ),rÝ  rT   rh  r  rj  r  Úmodesr¶  Úpalette_frame_with_alphaÚdifferent_paletterB  rW  rX  Úframe_paletterÛ  rK  ÚoutmodeÚcolorsru  r½  Ú	bit_depthÚ
color_typer˜   rG   r¼   ÚiccÚnamerJ   rá   Úchunks_multiple_allowedÚ
info_chunkrl   r¿   Úpalette_bytesr1  Úalpha_bytesÚalphaÚredÚgreenÚbluerT  ry  Ú	single_imrs  s,   &&&&&                                      @r2   rQ  rQ  H  sD  ø€ ÷ €xØŸ™×*Ñ*Ø˜RŸW™WŸ[™[¨Ó9ó
ˆô “ˆÜ“ˆØˆØ#'Ð Ø ÐØŸ™×*Ñ*¨?¸BÓ?ˆÜ—o’o r d¨MÖ:ˆFÜ)×2Ò2°6Ö:�Ø—	‘	˜(Ÿ-™-Ô(Ø—	‘	˜(Ÿ-™-Ô(Ø—=‘= CÔ'Ø×'×'Ð'¨H×,<Ñ,<×,AÑ,AÀVÔ,KØ3;Ð0Ø(Ò0Ø(0×(;Ñ(;Ó(=×(CÐ(CÀ˜Ø"Ò.Ø,Ô7Ø48Ò 1ñ  8ð '4šGñ 1ð —]‘]Ð&6Ö6Ø(-Ò%ó ;ñ ;÷  ç5‘6¸5‰Dã,�Ø–=Ùñ -ð —y‘y“{�ßŒuÔRÌÈqÌÓR�u‰uÔRÌÈqÌÓRÓR‰à�w‰wˆØ�w‰wˆØ�3Œ;˜2Ÿ:Ÿ:˜:Ø—m‘m“o×+Ð+¨ˆGØ-/¯Z©Z¯_©_ÀÔ-F¡rÈDÐ$à€GØˆs„{ÜØÜà�R—^‘^×'Ñ'¨°Ó2Õ2ç%,”�G“ Ö!°!Øóó	
ˆð �RŒ<Ø˜Œ{Ø‘Ø˜1”Ø‘à�Ø˜˜4˜&�zÕ!ˆGøØ	�Œ˜Ÿ™×+Ñ+¨F°AÓ6¸!Ô;Ø�Q�r—~‘~ fÕ-Ð.Ð/Õ/ˆð"Ü)2°7Õ);Ñ&ˆ�˜Jð ‡H�HŒVÔá	Ø
ØÜˆD��G‹ÜˆD��G‹ØØØØØô
ò D€Fà�n‰n× Ñ  °·±·±¸MÓ0JÓKÐK€sÖKð ˆØ�g�~¤§¢¨cÓ 2Õ2ˆÙˆb�'˜4Ô ð 	�‰�gÔà�~‰~×!Ñ! )Ó,Ð,€tÖ,Ú"FÐØŸ+œ+ˆJØ" 2�‰IˆC�Ø�fŒ}Ø—‘˜cÔ"Ù�b˜#˜tÖ$ØÐ/Ô/Ù�b˜#˜tÖ$Ø�S•×!Ñ!×#Ô#ä  ›_°Ñ1×CÐC°jÀµm�
ß!‘zÙ˜"˜c 4Ö(ñ &ð ˆs„{Ø ×AÐA¤U¨7°<°V¸aµZÐ+@Ó%A×UÐUÀoˆÙˆb�'˜=Ô)à—>‘>×%Ñ% n°b·g±g·k±kÀ.Ó6QÓR€LàÓØ�3Œ;à ˆKÜ˜,¬×.Ò.Ù�b˜' <°°Ð#=Ö>Ü˜L¬#×.Ò.Ü" 1¤c¨#¨|Ó&<Ó=�Ø ,Õ.°Õ6�Ù�b˜' 5¨¨+Ð#6Ö7àF�Ü  “oÐ%Ø�W‰WÐ/Ô/Ü˜,¬×,Ò,Ü" 1¤c¨%°Ó&>Ó?�Ù�b˜'¤3 |Ó#4Ö5à)¨"¯'©'¨Ð2EÐF�Ü  “oÐ%Ø�W‰W˜ÔÜ˜l¬T´5¨M×:Ò:ØB�Ü  “oÐ%Ü�\Ó" aÔ'Ø?�Ü  “oÐ%à#/Ñ ��U˜DÙ�b˜'¤3 s£8¬c°%«jÕ#8¼3¸t»9Õ#DÕEØ�^‰^×Ñ Ó/Ò;ð :ˆCÜ˜#“,Ðð	 <ð
 
�Œ×1Ø(×+Ñ+×6Ñ6°v¸sÓCˆØˆÙˆb�'˜5  +Ð.Ô/à�n‰n× Ñ  Ó'Ð'€sÖ'ÙØØÜ”�C˜•F˜V•O cÕ)Ó*Ó+Ü”�C˜•F˜V•O cÕ)Ó*Ó+Øô	
÷ Ø˜7Ð#ˆØŸ+œ+ˆJØ" 2�‰IˆC�Ø�fŽ}Ø—‘˜cÔ"Ù�b˜#˜tÖ$ñ	 &ð �~‰~×!Ñ! &Ó)Ð)€tÖ)Ü�dœEŸJ™J×'Ò'Ø—<‘< “?ˆDØ�?‰?˜?×+Ò+Ø˜•8ˆDÙˆb�'˜4Ô à$&€IßÜ*Ø�E ¨-¸ó
ˆ	÷ Ü˜9 b§n¡nÔ5Ü�ŠØÜ�œe BÓ.Ó/Ü�_Š_˜U Q¨Ð$;¨I¯N©NÑ$;¸QÀÓHÐIô	
÷ ØŸ+œ+ˆJØ" 2�‰IˆC�Ø�3�x×Ñ×!Ô!ä  ›_°Ñ1×CÐC°jÀµm�
ß‘:Ù˜"˜c 4Ö(ñ &ñ 
ˆ"ˆg�sÔäˆr�7×ÒØ
�‰Ž
ñ øôg ô "Ø" 4 &¨Ð0ˆÜ�c‹l Ð!ûð"ús   Ì!f! æ!gæ,f>æ>gc               ó$   € V ^8„  d   QhRRRRRR/# )r8   rÝ  r4  Úparamsr   r;   z list[tuple[bytes, bytes, bytes]]r(   )r<   s   "r2   r=   r=   1  s"   € ÷ ñ �+ð ¨ð Ð1Qñ r1   c                ór   a€ ^ RI Hp . oR V3R llpV! 4       p Wn        \        WRV4       V =S#   T =i ; i)z4Return a list of PNG chunks representing this image.)ÚBytesIOc               ó(   € V ^8„  d   QhRRRRRRRR/# r  r(   )r<   s   "r2   r=   Úgetchunks.<locals>.__annotate__7  s(   € ÷ -ñ -�9ð - 5ð -°ð -¸4ñ -r1   c                óŒ   <€ R P                  V4      p\        \        V\        V4      4      4      pSP                  WV34       R# )r1   N)r  r  rO   r‚   )rT   rl   rJ   r  r™   r¼   s   &&*  €r2   r‚   Úgetchunks.<locals>.append7  s6   ø€ Ø—H‘H˜T“Nˆ	Ü”&˜¤F¨3£KÓ0Ó1ˆØ�‰�s sÐ+Ö,r1   rÞ   )Úiorž  r5  rQ  )rÝ  rœ  rž  r‚   rT   r¼   s   &,   @r2   Ú	getchunksr¤  1  sG   ø€ åà€F÷-ð -ñ
 
‹€BðØŒÜˆb�b˜&Ô!àˆNà€Møð ‰Nús   ›2 ²6z.pngz.apngz	image/png>   r?   r”   r  Ú	fractionsrG  ú	PIL._utilúPIL._binary)rh  r   )r   r   )r8   r   )r   r   )ra   r   )r   r   )é   r   )r   r   )é   r   )r   r   )r¨  r8   )r   r   )r©  r8   )r   zRGB;16B)rh  é   )r    r!   )r8   rª  )r    r"   )ra   rª  )r    r#   )r¨  rª  )r    r    )r¨  ra   )r$   r$   )r©  ra   )r%   zLA;16B)r¨  r}  r  )r©  r}  )r%   zRGBA;16B)r   )r   r|  rÎ   )r   ó   rÎ   )r  r|  rÎ   )r   ó   rÎ   )r   ó   rÎ   )r$   r«  r­  )r   ó   rÎ   )r!   r|  ó   )r"   r¬  r¯  )r#   r­  r¯  )r    r«  r¯  )r   r«  r¬  )r%   r«  ó   )RÚ
__future__r   Ú__lazy_modules__rG  ÚloggingÚrer”   r  r?   Úenumr   r¥  r   Útypingr   r   r   rÞ   r	   r
   r   r   r   Ú_binaryr   r4  r   rg   r   r   rS  r   r  Ú_utilr   ÚTYPE_CHECKINGÚcollections.abcr   r   r   r   r   Ú	getLoggerr)   rŠ   Úcompiler3  rh   rŸ  r  r2  Ú	SAFEBLOCKrB   rû   r'   r4   rH   rO   rQ   r­   r¨   r·   rà   ræ   r   r¢  rƒ  r  r  r+  r>  r@  rf  rk  rQ  r¤  Úregister_openr<   Úregister_saveÚregister_save_allÚregister_extensionsÚregister_mimer(   r1   r2   Ú<module>rÃ     s°  ðõB #òÐ ó Û Û 	Û Û Û Ý Ý ß 'Ñ 'ç GÕ GÝ !Ý !Ý Ý !Ý !Ý  à€ßÝ(ß*Ñ*åà	×	Ò	˜8Ó	$€à	�Š�LÓ	!×	'Ñ	'€ð 
€ð ˆJØ
ˆLØ
ˆLØ
ˆJØÐà
ˆNØÐà
ˆLØ
ˆLØ
ˆLØ
ˆJà
ˆLØÐà
ÐØÐ!ð+
€ð2 —*’*Ð0Ó1€à×$Ñ$€ðð
 �~Õ%€ðôˆwô ô*ˆGô õ÷/÷[ñ [ô|ˆ3ô ÷6Y3ñ Y3ô@�:ô ôw4�ô w4õ|%ôQ!�9×&Ñ&ô Q!ðr
 Ð	 ØÐ	 Ø	Ð$Ø	Ð$Ø	Ð$ØÐ
"Ø
Ð'ØÐ(Ø	Ð$Ø	Ð$Ø	Ð$ØÐ	 Ø	Ð$Ø
Ð&ð€	õ&÷+ñ +÷
ñ 
õô ˆZô  õUõp+ð "*Ø÷bõRð2 × Ò �L×'Ñ'¨°wÔ ?Ø × Ò �L×'Ñ'¨Ô /Ø × Ò ˜×+Ñ+¨YÔ 7à × Ò ˜,×-Ñ-°¸Ð/@Ô Aà × Ò �L×'Ñ'¨Ö 5r1   