ELF>@@@8 @@@@@@88@8@@@$$ ЭЭ`Э` ``TT@T@DDPtd((@(@QtdRtdЭЭ`Э`00/lib64/ld-linux-x86-64.so.2GNU GNUz:h';9667)9. ,|oo b\!M!4 hCv?1EIN\ &p [}Uб`ر`libpng16.so.16_ITM_deregisterTMCloneTableinflate__gmon_start__inflateEndinflateInit2__Jv_RegisterClasses_ITM_registerTMCloneTablepng_get_image_heightpng_create_read_structpng_destroy_read_structpng_create_info_structpng_read_infopng_start_read_imagepng_set_chunk_malloc_maxpng_set_read_fnpng_set_chunk_cache_maxpng_get_error_ptrpng_set_user_limitspng_read_endpng_errorpng_read_rowpng_set_interlace_handlinglibz.so.1inflateReset2libm.so.6libc.so.6fflushexit_IO_putcfopenstrncmpperrorfgetpos__assert_failstrtolfeoffsetpos__errno_locationfseeklongjmp_setjmpstdoutfputcfputsmemcpyfclosemalloc__ctype_b_locstderrfwritefprintf_IO_getcstrcmpstrerror__libc_start_mainferrorfree/opt/lampp/libZLIB_1.2.3.4PNG16_0GLIBC_2.3GLIBC_2.14GLIBC_2.2.5 4 pL*ii ui `б`6ر`7` `(`0`8`@`H`P` X` `` h` p` x``````````Ȱ`а`ذ``````` `!`" `#(`$0`%8`&@`'H`(P`)X`*``,h`-p`.x`0`1`2`3`4`5HH HtsH5Ҟ %Ԟ @%Ҟ h%ʞ h%ž h% h% h% h% h% hp% h`% h P% h @%z h 0%r h %j h %b h%Z h%R h%J h%B h%: h%2 h%* h%" h% hp% h`% hP% h@% h0% h % h% h%ڝ h%ҝ h %ʝ h!% h"% h#% h$% h%% h&% h'p% h(`% h)P% h*@%z h+0%r h, %j h-%b h.%Z h/%R h0%J h1AUH@'@p&@ATUSHHH|$f@HD$0HHD$ HD$u/HtH|$f@ HD$H@LHxPzD$D$H|$ H|$ 1jH|$ 1Ht$H|$ Z@ H|$ HHD$0uH|$ g@GHD$HtH { (g@Ht$0H|$ 1Ht$0H|$ H|$ A"H|$ AD9}DtH|$ 119HD$HtH /g@Ht$0H|$ Ht$0H|$ 1;D$HH[]A\A]HH= Sz@113HHAO0AGHA9EW@MOM_4EMi11ACxffATEEHA9AqMQ 11ADxffABEH9Aq,AAATAAAUAA;GDtH|$DŽ$tet{H|$1,fHD$(tH|$H|$}H[]A\A]A^A_fHD$(HDŽ$h@tH|$1녋$KADpL|$`E9| D;l$X$G$.A1LHD$`D$hHD$xDŽ$D$D$@D$PDŽ$J$H{@H_H|$}t EE9FLfDEt$E9(ARH$HD$(H|$1fHD$(T$\u D$T9$tP|$P~\Dl$XAD9DNHD$HpDHHzh@~uH|$L$Df@wf wf wf yf lf _f Ptu@ tg@"i@fDHDŽ$8h@u@|tg@i@u@ tg@i@HHBDAWAVAAUAATIUSHXH,T$҃H [q sj@_A$,L=8q  `z@L1 z@L Lz@@ `z@LA$0A$(EH=p ;i@1/I$A$0D9tPAL$v- sFFoOgFIg*MRHc@xDGKb\@!@1LA$XD$I|$@E$,A$(I$HHD$M$@PCCiAGPAGLTADIWRDHIA@ <IIw0H{@ǃ4N'H1I|$@AtAT$=FDuAD$$1I|$@AMtAT$= DuI|$@AD$( =I|$@AD$,=I|$@AD$-=I|$@AD$.=tI|$@AD$/=PAT$,A|$-AD$0A AL$-$͠o@@BGRsXnTIBsf LACp~sYHprf@ TADII$H I$@HxDTADIA$(P@\z@L`z@>@ Kz@FD`z@ tD$I|$@I$E$,A$( L%HX[]A\A]A^A_fDtXTitXTzuI$HIIw0Eo@H{@ǃ4O(A5AHE1@D9AI|$@A^nUtAT$=, uI|$@AEUtAT$= DLI$@k k IDŽ$@LFX@‰H 1ω L9ƈVuI|$@Ht$=k ;k BL2fI|$ri@? I$zf.TSIh@ PCCi@9fI|$ii@f.cARftXAMAg@EMItt(SNRt^tXTzf.@UI$HH HYS ;SBl A$,TADIC AG@DIIw0H{@ǃ4 1L I$@AT$<9VOLc1MOI+fDA|0ALf9Hf9HH0H{@ǃ46 I$HM$@HGHWDPJHW G(G,E҉O0D9Dr 9rH;WH1r 9sABLA9F I$H IIw0Ao@H{@ǃ4sL 2fDmHE1M@E9_EI~@EgD)D$tAV=C uI~@MatAV=! ?I|$@Dt$A1AtAT$=AwAtrI|$@AAtAT$=ufDI|$@AAtAT$=}Auf.I$I$@g g IDŽ$@LFX‰H 1ω L9ƈVucAT$fDAT$DfDAT$fDAT$fDAT$8fDATADI0v@o tg@|@bfIT$H=,f Aj@f@f@1tXTiD@fD,Rf.At$$A|$(A|$.A|$/<ID$2E1EE1EAHD$Ef.At$$A)DȃK)ȉ)ωHHuET$MLLhu@tg@P|@Ҿ0v@' tg@g@蹾u@tg@|@蠾Oi@Lv@tg@P|@u0v@( tg@{@\zi@LHSj@LEi@Lxi@Lki@L^f*9j@Li@L0f f1f.AWAVAUATUSHH(D,D(EHDEAD`v@51ҋ,`v@1D13,`v@D13,`v@E䉫0u!h13,`v@AFHuHKH{@H蒾ǃ4E1HPAAƃu㋃,E1E1D$D$ D$`v@AD1AD3$`v@D1AD3$`v@D1AD3$`v@>fADDDAAD1AD3$`v@D$x DA9E9wHpuj@H0E1HCAAăuADNEIE11HyAAŃuEa@0E1AAtHu4fD|$ DNEI%AmDA9r *@AH!AWD9D4rDA)DATAEDAEDAULAELAEDAEDAM|  8A%AA@@@@-[ZZZD ǁ04DH(H[]A\A]A^A_D$11҉(H Y rj@袻DL=Y  uz@DLr@ ?z@ELAJDA  z@L(DA E`z@LH=X Dvj@1pH X |j@к,L%X  z@L衸 z@L tmz@La@ u|`z@LFH5'X 5n`z@`z@`z@`z@둃`z@d`z@3z@z@11DH蓼aj@߁@@@@[ZZZ Щ4DDzf.AWAVIAUATIUSH8H|$(ҸMI 4, AE 1LtŃuA(A46A< H RDHII9( I}@Iu I@A<HC@kDD$ IHD$IHHD$ @t HA8C$o@f.ADIEIE|$IuHHtDA9OA8MlA<AAAAAAD|$ fD|$ AjfD|$ AZf\H `v@1@3 `v@1@3 `v@1@3 `v@KHtDD$ E+D$ < ] 4IED{HA<PSPCLI}@Ht$ADž4M.IHH|$ DA7A4IHLtI@HzC@kDADž8D$ D|$ AH>v@ tg@g@γfDu#D{KafD{JNfDA<MHM>DIG HH A(W9AW(w+HHx ~AG(IG 1ҋDI}@AG, AG0]AG,A;G0oAG,I}@AtAEAPsP~CLKCLCHD13`v@CHkD{HAH8[]A\A]A^A_ÐL;Hs0I@ALJ4)A88H R rj@HQ HD$ `z@Ht$ر z@Ht$跱 tz@Ht$薱@ `z@Ht$vKHT$ 1H=NQ Vk@ڱA<IHF,N09rHV ~(;z uHVz|$ 9HV ~(;Du;z JH;VHHH @D$ D$ TADIC@`ADž8[HGNP  I9(I@ADž8H A(A,D$ z@iCUD{TkPCT`z@`z@W)9L$ FHV F(HDz fD9rH;V H1z 9sABL9L$ z@3H;VDD$ 1LMtŃuA,A4I@.O ,O IDž@LVXf‰H 1ω V L9u͉N N   |$ GNPADž4ADž<H|$(L$ >v@2 tg@~@谮>k@LAM k@LAE >v@1 tg@~@cL>v@7 tg@@BAEu>v@ tg@}@"j@L u@Atg@~@>v@ tg@}@ޭu@?tg@ck@ŭu@Wtg@k@謭k@L調>v@ tg@g@聭>v@ tg@g@hL >v@ tg@g@GL>v@$ tg@*k@&j@L$Lܱ>v@ tg@p}@>v@ tg@j@ڬ>v@ tg@j@k@L迾L$j@L襾u@8tg@(@|>v@ tg@k@c>v@ tg@@Jf.AWAAVIAUIATL%G UH-G SL)1HHHtLLDAHH9uH[]A\A]A^A_Ðf.fHH0x%x%.4x0x0%luunexpected error:read failure:INVALID (internal error):invalidzlib error:libpng error:libpng warning:%s: %s %s [%s] %s: %s %s 1.6.37OOM allocating png_structOOM allocating info structure INFO END \%.3oINVALIDHEAD ERR %.2x %s fgetposreskiprereadfsetposcontrib/tools/pngfix.cfile->chunk != ((void *)0)file->idat == ((void *)0)file->chunk == ((void *)0)a_digits > 0file read[no message]Z_*INVALID_RC*unexpected : %szlib error: %d (%s) (%s) invalid distance too far backextra compressed datazlib->rewrite_offset == 0CHKTFBOK OPTsupfaststdfastdefaultmaximum[no_message] %s %s %d %d SKP %s %d %s 1.2.11zlib checksum[truncated]zlib->state >= 0test_bits == 15zlib.ok_bits == max_bits %lu 0x%.8x 0x%.8x bad CRC in critical chunkskipped: bad CRCIHDR lengthIHDR: colour typeIHDR: bit depthIHDR: widthIHDR: heightIHDR: compression methodIHDR: filter methodIHDR: interlace methodtoo shortiTXt chunk lengthextra uncompressed datacould not uncompress IDATout of memoryread beyond IEND %lu SYNC damaged PNG streamread callback for 0 bytesfile->read_count == 0not a PNG (too short)not a PNG (signature)file->state == 1not a PNG (IHDR)file->read_count == 8idat != ((void *)0)read beyond end of IDAT %lu 0x%.8x cur != idat->idat_list_tailcur != ((void *)0)pending rewritewrite byte--debug--max=--max--optimize--out=--suffix=--prefix=--strip=none--strip=crc--strip=unsafe--strip=unused--strip=transform--strip=color--strip=all--errors--quietFILE %s -> %s rbwboutput write error--warnings--verboseZ_VERSION_ERRORZ_BUF_ERRORZ_MEM_ERRORZ_DATA_ERRORZ_STREAM_ERRORZ_ERRNOZ_OKZ_STREAM_ENDZ_NEED_DICTwarninglibpngzlibunexpected OPERATION the file. --optimize (-o): by the above options: values. MESSAGES --quiet (-q): --errors (-e): --warnings (-w): OUTPUT --out=: --suffix=: --prefix=: INTERNAL OPTIONSEXIT CODES *** SUBJECT TO CHANGE *** non-zero code is returned). invalid arguments.DESCRIPTION pngfix: errors). be written to a new file. CHANGE in the future: The various fields are$2 reason: One of:X#@H#@"@"@"@"@ #@0#@1@2@`2@2@2@02@X1@0@M@M@K@xM@`M@M@@M@^@\@p\@`\@P\@@\@0\@[@\@l@l@l@l@l@l@l@l@l@ m@m@m@f@g@k@m@P@@#n@)m@@0@5m@Em@@ȁ@@8@h@@@H@@@@0@`@@؄@(@Zm@x@vm@ȅ@@`@@@0@@Ї@@h@@m@@m@@@@m@@m@@m@0@m@X@@m@؊@(@n@X@@؋@n@+n@6n@(@x@Ȍ@@X@@@؍@(@Rn@x@@@(@x@ȏ@pn@n@n@@h@@@n@H@@@@X@@@8@n@@ؓ@(@P@@@@h@n@@@8@p@@@n@@@@n@ؗ@@`@@@8@@@@P@@ؚ@ @p@@@P@@М@ @p@@@P@@@IDAT_endrechunk_lengthprocess_IDATprocess_iTXtzlib_flevelzlib_advancezlib_runzlib_resetzlib_checkprocess_zTXt_iCCPuarb_mult32calc_image_sizeprocess_chunkread_callbackIDAT_initallocate0w,aQ mjp5c飕d2yҗ+L |~-d jHqA}mQDžӃVlkdzbeO\lcc=  n;^iLA`rqgjm Zjz  ' }Dңhi]Wbgeq6lknv+ӉZzJgo߹ホCՎ`~ѡ8ROggW?K6H+ L J6`zA`Ugn1yiFafo%6hRw G "/&U;( Z+j\1е,[d&c윣ju m ?6grWJz+{8 Ғ |! ӆBhn[&wowGZpj;f\ eibkaElx TN³9a&g`MGiIwn>JjѮZf @;7SŞϲG0򽽊º0S$6к)WTg#.zfJah]+o*7 Z-@ABCDEFGHIJKLMNOPQRSTUVWXYZ01234!abcdefghijklmnopqrstuvwxyz56789Usage: %s {[options] png-file} zlib->z.avail_out == 0 || zlib->z.avail_in == 0zlib->z.avail_in == 0 || endrc != 0in_bytes == nbytes || endrc != 0zlib->rewrite_offset < chunk->chunk_lengthfile->chunk->chunk_type == (((png_uint_32)(73) << (24)) | ((png_uint_32)(68) << (16)) | ((png_uint_32)(65) << (8)) | ((png_uint_32)(84) << (0)))file->image_digits >= 1 && file->image_digits <= 5chunk != ((void *)0) && file->idat == ((void *)0)file->idat != ((void *)0) && file->chunk != ((void *)0)next_type == (((png_uint_32)(73) << (24)) | ((png_uint_32)(68) << (16)) | ((png_uint_32)(65) << (8)) | ((png_uint_32)(84) << (0)))IDAT: uncompressed data too small(file->status_code & 0x08) == 0(file->status_code & 0x08) != 0length == (((png_uint_32)(137) << (24)) | ((png_uint_32)(80) << (16)) | ((png_uint_32)(78) << (8)) | ((png_uint_32)(71) << (0))) && type == (((png_uint_32)(13) << (24)) | ((png_uint_32)(10) << (16)) | ((png_uint_32)(26) << (8)) | ((png_uint_32)(10) << (0)))idat->idat_index == idat->idat_lengthcur != ((void *)0) && cur->count > 0idat->idat_count == cur->countidat->idat_index == idat->idat_length && idat->idat_length == cur->lengths[count]type == (((png_uint_32)(73) << (24)) | ((png_uint_32)(68) << (16)) | ((png_uint_32)(65) << (8)) | ((png_uint_32)(84) << (0)))%s: output file name too long: %s%s%s %s: output file name too long: %s%s Tests, optimizes and optionally fixes the zlib header in PNG files. Optionally, when fixing, strips ancillary chunks from the file. By default files are just checked for readability with a summary of the of zlib issues founds for each compressed chunk and the IDAT stream in Find the smallest deflate window size for the compressed data. --strip=[none|crc|unsafe|unused|transform|color|all]: none (default): Retain all chunks. crc: Remove chunks with a bad CRC. unsafe: Remove chunks that may be unsafe to retain if the image data is modified. This is set automatically if --max is given but may be cancelled by a later --strip=none. unused: Remove chunks not used by libpng when decoding an image. This retains any chunks that might be used by libpng image transformations. transform: unused+bKGD. color: transform+iCCP and cHRM. all: color+gAMA and sRGB. Only ancillary chunks are ever removed. In addition the tRNS and sBIT chunks are never removed as they affect exact interpretation of the image pixel values. The following known chunks are treated specially gAMA, sRGB [all]: These specify the gamma encoding used for the pixel cHRM, iCCP [color]: These specify how colors are encoded. iCCP also specifies the exact encoding of a pixel value; however, in practice most programs will ignore it. bKGD [transform]: This is used by libpng transforms. --max=: Use IDAT chunks sized . If no number is given the IDAT chunks will be the maximum size permitted; 2^31-1 bytes. If the option is omitted the original chunk sizes will not be changed. When the option is given --strip=unsafe is set automatically. This may be cancelled if you know that all unknown unsafe-to-copy chunks really are safe to copy across an IDAT size change. This is true of all chunks that have ever been formally proposed as PNG extensions. By default the program only outputs summaries for each file. Do not output the summaries except for files that cannot be read. With two --quiets these are not output either. Output errors from libpng and the program (except too-far-back). Output warnings from libpng. By default nothing is written. Write the optimized/corrected version of the next PNG to . This overrides the following two options Set --out= for all following files unless overridden on a per-file basis by explicit --out. Set --out= for all the following files unless overridden on a per-file basis by explicit --out. These two options can be used together to produce a suffix and prefix. The program exit code is value in the range 0..127 holding a bit mask of the following codes. Notice that the results for each file are combined together - check one file at a time to get a meaningful error code! 0x01: The zlib too-far-back error existed in at least one chunk. 0x02: At least one chunk had a CRC error. 0x04: A chunk length was incorrect. 0x08: The file was truncated. Errors less than 16 are potentially recoverable, for a single file if the exit code is less than 16 the file could be read (with corrections if a 0x10: The file could not be read, even with corrections. 0x20: The output file could not be written. 0x40: An unexpected, potentially internal, error occurred. If the command line arguments are incorrect the program exits with exit 255. Some older operating systems only support 7-bit exit codes, on those systems it is suggested that this program is first tested by supplying checks each PNG file on the command line for errors. By default errors are not output and the program just returns an exit code and prints a summary. With the --quiet (-q) option the summaries are suppressed too and the program only outputs unexpected errors (internal errors and file open Various known problems in PNG files are fixed while the file is being read The exit code says what problems were fixed. In particular the zlib error: "invalid distance too far back" caused by an incorrect optimization of a zlib stream is fixed in any compressed chunk in which it is encountered. An integrity problem of the PNG stream caused by a bug in libpng which wrote an incorrect chunk length is also fixed. Chunk CRC errors are automatically fixed up. Setting one of the "OUTPUT" options causes the possibly modified file to Notice that some PNG files with the zlib optimization problem can still be read by libpng under some circumstances. This program will still detect and, if requested, correct the error. The program will reliably process all files on the command line unless either an invalid argument causes the usage message (this message) to be produced or the program crashes. The summary lines describe issues encountered with the zlib compressed stream of a chunk. They have the following format, which is SUBJECT TO chunk reason comp-level p1 p2 p3 p4 file p1 through p4 vary according to the 'reason'. There are always 8 space separated fields. Reasons specific formats are: chunk ERR status code read-errno write-errno message file chunk SKP comp-level file-bits zlib-rc compressed message file chunk ??? comp-level file-bits ok-bits compressed uncompress file$1 chunk: The chunk type of a chunk in the file or 'HEAD' if a problem is reported by libpng at the start of the IDAT stream. CHK: A zlib header checksum was detected and fixed. TFB: The zlib too far back error was detected and fixed. OK : No errors were detected in the zlib stream and optimization was not requested, or was not possible. OPT: The zlib stream window bits value could be improved (and was). SKP: The chunk was skipped because of a zlib issue (zlib-rc) with explanation 'message' ERR: The read of the file was aborted. The parameters explain why.$3 status: For 'ERR' the accumulated status code from 'EXIT CODES' above. This is printed as a 2 digit hexadecimal value comp-level: The recorded compression level (FLEVEL) of a zlib stream expressed as a string {supfast,stdfast,default,maximum}$4 code: The file exit code; where stop was called, as a fairly terse string {warning,libpng,zlib,invalid,read,write,unexpected}. file-bits: The zlib window bits recorded in the file.$5 read-errno: A system errno value from a read translated by strerror(3). zlib-rc: A zlib return code as a string (see zlib.h). ok-bits: The smallest zlib window bits value that works.$6 write-errno:A system errno value from a write translated by strerror(3). compressed: The count of compressed bytes in the zlib stream, when the reason is 'SKP'; this is a count of the bytes read from the stream when the fatal error was encountered.$7 message: An error message (spaces replaced by _, as in all parameters), uncompress: The count of bytes from uncompressing the zlib stream; this may not be the same as the number of bytes in the image.$8 file: The name of the file (this may contain spaces).;"rh8u@v Uw8twPwhwwH8x8XX(HhXHx8hXȎؕ`ؗX(xzRx B*zRx $p0FJ w?;*3$"D\\BED J(D0 (G ABBL | (A ABBF D(I ABB4HADG0h AKH E DAN <rBOA A(Dp(A ABB<4ЁBBA D(D0k (A ABBB ,t :BBB D(C00G8AsYKtAt$A(tA4 tALȃPd`|H8AQ F Oh4@.AAG  AAI  AAA ,8VED j AAE 4ADD z AAK B FAG <ToBQB D(A0 (N BBB` ,OBDA  ABT LBEB B(A0A8D 8C0A(B BBBH dpBBB B(A0D8DP  8A0A(B BBBH E 8F0A(B BBBD <|BBB A(A0 (A BBNA LkBBB B(D0A8J 8C0A(B BBBJ L BBE E(D0A8D 8A0A(B BBBG L\xCBBB B(A0A8G` 8D0A(B BBBE Lx BBE B(D0A8Dp 8A0A(B BBBB LxpBEB E(D0A8G%a 8C0A(B BBBI DLeBEE E(H0H8M@l8A0A(B BBB p @P @ @ 4f@Э`ح`o@@@  `X @ @H o @oo @`F@V@f@v@@@@@@@@@@@&@6@F@V@f@v@@@@@@@@@@@&@6@F@V@f@v@@@@@@@@@@@&@6@F@V@xV4޼GCC: (GNU) 4.8.5 20150623 (Red Hat 4.8.5-11).shstrtab.interp.note.ABI-tag.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.jcr.dynamic.got.got.plt.data.bss.comment 8@8T@T !t@t$4o@(> @@F@No @ p[o @ j @ HtBX @X  ~@y0@00`@`Q4f@4f @f@@f8 (@(H@HЭ`Эح`ح`````б`ȱ0ȱ-