Files
old-saburly-wagtail-web/env/lib/python3.10/site-packages/PIL/__pycache__/PngImagePlugin.cpython-310.pyc

335 lines
32 KiB
Plaintext
Raw Normal View History

2024-08-27 20:33:44 +02:00
o
<00><><EFBFBD>f<EFBFBD><66><00>@slddlmZddlZddlZddlZddlZddlZddlZddlm Z ddl
m Z m Z m Z mZddlmZmZmZmZmZddlmZddlmZdd lmZdd
lmZdd lmZe rddd lmZe<03> e!<21>Z"e<04>#d <0A>j$Z%dZ&dddddddddddddddd<1E>Z'e<04>#d<1F>Z(ej)Z* d e*Z+ Gd!d"<22>d"e <09>Z,Gd#d$<24>d$e <09>Z-d%d&<26>Z.d`d'd(<28>Z/Gd)d*<2A>d*<2A>Z0Gd+d,<2C>d,e1<65>Z2Gd-d.<2E>d.<2E>Z3Gd/d0<64>d0e0<65>Z4dad5d6<64>Z5Gd7d8<64>d8ej<12>Z6d9d:d;d<d=d>d?d?d?d@dAdBdCdDdEdF<64>Z7dGdH<64>Z8GdIdJ<64>dJ<64>Z9GdKdL<64>dL<64>Z:dMdN<64>Z;dbdVdW<64>Z<e8dXfdYdZ<64>Z=d[d\<5C>Z>e<10>?e6j@e6e5<65>e<10>Ae6j@e=<3D>e<10>Be6j@e<<3C>e<10>Ce6j@d]d^g<02>e<10>De6j@d_<64>dS)c<>)<01> annotationsN)<01>IntEnum)<04>IO<49> TYPE_CHECKING<4E>Any<6E>NoReturn<72>)<05>Image<67>
ImageChops<EFBFBD> ImageFile<6C> ImagePalette<74> ImageSequence)<01>i16be)<01>i32be)<01>o8)<01>o16be)<01>o32be)<01>_imagings\w\w\w\ws<00>PNG

)<02>1r)<02>L<>L;2)r<00>L;4)rr)<02>I;16<31>I;16B)<02>RGBr)rzRGB;16B)<02>P<>P;1)r<00>P;2)r<00>P;4)rr)<02>LAr)<02>RGBAzLA;16B)r r )r zRGBA;16B))rr)<02>r)<02>r)<02>r)<02>r)r#r!)r$r!)r<00>)r!r%)r"r%)r#r%)r#r")r$r")r#<00>)r$r&s^<5E>*<00>*$<24>@c@seZdZdZ dZ dZdS)<05>Disposalrrr!N)<06>__name__<5F>
__module__<EFBFBD> __qualname__<5F>OP_NONE<4E> OP_BACKGROUND<4E> OP_PREVIOUS<55>r/r/<00>T/home/amir/Desktop/saburlyweb/env/lib/python3.10/site-packages/PIL/PngImagePlugin.pyr(gsr(c@seZdZdZ dZdS)<04>BlendrrN)r)r*r+<00> OP_SOURCE<43>OP_OVERr/r/r/r0r1|s
r1cCs*t<00><01>}|<01>|t<03>}|jrd}t|<03><01>|S)NzDecompressed Data Too Large)<06>zlib<69> decompressobj<62>
decompress<EFBFBD>MAX_TEXT_CHUNK<4E>unconsumed_tail<69>
ValueError)<04>s<>dobj<62> plaintext<78>msgr/r/r0<00>_safe_zlib_decompress<73>s  r>cCst<00>||<01>d@S)Nl<00><EFBFBD>)r4<00>crc32)<02>data<74>seedr/r/r0<00>_crc32<33><00>rBc@speZdZd&dd<06>Zd'dd <09>Zd(d
d <0B>Zd)dd<0F>Zd*dd<11>Zd+dd<18>Zdd<1A>Z d,dd<1D>Z
d,dd<1F>Z d-d.d#d$<24>Z d%S)/<2F> ChunkStream<61>fp<66> IO[bytes]<5D>return<72>NonecCs||_g|_dS<00>N)rE<00>queue<75><02>selfrEr/r/r0<00>__init__<5F><00>
zChunkStream.__init__<5F>tuple[bytes, int, int]cCs<>d}|jdus J<00>|jr|j<01><02>\}}}|j<00>|<02>n|j<00>d<02>}|dd<01>}|j<00><05>}t|<04>}t|<01>sCtj sCdt
|<01><01>d<05>}t |<05><01>|||fS)z.Fetch a new chunk. Returns header information.Nr#r"zbroken PNG file (chunk <20>)) rErJ<00>pop<6F>seek<65>read<61>tell<6C>i32<33>is_cidr <00>LOAD_TRUNCATED_IMAGES<45>repr<70> SyntaxError)rL<00>cid<69>pos<6F>lengthr:r=r/r/r0rS<00>s  

zChunkStream.readcCs|SrIr/<00>rLr/r/r0<00> __enter__<5F><00>zChunkStream.__enter__<5F>args<67>objectcGs |<00><00>dSrI)<01>close)rLr`r/r/r0<00>__exit__<5F>s zChunkStream.__exit__cCsd|_|_dSrI)rJrEr]r/r/r0rb<00>rCzChunkStream.closerZ<00>bytesr[<00>intr\cCs$|jdusJ<00>|j<00>|||f<03>dSrI)rJ<00>append<6E>rLrZr[r\r/r/r0<00>push<73>szChunkStream.pushcCs,t<00>d|||<03>t|d|<01>d<03><01><00><02>||<03>S)z"Call the appropriate chunk handlerzSTREAM %r %s %s<>chunk_<6B>ascii)<04>logger<65>debug<75>getattr<74>decodergr/r/r0<00>call<6C>szChunkStream.callr@c
Cs<>tjr|dd?d@r|<00>||<02>dS|jdusJ<00>z"t|t|<01><01>}t|j<03>d<05><01>}||kr:dt|<01><01>d<07>}t|<05><01>WdSt j
yV}z dt|<01><01>d<07>}t|<05>|<06>d}~ww) zRead and verify checksumr<00>rNr"z(broken PNG file (bad header checksum in rPz(broken PNG file (incomplete checksum in ) r rW<00>crc_skiprErBrUrSrXrY<00>struct<63>error)rLrZr@<00>crc1<63>crc2r=<00>er/r/r0<00>crc<72>s  <06>
<08><02>zChunkStream.crccCs|jdusJ<00>|j<00>d<02>dS)z Read checksumNr")rErS)rLrZr@r/r/r0rq<00>szChunkStream.crc_skip<69>IEND<4E>endchunk<6E> list[bytes]c
Csrg} z |<00><00>\}}}Wntjy }zd}t|<07>|<06>d}~ww||kr( |S|<00>|t<05>|j|<05><02>|<02>|<03>q)NTztruncated PNG file) rSrrrs<00>OSErrorrwr <00>
_safe_readrErf)rLry<00>cidsrZr[r\rvr=r/r/r0<00>verify<66>s
<08><02><16>
<02>zChunkStream.verifyN)rErFrGrH)rGrO)rGrD)r`rarGrH<00>rGrH)rZrdr[rer\rerGrH)rZrdr@rdrGrH)rx)ryrdrGrz) r)r*r+rMrSr^rcrbrhrorwrqr~r/r/r/r0rD<00>s







rDc@s0eZdZUdZded<ded<eddd<07><01>ZdS) <09>iTXtzq
Subclass of string to allow iTXt chunks to look like strings while
keeping their extra information
zstr | bytes | None<6E>lang<6E>tkeyNcCst<00>||<01>}||_||_|S)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
)<04>str<74>__new__r<5F>r<>)<05>cls<6C>textr<74>r<>rLr/r/r0r<>s z iTXt.__new__)NN)r)r*r+<00>__doc__<5F>__annotations__<5F> staticmethodr<64>r/r/r/r0r<><00>s
r<>c@sFeZdZdZddd<05>Zddd d <0A>Z   dddd<16>Z dd dd<19>ZdS)!<21>PngInfoz<
PNG chunk container (for use with save(pnginfo=))
rGrHcCs
g|_dSrI)<01>chunksr]r/r/r0rMs
zPngInfo.__init__FrZrdr@<00>
after_idat<EFBFBD>boolcCs|j<00>|||f<03>dS)a"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<>rf)rLrZr@r<>r/r/r0<00>adds
z PngInfo.add<64><00>key<65> str | bytes<65>valuer<65>r<><00>zipcCs<>t|t<01>s |<01>dd<02>}t|t<01>s|<02>dd<02>}t|t<01>s!|<03>dd<02>}t|t<01>s,|<04>dd<02>}|rE|<00>d|d|d|dt<04>|<02><00>dS|<00>d|d|d|d|<00>dS) 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
<20>latin-1<>strict<63>utf-8<>iTXts<00>sN)<06>
isinstancerd<00>encoder<65>r4<00>compress)rLr<>r<>r<>r<>r<>r/r/r0<00>add_itxt&s
 
 
 
  <08>(zPngInfo.add_itxt<78>str | bytes | iTXtcCs<>t|t<01>r"|j|||jdur|jnd|jdur|j|d<03>Sd|d<03>St|t<05>sAz|<02>dd<05>}Wnty@|j|||d<03>YSwt|t<05>sL|<01>dd<05>}|r]|<00>d|dt <09>
|<02><00>dS|<00>d|d |<00>dS)
z<EFBFBD>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
N<>)r<>r<>r<><00>zTXt<58><00>tEXtr<74>) r<>r<>r<>r<>r<>rdr<><00> UnicodeErrorr<72>r4r<>)rLr<>r<>r<>r/r/r0<00>add_textIs,
<06><06>
 <02>
 zPngInfo.add_textNr<00>F)rZrdr@rdr<>r<>rGrH)r<>r<>F) r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>rGrH)r<>r<>r<>r<>r<>r<>rGrH)r)r*r+r<>rMr<>r<>r<>r/r/r/r0r<>s
  <0C>$<10>r<EFBFBD>cs<>eZdZ<02>fdd<02>Zd3dd<08>Zd4d d
<EFBFBD>Zd4d d <0C>Zd5dd<11>Zd5dd<13>Zd6dd<16>Z d6dd<18>Z
d5dd<1A>Z d5dd<1C>Z d5dd<1E>Z d5dd <20>Zd5d!d"<22>Zd5d#d$<24>Zd5d%d&<26>Zd5d'd(<28>Zd5d)d*<2A>Zd5d+d,<2C>Zd5d-d.<2E>Zd5d/d0<64>Zd5d1d2<64>Z<17>ZS)7<> PngStreamcsRt<00><00>|<01>i|_i|_d|_d|_d|_d|_d|_d|_ d|_
d|_ d|_ dS)N<>rrr) <0A>superrM<00>im_info<66>im_text<78>im_size<7A>im_mode<64>im_tile<6C>
im_palette<EFBFBD>im_custom_mimetype<70> im_n_frames<65>_seq_num<75> rewind_state<74> text_memoryrK<00><01> __class__r/r0rMrs 
zPngStream.__init__<5F>chunklenrerGrHcCs2|j|7_|jtkrd|j<00>d<02>}t|<02><01>dS)Nz%Too much memory used in text chunks: z>MAX_TEXT_MEMORY)r<><00>MAX_TEXT_MEMORYr9)rLr<>r=r/r/r0<00>check_text_memory<72>s
<06><02><04>zPngStream.check_text_memorycCs|j<00><01>|j|jd<01>|_dS)N)<03>info<66>tile<6C>seq_num)r<><00>copyr<79>r<>r<>r]r/r/r0<00> save_rewind<6E>s <0C>zPngStream.save_rewindcCs,|jd<00><01>|_|jd|_|jd|_dS)Nr<4E>r<>r<>)r<>r<>r<>r<>r<>r]r/r/r0<00>rewind<6E>s zPngStream.rewindr[r\rdcCs<>t<00>|j|<02>}|<03>d<01>}t<04>d|d|<04><00>||d}t<04>d|<05>|dkr0d|<05>d<07>}t|<06><01>z t||dd<00><00>}WntyLtj rId}n<01>Yn t
j yWd}Ynw||j d <|S)
Nr<EFBFBD>ziCCP profile name %rrzCompression method %sr<00>Unknown compression method z in iCCP chunkr!<00> icc_profile) r r|rE<00>findrkrlrYr>r9rWr4rsr<>)rLr[r\r:<00>i<> comp_methodr=r<>r/r/r0<00>
chunk_iCCP<EFBFBD>s(
    <04><02>
zPngStream.chunk_iCCPcCs<>t<00>|j|<02>}|dkrtjr|Sd}t|<04><01>t|d<03>t|d<04>f|_zt|d|df\|_|_ Wn t
y:Ynw|drDd|j d <|d
rNd }t |<04><01>|S) N<> zTruncated IHDR chunkrr"r#<00> <00> r<00> interlace<63> zunknown filter category) r r|rErWr9rUr<><00>_MODESr<53><00>
im_rawmode<EFBFBD> Exceptionr<6E>rY<00>rLr[r\r:r=r/r/r0<00>
chunk_IHDR<EFBFBD>s$  <02>
zPngStream.chunk_IHDRrcCsdd|jvrd|jd||jfg}n|jdurd|jd<dd|j||jfg}||_||_d}t|<04><01>)N<>bboxr<78>T<> default_imager<65>zimage data found)r<>r<>r<>r<>r<><00>im_idat<61>EOFError)rLr[r\r<>r=r/r/r0<00>
chunk_IDAT<EFBFBD>s


zPngStream.chunk_IDATcCs d}t|<03><01>)Nzend of PNG image)r<>)rLr[r\r=r/r/r0<00>
chunk_IEND<EFBFBD>szPngStream.chunk_IENDcCs&t<00>|j|<02>}|jdkrd|f|_|S)Nrr)r r|rEr<>r<><00>rLr[r\r:r/r/r0<00>
chunk_PLTE<EFBFBD>s

zPngStream.chunk_PLTEcCs<>t<00>|j|<02>}|jdkr(t<04>|<03>r!|<03>d<02>}|dkr||jd<|S||jd<|S|jdvr6t|<03>|jd<|S|jdkrKt|<03>t|d<07>t|d<08>f|jd<|S) Nrr<>r<00> transparency)rrrrr!r") r r|rEr<><00>_simple_palette<74>matchr<68>r<><00>i16)rLr[r\r:r<>r/r/r0<00>
chunk_tRNS<EFBFBD>s




<EFBFBD>
<EFBFBD>
<EFBFBD> zPngStream.chunk_tRNScCs$t<00>|j|<02>}t|<03>d|jd<|S)N<>j<>@<40>gamma)r r|rErUr<>r<>r/r/r0<00>
chunk_gAMA<EFBFBD>szPngStream.chunk_gAMAcCsBt<00>|j|<02>}t<03>dt|<03>d|<03>}tdd<04>|D<00><01>|jd<|S)Nz>%dIr"css<00>|]}|dVqdS)r<>Nr/)<02>.0<EFBFBD>eltr/r/r0<00> <genexpr><3E><00><02>z'PngStream.chunk_cHRM.<locals>.<genexpr><3E> chromaticity)r r|rErr<00>unpack<63>len<65>tupler<65>)rLr[r\r:<00>raw_valsr/r/r0<00>
chunk_cHRM<EFBFBD>szPngStream.chunk_cHRMcCs>t<00>|j|<02>}|dkrtjr|Sd}t|<04><01>|d|jd<|S)NrzTruncated sRGB chunkr<00>srgb)r r|rErWr9r<>r<>r/r/r0<00>
chunk_sRGBszPngStream.chunk_sRGBc Cs<>t<00>|j|<02>}|dkrtjr|Sd}t|<04><01>t|d<03>t|d<04>}}|d}|dkr8|d|df}||jd<|S|dkrC||f|jd <|S)
Nr<EFBFBD>zTruncated pHYs chunkrr"r#r<00><>
F%u<02>?<3F>dpi<70>aspect)r r|rErWr9rUr<>) rLr[r\r:r=<00>px<70>py<70>unitr<74>r/r/r0<00>
chunk_pHYss
<08>zPngStream.chunk_pHYscCs<>t<00>|j|<02>}z
|<03>dd<02>\}}Wn ty|}d}Ynw|rD|<04>dd<05>}|<05>dd<06>}|dkr3|n||j|<||j|<|<00>t |<06><01>|S)Nr<4E>rr<>r<>r<><00>replace<63>exif)
r r|rE<00>splitr9rnr<>r<>r<>r<>)rLr[r\r:<00>k<>v<>v_strr/r/r0<00>
chunk_tEXt#s <02>  
zPngStream.chunk_tEXtcCs<>t<00>|j|<02>}z
|<03>dd<02>\}}Wn ty|}d}Ynw|r&|d}nd}|dkr6d|<06>d<06>}t|<07><01>z
t|dd<00><00>}WntyPtjrMd}n<01>Yn tj y[d}Ynw|r{|<04>
dd<08>}|<05>
dd <09>}||j |<|j |<|<00> t|<05><01>|S)
Nr<EFBFBD>rr<>rr<>z in zTXt chunkr<6B>r<>r<>)r r|rEr<>r9rYr>rWr4rsrnr<>r<>r<>r<>)rLr[r\r:r<>r<>r<>r=r/r/r0<00>
chunk_zTXt6s: <02>
  <04><02>  zPngStream.chunk_zTXtc Cs~t<00>|j|<02>}}z
|<03>dd<02>\}}Wn ty|YSwt|<03>dkr'|S|d|d|dd<00>}}}z |<03>dd<03>\}} }
Wn tyM|YSw|dkry|dkrwzt|
<EFBFBD>}
Wntyktjrj|YS<00>tj yv|YSw|S|dkr<>|
|j
d<z|<05> dd<08>}|<08> d d<08>}| <09> d d<08>} |
<EFBFBD> d d<08>}
Wn t y<>|YSwt |
|| <09>|j
|<|j|<|<00>t|
<EFBFBD><01>|S)
Nr<EFBFBD>rr!rsXML:com.adobe.xmp<6D>xmpr<70>r<>r<>)r r|rEr<>r9r<>r>rWr4rsr<>rnr<>r<>r<>r<>) rLr[r\<00>rr:r<><00>cf<63>cmr<6D><00>tkr<6B>r/r/r0<00>
chunk_iTXtXsN <02>   <02>  <02>
    <02>zPngStream.chunk_iTXtcCs t<00>|j|<02>}d||jd<|S)N<>Exifr<>)r r|rEr<>r<>r/r/r0<00>
chunk_eXIf<EFBFBD>szPngStream.chunk_eXIfcCs<>t<00>|j|<02>}|dkrtjr|Sd}t|<04><01>|jdur%d|_t<06>d<03>|St|<03>}|dks1|dkr8t<06>d<03>|S||_t|d<06>|j d<d|_
|S) Nr#z"APNG contains truncated acTL chunkz4Invalid APNG, will use default PNG image if possiblerlr"<00>loopz
image/apng) r r|rErWr9r<><00>warnings<67>warnrUr<>r<>)rLr[r\r:r=<00>n_framesr/r/r0<00>
chunk_acTL<EFBFBD>s$


zPngStream.chunk_acTLcCs@t<00>|j|<02>}|dkrtjr|Sd}t|<04><01>t|<03>}|jdur#|dks/|jdur5|j|dkr5d}t|<04><01>||_t|d<06>t|d<07>}}t|d<08>t|d <09>}} |j\}
} |||
ks_| || kred
}t|<04><01>|| ||| |f|j d <t
|d <0C>t
|d <0A>} } | dkr<>d} t | <0C>t | <0A>d|j d<|d|j d<|d|j d<|S)N<>z"APNG contains truncated fcTL chunkrr<00>#APNG contains frame sequence errorsr"r#r<>r$zAPNG contains invalid framesr<73><00><00><00>d<00><><00>duration<6F><00>disposal<61><00>blend) r r|rErWr9rUr<>rYr<>r<>r<><00>float)rLr[r\r:r=<00>seq<65>width<74>heightr<74>r<><00>im_w<5F>im_h<5F> delay_num<75> delay_denr/r/r0<00>
chunk_fcTL<EFBFBD>s4
zPngStream.chunk_fcTLcCsv|dkrtjrt<00>|j|<02>}|Sd}t|<04><01>t<00>|jd<01>}t|<03>}|j|dkr.d}t|<04><01>||_|<00>|d|d<00>S)Nr"z"APNG contains truncated fDAT chunkrr) r rWr|rEr9rUr<>rYr<>)rLr[r\r:r=rr/r/r0<00>
chunk_fdAT<EFBFBD>szPngStream.chunk_fdAT)r<>rerGrHr)r[rer\rerGrd)r[rer\rerGr)r)r*r+rMr<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>rrrr<00> __classcell__r/r/r<>r0r<>qs, 












"
*

r<><00>prefixrdrGr<>cCs|dd<01>tkS)Nr#)<01>_MAGIC)rr/r/r0<00>_accept<70>rCrcs<>eZdZdZdZd$dd<06>Zedd<08><00>Zd$d d
<EFBFBD>Zd%d d<0E>Z d&d'dd<13>Z
d(dd<15>Z d$dd<17>Z d)dd<1B>Z d$dd<1D>Zd*dd <20>Zd+<2B>fd"d#<23> Z<10>ZS),<2C> PngImageFile<6C>PNGzPortable network graphicsrGrHc Cs<>t|j<01>d<01><01>sd}t|<01><01>|j|_d|_g|_t|j<01>|_ |j<08><02>\}}}z
|j<08> |||<04>}Wn0t
y:Yn0t yat <0C> d|||<04>t<0E>|j|<04>}|dd<07><00><10>r_|j<06>||f<02>Ynw|j<08>||<05>q|jj|_|jj|_|jj|_d|_|jj|_|jj|_|jjp<>d|_|j<18> dd <09>|_!|jj"r<>|jj"\}}t#<23>$||<07>|_%|d
kr<>|d |_&n||_&|jjdur<>d |_'|j<08>(<28>|j&|_)|j<04>*<2A>|_+|j!r<>|jd7_|<00>,d<03>|jdk|_-dS) Nr#znot a PNG filerT<>%r %s %s (unknown)rr!r<>F<>fdATr").rrErSrY<00>_fp<66>_PngImageFile__frame<6D>private_chunksr<73><00>pngror<><00>AttributeErrorrkrlr r|<00>islowerrfrwr<><00>_moder<65><00>_sizer<65>r<><00>_textr<74>r<>r<><00>custom_mimetyper<65>r<00>getr<74>r<>r <00>raw<61>palette<74>_PngImageFile__prepare_idat<61>!_close_exclusive_fp_after_loadingr<67><00>_PngImageFile__rewind_idatrT<00>_PngImageFile__rewind<6E>_seek<65> is_animated)rLr=rZr[r\r:<00>rawmoder@r/r/r0<00>_open<65>sZ   <04><02><02>




   
 
zPngImageFile._opencCsD|jdur|jr|j}|<00>|jd<00>|<00><05>|jr|<00>|<01>|jS)Nr)r+r5r$rRr<00>load)rL<00>framer/r/r0r<>s

zPngImageFile.textcCsl|jdur d}t|<01><01>|j<00>|jddd<00>|jdusJ<00>|j<04><05>|j<04><06>|jr1|j<00><06>d|_dS)zVerify PNG fileNz)verify must be called directly after openrr!r#)rE<00> RuntimeErrorrRr<>r&r~rb<00> _exclusive_fp)rLr=r/r/r0r~+s




zPngImageFile.verifyr9rec Cs<>|<00>|<01>sdS||jkr|<00>dd<02>|j}t|jd|d<00>D]!}z|<00>|<03>Wqty@}z |<00>|<02>d}t|<05>|<04>d}~wwdS)NrTrzno more images in APNG file)<06> _seek_checkr$r4<00>ranger<65>rR)rLr9<00>
last_frame<EFBFBD>frvr=r/r/r0rR=s

 

<08><02><04>zPngImageFile.seekFr<46>r<>c Cs|jdusJ<00>||dkr]|r6|j<01>|j<03>|j<00><04>|j|_d|_|jr(d|_|jj |_
|jj |_ |j|_ d|_d|_|j
<EFBFBD>dd<03>|_|j
<EFBFBD>d<04>|_|j
<EFBFBD>d<05>|_|j
<EFBFBD>d<06>|_d|_n<>||jdkrmd|<01><00>}t|<03><01>|<00><17>|jr}|j<07>|j|j<14>|j<07><19>|_|j|_ |jr<>t<1A>|j |j<06>d|_d} |j <0A>d
<EFBFBD>z
|j<00><1C>\}}}Wn tjtfy<>Yndw|d kr<>d }t |<03><01>|d kr<>|r<>d}t|<03><01>d }z
|j<00>!|||<07>Wn?t"y<>Yn8t y<>|dkr<>|d
8}|r<>||_Yn#t<1A>|j |<07>Ynt#<23>yt$<24>%d|||<07>t<1A>|j |<07>Ynwq<>||_|jj |_ |j
<EFBFBD>d<04>|_|j
<EFBFBD>d<05>|_|j
<EFBFBD>d<06>|_|j <0C>s?d}t |<03><01>|jdu<00>rP|jt&j'k<02>rPt&j(|_d|_|jt&j'k<02>rq|j<0E>ro|j<0E><19>|_|<00>)|j|j<14>|_dSdS|jt&j(k<02>r<>t*j+<2B>,|j-|j.<2E>|_|<00>)|j|j<14>|_dSdS)Nrr<>Frrr<>rzcannot seek to frame Tr"rxzNo more images in APNG file<6C>fcTLzAPNG missing frame datar"r!zimage not found in APNG frame)/r&r#rRr3r<>r2r0<00>im<69>pyaccessr<73>r<>r<>r<>rE<00>_prev_im<69>disposer-r<><00>
dispose_op<EFBFBD>blend_op<6F>dispose_extentr$r9r8<00>paster<65>r r|rSrrrsrYr<>ro<00>UnicodeDecodeErrorr'rkrlr(r.r-<00>_cropr <00>core<72>fill<6C>mode<64>size)rLr9r<>r=<00> frame_startrZr[r\r/r/r0r4Ls<>



  <02>  <02><02>!
 <04><04>zPngImageFile._seekcCs|jSrI)r$r]r/r/r0rT<00>szPngImageFile.tellcCs0|j<00>d<01>r |jd|_|j|_tj<05>|<00>dS)z"internal: prepare to read PNG filer<65>)rN)r<>r-<00> decoderconfigr0<00>_PngImageFile__idatr <00> load_preparer]r/r/r0rR<00>s  zPngImageFile.load_prepare<72>
read_bytesrdcCs<>|jdusJ<00>|jdkrN|j<02>d<03>|j<00><03>\}}}|dvr(|j<00>|||<04>dS|dkrFz
|j<00>|||<04>Wn ty?Ynw|d|_n||_|jdks |dkrV|j}nt||j<01>}|j||_|j<02>|<01>S)zinternal: read more image dataNrr")<03>IDATsDDATr"r<>r")r&rQrErSrhror<><00>min)rLrSrZr[r\r/r/r0<00> load_read<61>s*
  <02> 
<EFBFBD>   zPngImageFile.load_readc Cs&|jdusJ<00>|jdkr|j<02>|j<01> |j<02>d<04>z
|j<00><03>\}}}Wn tjtfy0Yn<>w|dkr6n<36>|dkrI|jrId|_|j<00> |||<03>noz
|j<00>
|||<03>Wnct y\Yn\t y<>|dkrj|d8}z t <0A>|j|<03>Wnty<>}z t jr<>WYd}~Yn3|<04>d}~wwYn)ty<>t<12>d|||<03>t <0A>|j|<03>}|d d
<EFBFBD><00><14>r<>|j<15>||df<03>Ynwq|jj|_|js<>|j<00><19>d|_dS|j<1A>r |jtjk<02>r|<00>|j|j <20>}|jj!d kr<>d |j"vr<>|<06>#d |j"d <00>}n|<06>$d <0A>}|j<1A>%||j |<07>|j|_|j&<26>rd|_&dSdSdSdS)z%internal: finished reading image dataNrTr"rxr@r"r!rr!rr<>r )'r&rQrErSrrrsrYr5r0rhrorIr<>r r|r{rWr'rkrlr(r%rfr<>r+rbrCrFr1r3rJrArGrMr<><00>convert_transparent<6E>convertrHrB)rLrZr[r\rvr:<00>updated<65>maskr/r/r0<00>load_end<6E>sr
 <02>  <08><02><04> <04><02><02>
#


<06>

<08>
zPngImageFile.load_end<6E>dict[str, Any] | NonecCs6d|jvr |<00><01>d|jvrd|jvrdS|<00><02><00><03>S)Nr<4E>zRaw profile type exif)r<>r8<00>getexif<69>_get_merged_dictr]r/r/r0<00>_getexifs
 zPngImageFile._getexif<69>
Image.Exifcsd|jvr |<00><01>t<02><00><03>S)Nr<4E>)r<>r8r<>r]r]r<>r/r0r]s

zPngImageFile.getexifr)r9rerGrHr<>)r9rer<>r<>rGrH)rGre)rSrerGrd)rGr\)rGr`)r)r*r+<00>format<61>format_descriptionr7<00>propertyr<79>r~rRr4rTrRrVr[r_r]rr/r/r<>r0r<00>s
C


 
a

"
:r)r<00>r<>)<03>L;1rdr<>)r<00>r<>)r<00>r<>)r<00>r<>)rrhrg)r<00>r<>)rrd<00>)rrfrj)rrgrj)rrhrj)rrhrf)r rh<00>)rrerrrr<00>Irrrrrrrr cGsJd<01>|<02>}|<00>tt|<02><01>|<00>|<00>|<02>t|t|<01><01>}|<00>t|<03><01>dS)z'Write a PNG chunk (including CRC field)r<>N)<05>join<69>write<74>o32r<32>rB<00>rErZr@rwr/r/r0<00>putchunk:s

rqc@<01>eZdZdd<02>Zd
dd<08>Zd S) <0B>_idatcCs||_||_dSrI)rE<00>chunk)rLrErtr/r/r0rMHrNz_idat.__init__r@rdrGrHcCs|<00>|jd|<01>dS)NrT)rtrE<00>rLr@r/r/r0rnL<00>z _idat.writeN<65>r@rdrGrH<00>r)r*r+rMrnr/r/r/r0rsEsrsc@rr) <0B>_fdatcCs||_||_||_dSrI)rErtr<>)rLrErtr<>r/r/r0rMSs
z_fdat.__init__r@rdrGrHcCs*|<00>|jdt|j<03>|<01>|jd7_dS)Nr"r)rtrEror<>rur/r/r0rnXsz _fdat.writeNrwrxr/r/r/r0ryPsryc Cs<|j<00>d<01>}|j<00>d|j<02>dd<03><02>}|j<00>d|j<02>dtj<04><02>} |j<00>d|j<02>dtj<06><02>}
|r4t<07>|<06>} nt<07>|g|<06>} g} d} | D]<5D>}t <09>
|<0E>D]<5D>}|j |krT|<0F> <0C>}n|<0F> |<03>}|j<00> <0C>}t|ttf<02>rl|| |d<n|dur|d|jvr||jd|d<t| ttf<02>r<>| | |d<t|
ttf<02>r<>|
| |d<| d7} | <0C>r1| d}|d<00>d<04>}|d<00>d<05>}|tjkr<>t| <0C>d kr<>tj}|tjkr<>|d
<00> <0C>}tj<15>d |jd <0C>}|d }|r<>|<15>|<16>}nd|j}|<14>||<16>n|tjkr<>| dd
}n|d
}t<1A>|<0F> d <0B>|<14> d <0B><01>}|jdd<11>}|<16>s0||<10>d<04>k<02>r0||<10>d<05>k<02>r0d|v<00>r0|dd|d7<qHnd}| <0C>|||d<12><03>qHqAt| <0C>dk<02>rN|<05>sN| dd
S||dtt| <0C><01>t|<08><01>|<05>r{|j |k<03>ri|<00> |<03>}t<1F> |t!||<02>dd|jd|fg<01>d}t"| <0C>D]<5D>\}}|d
}|d <00>s<>d|j}n |d }|<0F>|<16>}|j}|d}t#t$|<10>dd<03><02><01>}|<10>d| <09>}|<10>d|
<EFBFBD>}||dt|<18>t|d<00>t|d<00>t|d<00>t|d<00>t%|<1C>t%d<16>t&|<1D>t&|<1E><01> |d7}|dk<02>r|<05>st<1F> |t!||<02>dd|jd|fg<01><00>q<>t'|||<18>}t<1F> ||dd|jd|fg<01>|j(}<18>q<>dS)Nr rrrrr<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> encoderinfor!rAr )rrrrr<>r<><00><><EFBFBD><EFBFBD><EFBFBD>F)<01>
alpha_only)rAr<>r{sacTLr<4C>r@r ))r{r-r<>r(r,r1r2<00> itertools<6C>chainr <00>IteratorrMr<>rXr<><00>listr<74>r.r<>r-r rKrLrN<00>croprHr
<00>subtract_modulo<6C>getbboxrfror <00>_savers<00> enumeratere<00>round<6E>o16rryr<>) rArErtrMr6r<><00> append_imagesr rrrr<00> im_frames<65> frame_count<6E>im_seq<65>im_framer{<00>previous<75> prev_disposal<61>
prev_blend<EFBFBD>base_imrDr<><00>deltar<61>r9<00>
frame_datarN<00>frame_duration<6F>frame_disposal<61> frame_blend<6E> fdat_chunksr/r/r0<00>_write_multiple_frames]s<>  



  
  

<04> <04>
<02><02>4 
<04> 
$
 
  



<04> <08> <04>
<04>r<EFBFBD>rA<00> Image.ImagerErF<00>filenamer<65>rHcCst|||dd<02>dS)NT)<01>save_all)r<>)rArEr<>r/r/r0<00> _save_all<6C>rvr<>Fc'
sD|rU|j<00>d|j<02>d<01><01>}t<03>}t<03><00>|j<00>dg<00>}t<04>|g|<07>D]}t<06>|<08>D]} |<06>| j <09><00><00>| j
<EFBFBD>q(q!dD]}
|
|vrBnq:|<06> <0B>}
t <0C>fdd<05>t d<06>D<00><01>} n|j
} |j }
|
} |
dkr<>d|jvrqtd |jd>d
<EFBFBD>} n|jr<>ttt|j<0F><12>d <00>d d
<EFBFBD>d <09>} nd
} | d kr<>| dkr<>d }n | d kr<>d}nd }| d|<0E><00>7} |j<00>dd<10>|j<00>dd<12>|j<00>dd<12>|j<00>dd<15>f|_z t| \}}}Wnty<>}z d|
<EFBFBD>d<17>}t|<13>|<12>d}~ww|<01>t<18>||dt| d<00>t| d <00>||ddd<1A> gd<1B>}|j<00>d|j<02>d<1C><01>}|<15>r d}|dt<1A>|<15>}||d|<17>|<14>d <20>|j<00>d!<21>}|<18>rxgd"<22>}|jD]G}|dd<06>\}}||v<00>rL|<14>|<1B>||||<17><00>q0||v<00>rY||||<17><00>q0|d d<06><00><1E><00>rvt|<1A>d k<02>ol|d}|<1C>sv||||<17><00>q0|j dk<02>r<>| d }|j<1F> d#<23>d|<1D>}t|<1E>|k<00>r<>|d7}t|<1E>|k<00>s<>||d$|<1E>|j<00>d%|j<02>d%d<00><02>}|<1F>s<>|dk<02>r*|j dk<02>r<>| } t!|t"<22><02>r<>||d&|d| <20><00>nztdtd'|<1F><02>}d(|d}!||d&|!d| <20><00>na|j d)v<00>rtdtd*|<1F><02>}||d&t#|<1F><01>nJ|j d#k<02>r|\}"}#}$||d&t#|"<22>t#|#<23>t#|$<24><00>n.d%|jv<00>r)d+}t|<13><01>n!|j dk<02>rK|j<1F>$<24>d,k<02>rK|j<1F> d,d-<2D>}!| } ||d&|!d| <20><00>|j<00>d.<2E>}%|%<25>rp||d/tt%|%dd0d1<00><01>tt%|%d d0d1<00><01>d2<64>|<18>r<>d3d4g}|jD]}|dd<06>\}}||v<00>r<>|<14>|<1B>||||<17><00>qz|j<00>d5<64>}&|&<26>r<>t!|&t&j'<27><02>r<>|&<26>(d6<64>}&|&<26>)d7<64><01>r<>|&d8d<00>}&||d9|&<26>|<04>r<>t*||||
|||<07>}|<00>r<>t+<2B>,|t-||<03>d:d;|j
d|fg<01>|<18>r|jD](}|dd<06>\}}|d d<06><00><1E><00>r t|<1A>d k<02>o|d}|<1C>r ||||<17><00>q<>||d<d<15>t.|d=<3D><02>r |<01>/<2F>dSdS)>Nr<4E>r<>)r rrc3s&<00>|]<0E>t<00>fdd<01><08>D<00><01>VqdS)c3s<00>|]}|<01>VqdSrIr/)r<><00>
frame_size<EFBFBD>r<>r/r0r<><00>r<>z"_save.<locals>.<genexpr>.<genexpr>N)<01>max)r<><00><01>sizesr<73>r0r<><00>s<02>$z_save.<locals>.<genexpr>r!r<00>bitsr<00>r%r$r"<00>;<3B>optimizeF<65>compress_levelrz<00> compress_type<70>
dictionaryr<EFBFBD>zcannot write mode z as PNGsIHDRrr<>)scHRMsgAMAssBIT<49>sRGBstIMEr<45>s ICC Profiler<65>siCCPr<50><00>pnginfo)ssPLTr<54>r<>r<>rsPLTEr<45>stRNS<4E><53><00><00>)rrrlri<><69>z%cannot use transparency for this moder <00>Ar<41>spHYsr<73>g<00>?rdsbKGDshISTr<54>r#r<>r&seXIfr<66>r<>rx<00>flush)0r{r-r<><00>setr~rr r<>r<>rMrNrQr<>r=rUr/r<>r<><00>getdata<74> encoderconfig<69> _OUTMODES<45>KeyErrorr{rnrror4r<><00>remover<65>r(rA<00>
getpaletter<EFBFBD>rdr<><00>getpalettemoderer <00>Exif<69>tobytes<65>
startswithr<EFBFBD>r r<>rs<00>hasattrr<72>)'rArEr<>rtr<>r<><00>modesr<73>r<>r<>rMrN<00>outmode<64>colorsr<73>r6<00> bit_depth<74>
color_typervr=r<><00>icc<63>namer@r<><00>chunks_multiple_allowed<65>
info_chunkrZr<><00>palette_byte_number<65> palette_bytesr<73><00> alpha_bytes<65>alpha<68>red<65>green<65>bluer<65>r<>r/r<>r0r<><00>s0 <04> <02><02>
$    <06> 
<08><02>


<04>  
 



 <04> <0E>      
" <02> <04>


 <04> 
   <04>$
 <04>   <04>r<EFBFBD>cKsDGdd<02>d<02>}dd<04>}|<02>}z||_t||d|<03>W|`|jS|`w)z4Return a list of PNG chunks representing this image.c@s$eZdZgZd dd<06>Zd dd <09>Zd
S) zgetchunks.<locals>.collectorr@rdrGrHcSsdSrIr/rur/r/r0rn<00>r_z"getchunks.<locals>.collector.writertcSs|j<00>|<01>dSrI)r@rf)rLrtr/r/r0rf<00>rCz#getchunks.<locals>.collector.appendNrw)rtrdrGrH)r)r*r+r@rnrfr/r/r/r0<00> collector<6F>s
r<>cWs0d<01>|<02>}tt|t|<01><01><02>}|<00>|||f<03>dS)Nr<4E>)rmrorBrfrpr/r/r0rf<00>s
zgetchunks.<locals>.appendN)r{r<>r@)rA<00>paramsr<73>rfrEr/r/r0<00> getchunks<6B>s <06>r<EFBFBD>z.pngz.apngz image/png)r)rrdrGr<>)rAr<>rErFr<>r<>rGrH)E<>
__future__rr~<00>logging<6E>rerrrr4<00>enumr<00>typingrrrrr<>r r
r r r <00>_binaryrr<>rrUrrr<>rror<00> getLoggerr)rk<00>compiler<65>rVrr<>r<><00> SAFEBLOCKr7r<>r(r1r>rBrDr<>r<>r<>r<>rrr<>rqrsryr<>r<>r<>r<><00> register_openra<00> register_save<76>register_save_all<6C>register_extensions<6E> register_mimer/r/r/r0<00><module>s<>        
 <06>

]`
^U<06>   
K