aboutsummaryrefslogtreecommitdiff
path: root/lzip-1.25.tar
blob: 0ee646d0f476522e3516dbd312c59987791b88c2 (plain)
ofshex dumpascii
0000 6c 7a 69 70 2d 31 2e 32 35 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/......................
0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0060 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000755.0000000.0000000.0000
0080 30 30 30 30 30 30 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 32 34 33 31 00 20 35 00 00 00 0000000.14744236057.012431..5...
00a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
00e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0100 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
0120 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0140 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
0160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0200 6c 7a 69 70 2d 31 2e 32 35 2f 49 4e 53 54 41 4c 4c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/INSTALL...............
0220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0280 30 30 30 35 31 30 33 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 33 34 36 31 00 20 30 00 00 00 0005103.14744236057.013461..0...
02a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0300 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
0320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0340 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
0360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0400 52 65 71 75 69 72 65 6d 65 6e 74 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 59 6f 75 20 77 69 Requirements.------------.You.wi
0420 6c 6c 20 6e 65 65 64 20 61 20 43 2b 2b 39 38 20 63 6f 6d 70 69 6c 65 72 20 77 69 74 68 20 73 75 ll.need.a.C++98.compiler.with.su
0440 70 70 6f 72 74 20 66 6f 72 20 27 6c 6f 6e 67 20 6c 6f 6e 67 27 2e 0a 28 67 63 63 20 33 2e 33 2e pport.for.'long.long'..(gcc.3.3.
0460 36 20 6f 72 20 6e 65 77 65 72 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 29 2e 0a 49 20 75 73 6.or.newer.is.recommended)..I.us
0480 65 20 67 63 63 20 36 2e 31 2e 30 20 61 6e 64 20 33 2e 33 2e 36 2c 20 62 75 74 20 74 68 65 20 63 e.gcc.6.1.0.and.3.3.6,.but.the.c
04a0 6f 64 65 20 73 68 6f 75 6c 64 20 63 6f 6d 70 69 6c 65 20 77 69 74 68 20 61 6e 79 20 73 74 61 6e ode.should.compile.with.any.stan
04c0 64 61 72 64 73 0a 63 6f 6d 70 6c 69 61 6e 74 20 63 6f 6d 70 69 6c 65 72 2e 0a 47 63 63 20 69 73 dards.compliant.compiler..Gcc.is
04e0 20 61 76 61 69 6c 61 62 6c 65 20 61 74 20 68 74 74 70 3a 2f 2f 67 63 63 2e 67 6e 75 2e 6f 72 67 .available.at.http://gcc.gnu.org
0500 0a 4c 7a 69 70 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 61 74 20 68 74 74 70 3a 2f 2f 77 77 77 .Lzip.is.available.at.http://www
0520 2e 6e 6f 6e 67 6e 75 2e 6f 72 67 2f 6c 7a 69 70 2f 6c 7a 69 70 2e 68 74 6d 6c 0a 0a 54 68 65 20 .nongnu.org/lzip/lzip.html..The.
0540 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 6d 75 73 74 20 61 6c 6c 6f 77 20 73 69 67 6e operating.system.must.allow.sign
0560 61 6c 20 68 61 6e 64 6c 65 72 73 20 72 65 61 64 20 61 63 63 65 73 73 20 74 6f 20 6f 62 6a 65 63 al.handlers.read.access.to.objec
0580 74 73 20 77 69 74 68 0a 73 74 61 74 69 63 20 73 74 6f 72 61 67 65 20 64 75 72 61 74 69 6f 6e 20 ts.with.static.storage.duration.
05a0 73 6f 20 74 68 61 74 20 74 68 65 20 63 6c 65 61 6e 75 70 20 68 61 6e 64 6c 65 72 20 66 6f 72 20 so.that.the.cleanup.handler.for.
05c0 43 6f 6e 74 72 6f 6c 2d 43 20 63 61 6e 20 64 65 6c 65 74 65 0a 74 68 65 20 70 61 72 74 69 61 6c Control-C.can.delete.the.partial
05e0 20 6f 75 74 70 75 74 20 66 69 6c 65 2e 0a 0a 0a 50 72 6f 63 65 64 75 72 65 0a 2d 2d 2d 2d 2d 2d .output.file....Procedure.------
0600 2d 2d 2d 0a 31 2e 20 55 6e 70 61 63 6b 20 74 68 65 20 61 72 63 68 69 76 65 20 69 66 20 79 6f 75 ---.1..Unpack.the.archive.if.you
0620 20 68 61 76 65 20 6e 6f 74 20 64 6f 6e 65 20 73 6f 20 61 6c 72 65 61 64 79 3a 0a 0a 09 74 61 72 .have.not.done.so.already:...tar
0640 20 2d 78 66 20 6c 7a 69 70 5b 76 65 72 73 69 6f 6e 5d 2e 74 61 72 2e 6c 7a 0a 6f 72 0a 09 6c 7a .-xf.lzip[version].tar.lz.or..lz
0660 69 70 20 2d 63 64 20 6c 7a 69 70 5b 76 65 72 73 69 6f 6e 5d 2e 74 61 72 2e 6c 7a 20 7c 20 74 61 ip.-cd.lzip[version].tar.lz.|.ta
0680 72 20 2d 78 66 20 2d 0a 0a 54 68 69 73 20 63 72 65 61 74 65 73 20 74 68 65 20 64 69 72 65 63 74 r.-xf.-..This.creates.the.direct
06a0 6f 72 79 20 2e 2f 6c 7a 69 70 5b 76 65 72 73 69 6f 6e 5d 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 ory../lzip[version].containing.t
06c0 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 0a 65 78 74 72 61 63 74 65 64 20 66 72 6f 6d 20 74 68 he.source.code.extracted.from.th
06e0 65 20 61 72 63 68 69 76 65 2e 0a 0a 32 2e 20 43 68 61 6e 67 65 20 74 6f 20 6c 7a 69 70 20 64 69 e.archive...2..Change.to.lzip.di
0700 72 65 63 74 6f 72 79 20 61 6e 64 20 72 75 6e 20 63 6f 6e 66 69 67 75 72 65 2e 0a 20 20 20 28 54 rectory.and.run.configure.....(T
0720 72 79 20 27 63 6f 6e 66 69 67 75 72 65 20 2d 2d 68 65 6c 70 27 20 66 6f 72 20 75 73 61 67 65 20 ry.'configure.--help'.for.usage.
0740 69 6e 73 74 72 75 63 74 69 6f 6e 73 29 2e 0a 0a 09 63 64 20 6c 7a 69 70 5b 76 65 72 73 69 6f 6e instructions)....cd.lzip[version
0760 5d 0a 09 2e 2f 63 6f 6e 66 69 67 75 72 65 0a 0a 20 20 20 49 66 20 79 6f 75 20 61 72 65 20 63 6f ].../configure.....If.you.are.co
0780 6d 70 69 6c 69 6e 67 20 6f 6e 20 4d 69 6e 47 57 2c 20 75 73 65 3a 0a 0a 09 2e 2f 63 6f 6e 66 69 mpiling.on.MinGW,.use:..../confi
07a0 67 75 72 65 20 43 58 58 46 4c 41 47 53 2b 3d 27 2d 44 20 5f 5f 55 53 45 5f 4d 49 4e 47 57 5f 41 gure.CXXFLAGS+='-D.__USE_MINGW_A
07c0 4e 53 49 5f 53 54 44 49 4f 27 0a 0a 33 2e 20 52 75 6e 20 6d 61 6b 65 2e 0a 0a 09 6d 61 6b 65 0a NSI_STDIO'..3..Run.make....make.
07e0 0a 34 2e 20 4f 70 74 69 6f 6e 61 6c 6c 79 2c 20 74 79 70 65 20 27 6d 61 6b 65 20 63 68 65 63 6b .4..Optionally,.type.'make.check
0800 27 20 74 6f 20 72 75 6e 20 74 68 65 20 74 65 73 74 73 20 74 68 61 74 20 63 6f 6d 65 20 77 69 74 '.to.run.the.tests.that.come.wit
0820 68 20 6c 7a 69 70 2e 0a 0a 35 2e 20 54 79 70 65 20 27 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 27 20 h.lzip...5..Type.'make.install'.
0840 74 6f 20 69 6e 73 74 61 6c 6c 20 74 68 65 20 70 72 6f 67 72 61 6d 20 61 6e 64 20 61 6e 79 20 64 to.install.the.program.and.any.d
0860 61 74 61 20 66 69 6c 65 73 20 61 6e 64 0a 20 20 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2e 20 ata.files.and....documentation..
0880 59 6f 75 20 6e 65 65 64 20 72 6f 6f 74 20 70 72 69 76 69 6c 65 67 65 73 20 74 6f 20 69 6e 73 74 You.need.root.privileges.to.inst
08a0 61 6c 6c 20 69 6e 74 6f 20 61 20 70 72 65 66 69 78 20 6f 77 6e 65 64 0a 20 20 20 62 79 20 72 6f all.into.a.prefix.owned....by.ro
08c0 6f 74 2e 0a 0a 20 20 20 4f 72 20 74 79 70 65 20 27 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 2d 63 6f ot......Or.type.'make.install-co
08e0 6d 70 72 65 73 73 27 2c 20 77 68 69 63 68 20 61 64 64 69 74 69 6f 6e 61 6c 6c 79 20 63 6f 6d 70 mpress',.which.additionally.comp
0900 72 65 73 73 65 73 20 74 68 65 0a 20 20 20 69 6e 66 6f 20 6d 61 6e 75 61 6c 20 61 6e 64 20 74 68 resses.the....info.manual.and.th
0920 65 20 6d 61 6e 20 70 61 67 65 20 61 66 74 65 72 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2e 0a 20 e.man.page.after.installation...
0940 20 20 28 49 6e 73 74 61 6c 6c 69 6e 67 20 63 6f 6d 70 72 65 73 73 65 64 20 64 6f 63 73 20 6d 61 ..(Installing.compressed.docs.ma
0960 79 20 62 65 63 6f 6d 65 20 74 68 65 20 64 65 66 61 75 6c 74 20 69 6e 20 74 68 65 20 66 75 74 75 y.become.the.default.in.the.futu
0980 72 65 29 2e 0a 0a 20 20 20 59 6f 75 20 63 61 6e 20 69 6e 73 74 61 6c 6c 20 6f 6e 6c 79 20 74 68 re)......You.can.install.only.th
09a0 65 20 70 72 6f 67 72 61 6d 2c 20 74 68 65 20 69 6e 66 6f 20 6d 61 6e 75 61 6c 2c 20 6f 72 20 74 e.program,.the.info.manual,.or.t
09c0 68 65 20 6d 61 6e 20 70 61 67 65 20 62 79 0a 20 20 20 74 79 70 69 6e 67 20 27 6d 61 6b 65 20 69 he.man.page.by....typing.'make.i
09e0 6e 73 74 61 6c 6c 2d 62 69 6e 27 2c 20 27 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 27 nstall-bin',.'make.install-info'
0a00 2c 20 6f 72 20 27 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 2d 6d 61 6e 27 0a 20 20 20 72 65 73 70 65 ,.or.'make.install-man'....respe
0a20 63 74 69 76 65 6c 79 2e 0a 0a 0a 41 6e 6f 74 68 65 72 20 77 61 79 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d ctively....Another.way.---------
0a40 2d 2d 0a 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 63 6f 6d 70 69 6c 65 20 6c 7a 69 70 20 69 6e 74 --.You.can.also.compile.lzip.int
0a60 6f 20 61 20 73 65 70 61 72 61 74 65 20 64 69 72 65 63 74 6f 72 79 2e 0a 54 6f 20 64 6f 20 74 68 o.a.separate.directory..To.do.th
0a80 69 73 2c 20 79 6f 75 20 6d 75 73 74 20 75 73 65 20 61 20 76 65 72 73 69 6f 6e 20 6f 66 20 27 6d is,.you.must.use.a.version.of.'m
0aa0 61 6b 65 27 20 74 68 61 74 20 73 75 70 70 6f 72 74 73 20 74 68 65 20 76 61 72 69 61 62 6c 65 0a ake'.that.supports.the.variable.
0ac0 27 56 50 41 54 48 27 2c 20 73 75 63 68 20 61 73 20 47 4e 55 20 27 6d 61 6b 65 27 2e 20 27 63 64 'VPATH',.such.as.GNU.'make'..'cd
0ae0 27 20 74 6f 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 77 68 65 72 65 20 79 6f 75 20 77 61 6e '.to.the.directory.where.you.wan
0b00 74 20 74 68 65 0a 6f 62 6a 65 63 74 20 66 69 6c 65 73 20 61 6e 64 20 65 78 65 63 75 74 61 62 6c t.the.object.files.and.executabl
0b20 65 73 20 74 6f 20 67 6f 20 61 6e 64 20 72 75 6e 20 74 68 65 20 27 63 6f 6e 66 69 67 75 72 65 27 es.to.go.and.run.the.'configure'
0b40 20 73 63 72 69 70 74 2e 0a 27 63 6f 6e 66 69 67 75 72 65 27 20 61 75 74 6f 6d 61 74 69 63 61 6c .script..'configure'.automatical
0b60 6c 79 20 63 68 65 63 6b 73 20 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 6e ly.checks.for.the.source.code.in
0b80 20 27 2e 27 2c 20 69 6e 20 27 2e 2e 27 2c 20 61 6e 64 0a 69 6e 20 74 68 65 20 64 69 72 65 63 74 .'.',.in.'..',.and.in.the.direct
0ba0 6f 72 79 20 74 68 61 74 20 27 63 6f 6e 66 69 67 75 72 65 27 20 69 73 20 69 6e 2e 0a 0a 27 63 6f ory.that.'configure'.is.in...'co
0bc0 6e 66 69 67 75 72 65 27 20 72 65 63 6f 67 6e 69 7a 65 73 20 74 68 65 20 6f 70 74 69 6f 6e 20 27 nfigure'.recognizes.the.option.'
0be0 2d 2d 73 72 63 64 69 72 3d 44 49 52 27 20 74 6f 20 63 6f 6e 74 72 6f 6c 20 77 68 65 72 65 20 74 --srcdir=DIR'.to.control.where.t
0c00 6f 20 6c 6f 6f 6b 0a 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 55 73 75 61 o.look.for.the.source.code..Usua
0c20 6c 6c 79 20 27 63 6f 6e 66 69 67 75 72 65 27 20 63 61 6e 20 64 65 74 65 72 6d 69 6e 65 20 74 68 lly.'configure'.can.determine.th
0c40 61 74 20 64 69 72 65 63 74 6f 72 79 0a 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2e 0a 0a 41 66 74 at.directory.automatically...Aft
0c60 65 72 20 72 75 6e 6e 69 6e 67 20 27 63 6f 6e 66 69 67 75 72 65 27 2c 20 79 6f 75 20 63 61 6e 20 er.running.'configure',.you.can.
0c80 72 75 6e 20 27 6d 61 6b 65 27 20 61 6e 64 20 27 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 27 20 61 73 run.'make'.and.'make.install'.as
0ca0 0a 65 78 70 6c 61 69 6e 65 64 20 61 62 6f 76 65 2e 0a 0a 0a 42 75 69 6c 64 69 6e 67 20 77 69 74 .explained.above....Building.wit
0cc0 68 6f 75 74 20 27 6d 61 6b 65 27 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d hout.'make'.--------------------
0ce0 2d 2d 2d 0a 49 66 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 62 75 69 6c 64 20 6c 7a 69 70 20 6f 6e ---.If.you.need.to.build.lzip.on
0d00 20 61 20 73 79 73 74 65 6d 20 6c 61 63 6b 69 6e 67 20 61 20 27 6d 61 6b 65 27 20 70 72 6f 67 72 .a.system.lacking.a.'make'.progr
0d20 61 6d 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 0a 27 63 6f 6e 66 69 67 75 72 65 27 20 74 6f 20 62 am,.you.can.use.'configure'.to.b
0d40 75 69 6c 64 2c 20 63 68 65 63 6b 2c 20 61 6e 64 20 69 6e 73 74 61 6c 6c 20 74 68 65 20 6c 7a 69 uild,.check,.and.install.the.lzi
0d60 70 20 65 78 65 63 75 74 61 62 6c 65 20 6c 69 6b 65 20 74 68 69 73 3a 0a 0a 09 2e 2f 63 6f 6e 66 p.executable.like.this:..../conf
0d80 69 67 75 72 65 20 2d 2d 62 75 69 6c 64 20 2d 2d 63 68 65 63 6b 20 2d 2d 69 6e 73 74 61 6c 6c 64 igure.--build.--check.--installd
0da0 69 72 3d 2f 75 73 72 2f 6c 6f 63 61 6c 2f 62 69 6e 0a 0a 0a 43 6f 70 79 72 69 67 68 74 20 28 43 ir=/usr/local/bin...Copyright.(C
0dc0 29 20 32 30 30 38 2d 32 30 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a ).2008-2025.Antonio.Diaz.Diaz...
0de0 54 68 69 73 20 66 69 6c 65 20 69 73 20 66 72 65 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3a This.file.is.free.documentation:
0e00 20 79 6f 75 20 68 61 76 65 20 75 6e 6c 69 6d 69 74 65 64 20 70 65 72 6d 69 73 73 69 6f 6e 20 74 .you.have.unlimited.permission.t
0e20 6f 20 63 6f 70 79 2c 0a 64 69 73 74 72 69 62 75 74 65 2c 20 61 6e 64 20 6d 6f 64 69 66 79 20 69 o.copy,.distribute,.and.modify.i
0e40 74 2e 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 t...............................
0e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1000 6c 7a 69 70 2d 31 2e 32 35 2f 61 72 67 5f 70 61 72 73 65 72 2e 68 00 00 00 00 00 00 00 00 00 00 lzip-1.25/arg_parser.h..........
1020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1060 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
1080 30 30 31 30 31 32 33 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 34 37 32 34 00 20 30 00 00 00 0010123.14744236057.014724..0...
10a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1100 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
1120 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
1140 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
1160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1200 2f 2a 20 41 72 67 5f 70 61 72 73 65 72 20 2d 20 50 4f 53 49 58 2f 47 4e 55 20 63 6f 6d 6d 61 6e /*.Arg_parser.-.POSIX/GNU.comman
1220 64 2d 6c 69 6e 65 20 61 72 67 75 6d 65 6e 74 20 70 61 72 73 65 72 2e 20 28 43 2b 2b 20 76 65 72 d-line.argument.parser..(C++.ver
1240 73 69 6f 6e 29 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 36 2d 32 30 32 35 sion)....Copyright.(C).2006-2025
1260 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 6c 69 62 .Antonio.Diaz.Diaz......This.lib
1280 72 61 72 79 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 2e 20 52 65 64 69 73 74 72 69 62 rary.is.free.software..Redistrib
12a0 75 74 69 6f 6e 20 61 6e 64 20 75 73 65 20 69 6e 20 73 6f 75 72 63 65 20 61 6e 64 0a 20 20 20 62 ution.and.use.in.source.and....b
12c0 69 6e 61 72 79 20 66 6f 72 6d 73 2c 20 77 69 74 68 20 6f 72 20 77 69 74 68 6f 75 74 20 6d 6f 64 inary.forms,.with.or.without.mod
12e0 69 66 69 63 61 74 69 6f 6e 2c 20 61 72 65 20 70 65 72 6d 69 74 74 65 64 20 70 72 6f 76 69 64 65 ification,.are.permitted.provide
1300 64 0a 20 20 20 74 68 61 74 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f d....that.the.following.conditio
1320 6e 73 20 61 72 65 20 6d 65 74 3a 0a 0a 20 20 20 31 2e 20 52 65 64 69 73 74 72 69 62 75 74 69 6f ns.are.met:.....1..Redistributio
1340 6e 73 20 6f 66 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6d 75 73 74 20 72 65 74 61 69 6e 20 74 68 ns.of.source.code.must.retain.th
1360 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 0a 20 20 20 6e 6f 74 69 63 65 2c 20 74 68 69 e.above.copyright....notice,.thi
1380 73 20 6c 69 73 74 20 6f 66 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 61 6e 64 20 74 68 65 20 66 6f s.list.of.conditions,.and.the.fo
13a0 6c 6c 6f 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 2e 0a 0a 20 20 20 32 2e 20 52 65 64 69 73 llowing.disclaimer......2..Redis
13c0 74 72 69 62 75 74 69 6f 6e 73 20 69 6e 20 62 69 6e 61 72 79 20 66 6f 72 6d 20 6d 75 73 74 20 72 tributions.in.binary.form.must.r
13e0 65 70 72 6f 64 75 63 65 20 74 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 0a 20 20 20 eproduce.the.above.copyright....
1400 6e 6f 74 69 63 65 2c 20 74 68 69 73 20 6c 69 73 74 20 6f 66 20 63 6f 6e 64 69 74 69 6f 6e 73 2c notice,.this.list.of.conditions,
1420 20 61 6e 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 20 69 6e .and.the.following.disclaimer.in
1440 20 74 68 65 0a 20 20 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 61 6e 64 2f 6f 72 20 6f 74 68 .the....documentation.and/or.oth
1460 65 72 20 6d 61 74 65 72 69 61 6c 73 20 70 72 6f 76 69 64 65 64 20 77 69 74 68 20 74 68 65 20 64 er.materials.provided.with.the.d
1480 69 73 74 72 69 62 75 74 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 6c 69 62 72 61 72 79 20 69 73 istribution......This.library.is
14a0 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 69 74 .distributed.in.the.hope.that.it
14c0 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 54 48 4f 55 54 20 .will.be.useful,....but.WITHOUT.
14e0 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 ANY.WARRANTY;.without.even.the.i
1500 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 48 41 4e 54 41 42 mplied.warranty.of....MERCHANTAB
1520 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 ILITY.or.FITNESS.FOR.A.PARTICULA
1540 52 20 50 55 52 50 4f 53 45 2e 0a 2a 2f 0a 0a 2f 2a 20 41 72 67 5f 70 61 72 73 65 72 20 72 65 61 R.PURPOSE..*/../*.Arg_parser.rea
1560 64 73 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 69 6e 20 27 61 72 67 76 27 20 61 6e 64 20 63 ds.the.arguments.in.'argv'.and.c
1580 72 65 61 74 65 73 20 61 20 6e 75 6d 62 65 72 20 6f 66 0a 20 20 20 6f 70 74 69 6f 6e 20 63 6f 64 reates.a.number.of....option.cod
15a0 65 73 2c 20 6f 70 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 73 2c 20 61 6e 64 20 6e 6f 6e 2d 6f 70 es,.option.arguments,.and.non-op
15c0 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 73 2e 0a 0a 20 20 20 49 6e 20 63 61 73 65 20 6f 66 20 65 tion.arguments......In.case.of.e
15e0 72 72 6f 72 2c 20 27 65 72 72 6f 72 27 20 72 65 74 75 72 6e 73 20 61 20 6e 6f 6e 2d 65 6d 70 74 rror,.'error'.returns.a.non-empt
1600 79 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 2e 0a 0a 20 20 20 27 6f 70 74 69 6f 6e 73 27 20 69 y.error.message......'options'.i
1620 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 27 73 74 72 75 63 74 20 4f 70 74 69 6f 6e 27 20 74 65 s.an.array.of.'struct.Option'.te
1640 72 6d 69 6e 61 74 65 64 20 62 79 20 61 6e 20 65 6c 65 6d 65 6e 74 0a 20 20 20 63 6f 6e 74 61 69 rminated.by.an.element....contai
1660 6e 69 6e 67 20 61 20 63 6f 64 65 20 77 68 69 63 68 20 69 73 20 7a 65 72 6f 2e 20 41 20 6e 75 6c ning.a.code.which.is.zero..A.nul
1680 6c 20 6c 6f 6e 67 5f 6e 61 6d 65 20 6d 65 61 6e 73 20 61 20 73 68 6f 72 74 2d 6f 6e 6c 79 0a 20 l.long_name.means.a.short-only..
16a0 20 20 6f 70 74 69 6f 6e 2e 20 41 20 63 6f 64 65 20 76 61 6c 75 65 20 6f 75 74 73 69 64 65 20 74 ..option..A.code.value.outside.t
16c0 68 65 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 72 61 6e 67 65 20 6d 65 61 6e 73 20 61 20 6c he.unsigned.char.range.means.a.l
16e0 6f 6e 67 2d 6f 6e 6c 79 0a 20 20 20 6f 70 74 69 6f 6e 2e 0a 0a 20 20 20 41 72 67 5f 70 61 72 73 ong-only....option......Arg_pars
1700 65 72 20 6e 6f 72 6d 61 6c 6c 79 20 6d 61 6b 65 73 20 69 74 20 61 70 70 65 61 72 20 61 73 20 69 er.normally.makes.it.appear.as.i
1720 66 20 61 6c 6c 20 74 68 65 20 6f 70 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 73 0a 20 20 20 77 65 f.all.the.option.arguments....we
1740 72 65 20 73 70 65 63 69 66 69 65 64 20 62 65 66 6f 72 65 20 61 6c 6c 20 74 68 65 20 6e 6f 6e 2d re.specified.before.all.the.non-
1760 6f 70 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 73 20 66 6f 72 20 74 68 65 20 70 75 72 70 6f 73 65 option.arguments.for.the.purpose
1780 73 0a 20 20 20 6f 66 20 70 61 72 73 69 6e 67 2c 20 65 76 65 6e 20 69 66 20 74 68 65 20 75 73 65 s....of.parsing,.even.if.the.use
17a0 72 20 6f 66 20 79 6f 75 72 20 70 72 6f 67 72 61 6d 20 69 6e 74 65 72 6d 69 78 65 64 20 6f 70 74 r.of.your.program.intermixed.opt
17c0 69 6f 6e 20 61 6e 64 0a 20 20 20 6e 6f 6e 2d 6f 70 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 73 2e ion.and....non-option.arguments.
17e0 20 49 66 20 79 6f 75 20 77 61 6e 74 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 69 6e 20 74 68 .If.you.want.the.arguments.in.th
1800 65 20 65 78 61 63 74 20 6f 72 64 65 72 0a 20 20 20 74 68 65 20 75 73 65 72 20 74 79 70 65 64 20 e.exact.order....the.user.typed.
1820 74 68 65 6d 2c 20 63 61 6c 6c 20 27 41 72 67 5f 70 61 72 73 65 72 27 20 77 69 74 68 20 27 69 6e them,.call.'Arg_parser'.with.'in
1840 5f 6f 72 64 65 72 27 20 3d 20 74 72 75 65 2e 0a 0a 20 20 20 54 68 65 20 61 72 67 75 6d 65 6e 74 _order'.=.true......The.argument
1860 20 27 2d 2d 27 20 74 65 72 6d 69 6e 61 74 65 73 20 61 6c 6c 20 6f 70 74 69 6f 6e 73 3b 20 61 6e .'--'.terminates.all.options;.an
1880 79 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 72 67 75 6d 65 6e 74 73 20 61 72 65 0a 20 20 20 74 72 65 y.following.arguments.are....tre
18a0 61 74 65 64 20 61 73 20 6e 6f 6e 2d 6f 70 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 73 2c 20 65 76 ated.as.non-option.arguments,.ev
18c0 65 6e 20 69 66 20 74 68 65 79 20 62 65 67 69 6e 20 77 69 74 68 20 61 20 68 79 70 68 65 6e 2e 0a en.if.they.begin.with.a.hyphen..
18e0 0a 20 20 20 54 68 65 20 73 79 6e 74 61 78 20 6f 66 20 6f 70 74 69 6f 6e 73 20 77 69 74 68 20 61 ....The.syntax.of.options.with.a
1900 6e 20 6f 70 74 69 6f 6e 61 6c 20 61 72 67 75 6d 65 6e 74 20 69 73 0a 20 20 20 27 2d 3c 73 68 6f n.optional.argument.is....'-<sho
1920 72 74 5f 6f 70 74 69 6f 6e 3e 3c 61 72 67 75 6d 65 6e 74 3e 27 20 28 77 69 74 68 6f 75 74 20 77 rt_option><argument>'.(without.w
1940 68 69 74 65 73 70 61 63 65 29 2c 20 6f 72 0a 20 20 20 27 2d 2d 3c 6c 6f 6e 67 5f 6f 70 74 69 6f hitespace),.or....'--<long_optio
1960 6e 3e 3d 3c 61 72 67 75 6d 65 6e 74 3e 27 2e 0a 0a 20 20 20 54 68 65 20 73 79 6e 74 61 78 20 6f n>=<argument>'......The.syntax.o
1980 66 20 6f 70 74 69 6f 6e 73 20 77 69 74 68 20 61 6e 20 65 6d 70 74 79 20 61 72 67 75 6d 65 6e 74 f.options.with.an.empty.argument
19a0 20 69 73 20 27 2d 3c 73 68 6f 72 74 5f 6f 70 74 69 6f 6e 3e 20 22 22 27 2c 0a 20 20 20 27 2d 2d .is.'-<short_option>.""',....'--
19c0 3c 6c 6f 6e 67 5f 6f 70 74 69 6f 6e 3e 20 22 22 27 2c 20 6f 72 20 27 2d 2d 3c 6c 6f 6e 67 5f 6f <long_option>.""',.or.'--<long_o
19e0 70 74 69 6f 6e 3e 3d 22 22 27 2e 0a 2a 2f 0a 0a 63 6c 61 73 73 20 41 72 67 5f 70 61 72 73 65 72 ption>=""'..*/..class.Arg_parser
1a00 0a 20 20 7b 0a 70 75 62 6c 69 63 3a 0a 20 20 65 6e 75 6d 20 48 61 73 5f 61 72 67 20 7b 20 6e 6f ...{.public:...enum.Has_arg.{.no
1a20 2c 20 79 65 73 2c 20 6d 61 79 62 65 2c 20 79 6d 65 20 7d 3b 09 09 2f 2f 20 79 6d 65 20 3d 20 79 ,.yes,.maybe,.yme.};..//.yme.=.y
1a40 65 73 20 62 75 74 20 6d 61 79 62 65 20 65 6d 70 74 79 0a 0a 20 20 73 74 72 75 63 74 20 4f 70 74 es.but.maybe.empty....struct.Opt
1a60 69 6f 6e 0a 20 20 20 20 7b 0a 20 20 20 20 69 6e 74 20 63 6f 64 65 3b 09 09 09 2f 2f 20 53 68 6f ion.....{.....int.code;...//.Sho
1a80 72 74 20 6f 70 74 69 6f 6e 20 6c 65 74 74 65 72 20 6f 72 20 63 6f 64 65 20 28 20 63 6f 64 65 20 rt.option.letter.or.code.(.code.
1aa0 21 3d 20 30 20 29 0a 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 6c 6f 6e 67 5f 6e 61 6d !=.0.).....const.char.*.long_nam
1ac0 65 3b 09 2f 2f 20 4c 6f 6e 67 20 6f 70 74 69 6f 6e 20 6e 61 6d 65 20 28 6d 61 79 62 65 20 6e 75 e;.//.Long.option.name.(maybe.nu
1ae0 6c 6c 29 0a 20 20 20 20 48 61 73 5f 61 72 67 20 68 61 73 5f 61 72 67 3b 0a 20 20 20 20 7d 3b 0a ll).....Has_arg.has_arg;.....};.
1b00 0a 70 72 69 76 61 74 65 3a 0a 20 20 73 74 72 75 63 74 20 52 65 63 6f 72 64 0a 20 20 20 20 7b 0a .private:...struct.Record.....{.
1b20 20 20 20 20 69 6e 74 20 63 6f 64 65 3b 0a 20 20 20 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 70 61 ....int.code;.....std::string.pa
1b40 72 73 65 64 5f 6e 61 6d 65 3b 0a 20 20 20 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 61 72 67 75 6d rsed_name;.....std::string.argum
1b60 65 6e 74 3b 0a 20 20 20 20 65 78 70 6c 69 63 69 74 20 52 65 63 6f 72 64 28 20 63 6f 6e 73 74 20 ent;.....explicit.Record(.const.
1b80 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 63 20 29 0a 20 20 20 20 20 20 3a 20 63 6f 64 65 28 20 unsigned.char.c.).......:.code(.
1ba0 63 20 29 2c 20 70 61 72 73 65 64 5f 6e 61 6d 65 28 20 22 2d 22 20 29 20 7b 20 70 61 72 73 65 64 c.),.parsed_name(."-".).{.parsed
1bc0 5f 6e 61 6d 65 20 2b 3d 20 63 3b 20 7d 0a 20 20 20 20 52 65 63 6f 72 64 28 20 63 6f 6e 73 74 20 _name.+=.c;.}.....Record(.const.
1be0 69 6e 74 20 63 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6c 6f 6e 67 5f 6e int.c,.const.char.*.const.long_n
1c00 61 6d 65 20 29 0a 20 20 20 20 20 20 3a 20 63 6f 64 65 28 20 63 20 29 2c 20 70 61 72 73 65 64 5f ame.).......:.code(.c.),.parsed_
1c20 6e 61 6d 65 28 20 22 2d 2d 22 20 29 20 7b 20 70 61 72 73 65 64 5f 6e 61 6d 65 20 2b 3d 20 6c 6f name(."--".).{.parsed_name.+=.lo
1c40 6e 67 5f 6e 61 6d 65 3b 20 7d 0a 20 20 20 20 65 78 70 6c 69 63 69 74 20 52 65 63 6f 72 64 28 20 ng_name;.}.....explicit.Record(.
1c60 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 20 29 20 3a 20 63 6f 64 65 28 const.char.*.const.arg.).:.code(
1c80 20 30 20 29 2c 20 61 72 67 75 6d 65 6e 74 28 20 61 72 67 20 29 20 7b 7d 0a 20 20 20 20 7d 3b 0a .0.),.argument(.arg.).{}.....};.
1ca0 0a 20 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 65 6d 70 74 79 5f 61 72 67 3b 0a ...const.std::string.empty_arg;.
1cc0 20 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 65 72 72 6f 72 5f 3b 0a 20 20 73 74 64 3a 3a 76 65 63 ..std::string.error_;...std::vec
1ce0 74 6f 72 3c 20 52 65 63 6f 72 64 20 3e 20 64 61 74 61 3b 0a 0a 20 20 62 6f 6f 6c 20 70 61 72 73 tor<.Record.>.data;....bool.pars
1d00 65 5f 6c 6f 6e 67 5f 6f 70 74 69 6f 6e 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 e_long_option(.const.char.*.cons
1d20 74 20 6f 70 74 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 2c 0a 20 t.opt,.const.char.*.const.arg,..
1d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 4f .........................const.O
1d60 70 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 5b 5d 2c 20 69 6e 74 20 26 20 61 72 67 69 6e 64 20 29 3b ption.options[],.int.&.argind.);
1d80 0a 20 20 62 6f 6f 6c 20 70 61 72 73 65 5f 73 68 6f 72 74 5f 6f 70 74 69 6f 6e 28 20 63 6f 6e 73 ...bool.parse_short_option(.cons
1da0 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6f 70 74 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a t.char.*.const.opt,.const.char.*
1dc0 20 63 6f 6e 73 74 20 61 72 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .const.arg,.....................
1de0 20 20 20 20 20 20 20 63 6f 6e 73 74 20 4f 70 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 5b 5d 2c 20 69 .......const.Option.options[],.i
1e00 6e 74 20 26 20 61 72 67 69 6e 64 20 29 3b 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 41 72 67 5f 70 61 nt.&.argind.);..public:...Arg_pa
1e20 72 73 65 72 28 20 63 6f 6e 73 74 20 69 6e 74 20 61 72 67 63 2c 20 63 6f 6e 73 74 20 63 68 61 72 rser(.const.int.argc,.const.char
1e40 20 2a 20 63 6f 6e 73 74 20 61 72 67 76 5b 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 .*.const.argv[],...............c
1e60 6f 6e 73 74 20 4f 70 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 5b 5d 2c 20 63 6f 6e 73 74 20 62 6f 6f onst.Option.options[],.const.boo
1e80 6c 20 69 6e 5f 6f 72 64 65 72 20 3d 20 66 61 6c 73 65 20 29 3b 0a 0a 20 20 2f 2f 20 52 65 73 74 l.in_order.=.false.);....//.Rest
1ea0 72 69 63 74 65 64 20 63 6f 6e 73 74 72 75 63 74 6f 72 2e 20 50 61 72 73 65 73 20 61 20 73 69 6e ricted.constructor..Parses.a.sin
1ec0 67 6c 65 20 74 6f 6b 65 6e 20 61 6e 64 20 61 72 67 75 6d 65 6e 74 20 28 69 66 20 61 6e 79 29 2e gle.token.and.argument.(if.any).
1ee0 0a 20 20 41 72 67 5f 70 61 72 73 65 72 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 ...Arg_parser(.const.char.*.cons
1f00 74 20 6f 70 74 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 2c 0a 20 t.opt,.const.char.*.const.arg,..
1f20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 4f 70 74 69 6f 6e 20 6f 70 74 69 6f 6e .............const.Option.option
1f40 73 5b 5d 20 29 3b 0a 0a 20 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 26 20 65 72 s[].);....const.std::string.&.er
1f60 72 6f 72 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 65 72 72 6f 72 5f 3b 20 7d 0a 0a ror().const.{.return.error_;.}..
1f80 20 20 2f 2f 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 61 72 67 75 6d 65 6e 74 73 20 70 61 72 ..//.The.number.of.arguments.par
1fa0 73 65 64 2e 20 4d 61 79 20 62 65 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 61 72 67 63 2e sed..May.be.different.from.argc.
1fc0 0a 20 20 69 6e 74 20 61 72 67 75 6d 65 6e 74 73 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 ...int.arguments().const.{.retur
1fe0 6e 20 64 61 74 61 2e 73 69 7a 65 28 29 3b 20 7d 0a 0a 20 20 2f 2a 20 49 66 20 63 6f 64 65 28 20 n.data.size();.}..../*.If.code(.
2000 69 20 29 20 69 73 20 30 2c 20 61 72 67 75 6d 65 6e 74 28 20 69 20 29 20 69 73 20 61 20 6e 6f 6e i.).is.0,.argument(.i.).is.a.non
2020 2d 6f 70 74 69 6f 6e 2e 0a 20 20 20 20 20 45 6c 73 65 20 61 72 67 75 6d 65 6e 74 28 20 69 20 29 -option.......Else.argument(.i.)
2040 20 69 73 20 74 68 65 20 6f 70 74 69 6f 6e 27 73 20 61 72 67 75 6d 65 6e 74 20 28 6f 72 20 65 6d .is.the.option's.argument.(or.em
2060 70 74 79 29 2e 20 2a 2f 0a 20 20 69 6e 74 20 63 6f 64 65 28 20 63 6f 6e 73 74 20 69 6e 74 20 69 pty)..*/...int.code(.const.int.i
2080 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 69 20 3e 3d 20 30 20 26 26 .).const.....{.....if(.i.>=.0.&&
20a0 20 69 20 3c 20 61 72 67 75 6d 65 6e 74 73 28 29 20 29 20 72 65 74 75 72 6e 20 64 61 74 61 5b 69 .i.<.arguments().).return.data[i
20c0 5d 2e 63 6f 64 65 3b 0a 20 20 20 20 65 6c 73 65 20 72 65 74 75 72 6e 20 30 3b 0a 20 20 20 20 7d ].code;.....else.return.0;.....}
20e0 0a 0a 20 20 2f 2f 20 46 75 6c 6c 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 6f 70 74 69 6f 6e 20 70 ....//.Full.name.of.the.option.p
2100 61 72 73 65 64 20 28 73 68 6f 72 74 20 6f 72 20 6c 6f 6e 67 29 2e 0a 20 20 63 6f 6e 73 74 20 73 arsed.(short.or.long)....const.s
2120 74 64 3a 3a 73 74 72 69 6e 67 20 26 20 70 61 72 73 65 64 5f 6e 61 6d 65 28 20 63 6f 6e 73 74 20 td::string.&.parsed_name(.const.
2140 69 6e 74 20 69 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 69 20 3e 3d int.i.).const.....{.....if(.i.>=
2160 20 30 20 26 26 20 69 20 3c 20 61 72 67 75 6d 65 6e 74 73 28 29 20 29 20 72 65 74 75 72 6e 20 64 .0.&&.i.<.arguments().).return.d
2180 61 74 61 5b 69 5d 2e 70 61 72 73 65 64 5f 6e 61 6d 65 3b 0a 20 20 20 20 65 6c 73 65 20 72 65 74 ata[i].parsed_name;.....else.ret
21a0 75 72 6e 20 65 6d 70 74 79 5f 61 72 67 3b 0a 20 20 20 20 7d 0a 0a 20 20 63 6f 6e 73 74 20 73 74 urn.empty_arg;.....}....const.st
21c0 64 3a 3a 73 74 72 69 6e 67 20 26 20 61 72 67 75 6d 65 6e 74 28 20 63 6f 6e 73 74 20 69 6e 74 20 d::string.&.argument(.const.int.
21e0 69 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 69 20 3e 3d 20 30 20 26 i.).const.....{.....if(.i.>=.0.&
2200 26 20 69 20 3c 20 61 72 67 75 6d 65 6e 74 73 28 29 20 29 20 72 65 74 75 72 6e 20 64 61 74 61 5b &.i.<.arguments().).return.data[
2220 69 5d 2e 61 72 67 75 6d 65 6e 74 3b 0a 20 20 20 20 65 6c 73 65 20 72 65 74 75 72 6e 20 65 6d 70 i].argument;.....else.return.emp
2240 74 79 5f 61 72 67 3b 0a 20 20 20 20 7d 0a 20 20 7d 3b 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 ty_arg;.....}...};..............
2260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2400 6c 7a 69 70 2d 31 2e 32 35 2f 6c 7a 69 70 5f 69 6e 64 65 78 2e 63 63 00 00 00 00 00 00 00 00 00 lzip-1.25/lzip_index.cc.........
2420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2460 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
2480 30 30 31 37 30 33 37 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 35 31 31 35 00 20 30 00 00 00 0017037.14744236057.015115..0...
24a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2500 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
2520 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
2540 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
2560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
25a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
25c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
25e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2600 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
2620 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
2640 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
2660 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
2680 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
26a0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
26c0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
26e0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
2700 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
2720 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
2740 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
2760 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
2780 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
27a0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
27c0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
27e0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
2800 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
2820 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
2840 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
2860 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
2880 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
28a0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
28c0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 23 64 65 /www.gnu.org/licenses/>..*/..#de
28e0 66 69 6e 65 20 5f 46 49 4c 45 5f 4f 46 46 53 45 54 5f 42 49 54 53 20 36 34 0a 0a 23 69 6e 63 6c fine._FILE_OFFSET_BITS.64..#incl
2900 75 64 65 20 3c 61 6c 67 6f 72 69 74 68 6d 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 65 72 72 6e 6f ude.<algorithm>.#include.<cerrno
2920 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 64 69 6f 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 >.#include.<cstdio>.#include.<cs
2940 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 tring>.#include.<string>.#includ
2960 65 20 3c 76 65 63 74 6f 72 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6e 74 2e 68 3e 0a 23 e.<vector>.#include.<stdint.h>.#
2980 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 0a 0a 23 69 6e 63 6c 75 64 65 20 22 6c 7a include.<unistd.h>..#include."lz
29a0 69 70 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 6c 7a 69 70 5f 69 6e 64 65 78 2e 68 22 0a 0a 0a ip.h".#include."lzip_index.h"...
29c0 6e 61 6d 65 73 70 61 63 65 20 7b 0a 0a 69 6e 74 20 73 65 65 6b 5f 72 65 61 64 28 20 63 6f 6e 73 namespace.{..int.seek_read(.cons
29e0 74 20 69 6e 74 20 66 64 2c 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 62 75 66 2c 20 63 t.int.fd,.uint8_t.*.const.buf,.c
2a00 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f onst.int.size,................co
2a20 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 6f 73 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 6c 73 nst.long.long.pos.)...{...if(.ls
2a40 65 65 6b 28 20 66 64 2c 20 70 6f 73 2c 20 53 45 45 4b 5f 53 45 54 20 29 20 3d 3d 20 70 6f 73 20 eek(.fd,.pos,.SEEK_SET.).==.pos.
2a60 29 0a 20 20 20 20 72 65 74 75 72 6e 20 72 65 61 64 62 6c 6f 63 6b 28 20 66 64 2c 20 62 75 66 2c ).....return.readblock(.fd,.buf,
2a80 20 73 69 7a 65 20 29 3b 0a 20 20 72 65 74 75 72 6e 20 30 3b 0a 20 20 7d 0a 0a 7d 20 2f 2f 20 65 .size.);...return.0;...}..}.//.e
2aa0 6e 64 20 6e 61 6d 65 73 70 61 63 65 0a 0a 0a 62 6f 6f 6c 20 4c 7a 69 70 5f 69 6e 64 65 78 3a 3a nd.namespace...bool.Lzip_index::
2ac0 63 68 65 63 6b 5f 68 65 61 64 65 72 28 20 63 6f 6e 73 74 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 check_header(.const.Lzip_header.
2ae0 26 20 68 65 61 64 65 72 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 21 68 65 61 64 65 72 2e 63 68 65 &.header.)...{...if(.!header.che
2b00 63 6b 5f 6d 61 67 69 63 28 29 20 29 0a 20 20 20 20 7b 20 65 72 72 6f 72 5f 20 3d 20 62 61 64 5f ck_magic().).....{.error_.=.bad_
2b20 6d 61 67 69 63 5f 6d 73 67 3b 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b 20 72 65 74 75 72 6e 20 66 magic_msg;.retval_.=.2;.return.f
2b40 61 6c 73 65 3b 20 7d 0a 20 20 69 66 28 20 21 68 65 61 64 65 72 2e 63 68 65 63 6b 5f 76 65 72 73 alse;.}...if(.!header.check_vers
2b60 69 6f 6e 28 29 20 29 0a 20 20 20 20 7b 20 65 72 72 6f 72 5f 20 3d 20 62 61 64 5f 76 65 72 73 69 ion().).....{.error_.=.bad_versi
2b80 6f 6e 28 20 68 65 61 64 65 72 2e 76 65 72 73 69 6f 6e 28 29 20 29 3b 20 72 65 74 76 61 6c 5f 20 on(.header.version().);.retval_.
2ba0 3d 20 32 3b 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 20 69 66 28 20 21 69 73 76 61 =.2;.return.false;.}...if(.!isva
2bc0 6c 69 64 5f 64 73 28 20 68 65 61 64 65 72 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 29 lid_ds(.header.dictionary_size()
2be0 20 29 20 29 0a 20 20 20 20 7b 20 65 72 72 6f 72 5f 20 3d 20 62 61 64 5f 64 69 63 74 5f 6d 73 67 .).).....{.error_.=.bad_dict_msg
2c00 3b 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 ;.retval_.=.2;.return.false;.}..
2c20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 7d 0a 0a 76 6f 69 64 20 4c 7a 69 70 5f 69 6e 64 .return.true;...}..void.Lzip_ind
2c40 65 78 3a 3a 73 65 74 5f 65 72 72 6e 6f 5f 65 72 72 6f 72 28 20 63 6f 6e 73 74 20 63 68 61 72 20 ex::set_errno_error(.const.char.
2c60 2a 20 63 6f 6e 73 74 20 6d 73 67 20 29 0a 20 20 7b 0a 20 20 65 72 72 6f 72 5f 20 3d 20 6d 73 67 *.const.msg.)...{...error_.=.msg
2c80 3b 20 65 72 72 6f 72 5f 20 2b 3d 20 73 74 64 3a 3a 73 74 72 65 72 72 6f 72 28 20 65 72 72 6e 6f ;.error_.+=.std::strerror(.errno
2ca0 20 29 3b 0a 20 20 72 65 74 76 61 6c 5f 20 3d 20 31 3b 0a 20 20 7d 0a 0a 76 6f 69 64 20 4c 7a 69 .);...retval_.=.1;...}..void.Lzi
2cc0 70 5f 69 6e 64 65 78 3a 3a 73 65 74 5f 6e 75 6d 5f 65 72 72 6f 72 28 20 63 6f 6e 73 74 20 63 68 p_index::set_num_error(.const.ch
2ce0 61 72 20 2a 20 63 6f 6e 73 74 20 6d 73 67 2c 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f ar.*.const.msg,.unsigned.long.lo
2d00 6e 67 20 6e 75 6d 20 29 0a 20 20 7b 0a 20 20 63 68 61 72 20 62 75 66 5b 38 30 5d 3b 0a 20 20 73 ng.num.)...{...char.buf[80];...s
2d20 6e 70 72 69 6e 74 66 28 20 62 75 66 2c 20 73 69 7a 65 6f 66 20 62 75 66 2c 20 22 25 73 25 6c 6c nprintf(.buf,.sizeof.buf,."%s%ll
2d40 75 22 2c 20 6d 73 67 2c 20 6e 75 6d 20 29 3b 0a 20 20 65 72 72 6f 72 5f 20 3d 20 62 75 66 3b 0a u",.msg,.num.);...error_.=.buf;.
2d60 20 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b 0a 20 20 7d 0a 0a 0a 62 6f 6f 6c 20 4c 7a 69 70 5f 69 ..retval_.=.2;...}...bool.Lzip_i
2d80 6e 64 65 78 3a 3a 72 65 61 64 5f 68 65 61 64 65 72 28 20 63 6f 6e 73 74 20 69 6e 74 20 66 64 2c ndex::read_header(.const.int.fd,
2da0 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 26 20 68 65 61 64 65 72 2c 0a 20 20 20 20 20 20 20 20 20 .Lzip_header.&.header,..........
2dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 .....................const.long.
2de0 6c 6f 6e 67 20 70 6f 73 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 73 65 65 6b 5f 72 65 61 64 28 20 long.pos.)...{...if(.seek_read(.
2e00 66 64 2c 20 68 65 61 64 65 72 2e 64 61 74 61 2c 20 68 65 61 64 65 72 2e 73 69 7a 65 2c 20 70 6f fd,.header.data,.header.size,.po
2e20 73 20 29 20 21 3d 20 68 65 61 64 65 72 2e 73 69 7a 65 20 29 0a 20 20 20 20 7b 20 73 65 74 5f 65 s.).!=.header.size.).....{.set_e
2e40 72 72 6e 6f 5f 65 72 72 6f 72 28 20 22 45 72 72 6f 72 20 72 65 61 64 69 6e 67 20 6d 65 6d 62 65 rrno_error(."Error.reading.membe
2e60 72 20 68 65 61 64 65 72 3a 20 22 20 29 3b 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 r.header:.".);.return.false;.}..
2e80 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 7d 0a 0a 0a 2f 2f 20 49 66 20 73 75 63 63 65 73 .return.true;...}...//.If.succes
2ea0 73 66 75 6c 2c 20 70 75 73 68 20 6c 61 73 74 20 6d 65 6d 62 65 72 20 61 6e 64 20 73 65 74 20 70 sful,.push.last.member.and.set.p
2ec0 6f 73 20 74 6f 20 6d 65 6d 62 65 72 20 68 65 61 64 65 72 2e 0a 62 6f 6f 6c 20 4c 7a 69 70 5f 69 os.to.member.header..bool.Lzip_i
2ee0 6e 64 65 78 3a 3a 73 6b 69 70 5f 74 72 61 69 6c 69 6e 67 5f 64 61 74 61 28 20 63 6f 6e 73 74 20 ndex::skip_trailing_data(.const.
2f00 69 6e 74 20 66 64 2c 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 26 20 70 6f 73 int.fd,.unsigned.long.long.&.pos
2f20 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,...............................
2f40 20 20 20 20 20 20 20 63 6f 6e 73 74 20 43 6c 5f 6f 70 74 69 6f 6e 73 20 26 20 63 6c 5f 6f 70 74 .......const.Cl_options.&.cl_opt
2f60 73 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 70 6f 73 20 3c 20 6d 69 6e 5f 6d 65 6d 62 65 72 5f 73 s.)...{...if(.pos.<.min_member_s
2f80 69 7a 65 20 29 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 65 6e 75 6d 20 7b 20 62 6c 6f ize.).return.false;...enum.{.blo
2fa0 63 6b 5f 73 69 7a 65 20 3d 20 31 36 33 38 34 2c 0a 20 20 20 20 20 20 20 20 20 62 75 66 66 65 72 ck_size.=.16384,..........buffer
2fc0 5f 73 69 7a 65 20 3d 20 62 6c 6f 63 6b 5f 73 69 7a 65 20 2b 20 4c 7a 69 70 5f 74 72 61 69 6c 65 _size.=.block_size.+.Lzip_traile
2fe0 72 3a 3a 73 69 7a 65 20 2d 20 31 20 2b 20 4c 7a 69 70 5f 68 65 61 64 65 72 3a 3a 73 69 7a 65 20 r::size.-.1.+.Lzip_header::size.
3000 7d 3b 0a 20 20 75 69 6e 74 38 5f 74 20 62 75 66 66 65 72 5b 62 75 66 66 65 72 5f 73 69 7a 65 5d };...uint8_t.buffer[buffer_size]
3020 3b 0a 20 20 69 6e 74 20 62 73 69 7a 65 20 3d 20 70 6f 73 20 25 20 62 6c 6f 63 6b 5f 73 69 7a 65 ;...int.bsize.=.pos.%.block_size
3040 3b 09 09 09 2f 2f 20 74 6f 74 61 6c 20 62 79 74 65 73 20 69 6e 20 62 75 66 66 65 72 0a 20 20 69 ;...//.total.bytes.in.buffer...i
3060 66 28 20 62 73 69 7a 65 20 3c 3d 20 62 75 66 66 65 72 5f 73 69 7a 65 20 2d 20 62 6c 6f 63 6b 5f f(.bsize.<=.buffer_size.-.block_
3080 73 69 7a 65 20 29 20 62 73 69 7a 65 20 2b 3d 20 62 6c 6f 63 6b 5f 73 69 7a 65 3b 0a 20 20 69 6e size.).bsize.+=.block_size;...in
30a0 74 20 73 65 61 72 63 68 5f 73 69 7a 65 20 3d 20 62 73 69 7a 65 3b 09 09 09 2f 2f 20 62 79 74 65 t.search_size.=.bsize;...//.byte
30c0 73 20 74 6f 20 73 65 61 72 63 68 20 66 6f 72 20 74 72 61 69 6c 65 72 0a 20 20 69 6e 74 20 72 64 s.to.search.for.trailer...int.rd
30e0 5f 73 69 7a 65 20 3d 20 62 73 69 7a 65 3b 09 09 09 09 2f 2f 20 62 79 74 65 73 20 74 6f 20 72 65 _size.=.bsize;....//.bytes.to.re
3100 61 64 20 66 72 6f 6d 20 66 69 6c 65 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e ad.from.file...unsigned.long.lon
3120 67 20 69 70 6f 73 20 3d 20 70 6f 73 20 2d 20 72 64 5f 73 69 7a 65 3b 09 2f 2f 20 61 6c 69 67 6e g.ipos.=.pos.-.rd_size;.//.align
3140 65 64 20 74 6f 20 62 6c 6f 63 6b 5f 73 69 7a 65 0a 0a 20 20 77 68 69 6c 65 28 20 74 72 75 65 20 ed.to.block_size....while(.true.
3160 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 73 65 65 6b 5f 72 65 61 64 28 20 66 64 2c 20 62 ).....{.....if(.seek_read(.fd,.b
3180 75 66 66 65 72 2c 20 72 64 5f 73 69 7a 65 2c 20 69 70 6f 73 20 29 20 21 3d 20 72 64 5f 73 69 7a uffer,.rd_size,.ipos.).!=.rd_siz
31a0 65 20 29 0a 20 20 20 20 20 20 7b 20 73 65 74 5f 65 72 72 6e 6f 5f 65 72 72 6f 72 28 20 22 45 72 e.).......{.set_errno_error(."Er
31c0 72 6f 72 20 73 65 65 6b 69 6e 67 20 6d 65 6d 62 65 72 20 74 72 61 69 6c 65 72 3a 20 22 20 29 3b ror.seeking.member.trailer:.".);
31e0 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 .return.false;.}.....const.uint8
3200 5f 74 20 6d 61 78 5f 6d 73 62 20 3d 20 28 20 69 70 6f 73 20 2b 20 73 65 61 72 63 68 5f 73 69 7a _t.max_msb.=.(.ipos.+.search_siz
3220 65 20 29 20 3e 3e 20 35 36 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 73 65 61 72 e.).>>.56;.....for(.int.i.=.sear
3240 63 68 5f 73 69 7a 65 3b 20 69 20 3e 3d 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 69 7a 65 ch_size;.i.>=.Lzip_trailer::size
3260 3b 20 2d 2d 69 20 29 0a 20 20 20 20 20 20 69 66 28 20 62 75 66 66 65 72 5b 69 2d 31 5d 20 3c 3d ;.--i.).......if(.buffer[i-1].<=
3280 20 6d 61 78 5f 6d 73 62 20 29 09 2f 2f 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 .max_msb.).//.most.significant.b
32a0 79 74 65 20 6f 66 20 6d 65 6d 62 65 72 5f 73 69 7a 65 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 yte.of.member_size.........{....
32c0 20 20 20 20 20 63 6f 6e 73 74 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 20 26 20 74 72 61 69 6c 65 .....const.Lzip_trailer.&.traile
32e0 72 20 3d 0a 20 20 20 20 20 20 20 20 20 20 2a 28 63 6f 6e 73 74 20 4c 7a 69 70 5f 74 72 61 69 6c r.=...........*(const.Lzip_trail
3300 65 72 20 2a 29 28 20 62 75 66 66 65 72 20 2b 20 69 20 2d 20 74 72 61 69 6c 65 72 2e 73 69 7a 65 er.*)(.buffer.+.i.-.trailer.size
3320 20 29 3b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 .);.........const.unsigned.long.
3340 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3d 20 74 72 61 69 6c 65 72 2e 6d 65 6d 62 65 long.member_size.=.trailer.membe
3360 72 5f 73 69 7a 65 28 29 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 6d 65 6d 62 65 72 5f 73 69 7a r_size();.........if(.member_siz
3380 65 20 3d 3d 20 30 20 29 09 09 09 2f 2f 20 73 6b 69 70 20 74 72 61 69 6c 69 6e 67 20 7a 65 72 6f e.==.0.)...//.skip.trailing.zero
33a0 73 0a 20 20 20 20 20 20 20 20 20 20 7b 20 77 68 69 6c 65 28 20 69 20 3e 20 74 72 61 69 6c 65 72 s...........{.while(.i.>.trailer
33c0 2e 73 69 7a 65 20 26 26 20 62 75 66 66 65 72 5b 69 2d 39 5d 20 3d 3d 20 30 20 29 20 2d 2d 69 3b .size.&&.buffer[i-9].==.0.).--i;
33e0 20 63 6f 6e 74 69 6e 75 65 3b 20 7d 0a 20 20 20 20 20 20 20 20 69 66 28 20 6d 65 6d 62 65 72 5f .continue;.}.........if(.member_
3400 73 69 7a 65 20 3e 20 69 70 6f 73 20 2b 20 69 20 7c 7c 20 21 74 72 61 69 6c 65 72 2e 63 68 65 63 size.>.ipos.+.i.||.!trailer.chec
3420 6b 5f 63 6f 6e 73 69 73 74 65 6e 63 79 28 29 20 29 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 k_consistency().).continue;.....
3440 20 20 20 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 68 65 61 64 65 72 3b 0a 20 20 20 20 20 20 20 20 ....Lzip_header.header;.........
3460 69 66 28 20 21 72 65 61 64 5f 68 65 61 64 65 72 28 20 66 64 2c 20 68 65 61 64 65 72 2c 20 69 70 if(.!read_header(.fd,.header,.ip
3480 6f 73 20 2b 20 69 20 2d 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 29 20 29 20 72 65 74 75 72 6e 20 os.+.i.-.member_size.).).return.
34a0 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 21 68 65 61 64 65 72 2e 63 68 65 63 6b false;.........if(.!header.check
34c0 28 29 20 29 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 4c 7a 69 ().).continue;.........const.Lzi
34e0 70 5f 68 65 61 64 65 72 20 26 20 68 65 61 64 65 72 32 20 3d 20 2a 28 63 6f 6e 73 74 20 4c 7a 69 p_header.&.header2.=.*(const.Lzi
3500 70 5f 68 65 61 64 65 72 20 2a 29 28 20 62 75 66 66 65 72 20 2b 20 69 20 29 3b 0a 20 20 20 20 20 p_header.*)(.buffer.+.i.);......
3520 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 66 75 6c 6c 5f 68 32 20 3d 20 62 73 69 7a 65 20 2d 20 ...const.bool.full_h2.=.bsize.-.
3540 69 20 3e 3d 20 68 65 61 64 65 72 2e 73 69 7a 65 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 68 65 i.>=.header.size;.........if(.he
3560 61 64 65 72 32 2e 63 68 65 63 6b 5f 70 72 65 66 69 78 28 20 62 73 69 7a 65 20 2d 20 69 20 29 20 ader2.check_prefix(.bsize.-.i.).
3580 29 09 2f 2f 20 6c 61 73 74 20 6d 65 6d 62 65 72 0a 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 ).//.last.member...........{....
35a0 20 20 20 20 20 20 20 69 66 28 20 21 66 75 6c 6c 5f 68 32 20 29 20 65 72 72 6f 72 5f 20 3d 20 22 .......if(.!full_h2.).error_.=."
35c0 4c 61 73 74 20 6d 65 6d 62 65 72 20 69 6e 20 69 6e 70 75 74 20 66 69 6c 65 20 69 73 20 74 72 75 Last.member.in.input.file.is.tru
35e0 6e 63 61 74 65 64 2e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 63 68 65 ncated.";...........else.if(.che
3600 63 6b 5f 68 65 61 64 65 72 28 20 68 65 61 64 65 72 32 20 29 20 29 0a 20 20 20 20 20 20 20 20 20 ck_header(.header2.).)..........
3620 20 20 20 65 72 72 6f 72 5f 20 3d 20 22 4c 61 73 74 20 6d 65 6d 62 65 72 20 69 6e 20 69 6e 70 75 ...error_.=."Last.member.in.inpu
3640 74 20 66 69 6c 65 20 69 73 20 74 72 75 6e 63 61 74 65 64 20 6f 72 20 63 6f 72 72 75 70 74 2e 22 t.file.is.truncated.or.corrupt."
3660 3b 0a 20 20 20 20 20 20 20 20 20 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b 20 72 65 74 75 72 6e 20 ;...........retval_.=.2;.return.
3680 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 69 66 28 20 21 false;...........}.........if(.!
36a0 63 6c 5f 6f 70 74 73 2e 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 20 26 26 20 66 75 6c 6c 5f 68 cl_opts.loose_trailing.&&.full_h
36c0 32 20 26 26 20 68 65 61 64 65 72 32 2e 63 68 65 63 6b 5f 63 6f 72 72 75 70 74 28 29 20 29 0a 20 2.&&.header2.check_corrupt().)..
36e0 20 20 20 20 20 20 20 20 20 7b 20 65 72 72 6f 72 5f 20 3d 20 63 6f 72 72 75 70 74 5f 6d 6d 5f 6d .........{.error_.=.corrupt_mm_m
3700 73 67 3b 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d sg;.retval_.=.2;.return.false;.}
3720 0a 20 20 20 20 20 20 20 20 69 66 28 20 21 63 6c 5f 6f 70 74 73 2e 69 67 6e 6f 72 65 5f 74 72 61 .........if(.!cl_opts.ignore_tra
3740 69 6c 69 6e 67 20 29 0a 20 20 20 20 20 20 20 20 20 20 7b 20 65 72 72 6f 72 5f 20 3d 20 74 72 61 iling.)...........{.error_.=.tra
3760 69 6c 69 6e 67 5f 6d 73 67 3b 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b 20 72 65 74 75 72 6e 20 66 iling_msg;.retval_.=.2;.return.f
3780 61 6c 73 65 3b 20 7d 0a 20 20 20 20 20 20 20 20 70 6f 73 20 3d 20 69 70 6f 73 20 2b 20 69 20 2d alse;.}.........pos.=.ipos.+.i.-
37a0 20 6d 65 6d 62 65 72 5f 73 69 7a 65 3b 09 09 09 2f 2f 20 67 6f 6f 64 20 6d 65 6d 62 65 72 0a 20 .member_size;...//.good.member..
37c0 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 .......const.unsigned.dictionary
37e0 5f 73 69 7a 65 20 3d 20 68 65 61 64 65 72 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 29 _size.=.header.dictionary_size()
3800 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 5f 20 3c ;.........if(.dictionary_size_.<
3820 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 20 20 20 20 20 20 20 20 64 69 63 .dictionary_size.)...........dic
3840 74 69 6f 6e 61 72 79 5f 73 69 7a 65 5f 20 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 3b tionary_size_.=.dictionary_size;
3860 0a 20 20 20 20 20 20 20 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 70 75 73 68 5f 62 61 63 6b .........member_vector.push_back
3880 28 20 4d 65 6d 62 65 72 28 20 30 2c 20 74 72 61 69 6c 65 72 2e 64 61 74 61 5f 73 69 7a 65 28 29 (.Member(.0,.trailer.data_size()
38a0 2c 20 70 6f 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,.pos,..........................
38c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 65 6d 62 65 72 5f 73 69 7a 65 2c 20 64 69 63 ................member_size,.dic
38e0 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e tionary_size.).);.........return
3900 20 74 72 75 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 69 70 6f 73 20 3d 3d .true;.........}.....if(.ipos.==
3920 20 30 20 29 0a 20 20 20 20 20 20 7b 20 73 65 74 5f 6e 75 6d 5f 65 72 72 6f 72 28 20 22 42 61 64 .0.).......{.set_num_error(."Bad
3940 20 74 72 61 69 6c 65 72 20 61 74 20 70 6f 73 20 22 2c 20 70 6f 73 20 2d 20 4c 7a 69 70 5f 74 72 .trailer.at.pos.",.pos.-.Lzip_tr
3960 61 69 6c 65 72 3a 3a 73 69 7a 65 20 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 ailer::size.);.........return.fa
3980 6c 73 65 3b 20 7d 0a 20 20 20 20 62 73 69 7a 65 20 3d 20 62 75 66 66 65 72 5f 73 69 7a 65 3b 0a lse;.}.....bsize.=.buffer_size;.
39a0 20 20 20 20 73 65 61 72 63 68 5f 73 69 7a 65 20 3d 20 62 73 69 7a 65 20 2d 20 4c 7a 69 70 5f 68 ....search_size.=.bsize.-.Lzip_h
39c0 65 61 64 65 72 3a 3a 73 69 7a 65 3b 0a 20 20 20 20 72 64 5f 73 69 7a 65 20 3d 20 62 6c 6f 63 6b eader::size;.....rd_size.=.block
39e0 5f 73 69 7a 65 3b 0a 20 20 20 20 69 70 6f 73 20 2d 3d 20 72 64 5f 73 69 7a 65 3b 0a 20 20 20 20 _size;.....ipos.-=.rd_size;.....
3a00 73 74 64 3a 3a 6d 65 6d 63 70 79 28 20 62 75 66 66 65 72 20 2b 20 72 64 5f 73 69 7a 65 2c 20 62 std::memcpy(.buffer.+.rd_size,.b
3a20 75 66 66 65 72 2c 20 62 75 66 66 65 72 5f 73 69 7a 65 20 2d 20 72 64 5f 73 69 7a 65 20 29 3b 0a uffer,.buffer_size.-.rd_size.);.
3a40 20 20 20 20 7d 0a 20 20 7d 0a 0a 0a 4c 7a 69 70 5f 69 6e 64 65 78 3a 3a 4c 7a 69 70 5f 69 6e 64 ....}...}...Lzip_index::Lzip_ind
3a60 65 78 28 20 63 6f 6e 73 74 20 69 6e 74 20 69 6e 66 64 2c 20 63 6f 6e 73 74 20 43 6c 5f 6f 70 74 ex(.const.int.infd,.const.Cl_opt
3a80 69 6f 6e 73 20 26 20 63 6c 5f 6f 70 74 73 20 29 0a 20 20 3a 20 69 6e 73 69 7a 65 28 20 6c 73 65 ions.&.cl_opts.)...:.insize(.lse
3aa0 65 6b 28 20 69 6e 66 64 2c 20 30 2c 20 53 45 45 4b 5f 45 4e 44 20 29 20 29 2c 20 72 65 74 76 61 ek(.infd,.0,.SEEK_END.).),.retva
3ac0 6c 5f 28 20 30 20 29 2c 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 5f 28 20 30 20 29 0a 20 l_(.0.),.dictionary_size_(.0.)..
3ae0 20 7b 0a 20 20 69 66 28 20 69 6e 73 69 7a 65 20 3c 20 30 20 29 0a 20 20 20 20 7b 20 73 65 74 5f .{...if(.insize.<.0.).....{.set_
3b00 65 72 72 6e 6f 5f 65 72 72 6f 72 28 20 22 49 6e 70 75 74 20 66 69 6c 65 20 69 73 20 6e 6f 74 20 errno_error(."Input.file.is.not.
3b20 73 65 65 6b 61 62 6c 65 3a 20 22 20 29 3b 20 72 65 74 75 72 6e 3b 20 7d 0a 20 20 4c 7a 69 70 5f seekable:.".);.return;.}...Lzip_
3b40 68 65 61 64 65 72 20 68 65 61 64 65 72 3b 0a 20 20 69 66 28 20 69 6e 73 69 7a 65 20 3e 3d 20 68 header.header;...if(.insize.>=.h
3b60 65 61 64 65 72 2e 73 69 7a 65 20 26 26 0a 20 20 20 20 20 20 28 20 21 72 65 61 64 5f 68 65 61 64 eader.size.&&.......(.!read_head
3b80 65 72 28 20 69 6e 66 64 2c 20 68 65 61 64 65 72 2c 20 30 20 29 20 7c 7c 0a 20 20 20 20 20 20 20 er(.infd,.header,.0.).||........
3ba0 20 21 63 68 65 63 6b 5f 68 65 61 64 65 72 28 20 68 65 61 64 65 72 20 29 20 29 20 29 20 72 65 74 .!check_header(.header.).).).ret
3bc0 75 72 6e 3b 0a 20 20 69 66 28 20 69 6e 73 69 7a 65 20 3c 20 6d 69 6e 5f 6d 65 6d 62 65 72 5f 73 urn;...if(.insize.<.min_member_s
3be0 69 7a 65 20 29 0a 20 20 20 20 7b 20 65 72 72 6f 72 5f 20 3d 20 22 49 6e 70 75 74 20 66 69 6c 65 ize.).....{.error_.=."Input.file
3c00 20 69 73 20 74 72 75 6e 63 61 74 65 64 2e 22 3b 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b 20 72 65 .is.truncated.";.retval_.=.2;.re
3c20 74 75 72 6e 3b 20 7d 0a 20 20 69 66 28 20 69 6e 73 69 7a 65 20 3e 20 49 4e 54 36 34 5f 4d 41 58 turn;.}...if(.insize.>.INT64_MAX
3c40 20 29 0a 20 20 20 20 7b 20 65 72 72 6f 72 5f 20 3d 20 22 49 6e 70 75 74 20 66 69 6c 65 20 69 73 .).....{.error_.=."Input.file.is
3c60 20 74 6f 6f 20 6c 6f 6e 67 20 28 32 5e 36 33 20 62 79 74 65 73 20 6f 72 20 6d 6f 72 65 29 2e 22 .too.long.(2^63.bytes.or.more)."
3c80 3b 0a 20 20 20 20 20 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b 20 72 65 74 75 72 6e 3b 20 7d 0a 0a ;.......retval_.=.2;.return;.}..
3ca0 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 6f 73 20 3d 20 69 6e 73 69 7a ..unsigned.long.long.pos.=.insiz
3cc0 65 3b 09 2f 2f 20 61 6c 77 61 79 73 20 70 6f 69 6e 74 73 20 74 6f 20 61 20 68 65 61 64 65 72 20 e;.//.always.points.to.a.header.
3ce0 6f 72 20 74 6f 20 45 4f 46 0a 20 20 77 68 69 6c 65 28 20 70 6f 73 20 3e 3d 20 6d 69 6e 5f 6d 65 or.to.EOF...while(.pos.>=.min_me
3d00 6d 62 65 72 5f 73 69 7a 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 4c 7a 69 70 5f 74 72 61 69 6c mber_size.).....{.....Lzip_trail
3d20 65 72 20 74 72 61 69 6c 65 72 3b 0a 20 20 20 20 69 66 28 20 73 65 65 6b 5f 72 65 61 64 28 20 69 er.trailer;.....if(.seek_read(.i
3d40 6e 66 64 2c 20 74 72 61 69 6c 65 72 2e 64 61 74 61 2c 20 74 72 61 69 6c 65 72 2e 73 69 7a 65 2c nfd,.trailer.data,.trailer.size,
3d60 20 70 6f 73 20 2d 20 74 72 61 69 6c 65 72 2e 73 69 7a 65 20 29 20 21 3d 0a 20 20 20 20 20 20 20 .pos.-.trailer.size.).!=........
3d80 20 74 72 61 69 6c 65 72 2e 73 69 7a 65 20 29 0a 20 20 20 20 20 20 7b 20 73 65 74 5f 65 72 72 6e .trailer.size.).......{.set_errn
3da0 6f 5f 65 72 72 6f 72 28 20 22 45 72 72 6f 72 20 72 65 61 64 69 6e 67 20 6d 65 6d 62 65 72 20 74 o_error(."Error.reading.member.t
3dc0 72 61 69 6c 65 72 3a 20 22 20 29 3b 20 62 72 65 61 6b 3b 20 7d 0a 20 20 20 20 63 6f 6e 73 74 20 railer:.".);.break;.}.....const.
3de0 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3d unsigned.long.long.member_size.=
3e00 20 74 72 61 69 6c 65 72 2e 6d 65 6d 62 65 72 5f 73 69 7a 65 28 29 3b 0a 20 20 20 20 69 66 28 20 .trailer.member_size();.....if(.
3e20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3e 20 70 6f 73 20 7c 7c 20 21 74 72 61 69 6c 65 72 2e 63 68 member_size.>.pos.||.!trailer.ch
3e40 65 63 6b 5f 63 6f 6e 73 69 73 74 65 6e 63 79 28 29 20 29 09 2f 2f 20 62 61 64 20 74 72 61 69 6c eck_consistency().).//.bad.trail
3e60 65 72 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 6d 65 6d 62 65 72 5f 76 65 63 74 er.......{.......if(.member_vect
3e80 6f 72 2e 65 6d 70 74 79 28 29 20 29 0a 20 20 20 20 20 20 20 20 7b 20 69 66 28 20 73 6b 69 70 5f or.empty().).........{.if(.skip_
3ea0 74 72 61 69 6c 69 6e 67 5f 64 61 74 61 28 20 69 6e 66 64 2c 20 70 6f 73 2c 20 63 6c 5f 6f 70 74 trailing_data(.infd,.pos,.cl_opt
3ec0 73 20 29 20 29 20 63 6f 6e 74 69 6e 75 65 3b 20 72 65 74 75 72 6e 3b 20 7d 0a 20 20 20 20 20 20 s.).).continue;.return;.}.......
3ee0 73 65 74 5f 6e 75 6d 5f 65 72 72 6f 72 28 20 22 42 61 64 20 74 72 61 69 6c 65 72 20 61 74 20 70 set_num_error(."Bad.trailer.at.p
3f00 6f 73 20 22 2c 20 70 6f 73 20 2d 20 74 72 61 69 6c 65 72 2e 73 69 7a 65 20 29 3b 20 62 72 65 61 os.",.pos.-.trailer.size.);.brea
3f20 6b 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 21 72 65 61 64 5f 68 65 61 64 65 72 28 k;.......}.....if(.!read_header(
3f40 20 69 6e 66 64 2c 20 68 65 61 64 65 72 2c 20 70 6f 73 20 2d 20 6d 65 6d 62 65 72 5f 73 69 7a 65 .infd,.header,.pos.-.member_size
3f60 20 29 20 29 20 62 72 65 61 6b 3b 0a 20 20 20 20 69 66 28 20 21 68 65 61 64 65 72 2e 63 68 65 63 .).).break;.....if(.!header.chec
3f80 6b 28 29 20 29 09 09 09 09 2f 2f 20 62 61 64 20 68 65 61 64 65 72 0a 20 20 20 20 20 20 7b 0a 20 k().)....//.bad.header.......{..
3fa0 20 20 20 20 20 69 66 28 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 65 6d 70 74 79 28 29 20 29 .....if(.member_vector.empty().)
3fc0 0a 20 20 20 20 20 20 20 20 7b 20 69 66 28 20 73 6b 69 70 5f 74 72 61 69 6c 69 6e 67 5f 64 61 74 .........{.if(.skip_trailing_dat
3fe0 61 28 20 69 6e 66 64 2c 20 70 6f 73 2c 20 63 6c 5f 6f 70 74 73 20 29 20 29 20 63 6f 6e 74 69 6e a(.infd,.pos,.cl_opts.).).contin
4000 75 65 3b 20 72 65 74 75 72 6e 3b 20 7d 0a 20 20 20 20 20 20 73 65 74 5f 6e 75 6d 5f 65 72 72 6f ue;.return;.}.......set_num_erro
4020 72 28 20 22 42 61 64 20 68 65 61 64 65 72 20 61 74 20 70 6f 73 20 22 2c 20 70 6f 73 20 2d 20 6d r(."Bad.header.at.pos.",.pos.-.m
4040 65 6d 62 65 72 5f 73 69 7a 65 20 29 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 ember_size.);.break;.......}....
4060 20 70 6f 73 20 2d 3d 20 6d 65 6d 62 65 72 5f 73 69 7a 65 3b 09 09 09 09 09 2f 2f 20 67 6f 6f 64 .pos.-=.member_size;.....//.good
4080 20 6d 65 6d 62 65 72 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 .member.....const.unsigned.dicti
40a0 6f 6e 61 72 79 5f 73 69 7a 65 20 3d 20 68 65 61 64 65 72 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 onary_size.=.header.dictionary_s
40c0 69 7a 65 28 29 3b 0a 20 20 20 20 69 66 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 5f 20 ize();.....if(.dictionary_size_.
40e0 3c 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 20 20 20 20 64 69 63 74 69 6f <.dictionary_size.).......dictio
4100 6e 61 72 79 5f 73 69 7a 65 5f 20 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 3b 0a 20 20 nary_size_.=.dictionary_size;...
4120 20 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 70 75 73 68 5f 62 61 63 6b 28 20 4d 65 6d 62 65 ..member_vector.push_back(.Membe
4140 72 28 20 30 2c 20 74 72 61 69 6c 65 72 2e 64 61 74 61 5f 73 69 7a 65 28 29 2c 20 70 6f 73 2c 0a r(.0,.trailer.data_size(),.pos,.
4160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4180 20 20 20 20 20 6d 65 6d 62 65 72 5f 73 69 7a 65 2c 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a .....member_size,.dictionary_siz
41a0 65 20 29 20 29 3b 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 70 6f 73 20 21 3d 20 30 20 7c 7c 20 6d e.).);.....}...if(.pos.!=.0.||.m
41c0 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 65 6d 70 74 79 28 29 20 7c 7c 20 72 65 74 76 61 6c 5f 20 ember_vector.empty().||.retval_.
41e0 21 3d 20 30 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 63 !=.0.).....{.....member_vector.c
4200 6c 65 61 72 28 29 3b 0a 20 20 20 20 69 66 28 20 72 65 74 76 61 6c 5f 20 3d 3d 20 30 20 29 20 7b lear();.....if(.retval_.==.0.).{
4220 20 65 72 72 6f 72 5f 20 3d 20 22 43 61 6e 27 74 20 63 72 65 61 74 65 20 66 69 6c 65 20 69 6e 64 .error_.=."Can't.create.file.ind
4240 65 78 2e 22 3b 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 3b ex.";.retval_.=.2;.}.....return;
4260 0a 20 20 20 20 7d 0a 20 20 73 74 64 3a 3a 72 65 76 65 72 73 65 28 20 6d 65 6d 62 65 72 5f 76 65 .....}...std::reverse(.member_ve
4280 63 74 6f 72 2e 62 65 67 69 6e 28 29 2c 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 65 6e 64 28 ctor.begin(),.member_vector.end(
42a0 29 20 29 3b 0a 20 20 66 6f 72 28 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 69 20 3d 20 30 3b ).);...for(.unsigned.long.i.=.0;
42c0 20 3b 20 2b 2b 69 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f .;.++i.).....{.....const.long.lo
42e0 6e 67 20 65 6e 64 20 3d 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 5b 69 5d 2e 64 62 6c 6f 63 6b ng.end.=.member_vector[i].dblock
4300 2e 65 6e 64 28 29 3b 0a 20 20 20 20 69 66 28 20 65 6e 64 20 3c 20 30 20 7c 7c 20 65 6e 64 20 3e .end();.....if(.end.<.0.||.end.>
4320 20 49 4e 54 36 34 5f 4d 41 58 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 6d 65 6d 62 65 .INT64_MAX.).......{.......membe
4340 72 5f 76 65 63 74 6f 72 2e 63 6c 65 61 72 28 29 3b 0a 20 20 20 20 20 20 65 72 72 6f 72 5f 20 3d r_vector.clear();.......error_.=
4360 20 22 44 61 74 61 20 69 6e 20 69 6e 70 75 74 20 66 69 6c 65 20 69 73 20 74 6f 6f 20 6c 6f 6e 67 ."Data.in.input.file.is.too.long
4380 20 28 32 5e 36 33 20 62 79 74 65 73 20 6f 72 20 6d 6f 72 65 29 2e 22 3b 0a 20 20 20 20 20 20 72 .(2^63.bytes.or.more).";.......r
43a0 65 74 76 61 6c 5f 20 3d 20 32 3b 20 72 65 74 75 72 6e 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 etval_.=.2;.return;.......}.....
43c0 69 66 28 20 69 20 2b 20 31 20 3e 3d 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 73 69 7a 65 28 if(.i.+.1.>=.member_vector.size(
43e0 29 20 29 20 62 72 65 61 6b 3b 0a 20 20 20 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 5b 69 2b 31 ).).break;.....member_vector[i+1
4400 5d 2e 64 62 6c 6f 63 6b 2e 70 6f 73 28 20 65 6e 64 20 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 0a 00 ].dblock.pos(.end.);.....}...}..
4420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
44a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
44c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
44e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
45a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
45c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
45e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4600 6c 7a 69 70 2d 31 2e 32 35 2f 66 61 73 74 5f 65 6e 63 6f 64 65 72 2e 63 63 00 00 00 00 00 00 00 lzip-1.25/fast_encoder.cc.......
4620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
4680 30 30 31 33 33 35 33 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 35 34 30 31 00 20 30 00 00 00 0013353.14744236057.015401..0...
46a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4700 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
4720 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
4740 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
4760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
47a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
47c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
47e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4800 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
4820 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
4840 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
4860 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
4880 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
48a0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
48c0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
48e0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
4900 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
4920 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
4940 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
4960 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
4980 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
49a0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
49c0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
49e0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
4a00 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
4a20 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
4a40 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
4a60 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
4a80 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
4aa0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
4ac0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 23 64 65 /www.gnu.org/licenses/>..*/..#de
4ae0 66 69 6e 65 20 5f 46 49 4c 45 5f 4f 46 46 53 45 54 5f 42 49 54 53 20 36 34 0a 0a 23 69 6e 63 6c fine._FILE_OFFSET_BITS.64..#incl
4b00 75 64 65 20 3c 61 6c 67 6f 72 69 74 68 6d 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 65 72 72 6e 6f ude.<algorithm>.#include.<cerrno
4b20 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 64 6c 69 62 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 >.#include.<cstdlib>.#include.<c
4b40 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 string>.#include.<string>.#inclu
4b60 64 65 20 3c 76 65 63 74 6f 72 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6e 74 2e 68 3e 0a de.<vector>.#include.<stdint.h>.
4b80 0a 23 69 6e 63 6c 75 64 65 20 22 6c 7a 69 70 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 65 6e 63 .#include."lzip.h".#include."enc
4ba0 6f 64 65 72 5f 62 61 73 65 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 66 61 73 74 5f 65 6e 63 6f oder_base.h".#include."fast_enco
4bc0 64 65 72 2e 68 22 0a 0a 0a 69 6e 74 20 46 4c 5a 5f 65 6e 63 6f 64 65 72 3a 3a 6c 6f 6e 67 65 73 der.h"...int.FLZ_encoder::longes
4be0 74 5f 6d 61 74 63 68 5f 6c 65 6e 28 20 69 6e 74 20 2a 20 63 6f 6e 73 74 20 64 69 73 74 61 6e 63 t_match_len(.int.*.const.distanc
4c00 65 20 29 0a 20 20 7b 0a 20 20 65 6e 75 6d 20 7b 20 6c 65 6e 5f 6c 69 6d 69 74 20 3d 20 31 36 20 e.)...{...enum.{.len_limit.=.16.
4c20 7d 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 61 76 61 69 6c 61 62 6c 65 20 3d 20 73 74 64 3a 3a };...const.int.available.=.std::
4c40 6d 69 6e 28 20 61 76 61 69 6c 61 62 6c 65 5f 62 79 74 65 73 28 29 2c 20 28 69 6e 74 29 6d 61 78 min(.available_bytes(),.(int)max
4c60 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 3b 0a 20 20 69 66 28 20 61 76 61 69 6c 61 62 6c 65 20 3c 20 _match_len.);...if(.available.<.
4c80 6c 65 6e 5f 6c 69 6d 69 74 20 29 20 72 65 74 75 72 6e 20 30 3b 0a 0a 20 20 63 6f 6e 73 74 20 75 len_limit.).return.0;....const.u
4ca0 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 64 61 74 61 20 3d 20 70 74 72 5f 74 6f 5f 63 75 72 int8_t.*.const.data.=.ptr_to_cur
4cc0 72 65 6e 74 5f 70 6f 73 28 29 3b 0a 20 20 6b 65 79 34 20 3d 20 28 20 28 20 6b 65 79 34 20 3c 3c rent_pos();...key4.=.(.(.key4.<<
4ce0 20 34 20 29 20 5e 20 64 61 74 61 5b 33 5d 20 29 20 26 20 6b 65 79 34 5f 6d 61 73 6b 3b 0a 20 20 .4.).^.data[3].).&.key4_mask;...
4d00 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 31 20 3d 20 70 6f 73 20 2b 20 31 3b 0a 20 20 69 6e 74 20 const.int.pos1.=.pos.+.1;...int.
4d20 6e 65 77 70 6f 73 31 20 3d 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 5b 6b 65 79 34 5d 3b 0a newpos1.=.prev_positions[key4];.
4d40 20 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 5b 6b 65 79 34 5d 20 3d 20 70 6f 73 31 3b 0a 20 ..prev_positions[key4].=.pos1;..
4d60 20 69 6e 74 33 32 5f 74 20 2a 20 70 74 72 30 20 3d 20 70 6f 73 5f 61 72 72 61 79 20 2b 20 63 79 .int32_t.*.ptr0.=.pos_array.+.cy
4d80 63 6c 69 63 5f 70 6f 73 3b 0a 20 20 69 6e 74 20 6d 61 78 6c 65 6e 20 3d 20 30 3b 0a 0a 20 20 66 clic_pos;...int.maxlen.=.0;....f
4da0 6f 72 28 20 69 6e 74 20 63 6f 75 6e 74 20 3d 20 34 3b 20 3b 20 29 0a 20 20 20 20 7b 0a 20 20 20 or(.int.count.=.4;.;.).....{....
4dc0 20 69 6e 74 20 64 65 6c 74 61 3b 0a 20 20 20 20 69 66 28 20 6e 65 77 70 6f 73 31 20 3c 3d 20 30 .int.delta;.....if(.newpos1.<=.0
4de0 20 7c 7c 20 2d 2d 63 6f 75 6e 74 20 3c 20 30 20 7c 7c 0a 20 20 20 20 20 20 20 20 28 20 64 65 6c .||.--count.<.0.||.........(.del
4e00 74 61 20 3d 20 70 6f 73 31 20 2d 20 6e 65 77 70 6f 73 31 20 29 20 3e 20 64 69 63 74 69 6f 6e 61 ta.=.pos1.-.newpos1.).>.dictiona
4e20 72 79 5f 73 69 7a 65 20 29 20 7b 20 2a 70 74 72 30 20 3d 20 30 3b 20 62 72 65 61 6b 3b 20 7d 0a ry_size.).{.*ptr0.=.0;.break;.}.
4e40 20 20 20 20 69 6e 74 33 32 5f 74 20 2a 20 63 6f 6e 73 74 20 6e 65 77 70 74 72 20 3d 20 70 6f 73 ....int32_t.*.const.newptr.=.pos
4e60 5f 61 72 72 61 79 20 2b 0a 20 20 20 20 20 20 28 20 63 79 63 6c 69 63 5f 70 6f 73 20 2d 20 64 65 _array.+.......(.cyclic_pos.-.de
4e80 6c 74 61 20 2b 0a 20 20 20 20 20 20 20 20 20 20 28 20 28 20 63 79 63 6c 69 63 5f 70 6f 73 20 3e lta.+...........(.(.cyclic_pos.>
4ea0 3d 20 64 65 6c 74 61 20 29 20 3f 20 30 20 3a 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 =.delta.).?.0.:.dictionary_size.
4ec0 2b 20 31 20 29 20 29 3b 0a 0a 20 20 20 20 69 66 28 20 64 61 74 61 5b 6d 61 78 6c 65 6e 2d 64 65 +.1.).);......if(.data[maxlen-de
4ee0 6c 74 61 5d 20 3d 3d 20 64 61 74 61 5b 6d 61 78 6c 65 6e 5d 20 29 0a 20 20 20 20 20 20 7b 0a 20 lta].==.data[maxlen].).......{..
4f00 20 20 20 20 20 69 6e 74 20 6c 65 6e 20 3d 20 30 3b 0a 20 20 20 20 20 20 77 68 69 6c 65 28 20 6c .....int.len.=.0;.......while(.l
4f20 65 6e 20 3c 20 61 76 61 69 6c 61 62 6c 65 20 26 26 20 64 61 74 61 5b 6c 65 6e 2d 64 65 6c 74 61 en.<.available.&&.data[len-delta
4f40 5d 20 3d 3d 20 64 61 74 61 5b 6c 65 6e 5d 20 29 20 2b 2b 6c 65 6e 3b 0a 20 20 20 20 20 20 69 66 ].==.data[len].).++len;.......if
4f60 28 20 6d 61 78 6c 65 6e 20 3c 20 6c 65 6e 20 29 0a 20 20 20 20 20 20 20 20 7b 20 6d 61 78 6c 65 (.maxlen.<.len.).........{.maxle
4f80 6e 20 3d 20 6c 65 6e 3b 20 2a 64 69 73 74 61 6e 63 65 20 3d 20 64 65 6c 74 61 20 2d 20 31 3b 0a n.=.len;.*distance.=.delta.-.1;.
4fa0 20 20 20 20 20 20 20 20 20 20 69 66 28 20 6d 61 78 6c 65 6e 20 3e 3d 20 6c 65 6e 5f 6c 69 6d 69 ..........if(.maxlen.>=.len_limi
4fc0 74 20 29 20 7b 20 2a 70 74 72 30 20 3d 20 2a 6e 65 77 70 74 72 3b 20 62 72 65 61 6b 3b 20 7d 20 t.).{.*ptr0.=.*newptr;.break;.}.
4fe0 7d 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 2a 70 74 72 30 20 3d 20 6e 65 77 70 6f 73 31 3b 0a }.......}......*ptr0.=.newpos1;.
5000 20 20 20 20 70 74 72 30 20 3d 20 6e 65 77 70 74 72 3b 0a 20 20 20 20 6e 65 77 70 6f 73 31 20 3d ....ptr0.=.newptr;.....newpos1.=
5020 20 2a 70 74 72 30 3b 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 6d 61 78 6c 65 6e 3b 0a 20 .*ptr0;.....}...return.maxlen;..
5040 20 7d 0a 0a 0a 62 6f 6f 6c 20 46 4c 5a 5f 65 6e 63 6f 64 65 72 3a 3a 65 6e 63 6f 64 65 5f 6d 65 .}...bool.FLZ_encoder::encode_me
5060 6d 62 65 72 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d mber(.const.unsigned.long.long.m
5080 65 6d 62 65 72 5f 73 69 7a 65 20 29 0a 20 20 7b 0a 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 ember_size.)...{...const.unsigne
50a0 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 7a 65 5f 6c 69 6d 69 74 20 3d 0a d.long.long.member_size_limit.=.
50c0 20 20 20 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 2d 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a ....member_size.-.Lzip_trailer::
50e0 73 69 7a 65 20 2d 20 6d 61 78 5f 6d 61 72 6b 65 72 5f 73 69 7a 65 3b 0a 20 20 69 6e 74 20 72 65 size.-.max_marker_size;...int.re
5100 70 20 3d 20 30 3b 0a 20 20 69 6e 74 20 72 65 70 73 5b 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e p.=.0;...int.reps[num_rep_distan
5120 63 65 73 5d 3b 0a 20 20 53 74 61 74 65 20 73 74 61 74 65 3b 0a 20 20 66 6f 72 28 20 69 6e 74 20 ces];...State.state;...for(.int.
5140 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 3b 20 2b 2b i.=.0;.i.<.num_rep_distances;.++
5160 69 20 29 20 72 65 70 73 5b 69 5d 20 3d 20 30 3b 0a 0a 20 20 69 66 28 20 64 61 74 61 5f 70 6f 73 i.).reps[i].=.0;....if(.data_pos
5180 69 74 69 6f 6e 28 29 20 21 3d 20 30 20 7c 7c 20 72 65 6e 63 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 ition().!=.0.||.renc.member_posi
51a0 74 69 6f 6e 28 29 20 21 3d 20 4c 7a 69 70 5f 68 65 61 64 65 72 3a 3a 73 69 7a 65 20 29 0a 20 20 tion().!=.Lzip_header::size.)...
51c0 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 09 09 09 09 2f 2f 20 63 61 6e 20 62 65 20 63 61 6c ..return.false;....//.can.be.cal
51e0 6c 65 64 20 6f 6e 6c 79 20 6f 6e 63 65 0a 0a 20 20 69 66 28 20 21 64 61 74 61 5f 66 69 6e 69 73 led.only.once....if(.!data_finis
5200 68 65 64 28 29 20 29 09 09 09 2f 2f 20 65 6e 63 6f 64 65 20 66 69 72 73 74 20 62 79 74 65 0a 20 hed().)...//.encode.first.byte..
5220 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 70 72 65 76 5f 62 79 74 65 ...{.....const.uint8_t.prev_byte
5240 20 3d 20 30 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 63 75 72 5f 62 79 74 65 .=.0;.....const.uint8_t.cur_byte
5260 20 3d 20 70 65 65 6b 28 20 30 20 29 3b 0a 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 .=.peek(.0.);.....renc.encode_bi
5280 74 28 20 62 6d 5f 6d 61 74 63 68 5b 73 74 61 74 65 28 29 5d 5b 30 5d 2c 20 30 20 29 3b 0a 20 20 t(.bm_match[state()][0],.0.);...
52a0 20 20 65 6e 63 6f 64 65 5f 6c 69 74 65 72 61 6c 28 20 70 72 65 76 5f 62 79 74 65 2c 20 63 75 72 ..encode_literal(.prev_byte,.cur
52c0 5f 62 79 74 65 20 29 3b 0a 20 20 20 20 63 72 63 33 32 2e 75 70 64 61 74 65 5f 62 79 74 65 28 20 _byte.);.....crc32.update_byte(.
52e0 63 72 63 5f 2c 20 63 75 72 5f 62 79 74 65 20 29 3b 0a 20 20 20 20 72 65 73 65 74 5f 6b 65 79 34 crc_,.cur_byte.);.....reset_key4
5300 28 29 3b 0a 20 20 20 20 75 70 64 61 74 65 5f 61 6e 64 5f 6d 6f 76 65 28 20 31 20 29 3b 0a 20 20 ();.....update_and_move(.1.);...
5320 20 20 7d 0a 0a 20 20 77 68 69 6c 65 28 20 21 64 61 74 61 5f 66 69 6e 69 73 68 65 64 28 29 20 26 ..}....while(.!data_finished().&
5340 26 20 72 65 6e 63 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 20 3c 20 6d 65 6d 62 65 &.renc.member_position().<.membe
5360 72 5f 73 69 7a 65 5f 6c 69 6d 69 74 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 6e 74 20 6d 61 74 r_size_limit.).....{.....int.mat
5380 63 68 5f 64 69 73 74 61 6e 63 65 3b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6d 61 69 6e 5f ch_distance;.....const.int.main_
53a0 6c 65 6e 20 3d 20 6c 6f 6e 67 65 73 74 5f 6d 61 74 63 68 5f 6c 65 6e 28 20 26 6d 61 74 63 68 5f len.=.longest_match_len(.&match_
53c0 64 69 73 74 61 6e 63 65 20 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 distance.);.....const.int.pos_st
53e0 61 74 65 20 3d 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 26 20 70 6f 73 5f 73 74 61 74 ate.=.data_position().&.pos_stat
5400 65 5f 6d 61 73 6b 3b 0a 20 20 20 20 69 6e 74 20 6c 65 6e 20 3d 20 30 3b 0a 0a 20 20 20 20 66 6f e_mask;.....int.len.=.0;......fo
5420 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e r(.int.i.=.0;.i.<.num_rep_distan
5440 63 65 73 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 ces;.++i.).......{.......const.i
5460 6e 74 20 74 6c 65 6e 20 3d 20 74 72 75 65 5f 6d 61 74 63 68 5f 6c 65 6e 28 20 30 2c 20 72 65 70 nt.tlen.=.true_match_len(.0,.rep
5480 73 5b 69 5d 20 2b 20 31 20 29 3b 0a 20 20 20 20 20 20 69 66 28 20 74 6c 65 6e 20 3e 20 6c 65 6e s[i].+.1.);.......if(.tlen.>.len
54a0 20 29 20 7b 20 6c 65 6e 20 3d 20 74 6c 65 6e 3b 20 72 65 70 20 3d 20 69 3b 20 7d 0a 20 20 20 20 .).{.len.=.tlen;.rep.=.i;.}.....
54c0 20 20 7d 0a 20 20 20 20 69 66 28 20 6c 65 6e 20 3e 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 ..}.....if(.len.>.min_match_len.
54e0 26 26 20 6c 65 6e 20 2b 20 33 20 3e 20 6d 61 69 6e 5f 6c 65 6e 20 29 0a 20 20 20 20 20 20 7b 0a &&.len.+.3.>.main_len.).......{.
5500 20 20 20 20 20 20 63 72 63 33 32 2e 75 70 64 61 74 65 5f 62 75 66 28 20 63 72 63 5f 2c 20 70 74 ......crc32.update_buf(.crc_,.pt
5520 72 5f 74 6f 5f 63 75 72 72 65 6e 74 5f 70 6f 73 28 29 2c 20 6c 65 6e 20 29 3b 0a 20 20 20 20 20 r_to_current_pos(),.len.);......
5540 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 6d 61 74 63 68 5b 73 74 61 74 65 .renc.encode_bit(.bm_match[state
5560 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 31 20 29 3b 0a 20 20 20 20 20 20 72 65 6e 63 2e ()][pos_state],.1.);.......renc.
5580 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 5b 73 74 61 74 65 28 29 5d 2c 20 31 20 29 encode_bit(.bm_rep[state()],.1.)
55a0 3b 0a 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 30 ;.......renc.encode_bit(.bm_rep0
55c0 5b 73 74 61 74 65 28 29 5d 2c 20 72 65 70 20 21 3d 20 30 20 29 3b 0a 20 20 20 20 20 20 69 66 28 [state()],.rep.!=.0.);.......if(
55e0 20 72 65 70 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f .rep.==.0.).........renc.encode_
5600 62 69 74 28 20 62 6d 5f 6c 65 6e 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 2c bit(.bm_len[state()][pos_state],
5620 20 31 20 29 3b 0a 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 .1.);.......else.........{......
5640 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 31 5b 73 74 61 74 ...renc.encode_bit(.bm_rep1[stat
5660 65 28 29 5d 2c 20 72 65 70 20 3e 20 31 20 29 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 72 65 70 e()],.rep.>.1.);.........if(.rep
5680 20 3e 20 31 20 29 0a 20 20 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 .>.1.)...........renc.encode_bit
56a0 28 20 62 6d 5f 72 65 70 32 5b 73 74 61 74 65 28 29 5d 2c 20 72 65 70 20 3e 20 32 20 29 3b 0a 20 (.bm_rep2[state()],.rep.>.2.);..
56c0 20 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 73 74 61 6e 63 65 20 3d 20 72 65 70 73 .......const.int.distance.=.reps
56e0 5b 72 65 70 5d 3b 0a 20 20 20 20 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 72 65 70 3b [rep];.........for(.int.i.=.rep;
5700 20 69 20 3e 20 30 3b 20 2d 2d 69 20 29 20 72 65 70 73 5b 69 5d 20 3d 20 72 65 70 73 5b 69 2d 31 .i.>.0;.--i.).reps[i].=.reps[i-1
5720 5d 3b 0a 20 20 20 20 20 20 20 20 72 65 70 73 5b 30 5d 20 3d 20 64 69 73 74 61 6e 63 65 3b 0a 20 ];.........reps[0].=.distance;..
5740 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 73 74 61 74 65 2e 73 65 74 5f 72 65 70 28 29 3b 0a .......}.......state.set_rep();.
5760 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 6c 65 6e 28 20 72 65 70 5f 6c 65 6e 5f 6d ......renc.encode_len(.rep_len_m
5780 6f 64 65 6c 2c 20 6c 65 6e 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 20 6d 6f odel,.len,.pos_state.);.......mo
57a0 76 65 5f 70 6f 73 28 29 3b 0a 20 20 20 20 20 20 75 70 64 61 74 65 5f 61 6e 64 5f 6d 6f 76 65 28 ve_pos();.......update_and_move(
57c0 20 6c 65 6e 20 2d 20 31 20 29 3b 0a 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 .len.-.1.);.......continue;.....
57e0 20 20 7d 0a 0a 20 20 20 20 69 66 28 20 6d 61 69 6e 5f 6c 65 6e 20 3e 20 6d 69 6e 5f 6d 61 74 63 ..}......if(.main_len.>.min_matc
5800 68 5f 6c 65 6e 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 72 63 33 32 2e 75 70 64 61 h_len.).......{.......crc32.upda
5820 74 65 5f 62 75 66 28 20 63 72 63 5f 2c 20 70 74 72 5f 74 6f 5f 63 75 72 72 65 6e 74 5f 70 6f 73 te_buf(.crc_,.ptr_to_current_pos
5840 28 29 2c 20 6d 61 69 6e 5f 6c 65 6e 20 29 3b 0a 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 (),.main_len.);.......renc.encod
5860 65 5f 62 69 74 28 20 62 6d 5f 6d 61 74 63 68 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 e_bit(.bm_match[state()][pos_sta
5880 74 65 5d 2c 20 31 20 29 3b 0a 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 te],.1.);.......renc.encode_bit(
58a0 20 62 6d 5f 72 65 70 5b 73 74 61 74 65 28 29 5d 2c 20 30 20 29 3b 0a 20 20 20 20 20 20 73 74 61 .bm_rep[state()],.0.);.......sta
58c0 74 65 2e 73 65 74 5f 6d 61 74 63 68 28 29 3b 0a 20 20 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 te.set_match();.......for(.int.i
58e0 20 3d 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 20 2d 20 31 3b 20 69 20 3e 20 30 3b .=.num_rep_distances.-.1;.i.>.0;
5900 20 2d 2d 69 20 29 20 72 65 70 73 5b 69 5d 20 3d 20 72 65 70 73 5b 69 2d 31 5d 3b 0a 20 20 20 20 .--i.).reps[i].=.reps[i-1];.....
5920 20 20 72 65 70 73 5b 30 5d 20 3d 20 6d 61 74 63 68 5f 64 69 73 74 61 6e 63 65 3b 0a 20 20 20 20 ..reps[0].=.match_distance;.....
5940 20 20 65 6e 63 6f 64 65 5f 70 61 69 72 28 20 6d 61 74 63 68 5f 64 69 73 74 61 6e 63 65 2c 20 6d ..encode_pair(.match_distance,.m
5960 61 69 6e 5f 6c 65 6e 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 20 6d 6f 76 65 ain_len,.pos_state.);.......move
5980 5f 70 6f 73 28 29 3b 0a 20 20 20 20 20 20 75 70 64 61 74 65 5f 61 6e 64 5f 6d 6f 76 65 28 20 6d _pos();.......update_and_move(.m
59a0 61 69 6e 5f 6c 65 6e 20 2d 20 31 20 29 3b 0a 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 ain_len.-.1.);.......continue;..
59c0 20 20 20 20 20 7d 0a 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 70 72 65 76 5f 62 .....}......const.uint8_t.prev_b
59e0 79 74 65 20 3d 20 70 65 65 6b 28 20 31 20 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 yte.=.peek(.1.);.....const.uint8
5a00 5f 74 20 63 75 72 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 30 20 29 3b 0a 20 20 20 20 63 6f 6e _t.cur_byte.=.peek(.0.);.....con
5a20 73 74 20 75 69 6e 74 38 5f 74 20 6d 61 74 63 68 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 72 65 st.uint8_t.match_byte.=.peek(.re
5a40 70 73 5b 30 5d 20 2b 20 31 20 29 3b 0a 20 20 20 20 6d 6f 76 65 5f 70 6f 73 28 29 3b 0a 20 20 20 ps[0].+.1.);.....move_pos();....
5a60 20 63 72 63 33 32 2e 75 70 64 61 74 65 5f 62 79 74 65 28 20 63 72 63 5f 2c 20 63 75 72 5f 62 79 .crc32.update_byte(.crc_,.cur_by
5a80 74 65 20 29 3b 0a 0a 20 20 20 20 69 66 28 20 6d 61 74 63 68 5f 62 79 74 65 20 3d 3d 20 63 75 72 te.);......if(.match_byte.==.cur
5aa0 5f 62 79 74 65 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 _byte.).......{.......const.int.
5ac0 73 68 6f 72 74 72 65 70 5f 70 72 69 63 65 20 3d 20 70 72 69 63 65 31 28 20 62 6d 5f 6d 61 74 63 shortrep_price.=.price1(.bm_matc
5ae0 68 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 20 29 20 2b 0a 20 20 20 20 20 20 h[state()][pos_state].).+.......
5b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 ...........................price
5b20 31 28 20 62 6d 5f 72 65 70 5b 73 74 61 74 65 28 29 5d 20 29 20 2b 0a 20 20 20 20 20 20 20 20 20 1(.bm_rep[state()].).+..........
5b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 30 28 20 ........................price0(.
5b60 62 6d 5f 72 65 70 30 5b 73 74 61 74 65 28 29 5d 20 29 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 bm_rep0[state()].).+............
5b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 30 28 20 62 6d ......................price0(.bm
5ba0 5f 6c 65 6e 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 20 29 3b 0a 20 20 20 20 _len[state()][pos_state].);.....
5bc0 20 20 69 6e 74 20 70 72 69 63 65 20 3d 20 70 72 69 63 65 30 28 20 62 6d 5f 6d 61 74 63 68 5b 73 ..int.price.=.price0(.bm_match[s
5be0 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 20 29 3b 0a 20 20 20 20 20 20 69 66 28 20 tate()][pos_state].);.......if(.
5c00 73 74 61 74 65 2e 69 73 5f 63 68 61 72 28 29 20 29 0a 20 20 20 20 20 20 20 20 70 72 69 63 65 20 state.is_char().).........price.
5c20 2b 3d 20 70 72 69 63 65 5f 6c 69 74 65 72 61 6c 28 20 70 72 65 76 5f 62 79 74 65 2c 20 63 75 72 +=.price_literal(.prev_byte,.cur
5c40 5f 62 79 74 65 20 29 3b 0a 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 70 72 69 63 _byte.);.......else.........pric
5c60 65 20 2b 3d 20 70 72 69 63 65 5f 6d 61 74 63 68 65 64 28 20 70 72 65 76 5f 62 79 74 65 2c 20 63 e.+=.price_matched(.prev_byte,.c
5c80 75 72 5f 62 79 74 65 2c 20 6d 61 74 63 68 5f 62 79 74 65 20 29 3b 0a 20 20 20 20 20 20 69 66 28 ur_byte,.match_byte.);.......if(
5ca0 20 73 68 6f 72 74 72 65 70 5f 70 72 69 63 65 20 3c 20 70 72 69 63 65 20 29 0a 20 20 20 20 20 20 .shortrep_price.<.price.).......
5cc0 20 20 7b 0a 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f ..{.........renc.encode_bit(.bm_
5ce0 6d 61 74 63 68 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 31 20 29 3b 0a match[state()][pos_state],.1.);.
5d00 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 5b ........renc.encode_bit(.bm_rep[
5d20 73 74 61 74 65 28 29 5d 2c 20 31 20 29 3b 0a 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f state()],.1.);.........renc.enco
5d40 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 30 5b 73 74 61 74 65 28 29 5d 2c 20 30 20 29 3b 0a 20 de_bit(.bm_rep0[state()],.0.);..
5d60 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 6c 65 6e 5b 73 .......renc.encode_bit(.bm_len[s
5d80 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 30 20 29 3b 0a 20 20 20 20 20 20 20 tate()][pos_state],.0.);........
5da0 20 73 74 61 74 65 2e 73 65 74 5f 73 68 6f 72 74 72 65 70 28 29 3b 0a 20 20 20 20 20 20 20 20 63 .state.set_shortrep();.........c
5dc0 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 ontinue;.........}.......}......
5de0 2f 2f 20 6c 69 74 65 72 61 6c 20 62 79 74 65 0a 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f //.literal.byte.....renc.encode_
5e00 62 69 74 28 20 62 6d 5f 6d 61 74 63 68 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 bit(.bm_match[state()][pos_state
5e20 5d 2c 20 30 20 29 3b 0a 20 20 20 20 69 66 28 20 73 74 61 74 65 2e 69 73 5f 63 68 61 72 5f 73 65 ],.0.);.....if(.state.is_char_se
5e40 74 5f 63 68 61 72 28 29 20 29 0a 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 6c 69 74 65 72 61 6c 28 t_char().).......encode_literal(
5e60 20 70 72 65 76 5f 62 79 74 65 2c 20 63 75 72 5f 62 79 74 65 20 29 3b 0a 20 20 20 20 65 6c 73 65 .prev_byte,.cur_byte.);.....else
5e80 0a 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 6d 61 74 63 68 65 64 28 20 70 72 65 76 5f 62 79 74 65 .......encode_matched(.prev_byte
5ea0 2c 20 63 75 72 5f 62 79 74 65 2c 20 6d 61 74 63 68 5f 62 79 74 65 20 29 3b 0a 20 20 20 20 7d 0a ,.cur_byte,.match_byte.);.....}.
5ec0 0a 20 20 66 75 6c 6c 5f 66 6c 75 73 68 28 20 73 74 61 74 65 20 29 3b 0a 20 20 72 65 74 75 72 6e ...full_flush(.state.);...return
5ee0 20 74 72 75 65 3b 0a 20 20 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .true;...}......................
5f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6000 6c 7a 69 70 2d 31 2e 32 35 2f 6c 7a 69 70 2e 68 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/lzip.h................
6020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6060 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
6080 30 30 32 35 37 31 35 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 33 35 37 32 00 20 30 00 00 00 0025715.14744236057.013572..0...
60a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
60c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
60e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6100 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
6120 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
6140 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
6160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
61a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
61c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
61e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6200 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
6220 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
6240 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
6260 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
6280 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
62a0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
62c0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
62e0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
6300 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
6320 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
6340 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
6360 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
6380 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
63a0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
63c0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
63e0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
6400 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
6420 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
6440 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
6460 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
6480 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
64a0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
64c0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 63 6c 61 /www.gnu.org/licenses/>..*/..cla
64e0 73 73 20 53 74 61 74 65 0a 20 20 7b 0a 20 20 69 6e 74 20 73 74 3b 0a 0a 70 75 62 6c 69 63 3a 0a ss.State...{...int.st;..public:.
6500 20 20 65 6e 75 6d 20 7b 20 73 74 61 74 65 73 20 3d 20 31 32 20 7d 3b 0a 20 20 53 74 61 74 65 28 ..enum.{.states.=.12.};...State(
6520 29 20 3a 20 73 74 28 20 30 20 29 20 7b 7d 0a 20 20 69 6e 74 20 6f 70 65 72 61 74 6f 72 28 29 28 ).:.st(.0.).{}...int.operator()(
6540 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 73 74 3b 20 7d 0a 20 20 62 6f 6f 6c 20 69 73 ).const.{.return.st;.}...bool.is
6560 5f 63 68 61 72 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 73 74 20 3c 20 37 3b 20 7d _char().const.{.return.st.<.7;.}
6580 0a 0a 20 20 76 6f 69 64 20 73 65 74 5f 63 68 61 72 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 73 74 ....void.set_char().....{.....st
65a0 61 74 69 63 20 63 6f 6e 73 74 20 69 6e 74 20 6e 65 78 74 5b 73 74 61 74 65 73 5d 20 3d 20 7b 20 atic.const.int.next[states].=.{.
65c0 30 2c 20 30 2c 20 30 2c 20 30 2c 20 31 2c 20 32 2c 20 33 2c 20 34 2c 20 35 2c 20 36 2c 20 34 2c 0,.0,.0,.0,.1,.2,.3,.4,.5,.6,.4,
65e0 20 35 20 7d 3b 0a 20 20 20 20 73 74 20 3d 20 6e 65 78 74 5b 73 74 5d 3b 0a 20 20 20 20 7d 0a 20 .5.};.....st.=.next[st];.....}..
6600 20 62 6f 6f 6c 20 69 73 5f 63 68 61 72 5f 73 65 74 5f 63 68 61 72 28 29 20 7b 20 73 65 74 5f 63 .bool.is_char_set_char().{.set_c
6620 68 61 72 28 29 3b 20 72 65 74 75 72 6e 20 73 74 20 3c 20 34 3b 20 7d 0a 20 20 76 6f 69 64 20 73 har();.return.st.<.4;.}...void.s
6640 65 74 5f 63 68 61 72 5f 72 65 70 28 29 20 7b 20 73 74 20 3d 20 38 3b 20 7d 0a 20 20 76 6f 69 64 et_char_rep().{.st.=.8;.}...void
6660 20 73 65 74 5f 6d 61 74 63 68 28 29 20 20 20 20 7b 20 73 74 20 3d 20 28 20 73 74 20 3c 20 37 20 .set_match()....{.st.=.(.st.<.7.
6680 29 20 3f 20 37 20 3a 20 31 30 3b 20 7d 0a 20 20 76 6f 69 64 20 73 65 74 5f 72 65 70 28 29 20 20 ).?.7.:.10;.}...void.set_rep()..
66a0 20 20 20 20 7b 20 73 74 20 3d 20 28 20 73 74 20 3c 20 37 20 29 20 3f 20 38 20 3a 20 31 31 3b 20 ....{.st.=.(.st.<.7.).?.8.:.11;.
66c0 7d 0a 20 20 76 6f 69 64 20 73 65 74 5f 73 68 6f 72 74 72 65 70 28 29 20 7b 20 73 74 20 3d 20 28 }...void.set_shortrep().{.st.=.(
66e0 20 73 74 20 3c 20 37 20 29 20 3f 20 39 20 3a 20 31 31 3b 20 7d 0a 20 20 7d 3b 0a 0a 0a 65 6e 75 .st.<.7.).?.9.:.11;.}...};...enu
6700 6d 20 7b 0a 20 20 6d 69 6e 5f 64 69 63 74 69 6f 6e 61 72 79 5f 62 69 74 73 20 3d 20 31 32 2c 0a m.{...min_dictionary_bits.=.12,.
6720 20 20 6d 69 6e 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3d 20 31 20 3c 3c 20 6d 69 6e ..min_dictionary_size.=.1.<<.min
6740 5f 64 69 63 74 69 6f 6e 61 72 79 5f 62 69 74 73 2c 09 2f 2f 20 3e 3d 20 6d 6f 64 65 6c 65 64 5f _dictionary_bits,.//.>=.modeled_
6760 64 69 73 74 61 6e 63 65 73 0a 20 20 6d 61 78 5f 64 69 63 74 69 6f 6e 61 72 79 5f 62 69 74 73 20 distances...max_dictionary_bits.
6780 3d 20 32 39 2c 0a 20 20 6d 61 78 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3d 20 31 20 =.29,...max_dictionary_size.=.1.
67a0 3c 3c 20 6d 61 78 5f 64 69 63 74 69 6f 6e 61 72 79 5f 62 69 74 73 2c 0a 20 20 6d 69 6e 5f 6d 65 <<.max_dictionary_bits,...min_me
67c0 6d 62 65 72 5f 73 69 7a 65 20 3d 20 33 36 2c 0a 20 20 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 mber_size.=.36,...literal_contex
67e0 74 5f 62 69 74 73 20 3d 20 33 2c 0a 20 20 6c 69 74 65 72 61 6c 5f 70 6f 73 5f 73 74 61 74 65 5f t_bits.=.3,...literal_pos_state_
6800 62 69 74 73 20 3d 20 30 2c 09 09 09 09 2f 2f 20 6e 6f 74 20 75 73 65 64 0a 20 20 70 6f 73 5f 73 bits.=.0,....//.not.used...pos_s
6820 74 61 74 65 5f 62 69 74 73 20 3d 20 32 2c 0a 20 20 70 6f 73 5f 73 74 61 74 65 73 20 3d 20 31 20 tate_bits.=.2,...pos_states.=.1.
6840 3c 3c 20 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 2c 0a 20 20 70 6f 73 5f 73 74 61 74 65 5f 6d <<.pos_state_bits,...pos_state_m
6860 61 73 6b 20 3d 20 70 6f 73 5f 73 74 61 74 65 73 20 2d 20 31 2c 0a 0a 20 20 6c 65 6e 5f 73 74 61 ask.=.pos_states.-.1,....len_sta
6880 74 65 73 20 3d 20 34 2c 0a 20 20 64 69 73 5f 73 6c 6f 74 5f 62 69 74 73 20 3d 20 36 2c 0a 20 20 tes.=.4,...dis_slot_bits.=.6,...
68a0 73 74 61 72 74 5f 64 69 73 5f 6d 6f 64 65 6c 20 3d 20 34 2c 0a 20 20 65 6e 64 5f 64 69 73 5f 6d start_dis_model.=.4,...end_dis_m
68c0 6f 64 65 6c 20 3d 20 31 34 2c 0a 20 20 6d 6f 64 65 6c 65 64 5f 64 69 73 74 61 6e 63 65 73 20 3d odel.=.14,...modeled_distances.=
68e0 20 31 20 3c 3c 20 28 20 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 20 2f 20 32 20 29 2c 09 2f 2f 20 .1.<<.(.end_dis_model./.2.),.//.
6900 31 32 38 0a 20 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 20 3d 20 34 2c 0a 20 20 64 69 73 5f 128...dis_align_bits.=.4,...dis_
6920 61 6c 69 67 6e 5f 73 69 7a 65 20 3d 20 31 20 3c 3c 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 align_size.=.1.<<.dis_align_bits
6940 2c 0a 0a 20 20 6c 65 6e 5f 6c 6f 77 5f 62 69 74 73 20 3d 20 33 2c 0a 20 20 6c 65 6e 5f 6d 69 64 ,....len_low_bits.=.3,...len_mid
6960 5f 62 69 74 73 20 3d 20 33 2c 0a 20 20 6c 65 6e 5f 68 69 67 68 5f 62 69 74 73 20 3d 20 38 2c 0a _bits.=.3,...len_high_bits.=.8,.
6980 20 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 3d 20 31 20 3c 3c 20 6c 65 6e 5f 6c 6f 77 ..len_low_symbols.=.1.<<.len_low
69a0 5f 62 69 74 73 2c 0a 20 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 20 3d 20 31 20 3c 3c 20 _bits,...len_mid_symbols.=.1.<<.
69c0 6c 65 6e 5f 6d 69 64 5f 62 69 74 73 2c 0a 20 20 6c 65 6e 5f 68 69 67 68 5f 73 79 6d 62 6f 6c 73 len_mid_bits,...len_high_symbols
69e0 20 3d 20 31 20 3c 3c 20 6c 65 6e 5f 68 69 67 68 5f 62 69 74 73 2c 0a 20 20 6d 61 78 5f 6c 65 6e .=.1.<<.len_high_bits,...max_len
6a00 5f 73 79 6d 62 6f 6c 73 20 3d 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 2b 20 6c 65 6e _symbols.=.len_low_symbols.+.len
6a20 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 20 2b 20 6c 65 6e 5f 68 69 67 68 5f 73 79 6d 62 6f 6c 73 2c _mid_symbols.+.len_high_symbols,
6a40 0a 0a 20 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 3d 20 32 2c 09 09 09 09 09 2f 2f 20 6d 75 ....min_match_len.=.2,.....//.mu
6a60 73 74 20 62 65 20 32 0a 20 20 6d 61 78 5f 6d 61 74 63 68 5f 6c 65 6e 20 3d 20 6d 69 6e 5f 6d 61 st.be.2...max_match_len.=.min_ma
6a80 74 63 68 5f 6c 65 6e 20 2b 20 6d 61 78 5f 6c 65 6e 5f 73 79 6d 62 6f 6c 73 20 2d 20 31 2c 09 2f tch_len.+.max_len_symbols.-.1,./
6aa0 2f 20 32 37 33 0a 20 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 3d 20 35 20 /.273...min_match_len_limit.=.5.
6ac0 7d 3b 0a 0a 69 6e 6c 69 6e 65 20 69 6e 74 20 67 65 74 5f 6c 65 6e 5f 73 74 61 74 65 28 20 63 6f };..inline.int.get_len_state(.co
6ae0 6e 73 74 20 69 6e 74 20 6c 65 6e 20 29 0a 20 20 7b 20 72 65 74 75 72 6e 20 73 74 64 3a 3a 6d 69 nst.int.len.)...{.return.std::mi
6b00 6e 28 20 6c 65 6e 20 2d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 2c 20 6c 65 6e 5f 73 74 61 74 n(.len.-.min_match_len,.len_stat
6b20 65 73 20 2d 20 31 20 29 3b 20 7d 0a 0a 69 6e 6c 69 6e 65 20 69 6e 74 20 67 65 74 5f 6c 69 74 5f es.-.1.);.}..inline.int.get_lit_
6b40 73 74 61 74 65 28 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 70 72 65 76 5f 62 79 74 65 20 29 state(.const.uint8_t.prev_byte.)
6b60 0a 20 20 7b 20 72 65 74 75 72 6e 20 70 72 65 76 5f 62 79 74 65 20 3e 3e 20 28 20 38 20 2d 20 6c ...{.return.prev_byte.>>.(.8.-.l
6b80 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 74 73 20 29 3b 20 7d 0a 0a 0a 65 6e 75 6d 20 iteral_context_bits.);.}...enum.
6ba0 7b 20 62 69 74 5f 6d 6f 64 65 6c 5f 6d 6f 76 65 5f 62 69 74 73 20 3d 20 35 2c 0a 20 20 20 20 20 {.bit_model_move_bits.=.5,......
6bc0 20 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 5f 62 69 74 73 20 3d 20 31 31 2c 0a 20 20 20 ..bit_model_total_bits.=.11,....
6be0 20 20 20 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 20 3d 20 31 20 3c 3c 20 62 69 74 5f 6d ....bit_model_total.=.1.<<.bit_m
6c00 6f 64 65 6c 5f 74 6f 74 61 6c 5f 62 69 74 73 20 7d 3b 0a 0a 73 74 72 75 63 74 20 42 69 74 5f 6d odel_total_bits.};..struct.Bit_m
6c20 6f 64 65 6c 0a 20 20 7b 0a 20 20 69 6e 74 20 70 72 6f 62 61 62 69 6c 69 74 79 3b 0a 20 20 76 6f odel...{...int.probability;...vo
6c40 69 64 20 72 65 73 65 74 28 29 20 7b 20 70 72 6f 62 61 62 69 6c 69 74 79 20 3d 20 62 69 74 5f 6d id.reset().{.probability.=.bit_m
6c60 6f 64 65 6c 5f 74 6f 74 61 6c 20 2f 20 32 3b 20 7d 0a 20 20 76 6f 69 64 20 72 65 73 65 74 28 20 odel_total./.2;.}...void.reset(.
6c80 63 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 20 29 0a 20 20 20 20 7b 20 66 6f 72 28 20 69 6e 74 20 const.int.size.).....{.for(.int.
6ca0 69 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a 65 3b 20 2b 2b 69 20 29 20 74 68 69 73 5b 69 5d 2e 72 i.=.0;.i.<.size;.++i.).this[i].r
6cc0 65 73 65 74 28 29 3b 20 7d 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 28 29 20 7b 20 72 65 73 65 74 28 eset();.}...Bit_model().{.reset(
6ce0 29 3b 20 7d 0a 20 20 7d 3b 0a 0a 73 74 72 75 63 74 20 4c 65 6e 5f 6d 6f 64 65 6c 0a 20 20 7b 0a );.}...};..struct.Len_model...{.
6d00 20 20 42 69 74 5f 6d 6f 64 65 6c 20 63 68 6f 69 63 65 31 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c ..Bit_model.choice1;...Bit_model
6d20 20 63 68 6f 69 63 65 32 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6c 6f 77 5b 70 6f 73 .choice2;...Bit_model.bm_low[pos
6d40 5f 73 74 61 74 65 73 5d 5b 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 5d 3b 0a 20 20 42 69 74 _states][len_low_symbols];...Bit
6d60 5f 6d 6f 64 65 6c 20 62 6d 5f 6d 69 64 5b 70 6f 73 5f 73 74 61 74 65 73 5d 5b 6c 65 6e 5f 6d 69 _model.bm_mid[pos_states][len_mi
6d80 64 5f 73 79 6d 62 6f 6c 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 68 69 67 68 5b d_symbols];...Bit_model.bm_high[
6da0 6c 65 6e 5f 68 69 67 68 5f 73 79 6d 62 6f 6c 73 5d 3b 0a 0a 20 20 76 6f 69 64 20 72 65 73 65 74 len_high_symbols];....void.reset
6dc0 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 68 6f 69 63 65 31 2e 72 65 73 65 74 28 29 3b 0a 20 20 ().....{.....choice1.reset();...
6de0 20 20 63 68 6f 69 63 65 32 2e 72 65 73 65 74 28 29 3b 0a 20 20 20 20 62 6d 5f 6c 6f 77 5b 30 5d ..choice2.reset();.....bm_low[0]
6e00 5b 30 5d 2e 72 65 73 65 74 28 20 70 6f 73 5f 73 74 61 74 65 73 20 2a 20 6c 65 6e 5f 6c 6f 77 5f [0].reset(.pos_states.*.len_low_
6e20 73 79 6d 62 6f 6c 73 20 29 3b 0a 20 20 20 20 62 6d 5f 6d 69 64 5b 30 5d 5b 30 5d 2e 72 65 73 65 symbols.);.....bm_mid[0][0].rese
6e40 74 28 20 70 6f 73 5f 73 74 61 74 65 73 20 2a 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 20 t(.pos_states.*.len_mid_symbols.
6e60 29 3b 0a 20 20 20 20 62 6d 5f 68 69 67 68 5b 30 5d 2e 72 65 73 65 74 28 20 6c 65 6e 5f 68 69 67 );.....bm_high[0].reset(.len_hig
6e80 68 5f 73 79 6d 62 6f 6c 73 20 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 3b 0a 0a 0a 2f 2f 20 64 65 66 h_symbols.);.....}...};...//.def
6ea0 69 6e 65 64 20 69 6e 20 6d 61 69 6e 2e 63 63 0a 65 78 74 65 72 6e 20 69 6e 74 20 76 65 72 62 6f ined.in.main.cc.extern.int.verbo
6ec0 73 69 74 79 3b 0a 0a 63 6c 61 73 73 20 50 72 65 74 74 79 5f 70 72 69 6e 74 09 09 2f 2f 20 72 65 sity;..class.Pretty_print..//.re
6ee0 71 75 69 72 65 73 20 67 6c 6f 62 61 6c 20 76 61 72 20 27 69 6e 74 20 76 65 72 62 6f 73 69 74 79 quires.global.var.'int.verbosity
6f00 27 0a 20 20 7b 0a 20 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 6e 61 6d 65 5f 3b 0a 20 20 73 74 64 '...{...std::string.name_;...std
6f20 3a 3a 73 74 72 69 6e 67 20 70 61 64 64 65 64 5f 6e 61 6d 65 3b 0a 20 20 63 6f 6e 73 74 20 63 68 ::string.padded_name;...const.ch
6f40 61 72 20 2a 20 63 6f 6e 73 74 20 73 74 64 69 6e 5f 6e 61 6d 65 3b 0a 20 20 75 6e 73 69 67 6e 65 ar.*.const.stdin_name;...unsigne
6f60 64 20 6c 6f 6e 67 65 73 74 5f 6e 61 6d 65 3b 0a 20 20 6d 75 74 61 62 6c 65 20 62 6f 6f 6c 20 66 d.longest_name;...mutable.bool.f
6f80 69 72 73 74 5f 70 6f 73 74 3b 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 50 72 65 74 74 79 5f 70 72 69 irst_post;..public:...Pretty_pri
6fa0 6e 74 28 20 63 6f 6e 73 74 20 73 74 64 3a 3a 76 65 63 74 6f 72 3c 20 73 74 64 3a 3a 73 74 72 69 nt(.const.std::vector<.std::stri
6fc0 6e 67 20 3e 20 26 20 66 69 6c 65 6e 61 6d 65 73 20 29 0a 20 20 20 20 3a 20 73 74 64 69 6e 5f 6e ng.>.&.filenames.).....:.stdin_n
6fe0 61 6d 65 28 20 22 28 73 74 64 69 6e 29 22 20 29 2c 20 6c 6f 6e 67 65 73 74 5f 6e 61 6d 65 28 20 ame(."(stdin)".),.longest_name(.
7000 30 20 29 2c 20 66 69 72 73 74 5f 70 6f 73 74 28 20 66 61 6c 73 65 20 29 0a 20 20 20 20 7b 0a 20 0.),.first_post(.false.).....{..
7020 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3c 3d 20 30 20 29 20 72 65 74 75 72 6e 3b 0a ...if(.verbosity.<=.0.).return;.
7040 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 73 74 64 69 6e 5f 6e 61 6d 65 5f 6c 65 ....const.unsigned.stdin_name_le
7060 6e 20 3d 20 73 74 64 3a 3a 73 74 72 6c 65 6e 28 20 73 74 64 69 6e 5f 6e 61 6d 65 20 29 3b 0a 20 n.=.std::strlen(.stdin_name.);..
7080 20 20 20 66 6f 72 28 20 75 6e 73 69 67 6e 65 64 20 69 20 3d 20 30 3b 20 69 20 3c 20 66 69 6c 65 ...for(.unsigned.i.=.0;.i.<.file
70a0 6e 61 6d 65 73 2e 73 69 7a 65 28 29 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 names.size();.++i.).......{.....
70c0 20 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 26 20 73 20 3d 20 66 69 6c 65 6e 61 ..const.std::string.&.s.=.filena
70e0 6d 65 73 5b 69 5d 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 65 6e mes[i];.......const.unsigned.len
7100 20 3d 20 28 20 73 20 3d 3d 20 22 2d 22 20 29 20 3f 20 73 74 64 69 6e 5f 6e 61 6d 65 5f 6c 65 6e .=.(.s.==."-".).?.stdin_name_len
7120 20 3a 20 73 2e 73 69 7a 65 28 29 3b 0a 20 20 20 20 20 20 69 66 28 20 6c 6f 6e 67 65 73 74 5f 6e .:.s.size();.......if(.longest_n
7140 61 6d 65 20 3c 20 6c 65 6e 20 29 20 6c 6f 6e 67 65 73 74 5f 6e 61 6d 65 20 3d 20 6c 65 6e 3b 0a ame.<.len.).longest_name.=.len;.
7160 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 6c 6f 6e 67 65 73 74 5f 6e 61 6d 65 20 3d 3d 20 ......}.....if(.longest_name.==.
7180 30 20 29 20 6c 6f 6e 67 65 73 74 5f 6e 61 6d 65 20 3d 20 73 74 64 69 6e 5f 6e 61 6d 65 5f 6c 65 0.).longest_name.=.stdin_name_le
71a0 6e 3b 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 73 65 74 5f 6e 61 6d 65 28 20 63 6f 6e 73 74 n;.....}....void.set_name(.const
71c0 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 26 20 66 69 6c 65 6e 61 6d 65 20 29 0a 20 20 20 20 7b 0a .std::string.&.filename.).....{.
71e0 20 20 20 20 69 66 28 20 66 69 6c 65 6e 61 6d 65 2e 73 69 7a 65 28 29 20 26 26 20 66 69 6c 65 6e ....if(.filename.size().&&.filen
7200 61 6d 65 20 21 3d 20 22 2d 22 20 29 20 6e 61 6d 65 5f 20 3d 20 66 69 6c 65 6e 61 6d 65 3b 0a 20 ame.!=."-".).name_.=.filename;..
7220 20 20 20 65 6c 73 65 20 6e 61 6d 65 5f 20 3d 20 73 74 64 69 6e 5f 6e 61 6d 65 3b 0a 20 20 20 20 ...else.name_.=.stdin_name;.....
7240 70 61 64 64 65 64 5f 6e 61 6d 65 20 3d 20 22 20 20 22 3b 20 70 61 64 64 65 64 5f 6e 61 6d 65 20 padded_name.=."..";.padded_name.
7260 2b 3d 20 6e 61 6d 65 5f 3b 20 70 61 64 64 65 64 5f 6e 61 6d 65 20 2b 3d 20 22 3a 20 22 3b 0a 20 +=.name_;.padded_name.+=.":.";..
7280 20 20 20 69 66 28 20 6c 6f 6e 67 65 73 74 5f 6e 61 6d 65 20 3e 20 6e 61 6d 65 5f 2e 73 69 7a 65 ...if(.longest_name.>.name_.size
72a0 28 29 20 29 0a 20 20 20 20 20 20 70 61 64 64 65 64 5f 6e 61 6d 65 2e 61 70 70 65 6e 64 28 20 6c ().).......padded_name.append(.l
72c0 6f 6e 67 65 73 74 5f 6e 61 6d 65 20 2d 20 6e 61 6d 65 5f 2e 73 69 7a 65 28 29 2c 20 27 20 27 20 ongest_name.-.name_.size(),.'.'.
72e0 29 3b 0a 20 20 20 20 66 69 72 73 74 5f 70 6f 73 74 20 3d 20 74 72 75 65 3b 0a 20 20 20 20 7d 0a );.....first_post.=.true;.....}.
7300 0a 20 20 76 6f 69 64 20 72 65 73 65 74 28 29 20 63 6f 6e 73 74 20 7b 20 69 66 28 20 6e 61 6d 65 ...void.reset().const.{.if(.name
7320 5f 2e 73 69 7a 65 28 29 20 29 20 66 69 72 73 74 5f 70 6f 73 74 20 3d 20 74 72 75 65 3b 20 7d 0a _.size().).first_post.=.true;.}.
7340 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 6e 61 6d 65 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 ..const.char.*.name().const.{.re
7360 74 75 72 6e 20 6e 61 6d 65 5f 2e 63 5f 73 74 72 28 29 3b 20 7d 0a 20 20 76 6f 69 64 20 6f 70 65 turn.name_.c_str();.}...void.ope
7380 72 61 74 6f 72 28 29 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6d 73 67 20 rator()(.const.char.*.const.msg.
73a0 3d 20 30 20 29 20 63 6f 6e 73 74 3b 0a 20 20 7d 3b 0a 0a 0a 63 6c 61 73 73 20 43 52 43 33 32 0a =.0.).const;...};...class.CRC32.
73c0 20 20 7b 0a 20 20 75 69 6e 74 33 32 5f 74 20 64 61 74 61 5b 32 35 36 5d 3b 09 09 2f 2f 20 54 61 ..{...uint32_t.data[256];..//.Ta
73e0 62 6c 65 20 6f 66 20 43 52 43 73 20 6f 66 20 61 6c 6c 20 38 2d 62 69 74 20 6d 65 73 73 61 67 65 ble.of.CRCs.of.all.8-bit.message
7400 73 2e 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 43 52 43 33 32 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 s...public:...CRC32().....{.....
7420 66 6f 72 28 20 75 6e 73 69 67 6e 65 64 20 6e 20 3d 20 30 3b 20 6e 20 3c 20 32 35 36 3b 20 2b 2b for(.unsigned.n.=.0;.n.<.256;.++
7440 6e 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 75 6e 73 69 67 6e 65 64 20 63 20 3d 20 6e n.).......{.......unsigned.c.=.n
7460 3b 0a 20 20 20 20 20 20 66 6f 72 28 20 69 6e 74 20 6b 20 3d 20 30 3b 20 6b 20 3c 20 38 3b 20 2b ;.......for(.int.k.=.0;.k.<.8;.+
7480 2b 6b 20 29 0a 20 20 20 20 20 20 20 20 7b 20 69 66 28 20 63 20 26 20 31 20 29 20 63 20 3d 20 30 +k.).........{.if(.c.&.1.).c.=.0
74a0 78 45 44 42 38 38 33 32 30 55 20 5e 20 28 20 63 20 3e 3e 20 31 20 29 3b 20 65 6c 73 65 20 63 20 xEDB88320U.^.(.c.>>.1.);.else.c.
74c0 3e 3e 3d 20 31 3b 20 7d 0a 20 20 20 20 20 20 64 61 74 61 5b 6e 5d 20 3d 20 63 3b 0a 20 20 20 20 >>=.1;.}.......data[n].=.c;.....
74e0 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 75 69 6e 74 33 32 5f 74 20 6f 70 65 72 61 74 6f 72 5b 5d ..}.....}....uint32_t.operator[]
7500 28 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 62 79 74 65 20 29 20 63 6f 6e 73 74 20 7b 20 72 (.const.uint8_t.byte.).const.{.r
7520 65 74 75 72 6e 20 64 61 74 61 5b 62 79 74 65 5d 3b 20 7d 0a 0a 20 20 76 6f 69 64 20 75 70 64 61 eturn.data[byte];.}....void.upda
7540 74 65 5f 62 79 74 65 28 20 75 69 6e 74 33 32 5f 74 20 26 20 63 72 63 2c 20 63 6f 6e 73 74 20 75 te_byte(.uint32_t.&.crc,.const.u
7560 69 6e 74 38 5f 74 20 62 79 74 65 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 63 72 63 20 3d 20 int8_t.byte.).const.....{.crc.=.
7580 64 61 74 61 5b 28 63 72 63 5e 62 79 74 65 29 26 30 78 46 46 5d 20 5e 20 28 20 63 72 63 20 3e 3e data[(crc^byte)&0xFF].^.(.crc.>>
75a0 20 38 20 29 3b 20 7d 0a 0a 20 20 2f 2f 20 61 62 6f 75 74 20 61 73 20 66 61 73 74 20 61 73 20 69 .8.);.}....//.about.as.fast.as.i
75c0 74 20 69 73 20 70 6f 73 73 69 62 6c 65 20 77 69 74 68 6f 75 74 20 6d 65 73 73 69 6e 67 20 77 69 t.is.possible.without.messing.wi
75e0 74 68 20 65 6e 64 69 61 6e 6e 65 73 73 0a 20 20 76 6f 69 64 20 75 70 64 61 74 65 5f 62 75 66 28 th.endianness...void.update_buf(
7600 20 75 69 6e 74 33 32 5f 74 20 26 20 63 72 63 2c 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 2a .uint32_t.&.crc,.const.uint8_t.*
7620 20 63 6f 6e 73 74 20 62 75 66 66 65 72 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .const.buffer,..................
7640 20 20 63 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 ..const.int.size.).const.....{..
7660 20 20 20 75 69 6e 74 33 32 5f 74 20 63 20 3d 20 63 72 63 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e ...uint32_t.c.=.crc;.....for(.in
7680 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a 65 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 63 t.i.=.0;.i.<.size;.++i.).......c
76a0 20 3d 20 64 61 74 61 5b 28 63 5e 62 75 66 66 65 72 5b 69 5d 29 26 30 78 46 46 5d 20 5e 20 28 20 .=.data[(c^buffer[i])&0xFF].^.(.
76c0 63 20 3e 3e 20 38 20 29 3b 0a 20 20 20 20 63 72 63 20 3d 20 63 3b 0a 20 20 20 20 7d 0a 20 20 7d c.>>.8.);.....crc.=.c;.....}...}
76e0 3b 0a 0a 65 78 74 65 72 6e 20 63 6f 6e 73 74 20 43 52 43 33 32 20 63 72 63 33 32 3b 0a 0a 0a 69 ;..extern.const.CRC32.crc32;...i
7700 6e 6c 69 6e 65 20 62 6f 6f 6c 20 69 73 76 61 6c 69 64 5f 64 73 28 20 63 6f 6e 73 74 20 75 6e 73 nline.bool.isvalid_ds(.const.uns
7720 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 7b 20 72 65 74 75 igned.dictionary_size.)...{.retu
7740 72 6e 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3e 3d 20 6d 69 6e 5f 64 69 63 74 69 6f rn.dictionary_size.>=.min_dictio
7760 6e 61 72 79 5f 73 69 7a 65 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 64 69 63 74 69 6f 6e 61 nary_size.&&............dictiona
7780 72 79 5f 73 69 7a 65 20 3c 3d 20 6d 61 78 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 3b 20 ry_size.<=.max_dictionary_size;.
77a0 7d 0a 0a 0a 69 6e 6c 69 6e 65 20 69 6e 74 20 72 65 61 6c 5f 62 69 74 73 28 20 75 6e 73 69 67 6e }...inline.int.real_bits(.unsign
77c0 65 64 20 76 61 6c 75 65 20 29 0a 20 20 7b 0a 20 20 69 6e 74 20 62 69 74 73 20 3d 20 30 3b 0a 20 ed.value.)...{...int.bits.=.0;..
77e0 20 77 68 69 6c 65 28 20 76 61 6c 75 65 20 3e 20 30 20 29 20 7b 20 76 61 6c 75 65 20 3e 3e 3d 20 .while(.value.>.0.).{.value.>>=.
7800 31 3b 20 2b 2b 62 69 74 73 3b 20 7d 0a 20 20 72 65 74 75 72 6e 20 62 69 74 73 3b 0a 20 20 7d 0a 1;.++bits;.}...return.bits;...}.
7820 0a 0a 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 6c 7a 69 70 5f 6d 61 67 69 63 5b 34 5d 20 3d 20 ..const.uint8_t.lzip_magic[4].=.
7840 7b 20 30 78 34 43 2c 20 30 78 35 41 2c 20 30 78 34 39 2c 20 30 78 35 30 20 7d 3b 09 2f 2f 20 22 {.0x4C,.0x5A,.0x49,.0x50.};.//."
7860 4c 5a 49 50 22 0a 0a 73 74 72 75 63 74 20 4c 7a 69 70 5f 68 65 61 64 65 72 0a 20 20 7b 0a 20 20 LZIP"..struct.Lzip_header...{...
7880 65 6e 75 6d 20 7b 20 73 69 7a 65 20 3d 20 36 20 7d 3b 0a 20 20 75 69 6e 74 38 5f 74 20 64 61 74 enum.{.size.=.6.};...uint8_t.dat
78a0 61 5b 73 69 7a 65 5d 3b 09 09 09 2f 2f 20 30 2d 33 20 6d 61 67 69 63 20 62 79 74 65 73 0a 09 09 a[size];...//.0-3.magic.bytes...
78c0 09 09 09 2f 2f 20 20 20 34 20 76 65 72 73 69 6f 6e 0a 09 09 09 09 09 2f 2f 20 20 20 35 20 63 6f ...//...4.version......//...5.co
78e0 64 65 64 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 0a 0a 20 20 76 6f 69 64 20 73 65 74 5f ded.dictionary.size....void.set_
7900 6d 61 67 69 63 28 29 20 7b 20 73 74 64 3a 3a 6d 65 6d 63 70 79 28 20 64 61 74 61 2c 20 6c 7a 69 magic().{.std::memcpy(.data,.lzi
7920 70 5f 6d 61 67 69 63 2c 20 34 20 29 3b 20 64 61 74 61 5b 34 5d 20 3d 20 31 3b 20 7d 0a 20 20 62 p_magic,.4.);.data[4].=.1;.}...b
7940 6f 6f 6c 20 63 68 65 63 6b 5f 6d 61 67 69 63 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e ool.check_magic().const.{.return
7960 20 73 74 64 3a 3a 6d 65 6d 63 6d 70 28 20 64 61 74 61 2c 20 6c 7a 69 70 5f 6d 61 67 69 63 2c 20 .std::memcmp(.data,.lzip_magic,.
7980 34 20 29 20 3d 3d 20 30 3b 20 7d 0a 0a 20 20 62 6f 6f 6c 20 63 68 65 63 6b 5f 70 72 65 66 69 78 4.).==.0;.}....bool.check_prefix
79a0 28 20 63 6f 6e 73 74 20 69 6e 74 20 73 7a 20 29 20 63 6f 6e 73 74 09 2f 2f 20 64 65 74 65 63 74 (.const.int.sz.).const.//.detect
79c0 20 28 74 72 75 6e 63 61 74 65 64 29 20 68 65 61 64 65 72 0a 20 20 20 20 7b 0a 20 20 20 20 66 6f .(truncated).header.....{.....fo
79e0 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 7a 20 26 26 20 69 20 3c 20 34 3b 20 2b r(.int.i.=.0;.i.<.sz.&&.i.<.4;.+
7a00 2b 69 20 29 0a 20 20 20 20 20 20 69 66 28 20 64 61 74 61 5b 69 5d 20 21 3d 20 6c 7a 69 70 5f 6d +i.).......if(.data[i].!=.lzip_m
7a20 61 67 69 63 5b 69 5d 20 29 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 72 65 74 75 agic[i].).return.false;.....retu
7a40 72 6e 20 73 7a 20 3e 20 30 3b 0a 20 20 20 20 7d 0a 0a 20 20 62 6f 6f 6c 20 63 68 65 63 6b 5f 63 rn.sz.>.0;.....}....bool.check_c
7a60 6f 72 72 75 70 74 28 29 20 63 6f 6e 73 74 09 09 09 2f 2f 20 64 65 74 65 63 74 20 63 6f 72 72 75 orrupt().const...//.detect.corru
7a80 70 74 20 68 65 61 64 65 72 0a 20 20 20 20 7b 0a 20 20 20 20 69 6e 74 20 6d 61 74 63 68 65 73 20 pt.header.....{.....int.matches.
7aa0 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 34 3b 20 =.0;.....for(.int.i.=.0;.i.<.4;.
7ac0 2b 2b 69 20 29 0a 20 20 20 20 20 20 69 66 28 20 64 61 74 61 5b 69 5d 20 3d 3d 20 6c 7a 69 70 5f ++i.).......if(.data[i].==.lzip_
7ae0 6d 61 67 69 63 5b 69 5d 20 29 20 2b 2b 6d 61 74 63 68 65 73 3b 0a 20 20 20 20 72 65 74 75 72 6e magic[i].).++matches;.....return
7b00 20 6d 61 74 63 68 65 73 20 3e 20 31 20 26 26 20 6d 61 74 63 68 65 73 20 3c 20 34 3b 0a 20 20 20 .matches.>.1.&&.matches.<.4;....
7b20 20 7d 0a 0a 20 20 75 69 6e 74 38 5f 74 20 76 65 72 73 69 6f 6e 28 29 20 63 6f 6e 73 74 20 7b 20 .}....uint8_t.version().const.{.
7b40 72 65 74 75 72 6e 20 64 61 74 61 5b 34 5d 3b 20 7d 0a 20 20 62 6f 6f 6c 20 63 68 65 63 6b 5f 76 return.data[4];.}...bool.check_v
7b60 65 72 73 69 6f 6e 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 64 61 74 61 5b 34 5d 20 ersion().const.{.return.data[4].
7b80 3d 3d 20 31 3b 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 ==.1;.}....unsigned.dictionary_s
7ba0 69 7a 65 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 ize().const.....{.....unsigned.s
7bc0 7a 20 3d 20 31 20 3c 3c 20 28 20 64 61 74 61 5b 35 5d 20 26 20 30 78 31 46 20 29 3b 0a 20 20 20 z.=.1.<<.(.data[5].&.0x1F.);....
7be0 20 69 66 28 20 73 7a 20 3e 20 6d 69 6e 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a .if(.sz.>.min_dictionary_size.).
7c00 20 20 20 20 20 20 73 7a 20 2d 3d 20 28 20 73 7a 20 2f 20 31 36 20 29 20 2a 20 28 20 28 20 64 61 ......sz.-=.(.sz./.16.).*.(.(.da
7c20 74 61 5b 35 5d 20 3e 3e 20 35 20 29 20 26 20 37 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 73 ta[5].>>.5.).&.7.);.....return.s
7c40 7a 3b 0a 20 20 20 20 7d 0a 0a 20 20 62 6f 6f 6c 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 z;.....}....bool.dictionary_size
7c60 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 73 7a 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 (.const.unsigned.sz.).....{.....
7c80 69 66 28 20 21 69 73 76 61 6c 69 64 5f 64 73 28 20 73 7a 20 29 20 29 20 72 65 74 75 72 6e 20 66 if(.!isvalid_ds(.sz.).).return.f
7ca0 61 6c 73 65 3b 0a 20 20 20 20 64 61 74 61 5b 35 5d 20 3d 20 72 65 61 6c 5f 62 69 74 73 28 20 73 alse;.....data[5].=.real_bits(.s
7cc0 7a 20 2d 20 31 20 29 3b 0a 20 20 20 20 69 66 28 20 73 7a 20 3e 20 6d 69 6e 5f 64 69 63 74 69 6f z.-.1.);.....if(.sz.>.min_dictio
7ce0 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 nary_size.).......{.......const.
7d00 75 6e 73 69 67 6e 65 64 20 62 61 73 65 5f 73 69 7a 65 20 3d 20 31 20 3c 3c 20 64 61 74 61 5b 35 unsigned.base_size.=.1.<<.data[5
7d20 5d 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 66 72 61 63 74 69 6f 6e ];.......const.unsigned.fraction
7d40 20 3d 20 62 61 73 65 5f 73 69 7a 65 20 2f 20 31 36 3b 0a 20 20 20 20 20 20 66 6f 72 28 20 75 6e .=.base_size./.16;.......for(.un
7d60 73 69 67 6e 65 64 20 69 20 3d 20 37 3b 20 69 20 3e 3d 20 31 3b 20 2d 2d 69 20 29 0a 20 20 20 20 signed.i.=.7;.i.>=.1;.--i.).....
7d80 20 20 20 20 69 66 28 20 62 61 73 65 5f 73 69 7a 65 20 2d 20 28 20 69 20 2a 20 66 72 61 63 74 69 ....if(.base_size.-.(.i.*.fracti
7da0 6f 6e 20 29 20 3e 3d 20 73 7a 20 29 0a 20 20 20 20 20 20 20 20 20 20 7b 20 64 61 74 61 5b 35 5d on.).>=.sz.)...........{.data[5]
7dc0 20 7c 3d 20 69 20 3c 3c 20 35 3b 20 62 72 65 61 6b 3b 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 .|=.i.<<.5;.break;.}.......}....
7de0 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 62 6f 6f 6c 20 63 68 65 63 .return.true;.....}....bool.chec
7e00 6b 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 63 68 65 63 6b 5f 6d 61 67 k().const.....{.return.check_mag
7e20 69 63 28 29 20 26 26 20 63 68 65 63 6b 5f 76 65 72 73 69 6f 6e 28 29 20 26 26 0a 20 20 20 20 20 ic().&&.check_version().&&......
7e40 20 20 20 20 20 20 20 20 69 73 76 61 6c 69 64 5f 64 73 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 ........isvalid_ds(.dictionary_s
7e60 69 7a 65 28 29 20 29 3b 20 7d 0a 20 20 7d 3b 0a 0a 0a 73 74 72 75 63 74 20 4c 7a 69 70 5f 74 72 ize().);.}...};...struct.Lzip_tr
7e80 61 69 6c 65 72 0a 20 20 7b 0a 20 20 65 6e 75 6d 20 7b 20 73 69 7a 65 20 3d 20 32 30 20 7d 3b 0a ailer...{...enum.{.size.=.20.};.
7ea0 20 20 75 69 6e 74 38 5f 74 20 64 61 74 61 5b 73 69 7a 65 5d 3b 09 2f 2f 20 20 30 2d 33 20 20 43 ..uint8_t.data[size];.//..0-3..C
7ec0 52 43 33 32 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 0a 09 09 RC32.of.the.uncompressed.data...
7ee0 09 2f 2f 20 20 34 2d 31 31 20 73 69 7a 65 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 .//..4-11.size.of.the.uncompress
7f00 65 64 20 64 61 74 61 0a 09 09 09 2f 2f 20 31 32 2d 31 39 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 ed.data....//.12-19.member.size.
7f20 69 6e 63 6c 75 64 69 6e 67 20 68 65 61 64 65 72 20 61 6e 64 20 74 72 61 69 6c 65 72 0a 0a 20 20 including.header.and.trailer....
7f40 75 6e 73 69 67 6e 65 64 20 64 61 74 61 5f 63 72 63 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a unsigned.data_crc().const.....{.
7f60 20 20 20 20 75 6e 73 69 67 6e 65 64 20 74 6d 70 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 ....unsigned.tmp.=.0;.....for(.i
7f80 6e 74 20 69 20 3d 20 33 3b 20 69 20 3e 3d 20 30 3b 20 2d 2d 69 20 29 20 7b 20 74 6d 70 20 3c 3c nt.i.=.3;.i.>=.0;.--i.).{.tmp.<<
7fa0 3d 20 38 3b 20 74 6d 70 20 2b 3d 20 64 61 74 61 5b 69 5d 3b 20 7d 0a 20 20 20 20 72 65 74 75 72 =.8;.tmp.+=.data[i];.}.....retur
7fc0 6e 20 74 6d 70 3b 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 64 61 74 61 5f 63 72 63 28 20 75 n.tmp;.....}....void.data_crc(.u
7fe0 6e 73 69 67 6e 65 64 20 63 72 63 20 29 0a 20 20 20 20 7b 20 66 6f 72 28 20 69 6e 74 20 69 20 3d nsigned.crc.).....{.for(.int.i.=
8000 20 30 3b 20 69 20 3c 3d 20 33 3b 20 2b 2b 69 20 29 20 7b 20 64 61 74 61 5b 69 5d 20 3d 20 28 75 .0;.i.<=.3;.++i.).{.data[i].=.(u
8020 69 6e 74 38 5f 74 29 63 72 63 3b 20 63 72 63 20 3e 3e 3d 20 38 3b 20 7d 20 7d 0a 0a 20 20 75 6e int8_t)crc;.crc.>>=.8;.}.}....un
8040 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 64 61 74 61 5f 73 69 7a 65 28 29 20 63 6f 6e signed.long.long.data_size().con
8060 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 st.....{.....unsigned.long.long.
8080 74 6d 70 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 31 31 3b 20 69 20 tmp.=.0;.....for(.int.i.=.11;.i.
80a0 3e 3d 20 34 3b 20 2d 2d 69 20 29 20 7b 20 74 6d 70 20 3c 3c 3d 20 38 3b 20 74 6d 70 20 2b 3d 20 >=.4;.--i.).{.tmp.<<=.8;.tmp.+=.
80c0 64 61 74 61 5b 69 5d 3b 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 74 6d 70 3b 0a 20 20 20 20 7d data[i];.}.....return.tmp;.....}
80e0 0a 0a 20 20 76 6f 69 64 20 64 61 74 61 5f 73 69 7a 65 28 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e ....void.data_size(.unsigned.lon
8100 67 20 6c 6f 6e 67 20 73 7a 20 29 0a 20 20 20 20 7b 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 34 g.long.sz.).....{.for(.int.i.=.4
8120 3b 20 69 20 3c 3d 20 31 31 3b 20 2b 2b 69 20 29 20 7b 20 64 61 74 61 5b 69 5d 20 3d 20 28 75 69 ;.i.<=.11;.++i.).{.data[i].=.(ui
8140 6e 74 38 5f 74 29 73 7a 3b 20 73 7a 20 3e 3e 3d 20 38 3b 20 7d 20 7d 0a 0a 20 20 75 6e 73 69 67 nt8_t)sz;.sz.>>=.8;.}.}....unsig
8160 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 7a 65 28 29 20 63 6f 6e 73 ned.long.long.member_size().cons
8180 74 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 74 t.....{.....unsigned.long.long.t
81a0 6d 70 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 31 39 3b 20 69 20 3e mp.=.0;.....for(.int.i.=.19;.i.>
81c0 3d 20 31 32 3b 20 2d 2d 69 20 29 20 7b 20 74 6d 70 20 3c 3c 3d 20 38 3b 20 74 6d 70 20 2b 3d 20 =.12;.--i.).{.tmp.<<=.8;.tmp.+=.
81e0 64 61 74 61 5b 69 5d 3b 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 74 6d 70 3b 0a 20 20 20 20 7d data[i];.}.....return.tmp;.....}
8200 0a 0a 20 20 76 6f 69 64 20 6d 65 6d 62 65 72 5f 73 69 7a 65 28 20 75 6e 73 69 67 6e 65 64 20 6c ....void.member_size(.unsigned.l
8220 6f 6e 67 20 6c 6f 6e 67 20 73 7a 20 29 0a 20 20 20 20 7b 20 66 6f 72 28 20 69 6e 74 20 69 20 3d ong.long.sz.).....{.for(.int.i.=
8240 20 31 32 3b 20 69 20 3c 3d 20 31 39 3b 20 2b 2b 69 20 29 20 7b 20 64 61 74 61 5b 69 5d 20 3d 20 .12;.i.<=.19;.++i.).{.data[i].=.
8260 28 75 69 6e 74 38 5f 74 29 73 7a 3b 20 73 7a 20 3e 3e 3d 20 38 3b 20 7d 20 7d 0a 0a 20 20 62 6f (uint8_t)sz;.sz.>>=.8;.}.}....bo
8280 6f 6c 20 63 68 65 63 6b 5f 63 6f 6e 73 69 73 74 65 6e 63 79 28 29 20 63 6f 6e 73 74 09 2f 2f 20 ol.check_consistency().const.//.
82a0 63 68 65 63 6b 20 69 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 69 73 74 65 6e 63 79 0a 20 20 20 20 7b check.internal.consistency.....{
82c0 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 63 72 63 20 3d 20 64 61 74 61 5f 63 .....const.unsigned.crc.=.data_c
82e0 72 63 28 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f rc();.....const.unsigned.long.lo
8300 6e 67 20 64 73 69 7a 65 20 3d 20 64 61 74 61 5f 73 69 7a 65 28 29 3b 0a 20 20 20 20 69 66 28 20 ng.dsize.=.data_size();.....if(.
8320 28 20 63 72 63 20 3d 3d 20 30 20 29 20 21 3d 20 28 20 64 73 69 7a 65 20 3d 3d 20 30 20 29 20 29 (.crc.==.0.).!=.(.dsize.==.0.).)
8340 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 .return.false;.....const.unsigne
8360 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 73 69 7a 65 20 3d 20 6d 65 6d 62 65 72 5f 73 69 7a 65 28 d.long.long.msize.=.member_size(
8380 29 3b 0a 20 20 20 20 69 66 28 20 6d 73 69 7a 65 20 3c 20 6d 69 6e 5f 6d 65 6d 62 65 72 5f 73 69 );.....if(.msize.<.min_member_si
83a0 7a 65 20 29 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 ze.).return.false;.....const.uns
83c0 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 6c 69 6d 69 74 20 3d 20 28 20 39 20 2a 20 64 igned.long.long.mlimit.=.(.9.*.d
83e0 73 69 7a 65 20 2b 20 37 20 29 20 2f 20 38 20 2b 20 6d 69 6e 5f 6d 65 6d 62 65 72 5f 73 69 7a 65 size.+.7.)./.8.+.min_member_size
8400 3b 0a 20 20 20 20 69 66 28 20 6d 6c 69 6d 69 74 20 3e 20 64 73 69 7a 65 20 26 26 20 6d 73 69 7a ;.....if(.mlimit.>.dsize.&&.msiz
8420 65 20 3e 20 6d 6c 69 6d 69 74 20 29 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 63 e.>.mlimit.).return.false;.....c
8440 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 64 6c 69 6d 69 74 20 3d onst.unsigned.long.long.dlimit.=
8460 20 37 30 39 30 20 2a 20 28 20 6d 73 69 7a 65 20 2d 20 32 36 20 29 20 2d 20 31 3b 0a 20 20 20 20 .7090.*.(.msize.-.26.).-.1;.....
8480 69 66 28 20 64 6c 69 6d 69 74 20 3e 20 6d 73 69 7a 65 20 26 26 20 64 73 69 7a 65 20 3e 20 64 6c if(.dlimit.>.msize.&&.dsize.>.dl
84a0 69 6d 69 74 20 29 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 imit.).return.false;.....return.
84c0 74 72 75 65 3b 0a 20 20 20 20 7d 0a 20 20 7d 3b 0a 0a 0a 73 74 72 75 63 74 20 43 6c 5f 6f 70 74 true;.....}...};...struct.Cl_opt
84e0 69 6f 6e 73 09 09 2f 2f 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 0a 20 20 ions..//.command-line.options...
8500 7b 0a 20 20 62 6f 6f 6c 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 3b 0a 20 20 62 6f 6f 6c {...bool.ignore_trailing;...bool
8520 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 3b 0a 0a 20 20 43 6c 5f 6f 70 74 69 6f 6e 73 28 29 .loose_trailing;....Cl_options()
8540 20 3a 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 28 20 74 72 75 65 20 29 2c 20 6c 6f 6f 73 .:.ignore_trailing(.true.),.loos
8560 65 5f 74 72 61 69 6c 69 6e 67 28 20 66 61 6c 73 65 20 29 20 7b 7d 0a 20 20 7d 3b 0a 0a 0a 73 74 e_trailing(.false.).{}...};...st
8580 72 75 63 74 20 45 72 72 6f 72 0a 20 20 7b 0a 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f ruct.Error...{...const.char.*.co
85a0 6e 73 74 20 6d 73 67 3b 0a 20 20 65 78 70 6c 69 63 69 74 20 45 72 72 6f 72 28 20 63 6f 6e 73 74 nst.msg;...explicit.Error(.const
85c0 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 73 20 29 20 3a 20 6d 73 67 28 20 73 20 29 20 7b 7d 0a .char.*.const.s.).:.msg(.s.).{}.
85e0 20 20 7d 3b 0a 0a 69 6e 6c 69 6e 65 20 76 6f 69 64 20 73 65 74 5f 72 65 74 76 61 6c 28 20 69 6e ..};..inline.void.set_retval(.in
8600 74 20 26 20 72 65 74 76 61 6c 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6e 65 77 5f 76 61 6c 20 29 0a t.&.retval,.const.int.new_val.).
8620 20 20 7b 20 69 66 28 20 72 65 74 76 61 6c 20 3c 20 6e 65 77 5f 76 61 6c 20 29 20 72 65 74 76 61 ..{.if(.retval.<.new_val.).retva
8640 6c 20 3d 20 6e 65 77 5f 76 61 6c 3b 20 7d 0a 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e l.=.new_val;.}..const.char.*.con
8660 73 74 20 62 61 64 5f 6d 61 67 69 63 5f 6d 73 67 20 3d 20 22 42 61 64 20 6d 61 67 69 63 20 6e 75 st.bad_magic_msg.=."Bad.magic.nu
8680 6d 62 65 72 20 28 66 69 6c 65 20 6e 6f 74 20 69 6e 20 6c 7a 69 70 20 66 6f 72 6d 61 74 29 2e 22 mber.(file.not.in.lzip.format)."
86a0 3b 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 62 61 64 5f 64 69 63 74 5f 6d 73 ;.const.char.*.const.bad_dict_ms
86c0 67 20 3d 20 22 49 6e 76 61 6c 69 64 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 6e 20 g.=."Invalid.dictionary.size.in.
86e0 6d 65 6d 62 65 72 20 68 65 61 64 65 72 2e 22 3b 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f member.header.";.const.char.*.co
8700 6e 73 74 20 63 6f 72 72 75 70 74 5f 6d 6d 5f 6d 73 67 20 3d 20 22 43 6f 72 72 75 70 74 20 68 65 nst.corrupt_mm_msg.=."Corrupt.he
8720 61 64 65 72 20 69 6e 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 2e 22 3b 0a 63 6f 6e 73 ader.in.multimember.file.";.cons
8740 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 65 6d 70 74 79 5f 6d 73 67 20 3d 20 22 45 6d 70 74 t.char.*.const.empty_msg.=."Empt
8760 79 20 6d 65 6d 62 65 72 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2e 22 3b 0a 63 6f 6e 73 74 20 63 68 y.member.not.allowed.";.const.ch
8780 61 72 20 2a 20 63 6f 6e 73 74 20 6e 6f 6e 7a 65 72 6f 5f 6d 73 67 20 3d 20 22 4e 6f 6e 7a 65 72 ar.*.const.nonzero_msg.=."Nonzer
87a0 6f 20 66 69 72 73 74 20 4c 5a 4d 41 20 62 79 74 65 2e 22 3b 0a 63 6f 6e 73 74 20 63 68 61 72 20 o.first.LZMA.byte.";.const.char.
87c0 2a 20 63 6f 6e 73 74 20 74 72 61 69 6c 69 6e 67 5f 6d 73 67 20 3d 20 22 54 72 61 69 6c 69 6e 67 *.const.trailing_msg.=."Trailing
87e0 20 64 61 74 61 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2e 22 3b 0a 63 6f 6e 73 74 20 63 68 61 72 20 .data.not.allowed.";.const.char.
8800 2a 20 63 6f 6e 73 74 20 77 72 5f 65 72 72 5f 6d 73 67 20 3d 20 22 57 72 69 74 65 20 65 72 72 6f *.const.wr_err_msg.=."Write.erro
8820 72 22 3b 0a 0a 2f 2f 20 64 65 66 69 6e 65 64 20 69 6e 20 64 65 63 6f 64 65 72 2e 63 63 0a 69 6e r";..//.defined.in.decoder.cc.in
8840 74 20 72 65 61 64 62 6c 6f 63 6b 28 20 63 6f 6e 73 74 20 69 6e 74 20 66 64 2c 20 75 69 6e 74 38 t.readblock(.const.int.fd,.uint8
8860 5f 74 20 2a 20 63 6f 6e 73 74 20 62 75 66 2c 20 63 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 20 29 _t.*.const.buf,.const.int.size.)
8880 3b 0a 69 6e 74 20 77 72 69 74 65 62 6c 6f 63 6b 28 20 63 6f 6e 73 74 20 69 6e 74 20 66 64 2c 20 ;.int.writeblock(.const.int.fd,.
88a0 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 62 75 66 2c 20 63 6f 6e 73 74 const.uint8_t.*.const.buf,.const
88c0 20 69 6e 74 20 73 69 7a 65 20 29 3b 0a 0a 2f 2f 20 64 65 66 69 6e 65 64 20 69 6e 20 6c 69 73 74 .int.size.);..//.defined.in.list
88e0 2e 63 63 0a 69 6e 74 20 6c 69 73 74 5f 66 69 6c 65 73 28 20 63 6f 6e 73 74 20 73 74 64 3a 3a 76 .cc.int.list_files(.const.std::v
8900 65 63 74 6f 72 3c 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 3e 20 26 20 66 69 6c 65 6e 61 6d 65 73 ector<.std::string.>.&.filenames
8920 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 43 6c 5f 6f 70 74 69 6f ,.................const.Cl_optio
8940 6e 73 20 26 20 63 6c 5f 6f 70 74 73 20 29 3b 0a 0a 2f 2f 20 64 65 66 69 6e 65 64 20 69 6e 20 6d ns.&.cl_opts.);..//.defined.in.m
8960 61 69 6e 2e 63 63 0a 73 74 72 75 63 74 20 73 74 61 74 3b 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a ain.cc.struct.stat;.const.char.*
8980 20 62 61 64 5f 76 65 72 73 69 6f 6e 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 76 65 72 .bad_version(.const.unsigned.ver
89a0 73 69 6f 6e 20 29 3b 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 66 6f 72 6d 61 74 5f 64 73 28 20 sion.);.const.char.*.format_ds(.
89c0 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 const.unsigned.dictionary_size.)
89e0 3b 0a 76 6f 69 64 20 73 68 6f 77 5f 68 65 61 64 65 72 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e ;.void.show_header(.const.unsign
8a00 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 3b 0a 69 6e 74 20 6f 70 65 6e 5f 69 ed.dictionary_size.);.int.open_i
8a20 6e 73 74 72 65 61 6d 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6e 61 6d 65 nstream(.const.char.*.const.name
8a40 2c 20 73 74 72 75 63 74 20 73 74 61 74 20 2a 20 63 6f 6e 73 74 20 69 6e 5f 73 74 61 74 73 70 2c ,.struct.stat.*.const.in_statsp,
8a60 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 6f ....................const.bool.o
8a80 6e 65 5f 74 6f 5f 6f 6e 65 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 72 65 67 5f 6f 6e 6c 79 20 3d ne_to_one,.const.bool.reg_only.=
8aa0 20 66 61 6c 73 65 20 29 3b 0a 76 6f 69 64 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 63 6f 6e 73 74 .false.);.void.show_error(.const
8ac0 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6d 73 67 2c 20 63 6f 6e 73 74 20 69 6e 74 20 65 72 72 .char.*.const.msg,.const.int.err
8ae0 63 6f 64 65 20 3d 20 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 code.=.0,..................const
8b00 20 62 6f 6f 6c 20 68 65 6c 70 20 3d 20 66 61 6c 73 65 20 29 3b 0a 76 6f 69 64 20 73 68 6f 77 5f .bool.help.=.false.);.void.show_
8b20 66 69 6c 65 5f 65 72 72 6f 72 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 66 file_error(.const.char.*.const.f
8b40 69 6c 65 6e 61 6d 65 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6d 73 67 2c ilename,.const.char.*.const.msg,
8b60 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 .......................const.int
8b80 20 65 72 72 63 6f 64 65 20 3d 20 30 20 29 3b 0a 76 6f 69 64 20 69 6e 74 65 72 6e 61 6c 5f 65 72 .errcode.=.0.);.void.internal_er
8ba0 72 6f 72 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6d 73 67 20 29 3b 0a 63 ror(.const.char.*.const.msg.);.c
8bc0 6c 61 73 73 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 3b 0a 76 6f 69 64 20 73 68 6f 77 lass.Matchfinder_base;.void.show
8be0 5f 63 70 72 6f 67 72 65 73 73 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 _cprogress(.const.unsigned.long.
8c00 6c 6f 6e 67 20 63 66 69 6c 65 5f 73 69 7a 65 20 3d 20 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 long.cfile_size.=.0,............
8c20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f ..........const.unsigned.long.lo
8c40 6e 67 20 70 61 72 74 69 61 6c 5f 73 69 7a 65 20 3d 20 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ng.partial_size.=.0,............
8c60 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 ..........const.Matchfinder_base
8c80 20 2a 20 63 6f 6e 73 74 20 6d 20 3d 20 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .*.const.m.=.0,.................
8ca0 20 20 20 20 20 63 6f 6e 73 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 2a 20 63 6f 6e 73 74 20 .....const.Pretty_print.*.const.
8cc0 70 20 3d 20 30 20 29 3b 0a 63 6c 61 73 73 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 3b 0a 76 6f p.=.0.);.class.Range_decoder;.vo
8ce0 69 64 20 73 68 6f 77 5f 64 70 72 6f 67 72 65 73 73 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 id.show_dprogress(.const.unsigne
8d00 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 63 66 69 6c 65 5f 73 69 7a 65 20 3d 20 30 2c 0a 20 20 20 20 d.long.long.cfile_size.=.0,.....
8d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 .................const.unsigned.
8d40 6c 6f 6e 67 20 6c 6f 6e 67 20 70 61 72 74 69 61 6c 5f 73 69 7a 65 20 3d 20 30 2c 0a 20 20 20 20 long.long.partial_size.=.0,.....
8d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 52 61 6e 67 65 5f 64 65 63 .................const.Range_dec
8d80 6f 64 65 72 20 2a 20 63 6f 6e 73 74 20 64 20 3d 20 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 oder.*.const.d.=.0,.............
8da0 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 2a 20 63 6f .........const.Pretty_print.*.co
8dc0 6e 73 74 20 70 20 3d 20 30 20 29 3b 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 nst.p.=.0.);....................
8de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8e00 6c 7a 69 70 2d 31 2e 32 35 2f 6c 69 73 74 2e 63 63 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/list.cc...............
8e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8e60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
8e80 30 30 31 30 35 30 36 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 33 37 31 35 00 20 30 00 00 00 0010506.14744236057.013715..0...
8ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8f00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
8f20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
8f40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
8f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9000 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
9020 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
9040 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
9060 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
9080 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
90a0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
90c0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
90e0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
9100 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
9120 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
9140 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
9160 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
9180 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
91a0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
91c0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
91e0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
9200 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
9220 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
9240 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
9260 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
9280 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
92a0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
92c0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 23 64 65 /www.gnu.org/licenses/>..*/..#de
92e0 66 69 6e 65 20 5f 46 49 4c 45 5f 4f 46 46 53 45 54 5f 42 49 54 53 20 36 34 0a 0a 23 69 6e 63 6c fine._FILE_OFFSET_BITS.64..#incl
9300 75 64 65 20 3c 63 65 72 72 6e 6f 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 64 69 6f 3e 0a 23 ude.<cerrno>.#include.<cstdio>.#
9320 69 6e 63 6c 75 64 65 20 3c 63 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74 72 69 include.<cstring>.#include.<stri
9340 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 76 65 63 74 6f 72 3e 0a 23 69 6e 63 6c 75 64 65 20 3c ng>.#include.<vector>.#include.<
9360 73 74 64 69 6e 74 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 0a 23 69 stdint.h>.#include.<unistd.h>.#i
9380 6e 63 6c 75 64 65 20 3c 73 79 73 2f 73 74 61 74 2e 68 3e 0a 0a 23 69 6e 63 6c 75 64 65 20 22 6c nclude.<sys/stat.h>..#include."l
93a0 7a 69 70 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 6c 7a 69 70 5f 69 6e 64 65 78 2e 68 22 0a 0a zip.h".#include."lzip_index.h"..
93c0 0a 6e 61 6d 65 73 70 61 63 65 20 7b 0a 0a 76 6f 69 64 20 6c 69 73 74 5f 6c 69 6e 65 28 20 63 6f .namespace.{..void.list_line(.co
93e0 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 75 6e 63 6f 6d 70 5f 73 69 nst.unsigned.long.long.uncomp_si
9400 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e ze,.................const.unsign
9420 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 63 6f 6d 70 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 ed.long.long.comp_size,.........
9440 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 69 6e 70 75 74 ........const.char.*.const.input
9460 5f 66 69 6c 65 6e 61 6d 65 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 75 6e 63 6f 6d 70 5f 73 69 7a _filename.)...{...if(.uncomp_siz
9480 65 20 3e 20 30 20 29 0a 20 20 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 20 22 25 31 34 6c 6c 75 e.>.0.).....std::printf(."%14llu
94a0 20 25 31 34 6c 6c 75 20 25 36 2e 32 66 25 25 20 20 25 73 5c 6e 22 2c 20 75 6e 63 6f 6d 70 5f 73 .%14llu.%6.2f%%..%s\n",.uncomp_s
94c0 69 7a 65 2c 20 63 6f 6d 70 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ize,.comp_size,.................
94e0 20 20 31 30 30 2e 30 20 2d 20 28 20 28 20 31 30 30 2e 30 20 2a 20 63 6f 6d 70 5f 73 69 7a 65 20 ..100.0.-.(.(.100.0.*.comp_size.
9500 29 20 2f 20 75 6e 63 6f 6d 70 5f 73 69 7a 65 20 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 )./.uncomp_size.),..............
9520 20 20 20 20 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 29 3b 0a 20 20 65 6c 73 65 0a 20 20 .....input_filename.);...else...
9540 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 20 22 25 31 34 6c 6c 75 20 25 31 34 6c 6c 75 20 20 20 ..std::printf(."%14llu.%14llu...
9560 2d 49 4e 46 25 25 20 20 25 73 5c 6e 22 2c 20 75 6e 63 6f 6d 70 5f 73 69 7a 65 2c 20 63 6f 6d 70 -INF%%..%s\n",.uncomp_size,.comp
9580 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 70 75 74 5f 66 _size,...................input_f
95a0 69 6c 65 6e 61 6d 65 20 29 3b 0a 20 20 7d 0a 0a 7d 20 2f 2f 20 65 6e 64 20 6e 61 6d 65 73 70 61 ilename.);...}..}.//.end.namespa
95c0 63 65 0a 0a 0a 69 6e 74 20 6c 69 73 74 5f 66 69 6c 65 73 28 20 63 6f 6e 73 74 20 73 74 64 3a 3a ce...int.list_files(.const.std::
95e0 76 65 63 74 6f 72 3c 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 3e 20 26 20 66 69 6c 65 6e 61 6d 65 vector<.std::string.>.&.filename
9600 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 43 6c 5f 6f 70 74 69 s,.................const.Cl_opti
9620 6f 6e 73 20 26 20 63 6c 5f 6f 70 74 73 20 29 0a 20 20 7b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c ons.&.cl_opts.)...{...unsigned.l
9640 6f 6e 67 20 6c 6f 6e 67 20 74 6f 74 61 6c 5f 63 6f 6d 70 20 3d 20 30 2c 20 74 6f 74 61 6c 5f 75 ong.long.total_comp.=.0,.total_u
9660 6e 63 6f 6d 70 20 3d 20 30 3b 0a 20 20 69 6e 74 20 66 69 6c 65 73 20 3d 20 30 2c 20 72 65 74 76 ncomp.=.0;...int.files.=.0,.retv
9680 61 6c 20 3d 20 30 3b 0a 20 20 62 6f 6f 6c 20 66 69 72 73 74 5f 70 6f 73 74 20 3d 20 74 72 75 65 al.=.0;...bool.first_post.=.true
96a0 3b 0a 20 20 62 6f 6f 6c 20 73 74 64 69 6e 5f 75 73 65 64 20 3d 20 66 61 6c 73 65 3b 0a 0a 20 20 ;...bool.stdin_used.=.false;....
96c0 66 6f 72 28 20 75 6e 73 69 67 6e 65 64 20 69 20 3d 20 30 3b 20 69 20 3c 20 66 69 6c 65 6e 61 6d for(.unsigned.i.=.0;.i.<.filenam
96e0 65 73 2e 73 69 7a 65 28 29 3b 20 2b 2b 69 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 es.size();.++i.).....{.....const
9700 20 62 6f 6f 6c 20 66 72 6f 6d 5f 73 74 64 69 6e 20 3d 20 66 69 6c 65 6e 61 6d 65 73 5b 69 5d 20 .bool.from_stdin.=.filenames[i].
9720 3d 3d 20 22 2d 22 3b 0a 20 20 20 20 69 66 28 20 66 72 6f 6d 5f 73 74 64 69 6e 20 29 20 7b 20 69 ==."-";.....if(.from_stdin.).{.i
9740 66 28 20 73 74 64 69 6e 5f 75 73 65 64 20 29 20 63 6f 6e 74 69 6e 75 65 3b 20 65 6c 73 65 20 73 f(.stdin_used.).continue;.else.s
9760 74 64 69 6e 5f 75 73 65 64 20 3d 20 74 72 75 65 3b 20 7d 0a 20 20 20 20 63 6f 6e 73 74 20 63 68 tdin_used.=.true;.}.....const.ch
9780 61 72 20 2a 20 63 6f 6e 73 74 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 3d 0a 20 20 20 20 ar.*.const.input_filename.=.....
97a0 20 20 66 72 6f 6d 5f 73 74 64 69 6e 20 3f 20 22 28 73 74 64 69 6e 29 22 20 3a 20 66 69 6c 65 6e ..from_stdin.?."(stdin)".:.filen
97c0 61 6d 65 73 5b 69 5d 2e 63 5f 73 74 72 28 29 3b 0a 20 20 20 20 73 74 72 75 63 74 20 73 74 61 74 ames[i].c_str();.....struct.stat
97e0 20 69 6e 5f 73 74 61 74 73 3b 09 09 09 09 2f 2f 20 6e 6f 74 20 75 73 65 64 0a 20 20 20 20 63 6f .in_stats;....//.not.used.....co
9800 6e 73 74 20 69 6e 74 20 69 6e 66 64 20 3d 20 66 72 6f 6d 5f 73 74 64 69 6e 20 3f 20 53 54 44 49 nst.int.infd.=.from_stdin.?.STDI
9820 4e 5f 46 49 4c 45 4e 4f 20 3a 0a 20 20 20 20 20 20 6f 70 65 6e 5f 69 6e 73 74 72 65 61 6d 28 20 N_FILENO.:.......open_instream(.
9840 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2c 20 26 69 6e 5f 73 74 61 74 73 2c 20 66 61 6c 73 65 input_filename,.&in_stats,.false
9860 2c 20 74 72 75 65 20 29 3b 0a 20 20 20 20 69 66 28 20 69 6e 66 64 20 3c 20 30 20 29 20 7b 20 73 ,.true.);.....if(.infd.<.0.).{.s
9880 65 74 5f 72 65 74 76 61 6c 28 20 72 65 74 76 61 6c 2c 20 31 20 29 3b 20 63 6f 6e 74 69 6e 75 65 et_retval(.retval,.1.);.continue
98a0 3b 20 7d 0a 0a 20 20 20 20 63 6f 6e 73 74 20 4c 7a 69 70 5f 69 6e 64 65 78 20 6c 7a 69 70 5f 69 ;.}......const.Lzip_index.lzip_i
98c0 6e 64 65 78 28 20 69 6e 66 64 2c 20 63 6c 5f 6f 70 74 73 20 29 3b 0a 20 20 20 20 63 6c 6f 73 65 ndex(.infd,.cl_opts.);.....close
98e0 28 20 69 6e 66 64 20 29 3b 0a 20 20 20 20 69 66 28 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 72 65 74 (.infd.);.....if(.lzip_index.ret
9900 76 61 6c 28 29 20 21 3d 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 73 68 6f 77 5f val().!=.0.).......{.......show_
9920 66 69 6c 65 5f 65 72 72 6f 72 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2c 20 6c 7a 69 70 file_error(.input_filename,.lzip
9940 5f 69 6e 64 65 78 2e 65 72 72 6f 72 28 29 2e 63 5f 73 74 72 28 29 20 29 3b 0a 20 20 20 20 20 20 _index.error().c_str().);.......
9960 73 65 74 5f 72 65 74 76 61 6c 28 20 72 65 74 76 61 6c 2c 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 72 set_retval(.retval,.lzip_index.r
9980 65 74 76 61 6c 28 29 20 29 3b 0a 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 20 etval().);.......continue;......
99a0 20 7d 0a 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 6d 75 6c 74 69 5f 65 6d 70 74 79 20 3d 20 .}.....const.bool.multi_empty.=.
99c0 21 66 72 6f 6d 5f 73 74 64 69 6e 20 26 26 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 6d 75 6c 74 69 5f !from_stdin.&&.lzip_index.multi_
99e0 65 6d 70 74 79 28 29 3b 0a 20 20 20 20 69 66 28 20 6d 75 6c 74 69 5f 65 6d 70 74 79 20 29 20 73 empty();.....if(.multi_empty.).s
9a00 65 74 5f 72 65 74 76 61 6c 28 20 72 65 74 76 61 6c 2c 20 32 20 29 3b 0a 20 20 20 20 69 66 28 20 et_retval(.retval,.2.);.....if(.
9a20 76 65 72 62 6f 73 69 74 79 20 3c 20 30 20 29 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 63 6f verbosity.<.0.).continue;.....co
9a40 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 75 64 61 74 61 5f 73 69 7a nst.unsigned.long.long.udata_siz
9a60 65 20 3d 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 75 64 61 74 61 5f 73 69 7a 65 28 29 3b 0a 20 20 20 e.=.lzip_index.udata_size();....
9a80 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 63 64 61 74 61 5f .const.unsigned.long.long.cdata_
9aa0 73 69 7a 65 20 3d 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 63 64 61 74 61 5f 73 69 7a 65 28 29 3b 0a size.=.lzip_index.cdata_size();.
9ac0 20 20 20 20 74 6f 74 61 6c 5f 63 6f 6d 70 20 2b 3d 20 63 64 61 74 61 5f 73 69 7a 65 3b 20 74 6f ....total_comp.+=.cdata_size;.to
9ae0 74 61 6c 5f 75 6e 63 6f 6d 70 20 2b 3d 20 75 64 61 74 61 5f 73 69 7a 65 3b 20 2b 2b 66 69 6c 65 tal_uncomp.+=.udata_size;.++file
9b00 73 3b 0a 20 20 20 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 73 20 3d 20 6c 7a 69 70 s;.....const.long.members.=.lzip
9b20 5f 69 6e 64 65 78 2e 6d 65 6d 62 65 72 73 28 29 3b 0a 20 20 20 20 69 66 28 20 66 69 72 73 74 5f _index.members();.....if(.first_
9b40 70 6f 73 74 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 66 69 72 73 74 5f 70 6f 73 74 20 post.).......{.......first_post.
9b60 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 =.false;.......if(.verbosity.>=.
9b80 31 20 29 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 20 20 20 64 69 63 74 20 20 20 6d 65 6d 62 20 1.).std::fputs(."...dict...memb.
9ba0 20 74 72 61 69 6c 20 22 2c 20 73 74 64 6f 75 74 20 29 3b 0a 20 20 20 20 20 20 73 74 64 3a 3a 66 .trail.",.stdout.);.......std::f
9bc0 70 75 74 73 28 20 22 20 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 20 20 20 20 63 6f 6d 70 72 65 puts(."..uncompressed.....compre
9be0 73 73 65 64 20 20 20 73 61 76 65 64 20 20 6e 61 6d 65 5c 6e 22 2c 20 73 74 64 6f 75 74 20 29 3b ssed...saved..name\n",.stdout.);
9c00 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 6d 75 6c 74 69 5f 65 6d 70 74 79 20 29 0a 20 .......}.....if(.multi_empty.)..
9c20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 66 6c 75 73 68 28 20 73 74 64 6f 75 74 20 29 3b 20 73 68 .....{.std::fflush(.stdout.);.sh
9c40 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2c 20 65 ow_file_error(.input_filename,.e
9c60 6d 70 74 79 5f 6d 73 67 20 29 3b 20 7d 0a 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 mpty_msg.);.}.....if(.verbosity.
9c80 3e 3d 20 31 20 29 0a 20 20 20 20 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 20 22 25 73 20 25 35 >=.1.).......std::printf(."%s.%5
9ca0 6c 64 20 25 36 6c 6c 64 20 22 2c 20 66 6f 72 6d 61 74 5f 64 73 28 20 6c 7a 69 70 5f 69 6e 64 65 ld.%6lld.",.format_ds(.lzip_inde
9cc0 78 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 29 20 29 2c 0a 20 20 20 20 20 20 20 20 20 x.dictionary_size().),..........
9ce0 20 20 20 20 20 20 20 20 20 20 6d 65 6d 62 65 72 73 2c 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 66 69 ..........members,.lzip_index.fi
9d00 6c 65 5f 73 69 7a 65 28 29 20 2d 20 63 64 61 74 61 5f 73 69 7a 65 20 29 3b 0a 20 20 20 20 6c 69 le_size().-.cdata_size.);.....li
9d20 73 74 5f 6c 69 6e 65 28 20 75 64 61 74 61 5f 73 69 7a 65 2c 20 63 64 61 74 61 5f 73 69 7a 65 2c st_line(.udata_size,.cdata_size,
9d40 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 29 3b 0a 0a 20 20 20 20 69 66 28 20 76 65 72 62 .input_filename.);......if(.verb
9d60 6f 73 69 74 79 20 3e 3d 20 32 20 26 26 20 6d 65 6d 62 65 72 73 20 3e 20 31 20 29 0a 20 20 20 20 osity.>=.2.&&.members.>.1.).....
9d80 20 20 7b 0a 20 20 20 20 20 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 20 6d 65 6d 62 65 72 20 20 ..{.......std::fputs(.".member..
9da0 20 20 20 20 64 61 74 61 5f 70 6f 73 20 20 20 20 20 20 64 61 74 61 5f 73 69 7a 65 20 20 20 20 20 ....data_pos......data_size.....
9dc0 6d 65 6d 62 65 72 5f 70 6f 73 20 20 20 20 6d 65 6d 62 65 72 5f 73 69 7a 65 5c 6e 22 2c 20 73 74 member_pos....member_size\n",.st
9de0 64 6f 75 74 20 29 3b 0a 20 20 20 20 20 20 66 6f 72 28 20 6c 6f 6e 67 20 69 20 3d 20 30 3b 20 69 dout.);.......for(.long.i.=.0;.i
9e00 20 3c 20 6d 65 6d 62 65 72 73 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 .<.members;.++i.).........{.....
9e20 20 20 20 20 63 6f 6e 73 74 20 42 6c 6f 63 6b 20 26 20 64 62 20 3d 20 6c 7a 69 70 5f 69 6e 64 65 ....const.Block.&.db.=.lzip_inde
9e40 78 2e 64 62 6c 6f 63 6b 28 20 69 20 29 3b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 42 6c 6f x.dblock(.i.);.........const.Blo
9e60 63 6b 20 26 20 6d 62 20 3d 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 6d 62 6c 6f 63 6b 28 20 69 20 29 ck.&.mb.=.lzip_index.mblock(.i.)
9e80 3b 0a 20 20 20 20 20 20 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 20 22 25 36 6c 64 20 25 31 34 ;.........std::printf(."%6ld.%14
9ea0 6c 6c 75 20 25 31 34 6c 6c 75 20 25 31 34 6c 6c 75 20 25 31 34 6c 6c 75 5c 6e 22 2c 0a 20 20 20 llu.%14llu.%14llu.%14llu\n",....
9ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 20 2b 20 31 2c 20 64 62 2e 70 6f 73 28 ..................i.+.1,.db.pos(
9ee0 29 2c 20 64 62 2e 73 69 7a 65 28 29 2c 20 6d 62 2e 70 6f 73 28 29 2c 20 6d 62 2e 73 69 7a 65 28 ),.db.size(),.mb.pos(),.mb.size(
9f00 29 20 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 66 69 72 73 74 5f 70 6f 73 74 20 ).);.........}.......first_post.
9f20 3d 20 74 72 75 65 3b 09 2f 2f 20 72 65 70 72 69 6e 74 20 68 65 61 64 69 6e 67 20 61 66 74 65 72 =.true;.//.reprint.heading.after
9f40 20 6c 69 73 74 20 6f 66 20 6d 65 6d 62 65 72 73 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 73 74 64 .list.of.members.......}.....std
9f60 3a 3a 66 66 6c 75 73 68 28 20 73 74 64 6f 75 74 20 29 3b 0a 20 20 20 20 69 66 28 20 73 74 64 3a ::fflush(.stdout.);.....if(.std:
9f80 3a 66 65 72 72 6f 72 28 20 73 74 64 6f 75 74 20 29 20 29 20 62 72 65 61 6b 3b 0a 20 20 20 20 7d :ferror(.stdout.).).break;.....}
9fa0 0a 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 26 26 20 66 69 6c 65 73 20 3e ...if(.verbosity.>=.0.&&.files.>
9fc0 20 31 20 26 26 20 21 73 74 64 3a 3a 66 65 72 72 6f 72 28 20 73 74 64 6f 75 74 20 29 20 29 0a 20 .1.&&.!std::ferror(.stdout.).)..
9fe0 20 20 20 7b 0a 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 31 20 29 20 73 74 ...{.....if(.verbosity.>=.1.).st
a000 64 3a 3a 66 70 75 74 73 28 20 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d::fputs(.".....................
a020 20 22 2c 20 73 74 64 6f 75 74 20 29 3b 0a 20 20 20 20 6c 69 73 74 5f 6c 69 6e 65 28 20 74 6f 74 .",.stdout.);.....list_line(.tot
a040 61 6c 5f 75 6e 63 6f 6d 70 2c 20 74 6f 74 61 6c 5f 63 6f 6d 70 2c 20 22 28 74 6f 74 61 6c 73 29 al_uncomp,.total_comp,."(totals)
a060 22 20 29 3b 0a 20 20 20 20 73 74 64 3a 3a 66 66 6c 75 73 68 28 20 73 74 64 6f 75 74 20 29 3b 0a ".);.....std::fflush(.stdout.);.
a080 20 20 20 20 7d 0a 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 26 26 20 28 20 ....}...if(.verbosity.>=.0.&&.(.
a0a0 73 74 64 3a 3a 66 65 72 72 6f 72 28 20 73 74 64 6f 75 74 20 29 20 7c 7c 20 73 74 64 3a 3a 66 63 std::ferror(.stdout.).||.std::fc
a0c0 6c 6f 73 65 28 20 73 74 64 6f 75 74 20 29 20 21 3d 20 30 20 29 20 29 0a 20 20 20 20 7b 20 73 68 lose(.stdout.).!=.0.).).....{.sh
a0e0 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 22 28 73 74 64 6f 75 74 29 22 2c 20 77 72 5f 65 72 ow_file_error(."(stdout)",.wr_er
a100 72 5f 6d 73 67 2c 20 65 72 72 6e 6f 20 29 3b 0a 20 20 20 20 20 20 73 65 74 5f 72 65 74 76 61 6c r_msg,.errno.);.......set_retval
a120 28 20 72 65 74 76 61 6c 2c 20 31 20 29 3b 20 7d 0a 20 20 72 65 74 75 72 6e 20 72 65 74 76 61 6c (.retval,.1.);.}...return.retval
a140 3b 0a 20 20 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ;...}...........................
a160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a200 6c 7a 69 70 2d 31 2e 32 35 2f 6d 61 69 6e 2e 63 63 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/main.cc...............
a220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
a280 30 31 31 37 35 34 36 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 33 37 30 32 00 20 30 00 00 00 0117546.14744236057.013702..0...
a2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a2c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a300 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
a320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
a340 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
a360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a400 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
a420 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
a440 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
a460 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
a480 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
a4a0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
a4c0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
a4e0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
a500 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
a520 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
a540 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
a560 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
a580 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
a5a0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
a5c0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
a5e0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
a600 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
a620 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
a640 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
a660 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
a680 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
a6a0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
a6c0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 2f 2a 0a 20 /www.gnu.org/licenses/>..*/./*..
a6e0 20 20 45 78 69 74 20 73 74 61 74 75 73 3a 20 30 20 66 6f 72 20 61 20 6e 6f 72 6d 61 6c 20 65 78 ..Exit.status:.0.for.a.normal.ex
a700 69 74 2c 20 31 20 66 6f 72 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 61 6c 20 70 72 6f 62 6c 65 6d 73 it,.1.for.environmental.problems
a720 0a 20 20 20 28 66 69 6c 65 20 6e 6f 74 20 66 6f 75 6e 64 2c 20 69 6e 76 61 6c 69 64 20 63 6f 6d ....(file.not.found,.invalid.com
a740 6d 61 6e 64 2d 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 2c 20 49 2f 4f 20 65 72 72 6f 72 73 2c 20 65 mand-line.options,.I/O.errors,.e
a760 74 63 29 2c 20 32 20 74 6f 0a 20 20 20 69 6e 64 69 63 61 74 65 20 61 20 63 6f 72 72 75 70 74 20 tc),.2.to....indicate.a.corrupt.
a780 6f 72 20 69 6e 76 61 6c 69 64 20 69 6e 70 75 74 20 66 69 6c 65 2c 20 33 20 66 6f 72 20 61 6e 20 or.invalid.input.file,.3.for.an.
a7a0 69 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 69 73 74 65 6e 63 79 0a 20 20 20 65 72 72 6f 72 20 28 65 internal.consistency....error.(e
a7c0 2e 67 2e 2c 20 62 75 67 29 20 77 68 69 63 68 20 63 61 75 73 65 64 20 6c 7a 69 70 20 74 6f 20 70 .g.,.bug).which.caused.lzip.to.p
a7e0 61 6e 69 63 2e 0a 2a 2f 0a 0a 23 64 65 66 69 6e 65 20 5f 46 49 4c 45 5f 4f 46 46 53 45 54 5f 42 anic..*/..#define._FILE_OFFSET_B
a800 49 54 53 20 36 34 0a 0a 23 69 6e 63 6c 75 64 65 20 3c 61 6c 67 6f 72 69 74 68 6d 3e 0a 23 69 6e ITS.64..#include.<algorithm>.#in
a820 63 6c 75 64 65 20 3c 63 63 74 79 70 65 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 65 72 72 6e 6f 3e clude.<cctype>.#include.<cerrno>
a840 0a 23 69 6e 63 6c 75 64 65 20 3c 63 6c 69 6d 69 74 73 3e 09 09 2f 2f 20 43 48 41 52 5f 42 49 54 .#include.<climits>..//.CHAR_BIT
a860 2c 20 53 53 49 5a 45 5f 4d 41 58 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 69 67 6e 61 6c 3e 0a 23 ,.SSIZE_MAX.#include.<csignal>.#
a880 69 6e 63 6c 75 64 65 20 3c 63 73 74 64 69 6f 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 64 6c include.<cstdio>.#include.<cstdl
a8a0 69 62 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 20 ib>.#include.<cstring>.#include.
a8c0 3c 6e 65 77 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 <new>.#include.<string>.#include
a8e0 20 3c 76 65 63 74 6f 72 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 66 63 6e 74 6c 2e 68 3e 0a 23 69 6e .<vector>.#include.<fcntl.h>.#in
a900 63 6c 75 64 65 20 3c 73 74 64 69 6e 74 2e 68 3e 09 09 2f 2f 20 53 49 5a 45 5f 4d 41 58 0a 23 69 clude.<stdint.h>..//.SIZE_MAX.#i
a920 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 75 74 69 6d nclude.<unistd.h>.#include.<utim
a940 65 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 79 73 2f 73 74 61 74 2e 68 3e 0a 23 69 66 20 64 e.h>.#include.<sys/stat.h>.#if.d
a960 65 66 69 6e 65 64 20 5f 5f 4d 53 56 43 52 54 5f 5f 20 7c 7c 20 64 65 66 69 6e 65 64 20 5f 5f 4f efined.__MSVCRT__.||.defined.__O
a980 53 32 5f 5f 20 7c 7c 20 64 65 66 69 6e 65 64 20 5f 5f 44 4a 47 50 50 5f 5f 0a 23 69 6e 63 6c 75 S2__.||.defined.__DJGPP__.#inclu
a9a0 64 65 20 3c 69 6f 2e 68 3e 0a 23 69 66 20 64 65 66 69 6e 65 64 20 5f 5f 4d 53 56 43 52 54 5f 5f de.<io.h>.#if.defined.__MSVCRT__
a9c0 0a 23 69 6e 63 6c 75 64 65 20 3c 64 69 72 65 63 74 2e 68 3e 0a 23 64 65 66 69 6e 65 20 66 63 68 .#include.<direct.h>.#define.fch
a9e0 6d 6f 64 28 78 2c 79 29 20 30 0a 23 64 65 66 69 6e 65 20 66 63 68 6f 77 6e 28 78 2c 79 2c 7a 29 mod(x,y).0.#define.fchown(x,y,z)
aa00 20 30 0a 23 64 65 66 69 6e 65 20 6d 6b 64 69 72 28 6e 61 6d 65 2c 6d 6f 64 65 29 20 5f 6d 6b 64 .0.#define.mkdir(name,mode)._mkd
aa20 69 72 28 6e 61 6d 65 29 0a 23 64 65 66 69 6e 65 20 73 74 72 74 6f 75 6c 6c 20 73 74 64 3a 3a 73 ir(name).#define.strtoull.std::s
aa40 74 72 74 6f 75 6c 0a 23 64 65 66 69 6e 65 20 53 49 47 48 55 50 20 53 49 47 54 45 52 4d 0a 23 64 trtoul.#define.SIGHUP.SIGTERM.#d
aa60 65 66 69 6e 65 20 53 5f 49 53 53 4f 43 4b 28 78 29 20 30 0a 23 69 66 6e 64 65 66 20 53 5f 49 52 efine.S_ISSOCK(x).0.#ifndef.S_IR
aa80 47 52 50 0a 23 64 65 66 69 6e 65 20 53 5f 49 52 47 52 50 20 30 0a 23 64 65 66 69 6e 65 20 53 5f GRP.#define.S_IRGRP.0.#define.S_
aaa0 49 57 47 52 50 20 30 0a 23 64 65 66 69 6e 65 20 53 5f 49 52 4f 54 48 20 30 0a 23 64 65 66 69 6e IWGRP.0.#define.S_IROTH.0.#defin
aac0 65 20 53 5f 49 57 4f 54 48 20 30 0a 23 65 6e 64 69 66 0a 23 65 6e 64 69 66 0a 23 69 66 20 64 65 e.S_IWOTH.0.#endif.#endif.#if.de
aae0 66 69 6e 65 64 20 5f 5f 44 4a 47 50 50 5f 5f 0a 23 64 65 66 69 6e 65 20 53 5f 49 53 53 4f 43 4b fined.__DJGPP__.#define.S_ISSOCK
ab00 28 78 29 20 30 0a 23 64 65 66 69 6e 65 20 53 5f 49 53 56 54 58 20 30 0a 23 65 6e 64 69 66 0a 23 (x).0.#define.S_ISVTX.0.#endif.#
ab20 65 6e 64 69 66 0a 0a 23 69 6e 63 6c 75 64 65 20 22 61 72 67 5f 70 61 72 73 65 72 2e 68 22 0a 23 endif..#include."arg_parser.h".#
ab40 69 6e 63 6c 75 64 65 20 22 6c 7a 69 70 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 64 65 63 6f 64 include."lzip.h".#include."decod
ab60 65 72 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 68 22 0a er.h".#include."encoder_base.h".
ab80 23 69 6e 63 6c 75 64 65 20 22 65 6e 63 6f 64 65 72 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 66 #include."encoder.h".#include."f
aba0 61 73 74 5f 65 6e 63 6f 64 65 72 2e 68 22 0a 0a 23 69 66 6e 64 65 66 20 4f 5f 42 49 4e 41 52 59 ast_encoder.h"..#ifndef.O_BINARY
abc0 0a 23 64 65 66 69 6e 65 20 4f 5f 42 49 4e 41 52 59 20 30 0a 23 65 6e 64 69 66 0a 0a 23 69 66 20 .#define.O_BINARY.0.#endif..#if.
abe0 43 48 41 52 5f 42 49 54 20 21 3d 20 38 0a 23 65 72 72 6f 72 20 22 45 6e 76 69 72 6f 6e 6d 65 6e CHAR_BIT.!=.8.#error."Environmen
ac00 74 73 20 77 68 65 72 65 20 43 48 41 52 5f 42 49 54 20 21 3d 20 38 20 61 72 65 20 6e 6f 74 20 73 ts.where.CHAR_BIT.!=.8.are.not.s
ac20 75 70 70 6f 72 74 65 64 2e 22 0a 23 65 6e 64 69 66 0a 0a 23 69 66 20 28 20 64 65 66 69 6e 65 64 upported.".#endif..#if.(.defined
ac40 20 20 53 49 5a 45 5f 4d 41 58 20 26 26 20 20 53 49 5a 45 5f 4d 41 58 20 3c 20 55 49 4e 54 5f 4d ..SIZE_MAX.&&..SIZE_MAX.<.UINT_M
ac60 41 58 20 29 20 7c 7c 20 5c 0a 20 20 20 20 28 20 64 65 66 69 6e 65 64 20 53 53 49 5a 45 5f 4d 41 AX.).||.\.....(.defined.SSIZE_MA
ac80 58 20 26 26 20 53 53 49 5a 45 5f 4d 41 58 20 3c 20 20 49 4e 54 5f 4d 41 58 20 29 0a 23 65 72 72 X.&&.SSIZE_MAX.<..INT_MAX.).#err
aca0 6f 72 20 22 45 6e 76 69 72 6f 6e 6d 65 6e 74 73 20 77 68 65 72 65 20 27 73 69 7a 65 5f 74 27 20 or."Environments.where.'size_t'.
acc0 69 73 20 6e 61 72 72 6f 77 65 72 20 74 68 61 6e 20 27 69 6e 74 27 20 61 72 65 20 6e 6f 74 20 73 is.narrower.than.'int'.are.not.s
ace0 75 70 70 6f 72 74 65 64 2e 22 0a 23 65 6e 64 69 66 0a 0a 69 6e 74 20 76 65 72 62 6f 73 69 74 79 upported.".#endif..int.verbosity
ad00 20 3d 20 30 3b 0a 0a 6e 61 6d 65 73 70 61 63 65 20 7b 0a 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a .=.0;..namespace.{..const.char.*
ad20 20 63 6f 6e 73 74 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 20 3d 20 22 6c 7a 69 70 22 3b 0a 63 6f .const.program_name.=."lzip";.co
ad40 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 70 72 6f 67 72 61 6d 5f 79 65 61 72 20 3d 20 nst.char.*.const.program_year.=.
ad60 22 32 30 32 35 22 3b 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 69 6e 76 6f 63 61 74 69 6f 6e 5f "2025";.const.char.*.invocation_
ad80 6e 61 6d 65 20 3d 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 3b 09 09 2f 2f 20 64 65 66 61 75 6c 74 name.=.program_name;..//.default
ada0 20 76 61 6c 75 65 0a 0a 63 6f 6e 73 74 20 73 74 72 75 63 74 20 7b 20 63 6f 6e 73 74 20 63 68 61 .value..const.struct.{.const.cha
adc0 72 20 2a 20 66 72 6f 6d 3b 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 74 6f 3b 20 7d 20 6b 6e 6f r.*.from;.const.char.*.to;.}.kno
ade0 77 6e 5f 65 78 74 65 6e 73 69 6f 6e 73 5b 5d 20 3d 20 7b 0a 20 20 7b 20 22 2e 6c 7a 22 2c 20 20 wn_extensions[].=.{...{.".lz",..
ae00 22 22 20 20 20 20 20 7d 2c 0a 20 20 7b 20 22 2e 74 6c 7a 22 2c 20 22 2e 74 61 72 22 20 7d 2c 0a "".....},...{.".tlz",.".tar".},.
ae20 20 20 7b 20 30 2c 20 20 20 20 20 20 30 20 20 20 20 20 20 7d 20 7d 3b 0a 0a 73 74 72 75 63 74 20 ..{.0,......0......}.};..struct.
ae40 4c 7a 6d 61 5f 6f 70 74 69 6f 6e 73 0a 20 20 7b 0a 20 20 69 6e 74 20 64 69 63 74 69 6f 6e 61 72 Lzma_options...{...int.dictionar
ae60 79 5f 73 69 7a 65 3b 09 09 2f 2f 20 34 20 4b 69 42 20 2e 2e 20 35 31 32 20 4d 69 42 0a 20 20 69 y_size;..//.4.KiB....512.MiB...i
ae80 6e 74 20 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 3b 09 09 2f 2f 20 35 20 2e 2e 20 32 37 33 nt.match_len_limit;..//.5....273
aea0 0a 20 20 7d 3b 0a 0a 65 6e 75 6d 20 4d 6f 64 65 20 7b 20 6d 5f 63 6f 6d 70 72 65 73 73 2c 20 6d ...};..enum.Mode.{.m_compress,.m
aec0 5f 64 65 63 6f 6d 70 72 65 73 73 2c 20 6d 5f 6c 69 73 74 2c 20 6d 5f 74 65 73 74 20 7d 3b 0a 0a _decompress,.m_list,.m_test.};..
aee0 2f 2a 20 56 61 72 69 61 62 6c 65 73 20 75 73 65 64 20 69 6e 20 73 69 67 6e 61 6c 20 68 61 6e 64 /*.Variables.used.in.signal.hand
af00 6c 65 72 20 63 6f 6e 74 65 78 74 2e 0a 20 20 20 54 68 65 79 20 61 72 65 20 6e 6f 74 20 64 65 63 ler.context.....They.are.not.dec
af20 6c 61 72 65 64 20 76 6f 6c 61 74 69 6c 65 20 62 65 63 61 75 73 65 20 74 68 65 20 68 61 6e 64 6c lared.volatile.because.the.handl
af40 65 72 20 6e 65 76 65 72 20 72 65 74 75 72 6e 73 2e 20 2a 2f 0a 73 74 64 3a 3a 73 74 72 69 6e 67 er.never.returns..*/.std::string
af60 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 3b 0a 69 6e 74 20 6f 75 74 66 64 20 3d 20 2d 31 .output_filename;.int.outfd.=.-1
af80 3b 0a 62 6f 6f 6c 20 64 65 6c 65 74 65 5f 6f 75 74 70 75 74 5f 6f 6e 5f 69 6e 74 65 72 72 75 70 ;.bool.delete_output_on_interrup
afa0 74 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 76 6f 69 64 20 73 68 6f 77 5f 68 65 6c 70 28 29 0a 20 20 t.=.false;...void.show_help()...
afc0 7b 0a 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 20 22 4c 7a 69 70 20 69 73 20 61 20 6c 6f 73 73 {...std::printf(."Lzip.is.a.loss
afe0 6c 65 73 73 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 6f 72 20 77 69 74 68 20 61 20 75 73 65 72 less.data.compressor.with.a.user
b000 20 69 6e 74 65 72 66 61 63 65 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 6f 6e 65 5c 6e 22 .interface.similar.to.the.one\n"
b020 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6f 66 20 67 7a 69 70 20 6f 72 20 62 7a 69 70 ................"of.gzip.or.bzip
b040 32 2e 20 4c 7a 69 70 20 75 73 65 73 20 61 20 73 69 6d 70 6c 69 66 69 65 64 20 66 6f 72 6d 20 6f 2..Lzip.uses.a.simplified.form.o
b060 66 20 4c 5a 4d 41 20 28 4c 65 6d 70 65 6c 2d 5a 69 76 2d 4d 61 72 6b 6f 76 5c 6e 22 0a 20 20 20 f.LZMA.(Lempel-Ziv-Markov\n"....
b080 20 20 20 20 20 20 20 20 20 20 20 20 22 63 68 61 69 6e 2d 41 6c 67 6f 72 69 74 68 6d 29 20 64 65 ............"chain-Algorithm).de
b0a0 73 69 67 6e 65 64 20 74 6f 20 61 63 68 69 65 76 65 20 63 6f 6d 70 6c 65 74 65 20 69 6e 74 65 72 signed.to.achieve.complete.inter
b0c0 6f 70 65 72 61 62 69 6c 69 74 79 20 62 65 74 77 65 65 6e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 operability.between\n"..........
b0e0 20 20 20 20 20 20 22 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 2e 20 54 68 65 20 6d 61 78 69 ......"implementations..The.maxi
b100 6d 75 6d 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 73 20 35 31 32 20 4d 69 42 20 73 mum.dictionary.size.is.512.MiB.s
b120 6f 20 74 68 61 74 20 61 6e 79 20 6c 7a 69 70 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 o.that.any.lzip\n"..............
b140 20 20 22 66 69 6c 65 20 63 61 6e 20 62 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 6f 6e 20 33 .."file.can.be.decompressed.on.3
b160 32 2d 62 69 74 20 6d 61 63 68 69 6e 65 73 2e 20 4c 7a 69 70 20 70 72 6f 76 69 64 65 73 20 61 63 2-bit.machines..Lzip.provides.ac
b180 63 75 72 61 74 65 20 61 6e 64 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 72 6f curate.and\n"................"ro
b1a0 62 75 73 74 20 33 2d 66 61 63 74 6f 72 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 63 6b 69 6e 67 bust.3-factor.integrity.checking
b1c0 2e 20 27 6c 7a 69 70 20 2d 30 27 20 63 6f 6d 70 72 65 73 73 65 73 20 61 62 6f 75 74 20 61 73 20 ..'lzip.-0'.compresses.about.as.
b1e0 66 61 73 74 20 61 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 67 7a 69 70 2c fast.as\n"................"gzip,
b200 20 77 68 69 6c 65 20 27 6c 7a 69 70 20 2d 39 27 20 63 6f 6d 70 72 65 73 73 65 73 20 6d 6f 73 74 .while.'lzip.-9'.compresses.most
b220 20 66 69 6c 65 73 20 6d 6f 72 65 20 74 68 61 6e 20 62 7a 69 70 32 2e 20 44 65 63 6f 6d 70 72 65 .files.more.than.bzip2..Decompre
b240 73 73 69 6f 6e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 73 70 65 65 64 20 69 ssion\n"................"speed.i
b260 73 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 62 65 74 77 65 65 6e 20 67 7a 69 70 20 61 6e 64 20 s.intermediate.between.gzip.and.
b280 62 7a 69 70 32 2e 20 4c 7a 69 70 20 70 72 6f 76 69 64 65 73 20 62 65 74 74 65 72 20 64 61 74 61 bzip2..Lzip.provides.better.data
b2a0 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 72 65 63 6f 76 65 72 79 20 63 61 70 \n"................"recovery.cap
b2c0 61 62 69 6c 69 74 69 65 73 20 74 68 61 6e 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 2e 20 4c abilities.than.gzip.and.bzip2..L
b2e0 7a 69 70 20 68 61 73 20 62 65 65 6e 20 64 65 73 69 67 6e 65 64 2c 20 77 72 69 74 74 65 6e 2c 5c zip.has.been.designed,.written,\
b300 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 6e 64 20 74 65 73 74 65 64 20 77 69 n"................"and.tested.wi
b320 74 68 20 67 72 65 61 74 20 63 61 72 65 20 74 6f 20 72 65 70 6c 61 63 65 20 67 7a 69 70 20 61 6e th.great.care.to.replace.gzip.an
b340 64 20 62 7a 69 70 32 20 61 73 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 5c 6e 22 0a 20 20 d.bzip2.as.general-purpose\n"...
b360 20 20 20 20 20 20 20 20 20 20 20 20 20 22 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 74 20 ............."compressed.format.
b380 66 6f 72 20 55 6e 69 78 2d 6c 69 6b 65 20 73 79 73 74 65 6d 73 2e 5c 6e 22 0a 20 20 20 20 20 20 for.Unix-like.systems.\n".......
b3a0 20 20 20 20 20 20 20 20 20 22 5c 6e 55 73 61 67 65 3a 20 25 73 20 5b 6f 70 74 69 6f 6e 73 5d 20 ........."\nUsage:.%s.[options].
b3c0 5b 66 69 6c 65 73 5d 5c 6e 22 2c 20 69 6e 76 6f 63 61 74 69 6f 6e 5f 6e 61 6d 65 20 29 3b 0a 20 [files]\n",.invocation_name.);..
b3e0 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 20 22 5c 6e 4f 70 74 69 6f 6e 73 3a 5c 6e 22 0a 20 20 20 .std::printf(."\nOptions:\n"....
b400 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 68 2c 20 2d 2d 68 65 6c 70 20 20 20 20 20 20 20 ............"..-h,.--help.......
b420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 73 70 6c 61 79 20 74 68 69 73 20 68 65 6c 70 20 ..............display.this.help.
b440 61 6e 64 20 65 78 69 74 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 56 and.exit\n"................"..-V
b460 2c 20 2d 2d 76 65 72 73 69 6f 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 75 74 ,.--version..................out
b480 70 75 74 20 76 65 72 73 69 6f 6e 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 6e 64 20 65 78 69 74 put.version.information.and.exit
b4a0 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 61 2c 20 2d 2d 74 72 61 69 \n"................"..-a,.--trai
b4c0 6c 69 6e 67 2d 65 72 72 6f 72 20 20 20 20 20 20 20 20 20 20 20 65 78 69 74 20 77 69 74 68 20 65 ling-error...........exit.with.e
b4e0 72 72 6f 72 20 73 74 61 74 75 73 20 69 66 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 5c 6e 22 0a rror.status.if.trailing.data\n".
b500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 62 2c 20 2d 2d 6d 65 6d 62 65 72 2d 73 ..............."..-b,.--member-s
b520 69 7a 65 3d 3c 62 79 74 65 73 3e 20 20 20 20 20 20 73 65 74 20 6d 65 6d 62 65 72 20 73 69 7a 65 ize=<bytes>......set.member.size
b540 20 6c 69 6d 69 74 20 6f 66 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 5c 6e 22 0a 20 .limit.of.multimember.files\n"..
b560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 63 2c 20 2d 2d 73 74 64 6f 75 74 20 20 20 .............."..-c,.--stdout...
b580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 72 69 74 65 20 74 6f 20 73 74 61 6e 64 61 72 ................write.to.standar
b5a0 64 20 6f 75 74 70 75 74 2c 20 6b 65 65 70 20 69 6e 70 75 74 20 66 69 6c 65 73 5c 6e 22 0a 20 20 d.output,.keep.input.files\n"...
b5c0 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 64 2c 20 2d 2d 64 65 63 6f 6d 70 72 65 73 73 ............."..-d,.--decompress
b5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 63 6f 6d 70 72 65 73 73 2c 20 74 65 73 74 20 ...............decompress,.test.
b600 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 69 6e 74 65 67 72 69 74 79 5c 6e 22 0a 20 20 20 compressed.file.integrity\n"....
b620 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 66 2c 20 2d 2d 66 6f 72 63 65 20 20 20 20 20 20 ............"..-f,.--force......
b640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 76 65 72 77 72 69 74 65 20 65 78 69 73 74 69 6e 67 ..............overwrite.existing
b660 20 6f 75 74 70 75 74 20 66 69 6c 65 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .output.files\n"................
b680 22 20 20 2d 46 2c 20 2d 2d 72 65 63 6f 6d 70 72 65 73 73 20 20 20 20 20 20 20 20 20 20 20 20 20 "..-F,.--recompress.............
b6a0 20 20 66 6f 72 63 65 20 72 65 2d 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 66 20 63 6f 6d 70 72 65 ..force.re-compression.of.compre
b6c0 73 73 65 64 20 66 69 6c 65 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 ssed.files\n"................"..
b6e0 2d 6b 2c 20 2d 2d 6b 65 65 70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6b -k,.--keep.....................k
b700 65 65 70 20 28 64 6f 6e 27 74 20 64 65 6c 65 74 65 29 20 69 6e 70 75 74 20 66 69 6c 65 73 5c 6e eep.(don't.delete).input.files\n
b720 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 6c 2c 20 2d 2d 6c 69 73 74 20 20 "................"..-l,.--list..
b740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 20 28 75 6e 29 63 6f 6d ...................print.(un)com
b760 70 72 65 73 73 65 64 20 66 69 6c 65 20 73 69 7a 65 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 pressed.file.sizes\n"...........
b780 20 20 20 20 20 22 20 20 2d 6d 2c 20 2d 2d 6d 61 74 63 68 2d 6c 65 6e 67 74 68 3d 3c 62 79 74 65 ....."..-m,.--match-length=<byte
b7a0 73 3e 20 20 20 20 20 73 65 74 20 6d 61 74 63 68 20 6c 65 6e 67 74 68 20 6c 69 6d 69 74 20 69 6e s>.....set.match.length.limit.in
b7c0 20 62 79 74 65 73 20 5b 33 36 5d 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 .bytes.[36]\n"................".
b7e0 20 2d 6f 2c 20 2d 2d 6f 75 74 70 75 74 3d 3c 66 69 6c 65 3e 20 20 20 20 20 20 20 20 20 20 20 20 .-o,.--output=<file>............
b800 77 72 69 74 65 20 74 6f 20 3c 66 69 6c 65 3e 2c 20 6b 65 65 70 20 69 6e 70 75 74 20 66 69 6c 65 write.to.<file>,.keep.input.file
b820 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 71 2c 20 2d 2d 71 75 69 s\n"................"..-q,.--qui
b840 65 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 75 70 70 72 65 73 73 20 61 et....................suppress.a
b860 6c 6c 20 6d 65 73 73 61 67 65 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 ll.messages\n"................".
b880 20 2d 73 2c 20 2d 2d 64 69 63 74 69 6f 6e 61 72 79 2d 73 69 7a 65 3d 3c 62 79 74 65 73 3e 20 20 .-s,.--dictionary-size=<bytes>..
b8a0 73 65 74 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 20 69 6e 20 62 79 74 set.dictionary.size.limit.in.byt
b8c0 65 73 20 5b 38 20 4d 69 42 5d 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 es.[8.MiB]\n"................"..
b8e0 2d 53 2c 20 2d 2d 76 6f 6c 75 6d 65 2d 73 69 7a 65 3d 3c 62 79 74 65 73 3e 20 20 20 20 20 20 73 -S,.--volume-size=<bytes>......s
b900 65 74 20 76 6f 6c 75 6d 65 20 73 69 7a 65 20 6c 69 6d 69 74 20 69 6e 20 62 79 74 65 73 5c 6e 22 et.volume.size.limit.in.bytes\n"
b920 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 74 2c 20 2d 2d 74 65 73 74 20 20 20 ................"..-t,.--test...
b940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 65 73 74 20 63 6f 6d 70 72 65 73 73 65 ..................test.compresse
b960 64 20 66 69 6c 65 20 69 6e 74 65 67 72 69 74 79 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 d.file.integrity\n".............
b980 20 20 20 22 20 20 2d 76 2c 20 2d 2d 76 65 72 62 6f 73 65 20 20 20 20 20 20 20 20 20 20 20 20 20 ..."..-v,.--verbose.............
b9a0 20 20 20 20 20 62 65 20 76 65 72 62 6f 73 65 20 28 61 20 32 6e 64 20 2d 76 20 67 69 76 65 73 20 .....be.verbose.(a.2nd.-v.gives.
b9c0 6d 6f 72 65 29 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 30 20 2e 2e more)\n"................"..-0...
b9e0 20 2d 39 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 74 20 63 6f .-9.......................set.co
ba00 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 20 5b 64 65 66 61 75 6c 74 20 36 5d 5c 6e 22 0a 20 mpression.level.[default.6]\n"..
ba20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 20 20 20 20 2d 2d 66 61 73 74 20 20 20 20 20 .............."......--fast.....
ba40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 69 61 73 20 66 6f 72 20 2d 30 5c 6e 22 0a ................alias.for.-0\n".
ba60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 20 20 20 20 2d 2d 62 65 73 74 20 20 20 20 ..............."......--best....
ba80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 69 61 73 20 66 6f 72 20 2d 39 5c 6e 22 .................alias.for.-9\n"
baa0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 20 20 20 20 2d 2d 6c 6f 6f 73 65 2d 74 ................"......--loose-t
bac0 72 61 69 6c 69 6e 67 20 20 20 20 20 20 20 20 20 20 20 61 6c 6c 6f 77 20 74 72 61 69 6c 69 6e 67 railing...........allow.trailing
bae0 20 64 61 74 61 20 73 65 65 6d 69 6e 67 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 5c 6e 22 0a .data.seeming.corrupt.header\n".
bb00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 6e 49 66 20 6e 6f 20 66 69 6c 65 20 6e 61 6d ..............."\nIf.no.file.nam
bb20 65 73 20 61 72 65 20 67 69 76 65 6e 2c 20 6f 72 20 69 66 20 61 20 66 69 6c 65 20 69 73 20 27 2d es.are.given,.or.if.a.file.is.'-
bb40 27 2c 20 6c 7a 69 70 20 63 6f 6d 70 72 65 73 73 65 73 20 6f 72 5c 6e 22 0a 20 20 20 20 20 20 20 ',.lzip.compresses.or\n"........
bb60 20 20 20 20 20 20 20 20 22 64 65 63 6f 6d 70 72 65 73 73 65 73 20 66 72 6f 6d 20 73 74 61 6e 64 ........"decompresses.from.stand
bb80 61 72 64 20 69 6e 70 75 74 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 5c 6e 22 ard.input.to.standard.output.\n"
bba0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 4e 75 6d 62 65 72 73 20 6d 61 79 20 62 65 20 ................"Numbers.may.be.
bbc0 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 20 6d 75 6c 74 69 70 6c 69 65 72 3a 20 6b 20 3d 20 6b 42 followed.by.a.multiplier:.k.=.kB
bbe0 20 3d 20 31 30 5e 33 20 3d 20 31 30 30 30 2c 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .=.10^3.=.1000,\n"..............
bc00 20 20 22 4b 69 20 3d 20 4b 69 42 20 3d 20 32 5e 31 30 20 3d 20 31 30 32 34 2c 20 4d 20 3d 20 31 .."Ki.=.KiB.=.2^10.=.1024,.M.=.1
bc20 30 5e 36 2c 20 4d 69 20 3d 20 32 5e 32 30 2c 20 47 20 3d 20 31 30 5e 39 2c 20 47 69 20 3d 20 32 0^6,.Mi.=.2^20,.G.=.10^9,.Gi.=.2
bc40 5e 33 30 2c 20 65 74 63 2e 2e 2e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 44 ^30,.etc...\n"................"D
bc60 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 73 20 31 32 20 74 6f 20 32 39 20 61 72 65 20 69 6e 74 ictionary.sizes.12.to.29.are.int
bc80 65 72 70 72 65 74 65 64 20 61 73 20 70 6f 77 65 72 73 20 6f 66 20 74 77 6f 2c 20 6d 65 61 6e 69 erpreted.as.powers.of.two,.meani
bca0 6e 67 20 32 5e 31 32 20 74 6f 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 32 5e ng.2^12.to\n"................"2^
bcc0 32 39 20 62 79 74 65 73 2e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 6e 54 29.bytes.\n"................"\nT
bce0 68 65 20 62 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 70 61 72 61 6d 65 74 65 72 20 73 70 61 63 65 he.bidimensional.parameter.space
bd00 20 6f 66 20 4c 5a 4d 41 20 63 61 6e 27 74 20 62 65 20 6d 61 70 70 65 64 20 74 6f 20 61 20 6c 69 .of.LZMA.can't.be.mapped.to.a.li
bd20 6e 65 61 72 20 73 63 61 6c 65 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6f 70 near.scale\n"................"op
bd40 74 69 6d 61 6c 20 66 6f 72 20 61 6c 6c 20 66 69 6c 65 73 2e 20 49 66 20 79 6f 75 72 20 66 69 6c timal.for.all.files..If.your.fil
bd60 65 73 20 61 72 65 20 6c 61 72 67 65 2c 20 76 65 72 79 20 72 65 70 65 74 69 74 69 76 65 2c 20 65 es.are.large,.very.repetitive,.e
bd80 74 63 2c 20 79 6f 75 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6d 61 79 20 6e tc,.you\n"................"may.n
bda0 65 65 64 20 74 6f 20 75 73 65 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 2d 2d 64 69 63 74 69 6f 6e eed.to.use.the.options.--diction
bdc0 61 72 79 2d 73 69 7a 65 20 61 6e 64 20 2d 2d 6d 61 74 63 68 2d 6c 65 6e 67 74 68 20 64 69 72 65 ary-size.and.--match-length.dire
bde0 63 74 6c 79 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 6f 20 61 63 68 69 65 ctly\n"................"to.achie
be00 76 65 20 6f 70 74 69 6d 61 6c 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 5c 6e 22 0a 20 20 20 20 20 ve.optimal.performance.\n"......
be20 20 20 20 20 20 20 20 20 20 20 22 5c 6e 54 6f 20 65 78 74 72 61 63 74 20 61 6c 6c 20 74 68 65 20 .........."\nTo.extract.all.the.
be40 66 69 6c 65 73 20 66 72 6f 6d 20 61 72 63 68 69 76 65 20 27 66 6f 6f 2e 74 61 72 2e 6c 7a 27 2c files.from.archive.'foo.tar.lz',
be60 20 75 73 65 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 .use.the.commands\n"............
be80 20 20 20 20 22 27 74 61 72 20 2d 78 66 20 66 6f 6f 2e 74 61 72 2e 6c 7a 27 20 6f 72 20 27 6c 7a ...."'tar.-xf.foo.tar.lz'.or.'lz
bea0 69 70 20 2d 63 64 20 66 6f 6f 2e 74 61 72 2e 6c 7a 20 7c 20 74 61 72 20 2d 78 66 20 2d 27 2e 5c ip.-cd.foo.tar.lz.|.tar.-xf.-'.\
bec0 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 6e 45 78 69 74 20 73 74 61 74 75 73 n"................"\nExit.status
bee0 3a 20 30 20 66 6f 72 20 61 20 6e 6f 72 6d 61 6c 20 65 78 69 74 2c 20 31 20 66 6f 72 20 65 6e 76 :.0.for.a.normal.exit,.1.for.env
bf00 69 72 6f 6e 6d 65 6e 74 61 6c 20 70 72 6f 62 6c 65 6d 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 ironmental.problems\n"..........
bf20 20 20 20 20 20 20 22 28 66 69 6c 65 20 6e 6f 74 20 66 6f 75 6e 64 2c 20 69 6e 76 61 6c 69 64 20 ......"(file.not.found,.invalid.
bf40 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 2c 20 49 2f 4f 20 65 72 72 6f 72 73 command-line.options,.I/O.errors
bf60 2c 20 65 74 63 29 2c 20 32 20 74 6f 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 ,.etc),.2.to\n"................"
bf80 69 6e 64 69 63 61 74 65 20 61 20 63 6f 72 72 75 70 74 20 6f 72 20 69 6e 76 61 6c 69 64 20 69 6e indicate.a.corrupt.or.invalid.in
bfa0 70 75 74 20 66 69 6c 65 2c 20 33 20 66 6f 72 20 61 6e 20 69 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 put.file,.3.for.an.internal.cons
bfc0 69 73 74 65 6e 63 79 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 65 72 72 6f 72 istency\n"................"error
bfe0 20 28 65 2e 67 2e 2c 20 62 75 67 29 20 77 68 69 63 68 20 63 61 75 73 65 64 20 6c 7a 69 70 20 74 .(e.g.,.bug).which.caused.lzip.t
c000 6f 20 70 61 6e 69 63 2e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 6e 54 68 o.panic.\n"................"\nTh
c020 65 20 69 64 65 61 73 20 65 6d 62 6f 64 69 65 64 20 69 6e 20 6c 7a 69 70 20 61 72 65 20 64 75 65 e.ideas.embodied.in.lzip.are.due
c040 20 74 6f 20 28 61 74 20 6c 65 61 73 74 29 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 65 6f .to.(at.least).the.following.peo
c060 70 6c 65 3a 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 41 62 72 61 68 61 6d 20 ple:\n"................"Abraham.
c080 4c 65 6d 70 65 6c 20 61 6e 64 20 4a 61 63 6f 62 20 5a 69 76 20 28 66 6f 72 20 74 68 65 20 4c 5a Lempel.and.Jacob.Ziv.(for.the.LZ
c0a0 20 61 6c 67 6f 72 69 74 68 6d 29 2c 20 41 6e 64 72 65 69 20 4d 61 72 6b 6f 76 20 28 66 6f 72 20 .algorithm),.Andrei.Markov.(for.
c0c0 74 68 65 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 66 69 6e 69 74 69 6f the\n"................"definitio
c0e0 6e 20 6f 66 20 4d 61 72 6b 6f 76 20 63 68 61 69 6e 73 29 2c 20 47 2e 4e 2e 4e 2e 20 4d 61 72 74 n.of.Markov.chains),.G.N.N..Mart
c100 69 6e 20 28 66 6f 72 20 74 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 72 61 6e 67 65 5c in.(for.the.definition.of.range\
c120 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 65 6e 63 6f 64 69 6e 67 29 2c 20 49 67 n"................"encoding),.Ig
c140 6f 72 20 50 61 76 6c 6f 76 20 28 66 6f 72 20 70 75 74 74 69 6e 67 20 61 6c 6c 20 74 68 65 20 61 or.Pavlov.(for.putting.all.the.a
c160 62 6f 76 65 20 74 6f 67 65 74 68 65 72 20 69 6e 20 4c 5a 4d 41 29 2c 20 61 6e 64 5c 6e 22 0a 20 bove.together.in.LZMA),.and\n"..
c180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 4a 75 6c 69 61 6e 20 53 65 77 61 72 64 20 28 66 6f .............."Julian.Seward.(fo
c1a0 72 20 62 7a 69 70 32 27 73 20 43 4c 49 29 2e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 r.bzip2's.CLI).\n"..............
c1c0 20 20 22 5c 6e 52 65 70 6f 72 74 20 62 75 67 73 20 74 6f 20 6c 7a 69 70 2d 62 75 67 40 6e 6f 6e .."\nReport.bugs.to.lzip-bug@non
c1e0 67 6e 75 2e 6f 72 67 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 4c 7a 69 70 20 gnu.org\n"................"Lzip.
c200 68 6f 6d 65 20 70 61 67 65 3a 20 68 74 74 70 3a 2f 2f 77 77 77 2e 6e 6f 6e 67 6e 75 2e 6f 72 67 home.page:.http://www.nongnu.org
c220 2f 6c 7a 69 70 2f 6c 7a 69 70 2e 68 74 6d 6c 5c 6e 22 20 29 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 /lzip/lzip.html\n".);...}...void
c240 20 73 68 6f 77 5f 76 65 72 73 69 6f 6e 28 29 0a 20 20 7b 0a 20 20 73 74 64 3a 3a 70 72 69 6e 74 .show_version()...{...std::print
c260 66 28 20 22 25 73 20 25 73 5c 6e 22 2c 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 2c 20 50 52 4f 47 f(."%s.%s\n",.program_name,.PROG
c280 56 45 52 53 49 4f 4e 20 29 3b 0a 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 20 22 43 6f 70 79 72 VERSION.);...std::printf(."Copyr
c2a0 69 67 68 74 20 28 43 29 20 25 73 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 5c 6e ight.(C).%s.Antonio.Diaz.Diaz.\n
c2c0 22 2c 20 70 72 6f 67 72 61 6d 5f 79 65 61 72 20 29 3b 0a 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 ",.program_year.);...std::printf
c2e0 28 20 22 4c 69 63 65 6e 73 65 20 47 50 4c 76 32 2b 3a 20 47 4e 55 20 47 50 4c 20 76 65 72 73 69 (."License.GPLv2+:.GNU.GPL.versi
c300 6f 6e 20 32 20 6f 72 20 6c 61 74 65 72 20 3c 68 74 74 70 3a 2f 2f 67 6e 75 2e 6f 72 67 2f 6c 69 on.2.or.later.<http://gnu.org/li
c320 63 65 6e 73 65 73 2f 67 70 6c 2e 68 74 6d 6c 3e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 censes/gpl.html>\n".............
c340 20 20 20 22 54 68 69 73 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 61 ..."This.is.free.software:.you.a
c360 72 65 20 66 72 65 65 20 74 6f 20 63 68 61 6e 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 75 re.free.to.change.and.redistribu
c380 74 65 20 69 74 2e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 54 68 65 72 65 20 te.it.\n"................"There.
c3a0 69 73 20 4e 4f 20 57 41 52 52 41 4e 54 59 2c 20 74 6f 20 74 68 65 20 65 78 74 65 6e 74 20 70 65 is.NO.WARRANTY,.to.the.extent.pe
c3c0 72 6d 69 74 74 65 64 20 62 79 20 6c 61 77 2e 5c 6e 22 20 29 3b 0a 20 20 7d 0a 0a 7d 20 2f 2f 20 rmitted.by.law.\n".);...}..}.//.
c3e0 65 6e 64 20 6e 61 6d 65 73 70 61 63 65 0a 0a 76 6f 69 64 20 50 72 65 74 74 79 5f 70 72 69 6e 74 end.namespace..void.Pretty_print
c400 3a 3a 6f 70 65 72 61 74 6f 72 28 29 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 ::operator()(.const.char.*.const
c420 20 6d 73 67 20 29 20 63 6f 6e 73 74 0a 20 20 7b 0a 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 .msg.).const...{...if(.verbosity
c440 20 3c 20 30 20 29 20 72 65 74 75 72 6e 3b 0a 20 20 69 66 28 20 66 69 72 73 74 5f 70 6f 73 74 20 .<.0.).return;...if(.first_post.
c460 29 0a 20 20 20 20 7b 0a 20 20 20 20 66 69 72 73 74 5f 70 6f 73 74 20 3d 20 66 61 6c 73 65 3b 0a ).....{.....first_post.=.false;.
c480 20 20 20 20 73 74 64 3a 3a 66 70 75 74 73 28 20 70 61 64 64 65 64 5f 6e 61 6d 65 2e 63 5f 73 74 ....std::fputs(.padded_name.c_st
c4a0 72 28 29 2c 20 73 74 64 65 72 72 20 29 3b 0a 20 20 20 20 69 66 28 20 21 6d 73 67 20 29 20 73 74 r(),.stderr.);.....if(.!msg.).st
c4c0 64 3a 3a 66 66 6c 75 73 68 28 20 73 74 64 65 72 72 20 29 3b 0a 20 20 20 20 7d 0a 20 20 69 66 28 d::fflush(.stderr.);.....}...if(
c4e0 20 6d 73 67 20 29 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 73 .msg.).std::fprintf(.stderr,."%s
c500 5c 6e 22 2c 20 6d 73 67 20 29 3b 0a 20 20 7d 0a 0a 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 62 \n",.msg.);...}...const.char.*.b
c520 61 64 5f 76 65 72 73 69 6f 6e 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 76 65 72 73 69 ad_version(.const.unsigned.versi
c540 6f 6e 20 29 0a 20 20 7b 0a 20 20 73 74 61 74 69 63 20 63 68 61 72 20 62 75 66 5b 38 30 5d 3b 0a on.)...{...static.char.buf[80];.
c560 20 20 73 6e 70 72 69 6e 74 66 28 20 62 75 66 2c 20 73 69 7a 65 6f 66 20 62 75 66 2c 20 22 56 65 ..snprintf(.buf,.sizeof.buf,."Ve
c580 72 73 69 6f 6e 20 25 75 20 6d 65 6d 62 65 72 20 66 6f 72 6d 61 74 20 6e 6f 74 20 73 75 70 70 6f rsion.%u.member.format.not.suppo
c5a0 72 74 65 64 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 65 72 73 69 6f 6e 20 29 3b 0a 20 rted.",.............version.);..
c5c0 20 72 65 74 75 72 6e 20 62 75 66 3b 0a 20 20 7d 0a 0a 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 .return.buf;...}...const.char.*.
c5e0 66 6f 72 6d 61 74 5f 64 73 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f format_ds(.const.unsigned.dictio
c600 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 7b 0a 20 20 65 6e 75 6d 20 7b 20 62 75 66 73 69 7a 65 nary_size.)...{...enum.{.bufsize
c620 20 3d 20 31 36 2c 20 66 61 63 74 6f 72 20 3d 20 31 30 32 34 2c 20 6e 20 3d 20 33 20 7d 3b 0a 20 .=.16,.factor.=.1024,.n.=.3.};..
c640 20 73 74 61 74 69 63 20 63 68 61 72 20 62 75 66 5b 62 75 66 73 69 7a 65 5d 3b 0a 20 20 63 6f 6e .static.char.buf[bufsize];...con
c660 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 70 72 65 66 69 78 5b 6e 5d 20 3d 20 7b 20 22 4b st.char.*.const.prefix[n].=.{."K
c680 69 22 2c 20 22 4d 69 22 2c 20 22 47 69 22 20 7d 3b 0a 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a i",."Mi",."Gi".};...const.char.*
c6a0 20 70 20 3d 20 22 22 3b 0a 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 6e 70 20 3d 20 22 20 20 .p.=."";...const.char.*.np.=."..
c6c0 22 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6e 75 6d 20 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 ";...unsigned.num.=.dictionary_s
c6e0 69 7a 65 3b 0a 20 20 62 6f 6f 6c 20 65 78 61 63 74 20 3d 20 6e 75 6d 20 25 20 66 61 63 74 6f 72 ize;...bool.exact.=.num.%.factor
c700 20 3d 3d 20 30 3b 0a 0a 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 20 .==.0;....for(.int.i.=.0;.i.<.n.
c720 26 26 20 28 20 6e 75 6d 20 3e 20 39 39 39 39 20 7c 7c 20 28 20 65 78 61 63 74 20 26 26 20 6e 75 &&.(.num.>.9999.||.(.exact.&&.nu
c740 6d 20 3e 3d 20 66 61 63 74 6f 72 20 29 20 29 3b 20 2b 2b 69 20 29 0a 20 20 20 20 7b 20 6e 75 6d m.>=.factor.).);.++i.).....{.num
c760 20 2f 3d 20 66 61 63 74 6f 72 3b 20 69 66 28 20 6e 75 6d 20 25 20 66 61 63 74 6f 72 20 21 3d 20 ./=.factor;.if(.num.%.factor.!=.
c780 30 20 29 20 65 78 61 63 74 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 70 20 3d 20 70 72 65 0.).exact.=.false;.......p.=.pre
c7a0 66 69 78 5b 69 5d 3b 20 6e 70 20 3d 20 22 22 3b 20 7d 0a 20 20 73 6e 70 72 69 6e 74 66 28 20 62 fix[i];.np.=."";.}...snprintf(.b
c7c0 75 66 2c 20 62 75 66 73 69 7a 65 2c 20 22 25 73 25 34 75 20 25 73 42 22 2c 20 6e 70 2c 20 6e 75 uf,.bufsize,."%s%4u.%sB",.np,.nu
c7e0 6d 2c 20 70 20 29 3b 0a 20 20 72 65 74 75 72 6e 20 62 75 66 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 m,.p.);...return.buf;...}...void
c800 20 73 68 6f 77 5f 68 65 61 64 65 72 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 .show_header(.const.unsigned.dic
c820 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 7b 0a 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 tionary_size.)...{...std::fprint
c840 66 28 20 73 74 64 65 72 72 2c 20 22 64 69 63 74 20 25 73 2c 20 22 2c 20 66 6f 72 6d 61 74 5f 64 f(.stderr,."dict.%s,.",.format_d
c860 73 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 29 3b 0a 20 20 7d 0a 0a 6e 61 6d s(.dictionary_size.).);...}..nam
c880 65 73 70 61 63 65 20 7b 0a 0a 2f 2f 20 73 65 70 61 72 61 74 65 20 6e 75 6d 62 65 72 73 20 6f 66 espace.{..//.separate.numbers.of
c8a0 20 35 20 6f 72 20 6d 6f 72 65 20 64 69 67 69 74 73 20 69 6e 20 67 72 6f 75 70 73 20 6f 66 20 33 .5.or.more.digits.in.groups.of.3
c8c0 20 64 69 67 69 74 73 20 75 73 69 6e 67 20 27 5f 27 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 66 .digits.using.'_'.const.char.*.f
c8e0 6f 72 6d 61 74 5f 6e 75 6d 33 28 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6e ormat_num3(.unsigned.long.long.n
c900 75 6d 20 29 0a 20 20 7b 0a 20 20 65 6e 75 6d 20 7b 20 62 75 66 66 65 72 73 20 3d 20 38 2c 20 62 um.)...{...enum.{.buffers.=.8,.b
c920 75 66 73 69 7a 65 20 3d 20 34 20 2a 20 73 69 7a 65 6f 66 20 6e 75 6d 2c 20 6e 20 3d 20 31 30 20 ufsize.=.4.*.sizeof.num,.n.=.10.
c940 7d 3b 0a 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 73 69 5f 70 72 65 66 69 };...const.char.*.const.si_prefi
c960 78 20 3d 20 22 6b 4d 47 54 50 45 5a 59 52 51 22 3b 0a 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a x.=."kMGTPEZYRQ";...const.char.*
c980 20 63 6f 6e 73 74 20 62 69 6e 61 72 79 5f 70 72 65 66 69 78 20 3d 20 22 4b 4d 47 54 50 45 5a 59 .const.binary_prefix.=."KMGTPEZY
c9a0 52 51 22 3b 0a 20 20 73 74 61 74 69 63 20 63 68 61 72 20 62 75 66 66 65 72 5b 62 75 66 66 65 72 RQ";...static.char.buffer[buffer
c9c0 73 5d 5b 62 75 66 73 69 7a 65 5d 3b 09 2f 2f 20 63 69 72 63 6c 65 20 6f 66 20 73 74 61 74 69 63 s][bufsize];.//.circle.of.static
c9e0 20 62 75 66 66 65 72 73 20 66 6f 72 20 70 72 69 6e 74 66 0a 20 20 73 74 61 74 69 63 20 69 6e 74 .buffers.for.printf...static.int
ca00 20 63 75 72 72 65 6e 74 20 3d 20 30 3b 0a 0a 20 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 62 75 .current.=.0;....char.*.const.bu
ca20 66 20 3d 20 62 75 66 66 65 72 5b 63 75 72 72 65 6e 74 2b 2b 5d 3b 20 63 75 72 72 65 6e 74 20 25 f.=.buffer[current++];.current.%
ca40 3d 20 62 75 66 66 65 72 73 3b 0a 20 20 63 68 61 72 20 2a 20 70 20 3d 20 62 75 66 20 2b 20 62 75 =.buffers;...char.*.p.=.buf.+.bu
ca60 66 73 69 7a 65 20 2d 20 31 3b 09 09 2f 2f 20 66 69 6c 6c 20 74 68 65 20 62 75 66 66 65 72 20 62 fsize.-.1;..//.fill.the.buffer.b
ca80 61 63 6b 77 61 72 64 73 0a 20 20 2a 70 20 3d 20 30 3b 09 2f 2f 20 74 65 72 6d 69 6e 61 74 6f 72 ackwards...*p.=.0;.//.terminator
caa0 0a 20 20 69 66 28 20 6e 75 6d 20 3e 20 39 39 39 39 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 68 ...if(.num.>.9999.).....{.....ch
cac0 61 72 20 70 72 65 66 69 78 20 3d 20 30 3b 09 09 09 2f 2f 20 74 72 79 20 62 69 6e 61 72 79 20 66 ar.prefix.=.0;...//.try.binary.f
cae0 69 72 73 74 2c 20 74 68 65 6e 20 73 69 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 irst,.then.si.....for(.int.i.=.0
cb00 3b 20 69 20 3c 20 6e 20 26 26 20 6e 75 6d 20 21 3d 20 30 20 26 26 20 6e 75 6d 20 25 20 31 30 32 ;.i.<.n.&&.num.!=.0.&&.num.%.102
cb20 34 20 3d 3d 20 30 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 7b 20 6e 75 6d 20 2f 3d 20 31 30 32 4.==.0;.++i.).......{.num./=.102
cb40 34 3b 20 70 72 65 66 69 78 20 3d 20 62 69 6e 61 72 79 5f 70 72 65 66 69 78 5b 69 5d 3b 20 7d 0a 4;.prefix.=.binary_prefix[i];.}.
cb60 20 20 20 20 69 66 28 20 70 72 65 66 69 78 20 29 20 2a 28 2d 2d 70 29 20 3d 20 27 69 27 3b 0a 20 ....if(.prefix.).*(--p).=.'i';..
cb80 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 ...else.......for(.int.i.=.0;.i.
cba0 3c 20 6e 20 26 26 20 6e 75 6d 20 21 3d 20 30 20 26 26 20 6e 75 6d 20 25 20 31 30 30 30 20 3d 3d <.n.&&.num.!=.0.&&.num.%.1000.==
cbc0 20 30 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 20 20 7b 20 6e 75 6d 20 2f 3d 20 31 30 30 30 3b .0;.++i.).........{.num./=.1000;
cbe0 20 70 72 65 66 69 78 20 3d 20 73 69 5f 70 72 65 66 69 78 5b 69 5d 3b 20 7d 0a 20 20 20 20 69 66 .prefix.=.si_prefix[i];.}.....if
cc00 28 20 70 72 65 66 69 78 20 29 20 2a 28 2d 2d 70 29 20 3d 20 70 72 65 66 69 78 3b 0a 20 20 20 20 (.prefix.).*(--p).=.prefix;.....
cc20 7d 0a 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 73 70 6c 69 74 20 3d 20 6e 75 6d 20 3e 3d 20 31 30 }...const.bool.split.=.num.>=.10
cc40 30 30 30 3b 0a 0a 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 3b 20 29 0a 20 20 20 20 000;....for(.int.i.=.0;.;.).....
cc60 7b 0a 20 20 20 20 2a 28 2d 2d 70 29 20 3d 20 6e 75 6d 20 25 20 31 30 20 2b 20 27 30 27 3b 20 6e {.....*(--p).=.num.%.10.+.'0';.n
cc80 75 6d 20 2f 3d 20 31 30 3b 20 69 66 28 20 6e 75 6d 20 3d 3d 20 30 20 29 20 62 72 65 61 6b 3b 0a um./=.10;.if(.num.==.0.).break;.
cca0 20 20 20 20 69 66 28 20 73 70 6c 69 74 20 26 26 20 2b 2b 69 20 3e 3d 20 33 20 29 20 7b 20 69 20 ....if(.split.&&.++i.>=.3.).{.i.
ccc0 3d 20 30 3b 20 2a 28 2d 2d 70 29 20 3d 20 27 5f 27 3b 20 7d 0a 20 20 20 20 7d 0a 20 20 72 65 74 =.0;.*(--p).=.'_';.}.....}...ret
cce0 75 72 6e 20 70 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 73 68 6f 77 5f 6f 70 74 69 6f 6e 5f 65 72 urn.p;...}...void.show_option_er
cd00 72 6f 72 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 2c 20 63 6f 6e ror(.const.char.*.const.arg,.con
cd20 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6d 73 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 st.char.*.const.msg,............
cd40 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 .............const.char.*.const.
cd60 6f 70 74 69 6f 6e 5f 6e 61 6d 65 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 option_name.)...{...if(.verbosit
cd80 79 20 3e 3d 20 30 20 29 0a 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 y.>=.0.).....std::fprintf(.stder
cda0 72 2c 20 22 25 73 3a 20 27 25 73 27 3a 20 25 73 20 6f 70 74 69 6f 6e 20 27 25 73 27 2e 5c 6e 22 r,."%s:.'%s':.%s.option.'%s'.\n"
cdc0 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 ,...................program_name
cde0 2c 20 61 72 67 2c 20 6d 73 67 2c 20 6f 70 74 69 6f 6e 5f 6e 61 6d 65 20 29 3b 0a 20 20 7d 0a 0a ,.arg,.msg,.option_name.);...}..
ce00 0a 2f 2f 20 52 65 63 6f 67 6e 69 7a 65 64 20 66 6f 72 6d 61 74 73 3a 20 3c 6e 75 6d 3e 6b 2c 20 .//.Recognized.formats:.<num>k,.
ce20 3c 6e 75 6d 3e 4b 69 2c 20 3c 6e 75 6d 3e 5b 4d 47 54 50 45 5a 59 52 51 5d 5b 69 5d 0a 75 6e 73 <num>Ki,.<num>[MGTPEZYRQ][i].uns
ce40 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 67 65 74 6e 75 6d 28 20 63 6f 6e 73 74 20 63 68 igned.long.long.getnum(.const.ch
ce60 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ar.*.const.arg,.................
ce80 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6f 70 ...........const.char.*.const.op
cea0 74 69 6f 6e 5f 6e 61 6d 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tion_name,......................
cec0 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6c ......const.unsigned.long.long.l
cee0 6c 69 6d 69 74 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 limit,..........................
cf00 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 75 6c 69 6d 69 ..const.unsigned.long.long.ulimi
cf20 74 20 29 0a 20 20 7b 0a 20 20 63 68 61 72 20 2a 20 74 61 69 6c 3b 0a 20 20 65 72 72 6e 6f 20 3d t.)...{...char.*.tail;...errno.=
cf40 20 30 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 72 65 73 75 6c 74 20 .0;...unsigned.long.long.result.
cf60 3d 20 73 74 72 74 6f 75 6c 6c 28 20 61 72 67 2c 20 26 74 61 69 6c 2c 20 30 20 29 3b 0a 20 20 69 =.strtoull(.arg,.&tail,.0.);...i
cf80 66 28 20 74 61 69 6c 20 3d 3d 20 61 72 67 20 29 0a 20 20 20 20 7b 20 73 68 6f 77 5f 6f 70 74 69 f(.tail.==.arg.).....{.show_opti
cfa0 6f 6e 5f 65 72 72 6f 72 28 20 61 72 67 2c 20 22 42 61 64 20 6f 72 20 6d 69 73 73 69 6e 67 20 6e on_error(.arg,."Bad.or.missing.n
cfc0 75 6d 65 72 69 63 61 6c 20 61 72 67 75 6d 65 6e 74 20 69 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 umerical.argument.in",..........
cfe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 5f 6e 61 6d 65 20 29 3b 20 73 ................option_name.);.s
d000 74 64 3a 3a 65 78 69 74 28 20 31 20 29 3b 20 7d 0a 0a 20 20 69 66 28 20 21 65 72 72 6e 6f 20 26 td::exit(.1.);.}....if(.!errno.&
d020 26 20 74 61 69 6c 5b 30 5d 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 &.tail[0].).....{.....const.unsi
d040 67 6e 65 64 20 66 61 63 74 6f 72 20 3d 20 28 74 61 69 6c 5b 31 5d 20 3d 3d 20 27 69 27 29 20 3f gned.factor.=.(tail[1].==.'i').?
d060 20 31 30 32 34 20 3a 20 31 30 30 30 3b 0a 20 20 20 20 69 6e 74 20 65 78 70 6f 6e 65 6e 74 20 3d .1024.:.1000;.....int.exponent.=
d080 20 30 3b 09 09 09 09 2f 2f 20 30 20 3d 20 62 61 64 20 6d 75 6c 74 69 70 6c 69 65 72 0a 20 20 20 .0;....//.0.=.bad.multiplier....
d0a0 20 73 77 69 74 63 68 28 20 74 61 69 6c 5b 30 5d 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 .switch(.tail[0].).......{......
d0c0 20 63 61 73 65 20 27 51 27 3a 20 65 78 70 6f 6e 65 6e 74 20 3d 20 31 30 3b 20 62 72 65 61 6b 3b .case.'Q':.exponent.=.10;.break;
d0e0 0a 20 20 20 20 20 20 63 61 73 65 20 27 52 27 3a 20 65 78 70 6f 6e 65 6e 74 20 3d 20 39 3b 20 62 .......case.'R':.exponent.=.9;.b
d100 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 59 27 3a 20 65 78 70 6f 6e 65 6e 74 20 3d reak;.......case.'Y':.exponent.=
d120 20 38 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 5a 27 3a 20 65 78 70 6f 6e .8;.break;.......case.'Z':.expon
d140 65 6e 74 20 3d 20 37 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 45 27 3a 20 ent.=.7;.break;.......case.'E':.
d160 65 78 70 6f 6e 65 6e 74 20 3d 20 36 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 exponent.=.6;.break;.......case.
d180 27 50 27 3a 20 65 78 70 6f 6e 65 6e 74 20 3d 20 35 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 'P':.exponent.=.5;.break;.......
d1a0 63 61 73 65 20 27 54 27 3a 20 65 78 70 6f 6e 65 6e 74 20 3d 20 34 3b 20 62 72 65 61 6b 3b 0a 20 case.'T':.exponent.=.4;.break;..
d1c0 20 20 20 20 20 63 61 73 65 20 27 47 27 3a 20 65 78 70 6f 6e 65 6e 74 20 3d 20 33 3b 20 62 72 65 .....case.'G':.exponent.=.3;.bre
d1e0 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 4d 27 3a 20 65 78 70 6f 6e 65 6e 74 20 3d 20 32 ak;.......case.'M':.exponent.=.2
d200 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 4b 27 3a 20 69 66 28 20 66 61 63 ;.break;.......case.'K':.if(.fac
d220 74 6f 72 20 3d 3d 20 31 30 32 34 20 29 20 65 78 70 6f 6e 65 6e 74 20 3d 20 31 3b 20 62 72 65 61 tor.==.1024.).exponent.=.1;.brea
d240 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 6b 27 3a 20 69 66 28 20 66 61 63 74 6f 72 20 3d 3d k;.......case.'k':.if(.factor.==
d260 20 31 30 30 30 20 29 20 65 78 70 6f 6e 65 6e 74 20 3d 20 31 3b 20 62 72 65 61 6b 3b 0a 20 20 20 .1000.).exponent.=.1;.break;....
d280 20 20 20 7d 0a 20 20 20 20 69 66 28 20 65 78 70 6f 6e 65 6e 74 20 3c 3d 20 30 20 29 0a 20 20 20 ...}.....if(.exponent.<=.0.)....
d2a0 20 20 20 7b 20 73 68 6f 77 5f 6f 70 74 69 6f 6e 5f 65 72 72 6f 72 28 20 61 72 67 2c 20 22 42 61 ...{.show_option_error(.arg,."Ba
d2c0 64 20 6d 75 6c 74 69 70 6c 69 65 72 20 69 6e 20 6e 75 6d 65 72 69 63 61 6c 20 61 72 67 75 6d 65 d.multiplier.in.numerical.argume
d2e0 6e 74 20 6f 66 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nt.of",.........................
d300 20 20 20 6f 70 74 69 6f 6e 5f 6e 61 6d 65 20 29 3b 20 73 74 64 3a 3a 65 78 69 74 28 20 31 20 29 ...option_name.);.std::exit(.1.)
d320 3b 20 7d 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 65 78 70 6f ;.}.....for(.int.i.=.0;.i.<.expo
d340 6e 65 6e 74 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 75 6c nent;.++i.).......{.......if(.ul
d360 69 6d 69 74 20 2f 20 66 61 63 74 6f 72 20 3e 3d 20 72 65 73 75 6c 74 20 29 20 72 65 73 75 6c 74 imit./.factor.>=.result.).result
d380 20 2a 3d 20 66 61 63 74 6f 72 3b 0a 20 20 20 20 20 20 65 6c 73 65 20 7b 20 65 72 72 6e 6f 20 3d .*=.factor;.......else.{.errno.=
d3a0 20 45 52 41 4e 47 45 3b 20 62 72 65 61 6b 3b 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a .ERANGE;.break;.}.......}.....}.
d3c0 20 20 69 66 28 20 21 65 72 72 6e 6f 20 26 26 20 28 20 72 65 73 75 6c 74 20 3c 20 6c 6c 69 6d 69 ..if(.!errno.&&.(.result.<.llimi
d3e0 74 20 7c 7c 20 72 65 73 75 6c 74 20 3e 20 75 6c 69 6d 69 74 20 29 20 29 20 65 72 72 6e 6f 20 3d t.||.result.>.ulimit.).).errno.=
d400 20 45 52 41 4e 47 45 3b 0a 20 20 69 66 28 20 65 72 72 6e 6f 20 29 0a 20 20 20 20 7b 0a 20 20 20 .ERANGE;...if(.errno.).....{....
d420 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 29 0a 20 20 20 20 20 20 73 74 64 3a .if(.verbosity.>=.0.).......std:
d440 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 73 3a 20 27 25 73 27 3a 20 56 61 6c :fprintf(.stderr,."%s:.'%s':.Val
d460 75 65 20 6f 75 74 20 6f 66 20 6c 69 6d 69 74 73 20 5b 25 73 2c 25 73 5d 20 69 6e 20 22 0a 20 20 ue.out.of.limits.[%s,%s].in."...
d480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6f 70 74 69 6f 6e 20 27 25 73 27 2e 5c .................."option.'%s'.\
d4a0 6e 22 2c 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 2c 20 61 72 67 2c 20 66 6f 72 6d 61 74 5f 6e 75 n",.program_name,.arg,.format_nu
d4c0 6d 33 28 20 6c 6c 69 6d 69 74 20 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 m3(.llimit.),...................
d4e0 20 20 66 6f 72 6d 61 74 5f 6e 75 6d 33 28 20 75 6c 69 6d 69 74 20 29 2c 20 6f 70 74 69 6f 6e 5f ..format_num3(.ulimit.),.option_
d500 6e 61 6d 65 20 29 3b 0a 20 20 20 20 73 74 64 3a 3a 65 78 69 74 28 20 31 20 29 3b 0a 20 20 20 20 name.);.....std::exit(.1.);.....
d520 7d 0a 20 20 72 65 74 75 72 6e 20 72 65 73 75 6c 74 3b 0a 20 20 7d 0a 0a 0a 69 6e 74 20 67 65 74 }...return.result;...}...int.get
d540 5f 64 69 63 74 5f 73 69 7a 65 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 _dict_size(.const.char.*.const.a
d560 72 67 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6f 70 74 69 6f 6e 5f 6e 61 rg,.const.char.*.const.option_na
d580 6d 65 20 29 0a 20 20 7b 0a 20 20 63 68 61 72 20 2a 20 74 61 69 6c 3b 0a 20 20 63 6f 6e 73 74 20 me.)...{...char.*.tail;...const.
d5a0 6c 6f 6e 67 20 62 69 74 73 20 3d 20 73 74 64 3a 3a 73 74 72 74 6f 6c 28 20 61 72 67 2c 20 26 74 long.bits.=.std::strtol(.arg,.&t
d5c0 61 69 6c 2c 20 30 20 29 3b 0a 20 20 69 66 28 20 62 69 74 73 20 3e 3d 20 6d 69 6e 5f 64 69 63 74 ail,.0.);...if(.bits.>=.min_dict
d5e0 69 6f 6e 61 72 79 5f 62 69 74 73 20 26 26 0a 20 20 20 20 20 20 62 69 74 73 20 3c 3d 20 6d 61 78 ionary_bits.&&.......bits.<=.max
d600 5f 64 69 63 74 69 6f 6e 61 72 79 5f 62 69 74 73 20 26 26 20 2a 74 61 69 6c 20 3d 3d 20 30 20 29 _dictionary_bits.&&.*tail.==.0.)
d620 0a 20 20 20 20 72 65 74 75 72 6e 20 31 20 3c 3c 20 62 69 74 73 3b 0a 20 20 72 65 74 75 72 6e 20 .....return.1.<<.bits;...return.
d640 67 65 74 6e 75 6d 28 20 61 72 67 2c 20 6f 70 74 69 6f 6e 5f 6e 61 6d 65 2c 20 6d 69 6e 5f 64 69 getnum(.arg,.option_name,.min_di
d660 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 2c 20 6d 61 78 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 ctionary_size,.max_dictionary_si
d680 7a 65 20 29 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 73 65 74 5f 6d 6f 64 65 28 20 4d 6f 64 65 20 ze.);...}...void.set_mode(.Mode.
d6a0 26 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 2c 20 63 6f 6e 73 74 20 4d 6f 64 65 20 6e 65 77 5f 6d &.program_mode,.const.Mode.new_m
d6c0 6f 64 65 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 21 3d 20 ode.)...{...if(.program_mode.!=.
d6e0 6d 5f 63 6f 6d 70 72 65 73 73 20 26 26 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 21 3d 20 6e 65 m_compress.&&.program_mode.!=.ne
d700 77 5f 6d 6f 64 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 22 w_mode.).....{.....show_error(."
d720 4f 6e 6c 79 20 6f 6e 65 20 6f 70 65 72 61 74 69 6f 6e 20 63 61 6e 20 62 65 20 73 70 65 63 69 66 Only.one.operation.can.be.specif
d740 69 65 64 2e 22 2c 20 30 2c 20 74 72 75 65 20 29 3b 0a 20 20 20 20 73 74 64 3a 3a 65 78 69 74 28 ied.",.0,.true.);.....std::exit(
d760 20 31 20 29 3b 0a 20 20 20 20 7d 0a 20 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 20 6e 65 77 .1.);.....}...program_mode.=.new
d780 5f 6d 6f 64 65 3b 0a 20 20 7d 0a 0a 0a 69 6e 74 20 65 78 74 65 6e 73 69 6f 6e 5f 69 6e 64 65 78 _mode;...}...int.extension_index
d7a0 28 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 26 20 6e 61 6d 65 20 29 0a 20 20 7b (.const.std::string.&.name.)...{
d7c0 0a 20 20 66 6f 72 28 20 69 6e 74 20 65 69 6e 64 65 78 20 3d 20 30 3b 20 6b 6e 6f 77 6e 5f 65 78 ...for(.int.eindex.=.0;.known_ex
d7e0 74 65 6e 73 69 6f 6e 73 5b 65 69 6e 64 65 78 5d 2e 66 72 6f 6d 3b 20 2b 2b 65 69 6e 64 65 78 20 tensions[eindex].from;.++eindex.
d800 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 65 78 ).....{.....const.std::string.ex
d820 74 28 20 6b 6e 6f 77 6e 5f 65 78 74 65 6e 73 69 6f 6e 73 5b 65 69 6e 64 65 78 5d 2e 66 72 6f 6d t(.known_extensions[eindex].from
d840 20 29 3b 0a 20 20 20 20 69 66 28 20 6e 61 6d 65 2e 73 69 7a 65 28 29 20 3e 20 65 78 74 2e 73 69 .);.....if(.name.size().>.ext.si
d860 7a 65 28 29 20 26 26 0a 20 20 20 20 20 20 20 20 6e 61 6d 65 2e 63 6f 6d 70 61 72 65 28 20 6e 61 ze().&&.........name.compare(.na
d880 6d 65 2e 73 69 7a 65 28 29 20 2d 20 65 78 74 2e 73 69 7a 65 28 29 2c 20 65 78 74 2e 73 69 7a 65 me.size().-.ext.size(),.ext.size
d8a0 28 29 2c 20 65 78 74 20 29 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 65 69 (),.ext.).==.0.).......return.ei
d8c0 6e 64 65 78 3b 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 2d 31 3b 0a 20 20 7d 0a 0a 0a 76 ndex;.....}...return.-1;...}...v
d8e0 6f 69 64 20 73 65 74 5f 63 5f 6f 75 74 6e 61 6d 65 28 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 oid.set_c_outname(.const.std::st
d900 72 69 6e 67 20 26 20 6e 61 6d 65 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 66 69 6c 65 6e 61 6d 65 ring.&.name,.const.bool.filename
d920 73 5f 67 69 76 65 6e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e s_given,.....................con
d940 73 74 20 62 6f 6f 6c 20 66 6f 72 63 65 5f 65 78 74 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 6d 75 st.bool.force_ext,.const.bool.mu
d960 6c 74 69 66 69 6c 65 20 29 0a 20 20 7b 0a 20 20 2f 2a 20 7a 75 70 64 61 74 65 20 3c 20 31 2e 39 ltifile.)...{.../*.zupdate.<.1.9
d980 20 64 65 70 65 6e 64 73 20 6f 6e 20 6c 7a 69 70 20 61 64 64 69 6e 67 20 74 68 65 20 65 78 74 65 .depends.on.lzip.adding.the.exte
d9a0 6e 73 69 6f 6e 20 27 2e 6c 7a 27 20 74 6f 20 6e 61 6d 65 20 77 68 65 6e 0a 20 20 20 20 20 72 65 nsion.'.lz'.to.name.when......re
d9c0 61 64 69 6e 67 20 66 72 6f 6d 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2e 20 2a 2f 0a 20 20 ading.from.standard.input..*/...
d9e0 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 3d 20 6e 61 6d 65 3b 0a 20 20 69 66 28 20 6d 75 output_filename.=.name;...if(.mu
da00 6c 74 69 66 69 6c 65 20 29 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 2b 3d 20 22 30 30 ltifile.).output_filename.+=."00
da20 30 30 31 22 3b 0a 20 20 69 66 28 20 66 6f 72 63 65 5f 65 78 74 20 7c 7c 20 6d 75 6c 74 69 66 69 001";...if(.force_ext.||.multifi
da40 6c 65 20 7c 7c 0a 20 20 20 20 20 20 28 20 21 66 69 6c 65 6e 61 6d 65 73 5f 67 69 76 65 6e 20 26 le.||.......(.!filenames_given.&
da60 26 20 65 78 74 65 6e 73 69 6f 6e 5f 69 6e 64 65 78 28 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 &.extension_index(.output_filena
da80 6d 65 20 29 20 3c 20 30 20 29 20 29 0a 20 20 20 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 me.).<.0.).).....output_filename
daa0 20 2b 3d 20 6b 6e 6f 77 6e 5f 65 78 74 65 6e 73 69 6f 6e 73 5b 30 5d 2e 66 72 6f 6d 3b 0a 20 20 .+=.known_extensions[0].from;...
dac0 7d 0a 0a 0a 76 6f 69 64 20 73 65 74 5f 64 5f 6f 75 74 6e 61 6d 65 28 20 63 6f 6e 73 74 20 73 74 }...void.set_d_outname(.const.st
dae0 64 3a 3a 73 74 72 69 6e 67 20 26 20 6e 61 6d 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 65 69 6e 64 d::string.&.name,.const.int.eind
db00 65 78 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 65 69 6e 64 65 78 20 3e 3d 20 30 20 29 0a 20 20 20 ex.)...{...if(.eindex.>=.0.)....
db20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 66 72 6f 6d 28 20 6b .{.....const.std::string.from(.k
db40 6e 6f 77 6e 5f 65 78 74 65 6e 73 69 6f 6e 73 5b 65 69 6e 64 65 78 5d 2e 66 72 6f 6d 20 29 3b 0a nown_extensions[eindex].from.);.
db60 20 20 20 20 69 66 28 20 6e 61 6d 65 2e 73 69 7a 65 28 29 20 3e 20 66 72 6f 6d 2e 73 69 7a 65 28 ....if(.name.size().>.from.size(
db80 29 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d ).).......{.......output_filenam
dba0 65 2e 61 73 73 69 67 6e 28 20 6e 61 6d 65 2c 20 30 2c 20 6e 61 6d 65 2e 73 69 7a 65 28 29 20 2d e.assign(.name,.0,.name.size().-
dbc0 20 66 72 6f 6d 2e 73 69 7a 65 28 29 20 29 3b 0a 20 20 20 20 20 20 6f 75 74 70 75 74 5f 66 69 6c .from.size().);.......output_fil
dbe0 65 6e 61 6d 65 20 2b 3d 20 6b 6e 6f 77 6e 5f 65 78 74 65 6e 73 69 6f 6e 73 5b 65 69 6e 64 65 78 ename.+=.known_extensions[eindex
dc00 5d 2e 74 6f 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 ].to;.......return;.......}.....
dc20 7d 0a 20 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 3d 20 6e 61 6d 65 3b 20 6f 75 74 70 }...output_filename.=.name;.outp
dc40 75 74 5f 66 69 6c 65 6e 61 6d 65 20 2b 3d 20 22 2e 6f 75 74 22 3b 0a 20 20 69 66 28 20 76 65 72 ut_filename.+=.".out";...if(.ver
dc60 62 6f 73 69 74 79 20 3e 3d 20 31 20 29 0a 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 bosity.>=.1.).....std::fprintf(.
dc80 73 74 64 65 72 72 2c 20 22 25 73 3a 20 25 73 3a 20 43 61 6e 27 74 20 67 75 65 73 73 20 6f 72 69 stderr,."%s:.%s:.Can't.guess.ori
dca0 67 69 6e 61 6c 20 6e 61 6d 65 20 2d 2d 20 75 73 69 6e 67 20 27 25 73 27 5c 6e 22 2c 0a 20 20 20 ginal.name.--.using.'%s'\n",....
dcc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 2c 20 6e 61 6d ...............program_name,.nam
dce0 65 2e 63 5f 73 74 72 28 29 2c 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 74 72 e.c_str(),.output_filename.c_str
dd00 28 29 20 29 3b 0a 20 20 7d 0a 0a 7d 20 2f 2f 20 65 6e 64 20 6e 61 6d 65 73 70 61 63 65 0a 0a 69 ().);...}..}.//.end.namespace..i
dd20 6e 74 20 6f 70 65 6e 5f 69 6e 73 74 72 65 61 6d 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 nt.open_instream(.const.char.*.c
dd40 6f 6e 73 74 20 6e 61 6d 65 2c 20 73 74 72 75 63 74 20 73 74 61 74 20 2a 20 63 6f 6e 73 74 20 69 onst.name,.struct.stat.*.const.i
dd60 6e 5f 73 74 61 74 73 70 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e n_statsp,....................con
dd80 73 74 20 62 6f 6f 6c 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 72 st.bool.one_to_one,.const.bool.r
dda0 65 67 5f 6f 6e 6c 79 20 29 0a 20 20 7b 0a 20 20 69 6e 74 20 69 6e 66 64 20 3d 20 6f 70 65 6e 28 eg_only.)...{...int.infd.=.open(
ddc0 20 6e 61 6d 65 2c 20 4f 5f 52 44 4f 4e 4c 59 20 7c 20 4f 5f 42 49 4e 41 52 59 20 29 3b 0a 20 20 .name,.O_RDONLY.|.O_BINARY.);...
dde0 69 66 28 20 69 6e 66 64 20 3c 20 30 20 29 0a 20 20 20 20 73 68 6f 77 5f 66 69 6c 65 5f 65 72 72 if(.infd.<.0.).....show_file_err
de00 6f 72 28 20 6e 61 6d 65 2c 20 22 43 61 6e 27 74 20 6f 70 65 6e 20 69 6e 70 75 74 20 66 69 6c 65 or(.name,."Can't.open.input.file
de20 22 2c 20 65 72 72 6e 6f 20 29 3b 0a 20 20 65 6c 73 65 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e ",.errno.);...else.....{.....con
de40 73 74 20 69 6e 74 20 69 20 3d 20 66 73 74 61 74 28 20 69 6e 66 64 2c 20 69 6e 5f 73 74 61 74 73 st.int.i.=.fstat(.infd,.in_stats
de60 70 20 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 6d 6f 64 65 5f 74 20 6d 6f 64 65 20 3d 20 69 6e 5f p.);.....const.mode_t.mode.=.in_
de80 73 74 61 74 73 70 2d 3e 73 74 5f 6d 6f 64 65 3b 0a 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 statsp->st_mode;.....const.bool.
dea0 63 61 6e 5f 72 65 61 64 20 3d 20 69 20 3d 3d 20 30 20 26 26 20 21 72 65 67 5f 6f 6e 6c 79 20 26 can_read.=.i.==.0.&&.!reg_only.&
dec0 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 20 53 5f &...........................(.S_
dee0 49 53 42 4c 4b 28 20 6d 6f 64 65 20 29 20 7c 7c 20 53 5f 49 53 43 48 52 28 20 6d 6f 64 65 20 29 ISBLK(.mode.).||.S_ISCHR(.mode.)
df00 20 7c 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .||.............................
df20 53 5f 49 53 46 49 46 4f 28 20 6d 6f 64 65 20 29 20 7c 7c 20 53 5f 49 53 53 4f 43 4b 28 20 6d 6f S_ISFIFO(.mode.).||.S_ISSOCK(.mo
df40 64 65 20 29 20 29 3b 0a 20 20 20 20 69 66 28 20 69 20 21 3d 20 30 20 7c 7c 20 28 20 21 53 5f 49 de.).);.....if(.i.!=.0.||.(.!S_I
df60 53 52 45 47 28 20 6d 6f 64 65 20 29 20 26 26 20 28 20 21 63 61 6e 5f 72 65 61 64 20 7c 7c 20 6f SREG(.mode.).&&.(.!can_read.||.o
df80 6e 65 5f 74 6f 5f 6f 6e 65 20 29 20 29 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 ne_to_one.).).).......{.......if
dfa0 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 29 0a 20 20 20 20 20 20 20 20 73 74 64 3a 3a (.verbosity.>=.0.).........std::
dfc0 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 73 3a 20 25 73 3a 20 49 6e 70 75 74 20 fprintf(.stderr,."%s:.%s:.Input.
dfe0 66 69 6c 65 20 69 73 20 6e 6f 74 20 61 20 72 65 67 75 6c 61 72 20 66 69 6c 65 25 73 2e 5c 6e 22 file.is.not.a.regular.file%s.\n"
e000 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 67 72 61 6d 5f ,.......................program_
e020 6e 61 6d 65 2c 20 6e 61 6d 65 2c 20 28 20 63 61 6e 5f 72 65 61 64 20 26 26 20 6f 6e 65 5f 74 6f name,.name,.(.can_read.&&.one_to
e040 5f 6f 6e 65 20 29 20 3f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 _one.).?......................."
e060 2c 5c 6e 20 20 61 6e 64 20 6e 65 69 74 68 65 72 20 27 2d 63 27 20 6e 6f 72 20 27 2d 6f 27 20 77 ,\n..and.neither.'-c'.nor.'-o'.w
e080 65 72 65 20 73 70 65 63 69 66 69 65 64 22 20 3a 20 22 22 20 29 3b 0a 20 20 20 20 20 20 63 6c 6f ere.specified".:."".);.......clo
e0a0 73 65 28 20 69 6e 66 64 20 29 3b 0a 20 20 20 20 20 20 69 6e 66 64 20 3d 20 2d 31 3b 0a 20 20 20 se(.infd.);.......infd.=.-1;....
e0c0 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 69 6e 66 64 3b 0a 20 20 7d 0a 0a 6e ...}.....}...return.infd;...}..n
e0e0 61 6d 65 73 70 61 63 65 20 7b 0a 0a 69 6e 74 20 6f 70 65 6e 5f 69 6e 73 74 72 65 61 6d 32 28 20 amespace.{..int.open_instream2(.
e100 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6e 61 6d 65 2c 20 73 74 72 75 63 74 20 const.char.*.const.name,.struct.
e120 73 74 61 74 20 2a 20 63 6f 6e 73 74 20 69 6e 5f 73 74 61 74 73 70 2c 0a 20 20 20 20 20 20 20 20 stat.*.const.in_statsp,.........
e140 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 4d 6f 64 65 20 70 72 6f 67 72 61 6d 5f 6d ............const.Mode.program_m
e160 6f 64 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 65 69 6e 64 65 78 2c 0a 20 20 20 20 20 20 20 20 20 ode,.const.int.eindex,..........
e180 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 ...........const.bool.one_to_one
e1a0 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 72 65 63 6f 6d 70 72 65 73 73 20 29 0a 20 20 7b 0a 20 20 ,.const.bool.recompress.)...{...
e1c0 69 66 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 3d 20 6d 5f 63 6f 6d 70 72 65 73 73 20 26 if(.program_mode.==.m_compress.&
e1e0 26 20 21 72 65 63 6f 6d 70 72 65 73 73 20 26 26 20 65 69 6e 64 65 78 20 3e 3d 20 30 20 29 0a 20 &.!recompress.&&.eindex.>=.0.)..
e200 20 20 20 7b 0a 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 29 0a 20 20 ...{.....if(.verbosity.>=.0.)...
e220 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 73 3a 20 25 ....std::fprintf(.stderr,."%s:.%
e240 73 3a 20 49 6e 70 75 74 20 66 69 6c 65 20 61 6c 72 65 61 64 79 20 68 61 73 20 27 25 73 27 20 73 s:.Input.file.already.has.'%s'.s
e260 75 66 66 69 78 2c 20 69 67 6e 6f 72 65 64 2e 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 uffix,.ignored.\n",.............
e280 20 20 20 20 20 20 20 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 2c 20 6e 61 6d 65 2c 20 6b 6e 6f 77 ........program_name,.name,.know
e2a0 6e 5f 65 78 74 65 6e 73 69 6f 6e 73 5b 65 69 6e 64 65 78 5d 2e 66 72 6f 6d 20 29 3b 0a 20 20 20 n_extensions[eindex].from.);....
e2c0 20 72 65 74 75 72 6e 20 2d 31 3b 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 6f 70 65 6e 5f .return.-1;.....}...return.open_
e2e0 69 6e 73 74 72 65 61 6d 28 20 6e 61 6d 65 2c 20 69 6e 5f 73 74 61 74 73 70 2c 20 6f 6e 65 5f 74 instream(.name,.in_statsp,.one_t
e300 6f 5f 6f 6e 65 2c 20 66 61 6c 73 65 20 29 3b 0a 20 20 7d 0a 0a 0a 62 6f 6f 6c 20 6d 61 6b 65 5f o_one,.false.);...}...bool.make_
e320 64 69 72 73 28 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 26 20 6e 61 6d 65 20 29 dirs(.const.std::string.&.name.)
e340 0a 20 20 7b 0a 20 20 69 6e 74 20 69 20 3d 20 6e 61 6d 65 2e 73 69 7a 65 28 29 3b 0a 20 20 77 68 ...{...int.i.=.name.size();...wh
e360 69 6c 65 28 20 69 20 3e 20 30 20 26 26 20 6e 61 6d 65 5b 69 2d 31 5d 20 21 3d 20 27 2f 27 20 29 ile(.i.>.0.&&.name[i-1].!=.'/'.)
e380 20 2d 2d 69 3b 09 2f 2f 20 72 65 6d 6f 76 65 20 6c 61 73 74 20 63 6f 6d 70 6f 6e 65 6e 74 0a 20 .--i;.//.remove.last.component..
e3a0 20 77 68 69 6c 65 28 20 69 20 3e 20 30 20 26 26 20 6e 61 6d 65 5b 69 2d 31 5d 20 3d 3d 20 27 2f .while(.i.>.0.&&.name[i-1].==.'/
e3c0 27 20 29 20 2d 2d 69 3b 09 2f 2f 20 72 65 6d 6f 76 65 20 73 6c 61 73 68 28 65 73 29 0a 20 20 63 '.).--i;.//.remove.slash(es)...c
e3e0 6f 6e 73 74 20 69 6e 74 20 64 69 72 73 69 7a 65 20 3d 20 69 3b 09 2f 2f 20 73 69 7a 65 20 6f 66 onst.int.dirsize.=.i;.//.size.of
e400 20 64 69 72 6e 61 6d 65 20 77 69 74 68 6f 75 74 20 74 72 61 69 6c 69 6e 67 20 73 6c 61 73 68 28 .dirname.without.trailing.slash(
e420 65 73 29 0a 0a 20 20 66 6f 72 28 20 69 20 3d 20 30 3b 20 69 20 3c 20 64 69 72 73 69 7a 65 3b 20 es)....for(.i.=.0;.i.<.dirsize;.
e440 29 09 2f 2f 20 69 66 20 64 69 72 73 69 7a 65 20 3d 3d 20 30 2c 20 64 69 72 6e 61 6d 65 20 69 73 ).//.if.dirsize.==.0,.dirname.is
e460 20 27 2f 27 20 6f 72 20 65 6d 70 74 79 0a 20 20 20 20 7b 0a 20 20 20 20 77 68 69 6c 65 28 20 69 .'/'.or.empty.....{.....while(.i
e480 20 3c 20 64 69 72 73 69 7a 65 20 26 26 20 6e 61 6d 65 5b 69 5d 20 3d 3d 20 27 2f 27 20 29 20 2b .<.dirsize.&&.name[i].==.'/'.).+
e4a0 2b 69 3b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 66 69 72 73 74 20 3d 20 69 3b 0a 20 20 20 +i;.....const.int.first.=.i;....
e4c0 20 77 68 69 6c 65 28 20 69 20 3c 20 64 69 72 73 69 7a 65 20 26 26 20 6e 61 6d 65 5b 69 5d 20 21 .while(.i.<.dirsize.&&.name[i].!
e4e0 3d 20 27 2f 27 20 29 20 2b 2b 69 3b 0a 20 20 20 20 69 66 28 20 66 69 72 73 74 20 3c 20 69 20 29 =.'/'.).++i;.....if(.first.<.i.)
e500 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 72 69 6e 67 .......{.......const.std::string
e520 20 70 61 72 74 69 61 6c 28 20 6e 61 6d 65 2c 20 30 2c 20 69 20 29 3b 0a 20 20 20 20 20 20 63 6f .partial(.name,.0,.i.);.......co
e540 6e 73 74 20 6d 6f 64 65 5f 74 20 6d 6f 64 65 20 3d 20 53 5f 49 52 57 58 55 20 7c 20 53 5f 49 52 nst.mode_t.mode.=.S_IRWXU.|.S_IR
e560 47 52 50 20 7c 20 53 5f 49 58 47 52 50 20 7c 20 53 5f 49 52 4f 54 48 20 7c 20 53 5f 49 58 4f 54 GRP.|.S_IXGRP.|.S_IROTH.|.S_IXOT
e580 48 3b 0a 20 20 20 20 20 20 73 74 72 75 63 74 20 73 74 61 74 20 73 74 3b 0a 20 20 20 20 20 20 69 H;.......struct.stat.st;.......i
e5a0 66 28 20 73 74 61 74 28 20 70 61 72 74 69 61 6c 2e 63 5f 73 74 72 28 29 2c 20 26 73 74 20 29 20 f(.stat(.partial.c_str(),.&st.).
e5c0 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 20 20 7b 20 69 66 28 20 21 53 5f 49 53 44 49 52 28 20 73 ==.0.).........{.if(.!S_ISDIR(.s
e5e0 74 2e 73 74 5f 6d 6f 64 65 20 29 20 29 20 7b 20 65 72 72 6e 6f 20 3d 20 45 4e 4f 54 44 49 52 3b t.st_mode.).).{.errno.=.ENOTDIR;
e600 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 20 7d 0a 20 20 20 20 20 20 65 6c 73 65 20 69 66 .return.false;.}.}.......else.if
e620 28 20 6d 6b 64 69 72 28 20 70 61 72 74 69 61 6c 2e 63 5f 73 74 72 28 29 2c 20 6d 6f 64 65 20 29 (.mkdir(.partial.c_str(),.mode.)
e640 20 21 3d 20 30 20 26 26 20 65 72 72 6e 6f 20 21 3d 20 45 45 58 49 53 54 20 29 0a 20 20 20 20 20 .!=.0.&&.errno.!=.EEXIST.)......
e660 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 09 09 2f 2f 20 69 66 20 45 45 58 49 53 54 2c 20 ...return.false;..//.if.EEXIST,.
e680 61 6e 6f 74 68 65 72 20 70 72 6f 63 65 73 73 20 63 72 65 61 74 65 64 20 74 68 65 20 64 69 72 0a another.process.created.the.dir.
e6a0 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 7d ......}.....}...return.true;...}
e6c0 0a 0a 0a 62 6f 6f 6c 20 6f 70 65 6e 5f 6f 75 74 73 74 72 65 61 6d 28 20 63 6f 6e 73 74 20 62 6f ...bool.open_outstream(.const.bo
e6e0 6f 6c 20 66 6f 72 63 65 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 70 72 6f 74 65 63 74 20 29 0a 20 ol.force,.const.bool.protect.)..
e700 20 7b 0a 20 20 63 6f 6e 73 74 20 6d 6f 64 65 5f 74 20 75 73 72 5f 72 77 20 3d 20 53 5f 49 52 55 .{...const.mode_t.usr_rw.=.S_IRU
e720 53 52 20 7c 20 53 5f 49 57 55 53 52 3b 0a 20 20 63 6f 6e 73 74 20 6d 6f 64 65 5f 74 20 61 6c 6c SR.|.S_IWUSR;...const.mode_t.all
e740 5f 72 77 20 3d 20 75 73 72 5f 72 77 20 7c 20 53 5f 49 52 47 52 50 20 7c 20 53 5f 49 57 47 52 50 _rw.=.usr_rw.|.S_IRGRP.|.S_IWGRP
e760 20 7c 20 53 5f 49 52 4f 54 48 20 7c 20 53 5f 49 57 4f 54 48 3b 0a 20 20 63 6f 6e 73 74 20 6d 6f .|.S_IROTH.|.S_IWOTH;...const.mo
e780 64 65 5f 74 20 6f 75 74 66 64 5f 6d 6f 64 65 20 3d 20 70 72 6f 74 65 63 74 20 3f 20 75 73 72 5f de_t.outfd_mode.=.protect.?.usr_
e7a0 72 77 20 3a 20 61 6c 6c 5f 72 77 3b 0a 20 20 69 6e 74 20 66 6c 61 67 73 20 3d 20 4f 5f 43 52 45 rw.:.all_rw;...int.flags.=.O_CRE
e7c0 41 54 20 7c 20 4f 5f 57 52 4f 4e 4c 59 20 7c 20 4f 5f 42 49 4e 41 52 59 3b 0a 20 20 69 66 28 20 AT.|.O_WRONLY.|.O_BINARY;...if(.
e7e0 66 6f 72 63 65 20 29 20 66 6c 61 67 73 20 7c 3d 20 4f 5f 54 52 55 4e 43 3b 20 65 6c 73 65 20 66 force.).flags.|=.O_TRUNC;.else.f
e800 6c 61 67 73 20 7c 3d 20 4f 5f 45 58 43 4c 3b 0a 0a 20 20 6f 75 74 66 64 20 3d 20 2d 31 3b 0a 20 lags.|=.O_EXCL;....outfd.=.-1;..
e820 20 69 66 28 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 73 69 7a 65 28 29 20 26 26 20 6f .if(.output_filename.size().&&.o
e840 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 65 6e 64 28 29 5b 2d 31 5d 20 3d 3d 20 27 2f 27 20 utput_filename.end()[-1].==.'/'.
e860 29 0a 20 20 20 20 65 72 72 6e 6f 20 3d 20 45 49 53 44 49 52 3b 0a 20 20 65 6c 73 65 20 7b 0a 20 ).....errno.=.EISDIR;...else.{..
e880 20 20 20 69 66 28 20 21 70 72 6f 74 65 63 74 20 26 26 20 21 6d 61 6b 65 5f 64 69 72 73 28 20 6f ...if(.!protect.&&.!make_dirs(.o
e8a0 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 29 20 29 0a 20 20 20 20 20 20 7b 20 73 68 6f 77 5f utput_filename.).).......{.show_
e8c0 66 69 6c 65 5f 65 72 72 6f 72 28 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 74 file_error(.output_filename.c_st
e8e0 72 28 29 2c 0a 20 20 20 20 20 20 20 20 20 20 22 45 72 72 6f 72 20 63 72 65 61 74 69 6e 67 20 69 r(),..........."Error.creating.i
e900 6e 74 65 72 6d 65 64 69 61 74 65 20 64 69 72 65 63 74 6f 72 79 22 2c 20 65 72 72 6e 6f 20 29 3b ntermediate.directory",.errno.);
e920 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 20 20 20 6f 75 74 66 64 20 3d 20 6f 70 65 .return.false;.}.....outfd.=.ope
e940 6e 28 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 74 72 28 29 2c 20 66 6c 61 67 n(.output_filename.c_str(),.flag
e960 73 2c 20 6f 75 74 66 64 5f 6d 6f 64 65 20 29 3b 0a 20 20 20 20 69 66 28 20 6f 75 74 66 64 20 3e s,.outfd_mode.);.....if(.outfd.>
e980 3d 20 30 20 29 20 7b 20 64 65 6c 65 74 65 5f 6f 75 74 70 75 74 5f 6f 6e 5f 69 6e 74 65 72 72 75 =.0.).{.delete_output_on_interru
e9a0 70 74 20 3d 20 74 72 75 65 3b 20 72 65 74 75 72 6e 20 74 72 75 65 3b 20 7d 0a 20 20 20 20 69 66 pt.=.true;.return.true;.}.....if
e9c0 28 20 65 72 72 6e 6f 20 3d 3d 20 45 45 58 49 53 54 20 29 0a 20 20 20 20 20 20 7b 20 73 68 6f 77 (.errno.==.EEXIST.).......{.show
e9e0 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 _file_error(.output_filename.c_s
ea00 74 72 28 29 2c 0a 20 20 20 20 20 20 20 20 20 20 22 4f 75 74 70 75 74 20 66 69 6c 65 20 61 6c 72 tr(),..........."Output.file.alr
ea20 65 61 64 79 20 65 78 69 73 74 73 2c 20 73 6b 69 70 70 69 6e 67 2e 22 20 29 3b 20 72 65 74 75 72 eady.exists,.skipping.".);.retur
ea40 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 20 20 20 7d 0a 20 20 73 68 6f 77 5f 66 69 6c 65 5f 65 72 72 n.false;.}.....}...show_file_err
ea60 6f 72 28 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 74 72 28 29 2c 20 22 43 61 or(.output_filename.c_str(),."Ca
ea80 6e 27 74 20 63 72 65 61 74 65 20 6f 75 74 70 75 74 20 66 69 6c 65 22 2c 20 65 72 72 6e 6f 20 29 n't.create.output.file",.errno.)
eaa0 3b 0a 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 73 65 74 ;...return.false;...}...void.set
eac0 5f 73 69 67 6e 61 6c 73 28 20 76 6f 69 64 20 28 2a 61 63 74 69 6f 6e 29 28 69 6e 74 29 20 29 0a _signals(.void.(*action)(int).).
eae0 20 20 7b 0a 20 20 73 74 64 3a 3a 73 69 67 6e 61 6c 28 20 53 49 47 48 55 50 2c 20 61 63 74 69 6f ..{...std::signal(.SIGHUP,.actio
eb00 6e 20 29 3b 0a 20 20 73 74 64 3a 3a 73 69 67 6e 61 6c 28 20 53 49 47 49 4e 54 2c 20 61 63 74 69 n.);...std::signal(.SIGINT,.acti
eb20 6f 6e 20 29 3b 0a 20 20 73 74 64 3a 3a 73 69 67 6e 61 6c 28 20 53 49 47 54 45 52 4d 2c 20 61 63 on.);...std::signal(.SIGTERM,.ac
eb40 74 69 6f 6e 20 29 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 63 6c 65 61 6e 75 70 5f 61 6e 64 5f 66 tion.);...}...void.cleanup_and_f
eb60 61 69 6c 28 20 63 6f 6e 73 74 20 69 6e 74 20 72 65 74 76 61 6c 20 29 0a 20 20 7b 0a 20 20 73 65 ail(.const.int.retval.)...{...se
eb80 74 5f 73 69 67 6e 61 6c 73 28 20 53 49 47 5f 49 47 4e 20 29 3b 09 09 09 2f 2f 20 69 67 6e 6f 72 t_signals(.SIG_IGN.);...//.ignor
eba0 65 20 73 69 67 6e 61 6c 73 0a 20 20 69 66 28 20 64 65 6c 65 74 65 5f 6f 75 74 70 75 74 5f 6f 6e e.signals...if(.delete_output_on
ebc0 5f 69 6e 74 65 72 72 75 70 74 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 64 65 6c 65 74 65 5f 6f 75 _interrupt.).....{.....delete_ou
ebe0 74 70 75 74 5f 6f 6e 5f 69 6e 74 65 72 72 75 70 74 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 73 tput_on_interrupt.=.false;.....s
ec00 68 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e how_file_error(.output_filename.
ec20 63 5f 73 74 72 28 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 44 c_str(),......................"D
ec40 65 6c 65 74 69 6e 67 20 6f 75 74 70 75 74 20 66 69 6c 65 2c 20 69 66 20 69 74 20 65 78 69 73 74 eleting.output.file,.if.it.exist
ec60 73 2e 22 20 29 3b 0a 20 20 20 20 69 66 28 20 6f 75 74 66 64 20 3e 3d 20 30 20 29 20 7b 20 63 6c s.".);.....if(.outfd.>=.0.).{.cl
ec80 6f 73 65 28 20 6f 75 74 66 64 20 29 3b 20 6f 75 74 66 64 20 3d 20 2d 31 3b 20 7d 0a 20 20 20 20 ose(.outfd.);.outfd.=.-1;.}.....
eca0 69 66 28 20 73 74 64 3a 3a 72 65 6d 6f 76 65 28 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 if(.std::remove(.output_filename
ecc0 2e 63 5f 73 74 72 28 29 20 29 20 21 3d 20 30 20 26 26 20 65 72 72 6e 6f 20 21 3d 20 45 4e 4f 45 .c_str().).!=.0.&&.errno.!=.ENOE
ece0 4e 54 20 29 0a 20 20 20 20 20 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 22 77 61 72 6e 69 6e 67 3a NT.).......show_error(."warning:
ed00 20 64 65 6c 65 74 69 6f 6e 20 6f 66 20 6f 75 74 70 75 74 20 66 69 6c 65 20 66 61 69 6c 65 64 22 .deletion.of.output.file.failed"
ed20 2c 20 65 72 72 6e 6f 20 29 3b 0a 20 20 20 20 7d 0a 20 20 73 74 64 3a 3a 65 78 69 74 28 20 72 65 ,.errno.);.....}...std::exit(.re
ed40 74 76 61 6c 20 29 3b 0a 20 20 7d 0a 0a 0a 65 78 74 65 72 6e 20 22 43 22 20 76 6f 69 64 20 73 69 tval.);...}...extern."C".void.si
ed60 67 6e 61 6c 5f 68 61 6e 64 6c 65 72 28 20 69 6e 74 20 29 0a 20 20 7b 0a 20 20 73 68 6f 77 5f 65 gnal_handler(.int.)...{...show_e
ed80 72 72 6f 72 28 20 22 43 6f 6e 74 72 6f 6c 2d 43 20 6f 72 20 73 69 6d 69 6c 61 72 20 63 61 75 67 rror(."Control-C.or.similar.caug
eda0 68 74 2c 20 71 75 69 74 74 69 6e 67 2e 22 20 29 3b 0a 20 20 63 6c 65 61 6e 75 70 5f 61 6e 64 5f ht,.quitting.".);...cleanup_and_
edc0 66 61 69 6c 28 20 31 20 29 3b 0a 20 20 7d 0a 0a 0a 62 6f 6f 6c 20 63 68 65 63 6b 5f 74 74 79 5f fail(.1.);...}...bool.check_tty_
ede0 69 6e 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 69 6e 70 75 74 5f 66 69 6c in(.const.char.*.const.input_fil
ee00 65 6e 61 6d 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 69 6e 66 64 2c 0a 20 20 20 20 20 20 20 20 20 ename,.const.int.infd,..........
ee20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 4d 6f 64 65 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 ..........const.Mode.program_mod
ee40 65 2c 20 69 6e 74 20 26 20 72 65 74 76 61 6c 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 28 20 70 72 e,.int.&.retval.)...{...if(.(.pr
ee60 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 3d 20 6d 5f 64 65 63 6f 6d 70 72 65 73 73 20 7c 7c 20 70 72 ogram_mode.==.m_decompress.||.pr
ee80 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 3d 20 6d 5f 74 65 73 74 20 29 20 26 26 0a 20 20 20 20 20 20 ogram_mode.==.m_test.).&&.......
eea0 69 73 61 74 74 79 28 20 69 6e 66 64 20 29 20 29 09 09 09 09 2f 2f 20 66 6f 72 20 65 78 61 6d 70 isatty(.infd.).)....//.for.examp
eec0 6c 65 20 2f 64 65 76 2f 74 74 79 0a 20 20 20 20 7b 20 73 68 6f 77 5f 66 69 6c 65 5f 65 72 72 6f le./dev/tty.....{.show_file_erro
eee0 72 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 r(.input_filename,..............
ef00 20 20 20 20 20 20 20 20 20 20 22 49 20 77 6f 6e 27 74 20 72 65 61 64 20 63 6f 6d 70 72 65 73 73 .........."I.won't.read.compress
ef20 65 64 20 64 61 74 61 20 66 72 6f 6d 20 61 20 74 65 72 6d 69 6e 61 6c 2e 22 20 29 3b 0a 20 20 20 ed.data.from.a.terminal.".);....
ef40 20 20 20 63 6c 6f 73 65 28 20 69 6e 66 64 20 29 3b 20 73 65 74 5f 72 65 74 76 61 6c 28 20 72 65 ...close(.infd.);.set_retval(.re
ef60 74 76 61 6c 2c 20 32 20 29 3b 0a 20 20 20 20 20 20 69 66 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 tval,.2.);.......if(.program_mod
ef80 65 20 21 3d 20 6d 5f 74 65 73 74 20 29 20 63 6c 65 61 6e 75 70 5f 61 6e 64 5f 66 61 69 6c 28 20 e.!=.m_test.).cleanup_and_fail(.
efa0 72 65 74 76 61 6c 20 29 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a retval.);.......return.false;.}.
efc0 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 7d 0a 0a 62 6f 6f 6c 20 63 68 65 63 6b 5f 74 ..return.true;...}..bool.check_t
efe0 74 79 5f 6f 75 74 28 20 63 6f 6e 73 74 20 4d 6f 64 65 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 ty_out(.const.Mode.program_mode.
f000 29 0a 20 20 7b 0a 20 20 69 66 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 3d 20 6d 5f 63 6f )...{...if(.program_mode.==.m_co
f020 6d 70 72 65 73 73 20 26 26 20 69 73 61 74 74 79 28 20 6f 75 74 66 64 20 29 20 29 0a 20 20 20 20 mpress.&&.isatty(.outfd.).).....
f040 7b 20 73 68 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 {.show_file_error(.output_filena
f060 6d 65 2e 73 69 7a 65 28 29 20 3f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 me.size().?.....................
f080 20 20 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 74 72 28 29 20 3a 20 22 28 73 ...output_filename.c_str().:."(s
f0a0 74 64 6f 75 74 29 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tdout)",........................
f0c0 22 49 20 77 6f 6e 27 74 20 77 72 69 74 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 74 "I.won't.write.compressed.data.t
f0e0 6f 20 61 20 74 65 72 6d 69 6e 61 6c 2e 22 20 29 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 o.a.terminal.".);.......return.f
f100 61 6c 73 65 3b 20 7d 0a 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 7d 0a 0a 0a 2f 2f 20 alse;.}...return.true;...}...//.
f120 53 65 74 20 70 65 72 6d 69 73 73 69 6f 6e 73 2c 20 6f 77 6e 65 72 2c 20 61 6e 64 20 74 69 6d 65 Set.permissions,.owner,.and.time
f140 73 2e 0a 76 6f 69 64 20 63 6c 6f 73 65 5f 61 6e 64 5f 73 65 74 5f 70 65 72 6d 69 73 73 69 6f 6e s..void.close_and_set_permission
f160 73 28 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 74 61 74 20 2a 20 63 6f 6e 73 74 20 69 6e 5f s(.const.struct.stat.*.const.in_
f180 73 74 61 74 73 70 20 29 0a 20 20 7b 0a 20 20 62 6f 6f 6c 20 77 61 72 6e 69 6e 67 20 3d 20 66 61 statsp.)...{...bool.warning.=.fa
f1a0 6c 73 65 3b 0a 20 20 69 66 28 20 69 6e 5f 73 74 61 74 73 70 20 29 0a 20 20 20 20 7b 0a 20 20 20 lse;...if(.in_statsp.).....{....
f1c0 20 63 6f 6e 73 74 20 6d 6f 64 65 5f 74 20 6d 6f 64 65 20 3d 20 69 6e 5f 73 74 61 74 73 70 2d 3e .const.mode_t.mode.=.in_statsp->
f1e0 73 74 5f 6d 6f 64 65 3b 0a 20 20 20 20 2f 2f 20 66 63 68 6f 77 6e 20 69 6e 20 6d 61 6e 79 20 63 st_mode;.....//.fchown.in.many.c
f200 61 73 65 73 20 72 65 74 75 72 6e 73 20 77 69 74 68 20 45 50 45 52 4d 2c 20 77 68 69 63 68 20 63 ases.returns.with.EPERM,.which.c
f220 61 6e 20 62 65 20 73 61 66 65 6c 79 20 69 67 6e 6f 72 65 64 2e 0a 20 20 20 20 69 66 28 20 66 63 an.be.safely.ignored......if(.fc
f240 68 6f 77 6e 28 20 6f 75 74 66 64 2c 20 69 6e 5f 73 74 61 74 73 70 2d 3e 73 74 5f 75 69 64 2c 20 hown(.outfd,.in_statsp->st_uid,.
f260 69 6e 5f 73 74 61 74 73 70 2d 3e 73 74 5f 67 69 64 20 29 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 in_statsp->st_gid.).==.0.)......
f280 20 7b 20 69 66 28 20 66 63 68 6d 6f 64 28 20 6f 75 74 66 64 2c 20 6d 6f 64 65 20 29 20 21 3d 20 .{.if(.fchmod(.outfd,.mode.).!=.
f2a0 30 20 29 20 77 61 72 6e 69 6e 67 20 3d 20 74 72 75 65 3b 20 7d 0a 20 20 20 20 65 6c 73 65 0a 20 0.).warning.=.true;.}.....else..
f2c0 20 20 20 20 20 69 66 28 20 65 72 72 6e 6f 20 21 3d 20 45 50 45 52 4d 20 7c 7c 0a 20 20 20 20 20 .....if(.errno.!=.EPERM.||......
f2e0 20 20 20 20 20 66 63 68 6d 6f 64 28 20 6f 75 74 66 64 2c 20 6d 6f 64 65 20 26 20 7e 28 20 53 5f .....fchmod(.outfd,.mode.&.~(.S_
f300 49 53 55 49 44 20 7c 20 53 5f 49 53 47 49 44 20 7c 20 53 5f 49 53 56 54 58 20 29 20 29 20 21 3d ISUID.|.S_ISGID.|.S_ISVTX.).).!=
f320 20 30 20 29 0a 20 20 20 20 20 20 20 20 77 61 72 6e 69 6e 67 20 3d 20 74 72 75 65 3b 0a 20 20 20 .0.).........warning.=.true;....
f340 20 7d 0a 20 20 69 66 28 20 63 6c 6f 73 65 28 20 6f 75 74 66 64 20 29 20 21 3d 20 30 20 29 0a 20 .}...if(.close(.outfd.).!=.0.)..
f360 20 20 20 7b 20 73 68 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 6f 75 74 70 75 74 5f 66 69 6c ...{.show_file_error(.output_fil
f380 65 6e 61 6d 65 2e 63 5f 73 74 72 28 29 2c 20 22 45 72 72 6f 72 20 63 6c 6f 73 69 6e 67 20 6f 75 ename.c_str(),."Error.closing.ou
f3a0 74 70 75 74 20 66 69 6c 65 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tput.file",.....................
f3c0 20 20 20 65 72 72 6e 6f 20 29 3b 20 63 6c 65 61 6e 75 70 5f 61 6e 64 5f 66 61 69 6c 28 20 31 20 ...errno.);.cleanup_and_fail(.1.
f3e0 29 3b 20 7d 0a 20 20 6f 75 74 66 64 20 3d 20 2d 31 3b 0a 20 20 64 65 6c 65 74 65 5f 6f 75 74 70 );.}...outfd.=.-1;...delete_outp
f400 75 74 5f 6f 6e 5f 69 6e 74 65 72 72 75 70 74 20 3d 20 66 61 6c 73 65 3b 0a 20 20 69 66 28 20 69 ut_on_interrupt.=.false;...if(.i
f420 6e 5f 73 74 61 74 73 70 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 73 74 72 75 63 74 20 75 74 69 6d n_statsp.).....{.....struct.utim
f440 62 75 66 20 74 3b 0a 20 20 20 20 74 2e 61 63 74 69 6d 65 20 3d 20 69 6e 5f 73 74 61 74 73 70 2d buf.t;.....t.actime.=.in_statsp-
f460 3e 73 74 5f 61 74 69 6d 65 3b 0a 20 20 20 20 74 2e 6d 6f 64 74 69 6d 65 20 3d 20 69 6e 5f 73 74 >st_atime;.....t.modtime.=.in_st
f480 61 74 73 70 2d 3e 73 74 5f 6d 74 69 6d 65 3b 0a 20 20 20 20 69 66 28 20 75 74 69 6d 65 28 20 6f atsp->st_mtime;.....if(.utime(.o
f4a0 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 74 72 28 29 2c 20 26 74 20 29 20 21 3d 20 utput_filename.c_str(),.&t.).!=.
f4c0 30 20 29 20 77 61 72 6e 69 6e 67 20 3d 20 74 72 75 65 3b 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 0.).warning.=.true;.....}...if(.
f4e0 77 61 72 6e 69 6e 67 20 26 26 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 31 20 29 0a 20 20 20 20 warning.&&.verbosity.>=.1.).....
f500 73 68 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 show_file_error(.output_filename
f520 2e 63 5f 73 74 72 28 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 .c_str(),......................"
f540 77 61 72 6e 69 6e 67 3a 20 63 61 6e 27 74 20 63 68 61 6e 67 65 20 6f 75 74 70 75 74 20 66 69 6c warning:.can't.change.output.fil
f560 65 20 61 74 74 72 69 62 75 74 65 73 22 2c 20 65 72 72 6e 6f 20 29 3b 0a 20 20 7d 0a 0a 0a 62 6f e.attributes",.errno.);...}...bo
f580 6f 6c 20 6e 65 78 74 5f 66 69 6c 65 6e 61 6d 65 28 29 0a 20 20 7b 0a 20 20 63 6f 6e 73 74 20 75 ol.next_filename()...{...const.u
f5a0 6e 73 69 67 6e 65 64 20 6e 61 6d 65 5f 6c 65 6e 20 3d 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 nsigned.name_len.=.output_filena
f5c0 6d 65 2e 73 69 7a 65 28 29 3b 0a 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 65 78 74 5f me.size();...const.unsigned.ext_
f5e0 6c 65 6e 20 3d 20 73 74 64 3a 3a 73 74 72 6c 65 6e 28 20 6b 6e 6f 77 6e 5f 65 78 74 65 6e 73 69 len.=.std::strlen(.known_extensi
f600 6f 6e 73 5b 30 5d 2e 66 72 6f 6d 20 29 3b 0a 20 20 69 66 28 20 6e 61 6d 65 5f 6c 65 6e 20 3e 3d ons[0].from.);...if(.name_len.>=
f620 20 65 78 74 5f 6c 65 6e 20 2b 20 35 20 29 09 09 09 09 2f 2f 20 22 2a 30 30 30 30 31 2e 6c 7a 22 .ext_len.+.5.)....//."*00001.lz"
f640 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 6e 61 6d 65 5f 6c 65 6e 20 2d 20 65 78 74 .....for(.int.i.=.name_len.-.ext
f660 5f 6c 65 6e 20 2d 20 31 2c 20 6a 20 3d 20 30 3b 20 6a 20 3c 20 35 3b 20 2d 2d 69 2c 20 2b 2b 6a _len.-.1,.j.=.0;.j.<.5;.--i,.++j
f680 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 6f 75 74 70 75 74 5f 66 69 6c 65 .).......{.......if(.output_file
f6a0 6e 61 6d 65 5b 69 5d 20 3c 20 27 39 27 20 29 20 7b 20 2b 2b 6f 75 74 70 75 74 5f 66 69 6c 65 6e name[i].<.'9'.).{.++output_filen
f6c0 61 6d 65 5b 69 5d 3b 20 72 65 74 75 72 6e 20 74 72 75 65 3b 20 7d 0a 20 20 20 20 20 20 65 6c 73 ame[i];.return.true;.}.......els
f6e0 65 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 5b 69 5d 20 3d 20 27 30 27 3b 0a 20 20 20 20 e.output_filename[i].=.'0';.....
f700 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 7d 0a 0a 0a 69 6e 74 20 63 6f ..}...return.false;...}...int.co
f720 6d 70 72 65 73 73 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 mpress(.const.unsigned.long.long
f740 20 63 66 69 6c 65 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 .cfile_size,...............const
f760 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 7a 65 2c .unsigned.long.long.member_size,
f780 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f ...............const.unsigned.lo
f7a0 6e 67 20 6c 6f 6e 67 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 69 ng.long.volume_size,.const.int.i
f7c0 6e 66 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 4c 7a 6d 61 5f 6f 70 nfd,...............const.Lzma_op
f7e0 74 69 6f 6e 73 20 26 20 65 6e 63 6f 64 65 72 5f 6f 70 74 69 6f 6e 73 2c 20 63 6f 6e 73 74 20 50 tions.&.encoder_options,.const.P
f800 72 65 74 74 79 5f 70 72 69 6e 74 20 26 20 70 70 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 retty_print.&.pp,...............
f820 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 74 61 74 20 2a 20 63 6f 6e 73 74 20 69 6e 5f 73 74 61 const.struct.stat.*.const.in_sta
f840 74 73 70 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 7a 65 72 6f 20 29 0a 20 20 7b 0a 20 20 4c 5a 5f tsp,.const.bool.zero.)...{...LZ_
f860 65 6e 63 6f 64 65 72 5f 62 61 73 65 20 2a 20 65 6e 63 6f 64 65 72 20 3d 20 30 3b 09 09 2f 2f 20 encoder_base.*.encoder.=.0;..//.
f880 70 6f 6c 79 6d 6f 72 70 68 69 63 20 65 6e 63 6f 64 65 72 0a 20 20 69 66 28 20 76 65 72 62 6f 73 polymorphic.encoder...if(.verbos
f8a0 69 74 79 20 3e 3d 20 31 20 29 20 70 70 28 29 3b 0a 0a 20 20 69 66 28 20 7a 65 72 6f 20 29 0a 20 ity.>=.1.).pp();....if(.zero.)..
f8c0 20 20 20 65 6e 63 6f 64 65 72 20 3d 20 6e 65 77 20 46 4c 5a 5f 65 6e 63 6f 64 65 72 28 20 69 6e ...encoder.=.new.FLZ_encoder(.in
f8e0 66 64 2c 20 6f 75 74 66 64 20 29 3b 0a 20 20 65 6c 73 65 0a 20 20 20 20 7b 0a 20 20 20 20 4c 7a fd,.outfd.);...else.....{.....Lz
f900 69 70 5f 68 65 61 64 65 72 20 68 65 61 64 65 72 3b 0a 20 20 20 20 69 66 28 20 68 65 61 64 65 72 ip_header.header;.....if(.header
f920 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 20 65 6e 63 6f 64 65 72 5f 6f 70 74 69 6f 6e .dictionary_size(.encoder_option
f940 73 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 26 26 0a 20 20 20 20 20 20 20 20 65 s.dictionary_size.).&&.........e
f960 6e 63 6f 64 65 72 5f 6f 70 74 69 6f 6e 73 2e 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 3e ncoder_options.match_len_limit.>
f980 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 26 26 0a 20 20 20 20 20 20 20 =.min_match_len_limit.&&........
f9a0 20 65 6e 63 6f 64 65 72 5f 6f 70 74 69 6f 6e 73 2e 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 .encoder_options.match_len_limit
f9c0 20 3c 3d 20 6d 61 78 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 0a 20 20 20 20 20 20 65 6e 63 6f 64 65 .<=.max_match_len.).......encode
f9e0 72 20 3d 20 6e 65 77 20 4c 5a 5f 65 6e 63 6f 64 65 72 28 20 68 65 61 64 65 72 2e 64 69 63 74 69 r.=.new.LZ_encoder(.header.dicti
fa00 6f 6e 61 72 79 5f 73 69 7a 65 28 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 onary_size(),...................
fa20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 63 6f 64 65 72 5f 6f 70 74 69 6f 6e 73 2e 6d 61 ..............encoder_options.ma
fa40 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 2c 20 69 6e 66 64 2c 20 6f 75 74 66 64 20 29 3b 0a 20 20 tch_len_limit,.infd,.outfd.);...
fa60 20 20 65 6c 73 65 20 69 6e 74 65 72 6e 61 6c 5f 65 72 72 6f 72 28 20 22 69 6e 76 61 6c 69 64 20 ..else.internal_error(."invalid.
fa80 61 72 67 75 6d 65 6e 74 20 74 6f 20 65 6e 63 6f 64 65 72 2e 22 20 29 3b 0a 20 20 20 20 7d 0a 0a argument.to.encoder.".);.....}..
faa0 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 69 6e 5f 73 69 7a 65 20 3d 20 30 ..unsigned.long.long.in_size.=.0
fac0 2c 20 6f 75 74 5f 73 69 7a 65 20 3d 20 30 2c 20 70 61 72 74 69 61 6c 5f 76 6f 6c 75 6d 65 5f 73 ,.out_size.=.0,.partial_volume_s
fae0 69 7a 65 20 3d 20 30 3b 0a 20 20 69 6e 74 20 72 65 74 76 61 6c 20 3d 20 30 3b 0a 20 20 77 68 69 ize.=.0;...int.retval.=.0;...whi
fb00 6c 65 28 20 74 72 75 65 20 29 09 09 2f 2f 20 65 6e 63 6f 64 65 20 6f 6e 65 20 6d 65 6d 62 65 72 le(.true.)..//.encode.one.member
fb20 20 70 65 72 20 69 74 65 72 61 74 69 6f 6e 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 75 .per.iteration.....{.....const.u
fb40 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 73 69 7a 65 20 3d 20 28 76 6f 6c 75 6d 65 nsigned.long.long.size.=.(volume
fb60 5f 73 69 7a 65 20 3e 20 30 29 20 3f 0a 20 20 20 20 20 20 73 74 64 3a 3a 6d 69 6e 28 20 6d 65 6d _size.>.0).?.......std::min(.mem
fb80 62 65 72 5f 73 69 7a 65 2c 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 2d 20 70 61 72 74 69 61 6c 5f ber_size,.volume_size.-.partial_
fba0 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 29 20 3a 20 6d 65 6d 62 65 72 5f 73 69 7a 65 3b 0a 20 20 20 volume_size.).:.member_size;....
fbc0 20 73 68 6f 77 5f 63 70 72 6f 67 72 65 73 73 28 20 63 66 69 6c 65 5f 73 69 7a 65 2c 20 69 6e 5f .show_cprogress(.cfile_size,.in_
fbe0 73 69 7a 65 2c 20 65 6e 63 6f 64 65 72 2c 20 26 70 70 20 29 3b 09 2f 2f 20 69 6e 69 74 0a 20 20 size,.encoder,.&pp.);.//.init...
fc00 20 20 69 66 28 20 21 65 6e 63 6f 64 65 72 2d 3e 65 6e 63 6f 64 65 5f 6d 65 6d 62 65 72 28 20 73 ..if(.!encoder->encode_member(.s
fc20 69 7a 65 20 29 20 29 0a 20 20 20 20 20 20 7b 20 70 70 28 20 22 45 6e 63 6f 64 65 72 20 65 72 72 ize.).).......{.pp(."Encoder.err
fc40 6f 72 2e 22 20 29 3b 20 72 65 74 76 61 6c 20 3d 20 31 3b 20 62 72 65 61 6b 3b 20 7d 0a 20 20 20 or.".);.retval.=.1;.break;.}....
fc60 20 69 6e 5f 73 69 7a 65 20 2b 3d 20 65 6e 63 6f 64 65 72 2d 3e 64 61 74 61 5f 70 6f 73 69 74 69 .in_size.+=.encoder->data_positi
fc80 6f 6e 28 29 3b 0a 20 20 20 20 6f 75 74 5f 73 69 7a 65 20 2b 3d 20 65 6e 63 6f 64 65 72 2d 3e 6d on();.....out_size.+=.encoder->m
fca0 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 0a 20 20 20 20 69 66 28 20 65 6e 63 6f 64 65 ember_position();.....if(.encode
fcc0 72 2d 3e 64 61 74 61 5f 66 69 6e 69 73 68 65 64 28 29 20 29 20 62 72 65 61 6b 3b 0a 20 20 20 20 r->data_finished().).break;.....
fce0 69 66 28 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 3e 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 if(.volume_size.>.0.).......{...
fd00 20 20 20 20 70 61 72 74 69 61 6c 5f 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 2b 3d 20 65 6e 63 6f 64 ....partial_volume_size.+=.encod
fd20 65 72 2d 3e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 0a 20 20 20 20 20 20 69 66 28 er->member_position();.......if(
fd40 20 70 61 72 74 69 61 6c 5f 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 3e 3d 20 76 6f 6c 75 6d 65 5f 73 .partial_volume_size.>=.volume_s
fd60 69 7a 65 20 2d 20 6d 69 6e 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 20 20 ize.-.min_dictionary_size.).....
fd80 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 70 61 72 74 69 61 6c 5f 76 6f 6c 75 6d 65 5f 73 69 7a ....{.........partial_volume_siz
fda0 65 20 3d 20 30 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 64 65 6c 65 74 65 5f 6f 75 74 70 75 74 e.=.0;.........if(.delete_output
fdc0 5f 6f 6e 5f 69 6e 74 65 72 72 75 70 74 20 29 0a 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 _on_interrupt.)...........{.....
fde0 20 20 20 20 20 20 63 6c 6f 73 65 5f 61 6e 64 5f 73 65 74 5f 70 65 72 6d 69 73 73 69 6f 6e 73 28 ......close_and_set_permissions(
fe00 20 69 6e 5f 73 74 61 74 73 70 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 69 66 28 20 21 6e 65 78 .in_statsp.);...........if(.!nex
fe20 74 5f 66 69 6c 65 6e 61 6d 65 28 29 20 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 20 70 70 28 t_filename().).............{.pp(
fe40 20 22 54 6f 6f 20 6d 61 6e 79 20 76 6f 6c 75 6d 65 20 66 69 6c 65 73 2e 22 20 29 3b 20 72 65 74 ."Too.many.volume.files.".);.ret
fe60 76 61 6c 20 3d 20 31 3b 20 62 72 65 61 6b 3b 20 7d 0a 20 20 20 20 20 20 20 20 20 20 69 66 28 20 val.=.1;.break;.}...........if(.
fe80 21 6f 70 65 6e 5f 6f 75 74 73 74 72 65 61 6d 28 20 74 72 75 65 2c 20 69 6e 5f 73 74 61 74 73 70 !open_outstream(.true,.in_statsp
fea0 20 29 20 29 20 7b 20 72 65 74 76 61 6c 20 3d 20 31 3b 20 62 72 65 61 6b 3b 20 7d 0a 20 20 20 20 .).).{.retval.=.1;.break;.}.....
fec0 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 65 6e ......}.........}.......}.....en
fee0 63 6f 64 65 72 2d 3e 72 65 73 65 74 28 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 66 28 20 72 65 74 coder->reset();.....}....if(.ret
ff00 76 61 6c 20 3d 3d 20 30 20 26 26 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 31 20 29 0a 20 20 20 val.==.0.&&.verbosity.>=.1.)....
ff20 20 7b 0a 20 20 20 20 69 66 28 20 69 6e 5f 73 69 7a 65 20 3d 3d 20 30 20 7c 7c 20 6f 75 74 5f 73 .{.....if(.in_size.==.0.||.out_s
ff40 69 7a 65 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 20 6e ize.==.0.).......std::fputs(.".n
ff60 6f 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 65 64 2e 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 3b o.data.compressed.\n",.stderr.);
ff80 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 .....else.......std::fprintf(.st
ffa0 64 65 72 72 2c 20 22 25 36 2e 33 66 3a 31 2c 20 25 35 2e 32 66 25 25 20 72 61 74 69 6f 2c 20 25 derr,."%6.3f:1,.%5.2f%%.ratio,.%
ffc0 35 2e 32 66 25 25 20 73 61 76 65 64 2c 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5.2f%%.saved,.".................
ffe0 20 20 20 20 20 20 20 20 20 20 20 20 22 25 6c 6c 75 20 69 6e 2c 20 25 6c 6c 75 20 6f 75 74 2e 5c ............"%llu.in,.%llu.out.\
10000 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 75 62 6c 65 29 n",.....................(double)
10020 69 6e 5f 73 69 7a 65 20 2f 20 6f 75 74 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 in_size./.out_size,.............
10040 20 20 20 20 20 20 20 20 28 20 31 30 30 2e 30 20 2a 20 6f 75 74 5f 73 69 7a 65 20 29 20 2f 20 69 ........(.100.0.*.out_size.)./.i
10060 6e 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30 2e n_size,.....................100.
10080 30 20 2d 20 28 20 28 20 31 30 30 2e 30 20 2a 20 6f 75 74 5f 73 69 7a 65 20 29 20 2f 20 69 6e 5f 0.-.(.(.100.0.*.out_size.)./.in_
100a0 73 69 7a 65 20 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 5f 73 size.),.....................in_s
100c0 69 7a 65 2c 20 6f 75 74 5f 73 69 7a 65 20 29 3b 0a 20 20 20 20 7d 0a 20 20 64 65 6c 65 74 65 20 ize,.out_size.);.....}...delete.
100e0 65 6e 63 6f 64 65 72 3b 0a 20 20 72 65 74 75 72 6e 20 72 65 74 76 61 6c 3b 0a 20 20 7d 0a 0a 0a encoder;...return.retval;...}...
10100 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 78 64 69 67 69 74 28 20 63 6f 6e 73 74 20 75 6e 73 69 unsigned.char.xdigit(.const.unsi
10120 67 6e 65 64 20 76 61 6c 75 65 20 29 09 2f 2f 20 68 65 78 20 64 69 67 69 74 20 66 6f 72 20 27 76 gned.value.).//.hex.digit.for.'v
10140 61 6c 75 65 27 0a 20 20 7b 0a 20 20 69 66 28 20 76 61 6c 75 65 20 3c 3d 20 39 20 29 20 72 65 74 alue'...{...if(.value.<=.9.).ret
10160 75 72 6e 20 27 30 27 20 2b 20 76 61 6c 75 65 3b 0a 20 20 69 66 28 20 76 61 6c 75 65 20 3c 3d 20 urn.'0'.+.value;...if(.value.<=.
10180 31 35 20 29 20 72 65 74 75 72 6e 20 27 41 27 20 2b 20 76 61 6c 75 65 20 2d 20 31 30 3b 0a 20 20 15.).return.'A'.+.value.-.10;...
101a0 72 65 74 75 72 6e 20 30 3b 0a 20 20 7d 0a 0a 0a 62 6f 6f 6c 20 73 68 6f 77 5f 74 72 61 69 6c 69 return.0;...}...bool.show_traili
101c0 6e 67 5f 64 61 74 61 28 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 64 ng_data(.const.uint8_t.*.const.d
101e0 61 74 61 2c 20 63 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ata,.const.int.size,............
10200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 ..............const.Pretty_print
10220 20 26 20 70 70 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 61 6c 6c 2c 0a 20 20 20 20 20 20 20 20 20 .&.pp,.const.bool.all,..........
10240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 69 67 6e 6f 72 65 ................const.int.ignore
10260 5f 74 72 61 69 6c 69 6e 67 20 29 09 2f 2f 20 2d 31 20 3d 20 73 68 6f 77 0a 20 20 7b 0a 20 20 69 _trailing.).//.-1.=.show...{...i
10280 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 34 20 7c 7c 20 69 67 6e 6f 72 65 5f 74 72 61 69 f(.verbosity.>=.4.||.ignore_trai
102a0 6c 69 6e 67 20 3c 3d 20 30 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 73 74 64 3a 3a 73 74 72 69 6e ling.<=.0.).....{.....std::strin
102c0 67 20 6d 73 67 3b 0a 20 20 20 20 69 66 28 20 21 61 6c 6c 20 29 20 6d 73 67 20 3d 20 22 66 69 72 g.msg;.....if(.!all.).msg.=."fir
102e0 73 74 20 62 79 74 65 73 20 6f 66 20 22 3b 0a 20 20 20 20 6d 73 67 20 2b 3d 20 22 74 72 61 69 6c st.bytes.of.";.....msg.+=."trail
10300 69 6e 67 20 64 61 74 61 20 3d 20 22 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 ing.data.=.";.....for(.int.i.=.0
10320 3b 20 69 20 3c 20 73 69 7a 65 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 ;.i.<.size;.++i.).......{.......
10340 6d 73 67 20 2b 3d 20 78 64 69 67 69 74 28 20 64 61 74 61 5b 69 5d 20 3e 3e 20 34 20 29 3b 0a 20 msg.+=.xdigit(.data[i].>>.4.);..
10360 20 20 20 20 20 6d 73 67 20 2b 3d 20 78 64 69 67 69 74 28 20 64 61 74 61 5b 69 5d 20 26 20 30 78 .....msg.+=.xdigit(.data[i].&.0x
10380 30 46 20 29 3b 0a 20 20 20 20 20 20 6d 73 67 20 2b 3d 20 27 20 27 3b 0a 20 20 20 20 20 20 7d 0a 0F.);.......msg.+=.'.';.......}.
103a0 20 20 20 20 6d 73 67 20 2b 3d 20 27 5c 27 27 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 ....msg.+=.'\'';.....for(.int.i.
103c0 3d 20 30 3b 20 69 20 3c 20 73 69 7a 65 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 7b 20 69 66 28 =.0;.i.<.size;.++i.).......{.if(
103e0 20 73 74 64 3a 3a 69 73 70 72 69 6e 74 28 20 64 61 74 61 5b 69 5d 20 29 20 29 20 6d 73 67 20 2b .std::isprint(.data[i].).).msg.+
10400 3d 20 64 61 74 61 5b 69 5d 3b 20 65 6c 73 65 20 6d 73 67 20 2b 3d 20 27 2e 27 3b 20 7d 0a 20 20 =.data[i];.else.msg.+=.'.';.}...
10420 20 20 6d 73 67 20 2b 3d 20 27 5c 27 27 3b 0a 20 20 20 20 70 70 28 20 6d 73 67 2e 63 5f 73 74 72 ..msg.+=.'\'';.....pp(.msg.c_str
10440 28 29 20 29 3b 0a 20 20 20 20 69 66 28 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 20 3d 3d ().);.....if(.ignore_trailing.==
10460 20 30 20 29 20 73 68 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 70 70 2e 6e 61 6d 65 28 29 2c .0.).show_file_error(.pp.name(),
10480 20 74 72 61 69 6c 69 6e 67 5f 6d 73 67 20 29 3b 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 .trailing_msg.);.....}...return.
104a0 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 20 3e 20 30 3b 0a 20 20 7d 0a 0a 0a 69 6e 74 20 64 ignore_trailing.>.0;...}...int.d
104c0 65 63 6f 6d 70 72 65 73 73 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c ecompress(.const.unsigned.long.l
104e0 6f 6e 67 20 63 66 69 6c 65 5f 73 69 7a 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 69 6e 66 64 2c 0a ong.cfile_size,.const.int.infd,.
10500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 43 6c 5f 6f 70 74 69 6f 6e 73 ................const.Cl_options
10520 20 26 20 63 6c 5f 6f 70 74 73 2c 20 63 6f 6e 73 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 26 .&.cl_opts,.const.Pretty_print.&
10540 20 70 70 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 .pp,.................const.bool.
10560 66 72 6f 6d 5f 73 74 64 69 6e 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 74 65 73 74 69 6e 67 20 29 from_stdin,.const.bool.testing.)
10580 0a 20 20 7b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 61 72 74 69 61 ...{...unsigned.long.long.partia
105a0 6c 5f 66 69 6c 65 5f 70 6f 73 20 3d 20 30 3b 0a 20 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 l_file_pos.=.0;...Range_decoder.
105c0 72 64 65 63 28 20 69 6e 66 64 20 29 3b 0a 20 20 69 6e 74 20 72 65 74 76 61 6c 20 3d 20 30 3b 0a rdec(.infd.);...int.retval.=.0;.
105e0 20 20 62 6f 6f 6c 20 65 6d 70 74 79 20 3d 20 66 61 6c 73 65 2c 20 6d 75 6c 74 69 20 3d 20 66 61 ..bool.empty.=.false,.multi.=.fa
10600 6c 73 65 3b 0a 0a 20 20 66 6f 72 28 20 62 6f 6f 6c 20 66 69 72 73 74 5f 6d 65 6d 62 65 72 20 3d lse;....for(.bool.first_member.=
10620 20 74 72 75 65 3b 20 3b 20 66 69 72 73 74 5f 6d 65 6d 62 65 72 20 3d 20 66 61 6c 73 65 20 29 0a .true;.;.first_member.=.false.).
10640 20 20 20 20 7b 0a 20 20 20 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 68 65 61 64 65 72 3b 0a 20 20 ....{.....Lzip_header.header;...
10660 20 20 72 64 65 63 2e 72 65 73 65 74 5f 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 0a ..rdec.reset_member_position();.
10680 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 20 3d 20 72 64 65 63 2e 72 65 61 64 5f 64 ....const.int.size.=.rdec.read_d
106a0 61 74 61 28 20 68 65 61 64 65 72 2e 64 61 74 61 2c 20 68 65 61 64 65 72 2e 73 69 7a 65 20 29 3b ata(.header.data,.header.size.);
106c0 0a 20 20 20 20 69 66 28 20 72 64 65 63 2e 66 69 6e 69 73 68 65 64 28 29 20 29 09 09 09 2f 2f 20 .....if(.rdec.finished().)...//.
106e0 45 6e 64 20 4f 66 20 46 69 6c 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 66 69 End.Of.File.......{.......if(.fi
10700 72 73 74 5f 6d 65 6d 62 65 72 20 29 0a 20 20 20 20 20 20 20 20 7b 20 73 68 6f 77 5f 66 69 6c 65 rst_member.).........{.show_file
10720 5f 65 72 72 6f 72 28 20 70 70 2e 6e 61 6d 65 28 29 2c 20 22 46 69 6c 65 20 65 6e 64 73 20 75 6e _error(.pp.name(),."File.ends.un
10740 65 78 70 65 63 74 65 64 6c 79 20 61 74 20 6d 65 6d 62 65 72 20 68 65 61 64 65 72 2e 22 20 29 3b expectedly.at.member.header.".);
10760 0a 20 20 20 20 20 20 20 20 20 20 72 65 74 76 61 6c 20 3d 20 32 3b 20 7d 0a 20 20 20 20 20 20 65 ...........retval.=.2;.}.......e
10780 6c 73 65 20 69 66 28 20 68 65 61 64 65 72 2e 63 68 65 63 6b 5f 70 72 65 66 69 78 28 20 73 69 7a lse.if(.header.check_prefix(.siz
107a0 65 20 29 20 29 0a 20 20 20 20 20 20 20 20 7b 20 70 70 28 20 22 54 72 75 6e 63 61 74 65 64 20 68 e.).).........{.pp(."Truncated.h
107c0 65 61 64 65 72 20 69 6e 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 2e 22 20 29 3b 0a 20 eader.in.multimember.file.".);..
107e0 20 20 20 20 20 20 20 20 20 73 68 6f 77 5f 74 72 61 69 6c 69 6e 67 5f 64 61 74 61 28 20 68 65 61 .........show_trailing_data(.hea
10800 64 65 72 2e 64 61 74 61 2c 20 73 69 7a 65 2c 20 70 70 2c 20 74 72 75 65 2c 20 2d 31 20 29 3b 20 der.data,.size,.pp,.true,.-1.);.
10820 72 65 74 76 61 6c 20 3d 20 32 3b 20 7d 0a 20 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 73 69 7a retval.=.2;.}.......else.if(.siz
10840 65 20 3e 20 30 20 26 26 20 21 73 68 6f 77 5f 74 72 61 69 6c 69 6e 67 5f 64 61 74 61 28 20 68 65 e.>.0.&&.!show_trailing_data(.he
10860 61 64 65 72 2e 64 61 74 61 2c 20 73 69 7a 65 2c 20 70 70 2c 20 74 72 75 65 2c 0a 20 20 20 20 20 ader.data,.size,.pp,.true,......
10880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6c 5f 6f ............................cl_o
108a0 70 74 73 2e 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 20 29 20 29 20 72 65 74 76 61 6c 20 3d pts.ignore_trailing.).).retval.=
108c0 20 32 3b 0a 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 .2;.......break;.......}.....if(
108e0 20 21 68 65 61 64 65 72 2e 63 68 65 63 6b 5f 6d 61 67 69 63 28 29 20 29 0a 20 20 20 20 20 20 7b .!header.check_magic().).......{
10900 0a 20 20 20 20 20 20 69 66 28 20 66 69 72 73 74 5f 6d 65 6d 62 65 72 20 29 0a 20 20 20 20 20 20 .......if(.first_member.).......
10920 20 20 7b 20 73 68 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 70 70 2e 6e 61 6d 65 28 29 2c 20 ..{.show_file_error(.pp.name(),.
10940 62 61 64 5f 6d 61 67 69 63 5f 6d 73 67 20 29 3b 20 72 65 74 76 61 6c 20 3d 20 32 3b 20 7d 0a 20 bad_magic_msg.);.retval.=.2;.}..
10960 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 21 63 6c 5f 6f 70 74 73 2e 6c 6f 6f 73 65 5f 74 72 61 .....else.if(.!cl_opts.loose_tra
10980 69 6c 69 6e 67 20 26 26 20 68 65 61 64 65 72 2e 63 68 65 63 6b 5f 63 6f 72 72 75 70 74 28 29 20 iling.&&.header.check_corrupt().
109a0 29 0a 20 20 20 20 20 20 20 20 7b 20 70 70 28 20 63 6f 72 72 75 70 74 5f 6d 6d 5f 6d 73 67 20 29 ).........{.pp(.corrupt_mm_msg.)
109c0 3b 0a 20 20 20 20 20 20 20 20 20 20 73 68 6f 77 5f 74 72 61 69 6c 69 6e 67 5f 64 61 74 61 28 20 ;...........show_trailing_data(.
109e0 68 65 61 64 65 72 2e 64 61 74 61 2c 20 73 69 7a 65 2c 20 70 70 2c 20 66 61 6c 73 65 2c 20 2d 31 header.data,.size,.pp,.false,.-1
10a00 20 29 3b 20 72 65 74 76 61 6c 20 3d 20 32 3b 20 7d 0a 20 20 20 20 20 20 65 6c 73 65 20 69 66 28 .);.retval.=.2;.}.......else.if(
10a20 20 21 73 68 6f 77 5f 74 72 61 69 6c 69 6e 67 5f 64 61 74 61 28 20 68 65 61 64 65 72 2e 64 61 74 .!show_trailing_data(.header.dat
10a40 61 2c 20 73 69 7a 65 2c 20 70 70 2c 20 66 61 6c 73 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 a,.size,.pp,.false,.............
10a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6c 5f 6f 70 74 73 2e ........................cl_opts.
10a80 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 20 29 20 29 20 72 65 74 76 61 6c 20 3d 20 32 3b 0a ignore_trailing.).).retval.=.2;.
10aa0 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 21 68 65 ......break;.......}.....if(.!he
10ac0 61 64 65 72 2e 63 68 65 63 6b 5f 76 65 72 73 69 6f 6e 28 29 20 29 0a 20 20 20 20 20 20 7b 20 70 ader.check_version().).......{.p
10ae0 70 28 20 62 61 64 5f 76 65 72 73 69 6f 6e 28 20 68 65 61 64 65 72 2e 76 65 72 73 69 6f 6e 28 29 p(.bad_version(.header.version()
10b00 20 29 20 29 3b 20 72 65 74 76 61 6c 20 3d 20 32 3b 20 62 72 65 61 6b 3b 20 7d 0a 20 20 20 20 63 .).);.retval.=.2;.break;.}.....c
10b20 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3d 20 onst.unsigned.dictionary_size.=.
10b40 68 65 61 64 65 72 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 29 3b 0a 20 20 20 20 69 66 header.dictionary_size();.....if
10b60 28 20 21 69 73 76 61 6c 69 64 5f 64 73 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 (.!isvalid_ds(.dictionary_size.)
10b80 20 29 0a 20 20 20 20 20 20 7b 20 70 70 28 20 62 61 64 5f 64 69 63 74 5f 6d 73 67 20 29 3b 20 72 .).......{.pp(.bad_dict_msg.);.r
10ba0 65 74 76 61 6c 20 3d 20 32 3b 20 62 72 65 61 6b 3b 20 7d 0a 0a 20 20 20 20 69 66 28 20 76 65 72 etval.=.2;.break;.}......if(.ver
10bc0 62 6f 73 69 74 79 20 3e 3d 20 32 20 7c 7c 20 28 20 76 65 72 62 6f 73 69 74 79 20 3d 3d 20 31 20 bosity.>=.2.||.(.verbosity.==.1.
10be0 26 26 20 66 69 72 73 74 5f 6d 65 6d 62 65 72 20 29 20 29 20 70 70 28 29 3b 0a 0a 20 20 20 20 4c &&.first_member.).).pp();......L
10c00 5a 5f 64 65 63 6f 64 65 72 20 64 65 63 6f 64 65 72 28 20 72 64 65 63 2c 20 64 69 63 74 69 6f 6e Z_decoder.decoder(.rdec,.diction
10c20 61 72 79 5f 73 69 7a 65 2c 20 6f 75 74 66 64 20 29 3b 0a 20 20 20 20 73 68 6f 77 5f 64 70 72 6f ary_size,.outfd.);.....show_dpro
10c40 67 72 65 73 73 28 20 63 66 69 6c 65 5f 73 69 7a 65 2c 20 70 61 72 74 69 61 6c 5f 66 69 6c 65 5f gress(.cfile_size,.partial_file_
10c60 70 6f 73 2c 20 26 72 64 65 63 2c 20 26 70 70 20 29 3b 09 2f 2f 20 69 6e 69 74 0a 20 20 20 20 63 pos,.&rdec,.&pp.);.//.init.....c
10c80 6f 6e 73 74 20 69 6e 74 20 72 65 73 75 6c 74 20 3d 20 64 65 63 6f 64 65 72 2e 64 65 63 6f 64 65 onst.int.result.=.decoder.decode
10ca0 5f 6d 65 6d 62 65 72 28 20 70 70 20 29 3b 0a 20 20 20 20 70 61 72 74 69 61 6c 5f 66 69 6c 65 5f _member(.pp.);.....partial_file_
10cc0 70 6f 73 20 2b 3d 20 72 64 65 63 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 0a 20 pos.+=.rdec.member_position();..
10ce0 20 20 20 69 66 28 20 72 65 73 75 6c 74 20 21 3d 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 ...if(.result.!=.0.).......{....
10d00 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 26 26 20 72 65 73 75 6c 74 20 ...if(.verbosity.>=.0.&&.result.
10d20 3c 3d 20 32 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 70 70 28 29 3b 0a 20 <=.2.).........{.........pp();..
10d40 20 20 20 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 73 .......std::fprintf(.stderr,."%s
10d60 20 61 74 20 70 6f 73 20 25 6c 6c 75 5c 6e 22 2c 20 28 20 72 65 73 75 6c 74 20 3d 3d 20 32 20 29 .at.pos.%llu\n",.(.result.==.2.)
10d80 20 3f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 46 69 6c 65 20 65 .?......................."File.e
10da0 6e 64 73 20 75 6e 65 78 70 65 63 74 65 64 6c 79 22 20 3a 20 22 44 65 63 6f 64 65 72 20 65 72 72 nds.unexpectedly".:."Decoder.err
10dc0 6f 72 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 72 74 69 or",.......................parti
10de0 61 6c 5f 66 69 6c 65 5f 70 6f 73 20 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 65 al_file_pos.);.........}.......e
10e00 6c 73 65 20 69 66 28 20 72 65 73 75 6c 74 20 3d 3d 20 35 20 29 20 70 70 28 20 6e 6f 6e 7a 65 72 lse.if(.result.==.5.).pp(.nonzer
10e20 6f 5f 6d 73 67 20 29 3b 0a 20 20 20 20 20 20 72 65 74 76 61 6c 20 3d 20 32 3b 20 62 72 65 61 6b o_msg.);.......retval.=.2;.break
10e40 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 21 66 72 6f 6d 5f 73 74 64 69 6e 20 29 20 ;.......}.....if(.!from_stdin.).
10e60 7b 20 6d 75 6c 74 69 20 3d 20 21 66 69 72 73 74 5f 6d 65 6d 62 65 72 3b 0a 20 20 20 20 20 20 69 {.multi.=.!first_member;.......i
10e80 66 28 20 64 65 63 6f 64 65 72 2e 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 3d 3d 20 30 20 f(.decoder.data_position().==.0.
10ea0 29 20 65 6d 70 74 79 20 3d 20 74 72 75 65 3b 20 7d 0a 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 ).empty.=.true;.}.....if(.verbos
10ec0 69 74 79 20 3e 3d 20 32 20 29 0a 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 74 ity.>=.2.).......{.std::fputs(.t
10ee0 65 73 74 69 6e 67 20 3f 20 22 6f 6b 5c 6e 22 20 3a 20 22 64 6f 6e 65 5c 6e 22 2c 20 73 74 64 65 esting.?."ok\n".:."done\n",.stde
10f00 72 72 20 29 3b 20 70 70 2e 72 65 73 65 74 28 29 3b 20 7d 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 rr.);.pp.reset();.}.....}...if(.
10f20 76 65 72 62 6f 73 69 74 79 20 3d 3d 20 31 20 26 26 20 72 65 74 76 61 6c 20 3d 3d 20 30 20 29 0a verbosity.==.1.&&.retval.==.0.).
10f40 20 20 20 20 73 74 64 3a 3a 66 70 75 74 73 28 20 74 65 73 74 69 6e 67 20 3f 20 22 6f 6b 5c 6e 22 ....std::fputs(.testing.?."ok\n"
10f60 20 3a 20 22 64 6f 6e 65 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 3b 0a 20 20 69 66 28 20 65 6d 70 .:."done\n",.stderr.);...if(.emp
10f80 74 79 20 26 26 20 6d 75 6c 74 69 20 26 26 20 72 65 74 76 61 6c 20 3d 3d 20 30 20 29 0a 20 20 20 ty.&&.multi.&&.retval.==.0.)....
10fa0 20 7b 20 73 68 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 70 70 2e 6e 61 6d 65 28 29 2c 20 65 .{.show_file_error(.pp.name(),.e
10fc0 6d 70 74 79 5f 6d 73 67 20 29 3b 20 72 65 74 76 61 6c 20 3d 20 32 3b 20 7d 0a 20 20 72 65 74 75 mpty_msg.);.retval.=.2;.}...retu
10fe0 72 6e 20 72 65 74 76 61 6c 3b 0a 20 20 7d 0a 0a 7d 20 2f 2f 20 65 6e 64 20 6e 61 6d 65 73 70 61 rn.retval;...}..}.//.end.namespa
11000 63 65 0a 0a 0a 76 6f 69 64 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 63 6f 6e 73 74 20 63 68 61 72 ce...void.show_error(.const.char
11020 20 2a 20 63 6f 6e 73 74 20 6d 73 67 2c 20 63 6f 6e 73 74 20 69 6e 74 20 65 72 72 63 6f 64 65 2c .*.const.msg,.const.int.errcode,
11040 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 68 65 6c 70 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 76 65 72 .const.bool.help.)...{...if(.ver
11060 62 6f 73 69 74 79 20 3c 20 30 20 29 20 72 65 74 75 72 6e 3b 0a 20 20 69 66 28 20 6d 73 67 20 26 bosity.<.0.).return;...if(.msg.&
11080 26 20 6d 73 67 5b 30 5d 20 29 0a 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 &.msg[0].).....std::fprintf(.std
110a0 65 72 72 2c 20 22 25 73 3a 20 25 73 25 73 25 73 5c 6e 22 2c 20 70 72 6f 67 72 61 6d 5f 6e 61 6d err,."%s:.%s%s%s\n",.program_nam
110c0 65 2c 20 6d 73 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 20 65 72 72 63 e,.msg,...................(.errc
110e0 6f 64 65 20 3e 20 30 20 29 20 3f 20 22 3a 20 22 20 3a 20 22 22 2c 0a 20 20 20 20 20 20 20 20 20 ode.>.0.).?.":.".:."",..........
11100 20 20 20 20 20 20 20 20 20 28 20 65 72 72 63 6f 64 65 20 3e 20 30 20 29 20 3f 20 73 74 64 3a 3a .........(.errcode.>.0.).?.std::
11120 73 74 72 65 72 72 6f 72 28 20 65 72 72 63 6f 64 65 20 29 20 3a 20 22 22 20 29 3b 0a 20 20 69 66 strerror(.errcode.).:."".);...if
11140 28 20 68 65 6c 70 20 29 0a 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 (.help.).....std::fprintf(.stder
11160 72 2c 20 22 54 72 79 20 27 25 73 20 2d 2d 68 65 6c 70 27 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 r,."Try.'%s.--help'.for.more.inf
11180 6f 72 6d 61 74 69 6f 6e 2e 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ormation.\n",...................
111a0 69 6e 76 6f 63 61 74 69 6f 6e 5f 6e 61 6d 65 20 29 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 73 68 invocation_name.);...}...void.sh
111c0 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 ow_file_error(.const.char.*.cons
111e0 74 20 66 69 6c 65 6e 61 6d 65 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6d t.filename,.const.char.*.const.m
11200 73 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 sg,.......................const.
11220 69 6e 74 20 65 72 72 63 6f 64 65 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 int.errcode.)...{...if(.verbosit
11240 79 20 3e 3d 20 30 20 29 0a 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 y.>=.0.).....std::fprintf(.stder
11260 72 2c 20 22 25 73 3a 20 25 73 3a 20 25 73 25 73 25 73 5c 6e 22 2c 20 70 72 6f 67 72 61 6d 5f 6e r,."%s:.%s:.%s%s%s\n",.program_n
11280 61 6d 65 2c 20 66 69 6c 65 6e 61 6d 65 2c 20 6d 73 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 ame,.filename,.msg,.............
112a0 20 20 20 20 20 20 28 20 65 72 72 63 6f 64 65 20 3e 20 30 20 29 20 3f 20 22 3a 20 22 20 3a 20 22 ......(.errcode.>.0.).?.":.".:."
112c0 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 20 65 72 72 63 6f 64 65 20 3e ",...................(.errcode.>
112e0 20 30 20 29 20 3f 20 73 74 64 3a 3a 73 74 72 65 72 72 6f 72 28 20 65 72 72 63 6f 64 65 20 29 20 .0.).?.std::strerror(.errcode.).
11300 3a 20 22 22 20 29 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 69 6e 74 65 72 6e 61 6c 5f 65 72 72 6f :."".);...}...void.internal_erro
11320 72 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6d 73 67 20 29 0a 20 20 7b 0a r(.const.char.*.const.msg.)...{.
11340 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 29 0a 20 20 20 20 73 74 64 3a 3a ..if(.verbosity.>=.0.).....std::
11360 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 73 3a 20 69 6e 74 65 72 6e 61 6c 20 65 fprintf(.stderr,."%s:.internal.e
11380 72 72 6f 72 3a 20 25 73 5c 6e 22 2c 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 2c 20 6d 73 67 20 29 rror:.%s\n",.program_name,.msg.)
113a0 3b 0a 20 20 73 74 64 3a 3a 65 78 69 74 28 20 33 20 29 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 73 ;...std::exit(.3.);...}...void.s
113c0 68 6f 77 5f 63 70 72 6f 67 72 65 73 73 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f how_cprogress(.const.unsigned.lo
113e0 6e 67 20 6c 6f 6e 67 20 63 66 69 6c 65 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 ng.long.cfile_size,.............
11400 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e .........const.unsigned.long.lon
11420 67 20 70 61 72 74 69 61 6c 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 g.partial_size,.................
11440 20 20 20 20 20 63 6f 6e 73 74 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 20 2a 20 63 6f .....const.Matchfinder_base.*.co
11460 6e 73 74 20 6d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 nst.m,......................cons
11480 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 2a 20 63 6f 6e 73 74 20 70 20 29 0a 20 20 7b 0a 20 t.Pretty_print.*.const.p.)...{..
114a0 20 73 74 61 74 69 63 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 63 73 69 7a 65 .static.unsigned.long.long.csize
114c0 20 3d 20 30 3b 09 09 2f 2f 20 66 69 6c 65 5f 73 69 7a 65 20 2f 20 31 30 30 0a 20 20 73 74 61 74 .=.0;..//.file_size./.100...stat
114e0 69 63 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 73 69 7a 65 20 3d 20 30 3b ic.unsigned.long.long.psize.=.0;
11500 0a 20 20 73 74 61 74 69 63 20 63 6f 6e 73 74 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 ...static.const.Matchfinder_base
11520 20 2a 20 6d 62 20 3d 20 30 3b 0a 20 20 73 74 61 74 69 63 20 63 6f 6e 73 74 20 50 72 65 74 74 79 .*.mb.=.0;...static.const.Pretty
11540 5f 70 72 69 6e 74 20 2a 20 70 70 20 3d 20 30 3b 0a 20 20 73 74 61 74 69 63 20 62 6f 6f 6c 20 65 _print.*.pp.=.0;...static.bool.e
11560 6e 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 0a 0a 20 20 69 66 28 20 21 65 6e 61 62 6c 65 64 20 29 nabled.=.true;....if(.!enabled.)
11580 20 72 65 74 75 72 6e 3b 0a 20 20 69 66 28 20 70 20 29 09 09 09 09 09 2f 2f 20 69 6e 69 74 69 61 .return;...if(.p.).....//.initia
115a0 6c 69 7a 65 20 73 74 61 74 69 63 20 76 61 72 73 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 76 lize.static.vars.....{.....if(.v
115c0 65 72 62 6f 73 69 74 79 20 3c 20 32 20 7c 7c 20 21 69 73 61 74 74 79 28 20 53 54 44 45 52 52 5f erbosity.<.2.||.!isatty(.STDERR_
115e0 46 49 4c 45 4e 4f 20 29 20 29 20 7b 20 65 6e 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 20 72 65 FILENO.).).{.enabled.=.false;.re
11600 74 75 72 6e 3b 20 7d 0a 20 20 20 20 63 73 69 7a 65 20 3d 20 63 66 69 6c 65 5f 73 69 7a 65 3b 20 turn;.}.....csize.=.cfile_size;.
11620 70 73 69 7a 65 20 3d 20 70 61 72 74 69 61 6c 5f 73 69 7a 65 3b 20 6d 62 20 3d 20 6d 3b 20 70 70 psize.=.partial_size;.mb.=.m;.pp
11640 20 3d 20 70 3b 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 6d 62 20 26 26 20 70 70 20 29 0a 20 20 20 .=.p;.....}...if(.mb.&&.pp.)....
11660 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 .{.....const.unsigned.long.long.
11680 70 6f 73 20 3d 20 70 73 69 7a 65 20 2b 20 6d 62 2d 3e 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 pos.=.psize.+.mb->data_position(
116a0 29 3b 0a 20 20 20 20 69 66 28 20 63 73 69 7a 65 20 3e 20 30 20 29 0a 20 20 20 20 20 20 73 74 64 );.....if(.csize.>.0.).......std
116c0 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 34 6c 6c 75 25 25 20 20 25 2e 31 ::fprintf(.stderr,."%4llu%%..%.1
116e0 66 20 4d 42 5c 72 22 2c 20 70 6f 73 20 2f 20 63 73 69 7a 65 2c 20 70 6f 73 20 2f 20 31 30 30 30 f.MB\r",.pos./.csize,.pos./.1000
11700 30 30 30 2e 30 20 29 3b 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 73 74 64 3a 3a 66 70 72 000.0.);.....else.......std::fpr
11720 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 20 20 25 2e 31 66 20 4d 42 5c 72 22 2c 20 70 6f 73 intf(.stderr,."..%.1f.MB\r",.pos
11740 20 2f 20 31 30 30 30 30 30 30 2e 30 20 29 3b 0a 20 20 20 20 70 70 2d 3e 72 65 73 65 74 28 29 3b ./.1000000.0.);.....pp->reset();
11760 20 28 2a 70 70 29 28 29 3b 09 09 09 2f 2f 20 72 65 73 74 6f 72 65 20 63 75 72 73 6f 72 20 70 6f .(*pp)();...//.restore.cursor.po
11780 73 69 74 69 6f 6e 0a 20 20 20 20 7d 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 73 68 6f 77 5f 64 70 72 sition.....}...}...void.show_dpr
117a0 6f 67 72 65 73 73 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 ogress(.const.unsigned.long.long
117c0 20 63 66 69 6c 65 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .cfile_size,....................
117e0 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 61 72 74 69 ..const.unsigned.long.long.parti
11800 61 6c 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f al_size,......................co
11820 6e 73 74 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 2a 20 63 6f 6e 73 74 20 64 2c 0a 20 20 20 nst.Range_decoder.*.const.d,....
11840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 50 72 65 74 74 79 5f 70 ..................const.Pretty_p
11860 72 69 6e 74 20 2a 20 63 6f 6e 73 74 20 70 20 29 0a 20 20 7b 0a 20 20 73 74 61 74 69 63 20 75 6e rint.*.const.p.)...{...static.un
11880 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 63 73 69 7a 65 20 3d 20 30 3b 09 09 2f 2f 20 signed.long.long.csize.=.0;..//.
118a0 66 69 6c 65 5f 73 69 7a 65 20 2f 20 31 30 30 0a 20 20 73 74 61 74 69 63 20 75 6e 73 69 67 6e 65 file_size./.100...static.unsigne
118c0 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 73 69 7a 65 20 3d 20 30 3b 0a 20 20 73 74 61 74 69 63 20 d.long.long.psize.=.0;...static.
118e0 63 6f 6e 73 74 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 2a 20 72 64 65 63 20 3d 20 30 3b 0a const.Range_decoder.*.rdec.=.0;.
11900 20 20 73 74 61 74 69 63 20 63 6f 6e 73 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 2a 20 70 70 ..static.const.Pretty_print.*.pp
11920 20 3d 20 30 3b 0a 20 20 73 74 61 74 69 63 20 69 6e 74 20 63 6f 75 6e 74 65 72 20 3d 20 30 3b 0a .=.0;...static.int.counter.=.0;.
11940 20 20 73 74 61 74 69 63 20 62 6f 6f 6c 20 65 6e 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 0a 0a 20 ..static.bool.enabled.=.true;...
11960 20 69 66 28 20 21 65 6e 61 62 6c 65 64 20 29 20 72 65 74 75 72 6e 3b 0a 20 20 69 66 28 20 70 20 .if(.!enabled.).return;...if(.p.
11980 29 09 09 09 09 09 2f 2f 20 69 6e 69 74 69 61 6c 69 7a 65 20 73 74 61 74 69 63 20 76 61 72 73 0a ).....//.initialize.static.vars.
119a0 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3c 20 32 20 7c 7c 20 21 ....{.....if(.verbosity.<.2.||.!
119c0 69 73 61 74 74 79 28 20 53 54 44 45 52 52 5f 46 49 4c 45 4e 4f 20 29 20 29 20 7b 20 65 6e 61 62 isatty(.STDERR_FILENO.).).{.enab
119e0 6c 65 64 20 3d 20 66 61 6c 73 65 3b 20 72 65 74 75 72 6e 3b 20 7d 0a 20 20 20 20 63 73 69 7a 65 led.=.false;.return;.}.....csize
11a00 20 3d 20 63 66 69 6c 65 5f 73 69 7a 65 3b 20 70 73 69 7a 65 20 3d 20 70 61 72 74 69 61 6c 5f 73 .=.cfile_size;.psize.=.partial_s
11a20 69 7a 65 3b 20 72 64 65 63 20 3d 20 64 3b 20 70 70 20 3d 20 70 3b 20 63 6f 75 6e 74 65 72 20 3d ize;.rdec.=.d;.pp.=.p;.counter.=
11a40 20 30 3b 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 72 64 65 63 20 26 26 20 70 70 20 26 26 20 2d 2d .0;.....}...if(.rdec.&&.pp.&&.--
11a60 63 6f 75 6e 74 65 72 20 3c 3d 20 30 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 75 counter.<=.0.).....{.....const.u
11a80 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 6f 73 20 3d 20 70 73 69 7a 65 20 2b 20 nsigned.long.long.pos.=.psize.+.
11aa0 72 64 65 63 2d 3e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 0a 20 20 20 20 63 6f 75 rdec->member_position();.....cou
11ac0 6e 74 65 72 20 3d 20 37 3b 09 09 2f 2f 20 75 70 64 61 74 65 20 64 69 73 70 6c 61 79 20 65 76 65 nter.=.7;..//.update.display.eve
11ae0 72 79 20 31 31 34 36 38 38 20 62 79 74 65 73 0a 20 20 20 20 69 66 28 20 63 73 69 7a 65 20 3e 20 ry.114688.bytes.....if(.csize.>.
11b00 30 20 29 0a 20 20 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 0.).......std::fprintf(.stderr,.
11b20 22 25 34 6c 6c 75 25 25 20 20 25 2e 31 66 20 4d 42 5c 72 22 2c 20 70 6f 73 20 2f 20 63 73 69 7a "%4llu%%..%.1f.MB\r",.pos./.csiz
11b40 65 2c 20 70 6f 73 20 2f 20 31 30 30 30 30 30 30 2e 30 20 29 3b 0a 20 20 20 20 65 6c 73 65 0a 20 e,.pos./.1000000.0.);.....else..
11b60 20 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 20 20 25 2e .....std::fprintf(.stderr,."..%.
11b80 31 66 20 4d 42 5c 72 22 2c 20 70 6f 73 20 2f 20 31 30 30 30 30 30 30 2e 30 20 29 3b 0a 20 20 20 1f.MB\r",.pos./.1000000.0.);....
11ba0 20 70 70 2d 3e 72 65 73 65 74 28 29 3b 20 28 2a 70 70 29 28 29 3b 09 09 09 2f 2f 20 72 65 73 74 .pp->reset();.(*pp)();...//.rest
11bc0 6f 72 65 20 63 75 72 73 6f 72 20 70 6f 73 69 74 69 6f 6e 0a 20 20 20 20 7d 0a 20 20 7d 0a 0a 0a ore.cursor.position.....}...}...
11be0 69 6e 74 20 6d 61 69 6e 28 20 63 6f 6e 73 74 20 69 6e 74 20 61 72 67 63 2c 20 63 6f 6e 73 74 20 int.main(.const.int.argc,.const.
11c00 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 76 5b 5d 20 29 0a 20 20 7b 0a 20 20 2f 2a 20 4d char.*.const.argv[].)...{.../*.M
11c20 61 70 70 69 6e 67 20 66 72 6f 6d 20 67 7a 69 70 2f 62 7a 69 70 32 20 73 74 79 6c 65 20 30 2e 2e apping.from.gzip/bzip2.style.0..
11c40 39 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 73 20 74 6f 20 74 68 65 0a 20 20 20 20 9.compression.levels.to.the.....
11c60 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 4c 5a 4d 41 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 .corresponding.LZMA.compression.
11c80 70 61 72 61 6d 65 74 65 72 73 2e 20 2a 2f 0a 20 20 63 6f 6e 73 74 20 4c 7a 6d 61 5f 6f 70 74 69 parameters..*/...const.Lzma_opti
11ca0 6f 6e 73 20 6f 70 74 69 6f 6e 5f 6d 61 70 70 69 6e 67 5b 5d 20 3d 0a 20 20 20 20 7b 0a 20 20 20 ons.option_mapping[].=.....{....
11cc0 20 7b 20 31 20 3c 3c 20 31 36 2c 20 20 31 36 20 7d 2c 09 09 2f 2f 20 2d 30 0a 20 20 20 20 7b 20 .{.1.<<.16,..16.},..//.-0.....{.
11ce0 31 20 3c 3c 20 32 30 2c 20 20 20 35 20 7d 2c 09 09 2f 2f 20 2d 31 0a 20 20 20 20 7b 20 33 20 3c 1.<<.20,...5.},..//.-1.....{.3.<
11d00 3c 20 31 39 2c 20 20 20 36 20 7d 2c 09 09 2f 2f 20 2d 32 0a 20 20 20 20 7b 20 31 20 3c 3c 20 32 <.19,...6.},..//.-2.....{.1.<<.2
11d20 31 2c 20 20 20 38 20 7d 2c 09 09 2f 2f 20 2d 33 0a 20 20 20 20 7b 20 33 20 3c 3c 20 32 30 2c 20 1,...8.},..//.-3.....{.3.<<.20,.
11d40 20 31 32 20 7d 2c 09 09 2f 2f 20 2d 34 0a 20 20 20 20 7b 20 31 20 3c 3c 20 32 32 2c 20 20 32 30 .12.},..//.-4.....{.1.<<.22,..20
11d60 20 7d 2c 09 09 2f 2f 20 2d 35 0a 20 20 20 20 7b 20 31 20 3c 3c 20 32 33 2c 20 20 33 36 20 7d 2c .},..//.-5.....{.1.<<.23,..36.},
11d80 09 09 2f 2f 20 2d 36 0a 20 20 20 20 7b 20 31 20 3c 3c 20 32 34 2c 20 20 36 38 20 7d 2c 09 09 2f ..//.-6.....{.1.<<.24,..68.},../
11da0 2f 20 2d 37 0a 20 20 20 20 7b 20 33 20 3c 3c 20 32 33 2c 20 31 33 32 20 7d 2c 09 09 2f 2f 20 2d /.-7.....{.3.<<.23,.132.},..//.-
11dc0 38 0a 20 20 20 20 7b 20 31 20 3c 3c 20 32 35 2c 20 32 37 33 20 7d 20 7d 3b 09 09 2f 2f 20 2d 39 8.....{.1.<<.25,.273.}.};..//.-9
11de0 0a 20 20 4c 7a 6d 61 5f 6f 70 74 69 6f 6e 73 20 65 6e 63 6f 64 65 72 5f 6f 70 74 69 6f 6e 73 20 ...Lzma_options.encoder_options.
11e00 3d 20 6f 70 74 69 6f 6e 5f 6d 61 70 70 69 6e 67 5b 36 5d 3b 09 2f 2f 20 64 65 66 61 75 6c 74 20 =.option_mapping[6];.//.default.
11e20 3d 20 22 2d 36 22 0a 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e =."-6"...const.unsigned.long.lon
11e40 67 20 6d 61 78 5f 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3d 20 30 78 30 30 30 38 30 30 30 30 30 30 g.max_member_size.=.0x0008000000
11e60 30 30 30 30 30 30 55 4c 4c 3b 20 2f 2f 20 32 20 50 69 42 0a 20 20 63 6f 6e 73 74 20 75 6e 73 69 000000ULL;.//.2.PiB...const.unsi
11e80 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 61 78 5f 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 3d gned.long.long.max_volume_size.=
11ea0 20 30 78 34 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 55 4c 4c 3b 20 2f 2f 20 34 20 45 69 42 .0x4000000000000000ULL;.//.4.EiB
11ec0 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 7a ...unsigned.long.long.member_siz
11ee0 65 20 3d 20 6d 61 78 5f 6d 65 6d 62 65 72 5f 73 69 7a 65 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 e.=.max_member_size;...unsigned.
11f00 6c 6f 6e 67 20 6c 6f 6e 67 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 3d 20 30 3b 0a 20 20 73 74 64 long.long.volume_size.=.0;...std
11f20 3a 3a 73 74 72 69 6e 67 20 64 65 66 61 75 6c 74 5f 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 ::string.default_output_filename
11f40 3b 0a 20 20 4d 6f 64 65 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 20 6d 5f 63 6f 6d 70 72 65 ;...Mode.program_mode.=.m_compre
11f60 73 73 3b 0a 20 20 43 6c 5f 6f 70 74 69 6f 6e 73 20 63 6c 5f 6f 70 74 73 3b 09 09 2f 2f 20 63 6f ss;...Cl_options.cl_opts;..//.co
11f80 6d 6d 61 6e 64 2d 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 0a 20 20 62 6f 6f 6c 20 66 6f 72 63 65 20 mmand-line.options...bool.force.
11fa0 3d 20 66 61 6c 73 65 3b 0a 20 20 62 6f 6f 6c 20 6b 65 65 70 5f 69 6e 70 75 74 5f 66 69 6c 65 73 =.false;...bool.keep_input_files
11fc0 20 3d 20 66 61 6c 73 65 3b 0a 20 20 62 6f 6f 6c 20 72 65 63 6f 6d 70 72 65 73 73 20 3d 20 66 61 .=.false;...bool.recompress.=.fa
11fe0 6c 73 65 3b 0a 20 20 62 6f 6f 6c 20 74 6f 5f 73 74 64 6f 75 74 20 3d 20 66 61 6c 73 65 3b 0a 20 lse;...bool.to_stdout.=.false;..
12000 20 62 6f 6f 6c 20 7a 65 72 6f 20 3d 20 66 61 6c 73 65 3b 0a 20 20 69 66 28 20 61 72 67 63 20 3e .bool.zero.=.false;...if(.argc.>
12020 20 30 20 29 20 69 6e 76 6f 63 61 74 69 6f 6e 5f 6e 61 6d 65 20 3d 20 61 72 67 76 5b 30 5d 3b 0a .0.).invocation_name.=.argv[0];.
12040 0a 20 20 65 6e 75 6d 20 7b 20 6f 70 74 5f 6c 74 20 3d 20 32 35 36 20 7d 3b 0a 20 20 63 6f 6e 73 ...enum.{.opt_lt.=.256.};...cons
12060 74 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 4f 70 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 5b 5d 20 3d t.Arg_parser::Option.options[].=
12080 0a 20 20 20 20 7b 0a 20 20 20 20 7b 20 27 30 27 2c 20 22 66 61 73 74 22 2c 20 20 20 20 20 20 20 .....{.....{.'0',."fast",.......
120a0 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 .......Arg_parser::no..},.....{.
120c0 27 31 27 2c 20 30 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 '1',.0,...................Arg_pa
120e0 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 32 27 2c 20 30 2c 20 20 20 20 20 20 rser::no..},.....{.'2',.0,......
12100 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a .............Arg_parser::no..},.
12120 20 20 20 20 7b 20 27 33 27 2c 20 30 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....{.'3',.0,...................
12140 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 34 27 2c 20 30 2c Arg_parser::no..},.....{.'4',.0,
12160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e ...................Arg_parser::n
12180 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 35 27 2c 20 30 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 o..},.....{.'5',.0,.............
121a0 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 ......Arg_parser::no..},.....{.'
121c0 36 27 2c 20 30 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 6',.0,...................Arg_par
121e0 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 37 27 2c 20 30 2c 20 20 20 20 20 20 20 ser::no..},.....{.'7',.0,.......
12200 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 ............Arg_parser::no..},..
12220 20 20 20 7b 20 27 38 27 2c 20 30 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 ...{.'8',.0,...................A
12240 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 39 27 2c 20 22 62 65 rg_parser::no..},.....{.'9',."be
12260 73 74 22 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f st",..............Arg_parser::no
12280 20 20 7d 2c 0a 20 20 20 20 7b 20 27 61 27 2c 20 22 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 22 ..},.....{.'a',."trailing-error"
122a0 2c 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 62 ,....Arg_parser::no..},.....{.'b
122c0 27 2c 20 22 6d 65 6d 62 65 72 2d 73 69 7a 65 22 2c 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 ',."member-size",.......Arg_pars
122e0 65 72 3a 3a 79 65 73 20 7d 2c 0a 20 20 20 20 7b 20 27 63 27 2c 20 22 73 74 64 6f 75 74 22 2c 20 er::yes.},.....{.'c',."stdout",.
12300 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 ...........Arg_parser::no..},...
12320 20 20 7b 20 27 64 27 2c 20 22 64 65 63 6f 6d 70 72 65 73 73 22 2c 20 20 20 20 20 20 20 20 41 72 ..{.'d',."decompress",........Ar
12340 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 66 27 2c 20 22 66 6f 72 g_parser::no..},.....{.'f',."for
12360 63 65 22 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 ce",.............Arg_parser::no.
12380 20 7d 2c 0a 20 20 20 20 7b 20 27 46 27 2c 20 22 72 65 63 6f 6d 70 72 65 73 73 22 2c 20 20 20 20 .},.....{.'F',."recompress",....
123a0 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 68 27 ....Arg_parser::no..},.....{.'h'
123c0 2c 20 22 68 65 6c 70 22 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 ,."help",..............Arg_parse
123e0 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 6b 27 2c 20 22 6b 65 65 70 22 2c 20 20 20 20 r::no..},.....{.'k',."keep",....
12400 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 ..........Arg_parser::no..},....
12420 20 7b 20 27 6c 27 2c 20 22 6c 69 73 74 22 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 .{.'l',."list",..............Arg
12440 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 6d 27 2c 20 22 6d 61 74 63 _parser::no..},.....{.'m',."matc
12460 68 2d 6c 65 6e 67 74 68 22 2c 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 79 65 73 20 h-length",......Arg_parser::yes.
12480 7d 2c 0a 20 20 20 20 7b 20 27 6e 27 2c 20 22 74 68 72 65 61 64 73 22 2c 20 20 20 20 20 20 20 20 },.....{.'n',."threads",........
124a0 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 79 65 73 20 7d 2c 0a 20 20 20 20 7b 20 27 6f 27 2c ...Arg_parser::yes.},.....{.'o',
124c0 20 22 6f 75 74 70 75 74 22 2c 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 ."output",............Arg_parser
124e0 3a 3a 79 65 73 20 7d 2c 0a 20 20 20 20 7b 20 27 71 27 2c 20 22 71 75 69 65 74 22 2c 20 20 20 20 ::yes.},.....{.'q',."quiet",....
12500 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 .........Arg_parser::no..},.....
12520 7b 20 27 73 27 2c 20 22 64 69 63 74 69 6f 6e 61 72 79 2d 73 69 7a 65 22 2c 20 20 20 41 72 67 5f {.'s',."dictionary-size",...Arg_
12540 70 61 72 73 65 72 3a 3a 79 65 73 20 7d 2c 0a 20 20 20 20 7b 20 27 53 27 2c 20 22 76 6f 6c 75 6d parser::yes.},.....{.'S',."volum
12560 65 2d 73 69 7a 65 22 2c 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 79 65 73 20 7d e-size",.......Arg_parser::yes.}
12580 2c 0a 20 20 20 20 7b 20 27 74 27 2c 20 22 74 65 73 74 22 2c 20 20 20 20 20 20 20 20 20 20 20 20 ,.....{.'t',."test",............
125a0 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 76 27 2c 20 ..Arg_parser::no..},.....{.'v',.
125c0 22 76 65 72 62 6f 73 65 22 2c 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a "verbose",...........Arg_parser:
125e0 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 56 27 2c 20 22 76 65 72 73 69 6f 6e 22 2c 20 20 20 :no..},.....{.'V',."version",...
12600 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b ........Arg_parser::no..},.....{
12620 20 6f 70 74 5f 6c 74 2c 20 22 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 22 2c 20 41 72 67 5f 70 .opt_lt,."loose-trailing",.Arg_p
12640 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 30 2c 20 30 2c 20 20 20 20 20 20 20 arser::no..},.....{.0,.0,.......
12660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 20 ..............Arg_parser::no..}.
12680 7d 3b 0a 0a 20 20 63 6f 6e 73 74 20 41 72 67 5f 70 61 72 73 65 72 20 70 61 72 73 65 72 28 20 61 };....const.Arg_parser.parser(.a
126a0 72 67 63 2c 20 61 72 67 76 2c 20 6f 70 74 69 6f 6e 73 20 29 3b 0a 20 20 69 66 28 20 70 61 72 73 rgc,.argv,.options.);...if(.pars
126c0 65 72 2e 65 72 72 6f 72 28 29 2e 73 69 7a 65 28 29 20 29 09 09 09 09 2f 2f 20 62 61 64 20 6f 70 er.error().size().)....//.bad.op
126e0 74 69 6f 6e 0a 20 20 20 20 7b 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 70 61 72 73 65 72 2e 65 72 tion.....{.show_error(.parser.er
12700 72 6f 72 28 29 2e 63 5f 73 74 72 28 29 2c 20 30 2c 20 74 72 75 65 20 29 3b 20 72 65 74 75 72 6e ror().c_str(),.0,.true.);.return
12720 20 31 3b 20 7d 0a 0a 20 20 69 6e 74 20 61 72 67 69 6e 64 20 3d 20 30 3b 0a 20 20 66 6f 72 28 20 .1;.}....int.argind.=.0;...for(.
12740 3b 20 61 72 67 69 6e 64 20 3c 20 70 61 72 73 65 72 2e 61 72 67 75 6d 65 6e 74 73 28 29 3b 20 2b ;.argind.<.parser.arguments();.+
12760 2b 61 72 67 69 6e 64 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 63 6f +argind.).....{.....const.int.co
12780 64 65 20 3d 20 70 61 72 73 65 72 2e 63 6f 64 65 28 20 61 72 67 69 6e 64 20 29 3b 0a 20 20 20 20 de.=.parser.code(.argind.);.....
127a0 69 66 28 20 21 63 6f 64 65 20 29 20 62 72 65 61 6b 3b 09 09 09 09 09 2f 2f 20 6e 6f 20 6d 6f 72 if(.!code.).break;.....//.no.mor
127c0 65 20 6f 70 74 69 6f 6e 73 0a 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 e.options.....const.char.*.const
127e0 20 70 6e 20 3d 20 70 61 72 73 65 72 2e 70 61 72 73 65 64 5f 6e 61 6d 65 28 20 61 72 67 69 6e 64 .pn.=.parser.parsed_name(.argind
12800 20 29 2e 63 5f 73 74 72 28 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 72 69 6e .).c_str();.....const.std::strin
12820 67 20 26 20 73 61 72 67 20 3d 20 70 61 72 73 65 72 2e 61 72 67 75 6d 65 6e 74 28 20 61 72 67 69 g.&.sarg.=.parser.argument(.argi
12840 6e 64 20 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 nd.);.....const.char.*.const.arg
12860 20 3d 20 73 61 72 67 2e 63 5f 73 74 72 28 29 3b 0a 20 20 20 20 73 77 69 74 63 68 28 20 63 6f 64 .=.sarg.c_str();.....switch(.cod
12880 65 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 61 73 65 20 27 30 27 3a 20 63 61 73 65 e.).......{.......case.'0':.case
128a0 20 27 31 27 3a 20 63 61 73 65 20 27 32 27 3a 20 63 61 73 65 20 27 33 27 3a 20 63 61 73 65 20 27 .'1':.case.'2':.case.'3':.case.'
128c0 34 27 3a 20 63 61 73 65 20 27 35 27 3a 0a 20 20 20 20 20 20 63 61 73 65 20 27 36 27 3a 20 63 61 4':.case.'5':.......case.'6':.ca
128e0 73 65 20 27 37 27 3a 20 63 61 73 65 20 27 38 27 3a 20 63 61 73 65 20 27 39 27 3a 20 7a 65 72 6f se.'7':.case.'8':.case.'9':.zero
12900 20 3d 20 63 6f 64 65 20 3d 3d 20 27 30 27 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .=.code.==.'0';.................
12920 65 6e 63 6f 64 65 72 5f 6f 70 74 69 6f 6e 73 20 3d 20 6f 70 74 69 6f 6e 5f 6d 61 70 70 69 6e 67 encoder_options.=.option_mapping
12940 5b 63 6f 64 65 2d 27 30 27 5d 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 61 [code-'0'];.break;.......case.'a
12960 27 3a 20 63 6c 5f 6f 70 74 73 2e 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 20 3d 20 66 61 6c ':.cl_opts.ignore_trailing.=.fal
12980 73 65 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 62 27 3a 20 6d 65 6d 62 65 se;.break;.......case.'b':.membe
129a0 72 5f 73 69 7a 65 20 3d 20 67 65 74 6e 75 6d 28 20 61 72 67 2c 20 70 6e 2c 20 31 30 30 30 30 30 r_size.=.getnum(.arg,.pn,.100000
129c0 2c 20 6d 61 78 5f 6d 65 6d 62 65 72 5f 73 69 7a 65 20 29 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 ,.max_member_size.);.break;.....
129e0 20 20 63 61 73 65 20 27 63 27 3a 20 74 6f 5f 73 74 64 6f 75 74 20 3d 20 74 72 75 65 3b 20 62 72 ..case.'c':.to_stdout.=.true;.br
12a00 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 64 27 3a 20 73 65 74 5f 6d 6f 64 65 28 20 70 eak;.......case.'d':.set_mode(.p
12a20 72 6f 67 72 61 6d 5f 6d 6f 64 65 2c 20 6d 5f 64 65 63 6f 6d 70 72 65 73 73 20 29 3b 20 62 72 65 rogram_mode,.m_decompress.);.bre
12a40 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 66 27 3a 20 66 6f 72 63 65 20 3d 20 74 72 75 65 ak;.......case.'f':.force.=.true
12a60 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 46 27 3a 20 72 65 63 6f 6d 70 72 ;.break;.......case.'F':.recompr
12a80 65 73 73 20 3d 20 74 72 75 65 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 68 ess.=.true;.break;.......case.'h
12aa0 27 3a 20 73 68 6f 77 5f 68 65 6c 70 28 29 3b 20 72 65 74 75 72 6e 20 30 3b 0a 20 20 20 20 20 20 ':.show_help();.return.0;.......
12ac0 63 61 73 65 20 27 6b 27 3a 20 6b 65 65 70 5f 69 6e 70 75 74 5f 66 69 6c 65 73 20 3d 20 74 72 75 case.'k':.keep_input_files.=.tru
12ae0 65 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 6c 27 3a 20 73 65 74 5f 6d 6f e;.break;.......case.'l':.set_mo
12b00 64 65 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 2c 20 6d 5f 6c 69 73 74 20 29 3b 20 62 72 65 61 de(.program_mode,.m_list.);.brea
12b20 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 6d 27 3a 20 65 6e 63 6f 64 65 72 5f 6f 70 74 69 6f k;.......case.'m':.encoder_optio
12b40 6e 73 2e 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 3d 0a 20 20 20 20 20 20 20 20 20 20 20 ns.match_len_limit.=............
12b60 20 20 20 20 20 20 20 67 65 74 6e 75 6d 28 20 61 72 67 2c 20 70 6e 2c 20 6d 69 6e 5f 6d 61 74 63 .......getnum(.arg,.pn,.min_matc
12b80 68 5f 6c 65 6e 5f 6c 69 6d 69 74 2c 20 6d 61 78 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 3b 0a 20 20 h_len_limit,.max_match_len.);...
12ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 65 72 6f 20 3d 20 66 61 6c 73 65 3b 20 62 72 65 61 ..............zero.=.false;.brea
12bc0 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 6e 27 3a 20 62 72 65 61 6b 3b 09 09 09 09 09 2f 2f k;.......case.'n':.break;.....//
12be0 20 69 67 6e 6f 72 65 64 0a 20 20 20 20 20 20 63 61 73 65 20 27 6f 27 3a 20 69 66 28 20 73 61 72 .ignored.......case.'o':.if(.sar
12c00 67 20 3d 3d 20 22 2d 22 20 29 20 74 6f 5f 73 74 64 6f 75 74 20 3d 20 74 72 75 65 3b 0a 20 20 20 g.==."-".).to_stdout.=.true;....
12c20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 7b 20 64 65 66 61 75 6c 74 5f 6f 75 74 70 .............else.{.default_outp
12c40 75 74 5f 66 69 6c 65 6e 61 6d 65 20 3d 20 73 61 72 67 3b 20 7d 20 62 72 65 61 6b 3b 0a 20 20 20 ut_filename.=.sarg;.}.break;....
12c60 20 20 20 63 61 73 65 20 27 71 27 3a 20 76 65 72 62 6f 73 69 74 79 20 3d 20 2d 31 3b 20 62 72 65 ...case.'q':.verbosity.=.-1;.bre
12c80 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 73 27 3a 20 65 6e 63 6f 64 65 72 5f 6f 70 74 69 ak;.......case.'s':.encoder_opti
12ca0 6f 6e 73 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3d 20 67 65 74 5f 64 69 63 74 5f 73 ons.dictionary_size.=.get_dict_s
12cc0 69 7a 65 28 20 61 72 67 2c 20 70 6e 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ize(.arg,.pn.);.................
12ce0 7a 65 72 6f 20 3d 20 66 61 6c 73 65 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 zero.=.false;.break;.......case.
12d00 27 53 27 3a 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 3d 20 67 65 74 6e 75 6d 28 20 61 72 67 2c 20 'S':.volume_size.=.getnum(.arg,.
12d20 70 6e 2c 20 31 30 30 30 30 30 2c 20 6d 61 78 5f 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 29 3b 20 62 pn,.100000,.max_volume_size.);.b
12d40 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 74 27 3a 20 73 65 74 5f 6d 6f 64 65 28 20 reak;.......case.'t':.set_mode(.
12d60 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 2c 20 6d 5f 74 65 73 74 20 29 3b 20 62 72 65 61 6b 3b 0a 20 program_mode,.m_test.);.break;..
12d80 20 20 20 20 20 63 61 73 65 20 27 76 27 3a 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3c 20 34 .....case.'v':.if(.verbosity.<.4
12da0 20 29 20 2b 2b 76 65 72 62 6f 73 69 74 79 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 .).++verbosity;.break;.......cas
12dc0 65 20 27 56 27 3a 20 73 68 6f 77 5f 76 65 72 73 69 6f 6e 28 29 3b 20 72 65 74 75 72 6e 20 30 3b e.'V':.show_version();.return.0;
12de0 0a 20 20 20 20 20 20 63 61 73 65 20 6f 70 74 5f 6c 74 3a 20 63 6c 5f 6f 70 74 73 2e 6c 6f 6f 73 .......case.opt_lt:.cl_opts.loos
12e00 65 5f 74 72 61 69 6c 69 6e 67 20 3d 20 74 72 75 65 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 e_trailing.=.true;.break;.......
12e20 64 65 66 61 75 6c 74 3a 20 69 6e 74 65 72 6e 61 6c 5f 65 72 72 6f 72 28 20 22 75 6e 63 61 75 67 default:.internal_error(."uncaug
12e40 68 74 20 6f 70 74 69 6f 6e 2e 22 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 20 2f 2f 20 ht.option.".);.......}.....}.//.
12e60 65 6e 64 20 70 72 6f 63 65 73 73 20 6f 70 74 69 6f 6e 73 0a 0a 23 69 66 20 64 65 66 69 6e 65 64 end.process.options..#if.defined
12e80 20 5f 5f 4d 53 56 43 52 54 5f 5f 20 7c 7c 20 64 65 66 69 6e 65 64 20 5f 5f 4f 53 32 5f 5f 20 7c .__MSVCRT__.||.defined.__OS2__.|
12ea0 7c 20 64 65 66 69 6e 65 64 20 5f 5f 44 4a 47 50 50 5f 5f 0a 20 20 73 65 74 6d 6f 64 65 28 20 53 |.defined.__DJGPP__...setmode(.S
12ec0 54 44 49 4e 5f 46 49 4c 45 4e 4f 2c 20 4f 5f 42 49 4e 41 52 59 20 29 3b 0a 20 20 73 65 74 6d 6f TDIN_FILENO,.O_BINARY.);...setmo
12ee0 64 65 28 20 53 54 44 4f 55 54 5f 46 49 4c 45 4e 4f 2c 20 4f 5f 42 49 4e 41 52 59 20 29 3b 0a 23 de(.STDOUT_FILENO,.O_BINARY.);.#
12f00 65 6e 64 69 66 0a 0a 20 20 73 74 64 3a 3a 76 65 63 74 6f 72 3c 20 73 74 64 3a 3a 73 74 72 69 6e endif....std::vector<.std::strin
12f20 67 20 3e 20 66 69 6c 65 6e 61 6d 65 73 3b 0a 20 20 62 6f 6f 6c 20 66 69 6c 65 6e 61 6d 65 73 5f g.>.filenames;...bool.filenames_
12f40 67 69 76 65 6e 20 3d 20 66 61 6c 73 65 3b 0a 20 20 66 6f 72 28 20 3b 20 61 72 67 69 6e 64 20 3c given.=.false;...for(.;.argind.<
12f60 20 70 61 72 73 65 72 2e 61 72 67 75 6d 65 6e 74 73 28 29 3b 20 2b 2b 61 72 67 69 6e 64 20 29 0a .parser.arguments();.++argind.).
12f80 20 20 20 20 7b 0a 20 20 20 20 66 69 6c 65 6e 61 6d 65 73 2e 70 75 73 68 5f 62 61 63 6b 28 20 70 ....{.....filenames.push_back(.p
12fa0 61 72 73 65 72 2e 61 72 67 75 6d 65 6e 74 28 20 61 72 67 69 6e 64 20 29 20 29 3b 0a 20 20 20 20 arser.argument(.argind.).);.....
12fc0 69 66 28 20 66 69 6c 65 6e 61 6d 65 73 2e 62 61 63 6b 28 29 20 21 3d 20 22 2d 22 20 29 20 66 69 if(.filenames.back().!=."-".).fi
12fe0 6c 65 6e 61 6d 65 73 5f 67 69 76 65 6e 20 3d 20 74 72 75 65 3b 0a 20 20 20 20 7d 0a 20 20 69 66 lenames_given.=.true;.....}...if
13000 28 20 66 69 6c 65 6e 61 6d 65 73 2e 65 6d 70 74 79 28 29 20 29 20 66 69 6c 65 6e 61 6d 65 73 2e (.filenames.empty().).filenames.
13020 70 75 73 68 5f 62 61 63 6b 28 22 2d 22 29 3b 0a 0a 20 20 69 66 28 20 70 72 6f 67 72 61 6d 5f 6d push_back("-");....if(.program_m
13040 6f 64 65 20 3d 3d 20 6d 5f 6c 69 73 74 20 29 20 72 65 74 75 72 6e 20 6c 69 73 74 5f 66 69 6c 65 ode.==.m_list.).return.list_file
13060 73 28 20 66 69 6c 65 6e 61 6d 65 73 2c 20 63 6c 5f 6f 70 74 73 20 29 3b 0a 0a 20 20 69 66 28 20 s(.filenames,.cl_opts.);....if(.
13080 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 3d 20 6d 5f 63 6f 6d 70 72 65 73 73 20 29 0a 20 20 20 program_mode.==.m_compress.)....
130a0 20 7b 0a 20 20 20 20 69 66 28 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 3e 20 30 20 26 26 20 21 74 .{.....if(.volume_size.>.0.&&.!t
130c0 6f 5f 73 74 64 6f 75 74 20 26 26 20 64 65 66 61 75 6c 74 5f 6f 75 74 70 75 74 5f 66 69 6c 65 6e o_stdout.&&.default_output_filen
130e0 61 6d 65 2e 73 69 7a 65 28 29 20 26 26 0a 20 20 20 20 20 20 20 20 66 69 6c 65 6e 61 6d 65 73 2e ame.size().&&.........filenames.
13100 73 69 7a 65 28 29 20 3e 20 31 20 29 0a 20 20 20 20 20 20 7b 20 73 68 6f 77 5f 65 72 72 6f 72 28 size().>.1.).......{.show_error(
13120 20 22 4f 6e 6c 79 20 63 61 6e 20 63 6f 6d 70 72 65 73 73 20 6f 6e 65 20 66 69 6c 65 20 77 68 65 ."Only.can.compress.one.file.whe
13140 6e 20 75 73 69 6e 67 20 27 2d 6f 27 20 61 6e 64 20 27 2d 53 27 2e 22 2c 0a 20 20 20 20 20 20 20 n.using.'-o'.and.'-S'.",........
13160 20 20 20 20 20 20 20 20 20 20 20 20 20 30 2c 20 74 72 75 65 20 29 3b 20 72 65 74 75 72 6e 20 31 .............0,.true.);.return.1
13180 3b 20 7d 0a 20 20 20 20 64 69 73 5f 73 6c 6f 74 73 2e 69 6e 69 74 28 29 3b 0a 20 20 20 20 70 72 ;.}.....dis_slots.init();.....pr
131a0 6f 62 5f 70 72 69 63 65 73 2e 69 6e 69 74 28 29 3b 0a 20 20 20 20 7d 0a 20 20 65 6c 73 65 20 76 ob_prices.init();.....}...else.v
131c0 6f 6c 75 6d 65 5f 73 69 7a 65 20 3d 20 30 3b 0a 20 20 69 66 28 20 70 72 6f 67 72 61 6d 5f 6d 6f olume_size.=.0;...if(.program_mo
131e0 64 65 20 3d 3d 20 6d 5f 74 65 73 74 20 29 20 74 6f 5f 73 74 64 6f 75 74 20 3d 20 66 61 6c 73 65 de.==.m_test.).to_stdout.=.false
13200 3b 09 2f 2f 20 61 70 70 6c 79 20 6f 76 65 72 72 69 64 65 73 0a 20 20 69 66 28 20 70 72 6f 67 72 ;.//.apply.overrides...if(.progr
13220 61 6d 5f 6d 6f 64 65 20 3d 3d 20 6d 5f 74 65 73 74 20 7c 7c 20 74 6f 5f 73 74 64 6f 75 74 20 29 am_mode.==.m_test.||.to_stdout.)
13240 20 64 65 66 61 75 6c 74 5f 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 6c 65 61 72 28 29 .default_output_filename.clear()
13260 3b 0a 0a 20 20 69 66 28 20 74 6f 5f 73 74 64 6f 75 74 20 26 26 20 70 72 6f 67 72 61 6d 5f 6d 6f ;....if(.to_stdout.&&.program_mo
13280 64 65 20 21 3d 20 6d 5f 74 65 73 74 20 29 09 2f 2f 20 63 68 65 63 6b 20 74 74 79 20 6f 6e 6c 79 de.!=.m_test.).//.check.tty.only
132a0 20 6f 6e 63 65 0a 20 20 20 20 7b 20 6f 75 74 66 64 20 3d 20 53 54 44 4f 55 54 5f 46 49 4c 45 4e .once.....{.outfd.=.STDOUT_FILEN
132c0 4f 3b 20 69 66 28 20 21 63 68 65 63 6b 5f 74 74 79 5f 6f 75 74 28 20 70 72 6f 67 72 61 6d 5f 6d O;.if(.!check_tty_out(.program_m
132e0 6f 64 65 20 29 20 29 20 72 65 74 75 72 6e 20 31 3b 20 7d 0a 20 20 65 6c 73 65 20 6f 75 74 66 64 ode.).).return.1;.}...else.outfd
13300 20 3d 20 2d 31 3b 0a 0a 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 74 6f 5f 66 69 6c 65 20 3d 20 21 .=.-1;....const.bool.to_file.=.!
13320 74 6f 5f 73 74 64 6f 75 74 20 26 26 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 21 3d 20 6d 5f 74 to_stdout.&&.program_mode.!=.m_t
13340 65 73 74 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 est.&&........................de
13360 66 61 75 6c 74 5f 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 73 69 7a 65 28 29 3b 0a 20 20 fault_output_filename.size();...
13380 69 66 28 20 21 74 6f 5f 73 74 64 6f 75 74 20 26 26 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 21 if(.!to_stdout.&&.program_mode.!
133a0 3d 20 6d 5f 74 65 73 74 20 26 26 20 28 20 66 69 6c 65 6e 61 6d 65 73 5f 67 69 76 65 6e 20 7c 7c =.m_test.&&.(.filenames_given.||
133c0 20 74 6f 5f 66 69 6c 65 20 29 20 29 0a 20 20 20 20 73 65 74 5f 73 69 67 6e 61 6c 73 28 20 73 69 .to_file.).).....set_signals(.si
133e0 67 6e 61 6c 5f 68 61 6e 64 6c 65 72 20 29 3b 0a 0a 20 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 gnal_handler.);....Pretty_print.
13400 70 70 28 20 66 69 6c 65 6e 61 6d 65 73 20 29 3b 0a 0a 20 20 69 6e 74 20 66 61 69 6c 65 64 5f 74 pp(.filenames.);....int.failed_t
13420 65 73 74 73 20 3d 20 30 3b 0a 20 20 69 6e 74 20 72 65 74 76 61 6c 20 3d 20 30 3b 0a 20 20 63 6f ests.=.0;...int.retval.=.0;...co
13440 6e 73 74 20 62 6f 6f 6c 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 20 3d 20 21 74 6f 5f 73 74 64 6f 75 74 nst.bool.one_to_one.=.!to_stdout
13460 20 26 26 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 21 3d 20 6d 5f 74 65 73 74 20 26 26 20 21 74 .&&.program_mode.!=.m_test.&&.!t
13480 6f 5f 66 69 6c 65 3b 0a 20 20 62 6f 6f 6c 20 73 74 64 69 6e 5f 75 73 65 64 20 3d 20 66 61 6c 73 o_file;...bool.stdin_used.=.fals
134a0 65 3b 0a 20 20 73 74 72 75 63 74 20 73 74 61 74 20 69 6e 5f 73 74 61 74 73 3b 0a 20 20 66 6f 72 e;...struct.stat.in_stats;...for
134c0 28 20 75 6e 73 69 67 6e 65 64 20 69 20 3d 20 30 3b 20 69 20 3c 20 66 69 6c 65 6e 61 6d 65 73 2e (.unsigned.i.=.0;.i.<.filenames.
134e0 73 69 7a 65 28 29 3b 20 2b 2b 69 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 73 74 64 3a 3a 73 74 72 size();.++i.).....{.....std::str
13500 69 6e 67 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 3b 0a 20 20 20 20 69 6e 74 20 69 6e 66 64 ing.input_filename;.....int.infd
13520 3b 0a 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 66 72 6f 6d 5f 73 74 64 69 6e 20 3d 20 66 69 ;.....const.bool.from_stdin.=.fi
13540 6c 65 6e 61 6d 65 73 5b 69 5d 20 3d 3d 20 22 2d 22 3b 0a 0a 20 20 20 20 70 70 2e 73 65 74 5f 6e lenames[i].==."-";......pp.set_n
13560 61 6d 65 28 20 66 69 6c 65 6e 61 6d 65 73 5b 69 5d 20 29 3b 0a 20 20 20 20 69 66 28 20 66 72 6f ame(.filenames[i].);.....if(.fro
13580 6d 5f 73 74 64 69 6e 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 73 74 64 69 m_stdin.).......{.......if(.stdi
135a0 6e 5f 75 73 65 64 20 29 20 63 6f 6e 74 69 6e 75 65 3b 20 65 6c 73 65 20 73 74 64 69 6e 5f 75 73 n_used.).continue;.else.stdin_us
135c0 65 64 20 3d 20 74 72 75 65 3b 0a 20 20 20 20 20 20 69 6e 66 64 20 3d 20 53 54 44 49 4e 5f 46 49 ed.=.true;.......infd.=.STDIN_FI
135e0 4c 45 4e 4f 3b 0a 20 20 20 20 20 20 69 66 28 20 21 63 68 65 63 6b 5f 74 74 79 5f 69 6e 28 20 70 LENO;.......if(.!check_tty_in(.p
13600 70 2e 6e 61 6d 65 28 29 2c 20 69 6e 66 64 2c 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 2c 20 72 65 p.name(),.infd,.program_mode,.re
13620 74 76 61 6c 20 29 20 29 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 20 20 69 66 28 20 6f 6e 65 tval.).).continue;.......if(.one
13640 5f 74 6f 5f 6f 6e 65 20 29 20 7b 20 6f 75 74 66 64 20 3d 20 53 54 44 4f 55 54 5f 46 49 4c 45 4e _to_one.).{.outfd.=.STDOUT_FILEN
13660 4f 3b 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 6c 65 61 72 28 29 3b 20 7d 0a 20 20 O;.output_filename.clear();.}...
13680 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e ....}.....else.......{.......con
136a0 73 74 20 69 6e 74 20 65 69 6e 64 65 78 20 3d 20 65 78 74 65 6e 73 69 6f 6e 5f 69 6e 64 65 78 28 st.int.eindex.=.extension_index(
136c0 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 3d 20 66 69 6c 65 6e 61 6d 65 73 5b 69 5d 20 29 .input_filename.=.filenames[i].)
136e0 3b 0a 20 20 20 20 20 20 69 6e 66 64 20 3d 20 6f 70 65 6e 5f 69 6e 73 74 72 65 61 6d 32 28 20 69 ;.......infd.=.open_instream2(.i
13700 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 74 72 28 29 2c 20 26 69 6e 5f 73 74 61 74 73 nput_filename.c_str(),.&in_stats
13720 2c 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,.program_mode,.................
13740 20 20 20 20 20 20 20 20 20 20 20 20 20 65 69 6e 64 65 78 2c 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 2c .............eindex,.one_to_one,
13760 20 72 65 63 6f 6d 70 72 65 73 73 20 29 3b 0a 20 20 20 20 20 20 69 66 28 20 69 6e 66 64 20 3c 20 .recompress.);.......if(.infd.<.
13780 30 20 29 20 7b 20 73 65 74 5f 72 65 74 76 61 6c 28 20 72 65 74 76 61 6c 2c 20 31 20 29 3b 20 63 0.).{.set_retval(.retval,.1.);.c
137a0 6f 6e 74 69 6e 75 65 3b 20 7d 0a 20 20 20 20 20 20 69 66 28 20 21 63 68 65 63 6b 5f 74 74 79 5f ontinue;.}.......if(.!check_tty_
137c0 69 6e 28 20 70 70 2e 6e 61 6d 65 28 29 2c 20 69 6e 66 64 2c 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 in(.pp.name(),.infd,.program_mod
137e0 65 2c 20 72 65 74 76 61 6c 20 29 20 29 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 20 20 69 66 e,.retval.).).continue;.......if
13800 28 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 20 29 09 09 09 2f 2f 20 6f 70 65 6e 20 6f 75 74 66 64 20 61 (.one_to_one.)...//.open.outfd.a
13820 66 74 65 72 20 63 68 65 63 6b 69 6e 67 20 69 6e 66 64 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 fter.checking.infd.........{....
13840 20 20 20 20 20 69 66 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 3d 20 6d 5f 63 6f 6d 70 72 .....if(.program_mode.==.m_compr
13860 65 73 73 20 29 0a 20 20 20 20 20 20 20 20 20 20 73 65 74 5f 63 5f 6f 75 74 6e 61 6d 65 28 20 69 ess.)...........set_c_outname(.i
13880 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2c 20 74 72 75 65 2c 20 74 72 75 65 2c 20 76 6f 6c 75 6d nput_filename,.true,.true,.volum
138a0 65 5f 73 69 7a 65 20 3e 20 30 20 29 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 20 73 65 74 5f 64 e_size.>.0.);.........else.set_d
138c0 5f 6f 75 74 6e 61 6d 65 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2c 20 65 69 6e 64 65 78 _outname(.input_filename,.eindex
138e0 20 29 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 21 6f 70 65 6e 5f 6f 75 74 73 74 72 65 61 6d 28 .);.........if(.!open_outstream(
13900 20 66 6f 72 63 65 2c 20 74 72 75 65 20 29 20 29 0a 20 20 20 20 20 20 20 20 20 20 7b 20 63 6c 6f .force,.true.).)...........{.clo
13920 73 65 28 20 69 6e 66 64 20 29 3b 20 73 65 74 5f 72 65 74 76 61 6c 28 20 72 65 74 76 61 6c 2c 20 se(.infd.);.set_retval(.retval,.
13940 31 20 29 3b 20 63 6f 6e 74 69 6e 75 65 3b 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 1.);.continue;.}.........}......
13960 20 7d 0a 0a 20 20 20 20 69 66 28 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 20 26 26 20 21 63 68 65 63 6b .}......if(.one_to_one.&&.!check
13980 5f 74 74 79 5f 6f 75 74 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 29 20 29 0a 20 20 20 20 20 _tty_out(.program_mode.).)......
139a0 20 7b 20 73 65 74 5f 72 65 74 76 61 6c 28 20 72 65 74 76 61 6c 2c 20 31 20 29 3b 20 72 65 74 75 .{.set_retval(.retval,.1.);.retu
139c0 72 6e 20 72 65 74 76 61 6c 3b 20 7d 09 2f 2f 20 64 6f 6e 27 74 20 64 65 6c 65 74 65 20 61 20 74 rn.retval;.}.//.don't.delete.a.t
139e0 74 79 0a 0a 20 20 20 20 69 66 28 20 74 6f 5f 66 69 6c 65 20 26 26 20 6f 75 74 66 64 20 3c 20 30 ty......if(.to_file.&&.outfd.<.0
13a00 20 29 09 09 2f 2f 20 6f 70 65 6e 20 6f 75 74 66 64 20 61 66 74 65 72 20 63 68 65 63 6b 69 6e 67 .)..//.open.outfd.after.checking
13a20 20 69 6e 66 64 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 70 72 6f 67 72 61 6d 5f .infd.......{.......if(.program_
13a40 6d 6f 64 65 20 3d 3d 20 6d 5f 63 6f 6d 70 72 65 73 73 20 29 20 73 65 74 5f 63 5f 6f 75 74 6e 61 mode.==.m_compress.).set_c_outna
13a60 6d 65 28 20 64 65 66 61 75 6c 74 5f 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2c 0a 20 20 20 me(.default_output_filename,....
13a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
13aa0 20 20 20 20 66 69 6c 65 6e 61 6d 65 73 5f 67 69 76 65 6e 2c 20 66 61 6c 73 65 2c 20 76 6f 6c 75 ....filenames_given,.false,.volu
13ac0 6d 65 5f 73 69 7a 65 20 3e 20 30 20 29 3b 0a 20 20 20 20 20 20 65 6c 73 65 20 6f 75 74 70 75 74 me_size.>.0.);.......else.output
13ae0 5f 66 69 6c 65 6e 61 6d 65 20 3d 20 64 65 66 61 75 6c 74 5f 6f 75 74 70 75 74 5f 66 69 6c 65 6e _filename.=.default_output_filen
13b00 61 6d 65 3b 0a 20 20 20 20 20 20 69 66 28 20 21 6f 70 65 6e 5f 6f 75 74 73 74 72 65 61 6d 28 20 ame;.......if(.!open_outstream(.
13b20 66 6f 72 63 65 2c 20 66 61 6c 73 65 20 29 20 7c 7c 20 21 63 68 65 63 6b 5f 74 74 79 5f 6f 75 74 force,.false.).||.!check_tty_out
13b40 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 29 20 29 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 (.program_mode.).).........retur
13b60 6e 20 31 3b 09 2f 2f 20 63 68 65 63 6b 20 74 74 79 20 6f 6e 6c 79 20 6f 6e 63 65 20 61 6e 64 20 n.1;.//.check.tty.only.once.and.
13b80 64 6f 6e 27 74 20 74 72 79 20 74 6f 20 64 65 6c 65 74 65 20 61 20 74 74 79 0a 20 20 20 20 20 20 don't.try.to.delete.a.tty.......
13ba0 7d 0a 0a 20 20 20 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 74 61 74 20 2a 20 63 6f 6e 73 74 }......const.struct.stat.*.const
13bc0 20 69 6e 5f 73 74 61 74 73 70 20 3d 0a 20 20 20 20 20 20 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e .in_statsp.=.......(.input_filen
13be0 61 6d 65 2e 73 69 7a 65 28 29 20 26 26 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 20 29 20 3f 20 26 69 6e ame.size().&&.one_to_one.).?.&in
13c00 5f 73 74 61 74 73 20 3a 20 30 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c _stats.:.0;.....const.unsigned.l
13c20 6f 6e 67 20 6c 6f 6e 67 20 63 66 69 6c 65 5f 73 69 7a 65 20 3d 0a 20 20 20 20 20 20 28 20 69 6e ong.long.cfile_size.=.......(.in
13c40 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 73 69 7a 65 28 29 20 26 26 20 53 5f 49 53 52 45 47 28 20 put_filename.size().&&.S_ISREG(.
13c60 69 6e 5f 73 74 61 74 73 2e 73 74 5f 6d 6f 64 65 20 29 20 29 20 3f 0a 20 20 20 20 20 20 20 20 28 in_stats.st_mode.).).?.........(
13c80 20 69 6e 5f 73 74 61 74 73 2e 73 74 5f 73 69 7a 65 20 2b 20 39 39 20 29 20 2f 20 31 30 30 20 3a .in_stats.st_size.+.99.)./.100.:
13ca0 20 30 3b 0a 20 20 20 20 69 6e 74 20 74 6d 70 3b 0a 20 20 20 20 74 72 79 20 7b 0a 20 20 20 20 20 .0;.....int.tmp;.....try.{......
13cc0 20 69 66 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 3d 20 6d 5f 63 6f 6d 70 72 65 73 73 20 .if(.program_mode.==.m_compress.
13ce0 29 0a 20 20 20 20 20 20 20 20 74 6d 70 20 3d 20 63 6f 6d 70 72 65 73 73 28 20 63 66 69 6c 65 5f ).........tmp.=.compress(.cfile_
13d00 73 69 7a 65 2c 20 6d 65 6d 62 65 72 5f 73 69 7a 65 2c 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 2c 20 size,.member_size,.volume_size,.
13d20 69 6e 66 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e infd,.........................en
13d40 63 6f 64 65 72 5f 6f 70 74 69 6f 6e 73 2c 20 70 70 2c 20 69 6e 5f 73 74 61 74 73 70 2c 20 7a 65 coder_options,.pp,.in_statsp,.ze
13d60 72 6f 20 29 3b 0a 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 74 6d 70 20 3d 20 64 ro.);.......else.........tmp.=.d
13d80 65 63 6f 6d 70 72 65 73 73 28 20 63 66 69 6c 65 5f 73 69 7a 65 2c 20 69 6e 66 64 2c 20 63 6c 5f ecompress(.cfile_size,.infd,.cl_
13da0 6f 70 74 73 2c 20 70 70 2c 20 66 72 6f 6d 5f 73 74 64 69 6e 2c 0a 20 20 20 20 20 20 20 20 20 20 opts,.pp,.from_stdin,...........
13dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 3d 20 ................program_mode.==.
13de0 6d 5f 74 65 73 74 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 63 61 74 63 68 28 20 73 74 64 m_test.);.......}.....catch(.std
13e00 3a 3a 62 61 64 5f 61 6c 6c 6f 63 20 26 20 29 0a 20 20 20 20 20 20 7b 20 70 70 28 20 28 20 70 72 ::bad_alloc.&.).......{.pp(.(.pr
13e20 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 3d 20 6d 5f 63 6f 6d 70 72 65 73 73 20 29 20 3f 0a 20 20 20 ogram_mode.==.m_compress.).?....
13e40 20 20 20 20 20 20 20 20 20 22 4e 6f 74 20 65 6e 6f 75 67 68 20 6d 65 6d 6f 72 79 2e 20 54 72 79 ........."Not.enough.memory..Try
13e60 20 61 20 73 6d 61 6c 6c 65 72 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 2e 22 20 3a 0a 20 .a.smaller.dictionary.size.".:..
13e80 20 20 20 20 20 20 20 20 20 20 20 22 4e 6f 74 20 65 6e 6f 75 67 68 20 6d 65 6d 6f 72 79 2e 22 20 ..........."Not.enough.memory.".
13ea0 29 3b 20 74 6d 70 20 3d 20 31 3b 20 7d 0a 20 20 20 20 63 61 74 63 68 28 20 45 72 72 6f 72 20 26 );.tmp.=.1;.}.....catch(.Error.&
13ec0 20 65 20 29 20 7b 20 70 70 28 29 3b 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 65 2e 6d 73 67 2c 20 .e.).{.pp();.show_error(.e.msg,.
13ee0 65 72 72 6e 6f 20 29 3b 20 74 6d 70 20 3d 20 31 3b 20 7d 0a 20 20 20 20 69 66 28 20 63 6c 6f 73 errno.);.tmp.=.1;.}.....if(.clos
13f00 65 28 20 69 6e 66 64 20 29 20 21 3d 20 30 20 29 0a 20 20 20 20 20 20 7b 20 73 68 6f 77 5f 66 69 e(.infd.).!=.0.).......{.show_fi
13f20 6c 65 5f 65 72 72 6f 72 28 20 70 70 2e 6e 61 6d 65 28 29 2c 20 22 45 72 72 6f 72 20 63 6c 6f 73 le_error(.pp.name(),."Error.clos
13f40 69 6e 67 20 69 6e 70 75 74 20 66 69 6c 65 22 2c 20 65 72 72 6e 6f 20 29 3b 0a 20 20 20 20 20 20 ing.input.file",.errno.);.......
13f60 20 20 73 65 74 5f 72 65 74 76 61 6c 28 20 74 6d 70 2c 20 31 20 29 3b 20 7d 0a 20 20 20 20 73 65 ..set_retval(.tmp,.1.);.}.....se
13f80 74 5f 72 65 74 76 61 6c 28 20 72 65 74 76 61 6c 2c 20 74 6d 70 20 29 3b 0a 20 20 20 20 69 66 28 t_retval(.retval,.tmp.);.....if(
13fa0 20 74 6d 70 20 29 0a 20 20 20 20 20 20 7b 20 69 66 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 .tmp.).......{.if(.program_mode.
13fc0 21 3d 20 6d 5f 74 65 73 74 20 29 20 63 6c 65 61 6e 75 70 5f 61 6e 64 5f 66 61 69 6c 28 20 72 65 !=.m_test.).cleanup_and_fail(.re
13fe0 74 76 61 6c 20 29 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 20 2b 2b 66 61 69 6c 65 64 5f 74 65 tval.);.........else.++failed_te
14000 73 74 73 3b 20 7d 0a 0a 20 20 20 20 69 66 28 20 64 65 6c 65 74 65 5f 6f 75 74 70 75 74 5f 6f 6e sts;.}......if(.delete_output_on
14020 5f 69 6e 74 65 72 72 75 70 74 20 26 26 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 20 29 0a 20 20 20 20 20 _interrupt.&&.one_to_one.)......
14040 20 63 6c 6f 73 65 5f 61 6e 64 5f 73 65 74 5f 70 65 72 6d 69 73 73 69 6f 6e 73 28 20 69 6e 5f 73 .close_and_set_permissions(.in_s
14060 74 61 74 73 70 20 29 3b 0a 20 20 20 20 69 66 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e tatsp.);.....if(.input_filename.
14080 73 69 7a 65 28 29 20 26 26 20 21 6b 65 65 70 5f 69 6e 70 75 74 5f 66 69 6c 65 73 20 26 26 20 6f size().&&.!keep_input_files.&&.o
140a0 6e 65 5f 74 6f 5f 6f 6e 65 20 26 26 0a 20 20 20 20 20 20 20 20 28 20 70 72 6f 67 72 61 6d 5f 6d ne_to_one.&&.........(.program_m
140c0 6f 64 65 20 21 3d 20 6d 5f 63 6f 6d 70 72 65 73 73 20 7c 7c 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 ode.!=.m_compress.||.volume_size
140e0 20 3d 3d 20 30 20 29 20 29 0a 20 20 20 20 20 20 73 74 64 3a 3a 72 65 6d 6f 76 65 28 20 69 6e 70 .==.0.).).......std::remove(.inp
14100 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 74 72 28 29 20 29 3b 0a 20 20 20 20 7d 0a 20 20 69 ut_filename.c_str().);.....}...i
14120 66 28 20 64 65 6c 65 74 65 5f 6f 75 74 70 75 74 5f 6f 6e 5f 69 6e 74 65 72 72 75 70 74 20 29 09 f(.delete_output_on_interrupt.).
14140 09 09 09 09 2f 2f 20 2d 6f 0a 20 20 20 20 63 6c 6f 73 65 5f 61 6e 64 5f 73 65 74 5f 70 65 72 6d ....//.-o.....close_and_set_perm
14160 69 73 73 69 6f 6e 73 28 20 28 20 72 65 74 76 61 6c 20 3d 3d 20 30 20 26 26 20 21 73 74 64 69 6e issions(.(.retval.==.0.&&.!stdin
14180 5f 75 73 65 64 20 26 26 0a 20 20 20 20 20 20 66 69 6c 65 6e 61 6d 65 73 5f 67 69 76 65 6e 20 26 _used.&&.......filenames_given.&
141a0 26 20 66 69 6c 65 6e 61 6d 65 73 2e 73 69 7a 65 28 29 20 3d 3d 20 31 20 29 20 3f 20 26 69 6e 5f &.filenames.size().==.1.).?.&in_
141c0 73 74 61 74 73 20 3a 20 30 20 29 3b 0a 20 20 65 6c 73 65 20 69 66 28 20 6f 75 74 66 64 20 3e 3d stats.:.0.);...else.if(.outfd.>=
141e0 20 30 20 26 26 20 63 6c 6f 73 65 28 20 6f 75 74 66 64 20 29 20 21 3d 20 30 20 29 09 09 09 09 2f .0.&&.close(.outfd.).!=.0.)..../
14200 2f 20 2d 63 0a 20 20 20 20 7b 0a 20 20 20 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 22 45 72 72 6f /.-c.....{.....show_error(."Erro
14220 72 20 63 6c 6f 73 69 6e 67 20 73 74 64 6f 75 74 22 2c 20 65 72 72 6e 6f 20 29 3b 0a 20 20 20 20 r.closing.stdout",.errno.);.....
14240 73 65 74 5f 72 65 74 76 61 6c 28 20 72 65 74 76 61 6c 2c 20 31 20 29 3b 0a 20 20 20 20 7d 0a 20 set_retval(.retval,.1.);.....}..
14260 20 69 66 28 20 66 61 69 6c 65 64 5f 74 65 73 74 73 20 3e 20 30 20 26 26 20 76 65 72 62 6f 73 69 .if(.failed_tests.>.0.&&.verbosi
14280 74 79 20 3e 3d 20 31 20 26 26 20 66 69 6c 65 6e 61 6d 65 73 2e 73 69 7a 65 28 29 20 3e 20 31 20 ty.>=.1.&&.filenames.size().>.1.
142a0 29 0a 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 73 3a ).....std::fprintf(.stderr,."%s:
142c0 20 77 61 72 6e 69 6e 67 3a 20 25 64 20 25 73 20 66 61 69 6c 65 64 20 74 68 65 20 74 65 73 74 2e .warning:.%d.%s.failed.the.test.
142e0 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 67 72 61 6d 5f 6e \n",...................program_n
14300 61 6d 65 2c 20 66 61 69 6c 65 64 5f 74 65 73 74 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ame,.failed_tests,..............
14320 20 20 20 20 20 28 20 66 61 69 6c 65 64 5f 74 65 73 74 73 20 3d 3d 20 31 20 29 20 3f 20 22 66 69 .....(.failed_tests.==.1.).?."fi
14340 6c 65 22 20 3a 20 22 66 69 6c 65 73 22 20 29 3b 0a 20 20 72 65 74 75 72 6e 20 72 65 74 76 61 6c le".:."files".);...return.retval
14360 3b 0a 20 20 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ;...}...........................
14380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
143a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
143c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
143e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14400 6c 7a 69 70 2d 31 2e 32 35 2f 4e 45 57 53 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/NEWS..................
14420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14460 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
14480 30 30 30 30 35 32 34 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 33 31 33 31 00 20 30 00 00 00 0000524.14744236057.013131..0...
144a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
144c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
144e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14500 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
14520 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
14540 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
14560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
145a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
145c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
145e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14600 43 68 61 6e 67 65 73 20 69 6e 20 76 65 72 73 69 6f 6e 20 31 2e 32 35 3a 0a 0a 6c 7a 69 70 20 6e Changes.in.version.1.25:..lzip.n
14620 6f 77 20 65 78 69 74 73 20 77 69 74 68 20 65 72 72 6f 72 20 73 74 61 74 75 73 20 32 20 69 66 20 ow.exits.with.error.status.2.if.
14640 61 6e 79 20 65 6d 70 74 79 20 6d 65 6d 62 65 72 20 69 73 20 66 6f 75 6e 64 20 69 6e 20 61 0a 6d any.empty.member.is.found.in.a.m
14660 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 2e 0a 0a 6c 7a 69 70 20 6e 6f 77 20 65 78 69 74 73 ultimember.file...lzip.now.exits
14680 20 77 69 74 68 20 65 72 72 6f 72 20 73 74 61 74 75 73 20 32 20 69 66 20 74 68 65 20 66 69 72 73 .with.error.status.2.if.the.firs
146a0 74 20 62 79 74 65 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 73 0a 6e 6f 74 t.byte.of.the.LZMA.stream.is.not
146c0 20 30 2e 0a 0a 4f 70 74 69 6f 6e 73 20 27 2d 2d 65 6d 70 74 79 2d 65 72 72 6f 72 27 20 61 6e 64 .0...Options.'--empty-error'.and
146e0 20 27 2d 2d 6d 61 72 6b 69 6e 67 2d 65 72 72 6f 72 27 20 68 61 76 65 20 62 65 65 6e 20 72 65 6d .'--marking-error'.have.been.rem
14700 6f 76 65 64 2e 0a 0a 54 68 65 20 63 68 61 70 74 65 72 20 27 53 79 6e 74 61 78 20 6f 66 20 63 6f oved...The.chapter.'Syntax.of.co
14720 6d 6d 61 6e 64 2d 6c 69 6e 65 20 61 72 67 75 6d 65 6e 74 73 27 20 68 61 73 20 62 65 65 6e 20 61 mmand-line.arguments'.has.been.a
14740 64 64 65 64 20 74 6f 20 74 68 65 20 6d 61 6e 75 61 6c 2e 0a 00 00 00 00 00 00 00 00 00 00 00 00 dded.to.the.manual..............
14760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
147a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
147c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
147e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14800 6c 7a 69 70 2d 31 2e 32 35 2f 41 55 54 48 4f 52 53 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/AUTHORS...............
14820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14860 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
14880 30 30 30 30 35 35 36 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 33 35 30 37 00 20 30 00 00 00 0000556.14744236057.013507..0...
148a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
148c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
148e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14900 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
14920 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
14940 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
14960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
149a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
149c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
149e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14a00 4c 7a 69 70 20 77 61 73 20 77 72 69 74 74 65 6e 20 62 79 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a Lzip.was.written.by.Antonio.Diaz
14a20 20 44 69 61 7a 2e 0a 0a 54 68 65 20 69 64 65 61 73 20 65 6d 62 6f 64 69 65 64 20 69 6e 20 6c 7a .Diaz...The.ideas.embodied.in.lz
14a40 69 70 20 61 72 65 20 64 75 65 20 74 6f 20 28 61 74 20 6c 65 61 73 74 29 20 74 68 65 20 66 6f 6c ip.are.due.to.(at.least).the.fol
14a60 6c 6f 77 69 6e 67 20 70 65 6f 70 6c 65 3a 0a 41 62 72 61 68 61 6d 20 4c 65 6d 70 65 6c 20 61 6e lowing.people:.Abraham.Lempel.an
14a80 64 20 4a 61 63 6f 62 20 5a 69 76 20 28 66 6f 72 20 74 68 65 20 4c 5a 20 61 6c 67 6f 72 69 74 68 d.Jacob.Ziv.(for.the.LZ.algorith
14aa0 6d 29 2c 20 41 6e 64 72 65 69 20 4d 61 72 6b 6f 76 20 28 66 6f 72 20 74 68 65 0a 64 65 66 69 6e m),.Andrei.Markov.(for.the.defin
14ac0 69 74 69 6f 6e 20 6f 66 20 4d 61 72 6b 6f 76 20 63 68 61 69 6e 73 29 2c 20 47 2e 4e 2e 4e 2e 20 ition.of.Markov.chains),.G.N.N..
14ae0 4d 61 72 74 69 6e 20 28 66 6f 72 20 74 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 72 61 Martin.(for.the.definition.of.ra
14b00 6e 67 65 0a 65 6e 63 6f 64 69 6e 67 29 2c 20 49 67 6f 72 20 50 61 76 6c 6f 76 20 28 66 6f 72 20 nge.encoding),.Igor.Pavlov.(for.
14b20 70 75 74 74 69 6e 67 20 61 6c 6c 20 74 68 65 20 61 62 6f 76 65 20 74 6f 67 65 74 68 65 72 20 69 putting.all.the.above.together.i
14b40 6e 20 4c 5a 4d 41 29 2c 20 61 6e 64 0a 4a 75 6c 69 61 6e 20 53 65 77 61 72 64 20 28 66 6f 72 20 n.LZMA),.and.Julian.Seward.(for.
14b60 62 7a 69 70 32 27 73 20 43 4c 49 29 2e 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 bzip2's.CLI)....................
14b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c00 6c 7a 69 70 2d 31 2e 32 35 2f 65 6e 63 6f 64 65 72 2e 68 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/encoder.h.............
14c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
14c80 30 30 32 31 36 34 35 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 34 32 33 31 00 20 30 00 00 00 0021645.14744236057.014231..0...
14ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14d00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
14d20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
14d40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
14d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14e00 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
14e20 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
14e40 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
14e60 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
14e80 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
14ea0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
14ec0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
14ee0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
14f00 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
14f20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
14f40 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
14f60 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
14f80 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
14fa0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
14fc0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
14fe0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
15000 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
15020 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
15040 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
15060 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
15080 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
150a0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
150c0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 63 6c 61 /www.gnu.org/licenses/>..*/..cla
150e0 73 73 20 4c 65 6e 5f 70 72 69 63 65 73 0a 20 20 7b 0a 20 20 63 6f 6e 73 74 20 4c 65 6e 5f 6d 6f ss.Len_prices...{...const.Len_mo
15100 64 65 6c 20 26 20 6c 6d 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 6c 65 6e 5f 73 79 6d 62 6f 6c del.&.lm;...const.int.len_symbol
15120 73 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 63 6f 75 6e 74 3b 0a 20 20 69 6e 74 20 70 72 69 63 s;...const.int.count;...int.pric
15140 65 73 5b 70 6f 73 5f 73 74 61 74 65 73 5d 5b 6d 61 78 5f 6c 65 6e 5f 73 79 6d 62 6f 6c 73 5d 3b es[pos_states][max_len_symbols];
15160 0a 20 20 69 6e 74 20 63 6f 75 6e 74 65 72 73 5b 70 6f 73 5f 73 74 61 74 65 73 5d 3b 09 09 09 2f ...int.counters[pos_states];.../
15180 2f 20 6d 61 79 20 64 65 63 72 65 6d 65 6e 74 20 62 65 6c 6f 77 20 30 0a 0a 20 20 76 6f 69 64 20 /.may.decrement.below.0....void.
151a0 75 70 64 61 74 65 5f 6c 6f 77 5f 6d 69 64 5f 70 72 69 63 65 73 28 20 63 6f 6e 73 74 20 69 6e 74 update_low_mid_prices(.const.int
151c0 20 70 6f 73 5f 73 74 61 74 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 6e 74 20 2a 20 63 6f 6e .pos_state.).....{.....int.*.con
151e0 73 74 20 70 70 73 20 3d 20 70 72 69 63 65 73 5b 70 6f 73 5f 73 74 61 74 65 5d 3b 0a 20 20 20 20 st.pps.=.prices[pos_state];.....
15200 69 6e 74 20 74 6d 70 20 3d 20 70 72 69 63 65 30 28 20 6c 6d 2e 63 68 6f 69 63 65 31 20 29 3b 0a int.tmp.=.price0(.lm.choice1.);.
15220 20 20 20 20 69 6e 74 20 6c 65 6e 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 3b 20 6c 65 6e 20 ....int.len.=.0;.....for(.;.len.
15240 3c 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 26 26 20 6c 65 6e 20 3c 20 6c 65 6e 5f 73 <.len_low_symbols.&&.len.<.len_s
15260 79 6d 62 6f 6c 73 3b 20 2b 2b 6c 65 6e 20 29 0a 20 20 20 20 20 20 70 70 73 5b 6c 65 6e 5d 20 3d ymbols;.++len.).......pps[len].=
15280 20 74 6d 70 20 2b 20 70 72 69 63 65 5f 73 79 6d 62 6f 6c 33 28 20 6c 6d 2e 62 6d 5f 6c 6f 77 5b .tmp.+.price_symbol3(.lm.bm_low[
152a0 70 6f 73 5f 73 74 61 74 65 5d 2c 20 6c 65 6e 20 29 3b 0a 20 20 20 20 69 66 28 20 6c 65 6e 20 3e pos_state],.len.);.....if(.len.>
152c0 3d 20 6c 65 6e 5f 73 79 6d 62 6f 6c 73 20 29 20 72 65 74 75 72 6e 3b 0a 20 20 20 20 74 6d 70 20 =.len_symbols.).return;.....tmp.
152e0 3d 20 70 72 69 63 65 31 28 20 6c 6d 2e 63 68 6f 69 63 65 31 20 29 20 2b 20 70 72 69 63 65 30 28 =.price1(.lm.choice1.).+.price0(
15300 20 6c 6d 2e 63 68 6f 69 63 65 32 20 29 3b 0a 20 20 20 20 66 6f 72 28 20 3b 20 6c 65 6e 20 3c 20 .lm.choice2.);.....for(.;.len.<.
15320 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 2b 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c len_low_symbols.+.len_mid_symbol
15340 73 20 26 26 20 6c 65 6e 20 3c 20 6c 65 6e 5f 73 79 6d 62 6f 6c 73 3b 20 2b 2b 6c 65 6e 20 29 0a s.&&.len.<.len_symbols;.++len.).
15360 20 20 20 20 20 20 70 70 73 5b 6c 65 6e 5d 20 3d 20 74 6d 70 20 2b 0a 20 20 20 20 20 20 20 20 20 ......pps[len].=.tmp.+..........
15380 20 20 20 20 20 20 20 20 70 72 69 63 65 5f 73 79 6d 62 6f 6c 33 28 20 6c 6d 2e 62 6d 5f 6d 69 64 ........price_symbol3(.lm.bm_mid
153a0 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 6c 65 6e 20 2d 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f [pos_state],.len.-.len_low_symbo
153c0 6c 73 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 75 70 64 61 74 65 5f 68 69 67 68 5f ls.);.....}....void.update_high_
153e0 70 72 69 63 65 73 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 74 6d 70 prices().....{.....const.int.tmp
15400 20 3d 20 70 72 69 63 65 31 28 20 6c 6d 2e 63 68 6f 69 63 65 31 20 29 20 2b 20 70 72 69 63 65 31 .=.price1(.lm.choice1.).+.price1
15420 28 20 6c 6d 2e 63 68 6f 69 63 65 32 20 29 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 6c 65 6e (.lm.choice2.);.....for(.int.len
15440 20 3d 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 2b 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d .=.len_low_symbols.+.len_mid_sym
15460 62 6f 6c 73 3b 20 6c 65 6e 20 3c 20 6c 65 6e 5f 73 79 6d 62 6f 6c 73 3b 20 2b 2b 6c 65 6e 20 29 bols;.len.<.len_symbols;.++len.)
15480 0a 20 20 20 20 20 20 2f 2f 20 75 73 69 6e 67 20 34 20 73 6c 6f 74 73 20 70 65 72 20 76 61 6c 75 .......//.using.4.slots.per.valu
154a0 65 20 6d 61 6b 65 73 20 22 70 72 69 63 65 22 20 66 61 73 74 65 72 0a 20 20 20 20 20 20 70 72 69 e.makes."price".faster.......pri
154c0 63 65 73 5b 33 5d 5b 6c 65 6e 5d 20 3d 20 70 72 69 63 65 73 5b 32 5d 5b 6c 65 6e 5d 20 3d 20 70 ces[3][len].=.prices[2][len].=.p
154e0 72 69 63 65 73 5b 31 5d 5b 6c 65 6e 5d 20 3d 20 70 72 69 63 65 73 5b 30 5d 5b 6c 65 6e 5d 20 3d rices[1][len].=.prices[0][len].=
15500 20 74 6d 70 20 2b 0a 20 20 20 20 20 20 20 20 70 72 69 63 65 5f 73 79 6d 62 6f 6c 38 28 20 6c 6d .tmp.+.........price_symbol8(.lm
15520 2e 62 6d 5f 68 69 67 68 2c 20 6c 65 6e 20 2d 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 .bm_high,.len.-.len_low_symbols.
15540 2d 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 20 29 3b 0a 20 20 20 20 7d 0a 0a 70 75 62 6c -.len_mid_symbols.);.....}..publ
15560 69 63 3a 0a 20 20 76 6f 69 64 20 72 65 73 65 74 28 29 20 7b 20 66 6f 72 28 20 69 6e 74 20 69 20 ic:...void.reset().{.for(.int.i.
15580 3d 20 30 3b 20 69 20 3c 20 70 6f 73 5f 73 74 61 74 65 73 3b 20 2b 2b 69 20 29 20 63 6f 75 6e 74 =.0;.i.<.pos_states;.++i.).count
155a0 65 72 73 5b 69 5d 20 3d 20 30 3b 20 7d 0a 0a 20 20 4c 65 6e 5f 70 72 69 63 65 73 28 20 63 6f 6e ers[i].=.0;.}....Len_prices(.con
155c0 73 74 20 4c 65 6e 5f 6d 6f 64 65 6c 20 26 20 6d 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6d 61 74 63 st.Len_model.&.m,.const.int.matc
155e0 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 29 0a 20 20 20 20 3a 0a 20 20 20 20 6c 6d 28 20 6d 20 29 2c h_len_limit.).....:.....lm(.m.),
15600 0a 20 20 20 20 6c 65 6e 5f 73 79 6d 62 6f 6c 73 28 20 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 .....len_symbols(.match_len_limi
15620 74 20 2b 20 31 20 2d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 2c 0a 20 20 20 20 63 6f 75 t.+.1.-.min_match_len.),.....cou
15640 6e 74 28 20 28 20 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 3e 20 31 32 20 29 20 3f 20 31 nt(.(.match_len_limit.>.12.).?.1
15660 20 3a 20 6c 65 6e 5f 73 79 6d 62 6f 6c 73 20 29 0a 20 20 20 20 7b 20 72 65 73 65 74 28 29 3b 20 .:.len_symbols.).....{.reset();.
15680 7d 0a 0a 20 20 76 6f 69 64 20 64 65 63 72 65 6d 65 6e 74 5f 63 6f 75 6e 74 65 72 28 20 63 6f 6e }....void.decrement_counter(.con
156a0 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 20 29 20 7b 20 2d 2d 63 6f 75 6e 74 65 72 73 5b st.int.pos_state.).{.--counters[
156c0 70 6f 73 5f 73 74 61 74 65 5d 3b 20 7d 0a 0a 20 20 76 6f 69 64 20 75 70 64 61 74 65 5f 70 72 69 pos_state];.}....void.update_pri
156e0 63 65 73 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 62 6f 6f 6c 20 68 69 67 68 5f 70 65 6e 64 69 6e ces().....{.....bool.high_pendin
15700 67 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 g.=.false;.....for(.int.pos_stat
15720 65 20 3d 20 30 3b 20 70 6f 73 5f 73 74 61 74 65 20 3c 20 70 6f 73 5f 73 74 61 74 65 73 3b 20 2b e.=.0;.pos_state.<.pos_states;.+
15740 2b 70 6f 73 5f 73 74 61 74 65 20 29 0a 20 20 20 20 20 20 69 66 28 20 63 6f 75 6e 74 65 72 73 5b +pos_state.).......if(.counters[
15760 70 6f 73 5f 73 74 61 74 65 5d 20 3c 3d 20 30 20 29 0a 20 20 20 20 20 20 20 20 7b 20 63 6f 75 6e pos_state].<=.0.).........{.coun
15780 74 65 72 73 5b 70 6f 73 5f 73 74 61 74 65 5d 20 3d 20 63 6f 75 6e 74 3b 0a 20 20 20 20 20 20 20 ters[pos_state].=.count;........
157a0 20 20 20 75 70 64 61 74 65 5f 6c 6f 77 5f 6d 69 64 5f 70 72 69 63 65 73 28 20 70 6f 73 5f 73 74 ...update_low_mid_prices(.pos_st
157c0 61 74 65 20 29 3b 20 68 69 67 68 5f 70 65 6e 64 69 6e 67 20 3d 20 74 72 75 65 3b 20 7d 0a 20 20 ate.);.high_pending.=.true;.}...
157e0 20 20 69 66 28 20 68 69 67 68 5f 70 65 6e 64 69 6e 67 20 26 26 20 6c 65 6e 5f 73 79 6d 62 6f 6c ..if(.high_pending.&&.len_symbol
15800 73 20 3e 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 2b 20 6c 65 6e 5f 6d 69 64 5f 73 79 s.>.len_low_symbols.+.len_mid_sy
15820 6d 62 6f 6c 73 20 29 0a 20 20 20 20 20 20 75 70 64 61 74 65 5f 68 69 67 68 5f 70 72 69 63 65 73 mbols.).......update_high_prices
15840 28 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 6e 74 20 70 72 69 63 65 28 20 63 6f 6e 73 74 20 69 6e ();.....}....int.price(.const.in
15860 74 20 6c 65 6e 2c 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 20 29 20 63 6f 6e t.len,.const.int.pos_state.).con
15880 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 70 72 69 63 65 73 5b 70 6f 73 5f 73 74 61 74 65 st.....{.return.prices[pos_state
158a0 5d 5b 6c 65 6e 20 2d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 5d 3b 20 7d 0a 20 20 7d 3b 0a 0a ][len.-.min_match_len];.}...};..
158c0 0a 63 6c 61 73 73 20 4c 5a 5f 65 6e 63 6f 64 65 72 20 3a 20 70 75 62 6c 69 63 20 4c 5a 5f 65 6e .class.LZ_encoder.:.public.LZ_en
158e0 63 6f 64 65 72 5f 62 61 73 65 0a 20 20 7b 0a 20 20 73 74 72 75 63 74 20 50 61 69 72 09 09 09 2f coder_base...{...struct.Pair.../
15900 2f 20 64 69 73 74 61 6e 63 65 2d 6c 65 6e 67 74 68 20 70 61 69 72 0a 20 20 20 20 7b 0a 20 20 20 /.distance-length.pair.....{....
15920 20 69 6e 74 20 64 69 73 3b 0a 20 20 20 20 69 6e 74 20 6c 65 6e 3b 0a 20 20 20 20 7d 3b 0a 0a 20 .int.dis;.....int.len;.....};...
15940 20 65 6e 75 6d 20 7b 20 69 6e 66 69 6e 69 74 65 5f 70 72 69 63 65 20 3d 20 30 78 30 46 46 46 46 .enum.{.infinite_price.=.0x0FFFF
15960 46 46 46 2c 0a 20 20 20 20 20 20 20 20 20 6d 61 78 5f 6e 75 6d 5f 74 72 69 61 6c 73 20 3d 20 31 FFF,..........max_num_trials.=.1
15980 20 3c 3c 20 31 33 2c 0a 20 20 20 20 20 20 20 20 20 73 69 6e 67 6c 65 5f 73 74 65 70 5f 74 72 69 .<<.13,..........single_step_tri
159a0 61 6c 20 3d 20 2d 32 2c 0a 20 20 20 20 20 20 20 20 20 64 75 61 6c 5f 73 74 65 70 5f 74 72 69 61 al.=.-2,..........dual_step_tria
159c0 6c 20 3d 20 2d 31 20 7d 3b 0a 0a 20 20 73 74 72 75 63 74 20 54 72 69 61 6c 0a 20 20 20 20 7b 0a l.=.-1.};....struct.Trial.....{.
159e0 20 20 20 20 53 74 61 74 65 20 73 74 61 74 65 3b 0a 20 20 20 20 69 6e 74 20 70 72 69 63 65 3b 09 ....State.state;.....int.price;.
15a00 09 2f 2f 20 64 75 61 6c 20 75 73 65 20 76 61 72 3b 20 63 75 6d 75 6c 61 74 69 76 65 20 70 72 69 .//.dual.use.var;.cumulative.pri
15a20 63 65 2c 20 6d 61 74 63 68 20 6c 65 6e 67 74 68 0a 20 20 20 20 69 6e 74 20 64 69 73 34 3b 09 09 ce,.match.length.....int.dis4;..
15a40 2f 2f 20 2d 31 20 66 6f 72 20 6c 69 74 65 72 61 6c 2c 20 6f 72 20 72 65 70 2c 20 6f 72 20 6d 61 //.-1.for.literal,.or.rep,.or.ma
15a60 74 63 68 20 64 69 73 74 61 6e 63 65 20 2b 20 34 0a 20 20 20 20 69 6e 74 20 70 72 65 76 5f 69 6e tch.distance.+.4.....int.prev_in
15a80 64 65 78 3b 09 2f 2f 20 69 6e 64 65 78 20 6f 66 20 70 72 65 76 20 74 72 69 61 6c 20 69 6e 20 74 dex;.//.index.of.prev.trial.in.t
15aa0 72 69 61 6c 73 5b 5d 0a 20 20 20 20 69 6e 74 20 70 72 65 76 5f 69 6e 64 65 78 32 3b 09 2f 2f 20 rials[].....int.prev_index2;.//.
15ac0 20 20 2d 32 20 20 74 72 69 61 6c 20 69 73 20 73 69 6e 67 6c 65 20 73 74 65 70 0a 09 09 09 2f 2f ..-2..trial.is.single.step....//
15ae0 20 20 20 2d 31 20 20 6c 69 74 65 72 61 6c 20 2b 20 72 65 70 30 0a 09 09 09 2f 2f 20 3e 3d 20 30 ...-1..literal.+.rep0....//.>=.0
15b00 20 20 28 20 72 65 70 20 6f 72 20 6d 61 74 63 68 20 29 20 2b 20 6c 69 74 65 72 61 6c 20 2b 20 72 ..(.rep.or.match.).+.literal.+.r
15b20 65 70 30 0a 20 20 20 20 69 6e 74 20 72 65 70 73 5b 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 ep0.....int.reps[num_rep_distanc
15b40 65 73 5d 3b 0a 0a 20 20 20 20 76 6f 69 64 20 75 70 64 61 74 65 28 20 63 6f 6e 73 74 20 69 6e 74 es];......void.update(.const.int
15b60 20 70 72 2c 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 73 74 61 6e 63 65 34 2c 20 63 6f 6e 73 74 20 .pr,.const.int.distance4,.const.
15b80 69 6e 74 20 70 5f 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 70 72 20 3c int.p_i.).......{.......if(.pr.<
15ba0 20 70 72 69 63 65 20 29 0a 20 20 20 20 20 20 20 20 7b 20 70 72 69 63 65 20 3d 20 70 72 3b 20 64 .price.).........{.price.=.pr;.d
15bc0 69 73 34 20 3d 20 64 69 73 74 61 6e 63 65 34 3b 20 70 72 65 76 5f 69 6e 64 65 78 20 3d 20 70 5f is4.=.distance4;.prev_index.=.p_
15be0 69 3b 0a 20 20 20 20 20 20 20 20 20 20 70 72 65 76 5f 69 6e 64 65 78 32 20 3d 20 73 69 6e 67 6c i;...........prev_index2.=.singl
15c00 65 5f 73 74 65 70 5f 74 72 69 61 6c 3b 20 7d 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 76 6f 69 e_step_trial;.}.......}......voi
15c20 64 20 75 70 64 61 74 65 32 28 20 63 6f 6e 73 74 20 69 6e 74 20 70 72 2c 20 63 6f 6e 73 74 20 69 d.update2(.const.int.pr,.const.i
15c40 6e 74 20 70 5f 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 70 72 20 3c 20 nt.p_i.).......{.......if(.pr.<.
15c60 70 72 69 63 65 20 29 0a 20 20 20 20 20 20 20 20 7b 20 70 72 69 63 65 20 3d 20 70 72 3b 20 64 69 price.).........{.price.=.pr;.di
15c80 73 34 20 3d 20 30 3b 20 70 72 65 76 5f 69 6e 64 65 78 20 3d 20 70 5f 69 3b 0a 20 20 20 20 20 20 s4.=.0;.prev_index.=.p_i;.......
15ca0 20 20 20 20 70 72 65 76 5f 69 6e 64 65 78 32 20 3d 20 64 75 61 6c 5f 73 74 65 70 5f 74 72 69 61 ....prev_index2.=.dual_step_tria
15cc0 6c 3b 20 7d 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 76 6f 69 64 20 75 70 64 61 74 65 33 28 20 l;.}.......}......void.update3(.
15ce0 63 6f 6e 73 74 20 69 6e 74 20 70 72 2c 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 73 74 61 6e 63 65 const.int.pr,.const.int.distance
15d00 34 2c 20 63 6f 6e 73 74 20 69 6e 74 20 70 5f 69 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4,.const.int.p_i,...............
15d20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 5f 69 32 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 ....const.int.p_i2.).......{....
15d40 20 20 20 69 66 28 20 70 72 20 3c 20 70 72 69 63 65 20 29 0a 20 20 20 20 20 20 20 20 7b 20 70 72 ...if(.pr.<.price.).........{.pr
15d60 69 63 65 20 3d 20 70 72 3b 20 64 69 73 34 20 3d 20 64 69 73 74 61 6e 63 65 34 3b 20 70 72 65 76 ice.=.pr;.dis4.=.distance4;.prev
15d80 5f 69 6e 64 65 78 20 3d 20 70 5f 69 3b 0a 20 20 20 20 20 20 20 20 20 20 70 72 65 76 5f 69 6e 64 _index.=.p_i;...........prev_ind
15da0 65 78 32 20 3d 20 70 5f 69 32 3b 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 3b 0a 0a 20 20 ex2.=.p_i2;.}.......}.....};....
15dc0 63 6f 6e 73 74 20 69 6e 74 20 63 79 63 6c 65 73 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 6d 61 const.int.cycles;...const.int.ma
15de0 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 3b 0a 20 20 4c 65 6e 5f 70 72 69 63 65 73 20 6d 61 74 63 tch_len_limit;...Len_prices.matc
15e00 68 5f 6c 65 6e 5f 70 72 69 63 65 73 3b 0a 20 20 4c 65 6e 5f 70 72 69 63 65 73 20 72 65 70 5f 6c h_len_prices;...Len_prices.rep_l
15e20 65 6e 5f 70 72 69 63 65 73 3b 0a 20 20 69 6e 74 20 70 65 6e 64 69 6e 67 5f 6e 75 6d 5f 70 61 69 en_prices;...int.pending_num_pai
15e40 72 73 3b 0a 20 20 50 61 69 72 20 70 61 69 72 73 5b 6d 61 78 5f 6d 61 74 63 68 5f 6c 65 6e 2b 31 rs;...Pair.pairs[max_match_len+1
15e60 5d 3b 0a 20 20 54 72 69 61 6c 20 74 72 69 61 6c 73 5b 6d 61 78 5f 6e 75 6d 5f 74 72 69 61 6c 73 ];...Trial.trials[max_num_trials
15e80 5d 3b 0a 0a 20 20 69 6e 74 20 64 69 73 5f 73 6c 6f 74 5f 70 72 69 63 65 73 5b 6c 65 6e 5f 73 74 ];....int.dis_slot_prices[len_st
15ea0 61 74 65 73 5d 5b 32 2a 6d 61 78 5f 64 69 63 74 69 6f 6e 61 72 79 5f 62 69 74 73 5d 3b 0a 20 20 ates][2*max_dictionary_bits];...
15ec0 69 6e 74 20 64 69 73 5f 70 72 69 63 65 73 5b 6c 65 6e 5f 73 74 61 74 65 73 5d 5b 6d 6f 64 65 6c int.dis_prices[len_states][model
15ee0 65 64 5f 64 69 73 74 61 6e 63 65 73 5d 3b 0a 20 20 69 6e 74 20 61 6c 69 67 6e 5f 70 72 69 63 65 ed_distances];...int.align_price
15f00 73 5b 64 69 73 5f 61 6c 69 67 6e 5f 73 69 7a 65 5d 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 6e s[dis_align_size];...const.int.n
15f20 75 6d 5f 64 69 73 5f 73 6c 6f 74 73 3b 0a 0a 20 20 62 6f 6f 6c 20 64 65 63 5f 70 6f 73 28 20 63 um_dis_slots;....bool.dec_pos(.c
15f40 6f 6e 73 74 20 69 6e 74 20 61 68 65 61 64 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 61 onst.int.ahead.).....{.....if(.a
15f60 68 65 61 64 20 3c 20 30 20 7c 7c 20 70 6f 73 20 3c 20 61 68 65 61 64 20 29 20 72 65 74 75 72 6e head.<.0.||.pos.<.ahead.).return
15f80 20 66 61 6c 73 65 3b 0a 20 20 20 20 70 6f 73 20 2d 3d 20 61 68 65 61 64 3b 0a 20 20 20 20 69 66 .false;.....pos.-=.ahead;.....if
15fa0 28 20 63 79 63 6c 69 63 5f 70 6f 73 20 3c 20 61 68 65 61 64 20 29 20 63 79 63 6c 69 63 5f 70 6f (.cyclic_pos.<.ahead.).cyclic_po
15fc0 73 20 2b 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 2b 20 31 3b 0a 20 20 20 20 63 79 s.+=.dictionary_size.+.1;.....cy
15fe0 63 6c 69 63 5f 70 6f 73 20 2d 3d 20 61 68 65 61 64 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 74 72 clic_pos.-=.ahead;.....return.tr
16000 75 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 6e 74 20 67 65 74 5f 6d 61 74 63 68 5f 70 61 69 72 73 ue;.....}....int.get_match_pairs
16020 28 20 50 61 69 72 20 2a 20 70 61 69 72 73 20 3d 20 30 20 29 3b 0a 20 20 76 6f 69 64 20 75 70 64 (.Pair.*.pairs.=.0.);...void.upd
16040 61 74 65 5f 64 69 73 74 61 6e 63 65 5f 70 72 69 63 65 73 28 29 3b 0a 0a 20 20 20 20 20 20 20 2f ate_distance_prices();........./
16060 2f 20 6d 6f 76 65 2d 74 6f 2d 66 72 6f 6e 74 20 64 69 73 20 69 6e 2f 69 6e 74 6f 20 72 65 70 73 /.move-to-front.dis.in/into.reps
16080 3b 20 64 6f 20 6e 6f 74 68 69 6e 67 20 69 66 28 20 64 69 73 34 20 3c 3d 20 30 20 29 0a 20 20 73 ;.do.nothing.if(.dis4.<=.0.)...s
160a0 74 61 74 69 63 20 76 6f 69 64 20 6d 74 66 5f 72 65 70 73 28 20 63 6f 6e 73 74 20 69 6e 74 20 64 tatic.void.mtf_reps(.const.int.d
160c0 69 73 34 2c 20 69 6e 74 20 72 65 70 73 5b 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 5d is4,.int.reps[num_rep_distances]
160e0 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 64 69 73 34 20 3e 3d 20 6e 75 6d 5f 72 65 70 .).....{.....if(.dis4.>=.num_rep
16100 5f 64 69 73 74 61 6e 63 65 73 20 29 09 09 09 2f 2f 20 6d 61 74 63 68 0a 20 20 20 20 20 20 7b 0a _distances.)...//.match.......{.
16120 20 20 20 20 20 20 72 65 70 73 5b 33 5d 20 3d 20 72 65 70 73 5b 32 5d 3b 20 72 65 70 73 5b 32 5d ......reps[3].=.reps[2];.reps[2]
16140 20 3d 20 72 65 70 73 5b 31 5d 3b 20 72 65 70 73 5b 31 5d 20 3d 20 72 65 70 73 5b 30 5d 3b 0a 20 .=.reps[1];.reps[1].=.reps[0];..
16160 20 20 20 20 20 72 65 70 73 5b 30 5d 20 3d 20 64 69 73 34 20 2d 20 6e 75 6d 5f 72 65 70 5f 64 69 .....reps[0].=.dis4.-.num_rep_di
16180 73 74 61 6e 63 65 73 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 20 69 66 28 20 64 69 stances;.......}.....else.if(.di
161a0 73 34 20 3e 20 30 20 29 09 09 09 09 2f 2f 20 72 65 70 65 61 74 65 64 20 6d 61 74 63 68 0a 20 20 s4.>.0.)....//.repeated.match...
161c0 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 73 74 61 6e 63 65 20 3d ....{.......const.int.distance.=
161e0 20 72 65 70 73 5b 64 69 73 34 5d 3b 0a 20 20 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 .reps[dis4];.......for(.int.i.=.
16200 64 69 73 34 3b 20 69 20 3e 20 30 3b 20 2d 2d 69 20 29 20 72 65 70 73 5b 69 5d 20 3d 20 72 65 70 dis4;.i.>.0;.--i.).reps[i].=.rep
16220 73 5b 69 2d 31 5d 3b 0a 20 20 20 20 20 20 72 65 70 73 5b 30 5d 20 3d 20 64 69 73 74 61 6e 63 65 s[i-1];.......reps[0].=.distance
16240 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 69 6e 74 20 70 72 69 63 65 5f 73 68 6f ;.......}.....}....int.price_sho
16260 72 74 72 65 70 28 20 63 6f 6e 73 74 20 53 74 61 74 65 20 73 74 61 74 65 2c 20 63 6f 6e 73 74 20 rtrep(.const.State.state,.const.
16280 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 int.pos_state.).const.....{.....
162a0 72 65 74 75 72 6e 20 70 72 69 63 65 30 28 20 62 6d 5f 72 65 70 30 5b 73 74 61 74 65 28 29 5d 20 return.price0(.bm_rep0[state()].
162c0 29 20 2b 20 70 72 69 63 65 30 28 20 62 6d 5f 6c 65 6e 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f ).+.price0(.bm_len[state()][pos_
162e0 73 74 61 74 65 5d 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 6e 74 20 70 72 69 63 65 5f 72 65 70 state].);.....}....int.price_rep
16300 28 20 63 6f 6e 73 74 20 69 6e 74 20 72 65 70 2c 20 63 6f 6e 73 74 20 53 74 61 74 65 20 73 74 61 (.const.int.rep,.const.State.sta
16320 74 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 20 29 20 63 6f 6e 73 74 0a te,.const.int.pos_state.).const.
16340 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 72 65 70 20 3d 3d 20 30 20 29 20 72 65 74 75 72 6e 20 ....{.....if(.rep.==.0.).return.
16360 70 72 69 63 65 30 28 20 62 6d 5f 72 65 70 30 5b 73 74 61 74 65 28 29 5d 20 29 20 2b 0a 20 20 20 price0(.bm_rep0[state()].).+....
16380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 31 28 20 62 .......................price1(.b
163a0 6d 5f 6c 65 6e 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 20 29 3b 0a 20 20 20 m_len[state()][pos_state].);....
163c0 20 69 6e 74 20 70 72 69 63 65 20 3d 20 70 72 69 63 65 31 28 20 62 6d 5f 72 65 70 30 5b 73 74 61 .int.price.=.price1(.bm_rep0[sta
163e0 74 65 28 29 5d 20 29 3b 0a 20 20 20 20 69 66 28 20 72 65 70 20 3d 3d 20 31 20 29 0a 20 20 20 20 te()].);.....if(.rep.==.1.).....
16400 20 20 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 30 28 20 62 6d 5f 72 65 70 31 5b 73 74 61 74 65 ..price.+=.price0(.bm_rep1[state
16420 28 29 5d 20 29 3b 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 70 72 ()].);.....else.......{.......pr
16440 69 63 65 20 2b 3d 20 70 72 69 63 65 31 28 20 62 6d 5f 72 65 70 31 5b 73 74 61 74 65 28 29 5d 20 ice.+=.price1(.bm_rep1[state()].
16460 29 3b 0a 20 20 20 20 20 20 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5f );.......price.+=.price_bit(.bm_
16480 72 65 70 32 5b 73 74 61 74 65 28 29 5d 2c 20 72 65 70 20 2d 20 32 20 29 3b 0a 20 20 20 20 20 20 rep2[state()],.rep.-.2.);.......
164a0 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 70 72 69 63 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 6e 74 }.....return.price;.....}....int
164c0 20 70 72 69 63 65 5f 72 65 70 30 5f 6c 65 6e 28 20 63 6f 6e 73 74 20 69 6e 74 20 6c 65 6e 2c 20 .price_rep0_len(.const.int.len,.
164e0 63 6f 6e 73 74 20 53 74 61 74 65 20 73 74 61 74 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 const.State.state,.const.int.pos
16500 5f 73 74 61 74 65 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 72 65 74 75 72 6e 20 _state.).const.....{.....return.
16520 70 72 69 63 65 5f 72 65 70 28 20 30 2c 20 73 74 61 74 65 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 price_rep(.0,.state,.pos_state.)
16540 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 72 65 70 5f 6c 65 6e 5f 70 72 69 63 65 73 2e 70 72 69 .+............rep_len_prices.pri
16560 63 65 28 20 6c 65 6e 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 ce(.len,.pos_state.);.....}....i
16580 6e 74 20 70 72 69 63 65 5f 70 61 69 72 28 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 73 2c 20 63 6f nt.price_pair(.const.int.dis,.co
165a0 6e 73 74 20 69 6e 74 20 6c 65 6e 2c 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 nst.int.len,.const.int.pos_state
165c0 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 72 69 .).const.....{.....const.int.pri
165e0 63 65 20 3d 20 6d 61 74 63 68 5f 6c 65 6e 5f 70 72 69 63 65 73 2e 70 72 69 63 65 28 20 6c 65 6e ce.=.match_len_prices.price(.len
16600 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6c 65 6e ,.pos_state.);.....const.int.len
16620 5f 73 74 61 74 65 20 3d 20 67 65 74 5f 6c 65 6e 5f 73 74 61 74 65 28 20 6c 65 6e 20 29 3b 0a 20 _state.=.get_len_state(.len.);..
16640 20 20 20 69 66 28 20 64 69 73 20 3c 20 6d 6f 64 65 6c 65 64 5f 64 69 73 74 61 6e 63 65 73 20 29 ...if(.dis.<.modeled_distances.)
16660 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 70 72 69 63 65 20 2b 20 64 69 73 5f 70 72 69 63 65 73 .......return.price.+.dis_prices
16680 5b 6c 65 6e 5f 73 74 61 74 65 5d 5b 64 69 73 5d 3b 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 [len_state][dis];.....else......
166a0 20 72 65 74 75 72 6e 20 70 72 69 63 65 20 2b 20 64 69 73 5f 73 6c 6f 74 5f 70 72 69 63 65 73 5b .return.price.+.dis_slot_prices[
166c0 6c 65 6e 5f 73 74 61 74 65 5d 5b 67 65 74 5f 73 6c 6f 74 28 20 64 69 73 20 29 5d 20 2b 0a 20 20 len_state][get_slot(.dis.)].+...
166e0 20 20 20 20 20 20 20 20 20 20 20 61 6c 69 67 6e 5f 70 72 69 63 65 73 5b 64 69 73 20 26 20 28 64 ...........align_prices[dis.&.(d
16700 69 73 5f 61 6c 69 67 6e 5f 73 69 7a 65 20 2d 20 31 29 5d 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 6e is_align_size.-.1)];.....}....in
16720 74 20 72 65 61 64 5f 6d 61 74 63 68 5f 64 69 73 74 61 6e 63 65 73 28 29 0a 20 20 20 20 7b 0a 20 t.read_match_distances().....{..
16740 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6e 75 6d 5f 70 61 69 72 73 20 3d 20 67 65 74 5f 6d 61 74 ...const.int.num_pairs.=.get_mat
16760 63 68 5f 70 61 69 72 73 28 20 70 61 69 72 73 20 29 3b 0a 20 20 20 20 69 66 28 20 6e 75 6d 5f 70 ch_pairs(.pairs.);.....if(.num_p
16780 61 69 72 73 20 3e 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 airs.>.0.).......{.......const.i
167a0 6e 74 20 6c 65 6e 20 3d 20 70 61 69 72 73 5b 6e 75 6d 5f 70 61 69 72 73 2d 31 5d 2e 6c 65 6e 3b nt.len.=.pairs[num_pairs-1].len;
167c0 0a 20 20 20 20 20 20 69 66 28 20 6c 65 6e 20 3d 3d 20 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 .......if(.len.==.match_len_limi
167e0 74 20 26 26 20 6c 65 6e 20 3c 20 6d 61 78 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 0a 20 20 20 20 20 t.&&.len.<.max_match_len.)......
16800 20 20 20 70 61 69 72 73 5b 6e 75 6d 5f 70 61 69 72 73 2d 31 5d 2e 6c 65 6e 20 3d 0a 20 20 20 20 ...pairs[num_pairs-1].len.=.....
16820 20 20 20 20 20 20 74 72 75 65 5f 6d 61 74 63 68 5f 6c 65 6e 28 20 6c 65 6e 2c 20 70 61 69 72 73 ......true_match_len(.len,.pairs
16840 5b 6e 75 6d 5f 70 61 69 72 73 2d 31 5d 2e 64 69 73 20 2b 20 31 20 29 3b 0a 20 20 20 20 20 20 7d [num_pairs-1].dis.+.1.);.......}
16860 0a 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6d 5f 70 61 69 72 73 3b 0a 20 20 20 20 7d 0a 0a 20 20 .....return.num_pairs;.....}....
16880 76 6f 69 64 20 6d 6f 76 65 5f 61 6e 64 5f 75 70 64 61 74 65 28 20 69 6e 74 20 6e 20 29 0a 20 20 void.move_and_update(.int.n.)...
168a0 20 20 7b 0a 20 20 20 20 77 68 69 6c 65 28 20 74 72 75 65 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 ..{.....while(.true.).......{...
168c0 20 20 20 20 6d 6f 76 65 5f 70 6f 73 28 29 3b 0a 20 20 20 20 20 20 69 66 28 20 2d 2d 6e 20 3c 3d ....move_pos();.......if(.--n.<=
168e0 20 30 20 29 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 67 65 74 5f 6d 61 74 63 68 5f 70 61 69 72 .0.).break;.......get_match_pair
16900 73 28 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 62 61 63 6b 77 s();.......}.....}....void.backw
16920 61 72 64 28 20 69 6e 74 20 63 75 72 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 6e 74 20 64 69 73 ard(.int.cur.).....{.....int.dis
16940 34 20 3d 20 74 72 69 61 6c 73 5b 63 75 72 5d 2e 64 69 73 34 3b 0a 20 20 20 20 77 68 69 6c 65 28 4.=.trials[cur].dis4;.....while(
16960 20 63 75 72 20 3e 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 .cur.>.0.).......{.......const.i
16980 6e 74 20 70 72 65 76 5f 69 6e 64 65 78 20 3d 20 74 72 69 61 6c 73 5b 63 75 72 5d 2e 70 72 65 76 nt.prev_index.=.trials[cur].prev
169a0 5f 69 6e 64 65 78 3b 0a 20 20 20 20 20 20 54 72 69 61 6c 20 26 20 70 72 65 76 5f 74 72 69 61 6c _index;.......Trial.&.prev_trial
169c0 20 3d 20 74 72 69 61 6c 73 5b 70 72 65 76 5f 69 6e 64 65 78 5d 3b 0a 0a 20 20 20 20 20 20 69 66 .=.trials[prev_index];........if
169e0 28 20 74 72 69 61 6c 73 5b 63 75 72 5d 2e 70 72 65 76 5f 69 6e 64 65 78 32 20 21 3d 20 73 69 6e (.trials[cur].prev_index2.!=.sin
16a00 67 6c 65 5f 73 74 65 70 5f 74 72 69 61 6c 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 gle_step_trial.).........{......
16a20 20 20 20 70 72 65 76 5f 74 72 69 61 6c 2e 64 69 73 34 20 3d 20 2d 31 3b 09 09 09 09 09 2f 2f 20 ...prev_trial.dis4.=.-1;.....//.
16a40 6c 69 74 65 72 61 6c 0a 20 20 20 20 20 20 20 20 70 72 65 76 5f 74 72 69 61 6c 2e 70 72 65 76 5f literal.........prev_trial.prev_
16a60 69 6e 64 65 78 20 3d 20 70 72 65 76 5f 69 6e 64 65 78 20 2d 20 31 3b 0a 20 20 20 20 20 20 20 20 index.=.prev_index.-.1;.........
16a80 70 72 65 76 5f 74 72 69 61 6c 2e 70 72 65 76 5f 69 6e 64 65 78 32 20 3d 20 73 69 6e 67 6c 65 5f prev_trial.prev_index2.=.single_
16aa0 73 74 65 70 5f 74 72 69 61 6c 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 74 72 69 61 6c 73 5b 63 step_trial;.........if(.trials[c
16ac0 75 72 5d 2e 70 72 65 76 5f 69 6e 64 65 78 32 20 3e 3d 20 30 20 29 0a 20 20 20 20 20 20 20 20 20 ur].prev_index2.>=.0.)..........
16ae0 20 7b 0a 20 20 20 20 20 20 20 20 20 20 54 72 69 61 6c 20 26 20 70 72 65 76 5f 74 72 69 61 6c 32 .{...........Trial.&.prev_trial2
16b00 20 3d 20 74 72 69 61 6c 73 5b 70 72 65 76 5f 69 6e 64 65 78 2d 31 5d 3b 0a 20 20 20 20 20 20 20 .=.trials[prev_index-1];........
16b20 20 20 20 70 72 65 76 5f 74 72 69 61 6c 32 2e 64 69 73 34 20 3d 20 64 69 73 34 3b 20 64 69 73 34 ...prev_trial2.dis4.=.dis4;.dis4
16b40 20 3d 20 30 3b 09 09 09 2f 2f 20 72 65 70 30 0a 20 20 20 20 20 20 20 20 20 20 70 72 65 76 5f 74 .=.0;...//.rep0...........prev_t
16b60 72 69 61 6c 32 2e 70 72 65 76 5f 69 6e 64 65 78 20 3d 20 74 72 69 61 6c 73 5b 63 75 72 5d 2e 70 rial2.prev_index.=.trials[cur].p
16b80 72 65 76 5f 69 6e 64 65 78 32 3b 0a 20 20 20 20 20 20 20 20 20 20 70 72 65 76 5f 74 72 69 61 6c rev_index2;...........prev_trial
16ba0 32 2e 70 72 65 76 5f 69 6e 64 65 78 32 20 3d 20 73 69 6e 67 6c 65 5f 73 74 65 70 5f 74 72 69 61 2.prev_index2.=.single_step_tria
16bc0 6c 3b 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 70 l;...........}.........}.......p
16be0 72 65 76 5f 74 72 69 61 6c 2e 70 72 69 63 65 20 3d 20 63 75 72 20 2d 20 70 72 65 76 5f 69 6e 64 rev_trial.price.=.cur.-.prev_ind
16c00 65 78 3b 09 09 09 2f 2f 20 6c 65 6e 0a 20 20 20 20 20 20 63 75 72 20 3d 20 64 69 73 34 3b 20 64 ex;...//.len.......cur.=.dis4;.d
16c20 69 73 34 20 3d 20 70 72 65 76 5f 74 72 69 61 6c 2e 64 69 73 34 3b 20 70 72 65 76 5f 74 72 69 61 is4.=.prev_trial.dis4;.prev_tria
16c40 6c 2e 64 69 73 34 20 3d 20 63 75 72 3b 0a 20 20 20 20 20 20 63 75 72 20 3d 20 70 72 65 76 5f 69 l.dis4.=.cur;.......cur.=.prev_i
16c60 6e 64 65 78 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 69 6e 74 20 73 65 71 75 65 ndex;.......}.....}....int.seque
16c80 6e 63 65 5f 6f 70 74 69 6d 69 7a 65 72 28 20 63 6f 6e 73 74 20 69 6e 74 20 72 65 70 73 5b 6e 75 nce_optimizer(.const.int.reps[nu
16ca0 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 m_rep_distances],...............
16cc0 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 53 74 61 74 65 20 73 74 61 74 65 20 29 3b ............const.State.state.);
16ce0 0a 0a 20 20 65 6e 75 6d 20 7b 20 62 65 66 6f 72 65 5f 73 69 7a 65 20 3d 20 6d 61 78 5f 6e 75 6d ....enum.{.before_size.=.max_num
16d00 5f 74 72 69 61 6c 73 2c 0a 20 20 20 20 20 20 20 20 20 2f 2f 20 62 79 74 65 73 20 74 6f 20 6b 65 _trials,..........//.bytes.to.ke
16d20 65 70 20 69 6e 20 62 75 66 66 65 72 20 61 66 74 65 72 20 70 6f 73 0a 20 20 20 20 20 20 20 20 20 ep.in.buffer.after.pos..........
16d40 61 66 74 65 72 5f 73 69 7a 65 20 3d 20 28 20 32 20 2a 20 6d 61 78 5f 6d 61 74 63 68 5f 6c 65 6e after_size.=.(.2.*.max_match_len
16d60 20 29 20 2b 20 31 2c 0a 20 20 20 20 20 20 20 20 20 64 69 63 74 5f 66 61 63 74 6f 72 20 3d 20 32 .).+.1,..........dict_factor.=.2
16d80 2c 0a 20 20 20 20 20 20 20 20 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 33 20 3d ,..........num_prev_positions3.=
16da0 20 31 20 3c 3c 20 31 36 2c 0a 20 20 20 20 20 20 20 20 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 .1.<<.16,..........num_prev_posi
16dc0 74 69 6f 6e 73 32 20 3d 20 31 20 3c 3c 20 31 30 2c 0a 20 20 20 20 20 20 20 20 20 6e 75 6d 5f 70 tions2.=.1.<<.10,..........num_p
16de0 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 33 20 3d 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 rev_positions23.=.num_prev_posit
16e00 69 6f 6e 73 32 20 2b 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 33 2c 0a 20 20 20 ions2.+.num_prev_positions3,....
16e20 20 20 20 20 20 20 70 6f 73 5f 61 72 72 61 79 5f 66 61 63 74 6f 72 20 3d 20 32 20 7d 3b 0a 0a 70 ......pos_array_factor.=.2.};..p
16e40 75 62 6c 69 63 3a 0a 20 20 4c 5a 5f 65 6e 63 6f 64 65 72 28 20 63 6f 6e 73 74 20 69 6e 74 20 64 ublic:...LZ_encoder(.const.int.d
16e60 69 63 74 5f 73 69 7a 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6c 65 6e 5f 6c 69 6d 69 74 2c 0a 20 ict_size,.const.int.len_limit,..
16e80 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 69 66 64 2c 20 63 6f 6e 73 .............const.int.ifd,.cons
16ea0 74 20 69 6e 74 20 6f 75 74 66 64 20 29 0a 20 20 20 20 3a 0a 20 20 20 20 4c 5a 5f 65 6e 63 6f 64 t.int.outfd.).....:.....LZ_encod
16ec0 65 72 5f 62 61 73 65 28 20 62 65 66 6f 72 65 5f 73 69 7a 65 2c 20 64 69 63 74 5f 73 69 7a 65 2c er_base(.before_size,.dict_size,
16ee0 20 61 66 74 65 72 5f 73 69 7a 65 2c 20 64 69 63 74 5f 66 61 63 74 6f 72 2c 0a 20 20 20 20 20 20 .after_size,.dict_factor,.......
16f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e ...............num_prev_position
16f20 73 32 33 2c 20 70 6f 73 5f 61 72 72 61 79 5f 66 61 63 74 6f 72 2c 20 69 66 64 2c 20 6f 75 74 66 s23,.pos_array_factor,.ifd,.outf
16f40 64 20 29 2c 0a 20 20 20 20 63 79 63 6c 65 73 28 20 28 20 6c 65 6e 5f 6c 69 6d 69 74 20 3c 20 6d d.),.....cycles(.(.len_limit.<.m
16f60 61 78 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 20 3f 20 31 36 20 2b 20 28 20 6c 65 6e 5f 6c 69 6d 69 ax_match_len.).?.16.+.(.len_limi
16f80 74 20 2f 20 32 20 29 20 3a 20 32 35 36 20 29 2c 0a 20 20 20 20 6d 61 74 63 68 5f 6c 65 6e 5f 6c t./.2.).:.256.),.....match_len_l
16fa0 69 6d 69 74 28 20 6c 65 6e 5f 6c 69 6d 69 74 20 29 2c 0a 20 20 20 20 6d 61 74 63 68 5f 6c 65 6e imit(.len_limit.),.....match_len
16fc0 5f 70 72 69 63 65 73 28 20 6d 61 74 63 68 5f 6c 65 6e 5f 6d 6f 64 65 6c 2c 20 6d 61 74 63 68 5f _prices(.match_len_model,.match_
16fe0 6c 65 6e 5f 6c 69 6d 69 74 20 29 2c 0a 20 20 20 20 72 65 70 5f 6c 65 6e 5f 70 72 69 63 65 73 28 len_limit.),.....rep_len_prices(
17000 20 72 65 70 5f 6c 65 6e 5f 6d 6f 64 65 6c 2c 20 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 .rep_len_model,.match_len_limit.
17020 29 2c 0a 20 20 20 20 70 65 6e 64 69 6e 67 5f 6e 75 6d 5f 70 61 69 72 73 28 20 30 20 29 2c 0a 20 ),.....pending_num_pairs(.0.),..
17040 20 20 20 6e 75 6d 5f 64 69 73 5f 73 6c 6f 74 73 28 20 32 20 2a 20 72 65 61 6c 5f 62 69 74 73 28 ...num_dis_slots(.2.*.real_bits(
17060 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 2d 20 31 20 29 20 29 0a 20 20 20 20 7b 0a 20 .dictionary_size.-.1.).).....{..
17080 20 20 20 74 72 69 61 6c 73 5b 31 5d 2e 70 72 65 76 5f 69 6e 64 65 78 20 3d 20 30 3b 0a 20 20 20 ...trials[1].prev_index.=.0;....
170a0 20 74 72 69 61 6c 73 5b 31 5d 2e 70 72 65 76 5f 69 6e 64 65 78 32 20 3d 20 73 69 6e 67 6c 65 5f .trials[1].prev_index2.=.single_
170c0 73 74 65 70 5f 74 72 69 61 6c 3b 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 72 65 73 65 74 28 step_trial;.....}....void.reset(
170e0 29 0a 20 20 20 20 7b 0a 20 20 20 20 4c 5a 5f 65 6e 63 6f 64 65 72 5f 62 61 73 65 3a 3a 72 65 73 ).....{.....LZ_encoder_base::res
17100 65 74 28 29 3b 0a 20 20 20 20 6d 61 74 63 68 5f 6c 65 6e 5f 70 72 69 63 65 73 2e 72 65 73 65 74 et();.....match_len_prices.reset
17120 28 29 3b 0a 20 20 20 20 72 65 70 5f 6c 65 6e 5f 70 72 69 63 65 73 2e 72 65 73 65 74 28 29 3b 0a ();.....rep_len_prices.reset();.
17140 20 20 20 20 70 65 6e 64 69 6e 67 5f 6e 75 6d 5f 70 61 69 72 73 20 3d 20 30 3b 0a 20 20 20 20 7d ....pending_num_pairs.=.0;.....}
17160 0a 0a 20 20 62 6f 6f 6c 20 65 6e 63 6f 64 65 5f 6d 65 6d 62 65 72 28 20 63 6f 6e 73 74 20 75 6e ....bool.encode_member(.const.un
17180 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 29 3b 0a signed.long.long.member_size.);.
171a0 20 20 7d 3b 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ..};............................
171c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
171e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17200 6c 7a 69 70 2d 31 2e 32 35 2f 6c 7a 69 70 5f 69 6e 64 65 78 2e 68 00 00 00 00 00 00 00 00 00 00 lzip-1.25/lzip_index.h..........
17220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
17280 30 30 30 36 34 32 34 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 34 37 35 35 00 20 30 00 00 00 0006424.14744236057.014755..0...
172a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
172c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
172e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17300 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
17320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
17340 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
17360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
173a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
173c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
173e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17400 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
17420 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
17440 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
17460 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
17480 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
174a0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
174c0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
174e0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
17500 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
17520 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
17540 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
17560 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
17580 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
175a0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
175c0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
175e0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
17600 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
17620 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
17640 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
17660 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
17680 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
176a0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
176c0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 23 69 66 /www.gnu.org/licenses/>..*/..#if
176e0 6e 64 65 66 20 49 4e 54 36 34 5f 4d 41 58 0a 23 64 65 66 69 6e 65 20 49 4e 54 36 34 5f 4d 41 58 ndef.INT64_MAX.#define.INT64_MAX
17700 20 30 78 37 46 46 46 46 46 46 46 46 46 46 46 46 46 46 46 4c 4c 0a 23 65 6e 64 69 66 0a 0a 0a 63 .0x7FFFFFFFFFFFFFFFLL.#endif...c
17720 6c 61 73 73 20 42 6c 6f 63 6b 0a 20 20 7b 0a 20 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 6f 73 5f 2c lass.Block...{...long.long.pos_,
17740 20 73 69 7a 65 5f 3b 09 2f 2f 20 70 6f 73 20 3e 3d 20 30 2c 20 73 69 7a 65 20 3e 3d 20 30 2c 20 .size_;.//.pos.>=.0,.size.>=.0,.
17760 70 6f 73 20 2b 20 73 69 7a 65 20 3c 3d 20 49 4e 54 36 34 5f 4d 41 58 0a 0a 70 75 62 6c 69 63 3a pos.+.size.<=.INT64_MAX..public:
17780 0a 20 20 42 6c 6f 63 6b 28 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 2c 20 63 6f 6e ...Block(.const.long.long.p,.con
177a0 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 73 20 29 20 3a 20 70 6f 73 5f 28 20 70 20 29 2c 20 73 69 st.long.long.s.).:.pos_(.p.),.si
177c0 7a 65 5f 28 20 73 20 29 20 7b 7d 0a 0a 20 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 6f 73 28 29 20 63 ze_(.s.).{}....long.long.pos().c
177e0 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 70 6f 73 5f 3b 20 7d 0a 20 20 6c 6f 6e 67 20 6c 6f 6e onst.{.return.pos_;.}...long.lon
17800 67 20 73 69 7a 65 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 73 69 7a 65 5f 3b 20 7d g.size().const.{.return.size_;.}
17820 0a 20 20 6c 6f 6e 67 20 6c 6f 6e 67 20 65 6e 64 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 ...long.long.end().const.{.retur
17840 6e 20 70 6f 73 5f 20 2b 20 73 69 7a 65 5f 3b 20 7d 0a 0a 20 20 76 6f 69 64 20 70 6f 73 28 20 63 n.pos_.+.size_;.}....void.pos(.c
17860 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 20 29 20 7b 20 70 6f 73 5f 20 3d 20 70 3b 20 7d onst.long.long.p.).{.pos_.=.p;.}
17880 0a 20 20 76 6f 69 64 20 73 69 7a 65 28 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 73 20 ...void.size(.const.long.long.s.
178a0 29 20 7b 20 73 69 7a 65 5f 20 3d 20 73 3b 20 7d 0a 20 20 7d 3b 0a 0a 0a 63 6c 61 73 73 20 4c 7a ).{.size_.=.s;.}...};...class.Lz
178c0 69 70 5f 69 6e 64 65 78 0a 20 20 7b 0a 20 20 73 74 72 75 63 74 20 4d 65 6d 62 65 72 0a 20 20 20 ip_index...{...struct.Member....
178e0 20 7b 0a 20 20 20 20 42 6c 6f 63 6b 20 64 62 6c 6f 63 6b 2c 20 6d 62 6c 6f 63 6b 3b 09 09 2f 2f .{.....Block.dblock,.mblock;..//
17900 20 64 61 74 61 20 62 6c 6f 63 6b 2c 20 6d 65 6d 62 65 72 20 62 6c 6f 63 6b 0a 20 20 20 20 75 6e .data.block,.member.block.....un
17920 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 3b 0a 0a 20 20 20 20 4d 65 6d signed.dictionary_size;......Mem
17940 62 65 72 28 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 64 70 6f 73 2c 20 63 6f 6e 73 74 ber(.const.long.long.dpos,.const
17960 20 6c 6f 6e 67 20 6c 6f 6e 67 20 64 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f .long.long.dsize,.............co
17980 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 70 6f 73 2c 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c nst.long.long.mpos,.const.long.l
179a0 6f 6e 67 20 6d 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 ong.msize,.............const.uns
179c0 69 67 6e 65 64 20 64 69 63 74 5f 73 69 7a 65 20 29 0a 20 20 20 20 20 20 3a 20 64 62 6c 6f 63 6b igned.dict_size.).......:.dblock
179e0 28 20 64 70 6f 73 2c 20 64 73 69 7a 65 20 29 2c 20 6d 62 6c 6f 63 6b 28 20 6d 70 6f 73 2c 20 6d (.dpos,.dsize.),.mblock(.mpos,.m
17a00 73 69 7a 65 20 29 2c 0a 20 20 20 20 20 20 20 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 size.),.........dictionary_size(
17a20 20 64 69 63 74 5f 73 69 7a 65 20 29 20 7b 7d 0a 20 20 20 20 7d 3b 0a 0a 20 20 73 74 64 3a 3a 76 .dict_size.).{}.....};....std::v
17a40 65 63 74 6f 72 3c 20 4d 65 6d 62 65 72 20 3e 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 3b 0a 20 ector<.Member.>.member_vector;..
17a60 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 65 72 72 6f 72 5f 3b 0a 20 20 63 6f 6e 73 74 20 6c 6f 6e .std::string.error_;...const.lon
17a80 67 20 6c 6f 6e 67 20 69 6e 73 69 7a 65 3b 0a 20 20 69 6e 74 20 72 65 74 76 61 6c 5f 3b 0a 20 20 g.long.insize;...int.retval_;...
17aa0 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 5f 3b 09 2f 2f 20 6c 61 unsigned.dictionary_size_;.//.la
17ac0 72 67 65 73 74 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 6e 20 74 68 65 20 66 69 6c rgest.dictionary.size.in.the.fil
17ae0 65 0a 0a 20 20 62 6f 6f 6c 20 63 68 65 63 6b 5f 68 65 61 64 65 72 28 20 63 6f 6e 73 74 20 4c 7a e....bool.check_header(.const.Lz
17b00 69 70 5f 68 65 61 64 65 72 20 26 20 68 65 61 64 65 72 20 29 3b 0a 20 20 76 6f 69 64 20 73 65 74 ip_header.&.header.);...void.set
17b20 5f 65 72 72 6e 6f 5f 65 72 72 6f 72 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 _errno_error(.const.char.*.const
17b40 20 6d 73 67 20 29 3b 0a 20 20 76 6f 69 64 20 73 65 74 5f 6e 75 6d 5f 65 72 72 6f 72 28 20 63 6f .msg.);...void.set_num_error(.co
17b60 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6d 73 67 2c 20 75 6e 73 69 67 6e 65 64 20 6c nst.char.*.const.msg,.unsigned.l
17b80 6f 6e 67 20 6c 6f 6e 67 20 6e 75 6d 20 29 3b 0a 20 20 62 6f 6f 6c 20 72 65 61 64 5f 68 65 61 64 ong.long.num.);...bool.read_head
17ba0 65 72 28 20 63 6f 6e 73 74 20 69 6e 74 20 66 64 2c 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 26 20 er(.const.int.fd,.Lzip_header.&.
17bc0 68 65 61 64 65 72 2c 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 6f 73 20 29 3b 0a 20 header,.const.long.long.pos.);..
17be0 20 62 6f 6f 6c 20 73 6b 69 70 5f 74 72 61 69 6c 69 6e 67 5f 64 61 74 61 28 20 63 6f 6e 73 74 20 .bool.skip_trailing_data(.const.
17c00 69 6e 74 20 66 64 2c 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 26 20 70 6f 73 int.fd,.unsigned.long.long.&.pos
17c20 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e ,............................con
17c40 73 74 20 43 6c 5f 6f 70 74 69 6f 6e 73 20 26 20 63 6c 5f 6f 70 74 73 20 29 3b 0a 0a 70 75 62 6c st.Cl_options.&.cl_opts.);..publ
17c60 69 63 3a 0a 20 20 4c 7a 69 70 5f 69 6e 64 65 78 28 20 63 6f 6e 73 74 20 69 6e 74 20 69 6e 66 64 ic:...Lzip_index(.const.int.infd
17c80 2c 20 63 6f 6e 73 74 20 43 6c 5f 6f 70 74 69 6f 6e 73 20 26 20 63 6c 5f 6f 70 74 73 20 29 3b 0a ,.const.Cl_options.&.cl_opts.);.
17ca0 0a 20 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 73 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e ...long.members().const.{.return
17cc0 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 73 69 7a 65 28 29 3b 20 7d 0a 20 20 63 6f 6e 73 74 .member_vector.size();.}...const
17ce0 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 26 20 65 72 72 6f 72 28 29 20 63 6f 6e 73 74 20 7b 20 72 .std::string.&.error().const.{.r
17d00 65 74 75 72 6e 20 65 72 72 6f 72 5f 3b 20 7d 0a 20 20 69 6e 74 20 72 65 74 76 61 6c 28 29 20 63 eturn.error_;.}...int.retval().c
17d20 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 72 65 74 76 61 6c 5f 3b 20 7d 0a 20 20 75 6e 73 69 67 onst.{.return.retval_;.}...unsig
17d40 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 ned.dictionary_size().const.{.re
17d60 74 75 72 6e 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 5f 3b 20 7d 0a 0a 20 20 62 6f 6f 6c turn.dictionary_size_;.}....bool
17d80 20 6d 75 6c 74 69 5f 65 6d 70 74 79 28 29 20 63 6f 6e 73 74 09 2f 2f 20 6d 75 6c 74 69 6d 65 6d .multi_empty().const.//.multimem
17da0 62 65 72 20 66 69 6c 65 20 77 69 74 68 20 65 6d 70 74 79 20 6d 65 6d 62 65 72 28 73 29 0a 20 20 ber.file.with.empty.member(s)...
17dc0 20 20 7b 0a 20 20 20 20 69 66 28 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 73 69 7a 65 28 29 ..{.....if(.member_vector.size()
17de0 20 3e 20 31 20 29 0a 20 20 20 20 20 20 66 6f 72 28 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 .>.1.).......for(.unsigned.long.
17e00 69 20 3d 20 30 3b 20 69 20 3c 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 73 69 7a 65 28 29 3b i.=.0;.i.<.member_vector.size();
17e20 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 20 20 69 66 28 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 .++i.).........if(.member_vector
17e40 5b 69 5d 2e 64 62 6c 6f 63 6b 2e 73 69 7a 65 28 29 20 3d 3d 20 30 20 29 20 72 65 74 75 72 6e 20 [i].dblock.size().==.0.).return.
17e60 74 72 75 65 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 7d 0a 0a 20 true;.....return.false;.....}...
17e80 20 6c 6f 6e 67 20 6c 6f 6e 67 20 75 64 61 74 61 5f 73 69 7a 65 28 29 20 63 6f 6e 73 74 0a 20 20 .long.long.udata_size().const...
17ea0 20 20 7b 20 69 66 28 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 65 6d 70 74 79 28 29 20 29 20 ..{.if(.member_vector.empty().).
17ec0 72 65 74 75 72 6e 20 30 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 65 6d 62 65 72 5f 76 65 return.0;.......return.member_ve
17ee0 63 74 6f 72 2e 62 61 63 6b 28 29 2e 64 62 6c 6f 63 6b 2e 65 6e 64 28 29 3b 20 7d 0a 0a 20 20 6c ctor.back().dblock.end();.}....l
17f00 6f 6e 67 20 6c 6f 6e 67 20 63 64 61 74 61 5f 73 69 7a 65 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 ong.long.cdata_size().const.....
17f20 7b 20 69 66 28 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 65 6d 70 74 79 28 29 20 29 20 72 65 {.if(.member_vector.empty().).re
17f40 74 75 72 6e 20 30 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 65 6d 62 65 72 5f 76 65 63 74 turn.0;.......return.member_vect
17f60 6f 72 2e 62 61 63 6b 28 29 2e 6d 62 6c 6f 63 6b 2e 65 6e 64 28 29 3b 20 7d 0a 0a 20 20 2f 2f 20 or.back().mblock.end();.}....//.
17f80 74 6f 74 61 6c 20 73 69 7a 65 20 69 6e 63 6c 75 64 69 6e 67 20 74 72 61 69 6c 69 6e 67 20 64 61 total.size.including.trailing.da
17fa0 74 61 20 28 69 66 20 61 6e 79 29 0a 20 20 6c 6f 6e 67 20 6c 6f 6e 67 20 66 69 6c 65 5f 73 69 7a ta.(if.any)...long.long.file_siz
17fc0 65 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 69 66 28 20 69 6e 73 69 7a 65 20 3e 3d 20 30 20 e().const.....{.if(.insize.>=.0.
17fe0 29 20 72 65 74 75 72 6e 20 69 6e 73 69 7a 65 3b 20 65 6c 73 65 20 72 65 74 75 72 6e 20 30 3b 20 ).return.insize;.else.return.0;.
18000 7d 0a 0a 20 20 63 6f 6e 73 74 20 42 6c 6f 63 6b 20 26 20 64 62 6c 6f 63 6b 28 20 63 6f 6e 73 74 }....const.Block.&.dblock(.const
18020 20 6c 6f 6e 67 20 69 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 6d 65 6d .long.i.).const.....{.return.mem
18040 62 65 72 5f 76 65 63 74 6f 72 5b 69 5d 2e 64 62 6c 6f 63 6b 3b 20 7d 0a 20 20 63 6f 6e 73 74 20 ber_vector[i].dblock;.}...const.
18060 42 6c 6f 63 6b 20 26 20 6d 62 6c 6f 63 6b 28 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 69 20 29 20 63 Block.&.mblock(.const.long.i.).c
18080 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 5b onst.....{.return.member_vector[
180a0 69 5d 2e 6d 62 6c 6f 63 6b 3b 20 7d 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 i].mblock;.}...unsigned.dictiona
180c0 72 79 5f 73 69 7a 65 28 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 69 20 29 20 63 6f 6e 73 74 0a 20 20 ry_size(.const.long.i.).const...
180e0 20 20 7b 20 72 65 74 75 72 6e 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 5b 69 5d 2e 64 69 63 74 ..{.return.member_vector[i].dict
18100 69 6f 6e 61 72 79 5f 73 69 7a 65 3b 20 7d 0a 20 20 7d 3b 0a 00 00 00 00 00 00 00 00 00 00 00 00 ionary_size;.}...};.............
18120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
181a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
181c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
181e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18200 6c 7a 69 70 2d 31 2e 32 35 2f 52 45 41 44 4d 45 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/README................
18220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
18280 30 30 31 35 33 34 36 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 33 33 32 32 00 20 30 00 00 00 0015346.14744236057.013322..0...
182a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
182c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
182e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18300 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
18320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
18340 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
18360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
183a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
183c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
183e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18400 53 65 65 20 74 68 65 20 66 69 6c 65 20 49 4e 53 54 41 4c 4c 20 66 6f 72 20 63 6f 6d 70 69 6c 61 See.the.file.INSTALL.for.compila
18420 74 69 6f 6e 20 61 6e 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 69 6e 73 74 72 75 63 74 69 6f tion.and.installation.instructio
18440 6e 73 2e 0a 0a 44 65 73 63 72 69 70 74 69 6f 6e 0a 0a 4c 7a 69 70 20 69 73 20 61 20 6c 6f 73 73 ns...Description..Lzip.is.a.loss
18460 6c 65 73 73 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 6f 72 20 77 69 74 68 20 61 20 75 73 65 72 less.data.compressor.with.a.user
18480 20 69 6e 74 65 72 66 61 63 65 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 6f 6e 65 0a 6f 66 .interface.similar.to.the.one.of
184a0 20 67 7a 69 70 20 6f 72 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 75 73 65 73 20 61 20 73 69 6d 70 .gzip.or.bzip2..Lzip.uses.a.simp
184c0 6c 69 66 69 65 64 20 66 6f 72 6d 20 6f 66 20 4c 5a 4d 41 20 28 4c 65 6d 70 65 6c 2d 5a 69 76 2d lified.form.of.LZMA.(Lempel-Ziv-
184e0 4d 61 72 6b 6f 76 0a 63 68 61 69 6e 2d 41 6c 67 6f 72 69 74 68 6d 29 20 64 65 73 69 67 6e 65 64 Markov.chain-Algorithm).designed
18500 20 74 6f 20 61 63 68 69 65 76 65 20 63 6f 6d 70 6c 65 74 65 20 69 6e 74 65 72 6f 70 65 72 61 62 .to.achieve.complete.interoperab
18520 69 6c 69 74 79 20 62 65 74 77 65 65 6e 0a 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 2e 20 54 ility.between.implementations..T
18540 68 65 20 6d 61 78 69 6d 75 6d 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 73 20 35 31 he.maximum.dictionary.size.is.51
18560 32 20 4d 69 42 20 73 6f 20 74 68 61 74 20 61 6e 79 20 6c 7a 69 70 0a 66 69 6c 65 20 63 61 6e 20 2.MiB.so.that.any.lzip.file.can.
18580 62 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 6f 6e 20 33 32 2d 62 69 74 20 6d 61 63 68 69 6e be.decompressed.on.32-bit.machin
185a0 65 73 2e 20 4c 7a 69 70 20 70 72 6f 76 69 64 65 73 20 61 63 63 75 72 61 74 65 20 61 6e 64 0a 72 es..Lzip.provides.accurate.and.r
185c0 6f 62 75 73 74 20 33 2d 66 61 63 74 6f 72 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 63 6b 69 6e obust.3-factor.integrity.checkin
185e0 67 2e 20 27 6c 7a 69 70 20 2d 30 27 20 63 6f 6d 70 72 65 73 73 65 73 20 61 62 6f 75 74 20 61 73 g..'lzip.-0'.compresses.about.as
18600 20 66 61 73 74 20 61 73 0a 67 7a 69 70 2c 20 77 68 69 6c 65 20 27 6c 7a 69 70 20 2d 39 27 20 63 .fast.as.gzip,.while.'lzip.-9'.c
18620 6f 6d 70 72 65 73 73 65 73 20 6d 6f 73 74 20 66 69 6c 65 73 20 6d 6f 72 65 20 74 68 61 6e 20 62 ompresses.most.files.more.than.b
18640 7a 69 70 32 2e 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 0a 73 70 65 65 64 20 69 73 20 69 6e 74 zip2..Decompression.speed.is.int
18660 65 72 6d 65 64 69 61 74 65 20 62 65 74 77 65 65 6e 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 ermediate.between.gzip.and.bzip2
18680 2e 20 4c 7a 69 70 20 70 72 6f 76 69 64 65 73 20 62 65 74 74 65 72 20 64 61 74 61 0a 72 65 63 6f ..Lzip.provides.better.data.reco
186a0 76 65 72 79 20 63 61 70 61 62 69 6c 69 74 69 65 73 20 74 68 61 6e 20 67 7a 69 70 20 61 6e 64 20 very.capabilities.than.gzip.and.
186c0 62 7a 69 70 32 2e 20 4c 7a 69 70 20 68 61 73 20 62 65 65 6e 20 64 65 73 69 67 6e 65 64 2c 20 77 bzip2..Lzip.has.been.designed,.w
186e0 72 69 74 74 65 6e 2c 0a 61 6e 64 20 74 65 73 74 65 64 20 77 69 74 68 20 67 72 65 61 74 20 63 61 ritten,.and.tested.with.great.ca
18700 72 65 20 74 6f 20 72 65 70 6c 61 63 65 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 20 61 73 20 re.to.replace.gzip.and.bzip2.as.
18720 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 0a 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 general-purpose.compressed.forma
18740 74 20 66 6f 72 20 55 6e 69 78 2d 6c 69 6b 65 20 73 79 73 74 65 6d 73 2e 0a 0a 46 6f 72 20 63 6f t.for.Unix-like.systems...For.co
18760 6d 70 72 65 73 73 69 6e 67 2f 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 6c 61 72 67 65 20 66 69 mpressing/decompressing.large.fi
18780 6c 65 73 20 6f 6e 20 6d 75 6c 74 69 70 72 6f 63 65 73 73 6f 72 20 6d 61 63 68 69 6e 65 73 20 70 les.on.multiprocessor.machines.p
187a0 6c 7a 69 70 0a 63 61 6e 20 62 65 20 6d 75 63 68 20 66 61 73 74 65 72 20 74 68 61 6e 20 6c 7a 69 lzip.can.be.much.faster.than.lzi
187c0 70 20 61 74 20 74 68 65 20 63 6f 73 74 20 6f 66 20 61 20 73 6c 69 67 68 74 6c 79 20 72 65 64 75 p.at.the.cost.of.a.slightly.redu
187e0 63 65 64 20 63 6f 6d 70 72 65 73 73 69 6f 6e 0a 72 61 74 69 6f 2e 0a 0a 46 6f 72 20 63 72 65 61 ced.compression.ratio...For.crea
18800 74 69 6f 6e 20 61 6e 64 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 6f 66 20 63 6f 6d 70 72 65 73 tion.and.manipulation.of.compres
18820 73 65 64 20 74 61 72 20 61 72 63 68 69 76 65 73 20 74 61 72 6c 7a 20 63 61 6e 20 62 65 20 6d 6f sed.tar.archives.tarlz.can.be.mo
18840 72 65 0a 65 66 66 69 63 69 65 6e 74 20 74 68 61 6e 20 75 73 69 6e 67 20 74 61 72 20 61 6e 64 20 re.efficient.than.using.tar.and.
18860 70 6c 7a 69 70 20 62 65 63 61 75 73 65 20 74 61 72 6c 7a 20 69 73 20 61 62 6c 65 20 74 6f 20 6b plzip.because.tarlz.is.able.to.k
18880 65 65 70 20 74 68 65 0a 61 6c 69 67 6e 6d 65 6e 74 20 62 65 74 77 65 65 6e 20 74 61 72 20 6d 65 eep.the.alignment.between.tar.me
188a0 6d 62 65 72 73 20 61 6e 64 20 6c 7a 69 70 20 6d 65 6d 62 65 72 73 2e 0a 0a 54 68 65 20 6c 7a 69 mbers.and.lzip.members...The.lzi
188c0 70 20 66 69 6c 65 20 66 6f 72 6d 61 74 20 69 73 20 64 65 73 69 67 6e 65 64 20 66 6f 72 20 64 61 p.file.format.is.designed.for.da
188e0 74 61 20 73 68 61 72 69 6e 67 20 61 6e 64 20 6c 6f 6e 67 2d 74 65 72 6d 20 61 72 63 68 69 76 69 ta.sharing.and.long-term.archivi
18900 6e 67 2c 0a 74 61 6b 69 6e 67 20 69 6e 74 6f 20 61 63 63 6f 75 6e 74 20 62 6f 74 68 20 64 61 74 ng,.taking.into.account.both.dat
18920 61 20 69 6e 74 65 67 72 69 74 79 20 61 6e 64 20 64 65 63 6f 64 65 72 20 61 76 61 69 6c 61 62 69 a.integrity.and.decoder.availabi
18940 6c 69 74 79 3a 0a 0a 20 20 20 2a 20 54 68 65 20 70 72 6f 67 72 61 6d 20 6c 7a 69 70 72 65 63 6f lity:.....*.The.program.lzipreco
18960 76 65 72 20 63 61 6e 20 72 65 70 61 69 72 20 62 69 74 20 66 6c 69 70 20 65 72 72 6f 72 73 20 28 ver.can.repair.bit.flip.errors.(
18980 6f 6e 65 20 6f 66 20 74 68 65 20 6d 6f 73 74 0a 20 20 20 20 20 63 6f 6d 6d 6f 6e 20 66 6f 72 6d one.of.the.most......common.form
189a0 73 20 6f 66 20 64 61 74 61 20 63 6f 72 72 75 70 74 69 6f 6e 29 20 69 6e 20 6c 7a 69 70 20 66 69 s.of.data.corruption).in.lzip.fi
189c0 6c 65 73 2c 20 61 6e 64 20 70 72 6f 76 69 64 65 73 20 64 61 74 61 0a 20 20 20 20 20 72 65 63 6f les,.and.provides.data......reco
189e0 76 65 72 79 20 63 61 70 61 62 69 6c 69 74 69 65 73 2c 20 69 6e 63 6c 75 64 69 6e 67 20 65 72 72 very.capabilities,.including.err
18a00 6f 72 2d 63 68 65 63 6b 65 64 20 6d 65 72 67 69 6e 67 20 6f 66 20 64 61 6d 61 67 65 64 0a 20 20 or-checked.merging.of.damaged...
18a20 20 20 20 63 6f 70 69 65 73 20 6f 66 20 61 20 66 69 6c 65 2e 0a 0a 20 20 20 2a 20 54 68 65 20 6c ...copies.of.a.file......*.The.l
18a40 7a 69 70 20 66 6f 72 6d 61 74 20 69 73 20 61 73 20 73 69 6d 70 6c 65 20 61 73 20 70 6f 73 73 69 zip.format.is.as.simple.as.possi
18a60 62 6c 65 20 28 62 75 74 20 6e 6f 74 20 73 69 6d 70 6c 65 72 29 2e 20 54 68 65 20 6c 7a 69 70 0a ble.(but.not.simpler)..The.lzip.
18a80 20 20 20 20 20 6d 61 6e 75 61 6c 20 70 72 6f 76 69 64 65 73 20 74 68 65 20 73 6f 75 72 63 65 20 .....manual.provides.the.source.
18aa0 63 6f 64 65 20 6f 66 20 61 20 73 69 6d 70 6c 65 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 61 6c code.of.a.simple.decompressor.al
18ac0 6f 6e 67 20 77 69 74 68 20 61 0a 20 20 20 20 20 64 65 74 61 69 6c 65 64 20 65 78 70 6c 61 6e 61 ong.with.a......detailed.explana
18ae0 74 69 6f 6e 20 6f 66 20 68 6f 77 20 69 74 20 77 6f 72 6b 73 2c 20 73 6f 20 74 68 61 74 20 77 69 tion.of.how.it.works,.so.that.wi
18b00 74 68 20 74 68 65 20 6f 6e 6c 79 20 68 65 6c 70 20 6f 66 20 74 68 65 0a 20 20 20 20 20 6c 7a 69 th.the.only.help.of.the......lzi
18b20 70 20 6d 61 6e 75 61 6c 20 69 74 20 77 6f 75 6c 64 20 62 65 20 70 6f 73 73 69 62 6c 65 20 66 6f p.manual.it.would.be.possible.fo
18b40 72 20 61 20 64 69 67 69 74 61 6c 20 61 72 63 68 61 65 6f 6c 6f 67 69 73 74 20 74 6f 20 65 78 74 r.a.digital.archaeologist.to.ext
18b60 72 61 63 74 0a 20 20 20 20 20 74 68 65 20 64 61 74 61 20 66 72 6f 6d 20 61 20 6c 7a 69 70 20 66 ract......the.data.from.a.lzip.f
18b80 69 6c 65 20 6c 6f 6e 67 20 61 66 74 65 72 20 71 75 61 6e 74 75 6d 20 63 6f 6d 70 75 74 65 72 73 ile.long.after.quantum.computers
18ba0 20 65 76 65 6e 74 75 61 6c 6c 79 0a 20 20 20 20 20 72 65 6e 64 65 72 20 4c 5a 4d 41 20 6f 62 73 .eventually......render.LZMA.obs
18bc0 6f 6c 65 74 65 2e 0a 0a 20 20 20 2a 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 20 74 68 65 20 6c 7a olete......*.Additionally.the.lz
18be0 69 70 20 72 65 66 65 72 65 6e 63 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 69 73 20 63 ip.reference.implementation.is.c
18c00 6f 70 79 6c 65 66 74 65 64 2c 20 77 68 69 63 68 0a 20 20 20 20 20 67 75 61 72 61 6e 74 65 65 73 opylefted,.which......guarantees
18c20 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 72 65 6d 61 69 6e 20 66 72 65 65 20 66 6f 72 65 76 65 .that.it.will.remain.free.foreve
18c40 72 2e 0a 0a 41 20 6e 69 63 65 20 66 65 61 74 75 72 65 20 6f 66 20 74 68 65 20 6c 7a 69 70 20 66 r...A.nice.feature.of.the.lzip.f
18c60 6f 72 6d 61 74 20 69 73 20 74 68 61 74 20 61 20 63 6f 72 72 75 70 74 20 62 79 74 65 20 69 73 20 ormat.is.that.a.corrupt.byte.is.
18c80 65 61 73 69 65 72 20 74 6f 20 72 65 70 61 69 72 0a 74 68 65 20 6e 65 61 72 65 72 20 69 74 20 69 easier.to.repair.the.nearer.it.i
18ca0 73 20 66 72 6f 6d 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 66 69 6c 65 s.from.the.beginning.of.the.file
18cc0 2e 20 54 68 65 72 65 66 6f 72 65 2c 20 77 69 74 68 20 74 68 65 20 68 65 6c 70 20 6f 66 0a 6c 7a ..Therefore,.with.the.help.of.lz
18ce0 69 70 72 65 63 6f 76 65 72 2c 20 6c 6f 73 69 6e 67 20 61 6e 20 65 6e 74 69 72 65 20 61 72 63 68 iprecover,.losing.an.entire.arch
18d00 69 76 65 20 6a 75 73 74 20 62 65 63 61 75 73 65 20 6f 66 20 61 20 63 6f 72 72 75 70 74 20 62 79 ive.just.because.of.a.corrupt.by
18d20 74 65 20 6e 65 61 72 0a 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 69 73 20 61 20 74 68 69 6e 67 te.near.the.beginning.is.a.thing
18d40 20 6f 66 20 74 68 65 20 70 61 73 74 2e 0a 0a 4c 7a 69 70 20 75 73 65 73 20 74 68 65 20 73 61 6d .of.the.past...Lzip.uses.the.sam
18d60 65 20 77 65 6c 6c 2d 64 65 66 69 6e 65 64 20 65 78 69 74 20 73 74 61 74 75 73 20 76 61 6c 75 65 e.well-defined.exit.status.value
18d80 73 20 75 73 65 64 20 62 79 20 62 7a 69 70 32 2c 20 77 68 69 63 68 0a 6d 61 6b 65 73 20 69 74 20 s.used.by.bzip2,.which.makes.it.
18da0 73 61 66 65 72 20 74 68 61 6e 20 63 6f 6d 70 72 65 73 73 6f 72 73 20 72 65 74 75 72 6e 69 6e 67 safer.than.compressors.returning
18dc0 20 61 6d 62 69 67 75 6f 75 73 20 77 61 72 6e 69 6e 67 20 76 61 6c 75 65 73 20 28 6c 69 6b 65 0a .ambiguous.warning.values.(like.
18de0 67 7a 69 70 29 20 77 68 65 6e 20 69 74 20 69 73 20 75 73 65 64 20 61 73 20 61 20 62 61 63 6b 20 gzip).when.it.is.used.as.a.back.
18e00 65 6e 64 20 66 6f 72 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d 73 20 6c 69 6b 65 20 74 61 72 20 end.for.other.programs.like.tar.
18e20 6f 72 20 7a 75 74 69 6c 73 2e 0a 0a 4c 7a 69 70 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 75 or.zutils...Lzip.automatically.u
18e40 73 65 73 20 66 6f 72 20 65 61 63 68 20 66 69 6c 65 20 74 68 65 20 6c 61 72 67 65 73 74 20 64 69 ses.for.each.file.the.largest.di
18e60 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 74 68 61 74 20 64 6f 65 73 0a 6e 6f 74 20 65 78 63 65 ctionary.size.that.does.not.exce
18e80 65 64 20 6e 65 69 74 68 65 72 20 74 68 65 20 66 69 6c 65 20 73 69 7a 65 20 6e 6f 72 20 74 68 65 ed.neither.the.file.size.nor.the
18ea0 20 6c 69 6d 69 74 20 67 69 76 65 6e 2e 20 54 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a .limit.given..The.dictionary.siz
18ec0 65 0a 75 73 65 64 20 66 6f 72 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 74 68 65 20 e.used.for.decompression.is.the.
18ee0 73 61 6d 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 75 73 65 64 20 66 6f 72 20 63 6f same.dictionary.size.used.for.co
18f00 6d 70 72 65 73 73 69 6f 6e 2e 0a 0a 54 68 65 20 61 6d 6f 75 6e 74 20 6f 66 20 6d 65 6d 6f 72 79 mpression...The.amount.of.memory
18f20 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 61 62 6f .required.for.compression.is.abo
18f40 75 74 20 31 20 6f 72 20 32 20 74 69 6d 65 73 20 74 68 65 0a 64 69 63 74 69 6f 6e 61 72 79 20 73 ut.1.or.2.times.the.dictionary.s
18f60 69 7a 65 20 6c 69 6d 69 74 20 28 31 20 69 66 20 69 6e 70 75 74 20 66 69 6c 65 20 73 69 7a 65 20 ize.limit.(1.if.input.file.size.
18f80 69 73 20 6c 65 73 73 20 74 68 61 6e 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 0a 6c 69 6d is.less.than.dictionary.size.lim
18fa0 69 74 2c 20 65 6c 73 65 20 32 29 20 70 6c 75 73 20 39 20 74 69 6d 65 73 20 74 68 65 20 64 69 63 it,.else.2).plus.9.times.the.dic
18fc0 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 72 65 61 6c 6c 79 20 75 73 65 64 2e 20 54 68 65 20 6f 70 tionary.size.really.used..The.op
18fe0 74 69 6f 6e 20 27 2d 30 27 0a 69 73 20 73 70 65 63 69 61 6c 20 61 6e 64 20 6f 6e 6c 79 20 72 65 tion.'-0'.is.special.and.only.re
19000 71 75 69 72 65 73 20 61 62 6f 75 74 20 31 2e 35 20 4d 69 42 20 61 74 20 6d 6f 73 74 2e 20 54 68 quires.about.1.5.MiB.at.most..Th
19020 65 20 61 6d 6f 75 6e 74 20 6f 66 20 6d 65 6d 6f 72 79 0a 72 65 71 75 69 72 65 64 20 66 6f 72 20 e.amount.of.memory.required.for.
19040 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 61 62 6f 75 74 20 34 36 20 6b 42 20 6c 61 72 decompression.is.about.46.kB.lar
19060 67 65 72 20 74 68 61 6e 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 0a 72 65 61 ger.than.the.dictionary.size.rea
19080 6c 6c 79 20 75 73 65 64 2e 0a 0a 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 6c 7a 69 lly.used...When.compressing,.lzi
190a0 70 20 72 65 70 6c 61 63 65 73 20 65 76 65 72 79 20 66 69 6c 65 20 67 69 76 65 6e 20 69 6e 20 74 p.replaces.every.file.given.in.t
190c0 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 0a 77 69 74 68 20 61 20 63 6f 6d 70 72 65 73 73 65 he.command.line.with.a.compresse
190e0 64 20 76 65 72 73 69 6f 6e 20 6f 66 20 69 74 73 65 6c 66 2c 20 77 69 74 68 20 74 68 65 20 6e 61 d.version.of.itself,.with.the.na
19100 6d 65 20 22 6f 72 69 67 69 6e 61 6c 5f 6e 61 6d 65 2e 6c 7a 22 2e 0a 57 68 65 6e 20 64 65 63 6f me."original_name.lz"..When.deco
19120 6d 70 72 65 73 73 69 6e 67 2c 20 6c 7a 69 70 20 61 74 74 65 6d 70 74 73 20 74 6f 20 67 75 65 73 mpressing,.lzip.attempts.to.gues
19140 73 20 74 68 65 20 6e 61 6d 65 20 66 6f 72 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 0a s.the.name.for.the.decompressed.
19160 66 69 6c 65 20 66 72 6f 6d 20 74 68 61 74 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 file.from.that.of.the.compressed
19180 20 66 69 6c 65 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 0a 66 69 6c 65 6e 61 6d 65 2e 6c 7a 20 20 .file.as.follows:..filename.lz..
191a0 20 20 62 65 63 6f 6d 65 73 20 20 20 66 69 6c 65 6e 61 6d 65 0a 66 69 6c 65 6e 61 6d 65 2e 74 6c ..becomes...filename.filename.tl
191c0 7a 20 20 20 62 65 63 6f 6d 65 73 20 20 20 66 69 6c 65 6e 61 6d 65 2e 74 61 72 0a 61 6e 79 6f 74 z...becomes...filename.tar.anyot
191e0 68 65 72 6e 61 6d 65 20 20 20 62 65 63 6f 6d 65 73 20 20 20 61 6e 79 6f 74 68 65 72 6e 61 6d 65 hername...becomes...anyothername
19200 2e 6f 75 74 0a 0a 28 44 65 29 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 20 66 69 6c 65 20 69 73 20 .out..(De)compressing.a.file.is.
19220 6d 75 63 68 20 6c 69 6b 65 20 63 6f 70 79 69 6e 67 20 6f 72 20 6d 6f 76 69 6e 67 20 69 74 2e 20 much.like.copying.or.moving.it..
19240 54 68 65 72 65 66 6f 72 65 20 6c 7a 69 70 0a 70 72 65 73 65 72 76 65 73 20 74 68 65 20 61 63 63 Therefore.lzip.preserves.the.acc
19260 65 73 73 20 61 6e 64 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 64 61 74 65 73 2c 20 70 65 72 6d ess.and.modification.dates,.perm
19280 69 73 73 69 6f 6e 73 2c 20 61 6e 64 2c 20 69 66 20 79 6f 75 20 68 61 76 65 0a 61 70 70 72 6f 70 issions,.and,.if.you.have.approp
192a0 72 69 61 74 65 20 70 72 69 76 69 6c 65 67 65 73 2c 20 6f 77 6e 65 72 73 68 69 70 20 6f 66 20 74 riate.privileges,.ownership.of.t
192c0 68 65 20 66 69 6c 65 20 6a 75 73 74 20 61 73 20 27 63 70 20 2d 70 27 20 64 6f 65 73 2e 20 28 49 he.file.just.as.'cp.-p'.does..(I
192e0 66 20 74 68 65 0a 75 73 65 72 20 49 44 20 6f 72 20 74 68 65 20 67 72 6f 75 70 20 49 44 20 63 61 f.the.user.ID.or.the.group.ID.ca
19300 6e 27 74 20 62 65 20 64 75 70 6c 69 63 61 74 65 64 2c 20 74 68 65 20 66 69 6c 65 20 70 65 72 6d n't.be.duplicated,.the.file.perm
19320 69 73 73 69 6f 6e 20 62 69 74 73 0a 53 5f 49 53 55 49 44 20 61 6e 64 20 53 5f 49 53 47 49 44 20 ission.bits.S_ISUID.and.S_ISGID.
19340 61 72 65 20 63 6c 65 61 72 65 64 29 2e 0a 0a 4c 7a 69 70 20 69 73 20 61 62 6c 65 20 74 6f 20 72 are.cleared)...Lzip.is.able.to.r
19360 65 61 64 20 66 72 6f 6d 20 73 6f 6d 65 20 74 79 70 65 73 20 6f 66 20 6e 6f 6e 2d 72 65 67 75 6c ead.from.some.types.of.non-regul
19380 61 72 20 66 69 6c 65 73 20 69 66 20 65 69 74 68 65 72 20 74 68 65 0a 6f 70 74 69 6f 6e 20 27 2d ar.files.if.either.the.option.'-
193a0 63 27 20 6f 72 20 74 68 65 20 6f 70 74 69 6f 6e 20 27 2d 6f 27 20 69 73 20 73 70 65 63 69 66 69 c'.or.the.option.'-o'.is.specifi
193c0 65 64 2e 0a 0a 49 66 20 6e 6f 20 66 69 6c 65 20 6e 61 6d 65 73 20 61 72 65 20 73 70 65 63 69 66 ed...If.no.file.names.are.specif
193e0 69 65 64 2c 20 6c 7a 69 70 20 63 6f 6d 70 72 65 73 73 65 73 20 28 6f 72 20 64 65 63 6f 6d 70 72 ied,.lzip.compresses.(or.decompr
19400 65 73 73 65 73 29 20 66 72 6f 6d 0a 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 20 74 6f 20 73 74 esses).from.standard.input.to.st
19420 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 20 4c 7a 69 70 20 72 65 66 75 73 65 73 20 74 6f 20 72 andard.output..Lzip.refuses.to.r
19440 65 61 64 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 0a 66 72 6f 6d 20 61 20 74 65 72 6d 69 ead.compressed.data.from.a.termi
19460 6e 61 6c 20 6f 72 20 77 72 69 74 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 74 6f 20 nal.or.write.compressed.data.to.
19480 61 20 74 65 72 6d 69 6e 61 6c 2c 20 61 73 20 74 68 69 73 20 77 6f 75 6c 64 20 62 65 0a 65 6e 74 a.terminal,.as.this.would.be.ent
194a0 69 72 65 6c 79 20 69 6e 63 6f 6d 70 72 65 68 65 6e 73 69 62 6c 65 20 61 6e 64 20 6d 69 67 68 74 irely.incomprehensible.and.might
194c0 20 6c 65 61 76 65 20 74 68 65 20 74 65 72 6d 69 6e 61 6c 20 69 6e 20 61 6e 20 61 62 6e 6f 72 6d .leave.the.terminal.in.an.abnorm
194e0 61 6c 20 73 74 61 74 65 2e 0a 0a 4c 7a 69 70 20 63 6f 72 72 65 63 74 6c 79 20 64 65 63 6f 6d 70 al.state...Lzip.correctly.decomp
19500 72 65 73 73 65 73 20 61 20 66 69 6c 65 20 77 68 69 63 68 20 69 73 20 74 68 65 20 63 6f 6e 63 61 resses.a.file.which.is.the.conca
19520 74 65 6e 61 74 69 6f 6e 20 6f 66 20 74 77 6f 20 6f 72 0a 6d 6f 72 65 20 63 6f 6d 70 72 65 73 73 tenation.of.two.or.more.compress
19540 65 64 20 66 69 6c 65 73 2e 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 74 68 65 20 63 6f 6e 63 ed.files..The.result.is.the.conc
19560 61 74 65 6e 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 0a 64 atenation.of.the.corresponding.d
19580 65 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 73 2e 20 49 6e 74 65 67 72 69 74 79 20 74 65 73 ecompressed.files..Integrity.tes
195a0 74 69 6e 67 20 6f 66 20 63 6f 6e 63 61 74 65 6e 61 74 65 64 20 63 6f 6d 70 72 65 73 73 65 64 20 ting.of.concatenated.compressed.
195c0 66 69 6c 65 73 20 69 73 0a 61 6c 73 6f 20 73 75 70 70 6f 72 74 65 64 2e 0a 0a 4c 7a 69 70 20 63 files.is.also.supported...Lzip.c
195e0 61 6e 20 70 72 6f 64 75 63 65 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 2c 20 61 6e an.produce.multimember.files,.an
19600 64 20 6c 7a 69 70 72 65 63 6f 76 65 72 20 63 61 6e 20 73 61 66 65 6c 79 20 72 65 63 6f 76 65 72 d.lziprecover.can.safely.recover
19620 20 74 68 65 0a 75 6e 64 61 6d 61 67 65 64 20 6d 65 6d 62 65 72 73 20 69 6e 20 63 61 73 65 20 6f .the.undamaged.members.in.case.o
19640 66 20 66 69 6c 65 20 64 61 6d 61 67 65 2e 20 4c 7a 69 70 20 63 61 6e 20 61 6c 73 6f 20 73 70 6c f.file.damage..Lzip.can.also.spl
19660 69 74 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 0a 6f 75 74 70 75 74 20 69 6e 20 76 6f 6c 75 it.the.compressed.output.in.volu
19680 6d 65 73 20 6f 66 20 61 20 67 69 76 65 6e 20 73 69 7a 65 2c 20 65 76 65 6e 20 77 68 65 6e 20 72 mes.of.a.given.size,.even.when.r
196a0 65 61 64 69 6e 67 20 66 72 6f 6d 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2e 0a 0a 4c 7a 69 eading.from.standard.input...Lzi
196c0 70 20 69 73 20 61 62 6c 65 20 74 6f 20 63 6f 6d 70 72 65 73 73 20 61 6e 64 20 64 65 63 6f 6d 70 p.is.able.to.compress.and.decomp
196e0 72 65 73 73 20 73 74 72 65 61 6d 73 20 6f 66 20 75 6e 6c 69 6d 69 74 65 64 20 73 69 7a 65 20 62 ress.streams.of.unlimited.size.b
19700 79 0a 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 72 65 61 74 69 6e 67 20 6d 75 6c 74 69 6d 65 y.automatically.creating.multime
19720 6d 62 65 72 20 6f 75 74 70 75 74 2e 20 54 68 65 20 6d 65 6d 62 65 72 73 20 73 6f 20 63 72 65 61 mber.output..The.members.so.crea
19740 74 65 64 20 61 72 65 20 6c 61 72 67 65 2c 0a 61 62 6f 75 74 20 32 20 50 69 42 20 65 61 63 68 2e ted.are.large,.about.2.PiB.each.
19760 0a 0a 49 6e 20 73 70 69 74 65 20 6f 66 20 69 74 73 20 6e 61 6d 65 20 28 4c 65 6d 70 65 6c 2d 5a ..In.spite.of.its.name.(Lempel-Z
19780 69 76 2d 4d 61 72 6b 6f 76 20 63 68 61 69 6e 2d 41 6c 67 6f 72 69 74 68 6d 29 2c 20 4c 5a 4d 41 iv-Markov.chain-Algorithm),.LZMA
197a0 20 69 73 20 6e 6f 74 20 61 0a 63 6f 6e 63 72 65 74 65 20 61 6c 67 6f 72 69 74 68 6d 3b 20 69 74 .is.not.a.concrete.algorithm;.it
197c0 20 69 73 20 6d 6f 72 65 20 6c 69 6b 65 20 22 61 6e 79 20 61 6c 67 6f 72 69 74 68 6d 20 75 73 69 .is.more.like."any.algorithm.usi
197e0 6e 67 20 74 68 65 20 4c 5a 4d 41 20 63 6f 64 69 6e 67 0a 73 63 68 65 6d 65 22 2e 20 46 6f 72 20 ng.the.LZMA.coding.scheme"..For.
19800 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 6f 70 74 69 6f 6e 20 27 2d 30 27 20 6f 66 20 6c 7a 69 70 example,.the.option.'-0'.of.lzip
19820 20 75 73 65 73 20 74 68 65 20 73 63 68 65 6d 65 20 69 6e 20 61 6c 6d 6f 73 74 20 74 68 65 0a 73 .uses.the.scheme.in.almost.the.s
19840 69 6d 70 6c 65 73 74 20 77 61 79 20 70 6f 73 73 69 62 6c 65 3b 20 69 73 73 75 69 6e 67 20 74 68 implest.way.possible;.issuing.th
19860 65 20 6c 6f 6e 67 65 73 74 20 6d 61 74 63 68 20 69 74 20 63 61 6e 20 66 69 6e 64 2c 20 6f 72 20 e.longest.match.it.can.find,.or.
19880 61 20 6c 69 74 65 72 61 6c 0a 62 79 74 65 20 69 66 20 69 74 20 63 61 6e 27 74 20 66 69 6e 64 20 a.literal.byte.if.it.can't.find.
198a0 61 20 6d 61 74 63 68 2e 20 49 6e 76 65 72 73 65 6c 79 2c 20 61 20 6d 6f 72 65 20 65 6c 61 62 6f a.match..Inversely,.a.more.elabo
198c0 72 61 74 65 20 77 61 79 20 6f 66 20 66 69 6e 64 69 6e 67 0a 63 6f 64 69 6e 67 20 73 65 71 75 65 rate.way.of.finding.coding.seque
198e0 6e 63 65 73 20 6f 66 20 6d 69 6e 69 6d 75 6d 20 73 69 7a 65 20 74 68 61 6e 20 74 68 65 20 6f 6e nces.of.minimum.size.than.the.on
19900 65 20 63 75 72 72 65 6e 74 6c 79 20 75 73 65 64 20 62 79 20 6c 7a 69 70 20 63 6f 75 6c 64 0a 62 e.currently.used.by.lzip.could.b
19920 65 20 64 65 76 65 6c 6f 70 65 64 2c 20 61 6e 64 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 73 e.developed,.and.the.resulting.s
19940 65 71 75 65 6e 63 65 20 63 6f 75 6c 64 20 61 6c 73 6f 20 62 65 20 63 6f 64 65 64 20 75 73 69 6e equence.could.also.be.coded.usin
19960 67 20 74 68 65 20 4c 5a 4d 41 0a 63 6f 64 69 6e 67 20 73 63 68 65 6d 65 2e 0a 0a 4c 7a 69 70 20 g.the.LZMA.coding.scheme...Lzip.
19980 63 75 72 72 65 6e 74 6c 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74 77 6f 20 76 61 72 69 61 6e 74 currently.implements.two.variant
199a0 73 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 61 6c 67 6f 72 69 74 68 6d 3a 20 66 61 73 74 0a 28 75 s.of.the.LZMA.algorithm:.fast.(u
199c0 73 65 64 20 62 79 20 6f 70 74 69 6f 6e 20 27 2d 30 27 29 20 61 6e 64 20 6e 6f 72 6d 61 6c 20 28 sed.by.option.'-0').and.normal.(
199e0 75 73 65 64 20 62 79 20 61 6c 6c 20 6f 74 68 65 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 used.by.all.other.compression.le
19a00 76 65 6c 73 29 2e 0a 0a 54 68 65 20 68 69 67 68 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 66 20 vels)...The.high.compression.of.
19a20 4c 5a 4d 41 20 63 6f 6d 65 73 20 66 72 6f 6d 20 63 6f 6d 62 69 6e 69 6e 67 20 74 77 6f 20 62 61 LZMA.comes.from.combining.two.ba
19a40 73 69 63 2c 20 77 65 6c 6c 2d 70 72 6f 76 65 6e 0a 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 64 65 sic,.well-proven.compression.ide
19a60 61 73 3a 20 73 6c 69 64 69 6e 67 20 64 69 63 74 69 6f 6e 61 72 69 65 73 20 28 4c 5a 37 37 29 20 as:.sliding.dictionaries.(LZ77).
19a80 61 6e 64 20 4d 61 72 6b 6f 76 20 6d 6f 64 65 6c 73 20 28 74 68 65 20 74 68 69 6e 67 0a 75 73 65 and.Markov.models.(the.thing.use
19aa0 64 20 62 79 20 65 76 65 72 79 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 61 6c 67 6f 72 69 74 68 6d d.by.every.compression.algorithm
19ac0 20 74 68 61 74 20 75 73 65 73 20 61 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 20 6f 72 20 73 69 .that.uses.a.range.encoder.or.si
19ae0 6d 69 6c 61 72 0a 6f 72 64 65 72 2d 30 20 65 6e 74 72 6f 70 79 20 63 6f 64 65 72 20 61 73 20 69 milar.order-0.entropy.coder.as.i
19b00 74 73 20 6c 61 73 74 20 73 74 61 67 65 29 20 77 69 74 68 20 73 65 67 72 65 67 61 74 69 6f 6e 20 ts.last.stage).with.segregation.
19b20 6f 66 20 63 6f 6e 74 65 78 74 73 0a 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 77 68 61 74 20 74 68 of.contexts.according.to.what.th
19b40 65 20 62 69 74 73 20 61 72 65 20 75 73 65 64 20 66 6f 72 2e 0a 0a 54 68 65 20 69 64 65 61 73 20 e.bits.are.used.for...The.ideas.
19b60 65 6d 62 6f 64 69 65 64 20 69 6e 20 6c 7a 69 70 20 61 72 65 20 64 75 65 20 74 6f 20 28 61 74 20 embodied.in.lzip.are.due.to.(at.
19b80 6c 65 61 73 74 29 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 65 6f 70 6c 65 3a 0a 41 62 72 least).the.following.people:.Abr
19ba0 61 68 61 6d 20 4c 65 6d 70 65 6c 20 61 6e 64 20 4a 61 63 6f 62 20 5a 69 76 20 28 66 6f 72 20 74 aham.Lempel.and.Jacob.Ziv.(for.t
19bc0 68 65 20 4c 5a 20 61 6c 67 6f 72 69 74 68 6d 29 2c 20 41 6e 64 72 65 69 20 4d 61 72 6b 6f 76 20 he.LZ.algorithm),.Andrei.Markov.
19be0 28 66 6f 72 20 74 68 65 0a 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 4d 61 72 6b 6f 76 20 63 68 (for.the.definition.of.Markov.ch
19c00 61 69 6e 73 29 2c 20 47 2e 4e 2e 4e 2e 20 4d 61 72 74 69 6e 20 28 66 6f 72 20 74 68 65 20 64 65 ains),.G.N.N..Martin.(for.the.de
19c20 66 69 6e 69 74 69 6f 6e 20 6f 66 20 72 61 6e 67 65 0a 65 6e 63 6f 64 69 6e 67 29 2c 20 49 67 6f finition.of.range.encoding),.Igo
19c40 72 20 50 61 76 6c 6f 76 20 28 66 6f 72 20 70 75 74 74 69 6e 67 20 61 6c 6c 20 74 68 65 20 61 62 r.Pavlov.(for.putting.all.the.ab
19c60 6f 76 65 20 74 6f 67 65 74 68 65 72 20 69 6e 20 4c 5a 4d 41 29 2c 20 61 6e 64 0a 4a 75 6c 69 61 ove.together.in.LZMA),.and.Julia
19c80 6e 20 53 65 77 61 72 64 20 28 66 6f 72 20 62 7a 69 70 32 27 73 20 43 4c 49 29 2e 0a 0a 4c 41 4e n.Seward.(for.bzip2's.CLI)...LAN
19ca0 47 55 41 47 45 20 4e 4f 54 45 3a 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 20 3d 20 6e 6f 74 20 63 GUAGE.NOTE:.Uncompressed.=.not.c
19cc0 6f 6d 70 72 65 73 73 65 64 20 3d 20 70 6c 61 69 6e 20 64 61 74 61 3b 20 69 74 20 6d 61 79 20 6e ompressed.=.plain.data;.it.may.n
19ce0 65 76 65 72 20 68 61 76 65 0a 62 65 65 6e 20 63 6f 6d 70 72 65 73 73 65 64 2e 20 44 65 63 6f 6d ever.have.been.compressed..Decom
19d00 70 72 65 73 73 65 64 20 69 73 20 75 73 65 64 20 74 6f 20 72 65 66 65 72 20 74 6f 20 64 61 74 61 pressed.is.used.to.refer.to.data
19d20 20 77 68 69 63 68 20 68 61 76 65 20 75 6e 64 65 72 67 6f 6e 65 0a 74 68 65 20 70 72 6f 63 65 73 .which.have.undergone.the.proces
19d40 73 20 6f 66 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0a 0a 4c 7a 69 70 20 75 73 65 73 20 41 s.of.decompression...Lzip.uses.A
19d60 72 67 5f 70 61 72 73 65 72 20 66 6f 72 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 61 72 67 75 6d rg_parser.for.command-line.argum
19d80 65 6e 74 20 70 61 72 73 69 6e 67 3a 0a 68 74 74 70 3a 2f 2f 77 77 77 2e 6e 6f 6e 67 6e 75 2e 6f ent.parsing:.http://www.nongnu.o
19da0 72 67 2f 61 72 67 2d 70 61 72 73 65 72 2f 61 72 67 5f 70 61 72 73 65 72 2e 68 74 6d 6c 0a 0a 0a rg/arg-parser/arg_parser.html...
19dc0 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 32 35 20 41 6e 74 6f 6e 69 6f 20 Copyright.(C).2008-2025.Antonio.
19de0 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 54 68 69 73 20 66 69 6c 65 20 69 73 20 66 72 65 65 20 64 6f Diaz.Diaz...This.file.is.free.do
19e00 63 75 6d 65 6e 74 61 74 69 6f 6e 3a 20 79 6f 75 20 68 61 76 65 20 75 6e 6c 69 6d 69 74 65 64 20 cumentation:.you.have.unlimited.
19e20 70 65 72 6d 69 73 73 69 6f 6e 20 74 6f 20 63 6f 70 79 2c 0a 64 69 73 74 72 69 62 75 74 65 2c 20 permission.to.copy,.distribute,.
19e40 61 6e 64 20 6d 6f 64 69 66 79 20 69 74 2e 0a 0a 54 68 65 20 66 69 6c 65 20 4d 61 6b 65 66 69 6c and.modify.it...The.file.Makefil
19e60 65 2e 69 6e 20 69 73 20 61 20 64 61 74 61 20 66 69 6c 65 20 75 73 65 64 20 62 79 20 63 6f 6e 66 e.in.is.a.data.file.used.by.conf
19e80 69 67 75 72 65 20 74 6f 20 70 72 6f 64 75 63 65 20 74 68 65 20 4d 61 6b 65 66 69 6c 65 2e 0a 49 igure.to.produce.the.Makefile..I
19ea0 74 20 68 61 73 20 74 68 65 20 73 61 6d 65 20 63 6f 70 79 72 69 67 68 74 20 6f 77 6e 65 72 20 61 t.has.the.same.copyright.owner.a
19ec0 6e 64 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 74 68 61 74 20 63 6f 6e 66 69 67 75 72 65 20 69 74 nd.permissions.that.configure.it
19ee0 73 65 6c 66 2e 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 self............................
19f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a000 6c 7a 69 70 2d 31 2e 32 35 2f 61 72 67 5f 70 61 72 73 65 72 2e 63 63 00 00 00 00 00 00 00 00 00 lzip-1.25/arg_parser.cc.........
1a020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a060 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
1a080 30 30 31 33 37 31 32 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 35 30 37 31 00 20 30 00 00 00 0013712.14744236057.015071..0...
1a0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a100 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
1a120 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
1a140 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
1a160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a200 2f 2a 20 41 72 67 5f 70 61 72 73 65 72 20 2d 20 50 4f 53 49 58 2f 47 4e 55 20 63 6f 6d 6d 61 6e /*.Arg_parser.-.POSIX/GNU.comman
1a220 64 2d 6c 69 6e 65 20 61 72 67 75 6d 65 6e 74 20 70 61 72 73 65 72 2e 20 28 43 2b 2b 20 76 65 72 d-line.argument.parser..(C++.ver
1a240 73 69 6f 6e 29 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 36 2d 32 30 32 35 sion)....Copyright.(C).2006-2025
1a260 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 6c 69 62 .Antonio.Diaz.Diaz......This.lib
1a280 72 61 72 79 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 2e 20 52 65 64 69 73 74 72 69 62 rary.is.free.software..Redistrib
1a2a0 75 74 69 6f 6e 20 61 6e 64 20 75 73 65 20 69 6e 20 73 6f 75 72 63 65 20 61 6e 64 0a 20 20 20 62 ution.and.use.in.source.and....b
1a2c0 69 6e 61 72 79 20 66 6f 72 6d 73 2c 20 77 69 74 68 20 6f 72 20 77 69 74 68 6f 75 74 20 6d 6f 64 inary.forms,.with.or.without.mod
1a2e0 69 66 69 63 61 74 69 6f 6e 2c 20 61 72 65 20 70 65 72 6d 69 74 74 65 64 20 70 72 6f 76 69 64 65 ification,.are.permitted.provide
1a300 64 0a 20 20 20 74 68 61 74 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f d....that.the.following.conditio
1a320 6e 73 20 61 72 65 20 6d 65 74 3a 0a 0a 20 20 20 31 2e 20 52 65 64 69 73 74 72 69 62 75 74 69 6f ns.are.met:.....1..Redistributio
1a340 6e 73 20 6f 66 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6d 75 73 74 20 72 65 74 61 69 6e 20 74 68 ns.of.source.code.must.retain.th
1a360 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 0a 20 20 20 6e 6f 74 69 63 65 2c 20 74 68 69 e.above.copyright....notice,.thi
1a380 73 20 6c 69 73 74 20 6f 66 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 61 6e 64 20 74 68 65 20 66 6f s.list.of.conditions,.and.the.fo
1a3a0 6c 6c 6f 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 2e 0a 0a 20 20 20 32 2e 20 52 65 64 69 73 llowing.disclaimer......2..Redis
1a3c0 74 72 69 62 75 74 69 6f 6e 73 20 69 6e 20 62 69 6e 61 72 79 20 66 6f 72 6d 20 6d 75 73 74 20 72 tributions.in.binary.form.must.r
1a3e0 65 70 72 6f 64 75 63 65 20 74 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 0a 20 20 20 eproduce.the.above.copyright....
1a400 6e 6f 74 69 63 65 2c 20 74 68 69 73 20 6c 69 73 74 20 6f 66 20 63 6f 6e 64 69 74 69 6f 6e 73 2c notice,.this.list.of.conditions,
1a420 20 61 6e 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 20 69 6e .and.the.following.disclaimer.in
1a440 20 74 68 65 0a 20 20 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 61 6e 64 2f 6f 72 20 6f 74 68 .the....documentation.and/or.oth
1a460 65 72 20 6d 61 74 65 72 69 61 6c 73 20 70 72 6f 76 69 64 65 64 20 77 69 74 68 20 74 68 65 20 64 er.materials.provided.with.the.d
1a480 69 73 74 72 69 62 75 74 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 6c 69 62 72 61 72 79 20 69 73 istribution......This.library.is
1a4a0 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 69 74 .distributed.in.the.hope.that.it
1a4c0 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 54 48 4f 55 54 20 .will.be.useful,....but.WITHOUT.
1a4e0 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 ANY.WARRANTY;.without.even.the.i
1a500 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 48 41 4e 54 41 42 mplied.warranty.of....MERCHANTAB
1a520 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 ILITY.or.FITNESS.FOR.A.PARTICULA
1a540 52 20 50 55 52 50 4f 53 45 2e 0a 2a 2f 0a 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 72 69 6e 67 R.PURPOSE..*/..#include.<cstring
1a560 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 76 65 >.#include.<string>.#include.<ve
1a580 63 74 6f 72 3e 0a 0a 23 69 6e 63 6c 75 64 65 20 22 61 72 67 5f 70 61 72 73 65 72 2e 68 22 0a 0a ctor>..#include."arg_parser.h"..
1a5a0 0a 62 6f 6f 6c 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 70 61 72 73 65 5f 6c 6f 6e 67 5f 6f 70 74 .bool.Arg_parser::parse_long_opt
1a5c0 69 6f 6e 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6f 70 74 2c 20 63 6f 6e ion(.const.char.*.const.opt,.con
1a5e0 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 st.char.*.const.arg,............
1a600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 4f .........................const.O
1a620 70 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 5b 5d 2c 20 69 6e 74 20 26 20 61 72 67 69 6e 64 20 29 0a ption.options[],.int.&.argind.).
1a640 20 20 7b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 65 6e 3b 0a 20 20 69 6e 74 20 69 6e 64 65 78 20 ..{...unsigned.len;...int.index.
1a660 3d 20 2d 31 3b 0a 20 20 62 6f 6f 6c 20 65 78 61 63 74 20 3d 20 66 61 6c 73 65 2c 20 61 6d 62 69 =.-1;...bool.exact.=.false,.ambi
1a680 67 20 3d 20 66 61 6c 73 65 3b 0a 0a 20 20 66 6f 72 28 20 6c 65 6e 20 3d 20 30 3b 20 6f 70 74 5b g.=.false;....for(.len.=.0;.opt[
1a6a0 6c 65 6e 2b 32 5d 20 26 26 20 6f 70 74 5b 6c 65 6e 2b 32 5d 20 21 3d 20 27 3d 27 3b 20 2b 2b 6c len+2].&&.opt[len+2].!=.'=';.++l
1a6c0 65 6e 20 29 20 3b 0a 0a 20 20 2f 2f 20 54 65 73 74 20 61 6c 6c 20 6c 6f 6e 67 20 6f 70 74 69 6f en.).;....//.Test.all.long.optio
1a6e0 6e 73 20 66 6f 72 20 65 69 74 68 65 72 20 65 78 61 63 74 20 6d 61 74 63 68 20 6f 72 20 61 62 62 ns.for.either.exact.match.or.abb
1a700 72 65 76 69 61 74 65 64 20 6d 61 74 63 68 65 73 2e 0a 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d reviated.matches....for(.int.i.=
1a720 20 30 3b 20 6f 70 74 69 6f 6e 73 5b 69 5d 2e 63 6f 64 65 20 21 3d 20 30 3b 20 2b 2b 69 20 29 0a .0;.options[i].code.!=.0;.++i.).
1a740 20 20 20 20 69 66 28 20 6f 70 74 69 6f 6e 73 5b 69 5d 2e 6c 6f 6e 67 5f 6e 61 6d 65 20 26 26 0a ....if(.options[i].long_name.&&.
1a760 20 20 20 20 20 20 20 20 73 74 64 3a 3a 73 74 72 6e 63 6d 70 28 20 6f 70 74 69 6f 6e 73 5b 69 5d ........std::strncmp(.options[i]
1a780 2e 6c 6f 6e 67 5f 6e 61 6d 65 2c 20 26 6f 70 74 5b 32 5d 2c 20 6c 65 6e 20 29 20 3d 3d 20 30 20 .long_name,.&opt[2],.len.).==.0.
1a7a0 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 73 74 64 3a 3a 73 74 72 6c 65 6e 28 ).......{.......if(.std::strlen(
1a7c0 20 6f 70 74 69 6f 6e 73 5b 69 5d 2e 6c 6f 6e 67 5f 6e 61 6d 65 20 29 20 3d 3d 20 6c 65 6e 20 29 .options[i].long_name.).==.len.)
1a7e0 09 2f 2f 20 45 78 61 63 74 20 6d 61 74 63 68 20 66 6f 75 6e 64 0a 20 20 20 20 20 20 20 20 7b 20 .//.Exact.match.found.........{.
1a800 69 6e 64 65 78 20 3d 20 69 3b 20 65 78 61 63 74 20 3d 20 74 72 75 65 3b 20 62 72 65 61 6b 3b 20 index.=.i;.exact.=.true;.break;.
1a820 7d 0a 20 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 69 6e 64 65 78 20 3c 20 30 20 29 20 69 6e 64 }.......else.if(.index.<.0.).ind
1a840 65 78 20 3d 20 69 3b 09 09 2f 2f 20 46 69 72 73 74 20 6e 6f 6e 65 78 61 63 74 20 6d 61 74 63 68 ex.=.i;..//.First.nonexact.match
1a860 20 66 6f 75 6e 64 0a 20 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 6f 70 74 69 6f 6e 73 5b 69 6e .found.......else.if(.options[in
1a880 64 65 78 5d 2e 63 6f 64 65 20 21 3d 20 6f 70 74 69 6f 6e 73 5b 69 5d 2e 63 6f 64 65 20 7c 7c 0a dex].code.!=.options[i].code.||.
1a8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 68 61 ...............options[index].ha
1a8c0 73 5f 61 72 67 20 21 3d 20 6f 70 74 69 6f 6e 73 5b 69 5d 2e 68 61 73 5f 61 72 67 20 29 0a 20 20 s_arg.!=.options[i].has_arg.)...
1a8e0 20 20 20 20 20 20 61 6d 62 69 67 20 3d 20 74 72 75 65 3b 09 09 2f 2f 20 53 65 63 6f 6e 64 20 6f ......ambig.=.true;..//.Second.o
1a900 72 20 6c 61 74 65 72 20 6e 6f 6e 65 78 61 63 74 20 6d 61 74 63 68 20 66 6f 75 6e 64 0a 20 20 20 r.later.nonexact.match.found....
1a920 20 20 20 7d 0a 0a 20 20 69 66 28 20 61 6d 62 69 67 20 26 26 20 21 65 78 61 63 74 20 29 0a 20 20 ...}....if(.ambig.&&.!exact.)...
1a940 20 20 7b 0a 20 20 20 20 65 72 72 6f 72 5f 20 3d 20 22 6f 70 74 69 6f 6e 20 27 22 3b 20 65 72 72 ..{.....error_.=."option.'";.err
1a960 6f 72 5f 20 2b 3d 20 6f 70 74 3b 20 65 72 72 6f 72 5f 20 2b 3d 20 22 27 20 69 73 20 61 6d 62 69 or_.+=.opt;.error_.+=."'.is.ambi
1a980 67 75 6f 75 73 22 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 7d 0a guous";.....return.false;.....}.
1a9a0 0a 20 20 69 66 28 20 69 6e 64 65 78 20 3c 20 30 20 29 09 09 2f 2f 20 6e 6f 74 68 69 6e 67 20 66 ...if(.index.<.0.)..//.nothing.f
1a9c0 6f 75 6e 64 0a 20 20 20 20 7b 0a 20 20 20 20 65 72 72 6f 72 5f 20 3d 20 22 75 6e 72 65 63 6f 67 ound.....{.....error_.=."unrecog
1a9e0 6e 69 7a 65 64 20 6f 70 74 69 6f 6e 20 27 22 3b 20 65 72 72 6f 72 5f 20 2b 3d 20 6f 70 74 3b 20 nized.option.'";.error_.+=.opt;.
1aa00 65 72 72 6f 72 5f 20 2b 3d 20 27 5c 27 27 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 error_.+=.'\'';.....return.false
1aa20 3b 0a 20 20 20 20 7d 0a 0a 20 20 2b 2b 61 72 67 69 6e 64 3b 0a 20 20 64 61 74 61 2e 70 75 73 68 ;.....}....++argind;...data.push
1aa40 5f 62 61 63 6b 28 20 52 65 63 6f 72 64 28 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 63 6f _back(.Record(.options[index].co
1aa60 64 65 2c 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 6c 6f 6e 67 5f 6e 61 6d 65 20 29 20 29 de,.options[index].long_name.).)
1aa80 3b 0a 0a 20 20 69 66 28 20 6f 70 74 5b 6c 65 6e 2b 32 5d 20 29 09 09 2f 2f 20 27 2d 2d 3c 6c 6f ;....if(.opt[len+2].)..//.'--<lo
1aaa0 6e 67 5f 6f 70 74 69 6f 6e 3e 3d 3c 61 72 67 75 6d 65 6e 74 3e 27 20 73 79 6e 74 61 78 0a 20 20 ng_option>=<argument>'.syntax...
1aac0 20 20 7b 0a 20 20 20 20 69 66 28 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 68 61 73 5f 61 ..{.....if(.options[index].has_a
1aae0 72 67 20 3d 3d 20 6e 6f 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 65 72 72 6f 72 5f 20 rg.==.no.).......{.......error_.
1ab00 3d 20 22 6f 70 74 69 6f 6e 20 27 2d 2d 22 3b 20 65 72 72 6f 72 5f 20 2b 3d 20 6f 70 74 69 6f 6e =."option.'--";.error_.+=.option
1ab20 73 5b 69 6e 64 65 78 5d 2e 6c 6f 6e 67 5f 6e 61 6d 65 3b 0a 20 20 20 20 20 20 65 72 72 6f 72 5f s[index].long_name;.......error_
1ab40 20 2b 3d 20 22 27 20 64 6f 65 73 6e 27 74 20 61 6c 6c 6f 77 20 61 6e 20 61 72 67 75 6d 65 6e 74 .+=."'.doesn't.allow.an.argument
1ab60 22 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 7d 0a 20 ";.......return.false;.......}..
1ab80 20 20 20 69 66 28 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 68 61 73 5f 61 72 67 20 3d 3d ...if(.options[index].has_arg.==
1aba0 20 79 65 73 20 26 26 20 21 6f 70 74 5b 6c 65 6e 2b 33 5d 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 .yes.&&.!opt[len+3].).......{...
1abc0 20 20 20 20 65 72 72 6f 72 5f 20 3d 20 22 6f 70 74 69 6f 6e 20 27 2d 2d 22 3b 20 65 72 72 6f 72 ....error_.=."option.'--";.error
1abe0 5f 20 2b 3d 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 6c 6f 6e 67 5f 6e 61 6d 65 3b 0a 20 _.+=.options[index].long_name;..
1ac00 20 20 20 20 20 65 72 72 6f 72 5f 20 2b 3d 20 22 27 20 72 65 71 75 69 72 65 73 20 61 6e 20 61 72 .....error_.+=."'.requires.an.ar
1ac20 67 75 6d 65 6e 74 22 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 gument";.......return.false;....
1ac40 20 20 20 7d 0a 20 20 20 20 64 61 74 61 2e 62 61 63 6b 28 29 2e 61 72 67 75 6d 65 6e 74 20 3d 20 ...}.....data.back().argument.=.
1ac60 26 6f 70 74 5b 6c 65 6e 2b 33 5d 3b 09 09 2f 2f 20 61 72 67 75 6d 65 6e 74 20 6d 61 79 20 62 65 &opt[len+3];..//.argument.may.be
1ac80 20 65 6d 70 74 79 0a 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 7d 0a 0a 20 .empty.....return.true;.....}...
1aca0 20 69 66 28 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 68 61 73 5f 61 72 67 20 3d 3d 20 79 .if(.options[index].has_arg.==.y
1acc0 65 73 20 7c 7c 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 68 61 73 5f 61 72 67 20 3d 3d 20 es.||.options[index].has_arg.==.
1ace0 79 6d 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 21 61 72 67 20 7c 7c 20 28 20 6f 70 yme.).....{.....if(.!arg.||.(.op
1ad00 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 68 61 73 5f 61 72 67 20 3d 3d 20 79 65 73 20 26 26 20 21 tions[index].has_arg.==.yes.&&.!
1ad20 61 72 67 5b 30 5d 20 29 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 65 72 72 6f 72 5f 20 arg[0].).).......{.......error_.
1ad40 3d 20 22 6f 70 74 69 6f 6e 20 27 2d 2d 22 3b 20 65 72 72 6f 72 5f 20 2b 3d 20 6f 70 74 69 6f 6e =."option.'--";.error_.+=.option
1ad60 73 5b 69 6e 64 65 78 5d 2e 6c 6f 6e 67 5f 6e 61 6d 65 3b 0a 20 20 20 20 20 20 65 72 72 6f 72 5f s[index].long_name;.......error_
1ad80 20 2b 3d 20 22 27 20 72 65 71 75 69 72 65 73 20 61 6e 20 61 72 67 75 6d 65 6e 74 22 3b 0a 20 20 .+=."'.requires.an.argument";...
1ada0 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 2b 2b ....return.false;.......}.....++
1adc0 61 72 67 69 6e 64 3b 20 64 61 74 61 2e 62 61 63 6b 28 29 2e 61 72 67 75 6d 65 6e 74 20 3d 20 61 argind;.data.back().argument.=.a
1ade0 72 67 3b 09 2f 2f 20 61 72 67 75 6d 65 6e 74 20 6d 61 79 20 62 65 20 65 6d 70 74 79 0a 20 20 20 rg;.//.argument.may.be.empty....
1ae00 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 72 65 74 75 72 6e 20 74 72 .return.true;.....}....return.tr
1ae20 75 65 3b 0a 20 20 7d 0a 0a 0a 62 6f 6f 6c 20 41 72 67 5f 70 61 72 73 65 72 3a 3a 70 61 72 73 65 ue;...}...bool.Arg_parser::parse
1ae40 5f 73 68 6f 72 74 5f 6f 70 74 69 6f 6e 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 _short_option(.const.char.*.cons
1ae60 74 20 6f 70 74 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 2c 0a 20 t.opt,.const.char.*.const.arg,..
1ae80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1aea0 20 20 20 20 63 6f 6e 73 74 20 4f 70 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 5b 5d 2c 20 69 6e 74 20 ....const.Option.options[],.int.
1aec0 26 20 61 72 67 69 6e 64 20 29 0a 20 20 7b 0a 20 20 69 6e 74 20 63 69 6e 64 20 3d 20 31 3b 09 09 &.argind.)...{...int.cind.=.1;..
1aee0 09 2f 2f 20 63 68 61 72 61 63 74 65 72 20 69 6e 64 65 78 20 69 6e 20 6f 70 74 0a 0a 20 20 77 68 .//.character.index.in.opt....wh
1af00 69 6c 65 28 20 63 69 6e 64 20 3e 20 30 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 6e 74 20 69 6e ile(.cind.>.0.).....{.....int.in
1af20 64 65 78 20 3d 20 2d 31 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 63 68 61 dex.=.-1;.....const.unsigned.cha
1af40 72 20 63 20 3d 20 6f 70 74 5b 63 69 6e 64 5d 3b 0a 0a 20 20 20 20 69 66 28 20 63 20 21 3d 20 30 r.c.=.opt[cind];......if(.c.!=.0
1af60 20 29 0a 20 20 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 6f 70 74 69 6f 6e 73 .).......for(.int.i.=.0;.options
1af80 5b 69 5d 2e 63 6f 64 65 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 20 20 69 66 28 20 63 20 3d 3d [i].code;.++i.).........if(.c.==
1afa0 20 6f 70 74 69 6f 6e 73 5b 69 5d 2e 63 6f 64 65 20 29 0a 20 20 20 20 20 20 20 20 20 20 7b 20 69 .options[i].code.)...........{.i
1afc0 6e 64 65 78 20 3d 20 69 3b 20 62 72 65 61 6b 3b 20 7d 0a 0a 20 20 20 20 69 66 28 20 69 6e 64 65 ndex.=.i;.break;.}......if(.inde
1afe0 78 20 3c 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 65 72 72 6f 72 5f 20 3d 20 22 x.<.0.).......{.......error_.=."
1b000 69 6e 76 61 6c 69 64 20 6f 70 74 69 6f 6e 20 2d 2d 20 27 22 3b 20 65 72 72 6f 72 5f 20 2b 3d 20 invalid.option.--.'";.error_.+=.
1b020 63 3b 20 65 72 72 6f 72 5f 20 2b 3d 20 27 5c 27 27 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 c;.error_.+=.'\'';.......return.
1b040 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 64 61 74 61 2e 70 75 73 68 5f 62 61 false;.......}......data.push_ba
1b060 63 6b 28 20 52 65 63 6f 72 64 28 20 63 20 29 20 29 3b 0a 20 20 20 20 69 66 28 20 6f 70 74 5b 2b ck(.Record(.c.).);.....if(.opt[+
1b080 2b 63 69 6e 64 5d 20 3d 3d 20 30 20 29 20 7b 20 2b 2b 61 72 67 69 6e 64 3b 20 63 69 6e 64 20 3d +cind].==.0.).{.++argind;.cind.=
1b0a0 20 30 3b 20 7d 09 2f 2f 20 6f 70 74 20 66 69 6e 69 73 68 65 64 0a 0a 20 20 20 20 69 66 28 20 6f .0;.}.//.opt.finished......if(.o
1b0c0 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 68 61 73 5f 61 72 67 20 21 3d 20 6e 6f 20 26 26 20 63 ptions[index].has_arg.!=.no.&&.c
1b0e0 69 6e 64 20 3e 20 30 20 26 26 20 6f 70 74 5b 63 69 6e 64 5d 20 29 0a 20 20 20 20 20 20 7b 0a 20 ind.>.0.&&.opt[cind].).......{..
1b100 20 20 20 20 20 64 61 74 61 2e 62 61 63 6b 28 29 2e 61 72 67 75 6d 65 6e 74 20 3d 20 26 6f 70 74 .....data.back().argument.=.&opt
1b120 5b 63 69 6e 64 5d 3b 20 2b 2b 61 72 67 69 6e 64 3b 20 63 69 6e 64 20 3d 20 30 3b 0a 20 20 20 20 [cind];.++argind;.cind.=.0;.....
1b140 20 20 7d 0a 20 20 20 20 65 6c 73 65 20 69 66 28 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e ..}.....else.if(.options[index].
1b160 68 61 73 5f 61 72 67 20 3d 3d 20 79 65 73 20 7c 7c 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d has_arg.==.yes.||.options[index]
1b180 2e 68 61 73 5f 61 72 67 20 3d 3d 20 79 6d 65 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 .has_arg.==.yme.).......{.......
1b1a0 69 66 28 20 21 61 72 67 20 7c 7c 20 28 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 68 61 73 if(.!arg.||.(.options[index].has
1b1c0 5f 61 72 67 20 3d 3d 20 79 65 73 20 26 26 20 21 61 72 67 5b 30 5d 20 29 20 29 0a 20 20 20 20 20 _arg.==.yes.&&.!arg[0].).)......
1b1e0 20 20 20 7b 0a 20 20 20 20 20 20 20 20 65 72 72 6f 72 5f 20 3d 20 22 6f 70 74 69 6f 6e 20 72 65 ...{.........error_.=."option.re
1b200 71 75 69 72 65 73 20 61 6e 20 61 72 67 75 6d 65 6e 74 20 2d 2d 20 27 22 3b 20 65 72 72 6f 72 5f quires.an.argument.--.'";.error_
1b220 20 2b 3d 20 63 3b 0a 20 20 20 20 20 20 20 20 65 72 72 6f 72 5f 20 2b 3d 20 27 5c 27 27 3b 0a 20 .+=.c;.........error_.+=.'\'';..
1b240 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 .......return.false;.........}..
1b260 20 20 20 20 20 2b 2b 61 72 67 69 6e 64 3b 20 63 69 6e 64 20 3d 20 30 3b 0a 20 20 20 20 20 20 64 .....++argind;.cind.=.0;.......d
1b280 61 74 61 2e 62 61 63 6b 28 29 2e 61 72 67 75 6d 65 6e 74 20 3d 20 61 72 67 3b 09 2f 2f 20 61 72 ata.back().argument.=.arg;.//.ar
1b2a0 67 75 6d 65 6e 74 20 6d 61 79 20 62 65 20 65 6d 70 74 79 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 gument.may.be.empty.......}.....
1b2c0 7d 0a 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 7d 0a 0a 0a 41 72 67 5f 70 61 72 73 65 }...return.true;...}...Arg_parse
1b2e0 72 3a 3a 41 72 67 5f 70 61 72 73 65 72 28 20 63 6f 6e 73 74 20 69 6e 74 20 61 72 67 63 2c 20 63 r::Arg_parser(.const.int.argc,.c
1b300 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 76 5b 5d 2c 0a 20 20 20 20 20 20 onst.char.*.const.argv[],.......
1b320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 4f 70 74 69 6f 6e 20 6f ..................const.Option.o
1b340 70 74 69 6f 6e 73 5b 5d 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 69 6e 5f 6f 72 64 65 72 20 29 0a ptions[],.const.bool.in_order.).
1b360 20 20 7b 0a 20 20 69 66 28 20 61 72 67 63 20 3c 20 32 20 7c 7c 20 21 61 72 67 76 20 7c 7c 20 21 ..{...if(.argc.<.2.||.!argv.||.!
1b380 6f 70 74 69 6f 6e 73 20 29 20 72 65 74 75 72 6e 3b 0a 0a 20 20 73 74 64 3a 3a 76 65 63 74 6f 72 options.).return;....std::vector
1b3a0 3c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 3e 20 6e 6f 6e 5f 6f 70 74 69 6f 6e 73 3b 09 2f 2f <.const.char.*.>.non_options;.//
1b3c0 20 73 6b 69 70 70 65 64 20 6e 6f 6e 2d 6f 70 74 69 6f 6e 73 0a 20 20 69 6e 74 20 61 72 67 69 6e .skipped.non-options...int.argin
1b3e0 64 20 3d 20 31 3b 09 09 09 09 2f 2f 20 69 6e 64 65 78 20 69 6e 20 61 72 67 76 0a 0a 20 20 77 68 d.=.1;....//.index.in.argv....wh
1b400 69 6c 65 28 20 61 72 67 69 6e 64 20 3c 20 61 72 67 63 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 ile(.argind.<.argc.).....{.....c
1b420 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 63 68 31 20 3d 20 61 72 67 76 5b 61 72 onst.unsigned.char.ch1.=.argv[ar
1b440 67 69 6e 64 5d 5b 30 5d 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 63 68 61 gind][0];.....const.unsigned.cha
1b460 72 20 63 68 32 20 3d 20 63 68 31 20 3f 20 61 72 67 76 5b 61 72 67 69 6e 64 5d 5b 31 5d 20 3a 20 r.ch2.=.ch1.?.argv[argind][1].:.
1b480 30 3b 0a 0a 20 20 20 20 69 66 28 20 63 68 31 20 3d 3d 20 27 2d 27 20 26 26 20 63 68 32 20 29 09 0;......if(.ch1.==.'-'.&&.ch2.).
1b4a0 09 2f 2f 20 77 65 20 66 6f 75 6e 64 20 61 6e 20 6f 70 74 69 6f 6e 0a 20 20 20 20 20 20 7b 0a 20 .//.we.found.an.option.......{..
1b4c0 20 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6f 70 74 20 3d 20 61 72 .....const.char.*.const.opt.=.ar
1b4e0 67 76 5b 61 72 67 69 6e 64 5d 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 gv[argind];.......const.char.*.c
1b500 6f 6e 73 74 20 61 72 67 20 3d 20 28 20 61 72 67 69 6e 64 20 2b 20 31 20 3c 20 61 72 67 63 20 29 onst.arg.=.(.argind.+.1.<.argc.)
1b520 20 3f 20 61 72 67 76 5b 61 72 67 69 6e 64 2b 31 5d 20 3a 20 30 3b 0a 20 20 20 20 20 20 69 66 28 .?.argv[argind+1].:.0;.......if(
1b540 20 63 68 32 20 3d 3d 20 27 2d 27 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 .ch2.==.'-'.).........{.........
1b560 69 66 28 20 21 61 72 67 76 5b 61 72 67 69 6e 64 5d 5b 32 5d 20 29 20 7b 20 2b 2b 61 72 67 69 6e if(.!argv[argind][2].).{.++argin
1b580 64 3b 20 62 72 65 61 6b 3b 20 7d 09 2f 2f 20 77 65 20 66 6f 75 6e 64 20 22 2d 2d 22 0a 20 20 20 d;.break;.}.//.we.found."--"....
1b5a0 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 21 70 61 72 73 65 5f 6c 6f 6e 67 5f 6f 70 74 69 6f 6e .....else.if(.!parse_long_option
1b5c0 28 20 6f 70 74 2c 20 61 72 67 2c 20 6f 70 74 69 6f 6e 73 2c 20 61 72 67 69 6e 64 20 29 20 29 20 (.opt,.arg,.options,.argind.).).
1b5e0 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 break;.........}.......else.if(.
1b600 21 70 61 72 73 65 5f 73 68 6f 72 74 5f 6f 70 74 69 6f 6e 28 20 6f 70 74 2c 20 61 72 67 2c 20 6f !parse_short_option(.opt,.arg,.o
1b620 70 74 69 6f 6e 73 2c 20 61 72 67 69 6e 64 20 29 20 29 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 ptions,.argind.).).break;.......
1b640 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 69 6e 5f }.....else.......{.......if(.in_
1b660 6f 72 64 65 72 20 29 20 64 61 74 61 2e 70 75 73 68 5f 62 61 63 6b 28 20 52 65 63 6f 72 64 28 20 order.).data.push_back(.Record(.
1b680 61 72 67 76 5b 61 72 67 69 6e 64 2b 2b 5d 20 29 20 29 3b 0a 20 20 20 20 20 20 65 6c 73 65 20 6e argv[argind++].).);.......else.n
1b6a0 6f 6e 5f 6f 70 74 69 6f 6e 73 2e 70 75 73 68 5f 62 61 63 6b 28 20 61 72 67 76 5b 61 72 67 69 6e on_options.push_back(.argv[argin
1b6c0 64 2b 2b 5d 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 21 65 72 72 d++].);.......}.....}...if(.!err
1b6e0 6f 72 5f 2e 65 6d 70 74 79 28 29 20 29 20 64 61 74 61 2e 63 6c 65 61 72 28 29 3b 0a 20 20 65 6c or_.empty().).data.clear();...el
1b700 73 65 0a 20 20 20 20 7b 0a 20 20 20 20 66 6f 72 28 20 75 6e 73 69 67 6e 65 64 20 69 20 3d 20 30 se.....{.....for(.unsigned.i.=.0
1b720 3b 20 69 20 3c 20 6e 6f 6e 5f 6f 70 74 69 6f 6e 73 2e 73 69 7a 65 28 29 3b 20 2b 2b 69 20 29 0a ;.i.<.non_options.size();.++i.).
1b740 20 20 20 20 20 20 64 61 74 61 2e 70 75 73 68 5f 62 61 63 6b 28 20 52 65 63 6f 72 64 28 20 6e 6f ......data.push_back(.Record(.no
1b760 6e 5f 6f 70 74 69 6f 6e 73 5b 69 5d 20 29 20 29 3b 0a 20 20 20 20 77 68 69 6c 65 28 20 61 72 67 n_options[i].).);.....while(.arg
1b780 69 6e 64 20 3c 20 61 72 67 63 20 29 0a 20 20 20 20 20 20 64 61 74 61 2e 70 75 73 68 5f 62 61 63 ind.<.argc.).......data.push_bac
1b7a0 6b 28 20 52 65 63 6f 72 64 28 20 61 72 67 76 5b 61 72 67 69 6e 64 2b 2b 5d 20 29 20 29 3b 0a 20 k(.Record(.argv[argind++].).);..
1b7c0 20 20 20 7d 0a 20 20 7d 0a 0a 0a 41 72 67 5f 70 61 72 73 65 72 3a 3a 41 72 67 5f 70 61 72 73 65 ...}...}...Arg_parser::Arg_parse
1b7e0 72 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6f 70 74 2c 20 63 6f 6e 73 74 r(.const.char.*.const.opt,.const
1b800 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .char.*.const.arg,..............
1b820 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 4f 70 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 5b ...........const.Option.options[
1b840 5d 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 21 6f 70 74 20 7c 7c 20 21 6f 70 74 5b 30 5d 20 7c 7c ].)...{...if(.!opt.||.!opt[0].||
1b860 20 21 6f 70 74 69 6f 6e 73 20 29 20 72 65 74 75 72 6e 3b 0a 0a 20 20 69 66 28 20 6f 70 74 5b 30 .!options.).return;....if(.opt[0
1b880 5d 20 3d 3d 20 27 2d 27 20 26 26 20 6f 70 74 5b 31 5d 20 29 09 09 2f 2f 20 77 65 20 66 6f 75 6e ].==.'-'.&&.opt[1].)..//.we.foun
1b8a0 64 20 61 6e 20 6f 70 74 69 6f 6e 0a 20 20 20 20 7b 0a 20 20 20 20 69 6e 74 20 61 72 67 69 6e 64 d.an.option.....{.....int.argind
1b8c0 20 3d 20 31 3b 09 09 09 2f 2f 20 64 75 6d 6d 79 0a 20 20 20 20 69 66 28 20 6f 70 74 5b 31 5d 20 .=.1;...//.dummy.....if(.opt[1].
1b8e0 3d 3d 20 27 2d 27 20 29 0a 20 20 20 20 20 20 7b 20 69 66 28 20 6f 70 74 5b 32 5d 20 29 20 70 61 ==.'-'.).......{.if(.opt[2].).pa
1b900 72 73 65 5f 6c 6f 6e 67 5f 6f 70 74 69 6f 6e 28 20 6f 70 74 2c 20 61 72 67 2c 20 6f 70 74 69 6f rse_long_option(.opt,.arg,.optio
1b920 6e 73 2c 20 61 72 67 69 6e 64 20 29 3b 20 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 70 ns,.argind.);.}.....else.......p
1b940 61 72 73 65 5f 73 68 6f 72 74 5f 6f 70 74 69 6f 6e 28 20 6f 70 74 2c 20 61 72 67 2c 20 6f 70 74 arse_short_option(.opt,.arg,.opt
1b960 69 6f 6e 73 2c 20 61 72 67 69 6e 64 20 29 3b 0a 20 20 20 20 69 66 28 20 21 65 72 72 6f 72 5f 2e ions,.argind.);.....if(.!error_.
1b980 65 6d 70 74 79 28 29 20 29 20 64 61 74 61 2e 63 6c 65 61 72 28 29 3b 0a 20 20 20 20 7d 0a 20 20 empty().).data.clear();.....}...
1b9a0 65 6c 73 65 20 64 61 74 61 2e 70 75 73 68 5f 62 61 63 6b 28 20 52 65 63 6f 72 64 28 20 6f 70 74 else.data.push_back(.Record(.opt
1b9c0 20 29 20 29 3b 0a 20 20 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .).);...}.......................
1b9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ba00 6c 7a 69 70 2d 31 2e 32 35 2f 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 63 63 00 00 00 00 00 00 00 lzip-1.25/encoder_base.cc.......
1ba20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ba40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ba60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
1ba80 30 30 31 34 31 34 32 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 35 33 35 33 00 20 30 00 00 00 0014142.14744236057.015353..0...
1baa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bb00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
1bb20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
1bb40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
1bb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bc00 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
1bc20 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
1bc40 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
1bc60 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
1bc80 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
1bca0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
1bcc0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
1bce0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
1bd00 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
1bd20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
1bd40 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
1bd60 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
1bd80 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
1bda0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
1bdc0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
1bde0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
1be00 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
1be20 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
1be40 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
1be60 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
1be80 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
1bea0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
1bec0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 23 64 65 /www.gnu.org/licenses/>..*/..#de
1bee0 66 69 6e 65 20 5f 46 49 4c 45 5f 4f 46 46 53 45 54 5f 42 49 54 53 20 36 34 0a 0a 23 69 6e 63 6c fine._FILE_OFFSET_BITS.64..#incl
1bf00 75 64 65 20 3c 61 6c 67 6f 72 69 74 68 6d 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 65 72 72 6e 6f ude.<algorithm>.#include.<cerrno
1bf20 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 64 6c 69 62 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 >.#include.<cstdlib>.#include.<c
1bf40 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 6e 65 77 3e 0a 23 69 6e 63 6c 75 64 65 20 string>.#include.<new>.#include.
1bf60 3c 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 76 65 63 74 6f 72 3e 0a 23 69 6e 63 6c <string>.#include.<vector>.#incl
1bf80 75 64 65 20 3c 73 74 64 69 6e 74 2e 68 3e 0a 0a 23 69 6e 63 6c 75 64 65 20 22 6c 7a 69 70 2e 68 ude.<stdint.h>..#include."lzip.h
1bfa0 22 0a 23 69 6e 63 6c 75 64 65 20 22 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 68 22 0a 0a 0a 44 69 ".#include."encoder_base.h"...Di
1bfc0 73 5f 73 6c 6f 74 73 20 64 69 73 5f 73 6c 6f 74 73 3b 0a 50 72 6f 62 5f 70 72 69 63 65 73 20 70 s_slots.dis_slots;.Prob_prices.p
1bfe0 72 6f 62 5f 70 72 69 63 65 73 3b 0a 0a 0a 62 6f 6f 6c 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 rob_prices;...bool.Matchfinder_b
1c000 61 73 65 3a 3a 72 65 61 64 5f 62 6c 6f 63 6b 28 29 0a 20 20 7b 0a 20 20 69 66 28 20 21 61 74 5f ase::read_block()...{...if(.!at_
1c020 73 74 72 65 61 6d 5f 65 6e 64 20 26 26 20 73 74 72 65 61 6d 5f 70 6f 73 20 3c 20 62 75 66 66 65 stream_end.&&.stream_pos.<.buffe
1c040 72 5f 73 69 7a 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 73 69 7a r_size.).....{.....const.int.siz
1c060 65 20 3d 20 62 75 66 66 65 72 5f 73 69 7a 65 20 2d 20 73 74 72 65 61 6d 5f 70 6f 73 3b 0a 20 20 e.=.buffer_size.-.stream_pos;...
1c080 20 20 63 6f 6e 73 74 20 69 6e 74 20 72 64 20 3d 20 72 65 61 64 62 6c 6f 63 6b 28 20 69 6e 66 64 ..const.int.rd.=.readblock(.infd
1c0a0 2c 20 62 75 66 66 65 72 20 2b 20 73 74 72 65 61 6d 5f 70 6f 73 2c 20 73 69 7a 65 20 29 3b 0a 20 ,.buffer.+.stream_pos,.size.);..
1c0c0 20 20 20 73 74 72 65 61 6d 5f 70 6f 73 20 2b 3d 20 72 64 3b 0a 20 20 20 20 69 66 28 20 72 64 20 ...stream_pos.+=.rd;.....if(.rd.
1c0e0 21 3d 20 73 69 7a 65 20 26 26 20 65 72 72 6e 6f 20 29 20 74 68 72 6f 77 20 45 72 72 6f 72 28 20 !=.size.&&.errno.).throw.Error(.
1c100 22 52 65 61 64 20 65 72 72 6f 72 22 20 29 3b 0a 20 20 20 20 69 66 28 20 72 64 20 3c 20 73 69 7a "Read.error".);.....if(.rd.<.siz
1c120 65 20 29 20 7b 20 61 74 5f 73 74 72 65 61 6d 5f 65 6e 64 20 3d 20 74 72 75 65 3b 20 70 6f 73 5f e.).{.at_stream_end.=.true;.pos_
1c140 6c 69 6d 69 74 20 3d 20 62 75 66 66 65 72 5f 73 69 7a 65 3b 20 7d 0a 20 20 20 20 7d 0a 20 20 72 limit.=.buffer_size;.}.....}...r
1c160 65 74 75 72 6e 20 70 6f 73 20 3c 20 73 74 72 65 61 6d 5f 70 6f 73 3b 0a 20 20 7d 0a 0a 0a 76 6f eturn.pos.<.stream_pos;...}...vo
1c180 69 64 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 3a 3a 6e 6f 72 6d 61 6c 69 7a 65 5f 70 id.Matchfinder_base::normalize_p
1c1a0 6f 73 28 29 0a 20 20 7b 0a 20 20 69 66 28 20 70 6f 73 20 3e 20 73 74 72 65 61 6d 5f 70 6f 73 20 os()...{...if(.pos.>.stream_pos.
1c1c0 29 0a 20 20 20 20 69 6e 74 65 72 6e 61 6c 5f 65 72 72 6f 72 28 20 22 70 6f 73 20 3e 20 73 74 72 ).....internal_error(."pos.>.str
1c1e0 65 61 6d 5f 70 6f 73 20 69 6e 20 6e 6f 72 6d 61 6c 69 7a 65 5f 70 6f 73 2e 22 20 29 3b 0a 20 20 eam_pos.in.normalize_pos.".);...
1c200 69 66 28 20 21 61 74 5f 73 74 72 65 61 6d 5f 65 6e 64 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 2f if(.!at_stream_end.).....{...../
1c220 2f 20 6f 66 66 73 65 74 20 69 73 20 69 6e 74 33 32 5f 74 20 66 6f 72 20 74 68 65 20 73 74 64 3a /.offset.is.int32_t.for.the.std:
1c240 3a 6d 69 6e 20 62 65 6c 6f 77 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 33 32 5f 74 20 6f 66 66 :min.below.....const.int32_t.off
1c260 73 65 74 20 3d 20 70 6f 73 20 2d 20 62 65 66 6f 72 65 5f 73 69 7a 65 20 2d 20 64 69 63 74 69 6f set.=.pos.-.before_size.-.dictio
1c280 6e 61 72 79 5f 73 69 7a 65 3b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 20 3d 20 nary_size;.....const.int.size.=.
1c2a0 73 74 72 65 61 6d 5f 70 6f 73 20 2d 20 6f 66 66 73 65 74 3b 0a 20 20 20 20 73 74 64 3a 3a 6d 65 stream_pos.-.offset;.....std::me
1c2c0 6d 6d 6f 76 65 28 20 62 75 66 66 65 72 2c 20 62 75 66 66 65 72 20 2b 20 6f 66 66 73 65 74 2c 20 mmove(.buffer,.buffer.+.offset,.
1c2e0 73 69 7a 65 20 29 3b 0a 20 20 20 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 20 2b 3d 20 size.);.....partial_data_pos.+=.
1c300 6f 66 66 73 65 74 3b 0a 20 20 20 20 70 6f 73 20 2d 3d 20 6f 66 66 73 65 74 3b 09 09 2f 2f 20 70 offset;.....pos.-=.offset;..//.p
1c320 6f 73 20 3d 20 62 65 66 6f 72 65 5f 73 69 7a 65 20 2b 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 os.=.before_size.+.dictionary_si
1c340 7a 65 0a 20 20 20 20 73 74 72 65 61 6d 5f 70 6f 73 20 2d 3d 20 6f 66 66 73 65 74 3b 0a 20 20 20 ze.....stream_pos.-=.offset;....
1c360 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d 5f 70 72 65 76 5f 70 6f .for(.int.i.=.0;.i.<.num_prev_po
1c380 73 69 74 69 6f 6e 73 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 70 72 65 76 5f 70 6f 73 69 74 69 sitions;.++i.).......prev_positi
1c3a0 6f 6e 73 5b 69 5d 20 2d 3d 20 73 74 64 3a 3a 6d 69 6e 28 20 70 72 65 76 5f 70 6f 73 69 74 69 6f ons[i].-=.std::min(.prev_positio
1c3c0 6e 73 5b 69 5d 2c 20 6f 66 66 73 65 74 20 29 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 ns[i],.offset.);.....for(.int.i.
1c3e0 3d 20 30 3b 20 69 20 3c 20 70 6f 73 5f 61 72 72 61 79 5f 73 69 7a 65 3b 20 2b 2b 69 20 29 0a 20 =.0;.i.<.pos_array_size;.++i.)..
1c400 20 20 20 20 20 70 6f 73 5f 61 72 72 61 79 5b 69 5d 20 2d 3d 20 73 74 64 3a 3a 6d 69 6e 28 20 70 .....pos_array[i].-=.std::min(.p
1c420 6f 73 5f 61 72 72 61 79 5b 69 5d 2c 20 6f 66 66 73 65 74 20 29 3b 0a 20 20 20 20 72 65 61 64 5f os_array[i],.offset.);.....read_
1c440 62 6c 6f 63 6b 28 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 0a 0a 0a 4d 61 74 63 68 66 69 6e 64 65 72 block();.....}...}...Matchfinder
1c460 5f 62 61 73 65 3a 3a 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 28 20 63 6f 6e 73 74 20 69 _base::Matchfinder_base(.const.i
1c480 6e 74 20 62 65 66 6f 72 65 5f 73 69 7a 65 5f 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nt.before_size_,................
1c4a0 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 63 74 5f 73 69 7a 65 2c 20 63 6f 6e 73 74 20 .....const.int.dict_size,.const.
1c4c0 69 6e 74 20 61 66 74 65 72 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 int.after_size,.................
1c4e0 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 63 74 5f 66 61 63 74 6f 72 2c 20 63 6f 6e 73 74 ....const.int.dict_factor,.const
1c500 20 69 6e 74 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 33 5f 2c 0a 20 20 20 20 .int.num_prev_positions23_,.....
1c520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 61 72 ................const.int.pos_ar
1c540 72 61 79 5f 66 61 63 74 6f 72 2c 20 63 6f 6e 73 74 20 69 6e 74 20 69 66 64 20 29 0a 20 20 3a 0a ray_factor,.const.int.ifd.)...:.
1c560 20 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 28 20 30 20 29 2c 0a 20 20 62 65 66 6f 72 ..partial_data_pos(.0.),...befor
1c580 65 5f 73 69 7a 65 28 20 62 65 66 6f 72 65 5f 73 69 7a 65 5f 20 29 2c 0a 20 20 70 6f 73 28 20 30 e_size(.before_size_.),...pos(.0
1c5a0 20 29 2c 0a 20 20 63 79 63 6c 69 63 5f 70 6f 73 28 20 30 20 29 2c 0a 20 20 73 74 72 65 61 6d 5f .),...cyclic_pos(.0.),...stream_
1c5c0 70 6f 73 28 20 30 20 29 2c 0a 20 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 33 pos(.0.),...num_prev_positions23
1c5e0 28 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 33 5f 20 29 2c 0a 20 20 69 6e 66 (.num_prev_positions23_.),...inf
1c600 64 28 20 69 66 64 20 29 2c 0a 20 20 61 74 5f 73 74 72 65 61 6d 5f 65 6e 64 28 20 66 61 6c 73 65 d(.ifd.),...at_stream_end(.false
1c620 20 29 0a 20 20 7b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 62 75 66 66 65 72 5f 73 69 7a 65 5f 6c .)...{...const.int.buffer_size_l
1c640 69 6d 69 74 20 3d 0a 20 20 20 20 28 20 64 69 63 74 5f 66 61 63 74 6f 72 20 2a 20 64 69 63 74 5f imit.=.....(.dict_factor.*.dict_
1c660 73 69 7a 65 20 29 20 2b 20 62 65 66 6f 72 65 5f 73 69 7a 65 20 2b 20 61 66 74 65 72 5f 73 69 7a size.).+.before_size.+.after_siz
1c680 65 3b 0a 20 20 62 75 66 66 65 72 5f 73 69 7a 65 20 3d 20 73 74 64 3a 3a 6d 61 78 28 20 36 35 35 e;...buffer_size.=.std::max(.655
1c6a0 33 36 2c 20 64 69 63 74 5f 73 69 7a 65 20 29 3b 0a 20 20 62 75 66 66 65 72 20 3d 20 28 75 69 6e 36,.dict_size.);...buffer.=.(uin
1c6c0 74 38 5f 74 20 2a 29 73 74 64 3a 3a 6d 61 6c 6c 6f 63 28 20 62 75 66 66 65 72 5f 73 69 7a 65 20 t8_t.*)std::malloc(.buffer_size.
1c6e0 29 3b 0a 20 20 69 66 28 20 21 62 75 66 66 65 72 20 29 20 74 68 72 6f 77 20 73 74 64 3a 3a 62 61 );...if(.!buffer.).throw.std::ba
1c700 64 5f 61 6c 6c 6f 63 28 29 3b 0a 20 20 69 66 28 20 72 65 61 64 5f 62 6c 6f 63 6b 28 29 20 26 26 d_alloc();...if(.read_block().&&
1c720 20 21 61 74 5f 73 74 72 65 61 6d 5f 65 6e 64 20 26 26 20 62 75 66 66 65 72 5f 73 69 7a 65 20 3c .!at_stream_end.&&.buffer_size.<
1c740 20 62 75 66 66 65 72 5f 73 69 7a 65 5f 6c 69 6d 69 74 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 .buffer_size_limit.).....{.....u
1c760 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 74 6d 70 20 3d 20 28 75 69 6e 74 38 5f 74 20 2a 29 int8_t.*.const.tmp.=.(uint8_t.*)
1c780 73 74 64 3a 3a 72 65 61 6c 6c 6f 63 28 20 62 75 66 66 65 72 2c 20 62 75 66 66 65 72 5f 73 69 7a std::realloc(.buffer,.buffer_siz
1c7a0 65 5f 6c 69 6d 69 74 20 29 3b 0a 20 20 20 20 69 66 28 20 21 74 6d 70 20 29 20 7b 20 73 74 64 3a e_limit.);.....if(.!tmp.).{.std:
1c7c0 3a 66 72 65 65 28 20 62 75 66 66 65 72 20 29 3b 20 74 68 72 6f 77 20 73 74 64 3a 3a 62 61 64 5f :free(.buffer.);.throw.std::bad_
1c7e0 61 6c 6c 6f 63 28 29 3b 20 7d 0a 20 20 20 20 62 75 66 66 65 72 20 3d 20 74 6d 70 3b 0a 20 20 20 alloc();.}.....buffer.=.tmp;....
1c800 20 62 75 66 66 65 72 5f 73 69 7a 65 20 3d 20 62 75 66 66 65 72 5f 73 69 7a 65 5f 6c 69 6d 69 74 .buffer_size.=.buffer_size_limit
1c820 3b 0a 20 20 20 20 72 65 61 64 5f 62 6c 6f 63 6b 28 29 3b 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 ;.....read_block();.....}...if(.
1c840 61 74 5f 73 74 72 65 61 6d 5f 65 6e 64 20 26 26 20 73 74 72 65 61 6d 5f 70 6f 73 20 3c 20 64 69 at_stream_end.&&.stream_pos.<.di
1c860 63 74 5f 73 69 7a 65 20 29 0a 20 20 20 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3d 20 ct_size.).....dictionary_size.=.
1c880 73 74 64 3a 3a 6d 61 78 28 20 28 69 6e 74 29 6d 69 6e 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 std::max(.(int)min_dictionary_si
1c8a0 7a 65 2c 20 73 74 72 65 61 6d 5f 70 6f 73 20 29 3b 0a 20 20 65 6c 73 65 0a 20 20 20 20 64 69 63 ze,.stream_pos.);...else.....dic
1c8c0 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3d 20 64 69 63 74 5f 73 69 7a 65 3b 0a 20 20 70 6f 73 5f tionary_size.=.dict_size;...pos_
1c8e0 6c 69 6d 69 74 20 3d 20 62 75 66 66 65 72 5f 73 69 7a 65 3b 0a 20 20 69 66 28 20 21 61 74 5f 73 limit.=.buffer_size;...if(.!at_s
1c900 74 72 65 61 6d 5f 65 6e 64 20 29 20 70 6f 73 5f 6c 69 6d 69 74 20 2d 3d 20 61 66 74 65 72 5f 73 tream_end.).pos_limit.-=.after_s
1c920 69 7a 65 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 73 69 7a 65 20 3d 20 31 20 3c 3c 20 73 74 64 3a ize;...unsigned.size.=.1.<<.std:
1c940 3a 6d 61 78 28 20 31 36 2c 20 72 65 61 6c 5f 62 69 74 73 28 20 64 69 63 74 69 6f 6e 61 72 79 5f :max(.16,.real_bits(.dictionary_
1c960 73 69 7a 65 20 2d 20 31 20 29 20 2d 20 32 20 29 3b 0a 20 20 69 66 28 20 64 69 63 74 69 6f 6e 61 size.-.1.).-.2.);...if(.dictiona
1c980 72 79 5f 73 69 7a 65 20 3e 20 31 20 3c 3c 20 32 36 20 29 20 73 69 7a 65 20 3e 3e 3d 20 31 3b 09 ry_size.>.1.<<.26.).size.>>=.1;.
1c9a0 09 2f 2f 20 36 34 20 4d 69 42 0a 20 20 6b 65 79 34 5f 6d 61 73 6b 20 3d 20 73 69 7a 65 20 2d 20 .//.64.MiB...key4_mask.=.size.-.
1c9c0 31 3b 09 09 09 2f 2f 20 69 6e 63 72 65 61 73 65 73 20 77 69 74 68 20 64 69 63 74 69 6f 6e 61 72 1;...//.increases.with.dictionar
1c9e0 79 20 73 69 7a 65 0a 20 20 73 69 7a 65 20 2b 3d 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 y.size...size.+=.num_prev_positi
1ca00 6f 6e 73 32 33 3b 0a 20 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 20 3d 20 73 69 ons23;...num_prev_positions.=.si
1ca20 7a 65 3b 0a 0a 20 20 70 6f 73 5f 61 72 72 61 79 5f 73 69 7a 65 20 3d 20 70 6f 73 5f 61 72 72 61 ze;....pos_array_size.=.pos_arra
1ca40 79 5f 66 61 63 74 6f 72 20 2a 20 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 2b 20 31 y_factor.*.(.dictionary_size.+.1
1ca60 20 29 3b 0a 20 20 73 69 7a 65 20 2b 3d 20 70 6f 73 5f 61 72 72 61 79 5f 73 69 7a 65 3b 0a 20 20 .);...size.+=.pos_array_size;...
1ca80 69 66 28 20 73 69 7a 65 20 2a 20 73 69 7a 65 6f 66 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 if(.size.*.sizeof.prev_positions
1caa0 5b 30 5d 20 3c 3d 20 73 69 7a 65 20 29 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 20 3d 20 30 [0].<=.size.).prev_positions.=.0
1cac0 3b 0a 20 20 65 6c 73 65 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 20 3d 20 6e 65 77 28 20 73 ;...else.prev_positions.=.new(.s
1cae0 74 64 3a 3a 6e 6f 74 68 72 6f 77 20 29 20 69 6e 74 33 32 5f 74 5b 73 69 7a 65 5d 3b 0a 20 20 69 td::nothrow.).int32_t[size];...i
1cb00 66 28 20 21 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 20 29 20 7b 20 73 74 64 3a 3a 66 72 65 65 f(.!prev_positions.).{.std::free
1cb20 28 20 62 75 66 66 65 72 20 29 3b 20 74 68 72 6f 77 20 73 74 64 3a 3a 62 61 64 5f 61 6c 6c 6f 63 (.buffer.);.throw.std::bad_alloc
1cb40 28 29 3b 20 7d 0a 20 20 70 6f 73 5f 61 72 72 61 79 20 3d 20 70 72 65 76 5f 70 6f 73 69 74 69 6f ();.}...pos_array.=.prev_positio
1cb60 6e 73 20 2b 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 3b 0a 20 20 66 6f 72 28 20 ns.+.num_prev_positions;...for(.
1cb80 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e int.i.=.0;.i.<.num_prev_position
1cba0 73 3b 20 2b 2b 69 20 29 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 5b 69 5d 20 3d 20 30 3b 0a s;.++i.).prev_positions[i].=.0;.
1cbc0 20 20 7d 0a 0a 0a 76 6f 69 64 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 3a 3a 72 65 73 ..}...void.Matchfinder_base::res
1cbe0 65 74 28 29 0a 20 20 7b 0a 20 20 69 66 28 20 73 74 72 65 61 6d 5f 70 6f 73 20 3e 20 70 6f 73 20 et()...{...if(.stream_pos.>.pos.
1cc00 29 0a 20 20 20 20 73 74 64 3a 3a 6d 65 6d 6d 6f 76 65 28 20 62 75 66 66 65 72 2c 20 62 75 66 66 ).....std::memmove(.buffer,.buff
1cc20 65 72 20 2b 20 70 6f 73 2c 20 73 74 72 65 61 6d 5f 70 6f 73 20 2d 20 70 6f 73 20 29 3b 0a 20 20 er.+.pos,.stream_pos.-.pos.);...
1cc40 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 20 3d 20 30 3b 0a 20 20 73 74 72 65 61 6d 5f 70 partial_data_pos.=.0;...stream_p
1cc60 6f 73 20 2d 3d 20 70 6f 73 3b 0a 20 20 70 6f 73 20 3d 20 30 3b 0a 20 20 63 79 63 6c 69 63 5f 70 os.-=.pos;...pos.=.0;...cyclic_p
1cc80 6f 73 20 3d 20 30 3b 0a 20 20 72 65 61 64 5f 62 6c 6f 63 6b 28 29 3b 0a 20 20 69 66 28 20 61 74 os.=.0;...read_block();...if(.at
1cca0 5f 73 74 72 65 61 6d 5f 65 6e 64 20 26 26 20 73 74 72 65 61 6d 5f 70 6f 73 20 3c 20 64 69 63 74 _stream_end.&&.stream_pos.<.dict
1ccc0 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 64 69 63 74 69 6f 6e 61 ionary_size.).....{.....dictiona
1cce0 72 79 5f 73 69 7a 65 20 3d 20 73 74 64 3a 3a 6d 61 78 28 20 28 69 6e 74 29 6d 69 6e 5f 64 69 63 ry_size.=.std::max(.(int)min_dic
1cd00 74 69 6f 6e 61 72 79 5f 73 69 7a 65 2c 20 73 74 72 65 61 6d 5f 70 6f 73 20 29 3b 0a 20 20 20 20 tionary_size,.stream_pos.);.....
1cd20 69 6e 74 20 73 69 7a 65 20 3d 20 31 20 3c 3c 20 73 74 64 3a 3a 6d 61 78 28 20 31 36 2c 20 72 65 int.size.=.1.<<.std::max(.16,.re
1cd40 61 6c 5f 62 69 74 73 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 2d 20 31 20 29 20 2d al_bits(.dictionary_size.-.1.).-
1cd60 20 32 20 29 3b 0a 20 20 20 20 69 66 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3e 20 .2.);.....if(.dictionary_size.>.
1cd80 31 20 3c 3c 20 32 36 20 29 20 73 69 7a 65 20 3e 3e 3d 20 31 3b 09 09 2f 2f 20 36 34 20 4d 69 42 1.<<.26.).size.>>=.1;..//.64.MiB
1cda0 0a 20 20 20 20 6b 65 79 34 5f 6d 61 73 6b 20 3d 20 73 69 7a 65 20 2d 20 31 3b 0a 20 20 20 20 73 .....key4_mask.=.size.-.1;.....s
1cdc0 69 7a 65 20 2b 3d 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 33 3b 0a 20 20 20 ize.+=.num_prev_positions23;....
1cde0 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 20 3d 20 73 69 7a 65 3b 0a 20 20 20 20 .num_prev_positions.=.size;.....
1ce00 70 6f 73 5f 61 72 72 61 79 20 3d 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 20 2b 20 6e 75 6d pos_array.=.prev_positions.+.num
1ce20 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 3b 0a 20 20 20 20 7d 0a 20 20 66 6f 72 28 20 69 6e _prev_positions;.....}...for(.in
1ce40 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 3b t.i.=.0;.i.<.num_prev_positions;
1ce60 20 2b 2b 69 20 29 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 5b 69 5d 20 3d 20 30 3b 0a 20 20 .++i.).prev_positions[i].=.0;...
1ce80 7d 0a 0a 0a 76 6f 69 64 20 52 61 6e 67 65 5f 65 6e 63 6f 64 65 72 3a 3a 66 6c 75 73 68 5f 64 61 }...void.Range_encoder::flush_da
1cea0 74 61 28 29 0a 20 20 7b 0a 20 20 69 66 28 20 70 6f 73 20 3e 20 30 20 29 0a 20 20 20 20 7b 0a 20 ta()...{...if(.pos.>.0.).....{..
1cec0 20 20 20 69 66 28 20 6f 75 74 66 64 20 3e 3d 20 30 20 26 26 20 77 72 69 74 65 62 6c 6f 63 6b 28 ...if(.outfd.>=.0.&&.writeblock(
1cee0 20 6f 75 74 66 64 2c 20 62 75 66 66 65 72 2c 20 70 6f 73 20 29 20 21 3d 20 70 6f 73 20 29 0a 20 .outfd,.buffer,.pos.).!=.pos.)..
1cf00 20 20 20 20 20 74 68 72 6f 77 20 45 72 72 6f 72 28 20 77 72 5f 65 72 72 5f 6d 73 67 20 29 3b 0a .....throw.Error(.wr_err_msg.);.
1cf20 20 20 20 20 70 61 72 74 69 61 6c 5f 6d 65 6d 62 65 72 5f 70 6f 73 20 2b 3d 20 70 6f 73 3b 0a 20 ....partial_member_pos.+=.pos;..
1cf40 20 20 20 70 6f 73 20 3d 20 30 3b 0a 20 20 20 20 73 68 6f 77 5f 63 70 72 6f 67 72 65 73 73 28 29 ...pos.=.0;.....show_cprogress()
1cf60 3b 0a 20 20 20 20 7d 0a 20 20 7d 0a 0a 0a 2f 2f 20 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 20 6d ;.....}...}...//.End.Of.Stream.m
1cf80 61 72 6b 65 72 20 3d 3e 20 28 64 69 73 20 3d 3d 20 30 78 46 46 46 46 46 46 46 46 55 2c 20 6c 65 arker.=>.(dis.==.0xFFFFFFFFU,.le
1cfa0 6e 20 3d 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 29 0a 76 6f 69 64 20 4c 5a 5f 65 6e 63 6f n.==.min_match_len).void.LZ_enco
1cfc0 64 65 72 5f 62 61 73 65 3a 3a 66 75 6c 6c 5f 66 6c 75 73 68 28 20 63 6f 6e 73 74 20 53 74 61 74 der_base::full_flush(.const.Stat
1cfe0 65 20 73 74 61 74 65 20 29 0a 20 20 7b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 e.state.)...{...const.int.pos_st
1d000 61 74 65 20 3d 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 26 20 70 6f 73 5f 73 74 61 74 ate.=.data_position().&.pos_stat
1d020 65 5f 6d 61 73 6b 3b 0a 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 6d 61 e_mask;...renc.encode_bit(.bm_ma
1d040 74 63 68 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 31 20 29 3b 0a 20 20 tch[state()][pos_state],.1.);...
1d060 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 5b 73 74 61 74 65 28 29 5d renc.encode_bit(.bm_rep[state()]
1d080 2c 20 30 20 29 3b 0a 20 20 65 6e 63 6f 64 65 5f 70 61 69 72 28 20 30 78 46 46 46 46 46 46 46 46 ,.0.);...encode_pair(.0xFFFFFFFF
1d0a0 55 2c 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 U,.min_match_len,.pos_state.);..
1d0c0 20 72 65 6e 63 2e 66 6c 75 73 68 28 29 3b 0a 20 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 20 74 72 .renc.flush();...Lzip_trailer.tr
1d0e0 61 69 6c 65 72 3b 0a 20 20 74 72 61 69 6c 65 72 2e 64 61 74 61 5f 63 72 63 28 20 63 72 63 28 29 ailer;...trailer.data_crc(.crc()
1d100 20 29 3b 0a 20 20 74 72 61 69 6c 65 72 2e 64 61 74 61 5f 73 69 7a 65 28 20 64 61 74 61 5f 70 6f .);...trailer.data_size(.data_po
1d120 73 69 74 69 6f 6e 28 29 20 29 3b 0a 20 20 74 72 61 69 6c 65 72 2e 6d 65 6d 62 65 72 5f 73 69 7a sition().);...trailer.member_siz
1d140 65 28 20 72 65 6e 63 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 20 2b 20 74 72 61 69 e(.renc.member_position().+.trai
1d160 6c 65 72 2e 73 69 7a 65 20 29 3b 0a 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 ler.size.);...for(.int.i.=.0;.i.
1d180 3c 20 74 72 61 69 6c 65 72 2e 73 69 7a 65 3b 20 2b 2b 69 20 29 20 72 65 6e 63 2e 70 75 74 5f 62 <.trailer.size;.++i.).renc.put_b
1d1a0 79 74 65 28 20 74 72 61 69 6c 65 72 2e 64 61 74 61 5b 69 5d 20 29 3b 0a 20 20 72 65 6e 63 2e 66 yte(.trailer.data[i].);...renc.f
1d1c0 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 4c 5a 5f 65 6e 63 6f 64 lush_data();...}...void.LZ_encod
1d1e0 65 72 5f 62 61 73 65 3a 3a 72 65 73 65 74 28 29 0a 20 20 7b 0a 20 20 4d 61 74 63 68 66 69 6e 64 er_base::reset()...{...Matchfind
1d200 65 72 5f 62 61 73 65 3a 3a 72 65 73 65 74 28 29 3b 0a 20 20 63 72 63 5f 20 3d 20 30 78 46 46 46 er_base::reset();...crc_.=.0xFFF
1d220 46 46 46 46 46 55 3b 0a 20 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 30 5d 5b 30 5d 2e 72 65 73 65 74 FFFFFU;...bm_literal[0][0].reset
1d240 28 20 28 31 20 3c 3c 20 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 74 73 29 20 2a 20 (.(1.<<.literal_context_bits).*.
1d260 30 78 33 30 30 20 29 3b 0a 20 20 62 6d 5f 6d 61 74 63 68 5b 30 5d 5b 30 5d 2e 72 65 73 65 74 28 0x300.);...bm_match[0][0].reset(
1d280 20 53 74 61 74 65 3a 3a 73 74 61 74 65 73 20 2a 20 70 6f 73 5f 73 74 61 74 65 73 20 29 3b 0a 20 .State::states.*.pos_states.);..
1d2a0 20 62 6d 5f 72 65 70 5b 30 5d 2e 72 65 73 65 74 28 20 53 74 61 74 65 3a 3a 73 74 61 74 65 73 20 .bm_rep[0].reset(.State::states.
1d2c0 29 3b 0a 20 20 62 6d 5f 72 65 70 30 5b 30 5d 2e 72 65 73 65 74 28 20 53 74 61 74 65 3a 3a 73 74 );...bm_rep0[0].reset(.State::st
1d2e0 61 74 65 73 20 29 3b 0a 20 20 62 6d 5f 72 65 70 31 5b 30 5d 2e 72 65 73 65 74 28 20 53 74 61 74 ates.);...bm_rep1[0].reset(.Stat
1d300 65 3a 3a 73 74 61 74 65 73 20 29 3b 0a 20 20 62 6d 5f 72 65 70 32 5b 30 5d 2e 72 65 73 65 74 28 e::states.);...bm_rep2[0].reset(
1d320 20 53 74 61 74 65 3a 3a 73 74 61 74 65 73 20 29 3b 0a 20 20 62 6d 5f 6c 65 6e 5b 30 5d 5b 30 5d .State::states.);...bm_len[0][0]
1d340 2e 72 65 73 65 74 28 20 53 74 61 74 65 3a 3a 73 74 61 74 65 73 20 2a 20 70 6f 73 5f 73 74 61 74 .reset(.State::states.*.pos_stat
1d360 65 73 20 29 3b 0a 20 20 62 6d 5f 64 69 73 5f 73 6c 6f 74 5b 30 5d 5b 30 5d 2e 72 65 73 65 74 28 es.);...bm_dis_slot[0][0].reset(
1d380 20 6c 65 6e 5f 73 74 61 74 65 73 20 2a 20 28 31 20 3c 3c 20 64 69 73 5f 73 6c 6f 74 5f 62 69 74 .len_states.*.(1.<<.dis_slot_bit
1d3a0 73 29 20 29 3b 0a 20 20 62 6d 5f 64 69 73 5b 30 5d 2e 72 65 73 65 74 28 20 6d 6f 64 65 6c 65 64 s).);...bm_dis[0].reset(.modeled
1d3c0 5f 64 69 73 74 61 6e 63 65 73 20 2d 20 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 20 2b 20 31 20 29 _distances.-.end_dis_model.+.1.)
1d3e0 3b 0a 20 20 62 6d 5f 61 6c 69 67 6e 5b 30 5d 2e 72 65 73 65 74 28 20 64 69 73 5f 61 6c 69 67 6e ;...bm_align[0].reset(.dis_align
1d400 5f 73 69 7a 65 20 29 3b 0a 20 20 6d 61 74 63 68 5f 6c 65 6e 5f 6d 6f 64 65 6c 2e 72 65 73 65 74 _size.);...match_len_model.reset
1d420 28 29 3b 0a 20 20 72 65 70 5f 6c 65 6e 5f 6d 6f 64 65 6c 2e 72 65 73 65 74 28 29 3b 0a 20 20 72 ();...rep_len_model.reset();...r
1d440 65 6e 63 2e 72 65 73 65 74 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 3b 0a 20 20 enc.reset(.dictionary_size.);...
1d460 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 }...............................
1d480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d600 6c 7a 69 70 2d 31 2e 32 35 2f 65 6e 63 6f 64 65 72 2e 63 63 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/encoder.cc............
1d620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
1d680 30 30 34 36 34 30 32 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 34 33 36 35 00 20 30 00 00 00 0046402.14744236057.014365..0...
1d6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d700 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
1d720 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
1d740 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
1d760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d800 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
1d820 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
1d840 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
1d860 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
1d880 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
1d8a0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
1d8c0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
1d8e0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
1d900 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
1d920 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
1d940 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
1d960 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
1d980 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
1d9a0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
1d9c0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
1d9e0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
1da00 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
1da20 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
1da40 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
1da60 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
1da80 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
1daa0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
1dac0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 23 64 65 /www.gnu.org/licenses/>..*/..#de
1dae0 66 69 6e 65 20 5f 46 49 4c 45 5f 4f 46 46 53 45 54 5f 42 49 54 53 20 36 34 0a 0a 23 69 6e 63 6c fine._FILE_OFFSET_BITS.64..#incl
1db00 75 64 65 20 3c 61 6c 67 6f 72 69 74 68 6d 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 65 72 72 6e 6f ude.<algorithm>.#include.<cerrno
1db20 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 64 6c 69 62 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 >.#include.<cstdlib>.#include.<c
1db40 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 string>.#include.<string>.#inclu
1db60 64 65 20 3c 76 65 63 74 6f 72 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6e 74 2e 68 3e 0a de.<vector>.#include.<stdint.h>.
1db80 0a 23 69 6e 63 6c 75 64 65 20 22 6c 7a 69 70 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 65 6e 63 .#include."lzip.h".#include."enc
1dba0 6f 64 65 72 5f 62 61 73 65 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 65 6e 63 6f 64 65 72 2e 68 oder_base.h".#include."encoder.h
1dbc0 22 0a 0a 0a 63 6f 6e 73 74 20 43 52 43 33 32 20 63 72 63 33 32 3b 0a 0a 0a 69 6e 74 20 4c 5a 5f "...const.CRC32.crc32;...int.LZ_
1dbe0 65 6e 63 6f 64 65 72 3a 3a 67 65 74 5f 6d 61 74 63 68 5f 70 61 69 72 73 28 20 50 61 69 72 20 2a encoder::get_match_pairs(.Pair.*
1dc00 20 70 61 69 72 73 20 29 0a 20 20 7b 0a 20 20 69 6e 74 20 6c 65 6e 5f 6c 69 6d 69 74 20 3d 20 6d .pairs.)...{...int.len_limit.=.m
1dc20 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 3b 0a 20 20 69 66 28 20 6c 65 6e 5f 6c 69 6d 69 74 20 atch_len_limit;...if(.len_limit.
1dc40 3e 20 61 76 61 69 6c 61 62 6c 65 5f 62 79 74 65 73 28 29 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 >.available_bytes().).....{.....
1dc60 6c 65 6e 5f 6c 69 6d 69 74 20 3d 20 61 76 61 69 6c 61 62 6c 65 5f 62 79 74 65 73 28 29 3b 0a 20 len_limit.=.available_bytes();..
1dc80 20 20 20 69 66 28 20 6c 65 6e 5f 6c 69 6d 69 74 20 3c 20 34 20 29 20 72 65 74 75 72 6e 20 30 3b ...if(.len_limit.<.4.).return.0;
1dca0 0a 20 20 20 20 7d 0a 0a 20 20 69 6e 74 20 6d 61 78 6c 65 6e 20 3d 20 33 3b 09 09 09 2f 2f 20 6f .....}....int.maxlen.=.3;...//.o
1dcc0 6e 6c 79 20 75 73 65 64 20 69 66 20 70 61 69 72 73 20 21 3d 20 30 0a 20 20 69 6e 74 20 6e 75 6d nly.used.if.pairs.!=.0...int.num
1dce0 5f 70 61 69 72 73 20 3d 20 30 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 6d 69 6e 5f 70 6f 73 20 _pairs.=.0;...const.int.min_pos.
1dd00 3d 20 28 20 70 6f 73 20 3e 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 3f 20 70 6f =.(.pos.>.dictionary_size.).?.po
1dd20 73 20 2d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3a 20 30 3b 0a 20 20 63 6f 6e 73 74 s.-.dictionary_size.:.0;...const
1dd40 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 64 61 74 61 20 3d 20 70 74 72 5f 74 6f 5f 63 .uint8_t.*.const.data.=.ptr_to_c
1dd60 75 72 72 65 6e 74 5f 70 6f 73 28 29 3b 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 74 6d 70 20 3d 20 urrent_pos();....unsigned.tmp.=.
1dd80 63 72 63 33 32 5b 64 61 74 61 5b 30 5d 5d 20 5e 20 64 61 74 61 5b 31 5d 3b 0a 20 20 63 6f 6e 73 crc32[data[0]].^.data[1];...cons
1dda0 74 20 69 6e 74 20 6b 65 79 32 20 3d 20 74 6d 70 20 26 20 28 20 6e 75 6d 5f 70 72 65 76 5f 70 6f t.int.key2.=.tmp.&.(.num_prev_po
1ddc0 73 69 74 69 6f 6e 73 32 20 2d 20 31 20 29 3b 0a 20 20 74 6d 70 20 5e 3d 20 28 75 6e 73 69 67 6e sitions2.-.1.);...tmp.^=.(unsign
1dde0 65 64 29 64 61 74 61 5b 32 5d 20 3c 3c 20 38 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 6b 65 79 ed)data[2].<<.8;...const.int.key
1de00 33 20 3d 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 20 2b 20 28 20 74 6d 70 20 3.=.num_prev_positions2.+.(.tmp.
1de20 26 20 28 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 33 20 2d 20 31 20 29 20 29 3b &.(.num_prev_positions3.-.1.).);
1de40 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 6b 65 79 34 20 3d 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 ...const.int.key4.=.num_prev_pos
1de60 69 74 69 6f 6e 73 32 33 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 20 itions23.+....................(.
1de80 28 20 74 6d 70 20 5e 20 28 20 63 72 63 33 32 5b 64 61 74 61 5b 33 5d 5d 20 3c 3c 20 35 20 29 20 (.tmp.^.(.crc32[data[3]].<<.5.).
1dea0 29 20 26 20 6b 65 79 34 5f 6d 61 73 6b 20 29 3b 0a 0a 20 20 69 66 28 20 70 61 69 72 73 20 29 0a ).&.key4_mask.);....if(.pairs.).
1dec0 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6e 70 32 20 3d 20 70 72 65 76 5f 70 ....{.....const.int.np2.=.prev_p
1dee0 6f 73 69 74 69 6f 6e 73 5b 6b 65 79 32 5d 3b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6e 70 ositions[key2];.....const.int.np
1df00 33 20 3d 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 5b 6b 65 79 33 5d 3b 0a 20 20 20 20 69 66 3.=.prev_positions[key3];.....if
1df20 28 20 6e 70 32 20 3e 20 6d 69 6e 5f 70 6f 73 20 26 26 20 62 75 66 66 65 72 5b 6e 70 32 2d 31 5d (.np2.>.min_pos.&&.buffer[np2-1]
1df40 20 3d 3d 20 64 61 74 61 5b 30 5d 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 70 61 69 72 .==.data[0].).......{.......pair
1df60 73 5b 30 5d 2e 64 69 73 20 3d 20 70 6f 73 20 2d 20 6e 70 32 3b 0a 20 20 20 20 20 20 70 61 69 72 s[0].dis.=.pos.-.np2;.......pair
1df80 73 5b 30 5d 2e 6c 65 6e 20 3d 20 6d 61 78 6c 65 6e 20 3d 20 32 20 2b 20 28 20 6e 70 32 20 3d 3d s[0].len.=.maxlen.=.2.+.(.np2.==
1dfa0 20 6e 70 33 20 29 3b 0a 20 20 20 20 20 20 6e 75 6d 5f 70 61 69 72 73 20 3d 20 31 3b 0a 20 20 20 .np3.);.......num_pairs.=.1;....
1dfc0 20 20 20 7d 0a 20 20 20 20 69 66 28 20 6e 70 32 20 21 3d 20 6e 70 33 20 26 26 20 6e 70 33 20 3e ...}.....if(.np2.!=.np3.&&.np3.>
1dfe0 20 6d 69 6e 5f 70 6f 73 20 26 26 20 62 75 66 66 65 72 5b 6e 70 33 2d 31 5d 20 3d 3d 20 64 61 74 .min_pos.&&.buffer[np3-1].==.dat
1e000 61 5b 30 5d 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 6d 61 78 6c 65 6e 20 3d 20 33 3b a[0].).......{.......maxlen.=.3;
1e020 0a 20 20 20 20 20 20 70 61 69 72 73 5b 6e 75 6d 5f 70 61 69 72 73 2b 2b 5d 2e 64 69 73 20 3d 20 .......pairs[num_pairs++].dis.=.
1e040 70 6f 73 20 2d 20 6e 70 33 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 6e 75 6d 5f 70 pos.-.np3;.......}.....if(.num_p
1e060 61 69 72 73 20 3e 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 airs.>.0.).......{.......const.i
1e080 6e 74 20 64 65 6c 74 61 20 3d 20 70 61 69 72 73 5b 6e 75 6d 5f 70 61 69 72 73 2d 31 5d 2e 64 69 nt.delta.=.pairs[num_pairs-1].di
1e0a0 73 20 2b 20 31 3b 0a 20 20 20 20 20 20 77 68 69 6c 65 28 20 6d 61 78 6c 65 6e 20 3c 20 6c 65 6e s.+.1;.......while(.maxlen.<.len
1e0c0 5f 6c 69 6d 69 74 20 26 26 20 64 61 74 61 5b 6d 61 78 6c 65 6e 2d 64 65 6c 74 61 5d 20 3d 3d 20 _limit.&&.data[maxlen-delta].==.
1e0e0 64 61 74 61 5b 6d 61 78 6c 65 6e 5d 20 29 0a 20 20 20 20 20 20 20 20 2b 2b 6d 61 78 6c 65 6e 3b data[maxlen].).........++maxlen;
1e100 0a 20 20 20 20 20 20 70 61 69 72 73 5b 6e 75 6d 5f 70 61 69 72 73 2d 31 5d 2e 6c 65 6e 20 3d 20 .......pairs[num_pairs-1].len.=.
1e120 6d 61 78 6c 65 6e 3b 0a 20 20 20 20 20 20 69 66 28 20 6d 61 78 6c 65 6e 20 3c 20 33 20 29 20 6d maxlen;.......if(.maxlen.<.3.).m
1e140 61 78 6c 65 6e 20 3d 20 33 3b 0a 20 20 20 20 20 20 69 66 28 20 6d 61 78 6c 65 6e 20 3e 3d 20 6c axlen.=.3;.......if(.maxlen.>=.l
1e160 65 6e 5f 6c 69 6d 69 74 20 29 20 70 61 69 72 73 20 3d 20 30 3b 09 2f 2f 20 64 6f 6e 65 2e 20 6e en_limit.).pairs.=.0;.//.done..n
1e180 6f 77 20 6a 75 73 74 20 73 6b 69 70 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 63 6f ow.just.skip.......}.....}....co
1e1a0 6e 73 74 20 69 6e 74 20 70 6f 73 31 20 3d 20 70 6f 73 20 2b 20 31 3b 0a 20 20 70 72 65 76 5f 70 nst.int.pos1.=.pos.+.1;...prev_p
1e1c0 6f 73 69 74 69 6f 6e 73 5b 6b 65 79 32 5d 20 3d 20 70 6f 73 31 3b 0a 20 20 70 72 65 76 5f 70 6f ositions[key2].=.pos1;...prev_po
1e1e0 73 69 74 69 6f 6e 73 5b 6b 65 79 33 5d 20 3d 20 70 6f 73 31 3b 0a 20 20 69 6e 74 20 6e 65 77 70 sitions[key3].=.pos1;...int.newp
1e200 6f 73 31 20 3d 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 5b 6b 65 79 34 5d 3b 0a 20 20 70 72 os1.=.prev_positions[key4];...pr
1e220 65 76 5f 70 6f 73 69 74 69 6f 6e 73 5b 6b 65 79 34 5d 20 3d 20 70 6f 73 31 3b 0a 0a 20 20 69 6e ev_positions[key4].=.pos1;....in
1e240 74 33 32 5f 74 20 2a 20 70 74 72 30 20 3d 20 70 6f 73 5f 61 72 72 61 79 20 2b 20 28 20 63 79 63 t32_t.*.ptr0.=.pos_array.+.(.cyc
1e260 6c 69 63 5f 70 6f 73 20 3c 3c 20 31 20 29 3b 0a 20 20 69 6e 74 33 32 5f 74 20 2a 20 70 74 72 31 lic_pos.<<.1.);...int32_t.*.ptr1
1e280 20 3d 20 70 74 72 30 20 2b 20 31 3b 0a 20 20 69 6e 74 20 6c 65 6e 20 3d 20 30 2c 20 6c 65 6e 30 .=.ptr0.+.1;...int.len.=.0,.len0
1e2a0 20 3d 20 30 2c 20 6c 65 6e 31 20 3d 20 30 3b 0a 0a 20 20 66 6f 72 28 20 69 6e 74 20 63 6f 75 6e .=.0,.len1.=.0;....for(.int.coun
1e2c0 74 20 3d 20 63 79 63 6c 65 73 3b 20 3b 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 6e 65 t.=.cycles;.;.).....{.....if(.ne
1e2e0 77 70 6f 73 31 20 3c 3d 20 6d 69 6e 5f 70 6f 73 20 7c 7c 20 2d 2d 63 6f 75 6e 74 20 3c 20 30 20 wpos1.<=.min_pos.||.--count.<.0.
1e300 29 20 7b 20 2a 70 74 72 30 20 3d 20 2a 70 74 72 31 20 3d 20 30 3b 20 62 72 65 61 6b 3b 20 7d 0a ).{.*ptr0.=.*ptr1.=.0;.break;.}.
1e320 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 65 6c 74 61 20 3d 20 70 6f 73 31 20 2d 20 6e 65 .....const.int.delta.=.pos1.-.ne
1e340 77 70 6f 73 31 3b 0a 20 20 20 20 69 6e 74 33 32 5f 74 20 2a 20 63 6f 6e 73 74 20 6e 65 77 70 74 wpos1;.....int32_t.*.const.newpt
1e360 72 20 3d 20 70 6f 73 5f 61 72 72 61 79 20 2b 0a 20 20 20 20 20 20 28 20 28 20 63 79 63 6c 69 63 r.=.pos_array.+.......(.(.cyclic
1e380 5f 70 6f 73 20 2d 20 64 65 6c 74 61 20 2b 0a 20 20 20 20 20 20 20 20 20 20 28 20 28 20 63 79 63 _pos.-.delta.+...........(.(.cyc
1e3a0 6c 69 63 5f 70 6f 73 20 3e 3d 20 64 65 6c 74 61 20 29 20 3f 20 30 20 3a 20 64 69 63 74 69 6f 6e lic_pos.>=.delta.).?.0.:.diction
1e3c0 61 72 79 5f 73 69 7a 65 20 2b 20 31 20 29 20 29 20 3c 3c 20 31 20 29 3b 0a 20 20 20 20 69 66 28 ary_size.+.1.).).<<.1.);.....if(
1e3e0 20 64 61 74 61 5b 6c 65 6e 2d 64 65 6c 74 61 5d 20 3d 3d 20 64 61 74 61 5b 6c 65 6e 5d 20 29 0a .data[len-delta].==.data[len].).
1e400 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 77 68 69 6c 65 28 20 2b 2b 6c 65 6e 20 3c 20 6c 65 6e ......{.......while(.++len.<.len
1e420 5f 6c 69 6d 69 74 20 26 26 20 64 61 74 61 5b 6c 65 6e 2d 64 65 6c 74 61 5d 20 3d 3d 20 64 61 74 _limit.&&.data[len-delta].==.dat
1e440 61 5b 6c 65 6e 5d 20 29 20 7b 7d 0a 20 20 20 20 20 20 69 66 28 20 70 61 69 72 73 20 26 26 20 6d a[len].).{}.......if(.pairs.&&.m
1e460 61 78 6c 65 6e 20 3c 20 6c 65 6e 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 axlen.<.len.).........{.........
1e480 70 61 69 72 73 5b 6e 75 6d 5f 70 61 69 72 73 5d 2e 64 69 73 20 3d 20 64 65 6c 74 61 20 2d 20 31 pairs[num_pairs].dis.=.delta.-.1
1e4a0 3b 0a 20 20 20 20 20 20 20 20 70 61 69 72 73 5b 6e 75 6d 5f 70 61 69 72 73 5d 2e 6c 65 6e 20 3d ;.........pairs[num_pairs].len.=
1e4c0 20 6d 61 78 6c 65 6e 20 3d 20 6c 65 6e 3b 0a 20 20 20 20 20 20 20 20 2b 2b 6e 75 6d 5f 70 61 69 .maxlen.=.len;.........++num_pai
1e4e0 72 73 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 69 66 28 20 6c 65 6e 20 3e 3d 20 6c rs;.........}.......if(.len.>=.l
1e500 65 6e 5f 6c 69 6d 69 74 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 2a 70 74 en_limit.).........{.........*pt
1e520 72 30 20 3d 20 6e 65 77 70 74 72 5b 30 5d 3b 0a 20 20 20 20 20 20 20 20 2a 70 74 72 31 20 3d 20 r0.=.newptr[0];.........*ptr1.=.
1e540 6e 65 77 70 74 72 5b 31 5d 3b 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 newptr[1];.........break;.......
1e560 20 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 64 61 74 61 5b 6c 65 6e 2d 64 65 6c ..}.......}.....if(.data[len-del
1e580 74 61 5d 20 3c 20 64 61 74 61 5b 6c 65 6e 5d 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 ta].<.data[len].).......{.......
1e5a0 2a 70 74 72 30 20 3d 20 6e 65 77 70 6f 73 31 3b 0a 20 20 20 20 20 20 70 74 72 30 20 3d 20 6e 65 *ptr0.=.newpos1;.......ptr0.=.ne
1e5c0 77 70 74 72 20 2b 20 31 3b 0a 20 20 20 20 20 20 6e 65 77 70 6f 73 31 20 3d 20 2a 70 74 72 30 3b wptr.+.1;.......newpos1.=.*ptr0;
1e5e0 0a 20 20 20 20 20 20 6c 65 6e 30 20 3d 20 6c 65 6e 3b 20 69 66 28 20 6c 65 6e 31 20 3c 20 6c 65 .......len0.=.len;.if(.len1.<.le
1e600 6e 20 29 20 6c 65 6e 20 3d 20 6c 65 6e 31 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 n.).len.=.len1;.......}.....else
1e620 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 2a 70 74 72 31 20 3d 20 6e 65 77 70 6f 73 31 3b 0a .......{.......*ptr1.=.newpos1;.
1e640 20 20 20 20 20 20 70 74 72 31 20 3d 20 6e 65 77 70 74 72 3b 0a 20 20 20 20 20 20 6e 65 77 70 6f ......ptr1.=.newptr;.......newpo
1e660 73 31 20 3d 20 2a 70 74 72 31 3b 0a 20 20 20 20 20 20 6c 65 6e 31 20 3d 20 6c 65 6e 3b 20 69 66 s1.=.*ptr1;.......len1.=.len;.if
1e680 28 20 6c 65 6e 30 20 3c 20 6c 65 6e 20 29 20 6c 65 6e 20 3d 20 6c 65 6e 30 3b 0a 20 20 20 20 20 (.len0.<.len.).len.=.len0;......
1e6a0 20 7d 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 6e 75 6d 5f 70 61 69 72 73 3b 0a 20 20 7d .}.....}...return.num_pairs;...}
1e6c0 0a 0a 0a 76 6f 69 64 20 4c 5a 5f 65 6e 63 6f 64 65 72 3a 3a 75 70 64 61 74 65 5f 64 69 73 74 61 ...void.LZ_encoder::update_dista
1e6e0 6e 63 65 5f 70 72 69 63 65 73 28 29 0a 20 20 7b 0a 20 20 66 6f 72 28 20 69 6e 74 20 64 69 73 20 nce_prices()...{...for(.int.dis.
1e700 3d 20 73 74 61 72 74 5f 64 69 73 5f 6d 6f 64 65 6c 3b 20 64 69 73 20 3c 20 6d 6f 64 65 6c 65 64 =.start_dis_model;.dis.<.modeled
1e720 5f 64 69 73 74 61 6e 63 65 73 3b 20 2b 2b 64 69 73 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f _distances;.++dis.).....{.....co
1e740 6e 73 74 20 69 6e 74 20 64 69 73 5f 73 6c 6f 74 20 3d 20 64 69 73 5f 73 6c 6f 74 73 5b 64 69 73 nst.int.dis_slot.=.dis_slots[dis
1e760 5d 3b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 72 65 63 74 5f 62 69 74 73 20 3d 20 28 ];.....const.int.direct_bits.=.(
1e780 20 64 69 73 5f 73 6c 6f 74 20 3e 3e 20 31 20 29 20 2d 20 31 3b 0a 20 20 20 20 63 6f 6e 73 74 20 .dis_slot.>>.1.).-.1;.....const.
1e7a0 69 6e 74 20 62 61 73 65 20 3d 20 28 20 32 20 7c 20 28 20 64 69 73 5f 73 6c 6f 74 20 26 20 31 20 int.base.=.(.2.|.(.dis_slot.&.1.
1e7c0 29 20 29 20 3c 3c 20 64 69 72 65 63 74 5f 62 69 74 73 3b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e ).).<<.direct_bits;.....const.in
1e7e0 74 20 70 72 69 63 65 20 3d 20 70 72 69 63 65 5f 73 79 6d 62 6f 6c 5f 72 65 76 65 72 73 65 64 28 t.price.=.price_symbol_reversed(
1e800 20 62 6d 5f 64 69 73 20 2b 20 28 20 62 61 73 65 20 2d 20 64 69 73 5f 73 6c 6f 74 20 29 2c 0a 20 .bm_dis.+.(.base.-.dis_slot.),..
1e820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1e840 20 20 20 20 20 20 20 20 20 20 20 20 64 69 73 20 2d 20 62 61 73 65 2c 20 64 69 72 65 63 74 5f 62 ............dis.-.base,.direct_b
1e860 69 74 73 20 29 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 6c 65 6e 5f 73 74 61 74 65 20 3d 20 its.);.....for(.int.len_state.=.
1e880 30 3b 20 6c 65 6e 5f 73 74 61 74 65 20 3c 20 6c 65 6e 5f 73 74 61 74 65 73 3b 20 2b 2b 6c 65 6e 0;.len_state.<.len_states;.++len
1e8a0 5f 73 74 61 74 65 20 29 0a 20 20 20 20 20 20 64 69 73 5f 70 72 69 63 65 73 5b 6c 65 6e 5f 73 74 _state.).......dis_prices[len_st
1e8c0 61 74 65 5d 5b 64 69 73 5d 20 3d 20 70 72 69 63 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 66 6f 72 28 ate][dis].=.price;.....}....for(
1e8e0 20 69 6e 74 20 6c 65 6e 5f 73 74 61 74 65 20 3d 20 30 3b 20 6c 65 6e 5f 73 74 61 74 65 20 3c 20 .int.len_state.=.0;.len_state.<.
1e900 6c 65 6e 5f 73 74 61 74 65 73 3b 20 2b 2b 6c 65 6e 5f 73 74 61 74 65 20 29 0a 20 20 20 20 7b 0a len_states;.++len_state.).....{.
1e920 20 20 20 20 69 6e 74 20 2a 20 63 6f 6e 73 74 20 64 73 70 20 3d 20 64 69 73 5f 73 6c 6f 74 5f 70 ....int.*.const.dsp.=.dis_slot_p
1e940 72 69 63 65 73 5b 6c 65 6e 5f 73 74 61 74 65 5d 3b 0a 20 20 20 20 63 6f 6e 73 74 20 42 69 74 5f rices[len_state];.....const.Bit_
1e960 6d 6f 64 65 6c 20 2a 20 63 6f 6e 73 74 20 62 6d 64 73 20 3d 20 62 6d 5f 64 69 73 5f 73 6c 6f 74 model.*.const.bmds.=.bm_dis_slot
1e980 5b 6c 65 6e 5f 73 74 61 74 65 5d 3b 0a 20 20 20 20 69 6e 74 20 73 6c 6f 74 20 3d 20 30 3b 0a 20 [len_state];.....int.slot.=.0;..
1e9a0 20 20 20 66 6f 72 28 20 3b 20 73 6c 6f 74 20 3c 20 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 3b 20 ...for(.;.slot.<.end_dis_model;.
1e9c0 2b 2b 73 6c 6f 74 20 29 0a 20 20 20 20 20 20 64 73 70 5b 73 6c 6f 74 5d 20 3d 20 70 72 69 63 65 ++slot.).......dsp[slot].=.price
1e9e0 5f 73 79 6d 62 6f 6c 36 28 20 62 6d 64 73 2c 20 73 6c 6f 74 20 29 3b 0a 20 20 20 20 66 6f 72 28 _symbol6(.bmds,.slot.);.....for(
1ea00 20 3b 20 73 6c 6f 74 20 3c 20 6e 75 6d 5f 64 69 73 5f 73 6c 6f 74 73 3b 20 2b 2b 73 6c 6f 74 20 .;.slot.<.num_dis_slots;.++slot.
1ea20 29 0a 20 20 20 20 20 20 64 73 70 5b 73 6c 6f 74 5d 20 3d 20 70 72 69 63 65 5f 73 79 6d 62 6f 6c ).......dsp[slot].=.price_symbol
1ea40 36 28 20 62 6d 64 73 2c 20 73 6c 6f 74 20 29 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6(.bmds,.slot.).+...............
1ea60 20 20 20 20 28 28 28 28 20 73 6c 6f 74 20 3e 3e 20 31 20 29 20 2d 20 31 20 29 20 2d 20 64 69 73 ....((((.slot.>>.1.).-.1.).-.dis
1ea80 5f 61 6c 69 67 6e 5f 62 69 74 73 20 29 20 3c 3c 20 70 72 69 63 65 5f 73 68 69 66 74 5f 62 69 74 _align_bits.).<<.price_shift_bit
1eaa0 73 20 29 3b 0a 0a 20 20 20 20 69 6e 74 20 2a 20 63 6f 6e 73 74 20 64 70 20 3d 20 64 69 73 5f 70 s.);......int.*.const.dp.=.dis_p
1eac0 72 69 63 65 73 5b 6c 65 6e 5f 73 74 61 74 65 5d 3b 0a 20 20 20 20 69 6e 74 20 64 69 73 20 3d 20 rices[len_state];.....int.dis.=.
1eae0 30 3b 0a 20 20 20 20 66 6f 72 28 20 3b 20 64 69 73 20 3c 20 73 74 61 72 74 5f 64 69 73 5f 6d 6f 0;.....for(.;.dis.<.start_dis_mo
1eb00 64 65 6c 3b 20 2b 2b 64 69 73 20 29 0a 20 20 20 20 20 20 64 70 5b 64 69 73 5d 20 3d 20 64 73 70 del;.++dis.).......dp[dis].=.dsp
1eb20 5b 64 69 73 5d 3b 0a 20 20 20 20 66 6f 72 28 20 3b 20 64 69 73 20 3c 20 6d 6f 64 65 6c 65 64 5f [dis];.....for(.;.dis.<.modeled_
1eb40 64 69 73 74 61 6e 63 65 73 3b 20 2b 2b 64 69 73 20 29 0a 20 20 20 20 20 20 64 70 5b 64 69 73 5d distances;.++dis.).......dp[dis]
1eb60 20 2b 3d 20 64 73 70 5b 64 69 73 5f 73 6c 6f 74 73 5b 64 69 73 5d 5d 3b 0a 20 20 20 20 7d 0a 20 .+=.dsp[dis_slots[dis]];.....}..
1eb80 20 7d 0a 0a 0a 2f 2a 20 52 65 74 75 72 6e 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 .}.../*.Return.the.number.of.byt
1eba0 65 73 20 61 64 76 61 6e 63 65 64 20 28 61 68 65 61 64 29 2e 0a 20 20 20 74 72 69 61 6c 73 5b 30 es.advanced.(ahead).....trials[0
1ebc0 5d 2e 2e 74 72 69 61 6c 73 5b 61 68 65 61 64 2d 31 5d 20 63 6f 6e 74 61 69 6e 20 74 68 65 20 73 ]..trials[ahead-1].contain.the.s
1ebe0 74 65 70 73 20 74 6f 20 65 6e 63 6f 64 65 2e 0a 20 20 20 28 20 74 72 69 61 6c 73 5b 30 5d 2e 64 teps.to.encode.....(.trials[0].d
1ec00 69 73 34 20 3d 3d 20 2d 31 20 29 20 6d 65 61 6e 73 20 6c 69 74 65 72 61 6c 2e 0a 20 20 20 41 20 is4.==.-1.).means.literal.....A.
1ec20 6d 61 74 63 68 2f 72 65 70 20 6c 6f 6e 67 65 72 20 6f 72 20 65 71 75 61 6c 20 74 68 61 6e 20 6d match/rep.longer.or.equal.than.m
1ec40 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 66 69 6e 69 73 68 65 73 20 74 68 65 20 73 65 71 75 atch_len_limit.finishes.the.sequ
1ec60 65 6e 63 65 2e 0a 2a 2f 0a 69 6e 74 20 4c 5a 5f 65 6e 63 6f 64 65 72 3a 3a 73 65 71 75 65 6e 63 ence..*/.int.LZ_encoder::sequenc
1ec80 65 5f 6f 70 74 69 6d 69 7a 65 72 28 20 63 6f 6e 73 74 20 69 6e 74 20 72 65 70 73 5b 6e 75 6d 5f e_optimizer(.const.int.reps[num_
1eca0 72 65 70 5f 64 69 73 74 61 6e 63 65 73 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rep_distances],.................
1ecc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 53 74 61 74 65 20 ....................const.State.
1ece0 73 74 61 74 65 20 29 0a 20 20 7b 0a 20 20 69 6e 74 20 6e 75 6d 5f 70 61 69 72 73 2c 20 6e 75 6d state.)...{...int.num_pairs,.num
1ed00 5f 74 72 69 61 6c 73 3b 0a 0a 20 20 69 66 28 20 70 65 6e 64 69 6e 67 5f 6e 75 6d 5f 70 61 69 72 _trials;....if(.pending_num_pair
1ed20 73 20 3e 20 30 20 29 09 09 09 2f 2f 20 66 72 6f 6d 20 70 72 65 76 69 6f 75 73 20 63 61 6c 6c 0a s.>.0.)...//.from.previous.call.
1ed40 20 20 20 20 7b 0a 20 20 20 20 6e 75 6d 5f 70 61 69 72 73 20 3d 20 70 65 6e 64 69 6e 67 5f 6e 75 ....{.....num_pairs.=.pending_nu
1ed60 6d 5f 70 61 69 72 73 3b 0a 20 20 20 20 70 65 6e 64 69 6e 67 5f 6e 75 6d 5f 70 61 69 72 73 20 3d m_pairs;.....pending_num_pairs.=
1ed80 20 30 3b 0a 20 20 20 20 7d 0a 20 20 65 6c 73 65 0a 20 20 20 20 6e 75 6d 5f 70 61 69 72 73 20 3d .0;.....}...else.....num_pairs.=
1eda0 20 72 65 61 64 5f 6d 61 74 63 68 5f 64 69 73 74 61 6e 63 65 73 28 29 3b 0a 20 20 63 6f 6e 73 74 .read_match_distances();...const
1edc0 20 69 6e 74 20 6d 61 69 6e 5f 6c 65 6e 20 3d 20 28 20 6e 75 6d 5f 70 61 69 72 73 20 3e 20 30 20 .int.main_len.=.(.num_pairs.>.0.
1ede0 29 20 3f 20 70 61 69 72 73 5b 6e 75 6d 5f 70 61 69 72 73 2d 31 5d 2e 6c 65 6e 20 3a 20 30 3b 0a ).?.pairs[num_pairs-1].len.:.0;.
1ee00 0a 20 20 69 6e 74 20 72 65 70 6c 65 6e 73 5b 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 ...int.replens[num_rep_distances
1ee20 5d 3b 0a 20 20 69 6e 74 20 72 65 70 5f 69 6e 64 65 78 20 3d 20 30 3b 0a 20 20 66 6f 72 28 20 69 ];...int.rep_index.=.0;...for(.i
1ee40 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 3b nt.i.=.0;.i.<.num_rep_distances;
1ee60 20 2b 2b 69 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 72 65 70 6c 65 6e 73 5b 69 5d 20 3d 20 74 72 .++i.).....{.....replens[i].=.tr
1ee80 75 65 5f 6d 61 74 63 68 5f 6c 65 6e 28 20 30 2c 20 72 65 70 73 5b 69 5d 20 2b 20 31 20 29 3b 0a ue_match_len(.0,.reps[i].+.1.);.
1eea0 20 20 20 20 69 66 28 20 72 65 70 6c 65 6e 73 5b 69 5d 20 3e 20 72 65 70 6c 65 6e 73 5b 72 65 70 ....if(.replens[i].>.replens[rep
1eec0 5f 69 6e 64 65 78 5d 20 29 20 72 65 70 5f 69 6e 64 65 78 20 3d 20 69 3b 0a 20 20 20 20 7d 0a 20 _index].).rep_index.=.i;.....}..
1eee0 20 69 66 28 20 72 65 70 6c 65 6e 73 5b 72 65 70 5f 69 6e 64 65 78 5d 20 3e 3d 20 6d 61 74 63 68 .if(.replens[rep_index].>=.match
1ef00 5f 6c 65 6e 5f 6c 69 6d 69 74 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 74 72 69 61 6c 73 5b 30 5d _len_limit.).....{.....trials[0]
1ef20 2e 70 72 69 63 65 20 3d 20 72 65 70 6c 65 6e 73 5b 72 65 70 5f 69 6e 64 65 78 5d 3b 0a 20 20 20 .price.=.replens[rep_index];....
1ef40 20 74 72 69 61 6c 73 5b 30 5d 2e 64 69 73 34 20 3d 20 72 65 70 5f 69 6e 64 65 78 3b 0a 20 20 20 .trials[0].dis4.=.rep_index;....
1ef60 20 6d 6f 76 65 5f 61 6e 64 5f 75 70 64 61 74 65 28 20 72 65 70 6c 65 6e 73 5b 72 65 70 5f 69 6e .move_and_update(.replens[rep_in
1ef80 64 65 78 5d 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 72 65 70 6c 65 6e 73 5b 72 65 70 5f 69 dex].);.....return.replens[rep_i
1efa0 6e 64 65 78 5d 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 66 28 20 6d 61 69 6e 5f 6c 65 6e 20 3e 3d 20 ndex];.....}....if(.main_len.>=.
1efc0 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 74 72 69 61 match_len_limit.).....{.....tria
1efe0 6c 73 5b 30 5d 2e 70 72 69 63 65 20 3d 20 6d 61 69 6e 5f 6c 65 6e 3b 0a 20 20 20 20 74 72 69 61 ls[0].price.=.main_len;.....tria
1f000 6c 73 5b 30 5d 2e 64 69 73 34 20 3d 20 70 61 69 72 73 5b 6e 75 6d 5f 70 61 69 72 73 2d 31 5d 2e ls[0].dis4.=.pairs[num_pairs-1].
1f020 64 69 73 20 2b 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 3b 0a 20 20 20 20 6d 6f 76 dis.+.num_rep_distances;.....mov
1f040 65 5f 61 6e 64 5f 75 70 64 61 74 65 28 20 6d 61 69 6e 5f 6c 65 6e 20 29 3b 0a 20 20 20 20 72 65 e_and_update(.main_len.);.....re
1f060 74 75 72 6e 20 6d 61 69 6e 5f 6c 65 6e 3b 0a 20 20 20 20 7d 0a 0a 20 20 63 6f 6e 73 74 20 69 6e turn.main_len;.....}....const.in
1f080 74 20 70 6f 73 5f 73 74 61 74 65 20 3d 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 26 20 t.pos_state.=.data_position().&.
1f0a0 70 6f 73 5f 73 74 61 74 65 5f 6d 61 73 6b 3b 0a 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 pos_state_mask;...const.uint8_t.
1f0c0 70 72 65 76 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 31 20 29 3b 0a 20 20 63 6f 6e 73 74 20 75 prev_byte.=.peek(.1.);...const.u
1f0e0 69 6e 74 38 5f 74 20 63 75 72 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 30 20 29 3b 0a 20 20 63 int8_t.cur_byte.=.peek(.0.);...c
1f100 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 6d 61 74 63 68 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 onst.uint8_t.match_byte.=.peek(.
1f120 72 65 70 73 5b 30 5d 20 2b 20 31 20 29 3b 0a 0a 20 20 74 72 69 61 6c 73 5b 31 5d 2e 70 72 69 63 reps[0].+.1.);....trials[1].pric
1f140 65 20 3d 20 70 72 69 63 65 30 28 20 62 6d 5f 6d 61 74 63 68 5b 73 74 61 74 65 28 29 5d 5b 70 6f e.=.price0(.bm_match[state()][po
1f160 73 5f 73 74 61 74 65 5d 20 29 3b 0a 20 20 69 66 28 20 73 74 61 74 65 2e 69 73 5f 63 68 61 72 28 s_state].);...if(.state.is_char(
1f180 29 20 29 0a 20 20 20 20 74 72 69 61 6c 73 5b 31 5d 2e 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 ).).....trials[1].price.+=.price
1f1a0 5f 6c 69 74 65 72 61 6c 28 20 70 72 65 76 5f 62 79 74 65 2c 20 63 75 72 5f 62 79 74 65 20 29 3b _literal(.prev_byte,.cur_byte.);
1f1c0 0a 20 20 65 6c 73 65 0a 20 20 20 20 74 72 69 61 6c 73 5b 31 5d 2e 70 72 69 63 65 20 2b 3d 20 70 ...else.....trials[1].price.+=.p
1f1e0 72 69 63 65 5f 6d 61 74 63 68 65 64 28 20 70 72 65 76 5f 62 79 74 65 2c 20 63 75 72 5f 62 79 74 rice_matched(.prev_byte,.cur_byt
1f200 65 2c 20 6d 61 74 63 68 5f 62 79 74 65 20 29 3b 0a 20 20 74 72 69 61 6c 73 5b 31 5d 2e 64 69 73 e,.match_byte.);...trials[1].dis
1f220 34 20 3d 20 2d 31 3b 09 09 09 09 09 2f 2f 20 6c 69 74 65 72 61 6c 0a 0a 20 20 63 6f 6e 73 74 20 4.=.-1;.....//.literal....const.
1f240 69 6e 74 20 6d 61 74 63 68 5f 70 72 69 63 65 20 3d 20 70 72 69 63 65 31 28 20 62 6d 5f 6d 61 74 int.match_price.=.price1(.bm_mat
1f260 63 68 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 20 29 3b 0a 20 20 63 6f 6e 73 ch[state()][pos_state].);...cons
1f280 74 20 69 6e 74 20 72 65 70 5f 6d 61 74 63 68 5f 70 72 69 63 65 20 3d 20 6d 61 74 63 68 5f 70 72 t.int.rep_match_price.=.match_pr
1f2a0 69 63 65 20 2b 20 70 72 69 63 65 31 28 20 62 6d 5f 72 65 70 5b 73 74 61 74 65 28 29 5d 20 29 3b ice.+.price1(.bm_rep[state()].);
1f2c0 0a 0a 20 20 69 66 28 20 6d 61 74 63 68 5f 62 79 74 65 20 3d 3d 20 63 75 72 5f 62 79 74 65 20 29 ....if(.match_byte.==.cur_byte.)
1f2e0 0a 20 20 20 20 74 72 69 61 6c 73 5b 31 5d 2e 75 70 64 61 74 65 28 20 72 65 70 5f 6d 61 74 63 68 .....trials[1].update(.rep_match
1f300 5f 70 72 69 63 65 20 2b 20 70 72 69 63 65 5f 73 68 6f 72 74 72 65 70 28 20 73 74 61 74 65 2c 20 _price.+.price_shortrep(.state,.
1f320 70 6f 73 5f 73 74 61 74 65 20 29 2c 20 30 2c 20 30 20 29 3b 0a 0a 20 20 6e 75 6d 5f 74 72 69 61 pos_state.),.0,.0.);....num_tria
1f340 6c 73 20 3d 20 73 74 64 3a 3a 6d 61 78 28 20 6d 61 69 6e 5f 6c 65 6e 2c 20 72 65 70 6c 65 6e 73 ls.=.std::max(.main_len,.replens
1f360 5b 72 65 70 5f 69 6e 64 65 78 5d 20 29 3b 0a 0a 20 20 69 66 28 20 6e 75 6d 5f 74 72 69 61 6c 73 [rep_index].);....if(.num_trials
1f380 20 3c 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 74 72 69 .<.min_match_len.).....{.....tri
1f3a0 61 6c 73 5b 30 5d 2e 70 72 69 63 65 20 3d 20 31 3b 0a 20 20 20 20 74 72 69 61 6c 73 5b 30 5d 2e als[0].price.=.1;.....trials[0].
1f3c0 64 69 73 34 20 3d 20 74 72 69 61 6c 73 5b 31 5d 2e 64 69 73 34 3b 0a 20 20 20 20 6d 6f 76 65 5f dis4.=.trials[1].dis4;.....move_
1f3e0 70 6f 73 28 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 31 3b 0a 20 20 20 20 7d 0a 0a 20 20 74 72 pos();.....return.1;.....}....tr
1f400 69 61 6c 73 5b 30 5d 2e 73 74 61 74 65 20 3d 20 73 74 61 74 65 3b 0a 20 20 66 6f 72 28 20 69 6e ials[0].state.=.state;...for(.in
1f420 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 3b 20 t.i.=.0;.i.<.num_rep_distances;.
1f440 2b 2b 69 20 29 0a 20 20 20 20 74 72 69 61 6c 73 5b 30 5d 2e 72 65 70 73 5b 69 5d 20 3d 20 72 65 ++i.).....trials[0].reps[i].=.re
1f460 70 73 5b 69 5d 3b 0a 0a 20 20 66 6f 72 28 20 69 6e 74 20 6c 65 6e 20 3d 20 6d 69 6e 5f 6d 61 74 ps[i];....for(.int.len.=.min_mat
1f480 63 68 5f 6c 65 6e 3b 20 6c 65 6e 20 3c 3d 20 6e 75 6d 5f 74 72 69 61 6c 73 3b 20 2b 2b 6c 65 6e ch_len;.len.<=.num_trials;.++len
1f4a0 20 29 0a 20 20 20 20 74 72 69 61 6c 73 5b 6c 65 6e 5d 2e 70 72 69 63 65 20 3d 20 69 6e 66 69 6e .).....trials[len].price.=.infin
1f4c0 69 74 65 5f 70 72 69 63 65 3b 0a 0a 20 20 66 6f 72 28 20 69 6e 74 20 72 65 70 20 3d 20 30 3b 20 ite_price;....for(.int.rep.=.0;.
1f4e0 72 65 70 20 3c 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 3b 20 2b 2b 72 65 70 20 29 rep.<.num_rep_distances;.++rep.)
1f500 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 72 65 70 6c 65 6e 73 5b 72 65 70 5d 20 3c 20 6d 69 .....{.....if(.replens[rep].<.mi
1f520 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 63 6f 6e 73 n_match_len.).continue;.....cons
1f540 74 20 69 6e 74 20 70 72 69 63 65 20 3d 20 72 65 70 5f 6d 61 74 63 68 5f 70 72 69 63 65 20 2b 20 t.int.price.=.rep_match_price.+.
1f560 70 72 69 63 65 5f 72 65 70 28 20 72 65 70 2c 20 73 74 61 74 65 2c 20 70 6f 73 5f 73 74 61 74 65 price_rep(.rep,.state,.pos_state
1f580 20 29 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 6c 65 6e 20 3d 20 6d 69 6e 5f 6d 61 74 63 68 .);.....for(.int.len.=.min_match
1f5a0 5f 6c 65 6e 3b 20 6c 65 6e 20 3c 3d 20 72 65 70 6c 65 6e 73 5b 72 65 70 5d 3b 20 2b 2b 6c 65 6e _len;.len.<=.replens[rep];.++len
1f5c0 20 29 0a 20 20 20 20 20 20 74 72 69 61 6c 73 5b 6c 65 6e 5d 2e 75 70 64 61 74 65 28 20 70 72 69 .).......trials[len].update(.pri
1f5e0 63 65 20 2b 20 72 65 70 5f 6c 65 6e 5f 70 72 69 63 65 73 2e 70 72 69 63 65 28 20 6c 65 6e 2c 20 ce.+.rep_len_prices.price(.len,.
1f600 70 6f 73 5f 73 74 61 74 65 20 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 pos_state.),....................
1f620 20 20 20 20 20 20 20 72 65 70 2c 20 30 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 66 28 20 6d 61 .......rep,.0.);.....}....if(.ma
1f640 69 6e 5f 6c 65 6e 20 3e 20 72 65 70 6c 65 6e 73 5b 30 5d 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 in_len.>.replens[0].).....{.....
1f660 63 6f 6e 73 74 20 69 6e 74 20 6e 6f 72 6d 61 6c 5f 6d 61 74 63 68 5f 70 72 69 63 65 20 3d 20 6d const.int.normal_match_price.=.m
1f680 61 74 63 68 5f 70 72 69 63 65 20 2b 20 70 72 69 63 65 30 28 20 62 6d 5f 72 65 70 5b 73 74 61 74 atch_price.+.price0(.bm_rep[stat
1f6a0 65 28 29 5d 20 29 3b 0a 20 20 20 20 69 6e 74 20 69 20 3d 20 30 2c 20 6c 65 6e 20 3d 20 73 74 64 e()].);.....int.i.=.0,.len.=.std
1f6c0 3a 3a 6d 61 78 28 20 72 65 70 6c 65 6e 73 5b 30 5d 20 2b 20 31 2c 20 28 69 6e 74 29 6d 69 6e 5f ::max(.replens[0].+.1,.(int)min_
1f6e0 6d 61 74 63 68 5f 6c 65 6e 20 29 3b 0a 20 20 20 20 77 68 69 6c 65 28 20 6c 65 6e 20 3e 20 70 61 match_len.);.....while(.len.>.pa
1f700 69 72 73 5b 69 5d 2e 6c 65 6e 20 29 20 2b 2b 69 3b 0a 20 20 20 20 77 68 69 6c 65 28 20 74 72 75 irs[i].len.).++i;.....while(.tru
1f720 65 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 73 20 e.).......{.......const.int.dis.
1f740 3d 20 70 61 69 72 73 5b 69 5d 2e 64 69 73 3b 0a 20 20 20 20 20 20 74 72 69 61 6c 73 5b 6c 65 6e =.pairs[i].dis;.......trials[len
1f760 5d 2e 75 70 64 61 74 65 28 20 6e 6f 72 6d 61 6c 5f 6d 61 74 63 68 5f 70 72 69 63 65 20 2b 20 70 ].update(.normal_match_price.+.p
1f780 72 69 63 65 5f 70 61 69 72 28 20 64 69 73 2c 20 6c 65 6e 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 rice_pair(.dis,.len,.pos_state.)
1f7a0 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 73 20 ,...........................dis.
1f7c0 2b 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 2c 20 30 20 29 3b 0a 20 20 20 20 20 20 +.num_rep_distances,.0.);.......
1f7e0 69 66 28 20 2b 2b 6c 65 6e 20 3e 20 70 61 69 72 73 5b 69 5d 2e 6c 65 6e 20 26 26 20 2b 2b 69 20 if(.++len.>.pairs[i].len.&&.++i.
1f800 3e 3d 20 6e 75 6d 5f 70 61 69 72 73 20 29 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 7d 0a 20 20 >=.num_pairs.).break;.......}...
1f820 20 20 7d 0a 0a 20 20 69 6e 74 20 63 75 72 20 3d 20 30 3b 0a 20 20 77 68 69 6c 65 28 20 74 72 75 ..}....int.cur.=.0;...while(.tru
1f840 65 20 29 09 09 09 09 2f 2f 20 70 72 69 63 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 6c 6f 6f e.)....//.price.optimization.loo
1f860 70 0a 20 20 20 20 7b 0a 20 20 20 20 6d 6f 76 65 5f 70 6f 73 28 29 3b 0a 20 20 20 20 69 66 28 20 p.....{.....move_pos();.....if(.
1f880 2b 2b 63 75 72 20 3e 3d 20 6e 75 6d 5f 74 72 69 61 6c 73 20 29 09 09 2f 2f 20 6e 6f 20 6d 6f 72 ++cur.>=.num_trials.)..//.no.mor
1f8a0 65 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 74 72 69 61 6c 73 0a 20 20 20 20 20 20 7b 0a 20 20 20 e.initialized.trials.......{....
1f8c0 20 20 20 62 61 63 6b 77 61 72 64 28 20 63 75 72 20 29 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e ...backward(.cur.);.......return
1f8e0 20 63 75 72 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6e 75 6d .cur;.......}......const.int.num
1f900 5f 70 61 69 72 73 20 3d 20 72 65 61 64 5f 6d 61 74 63 68 5f 64 69 73 74 61 6e 63 65 73 28 29 3b _pairs.=.read_match_distances();
1f920 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6e 65 77 6c 65 6e 20 3d 20 28 20 6e 75 6d 5f 70 61 .....const.int.newlen.=.(.num_pa
1f940 69 72 73 20 3e 20 30 20 29 20 3f 20 70 61 69 72 73 5b 6e 75 6d 5f 70 61 69 72 73 2d 31 5d 2e 6c irs.>.0.).?.pairs[num_pairs-1].l
1f960 65 6e 20 3a 20 30 3b 0a 20 20 20 20 69 66 28 20 6e 65 77 6c 65 6e 20 3e 3d 20 6d 61 74 63 68 5f en.:.0;.....if(.newlen.>=.match_
1f980 6c 65 6e 5f 6c 69 6d 69 74 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 70 65 6e 64 69 6e len_limit.).......{.......pendin
1f9a0 67 5f 6e 75 6d 5f 70 61 69 72 73 20 3d 20 6e 75 6d 5f 70 61 69 72 73 3b 0a 20 20 20 20 20 20 62 g_num_pairs.=.num_pairs;.......b
1f9c0 61 63 6b 77 61 72 64 28 20 63 75 72 20 29 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 63 75 72 ackward(.cur.);.......return.cur
1f9e0 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2f 20 67 69 76 65 20 66 69 6e 61 6c 20 76 61 6c ;.......}......//.give.final.val
1fa00 75 65 73 20 74 6f 20 63 75 72 72 65 6e 74 20 74 72 69 61 6c 0a 20 20 20 20 54 72 69 61 6c 20 26 ues.to.current.trial.....Trial.&
1fa20 20 63 75 72 5f 74 72 69 61 6c 20 3d 20 74 72 69 61 6c 73 5b 63 75 72 5d 3b 0a 20 20 20 20 53 74 .cur_trial.=.trials[cur];.....St
1fa40 61 74 65 20 63 75 72 5f 73 74 61 74 65 3b 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 69 ate.cur_state;.....{.....const.i
1fa60 6e 74 20 64 69 73 34 20 3d 20 63 75 72 5f 74 72 69 61 6c 2e 64 69 73 34 3b 0a 20 20 20 20 69 6e nt.dis4.=.cur_trial.dis4;.....in
1fa80 74 20 70 72 65 76 5f 69 6e 64 65 78 20 3d 20 63 75 72 5f 74 72 69 61 6c 2e 70 72 65 76 5f 69 6e t.prev_index.=.cur_trial.prev_in
1faa0 64 65 78 3b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 72 65 76 5f 69 6e 64 65 78 32 20 3d dex;.....const.int.prev_index2.=
1fac0 20 63 75 72 5f 74 72 69 61 6c 2e 70 72 65 76 5f 69 6e 64 65 78 32 3b 0a 0a 20 20 20 20 69 66 28 .cur_trial.prev_index2;......if(
1fae0 20 70 72 65 76 5f 69 6e 64 65 78 32 20 3d 3d 20 73 69 6e 67 6c 65 5f 73 74 65 70 5f 74 72 69 61 .prev_index2.==.single_step_tria
1fb00 6c 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 75 72 5f 73 74 61 74 65 20 3d 20 74 72 l.).......{.......cur_state.=.tr
1fb20 69 61 6c 73 5b 70 72 65 76 5f 69 6e 64 65 78 5d 2e 73 74 61 74 65 3b 0a 20 20 20 20 20 20 69 66 ials[prev_index].state;.......if
1fb40 28 20 70 72 65 76 5f 69 6e 64 65 78 20 2b 20 31 20 3d 3d 20 63 75 72 20 29 09 09 09 2f 2f 20 6c (.prev_index.+.1.==.cur.)...//.l
1fb60 65 6e 20 3d 3d 20 31 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 28 20 64 69 en.==.1.........{.........if(.di
1fb80 73 34 20 3d 3d 20 30 20 29 20 63 75 72 5f 73 74 61 74 65 2e 73 65 74 5f 73 68 6f 72 74 72 65 70 s4.==.0.).cur_state.set_shortrep
1fba0 28 29 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 20 63 75 72 5f 73 74 61 74 65 2e 73 65 74 5f 63 ();.........else.cur_state.set_c
1fbc0 68 61 72 28 29 3b 09 09 09 2f 2f 20 6c 69 74 65 72 61 6c 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 har();...//.literal.........}...
1fbe0 20 20 20 20 65 6c 73 65 20 69 66 28 20 64 69 73 34 20 3c 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 ....else.if(.dis4.<.num_rep_dist
1fc00 61 6e 63 65 73 20 29 20 63 75 72 5f 73 74 61 74 65 2e 73 65 74 5f 72 65 70 28 29 3b 0a 20 20 20 ances.).cur_state.set_rep();....
1fc20 20 20 20 65 6c 73 65 20 63 75 72 5f 73 74 61 74 65 2e 73 65 74 5f 6d 61 74 63 68 28 29 3b 0a 20 ...else.cur_state.set_match();..
1fc40 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 .....}.....else.......{.......if
1fc60 28 20 70 72 65 76 5f 69 6e 64 65 78 32 20 3d 3d 20 64 75 61 6c 5f 73 74 65 70 5f 74 72 69 61 6c (.prev_index2.==.dual_step_trial
1fc80 20 29 09 2f 2f 20 64 69 73 34 20 3d 3d 20 30 20 28 72 65 70 30 29 0a 20 20 20 20 20 20 20 20 2d .).//.dis4.==.0.(rep0).........-
1fca0 2d 70 72 65 76 5f 69 6e 64 65 78 3b 0a 20 20 20 20 20 20 65 6c 73 65 09 09 09 09 09 2f 2f 20 70 -prev_index;.......else.....//.p
1fcc0 72 65 76 5f 69 6e 64 65 78 32 20 3e 3d 20 30 0a 20 20 20 20 20 20 20 20 70 72 65 76 5f 69 6e 64 rev_index2.>=.0.........prev_ind
1fce0 65 78 20 3d 20 70 72 65 76 5f 69 6e 64 65 78 32 3b 0a 20 20 20 20 20 20 63 75 72 5f 73 74 61 74 ex.=.prev_index2;.......cur_stat
1fd00 65 2e 73 65 74 5f 63 68 61 72 5f 72 65 70 28 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 63 75 e.set_char_rep();.......}.....cu
1fd20 72 5f 74 72 69 61 6c 2e 73 74 61 74 65 20 3d 20 63 75 72 5f 73 74 61 74 65 3b 0a 20 20 20 20 66 r_trial.state.=.cur_state;.....f
1fd40 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 or(.int.i.=.0;.i.<.num_rep_dista
1fd60 6e 63 65 73 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 63 75 72 5f 74 72 69 61 6c 2e 72 65 70 73 nces;.++i.).......cur_trial.reps
1fd80 5b 69 5d 20 3d 20 74 72 69 61 6c 73 5b 70 72 65 76 5f 69 6e 64 65 78 5d 2e 72 65 70 73 5b 69 5d [i].=.trials[prev_index].reps[i]
1fda0 3b 0a 20 20 20 20 6d 74 66 5f 72 65 70 73 28 20 64 69 73 34 2c 20 63 75 72 5f 74 72 69 61 6c 2e ;.....mtf_reps(.dis4,.cur_trial.
1fdc0 72 65 70 73 20 29 3b 09 09 2f 2f 20 6c 69 74 65 72 61 6c 20 69 73 20 69 67 6e 6f 72 65 64 0a 20 reps.);..//.literal.is.ignored..
1fde0 20 20 20 7d 0a 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 20 3d 20 ...}......const.int.pos_state.=.
1fe00 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 26 20 70 6f 73 5f 73 74 61 74 65 5f 6d 61 73 6b data_position().&.pos_state_mask
1fe20 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 70 72 65 76 5f 62 79 74 65 20 3d 20 ;.....const.uint8_t.prev_byte.=.
1fe40 70 65 65 6b 28 20 31 20 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 63 75 72 peek(.1.);.....const.uint8_t.cur
1fe60 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 30 20 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e _byte.=.peek(.0.);.....const.uin
1fe80 74 38 5f 74 20 6d 61 74 63 68 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 63 75 72 5f 74 72 69 61 t8_t.match_byte.=.peek(.cur_tria
1fea0 6c 2e 72 65 70 73 5b 30 5d 20 2b 20 31 20 29 3b 0a 0a 20 20 20 20 69 6e 74 20 6e 65 78 74 5f 70 l.reps[0].+.1.);......int.next_p
1fec0 72 69 63 65 20 3d 20 63 75 72 5f 74 72 69 61 6c 2e 70 72 69 63 65 20 2b 0a 20 20 20 20 20 20 20 rice.=.cur_trial.price.+........
1fee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 30 28 20 62 6d 5f 6d 61 74 63 68 5b 63 ..............price0(.bm_match[c
1ff00 75 72 5f 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 20 29 3b 0a 20 20 20 20 69 66 ur_state()][pos_state].);.....if
1ff20 28 20 63 75 72 5f 73 74 61 74 65 2e 69 73 5f 63 68 61 72 28 29 20 29 0a 20 20 20 20 20 20 6e 65 (.cur_state.is_char().).......ne
1ff40 78 74 5f 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 5f 6c 69 74 65 72 61 6c 28 20 70 72 65 76 5f xt_price.+=.price_literal(.prev_
1ff60 62 79 74 65 2c 20 63 75 72 5f 62 79 74 65 20 29 3b 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 byte,.cur_byte.);.....else......
1ff80 20 6e 65 78 74 5f 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 5f 6d 61 74 63 68 65 64 28 20 70 72 .next_price.+=.price_matched(.pr
1ffa0 65 76 5f 62 79 74 65 2c 20 63 75 72 5f 62 79 74 65 2c 20 6d 61 74 63 68 5f 62 79 74 65 20 29 3b ev_byte,.cur_byte,.match_byte.);
1ffc0 0a 0a 20 20 20 20 2f 2f 20 74 72 79 20 6c 61 73 74 20 75 70 64 61 74 65 73 20 74 6f 20 6e 65 78 ......//.try.last.updates.to.nex
1ffe0 74 20 74 72 69 61 6c 0a 20 20 20 20 54 72 69 61 6c 20 26 20 6e 65 78 74 5f 74 72 69 61 6c 20 3d t.trial.....Trial.&.next_trial.=
20000 20 74 72 69 61 6c 73 5b 63 75 72 2b 31 5d 3b 0a 0a 20 20 20 20 6e 65 78 74 5f 74 72 69 61 6c 2e .trials[cur+1];......next_trial.
20020 75 70 64 61 74 65 28 20 6e 65 78 74 5f 70 72 69 63 65 2c 20 2d 31 2c 20 63 75 72 20 29 3b 09 09 update(.next_price,.-1,.cur.);..
20040 2f 2f 20 6c 69 74 65 72 61 6c 0a 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6d 61 74 63 68 5f //.literal......const.int.match_
20060 70 72 69 63 65 20 3d 20 63 75 72 5f 74 72 69 61 6c 2e 70 72 69 63 65 20 2b 20 70 72 69 63 65 31 price.=.cur_trial.price.+.price1
20080 28 20 62 6d 5f 6d 61 74 63 68 5b 63 75 72 5f 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 (.bm_match[cur_state()][pos_stat
200a0 65 5d 20 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 72 65 70 5f 6d 61 74 63 68 5f 70 72 e].);.....const.int.rep_match_pr
200c0 69 63 65 20 3d 20 6d 61 74 63 68 5f 70 72 69 63 65 20 2b 20 70 72 69 63 65 31 28 20 62 6d 5f 72 ice.=.match_price.+.price1(.bm_r
200e0 65 70 5b 63 75 72 5f 73 74 61 74 65 28 29 5d 20 29 3b 0a 0a 20 20 20 20 69 66 28 20 6d 61 74 63 ep[cur_state()].);......if(.matc
20100 68 5f 62 79 74 65 20 3d 3d 20 63 75 72 5f 62 79 74 65 20 26 26 20 6e 65 78 74 5f 74 72 69 61 6c h_byte.==.cur_byte.&&.next_trial
20120 2e 64 69 73 34 20 21 3d 20 30 20 26 26 0a 20 20 20 20 20 20 20 20 6e 65 78 74 5f 74 72 69 61 6c .dis4.!=.0.&&.........next_trial
20140 2e 70 72 65 76 5f 69 6e 64 65 78 32 20 3d 3d 20 73 69 6e 67 6c 65 5f 73 74 65 70 5f 74 72 69 61 .prev_index2.==.single_step_tria
20160 6c 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 72 69 63 l.).......{.......const.int.pric
20180 65 20 3d 20 72 65 70 5f 6d 61 74 63 68 5f 70 72 69 63 65 20 2b 20 70 72 69 63 65 5f 73 68 6f 72 e.=.rep_match_price.+.price_shor
201a0 74 72 65 70 28 20 63 75 72 5f 73 74 61 74 65 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 trep(.cur_state,.pos_state.);...
201c0 20 20 20 20 69 66 28 20 70 72 69 63 65 20 3c 3d 20 6e 65 78 74 5f 74 72 69 61 6c 2e 70 72 69 63 ....if(.price.<=.next_trial.pric
201e0 65 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 6e 65 78 74 5f 74 72 69 61 6c e.).........{.........next_trial
20200 2e 70 72 69 63 65 20 3d 20 70 72 69 63 65 3b 0a 20 20 20 20 20 20 20 20 6e 65 78 74 5f 74 72 69 .price.=.price;.........next_tri
20220 61 6c 2e 64 69 73 34 20 3d 20 30 3b 09 09 09 09 2f 2f 20 72 65 70 30 0a 20 20 20 20 20 20 20 20 al.dis4.=.0;....//.rep0.........
20240 6e 65 78 74 5f 74 72 69 61 6c 2e 70 72 65 76 5f 69 6e 64 65 78 20 3d 20 63 75 72 3b 0a 20 20 20 next_trial.prev_index.=.cur;....
20260 20 20 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 74 72 .....}.......}......const.int.tr
20280 69 61 62 6c 65 5f 62 79 74 65 73 20 3d 0a 20 20 20 20 20 20 73 74 64 3a 3a 6d 69 6e 28 20 61 76 iable_bytes.=.......std::min(.av
202a0 61 69 6c 61 62 6c 65 5f 62 79 74 65 73 28 29 2c 20 6d 61 78 5f 6e 75 6d 5f 74 72 69 61 6c 73 20 ailable_bytes(),.max_num_trials.
202c0 2d 20 31 20 2d 20 63 75 72 20 29 3b 0a 20 20 20 20 69 66 28 20 74 72 69 61 62 6c 65 5f 62 79 74 -.1.-.cur.);.....if(.triable_byt
202e0 65 73 20 3c 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 20 63 6f 6e 74 69 6e 75 65 3b 0a 0a es.<.min_match_len.).continue;..
20300 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6c 65 6e 5f 6c 69 6d 69 74 20 3d 20 73 74 64 3a 3a 6d ....const.int.len_limit.=.std::m
20320 69 6e 28 20 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 2c 20 74 72 69 61 62 6c 65 5f 62 79 74 in(.match_len_limit,.triable_byt
20340 65 73 20 29 3b 0a 0a 20 20 20 20 2f 2f 20 74 72 79 20 6c 69 74 65 72 61 6c 20 2b 20 72 65 70 30 es.);......//.try.literal.+.rep0
20360 0a 20 20 20 20 69 66 28 20 6d 61 74 63 68 5f 62 79 74 65 20 21 3d 20 63 75 72 5f 62 79 74 65 20 .....if(.match_byte.!=.cur_byte.
20380 26 26 20 6e 65 78 74 5f 74 72 69 61 6c 2e 70 72 65 76 5f 69 6e 64 65 78 20 21 3d 20 63 75 72 20 &&.next_trial.prev_index.!=.cur.
203a0 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 2a 20 ).......{.......const.uint8_t.*.
203c0 63 6f 6e 73 74 20 64 61 74 61 20 3d 20 70 74 72 5f 74 6f 5f 63 75 72 72 65 6e 74 5f 70 6f 73 28 const.data.=.ptr_to_current_pos(
203e0 29 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 73 20 3d 20 63 75 72 5f 74 72 69 );.......const.int.dis.=.cur_tri
20400 61 6c 2e 72 65 70 73 5b 30 5d 20 2b 20 31 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 al.reps[0].+.1;.......const.int.
20420 6c 69 6d 69 74 20 3d 20 73 74 64 3a 3a 6d 69 6e 28 20 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 limit.=.std::min(.match_len_limi
20440 74 20 2b 20 31 2c 20 74 72 69 61 62 6c 65 5f 62 79 74 65 73 20 29 3b 0a 20 20 20 20 20 20 69 6e t.+.1,.triable_bytes.);.......in
20460 74 20 6c 65 6e 20 3d 20 31 3b 0a 20 20 20 20 20 20 77 68 69 6c 65 28 20 6c 65 6e 20 3c 20 6c 69 t.len.=.1;.......while(.len.<.li
20480 6d 69 74 20 26 26 20 64 61 74 61 5b 6c 65 6e 2d 64 69 73 5d 20 3d 3d 20 64 61 74 61 5b 6c 65 6e mit.&&.data[len-dis].==.data[len
204a0 5d 20 29 20 2b 2b 6c 65 6e 3b 0a 20 20 20 20 20 20 69 66 28 20 2d 2d 6c 65 6e 20 3e 3d 20 6d 69 ].).++len;.......if(.--len.>=.mi
204c0 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 n_match_len.).........{.........
204e0 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 32 20 3d 20 28 20 70 6f 73 5f 73 74 61 const.int.pos_state2.=.(.pos_sta
20500 74 65 20 2b 20 31 20 29 20 26 20 70 6f 73 5f 73 74 61 74 65 5f 6d 61 73 6b 3b 0a 20 20 20 20 20 te.+.1.).&.pos_state_mask;......
20520 20 20 20 53 74 61 74 65 20 73 74 61 74 65 32 20 3d 20 63 75 72 5f 73 74 61 74 65 3b 20 73 74 61 ...State.state2.=.cur_state;.sta
20540 74 65 32 2e 73 65 74 5f 63 68 61 72 28 29 3b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e te2.set_char();.........const.in
20560 74 20 70 72 69 63 65 20 3d 20 6e 65 78 74 5f 70 72 69 63 65 20 2b 0a 20 20 20 20 20 20 20 20 20 t.price.=.next_price.+..........
20580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 31 28 20 62 6d 5f 6d 61 74 63 .................price1(.bm_matc
205a0 68 5b 73 74 61 74 65 32 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 32 5d 20 29 20 2b 0a 20 20 20 20 h[state2()][pos_state2].).+.....
205c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 31 28 20 62 6d ......................price1(.bm
205e0 5f 72 65 70 5b 73 74 61 74 65 32 28 29 5d 20 29 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 _rep[state2()].).+..............
20600 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 5f 72 65 70 30 5f 6c 65 6e 28 20 6c 65 6e .............price_rep0_len(.len
20620 2c 20 73 74 61 74 65 32 2c 20 70 6f 73 5f 73 74 61 74 65 32 20 29 3b 0a 20 20 20 20 20 20 20 20 ,.state2,.pos_state2.);.........
20640 77 68 69 6c 65 28 20 6e 75 6d 5f 74 72 69 61 6c 73 20 3c 20 63 75 72 20 2b 20 31 20 2b 20 6c 65 while(.num_trials.<.cur.+.1.+.le
20660 6e 20 29 0a 20 20 20 20 20 20 20 20 20 20 74 72 69 61 6c 73 5b 2b 2b 6e 75 6d 5f 74 72 69 61 6c n.)...........trials[++num_trial
20680 73 5d 2e 70 72 69 63 65 20 3d 20 69 6e 66 69 6e 69 74 65 5f 70 72 69 63 65 3b 0a 20 20 20 20 20 s].price.=.infinite_price;......
206a0 20 20 20 74 72 69 61 6c 73 5b 63 75 72 2b 31 2b 6c 65 6e 5d 2e 75 70 64 61 74 65 32 28 20 70 72 ...trials[cur+1+len].update2(.pr
206c0 69 63 65 2c 20 63 75 72 20 2b 20 31 20 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 ice,.cur.+.1.);.........}.......
206e0 7d 0a 0a 20 20 20 20 69 6e 74 20 73 74 61 72 74 5f 6c 65 6e 20 3d 20 6d 69 6e 5f 6d 61 74 63 68 }......int.start_len.=.min_match
20700 5f 6c 65 6e 3b 0a 0a 20 20 20 20 2f 2f 20 74 72 79 20 72 65 70 20 64 69 73 74 61 6e 63 65 73 0a _len;......//.try.rep.distances.
20720 20 20 20 20 66 6f 72 28 20 69 6e 74 20 72 65 70 20 3d 20 30 3b 20 72 65 70 20 3c 20 6e 75 6d 5f ....for(.int.rep.=.0;.rep.<.num_
20740 72 65 70 5f 64 69 73 74 61 6e 63 65 73 3b 20 2b 2b 72 65 70 20 29 0a 20 20 20 20 20 20 7b 0a 20 rep_distances;.++rep.).......{..
20760 20 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 64 61 74 61 20 .....const.uint8_t.*.const.data.
20780 3d 20 70 74 72 5f 74 6f 5f 63 75 72 72 65 6e 74 5f 70 6f 73 28 29 3b 0a 20 20 20 20 20 20 63 6f =.ptr_to_current_pos();.......co
207a0 6e 73 74 20 69 6e 74 20 64 69 73 20 3d 20 63 75 72 5f 74 72 69 61 6c 2e 72 65 70 73 5b 72 65 70 nst.int.dis.=.cur_trial.reps[rep
207c0 5d 20 2b 20 31 3b 0a 20 20 20 20 20 20 69 6e 74 20 6c 65 6e 3b 0a 0a 20 20 20 20 20 20 69 66 28 ].+.1;.......int.len;........if(
207e0 20 64 61 74 61 5b 30 2d 64 69 73 5d 20 21 3d 20 64 61 74 61 5b 30 5d 20 7c 7c 20 64 61 74 61 5b .data[0-dis].!=.data[0].||.data[
20800 31 2d 64 69 73 5d 20 21 3d 20 64 61 74 61 5b 31 5d 20 29 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 1-dis].!=.data[1].).continue;...
20820 20 20 20 20 66 6f 72 28 20 6c 65 6e 20 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 3b 20 6c 65 ....for(.len.=.min_match_len;.le
20840 6e 20 3c 20 6c 65 6e 5f 6c 69 6d 69 74 3b 20 2b 2b 6c 65 6e 20 29 0a 20 20 20 20 20 20 20 20 69 n.<.len_limit;.++len.).........i
20860 66 28 20 64 61 74 61 5b 6c 65 6e 2d 64 69 73 5d 20 21 3d 20 64 61 74 61 5b 6c 65 6e 5d 20 29 20 f(.data[len-dis].!=.data[len].).
20880 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 77 68 69 6c 65 28 20 6e 75 6d 5f 74 72 69 61 6c 73 20 3c break;.......while(.num_trials.<
208a0 20 63 75 72 20 2b 20 6c 65 6e 20 29 0a 20 20 20 20 20 20 20 20 74 72 69 61 6c 73 5b 2b 2b 6e 75 .cur.+.len.).........trials[++nu
208c0 6d 5f 74 72 69 61 6c 73 5d 2e 70 72 69 63 65 20 3d 20 69 6e 66 69 6e 69 74 65 5f 70 72 69 63 65 m_trials].price.=.infinite_price
208e0 3b 0a 20 20 20 20 20 20 69 6e 74 20 70 72 69 63 65 20 3d 20 72 65 70 5f 6d 61 74 63 68 5f 70 72 ;.......int.price.=.rep_match_pr
20900 69 63 65 20 2b 20 70 72 69 63 65 5f 72 65 70 28 20 72 65 70 2c 20 63 75 72 5f 73 74 61 74 65 2c ice.+.price_rep(.rep,.cur_state,
20920 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d .pos_state.);.......for(.int.i.=
20940 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 3b 20 69 20 3c 3d 20 6c 65 6e 3b 20 2b 2b 69 20 29 0a .min_match_len;.i.<=.len;.++i.).
20960 20 20 20 20 20 20 20 20 74 72 69 61 6c 73 5b 63 75 72 2b 69 5d 2e 75 70 64 61 74 65 28 20 70 72 ........trials[cur+i].update(.pr
20980 69 63 65 20 2b 20 72 65 70 5f 6c 65 6e 5f 70 72 69 63 65 73 2e 70 72 69 63 65 28 20 69 2c 20 70 ice.+.rep_len_prices.price(.i,.p
209a0 6f 73 5f 73 74 61 74 65 20 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 os_state.),.....................
209c0 20 20 20 20 20 20 20 20 20 20 72 65 70 2c 20 63 75 72 20 29 3b 0a 0a 20 20 20 20 20 20 69 66 28 ..........rep,.cur.);........if(
209e0 20 72 65 70 20 3d 3d 20 30 20 29 20 73 74 61 72 74 5f 6c 65 6e 20 3d 20 6c 65 6e 20 2b 20 31 3b .rep.==.0.).start_len.=.len.+.1;
20a00 09 2f 2f 20 64 69 73 63 61 72 64 20 73 68 6f 72 74 65 72 20 6d 61 74 63 68 65 73 0a 0a 20 20 20 .//.discard.shorter.matches.....
20a20 20 20 20 2f 2f 20 74 72 79 20 72 65 70 20 2b 20 6c 69 74 65 72 61 6c 20 2b 20 72 65 70 30 0a 20 ...//.try.rep.+.literal.+.rep0..
20a40 20 20 20 20 20 69 6e 74 20 6c 65 6e 32 20 3d 20 6c 65 6e 20 2b 20 31 3b 0a 20 20 20 20 20 20 63 .....int.len2.=.len.+.1;.......c
20a60 6f 6e 73 74 20 69 6e 74 20 6c 69 6d 69 74 20 3d 20 73 74 64 3a 3a 6d 69 6e 28 20 6d 61 74 63 68 onst.int.limit.=.std::min(.match
20a80 5f 6c 65 6e 5f 6c 69 6d 69 74 20 2b 20 6c 65 6e 32 2c 20 74 72 69 61 62 6c 65 5f 62 79 74 65 73 _len_limit.+.len2,.triable_bytes
20aa0 20 29 3b 0a 20 20 20 20 20 20 77 68 69 6c 65 28 20 6c 65 6e 32 20 3c 20 6c 69 6d 69 74 20 26 26 .);.......while(.len2.<.limit.&&
20ac0 20 64 61 74 61 5b 6c 65 6e 32 2d 64 69 73 5d 20 3d 3d 20 64 61 74 61 5b 6c 65 6e 32 5d 20 29 20 .data[len2-dis].==.data[len2].).
20ae0 2b 2b 6c 65 6e 32 3b 0a 20 20 20 20 20 20 6c 65 6e 32 20 2d 3d 20 6c 65 6e 20 2b 20 31 3b 0a 20 ++len2;.......len2.-=.len.+.1;..
20b00 20 20 20 20 20 69 66 28 20 6c 65 6e 32 20 3c 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 20 .....if(.len2.<.min_match_len.).
20b20 63 6f 6e 74 69 6e 75 65 3b 0a 0a 20 20 20 20 20 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 32 20 continue;........int.pos_state2.
20b40 3d 20 28 20 70 6f 73 5f 73 74 61 74 65 20 2b 20 6c 65 6e 20 29 20 26 20 70 6f 73 5f 73 74 61 74 =.(.pos_state.+.len.).&.pos_stat
20b60 65 5f 6d 61 73 6b 3b 0a 20 20 20 20 20 20 53 74 61 74 65 20 73 74 61 74 65 32 20 3d 20 63 75 72 e_mask;.......State.state2.=.cur
20b80 5f 73 74 61 74 65 3b 20 73 74 61 74 65 32 2e 73 65 74 5f 72 65 70 28 29 3b 0a 20 20 20 20 20 20 _state;.state2.set_rep();.......
20ba0 70 72 69 63 65 20 2b 3d 20 72 65 70 5f 6c 65 6e 5f 70 72 69 63 65 73 2e 70 72 69 63 65 28 20 6c price.+=.rep_len_prices.price(.l
20bc0 65 6e 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 en,.pos_state.).+...............
20be0 20 70 72 69 63 65 30 28 20 62 6d 5f 6d 61 74 63 68 5b 73 74 61 74 65 32 28 29 5d 5b 70 6f 73 5f .price0(.bm_match[state2()][pos_
20c00 73 74 61 74 65 32 5d 20 29 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 state2].).+................price
20c20 5f 6d 61 74 63 68 65 64 28 20 64 61 74 61 5b 6c 65 6e 2d 31 5d 2c 20 64 61 74 61 5b 6c 65 6e 5d _matched(.data[len-1],.data[len]
20c40 2c 20 64 61 74 61 5b 6c 65 6e 2d 64 69 73 5d 20 29 3b 0a 20 20 20 20 20 20 70 6f 73 5f 73 74 61 ,.data[len-dis].);.......pos_sta
20c60 74 65 32 20 3d 20 28 20 70 6f 73 5f 73 74 61 74 65 32 20 2b 20 31 20 29 20 26 20 70 6f 73 5f 73 te2.=.(.pos_state2.+.1.).&.pos_s
20c80 74 61 74 65 5f 6d 61 73 6b 3b 0a 20 20 20 20 20 20 73 74 61 74 65 32 2e 73 65 74 5f 63 68 61 72 tate_mask;.......state2.set_char
20ca0 28 29 3b 0a 20 20 20 20 20 20 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 31 28 20 62 6d 5f 6d 61 ();.......price.+=.price1(.bm_ma
20cc0 74 63 68 5b 73 74 61 74 65 32 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 32 5d 20 29 20 2b 0a 20 20 tch[state2()][pos_state2].).+...
20ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 31 28 20 62 6d 5f 72 65 70 5b 73 74 61 74 .............price1(.bm_rep[stat
20d00 65 32 28 29 5d 20 29 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 5f 72 e2()].).+................price_r
20d20 65 70 30 5f 6c 65 6e 28 20 6c 65 6e 32 2c 20 73 74 61 74 65 32 2c 20 70 6f 73 5f 73 74 61 74 65 ep0_len(.len2,.state2,.pos_state
20d40 32 20 29 3b 0a 20 20 20 20 20 20 77 68 69 6c 65 28 20 6e 75 6d 5f 74 72 69 61 6c 73 20 3c 20 63 2.);.......while(.num_trials.<.c
20d60 75 72 20 2b 20 6c 65 6e 20 2b 20 31 20 2b 20 6c 65 6e 32 20 29 0a 20 20 20 20 20 20 20 20 74 72 ur.+.len.+.1.+.len2.).........tr
20d80 69 61 6c 73 5b 2b 2b 6e 75 6d 5f 74 72 69 61 6c 73 5d 2e 70 72 69 63 65 20 3d 20 69 6e 66 69 6e ials[++num_trials].price.=.infin
20da0 69 74 65 5f 70 72 69 63 65 3b 0a 20 20 20 20 20 20 74 72 69 61 6c 73 5b 63 75 72 2b 6c 65 6e 2b ite_price;.......trials[cur+len+
20dc0 31 2b 6c 65 6e 32 5d 2e 75 70 64 61 74 65 33 28 20 70 72 69 63 65 2c 20 72 65 70 2c 20 63 75 72 1+len2].update3(.price,.rep,.cur
20de0 20 2b 20 6c 65 6e 20 2b 20 31 2c 20 63 75 72 20 29 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 .+.len.+.1,.cur.);.......}......
20e00 2f 2f 20 74 72 79 20 6d 61 74 63 68 65 73 0a 20 20 20 20 69 66 28 20 6e 65 77 6c 65 6e 20 3e 3d //.try.matches.....if(.newlen.>=
20e20 20 73 74 61 72 74 5f 6c 65 6e 20 26 26 20 6e 65 77 6c 65 6e 20 3c 3d 20 6c 65 6e 5f 6c 69 6d 69 .start_len.&&.newlen.<=.len_limi
20e40 74 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6e 6f 72 6d t.).......{.......const.int.norm
20e60 61 6c 5f 6d 61 74 63 68 5f 70 72 69 63 65 20 3d 20 6d 61 74 63 68 5f 70 72 69 63 65 20 2b 0a 20 al_match_price.=.match_price.+..
20e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
20ea0 20 20 20 20 70 72 69 63 65 30 28 20 62 6d 5f 72 65 70 5b 63 75 72 5f 73 74 61 74 65 28 29 5d 20 ....price0(.bm_rep[cur_state()].
20ec0 29 3b 0a 0a 20 20 20 20 20 20 77 68 69 6c 65 28 20 6e 75 6d 5f 74 72 69 61 6c 73 20 3c 20 63 75 );........while(.num_trials.<.cu
20ee0 72 20 2b 20 6e 65 77 6c 65 6e 20 29 0a 20 20 20 20 20 20 20 20 74 72 69 61 6c 73 5b 2b 2b 6e 75 r.+.newlen.).........trials[++nu
20f00 6d 5f 74 72 69 61 6c 73 5d 2e 70 72 69 63 65 20 3d 20 69 6e 66 69 6e 69 74 65 5f 70 72 69 63 65 m_trials].price.=.infinite_price
20f20 3b 0a 0a 20 20 20 20 20 20 69 6e 74 20 69 20 3d 20 30 3b 0a 20 20 20 20 20 20 77 68 69 6c 65 28 ;........int.i.=.0;.......while(
20f40 20 70 61 69 72 73 5b 69 5d 2e 6c 65 6e 20 3c 20 73 74 61 72 74 5f 6c 65 6e 20 29 20 2b 2b 69 3b .pairs[i].len.<.start_len.).++i;
20f60 0a 20 20 20 20 20 20 69 6e 74 20 64 69 73 20 3d 20 70 61 69 72 73 5b 69 5d 2e 64 69 73 3b 0a 20 .......int.dis.=.pairs[i].dis;..
20f80 20 20 20 20 20 66 6f 72 28 20 69 6e 74 20 6c 65 6e 20 3d 20 73 74 61 72 74 5f 6c 65 6e 3b 20 3b .....for(.int.len.=.start_len;.;
20fa0 20 2b 2b 6c 65 6e 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 6e 74 20 70 .++len.).........{.........int.p
20fc0 72 69 63 65 20 3d 20 6e 6f 72 6d 61 6c 5f 6d 61 74 63 68 5f 70 72 69 63 65 20 2b 20 70 72 69 63 rice.=.normal_match_price.+.pric
20fe0 65 5f 70 61 69 72 28 20 64 69 73 2c 20 6c 65 6e 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 e_pair(.dis,.len,.pos_state.);..
21000 20 20 20 20 20 20 20 74 72 69 61 6c 73 5b 63 75 72 2b 6c 65 6e 5d 2e 75 70 64 61 74 65 28 20 70 .......trials[cur+len].update(.p
21020 72 69 63 65 2c 20 64 69 73 20 2b 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 2c 20 63 rice,.dis.+.num_rep_distances,.c
21040 75 72 20 29 3b 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 74 72 79 20 6d 61 74 63 68 20 2b 20 6c 69 ur.);..........//.try.match.+.li
21060 74 65 72 61 6c 20 2b 20 72 65 70 30 0a 20 20 20 20 20 20 20 20 69 66 28 20 6c 65 6e 20 3d 3d 20 teral.+.rep0.........if(.len.==.
21080 70 61 69 72 73 5b 69 5d 2e 6c 65 6e 20 29 0a 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 pairs[i].len.)...........{......
210a0 20 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 64 61 74 61 20 .....const.uint8_t.*.const.data.
210c0 3d 20 70 74 72 5f 74 6f 5f 63 75 72 72 65 6e 74 5f 70 6f 73 28 29 3b 0a 20 20 20 20 20 20 20 20 =.ptr_to_current_pos();.........
210e0 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 73 32 20 3d 20 64 69 73 20 2b 20 31 3b 0a 20 20 20 20 ..const.int.dis2.=.dis.+.1;.....
21100 20 20 20 20 20 20 69 6e 74 20 6c 65 6e 32 20 3d 20 6c 65 6e 20 2b 20 31 3b 0a 20 20 20 20 20 20 ......int.len2.=.len.+.1;.......
21120 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6c 69 6d 69 74 20 3d 20 73 74 64 3a 3a 6d 69 6e 28 20 ....const.int.limit.=.std::min(.
21140 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 2b 20 6c 65 6e 32 2c 20 74 72 69 61 62 6c 65 5f match_len_limit.+.len2,.triable_
21160 62 79 74 65 73 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 28 20 6c 65 6e 32 20 3c bytes.);...........while(.len2.<
21180 20 6c 69 6d 69 74 20 26 26 20 64 61 74 61 5b 6c 65 6e 32 2d 64 69 73 32 5d 20 3d 3d 20 64 61 74 .limit.&&.data[len2-dis2].==.dat
211a0 61 5b 6c 65 6e 32 5d 20 29 20 2b 2b 6c 65 6e 32 3b 0a 20 20 20 20 20 20 20 20 20 20 6c 65 6e 32 a[len2].).++len2;...........len2
211c0 20 2d 3d 20 6c 65 6e 20 2b 20 31 3b 0a 20 20 20 20 20 20 20 20 20 20 69 66 28 20 6c 65 6e 32 20 .-=.len.+.1;...........if(.len2.
211e0 3e 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b >=.min_match_len.).............{
21200 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 32 20 3d 20 28 20 .............int.pos_state2.=.(.
21220 70 6f 73 5f 73 74 61 74 65 20 2b 20 6c 65 6e 20 29 20 26 20 70 6f 73 5f 73 74 61 74 65 5f 6d 61 pos_state.+.len.).&.pos_state_ma
21240 73 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 74 61 74 65 20 73 74 61 74 65 32 20 3d 20 63 sk;.............State.state2.=.c
21260 75 72 5f 73 74 61 74 65 3b 20 73 74 61 74 65 32 2e 73 65 74 5f 6d 61 74 63 68 28 29 3b 0a 20 20 ur_state;.state2.set_match();...
21280 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 30 28 20 62 6d 5f 6d 61 ..........price.+=.price0(.bm_ma
212a0 74 63 68 5b 73 74 61 74 65 32 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 32 5d 20 29 20 2b 0a 20 20 tch[state2()][pos_state2].).+...
212c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 5f 6d 61 74 63 68 65 64 ...................price_matched
212e0 28 20 64 61 74 61 5b 6c 65 6e 2d 31 5d 2c 20 64 61 74 61 5b 6c 65 6e 5d 2c 20 64 61 74 61 5b 6c (.data[len-1],.data[len],.data[l
21300 65 6e 2d 64 69 73 32 5d 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 73 5f 73 74 61 74 en-dis2].);.............pos_stat
21320 65 32 20 3d 20 28 20 70 6f 73 5f 73 74 61 74 65 32 20 2b 20 31 20 29 20 26 20 70 6f 73 5f 73 74 e2.=.(.pos_state2.+.1.).&.pos_st
21340 61 74 65 5f 6d 61 73 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 32 2e 73 65 74 ate_mask;.............state2.set
21360 5f 63 68 61 72 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 20 2b 3d 20 70 72 _char();.............price.+=.pr
21380 69 63 65 31 28 20 62 6d 5f 6d 61 74 63 68 5b 73 74 61 74 65 32 28 29 5d 5b 70 6f 73 5f 73 74 61 ice1(.bm_match[state2()][pos_sta
213a0 74 65 32 5d 20 29 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 te2].).+......................pr
213c0 69 63 65 31 28 20 62 6d 5f 72 65 70 5b 73 74 61 74 65 32 28 29 5d 20 29 20 2b 0a 20 20 20 20 20 ice1(.bm_rep[state2()].).+......
213e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 63 65 5f 72 65 70 30 5f 6c 65 6e 28 20 ................price_rep0_len(.
21400 6c 65 6e 32 2c 20 73 74 61 74 65 32 2c 20 70 6f 73 5f 73 74 61 74 65 32 20 29 3b 0a 0a 20 20 20 len2,.state2,.pos_state2.);.....
21420 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 28 20 6e 75 6d 5f 74 72 69 61 6c 73 20 3c 20 63 75 72 .........while(.num_trials.<.cur
21440 20 2b 20 6c 65 6e 20 2b 20 31 20 2b 20 6c 65 6e 32 20 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .+.len.+.1.+.len2.).............
21460 20 20 74 72 69 61 6c 73 5b 2b 2b 6e 75 6d 5f 74 72 69 61 6c 73 5d 2e 70 72 69 63 65 20 3d 20 69 ..trials[++num_trials].price.=.i
21480 6e 66 69 6e 69 74 65 5f 70 72 69 63 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 72 69 61 6c nfinite_price;.............trial
214a0 73 5b 63 75 72 2b 6c 65 6e 2b 31 2b 6c 65 6e 32 5d 2e 75 70 64 61 74 65 33 28 20 70 72 69 63 65 s[cur+len+1+len2].update3(.price
214c0 2c 20 64 69 73 20 2b 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 2c 0a 20 20 20 20 20 ,.dis.+.num_rep_distances,......
214e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
21500 20 20 20 20 20 20 20 63 75 72 20 2b 20 6c 65 6e 20 2b 20 31 2c 20 63 75 72 20 29 3b 0a 20 20 20 .......cur.+.len.+.1,.cur.);....
21520 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 69 66 28 20 2b 2b 69 20 3e 3d 20 .........}...........if(.++i.>=.
21540 6e 75 6d 5f 70 61 69 72 73 20 29 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 64 69 73 num_pairs.).break;...........dis
21560 20 3d 20 70 61 69 72 73 5b 69 5d 2e 64 69 73 3b 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 .=.pairs[i].dis;...........}....
21580 20 20 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 7d 0a 0a 0a 62 6f 6f 6c 20 .....}.......}.....}...}...bool.
215a0 4c 5a 5f 65 6e 63 6f 64 65 72 3a 3a 65 6e 63 6f 64 65 5f 6d 65 6d 62 65 72 28 20 63 6f 6e 73 74 LZ_encoder::encode_member(.const
215c0 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 .unsigned.long.long.member_size.
215e0 29 0a 20 20 7b 0a 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 )...{...const.unsigned.long.long
21600 20 6d 65 6d 62 65 72 5f 73 69 7a 65 5f 6c 69 6d 69 74 20 3d 0a 20 20 20 20 6d 65 6d 62 65 72 5f .member_size_limit.=.....member_
21620 73 69 7a 65 20 2d 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 69 7a 65 20 2d 20 6d 61 78 5f size.-.Lzip_trailer::size.-.max_
21640 6d 61 72 6b 65 72 5f 73 69 7a 65 3b 0a 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 62 65 73 74 20 3d marker_size;...const.bool.best.=
21660 20 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 3e 20 31 32 3b 0a 20 20 63 6f 6e 73 74 20 69 .match_len_limit.>.12;...const.i
21680 6e 74 20 64 69 73 5f 70 72 69 63 65 5f 63 6f 75 6e 74 20 3d 20 62 65 73 74 20 3f 20 31 20 3a 20 nt.dis_price_count.=.best.?.1.:.
216a0 35 31 32 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 61 6c 69 67 6e 5f 70 72 69 63 65 5f 63 6f 75 512;...const.int.align_price_cou
216c0 6e 74 20 3d 20 62 65 73 74 20 3f 20 31 20 3a 20 64 69 73 5f 61 6c 69 67 6e 5f 73 69 7a 65 3b 0a nt.=.best.?.1.:.dis_align_size;.
216e0 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 72 69 63 65 5f 63 6f 75 6e 74 20 3d 20 28 20 6d 61 74 63 ..const.int.price_count.=.(.matc
21700 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 3e 20 33 36 20 29 20 3f 20 31 30 31 33 20 3a 20 34 30 39 33 h_len_limit.>.36.).?.1013.:.4093
21720 3b 0a 20 20 69 6e 74 20 70 72 69 63 65 5f 63 6f 75 6e 74 65 72 20 3d 20 30 3b 09 09 2f 2f 20 63 ;...int.price_counter.=.0;..//.c
21740 6f 75 6e 74 65 72 73 20 6d 61 79 20 64 65 63 72 65 6d 65 6e 74 20 62 65 6c 6f 77 20 30 0a 20 20 ounters.may.decrement.below.0...
21760 69 6e 74 20 64 69 73 5f 70 72 69 63 65 5f 63 6f 75 6e 74 65 72 20 3d 20 30 3b 0a 20 20 69 6e 74 int.dis_price_counter.=.0;...int
21780 20 61 6c 69 67 6e 5f 70 72 69 63 65 5f 63 6f 75 6e 74 65 72 20 3d 20 30 3b 0a 20 20 69 6e 74 20 .align_price_counter.=.0;...int.
217a0 72 65 70 73 5b 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 5d 3b 0a 20 20 53 74 61 74 65 reps[num_rep_distances];...State
217c0 20 73 74 61 74 65 3b 0a 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 .state;...for(.int.i.=.0;.i.<.nu
217e0 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 3b 20 2b 2b 69 20 29 20 72 65 70 73 5b 69 5d 20 3d m_rep_distances;.++i.).reps[i].=
21800 20 30 3b 0a 0a 20 20 69 66 28 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 21 3d 20 30 20 .0;....if(.data_position().!=.0.
21820 7c 7c 20 72 65 6e 63 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 20 21 3d 20 4c 7a 69 ||.renc.member_position().!=.Lzi
21840 70 5f 68 65 61 64 65 72 3a 3a 73 69 7a 65 20 29 0a 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 p_header::size.).....return.fals
21860 65 3b 09 09 09 09 2f 2f 20 63 61 6e 20 62 65 20 63 61 6c 6c 65 64 20 6f 6e 6c 79 20 6f 6e 63 65 e;....//.can.be.called.only.once
21880 0a 0a 20 20 69 66 28 20 21 64 61 74 61 5f 66 69 6e 69 73 68 65 64 28 29 20 29 09 09 09 2f 2f 20 ....if(.!data_finished().)...//.
218a0 65 6e 63 6f 64 65 20 66 69 72 73 74 20 62 79 74 65 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 encode.first.byte.....{.....cons
218c0 74 20 75 69 6e 74 38 5f 74 20 70 72 65 76 5f 62 79 74 65 20 3d 20 30 3b 0a 20 20 20 20 63 6f 6e t.uint8_t.prev_byte.=.0;.....con
218e0 73 74 20 75 69 6e 74 38 5f 74 20 63 75 72 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 30 20 29 3b st.uint8_t.cur_byte.=.peek(.0.);
21900 0a 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 6d 61 74 63 68 5b 73 .....renc.encode_bit(.bm_match[s
21920 74 61 74 65 28 29 5d 5b 30 5d 2c 20 30 20 29 3b 0a 20 20 20 20 65 6e 63 6f 64 65 5f 6c 69 74 65 tate()][0],.0.);.....encode_lite
21940 72 61 6c 28 20 70 72 65 76 5f 62 79 74 65 2c 20 63 75 72 5f 62 79 74 65 20 29 3b 0a 20 20 20 20 ral(.prev_byte,.cur_byte.);.....
21960 63 72 63 33 32 2e 75 70 64 61 74 65 5f 62 79 74 65 28 20 63 72 63 5f 2c 20 63 75 72 5f 62 79 74 crc32.update_byte(.crc_,.cur_byt
21980 65 20 29 3b 0a 20 20 20 20 67 65 74 5f 6d 61 74 63 68 5f 70 61 69 72 73 28 29 3b 0a 20 20 20 20 e.);.....get_match_pairs();.....
219a0 6d 6f 76 65 5f 70 6f 73 28 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 77 68 69 6c 65 28 20 21 64 61 74 move_pos();.....}....while(.!dat
219c0 61 5f 66 69 6e 69 73 68 65 64 28 29 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 70 72 69 a_finished().).....{.....if(.pri
219e0 63 65 5f 63 6f 75 6e 74 65 72 20 3c 3d 20 30 20 26 26 20 70 65 6e 64 69 6e 67 5f 6e 75 6d 5f 70 ce_counter.<=.0.&&.pending_num_p
21a00 61 69 72 73 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 70 72 69 63 65 5f airs.==.0.).......{.......price_
21a20 63 6f 75 6e 74 65 72 20 3d 20 70 72 69 63 65 5f 63 6f 75 6e 74 3b 09 2f 2f 20 72 65 63 61 6c 63 counter.=.price_count;.//.recalc
21a40 75 6c 61 74 65 20 70 72 69 63 65 73 20 65 76 65 72 79 20 74 68 65 73 65 20 62 79 74 65 73 0a 20 ulate.prices.every.these.bytes..
21a60 20 20 20 20 20 69 66 28 20 64 69 73 5f 70 72 69 63 65 5f 63 6f 75 6e 74 65 72 20 3c 3d 20 30 20 .....if(.dis_price_counter.<=.0.
21a80 29 0a 20 20 20 20 20 20 20 20 7b 20 64 69 73 5f 70 72 69 63 65 5f 63 6f 75 6e 74 65 72 20 3d 20 ).........{.dis_price_counter.=.
21aa0 64 69 73 5f 70 72 69 63 65 5f 63 6f 75 6e 74 3b 20 75 70 64 61 74 65 5f 64 69 73 74 61 6e 63 65 dis_price_count;.update_distance
21ac0 5f 70 72 69 63 65 73 28 29 3b 20 7d 0a 20 20 20 20 20 20 69 66 28 20 61 6c 69 67 6e 5f 70 72 69 _prices();.}.......if(.align_pri
21ae0 63 65 5f 63 6f 75 6e 74 65 72 20 3c 3d 20 30 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 ce_counter.<=.0.).........{.....
21b00 20 20 20 20 61 6c 69 67 6e 5f 70 72 69 63 65 5f 63 6f 75 6e 74 65 72 20 3d 20 61 6c 69 67 6e 5f ....align_price_counter.=.align_
21b20 70 72 69 63 65 5f 63 6f 75 6e 74 3b 0a 20 20 20 20 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 price_count;.........for(.int.i.
21b40 3d 20 30 3b 20 69 20 3c 20 64 69 73 5f 61 6c 69 67 6e 5f 73 69 7a 65 3b 20 2b 2b 69 20 29 0a 20 =.0;.i.<.dis_align_size;.++i.)..
21b60 20 20 20 20 20 20 20 20 20 61 6c 69 67 6e 5f 70 72 69 63 65 73 5b 69 5d 20 3d 20 70 72 69 63 65 .........align_prices[i].=.price
21b80 5f 73 79 6d 62 6f 6c 5f 72 65 76 65 72 73 65 64 28 20 62 6d 5f 61 6c 69 67 6e 2c 20 69 2c 20 64 _symbol_reversed(.bm_align,.i,.d
21ba0 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 is_align_bits.);.........}......
21bc0 20 6d 61 74 63 68 5f 6c 65 6e 5f 70 72 69 63 65 73 2e 75 70 64 61 74 65 5f 70 72 69 63 65 73 28 .match_len_prices.update_prices(
21be0 29 3b 0a 20 20 20 20 20 20 72 65 70 5f 6c 65 6e 5f 70 72 69 63 65 73 2e 75 70 64 61 74 65 5f 70 );.......rep_len_prices.update_p
21c00 72 69 63 65 73 28 29 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 69 6e 74 20 61 68 65 61 64 20 rices();.......}......int.ahead.
21c20 3d 20 73 65 71 75 65 6e 63 65 5f 6f 70 74 69 6d 69 7a 65 72 28 20 72 65 70 73 2c 20 73 74 61 74 =.sequence_optimizer(.reps,.stat
21c40 65 20 29 3b 0a 20 20 20 20 70 72 69 63 65 5f 63 6f 75 6e 74 65 72 20 2d 3d 20 61 68 65 61 64 3b e.);.....price_counter.-=.ahead;
21c60 0a 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 61 68 65 61 64 20 3e 20 30 3b ......for(.int.i.=.0;.ahead.>.0;
21c80 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 .).......{.......const.int.pos_s
21ca0 74 61 74 65 20 3d 20 28 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 2d 20 61 68 65 61 64 tate.=.(.data_position().-.ahead
21cc0 20 29 20 26 20 70 6f 73 5f 73 74 61 74 65 5f 6d 61 73 6b 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 .).&.pos_state_mask;.......const
21ce0 20 69 6e 74 20 6c 65 6e 20 3d 20 74 72 69 61 6c 73 5b 69 5d 2e 70 72 69 63 65 3b 0a 20 20 20 20 .int.len.=.trials[i].price;.....
21d00 20 20 69 6e 74 20 64 69 73 20 3d 20 74 72 69 61 6c 73 5b 69 5d 2e 64 69 73 34 3b 0a 0a 20 20 20 ..int.dis.=.trials[i].dis4;.....
21d20 20 20 20 62 6f 6f 6c 20 62 69 74 20 3d 20 64 69 73 20 3c 20 30 3b 0a 20 20 20 20 20 20 72 65 6e ...bool.bit.=.dis.<.0;.......ren
21d40 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 6d 61 74 63 68 5b 73 74 61 74 65 28 29 5d 5b c.encode_bit(.bm_match[state()][
21d60 70 6f 73 5f 73 74 61 74 65 5d 2c 20 21 62 69 74 20 29 3b 0a 20 20 20 20 20 20 69 66 28 20 62 69 pos_state],.!bit.);.......if(.bi
21d80 74 20 29 09 09 09 09 09 2f 2f 20 6c 69 74 65 72 61 6c 20 62 79 74 65 0a 20 20 20 20 20 20 20 20 t.).....//.literal.byte.........
21da0 7b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 70 72 65 76 5f 62 79 74 {.........const.uint8_t.prev_byt
21dc0 65 20 3d 20 70 65 65 6b 28 20 61 68 65 61 64 20 2b 20 31 20 29 3b 0a 20 20 20 20 20 20 20 20 63 e.=.peek(.ahead.+.1.);.........c
21de0 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 63 75 72 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 61 68 onst.uint8_t.cur_byte.=.peek(.ah
21e00 65 61 64 20 29 3b 0a 20 20 20 20 20 20 20 20 63 72 63 33 32 2e 75 70 64 61 74 65 5f 62 79 74 65 ead.);.........crc32.update_byte
21e20 28 20 63 72 63 5f 2c 20 63 75 72 5f 62 79 74 65 20 29 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 (.crc_,.cur_byte.);.........if(.
21e40 73 74 61 74 65 2e 69 73 5f 63 68 61 72 5f 73 65 74 5f 63 68 61 72 28 29 20 29 0a 20 20 20 20 20 state.is_char_set_char().)......
21e60 20 20 20 20 20 65 6e 63 6f 64 65 5f 6c 69 74 65 72 61 6c 28 20 70 72 65 76 5f 62 79 74 65 2c 20 .....encode_literal(.prev_byte,.
21e80 63 75 72 5f 62 79 74 65 20 29 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 cur_byte.);.........else........
21ea0 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 6d 61 74 ...{...........const.uint8_t.mat
21ec0 63 68 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 61 68 65 61 64 20 2b 20 72 65 70 73 5b 30 5d 20 ch_byte.=.peek(.ahead.+.reps[0].
21ee0 2b 20 31 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 6d 61 74 63 68 65 64 28 +.1.);...........encode_matched(
21f00 20 70 72 65 76 5f 62 79 74 65 2c 20 63 75 72 5f 62 79 74 65 2c 20 6d 61 74 63 68 5f 62 79 74 65 .prev_byte,.cur_byte,.match_byte
21f20 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 .);...........}.........}.......
21f40 65 6c 73 65 09 09 09 09 09 2f 2f 20 6d 61 74 63 68 20 6f 72 20 72 65 70 65 61 74 65 64 20 6d 61 else.....//.match.or.repeated.ma
21f60 74 63 68 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 63 72 63 33 32 2e 75 70 64 61 tch.........{.........crc32.upda
21f80 74 65 5f 62 75 66 28 20 63 72 63 5f 2c 20 70 74 72 5f 74 6f 5f 63 75 72 72 65 6e 74 5f 70 6f 73 te_buf(.crc_,.ptr_to_current_pos
21fa0 28 29 20 2d 20 61 68 65 61 64 2c 20 6c 65 6e 20 29 3b 0a 20 20 20 20 20 20 20 20 6d 74 66 5f 72 ().-.ahead,.len.);.........mtf_r
21fc0 65 70 73 28 20 64 69 73 2c 20 72 65 70 73 20 29 3b 0a 20 20 20 20 20 20 20 20 62 69 74 20 3d 20 eps(.dis,.reps.);.........bit.=.
21fe0 64 69 73 20 3c 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 3b 0a 20 20 20 20 20 20 20 dis.<.num_rep_distances;........
22000 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 5b 73 74 61 74 65 28 29 .renc.encode_bit(.bm_rep[state()
22020 5d 2c 20 62 69 74 20 29 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 62 69 74 20 29 09 09 09 09 2f ],.bit.);.........if(.bit.)..../
22040 2f 20 72 65 70 65 61 74 65 64 20 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 /.repeated.match...........{....
22060 20 20 20 20 20 20 20 62 69 74 20 3d 20 64 69 73 20 3d 3d 20 30 3b 0a 20 20 20 20 20 20 20 20 20 .......bit.=.dis.==.0;..........
22080 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 30 5b 73 74 61 74 65 28 .renc.encode_bit(.bm_rep0[state(
220a0 29 5d 2c 20 21 62 69 74 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 69 66 28 20 62 69 74 20 29 0a )],.!bit.);...........if(.bit.).
220c0 20 20 20 20 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f ............renc.encode_bit(.bm_
220e0 6c 65 6e 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 6c 65 6e 20 3e 20 31 len[state()][pos_state],.len.>.1
22100 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b .);...........else.............{
22120 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d .............renc.encode_bit(.bm
22140 5f 72 65 70 31 5b 73 74 61 74 65 28 29 5d 2c 20 64 69 73 20 3e 20 31 20 29 3b 0a 20 20 20 20 20 _rep1[state()],.dis.>.1.);......
22160 20 20 20 20 20 20 20 69 66 28 20 64 69 73 20 3e 20 31 20 29 0a 20 20 20 20 20 20 20 20 20 20 20 .......if(.dis.>.1.)............
22180 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 32 5b 73 74 61 74 ...renc.encode_bit(.bm_rep2[stat
221a0 65 28 29 5d 2c 20 64 69 73 20 3e 20 32 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 e()],.dis.>.2.);.............}..
221c0 20 20 20 20 20 20 20 20 20 69 66 28 20 6c 65 6e 20 3d 3d 20 31 20 29 20 73 74 61 74 65 2e 73 65 .........if(.len.==.1.).state.se
221e0 74 5f 73 68 6f 72 74 72 65 70 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 t_shortrep();...........else....
22200 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f .........{.............renc.enco
22220 64 65 5f 6c 65 6e 28 20 72 65 70 5f 6c 65 6e 5f 6d 6f 64 65 6c 2c 20 6c 65 6e 2c 20 70 6f 73 5f de_len(.rep_len_model,.len,.pos_
22240 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 70 5f 6c 65 6e 5f 70 72 69 state.);.............rep_len_pri
22260 63 65 73 2e 64 65 63 72 65 6d 65 6e 74 5f 63 6f 75 6e 74 65 72 28 20 70 6f 73 5f 73 74 61 74 65 ces.decrement_counter(.pos_state
22280 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 73 65 74 5f 72 65 70 28 29 3b .);.............state.set_rep();
222a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 .............}...........}......
222c0 20 20 20 65 6c 73 65 09 09 09 09 09 2f 2f 20 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 7b ...else.....//.match...........{
222e0 0a 20 20 20 20 20 20 20 20 20 20 64 69 73 20 2d 3d 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e ...........dis.-=.num_rep_distan
22300 63 65 73 3b 0a 20 20 20 20 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 70 61 69 72 28 20 64 69 73 2c ces;...........encode_pair(.dis,
22320 20 6c 65 6e 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 69 66 28 .len,.pos_state.);...........if(
22340 20 64 69 73 20 3e 3d 20 6d 6f 64 65 6c 65 64 5f 64 69 73 74 61 6e 63 65 73 20 29 20 2d 2d 61 6c .dis.>=.modeled_distances.).--al
22360 69 67 6e 5f 70 72 69 63 65 5f 63 6f 75 6e 74 65 72 3b 0a 20 20 20 20 20 20 20 20 20 20 2d 2d 64 ign_price_counter;...........--d
22380 69 73 5f 70 72 69 63 65 5f 63 6f 75 6e 74 65 72 3b 0a 20 20 20 20 20 20 20 20 20 20 6d 61 74 63 is_price_counter;...........matc
223a0 68 5f 6c 65 6e 5f 70 72 69 63 65 73 2e 64 65 63 72 65 6d 65 6e 74 5f 63 6f 75 6e 74 65 72 28 20 h_len_prices.decrement_counter(.
223c0 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 73 65 74 pos_state.);...........state.set
223e0 5f 6d 61 74 63 68 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a _match();...........}.........}.
22400 20 20 20 20 20 20 61 68 65 61 64 20 2d 3d 20 6c 65 6e 3b 20 69 20 2b 3d 20 6c 65 6e 3b 0a 20 20 ......ahead.-=.len;.i.+=.len;...
22420 20 20 20 20 69 66 28 20 72 65 6e 63 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 20 3e ....if(.renc.member_position().>
22440 3d 20 6d 65 6d 62 65 72 5f 73 69 7a 65 5f 6c 69 6d 69 74 20 29 0a 20 20 20 20 20 20 20 20 7b 0a =.member_size_limit.).........{.
22460 20 20 20 20 20 20 20 20 69 66 28 20 21 64 65 63 5f 70 6f 73 28 20 61 68 65 61 64 20 29 20 29 20 ........if(.!dec_pos(.ahead.).).
22480 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 66 75 6c 6c 5f 66 6c 75 73 68 return.false;.........full_flush
224a0 28 20 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a (.state.);.........return.true;.
224c0 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 66 75 6c 6c 5f 66 ........}.......}.....}...full_f
224e0 6c 75 73 68 28 20 73 74 61 74 65 20 29 3b 0a 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 lush(.state.);...return.true;...
22500 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 }...............................
22520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
225a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
225c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
225e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22600 6c 7a 69 70 2d 31 2e 32 35 2f 63 6f 6e 66 69 67 75 72 65 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/configure.............
22620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22660 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000755.0000000.0000000.0000
22680 30 30 31 36 36 35 31 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 34 33 35 31 00 20 30 00 00 00 0016651.14744236057.014351..0...
226a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
226c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
226e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22700 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
22720 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
22740 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
22760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
227a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
227c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
227e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22800 23 21 20 2f 62 69 6e 2f 73 68 0a 23 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 74 20 66 6f #!./bin/sh.#.configure.script.fo
22820 72 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d 70 r.Lzip.-.LZMA.lossless.data.comp
22840 72 65 73 73 6f 72 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 32 35 ressor.#.Copyright.(C).2008-2025
22860 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 23 0a 23 20 54 68 69 73 20 63 6f 6e .Antonio.Diaz.Diaz..#.#.This.con
22880 66 69 67 75 72 65 20 73 63 72 69 70 74 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 figure.script.is.free.software:.
228a0 79 6f 75 20 68 61 76 65 20 75 6e 6c 69 6d 69 74 65 64 20 70 65 72 6d 69 73 73 69 6f 6e 0a 23 20 you.have.unlimited.permission.#.
228c0 74 6f 20 63 6f 70 79 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 61 6e 64 20 6d 6f 64 69 66 79 20 to.copy,.distribute,.and.modify.
228e0 69 74 2e 0a 0a 70 6b 67 6e 61 6d 65 3d 6c 7a 69 70 0a 70 6b 67 76 65 72 73 69 6f 6e 3d 31 2e 32 it...pkgname=lzip.pkgversion=1.2
22900 35 0a 70 72 6f 67 6e 61 6d 65 3d 6c 7a 69 70 0a 73 72 63 74 72 69 67 67 65 72 3d 64 6f 63 2f 24 5.progname=lzip.srctrigger=doc/$
22920 7b 70 6b 67 6e 61 6d 65 7d 2e 74 65 78 69 0a 0a 23 20 63 6c 65 61 72 20 73 6f 6d 65 20 74 68 69 {pkgname}.texi..#.clear.some.thi
22940 6e 67 73 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 69 6e 68 65 72 69 74 65 64 20 66 72 6f 6d 20 65 ngs.potentially.inherited.from.e
22960 6e 76 69 72 6f 6e 6d 65 6e 74 2e 0a 4c 43 5f 41 4c 4c 3d 43 0a 65 78 70 6f 72 74 20 4c 43 5f 41 nvironment..LC_ALL=C.export.LC_A
22980 4c 4c 0a 73 72 63 64 69 72 3d 0a 70 72 65 66 69 78 3d 2f 75 73 72 2f 6c 6f 63 61 6c 0a 65 78 65 LL.srcdir=.prefix=/usr/local.exe
229a0 63 5f 70 72 65 66 69 78 3d 27 24 28 70 72 65 66 69 78 29 27 0a 62 69 6e 64 69 72 3d 27 24 28 65 c_prefix='$(prefix)'.bindir='$(e
229c0 78 65 63 5f 70 72 65 66 69 78 29 2f 62 69 6e 27 0a 64 61 74 61 72 6f 6f 74 64 69 72 3d 27 24 28 xec_prefix)/bin'.datarootdir='$(
229e0 70 72 65 66 69 78 29 2f 73 68 61 72 65 27 0a 69 6e 66 6f 64 69 72 3d 27 24 28 64 61 74 61 72 6f prefix)/share'.infodir='$(dataro
22a00 6f 74 64 69 72 29 2f 69 6e 66 6f 27 0a 6d 61 6e 64 69 72 3d 27 24 28 64 61 74 61 72 6f 6f 74 64 otdir)/info'.mandir='$(datarootd
22a20 69 72 29 2f 6d 61 6e 27 0a 62 75 69 6c 64 3d 6e 6f 0a 63 68 65 63 6b 3d 6e 6f 0a 69 6e 73 74 61 ir)/man'.build=no.check=no.insta
22a40 6c 6c 64 69 72 3d 0a 43 58 58 3d 67 2b 2b 0a 43 50 50 46 4c 41 47 53 3d 0a 43 58 58 46 4c 41 47 lldir=.CXX=g++.CPPFLAGS=.CXXFLAG
22a60 53 3d 27 2d 57 61 6c 6c 20 2d 57 20 2d 4f 32 27 0a 4c 44 46 4c 41 47 53 3d 0a 4d 41 4b 45 49 4e S='-Wall.-W.-O2'.LDFLAGS=.MAKEIN
22a80 46 4f 3d 6d 61 6b 65 69 6e 66 6f 0a 0a 23 20 63 68 65 63 6b 69 6e 67 20 77 68 65 74 68 65 72 20 FO=makeinfo..#.checking.whether.
22aa0 77 65 20 61 72 65 20 75 73 69 6e 67 20 47 4e 55 20 43 2b 2b 2e 0a 2f 62 69 6e 2f 73 68 20 2d 63 we.are.using.GNU.C++../bin/sh.-c
22ac0 20 22 24 7b 43 58 58 7d 20 2d 2d 76 65 72 73 69 6f 6e 22 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 ."${CXX}.--version".>./dev/null.
22ae0 32 3e 26 31 20 7c 7c 20 7b 20 43 58 58 3d 63 2b 2b 20 3b 20 43 58 58 46 4c 41 47 53 3d 2d 4f 32 2>&1.||.{.CXX=c++.;.CXXFLAGS=-O2
22b00 20 3b 20 7d 0a 0a 23 20 4c 6f 6f 70 20 6f 76 65 72 20 61 6c 6c 20 61 72 67 73 0a 61 72 67 73 3d .;.}..#.Loop.over.all.args.args=
22b20 0a 6e 6f 5f 63 72 65 61 74 65 3d 0a 77 68 69 6c 65 20 5b 20 24 23 20 21 3d 20 30 20 5d 20 3b 20 .no_create=.while.[.$#.!=.0.].;.
22b40 64 6f 0a 0a 09 23 20 47 65 74 20 74 68 65 20 66 69 72 73 74 20 61 72 67 2c 20 61 6e 64 20 73 68 do...#.Get.the.first.arg,.and.sh
22b60 75 66 66 6c 65 0a 09 6f 70 74 69 6f 6e 3d 24 31 20 3b 20 61 72 67 32 3d 6e 6f 0a 09 73 68 69 66 uffle..option=$1.;.arg2=no..shif
22b80 74 0a 0a 09 23 20 41 64 64 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20 71 75 6f 74 65 64 20 74 6f t...#.Add.the.argument.quoted.to
22ba0 20 61 72 67 73 0a 09 69 66 20 5b 20 2d 7a 20 22 24 7b 61 72 67 73 7d 22 20 5d 20 3b 20 74 68 65 .args..if.[.-z."${args}".].;.the
22bc0 6e 20 61 72 67 73 3d 22 5c 22 24 7b 6f 70 74 69 6f 6e 7d 5c 22 22 0a 09 65 6c 73 65 20 61 72 67 n.args="\"${option}\""..else.arg
22be0 73 3d 22 24 7b 61 72 67 73 7d 20 5c 22 24 7b 6f 70 74 69 6f 6e 7d 5c 22 22 20 3b 20 66 69 0a 0a s="${args}.\"${option}\"".;.fi..
22c00 09 23 20 53 70 6c 69 74 20 6f 75 74 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20 66 6f 72 20 6f 70 .#.Split.out.the.argument.for.op
22c20 74 69 6f 6e 73 20 74 68 61 74 20 74 61 6b 65 20 74 68 65 6d 0a 09 63 61 73 65 20 24 7b 6f 70 74 tions.that.take.them..case.${opt
22c40 69 6f 6e 7d 20 69 6e 0a 09 2a 3d 2a 29 20 6f 70 74 61 72 67 3d 60 65 63 68 6f 20 22 24 7b 6f 70 ion}.in..*=*).optarg=`echo."${op
22c60 74 69 6f 6e 7d 22 20 7c 20 73 65 64 20 2d 65 20 27 73 2c 5e 5b 5e 3d 5d 2a 3d 2c 2c 3b 73 2c 2f tion}".|.sed.-e.'s,^[^=]*=,,;s,/
22c80 24 2c 2c 27 60 20 3b 3b 0a 09 65 73 61 63 0a 0a 09 23 20 50 72 6f 63 65 73 73 20 74 68 65 20 6f $,,'`.;;..esac...#.Process.the.o
22ca0 70 74 69 6f 6e 73 0a 09 63 61 73 65 20 24 7b 6f 70 74 69 6f 6e 7d 20 69 6e 0a 09 2d 2d 68 65 6c ptions..case.${option}.in..--hel
22cc0 70 20 7c 20 2d 68 29 0a 09 09 65 63 68 6f 20 22 55 73 61 67 65 3a 20 24 30 20 5b 4f 50 54 49 4f p.|.-h)...echo."Usage:.$0.[OPTIO
22ce0 4e 5d 2e 2e 2e 20 5b 56 41 52 3d 56 41 4c 55 45 5d 2e 2e 2e 22 0a 09 09 65 63 68 6f 0a 09 09 65 N]....[VAR=VALUE]..."...echo...e
22d00 63 68 6f 20 22 54 6f 20 61 73 73 69 67 6e 20 6d 61 6b 65 66 69 6c 65 20 76 61 72 69 61 62 6c 65 cho."To.assign.makefile.variable
22d20 73 20 28 65 2e 67 2e 2c 20 43 58 58 2c 20 43 58 58 46 4c 41 47 53 2e 2e 2e 29 2c 20 73 70 65 63 s.(e.g.,.CXX,.CXXFLAGS...),.spec
22d40 69 66 79 20 74 68 65 6d 20 61 73 22 0a 09 09 65 63 68 6f 20 22 61 72 67 75 6d 65 6e 74 73 20 74 ify.them.as"...echo."arguments.t
22d60 6f 20 63 6f 6e 66 69 67 75 72 65 20 69 6e 20 74 68 65 20 66 6f 72 6d 20 56 41 52 3d 56 41 4c 55 o.configure.in.the.form.VAR=VALU
22d80 45 2e 22 0a 09 09 65 63 68 6f 0a 09 09 65 63 68 6f 20 22 4f 70 74 69 6f 6e 73 20 61 6e 64 20 76 E."...echo...echo."Options.and.v
22da0 61 72 69 61 62 6c 65 73 3a 20 5b 64 65 66 61 75 6c 74 73 20 69 6e 20 62 72 61 63 6b 65 74 73 5d ariables:.[defaults.in.brackets]
22dc0 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 68 2c 20 2d 2d 68 65 6c 70 20 20 20 20 20 20 20 20 20 20 "...echo."..-h,.--help..........
22de0 20 20 64 69 73 70 6c 61 79 20 74 68 69 73 20 68 65 6c 70 20 61 6e 64 20 65 78 69 74 22 0a 09 09 ..display.this.help.and.exit"...
22e00 65 63 68 6f 20 22 20 20 2d 56 2c 20 2d 2d 76 65 72 73 69 6f 6e 20 20 20 20 20 20 20 20 20 6f 75 echo."..-V,.--version.........ou
22e20 74 70 75 74 20 76 65 72 73 69 6f 6e 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 6e 64 20 65 78 69 tput.version.information.and.exi
22e40 74 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 2d 73 72 63 64 69 72 3d 44 49 52 20 20 20 20 20 20 20 t"...echo."..--srcdir=DIR.......
22e60 20 20 20 66 69 6e 64 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 6e 20 44 49 52 20 5b ...find.the.source.code.in.DIR.[
22e80 2e 20 6f 72 20 2e 2e 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 2d 70 72 65 66 69 78 3d 44 49 52 ..or...]"...echo."..--prefix=DIR
22ea0 20 20 20 20 20 20 20 20 20 20 69 6e 73 74 61 6c 6c 20 69 6e 74 6f 20 44 49 52 20 5b 24 7b 70 72 ..........install.into.DIR.[${pr
22ec0 65 66 69 78 7d 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 2d 65 78 65 63 2d 70 72 65 66 69 78 3d efix}]"...echo."..--exec-prefix=
22ee0 44 49 52 20 20 20 20 20 62 61 73 65 20 64 69 72 65 63 74 6f 72 79 20 66 6f 72 20 61 72 63 68 2d DIR.....base.directory.for.arch-
22f00 64 65 70 65 6e 64 65 6e 74 20 66 69 6c 65 73 20 5b 24 7b 65 78 65 63 5f 70 72 65 66 69 78 7d 5d dependent.files.[${exec_prefix}]
22f20 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 2d 62 69 6e 64 69 72 3d 44 49 52 20 20 20 20 20 20 20 20 "...echo."..--bindir=DIR........
22f40 20 20 75 73 65 72 20 65 78 65 63 75 74 61 62 6c 65 73 20 64 69 72 65 63 74 6f 72 79 20 5b 24 7b ..user.executables.directory.[${
22f60 62 69 6e 64 69 72 7d 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 2d 64 61 74 61 72 6f 6f 74 64 69 bindir}]"...echo."..--datarootdi
22f80 72 3d 44 49 52 20 20 20 20 20 62 61 73 65 20 64 69 72 65 63 74 6f 72 79 20 66 6f 72 20 64 6f 63 r=DIR.....base.directory.for.doc
22fa0 20 61 6e 64 20 64 61 74 61 20 5b 24 7b 64 61 74 61 72 6f 6f 74 64 69 72 7d 5d 22 0a 09 09 65 63 .and.data.[${datarootdir}]"...ec
22fc0 68 6f 20 22 20 20 2d 2d 69 6e 66 6f 64 69 72 3d 44 49 52 20 20 20 20 20 20 20 20 20 69 6e 66 6f ho."..--infodir=DIR.........info
22fe0 20 66 69 6c 65 73 20 64 69 72 65 63 74 6f 72 79 20 5b 24 7b 69 6e 66 6f 64 69 72 7d 5d 22 0a 09 .files.directory.[${infodir}]"..
23000 09 65 63 68 6f 20 22 20 20 2d 2d 6d 61 6e 64 69 72 3d 44 49 52 20 20 20 20 20 20 20 20 20 20 6d .echo."..--mandir=DIR..........m
23020 61 6e 20 70 61 67 65 73 20 64 69 72 65 63 74 6f 72 79 20 5b 24 7b 6d 61 6e 64 69 72 7d 5d 22 0a an.pages.directory.[${mandir}]".
23040 09 09 65 63 68 6f 20 22 20 20 2d 2d 62 75 69 6c 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..echo."..--build...............
23060 62 75 69 6c 64 20 69 6e 20 6f 6e 65 20 73 74 65 70 20 77 69 74 68 6f 75 74 20 75 73 69 6e 67 20 build.in.one.step.without.using.
23080 27 6d 61 6b 65 27 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 2d 63 68 65 63 6b 20 20 20 20 20 20 20 'make'"...echo."..--check.......
230a0 20 20 20 20 20 20 20 20 63 68 65 63 6b 20 77 69 74 68 6f 75 74 20 75 73 69 6e 67 20 27 6d 61 6b ........check.without.using.'mak
230c0 65 27 2c 20 69 6d 70 6c 69 65 73 20 2d 2d 62 75 69 6c 64 22 0a 09 09 65 63 68 6f 20 22 20 20 2d e',.implies.--build"...echo."..-
230e0 2d 69 6e 73 74 61 6c 6c 64 69 72 3d 42 49 4e 44 49 52 20 20 20 69 6e 73 74 61 6c 6c 20 77 69 74 -installdir=BINDIR...install.wit
23100 68 6f 75 74 20 75 73 69 6e 67 20 27 6d 61 6b 65 27 2c 20 69 6d 70 6c 69 65 73 20 2d 2d 62 75 69 hout.using.'make',.implies.--bui
23120 6c 64 22 0a 09 09 65 63 68 6f 20 22 20 20 43 58 58 3d 43 4f 4d 50 49 4c 45 52 20 20 20 20 20 20 ld"...echo."..CXX=COMPILER......
23140 20 20 20 20 43 2b 2b 20 63 6f 6d 70 69 6c 65 72 20 74 6f 20 75 73 65 20 5b 24 7b 43 58 58 7d 5d ....C++.compiler.to.use.[${CXX}]
23160 22 0a 09 09 65 63 68 6f 20 22 20 20 43 50 50 46 4c 41 47 53 3d 4f 50 54 49 4f 4e 53 20 20 20 20 "...echo."..CPPFLAGS=OPTIONS....
23180 20 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 65 20 70 ..command-line.options.for.the.p
231a0 72 65 70 72 6f 63 65 73 73 6f 72 20 5b 24 7b 43 50 50 46 4c 41 47 53 7d 5d 22 0a 09 09 65 63 68 reprocessor.[${CPPFLAGS}]"...ech
231c0 6f 20 22 20 20 43 58 58 46 4c 41 47 53 3d 4f 50 54 49 4f 4e 53 20 20 20 20 20 20 63 6f 6d 6d 61 o."..CXXFLAGS=OPTIONS......comma
231e0 6e 64 2d 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 65 20 43 2b 2b 20 63 6f 6d 70 nd-line.options.for.the.C++.comp
23200 69 6c 65 72 20 5b 24 7b 43 58 58 46 4c 41 47 53 7d 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 43 58 iler.[${CXXFLAGS}]"...echo."..CX
23220 58 46 4c 41 47 53 2b 3d 4f 50 54 49 4f 4e 53 20 20 20 20 20 61 70 70 65 6e 64 20 6f 70 74 69 6f XFLAGS+=OPTIONS.....append.optio
23240 6e 73 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 76 61 6c 75 65 20 6f 66 20 43 58 58 46 4c ns.to.the.current.value.of.CXXFL
23260 41 47 53 22 0a 09 09 65 63 68 6f 20 22 20 20 4c 44 46 4c 41 47 53 3d 4f 50 54 49 4f 4e 53 20 20 AGS"...echo."..LDFLAGS=OPTIONS..
23280 20 20 20 20 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 .....command-line.options.for.th
232a0 65 20 6c 69 6e 6b 65 72 20 5b 24 7b 4c 44 46 4c 41 47 53 7d 5d 22 0a 09 09 65 63 68 6f 20 22 20 e.linker.[${LDFLAGS}]"...echo.".
232c0 20 4d 41 4b 45 49 4e 46 4f 3d 4e 41 4d 45 20 20 20 20 20 20 20 20 20 6d 61 6b 65 69 6e 66 6f 20 .MAKEINFO=NAME.........makeinfo.
232e0 70 72 6f 67 72 61 6d 20 74 6f 20 75 73 65 20 5b 24 7b 4d 41 4b 45 49 4e 46 4f 7d 5d 22 0a 09 09 program.to.use.[${MAKEINFO}]"...
23300 65 63 68 6f 0a 09 09 65 78 69 74 20 30 20 3b 3b 0a 09 2d 2d 76 65 72 73 69 6f 6e 20 7c 20 2d 56 echo...exit.0.;;..--version.|.-V
23320 29 0a 09 09 65 63 68 6f 20 22 43 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 74 20 66 6f 72 20 24 )...echo."Configure.script.for.$
23340 7b 70 6b 67 6e 61 6d 65 7d 20 76 65 72 73 69 6f 6e 20 24 7b 70 6b 67 76 65 72 73 69 6f 6e 7d 22 {pkgname}.version.${pkgversion}"
23360 0a 09 09 65 78 69 74 20 30 20 3b 3b 0a 09 2d 2d 73 72 63 64 69 72 29 20 20 20 20 20 20 20 20 20 ...exit.0.;;..--srcdir).........
23380 20 20 20 73 72 63 64 69 72 3d 24 31 20 3b 20 61 72 67 32 3d 79 65 73 20 3b 3b 0a 09 2d 2d 70 72 ...srcdir=$1.;.arg2=yes.;;..--pr
233a0 65 66 69 78 29 20 20 20 20 20 20 20 20 20 20 20 20 70 72 65 66 69 78 3d 24 31 20 3b 20 61 72 67 efix)............prefix=$1.;.arg
233c0 32 3d 79 65 73 20 3b 3b 0a 09 2d 2d 65 78 65 63 2d 70 72 65 66 69 78 29 20 20 65 78 65 63 5f 70 2=yes.;;..--exec-prefix)..exec_p
233e0 72 65 66 69 78 3d 24 31 20 3b 20 61 72 67 32 3d 79 65 73 20 3b 3b 0a 09 2d 2d 62 69 6e 64 69 72 refix=$1.;.arg2=yes.;;..--bindir
23400 29 20 20 20 20 20 20 20 20 20 20 20 20 62 69 6e 64 69 72 3d 24 31 20 3b 20 61 72 67 32 3d 79 65 )............bindir=$1.;.arg2=ye
23420 73 20 3b 3b 0a 09 2d 2d 64 61 74 61 72 6f 6f 74 64 69 72 29 20 20 64 61 74 61 72 6f 6f 74 64 69 s.;;..--datarootdir)..datarootdi
23440 72 3d 24 31 20 3b 20 61 72 67 32 3d 79 65 73 20 3b 3b 0a 09 2d 2d 69 6e 66 6f 64 69 72 29 20 20 r=$1.;.arg2=yes.;;..--infodir)..
23460 20 20 20 20 20 20 20 20 69 6e 66 6f 64 69 72 3d 24 31 20 3b 20 61 72 67 32 3d 79 65 73 20 3b 3b ........infodir=$1.;.arg2=yes.;;
23480 0a 09 2d 2d 6d 61 6e 64 69 72 29 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 6e 64 69 72 3d 24 31 ..--mandir)............mandir=$1
234a0 20 3b 20 61 72 67 32 3d 79 65 73 20 3b 3b 0a 09 2d 2d 69 6e 73 74 61 6c 6c 64 69 72 29 20 20 20 .;.arg2=yes.;;..--installdir)...
234c0 20 69 6e 73 74 61 6c 6c 64 69 72 3d 24 31 20 3b 20 61 72 67 32 3d 79 65 73 20 3b 3b 0a 0a 09 2d .installdir=$1.;.arg2=yes.;;...-
234e0 2d 73 72 63 64 69 72 3d 2a 29 20 20 20 20 20 20 20 20 20 20 20 20 73 72 63 64 69 72 3d 24 7b 6f -srcdir=*)............srcdir=${o
23500 70 74 61 72 67 7d 20 3b 3b 0a 09 2d 2d 70 72 65 66 69 78 3d 2a 29 20 20 20 20 20 20 20 20 20 20 ptarg}.;;..--prefix=*)..........
23520 20 20 70 72 65 66 69 78 3d 24 7b 6f 70 74 61 72 67 7d 20 3b 3b 0a 09 2d 2d 65 78 65 63 2d 70 72 ..prefix=${optarg}.;;..--exec-pr
23540 65 66 69 78 3d 2a 29 20 20 65 78 65 63 5f 70 72 65 66 69 78 3d 24 7b 6f 70 74 61 72 67 7d 20 3b efix=*)..exec_prefix=${optarg}.;
23560 3b 0a 09 2d 2d 62 69 6e 64 69 72 3d 2a 29 20 20 20 20 20 20 20 20 20 20 20 20 62 69 6e 64 69 72 ;..--bindir=*)............bindir
23580 3d 24 7b 6f 70 74 61 72 67 7d 20 3b 3b 0a 09 2d 2d 64 61 74 61 72 6f 6f 74 64 69 72 3d 2a 29 20 =${optarg}.;;..--datarootdir=*).
235a0 20 64 61 74 61 72 6f 6f 74 64 69 72 3d 24 7b 6f 70 74 61 72 67 7d 20 3b 3b 0a 09 2d 2d 69 6e 66 .datarootdir=${optarg}.;;..--inf
235c0 6f 64 69 72 3d 2a 29 20 20 20 20 20 20 20 20 20 20 69 6e 66 6f 64 69 72 3d 24 7b 6f 70 74 61 72 odir=*)..........infodir=${optar
235e0 67 7d 20 3b 3b 0a 09 2d 2d 6d 61 6e 64 69 72 3d 2a 29 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 g}.;;..--mandir=*)............ma
23600 6e 64 69 72 3d 24 7b 6f 70 74 61 72 67 7d 20 3b 3b 0a 09 2d 2d 62 75 69 6c 64 29 20 20 20 20 20 ndir=${optarg}.;;..--build).....
23620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 75 69 6c 64 3d 79 65 73 20 3b 3b 0a 09 2d .................build=yes.;;..-
23640 2d 63 68 65 63 6b 29 20 20 20 20 20 20 20 20 20 20 63 68 65 63 6b 3d 79 65 73 20 3b 20 62 75 69 -check)..........check=yes.;.bui
23660 6c 64 3d 79 65 73 20 3b 3b 0a 09 2d 2d 69 6e 73 74 61 6c 6c 64 69 72 3d 2a 29 20 20 20 20 69 6e ld=yes.;;..--installdir=*)....in
23680 73 74 61 6c 6c 64 69 72 3d 24 7b 6f 70 74 61 72 67 7d 20 3b 20 62 75 69 6c 64 3d 79 65 73 20 3b stalldir=${optarg}.;.build=yes.;
236a0 3b 0a 09 2d 2d 6e 6f 2d 63 72 65 61 74 65 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 6f 5f ;..--no-create)..............no_
236c0 63 72 65 61 74 65 3d 79 65 73 20 3b 3b 0a 0a 09 43 58 58 3d 2a 29 20 20 20 20 20 20 20 20 20 20 create=yes.;;...CXX=*)..........
236e0 20 20 43 58 58 3d 24 7b 6f 70 74 61 72 67 7d 20 3b 3b 0a 09 43 50 50 46 4c 41 47 53 3d 2a 29 20 ..CXX=${optarg}.;;..CPPFLAGS=*).
23700 20 43 50 50 46 4c 41 47 53 3d 24 7b 6f 70 74 61 72 67 7d 20 3b 3b 0a 09 43 58 58 46 4c 41 47 53 .CPPFLAGS=${optarg}.;;..CXXFLAGS
23720 3d 2a 29 20 20 43 58 58 46 4c 41 47 53 3d 24 7b 6f 70 74 61 72 67 7d 20 3b 3b 0a 09 43 58 58 46 =*)..CXXFLAGS=${optarg}.;;..CXXF
23740 4c 41 47 53 2b 3d 2a 29 20 43 58 58 46 4c 41 47 53 3d 22 24 7b 43 58 58 46 4c 41 47 53 7d 20 24 LAGS+=*).CXXFLAGS="${CXXFLAGS}.$
23760 7b 6f 70 74 61 72 67 7d 22 20 3b 3b 0a 09 4c 44 46 4c 41 47 53 3d 2a 29 20 20 20 20 4c 44 46 4c {optarg}".;;..LDFLAGS=*)....LDFL
23780 41 47 53 3d 24 7b 6f 70 74 61 72 67 7d 20 3b 3b 0a 09 4d 41 4b 45 49 4e 46 4f 3d 2a 29 20 20 4d AGS=${optarg}.;;..MAKEINFO=*)..M
237a0 41 4b 45 49 4e 46 4f 3d 24 7b 6f 70 74 61 72 67 7d 20 3b 3b 0a 0a 09 2d 2d 2a 29 0a 09 09 65 63 AKEINFO=${optarg}.;;...--*)...ec
237c0 68 6f 20 22 63 6f 6e 66 69 67 75 72 65 3a 20 57 41 52 4e 49 4e 47 3a 20 75 6e 72 65 63 6f 67 6e ho."configure:.WARNING:.unrecogn
237e0 69 7a 65 64 20 6f 70 74 69 6f 6e 3a 20 27 24 7b 6f 70 74 69 6f 6e 7d 27 22 20 31 3e 26 32 20 3b ized.option:.'${option}'".1>&2.;
23800 3b 0a 09 2a 3d 2a 20 7c 20 2a 2d 2a 2d 2a 29 20 3b 3b 0a 09 2a 29 0a 09 09 65 63 68 6f 20 22 63 ;..*=*.|.*-*-*).;;..*)...echo."c
23820 6f 6e 66 69 67 75 72 65 3a 20 75 6e 72 65 63 6f 67 6e 69 7a 65 64 20 6f 70 74 69 6f 6e 3a 20 27 onfigure:.unrecognized.option:.'
23840 24 7b 6f 70 74 69 6f 6e 7d 27 22 20 31 3e 26 32 0a 09 09 65 63 68 6f 20 22 54 72 79 20 27 63 6f ${option}'".1>&2...echo."Try.'co
23860 6e 66 69 67 75 72 65 20 2d 2d 68 65 6c 70 27 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 nfigure.--help'.for.more.informa
23880 74 69 6f 6e 2e 22 20 31 3e 26 32 0a 09 09 65 78 69 74 20 31 20 3b 3b 0a 09 65 73 61 63 0a 0a 09 tion.".1>&2...exit.1.;;..esac...
238a0 23 20 43 68 65 63 6b 20 77 68 65 74 68 65 72 20 74 68 65 20 6f 70 74 69 6f 6e 20 74 6f 6f 6b 20 #.Check.whether.the.option.took.
238c0 61 20 73 65 70 61 72 61 74 65 20 61 72 67 75 6d 65 6e 74 0a 09 69 66 20 5b 20 22 24 7b 61 72 67 a.separate.argument..if.[."${arg
238e0 32 7d 22 20 3d 20 79 65 73 20 5d 20 3b 20 74 68 65 6e 0a 09 09 69 66 20 5b 20 24 23 20 21 3d 20 2}".=.yes.].;.then...if.[.$#.!=.
23900 30 20 5d 20 3b 20 74 68 65 6e 20 61 72 67 73 3d 22 24 7b 61 72 67 73 7d 20 5c 22 24 31 5c 22 22 0.].;.then.args="${args}.\"$1\""
23920 20 3b 20 73 68 69 66 74 0a 09 09 65 6c 73 65 20 65 63 68 6f 20 22 63 6f 6e 66 69 67 75 72 65 3a .;.shift...else.echo."configure:
23940 20 4d 69 73 73 69 6e 67 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 27 24 7b 6f 70 74 69 6f 6e 7d 27 .Missing.argument.to.'${option}'
23960 22 20 31 3e 26 32 0a 09 09 09 65 78 69 74 20 31 0a 09 09 66 69 0a 09 66 69 0a 64 6f 6e 65 0a 0a ".1>&2....exit.1...fi..fi.done..
23980 23 20 46 69 6e 64 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 2c 20 69 66 20 6c 6f 63 61 74 #.Find.the.source.code,.if.locat
239a0 69 6f 6e 20 77 61 73 20 6e 6f 74 20 73 70 65 63 69 66 69 65 64 2e 0a 73 72 63 64 69 72 74 65 78 ion.was.not.specified..srcdirtex
239c0 74 3d 0a 69 66 20 5b 20 2d 7a 20 22 24 7b 73 72 63 64 69 72 7d 22 20 5d 20 3b 20 74 68 65 6e 0a t=.if.[.-z."${srcdir}".].;.then.
239e0 09 73 72 63 64 69 72 74 65 78 74 3d 22 6f 72 20 2e 20 6f 72 20 2e 2e 22 20 3b 20 73 72 63 64 69 .srcdirtext="or...or...".;.srcdi
23a00 72 3d 2e 0a 09 69 66 20 5b 20 21 20 2d 72 20 22 24 7b 73 72 63 64 69 72 7d 2f 24 7b 73 72 63 74 r=...if.[.!.-r."${srcdir}/${srct
23a20 72 69 67 67 65 72 7d 22 20 5d 20 3b 20 74 68 65 6e 20 73 72 63 64 69 72 3d 2e 2e 20 3b 20 66 69 rigger}".].;.then.srcdir=...;.fi
23a40 0a 09 69 66 20 5b 20 21 20 2d 72 20 22 24 7b 73 72 63 64 69 72 7d 2f 24 7b 73 72 63 74 72 69 67 ..if.[.!.-r."${srcdir}/${srctrig
23a60 67 65 72 7d 22 20 5d 20 3b 20 74 68 65 6e 0a 09 09 23 23 20 74 68 65 20 73 65 64 20 63 6f 6d 6d ger}".].;.then...##.the.sed.comm
23a80 61 6e 64 20 62 65 6c 6f 77 20 65 6d 75 6c 61 74 65 73 20 74 68 65 20 64 69 72 6e 61 6d 65 20 63 and.below.emulates.the.dirname.c
23aa0 6f 6d 6d 61 6e 64 0a 09 09 73 72 63 64 69 72 3d 60 65 63 68 6f 20 22 24 30 22 20 7c 20 73 65 64 ommand...srcdir=`echo."$0".|.sed
23ac0 20 2d 65 20 27 73 2c 5b 5e 2f 5d 2a 24 2c 2c 3b 73 2c 2f 24 2c 2c 3b 73 2c 5e 24 2c 2e 2c 27 60 .-e.'s,[^/]*$,,;s,/$,,;s,^$,.,'`
23ae0 0a 09 66 69 0a 66 69 0a 0a 69 66 20 5b 20 21 20 2d 72 20 22 24 7b 73 72 63 64 69 72 7d 2f 24 7b ..fi.fi..if.[.!.-r."${srcdir}/${
23b00 73 72 63 74 72 69 67 67 65 72 7d 22 20 5d 20 3b 20 74 68 65 6e 0a 09 65 63 68 6f 20 22 63 6f 6e srctrigger}".].;.then..echo."con
23b20 66 69 67 75 72 65 3a 20 43 61 6e 27 74 20 66 69 6e 64 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 figure:.Can't.find.source.code.i
23b40 6e 20 24 7b 73 72 63 64 69 72 7d 20 24 7b 73 72 63 64 69 72 74 65 78 74 7d 22 20 31 3e 26 32 0a n.${srcdir}.${srcdirtext}".1>&2.
23b60 09 65 63 68 6f 20 22 63 6f 6e 66 69 67 75 72 65 3a 20 28 41 74 20 6c 65 61 73 74 20 24 7b 73 72 .echo."configure:.(At.least.${sr
23b80 63 74 72 69 67 67 65 72 7d 20 69 73 20 6d 69 73 73 69 6e 67 29 2e 22 20 31 3e 26 32 0a 09 65 78 ctrigger}.is.missing).".1>&2..ex
23ba0 69 74 20 31 0a 66 69 0a 0a 23 20 53 65 74 20 73 72 63 64 69 72 20 74 6f 20 2e 20 69 66 20 74 68 it.1.fi..#.Set.srcdir.to...if.th
23bc0 61 74 27 73 20 77 68 61 74 20 69 74 20 69 73 2e 0a 69 66 20 5b 20 22 60 70 77 64 60 22 20 3d 20 at's.what.it.is..if.[."`pwd`".=.
23be0 22 60 63 64 20 22 24 7b 73 72 63 64 69 72 7d 22 20 3b 20 70 77 64 60 22 20 5d 20 3b 20 74 68 65 "`cd."${srcdir}".;.pwd`".].;.the
23c00 6e 20 73 72 63 64 69 72 3d 2e 20 3b 20 66 69 0a 0a 69 66 20 5b 20 22 24 7b 62 75 69 6c 64 7d 22 n.srcdir=..;.fi..if.[."${build}"
23c20 20 3d 20 79 65 73 20 5d 20 3b 20 74 68 65 6e 0a 20 20 6f 62 6a 73 3d 24 28 73 65 64 20 2d 65 20 .=.yes.].;.then...objs=$(sed.-e.
23c40 3a 61 20 2d 65 20 27 2f 5c 5c 24 2f 4e 3b 20 73 2f 5c 5c 5c 6e 2f 2f 3b 20 74 61 27 20 22 24 7b :a.-e.'/\\$/N;.s/\\\n//;.ta'."${
23c60 73 72 63 64 69 72 7d 2f 4d 61 6b 65 66 69 6c 65 2e 69 6e 22 20 7c 20 5c 0a 20 20 20 20 20 20 20 srcdir}/Makefile.in".|.\........
23c80 20 20 73 65 64 20 2d 6e 20 2d 65 20 27 73 2f 5e 20 2a 6f 62 6a 73 20 2a 3d 20 2a 2f 2f 70 27 20 ..sed.-n.-e.'s/^.*objs.*=.*//p'.
23ca0 7c 20 73 65 64 20 2d 65 20 27 73 2f 20 5c 7b 32 2c 5c 7d 2f 20 2f 67 27 29 0a 20 20 66 6f 72 20 |.sed.-e.'s/.\{2,\}/./g')...for.
23cc0 6f 66 69 6c 65 20 69 6e 20 24 7b 6f 62 6a 73 7d 20 3b 20 64 6f 0a 20 20 20 20 66 69 6c 65 3d 22 ofile.in.${objs}.;.do.....file="
23ce0 24 7b 6f 66 69 6c 65 25 2e 6f 7d 2e 63 63 22 20 3b 20 70 76 65 72 3d 0a 20 20 20 20 5b 20 22 24 ${ofile%.o}.cc".;.pver=.....[."$
23d00 7b 6f 66 69 6c 65 7d 22 20 3d 20 6d 61 69 6e 2e 6f 20 5d 20 26 26 20 70 76 65 72 3d 22 20 2d 44 {ofile}".=.main.o.].&&.pver=".-D
23d20 50 52 4f 47 56 45 52 53 49 4f 4e 3d 5c 22 24 7b 70 6b 67 76 65 72 73 69 6f 6e 7d 5c 22 22 0a 20 PROGVERSION=\"${pkgversion}\""..
23d40 20 20 20 63 6f 6d 70 69 6c 65 5f 63 6f 6d 6d 61 6e 64 3d 22 24 7b 43 58 58 7d 20 24 7b 43 50 50 ...compile_command="${CXX}.${CPP
23d60 46 4c 41 47 53 7d 20 24 7b 43 58 58 46 4c 41 47 53 7d 24 7b 70 76 65 72 7d 20 2d 63 20 2d 6f 20 FLAGS}.${CXXFLAGS}${pver}.-c.-o.
23d80 24 7b 6f 66 69 6c 65 7d 22 0a 20 20 20 20 65 63 68 6f 20 22 24 7b 63 6f 6d 70 69 6c 65 5f 63 6f ${ofile}".....echo."${compile_co
23da0 6d 6d 61 6e 64 7d 20 24 7b 73 72 63 64 69 72 7d 2f 24 7b 66 69 6c 65 7d 22 0a 20 20 20 20 24 7b mmand}.${srcdir}/${file}".....${
23dc0 63 6f 6d 70 69 6c 65 5f 63 6f 6d 6d 61 6e 64 7d 20 22 24 7b 73 72 63 64 69 72 7d 2f 24 7b 66 69 compile_command}."${srcdir}/${fi
23de0 6c 65 7d 22 20 7c 7c 20 65 78 69 74 20 31 0a 20 20 64 6f 6e 65 0a 20 20 6c 69 6e 6b 5f 63 6f 6d le}".||.exit.1...done...link_com
23e00 6d 61 6e 64 3d 22 24 7b 43 58 58 7d 20 24 7b 4c 44 46 4c 41 47 53 7d 20 24 7b 43 58 58 46 4c 41 mand="${CXX}.${LDFLAGS}.${CXXFLA
23e20 47 53 7d 20 2d 6f 20 24 7b 70 72 6f 67 6e 61 6d 65 7d 20 24 7b 6f 62 6a 73 7d 22 0a 20 20 65 63 GS}.-o.${progname}.${objs}"...ec
23e40 68 6f 20 22 24 7b 6c 69 6e 6b 5f 63 6f 6d 6d 61 6e 64 7d 22 20 3b 20 24 7b 6c 69 6e 6b 5f 63 6f ho."${link_command}".;.${link_co
23e60 6d 6d 61 6e 64 7d 20 7c 7c 20 65 78 69 74 20 31 0a 20 20 69 66 20 5b 20 22 24 7b 63 68 65 63 6b mmand}.||.exit.1...if.[."${check
23e80 7d 22 20 3d 20 79 65 73 20 5d 20 3b 20 74 68 65 6e 0a 20 20 20 20 22 24 7b 73 72 63 64 69 72 7d }".=.yes.].;.then....."${srcdir}
23ea0 2f 74 65 73 74 73 75 69 74 65 2f 63 68 65 63 6b 2e 73 68 22 20 22 24 7b 73 72 63 64 69 72 7d 2f /testsuite/check.sh"."${srcdir}/
23ec0 74 65 73 74 73 75 69 74 65 22 20 24 7b 70 6b 67 76 65 72 73 69 6f 6e 7d 20 7c 7c 20 65 78 69 74 testsuite".${pkgversion}.||.exit
23ee0 20 31 0a 20 20 66 69 0a 20 20 69 66 20 5b 20 2d 6e 20 22 24 7b 69 6e 73 74 61 6c 6c 64 69 72 7d .1...fi...if.[.-n."${installdir}
23f00 22 20 5d 20 3b 20 74 68 65 6e 0a 20 20 20 20 65 63 68 6f 20 22 69 6e 73 74 61 6c 6c 69 6e 67 20 ".].;.then.....echo."installing.
23f20 24 7b 70 72 6f 67 6e 61 6d 65 7d 20 69 6e 20 24 7b 69 6e 73 74 61 6c 6c 64 69 72 7d 22 0a 20 20 ${progname}.in.${installdir}"...
23f40 20 20 5b 20 2d 64 20 22 24 7b 69 6e 73 74 61 6c 6c 64 69 72 7d 22 20 5d 20 7c 7c 20 6d 6b 64 69 ..[.-d."${installdir}".].||.mkdi
23f60 72 20 2d 70 20 22 24 7b 69 6e 73 74 61 6c 6c 64 69 72 7d 22 20 7c 7c 20 65 78 69 74 20 31 0a 20 r.-p."${installdir}".||.exit.1..
23f80 20 20 20 63 70 20 2d 66 70 20 24 7b 70 72 6f 67 6e 61 6d 65 7d 20 22 24 7b 69 6e 73 74 61 6c 6c ...cp.-fp.${progname}."${install
23fa0 64 69 72 7d 2f 24 7b 70 72 6f 67 6e 61 6d 65 7d 22 20 7c 7c 20 65 78 69 74 20 31 0a 20 20 66 69 dir}/${progname}".||.exit.1...fi
23fc0 0a 20 20 65 78 69 74 20 30 0a 66 69 0a 0a 65 63 68 6f 0a 69 66 20 5b 20 2d 7a 20 22 24 7b 6e 6f ...exit.0.fi..echo.if.[.-z."${no
23fe0 5f 63 72 65 61 74 65 7d 22 20 5d 20 3b 20 74 68 65 6e 0a 09 65 63 68 6f 20 22 63 72 65 61 74 69 _create}".].;.then..echo."creati
24000 6e 67 20 63 6f 6e 66 69 67 2e 73 74 61 74 75 73 22 0a 09 72 6d 20 2d 66 20 63 6f 6e 66 69 67 2e ng.config.status"..rm.-f.config.
24020 73 74 61 74 75 73 0a 09 63 61 74 20 3e 20 63 6f 6e 66 69 67 2e 73 74 61 74 75 73 20 3c 3c 20 45 status..cat.>.config.status.<<.E
24040 4f 46 0a 23 21 20 2f 62 69 6e 2f 73 68 0a 23 20 54 68 69 73 20 66 69 6c 65 20 77 61 73 20 67 65 OF.#!./bin/sh.#.This.file.was.ge
24060 6e 65 72 61 74 65 64 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 62 79 20 63 6f 6e 66 69 67 75 nerated.automatically.by.configu
24080 72 65 2e 20 44 6f 6e 27 74 20 65 64 69 74 2e 0a 23 20 52 75 6e 20 74 68 69 73 20 66 69 6c 65 20 re..Don't.edit..#.Run.this.file.
240a0 74 6f 20 72 65 63 72 65 61 74 65 20 74 68 65 20 63 75 72 72 65 6e 74 20 63 6f 6e 66 69 67 75 72 to.recreate.the.current.configur
240c0 61 74 69 6f 6e 2e 0a 23 0a 23 20 54 68 69 73 20 73 63 72 69 70 74 20 69 73 20 66 72 65 65 20 73 ation..#.#.This.script.is.free.s
240e0 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 68 61 76 65 20 75 6e 6c 69 6d 69 74 65 64 20 70 65 72 6d oftware:.you.have.unlimited.perm
24100 69 73 73 69 6f 6e 0a 23 20 74 6f 20 63 6f 70 79 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 61 6e ission.#.to.copy,.distribute,.an
24120 64 20 6d 6f 64 69 66 79 20 69 74 2e 0a 0a 65 78 65 63 20 2f 62 69 6e 2f 73 68 20 22 24 30 22 20 d.modify.it...exec./bin/sh."$0".
24140 24 7b 61 72 67 73 7d 20 2d 2d 6e 6f 2d 63 72 65 61 74 65 0a 45 4f 46 0a 09 63 68 6d 6f 64 20 2b ${args}.--no-create.EOF..chmod.+
24160 78 20 63 6f 6e 66 69 67 2e 73 74 61 74 75 73 0a 66 69 0a 0a 65 63 68 6f 20 22 63 72 65 61 74 69 x.config.status.fi..echo."creati
24180 6e 67 20 4d 61 6b 65 66 69 6c 65 22 0a 65 63 68 6f 20 22 56 50 41 54 48 20 3d 20 24 7b 73 72 63 ng.Makefile".echo."VPATH.=.${src
241a0 64 69 72 7d 22 0a 65 63 68 6f 20 22 70 72 65 66 69 78 20 3d 20 24 7b 70 72 65 66 69 78 7d 22 0a dir}".echo."prefix.=.${prefix}".
241c0 65 63 68 6f 20 22 65 78 65 63 5f 70 72 65 66 69 78 20 3d 20 24 7b 65 78 65 63 5f 70 72 65 66 69 echo."exec_prefix.=.${exec_prefi
241e0 78 7d 22 0a 65 63 68 6f 20 22 62 69 6e 64 69 72 20 3d 20 24 7b 62 69 6e 64 69 72 7d 22 0a 65 63 x}".echo."bindir.=.${bindir}".ec
24200 68 6f 20 22 64 61 74 61 72 6f 6f 74 64 69 72 20 3d 20 24 7b 64 61 74 61 72 6f 6f 74 64 69 72 7d ho."datarootdir.=.${datarootdir}
24220 22 0a 65 63 68 6f 20 22 69 6e 66 6f 64 69 72 20 3d 20 24 7b 69 6e 66 6f 64 69 72 7d 22 0a 65 63 ".echo."infodir.=.${infodir}".ec
24240 68 6f 20 22 6d 61 6e 64 69 72 20 3d 20 24 7b 6d 61 6e 64 69 72 7d 22 0a 65 63 68 6f 20 22 43 58 ho."mandir.=.${mandir}".echo."CX
24260 58 20 3d 20 24 7b 43 58 58 7d 22 0a 65 63 68 6f 20 22 43 50 50 46 4c 41 47 53 20 3d 20 24 7b 43 X.=.${CXX}".echo."CPPFLAGS.=.${C
24280 50 50 46 4c 41 47 53 7d 22 0a 65 63 68 6f 20 22 43 58 58 46 4c 41 47 53 20 3d 20 24 7b 43 58 58 PPFLAGS}".echo."CXXFLAGS.=.${CXX
242a0 46 4c 41 47 53 7d 22 0a 65 63 68 6f 20 22 4c 44 46 4c 41 47 53 20 3d 20 24 7b 4c 44 46 4c 41 47 FLAGS}".echo."LDFLAGS.=.${LDFLAG
242c0 53 7d 22 0a 65 63 68 6f 20 22 4d 41 4b 45 49 4e 46 4f 20 3d 20 24 7b 4d 41 4b 45 49 4e 46 4f 7d S}".echo."MAKEINFO.=.${MAKEINFO}
242e0 22 0a 72 6d 20 2d 66 20 4d 61 6b 65 66 69 6c 65 0a 63 61 74 20 3e 20 4d 61 6b 65 66 69 6c 65 20 ".rm.-f.Makefile.cat.>.Makefile.
24300 3c 3c 20 45 4f 46 0a 23 20 4d 61 6b 65 66 69 6c 65 20 66 6f 72 20 4c 7a 69 70 20 2d 20 4c 5a 4d <<.EOF.#.Makefile.for.Lzip.-.LZM
24320 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 6f 72 0a 23 20 43 6f 70 A.lossless.data.compressor.#.Cop
24340 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 yright.(C).2008-2025.Antonio.Dia
24360 7a 20 44 69 61 7a 2e 0a 23 20 54 68 69 73 20 66 69 6c 65 20 77 61 73 20 67 65 6e 65 72 61 74 65 z.Diaz..#.This.file.was.generate
24380 64 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 62 79 20 63 6f 6e 66 69 67 75 72 65 2e 20 44 6f d.automatically.by.configure..Do
243a0 6e 27 74 20 65 64 69 74 2e 0a 23 0a 23 20 54 68 69 73 20 4d 61 6b 65 66 69 6c 65 20 69 73 20 66 n't.edit..#.#.This.Makefile.is.f
243c0 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 68 61 76 65 20 75 6e 6c 69 6d 69 74 65 64 ree.software:.you.have.unlimited
243e0 20 70 65 72 6d 69 73 73 69 6f 6e 0a 23 20 74 6f 20 63 6f 70 79 2c 20 64 69 73 74 72 69 62 75 74 .permission.#.to.copy,.distribut
24400 65 2c 20 61 6e 64 20 6d 6f 64 69 66 79 20 69 74 2e 0a 0a 70 6b 67 6e 61 6d 65 20 3d 20 24 7b 70 e,.and.modify.it...pkgname.=.${p
24420 6b 67 6e 61 6d 65 7d 0a 70 6b 67 76 65 72 73 69 6f 6e 20 3d 20 24 7b 70 6b 67 76 65 72 73 69 6f kgname}.pkgversion.=.${pkgversio
24440 6e 7d 0a 70 72 6f 67 6e 61 6d 65 20 3d 20 24 7b 70 72 6f 67 6e 61 6d 65 7d 0a 56 50 41 54 48 20 n}.progname.=.${progname}.VPATH.
24460 3d 20 24 7b 73 72 63 64 69 72 7d 0a 70 72 65 66 69 78 20 3d 20 24 7b 70 72 65 66 69 78 7d 0a 65 =.${srcdir}.prefix.=.${prefix}.e
24480 78 65 63 5f 70 72 65 66 69 78 20 3d 20 24 7b 65 78 65 63 5f 70 72 65 66 69 78 7d 0a 62 69 6e 64 xec_prefix.=.${exec_prefix}.bind
244a0 69 72 20 3d 20 24 7b 62 69 6e 64 69 72 7d 0a 64 61 74 61 72 6f 6f 74 64 69 72 20 3d 20 24 7b 64 ir.=.${bindir}.datarootdir.=.${d
244c0 61 74 61 72 6f 6f 74 64 69 72 7d 0a 69 6e 66 6f 64 69 72 20 3d 20 24 7b 69 6e 66 6f 64 69 72 7d atarootdir}.infodir.=.${infodir}
244e0 0a 6d 61 6e 64 69 72 20 3d 20 24 7b 6d 61 6e 64 69 72 7d 0a 43 58 58 20 3d 20 24 7b 43 58 58 7d .mandir.=.${mandir}.CXX.=.${CXX}
24500 0a 43 50 50 46 4c 41 47 53 20 3d 20 24 7b 43 50 50 46 4c 41 47 53 7d 0a 43 58 58 46 4c 41 47 53 .CPPFLAGS.=.${CPPFLAGS}.CXXFLAGS
24520 20 3d 20 24 7b 43 58 58 46 4c 41 47 53 7d 0a 4c 44 46 4c 41 47 53 20 3d 20 24 7b 4c 44 46 4c 41 .=.${CXXFLAGS}.LDFLAGS.=.${LDFLA
24540 47 53 7d 0a 4d 41 4b 45 49 4e 46 4f 20 3d 20 24 7b 4d 41 4b 45 49 4e 46 4f 7d 0a 45 4f 46 0a 63 GS}.MAKEINFO.=.${MAKEINFO}.EOF.c
24560 61 74 20 22 24 7b 73 72 63 64 69 72 7d 2f 4d 61 6b 65 66 69 6c 65 2e 69 6e 22 20 3e 3e 20 4d 61 at."${srcdir}/Makefile.in".>>.Ma
24580 6b 65 66 69 6c 65 0a 0a 65 63 68 6f 20 22 4f 4b 2e 20 4e 6f 77 20 79 6f 75 20 63 61 6e 20 72 75 kefile..echo."OK..Now.you.can.ru
245a0 6e 20 6d 61 6b 65 2e 22 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 n.make."........................
245c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
245e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24600 6c 7a 69 70 2d 31 2e 32 35 2f 64 65 63 6f 64 65 72 2e 68 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/decoder.h.............
24620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
24680 30 30 32 33 31 33 32 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 34 32 31 30 00 20 30 00 00 00 0023132.14744236057.014210..0...
246a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
246c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
246e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24700 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
24720 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
24740 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
24760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
247a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
247c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
247e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24800 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
24820 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
24840 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
24860 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
24880 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
248a0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
248c0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
248e0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
24900 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
24920 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
24940 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
24960 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
24980 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
249a0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
249c0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
249e0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
24a00 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
24a20 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
24a40 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
24a60 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
24a80 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
24aa0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
24ac0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 63 6c 61 /www.gnu.org/licenses/>..*/..cla
24ae0 73 73 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 0a 20 20 7b 0a 20 20 65 6e 75 6d 20 7b 20 62 75 ss.Range_decoder...{...enum.{.bu
24b00 66 66 65 72 5f 73 69 7a 65 20 3d 20 31 36 33 38 34 20 7d 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 ffer_size.=.16384.};...unsigned.
24b20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 61 72 74 69 61 6c 5f 6d 65 6d 62 65 72 5f 70 6f 73 3b 0a 20 20 long.long.partial_member_pos;...
24b40 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 62 75 66 66 65 72 3b 09 2f 2f 20 69 6e 70 75 74 uint8_t.*.const.buffer;.//.input
24b60 20 62 75 66 66 65 72 0a 20 20 69 6e 74 20 70 6f 73 3b 09 09 09 2f 2f 20 63 75 72 72 65 6e 74 20 .buffer...int.pos;...//.current.
24b80 70 6f 73 20 69 6e 20 62 75 66 66 65 72 0a 20 20 69 6e 74 20 73 74 72 65 61 6d 5f 70 6f 73 3b 09 pos.in.buffer...int.stream_pos;.
24ba0 09 2f 2f 20 77 68 65 6e 20 72 65 61 63 68 65 64 2c 20 61 20 6e 65 77 20 62 6c 6f 63 6b 20 6d 75 .//.when.reached,.a.new.block.mu
24bc0 73 74 20 62 65 20 72 65 61 64 0a 20 20 75 69 6e 74 33 32 5f 74 20 63 6f 64 65 3b 0a 20 20 75 69 st.be.read...uint32_t.code;...ui
24be0 6e 74 33 32 5f 74 20 72 61 6e 67 65 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 69 6e 66 64 3b 09 nt32_t.range;...const.int.infd;.
24c00 09 2f 2f 20 69 6e 70 75 74 20 66 69 6c 65 20 64 65 73 63 72 69 70 74 6f 72 0a 20 20 62 6f 6f 6c .//.input.file.descriptor...bool
24c20 20 61 74 5f 73 74 72 65 61 6d 5f 65 6e 64 3b 0a 0a 20 20 62 6f 6f 6c 20 72 65 61 64 5f 62 6c 6f .at_stream_end;....bool.read_blo
24c40 63 6b 28 29 3b 0a 0a 20 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 28 20 63 6f 6e 73 74 20 52 61 ck();....Range_decoder(.const.Ra
24c60 6e 67 65 5f 64 65 63 6f 64 65 72 20 26 20 29 3b 09 2f 2f 20 64 65 63 6c 61 72 65 64 20 61 73 20 nge_decoder.&.);.//.declared.as.
24c80 70 72 69 76 61 74 65 0a 20 20 76 6f 69 64 20 6f 70 65 72 61 74 6f 72 3d 28 20 63 6f 6e 73 74 20 private...void.operator=(.const.
24ca0 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 26 20 29 3b 09 2f 2f 20 64 65 63 6c 61 72 65 64 20 61 Range_decoder.&.);.//.declared.a
24cc0 73 20 70 72 69 76 61 74 65 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 65 78 70 6c 69 63 69 74 20 52 61 s.private..public:...explicit.Ra
24ce0 6e 67 65 5f 64 65 63 6f 64 65 72 28 20 63 6f 6e 73 74 20 69 6e 74 20 69 66 64 20 29 0a 20 20 20 nge_decoder(.const.int.ifd.)....
24d00 20 3a 0a 20 20 20 20 70 61 72 74 69 61 6c 5f 6d 65 6d 62 65 72 5f 70 6f 73 28 20 30 20 29 2c 0a .:.....partial_member_pos(.0.),.
24d20 20 20 20 20 62 75 66 66 65 72 28 20 6e 65 77 20 75 69 6e 74 38 5f 74 5b 62 75 66 66 65 72 5f 73 ....buffer(.new.uint8_t[buffer_s
24d40 69 7a 65 5d 20 29 2c 0a 20 20 20 20 70 6f 73 28 20 30 20 29 2c 0a 20 20 20 20 73 74 72 65 61 6d ize].),.....pos(.0.),.....stream
24d60 5f 70 6f 73 28 20 30 20 29 2c 0a 20 20 20 20 63 6f 64 65 28 20 30 20 29 2c 0a 20 20 20 20 72 61 _pos(.0.),.....code(.0.),.....ra
24d80 6e 67 65 28 20 30 78 46 46 46 46 46 46 46 46 55 20 29 2c 0a 20 20 20 20 69 6e 66 64 28 20 69 66 nge(.0xFFFFFFFFU.),.....infd(.if
24da0 64 20 29 2c 0a 20 20 20 20 61 74 5f 73 74 72 65 61 6d 5f 65 6e 64 28 20 66 61 6c 73 65 20 29 0a d.),.....at_stream_end(.false.).
24dc0 20 20 20 20 7b 7d 0a 0a 20 20 7e 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 28 29 20 7b 20 64 65 6c ....{}....~Range_decoder().{.del
24de0 65 74 65 5b 5d 20 62 75 66 66 65 72 3b 20 7d 0a 0a 20 20 62 6f 6f 6c 20 66 69 6e 69 73 68 65 64 ete[].buffer;.}....bool.finished
24e00 28 29 20 7b 20 72 65 74 75 72 6e 20 70 6f 73 20 3e 3d 20 73 74 72 65 61 6d 5f 70 6f 73 20 26 26 ().{.return.pos.>=.stream_pos.&&
24e20 20 21 72 65 61 64 5f 62 6c 6f 63 6b 28 29 3b 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f .!read_block();.}....unsigned.lo
24e40 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 20 63 6f 6e 73 74 0a ng.long.member_position().const.
24e60 20 20 20 20 7b 20 72 65 74 75 72 6e 20 70 61 72 74 69 61 6c 5f 6d 65 6d 62 65 72 5f 70 6f 73 20 ....{.return.partial_member_pos.
24e80 2b 20 70 6f 73 3b 20 7d 0a 0a 20 20 76 6f 69 64 20 72 65 73 65 74 5f 6d 65 6d 62 65 72 5f 70 6f +.pos;.}....void.reset_member_po
24ea0 73 69 74 69 6f 6e 28 29 0a 20 20 20 20 7b 20 70 61 72 74 69 61 6c 5f 6d 65 6d 62 65 72 5f 70 6f sition().....{.partial_member_po
24ec0 73 20 3d 20 30 3b 20 70 61 72 74 69 61 6c 5f 6d 65 6d 62 65 72 5f 70 6f 73 20 2d 3d 20 70 6f 73 s.=.0;.partial_member_pos.-=.pos
24ee0 3b 20 7d 0a 0a 20 20 75 69 6e 74 38 5f 74 20 67 65 74 5f 62 79 74 65 28 29 0a 20 20 20 20 7b 0a ;.}....uint8_t.get_byte().....{.
24f00 20 20 20 20 2f 2f 20 30 78 46 46 20 61 76 6f 69 64 73 20 64 65 63 6f 64 65 72 20 65 72 72 6f 72 ....//.0xFF.avoids.decoder.error
24f20 20 69 66 20 6d 65 6d 62 65 72 20 69 73 20 74 72 75 6e 63 61 74 65 64 20 61 74 20 45 4f 53 20 6d .if.member.is.truncated.at.EOS.m
24f40 61 72 6b 65 72 0a 20 20 20 20 69 66 28 20 66 69 6e 69 73 68 65 64 28 29 20 29 20 72 65 74 75 72 arker.....if(.finished().).retur
24f60 6e 20 30 78 46 46 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 62 75 66 66 65 72 5b 70 6f 73 2b 2b 5d n.0xFF;.....return.buffer[pos++]
24f80 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 6e 74 20 72 65 61 64 5f 64 61 74 61 28 20 75 69 6e 74 38 5f ;.....}....int.read_data(.uint8_
24fa0 74 20 2a 20 63 6f 6e 73 74 20 6f 75 74 62 75 66 2c 20 63 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 t.*.const.outbuf,.const.int.size
24fc0 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 6e 74 20 73 7a 20 3d 20 30 3b 0a 20 20 20 20 77 68 69 .).....{.....int.sz.=.0;.....whi
24fe0 6c 65 28 20 73 7a 20 3c 20 73 69 7a 65 20 26 26 20 21 66 69 6e 69 73 68 65 64 28 29 20 29 0a 20 le(.sz.<.size.&&.!finished().)..
25000 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 72 64 20 3d 20 73 74 64 3a .....{.......const.int.rd.=.std:
25020 3a 6d 69 6e 28 20 73 69 7a 65 20 2d 20 73 7a 2c 20 73 74 72 65 61 6d 5f 70 6f 73 20 2d 20 70 6f :min(.size.-.sz,.stream_pos.-.po
25040 73 20 29 3b 0a 20 20 20 20 20 20 73 74 64 3a 3a 6d 65 6d 63 70 79 28 20 6f 75 74 62 75 66 20 2b s.);.......std::memcpy(.outbuf.+
25060 20 73 7a 2c 20 62 75 66 66 65 72 20 2b 20 70 6f 73 2c 20 72 64 20 29 3b 0a 20 20 20 20 20 20 70 .sz,.buffer.+.pos,.rd.);.......p
25080 6f 73 20 2b 3d 20 72 64 3b 0a 20 20 20 20 20 20 73 7a 20 2b 3d 20 72 64 3b 0a 20 20 20 20 20 20 os.+=.rd;.......sz.+=.rd;.......
250a0 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 73 7a 3b 0a 20 20 20 20 7d 0a 0a 20 20 62 6f 6f 6c 20 6c }.....return.sz;.....}....bool.l
250c0 6f 61 64 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 64 65 20 3d 20 30 3b 0a 20 20 20 20 72 61 oad().....{.....code.=.0;.....ra
250e0 6e 67 65 20 3d 20 30 78 46 46 46 46 46 46 46 46 55 3b 0a 20 20 20 20 2f 2f 20 63 68 65 63 6b 20 nge.=.0xFFFFFFFFU;.....//.check.
25100 66 69 72 73 74 20 62 79 74 65 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 0a 20 20 first.byte.of.the.LZMA.stream...
25120 20 20 69 66 28 20 67 65 74 5f 62 79 74 65 28 29 20 21 3d 20 30 20 29 20 72 65 74 75 72 6e 20 66 ..if(.get_byte().!=.0.).return.f
25140 61 6c 73 65 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 34 3b alse;.....for(.int.i.=.0;.i.<.4;
25160 20 2b 2b 69 20 29 20 63 6f 64 65 20 3d 20 28 20 63 6f 64 65 20 3c 3c 20 38 20 29 20 7c 20 67 65 .++i.).code.=.(.code.<<.8.).|.ge
25180 74 5f 62 79 74 65 28 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 7d t_byte();.....return.true;.....}
251a0 0a 0a 20 20 76 6f 69 64 20 6e 6f 72 6d 61 6c 69 7a 65 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 ....void.normalize().....{.....i
251c0 66 28 20 72 61 6e 67 65 20 3c 3d 20 30 78 30 30 46 46 46 46 46 46 55 20 29 0a 20 20 20 20 20 20 f(.range.<=.0x00FFFFFFU.).......
251e0 7b 20 72 61 6e 67 65 20 3c 3c 3d 20 38 3b 20 63 6f 64 65 20 3d 20 28 20 63 6f 64 65 20 3c 3c 20 {.range.<<=.8;.code.=.(.code.<<.
25200 38 20 29 20 7c 20 67 65 74 5f 62 79 74 65 28 29 3b 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 8.).|.get_byte();.}.....}....uns
25220 69 67 6e 65 64 20 64 65 63 6f 64 65 28 20 63 6f 6e 73 74 20 69 6e 74 20 6e 75 6d 5f 62 69 74 73 igned.decode(.const.int.num_bits
25240 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c 20 3d 20 30 .).....{.....unsigned.symbol.=.0
25260 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 6e 75 6d 5f 62 69 74 73 3b 20 69 20 3e ;.....for(.int.i.=.num_bits;.i.>
25280 20 30 3b 20 2d 2d 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 6e 6f 72 6d 61 6c 69 7a .0;.--i.).......{.......normaliz
252a0 65 28 29 3b 0a 20 20 20 20 20 20 72 61 6e 67 65 20 3e 3e 3d 20 31 3b 0a 2f 2f 20 20 20 20 20 20 e();.......range.>>=.1;.//......
252c0 73 79 6d 62 6f 6c 20 3c 3c 3d 20 31 3b 0a 2f 2f 20 20 20 20 20 20 69 66 28 20 63 6f 64 65 20 3e symbol.<<=.1;.//......if(.code.>
252e0 3d 20 72 61 6e 67 65 20 29 20 7b 20 63 6f 64 65 20 2d 3d 20 72 61 6e 67 65 3b 20 73 79 6d 62 6f =.range.).{.code.-=.range;.symbo
25300 6c 20 7c 3d 20 31 3b 20 7d 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 62 69 74 20 3d l.|=.1;.}.......const.bool.bit.=
25320 20 63 6f 64 65 20 3e 3d 20 72 61 6e 67 65 3b 0a 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3c 3c 3d .code.>=.range;.......symbol.<<=
25340 20 31 3b 20 73 79 6d 62 6f 6c 20 2b 3d 20 62 69 74 3b 0a 20 20 20 20 20 20 63 6f 64 65 20 2d 3d .1;.symbol.+=.bit;.......code.-=
25360 20 72 61 6e 67 65 20 26 20 28 20 30 55 20 2d 20 62 69 74 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 .range.&.(.0U.-.bit.);.......}..
25380 20 20 20 72 65 74 75 72 6e 20 73 79 6d 62 6f 6c 3b 0a 20 20 20 20 7d 0a 0a 20 20 62 6f 6f 6c 20 ...return.symbol;.....}....bool.
253a0 64 65 63 6f 64 65 5f 62 69 74 28 20 42 69 74 5f 6d 6f 64 65 6c 20 26 20 62 6d 20 29 0a 20 20 20 decode_bit(.Bit_model.&.bm.)....
253c0 20 7b 0a 20 20 20 20 6e 6f 72 6d 61 6c 69 7a 65 28 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 .{.....normalize();.....const.ui
253e0 6e 74 33 32 5f 74 20 62 6f 75 6e 64 20 3d 20 28 20 72 61 6e 67 65 20 3e 3e 20 62 69 74 5f 6d 6f nt32_t.bound.=.(.range.>>.bit_mo
25400 64 65 6c 5f 74 6f 74 61 6c 5f 62 69 74 73 20 29 20 2a 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 del_total_bits.).*.bm.probabilit
25420 79 3b 0a 20 20 20 20 69 66 28 20 63 6f 64 65 20 3c 20 62 6f 75 6e 64 20 29 0a 20 20 20 20 20 20 y;.....if(.code.<.bound.).......
25440 7b 0a 20 20 20 20 20 20 72 61 6e 67 65 20 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 62 6d 2e {.......range.=.bound;.......bm.
25460 70 72 6f 62 61 62 69 6c 69 74 79 20 2b 3d 0a 20 20 20 20 20 20 20 20 28 20 62 69 74 5f 6d 6f 64 probability.+=.........(.bit_mod
25480 65 6c 5f 74 6f 74 61 6c 20 2d 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 29 20 3e 3e 20 62 el_total.-.bm.probability.).>>.b
254a0 69 74 5f 6d 6f 64 65 6c 5f 6d 6f 76 65 5f 62 69 74 73 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e it_model_move_bits;.......return
254c0 20 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 .0;.......}.....else.......{....
254e0 20 20 20 63 6f 64 65 20 2d 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 72 61 6e 67 65 20 2d 3d ...code.-=.bound;.......range.-=
25500 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 2d 3d 20 .bound;.......bm.probability.-=.
25520 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 6c 5f 6d 6f 76 65 bm.probability.>>.bit_model_move
25540 5f 62 69 74 73 3b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 31 3b 0a 20 20 20 20 20 20 7d 0a 20 _bits;.......return.1;.......}..
25560 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 ...}....void.decode_symbol_bit(.
25580 42 69 74 5f 6d 6f 64 65 6c 20 26 20 62 6d 2c 20 75 6e 73 69 67 6e 65 64 20 26 20 73 79 6d 62 6f Bit_model.&.bm,.unsigned.&.symbo
255a0 6c 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 6e 6f 72 6d 61 6c 69 7a 65 28 29 3b 0a 20 20 20 20 73 l.).....{.....normalize();.....s
255c0 79 6d 62 6f 6c 20 3c 3c 3d 20 31 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 33 32 5f 74 20 ymbol.<<=.1;.....const.uint32_t.
255e0 62 6f 75 6e 64 20 3d 20 28 20 72 61 6e 67 65 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 bound.=.(.range.>>.bit_model_tot
25600 61 6c 5f 62 69 74 73 20 29 20 2a 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 3b 0a 20 20 20 20 al_bits.).*.bm.probability;.....
25620 69 66 28 20 63 6f 64 65 20 3c 20 62 6f 75 6e 64 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 if(.code.<.bound.).......{......
25640 20 72 61 6e 67 65 20 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 62 6d 2e 70 72 6f 62 61 62 69 .range.=.bound;.......bm.probabi
25660 6c 69 74 79 20 2b 3d 0a 20 20 20 20 20 20 20 20 28 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 lity.+=.........(.bit_model_tota
25680 6c 20 2d 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 29 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 l.-.bm.probability.).>>.bit_mode
256a0 6c 5f 6d 6f 76 65 5f 62 69 74 73 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 l_move_bits;.......}.....else...
256c0 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 64 65 20 2d 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 ....{.......code.-=.bound;......
256e0 20 72 61 6e 67 65 20 2d 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 62 6d 2e 70 72 6f 62 61 62 .range.-=.bound;.......bm.probab
25700 69 6c 69 74 79 20 2d 3d 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 3e 3e 20 62 69 74 5f 6d ility.-=.bm.probability.>>.bit_m
25720 6f 64 65 6c 5f 6d 6f 76 65 5f 62 69 74 73 3b 0a 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 7c 3d 20 odel_move_bits;.......symbol.|=.
25740 31 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 64 65 63 6f 64 65 5f 1;.......}.....}....void.decode_
25760 73 79 6d 62 6f 6c 5f 62 69 74 5f 72 65 76 65 72 73 65 64 28 20 42 69 74 5f 6d 6f 64 65 6c 20 26 symbol_bit_reversed(.Bit_model.&
25780 20 62 6d 2c 20 75 6e 73 69 67 6e 65 64 20 26 20 6d 6f 64 65 6c 2c 0a 20 20 20 20 20 20 20 20 20 .bm,.unsigned.&.model,..........
257a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 6e 73 69 67 6e ..........................unsign
257c0 65 64 20 26 20 73 79 6d 62 6f 6c 2c 20 63 6f 6e 73 74 20 69 6e 74 20 69 20 29 0a 20 20 20 20 7b ed.&.symbol,.const.int.i.).....{
257e0 0a 20 20 20 20 6e 6f 72 6d 61 6c 69 7a 65 28 29 3b 0a 20 20 20 20 6d 6f 64 65 6c 20 3c 3c 3d 20 .....normalize();.....model.<<=.
25800 31 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 33 32 5f 74 20 62 6f 75 6e 64 20 3d 20 28 20 1;.....const.uint32_t.bound.=.(.
25820 72 61 6e 67 65 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 5f 62 69 74 73 20 29 20 range.>>.bit_model_total_bits.).
25840 2a 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 3b 0a 20 20 20 20 69 66 28 20 63 6f 64 65 20 3c *.bm.probability;.....if(.code.<
25860 20 62 6f 75 6e 64 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 72 61 6e 67 65 20 3d 20 62 .bound.).......{.......range.=.b
25880 6f 75 6e 64 3b 0a 20 20 20 20 20 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 2b 3d 0a 20 20 ound;.......bm.probability.+=...
258a0 20 20 20 20 20 20 28 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 20 2d 20 62 6d 2e 70 72 6f ......(.bit_model_total.-.bm.pro
258c0 62 61 62 69 6c 69 74 79 20 29 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 6c 5f 6d 6f 76 65 5f 62 69 74 bability.).>>.bit_model_move_bit
258e0 73 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 s;.......}.....else.......{.....
25900 20 20 63 6f 64 65 20 2d 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 72 61 6e 67 65 20 2d 3d 20 ..code.-=.bound;.......range.-=.
25920 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 2d 3d 20 62 bound;.......bm.probability.-=.b
25940 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 6c 5f 6d 6f 76 65 5f m.probability.>>.bit_model_move_
25960 62 69 74 73 3b 0a 20 20 20 20 20 20 6d 6f 64 65 6c 20 7c 3d 20 31 3b 0a 20 20 20 20 20 20 73 79 bits;.......model.|=.1;.......sy
25980 6d 62 6f 6c 20 7c 3d 20 31 20 3c 3c 20 69 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 mbol.|=.1.<<.i;.......}.....}...
259a0 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 5f 74 72 65 65 36 28 20 42 69 74 5f 6d 6f 64 65 .unsigned.decode_tree6(.Bit_mode
259c0 6c 20 62 6d 5b 5d 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 l.bm[].).....{.....unsigned.symb
259e0 6f 6c 20 3d 20 31 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 ol.=.1;.....decode_symbol_bit(.b
25a00 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f m[symbol],.symbol.);.....decode_
25a20 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 symbol_bit(.bm[symbol],.symbol.)
25a40 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 ;.....decode_symbol_bit(.bm[symb
25a60 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c ol],.symbol.);.....decode_symbol
25a80 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 _bit(.bm[symbol],.symbol.);.....
25aa0 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 decode_symbol_bit(.bm[symbol],.s
25ac0 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 ymbol.);.....decode_symbol_bit(.
25ae0 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e bm[symbol],.symbol.);.....return
25b00 20 73 79 6d 62 6f 6c 20 26 20 30 78 33 46 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 .symbol.&.0x3F;.....}....unsigne
25b20 64 20 64 65 63 6f 64 65 5f 74 72 65 65 38 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 20 29 d.decode_tree8(.Bit_model.bm[].)
25b40 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c 20 3d 20 31 3b 0a .....{.....unsigned.symbol.=.1;.
25b60 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c ....decode_symbol_bit(.bm[symbol
25b80 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 ],.symbol.);.....decode_symbol_b
25ba0 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 it(.bm[symbol],.symbol.);.....de
25bc0 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d code_symbol_bit(.bm[symbol],.sym
25be0 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d bol.);.....decode_symbol_bit(.bm
25c00 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 [symbol],.symbol.);.....decode_s
25c20 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b ymbol_bit(.bm[symbol],.symbol.);
25c40 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f .....decode_symbol_bit(.bm[symbo
25c60 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f l],.symbol.);.....decode_symbol_
25c80 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 bit(.bm[symbol],.symbol.);.....d
25ca0 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 ecode_symbol_bit(.bm[symbol],.sy
25cc0 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 73 79 6d 62 6f 6c 20 26 20 30 78 46 46 mbol.);.....return.symbol.&.0xFF
25ce0 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 5f 74 72 65 65 5f ;.....}....unsigned.decode_tree_
25d00 72 65 76 65 72 73 65 64 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c 20 63 6f 6e 73 74 20 reversed(.Bit_model.bm[],.const.
25d20 69 6e 74 20 6e 75 6d 5f 62 69 74 73 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 int.num_bits.).....{.....unsigne
25d40 64 20 6d 6f 64 65 6c 20 3d 20 31 3b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c d.model.=.1;.....unsigned.symbol
25d60 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 .=.0;.....for(.int.i.=.0;.i.<.nu
25d80 6d 5f 62 69 74 73 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f m_bits;.++i.).......decode_symbo
25da0 6c 5f 62 69 74 5f 72 65 76 65 72 73 65 64 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 6d 6f 64 65 6c l_bit_reversed(.bm[model],.model
25dc0 2c 20 73 79 6d 62 6f 6c 2c 20 69 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 73 79 6d 62 6f 6c ,.symbol,.i.);.....return.symbol
25de0 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 5f 74 72 65 65 5f ;.....}....unsigned.decode_tree_
25e00 72 65 76 65 72 73 65 64 34 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 20 29 0a 20 20 20 20 reversed4(.Bit_model.bm[].).....
25e20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 6d 6f 64 65 6c 20 3d 20 31 3b 0a 20 20 20 20 75 6e {.....unsigned.model.=.1;.....un
25e40 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c 20 3d 20 30 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 signed.symbol.=.0;.....decode_sy
25e60 6d 62 6f 6c 5f 62 69 74 5f 72 65 76 65 72 73 65 64 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 6d 6f mbol_bit_reversed(.bm[model],.mo
25e80 64 65 6c 2c 20 73 79 6d 62 6f 6c 2c 20 30 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d del,.symbol,.0.);.....decode_sym
25ea0 62 6f 6c 5f 62 69 74 5f 72 65 76 65 72 73 65 64 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 6d 6f 64 bol_bit_reversed(.bm[model],.mod
25ec0 65 6c 2c 20 73 79 6d 62 6f 6c 2c 20 31 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 el,.symbol,.1.);.....decode_symb
25ee0 6f 6c 5f 62 69 74 5f 72 65 76 65 72 73 65 64 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 6d 6f 64 65 ol_bit_reversed(.bm[model],.mode
25f00 6c 2c 20 73 79 6d 62 6f 6c 2c 20 32 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f l,.symbol,.2.);.....decode_symbo
25f20 6c 5f 62 69 74 5f 72 65 76 65 72 73 65 64 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 6d 6f 64 65 6c l_bit_reversed(.bm[model],.model
25f40 2c 20 73 79 6d 62 6f 6c 2c 20 33 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 73 79 6d 62 6f 6c ,.symbol,.3.);.....return.symbol
25f60 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 5f 6d 61 74 63 68 ;.....}....unsigned.decode_match
25f80 65 64 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c 20 75 6e 73 69 67 6e 65 64 20 6d 61 74 ed(.Bit_model.bm[],.unsigned.mat
25fa0 63 68 5f 62 79 74 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 42 69 74 5f 6d 6f 64 65 6c 20 2a 20 ch_byte.).....{.....Bit_model.*.
25fc0 63 6f 6e 73 74 20 62 6d 31 20 3d 20 62 6d 20 2b 20 30 78 31 30 30 3b 0a 20 20 20 20 75 6e 73 69 const.bm1.=.bm.+.0x100;.....unsi
25fe0 67 6e 65 64 20 73 79 6d 62 6f 6c 20 3d 20 31 3b 0a 20 20 20 20 77 68 69 6c 65 28 20 73 79 6d 62 gned.symbol.=.1;.....while(.symb
26000 6f 6c 20 3c 20 30 78 31 30 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 ol.<.0x100.).......{.......const
26020 20 75 6e 73 69 67 6e 65 64 20 6d 61 74 63 68 5f 62 69 74 20 3d 20 28 20 6d 61 74 63 68 5f 62 79 .unsigned.match_bit.=.(.match_by
26040 74 65 20 3c 3c 3d 20 31 20 29 20 26 20 30 78 31 30 30 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 te.<<=.1.).&.0x100;.......const.
26060 62 6f 6f 6c 20 62 69 74 20 3d 20 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 31 5b 73 79 6d 62 6f bool.bit.=.decode_bit(.bm1[symbo
26080 6c 2b 6d 61 74 63 68 5f 62 69 74 5d 20 29 3b 0a 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3c 3c 3d l+match_bit].);.......symbol.<<=
260a0 20 31 3b 20 73 79 6d 62 6f 6c 20 7c 3d 20 62 69 74 3b 0a 20 20 20 20 20 20 69 66 28 20 6d 61 74 .1;.symbol.|=.bit;.......if(.mat
260c0 63 68 5f 62 69 74 20 3e 3e 20 38 20 21 3d 20 62 69 74 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 ch_bit.>>.8.!=.bit.).........{..
260e0 20 20 20 20 20 20 20 77 68 69 6c 65 28 20 73 79 6d 62 6f 6c 20 3c 20 30 78 31 30 30 20 29 20 64 .......while(.symbol.<.0x100.).d
26100 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 ecode_symbol_bit(.bm[symbol],.sy
26120 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 7d mbol.);.........break;.........}
26140 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 73 79 6d 62 6f 6c 20 26 20 30 78 46 .......}.....return.symbol.&.0xF
26160 46 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 5f 6c 65 6e 28 F;.....}....unsigned.decode_len(
26180 20 4c 65 6e 5f 6d 6f 64 65 6c 20 26 20 6c 6d 2c 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 .Len_model.&.lm,.const.int.pos_s
261a0 74 61 74 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 42 69 74 5f 6d 6f 64 65 6c 20 2a 20 62 6d 3b tate.).....{.....Bit_model.*.bm;
261c0 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 6d 61 73 6b 2c 20 6f 66 66 73 65 74 2c 20 73 79 6d 62 .....unsigned.mask,.offset,.symb
261e0 6f 6c 20 3d 20 31 3b 0a 0a 20 20 20 20 69 66 28 20 64 65 63 6f 64 65 5f 62 69 74 28 20 6c 6d 2e ol.=.1;......if(.decode_bit(.lm.
26200 63 68 6f 69 63 65 31 20 29 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 7b 20 62 6d 20 3d 20 6c 6d choice1.).==.0.).......{.bm.=.lm
26220 2e 62 6d 5f 6c 6f 77 5b 70 6f 73 5f 73 74 61 74 65 5d 3b 20 6d 61 73 6b 20 3d 20 37 3b 20 6f 66 .bm_low[pos_state];.mask.=.7;.of
26240 66 73 65 74 20 3d 20 30 3b 20 67 6f 74 6f 20 6c 65 6e 33 3b 20 7d 0a 20 20 20 20 69 66 28 20 64 fset.=.0;.goto.len3;.}.....if(.d
26260 65 63 6f 64 65 5f 62 69 74 28 20 6c 6d 2e 63 68 6f 69 63 65 32 20 29 20 3d 3d 20 30 20 29 0a 20 ecode_bit(.lm.choice2.).==.0.)..
26280 20 20 20 20 20 7b 20 62 6d 20 3d 20 6c 6d 2e 62 6d 5f 6d 69 64 5b 70 6f 73 5f 73 74 61 74 65 5d .....{.bm.=.lm.bm_mid[pos_state]
262a0 3b 20 6d 61 73 6b 20 3d 20 37 3b 20 6f 66 66 73 65 74 20 3d 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d ;.mask.=.7;.offset.=.len_low_sym
262c0 62 6f 6c 73 3b 20 67 6f 74 6f 20 6c 65 6e 33 3b 20 7d 0a 20 20 20 20 62 6d 20 3d 20 6c 6d 2e 62 bols;.goto.len3;.}.....bm.=.lm.b
262e0 6d 5f 68 69 67 68 3b 20 6d 61 73 6b 20 3d 20 30 78 46 46 3b 20 6f 66 66 73 65 74 20 3d 20 6c 65 m_high;.mask.=.0xFF;.offset.=.le
26300 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 2b 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 3b n_low_symbols.+.len_mid_symbols;
26320 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f .....decode_symbol_bit(.bm[symbo
26340 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f l],.symbol.);.....decode_symbol_
26360 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 bit(.bm[symbol],.symbol.);.....d
26380 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 ecode_symbol_bit(.bm[symbol],.sy
263a0 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 mbol.);.....decode_symbol_bit(.b
263c0 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f m[symbol],.symbol.);.....decode_
263e0 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 symbol_bit(.bm[symbol],.symbol.)
26400 3b 0a 6c 65 6e 33 3a 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 ;.len3:.....decode_symbol_bit(.b
26420 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f m[symbol],.symbol.);.....decode_
26440 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 symbol_bit(.bm[symbol],.symbol.)
26460 3b 0a 20 20 20 20 64 65 63 6f 64 65 5f 73 79 6d 62 6f 6c 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 ;.....decode_symbol_bit(.bm[symb
26480 6f 6c 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 28 20 73 79 6d 62 ol],.symbol.);.....return.(.symb
264a0 6f 6c 20 26 20 6d 61 73 6b 20 29 20 2b 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 2b 20 6f 66 ol.&.mask.).+.min_match_len.+.of
264c0 66 73 65 74 3b 0a 20 20 20 20 7d 0a 20 20 7d 3b 0a 0a 0a 63 6c 61 73 73 20 4c 5a 5f 64 65 63 6f fset;.....}...};...class.LZ_deco
264e0 64 65 72 0a 20 20 7b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 61 72 der...{...unsigned.long.long.par
26500 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 3b 0a 20 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 26 tial_data_pos;...Range_decoder.&
26520 20 72 64 65 63 3b 0a 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 .rdec;...const.unsigned.dictiona
26540 72 79 5f 73 69 7a 65 3b 0a 20 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 62 75 66 66 65 ry_size;...uint8_t.*.const.buffe
26560 72 3b 09 2f 2f 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 0a 20 20 75 6e 73 69 67 6e 65 64 20 70 r;.//.output.buffer...unsigned.p
26580 6f 73 3b 09 09 09 2f 2f 20 63 75 72 72 65 6e 74 20 70 6f 73 20 69 6e 20 62 75 66 66 65 72 0a 20 os;...//.current.pos.in.buffer..
265a0 20 75 6e 73 69 67 6e 65 64 20 73 74 72 65 61 6d 5f 70 6f 73 3b 09 09 2f 2f 20 66 69 72 73 74 20 .unsigned.stream_pos;..//.first.
265c0 62 79 74 65 20 6e 6f 74 20 79 65 74 20 77 72 69 74 74 65 6e 20 74 6f 20 66 69 6c 65 0a 20 20 75 byte.not.yet.written.to.file...u
265e0 69 6e 74 33 32 5f 74 20 63 72 63 5f 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 6f 75 74 66 64 3b int32_t.crc_;...const.int.outfd;
26600 09 09 2f 2f 20 6f 75 74 70 75 74 20 66 69 6c 65 20 64 65 73 63 72 69 70 74 6f 72 0a 20 20 62 6f ..//.output.file.descriptor...bo
26620 6f 6c 20 70 6f 73 5f 77 72 61 70 70 65 64 3b 0a 0a 20 20 76 6f 69 64 20 66 6c 75 73 68 5f 64 61 ol.pos_wrapped;....void.flush_da
26640 74 61 28 29 3b 0a 20 20 62 6f 6f 6c 20 63 68 65 63 6b 5f 74 72 61 69 6c 65 72 28 20 63 6f 6e 73 ta();...bool.check_trailer(.cons
26660 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 26 20 70 70 20 29 20 63 6f 6e 73 74 3b 0a 0a 20 20 t.Pretty_print.&.pp.).const;....
26680 75 69 6e 74 38 5f 74 20 70 65 65 6b 5f 70 72 65 76 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 uint8_t.peek_prev().const.....{.
266a0 72 65 74 75 72 6e 20 62 75 66 66 65 72 5b 28 28 70 6f 73 20 3e 20 30 29 20 3f 20 70 6f 73 20 3a return.buffer[((pos.>.0).?.pos.:
266c0 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 29 2d 31 5d 3b 20 7d 0a 0a 20 20 75 69 6e 74 38 .dictionary_size)-1];.}....uint8
266e0 5f 74 20 70 65 65 6b 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 73 74 61 6e 63 65 _t.peek(.const.unsigned.distance
26700 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 .).const.....{.....const.unsigne
26720 64 20 69 20 3d 20 28 20 28 20 70 6f 73 20 3e 20 64 69 73 74 61 6e 63 65 20 29 20 3f 20 30 20 3a d.i.=.(.(.pos.>.distance.).?.0.:
26740 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 .dictionary_size.).+............
26760 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 73 20 2d 20 64 69 73 74 61 6e 63 65 20 2d 20 31 3b 0a ............pos.-.distance.-.1;.
26780 20 20 20 20 72 65 74 75 72 6e 20 62 75 66 66 65 72 5b 69 5d 3b 0a 20 20 20 20 7d 0a 0a 20 20 76 ....return.buffer[i];.....}....v
267a0 6f 69 64 20 70 75 74 5f 62 79 74 65 28 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 62 20 29 0a oid.put_byte(.const.uint8_t.b.).
267c0 20 20 20 20 7b 0a 20 20 20 20 62 75 66 66 65 72 5b 70 6f 73 5d 20 3d 20 62 3b 0a 20 20 20 20 69 ....{.....buffer[pos].=.b;.....i
267e0 66 28 20 2b 2b 70 6f 73 20 3e 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 66 6c f(.++pos.>=.dictionary_size.).fl
26800 75 73 68 5f 64 61 74 61 28 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 63 6f 70 79 5f 62 ush_data();.....}....void.copy_b
26820 6c 6f 63 6b 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 73 74 61 6e 63 65 2c 20 75 lock(.const.unsigned.distance,.u
26840 6e 73 69 67 6e 65 64 20 6c 65 6e 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 nsigned.len.).....{.....unsigned
26860 20 6c 70 6f 73 20 3d 20 70 6f 73 2c 20 69 20 3d 20 6c 70 6f 73 20 2d 20 64 69 73 74 61 6e 63 65 .lpos.=.pos,.i.=.lpos.-.distance
26880 20 2d 20 31 3b 0a 20 20 20 20 62 6f 6f 6c 20 66 61 73 74 2c 20 66 61 73 74 32 3b 0a 20 20 20 20 .-.1;.....bool.fast,.fast2;.....
268a0 69 66 28 20 6c 70 6f 73 20 3e 20 64 69 73 74 61 6e 63 65 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 if(.lpos.>.distance.).......{...
268c0 20 20 20 20 66 61 73 74 20 3d 20 6c 65 6e 20 3c 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 ....fast.=.len.<.dictionary_size
268e0 20 2d 20 6c 70 6f 73 3b 0a 20 20 20 20 20 20 66 61 73 74 32 20 3d 20 66 61 73 74 20 26 26 20 6c .-.lpos;.......fast2.=.fast.&&.l
26900 65 6e 20 3c 3d 20 6c 70 6f 73 20 2d 20 69 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 en.<=.lpos.-.i;.......}.....else
26920 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 20 2b 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 .......{.......i.+=.dictionary_s
26940 69 7a 65 3b 0a 20 20 20 20 20 20 66 61 73 74 20 3d 20 6c 65 6e 20 3c 20 64 69 63 74 69 6f 6e 61 ize;.......fast.=.len.<.dictiona
26960 72 79 5f 73 69 7a 65 20 2d 20 69 3b 09 09 2f 2f 20 28 69 20 3d 3d 20 70 6f 73 29 20 6d 61 79 20 ry_size.-.i;..//.(i.==.pos).may.
26980 68 61 70 70 65 6e 0a 20 20 20 20 20 20 66 61 73 74 32 20 3d 20 66 61 73 74 20 26 26 20 6c 65 6e happen.......fast2.=.fast.&&.len
269a0 20 3c 3d 20 69 20 2d 20 6c 70 6f 73 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 66 61 .<=.i.-.lpos;.......}.....if(.fa
269c0 73 74 20 29 09 09 09 09 09 2f 2f 20 6e 6f 20 77 72 61 70 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 st.).....//.no.wrap.......{.....
269e0 20 20 70 6f 73 20 2b 3d 20 6c 65 6e 3b 0a 20 20 20 20 20 20 69 66 28 20 66 61 73 74 32 20 29 09 ..pos.+=.len;.......if(.fast2.).
26a00 09 09 09 2f 2f 20 6e 6f 20 77 72 61 70 2c 20 6e 6f 20 6f 76 65 72 6c 61 70 0a 20 20 20 20 20 20 ...//.no.wrap,.no.overlap.......
26a20 20 20 73 74 64 3a 3a 6d 65 6d 63 70 79 28 20 62 75 66 66 65 72 20 2b 20 6c 70 6f 73 2c 20 62 75 ..std::memcpy(.buffer.+.lpos,.bu
26a40 66 66 65 72 20 2b 20 69 2c 20 6c 65 6e 20 29 3b 0a 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 ffer.+.i,.len.);.......else.....
26a60 20 20 20 20 66 6f 72 28 20 3b 20 6c 65 6e 20 3e 20 30 3b 20 2d 2d 6c 65 6e 20 29 20 62 75 66 66 ....for(.;.len.>.0;.--len.).buff
26a80 65 72 5b 6c 70 6f 73 2b 2b 5d 20 3d 20 62 75 66 66 65 72 5b 69 2b 2b 5d 3b 0a 20 20 20 20 20 20 er[lpos++].=.buffer[i++];.......
26aa0 7d 0a 20 20 20 20 65 6c 73 65 20 66 6f 72 28 20 3b 20 6c 65 6e 20 3e 20 30 3b 20 2d 2d 6c 65 6e }.....else.for(.;.len.>.0;.--len
26ac0 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 62 75 66 66 65 72 5b 70 6f 73 5d 20 3d 20 62 .).......{.......buffer[pos].=.b
26ae0 75 66 66 65 72 5b 69 5d 3b 0a 20 20 20 20 20 20 69 66 28 20 2b 2b 70 6f 73 20 3e 3d 20 64 69 63 uffer[i];.......if(.++pos.>=.dic
26b00 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 20 20 20 tionary_size.).flush_data();....
26b20 20 20 20 69 66 28 20 2b 2b 69 20 3e 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 ...if(.++i.>=.dictionary_size.).
26b40 69 20 3d 20 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 4c 5a 5f 64 65 63 6f 64 i.=.0;.......}.....}....LZ_decod
26b60 65 72 28 20 63 6f 6e 73 74 20 4c 5a 5f 64 65 63 6f 64 65 72 20 26 20 29 3b 09 09 2f 2f 20 64 65 er(.const.LZ_decoder.&.);..//.de
26b80 63 6c 61 72 65 64 20 61 73 20 70 72 69 76 61 74 65 0a 20 20 76 6f 69 64 20 6f 70 65 72 61 74 6f clared.as.private...void.operato
26ba0 72 3d 28 20 63 6f 6e 73 74 20 4c 5a 5f 64 65 63 6f 64 65 72 20 26 20 29 3b 09 09 2f 2f 20 64 65 r=(.const.LZ_decoder.&.);..//.de
26bc0 63 6c 61 72 65 64 20 61 73 20 70 72 69 76 61 74 65 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 4c 5a 5f clared.as.private..public:...LZ_
26be0 64 65 63 6f 64 65 72 28 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 26 20 72 64 65 2c 20 63 6f decoder(.Range_decoder.&.rde,.co
26c00 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 5f 73 69 7a 65 2c 20 63 6f 6e 73 74 20 69 6e nst.unsigned.dict_size,.const.in
26c20 74 20 6f 66 64 20 29 0a 20 20 20 20 3a 0a 20 20 20 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 t.ofd.).....:.....partial_data_p
26c40 6f 73 28 20 30 20 29 2c 0a 20 20 20 20 72 64 65 63 28 20 72 64 65 20 29 2c 0a 20 20 20 20 64 69 os(.0.),.....rdec(.rde.),.....di
26c60 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 20 64 69 63 74 5f 73 69 7a 65 20 29 2c 0a 20 20 20 20 ctionary_size(.dict_size.),.....
26c80 62 75 66 66 65 72 28 20 6e 65 77 20 75 69 6e 74 38 5f 74 5b 64 69 63 74 69 6f 6e 61 72 79 5f 73 buffer(.new.uint8_t[dictionary_s
26ca0 69 7a 65 5d 20 29 2c 0a 20 20 20 20 70 6f 73 28 20 30 20 29 2c 0a 20 20 20 20 73 74 72 65 61 6d ize].),.....pos(.0.),.....stream
26cc0 5f 70 6f 73 28 20 30 20 29 2c 0a 20 20 20 20 63 72 63 5f 28 20 30 78 46 46 46 46 46 46 46 46 55 _pos(.0.),.....crc_(.0xFFFFFFFFU
26ce0 20 29 2c 0a 20 20 20 20 6f 75 74 66 64 28 20 6f 66 64 20 29 2c 0a 20 20 20 20 70 6f 73 5f 77 72 .),.....outfd(.ofd.),.....pos_wr
26d00 61 70 70 65 64 28 20 66 61 6c 73 65 20 29 0a 20 20 20 20 2f 2f 20 70 72 65 76 5f 62 79 74 65 20 apped(.false.).....//.prev_byte.
26d20 6f 66 20 66 69 72 73 74 20 62 79 74 65 3b 20 61 6c 73 6f 20 66 6f 72 20 70 65 65 6b 28 20 30 20 of.first.byte;.also.for.peek(.0.
26d40 29 20 6f 6e 20 63 6f 72 72 75 70 74 20 66 69 6c 65 0a 20 20 20 20 7b 20 62 75 66 66 65 72 5b 64 ).on.corrupt.file.....{.buffer[d
26d60 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 2d 31 5d 20 3d 20 30 3b 20 7d 0a 0a 20 20 7e 4c 5a 5f ictionary_size-1].=.0;.}....~LZ_
26d80 64 65 63 6f 64 65 72 28 29 20 7b 20 64 65 6c 65 74 65 5b 5d 20 62 75 66 66 65 72 3b 20 7d 0a 0a decoder().{.delete[].buffer;.}..
26da0 20 20 75 6e 73 69 67 6e 65 64 20 63 72 63 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 ..unsigned.crc().const.{.return.
26dc0 63 72 63 5f 20 5e 20 30 78 46 46 46 46 46 46 46 46 55 3b 20 7d 0a 20 20 75 6e 73 69 67 6e 65 64 crc_.^.0xFFFFFFFFU;.}...unsigned
26de0 20 6c 6f 6e 67 20 6c 6f 6e 67 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 63 6f 6e 73 74 .long.long.data_position().const
26e00 20 7b 20 72 65 74 75 72 6e 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 20 2b 20 70 6f 73 .{.return.partial_data_pos.+.pos
26e20 3b 20 7d 0a 0a 20 20 69 6e 74 20 64 65 63 6f 64 65 5f 6d 65 6d 62 65 72 28 20 63 6f 6e 73 74 20 ;.}....int.decode_member(.const.
26e40 50 72 65 74 74 79 5f 70 72 69 6e 74 20 26 20 70 70 20 29 3b 0a 20 20 7d 3b 0a 00 00 00 00 00 00 Pretty_print.&.pp.);...};.......
26e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27000 6c 7a 69 70 2d 31 2e 32 35 2f 43 4f 50 59 49 4e 47 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/COPYING...............
27020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27060 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
27080 30 30 34 33 30 37 36 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 33 34 37 36 00 20 30 00 00 00 0043076.14744236057.013476..0...
270a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
270c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
270e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27100 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
27120 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
27140 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
27160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
271a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
271c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
271e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 4e 55 20 47 45 4e 45 52 41 4c 20 ....................GNU.GENERAL.
27220 50 55 42 4c 49 43 20 4c 49 43 45 4e 53 45 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 PUBLIC.LICENSE..................
27240 20 20 20 20 20 20 56 65 72 73 69 6f 6e 20 32 2c 20 4a 75 6e 65 20 31 39 39 31 0a 0a 20 43 6f 70 ......Version.2,.June.1991...Cop
27260 79 72 69 67 68 74 20 28 43 29 20 31 39 38 39 2c 20 31 39 39 31 20 46 72 65 65 20 53 6f 66 74 77 yright.(C).1989,.1991.Free.Softw
27280 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e 20 3c 68 74 74 70 3a 2f 2f 66 73 66 are.Foundation,.Inc..<http://fsf
272a0 2e 6f 72 67 2f 3e 0a 20 45 76 65 72 79 6f 6e 65 20 69 73 20 70 65 72 6d 69 74 74 65 64 20 74 6f .org/>..Everyone.is.permitted.to
272c0 20 63 6f 70 79 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 76 65 72 62 61 74 69 6d 20 63 6f .copy.and.distribute.verbatim.co
272e0 70 69 65 73 0a 20 6f 66 20 74 68 69 73 20 6c 69 63 65 6e 73 65 20 64 6f 63 75 6d 65 6e 74 2c 20 pies..of.this.license.document,.
27300 62 75 74 20 63 68 61 6e 67 69 6e 67 20 69 74 20 69 73 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2e 0a but.changing.it.is.not.allowed..
27320 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 72 65 .............................Pre
27340 61 6d 62 6c 65 0a 0a 20 20 54 68 65 20 6c 69 63 65 6e 73 65 73 20 66 6f 72 20 6d 6f 73 74 20 73 amble....The.licenses.for.most.s
27360 6f 66 74 77 61 72 65 20 61 72 65 20 64 65 73 69 67 6e 65 64 20 74 6f 20 74 61 6b 65 20 61 77 61 oftware.are.designed.to.take.awa
27380 79 20 79 6f 75 72 0a 66 72 65 65 64 6f 6d 20 74 6f 20 73 68 61 72 65 20 61 6e 64 20 63 68 61 6e y.your.freedom.to.share.and.chan
273a0 67 65 20 69 74 2e 20 20 42 79 20 63 6f 6e 74 72 61 73 74 2c 20 74 68 65 20 47 4e 55 20 47 65 6e ge.it...By.contrast,.the.GNU.Gen
273c0 65 72 61 6c 20 50 75 62 6c 69 63 0a 4c 69 63 65 6e 73 65 20 69 73 20 69 6e 74 65 6e 64 65 64 20 eral.Public.License.is.intended.
273e0 74 6f 20 67 75 61 72 61 6e 74 65 65 20 79 6f 75 72 20 66 72 65 65 64 6f 6d 20 74 6f 20 73 68 61 to.guarantee.your.freedom.to.sha
27400 72 65 20 61 6e 64 20 63 68 61 6e 67 65 20 66 72 65 65 0a 73 6f 66 74 77 61 72 65 2d 2d 74 6f 20 re.and.change.free.software--to.
27420 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 73 6f 66 74 77 61 72 65 20 69 73 20 66 72 65 65 20 66 make.sure.the.software.is.free.f
27440 6f 72 20 61 6c 6c 20 69 74 73 20 75 73 65 72 73 2e 20 20 54 68 69 73 0a 47 65 6e 65 72 61 6c 20 or.all.its.users...This.General.
27460 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 70 70 6c 69 65 73 20 74 6f 20 6d 6f 73 74 20 6f Public.License.applies.to.most.o
27480 66 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 0a 46 6f 75 6e 64 61 74 69 6f 6e 27 73 f.the.Free.Software.Foundation's
274a0 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 74 6f 20 61 6e 79 20 6f 74 68 65 72 20 70 72 6f 67 72 .software.and.to.any.other.progr
274c0 61 6d 20 77 68 6f 73 65 20 61 75 74 68 6f 72 73 20 63 6f 6d 6d 69 74 20 74 6f 0a 75 73 69 6e 67 am.whose.authors.commit.to.using
274e0 20 69 74 2e 20 20 28 53 6f 6d 65 20 6f 74 68 65 72 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 .it...(Some.other.Free.Software.
27500 46 6f 75 6e 64 61 74 69 6f 6e 20 73 6f 66 74 77 61 72 65 20 69 73 20 63 6f 76 65 72 65 64 20 62 Foundation.software.is.covered.b
27520 79 0a 74 68 65 20 47 4e 55 20 4c 65 73 73 65 72 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 y.the.GNU.Lesser.General.Public.
27540 4c 69 63 65 6e 73 65 20 69 6e 73 74 65 61 64 2e 29 20 20 59 6f 75 20 63 61 6e 20 61 70 70 6c 79 License.instead.)..You.can.apply
27560 20 69 74 20 74 6f 0a 79 6f 75 72 20 70 72 6f 67 72 61 6d 73 2c 20 74 6f 6f 2e 0a 0a 20 20 57 68 .it.to.your.programs,.too.....Wh
27580 65 6e 20 77 65 20 73 70 65 61 6b 20 6f 66 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 2c 20 77 65 en.we.speak.of.free.software,.we
275a0 20 61 72 65 20 72 65 66 65 72 72 69 6e 67 20 74 6f 20 66 72 65 65 64 6f 6d 2c 20 6e 6f 74 0a 70 .are.referring.to.freedom,.not.p
275c0 72 69 63 65 2e 20 20 4f 75 72 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 rice...Our.General.Public.Licens
275e0 65 73 20 61 72 65 20 64 65 73 69 67 6e 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 es.are.designed.to.make.sure.tha
27600 74 20 79 6f 75 0a 68 61 76 65 20 74 68 65 20 66 72 65 65 64 6f 6d 20 74 6f 20 64 69 73 74 72 69 t.you.have.the.freedom.to.distri
27620 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 28 61 6e bute.copies.of.free.software.(an
27640 64 20 63 68 61 72 67 65 20 66 6f 72 0a 74 68 69 73 20 73 65 72 76 69 63 65 20 69 66 20 79 6f 75 d.charge.for.this.service.if.you
27660 20 77 69 73 68 29 2c 20 74 68 61 74 20 79 6f 75 20 72 65 63 65 69 76 65 20 73 6f 75 72 63 65 20 .wish),.that.you.receive.source.
27680 63 6f 64 65 20 6f 72 20 63 61 6e 20 67 65 74 20 69 74 0a 69 66 20 79 6f 75 20 77 61 6e 74 20 69 code.or.can.get.it.if.you.want.i
276a0 74 2c 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 63 68 61 6e 67 65 20 74 68 65 20 73 6f 66 74 77 t,.that.you.can.change.the.softw
276c0 61 72 65 20 6f 72 20 75 73 65 20 70 69 65 63 65 73 20 6f 66 20 69 74 0a 69 6e 20 6e 65 77 20 66 are.or.use.pieces.of.it.in.new.f
276e0 72 65 65 20 70 72 6f 67 72 61 6d 73 3b 20 61 6e 64 20 74 68 61 74 20 79 6f 75 20 6b 6e 6f 77 20 ree.programs;.and.that.you.know.
27700 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 65 73 65 20 74 68 69 6e 67 73 2e 0a 0a 20 20 54 6f 20 70 you.can.do.these.things.....To.p
27720 72 6f 74 65 63 74 20 79 6f 75 72 20 72 69 67 68 74 73 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 6d rotect.your.rights,.we.need.to.m
27740 61 6b 65 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 74 68 61 74 20 66 6f 72 62 69 64 0a 61 6e 79 ake.restrictions.that.forbid.any
27760 6f 6e 65 20 74 6f 20 64 65 6e 79 20 79 6f 75 20 74 68 65 73 65 20 72 69 67 68 74 73 20 6f 72 20 one.to.deny.you.these.rights.or.
27780 74 6f 20 61 73 6b 20 79 6f 75 20 74 6f 20 73 75 72 72 65 6e 64 65 72 20 74 68 65 20 72 69 67 68 to.ask.you.to.surrender.the.righ
277a0 74 73 2e 0a 54 68 65 73 65 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 74 72 61 6e 73 6c 61 74 65 ts..These.restrictions.translate
277c0 20 74 6f 20 63 65 72 74 61 69 6e 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 20 66 6f 72 .to.certain.responsibilities.for
277e0 20 79 6f 75 20 69 66 20 79 6f 75 0a 64 69 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 .you.if.you.distribute.copies.of
27800 20 74 68 65 20 73 6f 66 74 77 61 72 65 2c 20 6f 72 20 69 66 20 79 6f 75 20 6d 6f 64 69 66 79 20 .the.software,.or.if.you.modify.
27820 69 74 2e 0a 0a 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 79 6f 75 20 64 69 73 74 72 it.....For.example,.if.you.distr
27840 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 73 75 63 68 20 61 20 70 72 6f 67 72 61 6d 2c 20 ibute.copies.of.such.a.program,.
27860 77 68 65 74 68 65 72 0a 67 72 61 74 69 73 20 6f 72 20 66 6f 72 20 61 20 66 65 65 2c 20 79 6f 75 whether.gratis.or.for.a.fee,.you
27880 20 6d 75 73 74 20 67 69 76 65 20 74 68 65 20 72 65 63 69 70 69 65 6e 74 73 20 61 6c 6c 20 74 68 .must.give.the.recipients.all.th
278a0 65 20 72 69 67 68 74 73 20 74 68 61 74 0a 79 6f 75 20 68 61 76 65 2e 20 20 59 6f 75 20 6d 75 73 e.rights.that.you.have...You.mus
278c0 74 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 74 68 65 79 2c 20 74 6f 6f 2c 20 72 65 63 65 t.make.sure.that.they,.too,.rece
278e0 69 76 65 20 6f 72 20 63 61 6e 20 67 65 74 20 74 68 65 0a 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 ive.or.can.get.the.source.code..
27900 20 41 6e 64 20 79 6f 75 20 6d 75 73 74 20 73 68 6f 77 20 74 68 65 6d 20 74 68 65 73 65 20 74 65 .And.you.must.show.them.these.te
27920 72 6d 73 20 73 6f 20 74 68 65 79 20 6b 6e 6f 77 20 74 68 65 69 72 0a 72 69 67 68 74 73 2e 0a 0a rms.so.they.know.their.rights...
27940 20 20 57 65 20 70 72 6f 74 65 63 74 20 79 6f 75 72 20 72 69 67 68 74 73 20 77 69 74 68 20 74 77 ..We.protect.your.rights.with.tw
27960 6f 20 73 74 65 70 73 3a 20 28 31 29 20 63 6f 70 79 72 69 67 68 74 20 74 68 65 20 73 6f 66 74 77 o.steps:.(1).copyright.the.softw
27980 61 72 65 2c 20 61 6e 64 0a 28 32 29 20 6f 66 66 65 72 20 79 6f 75 20 74 68 69 73 20 6c 69 63 65 are,.and.(2).offer.you.this.lice
279a0 6e 73 65 20 77 68 69 63 68 20 67 69 76 65 73 20 79 6f 75 20 6c 65 67 61 6c 20 70 65 72 6d 69 73 nse.which.gives.you.legal.permis
279c0 73 69 6f 6e 20 74 6f 20 63 6f 70 79 2c 0a 64 69 73 74 72 69 62 75 74 65 20 61 6e 64 2f 6f 72 20 sion.to.copy,.distribute.and/or.
279e0 6d 6f 64 69 66 79 20 74 68 65 20 73 6f 66 74 77 61 72 65 2e 0a 0a 20 20 41 6c 73 6f 2c 20 66 6f modify.the.software.....Also,.fo
27a00 72 20 65 61 63 68 20 61 75 74 68 6f 72 27 73 20 70 72 6f 74 65 63 74 69 6f 6e 20 61 6e 64 20 6f r.each.author's.protection.and.o
27a20 75 72 73 2c 20 77 65 20 77 61 6e 74 20 74 6f 20 6d 61 6b 65 20 63 65 72 74 61 69 6e 0a 74 68 61 urs,.we.want.to.make.certain.tha
27a40 74 20 65 76 65 72 79 6f 6e 65 20 75 6e 64 65 72 73 74 61 6e 64 73 20 74 68 61 74 20 74 68 65 72 t.everyone.understands.that.ther
27a60 65 20 69 73 20 6e 6f 20 77 61 72 72 61 6e 74 79 20 66 6f 72 20 74 68 69 73 20 66 72 65 65 0a 73 e.is.no.warranty.for.this.free.s
27a80 6f 66 74 77 61 72 65 2e 20 20 49 66 20 74 68 65 20 73 6f 66 74 77 61 72 65 20 69 73 20 6d 6f 64 oftware...If.the.software.is.mod
27aa0 69 66 69 65 64 20 62 79 20 73 6f 6d 65 6f 6e 65 20 65 6c 73 65 20 61 6e 64 20 70 61 73 73 65 64 ified.by.someone.else.and.passed
27ac0 20 6f 6e 2c 20 77 65 0a 77 61 6e 74 20 69 74 73 20 72 65 63 69 70 69 65 6e 74 73 20 74 6f 20 6b .on,.we.want.its.recipients.to.k
27ae0 6e 6f 77 20 74 68 61 74 20 77 68 61 74 20 74 68 65 79 20 68 61 76 65 20 69 73 20 6e 6f 74 20 74 now.that.what.they.have.is.not.t
27b00 68 65 20 6f 72 69 67 69 6e 61 6c 2c 20 73 6f 0a 74 68 61 74 20 61 6e 79 20 70 72 6f 62 6c 65 6d he.original,.so.that.any.problem
27b20 73 20 69 6e 74 72 6f 64 75 63 65 64 20 62 79 20 6f 74 68 65 72 73 20 77 69 6c 6c 20 6e 6f 74 20 s.introduced.by.others.will.not.
27b40 72 65 66 6c 65 63 74 20 6f 6e 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 0a 61 75 74 68 6f 72 73 27 reflect.on.the.original.authors'
27b60 20 72 65 70 75 74 61 74 69 6f 6e 73 2e 0a 0a 20 20 46 69 6e 61 6c 6c 79 2c 20 61 6e 79 20 66 72 .reputations.....Finally,.any.fr
27b80 65 65 20 70 72 6f 67 72 61 6d 20 69 73 20 74 68 72 65 61 74 65 6e 65 64 20 63 6f 6e 73 74 61 6e ee.program.is.threatened.constan
27ba0 74 6c 79 20 62 79 20 73 6f 66 74 77 61 72 65 0a 70 61 74 65 6e 74 73 2e 20 20 57 65 20 77 69 73 tly.by.software.patents...We.wis
27bc0 68 20 74 6f 20 61 76 6f 69 64 20 74 68 65 20 64 61 6e 67 65 72 20 74 68 61 74 20 72 65 64 69 73 h.to.avoid.the.danger.that.redis
27be0 74 72 69 62 75 74 6f 72 73 20 6f 66 20 61 20 66 72 65 65 0a 70 72 6f 67 72 61 6d 20 77 69 6c 6c tributors.of.a.free.program.will
27c00 20 69 6e 64 69 76 69 64 75 61 6c 6c 79 20 6f 62 74 61 69 6e 20 70 61 74 65 6e 74 20 6c 69 63 65 .individually.obtain.patent.lice
27c20 6e 73 65 73 2c 20 69 6e 20 65 66 66 65 63 74 20 6d 61 6b 69 6e 67 20 74 68 65 0a 70 72 6f 67 72 nses,.in.effect.making.the.progr
27c40 61 6d 20 70 72 6f 70 72 69 65 74 61 72 79 2e 20 20 54 6f 20 70 72 65 76 65 6e 74 20 74 68 69 73 am.proprietary...To.prevent.this
27c60 2c 20 77 65 20 68 61 76 65 20 6d 61 64 65 20 69 74 20 63 6c 65 61 72 20 74 68 61 74 20 61 6e 79 ,.we.have.made.it.clear.that.any
27c80 0a 70 61 74 65 6e 74 20 6d 75 73 74 20 62 65 20 6c 69 63 65 6e 73 65 64 20 66 6f 72 20 65 76 65 .patent.must.be.licensed.for.eve
27ca0 72 79 6f 6e 65 27 73 20 66 72 65 65 20 75 73 65 20 6f 72 20 6e 6f 74 20 6c 69 63 65 6e 73 65 64 ryone's.free.use.or.not.licensed
27cc0 20 61 74 20 61 6c 6c 2e 0a 0a 20 20 54 68 65 20 70 72 65 63 69 73 65 20 74 65 72 6d 73 20 61 6e .at.all.....The.precise.terms.an
27ce0 64 20 63 6f 6e 64 69 74 69 6f 6e 73 20 66 6f 72 20 63 6f 70 79 69 6e 67 2c 20 64 69 73 74 72 69 d.conditions.for.copying,.distri
27d00 62 75 74 69 6f 6e 20 61 6e 64 0a 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 66 6f 6c 6c 6f 77 2e 0a bution.and.modification.follow..
27d20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 4e 55 20 47 45 4e 45 52 41 4c .....................GNU.GENERAL
27d40 20 50 55 42 4c 49 43 20 4c 49 43 45 4e 53 45 0a 20 20 20 54 45 52 4d 53 20 41 4e 44 20 43 4f 4e .PUBLIC.LICENSE....TERMS.AND.CON
27d60 44 49 54 49 4f 4e 53 20 46 4f 52 20 43 4f 50 59 49 4e 47 2c 20 44 49 53 54 52 49 42 55 54 49 4f DITIONS.FOR.COPYING,.DISTRIBUTIO
27d80 4e 20 41 4e 44 20 4d 4f 44 49 46 49 43 41 54 49 4f 4e 0a 0a 20 20 30 2e 20 54 68 69 73 20 4c 69 N.AND.MODIFICATION....0..This.Li
27da0 63 65 6e 73 65 20 61 70 70 6c 69 65 73 20 74 6f 20 61 6e 79 20 70 72 6f 67 72 61 6d 20 6f 72 20 cense.applies.to.any.program.or.
27dc0 6f 74 68 65 72 20 77 6f 72 6b 20 77 68 69 63 68 20 63 6f 6e 74 61 69 6e 73 0a 61 20 6e 6f 74 69 other.work.which.contains.a.noti
27de0 63 65 20 70 6c 61 63 65 64 20 62 79 20 74 68 65 20 63 6f 70 79 72 69 67 68 74 20 68 6f 6c 64 65 ce.placed.by.the.copyright.holde
27e00 72 20 73 61 79 69 6e 67 20 69 74 20 6d 61 79 20 62 65 20 64 69 73 74 72 69 62 75 74 65 64 0a 75 r.saying.it.may.be.distributed.u
27e20 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 69 73 20 47 65 6e 65 72 61 6c 20 50 nder.the.terms.of.this.General.P
27e40 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 2e 20 20 54 68 65 20 22 50 72 6f 67 72 61 6d 22 2c 20 62 ublic.License...The."Program",.b
27e60 65 6c 6f 77 2c 0a 72 65 66 65 72 73 20 74 6f 20 61 6e 79 20 73 75 63 68 20 70 72 6f 67 72 61 6d elow,.refers.to.any.such.program
27e80 20 6f 72 20 77 6f 72 6b 2c 20 61 6e 64 20 61 20 22 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 .or.work,.and.a."work.based.on.t
27ea0 68 65 20 50 72 6f 67 72 61 6d 22 0a 6d 65 61 6e 73 20 65 69 74 68 65 72 20 74 68 65 20 50 72 6f he.Program".means.either.the.Pro
27ec0 67 72 61 6d 20 6f 72 20 61 6e 79 20 64 65 72 69 76 61 74 69 76 65 20 77 6f 72 6b 20 75 6e 64 65 gram.or.any.derivative.work.unde
27ee0 72 20 63 6f 70 79 72 69 67 68 74 20 6c 61 77 3a 0a 74 68 61 74 20 69 73 20 74 6f 20 73 61 79 2c r.copyright.law:.that.is.to.say,
27f00 20 61 20 77 6f 72 6b 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f .a.work.containing.the.Program.o
27f20 72 20 61 20 70 6f 72 74 69 6f 6e 20 6f 66 20 69 74 2c 0a 65 69 74 68 65 72 20 76 65 72 62 61 74 r.a.portion.of.it,.either.verbat
27f40 69 6d 20 6f 72 20 77 69 74 68 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 61 6e 64 2f 6f 72 20 im.or.with.modifications.and/or.
27f60 74 72 61 6e 73 6c 61 74 65 64 20 69 6e 74 6f 20 61 6e 6f 74 68 65 72 0a 6c 61 6e 67 75 61 67 65 translated.into.another.language
27f80 2e 20 20 28 48 65 72 65 69 6e 61 66 74 65 72 2c 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 69 73 20 ...(Hereinafter,.translation.is.
27fa0 69 6e 63 6c 75 64 65 64 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 69 6e 0a 74 included.without.limitation.in.t
27fc0 68 65 20 74 65 72 6d 20 22 6d 6f 64 69 66 69 63 61 74 69 6f 6e 22 2e 29 20 20 45 61 63 68 20 6c he.term."modification".)..Each.l
27fe0 69 63 65 6e 73 65 65 20 69 73 20 61 64 64 72 65 73 73 65 64 20 61 73 20 22 79 6f 75 22 2e 0a 0a icensee.is.addressed.as."you"...
28000 41 63 74 69 76 69 74 69 65 73 20 6f 74 68 65 72 20 74 68 61 6e 20 63 6f 70 79 69 6e 67 2c 20 64 Activities.other.than.copying,.d
28020 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 61 72 65 istribution.and.modification.are
28040 20 6e 6f 74 0a 63 6f 76 65 72 65 64 20 62 79 20 74 68 69 73 20 4c 69 63 65 6e 73 65 3b 20 74 68 .not.covered.by.this.License;.th
28060 65 79 20 61 72 65 20 6f 75 74 73 69 64 65 20 69 74 73 20 73 63 6f 70 65 2e 20 20 54 68 65 20 61 ey.are.outside.its.scope...The.a
28080 63 74 20 6f 66 0a 72 75 6e 6e 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 73 20 6e 6f 74 ct.of.running.the.Program.is.not
280a0 20 72 65 73 74 72 69 63 74 65 64 2c 20 61 6e 64 20 74 68 65 20 6f 75 74 70 75 74 20 66 72 6f 6d .restricted,.and.the.output.from
280c0 20 74 68 65 20 50 72 6f 67 72 61 6d 0a 69 73 20 63 6f 76 65 72 65 64 20 6f 6e 6c 79 20 69 66 20 .the.Program.is.covered.only.if.
280e0 69 74 73 20 63 6f 6e 74 65 6e 74 73 20 63 6f 6e 73 74 69 74 75 74 65 20 61 20 77 6f 72 6b 20 62 its.contents.constitute.a.work.b
28100 61 73 65 64 20 6f 6e 20 74 68 65 0a 50 72 6f 67 72 61 6d 20 28 69 6e 64 65 70 65 6e 64 65 6e 74 ased.on.the.Program.(independent
28120 20 6f 66 20 68 61 76 69 6e 67 20 62 65 65 6e 20 6d 61 64 65 20 62 79 20 72 75 6e 6e 69 6e 67 20 .of.having.been.made.by.running.
28140 74 68 65 20 50 72 6f 67 72 61 6d 29 2e 0a 57 68 65 74 68 65 72 20 74 68 61 74 20 69 73 20 74 72 the.Program)..Whether.that.is.tr
28160 75 65 20 64 65 70 65 6e 64 73 20 6f 6e 20 77 68 61 74 20 74 68 65 20 50 72 6f 67 72 61 6d 20 64 ue.depends.on.what.the.Program.d
28180 6f 65 73 2e 0a 0a 20 20 31 2e 20 59 6f 75 20 6d 61 79 20 63 6f 70 79 20 61 6e 64 20 64 69 73 74 oes.....1..You.may.copy.and.dist
281a0 72 69 62 75 74 65 20 76 65 72 62 61 74 69 6d 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 50 72 ribute.verbatim.copies.of.the.Pr
281c0 6f 67 72 61 6d 27 73 0a 73 6f 75 72 63 65 20 63 6f 64 65 20 61 73 20 79 6f 75 20 72 65 63 65 69 ogram's.source.code.as.you.recei
281e0 76 65 20 69 74 2c 20 69 6e 20 61 6e 79 20 6d 65 64 69 75 6d 2c 20 70 72 6f 76 69 64 65 64 20 74 ve.it,.in.any.medium,.provided.t
28200 68 61 74 20 79 6f 75 0a 63 6f 6e 73 70 69 63 75 6f 75 73 6c 79 20 61 6e 64 20 61 70 70 72 6f 70 hat.you.conspicuously.and.approp
28220 72 69 61 74 65 6c 79 20 70 75 62 6c 69 73 68 20 6f 6e 20 65 61 63 68 20 63 6f 70 79 20 61 6e 20 riately.publish.on.each.copy.an.
28240 61 70 70 72 6f 70 72 69 61 74 65 0a 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 appropriate.copyright.notice.and
28260 20 64 69 73 63 6c 61 69 6d 65 72 20 6f 66 20 77 61 72 72 61 6e 74 79 3b 20 6b 65 65 70 20 69 6e .disclaimer.of.warranty;.keep.in
28280 74 61 63 74 20 61 6c 6c 20 74 68 65 0a 6e 6f 74 69 63 65 73 20 74 68 61 74 20 72 65 66 65 72 20 tact.all.the.notices.that.refer.
282a0 74 6f 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 61 6e 64 20 74 6f 20 74 68 65 20 61 62 73 65 6e to.this.License.and.to.the.absen
282c0 63 65 20 6f 66 20 61 6e 79 20 77 61 72 72 61 6e 74 79 3b 0a 61 6e 64 20 67 69 76 65 20 61 6e 79 ce.of.any.warranty;.and.give.any
282e0 20 6f 74 68 65 72 20 72 65 63 69 70 69 65 6e 74 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d .other.recipients.of.the.Program
28300 20 61 20 63 6f 70 79 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 0a 61 6c 6f 6e 67 20 77 69 .a.copy.of.this.License.along.wi
28320 74 68 20 74 68 65 20 50 72 6f 67 72 61 6d 2e 0a 0a 59 6f 75 20 6d 61 79 20 63 68 61 72 67 65 20 th.the.Program...You.may.charge.
28340 61 20 66 65 65 20 66 6f 72 20 74 68 65 20 70 68 79 73 69 63 61 6c 20 61 63 74 20 6f 66 20 74 72 a.fee.for.the.physical.act.of.tr
28360 61 6e 73 66 65 72 72 69 6e 67 20 61 20 63 6f 70 79 2c 20 61 6e 64 0a 79 6f 75 20 6d 61 79 20 61 ansferring.a.copy,.and.you.may.a
28380 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 20 6f 66 66 65 72 20 77 61 72 72 61 6e 74 79 20 70 72 6f t.your.option.offer.warranty.pro
283a0 74 65 63 74 69 6f 6e 20 69 6e 20 65 78 63 68 61 6e 67 65 20 66 6f 72 20 61 20 66 65 65 2e 0a 0a tection.in.exchange.for.a.fee...
283c0 20 20 32 2e 20 59 6f 75 20 6d 61 79 20 6d 6f 64 69 66 79 20 79 6f 75 72 20 63 6f 70 79 20 6f 72 ..2..You.may.modify.your.copy.or
283e0 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 6e 79 20 70 6f .copies.of.the.Program.or.any.po
28400 72 74 69 6f 6e 0a 6f 66 20 69 74 2c 20 74 68 75 73 20 66 6f 72 6d 69 6e 67 20 61 20 77 6f 72 6b rtion.of.it,.thus.forming.a.work
28420 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 2c 20 61 6e 64 20 63 6f 70 79 20 .based.on.the.Program,.and.copy.
28440 61 6e 64 0a 64 69 73 74 72 69 62 75 74 65 20 73 75 63 68 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e and.distribute.such.modification
28460 73 20 6f 72 20 77 6f 72 6b 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 53 65 63 s.or.work.under.the.terms.of.Sec
28480 74 69 6f 6e 20 31 0a 61 62 6f 76 65 2c 20 70 72 6f 76 69 64 65 64 20 74 68 61 74 20 79 6f 75 20 tion.1.above,.provided.that.you.
284a0 61 6c 73 6f 20 6d 65 65 74 20 61 6c 6c 20 6f 66 20 74 68 65 73 65 20 63 6f 6e 64 69 74 69 6f 6e also.meet.all.of.these.condition
284c0 73 3a 0a 0a 20 20 20 20 61 29 20 59 6f 75 20 6d 75 73 74 20 63 61 75 73 65 20 74 68 65 20 6d 6f s:......a).You.must.cause.the.mo
284e0 64 69 66 69 65 64 20 66 69 6c 65 73 20 74 6f 20 63 61 72 72 79 20 70 72 6f 6d 69 6e 65 6e 74 20 dified.files.to.carry.prominent.
28500 6e 6f 74 69 63 65 73 0a 20 20 20 20 73 74 61 74 69 6e 67 20 74 68 61 74 20 79 6f 75 20 63 68 61 notices.....stating.that.you.cha
28520 6e 67 65 64 20 74 68 65 20 66 69 6c 65 73 20 61 6e 64 20 74 68 65 20 64 61 74 65 20 6f 66 20 61 nged.the.files.and.the.date.of.a
28540 6e 79 20 63 68 61 6e 67 65 2e 0a 0a 20 20 20 20 62 29 20 59 6f 75 20 6d 75 73 74 20 63 61 75 73 ny.change.......b).You.must.caus
28560 65 20 61 6e 79 20 77 6f 72 6b 20 74 68 61 74 20 79 6f 75 20 64 69 73 74 72 69 62 75 74 65 20 6f e.any.work.that.you.distribute.o
28580 72 20 70 75 62 6c 69 73 68 2c 20 74 68 61 74 20 69 6e 0a 20 20 20 20 77 68 6f 6c 65 20 6f 72 20 r.publish,.that.in.....whole.or.
285a0 69 6e 20 70 61 72 74 20 63 6f 6e 74 61 69 6e 73 20 6f 72 20 69 73 20 64 65 72 69 76 65 64 20 66 in.part.contains.or.is.derived.f
285c0 72 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 6e 79 0a 20 20 20 20 70 61 72 74 20 rom.the.Program.or.any.....part.
285e0 74 68 65 72 65 6f 66 2c 20 74 6f 20 62 65 20 6c 69 63 65 6e 73 65 64 20 61 73 20 61 20 77 68 6f thereof,.to.be.licensed.as.a.who
28600 6c 65 20 61 74 20 6e 6f 20 63 68 61 72 67 65 20 74 6f 20 61 6c 6c 20 74 68 69 72 64 0a 20 20 20 le.at.no.charge.to.all.third....
28620 20 70 61 72 74 69 65 73 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 69 73 .parties.under.the.terms.of.this
28640 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 20 20 63 29 20 49 66 20 74 68 65 20 6d 6f 64 69 66 69 65 .License.......c).If.the.modifie
28660 64 20 70 72 6f 67 72 61 6d 20 6e 6f 72 6d 61 6c 6c 79 20 72 65 61 64 73 20 63 6f 6d 6d 61 6e 64 d.program.normally.reads.command
28680 73 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 0a 20 20 20 20 77 68 65 6e 20 72 75 6e 2c 20 79 6f s.interactively.....when.run,.yo
286a0 75 20 6d 75 73 74 20 63 61 75 73 65 20 69 74 2c 20 77 68 65 6e 20 73 74 61 72 74 65 64 20 72 75 u.must.cause.it,.when.started.ru
286c0 6e 6e 69 6e 67 20 66 6f 72 20 73 75 63 68 0a 20 20 20 20 69 6e 74 65 72 61 63 74 69 76 65 20 75 nning.for.such.....interactive.u
286e0 73 65 20 69 6e 20 74 68 65 20 6d 6f 73 74 20 6f 72 64 69 6e 61 72 79 20 77 61 79 2c 20 74 6f 20 se.in.the.most.ordinary.way,.to.
28700 70 72 69 6e 74 20 6f 72 20 64 69 73 70 6c 61 79 20 61 6e 0a 20 20 20 20 61 6e 6e 6f 75 6e 63 65 print.or.display.an.....announce
28720 6d 65 6e 74 20 69 6e 63 6c 75 64 69 6e 67 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 63 6f ment.including.an.appropriate.co
28740 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 20 61 0a 20 20 20 20 6e 6f 74 69 63 65 20 pyright.notice.and.a.....notice.
28760 74 68 61 74 20 74 68 65 72 65 20 69 73 20 6e 6f 20 77 61 72 72 61 6e 74 79 20 28 6f 72 20 65 6c that.there.is.no.warranty.(or.el
28780 73 65 2c 20 73 61 79 69 6e 67 20 74 68 61 74 20 79 6f 75 20 70 72 6f 76 69 64 65 0a 20 20 20 20 se,.saying.that.you.provide.....
287a0 61 20 77 61 72 72 61 6e 74 79 29 20 61 6e 64 20 74 68 61 74 20 75 73 65 72 73 20 6d 61 79 20 72 a.warranty).and.that.users.may.r
287c0 65 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 70 72 6f 67 72 61 6d 20 75 6e 64 65 72 0a 20 20 edistribute.the.program.under...
287e0 20 20 74 68 65 73 65 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 61 6e 64 20 74 65 6c 6c 69 6e 67 20 ..these.conditions,.and.telling.
28800 74 68 65 20 75 73 65 72 20 68 6f 77 20 74 6f 20 76 69 65 77 20 61 20 63 6f 70 79 20 6f 66 20 74 the.user.how.to.view.a.copy.of.t
28820 68 69 73 0a 20 20 20 20 4c 69 63 65 6e 73 65 2e 20 20 28 45 78 63 65 70 74 69 6f 6e 3a 20 69 66 his.....License...(Exception:.if
28840 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 74 73 65 6c 66 20 69 73 20 69 6e 74 65 72 61 63 74 69 .the.Program.itself.is.interacti
28860 76 65 20 62 75 74 0a 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 6e 6f 72 6d 61 6c 6c 79 20 70 72 69 ve.but.....does.not.normally.pri
28880 6e 74 20 73 75 63 68 20 61 6e 20 61 6e 6e 6f 75 6e 63 65 6d 65 6e 74 2c 20 79 6f 75 72 20 77 6f nt.such.an.announcement,.your.wo
288a0 72 6b 20 62 61 73 65 64 20 6f 6e 0a 20 20 20 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 73 20 6e rk.based.on.....the.Program.is.n
288c0 6f 74 20 72 65 71 75 69 72 65 64 20 74 6f 20 70 72 69 6e 74 20 61 6e 20 61 6e 6e 6f 75 6e 63 65 ot.required.to.print.an.announce
288e0 6d 65 6e 74 2e 29 0a 0a 54 68 65 73 65 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 70 70 6c 79 ment.)..These.requirements.apply
28900 20 74 6f 20 74 68 65 20 6d 6f 64 69 66 69 65 64 20 77 6f 72 6b 20 61 73 20 61 20 77 68 6f 6c 65 .to.the.modified.work.as.a.whole
28920 2e 20 20 49 66 0a 69 64 65 6e 74 69 66 69 61 62 6c 65 20 73 65 63 74 69 6f 6e 73 20 6f 66 20 74 ...If.identifiable.sections.of.t
28940 68 61 74 20 77 6f 72 6b 20 61 72 65 20 6e 6f 74 20 64 65 72 69 76 65 64 20 66 72 6f 6d 20 74 68 hat.work.are.not.derived.from.th
28960 65 20 50 72 6f 67 72 61 6d 2c 0a 61 6e 64 20 63 61 6e 20 62 65 20 72 65 61 73 6f 6e 61 62 6c 79 e.Program,.and.can.be.reasonably
28980 20 63 6f 6e 73 69 64 65 72 65 64 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 61 6e 64 20 73 65 70 61 .considered.independent.and.sepa
289a0 72 61 74 65 20 77 6f 72 6b 73 20 69 6e 0a 74 68 65 6d 73 65 6c 76 65 73 2c 20 74 68 65 6e 20 74 rate.works.in.themselves,.then.t
289c0 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 61 6e 64 20 69 74 73 20 74 65 72 6d 73 2c 20 64 6f 20 6e his.License,.and.its.terms,.do.n
289e0 6f 74 20 61 70 70 6c 79 20 74 6f 20 74 68 6f 73 65 0a 73 65 63 74 69 6f 6e 73 20 77 68 65 6e 20 ot.apply.to.those.sections.when.
28a00 79 6f 75 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 6d 20 61 73 20 73 65 70 61 72 61 74 65 20 you.distribute.them.as.separate.
28a20 77 6f 72 6b 73 2e 20 20 42 75 74 20 77 68 65 6e 20 79 6f 75 0a 64 69 73 74 72 69 62 75 74 65 20 works...But.when.you.distribute.
28a40 74 68 65 20 73 61 6d 65 20 73 65 63 74 69 6f 6e 73 20 61 73 20 70 61 72 74 20 6f 66 20 61 20 77 the.same.sections.as.part.of.a.w
28a60 68 6f 6c 65 20 77 68 69 63 68 20 69 73 20 61 20 77 6f 72 6b 20 62 61 73 65 64 0a 6f 6e 20 74 68 hole.which.is.a.work.based.on.th
28a80 65 20 50 72 6f 67 72 61 6d 2c 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 74 e.Program,.the.distribution.of.t
28aa0 68 65 20 77 68 6f 6c 65 20 6d 75 73 74 20 62 65 20 6f 6e 20 74 68 65 20 74 65 72 6d 73 20 6f 66 he.whole.must.be.on.the.terms.of
28ac0 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 77 68 6f 73 65 20 70 65 72 6d 69 73 73 69 6f 6e 73 .this.License,.whose.permissions
28ae0 20 66 6f 72 20 6f 74 68 65 72 20 6c 69 63 65 6e 73 65 65 73 20 65 78 74 65 6e 64 20 74 6f 20 74 .for.other.licensees.extend.to.t
28b00 68 65 0a 65 6e 74 69 72 65 20 77 68 6f 6c 65 2c 20 61 6e 64 20 74 68 75 73 20 74 6f 20 65 61 63 he.entire.whole,.and.thus.to.eac
28b20 68 20 61 6e 64 20 65 76 65 72 79 20 70 61 72 74 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 h.and.every.part.regardless.of.w
28b40 68 6f 20 77 72 6f 74 65 20 69 74 2e 0a 0a 54 68 75 73 2c 20 69 74 20 69 73 20 6e 6f 74 20 74 68 ho.wrote.it...Thus,.it.is.not.th
28b60 65 20 69 6e 74 65 6e 74 20 6f 66 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 74 6f 20 63 6c 61 69 e.intent.of.this.section.to.clai
28b80 6d 20 72 69 67 68 74 73 20 6f 72 20 63 6f 6e 74 65 73 74 0a 79 6f 75 72 20 72 69 67 68 74 73 20 m.rights.or.contest.your.rights.
28ba0 74 6f 20 77 6f 72 6b 20 77 72 69 74 74 65 6e 20 65 6e 74 69 72 65 6c 79 20 62 79 20 79 6f 75 3b to.work.written.entirely.by.you;
28bc0 20 72 61 74 68 65 72 2c 20 74 68 65 20 69 6e 74 65 6e 74 20 69 73 20 74 6f 0a 65 78 65 72 63 69 .rather,.the.intent.is.to.exerci
28be0 73 65 20 74 68 65 20 72 69 67 68 74 20 74 6f 20 63 6f 6e 74 72 6f 6c 20 74 68 65 20 64 69 73 74 se.the.right.to.control.the.dist
28c00 72 69 62 75 74 69 6f 6e 20 6f 66 20 64 65 72 69 76 61 74 69 76 65 20 6f 72 0a 63 6f 6c 6c 65 63 ribution.of.derivative.or.collec
28c20 74 69 76 65 20 77 6f 72 6b 73 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 2e tive.works.based.on.the.Program.
28c40 0a 0a 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20 6d 65 72 65 20 61 67 67 72 65 67 61 74 69 6f 6e 20 ..In.addition,.mere.aggregation.
28c60 6f 66 20 61 6e 6f 74 68 65 72 20 77 6f 72 6b 20 6e 6f 74 20 62 61 73 65 64 20 6f 6e 20 74 68 65 of.another.work.not.based.on.the
28c80 20 50 72 6f 67 72 61 6d 0a 77 69 74 68 20 74 68 65 20 50 72 6f 67 72 61 6d 20 28 6f 72 20 77 69 .Program.with.the.Program.(or.wi
28ca0 74 68 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 29 20 th.a.work.based.on.the.Program).
28cc0 6f 6e 20 61 20 76 6f 6c 75 6d 65 20 6f 66 0a 61 20 73 74 6f 72 61 67 65 20 6f 72 20 64 69 73 74 on.a.volume.of.a.storage.or.dist
28ce0 72 69 62 75 74 69 6f 6e 20 6d 65 64 69 75 6d 20 64 6f 65 73 20 6e 6f 74 20 62 72 69 6e 67 20 74 ribution.medium.does.not.bring.t
28d00 68 65 20 6f 74 68 65 72 20 77 6f 72 6b 20 75 6e 64 65 72 0a 74 68 65 20 73 63 6f 70 65 20 6f 66 he.other.work.under.the.scope.of
28d20 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 33 2e 20 59 6f 75 20 6d 61 79 20 63 6f 70 .this.License.....3..You.may.cop
28d40 79 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 28 6f 72 y.and.distribute.the.Program.(or
28d60 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 69 74 2c 0a 75 6e 64 65 72 20 53 65 63 74 69 .a.work.based.on.it,.under.Secti
28d80 6f 6e 20 32 29 20 69 6e 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 6f 72 20 65 78 65 63 75 74 61 62 on.2).in.object.code.or.executab
28da0 6c 65 20 66 6f 72 6d 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 0a 53 65 63 74 69 le.form.under.the.terms.of.Secti
28dc0 6f 6e 73 20 31 20 61 6e 64 20 32 20 61 62 6f 76 65 20 70 72 6f 76 69 64 65 64 20 74 68 61 74 20 ons.1.and.2.above.provided.that.
28de0 79 6f 75 20 61 6c 73 6f 20 64 6f 20 6f 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 you.also.do.one.of.the.following
28e00 3a 0a 0a 20 20 20 20 61 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 74 20 77 69 74 68 20 74 68 65 20 :......a).Accompany.it.with.the.
28e20 63 6f 6d 70 6c 65 74 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 6d 61 63 68 69 6e 65 2d 72 complete.corresponding.machine-r
28e40 65 61 64 61 62 6c 65 0a 20 20 20 20 73 6f 75 72 63 65 20 63 6f 64 65 2c 20 77 68 69 63 68 20 6d eadable.....source.code,.which.m
28e60 75 73 74 20 62 65 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 ust.be.distributed.under.the.ter
28e80 6d 73 20 6f 66 20 53 65 63 74 69 6f 6e 73 0a 20 20 20 20 31 20 61 6e 64 20 32 20 61 62 6f 76 65 ms.of.Sections.....1.and.2.above
28ea0 20 6f 6e 20 61 20 6d 65 64 69 75 6d 20 63 75 73 74 6f 6d 61 72 69 6c 79 20 75 73 65 64 20 66 6f .on.a.medium.customarily.used.fo
28ec0 72 20 73 6f 66 74 77 61 72 65 20 69 6e 74 65 72 63 68 61 6e 67 65 3b 20 6f 72 2c 0a 0a 20 20 20 r.software.interchange;.or,.....
28ee0 20 62 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 74 20 77 69 74 68 20 61 20 77 72 69 74 74 65 6e 20 .b).Accompany.it.with.a.written.
28f00 6f 66 66 65 72 2c 20 76 61 6c 69 64 20 66 6f 72 20 61 74 20 6c 65 61 73 74 20 74 68 72 65 65 0a offer,.valid.for.at.least.three.
28f20 20 20 20 20 79 65 61 72 73 2c 20 74 6f 20 67 69 76 65 20 61 6e 79 20 74 68 69 72 64 20 70 61 72 ....years,.to.give.any.third.par
28f40 74 79 2c 20 66 6f 72 20 61 20 63 68 61 72 67 65 20 6e 6f 20 6d 6f 72 65 20 74 68 61 6e 20 79 6f ty,.for.a.charge.no.more.than.yo
28f60 75 72 0a 20 20 20 20 63 6f 73 74 20 6f 66 20 70 68 79 73 69 63 61 6c 6c 79 20 70 65 72 66 6f 72 ur.....cost.of.physically.perfor
28f80 6d 69 6e 67 20 73 6f 75 72 63 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 2c 20 61 20 63 6f 6d 70 ming.source.distribution,.a.comp
28fa0 6c 65 74 65 0a 20 20 20 20 6d 61 63 68 69 6e 65 2d 72 65 61 64 61 62 6c 65 20 63 6f 70 79 20 6f lete.....machine-readable.copy.o
28fc0 66 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 73 6f 75 72 63 65 20 63 6f 64 65 2c f.the.corresponding.source.code,
28fe0 20 74 6f 20 62 65 0a 20 20 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 .to.be.....distributed.under.the
29000 20 74 65 72 6d 73 20 6f 66 20 53 65 63 74 69 6f 6e 73 20 31 20 61 6e 64 20 32 20 61 62 6f 76 65 .terms.of.Sections.1.and.2.above
29020 20 6f 6e 20 61 20 6d 65 64 69 75 6d 0a 20 20 20 20 63 75 73 74 6f 6d 61 72 69 6c 79 20 75 73 65 .on.a.medium.....customarily.use
29040 64 20 66 6f 72 20 73 6f 66 74 77 61 72 65 20 69 6e 74 65 72 63 68 61 6e 67 65 3b 20 6f 72 2c 0a d.for.software.interchange;.or,.
29060 0a 20 20 20 20 63 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 74 20 77 69 74 68 20 74 68 65 20 69 6e .....c).Accompany.it.with.the.in
29080 66 6f 72 6d 61 74 69 6f 6e 20 79 6f 75 20 72 65 63 65 69 76 65 64 20 61 73 20 74 6f 20 74 68 65 formation.you.received.as.to.the
290a0 20 6f 66 66 65 72 0a 20 20 20 20 74 6f 20 64 69 73 74 72 69 62 75 74 65 20 63 6f 72 72 65 73 70 .offer.....to.distribute.corresp
290c0 6f 6e 64 69 6e 67 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 20 28 54 68 69 73 20 61 6c 74 65 72 onding.source.code...(This.alter
290e0 6e 61 74 69 76 65 20 69 73 0a 20 20 20 20 61 6c 6c 6f 77 65 64 20 6f 6e 6c 79 20 66 6f 72 20 6e native.is.....allowed.only.for.n
29100 6f 6e 63 6f 6d 6d 65 72 63 69 61 6c 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 20 6f 6e oncommercial.distribution.and.on
29120 6c 79 20 69 66 20 79 6f 75 0a 20 20 20 20 72 65 63 65 69 76 65 64 20 74 68 65 20 70 72 6f 67 72 ly.if.you.....received.the.progr
29140 61 6d 20 69 6e 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 6f 72 20 65 78 65 63 75 74 61 62 6c 65 20 am.in.object.code.or.executable.
29160 66 6f 72 6d 20 77 69 74 68 20 73 75 63 68 0a 20 20 20 20 61 6e 20 6f 66 66 65 72 2c 20 69 6e 20 form.with.such.....an.offer,.in.
29180 61 63 63 6f 72 64 20 77 69 74 68 20 53 75 62 73 65 63 74 69 6f 6e 20 62 20 61 62 6f 76 65 2e 29 accord.with.Subsection.b.above.)
291a0 0a 0a 54 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 6f 72 20 61 20 77 6f 72 6b 20 6d 65 61 ..The.source.code.for.a.work.mea
291c0 6e 73 20 74 68 65 20 70 72 65 66 65 72 72 65 64 20 66 6f 72 6d 20 6f 66 20 74 68 65 20 77 6f 72 ns.the.preferred.form.of.the.wor
291e0 6b 20 66 6f 72 0a 6d 61 6b 69 6e 67 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 74 6f 20 69 74 k.for.making.modifications.to.it
29200 2e 20 20 46 6f 72 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 20 77 6f 72 6b 2c 20 63 6f 6d 70 6c ...For.an.executable.work,.compl
29220 65 74 65 20 73 6f 75 72 63 65 0a 63 6f 64 65 20 6d 65 61 6e 73 20 61 6c 6c 20 74 68 65 20 73 6f ete.source.code.means.all.the.so
29240 75 72 63 65 20 63 6f 64 65 20 66 6f 72 20 61 6c 6c 20 6d 6f 64 75 6c 65 73 20 69 74 20 63 6f 6e urce.code.for.all.modules.it.con
29260 74 61 69 6e 73 2c 20 70 6c 75 73 20 61 6e 79 0a 61 73 73 6f 63 69 61 74 65 64 20 69 6e 74 65 72 tains,.plus.any.associated.inter
29280 66 61 63 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 66 69 6c 65 73 2c 20 70 6c 75 73 20 74 68 65 20 face.definition.files,.plus.the.
292a0 73 63 72 69 70 74 73 20 75 73 65 64 20 74 6f 0a 63 6f 6e 74 72 6f 6c 20 63 6f 6d 70 69 6c 61 74 scripts.used.to.control.compilat
292c0 69 6f 6e 20 61 6e 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 65 78 65 63 ion.and.installation.of.the.exec
292e0 75 74 61 62 6c 65 2e 20 20 48 6f 77 65 76 65 72 2c 20 61 73 20 61 0a 73 70 65 63 69 61 6c 20 65 utable...However,.as.a.special.e
29300 78 63 65 70 74 69 6f 6e 2c 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 64 69 73 74 72 69 xception,.the.source.code.distri
29320 62 75 74 65 64 20 6e 65 65 64 20 6e 6f 74 20 69 6e 63 6c 75 64 65 0a 61 6e 79 74 68 69 6e 67 20 buted.need.not.include.anything.
29340 74 68 61 74 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 64 69 73 74 72 69 62 75 74 65 64 20 28 69 6e that.is.normally.distributed.(in
29360 20 65 69 74 68 65 72 20 73 6f 75 72 63 65 20 6f 72 20 62 69 6e 61 72 79 0a 66 6f 72 6d 29 20 77 .either.source.or.binary.form).w
29380 69 74 68 20 74 68 65 20 6d 61 6a 6f 72 20 63 6f 6d 70 6f 6e 65 6e 74 73 20 28 63 6f 6d 70 69 6c ith.the.major.components.(compil
293a0 65 72 2c 20 6b 65 72 6e 65 6c 2c 20 61 6e 64 20 73 6f 20 6f 6e 29 20 6f 66 20 74 68 65 0a 6f 70 er,.kernel,.and.so.on).of.the.op
293c0 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 6f 6e 20 77 68 69 63 68 20 74 68 65 20 65 78 65 63 erating.system.on.which.the.exec
293e0 75 74 61 62 6c 65 20 72 75 6e 73 2c 20 75 6e 6c 65 73 73 20 74 68 61 74 20 63 6f 6d 70 6f 6e 65 utable.runs,.unless.that.compone
29400 6e 74 0a 69 74 73 65 6c 66 20 61 63 63 6f 6d 70 61 6e 69 65 73 20 74 68 65 20 65 78 65 63 75 74 nt.itself.accompanies.the.execut
29420 61 62 6c 65 2e 0a 0a 49 66 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 65 78 65 63 75 74 able...If.distribution.of.execut
29440 61 62 6c 65 20 6f 72 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 69 73 20 6d 61 64 65 20 62 79 20 6f able.or.object.code.is.made.by.o
29460 66 66 65 72 69 6e 67 0a 61 63 63 65 73 73 20 74 6f 20 63 6f 70 79 20 66 72 6f 6d 20 61 20 64 65 ffering.access.to.copy.from.a.de
29480 73 69 67 6e 61 74 65 64 20 70 6c 61 63 65 2c 20 74 68 65 6e 20 6f 66 66 65 72 69 6e 67 20 65 71 signated.place,.then.offering.eq
294a0 75 69 76 61 6c 65 6e 74 0a 61 63 63 65 73 73 20 74 6f 20 63 6f 70 79 20 74 68 65 20 73 6f 75 72 uivalent.access.to.copy.the.sour
294c0 63 65 20 63 6f 64 65 20 66 72 6f 6d 20 74 68 65 20 73 61 6d 65 20 70 6c 61 63 65 20 63 6f 75 6e ce.code.from.the.same.place.coun
294e0 74 73 20 61 73 0a 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 74 68 65 20 73 6f 75 72 63 65 ts.as.distribution.of.the.source
29500 20 63 6f 64 65 2c 20 65 76 65 6e 20 74 68 6f 75 67 68 20 74 68 69 72 64 20 70 61 72 74 69 65 73 .code,.even.though.third.parties
29520 20 61 72 65 20 6e 6f 74 0a 63 6f 6d 70 65 6c 6c 65 64 20 74 6f 20 63 6f 70 79 20 74 68 65 20 73 .are.not.compelled.to.copy.the.s
29540 6f 75 72 63 65 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 6f 62 6a 65 63 74 20 63 6f 64 65 ource.along.with.the.object.code
29560 2e 0a 0a 20 20 34 2e 20 59 6f 75 20 6d 61 79 20 6e 6f 74 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 .....4..You.may.not.copy,.modify
29580 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 6f 72 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 ,.sublicense,.or.distribute.the.
295a0 50 72 6f 67 72 61 6d 0a 65 78 63 65 70 74 20 61 73 20 65 78 70 72 65 73 73 6c 79 20 70 72 6f 76 Program.except.as.expressly.prov
295c0 69 64 65 64 20 75 6e 64 65 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 20 20 41 6e 79 20 61 74 ided.under.this.License...Any.at
295e0 74 65 6d 70 74 0a 6f 74 68 65 72 77 69 73 65 20 74 6f 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c tempt.otherwise.to.copy,.modify,
29600 20 73 75 62 6c 69 63 65 6e 73 65 20 6f 72 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 72 .sublicense.or.distribute.the.Pr
29620 6f 67 72 61 6d 20 69 73 0a 76 6f 69 64 2c 20 61 6e 64 20 77 69 6c 6c 20 61 75 74 6f 6d 61 74 69 ogram.is.void,.and.will.automati
29640 63 61 6c 6c 79 20 74 65 72 6d 69 6e 61 74 65 20 79 6f 75 72 20 72 69 67 68 74 73 20 75 6e 64 65 cally.terminate.your.rights.unde
29660 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 48 6f 77 65 76 65 72 2c 20 70 61 72 74 69 65 73 r.this.License..However,.parties
29680 20 77 68 6f 20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 63 6f 70 69 65 73 2c 20 6f 72 20 72 69 .who.have.received.copies,.or.ri
296a0 67 68 74 73 2c 20 66 72 6f 6d 20 79 6f 75 20 75 6e 64 65 72 0a 74 68 69 73 20 4c 69 63 65 6e 73 ghts,.from.you.under.this.Licens
296c0 65 20 77 69 6c 6c 20 6e 6f 74 20 68 61 76 65 20 74 68 65 69 72 20 6c 69 63 65 6e 73 65 73 20 74 e.will.not.have.their.licenses.t
296e0 65 72 6d 69 6e 61 74 65 64 20 73 6f 20 6c 6f 6e 67 20 61 73 20 73 75 63 68 0a 70 61 72 74 69 65 erminated.so.long.as.such.partie
29700 73 20 72 65 6d 61 69 6e 20 69 6e 20 66 75 6c 6c 20 63 6f 6d 70 6c 69 61 6e 63 65 2e 0a 0a 20 20 s.remain.in.full.compliance.....
29720 35 2e 20 59 6f 75 20 61 72 65 20 6e 6f 74 20 72 65 71 75 69 72 65 64 20 74 6f 20 61 63 63 65 70 5..You.are.not.required.to.accep
29740 74 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 73 69 6e 63 65 20 79 6f 75 20 68 61 76 65 20 6e t.this.License,.since.you.have.n
29760 6f 74 0a 73 69 67 6e 65 64 20 69 74 2e 20 20 48 6f 77 65 76 65 72 2c 20 6e 6f 74 68 69 6e 67 20 ot.signed.it...However,.nothing.
29780 65 6c 73 65 20 67 72 61 6e 74 73 20 79 6f 75 20 70 65 72 6d 69 73 73 69 6f 6e 20 74 6f 20 6d 6f else.grants.you.permission.to.mo
297a0 64 69 66 79 20 6f 72 0a 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f dify.or.distribute.the.Program.o
297c0 72 20 69 74 73 20 64 65 72 69 76 61 74 69 76 65 20 77 6f 72 6b 73 2e 20 20 54 68 65 73 65 20 61 r.its.derivative.works...These.a
297e0 63 74 69 6f 6e 73 20 61 72 65 0a 70 72 6f 68 69 62 69 74 65 64 20 62 79 20 6c 61 77 20 69 66 20 ctions.are.prohibited.by.law.if.
29800 79 6f 75 20 64 6f 20 6e 6f 74 20 61 63 63 65 70 74 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 20 you.do.not.accept.this.License..
29820 20 54 68 65 72 65 66 6f 72 65 2c 20 62 79 0a 6d 6f 64 69 66 79 69 6e 67 20 6f 72 20 64 69 73 74 .Therefore,.by.modifying.or.dist
29840 72 69 62 75 74 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 28 6f 72 20 61 6e 79 20 77 6f 72 ributing.the.Program.(or.any.wor
29860 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 0a 50 72 6f 67 72 61 6d 29 2c 20 79 6f 75 20 69 6e 64 k.based.on.the.Program),.you.ind
29880 69 63 61 74 65 20 79 6f 75 72 20 61 63 63 65 70 74 61 6e 63 65 20 6f 66 20 74 68 69 73 20 4c 69 icate.your.acceptance.of.this.Li
298a0 63 65 6e 73 65 20 74 6f 20 64 6f 20 73 6f 2c 20 61 6e 64 0a 61 6c 6c 20 69 74 73 20 74 65 72 6d cense.to.do.so,.and.all.its.term
298c0 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 20 66 6f 72 20 63 6f 70 79 69 6e 67 2c 20 64 69 s.and.conditions.for.copying,.di
298e0 73 74 72 69 62 75 74 69 6e 67 20 6f 72 20 6d 6f 64 69 66 79 69 6e 67 0a 74 68 65 20 50 72 6f 67 stributing.or.modifying.the.Prog
29900 72 61 6d 20 6f 72 20 77 6f 72 6b 73 20 62 61 73 65 64 20 6f 6e 20 69 74 2e 0a 0a 20 20 36 2e 20 ram.or.works.based.on.it.....6..
29920 45 61 63 68 20 74 69 6d 65 20 79 6f 75 20 72 65 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 Each.time.you.redistribute.the.P
29940 72 6f 67 72 61 6d 20 28 6f 72 20 61 6e 79 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 rogram.(or.any.work.based.on.the
29960 0a 50 72 6f 67 72 61 6d 29 2c 20 74 68 65 20 72 65 63 69 70 69 65 6e 74 20 61 75 74 6f 6d 61 74 .Program),.the.recipient.automat
29980 69 63 61 6c 6c 79 20 72 65 63 65 69 76 65 73 20 61 20 6c 69 63 65 6e 73 65 20 66 72 6f 6d 20 74 ically.receives.a.license.from.t
299a0 68 65 0a 6f 72 69 67 69 6e 61 6c 20 6c 69 63 65 6e 73 6f 72 20 74 6f 20 63 6f 70 79 2c 20 64 69 he.original.licensor.to.copy,.di
299c0 73 74 72 69 62 75 74 65 20 6f 72 20 6d 6f 64 69 66 79 20 74 68 65 20 50 72 6f 67 72 61 6d 20 73 stribute.or.modify.the.Program.s
299e0 75 62 6a 65 63 74 20 74 6f 0a 74 68 65 73 65 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 ubject.to.these.terms.and.condit
29a00 69 6f 6e 73 2e 20 20 59 6f 75 20 6d 61 79 20 6e 6f 74 20 69 6d 70 6f 73 65 20 61 6e 79 20 66 75 ions...You.may.not.impose.any.fu
29a20 72 74 68 65 72 0a 72 65 73 74 72 69 63 74 69 6f 6e 73 20 6f 6e 20 74 68 65 20 72 65 63 69 70 69 rther.restrictions.on.the.recipi
29a40 65 6e 74 73 27 20 65 78 65 72 63 69 73 65 20 6f 66 20 74 68 65 20 72 69 67 68 74 73 20 67 72 61 ents'.exercise.of.the.rights.gra
29a60 6e 74 65 64 20 68 65 72 65 69 6e 2e 0a 59 6f 75 20 61 72 65 20 6e 6f 74 20 72 65 73 70 6f 6e 73 nted.herein..You.are.not.respons
29a80 69 62 6c 65 20 66 6f 72 20 65 6e 66 6f 72 63 69 6e 67 20 63 6f 6d 70 6c 69 61 6e 63 65 20 62 79 ible.for.enforcing.compliance.by
29aa0 20 74 68 69 72 64 20 70 61 72 74 69 65 73 20 74 6f 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a .third.parties.to.this.License..
29ac0 0a 20 20 37 2e 20 49 66 2c 20 61 73 20 61 20 63 6f 6e 73 65 71 75 65 6e 63 65 20 6f 66 20 61 20 ...7..If,.as.a.consequence.of.a.
29ae0 63 6f 75 72 74 20 6a 75 64 67 6d 65 6e 74 20 6f 72 20 61 6c 6c 65 67 61 74 69 6f 6e 20 6f 66 20 court.judgment.or.allegation.of.
29b00 70 61 74 65 6e 74 0a 69 6e 66 72 69 6e 67 65 6d 65 6e 74 20 6f 72 20 66 6f 72 20 61 6e 79 20 6f patent.infringement.or.for.any.o
29b20 74 68 65 72 20 72 65 61 73 6f 6e 20 28 6e 6f 74 20 6c 69 6d 69 74 65 64 20 74 6f 20 70 61 74 65 ther.reason.(not.limited.to.pate
29b40 6e 74 20 69 73 73 75 65 73 29 2c 0a 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 69 6d 70 6f 73 nt.issues),.conditions.are.impos
29b60 65 64 20 6f 6e 20 79 6f 75 20 28 77 68 65 74 68 65 72 20 62 79 20 63 6f 75 72 74 20 6f 72 64 65 ed.on.you.(whether.by.court.orde
29b80 72 2c 20 61 67 72 65 65 6d 65 6e 74 20 6f 72 0a 6f 74 68 65 72 77 69 73 65 29 20 74 68 61 74 20 r,.agreement.or.otherwise).that.
29ba0 63 6f 6e 74 72 61 64 69 63 74 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 73 20 6f 66 20 74 68 69 contradict.the.conditions.of.thi
29bc0 73 20 4c 69 63 65 6e 73 65 2c 20 74 68 65 79 20 64 6f 20 6e 6f 74 0a 65 78 63 75 73 65 20 79 6f s.License,.they.do.not.excuse.yo
29be0 75 20 66 72 6f 6d 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 73 20 6f 66 20 74 68 69 73 20 4c 69 u.from.the.conditions.of.this.Li
29c00 63 65 6e 73 65 2e 20 20 49 66 20 79 6f 75 20 63 61 6e 6e 6f 74 0a 64 69 73 74 72 69 62 75 74 65 cense...If.you.cannot.distribute
29c20 20 73 6f 20 61 73 20 74 6f 20 73 61 74 69 73 66 79 20 73 69 6d 75 6c 74 61 6e 65 6f 75 73 6c 79 .so.as.to.satisfy.simultaneously
29c40 20 79 6f 75 72 20 6f 62 6c 69 67 61 74 69 6f 6e 73 20 75 6e 64 65 72 20 74 68 69 73 0a 4c 69 63 .your.obligations.under.this.Lic
29c60 65 6e 73 65 20 61 6e 64 20 61 6e 79 20 6f 74 68 65 72 20 70 65 72 74 69 6e 65 6e 74 20 6f 62 6c ense.and.any.other.pertinent.obl
29c80 69 67 61 74 69 6f 6e 73 2c 20 74 68 65 6e 20 61 73 20 61 20 63 6f 6e 73 65 71 75 65 6e 63 65 20 igations,.then.as.a.consequence.
29ca0 79 6f 75 0a 6d 61 79 20 6e 6f 74 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 you.may.not.distribute.the.Progr
29cc0 61 6d 20 61 74 20 61 6c 6c 2e 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 61 20 70 61 am.at.all...For.example,.if.a.pa
29ce0 74 65 6e 74 0a 6c 69 63 65 6e 73 65 20 77 6f 75 6c 64 20 6e 6f 74 20 70 65 72 6d 69 74 20 72 6f tent.license.would.not.permit.ro
29d00 79 61 6c 74 79 2d 66 72 65 65 20 72 65 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 74 68 65 yalty-free.redistribution.of.the
29d20 20 50 72 6f 67 72 61 6d 20 62 79 0a 61 6c 6c 20 74 68 6f 73 65 20 77 68 6f 20 72 65 63 65 69 76 .Program.by.all.those.who.receiv
29d40 65 20 63 6f 70 69 65 73 20 64 69 72 65 63 74 6c 79 20 6f 72 20 69 6e 64 69 72 65 63 74 6c 79 20 e.copies.directly.or.indirectly.
29d60 74 68 72 6f 75 67 68 20 79 6f 75 2c 20 74 68 65 6e 0a 74 68 65 20 6f 6e 6c 79 20 77 61 79 20 79 through.you,.then.the.only.way.y
29d80 6f 75 20 63 6f 75 6c 64 20 73 61 74 69 73 66 79 20 62 6f 74 68 20 69 74 20 61 6e 64 20 74 68 69 ou.could.satisfy.both.it.and.thi
29da0 73 20 4c 69 63 65 6e 73 65 20 77 6f 75 6c 64 20 62 65 20 74 6f 0a 72 65 66 72 61 69 6e 20 65 6e s.License.would.be.to.refrain.en
29dc0 74 69 72 65 6c 79 20 66 72 6f 6d 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 74 68 65 20 tirely.from.distribution.of.the.
29de0 50 72 6f 67 72 61 6d 2e 0a 0a 49 66 20 61 6e 79 20 70 6f 72 74 69 6f 6e 20 6f 66 20 74 68 69 73 Program...If.any.portion.of.this
29e00 20 73 65 63 74 69 6f 6e 20 69 73 20 68 65 6c 64 20 69 6e 76 61 6c 69 64 20 6f 72 20 75 6e 65 6e .section.is.held.invalid.or.unen
29e20 66 6f 72 63 65 61 62 6c 65 20 75 6e 64 65 72 0a 61 6e 79 20 70 61 72 74 69 63 75 6c 61 72 20 63 forceable.under.any.particular.c
29e40 69 72 63 75 6d 73 74 61 6e 63 65 2c 20 74 68 65 20 62 61 6c 61 6e 63 65 20 6f 66 20 74 68 65 20 ircumstance,.the.balance.of.the.
29e60 73 65 63 74 69 6f 6e 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 0a 61 70 70 6c 79 20 61 6e 64 section.is.intended.to.apply.and
29e80 20 74 68 65 20 73 65 63 74 69 6f 6e 20 61 73 20 61 20 77 68 6f 6c 65 20 69 73 20 69 6e 74 65 6e .the.section.as.a.whole.is.inten
29ea0 64 65 64 20 74 6f 20 61 70 70 6c 79 20 69 6e 20 6f 74 68 65 72 0a 63 69 72 63 75 6d 73 74 61 6e ded.to.apply.in.other.circumstan
29ec0 63 65 73 2e 0a 0a 49 74 20 69 73 20 6e 6f 74 20 74 68 65 20 70 75 72 70 6f 73 65 20 6f 66 20 74 ces...It.is.not.the.purpose.of.t
29ee0 68 69 73 20 73 65 63 74 69 6f 6e 20 74 6f 20 69 6e 64 75 63 65 20 79 6f 75 20 74 6f 20 69 6e 66 his.section.to.induce.you.to.inf
29f00 72 69 6e 67 65 20 61 6e 79 0a 70 61 74 65 6e 74 73 20 6f 72 20 6f 74 68 65 72 20 70 72 6f 70 65 ringe.any.patents.or.other.prope
29f20 72 74 79 20 72 69 67 68 74 20 63 6c 61 69 6d 73 20 6f 72 20 74 6f 20 63 6f 6e 74 65 73 74 20 76 rty.right.claims.or.to.contest.v
29f40 61 6c 69 64 69 74 79 20 6f 66 20 61 6e 79 0a 73 75 63 68 20 63 6c 61 69 6d 73 3b 20 74 68 69 73 alidity.of.any.such.claims;.this
29f60 20 73 65 63 74 69 6f 6e 20 68 61 73 20 74 68 65 20 73 6f 6c 65 20 70 75 72 70 6f 73 65 20 6f 66 .section.has.the.sole.purpose.of
29f80 20 70 72 6f 74 65 63 74 69 6e 67 20 74 68 65 0a 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 68 65 .protecting.the.integrity.of.the
29fa0 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 73 79 73 74 .free.software.distribution.syst
29fc0 65 6d 2c 20 77 68 69 63 68 20 69 73 0a 69 6d 70 6c 65 6d 65 6e 74 65 64 20 62 79 20 70 75 62 6c em,.which.is.implemented.by.publ
29fe0 69 63 20 6c 69 63 65 6e 73 65 20 70 72 61 63 74 69 63 65 73 2e 20 20 4d 61 6e 79 20 70 65 6f 70 ic.license.practices...Many.peop
2a000 6c 65 20 68 61 76 65 20 6d 61 64 65 0a 67 65 6e 65 72 6f 75 73 20 63 6f 6e 74 72 69 62 75 74 69 le.have.made.generous.contributi
2a020 6f 6e 73 20 74 6f 20 74 68 65 20 77 69 64 65 20 72 61 6e 67 65 20 6f 66 20 73 6f 66 74 77 61 72 ons.to.the.wide.range.of.softwar
2a040 65 20 64 69 73 74 72 69 62 75 74 65 64 0a 74 68 72 6f 75 67 68 20 74 68 61 74 20 73 79 73 74 65 e.distributed.through.that.syste
2a060 6d 20 69 6e 20 72 65 6c 69 61 6e 63 65 20 6f 6e 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 70 70 6c m.in.reliance.on.consistent.appl
2a080 69 63 61 74 69 6f 6e 20 6f 66 20 74 68 61 74 0a 73 79 73 74 65 6d 3b 20 69 74 20 69 73 20 75 70 ication.of.that.system;.it.is.up
2a0a0 20 74 6f 20 74 68 65 20 61 75 74 68 6f 72 2f 64 6f 6e 6f 72 20 74 6f 20 64 65 63 69 64 65 20 69 .to.the.author/donor.to.decide.i
2a0c0 66 20 68 65 20 6f 72 20 73 68 65 20 69 73 20 77 69 6c 6c 69 6e 67 0a 74 6f 20 64 69 73 74 72 69 f.he.or.she.is.willing.to.distri
2a0e0 62 75 74 65 20 73 6f 66 74 77 61 72 65 20 74 68 72 6f 75 67 68 20 61 6e 79 20 6f 74 68 65 72 20 bute.software.through.any.other.
2a100 73 79 73 74 65 6d 20 61 6e 64 20 61 20 6c 69 63 65 6e 73 65 65 20 63 61 6e 6e 6f 74 0a 69 6d 70 system.and.a.licensee.cannot.imp
2a120 6f 73 65 20 74 68 61 74 20 63 68 6f 69 63 65 2e 0a 0a 54 68 69 73 20 73 65 63 74 69 6f 6e 20 69 ose.that.choice...This.section.i
2a140 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 6d 61 6b 65 20 74 68 6f 72 6f 75 67 68 6c 79 20 63 6c s.intended.to.make.thoroughly.cl
2a160 65 61 72 20 77 68 61 74 20 69 73 20 62 65 6c 69 65 76 65 64 20 74 6f 0a 62 65 20 61 20 63 6f 6e ear.what.is.believed.to.be.a.con
2a180 73 65 71 75 65 6e 63 65 20 6f 66 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 69 73 20 4c 69 63 sequence.of.the.rest.of.this.Lic
2a1a0 65 6e 73 65 2e 0a 0a 20 20 38 2e 20 49 66 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 ense.....8..If.the.distribution.
2a1c0 61 6e 64 2f 6f 72 20 75 73 65 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 73 20 72 65 73 and/or.use.of.the.Program.is.res
2a1e0 74 72 69 63 74 65 64 20 69 6e 0a 63 65 72 74 61 69 6e 20 63 6f 75 6e 74 72 69 65 73 20 65 69 74 tricted.in.certain.countries.eit
2a200 68 65 72 20 62 79 20 70 61 74 65 6e 74 73 20 6f 72 20 62 79 20 63 6f 70 79 72 69 67 68 74 65 64 her.by.patents.or.by.copyrighted
2a220 20 69 6e 74 65 72 66 61 63 65 73 2c 20 74 68 65 0a 6f 72 69 67 69 6e 61 6c 20 63 6f 70 79 72 69 .interfaces,.the.original.copyri
2a240 67 68 74 20 68 6f 6c 64 65 72 20 77 68 6f 20 70 6c 61 63 65 73 20 74 68 65 20 50 72 6f 67 72 61 ght.holder.who.places.the.Progra
2a260 6d 20 75 6e 64 65 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 0a 6d 61 79 20 61 64 64 20 61 6e 20 m.under.this.License.may.add.an.
2a280 65 78 70 6c 69 63 69 74 20 67 65 6f 67 72 61 70 68 69 63 61 6c 20 64 69 73 74 72 69 62 75 74 69 explicit.geographical.distributi
2a2a0 6f 6e 20 6c 69 6d 69 74 61 74 69 6f 6e 20 65 78 63 6c 75 64 69 6e 67 0a 74 68 6f 73 65 20 63 6f on.limitation.excluding.those.co
2a2c0 75 6e 74 72 69 65 73 2c 20 73 6f 20 74 68 61 74 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 69 73 untries,.so.that.distribution.is
2a2e0 20 70 65 72 6d 69 74 74 65 64 20 6f 6e 6c 79 20 69 6e 20 6f 72 20 61 6d 6f 6e 67 0a 63 6f 75 6e .permitted.only.in.or.among.coun
2a300 74 72 69 65 73 20 6e 6f 74 20 74 68 75 73 20 65 78 63 6c 75 64 65 64 2e 20 20 49 6e 20 73 75 63 tries.not.thus.excluded...In.suc
2a320 68 20 63 61 73 65 2c 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 69 6e 63 6f 72 70 6f 72 61 74 65 h.case,.this.License.incorporate
2a340 73 0a 74 68 65 20 6c 69 6d 69 74 61 74 69 6f 6e 20 61 73 20 69 66 20 77 72 69 74 74 65 6e 20 69 s.the.limitation.as.if.written.i
2a360 6e 20 74 68 65 20 62 6f 64 79 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 39 n.the.body.of.this.License.....9
2a380 2e 20 54 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 20 6d ..The.Free.Software.Foundation.m
2a3a0 61 79 20 70 75 62 6c 69 73 68 20 72 65 76 69 73 65 64 20 61 6e 64 2f 6f 72 20 6e 65 77 20 76 65 ay.publish.revised.and/or.new.ve
2a3c0 72 73 69 6f 6e 73 0a 6f 66 20 74 68 65 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 rsions.of.the.General.Public.Lic
2a3e0 65 6e 73 65 20 66 72 6f 6d 20 74 69 6d 65 20 74 6f 20 74 69 6d 65 2e 20 20 53 75 63 68 20 6e 65 ense.from.time.to.time...Such.ne
2a400 77 20 76 65 72 73 69 6f 6e 73 20 77 69 6c 6c 0a 62 65 20 73 69 6d 69 6c 61 72 20 69 6e 20 73 70 w.versions.will.be.similar.in.sp
2a420 69 72 69 74 20 74 6f 20 74 68 65 20 70 72 65 73 65 6e 74 20 76 65 72 73 69 6f 6e 2c 20 62 75 74 irit.to.the.present.version,.but
2a440 20 6d 61 79 20 64 69 66 66 65 72 20 69 6e 20 64 65 74 61 69 6c 20 74 6f 0a 61 64 64 72 65 73 73 .may.differ.in.detail.to.address
2a460 20 6e 65 77 20 70 72 6f 62 6c 65 6d 73 20 6f 72 20 63 6f 6e 63 65 72 6e 73 2e 0a 0a 45 61 63 68 .new.problems.or.concerns...Each
2a480 20 76 65 72 73 69 6f 6e 20 69 73 20 67 69 76 65 6e 20 61 20 64 69 73 74 69 6e 67 75 69 73 68 69 .version.is.given.a.distinguishi
2a4a0 6e 67 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 2e 20 20 49 66 20 74 68 65 20 50 72 6f 67 72 ng.version.number...If.the.Progr
2a4c0 61 6d 0a 73 70 65 63 69 66 69 65 73 20 61 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 am.specifies.a.version.number.of
2a4e0 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 77 68 69 63 68 20 61 70 70 6c 69 65 73 20 74 6f 20 69 .this.License.which.applies.to.i
2a500 74 20 61 6e 64 20 22 61 6e 79 0a 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 22 2c 20 79 6f 75 20 68 t.and."any.later.version",.you.h
2a520 61 76 65 20 74 68 65 20 6f 70 74 69 6f 6e 20 6f 66 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 65 20 ave.the.option.of.following.the.
2a540 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 0a 65 69 74 68 65 72 20 6f 66 20 74 terms.and.conditions.either.of.t
2a560 68 61 74 20 76 65 72 73 69 6f 6e 20 6f 72 20 6f 66 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 hat.version.or.of.any.later.vers
2a580 69 6f 6e 20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65 20 46 72 65 65 0a 53 6f 66 74 77 61 ion.published.by.the.Free.Softwa
2a5a0 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2e 20 20 49 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 64 re.Foundation...If.the.Program.d
2a5c0 6f 65 73 20 6e 6f 74 20 73 70 65 63 69 66 79 20 61 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 oes.not.specify.a.version.number
2a5e0 20 6f 66 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 79 6f 75 20 6d 61 79 20 63 68 6f 6f 73 65 .of.this.License,.you.may.choose
2a600 20 61 6e 79 20 76 65 72 73 69 6f 6e 20 65 76 65 72 20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 .any.version.ever.published.by.t
2a620 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 0a 46 6f 75 6e 64 61 74 69 6f 6e 2e 0a 0a 20 20 he.Free.Software.Foundation.....
2a640 31 30 2e 20 49 66 20 79 6f 75 20 77 69 73 68 20 74 6f 20 69 6e 63 6f 72 70 6f 72 61 74 65 20 70 10..If.you.wish.to.incorporate.p
2a660 61 72 74 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 6e 74 6f 20 6f 74 68 65 72 20 66 arts.of.the.Program.into.other.f
2a680 72 65 65 0a 70 72 6f 67 72 61 6d 73 20 77 68 6f 73 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 ree.programs.whose.distribution.
2a6a0 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 64 69 66 66 65 72 65 6e 74 2c 20 77 72 69 74 65 20 conditions.are.different,.write.
2a6c0 74 6f 20 74 68 65 20 61 75 74 68 6f 72 0a 74 6f 20 61 73 6b 20 66 6f 72 20 70 65 72 6d 69 73 73 to.the.author.to.ask.for.permiss
2a6e0 69 6f 6e 2e 20 20 46 6f 72 20 73 6f 66 74 77 61 72 65 20 77 68 69 63 68 20 69 73 20 63 6f 70 79 ion...For.software.which.is.copy
2a700 72 69 67 68 74 65 64 20 62 79 20 74 68 65 20 46 72 65 65 0a 53 6f 66 74 77 61 72 65 20 46 6f 75 righted.by.the.Free.Software.Fou
2a720 6e 64 61 74 69 6f 6e 2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 ndation,.write.to.the.Free.Softw
2a740 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 77 65 20 73 6f 6d 65 74 69 6d 65 73 0a 6d 61 6b are.Foundation;.we.sometimes.mak
2a760 65 20 65 78 63 65 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 69 73 2e 20 20 4f 75 72 20 64 65 63 69 e.exceptions.for.this...Our.deci
2a780 73 69 6f 6e 20 77 69 6c 6c 20 62 65 20 67 75 69 64 65 64 20 62 79 20 74 68 65 20 74 77 6f 20 67 sion.will.be.guided.by.the.two.g
2a7a0 6f 61 6c 73 0a 6f 66 20 70 72 65 73 65 72 76 69 6e 67 20 74 68 65 20 66 72 65 65 20 73 74 61 74 oals.of.preserving.the.free.stat
2a7c0 75 73 20 6f 66 20 61 6c 6c 20 64 65 72 69 76 61 74 69 76 65 73 20 6f 66 20 6f 75 72 20 66 72 65 us.of.all.derivatives.of.our.fre
2a7e0 65 20 73 6f 66 74 77 61 72 65 20 61 6e 64 0a 6f 66 20 70 72 6f 6d 6f 74 69 6e 67 20 74 68 65 20 e.software.and.of.promoting.the.
2a800 73 68 61 72 69 6e 67 20 61 6e 64 20 72 65 75 73 65 20 6f 66 20 73 6f 66 74 77 61 72 65 20 67 65 sharing.and.reuse.of.software.ge
2a820 6e 65 72 61 6c 6c 79 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nerally.........................
2a840 20 20 20 20 20 20 4e 4f 20 57 41 52 52 41 4e 54 59 0a 0a 20 20 31 31 2e 20 42 45 43 41 55 53 45 ......NO.WARRANTY....11..BECAUSE
2a860 20 54 48 45 20 50 52 4f 47 52 41 4d 20 49 53 20 4c 49 43 45 4e 53 45 44 20 46 52 45 45 20 4f 46 .THE.PROGRAM.IS.LICENSED.FREE.OF
2a880 20 43 48 41 52 47 45 2c 20 54 48 45 52 45 20 49 53 20 4e 4f 20 57 41 52 52 41 4e 54 59 0a 46 4f .CHARGE,.THERE.IS.NO.WARRANTY.FO
2a8a0 52 20 54 48 45 20 50 52 4f 47 52 41 4d 2c 20 54 4f 20 54 48 45 20 45 58 54 45 4e 54 20 50 45 52 R.THE.PROGRAM,.TO.THE.EXTENT.PER
2a8c0 4d 49 54 54 45 44 20 42 59 20 41 50 50 4c 49 43 41 42 4c 45 20 4c 41 57 2e 20 20 45 58 43 45 50 MITTED.BY.APPLICABLE.LAW...EXCEP
2a8e0 54 20 57 48 45 4e 0a 4f 54 48 45 52 57 49 53 45 20 53 54 41 54 45 44 20 49 4e 20 57 52 49 54 49 T.WHEN.OTHERWISE.STATED.IN.WRITI
2a900 4e 47 20 54 48 45 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 41 4e 44 2f 4f 52 20 NG.THE.COPYRIGHT.HOLDERS.AND/OR.
2a920 4f 54 48 45 52 20 50 41 52 54 49 45 53 0a 50 52 4f 56 49 44 45 20 54 48 45 20 50 52 4f 47 52 41 OTHER.PARTIES.PROVIDE.THE.PROGRA
2a940 4d 20 22 41 53 20 49 53 22 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e M."AS.IS".WITHOUT.WARRANTY.OF.AN
2a960 59 20 4b 49 4e 44 2c 20 45 49 54 48 45 52 20 45 58 50 52 45 53 53 45 44 0a 4f 52 20 49 4d 50 4c Y.KIND,.EITHER.EXPRESSED.OR.IMPL
2a980 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 IED,.INCLUDING,.BUT.NOT.LIMITED.
2a9a0 54 4f 2c 20 54 48 45 20 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 0a 4d 45 TO,.THE.IMPLIED.WARRANTIES.OF.ME
2a9c0 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 41 4e 44 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 RCHANTABILITY.AND.FITNESS.FOR.A.
2a9e0 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 54 48 45 20 45 4e 54 49 52 45 20 PARTICULAR.PURPOSE...THE.ENTIRE.
2aa00 52 49 53 4b 20 41 53 0a 54 4f 20 54 48 45 20 51 55 41 4c 49 54 59 20 41 4e 44 20 50 45 52 46 4f RISK.AS.TO.THE.QUALITY.AND.PERFO
2aa20 52 4d 41 4e 43 45 20 4f 46 20 54 48 45 20 50 52 4f 47 52 41 4d 20 49 53 20 57 49 54 48 20 59 4f RMANCE.OF.THE.PROGRAM.IS.WITH.YO
2aa40 55 2e 20 20 53 48 4f 55 4c 44 20 54 48 45 0a 50 52 4f 47 52 41 4d 20 50 52 4f 56 45 20 44 45 46 U...SHOULD.THE.PROGRAM.PROVE.DEF
2aa60 45 43 54 49 56 45 2c 20 59 4f 55 20 41 53 53 55 4d 45 20 54 48 45 20 43 4f 53 54 20 4f 46 20 41 ECTIVE,.YOU.ASSUME.THE.COST.OF.A
2aa80 4c 4c 20 4e 45 43 45 53 53 41 52 59 20 53 45 52 56 49 43 49 4e 47 2c 0a 52 45 50 41 49 52 20 4f LL.NECESSARY.SERVICING,.REPAIR.O
2aaa0 52 20 43 4f 52 52 45 43 54 49 4f 4e 2e 0a 0a 20 20 31 32 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 R.CORRECTION.....12..IN.NO.EVENT
2aac0 20 55 4e 4c 45 53 53 20 52 45 51 55 49 52 45 44 20 42 59 20 41 50 50 4c 49 43 41 42 4c 45 20 4c .UNLESS.REQUIRED.BY.APPLICABLE.L
2aae0 41 57 20 4f 52 20 41 47 52 45 45 44 20 54 4f 20 49 4e 20 57 52 49 54 49 4e 47 0a 57 49 4c 4c 20 AW.OR.AGREED.TO.IN.WRITING.WILL.
2ab00 41 4e 59 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 2c 20 4f 52 20 41 4e 59 20 4f 54 48 ANY.COPYRIGHT.HOLDER,.OR.ANY.OTH
2ab20 45 52 20 50 41 52 54 59 20 57 48 4f 20 4d 41 59 20 4d 4f 44 49 46 59 20 41 4e 44 2f 4f 52 0a 52 ER.PARTY.WHO.MAY.MODIFY.AND/OR.R
2ab40 45 44 49 53 54 52 49 42 55 54 45 20 54 48 45 20 50 52 4f 47 52 41 4d 20 41 53 20 50 45 52 4d 49 EDISTRIBUTE.THE.PROGRAM.AS.PERMI
2ab60 54 54 45 44 20 41 42 4f 56 45 2c 20 42 45 20 4c 49 41 42 4c 45 20 54 4f 20 59 4f 55 20 46 4f 52 TTED.ABOVE,.BE.LIABLE.TO.YOU.FOR
2ab80 20 44 41 4d 41 47 45 53 2c 0a 49 4e 43 4c 55 44 49 4e 47 20 41 4e 59 20 47 45 4e 45 52 41 4c 2c .DAMAGES,.INCLUDING.ANY.GENERAL,
2aba0 20 53 50 45 43 49 41 4c 2c 20 49 4e 43 49 44 45 4e 54 41 4c 20 4f 52 20 43 4f 4e 53 45 51 55 45 .SPECIAL,.INCIDENTAL.OR.CONSEQUE
2abc0 4e 54 49 41 4c 20 44 41 4d 41 47 45 53 20 41 52 49 53 49 4e 47 0a 4f 55 54 20 4f 46 20 54 48 45 NTIAL.DAMAGES.ARISING.OUT.OF.THE
2abe0 20 55 53 45 20 4f 52 20 49 4e 41 42 49 4c 49 54 59 20 54 4f 20 55 53 45 20 54 48 45 20 50 52 4f .USE.OR.INABILITY.TO.USE.THE.PRO
2ac00 47 52 41 4d 20 28 49 4e 43 4c 55 44 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 0a GRAM.(INCLUDING.BUT.NOT.LIMITED.
2ac20 54 4f 20 4c 4f 53 53 20 4f 46 20 44 41 54 41 20 4f 52 20 44 41 54 41 20 42 45 49 4e 47 20 52 45 TO.LOSS.OF.DATA.OR.DATA.BEING.RE
2ac40 4e 44 45 52 45 44 20 49 4e 41 43 43 55 52 41 54 45 20 4f 52 20 4c 4f 53 53 45 53 20 53 55 53 54 NDERED.INACCURATE.OR.LOSSES.SUST
2ac60 41 49 4e 45 44 20 42 59 0a 59 4f 55 20 4f 52 20 54 48 49 52 44 20 50 41 52 54 49 45 53 20 4f 52 AINED.BY.YOU.OR.THIRD.PARTIES.OR
2ac80 20 41 20 46 41 49 4c 55 52 45 20 4f 46 20 54 48 45 20 50 52 4f 47 52 41 4d 20 54 4f 20 4f 50 45 .A.FAILURE.OF.THE.PROGRAM.TO.OPE
2aca0 52 41 54 45 20 57 49 54 48 20 41 4e 59 20 4f 54 48 45 52 0a 50 52 4f 47 52 41 4d 53 29 2c 20 45 RATE.WITH.ANY.OTHER.PROGRAMS),.E
2acc0 56 45 4e 20 49 46 20 53 55 43 48 20 48 4f 4c 44 45 52 20 4f 52 20 4f 54 48 45 52 20 50 41 52 54 VEN.IF.SUCH.HOLDER.OR.OTHER.PART
2ace0 59 20 48 41 53 20 42 45 45 4e 20 41 44 56 49 53 45 44 20 4f 46 20 54 48 45 0a 50 4f 53 53 49 42 Y.HAS.BEEN.ADVISED.OF.THE.POSSIB
2ad00 49 4c 49 54 59 20 4f 46 20 53 55 43 48 20 44 41 4d 41 47 45 53 2e 0a 0a 20 20 20 20 20 20 20 20 ILITY.OF.SUCH.DAMAGES...........
2ad20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 4e 44 20 4f 46 20 54 45 52 4d 53 20 41 4e 44 20 43 4f .............END.OF.TERMS.AND.CO
2ad40 4e 44 49 54 49 4f 4e 53 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 48 6f 77 20 74 6f 20 41 70 70 NDITIONS..............How.to.App
2ad60 6c 79 20 54 68 65 73 65 20 54 65 72 6d 73 20 74 6f 20 59 6f 75 72 20 4e 65 77 20 50 72 6f 67 72 ly.These.Terms.to.Your.New.Progr
2ad80 61 6d 73 0a 0a 20 20 49 66 20 79 6f 75 20 64 65 76 65 6c 6f 70 20 61 20 6e 65 77 20 70 72 6f 67 ams....If.you.develop.a.new.prog
2ada0 72 61 6d 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 20 69 74 20 74 6f 20 62 65 20 6f 66 20 74 68 ram,.and.you.want.it.to.be.of.th
2adc0 65 20 67 72 65 61 74 65 73 74 0a 70 6f 73 73 69 62 6c 65 20 75 73 65 20 74 6f 20 74 68 65 20 70 e.greatest.possible.use.to.the.p
2ade0 75 62 6c 69 63 2c 20 74 68 65 20 62 65 73 74 20 77 61 79 20 74 6f 20 61 63 68 69 65 76 65 20 74 ublic,.the.best.way.to.achieve.t
2ae00 68 69 73 20 69 73 20 74 6f 20 6d 61 6b 65 20 69 74 0a 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 his.is.to.make.it.free.software.
2ae20 77 68 69 63 68 20 65 76 65 72 79 6f 6e 65 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 which.everyone.can.redistribute.
2ae40 61 6e 64 20 63 68 61 6e 67 65 20 75 6e 64 65 72 20 74 68 65 73 65 20 74 65 72 6d 73 2e 0a 0a 20 and.change.under.these.terms....
2ae60 20 54 6f 20 64 6f 20 73 6f 2c 20 61 74 74 61 63 68 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 .To.do.so,.attach.the.following.
2ae80 6e 6f 74 69 63 65 73 20 74 6f 20 74 68 65 20 70 72 6f 67 72 61 6d 2e 20 20 49 74 20 69 73 20 73 notices.to.the.program...It.is.s
2aea0 61 66 65 73 74 0a 74 6f 20 61 74 74 61 63 68 20 74 68 65 6d 20 74 6f 20 74 68 65 20 73 74 61 72 afest.to.attach.them.to.the.star
2aec0 74 20 6f 66 20 65 61 63 68 20 73 6f 75 72 63 65 20 66 69 6c 65 20 74 6f 20 6d 6f 73 74 20 65 66 t.of.each.source.file.to.most.ef
2aee0 66 65 63 74 69 76 65 6c 79 0a 63 6f 6e 76 65 79 20 74 68 65 20 65 78 63 6c 75 73 69 6f 6e 20 6f fectively.convey.the.exclusion.o
2af00 66 20 77 61 72 72 61 6e 74 79 3b 20 61 6e 64 20 65 61 63 68 20 66 69 6c 65 20 73 68 6f 75 6c 64 f.warranty;.and.each.file.should
2af20 20 68 61 76 65 20 61 74 20 6c 65 61 73 74 0a 74 68 65 20 22 63 6f 70 79 72 69 67 68 74 22 20 6c .have.at.least.the."copyright".l
2af40 69 6e 65 20 61 6e 64 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 77 68 65 72 65 20 74 68 65 20 66 ine.and.a.pointer.to.where.the.f
2af60 75 6c 6c 20 6e 6f 74 69 63 65 20 69 73 20 66 6f 75 6e 64 2e 0a 0a 20 20 20 20 3c 6f 6e 65 20 6c ull.notice.is.found.......<one.l
2af80 69 6e 65 20 74 6f 20 67 69 76 65 20 74 68 65 20 70 72 6f 67 72 61 6d 27 73 20 6e 61 6d 65 20 61 ine.to.give.the.program's.name.a
2afa0 6e 64 20 61 20 62 72 69 65 66 20 69 64 65 61 20 6f 66 20 77 68 61 74 20 69 74 20 64 6f 65 73 2e nd.a.brief.idea.of.what.it.does.
2afc0 3e 0a 20 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 3c 79 65 61 72 3e 20 20 3c 6e 61 6d >.....Copyright.(C).<year>..<nam
2afe0 65 20 6f 66 20 61 75 74 68 6f 72 3e 0a 0a 20 20 20 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 e.of.author>......This.program.i
2b000 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 s.free.software:.you.can.redistr
2b020 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 20 20 20 69 74 20 75 6e ibute.it.and/or.modify.....it.un
2b040 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c der.the.terms.of.the.GNU.General
2b060 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64 20 62 79 0a .Public.License.as.published.by.
2b080 20 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e ....the.Free.Software.Foundation
2b0a0 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 ,.either.version.2.of.the.Licens
2b0c0 65 2c 20 6f 72 0a 20 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c e,.or.....(at.your.option).any.l
2b0e0 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 ater.version.......This.program.
2b100 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 is.distributed.in.the.hope.that.
2b120 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 20 62 75 74 20 57 49 54 48 4f it.will.be.useful,.....but.WITHO
2b140 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 UT.ANY.WARRANTY;.without.even.th
2b160 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 20 4d 45 52 43 48 41 e.implied.warranty.of.....MERCHA
2b180 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 NTABILITY.or.FITNESS.FOR.A.PARTI
2b1a0 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 20 47 4e 55 20 CULAR.PURPOSE...See.the.....GNU.
2b1c0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 General.Public.License.for.more.
2b1e0 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 details.......You.should.have.re
2b200 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
2b220 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 .Public.License.....along.with.t
2b240 68 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a his.program...If.not,.see.<http:
2b260 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 41 6c 73 6f 20 //www.gnu.org/licenses/>...Also.
2b280 61 64 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 68 6f 77 20 74 6f 20 63 6f 6e 74 61 63 add.information.on.how.to.contac
2b2a0 74 20 79 6f 75 20 62 79 20 65 6c 65 63 74 72 6f 6e 69 63 20 61 6e 64 20 70 61 70 65 72 20 6d 61 t.you.by.electronic.and.paper.ma
2b2c0 69 6c 2e 0a 0a 49 66 20 74 68 65 20 70 72 6f 67 72 61 6d 20 69 73 20 69 6e 74 65 72 61 63 74 69 il...If.the.program.is.interacti
2b2e0 76 65 2c 20 6d 61 6b 65 20 69 74 20 6f 75 74 70 75 74 20 61 20 73 68 6f 72 74 20 6e 6f 74 69 63 ve,.make.it.output.a.short.notic
2b300 65 20 6c 69 6b 65 20 74 68 69 73 0a 77 68 65 6e 20 69 74 20 73 74 61 72 74 73 20 69 6e 20 61 6e e.like.this.when.it.starts.in.an
2b320 20 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f 64 65 3a 0a 0a 20 20 20 20 47 6e 6f 6d 6f 76 69 73 .interactive.mode:......Gnomovis
2b340 69 6f 6e 20 76 65 72 73 69 6f 6e 20 36 39 2c 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 3c 79 ion.version.69,.Copyright.(C).<y
2b360 65 61 72 3e 20 20 3c 6e 61 6d 65 20 6f 66 20 61 75 74 68 6f 72 3e 0a 20 20 20 20 47 6e 6f 6d 6f ear>..<name.of.author>.....Gnomo
2b380 76 69 73 69 6f 6e 20 63 6f 6d 65 73 20 77 69 74 68 20 41 42 53 4f 4c 55 54 45 4c 59 20 4e 4f 20 vision.comes.with.ABSOLUTELY.NO.
2b3a0 57 41 52 52 41 4e 54 59 3b 20 66 6f 72 20 64 65 74 61 69 6c 73 20 74 79 70 65 20 60 73 68 6f 77 WARRANTY;.for.details.type.`show
2b3c0 20 77 27 2e 0a 20 20 20 20 54 68 69 73 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 2c 20 .w'......This.is.free.software,.
2b3e0 61 6e 64 20 79 6f 75 20 61 72 65 20 77 65 6c 63 6f 6d 65 20 74 6f 20 72 65 64 69 73 74 72 69 62 and.you.are.welcome.to.redistrib
2b400 75 74 65 20 69 74 0a 20 20 20 20 75 6e 64 65 72 20 63 65 72 74 61 69 6e 20 63 6f 6e 64 69 74 69 ute.it.....under.certain.conditi
2b420 6f 6e 73 3b 20 74 79 70 65 20 60 73 68 6f 77 20 63 27 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 0a ons;.type.`show.c'.for.details..
2b440 0a 54 68 65 20 68 79 70 6f 74 68 65 74 69 63 61 6c 20 63 6f 6d 6d 61 6e 64 73 20 60 73 68 6f 77 .The.hypothetical.commands.`show
2b460 20 77 27 20 61 6e 64 20 60 73 68 6f 77 20 63 27 20 73 68 6f 75 6c 64 20 73 68 6f 77 20 74 68 65 .w'.and.`show.c'.should.show.the
2b480 20 61 70 70 72 6f 70 72 69 61 74 65 0a 70 61 72 74 73 20 6f 66 20 74 68 65 20 47 65 6e 65 72 61 .appropriate.parts.of.the.Genera
2b4a0 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 2e 20 20 4f 66 20 63 6f 75 72 73 65 2c 20 74 68 l.Public.License...Of.course,.th
2b4c0 65 20 63 6f 6d 6d 61 6e 64 73 20 79 6f 75 20 75 73 65 20 6d 61 79 0a 62 65 20 63 61 6c 6c 65 64 e.commands.you.use.may.be.called
2b4e0 20 73 6f 6d 65 74 68 69 6e 67 20 6f 74 68 65 72 20 74 68 61 6e 20 60 73 68 6f 77 20 77 27 20 61 .something.other.than.`show.w'.a
2b500 6e 64 20 60 73 68 6f 77 20 63 27 3b 20 74 68 65 79 20 63 6f 75 6c 64 20 65 76 65 6e 20 62 65 0a nd.`show.c';.they.could.even.be.
2b520 6d 6f 75 73 65 2d 63 6c 69 63 6b 73 20 6f 72 20 6d 65 6e 75 20 69 74 65 6d 73 2d 2d 77 68 61 74 mouse-clicks.or.menu.items--what
2b540 65 76 65 72 20 73 75 69 74 73 20 79 6f 75 72 20 70 72 6f 67 72 61 6d 2e 0a 0a 59 6f 75 20 73 68 ever.suits.your.program...You.sh
2b560 6f 75 6c 64 20 61 6c 73 6f 20 67 65 74 20 79 6f 75 72 20 65 6d 70 6c 6f 79 65 72 20 28 69 66 20 ould.also.get.your.employer.(if.
2b580 79 6f 75 20 77 6f 72 6b 20 61 73 20 61 20 70 72 6f 67 72 61 6d 6d 65 72 29 20 6f 72 20 79 6f 75 you.work.as.a.programmer).or.you
2b5a0 72 0a 73 63 68 6f 6f 6c 2c 20 69 66 20 61 6e 79 2c 20 74 6f 20 73 69 67 6e 20 61 20 22 63 6f 70 r.school,.if.any,.to.sign.a."cop
2b5c0 79 72 69 67 68 74 20 64 69 73 63 6c 61 69 6d 65 72 22 20 66 6f 72 20 74 68 65 20 70 72 6f 67 72 yright.disclaimer".for.the.progr
2b5e0 61 6d 2c 20 69 66 0a 6e 65 63 65 73 73 61 72 79 2e 20 20 48 65 72 65 20 69 73 20 61 20 73 61 6d am,.if.necessary...Here.is.a.sam
2b600 70 6c 65 3b 20 61 6c 74 65 72 20 74 68 65 20 6e 61 6d 65 73 3a 0a 0a 20 20 59 6f 79 6f 64 79 6e ple;.alter.the.names:....Yoyodyn
2b620 65 2c 20 49 6e 63 2e 2c 20 68 65 72 65 62 79 20 64 69 73 63 6c 61 69 6d 73 20 61 6c 6c 20 63 6f e,.Inc.,.hereby.disclaims.all.co
2b640 70 79 72 69 67 68 74 20 69 6e 74 65 72 65 73 74 20 69 6e 20 74 68 65 20 70 72 6f 67 72 61 6d 0a pyright.interest.in.the.program.
2b660 20 20 60 47 6e 6f 6d 6f 76 69 73 69 6f 6e 27 20 28 77 68 69 63 68 20 6d 61 6b 65 73 20 70 61 73 ..`Gnomovision'.(which.makes.pas
2b680 73 65 73 20 61 74 20 63 6f 6d 70 69 6c 65 72 73 29 20 77 72 69 74 74 65 6e 20 62 79 20 4a 61 6d ses.at.compilers).written.by.Jam
2b6a0 65 73 20 48 61 63 6b 65 72 2e 0a 0a 20 20 3c 73 69 67 6e 61 74 75 72 65 20 6f 66 20 54 79 20 43 es.Hacker.....<signature.of.Ty.C
2b6c0 6f 6f 6e 3e 2c 20 31 20 41 70 72 69 6c 20 31 39 38 39 0a 20 20 54 79 20 43 6f 6f 6e 2c 20 50 72 oon>,.1.April.1989...Ty.Coon,.Pr
2b6e0 65 73 69 64 65 6e 74 20 6f 66 20 56 69 63 65 0a 0a 54 68 69 73 20 47 65 6e 65 72 61 6c 20 50 75 esident.of.Vice..This.General.Pu
2b700 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 64 6f 65 73 20 6e 6f 74 20 70 65 72 6d 69 74 20 69 6e 63 blic.License.does.not.permit.inc
2b720 6f 72 70 6f 72 61 74 69 6e 67 20 79 6f 75 72 20 70 72 6f 67 72 61 6d 20 69 6e 74 6f 0a 70 72 6f orporating.your.program.into.pro
2b740 70 72 69 65 74 61 72 79 20 70 72 6f 67 72 61 6d 73 2e 20 20 49 66 20 79 6f 75 72 20 70 72 6f 67 prietary.programs...If.your.prog
2b760 72 61 6d 20 69 73 20 61 20 73 75 62 72 6f 75 74 69 6e 65 20 6c 69 62 72 61 72 79 2c 20 79 6f 75 ram.is.a.subroutine.library,.you
2b780 20 6d 61 79 0a 63 6f 6e 73 69 64 65 72 20 69 74 20 6d 6f 72 65 20 75 73 65 66 75 6c 20 74 6f 20 .may.consider.it.more.useful.to.
2b7a0 70 65 72 6d 69 74 20 6c 69 6e 6b 69 6e 67 20 70 72 6f 70 72 69 65 74 61 72 79 20 61 70 70 6c 69 permit.linking.proprietary.appli
2b7c0 63 61 74 69 6f 6e 73 20 77 69 74 68 20 74 68 65 0a 6c 69 62 72 61 72 79 2e 20 20 49 66 20 74 68 cations.with.the.library...If.th
2b7e0 69 73 20 69 73 20 77 68 61 74 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 64 6f 2c 20 75 73 65 20 74 is.is.what.you.want.to.do,.use.t
2b800 68 65 20 47 4e 55 20 4c 65 73 73 65 72 20 47 65 6e 65 72 61 6c 0a 50 75 62 6c 69 63 20 4c 69 63 he.GNU.Lesser.General.Public.Lic
2b820 65 6e 73 65 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 00 00 ense.instead.of.this.License....
2b840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2b9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ba00 6c 7a 69 70 2d 31 2e 32 35 2f 64 65 63 6f 64 65 72 2e 63 63 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/decoder.cc............
2ba20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ba40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ba60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
2ba80 30 30 32 30 32 36 36 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 34 33 35 33 00 20 30 00 00 00 0020266.14744236057.014353..0...
2baa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bb00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
2bb20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
2bb40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
2bb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2bc00 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
2bc20 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
2bc40 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
2bc60 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
2bc80 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
2bca0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
2bcc0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
2bce0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
2bd00 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
2bd20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
2bd40 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
2bd60 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
2bd80 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
2bda0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
2bdc0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
2bde0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
2be00 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
2be20 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
2be40 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
2be60 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
2be80 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
2bea0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
2bec0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 23 64 65 /www.gnu.org/licenses/>..*/..#de
2bee0 66 69 6e 65 20 5f 46 49 4c 45 5f 4f 46 46 53 45 54 5f 42 49 54 53 20 36 34 0a 0a 23 69 6e 63 6c fine._FILE_OFFSET_BITS.64..#incl
2bf00 75 64 65 20 3c 61 6c 67 6f 72 69 74 68 6d 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 65 72 72 6e 6f ude.<algorithm>.#include.<cerrno
2bf20 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 64 69 6f 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 >.#include.<cstdio>.#include.<cs
2bf40 74 64 6c 69 62 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 tdlib>.#include.<cstring>.#inclu
2bf60 64 65 20 3c 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 76 65 63 74 6f 72 3e 0a 23 69 de.<string>.#include.<vector>.#i
2bf80 6e 63 6c 75 64 65 20 3c 73 74 64 69 6e 74 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 nclude.<stdint.h>.#include.<unis
2bfa0 74 64 2e 68 3e 0a 0a 23 69 6e 63 6c 75 64 65 20 22 6c 7a 69 70 2e 68 22 0a 23 69 6e 63 6c 75 64 td.h>..#include."lzip.h".#includ
2bfc0 65 20 22 64 65 63 6f 64 65 72 2e 68 22 0a 0a 0a 2f 2a 20 52 65 74 75 72 6e 20 74 68 65 20 6e 75 e."decoder.h".../*.Return.the.nu
2bfe0 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 72 65 61 6c 6c 79 20 72 65 61 64 2e 0a 20 20 20 49 66 mber.of.bytes.really.read.....If
2c000 20 28 76 61 6c 75 65 20 72 65 74 75 72 6e 65 64 20 3c 20 73 69 7a 65 29 20 61 6e 64 20 28 65 72 .(value.returned.<.size).and.(er
2c020 72 6e 6f 20 3d 3d 20 30 29 2c 20 6d 65 61 6e 73 20 45 4f 46 20 77 61 73 20 72 65 61 63 68 65 64 rno.==.0),.means.EOF.was.reached
2c040 2e 0a 2a 2f 0a 69 6e 74 20 72 65 61 64 62 6c 6f 63 6b 28 20 63 6f 6e 73 74 20 69 6e 74 20 66 64 ..*/.int.readblock(.const.int.fd
2c060 2c 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 62 75 66 2c 20 63 6f 6e 73 74 20 69 6e 74 ,.uint8_t.*.const.buf,.const.int
2c080 20 73 69 7a 65 20 29 0a 20 20 7b 0a 20 20 69 6e 74 20 73 7a 20 3d 20 30 3b 0a 20 20 65 72 72 6e .size.)...{...int.sz.=.0;...errn
2c0a0 6f 20 3d 20 30 3b 0a 20 20 77 68 69 6c 65 28 20 73 7a 20 3c 20 73 69 7a 65 20 29 0a 20 20 20 20 o.=.0;...while(.sz.<.size.).....
2c0c0 7b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6e 20 3d 20 72 65 61 64 28 20 66 64 2c 20 62 75 {.....const.int.n.=.read(.fd,.bu
2c0e0 66 20 2b 20 73 7a 2c 20 73 69 7a 65 20 2d 20 73 7a 20 29 3b 0a 20 20 20 20 69 66 28 20 6e 20 3e f.+.sz,.size.-.sz.);.....if(.n.>
2c100 20 30 20 29 20 73 7a 20 2b 3d 20 6e 3b 0a 20 20 20 20 65 6c 73 65 20 69 66 28 20 6e 20 3d 3d 20 .0.).sz.+=.n;.....else.if(.n.==.
2c120 30 20 29 20 62 72 65 61 6b 3b 09 09 09 09 2f 2f 20 45 4f 46 0a 20 20 20 20 65 6c 73 65 20 69 66 0.).break;....//.EOF.....else.if
2c140 28 20 65 72 72 6e 6f 20 21 3d 20 45 49 4e 54 52 20 29 20 62 72 65 61 6b 3b 0a 20 20 20 20 65 72 (.errno.!=.EINTR.).break;.....er
2c160 72 6e 6f 20 3d 20 30 3b 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 73 7a 3b 0a 20 20 7d 0a rno.=.0;.....}...return.sz;...}.
2c180 0a 0a 2f 2a 20 52 65 74 75 72 6e 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 ../*.Return.the.number.of.bytes.
2c1a0 72 65 61 6c 6c 79 20 77 72 69 74 74 65 6e 2e 0a 20 20 20 49 66 20 28 76 61 6c 75 65 20 72 65 74 really.written.....If.(value.ret
2c1c0 75 72 6e 65 64 20 3c 20 73 69 7a 65 29 2c 20 69 74 20 69 73 20 61 6c 77 61 79 73 20 61 6e 20 65 urned.<.size),.it.is.always.an.e
2c1e0 72 72 6f 72 2e 0a 2a 2f 0a 69 6e 74 20 77 72 69 74 65 62 6c 6f 63 6b 28 20 63 6f 6e 73 74 20 69 rror..*/.int.writeblock(.const.i
2c200 6e 74 20 66 64 2c 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 62 75 66 nt.fd,.const.uint8_t.*.const.buf
2c220 2c 20 63 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 20 29 0a 20 20 7b 0a 20 20 69 6e 74 20 73 7a 20 ,.const.int.size.)...{...int.sz.
2c240 3d 20 30 3b 0a 20 20 65 72 72 6e 6f 20 3d 20 30 3b 0a 20 20 77 68 69 6c 65 28 20 73 7a 20 3c 20 =.0;...errno.=.0;...while(.sz.<.
2c260 73 69 7a 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6e 20 3d 20 77 size.).....{.....const.int.n.=.w
2c280 72 69 74 65 28 20 66 64 2c 20 62 75 66 20 2b 20 73 7a 2c 20 73 69 7a 65 20 2d 20 73 7a 20 29 3b rite(.fd,.buf.+.sz,.size.-.sz.);
2c2a0 0a 20 20 20 20 69 66 28 20 6e 20 3e 20 30 20 29 20 73 7a 20 2b 3d 20 6e 3b 0a 20 20 20 20 65 6c .....if(.n.>.0.).sz.+=.n;.....el
2c2c0 73 65 20 69 66 28 20 6e 20 3c 20 30 20 26 26 20 65 72 72 6e 6f 20 21 3d 20 45 49 4e 54 52 20 29 se.if(.n.<.0.&&.errno.!=.EINTR.)
2c2e0 20 62 72 65 61 6b 3b 0a 20 20 20 20 65 72 72 6e 6f 20 3d 20 30 3b 0a 20 20 20 20 7d 0a 20 20 72 .break;.....errno.=.0;.....}...r
2c300 65 74 75 72 6e 20 73 7a 3b 0a 20 20 7d 0a 0a 0a 62 6f 6f 6c 20 52 61 6e 67 65 5f 64 65 63 6f 64 eturn.sz;...}...bool.Range_decod
2c320 65 72 3a 3a 72 65 61 64 5f 62 6c 6f 63 6b 28 29 0a 20 20 7b 0a 20 20 69 66 28 20 21 61 74 5f 73 er::read_block()...{...if(.!at_s
2c340 74 72 65 61 6d 5f 65 6e 64 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 73 74 72 65 61 6d 5f 70 6f 73 tream_end.).....{.....stream_pos
2c360 20 3d 20 72 65 61 64 62 6c 6f 63 6b 28 20 69 6e 66 64 2c 20 62 75 66 66 65 72 2c 20 62 75 66 66 .=.readblock(.infd,.buffer,.buff
2c380 65 72 5f 73 69 7a 65 20 29 3b 0a 20 20 20 20 69 66 28 20 73 74 72 65 61 6d 5f 70 6f 73 20 21 3d er_size.);.....if(.stream_pos.!=
2c3a0 20 62 75 66 66 65 72 5f 73 69 7a 65 20 26 26 20 65 72 72 6e 6f 20 29 20 74 68 72 6f 77 20 45 72 .buffer_size.&&.errno.).throw.Er
2c3c0 72 6f 72 28 20 22 52 65 61 64 20 65 72 72 6f 72 22 20 29 3b 0a 20 20 20 20 61 74 5f 73 74 72 65 ror(."Read.error".);.....at_stre
2c3e0 61 6d 5f 65 6e 64 20 3d 20 73 74 72 65 61 6d 5f 70 6f 73 20 3c 20 62 75 66 66 65 72 5f 73 69 7a am_end.=.stream_pos.<.buffer_siz
2c400 65 3b 0a 20 20 20 20 70 61 72 74 69 61 6c 5f 6d 65 6d 62 65 72 5f 70 6f 73 20 2b 3d 20 70 6f 73 e;.....partial_member_pos.+=.pos
2c420 3b 0a 20 20 20 20 70 6f 73 20 3d 20 30 3b 0a 20 20 20 20 73 68 6f 77 5f 64 70 72 6f 67 72 65 73 ;.....pos.=.0;.....show_dprogres
2c440 73 28 29 3b 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 70 6f 73 20 3c 20 73 74 72 65 61 6d s();.....}...return.pos.<.stream
2c460 5f 70 6f 73 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 4c 5a 5f 64 65 63 6f 64 65 72 3a 3a 66 6c 75 _pos;...}...void.LZ_decoder::flu
2c480 73 68 5f 64 61 74 61 28 29 0a 20 20 7b 0a 20 20 69 66 28 20 70 6f 73 20 3e 20 73 74 72 65 61 6d sh_data()...{...if(.pos.>.stream
2c4a0 5f 70 6f 73 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 20 _pos.).....{.....const.int.size.
2c4c0 3d 20 70 6f 73 20 2d 20 73 74 72 65 61 6d 5f 70 6f 73 3b 0a 20 20 20 20 63 72 63 33 32 2e 75 70 =.pos.-.stream_pos;.....crc32.up
2c4e0 64 61 74 65 5f 62 75 66 28 20 63 72 63 5f 2c 20 62 75 66 66 65 72 20 2b 20 73 74 72 65 61 6d 5f date_buf(.crc_,.buffer.+.stream_
2c500 70 6f 73 2c 20 73 69 7a 65 20 29 3b 0a 20 20 20 20 69 66 28 20 6f 75 74 66 64 20 3e 3d 20 30 20 pos,.size.);.....if(.outfd.>=.0.
2c520 26 26 20 77 72 69 74 65 62 6c 6f 63 6b 28 20 6f 75 74 66 64 2c 20 62 75 66 66 65 72 20 2b 20 73 &&.writeblock(.outfd,.buffer.+.s
2c540 74 72 65 61 6d 5f 70 6f 73 2c 20 73 69 7a 65 20 29 20 21 3d 20 73 69 7a 65 20 29 0a 20 20 20 20 tream_pos,.size.).!=.size.).....
2c560 20 20 74 68 72 6f 77 20 45 72 72 6f 72 28 20 77 72 5f 65 72 72 5f 6d 73 67 20 29 3b 0a 20 20 20 ..throw.Error(.wr_err_msg.);....
2c580 20 69 66 28 20 70 6f 73 20 3e 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 .if(.pos.>=.dictionary_size.)...
2c5a0 20 20 20 20 7b 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 20 2b 3d 20 70 6f 73 3b 20 70 ....{.partial_data_pos.+=.pos;.p
2c5c0 6f 73 20 3d 20 30 3b 20 70 6f 73 5f 77 72 61 70 70 65 64 20 3d 20 74 72 75 65 3b 20 7d 0a 20 20 os.=.0;.pos_wrapped.=.true;.}...
2c5e0 20 20 73 74 72 65 61 6d 5f 70 6f 73 20 3d 20 70 6f 73 3b 0a 20 20 20 20 7d 0a 20 20 7d 0a 0a 0a ..stream_pos.=.pos;.....}...}...
2c600 62 6f 6f 6c 20 4c 5a 5f 64 65 63 6f 64 65 72 3a 3a 63 68 65 63 6b 5f 74 72 61 69 6c 65 72 28 20 bool.LZ_decoder::check_trailer(.
2c620 63 6f 6e 73 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 26 20 70 70 20 29 20 63 6f 6e 73 74 0a const.Pretty_print.&.pp.).const.
2c640 20 20 7b 0a 20 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 20 74 72 61 69 6c 65 72 3b 0a 20 20 69 6e ..{...Lzip_trailer.trailer;...in
2c660 74 20 73 69 7a 65 20 3d 20 72 64 65 63 2e 72 65 61 64 5f 64 61 74 61 28 20 74 72 61 69 6c 65 72 t.size.=.rdec.read_data(.trailer
2c680 2e 64 61 74 61 2c 20 74 72 61 69 6c 65 72 2e 73 69 7a 65 20 29 3b 0a 20 20 62 6f 6f 6c 20 65 72 .data,.trailer.size.);...bool.er
2c6a0 72 6f 72 20 3d 20 66 61 6c 73 65 3b 0a 0a 20 20 69 66 28 20 73 69 7a 65 20 3c 20 74 72 61 69 6c ror.=.false;....if(.size.<.trail
2c6c0 65 72 2e 73 69 7a 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 65 72 72 6f 72 20 3d 20 74 72 75 65 er.size.).....{.....error.=.true
2c6e0 3b 0a 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 29 0a 20 20 20 20 20 ;.....if(.verbosity.>=.0.)......
2c700 20 7b 20 70 70 28 29 3b 0a 20 20 20 20 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 .{.pp();.........std::fprintf(.s
2c720 74 64 65 72 72 2c 20 22 54 72 61 69 6c 65 72 20 74 72 75 6e 63 61 74 65 64 20 61 74 20 74 72 61 tderr,."Trailer.truncated.at.tra
2c740 69 6c 65 72 20 70 6f 73 69 74 69 6f 6e 20 25 64 3b 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 iler.position.%d;"..............
2c760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 73 6f 6d 65 20 63 68 65 63 6b 73 20 6d .................".some.checks.m
2c780 61 79 20 66 61 69 6c 2e 5c 6e 22 2c 20 73 69 7a 65 20 29 3b 20 7d 0a 20 20 20 20 77 68 69 6c 65 ay.fail.\n",.size.);.}.....while
2c7a0 28 20 73 69 7a 65 20 3c 20 74 72 61 69 6c 65 72 2e 73 69 7a 65 20 29 20 74 72 61 69 6c 65 72 2e (.size.<.trailer.size.).trailer.
2c7c0 64 61 74 61 5b 73 69 7a 65 2b 2b 5d 20 3d 20 30 3b 0a 20 20 20 20 7d 0a 0a 20 20 63 6f 6e 73 74 data[size++].=.0;.....}....const
2c7e0 20 75 6e 73 69 67 6e 65 64 20 74 64 5f 63 72 63 20 3d 20 74 72 61 69 6c 65 72 2e 64 61 74 61 5f .unsigned.td_crc.=.trailer.data_
2c800 63 72 63 28 29 3b 0a 20 20 69 66 28 20 74 64 5f 63 72 63 20 21 3d 20 63 72 63 28 29 20 29 0a 20 crc();...if(.td_crc.!=.crc().)..
2c820 20 20 20 7b 0a 20 20 20 20 65 72 72 6f 72 20 3d 20 74 72 75 65 3b 0a 20 20 20 20 69 66 28 20 76 ...{.....error.=.true;.....if(.v
2c840 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 29 0a 20 20 20 20 20 20 7b 20 70 70 28 29 3b 0a 20 20 erbosity.>=.0.).......{.pp();...
2c860 20 20 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 43 52 43 ......std::fprintf(.stderr,."CRC
2c880 20 6d 69 73 6d 61 74 63 68 3b 20 73 74 6f 72 65 64 20 25 30 38 58 2c 20 63 6f 6d 70 75 74 65 64 .mismatch;.stored.%08X,.computed
2c8a0 20 25 30 38 58 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .%08X\n",.......................
2c8c0 74 64 5f 63 72 63 2c 20 63 72 63 28 29 20 29 3b 20 7d 0a 20 20 20 20 7d 0a 20 20 63 6f 6e 73 74 td_crc,.crc().);.}.....}...const
2c8e0 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 64 61 74 61 5f 73 69 7a 65 20 3d 20 .unsigned.long.long.data_size.=.
2c900 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 0a 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 data_position();...const.unsigne
2c920 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 74 64 5f 73 69 7a 65 20 3d 20 74 72 61 69 6c 65 72 2e 64 61 d.long.long.td_size.=.trailer.da
2c940 74 61 5f 73 69 7a 65 28 29 3b 0a 20 20 69 66 28 20 74 64 5f 73 69 7a 65 20 21 3d 20 64 61 74 61 ta_size();...if(.td_size.!=.data
2c960 5f 73 69 7a 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 65 72 72 6f 72 20 3d 20 74 72 75 65 3b 0a _size.).....{.....error.=.true;.
2c980 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 29 0a 20 20 20 20 20 20 7b ....if(.verbosity.>=.0.).......{
2c9a0 20 70 70 28 29 3b 0a 20 20 20 20 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 .pp();.........std::fprintf(.std
2c9c0 65 72 72 2c 20 22 44 61 74 61 20 73 69 7a 65 20 6d 69 73 6d 61 74 63 68 3b 20 73 74 6f 72 65 64 err,."Data.size.mismatch;.stored
2c9e0 20 25 6c 6c 75 20 28 30 78 25 6c 6c 58 29 2c 20 63 6f 6d 70 75 74 65 64 20 25 6c 6c 75 20 28 30 .%llu.(0x%llX),.computed.%llu.(0
2ca00 78 25 6c 6c 58 29 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 x%llX)\n",......................
2ca20 20 74 64 5f 73 69 7a 65 2c 20 74 64 5f 73 69 7a 65 2c 20 64 61 74 61 5f 73 69 7a 65 2c 20 64 61 .td_size,.td_size,.data_size,.da
2ca40 74 61 5f 73 69 7a 65 20 29 3b 20 7d 0a 20 20 20 20 7d 0a 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 ta_size.);.}.....}...const.unsig
2ca60 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3d 20 72 64 65 63 ned.long.long.member_size.=.rdec
2ca80 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 0a 20 20 63 6f 6e 73 74 20 75 6e 73 69 .member_position();...const.unsi
2caa0 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 74 6d 5f 73 69 7a 65 20 3d 20 74 72 61 69 6c 65 72 gned.long.long.tm_size.=.trailer
2cac0 2e 6d 65 6d 62 65 72 5f 73 69 7a 65 28 29 3b 0a 20 20 69 66 28 20 74 6d 5f 73 69 7a 65 20 21 3d .member_size();...if(.tm_size.!=
2cae0 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 65 72 72 6f 72 20 3d .member_size.).....{.....error.=
2cb00 20 74 72 75 65 3b 0a 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 29 0a .true;.....if(.verbosity.>=.0.).
2cb20 20 20 20 20 20 20 7b 20 70 70 28 29 3b 0a 20 20 20 20 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e ......{.pp();.........std::fprin
2cb40 74 66 28 20 73 74 64 65 72 72 2c 20 22 4d 65 6d 62 65 72 20 73 69 7a 65 20 6d 69 73 6d 61 74 63 tf(.stderr,."Member.size.mismatc
2cb60 68 3b 20 73 74 6f 72 65 64 20 25 6c 6c 75 20 28 30 78 25 6c 6c 58 29 2c 20 63 6f 6d 70 75 74 65 h;.stored.%llu.(0x%llX),.compute
2cb80 64 20 25 6c 6c 75 20 28 30 78 25 6c 6c 58 29 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 d.%llu.(0x%llX)\n",.............
2cba0 20 20 20 20 20 20 20 20 20 20 74 6d 5f 73 69 7a 65 2c 20 74 6d 5f 73 69 7a 65 2c 20 6d 65 6d 62 ..........tm_size,.tm_size,.memb
2cbc0 65 72 5f 73 69 7a 65 2c 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 29 3b 20 7d 0a 20 20 20 20 7d 0a er_size,.member_size.);.}.....}.
2cbe0 20 20 69 66 28 20 65 72 72 6f 72 20 29 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 69 66 ..if(.error.).return.false;...if
2cc00 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 32 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 (.verbosity.>=.2.).....{.....if(
2cc20 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 34 20 29 20 73 68 6f 77 5f 68 65 61 64 65 72 28 20 64 .verbosity.>=.4.).show_header(.d
2cc40 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 3b 0a 20 20 20 20 69 66 28 20 64 61 74 61 5f 73 ictionary_size.);.....if(.data_s
2cc60 69 7a 65 20 3d 3d 20 30 20 7c 7c 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3d 3d 20 30 20 29 0a 20 ize.==.0.||.member_size.==.0.)..
2cc80 20 20 20 20 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 6e 6f 20 64 61 74 61 20 63 6f 6d 70 72 65 .....std::fputs(."no.data.compre
2cca0 73 73 65 64 2e 20 22 2c 20 73 74 64 65 72 72 20 29 3b 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 ssed..",.stderr.);.....else.....
2ccc0 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 36 2e 33 66 3a 31 ..std::fprintf(.stderr,."%6.3f:1
2cce0 2c 20 25 35 2e 32 66 25 25 20 72 61 74 69 6f 2c 20 25 35 2e 32 66 25 25 20 73 61 76 65 64 2e 20 ,.%5.2f%%.ratio,.%5.2f%%.saved..
2cd00 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 75 62 6c 65 29 64 ",.....................(double)d
2cd20 61 74 61 5f 73 69 7a 65 20 2f 20 6d 65 6d 62 65 72 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 ata_size./.member_size,.........
2cd40 20 20 20 20 20 20 20 20 20 20 20 20 28 20 31 30 30 2e 30 20 2a 20 6d 65 6d 62 65 72 5f 73 69 7a ............(.100.0.*.member_siz
2cd60 65 20 29 20 2f 20 64 61 74 61 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.)./.data_size,................
2cd80 20 20 20 20 20 31 30 30 2e 30 20 2d 20 28 20 28 20 31 30 30 2e 30 20 2a 20 6d 65 6d 62 65 72 5f .....100.0.-.(.(.100.0.*.member_
2cda0 73 69 7a 65 20 29 20 2f 20 64 61 74 61 5f 73 69 7a 65 20 29 20 29 3b 0a 20 20 20 20 69 66 28 20 size.)./.data_size.).);.....if(.
2cdc0 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 34 20 29 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 verbosity.>=.4.).std::fprintf(.s
2cde0 74 64 65 72 72 2c 20 22 43 52 43 20 25 30 38 58 2c 20 22 2c 20 74 64 5f 63 72 63 20 29 3b 0a 20 tderr,."CRC.%08X,.",.td_crc.);..
2ce00 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 33 20 29 0a 20 20 20 20 20 20 73 74 ...if(.verbosity.>=.3.).......st
2ce20 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 39 6c 6c 75 20 6f 75 74 2c 20 d::fprintf(.stderr,."%9llu.out,.
2ce40 25 38 6c 6c 75 20 69 6e 2e 20 22 2c 20 64 61 74 61 5f 73 69 7a 65 2c 20 6d 65 6d 62 65 72 5f 73 %8llu.in..",.data_size,.member_s
2ce60 69 7a 65 20 29 3b 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 7d 0a ize.);.....}...return.true;...}.
2ce80 0a 0a 2f 2a 20 52 65 74 75 72 6e 20 76 61 6c 75 65 3a 20 30 20 3d 20 4f 4b 2c 20 31 20 3d 20 64 ../*.Return.value:.0.=.OK,.1.=.d
2cea0 65 63 6f 64 65 72 20 65 72 72 6f 72 2c 20 32 20 3d 20 75 6e 65 78 70 65 63 74 65 64 20 45 4f 46 ecoder.error,.2.=.unexpected.EOF
2cec0 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 33 20 3d 20 74 72 61 69 6c 65 72 20 65 ,..................3.=.trailer.e
2cee0 72 72 6f 72 2c 20 34 20 3d 20 75 6e 6b 6e 6f 77 6e 20 6d 61 72 6b 65 72 20 66 6f 75 6e 64 2c 0a rror,.4.=.unknown.marker.found,.
2cf00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 35 20 3d 20 6e 6f 6e 7a 65 72 6f 20 66 69 72 .................5.=.nonzero.fir
2cf20 73 74 20 4c 5a 4d 41 20 62 79 74 65 20 66 6f 75 6e 64 2e 20 2a 2f 0a 69 6e 74 20 4c 5a 5f 64 65 st.LZMA.byte.found..*/.int.LZ_de
2cf40 63 6f 64 65 72 3a 3a 64 65 63 6f 64 65 5f 6d 65 6d 62 65 72 28 20 63 6f 6e 73 74 20 50 72 65 74 coder::decode_member(.const.Pret
2cf60 74 79 5f 70 72 69 6e 74 20 26 20 70 70 20 29 0a 20 20 7b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 ty_print.&.pp.)...{...Bit_model.
2cf80 62 6d 5f 6c 69 74 65 72 61 6c 5b 31 3c 3c 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 bm_literal[1<<literal_context_bi
2cfa0 74 73 5d 5b 30 78 33 30 30 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6d 61 74 63 68 ts][0x300];...Bit_model.bm_match
2cfc0 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 5b 70 6f 73 5f 73 74 61 74 65 73 5d 3b 0a 20 20 42 [State::states][pos_states];...B
2cfe0 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 3b 0a it_model.bm_rep[State::states];.
2d000 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 30 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 ..Bit_model.bm_rep0[State::state
2d020 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 31 5b 53 74 61 74 65 3a 3a 73 s];...Bit_model.bm_rep1[State::s
2d040 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 32 5b 53 74 61 74 tates];...Bit_model.bm_rep2[Stat
2d060 65 3a 3a 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6c 65 6e 5b 53 e::states];...Bit_model.bm_len[S
2d080 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 5b 70 6f 73 5f 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 tate::states][pos_states];...Bit
2d0a0 5f 6d 6f 64 65 6c 20 62 6d 5f 64 69 73 5f 73 6c 6f 74 5b 6c 65 6e 5f 73 74 61 74 65 73 5d 5b 31 _model.bm_dis_slot[len_states][1
2d0c0 3c 3c 64 69 73 5f 73 6c 6f 74 5f 62 69 74 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d <<dis_slot_bits];...Bit_model.bm
2d0e0 5f 64 69 73 5b 6d 6f 64 65 6c 65 64 5f 64 69 73 74 61 6e 63 65 73 2d 65 6e 64 5f 64 69 73 5f 6d _dis[modeled_distances-end_dis_m
2d100 6f 64 65 6c 2b 31 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 61 6c 69 67 6e 5b 64 69 odel+1];...Bit_model.bm_align[di
2d120 73 5f 61 6c 69 67 6e 5f 73 69 7a 65 5d 3b 0a 20 20 4c 65 6e 5f 6d 6f 64 65 6c 20 6d 61 74 63 68 s_align_size];...Len_model.match
2d140 5f 6c 65 6e 5f 6d 6f 64 65 6c 3b 0a 20 20 4c 65 6e 5f 6d 6f 64 65 6c 20 72 65 70 5f 6c 65 6e 5f _len_model;...Len_model.rep_len_
2d160 6d 6f 64 65 6c 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 30 20 3d 20 30 3b 09 09 2f 2f 20 model;...unsigned.rep0.=.0;..//.
2d180 72 65 70 5b 30 2d 33 5d 20 6c 61 74 65 73 74 20 66 6f 75 72 20 64 69 73 74 61 6e 63 65 73 0a 20 rep[0-3].latest.four.distances..
2d1a0 20 75 6e 73 69 67 6e 65 64 20 72 65 70 31 20 3d 20 30 3b 09 09 2f 2f 20 75 73 65 64 20 66 6f 72 .unsigned.rep1.=.0;..//.used.for
2d1c0 20 65 66 66 69 63 69 65 6e 74 20 63 6f 64 69 6e 67 20 6f 66 0a 20 20 75 6e 73 69 67 6e 65 64 20 .efficient.coding.of...unsigned.
2d1e0 72 65 70 32 20 3d 20 30 3b 09 09 2f 2f 20 72 65 70 65 61 74 65 64 20 64 69 73 74 61 6e 63 65 73 rep2.=.0;..//.repeated.distances
2d200 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 33 20 3d 20 30 3b 0a 20 20 53 74 61 74 65 20 73 74 ...unsigned.rep3.=.0;...State.st
2d220 61 74 65 3b 0a 0a 20 20 69 66 28 20 21 72 64 65 63 2e 6c 6f 61 64 28 29 20 29 20 72 65 74 75 72 ate;....if(.!rdec.load().).retur
2d240 6e 20 35 3b 0a 20 20 77 68 69 6c 65 28 20 21 72 64 65 63 2e 66 69 6e 69 73 68 65 64 28 29 20 29 n.5;...while(.!rdec.finished().)
2d260 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 20 3d .....{.....const.int.pos_state.=
2d280 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 26 20 70 6f 73 5f 73 74 61 74 65 5f 6d 61 73 .data_position().&.pos_state_mas
2d2a0 6b 3b 0a 20 20 20 20 69 66 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 6d k;.....if(.rdec.decode_bit(.bm_m
2d2c0 61 74 63 68 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 20 29 20 3d 3d 20 30 20 atch[state()][pos_state].).==.0.
2d2e0 29 09 2f 2f 20 31 73 74 20 62 69 74 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 2f 2f 20 6c 69 ).//.1st.bit.......{.......//.li
2d300 74 65 72 61 6c 20 62 79 74 65 0a 20 20 20 20 20 20 42 69 74 5f 6d 6f 64 65 6c 20 2a 20 63 6f 6e teral.byte.......Bit_model.*.con
2d320 73 74 20 62 6d 20 3d 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 67 65 74 5f 6c 69 74 5f 73 74 61 74 65 st.bm.=.bm_literal[get_lit_state
2d340 28 70 65 65 6b 5f 70 72 65 76 28 29 29 5d 3b 0a 20 20 20 20 20 20 69 66 28 20 73 74 61 74 65 2e (peek_prev())];.......if(.state.
2d360 69 73 5f 63 68 61 72 5f 73 65 74 5f 63 68 61 72 28 29 20 29 0a 20 20 20 20 20 20 20 20 70 75 74 is_char_set_char().).........put
2d380 5f 62 79 74 65 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 74 72 65 65 38 28 20 62 6d 20 29 20 29 _byte(.rdec.decode_tree8(.bm.).)
2d3a0 3b 0a 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 70 75 74 5f 62 79 74 65 28 20 72 ;.......else.........put_byte(.r
2d3c0 64 65 63 2e 64 65 63 6f 64 65 5f 6d 61 74 63 68 65 64 28 20 62 6d 2c 20 70 65 65 6b 28 20 72 65 dec.decode_matched(.bm,.peek(.re
2d3e0 70 30 20 29 20 29 20 29 3b 0a 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 20 20 p0.).).);.......continue;.......
2d400 7d 0a 20 20 20 20 2f 2f 20 6d 61 74 63 68 20 6f 72 20 72 65 70 65 61 74 65 64 20 6d 61 74 63 68 }.....//.match.or.repeated.match
2d420 0a 20 20 20 20 69 6e 74 20 6c 65 6e 3b 0a 20 20 20 20 69 66 28 20 72 64 65 63 2e 64 65 63 6f 64 .....int.len;.....if(.rdec.decod
2d440 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 5b 73 74 61 74 65 28 29 5d 20 29 20 21 3d 20 30 20 29 09 e_bit(.bm_rep[state()].).!=.0.).
2d460 09 2f 2f 20 32 6e 64 20 62 69 74 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 72 64 .//.2nd.bit.......{.......if(.rd
2d480 65 63 2e 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 30 5b 73 74 61 74 65 28 29 5d 20 ec.decode_bit(.bm_rep0[state()].
2d4a0 29 20 3d 3d 20 30 20 29 09 09 2f 2f 20 33 72 64 20 62 69 74 0a 20 20 20 20 20 20 20 20 7b 0a 20 ).==.0.)..//.3rd.bit.........{..
2d4c0 20 20 20 20 20 20 20 69 66 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 6c .......if(.rdec.decode_bit(.bm_l
2d4e0 65 6e 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 20 29 20 3d 3d 20 30 20 29 20 en[state()][pos_state].).==.0.).
2d500 2f 2f 20 34 74 68 20 62 69 74 0a 20 20 20 20 20 20 20 20 20 20 7b 20 73 74 61 74 65 2e 73 65 74 //.4th.bit...........{.state.set
2d520 5f 73 68 6f 72 74 72 65 70 28 29 3b 20 70 75 74 5f 62 79 74 65 28 20 70 65 65 6b 28 20 72 65 70 _shortrep();.put_byte(.peek(.rep
2d540 30 20 29 20 29 3b 20 63 6f 6e 74 69 6e 75 65 3b 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 0.).);.continue;.}.........}....
2d560 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 75 6e 73 69 67 6e ...else.........{.........unsign
2d580 65 64 20 64 69 73 74 61 6e 63 65 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 72 64 65 63 2e 64 65 ed.distance;.........if(.rdec.de
2d5a0 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 31 5b 73 74 61 74 65 28 29 5d 20 29 20 3d 3d 20 code_bit(.bm_rep1[state()].).==.
2d5c0 30 20 29 09 09 2f 2f 20 34 74 68 20 62 69 74 0a 20 20 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 0.)..//.4th.bit...........distan
2d5e0 63 65 20 3d 20 72 65 70 31 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 ce.=.rep1;.........else.........
2d600 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 69 66 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 ..{...........if(.rdec.decode_bi
2d620 74 28 20 62 6d 5f 72 65 70 32 5b 73 74 61 74 65 28 29 5d 20 29 20 3d 3d 20 30 20 29 09 2f 2f 20 t(.bm_rep2[state()].).==.0.).//.
2d640 35 74 68 20 62 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 20 3d 20 72 5th.bit.............distance.=.r
2d660 65 70 32 3b 0a 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 ep2;...........else.............
2d680 7b 20 64 69 73 74 61 6e 63 65 20 3d 20 72 65 70 33 3b 20 72 65 70 33 20 3d 20 72 65 70 32 3b 20 {.distance.=.rep3;.rep3.=.rep2;.
2d6a0 7d 0a 20 20 20 20 20 20 20 20 20 20 72 65 70 32 20 3d 20 72 65 70 31 3b 0a 20 20 20 20 20 20 20 }...........rep2.=.rep1;........
2d6c0 20 20 20 7d 0a 20 20 20 20 20 20 20 20 72 65 70 31 20 3d 20 72 65 70 30 3b 0a 20 20 20 20 20 20 ...}.........rep1.=.rep0;.......
2d6e0 20 20 72 65 70 30 20 3d 20 64 69 73 74 61 6e 63 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 ..rep0.=.distance;.........}....
2d700 20 20 20 73 74 61 74 65 2e 73 65 74 5f 72 65 70 28 29 3b 0a 20 20 20 20 20 20 6c 65 6e 20 3d 20 ...state.set_rep();.......len.=.
2d720 72 64 65 63 2e 64 65 63 6f 64 65 5f 6c 65 6e 28 20 72 65 70 5f 6c 65 6e 5f 6d 6f 64 65 6c 2c 20 rdec.decode_len(.rep_len_model,.
2d740 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 09 09 09 pos_state.);.......}.....else...
2d760 09 09 2f 2f 20 6d 61 74 63 68 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 72 65 70 33 20 3d 20 ..//.match.......{.......rep3.=.
2d780 72 65 70 32 3b 20 72 65 70 32 20 3d 20 72 65 70 31 3b 20 72 65 70 31 20 3d 20 72 65 70 30 3b 0a rep2;.rep2.=.rep1;.rep1.=.rep0;.
2d7a0 20 20 20 20 20 20 6c 65 6e 20 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 6c 65 6e 28 20 6d 61 74 ......len.=.rdec.decode_len(.mat
2d7c0 63 68 5f 6c 65 6e 5f 6d 6f 64 65 6c 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 ch_len_model,.pos_state.);......
2d7e0 20 72 65 70 30 20 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 74 72 65 65 36 28 20 62 6d 5f 64 69 .rep0.=.rdec.decode_tree6(.bm_di
2d800 73 5f 73 6c 6f 74 5b 67 65 74 5f 6c 65 6e 5f 73 74 61 74 65 28 6c 65 6e 29 5d 20 29 3b 0a 20 20 s_slot[get_len_state(len)].);...
2d820 20 20 20 20 69 66 28 20 72 65 70 30 20 3e 3d 20 73 74 61 72 74 5f 64 69 73 5f 6d 6f 64 65 6c 20 ....if(.rep0.>=.start_dis_model.
2d840 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e ).........{.........const.unsign
2d860 65 64 20 64 69 73 5f 73 6c 6f 74 20 3d 20 72 65 70 30 3b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 ed.dis_slot.=.rep0;.........cons
2d880 74 20 69 6e 74 20 64 69 72 65 63 74 5f 62 69 74 73 20 3d 20 28 20 64 69 73 5f 73 6c 6f 74 20 3e t.int.direct_bits.=.(.dis_slot.>
2d8a0 3e 20 31 20 29 20 2d 20 31 3b 0a 20 20 20 20 20 20 20 20 72 65 70 30 20 3d 20 28 20 32 20 7c 20 >.1.).-.1;.........rep0.=.(.2.|.
2d8c0 28 20 64 69 73 5f 73 6c 6f 74 20 26 20 31 20 29 20 29 20 3c 3c 20 64 69 72 65 63 74 5f 62 69 74 (.dis_slot.&.1.).).<<.direct_bit
2d8e0 73 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 64 69 73 5f 73 6c 6f 74 20 3c 20 65 6e 64 5f 64 69 s;.........if(.dis_slot.<.end_di
2d900 73 5f 6d 6f 64 65 6c 20 29 0a 20 20 20 20 20 20 20 20 20 20 72 65 70 30 20 2b 3d 20 72 64 65 63 s_model.)...........rep0.+=.rdec
2d920 2e 64 65 63 6f 64 65 5f 74 72 65 65 5f 72 65 76 65 72 73 65 64 28 20 62 6d 5f 64 69 73 20 2b 20 .decode_tree_reversed(.bm_dis.+.
2d940 28 20 72 65 70 30 20 2d 20 64 69 73 5f 73 6c 6f 74 20 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 (.rep0.-.dis_slot.),............
2d960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
2d980 20 20 64 69 72 65 63 74 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 ..direct_bits.);.........else...
2d9a0 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 72 65 70 30 20 2b 3d 20 72 64 65 63 ........{...........rep0.+=.rdec
2d9c0 2e 64 65 63 6f 64 65 28 20 64 69 72 65 63 74 5f 62 69 74 73 20 2d 20 64 69 73 5f 61 6c 69 67 6e .decode(.direct_bits.-.dis_align
2d9e0 5f 62 69 74 73 20 29 20 3c 3c 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 3b 0a 20 20 20 20 20 _bits.).<<.dis_align_bits;......
2da00 20 20 20 20 20 72 65 70 30 20 2b 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 74 72 65 65 5f 72 65 .....rep0.+=.rdec.decode_tree_re
2da20 76 65 72 73 65 64 34 28 20 62 6d 5f 61 6c 69 67 6e 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 69 versed4(.bm_align.);...........i
2da40 66 28 20 72 65 70 30 20 3d 3d 20 30 78 46 46 46 46 46 46 46 46 55 20 29 09 09 2f 2f 20 6d 61 72 f(.rep0.==.0xFFFFFFFFU.)..//.mar
2da60 6b 65 72 20 66 6f 75 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 ker.found.............{.........
2da80 20 20 20 20 72 64 65 63 2e 6e 6f 72 6d 61 6c 69 7a 65 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 ....rdec.normalize();...........
2daa0 20 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 20 ..flush_data();.............if(.
2dac0 6c 65 6e 20 3d 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 09 09 2f 2f 20 45 6e 64 20 4f len.==.min_match_len.)..//.End.O
2dae0 66 20 53 74 72 65 61 6d 20 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 20 f.Stream.marker...............{.
2db00 69 66 28 20 63 68 65 63 6b 5f 74 72 61 69 6c 65 72 28 20 70 70 20 29 20 29 20 72 65 74 75 72 6e if(.check_trailer(.pp.).).return
2db20 20 30 3b 20 65 6c 73 65 20 72 65 74 75 72 6e 20 33 3b 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 .0;.else.return.3;.}............
2db40 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 29 20 7b 20 70 70 28 29 3b 0a 20 20 .if(.verbosity.>=.0.).{.pp();...
2db60 20 20 20 20 20 20 20 20 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 ............std::fprintf(.stderr
2db80 2c 20 22 55 6e 73 75 70 70 6f 72 74 65 64 20 6d 61 72 6b 65 72 20 63 6f 64 65 20 27 25 64 27 5c ,."Unsupported.marker.code.'%d'\
2dba0 6e 22 2c 20 6c 65 6e 20 29 3b 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 n",.len.);.}.............return.
2dbc0 34 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 4;.............}...........}....
2dbe0 20 20 20 20 20 7d 0a 20 20 20 20 20 20 73 74 61 74 65 2e 73 65 74 5f 6d 61 74 63 68 28 29 3b 0a .....}.......state.set_match();.
2dc00 20 20 20 20 20 20 69 66 28 20 72 65 70 30 20 3e 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a ......if(.rep0.>=.dictionary_siz
2dc20 65 20 7c 7c 20 28 20 72 65 70 30 20 3e 3d 20 70 6f 73 20 26 26 20 21 70 6f 73 5f 77 72 61 70 70 e.||.(.rep0.>=.pos.&&.!pos_wrapp
2dc40 65 64 20 29 20 29 0a 20 20 20 20 20 20 20 20 7b 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 20 72 ed.).).........{.flush_data();.r
2dc60 65 74 75 72 6e 20 31 3b 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 63 6f 70 79 5f 62 6c 6f 63 eturn.1;.}.......}.....copy_bloc
2dc80 6b 28 20 72 65 70 30 2c 20 6c 65 6e 20 29 3b 0a 20 20 20 20 7d 0a 20 20 66 6c 75 73 68 5f 64 61 k(.rep0,.len.);.....}...flush_da
2dca0 74 61 28 29 3b 0a 20 20 72 65 74 75 72 6e 20 32 3b 0a 20 20 7d 0a 00 00 00 00 00 00 00 00 00 00 ta();...return.2;...}...........
2dcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dd00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dd20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2ddc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2de00 6c 7a 69 70 2d 31 2e 32 35 2f 43 68 61 6e 67 65 4c 6f 67 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/ChangeLog.............
2de20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2de40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2de60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
2de80 30 30 33 35 30 30 32 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 34 32 30 33 00 20 30 00 00 00 0035002.14744236057.014203..0...
2dea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2df00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
2df20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
2df40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
2df60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2df80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dfa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dfc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2dfe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e000 32 30 32 35 2d 30 31 2d 31 31 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 2025-01-11..Antonio.Diaz.Diaz..<
2e020 61 6e 74 6f 6e 69 6f 40 67 6e 75 2e 6f 72 67 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 32 antonio@gnu.org>...*.Version.1.2
2e040 35 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 52 65 6d 6f 76 65 20 6f 70 74 69 6f 6e 73 20 27 2d 5.released...*.Remove.options.'-
2e060 2d 65 6d 70 74 79 2d 65 72 72 6f 72 27 20 61 6e 64 20 27 2d 2d 6d 61 72 6b 69 6e 67 2d 65 72 72 -empty-error'.and.'--marking-err
2e080 6f 72 27 2e 0a 09 2a 20 64 65 63 6f 64 65 72 2e 63 63 20 28 64 65 63 6f 64 65 5f 6d 65 6d 62 65 or'...*.decoder.cc.(decode_membe
2e0a0 72 29 3a 20 52 65 6d 6f 76 65 20 73 75 70 70 6f 72 74 20 66 6f 72 20 53 79 6e 63 20 46 6c 75 73 r):.Remove.support.for.Sync.Flus
2e0c0 68 20 6d 61 72 6b 65 72 2e 0a 09 2a 20 6c 69 73 74 2e 63 63 20 28 6c 69 73 74 5f 66 69 6c 65 73 h.marker...*.list.cc.(list_files
2e0e0 29 3a 20 44 65 74 65 63 74 20 77 72 69 74 65 20 65 72 72 6f 72 20 6f 6e 20 73 74 64 6f 75 74 2e ):.Detect.write.error.on.stdout.
2e100 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 3a 20 4e 65 77 20 63 68 61 70 74 65 72 20 27 53 79 6e 74 ..*.lzip.texi:.New.chapter.'Synt
2e120 61 78 20 6f 66 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 61 72 67 75 6d 65 6e 74 73 27 2e 0a 09 ax.of.command-line.arguments'...
2e140 2a 20 63 68 65 63 6b 2e 73 68 3a 20 55 73 65 20 27 63 70 27 20 69 6e 73 74 65 61 64 20 6f 66 20 *.check.sh:.Use.'cp'.instead.of.
2e160 27 63 61 74 27 2e 0a 09 2a 20 74 65 73 74 73 75 69 74 65 3a 20 41 64 64 20 66 6f 78 5f 6e 7a 2e 'cat'...*.testsuite:.Add.fox_nz.
2e180 6c 7a 2e 20 52 65 6d 6f 76 65 20 66 6f 78 36 2e 6c 7a 2c 66 6f 78 36 5f 6d 61 72 6b 2e 6c 7a 2c lz..Remove.fox6.lz,fox6_mark.lz,
2e1a0 74 65 73 74 5f 65 6d 2e 74 78 74 2e 6c 7a 2e 0a 0a 32 30 32 34 2d 30 33 2d 30 31 20 20 41 6e 74 test_em.txt.lz...2024-03-01..Ant
2e1c0 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 6f 6e 69 6f 40 67 6e 75 2e 6f 72 67 onio.Diaz.Diaz..<antonio@gnu.org
2e1e0 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 32 34 2e 31 20 72 65 6c 65 61 73 65 64 2e 0a 09 >...*.Version.1.24.1.released...
2e200 2a 20 6d 61 69 6e 2e 63 63 3a 20 46 69 78 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 66 61 69 6c 75 *.main.cc:.Fix.compilation.failu
2e220 72 65 20 6f 6e 20 4d 69 6e 47 57 20 63 61 75 73 65 64 20 62 79 20 6d 6b 64 69 72 2e 0a 0a 32 30 re.on.MinGW.caused.by.mkdir...20
2e240 32 34 2d 30 31 2d 32 36 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 24-01-26..Antonio.Diaz.Diaz..<an
2e260 74 6f 6e 69 6f 40 67 6e 75 2e 6f 72 67 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 32 34 20 tonio@gnu.org>...*.Version.1.24.
2e280 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 4e 65 77 20 6f 70 74 69 6f 6e 73 20 27 2d 2d 65 6d 70 74 released...*.New.options.'--empt
2e2a0 79 2d 65 72 72 6f 72 27 20 61 6e 64 20 27 2d 2d 6d 61 72 6b 69 6e 67 2d 65 72 72 6f 72 27 2e 0a y-error'.and.'--marking-error'..
2e2c0 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 52 65 66 6f 72 6d 61 74 20 66 69 6c 65 20 64 69 61 67 6e 6f .*.main.cc:.Reformat.file.diagno
2e2e0 73 74 69 63 73 20 61 73 20 27 50 52 4f 47 52 41 4d 3a 20 46 49 4c 45 3a 20 4d 45 53 53 41 47 45 stics.as.'PROGRAM:.FILE:.MESSAGE
2e300 27 2e 0a 09 20 20 28 73 68 6f 77 5f 6f 70 74 69 6f 6e 5f 65 72 72 6f 72 29 3a 20 4e 65 77 20 66 '.....(show_option_error):.New.f
2e320 75 6e 63 74 69 6f 6e 20 73 68 6f 77 69 6e 67 20 61 72 67 75 6d 65 6e 74 20 61 6e 64 20 6f 70 74 unction.showing.argument.and.opt
2e340 69 6f 6e 20 6e 61 6d 65 2e 0a 09 20 20 28 6d 61 69 6e 29 3a 20 4d 61 6b 65 20 2d 6f 20 70 72 65 ion.name.....(main):.Make.-o.pre
2e360 73 65 72 76 65 20 64 61 74 65 2f 6d 6f 64 65 2f 6f 77 6e 65 72 20 69 66 20 31 20 69 6e 70 75 74 serve.date/mode/owner.if.1.input
2e380 20 66 69 6c 65 2e 0a 09 20 20 28 6f 70 65 6e 5f 6f 75 74 73 74 72 65 61 6d 29 3a 20 43 72 65 61 .file.....(open_outstream):.Crea
2e3a0 74 65 20 6d 69 73 73 69 6e 67 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 64 69 72 65 63 74 6f 72 te.missing.intermediate.director
2e3c0 69 65 73 2e 0a 09 2a 20 6c 7a 69 70 2e 68 3a 20 52 65 6e 61 6d 65 20 76 65 72 69 66 79 5f 2a 20 ies...*.lzip.h:.Rename.verify_*.
2e3e0 74 6f 20 63 68 65 63 6b 5f 2a 2e 0a 09 2a 20 63 6f 6e 66 69 67 75 72 65 2c 20 4d 61 6b 65 66 69 to.check_*...*.configure,.Makefi
2e400 6c 65 2e 69 6e 3a 20 4e 65 77 20 76 61 72 69 61 62 6c 65 20 27 4d 41 4b 45 49 4e 46 4f 27 2e 0a le.in:.New.variable.'MAKEINFO'..
2e420 09 2a 20 74 65 73 74 73 75 69 74 65 3a 20 4e 65 77 20 74 65 73 74 20 66 69 6c 65 73 20 66 6f 78 .*.testsuite:.New.test.files.fox
2e440 36 2e 6c 7a 2c 20 66 6f 78 36 5f 6d 61 72 6b 2e 6c 7a 2e 0a 0a 32 30 32 32 2d 30 31 2d 32 34 20 6.lz,.fox6_mark.lz...2022-01-24.
2e460 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 6f 6e 69 6f 40 67 6e 75 .Antonio.Diaz.Diaz..<antonio@gnu
2e480 2e 6f 72 67 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 32 33 20 72 65 6c 65 61 73 65 64 2e .org>...*.Version.1.23.released.
2e4a0 0a 09 2a 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d 65 20 68 61 73 20 62 65 65 6e 20 ..*.Decompression.time.has.been.
2e4c0 72 65 64 75 63 65 64 20 62 79 20 35 2d 31 32 25 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 reduced.by.5-12%.depending.on.th
2e4e0 65 20 66 69 6c 65 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 67 65 74 6e 75 6d 29 3a 20 53 68 6f e.file...*.main.cc.(getnum):.Sho
2e500 77 20 6f 70 74 69 6f 6e 20 6e 61 6d 65 20 61 6e 64 20 76 61 6c 69 64 20 72 61 6e 67 65 20 69 66 w.option.name.and.valid.range.if
2e520 20 65 72 72 6f 72 2e 0a 09 2a 20 49 6d 70 72 6f 76 65 20 73 65 76 65 72 61 6c 20 64 65 73 63 72 .error...*.Improve.several.descr
2e540 69 70 74 69 6f 6e 73 20 69 6e 20 6d 61 6e 75 61 6c 2c 20 27 2d 2d 68 65 6c 70 27 2c 20 61 6e 64 iptions.in.manual,.'--help',.and
2e560 20 6d 61 6e 20 70 61 67 65 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 3a 20 43 68 61 6e 67 65 20 .man.page...*.lzip.texi:.Change.
2e580 47 4e 55 20 54 65 78 69 6e 66 6f 20 63 61 74 65 67 6f 72 79 20 74 6f 20 27 43 6f 6d 70 72 65 73 GNU.Texinfo.category.to.'Compres
2e5a0 73 69 6f 6e 27 2e 0a 09 20 20 28 52 65 70 6f 72 74 65 64 20 62 79 20 41 6c 66 72 65 64 20 4d 2e sion'.....(Reported.by.Alfred.M.
2e5c0 20 53 7a 6d 69 64 74 29 2e 0a 0a 32 30 32 31 2d 30 31 2d 30 34 20 20 41 6e 74 6f 6e 69 6f 20 44 .Szmidt)...2021-01-04..Antonio.D
2e5e0 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 6f 6e 69 6f 40 67 6e 75 2e 6f 72 67 3e 0a 0a 09 2a 20 iaz.Diaz..<antonio@gnu.org>...*.
2e600 56 65 72 73 69 6f 6e 20 31 2e 32 32 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 6d 61 69 6e 2e 63 Version.1.22.released...*.main.c
2e620 63 20 28 6d 61 69 6e 29 3a 20 52 65 70 6f 72 74 20 61 6e 20 65 72 72 6f 72 20 69 66 20 61 20 66 c.(main):.Report.an.error.if.a.f
2e640 69 6c 65 20 6e 61 6d 65 20 69 73 20 65 6d 70 74 79 2e 0a 09 20 20 4d 61 6b 65 20 27 2d 6f 27 20 ile.name.is.empty.....Make.'-o'.
2e660 62 65 68 61 76 65 20 6c 69 6b 65 20 27 2d 63 27 2c 20 62 75 74 20 77 72 69 74 69 6e 67 20 74 6f behave.like.'-c',.but.writing.to
2e680 20 66 69 6c 65 20 69 6e 73 74 65 61 64 20 6f 66 20 73 74 64 6f 75 74 2e 0a 09 20 20 4d 61 6b 65 .file.instead.of.stdout.....Make
2e6a0 20 27 2d 63 27 20 61 6e 64 20 27 2d 6f 27 20 63 68 65 63 6b 20 77 68 65 74 68 65 72 20 74 68 65 .'-c'.and.'-o'.check.whether.the
2e6c0 20 6f 75 74 70 75 74 20 69 73 20 61 20 74 65 72 6d 69 6e 61 6c 20 6f 6e 6c 79 20 6f 6e 63 65 2e .output.is.a.terminal.only.once.
2e6e0 0a 09 20 20 44 6f 20 6e 6f 74 20 6f 70 65 6e 20 6f 75 74 70 75 74 20 69 66 20 69 6e 70 75 74 20 ....Do.not.open.output.if.input.
2e700 69 73 20 61 20 74 65 72 6d 69 6e 61 6c 2e 0a 09 20 20 53 65 74 20 61 20 76 61 6c 69 64 20 69 6e is.a.terminal.....Set.a.valid.in
2e720 76 6f 63 61 74 69 6f 6e 5f 6e 61 6d 65 20 65 76 65 6e 20 69 66 20 61 72 67 63 20 3d 3d 20 30 2e vocation_name.even.if.argc.==.0.
2e740 0a 09 2a 20 63 6f 6e 66 69 67 75 72 65 3a 20 42 75 69 6c 64 2c 20 63 68 65 63 6b 2c 20 61 6e 64 ..*.configure:.Build,.check,.and
2e760 20 69 6e 73 74 61 6c 6c 20 77 69 74 68 6f 75 74 20 27 6d 61 6b 65 27 2e 0a 09 2a 20 52 65 70 6c .install.without.'make'...*.Repl
2e780 61 63 65 20 27 64 65 63 6f 6d 70 72 65 73 73 65 64 27 2c 20 27 63 6f 6d 70 72 65 73 73 65 64 27 ace.'decompressed',.'compressed'
2e7a0 20 77 69 74 68 20 27 6f 75 74 27 2c 20 27 69 6e 27 20 69 6e 20 6f 75 74 70 75 74 2e 0a 09 2a 20 .with.'out',.'in'.in.output...*.
2e7c0 6c 7a 69 70 5f 69 6e 64 65 78 2e 63 63 3a 20 49 6d 70 72 6f 76 65 20 6d 65 73 73 61 67 65 73 20 lzip_index.cc:.Improve.messages.
2e7e0 66 6f 72 20 63 6f 72 72 75 70 74 69 6f 6e 20 69 6e 20 6c 61 73 74 20 68 65 61 64 65 72 2e 0a 09 for.corruption.in.last.header...
2e800 2a 20 44 6f 63 75 6d 65 6e 74 20 65 78 74 72 61 63 74 69 6f 6e 20 66 72 6f 6d 20 74 61 72 2e 6c *.Document.extraction.from.tar.l
2e820 7a 20 69 6e 20 6d 61 6e 75 61 6c 2c 20 27 2d 2d 68 65 6c 70 27 2c 20 61 6e 64 20 6d 61 6e 20 70 z.in.manual,.'--help',.and.man.p
2e840 61 67 65 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 20 28 49 6e 74 72 6f 64 75 63 74 69 6f 6e 29 age...*.lzip.texi.(Introduction)
2e860 3a 20 4d 65 6e 74 69 6f 6e 20 70 6c 7a 69 70 20 61 6e 64 20 74 61 72 6c 7a 20 61 73 20 61 6c 74 :.Mention.plzip.and.tarlz.as.alt
2e880 65 72 6e 61 74 69 76 65 73 2e 0a 09 20 20 53 65 76 65 72 61 6c 20 66 69 78 65 73 20 61 6e 64 20 ernatives.....Several.fixes.and.
2e8a0 69 6d 70 72 6f 76 65 6d 65 6e 74 73 2e 0a 09 2a 20 74 65 73 74 73 75 69 74 65 3a 20 41 64 64 20 improvements...*.testsuite:.Add.
2e8c0 39 20 6e 65 77 20 74 65 73 74 20 66 69 6c 65 73 2e 0a 0a 32 30 31 39 2d 30 31 2d 30 33 20 20 41 9.new.test.files...2019-01-03..A
2e8e0 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 6f 6e 69 6f 40 67 6e 75 2e 6f ntonio.Diaz.Diaz..<antonio@gnu.o
2e900 72 67 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 32 31 20 72 65 6c 65 61 73 65 64 2e 0a 09 rg>...*.Version.1.21.released...
2e920 2a 20 52 65 6e 61 6d 65 20 46 69 6c 65 5f 2a 20 74 6f 20 4c 7a 69 70 5f 2a 2e 0a 09 2a 20 6c 7a *.Rename.File_*.to.Lzip_*...*.lz
2e940 69 70 2e 68 20 28 4c 7a 69 70 5f 74 72 61 69 6c 65 72 29 3a 20 4e 65 77 20 66 75 6e 63 74 69 6f ip.h.(Lzip_trailer):.New.functio
2e960 6e 20 27 76 65 72 69 66 79 5f 63 6f 6e 73 69 73 74 65 6e 63 79 27 2e 0a 09 2a 20 6c 7a 69 70 5f n.'verify_consistency'...*.lzip_
2e980 69 6e 64 65 78 2e 63 63 3a 20 44 65 74 65 63 74 20 73 6f 6d 65 20 6b 69 6e 64 73 20 6f 66 20 63 index.cc:.Detect.some.kinds.of.c
2e9a0 6f 72 72 75 70 74 20 74 72 61 69 6c 65 72 73 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 6d 61 69 orrupt.trailers...*.main.cc.(mai
2e9c0 6e 29 3a 20 43 68 65 63 6b 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 6f 66 20 63 6c 6f 73 65 28 n):.Check.return.value.of.close(
2e9e0 20 69 6e 66 64 20 29 2e 0a 09 20 20 43 6f 6d 70 69 6c 65 20 6f 6e 20 44 4f 53 20 77 69 74 68 20 .infd.).....Compile.on.DOS.with.
2ea00 44 4a 47 50 50 2e 20 28 52 65 70 6f 72 74 65 64 20 62 79 20 52 6f 62 65 72 74 20 52 69 65 62 69 DJGPP..(Reported.by.Robert.Riebi
2ea20 73 63 68 29 2e 0a 09 20 20 46 69 78 20 61 20 47 43 43 20 77 61 72 6e 69 6e 67 20 61 62 6f 75 74 sch).....Fix.a.GCC.warning.about
2ea40 20 63 61 74 63 68 69 6e 67 20 73 74 64 3a 3a 62 61 64 5f 61 6c 6c 6f 63 20 62 79 20 76 61 6c 75 .catching.std::bad_alloc.by.valu
2ea60 65 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 3a 20 49 6d 70 72 6f 76 65 20 64 65 73 63 72 69 70 e...*.lzip.texi:.Improve.descrip
2ea80 74 69 6f 6e 73 20 6f 66 20 27 2d 30 2e 2e 2d 39 27 2c 20 27 2d 6d 27 2c 20 61 6e 64 20 27 2d 73 tions.of.'-0..-9',.'-m',.and.'-s
2eaa0 27 2e 0a 09 2a 20 63 6f 6e 66 69 67 75 72 65 3a 20 41 63 63 65 70 74 20 61 70 70 65 6e 64 69 6e '...*.configure:.Accept.appendin
2eac0 67 20 74 6f 20 43 58 58 46 4c 41 47 53 3b 20 27 43 58 58 46 4c 41 47 53 2b 3d 4f 50 54 49 4f 4e g.to.CXXFLAGS;.'CXXFLAGS+=OPTION
2eae0 53 27 2e 0a 09 2a 20 49 4e 53 54 41 4c 4c 3a 20 44 6f 63 75 6d 65 6e 74 20 75 73 65 20 6f 66 20 S'...*.INSTALL:.Document.use.of.
2eb00 43 58 58 46 4c 41 47 53 2b 3d 27 2d 44 20 5f 5f 55 53 45 5f 4d 49 4e 47 57 5f 41 4e 53 49 5f 53 CXXFLAGS+='-D.__USE_MINGW_ANSI_S
2eb20 54 44 49 4f 27 2e 0a 0a 32 30 31 38 2d 30 32 2d 31 31 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a TDIO'...2018-02-11..Antonio.Diaz
2eb40 20 44 69 61 7a 20 20 3c 61 6e 74 6f 6e 69 6f 40 67 6e 75 2e 6f 72 67 3e 0a 0a 09 2a 20 56 65 72 .Diaz..<antonio@gnu.org>...*.Ver
2eb60 73 69 6f 6e 20 31 2e 32 30 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 4e 65 77 20 6f 70 74 69 6f sion.1.20.released...*.New.optio
2eb80 6e 20 27 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 27 2e 0a 09 2a 20 49 6d 70 72 6f 76 65 n.'--loose-trailing'...*.Improve
2eba0 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 20 64 65 74 65 63 74 69 6f 6e 20 74 6f 20 48 44 3d .corrupt.header.detection.to.HD=
2ebc0 33 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 53 68 6f 77 20 63 6f 72 72 75 70 74 20 6f 72 20 74 3...*.main.cc:.Show.corrupt.or.t
2ebe0 72 75 6e 63 61 74 65 64 20 68 65 61 64 65 72 20 69 6e 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 runcated.header.in.multimember.f
2ec00 69 6c 65 2e 0a 09 20 20 28 6d 61 69 6e 29 3a 20 4d 61 6b 65 20 6f 70 74 69 6f 6e 20 27 2d 53 2c ile.....(main):.Make.option.'-S,
2ec20 20 2d 2d 76 6f 6c 75 6d 65 2d 73 69 7a 65 27 20 6b 65 65 70 20 69 6e 70 75 74 20 66 69 6c 65 73 .--volume-size'.keep.input.files
2ec40 2e 0a 09 20 20 28 6d 61 69 6e 29 3a 20 53 68 6f 77 20 66 69 6e 61 6c 20 64 69 61 67 6e 6f 73 74 .....(main):.Show.final.diagnost
2ec60 69 63 20 77 68 65 6e 20 74 65 73 74 69 6e 67 20 6d 75 6c 74 69 70 6c 65 20 66 69 6c 65 73 2e 0a ic.when.testing.multiple.files..
2ec80 09 20 20 28 73 65 74 5f 63 5f 6f 75 74 6e 61 6d 65 29 3a 20 44 6f 20 6e 6f 74 20 61 64 64 20 61 ...(set_c_outname):.Do.not.add.a
2eca0 20 73 65 63 6f 6e 64 20 27 2e 6c 7a 27 20 74 6f 20 74 68 65 20 61 72 67 20 6f 66 20 27 2d 6f 27 .second.'.lz'.to.the.arg.of.'-o'
2ecc0 2e 0a 09 2a 20 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 2a 3a 20 41 64 6a 75 73 74 20 64 69 63 74 ...*.encoder_base.*:.Adjust.dict
2ece0 69 6f 6e 61 72 79 20 73 69 7a 65 20 66 6f 72 20 65 61 63 68 20 6d 65 6d 62 65 72 2e 0a 09 2a 20 ionary.size.for.each.member...*.
2ed00 52 65 70 6c 61 63 65 20 27 62 69 74 73 2f 62 79 74 65 27 20 77 69 74 68 20 69 6e 76 65 72 73 65 Replace.'bits/byte'.with.inverse
2ed20 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 69 6e 20 6f 75 74 70 75 74 2e 0a 09 2a .compression.ratio.in.output...*
2ed40 20 53 68 6f 77 20 70 72 6f 67 72 65 73 73 20 6f 66 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 .Show.progress.of.decompression.
2ed60 61 74 20 76 65 72 62 6f 73 69 74 79 20 6c 65 76 65 6c 20 32 20 28 2d 76 76 29 2e 0a 09 2a 20 53 at.verbosity.level.2.(-vv)...*.S
2ed80 68 6f 77 20 70 72 6f 67 72 65 73 73 20 6f 66 20 28 64 65 29 63 6f 6d 70 72 65 73 73 69 6f 6e 20 how.progress.of.(de)compression.
2eda0 6f 6e 6c 79 20 69 66 20 73 74 64 65 72 72 20 69 73 20 61 20 74 65 72 6d 69 6e 61 6c 2e 0a 09 2a only.if.stderr.is.a.terminal...*
2edc0 20 64 65 63 6f 64 65 72 2e 63 63 20 28 76 65 72 69 66 79 5f 74 72 61 69 6c 65 72 29 3a 20 53 68 .decoder.cc.(verify_trailer):.Sh
2ede0 6f 77 20 73 74 6f 72 65 64 20 73 69 7a 65 73 20 61 6c 73 6f 20 69 6e 20 68 65 78 2e 0a 09 20 20 ow.stored.sizes.also.in.hex.....
2ee00 53 68 6f 77 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 61 74 20 76 65 72 62 6f 73 69 74 Show.dictionary.size.at.verbosit
2ee20 79 20 6c 65 76 65 6c 20 34 20 28 2d 76 76 76 76 29 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 3a y.level.4.(-vvvv)...*.lzip.texi:
2ee40 20 4e 65 77 20 63 68 61 70 74 65 72 20 27 4d 65 61 6e 69 6e 67 20 6f 66 20 6c 7a 69 70 27 73 20 .New.chapter.'Meaning.of.lzip's.
2ee60 6f 75 74 70 75 74 27 2e 0a 0a 32 30 31 37 2d 30 34 2d 31 33 20 20 41 6e 74 6f 6e 69 6f 20 44 69 output'...2017-04-13..Antonio.Di
2ee80 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 6f 6e 69 6f 40 67 6e 75 2e 6f 72 67 3e 0a 0a 09 2a 20 56 az.Diaz..<antonio@gnu.org>...*.V
2eea0 65 72 73 69 6f 6e 20 31 2e 31 39 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 54 68 65 20 6f 70 74 ersion.1.19.released...*.The.opt
2eec0 69 6f 6e 20 27 2d 6c 2c 20 2d 2d 6c 69 73 74 27 20 68 61 73 20 62 65 65 6e 20 70 6f 72 74 65 64 ion.'-l,.--list'.has.been.ported
2eee0 20 66 72 6f 6d 20 6c 7a 69 70 72 65 63 6f 76 65 72 2e 0a 09 2a 20 44 6f 6e 27 74 20 61 6c 6c 6f .from.lziprecover...*.Don't.allo
2ef00 77 20 6d 69 78 69 6e 67 20 64 69 66 66 65 72 65 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 28 2d w.mixing.different.operations.(-
2ef20 64 2c 20 2d 6c 20 6f 72 20 2d 74 29 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d d,.-l.or.-t)...*.Compression.tim
2ef40 65 20 6f 66 20 6f 70 74 69 6f 6e 20 27 2d 30 27 20 68 61 73 20 62 65 65 6e 20 73 6c 69 67 68 74 e.of.option.'-0'.has.been.slight
2ef60 6c 79 20 72 65 64 75 63 65 64 2e 0a 09 2a 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d ly.reduced...*.Decompression.tim
2ef80 65 20 68 61 73 20 62 65 65 6e 20 72 65 64 75 63 65 64 20 62 79 20 32 25 2e 0a 09 2a 20 6d 61 69 e.has.been.reduced.by.2%...*.mai
2efa0 6e 2e 63 63 3a 20 43 6f 6e 74 69 6e 75 65 20 74 65 73 74 69 6e 67 20 69 66 20 61 6e 79 20 69 6e n.cc:.Continue.testing.if.any.in
2efc0 70 75 74 20 66 69 6c 65 20 69 73 20 61 20 74 65 72 6d 69 6e 61 6c 2e 0a 09 20 20 53 68 6f 77 20 put.file.is.a.terminal.....Show.
2efe0 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 69 6e 20 62 6f 74 68 20 68 65 78 61 64 65 63 69 6d 61 trailing.data.in.both.hexadecima
2f000 6c 20 61 6e 64 20 41 53 43 49 49 2e 0a 09 2a 20 65 6e 63 6f 64 65 72 2e 63 63 20 28 4d 61 74 63 l.and.ASCII...*.encoder.cc.(Matc
2f020 68 66 69 6e 64 65 72 5f 62 61 73 65 29 3a 20 43 68 65 63 6b 20 74 68 65 20 73 69 7a 65 20 70 61 hfinder_base):.Check.the.size.pa
2f040 73 73 65 64 20 74 6f 20 6e 65 77 2e 0a 09 2a 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 63 63 3a 20 49 ssed.to.new...*.lzip_index.cc:.I
2f060 6d 70 72 6f 76 65 20 64 65 74 65 63 74 69 6f 6e 20 6f 66 20 62 61 64 20 64 69 63 74 20 61 6e 64 mprove.detection.of.bad.dict.and
2f080 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 2e 0a 09 2a 20 6c 7a 69 70 2e 68 3a 20 55 6e 69 66 79 .trailing.data...*.lzip.h:.Unify
2f0a0 20 6d 65 73 73 61 67 65 73 20 66 6f 72 20 62 61 64 20 6d 61 67 69 63 2c 20 74 72 61 69 6c 69 6e .messages.for.bad.magic,.trailin
2f0c0 67 20 64 61 74 61 2c 20 65 74 63 2e 0a 0a 32 30 31 36 2d 30 35 2d 31 34 20 20 41 6e 74 6f 6e 69 g.data,.etc...2016-05-14..Antoni
2f0e0 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 6f 6e 69 6f 40 67 6e 75 2e 6f 72 67 3e 0a 0a o.Diaz.Diaz..<antonio@gnu.org>..
2f100 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 38 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 4e 65 77 .*.Version.1.18.released...*.New
2f120 20 6f 70 74 69 6f 6e 20 27 2d 61 2c 20 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 27 2e 0a .option.'-a,.--trailing-error'..
2f140 09 2a 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d 65 20 68 61 73 20 62 65 65 6e 20 72 .*.Decompression.time.has.been.r
2f160 65 64 75 63 65 64 20 62 79 20 32 25 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 6d 61 69 6e 29 3a educed.by.2%...*.main.cc.(main):
2f180 20 44 65 6c 65 74 65 20 27 2d 2d 6f 75 74 70 75 74 27 20 66 69 6c 65 20 69 66 20 69 6e 66 64 20 .Delete.'--output'.file.if.infd.
2f1a0 69 73 20 61 20 74 65 72 6d 69 6e 61 6c 2e 0a 09 20 20 28 6d 61 69 6e 29 3a 20 44 6f 6e 27 74 20 is.a.terminal.....(main):.Don't.
2f1c0 75 73 65 20 73 74 64 69 6e 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 63 65 2e 0a 09 2a 20 52 65 6d use.stdin.more.than.once...*.Rem
2f1e0 6f 76 65 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 73 75 70 70 6f 72 74 20 66 6f 72 20 76 65 ove.decompression.support.for.ve
2f200 72 73 69 6f 6e 20 30 20 66 69 6c 65 73 2e 0a 09 2a 20 64 65 63 6f 64 65 72 2e 63 63 20 28 76 65 rsion.0.files...*.decoder.cc.(ve
2f220 72 69 66 79 5f 74 72 61 69 6c 65 72 29 3a 20 52 65 6d 6f 76 65 20 74 65 73 74 20 6f 66 20 66 69 rify_trailer):.Remove.test.of.fi
2f240 6e 61 6c 20 63 6f 64 65 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 3a 20 4e 65 77 20 63 68 61 70 nal.code...*.lzip.texi:.New.chap
2f260 74 65 72 20 27 54 72 61 69 6c 69 6e 67 20 64 61 74 61 27 2e 0a 09 2a 20 63 6f 6e 66 69 67 75 72 ter.'Trailing.data'...*.configur
2f280 65 3a 20 41 76 6f 69 64 20 77 61 72 6e 69 6e 67 20 6f 6e 20 73 6f 6d 65 20 73 68 65 6c 6c 73 20 e:.Avoid.warning.on.some.shells.
2f2a0 77 68 65 6e 20 74 65 73 74 69 6e 67 20 66 6f 72 20 67 2b 2b 2e 0a 09 2a 20 4d 61 6b 65 66 69 6c when.testing.for.g++...*.Makefil
2f2c0 65 2e 69 6e 3a 20 44 65 74 65 63 74 20 74 68 65 20 65 78 69 73 74 65 6e 63 65 20 6f 66 20 69 6e e.in:.Detect.the.existence.of.in
2f2e0 73 74 61 6c 6c 2d 69 6e 66 6f 2e 0a 09 2a 20 63 68 65 63 6b 2e 73 68 3a 20 52 65 71 75 69 72 65 stall-info...*.check.sh:.Require
2f300 20 61 20 50 4f 53 49 58 20 73 68 65 6c 6c 2e 20 44 6f 6e 27 74 20 63 68 65 63 6b 20 65 72 72 6f .a.POSIX.shell..Don't.check.erro
2f320 72 20 6d 65 73 73 61 67 65 73 2e 0a 0a 32 30 31 35 2d 30 37 2d 31 32 20 20 41 6e 74 6f 6e 69 6f r.messages...2015-07-12..Antonio
2f340 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 6f 6e 69 6f 40 67 6e 75 2e 6f 72 67 3e 0a 0a 09 .Diaz.Diaz..<antonio@gnu.org>...
2f360 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 37 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 52 65 6f 72 *.Version.1.17.released...*.Reor
2f380 67 61 6e 69 7a 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 63 6f ganization.of.the.compression.co
2f3a0 64 65 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 3a 20 4e 65 77 20 63 68 61 70 74 65 72 20 27 51 de...*.lzip.texi:.New.chapter.'Q
2f3c0 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 65 27 2e 0a 09 2a 20 4d 61 6b 65 66 69 6c 65 2e 69 uality.assurance'...*.Makefile.i
2f3e0 6e 3a 20 4e 65 77 20 74 61 72 67 65 74 73 20 27 69 6e 73 74 61 6c 6c 2a 2d 63 6f 6d 70 72 65 73 n:.New.targets.'install*-compres
2f400 73 27 2e 0a 0a 32 30 31 34 2d 30 38 2d 32 36 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 s'...2014-08-26..Antonio.Diaz.Di
2f420 61 7a 20 20 3c 61 6e 74 6f 6e 69 6f 40 67 6e 75 2e 6f 72 67 3e 0a 0a 09 2a 20 56 65 72 73 69 6f az..<antonio@gnu.org>...*.Versio
2f440 6e 20 31 2e 31 36 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 n.1.16.released...*.Compression.
2f460 72 61 74 69 6f 20 6f 66 20 6f 70 74 69 6f 6e 20 27 2d 39 27 20 68 61 73 20 62 65 65 6e 20 73 6c ratio.of.option.'-9'.has.been.sl
2f480 69 67 68 74 6c 79 20 69 6e 63 72 65 61 73 65 64 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 6f 6e ightly.increased...*.Compression
2f4a0 20 74 69 6d 65 20 68 61 73 20 62 65 65 6e 20 72 65 64 75 63 65 64 20 62 79 20 34 25 2e 0a 09 2a .time.has.been.reduced.by.4%...*
2f4c0 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d 65 20 6f 66 20 6f 70 74 69 6f 6e 20 27 2d 30 27 .Compression.time.of.option.'-0'
2f4e0 20 68 61 73 20 62 65 65 6e 20 72 65 64 75 63 65 64 20 62 79 20 32 25 2e 0a 09 2a 20 6d 61 69 6e .has.been.reduced.by.2%...*.main
2f500 2e 63 63 20 28 63 6c 6f 73 65 5f 61 6e 64 5f 73 65 74 5f 70 65 72 6d 69 73 73 69 6f 6e 73 29 3a .cc.(close_and_set_permissions):
2f520 20 42 65 68 61 76 65 20 6c 69 6b 65 20 27 63 70 20 2d 70 27 2e 0a 09 2a 20 4d 69 6e 6f 72 20 69 .Behave.like.'cp.-p'...*.Minor.i
2f540 6d 70 72 6f 76 65 6d 65 6e 74 73 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 6e 66 6f 3a 20 52 65 mprovements...*.lzip.texinfo:.Re
2f560 6e 61 6d 65 20 74 6f 20 6c 7a 69 70 2e 74 65 78 69 2e 0a 09 2a 20 43 68 61 6e 67 65 20 6c 69 63 name.to.lzip.texi...*.Change.lic
2f580 65 6e 73 65 20 74 6f 20 47 50 4c 20 76 65 72 73 69 6f 6e 20 32 20 6f 72 20 6c 61 74 65 72 2e 0a ense.to.GPL.version.2.or.later..
2f5a0 0a 32 30 31 33 2d 30 39 2d 32 30 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 .2013-09-20..Antonio.Diaz.Diaz..
2f5c0 3c 61 6e 74 6f 6e 69 6f 40 67 6e 75 2e 6f 72 67 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e <antonio@gnu.org>...*.Version.1.
2f5e0 31 35 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 53 68 6f 77 20 70 72 6f 67 72 65 73 73 20 6f 66 15.released...*.Show.progress.of
2f600 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 61 74 20 76 65 72 62 6f 73 69 74 79 20 6c 65 76 65 6c 20 .compression.at.verbosity.level.
2f620 32 20 28 2d 76 76 29 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 73 68 6f 77 5f 68 65 61 64 65 72 2.(-vv)...*.main.cc.(show_header
2f640 29 3a 20 44 6f 6e 27 74 20 73 68 6f 77 20 68 65 61 64 65 72 20 76 65 72 73 69 6f 6e 2e 0a 09 2a ):.Don't.show.header.version...*
2f660 20 49 67 6e 6f 72 65 20 6f 70 74 69 6f 6e 20 27 2d 6e 2c 20 2d 2d 74 68 72 65 61 64 73 27 20 66 .Ignore.option.'-n,.--threads'.f
2f680 6f 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 70 6c 7a 69 70 2e 0a 09 2a 20 or.compatibility.with.plzip...*.
2f6a0 63 6f 6e 66 69 67 75 72 65 3a 20 4f 70 74 69 6f 6e 73 20 6e 6f 77 20 61 63 63 65 70 74 20 61 20 configure:.Options.now.accept.a.
2f6c0 73 65 70 61 72 61 74 65 20 61 72 67 75 6d 65 6e 74 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 6e separate.argument...*.lzip.texin
2f6e0 66 6f 3a 20 4e 65 77 20 63 68 61 70 74 65 72 20 27 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 27 20 fo:.New.chapter.'Stream.format'.
2f700 61 6e 64 20 61 70 70 65 6e 64 69 78 0a 09 20 20 27 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 and.appendix....'Reference.sourc
2f720 65 20 63 6f 64 65 27 2e 0a 0a 32 30 31 33 2d 30 32 2d 31 37 20 20 41 6e 74 6f 6e 69 6f 20 44 69 e.code'...2013-02-17..Antonio.Di
2f740 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 3e 0a az.Diaz..<ant_diaz@teleline.es>.
2f760 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 34 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 4d 75 ..*.Version.1.14.released...*.Mu
2f780 6c 74 69 2d 73 74 65 70 20 74 72 69 61 6c 73 20 68 61 76 65 20 62 65 65 6e 20 69 6d 70 6c 65 6d lti-step.trials.have.been.implem
2f7a0 65 6e 74 65 64 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 68 61 73 20 ented...*.Compression.ratio.has.
2f7c0 62 65 65 6e 20 73 6c 69 67 68 74 6c 79 20 69 6e 63 72 65 61 73 65 64 2e 0a 09 2a 20 43 6f 6d 70 been.slightly.increased...*.Comp
2f7e0 72 65 73 73 69 6f 6e 20 74 69 6d 65 20 68 61 73 20 62 65 65 6e 20 72 65 64 75 63 65 64 20 62 79 ression.time.has.been.reduced.by
2f800 20 35 25 2e 0a 09 2a 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d 65 20 68 61 73 20 62 .5%...*.Decompression.time.has.b
2f820 65 65 6e 20 72 65 64 75 63 65 64 20 62 79 20 31 32 25 2e 0a 09 2a 20 4d 61 6b 65 66 69 6c 65 2e een.reduced.by.12%...*.Makefile.
2f840 69 6e 3a 20 4e 65 77 20 74 61 72 67 65 74 20 27 69 6e 73 74 61 6c 6c 2d 62 69 6e 27 2e 0a 09 2a in:.New.target.'install-bin'...*
2f860 20 6d 61 69 6e 2e 63 63 3a 20 44 65 66 69 6e 65 20 27 73 74 72 74 6f 75 6c 6c 27 20 74 6f 20 27 .main.cc:.Define.'strtoull'.to.'
2f880 73 74 64 3a 3a 73 74 72 74 6f 75 6c 27 20 6f 6e 20 57 69 6e 64 6f 77 73 2e 0a 09 20 20 28 6d 61 std::strtoul'.on.Windows.....(ma
2f8a0 69 6e 29 3a 20 55 73 65 20 27 73 65 74 6d 6f 64 65 27 20 69 6e 73 74 65 61 64 20 6f 66 20 27 5f in):.Use.'setmode'.instead.of.'_
2f8c0 73 65 74 6d 6f 64 65 27 20 6f 6e 20 57 69 6e 64 6f 77 73 20 61 6e 64 20 4f 53 2f 32 2e 0a 0a 32 setmode'.on.Windows.and.OS/2...2
2f8e0 30 31 32 2d 30 32 2d 32 34 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 012-02-24..Antonio.Diaz.Diaz..<a
2f900 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e nt_diaz@teleline.es>...*.Version
2f920 20 31 2e 31 33 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 4c 7a 69 70 72 65 63 6f 76 65 72 20 68 .1.13.released...*.Lziprecover.h
2f940 61 73 20 62 65 65 6e 20 6d 6f 76 65 64 20 74 6f 20 69 74 73 20 6f 77 6e 20 70 61 63 6b 61 67 65 as.been.moved.to.its.own.package
2f960 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 63 6c 6f 73 65 5f 61 6e 64 5f 73 65 74 5f 70 65 72 6d ...*.main.cc.(close_and_set_perm
2f980 69 73 73 69 6f 6e 73 29 3a 20 49 6e 61 62 69 6c 69 74 79 20 74 6f 20 63 68 61 6e 67 65 20 6f 75 issions):.Inability.to.change.ou
2f9a0 74 70 75 74 0a 09 20 20 66 69 6c 65 20 61 74 74 72 69 62 75 74 65 73 20 68 61 73 20 62 65 65 6e tput....file.attributes.has.been
2f9c0 20 64 6f 77 6e 67 72 61 64 65 64 20 66 72 6f 6d 20 65 72 72 6f 72 20 74 6f 20 77 61 72 6e 69 6e .downgraded.from.error.to.warnin
2f9e0 67 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d 65 20 6f 66 20 6f 70 74 69 6f 6e g...*.Compression.time.of.option
2fa00 20 27 2d 30 27 20 68 61 73 20 62 65 65 6e 20 72 65 64 75 63 65 64 20 62 79 20 32 25 2e 0a 09 2a .'-0'.has.been.reduced.by.2%...*
2fa20 20 52 65 6f 72 67 61 6e 69 7a 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 .Reorganization.of.the.compressi
2fa40 6f 6e 20 63 6f 64 65 2e 0a 09 2a 20 53 6d 61 6c 6c 20 63 68 61 6e 67 65 20 69 6e 20 27 2d 2d 68 on.code...*.Small.change.in.'--h
2fa60 65 6c 70 27 20 6f 75 74 70 75 74 20 61 6e 64 20 6d 61 6e 20 70 61 67 65 2e 0a 09 2a 20 43 68 61 elp'.output.and.man.page...*.Cha
2fa80 6e 67 65 20 71 75 6f 74 65 20 63 68 61 72 61 63 74 65 72 73 20 69 6e 20 6d 65 73 73 61 67 65 73 nge.quote.characters.in.messages
2faa0 20 61 73 20 61 64 76 69 73 65 64 20 62 79 20 47 4e 55 20 53 74 61 6e 64 61 72 64 73 2e 0a 09 2a .as.advised.by.GNU.Standards...*
2fac0 20 63 6f 6e 66 69 67 75 72 65 3a 20 52 65 6e 61 6d 65 20 27 64 61 74 61 64 69 72 27 20 74 6f 20 .configure:.Rename.'datadir'.to.
2fae0 27 64 61 74 61 72 6f 6f 74 64 69 72 27 2e 0a 09 2a 20 27 75 6e 7a 63 72 61 73 68 2e 63 63 27 20 'datarootdir'...*.'unzcrash.cc'.
2fb00 68 61 73 20 62 65 65 6e 20 6d 6f 76 65 64 20 74 6f 20 70 61 63 6b 61 67 65 20 27 6c 7a 69 70 72 has.been.moved.to.package.'lzipr
2fb20 65 63 6f 76 65 72 27 2e 0a 0a 32 30 31 31 2d 30 34 2d 33 30 20 20 41 6e 74 6f 6e 69 6f 20 44 69 ecover'...2011-04-30..Antonio.Di
2fb40 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 3e 0a az.Diaz..<ant_diaz@teleline.es>.
2fb60 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 32 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 4e 65 ..*.Version.1.12.released...*.Ne
2fb80 77 20 6f 70 74 69 6f 6e 20 27 2d 46 2c 20 2d 2d 72 65 63 6f 6d 70 72 65 73 73 27 2e 0a 09 2a 20 w.option.'-F,.--recompress'...*.
2fba0 65 6e 63 6f 64 65 72 2e 68 20 28 75 70 64 61 74 65 5f 70 72 69 63 65 73 29 3a 20 55 70 64 61 74 encoder.h.(update_prices):.Updat
2fbc0 65 20 68 69 67 68 20 6c 65 6e 67 74 68 20 73 79 6d 62 6f 6c 20 70 72 69 63 65 73 0a 09 20 20 69 e.high.length.symbol.prices....i
2fbe0 6e 64 65 70 65 6e 64 65 6e 74 6c 79 20 6f 66 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 27 70 6f ndependently.of.the.value.of.'po
2fc00 73 5f 73 74 61 74 65 27 2e 20 54 68 69 73 20 67 69 76 65 73 20 62 65 74 74 65 72 0a 09 20 20 63 s_state'..This.gives.better....c
2fc20 6f 6d 70 72 65 73 73 69 6f 6e 20 66 6f 72 20 6c 61 72 67 65 20 76 61 6c 75 65 73 20 6f 66 20 27 ompression.for.large.values.of.'
2fc40 2d 2d 6d 61 74 63 68 2d 6c 65 6e 67 74 68 27 20 77 69 74 68 6f 75 74 20 62 65 69 6e 67 0a 09 20 --match-length'.without.being...
2fc60 20 73 6c 6f 77 65 72 2e 0a 09 2a 20 65 6e 63 6f 64 65 72 2e 68 2c 20 65 6e 63 6f 64 65 72 2e 63 .slower...*.encoder.h,.encoder.c
2fc80 63 3a 20 4f 70 74 69 6d 69 7a 65 20 70 61 69 72 20 70 72 69 63 65 20 63 61 6c 63 75 6c 61 74 69 c:.Optimize.pair.price.calculati
2fca0 6f 6e 73 2c 20 72 65 64 75 63 69 6e 67 0a 09 20 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d ons,.reducing....compression.tim
2fcc0 65 20 66 6f 72 20 6c 61 72 67 65 20 76 61 6c 75 65 73 20 6f 66 20 27 2d 2d 6d 61 74 63 68 2d 6c e.for.large.values.of.'--match-l
2fce0 65 6e 67 74 68 27 20 62 79 20 75 70 20 74 6f 20 36 25 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 ength'.by.up.to.6%...*.Compressi
2fd00 6f 6e 20 74 69 6d 65 20 6f 66 20 6f 70 74 69 6f 6e 20 27 2d 30 27 20 68 61 73 20 62 65 65 6e 20 on.time.of.option.'-0'.has.been.
2fd20 72 65 64 75 63 65 64 20 62 79 20 32 25 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 64 65 63 6f 6d reduced.by.2%...*.main.cc.(decom
2fd40 70 72 65 73 73 29 3a 20 50 72 69 6e 74 20 6f 6e 6c 79 20 6f 6e 65 20 73 74 61 74 75 73 20 6c 69 press):.Print.only.one.status.li
2fd60 6e 65 20 66 6f 72 20 65 61 63 68 0a 09 20 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 20 ne.for.each....multimember.file.
2fd80 77 68 65 6e 20 6f 6e 6c 79 20 6f 6e 65 20 27 2d 76 27 20 69 73 20 73 70 65 63 69 66 69 65 64 2e when.only.one.'-v'.is.specified.
2fda0 0a 09 20 20 28 64 65 63 6f 6d 70 72 65 73 73 29 3a 20 50 72 69 6e 74 20 36 20 62 79 74 65 73 20 ....(decompress):.Print.6.bytes.
2fdc0 6f 66 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 61 74 20 76 65 72 62 6f 73 69 74 79 20 6c 65 of.trailing.data.at.verbosity.le
2fde0 76 65 6c 20 34 2e 0a 09 20 20 28 6f 70 65 6e 5f 69 6e 73 74 72 65 61 6d 29 3a 20 44 6f 6e 27 74 vel.4.....(open_instream):.Don't
2fe00 20 73 68 6f 77 20 74 68 65 20 6d 65 73 73 61 67 65 0a 09 20 20 22 20 61 6e 64 20 27 2d 2d 73 74 .show.the.message....".and.'--st
2fe20 64 6f 75 74 27 20 77 61 73 20 6e 6f 74 20 73 70 65 63 69 66 69 65 64 22 20 66 6f 72 20 64 69 72 dout'.was.not.specified".for.dir
2fe40 65 63 74 6f 72 69 65 73 2c 20 65 74 63 2e 0a 09 2a 20 6c 7a 69 70 72 65 63 6f 76 65 72 2e 63 63 ectories,.etc...*.lziprecover.cc
2fe60 3a 20 49 66 20 27 2d 76 27 20 69 73 20 6e 6f 74 20 73 70 65 63 69 66 69 65 64 20 73 68 6f 77 20 :.If.'-v'.is.not.specified.show.
2fe80 65 72 72 6f 72 73 20 6f 6e 6c 79 2e 0a 09 2a 20 75 6e 7a 63 72 61 73 68 2e 63 63 3a 20 55 73 65 errors.only...*.unzcrash.cc:.Use
2fea0 20 41 72 67 5f 70 61 72 73 65 72 2e 0a 09 20 20 4e 65 77 20 6f 70 74 69 6f 6e 73 20 27 2d 62 2c .Arg_parser.....New.options.'-b,
2fec0 20 2d 2d 62 69 74 73 27 2c 20 27 2d 70 2c 20 2d 2d 70 6f 73 69 74 69 6f 6e 27 2c 20 61 6e 64 20 .--bits',.'-p,.--position',.and.
2fee0 27 2d 73 2c 20 2d 2d 73 69 7a 65 27 2e 0a 0a 32 30 31 30 2d 30 39 2d 31 36 20 20 41 6e 74 6f 6e '-s,.--size'...2010-09-16..Anton
2ff00 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 io.Diaz.Diaz..<ant_diaz@teleline
2ff20 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 31 20 72 65 6c 65 61 73 65 64 2e 0a .es>...*.Version.1.11.released..
2ff40 09 2a 20 4e 65 77 20 6f 70 74 69 6f 6e 20 27 2d 30 27 2c 20 77 68 69 63 68 20 70 72 6f 64 75 63 .*.New.option.'-0',.which.produc
2ff60 65 73 20 61 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 73 70 65 65 64 20 61 6e 64 20 72 61 74 69 6f es.a.compression.speed.and.ratio
2ff80 0a 09 20 20 63 6f 6d 70 61 72 61 62 6c 65 20 74 6f 20 74 68 6f 73 65 20 6f 66 20 27 67 7a 69 70 ....comparable.to.those.of.'gzip
2ffa0 20 2d 39 27 2e 0a 09 2a 20 66 61 73 74 5f 65 6e 63 6f 64 65 72 2e 68 2c 20 66 61 73 74 5f 65 6e .-9'...*.fast_encoder.h,.fast_en
2ffc0 63 6f 64 65 72 2e 63 63 3a 20 4e 65 77 20 66 69 6c 65 73 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a coder.cc:.New.files...*.main.cc:
2ffe0 20 4d 61 74 63 68 20 6c 65 6e 67 74 68 20 6c 69 6d 69 74 20 73 65 74 20 62 79 20 6f 70 74 69 6f .Match.length.limit.set.by.optio
30000 6e 73 20 2d 31 20 74 6f 20 2d 38 20 68 61 73 20 62 65 65 6e 0a 09 20 20 72 65 64 75 63 65 64 20 ns.-1.to.-8.has.been....reduced.
30020 74 6f 20 65 78 74 65 6e 64 20 72 61 6e 67 65 20 6f 66 20 75 73 65 20 74 6f 77 61 72 64 73 20 67 to.extend.range.of.use.towards.g
30040 7a 69 70 2e 20 4c 6f 77 65 72 20 6e 75 6d 62 65 72 73 20 6e 6f 77 0a 09 20 20 63 6f 6d 70 72 65 zip..Lower.numbers.now....compre
30060 73 73 20 6c 65 73 73 20 62 75 74 20 66 61 73 74 65 72 2e 20 28 2d 31 20 6e 6f 77 20 74 61 6b 65 ss.less.but.faster..(-1.now.take
30080 73 20 34 33 25 20 6c 65 73 73 20 74 69 6d 65 20 66 6f 72 20 6f 6e 6c 79 20 32 30 25 0a 09 20 20 s.43%.less.time.for.only.20%....
300a0 6c 61 72 67 65 72 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 29 2e 0a 09 20 20 45 78 69 74 larger.compressed.size).....Exit
300c0 20 77 69 74 68 20 73 74 61 74 75 73 20 31 20 69 66 20 61 6e 79 20 6f 75 74 70 75 74 20 66 69 6c .with.status.1.if.any.output.fil
300e0 65 20 65 78 69 73 74 73 20 61 6e 64 20 69 73 20 73 6b 69 70 70 65 64 2e 0a 09 20 20 46 69 78 20 e.exists.and.is.skipped.....Fix.
30100 77 61 72 6e 69 6e 67 20 61 62 6f 75 74 20 66 63 68 6f 77 6e 27 73 20 72 65 74 75 72 6e 20 76 61 warning.about.fchown's.return.va
30120 6c 75 65 20 62 65 69 6e 67 20 69 67 6e 6f 72 65 64 2e 0a 09 20 20 28 6d 61 69 6e 29 3a 20 53 65 lue.being.ignored.....(main):.Se
30140 74 20 73 74 64 69 6e 2f 73 74 64 6f 75 74 20 69 6e 20 62 69 6e 61 72 79 20 6d 6f 64 65 20 6f 6e t.stdin/stdout.in.binary.mode.on
30160 20 4d 53 56 43 20 61 6e 64 20 4f 53 32 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 .MSVC.and.OS2...*.Compression.ra
30180 74 69 6f 20 6f 66 20 6f 70 74 69 6f 6e 20 27 2d 39 27 20 68 61 73 20 62 65 65 6e 20 73 6c 69 67 tio.of.option.'-9'.has.been.slig
301a0 68 74 6c 79 20 69 6e 63 72 65 61 73 65 64 2e 0a 09 2a 20 64 65 63 6f 64 65 72 2e 63 63 20 28 64 htly.increased...*.decoder.cc.(d
301c0 65 63 6f 64 65 5f 6d 65 6d 62 65 72 29 3a 20 44 65 74 65 63 74 20 66 69 6c 65 20 65 72 72 6f 72 ecode_member):.Detect.file.error
301e0 73 20 65 61 72 6c 69 65 72 20 74 6f 20 69 6d 70 72 6f 76 65 0a 09 20 20 65 66 66 69 63 69 65 6e s.earlier.to.improve....efficien
30200 63 79 20 6f 66 20 6c 7a 69 70 72 65 63 6f 76 65 72 27 73 20 6e 65 77 20 72 65 70 61 69 72 20 63 cy.of.lziprecover's.new.repair.c
30220 61 70 61 62 69 6c 69 74 79 2e 0a 09 20 20 54 68 69 73 20 63 68 61 6e 67 65 20 61 6c 73 6f 20 70 apability.....This.change.also.p
30240 72 65 76 65 6e 74 73 20 28 68 61 72 6d 6c 65 73 73 29 20 61 63 63 65 73 73 20 74 6f 20 75 6e 69 revents.(harmless).access.to.uni
30260 6e 69 74 69 61 6c 69 7a 65 64 0a 09 20 20 6d 65 6d 6f 72 79 20 77 68 65 6e 20 64 65 63 6f 6d 70 nitialized....memory.when.decomp
30280 72 65 73 73 69 6e 67 20 61 20 63 6f 72 72 75 70 74 20 66 69 6c 65 2e 0a 09 20 20 28 76 65 72 69 ressing.a.corrupt.file.....(veri
302a0 66 79 5f 74 72 61 69 6c 65 72 29 3a 20 27 2d 74 76 76 76 76 27 20 6e 6f 77 20 61 6c 73 6f 20 73 fy_trailer):.'-tvvvv'.now.also.s
302c0 68 6f 77 73 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 2e 0a 09 2a 20 6c 7a 69 70 72 hows.compression.ratio...*.lzipr
302e0 65 63 6f 76 65 72 2e 63 63 3a 20 4e 65 77 20 6f 70 74 69 6f 6e 20 27 2d 6d 2c 20 2d 2d 6d 65 72 ecover.cc:.New.option.'-m,.--mer
30300 67 65 27 2c 20 77 68 69 63 68 20 74 72 69 65 73 20 74 6f 20 70 72 6f 64 75 63 65 20 61 0a 09 20 ge',.which.tries.to.produce.a...
30320 20 63 6f 72 72 65 63 74 20 66 69 6c 65 20 62 79 20 6d 65 72 67 69 6e 67 20 74 68 65 20 67 6f 6f .correct.file.by.merging.the.goo
30340 64 20 70 61 72 74 73 20 6f 66 20 74 77 6f 20 6f 72 20 6d 6f 72 65 20 64 61 6d 61 67 65 64 20 63 d.parts.of.two.or.more.damaged.c
30360 6f 70 69 65 73 2e 0a 09 20 20 4e 65 77 20 6f 70 74 69 6f 6e 20 27 2d 52 2c 20 2d 2d 72 65 70 61 opies.....New.option.'-R,.--repa
30380 69 72 27 20 66 6f 72 20 72 65 70 61 69 72 69 6e 67 20 61 20 31 2d 62 79 74 65 20 65 72 72 6f 72 ir'.for.repairing.a.1-byte.error
303a0 20 69 6e 0a 09 20 20 73 69 6e 67 6c 65 2d 6d 65 6d 62 65 72 20 66 69 6c 65 73 2e 0a 09 20 20 4e .in....single-member.files.....N
303c0 65 77 20 6f 70 74 69 6f 6e 73 20 27 2d 66 2c 20 2d 2d 66 6f 72 63 65 27 20 61 6e 64 20 27 2d 6f ew.options.'-f,.--force'.and.'-o
303e0 2c 20 2d 2d 6f 75 74 70 75 74 27 2e 0a 09 20 20 4e 65 77 20 6f 70 74 69 6f 6e 20 27 2d 73 2c 20 ,.--output'.....New.option.'-s,.
30400 2d 2d 73 70 6c 69 74 27 20 74 6f 20 73 65 6c 65 63 74 20 74 68 65 20 75 6e 74 69 6c 20 6e 6f 77 --split'.to.select.the.until.now
30420 20 6f 6e 6c 79 20 6f 70 65 72 61 74 69 6f 6e 20 6f 66 0a 09 20 20 73 70 6c 69 74 74 69 6e 67 20 .only.operation.of....splitting.
30440 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 2e 0a 09 20 20 49 66 20 6e 6f 20 6f 70 65 72 multimember.files.....If.no.oper
30460 61 74 69 6f 6e 20 69 73 20 73 70 65 63 69 66 69 65 64 2c 20 77 61 72 6e 20 74 68 65 20 75 73 65 ation.is.specified,.warn.the.use
30480 72 20 61 6e 64 20 64 6f 20 6e 6f 74 68 69 6e 67 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 6e 66 r.and.do.nothing...*.lzip.texinf
304a0 6f 3a 20 4e 65 77 20 65 78 61 6d 70 6c 65 73 2e 0a 09 2a 20 74 65 73 74 73 75 69 74 65 3a 20 52 o:.New.examples...*.testsuite:.R
304c0 65 6e 61 6d 65 20 27 74 65 73 74 31 27 20 74 6f 20 27 74 65 73 74 2e 74 78 74 27 2e 20 4e 65 77 ename.'test1'.to.'test.txt'..New
304e0 20 74 65 73 74 73 2e 0a 09 2a 20 4d 61 74 63 68 66 69 6e 64 65 72 20 74 79 70 65 73 20 48 43 34 .tests...*.Matchfinder.types.HC4
30500 20 28 34 20 62 79 74 65 73 20 68 61 73 68 2d 63 68 61 69 6e 29 20 61 6e 64 20 48 54 34 20 28 34 .(4.bytes.hash-chain).and.HT4.(4
30520 20 62 79 74 65 73 0a 09 20 20 68 61 73 68 2d 74 61 62 6c 65 29 20 68 61 76 65 20 62 65 65 6e 20 .bytes....hash-table).have.been.
30540 74 65 73 74 65 64 20 61 6e 64 20 66 6f 75 6e 64 20 6e 6f 20 62 65 74 74 65 72 20 74 68 61 6e 20 tested.and.found.no.better.than.
30560 63 75 72 72 65 6e 74 20 42 54 34 2e 0a 0a 32 30 31 30 2d 30 34 2d 30 35 20 20 41 6e 74 6f 6e 69 current.BT4...2010-04-05..Antoni
30580 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e o.Diaz.Diaz..<ant_diaz@teleline.
305a0 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 30 20 72 65 6c 65 61 73 65 64 2e 0a 09 es>...*.Version.1.10.released...
305c0 2a 20 64 65 63 6f 64 65 72 2e 68 3a 20 49 6e 70 75 74 5f 62 75 66 66 65 72 20 69 6e 74 65 67 72 *.decoder.h:.Input_buffer.integr
305e0 61 74 65 64 20 69 6e 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 2e 0a 09 2a 20 6d 61 69 6e 2e 63 ated.in.Range_decoder...*.main.c
30600 63 3a 20 46 69 6c 65 20 73 70 65 63 69 66 69 65 64 20 77 69 74 68 20 6f 70 74 69 6f 6e 20 27 2d c:.File.specified.with.option.'-
30620 6f 27 20 69 73 20 6e 6f 77 20 63 72 65 61 74 65 64 20 77 69 74 68 20 6d 6f 64 65 0a 09 20 20 30 o'.is.now.created.with.mode....0
30640 36 36 36 20 69 66 20 75 6d 61 73 6b 20 61 6c 6c 6f 77 73 20 69 74 2c 20 64 65 6c 65 74 65 64 20 666.if.umask.allows.it,.deleted.
30660 69 66 20 69 6e 74 65 72 72 75 70 74 65 64 20 62 79 20 75 73 65 72 2e 0a 09 20 20 4e 65 77 20 63 if.interrupted.by.user.....New.c
30680 6f 6e 73 74 61 6e 74 20 27 6f 5f 62 69 6e 61 72 79 27 2e 0a 09 20 20 28 6d 61 69 6e 29 3a 20 43 onstant.'o_binary'.....(main):.C
306a0 68 61 6e 67 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 66 6f 72 20 6f 70 74 69 6f 6e hange.dictionary.size.for.option
306c0 73 20 2d 32 2c 20 2d 33 2c 20 2d 34 20 61 6e 64 20 2d 38 20 74 6f 0a 09 20 20 69 6d 70 72 6f 76 s.-2,.-3,.-4.and.-8.to....improv
306e0 65 20 6c 69 6e 65 61 72 69 74 79 20 6f 66 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 73 2e e.linearity.of.compressed.sizes.
30700 0a 09 2a 20 6c 7a 69 70 2e 68 3a 20 46 69 78 20 77 61 72 6e 69 6e 67 73 20 70 72 6f 64 75 63 65 ..*.lzip.h:.Fix.warnings.produce
30720 64 20 62 79 20 6f 76 65 72 2d 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 28 2d 4f 33 29 2e 0a 09 2a d.by.over-optimization.(-O3)...*
30740 20 4d 61 6b 65 66 69 6c 65 2e 69 6e 3a 20 41 64 64 20 71 75 6f 74 65 73 20 74 6f 20 64 69 72 65 .Makefile.in:.Add.quotes.to.dire
30760 63 74 6f 72 79 20 6e 61 6d 65 73 2e 0a 0a 32 30 31 30 2d 30 31 2d 31 37 20 20 41 6e 74 6f 6e 69 ctory.names...2010-01-17..Antoni
30780 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e o.Diaz.Diaz..<ant_diaz@teleline.
307a0 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 39 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a es>...*.Version.1.9.released...*
307c0 20 6d 61 69 6e 2e 63 63 20 28 6d 61 69 6e 29 3a 20 52 65 74 75 72 6e 20 61 74 20 6c 65 61 73 74 .main.cc.(main):.Return.at.least
307e0 20 31 20 69 66 20 63 6c 6f 73 69 6e 67 20 73 74 64 6f 75 74 20 66 61 69 6c 73 2e 0a 09 2a 20 4d .1.if.closing.stdout.fails...*.M
30800 61 6b 65 66 69 6c 65 2e 69 6e 3a 20 41 64 64 20 6f 70 74 69 6f 6e 20 27 2d 2d 6e 61 6d 65 27 20 akefile.in:.Add.option.'--name'.
30820 74 6f 20 68 65 6c 70 32 6d 61 6e 20 69 6e 76 6f 63 61 74 69 6f 6e 2e 0a 09 2a 20 63 68 65 63 6b to.help2man.invocation...*.check
30840 2e 73 68 3a 20 55 73 65 20 27 74 65 73 74 31 27 20 69 6e 73 74 65 61 64 20 6f 66 20 27 43 4f 50 .sh:.Use.'test1'.instead.of.'COP
30860 59 49 4e 47 27 20 66 6f 72 20 74 65 73 74 69 6e 67 2e 0a 0a 32 30 30 39 2d 30 39 2d 30 32 20 20 YING'.for.testing...2009-09-02..
30880 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c Antonio.Diaz.Diaz..<ant_diaz@tel
308a0 65 6c 69 6e 65 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 38 20 72 65 6c 65 61 73 eline.es>...*.Version.1.8.releas
308c0 65 64 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d 65 20 68 61 73 20 62 65 65 6e ed...*.Compression.time.has.been
308e0 20 72 65 64 75 63 65 64 20 62 79 20 34 25 2e 0a 09 2a 20 4c 7a 64 69 66 66 20 61 6e 64 20 6c 7a .reduced.by.4%...*.Lzdiff.and.lz
30900 67 72 65 70 20 68 61 76 65 20 62 65 65 6e 20 6d 6f 76 65 64 20 74 6f 20 74 68 65 20 6e 65 77 20 grep.have.been.moved.to.the.new.
30920 70 61 63 6b 61 67 65 20 7a 75 74 69 6c 73 2e 0a 09 2a 20 46 69 78 20 77 61 72 6e 69 6e 67 73 20 package.zutils...*.Fix.warnings.
30940 6f 6e 20 73 79 73 74 65 6d 73 20 77 68 65 72 65 20 75 69 6e 74 33 32 5f 74 20 21 3d 20 75 6e 73 on.systems.where.uint32_t.!=.uns
30960 69 67 6e 65 64 20 69 6e 74 2e 0a 0a 32 30 30 39 2d 30 36 2d 32 35 20 20 41 6e 74 6f 6e 69 6f 20 igned.int...2009-06-25..Antonio.
30980 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 Diaz.Diaz..<ant_diaz@teleline.es
309a0 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 37 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 64 >...*.Version.1.7.released...*.d
309c0 65 63 6f 64 65 72 2e 68 20 28 63 6f 70 79 5f 62 6c 6f 63 6b 29 3a 20 46 69 78 20 6d 65 6d 63 70 ecoder.h.(copy_block):.Fix.memcp
309e0 79 20 6f 76 65 72 6c 61 70 20 69 6e 74 72 6f 64 75 63 65 64 20 69 6e 20 31 2e 36 2e 0a 0a 32 30 y.overlap.introduced.in.1.6...20
30a00 30 39 2d 30 36 2d 32 32 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 09-06-22..Antonio.Diaz.Diaz..<an
30a20 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 t_diaz@teleline.es>...*.Version.
30a40 31 2e 36 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 1.6.released...*.Decompression.t
30a60 69 6d 65 20 68 61 73 20 62 65 65 6e 20 72 65 64 75 63 65 64 20 62 79 20 31 37 25 2e 0a 09 2a 20 ime.has.been.reduced.by.17%...*.
30a80 64 65 63 6f 64 65 72 2e 63 63 20 28 64 65 63 6f 64 65 5f 6d 65 6d 62 65 72 29 3a 20 41 64 64 20 decoder.cc.(decode_member):.Add.
30aa0 73 75 70 70 6f 72 74 20 66 6f 72 20 53 79 6e 63 20 46 6c 75 73 68 20 6d 61 72 6b 65 72 2e 0a 09 support.for.Sync.Flush.marker...
30ac0 2a 20 41 64 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 20 *.Add.support.for.the.extension.
30ae0 27 2e 74 62 7a 27 20 74 6f 20 6c 7a 64 69 66 66 20 61 6e 64 20 6c 7a 67 72 65 70 2e 0a 09 2a 20 '.tbz'.to.lzdiff.and.lzgrep...*.
30b00 41 64 64 20 6d 61 6e 20 70 61 67 65 73 20 66 6f 72 20 6c 7a 64 69 66 66 2c 20 6c 7a 67 72 65 70 Add.man.pages.for.lzdiff,.lzgrep
30b20 20 61 6e 64 20 6c 7a 69 70 72 65 63 6f 76 65 72 2e 0a 09 2a 20 65 6e 63 6f 64 65 72 2e 63 63 20 .and.lziprecover...*.encoder.cc.
30b40 28 4d 61 74 63 68 66 69 6e 64 65 72 29 3a 20 52 65 64 75 63 65 20 6d 65 6d 6f 72 79 20 75 73 65 (Matchfinder):.Reduce.memory.use
30b60 20 74 6f 20 39 78 20 69 66 20 69 6e 70 75 74 20 66 69 6c 65 20 69 73 0a 09 20 20 73 6d 61 6c 6c .to.9x.if.input.file.is....small
30b80 65 72 20 74 68 61 6e 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 2e 0a 09 er.than.dictionary.size.limit...
30ba0 2a 20 64 65 63 6f 64 65 72 2e 63 63 3a 20 41 64 64 20 65 78 74 72 61 20 66 6c 75 73 68 20 63 61 *.decoder.cc:.Add.extra.flush.ca
30bc0 6c 6c 73 20 74 6f 20 69 6d 70 72 6f 76 65 20 70 61 72 74 69 61 6c 20 64 65 63 6f 6d 70 72 65 73 lls.to.improve.partial.decompres
30be0 73 69 6f 6e 0a 09 20 20 6f 66 20 63 6f 72 72 75 70 74 20 66 69 6c 65 73 2e 0a 09 2a 20 27 2d 2d sion....of.corrupt.files...*.'--
30c00 74 65 73 74 27 20 6e 6f 20 6c 6f 6e 67 65 72 20 6e 65 65 64 73 20 27 2f 64 65 76 2f 6e 75 6c 6c test'.no.longer.needs.'/dev/null
30c20 27 2e 0a 09 2a 20 52 65 6d 6f 76 65 20 73 6f 6d 65 20 27 62 61 73 68 69 73 6d 73 27 20 66 72 6f '...*.Remove.some.'bashisms'.fro
30c40 6d 20 6c 7a 64 69 66 66 20 61 6e 64 20 6c 7a 67 72 65 70 2e 0a 09 2a 20 44 69 63 74 69 6f 6e 61 m.lzdiff.and.lzgrep...*.Dictiona
30c60 72 79 20 73 69 7a 65 20 66 6f 72 20 6f 70 74 69 6f 6e 73 20 27 2d 31 27 20 74 6f 20 27 2d 34 27 ry.size.for.options.'-1'.to.'-4'
30c80 20 68 61 73 20 62 65 65 6e 20 63 68 61 6e 67 65 64 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 73 .has.been.changed...*.main.cc.(s
30ca0 69 67 6e 61 6c 5f 68 61 6e 64 6c 65 72 29 3a 20 44 65 63 6c 61 72 65 20 61 73 20 27 65 78 74 65 ignal_handler):.Declare.as.'exte
30cc0 72 6e 20 22 43 22 27 2e 0a 09 2a 20 4d 61 6b 65 66 69 6c 65 2e 69 6e 3a 20 45 78 74 72 61 20 66 rn."C"'...*.Makefile.in:.Extra.f
30ce0 69 6c 65 73 20 61 72 65 20 6e 6f 77 20 69 6e 73 74 61 6c 6c 65 64 20 62 79 20 64 65 66 61 75 6c iles.are.now.installed.by.defaul
30d00 74 2e 0a 09 2a 20 63 68 65 63 6b 2e 73 68 3a 20 54 65 73 74 20 6c 7a 69 70 72 65 63 6f 76 65 72 t...*.check.sh:.Test.lziprecover
30d20 2e 0a 09 2a 20 41 64 64 20 27 65 78 70 6f 72 74 20 4c 43 5f 41 4c 4c 3d 43 27 20 74 6f 20 61 6c ...*.Add.'export.LC_ALL=C'.to.al
30d40 6c 20 73 63 72 69 70 74 73 2e 0a 0a 32 30 30 39 2d 30 34 2d 31 32 20 20 41 6e 74 6f 6e 69 6f 20 l.scripts...2009-04-12..Antonio.
30d60 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 Diaz.Diaz..<ant_diaz@teleline.es
30d80 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 35 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 6c >...*.Version.1.5.released...*.l
30da0 7a 69 70 2e 68 3a 20 49 6d 70 6c 65 6d 65 6e 74 20 63 6f 64 65 64 20 64 69 63 74 69 6f 6e 61 72 zip.h:.Implement.coded.dictionar
30dc0 79 20 73 69 7a 65 20 69 6e 20 4c 7a 69 70 5f 68 65 61 64 65 72 2e 0a 09 2a 20 46 69 78 20 73 6f y.size.in.Lzip_header...*.Fix.so
30de0 6d 65 20 69 6e 63 6c 75 64 65 73 20 74 68 61 74 20 70 72 65 76 65 6e 74 65 64 20 63 6f 6d 70 69 me.includes.that.prevented.compi
30e00 6c 61 74 69 6f 6e 20 77 69 74 68 20 47 43 43 20 34 2e 34 2e 0a 09 2a 20 27 6d 65 6d 62 65 72 5f lation.with.GCC.4.4...*.'member_
30e20 73 69 7a 65 27 20 61 6e 64 20 27 76 6f 6c 75 6d 65 5f 73 69 7a 65 27 20 61 72 65 20 6e 6f 77 20 size'.and.'volume_size'.are.now.
30e40 61 63 63 75 72 61 74 65 20 6c 69 6d 69 74 73 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 accurate.limits...*.Compression.
30e60 73 70 65 65 64 20 68 61 73 20 62 65 65 6e 20 69 6d 70 72 6f 76 65 64 2e 0a 09 2a 20 49 6d 70 6c speed.has.been.improved...*.Impl
30e80 65 6d 65 6e 74 20 62 74 34 20 74 79 70 65 20 6d 61 74 63 68 66 69 6e 64 65 72 2e 0a 09 2a 20 6c ement.bt4.type.matchfinder...*.l
30ea0 7a 69 70 2e 74 65 78 69 6e 66 6f 3a 20 4e 65 77 20 63 68 61 70 74 65 72 20 27 41 6c 67 6f 72 69 zip.texinfo:.New.chapter.'Algori
30ec0 74 68 6d 27 2e 0a 09 2a 20 6c 7a 64 69 66 66 2c 20 6c 7a 67 72 65 70 3a 20 41 63 63 65 70 74 20 thm'...*.lzdiff,.lzgrep:.Accept.
30ee0 27 2d 68 27 20 66 6f 72 20 27 2d 2d 68 65 6c 70 27 20 61 6e 64 20 27 2d 56 27 20 66 6f 72 20 27 '-h'.for.'--help'.and.'-V'.for.'
30f00 2d 2d 76 65 72 73 69 6f 6e 27 2e 0a 09 2a 20 4d 61 6b 65 66 69 6c 65 2e 69 6e 3a 20 4d 61 6e 20 --version'...*.Makefile.in:.Man.
30f20 70 61 67 65 20 69 73 20 6e 6f 77 20 69 6e 73 74 61 6c 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 page.is.now.installed.by.default
30f40 2e 0a 09 2a 20 63 68 65 63 6b 2e 73 68 3a 20 43 68 65 63 6b 20 74 68 61 74 20 66 69 6c 65 73 20 ...*.check.sh:.Check.that.files.
30f60 61 72 65 20 6f 70 65 6e 65 64 20 69 6e 20 62 69 6e 61 72 79 20 6d 6f 64 65 2e 0a 0a 32 30 30 39 are.opened.in.binary.mode...2009
30f80 2d 30 31 2d 32 34 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f -01-24..Antonio.Diaz.Diaz..<ant_
30fa0 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e diaz@teleline.es>...*.Version.1.
30fc0 34 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 49 6d 70 6c 65 6d 65 6e 74 20 63 6f 6d 70 72 65 73 4.released...*.Implement.compres
30fe0 73 69 6f 6e 20 6f 66 20 76 65 72 73 69 6f 6e 20 31 20 66 69 6c 65 73 2e 0a 09 2a 20 4e 65 77 20 sion.of.version.1.files...*.New.
31000 6f 70 74 69 6f 6e 73 20 27 2d 62 2c 20 2d 2d 6d 65 6d 62 65 72 2d 73 69 7a 65 27 2c 20 27 2d 53 options.'-b,.--member-size',.'-S
31020 2c 20 2d 2d 76 6f 6c 75 6d 65 2d 73 69 7a 65 27 2c 20 61 6e 64 0a 09 20 20 27 2d 6f 2c 20 2d 2d ,.--volume-size',.and....'-o,.--
31040 6f 75 74 70 75 74 27 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 52 65 61 64 20 66 72 6f 6d 20 6e output'...*.main.cc:.Read.from.n
31060 6f 6e 2d 72 65 67 75 6c 61 72 20 66 69 6c 65 73 20 69 66 20 27 2d 2d 73 74 64 6f 75 74 27 20 69 on-regular.files.if.'--stdout'.i
31080 73 20 73 70 65 63 69 66 69 65 64 2e 0a 09 2a 20 41 64 64 20 27 6c 7a 69 70 72 65 63 6f 76 65 72 s.specified...*.Add.'lziprecover
310a0 27 2c 20 61 20 6d 65 6d 62 65 72 20 72 65 63 6f 76 65 72 65 72 20 70 72 6f 67 72 61 6d 2e 0a 09 ',.a.member.recoverer.program...
310c0 2a 20 75 6e 7a 63 72 61 73 68 2e 63 63 3a 20 54 65 73 74 20 61 6c 6c 20 31 2d 62 79 74 65 20 65 *.unzcrash.cc:.Test.all.1-byte.e
310e0 72 72 6f 72 73 2e 0a 0a 32 30 30 38 2d 31 32 2d 32 31 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a rrors...2008-12-21..Antonio.Diaz
31100 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 3e 0a 0a 09 .Diaz..<ant_diaz@teleline.es>...
31120 2a 20 56 65 72 73 69 6f 6e 20 31 2e 33 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 54 68 69 73 20 *.Version.1.3.released...*.This.
31140 76 65 72 73 69 6f 6e 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 68 6f 6f 73 65 73 20 74 68 version.automatically.chooses.th
31160 65 20 73 6d 61 6c 6c 65 73 74 20 70 6f 73 73 69 62 6c 65 0a 09 20 20 64 69 63 74 69 6f 6e 61 72 e.smallest.possible....dictionar
31180 79 20 73 69 7a 65 20 66 6f 72 20 65 61 63 68 20 66 69 6c 65 20 64 75 72 69 6e 67 20 63 6f 6d 70 y.size.for.each.file.during.comp
311a0 72 65 73 73 69 6f 6e 2c 20 73 61 76 69 6e 67 20 6d 65 6d 6f 72 79 0a 09 20 20 64 75 72 69 6e 67 ression,.saving.memory....during
311c0 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0a 09 2a 20 49 6d 70 6c 65 6d 65 6e 74 20 64 65 63 .decompression...*.Implement.dec
311e0 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 66 20 76 65 72 73 69 6f 6e 20 31 20 66 69 6c 65 73 2e 0a 09 ompression.of.version.1.files...
31200 2a 20 63 68 65 63 6b 2e 73 68 3a 20 52 65 70 6c 61 63 65 20 27 64 69 66 66 20 2d 71 27 20 77 69 *.check.sh:.Replace.'diff.-q'.wi
31220 74 68 20 27 63 6d 70 27 2e 0a 0a 32 30 30 38 2d 31 32 2d 31 30 20 20 41 6e 74 6f 6e 69 6f 20 44 th.'cmp'...2008-12-10..Antonio.D
31240 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 3e iaz.Diaz..<ant_diaz@teleline.es>
31260 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 32 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 65 6e ...*.Version.1.2.released...*.en
31280 63 6f 64 65 72 2e 63 63 3a 20 41 20 31 2d 62 79 74 65 20 72 65 61 64 20 6f 75 74 73 69 64 65 20 coder.cc:.A.1-byte.read.outside.
312a0 61 6c 6c 6f 63 61 74 65 64 20 6d 65 6d 6f 72 79 20 68 61 73 20 62 65 65 6e 20 66 69 78 65 64 2e allocated.memory.has.been.fixed.
312c0 0a 09 2a 20 6c 7a 69 70 2e 68 3a 20 44 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 ..*.lzip.h:.Dictionary.size.limi
312e0 74 20 68 61 73 20 62 65 65 6e 20 72 65 64 75 63 65 64 20 74 6f 20 35 31 32 20 4d 69 42 20 62 65 t.has.been.reduced.to.512.MiB.be
31300 63 61 75 73 65 0a 09 20 20 73 65 74 74 69 6e 67 20 69 74 20 74 6f 20 31 20 47 69 42 20 63 61 75 cause....setting.it.to.1.GiB.cau
31320 73 65 73 20 6f 76 65 72 66 6c 6f 77 20 6f 66 20 61 20 33 32 20 62 69 74 20 69 6e 74 65 67 65 72 ses.overflow.of.a.32.bit.integer
31340 2e 0a 09 2a 20 41 64 64 20 27 6c 7a 64 69 66 66 27 2c 20 61 20 64 69 66 66 2f 63 6d 70 20 77 72 ...*.Add.'lzdiff',.a.diff/cmp.wr
31360 61 70 70 65 72 20 66 6f 72 20 67 7a 69 70 2c 20 62 7a 69 70 32 2c 20 6c 7a 69 70 20 61 6e 64 0a apper.for.gzip,.bzip2,.lzip.and.
31380 09 20 20 6e 6f 6e 2d 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 73 2e 0a 09 2a 20 41 64 64 20 ...non-compressed.files...*.Add.
313a0 27 6c 7a 67 72 65 70 27 2c 20 61 20 67 72 65 70 20 77 72 61 70 70 65 72 20 66 6f 72 20 67 7a 69 'lzgrep',.a.grep.wrapper.for.gzi
313c0 70 2c 20 62 7a 69 70 32 2c 20 6c 7a 69 70 20 61 6e 64 0a 09 20 20 6e 6f 6e 2d 63 6f 6d 70 72 65 p,.bzip2,.lzip.and....non-compre
313e0 73 73 65 64 20 66 69 6c 65 73 2e 0a 09 2a 20 27 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 2d 69 6e 66 ssed.files...*.'make.install-inf
31400 6f 27 20 73 68 6f 75 6c 64 20 6e 6f 77 20 77 6f 72 6b 20 6f 6e 20 44 65 62 69 61 6e 20 61 6e 64 o'.should.now.work.on.Debian.and
31420 20 4f 53 20 58 2e 0a 0a 32 30 30 38 2d 31 31 2d 31 37 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a .OS.X...2008-11-17..Antonio.Diaz
31440 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 3e 0a 0a 09 .Diaz..<ant_diaz@teleline.es>...
31460 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 43 68 61 6e 67 *.Version.1.1.released...*.Chang
31480 65 20 73 68 6f 72 74 20 6e 61 6d 65 20 6f 66 20 6f 70 74 69 6f 6e 20 27 2d 2d 64 69 63 74 69 6f e.short.name.of.option.'--dictio
314a0 6e 61 72 79 2d 73 69 7a 65 27 20 74 6f 20 27 2d 73 27 2e 0a 09 2a 20 43 68 61 6e 67 65 20 73 68 nary-size'.to.'-s'...*.Change.sh
314c0 6f 72 74 20 6e 61 6d 65 20 6f 66 20 6f 70 74 69 6f 6e 20 27 2d 2d 6d 61 74 63 68 2d 6c 65 6e 67 ort.name.of.option.'--match-leng
314e0 74 68 27 20 74 6f 20 27 2d 6d 27 2e 0a 09 2a 20 43 68 61 6e 67 65 20 4c 4f 4e 47 5f 4c 4f 4e 47 th'.to.'-m'...*.Change.LONG_LONG
31500 5f 4d 41 58 20 74 6f 20 4c 4c 4f 4e 47 5f 4d 41 58 2e 0a 0a 32 30 30 38 2d 31 30 2d 31 34 20 20 _MAX.to.LLONG_MAX...2008-10-14..
31520 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c Antonio.Diaz.Diaz..<ant_diaz@tel
31540 65 6c 69 6e 65 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 30 20 72 65 6c 65 61 73 eline.es>...*.Version.1.0.releas
31560 65 64 2e 0a 09 2a 20 27 2d 74 76 76 27 20 73 68 6f 77 73 20 66 69 6c 65 20 76 65 72 73 69 6f 6e ed...*.'-tvv'.shows.file.version
31580 20 61 6e 64 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 2e 0a 0a 32 30 30 38 2d 30 39 2d 33 .and.dictionary.size...2008-09-3
315a0 30 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 0..Antonio.Diaz.Diaz..<ant_diaz@
315c0 74 65 6c 65 6c 69 6e 65 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 30 2e 35 20 72 65 6c teleline.es>...*.Version.0.5.rel
315e0 65 61 73 65 64 2e 0a 09 2a 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 6e 6f 77 20 31 eased...*.Decompression.is.now.1
31600 25 20 66 61 73 74 65 72 2e 0a 0a 32 30 30 38 2d 30 39 2d 32 33 20 20 41 6e 74 6f 6e 69 6f 20 44 %.faster...2008-09-23..Antonio.D
31620 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 3e iaz.Diaz..<ant_diaz@teleline.es>
31640 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 30 2e 34 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 43 6f ...*.Version.0.4.released...*.Co
31660 64 65 20 63 6c 65 61 6e 75 70 20 66 6f 72 20 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 27 de.cleanup.for.global.variable.'
31680 76 65 72 62 6f 73 69 74 79 27 2e 0a 09 2a 20 52 65 67 61 69 6e 20 74 68 65 20 63 6f 6d 70 72 65 verbosity'...*.Regain.the.compre
316a0 73 73 69 6f 6e 20 72 61 74 69 6f 20 6f 66 20 30 2e 32 20 77 69 74 68 20 35 25 20 66 61 73 74 65 ssion.ratio.of.0.2.with.5%.faste
316c0 72 20 73 70 65 65 64 2e 0a 09 2a 20 6c 7a 69 70 2e 68 3a 20 46 69 78 20 63 6f 6d 70 69 6c 61 74 r.speed...*.lzip.h:.Fix.compilat
316e0 69 6f 6e 20 6f 6e 20 73 79 73 74 65 6d 73 20 77 68 65 72 65 20 73 69 7a 65 5f 74 20 21 3d 20 75 ion.on.systems.where.size_t.!=.u
31700 6e 73 69 67 6e 65 64 20 69 6e 74 2e 0a 0a 32 30 30 38 2d 30 39 2d 31 35 20 20 41 6e 74 6f 6e 69 nsigned.int...2008-09-15..Antoni
31720 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e o.Diaz.Diaz..<ant_diaz@teleline.
31740 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 30 2e 33 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a es>...*.Version.0.3.released...*
31760 20 65 6e 63 6f 64 65 72 2e 63 63 3a 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 6e 6f 77 20 .encoder.cc:.Compression.is.now.
31780 31 35 25 20 66 61 73 74 65 72 2c 20 31 25 20 77 6f 72 73 65 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 15%.faster,.1%.worse...*.main.cc
317a0 20 28 6d 61 69 6e 29 3a 20 4d 61 6b 65 20 6f 70 74 69 6f 6e 20 27 2d 74 27 20 6f 76 65 72 72 69 .(main):.Make.option.'-t'.overri
317c0 64 65 20 27 2d 63 27 2e 0a 09 20 20 28 64 65 63 6f 6d 70 72 65 73 73 29 3a 20 53 68 6f 77 20 27 de.'-c'.....(decompress):.Show.'
317e0 64 6f 6e 65 27 20 69 6e 73 74 65 61 64 20 6f 66 20 27 6f 6b 27 20 77 68 65 6e 20 6e 6f 74 20 74 done'.instead.of.'ok'.when.not.t
31800 65 73 74 69 6e 67 2e 0a 09 2a 20 65 6e 63 6f 64 65 72 2e 68 3a 20 55 73 65 20 74 72 69 61 6c 73 esting...*.encoder.h:.Use.trials
31820 5b 5d 20 74 6f 20 72 65 74 75 72 6e 20 74 68 65 20 6c 69 73 74 20 6f 66 20 70 61 69 72 73 2e 0a [].to.return.the.list.of.pairs..
31840 0a 32 30 30 38 2d 30 39 2d 30 39 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 .2008-09-09..Antonio.Diaz.Diaz..
31860 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 <ant_diaz@teleline.es>...*.Versi
31880 6f 6e 20 30 2e 32 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 65 6e 63 6f 64 65 72 2e 63 63 3a 20 on.0.2.released...*.encoder.cc:.
318a0 53 6d 61 6c 6c 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 20 69 6e 20 63 6f 6d 70 72 65 73 73 69 6f Small.improvements.in.compressio
318c0 6e 20 73 70 65 65 64 2e 0a 09 2a 20 53 6d 61 6c 6c 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 n.speed...*.Small.documentation.
318e0 63 68 61 6e 67 65 73 2e 0a 0a 32 30 30 38 2d 30 38 2d 32 30 20 20 41 6e 74 6f 6e 69 6f 20 44 69 changes...2008-08-20..Antonio.Di
31900 61 7a 20 44 69 61 7a 20 20 3c 61 6e 74 5f 64 69 61 7a 40 74 65 6c 65 6c 69 6e 65 2e 65 73 3e 0a az.Diaz..<ant_diaz@teleline.es>.
31920 0a 09 2a 20 56 65 72 73 69 6f 6e 20 30 2e 31 20 72 65 6c 65 61 73 65 64 2e 0a 0a 0a 43 6f 70 79 ..*.Version.0.1.released....Copy
31940 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a right.(C).2008-2025.Antonio.Diaz
31960 20 44 69 61 7a 2e 0a 0a 54 68 69 73 20 66 69 6c 65 20 69 73 20 61 20 63 6f 6c 6c 65 63 74 69 6f .Diaz...This.file.is.a.collectio
31980 6e 20 6f 66 20 66 61 63 74 73 2c 20 61 6e 64 20 74 68 75 73 20 69 74 20 69 73 20 6e 6f 74 20 63 n.of.facts,.and.thus.it.is.not.c
319a0 6f 70 79 72 69 67 68 74 61 62 6c 65 2c 20 62 75 74 20 6a 75 73 74 0a 69 6e 20 63 61 73 65 2c 20 opyrightable,.but.just.in.case,.
319c0 79 6f 75 20 68 61 76 65 20 75 6e 6c 69 6d 69 74 65 64 20 70 65 72 6d 69 73 73 69 6f 6e 20 74 6f you.have.unlimited.permission.to
319e0 20 63 6f 70 79 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 61 6e 64 20 6d 6f 64 69 66 79 20 69 74 .copy,.distribute,.and.modify.it
31a00 2e 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31c00 6c 7a 69 70 2d 31 2e 32 35 2f 64 6f 63 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/doc/..................
31c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31c60 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000755.0000000.0000000.0000
31c80 30 30 30 30 30 30 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 33 31 37 36 00 20 35 00 00 00 0000000.14744236057.013176..5...
31ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31d00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
31d20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
31d40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
31d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31e00 6c 7a 69 70 2d 31 2e 32 35 2f 64 6f 63 2f 6c 7a 69 70 2e 74 65 78 69 00 00 00 00 00 00 00 00 00 lzip-1.25/doc/lzip.texi.........
31e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31e60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
31e80 30 32 30 36 32 31 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 35 30 35 30 00 20 30 00 00 00 0206210.14744236057.015050..0...
31ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31f00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
31f20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
31f40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
31f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32000 5c 69 6e 70 75 74 20 74 65 78 69 6e 66 6f 20 40 63 20 2d 2a 2d 74 65 78 69 6e 66 6f 2d 2a 2d 0a \input.texinfo.@c.-*-texinfo-*-.
32020 40 63 20 25 2a 2a 73 74 61 72 74 20 6f 66 20 68 65 61 64 65 72 0a 40 73 65 74 66 69 6c 65 6e 61 @c.%**start.of.header.@setfilena
32040 6d 65 20 6c 7a 69 70 2e 69 6e 66 6f 0a 40 64 6f 63 75 6d 65 6e 74 65 6e 63 6f 64 69 6e 67 20 49 me.lzip.info.@documentencoding.I
32060 53 4f 2d 38 38 35 39 2d 31 35 0a 40 73 65 74 74 69 74 6c 65 20 4c 7a 69 70 20 4d 61 6e 75 61 6c SO-8859-15.@settitle.Lzip.Manual
32080 0a 40 66 69 6e 61 6c 6f 75 74 0a 40 63 20 25 2a 2a 65 6e 64 20 6f 66 20 68 65 61 64 65 72 0a 0a .@finalout.@c.%**end.of.header..
320a0 40 73 65 74 20 55 50 44 41 54 45 44 20 31 31 20 4a 61 6e 75 61 72 79 20 32 30 32 35 0a 40 73 65 @set.UPDATED.11.January.2025.@se
320c0 74 20 56 45 52 53 49 4f 4e 20 31 2e 32 35 0a 0a 40 64 69 72 63 61 74 65 67 6f 72 79 20 43 6f 6d t.VERSION.1.25..@dircategory.Com
320e0 70 72 65 73 73 69 6f 6e 0a 40 64 69 72 65 6e 74 72 79 0a 2a 20 4c 7a 69 70 3a 20 28 6c 7a 69 70 pression.@direntry.*.Lzip:.(lzip
32100 29 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 )..................LZMA.lossless
32120 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 6f 72 0a 40 65 6e 64 20 64 69 72 65 6e 74 72 79 0a 0a .data.compressor.@end.direntry..
32140 0a 40 69 66 6e 6f 74 68 74 6d 6c 0a 40 74 69 74 6c 65 70 61 67 65 0a 40 74 69 74 6c 65 20 4c 7a .@ifnothtml.@titlepage.@title.Lz
32160 69 70 0a 40 73 75 62 74 69 74 6c 65 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 ip.@subtitle.LZMA.lossless.data.
32180 63 6f 6d 70 72 65 73 73 6f 72 0a 40 73 75 62 74 69 74 6c 65 20 66 6f 72 20 4c 7a 69 70 20 76 65 compressor.@subtitle.for.Lzip.ve
321a0 72 73 69 6f 6e 20 40 76 61 6c 75 65 7b 56 45 52 53 49 4f 4e 7d 2c 20 40 76 61 6c 75 65 7b 55 50 rsion.@value{VERSION},.@value{UP
321c0 44 41 54 45 44 7d 0a 40 61 75 74 68 6f 72 20 62 79 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 DATED}.@author.by.Antonio.Diaz.D
321e0 69 61 7a 0a 0a 40 70 61 67 65 0a 40 76 73 6b 69 70 20 30 70 74 20 70 6c 75 73 20 31 66 69 6c 6c iaz..@page.@vskip.0pt.plus.1fill
32200 6c 0a 40 65 6e 64 20 74 69 74 6c 65 70 61 67 65 0a 0a 40 63 6f 6e 74 65 6e 74 73 0a 40 65 6e 64 l.@end.titlepage..@contents.@end
32220 20 69 66 6e 6f 74 68 74 6d 6c 0a 0a 40 69 66 6e 6f 74 74 65 78 0a 40 6e 6f 64 65 20 54 6f 70 0a .ifnothtml..@ifnottex.@node.Top.
32240 40 74 6f 70 0a 0a 54 68 69 73 20 6d 61 6e 75 61 6c 20 69 73 20 66 6f 72 20 4c 7a 69 70 20 28 76 @top..This.manual.is.for.Lzip.(v
32260 65 72 73 69 6f 6e 20 40 76 61 6c 75 65 7b 56 45 52 53 49 4f 4e 7d 2c 20 40 76 61 6c 75 65 7b 55 ersion.@value{VERSION},.@value{U
32280 50 44 41 54 45 44 7d 29 2e 0a 0a 40 6d 65 6e 75 0a 2a 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 3a PDATED})...@menu.*.Introduction:
322a0 3a 20 20 20 20 20 20 20 20 20 20 20 50 75 72 70 6f 73 65 20 61 6e 64 20 66 65 61 74 75 72 65 73 :...........Purpose.and.features
322c0 20 6f 66 20 6c 7a 69 70 0a 2a 20 4f 75 74 70 75 74 3a 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 .of.lzip.*.Output::.............
322e0 20 20 20 20 4d 65 61 6e 69 6e 67 20 6f 66 20 6c 7a 69 70 27 73 20 6f 75 74 70 75 74 0a 2a 20 49 ....Meaning.of.lzip's.output.*.I
32300 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 3a 3a 20 20 20 20 20 20 20 20 20 20 43 6f 6d 6d 61 6e 64 2d nvoking.lzip::..........Command-
32320 6c 69 6e 65 20 69 6e 74 65 72 66 61 63 65 0a 2a 20 41 72 67 75 6d 65 6e 74 20 73 79 6e 74 61 78 line.interface.*.Argument.syntax
32340 3a 3a 20 20 20 20 20 20 20 20 42 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20 6f 70 74 69 6f 6e 73 ::........By.convention,.options
32360 20 73 74 61 72 74 20 77 69 74 68 20 61 20 68 79 70 68 65 6e 0a 2a 20 46 69 6c 65 20 66 6f 72 6d .start.with.a.hyphen.*.File.form
32380 61 74 3a 3a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 74 61 69 6c 65 64 20 66 6f 72 6d 61 74 20 at::............Detailed.format.
323a0 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 0a 2a 20 53 74 72 65 61 6d 20 of.the.compressed.file.*.Stream.
323c0 66 6f 72 6d 61 74 3a 3a 20 20 20 20 20 20 20 20 20 20 46 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 format::..........Format.of.the.
323e0 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 6e 20 6c 7a 69 70 20 66 69 6c 65 73 0a 2a 20 51 75 61 6c LZMA.stream.in.lzip.files.*.Qual
32400 69 74 79 20 61 73 73 75 72 61 6e 63 65 3a 3a 20 20 20 20 20 20 44 65 73 69 67 6e 2c 20 64 65 76 ity.assurance::......Design,.dev
32420 65 6c 6f 70 6d 65 6e 74 2c 20 61 6e 64 20 74 65 73 74 69 6e 67 20 6f 66 20 6c 7a 69 70 0a 2a 20 elopment,.and.testing.of.lzip.*.
32440 41 6c 67 6f 72 69 74 68 6d 3a 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 48 6f 77 20 6c 7a 69 Algorithm::..............How.lzi
32460 70 20 63 6f 6d 70 72 65 73 73 65 73 20 74 68 65 20 64 61 74 61 0a 2a 20 54 72 61 69 6c 69 6e 67 p.compresses.the.data.*.Trailing
32480 20 64 61 74 61 3a 3a 20 20 20 20 20 20 20 20 20 20 45 78 74 72 61 20 64 61 74 61 20 61 70 70 65 .data::..........Extra.data.appe
324a0 6e 64 65 64 20 74 6f 20 74 68 65 20 66 69 6c 65 0a 2a 20 45 78 61 6d 70 6c 65 73 3a 3a 20 20 20 nded.to.the.file.*.Examples::...
324c0 20 20 20 20 20 20 20 20 20 20 20 20 41 20 73 6d 61 6c 6c 20 74 75 74 6f 72 69 61 6c 20 77 69 74 ............A.small.tutorial.wit
324e0 68 20 65 78 61 6d 70 6c 65 73 0a 2a 20 50 72 6f 62 6c 65 6d 73 3a 3a 20 20 20 20 20 20 20 20 20 h.examples.*.Problems::.........
32500 20 20 20 20 20 20 52 65 70 6f 72 74 69 6e 67 20 62 75 67 73 0a 2a 20 52 65 66 65 72 65 6e 63 65 ......Reporting.bugs.*.Reference
32520 20 73 6f 75 72 63 65 20 63 6f 64 65 3a 3a 20 20 53 6f 75 72 63 65 20 63 6f 64 65 20 69 6c 6c 75 .source.code::..Source.code.illu
32540 73 74 72 61 74 69 6e 67 20 73 74 72 65 61 6d 20 66 6f 72 6d 61 74 0a 2a 20 43 6f 6e 63 65 70 74 strating.stream.format.*.Concept
32560 20 69 6e 64 65 78 3a 3a 20 20 20 20 20 20 20 20 20 20 49 6e 64 65 78 20 6f 66 20 63 6f 6e 63 65 .index::..........Index.of.conce
32580 70 74 73 0a 40 65 6e 64 20 6d 65 6e 75 0a 0a 40 73 70 20 31 0a 43 6f 70 79 72 69 67 68 74 20 40 pts.@end.menu..@sp.1.Copyright.@
325a0 63 6f 70 79 72 69 67 68 74 7b 7d 20 32 30 30 38 2d 32 30 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 copyright{}.2008-2025.Antonio.Di
325c0 61 7a 20 44 69 61 7a 2e 0a 0a 54 68 69 73 20 6d 61 6e 75 61 6c 20 69 73 20 66 72 65 65 20 64 6f az.Diaz...This.manual.is.free.do
325e0 63 75 6d 65 6e 74 61 74 69 6f 6e 3a 20 79 6f 75 20 68 61 76 65 20 75 6e 6c 69 6d 69 74 65 64 20 cumentation:.you.have.unlimited.
32600 70 65 72 6d 69 73 73 69 6f 6e 20 74 6f 20 63 6f 70 79 2c 0a 64 69 73 74 72 69 62 75 74 65 2c 20 permission.to.copy,.distribute,.
32620 61 6e 64 20 6d 6f 64 69 66 79 20 69 74 2e 0a 40 65 6e 64 20 69 66 6e 6f 74 74 65 78 0a 0a 0a 40 and.modify.it..@end.ifnottex...@
32640 6e 6f 64 65 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 0a 40 63 68 61 70 74 65 72 20 49 6e 74 72 6f node.Introduction.@chapter.Intro
32660 64 75 63 74 69 6f 6e 0a 40 63 69 6e 64 65 78 20 69 6e 74 72 6f 64 75 63 74 69 6f 6e 0a 0a 40 75 duction.@cindex.introduction..@u
32680 72 65 66 7b 68 74 74 70 3a 2f 2f 77 77 77 2e 6e 6f 6e 67 6e 75 2e 6f 72 67 2f 6c 7a 69 70 2f 6c ref{http://www.nongnu.org/lzip/l
326a0 7a 69 70 2e 68 74 6d 6c 2c 2c 4c 7a 69 70 7d 0a 69 73 20 61 20 6c 6f 73 73 6c 65 73 73 20 64 61 zip.html,,Lzip}.is.a.lossless.da
326c0 74 61 20 63 6f 6d 70 72 65 73 73 6f 72 20 77 69 74 68 20 61 20 75 73 65 72 20 69 6e 74 65 72 66 ta.compressor.with.a.user.interf
326e0 61 63 65 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 6f 6e 65 0a 6f 66 20 67 7a 69 70 20 6f ace.similar.to.the.one.of.gzip.o
32700 72 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 75 73 65 73 20 61 20 73 69 6d 70 6c 69 66 69 65 64 20 r.bzip2..Lzip.uses.a.simplified.
32720 66 6f 72 6d 20 6f 66 20 4c 5a 4d 41 20 28 4c 65 6d 70 65 6c 2d 5a 69 76 2d 4d 61 72 6b 6f 76 0a form.of.LZMA.(Lempel-Ziv-Markov.
32740 63 68 61 69 6e 2d 41 6c 67 6f 72 69 74 68 6d 29 20 64 65 73 69 67 6e 65 64 20 74 6f 20 61 63 68 chain-Algorithm).designed.to.ach
32760 69 65 76 65 20 63 6f 6d 70 6c 65 74 65 20 69 6e 74 65 72 6f 70 65 72 61 62 69 6c 69 74 79 20 62 ieve.complete.interoperability.b
32780 65 74 77 65 65 6e 0a 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 2e 20 54 68 65 20 6d 61 78 69 etween.implementations..The.maxi
327a0 6d 75 6d 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 73 20 35 31 32 20 4d 69 42 20 73 mum.dictionary.size.is.512.MiB.s
327c0 6f 20 74 68 61 74 20 61 6e 79 20 6c 7a 69 70 0a 66 69 6c 65 20 63 61 6e 20 62 65 20 64 65 63 6f o.that.any.lzip.file.can.be.deco
327e0 6d 70 72 65 73 73 65 64 20 6f 6e 20 33 32 2d 62 69 74 20 6d 61 63 68 69 6e 65 73 2e 20 4c 7a 69 mpressed.on.32-bit.machines..Lzi
32800 70 20 70 72 6f 76 69 64 65 73 20 61 63 63 75 72 61 74 65 20 61 6e 64 0a 72 6f 62 75 73 74 20 33 p.provides.accurate.and.robust.3
32820 2d 66 61 63 74 6f 72 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 63 6b 69 6e 67 2e 20 40 77 7b 40 -factor.integrity.checking..@w{@
32840 73 61 6d 70 7b 6c 7a 69 70 20 2d 30 7d 7d 20 63 6f 6d 70 72 65 73 73 65 73 20 61 62 6f 75 74 20 samp{lzip.-0}}.compresses.about.
32860 61 73 20 66 61 73 74 20 61 73 0a 67 7a 69 70 2c 20 77 68 69 6c 65 20 40 77 7b 40 73 61 6d 70 7b as.fast.as.gzip,.while.@w{@samp{
32880 6c 7a 69 70 20 2d 39 7d 7d 20 63 6f 6d 70 72 65 73 73 65 73 20 6d 6f 73 74 20 66 69 6c 65 73 20 lzip.-9}}.compresses.most.files.
328a0 6d 6f 72 65 20 74 68 61 6e 20 62 7a 69 70 32 2e 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 0a 73 more.than.bzip2..Decompression.s
328c0 70 65 65 64 20 69 73 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 62 65 74 77 65 65 6e 20 67 7a 69 peed.is.intermediate.between.gzi
328e0 70 20 61 6e 64 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 70 72 6f 76 69 64 65 73 20 62 65 74 74 65 p.and.bzip2..Lzip.provides.bette
32900 72 20 64 61 74 61 0a 72 65 63 6f 76 65 72 79 20 63 61 70 61 62 69 6c 69 74 69 65 73 20 74 68 61 r.data.recovery.capabilities.tha
32920 6e 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 68 61 73 20 62 65 65 6e 20 n.gzip.and.bzip2..Lzip.has.been.
32940 64 65 73 69 67 6e 65 64 2c 20 77 72 69 74 74 65 6e 2c 0a 61 6e 64 20 74 65 73 74 65 64 20 77 69 designed,.written,.and.tested.wi
32960 74 68 20 67 72 65 61 74 20 63 61 72 65 20 74 6f 20 72 65 70 6c 61 63 65 20 67 7a 69 70 20 61 6e th.great.care.to.replace.gzip.an
32980 64 20 62 7a 69 70 32 20 61 73 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 0a 63 6f 6d 70 72 d.bzip2.as.general-purpose.compr
329a0 65 73 73 65 64 20 66 6f 72 6d 61 74 20 66 6f 72 20 55 6e 69 78 2d 6c 69 6b 65 20 73 79 73 74 65 essed.format.for.Unix-like.syste
329c0 6d 73 2e 0a 0a 46 6f 72 20 63 6f 6d 70 72 65 73 73 69 6e 67 2f 64 65 63 6f 6d 70 72 65 73 73 69 ms...For.compressing/decompressi
329e0 6e 67 20 6c 61 72 67 65 20 66 69 6c 65 73 20 6f 6e 20 6d 75 6c 74 69 70 72 6f 63 65 73 73 6f 72 ng.large.files.on.multiprocessor
32a00 20 6d 61 63 68 69 6e 65 73 0a 40 75 72 65 66 7b 68 74 74 70 3a 2f 2f 77 77 77 2e 6e 6f 6e 67 6e .machines.@uref{http://www.nongn
32a20 75 2e 6f 72 67 2f 6c 7a 69 70 2f 6d 61 6e 75 61 6c 2f 70 6c 7a 69 70 5f 6d 61 6e 75 61 6c 2e 68 u.org/lzip/manual/plzip_manual.h
32a40 74 6d 6c 2c 2c 70 6c 7a 69 70 7d 20 63 61 6e 20 62 65 0a 6d 75 63 68 20 66 61 73 74 65 72 20 74 tml,,plzip}.can.be.much.faster.t
32a60 68 61 6e 20 6c 7a 69 70 20 61 74 20 74 68 65 20 63 6f 73 74 20 6f 66 20 61 20 73 6c 69 67 68 74 han.lzip.at.the.cost.of.a.slight
32a80 6c 79 20 72 65 64 75 63 65 64 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 2e 0a 40 69 ly.reduced.compression.ratio..@i
32aa0 66 6e 6f 74 68 74 6d 6c 0a 40 78 72 65 66 7b 54 6f 70 2c 70 6c 7a 69 70 20 6d 61 6e 75 61 6c 2c fnothtml.@xref{Top,plzip.manual,
32ac0 2c 70 6c 7a 69 70 7d 2e 0a 40 65 6e 64 20 69 66 6e 6f 74 68 74 6d 6c 0a 0a 46 6f 72 20 63 72 65 ,plzip}..@end.ifnothtml..For.cre
32ae0 61 74 69 6f 6e 20 61 6e 64 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 6f 66 20 63 6f 6d 70 72 65 ation.and.manipulation.of.compre
32b00 73 73 65 64 20 74 61 72 20 61 72 63 68 69 76 65 73 0a 40 75 72 65 66 7b 68 74 74 70 3a 2f 2f 77 ssed.tar.archives.@uref{http://w
32b20 77 77 2e 6e 6f 6e 67 6e 75 2e 6f 72 67 2f 6c 7a 69 70 2f 6d 61 6e 75 61 6c 2f 74 61 72 6c 7a 5f ww.nongnu.org/lzip/manual/tarlz_
32b40 6d 61 6e 75 61 6c 2e 68 74 6d 6c 2c 2c 74 61 72 6c 7a 7d 20 63 61 6e 20 62 65 20 6d 6f 72 65 0a manual.html,,tarlz}.can.be.more.
32b60 65 66 66 69 63 69 65 6e 74 20 74 68 61 6e 20 75 73 69 6e 67 20 74 61 72 20 61 6e 64 20 70 6c 7a efficient.than.using.tar.and.plz
32b80 69 70 20 62 65 63 61 75 73 65 20 74 61 72 6c 7a 20 69 73 20 61 62 6c 65 20 74 6f 20 6b 65 65 70 ip.because.tarlz.is.able.to.keep
32ba0 20 74 68 65 0a 61 6c 69 67 6e 6d 65 6e 74 20 62 65 74 77 65 65 6e 20 74 61 72 20 6d 65 6d 62 65 .the.alignment.between.tar.membe
32bc0 72 73 20 61 6e 64 20 6c 7a 69 70 20 6d 65 6d 62 65 72 73 2e 0a 40 69 66 6e 6f 74 68 74 6d 6c 0a rs.and.lzip.members..@ifnothtml.
32be0 40 78 72 65 66 7b 54 6f 70 2c 74 61 72 6c 7a 20 6d 61 6e 75 61 6c 2c 2c 74 61 72 6c 7a 7d 2e 0a @xref{Top,tarlz.manual,,tarlz}..
32c00 40 65 6e 64 20 69 66 6e 6f 74 68 74 6d 6c 0a 0a 54 68 65 20 6c 7a 69 70 20 66 69 6c 65 20 66 6f @end.ifnothtml..The.lzip.file.fo
32c20 72 6d 61 74 20 69 73 20 64 65 73 69 67 6e 65 64 20 66 6f 72 20 64 61 74 61 20 73 68 61 72 69 6e rmat.is.designed.for.data.sharin
32c40 67 20 61 6e 64 20 6c 6f 6e 67 2d 74 65 72 6d 20 61 72 63 68 69 76 69 6e 67 2c 0a 74 61 6b 69 6e g.and.long-term.archiving,.takin
32c60 67 20 69 6e 74 6f 20 61 63 63 6f 75 6e 74 20 62 6f 74 68 20 64 61 74 61 20 69 6e 74 65 67 72 69 g.into.account.both.data.integri
32c80 74 79 20 61 6e 64 20 64 65 63 6f 64 65 72 20 61 76 61 69 6c 61 62 69 6c 69 74 79 3a 0a 0a 40 69 ty.and.decoder.availability:..@i
32ca0 74 65 6d 69 7a 65 20 40 62 75 6c 6c 65 74 0a 40 69 74 65 6d 0a 54 68 65 20 70 72 6f 67 72 61 6d temize.@bullet.@item.The.program
32cc0 0a 40 75 72 65 66 7b 68 74 74 70 3a 2f 2f 77 77 77 2e 6e 6f 6e 67 6e 75 2e 6f 72 67 2f 6c 7a 69 .@uref{http://www.nongnu.org/lzi
32ce0 70 2f 6d 61 6e 75 61 6c 2f 6c 7a 69 70 72 65 63 6f 76 65 72 5f 6d 61 6e 75 61 6c 2e 68 74 6d 6c p/manual/lziprecover_manual.html
32d00 23 44 61 74 61 2d 73 61 66 65 74 79 2c 2c 6c 7a 69 70 72 65 63 6f 76 65 72 7d 0a 63 61 6e 20 72 #Data-safety,,lziprecover}.can.r
32d20 65 70 61 69 72 20 62 69 74 20 66 6c 69 70 20 65 72 72 6f 72 73 20 28 6f 6e 65 20 6f 66 20 74 68 epair.bit.flip.errors.(one.of.th
32d40 65 20 6d 6f 73 74 20 63 6f 6d 6d 6f 6e 20 66 6f 72 6d 73 20 6f 66 20 64 61 74 61 20 63 6f 72 72 e.most.common.forms.of.data.corr
32d60 75 70 74 69 6f 6e 29 0a 69 6e 20 6c 7a 69 70 20 66 69 6c 65 73 2c 20 61 6e 64 20 70 72 6f 76 69 uption).in.lzip.files,.and.provi
32d80 64 65 73 20 64 61 74 61 20 72 65 63 6f 76 65 72 79 20 63 61 70 61 62 69 6c 69 74 69 65 73 2c 20 des.data.recovery.capabilities,.
32da0 69 6e 63 6c 75 64 69 6e 67 0a 65 72 72 6f 72 2d 63 68 65 63 6b 65 64 20 6d 65 72 67 69 6e 67 20 including.error-checked.merging.
32dc0 6f 66 20 64 61 6d 61 67 65 64 20 63 6f 70 69 65 73 20 6f 66 20 61 20 66 69 6c 65 2e 0a 40 69 66 of.damaged.copies.of.a.file..@if
32de0 6e 6f 74 68 74 6d 6c 0a 40 78 72 65 66 7b 44 61 74 61 20 73 61 66 65 74 79 2c 2c 2c 6c 7a 69 70 nothtml.@xref{Data.safety,,,lzip
32e00 72 65 63 6f 76 65 72 7d 2e 0a 40 65 6e 64 20 69 66 6e 6f 74 68 74 6d 6c 0a 0a 40 69 74 65 6d 0a recover}..@end.ifnothtml..@item.
32e20 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 69 73 20 61 73 20 73 69 6d 70 6c 65 20 61 73 20 The.lzip.format.is.as.simple.as.
32e40 70 6f 73 73 69 62 6c 65 20 28 62 75 74 20 6e 6f 74 20 73 69 6d 70 6c 65 72 29 2e 20 54 68 65 20 possible.(but.not.simpler)..The.
32e60 6c 7a 69 70 0a 6d 61 6e 75 61 6c 20 70 72 6f 76 69 64 65 73 20 74 68 65 20 73 6f 75 72 63 65 20 lzip.manual.provides.the.source.
32e80 63 6f 64 65 20 6f 66 20 61 20 73 69 6d 70 6c 65 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 61 6c code.of.a.simple.decompressor.al
32ea0 6f 6e 67 20 77 69 74 68 20 61 0a 64 65 74 61 69 6c 65 64 20 65 78 70 6c 61 6e 61 74 69 6f 6e 20 ong.with.a.detailed.explanation.
32ec0 6f 66 20 68 6f 77 20 69 74 20 77 6f 72 6b 73 2c 20 73 6f 20 74 68 61 74 20 77 69 74 68 20 74 68 of.how.it.works,.so.that.with.th
32ee0 65 20 6f 6e 6c 79 20 68 65 6c 70 20 6f 66 20 74 68 65 0a 6c 7a 69 70 20 6d 61 6e 75 61 6c 20 69 e.only.help.of.the.lzip.manual.i
32f00 74 20 77 6f 75 6c 64 20 62 65 20 70 6f 73 73 69 62 6c 65 20 66 6f 72 20 61 20 64 69 67 69 74 61 t.would.be.possible.for.a.digita
32f20 6c 20 61 72 63 68 61 65 6f 6c 6f 67 69 73 74 20 74 6f 20 65 78 74 72 61 63 74 0a 74 68 65 20 64 l.archaeologist.to.extract.the.d
32f40 61 74 61 20 66 72 6f 6d 20 61 20 6c 7a 69 70 20 66 69 6c 65 20 6c 6f 6e 67 20 61 66 74 65 72 20 ata.from.a.lzip.file.long.after.
32f60 71 75 61 6e 74 75 6d 20 63 6f 6d 70 75 74 65 72 73 20 65 76 65 6e 74 75 61 6c 6c 79 0a 72 65 6e quantum.computers.eventually.ren
32f80 64 65 72 20 4c 5a 4d 41 20 6f 62 73 6f 6c 65 74 65 2e 0a 0a 40 69 74 65 6d 0a 41 64 64 69 74 69 der.LZMA.obsolete...@item.Additi
32fa0 6f 6e 61 6c 6c 79 20 74 68 65 20 6c 7a 69 70 20 72 65 66 65 72 65 6e 63 65 20 69 6d 70 6c 65 6d onally.the.lzip.reference.implem
32fc0 65 6e 74 61 74 69 6f 6e 20 69 73 20 63 6f 70 79 6c 65 66 74 65 64 2c 20 77 68 69 63 68 0a 67 75 entation.is.copylefted,.which.gu
32fe0 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 72 65 6d 61 69 6e 20 66 72 65 arantees.that.it.will.remain.fre
33000 65 20 66 6f 72 65 76 65 72 2e 0a 40 65 6e 64 20 69 74 65 6d 69 7a 65 0a 0a 41 20 6e 69 63 65 20 e.forever..@end.itemize..A.nice.
33020 66 65 61 74 75 72 65 20 6f 66 20 74 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 69 73 20 74 68 feature.of.the.lzip.format.is.th
33040 61 74 20 61 20 63 6f 72 72 75 70 74 20 62 79 74 65 20 69 73 20 65 61 73 69 65 72 20 74 6f 20 72 at.a.corrupt.byte.is.easier.to.r
33060 65 70 61 69 72 0a 74 68 65 20 6e 65 61 72 65 72 20 69 74 20 69 73 20 66 72 6f 6d 20 74 68 65 20 epair.the.nearer.it.is.from.the.
33080 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 66 69 6c 65 2e 20 54 68 65 72 65 66 6f 72 65 beginning.of.the.file..Therefore
330a0 2c 20 77 69 74 68 20 74 68 65 20 68 65 6c 70 20 6f 66 0a 6c 7a 69 70 72 65 63 6f 76 65 72 2c 20 ,.with.the.help.of.lziprecover,.
330c0 6c 6f 73 69 6e 67 20 61 6e 20 65 6e 74 69 72 65 20 61 72 63 68 69 76 65 20 6a 75 73 74 20 62 65 losing.an.entire.archive.just.be
330e0 63 61 75 73 65 20 6f 66 20 61 20 63 6f 72 72 75 70 74 20 62 79 74 65 20 6e 65 61 72 0a 74 68 65 cause.of.a.corrupt.byte.near.the
33100 20 62 65 67 69 6e 6e 69 6e 67 20 69 73 20 61 20 74 68 69 6e 67 20 6f 66 20 74 68 65 20 70 61 73 .beginning.is.a.thing.of.the.pas
33120 74 2e 0a 0a 54 68 65 20 6d 65 6d 62 65 72 20 74 72 61 69 6c 65 72 20 73 74 6f 72 65 73 20 74 68 t...The.member.trailer.stores.th
33140 65 20 33 32 2d 62 69 74 20 43 52 43 20 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 64 61 74 e.32-bit.CRC.of.the.original.dat
33160 61 2c 20 74 68 65 20 73 69 7a 65 20 6f 66 0a 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 64 61 74 61 a,.the.size.of.the.original.data
33180 2c 20 61 6e 64 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65 20 6d 65 6d 62 65 72 2e 20 54 68 ,.and.the.size.of.the.member..Th
331a0 65 73 65 20 76 61 6c 75 65 73 2c 20 74 6f 67 65 74 68 65 72 20 77 69 74 68 0a 74 68 65 20 27 45 ese.values,.together.with.the.'E
331c0 6e 64 20 4f 66 20 53 74 72 65 61 6d 27 20 6d 61 72 6b 65 72 2c 20 70 72 6f 76 69 64 65 20 61 20 nd.Of.Stream'.marker,.provide.a.
331e0 33 2d 66 61 63 74 6f 72 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 63 6b 69 6e 67 20 74 68 61 74 3-factor.integrity.checking.that
33200 0a 67 75 61 72 64 73 20 61 67 61 69 6e 73 74 20 63 6f 72 72 75 70 74 69 6f 6e 20 6f 66 20 74 68 .guards.against.corruption.of.th
33220 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 61 6e 64 20 61 67 61 69 6e 73 74 20 75 6e e.compressed.data.and.against.un
33240 64 65 74 65 63 74 65 64 20 62 75 67 73 0a 69 6e 20 6c 7a 69 70 20 28 68 6f 70 65 66 75 6c 6c 79 detected.bugs.in.lzip.(hopefully
33260 20 76 65 72 79 20 75 6e 6c 69 6b 65 6c 79 29 2e 20 54 68 65 20 63 68 61 6e 63 65 73 20 6f 66 20 .very.unlikely)..The.chances.of.
33280 64 61 74 61 20 63 6f 72 72 75 70 74 69 6f 6e 20 67 6f 69 6e 67 0a 75 6e 64 65 74 65 63 74 65 64 data.corruption.going.undetected
332a0 20 61 72 65 20 6d 69 63 72 6f 73 63 6f 70 69 63 2e 20 42 65 20 61 77 61 72 65 2c 20 74 68 6f 75 .are.microscopic..Be.aware,.thou
332c0 67 68 2c 20 74 68 61 74 20 74 68 65 20 63 68 65 63 6b 20 6f 63 63 75 72 73 20 75 70 6f 6e 0a 64 gh,.that.the.check.occurs.upon.d
332e0 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2c 20 73 6f 20 69 74 20 63 61 6e 20 6f 6e 6c 79 20 74 65 6c ecompression,.so.it.can.only.tel
33300 6c 20 79 6f 75 20 74 68 61 74 20 73 6f 6d 65 74 68 69 6e 67 20 69 73 20 77 72 6f 6e 67 2e 20 49 l.you.that.something.is.wrong..I
33320 74 20 63 61 6e 27 74 0a 68 65 6c 70 20 79 6f 75 20 72 65 63 6f 76 65 72 20 74 68 65 20 6f 72 69 t.can't.help.you.recover.the.ori
33340 67 69 6e 61 6c 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 2e 0a 0a 4c 7a 69 70 20 75 ginal.uncompressed.data...Lzip.u
33360 73 65 73 20 74 68 65 20 73 61 6d 65 20 77 65 6c 6c 2d 64 65 66 69 6e 65 64 20 65 78 69 74 20 73 ses.the.same.well-defined.exit.s
33380 74 61 74 75 73 20 76 61 6c 75 65 73 20 75 73 65 64 20 62 79 20 62 7a 69 70 32 2c 20 77 68 69 63 tatus.values.used.by.bzip2,.whic
333a0 68 0a 6d 61 6b 65 73 20 69 74 20 73 61 66 65 72 20 74 68 61 6e 20 63 6f 6d 70 72 65 73 73 6f 72 h.makes.it.safer.than.compressor
333c0 73 20 72 65 74 75 72 6e 69 6e 67 20 61 6d 62 69 67 75 6f 75 73 20 77 61 72 6e 69 6e 67 20 76 61 s.returning.ambiguous.warning.va
333e0 6c 75 65 73 20 28 6c 69 6b 65 0a 67 7a 69 70 29 20 77 68 65 6e 20 69 74 20 69 73 20 75 73 65 64 lues.(like.gzip).when.it.is.used
33400 20 61 73 20 61 20 62 61 63 6b 20 65 6e 64 20 66 6f 72 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d .as.a.back.end.for.other.program
33420 73 20 6c 69 6b 65 20 74 61 72 20 6f 72 20 7a 75 74 69 6c 73 2e 0a 0a 4c 7a 69 70 20 61 75 74 6f s.like.tar.or.zutils...Lzip.auto
33440 6d 61 74 69 63 61 6c 6c 79 20 75 73 65 73 20 66 6f 72 20 65 61 63 68 20 66 69 6c 65 20 74 68 65 matically.uses.for.each.file.the
33460 20 6c 61 72 67 65 73 74 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 74 68 61 74 20 64 6f .largest.dictionary.size.that.do
33480 65 73 0a 6e 6f 74 20 65 78 63 65 65 64 20 6e 65 69 74 68 65 72 20 74 68 65 20 66 69 6c 65 20 73 es.not.exceed.neither.the.file.s
334a0 69 7a 65 20 6e 6f 72 20 74 68 65 20 6c 69 6d 69 74 20 67 69 76 65 6e 2e 20 54 68 65 20 64 69 63 ize.nor.the.limit.given..The.dic
334c0 74 69 6f 6e 61 72 79 20 73 69 7a 65 0a 75 73 65 64 20 66 6f 72 20 64 65 63 6f 6d 70 72 65 73 73 tionary.size.used.for.decompress
334e0 69 6f 6e 20 69 73 20 74 68 65 20 73 61 6d 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 ion.is.the.same.dictionary.size.
33500 75 73 65 64 20 66 6f 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0a 0a 54 68 65 20 61 6d 6f 75 6e used.for.compression...The.amoun
33520 74 20 6f 66 20 6d 65 6d 6f 72 79 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 63 6f 6d 70 72 65 73 t.of.memory.required.for.compres
33540 73 69 6f 6e 20 69 73 20 61 62 6f 75 74 20 31 20 6f 72 20 32 20 74 69 6d 65 73 20 74 68 65 0a 64 sion.is.about.1.or.2.times.the.d
33560 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 20 28 31 20 69 66 20 69 6e 70 75 74 ictionary.size.limit.(1.if.input
33580 20 66 69 6c 65 20 73 69 7a 65 20 69 73 20 6c 65 73 73 20 74 68 61 6e 20 64 69 63 74 69 6f 6e 61 .file.size.is.less.than.dictiona
335a0 72 79 20 73 69 7a 65 0a 6c 69 6d 69 74 2c 20 65 6c 73 65 20 32 29 20 70 6c 75 73 20 39 20 74 69 ry.size.limit,.else.2).plus.9.ti
335c0 6d 65 73 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 72 65 61 6c 6c 79 20 75 mes.the.dictionary.size.really.u
335e0 73 65 64 2e 20 54 68 65 20 6f 70 74 69 6f 6e 0a 40 6f 70 74 69 6f 6e 7b 2d 30 7d 20 69 73 20 73 sed..The.option.@option{-0}.is.s
33600 70 65 63 69 61 6c 20 61 6e 64 20 6f 6e 6c 79 20 72 65 71 75 69 72 65 73 20 61 62 6f 75 74 20 40 pecial.and.only.requires.about.@
33620 77 7b 31 2e 35 20 4d 69 42 7d 20 61 74 20 6d 6f 73 74 2e 20 54 68 65 0a 61 6d 6f 75 6e 74 20 6f w{1.5.MiB}.at.most..The.amount.o
33640 66 20 6d 65 6d 6f 72 79 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 64 65 63 6f 6d 70 72 65 73 73 f.memory.required.for.decompress
33660 69 6f 6e 20 69 73 20 61 62 6f 75 74 20 40 77 7b 34 36 20 6b 42 7d 20 6c 61 72 67 65 72 0a 74 68 ion.is.about.@w{46.kB}.larger.th
33680 61 6e 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 72 65 61 6c 6c 79 20 75 73 an.the.dictionary.size.really.us
336a0 65 64 2e 0a 0a 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 6c 7a 69 70 20 72 65 70 6c ed...When.compressing,.lzip.repl
336c0 61 63 65 73 20 65 76 65 72 79 20 66 69 6c 65 20 67 69 76 65 6e 20 69 6e 20 74 68 65 20 63 6f 6d aces.every.file.given.in.the.com
336e0 6d 61 6e 64 20 6c 69 6e 65 0a 77 69 74 68 20 61 20 63 6f 6d 70 72 65 73 73 65 64 20 76 65 72 73 mand.line.with.a.compressed.vers
33700 69 6f 6e 20 6f 66 20 69 74 73 65 6c 66 2c 20 77 69 74 68 20 74 68 65 20 6e 61 6d 65 20 22 6f 72 ion.of.itself,.with.the.name."or
33720 69 67 69 6e 61 6c 5f 6e 61 6d 65 2e 6c 7a 22 2e 0a 57 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 iginal_name.lz"..When.decompress
33740 69 6e 67 2c 20 6c 7a 69 70 20 61 74 74 65 6d 70 74 73 20 74 6f 20 67 75 65 73 73 20 74 68 65 20 ing,.lzip.attempts.to.guess.the.
33760 6e 61 6d 65 20 66 6f 72 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 0a 66 69 6c 65 20 66 name.for.the.decompressed.file.f
33780 72 6f 6d 20 74 68 61 74 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 rom.that.of.the.compressed.file.
337a0 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 0a 40 6d 75 6c 74 69 74 61 62 6c 65 20 7b 61 6e 79 6f 74 68 as.follows:..@multitable.{anyoth
337c0 65 72 6e 61 6d 65 7d 20 7b 62 65 63 6f 6d 65 73 7d 20 7b 61 6e 79 6f 74 68 65 72 6e 61 6d 65 2e ername}.{becomes}.{anyothername.
337e0 6f 75 74 7d 0a 40 69 74 65 6d 20 66 69 6c 65 6e 61 6d 65 2e 6c 7a 20 20 40 74 61 62 20 62 65 63 out}.@item.filename.lz..@tab.bec
33800 6f 6d 65 73 20 40 74 61 62 20 66 69 6c 65 6e 61 6d 65 0a 40 69 74 65 6d 20 66 69 6c 65 6e 61 6d omes.@tab.filename.@item.filenam
33820 65 2e 74 6c 7a 20 40 74 61 62 20 62 65 63 6f 6d 65 73 20 40 74 61 62 20 66 69 6c 65 6e 61 6d 65 e.tlz.@tab.becomes.@tab.filename
33840 2e 74 61 72 0a 40 69 74 65 6d 20 61 6e 79 6f 74 68 65 72 6e 61 6d 65 20 40 74 61 62 20 62 65 63 .tar.@item.anyothername.@tab.bec
33860 6f 6d 65 73 20 40 74 61 62 20 61 6e 79 6f 74 68 65 72 6e 61 6d 65 2e 6f 75 74 0a 40 65 6e 64 20 omes.@tab.anyothername.out.@end.
33880 6d 75 6c 74 69 74 61 62 6c 65 0a 0a 28 44 65 29 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 20 66 69 multitable..(De)compressing.a.fi
338a0 6c 65 20 69 73 20 6d 75 63 68 20 6c 69 6b 65 20 63 6f 70 79 69 6e 67 20 6f 72 20 6d 6f 76 69 6e le.is.much.like.copying.or.movin
338c0 67 20 69 74 2e 20 54 68 65 72 65 66 6f 72 65 20 6c 7a 69 70 0a 70 72 65 73 65 72 76 65 73 20 74 g.it..Therefore.lzip.preserves.t
338e0 68 65 20 61 63 63 65 73 73 20 61 6e 64 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 64 61 74 65 73 he.access.and.modification.dates
33900 2c 20 70 65 72 6d 69 73 73 69 6f 6e 73 2c 20 61 6e 64 2c 20 69 66 20 79 6f 75 20 68 61 76 65 0a ,.permissions,.and,.if.you.have.
33920 61 70 70 72 6f 70 72 69 61 74 65 20 70 72 69 76 69 6c 65 67 65 73 2c 20 6f 77 6e 65 72 73 68 69 appropriate.privileges,.ownershi
33940 70 20 6f 66 20 74 68 65 20 66 69 6c 65 20 6a 75 73 74 20 61 73 20 40 77 7b 40 73 61 6d 70 7b 63 p.of.the.file.just.as.@w{@samp{c
33960 70 20 2d 70 7d 7d 20 64 6f 65 73 2e 0a 28 49 66 20 74 68 65 20 75 73 65 72 20 49 44 20 6f 72 20 p.-p}}.does..(If.the.user.ID.or.
33980 74 68 65 20 67 72 6f 75 70 20 49 44 20 63 61 6e 27 74 20 62 65 20 64 75 70 6c 69 63 61 74 65 64 the.group.ID.can't.be.duplicated
339a0 2c 20 74 68 65 20 66 69 6c 65 20 70 65 72 6d 69 73 73 69 6f 6e 0a 62 69 74 73 20 53 5f 49 53 55 ,.the.file.permission.bits.S_ISU
339c0 49 44 20 61 6e 64 20 53 5f 49 53 47 49 44 20 61 72 65 20 63 6c 65 61 72 65 64 29 2e 0a 0a 4c 7a ID.and.S_ISGID.are.cleared)...Lz
339e0 69 70 20 69 73 20 61 62 6c 65 20 74 6f 20 72 65 61 64 20 66 72 6f 6d 20 73 6f 6d 65 20 74 79 70 ip.is.able.to.read.from.some.typ
33a00 65 73 20 6f 66 20 6e 6f 6e 2d 72 65 67 75 6c 61 72 20 66 69 6c 65 73 20 69 66 20 65 69 74 68 65 es.of.non-regular.files.if.eithe
33a20 72 20 74 68 65 0a 6f 70 74 69 6f 6e 20 40 6f 70 74 69 6f 6e 7b 2d 63 7d 20 6f 72 20 74 68 65 20 r.the.option.@option{-c}.or.the.
33a40 6f 70 74 69 6f 6e 20 40 6f 70 74 69 6f 6e 7b 2d 6f 7d 20 69 73 20 73 70 65 63 69 66 69 65 64 2e option.@option{-o}.is.specified.
33a60 0a 0a 4c 7a 69 70 20 72 65 66 75 73 65 73 20 74 6f 20 72 65 61 64 20 63 6f 6d 70 72 65 73 73 65 ..Lzip.refuses.to.read.compresse
33a80 64 20 64 61 74 61 20 66 72 6f 6d 20 61 20 74 65 72 6d 69 6e 61 6c 20 6f 72 20 77 72 69 74 65 20 d.data.from.a.terminal.or.write.
33aa0 63 6f 6d 70 72 65 73 73 65 64 0a 64 61 74 61 20 74 6f 20 61 20 74 65 72 6d 69 6e 61 6c 2c 20 61 compressed.data.to.a.terminal,.a
33ac0 73 20 74 68 69 73 20 77 6f 75 6c 64 20 62 65 20 65 6e 74 69 72 65 6c 79 20 69 6e 63 6f 6d 70 72 s.this.would.be.entirely.incompr
33ae0 65 68 65 6e 73 69 62 6c 65 20 61 6e 64 20 6d 69 67 68 74 0a 6c 65 61 76 65 20 74 68 65 20 74 65 ehensible.and.might.leave.the.te
33b00 72 6d 69 6e 61 6c 20 69 6e 20 61 6e 20 61 62 6e 6f 72 6d 61 6c 20 73 74 61 74 65 2e 0a 0a 4c 7a rminal.in.an.abnormal.state...Lz
33b20 69 70 20 63 6f 72 72 65 63 74 6c 79 20 64 65 63 6f 6d 70 72 65 73 73 65 73 20 61 20 66 69 6c 65 ip.correctly.decompresses.a.file
33b40 20 77 68 69 63 68 20 69 73 20 74 68 65 20 63 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 20 6f 66 20 74 .which.is.the.concatenation.of.t
33b60 77 6f 20 6f 72 0a 6d 6f 72 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 73 2e 20 54 68 65 wo.or.more.compressed.files..The
33b80 20 72 65 73 75 6c 74 20 69 73 20 74 68 65 20 63 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 20 6f 66 20 .result.is.the.concatenation.of.
33ba0 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 0a 64 65 63 6f 6d 70 72 65 73 73 65 64 20 66 the.corresponding.decompressed.f
33bc0 69 6c 65 73 2e 20 49 6e 74 65 67 72 69 74 79 20 74 65 73 74 69 6e 67 20 6f 66 20 63 6f 6e 63 61 iles..Integrity.testing.of.conca
33be0 74 65 6e 61 74 65 64 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 73 20 69 73 0a 61 6c 73 6f tenated.compressed.files.is.also
33c00 20 73 75 70 70 6f 72 74 65 64 2e 0a 0a 4c 7a 69 70 20 63 61 6e 20 70 72 6f 64 75 63 65 20 6d 75 .supported...Lzip.can.produce.mu
33c20 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 2c 20 61 6e 64 20 6c 7a 69 70 72 65 63 6f 76 65 72 ltimember.files,.and.lziprecover
33c40 20 63 61 6e 20 73 61 66 65 6c 79 20 72 65 63 6f 76 65 72 20 74 68 65 0a 75 6e 64 61 6d 61 67 65 .can.safely.recover.the.undamage
33c60 64 20 6d 65 6d 62 65 72 73 20 69 6e 20 63 61 73 65 20 6f 66 20 66 69 6c 65 20 64 61 6d 61 67 65 d.members.in.case.of.file.damage
33c80 2e 20 4c 7a 69 70 20 63 61 6e 20 61 6c 73 6f 20 73 70 6c 69 74 20 74 68 65 20 63 6f 6d 70 72 65 ..Lzip.can.also.split.the.compre
33ca0 73 73 65 64 0a 6f 75 74 70 75 74 20 69 6e 20 76 6f 6c 75 6d 65 73 20 6f 66 20 61 20 67 69 76 65 ssed.output.in.volumes.of.a.give
33cc0 6e 20 73 69 7a 65 2c 20 65 76 65 6e 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 20 73 n.size,.even.when.reading.from.s
33ce0 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2e 0a 0a 4c 7a 69 70 20 69 73 20 61 62 6c 65 20 74 6f 20 tandard.input...Lzip.is.able.to.
33d00 63 6f 6d 70 72 65 73 73 20 61 6e 64 20 64 65 63 6f 6d 70 72 65 73 73 20 73 74 72 65 61 6d 73 20 compress.and.decompress.streams.
33d20 6f 66 20 75 6e 6c 69 6d 69 74 65 64 20 73 69 7a 65 20 62 79 0a 61 75 74 6f 6d 61 74 69 63 61 6c of.unlimited.size.by.automatical
33d40 6c 79 20 63 72 65 61 74 69 6e 67 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 6f 75 74 70 75 74 2e 20 ly.creating.multimember.output..
33d60 54 68 65 20 6d 65 6d 62 65 72 73 20 73 6f 20 63 72 65 61 74 65 64 20 61 72 65 20 6c 61 72 67 65 The.members.so.created.are.large
33d80 2c 0a 61 62 6f 75 74 20 40 77 7b 32 20 50 69 42 7d 20 65 61 63 68 2e 0a 0a 0a 40 6e 6f 64 65 20 ,.about.@w{2.PiB}.each....@node.
33da0 4f 75 74 70 75 74 0a 40 63 68 61 70 74 65 72 20 4d 65 61 6e 69 6e 67 20 6f 66 20 6c 7a 69 70 27 Output.@chapter.Meaning.of.lzip'
33dc0 73 20 6f 75 74 70 75 74 0a 40 63 69 6e 64 65 78 20 6f 75 74 70 75 74 0a 0a 54 68 65 20 6f 75 74 s.output.@cindex.output..The.out
33de0 70 75 74 20 6f 66 20 6c 7a 69 70 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 68 69 73 3a 0a 0a 40 65 put.of.lzip.looks.like.this:..@e
33e00 78 61 6d 70 6c 65 0a 6c 7a 69 70 20 2d 76 20 66 6f 6f 0a 20 20 66 6f 6f 3a 20 20 36 2e 36 37 36 xample.lzip.-v.foo...foo:..6.676
33e20 3a 31 2c 20 31 34 2e 39 38 25 20 72 61 74 69 6f 2c 20 38 35 2e 30 32 25 20 73 61 76 65 64 2c 20 :1,.14.98%.ratio,.85.02%.saved,.
33e40 34 35 30 35 36 30 20 69 6e 2c 20 36 37 34 39 33 20 6f 75 74 2e 0a 0a 6c 7a 69 70 20 2d 74 76 76 450560.in,.67493.out...lzip.-tvv
33e60 76 20 66 6f 6f 2e 6c 7a 0a 20 20 66 6f 6f 2e 6c 7a 3a 20 20 36 2e 36 37 36 3a 31 2c 20 31 34 2e v.foo.lz...foo.lz:..6.676:1,.14.
33e80 39 38 25 20 72 61 74 69 6f 2c 20 38 35 2e 30 32 25 20 73 61 76 65 64 2e 20 20 34 35 30 35 36 30 98%.ratio,.85.02%.saved...450560
33ea0 20 6f 75 74 2c 20 20 36 37 34 39 33 20 69 6e 2e 20 6f 6b 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 .out,..67493.in..ok.@end.example
33ec0 0a 0a 54 68 65 20 6d 65 61 6e 69 6e 67 20 6f 66 20 65 61 63 68 20 66 69 65 6c 64 20 69 73 20 61 ..The.meaning.of.each.field.is.a
33ee0 73 20 66 6f 6c 6c 6f 77 73 3a 0a 0a 40 74 61 62 6c 65 20 40 63 6f 64 65 0a 40 69 74 65 6d 20 4e s.follows:..@table.@code.@item.N
33f00 3a 31 0a 54 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 40 77 7b 28 75 6e 63 :1.The.compression.ratio.@w{(unc
33f20 6f 6d 70 72 65 73 73 65 64 5f 73 69 7a 65 20 2f 20 63 6f 6d 70 72 65 73 73 65 64 5f 73 69 7a 65 ompressed_size./.compressed_size
33f40 29 7d 2c 20 73 68 6f 77 6e 20 61 73 0a 40 77 7b 4e 20 74 6f 20 31 7d 2e 0a 0a 40 69 74 65 6d 20 )},.shown.as.@w{N.to.1}...@item.
33f60 72 61 74 69 6f 0a 54 68 65 20 69 6e 76 65 72 73 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 ratio.The.inverse.compression.ra
33f80 74 69 6f 20 40 77 7b 28 63 6f 6d 70 72 65 73 73 65 64 5f 73 69 7a 65 20 2f 20 75 6e 63 6f 6d 70 tio.@w{(compressed_size./.uncomp
33fa0 72 65 73 73 65 64 5f 73 69 7a 65 29 7d 2c 0a 73 68 6f 77 6e 20 61 73 20 61 20 70 65 72 63 65 6e ressed_size)},.shown.as.a.percen
33fc0 74 61 67 65 2e 20 41 20 64 65 63 69 6d 61 6c 20 72 61 74 69 6f 20 69 73 20 65 61 73 69 6c 79 20 tage..A.decimal.ratio.is.easily.
33fe0 6f 62 74 61 69 6e 65 64 20 62 79 20 6d 6f 76 69 6e 67 20 74 68 65 0a 64 65 63 69 6d 61 6c 20 70 obtained.by.moving.the.decimal.p
34000 6f 69 6e 74 20 74 77 6f 20 70 6c 61 63 65 73 20 74 6f 20 74 68 65 20 6c 65 66 74 3b 20 40 77 7b oint.two.places.to.the.left;.@w{
34020 31 34 2e 39 38 25 20 3d 20 30 2e 31 34 39 38 7d 2e 0a 0a 40 69 74 65 6d 20 73 61 76 65 64 0a 54 14.98%.=.0.1498}...@item.saved.T
34040 68 65 20 73 70 61 63 65 20 73 61 76 65 64 20 62 79 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 40 77 he.space.saved.by.compression.@w
34060 7b 28 31 20 2d 20 72 61 74 69 6f 29 7d 2c 20 73 68 6f 77 6e 20 61 73 20 61 20 70 65 72 63 65 6e {(1.-.ratio)},.shown.as.a.percen
34080 74 61 67 65 2e 0a 0a 40 69 74 65 6d 20 69 6e 0a 53 69 7a 65 20 6f 66 20 74 68 65 20 69 6e 70 75 tage...@item.in.Size.of.the.inpu
340a0 74 20 64 61 74 61 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 t.data..This.is.the.uncompressed
340c0 20 73 69 7a 65 20 77 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 6f 72 0a 74 68 65 20 63 .size.when.compressing,.or.the.c
340e0 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 77 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e ompressed.size.when.decompressin
34100 67 20 6f 72 20 74 65 73 74 69 6e 67 2e 20 4e 6f 74 65 20 74 68 61 74 20 6c 7a 69 70 20 61 6c 77 g.or.testing..Note.that.lzip.alw
34120 61 79 73 0a 70 72 69 6e 74 73 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 ays.prints.the.uncompressed.size
34140 20 62 65 66 6f 72 65 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 77 68 65 6e .before.the.compressed.size.when
34160 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 0a 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 74 65 73 .compressing,.decompressing,.tes
34180 74 69 6e 67 2c 20 6f 72 20 6c 69 73 74 69 6e 67 2e 0a 0a 40 69 74 65 6d 20 6f 75 74 0a 53 69 7a ting,.or.listing...@item.out.Siz
341a0 65 20 6f 66 20 74 68 65 20 6f 75 74 70 75 74 20 64 61 74 61 2e 20 54 68 69 73 20 69 73 20 74 68 e.of.the.output.data..This.is.th
341c0 65 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 77 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 e.compressed.size.when.compressi
341e0 6e 67 2c 20 6f 72 0a 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 77 68 65 ng,.or.the.decompressed.size.whe
34200 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 6f 72 20 74 65 73 74 69 6e 67 2e 0a 0a 40 65 6e n.decompressing.or.testing...@en
34220 64 20 74 61 62 6c 65 0a 0a 57 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 6f 72 20 74 d.table..When.decompressing.or.t
34240 65 73 74 69 6e 67 20 61 74 20 76 65 72 62 6f 73 69 74 79 20 6c 65 76 65 6c 20 34 20 28 2d 76 76 esting.at.verbosity.level.4.(-vv
34260 76 76 29 2c 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 0a 73 69 7a 65 20 75 73 65 64 20 74 6f vv),.the.dictionary.size.used.to
34280 20 63 6f 6d 70 72 65 73 73 20 74 68 65 20 66 69 6c 65 20 61 6e 64 20 74 68 65 20 43 52 43 33 32 .compress.the.file.and.the.CRC32
342a0 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 61 72 65 0a 61 6c .of.the.uncompressed.data.are.al
342c0 73 6f 20 73 68 6f 77 6e 2e 0a 0a 4c 41 4e 47 55 41 47 45 20 4e 4f 54 45 3a 20 55 6e 63 6f 6d 70 so.shown...LANGUAGE.NOTE:.Uncomp
342e0 72 65 73 73 65 64 20 3d 20 6e 6f 74 20 63 6f 6d 70 72 65 73 73 65 64 20 3d 20 70 6c 61 69 6e 20 ressed.=.not.compressed.=.plain.
34300 64 61 74 61 3b 20 69 74 20 6d 61 79 20 6e 65 76 65 72 20 68 61 76 65 0a 62 65 65 6e 20 63 6f 6d data;.it.may.never.have.been.com
34320 70 72 65 73 73 65 64 2e 20 44 65 63 6f 6d 70 72 65 73 73 65 64 20 69 73 20 75 73 65 64 20 74 6f pressed..Decompressed.is.used.to
34340 20 72 65 66 65 72 20 74 6f 20 64 61 74 61 20 77 68 69 63 68 20 68 61 76 65 20 75 6e 64 65 72 67 .refer.to.data.which.have.underg
34360 6f 6e 65 0a 74 68 65 20 70 72 6f 63 65 73 73 20 6f 66 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e one.the.process.of.decompression
34380 2e 0a 0a 0a 40 6e 6f 64 65 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 0a 40 63 68 61 70 74 65 72 ....@node.Invoking.lzip.@chapter
343a0 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 0a 40 63 69 6e 64 65 78 20 69 6e 76 6f 6b 69 6e 67 0a .Invoking.lzip.@cindex.invoking.
343c0 40 63 69 6e 64 65 78 20 6f 70 74 69 6f 6e 73 0a 40 63 69 6e 64 65 78 20 75 73 61 67 65 0a 40 63 @cindex.options.@cindex.usage.@c
343e0 69 6e 64 65 78 20 76 65 72 73 69 6f 6e 0a 0a 54 68 65 20 66 6f 72 6d 61 74 20 66 6f 72 20 72 75 index.version..The.format.for.ru
34400 6e 6e 69 6e 67 20 6c 7a 69 70 20 69 73 3a 0a 0a 40 65 78 61 6d 70 6c 65 0a 6c 7a 69 70 20 5b 40 nning.lzip.is:..@example.lzip.[@
34420 76 61 72 7b 6f 70 74 69 6f 6e 73 7d 5d 20 5b 40 76 61 72 7b 66 69 6c 65 73 7d 5d 0a 40 65 6e 64 var{options}].[@var{files}].@end
34440 20 65 78 61 6d 70 6c 65 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 49 66 20 6e 6f 20 66 69 6c 65 20 6e .example..@noindent.If.no.file.n
34460 61 6d 65 73 20 61 72 65 20 73 70 65 63 69 66 69 65 64 2c 20 6c 7a 69 70 20 63 6f 6d 70 72 65 73 ames.are.specified,.lzip.compres
34480 73 65 73 20 28 6f 72 20 64 65 63 6f 6d 70 72 65 73 73 65 73 29 20 66 72 6f 6d 0a 73 74 61 6e 64 ses.(or.decompresses).from.stand
344a0 61 72 64 20 69 6e 70 75 74 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 20 41 20 ard.input.to.standard.output..A.
344c0 68 79 70 68 65 6e 20 40 73 61 6d 70 7b 2d 7d 20 75 73 65 64 20 61 73 20 61 20 40 76 61 72 7b 66 hyphen.@samp{-}.used.as.a.@var{f
344e0 69 6c 65 7d 0a 61 72 67 75 6d 65 6e 74 20 6d 65 61 6e 73 20 73 74 61 6e 64 61 72 64 20 69 6e 70 ile}.argument.means.standard.inp
34500 75 74 2e 20 49 74 20 63 61 6e 20 62 65 20 6d 69 78 65 64 20 77 69 74 68 20 6f 74 68 65 72 20 40 ut..It.can.be.mixed.with.other.@
34520 76 61 72 7b 66 69 6c 65 73 7d 20 61 6e 64 20 69 73 0a 72 65 61 64 20 6a 75 73 74 20 6f 6e 63 65 var{files}.and.is.read.just.once
34540 2c 20 74 68 65 20 66 69 72 73 74 20 74 69 6d 65 20 69 74 20 61 70 70 65 61 72 73 20 69 6e 20 74 ,.the.first.time.it.appears.in.t
34560 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 2e 20 52 65 6d 65 6d 62 65 72 20 74 6f 0a 70 72 65 he.command.line..Remember.to.pre
34580 70 65 6e 64 20 40 66 69 6c 65 7b 2e 2f 7d 20 74 6f 20 61 6e 79 20 66 69 6c 65 20 6e 61 6d 65 20 pend.@file{./}.to.any.file.name.
345a0 62 65 67 69 6e 6e 69 6e 67 20 77 69 74 68 20 61 20 68 79 70 68 65 6e 2c 20 6f 72 20 75 73 65 20 beginning.with.a.hyphen,.or.use.
345c0 40 73 61 6d 70 7b 2d 2d 7d 2e 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 6c 7a 69 70 20 73 75 70 70 6f @samp{--}...@noindent.lzip.suppo
345e0 72 74 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6f 70 74 69 6f 6e 73 3a 20 40 78 72 65 66 rts.the.following.options:.@xref
34600 7b 41 72 67 75 6d 65 6e 74 20 73 79 6e 74 61 78 7d 2e 0a 0a 40 74 61 62 6c 65 20 40 63 6f 64 65 {Argument.syntax}...@table.@code
34620 0a 40 69 74 65 6d 20 2d 68 0a 40 69 74 65 6d 78 20 2d 2d 68 65 6c 70 0a 50 72 69 6e 74 20 61 6e .@item.-h.@itemx.--help.Print.an
34640 20 69 6e 66 6f 72 6d 61 74 69 76 65 20 68 65 6c 70 20 6d 65 73 73 61 67 65 20 64 65 73 63 72 69 .informative.help.message.descri
34660 62 69 6e 67 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 61 6e 64 20 65 78 69 74 2e 0a 0a 40 69 74 65 bing.the.options.and.exit...@ite
34680 6d 20 2d 56 0a 40 69 74 65 6d 78 20 2d 2d 76 65 72 73 69 6f 6e 0a 50 72 69 6e 74 20 74 68 65 20 m.-V.@itemx.--version.Print.the.
346a0 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 20 6c 7a 69 70 20 6f 6e 20 74 68 65 20 73 74 version.number.of.lzip.on.the.st
346c0 61 6e 64 61 72 64 20 6f 75 74 70 75 74 20 61 6e 64 20 65 78 69 74 2e 0a 54 68 69 73 20 76 65 72 andard.output.and.exit..This.ver
346e0 73 69 6f 6e 20 6e 75 6d 62 65 72 20 73 68 6f 75 6c 64 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 sion.number.should.be.included.i
34700 6e 20 61 6c 6c 20 62 75 67 20 72 65 70 6f 72 74 73 2e 0a 0a 40 61 6e 63 68 6f 72 7b 2d 2d 74 72 n.all.bug.reports...@anchor{--tr
34720 61 69 6c 69 6e 67 2d 65 72 72 6f 72 7d 0a 40 69 74 65 6d 20 2d 61 0a 40 69 74 65 6d 78 20 2d 2d ailing-error}.@item.-a.@itemx.--
34740 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 0a 45 78 69 74 20 77 69 74 68 20 65 72 72 6f 72 20 73 trailing-error.Exit.with.error.s
34760 74 61 74 75 73 20 32 20 69 66 20 61 6e 79 20 72 65 6d 61 69 6e 69 6e 67 20 69 6e 70 75 74 20 69 tatus.2.if.any.remaining.input.i
34780 73 20 64 65 74 65 63 74 65 64 20 61 66 74 65 72 0a 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 74 s.detected.after.decompressing.t
347a0 68 65 20 6c 61 73 74 20 6d 65 6d 62 65 72 2e 20 53 75 63 68 20 72 65 6d 61 69 6e 69 6e 67 20 69 he.last.member..Such.remaining.i
347c0 6e 70 75 74 20 69 73 20 75 73 75 61 6c 6c 79 20 74 72 61 69 6c 69 6e 67 0a 67 61 72 62 61 67 65 nput.is.usually.trailing.garbage
347e0 20 74 68 61 74 20 63 61 6e 20 62 65 20 73 61 66 65 6c 79 20 69 67 6e 6f 72 65 64 2e 20 40 78 72 .that.can.be.safely.ignored..@xr
34800 65 66 7b 63 6f 6e 63 61 74 2d 65 78 61 6d 70 6c 65 7d 2e 0a 0a 40 69 74 65 6d 20 2d 62 20 40 76 ef{concat-example}...@item.-b.@v
34820 61 72 7b 62 79 74 65 73 7d 0a 40 69 74 65 6d 78 20 2d 2d 6d 65 6d 62 65 72 2d 73 69 7a 65 3d 40 ar{bytes}.@itemx.--member-size=@
34840 76 61 72 7b 62 79 74 65 73 7d 0a 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 73 65 74 var{bytes}.When.compressing,.set
34860 20 74 68 65 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 6c 69 6d 69 74 20 74 6f 20 40 76 61 72 7b 62 .the.member.size.limit.to.@var{b
34880 79 74 65 73 7d 2e 20 49 66 20 40 76 61 72 7b 62 79 74 65 73 7d 0a 69 73 20 73 6d 61 6c 6c 65 72 ytes}..If.@var{bytes}.is.smaller
348a0 20 74 68 61 6e 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 2c 20 61 20 6d 75 6c .than.the.compressed.size,.a.mul
348c0 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 20 69 73 20 70 72 6f 64 75 63 65 64 2e 20 49 74 20 69 73 timember.file.is.produced..It.is
348e0 0a 61 64 76 69 73 61 62 6c 65 20 74 6f 20 6b 65 65 70 20 6d 65 6d 62 65 72 73 20 73 6d 61 6c 6c .advisable.to.keep.members.small
34900 65 72 20 74 68 61 6e 20 52 41 4d 20 73 69 7a 65 20 73 6f 20 74 68 61 74 20 74 68 65 79 20 63 61 er.than.RAM.size.so.that.they.ca
34920 6e 20 62 65 20 72 65 70 61 69 72 65 64 0a 77 69 74 68 20 6c 7a 69 70 72 65 63 6f 76 65 72 20 69 n.be.repaired.with.lziprecover.i
34940 6e 20 63 61 73 65 20 6f 66 20 63 6f 72 72 75 70 74 69 6f 6e 2e 20 41 20 73 6d 61 6c 6c 20 6d 65 n.case.of.corruption..A.small.me
34960 6d 62 65 72 20 73 69 7a 65 20 6d 61 79 20 64 65 67 72 61 64 65 0a 63 6f 6d 70 72 65 73 73 69 6f mber.size.may.degrade.compressio
34980 6e 20 72 61 74 69 6f 2c 20 73 6f 20 75 73 65 20 69 74 20 6f 6e 6c 79 20 77 68 65 6e 20 6e 65 65 n.ratio,.so.use.it.only.when.nee
349a0 64 65 64 2e 20 56 61 6c 69 64 20 76 61 6c 75 65 73 20 72 61 6e 67 65 20 66 72 6f 6d 0a 40 77 7b ded..Valid.values.range.from.@w{
349c0 31 30 30 20 6b 42 7d 20 74 6f 20 40 77 7b 32 20 50 69 42 7d 2e 20 44 65 66 61 75 6c 74 73 20 74 100.kB}.to.@w{2.PiB}..Defaults.t
349e0 6f 20 40 77 7b 32 20 50 69 42 7d 2e 0a 0a 40 69 74 65 6d 20 2d 63 0a 40 69 74 65 6d 78 20 2d 2d o.@w{2.PiB}...@item.-c.@itemx.--
34a00 73 74 64 6f 75 74 0a 43 6f 6d 70 72 65 73 73 20 6f 72 20 64 65 63 6f 6d 70 72 65 73 73 20 74 6f stdout.Compress.or.decompress.to
34a20 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 3b 20 6b 65 65 70 20 69 6e 70 75 74 20 66 69 6c .standard.output;.keep.input.fil
34a40 65 73 20 75 6e 63 68 61 6e 67 65 64 2e 20 49 66 0a 63 6f 6d 70 72 65 73 73 69 6e 67 20 73 65 76 es.unchanged..If.compressing.sev
34a60 65 72 61 6c 20 66 69 6c 65 73 2c 20 65 61 63 68 20 66 69 6c 65 20 69 73 20 63 6f 6d 70 72 65 73 eral.files,.each.file.is.compres
34a80 73 65 64 20 69 6e 64 65 70 65 6e 64 65 6e 74 6c 79 2e 20 28 54 68 65 0a 6f 75 74 70 75 74 20 63 sed.independently..(The.output.c
34aa0 6f 6e 73 69 73 74 73 20 6f 66 20 61 20 73 65 71 75 65 6e 63 65 20 6f 66 20 69 6e 64 65 70 65 6e onsists.of.a.sequence.of.indepen
34ac0 64 65 6e 74 6c 79 20 63 6f 6d 70 72 65 73 73 65 64 20 6d 65 6d 62 65 72 73 29 2e 20 54 68 69 73 dently.compressed.members)..This
34ae0 0a 6f 70 74 69 6f 6e 20 28 6f 72 20 40 6f 70 74 69 6f 6e 7b 2d 6f 7d 29 20 69 73 20 6e 65 65 64 .option.(or.@option{-o}).is.need
34b00 65 64 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 20 61 20 6e 61 6d 65 64 20 70 69 70 ed.when.reading.from.a.named.pip
34b20 65 20 28 66 69 66 6f 29 20 6f 72 0a 66 72 6f 6d 20 61 20 64 65 76 69 63 65 2e 20 55 73 65 20 69 e.(fifo).or.from.a.device..Use.i
34b40 74 20 61 6c 73 6f 20 74 6f 20 72 65 63 6f 76 65 72 20 61 73 20 6d 75 63 68 20 6f 66 20 74 68 65 t.also.to.recover.as.much.of.the
34b60 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 61 73 0a 70 6f 73 73 69 62 6c 65 20 77 .decompressed.data.as.possible.w
34b80 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 20 63 6f 72 72 75 70 74 20 66 69 6c 65 hen.decompressing.a.corrupt.file
34ba0 2e 20 40 6f 70 74 69 6f 6e 7b 2d 63 7d 20 6f 76 65 72 72 69 64 65 73 20 40 6f 70 74 69 6f 6e 7b ..@option{-c}.overrides.@option{
34bc0 2d 6f 7d 0a 61 6e 64 20 40 6f 70 74 69 6f 6e 7b 2d 53 7d 2e 20 40 6f 70 74 69 6f 6e 7b 2d 63 7d -o}.and.@option{-S}..@option{-c}
34be0 20 68 61 73 20 6e 6f 20 65 66 66 65 63 74 20 77 68 65 6e 20 74 65 73 74 69 6e 67 20 6f 72 20 6c .has.no.effect.when.testing.or.l
34c00 69 73 74 69 6e 67 2e 0a 0a 40 69 74 65 6d 20 2d 64 0a 40 69 74 65 6d 78 20 2d 2d 64 65 63 6f 6d isting...@item.-d.@itemx.--decom
34c20 70 72 65 73 73 0a 44 65 63 6f 6d 70 72 65 73 73 20 74 68 65 20 66 69 6c 65 73 20 73 70 65 63 69 press.Decompress.the.files.speci
34c40 66 69 65 64 2e 20 54 68 65 20 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 68 65 20 66 69 6c 65 73 fied..The.integrity.of.the.files
34c60 20 73 70 65 63 69 66 69 65 64 20 69 73 0a 63 68 65 63 6b 65 64 2e 20 49 66 20 61 20 66 69 6c 65 .specified.is.checked..If.a.file
34c80 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2c 20 63 61 6e 27 74 20 62 65 20 6f 70 65 6e 65 64 .does.not.exist,.can't.be.opened
34ca0 2c 20 6f 72 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 66 69 6c 65 0a 61 6c 72 65 61 64 ,.or.the.destination.file.alread
34cc0 79 20 65 78 69 73 74 73 20 61 6e 64 20 40 6f 70 74 69 6f 6e 7b 2d 2d 66 6f 72 63 65 7d 20 68 61 y.exists.and.@option{--force}.ha
34ce0 73 20 6e 6f 74 20 62 65 65 6e 20 73 70 65 63 69 66 69 65 64 2c 20 6c 7a 69 70 20 63 6f 6e 74 69 s.not.been.specified,.lzip.conti
34d00 6e 75 65 73 0a 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 nues.decompressing.the.rest.of.t
34d20 68 65 20 66 69 6c 65 73 20 61 6e 64 20 65 78 69 74 73 20 77 69 74 68 20 65 72 72 6f 72 20 73 74 he.files.and.exits.with.error.st
34d40 61 74 75 73 20 31 2e 20 49 66 20 61 20 66 69 6c 65 0a 66 61 69 6c 73 20 74 6f 20 64 65 63 6f 6d atus.1..If.a.file.fails.to.decom
34d60 70 72 65 73 73 2c 20 6f 72 20 69 73 20 61 20 74 65 72 6d 69 6e 61 6c 2c 20 6c 7a 69 70 20 65 78 press,.or.is.a.terminal,.lzip.ex
34d80 69 74 73 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 77 69 74 68 20 65 72 72 6f 72 0a 73 74 61 74 75 its.immediately.with.error.statu
34da0 73 20 32 20 77 69 74 68 6f 75 74 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 74 68 65 20 72 65 s.2.without.decompressing.the.re
34dc0 73 74 20 6f 66 20 74 68 65 20 66 69 6c 65 73 2e 20 41 20 74 65 72 6d 69 6e 61 6c 20 69 73 0a 63 st.of.the.files..A.terminal.is.c
34de0 6f 6e 73 69 64 65 72 65 64 20 61 6e 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 2c 20 onsidered.an.uncompressed.file,.
34e00 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 69 6e 76 61 6c 69 64 2e 20 41 20 6d 75 6c 74 69 6d 65 and.therefore.invalid..A.multime
34e20 6d 62 65 72 20 66 69 6c 65 0a 77 69 74 68 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 65 6d 70 74 79 mber.file.with.one.or.more.empty
34e40 20 6d 65 6d 62 65 72 73 20 69 73 20 61 63 63 65 70 74 65 64 20 69 66 20 72 65 64 69 72 65 63 74 .members.is.accepted.if.redirect
34e60 65 64 20 74 6f 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2e 0a 0a 40 69 74 65 6d 20 2d 66 0a ed.to.standard.input...@item.-f.
34e80 40 69 74 65 6d 78 20 2d 2d 66 6f 72 63 65 0a 46 6f 72 63 65 20 6f 76 65 72 77 72 69 74 65 20 6f @itemx.--force.Force.overwrite.o
34ea0 66 20 6f 75 74 70 75 74 20 66 69 6c 65 73 2e 0a 0a 40 69 74 65 6d 20 2d 46 0a 40 69 74 65 6d 78 f.output.files...@item.-F.@itemx
34ec0 20 2d 2d 72 65 63 6f 6d 70 72 65 73 73 0a 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 .--recompress.When.compressing,.
34ee0 66 6f 72 63 65 20 72 65 2d 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 66 20 66 69 6c 65 73 20 77 68 force.re-compression.of.files.wh
34f00 6f 73 65 20 6e 61 6d 65 20 61 6c 72 65 61 64 79 20 68 61 73 0a 74 68 65 20 40 66 69 6c 65 7b 2e ose.name.already.has.the.@file{.
34f20 6c 7a 7d 20 6f 72 20 40 66 69 6c 65 7b 2e 74 6c 7a 7d 20 73 75 66 66 69 78 2e 0a 0a 40 69 74 65 lz}.or.@file{.tlz}.suffix...@ite
34f40 6d 20 2d 6b 0a 40 69 74 65 6d 78 20 2d 2d 6b 65 65 70 0a 4b 65 65 70 20 28 64 6f 6e 27 74 20 64 m.-k.@itemx.--keep.Keep.(don't.d
34f60 65 6c 65 74 65 29 20 69 6e 70 75 74 20 66 69 6c 65 73 20 64 75 72 69 6e 67 20 63 6f 6d 70 72 65 elete).input.files.during.compre
34f80 73 73 69 6f 6e 20 6f 72 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0a 0a 40 69 74 65 6d 20 2d ssion.or.decompression...@item.-
34fa0 6c 0a 40 69 74 65 6d 78 20 2d 2d 6c 69 73 74 0a 50 72 69 6e 74 20 74 68 65 20 75 6e 63 6f 6d 70 l.@itemx.--list.Print.the.uncomp
34fc0 72 65 73 73 65 64 20 73 69 7a 65 2c 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 2c 20 61 6e ressed.size,.compressed.size,.an
34fe0 64 20 70 65 72 63 65 6e 74 61 67 65 20 73 61 76 65 64 20 6f 66 20 74 68 65 0a 66 69 6c 65 73 20 d.percentage.saved.of.the.files.
35000 73 70 65 63 69 66 69 65 64 2e 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 20 61 72 65 20 69 67 6e specified..Trailing.data.are.ign
35020 6f 72 65 64 2e 20 54 68 65 20 76 61 6c 75 65 73 20 70 72 6f 64 75 63 65 64 20 61 72 65 20 63 6f ored..The.values.produced.are.co
35040 72 72 65 63 74 0a 65 76 65 6e 20 66 6f 72 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 rrect.even.for.multimember.files
35060 2e 20 49 66 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 65 20 66 69 6c 65 20 69 73 20 67 69 76 65 6e ..If.more.than.one.file.is.given
35080 2c 20 61 20 66 69 6e 61 6c 20 6c 69 6e 65 0a 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 63 75 ,.a.final.line.containing.the.cu
350a0 6d 75 6c 61 74 69 76 65 20 73 69 7a 65 73 20 69 73 20 70 72 69 6e 74 65 64 2e 20 57 69 74 68 20 mulative.sizes.is.printed..With.
350c0 40 6f 70 74 69 6f 6e 7b 2d 76 7d 2c 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 0a 73 69 7a 65 @option{-v},.the.dictionary.size
350e0 2c 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6d 65 6d 62 65 72 73 20 69 6e 20 74 68 65 20 66 ,.the.number.of.members.in.the.f
35100 69 6c 65 2c 20 61 6e 64 20 74 68 65 20 61 6d 6f 75 6e 74 20 6f 66 20 74 72 61 69 6c 69 6e 67 20 ile,.and.the.amount.of.trailing.
35120 64 61 74 61 20 28 69 66 0a 61 6e 79 29 20 61 72 65 20 61 6c 73 6f 20 70 72 69 6e 74 65 64 2e 20 data.(if.any).are.also.printed..
35140 57 69 74 68 20 40 6f 70 74 69 6f 6e 7b 2d 76 76 7d 2c 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 73 With.@option{-vv},.the.positions
35160 20 61 6e 64 20 73 69 7a 65 73 20 6f 66 20 65 61 63 68 0a 6d 65 6d 62 65 72 20 69 6e 20 6d 75 6c .and.sizes.of.each.member.in.mul
35180 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 20 61 72 65 20 61 6c 73 6f 20 70 72 69 6e 74 65 64 2e timember.files.are.also.printed.
351a0 20 41 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 20 77 69 74 68 20 6f 6e 65 20 6f 72 0a .A.multimember.file.with.one.or.
351c0 6d 6f 72 65 20 65 6d 70 74 79 20 6d 65 6d 62 65 72 73 20 69 73 20 61 63 63 65 70 74 65 64 20 69 more.empty.members.is.accepted.i
351e0 66 20 72 65 64 69 72 65 63 74 65 64 20 74 6f 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2e 0a f.redirected.to.standard.input..
35200 0a 49 66 20 61 6e 79 20 66 69 6c 65 20 69 73 20 64 61 6d 61 67 65 64 2c 20 64 6f 65 73 20 6e 6f .If.any.file.is.damaged,.does.no
35220 74 20 65 78 69 73 74 2c 20 63 61 6e 27 74 20 62 65 20 6f 70 65 6e 65 64 2c 20 6f 72 20 69 73 20 t.exist,.can't.be.opened,.or.is.
35240 6e 6f 74 20 72 65 67 75 6c 61 72 2c 0a 74 68 65 20 66 69 6e 61 6c 20 65 78 69 74 20 73 74 61 74 not.regular,.the.final.exit.stat
35260 75 73 20 69 73 20 40 77 7b 3e 20 30 7d 2e 20 40 6f 70 74 69 6f 6e 7b 2d 6c 71 7d 20 63 61 6e 20 us.is.@w{>.0}..@option{-lq}.can.
35280 62 65 20 75 73 65 64 20 74 6f 20 63 68 65 63 6b 20 71 75 69 63 6b 6c 79 0a 28 77 69 74 68 6f 75 be.used.to.check.quickly.(withou
352a0 74 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 29 20 74 68 65 20 73 74 72 75 63 74 75 72 61 6c 20 t.decompressing).the.structural.
352c0 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 68 65 20 66 69 6c 65 73 20 73 70 65 63 69 66 69 65 64 integrity.of.the.files.specified
352e0 2e 0a 28 55 73 65 20 40 6f 70 74 69 6f 6e 7b 2d 2d 74 65 73 74 7d 20 74 6f 20 63 68 65 63 6b 20 ..(Use.@option{--test}.to.check.
35300 74 68 65 20 64 61 74 61 20 69 6e 74 65 67 72 69 74 79 29 2e 20 40 6f 70 74 69 6f 6e 7b 2d 61 6c the.data.integrity)..@option{-al
35320 71 7d 0a 61 64 64 69 74 69 6f 6e 61 6c 6c 79 20 63 68 65 63 6b 73 20 74 68 61 74 20 6e 6f 6e 65 q}.additionally.checks.that.none
35340 20 6f 66 20 74 68 65 20 66 69 6c 65 73 20 73 70 65 63 69 66 69 65 64 20 63 6f 6e 74 61 69 6e 20 .of.the.files.specified.contain.
35360 74 72 61 69 6c 69 6e 67 20 64 61 74 61 2e 0a 0a 40 69 74 65 6d 20 2d 6d 20 40 76 61 72 7b 62 79 trailing.data...@item.-m.@var{by
35380 74 65 73 7d 0a 40 69 74 65 6d 78 20 2d 2d 6d 61 74 63 68 2d 6c 65 6e 67 74 68 3d 40 76 61 72 7b tes}.@itemx.--match-length=@var{
353a0 62 79 74 65 73 7d 0a 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 73 65 74 20 74 68 65 bytes}.When.compressing,.set.the
353c0 20 6d 61 74 63 68 20 6c 65 6e 67 74 68 20 6c 69 6d 69 74 20 69 6e 20 62 79 74 65 73 2e 20 41 66 .match.length.limit.in.bytes..Af
353e0 74 65 72 20 61 20 6d 61 74 63 68 20 74 68 69 73 0a 6c 6f 6e 67 20 69 73 20 66 6f 75 6e 64 2c 20 ter.a.match.this.long.is.found,.
35400 74 68 65 20 73 65 61 72 63 68 20 69 73 20 66 69 6e 69 73 68 65 64 2e 20 56 61 6c 69 64 20 76 61 the.search.is.finished..Valid.va
35420 6c 75 65 73 20 72 61 6e 67 65 20 66 72 6f 6d 20 35 20 74 6f 20 32 37 33 2e 0a 4c 61 72 67 65 72 lues.range.from.5.to.273..Larger
35440 20 76 61 6c 75 65 73 20 75 73 75 61 6c 6c 79 20 67 69 76 65 20 62 65 74 74 65 72 20 63 6f 6d 70 .values.usually.give.better.comp
35460 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 73 20 62 75 74 20 6c 6f 6e 67 65 72 20 63 6f 6d 70 72 65 ression.ratios.but.longer.compre
35480 73 73 69 6f 6e 0a 74 69 6d 65 73 2e 20 41 20 6d 61 74 63 68 20 69 73 20 61 20 4c 65 6d 70 65 6c ssion.times..A.match.is.a.Lempel
354a0 2d 5a 69 76 20 62 61 63 6b 2d 72 65 66 65 72 65 6e 63 65 20 63 6f 64 65 64 20 61 73 20 61 20 64 -Ziv.back-reference.coded.as.a.d
354c0 69 73 74 61 6e 63 65 2d 6c 65 6e 67 74 68 0a 70 61 69 72 2e 0a 0a 40 69 74 65 6d 20 2d 6f 20 40 istance-length.pair...@item.-o.@
354e0 76 61 72 7b 66 69 6c 65 7d 0a 40 69 74 65 6d 78 20 2d 2d 6f 75 74 70 75 74 3d 40 76 61 72 7b 66 var{file}.@itemx.--output=@var{f
35500 69 6c 65 7d 0a 49 66 20 40 6f 70 74 69 6f 6e 7b 2d 63 7d 20 68 61 73 20 6e 6f 74 20 62 65 65 6e ile}.If.@option{-c}.has.not.been
35520 20 61 6c 73 6f 20 73 70 65 63 69 66 69 65 64 2c 20 77 72 69 74 65 20 74 68 65 20 28 64 65 29 63 .also.specified,.write.the.(de)c
35540 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 0a 74 6f 20 40 76 61 72 7b 66 69 6c 65 7d 2c 20 ompressed.output.to.@var{file},.
35560 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 72 65 61 74 69 6e 67 20 61 6e 79 20 6d 69 73 73 69 automatically.creating.any.missi
35580 6e 67 20 70 61 72 65 6e 74 20 64 69 72 65 63 74 6f 72 69 65 73 3b 20 6b 65 65 70 0a 69 6e 70 75 ng.parent.directories;.keep.inpu
355a0 74 20 66 69 6c 65 73 20 75 6e 63 68 61 6e 67 65 64 2e 20 49 66 20 63 6f 6d 70 72 65 73 73 69 6e t.files.unchanged..If.compressin
355c0 67 20 73 65 76 65 72 61 6c 20 66 69 6c 65 73 2c 20 65 61 63 68 20 66 69 6c 65 20 69 73 20 63 6f g.several.files,.each.file.is.co
355e0 6d 70 72 65 73 73 65 64 0a 69 6e 64 65 70 65 6e 64 65 6e 74 6c 79 2e 20 28 54 68 65 20 6f 75 74 mpressed.independently..(The.out
35600 70 75 74 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 61 20 73 65 71 75 65 6e 63 65 20 6f 66 20 69 6e put.consists.of.a.sequence.of.in
35620 64 65 70 65 6e 64 65 6e 74 6c 79 0a 63 6f 6d 70 72 65 73 73 65 64 20 6d 65 6d 62 65 72 73 29 2e dependently.compressed.members).
35640 20 54 68 69 73 20 6f 70 74 69 6f 6e 20 28 6f 72 20 40 6f 70 74 69 6f 6e 7b 2d 63 7d 29 20 69 73 .This.option.(or.@option{-c}).is
35660 20 6e 65 65 64 65 64 20 77 68 65 6e 20 72 65 61 64 69 6e 67 0a 66 72 6f 6d 20 61 20 6e 61 6d 65 .needed.when.reading.from.a.name
35680 64 20 70 69 70 65 20 28 66 69 66 6f 29 20 6f 72 20 66 72 6f 6d 20 61 20 64 65 76 69 63 65 2e 20 d.pipe.(fifo).or.from.a.device..
356a0 40 77 7b 40 6f 70 74 69 6f 6e 7b 2d 6f 20 2d 7d 7d 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 0a @w{@option{-o.-}}.is.equivalent.
356c0 74 6f 20 40 6f 70 74 69 6f 6e 7b 2d 63 7d 2e 20 40 6f 70 74 69 6f 6e 7b 2d 6f 7d 20 68 61 73 20 to.@option{-c}..@option{-o}.has.
356e0 6e 6f 20 65 66 66 65 63 74 20 77 68 65 6e 20 74 65 73 74 69 6e 67 20 6f 72 20 6c 69 73 74 69 6e no.effect.when.testing.or.listin
35700 67 2e 0a 0a 49 6e 20 6f 72 64 65 72 20 74 6f 20 6b 65 65 70 20 62 61 63 6b 77 61 72 64 20 63 6f g...In.order.to.keep.backward.co
35720 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 6c 7a 69 70 20 76 65 72 73 69 6f 6e 73 20 70 mpatibility.with.lzip.versions.p
35740 72 69 6f 72 20 74 6f 20 31 2e 32 32 2c 0a 77 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 66 rior.to.1.22,.when.compressing.f
35760 72 6f 6d 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 20 61 6e 64 20 6e 6f 20 6f 74 68 65 72 20 rom.standard.input.and.no.other.
35780 66 69 6c 65 20 6e 61 6d 65 73 20 61 72 65 20 67 69 76 65 6e 2c 20 74 68 65 0a 65 78 74 65 6e 73 file.names.are.given,.the.extens
357a0 69 6f 6e 20 40 66 69 6c 65 7b 2e 6c 7a 7d 20 69 73 20 61 70 70 65 6e 64 65 64 20 74 6f 20 40 76 ion.@file{.lz}.is.appended.to.@v
357c0 61 72 7b 66 69 6c 65 7d 20 75 6e 6c 65 73 73 20 69 74 20 61 6c 72 65 61 64 79 20 65 6e 64 73 20 ar{file}.unless.it.already.ends.
357e0 69 6e 0a 40 66 69 6c 65 7b 2e 6c 7a 7d 20 6f 72 20 40 66 69 6c 65 7b 2e 74 6c 7a 7d 2e 20 54 68 in.@file{.lz}.or.@file{.tlz}..Th
35800 69 73 20 66 65 61 74 75 72 65 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 61 20 is.feature.will.be.removed.in.a.
35820 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 0a 6f 66 20 6c 7a 69 70 2e 20 4d 65 61 6e 77 68 69 6c future.version.of.lzip..Meanwhil
35840 65 2c 20 72 65 64 69 72 65 63 74 69 6f 6e 20 6d 61 79 20 62 65 20 75 73 65 64 20 69 6e 73 74 65 e,.redirection.may.be.used.inste
35860 61 64 20 6f 66 20 40 6f 70 74 69 6f 6e 7b 2d 6f 7d 20 74 6f 20 77 72 69 74 65 0a 74 68 65 20 63 ad.of.@option{-o}.to.write.the.c
35880 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 20 74 6f 20 61 20 66 69 6c 65 20 77 69 74 68 6f ompressed.output.to.a.file.witho
358a0 75 74 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 20 40 66 69 6c 65 7b 2e 6c 7a 7d 20 69 6e 20 69 ut.the.extension.@file{.lz}.in.i
358c0 74 73 0a 6e 61 6d 65 3a 20 40 77 7b 40 73 61 6d 70 7b 6c 7a 69 70 20 3c 20 66 69 6c 65 20 3e 20 ts.name:.@w{@samp{lzip.<.file.>.
358e0 66 6f 6f 7d 7d 2e 0a 0a 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 6e 64 20 73 70 6c foo}}...When.compressing.and.spl
35900 69 74 74 69 6e 67 20 74 68 65 20 6f 75 74 70 75 74 20 69 6e 20 76 6f 6c 75 6d 65 73 2c 20 40 76 itting.the.output.in.volumes,.@v
35920 61 72 7b 66 69 6c 65 7d 20 69 73 20 75 73 65 64 20 61 73 0a 61 20 70 72 65 66 69 78 2c 20 61 6e ar{file}.is.used.as.a.prefix,.an
35940 64 20 73 65 76 65 72 61 6c 20 66 69 6c 65 73 20 6e 61 6d 65 64 20 40 66 69 6c 65 7b 40 76 61 72 d.several.files.named.@file{@var
35960 7b 66 69 6c 65 7d 30 30 30 30 31 2e 6c 7a 7d 2c 0a 40 66 69 6c 65 7b 40 76 61 72 7b 66 69 6c 65 {file}00001.lz},.@file{@var{file
35980 7d 30 30 30 30 32 2e 6c 7a 7d 2c 20 65 74 63 2c 20 61 72 65 20 63 72 65 61 74 65 64 2e 20 49 6e }00002.lz},.etc,.are.created..In
359a0 20 74 68 69 73 20 63 61 73 65 2c 20 6f 6e 6c 79 20 6f 6e 65 20 69 6e 70 75 74 0a 66 69 6c 65 20 .this.case,.only.one.input.file.
359c0 69 73 20 61 6c 6c 6f 77 65 64 2e 0a 0a 40 69 74 65 6d 20 2d 71 0a 40 69 74 65 6d 78 20 2d 2d 71 is.allowed...@item.-q.@itemx.--q
359e0 75 69 65 74 0a 51 75 69 65 74 20 6f 70 65 72 61 74 69 6f 6e 2e 20 53 75 70 70 72 65 73 73 20 61 uiet.Quiet.operation..Suppress.a
35a00 6c 6c 20 6d 65 73 73 61 67 65 73 2e 0a 0a 40 69 74 65 6d 20 2d 73 20 40 76 61 72 7b 62 79 74 65 ll.messages...@item.-s.@var{byte
35a20 73 7d 0a 40 69 74 65 6d 78 20 2d 2d 64 69 63 74 69 6f 6e 61 72 79 2d 73 69 7a 65 3d 40 76 61 72 s}.@itemx.--dictionary-size=@var
35a40 7b 62 79 74 65 73 7d 0a 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 73 65 74 20 74 68 {bytes}.When.compressing,.set.th
35a60 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 20 69 6e 20 62 79 74 65 73 e.dictionary.size.limit.in.bytes
35a80 2e 20 4c 7a 69 70 20 75 73 65 73 20 66 6f 72 0a 65 61 63 68 20 66 69 6c 65 20 74 68 65 20 6c 61 ..Lzip.uses.for.each.file.the.la
35aa0 72 67 65 73 74 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 74 68 61 74 20 64 6f 65 73 20 rgest.dictionary.size.that.does.
35ac0 6e 6f 74 20 65 78 63 65 65 64 20 6e 65 69 74 68 65 72 20 74 68 65 20 66 69 6c 65 0a 73 69 7a 65 not.exceed.neither.the.file.size
35ae0 20 6e 6f 72 20 74 68 69 73 20 6c 69 6d 69 74 2e 20 56 61 6c 69 64 20 76 61 6c 75 65 73 20 72 61 .nor.this.limit..Valid.values.ra
35b00 6e 67 65 20 66 72 6f 6d 20 40 77 7b 34 20 4b 69 42 7d 20 74 6f 20 40 77 7b 35 31 32 20 4d 69 42 nge.from.@w{4.KiB}.to.@w{512.MiB
35b20 7d 2e 0a 56 61 6c 75 65 73 20 31 32 20 74 6f 20 32 39 20 61 72 65 20 69 6e 74 65 72 70 72 65 74 }..Values.12.to.29.are.interpret
35b40 65 64 20 61 73 20 70 6f 77 65 72 73 20 6f 66 20 74 77 6f 2c 20 6d 65 61 6e 69 6e 67 20 32 5e 31 ed.as.powers.of.two,.meaning.2^1
35b60 32 20 74 6f 20 32 5e 32 39 0a 62 79 74 65 73 2e 20 44 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 2.to.2^29.bytes..Dictionary.size
35b80 73 20 61 72 65 20 71 75 61 6e 74 69 7a 65 64 20 73 6f 20 74 68 61 74 20 74 68 65 79 20 63 61 6e s.are.quantized.so.that.they.can
35ba0 20 62 65 20 63 6f 64 65 64 20 69 6e 20 6a 75 73 74 20 6f 6e 65 0a 62 79 74 65 20 28 40 70 78 72 .be.coded.in.just.one.byte.(@pxr
35bc0 65 66 7b 63 6f 64 65 64 2d 64 69 63 74 2d 73 69 7a 65 7d 29 2e 20 49 66 20 74 68 65 20 73 69 7a ef{coded-dict-size})..If.the.siz
35be0 65 20 73 70 65 63 69 66 69 65 64 20 64 6f 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 6f 6e 65 20 6f e.specified.does.not.match.one.o
35c00 66 0a 74 68 65 20 76 61 6c 69 64 20 73 69 7a 65 73 2c 20 69 74 20 69 73 20 72 6f 75 6e 64 65 64 f.the.valid.sizes,.it.is.rounded
35c20 20 75 70 77 61 72 64 73 20 62 79 20 61 64 64 69 6e 67 20 75 70 20 74 6f 20 40 77 7b 28 40 76 61 .upwards.by.adding.up.to.@w{(@va
35c40 72 7b 62 79 74 65 73 7d 20 2f 20 38 29 7d 0a 74 6f 20 69 74 2e 0a 0a 46 6f 72 20 6d 61 78 69 6d r{bytes}./.8)}.to.it...For.maxim
35c60 75 6d 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 79 6f 75 20 73 68 6f 75 6c 64 20 75 73 65 20 61 20 um.compression.you.should.use.a.
35c80 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 20 61 73 20 6c 61 72 67 65 0a 61 dictionary.size.limit.as.large.a
35ca0 73 20 70 6f 73 73 69 62 6c 65 2c 20 62 75 74 20 6b 65 65 70 20 69 6e 20 6d 69 6e 64 20 74 68 61 s.possible,.but.keep.in.mind.tha
35cc0 74 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6d 65 6d 6f 72 79 20 72 65 71 75 69 t.the.decompression.memory.requi
35ce0 72 65 6d 65 6e 74 0a 69 73 20 61 66 66 65 63 74 65 64 20 61 74 20 63 6f 6d 70 72 65 73 73 69 6f rement.is.affected.at.compressio
35d00 6e 20 74 69 6d 65 20 62 79 20 74 68 65 20 63 68 6f 69 63 65 20 6f 66 20 64 69 63 74 69 6f 6e 61 n.time.by.the.choice.of.dictiona
35d20 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 2e 0a 0a 40 69 74 65 6d 20 2d 53 20 40 76 61 72 7b 62 79 ry.size.limit...@item.-S.@var{by
35d40 74 65 73 7d 0a 40 69 74 65 6d 78 20 2d 2d 76 6f 6c 75 6d 65 2d 73 69 7a 65 3d 40 76 61 72 7b 62 tes}.@itemx.--volume-size=@var{b
35d60 79 74 65 73 7d 0a 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 61 6e 64 20 40 6f 70 74 ytes}.When.compressing,.and.@opt
35d80 69 6f 6e 7b 2d 63 7d 20 68 61 73 20 6e 6f 74 20 62 65 65 6e 20 61 6c 73 6f 20 73 70 65 63 69 66 ion{-c}.has.not.been.also.specif
35da0 69 65 64 2c 20 73 70 6c 69 74 20 74 68 65 0a 63 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 ied,.split.the.compressed.output
35dc0 20 69 6e 74 6f 20 73 65 76 65 72 61 6c 20 76 6f 6c 75 6d 65 20 66 69 6c 65 73 20 77 69 74 68 20 .into.several.volume.files.with.
35de0 6e 61 6d 65 73 0a 40 66 69 6c 65 7b 6f 72 69 67 69 6e 61 6c 5f 6e 61 6d 65 30 30 30 30 31 2e 6c names.@file{original_name00001.l
35e00 7a 7d 2c 20 40 66 69 6c 65 7b 6f 72 69 67 69 6e 61 6c 5f 6e 61 6d 65 30 30 30 30 32 2e 6c 7a 7d z},.@file{original_name00002.lz}
35e20 2c 20 65 74 63 2c 20 61 6e 64 20 73 65 74 20 74 68 65 0a 76 6f 6c 75 6d 65 20 73 69 7a 65 20 6c ,.etc,.and.set.the.volume.size.l
35e40 69 6d 69 74 20 74 6f 20 40 76 61 72 7b 62 79 74 65 73 7d 2e 20 49 6e 70 75 74 20 66 69 6c 65 73 imit.to.@var{bytes}..Input.files
35e60 20 61 72 65 20 6b 65 70 74 20 75 6e 63 68 61 6e 67 65 64 2e 20 45 61 63 68 0a 76 6f 6c 75 6d 65 .are.kept.unchanged..Each.volume
35e80 20 69 73 20 61 20 63 6f 6d 70 6c 65 74 65 2c 20 6d 61 79 62 65 20 6d 75 6c 74 69 6d 65 6d 62 65 .is.a.complete,.maybe.multimembe
35ea0 72 2c 20 6c 7a 69 70 20 66 69 6c 65 2e 20 41 20 73 6d 61 6c 6c 20 76 6f 6c 75 6d 65 20 73 69 7a r,.lzip.file..A.small.volume.siz
35ec0 65 20 6d 61 79 0a 64 65 67 72 61 64 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 2c e.may.degrade.compression.ratio,
35ee0 20 73 6f 20 75 73 65 20 69 74 20 6f 6e 6c 79 20 77 68 65 6e 20 6e 65 65 64 65 64 2e 20 56 61 6c .so.use.it.only.when.needed..Val
35f00 69 64 20 76 61 6c 75 65 73 20 72 61 6e 67 65 0a 66 72 6f 6d 20 40 77 7b 31 30 30 20 6b 42 7d 20 id.values.range.from.@w{100.kB}.
35f20 74 6f 20 40 77 7b 34 20 45 69 42 7d 2e 0a 0a 40 69 74 65 6d 20 2d 74 0a 40 69 74 65 6d 78 20 2d to.@w{4.EiB}...@item.-t.@itemx.-
35f40 2d 74 65 73 74 0a 43 68 65 63 6b 20 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 68 65 20 66 69 6c -test.Check.integrity.of.the.fil
35f60 65 73 20 73 70 65 63 69 66 69 65 64 2c 20 62 75 74 20 64 6f 6e 27 74 20 64 65 63 6f 6d 70 72 65 es.specified,.but.don't.decompre
35f80 73 73 20 74 68 65 6d 2e 20 54 68 69 73 0a 72 65 61 6c 6c 79 20 70 65 72 66 6f 72 6d 73 20 61 20 ss.them..This.really.performs.a.
35fa0 74 72 69 61 6c 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 61 6e 64 20 74 68 72 6f 77 73 20 61 trial.decompression.and.throws.a
35fc0 77 61 79 20 74 68 65 20 72 65 73 75 6c 74 2e 20 55 73 65 20 69 74 0a 74 6f 67 65 74 68 65 72 20 way.the.result..Use.it.together.
35fe0 77 69 74 68 20 40 6f 70 74 69 6f 6e 7b 2d 76 7d 20 74 6f 20 73 65 65 20 69 6e 66 6f 72 6d 61 74 with.@option{-v}.to.see.informat
36000 69 6f 6e 20 61 62 6f 75 74 20 74 68 65 20 66 69 6c 65 73 2e 20 49 66 20 61 20 66 69 6c 65 0a 66 ion.about.the.files..If.a.file.f
36020 61 69 6c 73 20 74 68 65 20 74 65 73 74 2c 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2c 20 63 ails.the.test,.does.not.exist,.c
36040 61 6e 27 74 20 62 65 20 6f 70 65 6e 65 64 2c 20 6f 72 20 69 73 20 61 20 74 65 72 6d 69 6e 61 6c an't.be.opened,.or.is.a.terminal
36060 2c 20 6c 7a 69 70 0a 63 6f 6e 74 69 6e 75 65 73 20 74 65 73 74 69 6e 67 20 74 68 65 20 72 65 73 ,.lzip.continues.testing.the.res
36080 74 20 6f 66 20 74 68 65 20 66 69 6c 65 73 2e 20 41 20 66 69 6e 61 6c 20 64 69 61 67 6e 6f 73 74 t.of.the.files..A.final.diagnost
360a0 69 63 20 69 73 20 73 68 6f 77 6e 20 61 74 0a 76 65 72 62 6f 73 69 74 79 20 6c 65 76 65 6c 20 31 ic.is.shown.at.verbosity.level.1
360c0 20 6f 72 20 68 69 67 68 65 72 20 69 66 20 61 6e 79 20 66 69 6c 65 20 66 61 69 6c 73 20 74 68 65 .or.higher.if.any.file.fails.the
360e0 20 74 65 73 74 20 77 68 65 6e 20 74 65 73 74 69 6e 67 20 6d 75 6c 74 69 70 6c 65 0a 66 69 6c 65 .test.when.testing.multiple.file
36100 73 2e 20 41 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 20 77 69 74 68 20 6f 6e 65 20 6f s..A.multimember.file.with.one.o
36120 72 20 6d 6f 72 65 20 65 6d 70 74 79 20 6d 65 6d 62 65 72 73 20 69 73 20 61 63 63 65 70 74 65 64 r.more.empty.members.is.accepted
36140 20 69 66 0a 72 65 64 69 72 65 63 74 65 64 20 74 6f 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 .if.redirected.to.standard.input
36160 2e 0a 0a 40 69 74 65 6d 20 2d 76 0a 40 69 74 65 6d 78 20 2d 2d 76 65 72 62 6f 73 65 0a 56 65 72 ...@item.-v.@itemx.--verbose.Ver
36180 62 6f 73 65 20 6d 6f 64 65 2e 40 2a 0a 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 73 bose.mode.@*.When.compressing,.s
361a0 68 6f 77 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 61 6e 64 20 73 69 how.the.compression.ratio.and.si
361c0 7a 65 20 66 6f 72 20 65 61 63 68 20 66 69 6c 65 20 70 72 6f 63 65 73 73 65 64 2e 40 2a 0a 57 68 ze.for.each.file.processed.@*.Wh
361e0 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 6f 72 20 74 65 73 74 69 6e 67 2c 20 66 75 72 en.decompressing.or.testing,.fur
36200 74 68 65 72 20 2d 76 27 73 20 28 75 70 20 74 6f 20 34 29 20 69 6e 63 72 65 61 73 65 20 74 68 65 ther.-v's.(up.to.4).increase.the
36220 20 76 65 72 62 6f 73 69 74 79 0a 6c 65 76 65 6c 2c 20 73 68 6f 77 69 6e 67 20 73 74 61 74 75 73 .verbosity.level,.showing.status
36240 2c 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 2c 20 64 69 63 74 69 6f 6e 61 72 79 20 ,.compression.ratio,.dictionary.
36260 73 69 7a 65 2c 20 74 72 61 69 6c 65 72 20 63 6f 6e 74 65 6e 74 73 0a 28 43 52 43 2c 20 64 61 74 size,.trailer.contents.(CRC,.dat
36280 61 20 73 69 7a 65 2c 20 6d 65 6d 62 65 72 20 73 69 7a 65 29 2c 20 61 6e 64 20 75 70 20 74 6f 20 a.size,.member.size),.and.up.to.
362a0 36 20 62 79 74 65 73 20 6f 66 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 28 69 66 20 61 6e 79 6.bytes.of.trailing.data.(if.any
362c0 29 0a 62 6f 74 68 20 69 6e 20 68 65 78 61 64 65 63 69 6d 61 6c 20 61 6e 64 20 61 73 20 61 20 73 ).both.in.hexadecimal.and.as.a.s
362e0 74 72 69 6e 67 20 6f 66 20 70 72 69 6e 74 61 62 6c 65 20 41 53 43 49 49 20 63 68 61 72 61 63 74 tring.of.printable.ASCII.charact
36300 65 72 73 2e 40 2a 0a 54 77 6f 20 6f 72 20 6d 6f 72 65 20 40 6f 70 74 69 6f 6e 7b 2d 76 7d 20 6f ers.@*.Two.or.more.@option{-v}.o
36320 70 74 69 6f 6e 73 20 73 68 6f 77 20 74 68 65 20 70 72 6f 67 72 65 73 73 20 6f 66 20 28 64 65 29 ptions.show.the.progress.of.(de)
36340 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0a 0a 40 69 74 65 6d 20 2d 30 20 2e 2e 20 2d 39 0a 43 6f 6d compression...@item.-0....-9.Com
36360 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 2e 20 53 65 74 20 74 68 65 20 63 6f 6d 70 72 65 73 73 pression.level..Set.the.compress
36380 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 20 28 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 ion.parameters.(dictionary.size.
363a0 61 6e 64 0a 6d 61 74 63 68 20 6c 65 6e 67 74 68 20 6c 69 6d 69 74 29 20 61 73 20 73 68 6f 77 6e and.match.length.limit).as.shown
363c0 20 69 6e 20 74 68 65 20 74 61 62 6c 65 20 62 65 6c 6f 77 2e 20 54 68 65 20 64 65 66 61 75 6c 74 .in.the.table.below..The.default
363e0 20 63 6f 6d 70 72 65 73 73 69 6f 6e 0a 6c 65 76 65 6c 20 69 73 20 40 6f 70 74 69 6f 6e 7b 2d 36 .compression.level.is.@option{-6
36400 7d 2c 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 40 77 7b 40 6f 70 74 69 6f 6e 7b 2d 73 38 4d },.equivalent.to.@w{@option{-s8M
36420 69 42 20 2d 6d 33 36 7d 7d 2e 20 4e 6f 74 65 20 74 68 61 74 0a 40 6f 70 74 69 6f 6e 7b 2d 39 7d iB.-m36}}..Note.that.@option{-9}
36440 20 63 61 6e 20 62 65 20 6d 75 63 68 20 73 6c 6f 77 65 72 20 74 68 61 6e 20 40 6f 70 74 69 6f 6e .can.be.much.slower.than.@option
36460 7b 2d 30 7d 2e 20 54 68 65 73 65 20 6f 70 74 69 6f 6e 73 20 68 61 76 65 20 6e 6f 0a 65 66 66 65 {-0}..These.options.have.no.effe
36480 63 74 20 77 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 74 65 73 74 69 6e 67 2c 20 ct.when.decompressing,.testing,.
364a0 6f 72 20 6c 69 73 74 69 6e 67 2e 0a 0a 54 68 65 20 62 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 70 or.listing...The.bidimensional.p
364c0 61 72 61 6d 65 74 65 72 20 73 70 61 63 65 20 6f 66 20 4c 5a 4d 41 20 63 61 6e 27 74 20 62 65 20 arameter.space.of.LZMA.can't.be.
364e0 6d 61 70 70 65 64 20 74 6f 20 61 20 6c 69 6e 65 61 72 20 73 63 61 6c 65 0a 6f 70 74 69 6d 61 6c mapped.to.a.linear.scale.optimal
36500 20 66 6f 72 20 61 6c 6c 20 66 69 6c 65 73 2e 20 49 66 20 79 6f 75 72 20 66 69 6c 65 73 20 61 72 .for.all.files..If.your.files.ar
36520 65 20 6c 61 72 67 65 2c 20 76 65 72 79 20 72 65 70 65 74 69 74 69 76 65 2c 20 65 74 63 2c 20 79 e.large,.very.repetitive,.etc,.y
36540 6f 75 0a 6d 61 79 20 6e 65 65 64 20 74 6f 20 75 73 65 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 40 ou.may.need.to.use.the.options.@
36560 6f 70 74 69 6f 6e 7b 2d 2d 64 69 63 74 69 6f 6e 61 72 79 2d 73 69 7a 65 7d 20 61 6e 64 0a 40 6f option{--dictionary-size}.and.@o
36580 70 74 69 6f 6e 7b 2d 2d 6d 61 74 63 68 2d 6c 65 6e 67 74 68 7d 20 64 69 72 65 63 74 6c 79 20 74 ption{--match-length}.directly.t
365a0 6f 20 61 63 68 69 65 76 65 20 6f 70 74 69 6d 61 6c 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 0a 0a o.achieve.optimal.performance...
365c0 49 66 20 73 65 76 65 72 61 6c 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 73 20 6f 72 If.several.compression.levels.or
365e0 20 40 6f 70 74 69 6f 6e 7b 2d 73 7d 20 6f 72 20 40 6f 70 74 69 6f 6e 7b 2d 6d 7d 20 6f 70 74 69 .@option{-s}.or.@option{-m}.opti
36600 6f 6e 73 20 61 72 65 0a 67 69 76 65 6e 2c 20 74 68 65 20 6c 61 73 74 20 73 65 74 74 69 6e 67 20 ons.are.given,.the.last.setting.
36620 69 73 20 75 73 65 64 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 20 40 77 7b 40 6f 70 74 69 6f 6e 7b is.used..For.example.@w{@option{
36640 2d 39 20 2d 73 36 34 4d 69 42 7d 7d 20 69 73 0a 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 40 77 -9.-s64MiB}}.is.equivalent.to.@w
36660 7b 40 6f 70 74 69 6f 6e 7b 2d 73 36 34 4d 69 42 20 2d 6d 32 37 33 7d 7d 0a 0a 40 6d 75 6c 74 69 {@option{-s64MiB.-m273}}..@multi
36680 74 61 62 6c 65 20 7b 4c 65 76 65 6c 7d 20 7b 44 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 28 table.{Level}.{Dictionary.size.(
366a0 2d 73 29 7d 20 7b 4d 61 74 63 68 20 6c 65 6e 67 74 68 20 6c 69 6d 69 74 20 28 2d 6d 29 7d 0a 40 -s)}.{Match.length.limit.(-m)}.@
366c0 68 65 61 64 69 74 65 6d 20 4c 65 76 65 6c 20 40 74 61 62 20 44 69 63 74 69 6f 6e 61 72 79 20 73 headitem.Level.@tab.Dictionary.s
366e0 69 7a 65 20 28 2d 73 29 20 40 74 61 62 20 4d 61 74 63 68 20 6c 65 6e 67 74 68 20 6c 69 6d 69 74 ize.(-s).@tab.Match.length.limit
36700 20 28 2d 6d 29 0a 40 69 74 65 6d 20 2d 30 20 40 74 61 62 20 36 34 20 4b 69 42 20 40 74 61 62 20 .(-m).@item.-0.@tab.64.KiB.@tab.
36720 20 31 36 20 62 79 74 65 73 0a 40 69 74 65 6d 20 2d 31 20 40 74 61 62 20 20 31 20 4d 69 42 20 40 .16.bytes.@item.-1.@tab..1.MiB.@
36740 74 61 62 20 20 20 35 20 62 79 74 65 73 0a 40 69 74 65 6d 20 2d 32 20 40 74 61 62 20 20 31 2e 35 tab...5.bytes.@item.-2.@tab..1.5
36760 20 4d 69 42 20 40 74 61 62 20 20 20 36 20 62 79 74 65 73 0a 40 69 74 65 6d 20 2d 33 20 40 74 61 .MiB.@tab...6.bytes.@item.-3.@ta
36780 62 20 20 32 20 4d 69 42 20 40 74 61 62 20 20 20 38 20 62 79 74 65 73 0a 40 69 74 65 6d 20 2d 34 b..2.MiB.@tab...8.bytes.@item.-4
367a0 20 40 74 61 62 20 20 33 20 4d 69 42 20 40 74 61 62 20 20 31 32 20 62 79 74 65 73 0a 40 69 74 65 .@tab..3.MiB.@tab..12.bytes.@ite
367c0 6d 20 2d 35 20 40 74 61 62 20 20 34 20 4d 69 42 20 40 74 61 62 20 20 32 30 20 62 79 74 65 73 0a m.-5.@tab..4.MiB.@tab..20.bytes.
367e0 40 69 74 65 6d 20 2d 36 20 40 74 61 62 20 20 38 20 4d 69 42 20 40 74 61 62 20 20 33 36 20 62 79 @item.-6.@tab..8.MiB.@tab..36.by
36800 74 65 73 0a 40 69 74 65 6d 20 2d 37 20 40 74 61 62 20 31 36 20 4d 69 42 20 40 74 61 62 20 20 36 tes.@item.-7.@tab.16.MiB.@tab..6
36820 38 20 62 79 74 65 73 0a 40 69 74 65 6d 20 2d 38 20 40 74 61 62 20 32 34 20 4d 69 42 20 40 74 61 8.bytes.@item.-8.@tab.24.MiB.@ta
36840 62 20 31 33 32 20 62 79 74 65 73 0a 40 69 74 65 6d 20 2d 39 20 40 74 61 62 20 33 32 20 4d 69 42 b.132.bytes.@item.-9.@tab.32.MiB
36860 20 40 74 61 62 20 32 37 33 20 62 79 74 65 73 0a 40 65 6e 64 20 6d 75 6c 74 69 74 61 62 6c 65 0a .@tab.273.bytes.@end.multitable.
36880 0a 40 69 74 65 6d 20 2d 2d 66 61 73 74 0a 40 69 74 65 6d 78 20 2d 2d 62 65 73 74 0a 41 6c 69 61 .@item.--fast.@itemx.--best.Alia
368a0 73 65 73 20 66 6f 72 20 47 4e 55 20 67 7a 69 70 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 2e 0a ses.for.GNU.gzip.compatibility..
368c0 0a 40 69 74 65 6d 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 0a 57 68 65 6e 20 64 65 63 .@item.--loose-trailing.When.dec
368e0 6f 6d 70 72 65 73 73 69 6e 67 2c 20 74 65 73 74 69 6e 67 2c 20 6f 72 20 6c 69 73 74 69 6e 67 2c ompressing,.testing,.or.listing,
36900 20 61 6c 6c 6f 77 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 77 68 6f 73 65 20 66 69 72 73 74 .allow.trailing.data.whose.first
36920 0a 62 79 74 65 73 20 61 72 65 20 73 6f 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 6d 61 67 .bytes.are.so.similar.to.the.mag
36940 69 63 20 62 79 74 65 73 20 6f 66 20 61 20 6c 7a 69 70 20 68 65 61 64 65 72 20 74 68 61 74 20 74 ic.bytes.of.a.lzip.header.that.t
36960 68 65 79 20 63 61 6e 0a 62 65 20 63 6f 6e 66 75 73 65 64 20 77 69 74 68 20 61 20 63 6f 72 72 75 hey.can.be.confused.with.a.corru
36980 70 74 20 68 65 61 64 65 72 2e 20 55 73 65 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 69 66 20 61 20 pt.header..Use.this.option.if.a.
369a0 66 69 6c 65 20 74 72 69 67 67 65 72 73 20 61 0a 27 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 27 file.triggers.a.'corrupt.header'
369c0 20 65 72 72 6f 72 20 61 6e 64 20 74 68 65 20 63 61 75 73 65 20 69 73 20 6e 6f 74 20 69 6e 64 65 .error.and.the.cause.is.not.inde
369e0 65 64 20 61 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 2e 0a 0a 40 65 6e 64 20 74 61 62 6c 65 ed.a.corrupt.header...@end.table
36a00 0a 0a 4e 75 6d 62 65 72 73 20 67 69 76 65 6e 20 61 73 20 61 72 67 75 6d 65 6e 74 73 20 74 6f 20 ..Numbers.given.as.arguments.to.
36a20 6f 70 74 69 6f 6e 73 20 6d 61 79 20 62 65 20 65 78 70 72 65 73 73 65 64 20 69 6e 20 64 65 63 69 options.may.be.expressed.in.deci
36a40 6d 61 6c 2c 0a 68 65 78 61 64 65 63 69 6d 61 6c 2c 20 6f 72 20 6f 63 74 61 6c 20 28 75 73 69 6e mal,.hexadecimal,.or.octal.(usin
36a60 67 20 74 68 65 20 73 61 6d 65 20 73 79 6e 74 61 78 20 61 73 20 69 6e 74 65 67 65 72 20 63 6f 6e g.the.same.syntax.as.integer.con
36a80 73 74 61 6e 74 73 20 69 6e 20 43 2b 2b 29 2c 0a 61 6e 64 20 6d 61 79 20 62 65 20 66 6f 6c 6c 6f stants.in.C++),.and.may.be.follo
36aa0 77 65 64 20 62 79 20 61 20 6d 75 6c 74 69 70 6c 69 65 72 20 61 6e 64 20 61 6e 20 6f 70 74 69 6f wed.by.a.multiplier.and.an.optio
36ac0 6e 61 6c 20 40 73 61 6d 70 7b 42 7d 20 66 6f 72 20 22 62 79 74 65 22 2e 0a 0a 54 61 62 6c 65 20 nal.@samp{B}.for."byte"...Table.
36ae0 6f 66 20 53 49 20 61 6e 64 20 62 69 6e 61 72 79 20 70 72 65 66 69 78 65 73 20 28 75 6e 69 74 20 of.SI.and.binary.prefixes.(unit.
36b00 6d 75 6c 74 69 70 6c 69 65 72 73 29 3a 0a 0a 40 6d 75 6c 74 69 74 61 62 6c 65 20 7b 50 72 65 66 multipliers):..@multitable.{Pref
36b20 69 78 7d 20 7b 6b 69 6c 6f 62 79 74 65 20 20 20 28 31 30 5e 33 20 3d 20 31 30 30 30 29 7d 20 7b ix}.{kilobyte...(10^3.=.1000)}.{
36b40 7c 7d 20 7b 50 72 65 66 69 78 7d 20 7b 6b 69 62 69 62 79 74 65 20 20 28 32 5e 31 30 20 3d 20 31 |}.{Prefix}.{kibibyte..(2^10.=.1
36b60 30 32 34 29 7d 0a 40 68 65 61 64 69 74 65 6d 20 50 72 65 66 69 78 20 40 74 61 62 20 56 61 6c 75 024)}.@headitem.Prefix.@tab.Valu
36b80 65 20 20 20 20 20 20 20 20 20 20 20 40 74 61 62 20 7c 20 40 74 61 62 20 50 72 65 66 69 78 20 40 e...........@tab.|.@tab.Prefix.@
36ba0 74 61 62 20 56 61 6c 75 65 0a 40 69 74 65 6d 20 6b 20 40 74 61 62 20 6b 69 6c 6f 62 79 74 65 20 tab.Value.@item.k.@tab.kilobyte.
36bc0 20 20 28 31 30 5e 33 20 3d 20 31 30 30 30 29 20 40 74 61 62 20 7c 20 40 74 61 62 20 4b 69 20 40 ..(10^3.=.1000).@tab.|.@tab.Ki.@
36be0 74 61 62 20 6b 69 62 69 62 79 74 65 20 20 28 32 5e 31 30 20 3d 20 31 30 32 34 29 0a 40 69 74 65 tab.kibibyte..(2^10.=.1024).@ite
36c00 6d 20 4d 20 40 74 61 62 20 6d 65 67 61 62 79 74 65 20 20 20 28 31 30 5e 36 29 20 20 20 20 20 20 m.M.@tab.megabyte...(10^6)......
36c20 20 20 40 74 61 62 20 7c 20 40 74 61 62 20 4d 69 20 40 74 61 62 20 6d 65 62 69 62 79 74 65 20 20 ..@tab.|.@tab.Mi.@tab.mebibyte..
36c40 28 32 5e 32 30 29 0a 40 69 74 65 6d 20 47 20 40 74 61 62 20 67 69 67 61 62 79 74 65 20 20 20 28 (2^20).@item.G.@tab.gigabyte...(
36c60 31 30 5e 39 29 20 20 20 20 20 20 20 20 40 74 61 62 20 7c 20 40 74 61 62 20 47 69 20 40 74 61 62 10^9)........@tab.|.@tab.Gi.@tab
36c80 20 67 69 62 69 62 79 74 65 20 20 28 32 5e 33 30 29 0a 40 69 74 65 6d 20 54 20 40 74 61 62 20 74 .gibibyte..(2^30).@item.T.@tab.t
36ca0 65 72 61 62 79 74 65 20 20 20 28 31 30 5e 31 32 29 20 20 20 20 20 20 20 40 74 61 62 20 7c 20 40 erabyte...(10^12).......@tab.|.@
36cc0 74 61 62 20 54 69 20 40 74 61 62 20 74 65 62 69 62 79 74 65 20 20 28 32 5e 34 30 29 0a 40 69 74 tab.Ti.@tab.tebibyte..(2^40).@it
36ce0 65 6d 20 50 20 40 74 61 62 20 70 65 74 61 62 79 74 65 20 20 20 28 31 30 5e 31 35 29 20 20 20 20 em.P.@tab.petabyte...(10^15)....
36d00 20 20 20 40 74 61 62 20 7c 20 40 74 61 62 20 50 69 20 40 74 61 62 20 70 65 62 69 62 79 74 65 20 ...@tab.|.@tab.Pi.@tab.pebibyte.
36d20 20 28 32 5e 35 30 29 0a 40 69 74 65 6d 20 45 20 40 74 61 62 20 65 78 61 62 79 74 65 20 20 20 20 .(2^50).@item.E.@tab.exabyte....
36d40 28 31 30 5e 31 38 29 20 20 20 20 20 20 20 40 74 61 62 20 7c 20 40 74 61 62 20 45 69 20 40 74 61 (10^18).......@tab.|.@tab.Ei.@ta
36d60 62 20 65 78 62 69 62 79 74 65 20 20 28 32 5e 36 30 29 0a 40 69 74 65 6d 20 5a 20 40 74 61 62 20 b.exbibyte..(2^60).@item.Z.@tab.
36d80 7a 65 74 74 61 62 79 74 65 20 20 28 31 30 5e 32 31 29 20 20 20 20 20 20 20 40 74 61 62 20 7c 20 zettabyte..(10^21).......@tab.|.
36da0 40 74 61 62 20 5a 69 20 40 74 61 62 20 7a 65 62 69 62 79 74 65 20 20 28 32 5e 37 30 29 0a 40 69 @tab.Zi.@tab.zebibyte..(2^70).@i
36dc0 74 65 6d 20 59 20 40 74 61 62 20 79 6f 74 74 61 62 79 74 65 20 20 28 31 30 5e 32 34 29 20 20 20 tem.Y.@tab.yottabyte..(10^24)...
36de0 20 20 20 20 40 74 61 62 20 7c 20 40 74 61 62 20 59 69 20 40 74 61 62 20 79 6f 62 69 62 79 74 65 ....@tab.|.@tab.Yi.@tab.yobibyte
36e00 20 20 28 32 5e 38 30 29 0a 40 69 74 65 6d 20 52 20 40 74 61 62 20 72 6f 6e 6e 61 62 79 74 65 20 ..(2^80).@item.R.@tab.ronnabyte.
36e20 20 28 31 30 5e 32 37 29 20 20 20 20 20 20 20 40 74 61 62 20 7c 20 40 74 61 62 20 52 69 20 40 74 .(10^27).......@tab.|.@tab.Ri.@t
36e40 61 62 20 72 6f 62 69 62 79 74 65 20 20 28 32 5e 39 30 29 0a 40 69 74 65 6d 20 51 20 40 74 61 62 ab.robibyte..(2^90).@item.Q.@tab
36e60 20 71 75 65 74 74 61 62 79 74 65 20 28 31 30 5e 33 30 29 20 20 20 20 20 20 20 40 74 61 62 20 7c .quettabyte.(10^30).......@tab.|
36e80 20 40 74 61 62 20 51 69 20 40 74 61 62 20 71 75 65 62 69 62 79 74 65 20 28 32 5e 31 30 30 29 0a .@tab.Qi.@tab.quebibyte.(2^100).
36ea0 40 65 6e 64 20 6d 75 6c 74 69 74 61 62 6c 65 0a 0a 40 73 70 20 31 0a 45 78 69 74 20 73 74 61 74 @end.multitable..@sp.1.Exit.stat
36ec0 75 73 3a 20 30 20 66 6f 72 20 61 20 6e 6f 72 6d 61 6c 20 65 78 69 74 2c 20 31 20 66 6f 72 20 65 us:.0.for.a.normal.exit,.1.for.e
36ee0 6e 76 69 72 6f 6e 6d 65 6e 74 61 6c 20 70 72 6f 62 6c 65 6d 73 0a 28 66 69 6c 65 20 6e 6f 74 20 nvironmental.problems.(file.not.
36f00 66 6f 75 6e 64 2c 20 69 6e 76 61 6c 69 64 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 6f 70 74 69 found,.invalid.command-line.opti
36f20 6f 6e 73 2c 20 49 2f 4f 20 65 72 72 6f 72 73 2c 20 65 74 63 29 2c 20 32 20 74 6f 0a 69 6e 64 69 ons,.I/O.errors,.etc),.2.to.indi
36f40 63 61 74 65 20 61 20 63 6f 72 72 75 70 74 20 6f 72 20 69 6e 76 61 6c 69 64 20 69 6e 70 75 74 20 cate.a.corrupt.or.invalid.input.
36f60 66 69 6c 65 2c 20 33 20 66 6f 72 20 61 6e 20 69 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 69 73 74 65 file,.3.for.an.internal.consiste
36f80 6e 63 79 0a 65 72 72 6f 72 20 28 65 2e 67 2e 2c 20 62 75 67 29 20 77 68 69 63 68 20 63 61 75 73 ncy.error.(e.g.,.bug).which.caus
36fa0 65 64 20 6c 7a 69 70 20 74 6f 20 70 61 6e 69 63 2e 0a 0a 0a 40 6e 6f 64 65 20 41 72 67 75 6d 65 ed.lzip.to.panic....@node.Argume
36fc0 6e 74 20 73 79 6e 74 61 78 0a 40 63 68 61 70 74 65 72 20 53 79 6e 74 61 78 20 6f 66 20 63 6f 6d nt.syntax.@chapter.Syntax.of.com
36fe0 6d 61 6e 64 2d 6c 69 6e 65 20 61 72 67 75 6d 65 6e 74 73 0a 40 63 69 6e 64 65 78 20 61 72 67 75 mand-line.arguments.@cindex.argu
37000 6d 65 6e 74 20 73 79 6e 74 61 78 0a 0a 50 4f 53 49 58 20 72 65 63 6f 6d 6d 65 6e 64 73 20 74 68 ment.syntax..POSIX.recommends.th
37020 65 73 65 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 66 6f 72 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 ese.conventions.for.command-line
37040 20 61 72 67 75 6d 65 6e 74 73 2e 0a 0a 40 69 74 65 6d 69 7a 65 20 40 62 75 6c 6c 65 74 0a 40 69 .arguments...@itemize.@bullet.@i
37060 74 65 6d 20 41 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 61 72 67 75 6d 65 6e 74 20 69 73 20 61 tem.A.command-line.argument.is.a
37080 6e 20 6f 70 74 69 6f 6e 20 69 66 20 69 74 20 62 65 67 69 6e 73 20 77 69 74 68 20 61 20 68 79 70 n.option.if.it.begins.with.a.hyp
370a0 68 65 6e 0a 28 40 73 61 6d 70 7b 2d 7d 29 2e 0a 0a 40 69 74 65 6d 20 4f 70 74 69 6f 6e 20 6e 61 hen.(@samp{-})...@item.Option.na
370c0 6d 65 73 20 61 72 65 20 73 69 6e 67 6c 65 20 61 6c 70 68 61 6e 75 6d 65 72 69 63 20 63 68 61 72 mes.are.single.alphanumeric.char
370e0 61 63 74 65 72 73 2e 0a 0a 40 69 74 65 6d 20 43 65 72 74 61 69 6e 20 6f 70 74 69 6f 6e 73 20 72 acters...@item.Certain.options.r
37100 65 71 75 69 72 65 20 61 6e 20 61 72 67 75 6d 65 6e 74 2e 0a 0a 40 69 74 65 6d 20 41 6e 20 6f 70 equire.an.argument...@item.An.op
37120 74 69 6f 6e 20 61 6e 64 20 69 74 73 20 61 72 67 75 6d 65 6e 74 20 6d 61 79 20 6f 72 20 6d 61 79 tion.and.its.argument.may.or.may
37140 20 6e 6f 74 20 61 70 70 65 61 72 20 61 73 20 73 65 70 61 72 61 74 65 20 74 6f 6b 65 6e 73 2e 0a .not.appear.as.separate.tokens..
37160 28 49 6e 20 6f 74 68 65 72 20 77 6f 72 64 73 2c 20 74 68 65 20 77 68 69 74 65 73 70 61 63 65 20 (In.other.words,.the.whitespace.
37180 73 65 70 61 72 61 74 69 6e 67 20 74 68 65 6d 20 69 73 20 6f 70 74 69 6f 6e 61 6c 29 2e 0a 54 68 separating.them.is.optional)..Th
371a0 75 73 2c 20 40 77 7b 40 6f 70 74 69 6f 6e 7b 2d 6f 20 66 6f 6f 7d 7d 20 61 6e 64 20 40 6f 70 74 us,.@w{@option{-o.foo}}.and.@opt
371c0 69 6f 6e 7b 2d 6f 66 6f 6f 7d 20 61 72 65 20 65 71 75 69 76 61 6c 65 6e 74 2e 0a 0a 40 69 74 65 ion{-ofoo}.are.equivalent...@ite
371e0 6d 20 4f 6e 65 20 6f 72 20 6d 6f 72 65 20 6f 70 74 69 6f 6e 73 20 77 69 74 68 6f 75 74 20 61 72 m.One.or.more.options.without.ar
37200 67 75 6d 65 6e 74 73 2c 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 74 20 6d 6f 73 74 20 6f 6e 65 guments,.followed.by.at.most.one
37220 20 6f 70 74 69 6f 6e 0a 74 68 61 74 20 74 61 6b 65 73 20 61 6e 20 61 72 67 75 6d 65 6e 74 2c 20 .option.that.takes.an.argument,.
37240 6d 61 79 20 66 6f 6c 6c 6f 77 20 61 20 68 79 70 68 65 6e 20 69 6e 20 61 20 73 69 6e 67 6c 65 20 may.follow.a.hyphen.in.a.single.
37260 74 6f 6b 65 6e 2e 0a 54 68 75 73 2c 20 40 6f 70 74 69 6f 6e 7b 2d 61 62 63 7d 20 69 73 20 65 71 token..Thus,.@option{-abc}.is.eq
37280 75 69 76 61 6c 65 6e 74 20 74 6f 20 40 77 7b 40 6f 70 74 69 6f 6e 7b 2d 61 20 2d 62 20 2d 63 7d uivalent.to.@w{@option{-a.-b.-c}
372a0 7d 2e 0a 0a 40 69 74 65 6d 20 4f 70 74 69 6f 6e 73 20 74 79 70 69 63 61 6c 6c 79 20 70 72 65 63 }...@item.Options.typically.prec
372c0 65 64 65 20 6f 74 68 65 72 20 6e 6f 6e 2d 6f 70 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 73 2e 0a ede.other.non-option.arguments..
372e0 0a 40 69 74 65 6d 20 54 68 65 20 61 72 67 75 6d 65 6e 74 20 40 73 61 6d 70 7b 2d 2d 7d 20 74 65 .@item.The.argument.@samp{--}.te
37300 72 6d 69 6e 61 74 65 73 20 61 6c 6c 20 6f 70 74 69 6f 6e 73 3b 20 61 6e 79 20 66 6f 6c 6c 6f 77 rminates.all.options;.any.follow
37320 69 6e 67 20 61 72 67 75 6d 65 6e 74 73 0a 61 72 65 20 74 72 65 61 74 65 64 20 61 73 20 6e 6f 6e ing.arguments.are.treated.as.non
37340 2d 6f 70 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 73 2c 20 65 76 65 6e 20 69 66 20 74 68 65 79 20 -option.arguments,.even.if.they.
37360 62 65 67 69 6e 20 77 69 74 68 20 61 20 68 79 70 68 65 6e 2e 0a 0a 40 69 74 65 6d 20 41 20 74 6f begin.with.a.hyphen...@item.A.to
37380 6b 65 6e 20 63 6f 6e 73 69 73 74 69 6e 67 20 6f 66 20 61 20 73 69 6e 67 6c 65 20 68 79 70 68 65 ken.consisting.of.a.single.hyphe
373a0 6e 20 63 68 61 72 61 63 74 65 72 20 69 73 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 73 20 61 6e n.character.is.interpreted.as.an
373c0 0a 6f 72 64 69 6e 61 72 79 20 6e 6f 6e 2d 6f 70 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 2e 20 42 .ordinary.non-option.argument..B
373e0 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20 69 74 20 69 73 20 75 73 65 64 20 74 6f 20 73 70 65 63 y.convention,.it.is.used.to.spec
37400 69 66 79 20 73 74 61 6e 64 61 72 64 0a 69 6e 70 75 74 2c 20 73 74 61 6e 64 61 72 64 20 6f 75 74 ify.standard.input,.standard.out
37420 70 75 74 2c 20 6f 72 20 61 20 66 69 6c 65 20 6e 61 6d 65 64 20 40 73 61 6d 70 7b 2d 7d 2e 0a 40 put,.or.a.file.named.@samp{-}..@
37440 65 6e 64 20 69 74 65 6d 69 7a 65 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 47 4e 55 20 61 64 64 73 20 end.itemize..@noindent.GNU.adds.
37460 40 64 66 6e 7b 6c 6f 6e 67 20 6f 70 74 69 6f 6e 73 7d 20 74 6f 20 74 68 65 73 65 20 63 6f 6e 76 @dfn{long.options}.to.these.conv
37480 65 6e 74 69 6f 6e 73 3a 0a 0a 40 69 74 65 6d 69 7a 65 20 40 62 75 6c 6c 65 74 0a 40 69 74 65 6d entions:..@itemize.@bullet.@item
374a0 20 41 20 6c 6f 6e 67 20 6f 70 74 69 6f 6e 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 74 77 6f 20 68 .A.long.option.consists.of.two.h
374c0 79 70 68 65 6e 73 20 28 40 73 61 6d 70 7b 2d 2d 7d 29 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 yphens.(@samp{--}).followed.by.a
374e0 20 6e 61 6d 65 0a 6d 61 64 65 20 6f 66 20 61 6c 70 68 61 6e 75 6d 65 72 69 63 20 63 68 61 72 61 .name.made.of.alphanumeric.chara
37500 63 74 65 72 73 20 61 6e 64 20 68 79 70 68 65 6e 73 2e 20 4f 70 74 69 6f 6e 20 6e 61 6d 65 73 20 cters.and.hyphens..Option.names.
37520 61 72 65 20 74 79 70 69 63 61 6c 6c 79 20 6f 6e 65 0a 74 6f 20 74 68 72 65 65 20 77 6f 72 64 73 are.typically.one.to.three.words
37540 20 6c 6f 6e 67 2c 20 77 69 74 68 20 68 79 70 68 65 6e 73 20 74 6f 20 73 65 70 61 72 61 74 65 20 .long,.with.hyphens.to.separate.
37560 77 6f 72 64 73 2e 20 41 62 62 72 65 76 69 61 74 69 6f 6e 73 20 63 61 6e 20 62 65 0a 75 73 65 64 words..Abbreviations.can.be.used
37580 20 66 6f 72 20 74 68 65 20 6c 6f 6e 67 20 6f 70 74 69 6f 6e 20 6e 61 6d 65 73 20 61 73 20 6c 6f .for.the.long.option.names.as.lo
375a0 6e 67 20 61 73 20 74 68 65 20 61 62 62 72 65 76 69 61 74 69 6f 6e 73 20 61 72 65 20 75 6e 69 71 ng.as.the.abbreviations.are.uniq
375c0 75 65 2e 0a 0a 40 69 74 65 6d 20 41 20 6c 6f 6e 67 20 6f 70 74 69 6f 6e 20 61 6e 64 20 69 74 73 ue...@item.A.long.option.and.its
375e0 20 61 72 67 75 6d 65 6e 74 20 6d 61 79 20 6f 72 20 6d 61 79 20 6e 6f 74 20 61 70 70 65 61 72 20 .argument.may.or.may.not.appear.
37600 61 73 20 73 65 70 61 72 61 74 65 0a 74 6f 6b 65 6e 73 2e 20 49 6e 20 74 68 65 20 6c 61 74 74 65 as.separate.tokens..In.the.latte
37620 72 20 63 61 73 65 20 74 68 65 79 20 6d 75 73 74 20 62 65 20 73 65 70 61 72 61 74 65 64 20 62 79 r.case.they.must.be.separated.by
37640 20 61 6e 20 65 71 75 61 6c 20 73 69 67 6e 20 40 73 61 6d 70 7b 3d 7d 2e 0a 54 68 75 73 2c 20 40 .an.equal.sign.@samp{=}..Thus,.@
37660 77 7b 40 6f 70 74 69 6f 6e 7b 2d 2d 66 6f 6f 20 62 61 72 7d 7d 20 61 6e 64 20 40 6f 70 74 69 6f w{@option{--foo.bar}}.and.@optio
37680 6e 7b 2d 2d 66 6f 6f 3d 62 61 72 7d 20 61 72 65 20 65 71 75 69 76 61 6c 65 6e 74 2e 0a 40 65 6e n{--foo=bar}.are.equivalent..@en
376a0 64 20 69 74 65 6d 69 7a 65 0a 0a 0a 40 6e 6f 64 65 20 46 69 6c 65 20 66 6f 72 6d 61 74 0a 40 63 d.itemize...@node.File.format.@c
376c0 68 61 70 74 65 72 20 46 69 6c 65 20 66 6f 72 6d 61 74 0a 40 63 69 6e 64 65 78 20 66 69 6c 65 20 hapter.File.format.@cindex.file.
376e0 66 6f 72 6d 61 74 0a 0a 50 65 72 66 65 63 74 69 6f 6e 20 69 73 20 72 65 61 63 68 65 64 2c 20 6e format..Perfection.is.reached,.n
37700 6f 74 20 77 68 65 6e 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 61 6e 79 74 68 ot.when.there.is.no.longer.anyth
37720 69 6e 67 20 74 6f 20 61 64 64 2c 20 62 75 74 0a 77 68 65 6e 20 74 68 65 72 65 20 69 73 20 6e 6f ing.to.add,.but.when.there.is.no
37740 20 6c 6f 6e 67 65 72 20 61 6e 79 74 68 69 6e 67 20 74 6f 20 74 61 6b 65 20 61 77 61 79 2e 40 2a .longer.anything.to.take.away.@*
37760 0a 2d 2d 2d 20 41 6e 74 6f 69 6e 65 20 64 65 20 53 61 69 6e 74 2d 45 78 75 70 65 72 79 0a 0a 49 .---.Antoine.de.Saint-Exupery..I
37780 6e 20 74 68 65 20 64 69 61 67 72 61 6d 20 62 65 6c 6f 77 2c 20 61 20 62 6f 78 20 6c 69 6b 65 20 n.the.diagram.below,.a.box.like.
377a0 74 68 69 73 3a 0a 0a 40 76 65 72 62 61 74 69 6d 0a 2b 2d 2d 2d 2b 0a 7c 20 20 20 7c 20 3c 2d 2d this:..@verbatim.+---+.|...|.<--
377c0 20 74 68 65 20 76 65 72 74 69 63 61 6c 20 62 61 72 73 20 6d 69 67 68 74 20 62 65 20 6d 69 73 73 .the.vertical.bars.might.be.miss
377e0 69 6e 67 0a 2b 2d 2d 2d 2b 0a 40 65 6e 64 20 76 65 72 62 61 74 69 6d 0a 0a 72 65 70 72 65 73 65 ing.+---+.@end.verbatim..represe
37800 6e 74 73 20 6f 6e 65 20 62 79 74 65 3b 20 61 20 62 6f 78 20 6c 69 6b 65 20 74 68 69 73 3a 0a 0a nts.one.byte;.a.box.like.this:..
37820 40 76 65 72 62 61 74 69 6d 0a 2b 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 2b 0a 7c 20 20 20 20 @verbatim.+==============+.|....
37840 20 20 20 20 20 20 20 20 20 20 7c 0a 2b 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 2b 0a 40 65 6e ..........|.+==============+.@en
37860 64 20 76 65 72 62 61 74 69 6d 0a 0a 72 65 70 72 65 73 65 6e 74 73 20 61 20 76 61 72 69 61 62 6c d.verbatim..represents.a.variabl
37880 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 2e 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 41 20 e.number.of.bytes...@noindent.A.
378a0 6c 7a 69 70 20 66 69 6c 65 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 6f 6e 65 20 6f 72 20 6d 6f 72 lzip.file.consists.of.one.or.mor
378c0 65 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 22 6d 65 6d 62 65 72 73 22 20 28 63 6f 6d 70 72 65 73 e.independent."members".(compres
378e0 73 65 64 20 64 61 74 61 0a 73 65 74 73 29 2e 20 54 68 65 20 6d 65 6d 62 65 72 73 20 73 69 6d 70 sed.data.sets)..The.members.simp
37900 6c 79 20 61 70 70 65 61 72 20 6f 6e 65 20 61 66 74 65 72 20 61 6e 6f 74 68 65 72 20 69 6e 20 74 ly.appear.one.after.another.in.t
37920 68 65 20 66 69 6c 65 2c 20 77 69 74 68 20 6e 6f 0a 61 64 64 69 74 69 6f 6e 61 6c 20 69 6e 66 6f he.file,.with.no.additional.info
37940 72 6d 61 74 69 6f 6e 20 62 65 66 6f 72 65 2c 20 62 65 74 77 65 65 6e 2c 20 6f 72 20 61 66 74 65 rmation.before,.between,.or.afte
37960 72 20 74 68 65 6d 2e 20 45 61 63 68 20 6d 65 6d 62 65 72 20 63 61 6e 0a 65 6e 63 6f 64 65 20 69 r.them..Each.member.can.encode.i
37980 6e 20 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 20 75 70 20 74 6f 20 40 77 7b 31 36 20 45 69 n.compressed.form.up.to.@w{16.Ei
379a0 42 20 2d 20 31 20 62 79 74 65 7d 20 6f 66 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 B.-.1.byte}.of.uncompressed.data
379c0 2e 0a 54 68 65 20 73 69 7a 65 20 6f 66 20 61 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 ..The.size.of.a.multimember.file
379e0 20 69 73 20 75 6e 6c 69 6d 69 74 65 64 2e 20 45 6d 70 74 79 20 6d 65 6d 62 65 72 73 20 28 64 61 .is.unlimited..Empty.members.(da
37a00 74 61 20 73 69 7a 65 20 3d 20 30 29 0a 61 72 65 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 20 69 6e 20 ta.size.=.0).are.not.allowed.in.
37a20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 2e 0a 0a 45 61 63 68 20 6d 65 6d 62 65 72 20 multimember.files...Each.member.
37a40 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 74 72 75 63 74 75 72 65 3a 0a 0a 40 76 has.the.following.structure:..@v
37a60 65 72 62 61 74 69 6d 0a 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b 2d 2d 2d 2d 2b 2d 2d 2d 2d 2b 3d erbatim.+--+--+--+--+----+----+=
37a80 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d ============+-+-+-+-+-+-+-+-+-+-
37aa0 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 0a 7c 20 49 44 20 73 74 72 69 6e +-+-+-+-+-+-+-+-+-+-+.|.ID.strin
37ac0 67 20 7c 20 56 4e 20 7c 20 44 53 20 7c 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 7c 20 43 52 43 33 g.|.VN.|.DS.|.LZMA.stream.|.CRC3
37ae0 32 20 7c 20 20 20 44 61 74 61 20 73 69 7a 65 20 20 20 7c 20 20 4d 65 6d 62 65 72 20 73 69 7a 65 2.|...Data.size...|..Member.size
37b00 20 20 7c 0a 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b 2d 2d 2d 2d 2b 2d 2d 2d 2d 2b 3d 3d 3d 3d 3d ..|.+--+--+--+--+----+----+=====
37b20 3d 3d 3d 3d 3d 3d 3d 3d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d ========+-+-+-+-+-+-+-+-+-+-+-+-
37b40 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 0a 40 65 6e 64 20 76 65 72 62 61 74 69 6d 0a +-+-+-+-+-+-+-+-+.@end.verbatim.
37b60 0a 41 6c 6c 20 6d 75 6c 74 69 62 79 74 65 20 76 61 6c 75 65 73 20 61 72 65 20 73 74 6f 72 65 64 .All.multibyte.values.are.stored
37b80 20 69 6e 20 6c 69 74 74 6c 65 20 65 6e 64 69 61 6e 20 6f 72 64 65 72 2e 0a 0a 40 74 61 62 6c 65 .in.little.endian.order...@table
37ba0 20 40 73 61 6d 70 0a 40 69 74 65 6d 20 49 44 20 73 74 72 69 6e 67 20 28 74 68 65 20 22 6d 61 67 .@samp.@item.ID.string.(the."mag
37bc0 69 63 22 20 62 79 74 65 73 29 0a 41 20 66 6f 75 72 20 62 79 74 65 20 73 74 72 69 6e 67 2c 20 69 ic".bytes).A.four.byte.string,.i
37be0 64 65 6e 74 69 66 79 69 6e 67 20 74 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 2c 20 77 69 74 68 dentifying.the.lzip.format,.with
37c00 20 74 68 65 20 76 61 6c 75 65 20 22 4c 5a 49 50 22 0a 28 30 78 34 43 2c 20 30 78 35 41 2c 20 30 .the.value."LZIP".(0x4C,.0x5A,.0
37c20 78 34 39 2c 20 30 78 35 30 29 2e 0a 0a 40 69 74 65 6d 20 56 4e 20 28 76 65 72 73 69 6f 6e 20 6e x49,.0x50)...@item.VN.(version.n
37c40 75 6d 62 65 72 2c 20 31 20 62 79 74 65 29 0a 4a 75 73 74 20 69 6e 20 63 61 73 65 20 73 6f 6d 65 umber,.1.byte).Just.in.case.some
37c60 74 68 69 6e 67 20 6e 65 65 64 73 20 74 6f 20 62 65 20 6d 6f 64 69 66 69 65 64 20 69 6e 20 74 68 thing.needs.to.be.modified.in.th
37c80 65 20 66 75 74 75 72 65 2e 20 31 20 66 6f 72 20 6e 6f 77 2e 0a 0a 40 61 6e 63 68 6f 72 7b 63 6f e.future..1.for.now...@anchor{co
37ca0 64 65 64 2d 64 69 63 74 2d 73 69 7a 65 7d 0a 40 69 74 65 6d 20 44 53 20 28 63 6f 64 65 64 20 64 ded-dict-size}.@item.DS.(coded.d
37cc0 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 2c 20 31 20 62 79 74 65 29 0a 54 68 65 20 64 69 63 74 ictionary.size,.1.byte).The.dict
37ce0 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 73 20 63 61 6c 63 75 6c 61 74 65 64 20 62 79 20 74 61 6b ionary.size.is.calculated.by.tak
37d00 69 6e 67 20 61 20 70 6f 77 65 72 20 6f 66 20 32 20 28 74 68 65 20 62 61 73 65 20 73 69 7a 65 29 ing.a.power.of.2.(the.base.size)
37d20 0a 61 6e 64 20 73 75 62 74 72 61 63 74 69 6e 67 20 66 72 6f 6d 20 69 74 20 61 20 66 72 61 63 74 .and.subtracting.from.it.a.fract
37d40 69 6f 6e 20 62 65 74 77 65 65 6e 20 30 2f 31 36 20 61 6e 64 20 37 2f 31 36 20 6f 66 20 74 68 65 ion.between.0/16.and.7/16.of.the
37d60 20 62 61 73 65 20 73 69 7a 65 2e 40 2a 0a 42 69 74 73 20 34 2d 30 20 63 6f 6e 74 61 69 6e 20 74 .base.size.@*.Bits.4-0.contain.t
37d80 68 65 20 62 61 73 65 20 32 20 6c 6f 67 61 72 69 74 68 6d 20 6f 66 20 74 68 65 20 62 61 73 65 20 he.base.2.logarithm.of.the.base.
37da0 73 69 7a 65 20 28 31 32 20 74 6f 20 32 39 29 2e 40 2a 0a 42 69 74 73 20 37 2d 35 20 63 6f 6e 74 size.(12.to.29).@*.Bits.7-5.cont
37dc0 61 69 6e 20 74 68 65 20 6e 75 6d 65 72 61 74 6f 72 20 6f 66 20 74 68 65 20 66 72 61 63 74 69 6f ain.the.numerator.of.the.fractio
37de0 6e 20 28 30 20 74 6f 20 37 29 20 74 6f 20 73 75 62 74 72 61 63 74 0a 66 72 6f 6d 20 74 68 65 20 n.(0.to.7).to.subtract.from.the.
37e00 62 61 73 65 20 73 69 7a 65 20 74 6f 20 6f 62 74 61 69 6e 20 74 68 65 20 64 69 63 74 69 6f 6e 61 base.size.to.obtain.the.dictiona
37e20 72 79 20 73 69 7a 65 2e 40 2a 0a 45 78 61 6d 70 6c 65 3a 20 30 78 44 33 20 3d 20 32 5e 31 39 20 ry.size.@*.Example:.0xD3.=.2^19.
37e40 2d 20 36 20 2a 20 32 5e 31 35 20 3d 20 35 31 32 20 4b 69 42 20 2d 20 36 20 2a 20 33 32 20 4b 69 -.6.*.2^15.=.512.KiB.-.6.*.32.Ki
37e60 42 20 3d 20 33 32 30 20 4b 69 42 40 2a 0a 56 61 6c 69 64 20 76 61 6c 75 65 73 20 66 6f 72 20 64 B.=.320.KiB@*.Valid.values.for.d
37e80 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 72 61 6e 67 65 20 66 72 6f 6d 20 34 20 4b 69 42 20 ictionary.size.range.from.4.KiB.
37ea0 74 6f 20 35 31 32 20 4d 69 42 2e 0a 0a 40 69 74 65 6d 20 4c 5a 4d 41 20 73 74 72 65 61 6d 0a 54 to.512.MiB...@item.LZMA.stream.T
37ec0 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 2c 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 61 6e he.LZMA.stream,.terminated.by.an
37ee0 20 27 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 27 20 6d 61 72 6b 65 72 2e 20 55 73 65 73 20 64 65 .'End.Of.Stream'.marker..Uses.de
37f00 66 61 75 6c 74 20 76 61 6c 75 65 73 0a 66 6f 72 20 65 6e 63 6f 64 65 72 20 70 72 6f 70 65 72 74 fault.values.for.encoder.propert
37f20 69 65 73 2e 20 40 78 72 65 66 7b 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 7d 2c 20 66 6f 72 20 61 ies..@xref{Stream.format},.for.a
37f40 20 63 6f 6d 70 6c 65 74 65 20 64 65 73 63 72 69 70 74 69 6f 6e 2e 0a 0a 40 69 74 65 6d 20 43 52 .complete.description...@item.CR
37f60 43 33 32 20 28 34 20 62 79 74 65 73 29 0a 43 79 63 6c 69 63 20 52 65 64 75 6e 64 61 6e 63 79 20 C32.(4.bytes).Cyclic.Redundancy.
37f80 43 68 65 63 6b 20 28 43 52 43 29 20 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 75 6e 63 6f Check.(CRC).of.the.original.unco
37fa0 6d 70 72 65 73 73 65 64 20 64 61 74 61 2e 0a 0a 40 69 74 65 6d 20 44 61 74 61 20 73 69 7a 65 20 mpressed.data...@item.Data.size.
37fc0 28 38 20 62 79 74 65 73 29 0a 53 69 7a 65 20 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 75 (8.bytes).Size.of.the.original.u
37fe0 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 2e 0a 0a 40 69 74 65 6d 20 4d 65 6d 62 65 72 20 ncompressed.data...@item.Member.
38000 73 69 7a 65 20 28 38 20 62 79 74 65 73 29 0a 54 6f 74 61 6c 20 73 69 7a 65 20 6f 66 20 74 68 65 size.(8.bytes).Total.size.of.the
38020 20 6d 65 6d 62 65 72 2c 20 69 6e 63 6c 75 64 69 6e 67 20 68 65 61 64 65 72 20 61 6e 64 20 74 72 .member,.including.header.and.tr
38040 61 69 6c 65 72 2e 20 54 68 69 73 20 66 69 65 6c 64 20 61 63 74 73 0a 61 73 20 61 20 64 69 73 74 ailer..This.field.acts.as.a.dist
38060 72 69 62 75 74 65 64 20 69 6e 64 65 78 2c 20 69 6d 70 72 6f 76 65 73 20 74 68 65 20 63 68 65 63 ributed.index,.improves.the.chec
38080 6b 69 6e 67 20 6f 66 20 73 74 72 65 61 6d 20 69 6e 74 65 67 72 69 74 79 2c 20 61 6e 64 0a 66 61 king.of.stream.integrity,.and.fa
380a0 63 69 6c 69 74 61 74 65 73 20 74 68 65 20 73 61 66 65 20 72 65 63 6f 76 65 72 79 20 6f 66 20 75 cilitates.the.safe.recovery.of.u
380c0 6e 64 61 6d 61 67 65 64 20 6d 65 6d 62 65 72 73 20 66 72 6f 6d 20 6d 75 6c 74 69 6d 65 6d 62 65 ndamaged.members.from.multimembe
380e0 72 20 66 69 6c 65 73 2e 0a 4c 7a 69 70 20 6c 69 6d 69 74 73 20 74 68 65 20 6d 65 6d 62 65 72 20 r.files..Lzip.limits.the.member.
38100 73 69 7a 65 20 74 6f 20 40 77 7b 32 20 50 69 42 7d 20 74 6f 20 70 72 65 76 65 6e 74 20 74 68 65 size.to.@w{2.PiB}.to.prevent.the
38120 20 64 61 74 61 20 73 69 7a 65 20 66 69 65 6c 64 20 66 72 6f 6d 0a 6f 76 65 72 66 6c 6f 77 69 6e .data.size.field.from.overflowin
38140 67 2e 0a 40 65 6e 64 20 74 61 62 6c 65 0a 0a 0a 40 6e 6f 64 65 20 53 74 72 65 61 6d 20 66 6f 72 g..@end.table...@node.Stream.for
38160 6d 61 74 0a 40 63 68 61 70 74 65 72 20 46 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 mat.@chapter.Format.of.the.LZMA.
38180 73 74 72 65 61 6d 20 69 6e 20 6c 7a 69 70 20 66 69 6c 65 73 0a 40 63 69 6e 64 65 78 20 66 6f 72 stream.in.lzip.files.@cindex.for
381a0 6d 61 74 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 0a 0a 54 68 65 20 4c 5a 4d 41 mat.of.the.LZMA.stream..The.LZMA
381c0 20 61 6c 67 6f 72 69 74 68 6d 20 68 61 73 20 74 68 72 65 65 20 70 61 72 61 6d 65 74 65 72 73 2c .algorithm.has.three.parameters,
381e0 20 63 61 6c 6c 65 64 20 27 73 70 65 63 69 61 6c 20 4c 5a 4d 41 20 70 72 6f 70 65 72 74 69 65 73 .called.'special.LZMA.properties
38200 27 2c 0a 74 6f 20 61 64 6a 75 73 74 20 69 74 20 66 6f 72 20 73 6f 6d 65 20 6b 69 6e 64 73 20 6f ',.to.adjust.it.for.some.kinds.o
38220 66 20 62 69 6e 61 72 79 20 64 61 74 61 2e 20 54 68 65 73 65 20 70 61 72 61 6d 65 74 65 72 73 20 f.binary.data..These.parameters.
38240 61 72 65 3a 0a 40 73 61 6d 70 7b 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 74 73 7d are:.@samp{literal_context_bits}
38260 20 28 77 69 74 68 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 33 29 2c 0a 40 73 .(with.a.default.value.of.3),.@s
38280 61 6d 70 7b 6c 69 74 65 72 61 6c 5f 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 7d 20 28 77 69 74 amp{literal_pos_state_bits}.(wit
382a0 68 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 30 29 2c 20 61 6e 64 0a 40 73 61 h.a.default.value.of.0),.and.@sa
382c0 6d 70 7b 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 7d 20 28 77 69 74 68 20 61 20 64 65 66 61 75 mp{pos_state_bits}.(with.a.defau
382e0 6c 74 20 76 61 6c 75 65 20 6f 66 20 32 29 2e 20 41 73 20 61 20 67 65 6e 65 72 61 6c 20 70 75 72 lt.value.of.2)..As.a.general.pur
38300 70 6f 73 65 0a 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 74 2c 20 6c 7a 69 70 20 6f 6e 6c pose.compressed.format,.lzip.onl
38320 79 20 75 73 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 73 20 66 6f 72 20 74 68 y.uses.the.default.values.for.th
38340 65 73 65 20 70 61 72 61 6d 65 74 65 72 73 2e 0a 49 6e 20 70 61 72 74 69 63 75 6c 61 72 20 40 73 ese.parameters..In.particular.@s
38360 61 6d 70 7b 6c 69 74 65 72 61 6c 5f 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 7d 20 68 61 73 20 amp{literal_pos_state_bits}.has.
38380 62 65 65 6e 20 6f 70 74 69 6d 69 7a 65 64 20 61 77 61 79 20 61 6e 64 20 64 6f 65 73 0a 6e 6f 74 been.optimized.away.and.does.not
383a0 20 65 76 65 6e 20 61 70 70 65 61 72 20 69 6e 20 74 68 65 20 63 6f 64 65 2e 0a 0a 54 68 65 20 66 .even.appear.in.the.code...The.f
383c0 69 72 73 74 20 62 79 74 65 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 73 20 irst.byte.of.the.LZMA.stream.is.
383e0 73 65 74 20 74 6f 20 7a 65 72 6f 20 74 6f 20 68 65 6c 70 20 74 6f 6f 6c 73 20 6c 69 6b 65 20 67 set.to.zero.to.help.tools.like.g
38400 72 65 70 0a 72 65 63 6f 67 6e 69 7a 65 20 6c 7a 69 70 20 66 69 6c 65 73 20 61 73 20 62 69 6e 61 rep.recognize.lzip.files.as.bina
38420 72 79 20 66 69 6c 65 73 2e 0a 0a 54 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 73 20 74 65 ry.files...The.LZMA.stream.is.te
38440 72 6d 69 6e 61 74 65 64 20 62 79 20 61 6e 20 27 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 27 20 28 rminated.by.an.'End.Of.Stream'.(
38460 45 4f 53 29 20 6d 61 72 6b 65 72 20 28 74 68 65 0a 64 69 73 74 61 6e 63 65 2d 6c 65 6e 67 74 68 EOS).marker.(the.distance-length
38480 20 70 61 69 72 20 40 77 7b 30 78 46 46 46 46 46 46 46 46 55 2c 20 32 7d 29 2c 20 77 68 69 63 68 .pair.@w{0xFFFFFFFFU,.2}),.which
384a0 20 69 6e 20 63 6f 6e 6a 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 0a 40 73 61 6d 70 7b 6d .in.conjunction.with.the.@samp{m
384c0 65 6d 62 65 72 20 73 69 7a 65 7d 20 66 69 65 6c 64 20 69 6e 20 74 68 65 20 6d 65 6d 62 65 72 20 ember.size}.field.in.the.member.
384e0 74 72 61 69 6c 65 72 20 61 6c 6c 6f 77 73 20 74 68 65 20 63 68 65 63 6b 69 6e 67 20 6f 66 20 73 trailer.allows.the.checking.of.s
38500 74 72 65 61 6d 0a 69 6e 74 65 67 72 69 74 79 2e 20 54 68 65 20 45 4f 53 20 6d 61 72 6b 65 72 20 tream.integrity..The.EOS.marker.
38520 69 73 20 74 68 65 20 6f 6e 6c 79 20 4c 5a 4d 41 20 6d 61 72 6b 65 72 20 61 6c 6c 6f 77 65 64 20 is.the.only.LZMA.marker.allowed.
38540 69 6e 20 6c 7a 69 70 20 66 69 6c 65 73 2e 20 54 68 65 0a 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 in.lzip.files..The.LZMA.stream.i
38560 6e 20 6c 7a 69 70 20 66 69 6c 65 73 20 61 6c 77 61 79 73 20 68 61 73 20 74 68 65 73 65 20 74 77 n.lzip.files.always.has.these.tw
38580 6f 20 66 65 61 74 75 72 65 73 20 28 64 65 66 61 75 6c 74 20 70 72 6f 70 65 72 74 69 65 73 0a 61 o.features.(default.properties.a
385a0 6e 64 20 45 4f 53 20 6d 61 72 6b 65 72 29 20 61 6e 64 20 69 73 20 72 65 66 65 72 72 65 64 20 74 nd.EOS.marker).and.is.referred.t
385c0 6f 20 69 6e 20 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 20 61 73 20 4c 5a 4d 41 2d 33 30 32 65 6f o.in.this.document.as.LZMA-302eo
385e0 73 2e 20 54 68 69 73 0a 73 69 6d 70 6c 69 66 69 65 64 20 61 6e 64 20 6d 61 72 6b 65 72 2d 74 65 s..This.simplified.and.marker-te
38600 72 6d 69 6e 61 74 65 64 20 66 6f 72 6d 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d rminated.form.of.the.LZMA.stream
38620 20 66 6f 72 6d 61 74 20 68 61 73 20 62 65 65 6e 0a 63 68 6f 73 65 6e 20 74 6f 20 61 63 68 69 65 .format.has.been.chosen.to.achie
38640 76 65 20 63 6f 6d 70 6c 65 74 65 20 69 6e 74 65 72 6f 70 65 72 61 62 69 6c 69 74 79 20 61 6e 64 ve.complete.interoperability.and
38660 20 72 6f 62 75 73 74 20 73 61 66 65 74 79 2e 0a 0a 54 68 65 20 73 65 63 6f 6e 64 20 73 74 61 67 .robust.safety...The.second.stag
38680 65 20 6f 66 20 4c 5a 4d 41 20 69 73 20 61 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 20 74 68 61 e.of.LZMA.is.a.range.encoder.tha
386a0 74 20 75 73 65 73 20 61 20 64 69 66 66 65 72 65 6e 74 0a 70 72 6f 62 61 62 69 6c 69 74 79 20 6d t.uses.a.different.probability.m
386c0 6f 64 65 6c 20 66 6f 72 20 65 61 63 68 20 74 79 70 65 20 6f 66 20 73 79 6d 62 6f 6c 3a 20 64 69 odel.for.each.type.of.symbol:.di
386e0 73 74 61 6e 63 65 73 2c 20 6c 65 6e 67 74 68 73 2c 20 6c 69 74 65 72 61 6c 0a 62 79 74 65 73 2c stances,.lengths,.literal.bytes,
38700 20 65 74 63 2e 20 52 61 6e 67 65 20 65 6e 63 6f 64 69 6e 67 20 63 6f 6e 63 65 70 74 75 61 6c 6c .etc..Range.encoding.conceptuall
38720 79 20 65 6e 63 6f 64 65 73 20 61 6c 6c 20 74 68 65 20 73 79 6d 62 6f 6c 73 20 6f 66 20 74 68 65 y.encodes.all.the.symbols.of.the
38740 0a 6d 65 73 73 61 67 65 20 69 6e 74 6f 20 6f 6e 65 20 6e 75 6d 62 65 72 2e 20 55 6e 6c 69 6b 65 .message.into.one.number..Unlike
38760 20 48 75 66 66 6d 61 6e 20 63 6f 64 69 6e 67 2c 20 77 68 69 63 68 20 61 73 73 69 67 6e 73 20 74 .Huffman.coding,.which.assigns.t
38780 6f 20 65 61 63 68 0a 73 79 6d 62 6f 6c 20 61 20 62 69 74 2d 70 61 74 74 65 72 6e 20 61 6e 64 20 o.each.symbol.a.bit-pattern.and.
387a0 63 6f 6e 63 61 74 65 6e 61 74 65 73 20 61 6c 6c 20 74 68 65 20 62 69 74 2d 70 61 74 74 65 72 6e concatenates.all.the.bit-pattern
387c0 73 20 74 6f 67 65 74 68 65 72 2c 0a 72 61 6e 67 65 20 65 6e 63 6f 64 69 6e 67 20 63 61 6e 20 63 s.together,.range.encoding.can.c
387e0 6f 6d 70 72 65 73 73 20 6f 6e 65 20 73 79 6d 62 6f 6c 20 74 6f 20 6c 65 73 73 20 74 68 61 6e 20 ompress.one.symbol.to.less.than.
38800 6f 6e 65 20 62 69 74 2e 20 54 68 65 72 65 66 6f 72 65 0a 74 68 65 20 63 6f 6d 70 72 65 73 73 65 one.bit..Therefore.the.compresse
38820 64 20 64 61 74 61 20 70 72 6f 64 75 63 65 64 20 62 79 20 61 20 72 61 6e 67 65 20 65 6e 63 6f 64 d.data.produced.by.a.range.encod
38840 65 72 20 63 61 6e 27 74 20 62 65 20 73 70 6c 69 74 20 69 6e 20 70 69 65 63 65 73 0a 74 68 61 74 er.can't.be.split.in.pieces.that
38860 20 63 6f 75 6c 64 20 62 65 20 64 65 73 63 72 69 62 65 64 20 69 6e 64 69 76 69 64 75 61 6c 6c 79 .could.be.described.individually
38880 2e 0a 0a 49 74 20 73 65 65 6d 73 20 74 68 61 74 20 74 68 65 20 6f 6e 6c 79 20 77 61 79 20 6f 66 ...It.seems.that.the.only.way.of
388a0 20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 20 4c 5a 4d 41 2d 33 30 32 65 6f 73 20 73 74 72 65 .describing.the.LZMA-302eos.stre
388c0 61 6d 20 69 73 20 74 6f 0a 64 65 73 63 72 69 62 65 20 74 68 65 20 61 6c 67 6f 72 69 74 68 6d 20 am.is.to.describe.the.algorithm.
388e0 74 68 61 74 20 64 65 63 6f 64 65 73 20 69 74 2e 20 41 6e 64 20 67 69 76 65 6e 20 74 68 65 20 6d that.decodes.it..And.given.the.m
38900 61 6e 79 20 64 65 74 61 69 6c 73 0a 61 62 6f 75 74 20 74 68 65 20 72 61 6e 67 65 20 64 65 63 6f any.details.about.the.range.deco
38920 64 65 72 20 74 68 61 74 20 6e 65 65 64 20 74 6f 20 62 65 20 64 65 73 63 72 69 62 65 64 20 61 63 der.that.need.to.be.described.ac
38940 63 75 72 61 74 65 6c 79 2c 20 74 68 65 20 73 6f 75 72 63 65 0a 63 6f 64 65 20 6f 66 20 61 20 72 curately,.the.source.code.of.a.r
38960 65 61 6c 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 73 65 65 6d 73 20 74 68 65 20 6f 6e 6c 79 20 eal.decompressor.seems.the.only.
38980 61 70 70 72 6f 70 72 69 61 74 65 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 75 73 65 2e 0a 0a 57 appropriate.reference.to.use...W
389a0 68 61 74 20 66 6f 6c 6c 6f 77 73 20 69 73 20 61 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 hat.follows.is.a.description.of.
389c0 74 68 65 20 64 65 63 6f 64 69 6e 67 20 61 6c 67 6f 72 69 74 68 6d 20 66 6f 72 20 4c 5a 4d 41 2d the.decoding.algorithm.for.LZMA-
389e0 33 30 32 65 6f 73 0a 73 74 72 65 61 6d 73 20 75 73 69 6e 67 20 61 73 20 72 65 66 65 72 65 6e 63 302eos.streams.using.as.referenc
38a00 65 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 66 20 6c 7a 64 2c 20 61 6e 20 65 64 75 e.the.source.code.of.lzd,.an.edu
38a20 63 61 74 69 6f 6e 61 6c 0a 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 66 6f 72 20 6c 7a 69 70 20 66 cational.decompressor.for.lzip.f
38a40 69 6c 65 73 2c 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 70 70 65 6e 64 69 78 20 41 2e 20 40 78 iles,.included.in.appendix.A..@x
38a60 72 65 66 7b 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 0a 63 6f 64 65 7d 2e 20 4c 7a 64 20 ref{Reference.source.code}..Lzd.
38a80 69 73 20 77 72 69 74 74 65 6e 20 69 6e 20 43 2b 2b 31 31 20 61 6e 64 20 63 61 6e 20 62 65 20 64 is.written.in.C++11.and.can.be.d
38aa0 6f 77 6e 6c 6f 61 64 65 64 20 66 72 6f 6d 20 74 68 65 20 6c 7a 69 70 20 64 6f 77 6e 6c 6f 61 64 ownloaded.from.the.lzip.download
38ac0 0a 64 69 72 65 63 74 6f 72 79 2e 0a 0a 40 73 65 63 74 69 6f 6e 20 57 68 61 74 20 69 73 20 63 6f .directory...@section.What.is.co
38ae0 64 65 64 0a 0a 40 61 6e 63 68 6f 72 7b 77 68 61 74 2d 69 73 2d 63 6f 64 65 64 7d 0a 54 68 65 20 ded..@anchor{what-is-coded}.The.
38b00 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 6e 63 6c 75 64 65 73 20 6c 69 74 65 72 61 6c 73 2c 20 6d LZMA.stream.includes.literals,.m
38b20 61 74 63 68 65 73 2c 20 61 6e 64 20 72 65 70 65 61 74 65 64 20 6d 61 74 63 68 65 73 20 28 6d 61 atches,.and.repeated.matches.(ma
38b40 74 63 68 65 73 0a 72 65 75 73 69 6e 67 20 61 20 72 65 63 65 6e 74 6c 79 20 75 73 65 64 20 64 69 tches.reusing.a.recently.used.di
38b60 73 74 61 6e 63 65 29 2e 20 54 68 65 72 65 20 61 72 65 20 37 20 64 69 66 66 65 72 65 6e 74 20 63 stance)..There.are.7.different.c
38b80 6f 64 69 6e 67 20 73 65 71 75 65 6e 63 65 73 3a 0a 0a 40 6d 75 6c 74 69 74 61 62 6c 65 20 40 63 oding.sequences:..@multitable.@c
38ba0 6f 6c 75 6d 6e 66 72 61 63 74 69 6f 6e 73 20 2e 33 35 20 2e 31 34 20 2e 35 31 0a 40 68 65 61 64 olumnfractions..35..14..51.@head
38bc0 69 74 65 6d 20 42 69 74 20 73 65 71 75 65 6e 63 65 20 40 74 61 62 20 4e 61 6d 65 20 40 74 61 62 item.Bit.sequence.@tab.Name.@tab
38be0 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 40 69 74 65 6d 20 30 20 2b 20 62 79 74 65 20 40 74 61 62 .Description.@item.0.+.byte.@tab
38c00 20 6c 69 74 65 72 61 6c 20 40 74 61 62 20 6c 69 74 65 72 61 6c 20 62 79 74 65 0a 40 69 74 65 6d .literal.@tab.literal.byte.@item
38c20 20 31 20 2b 20 30 20 2b 20 6c 65 6e 20 2b 20 64 69 73 20 40 74 61 62 20 6d 61 74 63 68 20 40 74 .1.+.0.+.len.+.dis.@tab.match.@t
38c40 61 62 20 4c 5a 20 64 69 73 74 61 6e 63 65 2d 6c 65 6e 67 74 68 20 70 61 69 72 0a 40 69 74 65 6d ab.LZ.distance-length.pair.@item
38c60 20 31 20 2b 20 31 20 2b 20 30 20 2b 20 30 20 40 74 61 62 20 73 68 6f 72 74 72 65 70 20 40 74 61 .1.+.1.+.0.+.0.@tab.shortrep.@ta
38c80 62 20 31 20 62 79 74 65 20 6d 61 74 63 68 20 61 74 20 6c 61 74 65 73 74 20 75 73 65 64 20 64 69 b.1.byte.match.at.latest.used.di
38ca0 73 74 61 6e 63 65 0a 40 69 74 65 6d 20 31 20 2b 20 31 20 2b 20 30 20 2b 20 31 20 2b 20 6c 65 6e stance.@item.1.+.1.+.0.+.1.+.len
38cc0 20 40 74 61 62 20 72 65 70 30 20 40 74 61 62 20 6c 65 6e 20 62 79 74 65 73 20 6d 61 74 63 68 20 .@tab.rep0.@tab.len.bytes.match.
38ce0 61 74 20 6c 61 74 65 73 74 20 75 73 65 64 20 64 69 73 74 61 6e 63 65 0a 40 69 74 65 6d 20 31 20 at.latest.used.distance.@item.1.
38d00 2b 20 31 20 2b 20 31 20 2b 20 30 20 2b 20 6c 65 6e 20 40 74 61 62 20 72 65 70 31 20 40 74 61 62 +.1.+.1.+.0.+.len.@tab.rep1.@tab
38d20 20 6c 65 6e 20 62 79 74 65 73 20 6d 61 74 63 68 20 61 74 20 73 65 63 6f 6e 64 0a 6c 61 74 65 73 .len.bytes.match.at.second.lates
38d40 74 20 75 73 65 64 20 64 69 73 74 61 6e 63 65 0a 40 69 74 65 6d 20 31 20 2b 20 31 20 2b 20 31 20 t.used.distance.@item.1.+.1.+.1.
38d60 2b 20 31 20 2b 20 30 20 2b 20 6c 65 6e 20 40 74 61 62 20 72 65 70 32 20 40 74 61 62 20 6c 65 6e +.1.+.0.+.len.@tab.rep2.@tab.len
38d80 20 62 79 74 65 73 20 6d 61 74 63 68 20 61 74 20 74 68 69 72 64 0a 6c 61 74 65 73 74 20 75 73 65 .bytes.match.at.third.latest.use
38da0 64 20 64 69 73 74 61 6e 63 65 0a 40 69 74 65 6d 20 31 20 2b 20 31 20 2b 20 31 20 2b 20 31 20 2b d.distance.@item.1.+.1.+.1.+.1.+
38dc0 20 31 20 2b 20 6c 65 6e 20 40 74 61 62 20 72 65 70 33 20 40 74 61 62 20 6c 65 6e 20 62 79 74 65 .1.+.len.@tab.rep3.@tab.len.byte
38de0 73 20 6d 61 74 63 68 20 61 74 20 66 6f 75 72 74 68 0a 6c 61 74 65 73 74 20 75 73 65 64 20 64 69 s.match.at.fourth.latest.used.di
38e00 73 74 61 6e 63 65 0a 40 65 6e 64 20 6d 75 6c 74 69 74 61 62 6c 65 0a 0a 40 73 70 20 31 0a 49 6e stance.@end.multitable..@sp.1.In
38e20 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 73 2c 20 6d 75 6c 74 69 62 69 74 20 .the.following.tables,.multibit.
38e40 73 65 71 75 65 6e 63 65 73 20 61 72 65 20 63 6f 64 65 64 20 69 6e 20 6e 6f 72 6d 61 6c 20 6f 72 sequences.are.coded.in.normal.or
38e60 64 65 72 2c 0a 66 72 6f 6d 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 20 28 der,.from.most.significant.bit.(
38e80 4d 53 42 29 20 74 6f 20 6c 65 61 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 20 28 4c MSB).to.least.significant.bit.(L
38ea0 53 42 29 2c 20 65 78 63 65 70 74 0a 77 68 65 72 65 20 6e 6f 74 65 64 20 6f 74 68 65 72 77 69 73 SB),.except.where.noted.otherwis
38ec0 65 2e 0a 0a 4c 65 6e 67 74 68 73 20 28 74 68 65 20 40 73 61 6d 70 7b 6c 65 6e 7d 20 69 6e 20 74 e...Lengths.(the.@samp{len}.in.t
38ee0 68 65 20 74 61 62 6c 65 20 61 62 6f 76 65 29 20 61 72 65 20 63 6f 64 65 64 20 61 73 20 66 6f 6c he.table.above).are.coded.as.fol
38f00 6c 6f 77 73 3a 0a 0a 40 6d 75 6c 74 69 74 61 62 6c 65 20 40 63 6f 6c 75 6d 6e 66 72 61 63 74 69 lows:..@multitable.@columnfracti
38f20 6f 6e 73 20 2e 35 20 2e 35 0a 40 68 65 61 64 69 74 65 6d 20 42 69 74 20 73 65 71 75 65 6e 63 65 ons..5..5.@headitem.Bit.sequence
38f40 20 40 74 61 62 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 40 69 74 65 6d 20 30 20 2b 20 33 20 62 69 .@tab.Description.@item.0.+.3.bi
38f60 74 73 20 40 74 61 62 20 6c 65 6e 67 74 68 73 20 66 72 6f 6d 20 32 20 74 6f 20 39 0a 40 69 74 65 ts.@tab.lengths.from.2.to.9.@ite
38f80 6d 20 31 20 2b 20 30 20 2b 20 33 20 62 69 74 73 20 40 74 61 62 20 6c 65 6e 67 74 68 73 20 66 72 m.1.+.0.+.3.bits.@tab.lengths.fr
38fa0 6f 6d 20 31 30 20 74 6f 20 31 37 0a 40 69 74 65 6d 20 31 20 2b 20 31 20 2b 20 38 20 62 69 74 73 om.10.to.17.@item.1.+.1.+.8.bits
38fc0 20 40 74 61 62 20 6c 65 6e 67 74 68 73 20 66 72 6f 6d 20 31 38 20 74 6f 20 32 37 33 0a 40 65 6e .@tab.lengths.from.18.to.273.@en
38fe0 64 20 6d 75 6c 74 69 74 61 62 6c 65 0a 0a 40 73 70 20 31 0a 54 68 65 20 63 6f 64 69 6e 67 20 6f d.multitable..@sp.1.The.coding.o
39000 66 20 64 69 73 74 61 6e 63 65 73 20 69 73 20 61 20 6c 69 74 74 6c 65 20 6d 6f 72 65 20 63 6f 6d f.distances.is.a.little.more.com
39020 70 6c 69 63 61 74 65 64 2c 20 73 6f 20 49 27 6c 6c 20 62 65 67 69 6e 20 62 79 0a 65 78 70 6c 61 plicated,.so.I'll.begin.by.expla
39040 69 6e 69 6e 67 20 61 20 73 69 6d 70 6c 65 72 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 65 ining.a.simpler.version.of.the.e
39060 6e 63 6f 64 69 6e 67 2e 0a 0a 49 6d 61 67 69 6e 65 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 65 6e ncoding...Imagine.you.need.to.en
39080 63 6f 64 65 20 61 20 6e 75 6d 62 65 72 20 66 72 6f 6d 20 30 20 74 6f 20 40 77 7b 32 5e 33 32 20 code.a.number.from.0.to.@w{2^32.
390a0 2d 20 31 7d 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 20 74 6f 0a 64 6f 20 69 74 20 69 6e 20 61 -.1},.and.you.want.to.do.it.in.a
390c0 20 77 61 79 20 74 68 61 74 20 70 72 6f 64 75 63 65 73 20 73 68 6f 72 74 65 72 20 63 6f 64 65 73 .way.that.produces.shorter.codes
390e0 20 66 6f 72 20 74 68 65 20 73 6d 61 6c 6c 65 72 20 6e 75 6d 62 65 72 73 2e 20 59 6f 75 20 6d 61 .for.the.smaller.numbers..You.ma
39100 79 0a 66 69 72 73 74 20 65 6e 63 6f 64 65 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 y.first.encode.the.position.of.t
39120 68 65 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 20 74 68 61 74 20 69 73 20 he.most.significant.bit.that.is.
39140 73 65 74 20 74 6f 20 31 2c 0a 77 68 69 63 68 20 79 6f 75 20 6d 61 79 20 66 69 6e 64 20 62 79 20 set.to.1,.which.you.may.find.by.
39160 6d 61 6b 69 6e 67 20 61 20 62 69 74 20 73 63 61 6e 20 66 72 6f 6d 20 74 68 65 20 6c 65 66 74 20 making.a.bit.scan.from.the.left.
39180 28 66 72 6f 6d 20 74 68 65 20 4d 53 42 29 2e 20 41 0a 70 6f 73 69 74 69 6f 6e 20 6f 66 20 30 20 (from.the.MSB)..A.position.of.0.
391a0 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 6e 75 6d 62 65 72 20 69 73 20 30 20 28 6e 6f 20 62 means.that.the.number.is.0.(no.b
391c0 69 74 20 69 73 20 73 65 74 29 2c 20 31 20 6d 65 61 6e 73 20 74 68 65 20 4c 53 42 20 69 73 0a 74 it.is.set),.1.means.the.LSB.is.t
391e0 68 65 20 66 69 72 73 74 20 62 69 74 20 73 65 74 20 28 74 68 65 20 6e 75 6d 62 65 72 20 69 73 20 he.first.bit.set.(the.number.is.
39200 31 29 2c 20 61 6e 64 20 33 32 20 6d 65 61 6e 73 20 74 68 65 20 4d 53 42 20 69 73 20 73 65 74 20 1),.and.32.means.the.MSB.is.set.
39220 28 69 2e 65 2e 2c 20 74 68 65 0a 6e 75 6d 62 65 72 20 69 73 20 40 77 7b 3e 3d 20 30 78 38 30 30 (i.e.,.the.number.is.@w{>=.0x800
39240 30 30 30 30 30 7d 29 2e 20 54 68 65 6e 2c 20 69 66 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 20 69 00000})..Then,.if.the.position.i
39260 73 20 40 77 7b 3e 3d 20 32 7d 2c 20 79 6f 75 20 65 6e 63 6f 64 65 0a 74 68 65 20 72 65 6d 61 69 s.@w{>=.2},.you.encode.the.remai
39280 6e 69 6e 67 20 40 77 7b 70 6f 73 69 74 69 6f 6e 20 2d 20 31 7d 20 62 69 74 73 2e 20 4c 65 74 27 ning.@w{position.-.1}.bits..Let'
392a0 73 20 63 61 6c 6c 20 74 68 65 73 65 20 62 69 74 73 20 22 64 69 72 65 63 74 20 62 69 74 73 22 0a s.call.these.bits."direct.bits".
392c0 62 65 63 61 75 73 65 20 74 68 65 79 20 61 72 65 20 63 6f 64 65 64 20 64 69 72 65 63 74 6c 79 20 because.they.are.coded.directly.
392e0 62 79 20 76 61 6c 75 65 20 69 6e 73 74 65 61 64 20 6f 66 20 69 6e 64 69 72 65 63 74 6c 79 20 62 by.value.instead.of.indirectly.b
39300 79 20 70 6f 73 69 74 69 6f 6e 2e 0a 0a 54 68 65 20 69 6e 63 6f 6e 76 65 6e 69 65 6e 74 20 6f 66 y.position...The.inconvenient.of
39320 20 74 68 69 73 20 73 69 6d 70 6c 65 20 6d 65 74 68 6f 64 20 69 73 20 74 68 61 74 20 69 74 20 6e .this.simple.method.is.that.it.n
39340 65 65 64 73 20 36 20 62 69 74 73 20 74 6f 20 65 6e 63 6f 64 65 20 74 68 65 0a 70 6f 73 69 74 69 eeds.6.bits.to.encode.the.positi
39360 6f 6e 2c 20 62 75 74 20 69 74 20 6a 75 73 74 20 75 73 65 73 20 33 33 20 6f 66 20 74 68 65 20 36 on,.but.it.just.uses.33.of.the.6
39380 34 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 2c 20 77 61 73 74 69 6e 67 20 61 6c 6d 6f 73 4.possible.values,.wasting.almos
393a0 74 20 68 61 6c 66 0a 6f 66 20 74 68 65 20 63 6f 64 65 73 2e 0a 0a 54 68 65 20 69 6e 74 65 6c 6c t.half.of.the.codes...The.intell
393c0 69 67 65 6e 74 20 74 72 69 63 6b 20 6f 66 20 4c 5a 4d 41 20 69 73 20 74 68 61 74 20 69 74 20 65 igent.trick.of.LZMA.is.that.it.e
393e0 6e 63 6f 64 65 73 20 69 6e 20 77 68 61 74 20 69 74 20 63 61 6c 6c 73 20 61 20 22 73 6c 6f 74 22 ncodes.in.what.it.calls.a."slot"
39400 0a 74 68 65 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 6d 6f 73 74 20 73 69 67 6e 69 66 .the.position.of.the.most.signif
39420 69 63 61 6e 74 20 62 69 74 20 73 65 74 2c 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 76 61 icant.bit.set,.along.with.the.va
39440 6c 75 65 20 6f 66 20 74 68 65 0a 6e 65 78 74 20 62 69 74 2c 20 75 73 69 6e 67 20 74 68 65 20 73 lue.of.the.next.bit,.using.the.s
39460 61 6d 65 20 36 20 62 69 74 73 20 74 68 61 74 20 77 6f 75 6c 64 20 74 61 6b 65 20 74 6f 20 65 6e ame.6.bits.that.would.take.to.en
39480 63 6f 64 65 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 0a 61 6c 6f 6e 65 2e 20 54 68 69 73 20 73 65 code.the.position.alone..This.se
394a0 65 6d 73 20 74 6f 20 6e 65 65 64 20 36 36 20 73 6c 6f 74 73 20 28 74 77 69 63 65 20 74 68 65 20 ems.to.need.66.slots.(twice.the.
394c0 6e 75 6d 62 65 72 20 6f 66 20 70 6f 73 69 74 69 6f 6e 73 29 2c 20 62 75 74 20 66 6f 72 0a 70 6f number.of.positions),.but.for.po
394e0 73 69 74 69 6f 6e 73 20 30 20 61 6e 64 20 31 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6e 65 78 74 sitions.0.and.1.there.is.no.next
39500 20 62 69 74 2c 20 73 6f 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 73 6c 6f 74 73 20 6e 65 65 .bit,.so.the.number.of.slots.nee
39520 64 65 64 20 69 73 20 36 34 0a 28 30 20 74 6f 20 36 33 29 2e 0a 0a 54 68 65 20 36 20 62 69 74 73 ded.is.64.(0.to.63)...The.6.bits
39540 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 69 73 20 22 73 6c 6f 74 20 6e 75 6d 62 65 72 22 .representing.this."slot.number"
39560 20 61 72 65 20 74 68 65 6e 20 63 6f 6e 74 65 78 74 2d 63 6f 64 65 64 2e 0a 49 66 20 74 68 65 20 .are.then.context-coded..If.the.
39580 64 69 73 74 61 6e 63 65 20 69 73 20 40 77 7b 3e 3d 20 34 7d 2c 20 74 68 65 20 72 65 6d 61 69 6e distance.is.@w{>=.4},.the.remain
395a0 69 6e 67 20 62 69 74 73 20 61 72 65 20 65 6e 63 6f 64 65 64 20 61 73 20 66 6f 6c 6c 6f 77 73 2e ing.bits.are.encoded.as.follows.
395c0 0a 40 73 61 6d 70 7b 64 69 72 65 63 74 5f 62 69 74 73 7d 20 69 73 20 74 68 65 20 61 6d 6f 75 6e .@samp{direct_bits}.is.the.amoun
395e0 74 20 6f 66 20 72 65 6d 61 69 6e 69 6e 67 20 62 69 74 73 20 28 66 72 6f 6d 20 31 20 74 6f 20 33 t.of.remaining.bits.(from.1.to.3
39600 30 29 20 6e 65 65 64 65 64 0a 74 6f 20 66 6f 72 6d 20 61 20 63 6f 6d 70 6c 65 74 65 20 64 69 73 0).needed.to.form.a.complete.dis
39620 74 61 6e 63 65 2c 20 61 6e 64 20 69 73 20 63 61 6c 63 75 6c 61 74 65 64 20 61 73 20 40 77 7b 28 tance,.and.is.calculated.as.@w{(
39640 73 6c 6f 74 20 3e 3e 20 31 29 20 2d 20 31 7d 2e 0a 49 66 20 61 20 64 69 73 74 61 6e 63 65 20 6e slot.>>.1).-.1}..If.a.distance.n
39660 65 65 64 73 20 36 20 6f 72 20 6d 6f 72 65 20 64 69 72 65 63 74 5f 62 69 74 73 2c 20 74 68 65 20 eeds.6.or.more.direct_bits,.the.
39680 6c 61 73 74 20 34 20 62 69 74 73 20 61 72 65 20 65 6e 63 6f 64 65 64 0a 73 65 70 61 72 61 74 65 last.4.bits.are.encoded.separate
396a0 6c 79 2e 20 54 68 65 20 6c 61 73 74 20 70 69 65 63 65 20 28 61 6c 6c 20 74 68 65 20 64 69 72 65 ly..The.last.piece.(all.the.dire
396c0 63 74 5f 62 69 74 73 20 66 6f 72 20 64 69 73 74 61 6e 63 65 73 20 34 20 74 6f 20 31 32 37 0a 28 ct_bits.for.distances.4.to.127.(
396e0 73 6c 6f 74 73 20 34 20 74 6f 20 31 33 29 2c 20 6f 72 20 74 68 65 20 6c 61 73 74 20 34 20 62 69 slots.4.to.13),.or.the.last.4.bi
39700 74 73 20 66 6f 72 20 64 69 73 74 61 6e 63 65 73 20 40 77 7b 3e 3d 20 31 32 38 7d 0a 40 77 7b 28 ts.for.distances.@w{>=.128}.@w{(
39720 73 6c 6f 74 20 3e 3d 20 31 34 29 7d 29 20 69 73 20 63 6f 6e 74 65 78 74 2d 63 6f 64 65 64 20 69 slot.>=.14)}).is.context-coded.i
39740 6e 20 72 65 76 65 72 73 65 20 6f 72 64 65 72 20 28 66 72 6f 6d 20 4c 53 42 20 74 6f 20 4d 53 42 n.reverse.order.(from.LSB.to.MSB
39760 29 0a 62 65 63 61 75 73 65 20 62 65 74 77 65 65 6e 20 64 69 73 74 61 6e 63 65 73 20 74 68 65 20 ).because.between.distances.the.
39780 4c 53 42 20 74 65 6e 64 73 20 74 6f 20 63 6f 72 72 65 6c 61 74 65 20 62 65 74 74 65 72 20 74 68 LSB.tends.to.correlate.better.th
397a0 61 6e 20 6d 6f 72 65 0a 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 73 2e 20 46 6f 72 20 64 69 an.more.significant.bits..For.di
397c0 73 74 61 6e 63 65 73 20 40 77 7b 3e 3d 20 31 32 38 7d 2c 20 74 68 65 20 40 77 7b 40 73 61 6d 70 stances.@w{>=.128},.the.@w{@samp
397e0 7b 64 69 72 65 63 74 5f 62 69 74 73 20 2d 20 34 7d 7d 0a 70 61 72 74 20 69 73 20 65 6e 63 6f 64 {direct_bits.-.4}}.part.is.encod
39800 65 64 20 77 69 74 68 20 66 69 78 65 64 20 30 2e 35 20 70 72 6f 62 61 62 69 6c 69 74 79 2e 0a 0a ed.with.fixed.0.5.probability...
39820 40 6d 75 6c 74 69 74 61 62 6c 65 20 40 63 6f 6c 75 6d 6e 66 72 61 63 74 69 6f 6e 73 20 2e 35 20 @multitable.@columnfractions..5.
39840 2e 35 0a 40 68 65 61 64 69 74 65 6d 20 42 69 74 20 73 65 71 75 65 6e 63 65 20 40 74 61 62 20 44 .5.@headitem.Bit.sequence.@tab.D
39860 65 73 63 72 69 70 74 69 6f 6e 0a 40 69 74 65 6d 20 73 6c 6f 74 20 40 74 61 62 20 64 69 73 74 61 escription.@item.slot.@tab.dista
39880 6e 63 65 73 20 66 72 6f 6d 20 30 20 74 6f 20 33 0a 40 69 74 65 6d 20 73 6c 6f 74 20 2b 20 64 69 nces.from.0.to.3.@item.slot.+.di
398a0 72 65 63 74 5f 62 69 74 73 20 40 74 61 62 20 64 69 73 74 61 6e 63 65 73 20 66 72 6f 6d 20 34 20 rect_bits.@tab.distances.from.4.
398c0 74 6f 20 31 32 37 0a 40 69 74 65 6d 20 73 6c 6f 74 20 2b 20 28 64 69 72 65 63 74 5f 62 69 74 73 to.127.@item.slot.+.(direct_bits
398e0 20 2d 20 34 29 20 2b 20 34 20 62 69 74 73 20 40 74 61 62 20 64 69 73 74 61 6e 63 65 73 20 66 72 .-.4).+.4.bits.@tab.distances.fr
39900 6f 6d 20 31 32 38 20 74 6f 20 32 5e 33 32 20 2d 20 31 0a 40 65 6e 64 20 6d 75 6c 74 69 74 61 62 om.128.to.2^32.-.1.@end.multitab
39920 6c 65 0a 0a 40 73 70 20 31 0a 40 73 65 63 74 69 6f 6e 20 54 68 65 20 63 6f 64 69 6e 67 20 63 6f le..@sp.1.@section.The.coding.co
39940 6e 74 65 78 74 73 0a 0a 54 68 65 73 65 20 63 6f 6e 74 65 78 74 73 20 28 40 73 61 6d 70 7b 42 69 ntexts..These.contexts.(@samp{Bi
39960 74 5f 6d 6f 64 65 6c 7d 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 2c 20 61 72 65 20 69 6e 74 t_model}.in.the.source),.are.int
39980 65 67 65 72 73 20 6f 72 20 61 72 72 61 79 73 0a 6f 66 20 69 6e 74 65 67 65 72 73 20 72 65 70 72 egers.or.arrays.of.integers.repr
399a0 65 73 65 6e 74 69 6e 67 20 74 68 65 20 70 72 6f 62 61 62 69 6c 69 74 79 20 6f 66 20 74 68 65 20 esenting.the.probability.of.the.
399c0 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 62 69 74 20 62 65 69 6e 67 20 30 2e 0a 0a 54 68 65 20 corresponding.bit.being.0...The.
399e0 69 6e 64 69 63 65 73 20 75 73 65 64 20 69 6e 20 74 68 65 73 65 20 61 72 72 61 79 73 20 61 72 65 indices.used.in.these.arrays.are
39a00 3a 0a 0a 40 74 61 62 6c 65 20 40 73 61 6d 70 0a 40 69 74 65 6d 20 73 74 61 74 65 0a 41 20 73 74 :..@table.@samp.@item.state.A.st
39a20 61 74 65 20 6d 61 63 68 69 6e 65 20 28 40 73 61 6d 70 7b 53 74 61 74 65 7d 20 69 6e 20 74 68 65 ate.machine.(@samp{State}.in.the
39a40 20 73 6f 75 72 63 65 29 20 77 69 74 68 20 31 32 20 73 74 61 74 65 73 20 28 30 20 74 6f 20 31 31 .source).with.12.states.(0.to.11
39a60 29 20 63 6f 64 69 6e 67 0a 74 68 65 20 6c 61 74 65 73 74 20 32 20 74 6f 20 34 20 74 79 70 65 73 ).coding.the.latest.2.to.4.types
39a80 20 6f 66 20 73 65 71 75 65 6e 63 65 73 20 70 72 6f 63 65 73 73 65 64 2e 20 54 68 65 20 69 6e 69 .of.sequences.processed..The.ini
39aa0 74 69 61 6c 20 73 74 61 74 65 20 69 73 20 30 2e 0a 0a 40 69 74 65 6d 20 70 6f 73 5f 73 74 61 74 tial.state.is.0...@item.pos_stat
39ac0 65 0a 56 61 6c 75 65 20 6f 66 20 74 68 65 20 32 20 6c 65 61 73 74 20 73 69 67 6e 69 66 69 63 61 e.Value.of.the.2.least.significa
39ae0 6e 74 20 62 69 74 73 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 70 6f 73 69 74 69 6f 6e 20 nt.bits.of.the.current.position.
39b00 69 6e 20 74 68 65 0a 64 65 63 6f 64 65 64 20 64 61 74 61 2e 0a 0a 40 69 74 65 6d 20 6c 69 74 65 in.the.decoded.data...@item.lite
39b20 72 61 6c 5f 73 74 61 74 65 0a 56 61 6c 75 65 20 6f 66 20 74 68 65 20 33 20 6d 6f 73 74 20 73 69 ral_state.Value.of.the.3.most.si
39b40 67 6e 69 66 69 63 61 6e 74 20 62 69 74 73 20 6f 66 20 74 68 65 20 6c 61 74 65 73 74 20 62 79 74 gnificant.bits.of.the.latest.byt
39b60 65 20 64 65 63 6f 64 65 64 2e 0a 0a 40 69 74 65 6d 20 6c 65 6e 5f 73 74 61 74 65 0a 43 6f 64 65 e.decoded...@item.len_state.Code
39b80 64 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 6d 61 74 63 68 20 6c 65 6e d.value.of.the.current.match.len
39ba0 67 74 68 20 40 77 7b 28 6c 65 6e 67 74 68 20 2d 20 32 29 7d 2c 20 77 69 74 68 20 61 20 6d 61 78 gth.@w{(length.-.2)},.with.a.max
39bc0 69 6d 75 6d 0a 6f 66 20 33 2e 20 54 68 65 20 72 65 73 75 6c 74 69 6e 67 20 76 61 6c 75 65 20 69 imum.of.3..The.resulting.value.i
39be0 73 20 69 6e 20 74 68 65 20 72 61 6e 67 65 20 30 20 74 6f 20 33 2e 0a 0a 40 65 6e 64 20 74 61 62 s.in.the.range.0.to.3...@end.tab
39c00 6c 65 0a 0a 0a 54 68 65 20 74 79 70 65 73 20 6f 66 20 70 72 65 76 69 6f 75 73 20 73 65 71 75 65 le...The.types.of.previous.seque
39c20 6e 63 65 73 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 65 61 63 68 20 73 74 61 74 65 nces.corresponding.to.each.state
39c40 20 61 72 65 20 73 68 6f 77 6e 20 69 6e 20 74 68 65 0a 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c .are.shown.in.the.following.tabl
39c60 65 2e 20 40 73 61 6d 70 7b 21 6c 69 74 65 72 61 6c 7d 20 69 73 20 61 6e 79 20 73 65 71 75 65 6e e..@samp{!literal}.is.any.sequen
39c80 63 65 20 65 78 63 65 70 74 20 61 20 6c 69 74 65 72 61 6c 20 62 79 74 65 2e 0a 40 73 61 6d 70 7b ce.except.a.literal.byte..@samp{
39ca0 72 65 70 7d 20 69 73 20 61 6e 79 20 6f 6e 65 20 6f 66 20 40 73 61 6d 70 7b 72 65 70 30 7d 2c 20 rep}.is.any.one.of.@samp{rep0},.
39cc0 40 73 61 6d 70 7b 72 65 70 31 7d 2c 20 40 73 61 6d 70 7b 72 65 70 32 7d 2c 20 6f 72 0a 40 73 61 @samp{rep1},.@samp{rep2},.or.@sa
39ce0 6d 70 7b 72 65 70 33 7d 2e 20 54 68 65 20 6c 61 73 74 20 74 79 70 65 20 69 6e 20 65 61 63 68 20 mp{rep3}..The.last.type.in.each.
39d00 6c 69 6e 65 20 69 73 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 2e 0a 0a 40 6d 75 6c 74 69 line.is.the.most.recent...@multi
39d20 74 61 62 6c 65 20 7b 53 74 61 74 65 7d 20 7b 72 65 70 20 6f 72 20 28 21 6c 69 74 65 72 61 6c 2c table.{State}.{rep.or.(!literal,
39d40 20 73 68 6f 72 74 72 65 70 29 2c 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 65 72 61 6c 7d 0a 40 68 .shortrep),.literal,.literal}.@h
39d60 65 61 64 69 74 65 6d 20 53 74 61 74 65 20 40 74 61 62 20 54 79 70 65 73 20 6f 66 20 70 72 65 76 eaditem.State.@tab.Types.of.prev
39d80 69 6f 75 73 20 73 65 71 75 65 6e 63 65 73 0a 40 69 74 65 6d 20 20 30 20 40 74 61 62 20 6c 69 74 ious.sequences.@item..0.@tab.lit
39da0 65 72 61 6c 2c 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 65 72 61 6c 0a 40 69 74 65 6d 20 20 31 20 eral,.literal,.literal.@item..1.
39dc0 40 74 61 62 20 6d 61 74 63 68 2c 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 65 72 61 6c 0a 40 69 74 @tab.match,.literal,.literal.@it
39de0 65 6d 20 20 32 20 40 74 61 62 20 72 65 70 20 6f 72 20 28 21 6c 69 74 65 72 61 6c 2c 20 73 68 6f em..2.@tab.rep.or.(!literal,.sho
39e00 72 74 72 65 70 29 2c 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 65 72 61 6c 0a 40 69 74 65 6d 20 20 rtrep),.literal,.literal.@item..
39e20 33 20 40 74 61 62 20 6c 69 74 65 72 61 6c 2c 20 73 68 6f 72 74 72 65 70 2c 20 6c 69 74 65 72 61 3.@tab.literal,.shortrep,.litera
39e40 6c 2c 20 6c 69 74 65 72 61 6c 0a 40 69 74 65 6d 20 20 34 20 40 74 61 62 20 6d 61 74 63 68 2c 20 l,.literal.@item..4.@tab.match,.
39e60 6c 69 74 65 72 61 6c 0a 40 69 74 65 6d 20 20 35 20 40 74 61 62 20 72 65 70 20 6f 72 20 28 21 6c literal.@item..5.@tab.rep.or.(!l
39e80 69 74 65 72 61 6c 2c 20 73 68 6f 72 74 72 65 70 29 2c 20 6c 69 74 65 72 61 6c 0a 40 69 74 65 6d iteral,.shortrep),.literal.@item
39ea0 20 20 36 20 40 74 61 62 20 6c 69 74 65 72 61 6c 2c 20 73 68 6f 72 74 72 65 70 2c 20 6c 69 74 65 ..6.@tab.literal,.shortrep,.lite
39ec0 72 61 6c 0a 40 69 74 65 6d 20 20 37 20 40 74 61 62 20 6c 69 74 65 72 61 6c 2c 20 6d 61 74 63 68 ral.@item..7.@tab.literal,.match
39ee0 0a 40 69 74 65 6d 20 20 38 20 40 74 61 62 20 6c 69 74 65 72 61 6c 2c 20 72 65 70 0a 40 69 74 65 .@item..8.@tab.literal,.rep.@ite
39f00 6d 20 20 39 20 40 74 61 62 20 6c 69 74 65 72 61 6c 2c 20 73 68 6f 72 74 72 65 70 0a 40 69 74 65 m..9.@tab.literal,.shortrep.@ite
39f20 6d 20 31 30 20 40 74 61 62 20 21 6c 69 74 65 72 61 6c 2c 20 6d 61 74 63 68 0a 40 69 74 65 6d 20 m.10.@tab.!literal,.match.@item.
39f40 31 31 20 40 74 61 62 20 21 6c 69 74 65 72 61 6c 2c 20 28 72 65 70 20 6f 72 20 73 68 6f 72 74 72 11.@tab.!literal,.(rep.or.shortr
39f60 65 70 29 0a 40 65 6e 64 20 6d 75 6c 74 69 74 61 62 6c 65 0a 0a 40 73 70 20 31 0a 54 68 65 20 63 ep).@end.multitable..@sp.1.The.c
39f80 6f 6e 74 65 78 74 73 20 66 6f 72 20 64 65 63 6f 64 69 6e 67 20 74 68 65 20 74 79 70 65 20 6f 66 ontexts.for.decoding.the.type.of
39fa0 20 63 6f 64 69 6e 67 20 73 65 71 75 65 6e 63 65 20 61 72 65 3a 0a 0a 40 6d 75 6c 74 69 74 61 62 .coding.sequence.are:..@multitab
39fc0 6c 65 20 40 63 6f 6c 75 6d 6e 66 72 61 63 74 69 6f 6e 73 20 2e 32 20 2e 33 35 20 2e 34 35 0a 40 le.@columnfractions..2..35..45.@
39fe0 68 65 61 64 69 74 65 6d 20 4e 61 6d 65 20 40 74 61 62 20 49 6e 64 69 63 65 73 20 40 74 61 62 20 headitem.Name.@tab.Indices.@tab.
3a000 55 73 65 64 20 77 68 65 6e 0a 40 69 74 65 6d 20 62 6d 5f 6d 61 74 63 68 20 40 74 61 62 20 73 74 Used.when.@item.bm_match.@tab.st
3a020 61 74 65 2c 20 70 6f 73 5f 73 74 61 74 65 20 40 74 61 62 20 73 65 71 75 65 6e 63 65 20 73 74 61 ate,.pos_state.@tab.sequence.sta
3a040 72 74 0a 40 69 74 65 6d 20 62 6d 5f 72 65 70 20 40 74 61 62 20 73 74 61 74 65 20 40 74 61 62 20 rt.@item.bm_rep.@tab.state.@tab.
3a060 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 0a 40 69 74 65 6d 20 62 6d 5f 72 65 70 30 20 40 after.sequence.1.@item.bm_rep0.@
3a080 74 61 62 20 73 74 61 74 65 20 40 74 61 62 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 31 tab.state.@tab.after.sequence.11
3a0a0 0a 40 69 74 65 6d 20 62 6d 5f 72 65 70 31 20 40 74 61 62 20 73 74 61 74 65 20 40 74 61 62 20 61 .@item.bm_rep1.@tab.state.@tab.a
3a0c0 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 31 31 0a 40 69 74 65 6d 20 62 6d 5f 72 65 70 32 20 fter.sequence.111.@item.bm_rep2.
3a0e0 40 74 61 62 20 73 74 61 74 65 20 40 74 61 62 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 @tab.state.@tab.after.sequence.1
3a100 31 31 31 0a 40 69 74 65 6d 20 62 6d 5f 6c 65 6e 20 40 74 61 62 20 73 74 61 74 65 2c 20 70 6f 73 111.@item.bm_len.@tab.state,.pos
3a120 5f 73 74 61 74 65 20 40 74 61 62 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 31 30 0a 40 _state.@tab.after.sequence.110.@
3a140 65 6e 64 20 6d 75 6c 74 69 74 61 62 6c 65 0a 0a 40 73 70 20 31 0a 54 68 65 20 63 6f 6e 74 65 78 end.multitable..@sp.1.The.contex
3a160 74 73 20 66 6f 72 20 64 65 63 6f 64 69 6e 67 20 64 69 73 74 61 6e 63 65 73 20 61 72 65 3a 0a 0a ts.for.decoding.distances.are:..
3a180 40 6d 75 6c 74 69 74 61 62 6c 65 20 40 63 6f 6c 75 6d 6e 66 72 61 63 74 69 6f 6e 73 20 2e 32 20 @multitable.@columnfractions..2.
3a1a0 2e 33 20 2e 35 0a 40 68 65 61 64 69 74 65 6d 20 4e 61 6d 65 20 40 74 61 62 20 49 6e 64 69 63 65 .3..5.@headitem.Name.@tab.Indice
3a1c0 73 20 40 74 61 62 20 55 73 65 64 20 77 68 65 6e 0a 40 69 74 65 6d 20 62 6d 5f 64 69 73 5f 73 6c s.@tab.Used.when.@item.bm_dis_sl
3a1e0 6f 74 20 40 74 61 62 20 6c 65 6e 5f 73 74 61 74 65 2c 20 62 69 74 20 74 72 65 65 20 40 74 61 62 ot.@tab.len_state,.bit.tree.@tab
3a200 20 64 69 73 74 61 6e 63 65 20 73 74 61 72 74 0a 40 69 74 65 6d 20 62 6d 5f 64 69 73 20 40 74 61 .distance.start.@item.bm_dis.@ta
3a220 62 20 72 65 76 65 72 73 65 20 62 69 74 20 74 72 65 65 20 40 74 61 62 20 61 66 74 65 72 20 73 6c b.reverse.bit.tree.@tab.after.sl
3a240 6f 74 73 20 34 20 74 6f 20 31 33 0a 40 69 74 65 6d 20 62 6d 5f 61 6c 69 67 6e 20 40 74 61 62 20 ots.4.to.13.@item.bm_align.@tab.
3a260 72 65 76 65 72 73 65 20 62 69 74 20 74 72 65 65 20 40 74 61 62 20 66 6f 72 20 64 69 73 74 61 6e reverse.bit.tree.@tab.for.distan
3a280 63 65 73 20 3e 3d 20 31 32 38 2c 20 61 66 74 65 72 0a 66 69 78 65 64 20 70 72 6f 62 61 62 69 6c ces.>=.128,.after.fixed.probabil
3a2a0 69 74 79 20 62 69 74 73 0a 40 65 6e 64 20 6d 75 6c 74 69 74 61 62 6c 65 0a 0a 40 73 70 20 31 0a ity.bits.@end.multitable..@sp.1.
3a2c0 54 68 65 72 65 20 61 72 65 20 74 77 6f 20 73 65 70 61 72 61 74 65 20 73 65 74 73 20 6f 66 20 63 There.are.two.separate.sets.of.c
3a2e0 6f 6e 74 65 78 74 73 20 66 6f 72 20 6c 65 6e 67 74 68 73 20 28 40 73 61 6d 70 7b 4c 65 6e 5f 6d ontexts.for.lengths.(@samp{Len_m
3a300 6f 64 65 6c 7d 20 69 6e 0a 74 68 65 20 73 6f 75 72 63 65 29 2e 20 4f 6e 65 20 66 6f 72 20 6e 6f odel}.in.the.source)..One.for.no
3a320 72 6d 61 6c 20 6d 61 74 63 68 65 73 2c 20 74 68 65 20 6f 74 68 65 72 20 66 6f 72 20 72 65 70 65 rmal.matches,.the.other.for.repe
3a340 61 74 65 64 20 6d 61 74 63 68 65 73 2e 20 54 68 65 0a 63 6f 6e 74 65 78 74 73 20 69 6e 20 65 61 ated.matches..The.contexts.in.ea
3a360 63 68 20 4c 65 6e 5f 6d 6f 64 65 6c 20 61 72 65 20 28 73 65 65 20 40 73 61 6d 70 7b 64 65 63 6f ch.Len_model.are.(see.@samp{deco
3a380 64 65 5f 6c 65 6e 7d 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 3a 0a 0a 40 6d 75 6c 74 69 74 de_len}.in.the.source):..@multit
3a3a0 61 62 6c 65 20 40 63 6f 6c 75 6d 6e 66 72 61 63 74 69 6f 6e 73 20 2e 32 20 2e 34 20 2e 34 0a 40 able.@columnfractions..2..4..4.@
3a3c0 68 65 61 64 69 74 65 6d 20 4e 61 6d 65 20 40 74 61 62 20 49 6e 64 69 63 65 73 20 40 74 61 62 20 headitem.Name.@tab.Indices.@tab.
3a3e0 55 73 65 64 20 77 68 65 6e 0a 40 69 74 65 6d 20 63 68 6f 69 63 65 31 20 40 74 61 62 20 6e 6f 6e Used.when.@item.choice1.@tab.non
3a400 65 20 40 74 61 62 20 6c 65 6e 67 74 68 20 73 74 61 72 74 0a 40 69 74 65 6d 20 63 68 6f 69 63 65 e.@tab.length.start.@item.choice
3a420 32 20 40 74 61 62 20 6e 6f 6e 65 20 40 74 61 62 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 2.@tab.none.@tab.after.sequence.
3a440 31 0a 40 69 74 65 6d 20 62 6d 5f 6c 6f 77 20 40 74 61 62 20 70 6f 73 5f 73 74 61 74 65 2c 20 62 1.@item.bm_low.@tab.pos_state,.b
3a460 69 74 20 74 72 65 65 20 40 74 61 62 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 30 0a 40 69 it.tree.@tab.after.sequence.0.@i
3a480 74 65 6d 20 62 6d 5f 6d 69 64 20 40 74 61 62 20 70 6f 73 5f 73 74 61 74 65 2c 20 62 69 74 20 74 tem.bm_mid.@tab.pos_state,.bit.t
3a4a0 72 65 65 20 40 74 61 62 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 30 0a 40 69 74 65 6d ree.@tab.after.sequence.10.@item
3a4c0 20 62 6d 5f 68 69 67 68 20 40 74 61 62 20 62 69 74 20 74 72 65 65 20 40 74 61 62 20 61 66 74 65 .bm_high.@tab.bit.tree.@tab.afte
3a4e0 72 20 73 65 71 75 65 6e 63 65 20 31 31 0a 40 65 6e 64 20 6d 75 6c 74 69 74 61 62 6c 65 0a 0a 40 r.sequence.11.@end.multitable..@
3a500 73 70 20 31 0a 54 68 65 20 63 6f 6e 74 65 78 74 20 61 72 72 61 79 20 40 73 61 6d 70 7b 62 6d 5f sp.1.The.context.array.@samp{bm_
3a520 6c 69 74 65 72 61 6c 7d 20 69 73 20 73 70 65 63 69 61 6c 2e 20 49 6e 20 70 72 69 6e 63 69 70 6c literal}.is.special..In.principl
3a540 65 20 69 74 20 61 63 74 73 20 61 73 0a 61 20 6e 6f 72 6d 61 6c 20 62 69 74 20 74 72 65 65 20 63 e.it.acts.as.a.normal.bit.tree.c
3a560 6f 6e 74 65 78 74 2c 20 74 68 65 20 6f 6e 65 20 73 65 6c 65 63 74 65 64 20 62 79 20 40 73 61 6d ontext,.the.one.selected.by.@sam
3a580 70 7b 6c 69 74 65 72 61 6c 5f 73 74 61 74 65 7d 2e 20 42 75 74 0a 69 66 20 74 68 65 20 70 72 65 p{literal_state}..But.if.the.pre
3a5a0 76 69 6f 75 73 20 64 65 63 6f 64 65 64 20 62 79 74 65 20 77 61 73 20 6e 6f 74 20 61 20 6c 69 74 vious.decoded.byte.was.not.a.lit
3a5c0 65 72 61 6c 2c 20 74 77 6f 20 6f 74 68 65 72 20 62 69 74 20 74 72 65 65 0a 63 6f 6e 74 65 78 74 eral,.two.other.bit.tree.context
3a5e0 73 20 61 72 65 20 75 73 65 64 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 76 61 6c 75 s.are.used.depending.on.the.valu
3a600 65 20 6f 66 20 65 61 63 68 20 62 69 74 20 69 6e 0a 40 73 61 6d 70 7b 6d 61 74 63 68 5f 62 79 74 e.of.each.bit.in.@samp{match_byt
3a620 65 7d 20 28 74 68 65 20 62 79 74 65 20 61 74 20 74 68 65 20 6c 61 74 65 73 74 20 75 73 65 64 20 e}.(the.byte.at.the.latest.used.
3a640 64 69 73 74 61 6e 63 65 29 2c 20 75 6e 74 69 6c 20 61 20 62 69 74 20 69 73 0a 64 65 63 6f 64 65 distance),.until.a.bit.is.decode
3a660 64 20 74 68 61 74 20 69 73 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 69 74 73 20 63 6f 72 d.that.is.different.from.its.cor
3a680 72 65 73 70 6f 6e 64 69 6e 67 20 62 69 74 20 69 6e 0a 40 73 61 6d 70 7b 6d 61 74 63 68 5f 62 79 responding.bit.in.@samp{match_by
3a6a0 74 65 7d 2e 20 41 66 74 65 72 20 74 68 65 20 66 69 72 73 74 20 64 69 66 66 65 72 65 6e 63 65 20 te}..After.the.first.difference.
3a6c0 69 73 20 66 6f 75 6e 64 2c 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 0a 62 79 74 65 20 69 is.found,.the.rest.of.the.byte.i
3a6e0 73 20 64 65 63 6f 64 65 64 20 75 73 69 6e 67 20 74 68 65 20 6e 6f 72 6d 61 6c 20 62 69 74 20 74 s.decoded.using.the.normal.bit.t
3a700 72 65 65 20 63 6f 6e 74 65 78 74 2e 20 28 53 65 65 0a 40 73 61 6d 70 7b 64 65 63 6f 64 65 5f 6d ree.context..(See.@samp{decode_m
3a720 61 74 63 68 65 64 7d 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 2e 0a 0a 40 73 65 63 74 69 6f atched}.in.the.source)...@sectio
3a740 6e 20 54 68 65 20 72 61 6e 67 65 20 64 65 63 6f 64 65 72 0a 0a 54 68 65 20 4c 5a 4d 41 20 73 74 n.The.range.decoder..The.LZMA.st
3a760 72 65 61 6d 20 69 73 20 63 6f 6e 73 75 6d 65 64 20 6f 6e 65 20 62 79 74 65 20 61 74 20 61 20 74 ream.is.consumed.one.byte.at.a.t
3a780 69 6d 65 20 62 79 20 74 68 65 20 72 61 6e 67 65 20 64 65 63 6f 64 65 72 2e 0a 28 53 65 65 20 40 ime.by.the.range.decoder..(See.@
3a7a0 73 61 6d 70 7b 6e 6f 72 6d 61 6c 69 7a 65 7d 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 2e 20 samp{normalize}.in.the.source)..
3a7c0 45 76 65 72 79 20 62 79 74 65 20 63 6f 6e 73 75 6d 65 64 20 70 72 6f 64 75 63 65 73 20 61 0a 76 Every.byte.consumed.produces.a.v
3a7e0 61 72 69 61 62 6c 65 20 6e 75 6d 62 65 72 20 6f 66 20 64 65 63 6f 64 65 64 20 62 69 74 73 2c 20 ariable.number.of.decoded.bits,.
3a800 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 68 6f 77 20 77 65 6c 6c 20 74 68 65 73 65 20 62 69 74 73 depending.on.how.well.these.bits
3a820 20 61 67 72 65 65 0a 77 69 74 68 20 74 68 65 69 72 20 63 6f 6e 74 65 78 74 2e 20 28 53 65 65 20 .agree.with.their.context..(See.
3a840 40 73 61 6d 70 7b 64 65 63 6f 64 65 5f 62 69 74 7d 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 @samp{decode_bit}.in.the.source)
3a860 2e 0a 0a 54 68 65 20 72 61 6e 67 65 20 64 65 63 6f 64 65 72 20 73 74 61 74 65 20 63 6f 6e 73 69 ...The.range.decoder.state.consi
3a880 73 74 73 20 6f 66 20 74 77 6f 20 75 6e 73 69 67 6e 65 64 20 33 32 2d 62 69 74 20 76 61 72 69 61 sts.of.two.unsigned.32-bit.varia
3a8a0 62 6c 65 73 3a 0a 40 73 61 6d 70 7b 72 61 6e 67 65 7d 20 28 72 65 70 72 65 73 65 6e 74 69 6e 67 bles:.@samp{range}.(representing
3a8c0 20 74 68 65 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 70 61 72 74 20 6f 66 20 74 68 .the.most.significant.part.of.th
3a8e0 65 20 72 61 6e 67 65 20 73 69 7a 65 0a 6e 6f 74 20 79 65 74 20 64 65 63 6f 64 65 64 29 20 61 6e e.range.size.not.yet.decoded).an
3a900 64 20 40 73 61 6d 70 7b 63 6f 64 65 7d 20 28 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 d.@samp{code}.(representing.the.
3a920 63 75 72 72 65 6e 74 20 70 6f 69 6e 74 20 77 69 74 68 69 6e 0a 40 73 61 6d 70 7b 72 61 6e 67 65 current.point.within.@samp{range
3a940 7d 29 2e 20 40 73 61 6d 70 7b 72 61 6e 67 65 7d 20 69 73 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 })..@samp{range}.is.initialized.
3a960 74 6f 20 40 77 7b 32 5e 33 32 20 2d 20 31 7d 2c 20 61 6e 64 0a 40 73 61 6d 70 7b 63 6f 64 65 7d to.@w{2^32.-.1},.and.@samp{code}
3a980 20 69 73 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 74 6f 20 30 2e 0a 0a 40 73 65 63 74 69 6f 6e 20 .is.initialized.to.0...@section.
3a9a0 44 65 63 6f 64 69 6e 67 20 61 6e 64 20 63 68 65 63 6b 69 6e 67 20 74 68 65 20 4c 5a 4d 41 20 73 Decoding.and.checking.the.LZMA.s
3a9c0 74 72 65 61 6d 0a 0a 41 66 74 65 72 20 64 65 63 6f 64 69 6e 67 20 74 68 65 20 6d 65 6d 62 65 72 tream..After.decoding.the.member
3a9e0 20 68 65 61 64 65 72 20 61 6e 64 20 6f 62 74 61 69 6e 69 6e 67 20 74 68 65 20 64 69 63 74 69 6f .header.and.obtaining.the.dictio
3aa00 6e 61 72 79 20 73 69 7a 65 2c 20 74 68 65 0a 72 61 6e 67 65 20 64 65 63 6f 64 65 72 20 69 73 20 nary.size,.the.range.decoder.is.
3aa20 69 6e 69 74 69 61 6c 69 7a 65 64 20 61 6e 64 20 74 68 65 6e 20 74 68 65 20 4c 5a 4d 41 20 64 65 initialized.and.then.the.LZMA.de
3aa40 63 6f 64 65 72 20 65 6e 74 65 72 73 20 61 20 6c 6f 6f 70 0a 28 73 65 65 20 40 73 61 6d 70 7b 64 coder.enters.a.loop.(see.@samp{d
3aa60 65 63 6f 64 65 5f 6d 65 6d 62 65 72 7d 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 20 77 68 65 ecode_member}.in.the.source).whe
3aa80 72 65 20 69 74 20 69 6e 76 6f 6b 65 73 20 74 68 65 20 72 61 6e 67 65 0a 64 65 63 6f 64 65 72 20 re.it.invokes.the.range.decoder.
3aaa0 77 69 74 68 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 63 6f 6e 74 65 78 74 73 20 74 6f with.the.appropriate.contexts.to
3aac0 20 64 65 63 6f 64 65 20 74 68 65 20 64 69 66 66 65 72 65 6e 74 20 63 6f 64 69 6e 67 0a 73 65 71 .decode.the.different.coding.seq
3aae0 75 65 6e 63 65 73 20 28 6d 61 74 63 68 65 73 2c 20 72 65 70 65 61 74 65 64 20 6d 61 74 63 68 65 uences.(matches,.repeated.matche
3ab00 73 2c 20 61 6e 64 20 6c 69 74 65 72 61 6c 20 62 79 74 65 73 29 2c 20 75 6e 74 69 6c 20 74 68 65 s,.and.literal.bytes),.until.the
3ab20 20 27 45 6e 64 0a 4f 66 20 53 74 72 65 61 6d 27 20 6d 61 72 6b 65 72 20 69 73 20 64 65 63 6f 64 .'End.Of.Stream'.marker.is.decod
3ab40 65 64 2e 0a 0a 4f 6e 63 65 20 74 68 65 20 27 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 27 20 6d 61 ed...Once.the.'End.Of.Stream'.ma
3ab60 72 6b 65 72 20 68 61 73 20 62 65 65 6e 20 64 65 63 6f 64 65 64 2c 20 74 68 65 20 64 65 63 6f 6d rker.has.been.decoded,.the.decom
3ab80 70 72 65 73 73 6f 72 20 72 65 61 64 73 20 61 6e 64 0a 64 65 63 6f 64 65 73 20 74 68 65 20 6d 65 pressor.reads.and.decodes.the.me
3aba0 6d 62 65 72 20 74 72 61 69 6c 65 72 2c 20 61 6e 64 20 63 68 65 63 6b 73 20 74 68 61 74 20 74 68 mber.trailer,.and.checks.that.th
3abc0 65 20 74 68 72 65 65 20 69 6e 74 65 67 72 69 74 79 20 66 61 63 74 6f 72 73 0a 73 74 6f 72 65 64 e.three.integrity.factors.stored
3abe0 20 74 68 65 72 65 20 28 43 52 43 2c 20 64 61 74 61 20 73 69 7a 65 2c 20 61 6e 64 20 6d 65 6d 62 .there.(CRC,.data.size,.and.memb
3ac00 65 72 20 73 69 7a 65 29 20 6d 61 74 63 68 20 74 68 6f 73 65 20 63 6f 6d 70 75 74 65 64 20 66 72 er.size).match.those.computed.fr
3ac20 6f 6d 20 74 68 65 0a 64 61 74 61 2e 0a 0a 0a 40 6e 6f 64 65 20 51 75 61 6c 69 74 79 20 61 73 73 om.the.data....@node.Quality.ass
3ac40 75 72 61 6e 63 65 0a 40 63 68 61 70 74 65 72 20 44 65 73 69 67 6e 2c 20 64 65 76 65 6c 6f 70 6d urance.@chapter.Design,.developm
3ac60 65 6e 74 2c 20 61 6e 64 20 74 65 73 74 69 6e 67 20 6f 66 20 6c 7a 69 70 0a 40 63 69 6e 64 65 78 ent,.and.testing.of.lzip.@cindex
3ac80 20 71 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 65 0a 0a 54 68 65 72 65 20 61 72 65 20 74 77 .quality.assurance..There.are.tw
3aca0 6f 20 77 61 79 73 20 6f 66 20 63 6f 6e 73 74 72 75 63 74 69 6e 67 20 61 20 73 6f 66 74 77 61 72 o.ways.of.constructing.a.softwar
3acc0 65 20 64 65 73 69 67 6e 3a 20 4f 6e 65 20 77 61 79 20 69 73 20 74 6f 20 6d 61 6b 65 20 69 74 0a e.design:.One.way.is.to.make.it.
3ace0 73 6f 20 73 69 6d 70 6c 65 20 74 68 61 74 20 74 68 65 72 65 20 61 72 65 20 6f 62 76 69 6f 75 73 so.simple.that.there.are.obvious
3ad00 6c 79 20 6e 6f 20 64 65 66 69 63 69 65 6e 63 69 65 73 20 61 6e 64 20 74 68 65 20 6f 74 68 65 72 ly.no.deficiencies.and.the.other
3ad20 20 77 61 79 20 69 73 20 74 6f 0a 6d 61 6b 65 20 69 74 20 73 6f 20 63 6f 6d 70 6c 69 63 61 74 65 .way.is.to.make.it.so.complicate
3ad40 64 20 74 68 61 74 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 6f 62 76 69 6f 75 73 20 64 65 66 69 d.that.there.are.no.obvious.defi
3ad60 63 69 65 6e 63 69 65 73 2e 20 54 68 65 20 66 69 72 73 74 0a 6d 65 74 68 6f 64 20 69 73 20 66 61 ciencies..The.first.method.is.fa
3ad80 72 20 6d 6f 72 65 20 64 69 66 66 69 63 75 6c 74 2e 40 2a 0a 2d 2d 2d 20 43 2e 41 2e 52 2e 20 48 r.more.difficult.@*.---.C.A.R..H
3ada0 6f 61 72 65 0a 0a 4c 7a 69 70 20 68 61 73 20 62 65 65 6e 20 64 65 73 69 67 6e 65 64 2c 20 77 72 oare..Lzip.has.been.designed,.wr
3adc0 69 74 74 65 6e 2c 20 61 6e 64 20 74 65 73 74 65 64 20 77 69 74 68 20 67 72 65 61 74 20 63 61 72 itten,.and.tested.with.great.car
3ade0 65 20 74 6f 20 72 65 70 6c 61 63 65 20 67 7a 69 70 0a 61 6e 64 20 62 7a 69 70 32 20 61 73 20 67 e.to.replace.gzip.and.bzip2.as.g
3ae00 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 74 eneral-purpose.compressed.format
3ae20 20 66 6f 72 20 55 6e 69 78 2d 6c 69 6b 65 20 73 79 73 74 65 6d 73 2e 20 54 68 69 73 0a 63 68 61 .for.Unix-like.systems..This.cha
3ae40 70 74 65 72 20 64 65 73 63 72 69 62 65 73 20 74 68 65 20 6c 65 73 73 6f 6e 73 20 6c 65 61 72 6e pter.describes.the.lessons.learn
3ae60 65 64 20 66 72 6f 6d 20 74 68 65 73 65 20 70 72 65 76 69 6f 75 73 20 66 6f 72 6d 61 74 73 2c 20 ed.from.these.previous.formats,.
3ae80 61 6e 64 20 74 68 65 69 72 0a 61 70 70 6c 69 63 61 74 69 6f 6e 20 74 6f 20 74 68 65 20 64 65 73 and.their.application.to.the.des
3aea0 69 67 6e 20 6f 66 20 6c 7a 69 70 2e 20 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 73 70 65 ign.of.lzip..The.lzip.format.spe
3aec0 63 69 66 69 63 61 74 69 6f 6e 20 68 61 73 20 62 65 65 6e 0a 72 65 76 69 65 77 65 64 20 63 61 72 cification.has.been.reviewed.car
3aee0 65 66 75 6c 6c 79 20 61 6e 64 20 69 73 20 62 65 6c 69 65 76 65 64 20 74 6f 20 62 65 20 66 72 65 efully.and.is.believed.to.be.fre
3af00 65 20 66 72 6f 6d 20 64 65 73 69 67 6e 20 65 72 72 6f 72 73 2e 0a 0a 40 73 65 63 74 69 6f 6e 20 e.from.design.errors...@section.
3af20 46 6f 72 6d 61 74 20 64 65 73 69 67 6e 0a 0a 57 68 65 6e 20 67 7a 69 70 20 77 61 73 20 64 65 73 Format.design..When.gzip.was.des
3af40 69 67 6e 65 64 20 69 6e 20 31 39 39 32 2c 20 63 6f 6d 70 75 74 65 72 73 20 61 6e 64 20 6f 70 65 igned.in.1992,.computers.and.ope
3af60 72 61 74 69 6e 67 20 73 79 73 74 65 6d 73 20 77 65 72 65 20 6c 65 73 73 0a 63 61 70 61 62 6c 65 rating.systems.were.less.capable
3af80 20 74 68 61 6e 20 74 68 65 79 20 61 72 65 20 74 6f 64 61 79 2e 20 54 68 65 20 64 65 73 69 67 6e .than.they.are.today..The.design
3afa0 65 72 73 20 6f 66 20 67 7a 69 70 20 74 72 69 65 64 20 74 6f 20 77 6f 72 6b 20 61 72 6f 75 6e 64 ers.of.gzip.tried.to.work.around
3afc0 20 73 6f 6d 65 0a 6f 66 20 74 68 6f 73 65 20 6c 69 6d 69 74 61 74 69 6f 6e 73 2c 20 6c 69 6b 65 .some.of.those.limitations,.like
3afe0 20 38 2e 33 20 66 69 6c 65 20 6e 61 6d 65 73 2c 20 77 69 74 68 20 61 64 64 69 74 69 6f 6e 61 6c .8.3.file.names,.with.additional
3b000 20 66 69 65 6c 64 73 20 69 6e 20 74 68 65 0a 66 69 6c 65 20 66 6f 72 6d 61 74 2e 0a 0a 54 6f 64 .fields.in.the.file.format...Tod
3b020 61 79 20 74 68 6f 73 65 20 6c 69 6d 69 74 61 74 69 6f 6e 73 20 68 61 76 65 20 6d 6f 73 74 6c 79 ay.those.limitations.have.mostly
3b040 20 64 69 73 61 70 70 65 61 72 65 64 2c 20 61 6e 64 20 74 68 65 20 66 6f 72 6d 61 74 20 6f 66 20 .disappeared,.and.the.format.of.
3b060 67 7a 69 70 20 68 61 73 0a 70 72 6f 76 65 64 20 74 6f 20 62 65 20 75 6e 6e 65 63 65 73 73 61 72 gzip.has.proved.to.be.unnecessar
3b080 69 6c 79 20 63 6f 6d 70 6c 69 63 61 74 65 64 2e 20 49 74 20 69 6e 63 6c 75 64 65 73 20 66 69 65 ily.complicated..It.includes.fie
3b0a0 6c 64 73 20 74 68 61 74 20 77 65 72 65 20 6e 65 76 65 72 0a 75 73 65 64 2c 20 6f 74 68 65 72 73 lds.that.were.never.used,.others
3b0c0 20 74 68 61 74 20 68 61 76 65 20 6c 6f 73 74 20 74 68 65 69 72 20 75 73 65 66 75 6c 6e 65 73 73 .that.have.lost.their.usefulness
3b0e0 2c 20 61 6e 64 20 66 69 6e 61 6c 6c 79 20 6f 74 68 65 72 73 20 74 68 61 74 20 68 61 76 65 0a 62 ,.and.finally.others.that.have.b
3b100 65 63 6f 6d 65 20 74 6f 6f 20 6c 69 6d 69 74 65 64 2e 0a 0a 42 7a 69 70 32 20 77 61 73 20 64 65 ecome.too.limited...Bzip2.was.de
3b120 73 69 67 6e 65 64 20 35 20 79 65 61 72 73 20 6c 61 74 65 72 2c 20 61 6e 64 20 69 74 73 20 66 6f signed.5.years.later,.and.its.fo
3b140 72 6d 61 74 20 69 73 20 73 69 6d 70 6c 65 72 20 74 68 61 6e 20 74 68 65 20 6f 6e 65 20 6f 66 0a rmat.is.simpler.than.the.one.of.
3b160 67 7a 69 70 2e 20 42 6f 74 68 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 20 6c 61 63 6b 20 74 gzip..Both.gzip.and.bzip2.lack.t
3b180 68 65 20 66 69 65 6c 64 73 20 72 65 71 75 69 72 65 64 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 he.fields.required.to.implement.
3b1a0 61 20 72 65 6c 69 61 62 6c 65 0a 61 6e 64 20 65 66 66 69 63 69 65 6e 74 20 40 6f 70 74 69 6f 6e a.reliable.and.efficient.@option
3b1c0 7b 2d 2d 6c 69 73 74 7d 20 6f 70 65 72 61 74 69 6f 6e 2e 0a 0a 50 72 6f 62 61 62 6c 79 20 74 68 {--list}.operation...Probably.th
3b1e0 65 20 77 6f 72 73 74 20 64 65 66 65 63 74 20 6f 66 20 74 68 65 20 67 7a 69 70 20 66 6f 72 6d 61 e.worst.defect.of.the.gzip.forma
3b200 74 20 66 72 6f 6d 20 74 68 65 20 70 6f 69 6e 74 20 6f 66 20 76 69 65 77 20 6f 66 20 64 61 74 61 t.from.the.point.of.view.of.data
3b220 0a 73 61 66 65 74 79 20 69 73 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 73 69 7a 65 20 6f 66 20 .safety.is.the.variable.size.of.
3b240 69 74 73 20 68 65 61 64 65 72 2e 20 49 66 20 74 68 65 20 62 79 74 65 20 61 74 20 6f 66 66 73 65 its.header..If.the.byte.at.offse
3b260 74 20 33 20 28 66 6c 61 67 73 29 0a 6f 66 20 61 20 67 7a 69 70 20 6d 65 6d 62 65 72 20 67 65 74 t.3.(flags).of.a.gzip.member.get
3b280 73 20 63 6f 72 72 75 70 74 65 64 2c 20 69 74 20 6d 61 79 20 62 65 63 6f 6d 65 20 64 69 66 66 69 s.corrupted,.it.may.become.diffi
3b2a0 63 75 6c 74 20 74 6f 20 72 65 63 6f 76 65 72 20 74 68 65 0a 64 61 74 61 2c 20 65 76 65 6e 20 69 cult.to.recover.the.data,.even.i
3b2c0 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 62 6c 6f 63 6b 73 20 61 72 65 20 69 6e 74 61 f.the.compressed.blocks.are.inta
3b2e0 63 74 2c 20 62 65 63 61 75 73 65 20 69 74 20 63 61 6e 27 74 20 62 65 20 6b 6e 6f 77 6e 0a 77 69 ct,.because.it.can't.be.known.wi
3b300 74 68 20 63 65 72 74 61 69 6e 74 79 20 77 68 65 72 65 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 th.certainty.where.the.compresse
3b320 64 20 62 6c 6f 63 6b 73 20 62 65 67 69 6e 2e 0a 0a 42 79 20 63 6f 6e 74 72 61 73 74 2c 20 74 68 d.blocks.begin...By.contrast,.th
3b340 65 20 68 65 61 64 65 72 20 6f 66 20 61 20 6c 7a 69 70 20 6d 65 6d 62 65 72 20 68 61 73 20 61 20 e.header.of.a.lzip.member.has.a.
3b360 66 69 78 65 64 20 6c 65 6e 67 74 68 20 6f 66 20 36 2e 20 54 68 65 20 4c 5a 4d 41 0a 73 74 72 65 fixed.length.of.6..The.LZMA.stre
3b380 61 6d 20 69 6e 20 61 20 6c 7a 69 70 20 6d 65 6d 62 65 72 20 61 6c 77 61 79 73 20 73 74 61 72 74 am.in.a.lzip.member.always.start
3b3a0 73 20 61 74 20 6f 66 66 73 65 74 20 36 2c 20 6d 61 6b 69 6e 67 20 69 74 20 74 72 69 76 69 61 6c s.at.offset.6,.making.it.trivial
3b3c0 20 74 6f 0a 72 65 63 6f 76 65 72 20 74 68 65 20 64 61 74 61 20 65 76 65 6e 20 69 66 20 74 68 65 .to.recover.the.data.even.if.the
3b3e0 20 77 68 6f 6c 65 20 68 65 61 64 65 72 20 62 65 63 6f 6d 65 73 20 63 6f 72 72 75 70 74 2e 0a 0a .whole.header.becomes.corrupt...
3b400 42 7a 69 70 32 20 61 6c 73 6f 20 70 72 6f 76 69 64 65 73 20 61 20 68 65 61 64 65 72 20 6f 66 20 Bzip2.also.provides.a.header.of.
3b420 66 69 78 65 64 20 6c 65 6e 67 74 68 20 61 6e 64 20 6d 61 72 6b 73 20 74 68 65 20 62 65 67 69 6e fixed.length.and.marks.the.begin
3b440 20 61 6e 64 20 65 6e 64 20 6f 66 0a 65 61 63 68 20 63 6f 6d 70 72 65 73 73 65 64 20 62 6c 6f 63 .and.end.of.each.compressed.bloc
3b460 6b 20 77 69 74 68 20 73 69 78 20 6d 61 67 69 63 20 62 79 74 65 73 2c 20 6d 61 6b 69 6e 67 20 69 k.with.six.magic.bytes,.making.i
3b480 74 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 66 69 6e 64 20 74 68 65 0a 63 6f 6d 70 72 65 73 73 65 t.possible.to.find.the.compresse
3b4a0 64 20 62 6c 6f 63 6b 73 20 65 76 65 6e 20 69 6e 20 63 61 73 65 20 6f 66 20 66 69 6c 65 20 64 61 d.blocks.even.in.case.of.file.da
3b4c0 6d 61 67 65 2e 20 42 75 74 20 62 7a 69 70 32 20 64 6f 65 73 20 6e 6f 74 20 73 74 6f 72 65 20 74 mage..But.bzip2.does.not.store.t
3b4e0 68 65 0a 73 69 7a 65 20 6f 66 20 65 61 63 68 20 63 6f 6d 70 72 65 73 73 65 64 20 62 6c 6f 63 6b he.size.of.each.compressed.block
3b500 2c 20 61 73 20 6c 7a 69 70 20 64 6f 65 73 2e 0a 0a 4c 7a 69 70 72 65 63 6f 76 65 72 20 69 73 20 ,.as.lzip.does...Lziprecover.is.
3b520 61 62 6c 65 20 74 6f 20 70 72 6f 76 69 64 65 20 75 6e 69 71 75 65 20 64 61 74 61 20 72 65 63 6f able.to.provide.unique.data.reco
3b540 76 65 72 79 20 63 61 70 61 62 69 6c 69 74 69 65 73 20 62 65 63 61 75 73 65 20 74 68 65 0a 6c 7a very.capabilities.because.the.lz
3b560 69 70 20 66 6f 72 6d 61 74 20 69 73 20 65 78 74 72 61 6f 72 64 69 6e 61 72 69 6c 79 20 73 61 66 ip.format.is.extraordinarily.saf
3b580 65 2e 20 54 68 65 20 73 69 6d 70 6c 65 20 61 6e 64 20 73 61 66 65 20 64 65 73 69 67 6e 20 6f 66 e..The.simple.and.safe.design.of
3b5a0 20 74 68 65 20 66 69 6c 65 0a 66 6f 72 6d 61 74 20 63 6f 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 .the.file.format.complements.the
3b5c0 20 65 6d 62 65 64 64 65 64 20 65 72 72 6f 72 20 64 65 74 65 63 74 69 6f 6e 20 70 72 6f 76 69 64 .embedded.error.detection.provid
3b5e0 65 64 20 62 79 20 74 68 65 20 4c 5a 4d 41 20 64 61 74 61 0a 73 74 72 65 61 6d 2e 20 41 6e 79 20 ed.by.the.LZMA.data.stream..Any.
3b600 64 69 73 74 61 6e 63 65 20 6c 61 72 67 65 72 20 74 68 61 6e 20 74 68 65 20 64 69 63 74 69 6f 6e distance.larger.than.the.diction
3b620 61 72 79 20 73 69 7a 65 20 61 63 74 73 20 61 73 20 61 20 66 6f 72 62 69 64 64 65 6e 0a 73 79 6d ary.size.acts.as.a.forbidden.sym
3b640 62 6f 6c 2c 20 61 6c 6c 6f 77 69 6e 67 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 74 bol,.allowing.the.decompressor.t
3b660 6f 20 64 65 74 65 63 74 20 74 68 65 20 61 70 70 72 6f 78 69 6d 61 74 65 20 70 6f 73 69 74 69 6f o.detect.the.approximate.positio
3b680 6e 20 6f 66 0a 65 72 72 6f 72 73 2c 20 61 6e 64 20 6c 65 61 76 69 6e 67 20 6c 69 74 74 6c 65 20 n.of.errors,.and.leaving.little.
3b6a0 77 6f 72 6b 20 66 6f 72 20 74 68 65 20 63 68 65 63 6b 20 73 65 71 75 65 6e 63 65 20 28 43 52 43 work.for.the.check.sequence.(CRC
3b6c0 20 61 6e 64 20 64 61 74 61 20 73 69 7a 65 73 29 0a 69 6e 20 74 68 65 20 64 65 74 65 63 74 69 6f .and.data.sizes).in.the.detectio
3b6e0 6e 20 6f 66 20 65 72 72 6f 72 73 2e 20 4c 7a 69 70 20 69 73 20 75 73 75 61 6c 6c 79 20 61 62 6c n.of.errors..Lzip.is.usually.abl
3b700 65 20 74 6f 20 64 65 74 65 63 74 20 61 6c 6c 20 70 6f 73 73 69 62 6c 65 20 62 69 74 0a 66 6c 69 e.to.detect.all.possible.bit.fli
3b720 70 73 20 69 6e 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 77 69 74 68 6f 75 ps.in.the.compressed.data.withou
3b740 74 20 72 65 73 6f 72 74 69 6e 67 20 74 6f 20 74 68 65 20 63 68 65 63 6b 20 73 65 71 75 65 6e 63 t.resorting.to.the.check.sequenc
3b760 65 2e 20 49 74 0a 77 6f 75 6c 64 20 62 65 20 64 69 66 66 69 63 75 6c 74 20 74 6f 20 77 72 69 74 e..It.would.be.difficult.to.writ
3b780 65 20 61 6e 20 61 75 74 6f 6d 61 74 69 63 20 72 65 63 6f 76 65 72 79 20 74 6f 6f 6c 20 6c 69 6b e.an.automatic.recovery.tool.lik
3b7a0 65 20 6c 7a 69 70 72 65 63 6f 76 65 72 20 66 6f 72 0a 74 68 65 20 67 7a 69 70 20 66 6f 72 6d 61 e.lziprecover.for.the.gzip.forma
3b7c0 74 2e 20 41 6e 64 2c 20 61 73 20 66 61 72 20 61 73 20 49 20 6b 6e 6f 77 2c 20 69 74 20 68 61 73 t..And,.as.far.as.I.know,.it.has
3b7e0 20 6e 65 76 65 72 20 62 65 65 6e 20 77 72 69 74 74 65 6e 2e 0a 0a 4c 7a 69 70 2c 20 6c 69 6b 65 .never.been.written...Lzip,.like
3b800 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 2c 20 75 73 65 73 20 61 20 43 52 43 33 32 20 74 6f .gzip.and.bzip2,.uses.a.CRC32.to
3b820 20 63 68 65 63 6b 20 74 68 65 20 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 68 65 0a 64 65 63 6f .check.the.integrity.of.the.deco
3b840 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 62 65 63 61 75 73 65 20 69 74 20 70 72 6f 76 69 64 65 mpressed.data.because.it.provide
3b860 73 20 6f 70 74 69 6d 61 6c 20 61 63 63 75 72 61 63 79 20 69 6e 20 74 68 65 20 64 65 74 65 63 74 s.optimal.accuracy.in.the.detect
3b880 69 6f 6e 20 6f 66 0a 65 72 72 6f 72 73 20 75 70 20 74 6f 20 61 20 63 6f 6d 70 72 65 73 73 65 64 ion.of.errors.up.to.a.compressed
3b8a0 20 73 69 7a 65 20 6f 66 20 61 62 6f 75 74 20 40 77 7b 31 36 20 47 69 42 7d 2c 20 61 20 73 69 7a .size.of.about.@w{16.GiB},.a.siz
3b8c0 65 20 6c 61 72 67 65 72 20 74 68 61 6e 20 74 68 61 74 0a 6f 66 20 6d 6f 73 74 20 66 69 6c 65 73 e.larger.than.that.of.most.files
3b8e0 2e 20 49 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 6c 7a 69 70 2c 20 74 68 65 20 61 64 64 69 74 ..In.the.case.of.lzip,.the.addit
3b900 69 6f 6e 61 6c 20 64 65 74 65 63 74 69 6f 6e 20 63 61 70 61 62 69 6c 69 74 79 20 6f 66 0a 74 68 ional.detection.capability.of.th
3b920 65 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 72 65 64 75 63 65 73 20 74 68 65 20 70 72 6f 62 61 e.decompressor.reduces.the.proba
3b940 62 69 6c 69 74 79 20 6f 66 20 75 6e 64 65 74 65 63 74 65 64 20 65 72 72 6f 72 73 20 61 62 6f 75 bility.of.undetected.errors.abou
3b960 74 20 35 30 0a 6d 69 6c 6c 69 6f 6e 20 74 69 6d 65 73 20 6d 6f 72 65 2c 20 72 65 73 75 6c 74 69 t.50.million.times.more,.resulti
3b980 6e 67 20 69 6e 20 61 20 63 6f 6d 62 69 6e 65 64 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 63 6b ng.in.a.combined.integrity.check
3b9a0 69 6e 67 20 6f 70 74 69 6d 61 6c 6c 79 0a 61 63 63 75 72 61 74 65 20 66 6f 72 20 61 6e 79 20 6d ing.optimally.accurate.for.any.m
3b9c0 65 6d 62 65 72 20 73 69 7a 65 20 70 72 6f 64 75 63 65 64 20 62 79 20 6c 7a 69 70 2e 20 4d 6f 72 ember.size.produced.by.lzip..Mor
3b9e0 65 6f 76 65 72 2c 20 61 20 43 52 43 20 69 73 20 62 65 74 74 65 72 0a 74 68 61 6e 20 61 20 68 61 eover,.a.CRC.is.better.than.a.ha
3ba00 73 68 20 6f 66 20 74 68 65 20 73 61 6d 65 20 73 69 7a 65 20 66 6f 72 20 64 65 74 65 63 74 69 6f sh.of.the.same.size.for.detectio
3ba20 6e 20 6f 66 20 65 72 72 6f 72 73 20 69 6e 20 6c 7a 69 70 20 66 69 6c 65 73 20 62 65 63 61 75 73 n.of.errors.in.lzip.files.becaus
3ba40 65 0a 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 63 61 74 63 68 65 73 20 61 6c 6d 6f 73 e.the.decompressor.catches.almos
3ba60 74 20 61 6c 6c 20 74 68 65 20 6c 61 72 67 65 20 65 72 72 6f 72 73 2c 20 77 68 69 6c 65 20 74 68 t.all.the.large.errors,.while.th
3ba80 65 20 43 52 43 0a 67 75 61 72 61 6e 74 65 65 73 20 74 68 65 20 64 65 74 65 63 74 69 6f 6e 20 6f e.CRC.guarantees.the.detection.o
3baa0 66 20 74 68 65 20 73 6d 61 6c 6c 20 65 72 72 6f 72 73 20 28 77 68 69 63 68 20 74 68 65 20 68 61 f.the.small.errors.(which.the.ha
3bac0 73 68 20 64 6f 65 73 20 6e 6f 74 29 2e 0a 0a 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 69 sh.does.not)...The.lzip.format.i
3bae0 73 20 64 65 73 69 67 6e 65 64 20 66 6f 72 20 6c 6f 6e 67 2d 74 65 72 6d 20 61 72 63 68 69 76 69 s.designed.for.long-term.archivi
3bb00 6e 67 2e 20 54 68 65 72 65 66 6f 72 65 20 69 74 20 65 78 63 6c 75 64 65 73 0a 61 6e 79 20 75 6e ng..Therefore.it.excludes.any.un
3bb20 6e 65 65 64 65 64 20 66 65 61 74 75 72 65 73 20 74 68 61 74 20 6d 61 79 20 69 6e 74 65 72 66 65 needed.features.that.may.interfe
3bb40 72 65 20 77 69 74 68 20 74 68 65 20 66 75 74 75 72 65 20 65 78 74 72 61 63 74 69 6f 6e 20 6f 66 re.with.the.future.extraction.of
3bb60 20 74 68 65 0a 64 65 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 2e 0a 0a 40 73 75 62 73 65 63 .the.decompressed.data...@subsec
3bb80 74 69 6f 6e 20 47 7a 69 70 20 66 6f 72 6d 61 74 20 28 6d 69 73 29 66 65 61 74 75 72 65 73 20 6e tion.Gzip.format.(mis)features.n
3bba0 6f 74 20 70 72 65 73 65 6e 74 20 69 6e 20 6c 7a 69 70 0a 0a 40 74 61 62 6c 65 20 40 73 61 6d 70 ot.present.in.lzip..@table.@samp
3bbc0 0a 40 69 74 65 6d 20 4d 75 6c 74 69 70 6c 65 20 61 6c 67 6f 72 69 74 68 6d 73 0a 0a 47 7a 69 70 .@item.Multiple.algorithms..Gzip
3bbe0 20 70 72 6f 76 69 64 65 73 20 61 20 43 4d 20 28 43 6f 6d 70 72 65 73 73 69 6f 6e 20 4d 65 74 68 .provides.a.CM.(Compression.Meth
3bc00 6f 64 29 20 66 69 65 6c 64 20 74 68 61 74 20 68 61 73 20 6e 65 76 65 72 20 62 65 65 6e 20 75 73 od).field.that.has.never.been.us
3bc20 65 64 0a 62 65 63 61 75 73 65 20 69 74 20 69 73 20 74 6f 6f 20 6c 69 6d 69 74 69 6e 67 2e 20 4e ed.because.it.is.too.limiting..N
3bc40 65 77 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6d 65 74 68 6f 64 73 20 6d 61 79 20 72 65 71 75 69 ew.compression.methods.may.requi
3bc60 72 65 20 61 64 64 69 74 69 6f 6e 61 6c 0a 66 69 65 6c 64 73 2c 20 6d 61 6b 69 6e 67 20 69 74 20 re.additional.fields,.making.it.
3bc80 69 6d 70 6f 73 73 69 62 6c 65 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 6e 65 77 20 6d 65 74 68 impossible.to.implement.new.meth
3bca0 6f 64 73 20 61 6e 64 2c 20 61 74 20 74 68 65 20 73 61 6d 65 20 74 69 6d 65 2c 0a 6b 65 65 70 20 ods.and,.at.the.same.time,.keep.
3bcc0 74 68 65 20 73 61 6d 65 20 66 6f 72 6d 61 74 2e 0a 0a 40 69 74 65 6d 20 4f 70 74 69 6f 6e 61 6c the.same.format...@item.Optional
3bce0 20 66 69 65 6c 64 73 20 69 6e 20 68 65 61 64 65 72 0a 0a 55 6e 6c 65 73 73 20 73 70 65 63 69 61 .fields.in.header..Unless.specia
3bd00 6c 20 70 72 65 63 61 75 74 69 6f 6e 73 20 61 72 65 20 74 61 6b 65 6e 2c 20 6f 70 74 69 6f 6e 61 l.precautions.are.taken,.optiona
3bd20 6c 20 66 69 65 6c 64 73 20 61 72 65 20 67 65 6e 65 72 61 6c 6c 79 20 61 20 62 61 64 0a 69 64 65 l.fields.are.generally.a.bad.ide
3bd40 61 20 62 65 63 61 75 73 65 20 74 68 65 79 20 70 72 6f 64 75 63 65 20 61 20 68 65 61 64 65 72 20 a.because.they.produce.a.header.
3bd60 6f 66 20 76 61 72 69 61 62 6c 65 20 73 69 7a 65 2e 20 54 68 65 20 67 7a 69 70 20 68 65 61 64 65 of.variable.size..The.gzip.heade
3bd80 72 20 68 61 73 20 32 0a 66 69 65 6c 64 73 20 74 68 61 74 2c 20 69 6e 20 61 64 64 69 74 69 6f 6e r.has.2.fields.that,.in.addition
3bda0 20 74 6f 20 62 65 69 6e 67 20 6f 70 74 69 6f 6e 61 6c 2c 20 61 72 65 20 7a 65 72 6f 2d 74 65 72 .to.being.optional,.are.zero-ter
3bdc0 6d 69 6e 61 74 65 64 2e 20 54 68 69 73 20 6d 65 61 6e 73 0a 74 68 61 74 20 69 66 20 61 6e 79 20 minated..This.means.that.if.any.
3bde0 62 79 74 65 20 69 6e 73 69 64 65 20 74 68 65 20 66 69 65 6c 64 20 67 65 74 73 20 7a 65 72 6f 65 byte.inside.the.field.gets.zeroe
3be00 64 2c 20 6f 72 20 69 66 20 74 68 65 20 74 65 72 6d 69 6e 61 74 69 6e 67 20 7a 65 72 6f 0a 67 65 d,.or.if.the.terminating.zero.ge
3be20 74 73 20 61 6c 74 65 72 65 64 2c 20 67 7a 69 70 20 77 6f 6e 27 74 20 62 65 20 61 62 6c 65 20 74 ts.altered,.gzip.won't.be.able.t
3be40 6f 20 66 69 6e 64 20 6e 65 69 74 68 65 72 20 74 68 65 20 68 65 61 64 65 72 20 43 52 43 20 6e 6f o.find.neither.the.header.CRC.no
3be60 72 20 74 68 65 0a 63 6f 6d 70 72 65 73 73 65 64 20 62 6c 6f 63 6b 73 2e 0a 0a 40 69 74 65 6d 20 r.the.compressed.blocks...@item.
3be80 4f 70 74 69 6f 6e 61 6c 20 43 52 43 20 66 6f 72 20 74 68 65 20 68 65 61 64 65 72 0a 0a 55 73 69 Optional.CRC.for.the.header..Usi
3bea0 6e 67 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 43 52 43 20 66 6f 72 20 74 68 65 20 68 65 61 64 65 ng.an.optional.CRC.for.the.heade
3bec0 72 20 63 69 72 63 75 6d 76 65 6e 74 73 20 74 68 65 20 48 61 6d 6d 69 6e 67 20 64 69 73 74 61 6e r.circumvents.the.Hamming.distan
3bee0 63 65 20 28 48 44 29 0a 6f 66 20 74 68 65 20 43 52 43 20 61 6e 64 20 6d 61 79 20 70 72 65 76 65 ce.(HD).of.the.CRC.and.may.preve
3bf00 6e 74 20 74 68 65 20 65 78 74 72 61 63 74 69 6f 6e 20 6f 66 20 67 6f 6f 64 20 64 61 74 61 2e 20 nt.the.extraction.of.good.data..
3bf20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 74 68 65 0a 43 52 43 20 69 73 20 75 73 65 64 20 For.example,.if.the.CRC.is.used.
3bf40 61 6e 64 20 74 68 65 20 62 69 74 20 65 6e 61 62 6c 69 6e 67 20 69 74 20 69 73 20 72 65 73 65 74 and.the.bit.enabling.it.is.reset
3bf60 20 62 79 20 61 20 62 69 74 20 66 6c 69 70 2c 20 74 68 65 6e 20 74 68 65 20 68 65 61 64 65 72 0a .by.a.bit.flip,.then.the.header.
3bf80 73 65 65 6d 73 20 74 6f 20 62 65 20 69 6e 74 61 63 74 20 28 69 6e 20 73 70 69 74 65 20 6f 66 20 seems.to.be.intact.(in.spite.of.
3bfa0 62 65 69 6e 67 20 63 6f 72 72 75 70 74 29 20 77 68 69 6c 65 20 74 68 65 20 63 6f 6d 70 72 65 73 being.corrupt).while.the.compres
3bfc0 73 65 64 20 62 6c 6f 63 6b 73 0a 73 65 65 6d 20 74 6f 20 62 65 20 75 6e 72 65 63 6f 76 65 72 61 sed.blocks.seem.to.be.unrecovera
3bfe0 62 6c 65 20 28 69 6e 20 73 70 69 74 65 20 6f 66 20 62 65 69 6e 67 20 69 6e 74 61 63 74 29 2e 0a ble.(in.spite.of.being.intact)..
3c000 0a 40 69 74 65 6d 20 4d 65 74 61 64 61 74 61 0a 0a 54 68 65 20 67 7a 69 70 20 66 6f 72 6d 61 74 .@item.Metadata..The.gzip.format
3c020 20 73 74 6f 72 65 73 20 73 6f 6d 65 20 6d 65 74 61 64 61 74 61 2c 20 6c 69 6b 65 20 74 68 65 20 .stores.some.metadata,.like.the.
3c040 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 74 69 6d 65 20 6f 66 20 74 68 65 0a 6f 72 69 67 69 6e 61 modification.time.of.the.origina
3c060 6c 20 66 69 6c 65 20 6f 72 20 74 68 65 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 6f l.file.or.the.operating.system.o
3c080 6e 20 77 68 69 63 68 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 6f 6f 6b 20 70 6c 61 63 65 2e 20 n.which.compression.took.place..
3c0a0 54 68 69 73 0a 63 6f 6d 70 6c 69 63 61 74 65 73 20 72 65 70 72 6f 64 75 63 69 62 6c 65 20 63 6f This.complicates.reproducible.co
3c0c0 6d 70 72 65 73 73 69 6f 6e 20 28 6f 62 74 61 69 6e 69 6e 67 20 69 64 65 6e 74 69 63 61 6c 20 63 mpression.(obtaining.identical.c
3c0e0 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 0a 66 72 6f 6d 20 69 64 65 6e 74 69 63 61 6c 20 ompressed.output.from.identical.
3c100 69 6e 70 75 74 29 2e 0a 0a 40 65 6e 64 20 74 61 62 6c 65 0a 0a 40 73 75 62 73 65 63 74 69 6f 6e input)...@end.table..@subsection
3c120 20 4c 7a 69 70 20 66 6f 72 6d 61 74 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 20 6f 76 65 72 20 67 .Lzip.format.improvements.over.g
3c140 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 0a 0a 40 74 61 62 6c 65 20 40 73 61 6d 70 0a 40 69 74 65 zip.and.bzip2..@table.@samp.@ite
3c160 6d 20 36 34 2d 62 69 74 20 73 69 7a 65 20 66 69 65 6c 64 0a 0a 50 72 6f 62 61 62 6c 79 20 74 68 m.64-bit.size.field..Probably.th
3c180 65 20 6d 6f 73 74 20 66 72 65 71 75 65 6e 74 6c 79 20 72 65 70 6f 72 74 65 64 20 73 68 6f 72 74 e.most.frequently.reported.short
3c1a0 63 6f 6d 69 6e 67 20 6f 66 20 74 68 65 20 67 7a 69 70 20 66 6f 72 6d 61 74 20 69 73 20 74 68 61 coming.of.the.gzip.format.is.tha
3c1c0 74 0a 69 74 20 6f 6e 6c 79 20 73 74 6f 72 65 73 20 74 68 65 20 6c 65 61 73 74 20 73 69 67 6e 69 t.it.only.stores.the.least.signi
3c1e0 66 69 63 61 6e 74 20 33 32 20 62 69 74 73 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 ficant.32.bits.of.the.uncompress
3c200 65 64 20 73 69 7a 65 2e 20 54 68 65 0a 73 69 7a 65 20 6f 66 20 61 6e 79 20 66 69 6c 65 20 6c 61 ed.size..The.size.of.any.file.la
3c220 72 67 65 72 20 6f 72 20 65 71 75 61 6c 20 74 68 61 6e 20 40 77 7b 34 20 47 69 42 7d 20 67 65 74 rger.or.equal.than.@w{4.GiB}.get
3c240 73 20 74 72 75 6e 63 61 74 65 64 2e 0a 0a 42 7a 69 70 32 20 64 6f 65 73 20 6e 6f 74 20 73 74 6f s.truncated...Bzip2.does.not.sto
3c260 72 65 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 6f 66 20 74 68 65 20 re.the.uncompressed.size.of.the.
3c280 66 69 6c 65 2e 0a 0a 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 70 72 6f 76 69 64 65 73 20 file...The.lzip.format.provides.
3c2a0 61 20 36 34 2d 62 69 74 20 66 69 65 6c 64 20 66 6f 72 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 a.64-bit.field.for.the.uncompres
3c2c0 73 65 64 20 73 69 7a 65 2e 0a 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 6c 7a 69 70 20 70 72 6f sed.size..Additionally,.lzip.pro
3c2e0 64 75 63 65 73 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 6f 75 74 70 75 74 20 61 75 74 6f 6d 61 74 duces.multimember.output.automat
3c300 69 63 61 6c 6c 79 20 77 68 65 6e 20 74 68 65 20 73 69 7a 65 0a 69 73 20 74 6f 6f 20 6c 61 72 67 ically.when.the.size.is.too.larg
3c320 65 20 66 6f 72 20 61 20 73 69 6e 67 6c 65 20 6d 65 6d 62 65 72 2c 20 61 6c 6c 6f 77 69 6e 67 20 e.for.a.single.member,.allowing.
3c340 66 6f 72 20 61 6e 20 75 6e 6c 69 6d 69 74 65 64 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 0a 73 69 for.an.unlimited.uncompressed.si
3c360 7a 65 2e 0a 0a 40 69 74 65 6d 20 44 69 73 74 72 69 62 75 74 65 64 20 69 6e 64 65 78 0a 0a 54 68 ze...@item.Distributed.index..Th
3c380 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 70 72 6f 76 69 64 65 73 20 61 20 64 69 73 74 72 69 62 e.lzip.format.provides.a.distrib
3c3a0 75 74 65 64 20 69 6e 64 65 78 20 74 68 61 74 2c 20 61 6d 6f 6e 67 20 6f 74 68 65 72 20 74 68 69 uted.index.that,.among.other.thi
3c3c0 6e 67 73 2c 0a 61 6c 6c 6f 77 73 20 61 20 72 65 6c 69 61 62 6c 65 20 61 6e 64 20 65 66 66 69 63 ngs,.allows.a.reliable.and.effic
3c3e0 69 65 6e 74 20 40 6f 70 74 69 6f 6e 7b 2d 2d 6c 69 73 74 7d 20 6f 70 65 72 61 74 69 6f 6e 2c 20 ient.@option{--list}.operation,.
3c400 68 65 6c 70 73 20 70 6c 7a 69 70 20 74 6f 0a 64 65 63 6f 6d 70 72 65 73 73 20 66 61 73 74 65 72 helps.plzip.to.decompress.faster
3c420 20 74 68 61 6e 20 70 69 67 7a 2c 20 61 6e 64 20 68 65 6c 70 73 20 6c 7a 69 70 72 65 63 6f 76 65 .than.pigz,.and.helps.lziprecove
3c440 72 20 64 6f 20 69 74 73 20 6a 6f 62 2e 20 4e 65 69 74 68 65 72 20 74 68 65 0a 67 7a 69 70 20 66 r.do.its.job..Neither.the.gzip.f
3c460 6f 72 6d 61 74 20 6e 6f 72 20 74 68 65 20 62 7a 69 70 32 20 66 6f 72 6d 61 74 20 64 6f 20 70 72 ormat.nor.the.bzip2.format.do.pr
3c480 6f 76 69 64 65 20 61 6e 20 69 6e 64 65 78 2e 0a 0a 41 20 64 69 73 74 72 69 62 75 74 65 64 20 69 ovide.an.index...A.distributed.i
3c4a0 6e 64 65 78 20 69 73 20 73 61 66 65 72 20 61 6e 64 20 6d 6f 72 65 20 73 63 61 6c 61 62 6c 65 20 ndex.is.safer.and.more.scalable.
3c4c0 74 68 61 6e 20 61 20 6d 6f 6e 6f 6c 69 74 68 69 63 20 69 6e 64 65 78 2e 20 54 68 65 0a 6d 6f 6e than.a.monolithic.index..The.mon
3c4e0 6f 6c 69 74 68 69 63 20 69 6e 64 65 78 20 69 6e 74 72 6f 64 75 63 65 73 20 61 20 73 69 6e 67 6c olithic.index.introduces.a.singl
3c500 65 20 70 6f 69 6e 74 20 6f 66 20 66 61 69 6c 75 72 65 20 69 6e 20 74 68 65 20 63 6f 6d 70 72 65 e.point.of.failure.in.the.compre
3c520 73 73 65 64 20 66 69 6c 65 0a 61 6e 64 20 6d 61 79 20 6c 69 6d 69 74 20 74 68 65 20 6e 75 6d 62 ssed.file.and.may.limit.the.numb
3c540 65 72 20 6f 66 20 6d 65 6d 62 65 72 73 20 6f 72 20 74 68 65 20 74 6f 74 61 6c 20 75 6e 63 6f 6d er.of.members.or.the.total.uncom
3c560 70 72 65 73 73 65 64 20 73 69 7a 65 2e 0a 0a 40 65 6e 64 20 74 61 62 6c 65 0a 0a 40 73 65 63 74 pressed.size...@end.table..@sect
3c580 69 6f 6e 20 51 75 61 6c 69 74 79 20 6f 66 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a 0a 4f ion.Quality.of.implementation..O
3c5a0 75 72 20 63 69 76 69 6c 69 7a 61 74 69 6f 6e 20 64 65 70 65 6e 64 73 20 63 72 69 74 69 63 61 6c ur.civilization.depends.critical
3c5c0 6c 79 20 6f 6e 20 73 6f 66 74 77 61 72 65 3b 20 69 74 20 68 61 64 20 62 65 74 74 65 72 20 62 65 ly.on.software;.it.had.better.be
3c5e0 20 71 75 61 6c 69 74 79 0a 73 6f 66 74 77 61 72 65 2e 40 2a 0a 2d 2d 2d 20 42 6a 61 72 6e 65 20 .quality.software.@*.---.Bjarne.
3c600 53 74 72 6f 75 73 74 72 75 70 0a 0a 40 74 61 62 6c 65 20 40 73 61 6d 70 0a 40 69 74 65 6d 20 41 Stroustrup..@table.@samp.@item.A
3c620 63 63 75 72 61 74 65 20 61 6e 64 20 72 6f 62 75 73 74 20 65 72 72 6f 72 20 64 65 74 65 63 74 69 ccurate.and.robust.error.detecti
3c640 6f 6e 0a 0a 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 70 72 6f 76 69 64 65 73 20 33 2d 66 on..The.lzip.format.provides.3-f
3c660 61 63 74 6f 72 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 63 6b 69 6e 67 2c 20 61 6e 64 20 74 68 actor.integrity.checking,.and.th
3c680 65 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 73 0a 72 65 70 6f 72 74 20 6d 69 73 6d 61 74 63 68 65 e.decompressors.report.mismatche
3c6a0 73 20 69 6e 20 65 61 63 68 20 66 61 63 74 6f 72 20 73 65 70 61 72 61 74 65 6c 79 2e 20 54 68 69 s.in.each.factor.separately..Thi
3c6c0 73 20 6d 65 74 68 6f 64 20 64 65 74 65 63 74 73 20 6d 6f 73 74 20 66 61 6c 73 65 0a 70 6f 73 69 s.method.detects.most.false.posi
3c6e0 74 69 76 65 73 20 66 6f 72 20 63 6f 72 72 75 70 74 69 6f 6e 2e 20 49 66 20 6a 75 73 74 20 6f 6e tives.for.corruption..If.just.on
3c700 65 20 62 79 74 65 20 69 6e 20 6f 6e 65 20 66 61 63 74 6f 72 20 66 61 69 6c 73 20 62 75 74 20 74 e.byte.in.one.factor.fails.but.t
3c720 68 65 20 6f 74 68 65 72 0a 74 77 6f 20 66 61 63 74 6f 72 73 20 6d 61 74 63 68 20 74 68 65 20 64 he.other.two.factors.match.the.d
3c740 61 74 61 2c 20 69 74 20 70 72 6f 62 61 62 6c 79 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 ata,.it.probably.means.that.the.
3c760 64 61 74 61 20 61 72 65 20 69 6e 74 61 63 74 20 61 6e 64 0a 74 68 65 20 63 6f 72 72 75 70 74 69 data.are.intact.and.the.corrupti
3c780 6f 6e 20 6a 75 73 74 20 61 66 66 65 63 74 73 20 74 68 65 20 6d 69 73 6d 61 74 63 68 69 6e 67 20 on.just.affects.the.mismatching.
3c7a0 66 61 63 74 6f 72 20 28 43 52 43 2c 20 64 61 74 61 20 73 69 7a 65 2c 20 6f 72 0a 6d 65 6d 62 65 factor.(CRC,.data.size,.or.membe
3c7c0 72 20 73 69 7a 65 29 20 69 6e 20 74 68 65 20 6d 65 6d 62 65 72 20 74 72 61 69 6c 65 72 2e 0a 0a r.size).in.the.member.trailer...
3c7e0 40 69 74 65 6d 20 4d 75 6c 74 69 70 6c 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 0a 0a @item.Multiple.implementations..
3c800 4a 75 73 74 20 6c 69 6b 65 20 74 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 70 72 6f 76 69 64 Just.like.the.lzip.format.provid
3c820 65 73 20 33 2d 66 61 63 74 6f 72 20 70 72 6f 74 65 63 74 69 6f 6e 20 61 67 61 69 6e 73 74 20 75 es.3-factor.protection.against.u
3c840 6e 64 65 74 65 63 74 65 64 0a 64 61 74 61 20 63 6f 72 72 75 70 74 69 6f 6e 2c 20 74 68 65 20 64 ndetected.data.corruption,.the.d
3c860 65 76 65 6c 6f 70 6d 65 6e 74 20 6d 65 74 68 6f 64 6f 6c 6f 67 79 20 6f 66 20 74 68 65 20 6c 7a evelopment.methodology.of.the.lz
3c880 69 70 20 66 61 6d 69 6c 79 20 6f 66 0a 63 6f 6d 70 72 65 73 73 6f 72 73 20 70 72 6f 76 69 64 65 ip.family.of.compressors.provide
3c8a0 73 20 33 2d 66 61 63 74 6f 72 20 70 72 6f 74 65 63 74 69 6f 6e 20 61 67 61 69 6e 73 74 20 75 6e s.3-factor.protection.against.un
3c8c0 64 65 74 65 63 74 65 64 20 70 72 6f 67 72 61 6d 6d 69 6e 67 0a 65 72 72 6f 72 73 2e 0a 0a 54 68 detected.programming.errors...Th
3c8e0 72 65 65 20 72 65 6c 61 74 65 64 20 62 75 74 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 63 6f 6d 70 ree.related.but.independent.comp
3c900 72 65 73 73 6f 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 2c 20 6c 7a 69 70 2c 20 63 6c ressor.implementations,.lzip,.cl
3c920 7a 69 70 2c 20 61 6e 64 0a 6d 69 6e 69 6c 7a 69 70 2f 6c 7a 6c 69 62 2c 20 61 72 65 20 64 65 76 zip,.and.minilzip/lzlib,.are.dev
3c940 65 6c 6f 70 65 64 20 63 6f 6e 63 75 72 72 65 6e 74 6c 79 2e 20 45 76 65 72 79 20 73 74 61 62 6c eloped.concurrently..Every.stabl
3c960 65 20 72 65 6c 65 61 73 65 20 6f 66 20 61 6e 79 20 6f 66 0a 74 68 65 6d 20 69 73 20 74 65 73 74 e.release.of.any.of.them.is.test
3c980 65 64 20 74 6f 20 63 68 65 63 6b 20 74 68 61 74 20 69 74 20 70 72 6f 64 75 63 65 73 20 69 64 65 ed.to.check.that.it.produces.ide
3c9a0 6e 74 69 63 61 6c 20 6f 75 74 70 75 74 20 74 6f 20 74 68 65 20 6f 74 68 65 72 20 74 77 6f 2e 0a ntical.output.to.the.other.two..
3c9c0 54 68 69 73 20 63 6f 72 72 6f 62 6f 72 61 74 65 73 20 74 68 61 74 20 61 6c 6c 20 74 68 72 65 65 This.corroborates.that.all.three
3c9e0 20 69 6d 70 6c 65 6d 65 6e 74 20 74 68 65 20 73 61 6d 65 20 61 6c 67 6f 72 69 74 68 6d 2c 20 61 .implement.the.same.algorithm,.a
3ca00 6e 64 20 6d 61 6b 65 73 20 69 74 0a 75 6e 6c 69 6b 65 6c 79 20 74 68 61 74 20 61 6e 79 20 6f 66 nd.makes.it.unlikely.that.any.of
3ca20 20 74 68 65 6d 20 6d 61 79 20 63 6f 6e 74 61 69 6e 20 73 65 72 69 6f 75 73 20 75 6e 64 69 73 63 .them.may.contain.serious.undisc
3ca40 6f 76 65 72 65 64 20 65 72 72 6f 72 73 2e 20 49 6e 20 66 61 63 74 2c 0a 6e 6f 20 65 72 72 6f 72 overed.errors..In.fact,.no.error
3ca60 73 20 68 61 76 65 20 62 65 65 6e 20 64 69 73 63 6f 76 65 72 65 64 20 69 6e 20 6c 7a 69 70 20 73 s.have.been.discovered.in.lzip.s
3ca80 69 6e 63 65 20 32 30 30 39 2e 0a 0a 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 74 68 65 20 74 68 ince.2009...Additionally,.the.th
3caa0 72 65 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 68 61 76 65 20 62 65 65 6e 20 65 78 ree.implementations.have.been.ex
3cac0 74 65 6e 73 69 76 65 6c 79 20 74 65 73 74 65 64 20 77 69 74 68 0a 40 75 72 65 66 7b 68 74 74 70 tensively.tested.with.@uref{http
3cae0 3a 2f 2f 77 77 77 2e 6e 6f 6e 67 6e 75 2e 6f 72 67 2f 6c 7a 69 70 2f 6d 61 6e 75 61 6c 2f 6c 7a ://www.nongnu.org/lzip/manual/lz
3cb00 69 70 72 65 63 6f 76 65 72 5f 6d 61 6e 75 61 6c 2e 68 74 6d 6c 23 55 6e 7a 63 72 61 73 68 2c 2c iprecover_manual.html#Unzcrash,,
3cb20 75 6e 7a 63 72 61 73 68 7d 2c 0a 76 61 6c 67 72 69 6e 64 2c 20 61 6e 64 20 40 73 61 6d 70 7b 61 unzcrash},.valgrind,.and.@samp{a
3cb40 6d 65 72 69 63 61 6e 20 66 75 7a 7a 79 20 6c 6f 70 7d 20 77 69 74 68 6f 75 74 20 66 69 6e 64 69 merican.fuzzy.lop}.without.findi
3cb60 6e 67 20 61 20 73 69 6e 67 6c 65 0a 76 75 6c 6e 65 72 61 62 69 6c 69 74 79 20 6f 72 20 66 61 6c ng.a.single.vulnerability.or.fal
3cb80 73 65 20 6e 65 67 61 74 69 76 65 2e 0a 40 69 66 6e 6f 74 68 74 6d 6c 0a 40 78 72 65 66 7b 55 6e se.negative..@ifnothtml.@xref{Un
3cba0 7a 63 72 61 73 68 2c 2c 2c 6c 7a 69 70 72 65 63 6f 76 65 72 7d 2e 0a 40 65 6e 64 20 69 66 6e 6f zcrash,,,lziprecover}..@end.ifno
3cbc0 74 68 74 6d 6c 0a 0a 40 69 74 65 6d 20 44 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 0a 0a 4c 7a thtml..@item.Dictionary.size..Lz
3cbe0 69 70 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 61 64 61 70 74 73 20 74 68 65 20 64 69 63 74 ip.automatically.adapts.the.dict
3cc00 69 6f 6e 61 72 79 20 73 69 7a 65 20 74 6f 20 74 68 65 20 73 69 7a 65 20 6f 66 20 65 61 63 68 20 ionary.size.to.the.size.of.each.
3cc20 66 69 6c 65 2e 0a 49 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 72 65 64 75 63 69 6e 67 20 74 68 file..In.addition.to.reducing.th
3cc40 65 20 61 6d 6f 75 6e 74 20 6f 66 20 6d 65 6d 6f 72 79 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 e.amount.of.memory.required.for.
3cc60 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2c 0a 74 68 69 73 20 66 65 61 74 75 72 65 20 61 6c 73 6f decompression,.this.feature.also
3cc80 20 6d 69 6e 69 6d 69 7a 65 73 20 74 68 65 20 70 72 6f 62 61 62 69 6c 69 74 79 20 6f 66 20 62 65 .minimizes.the.probability.of.be
3cca0 69 6e 67 20 61 66 66 65 63 74 65 64 20 62 79 20 52 41 4d 20 65 72 72 6f 72 73 0a 64 75 72 69 6e ing.affected.by.RAM.errors.durin
3ccc0 67 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 20 40 63 20 6b 65 79 34 5f 6d 61 73 6b 0a 0a 40 69 74 g.compression..@c.key4_mask..@it
3cce0 65 6d 20 45 78 69 74 20 73 74 61 74 75 73 0a 0a 52 65 74 75 72 6e 69 6e 67 20 61 20 77 61 72 6e em.Exit.status..Returning.a.warn
3cd00 69 6e 67 20 73 74 61 74 75 73 20 6f 66 20 32 20 69 73 20 61 20 64 65 73 69 67 6e 20 66 6c 61 77 ing.status.of.2.is.a.design.flaw
3cd20 20 6f 66 20 63 6f 6d 70 72 65 73 73 20 74 68 61 74 20 6c 65 61 6b 65 64 0a 69 6e 74 6f 20 74 68 .of.compress.that.leaked.into.th
3cd40 65 20 64 65 73 69 67 6e 20 6f 66 20 67 7a 69 70 2e 20 42 6f 74 68 20 62 7a 69 70 32 20 61 6e 64 e.design.of.gzip..Both.bzip2.and
3cd60 20 6c 7a 69 70 20 61 72 65 20 66 72 65 65 20 66 72 6f 6d 20 74 68 69 73 20 66 6c 61 77 2e 0a 0a .lzip.are.free.from.this.flaw...
3cd80 40 65 6e 64 20 74 61 62 6c 65 0a 0a 0a 40 6e 6f 64 65 20 41 6c 67 6f 72 69 74 68 6d 0a 40 63 68 @end.table...@node.Algorithm.@ch
3cda0 61 70 74 65 72 20 41 6c 67 6f 72 69 74 68 6d 0a 40 63 69 6e 64 65 78 20 61 6c 67 6f 72 69 74 68 apter.Algorithm.@cindex.algorith
3cdc0 6d 0a 0a 49 6e 20 73 70 69 74 65 20 6f 66 20 69 74 73 20 6e 61 6d 65 20 28 4c 65 6d 70 65 6c 2d m..In.spite.of.its.name.(Lempel-
3cde0 5a 69 76 2d 4d 61 72 6b 6f 76 20 63 68 61 69 6e 2d 41 6c 67 6f 72 69 74 68 6d 29 2c 20 4c 5a 4d Ziv-Markov.chain-Algorithm),.LZM
3ce00 41 20 69 73 20 6e 6f 74 20 61 0a 63 6f 6e 63 72 65 74 65 20 61 6c 67 6f 72 69 74 68 6d 3b 20 69 A.is.not.a.concrete.algorithm;.i
3ce20 74 20 69 73 20 6d 6f 72 65 20 6c 69 6b 65 20 22 61 6e 79 20 61 6c 67 6f 72 69 74 68 6d 20 75 73 t.is.more.like."any.algorithm.us
3ce40 69 6e 67 20 74 68 65 20 4c 5a 4d 41 20 63 6f 64 69 6e 67 0a 73 63 68 65 6d 65 22 2e 20 4c 5a 4d ing.the.LZMA.coding.scheme"..LZM
3ce60 41 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 63 6f 6e 73 69 73 74 73 20 69 6e 20 64 65 73 63 72 69 A.compression.consists.in.descri
3ce80 62 69 6e 67 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 61 73 20 61 0a bing.the.uncompressed.data.as.a.
3cea0 73 75 63 63 65 73 73 69 6f 6e 20 6f 66 20 63 6f 64 69 6e 67 20 73 65 71 75 65 6e 63 65 73 20 66 succession.of.coding.sequences.f
3cec0 72 6f 6d 20 74 68 65 20 73 65 74 20 73 68 6f 77 6e 20 69 6e 20 53 65 63 74 69 6f 6e 20 40 73 61 rom.the.set.shown.in.Section.@sa
3cee0 6d 70 7b 57 68 61 74 20 69 73 0a 63 6f 64 65 64 7d 20 28 40 70 78 72 65 66 7b 77 68 61 74 2d 69 mp{What.is.coded}.(@pxref{what-i
3cf00 73 2d 63 6f 64 65 64 7d 29 2c 20 61 6e 64 20 74 68 65 6e 20 65 6e 63 6f 64 69 6e 67 20 74 68 65 s-coded}),.and.then.encoding.the
3cf20 6d 20 75 73 69 6e 67 20 61 20 72 61 6e 67 65 0a 65 6e 63 6f 64 65 72 2e 20 46 6f 72 20 65 78 61 m.using.a.range.encoder..For.exa
3cf40 6d 70 6c 65 2c 20 74 68 65 20 6f 70 74 69 6f 6e 20 40 6f 70 74 69 6f 6e 7b 2d 30 7d 20 6f 66 20 mple,.the.option.@option{-0}.of.
3cf60 6c 7a 69 70 20 75 73 65 73 20 74 68 65 20 73 63 68 65 6d 65 20 69 6e 0a 61 6c 6d 6f 73 74 20 74 lzip.uses.the.scheme.in.almost.t
3cf80 68 65 20 73 69 6d 70 6c 65 73 74 20 77 61 79 20 70 6f 73 73 69 62 6c 65 3b 20 69 73 73 75 69 6e he.simplest.way.possible;.issuin
3cfa0 67 20 74 68 65 20 6c 6f 6e 67 65 73 74 20 6d 61 74 63 68 20 69 74 20 63 61 6e 20 66 69 6e 64 2c g.the.longest.match.it.can.find,
3cfc0 20 6f 72 0a 61 20 6c 69 74 65 72 61 6c 20 62 79 74 65 20 69 66 20 69 74 20 63 61 6e 27 74 20 66 .or.a.literal.byte.if.it.can't.f
3cfe0 69 6e 64 20 61 20 6d 61 74 63 68 2e 20 49 6e 76 65 72 73 65 6c 79 2c 20 61 20 6d 6f 72 65 20 65 ind.a.match..Inversely,.a.more.e
3d000 6c 61 62 6f 72 61 74 65 20 77 61 79 20 6f 66 0a 66 69 6e 64 69 6e 67 20 63 6f 64 69 6e 67 20 73 laborate.way.of.finding.coding.s
3d020 65 71 75 65 6e 63 65 73 20 6f 66 20 6d 69 6e 69 6d 75 6d 20 73 69 7a 65 20 74 68 61 6e 20 74 68 equences.of.minimum.size.than.th
3d040 65 20 6f 6e 65 20 63 75 72 72 65 6e 74 6c 79 20 75 73 65 64 20 62 79 20 6c 7a 69 70 0a 63 6f 75 e.one.currently.used.by.lzip.cou
3d060 6c 64 20 62 65 20 64 65 76 65 6c 6f 70 65 64 2c 20 61 6e 64 20 74 68 65 20 72 65 73 75 6c 74 69 ld.be.developed,.and.the.resulti
3d080 6e 67 20 73 65 71 75 65 6e 63 65 20 63 6f 75 6c 64 20 61 6c 73 6f 20 62 65 20 63 6f 64 65 64 20 ng.sequence.could.also.be.coded.
3d0a0 75 73 69 6e 67 20 74 68 65 0a 4c 5a 4d 41 20 63 6f 64 69 6e 67 20 73 63 68 65 6d 65 2e 0a 0a 4c using.the.LZMA.coding.scheme...L
3d0c0 7a 69 70 20 63 75 72 72 65 6e 74 6c 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74 77 6f 20 76 61 72 zip.currently.implements.two.var
3d0e0 69 61 6e 74 73 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 61 6c 67 6f 72 69 74 68 6d 3a 20 66 61 73 iants.of.the.LZMA.algorithm:.fas
3d100 74 0a 28 75 73 65 64 20 62 79 20 6f 70 74 69 6f 6e 20 40 6f 70 74 69 6f 6e 7b 2d 30 7d 29 20 61 t.(used.by.option.@option{-0}).a
3d120 6e 64 20 6e 6f 72 6d 61 6c 20 28 75 73 65 64 20 62 79 20 61 6c 6c 20 6f 74 68 65 72 20 63 6f 6d nd.normal.(used.by.all.other.com
3d140 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 73 29 2e 0a 0a 54 68 65 20 68 69 67 68 20 63 6f 6d 70 pression.levels)...The.high.comp
3d160 72 65 73 73 69 6f 6e 20 6f 66 20 4c 5a 4d 41 20 63 6f 6d 65 73 20 66 72 6f 6d 20 63 6f 6d 62 69 ression.of.LZMA.comes.from.combi
3d180 6e 69 6e 67 20 74 77 6f 20 62 61 73 69 63 2c 20 77 65 6c 6c 2d 70 72 6f 76 65 6e 0a 63 6f 6d 70 ning.two.basic,.well-proven.comp
3d1a0 72 65 73 73 69 6f 6e 20 69 64 65 61 73 3a 20 73 6c 69 64 69 6e 67 20 64 69 63 74 69 6f 6e 61 72 ression.ideas:.sliding.dictionar
3d1c0 69 65 73 20 28 4c 5a 37 37 29 20 61 6e 64 20 4d 61 72 6b 6f 76 20 6d 6f 64 65 6c 73 20 28 74 68 ies.(LZ77).and.Markov.models.(th
3d1e0 65 20 74 68 69 6e 67 0a 75 73 65 64 20 62 79 20 65 76 65 72 79 20 63 6f 6d 70 72 65 73 73 69 6f e.thing.used.by.every.compressio
3d200 6e 20 61 6c 67 6f 72 69 74 68 6d 20 74 68 61 74 20 75 73 65 73 20 61 20 72 61 6e 67 65 20 65 6e n.algorithm.that.uses.a.range.en
3d220 63 6f 64 65 72 20 6f 72 20 73 69 6d 69 6c 61 72 0a 6f 72 64 65 72 2d 30 20 65 6e 74 72 6f 70 79 coder.or.similar.order-0.entropy
3d240 20 63 6f 64 65 72 20 61 73 20 69 74 73 20 6c 61 73 74 20 73 74 61 67 65 29 20 77 69 74 68 20 73 .coder.as.its.last.stage).with.s
3d260 65 67 72 65 67 61 74 69 6f 6e 20 6f 66 20 63 6f 6e 74 65 78 74 73 0a 61 63 63 6f 72 64 69 6e 67 egregation.of.contexts.according
3d280 20 74 6f 20 77 68 61 74 20 74 68 65 20 62 69 74 73 20 61 72 65 20 75 73 65 64 20 66 6f 72 2e 0a .to.what.the.bits.are.used.for..
3d2a0 0a 4c 7a 69 70 20 69 73 20 61 20 74 77 6f 20 73 74 61 67 65 20 63 6f 6d 70 72 65 73 73 6f 72 2e .Lzip.is.a.two.stage.compressor.
3d2c0 20 54 68 65 20 66 69 72 73 74 20 73 74 61 67 65 20 69 73 20 61 20 4c 65 6d 70 65 6c 2d 5a 69 76 .The.first.stage.is.a.Lempel-Ziv
3d2e0 20 63 6f 64 65 72 2c 0a 77 68 69 63 68 20 72 65 64 75 63 65 73 20 72 65 64 75 6e 64 61 6e 63 79 .coder,.which.reduces.redundancy
3d300 20 62 79 20 74 72 61 6e 73 6c 61 74 69 6e 67 20 63 68 75 6e 6b 73 20 6f 66 20 64 61 74 61 20 74 .by.translating.chunks.of.data.t
3d320 6f 20 74 68 65 69 72 0a 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 64 69 73 74 61 6e 63 65 2d 6c o.their.corresponding.distance-l
3d340 65 6e 67 74 68 20 70 61 69 72 73 2e 20 54 68 65 20 73 65 63 6f 6e 64 20 73 74 61 67 65 20 69 73 ength.pairs..The.second.stage.is
3d360 20 61 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 0a 74 68 61 74 20 75 73 65 73 20 61 20 64 69 66 .a.range.encoder.that.uses.a.dif
3d380 66 65 72 65 6e 74 20 70 72 6f 62 61 62 69 6c 69 74 79 20 6d 6f 64 65 6c 20 66 6f 72 20 65 61 63 ferent.probability.model.for.eac
3d3a0 68 20 74 79 70 65 20 6f 66 20 64 61 74 61 3a 0a 64 69 73 74 61 6e 63 65 73 2c 20 6c 65 6e 67 74 h.type.of.data:.distances,.lengt
3d3c0 68 73 2c 20 6c 69 74 65 72 61 6c 20 62 79 74 65 73 2c 20 65 74 63 2e 0a 0a 48 65 72 65 20 69 73 hs,.literal.bytes,.etc...Here.is
3d3e0 20 68 6f 77 20 69 74 20 77 6f 72 6b 73 2c 20 73 74 65 70 20 62 79 20 73 74 65 70 3a 0a 0a 31 29 .how.it.works,.step.by.step:..1)
3d400 20 54 68 65 20 6d 65 6d 62 65 72 20 68 65 61 64 65 72 20 69 73 20 77 72 69 74 74 65 6e 20 74 6f .The.member.header.is.written.to
3d420 20 74 68 65 20 6f 75 74 70 75 74 20 73 74 72 65 61 6d 2e 0a 0a 32 29 20 54 68 65 20 66 69 72 73 .the.output.stream...2).The.firs
3d440 74 20 62 79 74 65 20 69 73 20 63 6f 64 65 64 20 6c 69 74 65 72 61 6c 6c 79 2c 20 62 65 63 61 75 t.byte.is.coded.literally,.becau
3d460 73 65 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 70 72 65 76 69 6f 75 73 0a 62 79 74 65 73 20 74 se.there.are.no.previous.bytes.t
3d480 6f 20 77 68 69 63 68 20 74 68 65 20 6d 61 74 63 68 20 66 69 6e 64 65 72 20 63 61 6e 20 72 65 66 o.which.the.match.finder.can.ref
3d4a0 65 72 20 74 6f 2e 0a 0a 33 29 20 54 68 65 20 6d 61 69 6e 20 65 6e 63 6f 64 65 72 20 61 64 76 61 er.to...3).The.main.encoder.adva
3d4c0 6e 63 65 73 20 74 6f 20 74 68 65 20 6e 65 78 74 20 62 79 74 65 20 69 6e 20 74 68 65 20 69 6e 70 nces.to.the.next.byte.in.the.inp
3d4e0 75 74 20 64 61 74 61 20 61 6e 64 0a 63 61 6c 6c 73 20 74 68 65 20 6d 61 74 63 68 20 66 69 6e 64 ut.data.and.calls.the.match.find
3d500 65 72 2e 0a 0a 34 29 20 54 68 65 20 6d 61 74 63 68 20 66 69 6e 64 65 72 20 66 69 6c 6c 73 20 61 er...4).The.match.finder.fills.a
3d520 6e 20 61 72 72 61 79 20 77 69 74 68 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 64 69 73 74 61 6e 63 n.array.with.the.minimum.distanc
3d540 65 73 20 62 65 66 6f 72 65 20 74 68 65 0a 63 75 72 72 65 6e 74 20 62 79 74 65 20 77 68 65 72 65 es.before.the.current.byte.where
3d560 20 61 20 6d 61 74 63 68 20 6f 66 20 61 20 67 69 76 65 6e 20 6c 65 6e 67 74 68 20 63 61 6e 20 62 .a.match.of.a.given.length.can.b
3d580 65 20 66 6f 75 6e 64 2e 0a 0a 35 29 20 47 6f 20 62 61 63 6b 20 74 6f 20 73 74 65 70 20 33 20 75 e.found...5).Go.back.to.step.3.u
3d5a0 6e 74 69 6c 20 61 20 73 65 71 75 65 6e 63 65 20 28 66 6f 72 6d 65 64 20 6f 66 20 70 61 69 72 73 ntil.a.sequence.(formed.of.pairs
3d5c0 2c 20 72 65 70 65 61 74 65 64 0a 64 69 73 74 61 6e 63 65 73 2c 20 61 6e 64 20 6c 69 74 65 72 61 ,.repeated.distances,.and.litera
3d5e0 6c 20 62 79 74 65 73 29 20 6f 66 20 6d 69 6e 69 6d 75 6d 20 70 72 69 63 65 20 68 61 73 20 62 65 l.bytes).of.minimum.price.has.be
3d600 65 6e 20 66 6f 72 6d 65 64 2e 20 57 68 65 72 65 20 74 68 65 0a 70 72 69 63 65 20 72 65 70 72 65 en.formed..Where.the.price.repre
3d620 73 65 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6f 75 74 70 75 74 20 62 69 74 73 20 sents.the.number.of.output.bits.
3d640 70 72 6f 64 75 63 65 64 2e 0a 0a 36 29 20 54 68 65 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 20 produced...6).The.range.encoder.
3d660 65 6e 63 6f 64 65 73 20 74 68 65 20 73 65 71 75 65 6e 63 65 20 70 72 6f 64 75 63 65 64 20 62 79 encodes.the.sequence.produced.by
3d680 20 74 68 65 20 6d 61 69 6e 20 65 6e 63 6f 64 65 72 0a 61 6e 64 20 73 65 6e 64 73 20 74 68 65 20 .the.main.encoder.and.sends.the.
3d6a0 62 79 74 65 73 20 70 72 6f 64 75 63 65 64 20 74 6f 20 74 68 65 20 6f 75 74 70 75 74 20 73 74 72 bytes.produced.to.the.output.str
3d6c0 65 61 6d 2e 0a 0a 37 29 20 47 6f 20 62 61 63 6b 20 74 6f 20 73 74 65 70 20 33 20 75 6e 74 69 6c eam...7).Go.back.to.step.3.until
3d6e0 20 74 68 65 20 69 6e 70 75 74 20 64 61 74 61 20 61 72 65 20 66 69 6e 69 73 68 65 64 20 6f 72 20 .the.input.data.are.finished.or.
3d700 75 6e 74 69 6c 20 74 68 65 0a 6d 65 6d 62 65 72 20 6f 72 20 76 6f 6c 75 6d 65 20 73 69 7a 65 20 until.the.member.or.volume.size.
3d720 6c 69 6d 69 74 73 20 61 72 65 20 72 65 61 63 68 65 64 2e 0a 0a 38 29 20 54 68 65 20 72 61 6e 67 limits.are.reached...8).The.rang
3d740 65 20 65 6e 63 6f 64 65 72 20 69 73 20 66 6c 75 73 68 65 64 2e 0a 0a 39 29 20 54 68 65 20 6d 65 e.encoder.is.flushed...9).The.me
3d760 6d 62 65 72 20 74 72 61 69 6c 65 72 20 69 73 20 77 72 69 74 74 65 6e 20 74 6f 20 74 68 65 20 6f mber.trailer.is.written.to.the.o
3d780 75 74 70 75 74 20 73 74 72 65 61 6d 2e 0a 0a 31 30 29 20 49 66 20 74 68 65 72 65 20 61 72 65 20 utput.stream...10).If.there.are.
3d7a0 6d 6f 72 65 20 64 61 74 61 20 74 6f 20 63 6f 6d 70 72 65 73 73 2c 20 67 6f 20 62 61 63 6b 20 74 more.data.to.compress,.go.back.t
3d7c0 6f 20 73 74 65 70 20 31 2e 0a 0a 40 73 70 20 31 0a 44 75 72 69 6e 67 20 63 6f 6d 70 72 65 73 73 o.step.1...@sp.1.During.compress
3d7e0 69 6f 6e 2c 20 6c 7a 69 70 20 72 65 61 64 73 20 64 61 74 61 20 69 6e 20 6c 61 72 67 65 20 62 6c ion,.lzip.reads.data.in.large.bl
3d800 6f 63 6b 73 20 28 6f 6e 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 61 74 0a 61 20 74 ocks.(one.dictionary.size.at.a.t
3d820 69 6d 65 29 2e 20 54 68 65 72 65 66 6f 72 65 20 69 74 20 6d 61 79 20 62 6c 6f 63 6b 20 66 6f 72 ime)..Therefore.it.may.block.for
3d840 20 75 70 20 74 6f 20 74 65 6e 73 20 6f 66 20 73 65 63 6f 6e 64 73 20 61 6e 79 20 70 72 6f 63 65 .up.to.tens.of.seconds.any.proce
3d860 73 73 0a 66 65 65 64 69 6e 67 20 64 61 74 61 20 74 6f 20 69 74 20 74 68 72 6f 75 67 68 20 61 20 ss.feeding.data.to.it.through.a.
3d880 70 69 70 65 2e 20 54 68 69 73 20 69 73 20 6e 6f 72 6d 61 6c 2e 20 54 68 65 20 62 6c 6f 63 6b 69 pipe..This.is.normal..The.blocki
3d8a0 6e 67 20 69 6e 74 65 72 76 61 6c 73 0a 67 65 74 20 6c 6f 6e 67 65 72 20 77 69 74 68 20 68 69 67 ng.intervals.get.longer.with.hig
3d8c0 68 65 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 73 20 62 65 63 61 75 73 65 20 64 her.compression.levels.because.d
3d8e0 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 6e 63 72 65 61 73 65 73 0a 28 61 6e 64 20 63 6f ictionary.size.increases.(and.co
3d900 6d 70 72 65 73 73 69 6f 6e 20 73 70 65 65 64 20 64 65 63 72 65 61 73 65 73 29 20 77 69 74 68 20 mpression.speed.decreases).with.
3d920 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 2e 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 54 68 compression.level...@noindent.Th
3d940 65 20 69 64 65 61 73 20 65 6d 62 6f 64 69 65 64 20 69 6e 20 6c 7a 69 70 20 61 72 65 20 64 75 65 e.ideas.embodied.in.lzip.are.due
3d960 20 74 6f 20 28 61 74 20 6c 65 61 73 74 29 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 65 6f .to.(at.least).the.following.peo
3d980 70 6c 65 3a 0a 41 62 72 61 68 61 6d 20 4c 65 6d 70 65 6c 20 61 6e 64 20 4a 61 63 6f 62 20 5a 69 ple:.Abraham.Lempel.and.Jacob.Zi
3d9a0 76 20 28 66 6f 72 20 74 68 65 20 4c 5a 20 61 6c 67 6f 72 69 74 68 6d 29 2c 20 41 6e 64 72 65 69 v.(for.the.LZ.algorithm),.Andrei
3d9c0 20 4d 61 72 6b 6f 76 20 28 66 6f 72 20 74 68 65 0a 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 4d .Markov.(for.the.definition.of.M
3d9e0 61 72 6b 6f 76 20 63 68 61 69 6e 73 29 2c 20 47 2e 4e 2e 4e 2e 20 4d 61 72 74 69 6e 20 28 66 6f arkov.chains),.G.N.N..Martin.(fo
3da00 72 20 74 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 72 61 6e 67 65 0a 65 6e 63 6f 64 69 r.the.definition.of.range.encodi
3da20 6e 67 29 2c 20 49 67 6f 72 20 50 61 76 6c 6f 76 20 28 66 6f 72 20 70 75 74 74 69 6e 67 20 61 6c ng),.Igor.Pavlov.(for.putting.al
3da40 6c 20 74 68 65 20 61 62 6f 76 65 20 74 6f 67 65 74 68 65 72 20 69 6e 20 4c 5a 4d 41 29 2c 20 61 l.the.above.together.in.LZMA),.a
3da60 6e 64 0a 4a 75 6c 69 61 6e 20 53 65 77 61 72 64 20 28 66 6f 72 20 62 7a 69 70 32 27 73 20 43 4c nd.Julian.Seward.(for.bzip2's.CL
3da80 49 29 2e 0a 0a 0a 40 6e 6f 64 65 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 0a 40 63 68 61 70 74 I)....@node.Trailing.data.@chapt
3daa0 65 72 20 45 78 74 72 61 20 64 61 74 61 20 61 70 70 65 6e 64 65 64 20 74 6f 20 74 68 65 20 66 69 er.Extra.data.appended.to.the.fi
3dac0 6c 65 0a 40 63 69 6e 64 65 78 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 0a 0a 53 6f 6d 65 74 69 le.@cindex.trailing.data..Someti
3dae0 6d 65 73 20 65 78 74 72 61 20 64 61 74 61 20 61 72 65 20 66 6f 75 6e 64 20 61 70 70 65 6e 64 65 mes.extra.data.are.found.appende
3db00 64 20 74 6f 20 61 20 6c 7a 69 70 20 66 69 6c 65 20 61 66 74 65 72 20 74 68 65 20 6c 61 73 74 0a d.to.a.lzip.file.after.the.last.
3db20 6d 65 6d 62 65 72 2e 20 53 75 63 68 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 6d 61 79 20 62 member..Such.trailing.data.may.b
3db40 65 3a 0a 0a 40 69 74 65 6d 69 7a 65 20 40 62 75 6c 6c 65 74 0a 40 69 74 65 6d 0a 50 61 64 64 69 e:..@itemize.@bullet.@item.Paddi
3db60 6e 67 20 61 64 64 65 64 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 66 69 6c 65 20 73 69 7a 65 20 61 ng.added.to.make.the.file.size.a
3db80 20 6d 75 6c 74 69 70 6c 65 20 6f 66 20 73 6f 6d 65 20 62 6c 6f 63 6b 20 73 69 7a 65 2c 20 66 6f .multiple.of.some.block.size,.fo
3dba0 72 0a 65 78 61 6d 70 6c 65 20 77 68 65 6e 20 77 72 69 74 69 6e 67 20 74 6f 20 61 20 74 61 70 65 r.example.when.writing.to.a.tape
3dbc0 2e 20 49 74 20 69 73 20 73 61 66 65 20 74 6f 20 61 70 70 65 6e 64 20 61 6e 79 20 61 6d 6f 75 6e ..It.is.safe.to.append.any.amoun
3dbe0 74 20 6f 66 0a 70 61 64 64 69 6e 67 20 7a 65 72 6f 20 62 79 74 65 73 20 74 6f 20 61 20 6c 7a 69 t.of.padding.zero.bytes.to.a.lzi
3dc00 70 20 66 69 6c 65 2e 0a 0a 40 69 74 65 6d 0a 55 73 65 66 75 6c 20 64 61 74 61 20 61 64 64 65 64 p.file...@item.Useful.data.added
3dc20 20 62 79 20 74 68 65 20 75 73 65 72 3b 20 61 6e 20 27 45 6e 64 20 4f 66 20 46 69 6c 65 27 20 73 .by.the.user;.an.'End.Of.File'.s
3dc40 74 72 69 6e 67 20 28 74 6f 20 63 68 65 63 6b 20 74 68 61 74 20 74 68 65 0a 66 69 6c 65 20 68 61 tring.(to.check.that.the.file.ha
3dc60 73 20 6e 6f 74 20 62 65 65 6e 20 74 72 75 6e 63 61 74 65 64 29 2c 20 61 20 63 72 79 70 74 6f 67 s.not.been.truncated),.a.cryptog
3dc80 72 61 70 68 69 63 61 6c 6c 79 20 73 65 63 75 72 65 20 68 61 73 68 2c 20 61 20 64 65 73 63 72 69 raphically.secure.hash,.a.descri
3dca0 70 74 69 6f 6e 0a 6f 66 20 66 69 6c 65 20 63 6f 6e 74 65 6e 74 73 2c 20 65 74 63 2e 20 49 74 20 ption.of.file.contents,.etc..It.
3dcc0 69 73 20 73 61 66 65 20 74 6f 20 61 70 70 65 6e 64 20 61 6e 79 20 61 6d 6f 75 6e 74 20 6f 66 20 is.safe.to.append.any.amount.of.
3dce0 74 65 78 74 20 74 6f 20 61 20 6c 7a 69 70 0a 66 69 6c 65 20 61 73 20 6c 6f 6e 67 20 61 73 20 6e text.to.a.lzip.file.as.long.as.n
3dd00 6f 6e 65 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 66 6f 75 72 20 62 79 74 65 73 20 6f 66 20 74 one.of.the.first.four.bytes.of.t
3dd20 68 65 20 74 65 78 74 20 6d 61 74 63 68 65 73 20 74 68 65 0a 63 6f 72 72 65 73 70 6f 6e 64 69 6e he.text.matches.the.correspondin
3dd40 67 20 62 79 74 65 20 69 6e 20 74 68 65 20 73 74 72 69 6e 67 20 22 4c 5a 49 50 22 2c 20 61 6e 64 g.byte.in.the.string."LZIP",.and
3dd60 20 74 68 65 20 74 65 78 74 20 64 6f 65 73 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 61 6e 79 0a 7a .the.text.does.not.contain.any.z
3dd80 65 72 6f 20 62 79 74 65 73 20 28 6e 75 6c 6c 20 63 68 61 72 61 63 74 65 72 73 29 2e 20 4e 6f 6e ero.bytes.(null.characters)..Non
3dda0 7a 65 72 6f 20 62 79 74 65 73 20 61 6e 64 20 7a 65 72 6f 20 62 79 74 65 73 20 63 61 6e 27 74 20 zero.bytes.and.zero.bytes.can't.
3ddc0 62 65 20 73 61 66 65 6c 79 0a 6d 69 78 65 64 20 69 6e 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 be.safely.mixed.in.trailing.data
3dde0 2e 0a 0a 40 69 74 65 6d 0a 47 61 72 62 61 67 65 20 61 64 64 65 64 20 62 79 20 73 6f 6d 65 20 6e ...@item.Garbage.added.by.some.n
3de00 6f 74 20 74 6f 74 61 6c 6c 79 20 73 75 63 63 65 73 73 66 75 6c 20 63 6f 70 79 20 6f 70 65 72 61 ot.totally.successful.copy.opera
3de20 74 69 6f 6e 2e 0a 0a 40 69 74 65 6d 0a 4d 61 6c 69 63 69 6f 75 73 20 64 61 74 61 20 61 64 64 65 tion...@item.Malicious.data.adde
3de40 64 20 74 6f 20 74 68 65 20 66 69 6c 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 6d 61 6b 65 20 69 d.to.the.file.in.order.to.make.i
3de60 74 73 20 74 6f 74 61 6c 20 73 69 7a 65 20 61 6e 64 0a 68 61 73 68 20 76 61 6c 75 65 20 28 66 6f ts.total.size.and.hash.value.(fo
3de80 72 20 61 20 63 68 6f 73 65 6e 20 68 61 73 68 29 20 63 6f 69 6e 63 69 64 65 20 77 69 74 68 20 74 r.a.chosen.hash).coincide.with.t
3dea0 68 6f 73 65 20 6f 66 20 61 6e 6f 74 68 65 72 20 66 69 6c 65 2e 0a 0a 40 69 74 65 6d 0a 49 6e 20 hose.of.another.file...@item.In.
3dec0 72 61 72 65 20 63 61 73 65 73 2c 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 63 6f 75 6c 64 20 rare.cases,.trailing.data.could.
3dee0 62 65 20 74 68 65 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 20 6f 66 20 61 6e 6f 74 68 65 72 be.the.corrupt.header.of.another
3df00 0a 6d 65 6d 62 65 72 2e 20 49 6e 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 6f 72 20 63 6f 6e 63 61 .member..In.multimember.or.conca
3df20 74 65 6e 61 74 65 64 20 66 69 6c 65 73 20 74 68 65 20 70 72 6f 62 61 62 69 6c 69 74 79 20 6f 66 tenated.files.the.probability.of
3df40 0a 63 6f 72 72 75 70 74 69 6f 6e 20 68 61 70 70 65 6e 69 6e 67 20 69 6e 20 74 68 65 20 6d 61 67 .corruption.happening.in.the.mag
3df60 69 63 20 62 79 74 65 73 20 69 73 20 35 20 74 69 6d 65 73 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e ic.bytes.is.5.times.smaller.than
3df80 20 74 68 65 0a 70 72 6f 62 61 62 69 6c 69 74 79 20 6f 66 20 67 65 74 74 69 6e 67 20 61 20 66 61 .the.probability.of.getting.a.fa
3dfa0 6c 73 65 20 70 6f 73 69 74 69 76 65 20 63 61 75 73 65 64 20 62 79 20 74 68 65 20 63 6f 72 72 75 lse.positive.caused.by.the.corru
3dfc0 70 74 69 6f 6e 20 6f 66 20 74 68 65 0a 69 6e 74 65 67 72 69 74 79 20 69 6e 66 6f 72 6d 61 74 69 ption.of.the.integrity.informati
3dfe0 6f 6e 20 69 74 73 65 6c 66 2e 20 54 68 65 72 65 66 6f 72 65 20 69 74 20 63 61 6e 20 62 65 20 63 on.itself..Therefore.it.can.be.c
3e000 6f 6e 73 69 64 65 72 65 64 20 74 6f 20 62 65 20 62 65 6c 6f 77 0a 74 68 65 20 6e 6f 69 73 65 20 onsidered.to.be.below.the.noise.
3e020 6c 65 76 65 6c 2e 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 74 68 65 20 74 65 73 74 20 75 73 level..Additionally,.the.test.us
3e040 65 64 20 62 79 20 6c 7a 69 70 20 74 6f 20 64 69 73 63 72 69 6d 69 6e 61 74 65 0a 74 72 61 69 6c ed.by.lzip.to.discriminate.trail
3e060 69 6e 67 20 64 61 74 61 20 66 72 6f 6d 20 61 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 20 68 ing.data.from.a.corrupt.header.h
3e080 61 73 20 61 20 48 61 6d 6d 69 6e 67 20 64 69 73 74 61 6e 63 65 20 28 48 44 29 20 6f 66 20 33 2c as.a.Hamming.distance.(HD).of.3,
3e0a0 0a 61 6e 64 20 74 68 65 20 33 20 62 69 74 20 66 6c 69 70 73 20 6d 75 73 74 20 68 61 70 70 65 6e .and.the.3.bit.flips.must.happen
3e0c0 20 69 6e 20 64 69 66 66 65 72 65 6e 74 20 6d 61 67 69 63 20 62 79 74 65 73 20 66 6f 72 20 74 68 .in.different.magic.bytes.for.th
3e0e0 65 20 74 65 73 74 20 74 6f 0a 66 61 69 6c 2e 20 49 6e 20 61 6e 79 20 63 61 73 65 2c 20 74 68 65 e.test.to.fail..In.any.case,.the
3e100 20 6f 70 74 69 6f 6e 20 40 6f 70 74 69 6f 6e 7b 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 .option.@option{--trailing-error
3e120 7d 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 0a 61 6e 79 20 63 6f 72 72 75 70 74 20 68 65 }.guarantees.that.any.corrupt.he
3e140 61 64 65 72 20 69 73 20 64 65 74 65 63 74 65 64 2e 0a 40 65 6e 64 20 69 74 65 6d 69 7a 65 0a 0a ader.is.detected..@end.itemize..
3e160 54 72 61 69 6c 69 6e 67 20 64 61 74 61 20 61 72 65 20 69 6e 20 6e 6f 20 77 61 79 20 70 61 72 74 Trailing.data.are.in.no.way.part
3e180 20 6f 66 20 74 68 65 20 6c 7a 69 70 20 66 69 6c 65 20 66 6f 72 6d 61 74 2c 20 62 75 74 20 74 6f .of.the.lzip.file.format,.but.to
3e1a0 6f 6c 73 0a 72 65 61 64 69 6e 67 20 6c 7a 69 70 20 66 69 6c 65 73 20 61 72 65 20 65 78 70 65 63 ols.reading.lzip.files.are.expec
3e1c0 74 65 64 20 74 6f 20 62 65 68 61 76 65 20 61 73 20 63 6f 72 72 65 63 74 6c 79 20 61 6e 64 20 75 ted.to.behave.as.correctly.and.u
3e1e0 73 65 66 75 6c 6c 79 20 61 73 0a 70 6f 73 73 69 62 6c 65 20 69 6e 20 74 68 65 20 70 72 65 73 65 sefully.as.possible.in.the.prese
3e200 6e 63 65 20 6f 66 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 2e 0a 0a 54 72 61 69 6c 69 6e 67 20 nce.of.trailing.data...Trailing.
3e220 64 61 74 61 20 63 61 6e 20 62 65 20 73 61 66 65 6c 79 20 69 67 6e 6f 72 65 64 20 69 6e 20 6d 6f data.can.be.safely.ignored.in.mo
3e240 73 74 20 63 61 73 65 73 2e 20 49 6e 20 73 6f 6d 65 20 63 61 73 65 73 2c 20 6c 69 6b 65 0a 74 68 st.cases..In.some.cases,.like.th
3e260 61 74 20 6f 66 20 75 73 65 72 2d 61 64 64 65 64 20 64 61 74 61 2c 20 74 68 65 79 20 61 72 65 20 at.of.user-added.data,.they.are.
3e280 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 69 67 6e 6f 72 65 64 2e 20 49 6e 20 74 68 6f 73 65 expected.to.be.ignored..In.those
3e2a0 20 63 61 73 65 73 0a 77 68 65 72 65 20 61 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 .cases.where.a.file.containing.t
3e2c0 72 61 69 6c 69 6e 67 20 64 61 74 61 20 6d 75 73 74 20 62 65 20 72 65 6a 65 63 74 65 64 2c 20 74 railing.data.must.be.rejected,.t
3e2e0 68 65 20 6f 70 74 69 6f 6e 0a 40 6f 70 74 69 6f 6e 7b 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 he.option.@option{--trailing-err
3e300 6f 72 7d 20 63 61 6e 20 62 65 20 75 73 65 64 2e 20 40 78 72 65 66 7b 2d 2d 74 72 61 69 6c 69 6e or}.can.be.used..@xref{--trailin
3e320 67 2d 65 72 72 6f 72 7d 2e 0a 0a 0a 40 6e 6f 64 65 20 45 78 61 6d 70 6c 65 73 0a 40 63 68 61 70 g-error}....@node.Examples.@chap
3e340 74 65 72 20 41 20 73 6d 61 6c 6c 20 74 75 74 6f 72 69 61 6c 20 77 69 74 68 20 65 78 61 6d 70 6c ter.A.small.tutorial.with.exampl
3e360 65 73 0a 40 63 69 6e 64 65 78 20 65 78 61 6d 70 6c 65 73 0a 0a 57 41 52 4e 49 4e 47 21 20 45 76 es.@cindex.examples..WARNING!.Ev
3e380 65 6e 20 69 66 20 6c 7a 69 70 20 69 73 20 62 75 67 2d 66 72 65 65 2c 20 6f 74 68 65 72 20 63 61 en.if.lzip.is.bug-free,.other.ca
3e3a0 75 73 65 73 20 6d 61 79 20 72 65 73 75 6c 74 20 69 6e 20 61 20 63 6f 72 72 75 70 74 0a 63 6f 6d uses.may.result.in.a.corrupt.com
3e3c0 70 72 65 73 73 65 64 20 66 69 6c 65 20 28 62 75 67 73 20 69 6e 20 74 68 65 20 73 79 73 74 65 6d pressed.file.(bugs.in.the.system
3e3e0 20 6c 69 62 72 61 72 69 65 73 2c 20 6d 65 6d 6f 72 79 20 65 72 72 6f 72 73 2c 20 65 74 63 29 2e .libraries,.memory.errors,.etc).
3e400 0a 54 68 65 72 65 66 6f 72 65 2c 20 69 66 20 74 68 65 20 64 61 74 61 20 79 6f 75 20 61 72 65 20 .Therefore,.if.the.data.you.are.
3e420 67 6f 69 6e 67 20 74 6f 20 63 6f 6d 70 72 65 73 73 20 61 72 65 20 69 6d 70 6f 72 74 61 6e 74 2c going.to.compress.are.important,
3e440 20 67 69 76 65 20 74 68 65 0a 6f 70 74 69 6f 6e 20 40 6f 70 74 69 6f 6e 7b 2d 2d 6b 65 65 70 7d .give.the.option.@option{--keep}
3e460 20 74 6f 20 6c 7a 69 70 20 61 6e 64 20 64 6f 6e 27 74 20 72 65 6d 6f 76 65 20 74 68 65 20 6f 72 .to.lzip.and.don't.remove.the.or
3e480 69 67 69 6e 61 6c 20 66 69 6c 65 20 75 6e 74 69 6c 20 79 6f 75 0a 63 68 65 63 6b 20 74 68 65 20 iginal.file.until.you.check.the.
3e4a0 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 77 69 74 68 20 61 20 63 6f 6d 6d 61 6e 64 20 6c compressed.file.with.a.command.l
3e4c0 69 6b 65 0a 40 77 7b 40 73 61 6d 70 7b 6c 7a 69 70 20 2d 63 64 20 66 69 6c 65 2e 6c 7a 20 7c 20 ike.@w{@samp{lzip.-cd.file.lz.|.
3e4e0 63 6d 70 20 66 69 6c 65 20 2d 7d 7d 2e 20 4d 6f 73 74 20 52 41 4d 20 65 72 72 6f 72 73 20 68 61 cmp.file.-}}..Most.RAM.errors.ha
3e500 70 70 65 6e 69 6e 67 20 64 75 72 69 6e 67 0a 63 6f 6d 70 72 65 73 73 69 6f 6e 20 63 61 6e 20 6f ppening.during.compression.can.o
3e520 6e 6c 79 20 62 65 20 64 65 74 65 63 74 65 64 20 62 79 20 63 6f 6d 70 61 72 69 6e 67 20 74 68 65 nly.be.detected.by.comparing.the
3e540 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 77 69 74 68 20 74 68 65 0a 6f 72 69 67 69 6e .compressed.file.with.the.origin
3e560 61 6c 20 62 65 63 61 75 73 65 20 74 68 65 20 63 6f 72 72 75 70 74 69 6f 6e 20 68 61 70 70 65 6e al.because.the.corruption.happen
3e580 73 20 62 65 66 6f 72 65 20 6c 7a 69 70 20 63 6f 6d 70 72 65 73 73 65 73 20 74 68 65 20 52 41 4d s.before.lzip.compresses.the.RAM
3e5a0 0a 63 6f 6e 74 65 6e 74 73 2c 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 61 20 76 61 6c 69 64 20 .contents,.resulting.in.a.valid.
3e5c0 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 77 72 6f 6e 67 compressed.file.containing.wrong
3e5e0 20 64 61 74 61 2e 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 31 3a 20 45 78 74 .data...@noindent.Example.1:.Ext
3e600 72 61 63 74 20 61 6c 6c 20 74 68 65 20 66 69 6c 65 73 20 66 72 6f 6d 20 61 72 63 68 69 76 65 20 ract.all.the.files.from.archive.
3e620 40 66 69 6c 65 7b 66 6f 6f 2e 74 61 72 2e 6c 7a 7d 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a 20 20 74 @file{foo.tar.lz}...@example...t
3e640 61 72 20 2d 78 66 20 66 6f 6f 2e 74 61 72 2e 6c 7a 0a 6f 72 0a 20 20 6c 7a 69 70 20 2d 63 64 20 ar.-xf.foo.tar.lz.or...lzip.-cd.
3e660 66 6f 6f 2e 74 61 72 2e 6c 7a 20 7c 20 74 61 72 20 2d 78 66 20 2d 0a 40 65 6e 64 20 65 78 61 6d foo.tar.lz.|.tar.-xf.-.@end.exam
3e680 70 6c 65 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 32 3a 20 52 65 70 6c 61 63 ple..@noindent.Example.2:.Replac
3e6a0 65 20 61 20 72 65 67 75 6c 61 72 20 66 69 6c 65 20 77 69 74 68 20 69 74 73 20 63 6f 6d 70 72 65 e.a.regular.file.with.its.compre
3e6c0 73 73 65 64 20 76 65 72 73 69 6f 6e 20 40 66 69 6c 65 7b 66 69 6c 65 2e 6c 7a 7d 0a 61 6e 64 20 ssed.version.@file{file.lz}.and.
3e6e0 73 68 6f 77 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 2e 0a 0a 40 65 78 show.the.compression.ratio...@ex
3e700 61 6d 70 6c 65 0a 6c 7a 69 70 20 2d 76 20 66 69 6c 65 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a ample.lzip.-v.file.@end.example.
3e720 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 33 3a 20 4c 69 6b 65 20 65 78 61 6d 70 .@noindent.Example.3:.Like.examp
3e740 6c 65 20 32 20 62 75 74 20 74 68 65 20 63 72 65 61 74 65 64 20 40 66 69 6c 65 7b 66 69 6c 65 2e le.2.but.the.created.@file{file.
3e760 6c 7a 7d 20 69 73 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 77 69 74 68 0a 61 20 6d 65 6d 62 65 72 lz}.is.multimember.with.a.member
3e780 20 73 69 7a 65 20 6f 66 20 40 77 7b 31 20 4d 69 42 7d 2e 20 54 68 65 20 63 6f 6d 70 72 65 73 73 .size.of.@w{1.MiB}..The.compress
3e7a0 69 6f 6e 20 72 61 74 69 6f 20 69 73 20 6e 6f 74 20 73 68 6f 77 6e 2e 0a 0a 40 65 78 61 6d 70 6c ion.ratio.is.not.shown...@exampl
3e7c0 65 0a 6c 7a 69 70 20 2d 62 20 31 4d 69 42 20 66 69 6c 65 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 e.lzip.-b.1MiB.file.@end.example
3e7e0 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 34 3a 20 52 65 73 74 6f 72 65 20 61 ..@noindent.Example.4:.Restore.a
3e800 20 72 65 67 75 6c 61 72 20 66 69 6c 65 20 66 72 6f 6d 20 69 74 73 20 63 6f 6d 70 72 65 73 73 65 .regular.file.from.its.compresse
3e820 64 20 76 65 72 73 69 6f 6e 0a 40 66 69 6c 65 7b 66 69 6c 65 2e 6c 7a 7d 2e 20 49 66 20 74 68 65 d.version.@file{file.lz}..If.the
3e840 20 6f 70 65 72 61 74 69 6f 6e 20 69 73 20 73 75 63 63 65 73 73 66 75 6c 2c 20 40 66 69 6c 65 7b .operation.is.successful,.@file{
3e860 66 69 6c 65 2e 6c 7a 7d 20 69 73 20 72 65 6d 6f 76 65 64 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a 6c file.lz}.is.removed...@example.l
3e880 7a 69 70 20 2d 64 20 66 69 6c 65 2e 6c 7a 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 40 6e 6f zip.-d.file.lz.@end.example..@no
3e8a0 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 35 3a 20 43 68 65 63 6b 20 74 68 65 20 69 6e 74 65 indent.Example.5:.Check.the.inte
3e8c0 67 72 69 74 79 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 40 66 69 grity.of.the.compressed.file.@fi
3e8e0 6c 65 7b 66 69 6c 65 2e 6c 7a 7d 20 61 6e 64 0a 73 68 6f 77 20 73 74 61 74 75 73 2e 0a 0a 40 65 le{file.lz}.and.show.status...@e
3e900 78 61 6d 70 6c 65 0a 6c 7a 69 70 20 2d 74 76 20 66 69 6c 65 2e 6c 7a 0a 40 65 6e 64 20 65 78 61 xample.lzip.-tv.file.lz.@end.exa
3e920 6d 70 6c 65 0a 0a 40 61 6e 63 68 6f 72 7b 63 6f 6e 63 61 74 2d 65 78 61 6d 70 6c 65 7d 0a 40 6e mple..@anchor{concat-example}.@n
3e940 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 36 3a 20 54 68 65 20 72 69 67 68 74 20 77 61 79 oindent.Example.6:.The.right.way
3e960 20 6f 66 20 63 6f 6e 63 61 74 65 6e 61 74 69 6e 67 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 .of.concatenating.the.decompress
3e980 65 64 20 6f 75 74 70 75 74 20 6f 66 20 74 77 6f 20 6f 72 0a 6d 6f 72 65 20 63 6f 6d 70 72 65 73 ed.output.of.two.or.more.compres
3e9a0 73 65 64 20 66 69 6c 65 73 2e 20 40 78 72 65 66 7b 54 72 61 69 6c 69 6e 67 20 64 61 74 61 7d 2e sed.files..@xref{Trailing.data}.
3e9c0 0a 0a 40 65 78 61 6d 70 6c 65 0a 44 6f 6e 27 74 20 64 6f 20 74 68 69 73 0a 20 20 63 61 74 20 66 ..@example.Don't.do.this...cat.f
3e9e0 69 6c 65 31 2e 6c 7a 20 66 69 6c 65 32 2e 6c 7a 20 66 69 6c 65 33 2e 6c 7a 20 7c 20 6c 7a 69 70 ile1.lz.file2.lz.file3.lz.|.lzip
3ea00 20 2d 64 20 2d 0a 44 6f 20 74 68 69 73 20 69 6e 73 74 65 61 64 0a 20 20 6c 7a 69 70 20 2d 63 64 .-d.-.Do.this.instead...lzip.-cd
3ea20 20 66 69 6c 65 31 2e 6c 7a 20 66 69 6c 65 32 2e 6c 7a 20 66 69 6c 65 33 2e 6c 7a 0a 40 65 6e 64 .file1.lz.file2.lz.file3.lz.@end
3ea40 20 65 78 61 6d 70 6c 65 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 37 3a 20 44 .example..@noindent.Example.7:.D
3ea60 65 63 6f 6d 70 72 65 73 73 20 40 66 69 6c 65 7b 66 69 6c 65 2e 6c 7a 7d 20 70 61 72 74 69 61 6c ecompress.@file{file.lz}.partial
3ea80 6c 79 20 75 6e 74 69 6c 20 40 77 7b 31 30 20 4b 69 42 7d 20 6f 66 0a 64 65 63 6f 6d 70 72 65 73 ly.until.@w{10.KiB}.of.decompres
3eaa0 73 65 64 20 64 61 74 61 20 61 72 65 20 70 72 6f 64 75 63 65 64 2e 0a 0a 40 65 78 61 6d 70 6c 65 sed.data.are.produced...@example
3eac0 0a 6c 7a 69 70 20 2d 63 64 20 66 69 6c 65 2e 6c 7a 20 7c 20 64 64 20 62 73 3d 31 30 32 34 20 63 .lzip.-cd.file.lz.|.dd.bs=1024.c
3eae0 6f 75 6e 74 3d 31 30 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a ount=10.@end.example..@noindent.
3eb00 45 78 61 6d 70 6c 65 20 38 3a 20 44 65 63 6f 6d 70 72 65 73 73 20 40 66 69 6c 65 7b 66 69 6c 65 Example.8:.Decompress.@file{file
3eb20 2e 6c 7a 7d 20 70 61 72 74 69 61 6c 6c 79 20 66 72 6f 6d 20 64 65 63 6f 6d 70 72 65 73 73 65 64 .lz}.partially.from.decompressed
3eb40 20 62 79 74 65 20 61 74 0a 6f 66 66 73 65 74 20 31 30 30 30 30 20 74 6f 20 64 65 63 6f 6d 70 72 .byte.at.offset.10000.to.decompr
3eb60 65 73 73 65 64 20 62 79 74 65 20 61 74 20 6f 66 66 73 65 74 20 31 34 39 39 39 20 28 35 30 30 30 essed.byte.at.offset.14999.(5000
3eb80 20 62 79 74 65 73 20 61 72 65 20 70 72 6f 64 75 63 65 64 29 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a .bytes.are.produced)...@example.
3eba0 6c 7a 69 70 20 2d 63 64 20 66 69 6c 65 2e 6c 7a 20 7c 20 64 64 20 62 73 3d 31 30 30 30 20 73 6b lzip.-cd.file.lz.|.dd.bs=1000.sk
3ebc0 69 70 3d 31 30 20 63 6f 75 6e 74 3d 35 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 40 6e 6f 69 ip=10.count=5.@end.example..@noi
3ebe0 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 39 3a 20 43 6f 6d 70 72 65 73 73 20 61 20 77 68 6f 6c ndent.Example.9:.Compress.a.whol
3ec00 65 20 64 65 76 69 63 65 20 69 6e 20 2f 64 65 76 2f 73 64 63 20 61 6e 64 20 73 65 6e 64 20 74 68 e.device.in./dev/sdc.and.send.th
3ec20 65 20 6f 75 74 70 75 74 20 74 6f 0a 40 66 69 6c 65 7b 66 69 6c 65 2e 6c 7a 7d 2e 0a 0a 40 65 78 e.output.to.@file{file.lz}...@ex
3ec40 61 6d 70 6c 65 0a 20 20 6c 7a 69 70 20 2d 63 20 2f 64 65 76 2f 73 64 63 20 3e 20 66 69 6c 65 2e ample...lzip.-c./dev/sdc.>.file.
3ec60 6c 7a 0a 6f 72 0a 20 20 6c 7a 69 70 20 2f 64 65 76 2f 73 64 63 20 2d 6f 20 66 69 6c 65 2e 6c 7a lz.or...lzip./dev/sdc.-o.file.lz
3ec80 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 .@end.example..@noindent.Example
3eca0 20 31 30 3a 20 43 72 65 61 74 65 20 61 20 6d 75 6c 74 69 76 6f 6c 75 6d 65 20 63 6f 6d 70 72 65 .10:.Create.a.multivolume.compre
3ecc0 73 73 65 64 20 74 61 72 20 61 72 63 68 69 76 65 20 77 69 74 68 20 61 20 76 6f 6c 75 6d 65 20 73 ssed.tar.archive.with.a.volume.s
3ece0 69 7a 65 0a 6f 66 20 40 77 7b 31 34 34 30 20 4b 69 42 7d 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a 74 ize.of.@w{1440.KiB}...@example.t
3ed00 61 72 20 2d 63 20 73 6f 6d 65 5f 64 69 72 65 63 74 6f 72 79 20 7c 20 6c 7a 69 70 20 2d 53 20 31 ar.-c.some_directory.|.lzip.-S.1
3ed20 34 34 30 4b 69 42 20 2d 6f 20 76 6f 6c 75 6d 65 5f 6e 61 6d 65 20 2d 0a 40 65 6e 64 20 65 78 61 440KiB.-o.volume_name.-.@end.exa
3ed40 6d 70 6c 65 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 31 31 3a 20 45 78 74 72 mple..@noindent.Example.11:.Extr
3ed60 61 63 74 20 61 20 6d 75 6c 74 69 76 6f 6c 75 6d 65 20 63 6f 6d 70 72 65 73 73 65 64 20 74 61 72 act.a.multivolume.compressed.tar
3ed80 20 61 72 63 68 69 76 65 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a 6c 7a 69 70 20 2d 63 64 20 76 6f 6c .archive...@example.lzip.-cd.vol
3eda0 75 6d 65 5f 6e 61 6d 65 2a 2e 6c 7a 20 7c 20 74 61 72 20 2d 78 66 20 2d 0a 40 65 6e 64 20 65 78 ume_name*.lz.|.tar.-xf.-.@end.ex
3edc0 61 6d 70 6c 65 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 31 32 3a 20 43 72 65 ample..@noindent.Example.12:.Cre
3ede0 61 74 65 20 61 20 6d 75 6c 74 69 76 6f 6c 75 6d 65 20 63 6f 6d 70 72 65 73 73 65 64 20 62 61 63 ate.a.multivolume.compressed.bac
3ee00 6b 75 70 20 6f 66 20 61 20 6c 61 72 67 65 20 64 61 74 61 62 61 73 65 20 66 69 6c 65 0a 77 69 74 kup.of.a.large.database.file.wit
3ee20 68 20 61 20 76 6f 6c 75 6d 65 20 73 69 7a 65 20 6f 66 20 40 77 7b 36 35 30 20 4d 42 7d 2c 20 77 h.a.volume.size.of.@w{650.MB},.w
3ee40 68 65 72 65 20 65 61 63 68 20 76 6f 6c 75 6d 65 20 69 73 20 61 20 6d 75 6c 74 69 6d 65 6d 62 65 here.each.volume.is.a.multimembe
3ee60 72 20 66 69 6c 65 0a 77 69 74 68 20 61 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 6f 66 20 40 77 7b r.file.with.a.member.size.of.@w{
3ee80 33 32 20 4d 69 42 7d 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a 6c 7a 69 70 20 2d 62 20 33 32 4d 69 42 32.MiB}...@example.lzip.-b.32MiB
3eea0 20 2d 53 20 36 35 30 4d 42 20 62 69 67 5f 64 62 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 0a .-S.650MB.big_db.@end.example...
3eec0 40 6e 6f 64 65 20 50 72 6f 62 6c 65 6d 73 0a 40 63 68 61 70 74 65 72 20 52 65 70 6f 72 74 69 6e @node.Problems.@chapter.Reportin
3eee0 67 20 62 75 67 73 0a 40 63 69 6e 64 65 78 20 62 75 67 73 0a 40 63 69 6e 64 65 78 20 67 65 74 74 g.bugs.@cindex.bugs.@cindex.gett
3ef00 69 6e 67 20 68 65 6c 70 0a 0a 54 68 65 72 65 20 61 72 65 20 70 72 6f 62 61 62 6c 79 20 62 75 67 ing.help..There.are.probably.bug
3ef20 73 20 69 6e 20 6c 7a 69 70 2e 20 54 68 65 72 65 20 61 72 65 20 63 65 72 74 61 69 6e 6c 79 20 65 s.in.lzip..There.are.certainly.e
3ef40 72 72 6f 72 73 20 61 6e 64 0a 6f 6d 69 73 73 69 6f 6e 73 20 69 6e 20 74 68 69 73 20 6d 61 6e 75 rrors.and.omissions.in.this.manu
3ef60 61 6c 2e 20 49 66 20 79 6f 75 20 72 65 70 6f 72 74 20 74 68 65 6d 2c 20 74 68 65 79 20 77 69 6c al..If.you.report.them,.they.wil
3ef80 6c 20 67 65 74 20 66 69 78 65 64 2e 20 49 66 0a 79 6f 75 20 64 6f 6e 27 74 2c 20 6e 6f 20 6f 6e l.get.fixed..If.you.don't,.no.on
3efa0 65 20 77 69 6c 6c 20 65 76 65 72 20 6b 6e 6f 77 20 61 62 6f 75 74 20 74 68 65 6d 20 61 6e 64 20 e.will.ever.know.about.them.and.
3efc0 74 68 65 79 20 77 69 6c 6c 20 72 65 6d 61 69 6e 20 75 6e 66 69 78 65 64 0a 66 6f 72 20 61 6c 6c they.will.remain.unfixed.for.all
3efe0 20 65 74 65 72 6e 69 74 79 2c 20 69 66 20 6e 6f 74 20 6c 6f 6e 67 65 72 2e 0a 0a 49 66 20 79 6f .eternity,.if.not.longer...If.yo
3f000 75 20 66 69 6e 64 20 61 20 62 75 67 20 69 6e 20 6c 7a 69 70 2c 20 70 6c 65 61 73 65 20 73 65 6e u.find.a.bug.in.lzip,.please.sen
3f020 64 20 65 6c 65 63 74 72 6f 6e 69 63 20 6d 61 69 6c 20 74 6f 0a 40 65 6d 61 69 6c 7b 6c 7a 69 70 d.electronic.mail.to.@email{lzip
3f040 2d 62 75 67 40 40 6e 6f 6e 67 6e 75 2e 6f 72 67 7d 2e 20 49 6e 63 6c 75 64 65 20 74 68 65 20 76 -bug@@nongnu.org}..Include.the.v
3f060 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 2c 20 77 68 69 63 68 20 79 6f 75 20 63 61 6e 0a 66 69 6e ersion.number,.which.you.can.fin
3f080 64 20 62 79 20 72 75 6e 6e 69 6e 67 20 40 77 7b 40 73 61 6d 70 7b 6c 7a 69 70 20 2d 2d 76 65 72 d.by.running.@w{@samp{lzip.--ver
3f0a0 73 69 6f 6e 7d 7d 2e 0a 0a 0a 40 6e 6f 64 65 20 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 sion}}....@node.Reference.source
3f0c0 20 63 6f 64 65 0a 40 61 70 70 65 6e 64 69 78 20 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 .code.@appendix.Reference.source
3f0e0 20 63 6f 64 65 0a 40 63 69 6e 64 65 78 20 72 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 20 63 .code.@cindex.reference.source.c
3f100 6f 64 65 0a 0a 40 76 65 72 62 61 74 69 6d 0a 2f 2a 20 4c 7a 64 20 2d 20 45 64 75 63 61 74 69 6f ode..@verbatim./*.Lzd.-.Educatio
3f120 6e 61 6c 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 66 6f 72 20 74 68 65 20 6c 7a 69 70 20 66 6f nal.decompressor.for.the.lzip.fo
3f140 72 6d 61 74 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 33 2d 32 30 32 35 20 rmat....Copyright.(C).2013-2025.
3f160 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 Antonio.Diaz.Diaz......This.prog
3f180 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 2e 20 52 65 64 69 73 74 72 69 62 75 ram.is.free.software..Redistribu
3f1a0 74 69 6f 6e 20 61 6e 64 20 75 73 65 20 69 6e 20 73 6f 75 72 63 65 20 61 6e 64 0a 20 20 20 62 69 tion.and.use.in.source.and....bi
3f1c0 6e 61 72 79 20 66 6f 72 6d 73 2c 20 77 69 74 68 20 6f 72 20 77 69 74 68 6f 75 74 20 6d 6f 64 69 nary.forms,.with.or.without.modi
3f1e0 66 69 63 61 74 69 6f 6e 2c 20 61 72 65 20 70 65 72 6d 69 74 74 65 64 20 70 72 6f 76 69 64 65 64 fication,.are.permitted.provided
3f200 0a 20 20 20 74 68 61 74 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e ....that.the.following.condition
3f220 73 20 61 72 65 20 6d 65 74 3a 0a 0a 20 20 20 31 2e 20 52 65 64 69 73 74 72 69 62 75 74 69 6f 6e s.are.met:.....1..Redistribution
3f240 73 20 6f 66 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6d 75 73 74 20 72 65 74 61 69 6e 20 74 68 65 s.of.source.code.must.retain.the
3f260 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 0a 20 20 20 6e 6f 74 69 63 65 2c 20 74 68 69 73 .above.copyright....notice,.this
3f280 20 6c 69 73 74 20 6f 66 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 61 6e 64 20 74 68 65 20 66 6f 6c .list.of.conditions,.and.the.fol
3f2a0 6c 6f 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 2e 0a 0a 20 20 20 32 2e 20 52 65 64 69 73 74 lowing.disclaimer......2..Redist
3f2c0 72 69 62 75 74 69 6f 6e 73 20 69 6e 20 62 69 6e 61 72 79 20 66 6f 72 6d 20 6d 75 73 74 20 72 65 ributions.in.binary.form.must.re
3f2e0 70 72 6f 64 75 63 65 20 74 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 0a 20 20 20 6e produce.the.above.copyright....n
3f300 6f 74 69 63 65 2c 20 74 68 69 73 20 6c 69 73 74 20 6f 66 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 otice,.this.list.of.conditions,.
3f320 61 6e 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 20 69 6e 20 and.the.following.disclaimer.in.
3f340 74 68 65 0a 20 20 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 61 6e 64 2f 6f 72 20 6f 74 68 65 the....documentation.and/or.othe
3f360 72 20 6d 61 74 65 72 69 61 6c 73 20 70 72 6f 76 69 64 65 64 20 77 69 74 68 20 74 68 65 20 64 69 r.materials.provided.with.the.di
3f380 73 74 72 69 62 75 74 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 stribution......This.program.is.
3f3a0 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 69 74 20 distributed.in.the.hope.that.it.
3f3c0 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 54 48 4f 55 54 20 41 will.be.useful,....but.WITHOUT.A
3f3e0 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d NY.WARRANTY;.without.even.the.im
3f400 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 48 41 4e 54 41 42 49 plied.warranty.of....MERCHANTABI
3f420 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 LITY.or.FITNESS.FOR.A.PARTICULAR
3f440 20 50 55 52 50 4f 53 45 2e 0a 2a 2f 0a 2f 2a 0a 20 20 20 45 78 69 74 20 73 74 61 74 75 73 3a 20 .PURPOSE..*/./*....Exit.status:.
3f460 30 20 66 6f 72 20 61 20 6e 6f 72 6d 61 6c 20 65 78 69 74 2c 20 31 20 66 6f 72 20 65 6e 76 69 72 0.for.a.normal.exit,.1.for.envir
3f480 6f 6e 6d 65 6e 74 61 6c 20 70 72 6f 62 6c 65 6d 73 0a 20 20 20 28 66 69 6c 65 20 6e 6f 74 20 66 onmental.problems....(file.not.f
3f4a0 6f 75 6e 64 2c 20 69 6e 76 61 6c 69 64 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 6f 70 74 69 6f ound,.invalid.command-line.optio
3f4c0 6e 73 2c 20 49 2f 4f 20 65 72 72 6f 72 73 2c 20 65 74 63 29 2c 20 32 20 74 6f 0a 20 20 20 69 6e ns,.I/O.errors,.etc),.2.to....in
3f4e0 64 69 63 61 74 65 20 61 20 63 6f 72 72 75 70 74 20 6f 72 20 69 6e 76 61 6c 69 64 20 69 6e 70 75 dicate.a.corrupt.or.invalid.inpu
3f500 74 20 66 69 6c 65 2e 0a 2a 2f 0a 0a 23 69 6e 63 6c 75 64 65 20 3c 61 6c 67 6f 72 69 74 68 6d 3e t.file..*/..#include.<algorithm>
3f520 0a 23 69 6e 63 6c 75 64 65 20 3c 63 65 72 72 6e 6f 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 .#include.<cerrno>.#include.<cst
3f540 64 69 6f 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 64 6c 69 62 3e 0a 23 69 6e 63 6c 75 64 65 dio>.#include.<cstdlib>.#include
3f560 20 3c 63 73 74 72 69 6e 67 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6e 74 2e 68 3e 0a 23 .<cstring>.#include.<stdint.h>.#
3f580 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 0a 23 69 66 20 64 65 66 69 6e 65 64 20 5f include.<unistd.h>.#if.defined._
3f5a0 5f 4d 53 56 43 52 54 5f 5f 20 7c 7c 20 64 65 66 69 6e 65 64 20 5f 5f 4f 53 32 5f 5f 20 7c 7c 20 _MSVCRT__.||.defined.__OS2__.||.
3f5c0 64 65 66 69 6e 65 64 20 5f 5f 44 4a 47 50 50 5f 5f 0a 23 69 6e 63 6c 75 64 65 20 3c 66 63 6e 74 defined.__DJGPP__.#include.<fcnt
3f5e0 6c 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 69 6f 2e 68 3e 0a 23 65 6e 64 69 66 0a 0a 0a 63 6c l.h>.#include.<io.h>.#endif...cl
3f600 61 73 73 20 53 74 61 74 65 0a 20 20 7b 0a 20 20 69 6e 74 20 73 74 3b 0a 0a 70 75 62 6c 69 63 3a ass.State...{...int.st;..public:
3f620 0a 20 20 65 6e 75 6d 20 7b 20 73 74 61 74 65 73 20 3d 20 31 32 20 7d 3b 0a 20 20 53 74 61 74 65 ...enum.{.states.=.12.};...State
3f640 28 29 20 3a 20 73 74 28 20 30 20 29 20 7b 7d 0a 20 20 69 6e 74 20 6f 70 65 72 61 74 6f 72 28 29 ().:.st(.0.).{}...int.operator()
3f660 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 73 74 3b 20 7d 0a 20 20 62 6f 6f 6c 20 69 ().const.{.return.st;.}...bool.i
3f680 73 5f 63 68 61 72 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 73 74 20 3c 20 37 3b 20 s_char().const.{.return.st.<.7;.
3f6a0 7d 0a 0a 20 20 76 6f 69 64 20 73 65 74 5f 63 68 61 72 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 }....void.set_char().....{.....c
3f6c0 6f 6e 73 74 20 69 6e 74 20 6e 65 78 74 5b 73 74 61 74 65 73 5d 20 3d 20 7b 20 30 2c 20 30 2c 20 onst.int.next[states].=.{.0,.0,.
3f6e0 30 2c 20 30 2c 20 31 2c 20 32 2c 20 33 2c 20 34 2c 20 35 2c 20 36 2c 20 34 2c 20 35 20 7d 3b 0a 0,.0,.1,.2,.3,.4,.5,.6,.4,.5.};.
3f700 20 20 20 20 73 74 20 3d 20 6e 65 78 74 5b 73 74 5d 3b 0a 20 20 20 20 7d 0a 20 20 76 6f 69 64 20 ....st.=.next[st];.....}...void.
3f720 73 65 74 5f 6d 61 74 63 68 28 29 20 20 20 20 7b 20 73 74 20 3d 20 28 20 73 74 20 3c 20 37 20 29 set_match()....{.st.=.(.st.<.7.)
3f740 20 3f 20 37 20 3a 20 31 30 3b 20 7d 0a 20 20 76 6f 69 64 20 73 65 74 5f 72 65 70 28 29 20 20 20 .?.7.:.10;.}...void.set_rep()...
3f760 20 20 20 7b 20 73 74 20 3d 20 28 20 73 74 20 3c 20 37 20 29 20 3f 20 38 20 3a 20 31 31 3b 20 7d ...{.st.=.(.st.<.7.).?.8.:.11;.}
3f780 0a 20 20 76 6f 69 64 20 73 65 74 5f 73 68 6f 72 74 72 65 70 28 29 20 7b 20 73 74 20 3d 20 28 20 ...void.set_shortrep().{.st.=.(.
3f7a0 73 74 20 3c 20 37 20 29 20 3f 20 39 20 3a 20 31 31 3b 20 7d 0a 20 20 7d 3b 0a 0a 0a 65 6e 75 6d st.<.7.).?.9.:.11;.}...};...enum
3f7c0 20 7b 0a 20 20 6d 69 6e 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3d 20 31 20 3c 3c 20 .{...min_dictionary_size.=.1.<<.
3f7e0 31 32 2c 0a 20 20 6d 61 78 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3d 20 31 20 3c 3c 12,...max_dictionary_size.=.1.<<
3f800 20 32 39 2c 0a 20 20 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 74 73 20 3d 20 33 2c .29,...literal_context_bits.=.3,
3f820 0a 20 20 6c 69 74 65 72 61 6c 5f 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 20 3d 20 30 2c 09 09 ...literal_pos_state_bits.=.0,..
3f840 09 09 2f 2f 20 6e 6f 74 20 75 73 65 64 0a 20 20 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 20 3d ..//.not.used...pos_state_bits.=
3f860 20 32 2c 0a 20 20 70 6f 73 5f 73 74 61 74 65 73 20 3d 20 31 20 3c 3c 20 70 6f 73 5f 73 74 61 74 .2,...pos_states.=.1.<<.pos_stat
3f880 65 5f 62 69 74 73 2c 0a 20 20 70 6f 73 5f 73 74 61 74 65 5f 6d 61 73 6b 20 3d 20 70 6f 73 5f 73 e_bits,...pos_state_mask.=.pos_s
3f8a0 74 61 74 65 73 20 2d 20 31 2c 0a 0a 20 20 6c 65 6e 5f 73 74 61 74 65 73 20 3d 20 34 2c 0a 20 20 tates.-.1,....len_states.=.4,...
3f8c0 64 69 73 5f 73 6c 6f 74 5f 62 69 74 73 20 3d 20 36 2c 0a 20 20 73 74 61 72 74 5f 64 69 73 5f 6d dis_slot_bits.=.6,...start_dis_m
3f8e0 6f 64 65 6c 20 3d 20 34 2c 0a 20 20 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 20 3d 20 31 34 2c 0a odel.=.4,...end_dis_model.=.14,.
3f900 20 20 6d 6f 64 65 6c 65 64 5f 64 69 73 74 61 6e 63 65 73 20 3d 20 31 20 3c 3c 20 28 20 65 6e 64 ..modeled_distances.=.1.<<.(.end
3f920 5f 64 69 73 5f 6d 6f 64 65 6c 20 2f 20 32 20 29 2c 09 2f 2f 20 31 32 38 0a 20 20 64 69 73 5f 61 _dis_model./.2.),.//.128...dis_a
3f940 6c 69 67 6e 5f 62 69 74 73 20 3d 20 34 2c 0a 20 20 64 69 73 5f 61 6c 69 67 6e 5f 73 69 7a 65 20 lign_bits.=.4,...dis_align_size.
3f960 3d 20 31 20 3c 3c 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 2c 0a 0a 20 20 6c 65 6e 5f 6c 6f =.1.<<.dis_align_bits,....len_lo
3f980 77 5f 62 69 74 73 20 3d 20 33 2c 0a 20 20 6c 65 6e 5f 6d 69 64 5f 62 69 74 73 20 3d 20 33 2c 0a w_bits.=.3,...len_mid_bits.=.3,.
3f9a0 20 20 6c 65 6e 5f 68 69 67 68 5f 62 69 74 73 20 3d 20 38 2c 0a 20 20 6c 65 6e 5f 6c 6f 77 5f 73 ..len_high_bits.=.8,...len_low_s
3f9c0 79 6d 62 6f 6c 73 20 3d 20 31 20 3c 3c 20 6c 65 6e 5f 6c 6f 77 5f 62 69 74 73 2c 0a 20 20 6c 65 ymbols.=.1.<<.len_low_bits,...le
3f9e0 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 20 3d 20 31 20 3c 3c 20 6c 65 6e 5f 6d 69 64 5f 62 69 74 n_mid_symbols.=.1.<<.len_mid_bit
3fa00 73 2c 0a 20 20 6c 65 6e 5f 68 69 67 68 5f 73 79 6d 62 6f 6c 73 20 3d 20 31 20 3c 3c 20 6c 65 6e s,...len_high_symbols.=.1.<<.len
3fa20 5f 68 69 67 68 5f 62 69 74 73 2c 0a 20 20 6d 61 78 5f 6c 65 6e 5f 73 79 6d 62 6f 6c 73 20 3d 20 _high_bits,...max_len_symbols.=.
3fa40 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 2b 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c len_low_symbols.+.len_mid_symbol
3fa60 73 20 2b 20 6c 65 6e 5f 68 69 67 68 5f 73 79 6d 62 6f 6c 73 2c 0a 0a 20 20 6d 69 6e 5f 6d 61 74 s.+.len_high_symbols,....min_mat
3fa80 63 68 5f 6c 65 6e 20 3d 20 32 2c 09 09 09 09 09 2f 2f 20 6d 75 73 74 20 62 65 20 32 0a 0a 20 20 ch_len.=.2,.....//.must.be.2....
3faa0 62 69 74 5f 6d 6f 64 65 6c 5f 6d 6f 76 65 5f 62 69 74 73 20 3d 20 35 2c 0a 20 20 62 69 74 5f 6d bit_model_move_bits.=.5,...bit_m
3fac0 6f 64 65 6c 5f 74 6f 74 61 6c 5f 62 69 74 73 20 3d 20 31 31 2c 0a 20 20 62 69 74 5f 6d 6f 64 65 odel_total_bits.=.11,...bit_mode
3fae0 6c 5f 74 6f 74 61 6c 20 3d 20 31 20 3c 3c 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 5f 62 l_total.=.1.<<.bit_model_total_b
3fb00 69 74 73 20 7d 3b 0a 0a 73 74 72 75 63 74 20 42 69 74 5f 6d 6f 64 65 6c 0a 20 20 7b 0a 20 20 69 its.};..struct.Bit_model...{...i
3fb20 6e 74 20 70 72 6f 62 61 62 69 6c 69 74 79 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 28 29 20 3a 20 nt.probability;...Bit_model().:.
3fb40 70 72 6f 62 61 62 69 6c 69 74 79 28 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 20 2f 20 32 probability(.bit_model_total./.2
3fb60 20 29 20 7b 7d 0a 20 20 7d 3b 0a 0a 73 74 72 75 63 74 20 4c 65 6e 5f 6d 6f 64 65 6c 0a 20 20 7b .).{}...};..struct.Len_model...{
3fb80 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 63 68 6f 69 63 65 31 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 ...Bit_model.choice1;...Bit_mode
3fba0 6c 20 63 68 6f 69 63 65 32 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6c 6f 77 5b 70 6f l.choice2;...Bit_model.bm_low[po
3fbc0 73 5f 73 74 61 74 65 73 5d 5b 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 5d 3b 0a 20 20 42 69 s_states][len_low_symbols];...Bi
3fbe0 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6d 69 64 5b 70 6f 73 5f 73 74 61 74 65 73 5d 5b 6c 65 6e 5f 6d t_model.bm_mid[pos_states][len_m
3fc00 69 64 5f 73 79 6d 62 6f 6c 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 68 69 67 68 id_symbols];...Bit_model.bm_high
3fc20 5b 6c 65 6e 5f 68 69 67 68 5f 73 79 6d 62 6f 6c 73 5d 3b 0a 20 20 7d 3b 0a 0a 0a 63 6c 61 73 73 [len_high_symbols];...};...class
3fc40 20 43 52 43 33 32 0a 20 20 7b 0a 20 20 75 69 6e 74 33 32 5f 74 20 64 61 74 61 5b 32 35 36 5d 3b .CRC32...{...uint32_t.data[256];
3fc60 09 09 2f 2f 20 54 61 62 6c 65 20 6f 66 20 43 52 43 73 20 6f 66 20 61 6c 6c 20 38 2d 62 69 74 20 ..//.Table.of.CRCs.of.all.8-bit.
3fc80 6d 65 73 73 61 67 65 73 2e 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 43 52 43 33 32 28 29 0a 20 20 20 messages...public:...CRC32()....
3fca0 20 7b 0a 20 20 20 20 66 6f 72 28 20 75 6e 73 69 67 6e 65 64 20 6e 20 3d 20 30 3b 20 6e 20 3c 20 .{.....for(.unsigned.n.=.0;.n.<.
3fcc0 32 35 36 3b 20 2b 2b 6e 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 75 6e 73 69 67 6e 65 256;.++n.).......{.......unsigne
3fce0 64 20 63 20 3d 20 6e 3b 0a 20 20 20 20 20 20 66 6f 72 28 20 69 6e 74 20 6b 20 3d 20 30 3b 20 6b d.c.=.n;.......for(.int.k.=.0;.k
3fd00 20 3c 20 38 3b 20 2b 2b 6b 20 29 0a 20 20 20 20 20 20 20 20 7b 20 69 66 28 20 63 20 26 20 31 20 .<.8;.++k.).........{.if(.c.&.1.
3fd20 29 20 63 20 3d 20 30 78 45 44 42 38 38 33 32 30 55 20 5e 20 28 20 63 20 3e 3e 20 31 20 29 3b 20 ).c.=.0xEDB88320U.^.(.c.>>.1.);.
3fd40 65 6c 73 65 20 63 20 3e 3e 3d 20 31 3b 20 7d 0a 20 20 20 20 20 20 64 61 74 61 5b 6e 5d 20 3d 20 else.c.>>=.1;.}.......data[n].=.
3fd60 63 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 75 70 64 61 74 65 5f c;.......}.....}....void.update_
3fd80 62 75 66 28 20 75 69 6e 74 33 32 5f 74 20 26 20 63 72 63 2c 20 63 6f 6e 73 74 20 75 69 6e 74 38 buf(.uint32_t.&.crc,.const.uint8
3fda0 5f 74 20 2a 20 63 6f 6e 73 74 20 62 75 66 66 65 72 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 _t.*.const.buffer,..............
3fdc0 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 20 29 20 63 6f 6e 73 74 0a 20 20 20 ......const.int.size.).const....
3fde0 20 7b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a 65 3b .{.....for(.int.i.=.0;.i.<.size;
3fe00 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 63 72 63 20 3d 20 64 61 74 61 5b 28 63 72 63 5e 62 75 66 .++i.).......crc.=.data[(crc^buf
3fe20 66 65 72 5b 69 5d 29 26 30 78 46 46 5d 20 5e 20 28 20 63 72 63 20 3e 3e 20 38 20 29 3b 0a 20 20 fer[i])&0xFF].^.(.crc.>>.8.);...
3fe40 20 20 7d 0a 20 20 7d 3b 0a 0a 63 6f 6e 73 74 20 43 52 43 33 32 20 63 72 63 33 32 3b 0a 0a 0a 65 ..}...};..const.CRC32.crc32;...e
3fe60 6e 75 6d 20 7b 20 68 65 61 64 65 72 5f 73 69 7a 65 20 3d 20 36 2c 20 74 72 61 69 6c 65 72 5f 73 num.{.header_size.=.6,.trailer_s
3fe80 69 7a 65 20 3d 20 32 30 20 7d 3b 0a 74 79 70 65 64 65 66 20 75 69 6e 74 38 5f 74 20 4c 7a 69 70 ize.=.20.};.typedef.uint8_t.Lzip
3fea0 5f 68 65 61 64 65 72 5b 68 65 61 64 65 72 5f 73 69 7a 65 5d 3b 20 2f 2f 20 30 2d 33 20 6d 61 67 _header[header_size];.//.0-3.mag
3fec0 69 63 20 62 79 74 65 73 0a 09 09 09 09 09 20 20 2f 2f 20 20 20 34 20 76 65 72 73 69 6f 6e 0a 09 ic.bytes........//...4.version..
3fee0 09 09 09 09 20 20 2f 2f 20 20 20 35 20 63 6f 64 65 64 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 ......//...5.coded.dictionary.si
3ff00 7a 65 0a 74 79 70 65 64 65 66 20 75 69 6e 74 38 5f 74 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 5b ze.typedef.uint8_t.Lzip_trailer[
3ff20 74 72 61 69 6c 65 72 5f 73 69 7a 65 5d 3b 0a 09 09 09 2f 2f 20 20 30 2d 33 20 20 43 52 43 33 32 trailer_size];....//..0-3..CRC32
3ff40 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 0a 09 09 09 2f 2f 20 .of.the.uncompressed.data....//.
3ff60 20 34 2d 31 31 20 73 69 7a 65 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 .4-11.size.of.the.uncompressed.d
3ff80 61 74 61 0a 09 09 09 2f 2f 20 31 32 2d 31 39 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 69 6e 63 6c ata....//.12-19.member.size.incl
3ffa0 75 64 69 6e 67 20 68 65 61 64 65 72 20 61 6e 64 20 74 72 61 69 6c 65 72 0a 0a 63 6c 61 73 73 20 uding.header.and.trailer..class.
3ffc0 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 0a 20 20 7b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e Range_decoder...{...unsigned.lon
3ffe0 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 70 6f 73 3b 0a 20 20 75 69 6e 74 33 32 5f 74 20 63 6f g.long.member_pos;...uint32_t.co
40000 64 65 3b 0a 20 20 75 69 6e 74 33 32 5f 74 20 72 61 6e 67 65 3b 0a 0a 70 75 62 6c 69 63 3a 0a 20 de;...uint32_t.range;..public:..
40020 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 28 29 0a 20 20 20 20 3a 20 6d 65 6d 62 65 72 5f 70 6f .Range_decoder().....:.member_po
40040 73 28 20 68 65 61 64 65 72 5f 73 69 7a 65 20 29 2c 20 63 6f 64 65 28 20 30 20 29 2c 20 72 61 6e s(.header_size.),.code(.0.),.ran
40060 67 65 28 20 30 78 46 46 46 46 46 46 46 46 55 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 ge(.0xFFFFFFFFU.).....{.....if(.
40080 67 65 74 5f 62 79 74 65 28 29 20 21 3d 20 30 20 29 09 09 2f 2f 20 63 68 65 63 6b 20 66 69 72 73 get_byte().!=.0.)..//.check.firs
400a0 74 20 4c 5a 4d 41 20 62 79 74 65 0a 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 t.LZMA.byte.......{.std::fputs(.
400c0 22 4e 6f 6e 7a 65 72 6f 20 66 69 72 73 74 20 4c 5a 4d 41 20 62 79 74 65 2e 5c 6e 22 2c 20 73 74 "Nonzero.first.LZMA.byte.\n",.st
400e0 64 65 72 72 20 29 3b 20 73 74 64 3a 3a 65 78 69 74 28 20 32 20 29 3b 20 7d 0a 20 20 20 20 66 6f derr.);.std::exit(.2.);.}.....fo
40100 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 34 3b 20 2b 2b 69 20 29 20 63 6f 64 65 20 r(.int.i.=.0;.i.<.4;.++i.).code.
40120 3d 20 28 20 63 6f 64 65 20 3c 3c 20 38 20 29 20 7c 20 67 65 74 5f 62 79 74 65 28 29 3b 0a 20 20 =.(.code.<<.8.).|.get_byte();...
40140 20 20 7d 0a 0a 20 20 75 69 6e 74 38 5f 74 20 67 65 74 5f 62 79 74 65 28 29 20 7b 20 2b 2b 6d 65 ..}....uint8_t.get_byte().{.++me
40160 6d 62 65 72 5f 70 6f 73 3b 20 72 65 74 75 72 6e 20 73 74 64 3a 3a 67 65 74 63 28 20 73 74 64 69 mber_pos;.return.std::getc(.stdi
40180 6e 20 29 3b 20 7d 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 n.);.}...unsigned.long.long.memb
401a0 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 6d 65 6d er_position().const.{.return.mem
401c0 62 65 72 5f 70 6f 73 3b 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 28 20 63 ber_pos;.}....unsigned.decode(.c
401e0 6f 6e 73 74 20 69 6e 74 20 6e 75 6d 5f 62 69 74 73 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e onst.int.num_bits.).....{.....un
40200 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 signed.symbol.=.0;.....for(.int.
40220 69 20 3d 20 6e 75 6d 5f 62 69 74 73 3b 20 69 20 3e 20 30 3b 20 2d 2d 69 20 29 0a 20 20 20 20 20 i.=.num_bits;.i.>.0;.--i.)......
40240 20 7b 0a 20 20 20 20 20 20 72 61 6e 67 65 20 3e 3e 3d 20 31 3b 0a 20 20 20 20 20 20 73 79 6d 62 .{.......range.>>=.1;.......symb
40260 6f 6c 20 3c 3c 3d 20 31 3b 0a 20 20 20 20 20 20 69 66 28 20 63 6f 64 65 20 3e 3d 20 72 61 6e 67 ol.<<=.1;.......if(.code.>=.rang
40280 65 20 29 20 7b 20 63 6f 64 65 20 2d 3d 20 72 61 6e 67 65 3b 20 73 79 6d 62 6f 6c 20 7c 3d 20 31 e.).{.code.-=.range;.symbol.|=.1
402a0 3b 20 7d 0a 20 20 20 20 20 20 69 66 28 20 72 61 6e 67 65 20 3c 3d 20 30 78 30 30 46 46 46 46 46 ;.}.......if(.range.<=.0x00FFFFF
402c0 46 55 20 29 09 09 09 2f 2f 20 6e 6f 72 6d 61 6c 69 7a 65 0a 20 20 20 20 20 20 20 20 7b 20 72 61 FU.)...//.normalize.........{.ra
402e0 6e 67 65 20 3c 3c 3d 20 38 3b 20 63 6f 64 65 20 3d 20 28 20 63 6f 64 65 20 3c 3c 20 38 20 29 20 nge.<<=.8;.code.=.(.code.<<.8.).
40300 7c 20 67 65 74 5f 62 79 74 65 28 29 3b 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 |.get_byte();.}.......}.....retu
40320 72 6e 20 73 79 6d 62 6f 6c 3b 0a 20 20 20 20 7d 0a 0a 20 20 62 6f 6f 6c 20 64 65 63 6f 64 65 5f rn.symbol;.....}....bool.decode_
40340 62 69 74 28 20 42 69 74 5f 6d 6f 64 65 6c 20 26 20 62 6d 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 bit(.Bit_model.&.bm.).....{.....
40360 62 6f 6f 6c 20 73 79 6d 62 6f 6c 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 33 32 5f 74 20 bool.symbol;.....const.uint32_t.
40380 62 6f 75 6e 64 20 3d 20 28 20 72 61 6e 67 65 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 bound.=.(.range.>>.bit_model_tot
403a0 61 6c 5f 62 69 74 73 20 29 20 2a 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 3b 0a 20 20 20 20 al_bits.).*.bm.probability;.....
403c0 69 66 28 20 63 6f 64 65 20 3c 20 62 6f 75 6e 64 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 if(.code.<.bound.).......{......
403e0 20 72 61 6e 67 65 20 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 62 6d 2e 70 72 6f 62 61 62 69 .range.=.bound;.......bm.probabi
40400 6c 69 74 79 20 2b 3d 0a 20 20 20 20 20 20 20 20 28 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 lity.+=.........(.bit_model_tota
40420 6c 20 2d 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 29 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 l.-.bm.probability.).>>.bit_mode
40440 6c 5f 6d 6f 76 65 5f 62 69 74 73 3b 0a 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3d 20 30 3b 0a 20 l_move_bits;.......symbol.=.0;..
40460 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f .....}.....else.......{.......co
40480 64 65 20 2d 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 72 61 6e 67 65 20 2d 3d 20 62 6f 75 6e de.-=.bound;.......range.-=.boun
404a0 64 3b 0a 20 20 20 20 20 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 2d 3d 20 62 6d 2e 70 72 d;.......bm.probability.-=.bm.pr
404c0 6f 62 61 62 69 6c 69 74 79 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 6c 5f 6d 6f 76 65 5f 62 69 74 73 obability.>>.bit_model_move_bits
404e0 3b 0a 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3d 20 31 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 ;.......symbol.=.1;.......}.....
40500 69 66 28 20 72 61 6e 67 65 20 3c 3d 20 30 78 30 30 46 46 46 46 46 46 55 20 29 09 09 09 09 2f 2f if(.range.<=.0x00FFFFFFU.)....//
40520 20 6e 6f 72 6d 61 6c 69 7a 65 0a 20 20 20 20 20 20 7b 20 72 61 6e 67 65 20 3c 3c 3d 20 38 3b 20 .normalize.......{.range.<<=.8;.
40540 63 6f 64 65 20 3d 20 28 20 63 6f 64 65 20 3c 3c 20 38 20 29 20 7c 20 67 65 74 5f 62 79 74 65 28 code.=.(.code.<<.8.).|.get_byte(
40560 29 3b 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 73 79 6d 62 6f 6c 3b 0a 20 20 20 20 7d 0a 0a 20 );.}.....return.symbol;.....}...
40580 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 5f 74 72 65 65 28 20 42 69 74 5f 6d 6f 64 65 6c .unsigned.decode_tree(.Bit_model
405a0 20 62 6d 5b 5d 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6e 75 6d 5f 62 69 74 73 20 29 0a 20 20 20 20 .bm[],.const.int.num_bits.).....
405c0 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c 20 3d 20 31 3b 0a 20 20 20 20 66 {.....unsigned.symbol.=.1;.....f
405e0 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d 5f 62 69 74 73 3b 20 2b 2b 69 or(.int.i.=.0;.i.<.num_bits;.++i
40600 20 29 0a 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3c 3c 20 31 20 .).......symbol.=.(.symbol.<<.1.
40620 29 20 7c 20 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 20 29 3b 0a 20 20 ).|.decode_bit(.bm[symbol].);...
40640 20 20 72 65 74 75 72 6e 20 73 79 6d 62 6f 6c 20 2d 20 28 20 31 20 3c 3c 20 6e 75 6d 5f 62 69 74 ..return.symbol.-.(.1.<<.num_bit
40660 73 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 5f 74 72 s.);.....}....unsigned.decode_tr
40680 65 65 5f 72 65 76 65 72 73 65 64 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c 20 63 6f 6e ee_reversed(.Bit_model.bm[],.con
406a0 73 74 20 69 6e 74 20 6e 75 6d 5f 62 69 74 73 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 st.int.num_bits.).....{.....unsi
406c0 67 6e 65 64 20 73 79 6d 62 6f 6c 20 3d 20 64 65 63 6f 64 65 5f 74 72 65 65 28 20 62 6d 2c 20 6e gned.symbol.=.decode_tree(.bm,.n
406e0 75 6d 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 72 65 76 65 72 73 65 64 um_bits.);.....unsigned.reversed
40700 5f 73 79 6d 62 6f 6c 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b _symbol.=.0;.....for(.int.i.=.0;
40720 20 69 20 3c 20 6e 75 6d 5f 62 69 74 73 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 .i.<.num_bits;.++i.).......{....
40740 20 20 20 72 65 76 65 72 73 65 64 5f 73 79 6d 62 6f 6c 20 3d 20 28 20 72 65 76 65 72 73 65 64 5f ...reversed_symbol.=.(.reversed_
40760 73 79 6d 62 6f 6c 20 3c 3c 20 31 20 29 20 7c 20 28 20 73 79 6d 62 6f 6c 20 26 20 31 20 29 3b 0a symbol.<<.1.).|.(.symbol.&.1.);.
40780 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 ......symbol.>>=.1;.......}.....
407a0 72 65 74 75 72 6e 20 72 65 76 65 72 73 65 64 5f 73 79 6d 62 6f 6c 3b 0a 20 20 20 20 7d 0a 0a 20 return.reversed_symbol;.....}...
407c0 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 5f 6d 61 74 63 68 65 64 28 20 42 69 74 5f 6d 6f .unsigned.decode_matched(.Bit_mo
407e0 64 65 6c 20 62 6d 5b 5d 2c 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6d 61 74 63 68 5f 62 del.bm[],.const.unsigned.match_b
40800 79 74 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c 20 yte.).....{.....unsigned.symbol.
40820 3d 20 31 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 37 3b 20 69 20 3e 3d 20 30 3b =.1;.....for(.int.i.=.7;.i.>=.0;
40840 20 2d 2d 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 .--i.).......{.......const.bool.
40860 6d 61 74 63 68 5f 62 69 74 20 3d 20 28 20 6d 61 74 63 68 5f 62 79 74 65 20 3e 3e 20 69 20 29 20 match_bit.=.(.match_byte.>>.i.).
40880 26 20 31 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 62 69 74 20 3d 20 64 65 63 6f &.1;.......const.bool.bit.=.deco
408a0 64 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 2b 28 6d 61 74 63 68 5f 62 69 74 3c 3c 38 29 de_bit(.bm[symbol+(match_bit<<8)
408c0 2b 30 78 31 30 30 5d 20 29 3b 0a 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3d 20 28 20 73 79 6d 62 +0x100].);.......symbol.=.(.symb
408e0 6f 6c 20 3c 3c 20 31 20 29 20 7c 20 62 69 74 3b 0a 20 20 20 20 20 20 69 66 28 20 6d 61 74 63 68 ol.<<.1.).|.bit;.......if(.match
40900 5f 62 69 74 20 21 3d 20 62 69 74 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 _bit.!=.bit.).........{.........
40920 77 68 69 6c 65 28 20 73 79 6d 62 6f 6c 20 3c 20 30 78 31 30 30 20 29 0a 20 20 20 20 20 20 20 20 while(.symbol.<.0x100.).........
40940 20 20 73 79 6d 62 6f 6c 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3c 3c 20 31 20 29 20 7c 20 64 65 63 ..symbol.=.(.symbol.<<.1.).|.dec
40960 6f 64 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 20 29 3b 0a 20 20 20 20 20 20 20 20 62 ode_bit(.bm[symbol].);.........b
40980 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 reak;.........}.......}.....retu
409a0 72 6e 20 73 79 6d 62 6f 6c 20 26 20 30 78 46 46 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 rn.symbol.&.0xFF;.....}....unsig
409c0 6e 65 64 20 64 65 63 6f 64 65 5f 6c 65 6e 28 20 4c 65 6e 5f 6d 6f 64 65 6c 20 26 20 6c 6d 2c 20 ned.decode_len(.Len_model.&.lm,.
409e0 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 const.int.pos_state.).....{.....
40a00 69 66 28 20 64 65 63 6f 64 65 5f 62 69 74 28 20 6c 6d 2e 63 68 6f 69 63 65 31 20 29 20 3d 3d 20 if(.decode_bit(.lm.choice1.).==.
40a20 30 20 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 2b 0.).......return.min_match_len.+
40a40 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 63 6f 64 65 5f 74 72 65 65 28 20 6c 6d 2e 62 6d ..............decode_tree(.lm.bm
40a60 5f 6c 6f 77 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 6c 65 6e 5f 6c 6f 77 5f 62 69 74 73 20 29 3b _low[pos_state],.len_low_bits.);
40a80 0a 20 20 20 20 69 66 28 20 64 65 63 6f 64 65 5f 62 69 74 28 20 6c 6d 2e 63 68 6f 69 63 65 32 20 .....if(.decode_bit(.lm.choice2.
40aa0 29 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 69 6e 5f 6d 61 74 63 68 5f ).==.0.).......return.min_match_
40ac0 6c 65 6e 20 2b 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 2b 0a 20 20 20 20 20 20 20 20 len.+.len_low_symbols.+.........
40ae0 20 20 20 20 20 64 65 63 6f 64 65 5f 74 72 65 65 28 20 6c 6d 2e 62 6d 5f 6d 69 64 5b 70 6f 73 5f .....decode_tree(.lm.bm_mid[pos_
40b00 73 74 61 74 65 5d 2c 20 6c 65 6e 5f 6d 69 64 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 72 65 74 75 state],.len_mid_bits.);.....retu
40b20 72 6e 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 2b 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f rn.min_match_len.+.len_low_symbo
40b40 6c 73 20 2b 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 20 2b 0a 20 20 20 20 20 20 20 20 20 ls.+.len_mid_symbols.+..........
40b60 20 20 64 65 63 6f 64 65 5f 74 72 65 65 28 20 6c 6d 2e 62 6d 5f 68 69 67 68 2c 20 6c 65 6e 5f 68 ..decode_tree(.lm.bm_high,.len_h
40b80 69 67 68 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 3b 0a 0a 0a 63 6c 61 73 73 20 4c igh_bits.);.....}...};...class.L
40ba0 5a 5f 64 65 63 6f 64 65 72 0a 20 20 7b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f Z_decoder...{...unsigned.long.lo
40bc0 6e 67 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 3b 0a 20 20 52 61 6e 67 65 5f 64 65 63 ng.partial_data_pos;...Range_dec
40be0 6f 64 65 72 20 72 64 65 63 3b 0a 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 oder.rdec;...const.unsigned.dict
40c00 69 6f 6e 61 72 79 5f 73 69 7a 65 3b 0a 20 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 62 ionary_size;...uint8_t.*.const.b
40c20 75 66 66 65 72 3b 09 2f 2f 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 0a 20 20 75 6e 73 69 67 6e uffer;.//.output.buffer...unsign
40c40 65 64 20 70 6f 73 3b 09 09 09 2f 2f 20 63 75 72 72 65 6e 74 20 70 6f 73 20 69 6e 20 62 75 66 66 ed.pos;...//.current.pos.in.buff
40c60 65 72 0a 20 20 75 6e 73 69 67 6e 65 64 20 73 74 72 65 61 6d 5f 70 6f 73 3b 09 09 2f 2f 20 66 69 er...unsigned.stream_pos;..//.fi
40c80 72 73 74 20 62 79 74 65 20 6e 6f 74 20 79 65 74 20 77 72 69 74 74 65 6e 20 74 6f 20 73 74 64 6f rst.byte.not.yet.written.to.stdo
40ca0 75 74 0a 20 20 75 69 6e 74 33 32 5f 74 20 63 72 63 5f 3b 0a 20 20 62 6f 6f 6c 20 70 6f 73 5f 77 ut...uint32_t.crc_;...bool.pos_w
40cc0 72 61 70 70 65 64 3b 0a 0a 20 20 76 6f 69 64 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 0a 20 rapped;....void.flush_data();...
40ce0 20 75 69 6e 74 38 5f 74 20 70 65 65 6b 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 .uint8_t.peek(.const.unsigned.di
40d00 73 74 61 6e 63 65 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 70 6f 73 stance.).const.....{.....if(.pos
40d20 20 3e 20 64 69 73 74 61 6e 63 65 20 29 20 72 65 74 75 72 6e 20 62 75 66 66 65 72 5b 70 6f 73 20 .>.distance.).return.buffer[pos.
40d40 2d 20 64 69 73 74 61 6e 63 65 20 2d 20 31 5d 3b 0a 20 20 20 20 69 66 28 20 70 6f 73 5f 77 72 61 -.distance.-.1];.....if(.pos_wra
40d60 70 70 65 64 20 29 20 72 65 74 75 72 6e 20 62 75 66 66 65 72 5b 64 69 63 74 69 6f 6e 61 72 79 5f pped.).return.buffer[dictionary_
40d80 73 69 7a 65 20 2b 20 70 6f 73 20 2d 20 64 69 73 74 61 6e 63 65 20 2d 20 31 5d 3b 0a 20 20 20 20 size.+.pos.-.distance.-.1];.....
40da0 72 65 74 75 72 6e 20 30 3b 09 09 09 2f 2f 20 70 72 65 76 5f 62 79 74 65 20 6f 66 20 66 69 72 73 return.0;...//.prev_byte.of.firs
40dc0 74 20 62 79 74 65 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 70 75 74 5f 62 79 74 65 28 20 63 t.byte.....}....void.put_byte(.c
40de0 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 62 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 62 75 66 66 65 onst.uint8_t.b.).....{.....buffe
40e00 72 5b 70 6f 73 5d 20 3d 20 62 3b 0a 20 20 20 20 69 66 28 20 2b 2b 70 6f 73 20 3e 3d 20 64 69 63 r[pos].=.b;.....if(.++pos.>=.dic
40e20 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 20 20 20 tionary_size.).flush_data();....
40e40 20 7d 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 65 78 70 6c 69 63 69 74 20 4c 5a 5f 64 65 63 6f 64 65 .}..public:...explicit.LZ_decode
40e60 72 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 5f 73 69 7a 65 20 29 0a 20 20 r(.const.unsigned.dict_size.)...
40e80 20 20 3a 0a 20 20 20 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 28 20 30 20 29 2c 0a 20 ..:.....partial_data_pos(.0.),..
40ea0 20 20 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 20 64 69 63 74 5f 73 69 7a 65 20 29 2c ...dictionary_size(.dict_size.),
40ec0 0a 20 20 20 20 62 75 66 66 65 72 28 20 6e 65 77 20 75 69 6e 74 38 5f 74 5b 64 69 63 74 69 6f 6e .....buffer(.new.uint8_t[diction
40ee0 61 72 79 5f 73 69 7a 65 5d 20 29 2c 0a 20 20 20 20 70 6f 73 28 20 30 20 29 2c 0a 20 20 20 20 73 ary_size].),.....pos(.0.),.....s
40f00 74 72 65 61 6d 5f 70 6f 73 28 20 30 20 29 2c 0a 20 20 20 20 63 72 63 5f 28 20 30 78 46 46 46 46 tream_pos(.0.),.....crc_(.0xFFFF
40f20 46 46 46 46 55 20 29 2c 0a 20 20 20 20 70 6f 73 5f 77 72 61 70 70 65 64 28 20 66 61 6c 73 65 20 FFFFU.),.....pos_wrapped(.false.
40f40 29 0a 20 20 20 20 7b 7d 0a 0a 20 20 7e 4c 5a 5f 64 65 63 6f 64 65 72 28 29 20 7b 20 64 65 6c 65 ).....{}....~LZ_decoder().{.dele
40f60 74 65 5b 5d 20 62 75 66 66 65 72 3b 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 63 72 63 28 29 te[].buffer;.}....unsigned.crc()
40f80 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 63 72 63 5f 20 5e 20 30 78 46 46 46 46 46 46 46 .const.{.return.crc_.^.0xFFFFFFF
40fa0 46 55 3b 20 7d 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 64 61 74 61 5f FU;.}...unsigned.long.long.data_
40fc0 70 6f 73 69 74 69 6f 6e 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 70 61 position().const.....{.return.pa
40fe0 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 20 2b 20 70 6f 73 3b 20 7d 0a 20 20 75 69 6e 74 38 5f rtial_data_pos.+.pos;.}...uint8_
41000 74 20 67 65 74 5f 62 79 74 65 28 29 20 7b 20 72 65 74 75 72 6e 20 72 64 65 63 2e 67 65 74 5f 62 t.get_byte().{.return.rdec.get_b
41020 79 74 65 28 29 3b 20 7d 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 yte();.}...unsigned.long.long.me
41040 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 mber_position().const.....{.retu
41060 72 6e 20 72 64 65 63 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 20 7d 0a 0a 20 20 rn.rdec.member_position();.}....
41080 62 6f 6f 6c 20 64 65 63 6f 64 65 5f 6d 65 6d 62 65 72 28 29 3b 0a 20 20 7d 3b 0a 0a 0a 76 6f 69 bool.decode_member();...};...voi
410a0 64 20 4c 5a 5f 64 65 63 6f 64 65 72 3a 3a 66 6c 75 73 68 5f 64 61 74 61 28 29 0a 20 20 7b 0a 20 d.LZ_decoder::flush_data()...{..
410c0 20 69 66 28 20 70 6f 73 20 3e 20 73 74 72 65 61 6d 5f 70 6f 73 20 29 0a 20 20 20 20 7b 0a 20 20 .if(.pos.>.stream_pos.).....{...
410e0 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 73 69 7a 65 20 3d 20 70 6f 73 20 2d 20 73 74 ..const.unsigned.size.=.pos.-.st
41100 72 65 61 6d 5f 70 6f 73 3b 0a 20 20 20 20 63 72 63 33 32 2e 75 70 64 61 74 65 5f 62 75 66 28 20 ream_pos;.....crc32.update_buf(.
41120 63 72 63 5f 2c 20 62 75 66 66 65 72 20 2b 20 73 74 72 65 61 6d 5f 70 6f 73 2c 20 73 69 7a 65 20 crc_,.buffer.+.stream_pos,.size.
41140 29 3b 0a 20 20 20 20 69 66 28 20 73 74 64 3a 3a 66 77 72 69 74 65 28 20 62 75 66 66 65 72 20 2b );.....if(.std::fwrite(.buffer.+
41160 20 73 74 72 65 61 6d 5f 70 6f 73 2c 20 31 2c 20 73 69 7a 65 2c 20 73 74 64 6f 75 74 20 29 20 21 .stream_pos,.1,.size,.stdout.).!
41180 3d 20 73 69 7a 65 20 29 0a 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 =.size.).......{.std::fprintf(.s
411a0 74 64 65 72 72 2c 20 22 57 72 69 74 65 20 65 72 72 6f 72 3a 20 25 73 5c 6e 22 2c 20 73 74 64 3a tderr,."Write.error:.%s\n",.std:
411c0 3a 73 74 72 65 72 72 6f 72 28 20 65 72 72 6e 6f 20 29 20 29 3b 0a 20 20 20 20 20 20 20 20 73 74 :strerror(.errno.).);.........st
411e0 64 3a 3a 65 78 69 74 28 20 31 20 29 3b 20 7d 0a 20 20 20 20 69 66 28 20 70 6f 73 20 3e 3d 20 64 d::exit(.1.);.}.....if(.pos.>=.d
41200 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 20 20 20 20 7b 20 70 61 72 74 69 61 6c ictionary_size.).......{.partial
41220 5f 64 61 74 61 5f 70 6f 73 20 2b 3d 20 70 6f 73 3b 20 70 6f 73 20 3d 20 30 3b 20 70 6f 73 5f 77 _data_pos.+=.pos;.pos.=.0;.pos_w
41240 72 61 70 70 65 64 20 3d 20 74 72 75 65 3b 20 7d 0a 20 20 20 20 73 74 72 65 61 6d 5f 70 6f 73 20 rapped.=.true;.}.....stream_pos.
41260 3d 20 70 6f 73 3b 0a 20 20 20 20 7d 0a 20 20 7d 0a 0a 0a 62 6f 6f 6c 20 4c 5a 5f 64 65 63 6f 64 =.pos;.....}...}...bool.LZ_decod
41280 65 72 3a 3a 64 65 63 6f 64 65 5f 6d 65 6d 62 65 72 28 29 09 2f 2f 20 52 65 74 75 72 6e 20 66 61 er::decode_member().//.Return.fa
412a0 6c 73 65 20 69 66 20 65 72 72 6f 72 0a 20 20 7b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f lse.if.error...{...Bit_model.bm_
412c0 6c 69 74 65 72 61 6c 5b 31 3c 3c 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 74 73 5d literal[1<<literal_context_bits]
412e0 5b 30 78 33 30 30 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6d 61 74 63 68 5b 53 74 [0x300];...Bit_model.bm_match[St
41300 61 74 65 3a 3a 73 74 61 74 65 73 5d 5b 70 6f 73 5f 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f ate::states][pos_states];...Bit_
41320 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 3b 0a 20 20 42 model.bm_rep[State::states];...B
41340 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 30 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 3b it_model.bm_rep0[State::states];
41360 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 31 5b 53 74 61 74 65 3a 3a 73 74 61 74 ...Bit_model.bm_rep1[State::stat
41380 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 32 5b 53 74 61 74 65 3a 3a es];...Bit_model.bm_rep2[State::
413a0 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6c 65 6e 5b 53 74 61 74 states];...Bit_model.bm_len[Stat
413c0 65 3a 3a 73 74 61 74 65 73 5d 5b 70 6f 73 5f 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f e::states][pos_states];...Bit_mo
413e0 64 65 6c 20 62 6d 5f 64 69 73 5f 73 6c 6f 74 5b 6c 65 6e 5f 73 74 61 74 65 73 5d 5b 31 3c 3c 64 del.bm_dis_slot[len_states][1<<d
41400 69 73 5f 73 6c 6f 74 5f 62 69 74 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 64 69 is_slot_bits];...Bit_model.bm_di
41420 73 5b 6d 6f 64 65 6c 65 64 5f 64 69 73 74 61 6e 63 65 73 2d 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 s[modeled_distances-end_dis_mode
41440 6c 2b 31 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 61 6c 69 67 6e 5b 64 69 73 5f 61 l+1];...Bit_model.bm_align[dis_a
41460 6c 69 67 6e 5f 73 69 7a 65 5d 3b 0a 20 20 4c 65 6e 5f 6d 6f 64 65 6c 20 6d 61 74 63 68 5f 6c 65 lign_size];...Len_model.match_le
41480 6e 5f 6d 6f 64 65 6c 3b 0a 20 20 4c 65 6e 5f 6d 6f 64 65 6c 20 72 65 70 5f 6c 65 6e 5f 6d 6f 64 n_model;...Len_model.rep_len_mod
414a0 65 6c 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 30 20 3d 20 30 3b 09 09 2f 2f 20 72 65 70 el;...unsigned.rep0.=.0;..//.rep
414c0 5b 30 2d 33 5d 20 6c 61 74 65 73 74 20 66 6f 75 72 20 64 69 73 74 61 6e 63 65 73 0a 20 20 75 6e [0-3].latest.four.distances...un
414e0 73 69 67 6e 65 64 20 72 65 70 31 20 3d 20 30 3b 09 09 2f 2f 20 75 73 65 64 20 66 6f 72 20 65 66 signed.rep1.=.0;..//.used.for.ef
41500 66 69 63 69 65 6e 74 20 63 6f 64 69 6e 67 20 6f 66 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 ficient.coding.of...unsigned.rep
41520 32 20 3d 20 30 3b 09 09 2f 2f 20 72 65 70 65 61 74 65 64 20 64 69 73 74 61 6e 63 65 73 0a 20 20 2.=.0;..//.repeated.distances...
41540 75 6e 73 69 67 6e 65 64 20 72 65 70 33 20 3d 20 30 3b 0a 20 20 53 74 61 74 65 20 73 74 61 74 65 unsigned.rep3.=.0;...State.state
41560 3b 0a 0a 20 20 77 68 69 6c 65 28 20 21 73 74 64 3a 3a 66 65 6f 66 28 20 73 74 64 69 6e 20 29 20 ;....while(.!std::feof(.stdin.).
41580 26 26 20 21 73 74 64 3a 3a 66 65 72 72 6f 72 28 20 73 74 64 69 6e 20 29 20 29 0a 20 20 20 20 7b &&.!std::ferror(.stdin.).).....{
415a0 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 20 3d 20 64 61 74 61 5f .....const.int.pos_state.=.data_
415c0 70 6f 73 69 74 69 6f 6e 28 29 20 26 20 70 6f 73 5f 73 74 61 74 65 5f 6d 61 73 6b 3b 0a 20 20 20 position().&.pos_state_mask;....
415e0 20 69 66 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 6d 61 74 63 68 5b 73 .if(.rdec.decode_bit(.bm_match[s
41600 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 20 29 20 3d 3d 20 30 20 29 09 2f 2f 20 31 tate()][pos_state].).==.0.).//.1
41620 73 74 20 62 69 74 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 2f 2f 20 6c 69 74 65 72 61 6c 20 st.bit.......{.......//.literal.
41640 62 79 74 65 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 70 72 65 76 5f 62 79 byte.......const.uint8_t.prev_by
41660 74 65 20 3d 20 70 65 65 6b 28 20 30 20 29 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 te.=.peek(.0.);.......const.int.
41680 6c 69 74 65 72 61 6c 5f 73 74 61 74 65 20 3d 20 70 72 65 76 5f 62 79 74 65 20 3e 3e 20 28 20 38 literal_state.=.prev_byte.>>.(.8
416a0 20 2d 20 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 20 .-.literal_context_bits.);......
416c0 20 42 69 74 5f 6d 6f 64 65 6c 20 2a 20 63 6f 6e 73 74 20 62 6d 20 3d 20 62 6d 5f 6c 69 74 65 72 .Bit_model.*.const.bm.=.bm_liter
416e0 61 6c 5b 6c 69 74 65 72 61 6c 5f 73 74 61 74 65 5d 3b 0a 20 20 20 20 20 20 69 66 28 20 73 74 61 al[literal_state];.......if(.sta
41700 74 65 2e 69 73 5f 63 68 61 72 28 29 20 29 0a 20 20 20 20 20 20 20 20 70 75 74 5f 62 79 74 65 28 te.is_char().).........put_byte(
41720 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 74 72 65 65 28 20 62 6d 2c 20 38 20 29 20 29 3b 0a 20 20 .rdec.decode_tree(.bm,.8.).);...
41740 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 70 75 74 5f 62 79 74 65 28 20 72 64 65 63 2e ....else.........put_byte(.rdec.
41760 64 65 63 6f 64 65 5f 6d 61 74 63 68 65 64 28 20 62 6d 2c 20 70 65 65 6b 28 20 72 65 70 30 20 29 decode_matched(.bm,.peek(.rep0.)
41780 20 29 20 29 3b 0a 20 20 20 20 20 20 73 74 61 74 65 2e 73 65 74 5f 63 68 61 72 28 29 3b 0a 20 20 .).);.......state.set_char();...
417a0 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 2f 2f 20 6d 61 74 ....continue;.......}.....//.mat
417c0 63 68 20 6f 72 20 72 65 70 65 61 74 65 64 20 6d 61 74 63 68 0a 20 20 20 20 69 6e 74 20 6c 65 6e ch.or.repeated.match.....int.len
417e0 3b 0a 20 20 20 20 69 66 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 ;.....if(.rdec.decode_bit(.bm_re
41800 70 5b 73 74 61 74 65 28 29 5d 20 29 20 21 3d 20 30 20 29 09 09 2f 2f 20 32 6e 64 20 62 69 74 0a p[state()].).!=.0.)..//.2nd.bit.
41820 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 ......{.......if(.rdec.decode_bi
41840 74 28 20 62 6d 5f 72 65 70 30 5b 73 74 61 74 65 28 29 5d 20 29 20 3d 3d 20 30 20 29 09 09 2f 2f t(.bm_rep0[state()].).==.0.)..//
41860 20 33 72 64 20 62 69 74 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 28 20 72 .3rd.bit.........{.........if(.r
41880 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 6c 65 6e 5b 73 74 61 74 65 28 29 5d 5b dec.decode_bit(.bm_len[state()][
418a0 70 6f 73 5f 73 74 61 74 65 5d 20 29 20 3d 3d 20 30 20 29 20 2f 2f 20 34 74 68 20 62 69 74 0a 20 pos_state].).==.0.).//.4th.bit..
418c0 20 20 20 20 20 20 20 20 20 7b 20 73 74 61 74 65 2e 73 65 74 5f 73 68 6f 72 74 72 65 70 28 29 3b .........{.state.set_shortrep();
418e0 20 70 75 74 5f 62 79 74 65 28 20 70 65 65 6b 28 20 72 65 70 30 20 29 20 29 3b 20 63 6f 6e 74 69 .put_byte(.peek(.rep0.).);.conti
41900 6e 75 65 3b 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 nue;.}.........}.......else.....
41920 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 75 6e 73 69 67 6e 65 64 20 64 69 73 74 61 6e 63 65 3b ....{.........unsigned.distance;
41940 0a 20 20 20 20 20 20 20 20 69 66 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d .........if(.rdec.decode_bit(.bm
41960 5f 72 65 70 31 5b 73 74 61 74 65 28 29 5d 20 29 20 3d 3d 20 30 20 29 09 09 2f 2f 20 34 74 68 20 _rep1[state()].).==.0.)..//.4th.
41980 62 69 74 0a 20 20 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 20 3d 20 72 65 70 31 3b 0a 20 bit...........distance.=.rep1;..
419a0 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 .......else...........{.........
419c0 20 20 69 66 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 32 5b 73 ..if(.rdec.decode_bit(.bm_rep2[s
419e0 74 61 74 65 28 29 5d 20 29 20 3d 3d 20 30 20 29 09 2f 2f 20 35 74 68 20 62 69 74 0a 20 20 20 20 tate()].).==.0.).//.5th.bit.....
41a00 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 20 3d 20 72 65 70 32 3b 0a 20 20 20 20 20 20 20 ........distance.=.rep2;........
41a20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 20 64 69 73 74 61 6e 63 65 20 3d ...else.............{.distance.=
41a40 20 72 65 70 33 3b 20 72 65 70 33 20 3d 20 72 65 70 32 3b 20 7d 0a 20 20 20 20 20 20 20 20 20 20 .rep3;.rep3.=.rep2;.}...........
41a60 72 65 70 32 20 3d 20 72 65 70 31 3b 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 rep2.=.rep1;...........}........
41a80 20 72 65 70 31 20 3d 20 72 65 70 30 3b 0a 20 20 20 20 20 20 20 20 72 65 70 30 20 3d 20 64 69 73 .rep1.=.rep0;.........rep0.=.dis
41aa0 74 61 6e 63 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 73 74 61 74 65 2e 73 65 74 tance;.........}.......state.set
41ac0 5f 72 65 70 28 29 3b 0a 20 20 20 20 20 20 6c 65 6e 20 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 5f _rep();.......len.=.rdec.decode_
41ae0 6c 65 6e 28 20 72 65 70 5f 6c 65 6e 5f 6d 6f 64 65 6c 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b len(.rep_len_model,.pos_state.);
41b00 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 09 09 09 09 09 2f 2f 20 6d 61 74 63 68 0a 20 .......}.....else.....//.match..
41b20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 72 65 70 33 20 3d 20 72 65 70 32 3b 20 72 65 70 32 20 3d .....{.......rep3.=.rep2;.rep2.=
41b40 20 72 65 70 31 3b 20 72 65 70 31 20 3d 20 72 65 70 30 3b 0a 20 20 20 20 20 20 6c 65 6e 20 3d 20 .rep1;.rep1.=.rep0;.......len.=.
41b60 72 64 65 63 2e 64 65 63 6f 64 65 5f 6c 65 6e 28 20 6d 61 74 63 68 5f 6c 65 6e 5f 6d 6f 64 65 6c rdec.decode_len(.match_len_model
41b80 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6c ,.pos_state.);.......const.int.l
41ba0 65 6e 5f 73 74 61 74 65 20 3d 20 73 74 64 3a 3a 6d 69 6e 28 20 6c 65 6e 20 2d 20 6d 69 6e 5f 6d en_state.=.std::min(.len.-.min_m
41bc0 61 74 63 68 5f 6c 65 6e 2c 20 6c 65 6e 5f 73 74 61 74 65 73 20 2d 20 31 20 29 3b 0a 20 20 20 20 atch_len,.len_states.-.1.);.....
41be0 20 20 72 65 70 30 20 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 74 72 65 65 28 20 62 6d 5f 64 69 ..rep0.=.rdec.decode_tree(.bm_di
41c00 73 5f 73 6c 6f 74 5b 6c 65 6e 5f 73 74 61 74 65 5d 2c 20 64 69 73 5f 73 6c 6f 74 5f 62 69 74 73 s_slot[len_state],.dis_slot_bits
41c20 20 29 3b 0a 20 20 20 20 20 20 69 66 28 20 72 65 70 30 20 3e 3d 20 73 74 61 72 74 5f 64 69 73 5f .);.......if(.rep0.>=.start_dis_
41c40 6d 6f 64 65 6c 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 model.).........{.........const.
41c60 75 6e 73 69 67 6e 65 64 20 64 69 73 5f 73 6c 6f 74 20 3d 20 72 65 70 30 3b 0a 20 20 20 20 20 20 unsigned.dis_slot.=.rep0;.......
41c80 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 72 65 63 74 5f 62 69 74 73 20 3d 20 28 20 64 69 73 5f ..const.int.direct_bits.=.(.dis_
41ca0 73 6c 6f 74 20 3e 3e 20 31 20 29 20 2d 20 31 3b 0a 20 20 20 20 20 20 20 20 72 65 70 30 20 3d 20 slot.>>.1.).-.1;.........rep0.=.
41cc0 28 20 32 20 7c 20 28 20 64 69 73 5f 73 6c 6f 74 20 26 20 31 20 29 20 29 20 3c 3c 20 64 69 72 65 (.2.|.(.dis_slot.&.1.).).<<.dire
41ce0 63 74 5f 62 69 74 73 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 64 69 73 5f 73 6c 6f 74 20 3c 20 ct_bits;.........if(.dis_slot.<.
41d00 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 20 29 0a 20 20 20 20 20 20 20 20 20 20 72 65 70 30 20 2b end_dis_model.)...........rep0.+
41d20 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 74 72 65 65 5f 72 65 76 65 72 73 65 64 28 20 62 6d 5f =.rdec.decode_tree_reversed(.bm_
41d40 64 69 73 20 2b 20 28 20 72 65 70 30 20 2d 20 64 69 73 5f 73 6c 6f 74 20 29 2c 0a 20 20 20 20 20 dis.+.(.rep0.-.dis_slot.),......
41d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
41d80 20 20 20 20 20 20 20 20 64 69 72 65 63 74 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 20 20 20 20 65 ........direct_bits.);.........e
41da0 6c 73 65 0a 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 72 65 70 30 20 2b lse...........{...........rep0.+
41dc0 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 28 20 64 69 72 65 63 74 5f 62 69 74 73 2d 64 69 73 5f 61 =.rdec.decode(.direct_bits-dis_a
41de0 6c 69 67 6e 5f 62 69 74 73 20 29 20 3c 3c 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 3b 0a 20 lign_bits.).<<.dis_align_bits;..
41e00 20 20 20 20 20 20 20 20 20 72 65 70 30 20 2b 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 74 72 65 .........rep0.+=.rdec.decode_tre
41e20 65 5f 72 65 76 65 72 73 65 64 28 20 62 6d 5f 61 6c 69 67 6e 2c 20 64 69 73 5f 61 6c 69 67 6e 5f e_reversed(.bm_align,.dis_align_
41e40 62 69 74 73 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 69 66 28 20 72 65 70 30 20 3d 3d 20 30 78 bits.);...........if(.rep0.==.0x
41e60 46 46 46 46 46 46 46 46 55 20 29 09 09 2f 2f 20 6d 61 72 6b 65 72 20 66 6f 75 6e 64 0a 20 20 20 FFFFFFFFU.)..//.marker.found....
41e80 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6c 75 73 68 5f 64 61 74 .........{.............flush_dat
41ea0 61 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6c 65 6e 20 3d 3d 20 6d a();.............return.len.==.m
41ec0 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 3b 09 2f 2f 20 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 20 6d in_match_len;.//.End.Of.Stream.m
41ee0 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 7d 0a arker.............}...........}.
41f00 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 73 74 61 74 65 2e 73 65 74 5f 6d 61 74 63 68 28 ........}.......state.set_match(
41f20 29 3b 0a 20 20 20 20 20 20 69 66 28 20 72 65 70 30 20 3e 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f );.......if(.rep0.>=.dictionary_
41f40 73 69 7a 65 20 7c 7c 20 28 20 72 65 70 30 20 3e 3d 20 70 6f 73 20 26 26 20 21 70 6f 73 5f 77 72 size.||.(.rep0.>=.pos.&&.!pos_wr
41f60 61 70 70 65 64 20 29 20 29 0a 20 20 20 20 20 20 20 20 7b 20 66 6c 75 73 68 5f 64 61 74 61 28 29 apped.).).........{.flush_data()
41f80 3b 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 66 6f ;.return.false;.}.......}.....fo
41fa0 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6c 65 6e 3b 20 2b 2b 69 20 29 20 70 75 74 r(.int.i.=.0;.i.<.len;.++i.).put
41fc0 5f 62 79 74 65 28 20 70 65 65 6b 28 20 72 65 70 30 20 29 20 29 3b 0a 20 20 20 20 7d 0a 20 20 66 _byte(.peek(.rep0.).);.....}...f
41fe0 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 7d lush_data();...return.false;...}
42000 0a 0a 0a 69 6e 74 20 6d 61 69 6e 28 20 63 6f 6e 73 74 20 69 6e 74 20 61 72 67 63 2c 20 63 6f 6e ...int.main(.const.int.argc,.con
42020 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 76 5b 5d 20 29 0a 20 20 7b 0a 20 20 69 st.char.*.const.argv[].)...{...i
42040 66 28 20 61 72 67 63 20 3e 20 32 20 7c 7c 20 28 20 61 72 67 63 20 3d 3d 20 32 20 26 26 20 73 74 f(.argc.>.2.||.(.argc.==.2.&&.st
42060 64 3a 3a 73 74 72 63 6d 70 28 20 61 72 67 76 5b 31 5d 2c 20 22 2d 64 22 20 29 20 21 3d 20 30 20 d::strcmp(.argv[1],."-d".).!=.0.
42080 29 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 0a 20 20 20 20 20 ).).....{.....std::printf(......
420a0 20 22 4c 7a 64 20 25 73 20 2d 20 45 64 75 63 61 74 69 6f 6e 61 6c 20 64 65 63 6f 6d 70 72 65 73 ."Lzd.%s.-.Educational.decompres
420c0 73 6f 72 20 66 6f 72 20 74 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 2e 5c 6e 22 0a 20 20 20 20 sor.for.the.lzip.format.\n".....
420e0 20 20 22 53 74 75 64 79 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 74 6f 20 6c 65 61 72 .."Study.the.source.code.to.lear
42100 6e 20 68 6f 77 20 61 20 6c 7a 69 70 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 77 6f 72 6b 73 2e n.how.a.lzip.decompressor.works.
42120 5c 6e 22 0a 20 20 20 20 20 20 22 53 65 65 20 74 68 65 20 6c 7a 69 70 20 6d 61 6e 75 61 6c 20 66 \n"......."See.the.lzip.manual.f
42140 6f 72 20 61 6e 20 65 78 70 6c 61 6e 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 6f 64 65 2e 5c 6e or.an.explanation.of.the.code.\n
42160 22 0a 20 20 20 20 20 20 22 5c 6e 55 73 61 67 65 3a 20 25 73 20 5b 2d 64 5d 20 3c 20 66 69 6c 65 "......."\nUsage:.%s.[-d].<.file
42180 2e 6c 7a 20 3e 20 66 69 6c 65 5c 6e 22 0a 20 20 20 20 20 20 22 4c 7a 64 20 64 65 63 6f 6d 70 72 .lz.>.file\n"......."Lzd.decompr
421a0 65 73 73 65 73 20 66 72 6f 6d 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 20 74 6f 20 73 74 61 esses.from.standard.input.to.sta
421c0 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 5c 6e 22 0a 20 20 20 20 20 20 22 5c 6e 43 6f 70 79 72 69 ndard.output.\n"......."\nCopyri
421e0 67 68 74 20 28 43 29 20 32 30 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 5c ght.(C).2025.Antonio.Diaz.Diaz.\
42200 6e 22 0a 20 20 20 20 20 20 22 4c 69 63 65 6e 73 65 20 32 2d 63 6c 61 75 73 65 20 42 53 44 2e 5c n"......."License.2-clause.BSD.\
42220 6e 22 0a 20 20 20 20 20 20 22 54 68 69 73 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a n"......."This.is.free.software:
42240 20 79 6f 75 20 61 72 65 20 66 72 65 65 20 74 6f 20 63 68 61 6e 67 65 20 61 6e 64 20 72 65 64 69 .you.are.free.to.change.and.redi
42260 73 74 72 69 62 75 74 65 20 22 0a 20 20 20 20 20 20 22 69 74 2e 5c 6e 54 68 65 72 65 20 69 73 20 stribute."......."it.\nThere.is.
42280 4e 4f 20 57 41 52 52 41 4e 54 59 2c 20 74 6f 20 74 68 65 20 65 78 74 65 6e 74 20 70 65 72 6d 69 NO.WARRANTY,.to.the.extent.permi
422a0 74 74 65 64 20 62 79 20 6c 61 77 2e 5c 6e 22 0a 20 20 20 20 20 20 22 52 65 70 6f 72 74 20 62 75 tted.by.law.\n"......."Report.bu
422c0 67 73 20 74 6f 20 6c 7a 69 70 2d 62 75 67 40 6e 6f 6e 67 6e 75 2e 6f 72 67 5c 6e 22 0a 20 20 20 gs.to.lzip-bug@nongnu.org\n"....
422e0 20 20 20 22 4c 7a 64 20 68 6f 6d 65 20 70 61 67 65 3a 20 68 74 74 70 3a 2f 2f 77 77 77 2e 6e 6f ..."Lzd.home.page:.http://www.no
42300 6e 67 6e 75 2e 6f 72 67 2f 6c 7a 69 70 2f 6c 7a 64 2e 68 74 6d 6c 5c 6e 22 2c 0a 20 20 20 20 20 ngnu.org/lzip/lzd.html\n",......
42320 20 50 52 4f 47 56 45 52 53 49 4f 4e 2c 20 61 72 67 76 5b 30 5d 20 29 3b 0a 20 20 20 20 72 65 74 .PROGVERSION,.argv[0].);.....ret
42340 75 72 6e 20 30 3b 0a 20 20 20 20 7d 0a 0a 23 69 66 20 64 65 66 69 6e 65 64 20 5f 5f 4d 53 56 43 urn.0;.....}..#if.defined.__MSVC
42360 52 54 5f 5f 20 7c 7c 20 64 65 66 69 6e 65 64 20 5f 5f 4f 53 32 5f 5f 20 7c 7c 20 64 65 66 69 6e RT__.||.defined.__OS2__.||.defin
42380 65 64 20 5f 5f 44 4a 47 50 50 5f 5f 0a 20 20 73 65 74 6d 6f 64 65 28 20 53 54 44 49 4e 5f 46 49 ed.__DJGPP__...setmode(.STDIN_FI
423a0 4c 45 4e 4f 2c 20 4f 5f 42 49 4e 41 52 59 20 29 3b 0a 20 20 73 65 74 6d 6f 64 65 28 20 53 54 44 LENO,.O_BINARY.);...setmode(.STD
423c0 4f 55 54 5f 46 49 4c 45 4e 4f 2c 20 4f 5f 42 49 4e 41 52 59 20 29 3b 0a 23 65 6e 64 69 66 0a 0a OUT_FILENO,.O_BINARY.);.#endif..
423e0 20 20 62 6f 6f 6c 20 65 6d 70 74 79 20 3d 20 66 61 6c 73 65 2c 20 6d 75 6c 74 69 20 3d 20 66 61 ..bool.empty.=.false,.multi.=.fa
42400 6c 73 65 3b 0a 20 20 66 6f 72 28 20 62 6f 6f 6c 20 66 69 72 73 74 5f 6d 65 6d 62 65 72 20 3d 20 lse;...for(.bool.first_member.=.
42420 74 72 75 65 3b 20 3b 20 66 69 72 73 74 5f 6d 65 6d 62 65 72 20 3d 20 66 61 6c 73 65 20 29 0a 20 true;.;.first_member.=.false.)..
42440 20 20 20 7b 0a 20 20 20 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 68 65 61 64 65 72 3b 09 09 09 09 ...{.....Lzip_header.header;....
42460 2f 2f 20 63 68 65 63 6b 20 68 65 61 64 65 72 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d //.check.header.....for(.int.i.=
42480 20 30 3b 20 69 20 3c 20 68 65 61 64 65 72 5f 73 69 7a 65 3b 20 2b 2b 69 20 29 20 68 65 61 64 65 .0;.i.<.header_size;.++i.).heade
424a0 72 5b 69 5d 20 3d 20 73 74 64 3a 3a 67 65 74 63 28 20 73 74 64 69 6e 20 29 3b 0a 20 20 20 20 69 r[i].=.std::getc(.stdin.);.....i
424c0 66 28 20 73 74 64 3a 3a 66 65 6f 66 28 20 73 74 64 69 6e 20 29 20 7c 7c 20 73 74 64 3a 3a 6d 65 f(.std::feof(.stdin.).||.std::me
424e0 6d 63 6d 70 28 20 68 65 61 64 65 72 2c 20 22 4c 5a 49 50 5c 78 30 31 22 2c 20 35 20 29 20 21 3d mcmp(.header,."LZIP\x01",.5.).!=
42500 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 66 69 72 73 74 5f 6d 65 6d .0.).......{.......if(.first_mem
42520 62 65 72 20 29 0a 20 20 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 42 61 64 ber.).........{.std::fputs(."Bad
42540 20 6d 61 67 69 63 20 6e 75 6d 62 65 72 20 28 66 69 6c 65 20 6e 6f 74 20 69 6e 20 6c 7a 69 70 20 .magic.number.(file.not.in.lzip.
42560 66 6f 72 6d 61 74 29 2e 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 format).\n",....................
42580 20 20 20 73 74 64 65 72 72 20 29 3b 20 72 65 74 75 72 6e 20 32 3b 20 7d 0a 20 20 20 20 20 20 62 ...stderr.);.return.2;.}.......b
425a0 72 65 61 6b 3b 09 09 09 09 09 2f 2f 20 69 67 6e 6f 72 65 20 74 72 61 69 6c 69 6e 67 20 64 61 74 reak;.....//.ignore.trailing.dat
425c0 61 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 5f 73 69 7a 65 a.......}.....unsigned.dict_size
425e0 20 3d 20 31 20 3c 3c 20 28 20 68 65 61 64 65 72 5b 35 5d 20 26 20 30 78 31 46 20 29 3b 0a 20 20 .=.1.<<.(.header[5].&.0x1F.);...
42600 20 20 64 69 63 74 5f 73 69 7a 65 20 2d 3d 20 28 20 64 69 63 74 5f 73 69 7a 65 20 2f 20 31 36 20 ..dict_size.-=.(.dict_size./.16.
42620 29 20 2a 20 28 20 28 20 68 65 61 64 65 72 5b 35 5d 20 3e 3e 20 35 20 29 20 26 20 37 20 29 3b 0a ).*.(.(.header[5].>>.5.).&.7.);.
42640 20 20 20 20 69 66 28 20 64 69 63 74 5f 73 69 7a 65 20 3c 20 6d 69 6e 5f 64 69 63 74 69 6f 6e 61 ....if(.dict_size.<.min_dictiona
42660 72 79 5f 73 69 7a 65 20 7c 7c 20 64 69 63 74 5f 73 69 7a 65 20 3e 20 6d 61 78 5f 64 69 63 74 69 ry_size.||.dict_size.>.max_dicti
42680 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 onary_size.).......{.std::fputs(
426a0 20 22 49 6e 76 61 6c 69 64 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 6e 20 6d 65 6d ."Invalid.dictionary.size.in.mem
426c0 62 65 72 20 68 65 61 64 65 72 2e 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ber.header.\n",.................
426e0 20 20 20 20 73 74 64 65 72 72 20 29 3b 20 72 65 74 75 72 6e 20 32 3b 20 7d 0a 0a 20 20 20 20 4c ....stderr.);.return.2;.}......L
42700 5a 5f 64 65 63 6f 64 65 72 20 64 65 63 6f 64 65 72 28 20 64 69 63 74 5f 73 69 7a 65 20 29 3b 09 Z_decoder.decoder(.dict_size.);.
42720 09 2f 2f 20 64 65 63 6f 64 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 0a 20 20 20 20 69 66 28 20 21 .//.decode.LZMA.stream.....if(.!
42740 64 65 63 6f 64 65 72 2e 64 65 63 6f 64 65 5f 6d 65 6d 62 65 72 28 29 20 29 0a 20 20 20 20 20 20 decoder.decode_member().).......
42760 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 44 61 74 61 20 65 72 72 6f 72 2e 5c 6e 22 2c 20 73 {.std::fputs(."Data.error.\n",.s
42780 74 64 65 72 72 20 29 3b 20 72 65 74 75 72 6e 20 32 3b 20 7d 0a 0a 20 20 20 20 4c 7a 69 70 5f 74 tderr.);.return.2;.}......Lzip_t
427a0 72 61 69 6c 65 72 20 74 72 61 69 6c 65 72 3b 09 09 09 2f 2f 20 63 68 65 63 6b 20 74 72 61 69 6c railer.trailer;...//.check.trail
427c0 65 72 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 74 72 61 69 6c er.....for(.int.i.=.0;.i.<.trail
427e0 65 72 5f 73 69 7a 65 3b 20 2b 2b 69 20 29 20 74 72 61 69 6c 65 72 5b 69 5d 20 3d 20 64 65 63 6f er_size;.++i.).trailer[i].=.deco
42800 64 65 72 2e 67 65 74 5f 62 79 74 65 28 29 3b 0a 20 20 20 20 69 6e 74 20 72 65 74 76 61 6c 20 3d der.get_byte();.....int.retval.=
42820 20 30 3b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 63 72 63 20 3d 20 30 3b 0a 20 20 20 20 66 6f .0;.....unsigned.crc.=.0;.....fo
42840 72 28 20 69 6e 74 20 69 20 3d 20 33 3b 20 69 20 3e 3d 20 30 3b 20 2d 2d 69 20 29 20 63 72 63 20 r(.int.i.=.3;.i.>=.0;.--i.).crc.
42860 3d 20 28 20 63 72 63 20 3c 3c 20 38 20 29 20 2b 20 74 72 61 69 6c 65 72 5b 69 5d 3b 0a 20 20 20 =.(.crc.<<.8.).+.trailer[i];....
42880 20 69 66 28 20 63 72 63 20 21 3d 20 64 65 63 6f 64 65 72 2e 63 72 63 28 29 20 29 0a 20 20 20 20 .if(.crc.!=.decoder.crc().).....
428a0 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 43 52 43 20 6d 69 73 6d 61 74 63 68 2e 5c 6e ..{.std::fputs(."CRC.mismatch.\n
428c0 22 2c 20 73 74 64 65 72 72 20 29 3b 20 72 65 74 76 61 6c 20 3d 20 32 3b 20 7d 0a 0a 20 20 20 20 ",.stderr.);.retval.=.2;.}......
428e0 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 64 61 74 61 5f 73 69 7a 65 20 3d 20 30 unsigned.long.long.data_size.=.0
42900 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 31 31 3b 20 69 20 3e 3d 20 34 3b 20 2d ;.....for(.int.i.=.11;.i.>=.4;.-
42920 2d 69 20 29 0a 20 20 20 20 20 20 64 61 74 61 5f 73 69 7a 65 20 3d 20 28 20 64 61 74 61 5f 73 69 -i.).......data_size.=.(.data_si
42940 7a 65 20 3c 3c 20 38 20 29 20 2b 20 74 72 61 69 6c 65 72 5b 69 5d 3b 0a 20 20 20 20 69 66 28 20 ze.<<.8.).+.trailer[i];.....if(.
42960 64 61 74 61 5f 73 69 7a 65 20 21 3d 20 64 65 63 6f 64 65 72 2e 64 61 74 61 5f 70 6f 73 69 74 69 data_size.!=.decoder.data_positi
42980 6f 6e 28 29 20 29 0a 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 44 61 74 61 on().).......{.std::fputs(."Data
429a0 20 73 69 7a 65 20 6d 69 73 6d 61 74 63 68 2e 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 3b 20 72 65 .size.mismatch.\n",.stderr.);.re
429c0 74 76 61 6c 20 3d 20 32 3b 20 7d 0a 20 20 20 20 6d 75 6c 74 69 20 3d 20 21 66 69 72 73 74 5f 6d tval.=.2;.}.....multi.=.!first_m
429e0 65 6d 62 65 72 3b 20 69 66 28 20 64 61 74 61 5f 73 69 7a 65 20 3d 3d 20 30 20 29 20 65 6d 70 74 ember;.if(.data_size.==.0.).empt
42a00 79 20 3d 20 74 72 75 65 3b 0a 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e y.=.true;......unsigned.long.lon
42a20 67 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 g.member_size.=.0;.....for(.int.
42a40 69 20 3d 20 31 39 3b 20 69 20 3e 3d 20 31 32 3b 20 2d 2d 69 20 29 0a 20 20 20 20 20 20 6d 65 6d i.=.19;.i.>=.12;.--i.).......mem
42a60 62 65 72 5f 73 69 7a 65 20 3d 20 28 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3c 3c 20 38 20 29 20 ber_size.=.(.member_size.<<.8.).
42a80 2b 20 74 72 61 69 6c 65 72 5b 69 5d 3b 0a 20 20 20 20 69 66 28 20 6d 65 6d 62 65 72 5f 73 69 7a +.trailer[i];.....if(.member_siz
42aa0 65 20 21 3d 20 64 65 63 6f 64 65 72 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 20 29 e.!=.decoder.member_position().)
42ac0 0a 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 4d 65 6d 62 65 72 20 73 69 7a .......{.std::fputs(."Member.siz
42ae0 65 20 6d 69 73 6d 61 74 63 68 2e 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 3b 20 72 65 74 76 61 6c e.mismatch.\n",.stderr.);.retval
42b00 20 3d 20 32 3b 20 7d 0a 20 20 20 20 69 66 28 20 72 65 74 76 61 6c 20 29 20 72 65 74 75 72 6e 20 .=.2;.}.....if(.retval.).return.
42b20 72 65 74 76 61 6c 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 66 28 20 73 74 64 3a 3a 66 63 6c 6f 73 65 retval;.....}....if(.std::fclose
42b40 28 20 73 74 64 6f 75 74 20 29 20 21 3d 20 30 20 29 0a 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 72 (.stdout.).!=.0.).....{.std::fpr
42b60 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 45 72 72 6f 72 20 63 6c 6f 73 69 6e 67 20 73 74 64 intf(.stderr,."Error.closing.std
42b80 6f 75 74 3a 20 25 73 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 out:.%s\n",.....................
42ba0 73 74 64 3a 3a 73 74 72 65 72 72 6f 72 28 20 65 72 72 6e 6f 20 29 20 29 3b 20 72 65 74 75 72 6e std::strerror(.errno.).);.return
42bc0 20 31 3b 20 7d 0a 20 20 69 66 28 20 65 6d 70 74 79 20 26 26 20 6d 75 6c 74 69 20 29 0a 20 20 20 .1;.}...if(.empty.&&.multi.)....
42be0 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 45 6d 70 74 79 20 6d 65 6d 62 65 72 20 6e 6f 74 .{.std::fputs(."Empty.member.not
42c00 20 61 6c 6c 6f 77 65 64 2e 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 3b 20 72 65 74 75 72 6e 20 32 .allowed.\n",.stderr.);.return.2
42c20 3b 20 7d 0a 20 20 72 65 74 75 72 6e 20 30 3b 0a 20 20 7d 0a 40 65 6e 64 20 76 65 72 62 61 74 69 ;.}...return.0;...}.@end.verbati
42c40 6d 0a 0a 0a 40 6e 6f 64 65 20 43 6f 6e 63 65 70 74 20 69 6e 64 65 78 0a 40 75 6e 6e 75 6d 62 65 m...@node.Concept.index.@unnumbe
42c60 72 65 64 20 43 6f 6e 63 65 70 74 20 69 6e 64 65 78 0a 0a 40 70 72 69 6e 74 69 6e 64 65 78 20 63 red.Concept.index..@printindex.c
42c80 70 0a 0a 40 62 79 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 p..@bye.........................
42ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42e00 6c 7a 69 70 2d 31 2e 32 35 2f 64 6f 63 2f 6c 7a 69 70 2e 69 6e 66 6f 00 00 00 00 00 00 00 00 00 lzip-1.25/doc/lzip.info.........
42e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42e60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
42e80 30 32 31 31 33 34 35 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 35 30 33 37 00 20 30 00 00 00 0211345.14744236057.015037..0...
42ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42f00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
42f20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
42f40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
42f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
43000 54 68 69 73 20 69 73 20 6c 7a 69 70 2e 69 6e 66 6f 2c 20 70 72 6f 64 75 63 65 64 20 62 79 20 6d This.is.lzip.info,.produced.by.m
43020 61 6b 65 69 6e 66 6f 20 76 65 72 73 69 6f 6e 20 34 2e 31 33 2b 20 66 72 6f 6d 20 6c 7a 69 70 2e akeinfo.version.4.13+.from.lzip.
43040 74 65 78 69 2e 0a 0a 49 4e 46 4f 2d 44 49 52 2d 53 45 43 54 49 4f 4e 20 43 6f 6d 70 72 65 73 73 texi...INFO-DIR-SECTION.Compress
43060 69 6f 6e 0a 53 54 41 52 54 2d 49 4e 46 4f 2d 44 49 52 2d 45 4e 54 52 59 0a 2a 20 4c 7a 69 70 3a ion.START-INFO-DIR-ENTRY.*.Lzip:
43080 20 28 6c 7a 69 70 29 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4c 5a 4d 41 20 6c 6f .(lzip)..................LZMA.lo
430a0 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 6f 72 0a 45 4e 44 2d 49 4e 46 4f 2d ssless.data.compressor.END-INFO-
430c0 44 49 52 2d 45 4e 54 52 59 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 6f 2c 20 20 4e DIR-ENTRY....File:.lzip.info,..N
430e0 6f 64 65 3a 20 54 6f 70 2c 20 20 4e 65 78 74 3a 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 2c 20 20 ode:.Top,..Next:.Introduction,..
43100 55 70 3a 20 28 64 69 72 29 0a 0a 4c 7a 69 70 20 4d 61 6e 75 61 6c 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a Up:.(dir)..Lzip.Manual.*********
43120 2a 2a 0a 0a 54 68 69 73 20 6d 61 6e 75 61 6c 20 69 73 20 66 6f 72 20 4c 7a 69 70 20 28 76 65 72 **..This.manual.is.for.Lzip.(ver
43140 73 69 6f 6e 20 31 2e 32 35 2c 20 31 31 20 4a 61 6e 75 61 72 79 20 32 30 32 35 29 2e 0a 0a 2a 20 sion.1.25,.11.January.2025)...*.
43160 4d 65 6e 75 3a 0a 0a 2a 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 3a 3a 20 20 20 20 20 20 20 20 20 Menu:..*.Introduction::.........
43180 20 20 50 75 72 70 6f 73 65 20 61 6e 64 20 66 65 61 74 75 72 65 73 20 6f 66 20 6c 7a 69 70 0a 2a ..Purpose.and.features.of.lzip.*
431a0 20 4f 75 74 70 75 74 3a 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4d 65 61 6e 69 6e .Output::.................Meanin
431c0 67 20 6f 66 20 6c 7a 69 70 27 73 20 6f 75 74 70 75 74 0a 2a 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a g.of.lzip's.output.*.Invoking.lz
431e0 69 70 3a 3a 20 20 20 20 20 20 20 20 20 20 43 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 69 6e 74 65 72 ip::..........Command-line.inter
43200 66 61 63 65 0a 2a 20 41 72 67 75 6d 65 6e 74 20 73 79 6e 74 61 78 3a 3a 20 20 20 20 20 20 20 20 face.*.Argument.syntax::........
43220 42 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20 6f 70 74 69 6f 6e 73 20 73 74 61 72 74 20 77 69 74 By.convention,.options.start.wit
43240 68 20 61 20 68 79 70 68 65 6e 0a 2a 20 46 69 6c 65 20 66 6f 72 6d 61 74 3a 3a 20 20 20 20 20 20 h.a.hyphen.*.File.format::......
43260 20 20 20 20 20 20 44 65 74 61 69 6c 65 64 20 66 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 63 6f 6d ......Detailed.format.of.the.com
43280 70 72 65 73 73 65 64 20 66 69 6c 65 0a 2a 20 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 3a 3a 20 20 pressed.file.*.Stream.format::..
432a0 20 20 20 20 20 20 20 20 46 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 ........Format.of.the.LZMA.strea
432c0 6d 20 69 6e 20 6c 7a 69 70 20 66 69 6c 65 73 0a 2a 20 51 75 61 6c 69 74 79 20 61 73 73 75 72 61 m.in.lzip.files.*.Quality.assura
432e0 6e 63 65 3a 3a 20 20 20 20 20 20 44 65 73 69 67 6e 2c 20 64 65 76 65 6c 6f 70 6d 65 6e 74 2c 20 nce::......Design,.development,.
43300 61 6e 64 20 74 65 73 74 69 6e 67 20 6f 66 20 6c 7a 69 70 0a 2a 20 41 6c 67 6f 72 69 74 68 6d 3a and.testing.of.lzip.*.Algorithm:
43320 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 48 6f 77 20 6c 7a 69 70 20 63 6f 6d 70 72 65 73 73 :..............How.lzip.compress
43340 65 73 20 74 68 65 20 64 61 74 61 0a 2a 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 3a 3a 20 20 20 es.the.data.*.Trailing.data::...
43360 20 20 20 20 20 20 20 45 78 74 72 61 20 64 61 74 61 20 61 70 70 65 6e 64 65 64 20 74 6f 20 74 68 .......Extra.data.appended.to.th
43380 65 20 66 69 6c 65 0a 2a 20 45 78 61 6d 70 6c 65 73 3a 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 e.file.*.Examples::.............
433a0 20 20 41 20 73 6d 61 6c 6c 20 74 75 74 6f 72 69 61 6c 20 77 69 74 68 20 65 78 61 6d 70 6c 65 73 ..A.small.tutorial.with.examples
433c0 0a 2a 20 50 72 6f 62 6c 65 6d 73 3a 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 70 6f .*.Problems::...............Repo
433e0 72 74 69 6e 67 20 62 75 67 73 0a 2a 20 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 20 63 6f rting.bugs.*.Reference.source.co
43400 64 65 3a 3a 20 20 53 6f 75 72 63 65 20 63 6f 64 65 20 69 6c 6c 75 73 74 72 61 74 69 6e 67 20 73 de::..Source.code.illustrating.s
43420 74 72 65 61 6d 20 66 6f 72 6d 61 74 0a 2a 20 43 6f 6e 63 65 70 74 20 69 6e 64 65 78 3a 3a 20 20 tream.format.*.Concept.index::..
43440 20 20 20 20 20 20 20 20 49 6e 64 65 78 20 6f 66 20 63 6f 6e 63 65 70 74 73 0a 0a 0a 20 20 20 43 ........Index.of.concepts......C
43460 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 32 35 20 41 6e 74 6f 6e 69 6f 20 44 opyright.(C).2008-2025.Antonio.D
43480 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 6d 61 6e 75 61 6c 20 69 73 20 66 72 65 iaz.Diaz......This.manual.is.fre
434a0 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3a 20 79 6f 75 20 68 61 76 65 20 75 6e 6c 69 6d 69 e.documentation:.you.have.unlimi
434c0 74 65 64 20 70 65 72 6d 69 73 73 69 6f 6e 20 74 6f 20 63 6f 70 79 2c 0a 64 69 73 74 72 69 62 75 ted.permission.to.copy,.distribu
434e0 74 65 2c 20 61 6e 64 20 6d 6f 64 69 66 79 20 69 74 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 te,.and.modify.it.....File:.lzip
43500 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 2c 20 20 4e 65 78 .info,..Node:.Introduction,..Nex
43520 74 3a 20 4f 75 74 70 75 74 2c 20 20 50 72 65 76 3a 20 54 6f 70 2c 20 20 55 70 3a 20 54 6f 70 0a t:.Output,..Prev:.Top,..Up:.Top.
43540 0a 31 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a .1.Introduction.**************..
43560 4c 7a 69 70 20 69 73 20 61 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 Lzip.is.a.lossless.data.compress
43580 6f 72 20 77 69 74 68 20 61 20 75 73 65 72 20 69 6e 74 65 72 66 61 63 65 20 73 69 6d 69 6c 61 72 or.with.a.user.interface.similar
435a0 20 74 6f 20 74 68 65 20 6f 6e 65 0a 6f 66 20 67 7a 69 70 20 6f 72 20 62 7a 69 70 32 2e 20 4c 7a .to.the.one.of.gzip.or.bzip2..Lz
435c0 69 70 20 75 73 65 73 20 61 20 73 69 6d 70 6c 69 66 69 65 64 20 66 6f 72 6d 20 6f 66 20 4c 5a 4d ip.uses.a.simplified.form.of.LZM
435e0 41 20 28 4c 65 6d 70 65 6c 2d 5a 69 76 2d 4d 61 72 6b 6f 76 0a 63 68 61 69 6e 2d 41 6c 67 6f 72 A.(Lempel-Ziv-Markov.chain-Algor
43600 69 74 68 6d 29 20 64 65 73 69 67 6e 65 64 20 74 6f 20 61 63 68 69 65 76 65 20 63 6f 6d 70 6c 65 ithm).designed.to.achieve.comple
43620 74 65 20 69 6e 74 65 72 6f 70 65 72 61 62 69 6c 69 74 79 20 62 65 74 77 65 65 6e 0a 69 6d 70 6c te.interoperability.between.impl
43640 65 6d 65 6e 74 61 74 69 6f 6e 73 2e 20 54 68 65 20 6d 61 78 69 6d 75 6d 20 64 69 63 74 69 6f 6e ementations..The.maximum.diction
43660 61 72 79 20 73 69 7a 65 20 69 73 20 35 31 32 20 4d 69 42 20 73 6f 20 74 68 61 74 20 61 6e 79 20 ary.size.is.512.MiB.so.that.any.
43680 6c 7a 69 70 0a 66 69 6c 65 20 63 61 6e 20 62 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 6f 6e lzip.file.can.be.decompressed.on
436a0 20 33 32 2d 62 69 74 20 6d 61 63 68 69 6e 65 73 2e 20 4c 7a 69 70 20 70 72 6f 76 69 64 65 73 20 .32-bit.machines..Lzip.provides.
436c0 61 63 63 75 72 61 74 65 20 61 6e 64 0a 72 6f 62 75 73 74 20 33 2d 66 61 63 74 6f 72 20 69 6e 74 accurate.and.robust.3-factor.int
436e0 65 67 72 69 74 79 20 63 68 65 63 6b 69 6e 67 2e 20 27 6c 7a 69 70 20 2d 30 27 20 63 6f 6d 70 72 egrity.checking..'lzip.-0'.compr
43700 65 73 73 65 73 20 61 62 6f 75 74 20 61 73 20 66 61 73 74 20 61 73 0a 67 7a 69 70 2c 20 77 68 69 esses.about.as.fast.as.gzip,.whi
43720 6c 65 20 27 6c 7a 69 70 20 2d 39 27 20 63 6f 6d 70 72 65 73 73 65 73 20 6d 6f 73 74 20 66 69 6c le.'lzip.-9'.compresses.most.fil
43740 65 73 20 6d 6f 72 65 20 74 68 61 6e 20 62 7a 69 70 32 2e 20 44 65 63 6f 6d 70 72 65 73 73 69 6f es.more.than.bzip2..Decompressio
43760 6e 0a 73 70 65 65 64 20 69 73 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 62 65 74 77 65 65 6e 20 n.speed.is.intermediate.between.
43780 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 70 72 6f 76 69 64 65 73 20 62 65 gzip.and.bzip2..Lzip.provides.be
437a0 74 74 65 72 20 64 61 74 61 0a 72 65 63 6f 76 65 72 79 20 63 61 70 61 62 69 6c 69 74 69 65 73 20 tter.data.recovery.capabilities.
437c0 74 68 61 6e 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 68 61 73 20 62 65 than.gzip.and.bzip2..Lzip.has.be
437e0 65 6e 20 64 65 73 69 67 6e 65 64 2c 20 77 72 69 74 74 65 6e 2c 0a 61 6e 64 20 74 65 73 74 65 64 en.designed,.written,.and.tested
43800 20 77 69 74 68 20 67 72 65 61 74 20 63 61 72 65 20 74 6f 20 72 65 70 6c 61 63 65 20 67 7a 69 70 .with.great.care.to.replace.gzip
43820 20 61 6e 64 20 62 7a 69 70 32 20 61 73 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 0a 63 6f .and.bzip2.as.general-purpose.co
43840 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 74 20 66 6f 72 20 55 6e 69 78 2d 6c 69 6b 65 20 73 79 mpressed.format.for.Unix-like.sy
43860 73 74 65 6d 73 2e 0a 0a 20 20 20 46 6f 72 20 63 6f 6d 70 72 65 73 73 69 6e 67 2f 64 65 63 6f 6d stems......For.compressing/decom
43880 70 72 65 73 73 69 6e 67 20 6c 61 72 67 65 20 66 69 6c 65 73 20 6f 6e 20 6d 75 6c 74 69 70 72 6f pressing.large.files.on.multipro
438a0 63 65 73 73 6f 72 20 6d 61 63 68 69 6e 65 73 0a 70 6c 7a 69 70 20 63 61 6e 20 62 65 20 6d 75 63 cessor.machines.plzip.can.be.muc
438c0 68 20 66 61 73 74 65 72 20 74 68 61 6e 20 6c 7a 69 70 20 61 74 20 74 68 65 20 63 6f 73 74 20 6f h.faster.than.lzip.at.the.cost.o
438e0 66 20 61 20 73 6c 69 67 68 74 6c 79 20 72 65 64 75 63 65 64 0a 63 6f 6d 70 72 65 73 73 69 6f 6e f.a.slightly.reduced.compression
43900 20 72 61 74 69 6f 2e 20 2a 4e 6f 74 65 20 70 6c 7a 69 70 20 6d 61 6e 75 61 6c 3a 20 28 70 6c 7a .ratio..*Note.plzip.manual:.(plz
43920 69 70 29 54 6f 70 2e 0a 0a 20 20 20 46 6f 72 20 63 72 65 61 74 69 6f 6e 20 61 6e 64 20 6d 61 6e ip)Top......For.creation.and.man
43940 69 70 75 6c 61 74 69 6f 6e 20 6f 66 20 63 6f 6d 70 72 65 73 73 65 64 20 74 61 72 20 61 72 63 68 ipulation.of.compressed.tar.arch
43960 69 76 65 73 20 74 61 72 6c 7a 20 63 61 6e 20 62 65 0a 6d 6f 72 65 20 65 66 66 69 63 69 65 6e 74 ives.tarlz.can.be.more.efficient
43980 20 74 68 61 6e 20 75 73 69 6e 67 20 74 61 72 20 61 6e 64 20 70 6c 7a 69 70 20 62 65 63 61 75 73 .than.using.tar.and.plzip.becaus
439a0 65 20 74 61 72 6c 7a 20 69 73 20 61 62 6c 65 20 74 6f 20 6b 65 65 70 20 74 68 65 0a 61 6c 69 67 e.tarlz.is.able.to.keep.the.alig
439c0 6e 6d 65 6e 74 20 62 65 74 77 65 65 6e 20 74 61 72 20 6d 65 6d 62 65 72 73 20 61 6e 64 20 6c 7a nment.between.tar.members.and.lz
439e0 69 70 20 6d 65 6d 62 65 72 73 2e 20 2a 4e 6f 74 65 20 74 61 72 6c 7a 20 6d 61 6e 75 61 6c 3a 0a ip.members..*Note.tarlz.manual:.
43a00 28 74 61 72 6c 7a 29 54 6f 70 2e 0a 0a 20 20 20 54 68 65 20 6c 7a 69 70 20 66 69 6c 65 20 66 6f (tarlz)Top......The.lzip.file.fo
43a20 72 6d 61 74 20 69 73 20 64 65 73 69 67 6e 65 64 20 66 6f 72 20 64 61 74 61 20 73 68 61 72 69 6e rmat.is.designed.for.data.sharin
43a40 67 20 61 6e 64 20 6c 6f 6e 67 2d 74 65 72 6d 0a 61 72 63 68 69 76 69 6e 67 2c 20 74 61 6b 69 6e g.and.long-term.archiving,.takin
43a60 67 20 69 6e 74 6f 20 61 63 63 6f 75 6e 74 20 62 6f 74 68 20 64 61 74 61 20 69 6e 74 65 67 72 69 g.into.account.both.data.integri
43a80 74 79 20 61 6e 64 20 64 65 63 6f 64 65 72 20 61 76 61 69 6c 61 62 69 6c 69 74 79 3a 0a 0a 20 20 ty.and.decoder.availability:....
43aa0 20 2a 20 54 68 65 20 70 72 6f 67 72 61 6d 20 6c 7a 69 70 72 65 63 6f 76 65 72 20 63 61 6e 20 72 .*.The.program.lziprecover.can.r
43ac0 65 70 61 69 72 20 62 69 74 20 66 6c 69 70 20 65 72 72 6f 72 73 20 28 6f 6e 65 20 6f 66 20 74 68 epair.bit.flip.errors.(one.of.th
43ae0 65 20 6d 6f 73 74 0a 20 20 20 20 20 63 6f 6d 6d 6f 6e 20 66 6f 72 6d 73 20 6f 66 20 64 61 74 61 e.most......common.forms.of.data
43b00 20 63 6f 72 72 75 70 74 69 6f 6e 29 20 69 6e 20 6c 7a 69 70 20 66 69 6c 65 73 2c 20 61 6e 64 20 .corruption).in.lzip.files,.and.
43b20 70 72 6f 76 69 64 65 73 20 64 61 74 61 0a 20 20 20 20 20 72 65 63 6f 76 65 72 79 20 63 61 70 61 provides.data......recovery.capa
43b40 62 69 6c 69 74 69 65 73 2c 20 69 6e 63 6c 75 64 69 6e 67 20 65 72 72 6f 72 2d 63 68 65 63 6b 65 bilities,.including.error-checke
43b60 64 20 6d 65 72 67 69 6e 67 20 6f 66 20 64 61 6d 61 67 65 64 0a 20 20 20 20 20 63 6f 70 69 65 73 d.merging.of.damaged......copies
43b80 20 6f 66 20 61 20 66 69 6c 65 2e 20 2a 4e 6f 74 65 20 44 61 74 61 20 73 61 66 65 74 79 3a 20 28 .of.a.file..*Note.Data.safety:.(
43ba0 6c 7a 69 70 72 65 63 6f 76 65 72 29 44 61 74 61 20 73 61 66 65 74 79 2e 0a 0a 20 20 20 2a 20 54 lziprecover)Data.safety......*.T
43bc0 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 69 73 20 61 73 20 73 69 6d 70 6c 65 20 61 73 20 70 he.lzip.format.is.as.simple.as.p
43be0 6f 73 73 69 62 6c 65 20 28 62 75 74 20 6e 6f 74 20 73 69 6d 70 6c 65 72 29 2e 20 54 68 65 20 6c ossible.(but.not.simpler)..The.l
43c00 7a 69 70 0a 20 20 20 20 20 6d 61 6e 75 61 6c 20 70 72 6f 76 69 64 65 73 20 74 68 65 20 73 6f 75 zip......manual.provides.the.sou
43c20 72 63 65 20 63 6f 64 65 20 6f 66 20 61 20 73 69 6d 70 6c 65 20 64 65 63 6f 6d 70 72 65 73 73 6f rce.code.of.a.simple.decompresso
43c40 72 20 61 6c 6f 6e 67 20 77 69 74 68 20 61 0a 20 20 20 20 20 64 65 74 61 69 6c 65 64 20 65 78 70 r.along.with.a......detailed.exp
43c60 6c 61 6e 61 74 69 6f 6e 20 6f 66 20 68 6f 77 20 69 74 20 77 6f 72 6b 73 2c 20 73 6f 20 74 68 61 lanation.of.how.it.works,.so.tha
43c80 74 20 77 69 74 68 20 74 68 65 20 6f 6e 6c 79 20 68 65 6c 70 20 6f 66 20 74 68 65 0a 20 20 20 20 t.with.the.only.help.of.the.....
43ca0 20 6c 7a 69 70 20 6d 61 6e 75 61 6c 20 69 74 20 77 6f 75 6c 64 20 62 65 20 70 6f 73 73 69 62 6c .lzip.manual.it.would.be.possibl
43cc0 65 20 66 6f 72 20 61 20 64 69 67 69 74 61 6c 20 61 72 63 68 61 65 6f 6c 6f 67 69 73 74 20 74 6f e.for.a.digital.archaeologist.to
43ce0 20 65 78 74 72 61 63 74 0a 20 20 20 20 20 74 68 65 20 64 61 74 61 20 66 72 6f 6d 20 61 20 6c 7a .extract......the.data.from.a.lz
43d00 69 70 20 66 69 6c 65 20 6c 6f 6e 67 20 61 66 74 65 72 20 71 75 61 6e 74 75 6d 20 63 6f 6d 70 75 ip.file.long.after.quantum.compu
43d20 74 65 72 73 20 65 76 65 6e 74 75 61 6c 6c 79 0a 20 20 20 20 20 72 65 6e 64 65 72 20 4c 5a 4d 41 ters.eventually......render.LZMA
43d40 20 6f 62 73 6f 6c 65 74 65 2e 0a 0a 20 20 20 2a 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 20 74 68 .obsolete......*.Additionally.th
43d60 65 20 6c 7a 69 70 20 72 65 66 65 72 65 6e 63 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 e.lzip.reference.implementation.
43d80 69 73 20 63 6f 70 79 6c 65 66 74 65 64 2c 20 77 68 69 63 68 0a 20 20 20 20 20 67 75 61 72 61 6e is.copylefted,.which......guaran
43da0 74 65 65 73 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 72 65 6d 61 69 6e 20 66 72 65 65 20 66 6f tees.that.it.will.remain.free.fo
43dc0 72 65 76 65 72 2e 0a 0a 20 20 20 41 20 6e 69 63 65 20 66 65 61 74 75 72 65 20 6f 66 20 74 68 65 rever......A.nice.feature.of.the
43de0 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 69 73 20 74 68 61 74 20 61 20 63 6f 72 72 75 70 74 20 62 .lzip.format.is.that.a.corrupt.b
43e00 79 74 65 20 69 73 20 65 61 73 69 65 72 20 74 6f 0a 72 65 70 61 69 72 20 74 68 65 20 6e 65 61 72 yte.is.easier.to.repair.the.near
43e20 65 72 20 69 74 20 69 73 20 66 72 6f 6d 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 er.it.is.from.the.beginning.of.t
43e40 68 65 20 66 69 6c 65 2e 20 54 68 65 72 65 66 6f 72 65 2c 20 77 69 74 68 20 74 68 65 0a 68 65 6c he.file..Therefore,.with.the.hel
43e60 70 20 6f 66 20 6c 7a 69 70 72 65 63 6f 76 65 72 2c 20 6c 6f 73 69 6e 67 20 61 6e 20 65 6e 74 69 p.of.lziprecover,.losing.an.enti
43e80 72 65 20 61 72 63 68 69 76 65 20 6a 75 73 74 20 62 65 63 61 75 73 65 20 6f 66 20 61 20 63 6f 72 re.archive.just.because.of.a.cor
43ea0 72 75 70 74 0a 62 79 74 65 20 6e 65 61 72 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 69 73 20 rupt.byte.near.the.beginning.is.
43ec0 61 20 74 68 69 6e 67 20 6f 66 20 74 68 65 20 70 61 73 74 2e 0a 0a 20 20 20 54 68 65 20 6d 65 6d a.thing.of.the.past......The.mem
43ee0 62 65 72 20 74 72 61 69 6c 65 72 20 73 74 6f 72 65 73 20 74 68 65 20 33 32 2d 62 69 74 20 43 52 ber.trailer.stores.the.32-bit.CR
43f00 43 20 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 64 61 74 61 2c 20 74 68 65 20 73 69 7a 65 C.of.the.original.data,.the.size
43f20 0a 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 64 61 74 61 2c 20 61 6e 64 20 74 68 65 20 73 .of.the.original.data,.and.the.s
43f40 69 7a 65 20 6f 66 20 74 68 65 20 6d 65 6d 62 65 72 2e 20 54 68 65 73 65 20 76 61 6c 75 65 73 2c ize.of.the.member..These.values,
43f60 20 74 6f 67 65 74 68 65 72 0a 77 69 74 68 20 74 68 65 20 27 45 6e 64 20 4f 66 20 53 74 72 65 61 .together.with.the.'End.Of.Strea
43f80 6d 27 20 6d 61 72 6b 65 72 2c 20 70 72 6f 76 69 64 65 20 61 20 33 2d 66 61 63 74 6f 72 20 69 6e m'.marker,.provide.a.3-factor.in
43fa0 74 65 67 72 69 74 79 20 63 68 65 63 6b 69 6e 67 20 74 68 61 74 0a 67 75 61 72 64 73 20 61 67 61 tegrity.checking.that.guards.aga
43fc0 69 6e 73 74 20 63 6f 72 72 75 70 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 inst.corruption.of.the.compresse
43fe0 64 20 64 61 74 61 20 61 6e 64 20 61 67 61 69 6e 73 74 20 75 6e 64 65 74 65 63 74 65 64 20 62 75 d.data.and.against.undetected.bu
44000 67 73 0a 69 6e 20 6c 7a 69 70 20 28 68 6f 70 65 66 75 6c 6c 79 20 76 65 72 79 20 75 6e 6c 69 6b gs.in.lzip.(hopefully.very.unlik
44020 65 6c 79 29 2e 20 54 68 65 20 63 68 61 6e 63 65 73 20 6f 66 20 64 61 74 61 20 63 6f 72 72 75 70 ely)..The.chances.of.data.corrup
44040 74 69 6f 6e 20 67 6f 69 6e 67 0a 75 6e 64 65 74 65 63 74 65 64 20 61 72 65 20 6d 69 63 72 6f 73 tion.going.undetected.are.micros
44060 63 6f 70 69 63 2e 20 42 65 20 61 77 61 72 65 2c 20 74 68 6f 75 67 68 2c 20 74 68 61 74 20 74 68 copic..Be.aware,.though,.that.th
44080 65 20 63 68 65 63 6b 20 6f 63 63 75 72 73 20 75 70 6f 6e 0a 64 65 63 6f 6d 70 72 65 73 73 69 6f e.check.occurs.upon.decompressio
440a0 6e 2c 20 73 6f 20 69 74 20 63 61 6e 20 6f 6e 6c 79 20 74 65 6c 6c 20 79 6f 75 20 74 68 61 74 20 n,.so.it.can.only.tell.you.that.
440c0 73 6f 6d 65 74 68 69 6e 67 20 69 73 20 77 72 6f 6e 67 2e 20 49 74 20 63 61 6e 27 74 0a 68 65 6c something.is.wrong..It.can't.hel
440e0 70 20 79 6f 75 20 72 65 63 6f 76 65 72 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 75 6e 63 6f 6d p.you.recover.the.original.uncom
44100 70 72 65 73 73 65 64 20 64 61 74 61 2e 0a 0a 20 20 20 4c 7a 69 70 20 75 73 65 73 20 74 68 65 20 pressed.data......Lzip.uses.the.
44120 73 61 6d 65 20 77 65 6c 6c 2d 64 65 66 69 6e 65 64 20 65 78 69 74 20 73 74 61 74 75 73 20 76 61 same.well-defined.exit.status.va
44140 6c 75 65 73 20 75 73 65 64 20 62 79 20 62 7a 69 70 32 2c 20 77 68 69 63 68 0a 6d 61 6b 65 73 20 lues.used.by.bzip2,.which.makes.
44160 69 74 20 73 61 66 65 72 20 74 68 61 6e 20 63 6f 6d 70 72 65 73 73 6f 72 73 20 72 65 74 75 72 6e it.safer.than.compressors.return
44180 69 6e 67 20 61 6d 62 69 67 75 6f 75 73 20 77 61 72 6e 69 6e 67 20 76 61 6c 75 65 73 20 28 6c 69 ing.ambiguous.warning.values.(li
441a0 6b 65 0a 67 7a 69 70 29 20 77 68 65 6e 20 69 74 20 69 73 20 75 73 65 64 20 61 73 20 61 20 62 61 ke.gzip).when.it.is.used.as.a.ba
441c0 63 6b 20 65 6e 64 20 66 6f 72 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d 73 20 6c 69 6b 65 20 74 ck.end.for.other.programs.like.t
441e0 61 72 20 6f 72 20 7a 75 74 69 6c 73 2e 0a 0a 20 20 20 4c 7a 69 70 20 61 75 74 6f 6d 61 74 69 63 ar.or.zutils......Lzip.automatic
44200 61 6c 6c 79 20 75 73 65 73 20 66 6f 72 20 65 61 63 68 20 66 69 6c 65 20 74 68 65 20 6c 61 72 67 ally.uses.for.each.file.the.larg
44220 65 73 74 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 74 68 61 74 0a 64 6f 65 73 20 6e 6f est.dictionary.size.that.does.no
44240 74 20 65 78 63 65 65 64 20 6e 65 69 74 68 65 72 20 74 68 65 20 66 69 6c 65 20 73 69 7a 65 20 6e t.exceed.neither.the.file.size.n
44260 6f 72 20 74 68 65 20 6c 69 6d 69 74 20 67 69 76 65 6e 2e 20 54 68 65 20 64 69 63 74 69 6f 6e 61 or.the.limit.given..The.dictiona
44280 72 79 0a 73 69 7a 65 20 75 73 65 64 20 66 6f 72 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 ry.size.used.for.decompression.i
442a0 73 20 74 68 65 20 73 61 6d 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 75 73 65 64 20 s.the.same.dictionary.size.used.
442c0 66 6f 72 0a 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 65 20 61 6d 6f 75 6e 74 20 for.compression......The.amount.
442e0 6f 66 20 6d 65 6d 6f 72 79 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 63 6f 6d 70 72 65 73 73 69 of.memory.required.for.compressi
44300 6f 6e 20 69 73 20 61 62 6f 75 74 20 31 20 6f 72 20 32 20 74 69 6d 65 73 20 74 68 65 0a 64 69 63 on.is.about.1.or.2.times.the.dic
44320 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 20 28 31 20 69 66 20 69 6e 70 75 74 20 66 tionary.size.limit.(1.if.input.f
44340 69 6c 65 20 73 69 7a 65 20 69 73 20 6c 65 73 73 20 74 68 61 6e 20 64 69 63 74 69 6f 6e 61 72 79 ile.size.is.less.than.dictionary
44360 20 73 69 7a 65 0a 6c 69 6d 69 74 2c 20 65 6c 73 65 20 32 29 20 70 6c 75 73 20 39 20 74 69 6d 65 .size.limit,.else.2).plus.9.time
44380 73 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 72 65 61 6c 6c 79 20 75 73 65 s.the.dictionary.size.really.use
443a0 64 2e 20 54 68 65 20 6f 70 74 69 6f 6e 0a 27 2d 30 27 20 69 73 20 73 70 65 63 69 61 6c 20 61 6e d..The.option.'-0'.is.special.an
443c0 64 20 6f 6e 6c 79 20 72 65 71 75 69 72 65 73 20 61 62 6f 75 74 20 31 2e 35 20 4d 69 42 20 61 74 d.only.requires.about.1.5.MiB.at
443e0 20 6d 6f 73 74 2e 20 54 68 65 20 61 6d 6f 75 6e 74 20 6f 66 0a 6d 65 6d 6f 72 79 20 72 65 71 75 .most..The.amount.of.memory.requ
44400 69 72 65 64 20 66 6f 72 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 61 62 6f 75 74 20 ired.for.decompression.is.about.
44420 34 36 20 6b 42 20 6c 61 72 67 65 72 20 74 68 61 6e 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 46.kB.larger.than.the.dictionary
44440 0a 73 69 7a 65 20 72 65 61 6c 6c 79 20 75 73 65 64 2e 0a 0a 20 20 20 57 68 65 6e 20 63 6f 6d 70 .size.really.used......When.comp
44460 72 65 73 73 69 6e 67 2c 20 6c 7a 69 70 20 72 65 70 6c 61 63 65 73 20 65 76 65 72 79 20 66 69 6c ressing,.lzip.replaces.every.fil
44480 65 20 67 69 76 65 6e 20 69 6e 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 0a 77 69 74 68 e.given.in.the.command.line.with
444a0 20 61 20 63 6f 6d 70 72 65 73 73 65 64 20 76 65 72 73 69 6f 6e 20 6f 66 20 69 74 73 65 6c 66 2c .a.compressed.version.of.itself,
444c0 20 77 69 74 68 20 74 68 65 20 6e 61 6d 65 20 22 6f 72 69 67 69 6e 61 6c 5f 6e 61 6d 65 2e 6c 7a .with.the.name."original_name.lz
444e0 22 2e 20 57 68 65 6e 0a 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 6c 7a 69 70 20 61 74 74 65 "..When.decompressing,.lzip.atte
44500 6d 70 74 73 20 74 6f 20 67 75 65 73 73 20 74 68 65 20 6e 61 6d 65 20 66 6f 72 20 74 68 65 20 64 mpts.to.guess.the.name.for.the.d
44520 65 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 0a 66 72 6f 6d 20 74 68 61 74 20 6f 66 20 74 68 ecompressed.file.from.that.of.th
44540 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 0a 66 e.compressed.file.as.follows:..f
44560 69 6c 65 6e 61 6d 65 2e 6c 7a 20 20 20 20 62 65 63 6f 6d 65 73 20 20 20 66 69 6c 65 6e 61 6d 65 ilename.lz....becomes...filename
44580 0a 66 69 6c 65 6e 61 6d 65 2e 74 6c 7a 20 20 20 62 65 63 6f 6d 65 73 20 20 20 66 69 6c 65 6e 61 .filename.tlz...becomes...filena
445a0 6d 65 2e 74 61 72 0a 61 6e 79 6f 74 68 65 72 6e 61 6d 65 20 20 20 62 65 63 6f 6d 65 73 20 20 20 me.tar.anyothername...becomes...
445c0 61 6e 79 6f 74 68 65 72 6e 61 6d 65 2e 6f 75 74 0a 0a 20 20 20 28 44 65 29 63 6f 6d 70 72 65 73 anyothername.out.....(De)compres
445e0 73 69 6e 67 20 61 20 66 69 6c 65 20 69 73 20 6d 75 63 68 20 6c 69 6b 65 20 63 6f 70 79 69 6e 67 sing.a.file.is.much.like.copying
44600 20 6f 72 20 6d 6f 76 69 6e 67 20 69 74 2e 20 54 68 65 72 65 66 6f 72 65 20 6c 7a 69 70 0a 70 72 .or.moving.it..Therefore.lzip.pr
44620 65 73 65 72 76 65 73 20 74 68 65 20 61 63 63 65 73 73 20 61 6e 64 20 6d 6f 64 69 66 69 63 61 74 eserves.the.access.and.modificat
44640 69 6f 6e 20 64 61 74 65 73 2c 20 70 65 72 6d 69 73 73 69 6f 6e 73 2c 20 61 6e 64 2c 20 69 66 20 ion.dates,.permissions,.and,.if.
44660 79 6f 75 20 68 61 76 65 0a 61 70 70 72 6f 70 72 69 61 74 65 20 70 72 69 76 69 6c 65 67 65 73 2c you.have.appropriate.privileges,
44680 20 6f 77 6e 65 72 73 68 69 70 20 6f 66 20 74 68 65 20 66 69 6c 65 20 6a 75 73 74 20 61 73 20 27 .ownership.of.the.file.just.as.'
446a0 63 70 20 2d 70 27 20 64 6f 65 73 2e 20 28 49 66 20 74 68 65 0a 75 73 65 72 20 49 44 20 6f 72 20 cp.-p'.does..(If.the.user.ID.or.
446c0 74 68 65 20 67 72 6f 75 70 20 49 44 20 63 61 6e 27 74 20 62 65 20 64 75 70 6c 69 63 61 74 65 64 the.group.ID.can't.be.duplicated
446e0 2c 20 74 68 65 20 66 69 6c 65 20 70 65 72 6d 69 73 73 69 6f 6e 20 62 69 74 73 0a 53 5f 49 53 55 ,.the.file.permission.bits.S_ISU
44700 49 44 20 61 6e 64 20 53 5f 49 53 47 49 44 20 61 72 65 20 63 6c 65 61 72 65 64 29 2e 0a 0a 20 20 ID.and.S_ISGID.are.cleared).....
44720 20 4c 7a 69 70 20 69 73 20 61 62 6c 65 20 74 6f 20 72 65 61 64 20 66 72 6f 6d 20 73 6f 6d 65 20 .Lzip.is.able.to.read.from.some.
44740 74 79 70 65 73 20 6f 66 20 6e 6f 6e 2d 72 65 67 75 6c 61 72 20 66 69 6c 65 73 20 69 66 20 65 69 types.of.non-regular.files.if.ei
44760 74 68 65 72 20 74 68 65 0a 6f 70 74 69 6f 6e 20 27 2d 63 27 20 6f 72 20 74 68 65 20 6f 70 74 69 ther.the.option.'-c'.or.the.opti
44780 6f 6e 20 27 2d 6f 27 20 69 73 20 73 70 65 63 69 66 69 65 64 2e 0a 0a 20 20 20 4c 7a 69 70 20 72 on.'-o'.is.specified......Lzip.r
447a0 65 66 75 73 65 73 20 74 6f 20 72 65 61 64 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 66 efuses.to.read.compressed.data.f
447c0 72 6f 6d 20 61 20 74 65 72 6d 69 6e 61 6c 20 6f 72 20 77 72 69 74 65 20 63 6f 6d 70 72 65 73 73 rom.a.terminal.or.write.compress
447e0 65 64 0a 64 61 74 61 20 74 6f 20 61 20 74 65 72 6d 69 6e 61 6c 2c 20 61 73 20 74 68 69 73 20 77 ed.data.to.a.terminal,.as.this.w
44800 6f 75 6c 64 20 62 65 20 65 6e 74 69 72 65 6c 79 20 69 6e 63 6f 6d 70 72 65 68 65 6e 73 69 62 6c ould.be.entirely.incomprehensibl
44820 65 20 61 6e 64 20 6d 69 67 68 74 0a 6c 65 61 76 65 20 74 68 65 20 74 65 72 6d 69 6e 61 6c 20 69 e.and.might.leave.the.terminal.i
44840 6e 20 61 6e 20 61 62 6e 6f 72 6d 61 6c 20 73 74 61 74 65 2e 0a 0a 20 20 20 4c 7a 69 70 20 63 6f n.an.abnormal.state......Lzip.co
44860 72 72 65 63 74 6c 79 20 64 65 63 6f 6d 70 72 65 73 73 65 73 20 61 20 66 69 6c 65 20 77 68 69 63 rrectly.decompresses.a.file.whic
44880 68 20 69 73 20 74 68 65 20 63 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 20 6f 66 20 74 77 6f 20 6f 72 h.is.the.concatenation.of.two.or
448a0 0a 6d 6f 72 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 73 2e 20 54 68 65 20 72 65 73 75 .more.compressed.files..The.resu
448c0 6c 74 20 69 73 20 74 68 65 20 63 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 lt.is.the.concatenation.of.the.c
448e0 6f 72 72 65 73 70 6f 6e 64 69 6e 67 0a 64 65 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 73 2e orresponding.decompressed.files.
44900 20 49 6e 74 65 67 72 69 74 79 20 74 65 73 74 69 6e 67 20 6f 66 20 63 6f 6e 63 61 74 65 6e 61 74 .Integrity.testing.of.concatenat
44920 65 64 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 73 20 69 73 0a 61 6c 73 6f 20 73 75 70 70 ed.compressed.files.is.also.supp
44940 6f 72 74 65 64 2e 0a 0a 20 20 20 4c 7a 69 70 20 63 61 6e 20 70 72 6f 64 75 63 65 20 6d 75 6c 74 orted......Lzip.can.produce.mult
44960 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 2c 20 61 6e 64 20 6c 7a 69 70 72 65 63 6f 76 65 72 20 63 imember.files,.and.lziprecover.c
44980 61 6e 20 73 61 66 65 6c 79 20 72 65 63 6f 76 65 72 0a 74 68 65 20 75 6e 64 61 6d 61 67 65 64 20 an.safely.recover.the.undamaged.
449a0 6d 65 6d 62 65 72 73 20 69 6e 20 63 61 73 65 20 6f 66 20 66 69 6c 65 20 64 61 6d 61 67 65 2e 20 members.in.case.of.file.damage..
449c0 4c 7a 69 70 20 63 61 6e 20 61 6c 73 6f 20 73 70 6c 69 74 20 74 68 65 0a 63 6f 6d 70 72 65 73 73 Lzip.can.also.split.the.compress
449e0 65 64 20 6f 75 74 70 75 74 20 69 6e 20 76 6f 6c 75 6d 65 73 20 6f 66 20 61 20 67 69 76 65 6e 20 ed.output.in.volumes.of.a.given.
44a00 73 69 7a 65 2c 20 65 76 65 6e 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 0a 73 74 61 size,.even.when.reading.from.sta
44a20 6e 64 61 72 64 20 69 6e 70 75 74 2e 0a 0a 20 20 20 4c 7a 69 70 20 69 73 20 61 62 6c 65 20 74 6f ndard.input......Lzip.is.able.to
44a40 20 63 6f 6d 70 72 65 73 73 20 61 6e 64 20 64 65 63 6f 6d 70 72 65 73 73 20 73 74 72 65 61 6d 73 .compress.and.decompress.streams
44a60 20 6f 66 20 75 6e 6c 69 6d 69 74 65 64 20 73 69 7a 65 20 62 79 0a 61 75 74 6f 6d 61 74 69 63 61 .of.unlimited.size.by.automatica
44a80 6c 6c 79 20 63 72 65 61 74 69 6e 67 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 6f 75 74 70 75 74 2e lly.creating.multimember.output.
44aa0 20 54 68 65 20 6d 65 6d 62 65 72 73 20 73 6f 20 63 72 65 61 74 65 64 20 61 72 65 20 6c 61 72 67 .The.members.so.created.are.larg
44ac0 65 2c 0a 61 62 6f 75 74 20 32 20 50 69 42 20 65 61 63 68 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a e,.about.2.PiB.each.....File:.lz
44ae0 69 70 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 4f 75 74 70 75 74 2c 20 20 4e 65 78 74 3a 20 49 ip.info,..Node:.Output,..Next:.I
44b00 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 2c 20 20 50 72 65 76 3a 20 49 6e 74 72 6f 64 75 63 74 69 6f nvoking.lzip,..Prev:.Introductio
44b20 6e 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 32 20 4d 65 61 6e 69 6e 67 20 6f 66 20 6c 7a 69 70 27 73 n,..Up:.Top..2.Meaning.of.lzip's
44b40 20 6f 75 74 70 75 74 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a .output.************************
44b60 2a 2a 0a 0a 54 68 65 20 6f 75 74 70 75 74 20 6f 66 20 6c 7a 69 70 20 6c 6f 6f 6b 73 20 6c 69 6b **..The.output.of.lzip.looks.lik
44b80 65 20 74 68 69 73 3a 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d 76 20 66 6f 6f 0a 20 20 20 20 20 20 e.this:.......lzip.-v.foo.......
44ba0 20 66 6f 6f 3a 20 20 36 2e 36 37 36 3a 31 2c 20 31 34 2e 39 38 25 20 72 61 74 69 6f 2c 20 38 35 .foo:..6.676:1,.14.98%.ratio,.85
44bc0 2e 30 32 25 20 73 61 76 65 64 2c 20 34 35 30 35 36 30 20 69 6e 2c 20 36 37 34 39 33 20 6f 75 74 .02%.saved,.450560.in,.67493.out
44be0 2e 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d 74 76 76 76 20 66 6f 6f 2e 6c 7a 0a 20 20 20 20 20 20 ........lzip.-tvvv.foo.lz.......
44c00 20 66 6f 6f 2e 6c 7a 3a 20 20 36 2e 36 37 36 3a 31 2c 20 31 34 2e 39 38 25 20 72 61 74 69 6f 2c .foo.lz:..6.676:1,.14.98%.ratio,
44c20 20 38 35 2e 30 32 25 20 73 61 76 65 64 2e 20 20 34 35 30 35 36 30 20 6f 75 74 2c 20 20 36 37 34 .85.02%.saved...450560.out,..674
44c40 39 33 20 69 6e 2e 20 6f 6b 0a 0a 20 20 20 54 68 65 20 6d 65 61 6e 69 6e 67 20 6f 66 20 65 61 63 93.in..ok.....The.meaning.of.eac
44c60 68 20 66 69 65 6c 64 20 69 73 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 0a 27 4e 3a 31 27 0a 20 20 h.field.is.as.follows:..'N:1'...
44c80 20 20 20 54 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 28 75 6e 63 6f 6d 70 ...The.compression.ratio.(uncomp
44ca0 72 65 73 73 65 64 5f 73 69 7a 65 20 2f 20 63 6f 6d 70 72 65 73 73 65 64 5f 73 69 7a 65 29 2c 20 ressed_size./.compressed_size),.
44cc0 73 68 6f 77 6e 20 61 73 0a 20 20 20 20 20 4e 20 74 6f 20 31 2e 0a 0a 27 72 61 74 69 6f 27 0a 20 shown.as......N.to.1...'ratio'..
44ce0 20 20 20 20 54 68 65 20 69 6e 76 65 72 73 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 ....The.inverse.compression.rati
44d00 6f 20 28 63 6f 6d 70 72 65 73 73 65 64 5f 73 69 7a 65 20 2f 20 75 6e 63 6f 6d 70 72 65 73 73 65 o.(compressed_size./.uncompresse
44d20 64 5f 73 69 7a 65 29 2c 0a 20 20 20 20 20 73 68 6f 77 6e 20 61 73 20 61 20 70 65 72 63 65 6e 74 d_size),......shown.as.a.percent
44d40 61 67 65 2e 20 41 20 64 65 63 69 6d 61 6c 20 72 61 74 69 6f 20 69 73 20 65 61 73 69 6c 79 20 6f age..A.decimal.ratio.is.easily.o
44d60 62 74 61 69 6e 65 64 20 62 79 20 6d 6f 76 69 6e 67 20 74 68 65 0a 20 20 20 20 20 64 65 63 69 6d btained.by.moving.the......decim
44d80 61 6c 20 70 6f 69 6e 74 20 74 77 6f 20 70 6c 61 63 65 73 20 74 6f 20 74 68 65 20 6c 65 66 74 3b al.point.two.places.to.the.left;
44da0 20 31 34 2e 39 38 25 20 3d 20 30 2e 31 34 39 38 2e 0a 0a 27 73 61 76 65 64 27 0a 20 20 20 20 20 .14.98%.=.0.1498...'saved'......
44dc0 54 68 65 20 73 70 61 63 65 20 73 61 76 65 64 20 62 79 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 28 The.space.saved.by.compression.(
44de0 31 20 2d 20 72 61 74 69 6f 29 2c 20 73 68 6f 77 6e 20 61 73 20 61 20 70 65 72 63 65 6e 74 61 67 1.-.ratio),.shown.as.a.percentag
44e00 65 2e 0a 0a 27 69 6e 27 0a 20 20 20 20 20 53 69 7a 65 20 6f 66 20 74 68 65 20 69 6e 70 75 74 20 e...'in'......Size.of.the.input.
44e20 64 61 74 61 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 data..This.is.the.uncompressed.s
44e40 69 7a 65 20 77 68 65 6e 0a 20 20 20 20 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 6f 72 20 74 68 ize.when......compressing,.or.th
44e60 65 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 77 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 e.compressed.size.when.decompres
44e80 73 69 6e 67 20 6f 72 20 74 65 73 74 69 6e 67 2e 0a 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 sing.or.testing.......Note.that.
44ea0 6c 7a 69 70 20 61 6c 77 61 79 73 20 70 72 69 6e 74 73 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 lzip.always.prints.the.uncompres
44ec0 73 65 64 20 73 69 7a 65 20 62 65 66 6f 72 65 20 74 68 65 0a 20 20 20 20 20 63 6f 6d 70 72 65 73 sed.size.before.the......compres
44ee0 73 65 64 20 73 69 7a 65 20 77 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 64 65 63 6f 6d sed.size.when.compressing,.decom
44f00 70 72 65 73 73 69 6e 67 2c 20 74 65 73 74 69 6e 67 2c 20 6f 72 20 6c 69 73 74 69 6e 67 2e 0a 0a pressing,.testing,.or.listing...
44f20 27 6f 75 74 27 0a 20 20 20 20 20 53 69 7a 65 20 6f 66 20 74 68 65 20 6f 75 74 70 75 74 20 64 61 'out'......Size.of.the.output.da
44f40 74 61 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 ta..This.is.the.compressed.size.
44f60 77 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 0a 20 20 20 20 20 6f 72 20 74 68 65 20 64 65 when.compressing,......or.the.de
44f80 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 77 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 compressed.size.when.decompressi
44fa0 6e 67 20 6f 72 20 74 65 73 74 69 6e 67 2e 0a 0a 0a 20 20 20 57 68 65 6e 20 64 65 63 6f 6d 70 72 ng.or.testing.......When.decompr
44fc0 65 73 73 69 6e 67 20 6f 72 20 74 65 73 74 69 6e 67 20 61 74 20 76 65 72 62 6f 73 69 74 79 20 6c essing.or.testing.at.verbosity.l
44fe0 65 76 65 6c 20 34 20 28 2d 76 76 76 76 29 2c 20 74 68 65 0a 64 69 63 74 69 6f 6e 61 72 79 20 73 evel.4.(-vvvv),.the.dictionary.s
45000 69 7a 65 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 72 65 73 73 20 74 68 65 20 66 69 6c 65 20 61 6e ize.used.to.compress.the.file.an
45020 64 20 74 68 65 20 43 52 43 33 32 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 0a d.the.CRC32.of.the.uncompressed.
45040 64 61 74 61 20 61 72 65 20 61 6c 73 6f 20 73 68 6f 77 6e 2e 0a 0a 20 20 20 4c 41 4e 47 55 41 47 data.are.also.shown......LANGUAG
45060 45 20 4e 4f 54 45 3a 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 20 3d 20 6e 6f 74 20 63 6f 6d 70 72 E.NOTE:.Uncompressed.=.not.compr
45080 65 73 73 65 64 20 3d 20 70 6c 61 69 6e 20 64 61 74 61 3b 20 69 74 20 6d 61 79 20 6e 65 76 65 72 essed.=.plain.data;.it.may.never
450a0 0a 68 61 76 65 20 62 65 65 6e 20 63 6f 6d 70 72 65 73 73 65 64 2e 20 44 65 63 6f 6d 70 72 65 73 .have.been.compressed..Decompres
450c0 73 65 64 20 69 73 20 75 73 65 64 20 74 6f 20 72 65 66 65 72 20 74 6f 20 64 61 74 61 20 77 68 69 sed.is.used.to.refer.to.data.whi
450e0 63 68 20 68 61 76 65 0a 75 6e 64 65 72 67 6f 6e 65 20 74 68 65 20 70 72 6f 63 65 73 73 20 6f 66 ch.have.undergone.the.process.of
45100 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e .decompression.....File:.lzip.in
45120 66 6f 2c 20 20 4e 6f 64 65 3a 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 2c 20 20 4e 65 78 74 3a fo,..Node:.Invoking.lzip,..Next:
45140 20 41 72 67 75 6d 65 6e 74 20 73 79 6e 74 61 78 2c 20 20 50 72 65 76 3a 20 4f 75 74 70 75 74 2c .Argument.syntax,..Prev:.Output,
45160 20 20 55 70 3a 20 54 6f 70 0a 0a 33 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 0a 2a 2a 2a 2a 2a ..Up:.Top..3.Invoking.lzip.*****
45180 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 54 68 65 20 66 6f 72 6d 61 74 20 66 6f 72 20 72 75 6e 6e 69 **********..The.format.for.runni
451a0 6e 67 20 6c 7a 69 70 20 69 73 3a 0a 0a 20 20 20 20 20 6c 7a 69 70 20 5b 4f 50 54 49 4f 4e 53 5d ng.lzip.is:.......lzip.[OPTIONS]
451c0 20 5b 46 49 4c 45 53 5d 0a 0a 49 66 20 6e 6f 20 66 69 6c 65 20 6e 61 6d 65 73 20 61 72 65 20 73 .[FILES]..If.no.file.names.are.s
451e0 70 65 63 69 66 69 65 64 2c 20 6c 7a 69 70 20 63 6f 6d 70 72 65 73 73 65 73 20 28 6f 72 20 64 65 pecified,.lzip.compresses.(or.de
45200 63 6f 6d 70 72 65 73 73 65 73 29 20 66 72 6f 6d 0a 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 20 compresses).from.standard.input.
45220 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 20 41 20 68 79 70 68 65 6e 20 27 2d 27 to.standard.output..A.hyphen.'-'
45240 20 75 73 65 64 20 61 73 20 61 20 46 49 4c 45 20 61 72 67 75 6d 65 6e 74 0a 6d 65 61 6e 73 20 73 .used.as.a.FILE.argument.means.s
45260 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2e 20 49 74 20 63 61 6e 20 62 65 20 6d 69 78 65 64 20 77 tandard.input..It.can.be.mixed.w
45280 69 74 68 20 6f 74 68 65 72 20 46 49 4c 45 53 20 61 6e 64 20 69 73 20 72 65 61 64 20 6a 75 73 74 ith.other.FILES.and.is.read.just
452a0 0a 6f 6e 63 65 2c 20 74 68 65 20 66 69 72 73 74 20 74 69 6d 65 20 69 74 20 61 70 70 65 61 72 73 .once,.the.first.time.it.appears
452c0 20 69 6e 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 2e 20 52 65 6d 65 6d 62 65 72 20 74 .in.the.command.line..Remember.t
452e0 6f 20 70 72 65 70 65 6e 64 0a 27 2e 2f 27 20 74 6f 20 61 6e 79 20 66 69 6c 65 20 6e 61 6d 65 20 o.prepend.'./'.to.any.file.name.
45300 62 65 67 69 6e 6e 69 6e 67 20 77 69 74 68 20 61 20 68 79 70 68 65 6e 2c 20 6f 72 20 75 73 65 20 beginning.with.a.hyphen,.or.use.
45320 27 2d 2d 27 2e 0a 0a 6c 7a 69 70 20 73 75 70 70 6f 72 74 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 '--'...lzip.supports.the.followi
45340 6e 67 20 6f 70 74 69 6f 6e 73 3a 20 2a 4e 6f 74 65 20 41 72 67 75 6d 65 6e 74 20 73 79 6e 74 61 ng.options:.*Note.Argument.synta
45360 78 3a 3a 2e 0a 0a 27 2d 68 27 0a 27 2d 2d 68 65 6c 70 27 0a 20 20 20 20 20 50 72 69 6e 74 20 61 x::...'-h'.'--help'......Print.a
45380 6e 20 69 6e 66 6f 72 6d 61 74 69 76 65 20 68 65 6c 70 20 6d 65 73 73 61 67 65 20 64 65 73 63 72 n.informative.help.message.descr
453a0 69 62 69 6e 67 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 61 6e 64 20 65 78 69 74 2e 0a 0a 27 2d 56 ibing.the.options.and.exit...'-V
453c0 27 0a 27 2d 2d 76 65 72 73 69 6f 6e 27 0a 20 20 20 20 20 50 72 69 6e 74 20 74 68 65 20 76 65 72 '.'--version'......Print.the.ver
453e0 73 69 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 20 6c 7a 69 70 20 6f 6e 20 74 68 65 20 73 74 61 6e 64 sion.number.of.lzip.on.the.stand
45400 61 72 64 20 6f 75 74 70 75 74 20 61 6e 64 20 65 78 69 74 2e 20 54 68 69 73 0a 20 20 20 20 20 76 ard.output.and.exit..This......v
45420 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 73 68 6f 75 6c 64 20 62 65 20 69 6e 63 6c 75 64 65 64 ersion.number.should.be.included
45440 20 69 6e 20 61 6c 6c 20 62 75 67 20 72 65 70 6f 72 74 73 2e 0a 0a 27 2d 61 27 0a 27 2d 2d 74 72 .in.all.bug.reports...'-a'.'--tr
45460 61 69 6c 69 6e 67 2d 65 72 72 6f 72 27 0a 20 20 20 20 20 45 78 69 74 20 77 69 74 68 20 65 72 72 ailing-error'......Exit.with.err
45480 6f 72 20 73 74 61 74 75 73 20 32 20 69 66 20 61 6e 79 20 72 65 6d 61 69 6e 69 6e 67 20 69 6e 70 or.status.2.if.any.remaining.inp
454a0 75 74 20 69 73 20 64 65 74 65 63 74 65 64 20 61 66 74 65 72 0a 20 20 20 20 20 64 65 63 6f 6d 70 ut.is.detected.after......decomp
454c0 72 65 73 73 69 6e 67 20 74 68 65 20 6c 61 73 74 20 6d 65 6d 62 65 72 2e 20 53 75 63 68 20 72 65 ressing.the.last.member..Such.re
454e0 6d 61 69 6e 69 6e 67 20 69 6e 70 75 74 20 69 73 20 75 73 75 61 6c 6c 79 20 74 72 61 69 6c 69 6e maining.input.is.usually.trailin
45500 67 0a 20 20 20 20 20 67 61 72 62 61 67 65 20 74 68 61 74 20 63 61 6e 20 62 65 20 73 61 66 65 6c g......garbage.that.can.be.safel
45520 79 20 69 67 6e 6f 72 65 64 2e 20 2a 4e 6f 74 65 20 63 6f 6e 63 61 74 2d 65 78 61 6d 70 6c 65 3a y.ignored..*Note.concat-example:
45540 3a 2e 0a 0a 27 2d 62 20 42 59 54 45 53 27 0a 27 2d 2d 6d 65 6d 62 65 72 2d 73 69 7a 65 3d 42 59 :...'-b.BYTES'.'--member-size=BY
45560 54 45 53 27 0a 20 20 20 20 20 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 73 65 74 20 TES'......When.compressing,.set.
45580 74 68 65 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 6c 69 6d 69 74 20 74 6f 20 42 59 54 45 53 2e 20 the.member.size.limit.to.BYTES..
455a0 49 66 20 42 59 54 45 53 20 69 73 0a 20 20 20 20 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 20 74 68 If.BYTES.is......smaller.than.th
455c0 65 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 2c 20 61 20 6d 75 6c 74 69 6d 65 6d 62 65 72 e.compressed.size,.a.multimember
455e0 20 66 69 6c 65 20 69 73 20 70 72 6f 64 75 63 65 64 2e 20 49 74 20 69 73 0a 20 20 20 20 20 61 64 .file.is.produced..It.is......ad
45600 76 69 73 61 62 6c 65 20 74 6f 20 6b 65 65 70 20 6d 65 6d 62 65 72 73 20 73 6d 61 6c 6c 65 72 20 visable.to.keep.members.smaller.
45620 74 68 61 6e 20 52 41 4d 20 73 69 7a 65 20 73 6f 20 74 68 61 74 20 74 68 65 79 20 63 61 6e 20 62 than.RAM.size.so.that.they.can.b
45640 65 0a 20 20 20 20 20 72 65 70 61 69 72 65 64 20 77 69 74 68 20 6c 7a 69 70 72 65 63 6f 76 65 72 e......repaired.with.lziprecover
45660 20 69 6e 20 63 61 73 65 20 6f 66 20 63 6f 72 72 75 70 74 69 6f 6e 2e 20 41 20 73 6d 61 6c 6c 20 .in.case.of.corruption..A.small.
45680 6d 65 6d 62 65 72 20 73 69 7a 65 0a 20 20 20 20 20 6d 61 79 20 64 65 67 72 61 64 65 20 63 6f 6d member.size......may.degrade.com
456a0 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 2c 20 73 6f 20 75 73 65 20 69 74 20 6f 6e 6c 79 20 77 pression.ratio,.so.use.it.only.w
456c0 68 65 6e 20 6e 65 65 64 65 64 2e 20 56 61 6c 69 64 0a 20 20 20 20 20 76 61 6c 75 65 73 20 72 61 hen.needed..Valid......values.ra
456e0 6e 67 65 20 66 72 6f 6d 20 31 30 30 20 6b 42 20 74 6f 20 32 20 50 69 42 2e 20 44 65 66 61 75 6c nge.from.100.kB.to.2.PiB..Defaul
45700 74 73 20 74 6f 20 32 20 50 69 42 2e 0a 0a 27 2d 63 27 0a 27 2d 2d 73 74 64 6f 75 74 27 0a 20 20 ts.to.2.PiB...'-c'.'--stdout'...
45720 20 20 20 43 6f 6d 70 72 65 73 73 20 6f 72 20 64 65 63 6f 6d 70 72 65 73 73 20 74 6f 20 73 74 61 ...Compress.or.decompress.to.sta
45740 6e 64 61 72 64 20 6f 75 74 70 75 74 3b 20 6b 65 65 70 20 69 6e 70 75 74 20 66 69 6c 65 73 20 75 ndard.output;.keep.input.files.u
45760 6e 63 68 61 6e 67 65 64 2e 0a 20 20 20 20 20 49 66 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 73 65 nchanged.......If.compressing.se
45780 76 65 72 61 6c 20 66 69 6c 65 73 2c 20 65 61 63 68 20 66 69 6c 65 20 69 73 20 63 6f 6d 70 72 65 veral.files,.each.file.is.compre
457a0 73 73 65 64 20 69 6e 64 65 70 65 6e 64 65 6e 74 6c 79 2e 0a 20 20 20 20 20 28 54 68 65 20 6f 75 ssed.independently.......(The.ou
457c0 74 70 75 74 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 61 20 73 65 71 75 65 6e 63 65 20 6f 66 20 69 tput.consists.of.a.sequence.of.i
457e0 6e 64 65 70 65 6e 64 65 6e 74 6c 79 20 63 6f 6d 70 72 65 73 73 65 64 0a 20 20 20 20 20 6d 65 6d ndependently.compressed......mem
45800 62 65 72 73 29 2e 20 54 68 69 73 20 6f 70 74 69 6f 6e 20 28 6f 72 20 27 2d 6f 27 29 20 69 73 20 bers)..This.option.(or.'-o').is.
45820 6e 65 65 64 65 64 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 20 61 20 6e 61 6d 65 64 needed.when.reading.from.a.named
45840 0a 20 20 20 20 20 70 69 70 65 20 28 66 69 66 6f 29 20 6f 72 20 66 72 6f 6d 20 61 20 64 65 76 69 ......pipe.(fifo).or.from.a.devi
45860 63 65 2e 20 55 73 65 20 69 74 20 61 6c 73 6f 20 74 6f 20 72 65 63 6f 76 65 72 20 61 73 20 6d 75 ce..Use.it.also.to.recover.as.mu
45880 63 68 20 6f 66 20 74 68 65 0a 20 20 20 20 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 ch.of.the......decompressed.data
458a0 20 61 73 20 70 6f 73 73 69 62 6c 65 20 77 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 .as.possible.when.decompressing.
458c0 61 20 63 6f 72 72 75 70 74 20 66 69 6c 65 2e 20 27 2d 63 27 0a 20 20 20 20 20 6f 76 65 72 72 69 a.corrupt.file..'-c'......overri
458e0 64 65 73 20 27 2d 6f 27 20 61 6e 64 20 27 2d 53 27 2e 20 27 2d 63 27 20 68 61 73 20 6e 6f 20 65 des.'-o'.and.'-S'..'-c'.has.no.e
45900 66 66 65 63 74 20 77 68 65 6e 20 74 65 73 74 69 6e 67 20 6f 72 20 6c 69 73 74 69 6e 67 2e 0a 0a ffect.when.testing.or.listing...
45920 27 2d 64 27 0a 27 2d 2d 64 65 63 6f 6d 70 72 65 73 73 27 0a 20 20 20 20 20 44 65 63 6f 6d 70 72 '-d'.'--decompress'......Decompr
45940 65 73 73 20 74 68 65 20 66 69 6c 65 73 20 73 70 65 63 69 66 69 65 64 2e 20 54 68 65 20 69 6e 74 ess.the.files.specified..The.int
45960 65 67 72 69 74 79 20 6f 66 20 74 68 65 20 66 69 6c 65 73 20 73 70 65 63 69 66 69 65 64 20 69 73 egrity.of.the.files.specified.is
45980 0a 20 20 20 20 20 63 68 65 63 6b 65 64 2e 20 49 66 20 61 20 66 69 6c 65 20 64 6f 65 73 20 6e 6f ......checked..If.a.file.does.no
459a0 74 20 65 78 69 73 74 2c 20 63 61 6e 27 74 20 62 65 20 6f 70 65 6e 65 64 2c 20 6f 72 20 74 68 65 t.exist,.can't.be.opened,.or.the
459c0 20 64 65 73 74 69 6e 61 74 69 6f 6e 0a 20 20 20 20 20 66 69 6c 65 20 61 6c 72 65 61 64 79 20 65 .destination......file.already.e
459e0 78 69 73 74 73 20 61 6e 64 20 27 2d 2d 66 6f 72 63 65 27 20 68 61 73 20 6e 6f 74 20 62 65 65 6e xists.and.'--force'.has.not.been
45a00 20 73 70 65 63 69 66 69 65 64 2c 20 6c 7a 69 70 0a 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 73 20 .specified,.lzip......continues.
45a20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 66 69 decompressing.the.rest.of.the.fi
45a40 6c 65 73 20 61 6e 64 20 65 78 69 74 73 20 77 69 74 68 20 65 72 72 6f 72 0a 20 20 20 20 20 73 74 les.and.exits.with.error......st
45a60 61 74 75 73 20 31 2e 20 49 66 20 61 20 66 69 6c 65 20 66 61 69 6c 73 20 74 6f 20 64 65 63 6f 6d atus.1..If.a.file.fails.to.decom
45a80 70 72 65 73 73 2c 20 6f 72 20 69 73 20 61 20 74 65 72 6d 69 6e 61 6c 2c 20 6c 7a 69 70 20 65 78 press,.or.is.a.terminal,.lzip.ex
45aa0 69 74 73 0a 20 20 20 20 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 77 69 74 68 20 65 72 72 6f 72 20 its......immediately.with.error.
45ac0 73 74 61 74 75 73 20 32 20 77 69 74 68 6f 75 74 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 74 status.2.without.decompressing.t
45ae0 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 0a 20 20 20 20 20 66 69 6c 65 73 2e 20 41 20 74 65 72 he.rest.of.the......files..A.ter
45b00 6d 69 6e 61 6c 20 69 73 20 63 6f 6e 73 69 64 65 72 65 64 20 61 6e 20 75 6e 63 6f 6d 70 72 65 73 minal.is.considered.an.uncompres
45b20 73 65 64 20 66 69 6c 65 2c 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 0a 20 20 20 20 20 69 6e 76 sed.file,.and.therefore......inv
45b40 61 6c 69 64 2e 20 41 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 20 77 69 74 68 20 6f 6e alid..A.multimember.file.with.on
45b60 65 20 6f 72 20 6d 6f 72 65 20 65 6d 70 74 79 20 6d 65 6d 62 65 72 73 20 69 73 20 61 63 63 65 70 e.or.more.empty.members.is.accep
45b80 74 65 64 0a 20 20 20 20 20 69 66 20 72 65 64 69 72 65 63 74 65 64 20 74 6f 20 73 74 61 6e 64 61 ted......if.redirected.to.standa
45ba0 72 64 20 69 6e 70 75 74 2e 0a 0a 27 2d 66 27 0a 27 2d 2d 66 6f 72 63 65 27 0a 20 20 20 20 20 46 rd.input...'-f'.'--force'......F
45bc0 6f 72 63 65 20 6f 76 65 72 77 72 69 74 65 20 6f 66 20 6f 75 74 70 75 74 20 66 69 6c 65 73 2e 0a orce.overwrite.of.output.files..
45be0 0a 27 2d 46 27 0a 27 2d 2d 72 65 63 6f 6d 70 72 65 73 73 27 0a 20 20 20 20 20 57 68 65 6e 20 63 .'-F'.'--recompress'......When.c
45c00 6f 6d 70 72 65 73 73 69 6e 67 2c 20 66 6f 72 63 65 20 72 65 2d 63 6f 6d 70 72 65 73 73 69 6f 6e ompressing,.force.re-compression
45c20 20 6f 66 20 66 69 6c 65 73 20 77 68 6f 73 65 20 6e 61 6d 65 20 61 6c 72 65 61 64 79 20 68 61 73 .of.files.whose.name.already.has
45c40 0a 20 20 20 20 20 74 68 65 20 27 2e 6c 7a 27 20 6f 72 20 27 2e 74 6c 7a 27 20 73 75 66 66 69 78 ......the.'.lz'.or.'.tlz'.suffix
45c60 2e 0a 0a 27 2d 6b 27 0a 27 2d 2d 6b 65 65 70 27 0a 20 20 20 20 20 4b 65 65 70 20 28 64 6f 6e 27 ...'-k'.'--keep'......Keep.(don'
45c80 74 20 64 65 6c 65 74 65 29 20 69 6e 70 75 74 20 66 69 6c 65 73 20 64 75 72 69 6e 67 20 63 6f 6d t.delete).input.files.during.com
45ca0 70 72 65 73 73 69 6f 6e 20 6f 72 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0a 0a 27 2d 6c 27 pression.or.decompression...'-l'
45cc0 0a 27 2d 2d 6c 69 73 74 27 0a 20 20 20 20 20 50 72 69 6e 74 20 74 68 65 20 75 6e 63 6f 6d 70 72 .'--list'......Print.the.uncompr
45ce0 65 73 73 65 64 20 73 69 7a 65 2c 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 2c 20 61 6e 64 essed.size,.compressed.size,.and
45d00 20 70 65 72 63 65 6e 74 61 67 65 20 73 61 76 65 64 20 6f 66 0a 20 20 20 20 20 74 68 65 20 66 69 .percentage.saved.of......the.fi
45d20 6c 65 73 20 73 70 65 63 69 66 69 65 64 2e 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 20 61 72 65 les.specified..Trailing.data.are
45d40 20 69 67 6e 6f 72 65 64 2e 20 54 68 65 20 76 61 6c 75 65 73 20 70 72 6f 64 75 63 65 64 0a 20 20 .ignored..The.values.produced...
45d60 20 20 20 61 72 65 20 63 6f 72 72 65 63 74 20 65 76 65 6e 20 66 6f 72 20 6d 75 6c 74 69 6d 65 6d ...are.correct.even.for.multimem
45d80 62 65 72 20 66 69 6c 65 73 2e 20 49 66 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 65 20 66 69 6c 65 ber.files..If.more.than.one.file
45da0 20 69 73 0a 20 20 20 20 20 67 69 76 65 6e 2c 20 61 20 66 69 6e 61 6c 20 6c 69 6e 65 20 63 6f 6e .is......given,.a.final.line.con
45dc0 74 61 69 6e 69 6e 67 20 74 68 65 20 63 75 6d 75 6c 61 74 69 76 65 20 73 69 7a 65 73 20 69 73 20 taining.the.cumulative.sizes.is.
45de0 70 72 69 6e 74 65 64 2e 20 57 69 74 68 0a 20 20 20 20 20 27 2d 76 27 2c 20 74 68 65 20 64 69 63 printed..With......'-v',.the.dic
45e00 74 69 6f 6e 61 72 79 20 73 69 7a 65 2c 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6d 65 6d 62 tionary.size,.the.number.of.memb
45e20 65 72 73 20 69 6e 20 74 68 65 20 66 69 6c 65 2c 20 61 6e 64 20 74 68 65 0a 20 20 20 20 20 61 6d ers.in.the.file,.and.the......am
45e40 6f 75 6e 74 20 6f 66 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 28 69 66 20 61 6e 79 29 20 61 ount.of.trailing.data.(if.any).a
45e60 72 65 20 61 6c 73 6f 20 70 72 69 6e 74 65 64 2e 20 57 69 74 68 20 27 2d 76 76 27 2c 20 74 68 65 re.also.printed..With.'-vv',.the
45e80 0a 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 73 20 61 6e 64 20 73 69 7a 65 73 20 6f 66 20 65 61 63 ......positions.and.sizes.of.eac
45ea0 68 20 6d 65 6d 62 65 72 20 69 6e 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 20 61 72 h.member.in.multimember.files.ar
45ec0 65 20 61 6c 73 6f 0a 20 20 20 20 20 70 72 69 6e 74 65 64 2e 20 41 20 6d 75 6c 74 69 6d 65 6d 62 e.also......printed..A.multimemb
45ee0 65 72 20 66 69 6c 65 20 77 69 74 68 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 65 6d 70 74 79 20 6d er.file.with.one.or.more.empty.m
45f00 65 6d 62 65 72 73 20 69 73 20 61 63 63 65 70 74 65 64 0a 20 20 20 20 20 69 66 20 72 65 64 69 72 embers.is.accepted......if.redir
45f20 65 63 74 65 64 20 74 6f 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2e 0a 0a 20 20 20 20 20 49 ected.to.standard.input........I
45f40 66 20 61 6e 79 20 66 69 6c 65 20 69 73 20 64 61 6d 61 67 65 64 2c 20 64 6f 65 73 20 6e 6f 74 20 f.any.file.is.damaged,.does.not.
45f60 65 78 69 73 74 2c 20 63 61 6e 27 74 20 62 65 20 6f 70 65 6e 65 64 2c 20 6f 72 20 69 73 20 6e 6f exist,.can't.be.opened,.or.is.no
45f80 74 0a 20 20 20 20 20 72 65 67 75 6c 61 72 2c 20 74 68 65 20 66 69 6e 61 6c 20 65 78 69 74 20 73 t......regular,.the.final.exit.s
45fa0 74 61 74 75 73 20 69 73 20 3e 20 30 2e 20 27 2d 6c 71 27 20 63 61 6e 20 62 65 20 75 73 65 64 20 tatus.is.>.0..'-lq'.can.be.used.
45fc0 74 6f 20 63 68 65 63 6b 0a 20 20 20 20 20 71 75 69 63 6b 6c 79 20 28 77 69 74 68 6f 75 74 20 64 to.check......quickly.(without.d
45fe0 65 63 6f 6d 70 72 65 73 73 69 6e 67 29 20 74 68 65 20 73 74 72 75 63 74 75 72 61 6c 20 69 6e 74 ecompressing).the.structural.int
46000 65 67 72 69 74 79 20 6f 66 20 74 68 65 20 66 69 6c 65 73 0a 20 20 20 20 20 73 70 65 63 69 66 69 egrity.of.the.files......specifi
46020 65 64 2e 20 28 55 73 65 20 27 2d 2d 74 65 73 74 27 20 74 6f 20 63 68 65 63 6b 20 74 68 65 20 64 ed..(Use.'--test'.to.check.the.d
46040 61 74 61 20 69 6e 74 65 67 72 69 74 79 29 2e 20 27 2d 61 6c 71 27 0a 20 20 20 20 20 61 64 64 69 ata.integrity)..'-alq'......addi
46060 74 69 6f 6e 61 6c 6c 79 20 63 68 65 63 6b 73 20 74 68 61 74 20 6e 6f 6e 65 20 6f 66 20 74 68 65 tionally.checks.that.none.of.the
46080 20 66 69 6c 65 73 20 73 70 65 63 69 66 69 65 64 20 63 6f 6e 74 61 69 6e 20 74 72 61 69 6c 69 6e .files.specified.contain.trailin
460a0 67 0a 20 20 20 20 20 64 61 74 61 2e 0a 0a 27 2d 6d 20 42 59 54 45 53 27 0a 27 2d 2d 6d 61 74 63 g......data...'-m.BYTES'.'--matc
460c0 68 2d 6c 65 6e 67 74 68 3d 42 59 54 45 53 27 0a 20 20 20 20 20 57 68 65 6e 20 63 6f 6d 70 72 65 h-length=BYTES'......When.compre
460e0 73 73 69 6e 67 2c 20 73 65 74 20 74 68 65 20 6d 61 74 63 68 20 6c 65 6e 67 74 68 20 6c 69 6d 69 ssing,.set.the.match.length.limi
46100 74 20 69 6e 20 62 79 74 65 73 2e 20 41 66 74 65 72 20 61 20 6d 61 74 63 68 0a 20 20 20 20 20 74 t.in.bytes..After.a.match......t
46120 68 69 73 20 6c 6f 6e 67 20 69 73 20 66 6f 75 6e 64 2c 20 74 68 65 20 73 65 61 72 63 68 20 69 73 his.long.is.found,.the.search.is
46140 20 66 69 6e 69 73 68 65 64 2e 20 56 61 6c 69 64 20 76 61 6c 75 65 73 20 72 61 6e 67 65 20 66 72 .finished..Valid.values.range.fr
46160 6f 6d 20 35 0a 20 20 20 20 20 74 6f 20 32 37 33 2e 20 4c 61 72 67 65 72 20 76 61 6c 75 65 73 20 om.5......to.273..Larger.values.
46180 75 73 75 61 6c 6c 79 20 67 69 76 65 20 62 65 74 74 65 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 usually.give.better.compression.
461a0 72 61 74 69 6f 73 20 62 75 74 0a 20 20 20 20 20 6c 6f 6e 67 65 72 20 63 6f 6d 70 72 65 73 73 69 ratios.but......longer.compressi
461c0 6f 6e 20 74 69 6d 65 73 2e 20 41 20 6d 61 74 63 68 20 69 73 20 61 20 4c 65 6d 70 65 6c 2d 5a 69 on.times..A.match.is.a.Lempel-Zi
461e0 76 20 62 61 63 6b 2d 72 65 66 65 72 65 6e 63 65 20 63 6f 64 65 64 0a 20 20 20 20 20 61 73 20 61 v.back-reference.coded......as.a
46200 20 64 69 73 74 61 6e 63 65 2d 6c 65 6e 67 74 68 20 70 61 69 72 2e 0a 0a 27 2d 6f 20 46 49 4c 45 .distance-length.pair...'-o.FILE
46220 27 0a 27 2d 2d 6f 75 74 70 75 74 3d 46 49 4c 45 27 0a 20 20 20 20 20 49 66 20 27 2d 63 27 20 68 '.'--output=FILE'......If.'-c'.h
46240 61 73 20 6e 6f 74 20 62 65 65 6e 20 61 6c 73 6f 20 73 70 65 63 69 66 69 65 64 2c 20 77 72 69 74 as.not.been.also.specified,.writ
46260 65 20 74 68 65 20 28 64 65 29 63 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 0a 20 20 20 20 e.the.(de)compressed.output.....
46280 20 74 6f 20 46 49 4c 45 2c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 72 65 61 74 69 6e 67 .to.FILE,.automatically.creating
462a0 20 61 6e 79 20 6d 69 73 73 69 6e 67 20 70 61 72 65 6e 74 20 64 69 72 65 63 74 6f 72 69 65 73 3b .any.missing.parent.directories;
462c0 20 6b 65 65 70 0a 20 20 20 20 20 69 6e 70 75 74 20 66 69 6c 65 73 20 75 6e 63 68 61 6e 67 65 64 .keep......input.files.unchanged
462e0 2e 20 49 66 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 73 65 76 65 72 61 6c 20 66 69 6c 65 73 2c 20 ..If.compressing.several.files,.
46300 65 61 63 68 20 66 69 6c 65 20 69 73 0a 20 20 20 20 20 63 6f 6d 70 72 65 73 73 65 64 20 69 6e 64 each.file.is......compressed.ind
46320 65 70 65 6e 64 65 6e 74 6c 79 2e 20 28 54 68 65 20 6f 75 74 70 75 74 20 63 6f 6e 73 69 73 74 73 ependently..(The.output.consists
46340 20 6f 66 20 61 20 73 65 71 75 65 6e 63 65 20 6f 66 0a 20 20 20 20 20 69 6e 64 65 70 65 6e 64 65 .of.a.sequence.of......independe
46360 6e 74 6c 79 20 63 6f 6d 70 72 65 73 73 65 64 20 6d 65 6d 62 65 72 73 29 2e 20 54 68 69 73 20 6f ntly.compressed.members)..This.o
46380 70 74 69 6f 6e 20 28 6f 72 20 27 2d 63 27 29 20 69 73 20 6e 65 65 64 65 64 0a 20 20 20 20 20 77 ption.(or.'-c').is.needed......w
463a0 68 65 6e 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 20 61 20 6e 61 6d 65 64 20 70 69 70 65 20 28 66 hen.reading.from.a.named.pipe.(f
463c0 69 66 6f 29 20 6f 72 20 66 72 6f 6d 20 61 20 64 65 76 69 63 65 2e 20 27 2d 6f 20 2d 27 20 69 73 ifo).or.from.a.device..'-o.-'.is
463e0 0a 20 20 20 20 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 27 2d 63 27 2e 20 27 2d 6f 27 20 68 ......equivalent.to.'-c'..'-o'.h
46400 61 73 20 6e 6f 20 65 66 66 65 63 74 20 77 68 65 6e 20 74 65 73 74 69 6e 67 20 6f 72 20 6c 69 73 as.no.effect.when.testing.or.lis
46420 74 69 6e 67 2e 0a 0a 20 20 20 20 20 49 6e 20 6f 72 64 65 72 20 74 6f 20 6b 65 65 70 20 62 61 63 ting........In.order.to.keep.bac
46440 6b 77 61 72 64 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 6c 7a 69 70 20 76 65 kward.compatibility.with.lzip.ve
46460 72 73 69 6f 6e 73 20 70 72 69 6f 72 20 74 6f 0a 20 20 20 20 20 31 2e 32 32 2c 20 77 68 65 6e 20 rsions.prior.to......1.22,.when.
46480 63 6f 6d 70 72 65 73 73 69 6e 67 20 66 72 6f 6d 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 20 compressing.from.standard.input.
464a0 61 6e 64 20 6e 6f 20 6f 74 68 65 72 20 66 69 6c 65 20 6e 61 6d 65 73 20 61 72 65 0a 20 20 20 20 and.no.other.file.names.are.....
464c0 20 67 69 76 65 6e 2c 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 20 27 2e 6c 7a 27 20 69 73 20 61 .given,.the.extension.'.lz'.is.a
464e0 70 70 65 6e 64 65 64 20 74 6f 20 46 49 4c 45 20 75 6e 6c 65 73 73 20 69 74 20 61 6c 72 65 61 64 ppended.to.FILE.unless.it.alread
46500 79 20 65 6e 64 73 0a 20 20 20 20 20 69 6e 20 27 2e 6c 7a 27 20 6f 72 20 27 2e 74 6c 7a 27 2e 20 y.ends......in.'.lz'.or.'.tlz'..
46520 54 68 69 73 20 66 65 61 74 75 72 65 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 This.feature.will.be.removed.in.
46540 61 20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 0a 20 20 20 20 20 6f 66 20 6c 7a 69 70 2e 20 4d a.future.version......of.lzip..M
46560 65 61 6e 77 68 69 6c 65 2c 20 72 65 64 69 72 65 63 74 69 6f 6e 20 6d 61 79 20 62 65 20 75 73 65 eanwhile,.redirection.may.be.use
46580 64 20 69 6e 73 74 65 61 64 20 6f 66 20 27 2d 6f 27 20 74 6f 20 77 72 69 74 65 0a 20 20 20 20 20 d.instead.of.'-o'.to.write......
465a0 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 20 74 6f 20 61 20 66 69 6c 65 20 the.compressed.output.to.a.file.
465c0 77 69 74 68 6f 75 74 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 20 27 2e 6c 7a 27 20 69 6e 20 69 without.the.extension.'.lz'.in.i
465e0 74 73 0a 20 20 20 20 20 6e 61 6d 65 3a 20 27 6c 7a 69 70 20 3c 20 66 69 6c 65 20 3e 20 66 6f 6f ts......name:.'lzip.<.file.>.foo
46600 27 2e 0a 0a 20 20 20 20 20 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 6e 64 20 73 70 '........When.compressing.and.sp
46620 6c 69 74 74 69 6e 67 20 74 68 65 20 6f 75 74 70 75 74 20 69 6e 20 76 6f 6c 75 6d 65 73 2c 20 46 litting.the.output.in.volumes,.F
46640 49 4c 45 20 69 73 20 75 73 65 64 20 61 73 0a 20 20 20 20 20 61 20 70 72 65 66 69 78 2c 20 61 6e ILE.is.used.as......a.prefix,.an
46660 64 20 73 65 76 65 72 61 6c 20 66 69 6c 65 73 20 6e 61 6d 65 64 20 27 46 49 4c 45 30 30 30 30 31 d.several.files.named.'FILE00001
46680 2e 6c 7a 27 2c 20 27 46 49 4c 45 30 30 30 30 32 2e 6c 7a 27 2c 20 65 74 63 2c 0a 20 20 20 20 20 .lz',.'FILE00002.lz',.etc,......
466a0 61 72 65 20 63 72 65 61 74 65 64 2e 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 6f 6e 6c 79 20 are.created..In.this.case,.only.
466c0 6f 6e 65 20 69 6e 70 75 74 20 66 69 6c 65 20 69 73 20 61 6c 6c 6f 77 65 64 2e 0a 0a 27 2d 71 27 one.input.file.is.allowed...'-q'
466e0 0a 27 2d 2d 71 75 69 65 74 27 0a 20 20 20 20 20 51 75 69 65 74 20 6f 70 65 72 61 74 69 6f 6e 2e .'--quiet'......Quiet.operation.
46700 20 53 75 70 70 72 65 73 73 20 61 6c 6c 20 6d 65 73 73 61 67 65 73 2e 0a 0a 27 2d 73 20 42 59 54 .Suppress.all.messages...'-s.BYT
46720 45 53 27 0a 27 2d 2d 64 69 63 74 69 6f 6e 61 72 79 2d 73 69 7a 65 3d 42 59 54 45 53 27 0a 20 20 ES'.'--dictionary-size=BYTES'...
46740 20 20 20 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 73 65 74 20 74 68 65 20 64 69 63 ...When.compressing,.set.the.dic
46760 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 20 69 6e 20 62 79 74 65 73 2e 20 4c 7a 69 tionary.size.limit.in.bytes..Lzi
46780 70 20 75 73 65 73 20 66 6f 72 0a 20 20 20 20 20 65 61 63 68 20 66 69 6c 65 20 74 68 65 20 6c 61 p.uses.for......each.file.the.la
467a0 72 67 65 73 74 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 74 68 61 74 20 64 6f 65 73 20 rgest.dictionary.size.that.does.
467c0 6e 6f 74 20 65 78 63 65 65 64 20 6e 65 69 74 68 65 72 20 74 68 65 0a 20 20 20 20 20 66 69 6c 65 not.exceed.neither.the......file
467e0 20 73 69 7a 65 20 6e 6f 72 20 74 68 69 73 20 6c 69 6d 69 74 2e 20 56 61 6c 69 64 20 76 61 6c 75 .size.nor.this.limit..Valid.valu
46800 65 73 20 72 61 6e 67 65 20 66 72 6f 6d 20 34 20 4b 69 42 20 74 6f 20 35 31 32 20 4d 69 42 2e 0a es.range.from.4.KiB.to.512.MiB..
46820 20 20 20 20 20 56 61 6c 75 65 73 20 31 32 20 74 6f 20 32 39 20 61 72 65 20 69 6e 74 65 72 70 72 .....Values.12.to.29.are.interpr
46840 65 74 65 64 20 61 73 20 70 6f 77 65 72 73 20 6f 66 20 74 77 6f 2c 20 6d 65 61 6e 69 6e 67 20 32 eted.as.powers.of.two,.meaning.2
46860 5e 31 32 20 74 6f 20 32 5e 32 39 0a 20 20 20 20 20 62 79 74 65 73 2e 20 44 69 63 74 69 6f 6e 61 ^12.to.2^29......bytes..Dictiona
46880 72 79 20 73 69 7a 65 73 20 61 72 65 20 71 75 61 6e 74 69 7a 65 64 20 73 6f 20 74 68 61 74 20 74 ry.sizes.are.quantized.so.that.t
468a0 68 65 79 20 63 61 6e 20 62 65 20 63 6f 64 65 64 20 69 6e 0a 20 20 20 20 20 6a 75 73 74 20 6f 6e hey.can.be.coded.in......just.on
468c0 65 20 62 79 74 65 20 28 2a 6e 6f 74 65 20 63 6f 64 65 64 2d 64 69 63 74 2d 73 69 7a 65 3a 3a 29 e.byte.(*note.coded-dict-size::)
468e0 2e 20 49 66 20 74 68 65 20 73 69 7a 65 20 73 70 65 63 69 66 69 65 64 20 64 6f 65 73 0a 20 20 20 ..If.the.size.specified.does....
46900 20 20 6e 6f 74 20 6d 61 74 63 68 20 6f 6e 65 20 6f 66 20 74 68 65 20 76 61 6c 69 64 20 73 69 7a ..not.match.one.of.the.valid.siz
46920 65 73 2c 20 69 74 20 69 73 20 72 6f 75 6e 64 65 64 20 75 70 77 61 72 64 73 20 62 79 20 61 64 64 es,.it.is.rounded.upwards.by.add
46940 69 6e 67 20 75 70 0a 20 20 20 20 20 74 6f 20 28 42 59 54 45 53 20 2f 20 38 29 20 74 6f 20 69 74 ing.up......to.(BYTES./.8).to.it
46960 2e 0a 0a 20 20 20 20 20 46 6f 72 20 6d 61 78 69 6d 75 6d 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 ........For.maximum.compression.
46980 79 6f 75 20 73 68 6f 75 6c 64 20 75 73 65 20 61 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 you.should.use.a.dictionary.size
469a0 20 6c 69 6d 69 74 20 61 73 20 6c 61 72 67 65 0a 20 20 20 20 20 61 73 20 70 6f 73 73 69 62 6c 65 .limit.as.large......as.possible
469c0 2c 20 62 75 74 20 6b 65 65 70 20 69 6e 20 6d 69 6e 64 20 74 68 61 74 20 74 68 65 20 64 65 63 6f ,.but.keep.in.mind.that.the.deco
469e0 6d 70 72 65 73 73 69 6f 6e 20 6d 65 6d 6f 72 79 20 72 65 71 75 69 72 65 6d 65 6e 74 0a 20 20 20 mpression.memory.requirement....
46a00 20 20 69 73 20 61 66 66 65 63 74 65 64 20 61 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d ..is.affected.at.compression.tim
46a20 65 20 62 79 20 74 68 65 20 63 68 6f 69 63 65 20 6f 66 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 e.by.the.choice.of.dictionary.si
46a40 7a 65 20 6c 69 6d 69 74 2e 0a 0a 27 2d 53 20 42 59 54 45 53 27 0a 27 2d 2d 76 6f 6c 75 6d 65 2d ze.limit...'-S.BYTES'.'--volume-
46a60 73 69 7a 65 3d 42 59 54 45 53 27 0a 20 20 20 20 20 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e size=BYTES'......When.compressin
46a80 67 2c 20 61 6e 64 20 27 2d 63 27 20 68 61 73 20 6e 6f 74 20 62 65 65 6e 20 61 6c 73 6f 20 73 70 g,.and.'-c'.has.not.been.also.sp
46aa0 65 63 69 66 69 65 64 2c 20 73 70 6c 69 74 20 74 68 65 0a 20 20 20 20 20 63 6f 6d 70 72 65 73 73 ecified,.split.the......compress
46ac0 65 64 20 6f 75 74 70 75 74 20 69 6e 74 6f 20 73 65 76 65 72 61 6c 20 76 6f 6c 75 6d 65 20 66 69 ed.output.into.several.volume.fi
46ae0 6c 65 73 20 77 69 74 68 20 6e 61 6d 65 73 0a 20 20 20 20 20 27 6f 72 69 67 69 6e 61 6c 5f 6e 61 les.with.names......'original_na
46b00 6d 65 30 30 30 30 31 2e 6c 7a 27 2c 20 27 6f 72 69 67 69 6e 61 6c 5f 6e 61 6d 65 30 30 30 30 32 me00001.lz',.'original_name00002
46b20 2e 6c 7a 27 2c 20 65 74 63 2c 20 61 6e 64 20 73 65 74 20 74 68 65 0a 20 20 20 20 20 76 6f 6c 75 .lz',.etc,.and.set.the......volu
46b40 6d 65 20 73 69 7a 65 20 6c 69 6d 69 74 20 74 6f 20 42 59 54 45 53 2e 20 49 6e 70 75 74 20 66 69 me.size.limit.to.BYTES..Input.fi
46b60 6c 65 73 20 61 72 65 20 6b 65 70 74 20 75 6e 63 68 61 6e 67 65 64 2e 20 45 61 63 68 0a 20 20 20 les.are.kept.unchanged..Each....
46b80 20 20 76 6f 6c 75 6d 65 20 69 73 20 61 20 63 6f 6d 70 6c 65 74 65 2c 20 6d 61 79 62 65 20 6d 75 ..volume.is.a.complete,.maybe.mu
46ba0 6c 74 69 6d 65 6d 62 65 72 2c 20 6c 7a 69 70 20 66 69 6c 65 2e 20 41 20 73 6d 61 6c 6c 20 76 6f ltimember,.lzip.file..A.small.vo
46bc0 6c 75 6d 65 0a 20 20 20 20 20 73 69 7a 65 20 6d 61 79 20 64 65 67 72 61 64 65 20 63 6f 6d 70 72 lume......size.may.degrade.compr
46be0 65 73 73 69 6f 6e 20 72 61 74 69 6f 2c 20 73 6f 20 75 73 65 20 69 74 20 6f 6e 6c 79 20 77 68 65 ession.ratio,.so.use.it.only.whe
46c00 6e 20 6e 65 65 64 65 64 2e 20 56 61 6c 69 64 0a 20 20 20 20 20 76 61 6c 75 65 73 20 72 61 6e 67 n.needed..Valid......values.rang
46c20 65 20 66 72 6f 6d 20 31 30 30 20 6b 42 20 74 6f 20 34 20 45 69 42 2e 0a 0a 27 2d 74 27 0a 27 2d e.from.100.kB.to.4.EiB...'-t'.'-
46c40 2d 74 65 73 74 27 0a 20 20 20 20 20 43 68 65 63 6b 20 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 -test'......Check.integrity.of.t
46c60 68 65 20 66 69 6c 65 73 20 73 70 65 63 69 66 69 65 64 2c 20 62 75 74 20 64 6f 6e 27 74 20 64 65 he.files.specified,.but.don't.de
46c80 63 6f 6d 70 72 65 73 73 20 74 68 65 6d 2e 20 54 68 69 73 0a 20 20 20 20 20 72 65 61 6c 6c 79 20 compress.them..This......really.
46ca0 70 65 72 66 6f 72 6d 73 20 61 20 74 72 69 61 6c 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 61 performs.a.trial.decompression.a
46cc0 6e 64 20 74 68 72 6f 77 73 20 61 77 61 79 20 74 68 65 20 72 65 73 75 6c 74 2e 20 55 73 65 0a 20 nd.throws.away.the.result..Use..
46ce0 20 20 20 20 69 74 20 74 6f 67 65 74 68 65 72 20 77 69 74 68 20 27 2d 76 27 20 74 6f 20 73 65 65 ....it.together.with.'-v'.to.see
46d00 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68 65 20 66 69 6c 65 73 2e 20 49 66 .information.about.the.files..If
46d20 20 61 20 66 69 6c 65 0a 20 20 20 20 20 66 61 69 6c 73 20 74 68 65 20 74 65 73 74 2c 20 64 6f 65 .a.file......fails.the.test,.doe
46d40 73 20 6e 6f 74 20 65 78 69 73 74 2c 20 63 61 6e 27 74 20 62 65 20 6f 70 65 6e 65 64 2c 20 6f 72 s.not.exist,.can't.be.opened,.or
46d60 20 69 73 20 61 20 74 65 72 6d 69 6e 61 6c 2c 20 6c 7a 69 70 0a 20 20 20 20 20 63 6f 6e 74 69 6e .is.a.terminal,.lzip......contin
46d80 75 65 73 20 74 65 73 74 69 6e 67 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 66 69 6c 65 ues.testing.the.rest.of.the.file
46da0 73 2e 20 41 20 66 69 6e 61 6c 20 64 69 61 67 6e 6f 73 74 69 63 20 69 73 20 73 68 6f 77 6e 20 61 s..A.final.diagnostic.is.shown.a
46dc0 74 0a 20 20 20 20 20 76 65 72 62 6f 73 69 74 79 20 6c 65 76 65 6c 20 31 20 6f 72 20 68 69 67 68 t......verbosity.level.1.or.high
46de0 65 72 20 69 66 20 61 6e 79 20 66 69 6c 65 20 66 61 69 6c 73 20 74 68 65 20 74 65 73 74 20 77 68 er.if.any.file.fails.the.test.wh
46e00 65 6e 20 74 65 73 74 69 6e 67 0a 20 20 20 20 20 6d 75 6c 74 69 70 6c 65 20 66 69 6c 65 73 2e 20 en.testing......multiple.files..
46e20 41 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 20 77 69 74 68 20 6f 6e 65 20 6f 72 20 6d A.multimember.file.with.one.or.m
46e40 6f 72 65 20 65 6d 70 74 79 20 6d 65 6d 62 65 72 73 20 69 73 0a 20 20 20 20 20 61 63 63 65 70 74 ore.empty.members.is......accept
46e60 65 64 20 69 66 20 72 65 64 69 72 65 63 74 65 64 20 74 6f 20 73 74 61 6e 64 61 72 64 20 69 6e 70 ed.if.redirected.to.standard.inp
46e80 75 74 2e 0a 0a 27 2d 76 27 0a 27 2d 2d 76 65 72 62 6f 73 65 27 0a 20 20 20 20 20 56 65 72 62 6f ut...'-v'.'--verbose'......Verbo
46ea0 73 65 20 6d 6f 64 65 2e 0a 20 20 20 20 20 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 se.mode.......When.compressing,.
46ec0 73 68 6f 77 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 61 6e 64 20 73 show.the.compression.ratio.and.s
46ee0 69 7a 65 20 66 6f 72 20 65 61 63 68 20 66 69 6c 65 0a 20 20 20 20 20 70 72 6f 63 65 73 73 65 64 ize.for.each.file......processed
46f00 2e 0a 20 20 20 20 20 57 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 6f 72 20 74 65 73 .......When.decompressing.or.tes
46f20 74 69 6e 67 2c 20 66 75 72 74 68 65 72 20 2d 76 27 73 20 28 75 70 20 74 6f 20 34 29 20 69 6e 63 ting,.further.-v's.(up.to.4).inc
46f40 72 65 61 73 65 20 74 68 65 0a 20 20 20 20 20 76 65 72 62 6f 73 69 74 79 20 6c 65 76 65 6c 2c 20 rease.the......verbosity.level,.
46f60 73 68 6f 77 69 6e 67 20 73 74 61 74 75 73 2c 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 showing.status,.compression.rati
46f80 6f 2c 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 2c 0a 20 20 20 20 20 74 72 61 69 6c 65 72 o,.dictionary.size,......trailer
46fa0 20 63 6f 6e 74 65 6e 74 73 20 28 43 52 43 2c 20 64 61 74 61 20 73 69 7a 65 2c 20 6d 65 6d 62 65 .contents.(CRC,.data.size,.membe
46fc0 72 20 73 69 7a 65 29 2c 20 61 6e 64 20 75 70 20 74 6f 20 36 20 62 79 74 65 73 20 6f 66 0a 20 20 r.size),.and.up.to.6.bytes.of...
46fe0 20 20 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 28 69 66 20 61 6e 79 29 20 62 6f 74 68 20 69 ...trailing.data.(if.any).both.i
47000 6e 20 68 65 78 61 64 65 63 69 6d 61 6c 20 61 6e 64 20 61 73 20 61 20 73 74 72 69 6e 67 20 6f 66 n.hexadecimal.and.as.a.string.of
47020 0a 20 20 20 20 20 70 72 69 6e 74 61 62 6c 65 20 41 53 43 49 49 20 63 68 61 72 61 63 74 65 72 73 ......printable.ASCII.characters
47040 2e 0a 20 20 20 20 20 54 77 6f 20 6f 72 20 6d 6f 72 65 20 27 2d 76 27 20 6f 70 74 69 6f 6e 73 20 .......Two.or.more.'-v'.options.
47060 73 68 6f 77 20 74 68 65 20 70 72 6f 67 72 65 73 73 20 6f 66 20 28 64 65 29 63 6f 6d 70 72 65 73 show.the.progress.of.(de)compres
47080 73 69 6f 6e 2e 0a 0a 27 2d 30 20 2e 2e 20 2d 39 27 0a 20 20 20 20 20 43 6f 6d 70 72 65 73 73 69 sion...'-0....-9'......Compressi
470a0 6f 6e 20 6c 65 76 65 6c 2e 20 53 65 74 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 70 61 on.level..Set.the.compression.pa
470c0 72 61 6d 65 74 65 72 73 20 28 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 61 6e 64 0a 20 20 rameters.(dictionary.size.and...
470e0 20 20 20 6d 61 74 63 68 20 6c 65 6e 67 74 68 20 6c 69 6d 69 74 29 20 61 73 20 73 68 6f 77 6e 20 ...match.length.limit).as.shown.
47100 69 6e 20 74 68 65 20 74 61 62 6c 65 20 62 65 6c 6f 77 2e 20 54 68 65 20 64 65 66 61 75 6c 74 0a in.the.table.below..The.default.
47120 20 20 20 20 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 20 69 73 20 27 2d 36 27 2c 20 .....compression.level.is.'-6',.
47140 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 27 2d 73 38 4d 69 42 20 2d 6d 33 36 27 2e 20 4e 6f 74 equivalent.to.'-s8MiB.-m36'..Not
47160 65 20 74 68 61 74 20 27 2d 39 27 0a 20 20 20 20 20 63 61 6e 20 62 65 20 6d 75 63 68 20 73 6c 6f e.that.'-9'......can.be.much.slo
47180 77 65 72 20 74 68 61 6e 20 27 2d 30 27 2e 20 54 68 65 73 65 20 6f 70 74 69 6f 6e 73 20 68 61 76 wer.than.'-0'..These.options.hav
471a0 65 20 6e 6f 20 65 66 66 65 63 74 20 77 68 65 6e 0a 20 20 20 20 20 64 65 63 6f 6d 70 72 65 73 73 e.no.effect.when......decompress
471c0 69 6e 67 2c 20 74 65 73 74 69 6e 67 2c 20 6f 72 20 6c 69 73 74 69 6e 67 2e 0a 0a 20 20 20 20 20 ing,.testing,.or.listing........
471e0 54 68 65 20 62 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 70 61 72 61 6d 65 74 65 72 20 73 70 61 63 The.bidimensional.parameter.spac
47200 65 20 6f 66 20 4c 5a 4d 41 20 63 61 6e 27 74 20 62 65 20 6d 61 70 70 65 64 20 74 6f 20 61 20 6c e.of.LZMA.can't.be.mapped.to.a.l
47220 69 6e 65 61 72 0a 20 20 20 20 20 73 63 61 6c 65 20 6f 70 74 69 6d 61 6c 20 66 6f 72 20 61 6c 6c inear......scale.optimal.for.all
47240 20 66 69 6c 65 73 2e 20 49 66 20 79 6f 75 72 20 66 69 6c 65 73 20 61 72 65 20 6c 61 72 67 65 2c .files..If.your.files.are.large,
47260 20 76 65 72 79 20 72 65 70 65 74 69 74 69 76 65 2c 0a 20 20 20 20 20 65 74 63 2c 20 79 6f 75 20 .very.repetitive,......etc,.you.
47280 6d 61 79 20 6e 65 65 64 20 74 6f 20 75 73 65 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 27 2d 2d 64 may.need.to.use.the.options.'--d
472a0 69 63 74 69 6f 6e 61 72 79 2d 73 69 7a 65 27 20 61 6e 64 0a 20 20 20 20 20 27 2d 2d 6d 61 74 63 ictionary-size'.and......'--matc
472c0 68 2d 6c 65 6e 67 74 68 27 20 64 69 72 65 63 74 6c 79 20 74 6f 20 61 63 68 69 65 76 65 20 6f 70 h-length'.directly.to.achieve.op
472e0 74 69 6d 61 6c 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 0a 0a 20 20 20 20 20 49 66 20 73 65 76 65 timal.performance........If.seve
47300 72 61 6c 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 73 20 6f 72 20 27 2d 73 27 20 6f ral.compression.levels.or.'-s'.o
47320 72 20 27 2d 6d 27 20 6f 70 74 69 6f 6e 73 20 61 72 65 20 67 69 76 65 6e 2c 20 74 68 65 0a 20 20 r.'-m'.options.are.given,.the...
47340 20 20 20 6c 61 73 74 20 73 65 74 74 69 6e 67 20 69 73 20 75 73 65 64 2e 20 46 6f 72 20 65 78 61 ...last.setting.is.used..For.exa
47360 6d 70 6c 65 20 27 2d 39 20 2d 73 36 34 4d 69 42 27 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 mple.'-9.-s64MiB'.is.equivalent.
47380 74 6f 0a 20 20 20 20 20 27 2d 73 36 34 4d 69 42 20 2d 6d 32 37 33 27 0a 0a 20 20 20 20 20 4c 65 to......'-s64MiB.-m273'.......Le
473a0 76 65 6c 20 20 20 44 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 28 2d 73 29 20 20 20 4d 61 74 vel...Dictionary.size.(-s)...Mat
473c0 63 68 20 6c 65 6e 67 74 68 20 6c 69 6d 69 74 20 28 2d 6d 29 0a 20 20 20 20 20 2d 2d 2d 2d 2d 2d ch.length.limit.(-m)......------
473e0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
47400 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 20 20 20 20 20 2d 30 20 20 20 20 20 20 36 34 ----------------......-0......64
47420 20 4b 69 42 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 36 20 62 79 74 65 73 0a 20 20 .KiB.................16.bytes...
47440 20 20 20 2d 31 20 20 20 20 20 20 31 20 4d 69 42 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...-1......1.MiB................
47460 20 20 35 20 62 79 74 65 73 0a 20 20 20 20 20 2d 32 20 20 20 20 20 20 31 2e 35 20 4d 69 42 20 20 ..5.bytes......-2......1.5.MiB..
47480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 36 20 62 79 74 65 73 0a 20 20 20 20 20 2d 33 20 20 20 ..............6.bytes......-3...
474a0 20 20 20 32 20 4d 69 42 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 38 20 62 79 74 65 ...2.MiB..................8.byte
474c0 73 0a 20 20 20 20 20 2d 34 20 20 20 20 20 20 33 20 4d 69 42 20 20 20 20 20 20 20 20 20 20 20 20 s......-4......3.MiB............
474e0 20 20 20 20 20 20 31 32 20 62 79 74 65 73 0a 20 20 20 20 20 2d 35 20 20 20 20 20 20 34 20 4d 69 ......12.bytes......-5......4.Mi
47500 42 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 32 30 20 62 79 74 65 73 0a 20 20 20 20 B..................20.bytes.....
47520 20 2d 36 20 20 20 20 20 20 38 20 4d 69 42 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .-6......8.MiB..................
47540 33 36 20 62 79 74 65 73 0a 20 20 20 20 20 2d 37 20 20 20 20 20 20 31 36 20 4d 69 42 20 20 20 20 36.bytes......-7......16.MiB....
47560 20 20 20 20 20 20 20 20 20 20 20 20 20 36 38 20 62 79 74 65 73 0a 20 20 20 20 20 2d 38 20 20 20 .............68.bytes......-8...
47580 20 20 20 32 34 20 4d 69 42 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 33 32 20 62 79 ...24.MiB.................132.by
475a0 74 65 73 0a 20 20 20 20 20 2d 39 20 20 20 20 20 20 33 32 20 4d 69 42 20 20 20 20 20 20 20 20 20 tes......-9......32.MiB.........
475c0 20 20 20 20 20 20 20 20 32 37 33 20 62 79 74 65 73 0a 0a 27 2d 2d 66 61 73 74 27 0a 27 2d 2d 62 ........273.bytes..'--fast'.'--b
475e0 65 73 74 27 0a 20 20 20 20 20 41 6c 69 61 73 65 73 20 66 6f 72 20 47 4e 55 20 67 7a 69 70 20 63 est'......Aliases.for.GNU.gzip.c
47600 6f 6d 70 61 74 69 62 69 6c 69 74 79 2e 0a 0a 27 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 ompatibility...'--loose-trailing
47620 27 0a 20 20 20 20 20 57 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 74 65 73 74 69 '......When.decompressing,.testi
47640 6e 67 2c 20 6f 72 20 6c 69 73 74 69 6e 67 2c 20 61 6c 6c 6f 77 20 74 72 61 69 6c 69 6e 67 20 64 ng,.or.listing,.allow.trailing.d
47660 61 74 61 20 77 68 6f 73 65 0a 20 20 20 20 20 66 69 72 73 74 20 62 79 74 65 73 20 61 72 65 20 73 ata.whose......first.bytes.are.s
47680 6f 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 6d 61 67 69 63 20 62 79 74 65 73 20 6f 66 20 o.similar.to.the.magic.bytes.of.
476a0 61 20 6c 7a 69 70 20 68 65 61 64 65 72 20 74 68 61 74 0a 20 20 20 20 20 74 68 65 79 20 63 61 6e a.lzip.header.that......they.can
476c0 20 62 65 20 63 6f 6e 66 75 73 65 64 20 77 69 74 68 20 61 20 63 6f 72 72 75 70 74 20 68 65 61 64 .be.confused.with.a.corrupt.head
476e0 65 72 2e 20 55 73 65 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 69 66 20 61 20 66 69 6c 65 0a 20 20 er..Use.this.option.if.a.file...
47700 20 20 20 74 72 69 67 67 65 72 73 20 61 20 27 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 27 20 65 ...triggers.a.'corrupt.header'.e
47720 72 72 6f 72 20 61 6e 64 20 74 68 65 20 63 61 75 73 65 20 69 73 20 6e 6f 74 20 69 6e 64 65 65 64 rror.and.the.cause.is.not.indeed
47740 20 61 0a 20 20 20 20 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 2e 0a 0a 0a 20 20 20 4e 75 6d .a......corrupt.header.......Num
47760 62 65 72 73 20 67 69 76 65 6e 20 61 73 20 61 72 67 75 6d 65 6e 74 73 20 74 6f 20 6f 70 74 69 6f bers.given.as.arguments.to.optio
47780 6e 73 20 6d 61 79 20 62 65 20 65 78 70 72 65 73 73 65 64 20 69 6e 20 64 65 63 69 6d 61 6c 2c 0a ns.may.be.expressed.in.decimal,.
477a0 68 65 78 61 64 65 63 69 6d 61 6c 2c 20 6f 72 20 6f 63 74 61 6c 20 28 75 73 69 6e 67 20 74 68 65 hexadecimal,.or.octal.(using.the
477c0 20 73 61 6d 65 20 73 79 6e 74 61 78 20 61 73 20 69 6e 74 65 67 65 72 20 63 6f 6e 73 74 61 6e 74 .same.syntax.as.integer.constant
477e0 73 20 69 6e 20 43 2b 2b 29 2c 0a 61 6e 64 20 6d 61 79 20 62 65 20 66 6f 6c 6c 6f 77 65 64 20 62 s.in.C++),.and.may.be.followed.b
47800 79 20 61 20 6d 75 6c 74 69 70 6c 69 65 72 20 61 6e 64 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 27 y.a.multiplier.and.an.optional.'
47820 42 27 20 66 6f 72 20 22 62 79 74 65 22 2e 0a 0a 20 20 20 54 61 62 6c 65 20 6f 66 20 53 49 20 61 B'.for."byte"......Table.of.SI.a
47840 6e 64 20 62 69 6e 61 72 79 20 70 72 65 66 69 78 65 73 20 28 75 6e 69 74 20 6d 75 6c 74 69 70 6c nd.binary.prefixes.(unit.multipl
47860 69 65 72 73 29 3a 0a 0a 50 72 65 66 69 78 20 20 20 56 61 6c 75 65 20 20 20 20 20 20 20 20 20 20 iers):..Prefix...Value..........
47880 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 50 72 65 66 69 78 20 20 20 56 61 6c 75 65 0a 2d ............|...Prefix...Value.-
478a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
478c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
478e0 2d 2d 2d 2d 2d 0a 6b 20 20 20 20 20 20 20 20 6b 69 6c 6f 62 79 74 65 20 20 20 28 31 30 5e 33 20 -----.k........kilobyte...(10^3.
47900 3d 20 31 30 30 30 29 20 20 20 7c 20 20 20 4b 69 20 20 20 20 20 20 20 6b 69 62 69 62 79 74 65 20 =.1000)...|...Ki.......kibibyte.
47920 20 28 32 5e 31 30 20 3d 20 31 30 32 34 29 0a 4d 20 20 20 20 20 20 20 20 6d 65 67 61 62 79 74 65 .(2^10.=.1024).M........megabyte
47940 20 20 20 28 31 30 5e 36 29 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 4d 69 20 20 20 20 20 20 20 ...(10^6)..........|...Mi.......
47960 6d 65 62 69 62 79 74 65 20 20 28 32 5e 32 30 29 0a 47 20 20 20 20 20 20 20 20 67 69 67 61 62 79 mebibyte..(2^20).G........gigaby
47980 74 65 20 20 20 28 31 30 5e 39 29 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 47 69 20 20 20 20 20 te...(10^9)..........|...Gi.....
479a0 20 20 67 69 62 69 62 79 74 65 20 20 28 32 5e 33 30 29 0a 54 20 20 20 20 20 20 20 20 74 65 72 61 ..gibibyte..(2^30).T........tera
479c0 62 79 74 65 20 20 20 28 31 30 5e 31 32 29 20 20 20 20 20 20 20 20 20 7c 20 20 20 54 69 20 20 20 byte...(10^12).........|...Ti...
479e0 20 20 20 20 74 65 62 69 62 79 74 65 20 20 28 32 5e 34 30 29 0a 50 20 20 20 20 20 20 20 20 70 65 ....tebibyte..(2^40).P........pe
47a00 74 61 62 79 74 65 20 20 20 28 31 30 5e 31 35 29 20 20 20 20 20 20 20 20 20 7c 20 20 20 50 69 20 tabyte...(10^15).........|...Pi.
47a20 20 20 20 20 20 20 70 65 62 69 62 79 74 65 20 20 28 32 5e 35 30 29 0a 45 20 20 20 20 20 20 20 20 ......pebibyte..(2^50).E........
47a40 65 78 61 62 79 74 65 20 20 20 20 28 31 30 5e 31 38 29 20 20 20 20 20 20 20 20 20 7c 20 20 20 45 exabyte....(10^18).........|...E
47a60 69 20 20 20 20 20 20 20 65 78 62 69 62 79 74 65 20 20 28 32 5e 36 30 29 0a 5a 20 20 20 20 20 20 i.......exbibyte..(2^60).Z......
47a80 20 20 7a 65 74 74 61 62 79 74 65 20 20 28 31 30 5e 32 31 29 20 20 20 20 20 20 20 20 20 7c 20 20 ..zettabyte..(10^21).........|..
47aa0 20 5a 69 20 20 20 20 20 20 20 7a 65 62 69 62 79 74 65 20 20 28 32 5e 37 30 29 0a 59 20 20 20 20 .Zi.......zebibyte..(2^70).Y....
47ac0 20 20 20 20 79 6f 74 74 61 62 79 74 65 20 20 28 31 30 5e 32 34 29 20 20 20 20 20 20 20 20 20 7c ....yottabyte..(10^24).........|
47ae0 20 20 20 59 69 20 20 20 20 20 20 20 79 6f 62 69 62 79 74 65 20 20 28 32 5e 38 30 29 0a 52 20 20 ...Yi.......yobibyte..(2^80).R..
47b00 20 20 20 20 20 20 72 6f 6e 6e 61 62 79 74 65 20 20 28 31 30 5e 32 37 29 20 20 20 20 20 20 20 20 ......ronnabyte..(10^27)........
47b20 20 7c 20 20 20 52 69 20 20 20 20 20 20 20 72 6f 62 69 62 79 74 65 20 20 28 32 5e 39 30 29 0a 51 .|...Ri.......robibyte..(2^90).Q
47b40 20 20 20 20 20 20 20 20 71 75 65 74 74 61 62 79 74 65 20 28 31 30 5e 33 30 29 20 20 20 20 20 20 ........quettabyte.(10^30)......
47b60 20 20 20 7c 20 20 20 51 69 20 20 20 20 20 20 20 71 75 65 62 69 62 79 74 65 20 28 32 5e 31 30 30 ...|...Qi.......quebibyte.(2^100
47b80 29 0a 0a 0a 20 20 20 45 78 69 74 20 73 74 61 74 75 73 3a 20 30 20 66 6f 72 20 61 20 6e 6f 72 6d )......Exit.status:.0.for.a.norm
47ba0 61 6c 20 65 78 69 74 2c 20 31 20 66 6f 72 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 61 6c 20 70 72 6f al.exit,.1.for.environmental.pro
47bc0 62 6c 65 6d 73 20 28 66 69 6c 65 20 6e 6f 74 0a 66 6f 75 6e 64 2c 20 69 6e 76 61 6c 69 64 20 63 blems.(file.not.found,.invalid.c
47be0 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 2c 20 49 2f 4f 20 65 72 72 6f 72 73 2c ommand-line.options,.I/O.errors,
47c00 20 65 74 63 29 2c 20 32 20 74 6f 20 69 6e 64 69 63 61 74 65 20 61 0a 63 6f 72 72 75 70 74 20 6f .etc),.2.to.indicate.a.corrupt.o
47c20 72 20 69 6e 76 61 6c 69 64 20 69 6e 70 75 74 20 66 69 6c 65 2c 20 33 20 66 6f 72 20 61 6e 20 69 r.invalid.input.file,.3.for.an.i
47c40 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 69 73 74 65 6e 63 79 20 65 72 72 6f 72 20 28 65 2e 67 2e 2c nternal.consistency.error.(e.g.,
47c60 0a 62 75 67 29 20 77 68 69 63 68 20 63 61 75 73 65 64 20 6c 7a 69 70 20 74 6f 20 70 61 6e 69 63 .bug).which.caused.lzip.to.panic
47c80 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 41 72 67 .....File:.lzip.info,..Node:.Arg
47ca0 75 6d 65 6e 74 20 73 79 6e 74 61 78 2c 20 20 4e 65 78 74 3a 20 46 69 6c 65 20 66 6f 72 6d 61 74 ument.syntax,..Next:.File.format
47cc0 2c 20 20 50 72 65 76 3a 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 2c 20 20 55 70 3a 20 54 6f 70 ,..Prev:.Invoking.lzip,..Up:.Top
47ce0 0a 0a 34 20 53 79 6e 74 61 78 20 6f 66 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 61 72 67 75 6d ..4.Syntax.of.command-line.argum
47d00 65 6e 74 73 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ents.***************************
47d20 2a 2a 2a 2a 2a 2a 2a 0a 0a 50 4f 53 49 58 20 72 65 63 6f 6d 6d 65 6e 64 73 20 74 68 65 73 65 20 *******..POSIX.recommends.these.
47d40 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 66 6f 72 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 61 72 67 conventions.for.command-line.arg
47d60 75 6d 65 6e 74 73 2e 0a 0a 20 20 20 2a 20 41 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 61 72 67 uments......*.A.command-line.arg
47d80 75 6d 65 6e 74 20 69 73 20 61 6e 20 6f 70 74 69 6f 6e 20 69 66 20 69 74 20 62 65 67 69 6e 73 20 ument.is.an.option.if.it.begins.
47da0 77 69 74 68 20 61 20 68 79 70 68 65 6e 20 28 27 2d 27 29 2e 0a 0a 20 20 20 2a 20 4f 70 74 69 6f with.a.hyphen.('-')......*.Optio
47dc0 6e 20 6e 61 6d 65 73 20 61 72 65 20 73 69 6e 67 6c 65 20 61 6c 70 68 61 6e 75 6d 65 72 69 63 20 n.names.are.single.alphanumeric.
47de0 63 68 61 72 61 63 74 65 72 73 2e 0a 0a 20 20 20 2a 20 43 65 72 74 61 69 6e 20 6f 70 74 69 6f 6e characters......*.Certain.option
47e00 73 20 72 65 71 75 69 72 65 20 61 6e 20 61 72 67 75 6d 65 6e 74 2e 0a 0a 20 20 20 2a 20 41 6e 20 s.require.an.argument......*.An.
47e20 6f 70 74 69 6f 6e 20 61 6e 64 20 69 74 73 20 61 72 67 75 6d 65 6e 74 20 6d 61 79 20 6f 72 20 6d option.and.its.argument.may.or.m
47e40 61 79 20 6e 6f 74 20 61 70 70 65 61 72 20 61 73 20 73 65 70 61 72 61 74 65 20 74 6f 6b 65 6e 73 ay.not.appear.as.separate.tokens
47e60 2e 0a 20 20 20 20 20 28 49 6e 20 6f 74 68 65 72 20 77 6f 72 64 73 2c 20 74 68 65 20 77 68 69 74 .......(In.other.words,.the.whit
47e80 65 73 70 61 63 65 20 73 65 70 61 72 61 74 69 6e 67 20 74 68 65 6d 20 69 73 20 6f 70 74 69 6f 6e espace.separating.them.is.option
47ea0 61 6c 29 2e 20 54 68 75 73 2c 0a 20 20 20 20 20 27 2d 6f 20 66 6f 6f 27 20 61 6e 64 20 27 2d 6f al)..Thus,......'-o.foo'.and.'-o
47ec0 66 6f 6f 27 20 61 72 65 20 65 71 75 69 76 61 6c 65 6e 74 2e 0a 0a 20 20 20 2a 20 4f 6e 65 20 6f foo'.are.equivalent......*.One.o
47ee0 72 20 6d 6f 72 65 20 6f 70 74 69 6f 6e 73 20 77 69 74 68 6f 75 74 20 61 72 67 75 6d 65 6e 74 73 r.more.options.without.arguments
47f00 2c 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 74 20 6d 6f 73 74 20 6f 6e 65 20 6f 70 74 69 6f 6e ,.followed.by.at.most.one.option
47f20 0a 20 20 20 20 20 74 68 61 74 20 74 61 6b 65 73 20 61 6e 20 61 72 67 75 6d 65 6e 74 2c 20 6d 61 ......that.takes.an.argument,.ma
47f40 79 20 66 6f 6c 6c 6f 77 20 61 20 68 79 70 68 65 6e 20 69 6e 20 61 20 73 69 6e 67 6c 65 20 74 6f y.follow.a.hyphen.in.a.single.to
47f60 6b 65 6e 2e 20 54 68 75 73 2c 0a 20 20 20 20 20 27 2d 61 62 63 27 20 69 73 20 65 71 75 69 76 61 ken..Thus,......'-abc'.is.equiva
47f80 6c 65 6e 74 20 74 6f 20 27 2d 61 20 2d 62 20 2d 63 27 2e 0a 0a 20 20 20 2a 20 4f 70 74 69 6f 6e lent.to.'-a.-b.-c'......*.Option
47fa0 73 20 74 79 70 69 63 61 6c 6c 79 20 70 72 65 63 65 64 65 20 6f 74 68 65 72 20 6e 6f 6e 2d 6f 70 s.typically.precede.other.non-op
47fc0 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 73 2e 0a 0a 20 20 20 2a 20 54 68 65 20 61 72 67 75 6d 65 tion.arguments......*.The.argume
47fe0 6e 74 20 27 2d 2d 27 20 74 65 72 6d 69 6e 61 74 65 73 20 61 6c 6c 20 6f 70 74 69 6f 6e 73 3b 20 nt.'--'.terminates.all.options;.
48000 61 6e 79 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 72 67 75 6d 65 6e 74 73 20 61 72 65 0a 20 20 20 20 any.following.arguments.are.....
48020 20 74 72 65 61 74 65 64 20 61 73 20 6e 6f 6e 2d 6f 70 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 73 .treated.as.non-option.arguments
48040 2c 20 65 76 65 6e 20 69 66 20 74 68 65 79 20 62 65 67 69 6e 20 77 69 74 68 20 61 20 68 79 70 68 ,.even.if.they.begin.with.a.hyph
48060 65 6e 2e 0a 0a 20 20 20 2a 20 41 20 74 6f 6b 65 6e 20 63 6f 6e 73 69 73 74 69 6e 67 20 6f 66 20 en......*.A.token.consisting.of.
48080 61 20 73 69 6e 67 6c 65 20 68 79 70 68 65 6e 20 63 68 61 72 61 63 74 65 72 20 69 73 20 69 6e 74 a.single.hyphen.character.is.int
480a0 65 72 70 72 65 74 65 64 20 61 73 20 61 6e 0a 20 20 20 20 20 6f 72 64 69 6e 61 72 79 20 6e 6f 6e erpreted.as.an......ordinary.non
480c0 2d 6f 70 74 69 6f 6e 20 61 72 67 75 6d 65 6e 74 2e 20 42 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c -option.argument..By.convention,
480e0 20 69 74 20 69 73 20 75 73 65 64 20 74 6f 20 73 70 65 63 69 66 79 0a 20 20 20 20 20 73 74 61 6e .it.is.used.to.specify......stan
48100 64 61 72 64 20 69 6e 70 75 74 2c 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2c 20 6f 72 20 dard.input,.standard.output,.or.
48120 61 20 66 69 6c 65 20 6e 61 6d 65 64 20 27 2d 27 2e 0a 0a 47 4e 55 20 61 64 64 73 20 22 6c 6f 6e a.file.named.'-'...GNU.adds."lon
48140 67 20 6f 70 74 69 6f 6e 73 22 20 74 6f 20 74 68 65 73 65 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 3a g.options".to.these.conventions:
48160 0a 0a 20 20 20 2a 20 41 20 6c 6f 6e 67 20 6f 70 74 69 6f 6e 20 63 6f 6e 73 69 73 74 73 20 6f 66 .....*.A.long.option.consists.of
48180 20 74 77 6f 20 68 79 70 68 65 6e 73 20 28 27 2d 2d 27 29 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 .two.hyphens.('--').followed.by.
481a0 61 20 6e 61 6d 65 20 6d 61 64 65 0a 20 20 20 20 20 6f 66 20 61 6c 70 68 61 6e 75 6d 65 72 69 63 a.name.made......of.alphanumeric
481c0 20 63 68 61 72 61 63 74 65 72 73 20 61 6e 64 20 68 79 70 68 65 6e 73 2e 20 4f 70 74 69 6f 6e 20 .characters.and.hyphens..Option.
481e0 6e 61 6d 65 73 20 61 72 65 20 74 79 70 69 63 61 6c 6c 79 20 6f 6e 65 0a 20 20 20 20 20 74 6f 20 names.are.typically.one......to.
48200 74 68 72 65 65 20 77 6f 72 64 73 20 6c 6f 6e 67 2c 20 77 69 74 68 20 68 79 70 68 65 6e 73 20 74 three.words.long,.with.hyphens.t
48220 6f 20 73 65 70 61 72 61 74 65 20 77 6f 72 64 73 2e 20 41 62 62 72 65 76 69 61 74 69 6f 6e 73 20 o.separate.words..Abbreviations.
48240 63 61 6e 0a 20 20 20 20 20 62 65 20 75 73 65 64 20 66 6f 72 20 74 68 65 20 6c 6f 6e 67 20 6f 70 can......be.used.for.the.long.op
48260 74 69 6f 6e 20 6e 61 6d 65 73 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 20 61 62 62 72 65 76 tion.names.as.long.as.the.abbrev
48280 69 61 74 69 6f 6e 73 20 61 72 65 0a 20 20 20 20 20 75 6e 69 71 75 65 2e 0a 0a 20 20 20 2a 20 41 iations.are......unique......*.A
482a0 20 6c 6f 6e 67 20 6f 70 74 69 6f 6e 20 61 6e 64 20 69 74 73 20 61 72 67 75 6d 65 6e 74 20 6d 61 .long.option.and.its.argument.ma
482c0 79 20 6f 72 20 6d 61 79 20 6e 6f 74 20 61 70 70 65 61 72 20 61 73 20 73 65 70 61 72 61 74 65 0a y.or.may.not.appear.as.separate.
482e0 20 20 20 20 20 74 6f 6b 65 6e 73 2e 20 49 6e 20 74 68 65 20 6c 61 74 74 65 72 20 63 61 73 65 20 .....tokens..In.the.latter.case.
48300 74 68 65 79 20 6d 75 73 74 20 62 65 20 73 65 70 61 72 61 74 65 64 20 62 79 20 61 6e 20 65 71 75 they.must.be.separated.by.an.equ
48320 61 6c 20 73 69 67 6e 20 27 3d 27 2e 0a 20 20 20 20 20 54 68 75 73 2c 20 27 2d 2d 66 6f 6f 20 62 al.sign.'='.......Thus,.'--foo.b
48340 61 72 27 20 61 6e 64 20 27 2d 2d 66 6f 6f 3d 62 61 72 27 20 61 72 65 20 65 71 75 69 76 61 6c 65 ar'.and.'--foo=bar'.are.equivale
48360 6e 74 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 46 nt.....File:.lzip.info,..Node:.F
48380 69 6c 65 20 66 6f 72 6d 61 74 2c 20 20 4e 65 78 74 3a 20 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 ile.format,..Next:.Stream.format
483a0 2c 20 20 50 72 65 76 3a 20 41 72 67 75 6d 65 6e 74 20 73 79 6e 74 61 78 2c 20 20 55 70 3a 20 54 ,..Prev:.Argument.syntax,..Up:.T
483c0 6f 70 0a 0a 35 20 46 69 6c 65 20 66 6f 72 6d 61 74 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a op..5.File.format.*************.
483e0 0a 50 65 72 66 65 63 74 69 6f 6e 20 69 73 20 72 65 61 63 68 65 64 2c 20 6e 6f 74 20 77 68 65 6e .Perfection.is.reached,.not.when
48400 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 61 6e 79 74 68 69 6e 67 20 74 6f 20 .there.is.no.longer.anything.to.
48420 61 64 64 2c 20 62 75 74 0a 77 68 65 6e 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 add,.but.when.there.is.no.longer
48440 20 61 6e 79 74 68 69 6e 67 20 74 6f 20 74 61 6b 65 20 61 77 61 79 2e 0a 2d 2d 20 41 6e 74 6f 69 .anything.to.take.away..--.Antoi
48460 6e 65 20 64 65 20 53 61 69 6e 74 2d 45 78 75 70 65 72 79 0a 0a 20 20 20 49 6e 20 74 68 65 20 64 ne.de.Saint-Exupery.....In.the.d
48480 69 61 67 72 61 6d 20 62 65 6c 6f 77 2c 20 61 20 62 6f 78 20 6c 69 6b 65 20 74 68 69 73 3a 0a 0a iagram.below,.a.box.like.this:..
484a0 2b 2d 2d 2d 2b 0a 7c 20 20 20 7c 20 3c 2d 2d 20 74 68 65 20 76 65 72 74 69 63 61 6c 20 62 61 72 +---+.|...|.<--.the.vertical.bar
484c0 73 20 6d 69 67 68 74 20 62 65 20 6d 69 73 73 69 6e 67 0a 2b 2d 2d 2d 2b 0a 0a 20 20 20 72 65 70 s.might.be.missing.+---+.....rep
484e0 72 65 73 65 6e 74 73 20 6f 6e 65 20 62 79 74 65 3b 20 61 20 62 6f 78 20 6c 69 6b 65 20 74 68 69 resents.one.byte;.a.box.like.thi
48500 73 3a 0a 0a 2b 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 2b 0a 7c 20 20 20 20 20 20 20 20 20 20 s:..+==============+.|..........
48520 20 20 20 20 7c 0a 2b 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 2b 0a 0a 20 20 20 72 65 70 72 65 ....|.+==============+.....repre
48540 73 65 6e 74 73 20 61 20 76 61 72 69 61 62 6c 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 sents.a.variable.number.of.bytes
48560 2e 0a 0a 41 20 6c 7a 69 70 20 66 69 6c 65 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 6f 6e 65 20 6f ...A.lzip.file.consists.of.one.o
48580 72 20 6d 6f 72 65 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 22 6d 65 6d 62 65 72 73 22 20 28 63 6f r.more.independent."members".(co
485a0 6d 70 72 65 73 73 65 64 20 64 61 74 61 0a 73 65 74 73 29 2e 20 54 68 65 20 6d 65 6d 62 65 72 73 mpressed.data.sets)..The.members
485c0 20 73 69 6d 70 6c 79 20 61 70 70 65 61 72 20 6f 6e 65 20 61 66 74 65 72 20 61 6e 6f 74 68 65 72 .simply.appear.one.after.another
485e0 20 69 6e 20 74 68 65 20 66 69 6c 65 2c 20 77 69 74 68 20 6e 6f 0a 61 64 64 69 74 69 6f 6e 61 6c .in.the.file,.with.no.additional
48600 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 62 65 66 6f 72 65 2c 20 62 65 74 77 65 65 6e 2c 20 6f 72 .information.before,.between,.or
48620 20 61 66 74 65 72 20 74 68 65 6d 2e 20 45 61 63 68 20 6d 65 6d 62 65 72 20 63 61 6e 0a 65 6e 63 .after.them..Each.member.can.enc
48640 6f 64 65 20 69 6e 20 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 20 75 70 20 74 6f 20 31 36 20 ode.in.compressed.form.up.to.16.
48660 45 69 42 20 2d 20 31 20 62 79 74 65 20 6f 66 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 EiB.-.1.byte.of.uncompressed.dat
48680 61 2e 20 54 68 65 0a 73 69 7a 65 20 6f 66 20 61 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c a..The.size.of.a.multimember.fil
486a0 65 20 69 73 20 75 6e 6c 69 6d 69 74 65 64 2e 20 45 6d 70 74 79 20 6d 65 6d 62 65 72 73 20 28 64 e.is.unlimited..Empty.members.(d
486c0 61 74 61 20 73 69 7a 65 20 3d 20 30 29 20 61 72 65 0a 6e 6f 74 20 61 6c 6c 6f 77 65 64 20 69 6e ata.size.=.0).are.not.allowed.in
486e0 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 2e 0a 0a 20 20 20 45 61 63 68 20 6d 65 6d .multimember.files......Each.mem
48700 62 65 72 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 74 72 75 63 74 75 72 65 3a ber.has.the.following.structure:
48720 0a 0a 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b 2d 2d 2d 2d 2b 2d 2d 2d 2d 2b 3d 3d 3d 3d 3d 3d 3d ..+--+--+--+--+----+----+=======
48740 3d 3d 3d 3d 3d 3d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d ======+-+-+-+-+-+-+-+-+-+-+-+-+-
48760 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 0a 7c 20 49 44 20 73 74 72 69 6e 67 20 7c 20 56 4e +-+-+-+-+-+-+-+.|.ID.string.|.VN
48780 20 7c 20 44 53 20 7c 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 7c 20 43 52 43 33 32 20 7c 20 20 20 .|.DS.|.LZMA.stream.|.CRC32.|...
487a0 44 61 74 61 20 73 69 7a 65 20 20 20 7c 20 20 4d 65 6d 62 65 72 20 73 69 7a 65 20 20 7c 0a 2b 2d Data.size...|..Member.size..|.+-
487c0 2d 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b 2d 2d 2d 2d 2b 2d 2d 2d 2d 2b 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d -+--+--+--+----+----+===========
487e0 3d 3d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d ==+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
48800 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 0a 0a 20 20 20 41 6c 6c 20 6d 75 6c 74 69 62 79 74 65 20 76 61 +-+-+-+-+-+.....All.multibyte.va
48820 6c 75 65 73 20 61 72 65 20 73 74 6f 72 65 64 20 69 6e 20 6c 69 74 74 6c 65 20 65 6e 64 69 61 6e lues.are.stored.in.little.endian
48840 20 6f 72 64 65 72 2e 0a 0a 27 49 44 20 73 74 72 69 6e 67 20 28 74 68 65 20 22 6d 61 67 69 63 22 .order...'ID.string.(the."magic"
48860 20 62 79 74 65 73 29 27 0a 20 20 20 20 20 41 20 66 6f 75 72 20 62 79 74 65 20 73 74 72 69 6e 67 .bytes)'......A.four.byte.string
48880 2c 20 69 64 65 6e 74 69 66 79 69 6e 67 20 74 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 2c 20 77 ,.identifying.the.lzip.format,.w
488a0 69 74 68 20 74 68 65 20 76 61 6c 75 65 20 22 4c 5a 49 50 22 0a 20 20 20 20 20 28 30 78 34 43 2c ith.the.value."LZIP"......(0x4C,
488c0 20 30 78 35 41 2c 20 30 78 34 39 2c 20 30 78 35 30 29 2e 0a 0a 27 56 4e 20 28 76 65 72 73 69 6f .0x5A,.0x49,.0x50)...'VN.(versio
488e0 6e 20 6e 75 6d 62 65 72 2c 20 31 20 62 79 74 65 29 27 0a 20 20 20 20 20 4a 75 73 74 20 69 6e 20 n.number,.1.byte)'......Just.in.
48900 63 61 73 65 20 73 6f 6d 65 74 68 69 6e 67 20 6e 65 65 64 73 20 74 6f 20 62 65 20 6d 6f 64 69 66 case.something.needs.to.be.modif
48920 69 65 64 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 2e 20 31 20 66 6f 72 20 6e 6f 77 2e 0a 0a 27 ied.in.the.future..1.for.now...'
48940 44 53 20 28 63 6f 64 65 64 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 2c 20 31 20 62 79 74 DS.(coded.dictionary.size,.1.byt
48960 65 29 27 0a 20 20 20 20 20 54 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 73 20 e)'......The.dictionary.size.is.
48980 63 61 6c 63 75 6c 61 74 65 64 20 62 79 20 74 61 6b 69 6e 67 20 61 20 70 6f 77 65 72 20 6f 66 20 calculated.by.taking.a.power.of.
489a0 32 20 28 74 68 65 20 62 61 73 65 0a 20 20 20 20 20 73 69 7a 65 29 20 61 6e 64 20 73 75 62 74 72 2.(the.base......size).and.subtr
489c0 61 63 74 69 6e 67 20 66 72 6f 6d 20 69 74 20 61 20 66 72 61 63 74 69 6f 6e 20 62 65 74 77 65 65 acting.from.it.a.fraction.betwee
489e0 6e 20 30 2f 31 36 20 61 6e 64 20 37 2f 31 36 20 6f 66 20 74 68 65 0a 20 20 20 20 20 62 61 73 65 n.0/16.and.7/16.of.the......base
48a00 20 73 69 7a 65 2e 0a 20 20 20 20 20 42 69 74 73 20 34 2d 30 20 63 6f 6e 74 61 69 6e 20 74 68 65 .size.......Bits.4-0.contain.the
48a20 20 62 61 73 65 20 32 20 6c 6f 67 61 72 69 74 68 6d 20 6f 66 20 74 68 65 20 62 61 73 65 20 73 69 .base.2.logarithm.of.the.base.si
48a40 7a 65 20 28 31 32 20 74 6f 20 32 39 29 2e 0a 20 20 20 20 20 42 69 74 73 20 37 2d 35 20 63 6f 6e ze.(12.to.29).......Bits.7-5.con
48a60 74 61 69 6e 20 74 68 65 20 6e 75 6d 65 72 61 74 6f 72 20 6f 66 20 74 68 65 20 66 72 61 63 74 69 tain.the.numerator.of.the.fracti
48a80 6f 6e 20 28 30 20 74 6f 20 37 29 20 74 6f 20 73 75 62 74 72 61 63 74 0a 20 20 20 20 20 66 72 6f on.(0.to.7).to.subtract......fro
48aa0 6d 20 74 68 65 20 62 61 73 65 20 73 69 7a 65 20 74 6f 20 6f 62 74 61 69 6e 20 74 68 65 20 64 69 m.the.base.size.to.obtain.the.di
48ac0 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 2e 0a 20 20 20 20 20 45 78 61 6d 70 6c 65 3a 20 30 78 44 ctionary.size.......Example:.0xD
48ae0 33 20 3d 20 32 5e 31 39 20 2d 20 36 20 2a 20 32 5e 31 35 20 3d 20 35 31 32 20 4b 69 42 20 2d 20 3.=.2^19.-.6.*.2^15.=.512.KiB.-.
48b00 36 20 2a 20 33 32 20 4b 69 42 20 3d 20 33 32 30 20 4b 69 42 0a 20 20 20 20 20 56 61 6c 69 64 20 6.*.32.KiB.=.320.KiB......Valid.
48b20 76 61 6c 75 65 73 20 66 6f 72 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 72 61 6e 67 65 values.for.dictionary.size.range
48b40 20 66 72 6f 6d 20 34 20 4b 69 42 20 74 6f 20 35 31 32 20 4d 69 42 2e 0a 0a 27 4c 5a 4d 41 20 73 .from.4.KiB.to.512.MiB...'LZMA.s
48b60 74 72 65 61 6d 27 0a 20 20 20 20 20 54 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 2c 20 74 65 72 tream'......The.LZMA.stream,.ter
48b80 6d 69 6e 61 74 65 64 20 62 79 20 61 6e 20 27 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 27 20 6d 61 minated.by.an.'End.Of.Stream'.ma
48ba0 72 6b 65 72 2e 20 55 73 65 73 20 64 65 66 61 75 6c 74 0a 20 20 20 20 20 76 61 6c 75 65 73 20 66 rker..Uses.default......values.f
48bc0 6f 72 20 65 6e 63 6f 64 65 72 20 70 72 6f 70 65 72 74 69 65 73 2e 20 2a 4e 6f 74 65 20 53 74 72 or.encoder.properties..*Note.Str
48be0 65 61 6d 20 66 6f 72 6d 61 74 3a 3a 2c 20 66 6f 72 20 61 20 63 6f 6d 70 6c 65 74 65 0a 20 20 20 eam.format::,.for.a.complete....
48c00 20 20 64 65 73 63 72 69 70 74 69 6f 6e 2e 0a 0a 27 43 52 43 33 32 20 28 34 20 62 79 74 65 73 29 ..description...'CRC32.(4.bytes)
48c20 27 0a 20 20 20 20 20 43 79 63 6c 69 63 20 52 65 64 75 6e 64 61 6e 63 79 20 43 68 65 63 6b 20 28 '......Cyclic.Redundancy.Check.(
48c40 43 52 43 29 20 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 75 6e 63 6f 6d 70 72 65 73 73 65 CRC).of.the.original.uncompresse
48c60 64 20 64 61 74 61 2e 0a 0a 27 44 61 74 61 20 73 69 7a 65 20 28 38 20 62 79 74 65 73 29 27 0a 20 d.data...'Data.size.(8.bytes)'..
48c80 20 20 20 20 53 69 7a 65 20 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 75 6e 63 6f 6d 70 72 ....Size.of.the.original.uncompr
48ca0 65 73 73 65 64 20 64 61 74 61 2e 0a 0a 27 4d 65 6d 62 65 72 20 73 69 7a 65 20 28 38 20 62 79 74 essed.data...'Member.size.(8.byt
48cc0 65 73 29 27 0a 20 20 20 20 20 54 6f 74 61 6c 20 73 69 7a 65 20 6f 66 20 74 68 65 20 6d 65 6d 62 es)'......Total.size.of.the.memb
48ce0 65 72 2c 20 69 6e 63 6c 75 64 69 6e 67 20 68 65 61 64 65 72 20 61 6e 64 20 74 72 61 69 6c 65 72 er,.including.header.and.trailer
48d00 2e 20 54 68 69 73 20 66 69 65 6c 64 20 61 63 74 73 0a 20 20 20 20 20 61 73 20 61 20 64 69 73 74 ..This.field.acts......as.a.dist
48d20 72 69 62 75 74 65 64 20 69 6e 64 65 78 2c 20 69 6d 70 72 6f 76 65 73 20 74 68 65 20 63 68 65 63 ributed.index,.improves.the.chec
48d40 6b 69 6e 67 20 6f 66 20 73 74 72 65 61 6d 20 69 6e 74 65 67 72 69 74 79 2c 20 61 6e 64 0a 20 20 king.of.stream.integrity,.and...
48d60 20 20 20 66 61 63 69 6c 69 74 61 74 65 73 20 74 68 65 20 73 61 66 65 20 72 65 63 6f 76 65 72 79 ...facilitates.the.safe.recovery
48d80 20 6f 66 20 75 6e 64 61 6d 61 67 65 64 20 6d 65 6d 62 65 72 73 20 66 72 6f 6d 20 6d 75 6c 74 69 .of.undamaged.members.from.multi
48da0 6d 65 6d 62 65 72 0a 20 20 20 20 20 66 69 6c 65 73 2e 20 4c 7a 69 70 20 6c 69 6d 69 74 73 20 74 member......files..Lzip.limits.t
48dc0 68 65 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 74 6f 20 32 20 50 69 42 20 74 6f 20 70 72 65 76 65 he.member.size.to.2.PiB.to.preve
48de0 6e 74 20 74 68 65 20 64 61 74 61 20 73 69 7a 65 0a 20 20 20 20 20 66 69 65 6c 64 20 66 72 6f 6d nt.the.data.size......field.from
48e00 20 6f 76 65 72 66 6c 6f 77 69 6e 67 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 6f .overflowing.....File:.lzip.info
48e20 2c 20 20 4e 6f 64 65 3a 20 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 2c 20 20 4e 65 78 74 3a 20 51 ,..Node:.Stream.format,..Next:.Q
48e40 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 65 2c 20 20 50 72 65 76 3a 20 46 69 6c 65 20 66 6f uality.assurance,..Prev:.File.fo
48e60 72 6d 61 74 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 36 20 46 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 rmat,..Up:.Top..6.Format.of.the.
48e80 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 6e 20 6c 7a 69 70 20 66 69 6c 65 73 0a 2a 2a 2a 2a 2a 2a LZMA.stream.in.lzip.files.******
48ea0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ********************************
48ec0 2a 2a 2a 0a 0a 54 68 65 20 4c 5a 4d 41 20 61 6c 67 6f 72 69 74 68 6d 20 68 61 73 20 74 68 72 65 ***..The.LZMA.algorithm.has.thre
48ee0 65 20 70 61 72 61 6d 65 74 65 72 73 2c 20 63 61 6c 6c 65 64 20 27 73 70 65 63 69 61 6c 20 4c 5a e.parameters,.called.'special.LZ
48f00 4d 41 20 70 72 6f 70 65 72 74 69 65 73 27 2c 0a 74 6f 20 61 64 6a 75 73 74 20 69 74 20 66 6f 72 MA.properties',.to.adjust.it.for
48f20 20 73 6f 6d 65 20 6b 69 6e 64 73 20 6f 66 20 62 69 6e 61 72 79 20 64 61 74 61 2e 20 54 68 65 73 .some.kinds.of.binary.data..Thes
48f40 65 20 70 61 72 61 6d 65 74 65 72 73 20 61 72 65 3a 0a 27 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 e.parameters.are:.'literal_conte
48f60 78 74 5f 62 69 74 73 27 20 28 77 69 74 68 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 6f xt_bits'.(with.a.default.value.o
48f80 66 20 33 29 2c 0a 27 6c 69 74 65 72 61 6c 5f 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 27 20 28 f.3),.'literal_pos_state_bits'.(
48fa0 77 69 74 68 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 30 29 2c 20 61 6e 64 20 with.a.default.value.of.0),.and.
48fc0 27 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 27 0a 28 77 69 74 68 20 61 20 64 65 66 61 75 6c 74 'pos_state_bits'.(with.a.default
48fe0 20 76 61 6c 75 65 20 6f 66 20 32 29 2e 20 41 73 20 61 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f .value.of.2)..As.a.general.purpo
49000 73 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 74 2c 20 6c 7a 69 70 0a 6f 6e 6c 79 20 se.compressed.format,.lzip.only.
49020 75 73 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 73 20 66 6f 72 20 74 68 65 73 uses.the.default.values.for.thes
49040 65 20 70 61 72 61 6d 65 74 65 72 73 2e 20 49 6e 20 70 61 72 74 69 63 75 6c 61 72 0a 27 6c 69 74 e.parameters..In.particular.'lit
49060 65 72 61 6c 5f 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 27 20 68 61 73 20 62 65 65 6e 20 6f 70 eral_pos_state_bits'.has.been.op
49080 74 69 6d 69 7a 65 64 20 61 77 61 79 20 61 6e 64 20 64 6f 65 73 20 6e 6f 74 20 65 76 65 6e 20 61 timized.away.and.does.not.even.a
490a0 70 70 65 61 72 0a 69 6e 20 74 68 65 20 63 6f 64 65 2e 0a 0a 20 20 20 54 68 65 20 66 69 72 73 74 ppear.in.the.code......The.first
490c0 20 62 79 74 65 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 73 20 73 65 74 20 .byte.of.the.LZMA.stream.is.set.
490e0 74 6f 20 7a 65 72 6f 20 74 6f 20 68 65 6c 70 20 74 6f 6f 6c 73 20 6c 69 6b 65 20 67 72 65 70 0a to.zero.to.help.tools.like.grep.
49100 72 65 63 6f 67 6e 69 7a 65 20 6c 7a 69 70 20 66 69 6c 65 73 20 61 73 20 62 69 6e 61 72 79 20 66 recognize.lzip.files.as.binary.f
49120 69 6c 65 73 2e 0a 0a 20 20 20 54 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 73 20 74 65 72 iles......The.LZMA.stream.is.ter
49140 6d 69 6e 61 74 65 64 20 62 79 20 61 6e 20 27 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 27 20 28 45 minated.by.an.'End.Of.Stream'.(E
49160 4f 53 29 20 6d 61 72 6b 65 72 20 28 74 68 65 0a 64 69 73 74 61 6e 63 65 2d 6c 65 6e 67 74 68 20 OS).marker.(the.distance-length.
49180 70 61 69 72 20 30 78 46 46 46 46 46 46 46 46 55 2c 20 32 29 2c 20 77 68 69 63 68 20 69 6e 20 63 pair.0xFFFFFFFFU,.2),.which.in.c
491a0 6f 6e 6a 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 27 6d 65 6d 62 65 72 0a 73 69 7a 65 onjunction.with.the.'member.size
491c0 27 20 66 69 65 6c 64 20 69 6e 20 74 68 65 20 6d 65 6d 62 65 72 20 74 72 61 69 6c 65 72 20 61 6c '.field.in.the.member.trailer.al
491e0 6c 6f 77 73 20 74 68 65 20 63 68 65 63 6b 69 6e 67 20 6f 66 20 73 74 72 65 61 6d 20 69 6e 74 65 lows.the.checking.of.stream.inte
49200 67 72 69 74 79 2e 0a 54 68 65 20 45 4f 53 20 6d 61 72 6b 65 72 20 69 73 20 74 68 65 20 6f 6e 6c grity..The.EOS.marker.is.the.onl
49220 79 20 4c 5a 4d 41 20 6d 61 72 6b 65 72 20 61 6c 6c 6f 77 65 64 20 69 6e 20 6c 7a 69 70 20 66 69 y.LZMA.marker.allowed.in.lzip.fi
49240 6c 65 73 2e 20 54 68 65 20 4c 5a 4d 41 0a 73 74 72 65 61 6d 20 69 6e 20 6c 7a 69 70 20 66 69 6c les..The.LZMA.stream.in.lzip.fil
49260 65 73 20 61 6c 77 61 79 73 20 68 61 73 20 74 68 65 73 65 20 74 77 6f 20 66 65 61 74 75 72 65 73 es.always.has.these.two.features
49280 20 28 64 65 66 61 75 6c 74 20 70 72 6f 70 65 72 74 69 65 73 20 61 6e 64 0a 45 4f 53 20 6d 61 72 .(default.properties.and.EOS.mar
492a0 6b 65 72 29 20 61 6e 64 20 69 73 20 72 65 66 65 72 72 65 64 20 74 6f 20 69 6e 20 74 68 69 73 20 ker).and.is.referred.to.in.this.
492c0 64 6f 63 75 6d 65 6e 74 20 61 73 20 4c 5a 4d 41 2d 33 30 32 65 6f 73 2e 20 54 68 69 73 0a 73 69 document.as.LZMA-302eos..This.si
492e0 6d 70 6c 69 66 69 65 64 20 61 6e 64 20 6d 61 72 6b 65 72 2d 74 65 72 6d 69 6e 61 74 65 64 20 66 mplified.and.marker-terminated.f
49300 6f 72 6d 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 66 6f 72 6d 61 74 20 68 61 orm.of.the.LZMA.stream.format.ha
49320 73 20 62 65 65 6e 0a 63 68 6f 73 65 6e 20 74 6f 20 61 63 68 69 65 76 65 20 63 6f 6d 70 6c 65 74 s.been.chosen.to.achieve.complet
49340 65 20 69 6e 74 65 72 6f 70 65 72 61 62 69 6c 69 74 79 20 61 6e 64 20 72 6f 62 75 73 74 20 73 61 e.interoperability.and.robust.sa
49360 66 65 74 79 2e 0a 0a 20 20 20 54 68 65 20 73 65 63 6f 6e 64 20 73 74 61 67 65 20 6f 66 20 4c 5a fety......The.second.stage.of.LZ
49380 4d 41 20 69 73 20 61 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 20 74 68 61 74 20 75 73 65 73 20 MA.is.a.range.encoder.that.uses.
493a0 61 20 64 69 66 66 65 72 65 6e 74 0a 70 72 6f 62 61 62 69 6c 69 74 79 20 6d 6f 64 65 6c 20 66 6f a.different.probability.model.fo
493c0 72 20 65 61 63 68 20 74 79 70 65 20 6f 66 20 73 79 6d 62 6f 6c 3a 20 64 69 73 74 61 6e 63 65 73 r.each.type.of.symbol:.distances
493e0 2c 20 6c 65 6e 67 74 68 73 2c 20 6c 69 74 65 72 61 6c 0a 62 79 74 65 73 2c 20 65 74 63 2e 20 52 ,.lengths,.literal.bytes,.etc..R
49400 61 6e 67 65 20 65 6e 63 6f 64 69 6e 67 20 63 6f 6e 63 65 70 74 75 61 6c 6c 79 20 65 6e 63 6f 64 ange.encoding.conceptually.encod
49420 65 73 20 61 6c 6c 20 74 68 65 20 73 79 6d 62 6f 6c 73 20 6f 66 20 74 68 65 0a 6d 65 73 73 61 67 es.all.the.symbols.of.the.messag
49440 65 20 69 6e 74 6f 20 6f 6e 65 20 6e 75 6d 62 65 72 2e 20 55 6e 6c 69 6b 65 20 48 75 66 66 6d 61 e.into.one.number..Unlike.Huffma
49460 6e 20 63 6f 64 69 6e 67 2c 20 77 68 69 63 68 20 61 73 73 69 67 6e 73 20 74 6f 20 65 61 63 68 0a n.coding,.which.assigns.to.each.
49480 73 79 6d 62 6f 6c 20 61 20 62 69 74 2d 70 61 74 74 65 72 6e 20 61 6e 64 20 63 6f 6e 63 61 74 65 symbol.a.bit-pattern.and.concate
494a0 6e 61 74 65 73 20 61 6c 6c 20 74 68 65 20 62 69 74 2d 70 61 74 74 65 72 6e 73 20 74 6f 67 65 74 nates.all.the.bit-patterns.toget
494c0 68 65 72 2c 20 72 61 6e 67 65 0a 65 6e 63 6f 64 69 6e 67 20 63 61 6e 20 63 6f 6d 70 72 65 73 73 her,.range.encoding.can.compress
494e0 20 6f 6e 65 20 73 79 6d 62 6f 6c 20 74 6f 20 6c 65 73 73 20 74 68 61 6e 20 6f 6e 65 20 62 69 74 .one.symbol.to.less.than.one.bit
49500 2e 20 54 68 65 72 65 66 6f 72 65 20 74 68 65 0a 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 ..Therefore.the.compressed.data.
49520 70 72 6f 64 75 63 65 64 20 62 79 20 61 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 20 63 61 6e 27 produced.by.a.range.encoder.can'
49540 74 20 62 65 20 73 70 6c 69 74 20 69 6e 20 70 69 65 63 65 73 20 74 68 61 74 0a 63 6f 75 6c 64 20 t.be.split.in.pieces.that.could.
49560 62 65 20 64 65 73 63 72 69 62 65 64 20 69 6e 64 69 76 69 64 75 61 6c 6c 79 2e 0a 0a 20 20 20 49 be.described.individually......I
49580 74 20 73 65 65 6d 73 20 74 68 61 74 20 74 68 65 20 6f 6e 6c 79 20 77 61 79 20 6f 66 20 64 65 73 t.seems.that.the.only.way.of.des
495a0 63 72 69 62 69 6e 67 20 74 68 65 20 4c 5a 4d 41 2d 33 30 32 65 6f 73 20 73 74 72 65 61 6d 20 69 cribing.the.LZMA-302eos.stream.i
495c0 73 20 74 6f 0a 64 65 73 63 72 69 62 65 20 74 68 65 20 61 6c 67 6f 72 69 74 68 6d 20 74 68 61 74 s.to.describe.the.algorithm.that
495e0 20 64 65 63 6f 64 65 73 20 69 74 2e 20 41 6e 64 20 67 69 76 65 6e 20 74 68 65 20 6d 61 6e 79 20 .decodes.it..And.given.the.many.
49600 64 65 74 61 69 6c 73 20 61 62 6f 75 74 0a 74 68 65 20 72 61 6e 67 65 20 64 65 63 6f 64 65 72 20 details.about.the.range.decoder.
49620 74 68 61 74 20 6e 65 65 64 20 74 6f 20 62 65 20 64 65 73 63 72 69 62 65 64 20 61 63 63 75 72 61 that.need.to.be.described.accura
49640 74 65 6c 79 2c 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 66 0a 61 20 72 65 61 6c 20 tely,.the.source.code.of.a.real.
49660 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 73 65 65 6d 73 20 74 68 65 20 6f 6e 6c 79 20 61 70 70 72 decompressor.seems.the.only.appr
49680 6f 70 72 69 61 74 65 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 75 73 65 2e 0a 0a 20 20 20 57 68 opriate.reference.to.use......Wh
496a0 61 74 20 66 6f 6c 6c 6f 77 73 20 69 73 20 61 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 74 at.follows.is.a.description.of.t
496c0 68 65 20 64 65 63 6f 64 69 6e 67 20 61 6c 67 6f 72 69 74 68 6d 20 66 6f 72 20 4c 5a 4d 41 2d 33 he.decoding.algorithm.for.LZMA-3
496e0 30 32 65 6f 73 0a 73 74 72 65 61 6d 73 20 75 73 69 6e 67 20 61 73 20 72 65 66 65 72 65 6e 63 65 02eos.streams.using.as.reference
49700 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 66 20 6c 7a 64 2c 20 61 6e 20 65 64 75 63 .the.source.code.of.lzd,.an.educ
49720 61 74 69 6f 6e 61 6c 0a 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 66 6f 72 20 6c 7a 69 70 20 66 69 ational.decompressor.for.lzip.fi
49740 6c 65 73 2c 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 70 70 65 6e 64 69 78 20 41 2e 20 2a 4e 6f les,.included.in.appendix.A..*No
49760 74 65 20 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 0a 63 6f 64 65 3a 3a 2e 20 4c 7a 64 20 te.Reference.source.code::..Lzd.
49780 69 73 20 77 72 69 74 74 65 6e 20 69 6e 20 43 2b 2b 31 31 20 61 6e 64 20 63 61 6e 20 62 65 20 64 is.written.in.C++11.and.can.be.d
497a0 6f 77 6e 6c 6f 61 64 65 64 20 66 72 6f 6d 20 74 68 65 20 6c 7a 69 70 20 64 6f 77 6e 6c 6f 61 64 ownloaded.from.the.lzip.download
497c0 0a 64 69 72 65 63 74 6f 72 79 2e 0a 0a 36 2e 31 20 57 68 61 74 20 69 73 20 63 6f 64 65 64 0a 3d .directory...6.1.What.is.coded.=
497e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 54 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 ================..The.LZMA.strea
49800 6d 20 69 6e 63 6c 75 64 65 73 20 6c 69 74 65 72 61 6c 73 2c 20 6d 61 74 63 68 65 73 2c 20 61 6e m.includes.literals,.matches,.an
49820 64 20 72 65 70 65 61 74 65 64 20 6d 61 74 63 68 65 73 20 28 6d 61 74 63 68 65 73 0a 72 65 75 73 d.repeated.matches.(matches.reus
49840 69 6e 67 20 61 20 72 65 63 65 6e 74 6c 79 20 75 73 65 64 20 64 69 73 74 61 6e 63 65 29 2e 20 54 ing.a.recently.used.distance)..T
49860 68 65 72 65 20 61 72 65 20 37 20 64 69 66 66 65 72 65 6e 74 20 63 6f 64 69 6e 67 20 73 65 71 75 here.are.7.different.coding.sequ
49880 65 6e 63 65 73 3a 0a 0a 42 69 74 20 73 65 71 75 65 6e 63 65 20 20 20 20 20 20 20 20 20 20 20 20 ences:..Bit.sequence............
498a0 20 20 20 20 4e 61 6d 65 20 20 20 20 20 20 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 2d 2d 2d 2d ....Name........Description.----
498c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
498e0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
49900 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 30 20 2b 20 62 79 74 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ---------.0.+.byte..............
49920 20 20 20 20 20 20 6c 69 74 65 72 61 6c 20 20 20 20 20 6c 69 74 65 72 61 6c 20 62 79 74 65 0a 31 ......literal.....literal.byte.1
49940 20 2b 20 30 20 2b 20 6c 65 6e 20 2b 20 64 69 73 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 63 68 .+.0.+.len.+.dis...........match
49960 20 20 20 20 20 20 20 4c 5a 20 64 69 73 74 61 6e 63 65 2d 6c 65 6e 67 74 68 20 70 61 69 72 0a 31 .......LZ.distance-length.pair.1
49980 20 2b 20 31 20 2b 20 30 20 2b 20 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 68 6f 72 74 .+.1.+.0.+.0...............short
499a0 72 65 70 20 20 20 20 31 20 62 79 74 65 20 6d 61 74 63 68 20 61 74 20 6c 61 74 65 73 74 20 75 73 rep....1.byte.match.at.latest.us
499c0 65 64 20 64 69 73 74 61 6e 63 65 0a 31 20 2b 20 31 20 2b 20 30 20 2b 20 31 20 2b 20 6c 65 6e 20 ed.distance.1.+.1.+.0.+.1.+.len.
499e0 20 20 20 20 20 20 20 20 72 65 70 30 20 20 20 20 20 20 20 20 6c 65 6e 20 62 79 74 65 73 20 6d 61 ........rep0........len.bytes.ma
49a00 74 63 68 20 61 74 20 6c 61 74 65 73 74 20 75 73 65 64 20 64 69 73 74 61 6e 63 65 0a 31 20 2b 20 tch.at.latest.used.distance.1.+.
49a20 31 20 2b 20 31 20 2b 20 30 20 2b 20 6c 65 6e 20 20 20 20 20 20 20 20 20 72 65 70 31 20 20 20 20 1.+.1.+.0.+.len.........rep1....
49a40 20 20 20 20 6c 65 6e 20 62 79 74 65 73 20 6d 61 74 63 68 20 61 74 20 73 65 63 6f 6e 64 20 6c 61 ....len.bytes.match.at.second.la
49a60 74 65 73 74 20 75 73 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 test.used.......................
49a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 0a 31 20 2b 20 31 ..................distance.1.+.1
49aa0 20 2b 20 31 20 2b 20 31 20 2b 20 30 20 2b 20 6c 65 6e 20 20 20 20 20 72 65 70 32 20 20 20 20 20 .+.1.+.1.+.0.+.len.....rep2.....
49ac0 20 20 20 6c 65 6e 20 62 79 74 65 73 20 6d 61 74 63 68 20 61 74 20 74 68 69 72 64 20 6c 61 74 65 ...len.bytes.match.at.third.late
49ae0 73 74 20 75 73 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 st.used.........................
49b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 0a 31 20 2b 20 31 20 2b ................distance.1.+.1.+
49b20 20 31 20 2b 20 31 20 2b 20 31 20 2b 20 6c 65 6e 20 20 20 20 20 72 65 70 33 20 20 20 20 20 20 20 .1.+.1.+.1.+.len.....rep3.......
49b40 20 6c 65 6e 20 62 79 74 65 73 20 6d 61 74 63 68 20 61 74 20 66 6f 75 72 74 68 20 6c 61 74 65 73 .len.bytes.match.at.fourth.lates
49b60 74 20 75 73 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.used..........................
49b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 0a 0a 0a 20 20 20 49 6e 20 ...............distance......In.
49ba0 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 73 2c 20 6d 75 6c 74 69 62 69 74 20 73 the.following.tables,.multibit.s
49bc0 65 71 75 65 6e 63 65 73 20 61 72 65 20 63 6f 64 65 64 20 69 6e 20 6e 6f 72 6d 61 6c 20 6f 72 64 equences.are.coded.in.normal.ord
49be0 65 72 2c 0a 66 72 6f 6d 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 20 28 4d er,.from.most.significant.bit.(M
49c00 53 42 29 20 74 6f 20 6c 65 61 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 20 28 4c 53 SB).to.least.significant.bit.(LS
49c20 42 29 2c 20 65 78 63 65 70 74 0a 77 68 65 72 65 20 6e 6f 74 65 64 20 6f 74 68 65 72 77 69 73 65 B),.except.where.noted.otherwise
49c40 2e 0a 0a 20 20 20 4c 65 6e 67 74 68 73 20 28 74 68 65 20 27 6c 65 6e 27 20 69 6e 20 74 68 65 20 ......Lengths.(the.'len'.in.the.
49c60 74 61 62 6c 65 20 61 62 6f 76 65 29 20 61 72 65 20 63 6f 64 65 64 20 61 73 20 66 6f 6c 6c 6f 77 table.above).are.coded.as.follow
49c80 73 3a 0a 0a 42 69 74 20 73 65 71 75 65 6e 63 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s:..Bit.sequence................
49ca0 20 20 20 20 20 20 20 20 20 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d ...........Description.---------
49cc0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
49ce0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
49d00 2d 2d 2d 0a 30 20 2b 20 33 20 62 69 74 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ---.0.+.3.bits..................
49d20 20 20 20 20 20 20 20 20 20 20 20 6c 65 6e 67 74 68 73 20 66 72 6f 6d 20 32 20 74 6f 20 39 0a 31 ...........lengths.from.2.to.9.1
49d40 20 2b 20 30 20 2b 20 33 20 62 69 74 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .+.0.+.3.bits...................
49d60 20 20 20 20 20 20 6c 65 6e 67 74 68 73 20 66 72 6f 6d 20 31 30 20 74 6f 20 31 37 0a 31 20 2b 20 ......lengths.from.10.to.17.1.+.
49d80 31 20 2b 20 38 20 62 69 74 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 1.+.8.bits......................
49da0 20 20 20 6c 65 6e 67 74 68 73 20 66 72 6f 6d 20 31 38 20 74 6f 20 32 37 33 0a 0a 0a 20 20 20 54 ...lengths.from.18.to.273......T
49dc0 68 65 20 63 6f 64 69 6e 67 20 6f 66 20 64 69 73 74 61 6e 63 65 73 20 69 73 20 61 20 6c 69 74 74 he.coding.of.distances.is.a.litt
49de0 6c 65 20 6d 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 2c 20 73 6f 20 49 27 6c 6c 20 62 65 67 le.more.complicated,.so.I'll.beg
49e00 69 6e 20 62 79 0a 65 78 70 6c 61 69 6e 69 6e 67 20 61 20 73 69 6d 70 6c 65 72 20 76 65 72 73 69 in.by.explaining.a.simpler.versi
49e20 6f 6e 20 6f 66 20 74 68 65 20 65 6e 63 6f 64 69 6e 67 2e 0a 0a 20 20 20 49 6d 61 67 69 6e 65 20 on.of.the.encoding......Imagine.
49e40 79 6f 75 20 6e 65 65 64 20 74 6f 20 65 6e 63 6f 64 65 20 61 20 6e 75 6d 62 65 72 20 66 72 6f 6d you.need.to.encode.a.number.from
49e60 20 30 20 74 6f 20 32 5e 33 32 20 2d 20 31 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 20 74 6f 0a .0.to.2^32.-.1,.and.you.want.to.
49e80 64 6f 20 69 74 20 69 6e 20 61 20 77 61 79 20 74 68 61 74 20 70 72 6f 64 75 63 65 73 20 73 68 6f do.it.in.a.way.that.produces.sho
49ea0 72 74 65 72 20 63 6f 64 65 73 20 66 6f 72 20 74 68 65 20 73 6d 61 6c 6c 65 72 20 6e 75 6d 62 65 rter.codes.for.the.smaller.numbe
49ec0 72 73 2e 20 59 6f 75 20 6d 61 79 0a 66 69 72 73 74 20 65 6e 63 6f 64 65 20 74 68 65 20 70 6f 73 rs..You.may.first.encode.the.pos
49ee0 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 ition.of.the.most.significant.bi
49f00 74 20 74 68 61 74 20 69 73 20 73 65 74 20 74 6f 20 31 2c 0a 77 68 69 63 68 20 79 6f 75 20 6d 61 t.that.is.set.to.1,.which.you.ma
49f20 79 20 66 69 6e 64 20 62 79 20 6d 61 6b 69 6e 67 20 61 20 62 69 74 20 73 63 61 6e 20 66 72 6f 6d y.find.by.making.a.bit.scan.from
49f40 20 74 68 65 20 6c 65 66 74 20 28 66 72 6f 6d 20 74 68 65 20 4d 53 42 29 2e 20 41 0a 70 6f 73 69 .the.left.(from.the.MSB)..A.posi
49f60 74 69 6f 6e 20 6f 66 20 30 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 6e 75 6d 62 65 72 20 tion.of.0.means.that.the.number.
49f80 69 73 20 30 20 28 6e 6f 20 62 69 74 20 69 73 20 73 65 74 29 2c 20 31 20 6d 65 61 6e 73 20 74 68 is.0.(no.bit.is.set),.1.means.th
49fa0 65 20 4c 53 42 20 69 73 0a 74 68 65 20 66 69 72 73 74 20 62 69 74 20 73 65 74 20 28 74 68 65 20 e.LSB.is.the.first.bit.set.(the.
49fc0 6e 75 6d 62 65 72 20 69 73 20 31 29 2c 20 61 6e 64 20 33 32 20 6d 65 61 6e 73 20 74 68 65 20 4d number.is.1),.and.32.means.the.M
49fe0 53 42 20 69 73 20 73 65 74 20 28 69 2e 65 2e 2c 20 74 68 65 0a 6e 75 6d 62 65 72 20 69 73 20 3e SB.is.set.(i.e.,.the.number.is.>
4a000 3d 20 30 78 38 30 30 30 30 30 30 30 29 2e 20 54 68 65 6e 2c 20 69 66 20 74 68 65 20 70 6f 73 69 =.0x80000000)..Then,.if.the.posi
4a020 74 69 6f 6e 20 69 73 20 3e 3d 20 32 2c 20 79 6f 75 20 65 6e 63 6f 64 65 20 74 68 65 0a 72 65 6d tion.is.>=.2,.you.encode.the.rem
4a040 61 69 6e 69 6e 67 20 70 6f 73 69 74 69 6f 6e 20 2d 20 31 20 62 69 74 73 2e 20 4c 65 74 27 73 20 aining.position.-.1.bits..Let's.
4a060 63 61 6c 6c 20 74 68 65 73 65 20 62 69 74 73 20 22 64 69 72 65 63 74 20 62 69 74 73 22 20 62 65 call.these.bits."direct.bits".be
4a080 63 61 75 73 65 0a 74 68 65 79 20 61 72 65 20 63 6f 64 65 64 20 64 69 72 65 63 74 6c 79 20 62 79 cause.they.are.coded.directly.by
4a0a0 20 76 61 6c 75 65 20 69 6e 73 74 65 61 64 20 6f 66 20 69 6e 64 69 72 65 63 74 6c 79 20 62 79 20 .value.instead.of.indirectly.by.
4a0c0 70 6f 73 69 74 69 6f 6e 2e 0a 0a 20 20 20 54 68 65 20 69 6e 63 6f 6e 76 65 6e 69 65 6e 74 20 6f position......The.inconvenient.o
4a0e0 66 20 74 68 69 73 20 73 69 6d 70 6c 65 20 6d 65 74 68 6f 64 20 69 73 20 74 68 61 74 20 69 74 20 f.this.simple.method.is.that.it.
4a100 6e 65 65 64 73 20 36 20 62 69 74 73 20 74 6f 20 65 6e 63 6f 64 65 0a 74 68 65 20 70 6f 73 69 74 needs.6.bits.to.encode.the.posit
4a120 69 6f 6e 2c 20 62 75 74 20 69 74 20 6a 75 73 74 20 75 73 65 73 20 33 33 20 6f 66 20 74 68 65 20 ion,.but.it.just.uses.33.of.the.
4a140 36 34 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 2c 20 77 61 73 74 69 6e 67 20 61 6c 6d 6f 64.possible.values,.wasting.almo
4a160 73 74 0a 68 61 6c 66 20 6f 66 20 74 68 65 20 63 6f 64 65 73 2e 0a 0a 20 20 20 54 68 65 20 69 6e st.half.of.the.codes......The.in
4a180 74 65 6c 6c 69 67 65 6e 74 20 74 72 69 63 6b 20 6f 66 20 4c 5a 4d 41 20 69 73 20 74 68 61 74 20 telligent.trick.of.LZMA.is.that.
4a1a0 69 74 20 65 6e 63 6f 64 65 73 20 69 6e 20 77 68 61 74 20 69 74 20 63 61 6c 6c 73 20 61 0a 22 73 it.encodes.in.what.it.calls.a."s
4a1c0 6c 6f 74 22 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 6d 6f 73 74 20 73 69 lot".the.position.of.the.most.si
4a1e0 67 6e 69 66 69 63 61 6e 74 20 62 69 74 20 73 65 74 2c 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 gnificant.bit.set,.along.with.th
4a200 65 20 76 61 6c 75 65 0a 6f 66 20 74 68 65 20 6e 65 78 74 20 62 69 74 2c 20 75 73 69 6e 67 20 74 e.value.of.the.next.bit,.using.t
4a220 68 65 20 73 61 6d 65 20 36 20 62 69 74 73 20 74 68 61 74 20 77 6f 75 6c 64 20 74 61 6b 65 20 74 he.same.6.bits.that.would.take.t
4a240 6f 20 65 6e 63 6f 64 65 20 74 68 65 0a 70 6f 73 69 74 69 6f 6e 20 61 6c 6f 6e 65 2e 20 54 68 69 o.encode.the.position.alone..Thi
4a260 73 20 73 65 65 6d 73 20 74 6f 20 6e 65 65 64 20 36 36 20 73 6c 6f 74 73 20 28 74 77 69 63 65 20 s.seems.to.need.66.slots.(twice.
4a280 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 0a 70 6f 73 69 74 69 6f 6e 73 29 2c 20 62 75 74 20 66 6f the.number.of.positions),.but.fo
4a2a0 72 20 70 6f 73 69 74 69 6f 6e 73 20 30 20 61 6e 64 20 31 20 74 68 65 72 65 20 69 73 20 6e 6f 20 r.positions.0.and.1.there.is.no.
4a2c0 6e 65 78 74 20 62 69 74 2c 20 73 6f 20 74 68 65 20 6e 75 6d 62 65 72 0a 6f 66 20 73 6c 6f 74 73 next.bit,.so.the.number.of.slots
4a2e0 20 6e 65 65 64 65 64 20 69 73 20 36 34 20 28 30 20 74 6f 20 36 33 29 2e 0a 0a 20 20 20 54 68 65 .needed.is.64.(0.to.63)......The
4a300 20 36 20 62 69 74 73 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 69 73 20 22 73 6c 6f 74 20 .6.bits.representing.this."slot.
4a320 6e 75 6d 62 65 72 22 20 61 72 65 20 74 68 65 6e 20 63 6f 6e 74 65 78 74 2d 63 6f 64 65 64 2e 20 number".are.then.context-coded..
4a340 49 66 0a 74 68 65 20 64 69 73 74 61 6e 63 65 20 69 73 20 3e 3d 20 34 2c 20 74 68 65 20 72 65 6d If.the.distance.is.>=.4,.the.rem
4a360 61 69 6e 69 6e 67 20 62 69 74 73 20 61 72 65 20 65 6e 63 6f 64 65 64 20 61 73 20 66 6f 6c 6c 6f aining.bits.are.encoded.as.follo
4a380 77 73 2e 0a 27 64 69 72 65 63 74 5f 62 69 74 73 27 20 69 73 20 74 68 65 20 61 6d 6f 75 6e 74 20 ws..'direct_bits'.is.the.amount.
4a3a0 6f 66 20 72 65 6d 61 69 6e 69 6e 67 20 62 69 74 73 20 28 66 72 6f 6d 20 31 20 74 6f 20 33 30 29 of.remaining.bits.(from.1.to.30)
4a3c0 20 6e 65 65 64 65 64 20 74 6f 20 66 6f 72 6d 0a 61 20 63 6f 6d 70 6c 65 74 65 20 64 69 73 74 61 .needed.to.form.a.complete.dista
4a3e0 6e 63 65 2c 20 61 6e 64 20 69 73 20 63 61 6c 63 75 6c 61 74 65 64 20 61 73 20 28 73 6c 6f 74 20 nce,.and.is.calculated.as.(slot.
4a400 3e 3e 20 31 29 20 2d 20 31 2e 20 49 66 20 61 20 64 69 73 74 61 6e 63 65 0a 6e 65 65 64 73 20 36 >>.1).-.1..If.a.distance.needs.6
4a420 20 6f 72 20 6d 6f 72 65 20 64 69 72 65 63 74 5f 62 69 74 73 2c 20 74 68 65 20 6c 61 73 74 20 34 .or.more.direct_bits,.the.last.4
4a440 20 62 69 74 73 20 61 72 65 20 65 6e 63 6f 64 65 64 20 73 65 70 61 72 61 74 65 6c 79 2e 20 54 68 .bits.are.encoded.separately..Th
4a460 65 0a 6c 61 73 74 20 70 69 65 63 65 20 28 61 6c 6c 20 74 68 65 20 64 69 72 65 63 74 5f 62 69 74 e.last.piece.(all.the.direct_bit
4a480 73 20 66 6f 72 20 64 69 73 74 61 6e 63 65 73 20 34 20 74 6f 20 31 32 37 20 28 73 6c 6f 74 73 20 s.for.distances.4.to.127.(slots.
4a4a0 34 20 74 6f 20 31 33 29 2c 20 6f 72 0a 74 68 65 20 6c 61 73 74 20 34 20 62 69 74 73 20 66 6f 72 4.to.13),.or.the.last.4.bits.for
4a4c0 20 64 69 73 74 61 6e 63 65 73 20 3e 3d 20 31 32 38 20 28 73 6c 6f 74 20 3e 3d 20 31 34 29 29 20 .distances.>=.128.(slot.>=.14)).
4a4e0 69 73 20 63 6f 6e 74 65 78 74 2d 63 6f 64 65 64 20 69 6e 0a 72 65 76 65 72 73 65 20 6f 72 64 65 is.context-coded.in.reverse.orde
4a500 72 20 28 66 72 6f 6d 20 4c 53 42 20 74 6f 20 4d 53 42 29 20 62 65 63 61 75 73 65 20 62 65 74 77 r.(from.LSB.to.MSB).because.betw
4a520 65 65 6e 20 64 69 73 74 61 6e 63 65 73 20 74 68 65 20 4c 53 42 20 74 65 6e 64 73 20 74 6f 0a 63 een.distances.the.LSB.tends.to.c
4a540 6f 72 72 65 6c 61 74 65 20 62 65 74 74 65 72 20 74 68 61 6e 20 6d 6f 72 65 20 73 69 67 6e 69 66 orrelate.better.than.more.signif
4a560 69 63 61 6e 74 20 62 69 74 73 2e 20 46 6f 72 20 64 69 73 74 61 6e 63 65 73 20 3e 3d 20 31 32 38 icant.bits..For.distances.>=.128
4a580 2c 20 74 68 65 0a 27 64 69 72 65 63 74 5f 62 69 74 73 20 2d 20 34 27 20 70 61 72 74 20 69 73 20 ,.the.'direct_bits.-.4'.part.is.
4a5a0 65 6e 63 6f 64 65 64 20 77 69 74 68 20 66 69 78 65 64 20 30 2e 35 20 70 72 6f 62 61 62 69 6c 69 encoded.with.fixed.0.5.probabili
4a5c0 74 79 2e 0a 0a 42 69 74 20 73 65 71 75 65 6e 63 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ty...Bit.sequence...............
4a5e0 20 20 20 20 20 20 20 20 20 20 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 2d 2d 2d 2d 2d 2d 2d 2d ............Description.--------
4a600 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
4a620 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
4a640 2d 2d 2d 2d 0a 73 6c 6f 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ----.slot.......................
4a660 20 20 20 20 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 73 20 66 72 6f 6d 20 30 20 74 6f 20 ............distances.from.0.to.
4a680 33 0a 73 6c 6f 74 20 2b 20 64 69 72 65 63 74 5f 62 69 74 73 20 20 20 20 20 20 20 20 20 20 20 20 3.slot.+.direct_bits............
4a6a0 20 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 73 20 66 72 6f 6d 20 34 20 74 6f 20 31 32 37 .........distances.from.4.to.127
4a6c0 0a 73 6c 6f 74 20 2b 20 28 64 69 72 65 63 74 5f 62 69 74 73 20 2d 20 34 29 20 2b 20 34 20 62 69 .slot.+.(direct_bits.-.4).+.4.bi
4a6e0 74 73 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 73 20 66 72 6f 6d 20 31 32 38 20 74 6f 20 32 5e ts......distances.from.128.to.2^
4a700 33 32 20 2d 20 31 0a 0a 0a 36 2e 32 20 54 68 65 20 63 6f 64 69 6e 67 20 63 6f 6e 74 65 78 74 73 32.-.1...6.2.The.coding.contexts
4a720 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 54 68 65 73 65 20 .=======================..These.
4a740 63 6f 6e 74 65 78 74 73 20 28 27 42 69 74 5f 6d 6f 64 65 6c 27 20 69 6e 20 74 68 65 20 73 6f 75 contexts.('Bit_model'.in.the.sou
4a760 72 63 65 29 2c 20 61 72 65 20 69 6e 74 65 67 65 72 73 20 6f 72 20 61 72 72 61 79 73 20 6f 66 0a rce),.are.integers.or.arrays.of.
4a780 69 6e 74 65 67 65 72 73 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 70 72 6f 62 61 62 integers.representing.the.probab
4a7a0 69 6c 69 74 79 20 6f 66 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 62 69 74 20 62 ility.of.the.corresponding.bit.b
4a7c0 65 69 6e 67 20 30 2e 0a 0a 20 20 20 54 68 65 20 69 6e 64 69 63 65 73 20 75 73 65 64 20 69 6e 20 eing.0......The.indices.used.in.
4a7e0 74 68 65 73 65 20 61 72 72 61 79 73 20 61 72 65 3a 0a 0a 27 73 74 61 74 65 27 0a 20 20 20 20 20 these.arrays.are:..'state'......
4a800 41 20 73 74 61 74 65 20 6d 61 63 68 69 6e 65 20 28 27 53 74 61 74 65 27 20 69 6e 20 74 68 65 20 A.state.machine.('State'.in.the.
4a820 73 6f 75 72 63 65 29 20 77 69 74 68 20 31 32 20 73 74 61 74 65 73 20 28 30 20 74 6f 20 31 31 29 source).with.12.states.(0.to.11)
4a840 20 63 6f 64 69 6e 67 0a 20 20 20 20 20 74 68 65 20 6c 61 74 65 73 74 20 32 20 74 6f 20 34 20 74 .coding......the.latest.2.to.4.t
4a860 79 70 65 73 20 6f 66 20 73 65 71 75 65 6e 63 65 73 20 70 72 6f 63 65 73 73 65 64 2e 20 54 68 65 ypes.of.sequences.processed..The
4a880 20 69 6e 69 74 69 61 6c 20 73 74 61 74 65 20 69 73 20 30 2e 0a 0a 27 70 6f 73 5f 73 74 61 74 65 .initial.state.is.0...'pos_state
4a8a0 27 0a 20 20 20 20 20 56 61 6c 75 65 20 6f 66 20 74 68 65 20 32 20 6c 65 61 73 74 20 73 69 67 6e '......Value.of.the.2.least.sign
4a8c0 69 66 69 63 61 6e 74 20 62 69 74 73 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 70 6f 73 69 ificant.bits.of.the.current.posi
4a8e0 74 69 6f 6e 20 69 6e 20 74 68 65 0a 20 20 20 20 20 64 65 63 6f 64 65 64 20 64 61 74 61 2e 0a 0a tion.in.the......decoded.data...
4a900 27 6c 69 74 65 72 61 6c 5f 73 74 61 74 65 27 0a 20 20 20 20 20 56 61 6c 75 65 20 6f 66 20 74 68 'literal_state'......Value.of.th
4a920 65 20 33 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 73 20 6f 66 20 74 68 65 e.3.most.significant.bits.of.the
4a940 20 6c 61 74 65 73 74 20 62 79 74 65 20 64 65 63 6f 64 65 64 2e 0a 0a 27 6c 65 6e 5f 73 74 61 74 .latest.byte.decoded...'len_stat
4a960 65 27 0a 20 20 20 20 20 43 6f 64 65 64 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 63 75 72 72 65 e'......Coded.value.of.the.curre
4a980 6e 74 20 6d 61 74 63 68 20 6c 65 6e 67 74 68 20 28 6c 65 6e 67 74 68 20 2d 20 32 29 2c 20 77 69 nt.match.length.(length.-.2),.wi
4a9a0 74 68 20 61 20 6d 61 78 69 6d 75 6d 0a 20 20 20 20 20 6f 66 20 33 2e 20 54 68 65 20 72 65 73 75 th.a.maximum......of.3..The.resu
4a9c0 6c 74 69 6e 67 20 76 61 6c 75 65 20 69 73 20 69 6e 20 74 68 65 20 72 61 6e 67 65 20 30 20 74 6f lting.value.is.in.the.range.0.to
4a9e0 20 33 2e 0a 0a 0a 20 20 20 54 68 65 20 74 79 70 65 73 20 6f 66 20 70 72 65 76 69 6f 75 73 20 73 .3.......The.types.of.previous.s
4aa00 65 71 75 65 6e 63 65 73 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 65 61 63 68 20 73 equences.corresponding.to.each.s
4aa20 74 61 74 65 20 61 72 65 20 73 68 6f 77 6e 20 69 6e 0a 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 tate.are.shown.in.the.following.
4aa40 74 61 62 6c 65 2e 20 27 21 6c 69 74 65 72 61 6c 27 20 69 73 20 61 6e 79 20 73 65 71 75 65 6e 63 table..'!literal'.is.any.sequenc
4aa60 65 20 65 78 63 65 70 74 20 61 20 6c 69 74 65 72 61 6c 20 62 79 74 65 2e 0a 27 72 65 70 27 20 69 e.except.a.literal.byte..'rep'.i
4aa80 73 20 61 6e 79 20 6f 6e 65 20 6f 66 20 27 72 65 70 30 27 2c 20 27 72 65 70 31 27 2c 20 27 72 65 s.any.one.of.'rep0',.'rep1',.'re
4aaa0 70 32 27 2c 20 6f 72 20 27 72 65 70 33 27 2e 20 54 68 65 20 6c 61 73 74 20 74 79 70 65 20 69 6e p2',.or.'rep3'..The.last.type.in
4aac0 0a 65 61 63 68 20 6c 69 6e 65 20 69 73 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 2e 0a 0a .each.line.is.the.most.recent...
4aae0 53 74 61 74 65 20 20 20 54 79 70 65 73 20 6f 66 20 70 72 65 76 69 6f 75 73 20 73 65 71 75 65 6e State...Types.of.previous.sequen
4ab00 63 65 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ces.----------------------------
4ab20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 30 20 20 20 20 --------------------------.0....
4ab40 20 20 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 65 72 61 6c 0a 31 20 20 ...literal,.literal,.literal.1..
4ab60 20 20 20 20 20 6d 61 74 63 68 2c 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 65 72 61 6c 0a 32 20 20 .....match,.literal,.literal.2..
4ab80 20 20 20 20 20 72 65 70 20 6f 72 20 28 21 6c 69 74 65 72 61 6c 2c 20 73 68 6f 72 74 72 65 70 29 .....rep.or.(!literal,.shortrep)
4aba0 2c 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 65 72 61 6c 0a 33 20 20 20 20 20 20 20 6c 69 74 65 72 ,.literal,.literal.3.......liter
4abc0 61 6c 2c 20 73 68 6f 72 74 72 65 70 2c 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 65 72 61 6c 0a 34 al,.shortrep,.literal,.literal.4
4abe0 20 20 20 20 20 20 20 6d 61 74 63 68 2c 20 6c 69 74 65 72 61 6c 0a 35 20 20 20 20 20 20 20 72 65 .......match,.literal.5.......re
4ac00 70 20 6f 72 20 28 21 6c 69 74 65 72 61 6c 2c 20 73 68 6f 72 74 72 65 70 29 2c 20 6c 69 74 65 72 p.or.(!literal,.shortrep),.liter
4ac20 61 6c 0a 36 20 20 20 20 20 20 20 6c 69 74 65 72 61 6c 2c 20 73 68 6f 72 74 72 65 70 2c 20 6c 69 al.6.......literal,.shortrep,.li
4ac40 74 65 72 61 6c 0a 37 20 20 20 20 20 20 20 6c 69 74 65 72 61 6c 2c 20 6d 61 74 63 68 0a 38 20 20 teral.7.......literal,.match.8..
4ac60 20 20 20 20 20 6c 69 74 65 72 61 6c 2c 20 72 65 70 0a 39 20 20 20 20 20 20 20 6c 69 74 65 72 61 .....literal,.rep.9.......litera
4ac80 6c 2c 20 73 68 6f 72 74 72 65 70 0a 31 30 20 20 20 20 20 20 21 6c 69 74 65 72 61 6c 2c 20 6d 61 l,.shortrep.10......!literal,.ma
4aca0 74 63 68 0a 31 31 20 20 20 20 20 20 21 6c 69 74 65 72 61 6c 2c 20 28 72 65 70 20 6f 72 20 73 68 tch.11......!literal,.(rep.or.sh
4acc0 6f 72 74 72 65 70 29 0a 0a 0a 20 20 20 54 68 65 20 63 6f 6e 74 65 78 74 73 20 66 6f 72 20 64 65 ortrep)......The.contexts.for.de
4ace0 63 6f 64 69 6e 67 20 74 68 65 20 74 79 70 65 20 6f 66 20 63 6f 64 69 6e 67 20 73 65 71 75 65 6e coding.the.type.of.coding.sequen
4ad00 63 65 20 61 72 65 3a 0a 0a 4e 61 6d 65 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 64 69 63 65 73 ce.are:..Name............Indices
4ad20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 55 73 65 64 20 77 68 65 6e 0a 2d .....................Used.when.-
4ad40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
4ad60 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
4ad80 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 62 6d 5f 6d 61 74 63 68 20 20 20 20 20 20 20 20 73 74 61 74 -----------.bm_match........stat
4ada0 65 2c 20 70 6f 73 5f 73 74 61 74 65 20 20 20 20 20 20 20 20 20 20 20 20 73 65 71 75 65 6e 63 65 e,.pos_state............sequence
4adc0 20 73 74 61 72 74 0a 62 6d 5f 72 65 70 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 20 20 20 .start.bm_rep..........state....
4ade0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 ...................after.sequenc
4ae00 65 20 31 0a 62 6d 5f 72 65 70 30 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 20 20 20 20 20 20 e.1.bm_rep0.........state.......
4ae20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 ................after.sequence.1
4ae40 31 0a 62 6d 5f 72 65 70 31 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 20 20 20 20 20 20 20 20 1.bm_rep1.........state.........
4ae60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 31 31 ..............after.sequence.111
4ae80 0a 62 6d 5f 72 65 70 32 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 20 20 20 20 20 20 20 20 20 .bm_rep2.........state..........
4aea0 20 20 20 20 20 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 31 31 31 .............after.sequence.1111
4aec0 0a 62 6d 5f 6c 65 6e 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2c 20 70 6f 73 5f 73 74 61 74 .bm_len..........state,.pos_stat
4aee0 65 20 20 20 20 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 31 30 0a e............after.sequence.110.
4af00 0a 0a 20 20 20 54 68 65 20 63 6f 6e 74 65 78 74 73 20 66 6f 72 20 64 65 63 6f 64 69 6e 67 20 64 .....The.contexts.for.decoding.d
4af20 69 73 74 61 6e 63 65 73 20 61 72 65 3a 0a 0a 4e 61 6d 65 20 20 20 20 20 20 20 20 20 20 20 20 49 istances.are:..Name............I
4af40 6e 64 69 63 65 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 55 73 65 64 20 77 68 65 6e ndices.................Used.when
4af60 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d .-------------------------------
4af80 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
4afa0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 62 6d 5f 64 69 73 5f 73 6c 6f 74 20 20 20 20 20 6c 65 -------------.bm_dis_slot.....le
4afc0 6e 5f 73 74 61 74 65 2c 20 62 69 74 20 74 72 65 65 20 20 20 20 20 64 69 73 74 61 6e 63 65 20 73 n_state,.bit.tree.....distance.s
4afe0 74 61 72 74 0a 62 6d 5f 64 69 73 20 20 20 20 20 20 20 20 20 20 72 65 76 65 72 73 65 20 62 69 74 tart.bm_dis..........reverse.bit
4b000 20 74 72 65 65 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 6c 6f 74 73 20 34 20 74 6f 20 31 33 .tree........after.slots.4.to.13
4b020 0a 62 6d 5f 61 6c 69 67 6e 20 20 20 20 20 20 20 20 72 65 76 65 72 73 65 20 62 69 74 20 74 72 65 .bm_align........reverse.bit.tre
4b040 65 20 20 20 20 20 20 20 20 66 6f 72 20 64 69 73 74 61 6e 63 65 73 20 3e 3d 20 31 32 38 2c 20 61 e........for.distances.>=.128,.a
4b060 66 74 65 72 20 66 69 78 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 fter.fixed......................
4b080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 62 61 62 69 6c 69 74 79 20 62 ...................probability.b
4b0a0 69 74 73 0a 0a 0a 20 20 20 54 68 65 72 65 20 61 72 65 20 74 77 6f 20 73 65 70 61 72 61 74 65 20 its......There.are.two.separate.
4b0c0 73 65 74 73 20 6f 66 20 63 6f 6e 74 65 78 74 73 20 66 6f 72 20 6c 65 6e 67 74 68 73 20 28 27 4c sets.of.contexts.for.lengths.('L
4b0e0 65 6e 5f 6d 6f 64 65 6c 27 20 69 6e 20 74 68 65 0a 73 6f 75 72 63 65 29 2e 20 4f 6e 65 20 66 6f en_model'.in.the.source)..One.fo
4b100 72 20 6e 6f 72 6d 61 6c 20 6d 61 74 63 68 65 73 2c 20 74 68 65 20 6f 74 68 65 72 20 66 6f 72 20 r.normal.matches,.the.other.for.
4b120 72 65 70 65 61 74 65 64 20 6d 61 74 63 68 65 73 2e 20 54 68 65 0a 63 6f 6e 74 65 78 74 73 20 69 repeated.matches..The.contexts.i
4b140 6e 20 65 61 63 68 20 4c 65 6e 5f 6d 6f 64 65 6c 20 61 72 65 20 28 73 65 65 20 27 64 65 63 6f 64 n.each.Len_model.are.(see.'decod
4b160 65 5f 6c 65 6e 27 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 3a 0a 0a 4e 61 6d 65 20 20 20 20 e_len'.in.the.source):..Name....
4b180 20 20 20 20 20 20 20 20 49 6e 64 69 63 65 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........Indices.................
4b1a0 20 20 20 20 20 20 20 55 73 65 64 20 77 68 65 6e 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d .......Used.when.---------------
4b1c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
4b1e0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 63 68 6f ----------------------------.cho
4b200 69 63 65 31 20 20 20 20 20 20 20 20 20 6e 6f 6e 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ice1.........none...............
4b220 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 6e 67 74 68 20 73 74 61 72 74 0a 63 68 6f 69 63 65 32 ............length.start.choice2
4b240 20 20 20 20 20 20 20 20 20 6e 6f 6e 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........none...................
4b260 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 0a 62 6d 5f 6c 6f 77 20 ........after.sequence.1.bm_low.
4b280 20 20 20 20 20 20 20 20 20 70 6f 73 5f 73 74 61 74 65 2c 20 62 69 74 20 74 72 65 65 20 20 20 20 .........pos_state,.bit.tree....
4b2a0 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 30 0a 62 6d 5f 6d 69 64 20 ........after.sequence.0.bm_mid.
4b2c0 20 20 20 20 20 20 20 20 20 70 6f 73 5f 73 74 61 74 65 2c 20 62 69 74 20 74 72 65 65 20 20 20 20 .........pos_state,.bit.tree....
4b2e0 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 30 0a 62 6d 5f 68 69 67 ........after.sequence.10.bm_hig
4b300 68 20 20 20 20 20 20 20 20 20 62 69 74 20 74 72 65 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 h.........bit.tree..............
4b320 20 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 65 71 75 65 6e 63 65 20 31 31 0a 0a 0a 20 20 20 .........after.sequence.11......
4b340 54 68 65 20 63 6f 6e 74 65 78 74 20 61 72 72 61 79 20 27 62 6d 5f 6c 69 74 65 72 61 6c 27 20 69 The.context.array.'bm_literal'.i
4b360 73 20 73 70 65 63 69 61 6c 2e 20 49 6e 20 70 72 69 6e 63 69 70 6c 65 20 69 74 20 61 63 74 73 20 s.special..In.principle.it.acts.
4b380 61 73 20 61 0a 6e 6f 72 6d 61 6c 20 62 69 74 20 74 72 65 65 20 63 6f 6e 74 65 78 74 2c 20 74 68 as.a.normal.bit.tree.context,.th
4b3a0 65 20 6f 6e 65 20 73 65 6c 65 63 74 65 64 20 62 79 20 27 6c 69 74 65 72 61 6c 5f 73 74 61 74 65 e.one.selected.by.'literal_state
4b3c0 27 2e 20 42 75 74 20 69 66 20 74 68 65 0a 70 72 65 76 69 6f 75 73 20 64 65 63 6f 64 65 64 20 62 '..But.if.the.previous.decoded.b
4b3e0 79 74 65 20 77 61 73 20 6e 6f 74 20 61 20 6c 69 74 65 72 61 6c 2c 20 74 77 6f 20 6f 74 68 65 72 yte.was.not.a.literal,.two.other
4b400 20 62 69 74 20 74 72 65 65 20 63 6f 6e 74 65 78 74 73 20 61 72 65 0a 75 73 65 64 20 64 65 70 65 .bit.tree.contexts.are.used.depe
4b420 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 65 61 63 68 20 62 69 74 20 69 nding.on.the.value.of.each.bit.i
4b440 6e 20 27 6d 61 74 63 68 5f 62 79 74 65 27 20 28 74 68 65 20 62 79 74 65 20 61 74 20 74 68 65 0a n.'match_byte'.(the.byte.at.the.
4b460 6c 61 74 65 73 74 20 75 73 65 64 20 64 69 73 74 61 6e 63 65 29 2c 20 75 6e 74 69 6c 20 61 20 62 latest.used.distance),.until.a.b
4b480 69 74 20 69 73 20 64 65 63 6f 64 65 64 20 74 68 61 74 20 69 73 20 64 69 66 66 65 72 65 6e 74 20 it.is.decoded.that.is.different.
4b4a0 66 72 6f 6d 20 69 74 73 0a 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 62 69 74 20 69 6e 20 27 6d from.its.corresponding.bit.in.'m
4b4c0 61 74 63 68 5f 62 79 74 65 27 2e 20 41 66 74 65 72 20 74 68 65 20 66 69 72 73 74 20 64 69 66 66 atch_byte'..After.the.first.diff
4b4e0 65 72 65 6e 63 65 20 69 73 20 66 6f 75 6e 64 2c 20 74 68 65 0a 72 65 73 74 20 6f 66 20 74 68 65 erence.is.found,.the.rest.of.the
4b500 20 62 79 74 65 20 69 73 20 64 65 63 6f 64 65 64 20 75 73 69 6e 67 20 74 68 65 20 6e 6f 72 6d 61 .byte.is.decoded.using.the.norma
4b520 6c 20 62 69 74 20 74 72 65 65 20 63 6f 6e 74 65 78 74 2e 20 28 53 65 65 0a 27 64 65 63 6f 64 65 l.bit.tree.context..(See.'decode
4b540 5f 6d 61 74 63 68 65 64 27 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 2e 0a 0a 36 2e 33 20 54 _matched'.in.the.source)...6.3.T
4b560 68 65 20 72 61 6e 67 65 20 64 65 63 6f 64 65 72 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d he.range.decoder.===============
4b580 3d 3d 3d 3d 3d 3d 0a 0a 54 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 73 20 63 6f 6e 73 75 ======..The.LZMA.stream.is.consu
4b5a0 6d 65 64 20 6f 6e 65 20 62 79 74 65 20 61 74 20 61 20 74 69 6d 65 20 62 79 20 74 68 65 20 72 61 med.one.byte.at.a.time.by.the.ra
4b5c0 6e 67 65 20 64 65 63 6f 64 65 72 2e 20 28 53 65 65 0a 27 6e 6f 72 6d 61 6c 69 7a 65 27 20 69 6e nge.decoder..(See.'normalize'.in
4b5e0 20 74 68 65 20 73 6f 75 72 63 65 29 2e 20 45 76 65 72 79 20 62 79 74 65 20 63 6f 6e 73 75 6d 65 .the.source)..Every.byte.consume
4b600 64 20 70 72 6f 64 75 63 65 73 20 61 20 76 61 72 69 61 62 6c 65 20 6e 75 6d 62 65 72 0a 6f 66 20 d.produces.a.variable.number.of.
4b620 64 65 63 6f 64 65 64 20 62 69 74 73 2c 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 68 6f 77 20 77 decoded.bits,.depending.on.how.w
4b640 65 6c 6c 20 74 68 65 73 65 20 62 69 74 73 20 61 67 72 65 65 20 77 69 74 68 20 74 68 65 69 72 20 ell.these.bits.agree.with.their.
4b660 63 6f 6e 74 65 78 74 2e 0a 28 53 65 65 20 27 64 65 63 6f 64 65 5f 62 69 74 27 20 69 6e 20 74 68 context..(See.'decode_bit'.in.th
4b680 65 20 73 6f 75 72 63 65 29 2e 0a 0a 20 20 20 54 68 65 20 72 61 6e 67 65 20 64 65 63 6f 64 65 72 e.source)......The.range.decoder
4b6a0 20 73 74 61 74 65 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 74 77 6f 20 75 6e 73 69 67 6e 65 64 20 .state.consists.of.two.unsigned.
4b6c0 33 32 2d 62 69 74 20 76 61 72 69 61 62 6c 65 73 3a 0a 27 72 61 6e 67 65 27 20 28 72 65 70 72 65 32-bit.variables:.'range'.(repre
4b6e0 73 65 6e 74 69 6e 67 20 74 68 65 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 70 61 72 senting.the.most.significant.par
4b700 74 20 6f 66 20 74 68 65 20 72 61 6e 67 65 20 73 69 7a 65 20 6e 6f 74 20 79 65 74 0a 64 65 63 6f t.of.the.range.size.not.yet.deco
4b720 64 65 64 29 20 61 6e 64 20 27 63 6f 64 65 27 20 28 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 ded).and.'code'.(representing.th
4b740 65 20 63 75 72 72 65 6e 74 20 70 6f 69 6e 74 20 77 69 74 68 69 6e 20 27 72 61 6e 67 65 27 29 2e e.current.point.within.'range').
4b760 0a 27 72 61 6e 67 65 27 20 69 73 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 74 6f 20 32 5e 33 32 20 .'range'.is.initialized.to.2^32.
4b780 2d 20 31 2c 20 61 6e 64 20 27 63 6f 64 65 27 20 69 73 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 74 -.1,.and.'code'.is.initialized.t
4b7a0 6f 20 30 2e 0a 0a 36 2e 34 20 44 65 63 6f 64 69 6e 67 20 61 6e 64 20 63 68 65 63 6b 69 6e 67 20 o.0...6.4.Decoding.and.checking.
4b7c0 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d the.LZMA.stream.================
4b7e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 41 66 74 65 72 =========================..After
4b800 20 64 65 63 6f 64 69 6e 67 20 74 68 65 20 6d 65 6d 62 65 72 20 68 65 61 64 65 72 20 61 6e 64 20 .decoding.the.member.header.and.
4b820 6f 62 74 61 69 6e 69 6e 67 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 2c 20 74 obtaining.the.dictionary.size,.t
4b840 68 65 0a 72 61 6e 67 65 20 64 65 63 6f 64 65 72 20 69 73 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 he.range.decoder.is.initialized.
4b860 61 6e 64 20 74 68 65 6e 20 74 68 65 20 4c 5a 4d 41 20 64 65 63 6f 64 65 72 20 65 6e 74 65 72 73 and.then.the.LZMA.decoder.enters
4b880 20 61 20 6c 6f 6f 70 20 28 73 65 65 0a 27 64 65 63 6f 64 65 5f 6d 65 6d 62 65 72 27 20 69 6e 20 .a.loop.(see.'decode_member'.in.
4b8a0 74 68 65 20 73 6f 75 72 63 65 29 20 77 68 65 72 65 20 69 74 20 69 6e 76 6f 6b 65 73 20 74 68 65 the.source).where.it.invokes.the
4b8c0 20 72 61 6e 67 65 20 64 65 63 6f 64 65 72 20 77 69 74 68 20 74 68 65 0a 61 70 70 72 6f 70 72 69 .range.decoder.with.the.appropri
4b8e0 61 74 65 20 63 6f 6e 74 65 78 74 73 20 74 6f 20 64 65 63 6f 64 65 20 74 68 65 20 64 69 66 66 65 ate.contexts.to.decode.the.diffe
4b900 72 65 6e 74 20 63 6f 64 69 6e 67 20 73 65 71 75 65 6e 63 65 73 20 28 6d 61 74 63 68 65 73 2c 0a rent.coding.sequences.(matches,.
4b920 72 65 70 65 61 74 65 64 20 6d 61 74 63 68 65 73 2c 20 61 6e 64 20 6c 69 74 65 72 61 6c 20 62 79 repeated.matches,.and.literal.by
4b940 74 65 73 29 2c 20 75 6e 74 69 6c 20 74 68 65 20 27 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 27 20 tes),.until.the.'End.Of.Stream'.
4b960 6d 61 72 6b 65 72 20 69 73 0a 64 65 63 6f 64 65 64 2e 0a 0a 20 20 20 4f 6e 63 65 20 74 68 65 20 marker.is.decoded......Once.the.
4b980 27 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 27 20 6d 61 72 6b 65 72 20 68 61 73 20 62 65 65 6e 20 'End.Of.Stream'.marker.has.been.
4b9a0 64 65 63 6f 64 65 64 2c 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 72 65 61 64 73 0a decoded,.the.decompressor.reads.
4b9c0 61 6e 64 20 64 65 63 6f 64 65 73 20 74 68 65 20 6d 65 6d 62 65 72 20 74 72 61 69 6c 65 72 2c 20 and.decodes.the.member.trailer,.
4b9e0 61 6e 64 20 63 68 65 63 6b 73 20 74 68 61 74 20 74 68 65 20 74 68 72 65 65 20 69 6e 74 65 67 72 and.checks.that.the.three.integr
4ba00 69 74 79 20 66 61 63 74 6f 72 73 0a 73 74 6f 72 65 64 20 74 68 65 72 65 20 28 43 52 43 2c 20 64 ity.factors.stored.there.(CRC,.d
4ba20 61 74 61 20 73 69 7a 65 2c 20 61 6e 64 20 6d 65 6d 62 65 72 20 73 69 7a 65 29 20 6d 61 74 63 68 ata.size,.and.member.size).match
4ba40 20 74 68 6f 73 65 20 63 6f 6d 70 75 74 65 64 20 66 72 6f 6d 20 74 68 65 0a 64 61 74 61 2e 0a 0a .those.computed.from.the.data...
4ba60 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 51 75 61 6c 69 74 ..File:.lzip.info,..Node:.Qualit
4ba80 79 20 61 73 73 75 72 61 6e 63 65 2c 20 20 4e 65 78 74 3a 20 41 6c 67 6f 72 69 74 68 6d 2c 20 20 y.assurance,..Next:.Algorithm,..
4baa0 50 72 65 76 3a 20 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 37 Prev:.Stream.format,..Up:.Top..7
4bac0 20 44 65 73 69 67 6e 2c 20 64 65 76 65 6c 6f 70 6d 65 6e 74 2c 20 61 6e 64 20 74 65 73 74 69 6e .Design,.development,.and.testin
4bae0 67 20 6f 66 20 6c 7a 69 70 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a g.of.lzip.**********************
4bb00 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 54 68 65 72 65 20 61 72 65 20 ********************..There.are.
4bb20 74 77 6f 20 77 61 79 73 20 6f 66 20 63 6f 6e 73 74 72 75 63 74 69 6e 67 20 61 20 73 6f 66 74 77 two.ways.of.constructing.a.softw
4bb40 61 72 65 20 64 65 73 69 67 6e 3a 20 4f 6e 65 20 77 61 79 20 69 73 20 74 6f 20 6d 61 6b 65 20 69 are.design:.One.way.is.to.make.i
4bb60 74 0a 73 6f 20 73 69 6d 70 6c 65 20 74 68 61 74 20 74 68 65 72 65 20 61 72 65 20 6f 62 76 69 6f t.so.simple.that.there.are.obvio
4bb80 75 73 6c 79 20 6e 6f 20 64 65 66 69 63 69 65 6e 63 69 65 73 20 61 6e 64 20 74 68 65 20 6f 74 68 usly.no.deficiencies.and.the.oth
4bba0 65 72 20 77 61 79 20 69 73 20 74 6f 0a 6d 61 6b 65 20 69 74 20 73 6f 20 63 6f 6d 70 6c 69 63 61 er.way.is.to.make.it.so.complica
4bbc0 74 65 64 20 74 68 61 74 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 6f 62 76 69 6f 75 73 20 64 65 ted.that.there.are.no.obvious.de
4bbe0 66 69 63 69 65 6e 63 69 65 73 2e 20 54 68 65 20 66 69 72 73 74 0a 6d 65 74 68 6f 64 20 69 73 20 ficiencies..The.first.method.is.
4bc00 66 61 72 20 6d 6f 72 65 20 64 69 66 66 69 63 75 6c 74 2e 0a 2d 2d 20 43 2e 41 2e 52 2e 20 48 6f far.more.difficult..--.C.A.R..Ho
4bc20 61 72 65 0a 0a 20 20 20 4c 7a 69 70 20 68 61 73 20 62 65 65 6e 20 64 65 73 69 67 6e 65 64 2c 20 are.....Lzip.has.been.designed,.
4bc40 77 72 69 74 74 65 6e 2c 20 61 6e 64 20 74 65 73 74 65 64 20 77 69 74 68 20 67 72 65 61 74 20 63 written,.and.tested.with.great.c
4bc60 61 72 65 20 74 6f 20 72 65 70 6c 61 63 65 0a 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 20 61 73 are.to.replace.gzip.and.bzip2.as
4bc80 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d .general-purpose.compressed.form
4bca0 61 74 20 66 6f 72 20 55 6e 69 78 2d 6c 69 6b 65 20 73 79 73 74 65 6d 73 2e 0a 54 68 69 73 20 63 at.for.Unix-like.systems..This.c
4bcc0 68 61 70 74 65 72 20 64 65 73 63 72 69 62 65 73 20 74 68 65 20 6c 65 73 73 6f 6e 73 20 6c 65 61 hapter.describes.the.lessons.lea
4bce0 72 6e 65 64 20 66 72 6f 6d 20 74 68 65 73 65 20 70 72 65 76 69 6f 75 73 20 66 6f 72 6d 61 74 73 rned.from.these.previous.formats
4bd00 2c 20 61 6e 64 0a 74 68 65 69 72 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 74 6f 20 74 68 65 20 64 ,.and.their.application.to.the.d
4bd20 65 73 69 67 6e 20 6f 66 20 6c 7a 69 70 2e 20 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 73 esign.of.lzip..The.lzip.format.s
4bd40 70 65 63 69 66 69 63 61 74 69 6f 6e 20 68 61 73 0a 62 65 65 6e 20 72 65 76 69 65 77 65 64 20 63 pecification.has.been.reviewed.c
4bd60 61 72 65 66 75 6c 6c 79 20 61 6e 64 20 69 73 20 62 65 6c 69 65 76 65 64 20 74 6f 20 62 65 20 66 arefully.and.is.believed.to.be.f
4bd80 72 65 65 20 66 72 6f 6d 20 64 65 73 69 67 6e 20 65 72 72 6f 72 73 2e 0a 0a 37 2e 31 20 46 6f 72 ree.from.design.errors...7.1.For
4bda0 6d 61 74 20 64 65 73 69 67 6e 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 57 68 mat.design.=================..Wh
4bdc0 65 6e 20 67 7a 69 70 20 77 61 73 20 64 65 73 69 67 6e 65 64 20 69 6e 20 31 39 39 32 2c 20 63 6f en.gzip.was.designed.in.1992,.co
4bde0 6d 70 75 74 65 72 73 20 61 6e 64 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 73 20 77 65 mputers.and.operating.systems.we
4be00 72 65 20 6c 65 73 73 0a 63 61 70 61 62 6c 65 20 74 68 61 6e 20 74 68 65 79 20 61 72 65 20 74 6f re.less.capable.than.they.are.to
4be20 64 61 79 2e 20 54 68 65 20 64 65 73 69 67 6e 65 72 73 20 6f 66 20 67 7a 69 70 20 74 72 69 65 64 day..The.designers.of.gzip.tried
4be40 20 74 6f 20 77 6f 72 6b 20 61 72 6f 75 6e 64 20 73 6f 6d 65 0a 6f 66 20 74 68 6f 73 65 20 6c 69 .to.work.around.some.of.those.li
4be60 6d 69 74 61 74 69 6f 6e 73 2c 20 6c 69 6b 65 20 38 2e 33 20 66 69 6c 65 20 6e 61 6d 65 73 2c 20 mitations,.like.8.3.file.names,.
4be80 77 69 74 68 20 61 64 64 69 74 69 6f 6e 61 6c 20 66 69 65 6c 64 73 20 69 6e 20 74 68 65 0a 66 69 with.additional.fields.in.the.fi
4bea0 6c 65 20 66 6f 72 6d 61 74 2e 0a 0a 20 20 20 54 6f 64 61 79 20 74 68 6f 73 65 20 6c 69 6d 69 74 le.format......Today.those.limit
4bec0 61 74 69 6f 6e 73 20 68 61 76 65 20 6d 6f 73 74 6c 79 20 64 69 73 61 70 70 65 61 72 65 64 2c 20 ations.have.mostly.disappeared,.
4bee0 61 6e 64 20 74 68 65 20 66 6f 72 6d 61 74 20 6f 66 20 67 7a 69 70 0a 68 61 73 20 70 72 6f 76 65 and.the.format.of.gzip.has.prove
4bf00 64 20 74 6f 20 62 65 20 75 6e 6e 65 63 65 73 73 61 72 69 6c 79 20 63 6f 6d 70 6c 69 63 61 74 65 d.to.be.unnecessarily.complicate
4bf20 64 2e 20 49 74 20 69 6e 63 6c 75 64 65 73 20 66 69 65 6c 64 73 20 74 68 61 74 20 77 65 72 65 0a d..It.includes.fields.that.were.
4bf40 6e 65 76 65 72 20 75 73 65 64 2c 20 6f 74 68 65 72 73 20 74 68 61 74 20 68 61 76 65 20 6c 6f 73 never.used,.others.that.have.los
4bf60 74 20 74 68 65 69 72 20 75 73 65 66 75 6c 6e 65 73 73 2c 20 61 6e 64 20 66 69 6e 61 6c 6c 79 20 t.their.usefulness,.and.finally.
4bf80 6f 74 68 65 72 73 20 74 68 61 74 0a 68 61 76 65 20 62 65 63 6f 6d 65 20 74 6f 6f 20 6c 69 6d 69 others.that.have.become.too.limi
4bfa0 74 65 64 2e 0a 0a 20 20 20 42 7a 69 70 32 20 77 61 73 20 64 65 73 69 67 6e 65 64 20 35 20 79 65 ted......Bzip2.was.designed.5.ye
4bfc0 61 72 73 20 6c 61 74 65 72 2c 20 61 6e 64 20 69 74 73 20 66 6f 72 6d 61 74 20 69 73 20 73 69 6d ars.later,.and.its.format.is.sim
4bfe0 70 6c 65 72 20 74 68 61 6e 20 74 68 65 20 6f 6e 65 0a 6f 66 20 67 7a 69 70 2e 20 42 6f 74 68 20 pler.than.the.one.of.gzip..Both.
4c000 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 20 6c 61 63 6b 20 74 68 65 20 66 69 65 6c 64 73 20 72 gzip.and.bzip2.lack.the.fields.r
4c020 65 71 75 69 72 65 64 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 61 0a 72 65 6c 69 61 62 6c 65 20 equired.to.implement.a.reliable.
4c040 61 6e 64 20 65 66 66 69 63 69 65 6e 74 20 27 2d 2d 6c 69 73 74 27 20 6f 70 65 72 61 74 69 6f 6e and.efficient.'--list'.operation
4c060 2e 0a 0a 20 20 20 50 72 6f 62 61 62 6c 79 20 74 68 65 20 77 6f 72 73 74 20 64 65 66 65 63 74 20 ......Probably.the.worst.defect.
4c080 6f 66 20 74 68 65 20 67 7a 69 70 20 66 6f 72 6d 61 74 20 66 72 6f 6d 20 74 68 65 20 70 6f 69 6e of.the.gzip.format.from.the.poin
4c0a0 74 20 6f 66 20 76 69 65 77 20 6f 66 0a 64 61 74 61 20 73 61 66 65 74 79 20 69 73 20 74 68 65 20 t.of.view.of.data.safety.is.the.
4c0c0 76 61 72 69 61 62 6c 65 20 73 69 7a 65 20 6f 66 20 69 74 73 20 68 65 61 64 65 72 2e 20 49 66 20 variable.size.of.its.header..If.
4c0e0 74 68 65 20 62 79 74 65 20 61 74 20 6f 66 66 73 65 74 20 33 0a 28 66 6c 61 67 73 29 20 6f 66 20 the.byte.at.offset.3.(flags).of.
4c100 61 20 67 7a 69 70 20 6d 65 6d 62 65 72 20 67 65 74 73 20 63 6f 72 72 75 70 74 65 64 2c 20 69 74 a.gzip.member.gets.corrupted,.it
4c120 20 6d 61 79 20 62 65 63 6f 6d 65 20 64 69 66 66 69 63 75 6c 74 20 74 6f 20 72 65 63 6f 76 65 72 .may.become.difficult.to.recover
4c140 0a 74 68 65 20 64 61 74 61 2c 20 65 76 65 6e 20 69 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 .the.data,.even.if.the.compresse
4c160 64 20 62 6c 6f 63 6b 73 20 61 72 65 20 69 6e 74 61 63 74 2c 20 62 65 63 61 75 73 65 20 69 74 20 d.blocks.are.intact,.because.it.
4c180 63 61 6e 27 74 20 62 65 0a 6b 6e 6f 77 6e 20 77 69 74 68 20 63 65 72 74 61 69 6e 74 79 20 77 68 can't.be.known.with.certainty.wh
4c1a0 65 72 65 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 62 6c 6f 63 6b 73 20 62 65 67 69 6e 2e ere.the.compressed.blocks.begin.
4c1c0 0a 0a 20 20 20 42 79 20 63 6f 6e 74 72 61 73 74 2c 20 74 68 65 20 68 65 61 64 65 72 20 6f 66 20 .....By.contrast,.the.header.of.
4c1e0 61 20 6c 7a 69 70 20 6d 65 6d 62 65 72 20 68 61 73 20 61 20 66 69 78 65 64 20 6c 65 6e 67 74 68 a.lzip.member.has.a.fixed.length
4c200 20 6f 66 20 36 2e 20 54 68 65 0a 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 6e 20 61 20 6c 7a 69 70 .of.6..The.LZMA.stream.in.a.lzip
4c220 20 6d 65 6d 62 65 72 20 61 6c 77 61 79 73 20 73 74 61 72 74 73 20 61 74 20 6f 66 66 73 65 74 20 .member.always.starts.at.offset.
4c240 36 2c 20 6d 61 6b 69 6e 67 20 69 74 20 74 72 69 76 69 61 6c 20 74 6f 0a 72 65 63 6f 76 65 72 20 6,.making.it.trivial.to.recover.
4c260 74 68 65 20 64 61 74 61 20 65 76 65 6e 20 69 66 20 74 68 65 20 77 68 6f 6c 65 20 68 65 61 64 65 the.data.even.if.the.whole.heade
4c280 72 20 62 65 63 6f 6d 65 73 20 63 6f 72 72 75 70 74 2e 0a 0a 20 20 20 42 7a 69 70 32 20 61 6c 73 r.becomes.corrupt......Bzip2.als
4c2a0 6f 20 70 72 6f 76 69 64 65 73 20 61 20 68 65 61 64 65 72 20 6f 66 20 66 69 78 65 64 20 6c 65 6e o.provides.a.header.of.fixed.len
4c2c0 67 74 68 20 61 6e 64 20 6d 61 72 6b 73 20 74 68 65 20 62 65 67 69 6e 20 61 6e 64 20 65 6e 64 0a gth.and.marks.the.begin.and.end.
4c2e0 6f 66 20 65 61 63 68 20 63 6f 6d 70 72 65 73 73 65 64 20 62 6c 6f 63 6b 20 77 69 74 68 20 73 69 of.each.compressed.block.with.si
4c300 78 20 6d 61 67 69 63 20 62 79 74 65 73 2c 20 6d 61 6b 69 6e 67 20 69 74 20 70 6f 73 73 69 62 6c x.magic.bytes,.making.it.possibl
4c320 65 20 74 6f 20 66 69 6e 64 0a 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 62 6c 6f 63 6b 73 20 e.to.find.the.compressed.blocks.
4c340 65 76 65 6e 20 69 6e 20 63 61 73 65 20 6f 66 20 66 69 6c 65 20 64 61 6d 61 67 65 2e 20 42 75 74 even.in.case.of.file.damage..But
4c360 20 62 7a 69 70 32 20 64 6f 65 73 20 6e 6f 74 20 73 74 6f 72 65 0a 74 68 65 20 73 69 7a 65 20 6f .bzip2.does.not.store.the.size.o
4c380 66 20 65 61 63 68 20 63 6f 6d 70 72 65 73 73 65 64 20 62 6c 6f 63 6b 2c 20 61 73 20 6c 7a 69 70 f.each.compressed.block,.as.lzip
4c3a0 20 64 6f 65 73 2e 0a 0a 20 20 20 4c 7a 69 70 72 65 63 6f 76 65 72 20 69 73 20 61 62 6c 65 20 74 .does......Lziprecover.is.able.t
4c3c0 6f 20 70 72 6f 76 69 64 65 20 75 6e 69 71 75 65 20 64 61 74 61 20 72 65 63 6f 76 65 72 79 20 63 o.provide.unique.data.recovery.c
4c3e0 61 70 61 62 69 6c 69 74 69 65 73 20 62 65 63 61 75 73 65 0a 74 68 65 20 6c 7a 69 70 20 66 6f 72 apabilities.because.the.lzip.for
4c400 6d 61 74 20 69 73 20 65 78 74 72 61 6f 72 64 69 6e 61 72 69 6c 79 20 73 61 66 65 2e 20 54 68 65 mat.is.extraordinarily.safe..The
4c420 20 73 69 6d 70 6c 65 20 61 6e 64 20 73 61 66 65 20 64 65 73 69 67 6e 20 6f 66 20 74 68 65 0a 66 .simple.and.safe.design.of.the.f
4c440 69 6c 65 20 66 6f 72 6d 61 74 20 63 6f 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 20 65 6d 62 65 64 ile.format.complements.the.embed
4c460 64 65 64 20 65 72 72 6f 72 20 64 65 74 65 63 74 69 6f 6e 20 70 72 6f 76 69 64 65 64 20 62 79 20 ded.error.detection.provided.by.
4c480 74 68 65 20 4c 5a 4d 41 0a 64 61 74 61 20 73 74 72 65 61 6d 2e 20 41 6e 79 20 64 69 73 74 61 6e the.LZMA.data.stream..Any.distan
4c4a0 63 65 20 6c 61 72 67 65 72 20 74 68 61 6e 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 ce.larger.than.the.dictionary.si
4c4c0 7a 65 20 61 63 74 73 20 61 73 20 61 0a 66 6f 72 62 69 64 64 65 6e 20 73 79 6d 62 6f 6c 2c 20 61 ze.acts.as.a.forbidden.symbol,.a
4c4e0 6c 6c 6f 77 69 6e 67 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 74 6f 20 64 65 74 65 llowing.the.decompressor.to.dete
4c500 63 74 20 74 68 65 20 61 70 70 72 6f 78 69 6d 61 74 65 0a 70 6f 73 69 74 69 6f 6e 20 6f 66 20 65 ct.the.approximate.position.of.e
4c520 72 72 6f 72 73 2c 20 61 6e 64 20 6c 65 61 76 69 6e 67 20 6c 69 74 74 6c 65 20 77 6f 72 6b 20 66 rrors,.and.leaving.little.work.f
4c540 6f 72 20 74 68 65 20 63 68 65 63 6b 20 73 65 71 75 65 6e 63 65 20 28 43 52 43 20 61 6e 64 0a 64 or.the.check.sequence.(CRC.and.d
4c560 61 74 61 20 73 69 7a 65 73 29 20 69 6e 20 74 68 65 20 64 65 74 65 63 74 69 6f 6e 20 6f 66 20 65 ata.sizes).in.the.detection.of.e
4c580 72 72 6f 72 73 2e 20 4c 7a 69 70 20 69 73 20 75 73 75 61 6c 6c 79 20 61 62 6c 65 20 74 6f 20 64 rrors..Lzip.is.usually.able.to.d
4c5a0 65 74 65 63 74 20 61 6c 6c 0a 70 6f 73 73 69 62 6c 65 20 62 69 74 20 66 6c 69 70 73 20 69 6e 20 etect.all.possible.bit.flips.in.
4c5c0 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 77 69 74 68 6f 75 74 20 72 65 73 6f the.compressed.data.without.reso
4c5e0 72 74 69 6e 67 20 74 6f 20 74 68 65 20 63 68 65 63 6b 0a 73 65 71 75 65 6e 63 65 2e 20 49 74 20 rting.to.the.check.sequence..It.
4c600 77 6f 75 6c 64 20 62 65 20 64 69 66 66 69 63 75 6c 74 20 74 6f 20 77 72 69 74 65 20 61 6e 20 61 would.be.difficult.to.write.an.a
4c620 75 74 6f 6d 61 74 69 63 20 72 65 63 6f 76 65 72 79 20 74 6f 6f 6c 20 6c 69 6b 65 0a 6c 7a 69 70 utomatic.recovery.tool.like.lzip
4c640 72 65 63 6f 76 65 72 20 66 6f 72 20 74 68 65 20 67 7a 69 70 20 66 6f 72 6d 61 74 2e 20 41 6e 64 recover.for.the.gzip.format..And
4c660 2c 20 61 73 20 66 61 72 20 61 73 20 49 20 6b 6e 6f 77 2c 20 69 74 20 68 61 73 20 6e 65 76 65 72 ,.as.far.as.I.know,.it.has.never
4c680 20 62 65 65 6e 0a 77 72 69 74 74 65 6e 2e 0a 0a 20 20 20 4c 7a 69 70 2c 20 6c 69 6b 65 20 67 7a .been.written......Lzip,.like.gz
4c6a0 69 70 20 61 6e 64 20 62 7a 69 70 32 2c 20 75 73 65 73 20 61 20 43 52 43 33 32 20 74 6f 20 63 68 ip.and.bzip2,.uses.a.CRC32.to.ch
4c6c0 65 63 6b 20 74 68 65 20 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 68 65 0a 64 65 63 6f 6d 70 72 eck.the.integrity.of.the.decompr
4c6e0 65 73 73 65 64 20 64 61 74 61 20 62 65 63 61 75 73 65 20 69 74 20 70 72 6f 76 69 64 65 73 20 6f essed.data.because.it.provides.o
4c700 70 74 69 6d 61 6c 20 61 63 63 75 72 61 63 79 20 69 6e 20 74 68 65 20 64 65 74 65 63 74 69 6f 6e ptimal.accuracy.in.the.detection
4c720 20 6f 66 0a 65 72 72 6f 72 73 20 75 70 20 74 6f 20 61 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 .of.errors.up.to.a.compressed.si
4c740 7a 65 20 6f 66 20 61 62 6f 75 74 20 31 36 20 47 69 42 2c 20 61 20 73 69 7a 65 20 6c 61 72 67 65 ze.of.about.16.GiB,.a.size.large
4c760 72 20 74 68 61 6e 20 74 68 61 74 20 6f 66 0a 6d 6f 73 74 20 66 69 6c 65 73 2e 20 49 6e 20 74 68 r.than.that.of.most.files..In.th
4c780 65 20 63 61 73 65 20 6f 66 20 6c 7a 69 70 2c 20 74 68 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 64 e.case.of.lzip,.the.additional.d
4c7a0 65 74 65 63 74 69 6f 6e 20 63 61 70 61 62 69 6c 69 74 79 20 6f 66 20 74 68 65 0a 64 65 63 6f 6d etection.capability.of.the.decom
4c7c0 70 72 65 73 73 6f 72 20 72 65 64 75 63 65 73 20 74 68 65 20 70 72 6f 62 61 62 69 6c 69 74 79 20 pressor.reduces.the.probability.
4c7e0 6f 66 20 75 6e 64 65 74 65 63 74 65 64 20 65 72 72 6f 72 73 20 61 62 6f 75 74 20 35 30 20 6d 69 of.undetected.errors.about.50.mi
4c800 6c 6c 69 6f 6e 0a 74 69 6d 65 73 20 6d 6f 72 65 2c 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 61 llion.times.more,.resulting.in.a
4c820 20 63 6f 6d 62 69 6e 65 64 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 63 6b 69 6e 67 20 6f 70 74 .combined.integrity.checking.opt
4c840 69 6d 61 6c 6c 79 20 61 63 63 75 72 61 74 65 0a 66 6f 72 20 61 6e 79 20 6d 65 6d 62 65 72 20 73 imally.accurate.for.any.member.s
4c860 69 7a 65 20 70 72 6f 64 75 63 65 64 20 62 79 20 6c 7a 69 70 2e 20 4d 6f 72 65 6f 76 65 72 2c 20 ize.produced.by.lzip..Moreover,.
4c880 61 20 43 52 43 20 69 73 20 62 65 74 74 65 72 20 74 68 61 6e 20 61 20 68 61 73 68 0a 6f 66 20 74 a.CRC.is.better.than.a.hash.of.t
4c8a0 68 65 20 73 61 6d 65 20 73 69 7a 65 20 66 6f 72 20 64 65 74 65 63 74 69 6f 6e 20 6f 66 20 65 72 he.same.size.for.detection.of.er
4c8c0 72 6f 72 73 20 69 6e 20 6c 7a 69 70 20 66 69 6c 65 73 20 62 65 63 61 75 73 65 20 74 68 65 0a 64 rors.in.lzip.files.because.the.d
4c8e0 65 63 6f 6d 70 72 65 73 73 6f 72 20 63 61 74 63 68 65 73 20 61 6c 6d 6f 73 74 20 61 6c 6c 20 74 ecompressor.catches.almost.all.t
4c900 68 65 20 6c 61 72 67 65 20 65 72 72 6f 72 73 2c 20 77 68 69 6c 65 20 74 68 65 20 43 52 43 20 67 he.large.errors,.while.the.CRC.g
4c920 75 61 72 61 6e 74 65 65 73 0a 74 68 65 20 64 65 74 65 63 74 69 6f 6e 20 6f 66 20 74 68 65 20 73 uarantees.the.detection.of.the.s
4c940 6d 61 6c 6c 20 65 72 72 6f 72 73 20 28 77 68 69 63 68 20 74 68 65 20 68 61 73 68 20 64 6f 65 73 mall.errors.(which.the.hash.does
4c960 20 6e 6f 74 29 2e 0a 0a 20 20 20 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 69 73 20 64 65 .not)......The.lzip.format.is.de
4c980 73 69 67 6e 65 64 20 66 6f 72 20 6c 6f 6e 67 2d 74 65 72 6d 20 61 72 63 68 69 76 69 6e 67 2e 20 signed.for.long-term.archiving..
4c9a0 54 68 65 72 65 66 6f 72 65 20 69 74 0a 65 78 63 6c 75 64 65 73 20 61 6e 79 20 75 6e 6e 65 65 64 Therefore.it.excludes.any.unneed
4c9c0 65 64 20 66 65 61 74 75 72 65 73 20 74 68 61 74 20 6d 61 79 20 69 6e 74 65 72 66 65 72 65 20 77 ed.features.that.may.interfere.w
4c9e0 69 74 68 20 74 68 65 20 66 75 74 75 72 65 0a 65 78 74 72 61 63 74 69 6f 6e 20 6f 66 20 74 68 65 ith.the.future.extraction.of.the
4ca00 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 2e 0a 0a 37 2e 31 2e 31 20 47 7a 69 70 20 .decompressed.data...7.1.1.Gzip.
4ca20 66 6f 72 6d 61 74 20 28 6d 69 73 29 66 65 61 74 75 72 65 73 20 6e 6f 74 20 70 72 65 73 65 6e 74 format.(mis)features.not.present
4ca40 20 69 6e 20 6c 7a 69 70 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d .in.lzip.-----------------------
4ca60 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 27 4d ----------------------------..'M
4ca80 75 6c 74 69 70 6c 65 20 61 6c 67 6f 72 69 74 68 6d 73 27 0a 20 20 20 20 20 47 7a 69 70 20 70 72 ultiple.algorithms'......Gzip.pr
4caa0 6f 76 69 64 65 73 20 61 20 43 4d 20 28 43 6f 6d 70 72 65 73 73 69 6f 6e 20 4d 65 74 68 6f 64 29 ovides.a.CM.(Compression.Method)
4cac0 20 66 69 65 6c 64 20 74 68 61 74 20 68 61 73 20 6e 65 76 65 72 20 62 65 65 6e 20 75 73 65 64 0a .field.that.has.never.been.used.
4cae0 20 20 20 20 20 62 65 63 61 75 73 65 20 69 74 20 69 73 20 74 6f 6f 20 6c 69 6d 69 74 69 6e 67 2e .....because.it.is.too.limiting.
4cb00 20 4e 65 77 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6d 65 74 68 6f 64 73 20 6d 61 79 20 72 65 71 .New.compression.methods.may.req
4cb20 75 69 72 65 0a 20 20 20 20 20 61 64 64 69 74 69 6f 6e 61 6c 20 66 69 65 6c 64 73 2c 20 6d 61 6b uire......additional.fields,.mak
4cb40 69 6e 67 20 69 74 20 69 6d 70 6f 73 73 69 62 6c 65 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 6e ing.it.impossible.to.implement.n
4cb60 65 77 20 6d 65 74 68 6f 64 73 20 61 6e 64 2c 0a 20 20 20 20 20 61 74 20 74 68 65 20 73 61 6d 65 ew.methods.and,......at.the.same
4cb80 20 74 69 6d 65 2c 20 6b 65 65 70 20 74 68 65 20 73 61 6d 65 20 66 6f 72 6d 61 74 2e 0a 0a 27 4f .time,.keep.the.same.format...'O
4cba0 70 74 69 6f 6e 61 6c 20 66 69 65 6c 64 73 20 69 6e 20 68 65 61 64 65 72 27 0a 20 20 20 20 20 55 ptional.fields.in.header'......U
4cbc0 6e 6c 65 73 73 20 73 70 65 63 69 61 6c 20 70 72 65 63 61 75 74 69 6f 6e 73 20 61 72 65 20 74 61 nless.special.precautions.are.ta
4cbe0 6b 65 6e 2c 20 6f 70 74 69 6f 6e 61 6c 20 66 69 65 6c 64 73 20 61 72 65 20 67 65 6e 65 72 61 6c ken,.optional.fields.are.general
4cc00 6c 79 20 61 0a 20 20 20 20 20 62 61 64 20 69 64 65 61 20 62 65 63 61 75 73 65 20 74 68 65 79 20 ly.a......bad.idea.because.they.
4cc20 70 72 6f 64 75 63 65 20 61 20 68 65 61 64 65 72 20 6f 66 20 76 61 72 69 61 62 6c 65 20 73 69 7a produce.a.header.of.variable.siz
4cc40 65 2e 20 54 68 65 20 67 7a 69 70 0a 20 20 20 20 20 68 65 61 64 65 72 20 68 61 73 20 32 20 66 69 e..The.gzip......header.has.2.fi
4cc60 65 6c 64 73 20 74 68 61 74 2c 20 69 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 62 65 69 6e 67 20 elds.that,.in.addition.to.being.
4cc80 6f 70 74 69 6f 6e 61 6c 2c 20 61 72 65 0a 20 20 20 20 20 7a 65 72 6f 2d 74 65 72 6d 69 6e 61 74 optional,.are......zero-terminat
4cca0 65 64 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 69 66 20 61 6e 79 20 62 79 74 65 20 ed..This.means.that.if.any.byte.
4ccc0 69 6e 73 69 64 65 20 74 68 65 20 66 69 65 6c 64 20 67 65 74 73 0a 20 20 20 20 20 7a 65 72 6f 65 inside.the.field.gets......zeroe
4cce0 64 2c 20 6f 72 20 69 66 20 74 68 65 20 74 65 72 6d 69 6e 61 74 69 6e 67 20 7a 65 72 6f 20 67 65 d,.or.if.the.terminating.zero.ge
4cd00 74 73 20 61 6c 74 65 72 65 64 2c 20 67 7a 69 70 20 77 6f 6e 27 74 20 62 65 20 61 62 6c 65 20 74 ts.altered,.gzip.won't.be.able.t
4cd20 6f 0a 20 20 20 20 20 66 69 6e 64 20 6e 65 69 74 68 65 72 20 74 68 65 20 68 65 61 64 65 72 20 43 o......find.neither.the.header.C
4cd40 52 43 20 6e 6f 72 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 62 6c 6f 63 6b 73 2e 0a 0a 27 RC.nor.the.compressed.blocks...'
4cd60 4f 70 74 69 6f 6e 61 6c 20 43 52 43 20 66 6f 72 20 74 68 65 20 68 65 61 64 65 72 27 0a 20 20 20 Optional.CRC.for.the.header'....
4cd80 20 20 55 73 69 6e 67 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 43 52 43 20 66 6f 72 20 74 68 65 20 ..Using.an.optional.CRC.for.the.
4cda0 68 65 61 64 65 72 20 63 69 72 63 75 6d 76 65 6e 74 73 20 74 68 65 20 48 61 6d 6d 69 6e 67 20 64 header.circumvents.the.Hamming.d
4cdc0 69 73 74 61 6e 63 65 0a 20 20 20 20 20 28 48 44 29 20 6f 66 20 74 68 65 20 43 52 43 20 61 6e 64 istance......(HD).of.the.CRC.and
4cde0 20 6d 61 79 20 70 72 65 76 65 6e 74 20 74 68 65 20 65 78 74 72 61 63 74 69 6f 6e 20 6f 66 20 67 .may.prevent.the.extraction.of.g
4ce00 6f 6f 64 20 64 61 74 61 2e 20 46 6f 72 0a 20 20 20 20 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 74 ood.data..For......example,.if.t
4ce20 68 65 20 43 52 43 20 69 73 20 75 73 65 64 20 61 6e 64 20 74 68 65 20 62 69 74 20 65 6e 61 62 6c he.CRC.is.used.and.the.bit.enabl
4ce40 69 6e 67 20 69 74 20 69 73 20 72 65 73 65 74 20 62 79 20 61 20 62 69 74 0a 20 20 20 20 20 66 6c ing.it.is.reset.by.a.bit......fl
4ce60 69 70 2c 20 74 68 65 6e 20 74 68 65 20 68 65 61 64 65 72 20 73 65 65 6d 73 20 74 6f 20 62 65 20 ip,.then.the.header.seems.to.be.
4ce80 69 6e 74 61 63 74 20 28 69 6e 20 73 70 69 74 65 20 6f 66 20 62 65 69 6e 67 20 63 6f 72 72 75 70 intact.(in.spite.of.being.corrup
4cea0 74 29 0a 20 20 20 20 20 77 68 69 6c 65 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 62 6c 6f t)......while.the.compressed.blo
4cec0 63 6b 73 20 73 65 65 6d 20 74 6f 20 62 65 20 75 6e 72 65 63 6f 76 65 72 61 62 6c 65 20 28 69 6e cks.seem.to.be.unrecoverable.(in
4cee0 20 73 70 69 74 65 20 6f 66 0a 20 20 20 20 20 62 65 69 6e 67 20 69 6e 74 61 63 74 29 2e 0a 0a 27 .spite.of......being.intact)...'
4cf00 4d 65 74 61 64 61 74 61 27 0a 20 20 20 20 20 54 68 65 20 67 7a 69 70 20 66 6f 72 6d 61 74 20 73 Metadata'......The.gzip.format.s
4cf20 74 6f 72 65 73 20 73 6f 6d 65 20 6d 65 74 61 64 61 74 61 2c 20 6c 69 6b 65 20 74 68 65 20 6d 6f tores.some.metadata,.like.the.mo
4cf40 64 69 66 69 63 61 74 69 6f 6e 20 74 69 6d 65 20 6f 66 20 74 68 65 0a 20 20 20 20 20 6f 72 69 67 dification.time.of.the......orig
4cf60 69 6e 61 6c 20 66 69 6c 65 20 6f 72 20 74 68 65 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 inal.file.or.the.operating.syste
4cf80 6d 20 6f 6e 20 77 68 69 63 68 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 6f 6f 6b 20 70 6c 61 63 m.on.which.compression.took.plac
4cfa0 65 2e 0a 20 20 20 20 20 54 68 69 73 20 63 6f 6d 70 6c 69 63 61 74 65 73 20 72 65 70 72 6f 64 75 e.......This.complicates.reprodu
4cfc0 63 69 62 6c 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 28 6f 62 74 61 69 6e 69 6e 67 20 69 64 65 cible.compression.(obtaining.ide
4cfe0 6e 74 69 63 61 6c 0a 20 20 20 20 20 63 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 20 66 72 ntical......compressed.output.fr
4d000 6f 6d 20 69 64 65 6e 74 69 63 61 6c 20 69 6e 70 75 74 29 2e 0a 0a 0a 37 2e 31 2e 32 20 4c 7a 69 om.identical.input)....7.1.2.Lzi
4d020 70 20 66 6f 72 6d 61 74 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 20 6f 76 65 72 20 67 7a 69 70 20 p.format.improvements.over.gzip.
4d040 61 6e 64 20 62 7a 69 70 32 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d and.bzip2.----------------------
4d060 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 27 36 ----------------------------..'6
4d080 34 2d 62 69 74 20 73 69 7a 65 20 66 69 65 6c 64 27 0a 20 20 20 20 20 50 72 6f 62 61 62 6c 79 20 4-bit.size.field'......Probably.
4d0a0 74 68 65 20 6d 6f 73 74 20 66 72 65 71 75 65 6e 74 6c 79 20 72 65 70 6f 72 74 65 64 20 73 68 6f the.most.frequently.reported.sho
4d0c0 72 74 63 6f 6d 69 6e 67 20 6f 66 20 74 68 65 20 67 7a 69 70 20 66 6f 72 6d 61 74 0a 20 20 20 20 rtcoming.of.the.gzip.format.....
4d0e0 20 69 73 20 74 68 61 74 20 69 74 20 6f 6e 6c 79 20 73 74 6f 72 65 73 20 74 68 65 20 6c 65 61 73 .is.that.it.only.stores.the.leas
4d100 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 33 32 20 62 69 74 73 20 6f 66 20 74 68 65 0a 20 20 20 t.significant.32.bits.of.the....
4d120 20 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 2e 20 54 68 65 20 73 69 7a 65 20 6f 66 ..uncompressed.size..The.size.of
4d140 20 61 6e 79 20 66 69 6c 65 20 6c 61 72 67 65 72 20 6f 72 20 65 71 75 61 6c 20 74 68 61 6e 20 34 .any.file.larger.or.equal.than.4
4d160 20 47 69 42 0a 20 20 20 20 20 67 65 74 73 20 74 72 75 6e 63 61 74 65 64 2e 0a 0a 20 20 20 20 20 .GiB......gets.truncated........
4d180 42 7a 69 70 32 20 64 6f 65 73 20 6e 6f 74 20 73 74 6f 72 65 20 74 68 65 20 75 6e 63 6f 6d 70 72 Bzip2.does.not.store.the.uncompr
4d1a0 65 73 73 65 64 20 73 69 7a 65 20 6f 66 20 74 68 65 20 66 69 6c 65 2e 0a 0a 20 20 20 20 20 54 68 essed.size.of.the.file........Th
4d1c0 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 70 72 6f 76 69 64 65 73 20 61 20 36 34 2d 62 69 74 20 e.lzip.format.provides.a.64-bit.
4d1e0 66 69 65 6c 64 20 66 6f 72 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 2e field.for.the.uncompressed.size.
4d200 0a 20 20 20 20 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 6c 7a 69 70 20 70 72 6f 64 75 63 65 ......Additionally,.lzip.produce
4d220 73 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 6f 75 74 70 75 74 20 61 75 74 6f 6d 61 74 69 63 61 6c s.multimember.output.automatical
4d240 6c 79 20 77 68 65 6e 20 74 68 65 0a 20 20 20 20 20 73 69 7a 65 20 69 73 20 74 6f 6f 20 6c 61 72 ly.when.the......size.is.too.lar
4d260 67 65 20 66 6f 72 20 61 20 73 69 6e 67 6c 65 20 6d 65 6d 62 65 72 2c 20 61 6c 6c 6f 77 69 6e 67 ge.for.a.single.member,.allowing
4d280 20 66 6f 72 20 61 6e 20 75 6e 6c 69 6d 69 74 65 64 0a 20 20 20 20 20 75 6e 63 6f 6d 70 72 65 73 .for.an.unlimited......uncompres
4d2a0 73 65 64 20 73 69 7a 65 2e 0a 0a 27 44 69 73 74 72 69 62 75 74 65 64 20 69 6e 64 65 78 27 0a 20 sed.size...'Distributed.index'..
4d2c0 20 20 20 20 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 70 72 6f 76 69 64 65 73 20 61 20 64 ....The.lzip.format.provides.a.d
4d2e0 69 73 74 72 69 62 75 74 65 64 20 69 6e 64 65 78 20 74 68 61 74 2c 20 61 6d 6f 6e 67 20 6f 74 68 istributed.index.that,.among.oth
4d300 65 72 20 74 68 69 6e 67 73 2c 0a 20 20 20 20 20 61 6c 6c 6f 77 73 20 61 20 72 65 6c 69 61 62 6c er.things,......allows.a.reliabl
4d320 65 20 61 6e 64 20 65 66 66 69 63 69 65 6e 74 20 27 2d 2d 6c 69 73 74 27 20 6f 70 65 72 61 74 69 e.and.efficient.'--list'.operati
4d340 6f 6e 2c 20 68 65 6c 70 73 20 70 6c 7a 69 70 20 74 6f 0a 20 20 20 20 20 64 65 63 6f 6d 70 72 65 on,.helps.plzip.to......decompre
4d360 73 73 20 66 61 73 74 65 72 20 74 68 61 6e 20 70 69 67 7a 2c 20 61 6e 64 20 68 65 6c 70 73 20 6c ss.faster.than.pigz,.and.helps.l
4d380 7a 69 70 72 65 63 6f 76 65 72 20 64 6f 20 69 74 73 20 6a 6f 62 2e 20 4e 65 69 74 68 65 72 0a 20 ziprecover.do.its.job..Neither..
4d3a0 20 20 20 20 74 68 65 20 67 7a 69 70 20 66 6f 72 6d 61 74 20 6e 6f 72 20 74 68 65 20 62 7a 69 70 ....the.gzip.format.nor.the.bzip
4d3c0 32 20 66 6f 72 6d 61 74 20 64 6f 20 70 72 6f 76 69 64 65 20 61 6e 20 69 6e 64 65 78 2e 0a 0a 20 2.format.do.provide.an.index....
4d3e0 20 20 20 20 41 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 64 65 78 20 69 73 20 73 61 66 65 72 ....A.distributed.index.is.safer
4d400 20 61 6e 64 20 6d 6f 72 65 20 73 63 61 6c 61 62 6c 65 20 74 68 61 6e 20 61 20 6d 6f 6e 6f 6c 69 .and.more.scalable.than.a.monoli
4d420 74 68 69 63 0a 20 20 20 20 20 69 6e 64 65 78 2e 20 54 68 65 20 6d 6f 6e 6f 6c 69 74 68 69 63 20 thic......index..The.monolithic.
4d440 69 6e 64 65 78 20 69 6e 74 72 6f 64 75 63 65 73 20 61 20 73 69 6e 67 6c 65 20 70 6f 69 6e 74 20 index.introduces.a.single.point.
4d460 6f 66 20 66 61 69 6c 75 72 65 20 69 6e 0a 20 20 20 20 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 of.failure.in......the.compresse
4d480 64 20 66 69 6c 65 20 61 6e 64 20 6d 61 79 20 6c 69 6d 69 74 20 74 68 65 20 6e 75 6d 62 65 72 20 d.file.and.may.limit.the.number.
4d4a0 6f 66 20 6d 65 6d 62 65 72 73 20 6f 72 20 74 68 65 20 74 6f 74 61 6c 0a 20 20 20 20 20 75 6e 63 of.members.or.the.total......unc
4d4c0 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 2e 0a 0a 0a 37 2e 32 20 51 75 61 6c 69 74 79 20 6f 66 ompressed.size....7.2.Quality.of
4d4e0 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .implementation.================
4d500 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 4f 75 72 20 63 69 76 69 6c 69 7a 61 74 69 6f 6e 20 =============..Our.civilization.
4d520 64 65 70 65 6e 64 73 20 63 72 69 74 69 63 61 6c 6c 79 20 6f 6e 20 73 6f 66 74 77 61 72 65 3b 20 depends.critically.on.software;.
4d540 69 74 20 68 61 64 20 62 65 74 74 65 72 20 62 65 20 71 75 61 6c 69 74 79 0a 73 6f 66 74 77 61 72 it.had.better.be.quality.softwar
4d560 65 2e 0a 2d 2d 20 42 6a 61 72 6e 65 20 53 74 72 6f 75 73 74 72 75 70 0a 0a 27 41 63 63 75 72 61 e..--.Bjarne.Stroustrup..'Accura
4d580 74 65 20 61 6e 64 20 72 6f 62 75 73 74 20 65 72 72 6f 72 20 64 65 74 65 63 74 69 6f 6e 27 0a 20 te.and.robust.error.detection'..
4d5a0 20 20 20 20 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 70 72 6f 76 69 64 65 73 20 33 2d 66 ....The.lzip.format.provides.3-f
4d5c0 61 63 74 6f 72 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 63 6b 69 6e 67 2c 20 61 6e 64 20 74 68 actor.integrity.checking,.and.th
4d5e0 65 0a 20 20 20 20 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 73 20 72 65 70 6f 72 74 20 6d 69 73 6d e......decompressors.report.mism
4d600 61 74 63 68 65 73 20 69 6e 20 65 61 63 68 20 66 61 63 74 6f 72 20 73 65 70 61 72 61 74 65 6c 79 atches.in.each.factor.separately
4d620 2e 20 54 68 69 73 20 6d 65 74 68 6f 64 0a 20 20 20 20 20 64 65 74 65 63 74 73 20 6d 6f 73 74 20 ..This.method......detects.most.
4d640 66 61 6c 73 65 20 70 6f 73 69 74 69 76 65 73 20 66 6f 72 20 63 6f 72 72 75 70 74 69 6f 6e 2e 20 false.positives.for.corruption..
4d660 49 66 20 6a 75 73 74 20 6f 6e 65 20 62 79 74 65 20 69 6e 20 6f 6e 65 0a 20 20 20 20 20 66 61 63 If.just.one.byte.in.one......fac
4d680 74 6f 72 20 66 61 69 6c 73 20 62 75 74 20 74 68 65 20 6f 74 68 65 72 20 74 77 6f 20 66 61 63 74 tor.fails.but.the.other.two.fact
4d6a0 6f 72 73 20 6d 61 74 63 68 20 74 68 65 20 64 61 74 61 2c 20 69 74 20 70 72 6f 62 61 62 6c 79 0a ors.match.the.data,.it.probably.
4d6c0 20 20 20 20 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 64 61 74 61 20 61 72 65 20 69 6e 74 .....means.that.the.data.are.int
4d6e0 61 63 74 20 61 6e 64 20 74 68 65 20 63 6f 72 72 75 70 74 69 6f 6e 20 6a 75 73 74 20 61 66 66 65 act.and.the.corruption.just.affe
4d700 63 74 73 20 74 68 65 0a 20 20 20 20 20 6d 69 73 6d 61 74 63 68 69 6e 67 20 66 61 63 74 6f 72 20 cts.the......mismatching.factor.
4d720 28 43 52 43 2c 20 64 61 74 61 20 73 69 7a 65 2c 20 6f 72 20 6d 65 6d 62 65 72 20 73 69 7a 65 29 (CRC,.data.size,.or.member.size)
4d740 20 69 6e 20 74 68 65 20 6d 65 6d 62 65 72 0a 20 20 20 20 20 74 72 61 69 6c 65 72 2e 0a 0a 27 4d .in.the.member......trailer...'M
4d760 75 6c 74 69 70 6c 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 27 0a 20 20 20 20 20 4a 75 ultiple.implementations'......Ju
4d780 73 74 20 6c 69 6b 65 20 74 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 70 72 6f 76 69 64 65 73 st.like.the.lzip.format.provides
4d7a0 20 33 2d 66 61 63 74 6f 72 20 70 72 6f 74 65 63 74 69 6f 6e 20 61 67 61 69 6e 73 74 0a 20 20 20 .3-factor.protection.against....
4d7c0 20 20 75 6e 64 65 74 65 63 74 65 64 20 64 61 74 61 20 63 6f 72 72 75 70 74 69 6f 6e 2c 20 74 68 ..undetected.data.corruption,.th
4d7e0 65 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 6d 65 74 68 6f 64 6f 6c 6f 67 79 20 6f 66 20 74 68 65 e.development.methodology.of.the
4d800 20 6c 7a 69 70 0a 20 20 20 20 20 66 61 6d 69 6c 79 20 6f 66 20 63 6f 6d 70 72 65 73 73 6f 72 73 .lzip......family.of.compressors
4d820 20 70 72 6f 76 69 64 65 73 20 33 2d 66 61 63 74 6f 72 20 70 72 6f 74 65 63 74 69 6f 6e 20 61 67 .provides.3-factor.protection.ag
4d840 61 69 6e 73 74 20 75 6e 64 65 74 65 63 74 65 64 0a 20 20 20 20 20 70 72 6f 67 72 61 6d 6d 69 6e ainst.undetected......programmin
4d860 67 20 65 72 72 6f 72 73 2e 0a 0a 20 20 20 20 20 54 68 72 65 65 20 72 65 6c 61 74 65 64 20 62 75 g.errors........Three.related.bu
4d880 74 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 63 6f 6d 70 72 65 73 73 6f 72 20 69 6d 70 6c 65 6d 65 t.independent.compressor.impleme
4d8a0 6e 74 61 74 69 6f 6e 73 2c 20 6c 7a 69 70 2c 20 63 6c 7a 69 70 2c 0a 20 20 20 20 20 61 6e 64 20 ntations,.lzip,.clzip,......and.
4d8c0 6d 69 6e 69 6c 7a 69 70 2f 6c 7a 6c 69 62 2c 20 61 72 65 20 64 65 76 65 6c 6f 70 65 64 20 63 6f minilzip/lzlib,.are.developed.co
4d8e0 6e 63 75 72 72 65 6e 74 6c 79 2e 20 45 76 65 72 79 20 73 74 61 62 6c 65 20 72 65 6c 65 61 73 65 ncurrently..Every.stable.release
4d900 0a 20 20 20 20 20 6f 66 20 61 6e 79 20 6f 66 20 74 68 65 6d 20 69 73 20 74 65 73 74 65 64 20 74 ......of.any.of.them.is.tested.t
4d920 6f 20 63 68 65 63 6b 20 74 68 61 74 20 69 74 20 70 72 6f 64 75 63 65 73 20 69 64 65 6e 74 69 63 o.check.that.it.produces.identic
4d940 61 6c 20 6f 75 74 70 75 74 20 74 6f 0a 20 20 20 20 20 74 68 65 20 6f 74 68 65 72 20 74 77 6f 2e al.output.to......the.other.two.
4d960 20 54 68 69 73 20 63 6f 72 72 6f 62 6f 72 61 74 65 73 20 74 68 61 74 20 61 6c 6c 20 74 68 72 65 .This.corroborates.that.all.thre
4d980 65 20 69 6d 70 6c 65 6d 65 6e 74 20 74 68 65 20 73 61 6d 65 0a 20 20 20 20 20 61 6c 67 6f 72 69 e.implement.the.same......algori
4d9a0 74 68 6d 2c 20 61 6e 64 20 6d 61 6b 65 73 20 69 74 20 75 6e 6c 69 6b 65 6c 79 20 74 68 61 74 20 thm,.and.makes.it.unlikely.that.
4d9c0 61 6e 79 20 6f 66 20 74 68 65 6d 20 6d 61 79 20 63 6f 6e 74 61 69 6e 20 73 65 72 69 6f 75 73 0a any.of.them.may.contain.serious.
4d9e0 20 20 20 20 20 75 6e 64 69 73 63 6f 76 65 72 65 64 20 65 72 72 6f 72 73 2e 20 49 6e 20 66 61 63 .....undiscovered.errors..In.fac
4da00 74 2c 20 6e 6f 20 65 72 72 6f 72 73 20 68 61 76 65 20 62 65 65 6e 20 64 69 73 63 6f 76 65 72 65 t,.no.errors.have.been.discovere
4da20 64 20 69 6e 20 6c 7a 69 70 0a 20 20 20 20 20 73 69 6e 63 65 20 32 30 30 39 2e 0a 0a 20 20 20 20 d.in.lzip......since.2009.......
4da40 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 74 68 65 20 74 68 72 65 65 20 69 6d 70 6c 65 6d 65 .Additionally,.the.three.impleme
4da60 6e 74 61 74 69 6f 6e 73 20 68 61 76 65 20 62 65 65 6e 20 65 78 74 65 6e 73 69 76 65 6c 79 20 74 ntations.have.been.extensively.t
4da80 65 73 74 65 64 0a 20 20 20 20 20 77 69 74 68 20 75 6e 7a 63 72 61 73 68 2c 20 76 61 6c 67 72 69 ested......with.unzcrash,.valgri
4daa0 6e 64 2c 20 61 6e 64 20 27 61 6d 65 72 69 63 61 6e 20 66 75 7a 7a 79 20 6c 6f 70 27 20 77 69 74 nd,.and.'american.fuzzy.lop'.wit
4dac0 68 6f 75 74 20 66 69 6e 64 69 6e 67 20 61 0a 20 20 20 20 20 73 69 6e 67 6c 65 20 76 75 6c 6e 65 hout.finding.a......single.vulne
4dae0 72 61 62 69 6c 69 74 79 20 6f 72 20 66 61 6c 73 65 20 6e 65 67 61 74 69 76 65 2e 20 2a 4e 6f 74 rability.or.false.negative..*Not
4db00 65 20 55 6e 7a 63 72 61 73 68 3a 0a 20 20 20 20 20 28 6c 7a 69 70 72 65 63 6f 76 65 72 29 55 6e e.Unzcrash:......(lziprecover)Un
4db20 7a 63 72 61 73 68 2e 0a 0a 27 44 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 27 0a 20 20 20 20 20 zcrash...'Dictionary.size'......
4db40 4c 7a 69 70 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 61 64 61 70 74 73 20 74 68 65 20 64 69 Lzip.automatically.adapts.the.di
4db60 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 74 6f 20 74 68 65 20 73 69 7a 65 20 6f 66 20 65 61 63 ctionary.size.to.the.size.of.eac
4db80 68 20 66 69 6c 65 2e 0a 20 20 20 20 20 49 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 72 65 64 75 h.file.......In.addition.to.redu
4dba0 63 69 6e 67 20 74 68 65 20 61 6d 6f 75 6e 74 20 6f 66 20 6d 65 6d 6f 72 79 20 72 65 71 75 69 72 cing.the.amount.of.memory.requir
4dbc0 65 64 20 66 6f 72 0a 20 20 20 20 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2c 20 74 68 69 73 20 ed.for......decompression,.this.
4dbe0 66 65 61 74 75 72 65 20 61 6c 73 6f 20 6d 69 6e 69 6d 69 7a 65 73 20 74 68 65 20 70 72 6f 62 61 feature.also.minimizes.the.proba
4dc00 62 69 6c 69 74 79 20 6f 66 20 62 65 69 6e 67 0a 20 20 20 20 20 61 66 66 65 63 74 65 64 20 62 79 bility.of.being......affected.by
4dc20 20 52 41 4d 20 65 72 72 6f 72 73 20 64 75 72 69 6e 67 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0a .RAM.errors.during.compression..
4dc40 0a 27 45 78 69 74 20 73 74 61 74 75 73 27 0a 20 20 20 20 20 52 65 74 75 72 6e 69 6e 67 20 61 20 .'Exit.status'......Returning.a.
4dc60 77 61 72 6e 69 6e 67 20 73 74 61 74 75 73 20 6f 66 20 32 20 69 73 20 61 20 64 65 73 69 67 6e 20 warning.status.of.2.is.a.design.
4dc80 66 6c 61 77 20 6f 66 20 63 6f 6d 70 72 65 73 73 20 74 68 61 74 0a 20 20 20 20 20 6c 65 61 6b 65 flaw.of.compress.that......leake
4dca0 64 20 69 6e 74 6f 20 74 68 65 20 64 65 73 69 67 6e 20 6f 66 20 67 7a 69 70 2e 20 42 6f 74 68 20 d.into.the.design.of.gzip..Both.
4dcc0 62 7a 69 70 32 20 61 6e 64 20 6c 7a 69 70 20 61 72 65 20 66 72 65 65 20 66 72 6f 6d 20 74 68 69 bzip2.and.lzip.are.free.from.thi
4dce0 73 0a 20 20 20 20 20 66 6c 61 77 2e 0a 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 6f s......flaw......File:.lzip.info
4dd00 2c 20 20 4e 6f 64 65 3a 20 41 6c 67 6f 72 69 74 68 6d 2c 20 20 4e 65 78 74 3a 20 54 72 61 69 6c ,..Node:.Algorithm,..Next:.Trail
4dd20 69 6e 67 20 64 61 74 61 2c 20 20 50 72 65 76 3a 20 51 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e ing.data,..Prev:.Quality.assuran
4dd40 63 65 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 38 20 41 6c 67 6f 72 69 74 68 6d 0a 2a 2a 2a 2a 2a 2a ce,..Up:.Top..8.Algorithm.******
4dd60 2a 2a 2a 2a 2a 0a 0a 49 6e 20 73 70 69 74 65 20 6f 66 20 69 74 73 20 6e 61 6d 65 20 28 4c 65 6d *****..In.spite.of.its.name.(Lem
4dd80 70 65 6c 2d 5a 69 76 2d 4d 61 72 6b 6f 76 20 63 68 61 69 6e 2d 41 6c 67 6f 72 69 74 68 6d 29 2c pel-Ziv-Markov.chain-Algorithm),
4dda0 20 4c 5a 4d 41 20 69 73 20 6e 6f 74 20 61 0a 63 6f 6e 63 72 65 74 65 20 61 6c 67 6f 72 69 74 68 .LZMA.is.not.a.concrete.algorith
4ddc0 6d 3b 20 69 74 20 69 73 20 6d 6f 72 65 20 6c 69 6b 65 20 22 61 6e 79 20 61 6c 67 6f 72 69 74 68 m;.it.is.more.like."any.algorith
4dde0 6d 20 75 73 69 6e 67 20 74 68 65 20 4c 5a 4d 41 20 63 6f 64 69 6e 67 0a 73 63 68 65 6d 65 22 2e m.using.the.LZMA.coding.scheme".
4de00 20 4c 5a 4d 41 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 63 6f 6e 73 69 73 74 73 20 69 6e 20 64 65 .LZMA.compression.consists.in.de
4de20 73 63 72 69 62 69 6e 67 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 61 scribing.the.uncompressed.data.a
4de40 73 20 61 0a 73 75 63 63 65 73 73 69 6f 6e 20 6f 66 20 63 6f 64 69 6e 67 20 73 65 71 75 65 6e 63 s.a.succession.of.coding.sequenc
4de60 65 73 20 66 72 6f 6d 20 74 68 65 20 73 65 74 20 73 68 6f 77 6e 20 69 6e 20 53 65 63 74 69 6f 6e es.from.the.set.shown.in.Section
4de80 20 27 57 68 61 74 20 69 73 0a 63 6f 64 65 64 27 20 28 2a 6e 6f 74 65 20 77 68 61 74 2d 69 73 2d .'What.is.coded'.(*note.what-is-
4dea0 63 6f 64 65 64 3a 3a 29 2c 20 61 6e 64 20 74 68 65 6e 20 65 6e 63 6f 64 69 6e 67 20 74 68 65 6d coded::),.and.then.encoding.them
4dec0 20 75 73 69 6e 67 20 61 20 72 61 6e 67 65 0a 65 6e 63 6f 64 65 72 2e 20 46 6f 72 20 65 78 61 6d .using.a.range.encoder..For.exam
4dee0 70 6c 65 2c 20 74 68 65 20 6f 70 74 69 6f 6e 20 27 2d 30 27 20 6f 66 20 6c 7a 69 70 20 75 73 65 ple,.the.option.'-0'.of.lzip.use
4df00 73 20 74 68 65 20 73 63 68 65 6d 65 20 69 6e 20 61 6c 6d 6f 73 74 20 74 68 65 0a 73 69 6d 70 6c s.the.scheme.in.almost.the.simpl
4df20 65 73 74 20 77 61 79 20 70 6f 73 73 69 62 6c 65 3b 20 69 73 73 75 69 6e 67 20 74 68 65 20 6c 6f est.way.possible;.issuing.the.lo
4df40 6e 67 65 73 74 20 6d 61 74 63 68 20 69 74 20 63 61 6e 20 66 69 6e 64 2c 20 6f 72 20 61 20 6c 69 ngest.match.it.can.find,.or.a.li
4df60 74 65 72 61 6c 0a 62 79 74 65 20 69 66 20 69 74 20 63 61 6e 27 74 20 66 69 6e 64 20 61 20 6d 61 teral.byte.if.it.can't.find.a.ma
4df80 74 63 68 2e 20 49 6e 76 65 72 73 65 6c 79 2c 20 61 20 6d 6f 72 65 20 65 6c 61 62 6f 72 61 74 65 tch..Inversely,.a.more.elaborate
4dfa0 20 77 61 79 20 6f 66 20 66 69 6e 64 69 6e 67 0a 63 6f 64 69 6e 67 20 73 65 71 75 65 6e 63 65 73 .way.of.finding.coding.sequences
4dfc0 20 6f 66 20 6d 69 6e 69 6d 75 6d 20 73 69 7a 65 20 74 68 61 6e 20 74 68 65 20 6f 6e 65 20 63 75 .of.minimum.size.than.the.one.cu
4dfe0 72 72 65 6e 74 6c 79 20 75 73 65 64 20 62 79 20 6c 7a 69 70 20 63 6f 75 6c 64 0a 62 65 20 64 65 rrently.used.by.lzip.could.be.de
4e000 76 65 6c 6f 70 65 64 2c 20 61 6e 64 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 73 65 71 75 65 veloped,.and.the.resulting.seque
4e020 6e 63 65 20 63 6f 75 6c 64 20 61 6c 73 6f 20 62 65 20 63 6f 64 65 64 20 75 73 69 6e 67 20 74 68 nce.could.also.be.coded.using.th
4e040 65 20 4c 5a 4d 41 0a 63 6f 64 69 6e 67 20 73 63 68 65 6d 65 2e 0a 0a 20 20 20 4c 7a 69 70 20 63 e.LZMA.coding.scheme......Lzip.c
4e060 75 72 72 65 6e 74 6c 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74 77 6f 20 76 61 72 69 61 6e 74 73 urrently.implements.two.variants
4e080 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 61 6c 67 6f 72 69 74 68 6d 3a 20 66 61 73 74 20 28 75 73 .of.the.LZMA.algorithm:.fast.(us
4e0a0 65 64 0a 62 79 20 6f 70 74 69 6f 6e 20 27 2d 30 27 29 20 61 6e 64 20 6e 6f 72 6d 61 6c 20 28 75 ed.by.option.'-0').and.normal.(u
4e0c0 73 65 64 20 62 79 20 61 6c 6c 20 6f 74 68 65 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 sed.by.all.other.compression.lev
4e0e0 65 6c 73 29 2e 0a 0a 20 20 20 54 68 65 20 68 69 67 68 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f els)......The.high.compression.o
4e100 66 20 4c 5a 4d 41 20 63 6f 6d 65 73 20 66 72 6f 6d 20 63 6f 6d 62 69 6e 69 6e 67 20 74 77 6f 20 f.LZMA.comes.from.combining.two.
4e120 62 61 73 69 63 2c 20 77 65 6c 6c 2d 70 72 6f 76 65 6e 0a 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 basic,.well-proven.compression.i
4e140 64 65 61 73 3a 20 73 6c 69 64 69 6e 67 20 64 69 63 74 69 6f 6e 61 72 69 65 73 20 28 4c 5a 37 37 deas:.sliding.dictionaries.(LZ77
4e160 29 20 61 6e 64 20 4d 61 72 6b 6f 76 20 6d 6f 64 65 6c 73 20 28 74 68 65 20 74 68 69 6e 67 0a 75 ).and.Markov.models.(the.thing.u
4e180 73 65 64 20 62 79 20 65 76 65 72 79 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 61 6c 67 6f 72 69 74 sed.by.every.compression.algorit
4e1a0 68 6d 20 74 68 61 74 20 75 73 65 73 20 61 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 20 6f 72 20 hm.that.uses.a.range.encoder.or.
4e1c0 73 69 6d 69 6c 61 72 0a 6f 72 64 65 72 2d 30 20 65 6e 74 72 6f 70 79 20 63 6f 64 65 72 20 61 73 similar.order-0.entropy.coder.as
4e1e0 20 69 74 73 20 6c 61 73 74 20 73 74 61 67 65 29 20 77 69 74 68 20 73 65 67 72 65 67 61 74 69 6f .its.last.stage).with.segregatio
4e200 6e 20 6f 66 20 63 6f 6e 74 65 78 74 73 0a 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 77 68 61 74 20 n.of.contexts.according.to.what.
4e220 74 68 65 20 62 69 74 73 20 61 72 65 20 75 73 65 64 20 66 6f 72 2e 0a 0a 20 20 20 4c 7a 69 70 20 the.bits.are.used.for......Lzip.
4e240 69 73 20 61 20 74 77 6f 20 73 74 61 67 65 20 63 6f 6d 70 72 65 73 73 6f 72 2e 20 54 68 65 20 66 is.a.two.stage.compressor..The.f
4e260 69 72 73 74 20 73 74 61 67 65 20 69 73 20 61 20 4c 65 6d 70 65 6c 2d 5a 69 76 20 63 6f 64 65 72 irst.stage.is.a.Lempel-Ziv.coder
4e280 2c 0a 77 68 69 63 68 20 72 65 64 75 63 65 73 20 72 65 64 75 6e 64 61 6e 63 79 20 62 79 20 74 72 ,.which.reduces.redundancy.by.tr
4e2a0 61 6e 73 6c 61 74 69 6e 67 20 63 68 75 6e 6b 73 20 6f 66 20 64 61 74 61 20 74 6f 20 74 68 65 69 anslating.chunks.of.data.to.thei
4e2c0 72 0a 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 64 69 73 74 61 6e 63 65 2d 6c 65 6e 67 74 68 20 r.corresponding.distance-length.
4e2e0 70 61 69 72 73 2e 20 54 68 65 20 73 65 63 6f 6e 64 20 73 74 61 67 65 20 69 73 20 61 20 72 61 6e pairs..The.second.stage.is.a.ran
4e300 67 65 20 65 6e 63 6f 64 65 72 0a 74 68 61 74 20 75 73 65 73 20 61 20 64 69 66 66 65 72 65 6e 74 ge.encoder.that.uses.a.different
4e320 20 70 72 6f 62 61 62 69 6c 69 74 79 20 6d 6f 64 65 6c 20 66 6f 72 20 65 61 63 68 20 74 79 70 65 .probability.model.for.each.type
4e340 20 6f 66 20 64 61 74 61 3a 20 64 69 73 74 61 6e 63 65 73 2c 0a 6c 65 6e 67 74 68 73 2c 20 6c 69 .of.data:.distances,.lengths,.li
4e360 74 65 72 61 6c 20 62 79 74 65 73 2c 20 65 74 63 2e 0a 0a 20 20 20 48 65 72 65 20 69 73 20 68 6f teral.bytes,.etc......Here.is.ho
4e380 77 20 69 74 20 77 6f 72 6b 73 2c 20 73 74 65 70 20 62 79 20 73 74 65 70 3a 0a 0a 20 20 20 31 29 w.it.works,.step.by.step:.....1)
4e3a0 20 54 68 65 20 6d 65 6d 62 65 72 20 68 65 61 64 65 72 20 69 73 20 77 72 69 74 74 65 6e 20 74 6f .The.member.header.is.written.to
4e3c0 20 74 68 65 20 6f 75 74 70 75 74 20 73 74 72 65 61 6d 2e 0a 0a 20 20 20 32 29 20 54 68 65 20 66 .the.output.stream......2).The.f
4e3e0 69 72 73 74 20 62 79 74 65 20 69 73 20 63 6f 64 65 64 20 6c 69 74 65 72 61 6c 6c 79 2c 20 62 65 irst.byte.is.coded.literally,.be
4e400 63 61 75 73 65 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 70 72 65 76 69 6f 75 73 0a 62 79 74 65 cause.there.are.no.previous.byte
4e420 73 20 74 6f 20 77 68 69 63 68 20 74 68 65 20 6d 61 74 63 68 20 66 69 6e 64 65 72 20 63 61 6e 20 s.to.which.the.match.finder.can.
4e440 72 65 66 65 72 20 74 6f 2e 0a 0a 20 20 20 33 29 20 54 68 65 20 6d 61 69 6e 20 65 6e 63 6f 64 65 refer.to......3).The.main.encode
4e460 72 20 61 64 76 61 6e 63 65 73 20 74 6f 20 74 68 65 20 6e 65 78 74 20 62 79 74 65 20 69 6e 20 74 r.advances.to.the.next.byte.in.t
4e480 68 65 20 69 6e 70 75 74 20 64 61 74 61 20 61 6e 64 0a 63 61 6c 6c 73 20 74 68 65 20 6d 61 74 63 he.input.data.and.calls.the.matc
4e4a0 68 20 66 69 6e 64 65 72 2e 0a 0a 20 20 20 34 29 20 54 68 65 20 6d 61 74 63 68 20 66 69 6e 64 65 h.finder......4).The.match.finde
4e4c0 72 20 66 69 6c 6c 73 20 61 6e 20 61 72 72 61 79 20 77 69 74 68 20 74 68 65 20 6d 69 6e 69 6d 75 r.fills.an.array.with.the.minimu
4e4e0 6d 20 64 69 73 74 61 6e 63 65 73 20 62 65 66 6f 72 65 20 74 68 65 0a 63 75 72 72 65 6e 74 20 62 m.distances.before.the.current.b
4e500 79 74 65 20 77 68 65 72 65 20 61 20 6d 61 74 63 68 20 6f 66 20 61 20 67 69 76 65 6e 20 6c 65 6e yte.where.a.match.of.a.given.len
4e520 67 74 68 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 2e 0a 0a 20 20 20 35 29 20 47 6f 20 62 61 63 6b gth.can.be.found......5).Go.back
4e540 20 74 6f 20 73 74 65 70 20 33 20 75 6e 74 69 6c 20 61 20 73 65 71 75 65 6e 63 65 20 28 66 6f 72 .to.step.3.until.a.sequence.(for
4e560 6d 65 64 20 6f 66 20 70 61 69 72 73 2c 20 72 65 70 65 61 74 65 64 0a 64 69 73 74 61 6e 63 65 73 med.of.pairs,.repeated.distances
4e580 2c 20 61 6e 64 20 6c 69 74 65 72 61 6c 20 62 79 74 65 73 29 20 6f 66 20 6d 69 6e 69 6d 75 6d 20 ,.and.literal.bytes).of.minimum.
4e5a0 70 72 69 63 65 20 68 61 73 20 62 65 65 6e 20 66 6f 72 6d 65 64 2e 20 57 68 65 72 65 20 74 68 65 price.has.been.formed..Where.the
4e5c0 0a 70 72 69 63 65 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 .price.represents.the.number.of.
4e5e0 6f 75 74 70 75 74 20 62 69 74 73 20 70 72 6f 64 75 63 65 64 2e 0a 0a 20 20 20 36 29 20 54 68 65 output.bits.produced......6).The
4e600 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 20 65 6e 63 6f 64 65 73 20 74 68 65 20 73 65 71 75 65 .range.encoder.encodes.the.seque
4e620 6e 63 65 20 70 72 6f 64 75 63 65 64 20 62 79 20 74 68 65 20 6d 61 69 6e 20 65 6e 63 6f 64 65 72 nce.produced.by.the.main.encoder
4e640 0a 61 6e 64 20 73 65 6e 64 73 20 74 68 65 20 62 79 74 65 73 20 70 72 6f 64 75 63 65 64 20 74 6f .and.sends.the.bytes.produced.to
4e660 20 74 68 65 20 6f 75 74 70 75 74 20 73 74 72 65 61 6d 2e 0a 0a 20 20 20 37 29 20 47 6f 20 62 61 .the.output.stream......7).Go.ba
4e680 63 6b 20 74 6f 20 73 74 65 70 20 33 20 75 6e 74 69 6c 20 74 68 65 20 69 6e 70 75 74 20 64 61 74 ck.to.step.3.until.the.input.dat
4e6a0 61 20 61 72 65 20 66 69 6e 69 73 68 65 64 20 6f 72 20 75 6e 74 69 6c 20 74 68 65 0a 6d 65 6d 62 a.are.finished.or.until.the.memb
4e6c0 65 72 20 6f 72 20 76 6f 6c 75 6d 65 20 73 69 7a 65 20 6c 69 6d 69 74 73 20 61 72 65 20 72 65 61 er.or.volume.size.limits.are.rea
4e6e0 63 68 65 64 2e 0a 0a 20 20 20 38 29 20 54 68 65 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 20 69 ched......8).The.range.encoder.i
4e700 73 20 66 6c 75 73 68 65 64 2e 0a 0a 20 20 20 39 29 20 54 68 65 20 6d 65 6d 62 65 72 20 74 72 61 s.flushed......9).The.member.tra
4e720 69 6c 65 72 20 69 73 20 77 72 69 74 74 65 6e 20 74 6f 20 74 68 65 20 6f 75 74 70 75 74 20 73 74 iler.is.written.to.the.output.st
4e740 72 65 61 6d 2e 0a 0a 20 20 20 31 30 29 20 49 66 20 74 68 65 72 65 20 61 72 65 20 6d 6f 72 65 20 ream......10).If.there.are.more.
4e760 64 61 74 61 20 74 6f 20 63 6f 6d 70 72 65 73 73 2c 20 67 6f 20 62 61 63 6b 20 74 6f 20 73 74 65 data.to.compress,.go.back.to.ste
4e780 70 20 31 2e 0a 0a 0a 20 20 20 44 75 72 69 6e 67 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2c 20 6c 7a p.1.......During.compression,.lz
4e7a0 69 70 20 72 65 61 64 73 20 64 61 74 61 20 69 6e 20 6c 61 72 67 65 20 62 6c 6f 63 6b 73 20 28 6f ip.reads.data.in.large.blocks.(o
4e7c0 6e 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 0a 61 74 20 61 20 74 69 6d 65 29 2e 20 54 ne.dictionary.size.at.a.time)..T
4e7e0 68 65 72 65 66 6f 72 65 20 69 74 20 6d 61 79 20 62 6c 6f 63 6b 20 66 6f 72 20 75 70 20 74 6f 20 herefore.it.may.block.for.up.to.
4e800 74 65 6e 73 20 6f 66 20 73 65 63 6f 6e 64 73 20 61 6e 79 20 70 72 6f 63 65 73 73 0a 66 65 65 64 tens.of.seconds.any.process.feed
4e820 69 6e 67 20 64 61 74 61 20 74 6f 20 69 74 20 74 68 72 6f 75 67 68 20 61 20 70 69 70 65 2e 20 54 ing.data.to.it.through.a.pipe..T
4e840 68 69 73 20 69 73 20 6e 6f 72 6d 61 6c 2e 20 54 68 65 20 62 6c 6f 63 6b 69 6e 67 20 69 6e 74 65 his.is.normal..The.blocking.inte
4e860 72 76 61 6c 73 0a 67 65 74 20 6c 6f 6e 67 65 72 20 77 69 74 68 20 68 69 67 68 65 72 20 63 6f 6d rvals.get.longer.with.higher.com
4e880 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 73 20 62 65 63 61 75 73 65 20 64 69 63 74 69 6f 6e 61 pression.levels.because.dictiona
4e8a0 72 79 20 73 69 7a 65 20 69 6e 63 72 65 61 73 65 73 0a 28 61 6e 64 20 63 6f 6d 70 72 65 73 73 69 ry.size.increases.(and.compressi
4e8c0 6f 6e 20 73 70 65 65 64 20 64 65 63 72 65 61 73 65 73 29 20 77 69 74 68 20 63 6f 6d 70 72 65 73 on.speed.decreases).with.compres
4e8e0 73 69 6f 6e 20 6c 65 76 65 6c 2e 0a 0a 54 68 65 20 69 64 65 61 73 20 65 6d 62 6f 64 69 65 64 20 sion.level...The.ideas.embodied.
4e900 69 6e 20 6c 7a 69 70 20 61 72 65 20 64 75 65 20 74 6f 20 28 61 74 20 6c 65 61 73 74 29 20 74 68 in.lzip.are.due.to.(at.least).th
4e920 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 65 6f 70 6c 65 3a 0a 41 62 72 61 68 61 6d 20 4c 65 6d 70 e.following.people:.Abraham.Lemp
4e940 65 6c 20 61 6e 64 20 4a 61 63 6f 62 20 5a 69 76 20 28 66 6f 72 20 74 68 65 20 4c 5a 20 61 6c 67 el.and.Jacob.Ziv.(for.the.LZ.alg
4e960 6f 72 69 74 68 6d 29 2c 20 41 6e 64 72 65 69 20 4d 61 72 6b 6f 76 20 28 66 6f 72 20 74 68 65 0a orithm),.Andrei.Markov.(for.the.
4e980 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 4d 61 72 6b 6f 76 20 63 68 61 69 6e 73 29 2c 20 47 2e definition.of.Markov.chains),.G.
4e9a0 4e 2e 4e 2e 20 4d 61 72 74 69 6e 20 28 66 6f 72 20 74 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 N.N..Martin.(for.the.definition.
4e9c0 6f 66 20 72 61 6e 67 65 0a 65 6e 63 6f 64 69 6e 67 29 2c 20 49 67 6f 72 20 50 61 76 6c 6f 76 20 of.range.encoding),.Igor.Pavlov.
4e9e0 28 66 6f 72 20 70 75 74 74 69 6e 67 20 61 6c 6c 20 74 68 65 20 61 62 6f 76 65 20 74 6f 67 65 74 (for.putting.all.the.above.toget
4ea00 68 65 72 20 69 6e 20 4c 5a 4d 41 29 2c 20 61 6e 64 0a 4a 75 6c 69 61 6e 20 53 65 77 61 72 64 20 her.in.LZMA),.and.Julian.Seward.
4ea20 28 66 6f 72 20 62 7a 69 70 32 27 73 20 43 4c 49 29 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 (for.bzip2's.CLI).....File:.lzip
4ea40 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 2c 20 20 4e 65 .info,..Node:.Trailing.data,..Ne
4ea60 78 74 3a 20 45 78 61 6d 70 6c 65 73 2c 20 20 50 72 65 76 3a 20 41 6c 67 6f 72 69 74 68 6d 2c 20 xt:.Examples,..Prev:.Algorithm,.
4ea80 20 55 70 3a 20 54 6f 70 0a 0a 39 20 45 78 74 72 61 20 64 61 74 61 20 61 70 70 65 6e 64 65 64 20 .Up:.Top..9.Extra.data.appended.
4eaa0 74 6f 20 74 68 65 20 66 69 6c 65 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a to.the.file.********************
4eac0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 53 6f 6d 65 74 69 6d 65 73 20 65 78 74 72 61 20 64 *************..Sometimes.extra.d
4eae0 61 74 61 20 61 72 65 20 66 6f 75 6e 64 20 61 70 70 65 6e 64 65 64 20 74 6f 20 61 20 6c 7a 69 70 ata.are.found.appended.to.a.lzip
4eb00 20 66 69 6c 65 20 61 66 74 65 72 20 74 68 65 20 6c 61 73 74 0a 6d 65 6d 62 65 72 2e 20 53 75 63 .file.after.the.last.member..Suc
4eb20 68 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 6d 61 79 20 62 65 3a 0a 0a 20 20 20 2a 20 50 61 h.trailing.data.may.be:.....*.Pa
4eb40 64 64 69 6e 67 20 61 64 64 65 64 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 66 69 6c 65 20 73 69 7a dding.added.to.make.the.file.siz
4eb60 65 20 61 20 6d 75 6c 74 69 70 6c 65 20 6f 66 20 73 6f 6d 65 20 62 6c 6f 63 6b 20 73 69 7a 65 2c e.a.multiple.of.some.block.size,
4eb80 20 66 6f 72 0a 20 20 20 20 20 65 78 61 6d 70 6c 65 20 77 68 65 6e 20 77 72 69 74 69 6e 67 20 74 .for......example.when.writing.t
4eba0 6f 20 61 20 74 61 70 65 2e 20 49 74 20 69 73 20 73 61 66 65 20 74 6f 20 61 70 70 65 6e 64 20 61 o.a.tape..It.is.safe.to.append.a
4ebc0 6e 79 20 61 6d 6f 75 6e 74 20 6f 66 0a 20 20 20 20 20 70 61 64 64 69 6e 67 20 7a 65 72 6f 20 62 ny.amount.of......padding.zero.b
4ebe0 79 74 65 73 20 74 6f 20 61 20 6c 7a 69 70 20 66 69 6c 65 2e 0a 0a 20 20 20 2a 20 55 73 65 66 75 ytes.to.a.lzip.file......*.Usefu
4ec00 6c 20 64 61 74 61 20 61 64 64 65 64 20 62 79 20 74 68 65 20 75 73 65 72 3b 20 61 6e 20 27 45 6e l.data.added.by.the.user;.an.'En
4ec20 64 20 4f 66 20 46 69 6c 65 27 20 73 74 72 69 6e 67 20 28 74 6f 20 63 68 65 63 6b 20 74 68 61 74 d.Of.File'.string.(to.check.that
4ec40 0a 20 20 20 20 20 74 68 65 20 66 69 6c 65 20 68 61 73 20 6e 6f 74 20 62 65 65 6e 20 74 72 75 6e ......the.file.has.not.been.trun
4ec60 63 61 74 65 64 29 2c 20 61 20 63 72 79 70 74 6f 67 72 61 70 68 69 63 61 6c 6c 79 20 73 65 63 75 cated),.a.cryptographically.secu
4ec80 72 65 20 68 61 73 68 2c 20 61 0a 20 20 20 20 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 66 re.hash,.a......description.of.f
4eca0 69 6c 65 20 63 6f 6e 74 65 6e 74 73 2c 20 65 74 63 2e 20 49 74 20 69 73 20 73 61 66 65 20 74 6f ile.contents,.etc..It.is.safe.to
4ecc0 20 61 70 70 65 6e 64 20 61 6e 79 20 61 6d 6f 75 6e 74 20 6f 66 0a 20 20 20 20 20 74 65 78 74 20 .append.any.amount.of......text.
4ece0 74 6f 20 61 20 6c 7a 69 70 20 66 69 6c 65 20 61 73 20 6c 6f 6e 67 20 61 73 20 6e 6f 6e 65 20 6f to.a.lzip.file.as.long.as.none.o
4ed00 66 20 74 68 65 20 66 69 72 73 74 20 66 6f 75 72 20 62 79 74 65 73 20 6f 66 20 74 68 65 0a 20 20 f.the.first.four.bytes.of.the...
4ed20 20 20 20 74 65 78 74 20 6d 61 74 63 68 65 73 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e ...text.matches.the.correspondin
4ed40 67 20 62 79 74 65 20 69 6e 20 74 68 65 20 73 74 72 69 6e 67 20 22 4c 5a 49 50 22 2c 20 61 6e 64 g.byte.in.the.string."LZIP",.and
4ed60 20 74 68 65 20 74 65 78 74 0a 20 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 .the.text......does.not.contain.
4ed80 61 6e 79 20 7a 65 72 6f 20 62 79 74 65 73 20 28 6e 75 6c 6c 20 63 68 61 72 61 63 74 65 72 73 29 any.zero.bytes.(null.characters)
4eda0 2e 20 4e 6f 6e 7a 65 72 6f 20 62 79 74 65 73 20 61 6e 64 0a 20 20 20 20 20 7a 65 72 6f 20 62 79 ..Nonzero.bytes.and......zero.by
4edc0 74 65 73 20 63 61 6e 27 74 20 62 65 20 73 61 66 65 6c 79 20 6d 69 78 65 64 20 69 6e 20 74 72 61 tes.can't.be.safely.mixed.in.tra
4ede0 69 6c 69 6e 67 20 64 61 74 61 2e 0a 0a 20 20 20 2a 20 47 61 72 62 61 67 65 20 61 64 64 65 64 20 iling.data......*.Garbage.added.
4ee00 62 79 20 73 6f 6d 65 20 6e 6f 74 20 74 6f 74 61 6c 6c 79 20 73 75 63 63 65 73 73 66 75 6c 20 63 by.some.not.totally.successful.c
4ee20 6f 70 79 20 6f 70 65 72 61 74 69 6f 6e 2e 0a 0a 20 20 20 2a 20 4d 61 6c 69 63 69 6f 75 73 20 64 opy.operation......*.Malicious.d
4ee40 61 74 61 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 66 69 6c 65 20 69 6e 20 6f 72 64 65 72 20 74 ata.added.to.the.file.in.order.t
4ee60 6f 20 6d 61 6b 65 20 69 74 73 20 74 6f 74 61 6c 20 73 69 7a 65 20 61 6e 64 0a 20 20 20 20 20 68 o.make.its.total.size.and......h
4ee80 61 73 68 20 76 61 6c 75 65 20 28 66 6f 72 20 61 20 63 68 6f 73 65 6e 20 68 61 73 68 29 20 63 6f ash.value.(for.a.chosen.hash).co
4eea0 69 6e 63 69 64 65 20 77 69 74 68 20 74 68 6f 73 65 20 6f 66 20 61 6e 6f 74 68 65 72 20 66 69 6c incide.with.those.of.another.fil
4eec0 65 2e 0a 0a 20 20 20 2a 20 49 6e 20 72 61 72 65 20 63 61 73 65 73 2c 20 74 72 61 69 6c 69 6e 67 e......*.In.rare.cases,.trailing
4eee0 20 64 61 74 61 20 63 6f 75 6c 64 20 62 65 20 74 68 65 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 .data.could.be.the.corrupt.heade
4ef00 72 20 6f 66 20 61 6e 6f 74 68 65 72 0a 20 20 20 20 20 6d 65 6d 62 65 72 2e 20 49 6e 20 6d 75 6c r.of.another......member..In.mul
4ef20 74 69 6d 65 6d 62 65 72 20 6f 72 20 63 6f 6e 63 61 74 65 6e 61 74 65 64 20 66 69 6c 65 73 20 74 timember.or.concatenated.files.t
4ef40 68 65 20 70 72 6f 62 61 62 69 6c 69 74 79 20 6f 66 0a 20 20 20 20 20 63 6f 72 72 75 70 74 69 6f he.probability.of......corruptio
4ef60 6e 20 68 61 70 70 65 6e 69 6e 67 20 69 6e 20 74 68 65 20 6d 61 67 69 63 20 62 79 74 65 73 20 69 n.happening.in.the.magic.bytes.i
4ef80 73 20 35 20 74 69 6d 65 73 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 20 74 68 65 0a 20 20 20 20 20 s.5.times.smaller.than.the......
4efa0 70 72 6f 62 61 62 69 6c 69 74 79 20 6f 66 20 67 65 74 74 69 6e 67 20 61 20 66 61 6c 73 65 20 70 probability.of.getting.a.false.p
4efc0 6f 73 69 74 69 76 65 20 63 61 75 73 65 64 20 62 79 20 74 68 65 20 63 6f 72 72 75 70 74 69 6f 6e ositive.caused.by.the.corruption
4efe0 20 6f 66 20 74 68 65 0a 20 20 20 20 20 69 6e 74 65 67 72 69 74 79 20 69 6e 66 6f 72 6d 61 74 69 .of.the......integrity.informati
4f000 6f 6e 20 69 74 73 65 6c 66 2e 20 54 68 65 72 65 66 6f 72 65 20 69 74 20 63 61 6e 20 62 65 20 63 on.itself..Therefore.it.can.be.c
4f020 6f 6e 73 69 64 65 72 65 64 20 74 6f 20 62 65 0a 20 20 20 20 20 62 65 6c 6f 77 20 74 68 65 20 6e onsidered.to.be......below.the.n
4f040 6f 69 73 65 20 6c 65 76 65 6c 2e 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 74 68 65 20 74 65 oise.level..Additionally,.the.te
4f060 73 74 20 75 73 65 64 20 62 79 20 6c 7a 69 70 20 74 6f 0a 20 20 20 20 20 64 69 73 63 72 69 6d 69 st.used.by.lzip.to......discrimi
4f080 6e 61 74 65 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 66 72 6f 6d 20 61 20 63 6f 72 72 75 70 nate.trailing.data.from.a.corrup
4f0a0 74 20 68 65 61 64 65 72 20 68 61 73 20 61 20 48 61 6d 6d 69 6e 67 0a 20 20 20 20 20 64 69 73 74 t.header.has.a.Hamming......dist
4f0c0 61 6e 63 65 20 28 48 44 29 20 6f 66 20 33 2c 20 61 6e 64 20 74 68 65 20 33 20 62 69 74 20 66 6c ance.(HD).of.3,.and.the.3.bit.fl
4f0e0 69 70 73 20 6d 75 73 74 20 68 61 70 70 65 6e 20 69 6e 20 64 69 66 66 65 72 65 6e 74 20 6d 61 67 ips.must.happen.in.different.mag
4f100 69 63 0a 20 20 20 20 20 62 79 74 65 73 20 66 6f 72 20 74 68 65 20 74 65 73 74 20 74 6f 20 66 61 ic......bytes.for.the.test.to.fa
4f120 69 6c 2e 20 49 6e 20 61 6e 79 20 63 61 73 65 2c 20 74 68 65 20 6f 70 74 69 6f 6e 20 27 2d 2d 74 il..In.any.case,.the.option.'--t
4f140 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 27 0a 20 20 20 20 20 67 75 61 72 61 6e 74 65 65 73 20 74 railing-error'......guarantees.t
4f160 68 61 74 20 61 6e 79 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 20 69 73 20 64 65 74 65 63 74 hat.any.corrupt.header.is.detect
4f180 65 64 2e 0a 0a 20 20 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 20 61 72 65 20 69 6e 20 6e 6f 20 ed......Trailing.data.are.in.no.
4f1a0 77 61 79 20 70 61 72 74 20 6f 66 20 74 68 65 20 6c 7a 69 70 20 66 69 6c 65 20 66 6f 72 6d 61 74 way.part.of.the.lzip.file.format
4f1c0 2c 20 62 75 74 20 74 6f 6f 6c 73 0a 72 65 61 64 69 6e 67 20 6c 7a 69 70 20 66 69 6c 65 73 20 61 ,.but.tools.reading.lzip.files.a
4f1e0 72 65 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 68 61 76 65 20 61 73 20 63 6f 72 72 65 63 74 re.expected.to.behave.as.correct
4f200 6c 79 20 61 6e 64 20 75 73 65 66 75 6c 6c 79 20 61 73 0a 70 6f 73 73 69 62 6c 65 20 69 6e 20 74 ly.and.usefully.as.possible.in.t
4f220 68 65 20 70 72 65 73 65 6e 63 65 20 6f 66 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 2e 0a 0a 20 he.presence.of.trailing.data....
4f240 20 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 20 63 61 6e 20 62 65 20 73 61 66 65 6c 79 20 69 67 ..Trailing.data.can.be.safely.ig
4f260 6e 6f 72 65 64 20 69 6e 20 6d 6f 73 74 20 63 61 73 65 73 2e 20 49 6e 20 73 6f 6d 65 20 63 61 73 nored.in.most.cases..In.some.cas
4f280 65 73 2c 20 6c 69 6b 65 0a 74 68 61 74 20 6f 66 20 75 73 65 72 2d 61 64 64 65 64 20 64 61 74 61 es,.like.that.of.user-added.data
4f2a0 2c 20 74 68 65 79 20 61 72 65 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 69 67 6e 6f 72 65 ,.they.are.expected.to.be.ignore
4f2c0 64 2e 20 49 6e 20 74 68 6f 73 65 20 63 61 73 65 73 0a 77 68 65 72 65 20 61 20 66 69 6c 65 20 63 d..In.those.cases.where.a.file.c
4f2e0 6f 6e 74 61 69 6e 69 6e 67 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 6d 75 73 74 20 62 65 20 ontaining.trailing.data.must.be.
4f300 72 65 6a 65 63 74 65 64 2c 20 74 68 65 20 6f 70 74 69 6f 6e 0a 27 2d 2d 74 72 61 69 6c 69 6e 67 rejected,.the.option.'--trailing
4f320 2d 65 72 72 6f 72 27 20 63 61 6e 20 62 65 20 75 73 65 64 2e 20 2a 4e 6f 74 65 20 2d 2d 74 72 61 -error'.can.be.used..*Note.--tra
4f340 69 6c 69 6e 67 2d 65 72 72 6f 72 3a 3a 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 iling-error::.....File:.lzip.inf
4f360 6f 2c 20 20 4e 6f 64 65 3a 20 45 78 61 6d 70 6c 65 73 2c 20 20 4e 65 78 74 3a 20 50 72 6f 62 6c o,..Node:.Examples,..Next:.Probl
4f380 65 6d 73 2c 20 20 50 72 65 76 3a 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 2c 20 20 55 70 3a 20 ems,..Prev:.Trailing.data,..Up:.
4f3a0 54 6f 70 0a 0a 31 30 20 41 20 73 6d 61 6c 6c 20 74 75 74 6f 72 69 61 6c 20 77 69 74 68 20 65 78 Top..10.A.small.tutorial.with.ex
4f3c0 61 6d 70 6c 65 73 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a amples.*************************
4f3e0 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 57 41 52 4e 49 4e 47 21 20 45 76 65 6e 20 69 66 20 6c 7a 69 70 20 ********..WARNING!.Even.if.lzip.
4f400 69 73 20 62 75 67 2d 66 72 65 65 2c 20 6f 74 68 65 72 20 63 61 75 73 65 73 20 6d 61 79 20 72 65 is.bug-free,.other.causes.may.re
4f420 73 75 6c 74 20 69 6e 20 61 20 63 6f 72 72 75 70 74 0a 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c sult.in.a.corrupt.compressed.fil
4f440 65 20 28 62 75 67 73 20 69 6e 20 74 68 65 20 73 79 73 74 65 6d 20 6c 69 62 72 61 72 69 65 73 2c e.(bugs.in.the.system.libraries,
4f460 20 6d 65 6d 6f 72 79 20 65 72 72 6f 72 73 2c 20 65 74 63 29 2e 0a 54 68 65 72 65 66 6f 72 65 2c .memory.errors,.etc)..Therefore,
4f480 20 69 66 20 74 68 65 20 64 61 74 61 20 79 6f 75 20 61 72 65 20 67 6f 69 6e 67 20 74 6f 20 63 6f .if.the.data.you.are.going.to.co
4f4a0 6d 70 72 65 73 73 20 61 72 65 20 69 6d 70 6f 72 74 61 6e 74 2c 20 67 69 76 65 20 74 68 65 0a 6f mpress.are.important,.give.the.o
4f4c0 70 74 69 6f 6e 20 27 2d 2d 6b 65 65 70 27 20 74 6f 20 6c 7a 69 70 20 61 6e 64 20 64 6f 6e 27 74 ption.'--keep'.to.lzip.and.don't
4f4e0 20 72 65 6d 6f 76 65 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 66 69 6c 65 20 75 6e 74 69 6c 20 .remove.the.original.file.until.
4f500 79 6f 75 20 63 68 65 63 6b 0a 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 77 69 you.check.the.compressed.file.wi
4f520 74 68 20 61 20 63 6f 6d 6d 61 6e 64 20 6c 69 6b 65 20 27 6c 7a 69 70 20 2d 63 64 20 66 69 6c 65 th.a.command.like.'lzip.-cd.file
4f540 2e 6c 7a 20 7c 20 63 6d 70 20 66 69 6c 65 20 2d 27 2e 0a 4d 6f 73 74 20 52 41 4d 20 65 72 72 6f .lz.|.cmp.file.-'..Most.RAM.erro
4f560 72 73 20 68 61 70 70 65 6e 69 6e 67 20 64 75 72 69 6e 67 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 rs.happening.during.compression.
4f580 63 61 6e 20 6f 6e 6c 79 20 62 65 20 64 65 74 65 63 74 65 64 20 62 79 0a 63 6f 6d 70 61 72 69 6e can.only.be.detected.by.comparin
4f5a0 67 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 77 69 74 68 20 74 68 65 20 6f g.the.compressed.file.with.the.o
4f5c0 72 69 67 69 6e 61 6c 20 62 65 63 61 75 73 65 20 74 68 65 20 63 6f 72 72 75 70 74 69 6f 6e 0a 68 riginal.because.the.corruption.h
4f5e0 61 70 70 65 6e 73 20 62 65 66 6f 72 65 20 6c 7a 69 70 20 63 6f 6d 70 72 65 73 73 65 73 20 74 68 appens.before.lzip.compresses.th
4f600 65 20 52 41 4d 20 63 6f 6e 74 65 6e 74 73 2c 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 61 20 76 e.RAM.contents,.resulting.in.a.v
4f620 61 6c 69 64 0a 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 alid.compressed.file.containing.
4f640 77 72 6f 6e 67 20 64 61 74 61 2e 0a 0a 45 78 61 6d 70 6c 65 20 31 3a 20 45 78 74 72 61 63 74 20 wrong.data...Example.1:.Extract.
4f660 61 6c 6c 20 74 68 65 20 66 69 6c 65 73 20 66 72 6f 6d 20 61 72 63 68 69 76 65 20 27 66 6f 6f 2e all.the.files.from.archive.'foo.
4f680 74 61 72 2e 6c 7a 27 2e 0a 0a 20 20 20 20 20 20 20 74 61 72 20 2d 78 66 20 66 6f 6f 2e 74 61 72 tar.lz'..........tar.-xf.foo.tar
4f6a0 2e 6c 7a 0a 20 20 20 20 20 6f 72 0a 20 20 20 20 20 20 20 6c 7a 69 70 20 2d 63 64 20 66 6f 6f 2e .lz......or........lzip.-cd.foo.
4f6c0 74 61 72 2e 6c 7a 20 7c 20 74 61 72 20 2d 78 66 20 2d 0a 0a 45 78 61 6d 70 6c 65 20 32 3a 20 52 tar.lz.|.tar.-xf.-..Example.2:.R
4f6e0 65 70 6c 61 63 65 20 61 20 72 65 67 75 6c 61 72 20 66 69 6c 65 20 77 69 74 68 20 69 74 73 20 63 eplace.a.regular.file.with.its.c
4f700 6f 6d 70 72 65 73 73 65 64 20 76 65 72 73 69 6f 6e 20 27 66 69 6c 65 2e 6c 7a 27 20 61 6e 64 0a ompressed.version.'file.lz'.and.
4f720 73 68 6f 77 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 2e 0a 0a 20 20 20 show.the.compression.ratio......
4f740 20 20 6c 7a 69 70 20 2d 76 20 66 69 6c 65 0a 0a 45 78 61 6d 70 6c 65 20 33 3a 20 4c 69 6b 65 20 ..lzip.-v.file..Example.3:.Like.
4f760 65 78 61 6d 70 6c 65 20 32 20 62 75 74 20 74 68 65 20 63 72 65 61 74 65 64 20 27 66 69 6c 65 2e example.2.but.the.created.'file.
4f780 6c 7a 27 20 69 73 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 77 69 74 68 20 61 0a 6d 65 6d 62 65 72 lz'.is.multimember.with.a.member
4f7a0 20 73 69 7a 65 20 6f 66 20 31 20 4d 69 42 2e 20 54 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 .size.of.1.MiB..The.compression.
4f7c0 72 61 74 69 6f 20 69 73 20 6e 6f 74 20 73 68 6f 77 6e 2e 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d ratio.is.not.shown........lzip.-
4f7e0 62 20 31 4d 69 42 20 66 69 6c 65 0a 0a 45 78 61 6d 70 6c 65 20 34 3a 20 52 65 73 74 6f 72 65 20 b.1MiB.file..Example.4:.Restore.
4f800 61 20 72 65 67 75 6c 61 72 20 66 69 6c 65 20 66 72 6f 6d 20 69 74 73 20 63 6f 6d 70 72 65 73 73 a.regular.file.from.its.compress
4f820 65 64 20 76 65 72 73 69 6f 6e 20 27 66 69 6c 65 2e 6c 7a 27 2e 20 49 66 0a 74 68 65 20 6f 70 65 ed.version.'file.lz'..If.the.ope
4f840 72 61 74 69 6f 6e 20 69 73 20 73 75 63 63 65 73 73 66 75 6c 2c 20 27 66 69 6c 65 2e 6c 7a 27 20 ration.is.successful,.'file.lz'.
4f860 69 73 20 72 65 6d 6f 76 65 64 2e 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d 64 20 66 69 6c 65 2e 6c is.removed........lzip.-d.file.l
4f880 7a 0a 0a 45 78 61 6d 70 6c 65 20 35 3a 20 43 68 65 63 6b 20 74 68 65 20 69 6e 74 65 67 72 69 74 z..Example.5:.Check.the.integrit
4f8a0 79 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 27 66 69 6c 65 2e 6c y.of.the.compressed.file.'file.l
4f8c0 7a 27 20 61 6e 64 20 73 68 6f 77 0a 73 74 61 74 75 73 2e 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d z'.and.show.status........lzip.-
4f8e0 74 76 20 66 69 6c 65 2e 6c 7a 0a 0a 45 78 61 6d 70 6c 65 20 36 3a 20 54 68 65 20 72 69 67 68 74 tv.file.lz..Example.6:.The.right
4f900 20 77 61 79 20 6f 66 20 63 6f 6e 63 61 74 65 6e 61 74 69 6e 67 20 74 68 65 20 64 65 63 6f 6d 70 .way.of.concatenating.the.decomp
4f920 72 65 73 73 65 64 20 6f 75 74 70 75 74 20 6f 66 20 74 77 6f 20 6f 72 0a 6d 6f 72 65 20 63 6f 6d ressed.output.of.two.or.more.com
4f940 70 72 65 73 73 65 64 20 66 69 6c 65 73 2e 20 2a 4e 6f 74 65 20 54 72 61 69 6c 69 6e 67 20 64 61 pressed.files..*Note.Trailing.da
4f960 74 61 3a 3a 2e 0a 0a 20 20 20 20 20 44 6f 6e 27 74 20 64 6f 20 74 68 69 73 0a 20 20 20 20 20 20 ta::........Don't.do.this.......
4f980 20 63 61 74 20 66 69 6c 65 31 2e 6c 7a 20 66 69 6c 65 32 2e 6c 7a 20 66 69 6c 65 33 2e 6c 7a 20 .cat.file1.lz.file2.lz.file3.lz.
4f9a0 7c 20 6c 7a 69 70 20 2d 64 20 2d 0a 20 20 20 20 20 44 6f 20 74 68 69 73 20 69 6e 73 74 65 61 64 |.lzip.-d.-......Do.this.instead
4f9c0 0a 20 20 20 20 20 20 20 6c 7a 69 70 20 2d 63 64 20 66 69 6c 65 31 2e 6c 7a 20 66 69 6c 65 32 2e ........lzip.-cd.file1.lz.file2.
4f9e0 6c 7a 20 66 69 6c 65 33 2e 6c 7a 0a 0a 45 78 61 6d 70 6c 65 20 37 3a 20 44 65 63 6f 6d 70 72 65 lz.file3.lz..Example.7:.Decompre
4fa00 73 73 20 27 66 69 6c 65 2e 6c 7a 27 20 70 61 72 74 69 61 6c 6c 79 20 75 6e 74 69 6c 20 31 30 20 ss.'file.lz'.partially.until.10.
4fa20 4b 69 42 20 6f 66 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 0a 61 72 65 20 70 72 6f KiB.of.decompressed.data.are.pro
4fa40 64 75 63 65 64 2e 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d 63 64 20 66 69 6c 65 2e 6c 7a 20 7c 20 duced........lzip.-cd.file.lz.|.
4fa60 64 64 20 62 73 3d 31 30 32 34 20 63 6f 75 6e 74 3d 31 30 0a 0a 45 78 61 6d 70 6c 65 20 38 3a 20 dd.bs=1024.count=10..Example.8:.
4fa80 44 65 63 6f 6d 70 72 65 73 73 20 27 66 69 6c 65 2e 6c 7a 27 20 70 61 72 74 69 61 6c 6c 79 20 66 Decompress.'file.lz'.partially.f
4faa0 72 6f 6d 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 62 79 74 65 20 61 74 20 6f 66 66 73 65 74 0a rom.decompressed.byte.at.offset.
4fac0 31 30 30 30 30 20 74 6f 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 62 79 74 65 20 61 74 20 6f 66 10000.to.decompressed.byte.at.of
4fae0 66 73 65 74 20 31 34 39 39 39 20 28 35 30 30 30 20 62 79 74 65 73 20 61 72 65 20 70 72 6f 64 75 fset.14999.(5000.bytes.are.produ
4fb00 63 65 64 29 2e 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d 63 64 20 66 69 6c 65 2e 6c 7a 20 7c 20 64 ced)........lzip.-cd.file.lz.|.d
4fb20 64 20 62 73 3d 31 30 30 30 20 73 6b 69 70 3d 31 30 20 63 6f 75 6e 74 3d 35 0a 0a 45 78 61 6d 70 d.bs=1000.skip=10.count=5..Examp
4fb40 6c 65 20 39 3a 20 43 6f 6d 70 72 65 73 73 20 61 20 77 68 6f 6c 65 20 64 65 76 69 63 65 20 69 6e le.9:.Compress.a.whole.device.in
4fb60 20 2f 64 65 76 2f 73 64 63 20 61 6e 64 20 73 65 6e 64 20 74 68 65 20 6f 75 74 70 75 74 20 74 6f ./dev/sdc.and.send.the.output.to
4fb80 0a 27 66 69 6c 65 2e 6c 7a 27 2e 0a 0a 20 20 20 20 20 20 20 6c 7a 69 70 20 2d 63 20 2f 64 65 76 .'file.lz'..........lzip.-c./dev
4fba0 2f 73 64 63 20 3e 20 66 69 6c 65 2e 6c 7a 0a 20 20 20 20 20 6f 72 0a 20 20 20 20 20 20 20 6c 7a /sdc.>.file.lz......or........lz
4fbc0 69 70 20 2f 64 65 76 2f 73 64 63 20 2d 6f 20 66 69 6c 65 2e 6c 7a 0a 0a 45 78 61 6d 70 6c 65 20 ip./dev/sdc.-o.file.lz..Example.
4fbe0 31 30 3a 20 43 72 65 61 74 65 20 61 20 6d 75 6c 74 69 76 6f 6c 75 6d 65 20 63 6f 6d 70 72 65 73 10:.Create.a.multivolume.compres
4fc00 73 65 64 20 74 61 72 20 61 72 63 68 69 76 65 20 77 69 74 68 20 61 20 76 6f 6c 75 6d 65 20 73 69 sed.tar.archive.with.a.volume.si
4fc20 7a 65 0a 6f 66 20 31 34 34 30 20 4b 69 42 2e 0a 0a 20 20 20 20 20 74 61 72 20 2d 63 20 73 6f 6d ze.of.1440.KiB........tar.-c.som
4fc40 65 5f 64 69 72 65 63 74 6f 72 79 20 7c 20 6c 7a 69 70 20 2d 53 20 31 34 34 30 4b 69 42 20 2d 6f e_directory.|.lzip.-S.1440KiB.-o
4fc60 20 76 6f 6c 75 6d 65 5f 6e 61 6d 65 20 2d 0a 0a 45 78 61 6d 70 6c 65 20 31 31 3a 20 45 78 74 72 .volume_name.-..Example.11:.Extr
4fc80 61 63 74 20 61 20 6d 75 6c 74 69 76 6f 6c 75 6d 65 20 63 6f 6d 70 72 65 73 73 65 64 20 74 61 72 act.a.multivolume.compressed.tar
4fca0 20 61 72 63 68 69 76 65 2e 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d 63 64 20 76 6f 6c 75 6d 65 5f .archive........lzip.-cd.volume_
4fcc0 6e 61 6d 65 2a 2e 6c 7a 20 7c 20 74 61 72 20 2d 78 66 20 2d 0a 0a 45 78 61 6d 70 6c 65 20 31 32 name*.lz.|.tar.-xf.-..Example.12
4fce0 3a 20 43 72 65 61 74 65 20 61 20 6d 75 6c 74 69 76 6f 6c 75 6d 65 20 63 6f 6d 70 72 65 73 73 65 :.Create.a.multivolume.compresse
4fd00 64 20 62 61 63 6b 75 70 20 6f 66 20 61 20 6c 61 72 67 65 20 64 61 74 61 62 61 73 65 20 66 69 6c d.backup.of.a.large.database.fil
4fd20 65 0a 77 69 74 68 20 61 20 76 6f 6c 75 6d 65 20 73 69 7a 65 20 6f 66 20 36 35 30 20 4d 42 2c 20 e.with.a.volume.size.of.650.MB,.
4fd40 77 68 65 72 65 20 65 61 63 68 20 76 6f 6c 75 6d 65 20 69 73 20 61 20 6d 75 6c 74 69 6d 65 6d 62 where.each.volume.is.a.multimemb
4fd60 65 72 20 66 69 6c 65 20 77 69 74 68 0a 61 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 6f 66 20 33 32 er.file.with.a.member.size.of.32
4fd80 20 4d 69 42 2e 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d 62 20 33 32 4d 69 42 20 2d 53 20 36 35 30 .MiB........lzip.-b.32MiB.-S.650
4fda0 4d 42 20 62 69 67 5f 64 62 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 6f 2c 20 20 4e MB.big_db....File:.lzip.info,..N
4fdc0 6f 64 65 3a 20 50 72 6f 62 6c 65 6d 73 2c 20 20 4e 65 78 74 3a 20 52 65 66 65 72 65 6e 63 65 20 ode:.Problems,..Next:.Reference.
4fde0 73 6f 75 72 63 65 20 63 6f 64 65 2c 20 20 50 72 65 76 3a 20 45 78 61 6d 70 6c 65 73 2c 20 20 55 source.code,..Prev:.Examples,..U
4fe00 70 3a 20 54 6f 70 0a 0a 31 31 20 52 65 70 6f 72 74 69 6e 67 20 62 75 67 73 0a 2a 2a 2a 2a 2a 2a p:.Top..11.Reporting.bugs.******
4fe20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 54 68 65 72 65 20 61 72 65 20 70 72 6f 62 61 62 6c 79 20 ***********..There.are.probably.
4fe40 62 75 67 73 20 69 6e 20 6c 7a 69 70 2e 20 54 68 65 72 65 20 61 72 65 20 63 65 72 74 61 69 6e 6c bugs.in.lzip..There.are.certainl
4fe60 79 20 65 72 72 6f 72 73 20 61 6e 64 20 6f 6d 69 73 73 69 6f 6e 73 0a 69 6e 20 74 68 69 73 20 6d y.errors.and.omissions.in.this.m
4fe80 61 6e 75 61 6c 2e 20 49 66 20 79 6f 75 20 72 65 70 6f 72 74 20 74 68 65 6d 2c 20 74 68 65 79 20 anual..If.you.report.them,.they.
4fea0 77 69 6c 6c 20 67 65 74 20 66 69 78 65 64 2e 20 49 66 20 79 6f 75 20 64 6f 6e 27 74 2c 20 6e 6f will.get.fixed..If.you.don't,.no
4fec0 0a 6f 6e 65 20 77 69 6c 6c 20 65 76 65 72 20 6b 6e 6f 77 20 61 62 6f 75 74 20 74 68 65 6d 20 61 .one.will.ever.know.about.them.a
4fee0 6e 64 20 74 68 65 79 20 77 69 6c 6c 20 72 65 6d 61 69 6e 20 75 6e 66 69 78 65 64 20 66 6f 72 20 nd.they.will.remain.unfixed.for.
4ff00 61 6c 6c 0a 65 74 65 72 6e 69 74 79 2c 20 69 66 20 6e 6f 74 20 6c 6f 6e 67 65 72 2e 0a 0a 20 20 all.eternity,.if.not.longer.....
4ff20 20 49 66 20 79 6f 75 20 66 69 6e 64 20 61 20 62 75 67 20 69 6e 20 6c 7a 69 70 2c 20 70 6c 65 61 .If.you.find.a.bug.in.lzip,.plea
4ff40 73 65 20 73 65 6e 64 20 65 6c 65 63 74 72 6f 6e 69 63 20 6d 61 69 6c 20 74 6f 0a 3c 6c 7a 69 70 se.send.electronic.mail.to.<lzip
4ff60 2d 62 75 67 40 6e 6f 6e 67 6e 75 2e 6f 72 67 3e 2e 20 49 6e 63 6c 75 64 65 20 74 68 65 20 76 65 -bug@nongnu.org>..Include.the.ve
4ff80 72 73 69 6f 6e 20 6e 75 6d 62 65 72 2c 20 77 68 69 63 68 20 79 6f 75 20 63 61 6e 20 66 69 6e 64 rsion.number,.which.you.can.find
4ffa0 20 62 79 0a 72 75 6e 6e 69 6e 67 20 27 6c 7a 69 70 20 2d 2d 76 65 72 73 69 6f 6e 27 2e 0a 0a 1f .by.running.'lzip.--version'....
4ffc0 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 52 65 66 65 72 65 6e .File:.lzip.info,..Node:.Referen
4ffe0 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 2c 20 20 4e 65 78 74 3a 20 43 6f 6e 63 65 70 74 20 69 ce.source.code,..Next:.Concept.i
50000 6e 64 65 78 2c 20 20 50 72 65 76 3a 20 50 72 6f 62 6c 65 6d 73 2c 20 20 55 70 3a 20 54 6f 70 0a ndex,..Prev:.Problems,..Up:.Top.
50020 0a 41 70 70 65 6e 64 69 78 20 41 20 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 20 63 6f 64 .Appendix.A.Reference.source.cod
50040 65 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a e.******************************
50060 2a 2a 0a 0a 2f 2a 20 4c 7a 64 20 2d 20 45 64 75 63 61 74 69 6f 6e 61 6c 20 64 65 63 6f 6d 70 72 **../*.Lzd.-.Educational.decompr
50080 65 73 73 6f 72 20 66 6f 72 20 74 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 0a 20 20 20 43 6f 70 essor.for.the.lzip.format....Cop
500a0 79 72 69 67 68 74 20 28 43 29 20 32 30 31 33 2d 32 30 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 yright.(C).2013-2025.Antonio.Dia
500c0 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 z.Diaz......This.program.is.free
500e0 20 73 6f 66 74 77 61 72 65 2e 20 52 65 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 20 75 73 .software..Redistribution.and.us
50100 65 20 69 6e 20 73 6f 75 72 63 65 20 61 6e 64 0a 20 20 20 62 69 6e 61 72 79 20 66 6f 72 6d 73 2c e.in.source.and....binary.forms,
50120 20 77 69 74 68 20 6f 72 20 77 69 74 68 6f 75 74 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2c 20 61 .with.or.without.modification,.a
50140 72 65 20 70 65 72 6d 69 74 74 65 64 20 70 72 6f 76 69 64 65 64 0a 20 20 20 74 68 61 74 20 74 68 re.permitted.provided....that.th
50160 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 6d 65 74 3a 0a e.following.conditions.are.met:.
50180 0a 20 20 20 31 2e 20 52 65 64 69 73 74 72 69 62 75 74 69 6f 6e 73 20 6f 66 20 73 6f 75 72 63 65 ....1..Redistributions.of.source
501a0 20 63 6f 64 65 20 6d 75 73 74 20 72 65 74 61 69 6e 20 74 68 65 20 61 62 6f 76 65 20 63 6f 70 79 .code.must.retain.the.above.copy
501c0 72 69 67 68 74 0a 20 20 20 6e 6f 74 69 63 65 2c 20 74 68 69 73 20 6c 69 73 74 20 6f 66 20 63 6f right....notice,.this.list.of.co
501e0 6e 64 69 74 69 6f 6e 73 2c 20 61 6e 64 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 64 69 73 63 nditions,.and.the.following.disc
50200 6c 61 69 6d 65 72 2e 0a 0a 20 20 20 32 2e 20 52 65 64 69 73 74 72 69 62 75 74 69 6f 6e 73 20 69 laimer......2..Redistributions.i
50220 6e 20 62 69 6e 61 72 79 20 66 6f 72 6d 20 6d 75 73 74 20 72 65 70 72 6f 64 75 63 65 20 74 68 65 n.binary.form.must.reproduce.the
50240 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 0a 20 20 20 6e 6f 74 69 63 65 2c 20 74 68 69 73 .above.copyright....notice,.this
50260 20 6c 69 73 74 20 6f 66 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 61 6e 64 20 74 68 65 20 66 6f 6c .list.of.conditions,.and.the.fol
50280 6c 6f 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65 72 20 69 6e 20 74 68 65 0a 20 20 20 64 6f 63 75 lowing.disclaimer.in.the....docu
502a0 6d 65 6e 74 61 74 69 6f 6e 20 61 6e 64 2f 6f 72 20 6f 74 68 65 72 20 6d 61 74 65 72 69 61 6c 73 mentation.and/or.other.materials
502c0 20 70 72 6f 76 69 64 65 64 20 77 69 74 68 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 2e .provided.with.the.distribution.
502e0 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 .....This.program.is.distributed
50300 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 .in.the.hope.that.it.will.be.use
50320 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 ful,....but.WITHOUT.ANY.WARRANTY
50340 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 ;.without.even.the.implied.warra
50360 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 nty.of....MERCHANTABILITY.or.FIT
50380 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 0a 2a NESS.FOR.A.PARTICULAR.PURPOSE..*
503a0 2f 0a 2f 2a 0a 20 20 20 45 78 69 74 20 73 74 61 74 75 73 3a 20 30 20 66 6f 72 20 61 20 6e 6f 72 /./*....Exit.status:.0.for.a.nor
503c0 6d 61 6c 20 65 78 69 74 2c 20 31 20 66 6f 72 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 61 6c 20 70 72 mal.exit,.1.for.environmental.pr
503e0 6f 62 6c 65 6d 73 0a 20 20 20 28 66 69 6c 65 20 6e 6f 74 20 66 6f 75 6e 64 2c 20 69 6e 76 61 6c oblems....(file.not.found,.inval
50400 69 64 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 2c 20 49 2f 4f 20 65 72 72 id.command-line.options,.I/O.err
50420 6f 72 73 2c 20 65 74 63 29 2c 20 32 20 74 6f 0a 20 20 20 69 6e 64 69 63 61 74 65 20 61 20 63 6f ors,.etc),.2.to....indicate.a.co
50440 72 72 75 70 74 20 6f 72 20 69 6e 76 61 6c 69 64 20 69 6e 70 75 74 20 66 69 6c 65 2e 0a 2a 2f 0a rrupt.or.invalid.input.file..*/.
50460 0a 23 69 6e 63 6c 75 64 65 20 3c 61 6c 67 6f 72 69 74 68 6d 3e 0a 23 69 6e 63 6c 75 64 65 20 3c .#include.<algorithm>.#include.<
50480 63 65 72 72 6e 6f 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 64 69 6f 3e 0a 23 69 6e 63 6c 75 cerrno>.#include.<cstdio>.#inclu
504a0 64 65 20 3c 63 73 74 64 6c 69 62 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 74 72 69 6e 67 3e 0a de.<cstdlib>.#include.<cstring>.
504c0 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6e 74 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 75 6e #include.<stdint.h>.#include.<un
504e0 69 73 74 64 2e 68 3e 0a 23 69 66 20 64 65 66 69 6e 65 64 20 5f 5f 4d 53 56 43 52 54 5f 5f 20 7c istd.h>.#if.defined.__MSVCRT__.|
50500 7c 20 64 65 66 69 6e 65 64 20 5f 5f 4f 53 32 5f 5f 20 7c 7c 20 64 65 66 69 6e 65 64 20 5f 5f 44 |.defined.__OS2__.||.defined.__D
50520 4a 47 50 50 5f 5f 0a 23 69 6e 63 6c 75 64 65 20 3c 66 63 6e 74 6c 2e 68 3e 0a 23 69 6e 63 6c 75 JGPP__.#include.<fcntl.h>.#inclu
50540 64 65 20 3c 69 6f 2e 68 3e 0a 23 65 6e 64 69 66 0a 0a 0a 63 6c 61 73 73 20 53 74 61 74 65 0a 20 de.<io.h>.#endif...class.State..
50560 20 7b 0a 20 20 69 6e 74 20 73 74 3b 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 65 6e 75 6d 20 7b 20 73 .{...int.st;..public:...enum.{.s
50580 74 61 74 65 73 20 3d 20 31 32 20 7d 3b 0a 20 20 53 74 61 74 65 28 29 20 3a 20 73 74 28 20 30 20 tates.=.12.};...State().:.st(.0.
505a0 29 20 7b 7d 0a 20 20 69 6e 74 20 6f 70 65 72 61 74 6f 72 28 29 28 29 20 63 6f 6e 73 74 20 7b 20 ).{}...int.operator()().const.{.
505c0 72 65 74 75 72 6e 20 73 74 3b 20 7d 0a 20 20 62 6f 6f 6c 20 69 73 5f 63 68 61 72 28 29 20 63 6f return.st;.}...bool.is_char().co
505e0 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 73 74 20 3c 20 37 3b 20 7d 0a 0a 20 20 76 6f 69 64 20 73 nst.{.return.st.<.7;.}....void.s
50600 65 74 5f 63 68 61 72 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6e 65 et_char().....{.....const.int.ne
50620 78 74 5b 73 74 61 74 65 73 5d 20 3d 20 7b 20 30 2c 20 30 2c 20 30 2c 20 30 2c 20 31 2c 20 32 2c xt[states].=.{.0,.0,.0,.0,.1,.2,
50640 20 33 2c 20 34 2c 20 35 2c 20 36 2c 20 34 2c 20 35 20 7d 3b 0a 20 20 20 20 73 74 20 3d 20 6e 65 .3,.4,.5,.6,.4,.5.};.....st.=.ne
50660 78 74 5b 73 74 5d 3b 0a 20 20 20 20 7d 0a 20 20 76 6f 69 64 20 73 65 74 5f 6d 61 74 63 68 28 29 xt[st];.....}...void.set_match()
50680 20 20 20 20 7b 20 73 74 20 3d 20 28 20 73 74 20 3c 20 37 20 29 20 3f 20 37 20 3a 20 31 30 3b 20 ....{.st.=.(.st.<.7.).?.7.:.10;.
506a0 7d 0a 20 20 76 6f 69 64 20 73 65 74 5f 72 65 70 28 29 20 20 20 20 20 20 7b 20 73 74 20 3d 20 28 }...void.set_rep()......{.st.=.(
506c0 20 73 74 20 3c 20 37 20 29 20 3f 20 38 20 3a 20 31 31 3b 20 7d 0a 20 20 76 6f 69 64 20 73 65 74 .st.<.7.).?.8.:.11;.}...void.set
506e0 5f 73 68 6f 72 74 72 65 70 28 29 20 7b 20 73 74 20 3d 20 28 20 73 74 20 3c 20 37 20 29 20 3f 20 _shortrep().{.st.=.(.st.<.7.).?.
50700 39 20 3a 20 31 31 3b 20 7d 0a 20 20 7d 3b 0a 0a 0a 65 6e 75 6d 20 7b 0a 20 20 6d 69 6e 5f 64 69 9.:.11;.}...};...enum.{...min_di
50720 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3d 20 31 20 3c 3c 20 31 32 2c 0a 20 20 6d 61 78 5f 64 ctionary_size.=.1.<<.12,...max_d
50740 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 3d 20 31 20 3c 3c 20 32 39 2c 0a 20 20 6c 69 74 65 ictionary_size.=.1.<<.29,...lite
50760 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 74 73 20 3d 20 33 2c 0a 20 20 6c 69 74 65 72 61 6c 5f ral_context_bits.=.3,...literal_
50780 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 20 3d 20 30 2c 09 09 09 09 2f 2f 20 6e 6f 74 20 75 73 pos_state_bits.=.0,....//.not.us
507a0 65 64 0a 20 20 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 20 3d 20 32 2c 0a 20 20 70 6f 73 5f 73 ed...pos_state_bits.=.2,...pos_s
507c0 74 61 74 65 73 20 3d 20 31 20 3c 3c 20 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 2c 0a 20 20 70 tates.=.1.<<.pos_state_bits,...p
507e0 6f 73 5f 73 74 61 74 65 5f 6d 61 73 6b 20 3d 20 70 6f 73 5f 73 74 61 74 65 73 20 2d 20 31 2c 0a os_state_mask.=.pos_states.-.1,.
50800 0a 20 20 6c 65 6e 5f 73 74 61 74 65 73 20 3d 20 34 2c 0a 20 20 64 69 73 5f 73 6c 6f 74 5f 62 69 ...len_states.=.4,...dis_slot_bi
50820 74 73 20 3d 20 36 2c 0a 20 20 73 74 61 72 74 5f 64 69 73 5f 6d 6f 64 65 6c 20 3d 20 34 2c 0a 20 ts.=.6,...start_dis_model.=.4,..
50840 20 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 20 3d 20 31 34 2c 0a 20 20 6d 6f 64 65 6c 65 64 5f 64 .end_dis_model.=.14,...modeled_d
50860 69 73 74 61 6e 63 65 73 20 3d 20 31 20 3c 3c 20 28 20 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 20 istances.=.1.<<.(.end_dis_model.
50880 2f 20 32 20 29 2c 09 2f 2f 20 31 32 38 0a 20 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 20 3d /.2.),.//.128...dis_align_bits.=
508a0 20 34 2c 0a 20 20 64 69 73 5f 61 6c 69 67 6e 5f 73 69 7a 65 20 3d 20 31 20 3c 3c 20 64 69 73 5f .4,...dis_align_size.=.1.<<.dis_
508c0 61 6c 69 67 6e 5f 62 69 74 73 2c 0a 0a 20 20 6c 65 6e 5f 6c 6f 77 5f 62 69 74 73 20 3d 20 33 2c align_bits,....len_low_bits.=.3,
508e0 0a 20 20 6c 65 6e 5f 6d 69 64 5f 62 69 74 73 20 3d 20 33 2c 0a 20 20 6c 65 6e 5f 68 69 67 68 5f ...len_mid_bits.=.3,...len_high_
50900 62 69 74 73 20 3d 20 38 2c 0a 20 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 3d 20 31 20 bits.=.8,...len_low_symbols.=.1.
50920 3c 3c 20 6c 65 6e 5f 6c 6f 77 5f 62 69 74 73 2c 0a 20 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f <<.len_low_bits,...len_mid_symbo
50940 6c 73 20 3d 20 31 20 3c 3c 20 6c 65 6e 5f 6d 69 64 5f 62 69 74 73 2c 0a 20 20 6c 65 6e 5f 68 69 ls.=.1.<<.len_mid_bits,...len_hi
50960 67 68 5f 73 79 6d 62 6f 6c 73 20 3d 20 31 20 3c 3c 20 6c 65 6e 5f 68 69 67 68 5f 62 69 74 73 2c gh_symbols.=.1.<<.len_high_bits,
50980 0a 20 20 6d 61 78 5f 6c 65 6e 5f 73 79 6d 62 6f 6c 73 20 3d 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d ...max_len_symbols.=.len_low_sym
509a0 62 6f 6c 73 20 2b 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 20 2b 20 6c 65 6e 5f 68 69 67 bols.+.len_mid_symbols.+.len_hig
509c0 68 5f 73 79 6d 62 6f 6c 73 2c 0a 0a 20 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 3d 20 32 2c h_symbols,....min_match_len.=.2,
509e0 09 09 09 09 09 2f 2f 20 6d 75 73 74 20 62 65 20 32 0a 0a 20 20 62 69 74 5f 6d 6f 64 65 6c 5f 6d .....//.must.be.2....bit_model_m
50a00 6f 76 65 5f 62 69 74 73 20 3d 20 35 2c 0a 20 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 5f ove_bits.=.5,...bit_model_total_
50a20 62 69 74 73 20 3d 20 31 31 2c 0a 20 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 20 3d 20 31 bits.=.11,...bit_model_total.=.1
50a40 20 3c 3c 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 5f 62 69 74 73 20 7d 3b 0a 0a 73 74 72 .<<.bit_model_total_bits.};..str
50a60 75 63 74 20 42 69 74 5f 6d 6f 64 65 6c 0a 20 20 7b 0a 20 20 69 6e 74 20 70 72 6f 62 61 62 69 6c uct.Bit_model...{...int.probabil
50a80 69 74 79 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 28 29 20 3a 20 70 72 6f 62 61 62 69 6c 69 74 79 ity;...Bit_model().:.probability
50aa0 28 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 20 2f 20 32 20 29 20 7b 7d 0a 20 20 7d 3b 0a (.bit_model_total./.2.).{}...};.
50ac0 0a 73 74 72 75 63 74 20 4c 65 6e 5f 6d 6f 64 65 6c 0a 20 20 7b 0a 20 20 42 69 74 5f 6d 6f 64 65 .struct.Len_model...{...Bit_mode
50ae0 6c 20 63 68 6f 69 63 65 31 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 63 68 6f 69 63 65 32 3b 0a l.choice1;...Bit_model.choice2;.
50b00 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6c 6f 77 5b 70 6f 73 5f 73 74 61 74 65 73 5d 5b 6c ..Bit_model.bm_low[pos_states][l
50b20 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f en_low_symbols];...Bit_model.bm_
50b40 6d 69 64 5b 70 6f 73 5f 73 74 61 74 65 73 5d 5b 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 5d mid[pos_states][len_mid_symbols]
50b60 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 68 69 67 68 5b 6c 65 6e 5f 68 69 67 68 5f 73 ;...Bit_model.bm_high[len_high_s
50b80 79 6d 62 6f 6c 73 5d 3b 0a 20 20 7d 3b 0a 0a 0a 63 6c 61 73 73 20 43 52 43 33 32 0a 20 20 7b 0a ymbols];...};...class.CRC32...{.
50ba0 20 20 75 69 6e 74 33 32 5f 74 20 64 61 74 61 5b 32 35 36 5d 3b 09 09 2f 2f 20 54 61 62 6c 65 20 ..uint32_t.data[256];..//.Table.
50bc0 6f 66 20 43 52 43 73 20 6f 66 20 61 6c 6c 20 38 2d 62 69 74 20 6d 65 73 73 61 67 65 73 2e 0a 0a of.CRCs.of.all.8-bit.messages...
50be0 70 75 62 6c 69 63 3a 0a 20 20 43 52 43 33 32 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 66 6f 72 28 public:...CRC32().....{.....for(
50c00 20 75 6e 73 69 67 6e 65 64 20 6e 20 3d 20 30 3b 20 6e 20 3c 20 32 35 36 3b 20 2b 2b 6e 20 29 0a .unsigned.n.=.0;.n.<.256;.++n.).
50c20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 75 6e 73 69 67 6e 65 64 20 63 20 3d 20 6e 3b 0a 20 20 ......{.......unsigned.c.=.n;...
50c40 20 20 20 20 66 6f 72 28 20 69 6e 74 20 6b 20 3d 20 30 3b 20 6b 20 3c 20 38 3b 20 2b 2b 6b 20 29 ....for(.int.k.=.0;.k.<.8;.++k.)
50c60 0a 20 20 20 20 20 20 20 20 7b 20 69 66 28 20 63 20 26 20 31 20 29 20 63 20 3d 20 30 78 45 44 42 .........{.if(.c.&.1.).c.=.0xEDB
50c80 38 38 33 32 30 55 20 5e 20 28 20 63 20 3e 3e 20 31 20 29 3b 20 65 6c 73 65 20 63 20 3e 3e 3d 20 88320U.^.(.c.>>.1.);.else.c.>>=.
50ca0 31 3b 20 7d 0a 20 20 20 20 20 20 64 61 74 61 5b 6e 5d 20 3d 20 63 3b 0a 20 20 20 20 20 20 7d 0a 1;.}.......data[n].=.c;.......}.
50cc0 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 75 70 64 61 74 65 5f 62 75 66 28 20 75 69 6e 74 33 32 ....}....void.update_buf(.uint32
50ce0 5f 74 20 26 20 63 72 63 2c 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 _t.&.crc,.const.uint8_t.*.const.
50d00 62 75 66 66 65 72 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 buffer,....................const
50d20 20 69 6e 74 20 73 69 7a 65 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 66 6f 72 28 .int.size.).const.....{.....for(
50d40 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a 65 3b 20 2b 2b 69 20 29 0a 20 20 20 20 .int.i.=.0;.i.<.size;.++i.).....
50d60 20 20 63 72 63 20 3d 20 64 61 74 61 5b 28 63 72 63 5e 62 75 66 66 65 72 5b 69 5d 29 26 30 78 46 ..crc.=.data[(crc^buffer[i])&0xF
50d80 46 5d 20 5e 20 28 20 63 72 63 20 3e 3e 20 38 20 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 3b 0a 0a 63 F].^.(.crc.>>.8.);.....}...};..c
50da0 6f 6e 73 74 20 43 52 43 33 32 20 63 72 63 33 32 3b 0a 0a 0a 65 6e 75 6d 20 7b 20 68 65 61 64 65 onst.CRC32.crc32;...enum.{.heade
50dc0 72 5f 73 69 7a 65 20 3d 20 36 2c 20 74 72 61 69 6c 65 72 5f 73 69 7a 65 20 3d 20 32 30 20 7d 3b r_size.=.6,.trailer_size.=.20.};
50de0 0a 74 79 70 65 64 65 66 20 75 69 6e 74 38 5f 74 20 4c 7a 69 70 5f 68 65 61 64 65 72 5b 68 65 61 .typedef.uint8_t.Lzip_header[hea
50e00 64 65 72 5f 73 69 7a 65 5d 3b 20 2f 2f 20 30 2d 33 20 6d 61 67 69 63 20 62 79 74 65 73 0a 09 09 der_size];.//.0-3.magic.bytes...
50e20 09 09 09 20 20 2f 2f 20 20 20 34 20 76 65 72 73 69 6f 6e 0a 09 09 09 09 09 20 20 2f 2f 20 20 20 .....//...4.version........//...
50e40 35 20 63 6f 64 65 64 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 0a 74 79 70 65 64 65 66 20 5.coded.dictionary.size.typedef.
50e60 75 69 6e 74 38 5f 74 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 5b 74 72 61 69 6c 65 72 5f 73 69 7a uint8_t.Lzip_trailer[trailer_siz
50e80 65 5d 3b 0a 09 09 09 2f 2f 20 20 30 2d 33 20 20 43 52 43 33 32 20 6f 66 20 74 68 65 20 75 6e 63 e];....//..0-3..CRC32.of.the.unc
50ea0 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 0a 09 09 09 2f 2f 20 20 34 2d 31 31 20 73 69 7a 65 20 ompressed.data....//..4-11.size.
50ec0 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 0a 09 09 09 2f 2f 20 31 of.the.uncompressed.data....//.1
50ee0 32 2d 31 39 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 69 6e 63 6c 75 64 69 6e 67 20 68 65 61 64 65 2-19.member.size.including.heade
50f00 72 20 61 6e 64 20 74 72 61 69 6c 65 72 0a 0a 63 6c 61 73 73 20 52 61 6e 67 65 5f 64 65 63 6f 64 r.and.trailer..class.Range_decod
50f20 65 72 0a 20 20 7b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 er...{...unsigned.long.long.memb
50f40 65 72 5f 70 6f 73 3b 0a 20 20 75 69 6e 74 33 32 5f 74 20 63 6f 64 65 3b 0a 20 20 75 69 6e 74 33 er_pos;...uint32_t.code;...uint3
50f60 32 5f 74 20 72 61 6e 67 65 3b 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 52 61 6e 67 65 5f 64 65 63 6f 2_t.range;..public:...Range_deco
50f80 64 65 72 28 29 0a 20 20 20 20 3a 20 6d 65 6d 62 65 72 5f 70 6f 73 28 20 68 65 61 64 65 72 5f 73 der().....:.member_pos(.header_s
50fa0 69 7a 65 20 29 2c 20 63 6f 64 65 28 20 30 20 29 2c 20 72 61 6e 67 65 28 20 30 78 46 46 46 46 46 ize.),.code(.0.),.range(.0xFFFFF
50fc0 46 46 46 55 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 67 65 74 5f 62 79 74 65 28 29 20 FFFU.).....{.....if(.get_byte().
50fe0 21 3d 20 30 20 29 09 09 2f 2f 20 63 68 65 63 6b 20 66 69 72 73 74 20 4c 5a 4d 41 20 62 79 74 65 !=.0.)..//.check.first.LZMA.byte
51000 0a 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 4e 6f 6e 7a 65 72 6f 20 66 69 .......{.std::fputs(."Nonzero.fi
51020 72 73 74 20 4c 5a 4d 41 20 62 79 74 65 2e 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 3b 20 73 74 64 rst.LZMA.byte.\n",.stderr.);.std
51040 3a 3a 65 78 69 74 28 20 32 20 29 3b 20 7d 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 ::exit(.2.);.}.....for(.int.i.=.
51060 30 3b 20 69 20 3c 20 34 3b 20 2b 2b 69 20 29 20 63 6f 64 65 20 3d 20 28 20 63 6f 64 65 20 3c 3c 0;.i.<.4;.++i.).code.=.(.code.<<
51080 20 38 20 29 20 7c 20 67 65 74 5f 62 79 74 65 28 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 69 6e 74 .8.).|.get_byte();.....}....uint
510a0 38 5f 74 20 67 65 74 5f 62 79 74 65 28 29 20 7b 20 2b 2b 6d 65 6d 62 65 72 5f 70 6f 73 3b 20 72 8_t.get_byte().{.++member_pos;.r
510c0 65 74 75 72 6e 20 73 74 64 3a 3a 67 65 74 63 28 20 73 74 64 69 6e 20 29 3b 20 7d 0a 20 20 75 6e eturn.std::getc(.stdin.);.}...un
510e0 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e signed.long.long.member_position
51100 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 6d 65 6d 62 65 72 5f 70 6f 73 3b 20 7d 0a ().const.{.return.member_pos;.}.
51120 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 28 20 63 6f 6e 73 74 20 69 6e 74 20 6e 75 ...unsigned.decode(.const.int.nu
51140 6d 5f 62 69 74 73 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 m_bits.).....{.....unsigned.symb
51160 6f 6c 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 6e 75 6d 5f 62 69 74 ol.=.0;.....for(.int.i.=.num_bit
51180 73 3b 20 69 20 3e 20 30 3b 20 2d 2d 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 72 61 s;.i.>.0;.--i.).......{.......ra
511a0 6e 67 65 20 3e 3e 3d 20 31 3b 0a 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3c 3c 3d 20 31 3b 0a 20 nge.>>=.1;.......symbol.<<=.1;..
511c0 20 20 20 20 20 69 66 28 20 63 6f 64 65 20 3e 3d 20 72 61 6e 67 65 20 29 20 7b 20 63 6f 64 65 20 .....if(.code.>=.range.).{.code.
511e0 2d 3d 20 72 61 6e 67 65 3b 20 73 79 6d 62 6f 6c 20 7c 3d 20 31 3b 20 7d 0a 20 20 20 20 20 20 69 -=.range;.symbol.|=.1;.}.......i
51200 66 28 20 72 61 6e 67 65 20 3c 3d 20 30 78 30 30 46 46 46 46 46 46 55 20 29 09 09 09 2f 2f 20 6e f(.range.<=.0x00FFFFFFU.)...//.n
51220 6f 72 6d 61 6c 69 7a 65 0a 20 20 20 20 20 20 20 20 7b 20 72 61 6e 67 65 20 3c 3c 3d 20 38 3b 20 ormalize.........{.range.<<=.8;.
51240 63 6f 64 65 20 3d 20 28 20 63 6f 64 65 20 3c 3c 20 38 20 29 20 7c 20 67 65 74 5f 62 79 74 65 28 code.=.(.code.<<.8.).|.get_byte(
51260 29 3b 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 73 79 6d 62 6f 6c 3b 0a );.}.......}.....return.symbol;.
51280 20 20 20 20 7d 0a 0a 20 20 62 6f 6f 6c 20 64 65 63 6f 64 65 5f 62 69 74 28 20 42 69 74 5f 6d 6f ....}....bool.decode_bit(.Bit_mo
512a0 64 65 6c 20 26 20 62 6d 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 62 6f 6f 6c 20 73 79 6d 62 6f 6c del.&.bm.).....{.....bool.symbol
512c0 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 33 32 5f 74 20 62 6f 75 6e 64 20 3d 20 28 20 72 ;.....const.uint32_t.bound.=.(.r
512e0 61 6e 67 65 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 5f 62 69 74 73 20 29 20 2a ange.>>.bit_model_total_bits.).*
51300 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 3b 0a 20 20 20 20 69 66 28 20 63 6f 64 65 20 3c 20 .bm.probability;.....if(.code.<.
51320 62 6f 75 6e 64 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 72 61 6e 67 65 20 3d 20 62 6f bound.).......{.......range.=.bo
51340 75 6e 64 3b 0a 20 20 20 20 20 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 2b 3d 0a 20 20 20 und;.......bm.probability.+=....
51360 20 20 20 20 20 28 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 20 2d 20 62 6d 2e 70 72 6f 62 .....(.bit_model_total.-.bm.prob
51380 61 62 69 6c 69 74 79 20 29 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 6c 5f 6d 6f 76 65 5f 62 69 74 73 ability.).>>.bit_model_move_bits
513a0 3b 0a 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3d 20 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 ;.......symbol.=.0;.......}.....
513c0 65 6c 73 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 64 65 20 2d 3d 20 62 6f 75 6e 64 else.......{.......code.-=.bound
513e0 3b 0a 20 20 20 20 20 20 72 61 6e 67 65 20 2d 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 62 6d ;.......range.-=.bound;.......bm
51400 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 2d 3d 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 3e .probability.-=.bm.probability.>
51420 3e 20 62 69 74 5f 6d 6f 64 65 6c 5f 6d 6f 76 65 5f 62 69 74 73 3b 0a 20 20 20 20 20 20 73 79 6d >.bit_model_move_bits;.......sym
51440 62 6f 6c 20 3d 20 31 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 72 61 6e 67 65 20 3c bol.=.1;.......}.....if(.range.<
51460 3d 20 30 78 30 30 46 46 46 46 46 46 55 20 29 09 09 09 09 2f 2f 20 6e 6f 72 6d 61 6c 69 7a 65 0a =.0x00FFFFFFU.)....//.normalize.
51480 20 20 20 20 20 20 7b 20 72 61 6e 67 65 20 3c 3c 3d 20 38 3b 20 63 6f 64 65 20 3d 20 28 20 63 6f ......{.range.<<=.8;.code.=.(.co
514a0 64 65 20 3c 3c 20 38 20 29 20 7c 20 67 65 74 5f 62 79 74 65 28 29 3b 20 7d 0a 20 20 20 20 72 65 de.<<.8.).|.get_byte();.}.....re
514c0 74 75 72 6e 20 73 79 6d 62 6f 6c 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 turn.symbol;.....}....unsigned.d
514e0 65 63 6f 64 65 5f 74 72 65 65 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c 20 63 6f 6e 73 ecode_tree(.Bit_model.bm[],.cons
51500 74 20 69 6e 74 20 6e 75 6d 5f 62 69 74 73 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 t.int.num_bits.).....{.....unsig
51520 6e 65 64 20 73 79 6d 62 6f 6c 20 3d 20 31 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d ned.symbol.=.1;.....for(.int.i.=
51540 20 30 3b 20 69 20 3c 20 6e 75 6d 5f 62 69 74 73 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 73 79 .0;.i.<.num_bits;.++i.).......sy
51560 6d 62 6f 6c 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3c 3c 20 31 20 29 20 7c 20 64 65 63 6f 64 65 5f mbol.=.(.symbol.<<.1.).|.decode_
51580 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 73 79 bit(.bm[symbol].);.....return.sy
515a0 6d 62 6f 6c 20 2d 20 28 20 31 20 3c 3c 20 6e 75 6d 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 7d 0a mbol.-.(.1.<<.num_bits.);.....}.
515c0 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 5f 74 72 65 65 5f 72 65 76 65 72 73 65 64 ...unsigned.decode_tree_reversed
515e0 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6e 75 6d 5f (.Bit_model.bm[],.const.int.num_
51600 62 69 74 73 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c bits.).....{.....unsigned.symbol
51620 20 3d 20 64 65 63 6f 64 65 5f 74 72 65 65 28 20 62 6d 2c 20 6e 75 6d 5f 62 69 74 73 20 29 3b 0a .=.decode_tree(.bm,.num_bits.);.
51640 20 20 20 20 75 6e 73 69 67 6e 65 64 20 72 65 76 65 72 73 65 64 5f 73 79 6d 62 6f 6c 20 3d 20 30 ....unsigned.reversed_symbol.=.0
51660 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d 5f 62 69 ;.....for(.int.i.=.0;.i.<.num_bi
51680 74 73 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 72 65 76 65 72 73 65 64 ts;.++i.).......{.......reversed
516a0 5f 73 79 6d 62 6f 6c 20 3d 20 28 20 72 65 76 65 72 73 65 64 5f 73 79 6d 62 6f 6c 20 3c 3c 20 31 _symbol.=.(.reversed_symbol.<<.1
516c0 20 29 20 7c 20 28 20 73 79 6d 62 6f 6c 20 26 20 31 20 29 3b 0a 20 20 20 20 20 20 73 79 6d 62 6f .).|.(.symbol.&.1.);.......symbo
516e0 6c 20 3e 3e 3d 20 31 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 72 65 76 65 l.>>=.1;.......}.....return.reve
51700 72 73 65 64 5f 73 79 6d 62 6f 6c 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 rsed_symbol;.....}....unsigned.d
51720 65 63 6f 64 65 5f 6d 61 74 63 68 65 64 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c 20 63 ecode_matched(.Bit_model.bm[],.c
51740 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6d 61 74 63 68 5f 62 79 74 65 20 29 0a 20 20 20 20 7b onst.unsigned.match_byte.).....{
51760 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c 20 3d 20 31 3b 0a 20 20 20 20 66 6f .....unsigned.symbol.=.1;.....fo
51780 72 28 20 69 6e 74 20 69 20 3d 20 37 3b 20 69 20 3e 3d 20 30 3b 20 2d 2d 69 20 29 0a 20 20 20 20 r(.int.i.=.7;.i.>=.0;.--i.).....
517a0 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 6d 61 74 63 68 5f 62 69 74 20 3d ..{.......const.bool.match_bit.=
517c0 20 28 20 6d 61 74 63 68 5f 62 79 74 65 20 3e 3e 20 69 20 29 20 26 20 31 3b 0a 20 20 20 20 20 20 .(.match_byte.>>.i.).&.1;.......
517e0 63 6f 6e 73 74 20 62 6f 6f 6c 20 62 69 74 20 3d 20 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b const.bool.bit.=.decode_bit(.bm[
51800 73 79 6d 62 6f 6c 2b 28 6d 61 74 63 68 5f 62 69 74 3c 3c 38 29 2b 30 78 31 30 30 5d 20 29 3b 0a symbol+(match_bit<<8)+0x100].);.
51820 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3c 3c 20 31 20 29 20 7c ......symbol.=.(.symbol.<<.1.).|
51840 20 62 69 74 3b 0a 20 20 20 20 20 20 69 66 28 20 6d 61 74 63 68 5f 62 69 74 20 21 3d 20 62 69 74 .bit;.......if(.match_bit.!=.bit
51860 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 77 68 69 6c 65 28 20 73 79 6d 62 .).........{.........while(.symb
51880 6f 6c 20 3c 20 30 78 31 30 30 20 29 0a 20 20 20 20 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3d 20 ol.<.0x100.)...........symbol.=.
518a0 28 20 73 79 6d 62 6f 6c 20 3c 3c 20 31 20 29 20 7c 20 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d (.symbol.<<.1.).|.decode_bit(.bm
518c0 5b 73 79 6d 62 6f 6c 5d 20 29 3b 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 [symbol].);.........break;......
518e0 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 73 79 6d 62 6f 6c 20 26 ...}.......}.....return.symbol.&
51900 20 30 78 46 46 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 5f .0xFF;.....}....unsigned.decode_
51920 6c 65 6e 28 20 4c 65 6e 5f 6d 6f 64 65 6c 20 26 20 6c 6d 2c 20 63 6f 6e 73 74 20 69 6e 74 20 70 len(.Len_model.&.lm,.const.int.p
51940 6f 73 5f 73 74 61 74 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 64 65 63 6f 64 65 5f os_state.).....{.....if(.decode_
51960 62 69 74 28 20 6c 6d 2e 63 68 6f 69 63 65 31 20 29 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 72 bit(.lm.choice1.).==.0.).......r
51980 65 74 75 72 6e 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 2b 0a 20 20 20 20 20 20 20 20 20 20 eturn.min_match_len.+...........
519a0 20 20 20 64 65 63 6f 64 65 5f 74 72 65 65 28 20 6c 6d 2e 62 6d 5f 6c 6f 77 5b 70 6f 73 5f 73 74 ...decode_tree(.lm.bm_low[pos_st
519c0 61 74 65 5d 2c 20 6c 65 6e 5f 6c 6f 77 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 69 66 28 20 64 65 ate],.len_low_bits.);.....if(.de
519e0 63 6f 64 65 5f 62 69 74 28 20 6c 6d 2e 63 68 6f 69 63 65 32 20 29 20 3d 3d 20 30 20 29 0a 20 20 code_bit(.lm.choice2.).==.0.)...
51a00 20 20 20 20 72 65 74 75 72 6e 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 2b 20 6c 65 6e 5f 6c ....return.min_match_len.+.len_l
51a20 6f 77 5f 73 79 6d 62 6f 6c 73 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 63 6f 64 65 ow_symbols.+..............decode
51a40 5f 74 72 65 65 28 20 6c 6d 2e 62 6d 5f 6d 69 64 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 6c 65 6e _tree(.lm.bm_mid[pos_state],.len
51a60 5f 6d 69 64 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 6d 69 6e 5f 6d 61 74 63 _mid_bits.);.....return.min_matc
51a80 68 5f 6c 65 6e 20 2b 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 2b 20 6c 65 6e 5f 6d 69 h_len.+.len_low_symbols.+.len_mi
51aa0 64 5f 73 79 6d 62 6f 6c 73 20 2b 0a 20 20 20 20 20 20 20 20 20 20 20 64 65 63 6f 64 65 5f 74 72 d_symbols.+............decode_tr
51ac0 65 65 28 20 6c 6d 2e 62 6d 5f 68 69 67 68 2c 20 6c 65 6e 5f 68 69 67 68 5f 62 69 74 73 20 29 3b ee(.lm.bm_high,.len_high_bits.);
51ae0 0a 20 20 20 20 7d 0a 20 20 7d 3b 0a 0a 0a 63 6c 61 73 73 20 4c 5a 5f 64 65 63 6f 64 65 72 0a 20 .....}...};...class.LZ_decoder..
51b00 20 7b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 61 72 74 69 61 6c 5f .{...unsigned.long.long.partial_
51b20 64 61 74 61 5f 70 6f 73 3b 0a 20 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 72 64 65 63 3b 0a data_pos;...Range_decoder.rdec;.
51b40 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 ..const.unsigned.dictionary_size
51b60 3b 0a 20 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 62 75 66 66 65 72 3b 09 2f 2f 20 6f ;...uint8_t.*.const.buffer;.//.o
51b80 75 74 70 75 74 20 62 75 66 66 65 72 0a 20 20 75 6e 73 69 67 6e 65 64 20 70 6f 73 3b 09 09 09 2f utput.buffer...unsigned.pos;.../
51ba0 2f 20 63 75 72 72 65 6e 74 20 70 6f 73 20 69 6e 20 62 75 66 66 65 72 0a 20 20 75 6e 73 69 67 6e /.current.pos.in.buffer...unsign
51bc0 65 64 20 73 74 72 65 61 6d 5f 70 6f 73 3b 09 09 2f 2f 20 66 69 72 73 74 20 62 79 74 65 20 6e 6f ed.stream_pos;..//.first.byte.no
51be0 74 20 79 65 74 20 77 72 69 74 74 65 6e 20 74 6f 20 73 74 64 6f 75 74 0a 20 20 75 69 6e 74 33 32 t.yet.written.to.stdout...uint32
51c00 5f 74 20 63 72 63 5f 3b 0a 20 20 62 6f 6f 6c 20 70 6f 73 5f 77 72 61 70 70 65 64 3b 0a 0a 20 20 _t.crc_;...bool.pos_wrapped;....
51c20 76 6f 69 64 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 0a 20 20 75 69 6e 74 38 5f 74 20 70 65 void.flush_data();....uint8_t.pe
51c40 65 6b 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 73 74 61 6e 63 65 20 29 20 63 6f ek(.const.unsigned.distance.).co
51c60 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 70 6f 73 20 3e 20 64 69 73 74 61 6e 63 65 nst.....{.....if(.pos.>.distance
51c80 20 29 20 72 65 74 75 72 6e 20 62 75 66 66 65 72 5b 70 6f 73 20 2d 20 64 69 73 74 61 6e 63 65 20 .).return.buffer[pos.-.distance.
51ca0 2d 20 31 5d 3b 0a 20 20 20 20 69 66 28 20 70 6f 73 5f 77 72 61 70 70 65 64 20 29 20 72 65 74 75 -.1];.....if(.pos_wrapped.).retu
51cc0 72 6e 20 62 75 66 66 65 72 5b 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 2b 20 70 6f 73 20 rn.buffer[dictionary_size.+.pos.
51ce0 2d 20 64 69 73 74 61 6e 63 65 20 2d 20 31 5d 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 30 3b 09 09 -.distance.-.1];.....return.0;..
51d00 09 2f 2f 20 70 72 65 76 5f 62 79 74 65 20 6f 66 20 66 69 72 73 74 20 62 79 74 65 0a 20 20 20 20 .//.prev_byte.of.first.byte.....
51d20 7d 0a 0a 20 20 76 6f 69 64 20 70 75 74 5f 62 79 74 65 28 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f }....void.put_byte(.const.uint8_
51d40 74 20 62 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 62 75 66 66 65 72 5b 70 6f 73 5d 20 3d 20 62 3b t.b.).....{.....buffer[pos].=.b;
51d60 0a 20 20 20 20 69 66 28 20 2b 2b 70 6f 73 20 3e 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a .....if(.++pos.>=.dictionary_siz
51d80 65 20 29 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 20 20 20 20 7d 0a 0a 70 75 62 6c 69 63 3a e.).flush_data();.....}..public:
51da0 0a 20 20 65 78 70 6c 69 63 69 74 20 4c 5a 5f 64 65 63 6f 64 65 72 28 20 63 6f 6e 73 74 20 75 6e ...explicit.LZ_decoder(.const.un
51dc0 73 69 67 6e 65 64 20 64 69 63 74 5f 73 69 7a 65 20 29 0a 20 20 20 20 3a 0a 20 20 20 20 70 61 72 signed.dict_size.).....:.....par
51de0 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 28 20 30 20 29 2c 0a 20 20 20 20 64 69 63 74 69 6f 6e 61 tial_data_pos(.0.),.....dictiona
51e00 72 79 5f 73 69 7a 65 28 20 64 69 63 74 5f 73 69 7a 65 20 29 2c 0a 20 20 20 20 62 75 66 66 65 72 ry_size(.dict_size.),.....buffer
51e20 28 20 6e 65 77 20 75 69 6e 74 38 5f 74 5b 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 5d 20 29 (.new.uint8_t[dictionary_size].)
51e40 2c 0a 20 20 20 20 70 6f 73 28 20 30 20 29 2c 0a 20 20 20 20 73 74 72 65 61 6d 5f 70 6f 73 28 20 ,.....pos(.0.),.....stream_pos(.
51e60 30 20 29 2c 0a 20 20 20 20 63 72 63 5f 28 20 30 78 46 46 46 46 46 46 46 46 55 20 29 2c 0a 20 20 0.),.....crc_(.0xFFFFFFFFU.),...
51e80 20 20 70 6f 73 5f 77 72 61 70 70 65 64 28 20 66 61 6c 73 65 20 29 0a 20 20 20 20 7b 7d 0a 0a 20 ..pos_wrapped(.false.).....{}...
51ea0 20 7e 4c 5a 5f 64 65 63 6f 64 65 72 28 29 20 7b 20 64 65 6c 65 74 65 5b 5d 20 62 75 66 66 65 72 .~LZ_decoder().{.delete[].buffer
51ec0 3b 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 63 72 63 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 ;.}....unsigned.crc().const.{.re
51ee0 74 75 72 6e 20 63 72 63 5f 20 5e 20 30 78 46 46 46 46 46 46 46 46 55 3b 20 7d 0a 20 20 75 6e 73 turn.crc_.^.0xFFFFFFFFU;.}...uns
51f00 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 igned.long.long.data_position().
51f20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f const.....{.return.partial_data_
51f40 70 6f 73 20 2b 20 70 6f 73 3b 20 7d 0a 20 20 75 69 6e 74 38 5f 74 20 67 65 74 5f 62 79 74 65 28 pos.+.pos;.}...uint8_t.get_byte(
51f60 29 20 7b 20 72 65 74 75 72 6e 20 72 64 65 63 2e 67 65 74 5f 62 79 74 65 28 29 3b 20 7d 0a 20 20 ).{.return.rdec.get_byte();.}...
51f80 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 unsigned.long.long.member_positi
51fa0 6f 6e 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 72 64 65 63 2e 6d 65 6d on().const.....{.return.rdec.mem
51fc0 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 20 7d 0a 0a 20 20 62 6f 6f 6c 20 64 65 63 6f 64 65 ber_position();.}....bool.decode
51fe0 5f 6d 65 6d 62 65 72 28 29 3b 0a 20 20 7d 3b 0a 0a 0a 76 6f 69 64 20 4c 5a 5f 64 65 63 6f 64 65 _member();...};...void.LZ_decode
52000 72 3a 3a 66 6c 75 73 68 5f 64 61 74 61 28 29 0a 20 20 7b 0a 20 20 69 66 28 20 70 6f 73 20 3e 20 r::flush_data()...{...if(.pos.>.
52020 73 74 72 65 61 6d 5f 70 6f 73 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 stream_pos.).....{.....const.uns
52040 69 67 6e 65 64 20 73 69 7a 65 20 3d 20 70 6f 73 20 2d 20 73 74 72 65 61 6d 5f 70 6f 73 3b 0a 20 igned.size.=.pos.-.stream_pos;..
52060 20 20 20 63 72 63 33 32 2e 75 70 64 61 74 65 5f 62 75 66 28 20 63 72 63 5f 2c 20 62 75 66 66 65 ...crc32.update_buf(.crc_,.buffe
52080 72 20 2b 20 73 74 72 65 61 6d 5f 70 6f 73 2c 20 73 69 7a 65 20 29 3b 0a 20 20 20 20 69 66 28 20 r.+.stream_pos,.size.);.....if(.
520a0 73 74 64 3a 3a 66 77 72 69 74 65 28 20 62 75 66 66 65 72 20 2b 20 73 74 72 65 61 6d 5f 70 6f 73 std::fwrite(.buffer.+.stream_pos
520c0 2c 20 31 2c 20 73 69 7a 65 2c 20 73 74 64 6f 75 74 20 29 20 21 3d 20 73 69 7a 65 20 29 0a 20 20 ,.1,.size,.stdout.).!=.size.)...
520e0 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 57 72 69 ....{.std::fprintf(.stderr,."Wri
52100 74 65 20 65 72 72 6f 72 3a 20 25 73 5c 6e 22 2c 20 73 74 64 3a 3a 73 74 72 65 72 72 6f 72 28 20 te.error:.%s\n",.std::strerror(.
52120 65 72 72 6e 6f 20 29 20 29 3b 0a 20 20 20 20 20 20 20 20 73 74 64 3a 3a 65 78 69 74 28 20 31 20 errno.).);.........std::exit(.1.
52140 29 3b 20 7d 0a 20 20 20 20 69 66 28 20 70 6f 73 20 3e 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 );.}.....if(.pos.>=.dictionary_s
52160 69 7a 65 20 29 0a 20 20 20 20 20 20 7b 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 20 2b ize.).......{.partial_data_pos.+
52180 3d 20 70 6f 73 3b 20 70 6f 73 20 3d 20 30 3b 20 70 6f 73 5f 77 72 61 70 70 65 64 20 3d 20 74 72 =.pos;.pos.=.0;.pos_wrapped.=.tr
521a0 75 65 3b 20 7d 0a 20 20 20 20 73 74 72 65 61 6d 5f 70 6f 73 20 3d 20 70 6f 73 3b 0a 20 20 20 20 ue;.}.....stream_pos.=.pos;.....
521c0 7d 0a 20 20 7d 0a 0a 0a 62 6f 6f 6c 20 4c 5a 5f 64 65 63 6f 64 65 72 3a 3a 64 65 63 6f 64 65 5f }...}...bool.LZ_decoder::decode_
521e0 6d 65 6d 62 65 72 28 29 09 2f 2f 20 52 65 74 75 72 6e 20 66 61 6c 73 65 20 69 66 20 65 72 72 6f member().//.Return.false.if.erro
52200 72 0a 20 20 7b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 31 3c 3c r...{...Bit_model.bm_literal[1<<
52220 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 74 73 5d 5b 30 78 33 30 30 5d 3b 0a 20 20 literal_context_bits][0x300];...
52240 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6d 61 74 63 68 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 Bit_model.bm_match[State::states
52260 5d 5b 70 6f 73 5f 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 65 ][pos_states];...Bit_model.bm_re
52280 70 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d p[State::states];...Bit_model.bm
522a0 5f 72 65 70 30 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 _rep0[State::states];...Bit_mode
522c0 6c 20 62 6d 5f 72 65 70 31 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f l.bm_rep1[State::states];...Bit_
522e0 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 32 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 3b 0a 20 20 model.bm_rep2[State::states];...
52300 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6c 65 6e 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 5b Bit_model.bm_len[State::states][
52320 70 6f 73 5f 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 64 69 73 5f pos_states];...Bit_model.bm_dis_
52340 73 6c 6f 74 5b 6c 65 6e 5f 73 74 61 74 65 73 5d 5b 31 3c 3c 64 69 73 5f 73 6c 6f 74 5f 62 69 74 slot[len_states][1<<dis_slot_bit
52360 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 64 69 73 5b 6d 6f 64 65 6c 65 64 5f 64 s];...Bit_model.bm_dis[modeled_d
52380 69 73 74 61 6e 63 65 73 2d 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 2b 31 5d 3b 0a 20 20 42 69 74 istances-end_dis_model+1];...Bit
523a0 5f 6d 6f 64 65 6c 20 62 6d 5f 61 6c 69 67 6e 5b 64 69 73 5f 61 6c 69 67 6e 5f 73 69 7a 65 5d 3b _model.bm_align[dis_align_size];
523c0 0a 20 20 4c 65 6e 5f 6d 6f 64 65 6c 20 6d 61 74 63 68 5f 6c 65 6e 5f 6d 6f 64 65 6c 3b 0a 20 20 ...Len_model.match_len_model;...
523e0 4c 65 6e 5f 6d 6f 64 65 6c 20 72 65 70 5f 6c 65 6e 5f 6d 6f 64 65 6c 3b 0a 20 20 75 6e 73 69 67 Len_model.rep_len_model;...unsig
52400 6e 65 64 20 72 65 70 30 20 3d 20 30 3b 09 09 2f 2f 20 72 65 70 5b 30 2d 33 5d 20 6c 61 74 65 73 ned.rep0.=.0;..//.rep[0-3].lates
52420 74 20 66 6f 75 72 20 64 69 73 74 61 6e 63 65 73 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 31 t.four.distances...unsigned.rep1
52440 20 3d 20 30 3b 09 09 2f 2f 20 75 73 65 64 20 66 6f 72 20 65 66 66 69 63 69 65 6e 74 20 63 6f 64 .=.0;..//.used.for.efficient.cod
52460 69 6e 67 20 6f 66 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 32 20 3d 20 30 3b 09 09 2f 2f 20 ing.of...unsigned.rep2.=.0;..//.
52480 72 65 70 65 61 74 65 64 20 64 69 73 74 61 6e 63 65 73 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 repeated.distances...unsigned.re
524a0 70 33 20 3d 20 30 3b 0a 20 20 53 74 61 74 65 20 73 74 61 74 65 3b 0a 0a 20 20 77 68 69 6c 65 28 p3.=.0;...State.state;....while(
524c0 20 21 73 74 64 3a 3a 66 65 6f 66 28 20 73 74 64 69 6e 20 29 20 26 26 20 21 73 74 64 3a 3a 66 65 .!std::feof(.stdin.).&&.!std::fe
524e0 72 72 6f 72 28 20 73 74 64 69 6e 20 29 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 rror(.stdin.).).....{.....const.
52500 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 20 3d 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 int.pos_state.=.data_position().
52520 26 20 70 6f 73 5f 73 74 61 74 65 5f 6d 61 73 6b 3b 0a 20 20 20 20 69 66 28 20 72 64 65 63 2e 64 &.pos_state_mask;.....if(.rdec.d
52540 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 6d 61 74 63 68 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 ecode_bit(.bm_match[state()][pos
52560 5f 73 74 61 74 65 5d 20 29 20 3d 3d 20 30 20 29 09 2f 2f 20 31 73 74 20 62 69 74 0a 20 20 20 20 _state].).==.0.).//.1st.bit.....
52580 20 20 7b 0a 20 20 20 20 20 20 2f 2f 20 6c 69 74 65 72 61 6c 20 62 79 74 65 0a 20 20 20 20 20 20 ..{.......//.literal.byte.......
525a0 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 70 72 65 76 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 const.uint8_t.prev_byte.=.peek(.
525c0 30 20 29 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6c 69 74 65 72 61 6c 5f 73 74 61 0.);.......const.int.literal_sta
525e0 74 65 20 3d 20 70 72 65 76 5f 62 79 74 65 20 3e 3e 20 28 20 38 20 2d 20 6c 69 74 65 72 61 6c 5f te.=.prev_byte.>>.(.8.-.literal_
52600 63 6f 6e 74 65 78 74 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 20 20 42 69 74 5f 6d 6f 64 65 6c 20 context_bits.);.......Bit_model.
52620 2a 20 63 6f 6e 73 74 20 62 6d 20 3d 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 6c 69 74 65 72 61 6c 5f *.const.bm.=.bm_literal[literal_
52640 73 74 61 74 65 5d 3b 0a 20 20 20 20 20 20 69 66 28 20 73 74 61 74 65 2e 69 73 5f 63 68 61 72 28 state];.......if(.state.is_char(
52660 29 20 29 0a 20 20 20 20 20 20 20 20 70 75 74 5f 62 79 74 65 28 20 72 64 65 63 2e 64 65 63 6f 64 ).).........put_byte(.rdec.decod
52680 65 5f 74 72 65 65 28 20 62 6d 2c 20 38 20 29 20 29 3b 0a 20 20 20 20 20 20 65 6c 73 65 0a 20 20 e_tree(.bm,.8.).);.......else...
526a0 20 20 20 20 20 20 70 75 74 5f 62 79 74 65 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 6d 61 74 63 ......put_byte(.rdec.decode_matc
526c0 68 65 64 28 20 62 6d 2c 20 70 65 65 6b 28 20 72 65 70 30 20 29 20 29 20 29 3b 0a 20 20 20 20 20 hed(.bm,.peek(.rep0.).).);......
526e0 20 73 74 61 74 65 2e 73 65 74 5f 63 68 61 72 28 29 3b 0a 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 .state.set_char();.......continu
52700 65 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 2f 2f 20 6d 61 74 63 68 20 6f 72 20 72 65 70 65 61 e;.......}.....//.match.or.repea
52720 74 65 64 20 6d 61 74 63 68 0a 20 20 20 20 69 6e 74 20 6c 65 6e 3b 0a 20 20 20 20 69 66 28 20 72 ted.match.....int.len;.....if(.r
52740 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 5b 73 74 61 74 65 28 29 5d 20 dec.decode_bit(.bm_rep[state()].
52760 29 20 21 3d 20 30 20 29 09 09 2f 2f 20 32 6e 64 20 62 69 74 0a 20 20 20 20 20 20 7b 0a 20 20 20 ).!=.0.)..//.2nd.bit.......{....
52780 20 20 20 69 66 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 30 5b ...if(.rdec.decode_bit(.bm_rep0[
527a0 73 74 61 74 65 28 29 5d 20 29 20 3d 3d 20 30 20 29 09 09 2f 2f 20 33 72 64 20 62 69 74 0a 20 20 state()].).==.0.)..//.3rd.bit...
527c0 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f ......{.........if(.rdec.decode_
527e0 62 69 74 28 20 62 6d 5f 6c 65 6e 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 20 bit(.bm_len[state()][pos_state].
52800 29 20 3d 3d 20 30 20 29 20 2f 2f 20 34 74 68 20 62 69 74 0a 20 20 20 20 20 20 20 20 20 20 7b 20 ).==.0.).//.4th.bit...........{.
52820 73 74 61 74 65 2e 73 65 74 5f 73 68 6f 72 74 72 65 70 28 29 3b 20 70 75 74 5f 62 79 74 65 28 20 state.set_shortrep();.put_byte(.
52840 70 65 65 6b 28 20 72 65 70 30 20 29 20 29 3b 20 63 6f 6e 74 69 6e 75 65 3b 20 7d 0a 20 20 20 20 peek(.rep0.).);.continue;.}.....
52860 20 20 20 20 7d 0a 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 ....}.......else.........{......
52880 20 20 20 75 6e 73 69 67 6e 65 64 20 64 69 73 74 61 6e 63 65 3b 0a 20 20 20 20 20 20 20 20 69 66 ...unsigned.distance;.........if
528a0 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 31 5b 73 74 61 74 65 (.rdec.decode_bit(.bm_rep1[state
528c0 28 29 5d 20 29 20 3d 3d 20 30 20 29 09 09 2f 2f 20 34 74 68 20 62 69 74 0a 20 20 20 20 20 20 20 ()].).==.0.)..//.4th.bit........
528e0 20 20 20 64 69 73 74 61 6e 63 65 20 3d 20 72 65 70 31 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 ...distance.=.rep1;.........else
52900 0a 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 69 66 28 20 72 64 65 63 2e ...........{...........if(.rdec.
52920 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5f 72 65 70 32 5b 73 74 61 74 65 28 29 5d 20 29 20 3d decode_bit(.bm_rep2[state()].).=
52940 3d 20 30 20 29 09 2f 2f 20 35 74 68 20 62 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 69 73 =.0.).//.5th.bit.............dis
52960 74 61 6e 63 65 20 3d 20 72 65 70 32 3b 0a 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 tance.=.rep2;...........else....
52980 20 20 20 20 20 20 20 20 20 7b 20 64 69 73 74 61 6e 63 65 20 3d 20 72 65 70 33 3b 20 72 65 70 33 .........{.distance.=.rep3;.rep3
529a0 20 3d 20 72 65 70 32 3b 20 7d 0a 20 20 20 20 20 20 20 20 20 20 72 65 70 32 20 3d 20 72 65 70 31 .=.rep2;.}...........rep2.=.rep1
529c0 3b 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 72 65 70 31 20 3d 20 72 65 70 ;...........}.........rep1.=.rep
529e0 30 3b 0a 20 20 20 20 20 20 20 20 72 65 70 30 20 3d 20 64 69 73 74 61 6e 63 65 3b 0a 20 20 20 20 0;.........rep0.=.distance;.....
52a00 20 20 20 20 7d 0a 20 20 20 20 20 20 73 74 61 74 65 2e 73 65 74 5f 72 65 70 28 29 3b 0a 20 20 20 ....}.......state.set_rep();....
52a20 20 20 20 6c 65 6e 20 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 6c 65 6e 28 20 72 65 70 5f 6c 65 ...len.=.rdec.decode_len(.rep_le
52a40 6e 5f 6d 6f 64 65 6c 2c 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 n_model,.pos_state.);.......}...
52a60 20 20 65 6c 73 65 09 09 09 09 09 2f 2f 20 6d 61 74 63 68 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 ..else.....//.match.......{.....
52a80 20 20 72 65 70 33 20 3d 20 72 65 70 32 3b 20 72 65 70 32 20 3d 20 72 65 70 31 3b 20 72 65 70 31 ..rep3.=.rep2;.rep2.=.rep1;.rep1
52aa0 20 3d 20 72 65 70 30 3b 0a 20 20 20 20 20 20 6c 65 6e 20 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 .=.rep0;.......len.=.rdec.decode
52ac0 5f 6c 65 6e 28 20 6d 61 74 63 68 5f 6c 65 6e 5f 6d 6f 64 65 6c 2c 20 70 6f 73 5f 73 74 61 74 65 _len(.match_len_model,.pos_state
52ae0 20 29 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 6c 65 6e 5f 73 74 61 74 65 20 3d 20 .);.......const.int.len_state.=.
52b00 73 74 64 3a 3a 6d 69 6e 28 20 6c 65 6e 20 2d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 2c 20 6c std::min(.len.-.min_match_len,.l
52b20 65 6e 5f 73 74 61 74 65 73 20 2d 20 31 20 29 3b 0a 20 20 20 20 20 20 72 65 70 30 20 3d 20 72 64 en_states.-.1.);.......rep0.=.rd
52b40 65 63 2e 64 65 63 6f 64 65 5f 74 72 65 65 28 20 62 6d 5f 64 69 73 5f 73 6c 6f 74 5b 6c 65 6e 5f ec.decode_tree(.bm_dis_slot[len_
52b60 73 74 61 74 65 5d 2c 20 64 69 73 5f 73 6c 6f 74 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 20 20 69 state],.dis_slot_bits.);.......i
52b80 66 28 20 72 65 70 30 20 3e 3d 20 73 74 61 72 74 5f 64 69 73 5f 6d 6f 64 65 6c 20 29 0a 20 20 20 f(.rep0.>=.start_dis_model.)....
52ba0 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 .....{.........const.unsigned.di
52bc0 73 5f 73 6c 6f 74 20 3d 20 72 65 70 30 3b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 s_slot.=.rep0;.........const.int
52be0 20 64 69 72 65 63 74 5f 62 69 74 73 20 3d 20 28 20 64 69 73 5f 73 6c 6f 74 20 3e 3e 20 31 20 29 .direct_bits.=.(.dis_slot.>>.1.)
52c00 20 2d 20 31 3b 0a 20 20 20 20 20 20 20 20 72 65 70 30 20 3d 20 28 20 32 20 7c 20 28 20 64 69 73 .-.1;.........rep0.=.(.2.|.(.dis
52c20 5f 73 6c 6f 74 20 26 20 31 20 29 20 29 20 3c 3c 20 64 69 72 65 63 74 5f 62 69 74 73 3b 0a 20 20 _slot.&.1.).).<<.direct_bits;...
52c40 20 20 20 20 20 20 69 66 28 20 64 69 73 5f 73 6c 6f 74 20 3c 20 65 6e 64 5f 64 69 73 5f 6d 6f 64 ......if(.dis_slot.<.end_dis_mod
52c60 65 6c 20 29 0a 20 20 20 20 20 20 20 20 20 20 72 65 70 30 20 2b 3d 20 72 64 65 63 2e 64 65 63 6f el.)...........rep0.+=.rdec.deco
52c80 64 65 5f 74 72 65 65 5f 72 65 76 65 72 73 65 64 28 20 62 6d 5f 64 69 73 20 2b 20 28 20 72 65 70 de_tree_reversed(.bm_dis.+.(.rep
52ca0 30 20 2d 20 64 69 73 5f 73 6c 6f 74 20 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0.-.dis_slot.),.................
52cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 72 .............................dir
52ce0 65 63 74 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 ect_bits.);.........else........
52d00 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 72 65 70 30 20 2b 3d 20 72 64 65 63 2e 64 65 63 6f ...{...........rep0.+=.rdec.deco
52d20 64 65 28 20 64 69 72 65 63 74 5f 62 69 74 73 2d 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 20 29 de(.direct_bits-dis_align_bits.)
52d40 20 3c 3c 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 3b 0a 20 20 20 20 20 20 20 20 20 20 72 65 .<<.dis_align_bits;...........re
52d60 70 30 20 2b 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 74 72 65 65 5f 72 65 76 65 72 73 65 64 28 p0.+=.rdec.decode_tree_reversed(
52d80 20 62 6d 5f 61 6c 69 67 6e 2c 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 20 29 3b 0a 20 20 20 .bm_align,.dis_align_bits.);....
52da0 20 20 20 20 20 20 20 69 66 28 20 72 65 70 30 20 3d 3d 20 30 78 46 46 46 46 46 46 46 46 55 20 29 .......if(.rep0.==.0xFFFFFFFFU.)
52dc0 09 09 2f 2f 20 6d 61 72 6b 65 72 20 66 6f 75 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a ..//.marker.found.............{.
52de0 20 20 20 20 20 20 20 20 20 20 20 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 20 20 20 20 20 20 ............flush_data();.......
52e00 20 20 20 20 20 20 72 65 74 75 72 6e 20 6c 65 6e 20 3d 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 ......return.len.==.min_match_le
52e20 6e 3b 09 2f 2f 20 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 20 6d 61 72 6b 65 72 0a 20 20 20 20 20 n;.//.End.Of.Stream.marker......
52e40 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 .......}...........}.........}..
52e60 20 20 20 20 20 73 74 61 74 65 2e 73 65 74 5f 6d 61 74 63 68 28 29 3b 0a 20 20 20 20 20 20 69 66 .....state.set_match();.......if
52e80 28 20 72 65 70 30 20 3e 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 7c 7c 20 28 20 72 (.rep0.>=.dictionary_size.||.(.r
52ea0 65 70 30 20 3e 3d 20 70 6f 73 20 26 26 20 21 70 6f 73 5f 77 72 61 70 70 65 64 20 29 20 29 0a 20 ep0.>=.pos.&&.!pos_wrapped.).)..
52ec0 20 20 20 20 20 20 20 7b 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 20 72 65 74 75 72 6e 20 66 61 .......{.flush_data();.return.fa
52ee0 6c 73 65 3b 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 lse;.}.......}.....for(.int.i.=.
52f00 30 3b 20 69 20 3c 20 6c 65 6e 3b 20 2b 2b 69 20 29 20 70 75 74 5f 62 79 74 65 28 20 70 65 65 6b 0;.i.<.len;.++i.).put_byte(.peek
52f20 28 20 72 65 70 30 20 29 20 29 3b 0a 20 20 20 20 7d 0a 20 20 66 6c 75 73 68 5f 64 61 74 61 28 29 (.rep0.).);.....}...flush_data()
52f40 3b 0a 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 7d 0a 0a 0a 69 6e 74 20 6d 61 69 6e ;...return.false;...}...int.main
52f60 28 20 63 6f 6e 73 74 20 69 6e 74 20 61 72 67 63 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 (.const.int.argc,.const.char.*.c
52f80 6f 6e 73 74 20 61 72 67 76 5b 5d 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 61 72 67 63 20 3e 20 32 onst.argv[].)...{...if(.argc.>.2
52fa0 20 7c 7c 20 28 20 61 72 67 63 20 3d 3d 20 32 20 26 26 20 73 74 64 3a 3a 73 74 72 63 6d 70 28 20 .||.(.argc.==.2.&&.std::strcmp(.
52fc0 61 72 67 76 5b 31 5d 2c 20 22 2d 64 22 20 29 20 21 3d 20 30 20 29 20 29 0a 20 20 20 20 7b 0a 20 argv[1],."-d".).!=.0.).).....{..
52fe0 20 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 0a 20 20 20 20 20 20 22 4c 7a 64 20 25 73 20 2d 20 ...std::printf(......."Lzd.%s.-.
53000 45 64 75 63 61 74 69 6f 6e 61 6c 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 66 6f 72 20 74 68 65 Educational.decompressor.for.the
53020 20 6c 7a 69 70 20 66 6f 72 6d 61 74 2e 5c 6e 22 0a 20 20 20 20 20 20 22 53 74 75 64 79 20 74 68 .lzip.format.\n"......."Study.th
53040 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 74 6f 20 6c 65 61 72 6e 20 68 6f 77 20 61 20 6c 7a 69 e.source.code.to.learn.how.a.lzi
53060 70 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 20 77 6f 72 6b 73 2e 5c 6e 22 0a 20 20 20 20 20 20 22 p.decompressor.works.\n"......."
53080 53 65 65 20 74 68 65 20 6c 7a 69 70 20 6d 61 6e 75 61 6c 20 66 6f 72 20 61 6e 20 65 78 70 6c 61 See.the.lzip.manual.for.an.expla
530a0 6e 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 6f 64 65 2e 5c 6e 22 0a 20 20 20 20 20 20 22 5c 6e nation.of.the.code.\n"......."\n
530c0 55 73 61 67 65 3a 20 25 73 20 5b 2d 64 5d 20 3c 20 66 69 6c 65 2e 6c 7a 20 3e 20 66 69 6c 65 5c Usage:.%s.[-d].<.file.lz.>.file\
530e0 6e 22 0a 20 20 20 20 20 20 22 4c 7a 64 20 64 65 63 6f 6d 70 72 65 73 73 65 73 20 66 72 6f 6d 20 n"......."Lzd.decompresses.from.
53100 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 standard.input.to.standard.outpu
53120 74 2e 5c 6e 22 0a 20 20 20 20 20 20 22 5c 6e 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 32 t.\n"......."\nCopyright.(C).202
53140 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 5c 6e 22 0a 20 20 20 20 20 20 22 4c 5.Antonio.Diaz.Diaz.\n"......."L
53160 69 63 65 6e 73 65 20 32 2d 63 6c 61 75 73 65 20 42 53 44 2e 5c 6e 22 0a 20 20 20 20 20 20 22 54 icense.2-clause.BSD.\n"......."T
53180 68 69 73 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 61 72 65 20 66 72 his.is.free.software:.you.are.fr
531a0 65 65 20 74 6f 20 63 68 61 6e 67 65 20 61 6e 64 20 72 65 64 69 73 74 72 69 62 75 74 65 20 22 0a ee.to.change.and.redistribute.".
531c0 20 20 20 20 20 20 22 69 74 2e 5c 6e 54 68 65 72 65 20 69 73 20 4e 4f 20 57 41 52 52 41 4e 54 59 ......"it.\nThere.is.NO.WARRANTY
531e0 2c 20 74 6f 20 74 68 65 20 65 78 74 65 6e 74 20 70 65 72 6d 69 74 74 65 64 20 62 79 20 6c 61 77 ,.to.the.extent.permitted.by.law
53200 2e 5c 6e 22 0a 20 20 20 20 20 20 22 52 65 70 6f 72 74 20 62 75 67 73 20 74 6f 20 6c 7a 69 70 2d .\n"......."Report.bugs.to.lzip-
53220 62 75 67 40 6e 6f 6e 67 6e 75 2e 6f 72 67 5c 6e 22 0a 20 20 20 20 20 20 22 4c 7a 64 20 68 6f 6d bug@nongnu.org\n"......."Lzd.hom
53240 65 20 70 61 67 65 3a 20 68 74 74 70 3a 2f 2f 77 77 77 2e 6e 6f 6e 67 6e 75 2e 6f 72 67 2f 6c 7a e.page:.http://www.nongnu.org/lz
53260 69 70 2f 6c 7a 64 2e 68 74 6d 6c 5c 6e 22 2c 0a 20 20 20 20 20 20 50 52 4f 47 56 45 52 53 49 4f ip/lzd.html\n",.......PROGVERSIO
53280 4e 2c 20 61 72 67 76 5b 30 5d 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0a 20 20 20 20 N,.argv[0].);.....return.0;.....
532a0 7d 0a 0a 23 69 66 20 64 65 66 69 6e 65 64 20 5f 5f 4d 53 56 43 52 54 5f 5f 20 7c 7c 20 64 65 66 }..#if.defined.__MSVCRT__.||.def
532c0 69 6e 65 64 20 5f 5f 4f 53 32 5f 5f 20 7c 7c 20 64 65 66 69 6e 65 64 20 5f 5f 44 4a 47 50 50 5f ined.__OS2__.||.defined.__DJGPP_
532e0 5f 0a 20 20 73 65 74 6d 6f 64 65 28 20 53 54 44 49 4e 5f 46 49 4c 45 4e 4f 2c 20 4f 5f 42 49 4e _...setmode(.STDIN_FILENO,.O_BIN
53300 41 52 59 20 29 3b 0a 20 20 73 65 74 6d 6f 64 65 28 20 53 54 44 4f 55 54 5f 46 49 4c 45 4e 4f 2c ARY.);...setmode(.STDOUT_FILENO,
53320 20 4f 5f 42 49 4e 41 52 59 20 29 3b 0a 23 65 6e 64 69 66 0a 0a 20 20 62 6f 6f 6c 20 65 6d 70 74 .O_BINARY.);.#endif....bool.empt
53340 79 20 3d 20 66 61 6c 73 65 2c 20 6d 75 6c 74 69 20 3d 20 66 61 6c 73 65 3b 0a 20 20 66 6f 72 28 y.=.false,.multi.=.false;...for(
53360 20 62 6f 6f 6c 20 66 69 72 73 74 5f 6d 65 6d 62 65 72 20 3d 20 74 72 75 65 3b 20 3b 20 66 69 72 .bool.first_member.=.true;.;.fir
53380 73 74 5f 6d 65 6d 62 65 72 20 3d 20 66 61 6c 73 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 4c 7a st_member.=.false.).....{.....Lz
533a0 69 70 5f 68 65 61 64 65 72 20 68 65 61 64 65 72 3b 09 09 09 09 2f 2f 20 63 68 65 63 6b 20 68 65 ip_header.header;....//.check.he
533c0 61 64 65 72 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 68 65 61 ader.....for(.int.i.=.0;.i.<.hea
533e0 64 65 72 5f 73 69 7a 65 3b 20 2b 2b 69 20 29 20 68 65 61 64 65 72 5b 69 5d 20 3d 20 73 74 64 3a der_size;.++i.).header[i].=.std:
53400 3a 67 65 74 63 28 20 73 74 64 69 6e 20 29 3b 0a 20 20 20 20 69 66 28 20 73 74 64 3a 3a 66 65 6f :getc(.stdin.);.....if(.std::feo
53420 66 28 20 73 74 64 69 6e 20 29 20 7c 7c 20 73 74 64 3a 3a 6d 65 6d 63 6d 70 28 20 68 65 61 64 65 f(.stdin.).||.std::memcmp(.heade
53440 72 2c 20 22 4c 5a 49 50 5c 78 30 31 22 2c 20 35 20 29 20 21 3d 20 30 20 29 0a 20 20 20 20 20 20 r,."LZIP\x01",.5.).!=.0.).......
53460 7b 0a 20 20 20 20 20 20 69 66 28 20 66 69 72 73 74 5f 6d 65 6d 62 65 72 20 29 0a 20 20 20 20 20 {.......if(.first_member.)......
53480 20 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 42 61 64 20 6d 61 67 69 63 20 6e 75 6d 62 ...{.std::fputs(."Bad.magic.numb
534a0 65 72 20 28 66 69 6c 65 20 6e 6f 74 20 69 6e 20 6c 7a 69 70 20 66 6f 72 6d 61 74 29 2e 5c 6e 22 er.(file.not.in.lzip.format).\n"
534c0 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 64 65 72 72 20 29 ,.......................stderr.)
534e0 3b 20 72 65 74 75 72 6e 20 32 3b 20 7d 0a 20 20 20 20 20 20 62 72 65 61 6b 3b 09 09 09 09 09 2f ;.return.2;.}.......break;...../
53500 2f 20 69 67 6e 6f 72 65 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 0a 20 20 20 20 20 20 7d 0a 20 /.ignore.trailing.data.......}..
53520 20 20 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 5f 73 69 7a 65 20 3d 20 31 20 3c 3c 20 28 20 68 ...unsigned.dict_size.=.1.<<.(.h
53540 65 61 64 65 72 5b 35 5d 20 26 20 30 78 31 46 20 29 3b 0a 20 20 20 20 64 69 63 74 5f 73 69 7a 65 eader[5].&.0x1F.);.....dict_size
53560 20 2d 3d 20 28 20 64 69 63 74 5f 73 69 7a 65 20 2f 20 31 36 20 29 20 2a 20 28 20 28 20 68 65 61 .-=.(.dict_size./.16.).*.(.(.hea
53580 64 65 72 5b 35 5d 20 3e 3e 20 35 20 29 20 26 20 37 20 29 3b 0a 20 20 20 20 69 66 28 20 64 69 63 der[5].>>.5.).&.7.);.....if(.dic
535a0 74 5f 73 69 7a 65 20 3c 20 6d 69 6e 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 7c 7c 20 t_size.<.min_dictionary_size.||.
535c0 64 69 63 74 5f 73 69 7a 65 20 3e 20 6d 61 78 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 dict_size.>.max_dictionary_size.
535e0 29 0a 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 49 6e 76 61 6c 69 64 20 64 ).......{.std::fputs(."Invalid.d
53600 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 6e 20 6d 65 6d 62 65 72 20 68 65 61 64 65 72 2e ictionary.size.in.member.header.
53620 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 64 65 72 72 20 \n",.....................stderr.
53640 29 3b 20 72 65 74 75 72 6e 20 32 3b 20 7d 0a 0a 20 20 20 20 4c 5a 5f 64 65 63 6f 64 65 72 20 64 );.return.2;.}......LZ_decoder.d
53660 65 63 6f 64 65 72 28 20 64 69 63 74 5f 73 69 7a 65 20 29 3b 09 09 2f 2f 20 64 65 63 6f 64 65 20 ecoder(.dict_size.);..//.decode.
53680 4c 5a 4d 41 20 73 74 72 65 61 6d 0a 20 20 20 20 69 66 28 20 21 64 65 63 6f 64 65 72 2e 64 65 63 LZMA.stream.....if(.!decoder.dec
536a0 6f 64 65 5f 6d 65 6d 62 65 72 28 29 20 29 0a 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 ode_member().).......{.std::fput
536c0 73 28 20 22 44 61 74 61 20 65 72 72 6f 72 2e 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 3b 20 72 65 s(."Data.error.\n",.stderr.);.re
536e0 74 75 72 6e 20 32 3b 20 7d 0a 0a 20 20 20 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 20 74 72 61 69 turn.2;.}......Lzip_trailer.trai
53700 6c 65 72 3b 09 09 09 2f 2f 20 63 68 65 63 6b 20 74 72 61 69 6c 65 72 0a 20 20 20 20 66 6f 72 28 ler;...//.check.trailer.....for(
53720 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 74 72 61 69 6c 65 72 5f 73 69 7a 65 3b 20 2b 2b .int.i.=.0;.i.<.trailer_size;.++
53740 69 20 29 20 74 72 61 69 6c 65 72 5b 69 5d 20 3d 20 64 65 63 6f 64 65 72 2e 67 65 74 5f 62 79 74 i.).trailer[i].=.decoder.get_byt
53760 65 28 29 3b 0a 20 20 20 20 69 6e 74 20 72 65 74 76 61 6c 20 3d 20 30 3b 0a 20 20 20 20 75 6e 73 e();.....int.retval.=.0;.....uns
53780 69 67 6e 65 64 20 63 72 63 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 igned.crc.=.0;.....for(.int.i.=.
537a0 33 3b 20 69 20 3e 3d 20 30 3b 20 2d 2d 69 20 29 20 63 72 63 20 3d 20 28 20 63 72 63 20 3c 3c 20 3;.i.>=.0;.--i.).crc.=.(.crc.<<.
537c0 38 20 29 20 2b 20 74 72 61 69 6c 65 72 5b 69 5d 3b 0a 20 20 20 20 69 66 28 20 63 72 63 20 21 3d 8.).+.trailer[i];.....if(.crc.!=
537e0 20 64 65 63 6f 64 65 72 2e 63 72 63 28 29 20 29 0a 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 .decoder.crc().).......{.std::fp
53800 75 74 73 28 20 22 43 52 43 20 6d 69 73 6d 61 74 63 68 2e 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 uts(."CRC.mismatch.\n",.stderr.)
53820 3b 20 72 65 74 76 61 6c 20 3d 20 32 3b 20 7d 0a 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f ;.retval.=.2;.}......unsigned.lo
53840 6e 67 20 6c 6f 6e 67 20 64 61 74 61 5f 73 69 7a 65 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 ng.long.data_size.=.0;.....for(.
53860 69 6e 74 20 69 20 3d 20 31 31 3b 20 69 20 3e 3d 20 34 3b 20 2d 2d 69 20 29 0a 20 20 20 20 20 20 int.i.=.11;.i.>=.4;.--i.).......
53880 64 61 74 61 5f 73 69 7a 65 20 3d 20 28 20 64 61 74 61 5f 73 69 7a 65 20 3c 3c 20 38 20 29 20 2b data_size.=.(.data_size.<<.8.).+
538a0 20 74 72 61 69 6c 65 72 5b 69 5d 3b 0a 20 20 20 20 69 66 28 20 64 61 74 61 5f 73 69 7a 65 20 21 .trailer[i];.....if(.data_size.!
538c0 3d 20 64 65 63 6f 64 65 72 2e 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 29 0a 20 20 20 20 =.decoder.data_position().).....
538e0 20 20 7b 20 73 74 64 3a 3a 66 70 75 74 73 28 20 22 44 61 74 61 20 73 69 7a 65 20 6d 69 73 6d 61 ..{.std::fputs(."Data.size.misma
53900 74 63 68 2e 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 3b 20 72 65 74 76 61 6c 20 3d 20 32 3b 20 7d tch.\n",.stderr.);.retval.=.2;.}
53920 0a 20 20 20 20 6d 75 6c 74 69 20 3d 20 21 66 69 72 73 74 5f 6d 65 6d 62 65 72 3b 20 69 66 28 20 .....multi.=.!first_member;.if(.
53940 64 61 74 61 5f 73 69 7a 65 20 3d 3d 20 30 20 29 20 65 6d 70 74 79 20 3d 20 74 72 75 65 3b 0a 0a data_size.==.0.).empty.=.true;..
53960 20 20 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 ....unsigned.long.long.member_si
53980 7a 65 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 31 39 3b 20 69 20 3e ze.=.0;.....for(.int.i.=.19;.i.>
539a0 3d 20 31 32 3b 20 2d 2d 69 20 29 0a 20 20 20 20 20 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3d 20 =.12;.--i.).......member_size.=.
539c0 28 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3c 3c 20 38 20 29 20 2b 20 74 72 61 69 6c 65 72 5b 69 (.member_size.<<.8.).+.trailer[i
539e0 5d 3b 0a 20 20 20 20 69 66 28 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 21 3d 20 64 65 63 6f 64 65 ];.....if(.member_size.!=.decode
53a00 72 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 20 29 0a 20 20 20 20 20 20 7b 20 73 74 r.member_position().).......{.st
53a20 64 3a 3a 66 70 75 74 73 28 20 22 4d 65 6d 62 65 72 20 73 69 7a 65 20 6d 69 73 6d 61 74 63 68 2e d::fputs(."Member.size.mismatch.
53a40 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 3b 20 72 65 74 76 61 6c 20 3d 20 32 3b 20 7d 0a 20 20 20 \n",.stderr.);.retval.=.2;.}....
53a60 20 69 66 28 20 72 65 74 76 61 6c 20 29 20 72 65 74 75 72 6e 20 72 65 74 76 61 6c 3b 0a 20 20 20 .if(.retval.).return.retval;....
53a80 20 7d 0a 0a 20 20 69 66 28 20 73 74 64 3a 3a 66 63 6c 6f 73 65 28 20 73 74 64 6f 75 74 20 29 20 .}....if(.std::fclose(.stdout.).
53aa0 21 3d 20 30 20 29 0a 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 !=.0.).....{.std::fprintf(.stder
53ac0 72 2c 20 22 45 72 72 6f 72 20 63 6c 6f 73 69 6e 67 20 73 74 64 6f 75 74 3a 20 25 73 5c 6e 22 2c r,."Error.closing.stdout:.%s\n",
53ae0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 64 3a 3a 73 74 72 65 72 72 .....................std::strerr
53b00 6f 72 28 20 65 72 72 6e 6f 20 29 20 29 3b 20 72 65 74 75 72 6e 20 31 3b 20 7d 0a 20 20 69 66 28 or(.errno.).);.return.1;.}...if(
53b20 20 65 6d 70 74 79 20 26 26 20 6d 75 6c 74 69 20 29 0a 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 75 .empty.&&.multi.).....{.std::fpu
53b40 74 73 28 20 22 45 6d 70 74 79 20 6d 65 6d 62 65 72 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2e 5c 6e ts(."Empty.member.not.allowed.\n
53b60 22 2c 20 73 74 64 65 72 72 20 29 3b 20 72 65 74 75 72 6e 20 32 3b 20 7d 0a 20 20 72 65 74 75 72 ",.stderr.);.return.2;.}...retur
53b80 6e 20 30 3b 0a 20 20 7d 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 6f 2c 20 20 4e 6f n.0;...}....File:.lzip.info,..No
53ba0 64 65 3a 20 43 6f 6e 63 65 70 74 20 69 6e 64 65 78 2c 20 20 50 72 65 76 3a 20 52 65 66 65 72 65 de:.Concept.index,..Prev:.Refere
53bc0 6e 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 43 6f 6e 63 65 nce.source.code,..Up:.Top..Conce
53be0 70 74 20 69 6e 64 65 78 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 00 08 5b 69 6e 64 65 78 pt.index.*************....[index
53c00 00 08 5d 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 61 6c 67 6f 72 69 74 68 6d 3a 20 20 20 20 20 20 20 ..].*.Menu:..*.algorithm:.......
53c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 6c 67 6f 72 69 74 68 6d 2e ......................Algorithm.
53c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 61 72 67 75 .................(line.6).*.argu
53c60 6d 65 6e 74 20 73 79 6e 74 61 78 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ment.syntax:....................
53c80 20 20 20 41 72 67 75 6d 65 6e 74 20 73 79 6e 74 61 78 2e 20 20 20 20 20 20 20 20 20 20 20 28 6c ...Argument.syntax............(l
53ca0 69 6e 65 20 36 29 0a 2a 20 62 75 67 73 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ine.6).*.bugs:..................
53cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 72 6f 62 6c 65 6d 73 2e 20 20 20 20 20 20 20 ................Problems........
53ce0 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 65 78 61 6d 70 6c 65 73 3a 20 ...........(line.6).*.examples:.
53d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 61 .............................Exa
53d20 6d 70 6c 65 73 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 mples...................(line.6)
53d40 0a 2a 20 66 69 6c 65 20 66 6f 72 6d 61 74 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .*.file.format:.................
53d60 20 20 20 20 20 20 20 20 20 20 46 69 6c 65 20 66 6f 72 6d 61 74 2e 20 20 20 20 20 20 20 20 20 20 ..........File.format...........
53d80 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 66 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 4c 5a .....(line.6).*.format.of.the.LZ
53da0 4d 41 20 73 74 72 65 61 6d 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 53 74 72 65 61 6d 20 66 6f MA.stream:.............Stream.fo
53dc0 72 6d 61 74 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 67 65 74 rmat..............(line.6).*.get
53de0 74 69 6e 67 20 68 65 6c 70 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ting.help:......................
53e00 20 20 20 20 50 72 6f 62 6c 65 6d 73 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ....Problems...................(
53e20 6c 69 6e 65 20 36 29 0a 2a 20 69 6e 74 72 6f 64 75 63 74 69 6f 6e 3a 20 20 20 20 20 20 20 20 20 line.6).*.introduction:.........
53e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 2e 20 20 .................Introduction...
53e60 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 69 6e 76 6f 6b 69 6e 67 3a ............(line.6).*.invoking:
53e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e ..............................In
53ea0 76 6f 6b 69 6e 67 20 6c 7a 69 70 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 voking.lzip..............(line.6
53ec0 29 0a 2a 20 6f 70 74 69 6f 6e 73 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ).*.options:....................
53ee0 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 2e 20 20 20 20 20 20 20 ...........Invoking.lzip........
53f00 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 6f 75 74 70 75 74 3a 20 20 20 20 20 20 20 20 ......(line.6).*.output:........
53f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4f 75 74 70 75 74 2e 20 ........................Output..
53f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 71 75 ...................(line.6).*.qu
53f60 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 65 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ality.assurance:................
53f80 20 20 20 20 20 51 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 65 2e 20 20 20 20 20 20 20 20 20 .....Quality.assurance..........
53fa0 28 6c 69 6e 65 20 36 29 0a 2a 20 72 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 (line.6).*.reference.source.code
53fc0 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 :.................Reference.sour
53fe0 63 65 20 63 6f 64 65 2e 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 74 72 61 69 6c 69 6e 67 ce.code......(line.6).*.trailing
54000 20 64 61 74 61 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 .data:.........................T
54020 72 61 69 6c 69 6e 67 20 64 61 74 61 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 railing.data..............(line.
54040 36 29 0a 2a 20 75 73 61 67 65 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6).*.usage:.....................
54060 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 2e 20 20 20 20 20 20 ............Invoking.lzip.......
54080 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 76 65 72 73 69 6f 6e 3a 20 20 20 20 20 20 .......(line.6).*.version:......
540a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 69 6e .........................Invokin
540c0 67 20 6c 7a 69 70 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 0a 0a 1f g.lzip..............(line.6)....
540e0 0a 54 61 67 20 54 61 62 6c 65 3a 0a 4e 6f 64 65 3a 20 54 6f 70 7f 32 30 33 0a 4e 6f 64 65 3a 20 .Tag.Table:.Node:.Top.203.Node:.
54100 49 6e 74 72 6f 64 75 63 74 69 6f 6e 7f 31 32 36 38 0a 4e 6f 64 65 3a 20 4f 75 74 70 75 74 7f 36 Introduction.1268.Node:.Output.6
54120 38 37 30 0a 4e 6f 64 65 3a 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 7f 38 34 36 35 0a 52 65 66 870.Node:.Invoking.lzip.8465.Ref
54140 3a 20 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 7f 39 33 30 32 0a 4e 6f 64 65 3a 20 41 72 :.--trailing-error.9302.Node:.Ar
54160 67 75 6d 65 6e 74 20 73 79 6e 74 61 78 7f 31 39 35 38 37 0a 4e 6f 64 65 3a 20 46 69 6c 65 20 66 gument.syntax.19587.Node:.File.f
54180 6f 72 6d 61 74 7f 32 31 33 34 39 0a 52 65 66 3a 20 63 6f 64 65 64 2d 64 69 63 74 2d 73 69 7a 65 ormat.21349.Ref:.coded-dict-size
541a0 7f 32 32 38 34 37 0a 4e 6f 64 65 3a 20 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 7f 32 34 30 37 39 .22847.Node:.Stream.format.24079
541c0 0a 52 65 66 3a 20 77 68 61 74 2d 69 73 2d 63 6f 64 65 64 7f 32 36 36 31 30 0a 4e 6f 64 65 3a 20 .Ref:.what-is-coded.26610.Node:.
541e0 51 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 65 7f 33 35 34 32 34 0a 4e 6f 64 65 3a 20 41 6c Quality.assurance.35424.Node:.Al
54200 67 6f 72 69 74 68 6d 7f 34 34 32 37 31 0a 4e 6f 64 65 3a 20 54 72 61 69 6c 69 6e 67 20 64 61 74 gorithm.44271.Node:.Trailing.dat
54220 61 7f 34 37 36 36 38 0a 4e 6f 64 65 3a 20 45 78 61 6d 70 6c 65 73 7f 35 30 30 30 30 0a 52 65 66 a.47668.Node:.Examples.50000.Ref
54240 3a 20 63 6f 6e 63 61 74 2d 65 78 61 6d 70 6c 65 7f 35 31 34 33 36 0a 4e 6f 64 65 3a 20 50 72 6f :.concat-example.51436.Node:.Pro
54260 62 6c 65 6d 73 7f 35 32 36 35 31 0a 4e 6f 64 65 3a 20 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 blems.52651.Node:.Reference.sour
54280 63 65 20 63 6f 64 65 7f 35 33 31 38 33 0a 4e 6f 64 65 3a 20 43 6f 6e 63 65 70 74 20 69 6e 64 65 ce.code.53183.Node:.Concept.inde
542a0 78 7f 36 38 34 39 30 0a 1f 0a 45 6e 64 20 54 61 67 20 54 61 62 6c 65 0a 0a 1f 0a 4c 6f 63 61 6c x.68490...End.Tag.Table....Local
542c0 20 56 61 72 69 61 62 6c 65 73 3a 0a 63 6f 64 69 6e 67 3a 20 69 73 6f 2d 38 38 35 39 2d 31 35 0a .Variables:.coding:.iso-8859-15.
542e0 45 6e 64 3a 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 End:............................
54300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
54320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
54340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
54360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
54380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
543a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
543c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
543e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
54400 6c 7a 69 70 2d 31 2e 32 35 2f 64 6f 63 2f 6c 7a 69 70 2e 31 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/doc/lzip.1............
54420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
54440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
54460 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
54480 30 30 31 30 35 36 35 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 34 32 34 35 00 20 30 00 00 00 0010565.14744236057.014245..0...
544a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
544c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
544e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
54500 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
54520 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
54540 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
54560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
54580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
545a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
545c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
545e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
54600 2e 5c 22 20 44 4f 20 4e 4f 54 20 4d 4f 44 49 46 59 20 54 48 49 53 20 46 49 4c 45 21 20 20 49 74 .\".DO.NOT.MODIFY.THIS.FILE!..It
54620 20 77 61 73 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 68 65 6c 70 32 6d 61 6e 20 31 2e 34 39 2e .was.generated.by.help2man.1.49.
54640 32 2e 0a 2e 54 48 20 4c 5a 49 50 20 22 31 22 20 22 4a 61 6e 75 61 72 79 20 32 30 32 35 22 20 22 2...TH.LZIP."1"."January.2025"."
54660 6c 7a 69 70 20 31 2e 32 35 22 20 22 55 73 65 72 20 43 6f 6d 6d 61 6e 64 73 22 0a 2e 53 48 20 4e lzip.1.25"."User.Commands"..SH.N
54680 41 4d 45 0a 6c 7a 69 70 20 5c 2d 20 72 65 64 75 63 65 73 20 74 68 65 20 73 69 7a 65 20 6f 66 20 AME.lzip.\-.reduces.the.size.of.
546a0 66 69 6c 65 73 0a 2e 53 48 20 53 59 4e 4f 50 53 49 53 0a 2e 42 20 6c 7a 69 70 0a 5b 5c 66 49 5c files..SH.SYNOPSIS..B.lzip.[\fI\
546c0 2c 6f 70 74 69 6f 6e 73 5c 2f 5c 66 52 5d 20 5b 5c 66 49 5c 2c 66 69 6c 65 73 5c 2f 5c 66 52 5d ,options\/\fR].[\fI\,files\/\fR]
546e0 0a 2e 53 48 20 44 45 53 43 52 49 50 54 49 4f 4e 0a 4c 7a 69 70 20 69 73 20 61 20 6c 6f 73 73 6c ..SH.DESCRIPTION.Lzip.is.a.lossl
54700 65 73 73 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 6f 72 20 77 69 74 68 20 61 20 75 73 65 72 20 ess.data.compressor.with.a.user.
54720 69 6e 74 65 72 66 61 63 65 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 6f 6e 65 0a 6f 66 20 interface.similar.to.the.one.of.
54740 67 7a 69 70 20 6f 72 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 75 73 65 73 20 61 20 73 69 6d 70 6c gzip.or.bzip2..Lzip.uses.a.simpl
54760 69 66 69 65 64 20 66 6f 72 6d 20 6f 66 20 4c 5a 4d 41 20 28 4c 65 6d 70 65 6c 5c 2d 5a 69 76 5c ified.form.of.LZMA.(Lempel\-Ziv\
54780 2d 4d 61 72 6b 6f 76 0a 63 68 61 69 6e 5c 2d 41 6c 67 6f 72 69 74 68 6d 29 20 64 65 73 69 67 6e -Markov.chain\-Algorithm).design
547a0 65 64 20 74 6f 20 61 63 68 69 65 76 65 20 63 6f 6d 70 6c 65 74 65 20 69 6e 74 65 72 6f 70 65 72 ed.to.achieve.complete.interoper
547c0 61 62 69 6c 69 74 79 20 62 65 74 77 65 65 6e 0a 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 2e ability.between.implementations.
547e0 20 54 68 65 20 6d 61 78 69 6d 75 6d 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 73 20 .The.maximum.dictionary.size.is.
54800 35 31 32 20 4d 69 42 20 73 6f 20 74 68 61 74 20 61 6e 79 20 6c 7a 69 70 0a 66 69 6c 65 20 63 61 512.MiB.so.that.any.lzip.file.ca
54820 6e 20 62 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 6f 6e 20 33 32 5c 2d 62 69 74 20 6d 61 63 n.be.decompressed.on.32\-bit.mac
54840 68 69 6e 65 73 2e 20 4c 7a 69 70 20 70 72 6f 76 69 64 65 73 20 61 63 63 75 72 61 74 65 20 61 6e hines..Lzip.provides.accurate.an
54860 64 0a 72 6f 62 75 73 74 20 33 5c 2d 66 61 63 74 6f 72 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 d.robust.3\-factor.integrity.che
54880 63 6b 69 6e 67 2e 20 27 6c 7a 69 70 20 5c 66 42 5c 2d 30 5c 66 52 27 20 63 6f 6d 70 72 65 73 73 cking..'lzip.\fB\-0\fR'.compress
548a0 65 73 20 61 62 6f 75 74 20 61 73 20 66 61 73 74 20 61 73 0a 67 7a 69 70 2c 20 77 68 69 6c 65 20 es.about.as.fast.as.gzip,.while.
548c0 27 6c 7a 69 70 20 5c 66 42 5c 2d 39 5c 66 52 27 20 63 6f 6d 70 72 65 73 73 65 73 20 6d 6f 73 74 'lzip.\fB\-9\fR'.compresses.most
548e0 20 66 69 6c 65 73 20 6d 6f 72 65 20 74 68 61 6e 20 62 7a 69 70 32 2e 20 44 65 63 6f 6d 70 72 65 .files.more.than.bzip2..Decompre
54900 73 73 69 6f 6e 0a 73 70 65 65 64 20 69 73 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 62 65 74 77 ssion.speed.is.intermediate.betw
54920 65 65 6e 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 70 72 6f 76 69 64 65 een.gzip.and.bzip2..Lzip.provide
54940 73 20 62 65 74 74 65 72 20 64 61 74 61 0a 72 65 63 6f 76 65 72 79 20 63 61 70 61 62 69 6c 69 74 s.better.data.recovery.capabilit
54960 69 65 73 20 74 68 61 6e 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 68 61 ies.than.gzip.and.bzip2..Lzip.ha
54980 73 20 62 65 65 6e 20 64 65 73 69 67 6e 65 64 2c 20 77 72 69 74 74 65 6e 2c 0a 61 6e 64 20 74 65 s.been.designed,.written,.and.te
549a0 73 74 65 64 20 77 69 74 68 20 67 72 65 61 74 20 63 61 72 65 20 74 6f 20 72 65 70 6c 61 63 65 20 sted.with.great.care.to.replace.
549c0 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 20 61 73 20 67 65 6e 65 72 61 6c 5c 2d 70 75 72 70 6f gzip.and.bzip2.as.general\-purpo
549e0 73 65 0a 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 74 20 66 6f 72 20 55 6e 69 78 5c 2d 6c se.compressed.format.for.Unix\-l
54a00 69 6b 65 20 73 79 73 74 65 6d 73 2e 0a 2e 53 48 20 4f 50 54 49 4f 4e 53 0a 2e 54 50 0a 5c 66 42 ike.systems...SH.OPTIONS..TP.\fB
54a20 5c 2d 68 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 68 65 6c 70 5c 66 52 0a 64 69 73 70 6c 61 79 20 74 \-h\fR,.\fB\-\-help\fR.display.t
54a40 68 69 73 20 68 65 6c 70 20 61 6e 64 20 65 78 69 74 0a 2e 54 50 0a 5c 66 42 5c 2d 56 5c 66 52 2c his.help.and.exit..TP.\fB\-V\fR,
54a60 20 5c 66 42 5c 2d 5c 2d 76 65 72 73 69 6f 6e 5c 66 52 0a 6f 75 74 70 75 74 20 76 65 72 73 69 6f .\fB\-\-version\fR.output.versio
54a80 6e 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 6e 64 20 65 78 69 74 0a 2e 54 50 0a 5c 66 42 5c 2d n.information.and.exit..TP.\fB\-
54aa0 61 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 74 72 61 69 6c 69 6e 67 5c 2d 65 72 72 6f 72 5c 66 52 0a a\fR,.\fB\-\-trailing\-error\fR.
54ac0 65 78 69 74 20 77 69 74 68 20 65 72 72 6f 72 20 73 74 61 74 75 73 20 69 66 20 74 72 61 69 6c 69 exit.with.error.status.if.traili
54ae0 6e 67 20 64 61 74 61 0a 2e 54 50 0a 5c 66 42 5c 2d 62 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 6d 65 ng.data..TP.\fB\-b\fR,.\fB\-\-me
54b00 6d 62 65 72 5c 2d 73 69 7a 65 3d 5c 66 52 3c 62 79 74 65 73 3e 0a 73 65 74 20 6d 65 6d 62 65 72 mber\-size=\fR<bytes>.set.member
54b20 20 73 69 7a 65 20 6c 69 6d 69 74 20 6f 66 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 .size.limit.of.multimember.files
54b40 0a 2e 54 50 0a 5c 66 42 5c 2d 63 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 73 74 64 6f 75 74 5c 66 52 ..TP.\fB\-c\fR,.\fB\-\-stdout\fR
54b60 0a 77 72 69 74 65 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2c 20 6b 65 65 70 20 .write.to.standard.output,.keep.
54b80 69 6e 70 75 74 20 66 69 6c 65 73 0a 2e 54 50 0a 5c 66 42 5c 2d 64 5c 66 52 2c 20 5c 66 42 5c 2d input.files..TP.\fB\-d\fR,.\fB\-
54ba0 5c 2d 64 65 63 6f 6d 70 72 65 73 73 5c 66 52 0a 64 65 63 6f 6d 70 72 65 73 73 2c 20 74 65 73 74 \-decompress\fR.decompress,.test
54bc0 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 69 6e 74 65 67 72 69 74 79 0a 2e 54 50 0a 5c .compressed.file.integrity..TP.\
54be0 66 42 5c 2d 66 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 66 6f 72 63 65 5c 66 52 0a 6f 76 65 72 77 72 fB\-f\fR,.\fB\-\-force\fR.overwr
54c00 69 74 65 20 65 78 69 73 74 69 6e 67 20 6f 75 74 70 75 74 20 66 69 6c 65 73 0a 2e 54 50 0a 5c 66 ite.existing.output.files..TP.\f
54c20 42 5c 2d 46 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 72 65 63 6f 6d 70 72 65 73 73 5c 66 52 0a 66 6f B\-F\fR,.\fB\-\-recompress\fR.fo
54c40 72 63 65 20 72 65 5c 2d 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 66 20 63 6f 6d 70 72 65 73 73 65 rce.re\-compression.of.compresse
54c60 64 20 66 69 6c 65 73 0a 2e 54 50 0a 5c 66 42 5c 2d 6b 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 6b 65 d.files..TP.\fB\-k\fR,.\fB\-\-ke
54c80 65 70 5c 66 52 0a 6b 65 65 70 20 28 64 6f 6e 27 74 20 64 65 6c 65 74 65 29 20 69 6e 70 75 74 20 ep\fR.keep.(don't.delete).input.
54ca0 66 69 6c 65 73 0a 2e 54 50 0a 5c 66 42 5c 2d 6c 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 6c 69 73 74 files..TP.\fB\-l\fR,.\fB\-\-list
54cc0 5c 66 52 0a 70 72 69 6e 74 20 28 75 6e 29 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 73 69 \fR.print.(un)compressed.file.si
54ce0 7a 65 73 0a 2e 54 50 0a 5c 66 42 5c 2d 6d 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 6d 61 74 63 68 5c zes..TP.\fB\-m\fR,.\fB\-\-match\
54d00 2d 6c 65 6e 67 74 68 3d 5c 66 52 3c 62 79 74 65 73 3e 0a 73 65 74 20 6d 61 74 63 68 20 6c 65 6e -length=\fR<bytes>.set.match.len
54d20 67 74 68 20 6c 69 6d 69 74 20 69 6e 20 62 79 74 65 73 20 5b 33 36 5d 0a 2e 54 50 0a 5c 66 42 5c gth.limit.in.bytes.[36]..TP.\fB\
54d40 2d 6f 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 6f 75 74 70 75 74 3d 5c 66 52 3c 66 69 6c 65 3e 0a 77 -o\fR,.\fB\-\-output=\fR<file>.w
54d60 72 69 74 65 20 74 6f 20 3c 66 69 6c 65 3e 2c 20 6b 65 65 70 20 69 6e 70 75 74 20 66 69 6c 65 73 rite.to.<file>,.keep.input.files
54d80 0a 2e 54 50 0a 5c 66 42 5c 2d 71 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 71 75 69 65 74 5c 66 52 0a ..TP.\fB\-q\fR,.\fB\-\-quiet\fR.
54da0 73 75 70 70 72 65 73 73 20 61 6c 6c 20 6d 65 73 73 61 67 65 73 0a 2e 54 50 0a 5c 66 42 5c 2d 73 suppress.all.messages..TP.\fB\-s
54dc0 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 64 69 63 74 69 6f 6e 61 72 79 5c 2d 73 69 7a 65 3d 5c 66 52 \fR,.\fB\-\-dictionary\-size=\fR
54de0 3c 62 79 74 65 73 3e 0a 73 65 74 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 <bytes>.set.dictionary.size.limi
54e00 74 20 69 6e 20 62 79 74 65 73 20 5b 38 20 4d 69 42 5d 0a 2e 54 50 0a 5c 66 42 5c 2d 53 5c 66 52 t.in.bytes.[8.MiB]..TP.\fB\-S\fR
54e20 2c 20 5c 66 42 5c 2d 5c 2d 76 6f 6c 75 6d 65 5c 2d 73 69 7a 65 3d 5c 66 52 3c 62 79 74 65 73 3e ,.\fB\-\-volume\-size=\fR<bytes>
54e40 0a 73 65 74 20 76 6f 6c 75 6d 65 20 73 69 7a 65 20 6c 69 6d 69 74 20 69 6e 20 62 79 74 65 73 0a .set.volume.size.limit.in.bytes.
54e60 2e 54 50 0a 5c 66 42 5c 2d 74 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 74 65 73 74 5c 66 52 0a 74 65 .TP.\fB\-t\fR,.\fB\-\-test\fR.te
54e80 73 74 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 69 6e 74 65 67 72 69 74 79 0a 2e 54 50 st.compressed.file.integrity..TP
54ea0 0a 5c 66 42 5c 2d 76 5c 66 52 2c 20 5c 66 42 5c 2d 5c 2d 76 65 72 62 6f 73 65 5c 66 52 0a 62 65 .\fB\-v\fR,.\fB\-\-verbose\fR.be
54ec0 20 76 65 72 62 6f 73 65 20 28 61 20 32 6e 64 20 5c 66 42 5c 2d 76 5c 66 52 20 67 69 76 65 73 20 .verbose.(a.2nd.\fB\-v\fR.gives.
54ee0 6d 6f 72 65 29 0a 2e 54 50 0a 5c 66 42 5c 2d 30 5c 66 52 20 2e 2e 20 5c 66 42 5c 2d 39 5c 66 52 more)..TP.\fB\-0\fR....\fB\-9\fR
54f00 0a 73 65 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 20 5b 64 65 66 61 75 6c 74 20 .set.compression.level.[default.
54f20 36 5d 0a 2e 54 50 0a 5c 66 42 5c 2d 5c 2d 66 61 73 74 5c 66 52 0a 61 6c 69 61 73 20 66 6f 72 20 6]..TP.\fB\-\-fast\fR.alias.for.
54f40 5c 66 42 5c 2d 30 5c 66 52 0a 2e 54 50 0a 5c 66 42 5c 2d 5c 2d 62 65 73 74 5c 66 52 0a 61 6c 69 \fB\-0\fR..TP.\fB\-\-best\fR.ali
54f60 61 73 20 66 6f 72 20 5c 66 42 5c 2d 39 5c 66 52 0a 2e 54 50 0a 5c 66 42 5c 2d 5c 2d 6c 6f 6f 73 as.for.\fB\-9\fR..TP.\fB\-\-loos
54f80 65 5c 2d 74 72 61 69 6c 69 6e 67 5c 66 52 0a 61 6c 6c 6f 77 20 74 72 61 69 6c 69 6e 67 20 64 61 e\-trailing\fR.allow.trailing.da
54fa0 74 61 20 73 65 65 6d 69 6e 67 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 0a 2e 50 50 0a 49 66 ta.seeming.corrupt.header..PP.If
54fc0 20 6e 6f 20 66 69 6c 65 20 6e 61 6d 65 73 20 61 72 65 20 67 69 76 65 6e 2c 20 6f 72 20 69 66 20 .no.file.names.are.given,.or.if.
54fe0 61 20 66 69 6c 65 20 69 73 20 27 5c 2d 27 2c 20 6c 7a 69 70 20 63 6f 6d 70 72 65 73 73 65 73 20 a.file.is.'\-',.lzip.compresses.
55000 6f 72 0a 64 65 63 6f 6d 70 72 65 73 73 65 73 20 66 72 6f 6d 20 73 74 61 6e 64 61 72 64 20 69 6e or.decompresses.from.standard.in
55020 70 75 74 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 0a 4e 75 6d 62 65 72 73 20 put.to.standard.output..Numbers.
55040 6d 61 79 20 62 65 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 20 6d 75 6c 74 69 70 6c 69 65 72 3a may.be.followed.by.a.multiplier:
55060 20 6b 20 3d 20 6b 42 20 3d 20 31 30 5e 33 20 3d 20 31 30 30 30 2c 0a 4b 69 20 3d 20 4b 69 42 20 .k.=.kB.=.10^3.=.1000,.Ki.=.KiB.
55080 3d 20 32 5e 31 30 20 3d 20 31 30 32 34 2c 20 4d 20 3d 20 31 30 5e 36 2c 20 4d 69 20 3d 20 32 5e =.2^10.=.1024,.M.=.10^6,.Mi.=.2^
550a0 32 30 2c 20 47 20 3d 20 31 30 5e 39 2c 20 47 69 20 3d 20 32 5e 33 30 2c 20 65 74 63 2e 2e 2e 0a 20,.G.=.10^9,.Gi.=.2^30,.etc....
550c0 44 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 73 20 31 32 20 74 6f 20 32 39 20 61 72 65 20 69 6e Dictionary.sizes.12.to.29.are.in
550e0 74 65 72 70 72 65 74 65 64 20 61 73 20 70 6f 77 65 72 73 20 6f 66 20 74 77 6f 2c 20 6d 65 61 6e terpreted.as.powers.of.two,.mean
55100 69 6e 67 20 32 5e 31 32 20 74 6f 0a 32 5e 32 39 20 62 79 74 65 73 2e 0a 2e 50 50 0a 54 68 65 20 ing.2^12.to.2^29.bytes...PP.The.
55120 62 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 70 61 72 61 6d 65 74 65 72 20 73 70 61 63 65 20 6f 66 bidimensional.parameter.space.of
55140 20 4c 5a 4d 41 20 63 61 6e 27 74 20 62 65 20 6d 61 70 70 65 64 20 74 6f 20 61 20 6c 69 6e 65 61 .LZMA.can't.be.mapped.to.a.linea
55160 72 20 73 63 61 6c 65 0a 6f 70 74 69 6d 61 6c 20 66 6f 72 20 61 6c 6c 20 66 69 6c 65 73 2e 20 49 r.scale.optimal.for.all.files..I
55180 66 20 79 6f 75 72 20 66 69 6c 65 73 20 61 72 65 20 6c 61 72 67 65 2c 20 76 65 72 79 20 72 65 70 f.your.files.are.large,.very.rep
551a0 65 74 69 74 69 76 65 2c 20 65 74 63 2c 20 79 6f 75 0a 6d 61 79 20 6e 65 65 64 20 74 6f 20 75 73 etitive,.etc,.you.may.need.to.us
551c0 65 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 5c 66 42 5c 2d 5c 2d 64 69 63 74 69 6f 6e 61 72 79 5c e.the.options.\fB\-\-dictionary\
551e0 2d 73 69 7a 65 5c 66 52 20 61 6e 64 20 5c 66 42 5c 2d 5c 2d 6d 61 74 63 68 5c 2d 6c 65 6e 67 74 -size\fR.and.\fB\-\-match\-lengt
55200 68 5c 66 52 20 64 69 72 65 63 74 6c 79 0a 74 6f 20 61 63 68 69 65 76 65 20 6f 70 74 69 6d 61 6c h\fR.directly.to.achieve.optimal
55220 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 0a 2e 50 50 0a 54 6f 20 65 78 74 72 61 63 74 20 61 6c 6c .performance...PP.To.extract.all
55240 20 74 68 65 20 66 69 6c 65 73 20 66 72 6f 6d 20 61 72 63 68 69 76 65 20 27 66 6f 6f 2e 74 61 72 .the.files.from.archive.'foo.tar
55260 2e 6c 7a 27 2c 20 75 73 65 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 0a 5c 26 27 74 61 72 20 5c 66 .lz',.use.the.commands.\&'tar.\f
55280 42 5c 2d 78 66 5c 66 52 20 66 6f 6f 2e 74 61 72 2e 6c 7a 27 20 6f 72 20 27 6c 7a 69 70 20 5c 66 B\-xf\fR.foo.tar.lz'.or.'lzip.\f
552a0 42 5c 2d 63 64 5c 66 52 20 66 6f 6f 2e 74 61 72 2e 6c 7a 20 7c 20 74 61 72 20 5c 66 42 5c 2d 78 B\-cd\fR.foo.tar.lz.|.tar.\fB\-x
552c0 66 5c 66 52 20 5c 2d 27 2e 0a 2e 50 50 0a 45 78 69 74 20 73 74 61 74 75 73 3a 20 30 20 66 6f 72 f\fR.\-'...PP.Exit.status:.0.for
552e0 20 61 20 6e 6f 72 6d 61 6c 20 65 78 69 74 2c 20 31 20 66 6f 72 20 65 6e 76 69 72 6f 6e 6d 65 6e .a.normal.exit,.1.for.environmen
55300 74 61 6c 20 70 72 6f 62 6c 65 6d 73 0a 28 66 69 6c 65 20 6e 6f 74 20 66 6f 75 6e 64 2c 20 69 6e tal.problems.(file.not.found,.in
55320 76 61 6c 69 64 20 63 6f 6d 6d 61 6e 64 5c 2d 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 2c 20 49 2f 4f valid.command\-line.options,.I/O
55340 20 65 72 72 6f 72 73 2c 20 65 74 63 29 2c 20 32 20 74 6f 0a 69 6e 64 69 63 61 74 65 20 61 20 63 .errors,.etc),.2.to.indicate.a.c
55360 6f 72 72 75 70 74 20 6f 72 20 69 6e 76 61 6c 69 64 20 69 6e 70 75 74 20 66 69 6c 65 2c 20 33 20 orrupt.or.invalid.input.file,.3.
55380 66 6f 72 20 61 6e 20 69 6e 74 65 72 6e 61 6c 20 63 6f 6e 73 69 73 74 65 6e 63 79 0a 65 72 72 6f for.an.internal.consistency.erro
553a0 72 20 28 65 2e 67 2e 2c 20 62 75 67 29 20 77 68 69 63 68 20 63 61 75 73 65 64 20 6c 7a 69 70 20 r.(e.g.,.bug).which.caused.lzip.
553c0 74 6f 20 70 61 6e 69 63 2e 0a 2e 50 50 0a 54 68 65 20 69 64 65 61 73 20 65 6d 62 6f 64 69 65 64 to.panic...PP.The.ideas.embodied
553e0 20 69 6e 20 6c 7a 69 70 20 61 72 65 20 64 75 65 20 74 6f 20 28 61 74 20 6c 65 61 73 74 29 20 74 .in.lzip.are.due.to.(at.least).t
55400 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 65 6f 70 6c 65 3a 0a 41 62 72 61 68 61 6d 20 4c 65 6d he.following.people:.Abraham.Lem
55420 70 65 6c 20 61 6e 64 20 4a 61 63 6f 62 20 5a 69 76 20 28 66 6f 72 20 74 68 65 20 4c 5a 20 61 6c pel.and.Jacob.Ziv.(for.the.LZ.al
55440 67 6f 72 69 74 68 6d 29 2c 20 41 6e 64 72 65 69 20 4d 61 72 6b 6f 76 20 28 66 6f 72 20 74 68 65 gorithm),.Andrei.Markov.(for.the
55460 0a 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 4d 61 72 6b 6f 76 20 63 68 61 69 6e 73 29 2c 20 47 .definition.of.Markov.chains),.G
55480 2e 4e 2e 4e 2e 20 4d 61 72 74 69 6e 20 28 66 6f 72 20 74 68 65 20 64 65 66 69 6e 69 74 69 6f 6e .N.N..Martin.(for.the.definition
554a0 20 6f 66 20 72 61 6e 67 65 0a 65 6e 63 6f 64 69 6e 67 29 2c 20 49 67 6f 72 20 50 61 76 6c 6f 76 .of.range.encoding),.Igor.Pavlov
554c0 20 28 66 6f 72 20 70 75 74 74 69 6e 67 20 61 6c 6c 20 74 68 65 20 61 62 6f 76 65 20 74 6f 67 65 .(for.putting.all.the.above.toge
554e0 74 68 65 72 20 69 6e 20 4c 5a 4d 41 29 2c 20 61 6e 64 0a 4a 75 6c 69 61 6e 20 53 65 77 61 72 64 ther.in.LZMA),.and.Julian.Seward
55500 20 28 66 6f 72 20 62 7a 69 70 32 27 73 20 43 4c 49 29 2e 0a 2e 53 48 20 22 52 45 50 4f 52 54 49 .(for.bzip2's.CLI)...SH."REPORTI
55520 4e 47 20 42 55 47 53 22 0a 52 65 70 6f 72 74 20 62 75 67 73 20 74 6f 20 6c 7a 69 70 5c 2d 62 75 NG.BUGS".Report.bugs.to.lzip\-bu
55540 67 40 6e 6f 6e 67 6e 75 2e 6f 72 67 0a 2e 62 72 0a 4c 7a 69 70 20 68 6f 6d 65 20 70 61 67 65 3a g@nongnu.org..br.Lzip.home.page:
55560 20 68 74 74 70 3a 2f 2f 77 77 77 2e 6e 6f 6e 67 6e 75 2e 6f 72 67 2f 6c 7a 69 70 2f 6c 7a 69 70 .http://www.nongnu.org/lzip/lzip
55580 2e 68 74 6d 6c 0a 2e 53 48 20 43 4f 50 59 52 49 47 48 54 0a 43 6f 70 79 72 69 67 68 74 20 5c 28 .html..SH.COPYRIGHT.Copyright.\(
555a0 63 6f 20 32 30 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 4c 69 63 65 6e co.2025.Antonio.Diaz.Diaz..Licen
555c0 73 65 20 47 50 4c 76 32 2b 3a 20 47 4e 55 20 47 50 4c 20 76 65 72 73 69 6f 6e 20 32 20 6f 72 20 se.GPLv2+:.GNU.GPL.version.2.or.
555e0 6c 61 74 65 72 20 3c 68 74 74 70 3a 2f 2f 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 67 later.<http://gnu.org/licenses/g
55600 70 6c 2e 68 74 6d 6c 3e 0a 2e 62 72 0a 54 68 69 73 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 pl.html>..br.This.is.free.softwa
55620 72 65 3a 20 79 6f 75 20 61 72 65 20 66 72 65 65 20 74 6f 20 63 68 61 6e 67 65 20 61 6e 64 20 72 re:.you.are.free.to.change.and.r
55640 65 64 69 73 74 72 69 62 75 74 65 20 69 74 2e 0a 54 68 65 72 65 20 69 73 20 4e 4f 20 57 41 52 52 edistribute.it..There.is.NO.WARR
55660 41 4e 54 59 2c 20 74 6f 20 74 68 65 20 65 78 74 65 6e 74 20 70 65 72 6d 69 74 74 65 64 20 62 79 ANTY,.to.the.extent.permitted.by
55680 20 6c 61 77 2e 0a 2e 53 48 20 22 53 45 45 20 41 4c 53 4f 22 0a 54 68 65 20 66 75 6c 6c 20 64 6f .law...SH."SEE.ALSO".The.full.do
556a0 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 0a 2e 42 20 6c 7a 69 70 0a 69 73 20 6d 61 69 6e 74 cumentation.for..B.lzip.is.maint
556c0 61 69 6e 65 64 20 61 73 20 61 20 54 65 78 69 6e 66 6f 20 6d 61 6e 75 61 6c 2e 20 20 49 66 20 74 ained.as.a.Texinfo.manual...If.t
556e0 68 65 0a 2e 42 20 69 6e 66 6f 0a 61 6e 64 0a 2e 42 20 6c 7a 69 70 0a 70 72 6f 67 72 61 6d 73 20 he..B.info.and..B.lzip.programs.
55700 61 72 65 20 70 72 6f 70 65 72 6c 79 20 69 6e 73 74 61 6c 6c 65 64 20 61 74 20 79 6f 75 72 20 73 are.properly.installed.at.your.s
55720 69 74 65 2c 20 74 68 65 20 63 6f 6d 6d 61 6e 64 0a 2e 49 50 0a 2e 42 20 69 6e 66 6f 20 6c 7a 69 ite,.the.command..IP..B.info.lzi
55740 70 0a 2e 50 50 0a 73 68 6f 75 6c 64 20 67 69 76 65 20 79 6f 75 20 61 63 63 65 73 73 20 74 6f 20 p..PP.should.give.you.access.to.
55760 74 68 65 20 63 6f 6d 70 6c 65 74 65 20 6d 61 6e 75 61 6c 2e 0a 00 00 00 00 00 00 00 00 00 00 00 the.complete.manual.............
55780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
557a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
557c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
557e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
55800 6c 7a 69 70 2d 31 2e 32 35 2f 66 61 73 74 5f 65 6e 63 6f 64 65 72 2e 68 00 00 00 00 00 00 00 00 lzip-1.25/fast_encoder.h........
55820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
55840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
55860 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
55880 30 30 30 33 34 37 35 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 35 32 34 37 00 20 30 00 00 00 0003475.14744236057.015247..0...
558a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
558c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
558e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
55900 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
55920 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
55940 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
55960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
55980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
559a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
559c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
559e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
55a00 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
55a20 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
55a40 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
55a60 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
55a80 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
55aa0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
55ac0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
55ae0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
55b00 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
55b20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
55b40 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
55b60 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
55b80 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
55ba0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
55bc0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
55be0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
55c00 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
55c20 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
55c40 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
55c60 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
55c80 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
55ca0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
55cc0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 63 6c 61 /www.gnu.org/licenses/>..*/..cla
55ce0 73 73 20 46 4c 5a 5f 65 6e 63 6f 64 65 72 20 3a 20 70 75 62 6c 69 63 20 4c 5a 5f 65 6e 63 6f 64 ss.FLZ_encoder.:.public.LZ_encod
55d00 65 72 5f 62 61 73 65 0a 20 20 7b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6b 65 79 34 3b 09 09 09 2f er_base...{...unsigned.key4;.../
55d20 2f 20 6b 65 79 20 6d 61 64 65 20 66 72 6f 6d 20 6c 61 74 65 73 74 20 34 20 62 79 74 65 73 0a 0a /.key.made.from.latest.4.bytes..
55d40 20 20 76 6f 69 64 20 72 65 73 65 74 5f 6b 65 79 34 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 6b 65 ..void.reset_key4().....{.....ke
55d60 79 34 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 y4.=.0;.....for(.int.i.=.0;.i.<.
55d80 33 20 26 26 20 69 20 3c 20 61 76 61 69 6c 61 62 6c 65 5f 62 79 74 65 73 28 29 3b 20 2b 2b 69 20 3.&&.i.<.available_bytes();.++i.
55da0 29 0a 20 20 20 20 20 20 6b 65 79 34 20 3d 20 28 20 6b 65 79 34 20 3c 3c 20 34 20 29 20 5e 20 62 ).......key4.=.(.key4.<<.4.).^.b
55dc0 75 66 66 65 72 5b 69 5d 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 6e 74 20 6c 6f 6e 67 65 73 74 5f 6d uffer[i];.....}....int.longest_m
55de0 61 74 63 68 5f 6c 65 6e 28 20 69 6e 74 20 2a 20 63 6f 6e 73 74 20 64 69 73 74 61 6e 63 65 20 29 atch_len(.int.*.const.distance.)
55e00 3b 0a 0a 20 20 76 6f 69 64 20 75 70 64 61 74 65 5f 61 6e 64 5f 6d 6f 76 65 28 20 69 6e 74 20 6e ;....void.update_and_move(.int.n
55e20 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 77 68 69 6c 65 28 20 2d 2d 6e 20 3e 3d 20 30 20 29 0a 20 .).....{.....while(.--n.>=.0.)..
55e40 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 61 76 61 69 6c 61 62 6c 65 5f 62 79 74 65 73 .....{.......if(.available_bytes
55e60 28 29 20 3e 3d 20 34 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 6b 65 79 34 ().>=.4.).........{.........key4
55e80 20 3d 20 28 20 28 20 6b 65 79 34 20 3c 3c 20 34 20 29 20 5e 20 62 75 66 66 65 72 5b 70 6f 73 2b .=.(.(.key4.<<.4.).^.buffer[pos+
55ea0 33 5d 20 29 20 26 20 6b 65 79 34 5f 6d 61 73 6b 3b 0a 20 20 20 20 20 20 20 20 70 6f 73 5f 61 72 3].).&.key4_mask;.........pos_ar
55ec0 72 61 79 5b 63 79 63 6c 69 63 5f 70 6f 73 5d 20 3d 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 ray[cyclic_pos].=.prev_positions
55ee0 5b 6b 65 79 34 5d 3b 0a 20 20 20 20 20 20 20 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 5b 6b [key4];.........prev_positions[k
55f00 65 79 34 5d 20 3d 20 70 6f 73 20 2b 20 31 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 ey4].=.pos.+.1;.........}.......
55f20 6d 6f 76 65 5f 70 6f 73 28 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 65 6e 75 move_pos();.......}.....}....enu
55f40 6d 20 7b 20 62 65 66 6f 72 65 5f 73 69 7a 65 20 3d 20 30 2c 0a 20 20 20 20 20 20 20 20 20 64 69 m.{.before_size.=.0,..........di
55f60 63 74 5f 73 69 7a 65 20 3d 20 36 35 35 33 36 2c 0a 20 20 20 20 20 20 20 20 20 2f 2f 20 62 79 74 ct_size.=.65536,..........//.byt
55f80 65 73 20 74 6f 20 6b 65 65 70 20 69 6e 20 62 75 66 66 65 72 20 61 66 74 65 72 20 70 6f 73 0a 20 es.to.keep.in.buffer.after.pos..
55fa0 20 20 20 20 20 20 20 20 61 66 74 65 72 5f 73 69 7a 65 20 3d 20 6d 61 78 5f 6d 61 74 63 68 5f 6c ........after_size.=.max_match_l
55fc0 65 6e 2c 0a 20 20 20 20 20 20 20 20 20 64 69 63 74 5f 66 61 63 74 6f 72 20 3d 20 31 36 2c 0a 20 en,..........dict_factor.=.16,..
55fe0 20 20 20 20 20 20 20 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 33 20 3d 20 30 ........num_prev_positions23.=.0
56000 2c 0a 20 20 20 20 20 20 20 20 20 70 6f 73 5f 61 72 72 61 79 5f 66 61 63 74 6f 72 20 3d 20 31 20 ,..........pos_array_factor.=.1.
56020 7d 3b 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 46 4c 5a 5f 65 6e 63 6f 64 65 72 28 20 63 6f 6e 73 74 };..public:...FLZ_encoder(.const
56040 20 69 6e 74 20 69 66 64 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6f 75 74 66 64 20 29 0a 20 20 20 20 .int.ifd,.const.int.outfd.).....
56060 3a 0a 20 20 20 20 4c 5a 5f 65 6e 63 6f 64 65 72 5f 62 61 73 65 28 20 62 65 66 6f 72 65 5f 73 69 :.....LZ_encoder_base(.before_si
56080 7a 65 2c 20 64 69 63 74 5f 73 69 7a 65 2c 20 61 66 74 65 72 5f 73 69 7a 65 2c 20 64 69 63 74 5f ze,.dict_size,.after_size,.dict_
560a0 66 61 63 74 6f 72 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 75 6d factor,......................num
560c0 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 33 2c 20 70 6f 73 5f 61 72 72 61 79 5f 66 61 63 _prev_positions23,.pos_array_fac
560e0 74 6f 72 2c 20 69 66 64 2c 20 6f 75 74 66 64 20 29 0a 20 20 20 20 7b 7d 0a 0a 20 20 62 6f 6f 6c tor,.ifd,.outfd.).....{}....bool
56100 20 65 6e 63 6f 64 65 5f 6d 65 6d 62 65 72 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c .encode_member(.const.unsigned.l
56120 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 29 3b 0a 20 20 7d 3b 0a 00 00 00 ong.long.member_size.);...};....
56140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
561a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
561c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
561e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56200 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/testsuite/............
56220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56260 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000755.0000000.0000000.0000
56280 30 30 30 30 30 30 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 34 34 36 32 00 20 35 00 00 00 0000000.14744236057.014462..5...
562a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
562c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
562e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56300 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
56320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
56340 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
56360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
563a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
563c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
563e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56400 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 63 68 65 63 6b 2e 73 68 00 00 00 00 lzip-1.25/testsuite/check.sh....
56420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56460 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000755.0000000.0000000.0000
56480 30 30 34 35 37 37 31 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 36 31 31 34 00 20 30 00 00 00 0045771.14744236057.016114..0...
564a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
564c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
564e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56500 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
56520 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
56540 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
56560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
565a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
565c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
565e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56600 23 21 20 2f 62 69 6e 2f 73 68 0a 23 20 63 68 65 63 6b 20 73 63 72 69 70 74 20 66 6f 72 20 4c 7a #!./bin/sh.#.check.script.for.Lz
56620 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 ip.-.LZMA.lossless.data.compress
56640 6f 72 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 32 35 20 41 6e 74 or.#.Copyright.(C).2008-2025.Ant
56660 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 23 0a 23 20 54 68 69 73 20 73 63 72 69 70 74 20 onio.Diaz.Diaz..#.#.This.script.
56680 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 68 61 76 65 20 75 6e 6c 69 6d is.free.software:.you.have.unlim
566a0 69 74 65 64 20 70 65 72 6d 69 73 73 69 6f 6e 0a 23 20 74 6f 20 63 6f 70 79 2c 20 64 69 73 74 72 ited.permission.#.to.copy,.distr
566c0 69 62 75 74 65 2c 20 61 6e 64 20 6d 6f 64 69 66 79 20 69 74 2e 0a 0a 4c 43 5f 41 4c 4c 3d 43 0a ibute,.and.modify.it...LC_ALL=C.
566e0 65 78 70 6f 72 74 20 4c 43 5f 41 4c 4c 0a 6f 62 6a 64 69 72 3d 60 70 77 64 60 0a 74 65 73 74 64 export.LC_ALL.objdir=`pwd`.testd
56700 69 72 3d 60 63 64 20 22 24 31 22 20 3b 20 70 77 64 60 0a 4c 5a 49 50 3d 22 24 7b 6f 62 6a 64 69 ir=`cd."$1".;.pwd`.LZIP="${objdi
56720 72 7d 22 2f 6c 7a 69 70 0a 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 28 29 20 7b 20 65 r}"/lzip.framework_failure().{.e
56740 63 68 6f 20 22 66 61 69 6c 75 72 65 20 69 6e 20 74 65 73 74 69 6e 67 20 66 72 61 6d 65 77 6f 72 cho."failure.in.testing.framewor
56760 6b 22 20 3b 20 65 78 69 74 20 31 20 3b 20 7d 0a 0a 69 66 20 5b 20 21 20 2d 66 20 22 24 7b 4c 5a k".;.exit.1.;.}..if.[.!.-f."${LZ
56780 49 50 7d 22 20 5d 20 7c 7c 20 5b 20 21 20 2d 78 20 22 24 7b 4c 5a 49 50 7d 22 20 5d 20 3b 20 74 IP}".].||.[.!.-x."${LZIP}".].;.t
567a0 68 65 6e 0a 09 65 63 68 6f 20 22 24 7b 4c 5a 49 50 7d 3a 20 63 61 6e 6e 6f 74 20 65 78 65 63 75 hen..echo."${LZIP}:.cannot.execu
567c0 74 65 22 0a 09 65 78 69 74 20 31 0a 66 69 0a 0a 5b 20 2d 65 20 22 24 7b 4c 5a 49 50 7d 22 20 5d te"..exit.1.fi..[.-e."${LZIP}".]
567e0 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 7c 7c 0a 09 7b 0a 09 65 63 68 6f 20 22 24 30 3a 20 61 .2>./dev/null.||..{..echo."$0:.a
56800 20 50 4f 53 49 58 20 73 68 65 6c 6c 20 69 73 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 75 6e 20 .POSIX.shell.is.required.to.run.
56820 74 68 65 20 74 65 73 74 73 22 0a 09 65 63 68 6f 20 22 54 72 79 20 62 61 73 68 20 2d 63 20 5c 22 the.tests"..echo."Try.bash.-c.\"
56840 24 30 20 24 31 20 24 32 5c 22 22 0a 09 65 78 69 74 20 31 0a 09 7d 0a 0a 69 66 20 5b 20 2d 64 20 $0.$1.$2\""..exit.1..}..if.[.-d.
56860 74 6d 70 20 5d 20 3b 20 74 68 65 6e 20 72 6d 20 2d 72 66 20 74 6d 70 20 3b 20 66 69 0a 6d 6b 64 tmp.].;.then.rm.-rf.tmp.;.fi.mkd
56880 69 72 20 74 6d 70 0a 63 64 20 22 24 7b 6f 62 6a 64 69 72 7d 22 2f 74 6d 70 20 7c 7c 20 66 72 61 ir.tmp.cd."${objdir}"/tmp.||.fra
568a0 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 63 70 20 22 24 7b 74 65 73 74 64 69 72 7d 22 2f mework_failure..cp."${testdir}"/
568c0 74 65 73 74 2e 74 78 74 20 69 6e 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 test.txt.in.||.framework_failure
568e0 0a 69 6e 5f 6c 7a 3d 22 24 7b 74 65 73 74 64 69 72 7d 22 2f 74 65 73 74 2e 74 78 74 2e 6c 7a 0a .in_lz="${testdir}"/test.txt.lz.
56900 66 6f 78 5f 6c 7a 3d 22 24 7b 74 65 73 74 64 69 72 7d 22 2f 66 6f 78 2e 6c 7a 0a 66 6e 7a 5f 6c fox_lz="${testdir}"/fox.lz.fnz_l
56920 7a 3d 22 24 7b 74 65 73 74 64 69 72 7d 22 2f 66 6f 78 5f 6e 7a 2e 6c 7a 0a 66 61 69 6c 3d 30 0a z="${testdir}"/fox_nz.lz.fail=0.
56940 74 65 73 74 5f 66 61 69 6c 65 64 28 29 20 7b 20 66 61 69 6c 3d 31 20 3b 20 70 72 69 6e 74 66 20 test_failed().{.fail=1.;.printf.
56960 22 20 24 31 22 20 3b 20 5b 20 2d 7a 20 22 24 32 22 20 5d 20 7c 7c 20 70 72 69 6e 74 66 20 22 28 ".$1".;.[.-z."$2".].||.printf."(
56980 24 32 29 22 20 3b 20 7d 0a 0a 70 72 69 6e 74 66 20 22 74 65 73 74 69 6e 67 20 6c 7a 69 70 2d 25 $2)".;.}..printf."testing.lzip-%
569a0 73 2e 2e 2e 22 20 22 24 32 22 0a 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 66 6b 71 6d 34 20 69 6e 0a s..."."$2".."${LZIP}".-fkqm4.in.
569c0 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e [.$?.=.1.].||.test_failed.$LINEN
569e0 4f 0a 5b 20 21 20 2d 65 20 69 6e 2e 6c 7a 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 O.[.!.-e.in.lz.].||.test_failed.
56a00 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 66 6b 71 6d 32 37 34 20 69 6e 0a 5b 20 $LINENO."${LZIP}".-fkqm274.in.[.
56a20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a $?.=.1.].||.test_failed.$LINENO.
56a40 5b 20 21 20 2d 65 20 69 6e 2e 6c 7a 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c [.!.-e.in.lz.].||.test_failed.$L
56a60 49 4e 45 4e 4f 0a 66 6f 72 20 69 20 69 6e 20 62 61 64 5f 73 69 7a 65 20 2d 31 20 30 20 34 30 39 INENO.for.i.in.bad_size.-1.0.409
56a80 35 20 35 31 33 4d 69 42 20 31 47 20 31 54 20 31 50 20 31 45 20 31 5a 20 31 59 20 31 30 4b 42 20 5.513MiB.1G.1T.1P.1E.1Z.1Y.10KB.
56aa0 3b 20 64 6f 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 66 6b 71 73 20 24 69 20 69 6e 0a 09 5b 20 24 ;.do.."${LZIP}".-fkqs.$i.in..[.$
56ac0 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 ?.=.1.].||.test_failed.$LINENO.$
56ae0 69 0a 09 5b 20 21 20 2d 65 20 69 6e 2e 6c 7a 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 i..[.!.-e.in.lz.].||.test_failed
56b00 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 64 6f 6e 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 71 20 69 .$LINENO.$i.done."${LZIP}".-lq.i
56b20 6e 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e n.[.$?.=.2.].||.test_failed.$LIN
56b40 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 69 6e 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 ENO."${LZIP}".-tq.in.[.$?.=.2.].
56b60 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 ||.test_failed.$LINENO."${LZIP}"
56b80 20 2d 74 71 20 3c 20 69 6e 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 .-tq.<.in.[.$?.=.2.].||.test_fai
56ba0 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 69 6e 0a 5b 20 led.$LINENO."${LZIP}".-cdq.in.[.
56bc0 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a $?.=.2.].||.test_failed.$LINENO.
56be0 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 3c 20 69 6e 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c "${LZIP}".-cdq.<.in.[.$?.=.2.].|
56c00 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 |.test_failed.$LINENO."${LZIP}".
56c20 2d 64 71 20 2d 6f 20 69 6e 20 3c 20 22 24 7b 69 6e 5f 6c 7a 7d 22 0a 5b 20 24 3f 20 3d 20 31 20 -dq.-o.in.<."${in_lz}".[.$?.=.1.
56c40 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 ].||.test_failed.$LINENO."${LZIP
56c60 7d 22 20 2d 64 71 20 2d 6f 20 69 6e 20 22 24 7b 69 6e 5f 6c 7a 7d 22 0a 5b 20 24 3f 20 3d 20 31 }".-dq.-o.in."${in_lz}".[.$?.=.1
56c80 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 .].||.test_failed.$LINENO."${LZI
56ca0 50 7d 22 20 2d 64 71 20 2d 6f 20 6f 75 74 20 6e 78 5f 66 69 6c 65 2e 6c 7a 0a 5b 20 24 3f 20 3d P}".-dq.-o.out.nx_file.lz.[.$?.=
56cc0 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 .1.].||.test_failed.$LINENO.[.!.
56ce0 2d 65 20 6f 75 74 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a -e.out.].||.test_failed.$LINENO.
56d00 22 24 7b 4c 5a 49 50 7d 22 20 2d 71 20 2d 6f 20 6f 75 74 2e 6c 7a 20 6e 78 5f 66 69 6c 65 0a 5b "${LZIP}".-q.-o.out.lz.nx_file.[
56d20 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f .$?.=.1.].||.test_failed.$LINENO
56d40 0a 5b 20 21 20 2d 65 20 6f 75 74 2e 6c 7a 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 .[.!.-e.out.lz.].||.test_failed.
56d60 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 71 66 20 2d 53 31 30 30 6b 20 2d 6f 20 $LINENO."${LZIP}".-qf.-S100k.-o.
56d80 6f 75 74 20 69 6e 20 69 6e 09 23 20 6f 6e 6c 79 20 6f 6e 65 20 66 69 6c 65 20 77 69 74 68 20 2d out.in.in.#.only.one.file.with.-
56da0 6f 20 61 6e 64 20 2d 53 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c o.and.-S.[.$?.=.1.].||.test_fail
56dc0 65 64 20 24 4c 49 4e 45 4e 4f 0a 7b 20 5b 20 21 20 2d 65 20 6f 75 74 20 5d 20 26 26 20 5b 20 21 ed.$LINENO.{.[.!.-e.out.].&&.[.!
56de0 20 2d 65 20 6f 75 74 2e 6c 7a 20 5d 20 3b 20 7d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 .-e.out.lz.].;.}.||.test_failed.
56e00 24 4c 49 4e 45 4e 4f 0a 23 20 74 68 65 73 65 20 61 72 65 20 66 6f 72 20 63 6f 64 65 20 63 6f 76 $LINENO.#.these.are.for.code.cov
56e20 65 72 61 67 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 74 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 32 erage."${LZIP}".-lt."${in_lz}".2
56e40 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 >./dev/null.[.$?.=.1.].||.test_f
56e60 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 6c 20 22 24 7b ailed.$LINENO."${LZIP}".-cdl."${
56e80 69 6e 5f 6c 7a 7d 22 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 in_lz}".2>./dev/null.[.$?.=.1.].
56ea0 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 ||.test_failed.$LINENO."${LZIP}"
56ec0 20 2d 63 64 74 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b 20 .-cdt."${in_lz}".2>./dev/null.[.
56ee0 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a $?.=.1.].||.test_failed.$LINENO.
56f00 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 2d 2d 20 6e 78 5f 66 69 6c 65 2e 6c 7a 20 32 3e 20 2f 64 "${LZIP}".-t.--.nx_file.lz.2>./d
56f20 65 76 2f 6e 75 6c 6c 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 ev/null.[.$?.=.1.].||.test_faile
56f40 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 22 22 20 3c 20 2f 64 65 76 d.$LINENO."${LZIP}".-t."".<./dev
56f60 2f 6e 75 6c 6c 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c /null.2>./dev/null.[.$?.=.1.].||
56f80 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d .test_failed.$LINENO."${LZIP}".-
56fa0 2d 68 65 6c 70 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 -help.>./dev/null.||.test_failed
56fc0 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6e 31 20 2d 56 20 3e 20 2f 64 65 76 .$LINENO."${LZIP}".-n1.-V.>./dev
56fe0 2f 6e 75 6c 6c 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b /null.||.test_failed.$LINENO."${
57000 4c 5a 49 50 7d 22 20 2d 6d 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b 20 24 3f 20 3d 20 31 20 LZIP}".-m.2>./dev/null.[.$?.=.1.
57020 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 ].||.test_failed.$LINENO."${LZIP
57040 7d 22 20 2d 7a 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c }".-z.2>./dev/null.[.$?.=.1.].||
57060 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d .test_failed.$LINENO."${LZIP}".-
57080 2d 62 61 64 5f 6f 70 74 69 6f 6e 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b 20 24 3f 20 3d 20 -bad_option.2>./dev/null.[.$?.=.
570a0 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 1.].||.test_failed.$LINENO."${LZ
570c0 49 50 7d 22 20 2d 2d 74 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b 20 24 3f 20 3d 20 31 20 5d IP}".--t.2>./dev/null.[.$?.=.1.]
570e0 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d .||.test_failed.$LINENO."${LZIP}
57100 22 20 2d 2d 74 65 73 74 3d 32 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b 20 24 3f 20 3d 20 31 ".--test=2.2>./dev/null.[.$?.=.1
57120 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 .].||.test_failed.$LINENO."${LZI
57140 50 7d 22 20 2d 2d 6f 75 74 70 75 74 3d 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b 20 24 3f 20 P}".--output=.2>./dev/null.[.$?.
57160 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b =.1.].||.test_failed.$LINENO."${
57180 4c 5a 49 50 7d 22 20 2d 2d 6f 75 74 70 75 74 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b 20 24 LZIP}".--output.2>./dev/null.[.$
571a0 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 70 ?.=.1.].||.test_failed.$LINENO.p
571c0 72 69 6e 74 66 20 22 4c 5a 49 50 5c 30 30 31 2d 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e rintf."LZIP\001-................
571e0 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 22 20 7c 20 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 32 ..............".|."${LZIP}".-t.2
57200 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 70 72 69 6e 74 66 20 22 4c 5a 49 50 5c 30 30 32 2d 2e 2e 2e >./dev/null.printf."LZIP\002-...
57220 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 22 20 7c 20 22 ...........................".|."
57240 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 70 72 69 6e 74 66 20 ${LZIP}".-t.2>./dev/null.printf.
57260 22 4c 5a 49 50 5c 30 30 31 2b 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e "LZIP\001+......................
57280 2e 2e 2e 2e 2e 2e 2e 2e 22 20 7c 20 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 32 3e 20 2f 64 65 76 ........".|."${LZIP}".-t.2>./dev
572a0 2f 6e 75 6c 6c 0a 0a 70 72 69 6e 74 66 20 22 5c 6e 74 65 73 74 69 6e 67 20 64 65 63 6f 6d 70 72 /null..printf."\ntesting.decompr
572c0 65 73 73 69 6f 6e 2e 2e 2e 22 0a 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 20 22 24 7b 69 6e 5f 6c ession...".."${LZIP}".-l."${in_l
572e0 7a 7d 22 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 z}".>./dev/null.||.test_failed.$
57300 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 7c LINENO."${LZIP}".-t."${in_lz}".|
57320 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 |.test_failed.$LINENO."${LZIP}".
57340 2d 64 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 2d 6f 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 -d."${in_lz}".-o.out.||.test_fai
57360 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 led.$LINENO.cmp.in.out.||.test_f
57380 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 22 24 7b 69 ailed.$LINENO."${LZIP}".-cd."${i
573a0 6e 5f 6c 7a 7d 22 20 3e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e n_lz}".>.out.||.test_failed.$LIN
573c0 45 4e 4f 0a 63 6d 70 20 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c ENO.cmp.in.out.||.test_failed.$L
573e0 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 2d 6f INENO."${LZIP}".-d."${in_lz}".-o
57400 20 2d 20 3e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a .-.>.out.||.test_failed.$LINENO.
57420 63 6d 70 20 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e cmp.in.out.||.test_failed.$LINEN
57440 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 3c 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 6f 75 O."${LZIP}".-d.<."${in_lz}".>.ou
57460 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 t.||.test_failed.$LINENO.cmp.in.
57480 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 out.||.test_failed.$LINENO.rm.-f
574a0 20 6f 75 74 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 63 70 20 22 24 .out.||.framework_failure..cp."$
574c0 7b 69 6e 5f 6c 7a 7d 22 20 6f 75 74 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 {in_lz}".out.lz.||.framework_fai
574e0 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 6b 20 6f 75 74 2e 6c 7a 20 7c 7c 20 74 65 73 lure."${LZIP}".-dk.out.lz.||.tes
57500 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 6f 75 74 20 7c 7c 20 74 t_failed.$LINENO.cmp.in.out.||.t
57520 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 6f 75 74 20 7c 7c 20 est_failed.$LINENO.rm.-f.out.||.
57540 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 framework_failure."${LZIP}".-cd.
57560 22 24 7b 66 6f 78 5f 6c 7a 7d 22 20 3e 20 66 6f 78 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 "${fox_lz}".>.fox.||.test_failed
57580 20 24 4c 49 4e 45 4e 4f 0a 63 70 20 66 6f 78 20 63 6f 70 79 20 7c 7c 20 66 72 61 6d 65 77 6f 72 .$LINENO.cp.fox.copy.||.framewor
575a0 6b 5f 66 61 69 6c 75 72 65 0a 63 70 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 63 6f 70 79 2e 6c 7a 20 k_failure.cp."${in_lz}".copy.lz.
575c0 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d ||.framework_failure."${LZIP}".-
575e0 64 20 63 6f 70 79 2e 6c 7a 20 6f 75 74 2e 6c 7a 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 09 23 20 d.copy.lz.out.lz.2>./dev/null.#.
57600 73 6b 69 70 20 63 6f 70 79 2c 20 64 65 63 6f 6d 70 72 65 73 73 20 6f 75 74 0a 5b 20 24 3f 20 3d skip.copy,.decompress.out.[.$?.=
57620 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 .1.].||.test_failed.$LINENO.[.!.
57640 2d 65 20 6f 75 74 2e 6c 7a 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 -e.out.lz.].||.test_failed.$LINE
57660 4e 4f 0a 63 6d 70 20 66 6f 78 20 63 6f 70 79 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 NO.cmp.fox.copy.||.test_failed.$
57680 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 LINENO.cmp.in.out.||.test_failed
576a0 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 66 20 63 6f 70 79 2e 6c 7a 20 7c .$LINENO."${LZIP}".-df.copy.lz.|
576c0 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 63 6f 70 |.test_failed.$LINENO.[.!.-e.cop
576e0 79 2e 6c 7a 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d y.lz.].||.test_failed.$LINENO.cm
57700 70 20 69 6e 20 63 6f 70 79 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f p.in.copy.||.test_failed.$LINENO
57720 0a 72 6d 20 2d 66 20 63 6f 70 79 20 6f 75 74 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 .rm.-f.copy.out.||.framework_fai
57740 6c 75 72 65 0a 0a 63 70 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 6f 75 74 2e 6c 7a 20 7c 7c 20 66 72 lure..cp."${in_lz}".out.lz.||.fr
57760 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 2d 53 31 amework_failure."${LZIP}".-d.-S1
57780 30 30 6b 20 6f 75 74 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 00k.out.lz.||.test_failed.$LINEN
577a0 4f 09 23 20 69 67 6e 6f 72 65 20 2d 53 0a 5b 20 21 20 2d 65 20 6f 75 74 2e 6c 7a 20 5d 20 7c 7c O.#.ignore.-S.[.!.-e.out.lz.].||
577c0 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 6f 75 74 20 .test_failed.$LINENO.cmp.in.out.
577e0 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 0a 70 72 69 6e 74 66 20 22 ||.test_failed.$LINENO..printf."
57800 74 6f 20 62 65 20 6f 76 65 72 77 72 69 74 74 65 6e 22 20 3e 20 6f 75 74 20 7c 7c 20 66 72 61 6d to.be.overwritten".>.out.||.fram
57820 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 66 20 2d 6f 20 6f ework_failure."${LZIP}".-df.-o.o
57840 75 74 20 3c 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 ut.<."${in_lz}".||.test_failed.$
57860 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 LINENO.cmp.in.out.||.test_failed
57880 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 2d 6f 20 2e 2f 2d 20 22 24 7b .$LINENO."${LZIP}".-d.-o../-."${
578a0 69 6e 5f 6c 7a 7d 22 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 in_lz}".||.test_failed.$LINENO.c
578c0 6d 70 20 69 6e 20 2e 2f 2d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f mp.in../-.||.test_failed.$LINENO
578e0 0a 72 6d 20 2d 66 20 2e 2f 2d 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a .rm.-f../-.||.framework_failure.
57900 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 2d 6f 20 2e 2f 2d 20 3c 20 22 24 7b 69 6e 5f 6c 7a 7d 22 "${LZIP}".-d.-o../-.<."${in_lz}"
57920 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 2e .||.test_failed.$LINENO.cmp.in..
57940 2f 2d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 /-.||.test_failed.$LINENO.rm.-f.
57960 2e 2f 2d 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 63 70 20 22 24 7b ./-.||.framework_failure..cp."${
57980 69 6e 5f 6c 7a 7d 22 20 61 6e 79 6f 74 68 65 72 6e 61 6d 65 20 7c 7c 20 66 72 61 6d 65 77 6f 72 in_lz}".anyothername.||.framewor
579a0 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 76 20 2d 20 61 6e 79 6f 74 68 k_failure."${LZIP}".-dv.-.anyoth
579c0 65 72 6e 61 6d 65 20 2d 20 3c 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 6f 75 74 20 32 3e 20 2f ername.-.<."${in_lz}".>.out.2>./
579e0 64 65 76 2f 6e 75 6c 6c 20 7c 7c 0a 09 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f dev/null.||..test_failed.$LINENO
57a00 0a 63 6d 70 20 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 .cmp.in.out.||.test_failed.$LINE
57a20 4e 4f 0a 63 6d 70 20 69 6e 20 61 6e 79 6f 74 68 65 72 6e 61 6d 65 2e 6f 75 74 20 7c 7c 20 74 65 NO.cmp.in.anyothername.out.||.te
57a40 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 61 6e 79 6f 74 68 65 72 st_failed.$LINENO.rm.-f.anyother
57a60 6e 61 6d 65 2e 6f 75 74 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 22 name.out.||.framework_failure.."
57a80 24 7b 4c 5a 49 50 7d 22 20 2d 6c 71 20 69 6e 20 22 24 7b 69 6e 5f 6c 7a 7d 22 0a 5b 20 24 3f 20 ${LZIP}".-lq.in."${in_lz}".[.$?.
57aa0 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b =.2.].||.test_failed.$LINENO."${
57ac0 4c 5a 49 50 7d 22 20 2d 6c 71 20 6e 78 5f 66 69 6c 65 2e 6c 7a 20 22 24 7b 69 6e 5f 6c 7a 7d 22 LZIP}".-lq.nx_file.lz."${in_lz}"
57ae0 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 .[.$?.=.1.].||.test_failed.$LINE
57b00 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 69 6e 20 22 24 7b 69 6e 5f 6c 7a 7d 22 0a 5b NO."${LZIP}".-tq.in."${in_lz}".[
57b20 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f .$?.=.2.].||.test_failed.$LINENO
57b40 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 6e 78 5f 66 69 6c 65 2e 6c 7a 20 22 24 7b 69 6e 5f ."${LZIP}".-tq.nx_file.lz."${in_
57b60 6c 7a 7d 22 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 lz}".[.$?.=.1.].||.test_failed.$
57b80 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 69 6e 20 22 24 7b 69 6e 5f 6c LINENO."${LZIP}".-cdq.in."${in_l
57ba0 7a 7d 22 20 3e 20 6f 75 74 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 z}".>.out.[.$?.=.2.].||.test_fai
57bc0 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 61 74 20 6f 75 74 20 69 6e 20 7c 20 63 6d 70 20 69 6e 20 led.$LINENO.cat.out.in.|.cmp.in.
57be0 2d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 09 09 23 20 6f 75 74 20 -.||.test_failed.$LINENO..#.out.
57c00 6d 75 73 74 20 62 65 20 65 6d 70 74 79 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 6e 78 5f must.be.empty."${LZIP}".-cdq.nx_
57c20 66 69 6c 65 2e 6c 7a 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 6f 75 74 09 23 20 73 6b 69 70 20 file.lz."${in_lz}".>.out.#.skip.
57c40 6e 78 5f 66 69 6c 65 2c 20 64 65 63 6f 6d 70 72 65 73 73 20 69 6e 0a 5b 20 24 3f 20 3d 20 31 20 nx_file,.decompress.in.[.$?.=.1.
57c60 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 ].||.test_failed.$LINENO.cmp.in.
57c80 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 out.||.test_failed.$LINENO.rm.-f
57ca0 20 6f 75 74 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 63 70 20 22 24 7b .out.||.framework_failure.cp."${
57cc0 69 6e 5f 6c 7a 7d 22 20 6f 75 74 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c in_lz}".out.lz.||.framework_fail
57ce0 75 72 65 0a 66 6f 72 20 69 20 69 6e 20 31 20 32 20 33 20 34 20 35 20 36 20 37 20 3b 20 64 6f 0a ure.for.i.in.1.2.3.4.5.6.7.;.do.
57d00 09 70 72 69 6e 74 66 20 22 67 22 20 3e 3e 20 6f 75 74 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f .printf."g".>>.out.lz.||.framewo
57d20 72 6b 5f 66 61 69 6c 75 72 65 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 61 6c 76 76 20 6f 75 74 2e rk_failure.."${LZIP}".-alvv.out.
57d40 6c 7a 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 26 31 0a 09 lz."${in_lz}".>./dev/null.2>&1..
57d60 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e [.$?.=.2.].||.test_failed.$LINEN
57d80 4f 20 24 69 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 61 74 76 76 76 76 20 6f 75 74 2e 6c 7a 20 22 O.$i.."${LZIP}".-atvvvv.out.lz."
57da0 24 7b 69 6e 5f 6c 7a 7d 22 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 09 5b 20 24 3f 20 3d 20 32 ${in_lz}".2>./dev/null..[.$?.=.2
57dc0 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 64 6f 6e .].||.test_failed.$LINENO.$i.don
57de0 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 71 20 69 6e 20 6f 75 74 2e 6c 7a 0a 5b 20 24 3f 20 3d e."${LZIP}".-dq.in.out.lz.[.$?.=
57e00 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 2d 65 .2.].||.test_failed.$LINENO.[.-e
57e20 20 6f 75 74 2e 6c 7a 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f .out.lz.].||.test_failed.$LINENO
57e40 0a 5b 20 21 20 2d 65 20 6f 75 74 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 .[.!.-e.out.].||.test_failed.$LI
57e60 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 69 6e 2e 6f 75 74 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 NENO.[.!.-e.in.out.].||.test_fai
57e80 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 71 20 6e 78 5f 66 69 6c led.$LINENO."${LZIP}".-dq.nx_fil
57ea0 65 2e 6c 7a 20 6f 75 74 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 e.lz.out.lz.[.$?.=.1.].||.test_f
57ec0 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 6f 75 74 2e 6c 7a 20 5d 20 7c 7c ailed.$LINENO.[.!.-e.out.lz.].||
57ee0 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 6e 78 5f 66 .test_failed.$LINENO.[.!.-e.nx_f
57f00 69 6c 65 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 ile.].||.test_failed.$LINENO.cmp
57f20 20 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 .in.out.||.test_failed.$LINENO.r
57f40 6d 20 2d 66 20 6f 75 74 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 63 m.-f.out.||.framework_failure..c
57f60 61 74 20 69 6e 20 69 6e 20 3e 20 69 6e 32 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c at.in.in.>.in2.||.framework_fail
57f80 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 22 24 7b 69 ure."${LZIP}".-l."${in_lz}"."${i
57fa0 6e 5f 6c 7a 7d 22 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 n_lz}".>./dev/null.||.test_faile
57fc0 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 22 24 7b 69 6e 5f 6c 7a 7d d.$LINENO."${LZIP}".-t."${in_lz}
57fe0 22 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e "."${in_lz}".||.test_failed.$LIN
58000 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 22 24 7b ENO."${LZIP}".-cd."${in_lz}"."${
58020 69 6e 5f 6c 7a 7d 22 20 2d 6f 20 6f 75 74 20 3e 20 6f 75 74 32 20 7c 7c 20 74 65 73 74 5f 66 61 in_lz}".-o.out.>.out2.||.test_fa
58040 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 6f 75 74 20 5d 20 7c 7c 20 74 65 73 iled.$LINENO.[.!.-e.out.].||.tes
58060 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 09 09 09 23 20 6f 76 65 72 72 69 64 65 20 2d 6f t_failed.$LINENO...#.override.-o
58080 0a 63 6d 70 20 69 6e 32 20 6f 75 74 32 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 .cmp.in2.out2.||.test_failed.$LI
580a0 4e 45 4e 4f 0a 72 6d 20 2d 66 20 6f 75 74 32 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 NENO.rm.-f.out2.||.framework_fai
580c0 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 22 24 7b lure."${LZIP}".-d."${in_lz}"."${
580e0 69 6e 5f 6c 7a 7d 22 20 2d 6f 20 6f 75 74 32 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 in_lz}".-o.out2.||.test_failed.$
58100 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 32 20 6f 75 74 32 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c LINENO.cmp.in2.out2.||.test_fail
58120 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 6f 75 74 32 20 7c 7c 20 66 72 61 6d 65 77 6f ed.$LINENO.rm.-f.out2.||.framewo
58140 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 63 61 74 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 22 24 7b 69 6e rk_failure..cat."${in_lz}"."${in
58160 5f 6c 7a 7d 22 20 3e 20 6f 75 74 32 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 _lz}".>.out2.lz.||.framework_fai
58180 6c 75 72 65 0a 6c 69 6e 65 73 3d 60 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 76 76 20 6f 75 74 32 2e lure.lines=`"${LZIP}".-tvv.out2.
581a0 6c 7a 20 32 3e 26 31 20 7c 20 77 63 20 2d 6c 60 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 lz.2>&1.|.wc.-l`.||.test_failed.
581c0 24 4c 49 4e 45 4e 4f 0a 5b 20 22 24 7b 6c 69 6e 65 73 7d 22 20 2d 65 71 20 32 20 5d 20 7c 7c 20 $LINENO.[."${lines}".-eq.2.].||.
581e0 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 22 24 7b 6c 69 6e 65 73 7d 22 0a 6c test_failed.$LINENO."${lines}".l
58200 69 6e 65 73 3d 60 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 76 76 20 6f 75 74 32 2e 6c 7a 20 7c 20 77 ines=`"${LZIP}".-lvv.out2.lz.|.w
58220 63 20 2d 6c 60 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 22 c.-l`.||.test_failed.$LINENO.[."
58240 24 7b 6c 69 6e 65 73 7d 22 20 2d 65 71 20 35 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 ${lines}".-eq.5.].||.test_failed
58260 20 24 4c 49 4e 45 4e 4f 20 22 24 7b 6c 69 6e 65 73 7d 22 0a 0a 70 72 69 6e 74 66 20 22 5c 6e 67 .$LINENO."${lines}"..printf."\ng
58280 61 72 62 61 67 65 22 20 3e 3e 20 6f 75 74 32 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f arbage".>>.out2.lz.||.framework_
582a0 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 76 76 76 76 20 6f 75 74 32 2e 6c 7a failure."${LZIP}".-tvvvv.out2.lz
582c0 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 .2>./dev/null.||.test_failed.$LI
582e0 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 61 6c 71 20 6f 75 74 32 2e 6c 7a 0a 5b 20 24 3f NENO."${LZIP}".-alq.out2.lz.[.$?
58300 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 .=.2.].||.test_failed.$LINENO."$
58320 7b 4c 5a 49 50 7d 22 20 2d 61 74 71 20 6f 75 74 32 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 {LZIP}".-atq.out2.lz.[.$?.=.2.].
58340 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 ||.test_failed.$LINENO."${LZIP}"
58360 20 2d 61 74 71 20 3c 20 6f 75 74 32 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 .-atq.<.out2.lz.[.$?.=.2.].||.te
58380 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 61 64 6b st_failed.$LINENO."${LZIP}".-adk
583a0 71 20 6f 75 74 32 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 q.out2.lz.[.$?.=.2.].||.test_fai
583c0 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 6f 75 74 32 20 5d 20 7c 7c 20 74 65 73 led.$LINENO.[.!.-e.out2.].||.tes
583e0 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 61 64 6b 71 t_failed.$LINENO."${LZIP}".-adkq
58400 20 2d 6f 20 6f 75 74 32 20 3c 20 6f 75 74 32 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c .-o.out2.<.out2.lz.[.$?.=.2.].||
58420 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 6f 75 74 32 .test_failed.$LINENO.[.!.-e.out2
58440 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 70 72 69 6e 74 66 .].||.test_failed.$LINENO.printf
58460 20 22 74 6f 20 62 65 20 6f 76 65 72 77 72 69 74 74 65 6e 22 20 3e 20 6f 75 74 32 20 7c 7c 20 66 ."to.be.overwritten".>.out2.||.f
58480 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 66 20 6f ramework_failure."${LZIP}".-df.o
584a0 75 74 32 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d ut2.lz.||.test_failed.$LINENO.cm
584c0 70 20 69 6e 32 20 6f 75 74 32 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e p.in2.out2.||.test_failed.$LINEN
584e0 4f 0a 72 6d 20 2d 66 20 6f 75 74 32 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 O.rm.-f.out2.||.framework_failur
58500 65 0a 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 22 24 7b 66 6f 78 5f 6c 7a 7d 22 20 2d 6f 20 61 e.."${LZIP}".-d."${fox_lz}".-o.a
58520 2f 62 2f 63 2f 66 6f 78 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a /b/c/fox.||.test_failed.$LINENO.
58540 63 6d 70 20 66 6f 78 20 61 2f 62 2f 63 2f 66 6f 78 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 cmp.fox.a/b/c/fox.||.test_failed
58560 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 72 66 20 61 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 .$LINENO.rm.-rf.a.||.framework_f
58580 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 2d 6f 20 61 2f 62 2f 63 2f 66 6f 78 ailure."${LZIP}".-d.-o.a/b/c/fox
585a0 20 3c 20 22 24 7b 66 6f 78 5f 6c 7a 7d 22 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c .<."${fox_lz}".||.test_failed.$L
585c0 49 4e 45 4e 4f 0a 63 6d 70 20 66 6f 78 20 61 2f 62 2f 63 2f 66 6f 78 20 7c 7c 20 74 65 73 74 5f INENO.cmp.fox.a/b/c/fox.||.test_
585e0 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 72 66 20 61 20 7c 7c 20 66 72 61 6d 65 failed.$LINENO.rm.-rf.a.||.frame
58600 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 71 20 22 24 7b 66 6f work_failure."${LZIP}".-dq."${fo
58620 78 5f 6c 7a 7d 22 20 2d 6f 20 61 2f 62 2f 63 2f 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 x_lz}".-o.a/b/c/.[.$?.=.1.].||.t
58640 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 61 20 5d 20 7c 7c est_failed.$LINENO.[.!.-e.a.].||
58660 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 0a 74 6f 75 63 68 20 65 6d 70 74 .test_failed.$LINENO..touch.empt
58680 79 20 65 6d 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 y.em.||.framework_failure."${LZI
586a0 50 7d 22 20 2d 30 20 65 6d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f P}".-0.em.||.test_failed.$LINENO
586c0 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 20 65 6d 2e 6c 7a 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 ."${LZIP}".-l.em.lz.>./dev/null.
586e0 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 ||.test_failed.$LINENO."${LZIP}"
58700 20 2d 64 6b 20 65 6d 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e .-dk.em.lz.||.test_failed.$LINEN
58720 4f 0a 63 6d 70 20 65 6d 70 74 79 20 65 6d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c O.cmp.empty.em.||.test_failed.$L
58740 49 4e 45 4e 4f 0a 63 61 74 20 65 6d 2e 6c 7a 20 65 6d 2e 6c 7a 20 7c 20 22 24 7b 4c 5a 49 50 7d INENO.cat.em.lz.em.lz.|."${LZIP}
58760 22 20 2d 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 61 74 20 ".-t.||.test_failed.$LINENO.cat.
58780 65 6d 2e 6c 7a 20 65 6d 2e 6c 7a 20 7c 20 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 3e 20 65 6d 20 em.lz.em.lz.|."${LZIP}".-d.>.em.
587a0 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 65 6d 70 74 79 ||.test_failed.$LINENO.cmp.empty
587c0 20 65 6d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 61 74 20 65 .em.||.test_failed.$LINENO.cat.e
587e0 6d 2e 6c 7a 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 7c 20 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 7c m.lz."${in_lz}".|."${LZIP}".-t.|
58800 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 61 74 20 65 6d 2e 6c 7a 20 |.test_failed.$LINENO.cat.em.lz.
58820 22 24 7b 69 6e 5f 6c 7a 7d 22 20 7c 20 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 3e 20 6f 75 74 20 "${in_lz}".|."${LZIP}".-d.>.out.
58840 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 6f 75 ||.test_failed.$LINENO.cmp.in.ou
58860 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 61 74 20 22 24 7b t.||.test_failed.$LINENO.cat."${
58880 69 6e 5f 6c 7a 7d 22 20 65 6d 2e 6c 7a 20 7c 20 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 7c 7c 20 in_lz}".em.lz.|."${LZIP}".-t.||.
588a0 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 61 74 20 22 24 7b 69 6e 5f 6c 7a test_failed.$LINENO.cat."${in_lz
588c0 7d 22 20 65 6d 2e 6c 7a 20 7c 20 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 3e 20 6f 75 74 20 7c 7c }".em.lz.|."${LZIP}".-d.>.out.||
588e0 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 6f 75 74 20 .test_failed.$LINENO.cmp.in.out.
58900 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 0a 70 72 69 6e 74 66 20 22 ||.test_failed.$LINENO..printf."
58920 5c 6e 74 65 73 74 69 6e 67 20 20 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 2e 2e 22 0a 0a 22 24 7b \ntesting...compression...".."${
58940 4c 5a 49 50 7d 22 20 2d 63 20 2d 30 20 69 6e 20 69 6e 20 69 6e 20 2d 53 31 30 30 6b 20 2d 6f 20 LZIP}".-c.-0.in.in.in.-S100k.-o.
58960 6f 75 74 33 2e 6c 7a 20 3e 20 63 6f 70 79 32 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 out3.lz.>.copy2.lz.||.test_faile
58980 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 6f 75 74 33 2e 6c 7a 20 5d 20 7c 7c 20 74 65 d.$LINENO.[.!.-e.out3.lz.].||.te
589a0 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 09 09 09 23 20 6f 76 65 72 72 69 64 65 20 2d st_failed.$LINENO...#.override.-
589c0 6f 20 61 6e 64 20 2d 53 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 30 66 20 69 6e 20 69 6e 20 2d 2d 6f o.and.-S."${LZIP}".-0f.in.in.--o
589e0 75 74 70 75 74 3d 63 6f 70 79 32 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c utput=copy2.lz.||.test_failed.$L
58a00 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 63 6f 70 79 32 2e 6c 7a 20 2d 6f 20 6f INENO."${LZIP}".-d.copy2.lz.-o.o
58a20 75 74 32 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 2d 65 20 ut2.||.test_failed.$LINENO.[.-e.
58a40 63 6f 70 79 32 2e 6c 7a 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e copy2.lz.].||.test_failed.$LINEN
58a60 4f 0a 63 6d 70 20 69 6e 32 20 6f 75 74 32 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c O.cmp.in2.out2.||.test_failed.$L
58a80 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 63 6f 70 79 32 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 INENO.rm.-f.copy2.lz.||.framewor
58aa0 6b 5f 66 61 69 6c 75 72 65 0a 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 66 20 22 24 7b 69 6e 5f 6c k_failure.."${LZIP}".-cf."${in_l
58ac0 7a 7d 22 20 3e 20 6c 7a 6c 7a 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 09 23 20 2f 64 65 76 2f 6e z}".>.lzlz.2>./dev/null.#./dev/n
58ae0 75 6c 6c 20 69 73 20 61 20 74 74 79 20 6f 6e 20 4f 53 2f 32 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 ull.is.a.tty.on.OS/2.[.$?.=.1.].
58b00 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 ||.test_failed.$LINENO."${LZIP}"
58b20 20 2d 46 76 76 6d 33 36 20 2d 6f 20 2d 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 6c 7a 6c 7a 20 .-Fvvm36.-o.-."${in_lz}".>.lzlz.
58b40 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 2>./dev/null.||.test_failed.$LIN
58b60 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 6c 7a 6c 7a 20 7c 20 22 24 7b 4c 5a 49 50 ENO."${LZIP}".-cd.lzlz.|."${LZIP
58b80 7d 22 20 2d 64 20 3e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 }".-d.>.out.||.test_failed.$LINE
58ba0 4e 4f 0a 63 6d 70 20 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 NO.cmp.in.out.||.test_failed.$LI
58bc0 4e 45 4e 4f 0a 72 6d 20 2d 66 20 6c 7a 6c 7a 20 6f 75 74 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b NENO.rm.-f.lzlz.out.||.framework
58be0 5f 66 61 69 6c 75 72 65 0a 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 30 20 2d 6f 20 2e 2f 2d 20 69 6e _failure.."${LZIP}".-0.-o../-.in
58c00 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d .||.test_failed.$LINENO."${LZIP}
58c20 22 20 2d 63 64 20 2e 2f 2d 20 7c 20 63 6d 70 20 69 6e 20 2d 20 7c 7c 20 74 65 73 74 5f 66 61 69 ".-cd../-.|.cmp.in.-.||.test_fai
58c40 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 2e 2f 2d 20 7c 7c 20 66 72 61 6d 65 77 6f led.$LINENO.rm.-f../-.||.framewo
58c60 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 30 20 2d 6f 20 2e 2f 2d 20 3c rk_failure."${LZIP}".-0.-o../-.<
58c80 20 69 6e 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 09 09 09 23 20 61 .in.||.test_failed.$LINENO...#.a
58ca0 64 64 20 2e 6c 7a 0a 5b 20 21 20 2d 65 20 2e 2f 2d 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c dd..lz.[.!.-e../-.].||.test_fail
58cc0 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 2d 2d 20 2d 2e 6c 7a ed.$LINENO."${LZIP}".-cd.--.-.lz
58ce0 20 7c 20 63 6d 70 20 69 6e 20 2d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 .|.cmp.in.-.||.test_failed.$LINE
58d00 4e 4f 0a 72 6d 20 2d 66 20 2e 2f 2d 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 NO.rm.-f../-.lz.||.framework_fai
58d20 6c 75 72 65 0a 0a 66 6f 72 20 69 20 69 6e 20 73 34 4b 69 20 30 20 31 20 32 20 33 20 34 20 35 20 lure..for.i.in.s4Ki.0.1.2.3.4.5.
58d40 36 20 37 20 38 20 39 20 3b 20 64 6f 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 6b 20 2d 24 69 20 69 6.7.8.9.;.do.."${LZIP}".-k.-$i.i
58d60 6e 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 6d 76 20 n.||.test_failed.$LINENO.$i..mv.
58d80 69 6e 2e 6c 7a 20 6f 75 74 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e in.lz.out.lz.||.test_failed.$LIN
58da0 45 4e 4f 20 24 69 0a 09 70 72 69 6e 74 66 20 22 67 61 72 62 61 67 65 22 20 3e 3e 20 6f 75 74 2e ENO.$i..printf."garbage".>>.out.
58dc0 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 09 22 24 7b 4c 5a 49 50 lz.||.framework_failure.."${LZIP
58de0 7d 22 20 2d 64 66 20 6f 75 74 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 }".-df.out.lz.||.test_failed.$LI
58e00 4e 45 4e 4f 20 24 69 0a 09 63 6d 70 20 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c NENO.$i..cmp.in.out.||.test_fail
58e20 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 24 69 20 69 6e ed.$LINENO.$i..."${LZIP}".-$i.in
58e40 20 2d 63 20 3e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f .-c.>.out.||.test_failed.$LINENO
58e60 20 24 69 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 24 69 20 69 6e 20 2d 6f 20 6f 5f 6f 75 74 20 7c .$i.."${LZIP}".-$i.in.-o.o_out.|
58e80 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 09 23 20 64 6f 6e 27 74 |.test_failed.$LINENO.$i.#.don't
58ea0 20 61 64 64 20 2e 6c 7a 0a 09 5b 20 21 20 2d 65 20 6f 5f 6f 75 74 2e 6c 7a 20 5d 20 7c 7c 20 74 .add..lz..[.!.-e.o_out.lz.].||.t
58ec0 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 09 63 6d 70 20 6f 75 74 20 6f 5f 6f 75 est_failed.$LINENO..cmp.out.o_ou
58ee0 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 72 6d 20 t.||.test_failed.$LINENO.$i..rm.
58f00 2d 66 20 6f 5f 6f 75 74 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 09 70 -f.o_out.||.framework_failure..p
58f20 72 69 6e 74 66 20 22 67 22 20 3e 3e 20 6f 75 74 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 rintf."g".>>.out.||.framework_fa
58f40 69 6c 75 72 65 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 6f 75 74 20 3e 20 63 6f 70 79 20 ilure.."${LZIP}".-cd.out.>.copy.
58f60 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 63 6d 70 20 69 ||.test_failed.$LINENO.$i..cmp.i
58f80 6e 20 63 6f 70 79 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 n.copy.||.test_failed.$LINENO.$i
58fa0 0a 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 24 69 20 3c 20 69 6e 20 3e 20 6f 75 74 20 7c 7c 20 74 ..."${LZIP}".-$i.<.in.>.out.||.t
58fc0 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 22 24 7b 4c 5a 49 50 7d 22 est_failed.$LINENO.$i.."${LZIP}"
58fe0 20 2d 64 20 3c 20 6f 75 74 20 3e 20 63 6f 70 79 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 .-d.<.out.>.copy.||.test_failed.
59000 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 63 6d 70 20 69 6e 20 63 6f 70 79 20 7c 7c 20 74 65 73 74 5f $LINENO.$i..cmp.in.copy.||.test_
59020 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 0a 09 72 6d 20 2d 66 20 6f 75 74 20 7c 7c failed.$LINENO.$i...rm.-f.out.||
59040 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 09 70 72 69 6e 74 66 20 22 74 6f 20 62 .framework_failure..printf."to.b
59060 65 20 6f 76 65 72 77 72 69 74 74 65 6e 22 20 3e 20 6f 75 74 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 e.overwritten".>.out.lz.||.frame
59080 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 66 20 2d 24 69 20 2d work_failure.."${LZIP}".-f.-$i.-
590a0 6f 20 6f 75 74 20 3c 20 69 6e 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e o.out.<.in.||.test_failed.$LINEN
590c0 4f 20 24 69 09 23 20 61 64 64 20 2e 6c 7a 0a 09 5b 20 21 20 2d 65 20 6f 75 74 20 5d 20 7c 7c 20 O.$i.#.add..lz..[.!.-e.out.].||.
590e0 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d test_failed.$LINENO.."${LZIP}".-
59100 64 66 20 2d 6f 20 63 6f 70 79 20 3c 20 6f 75 74 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c df.-o.copy.<.out.lz.||.test_fail
59120 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 63 6d 70 20 69 6e 20 63 6f 70 79 20 7c 7c 20 74 65 ed.$LINENO.$i..cmp.in.copy.||.te
59140 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 64 6f 6e 65 0a 72 6d 20 2d 66 20 st_failed.$LINENO.$i.done.rm.-f.
59160 63 6f 70 79 20 6f 75 74 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 copy.out.lz.||.framework_failure
59180 0a 0a 63 61 74 20 69 6e 20 69 6e 20 69 6e 20 69 6e 20 69 6e 20 69 6e 20 69 6e 20 69 6e 20 3e 20 ..cat.in.in.in.in.in.in.in.in.>.
591a0 69 6e 38 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 in8.||.framework_failure."${LZIP
591c0 7d 22 20 2d 31 73 31 32 20 2d 53 31 30 30 6b 20 69 6e 38 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c }".-1s12.-S100k.in8.||.test_fail
591e0 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 69 6e 38 30 30 30 30 31 ed.$LINENO."${LZIP}".-t.in800001
59200 2e 6c 7a 20 69 6e 38 30 30 30 30 32 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 .lz.in800002.lz.||.test_failed.$
59220 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 69 6e 38 30 30 30 30 31 2e 6c 7a LINENO."${LZIP}".-cd.in800001.lz
59240 20 69 6e 38 30 30 30 30 32 2e 6c 7a 20 7c 20 63 6d 70 20 69 6e 38 20 2d 20 7c 7c 20 74 65 73 74 .in800002.lz.|.cmp.in8.-.||.test
59260 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 69 6e 38 30 30 30 30 33 2e _failed.$LINENO.[.!.-e.in800003.
59280 6c 7a 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d lz.].||.test_failed.$LINENO.rm.-
592a0 66 20 69 6e 38 30 30 30 30 31 2e 6c 7a 20 69 6e 38 30 30 30 30 32 2e 6c 7a 20 7c 7c 20 66 72 61 f.in800001.lz.in800002.lz.||.fra
592c0 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 31 73 31 32 20 2d mework_failure."${LZIP}".-1s12.-
592e0 53 31 30 30 6b 20 2d 6f 20 6f 75 74 2e 6c 7a 20 69 6e 38 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c S100k.-o.out.lz.in8.||.test_fail
59300 65 64 20 24 4c 49 4e 45 4e 4f 0a 23 20 69 67 6e 6f 72 65 20 2d 53 0a 22 24 7b 4c 5a 49 50 7d 22 ed.$LINENO.#.ignore.-S."${LZIP}"
59320 20 2d 64 20 6f 75 74 2e 6c 7a 30 30 30 30 31 2e 6c 7a 20 6f 75 74 2e 6c 7a 30 30 30 30 32 2e 6c .-d.out.lz00001.lz.out.lz00002.l
59340 7a 20 2d 53 31 30 30 6b 20 2d 6f 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 z.-S100k.-o.out.||.test_failed.$
59360 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 38 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 LINENO.cmp.in8.out.||.test_faile
59380 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 6f 75 74 2e 6c 7a 30 30 30 d.$LINENO."${LZIP}".-t.out.lz000
593a0 30 31 2e 6c 7a 20 6f 75 74 2e 6c 7a 30 30 30 30 32 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 01.lz.out.lz00002.lz.||.test_fai
593c0 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 6f 75 74 2e 6c 7a 30 30 30 30 33 2e 6c led.$LINENO.[.!.-e.out.lz00003.l
593e0 7a 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 z.].||.test_failed.$LINENO.rm.-f
59400 20 6f 75 74 20 6f 75 74 2e 6c 7a 30 30 30 30 31 2e 6c 7a 20 6f 75 74 2e 6c 7a 30 30 30 30 32 2e .out.out.lz00001.lz.out.lz00002.
59420 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d lz.||.framework_failure."${LZIP}
59440 22 20 2d 31 6b 73 34 4b 69 20 2d 62 31 30 30 30 30 30 20 69 6e 38 20 7c 7c 20 74 65 73 74 5f 66 ".-1ks4Ki.-b100000.in8.||.test_f
59460 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 69 6e 38 2e 6c ailed.$LINENO."${LZIP}".-t.in8.l
59480 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 z.||.test_failed.$LINENO."${LZIP
594a0 7d 22 20 2d 63 64 20 69 6e 38 2e 6c 7a 20 2d 6f 20 6f 75 74 20 7c 20 63 6d 70 20 69 6e 38 20 2d }".-cd.in8.lz.-o.out.|.cmp.in8.-
594c0 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 09 23 20 6f 76 65 72 72 69 .||.test_failed.$LINENO.#.overri
594e0 64 65 20 2d 6f 0a 5b 20 21 20 2d 65 20 6f 75 74 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 de.-o.[.!.-e.out.].||.test_faile
59500 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 69 6e 38 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b d.$LINENO.rm.-f.in8.||.framework
59520 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 30 20 2d 53 31 30 30 6b 20 2d 6f 20 _failure."${LZIP}".-0.-S100k.-o.
59540 6f 75 74 20 3c 20 69 6e 38 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e out.<.in8.lz.||.test_failed.$LIN
59560 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 6f 75 74 30 30 30 30 31 2e 6c 7a 20 6f 75 74 ENO."${LZIP}".-t.out00001.lz.out
59580 30 30 30 30 32 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 00002.lz.||.test_failed.$LINENO.
595a0 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 6f 75 74 30 30 30 30 31 2e 6c 7a 20 6f 75 74 30 30 30 "${LZIP}".-cd.out00001.lz.out000
595c0 30 32 2e 6c 7a 20 7c 20 63 6d 70 20 69 6e 38 2e 6c 7a 20 2d 20 7c 7c 20 74 65 73 74 5f 66 61 69 02.lz.|.cmp.in8.lz.-.||.test_fai
595e0 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 6f 75 74 30 30 30 30 33 2e 6c 7a 20 5d led.$LINENO.[.!.-e.out00003.lz.]
59600 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 6f 75 .||.test_failed.$LINENO.rm.-f.ou
59620 74 30 30 30 30 31 2e 6c 7a 20 6f 75 74 30 30 30 30 32 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f t00001.lz.out00002.lz.||.framewo
59640 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 31 20 2d 53 31 30 30 6b 20 2d rk_failure."${LZIP}".-1.-S100k.-
59660 6f 20 61 2f 62 2f 63 2f 6f 75 74 20 3c 20 69 6e 38 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 o.a/b/c/out.<.in8.lz.||.test_fai
59680 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 61 2f 62 2f 63 2f 6f led.$LINENO."${LZIP}".-t.a/b/c/o
596a0 75 74 30 30 30 30 31 2e 6c 7a 20 61 2f 62 2f 63 2f 6f 75 74 30 30 30 30 32 2e 6c 7a 20 7c 7c 20 ut00001.lz.a/b/c/out00002.lz.||.
596c0 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 test_failed.$LINENO."${LZIP}".-c
596e0 64 20 61 2f 62 2f 63 2f 6f 75 74 30 30 30 30 31 2e 6c 7a 20 61 2f 62 2f 63 2f 6f 75 74 30 30 30 d.a/b/c/out00001.lz.a/b/c/out000
59700 30 32 2e 6c 7a 20 7c 20 63 6d 70 20 69 6e 38 2e 6c 7a 20 2d 20 7c 7c 0a 09 74 65 73 74 5f 66 61 02.lz.|.cmp.in8.lz.-.||..test_fa
59720 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 61 2f 62 2f 63 2f 6f 75 74 30 30 30 iled.$LINENO.[.!.-e.a/b/c/out000
59740 30 33 2e 6c 7a 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 03.lz.].||.test_failed.$LINENO.r
59760 6d 20 2d 72 66 20 61 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b m.-rf.a.||.framework_failure."${
59780 4c 5a 49 50 7d 22 20 2d 30 20 2d 46 20 2d 53 31 30 30 6b 20 69 6e 38 2e 6c 7a 20 7c 7c 20 74 65 LZIP}".-0.-F.-S100k.in8.lz.||.te
597a0 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 69 st_failed.$LINENO."${LZIP}".-t.i
597c0 6e 38 2e 6c 7a 30 30 30 30 31 2e 6c 7a 20 69 6e 38 2e 6c 7a 30 30 30 30 32 2e 6c 7a 20 7c 7c 20 n8.lz00001.lz.in8.lz00002.lz.||.
597e0 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 test_failed.$LINENO."${LZIP}".-c
59800 64 20 69 6e 38 2e 6c 7a 30 30 30 30 31 2e 6c 7a 20 69 6e 38 2e 6c 7a 30 30 30 30 32 2e 6c 7a 20 d.in8.lz00001.lz.in8.lz00002.lz.
59820 7c 20 63 6d 70 20 69 6e 38 2e 6c 7a 20 2d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c |.cmp.in8.lz.-.||.test_failed.$L
59840 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 69 6e 38 2e 6c 7a 30 30 30 30 33 2e 6c 7a 20 5d 20 7c 7c INENO.[.!.-e.in8.lz00003.lz.].||
59860 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 69 6e 38 2e 6c .test_failed.$LINENO.rm.-f.in8.l
59880 7a 30 30 30 30 31 2e 6c 7a 20 69 6e 38 2e 6c 7a 30 30 30 30 32 2e 6c 7a 20 7c 7c 20 66 72 61 6d z00001.lz.in8.lz00002.lz.||.fram
598a0 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 30 6b 46 20 2d 62 31 ework_failure."${LZIP}".-0kF.-b1
598c0 30 30 6b 20 69 6e 38 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 00k.in8.lz.||.test_failed.$LINEN
598e0 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 69 6e 38 2e 6c 7a 2e 6c 7a 20 7c 7c 20 74 65 73 74 O."${LZIP}".-t.in8.lz.lz.||.test
59900 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 69 6e _failed.$LINENO."${LZIP}".-cd.in
59920 38 2e 6c 7a 2e 6c 7a 20 7c 20 63 6d 70 20 69 6e 38 2e 6c 7a 20 2d 20 7c 7c 20 74 65 73 74 5f 66 8.lz.lz.|.cmp.in8.lz.-.||.test_f
59940 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 69 6e 38 2e 6c 7a 20 69 6e 38 2e 6c ailed.$LINENO.rm.-f.in8.lz.in8.l
59960 7a 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 22 24 7b 4c 5a z.lz.||.framework_failure.."${LZ
59980 49 50 7d 22 20 66 6f 78 20 2d 6f 20 61 2f 62 2f 63 2f 66 6f 78 2e 6c 7a 20 7c 7c 20 74 65 73 74 IP}".fox.-o.a/b/c/fox.lz.||.test
599a0 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 22 24 7b 66 6f 78 5f 6c 7a 7d 22 20 _failed.$LINENO.cmp."${fox_lz}".
599c0 61 2f 62 2f 63 2f 66 6f 78 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e a/b/c/fox.lz.||.test_failed.$LIN
599e0 45 4e 4f 0a 72 6d 20 2d 72 66 20 61 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 ENO.rm.-rf.a.||.framework_failur
59a00 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6f 20 61 2f 62 2f 63 2f 66 6f 78 2e 6c 7a 20 3c 20 66 6f e."${LZIP}".-o.a/b/c/fox.lz.<.fo
59a20 78 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 22 24 7b x.||.test_failed.$LINENO.cmp."${
59a40 66 6f 78 5f 6c 7a 7d 22 20 61 2f 62 2f 63 2f 66 6f 78 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 fox_lz}".a/b/c/fox.lz.||.test_fa
59a60 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 72 66 20 61 20 7c 7c 20 66 72 61 6d 65 77 6f iled.$LINENO.rm.-rf.a.||.framewo
59a80 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 70 72 69 6e 74 66 20 22 5c 6e 74 65 73 74 69 6e 67 20 62 61 rk_failure..printf."\ntesting.ba
59aa0 64 20 69 6e 70 75 74 2e 2e 2e 22 0a 0a 63 61 74 20 65 6d 2e 6c 7a 20 65 6d 2e 6c 7a 20 3e 20 65 d.input..."..cat.em.lz.em.lz.>.e
59ac0 65 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 e.lz.||.framework_failure."${LZI
59ae0 50 7d 22 20 2d 6c 20 3c 20 65 65 2e 6c 7a 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 7c 7c 20 74 65 P}".-l.<.ee.lz.>./dev/null.||.te
59b00 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 3c st_failed.$LINENO."${LZIP}".-t.<
59b20 20 65 65 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 .ee.lz.||.test_failed.$LINENO."$
59b40 7b 4c 5a 49 50 7d 22 20 2d 64 20 3c 20 65 65 2e 6c 7a 20 3e 20 65 6d 20 7c 7c 20 74 65 73 74 5f {LZIP}".-d.<.ee.lz.>.em.||.test_
59b60 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 65 6d 70 74 79 20 65 6d 20 7c 7c 20 74 failed.$LINENO.cmp.empty.em.||.t
59b80 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 71 est_failed.$LINENO."${LZIP}".-lq
59ba0 20 65 65 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 .ee.lz.[.$?.=.2.].||.test_failed
59bc0 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 65 65 2e 6c 7a 0a 5b 20 24 .$LINENO."${LZIP}".-tq.ee.lz.[.$
59be0 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 ?.=.2.].||.test_failed.$LINENO."
59c00 24 7b 4c 5a 49 50 7d 22 20 2d 64 71 20 65 65 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c ${LZIP}".-dq.ee.lz.[.$?.=.2.].||
59c20 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 65 65 20 5d .test_failed.$LINENO.[.!.-e.ee.]
59c40 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d .||.test_failed.$LINENO."${LZIP}
59c60 22 20 2d 63 64 71 20 65 65 2e 6c 7a 20 3e 20 65 6d 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 ".-cdq.ee.lz.>.em.[.$?.=.2.].||.
59c80 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 65 6d 70 74 79 20 65 6d test_failed.$LINENO.cmp.empty.em
59ca0 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 65 6d .||.test_failed.$LINENO.rm.-f.em
59cc0 70 74 79 20 65 6d 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 63 61 74 20 pty.em.||.framework_failure.cat.
59ce0 22 24 7b 69 6e 5f 6c 7a 7d 22 20 65 6d 2e 6c 7a 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 69 6e "${in_lz}".em.lz."${in_lz}".>.in
59d00 65 69 6e 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c ein.lz.||.framework_failure."${L
59d20 5a 49 50 7d 22 20 2d 6c 20 3c 20 69 6e 65 69 6e 2e 6c 7a 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 ZIP}".-l.<.inein.lz.>./dev/null.
59d40 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 ||.test_failed.$LINENO."${LZIP}"
59d60 20 2d 74 20 3c 20 69 6e 65 69 6e 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c .-t.<.inein.lz.||.test_failed.$L
59d80 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 3c 20 69 6e 65 69 6e 2e 6c 7a 20 3e 20 INENO."${LZIP}".-d.<.inein.lz.>.
59da0 6f 75 74 32 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 out2.||.test_failed.$LINENO.cmp.
59dc0 69 6e 32 20 6f 75 74 32 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a in2.out2.||.test_failed.$LINENO.
59de0 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 71 20 69 6e 65 69 6e 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 "${LZIP}".-lq.inein.lz.[.$?.=.2.
59e00 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 ].||.test_failed.$LINENO."${LZIP
59e20 7d 22 20 2d 74 71 20 69 6e 65 69 6e 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 }".-tq.inein.lz.[.$?.=.2.].||.te
59e40 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 71 20 st_failed.$LINENO."${LZIP}".-dq.
59e60 69 6e 65 69 6e 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c inein.lz.[.$?.=.2.].||.test_fail
59e80 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 69 6e 65 69 6e 20 5d 20 7c 7c 20 74 65 73 ed.$LINENO.[.!.-e.inein.].||.tes
59ea0 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 t_failed.$LINENO."${LZIP}".-cdq.
59ec0 69 6e 65 69 6e 2e 6c 7a 20 3e 20 6f 75 74 32 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 inein.lz.>.out2.[.$?.=.2.].||.te
59ee0 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 32 20 6f 75 74 32 20 7c st_failed.$LINENO.cmp.in2.out2.|
59f00 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 69 6e 32 20 |.test_failed.$LINENO.rm.-f.in2.
59f20 6f 75 74 32 20 69 6e 65 69 6e 2e 6c 7a 20 65 6d 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b out2.inein.lz.em.lz.||.framework
59f40 5f 66 61 69 6c 75 72 65 0a 0a 68 65 61 64 65 72 73 3d 27 4c 5a 49 70 20 4c 5a 69 50 20 4c 5a 69 _failure..headers='LZIp.LZiP.LZi
59f60 70 20 4c 7a 49 50 20 4c 7a 49 70 20 4c 7a 69 50 20 6c 5a 49 50 20 6c 5a 49 70 20 6c 5a 69 50 20 p.LzIP.LzIp.LziP.lZIP.lZIp.lZiP.
59f80 6c 7a 49 50 27 0a 62 6f 64 79 3d 27 5c 30 30 31 5c 30 31 34 5c 30 30 30 5c 30 30 30 5c 31 30 31 lzIP'.body='\001\014\000\000\101
59fa0 5c 33 37 36 5c 33 36 37 5c 33 37 37 5c 33 37 37 5c 33 34 30 5c 30 30 30 5c 32 30 30 5c 30 30 30 \376\367\377\377\340\000\200\000
59fc0 5c 32 31 35 5c 33 35 37 5c 30 30 32 5c 33 32 32 5c 30 30 31 5c 30 30 30 5c 30 30 30 5c 30 30 30 \215\357\002\322\001\000\000\000
59fe0 5c 30 30 30 5c 30 30 30 5c 30 30 30 5c 30 30 30 5c 30 34 35 5c 30 30 30 5c 30 30 30 5c 30 30 30 \000\000\000\000\045\000\000\000
5a000 5c 30 30 30 5c 30 30 30 5c 30 30 30 5c 30 30 30 27 0a 63 70 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 \000\000\000\000'.cp."${in_lz}".
5a020 69 6e 74 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 70 72 69 6e int.lz.||.framework_failure.prin
5a040 74 66 20 22 4c 5a 49 50 24 7b 62 6f 64 79 7d 22 20 3e 3e 20 69 6e 74 2e 6c 7a 20 7c 7c 20 66 72 tf."LZIP${body}".>>.int.lz.||.fr
5a060 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 69 66 20 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 amework_failure.if."${LZIP}".-t.
5a080 69 6e 74 2e 6c 7a 20 3b 20 74 68 65 6e 0a 09 66 6f 72 20 68 65 61 64 65 72 20 69 6e 20 24 7b 68 int.lz.;.then..for.header.in.${h
5a0a0 65 61 64 65 72 73 7d 20 3b 20 64 6f 0a 09 09 70 72 69 6e 74 66 20 22 24 7b 68 65 61 64 65 72 7d eaders}.;.do...printf."${header}
5a0c0 24 7b 62 6f 64 79 7d 22 20 3e 20 69 6e 74 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 ${body}".>.int.lz.||.framework_f
5a0e0 61 69 6c 75 72 65 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 71 20 69 6e 74 2e 6c 7a 09 09 09 ailure..."${LZIP}".-lq.int.lz...
5a100 23 20 66 69 72 73 74 20 6d 65 6d 62 65 72 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 #.first.member...[.$?.=.2.].||.t
5a120 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 09 22 est_failed.$LINENO.${header}..."
5a140 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 69 6e 74 2e 6c 7a 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d ${LZIP}".-tq.int.lz...[.$?.=.2.]
5a160 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 .||.test_failed.$LINENO.${header
5a180 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 3c 20 69 6e 74 2e 6c 7a 0a 09 09 5b 20 24 }..."${LZIP}".-tq.<.int.lz...[.$
5a1a0 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 ?.=.2.].||.test_failed.$LINENO.$
5a1c0 7b 68 65 61 64 65 72 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 69 6e 74 2e 6c 7a {header}..."${LZIP}".-cdq.int.lz
5a1e0 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 .>./dev/null...[.$?.=.2.].||.tes
5a200 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 09 22 24 7b t_failed.$LINENO.${header}..."${
5a220 4c 5a 49 50 7d 22 20 2d 6c 71 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 20 69 6e 74 2e LZIP}".-lq.--loose-trailing.int.
5a240 6c 7a 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 lz...[.$?.=.2.].||.test_failed.$
5a260 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 LINENO.${header}..."${LZIP}".-tq
5a280 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 20 69 6e 74 2e 6c 7a 0a 09 09 5b 20 24 3f 20 .--loose-trailing.int.lz...[.$?.
5a2a0 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 =.2.].||.test_failed.$LINENO.${h
5a2c0 65 61 64 65 72 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 2d 2d 6c 6f 6f 73 65 2d 74 eader}..."${LZIP}".-tq.--loose-t
5a2e0 72 61 69 6c 69 6e 67 20 3c 20 69 6e 74 2e 6c 7a 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c railing.<.int.lz...[.$?.=.2.].||
5a300 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 .test_failed.$LINENO.${header}..
5a320 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 ."${LZIP}".-cdq.--loose-trailing
5a340 20 69 6e 74 2e 6c 7a 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d .int.lz.>./dev/null...[.$?.=.2.]
5a360 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 .||.test_failed.$LINENO.${header
5a380 7d 0a 09 09 63 70 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 69 6e 74 2e 6c 7a 20 7c 7c 20 66 72 61 6d }...cp."${in_lz}".int.lz.||.fram
5a3a0 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 09 09 70 72 69 6e 74 66 20 22 24 7b 68 65 61 64 65 72 ework_failure...printf."${header
5a3c0 7d 24 7b 62 6f 64 79 7d 22 20 3e 3e 20 69 6e 74 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b }${body}".>>.int.lz.||.framework
5a3e0 5f 66 61 69 6c 75 72 65 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 71 20 69 6e 74 2e 6c 7a 09 _failure..."${LZIP}".-lq.int.lz.
5a400 09 09 23 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c ..#.trailing.data...[.$?.=.2.].|
5a420 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a |.test_failed.$LINENO.${header}.
5a440 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 69 6e 74 2e 6c 7a 0a 09 09 5b 20 24 3f 20 3d 20 .."${LZIP}".-tq.int.lz...[.$?.=.
5a460 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 2.].||.test_failed.$LINENO.${hea
5a480 64 65 72 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 3c 20 69 6e 74 2e 6c 7a 0a 09 09 der}..."${LZIP}".-tq.<.int.lz...
5a4a0 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e [.$?.=.2.].||.test_failed.$LINEN
5a4c0 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 69 6e 74 O.${header}..."${LZIP}".-cdq.int
5a4e0 2e 6c 7a 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 .lz.>./dev/null...[.$?.=.2.].||.
5a500 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 09 test_failed.$LINENO.${header}...
5a520 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 20 69 6e "${LZIP}".-l.--loose-trailing.in
5a540 74 2e 6c 7a 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 7c 7c 0a 09 09 09 74 65 73 74 5f 66 61 69 6c t.lz.>./dev/null.||....test_fail
5a560 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 ed.$LINENO.${header}..."${LZIP}"
5a580 20 2d 74 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 20 69 6e 74 2e 6c 7a 20 7c 7c 0a 09 .-t.--loose-trailing.int.lz.||..
5a5a0 09 09 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a ..test_failed.$LINENO.${header}.
5a5c0 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 20 .."${LZIP}".-t.--loose-trailing.
5a5e0 3c 20 69 6e 74 2e 6c 7a 20 7c 7c 0a 09 09 09 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 <.int.lz.||....test_failed.$LINE
5a600 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 2d 2d 6c NO.${header}..."${LZIP}".-cd.--l
5a620 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 20 69 6e 74 2e 6c 7a 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c oose-trailing.int.lz.>./dev/null
5a640 20 7c 7c 0a 09 09 09 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 .||....test_failed.$LINENO.${hea
5a660 64 65 72 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 71 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 der}..."${LZIP}".-lq.--loose-tra
5a680 69 6c 69 6e 67 20 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 20 69 6e 74 2e 6c 7a 0a 09 09 iling.--trailing-error.int.lz...
5a6a0 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e [.$?.=.2.].||.test_failed.$LINEN
5a6c0 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 2d 2d 6c 6f O.${header}..."${LZIP}".-tq.--lo
5a6e0 6f 73 65 2d 74 72 61 69 6c 69 6e 67 20 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 20 69 6e ose-trailing.--trailing-error.in
5a700 74 2e 6c 7a 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 t.lz...[.$?.=.2.].||.test_failed
5a720 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d .$LINENO.${header}..."${LZIP}".-
5a740 74 71 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 20 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 tq.--loose-trailing.--trailing-e
5a760 72 72 6f 72 20 3c 20 69 6e 74 2e 6c 7a 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 rror.<.int.lz...[.$?.=.2.].||.te
5a780 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 09 22 24 st_failed.$LINENO.${header}..."$
5a7a0 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 20 2d 2d {LZIP}".-cdq.--loose-trailing.--
5a7c0 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 20 69 6e 74 2e 6c 7a 20 3e 20 2f 64 65 76 2f 6e 75 6c trailing-error.int.lz.>./dev/nul
5a7e0 6c 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c l...[.$?.=.2.].||.test_failed.$L
5a800 49 4e 45 4e 4f 20 24 7b 68 65 61 64 65 72 7d 0a 09 64 6f 6e 65 0a 65 6c 73 65 0a 09 70 72 69 6e INENO.${header}..done.else..prin
5a820 74 66 20 22 77 61 72 6e 69 6e 67 3a 20 73 6b 69 70 70 69 6e 67 20 68 65 61 64 65 72 20 74 65 73 tf."warning:.skipping.header.tes
5a840 74 3a 20 27 70 72 69 6e 74 66 27 20 64 6f 65 73 20 6e 6f 74 20 77 6f 72 6b 20 6f 6e 20 79 6f 75 t:.'printf'.does.not.work.on.you
5a860 72 20 73 79 73 74 65 6d 2e 22 0a 66 69 0a 72 6d 20 2d 66 20 69 6e 74 2e 6c 7a 20 7c 7c 20 66 72 r.system.".fi.rm.-f.int.lz.||.fr
5a880 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 20 22 24 amework_failure.."${LZIP}".-l."$
5a8a0 7b 66 6e 7a 5f 6c 7a 7d 22 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 7c 7c 20 74 65 73 74 5f 66 61 {fnz_lz}".>./dev/null.||.test_fa
5a8c0 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 22 24 7b 66 6e iled.$LINENO."${LZIP}".-tq."${fn
5a8e0 7a 5f 6c 7a 7d 22 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 z_lz}".[.$?.=.2.].||.test_failed
5a900 20 24 4c 49 4e 45 4e 4f 0a 0a 66 6f 72 20 69 20 69 6e 20 66 6f 78 5f 76 32 2e 6c 7a 20 66 6f 78 .$LINENO..for.i.in.fox_v2.lz.fox
5a920 5f 73 31 31 2e 6c 7a 20 66 6f 78 5f 64 65 32 30 2e 6c 7a 20 5c 0a 20 20 20 20 20 20 20 20 20 66 _s11.lz.fox_de20.lz.\..........f
5a940 6f 78 5f 62 63 72 63 2e 6c 7a 20 66 6f 78 5f 63 72 63 30 2e 6c 7a 20 66 6f 78 5f 64 61 73 34 36 ox_bcrc.lz.fox_crc0.lz.fox_das46
5a960 2e 6c 7a 20 66 6f 78 5f 6d 65 73 38 31 2e 6c 7a 20 3b 20 64 6f 0a 09 22 24 7b 4c 5a 49 50 7d 22 .lz.fox_mes81.lz.;.do.."${LZIP}"
5a980 20 2d 74 71 20 22 24 7b 74 65 73 74 64 69 72 7d 22 2f 24 69 0a 09 5b 20 24 3f 20 3d 20 32 20 5d .-tq."${testdir}"/$i..[.$?.=.2.]
5a9a0 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 64 6f 6e 65 0a .||.test_failed.$LINENO.$i.done.
5a9c0 0a 66 6f 72 20 69 20 69 6e 20 66 6f 78 5f 62 63 72 63 2e 6c 7a 20 66 6f 78 5f 63 72 63 30 2e 6c .for.i.in.fox_bcrc.lz.fox_crc0.l
5a9e0 7a 20 66 6f 78 5f 64 61 73 34 36 2e 6c 7a 20 66 6f 78 5f 6d 65 73 38 31 2e 6c 7a 20 3b 20 64 6f z.fox_das46.lz.fox_mes81.lz.;.do
5aa00 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 22 24 7b 74 65 73 74 64 69 72 7d 22 2f 24 69 .."${LZIP}".-cdq."${testdir}"/$i
5aa20 20 3e 20 6f 75 74 0a 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 .>.out..[.$?.=.2.].||.test_faile
5aa40 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 63 6d 70 20 66 6f 78 20 6f 75 74 20 7c 7c 20 74 65 73 d.$LINENO.$i..cmp.fox.out.||.tes
5aa60 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 64 6f 6e 65 0a 72 6d 20 2d 66 20 66 t_failed.$LINENO.$i.done.rm.-f.f
5aa80 6f 78 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 63 61 74 20 22 24 7b ox.||.framework_failure..cat."${
5aaa0 69 6e 5f 6c 7a 7d 22 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 69 6e 32 2e 6c 7a 20 7c 7c 20 66 in_lz}"."${in_lz}".>.in2.lz.||.f
5aac0 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 63 61 74 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 ramework_failure.cat."${in_lz}".
5aae0 22 24 7b 69 6e 5f 6c 7a 7d 22 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 69 6e 33 2e 6c 7a 20 7c "${in_lz}"."${in_lz}".>.in3.lz.|
5ab00 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 69 66 20 64 64 20 69 66 3d 69 6e 33 |.framework_failure.if.dd.if=in3
5ab20 2e 6c 7a 20 6f 66 3d 74 72 75 6e 63 2e 6c 7a 20 62 73 3d 31 34 36 38 32 20 63 6f 75 6e 74 3d 31 .lz.of=trunc.lz.bs=14682.count=1
5ab40 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 26 26 0a 20 20 20 5b 20 2d 65 20 74 72 75 6e 63 2e 6c .2>./dev/null.&&....[.-e.trunc.l
5ab60 7a 20 5d 20 26 26 20 63 6d 70 20 69 6e 32 2e 6c 7a 20 74 72 75 6e 63 2e 6c 7a 20 3b 20 74 68 65 z.].&&.cmp.in2.lz.trunc.lz.;.the
5ab80 6e 0a 09 66 6f 72 20 69 20 69 6e 20 36 20 32 30 20 31 34 36 36 34 20 31 34 36 38 33 20 31 34 36 n..for.i.in.6.20.14664.14683.146
5aba0 38 34 20 31 34 36 38 35 20 31 34 36 38 36 20 31 34 36 38 37 20 31 34 36 38 38 20 3b 20 64 6f 0a 84.14685.14686.14687.14688.;.do.
5abc0 09 09 64 64 20 69 66 3d 69 6e 33 2e 6c 7a 20 6f 66 3d 74 72 75 6e 63 2e 6c 7a 20 62 73 3d 24 69 ..dd.if=in3.lz.of=trunc.lz.bs=$i
5abe0 20 63 6f 75 6e 74 3d 31 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 09 09 22 24 7b 4c 5a 49 50 7d .count=1.2>./dev/null..."${LZIP}
5ac00 22 20 2d 6c 71 20 74 72 75 6e 63 2e 6c 7a 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 ".-lq.trunc.lz...[.$?.=.2.].||.t
5ac20 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 09 22 24 7b 4c 5a 49 50 7d est_failed.$LINENO.$i..."${LZIP}
5ac40 22 20 2d 74 71 20 74 72 75 6e 63 2e 6c 7a 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 ".-tq.trunc.lz...[.$?.=.2.].||.t
5ac60 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 09 22 24 7b 4c 5a 49 50 7d est_failed.$LINENO.$i..."${LZIP}
5ac80 22 20 2d 74 71 20 3c 20 74 72 75 6e 63 2e 6c 7a 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c ".-tq.<.trunc.lz...[.$?.=.2.].||
5aca0 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 09 22 24 7b 4c 5a 49 .test_failed.$LINENO.$i..."${LZI
5acc0 50 7d 22 20 2d 63 64 71 20 74 72 75 6e 63 2e 6c 7a 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 09 09 P}".-cdq.trunc.lz.>./dev/null...
5ace0 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e [.$?.=.2.].||.test_failed.$LINEN
5ad00 4f 20 24 69 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 71 20 3c 20 74 72 75 6e 63 2e 6c 7a 20 O.$i..."${LZIP}".-dq.<.trunc.lz.
5ad20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 09 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 >./dev/null...[.$?.=.2.].||.test
5ad40 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 64 6f 6e 65 0a 65 6c 73 65 0a 09 70 _failed.$LINENO.$i..done.else..p
5ad60 72 69 6e 74 66 20 22 77 61 72 6e 69 6e 67 3a 20 73 6b 69 70 70 69 6e 67 20 74 72 75 6e 63 61 74 rintf."warning:.skipping.truncat
5ad80 69 6f 6e 20 74 65 73 74 3a 20 27 64 64 27 20 64 6f 65 73 20 6e 6f 74 20 77 6f 72 6b 20 6f 6e 20 ion.test:.'dd'.does.not.work.on.
5ada0 79 6f 75 72 20 73 79 73 74 65 6d 2e 22 0a 66 69 0a 72 6d 20 2d 66 20 69 6e 32 2e 6c 7a 20 69 6e your.system.".fi.rm.-f.in2.lz.in
5adc0 33 2e 6c 7a 20 74 72 75 6e 63 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 3.lz.trunc.lz.||.framework_failu
5ade0 72 65 0a 0a 63 70 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 69 6e 67 69 6e 2e 6c 7a 20 7c 7c 20 66 72 re..cp."${in_lz}".ingin.lz.||.fr
5ae00 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 70 72 69 6e 74 66 20 22 67 22 20 3e 3e 20 69 6e amework_failure.printf."g".>>.in
5ae20 67 69 6e 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 63 61 74 20 gin.lz.||.framework_failure.cat.
5ae40 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 3e 20 69 6e 67 69 6e 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 "${in_lz}".>>.ingin.lz.||.framew
5ae60 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 71 20 69 6e 67 69 6e 2e ork_failure."${LZIP}".-lq.ingin.
5ae80 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 lz.[.$?.=.2.].||.test_failed.$LI
5aea0 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 61 74 71 20 69 6e 67 69 6e 2e 6c 7a 0a 5b 20 24 NENO."${LZIP}".-atq.ingin.lz.[.$
5aec0 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 ?.=.2.].||.test_failed.$LINENO."
5aee0 24 7b 4c 5a 49 50 7d 22 20 2d 61 74 71 20 3c 20 69 6e 67 69 6e 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 ${LZIP}".-atq.<.ingin.lz.[.$?.=.
5af00 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 2.].||.test_failed.$LINENO."${LZ
5af20 49 50 7d 22 20 2d 61 63 64 71 20 69 6e 67 69 6e 2e 6c 7a 20 3e 20 6f 75 74 0a 5b 20 24 3f 20 3d IP}".-acdq.ingin.lz.>.out.[.$?.=
5af40 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 .2.].||.test_failed.$LINENO.cmp.
5af60 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 in.out.||.test_failed.$LINENO."$
5af80 7b 4c 5a 49 50 7d 22 20 2d 61 64 71 20 3c 20 69 6e 67 69 6e 2e 6c 7a 20 3e 20 6f 75 74 0a 5b 20 {LZIP}".-adq.<.ingin.lz.>.out.[.
5afa0 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a $?.=.2.].||.test_failed.$LINENO.
5afc0 63 6d 70 20 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e cmp.in.out.||.test_failed.$LINEN
5afe0 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 69 6e 67 69 6e 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f O."${LZIP}".-t.ingin.lz.||.test_
5b000 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 3c 20 69 6e failed.$LINENO."${LZIP}".-t.<.in
5b020 67 69 6e 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 gin.lz.||.test_failed.$LINENO."$
5b040 7b 4c 5a 49 50 7d 22 20 2d 64 6b 20 69 6e 67 69 6e 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 {LZIP}".-dk.ingin.lz.||.test_fai
5b060 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 69 6e 67 69 6e 20 7c 7c 20 74 65 73 74 led.$LINENO.cmp.in.ingin.||.test
5b080 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 69 6e _failed.$LINENO."${LZIP}".-cd.in
5b0a0 67 69 6e 2e 6c 7a 20 3e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e gin.lz.>.out.||.test_failed.$LIN
5b0c0 45 4e 4f 0a 63 6d 70 20 69 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c ENO.cmp.in.out.||.test_failed.$L
5b0e0 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 3c 20 69 6e 67 69 6e 2e 6c 7a 20 3e 20 INENO."${LZIP}".-d.<.ingin.lz.>.
5b100 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 out.||.test_failed.$LINENO.cmp.i
5b120 6e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 n.out.||.test_failed.$LINENO.rm.
5b140 2d 66 20 6f 75 74 20 69 6e 67 69 6e 20 69 6e 67 69 6e 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f -f.out.ingin.ingin.lz.||.framewo
5b160 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 65 63 68 6f 0a 69 66 20 5b 20 24 7b 66 61 69 6c 7d 20 3d 20 rk_failure..echo.if.[.${fail}.=.
5b180 30 20 5d 20 3b 20 74 68 65 6e 0a 09 65 63 68 6f 20 22 74 65 73 74 73 20 63 6f 6d 70 6c 65 74 65 0.].;.then..echo."tests.complete
5b1a0 64 20 73 75 63 63 65 73 73 66 75 6c 6c 79 2e 22 0a 09 63 64 20 22 24 7b 6f 62 6a 64 69 72 7d 22 d.successfully."..cd."${objdir}"
5b1c0 20 26 26 20 72 6d 20 2d 72 20 74 6d 70 0a 65 6c 73 65 0a 09 65 63 68 6f 20 22 74 65 73 74 73 20 .&&.rm.-r.tmp.else..echo."tests.
5b1e0 66 61 69 6c 65 64 2e 22 0a 66 69 0a 65 78 69 74 20 24 7b 66 61 69 6c 7d 0a 00 00 00 00 00 00 00 failed.".fi.exit.${fail}........
5b200 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 2e 6c 7a 00 00 00 00 00 00 lzip-1.25/testsuite/fox.lz......
5b220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
5b280 30 30 30 30 31 32 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 35 36 31 36 00 20 30 00 00 00 0000120.14744236057.015616..0...
5b2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b2c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b300 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
5b320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
5b340 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
5b360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b400 4c 5a 49 50 01 0c 00 2a 1a 08 a2 03 25 66 f1 4b 78 c5 a2 05 ff 2e e6 d9 d2 20 1a ad 34 f8 e2 1d LZIP...*....%f.Kx...........4...
5b420 e8 41 36 fa dc 06 69 bb 3c e4 10 34 27 09 eb b3 66 e3 ec 97 ea ae 23 ff fe 8e a0 00 6a cc 50 eb .A6...i.<..4'...f.....#.....j.P.
5b440 2d 00 00 00 00 00 00 00 50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -.......P.......................
5b460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b600 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 74 65 73 74 2e 74 78 74 00 00 00 00 lzip-1.25/testsuite/test.txt....
5b620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
5b680 30 31 30 36 37 31 35 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 36 32 31 34 00 20 30 00 00 00 0106715.14744236057.016214..0...
5b6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b700 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
5b720 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
5b740 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
5b760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5b800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 4e 55 20 47 45 4e 45 52 41 4c 20 ....................GNU.GENERAL.
5b820 50 55 42 4c 49 43 20 4c 49 43 45 4e 53 45 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 PUBLIC.LICENSE..................
5b840 20 20 20 20 20 20 56 65 72 73 69 6f 6e 20 32 2c 20 4a 75 6e 65 20 31 39 39 31 0a 0a 20 43 6f 70 ......Version.2,.June.1991...Cop
5b860 79 72 69 67 68 74 20 28 43 29 20 31 39 38 39 2c 20 31 39 39 31 20 46 72 65 65 20 53 6f 66 74 77 yright.(C).1989,.1991.Free.Softw
5b880 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e 20 3c 68 74 74 70 3a 2f 2f 66 73 66 are.Foundation,.Inc..<http://fsf
5b8a0 2e 6f 72 67 2f 3e 0a 20 45 76 65 72 79 6f 6e 65 20 69 73 20 70 65 72 6d 69 74 74 65 64 20 74 6f .org/>..Everyone.is.permitted.to
5b8c0 20 63 6f 70 79 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 76 65 72 62 61 74 69 6d 20 63 6f .copy.and.distribute.verbatim.co
5b8e0 70 69 65 73 0a 20 6f 66 20 74 68 69 73 20 6c 69 63 65 6e 73 65 20 64 6f 63 75 6d 65 6e 74 2c 20 pies..of.this.license.document,.
5b900 62 75 74 20 63 68 61 6e 67 69 6e 67 20 69 74 20 69 73 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2e 0a but.changing.it.is.not.allowed..
5b920 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 72 65 .............................Pre
5b940 61 6d 62 6c 65 0a 0a 20 20 54 68 65 20 6c 69 63 65 6e 73 65 73 20 66 6f 72 20 6d 6f 73 74 20 73 amble....The.licenses.for.most.s
5b960 6f 66 74 77 61 72 65 20 61 72 65 20 64 65 73 69 67 6e 65 64 20 74 6f 20 74 61 6b 65 20 61 77 61 oftware.are.designed.to.take.awa
5b980 79 20 79 6f 75 72 0a 66 72 65 65 64 6f 6d 20 74 6f 20 73 68 61 72 65 20 61 6e 64 20 63 68 61 6e y.your.freedom.to.share.and.chan
5b9a0 67 65 20 69 74 2e 20 20 42 79 20 63 6f 6e 74 72 61 73 74 2c 20 74 68 65 20 47 4e 55 20 47 65 6e ge.it...By.contrast,.the.GNU.Gen
5b9c0 65 72 61 6c 20 50 75 62 6c 69 63 0a 4c 69 63 65 6e 73 65 20 69 73 20 69 6e 74 65 6e 64 65 64 20 eral.Public.License.is.intended.
5b9e0 74 6f 20 67 75 61 72 61 6e 74 65 65 20 79 6f 75 72 20 66 72 65 65 64 6f 6d 20 74 6f 20 73 68 61 to.guarantee.your.freedom.to.sha
5ba00 72 65 20 61 6e 64 20 63 68 61 6e 67 65 20 66 72 65 65 0a 73 6f 66 74 77 61 72 65 2d 2d 74 6f 20 re.and.change.free.software--to.
5ba20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 73 6f 66 74 77 61 72 65 20 69 73 20 66 72 65 65 20 66 make.sure.the.software.is.free.f
5ba40 6f 72 20 61 6c 6c 20 69 74 73 20 75 73 65 72 73 2e 20 20 54 68 69 73 0a 47 65 6e 65 72 61 6c 20 or.all.its.users...This.General.
5ba60 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 70 70 6c 69 65 73 20 74 6f 20 6d 6f 73 74 20 6f Public.License.applies.to.most.o
5ba80 66 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 0a 46 6f 75 6e 64 61 74 69 6f 6e 27 73 f.the.Free.Software.Foundation's
5baa0 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 74 6f 20 61 6e 79 20 6f 74 68 65 72 20 70 72 6f 67 72 .software.and.to.any.other.progr
5bac0 61 6d 20 77 68 6f 73 65 20 61 75 74 68 6f 72 73 20 63 6f 6d 6d 69 74 20 74 6f 0a 75 73 69 6e 67 am.whose.authors.commit.to.using
5bae0 20 69 74 2e 20 20 28 53 6f 6d 65 20 6f 74 68 65 72 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 .it...(Some.other.Free.Software.
5bb00 46 6f 75 6e 64 61 74 69 6f 6e 20 73 6f 66 74 77 61 72 65 20 69 73 20 63 6f 76 65 72 65 64 20 62 Foundation.software.is.covered.b
5bb20 79 0a 74 68 65 20 47 4e 55 20 4c 65 73 73 65 72 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 y.the.GNU.Lesser.General.Public.
5bb40 4c 69 63 65 6e 73 65 20 69 6e 73 74 65 61 64 2e 29 20 20 59 6f 75 20 63 61 6e 20 61 70 70 6c 79 License.instead.)..You.can.apply
5bb60 20 69 74 20 74 6f 0a 79 6f 75 72 20 70 72 6f 67 72 61 6d 73 2c 20 74 6f 6f 2e 0a 0a 20 20 57 68 .it.to.your.programs,.too.....Wh
5bb80 65 6e 20 77 65 20 73 70 65 61 6b 20 6f 66 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 2c 20 77 65 en.we.speak.of.free.software,.we
5bba0 20 61 72 65 20 72 65 66 65 72 72 69 6e 67 20 74 6f 20 66 72 65 65 64 6f 6d 2c 20 6e 6f 74 0a 70 .are.referring.to.freedom,.not.p
5bbc0 72 69 63 65 2e 20 20 4f 75 72 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 rice...Our.General.Public.Licens
5bbe0 65 73 20 61 72 65 20 64 65 73 69 67 6e 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 es.are.designed.to.make.sure.tha
5bc00 74 20 79 6f 75 0a 68 61 76 65 20 74 68 65 20 66 72 65 65 64 6f 6d 20 74 6f 20 64 69 73 74 72 69 t.you.have.the.freedom.to.distri
5bc20 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 28 61 6e bute.copies.of.free.software.(an
5bc40 64 20 63 68 61 72 67 65 20 66 6f 72 0a 74 68 69 73 20 73 65 72 76 69 63 65 20 69 66 20 79 6f 75 d.charge.for.this.service.if.you
5bc60 20 77 69 73 68 29 2c 20 74 68 61 74 20 79 6f 75 20 72 65 63 65 69 76 65 20 73 6f 75 72 63 65 20 .wish),.that.you.receive.source.
5bc80 63 6f 64 65 20 6f 72 20 63 61 6e 20 67 65 74 20 69 74 0a 69 66 20 79 6f 75 20 77 61 6e 74 20 69 code.or.can.get.it.if.you.want.i
5bca0 74 2c 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 63 68 61 6e 67 65 20 74 68 65 20 73 6f 66 74 77 t,.that.you.can.change.the.softw
5bcc0 61 72 65 20 6f 72 20 75 73 65 20 70 69 65 63 65 73 20 6f 66 20 69 74 0a 69 6e 20 6e 65 77 20 66 are.or.use.pieces.of.it.in.new.f
5bce0 72 65 65 20 70 72 6f 67 72 61 6d 73 3b 20 61 6e 64 20 74 68 61 74 20 79 6f 75 20 6b 6e 6f 77 20 ree.programs;.and.that.you.know.
5bd00 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 65 73 65 20 74 68 69 6e 67 73 2e 0a 0a 20 20 54 6f 20 70 you.can.do.these.things.....To.p
5bd20 72 6f 74 65 63 74 20 79 6f 75 72 20 72 69 67 68 74 73 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 6d rotect.your.rights,.we.need.to.m
5bd40 61 6b 65 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 74 68 61 74 20 66 6f 72 62 69 64 0a 61 6e 79 ake.restrictions.that.forbid.any
5bd60 6f 6e 65 20 74 6f 20 64 65 6e 79 20 79 6f 75 20 74 68 65 73 65 20 72 69 67 68 74 73 20 6f 72 20 one.to.deny.you.these.rights.or.
5bd80 74 6f 20 61 73 6b 20 79 6f 75 20 74 6f 20 73 75 72 72 65 6e 64 65 72 20 74 68 65 20 72 69 67 68 to.ask.you.to.surrender.the.righ
5bda0 74 73 2e 0a 54 68 65 73 65 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 74 72 61 6e 73 6c 61 74 65 ts..These.restrictions.translate
5bdc0 20 74 6f 20 63 65 72 74 61 69 6e 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 20 66 6f 72 .to.certain.responsibilities.for
5bde0 20 79 6f 75 20 69 66 20 79 6f 75 0a 64 69 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 .you.if.you.distribute.copies.of
5be00 20 74 68 65 20 73 6f 66 74 77 61 72 65 2c 20 6f 72 20 69 66 20 79 6f 75 20 6d 6f 64 69 66 79 20 .the.software,.or.if.you.modify.
5be20 69 74 2e 0a 0a 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 79 6f 75 20 64 69 73 74 72 it.....For.example,.if.you.distr
5be40 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 73 75 63 68 20 61 20 70 72 6f 67 72 61 6d 2c 20 ibute.copies.of.such.a.program,.
5be60 77 68 65 74 68 65 72 0a 67 72 61 74 69 73 20 6f 72 20 66 6f 72 20 61 20 66 65 65 2c 20 79 6f 75 whether.gratis.or.for.a.fee,.you
5be80 20 6d 75 73 74 20 67 69 76 65 20 74 68 65 20 72 65 63 69 70 69 65 6e 74 73 20 61 6c 6c 20 74 68 .must.give.the.recipients.all.th
5bea0 65 20 72 69 67 68 74 73 20 74 68 61 74 0a 79 6f 75 20 68 61 76 65 2e 20 20 59 6f 75 20 6d 75 73 e.rights.that.you.have...You.mus
5bec0 74 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 74 68 65 79 2c 20 74 6f 6f 2c 20 72 65 63 65 t.make.sure.that.they,.too,.rece
5bee0 69 76 65 20 6f 72 20 63 61 6e 20 67 65 74 20 74 68 65 0a 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 ive.or.can.get.the.source.code..
5bf00 20 41 6e 64 20 79 6f 75 20 6d 75 73 74 20 73 68 6f 77 20 74 68 65 6d 20 74 68 65 73 65 20 74 65 .And.you.must.show.them.these.te
5bf20 72 6d 73 20 73 6f 20 74 68 65 79 20 6b 6e 6f 77 20 74 68 65 69 72 0a 72 69 67 68 74 73 2e 0a 0a rms.so.they.know.their.rights...
5bf40 20 20 57 65 20 70 72 6f 74 65 63 74 20 79 6f 75 72 20 72 69 67 68 74 73 20 77 69 74 68 20 74 77 ..We.protect.your.rights.with.tw
5bf60 6f 20 73 74 65 70 73 3a 20 28 31 29 20 63 6f 70 79 72 69 67 68 74 20 74 68 65 20 73 6f 66 74 77 o.steps:.(1).copyright.the.softw
5bf80 61 72 65 2c 20 61 6e 64 0a 28 32 29 20 6f 66 66 65 72 20 79 6f 75 20 74 68 69 73 20 6c 69 63 65 are,.and.(2).offer.you.this.lice
5bfa0 6e 73 65 20 77 68 69 63 68 20 67 69 76 65 73 20 79 6f 75 20 6c 65 67 61 6c 20 70 65 72 6d 69 73 nse.which.gives.you.legal.permis
5bfc0 73 69 6f 6e 20 74 6f 20 63 6f 70 79 2c 0a 64 69 73 74 72 69 62 75 74 65 20 61 6e 64 2f 6f 72 20 sion.to.copy,.distribute.and/or.
5bfe0 6d 6f 64 69 66 79 20 74 68 65 20 73 6f 66 74 77 61 72 65 2e 0a 0a 20 20 41 6c 73 6f 2c 20 66 6f modify.the.software.....Also,.fo
5c000 72 20 65 61 63 68 20 61 75 74 68 6f 72 27 73 20 70 72 6f 74 65 63 74 69 6f 6e 20 61 6e 64 20 6f r.each.author's.protection.and.o
5c020 75 72 73 2c 20 77 65 20 77 61 6e 74 20 74 6f 20 6d 61 6b 65 20 63 65 72 74 61 69 6e 0a 74 68 61 urs,.we.want.to.make.certain.tha
5c040 74 20 65 76 65 72 79 6f 6e 65 20 75 6e 64 65 72 73 74 61 6e 64 73 20 74 68 61 74 20 74 68 65 72 t.everyone.understands.that.ther
5c060 65 20 69 73 20 6e 6f 20 77 61 72 72 61 6e 74 79 20 66 6f 72 20 74 68 69 73 20 66 72 65 65 0a 73 e.is.no.warranty.for.this.free.s
5c080 6f 66 74 77 61 72 65 2e 20 20 49 66 20 74 68 65 20 73 6f 66 74 77 61 72 65 20 69 73 20 6d 6f 64 oftware...If.the.software.is.mod
5c0a0 69 66 69 65 64 20 62 79 20 73 6f 6d 65 6f 6e 65 20 65 6c 73 65 20 61 6e 64 20 70 61 73 73 65 64 ified.by.someone.else.and.passed
5c0c0 20 6f 6e 2c 20 77 65 0a 77 61 6e 74 20 69 74 73 20 72 65 63 69 70 69 65 6e 74 73 20 74 6f 20 6b .on,.we.want.its.recipients.to.k
5c0e0 6e 6f 77 20 74 68 61 74 20 77 68 61 74 20 74 68 65 79 20 68 61 76 65 20 69 73 20 6e 6f 74 20 74 now.that.what.they.have.is.not.t
5c100 68 65 20 6f 72 69 67 69 6e 61 6c 2c 20 73 6f 0a 74 68 61 74 20 61 6e 79 20 70 72 6f 62 6c 65 6d he.original,.so.that.any.problem
5c120 73 20 69 6e 74 72 6f 64 75 63 65 64 20 62 79 20 6f 74 68 65 72 73 20 77 69 6c 6c 20 6e 6f 74 20 s.introduced.by.others.will.not.
5c140 72 65 66 6c 65 63 74 20 6f 6e 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 0a 61 75 74 68 6f 72 73 27 reflect.on.the.original.authors'
5c160 20 72 65 70 75 74 61 74 69 6f 6e 73 2e 0a 0a 20 20 46 69 6e 61 6c 6c 79 2c 20 61 6e 79 20 66 72 .reputations.....Finally,.any.fr
5c180 65 65 20 70 72 6f 67 72 61 6d 20 69 73 20 74 68 72 65 61 74 65 6e 65 64 20 63 6f 6e 73 74 61 6e ee.program.is.threatened.constan
5c1a0 74 6c 79 20 62 79 20 73 6f 66 74 77 61 72 65 0a 70 61 74 65 6e 74 73 2e 20 20 57 65 20 77 69 73 tly.by.software.patents...We.wis
5c1c0 68 20 74 6f 20 61 76 6f 69 64 20 74 68 65 20 64 61 6e 67 65 72 20 74 68 61 74 20 72 65 64 69 73 h.to.avoid.the.danger.that.redis
5c1e0 74 72 69 62 75 74 6f 72 73 20 6f 66 20 61 20 66 72 65 65 0a 70 72 6f 67 72 61 6d 20 77 69 6c 6c tributors.of.a.free.program.will
5c200 20 69 6e 64 69 76 69 64 75 61 6c 6c 79 20 6f 62 74 61 69 6e 20 70 61 74 65 6e 74 20 6c 69 63 65 .individually.obtain.patent.lice
5c220 6e 73 65 73 2c 20 69 6e 20 65 66 66 65 63 74 20 6d 61 6b 69 6e 67 20 74 68 65 0a 70 72 6f 67 72 nses,.in.effect.making.the.progr
5c240 61 6d 20 70 72 6f 70 72 69 65 74 61 72 79 2e 20 20 54 6f 20 70 72 65 76 65 6e 74 20 74 68 69 73 am.proprietary...To.prevent.this
5c260 2c 20 77 65 20 68 61 76 65 20 6d 61 64 65 20 69 74 20 63 6c 65 61 72 20 74 68 61 74 20 61 6e 79 ,.we.have.made.it.clear.that.any
5c280 0a 70 61 74 65 6e 74 20 6d 75 73 74 20 62 65 20 6c 69 63 65 6e 73 65 64 20 66 6f 72 20 65 76 65 .patent.must.be.licensed.for.eve
5c2a0 72 79 6f 6e 65 27 73 20 66 72 65 65 20 75 73 65 20 6f 72 20 6e 6f 74 20 6c 69 63 65 6e 73 65 64 ryone's.free.use.or.not.licensed
5c2c0 20 61 74 20 61 6c 6c 2e 0a 0a 20 20 54 68 65 20 70 72 65 63 69 73 65 20 74 65 72 6d 73 20 61 6e .at.all.....The.precise.terms.an
5c2e0 64 20 63 6f 6e 64 69 74 69 6f 6e 73 20 66 6f 72 20 63 6f 70 79 69 6e 67 2c 20 64 69 73 74 72 69 d.conditions.for.copying,.distri
5c300 62 75 74 69 6f 6e 20 61 6e 64 0a 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 66 6f 6c 6c 6f 77 2e 0a bution.and.modification.follow..
5c320 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 4e 55 20 47 45 4e 45 52 41 4c .....................GNU.GENERAL
5c340 20 50 55 42 4c 49 43 20 4c 49 43 45 4e 53 45 0a 20 20 20 54 45 52 4d 53 20 41 4e 44 20 43 4f 4e .PUBLIC.LICENSE....TERMS.AND.CON
5c360 44 49 54 49 4f 4e 53 20 46 4f 52 20 43 4f 50 59 49 4e 47 2c 20 44 49 53 54 52 49 42 55 54 49 4f DITIONS.FOR.COPYING,.DISTRIBUTIO
5c380 4e 20 41 4e 44 20 4d 4f 44 49 46 49 43 41 54 49 4f 4e 0a 0a 20 20 30 2e 20 54 68 69 73 20 4c 69 N.AND.MODIFICATION....0..This.Li
5c3a0 63 65 6e 73 65 20 61 70 70 6c 69 65 73 20 74 6f 20 61 6e 79 20 70 72 6f 67 72 61 6d 20 6f 72 20 cense.applies.to.any.program.or.
5c3c0 6f 74 68 65 72 20 77 6f 72 6b 20 77 68 69 63 68 20 63 6f 6e 74 61 69 6e 73 0a 61 20 6e 6f 74 69 other.work.which.contains.a.noti
5c3e0 63 65 20 70 6c 61 63 65 64 20 62 79 20 74 68 65 20 63 6f 70 79 72 69 67 68 74 20 68 6f 6c 64 65 ce.placed.by.the.copyright.holde
5c400 72 20 73 61 79 69 6e 67 20 69 74 20 6d 61 79 20 62 65 20 64 69 73 74 72 69 62 75 74 65 64 0a 75 r.saying.it.may.be.distributed.u
5c420 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 69 73 20 47 65 6e 65 72 61 6c 20 50 nder.the.terms.of.this.General.P
5c440 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 2e 20 20 54 68 65 20 22 50 72 6f 67 72 61 6d 22 2c 20 62 ublic.License...The."Program",.b
5c460 65 6c 6f 77 2c 0a 72 65 66 65 72 73 20 74 6f 20 61 6e 79 20 73 75 63 68 20 70 72 6f 67 72 61 6d elow,.refers.to.any.such.program
5c480 20 6f 72 20 77 6f 72 6b 2c 20 61 6e 64 20 61 20 22 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 .or.work,.and.a."work.based.on.t
5c4a0 68 65 20 50 72 6f 67 72 61 6d 22 0a 6d 65 61 6e 73 20 65 69 74 68 65 72 20 74 68 65 20 50 72 6f he.Program".means.either.the.Pro
5c4c0 67 72 61 6d 20 6f 72 20 61 6e 79 20 64 65 72 69 76 61 74 69 76 65 20 77 6f 72 6b 20 75 6e 64 65 gram.or.any.derivative.work.unde
5c4e0 72 20 63 6f 70 79 72 69 67 68 74 20 6c 61 77 3a 0a 74 68 61 74 20 69 73 20 74 6f 20 73 61 79 2c r.copyright.law:.that.is.to.say,
5c500 20 61 20 77 6f 72 6b 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f .a.work.containing.the.Program.o
5c520 72 20 61 20 70 6f 72 74 69 6f 6e 20 6f 66 20 69 74 2c 0a 65 69 74 68 65 72 20 76 65 72 62 61 74 r.a.portion.of.it,.either.verbat
5c540 69 6d 20 6f 72 20 77 69 74 68 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 61 6e 64 2f 6f 72 20 im.or.with.modifications.and/or.
5c560 74 72 61 6e 73 6c 61 74 65 64 20 69 6e 74 6f 20 61 6e 6f 74 68 65 72 0a 6c 61 6e 67 75 61 67 65 translated.into.another.language
5c580 2e 20 20 28 48 65 72 65 69 6e 61 66 74 65 72 2c 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 69 73 20 ...(Hereinafter,.translation.is.
5c5a0 69 6e 63 6c 75 64 65 64 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 69 6e 0a 74 included.without.limitation.in.t
5c5c0 68 65 20 74 65 72 6d 20 22 6d 6f 64 69 66 69 63 61 74 69 6f 6e 22 2e 29 20 20 45 61 63 68 20 6c he.term."modification".)..Each.l
5c5e0 69 63 65 6e 73 65 65 20 69 73 20 61 64 64 72 65 73 73 65 64 20 61 73 20 22 79 6f 75 22 2e 0a 0a icensee.is.addressed.as."you"...
5c600 41 63 74 69 76 69 74 69 65 73 20 6f 74 68 65 72 20 74 68 61 6e 20 63 6f 70 79 69 6e 67 2c 20 64 Activities.other.than.copying,.d
5c620 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 61 72 65 istribution.and.modification.are
5c640 20 6e 6f 74 0a 63 6f 76 65 72 65 64 20 62 79 20 74 68 69 73 20 4c 69 63 65 6e 73 65 3b 20 74 68 .not.covered.by.this.License;.th
5c660 65 79 20 61 72 65 20 6f 75 74 73 69 64 65 20 69 74 73 20 73 63 6f 70 65 2e 20 20 54 68 65 20 61 ey.are.outside.its.scope...The.a
5c680 63 74 20 6f 66 0a 72 75 6e 6e 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 73 20 6e 6f 74 ct.of.running.the.Program.is.not
5c6a0 20 72 65 73 74 72 69 63 74 65 64 2c 20 61 6e 64 20 74 68 65 20 6f 75 74 70 75 74 20 66 72 6f 6d .restricted,.and.the.output.from
5c6c0 20 74 68 65 20 50 72 6f 67 72 61 6d 0a 69 73 20 63 6f 76 65 72 65 64 20 6f 6e 6c 79 20 69 66 20 .the.Program.is.covered.only.if.
5c6e0 69 74 73 20 63 6f 6e 74 65 6e 74 73 20 63 6f 6e 73 74 69 74 75 74 65 20 61 20 77 6f 72 6b 20 62 its.contents.constitute.a.work.b
5c700 61 73 65 64 20 6f 6e 20 74 68 65 0a 50 72 6f 67 72 61 6d 20 28 69 6e 64 65 70 65 6e 64 65 6e 74 ased.on.the.Program.(independent
5c720 20 6f 66 20 68 61 76 69 6e 67 20 62 65 65 6e 20 6d 61 64 65 20 62 79 20 72 75 6e 6e 69 6e 67 20 .of.having.been.made.by.running.
5c740 74 68 65 20 50 72 6f 67 72 61 6d 29 2e 0a 57 68 65 74 68 65 72 20 74 68 61 74 20 69 73 20 74 72 the.Program)..Whether.that.is.tr
5c760 75 65 20 64 65 70 65 6e 64 73 20 6f 6e 20 77 68 61 74 20 74 68 65 20 50 72 6f 67 72 61 6d 20 64 ue.depends.on.what.the.Program.d
5c780 6f 65 73 2e 0a 0a 20 20 31 2e 20 59 6f 75 20 6d 61 79 20 63 6f 70 79 20 61 6e 64 20 64 69 73 74 oes.....1..You.may.copy.and.dist
5c7a0 72 69 62 75 74 65 20 76 65 72 62 61 74 69 6d 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 50 72 ribute.verbatim.copies.of.the.Pr
5c7c0 6f 67 72 61 6d 27 73 0a 73 6f 75 72 63 65 20 63 6f 64 65 20 61 73 20 79 6f 75 20 72 65 63 65 69 ogram's.source.code.as.you.recei
5c7e0 76 65 20 69 74 2c 20 69 6e 20 61 6e 79 20 6d 65 64 69 75 6d 2c 20 70 72 6f 76 69 64 65 64 20 74 ve.it,.in.any.medium,.provided.t
5c800 68 61 74 20 79 6f 75 0a 63 6f 6e 73 70 69 63 75 6f 75 73 6c 79 20 61 6e 64 20 61 70 70 72 6f 70 hat.you.conspicuously.and.approp
5c820 72 69 61 74 65 6c 79 20 70 75 62 6c 69 73 68 20 6f 6e 20 65 61 63 68 20 63 6f 70 79 20 61 6e 20 riately.publish.on.each.copy.an.
5c840 61 70 70 72 6f 70 72 69 61 74 65 0a 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 appropriate.copyright.notice.and
5c860 20 64 69 73 63 6c 61 69 6d 65 72 20 6f 66 20 77 61 72 72 61 6e 74 79 3b 20 6b 65 65 70 20 69 6e .disclaimer.of.warranty;.keep.in
5c880 74 61 63 74 20 61 6c 6c 20 74 68 65 0a 6e 6f 74 69 63 65 73 20 74 68 61 74 20 72 65 66 65 72 20 tact.all.the.notices.that.refer.
5c8a0 74 6f 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 61 6e 64 20 74 6f 20 74 68 65 20 61 62 73 65 6e to.this.License.and.to.the.absen
5c8c0 63 65 20 6f 66 20 61 6e 79 20 77 61 72 72 61 6e 74 79 3b 0a 61 6e 64 20 67 69 76 65 20 61 6e 79 ce.of.any.warranty;.and.give.any
5c8e0 20 6f 74 68 65 72 20 72 65 63 69 70 69 65 6e 74 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d .other.recipients.of.the.Program
5c900 20 61 20 63 6f 70 79 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 0a 61 6c 6f 6e 67 20 77 69 .a.copy.of.this.License.along.wi
5c920 74 68 20 74 68 65 20 50 72 6f 67 72 61 6d 2e 0a 0a 59 6f 75 20 6d 61 79 20 63 68 61 72 67 65 20 th.the.Program...You.may.charge.
5c940 61 20 66 65 65 20 66 6f 72 20 74 68 65 20 70 68 79 73 69 63 61 6c 20 61 63 74 20 6f 66 20 74 72 a.fee.for.the.physical.act.of.tr
5c960 61 6e 73 66 65 72 72 69 6e 67 20 61 20 63 6f 70 79 2c 20 61 6e 64 0a 79 6f 75 20 6d 61 79 20 61 ansferring.a.copy,.and.you.may.a
5c980 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 20 6f 66 66 65 72 20 77 61 72 72 61 6e 74 79 20 70 72 6f t.your.option.offer.warranty.pro
5c9a0 74 65 63 74 69 6f 6e 20 69 6e 20 65 78 63 68 61 6e 67 65 20 66 6f 72 20 61 20 66 65 65 2e 0a 0a tection.in.exchange.for.a.fee...
5c9c0 20 20 32 2e 20 59 6f 75 20 6d 61 79 20 6d 6f 64 69 66 79 20 79 6f 75 72 20 63 6f 70 79 20 6f 72 ..2..You.may.modify.your.copy.or
5c9e0 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 6e 79 20 70 6f .copies.of.the.Program.or.any.po
5ca00 72 74 69 6f 6e 0a 6f 66 20 69 74 2c 20 74 68 75 73 20 66 6f 72 6d 69 6e 67 20 61 20 77 6f 72 6b rtion.of.it,.thus.forming.a.work
5ca20 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 2c 20 61 6e 64 20 63 6f 70 79 20 .based.on.the.Program,.and.copy.
5ca40 61 6e 64 0a 64 69 73 74 72 69 62 75 74 65 20 73 75 63 68 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e and.distribute.such.modification
5ca60 73 20 6f 72 20 77 6f 72 6b 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 53 65 63 s.or.work.under.the.terms.of.Sec
5ca80 74 69 6f 6e 20 31 0a 61 62 6f 76 65 2c 20 70 72 6f 76 69 64 65 64 20 74 68 61 74 20 79 6f 75 20 tion.1.above,.provided.that.you.
5caa0 61 6c 73 6f 20 6d 65 65 74 20 61 6c 6c 20 6f 66 20 74 68 65 73 65 20 63 6f 6e 64 69 74 69 6f 6e also.meet.all.of.these.condition
5cac0 73 3a 0a 0a 20 20 20 20 61 29 20 59 6f 75 20 6d 75 73 74 20 63 61 75 73 65 20 74 68 65 20 6d 6f s:......a).You.must.cause.the.mo
5cae0 64 69 66 69 65 64 20 66 69 6c 65 73 20 74 6f 20 63 61 72 72 79 20 70 72 6f 6d 69 6e 65 6e 74 20 dified.files.to.carry.prominent.
5cb00 6e 6f 74 69 63 65 73 0a 20 20 20 20 73 74 61 74 69 6e 67 20 74 68 61 74 20 79 6f 75 20 63 68 61 notices.....stating.that.you.cha
5cb20 6e 67 65 64 20 74 68 65 20 66 69 6c 65 73 20 61 6e 64 20 74 68 65 20 64 61 74 65 20 6f 66 20 61 nged.the.files.and.the.date.of.a
5cb40 6e 79 20 63 68 61 6e 67 65 2e 0a 0a 20 20 20 20 62 29 20 59 6f 75 20 6d 75 73 74 20 63 61 75 73 ny.change.......b).You.must.caus
5cb60 65 20 61 6e 79 20 77 6f 72 6b 20 74 68 61 74 20 79 6f 75 20 64 69 73 74 72 69 62 75 74 65 20 6f e.any.work.that.you.distribute.o
5cb80 72 20 70 75 62 6c 69 73 68 2c 20 74 68 61 74 20 69 6e 0a 20 20 20 20 77 68 6f 6c 65 20 6f 72 20 r.publish,.that.in.....whole.or.
5cba0 69 6e 20 70 61 72 74 20 63 6f 6e 74 61 69 6e 73 20 6f 72 20 69 73 20 64 65 72 69 76 65 64 20 66 in.part.contains.or.is.derived.f
5cbc0 72 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 6e 79 0a 20 20 20 20 70 61 72 74 20 rom.the.Program.or.any.....part.
5cbe0 74 68 65 72 65 6f 66 2c 20 74 6f 20 62 65 20 6c 69 63 65 6e 73 65 64 20 61 73 20 61 20 77 68 6f thereof,.to.be.licensed.as.a.who
5cc00 6c 65 20 61 74 20 6e 6f 20 63 68 61 72 67 65 20 74 6f 20 61 6c 6c 20 74 68 69 72 64 0a 20 20 20 le.at.no.charge.to.all.third....
5cc20 20 70 61 72 74 69 65 73 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 69 73 .parties.under.the.terms.of.this
5cc40 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 20 20 63 29 20 49 66 20 74 68 65 20 6d 6f 64 69 66 69 65 .License.......c).If.the.modifie
5cc60 64 20 70 72 6f 67 72 61 6d 20 6e 6f 72 6d 61 6c 6c 79 20 72 65 61 64 73 20 63 6f 6d 6d 61 6e 64 d.program.normally.reads.command
5cc80 73 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 0a 20 20 20 20 77 68 65 6e 20 72 75 6e 2c 20 79 6f s.interactively.....when.run,.yo
5cca0 75 20 6d 75 73 74 20 63 61 75 73 65 20 69 74 2c 20 77 68 65 6e 20 73 74 61 72 74 65 64 20 72 75 u.must.cause.it,.when.started.ru
5ccc0 6e 6e 69 6e 67 20 66 6f 72 20 73 75 63 68 0a 20 20 20 20 69 6e 74 65 72 61 63 74 69 76 65 20 75 nning.for.such.....interactive.u
5cce0 73 65 20 69 6e 20 74 68 65 20 6d 6f 73 74 20 6f 72 64 69 6e 61 72 79 20 77 61 79 2c 20 74 6f 20 se.in.the.most.ordinary.way,.to.
5cd00 70 72 69 6e 74 20 6f 72 20 64 69 73 70 6c 61 79 20 61 6e 0a 20 20 20 20 61 6e 6e 6f 75 6e 63 65 print.or.display.an.....announce
5cd20 6d 65 6e 74 20 69 6e 63 6c 75 64 69 6e 67 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 63 6f ment.including.an.appropriate.co
5cd40 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 20 61 0a 20 20 20 20 6e 6f 74 69 63 65 20 pyright.notice.and.a.....notice.
5cd60 74 68 61 74 20 74 68 65 72 65 20 69 73 20 6e 6f 20 77 61 72 72 61 6e 74 79 20 28 6f 72 20 65 6c that.there.is.no.warranty.(or.el
5cd80 73 65 2c 20 73 61 79 69 6e 67 20 74 68 61 74 20 79 6f 75 20 70 72 6f 76 69 64 65 0a 20 20 20 20 se,.saying.that.you.provide.....
5cda0 61 20 77 61 72 72 61 6e 74 79 29 20 61 6e 64 20 74 68 61 74 20 75 73 65 72 73 20 6d 61 79 20 72 a.warranty).and.that.users.may.r
5cdc0 65 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 70 72 6f 67 72 61 6d 20 75 6e 64 65 72 0a 20 20 edistribute.the.program.under...
5cde0 20 20 74 68 65 73 65 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 61 6e 64 20 74 65 6c 6c 69 6e 67 20 ..these.conditions,.and.telling.
5ce00 74 68 65 20 75 73 65 72 20 68 6f 77 20 74 6f 20 76 69 65 77 20 61 20 63 6f 70 79 20 6f 66 20 74 the.user.how.to.view.a.copy.of.t
5ce20 68 69 73 0a 20 20 20 20 4c 69 63 65 6e 73 65 2e 20 20 28 45 78 63 65 70 74 69 6f 6e 3a 20 69 66 his.....License...(Exception:.if
5ce40 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 74 73 65 6c 66 20 69 73 20 69 6e 74 65 72 61 63 74 69 .the.Program.itself.is.interacti
5ce60 76 65 20 62 75 74 0a 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 6e 6f 72 6d 61 6c 6c 79 20 70 72 69 ve.but.....does.not.normally.pri
5ce80 6e 74 20 73 75 63 68 20 61 6e 20 61 6e 6e 6f 75 6e 63 65 6d 65 6e 74 2c 20 79 6f 75 72 20 77 6f nt.such.an.announcement,.your.wo
5cea0 72 6b 20 62 61 73 65 64 20 6f 6e 0a 20 20 20 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 73 20 6e rk.based.on.....the.Program.is.n
5cec0 6f 74 20 72 65 71 75 69 72 65 64 20 74 6f 20 70 72 69 6e 74 20 61 6e 20 61 6e 6e 6f 75 6e 63 65 ot.required.to.print.an.announce
5cee0 6d 65 6e 74 2e 29 0a 0a 54 68 65 73 65 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 70 70 6c 79 ment.)..These.requirements.apply
5cf00 20 74 6f 20 74 68 65 20 6d 6f 64 69 66 69 65 64 20 77 6f 72 6b 20 61 73 20 61 20 77 68 6f 6c 65 .to.the.modified.work.as.a.whole
5cf20 2e 20 20 49 66 0a 69 64 65 6e 74 69 66 69 61 62 6c 65 20 73 65 63 74 69 6f 6e 73 20 6f 66 20 74 ...If.identifiable.sections.of.t
5cf40 68 61 74 20 77 6f 72 6b 20 61 72 65 20 6e 6f 74 20 64 65 72 69 76 65 64 20 66 72 6f 6d 20 74 68 hat.work.are.not.derived.from.th
5cf60 65 20 50 72 6f 67 72 61 6d 2c 0a 61 6e 64 20 63 61 6e 20 62 65 20 72 65 61 73 6f 6e 61 62 6c 79 e.Program,.and.can.be.reasonably
5cf80 20 63 6f 6e 73 69 64 65 72 65 64 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 61 6e 64 20 73 65 70 61 .considered.independent.and.sepa
5cfa0 72 61 74 65 20 77 6f 72 6b 73 20 69 6e 0a 74 68 65 6d 73 65 6c 76 65 73 2c 20 74 68 65 6e 20 74 rate.works.in.themselves,.then.t
5cfc0 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 61 6e 64 20 69 74 73 20 74 65 72 6d 73 2c 20 64 6f 20 6e his.License,.and.its.terms,.do.n
5cfe0 6f 74 20 61 70 70 6c 79 20 74 6f 20 74 68 6f 73 65 0a 73 65 63 74 69 6f 6e 73 20 77 68 65 6e 20 ot.apply.to.those.sections.when.
5d000 79 6f 75 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 6d 20 61 73 20 73 65 70 61 72 61 74 65 20 you.distribute.them.as.separate.
5d020 77 6f 72 6b 73 2e 20 20 42 75 74 20 77 68 65 6e 20 79 6f 75 0a 64 69 73 74 72 69 62 75 74 65 20 works...But.when.you.distribute.
5d040 74 68 65 20 73 61 6d 65 20 73 65 63 74 69 6f 6e 73 20 61 73 20 70 61 72 74 20 6f 66 20 61 20 77 the.same.sections.as.part.of.a.w
5d060 68 6f 6c 65 20 77 68 69 63 68 20 69 73 20 61 20 77 6f 72 6b 20 62 61 73 65 64 0a 6f 6e 20 74 68 hole.which.is.a.work.based.on.th
5d080 65 20 50 72 6f 67 72 61 6d 2c 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 74 e.Program,.the.distribution.of.t
5d0a0 68 65 20 77 68 6f 6c 65 20 6d 75 73 74 20 62 65 20 6f 6e 20 74 68 65 20 74 65 72 6d 73 20 6f 66 he.whole.must.be.on.the.terms.of
5d0c0 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 77 68 6f 73 65 20 70 65 72 6d 69 73 73 69 6f 6e 73 .this.License,.whose.permissions
5d0e0 20 66 6f 72 20 6f 74 68 65 72 20 6c 69 63 65 6e 73 65 65 73 20 65 78 74 65 6e 64 20 74 6f 20 74 .for.other.licensees.extend.to.t
5d100 68 65 0a 65 6e 74 69 72 65 20 77 68 6f 6c 65 2c 20 61 6e 64 20 74 68 75 73 20 74 6f 20 65 61 63 he.entire.whole,.and.thus.to.eac
5d120 68 20 61 6e 64 20 65 76 65 72 79 20 70 61 72 74 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 h.and.every.part.regardless.of.w
5d140 68 6f 20 77 72 6f 74 65 20 69 74 2e 0a 0a 54 68 75 73 2c 20 69 74 20 69 73 20 6e 6f 74 20 74 68 ho.wrote.it...Thus,.it.is.not.th
5d160 65 20 69 6e 74 65 6e 74 20 6f 66 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 74 6f 20 63 6c 61 69 e.intent.of.this.section.to.clai
5d180 6d 20 72 69 67 68 74 73 20 6f 72 20 63 6f 6e 74 65 73 74 0a 79 6f 75 72 20 72 69 67 68 74 73 20 m.rights.or.contest.your.rights.
5d1a0 74 6f 20 77 6f 72 6b 20 77 72 69 74 74 65 6e 20 65 6e 74 69 72 65 6c 79 20 62 79 20 79 6f 75 3b to.work.written.entirely.by.you;
5d1c0 20 72 61 74 68 65 72 2c 20 74 68 65 20 69 6e 74 65 6e 74 20 69 73 20 74 6f 0a 65 78 65 72 63 69 .rather,.the.intent.is.to.exerci
5d1e0 73 65 20 74 68 65 20 72 69 67 68 74 20 74 6f 20 63 6f 6e 74 72 6f 6c 20 74 68 65 20 64 69 73 74 se.the.right.to.control.the.dist
5d200 72 69 62 75 74 69 6f 6e 20 6f 66 20 64 65 72 69 76 61 74 69 76 65 20 6f 72 0a 63 6f 6c 6c 65 63 ribution.of.derivative.or.collec
5d220 74 69 76 65 20 77 6f 72 6b 73 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 2e tive.works.based.on.the.Program.
5d240 0a 0a 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20 6d 65 72 65 20 61 67 67 72 65 67 61 74 69 6f 6e 20 ..In.addition,.mere.aggregation.
5d260 6f 66 20 61 6e 6f 74 68 65 72 20 77 6f 72 6b 20 6e 6f 74 20 62 61 73 65 64 20 6f 6e 20 74 68 65 of.another.work.not.based.on.the
5d280 20 50 72 6f 67 72 61 6d 0a 77 69 74 68 20 74 68 65 20 50 72 6f 67 72 61 6d 20 28 6f 72 20 77 69 .Program.with.the.Program.(or.wi
5d2a0 74 68 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 29 20 th.a.work.based.on.the.Program).
5d2c0 6f 6e 20 61 20 76 6f 6c 75 6d 65 20 6f 66 0a 61 20 73 74 6f 72 61 67 65 20 6f 72 20 64 69 73 74 on.a.volume.of.a.storage.or.dist
5d2e0 72 69 62 75 74 69 6f 6e 20 6d 65 64 69 75 6d 20 64 6f 65 73 20 6e 6f 74 20 62 72 69 6e 67 20 74 ribution.medium.does.not.bring.t
5d300 68 65 20 6f 74 68 65 72 20 77 6f 72 6b 20 75 6e 64 65 72 0a 74 68 65 20 73 63 6f 70 65 20 6f 66 he.other.work.under.the.scope.of
5d320 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 33 2e 20 59 6f 75 20 6d 61 79 20 63 6f 70 .this.License.....3..You.may.cop
5d340 79 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 28 6f 72 y.and.distribute.the.Program.(or
5d360 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 69 74 2c 0a 75 6e 64 65 72 20 53 65 63 74 69 .a.work.based.on.it,.under.Secti
5d380 6f 6e 20 32 29 20 69 6e 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 6f 72 20 65 78 65 63 75 74 61 62 on.2).in.object.code.or.executab
5d3a0 6c 65 20 66 6f 72 6d 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 0a 53 65 63 74 69 le.form.under.the.terms.of.Secti
5d3c0 6f 6e 73 20 31 20 61 6e 64 20 32 20 61 62 6f 76 65 20 70 72 6f 76 69 64 65 64 20 74 68 61 74 20 ons.1.and.2.above.provided.that.
5d3e0 79 6f 75 20 61 6c 73 6f 20 64 6f 20 6f 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 you.also.do.one.of.the.following
5d400 3a 0a 0a 20 20 20 20 61 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 74 20 77 69 74 68 20 74 68 65 20 :......a).Accompany.it.with.the.
5d420 63 6f 6d 70 6c 65 74 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 6d 61 63 68 69 6e 65 2d 72 complete.corresponding.machine-r
5d440 65 61 64 61 62 6c 65 0a 20 20 20 20 73 6f 75 72 63 65 20 63 6f 64 65 2c 20 77 68 69 63 68 20 6d eadable.....source.code,.which.m
5d460 75 73 74 20 62 65 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 ust.be.distributed.under.the.ter
5d480 6d 73 20 6f 66 20 53 65 63 74 69 6f 6e 73 0a 20 20 20 20 31 20 61 6e 64 20 32 20 61 62 6f 76 65 ms.of.Sections.....1.and.2.above
5d4a0 20 6f 6e 20 61 20 6d 65 64 69 75 6d 20 63 75 73 74 6f 6d 61 72 69 6c 79 20 75 73 65 64 20 66 6f .on.a.medium.customarily.used.fo
5d4c0 72 20 73 6f 66 74 77 61 72 65 20 69 6e 74 65 72 63 68 61 6e 67 65 3b 20 6f 72 2c 0a 0a 20 20 20 r.software.interchange;.or,.....
5d4e0 20 62 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 74 20 77 69 74 68 20 61 20 77 72 69 74 74 65 6e 20 .b).Accompany.it.with.a.written.
5d500 6f 66 66 65 72 2c 20 76 61 6c 69 64 20 66 6f 72 20 61 74 20 6c 65 61 73 74 20 74 68 72 65 65 0a offer,.valid.for.at.least.three.
5d520 20 20 20 20 79 65 61 72 73 2c 20 74 6f 20 67 69 76 65 20 61 6e 79 20 74 68 69 72 64 20 70 61 72 ....years,.to.give.any.third.par
5d540 74 79 2c 20 66 6f 72 20 61 20 63 68 61 72 67 65 20 6e 6f 20 6d 6f 72 65 20 74 68 61 6e 20 79 6f ty,.for.a.charge.no.more.than.yo
5d560 75 72 0a 20 20 20 20 63 6f 73 74 20 6f 66 20 70 68 79 73 69 63 61 6c 6c 79 20 70 65 72 66 6f 72 ur.....cost.of.physically.perfor
5d580 6d 69 6e 67 20 73 6f 75 72 63 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 2c 20 61 20 63 6f 6d 70 ming.source.distribution,.a.comp
5d5a0 6c 65 74 65 0a 20 20 20 20 6d 61 63 68 69 6e 65 2d 72 65 61 64 61 62 6c 65 20 63 6f 70 79 20 6f lete.....machine-readable.copy.o
5d5c0 66 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 73 6f 75 72 63 65 20 63 6f 64 65 2c f.the.corresponding.source.code,
5d5e0 20 74 6f 20 62 65 0a 20 20 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 .to.be.....distributed.under.the
5d600 20 74 65 72 6d 73 20 6f 66 20 53 65 63 74 69 6f 6e 73 20 31 20 61 6e 64 20 32 20 61 62 6f 76 65 .terms.of.Sections.1.and.2.above
5d620 20 6f 6e 20 61 20 6d 65 64 69 75 6d 0a 20 20 20 20 63 75 73 74 6f 6d 61 72 69 6c 79 20 75 73 65 .on.a.medium.....customarily.use
5d640 64 20 66 6f 72 20 73 6f 66 74 77 61 72 65 20 69 6e 74 65 72 63 68 61 6e 67 65 3b 20 6f 72 2c 0a d.for.software.interchange;.or,.
5d660 0a 20 20 20 20 63 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 74 20 77 69 74 68 20 74 68 65 20 69 6e .....c).Accompany.it.with.the.in
5d680 66 6f 72 6d 61 74 69 6f 6e 20 79 6f 75 20 72 65 63 65 69 76 65 64 20 61 73 20 74 6f 20 74 68 65 formation.you.received.as.to.the
5d6a0 20 6f 66 66 65 72 0a 20 20 20 20 74 6f 20 64 69 73 74 72 69 62 75 74 65 20 63 6f 72 72 65 73 70 .offer.....to.distribute.corresp
5d6c0 6f 6e 64 69 6e 67 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 20 28 54 68 69 73 20 61 6c 74 65 72 onding.source.code...(This.alter
5d6e0 6e 61 74 69 76 65 20 69 73 0a 20 20 20 20 61 6c 6c 6f 77 65 64 20 6f 6e 6c 79 20 66 6f 72 20 6e native.is.....allowed.only.for.n
5d700 6f 6e 63 6f 6d 6d 65 72 63 69 61 6c 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 20 6f 6e oncommercial.distribution.and.on
5d720 6c 79 20 69 66 20 79 6f 75 0a 20 20 20 20 72 65 63 65 69 76 65 64 20 74 68 65 20 70 72 6f 67 72 ly.if.you.....received.the.progr
5d740 61 6d 20 69 6e 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 6f 72 20 65 78 65 63 75 74 61 62 6c 65 20 am.in.object.code.or.executable.
5d760 66 6f 72 6d 20 77 69 74 68 20 73 75 63 68 0a 20 20 20 20 61 6e 20 6f 66 66 65 72 2c 20 69 6e 20 form.with.such.....an.offer,.in.
5d780 61 63 63 6f 72 64 20 77 69 74 68 20 53 75 62 73 65 63 74 69 6f 6e 20 62 20 61 62 6f 76 65 2e 29 accord.with.Subsection.b.above.)
5d7a0 0a 0a 54 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 6f 72 20 61 20 77 6f 72 6b 20 6d 65 61 ..The.source.code.for.a.work.mea
5d7c0 6e 73 20 74 68 65 20 70 72 65 66 65 72 72 65 64 20 66 6f 72 6d 20 6f 66 20 74 68 65 20 77 6f 72 ns.the.preferred.form.of.the.wor
5d7e0 6b 20 66 6f 72 0a 6d 61 6b 69 6e 67 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 74 6f 20 69 74 k.for.making.modifications.to.it
5d800 2e 20 20 46 6f 72 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 20 77 6f 72 6b 2c 20 63 6f 6d 70 6c ...For.an.executable.work,.compl
5d820 65 74 65 20 73 6f 75 72 63 65 0a 63 6f 64 65 20 6d 65 61 6e 73 20 61 6c 6c 20 74 68 65 20 73 6f ete.source.code.means.all.the.so
5d840 75 72 63 65 20 63 6f 64 65 20 66 6f 72 20 61 6c 6c 20 6d 6f 64 75 6c 65 73 20 69 74 20 63 6f 6e urce.code.for.all.modules.it.con
5d860 74 61 69 6e 73 2c 20 70 6c 75 73 20 61 6e 79 0a 61 73 73 6f 63 69 61 74 65 64 20 69 6e 74 65 72 tains,.plus.any.associated.inter
5d880 66 61 63 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 66 69 6c 65 73 2c 20 70 6c 75 73 20 74 68 65 20 face.definition.files,.plus.the.
5d8a0 73 63 72 69 70 74 73 20 75 73 65 64 20 74 6f 0a 63 6f 6e 74 72 6f 6c 20 63 6f 6d 70 69 6c 61 74 scripts.used.to.control.compilat
5d8c0 69 6f 6e 20 61 6e 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 65 78 65 63 ion.and.installation.of.the.exec
5d8e0 75 74 61 62 6c 65 2e 20 20 48 6f 77 65 76 65 72 2c 20 61 73 20 61 0a 73 70 65 63 69 61 6c 20 65 utable...However,.as.a.special.e
5d900 78 63 65 70 74 69 6f 6e 2c 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 64 69 73 74 72 69 xception,.the.source.code.distri
5d920 62 75 74 65 64 20 6e 65 65 64 20 6e 6f 74 20 69 6e 63 6c 75 64 65 0a 61 6e 79 74 68 69 6e 67 20 buted.need.not.include.anything.
5d940 74 68 61 74 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 64 69 73 74 72 69 62 75 74 65 64 20 28 69 6e that.is.normally.distributed.(in
5d960 20 65 69 74 68 65 72 20 73 6f 75 72 63 65 20 6f 72 20 62 69 6e 61 72 79 0a 66 6f 72 6d 29 20 77 .either.source.or.binary.form).w
5d980 69 74 68 20 74 68 65 20 6d 61 6a 6f 72 20 63 6f 6d 70 6f 6e 65 6e 74 73 20 28 63 6f 6d 70 69 6c ith.the.major.components.(compil
5d9a0 65 72 2c 20 6b 65 72 6e 65 6c 2c 20 61 6e 64 20 73 6f 20 6f 6e 29 20 6f 66 20 74 68 65 0a 6f 70 er,.kernel,.and.so.on).of.the.op
5d9c0 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 6f 6e 20 77 68 69 63 68 20 74 68 65 20 65 78 65 63 erating.system.on.which.the.exec
5d9e0 75 74 61 62 6c 65 20 72 75 6e 73 2c 20 75 6e 6c 65 73 73 20 74 68 61 74 20 63 6f 6d 70 6f 6e 65 utable.runs,.unless.that.compone
5da00 6e 74 0a 69 74 73 65 6c 66 20 61 63 63 6f 6d 70 61 6e 69 65 73 20 74 68 65 20 65 78 65 63 75 74 nt.itself.accompanies.the.execut
5da20 61 62 6c 65 2e 0a 0a 49 66 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 65 78 65 63 75 74 able...If.distribution.of.execut
5da40 61 62 6c 65 20 6f 72 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 69 73 20 6d 61 64 65 20 62 79 20 6f able.or.object.code.is.made.by.o
5da60 66 66 65 72 69 6e 67 0a 61 63 63 65 73 73 20 74 6f 20 63 6f 70 79 20 66 72 6f 6d 20 61 20 64 65 ffering.access.to.copy.from.a.de
5da80 73 69 67 6e 61 74 65 64 20 70 6c 61 63 65 2c 20 74 68 65 6e 20 6f 66 66 65 72 69 6e 67 20 65 71 signated.place,.then.offering.eq
5daa0 75 69 76 61 6c 65 6e 74 0a 61 63 63 65 73 73 20 74 6f 20 63 6f 70 79 20 74 68 65 20 73 6f 75 72 uivalent.access.to.copy.the.sour
5dac0 63 65 20 63 6f 64 65 20 66 72 6f 6d 20 74 68 65 20 73 61 6d 65 20 70 6c 61 63 65 20 63 6f 75 6e ce.code.from.the.same.place.coun
5dae0 74 73 20 61 73 0a 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 74 68 65 20 73 6f 75 72 63 65 ts.as.distribution.of.the.source
5db00 20 63 6f 64 65 2c 20 65 76 65 6e 20 74 68 6f 75 67 68 20 74 68 69 72 64 20 70 61 72 74 69 65 73 .code,.even.though.third.parties
5db20 20 61 72 65 20 6e 6f 74 0a 63 6f 6d 70 65 6c 6c 65 64 20 74 6f 20 63 6f 70 79 20 74 68 65 20 73 .are.not.compelled.to.copy.the.s
5db40 6f 75 72 63 65 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 6f 62 6a 65 63 74 20 63 6f 64 65 ource.along.with.the.object.code
5db60 2e 0a 0a 20 20 34 2e 20 59 6f 75 20 6d 61 79 20 6e 6f 74 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 .....4..You.may.not.copy,.modify
5db80 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 6f 72 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 ,.sublicense,.or.distribute.the.
5dba0 50 72 6f 67 72 61 6d 0a 65 78 63 65 70 74 20 61 73 20 65 78 70 72 65 73 73 6c 79 20 70 72 6f 76 Program.except.as.expressly.prov
5dbc0 69 64 65 64 20 75 6e 64 65 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 20 20 41 6e 79 20 61 74 ided.under.this.License...Any.at
5dbe0 74 65 6d 70 74 0a 6f 74 68 65 72 77 69 73 65 20 74 6f 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c tempt.otherwise.to.copy,.modify,
5dc00 20 73 75 62 6c 69 63 65 6e 73 65 20 6f 72 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 72 .sublicense.or.distribute.the.Pr
5dc20 6f 67 72 61 6d 20 69 73 0a 76 6f 69 64 2c 20 61 6e 64 20 77 69 6c 6c 20 61 75 74 6f 6d 61 74 69 ogram.is.void,.and.will.automati
5dc40 63 61 6c 6c 79 20 74 65 72 6d 69 6e 61 74 65 20 79 6f 75 72 20 72 69 67 68 74 73 20 75 6e 64 65 cally.terminate.your.rights.unde
5dc60 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 48 6f 77 65 76 65 72 2c 20 70 61 72 74 69 65 73 r.this.License..However,.parties
5dc80 20 77 68 6f 20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 63 6f 70 69 65 73 2c 20 6f 72 20 72 69 .who.have.received.copies,.or.ri
5dca0 67 68 74 73 2c 20 66 72 6f 6d 20 79 6f 75 20 75 6e 64 65 72 0a 74 68 69 73 20 4c 69 63 65 6e 73 ghts,.from.you.under.this.Licens
5dcc0 65 20 77 69 6c 6c 20 6e 6f 74 20 68 61 76 65 20 74 68 65 69 72 20 6c 69 63 65 6e 73 65 73 20 74 e.will.not.have.their.licenses.t
5dce0 65 72 6d 69 6e 61 74 65 64 20 73 6f 20 6c 6f 6e 67 20 61 73 20 73 75 63 68 0a 70 61 72 74 69 65 erminated.so.long.as.such.partie
5dd00 73 20 72 65 6d 61 69 6e 20 69 6e 20 66 75 6c 6c 20 63 6f 6d 70 6c 69 61 6e 63 65 2e 0a 0a 20 20 s.remain.in.full.compliance.....
5dd20 35 2e 20 59 6f 75 20 61 72 65 20 6e 6f 74 20 72 65 71 75 69 72 65 64 20 74 6f 20 61 63 63 65 70 5..You.are.not.required.to.accep
5dd40 74 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 73 69 6e 63 65 20 79 6f 75 20 68 61 76 65 20 6e t.this.License,.since.you.have.n
5dd60 6f 74 0a 73 69 67 6e 65 64 20 69 74 2e 20 20 48 6f 77 65 76 65 72 2c 20 6e 6f 74 68 69 6e 67 20 ot.signed.it...However,.nothing.
5dd80 65 6c 73 65 20 67 72 61 6e 74 73 20 79 6f 75 20 70 65 72 6d 69 73 73 69 6f 6e 20 74 6f 20 6d 6f else.grants.you.permission.to.mo
5dda0 64 69 66 79 20 6f 72 0a 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f dify.or.distribute.the.Program.o
5ddc0 72 20 69 74 73 20 64 65 72 69 76 61 74 69 76 65 20 77 6f 72 6b 73 2e 20 20 54 68 65 73 65 20 61 r.its.derivative.works...These.a
5dde0 63 74 69 6f 6e 73 20 61 72 65 0a 70 72 6f 68 69 62 69 74 65 64 20 62 79 20 6c 61 77 20 69 66 20 ctions.are.prohibited.by.law.if.
5de00 79 6f 75 20 64 6f 20 6e 6f 74 20 61 63 63 65 70 74 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 20 you.do.not.accept.this.License..
5de20 20 54 68 65 72 65 66 6f 72 65 2c 20 62 79 0a 6d 6f 64 69 66 79 69 6e 67 20 6f 72 20 64 69 73 74 .Therefore,.by.modifying.or.dist
5de40 72 69 62 75 74 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 28 6f 72 20 61 6e 79 20 77 6f 72 ributing.the.Program.(or.any.wor
5de60 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 0a 50 72 6f 67 72 61 6d 29 2c 20 79 6f 75 20 69 6e 64 k.based.on.the.Program),.you.ind
5de80 69 63 61 74 65 20 79 6f 75 72 20 61 63 63 65 70 74 61 6e 63 65 20 6f 66 20 74 68 69 73 20 4c 69 icate.your.acceptance.of.this.Li
5dea0 63 65 6e 73 65 20 74 6f 20 64 6f 20 73 6f 2c 20 61 6e 64 0a 61 6c 6c 20 69 74 73 20 74 65 72 6d cense.to.do.so,.and.all.its.term
5dec0 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 20 66 6f 72 20 63 6f 70 79 69 6e 67 2c 20 64 69 s.and.conditions.for.copying,.di
5dee0 73 74 72 69 62 75 74 69 6e 67 20 6f 72 20 6d 6f 64 69 66 79 69 6e 67 0a 74 68 65 20 50 72 6f 67 stributing.or.modifying.the.Prog
5df00 72 61 6d 20 6f 72 20 77 6f 72 6b 73 20 62 61 73 65 64 20 6f 6e 20 69 74 2e 0a 0a 20 20 36 2e 20 ram.or.works.based.on.it.....6..
5df20 45 61 63 68 20 74 69 6d 65 20 79 6f 75 20 72 65 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 Each.time.you.redistribute.the.P
5df40 72 6f 67 72 61 6d 20 28 6f 72 20 61 6e 79 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 rogram.(or.any.work.based.on.the
5df60 0a 50 72 6f 67 72 61 6d 29 2c 20 74 68 65 20 72 65 63 69 70 69 65 6e 74 20 61 75 74 6f 6d 61 74 .Program),.the.recipient.automat
5df80 69 63 61 6c 6c 79 20 72 65 63 65 69 76 65 73 20 61 20 6c 69 63 65 6e 73 65 20 66 72 6f 6d 20 74 ically.receives.a.license.from.t
5dfa0 68 65 0a 6f 72 69 67 69 6e 61 6c 20 6c 69 63 65 6e 73 6f 72 20 74 6f 20 63 6f 70 79 2c 20 64 69 he.original.licensor.to.copy,.di
5dfc0 73 74 72 69 62 75 74 65 20 6f 72 20 6d 6f 64 69 66 79 20 74 68 65 20 50 72 6f 67 72 61 6d 20 73 stribute.or.modify.the.Program.s
5dfe0 75 62 6a 65 63 74 20 74 6f 0a 74 68 65 73 65 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 ubject.to.these.terms.and.condit
5e000 69 6f 6e 73 2e 20 20 59 6f 75 20 6d 61 79 20 6e 6f 74 20 69 6d 70 6f 73 65 20 61 6e 79 20 66 75 ions...You.may.not.impose.any.fu
5e020 72 74 68 65 72 0a 72 65 73 74 72 69 63 74 69 6f 6e 73 20 6f 6e 20 74 68 65 20 72 65 63 69 70 69 rther.restrictions.on.the.recipi
5e040 65 6e 74 73 27 20 65 78 65 72 63 69 73 65 20 6f 66 20 74 68 65 20 72 69 67 68 74 73 20 67 72 61 ents'.exercise.of.the.rights.gra
5e060 6e 74 65 64 20 68 65 72 65 69 6e 2e 0a 59 6f 75 20 61 72 65 20 6e 6f 74 20 72 65 73 70 6f 6e 73 nted.herein..You.are.not.respons
5e080 69 62 6c 65 20 66 6f 72 20 65 6e 66 6f 72 63 69 6e 67 20 63 6f 6d 70 6c 69 61 6e 63 65 20 62 79 ible.for.enforcing.compliance.by
5e0a0 20 74 68 69 72 64 20 70 61 72 74 69 65 73 20 74 6f 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a .third.parties.to.this.License..
5e0c0 0a 20 20 37 2e 20 49 66 2c 20 61 73 20 61 20 63 6f 6e 73 65 71 75 65 6e 63 65 20 6f 66 20 61 20 ...7..If,.as.a.consequence.of.a.
5e0e0 63 6f 75 72 74 20 6a 75 64 67 6d 65 6e 74 20 6f 72 20 61 6c 6c 65 67 61 74 69 6f 6e 20 6f 66 20 court.judgment.or.allegation.of.
5e100 70 61 74 65 6e 74 0a 69 6e 66 72 69 6e 67 65 6d 65 6e 74 20 6f 72 20 66 6f 72 20 61 6e 79 20 6f patent.infringement.or.for.any.o
5e120 74 68 65 72 20 72 65 61 73 6f 6e 20 28 6e 6f 74 20 6c 69 6d 69 74 65 64 20 74 6f 20 70 61 74 65 ther.reason.(not.limited.to.pate
5e140 6e 74 20 69 73 73 75 65 73 29 2c 0a 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 69 6d 70 6f 73 nt.issues),.conditions.are.impos
5e160 65 64 20 6f 6e 20 79 6f 75 20 28 77 68 65 74 68 65 72 20 62 79 20 63 6f 75 72 74 20 6f 72 64 65 ed.on.you.(whether.by.court.orde
5e180 72 2c 20 61 67 72 65 65 6d 65 6e 74 20 6f 72 0a 6f 74 68 65 72 77 69 73 65 29 20 74 68 61 74 20 r,.agreement.or.otherwise).that.
5e1a0 63 6f 6e 74 72 61 64 69 63 74 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 73 20 6f 66 20 74 68 69 contradict.the.conditions.of.thi
5e1c0 73 20 4c 69 63 65 6e 73 65 2c 20 74 68 65 79 20 64 6f 20 6e 6f 74 0a 65 78 63 75 73 65 20 79 6f s.License,.they.do.not.excuse.yo
5e1e0 75 20 66 72 6f 6d 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 73 20 6f 66 20 74 68 69 73 20 4c 69 u.from.the.conditions.of.this.Li
5e200 63 65 6e 73 65 2e 20 20 49 66 20 79 6f 75 20 63 61 6e 6e 6f 74 0a 64 69 73 74 72 69 62 75 74 65 cense...If.you.cannot.distribute
5e220 20 73 6f 20 61 73 20 74 6f 20 73 61 74 69 73 66 79 20 73 69 6d 75 6c 74 61 6e 65 6f 75 73 6c 79 .so.as.to.satisfy.simultaneously
5e240 20 79 6f 75 72 20 6f 62 6c 69 67 61 74 69 6f 6e 73 20 75 6e 64 65 72 20 74 68 69 73 0a 4c 69 63 .your.obligations.under.this.Lic
5e260 65 6e 73 65 20 61 6e 64 20 61 6e 79 20 6f 74 68 65 72 20 70 65 72 74 69 6e 65 6e 74 20 6f 62 6c ense.and.any.other.pertinent.obl
5e280 69 67 61 74 69 6f 6e 73 2c 20 74 68 65 6e 20 61 73 20 61 20 63 6f 6e 73 65 71 75 65 6e 63 65 20 igations,.then.as.a.consequence.
5e2a0 79 6f 75 0a 6d 61 79 20 6e 6f 74 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 you.may.not.distribute.the.Progr
5e2c0 61 6d 20 61 74 20 61 6c 6c 2e 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 61 20 70 61 am.at.all...For.example,.if.a.pa
5e2e0 74 65 6e 74 0a 6c 69 63 65 6e 73 65 20 77 6f 75 6c 64 20 6e 6f 74 20 70 65 72 6d 69 74 20 72 6f tent.license.would.not.permit.ro
5e300 79 61 6c 74 79 2d 66 72 65 65 20 72 65 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 74 68 65 yalty-free.redistribution.of.the
5e320 20 50 72 6f 67 72 61 6d 20 62 79 0a 61 6c 6c 20 74 68 6f 73 65 20 77 68 6f 20 72 65 63 65 69 76 .Program.by.all.those.who.receiv
5e340 65 20 63 6f 70 69 65 73 20 64 69 72 65 63 74 6c 79 20 6f 72 20 69 6e 64 69 72 65 63 74 6c 79 20 e.copies.directly.or.indirectly.
5e360 74 68 72 6f 75 67 68 20 79 6f 75 2c 20 74 68 65 6e 0a 74 68 65 20 6f 6e 6c 79 20 77 61 79 20 79 through.you,.then.the.only.way.y
5e380 6f 75 20 63 6f 75 6c 64 20 73 61 74 69 73 66 79 20 62 6f 74 68 20 69 74 20 61 6e 64 20 74 68 69 ou.could.satisfy.both.it.and.thi
5e3a0 73 20 4c 69 63 65 6e 73 65 20 77 6f 75 6c 64 20 62 65 20 74 6f 0a 72 65 66 72 61 69 6e 20 65 6e s.License.would.be.to.refrain.en
5e3c0 74 69 72 65 6c 79 20 66 72 6f 6d 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 74 68 65 20 tirely.from.distribution.of.the.
5e3e0 50 72 6f 67 72 61 6d 2e 0a 0a 49 66 20 61 6e 79 20 70 6f 72 74 69 6f 6e 20 6f 66 20 74 68 69 73 Program...If.any.portion.of.this
5e400 20 73 65 63 74 69 6f 6e 20 69 73 20 68 65 6c 64 20 69 6e 76 61 6c 69 64 20 6f 72 20 75 6e 65 6e .section.is.held.invalid.or.unen
5e420 66 6f 72 63 65 61 62 6c 65 20 75 6e 64 65 72 0a 61 6e 79 20 70 61 72 74 69 63 75 6c 61 72 20 63 forceable.under.any.particular.c
5e440 69 72 63 75 6d 73 74 61 6e 63 65 2c 20 74 68 65 20 62 61 6c 61 6e 63 65 20 6f 66 20 74 68 65 20 ircumstance,.the.balance.of.the.
5e460 73 65 63 74 69 6f 6e 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 0a 61 70 70 6c 79 20 61 6e 64 section.is.intended.to.apply.and
5e480 20 74 68 65 20 73 65 63 74 69 6f 6e 20 61 73 20 61 20 77 68 6f 6c 65 20 69 73 20 69 6e 74 65 6e .the.section.as.a.whole.is.inten
5e4a0 64 65 64 20 74 6f 20 61 70 70 6c 79 20 69 6e 20 6f 74 68 65 72 0a 63 69 72 63 75 6d 73 74 61 6e ded.to.apply.in.other.circumstan
5e4c0 63 65 73 2e 0a 0a 49 74 20 69 73 20 6e 6f 74 20 74 68 65 20 70 75 72 70 6f 73 65 20 6f 66 20 74 ces...It.is.not.the.purpose.of.t
5e4e0 68 69 73 20 73 65 63 74 69 6f 6e 20 74 6f 20 69 6e 64 75 63 65 20 79 6f 75 20 74 6f 20 69 6e 66 his.section.to.induce.you.to.inf
5e500 72 69 6e 67 65 20 61 6e 79 0a 70 61 74 65 6e 74 73 20 6f 72 20 6f 74 68 65 72 20 70 72 6f 70 65 ringe.any.patents.or.other.prope
5e520 72 74 79 20 72 69 67 68 74 20 63 6c 61 69 6d 73 20 6f 72 20 74 6f 20 63 6f 6e 74 65 73 74 20 76 rty.right.claims.or.to.contest.v
5e540 61 6c 69 64 69 74 79 20 6f 66 20 61 6e 79 0a 73 75 63 68 20 63 6c 61 69 6d 73 3b 20 74 68 69 73 alidity.of.any.such.claims;.this
5e560 20 73 65 63 74 69 6f 6e 20 68 61 73 20 74 68 65 20 73 6f 6c 65 20 70 75 72 70 6f 73 65 20 6f 66 .section.has.the.sole.purpose.of
5e580 20 70 72 6f 74 65 63 74 69 6e 67 20 74 68 65 0a 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 68 65 .protecting.the.integrity.of.the
5e5a0 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 73 79 73 74 .free.software.distribution.syst
5e5c0 65 6d 2c 20 77 68 69 63 68 20 69 73 0a 69 6d 70 6c 65 6d 65 6e 74 65 64 20 62 79 20 70 75 62 6c em,.which.is.implemented.by.publ
5e5e0 69 63 20 6c 69 63 65 6e 73 65 20 70 72 61 63 74 69 63 65 73 2e 20 20 4d 61 6e 79 20 70 65 6f 70 ic.license.practices...Many.peop
5e600 6c 65 20 68 61 76 65 20 6d 61 64 65 0a 67 65 6e 65 72 6f 75 73 20 63 6f 6e 74 72 69 62 75 74 69 le.have.made.generous.contributi
5e620 6f 6e 73 20 74 6f 20 74 68 65 20 77 69 64 65 20 72 61 6e 67 65 20 6f 66 20 73 6f 66 74 77 61 72 ons.to.the.wide.range.of.softwar
5e640 65 20 64 69 73 74 72 69 62 75 74 65 64 0a 74 68 72 6f 75 67 68 20 74 68 61 74 20 73 79 73 74 65 e.distributed.through.that.syste
5e660 6d 20 69 6e 20 72 65 6c 69 61 6e 63 65 20 6f 6e 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 70 70 6c m.in.reliance.on.consistent.appl
5e680 69 63 61 74 69 6f 6e 20 6f 66 20 74 68 61 74 0a 73 79 73 74 65 6d 3b 20 69 74 20 69 73 20 75 70 ication.of.that.system;.it.is.up
5e6a0 20 74 6f 20 74 68 65 20 61 75 74 68 6f 72 2f 64 6f 6e 6f 72 20 74 6f 20 64 65 63 69 64 65 20 69 .to.the.author/donor.to.decide.i
5e6c0 66 20 68 65 20 6f 72 20 73 68 65 20 69 73 20 77 69 6c 6c 69 6e 67 0a 74 6f 20 64 69 73 74 72 69 f.he.or.she.is.willing.to.distri
5e6e0 62 75 74 65 20 73 6f 66 74 77 61 72 65 20 74 68 72 6f 75 67 68 20 61 6e 79 20 6f 74 68 65 72 20 bute.software.through.any.other.
5e700 73 79 73 74 65 6d 20 61 6e 64 20 61 20 6c 69 63 65 6e 73 65 65 20 63 61 6e 6e 6f 74 0a 69 6d 70 system.and.a.licensee.cannot.imp
5e720 6f 73 65 20 74 68 61 74 20 63 68 6f 69 63 65 2e 0a 0a 54 68 69 73 20 73 65 63 74 69 6f 6e 20 69 ose.that.choice...This.section.i
5e740 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 6d 61 6b 65 20 74 68 6f 72 6f 75 67 68 6c 79 20 63 6c s.intended.to.make.thoroughly.cl
5e760 65 61 72 20 77 68 61 74 20 69 73 20 62 65 6c 69 65 76 65 64 20 74 6f 0a 62 65 20 61 20 63 6f 6e ear.what.is.believed.to.be.a.con
5e780 73 65 71 75 65 6e 63 65 20 6f 66 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 69 73 20 4c 69 63 sequence.of.the.rest.of.this.Lic
5e7a0 65 6e 73 65 2e 0a 0a 20 20 38 2e 20 49 66 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 ense.....8..If.the.distribution.
5e7c0 61 6e 64 2f 6f 72 20 75 73 65 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 73 20 72 65 73 and/or.use.of.the.Program.is.res
5e7e0 74 72 69 63 74 65 64 20 69 6e 0a 63 65 72 74 61 69 6e 20 63 6f 75 6e 74 72 69 65 73 20 65 69 74 tricted.in.certain.countries.eit
5e800 68 65 72 20 62 79 20 70 61 74 65 6e 74 73 20 6f 72 20 62 79 20 63 6f 70 79 72 69 67 68 74 65 64 her.by.patents.or.by.copyrighted
5e820 20 69 6e 74 65 72 66 61 63 65 73 2c 20 74 68 65 0a 6f 72 69 67 69 6e 61 6c 20 63 6f 70 79 72 69 .interfaces,.the.original.copyri
5e840 67 68 74 20 68 6f 6c 64 65 72 20 77 68 6f 20 70 6c 61 63 65 73 20 74 68 65 20 50 72 6f 67 72 61 ght.holder.who.places.the.Progra
5e860 6d 20 75 6e 64 65 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 0a 6d 61 79 20 61 64 64 20 61 6e 20 m.under.this.License.may.add.an.
5e880 65 78 70 6c 69 63 69 74 20 67 65 6f 67 72 61 70 68 69 63 61 6c 20 64 69 73 74 72 69 62 75 74 69 explicit.geographical.distributi
5e8a0 6f 6e 20 6c 69 6d 69 74 61 74 69 6f 6e 20 65 78 63 6c 75 64 69 6e 67 0a 74 68 6f 73 65 20 63 6f on.limitation.excluding.those.co
5e8c0 75 6e 74 72 69 65 73 2c 20 73 6f 20 74 68 61 74 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 69 73 untries,.so.that.distribution.is
5e8e0 20 70 65 72 6d 69 74 74 65 64 20 6f 6e 6c 79 20 69 6e 20 6f 72 20 61 6d 6f 6e 67 0a 63 6f 75 6e .permitted.only.in.or.among.coun
5e900 74 72 69 65 73 20 6e 6f 74 20 74 68 75 73 20 65 78 63 6c 75 64 65 64 2e 20 20 49 6e 20 73 75 63 tries.not.thus.excluded...In.suc
5e920 68 20 63 61 73 65 2c 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 69 6e 63 6f 72 70 6f 72 61 74 65 h.case,.this.License.incorporate
5e940 73 0a 74 68 65 20 6c 69 6d 69 74 61 74 69 6f 6e 20 61 73 20 69 66 20 77 72 69 74 74 65 6e 20 69 s.the.limitation.as.if.written.i
5e960 6e 20 74 68 65 20 62 6f 64 79 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 39 n.the.body.of.this.License.....9
5e980 2e 20 54 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 20 6d ..The.Free.Software.Foundation.m
5e9a0 61 79 20 70 75 62 6c 69 73 68 20 72 65 76 69 73 65 64 20 61 6e 64 2f 6f 72 20 6e 65 77 20 76 65 ay.publish.revised.and/or.new.ve
5e9c0 72 73 69 6f 6e 73 0a 6f 66 20 74 68 65 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 rsions.of.the.General.Public.Lic
5e9e0 65 6e 73 65 20 66 72 6f 6d 20 74 69 6d 65 20 74 6f 20 74 69 6d 65 2e 20 20 53 75 63 68 20 6e 65 ense.from.time.to.time...Such.ne
5ea00 77 20 76 65 72 73 69 6f 6e 73 20 77 69 6c 6c 0a 62 65 20 73 69 6d 69 6c 61 72 20 69 6e 20 73 70 w.versions.will.be.similar.in.sp
5ea20 69 72 69 74 20 74 6f 20 74 68 65 20 70 72 65 73 65 6e 74 20 76 65 72 73 69 6f 6e 2c 20 62 75 74 irit.to.the.present.version,.but
5ea40 20 6d 61 79 20 64 69 66 66 65 72 20 69 6e 20 64 65 74 61 69 6c 20 74 6f 0a 61 64 64 72 65 73 73 .may.differ.in.detail.to.address
5ea60 20 6e 65 77 20 70 72 6f 62 6c 65 6d 73 20 6f 72 20 63 6f 6e 63 65 72 6e 73 2e 0a 0a 45 61 63 68 .new.problems.or.concerns...Each
5ea80 20 76 65 72 73 69 6f 6e 20 69 73 20 67 69 76 65 6e 20 61 20 64 69 73 74 69 6e 67 75 69 73 68 69 .version.is.given.a.distinguishi
5eaa0 6e 67 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 2e 20 20 49 66 20 74 68 65 20 50 72 6f 67 72 ng.version.number...If.the.Progr
5eac0 61 6d 0a 73 70 65 63 69 66 69 65 73 20 61 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 am.specifies.a.version.number.of
5eae0 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 77 68 69 63 68 20 61 70 70 6c 69 65 73 20 74 6f 20 69 .this.License.which.applies.to.i
5eb00 74 20 61 6e 64 20 22 61 6e 79 0a 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 22 2c 20 79 6f 75 20 68 t.and."any.later.version",.you.h
5eb20 61 76 65 20 74 68 65 20 6f 70 74 69 6f 6e 20 6f 66 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 65 20 ave.the.option.of.following.the.
5eb40 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 0a 65 69 74 68 65 72 20 6f 66 20 74 terms.and.conditions.either.of.t
5eb60 68 61 74 20 76 65 72 73 69 6f 6e 20 6f 72 20 6f 66 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 hat.version.or.of.any.later.vers
5eb80 69 6f 6e 20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65 20 46 72 65 65 0a 53 6f 66 74 77 61 ion.published.by.the.Free.Softwa
5eba0 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2e 20 20 49 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 64 re.Foundation...If.the.Program.d
5ebc0 6f 65 73 20 6e 6f 74 20 73 70 65 63 69 66 79 20 61 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 oes.not.specify.a.version.number
5ebe0 20 6f 66 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 79 6f 75 20 6d 61 79 20 63 68 6f 6f 73 65 .of.this.License,.you.may.choose
5ec00 20 61 6e 79 20 76 65 72 73 69 6f 6e 20 65 76 65 72 20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 .any.version.ever.published.by.t
5ec20 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 0a 46 6f 75 6e 64 61 74 69 6f 6e 2e 0a 0a 20 20 he.Free.Software.Foundation.....
5ec40 31 30 2e 20 49 66 20 79 6f 75 20 77 69 73 68 20 74 6f 20 69 6e 63 6f 72 70 6f 72 61 74 65 20 70 10..If.you.wish.to.incorporate.p
5ec60 61 72 74 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 6e 74 6f 20 6f 74 68 65 72 20 66 arts.of.the.Program.into.other.f
5ec80 72 65 65 0a 70 72 6f 67 72 61 6d 73 20 77 68 6f 73 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 ree.programs.whose.distribution.
5eca0 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 64 69 66 66 65 72 65 6e 74 2c 20 77 72 69 74 65 20 conditions.are.different,.write.
5ecc0 74 6f 20 74 68 65 20 61 75 74 68 6f 72 0a 74 6f 20 61 73 6b 20 66 6f 72 20 70 65 72 6d 69 73 73 to.the.author.to.ask.for.permiss
5ece0 69 6f 6e 2e 20 20 46 6f 72 20 73 6f 66 74 77 61 72 65 20 77 68 69 63 68 20 69 73 20 63 6f 70 79 ion...For.software.which.is.copy
5ed00 72 69 67 68 74 65 64 20 62 79 20 74 68 65 20 46 72 65 65 0a 53 6f 66 74 77 61 72 65 20 46 6f 75 righted.by.the.Free.Software.Fou
5ed20 6e 64 61 74 69 6f 6e 2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 ndation,.write.to.the.Free.Softw
5ed40 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 77 65 20 73 6f 6d 65 74 69 6d 65 73 0a 6d 61 6b are.Foundation;.we.sometimes.mak
5ed60 65 20 65 78 63 65 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 69 73 2e 20 20 4f 75 72 20 64 65 63 69 e.exceptions.for.this...Our.deci
5ed80 73 69 6f 6e 20 77 69 6c 6c 20 62 65 20 67 75 69 64 65 64 20 62 79 20 74 68 65 20 74 77 6f 20 67 sion.will.be.guided.by.the.two.g
5eda0 6f 61 6c 73 0a 6f 66 20 70 72 65 73 65 72 76 69 6e 67 20 74 68 65 20 66 72 65 65 20 73 74 61 74 oals.of.preserving.the.free.stat
5edc0 75 73 20 6f 66 20 61 6c 6c 20 64 65 72 69 76 61 74 69 76 65 73 20 6f 66 20 6f 75 72 20 66 72 65 us.of.all.derivatives.of.our.fre
5ede0 65 20 73 6f 66 74 77 61 72 65 20 61 6e 64 0a 6f 66 20 70 72 6f 6d 6f 74 69 6e 67 20 74 68 65 20 e.software.and.of.promoting.the.
5ee00 73 68 61 72 69 6e 67 20 61 6e 64 20 72 65 75 73 65 20 6f 66 20 73 6f 66 74 77 61 72 65 20 67 65 sharing.and.reuse.of.software.ge
5ee20 6e 65 72 61 6c 6c 79 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nerally.........................
5ee40 20 20 20 20 20 20 4e 4f 20 57 41 52 52 41 4e 54 59 0a 0a 20 20 31 31 2e 20 42 45 43 41 55 53 45 ......NO.WARRANTY....11..BECAUSE
5ee60 20 54 48 45 20 50 52 4f 47 52 41 4d 20 49 53 20 4c 49 43 45 4e 53 45 44 20 46 52 45 45 20 4f 46 .THE.PROGRAM.IS.LICENSED.FREE.OF
5ee80 20 43 48 41 52 47 45 2c 20 54 48 45 52 45 20 49 53 20 4e 4f 20 57 41 52 52 41 4e 54 59 0a 46 4f .CHARGE,.THERE.IS.NO.WARRANTY.FO
5eea0 52 20 54 48 45 20 50 52 4f 47 52 41 4d 2c 20 54 4f 20 54 48 45 20 45 58 54 45 4e 54 20 50 45 52 R.THE.PROGRAM,.TO.THE.EXTENT.PER
5eec0 4d 49 54 54 45 44 20 42 59 20 41 50 50 4c 49 43 41 42 4c 45 20 4c 41 57 2e 20 20 45 58 43 45 50 MITTED.BY.APPLICABLE.LAW...EXCEP
5eee0 54 20 57 48 45 4e 0a 4f 54 48 45 52 57 49 53 45 20 53 54 41 54 45 44 20 49 4e 20 57 52 49 54 49 T.WHEN.OTHERWISE.STATED.IN.WRITI
5ef00 4e 47 20 54 48 45 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 41 4e 44 2f 4f 52 20 NG.THE.COPYRIGHT.HOLDERS.AND/OR.
5ef20 4f 54 48 45 52 20 50 41 52 54 49 45 53 0a 50 52 4f 56 49 44 45 20 54 48 45 20 50 52 4f 47 52 41 OTHER.PARTIES.PROVIDE.THE.PROGRA
5ef40 4d 20 22 41 53 20 49 53 22 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e M."AS.IS".WITHOUT.WARRANTY.OF.AN
5ef60 59 20 4b 49 4e 44 2c 20 45 49 54 48 45 52 20 45 58 50 52 45 53 53 45 44 0a 4f 52 20 49 4d 50 4c Y.KIND,.EITHER.EXPRESSED.OR.IMPL
5ef80 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 IED,.INCLUDING,.BUT.NOT.LIMITED.
5efa0 54 4f 2c 20 54 48 45 20 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 0a 4d 45 TO,.THE.IMPLIED.WARRANTIES.OF.ME
5efc0 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 41 4e 44 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 RCHANTABILITY.AND.FITNESS.FOR.A.
5efe0 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 54 48 45 20 45 4e 54 49 52 45 20 PARTICULAR.PURPOSE...THE.ENTIRE.
5f000 52 49 53 4b 20 41 53 0a 54 4f 20 54 48 45 20 51 55 41 4c 49 54 59 20 41 4e 44 20 50 45 52 46 4f RISK.AS.TO.THE.QUALITY.AND.PERFO
5f020 52 4d 41 4e 43 45 20 4f 46 20 54 48 45 20 50 52 4f 47 52 41 4d 20 49 53 20 57 49 54 48 20 59 4f RMANCE.OF.THE.PROGRAM.IS.WITH.YO
5f040 55 2e 20 20 53 48 4f 55 4c 44 20 54 48 45 0a 50 52 4f 47 52 41 4d 20 50 52 4f 56 45 20 44 45 46 U...SHOULD.THE.PROGRAM.PROVE.DEF
5f060 45 43 54 49 56 45 2c 20 59 4f 55 20 41 53 53 55 4d 45 20 54 48 45 20 43 4f 53 54 20 4f 46 20 41 ECTIVE,.YOU.ASSUME.THE.COST.OF.A
5f080 4c 4c 20 4e 45 43 45 53 53 41 52 59 20 53 45 52 56 49 43 49 4e 47 2c 0a 52 45 50 41 49 52 20 4f LL.NECESSARY.SERVICING,.REPAIR.O
5f0a0 52 20 43 4f 52 52 45 43 54 49 4f 4e 2e 0a 0a 20 20 31 32 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 R.CORRECTION.....12..IN.NO.EVENT
5f0c0 20 55 4e 4c 45 53 53 20 52 45 51 55 49 52 45 44 20 42 59 20 41 50 50 4c 49 43 41 42 4c 45 20 4c .UNLESS.REQUIRED.BY.APPLICABLE.L
5f0e0 41 57 20 4f 52 20 41 47 52 45 45 44 20 54 4f 20 49 4e 20 57 52 49 54 49 4e 47 0a 57 49 4c 4c 20 AW.OR.AGREED.TO.IN.WRITING.WILL.
5f100 41 4e 59 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 2c 20 4f 52 20 41 4e 59 20 4f 54 48 ANY.COPYRIGHT.HOLDER,.OR.ANY.OTH
5f120 45 52 20 50 41 52 54 59 20 57 48 4f 20 4d 41 59 20 4d 4f 44 49 46 59 20 41 4e 44 2f 4f 52 0a 52 ER.PARTY.WHO.MAY.MODIFY.AND/OR.R
5f140 45 44 49 53 54 52 49 42 55 54 45 20 54 48 45 20 50 52 4f 47 52 41 4d 20 41 53 20 50 45 52 4d 49 EDISTRIBUTE.THE.PROGRAM.AS.PERMI
5f160 54 54 45 44 20 41 42 4f 56 45 2c 20 42 45 20 4c 49 41 42 4c 45 20 54 4f 20 59 4f 55 20 46 4f 52 TTED.ABOVE,.BE.LIABLE.TO.YOU.FOR
5f180 20 44 41 4d 41 47 45 53 2c 0a 49 4e 43 4c 55 44 49 4e 47 20 41 4e 59 20 47 45 4e 45 52 41 4c 2c .DAMAGES,.INCLUDING.ANY.GENERAL,
5f1a0 20 53 50 45 43 49 41 4c 2c 20 49 4e 43 49 44 45 4e 54 41 4c 20 4f 52 20 43 4f 4e 53 45 51 55 45 .SPECIAL,.INCIDENTAL.OR.CONSEQUE
5f1c0 4e 54 49 41 4c 20 44 41 4d 41 47 45 53 20 41 52 49 53 49 4e 47 0a 4f 55 54 20 4f 46 20 54 48 45 NTIAL.DAMAGES.ARISING.OUT.OF.THE
5f1e0 20 55 53 45 20 4f 52 20 49 4e 41 42 49 4c 49 54 59 20 54 4f 20 55 53 45 20 54 48 45 20 50 52 4f .USE.OR.INABILITY.TO.USE.THE.PRO
5f200 47 52 41 4d 20 28 49 4e 43 4c 55 44 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 0a GRAM.(INCLUDING.BUT.NOT.LIMITED.
5f220 54 4f 20 4c 4f 53 53 20 4f 46 20 44 41 54 41 20 4f 52 20 44 41 54 41 20 42 45 49 4e 47 20 52 45 TO.LOSS.OF.DATA.OR.DATA.BEING.RE
5f240 4e 44 45 52 45 44 20 49 4e 41 43 43 55 52 41 54 45 20 4f 52 20 4c 4f 53 53 45 53 20 53 55 53 54 NDERED.INACCURATE.OR.LOSSES.SUST
5f260 41 49 4e 45 44 20 42 59 0a 59 4f 55 20 4f 52 20 54 48 49 52 44 20 50 41 52 54 49 45 53 20 4f 52 AINED.BY.YOU.OR.THIRD.PARTIES.OR
5f280 20 41 20 46 41 49 4c 55 52 45 20 4f 46 20 54 48 45 20 50 52 4f 47 52 41 4d 20 54 4f 20 4f 50 45 .A.FAILURE.OF.THE.PROGRAM.TO.OPE
5f2a0 52 41 54 45 20 57 49 54 48 20 41 4e 59 20 4f 54 48 45 52 0a 50 52 4f 47 52 41 4d 53 29 2c 20 45 RATE.WITH.ANY.OTHER.PROGRAMS),.E
5f2c0 56 45 4e 20 49 46 20 53 55 43 48 20 48 4f 4c 44 45 52 20 4f 52 20 4f 54 48 45 52 20 50 41 52 54 VEN.IF.SUCH.HOLDER.OR.OTHER.PART
5f2e0 59 20 48 41 53 20 42 45 45 4e 20 41 44 56 49 53 45 44 20 4f 46 20 54 48 45 0a 50 4f 53 53 49 42 Y.HAS.BEEN.ADVISED.OF.THE.POSSIB
5f300 49 4c 49 54 59 20 4f 46 20 53 55 43 48 20 44 41 4d 41 47 45 53 2e 0a 0a 20 20 20 20 20 20 20 20 ILITY.OF.SUCH.DAMAGES...........
5f320 20 20 20 20 20 20 20 20 20 20 20 20 20 45 4e 44 20 4f 46 20 54 45 52 4d 53 20 41 4e 44 20 43 4f .............END.OF.TERMS.AND.CO
5f340 4e 44 49 54 49 4f 4e 53 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 48 6f 77 20 74 6f 20 41 70 70 NDITIONS..............How.to.App
5f360 6c 79 20 54 68 65 73 65 20 54 65 72 6d 73 20 74 6f 20 59 6f 75 72 20 4e 65 77 20 50 72 6f 67 72 ly.These.Terms.to.Your.New.Progr
5f380 61 6d 73 0a 0a 20 20 49 66 20 79 6f 75 20 64 65 76 65 6c 6f 70 20 61 20 6e 65 77 20 70 72 6f 67 ams....If.you.develop.a.new.prog
5f3a0 72 61 6d 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 20 69 74 20 74 6f 20 62 65 20 6f 66 20 74 68 ram,.and.you.want.it.to.be.of.th
5f3c0 65 20 67 72 65 61 74 65 73 74 0a 70 6f 73 73 69 62 6c 65 20 75 73 65 20 74 6f 20 74 68 65 20 70 e.greatest.possible.use.to.the.p
5f3e0 75 62 6c 69 63 2c 20 74 68 65 20 62 65 73 74 20 77 61 79 20 74 6f 20 61 63 68 69 65 76 65 20 74 ublic,.the.best.way.to.achieve.t
5f400 68 69 73 20 69 73 20 74 6f 20 6d 61 6b 65 20 69 74 0a 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 his.is.to.make.it.free.software.
5f420 77 68 69 63 68 20 65 76 65 72 79 6f 6e 65 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 which.everyone.can.redistribute.
5f440 61 6e 64 20 63 68 61 6e 67 65 20 75 6e 64 65 72 20 74 68 65 73 65 20 74 65 72 6d 73 2e 0a 0a 20 and.change.under.these.terms....
5f460 20 54 6f 20 64 6f 20 73 6f 2c 20 61 74 74 61 63 68 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 .To.do.so,.attach.the.following.
5f480 6e 6f 74 69 63 65 73 20 74 6f 20 74 68 65 20 70 72 6f 67 72 61 6d 2e 20 20 49 74 20 69 73 20 73 notices.to.the.program...It.is.s
5f4a0 61 66 65 73 74 0a 74 6f 20 61 74 74 61 63 68 20 74 68 65 6d 20 74 6f 20 74 68 65 20 73 74 61 72 afest.to.attach.them.to.the.star
5f4c0 74 20 6f 66 20 65 61 63 68 20 73 6f 75 72 63 65 20 66 69 6c 65 20 74 6f 20 6d 6f 73 74 20 65 66 t.of.each.source.file.to.most.ef
5f4e0 66 65 63 74 69 76 65 6c 79 0a 63 6f 6e 76 65 79 20 74 68 65 20 65 78 63 6c 75 73 69 6f 6e 20 6f fectively.convey.the.exclusion.o
5f500 66 20 77 61 72 72 61 6e 74 79 3b 20 61 6e 64 20 65 61 63 68 20 66 69 6c 65 20 73 68 6f 75 6c 64 f.warranty;.and.each.file.should
5f520 20 68 61 76 65 20 61 74 20 6c 65 61 73 74 0a 74 68 65 20 22 63 6f 70 79 72 69 67 68 74 22 20 6c .have.at.least.the."copyright".l
5f540 69 6e 65 20 61 6e 64 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 77 68 65 72 65 20 74 68 65 20 66 ine.and.a.pointer.to.where.the.f
5f560 75 6c 6c 20 6e 6f 74 69 63 65 20 69 73 20 66 6f 75 6e 64 2e 0a 0a 20 20 20 20 3c 6f 6e 65 20 6c ull.notice.is.found.......<one.l
5f580 69 6e 65 20 74 6f 20 67 69 76 65 20 74 68 65 20 70 72 6f 67 72 61 6d 27 73 20 6e 61 6d 65 20 61 ine.to.give.the.program's.name.a
5f5a0 6e 64 20 61 20 62 72 69 65 66 20 69 64 65 61 20 6f 66 20 77 68 61 74 20 69 74 20 64 6f 65 73 2e nd.a.brief.idea.of.what.it.does.
5f5c0 3e 0a 20 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 3c 79 65 61 72 3e 20 20 3c 6e 61 6d >.....Copyright.(C).<year>..<nam
5f5e0 65 20 6f 66 20 61 75 74 68 6f 72 3e 0a 0a 20 20 20 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 e.of.author>......This.program.i
5f600 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 s.free.software:.you.can.redistr
5f620 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 20 20 20 69 74 20 75 6e ibute.it.and/or.modify.....it.un
5f640 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c der.the.terms.of.the.GNU.General
5f660 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64 20 62 79 0a .Public.License.as.published.by.
5f680 20 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e ....the.Free.Software.Foundation
5f6a0 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 ,.either.version.2.of.the.Licens
5f6c0 65 2c 20 6f 72 0a 20 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c e,.or.....(at.your.option).any.l
5f6e0 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 ater.version.......This.program.
5f700 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 is.distributed.in.the.hope.that.
5f720 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 20 62 75 74 20 57 49 54 48 4f it.will.be.useful,.....but.WITHO
5f740 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 UT.ANY.WARRANTY;.without.even.th
5f760 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 20 4d 45 52 43 48 41 e.implied.warranty.of.....MERCHA
5f780 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 NTABILITY.or.FITNESS.FOR.A.PARTI
5f7a0 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 20 47 4e 55 20 CULAR.PURPOSE...See.the.....GNU.
5f7c0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 General.Public.License.for.more.
5f7e0 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 details.......You.should.have.re
5f800 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
5f820 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 .Public.License.....along.with.t
5f840 68 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a his.program...If.not,.see.<http:
5f860 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 41 6c 73 6f 20 //www.gnu.org/licenses/>...Also.
5f880 61 64 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 68 6f 77 20 74 6f 20 63 6f 6e 74 61 63 add.information.on.how.to.contac
5f8a0 74 20 79 6f 75 20 62 79 20 65 6c 65 63 74 72 6f 6e 69 63 20 61 6e 64 20 70 61 70 65 72 20 6d 61 t.you.by.electronic.and.paper.ma
5f8c0 69 6c 2e 0a 0a 49 66 20 74 68 65 20 70 72 6f 67 72 61 6d 20 69 73 20 69 6e 74 65 72 61 63 74 69 il...If.the.program.is.interacti
5f8e0 76 65 2c 20 6d 61 6b 65 20 69 74 20 6f 75 74 70 75 74 20 61 20 73 68 6f 72 74 20 6e 6f 74 69 63 ve,.make.it.output.a.short.notic
5f900 65 20 6c 69 6b 65 20 74 68 69 73 0a 77 68 65 6e 20 69 74 20 73 74 61 72 74 73 20 69 6e 20 61 6e e.like.this.when.it.starts.in.an
5f920 20 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f 64 65 3a 0a 0a 20 20 20 20 47 6e 6f 6d 6f 76 69 73 .interactive.mode:......Gnomovis
5f940 69 6f 6e 20 76 65 72 73 69 6f 6e 20 36 39 2c 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 3c 79 ion.version.69,.Copyright.(C).<y
5f960 65 61 72 3e 20 20 3c 6e 61 6d 65 20 6f 66 20 61 75 74 68 6f 72 3e 0a 20 20 20 20 47 6e 6f 6d 6f ear>..<name.of.author>.....Gnomo
5f980 76 69 73 69 6f 6e 20 63 6f 6d 65 73 20 77 69 74 68 20 41 42 53 4f 4c 55 54 45 4c 59 20 4e 4f 20 vision.comes.with.ABSOLUTELY.NO.
5f9a0 57 41 52 52 41 4e 54 59 3b 20 66 6f 72 20 64 65 74 61 69 6c 73 20 74 79 70 65 20 60 73 68 6f 77 WARRANTY;.for.details.type.`show
5f9c0 20 77 27 2e 0a 20 20 20 20 54 68 69 73 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 2c 20 .w'......This.is.free.software,.
5f9e0 61 6e 64 20 79 6f 75 20 61 72 65 20 77 65 6c 63 6f 6d 65 20 74 6f 20 72 65 64 69 73 74 72 69 62 and.you.are.welcome.to.redistrib
5fa00 75 74 65 20 69 74 0a 20 20 20 20 75 6e 64 65 72 20 63 65 72 74 61 69 6e 20 63 6f 6e 64 69 74 69 ute.it.....under.certain.conditi
5fa20 6f 6e 73 3b 20 74 79 70 65 20 60 73 68 6f 77 20 63 27 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 0a ons;.type.`show.c'.for.details..
5fa40 0a 54 68 65 20 68 79 70 6f 74 68 65 74 69 63 61 6c 20 63 6f 6d 6d 61 6e 64 73 20 60 73 68 6f 77 .The.hypothetical.commands.`show
5fa60 20 77 27 20 61 6e 64 20 60 73 68 6f 77 20 63 27 20 73 68 6f 75 6c 64 20 73 68 6f 77 20 74 68 65 .w'.and.`show.c'.should.show.the
5fa80 20 61 70 70 72 6f 70 72 69 61 74 65 0a 70 61 72 74 73 20 6f 66 20 74 68 65 20 47 65 6e 65 72 61 .appropriate.parts.of.the.Genera
5faa0 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 2e 20 20 4f 66 20 63 6f 75 72 73 65 2c 20 74 68 l.Public.License...Of.course,.th
5fac0 65 20 63 6f 6d 6d 61 6e 64 73 20 79 6f 75 20 75 73 65 20 6d 61 79 0a 62 65 20 63 61 6c 6c 65 64 e.commands.you.use.may.be.called
5fae0 20 73 6f 6d 65 74 68 69 6e 67 20 6f 74 68 65 72 20 74 68 61 6e 20 60 73 68 6f 77 20 77 27 20 61 .something.other.than.`show.w'.a
5fb00 6e 64 20 60 73 68 6f 77 20 63 27 3b 20 74 68 65 79 20 63 6f 75 6c 64 20 65 76 65 6e 20 62 65 0a nd.`show.c';.they.could.even.be.
5fb20 6d 6f 75 73 65 2d 63 6c 69 63 6b 73 20 6f 72 20 6d 65 6e 75 20 69 74 65 6d 73 2d 2d 77 68 61 74 mouse-clicks.or.menu.items--what
5fb40 65 76 65 72 20 73 75 69 74 73 20 79 6f 75 72 20 70 72 6f 67 72 61 6d 2e 0a 0a 59 6f 75 20 73 68 ever.suits.your.program...You.sh
5fb60 6f 75 6c 64 20 61 6c 73 6f 20 67 65 74 20 79 6f 75 72 20 65 6d 70 6c 6f 79 65 72 20 28 69 66 20 ould.also.get.your.employer.(if.
5fb80 79 6f 75 20 77 6f 72 6b 20 61 73 20 61 20 70 72 6f 67 72 61 6d 6d 65 72 29 20 6f 72 20 79 6f 75 you.work.as.a.programmer).or.you
5fba0 72 0a 73 63 68 6f 6f 6c 2c 20 69 66 20 61 6e 79 2c 20 74 6f 20 73 69 67 6e 20 61 20 22 63 6f 70 r.school,.if.any,.to.sign.a."cop
5fbc0 79 72 69 67 68 74 20 64 69 73 63 6c 61 69 6d 65 72 22 20 66 6f 72 20 74 68 65 20 70 72 6f 67 72 yright.disclaimer".for.the.progr
5fbe0 61 6d 2c 20 69 66 0a 6e 65 63 65 73 73 61 72 79 2e 20 20 48 65 72 65 20 69 73 20 61 20 73 61 6d am,.if.necessary...Here.is.a.sam
5fc00 70 6c 65 3b 20 61 6c 74 65 72 20 74 68 65 20 6e 61 6d 65 73 3a 0a 0a 20 20 59 6f 79 6f 64 79 6e ple;.alter.the.names:....Yoyodyn
5fc20 65 2c 20 49 6e 63 2e 2c 20 68 65 72 65 62 79 20 64 69 73 63 6c 61 69 6d 73 20 61 6c 6c 20 63 6f e,.Inc.,.hereby.disclaims.all.co
5fc40 70 79 72 69 67 68 74 20 69 6e 74 65 72 65 73 74 20 69 6e 20 74 68 65 20 70 72 6f 67 72 61 6d 0a pyright.interest.in.the.program.
5fc60 20 20 60 47 6e 6f 6d 6f 76 69 73 69 6f 6e 27 20 28 77 68 69 63 68 20 6d 61 6b 65 73 20 70 61 73 ..`Gnomovision'.(which.makes.pas
5fc80 73 65 73 20 61 74 20 63 6f 6d 70 69 6c 65 72 73 29 20 77 72 69 74 74 65 6e 20 62 79 20 4a 61 6d ses.at.compilers).written.by.Jam
5fca0 65 73 20 48 61 63 6b 65 72 2e 0a 0a 20 20 3c 73 69 67 6e 61 74 75 72 65 20 6f 66 20 54 79 20 43 es.Hacker.....<signature.of.Ty.C
5fcc0 6f 6f 6e 3e 2c 20 31 20 41 70 72 69 6c 20 31 39 38 39 0a 20 20 54 79 20 43 6f 6f 6e 2c 20 50 72 oon>,.1.April.1989...Ty.Coon,.Pr
5fce0 65 73 69 64 65 6e 74 20 6f 66 20 56 69 63 65 0a 0a 54 68 69 73 20 47 65 6e 65 72 61 6c 20 50 75 esident.of.Vice..This.General.Pu
5fd00 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 64 6f 65 73 20 6e 6f 74 20 70 65 72 6d 69 74 20 69 6e 63 blic.License.does.not.permit.inc
5fd20 6f 72 70 6f 72 61 74 69 6e 67 20 79 6f 75 72 20 70 72 6f 67 72 61 6d 20 69 6e 74 6f 0a 70 72 6f orporating.your.program.into.pro
5fd40 70 72 69 65 74 61 72 79 20 70 72 6f 67 72 61 6d 73 2e 20 20 49 66 20 79 6f 75 72 20 70 72 6f 67 prietary.programs...If.your.prog
5fd60 72 61 6d 20 69 73 20 61 20 73 75 62 72 6f 75 74 69 6e 65 20 6c 69 62 72 61 72 79 2c 20 79 6f 75 ram.is.a.subroutine.library,.you
5fd80 20 6d 61 79 0a 63 6f 6e 73 69 64 65 72 20 69 74 20 6d 6f 72 65 20 75 73 65 66 75 6c 20 74 6f 20 .may.consider.it.more.useful.to.
5fda0 70 65 72 6d 69 74 20 6c 69 6e 6b 69 6e 67 20 70 72 6f 70 72 69 65 74 61 72 79 20 61 70 70 6c 69 permit.linking.proprietary.appli
5fdc0 63 61 74 69 6f 6e 73 20 77 69 74 68 20 74 68 65 0a 6c 69 62 72 61 72 79 2e 20 20 49 66 20 74 68 cations.with.the.library...If.th
5fde0 69 73 20 69 73 20 77 68 61 74 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 64 6f 2c 20 75 73 65 20 74 is.is.what.you.want.to.do,.use.t
5fe00 68 65 20 47 4e 55 20 4c 65 73 73 65 72 20 47 65 6e 65 72 61 6c 0a 50 75 62 6c 69 63 20 4c 69 63 he.GNU.Lesser.General.Public.Lic
5fe20 65 6e 73 65 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 20 20 ense.instead.of.this.License....
5fe40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 4e 55 20 47 45 4e 45 52 41 4c 20 50 55 ..................GNU.GENERAL.PU
5fe60 42 4c 49 43 20 4c 49 43 45 4e 53 45 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 BLIC.LICENSE....................
5fe80 20 20 20 20 20 56 65 72 73 69 6f 6e 20 32 2c 20 4a 75 6e 65 20 31 39 39 31 0d 0a 0d 0a 20 43 6f .....Version.2,.June.1991.....Co
5fea0 70 79 72 69 67 68 74 20 28 43 29 20 31 39 38 39 2c 20 31 39 39 31 20 46 72 65 65 20 53 6f 66 74 pyright.(C).1989,.1991.Free.Soft
5fec0 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e 20 3c 68 74 74 70 3a 2f 2f 66 73 ware.Foundation,.Inc..<http://fs
5fee0 66 2e 6f 72 67 2f 3e 0d 0a 20 45 76 65 72 79 6f 6e 65 20 69 73 20 70 65 72 6d 69 74 74 65 64 20 f.org/>...Everyone.is.permitted.
5ff00 74 6f 20 63 6f 70 79 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 76 65 72 62 61 74 69 6d 20 to.copy.and.distribute.verbatim.
5ff20 63 6f 70 69 65 73 0d 0a 20 6f 66 20 74 68 69 73 20 6c 69 63 65 6e 73 65 20 64 6f 63 75 6d 65 6e copies...of.this.license.documen
5ff40 74 2c 20 62 75 74 20 63 68 61 6e 67 69 6e 67 20 69 74 20 69 73 20 6e 6f 74 20 61 6c 6c 6f 77 65 t,.but.changing.it.is.not.allowe
5ff60 64 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d...............................
5ff80 20 20 50 72 65 61 6d 62 6c 65 0d 0a 0d 0a 20 20 54 68 65 20 6c 69 63 65 6e 73 65 73 20 66 6f 72 ..Preamble......The.licenses.for
5ffa0 20 6d 6f 73 74 20 73 6f 66 74 77 61 72 65 20 61 72 65 20 64 65 73 69 67 6e 65 64 20 74 6f 20 74 .most.software.are.designed.to.t
5ffc0 61 6b 65 20 61 77 61 79 20 79 6f 75 72 0d 0a 66 72 65 65 64 6f 6d 20 74 6f 20 73 68 61 72 65 20 ake.away.your..freedom.to.share.
5ffe0 61 6e 64 20 63 68 61 6e 67 65 20 69 74 2e 20 20 42 79 20 63 6f 6e 74 72 61 73 74 2c 20 74 68 65 and.change.it...By.contrast,.the
60000 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 0d 0a 4c 69 63 65 6e 73 65 20 69 73 20 .GNU.General.Public..License.is.
60020 69 6e 74 65 6e 64 65 64 20 74 6f 20 67 75 61 72 61 6e 74 65 65 20 79 6f 75 72 20 66 72 65 65 64 intended.to.guarantee.your.freed
60040 6f 6d 20 74 6f 20 73 68 61 72 65 20 61 6e 64 20 63 68 61 6e 67 65 20 66 72 65 65 0d 0a 73 6f 66 om.to.share.and.change.free..sof
60060 74 77 61 72 65 2d 2d 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 73 6f 66 74 77 61 72 65 tware--to.make.sure.the.software
60080 20 69 73 20 66 72 65 65 20 66 6f 72 20 61 6c 6c 20 69 74 73 20 75 73 65 72 73 2e 20 20 54 68 69 .is.free.for.all.its.users...Thi
600a0 73 0d 0a 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 70 70 6c 69 65 s..General.Public.License.applie
600c0 73 20 74 6f 20 6d 6f 73 74 20 6f 66 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 0d 0a s.to.most.of.the.Free.Software..
600e0 46 6f 75 6e 64 61 74 69 6f 6e 27 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 74 6f 20 61 6e 79 Foundation's.software.and.to.any
60100 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d 20 77 68 6f 73 65 20 61 75 74 68 6f 72 73 20 63 6f 6d .other.program.whose.authors.com
60120 6d 69 74 20 74 6f 0d 0a 75 73 69 6e 67 20 69 74 2e 20 20 28 53 6f 6d 65 20 6f 74 68 65 72 20 46 mit.to..using.it...(Some.other.F
60140 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 20 73 6f 66 74 77 61 72 65 ree.Software.Foundation.software
60160 20 69 73 20 63 6f 76 65 72 65 64 20 62 79 0d 0a 74 68 65 20 47 4e 55 20 4c 65 73 73 65 72 20 47 .is.covered.by..the.GNU.Lesser.G
60180 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 69 6e 73 74 65 61 64 2e 29 20 eneral.Public.License.instead.).
601a0 20 59 6f 75 20 63 61 6e 20 61 70 70 6c 79 20 69 74 20 74 6f 0d 0a 79 6f 75 72 20 70 72 6f 67 72 .You.can.apply.it.to..your.progr
601c0 61 6d 73 2c 20 74 6f 6f 2e 0d 0a 0d 0a 20 20 57 68 65 6e 20 77 65 20 73 70 65 61 6b 20 6f 66 20 ams,.too.......When.we.speak.of.
601e0 66 72 65 65 20 73 6f 66 74 77 61 72 65 2c 20 77 65 20 61 72 65 20 72 65 66 65 72 72 69 6e 67 20 free.software,.we.are.referring.
60200 74 6f 20 66 72 65 65 64 6f 6d 2c 20 6e 6f 74 0d 0a 70 72 69 63 65 2e 20 20 4f 75 72 20 47 65 6e to.freedom,.not..price...Our.Gen
60220 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 73 20 61 72 65 20 64 65 73 69 67 6e 65 eral.Public.Licenses.are.designe
60240 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 79 6f 75 0d 0a 68 61 76 65 20 74 68 d.to.make.sure.that.you..have.th
60260 65 20 66 72 65 65 64 6f 6d 20 74 6f 20 64 69 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f e.freedom.to.distribute.copies.o
60280 66 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 28 61 6e 64 20 63 68 61 72 67 65 20 66 6f 72 0d f.free.software.(and.charge.for.
602a0 0a 74 68 69 73 20 73 65 72 76 69 63 65 20 69 66 20 79 6f 75 20 77 69 73 68 29 2c 20 74 68 61 74 .this.service.if.you.wish),.that
602c0 20 79 6f 75 20 72 65 63 65 69 76 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 72 20 63 61 6e 20 .you.receive.source.code.or.can.
602e0 67 65 74 20 69 74 0d 0a 69 66 20 79 6f 75 20 77 61 6e 74 20 69 74 2c 20 74 68 61 74 20 79 6f 75 get.it..if.you.want.it,.that.you
60300 20 63 61 6e 20 63 68 61 6e 67 65 20 74 68 65 20 73 6f 66 74 77 61 72 65 20 6f 72 20 75 73 65 20 .can.change.the.software.or.use.
60320 70 69 65 63 65 73 20 6f 66 20 69 74 0d 0a 69 6e 20 6e 65 77 20 66 72 65 65 20 70 72 6f 67 72 61 pieces.of.it..in.new.free.progra
60340 6d 73 3b 20 61 6e 64 20 74 68 61 74 20 79 6f 75 20 6b 6e 6f 77 20 79 6f 75 20 63 61 6e 20 64 6f ms;.and.that.you.know.you.can.do
60360 20 74 68 65 73 65 20 74 68 69 6e 67 73 2e 0d 0a 0d 0a 20 20 54 6f 20 70 72 6f 74 65 63 74 20 79 .these.things.......To.protect.y
60380 6f 75 72 20 72 69 67 68 74 73 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 6d 61 6b 65 20 72 65 73 74 our.rights,.we.need.to.make.rest
603a0 72 69 63 74 69 6f 6e 73 20 74 68 61 74 20 66 6f 72 62 69 64 0d 0a 61 6e 79 6f 6e 65 20 74 6f 20 rictions.that.forbid..anyone.to.
603c0 64 65 6e 79 20 79 6f 75 20 74 68 65 73 65 20 72 69 67 68 74 73 20 6f 72 20 74 6f 20 61 73 6b 20 deny.you.these.rights.or.to.ask.
603e0 79 6f 75 20 74 6f 20 73 75 72 72 65 6e 64 65 72 20 74 68 65 20 72 69 67 68 74 73 2e 0d 0a 54 68 you.to.surrender.the.rights...Th
60400 65 73 65 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 74 72 61 6e 73 6c 61 74 65 20 74 6f 20 63 65 ese.restrictions.translate.to.ce
60420 72 74 61 69 6e 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 20 66 6f 72 20 79 6f 75 20 69 rtain.responsibilities.for.you.i
60440 66 20 79 6f 75 0d 0a 64 69 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 f.you..distribute.copies.of.the.
60460 73 6f 66 74 77 61 72 65 2c 20 6f 72 20 69 66 20 79 6f 75 20 6d 6f 64 69 66 79 20 69 74 2e 0d 0a software,.or.if.you.modify.it...
60480 0d 0a 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 79 6f 75 20 64 69 73 74 72 69 62 75 ....For.example,.if.you.distribu
604a0 74 65 20 63 6f 70 69 65 73 20 6f 66 20 73 75 63 68 20 61 20 70 72 6f 67 72 61 6d 2c 20 77 68 65 te.copies.of.such.a.program,.whe
604c0 74 68 65 72 0d 0a 67 72 61 74 69 73 20 6f 72 20 66 6f 72 20 61 20 66 65 65 2c 20 79 6f 75 20 6d ther..gratis.or.for.a.fee,.you.m
604e0 75 73 74 20 67 69 76 65 20 74 68 65 20 72 65 63 69 70 69 65 6e 74 73 20 61 6c 6c 20 74 68 65 20 ust.give.the.recipients.all.the.
60500 72 69 67 68 74 73 20 74 68 61 74 0d 0a 79 6f 75 20 68 61 76 65 2e 20 20 59 6f 75 20 6d 75 73 74 rights.that..you.have...You.must
60520 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 74 68 65 79 2c 20 74 6f 6f 2c 20 72 65 63 65 69 .make.sure.that.they,.too,.recei
60540 76 65 20 6f 72 20 63 61 6e 20 67 65 74 20 74 68 65 0d 0a 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 ve.or.can.get.the..source.code..
60560 20 41 6e 64 20 79 6f 75 20 6d 75 73 74 20 73 68 6f 77 20 74 68 65 6d 20 74 68 65 73 65 20 74 65 .And.you.must.show.them.these.te
60580 72 6d 73 20 73 6f 20 74 68 65 79 20 6b 6e 6f 77 20 74 68 65 69 72 0d 0a 72 69 67 68 74 73 2e 0d rms.so.they.know.their..rights..
605a0 0a 0d 0a 20 20 57 65 20 70 72 6f 74 65 63 74 20 79 6f 75 72 20 72 69 67 68 74 73 20 77 69 74 68 .....We.protect.your.rights.with
605c0 20 74 77 6f 20 73 74 65 70 73 3a 20 28 31 29 20 63 6f 70 79 72 69 67 68 74 20 74 68 65 20 73 6f .two.steps:.(1).copyright.the.so
605e0 66 74 77 61 72 65 2c 20 61 6e 64 0d 0a 28 32 29 20 6f 66 66 65 72 20 79 6f 75 20 74 68 69 73 20 ftware,.and..(2).offer.you.this.
60600 6c 69 63 65 6e 73 65 20 77 68 69 63 68 20 67 69 76 65 73 20 79 6f 75 20 6c 65 67 61 6c 20 70 65 license.which.gives.you.legal.pe
60620 72 6d 69 73 73 69 6f 6e 20 74 6f 20 63 6f 70 79 2c 0d 0a 64 69 73 74 72 69 62 75 74 65 20 61 6e rmission.to.copy,..distribute.an
60640 64 2f 6f 72 20 6d 6f 64 69 66 79 20 74 68 65 20 73 6f 66 74 77 61 72 65 2e 0d 0a 0d 0a 20 20 41 d/or.modify.the.software.......A
60660 6c 73 6f 2c 20 66 6f 72 20 65 61 63 68 20 61 75 74 68 6f 72 27 73 20 70 72 6f 74 65 63 74 69 6f lso,.for.each.author's.protectio
60680 6e 20 61 6e 64 20 6f 75 72 73 2c 20 77 65 20 77 61 6e 74 20 74 6f 20 6d 61 6b 65 20 63 65 72 74 n.and.ours,.we.want.to.make.cert
606a0 61 69 6e 0d 0a 74 68 61 74 20 65 76 65 72 79 6f 6e 65 20 75 6e 64 65 72 73 74 61 6e 64 73 20 74 ain..that.everyone.understands.t
606c0 68 61 74 20 74 68 65 72 65 20 69 73 20 6e 6f 20 77 61 72 72 61 6e 74 79 20 66 6f 72 20 74 68 69 hat.there.is.no.warranty.for.thi
606e0 73 20 66 72 65 65 0d 0a 73 6f 66 74 77 61 72 65 2e 20 20 49 66 20 74 68 65 20 73 6f 66 74 77 61 s.free..software...If.the.softwa
60700 72 65 20 69 73 20 6d 6f 64 69 66 69 65 64 20 62 79 20 73 6f 6d 65 6f 6e 65 20 65 6c 73 65 20 61 re.is.modified.by.someone.else.a
60720 6e 64 20 70 61 73 73 65 64 20 6f 6e 2c 20 77 65 0d 0a 77 61 6e 74 20 69 74 73 20 72 65 63 69 70 nd.passed.on,.we..want.its.recip
60740 69 65 6e 74 73 20 74 6f 20 6b 6e 6f 77 20 74 68 61 74 20 77 68 61 74 20 74 68 65 79 20 68 61 76 ients.to.know.that.what.they.hav
60760 65 20 69 73 20 6e 6f 74 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 2c 20 73 6f 0d 0a 74 68 61 74 20 e.is.not.the.original,.so..that.
60780 61 6e 79 20 70 72 6f 62 6c 65 6d 73 20 69 6e 74 72 6f 64 75 63 65 64 20 62 79 20 6f 74 68 65 72 any.problems.introduced.by.other
607a0 73 20 77 69 6c 6c 20 6e 6f 74 20 72 65 66 6c 65 63 74 20 6f 6e 20 74 68 65 20 6f 72 69 67 69 6e s.will.not.reflect.on.the.origin
607c0 61 6c 0d 0a 61 75 74 68 6f 72 73 27 20 72 65 70 75 74 61 74 69 6f 6e 73 2e 0d 0a 0d 0a 20 20 46 al..authors'.reputations.......F
607e0 69 6e 61 6c 6c 79 2c 20 61 6e 79 20 66 72 65 65 20 70 72 6f 67 72 61 6d 20 69 73 20 74 68 72 65 inally,.any.free.program.is.thre
60800 61 74 65 6e 65 64 20 63 6f 6e 73 74 61 6e 74 6c 79 20 62 79 20 73 6f 66 74 77 61 72 65 0d 0a 70 atened.constantly.by.software..p
60820 61 74 65 6e 74 73 2e 20 20 57 65 20 77 69 73 68 20 74 6f 20 61 76 6f 69 64 20 74 68 65 20 64 61 atents...We.wish.to.avoid.the.da
60840 6e 67 65 72 20 74 68 61 74 20 72 65 64 69 73 74 72 69 62 75 74 6f 72 73 20 6f 66 20 61 20 66 72 nger.that.redistributors.of.a.fr
60860 65 65 0d 0a 70 72 6f 67 72 61 6d 20 77 69 6c 6c 20 69 6e 64 69 76 69 64 75 61 6c 6c 79 20 6f 62 ee..program.will.individually.ob
60880 74 61 69 6e 20 70 61 74 65 6e 74 20 6c 69 63 65 6e 73 65 73 2c 20 69 6e 20 65 66 66 65 63 74 20 tain.patent.licenses,.in.effect.
608a0 6d 61 6b 69 6e 67 20 74 68 65 0d 0a 70 72 6f 67 72 61 6d 20 70 72 6f 70 72 69 65 74 61 72 79 2e making.the..program.proprietary.
608c0 20 20 54 6f 20 70 72 65 76 65 6e 74 20 74 68 69 73 2c 20 77 65 20 68 61 76 65 20 6d 61 64 65 20 ..To.prevent.this,.we.have.made.
608e0 69 74 20 63 6c 65 61 72 20 74 68 61 74 20 61 6e 79 0d 0a 70 61 74 65 6e 74 20 6d 75 73 74 20 62 it.clear.that.any..patent.must.b
60900 65 20 6c 69 63 65 6e 73 65 64 20 66 6f 72 20 65 76 65 72 79 6f 6e 65 27 73 20 66 72 65 65 20 75 e.licensed.for.everyone's.free.u
60920 73 65 20 6f 72 20 6e 6f 74 20 6c 69 63 65 6e 73 65 64 20 61 74 20 61 6c 6c 2e 0d 0a 0d 0a 20 20 se.or.not.licensed.at.all.......
60940 54 68 65 20 70 72 65 63 69 73 65 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 The.precise.terms.and.conditions
60960 20 66 6f 72 20 63 6f 70 79 69 6e 67 2c 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 0d 0a .for.copying,.distribution.and..
60980 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 66 6f 6c 6c 6f 77 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 modification.follow.............
609a0 20 20 20 20 20 20 20 20 20 20 20 20 47 4e 55 20 47 45 4e 45 52 41 4c 20 50 55 42 4c 49 43 20 4c ............GNU.GENERAL.PUBLIC.L
609c0 49 43 45 4e 53 45 0d 0a 20 20 20 54 45 52 4d 53 20 41 4e 44 20 43 4f 4e 44 49 54 49 4f 4e 53 20 ICENSE.....TERMS.AND.CONDITIONS.
609e0 46 4f 52 20 43 4f 50 59 49 4e 47 2c 20 44 49 53 54 52 49 42 55 54 49 4f 4e 20 41 4e 44 20 4d 4f FOR.COPYING,.DISTRIBUTION.AND.MO
60a00 44 49 46 49 43 41 54 49 4f 4e 0d 0a 0d 0a 20 20 30 2e 20 54 68 69 73 20 4c 69 63 65 6e 73 65 20 DIFICATION......0..This.License.
60a20 61 70 70 6c 69 65 73 20 74 6f 20 61 6e 79 20 70 72 6f 67 72 61 6d 20 6f 72 20 6f 74 68 65 72 20 applies.to.any.program.or.other.
60a40 77 6f 72 6b 20 77 68 69 63 68 20 63 6f 6e 74 61 69 6e 73 0d 0a 61 20 6e 6f 74 69 63 65 20 70 6c work.which.contains..a.notice.pl
60a60 61 63 65 64 20 62 79 20 74 68 65 20 63 6f 70 79 72 69 67 68 74 20 68 6f 6c 64 65 72 20 73 61 79 aced.by.the.copyright.holder.say
60a80 69 6e 67 20 69 74 20 6d 61 79 20 62 65 20 64 69 73 74 72 69 62 75 74 65 64 0d 0a 75 6e 64 65 72 ing.it.may.be.distributed..under
60aa0 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 69 73 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 .the.terms.of.this.General.Publi
60ac0 63 20 4c 69 63 65 6e 73 65 2e 20 20 54 68 65 20 22 50 72 6f 67 72 61 6d 22 2c 20 62 65 6c 6f 77 c.License...The."Program",.below
60ae0 2c 0d 0a 72 65 66 65 72 73 20 74 6f 20 61 6e 79 20 73 75 63 68 20 70 72 6f 67 72 61 6d 20 6f 72 ,..refers.to.any.such.program.or
60b00 20 77 6f 72 6b 2c 20 61 6e 64 20 61 20 22 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 .work,.and.a."work.based.on.the.
60b20 50 72 6f 67 72 61 6d 22 0d 0a 6d 65 61 6e 73 20 65 69 74 68 65 72 20 74 68 65 20 50 72 6f 67 72 Program"..means.either.the.Progr
60b40 61 6d 20 6f 72 20 61 6e 79 20 64 65 72 69 76 61 74 69 76 65 20 77 6f 72 6b 20 75 6e 64 65 72 20 am.or.any.derivative.work.under.
60b60 63 6f 70 79 72 69 67 68 74 20 6c 61 77 3a 0d 0a 74 68 61 74 20 69 73 20 74 6f 20 73 61 79 2c 20 copyright.law:..that.is.to.say,.
60b80 61 20 77 6f 72 6b 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 a.work.containing.the.Program.or
60ba0 20 61 20 70 6f 72 74 69 6f 6e 20 6f 66 20 69 74 2c 0d 0a 65 69 74 68 65 72 20 76 65 72 62 61 74 .a.portion.of.it,..either.verbat
60bc0 69 6d 20 6f 72 20 77 69 74 68 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 61 6e 64 2f 6f 72 20 im.or.with.modifications.and/or.
60be0 74 72 61 6e 73 6c 61 74 65 64 20 69 6e 74 6f 20 61 6e 6f 74 68 65 72 0d 0a 6c 61 6e 67 75 61 67 translated.into.another..languag
60c00 65 2e 20 20 28 48 65 72 65 69 6e 61 66 74 65 72 2c 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 69 73 e...(Hereinafter,.translation.is
60c20 20 69 6e 63 6c 75 64 65 64 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 69 6e 0d .included.without.limitation.in.
60c40 0a 74 68 65 20 74 65 72 6d 20 22 6d 6f 64 69 66 69 63 61 74 69 6f 6e 22 2e 29 20 20 45 61 63 68 .the.term."modification".)..Each
60c60 20 6c 69 63 65 6e 73 65 65 20 69 73 20 61 64 64 72 65 73 73 65 64 20 61 73 20 22 79 6f 75 22 2e .licensee.is.addressed.as."you".
60c80 0d 0a 0d 0a 41 63 74 69 76 69 74 69 65 73 20 6f 74 68 65 72 20 74 68 61 6e 20 63 6f 70 79 69 6e ....Activities.other.than.copyin
60ca0 67 2c 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e g,.distribution.and.modification
60cc0 20 61 72 65 20 6e 6f 74 0d 0a 63 6f 76 65 72 65 64 20 62 79 20 74 68 69 73 20 4c 69 63 65 6e 73 .are.not..covered.by.this.Licens
60ce0 65 3b 20 74 68 65 79 20 61 72 65 20 6f 75 74 73 69 64 65 20 69 74 73 20 73 63 6f 70 65 2e 20 20 e;.they.are.outside.its.scope...
60d00 54 68 65 20 61 63 74 20 6f 66 0d 0a 72 75 6e 6e 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 The.act.of..running.the.Program.
60d20 69 73 20 6e 6f 74 20 72 65 73 74 72 69 63 74 65 64 2c 20 61 6e 64 20 74 68 65 20 6f 75 74 70 75 is.not.restricted,.and.the.outpu
60d40 74 20 66 72 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 0d 0a 69 73 20 63 6f 76 65 72 65 64 20 6f t.from.the.Program..is.covered.o
60d60 6e 6c 79 20 69 66 20 69 74 73 20 63 6f 6e 74 65 6e 74 73 20 63 6f 6e 73 74 69 74 75 74 65 20 61 nly.if.its.contents.constitute.a
60d80 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 0d 0a 50 72 6f 67 72 61 6d 20 28 69 6e 64 .work.based.on.the..Program.(ind
60da0 65 70 65 6e 64 65 6e 74 20 6f 66 20 68 61 76 69 6e 67 20 62 65 65 6e 20 6d 61 64 65 20 62 79 20 ependent.of.having.been.made.by.
60dc0 72 75 6e 6e 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 29 2e 0d 0a 57 68 65 74 68 65 72 20 74 running.the.Program)...Whether.t
60de0 68 61 74 20 69 73 20 74 72 75 65 20 64 65 70 65 6e 64 73 20 6f 6e 20 77 68 61 74 20 74 68 65 20 hat.is.true.depends.on.what.the.
60e00 50 72 6f 67 72 61 6d 20 64 6f 65 73 2e 0d 0a 0d 0a 20 20 31 2e 20 59 6f 75 20 6d 61 79 20 63 6f Program.does.......1..You.may.co
60e20 70 79 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 76 65 72 62 61 74 69 6d 20 63 6f 70 69 65 py.and.distribute.verbatim.copie
60e40 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 27 73 0d 0a 73 6f 75 72 63 65 20 63 6f 64 65 20 s.of.the.Program's..source.code.
60e60 61 73 20 79 6f 75 20 72 65 63 65 69 76 65 20 69 74 2c 20 69 6e 20 61 6e 79 20 6d 65 64 69 75 6d as.you.receive.it,.in.any.medium
60e80 2c 20 70 72 6f 76 69 64 65 64 20 74 68 61 74 20 79 6f 75 0d 0a 63 6f 6e 73 70 69 63 75 6f 75 73 ,.provided.that.you..conspicuous
60ea0 6c 79 20 61 6e 64 20 61 70 70 72 6f 70 72 69 61 74 65 6c 79 20 70 75 62 6c 69 73 68 20 6f 6e 20 ly.and.appropriately.publish.on.
60ec0 65 61 63 68 20 63 6f 70 79 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 0d 0a 63 6f 70 79 72 69 each.copy.an.appropriate..copyri
60ee0 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 20 64 69 73 63 6c 61 69 6d 65 72 20 6f 66 20 77 61 72 ght.notice.and.disclaimer.of.war
60f00 72 61 6e 74 79 3b 20 6b 65 65 70 20 69 6e 74 61 63 74 20 61 6c 6c 20 74 68 65 0d 0a 6e 6f 74 69 ranty;.keep.intact.all.the..noti
60f20 63 65 73 20 74 68 61 74 20 72 65 66 65 72 20 74 6f 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 61 ces.that.refer.to.this.License.a
60f40 6e 64 20 74 6f 20 74 68 65 20 61 62 73 65 6e 63 65 20 6f 66 20 61 6e 79 20 77 61 72 72 61 6e 74 nd.to.the.absence.of.any.warrant
60f60 79 3b 0d 0a 61 6e 64 20 67 69 76 65 20 61 6e 79 20 6f 74 68 65 72 20 72 65 63 69 70 69 65 6e 74 y;..and.give.any.other.recipient
60f80 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 61 20 63 6f 70 79 20 6f 66 20 74 68 69 73 20 s.of.the.Program.a.copy.of.this.
60fa0 4c 69 63 65 6e 73 65 0d 0a 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 50 72 6f 67 72 61 6d 2e License..along.with.the.Program.
60fc0 0d 0a 0d 0a 59 6f 75 20 6d 61 79 20 63 68 61 72 67 65 20 61 20 66 65 65 20 66 6f 72 20 74 68 65 ....You.may.charge.a.fee.for.the
60fe0 20 70 68 79 73 69 63 61 6c 20 61 63 74 20 6f 66 20 74 72 61 6e 73 66 65 72 72 69 6e 67 20 61 20 .physical.act.of.transferring.a.
61000 63 6f 70 79 2c 20 61 6e 64 0d 0a 79 6f 75 20 6d 61 79 20 61 74 20 79 6f 75 72 20 6f 70 74 69 6f copy,.and..you.may.at.your.optio
61020 6e 20 6f 66 66 65 72 20 77 61 72 72 61 6e 74 79 20 70 72 6f 74 65 63 74 69 6f 6e 20 69 6e 20 65 n.offer.warranty.protection.in.e
61040 78 63 68 61 6e 67 65 20 66 6f 72 20 61 20 66 65 65 2e 0d 0a 0d 0a 20 20 32 2e 20 59 6f 75 20 6d xchange.for.a.fee.......2..You.m
61060 61 79 20 6d 6f 64 69 66 79 20 79 6f 75 72 20 63 6f 70 79 20 6f 72 20 63 6f 70 69 65 73 20 6f 66 ay.modify.your.copy.or.copies.of
61080 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 6e 79 20 70 6f 72 74 69 6f 6e 0d 0a 6f 66 20 .the.Program.or.any.portion..of.
610a0 69 74 2c 20 74 68 75 73 20 66 6f 72 6d 69 6e 67 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e it,.thus.forming.a.work.based.on
610c0 20 74 68 65 20 50 72 6f 67 72 61 6d 2c 20 61 6e 64 20 63 6f 70 79 20 61 6e 64 0d 0a 64 69 73 74 .the.Program,.and.copy.and..dist
610e0 72 69 62 75 74 65 20 73 75 63 68 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 6f 72 20 77 6f 72 ribute.such.modifications.or.wor
61100 6b 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 53 65 63 74 69 6f 6e 20 31 0d 0a k.under.the.terms.of.Section.1..
61120 61 62 6f 76 65 2c 20 70 72 6f 76 69 64 65 64 20 74 68 61 74 20 79 6f 75 20 61 6c 73 6f 20 6d 65 above,.provided.that.you.also.me
61140 65 74 20 61 6c 6c 20 6f 66 20 74 68 65 73 65 20 63 6f 6e 64 69 74 69 6f 6e 73 3a 0d 0a 0d 0a 20 et.all.of.these.conditions:.....
61160 20 20 20 61 29 20 59 6f 75 20 6d 75 73 74 20 63 61 75 73 65 20 74 68 65 20 6d 6f 64 69 66 69 65 ...a).You.must.cause.the.modifie
61180 64 20 66 69 6c 65 73 20 74 6f 20 63 61 72 72 79 20 70 72 6f 6d 69 6e 65 6e 74 20 6e 6f 74 69 63 d.files.to.carry.prominent.notic
611a0 65 73 0d 0a 20 20 20 20 73 74 61 74 69 6e 67 20 74 68 61 74 20 79 6f 75 20 63 68 61 6e 67 65 64 es......stating.that.you.changed
611c0 20 74 68 65 20 66 69 6c 65 73 20 61 6e 64 20 74 68 65 20 64 61 74 65 20 6f 66 20 61 6e 79 20 63 .the.files.and.the.date.of.any.c
611e0 68 61 6e 67 65 2e 0d 0a 0d 0a 20 20 20 20 62 29 20 59 6f 75 20 6d 75 73 74 20 63 61 75 73 65 20 hange.........b).You.must.cause.
61200 61 6e 79 20 77 6f 72 6b 20 74 68 61 74 20 79 6f 75 20 64 69 73 74 72 69 62 75 74 65 20 6f 72 20 any.work.that.you.distribute.or.
61220 70 75 62 6c 69 73 68 2c 20 74 68 61 74 20 69 6e 0d 0a 20 20 20 20 77 68 6f 6c 65 20 6f 72 20 69 publish,.that.in......whole.or.i
61240 6e 20 70 61 72 74 20 63 6f 6e 74 61 69 6e 73 20 6f 72 20 69 73 20 64 65 72 69 76 65 64 20 66 72 n.part.contains.or.is.derived.fr
61260 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 6e 79 0d 0a 20 20 20 20 70 61 72 74 20 om.the.Program.or.any......part.
61280 74 68 65 72 65 6f 66 2c 20 74 6f 20 62 65 20 6c 69 63 65 6e 73 65 64 20 61 73 20 61 20 77 68 6f thereof,.to.be.licensed.as.a.who
612a0 6c 65 20 61 74 20 6e 6f 20 63 68 61 72 67 65 20 74 6f 20 61 6c 6c 20 74 68 69 72 64 0d 0a 20 20 le.at.no.charge.to.all.third....
612c0 20 20 70 61 72 74 69 65 73 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 69 ..parties.under.the.terms.of.thi
612e0 73 20 4c 69 63 65 6e 73 65 2e 0d 0a 0d 0a 20 20 20 20 63 29 20 49 66 20 74 68 65 20 6d 6f 64 69 s.License.........c).If.the.modi
61300 66 69 65 64 20 70 72 6f 67 72 61 6d 20 6e 6f 72 6d 61 6c 6c 79 20 72 65 61 64 73 20 63 6f 6d 6d fied.program.normally.reads.comm
61320 61 6e 64 73 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 0d 0a 20 20 20 20 77 68 65 6e 20 72 75 6e ands.interactively......when.run
61340 2c 20 79 6f 75 20 6d 75 73 74 20 63 61 75 73 65 20 69 74 2c 20 77 68 65 6e 20 73 74 61 72 74 65 ,.you.must.cause.it,.when.starte
61360 64 20 72 75 6e 6e 69 6e 67 20 66 6f 72 20 73 75 63 68 0d 0a 20 20 20 20 69 6e 74 65 72 61 63 74 d.running.for.such......interact
61380 69 76 65 20 75 73 65 20 69 6e 20 74 68 65 20 6d 6f 73 74 20 6f 72 64 69 6e 61 72 79 20 77 61 79 ive.use.in.the.most.ordinary.way
613a0 2c 20 74 6f 20 70 72 69 6e 74 20 6f 72 20 64 69 73 70 6c 61 79 20 61 6e 0d 0a 20 20 20 20 61 6e ,.to.print.or.display.an......an
613c0 6e 6f 75 6e 63 65 6d 65 6e 74 20 69 6e 63 6c 75 64 69 6e 67 20 61 6e 20 61 70 70 72 6f 70 72 69 nouncement.including.an.appropri
613e0 61 74 65 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 20 61 0d 0a 20 20 20 20 ate.copyright.notice.and.a......
61400 6e 6f 74 69 63 65 20 74 68 61 74 20 74 68 65 72 65 20 69 73 20 6e 6f 20 77 61 72 72 61 6e 74 79 notice.that.there.is.no.warranty
61420 20 28 6f 72 20 65 6c 73 65 2c 20 73 61 79 69 6e 67 20 74 68 61 74 20 79 6f 75 20 70 72 6f 76 69 .(or.else,.saying.that.you.provi
61440 64 65 0d 0a 20 20 20 20 61 20 77 61 72 72 61 6e 74 79 29 20 61 6e 64 20 74 68 61 74 20 75 73 65 de......a.warranty).and.that.use
61460 72 73 20 6d 61 79 20 72 65 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 70 72 6f 67 72 61 6d 20 rs.may.redistribute.the.program.
61480 75 6e 64 65 72 0d 0a 20 20 20 20 74 68 65 73 65 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 61 6e 64 under......these.conditions,.and
614a0 20 74 65 6c 6c 69 6e 67 20 74 68 65 20 75 73 65 72 20 68 6f 77 20 74 6f 20 76 69 65 77 20 61 20 .telling.the.user.how.to.view.a.
614c0 63 6f 70 79 20 6f 66 20 74 68 69 73 0d 0a 20 20 20 20 4c 69 63 65 6e 73 65 2e 20 20 28 45 78 63 copy.of.this......License...(Exc
614e0 65 70 74 69 6f 6e 3a 20 69 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 74 73 65 6c 66 20 69 73 eption:.if.the.Program.itself.is
61500 20 69 6e 74 65 72 61 63 74 69 76 65 20 62 75 74 0d 0a 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 6e .interactive.but......does.not.n
61520 6f 72 6d 61 6c 6c 79 20 70 72 69 6e 74 20 73 75 63 68 20 61 6e 20 61 6e 6e 6f 75 6e 63 65 6d 65 ormally.print.such.an.announceme
61540 6e 74 2c 20 79 6f 75 72 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 0d 0a 20 20 20 20 74 68 65 20 nt,.your.work.based.on......the.
61560 50 72 6f 67 72 61 6d 20 69 73 20 6e 6f 74 20 72 65 71 75 69 72 65 64 20 74 6f 20 70 72 69 6e 74 Program.is.not.required.to.print
61580 20 61 6e 20 61 6e 6e 6f 75 6e 63 65 6d 65 6e 74 2e 29 0d 0a 0d 0a 54 68 65 73 65 20 72 65 71 75 .an.announcement.)....These.requ
615a0 69 72 65 6d 65 6e 74 73 20 61 70 70 6c 79 20 74 6f 20 74 68 65 20 6d 6f 64 69 66 69 65 64 20 77 irements.apply.to.the.modified.w
615c0 6f 72 6b 20 61 73 20 61 20 77 68 6f 6c 65 2e 20 20 49 66 0d 0a 69 64 65 6e 74 69 66 69 61 62 6c ork.as.a.whole...If..identifiabl
615e0 65 20 73 65 63 74 69 6f 6e 73 20 6f 66 20 74 68 61 74 20 77 6f 72 6b 20 61 72 65 20 6e 6f 74 20 e.sections.of.that.work.are.not.
61600 64 65 72 69 76 65 64 20 66 72 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 2c 0d 0a 61 6e 64 20 63 derived.from.the.Program,..and.c
61620 61 6e 20 62 65 20 72 65 61 73 6f 6e 61 62 6c 79 20 63 6f 6e 73 69 64 65 72 65 64 20 69 6e 64 65 an.be.reasonably.considered.inde
61640 70 65 6e 64 65 6e 74 20 61 6e 64 20 73 65 70 61 72 61 74 65 20 77 6f 72 6b 73 20 69 6e 0d 0a 74 pendent.and.separate.works.in..t
61660 68 65 6d 73 65 6c 76 65 73 2c 20 74 68 65 6e 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 61 6e hemselves,.then.this.License,.an
61680 64 20 69 74 73 20 74 65 72 6d 73 2c 20 64 6f 20 6e 6f 74 20 61 70 70 6c 79 20 74 6f 20 74 68 6f d.its.terms,.do.not.apply.to.tho
616a0 73 65 0d 0a 73 65 63 74 69 6f 6e 73 20 77 68 65 6e 20 79 6f 75 20 64 69 73 74 72 69 62 75 74 65 se..sections.when.you.distribute
616c0 20 74 68 65 6d 20 61 73 20 73 65 70 61 72 61 74 65 20 77 6f 72 6b 73 2e 20 20 42 75 74 20 77 68 .them.as.separate.works...But.wh
616e0 65 6e 20 79 6f 75 0d 0a 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 73 61 6d 65 20 73 65 63 74 en.you..distribute.the.same.sect
61700 69 6f 6e 73 20 61 73 20 70 61 72 74 20 6f 66 20 61 20 77 68 6f 6c 65 20 77 68 69 63 68 20 69 73 ions.as.part.of.a.whole.which.is
61720 20 61 20 77 6f 72 6b 20 62 61 73 65 64 0d 0a 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 2c 20 74 .a.work.based..on.the.Program,.t
61740 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 74 68 65 20 77 68 6f 6c 65 20 6d 75 73 he.distribution.of.the.whole.mus
61760 74 20 62 65 20 6f 6e 20 74 68 65 20 74 65 72 6d 73 20 6f 66 0d 0a 74 68 69 73 20 4c 69 63 65 6e t.be.on.the.terms.of..this.Licen
61780 73 65 2c 20 77 68 6f 73 65 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 66 6f 72 20 6f 74 68 65 72 20 se,.whose.permissions.for.other.
617a0 6c 69 63 65 6e 73 65 65 73 20 65 78 74 65 6e 64 20 74 6f 20 74 68 65 0d 0a 65 6e 74 69 72 65 20 licensees.extend.to.the..entire.
617c0 77 68 6f 6c 65 2c 20 61 6e 64 20 74 68 75 73 20 74 6f 20 65 61 63 68 20 61 6e 64 20 65 76 65 72 whole,.and.thus.to.each.and.ever
617e0 79 20 70 61 72 74 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 77 68 6f 20 77 72 6f 74 65 20 69 y.part.regardless.of.who.wrote.i
61800 74 2e 0d 0a 0d 0a 54 68 75 73 2c 20 69 74 20 69 73 20 6e 6f 74 20 74 68 65 20 69 6e 74 65 6e 74 t.....Thus,.it.is.not.the.intent
61820 20 6f 66 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 74 6f 20 63 6c 61 69 6d 20 72 69 67 68 74 73 .of.this.section.to.claim.rights
61840 20 6f 72 20 63 6f 6e 74 65 73 74 0d 0a 79 6f 75 72 20 72 69 67 68 74 73 20 74 6f 20 77 6f 72 6b .or.contest..your.rights.to.work
61860 20 77 72 69 74 74 65 6e 20 65 6e 74 69 72 65 6c 79 20 62 79 20 79 6f 75 3b 20 72 61 74 68 65 72 .written.entirely.by.you;.rather
61880 2c 20 74 68 65 20 69 6e 74 65 6e 74 20 69 73 20 74 6f 0d 0a 65 78 65 72 63 69 73 65 20 74 68 65 ,.the.intent.is.to..exercise.the
618a0 20 72 69 67 68 74 20 74 6f 20 63 6f 6e 74 72 6f 6c 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 .right.to.control.the.distributi
618c0 6f 6e 20 6f 66 20 64 65 72 69 76 61 74 69 76 65 20 6f 72 0d 0a 63 6f 6c 6c 65 63 74 69 76 65 20 on.of.derivative.or..collective.
618e0 77 6f 72 6b 73 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 2e 0d 0a 0d 0a 49 works.based.on.the.Program.....I
61900 6e 20 61 64 64 69 74 69 6f 6e 2c 20 6d 65 72 65 20 61 67 67 72 65 67 61 74 69 6f 6e 20 6f 66 20 n.addition,.mere.aggregation.of.
61920 61 6e 6f 74 68 65 72 20 77 6f 72 6b 20 6e 6f 74 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 another.work.not.based.on.the.Pr
61940 6f 67 72 61 6d 0d 0a 77 69 74 68 20 74 68 65 20 50 72 6f 67 72 61 6d 20 28 6f 72 20 77 69 74 68 ogram..with.the.Program.(or.with
61960 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 29 20 6f 6e .a.work.based.on.the.Program).on
61980 20 61 20 76 6f 6c 75 6d 65 20 6f 66 0d 0a 61 20 73 74 6f 72 61 67 65 20 6f 72 20 64 69 73 74 72 .a.volume.of..a.storage.or.distr
619a0 69 62 75 74 69 6f 6e 20 6d 65 64 69 75 6d 20 64 6f 65 73 20 6e 6f 74 20 62 72 69 6e 67 20 74 68 ibution.medium.does.not.bring.th
619c0 65 20 6f 74 68 65 72 20 77 6f 72 6b 20 75 6e 64 65 72 0d 0a 74 68 65 20 73 63 6f 70 65 20 6f 66 e.other.work.under..the.scope.of
619e0 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0d 0a 0d 0a 20 20 33 2e 20 59 6f 75 20 6d 61 79 20 63 .this.License.......3..You.may.c
61a00 6f 70 79 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 28 opy.and.distribute.the.Program.(
61a20 6f 72 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 69 74 2c 0d 0a 75 6e 64 65 72 20 53 65 or.a.work.based.on.it,..under.Se
61a40 63 74 69 6f 6e 20 32 29 20 69 6e 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 6f 72 20 65 78 65 63 75 ction.2).in.object.code.or.execu
61a60 74 61 62 6c 65 20 66 6f 72 6d 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 0d 0a 53 table.form.under.the.terms.of..S
61a80 65 63 74 69 6f 6e 73 20 31 20 61 6e 64 20 32 20 61 62 6f 76 65 20 70 72 6f 76 69 64 65 64 20 74 ections.1.and.2.above.provided.t
61aa0 68 61 74 20 79 6f 75 20 61 6c 73 6f 20 64 6f 20 6f 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f hat.you.also.do.one.of.the.follo
61ac0 77 69 6e 67 3a 0d 0a 0d 0a 20 20 20 20 61 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 74 20 77 69 74 wing:........a).Accompany.it.wit
61ae0 68 20 74 68 65 20 63 6f 6d 70 6c 65 74 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 6d 61 63 h.the.complete.corresponding.mac
61b00 68 69 6e 65 2d 72 65 61 64 61 62 6c 65 0d 0a 20 20 20 20 73 6f 75 72 63 65 20 63 6f 64 65 2c 20 hine-readable......source.code,.
61b20 77 68 69 63 68 20 6d 75 73 74 20 62 65 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 which.must.be.distributed.under.
61b40 74 68 65 20 74 65 72 6d 73 20 6f 66 20 53 65 63 74 69 6f 6e 73 0d 0a 20 20 20 20 31 20 61 6e 64 the.terms.of.Sections......1.and
61b60 20 32 20 61 62 6f 76 65 20 6f 6e 20 61 20 6d 65 64 69 75 6d 20 63 75 73 74 6f 6d 61 72 69 6c 79 .2.above.on.a.medium.customarily
61b80 20 75 73 65 64 20 66 6f 72 20 73 6f 66 74 77 61 72 65 20 69 6e 74 65 72 63 68 61 6e 67 65 3b 20 .used.for.software.interchange;.
61ba0 6f 72 2c 0d 0a 0d 0a 20 20 20 20 62 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 74 20 77 69 74 68 20 or,........b).Accompany.it.with.
61bc0 61 20 77 72 69 74 74 65 6e 20 6f 66 66 65 72 2c 20 76 61 6c 69 64 20 66 6f 72 20 61 74 20 6c 65 a.written.offer,.valid.for.at.le
61be0 61 73 74 20 74 68 72 65 65 0d 0a 20 20 20 20 79 65 61 72 73 2c 20 74 6f 20 67 69 76 65 20 61 6e ast.three......years,.to.give.an
61c00 79 20 74 68 69 72 64 20 70 61 72 74 79 2c 20 66 6f 72 20 61 20 63 68 61 72 67 65 20 6e 6f 20 6d y.third.party,.for.a.charge.no.m
61c20 6f 72 65 20 74 68 61 6e 20 79 6f 75 72 0d 0a 20 20 20 20 63 6f 73 74 20 6f 66 20 70 68 79 73 69 ore.than.your......cost.of.physi
61c40 63 61 6c 6c 79 20 70 65 72 66 6f 72 6d 69 6e 67 20 73 6f 75 72 63 65 20 64 69 73 74 72 69 62 75 cally.performing.source.distribu
61c60 74 69 6f 6e 2c 20 61 20 63 6f 6d 70 6c 65 74 65 0d 0a 20 20 20 20 6d 61 63 68 69 6e 65 2d 72 65 tion,.a.complete......machine-re
61c80 61 64 61 62 6c 65 20 63 6f 70 79 20 6f 66 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 adable.copy.of.the.corresponding
61ca0 20 73 6f 75 72 63 65 20 63 6f 64 65 2c 20 74 6f 20 62 65 0d 0a 20 20 20 20 64 69 73 74 72 69 62 .source.code,.to.be......distrib
61cc0 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 53 65 63 74 69 6f 6e 73 uted.under.the.terms.of.Sections
61ce0 20 31 20 61 6e 64 20 32 20 61 62 6f 76 65 20 6f 6e 20 61 20 6d 65 64 69 75 6d 0d 0a 20 20 20 20 .1.and.2.above.on.a.medium......
61d00 63 75 73 74 6f 6d 61 72 69 6c 79 20 75 73 65 64 20 66 6f 72 20 73 6f 66 74 77 61 72 65 20 69 6e customarily.used.for.software.in
61d20 74 65 72 63 68 61 6e 67 65 3b 20 6f 72 2c 0d 0a 0d 0a 20 20 20 20 63 29 20 41 63 63 6f 6d 70 61 terchange;.or,........c).Accompa
61d40 6e 79 20 69 74 20 77 69 74 68 20 74 68 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 79 6f 75 20 72 ny.it.with.the.information.you.r
61d60 65 63 65 69 76 65 64 20 61 73 20 74 6f 20 74 68 65 20 6f 66 66 65 72 0d 0a 20 20 20 20 74 6f 20 eceived.as.to.the.offer......to.
61d80 64 69 73 74 72 69 62 75 74 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 73 6f 75 72 63 65 20 distribute.corresponding.source.
61da0 63 6f 64 65 2e 20 20 28 54 68 69 73 20 61 6c 74 65 72 6e 61 74 69 76 65 20 69 73 0d 0a 20 20 20 code...(This.alternative.is.....
61dc0 20 61 6c 6c 6f 77 65 64 20 6f 6e 6c 79 20 66 6f 72 20 6e 6f 6e 63 6f 6d 6d 65 72 63 69 61 6c 20 .allowed.only.for.noncommercial.
61de0 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 20 6f 6e 6c 79 20 69 66 20 79 6f 75 0d 0a 20 20 distribution.and.only.if.you....
61e00 20 20 72 65 63 65 69 76 65 64 20 74 68 65 20 70 72 6f 67 72 61 6d 20 69 6e 20 6f 62 6a 65 63 74 ..received.the.program.in.object
61e20 20 63 6f 64 65 20 6f 72 20 65 78 65 63 75 74 61 62 6c 65 20 66 6f 72 6d 20 77 69 74 68 20 73 75 .code.or.executable.form.with.su
61e40 63 68 0d 0a 20 20 20 20 61 6e 20 6f 66 66 65 72 2c 20 69 6e 20 61 63 63 6f 72 64 20 77 69 74 68 ch......an.offer,.in.accord.with
61e60 20 53 75 62 73 65 63 74 69 6f 6e 20 62 20 61 62 6f 76 65 2e 29 0d 0a 0d 0a 54 68 65 20 73 6f 75 .Subsection.b.above.)....The.sou
61e80 72 63 65 20 63 6f 64 65 20 66 6f 72 20 61 20 77 6f 72 6b 20 6d 65 61 6e 73 20 74 68 65 20 70 72 rce.code.for.a.work.means.the.pr
61ea0 65 66 65 72 72 65 64 20 66 6f 72 6d 20 6f 66 20 74 68 65 20 77 6f 72 6b 20 66 6f 72 0d 0a 6d 61 eferred.form.of.the.work.for..ma
61ec0 6b 69 6e 67 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 74 6f 20 69 74 2e 20 20 46 6f 72 20 61 king.modifications.to.it...For.a
61ee0 6e 20 65 78 65 63 75 74 61 62 6c 65 20 77 6f 72 6b 2c 20 63 6f 6d 70 6c 65 74 65 20 73 6f 75 72 n.executable.work,.complete.sour
61f00 63 65 0d 0a 63 6f 64 65 20 6d 65 61 6e 73 20 61 6c 6c 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f ce..code.means.all.the.source.co
61f20 64 65 20 66 6f 72 20 61 6c 6c 20 6d 6f 64 75 6c 65 73 20 69 74 20 63 6f 6e 74 61 69 6e 73 2c 20 de.for.all.modules.it.contains,.
61f40 70 6c 75 73 20 61 6e 79 0d 0a 61 73 73 6f 63 69 61 74 65 64 20 69 6e 74 65 72 66 61 63 65 20 64 plus.any..associated.interface.d
61f60 65 66 69 6e 69 74 69 6f 6e 20 66 69 6c 65 73 2c 20 70 6c 75 73 20 74 68 65 20 73 63 72 69 70 74 efinition.files,.plus.the.script
61f80 73 20 75 73 65 64 20 74 6f 0d 0a 63 6f 6e 74 72 6f 6c 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 61 s.used.to..control.compilation.a
61fa0 6e 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 65 78 65 63 75 74 61 62 6c nd.installation.of.the.executabl
61fc0 65 2e 20 20 48 6f 77 65 76 65 72 2c 20 61 73 20 61 0d 0a 73 70 65 63 69 61 6c 20 65 78 63 65 70 e...However,.as.a..special.excep
61fe0 74 69 6f 6e 2c 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 64 69 73 74 72 69 62 75 74 65 tion,.the.source.code.distribute
62000 64 20 6e 65 65 64 20 6e 6f 74 20 69 6e 63 6c 75 64 65 0d 0a 61 6e 79 74 68 69 6e 67 20 74 68 61 d.need.not.include..anything.tha
62020 74 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 64 69 73 74 72 69 62 75 74 65 64 20 28 69 6e 20 65 69 t.is.normally.distributed.(in.ei
62040 74 68 65 72 20 73 6f 75 72 63 65 20 6f 72 20 62 69 6e 61 72 79 0d 0a 66 6f 72 6d 29 20 77 69 74 ther.source.or.binary..form).wit
62060 68 20 74 68 65 20 6d 61 6a 6f 72 20 63 6f 6d 70 6f 6e 65 6e 74 73 20 28 63 6f 6d 70 69 6c 65 72 h.the.major.components.(compiler
62080 2c 20 6b 65 72 6e 65 6c 2c 20 61 6e 64 20 73 6f 20 6f 6e 29 20 6f 66 20 74 68 65 0d 0a 6f 70 65 ,.kernel,.and.so.on).of.the..ope
620a0 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 6f 6e 20 77 68 69 63 68 20 74 68 65 20 65 78 65 63 75 rating.system.on.which.the.execu
620c0 74 61 62 6c 65 20 72 75 6e 73 2c 20 75 6e 6c 65 73 73 20 74 68 61 74 20 63 6f 6d 70 6f 6e 65 6e table.runs,.unless.that.componen
620e0 74 0d 0a 69 74 73 65 6c 66 20 61 63 63 6f 6d 70 61 6e 69 65 73 20 74 68 65 20 65 78 65 63 75 74 t..itself.accompanies.the.execut
62100 61 62 6c 65 2e 0d 0a 0d 0a 49 66 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 65 78 65 63 able.....If.distribution.of.exec
62120 75 74 61 62 6c 65 20 6f 72 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 69 73 20 6d 61 64 65 20 62 79 utable.or.object.code.is.made.by
62140 20 6f 66 66 65 72 69 6e 67 0d 0a 61 63 63 65 73 73 20 74 6f 20 63 6f 70 79 20 66 72 6f 6d 20 61 .offering..access.to.copy.from.a
62160 20 64 65 73 69 67 6e 61 74 65 64 20 70 6c 61 63 65 2c 20 74 68 65 6e 20 6f 66 66 65 72 69 6e 67 .designated.place,.then.offering
62180 20 65 71 75 69 76 61 6c 65 6e 74 0d 0a 61 63 63 65 73 73 20 74 6f 20 63 6f 70 79 20 74 68 65 20 .equivalent..access.to.copy.the.
621a0 73 6f 75 72 63 65 20 63 6f 64 65 20 66 72 6f 6d 20 74 68 65 20 73 61 6d 65 20 70 6c 61 63 65 20 source.code.from.the.same.place.
621c0 63 6f 75 6e 74 73 20 61 73 0d 0a 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 74 68 65 20 73 counts.as..distribution.of.the.s
621e0 6f 75 72 63 65 20 63 6f 64 65 2c 20 65 76 65 6e 20 74 68 6f 75 67 68 20 74 68 69 72 64 20 70 61 ource.code,.even.though.third.pa
62200 72 74 69 65 73 20 61 72 65 20 6e 6f 74 0d 0a 63 6f 6d 70 65 6c 6c 65 64 20 74 6f 20 63 6f 70 79 rties.are.not..compelled.to.copy
62220 20 74 68 65 20 73 6f 75 72 63 65 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 6f 62 6a 65 63 .the.source.along.with.the.objec
62240 74 20 63 6f 64 65 2e 0d 0a 0d 0a 20 20 34 2e 20 59 6f 75 20 6d 61 79 20 6e 6f 74 20 63 6f 70 79 t.code.......4..You.may.not.copy
62260 2c 20 6d 6f 64 69 66 79 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 6f 72 20 64 69 73 74 72 69 62 ,.modify,.sublicense,.or.distrib
62280 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 0d 0a 65 78 63 65 70 74 20 61 73 20 65 78 70 72 65 ute.the.Program..except.as.expre
622a0 73 73 6c 79 20 70 72 6f 76 69 64 65 64 20 75 6e 64 65 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 ssly.provided.under.this.License
622c0 2e 20 20 41 6e 79 20 61 74 74 65 6d 70 74 0d 0a 6f 74 68 65 72 77 69 73 65 20 74 6f 20 63 6f 70 ...Any.attempt..otherwise.to.cop
622e0 79 2c 20 6d 6f 64 69 66 79 2c 20 73 75 62 6c 69 63 65 6e 73 65 20 6f 72 20 64 69 73 74 72 69 62 y,.modify,.sublicense.or.distrib
62300 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 73 0d 0a 76 6f 69 64 2c 20 61 6e 64 20 77 69 ute.the.Program.is..void,.and.wi
62320 6c 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 74 65 72 6d 69 6e 61 74 65 20 79 6f 75 72 20 ll.automatically.terminate.your.
62340 72 69 67 68 74 73 20 75 6e 64 65 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0d 0a 48 6f 77 65 rights.under.this.License...Howe
62360 76 65 72 2c 20 70 61 72 74 69 65 73 20 77 68 6f 20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 63 ver,.parties.who.have.received.c
62380 6f 70 69 65 73 2c 20 6f 72 20 72 69 67 68 74 73 2c 20 66 72 6f 6d 20 79 6f 75 20 75 6e 64 65 72 opies,.or.rights,.from.you.under
623a0 0d 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 20 77 69 6c 6c 20 6e 6f 74 20 68 61 76 65 20 74 68 65 ..this.License.will.not.have.the
623c0 69 72 20 6c 69 63 65 6e 73 65 73 20 74 65 72 6d 69 6e 61 74 65 64 20 73 6f 20 6c 6f 6e 67 20 61 ir.licenses.terminated.so.long.a
623e0 73 20 73 75 63 68 0d 0a 70 61 72 74 69 65 73 20 72 65 6d 61 69 6e 20 69 6e 20 66 75 6c 6c 20 63 s.such..parties.remain.in.full.c
62400 6f 6d 70 6c 69 61 6e 63 65 2e 0d 0a 0d 0a 20 20 35 2e 20 59 6f 75 20 61 72 65 20 6e 6f 74 20 72 ompliance.......5..You.are.not.r
62420 65 71 75 69 72 65 64 20 74 6f 20 61 63 63 65 70 74 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 equired.to.accept.this.License,.
62440 73 69 6e 63 65 20 79 6f 75 20 68 61 76 65 20 6e 6f 74 0d 0a 73 69 67 6e 65 64 20 69 74 2e 20 20 since.you.have.not..signed.it...
62460 48 6f 77 65 76 65 72 2c 20 6e 6f 74 68 69 6e 67 20 65 6c 73 65 20 67 72 61 6e 74 73 20 79 6f 75 However,.nothing.else.grants.you
62480 20 70 65 72 6d 69 73 73 69 6f 6e 20 74 6f 20 6d 6f 64 69 66 79 20 6f 72 0d 0a 64 69 73 74 72 69 .permission.to.modify.or..distri
624a0 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 69 74 73 20 64 65 72 69 76 61 74 69 bute.the.Program.or.its.derivati
624c0 76 65 20 77 6f 72 6b 73 2e 20 20 54 68 65 73 65 20 61 63 74 69 6f 6e 73 20 61 72 65 0d 0a 70 72 ve.works...These.actions.are..pr
624e0 6f 68 69 62 69 74 65 64 20 62 79 20 6c 61 77 20 69 66 20 79 6f 75 20 64 6f 20 6e 6f 74 20 61 63 ohibited.by.law.if.you.do.not.ac
62500 63 65 70 74 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 20 20 54 68 65 72 65 66 6f 72 65 2c 20 62 cept.this.License...Therefore,.b
62520 79 0d 0a 6d 6f 64 69 66 79 69 6e 67 20 6f 72 20 64 69 73 74 72 69 62 75 74 69 6e 67 20 74 68 65 y..modifying.or.distributing.the
62540 20 50 72 6f 67 72 61 6d 20 28 6f 72 20 61 6e 79 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 .Program.(or.any.work.based.on.t
62560 68 65 0d 0a 50 72 6f 67 72 61 6d 29 2c 20 79 6f 75 20 69 6e 64 69 63 61 74 65 20 79 6f 75 72 20 he..Program),.you.indicate.your.
62580 61 63 63 65 70 74 61 6e 63 65 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 74 6f 20 64 6f acceptance.of.this.License.to.do
625a0 20 73 6f 2c 20 61 6e 64 0d 0a 61 6c 6c 20 69 74 73 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 .so,.and..all.its.terms.and.cond
625c0 69 74 69 6f 6e 73 20 66 6f 72 20 63 6f 70 79 69 6e 67 2c 20 64 69 73 74 72 69 62 75 74 69 6e 67 itions.for.copying,.distributing
625e0 20 6f 72 20 6d 6f 64 69 66 79 69 6e 67 0d 0a 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 77 6f .or.modifying..the.Program.or.wo
62600 72 6b 73 20 62 61 73 65 64 20 6f 6e 20 69 74 2e 0d 0a 0d 0a 20 20 36 2e 20 45 61 63 68 20 74 69 rks.based.on.it.......6..Each.ti
62620 6d 65 20 79 6f 75 20 72 65 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 me.you.redistribute.the.Program.
62640 28 6f 72 20 61 6e 79 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 0d 0a 50 72 6f 67 72 (or.any.work.based.on.the..Progr
62660 61 6d 29 2c 20 74 68 65 20 72 65 63 69 70 69 65 6e 74 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 am),.the.recipient.automatically
62680 20 72 65 63 65 69 76 65 73 20 61 20 6c 69 63 65 6e 73 65 20 66 72 6f 6d 20 74 68 65 0d 0a 6f 72 .receives.a.license.from.the..or
626a0 69 67 69 6e 61 6c 20 6c 69 63 65 6e 73 6f 72 20 74 6f 20 63 6f 70 79 2c 20 64 69 73 74 72 69 62 iginal.licensor.to.copy,.distrib
626c0 75 74 65 20 6f 72 20 6d 6f 64 69 66 79 20 74 68 65 20 50 72 6f 67 72 61 6d 20 73 75 62 6a 65 63 ute.or.modify.the.Program.subjec
626e0 74 20 74 6f 0d 0a 74 68 65 73 65 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 t.to..these.terms.and.conditions
62700 2e 20 20 59 6f 75 20 6d 61 79 20 6e 6f 74 20 69 6d 70 6f 73 65 20 61 6e 79 20 66 75 72 74 68 65 ...You.may.not.impose.any.furthe
62720 72 0d 0a 72 65 73 74 72 69 63 74 69 6f 6e 73 20 6f 6e 20 74 68 65 20 72 65 63 69 70 69 65 6e 74 r..restrictions.on.the.recipient
62740 73 27 20 65 78 65 72 63 69 73 65 20 6f 66 20 74 68 65 20 72 69 67 68 74 73 20 67 72 61 6e 74 65 s'.exercise.of.the.rights.grante
62760 64 20 68 65 72 65 69 6e 2e 0d 0a 59 6f 75 20 61 72 65 20 6e 6f 74 20 72 65 73 70 6f 6e 73 69 62 d.herein...You.are.not.responsib
62780 6c 65 20 66 6f 72 20 65 6e 66 6f 72 63 69 6e 67 20 63 6f 6d 70 6c 69 61 6e 63 65 20 62 79 20 74 le.for.enforcing.compliance.by.t
627a0 68 69 72 64 20 70 61 72 74 69 65 73 20 74 6f 0d 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0d 0a hird.parties.to..this.License...
627c0 0d 0a 20 20 37 2e 20 49 66 2c 20 61 73 20 61 20 63 6f 6e 73 65 71 75 65 6e 63 65 20 6f 66 20 61 ....7..If,.as.a.consequence.of.a
627e0 20 63 6f 75 72 74 20 6a 75 64 67 6d 65 6e 74 20 6f 72 20 61 6c 6c 65 67 61 74 69 6f 6e 20 6f 66 .court.judgment.or.allegation.of
62800 20 70 61 74 65 6e 74 0d 0a 69 6e 66 72 69 6e 67 65 6d 65 6e 74 20 6f 72 20 66 6f 72 20 61 6e 79 .patent..infringement.or.for.any
62820 20 6f 74 68 65 72 20 72 65 61 73 6f 6e 20 28 6e 6f 74 20 6c 69 6d 69 74 65 64 20 74 6f 20 70 61 .other.reason.(not.limited.to.pa
62840 74 65 6e 74 20 69 73 73 75 65 73 29 2c 0d 0a 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 69 6d tent.issues),..conditions.are.im
62860 70 6f 73 65 64 20 6f 6e 20 79 6f 75 20 28 77 68 65 74 68 65 72 20 62 79 20 63 6f 75 72 74 20 6f posed.on.you.(whether.by.court.o
62880 72 64 65 72 2c 20 61 67 72 65 65 6d 65 6e 74 20 6f 72 0d 0a 6f 74 68 65 72 77 69 73 65 29 20 74 rder,.agreement.or..otherwise).t
628a0 68 61 74 20 63 6f 6e 74 72 61 64 69 63 74 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 73 20 6f 66 hat.contradict.the.conditions.of
628c0 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 74 68 65 79 20 64 6f 20 6e 6f 74 0d 0a 65 78 63 75 .this.License,.they.do.not..excu
628e0 73 65 20 79 6f 75 20 66 72 6f 6d 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 73 20 6f 66 20 74 68 se.you.from.the.conditions.of.th
62900 69 73 20 4c 69 63 65 6e 73 65 2e 20 20 49 66 20 79 6f 75 20 63 61 6e 6e 6f 74 0d 0a 64 69 73 74 is.License...If.you.cannot..dist
62920 72 69 62 75 74 65 20 73 6f 20 61 73 20 74 6f 20 73 61 74 69 73 66 79 20 73 69 6d 75 6c 74 61 6e ribute.so.as.to.satisfy.simultan
62940 65 6f 75 73 6c 79 20 79 6f 75 72 20 6f 62 6c 69 67 61 74 69 6f 6e 73 20 75 6e 64 65 72 20 74 68 eously.your.obligations.under.th
62960 69 73 0d 0a 4c 69 63 65 6e 73 65 20 61 6e 64 20 61 6e 79 20 6f 74 68 65 72 20 70 65 72 74 69 6e is..License.and.any.other.pertin
62980 65 6e 74 20 6f 62 6c 69 67 61 74 69 6f 6e 73 2c 20 74 68 65 6e 20 61 73 20 61 20 63 6f 6e 73 65 ent.obligations,.then.as.a.conse
629a0 71 75 65 6e 63 65 20 79 6f 75 0d 0a 6d 61 79 20 6e 6f 74 20 64 69 73 74 72 69 62 75 74 65 20 74 quence.you..may.not.distribute.t
629c0 68 65 20 50 72 6f 67 72 61 6d 20 61 74 20 61 6c 6c 2e 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c he.Program.at.all...For.example,
629e0 20 69 66 20 61 20 70 61 74 65 6e 74 0d 0a 6c 69 63 65 6e 73 65 20 77 6f 75 6c 64 20 6e 6f 74 20 .if.a.patent..license.would.not.
62a00 70 65 72 6d 69 74 20 72 6f 79 61 6c 74 79 2d 66 72 65 65 20 72 65 64 69 73 74 72 69 62 75 74 69 permit.royalty-free.redistributi
62a20 6f 6e 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 62 79 0d 0a 61 6c 6c 20 74 68 6f 73 65 20 on.of.the.Program.by..all.those.
62a40 77 68 6f 20 72 65 63 65 69 76 65 20 63 6f 70 69 65 73 20 64 69 72 65 63 74 6c 79 20 6f 72 20 69 who.receive.copies.directly.or.i
62a60 6e 64 69 72 65 63 74 6c 79 20 74 68 72 6f 75 67 68 20 79 6f 75 2c 20 74 68 65 6e 0d 0a 74 68 65 ndirectly.through.you,.then..the
62a80 20 6f 6e 6c 79 20 77 61 79 20 79 6f 75 20 63 6f 75 6c 64 20 73 61 74 69 73 66 79 20 62 6f 74 68 .only.way.you.could.satisfy.both
62aa0 20 69 74 20 61 6e 64 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 77 6f 75 6c 64 20 62 65 20 74 6f .it.and.this.License.would.be.to
62ac0 0d 0a 72 65 66 72 61 69 6e 20 65 6e 74 69 72 65 6c 79 20 66 72 6f 6d 20 64 69 73 74 72 69 62 75 ..refrain.entirely.from.distribu
62ae0 74 69 6f 6e 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 2e 0d 0a 0d 0a 49 66 20 61 6e 79 20 70 tion.of.the.Program.....If.any.p
62b00 6f 72 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 69 73 20 68 65 6c 64 20 69 ortion.of.this.section.is.held.i
62b20 6e 76 61 6c 69 64 20 6f 72 20 75 6e 65 6e 66 6f 72 63 65 61 62 6c 65 20 75 6e 64 65 72 0d 0a 61 nvalid.or.unenforceable.under..a
62b40 6e 79 20 70 61 72 74 69 63 75 6c 61 72 20 63 69 72 63 75 6d 73 74 61 6e 63 65 2c 20 74 68 65 20 ny.particular.circumstance,.the.
62b60 62 61 6c 61 6e 63 65 20 6f 66 20 74 68 65 20 73 65 63 74 69 6f 6e 20 69 73 20 69 6e 74 65 6e 64 balance.of.the.section.is.intend
62b80 65 64 20 74 6f 0d 0a 61 70 70 6c 79 20 61 6e 64 20 74 68 65 20 73 65 63 74 69 6f 6e 20 61 73 20 ed.to..apply.and.the.section.as.
62ba0 61 20 77 68 6f 6c 65 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 61 70 70 6c 79 20 69 6e 20 a.whole.is.intended.to.apply.in.
62bc0 6f 74 68 65 72 0d 0a 63 69 72 63 75 6d 73 74 61 6e 63 65 73 2e 0d 0a 0d 0a 49 74 20 69 73 20 6e other..circumstances.....It.is.n
62be0 6f 74 20 74 68 65 20 70 75 72 70 6f 73 65 20 6f 66 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 74 ot.the.purpose.of.this.section.t
62c00 6f 20 69 6e 64 75 63 65 20 79 6f 75 20 74 6f 20 69 6e 66 72 69 6e 67 65 20 61 6e 79 0d 0a 70 61 o.induce.you.to.infringe.any..pa
62c20 74 65 6e 74 73 20 6f 72 20 6f 74 68 65 72 20 70 72 6f 70 65 72 74 79 20 72 69 67 68 74 20 63 6c tents.or.other.property.right.cl
62c40 61 69 6d 73 20 6f 72 20 74 6f 20 63 6f 6e 74 65 73 74 20 76 61 6c 69 64 69 74 79 20 6f 66 20 61 aims.or.to.contest.validity.of.a
62c60 6e 79 0d 0a 73 75 63 68 20 63 6c 61 69 6d 73 3b 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 68 61 ny..such.claims;.this.section.ha
62c80 73 20 74 68 65 20 73 6f 6c 65 20 70 75 72 70 6f 73 65 20 6f 66 20 70 72 6f 74 65 63 74 69 6e 67 s.the.sole.purpose.of.protecting
62ca0 20 74 68 65 0d 0a 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 68 65 20 66 72 65 65 20 73 6f 66 74 .the..integrity.of.the.free.soft
62cc0 77 61 72 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 73 79 73 74 65 6d 2c 20 77 68 69 63 68 20 ware.distribution.system,.which.
62ce0 69 73 0d 0a 69 6d 70 6c 65 6d 65 6e 74 65 64 20 62 79 20 70 75 62 6c 69 63 20 6c 69 63 65 6e 73 is..implemented.by.public.licens
62d00 65 20 70 72 61 63 74 69 63 65 73 2e 20 20 4d 61 6e 79 20 70 65 6f 70 6c 65 20 68 61 76 65 20 6d e.practices...Many.people.have.m
62d20 61 64 65 0d 0a 67 65 6e 65 72 6f 75 73 20 63 6f 6e 74 72 69 62 75 74 69 6f 6e 73 20 74 6f 20 74 ade..generous.contributions.to.t
62d40 68 65 20 77 69 64 65 20 72 61 6e 67 65 20 6f 66 20 73 6f 66 74 77 61 72 65 20 64 69 73 74 72 69 he.wide.range.of.software.distri
62d60 62 75 74 65 64 0d 0a 74 68 72 6f 75 67 68 20 74 68 61 74 20 73 79 73 74 65 6d 20 69 6e 20 72 65 buted..through.that.system.in.re
62d80 6c 69 61 6e 63 65 20 6f 6e 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 70 70 6c 69 63 61 74 69 6f 6e liance.on.consistent.application
62da0 20 6f 66 20 74 68 61 74 0d 0a 73 79 73 74 65 6d 3b 20 69 74 20 69 73 20 75 70 20 74 6f 20 74 68 .of.that..system;.it.is.up.to.th
62dc0 65 20 61 75 74 68 6f 72 2f 64 6f 6e 6f 72 20 74 6f 20 64 65 63 69 64 65 20 69 66 20 68 65 20 6f e.author/donor.to.decide.if.he.o
62de0 72 20 73 68 65 20 69 73 20 77 69 6c 6c 69 6e 67 0d 0a 74 6f 20 64 69 73 74 72 69 62 75 74 65 20 r.she.is.willing..to.distribute.
62e00 73 6f 66 74 77 61 72 65 20 74 68 72 6f 75 67 68 20 61 6e 79 20 6f 74 68 65 72 20 73 79 73 74 65 software.through.any.other.syste
62e20 6d 20 61 6e 64 20 61 20 6c 69 63 65 6e 73 65 65 20 63 61 6e 6e 6f 74 0d 0a 69 6d 70 6f 73 65 20 m.and.a.licensee.cannot..impose.
62e40 74 68 61 74 20 63 68 6f 69 63 65 2e 0d 0a 0d 0a 54 68 69 73 20 73 65 63 74 69 6f 6e 20 69 73 20 that.choice.....This.section.is.
62e60 69 6e 74 65 6e 64 65 64 20 74 6f 20 6d 61 6b 65 20 74 68 6f 72 6f 75 67 68 6c 79 20 63 6c 65 61 intended.to.make.thoroughly.clea
62e80 72 20 77 68 61 74 20 69 73 20 62 65 6c 69 65 76 65 64 20 74 6f 0d 0a 62 65 20 61 20 63 6f 6e 73 r.what.is.believed.to..be.a.cons
62ea0 65 71 75 65 6e 63 65 20 6f 66 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 69 73 20 4c 69 63 65 equence.of.the.rest.of.this.Lice
62ec0 6e 73 65 2e 0d 0a 0d 0a 20 20 38 2e 20 49 66 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e nse.......8..If.the.distribution
62ee0 20 61 6e 64 2f 6f 72 20 75 73 65 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 73 20 72 65 .and/or.use.of.the.Program.is.re
62f00 73 74 72 69 63 74 65 64 20 69 6e 0d 0a 63 65 72 74 61 69 6e 20 63 6f 75 6e 74 72 69 65 73 20 65 stricted.in..certain.countries.e
62f20 69 74 68 65 72 20 62 79 20 70 61 74 65 6e 74 73 20 6f 72 20 62 79 20 63 6f 70 79 72 69 67 68 74 ither.by.patents.or.by.copyright
62f40 65 64 20 69 6e 74 65 72 66 61 63 65 73 2c 20 74 68 65 0d 0a 6f 72 69 67 69 6e 61 6c 20 63 6f 70 ed.interfaces,.the..original.cop
62f60 79 72 69 67 68 74 20 68 6f 6c 64 65 72 20 77 68 6f 20 70 6c 61 63 65 73 20 74 68 65 20 50 72 6f yright.holder.who.places.the.Pro
62f80 67 72 61 6d 20 75 6e 64 65 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 0d 0a 6d 61 79 20 61 64 64 gram.under.this.License..may.add
62fa0 20 61 6e 20 65 78 70 6c 69 63 69 74 20 67 65 6f 67 72 61 70 68 69 63 61 6c 20 64 69 73 74 72 69 .an.explicit.geographical.distri
62fc0 62 75 74 69 6f 6e 20 6c 69 6d 69 74 61 74 69 6f 6e 20 65 78 63 6c 75 64 69 6e 67 0d 0a 74 68 6f bution.limitation.excluding..tho
62fe0 73 65 20 63 6f 75 6e 74 72 69 65 73 2c 20 73 6f 20 74 68 61 74 20 64 69 73 74 72 69 62 75 74 69 se.countries,.so.that.distributi
63000 6f 6e 20 69 73 20 70 65 72 6d 69 74 74 65 64 20 6f 6e 6c 79 20 69 6e 20 6f 72 20 61 6d 6f 6e 67 on.is.permitted.only.in.or.among
63020 0d 0a 63 6f 75 6e 74 72 69 65 73 20 6e 6f 74 20 74 68 75 73 20 65 78 63 6c 75 64 65 64 2e 20 20 ..countries.not.thus.excluded...
63040 49 6e 20 73 75 63 68 20 63 61 73 65 2c 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 69 6e 63 6f 72 In.such.case,.this.License.incor
63060 70 6f 72 61 74 65 73 0d 0a 74 68 65 20 6c 69 6d 69 74 61 74 69 6f 6e 20 61 73 20 69 66 20 77 72 porates..the.limitation.as.if.wr
63080 69 74 74 65 6e 20 69 6e 20 74 68 65 20 62 6f 64 79 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 itten.in.the.body.of.this.Licens
630a0 65 2e 0d 0a 0d 0a 20 20 39 2e 20 54 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 e.......9..The.Free.Software.Fou
630c0 6e 64 61 74 69 6f 6e 20 6d 61 79 20 70 75 62 6c 69 73 68 20 72 65 76 69 73 65 64 20 61 6e 64 2f ndation.may.publish.revised.and/
630e0 6f 72 20 6e 65 77 20 76 65 72 73 69 6f 6e 73 0d 0a 6f 66 20 74 68 65 20 47 65 6e 65 72 61 6c 20 or.new.versions..of.the.General.
63100 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 72 6f 6d 20 74 69 6d 65 20 74 6f 20 74 69 6d 65 Public.License.from.time.to.time
63120 2e 20 20 53 75 63 68 20 6e 65 77 20 76 65 72 73 69 6f 6e 73 20 77 69 6c 6c 0d 0a 62 65 20 73 69 ...Such.new.versions.will..be.si
63140 6d 69 6c 61 72 20 69 6e 20 73 70 69 72 69 74 20 74 6f 20 74 68 65 20 70 72 65 73 65 6e 74 20 76 milar.in.spirit.to.the.present.v
63160 65 72 73 69 6f 6e 2c 20 62 75 74 20 6d 61 79 20 64 69 66 66 65 72 20 69 6e 20 64 65 74 61 69 6c ersion,.but.may.differ.in.detail
63180 20 74 6f 0d 0a 61 64 64 72 65 73 73 20 6e 65 77 20 70 72 6f 62 6c 65 6d 73 20 6f 72 20 63 6f 6e .to..address.new.problems.or.con
631a0 63 65 72 6e 73 2e 0d 0a 0d 0a 45 61 63 68 20 76 65 72 73 69 6f 6e 20 69 73 20 67 69 76 65 6e 20 cerns.....Each.version.is.given.
631c0 61 20 64 69 73 74 69 6e 67 75 69 73 68 69 6e 67 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 2e a.distinguishing.version.number.
631e0 20 20 49 66 20 74 68 65 20 50 72 6f 67 72 61 6d 0d 0a 73 70 65 63 69 66 69 65 73 20 61 20 76 65 ..If.the.Program..specifies.a.ve
63200 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 77 68 69 rsion.number.of.this.License.whi
63220 63 68 20 61 70 70 6c 69 65 73 20 74 6f 20 69 74 20 61 6e 64 20 22 61 6e 79 0d 0a 6c 61 74 65 72 ch.applies.to.it.and."any..later
63240 20 76 65 72 73 69 6f 6e 22 2c 20 79 6f 75 20 68 61 76 65 20 74 68 65 20 6f 70 74 69 6f 6e 20 6f .version",.you.have.the.option.o
63260 66 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 65 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 f.following.the.terms.and.condit
63280 69 6f 6e 73 0d 0a 65 69 74 68 65 72 20 6f 66 20 74 68 61 74 20 76 65 72 73 69 6f 6e 20 6f 72 20 ions..either.of.that.version.or.
632a0 6f 66 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 20 70 75 62 6c 69 73 68 65 64 20 62 of.any.later.version.published.b
632c0 79 20 74 68 65 20 46 72 65 65 0d 0a 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2e y.the.Free..Software.Foundation.
632e0 20 20 49 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 64 6f 65 73 20 6e 6f 74 20 73 70 65 63 69 66 ..If.the.Program.does.not.specif
63300 79 20 61 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 0d 0a 74 68 69 73 20 4c 69 63 65 y.a.version.number.of..this.Lice
63320 6e 73 65 2c 20 79 6f 75 20 6d 61 79 20 63 68 6f 6f 73 65 20 61 6e 79 20 76 65 72 73 69 6f 6e 20 nse,.you.may.choose.any.version.
63340 65 76 65 72 20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 ever.published.by.the.Free.Softw
63360 61 72 65 0d 0a 46 6f 75 6e 64 61 74 69 6f 6e 2e 0d 0a 0d 0a 20 20 31 30 2e 20 49 66 20 79 6f 75 are..Foundation.......10..If.you
63380 20 77 69 73 68 20 74 6f 20 69 6e 63 6f 72 70 6f 72 61 74 65 20 70 61 72 74 73 20 6f 66 20 74 68 .wish.to.incorporate.parts.of.th
633a0 65 20 50 72 6f 67 72 61 6d 20 69 6e 74 6f 20 6f 74 68 65 72 20 66 72 65 65 0d 0a 70 72 6f 67 72 e.Program.into.other.free..progr
633c0 61 6d 73 20 77 68 6f 73 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 63 6f 6e 64 69 74 69 6f 6e ams.whose.distribution.condition
633e0 73 20 61 72 65 20 64 69 66 66 65 72 65 6e 74 2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 20 61 75 s.are.different,.write.to.the.au
63400 74 68 6f 72 0d 0a 74 6f 20 61 73 6b 20 66 6f 72 20 70 65 72 6d 69 73 73 69 6f 6e 2e 20 20 46 6f thor..to.ask.for.permission...Fo
63420 72 20 73 6f 66 74 77 61 72 65 20 77 68 69 63 68 20 69 73 20 63 6f 70 79 72 69 67 68 74 65 64 20 r.software.which.is.copyrighted.
63440 62 79 20 74 68 65 20 46 72 65 65 0d 0a 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e by.the.Free..Software.Foundation
63460 2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 ,.write.to.the.Free.Software.Fou
63480 6e 64 61 74 69 6f 6e 3b 20 77 65 20 73 6f 6d 65 74 69 6d 65 73 0d 0a 6d 61 6b 65 20 65 78 63 65 ndation;.we.sometimes..make.exce
634a0 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 69 73 2e 20 20 4f 75 72 20 64 65 63 69 73 69 6f 6e 20 77 ptions.for.this...Our.decision.w
634c0 69 6c 6c 20 62 65 20 67 75 69 64 65 64 20 62 79 20 74 68 65 20 74 77 6f 20 67 6f 61 6c 73 0d 0a ill.be.guided.by.the.two.goals..
634e0 6f 66 20 70 72 65 73 65 72 76 69 6e 67 20 74 68 65 20 66 72 65 65 20 73 74 61 74 75 73 20 6f 66 of.preserving.the.free.status.of
63500 20 61 6c 6c 20 64 65 72 69 76 61 74 69 76 65 73 20 6f 66 20 6f 75 72 20 66 72 65 65 20 73 6f 66 .all.derivatives.of.our.free.sof
63520 74 77 61 72 65 20 61 6e 64 0d 0a 6f 66 20 70 72 6f 6d 6f 74 69 6e 67 20 74 68 65 20 73 68 61 72 tware.and..of.promoting.the.shar
63540 69 6e 67 20 61 6e 64 20 72 65 75 73 65 20 6f 66 20 73 6f 66 74 77 61 72 65 20 67 65 6e 65 72 61 ing.and.reuse.of.software.genera
63560 6c 6c 79 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lly.............................
63580 20 20 20 20 4e 4f 20 57 41 52 52 41 4e 54 59 0d 0a 0d 0a 20 20 31 31 2e 20 42 45 43 41 55 53 45 ....NO.WARRANTY......11..BECAUSE
635a0 20 54 48 45 20 50 52 4f 47 52 41 4d 20 49 53 20 4c 49 43 45 4e 53 45 44 20 46 52 45 45 20 4f 46 .THE.PROGRAM.IS.LICENSED.FREE.OF
635c0 20 43 48 41 52 47 45 2c 20 54 48 45 52 45 20 49 53 20 4e 4f 20 57 41 52 52 41 4e 54 59 0d 0a 46 .CHARGE,.THERE.IS.NO.WARRANTY..F
635e0 4f 52 20 54 48 45 20 50 52 4f 47 52 41 4d 2c 20 54 4f 20 54 48 45 20 45 58 54 45 4e 54 20 50 45 OR.THE.PROGRAM,.TO.THE.EXTENT.PE
63600 52 4d 49 54 54 45 44 20 42 59 20 41 50 50 4c 49 43 41 42 4c 45 20 4c 41 57 2e 20 20 45 58 43 45 RMITTED.BY.APPLICABLE.LAW...EXCE
63620 50 54 20 57 48 45 4e 0d 0a 4f 54 48 45 52 57 49 53 45 20 53 54 41 54 45 44 20 49 4e 20 57 52 49 PT.WHEN..OTHERWISE.STATED.IN.WRI
63640 54 49 4e 47 20 54 48 45 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 53 20 41 4e 44 2f 4f TING.THE.COPYRIGHT.HOLDERS.AND/O
63660 52 20 4f 54 48 45 52 20 50 41 52 54 49 45 53 0d 0a 50 52 4f 56 49 44 45 20 54 48 45 20 50 52 4f R.OTHER.PARTIES..PROVIDE.THE.PRO
63680 47 52 41 4d 20 22 41 53 20 49 53 22 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 GRAM."AS.IS".WITHOUT.WARRANTY.OF
636a0 20 41 4e 59 20 4b 49 4e 44 2c 20 45 49 54 48 45 52 20 45 58 50 52 45 53 53 45 44 0d 0a 4f 52 20 .ANY.KIND,.EITHER.EXPRESSED..OR.
636c0 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 IMPLIED,.INCLUDING,.BUT.NOT.LIMI
636e0 54 45 44 20 54 4f 2c 20 54 48 45 20 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 45 53 20 4f TED.TO,.THE.IMPLIED.WARRANTIES.O
63700 46 0d 0a 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 41 4e 44 20 46 49 54 4e 45 53 53 20 46 F..MERCHANTABILITY.AND.FITNESS.F
63720 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 54 48 45 20 45 4e OR.A.PARTICULAR.PURPOSE...THE.EN
63740 54 49 52 45 20 52 49 53 4b 20 41 53 0d 0a 54 4f 20 54 48 45 20 51 55 41 4c 49 54 59 20 41 4e 44 TIRE.RISK.AS..TO.THE.QUALITY.AND
63760 20 50 45 52 46 4f 52 4d 41 4e 43 45 20 4f 46 20 54 48 45 20 50 52 4f 47 52 41 4d 20 49 53 20 57 .PERFORMANCE.OF.THE.PROGRAM.IS.W
63780 49 54 48 20 59 4f 55 2e 20 20 53 48 4f 55 4c 44 20 54 48 45 0d 0a 50 52 4f 47 52 41 4d 20 50 52 ITH.YOU...SHOULD.THE..PROGRAM.PR
637a0 4f 56 45 20 44 45 46 45 43 54 49 56 45 2c 20 59 4f 55 20 41 53 53 55 4d 45 20 54 48 45 20 43 4f OVE.DEFECTIVE,.YOU.ASSUME.THE.CO
637c0 53 54 20 4f 46 20 41 4c 4c 20 4e 45 43 45 53 53 41 52 59 20 53 45 52 56 49 43 49 4e 47 2c 0d 0a ST.OF.ALL.NECESSARY.SERVICING,..
637e0 52 45 50 41 49 52 20 4f 52 20 43 4f 52 52 45 43 54 49 4f 4e 2e 0d 0a 0d 0a 20 20 31 32 2e 20 49 REPAIR.OR.CORRECTION.......12..I
63800 4e 20 4e 4f 20 45 56 45 4e 54 20 55 4e 4c 45 53 53 20 52 45 51 55 49 52 45 44 20 42 59 20 41 50 N.NO.EVENT.UNLESS.REQUIRED.BY.AP
63820 50 4c 49 43 41 42 4c 45 20 4c 41 57 20 4f 52 20 41 47 52 45 45 44 20 54 4f 20 49 4e 20 57 52 49 PLICABLE.LAW.OR.AGREED.TO.IN.WRI
63840 54 49 4e 47 0d 0a 57 49 4c 4c 20 41 4e 59 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 52 2c TING..WILL.ANY.COPYRIGHT.HOLDER,
63860 20 4f 52 20 41 4e 59 20 4f 54 48 45 52 20 50 41 52 54 59 20 57 48 4f 20 4d 41 59 20 4d 4f 44 49 .OR.ANY.OTHER.PARTY.WHO.MAY.MODI
63880 46 59 20 41 4e 44 2f 4f 52 0d 0a 52 45 44 49 53 54 52 49 42 55 54 45 20 54 48 45 20 50 52 4f 47 FY.AND/OR..REDISTRIBUTE.THE.PROG
638a0 52 41 4d 20 41 53 20 50 45 52 4d 49 54 54 45 44 20 41 42 4f 56 45 2c 20 42 45 20 4c 49 41 42 4c RAM.AS.PERMITTED.ABOVE,.BE.LIABL
638c0 45 20 54 4f 20 59 4f 55 20 46 4f 52 20 44 41 4d 41 47 45 53 2c 0d 0a 49 4e 43 4c 55 44 49 4e 47 E.TO.YOU.FOR.DAMAGES,..INCLUDING
638e0 20 41 4e 59 20 47 45 4e 45 52 41 4c 2c 20 53 50 45 43 49 41 4c 2c 20 49 4e 43 49 44 45 4e 54 41 .ANY.GENERAL,.SPECIAL,.INCIDENTA
63900 4c 20 4f 52 20 43 4f 4e 53 45 51 55 45 4e 54 49 41 4c 20 44 41 4d 41 47 45 53 20 41 52 49 53 49 L.OR.CONSEQUENTIAL.DAMAGES.ARISI
63920 4e 47 0d 0a 4f 55 54 20 4f 46 20 54 48 45 20 55 53 45 20 4f 52 20 49 4e 41 42 49 4c 49 54 59 20 NG..OUT.OF.THE.USE.OR.INABILITY.
63940 54 4f 20 55 53 45 20 54 48 45 20 50 52 4f 47 52 41 4d 20 28 49 4e 43 4c 55 44 49 4e 47 20 42 55 TO.USE.THE.PROGRAM.(INCLUDING.BU
63960 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 0d 0a 54 4f 20 4c 4f 53 53 20 4f 46 20 44 41 54 41 20 4f T.NOT.LIMITED..TO.LOSS.OF.DATA.O
63980 52 20 44 41 54 41 20 42 45 49 4e 47 20 52 45 4e 44 45 52 45 44 20 49 4e 41 43 43 55 52 41 54 45 R.DATA.BEING.RENDERED.INACCURATE
639a0 20 4f 52 20 4c 4f 53 53 45 53 20 53 55 53 54 41 49 4e 45 44 20 42 59 0d 0a 59 4f 55 20 4f 52 20 .OR.LOSSES.SUSTAINED.BY..YOU.OR.
639c0 54 48 49 52 44 20 50 41 52 54 49 45 53 20 4f 52 20 41 20 46 41 49 4c 55 52 45 20 4f 46 20 54 48 THIRD.PARTIES.OR.A.FAILURE.OF.TH
639e0 45 20 50 52 4f 47 52 41 4d 20 54 4f 20 4f 50 45 52 41 54 45 20 57 49 54 48 20 41 4e 59 20 4f 54 E.PROGRAM.TO.OPERATE.WITH.ANY.OT
63a00 48 45 52 0d 0a 50 52 4f 47 52 41 4d 53 29 2c 20 45 56 45 4e 20 49 46 20 53 55 43 48 20 48 4f 4c HER..PROGRAMS),.EVEN.IF.SUCH.HOL
63a20 44 45 52 20 4f 52 20 4f 54 48 45 52 20 50 41 52 54 59 20 48 41 53 20 42 45 45 4e 20 41 44 56 49 DER.OR.OTHER.PARTY.HAS.BEEN.ADVI
63a40 53 45 44 20 4f 46 20 54 48 45 0d 0a 50 4f 53 53 49 42 49 4c 49 54 59 20 4f 46 20 53 55 43 48 20 SED.OF.THE..POSSIBILITY.OF.SUCH.
63a60 44 41 4d 41 47 45 53 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 DAMAGES.........................
63a80 20 45 4e 44 20 4f 46 20 54 45 52 4d 53 20 41 4e 44 20 43 4f 4e 44 49 54 49 4f 4e 53 0d 0a 0d 0a .END.OF.TERMS.AND.CONDITIONS....
63aa0 20 20 20 20 20 20 20 20 20 20 20 20 48 6f 77 20 74 6f 20 41 70 70 6c 79 20 54 68 65 73 65 20 54 ............How.to.Apply.These.T
63ac0 65 72 6d 73 20 74 6f 20 59 6f 75 72 20 4e 65 77 20 50 72 6f 67 72 61 6d 73 0d 0a 0d 0a 20 20 49 erms.to.Your.New.Programs......I
63ae0 66 20 79 6f 75 20 64 65 76 65 6c 6f 70 20 61 20 6e 65 77 20 70 72 6f 67 72 61 6d 2c 20 61 6e 64 f.you.develop.a.new.program,.and
63b00 20 79 6f 75 20 77 61 6e 74 20 69 74 20 74 6f 20 62 65 20 6f 66 20 74 68 65 20 67 72 65 61 74 65 .you.want.it.to.be.of.the.greate
63b20 73 74 0d 0a 70 6f 73 73 69 62 6c 65 20 75 73 65 20 74 6f 20 74 68 65 20 70 75 62 6c 69 63 2c 20 st..possible.use.to.the.public,.
63b40 74 68 65 20 62 65 73 74 20 77 61 79 20 74 6f 20 61 63 68 69 65 76 65 20 74 68 69 73 20 69 73 20 the.best.way.to.achieve.this.is.
63b60 74 6f 20 6d 61 6b 65 20 69 74 0d 0a 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 77 68 69 63 68 20 to.make.it..free.software.which.
63b80 65 76 65 72 79 6f 6e 65 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 61 6e 64 20 63 68 everyone.can.redistribute.and.ch
63ba0 61 6e 67 65 20 75 6e 64 65 72 20 74 68 65 73 65 20 74 65 72 6d 73 2e 0d 0a 0d 0a 20 20 54 6f 20 ange.under.these.terms.......To.
63bc0 64 6f 20 73 6f 2c 20 61 74 74 61 63 68 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6e 6f 74 69 do.so,.attach.the.following.noti
63be0 63 65 73 20 74 6f 20 74 68 65 20 70 72 6f 67 72 61 6d 2e 20 20 49 74 20 69 73 20 73 61 66 65 73 ces.to.the.program...It.is.safes
63c00 74 0d 0a 74 6f 20 61 74 74 61 63 68 20 74 68 65 6d 20 74 6f 20 74 68 65 20 73 74 61 72 74 20 6f t..to.attach.them.to.the.start.o
63c20 66 20 65 61 63 68 20 73 6f 75 72 63 65 20 66 69 6c 65 20 74 6f 20 6d 6f 73 74 20 65 66 66 65 63 f.each.source.file.to.most.effec
63c40 74 69 76 65 6c 79 0d 0a 63 6f 6e 76 65 79 20 74 68 65 20 65 78 63 6c 75 73 69 6f 6e 20 6f 66 20 tively..convey.the.exclusion.of.
63c60 77 61 72 72 61 6e 74 79 3b 20 61 6e 64 20 65 61 63 68 20 66 69 6c 65 20 73 68 6f 75 6c 64 20 68 warranty;.and.each.file.should.h
63c80 61 76 65 20 61 74 20 6c 65 61 73 74 0d 0a 74 68 65 20 22 63 6f 70 79 72 69 67 68 74 22 20 6c 69 ave.at.least..the."copyright".li
63ca0 6e 65 20 61 6e 64 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 77 68 65 72 65 20 74 68 65 20 66 75 ne.and.a.pointer.to.where.the.fu
63cc0 6c 6c 20 6e 6f 74 69 63 65 20 69 73 20 66 6f 75 6e 64 2e 0d 0a 0d 0a 20 20 20 20 3c 6f 6e 65 20 ll.notice.is.found.........<one.
63ce0 6c 69 6e 65 20 74 6f 20 67 69 76 65 20 74 68 65 20 70 72 6f 67 72 61 6d 27 73 20 6e 61 6d 65 20 line.to.give.the.program's.name.
63d00 61 6e 64 20 61 20 62 72 69 65 66 20 69 64 65 61 20 6f 66 20 77 68 61 74 20 69 74 20 64 6f 65 73 and.a.brief.idea.of.what.it.does
63d20 2e 3e 0d 0a 20 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 3c 79 65 61 72 3e 20 20 3c 6e .>......Copyright.(C).<year>..<n
63d40 61 6d 65 20 6f 66 20 61 75 74 68 6f 72 3e 0d 0a 0d 0a 20 20 20 20 54 68 69 73 20 70 72 6f 67 72 ame.of.author>........This.progr
63d60 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e 20 72 65 64 am.is.free.software:.you.can.red
63d80 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0d 0a 20 20 20 20 istribute.it.and/or.modify......
63da0 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 it.under.the.terms.of.the.GNU.Ge
63dc0 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 neral.Public.License.as.publishe
63de0 64 20 62 79 0d 0a 20 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e d.by......the.Free.Software.Foun
63e00 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
63e20 4c 69 63 65 6e 73 65 2c 20 6f 72 0d 0a 20 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e License,.or......(at.your.option
63e40 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0d 0a 0d 0a 20 20 20 20 54 68 69 73 ).any.later.version.........This
63e60 20 70 72 6f 67 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 .program.is.distributed.in.the.h
63e80 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0d 0a 20 20 20 ope.that.it.will.be.useful,.....
63ea0 20 62 75 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f .but.WITHOUT.ANY.WARRANTY;.witho
63ec0 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0d ut.even.the.implied.warranty.of.
63ee0 0a 20 20 20 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 .....MERCHANTABILITY.or.FITNESS.
63f00 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 FOR.A.PARTICULAR.PURPOSE...See.t
63f20 68 65 0d 0a 20 20 20 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e he......GNU.General.Public.Licen
63f40 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0d 0a 0d 0a 20 20 20 20 59 6f 75 20 se.for.more.details.........You.
63f60 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 should.have.received.a.copy.of.t
63f80 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0d 0a 20 he.GNU.General.Public.License...
63fa0 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 ...along.with.this.program...If.
63fc0 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 not,.see.<http://www.gnu.org/lic
63fe0 65 6e 73 65 73 2f 3e 2e 0d 0a 0d 0a 41 6c 73 6f 20 61 64 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e enses/>.....Also.add.information
64000 20 6f 6e 20 68 6f 77 20 74 6f 20 63 6f 6e 74 61 63 74 20 79 6f 75 20 62 79 20 65 6c 65 63 74 72 .on.how.to.contact.you.by.electr
64020 6f 6e 69 63 20 61 6e 64 20 70 61 70 65 72 20 6d 61 69 6c 2e 0d 0a 0d 0a 49 66 20 74 68 65 20 70 onic.and.paper.mail.....If.the.p
64040 72 6f 67 72 61 6d 20 69 73 20 69 6e 74 65 72 61 63 74 69 76 65 2c 20 6d 61 6b 65 20 69 74 20 6f rogram.is.interactive,.make.it.o
64060 75 74 70 75 74 20 61 20 73 68 6f 72 74 20 6e 6f 74 69 63 65 20 6c 69 6b 65 20 74 68 69 73 0d 0a utput.a.short.notice.like.this..
64080 77 68 65 6e 20 69 74 20 73 74 61 72 74 73 20 69 6e 20 61 6e 20 69 6e 74 65 72 61 63 74 69 76 65 when.it.starts.in.an.interactive
640a0 20 6d 6f 64 65 3a 0d 0a 0d 0a 20 20 20 20 47 6e 6f 6d 6f 76 69 73 69 6f 6e 20 76 65 72 73 69 6f .mode:........Gnomovision.versio
640c0 6e 20 36 39 2c 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 3c 79 65 61 72 3e 20 20 3c 6e 61 6d n.69,.Copyright.(C).<year>..<nam
640e0 65 20 6f 66 20 61 75 74 68 6f 72 3e 0d 0a 20 20 20 20 47 6e 6f 6d 6f 76 69 73 69 6f 6e 20 63 6f e.of.author>......Gnomovision.co
64100 6d 65 73 20 77 69 74 68 20 41 42 53 4f 4c 55 54 45 4c 59 20 4e 4f 20 57 41 52 52 41 4e 54 59 3b mes.with.ABSOLUTELY.NO.WARRANTY;
64120 20 66 6f 72 20 64 65 74 61 69 6c 73 20 74 79 70 65 20 60 73 68 6f 77 20 77 27 2e 0d 0a 20 20 20 .for.details.type.`show.w'......
64140 20 54 68 69 73 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 2c 20 61 6e 64 20 79 6f 75 20 .This.is.free.software,.and.you.
64160 61 72 65 20 77 65 6c 63 6f 6d 65 20 74 6f 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 0d 0a are.welcome.to.redistribute.it..
64180 20 20 20 20 75 6e 64 65 72 20 63 65 72 74 61 69 6e 20 63 6f 6e 64 69 74 69 6f 6e 73 3b 20 74 79 ....under.certain.conditions;.ty
641a0 70 65 20 60 73 68 6f 77 20 63 27 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 0d 0a 0d 0a 54 68 65 20 pe.`show.c'.for.details.....The.
641c0 68 79 70 6f 74 68 65 74 69 63 61 6c 20 63 6f 6d 6d 61 6e 64 73 20 60 73 68 6f 77 20 77 27 20 61 hypothetical.commands.`show.w'.a
641e0 6e 64 20 60 73 68 6f 77 20 63 27 20 73 68 6f 75 6c 64 20 73 68 6f 77 20 74 68 65 20 61 70 70 72 nd.`show.c'.should.show.the.appr
64200 6f 70 72 69 61 74 65 0d 0a 70 61 72 74 73 20 6f 66 20 74 68 65 20 47 65 6e 65 72 61 6c 20 50 75 opriate..parts.of.the.General.Pu
64220 62 6c 69 63 20 4c 69 63 65 6e 73 65 2e 20 20 4f 66 20 63 6f 75 72 73 65 2c 20 74 68 65 20 63 6f blic.License...Of.course,.the.co
64240 6d 6d 61 6e 64 73 20 79 6f 75 20 75 73 65 20 6d 61 79 0d 0a 62 65 20 63 61 6c 6c 65 64 20 73 6f mmands.you.use.may..be.called.so
64260 6d 65 74 68 69 6e 67 20 6f 74 68 65 72 20 74 68 61 6e 20 60 73 68 6f 77 20 77 27 20 61 6e 64 20 mething.other.than.`show.w'.and.
64280 60 73 68 6f 77 20 63 27 3b 20 74 68 65 79 20 63 6f 75 6c 64 20 65 76 65 6e 20 62 65 0d 0a 6d 6f `show.c';.they.could.even.be..mo
642a0 75 73 65 2d 63 6c 69 63 6b 73 20 6f 72 20 6d 65 6e 75 20 69 74 65 6d 73 2d 2d 77 68 61 74 65 76 use-clicks.or.menu.items--whatev
642c0 65 72 20 73 75 69 74 73 20 79 6f 75 72 20 70 72 6f 67 72 61 6d 2e 0d 0a 0d 0a 59 6f 75 20 73 68 er.suits.your.program.....You.sh
642e0 6f 75 6c 64 20 61 6c 73 6f 20 67 65 74 20 79 6f 75 72 20 65 6d 70 6c 6f 79 65 72 20 28 69 66 20 ould.also.get.your.employer.(if.
64300 79 6f 75 20 77 6f 72 6b 20 61 73 20 61 20 70 72 6f 67 72 61 6d 6d 65 72 29 20 6f 72 20 79 6f 75 you.work.as.a.programmer).or.you
64320 72 0d 0a 73 63 68 6f 6f 6c 2c 20 69 66 20 61 6e 79 2c 20 74 6f 20 73 69 67 6e 20 61 20 22 63 6f r..school,.if.any,.to.sign.a."co
64340 70 79 72 69 67 68 74 20 64 69 73 63 6c 61 69 6d 65 72 22 20 66 6f 72 20 74 68 65 20 70 72 6f 67 pyright.disclaimer".for.the.prog
64360 72 61 6d 2c 20 69 66 0d 0a 6e 65 63 65 73 73 61 72 79 2e 20 20 48 65 72 65 20 69 73 20 61 20 73 ram,.if..necessary...Here.is.a.s
64380 61 6d 70 6c 65 3b 20 61 6c 74 65 72 20 74 68 65 20 6e 61 6d 65 73 3a 0d 0a 0d 0a 20 20 59 6f 79 ample;.alter.the.names:......Yoy
643a0 6f 64 79 6e 65 2c 20 49 6e 63 2e 2c 20 68 65 72 65 62 79 20 64 69 73 63 6c 61 69 6d 73 20 61 6c odyne,.Inc.,.hereby.disclaims.al
643c0 6c 20 63 6f 70 79 72 69 67 68 74 20 69 6e 74 65 72 65 73 74 20 69 6e 20 74 68 65 20 70 72 6f 67 l.copyright.interest.in.the.prog
643e0 72 61 6d 0d 0a 20 20 60 47 6e 6f 6d 6f 76 69 73 69 6f 6e 27 20 28 77 68 69 63 68 20 6d 61 6b 65 ram....`Gnomovision'.(which.make
64400 73 20 70 61 73 73 65 73 20 61 74 20 63 6f 6d 70 69 6c 65 72 73 29 20 77 72 69 74 74 65 6e 20 62 s.passes.at.compilers).written.b
64420 79 20 4a 61 6d 65 73 20 48 61 63 6b 65 72 2e 0d 0a 0d 0a 20 20 3c 73 69 67 6e 61 74 75 72 65 20 y.James.Hacker.......<signature.
64440 6f 66 20 54 79 20 43 6f 6f 6e 3e 2c 20 31 20 41 70 72 69 6c 20 31 39 38 39 0d 0a 20 20 54 79 20 of.Ty.Coon>,.1.April.1989....Ty.
64460 43 6f 6f 6e 2c 20 50 72 65 73 69 64 65 6e 74 20 6f 66 20 56 69 63 65 0d 0a 0d 0a 54 68 69 73 20 Coon,.President.of.Vice....This.
64480 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 64 6f 65 73 20 6e 6f 74 20 General.Public.License.does.not.
644a0 70 65 72 6d 69 74 20 69 6e 63 6f 72 70 6f 72 61 74 69 6e 67 20 79 6f 75 72 20 70 72 6f 67 72 61 permit.incorporating.your.progra
644c0 6d 20 69 6e 74 6f 0d 0a 70 72 6f 70 72 69 65 74 61 72 79 20 70 72 6f 67 72 61 6d 73 2e 20 20 49 m.into..proprietary.programs...I
644e0 66 20 79 6f 75 72 20 70 72 6f 67 72 61 6d 20 69 73 20 61 20 73 75 62 72 6f 75 74 69 6e 65 20 6c f.your.program.is.a.subroutine.l
64500 69 62 72 61 72 79 2c 20 79 6f 75 20 6d 61 79 0d 0a 63 6f 6e 73 69 64 65 72 20 69 74 20 6d 6f 72 ibrary,.you.may..consider.it.mor
64520 65 20 75 73 65 66 75 6c 20 74 6f 20 70 65 72 6d 69 74 20 6c 69 6e 6b 69 6e 67 20 70 72 6f 70 72 e.useful.to.permit.linking.propr
64540 69 65 74 61 72 79 20 61 70 70 6c 69 63 61 74 69 6f 6e 73 20 77 69 74 68 20 74 68 65 0d 0a 6c 69 ietary.applications.with.the..li
64560 62 72 61 72 79 2e 20 20 49 66 20 74 68 69 73 20 69 73 20 77 68 61 74 20 79 6f 75 20 77 61 6e 74 brary...If.this.is.what.you.want
64580 20 74 6f 20 64 6f 2c 20 75 73 65 20 74 68 65 20 47 4e 55 20 4c 65 73 73 65 72 20 47 65 6e 65 72 .to.do,.use.the.GNU.Lesser.Gener
645a0 61 6c 0d 0a 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 al..Public.License.instead.of.th
645c0 69 73 20 4c 69 63 65 6e 73 65 2e 0d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 is.License......................
645e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64600 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 64 65 32 30 2e 6c 7a 00 lzip-1.25/testsuite/fox_de20.lz.
64620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
64680 30 30 30 30 31 32 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 36 34 33 30 00 20 30 00 00 00 0000120.14744236057.016430..0...
646a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
646c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
646e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64700 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
64720 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
64740 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
64760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
647a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
647c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
647e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64800 4c 5a 49 50 01 0c 00 2a 1a 08 a2 03 25 66 f1 4b 78 c5 a2 05 fe 2e e6 d9 d2 20 1a ad 34 f8 e2 1d LZIP...*....%f.Kx...........4...
64820 e8 41 36 fa dc 06 69 bb 3c e4 10 34 27 09 eb b3 66 e3 ec 97 ea ae 23 ff fe 8e a0 00 6a cc 50 eb .A6...i.<..4'...f.....#.....j.P.
64840 2d 00 00 00 00 00 00 00 50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -.......P.......................
64860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
648a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
648c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
648e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
649a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
649c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
649e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64a00 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 74 65 73 74 2e 74 78 74 2e 6c 7a 00 lzip-1.25/testsuite/test.txt.lz.
64a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
64a80 30 30 31 36 32 35 35 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 36 36 33 37 00 20 30 00 00 00 0016255.14744236057.016637..0...
64aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64b00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
64b20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
64b40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
64b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64c00 4c 5a 49 50 01 ef 00 10 6d fe 47 27 15 f8 22 27 f9 79 a3 cb c0 53 0a 54 9d ea 93 0e b0 93 c5 dc LZIP....m.G'.."'.y...S.T........
64c20 d1 40 07 48 0b 56 e2 30 e0 39 47 7d 7f 1f 3d 90 99 92 56 05 f0 22 d3 7d b9 bb 81 c1 08 2e 0a cc .@.H.V.0.9G}..=...V..".}........
64c40 e4 a6 a6 70 49 49 cd 53 ab bf c5 50 60 0b cb 53 34 f9 82 9c 00 ba df b6 cb 16 e0 4c 16 5e d7 e7 ...pII.S...P`..S4..........L.^..
64c60 1c 56 f6 36 1e f0 f4 99 06 e2 54 97 c8 a1 c5 4f bb 68 94 a4 a0 26 85 9f 82 2f 0c b8 af 03 96 a7 .V.6......T....O.h...&.../......
64c80 6b 31 57 1d 27 fe 4a e0 2a d9 80 c9 65 2f e5 3b 71 96 ae 5a 9c 6b aa d2 c8 5e 12 ff 4a 9e 49 9b k1W.'.J.*...e/.;q..Z.k...^..J.I.
64ca0 4e 7e 85 d4 ad 1e 40 9e cb 8e 4e 1e b9 85 ec e1 4d 86 15 aa df fb 43 6a 73 1e a9 bf d6 b4 0e 56 N~....@...N.....M.....Cjs......V
64cc0 0f 35 28 1d 17 a2 9b 93 fa 1d 4f ec 76 80 bc b5 3e f2 bf d7 3d a0 60 26 e8 48 66 f0 fc f6 cd d3 .5(.......O.v...>...=.`&.Hf.....
64ce0 1b d8 d8 10 05 02 e7 9f b9 6a e6 3a 87 ee ac 5c b5 f2 4e a5 73 e3 8c 89 c2 76 14 4f 7b 35 a0 1a .........j.:...\..N.s....v.O{5..
64d00 18 c0 af da 64 ca 95 8b 88 9d cd 0d fe 81 42 3f a6 b3 d3 ff 8c d0 ed ac a9 e8 14 a9 33 d7 63 70 ....d.........B?............3.cp
64d20 5e 98 17 0a a5 de 28 ef bb eb 29 a3 c7 7a ed c8 da a3 bc 2f 1e 5d 9d fb 6c c7 2a 64 f1 38 6a 40 ^.....(...)..z...../.]..l.*d.8j@
64d40 ed 83 27 b7 ef 70 2d fb cb 69 2b 39 38 db 30 ba 4b 4d 9e 38 83 64 52 f0 06 2a 10 d7 e7 b4 9f 18 ..'..p-..i+98.0.KM.8.dR..*......
64d60 2c b9 50 fc f7 56 5c 93 04 2f 40 29 8f 66 e0 27 63 88 36 ac 77 9f 84 23 8d f2 d5 29 b6 7a 3e c8 ,.P..V\../@).f.'c.6.w..#...).z>.
64d80 86 c1 e7 a1 27 2f 51 ee 83 f5 54 b1 05 e2 8e d9 2d 77 0f 49 87 eb 0d a4 a8 68 33 ee 21 17 64 5b ....'/Q...T.....-w.I.....h3.!.d[
64da0 94 2c 18 28 29 e2 10 2d 90 d1 c2 6f 68 8f 08 0c 67 23 1d 79 f3 45 32 bc e6 0a bc 97 75 2c aa 5e .,.()..-...oh...g#.y.E2.....u,.^
64dc0 6a 34 46 6f a5 53 2c 71 c4 4d 74 c2 71 5c 33 79 1f 6f a9 b8 9b fa 71 9f cd a8 8d 29 dd d1 fe a9 j4Fo.S,q.Mt.q\3y.o....q....)....
64de0 da 13 00 7a a9 0a 9b 6c c2 7f da 5d 7f be e5 b1 6a e2 36 f1 54 1b 50 d6 8a 63 9f 21 b1 14 53 67 ...z...l...]....j.6.T.P..c.!..Sg
64e00 78 88 c2 36 8f 2c 24 af 9e c9 bd f5 39 ae 5e d6 97 31 29 f5 15 6d b7 11 eb b3 f9 83 f7 dc cb ae x..6.,$.....9.^..1)..m..........
64e20 bb c0 96 a1 56 72 51 41 b4 a1 98 89 a8 9a 61 53 78 98 59 c0 06 c0 8f 2b 1e 67 a4 c3 9b fd 44 c7 ....VrQA......aSx.Y....+.g....D.
64e40 bb 9e b4 54 c9 e1 82 da 32 95 f2 20 c5 47 9a c0 98 bd d9 96 7b bf 12 a0 6a 74 60 7f d1 45 fa 3b ...T....2....G......{...jt`..E.;
64e60 d9 31 8f d7 1b 75 cb 07 28 0a 37 5f bb 58 54 7b c1 d9 6e 3c 96 7e fe 47 fb fe 0f d7 3d 83 b0 45 .1...u..(.7_.XT{..n<.~.G....=..E
64e80 83 d7 7c b5 9c 81 c0 92 59 72 0d d1 d6 2c b4 49 14 8d a9 dc c9 3e 76 a9 8b 4b 58 97 91 37 35 18 ..|.....Yr...,.I.....>v..KX..75.
64ea0 d2 50 8d be 8e 54 42 71 74 d4 1d 4c ec 70 c2 bc 19 2e d7 4b 15 da b6 43 8d 5d d9 92 77 2c d0 68 .P...TBqt..L.p.....K...C.]..w,.h
64ec0 2c f2 cd 4d c6 34 2b 0f ca 1e 4e b5 e6 f3 d0 ef c3 b5 6b 7f c1 9a e1 ac 25 d4 5d 65 e9 41 0d a6 ,..M.4+...N.......k.....%.]e.A..
64ee0 21 ca e8 8f 1e e6 9c d0 88 cb 1e 19 27 e2 85 71 4d 63 94 be 97 15 22 90 e2 5e e5 72 88 61 7c 3e !...........'..qMc...."..^.r.a|>
64f00 27 ed 84 7b 8a 37 69 cc 7f 48 7e 18 9e 14 f5 58 8b bd 31 48 54 ee 1e a7 6a 31 08 87 8f 14 28 0c '..{.7i..H~....X..1HT...j1....(.
64f20 5e e1 41 4a bb 23 3d 66 53 43 c8 51 e7 c9 00 0e ce 26 8b a6 ac db 35 b4 67 f9 ac 83 c9 ce fb a0 ^.AJ.#=fSC.Q.....&....5.g.......
64f40 ef e2 80 9f bb 3a cd db 1e aa 25 11 51 77 b0 b3 e7 29 78 f3 7a 53 63 e3 97 95 4c 88 62 43 33 55 .....:....%.Qw...)x.zSc...L.bC3U
64f60 d9 65 ad e3 7d ed 79 9e 09 4e 5d f6 ba 5c c7 e5 49 78 1d 58 91 8b 63 67 62 08 89 d6 de 2c c4 65 .e..}.y..N]..\..Ix.X..cgb....,.e
64f80 fe 7d bf 67 1f f6 79 d0 da 67 8c 6c 61 4e c1 ae 51 21 2e 6e fc 84 64 33 96 11 62 09 fd 77 68 41 .}.g..y..g.laN..Q!.n..d3..b..whA
64fa0 49 09 cb f2 69 3b 3a ca 3a 4b aa cd 36 25 45 1d ff ae e5 77 26 91 b0 b8 7e 8d d6 ff f1 6b 1c d5 I...i;:.:K..6%E....w&...~....k..
64fc0 2a 66 ab 67 7c 32 63 c9 9b 3a c1 9e 5d 95 d0 c4 82 05 c2 21 a1 aa 79 a9 59 1c cc dd 54 97 f5 a9 *f.g|2c..:..]......!..y.Y...T...
64fe0 fa ee d4 f4 67 d5 78 e0 5d a7 18 65 fb 04 2b c6 56 f8 4d 0d 54 dc 12 10 51 c8 37 17 b1 41 22 6e ....g.x.]..e..+.V.M.T...Q.7..A"n
65000 75 7f 03 f4 74 6b dc d4 c3 04 55 e9 e8 80 2a 42 9f f2 59 6d af 3c 7b 94 aa 37 bb d3 78 0f d5 da u...tk....U...*B..Ym.<{..7..x...
65020 b9 7f 08 2c 59 fe 40 a0 e7 75 7f a1 24 ac 55 f9 1c 46 fc c4 82 df 02 0c a9 4e 5c 7e 7c ce 39 d4 ...,Y.@..u..$.U..F.......N\~|.9.
65040 e0 6b 2e cb cd 51 0c e2 2b b5 0d c7 8b da af 06 24 e0 64 0b 45 b4 94 96 77 33 38 67 e9 10 f6 e3 .k...Q..+.......$.d.E...w38g....
65060 97 cc ca 49 17 6b 75 f9 b1 4c 07 35 5b 44 a7 4f 77 62 2d 9f 0e 55 6f fb c3 c6 a2 4d c3 40 c0 f4 ...I.ku..L.5[D.Owb-..Uo....M.@..
65080 ae e3 30 66 eb 59 6a 42 26 a4 31 ca 8c fa 8f 17 25 cd 71 9f 30 26 bf 4a 04 23 2b 6c 01 4d 57 e9 ..0f.YjB&.1.....%.q.0&.J.#+l.MW.
650a0 d9 85 18 41 11 59 1a 72 d0 8a 7a 51 47 5a 0f d6 7e d6 ad a0 b6 57 5f 22 30 39 14 ee 5a bd 8d 02 ...A.Y.r..zQGZ..~....W_"09..Z...
650c0 24 ba 2f 4b 86 6f 7c 07 45 ee e9 f0 39 39 b5 24 0c bf 45 4e e7 b2 48 6d 1b e0 29 c6 02 06 f6 36 $./K.o|.E...99.$..EN..Hm..)....6
650e0 d7 61 15 cf 4e 1a bd ca 0a 9f 95 ed c8 02 e3 e4 64 08 ad 37 6e de 07 88 22 d5 37 09 fe 2c bf 7c .a..N...........d..7n...".7..,.|
65100 f6 8b bc fe c0 02 96 20 80 49 72 fe cb 65 93 1a a0 4b ef ea 6f ea e2 bd 8c a7 c9 4c 42 ea db 33 .........Ir..e...K..o......LB..3
65120 fb a4 aa 62 d0 d8 fd d6 ac 4e 1f 0a 6d 83 8a a9 af a4 66 16 47 b4 cf 0d 6e 1a 5e 00 f4 bd 2a 39 ...b.....N..m.....f.G...n.^...*9
65140 2b 93 42 c8 3e fd a2 13 ee a7 06 da 5e 44 0f 3b 7b 75 88 b4 3e da cd ef d8 37 d1 a6 12 21 51 8c +.B.>.......^D.;{u..>....7...!Q.
65160 e0 9d c7 08 66 11 b7 42 60 c4 ec d0 49 24 24 be 4f 73 03 2b 66 13 ec dd 42 06 80 78 0e ac e8 de ....f..B`...I$$.Os.+f...B..x....
65180 d9 29 a9 7d eb 01 86 4e c5 09 f2 06 65 d7 9f ae 1b 20 ee 9f 42 09 66 66 c0 a4 1a 8b 83 bb 60 69 .).}...N....e.......B.ff......`i
651a0 63 26 12 d9 dd b5 d0 8f 2f ee 42 f2 84 2b 86 ec 61 90 c7 20 de ce 39 2a 32 26 ad 14 72 91 81 2a c&....../.B..+..a.....9*2&..r..*
651c0 b0 3c 3c fa 86 e5 fa 2a 19 e7 f7 a4 b0 c3 6d 0f 96 fe 93 00 72 cb 3b 92 c6 0c 25 ff b7 07 82 25 .<<....*......m.....r.;...%....%
651e0 20 f3 bc 9d ec 09 cf 99 21 86 40 14 8f 09 f2 23 f1 63 4c 2b 8b 64 5d 38 2c 52 12 5b b2 56 01 ac ........!.@....#.cL+.d]8,R.[.V..
65200 b1 0b 6e f1 87 af c8 3c d0 c1 b0 d9 cd 8c 03 aa 1e 92 ef a4 bb e4 d5 a6 61 e9 94 ea 07 55 ba 0a ..n....<................a....U..
65220 a4 77 ff f2 33 6b 6e af df 5c ca 91 7d 49 57 22 cd b5 07 1c 51 4b ed ba f6 91 19 c3 61 fd 5d d5 .w..3kn..\..}IW"....QK......a.].
65240 89 44 d4 8b 5a ed 2d 38 94 12 15 25 ed 31 aa 4a da fc 7c 9f 43 1c dd a7 80 c6 00 a6 a9 76 d0 4a .D..Z.-8...%.1.J..|.C........v.J
65260 8c 28 bb db 13 41 6e a0 cb 00 4b c2 fa 2b 67 2d 51 f4 29 86 51 71 b2 ff 14 15 32 70 5a 2e 54 44 .(...An...K..+g-Q.).Qq....2pZ.TD
65280 1c d7 de 72 0b 99 6c e5 b1 1c 15 03 62 b0 47 1e 0b d1 f6 e9 df 14 ef 98 86 c1 ba 4a c0 17 2e c7 ...r..l.....b.G............J....
652a0 8c 98 cf a0 a4 76 49 3b 9f 97 44 8b fe 67 15 e0 5f 90 4b 5d ab 1e 0c 87 2d 1c 9e 8c 11 8f 33 41 .....vI;..D..g.._.K]....-.....3A
652c0 85 6b 7f e3 8a cb ef f0 4c 19 30 51 dd a4 92 fa 12 c0 bc 3c 7f 27 d1 2c 87 52 ea b2 d9 3b cd a9 .k......L.0Q.......<.'.,.R...;..
652e0 47 4a 20 e6 1f 25 65 3d 26 5a a7 3e 2f 76 6c 2a f8 cd c6 9a b0 ca 9e ec 4a e5 1d 7b b5 5a c2 0d GJ...%e=&Z.>/vl*........J..{.Z..
65300 3f aa 2b 23 93 80 4c 8a 13 a5 e3 6c 78 b3 39 d1 64 0f b7 57 f8 0d 79 6d a5 6f b7 53 fe 69 02 fc ?.+#..L....lx.9.d..W..ym.o.S.i..
65320 3e 21 7a 1d d7 df 96 40 cf a4 99 71 01 ce 1f ca 67 86 96 19 52 ee 66 55 ad 77 cb 94 64 ea a2 88 >!z....@...q....g...R.fU.w..d...
65340 0a d6 5a e4 95 97 72 c9 7f ce 39 d7 12 fe 9b 1d 11 80 5a df 12 1f 9a d7 15 e5 35 9d 4a b1 71 cd ..Z...r...9.......Z.......5.J.q.
65360 38 19 60 fd bc 43 52 20 72 73 f4 e7 9f 60 dc 11 3d b4 6c f1 89 61 ab 96 f1 0f 56 94 bb ff 97 10 8.`..CR.rs...`..=.l..a....V.....
65380 d7 e6 e5 1c e9 88 15 7d 33 ec df f8 b8 81 82 d0 d9 30 f5 78 c7 93 f7 80 2f ce ba f8 85 18 4a d9 .......}3........0.x..../.....J.
653a0 04 06 fd df c6 bb 26 07 9d a1 4d b4 94 73 d7 99 9d 48 03 47 d3 7d 8b 9b 83 00 67 c1 c1 ea a5 6c ......&...M..s...H.G.}....g....l
653c0 a9 06 31 56 e4 1f 55 49 b7 7a 8e 05 a1 0e dc 4d c4 3a 29 a6 00 c5 5f d2 17 45 f4 3b cd 84 e0 a7 ..1V..UI.z.....M.:)..._..E.;....
653e0 53 90 d2 b0 3d 58 ce b9 dc 00 8a c2 43 c7 57 c6 81 57 ee 3a 7f a5 77 68 fe 48 20 ed 4e a8 60 84 S...=X......C.W..W.:..wh.H..N.`.
65400 91 c4 4e 2e f1 b6 d6 cc 24 95 13 cc 6e 55 ff ae ca 5f 61 b3 a9 0e a3 e2 5f a1 98 e5 70 c6 b5 71 ..N.....$...nU..._a....._...p..q
65420 43 7e e8 9e fb b8 7d 09 5b 34 bd ec a4 bf 86 5a fe d1 2f bd 15 c5 ee ba 8e 6d c5 be 81 c1 8d b5 C~....}.[4.....Z../......m......
65440 ff 6b 92 98 7c a1 d6 07 7d e3 1f 3f 29 bf 67 0e 0a 21 af 3d a2 40 a2 e5 5f ea 02 d2 71 49 21 46 .k..|...}..?).g..!.=.@.._...qI!F
65460 a5 bb a3 04 95 45 3a c8 f0 7d f9 89 41 55 52 42 be 24 db 2e c0 28 cb ae 75 c8 d3 44 40 d2 7c 85 .....E:..}..AURB.$...(..u..D@.|.
65480 22 b4 88 02 55 57 8d dd db 31 86 d6 e7 ad 7b e7 3b b8 df c1 ab 42 cc af 15 d0 05 31 7b e8 18 7c "...UW...1....{.;....B.....1{..|
654a0 ca e9 92 af 2d eb 73 67 40 d7 d1 57 5a e2 b2 d7 d8 62 8b f4 c3 d5 9b 86 2e 0b 8b b9 10 63 88 65 ....-.sg@..WZ....b...........c.e
654c0 ba f1 da aa 28 f9 06 a9 c1 de fa 73 b7 8d 2d dd 82 2e cd 23 9a d7 29 4f 80 d9 60 54 ef 3b ee e4 ....(......s..-....#..)O..`T.;..
654e0 58 7c 2e 38 4a 7d 75 e8 ec f2 b4 97 ee 2a 26 5e 2f 95 64 81 76 c8 c4 16 6e 5b 3f 42 22 08 83 75 X|.8J}u......*&^/.d.v...n[?B"..u
65500 30 88 e9 ca 92 1e 44 91 40 6d c8 ea e2 43 88 df c0 7b 93 97 88 a5 c6 d8 c4 14 a6 57 39 52 cb 2c 0.....D.@m...C...{.........W9R.,
65520 e6 00 8e 8e 72 a1 df f0 85 95 ea 3f 78 95 b7 3d f1 bd 46 74 ce cc c4 17 2a 4a 9d a8 35 1f 0b 69 ....r......?x..=..Ft....*J..5..i
65540 8e d2 3d df ab c9 00 8e b7 ab 11 a5 93 f4 47 6c da 17 86 6d 2c d3 91 2a 9d 2a d5 59 da 83 28 8b ..=...........Gl...m,..*.*.Y..(.
65560 c0 23 8c 58 de 77 29 86 f4 f1 bb d0 1b 50 25 e6 89 12 1f c2 e6 2e bb ae 15 cf 28 e8 e4 bb bf e0 .#.X.w)......P%...........(.....
65580 88 cd 18 02 a2 9e 4e 97 2b b8 56 fd 2c 3d 32 22 48 f2 1c 6c 4e 2f cb da 13 da 6c a2 a3 34 71 a9 ......N.+.V.,=2"H..lN/....l..4q.
655a0 98 51 5d 51 1e ca eb 7d cb f5 e4 07 e2 47 9c 22 1d 26 ed d0 00 94 0e b3 c0 e5 93 bd 05 f4 9c 1f .Q]Q...}.....G.".&..............
655c0 8e 55 99 df 89 d2 df f7 64 7d d5 bd de 4b d6 76 7c 3c a8 ef a0 ff 12 f6 e4 63 01 1b 32 bb 42 5e .U......d}...K.v|<.......c..2.B^
655e0 28 4f 0e 6d 5f 6f 9a 88 8a 1a 8b 45 97 f7 c0 48 a8 a3 b4 f3 36 d6 8c 81 7e 90 b5 01 fb a9 d8 32 (O.m_o.....E...H....6...~......2
65600 38 53 4f 1c 2c 0a 8e 7a b5 b8 ec f6 ef bb fc a8 2a 87 51 d0 51 d7 54 81 ab 93 ea 0b ee 95 d3 33 8SO.,..z........*.Q.Q.T........3
65620 c9 cf 7a cd ff cc 0b 1a 76 1c 2c 10 7f 5c 0e a5 c1 dd 3e 6f c1 c7 aa bc f3 d0 6c c9 2e cf 25 2a ..z.....v.,..\....>o......l...%*
65640 e9 28 c9 71 86 30 ee 3f 49 e6 15 f3 97 f7 40 b4 c3 6b d4 43 19 b3 54 3c 7d 22 1b 2a f0 5e ad 18 .(.q.0.?I.....@..k.C..T<}".*.^..
65660 a1 86 fc 67 40 69 4f 7a 4b 3b 33 b8 99 d3 67 f2 9f 61 3c 5e 10 0a 85 ba 75 1f 64 65 10 ef e2 d7 ...g@iOzK;3...g..a<^....u.de....
65680 b9 2e 9f 06 a1 8d d6 11 23 2e 6f 18 00 c3 4c e1 34 3e 17 45 66 8b 03 b0 7a b9 7a 64 b0 57 68 bf ........#.o...L.4>.Ef...z.zd.Wh.
656a0 f7 c8 fe 91 c3 21 e0 81 2b ab 3c 0b e4 ad ae 4e ca 5d ef eb 53 5f 3f 94 25 d4 b9 fe 94 59 d6 93 .....!..+.<....N.]..S_?.%....Y..
656c0 1d 2a aa 31 e9 e5 52 9d 4e fc 86 5f 12 75 c3 db 9e e5 e6 4b ef 7c 7b 0f 9b 7a 5b 39 b0 55 02 0d .*.1..R.N.._.u.....K.|{..z[9.U..
656e0 98 bf 94 c1 0d e1 65 82 81 f6 84 3b bb b0 25 a5 ec d4 cc 81 ed f6 60 03 3b c2 f4 b8 2a b2 7f b8 ......e....;..%.......`.;...*...
65700 30 4e d1 59 8b f9 40 a2 8c e4 45 98 66 74 b9 3c 54 71 5b 2b e8 e6 4e 54 a2 f1 fd 64 52 4c 8a 9f 0N.Y..@...E.ft.<Tq[+..NT...dRL..
65720 8a 3e a6 99 9d 4b 52 0f 74 6b 82 5c fb 4f 0e 4f 11 27 5e 56 a1 fd 7b db 57 ec 6b 5c ee 4a ba 15 .>...KR.tk.\.O.O.'^V..{.W.k\.J..
65740 de b1 7e 22 80 7b 3c f3 5a a4 c2 44 cc 17 c3 70 b8 b0 0a 6b f2 93 7f aa e3 1b 33 2d 1a a5 3d 4a ..~".{<.Z..D...p...k......3-..=J
65760 c6 b4 2b 0b 17 35 e2 13 e3 62 f8 b0 47 f3 28 21 87 fc 17 f0 a7 98 66 ae 52 23 4a 31 59 b1 79 dd ..+..5...b..G.(!......f.R#J1Y.y.
65780 52 7e 0d 56 4a de f3 74 17 bb 8f b4 a3 0a e1 1d fe 3c 38 72 64 34 31 55 40 6f a2 22 6d 39 c9 30 R~.VJ..t.........<8rd41U@o."m9.0
657a0 2d e7 dc b9 eb d3 0f 26 73 7b 2e 6b 06 61 eb 02 9f 38 1a bc 08 70 ef c3 95 f2 29 0c 44 d2 da b9 -......&s{.k.a...8...p....).D...
657c0 db c4 62 47 8e c0 48 3f 01 a9 c5 1c 8e 46 b3 d6 98 1d 4a a2 97 f4 1a 4b 64 21 8c d7 c6 e2 ff 45 ..bG..H?.....F....J....Kd!.....E
657e0 77 43 be 9e 6f ca 9a 2c 2b 0e ea 14 66 d1 ee 38 51 e4 e4 7e 6d 18 27 bd 86 96 57 90 a7 93 ba db wC..o..,+...f..8Q..~m.'...W.....
65800 07 58 37 67 fd 67 a6 90 74 47 71 b2 e7 13 54 68 f0 23 5b c4 d2 4e f9 03 9e 9a 1b e3 13 0a 79 db .X7g.g..tGq...Th.#[..N........y.
65820 f1 7c c6 b0 ce 16 4c ae 24 9a 93 3a c8 2e 44 93 43 6b c8 25 ef ac b5 a5 85 85 23 39 61 19 2c f6 .|....L.$..:..D.Ck.%......#9a.,.
65840 a9 a3 3b 8a a6 52 c0 f8 37 fa f2 3e a1 87 a6 02 82 b6 2c f0 54 13 27 5b c8 6f fb 26 80 59 d6 51 ..;..R..7..>......,.T.'[.o.&.Y.Q
65860 f4 36 b6 5e d9 da 34 63 e1 76 ee 22 88 b0 8e 5a da b2 72 b2 3c f4 25 56 25 cd 2b 99 df 34 cf 2d .6.^..4c.v."...Z..r.<.%V%.+..4.-
65880 8d d5 6a 20 40 b0 15 90 47 c5 0b 7c 0f 8e 75 d1 2c d6 32 d2 77 61 fe 23 0c 35 7b 00 e0 f4 3c 54 ..j.@...G..|..u.,.2.wa.#.5{...<T
658a0 b1 50 93 e5 e3 24 44 6d a2 32 91 20 94 7d 05 e3 9b f2 81 2c 9a 33 3a e0 c0 73 80 41 a8 80 1f da .P...$Dm.2...}.....,.3:..s.A....
658c0 b2 d7 7e a6 a7 3a 44 77 66 55 6c a4 a5 6f e6 8c b7 f6 cf 57 fe 32 43 ff 97 da e4 dd 48 ba 6f f2 ..~..:DwfUl..o.....W.2C.....H.o.
658e0 60 d0 df e9 10 b7 63 4c 27 fe 97 ee a6 df 27 80 51 0d a9 b4 45 9e d6 1e 80 b3 74 9e dd 07 50 b2 `.....cL'.....'.Q...E.....t...P.
65900 20 b0 c1 00 38 75 e1 a8 1d 63 64 a7 55 1b ca 20 fb bf 01 cf 8f 33 0c 4f 31 d6 3a 91 97 4a b9 73 ....8u...cd.U........3.O1.:..J.s
65920 5e 21 48 04 fb 3d 26 32 9c 87 9c 99 1e 1b bb 57 8b 3c 5b d9 a3 65 9a ba 0c 01 34 61 5f 2a d0 00 ^!H..=&2.......W.<[..e....4a_*..
65940 14 8c fb 52 73 d3 c4 76 6e 1d 0c 72 4b a2 46 32 87 05 73 34 af 95 35 69 e2 36 6b 62 74 b6 a6 ec ...Rs..vn..rK.F2..s4..5i.6kbt...
65960 99 a1 cb f2 93 d4 19 f1 e4 f7 fe 01 b3 20 af 4a 58 70 62 a3 87 62 9b 71 9a 92 a0 45 98 13 b7 94 ...............JXpb..b.q...E....
65980 5c 08 05 8c 0d f2 04 98 96 9d fc e4 45 9d 3d fd b1 ec dd 9b 0a e0 9f 6a 45 bd 68 66 be ac 93 a7 \...........E.=........jE.hf....
659a0 a8 f8 f2 6b 8f 74 6a 23 7e 46 aa 66 f6 ea 28 3d ee 3c b8 c3 02 94 39 14 4b 65 4f e6 2a d0 52 7e ...k.tj#~F.f..(=.<....9.KeO.*.R~
659c0 54 3c 9f 60 c6 30 63 3a 45 02 89 42 ba 02 54 a0 df 2a 0e 48 26 72 35 60 cd 1f 5e 15 ba 4a bb c8 T<.`.0c:E..B..T..*.H&r5`..^..J..
659e0 83 b1 2e 6b a8 1f d4 50 1e 96 12 17 dd 3b b7 dd 27 f5 1d 15 56 36 6a e4 d0 e2 5f dd 22 b2 bc 47 ...k...P.....;..'...V6j..._."..G
65a00 af 4c 31 dd 13 a6 42 93 11 40 d6 2d 63 76 4a bb 32 5e f1 81 11 9e ac dd 92 11 7c 18 3c 8d 16 aa .L1...B..@.-cvJ.2^........|.<...
65a20 90 aa 37 f7 72 42 89 64 68 28 be 0d 1c 8f ce a4 b8 b9 66 1f b6 6d ed 75 fa 16 a4 88 48 00 83 d6 ..7.rB.dh(........f..m.u....H...
65a40 b2 5c c1 38 7f bf d4 02 ec 64 4e 81 4d 44 d5 28 73 31 e3 c9 a3 a1 fc 89 b4 ef a9 89 04 42 51 a0 .\.8.....dN.MD.(s1...........BQ.
65a60 e7 1d 09 01 35 8e 90 7d 87 68 cf 85 16 85 c6 70 fa 93 d9 5c 86 a8 0e 79 b3 29 5b 3b f6 c9 f0 bc ....5..}.h.....p...\...y.)[;....
65a80 2b 88 38 38 b7 2c ab 28 44 79 06 6a f9 9c 27 b9 50 82 5f 4d 19 35 83 45 5c fb c5 3f 00 b7 c0 db +.88.,.(Dy.j..'.P._M.5.E\..?....
65aa0 51 26 b9 e5 3e 72 3f b8 bc 99 5b c1 dd b5 f6 9e c6 b5 b2 fb 5f d7 d1 a9 37 5d a2 ae 0c 43 a9 37 Q&..>r?...[........._...7]...C.7
65ac0 90 44 66 ea 46 76 f7 99 38 cb a9 cc 1d 29 d2 37 b5 97 b7 7c cd be 8c 44 7b 23 02 64 09 28 b0 11 .Df.Fv..8....).7...|...D{#.d.(..
65ae0 60 da 36 74 0b 5b 28 25 f6 17 24 93 9c 00 8a 27 be c7 ab c7 b4 5f 25 cd eb 89 dc 27 47 ac 0e d0 `.6t.[(%..$....'....._%....'G...
65b00 4b 56 fd a4 ea c4 a4 37 08 38 5e 7a bb 3d c0 54 4f 75 83 8d bf 91 49 9d 31 06 7a 32 87 c7 f3 27 KV.....7.8^z.=.TOu....I.1.z2...'
65b20 68 e5 61 75 38 b2 e7 3e 38 5c f8 89 79 cf 48 54 ac cb 10 95 1f 9f 8b 5c 72 0a f8 8d 4a 4b da 17 h.au8..>8\..y.HT.......\r...JK..
65b40 13 17 7a 18 f9 58 08 e9 a7 8b e5 ab 8d 79 6a ab 1a 2d eb d1 0c b5 7e 24 a0 bc ea 89 7a ec a5 c5 ..z..X.......yj..-....~$....z...
65b60 b1 90 eb 43 1e 1b 24 24 c9 6e e3 a1 a1 8a 16 98 b0 8a a2 ce 46 f8 af 37 bd 05 ae 1d f1 5d 50 55 ...C..$$.n..........F..7.....]PU
65b80 67 45 0f 15 a1 5f eb b9 8b c7 15 99 6d c4 55 4a 4c 79 1a c1 9a ca cf d3 24 0b 73 22 84 7a 66 97 gE..._......m.UJLy......$.s".zf.
65ba0 7b dc 5b b8 eb 4a 8b 05 75 74 be 68 81 9d 3b 56 0b d2 00 59 21 33 70 00 28 b6 f4 4f fa d5 06 14 {.[..J..ut.h..;V...Y!3p.(..O....
65bc0 0f 59 0e 9b 7f ea 99 d2 a0 0a 90 af fa e2 11 d3 d6 a6 bd 20 fd 61 f8 4c 87 03 ed 11 83 cf 58 78 .Y...................a.L......Xx
65be0 75 23 86 b6 3f 02 c8 ce 03 09 a3 b5 5d 12 1d 62 2a 45 76 d4 b3 2c 84 e0 4b b8 0e 33 ff 1f 32 90 u#..?.......]..b*Ev..,..K..3..2.
65c00 cd 42 9d 08 f9 64 54 28 f1 b5 d1 2e de 99 b1 db f3 18 e6 9e dc e3 ed 95 23 52 10 cb 4c c1 79 9f .B...dT(................#R..L.y.
65c20 3b 46 43 66 9b 97 79 49 3c b2 d6 f3 56 e7 5e 01 11 27 0f 87 e5 2f fa 6d 5a b9 6e a3 f1 5c c8 49 ;FCf..yI<...V.^..'.../.mZ.n..\.I
65c40 e6 9f 8f f7 b2 ec ea f5 d1 c8 9d 7e 09 d0 b0 26 70 1a 43 5c 10 cc 21 c5 a0 ed 4a bb c4 c2 01 fb ...........~...&p.C\..!...J.....
65c60 94 72 f8 a8 03 a7 ca e6 23 d4 ff f7 3d be d5 a9 48 6d 32 9e 92 c3 42 41 37 80 ac 54 86 c9 33 d8 .r......#...=...Hm2...BA7..T..3.
65c80 c0 3e 6b 06 72 ee eb b3 91 62 86 0b e5 9d c5 f9 7b 7d 43 18 3b 19 25 d9 00 6e d0 68 50 dd 45 a7 .>k.r....b......{}C.;.%..n.hP.E.
65ca0 c4 bc 98 e4 48 15 3f f8 62 6e 2e da 77 7d f9 d5 ac c1 99 4a a3 20 6c f0 ed e8 0e 30 63 61 1b a8 ....H.?.bn..w}.....J..l....0ca..
65cc0 c8 4a 06 6e 76 fa 2b 85 dd c1 97 c9 39 9e dd 06 7c 83 f9 53 11 b5 9e 30 40 74 ee a7 ca f3 ba e2 .J.nv.+.....9...|..S...0@t......
65ce0 58 f1 81 24 ef 3f 05 05 b5 db a1 f9 e8 40 df 5f 28 be 37 a6 6f aa fd 01 f7 85 83 db 75 3f 9e 34 X..$.?.......@._(.7.o.......u?.4
65d00 17 77 8c 9f 8e 08 55 c5 d5 ee 8c 63 55 de 95 2b 90 51 f1 bc 39 06 9d 10 4c 00 ef 6f 55 90 f9 6c .w....U....cU..+.Q..9...L..oU..l
65d20 89 78 32 1a e6 18 97 48 e3 a5 93 64 78 9e 70 19 29 4d 10 e9 89 f6 ae eb 50 08 08 59 d7 2f 60 87 .x2....H...dx.p.)M......P..Y./`.
65d40 69 e8 79 7f 11 e5 0a b9 ee d4 68 2c 0b 4e 76 5e 84 16 c6 a3 fb 5c b9 18 af 34 56 1c 76 1a 91 9a i.y.......h,.Nv^.....\...4V.v...
65d60 8c 50 7e b9 8c 44 e1 02 bb 2c b4 8a ec 67 d5 0e 1f 53 d9 cf 90 83 33 11 64 07 11 68 19 f1 ee e8 .P~..D...,...g...S....3.d..h....
65d80 52 92 e4 1d a9 39 ab b4 2e 76 e8 3f 55 55 97 70 36 80 cd 0d 23 72 e5 6a 4d 6d b8 dd 69 55 5d 05 R....9...v.?UU.p6...#r.jMm..iU].
65da0 82 15 2e db 6a 7b 8b 0a 16 1f 26 37 35 af 45 d8 e9 0b a1 66 14 4c bf 7f ea 1c 64 08 d0 e2 01 ae ....j{....&75.E....f.L....d.....
65dc0 9e 7d 82 45 f3 ca 54 0d 42 42 69 6d c7 ff cd 7d 19 ea 0c 5d 3b 9e 52 32 56 9a 67 1e 33 cc 6e b4 .}.E..T.BBim...}...];.R2V.g.3.n.
65de0 99 71 7b 40 45 1d a1 a2 00 20 78 f0 a5 08 68 d7 91 3e 64 de 1e f7 5e 0a e0 d9 a8 e1 17 3c 9a 1a .q{@E.....x...h..>d...^......<..
65e00 af 09 b4 5e fb 2a 7f 41 db 3f 15 fc d0 1f 85 2d d5 47 ed c8 09 56 6b 3c 6a b8 05 5b 93 40 d3 71 ...^.*.A.?.....-.G...Vk<j..[.@.q
65e20 15 0f b0 9c d1 9a 5a 92 7a a5 fc b2 60 94 15 04 ae d2 13 e8 75 1c 55 54 7c 90 10 0f 25 7b f3 0e ......Z.z...`.......u.UT|...%{..
65e40 f5 9c 92 01 33 b7 c9 3e dc 63 d3 f0 e6 39 d2 18 6a 16 32 44 93 9c bd 56 0e 80 77 0b ba d9 d1 c8 ....3..>.c...9..j.2D...V..w.....
65e60 34 9d 9c 97 f9 ab 9d 1f e6 37 71 7a 43 63 30 47 ea ff 33 58 fd 4d 09 61 7c 40 dd aa ef cd 88 be 4........7qzCc0G..3X.M.a|@......
65e80 ce 4d a0 8b 29 c5 34 e4 2a 30 7d 36 65 9e 88 c2 d7 24 be e5 66 88 a4 75 3b f2 b7 9f 3c 5c 12 7c .M..).4.*0}6e....$..f..u;...<\.|
65ea0 b2 76 e2 ae 75 50 c9 c8 05 dd 8f 62 8c 6a 99 80 70 c4 38 a3 c3 ff 14 41 65 52 d8 b6 0f 8c 78 b5 .v..uP.....b.j..p.8....AeR....x.
65ec0 8c 2f 09 9e 65 20 5f de a6 d4 7f 3a 28 7a 7d 91 4b 74 57 4d 70 2e f8 ac b7 3a ec de 8f a7 68 31 ./..e._....:(z}.KtWMp....:....h1
65ee0 54 64 f5 fe 05 b1 8d 73 4b 92 ff de 12 5b d1 f2 4c 13 40 26 29 17 07 5c 71 a6 89 1d b3 f7 f4 66 Td.....sK....[..L.@&)..\q......f
65f00 64 91 0e 58 89 53 eb 18 93 ae 15 d3 1d ac ac 19 9f a0 b7 cb 66 d3 49 dd da cc 47 49 5a 97 b9 9d d..X.S..............f.I...GIZ...
65f20 81 07 1c 93 a7 d0 a8 7b e5 8d 02 c8 84 5f 6e ee a4 5f 35 10 09 22 fc c6 ec 96 bd 7b 9a 69 30 9c .......{....._n.._5..".....{.i0.
65f40 44 58 03 b2 2d a7 17 cb 9c eb a2 a2 02 d9 ba c7 d2 45 d6 dd 8f 0e 46 7f b6 77 ad 4f b0 50 ae 19 DX..-............E....F..w.O.P..
65f60 25 1d 83 fe be 32 46 1e 01 f9 27 33 8d 57 b6 fe ab 42 31 bf 8a 89 93 23 da 70 71 93 6e 12 0c a9 %....2F...'3.W...B1....#.pq.n...
65f80 24 69 03 7e ce f3 63 2e cf d7 59 2f 5c 04 63 96 3b 75 c5 0d b0 15 3a e3 d2 38 65 3d 7d 24 87 cf $i.~..c...Y/\.c.;u....:..8e=}$..
65fa0 81 e6 be 72 ee 3c 2e ba 4a 6e 4a 53 01 b3 03 8d da 9e e7 ba ed 62 5c 99 c4 70 db 52 55 6f 44 a9 ...r.<..JnJS.........b\..p.RUoD.
65fc0 f2 3a cc 1d 80 08 81 56 57 14 79 4f f4 76 0a 85 19 0d cd e7 59 d2 ee 88 d6 47 67 8a 97 d6 b1 3f .:.....VW.yO.v......Y....Gg....?
65fe0 cb 4b bb da 1a 00 5f aa f8 b6 9c ad 05 2e 32 4b df 2c 17 71 07 8b 3f de c2 80 c0 2e cf 0f 15 bd .K...._.......2K.,.q..?.........
66000 66 e5 78 f6 87 2b e7 36 7c 7b 4d be b8 98 e1 e6 d1 e3 60 4d d9 94 d4 6a d8 9b c0 c8 87 49 58 9f f.x..+.6|{M.......`M...j.....IX.
66020 cd 46 26 15 a7 2e 16 a1 70 e1 49 fb 27 5c 43 7b a4 63 92 38 02 af c5 1a 3b ae d4 ff 01 71 d7 6b .F&.....p.I.'\C{.c.8....;....q.k
66040 85 9b ea af f7 ca 10 89 31 6a ea 8b f2 19 09 46 83 6a 38 83 90 cf a5 e1 78 d5 cd c5 ae d6 3f e3 ........1j.....F.j8.....x.....?.
66060 15 91 83 aa 29 fb ae cc 5b 94 2b 23 bf 3d 18 03 6e cd 4f cf 39 9a c5 aa 04 3e a9 67 6f 88 9e cf ....)...[.+#.=..n.O.9....>.go...
66080 eb fc ef 8b 16 39 e4 cb ab 0a b3 d2 88 82 d0 61 c3 6d a6 94 19 6b 42 d8 8c f1 3a 2b b1 6b a6 8a .....9.........a.m...kB...:+.k..
660a0 e1 c8 74 0f 13 44 80 b7 92 b6 64 9f 28 f5 dc 76 8c 0f bf b1 60 f2 c6 7d db 35 1a 19 fd 84 de 43 ..t..D....d.(..v....`..}.5.....C
660c0 c8 06 c2 3a 68 53 68 f8 7d ef 0c 7a bb 62 94 e7 7d 31 d7 ea 7f 27 48 f3 0b 77 7b 8d e6 8a c0 1f ...:hSh.}..z.b..}1...'H..w{.....
660e0 ab 7d 56 d6 43 7c 5a fb 20 4f 93 37 78 26 cb 8a cf 70 3d eb 87 72 31 3e 2b d6 b3 26 d7 d6 61 f3 .}V.C|Z..O.7x&...p=..r1>+..&..a.
66100 43 d6 51 d9 41 e8 5e b8 0a 44 0e a9 3f 45 5a 83 0f bd 16 4d 66 fc 29 9a f9 5b e9 a5 9a 36 32 21 C.Q.A.^..D..?EZ....Mf.)..[...62!
66120 78 04 b3 38 cf 93 79 fa 41 ef f5 71 8c 6f 8b 68 02 c6 7c 43 0b 62 7d a6 43 e0 ab 50 11 d3 b9 3c x..8..y.A..q.o.h..|C.b}.C..P...<
66140 d7 e7 79 ba 1d a0 12 8f 28 c7 d7 aa 28 1e 30 1d 38 56 0c 2e 12 cb d5 22 ae d1 79 f2 d6 35 b9 98 ..y.....(...(.0.8V....."..y..5..
66160 61 1b 2b ca b6 3a b8 9c cc d1 a0 5d 45 66 d2 66 89 c3 5c c2 4b e0 35 2d c9 f8 ed d0 c6 7b 12 9f a.+..:.....]Ef.f..\.K.5-.....{..
66180 8a 1d 9c 06 9a 0b 64 97 f1 c8 7b 5c 5b 35 51 83 03 fc 77 27 88 ae 6e 1a 76 cb b0 8b e9 86 4b e4 ......d...{\[5Q...w'..n.v.....K.
661a0 2b f2 8d f8 89 58 48 67 f7 64 7c c2 4d 11 02 32 a1 8d 6c fc ca 50 e4 6a cb fb 13 59 38 87 d3 db +....XHg.d|.M..2..l..P.j...Y8...
661c0 40 9e 9a e7 d7 76 82 d2 5a 6f ba 3c 91 2b 86 8a 37 18 9f ae 0e d4 fd 21 19 5d 6e c3 ee 6d cb 30 @....v..Zo.<.+..7......!.]n..m.0
661e0 2a 39 04 30 43 f7 53 a4 13 da c6 62 6c ea 63 b4 80 6a 00 8f 88 11 7a 0e eb 44 9a 86 25 bb fe 00 *9.0C.S....bl.c..j....z..D..%...
66200 28 b2 9c b1 a0 cb f8 76 df ab ef ec 90 f3 28 a7 42 0d 44 24 c5 b3 f2 29 23 fa d1 ea 84 b5 cb bd (......v......(.B.D$...)#.......
66220 4e df 51 61 5a 46 dc 2e 6f 3f 16 f0 24 fd e8 8b 01 5b 3d da c3 da eb d9 f2 46 da ca 44 c0 c9 d8 N.QaZF..o?..$....[=......F..D...
66240 a7 ce 14 e3 5b 9e 0b 07 11 43 39 a1 41 46 eb ab 9c f4 08 de 2f 3f 9d f0 6e 8e 01 a4 85 09 93 21 ....[....C9.AF....../?..n......!
66260 4d 6d 23 64 d7 69 3e aa e1 00 a5 fa ce 3f 99 86 8a 24 e3 60 c3 f2 5c 87 29 e2 ae e8 3d 3b 8a a1 Mm#d.i>......?...$.`..\.)...=;..
66280 13 b2 fb a9 cc a8 05 f8 1b 4e 0b 82 91 f5 7b d9 82 dc 8e a7 09 bc 41 82 6e c5 f8 7a d0 04 0c fe .........N....{.......A.n..z....
662a0 4c 40 16 d0 95 95 c3 0e 9d e7 da db 99 46 c1 a8 9d 35 b3 b5 b1 eb 1a 2c b5 b3 a8 18 fd ab 8b d2 L@...........F...5.....,........
662c0 eb c5 1d 88 8b db dd ab 10 ab 29 b6 44 7f 2d ad 4f 2c da 7b 2e 7a 2b 43 33 48 72 03 23 33 fe 9a ..........).D.-.O,.{.z+C3Hr.#3..
662e0 13 3d 69 8e 59 2c 7f bc 0f 64 2e 12 64 c9 1a b6 fb 15 26 c1 f9 f8 4e 2d d0 86 65 c4 26 55 0b 99 .=i.Y,...d..d.....&...N-..e.&U..
66300 0e 05 f4 6e 79 c9 8a 29 20 28 5a ff 73 a9 50 3a 97 21 7c 03 9f 9f 46 7f 88 d3 79 06 71 20 96 7e ...ny..).(Z.s.P:.!|...F...y.q..~
66320 6a 6b 12 b3 a0 3c f8 5b 45 15 d7 94 f4 60 ed 67 5c 8b 41 0b 0a 95 95 42 a7 a5 a8 e3 89 c4 d7 26 jk...<.[E....`.g\.A....B.......&
66340 a1 6e 5c eb f7 8b 4c 21 cc c7 02 15 c4 df e6 3f 41 dc e3 c8 a1 c0 44 d5 53 b9 44 93 bf 9d 24 43 .n\...L!.......?A.....D.S.D...$C
66360 80 21 6b 2b c3 44 0d c1 91 b7 b3 a9 9b 29 2a a8 ed 9d 18 38 81 23 ec 32 e8 33 3e aa 1c 45 0c 8b .!k+.D.......)*....8.#.2.3>..E..
66380 31 53 da 6f f4 94 22 cd 5b 7b 85 20 f8 f7 c7 c9 4d 82 79 3b 76 cc b4 58 d6 b5 e5 bf 2c 18 b7 c5 1S.o..".[{......M.y;v..X....,...
663a0 f3 5f b0 5e 83 e1 6a 20 f4 78 e8 03 3d da 1a 98 9f 74 3f 2f c3 2c 87 b2 e4 cf 12 dc c0 45 1f a8 ._.^..j..x..=....t?/.,.......E..
663c0 85 5c bb cf 4d 93 9f 31 5b ae 2f 89 b1 5d 23 af 9d e6 be 75 a9 f3 da 70 ac 14 ef f7 72 b4 0a c9 .\..M..1[./..]#....u...p....r...
663e0 0f 3f 5c 09 d4 a0 e3 e9 9e 95 49 1b 04 a3 75 50 6e d0 56 77 fc 37 14 54 89 0b 70 3c df 74 a7 1c .?\.......I...uPn.Vw.7.T..p<.t..
66400 39 c1 f3 91 54 c7 e9 14 f1 db 20 6d 4a 10 f6 ea e1 9b f6 d8 d5 d3 b3 f2 a1 c8 04 8f f2 bb 6f 16 9...T......mJ.................o.
66420 99 1e 33 99 66 95 b0 50 36 dc ce 85 93 7f 31 0e 3c d0 a0 01 26 b2 6b dc 59 a2 73 11 30 24 33 3b ..3.f..P6.....1.<...&.k.Y.s.0$3;
66440 5a 0c b3 8d 48 71 3c 3a f1 f3 b2 97 a2 14 04 e3 94 52 55 f5 1c 74 a3 0b 02 c6 4c 39 ff 86 bb c8 Z...Hq<:.........RU..t....L9....
66460 c7 d1 7d a7 58 7f 72 d2 99 d2 60 09 8b 45 ba 09 b0 50 bc c4 d0 04 2a 3a c7 fc 0f e6 3b fc c7 24 ..}.X.r...`..E...P....*:....;..$
66480 4b 16 98 42 46 d1 c0 b6 3f 2d f7 5c 8d d2 d0 76 2e 26 fb 6a 1e c6 1b c6 61 3b d9 b3 14 58 78 ab K..BF...?-.\...v.&.j....a;...Xx.
664a0 92 81 58 7e ff 56 50 0f 5a ec 70 bf 3c d2 ba b6 05 d0 00 c1 21 06 73 a3 b7 e8 8e 34 c0 99 1f 94 ..X~.VP.Z.p.<.......!.s....4....
664c0 93 ab 20 34 10 e4 7e dd 5f 8d a9 23 86 b5 58 06 7f 15 41 41 46 b5 b3 ea 42 c9 61 ac da 4d a0 8e ...4..~._..#..X...AAF...B.a..M..
664e0 ca 9b 32 c3 5c 83 66 b9 2a 78 bc ef af 34 bf 00 bf 58 d3 8f 0b c1 54 7d 7f cd d5 18 bc f2 b2 46 ..2.\.f.*x...4...X....T}.......F
66500 76 5e 25 28 18 59 9c 6b 96 c1 8b e5 6b 1e 2a 20 bf 55 f4 d9 6c 80 73 a8 00 35 4f b2 b4 e5 e7 c8 v^%(.Y.k....k.*..U..l.s..5O.....
66520 d5 e3 2e 02 ca 81 0b 70 dc 8f a0 8c ba e3 1a 4c 69 39 fe 8a 9e ac 78 e3 0a 3c 5f 05 59 f5 ec cd .......p.......Li9....x..<_.Y...
66540 2f 8c b0 11 dc f8 13 f9 35 7e 7b 44 04 8f d9 2b fd d5 85 a4 70 2c f5 d9 68 3c af a3 e2 27 d8 c1 /.......5~{D...+....p,..h<...'..
66560 8f e3 bc c0 66 7f 65 b7 bb d0 b3 b2 a9 ef 42 de 3e 03 99 7a e6 58 52 eb 21 9d 73 d1 cf a6 9a fc ....f.e.......B.>..z.XR.!.s.....
66580 c7 99 1a 3a 00 98 bb 85 bd 29 fe 73 68 00 b3 9d b9 dd 7a 31 65 82 e9 82 a0 0e fe e0 5a 2a 09 7c ...:.....).sh.....z1e.......Z*.|
665a0 d0 7b 8d 6a 54 af 02 90 e4 af d2 4c 65 0d 2d b4 09 dc db 3d 24 f0 64 47 e2 fd 1f 7e dd c5 8a 0b .{.jT......Le.-....=$.dG...~....
665c0 f3 4f 90 dd 6e 65 a9 ad 15 80 a2 8e 8f bc 38 ef 7a 65 75 32 5a 16 4f 80 a9 d1 ea 39 48 ba 85 09 .O..ne........8.zeu2Z.O....9H...
665e0 34 dc 6c 86 0a 65 2f 55 4d 61 9c 7e 42 49 01 78 21 67 47 5b dd ff 4c 8d ec e8 ab 30 2b bd 12 eb 4.l..e/UMa.~BI.x!gG[..L....0+...
66600 70 03 76 e4 14 cb 81 67 f5 28 9e d4 23 e6 5b 14 4b 84 52 e2 45 66 b3 ae 9b 97 e6 73 93 48 e7 1d p.v....g.(..#.[.K.R.Ef.....s.H..
66620 2d 8b f7 f4 93 4f e7 6a a5 ce 13 6d d3 d6 4a 8b 29 b7 77 59 09 65 49 b6 b3 69 dc 20 eb 12 ca 39 -....O.j...m..J.).wY.eI..i.....9
66640 bf c7 32 0c cd 38 c5 25 65 b5 a9 34 4e 1e 50 8c 07 3f 88 75 91 07 17 94 c5 5a 75 22 25 1d 04 54 ..2..8.%e..4N.P..?.u.....Zu"%..T
66660 f6 50 5b b5 3c 98 0e c7 64 d1 c4 ff 30 00 89 6a 38 f9 70 0b 8f a4 72 30 f1 55 e9 ca 12 df 27 6c .P[.<...d...0..j8.p...r0.U....'l
66680 66 cc 59 8f 76 0c 62 f5 b3 20 f2 9a 76 2b 7e b4 17 72 5e 7d cd 73 5f d9 77 06 3c 9d 26 93 b4 a9 f.Y.v.b.....v+~..r^}.s_.w.<.&...
666a0 bf 3e 3b af d7 50 dc 15 eb d0 5b f7 57 15 02 a9 8c ba 4b 04 da fe 2d 2b 5b 89 2f df a9 f0 d8 0e .>;..P....[.W.....K...-+[./.....
666c0 9d d9 bb f3 f2 30 bb f1 75 af 6a 33 e2 be 9e fa 06 d4 86 ea 87 36 3e ca af c2 52 c2 9c 1e 65 75 .....0..u.j3.........6>...R...eu
666e0 b7 7c 4d 49 9e 38 8c 97 c8 cd 5f 4a c9 05 6b d1 ba b3 de 50 8f 99 e9 04 c1 f6 b4 a5 e5 ef 08 c8 .|MI.8...._J..k....P............
66700 ed 20 fa bb 50 e6 a6 0f 8a 82 a3 24 08 e1 44 78 25 b4 17 a1 25 12 2c 4a 04 fd ee 6b 37 92 e0 c2 ....P......$..Dx%...%.,J...k7...
66720 20 eb 2c c9 a7 46 95 d6 f1 17 ab 80 3b 1c 91 96 39 01 f0 d2 43 88 99 ad 44 3f 23 d7 9f ec 69 d8 ..,..F......;...9...C...D?#...i.
66740 c4 e7 81 ff c0 d2 00 0a ab b1 00 78 1f 18 f7 64 7a 3a e5 4d 58 47 a5 a1 db 35 62 b9 84 0b 4b a2 ...........x...dz:.MXG...5b...K.
66760 14 a6 72 62 59 15 37 68 64 ac a6 1e 82 54 a1 7f 56 df a6 50 10 16 95 92 7f 4c 8f cb fa 56 8c b5 ..rbY.7hd....T..V..P.....L...V..
66780 45 2f 4e 42 4c f1 7a 41 62 f7 18 76 3e ad 30 90 47 dc be 9a 38 f1 6a 85 e8 b1 4a a0 37 29 e4 42 E/NBL.zAb..v>.0.G...8.j...J.7).B
667a0 33 64 a9 6a 55 c1 aa 5b 60 c6 e2 62 aa 31 21 c7 cf 71 de 58 c2 90 71 9a 5f ac e8 78 0e 91 84 21 3d.jU..[`..b.1!..q.X..q._..x...!
667c0 f0 57 fe 86 b1 98 69 d0 4d 45 d0 86 70 5d 5f e2 d2 5d 34 9d 3c 55 20 df 15 f0 fe a8 d4 6c be 97 .W....i.ME..p]_..]4.<U.......l..
667e0 69 45 f6 17 5d b2 af 3f 9c c8 e9 07 33 0a 7f 1c 74 97 91 b0 7a 5c b9 64 c9 ca 70 1b b1 ca 67 f3 iE..]..?....3...t...z\.d..p...g.
66800 04 08 24 c5 b6 56 73 82 f2 05 3c be 48 97 ad 24 a1 71 12 fc 46 f1 3f 0f 65 5e d2 d0 a9 30 7b 19 ..$..Vs...<.H..$.q..F.?.e^...0{.
66820 ed 47 94 f6 21 88 28 3b f9 db 4d 0f 50 47 86 c3 52 49 c4 b1 e8 9a 0b a2 0c 1e 6f 04 80 4d 9b c9 .G..!.(;..M.PG..RI........o..M..
66840 b0 ce 79 32 c5 e8 32 9b fa 8a 56 95 78 47 01 cc 26 b0 59 71 6b 54 aa e2 f3 ce 5a ee 37 db 1a 6c ..y2..2...V.xG..&.YqkT....Z.7..l
66860 b8 15 21 7e 76 13 94 18 01 d8 e1 38 fb b4 1b f1 53 ba 0e 4c 8a 37 32 80 8f 40 1e 90 b2 7e 30 eb ..!~v......8....S..L.72..@...~0.
66880 c5 1e bd b9 2f ca 05 ef 76 88 19 de df 0b bf cd 8f 38 5f 57 ff dd 3b be 33 17 a3 b6 7e cd 8d 00 ..../...v........8_W..;.3...~...
668a0 00 00 00 00 00 ad 1c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
668c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
668e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
669a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
669c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
669e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66a00 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 64 61 73 34 36 2e 6c 7a lzip-1.25/testsuite/fox_das46.lz
66a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
66a80 30 30 30 30 31 32 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 36 36 31 37 00 20 30 00 00 00 0000120.14744236057.016617..0...
66aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66b00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
66b20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
66b40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
66b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66c00 4c 5a 49 50 01 0c 00 2a 1a 08 a2 03 25 66 f1 4b 78 c5 a2 05 ff 2e e6 d9 d2 20 1a ad 34 f8 e2 1d LZIP...*....%f.Kx...........4...
66c20 e8 41 36 fa dc 06 69 bb 3c e4 10 34 27 09 eb b3 66 e3 ec 97 ea ae 23 ff fe 8e a0 00 6a cc 50 eb .A6...i.<..4'...f.....#.....j.P.
66c40 2e 00 00 00 00 00 00 00 50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........P.......................
66c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66e00 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 62 63 72 63 2e 6c 7a 00 lzip-1.25/testsuite/fox_bcrc.lz.
66e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66e60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
66e80 30 30 30 30 31 32 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 36 36 30 37 00 20 30 00 00 00 0000120.14744236057.016607..0...
66ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66f00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
66f20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
66f40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
66f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67000 4c 5a 49 50 01 0c 00 2a 1a 08 a2 03 25 66 f1 4b 78 c5 a2 05 ff 2e e6 d9 d2 20 1a ad 34 f8 e2 1d LZIP...*....%f.Kx...........4...
67020 e8 41 36 fa dc 06 69 bb 3c e4 10 34 27 09 eb b3 66 e3 ec 97 ea ae 23 ff fe 8e a0 00 6b cc 50 eb .A6...i.<..4'...f.....#.....k.P.
67040 2d 00 00 00 00 00 00 00 50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -.......P.......................
67060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
670a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
670c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
670e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
671a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
671c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
671e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67200 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 73 31 31 2e 6c 7a 00 00 lzip-1.25/testsuite/fox_s11.lz..
67220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
67280 30 30 30 30 31 32 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 36 33 30 32 00 20 30 00 00 00 0000120.14744236057.016302..0...
672a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
672c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
672e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67300 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
67320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
67340 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
67360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
673a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
673c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
673e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67400 4c 5a 49 50 01 0b 00 2a 1a 08 a2 03 25 66 f1 4b 78 c5 a2 05 ff 2e e6 d9 d2 20 1a ad 34 f8 e2 1d LZIP...*....%f.Kx...........4...
67420 e8 41 36 fa dc 06 69 bb 3c e4 10 34 27 09 eb b3 66 e3 ec 97 ea ae 23 ff fe 8e a0 00 6a cc 50 eb .A6...i.<..4'...f.....#.....j.P.
67440 2d 00 00 00 00 00 00 00 50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -.......P.......................
67460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
674a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
674c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
674e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
675a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
675c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
675e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67600 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 63 72 63 30 2e 6c 7a 00 lzip-1.25/testsuite/fox_crc0.lz.
67620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
67680 30 30 30 30 31 32 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 36 35 32 35 00 20 30 00 00 00 0000120.14744236057.016525..0...
676a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
676c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
676e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67700 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
67720 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
67740 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
67760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
677a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
677c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
677e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67800 4c 5a 49 50 01 0c 00 2a 1a 08 a2 03 25 66 f1 4b 78 c5 a2 05 ff 2e e6 d9 d2 20 1a ad 34 f8 e2 1d LZIP...*....%f.Kx...........4...
67820 e8 41 36 fa dc 06 69 bb 3c e4 10 34 27 09 eb b3 66 e3 ec 97 ea ae 23 ff fe 8e a0 00 00 00 00 00 .A6...i.<..4'...f.....#.........
67840 2d 00 00 00 00 00 00 00 50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -.......P.......................
67860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
678a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
678c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
678e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
679a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
679c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
679e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67a00 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 6e 7a 2e 6c 7a 00 00 00 lzip-1.25/testsuite/fox_nz.lz...
67a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
67a80 30 30 30 30 31 32 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 36 33 32 35 00 20 30 00 00 00 0000120.14744236057.016325..0...
67aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67b00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
67b20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
67b40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
67b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67c00 4c 5a 49 50 01 0c 61 2a 1a 08 a2 03 25 66 f1 4b 78 c5 a2 05 ff 2e e6 d9 d2 20 1a ad 34 f8 e2 1d LZIP..a*....%f.Kx...........4...
67c20 e8 41 36 fa dc 06 69 bb 3c e4 10 34 27 09 eb b3 66 e3 ec 97 ea ae 23 ff fe 8e a0 00 6a cc 50 eb .A6...i.<..4'...f.....#.....j.P.
67c40 2d 00 00 00 00 00 00 00 50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -.......P.......................
67c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67e00 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 6d 65 73 38 31 2e 6c 7a lzip-1.25/testsuite/fox_mes81.lz
67e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67e60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
67e80 30 30 30 30 31 32 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 36 36 33 33 00 20 30 00 00 00 0000120.14744236057.016633..0...
67ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67f00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
67f20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
67f40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
67f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
67fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68000 4c 5a 49 50 01 0c 00 2a 1a 08 a2 03 25 66 f1 4b 78 c5 a2 05 ff 2e e6 d9 d2 20 1a ad 34 f8 e2 1d LZIP...*....%f.Kx...........4...
68020 e8 41 36 fa dc 06 69 bb 3c e4 10 34 27 09 eb b3 66 e3 ec 97 ea ae 23 ff fe 8e a0 00 6a cc 50 eb .A6...i.<..4'...f.....#.....j.P.
68040 2d 00 00 00 00 00 00 00 51 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -.......Q.......................
68060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
680a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
680c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
680e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
681a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
681c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
681e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68200 6c 7a 69 70 2d 31 2e 32 35 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 76 32 2e 6c 7a 00 00 00 lzip-1.25/testsuite/fox_v2.lz...
68220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
68280 30 30 30 30 31 32 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 36 32 32 35 00 20 30 00 00 00 0000120.14744236057.016225..0...
682a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
682c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
682e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68300 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
68320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
68340 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
68360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
683a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
683c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
683e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68400 4c 5a 49 50 02 0c 00 2a 1a 08 a2 03 25 66 f1 4b 78 c5 a2 05 ff 2e e6 d9 d2 20 1a ad 34 f8 e2 1d LZIP...*....%f.Kx...........4...
68420 e8 41 36 fa dc 06 69 bb 3c e4 10 34 27 09 eb b3 66 e3 ec 97 ea ae 23 ff fe 8e a0 00 6a cc 50 eb .A6...i.<..4'...f.....#.....j.P.
68440 2d 00 00 00 00 00 00 00 50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -.......P.......................
68460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
684a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
684c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
684e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
685a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
685c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
685e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68600 6c 7a 69 70 2d 31 2e 32 35 2f 4d 61 6b 65 66 69 6c 65 2e 69 6e 00 00 00 00 00 00 00 00 00 00 00 lzip-1.25/Makefile.in...........
68620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
68680 30 30 31 30 34 35 30 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 34 34 37 36 00 20 30 00 00 00 0010450.14744236057.014476..0...
686a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
686c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
686e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68700 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
68720 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
68740 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
68760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
687a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
687c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
687e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68800 0a 44 49 53 54 4e 41 4d 45 20 3d 20 24 28 70 6b 67 6e 61 6d 65 29 2d 24 28 70 6b 67 76 65 72 73 .DISTNAME.=.$(pkgname)-$(pkgvers
68820 69 6f 6e 29 0a 49 4e 53 54 41 4c 4c 20 3d 20 69 6e 73 74 61 6c 6c 0a 49 4e 53 54 41 4c 4c 5f 50 ion).INSTALL.=.install.INSTALL_P
68840 52 4f 47 52 41 4d 20 3d 20 24 28 49 4e 53 54 41 4c 4c 29 20 2d 6d 20 37 35 35 0a 49 4e 53 54 41 ROGRAM.=.$(INSTALL).-m.755.INSTA
68860 4c 4c 5f 44 49 52 20 3d 20 24 28 49 4e 53 54 41 4c 4c 29 20 2d 64 20 2d 6d 20 37 35 35 0a 49 4e LL_DIR.=.$(INSTALL).-d.-m.755.IN
68880 53 54 41 4c 4c 5f 44 41 54 41 20 3d 20 24 28 49 4e 53 54 41 4c 4c 29 20 2d 6d 20 36 34 34 0a 53 STALL_DATA.=.$(INSTALL).-m.644.S
688a0 48 45 4c 4c 20 3d 20 2f 62 69 6e 2f 73 68 0a 43 41 4e 5f 52 55 4e 5f 49 4e 53 54 41 4c 4c 49 4e HELL.=./bin/sh.CAN_RUN_INSTALLIN
688c0 46 4f 20 3d 20 24 28 53 48 45 4c 4c 29 20 2d 63 20 22 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 20 2d FO.=.$(SHELL).-c."install-info.-
688e0 2d 76 65 72 73 69 6f 6e 22 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 26 31 0a 0a 6f 62 6a 73 -version".>./dev/null.2>&1..objs
68900 20 3d 20 61 72 67 5f 70 61 72 73 65 72 2e 6f 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 6f 20 6c 69 73 .=.arg_parser.o.lzip_index.o.lis
68920 74 2e 6f 20 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 6f 20 65 6e 63 6f 64 65 72 2e 6f 20 5c 0a 20 t.o.encoder_base.o.encoder.o.\..
68940 20 20 20 20 20 20 66 61 73 74 5f 65 6e 63 6f 64 65 72 2e 6f 20 64 65 63 6f 64 65 72 2e 6f 20 6d ......fast_encoder.o.decoder.o.m
68960 61 69 6e 2e 6f 0a 0a 0a 2e 50 48 4f 4e 59 20 3a 20 61 6c 6c 20 69 6e 73 74 61 6c 6c 20 69 6e 73 ain.o....PHONY.:.all.install.ins
68980 74 61 6c 6c 2d 62 69 6e 20 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 20 69 6e 73 74 61 6c 6c 2d 6d 61 tall-bin.install-info.install-ma
689a0 6e 20 5c 0a 20 20 20 20 20 20 20 20 20 69 6e 73 74 61 6c 6c 2d 73 74 72 69 70 20 69 6e 73 74 61 n.\..........install-strip.insta
689c0 6c 6c 2d 63 6f 6d 70 72 65 73 73 20 69 6e 73 74 61 6c 6c 2d 73 74 72 69 70 2d 63 6f 6d 70 72 65 ll-compress.install-strip-compre
689e0 73 73 20 5c 0a 20 20 20 20 20 20 20 20 20 69 6e 73 74 61 6c 6c 2d 62 69 6e 2d 73 74 72 69 70 20 ss.\..........install-bin-strip.
68a00 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 2d 63 6f 6d 70 72 65 73 73 20 69 6e 73 74 61 6c 6c 2d 6d 61 install-info-compress.install-ma
68a20 6e 2d 63 6f 6d 70 72 65 73 73 20 5c 0a 20 20 20 20 20 20 20 20 20 75 6e 69 6e 73 74 61 6c 6c 20 n-compress.\..........uninstall.
68a40 75 6e 69 6e 73 74 61 6c 6c 2d 62 69 6e 20 75 6e 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 20 75 6e 69 uninstall-bin.uninstall-info.uni
68a60 6e 73 74 61 6c 6c 2d 6d 61 6e 20 5c 0a 20 20 20 20 20 20 20 20 20 64 6f 63 20 69 6e 66 6f 20 6d nstall-man.\..........doc.info.m
68a80 61 6e 20 63 68 65 63 6b 20 64 69 73 74 20 63 6c 65 61 6e 20 64 69 73 74 63 6c 65 61 6e 0a 0a 61 an.check.dist.clean.distclean..a
68aa0 6c 6c 20 3a 20 24 28 70 72 6f 67 6e 61 6d 65 29 0a 0a 24 28 70 72 6f 67 6e 61 6d 65 29 20 3a 20 ll.:.$(progname)..$(progname).:.
68ac0 24 28 6f 62 6a 73 29 0a 09 24 28 43 58 58 29 20 24 28 43 58 58 46 4c 41 47 53 29 20 24 28 4c 44 $(objs)..$(CXX).$(CXXFLAGS).$(LD
68ae0 46 4c 41 47 53 29 20 2d 6f 20 24 40 20 24 28 6f 62 6a 73 29 0a 0a 6d 61 69 6e 2e 6f 20 3a 20 6d FLAGS).-o.$@.$(objs)..main.o.:.m
68b00 61 69 6e 2e 63 63 0a 09 24 28 43 58 58 29 20 24 28 43 50 50 46 4c 41 47 53 29 20 24 28 43 58 58 ain.cc..$(CXX).$(CPPFLAGS).$(CXX
68b20 46 4c 41 47 53 29 20 2d 44 50 52 4f 47 56 45 52 53 49 4f 4e 3d 5c 22 24 28 70 6b 67 76 65 72 73 FLAGS).-DPROGVERSION=\"$(pkgvers
68b40 69 6f 6e 29 5c 22 20 2d 63 20 2d 6f 20 24 40 20 24 3c 0a 0a 25 2e 6f 20 3a 20 25 2e 63 63 0a 09 ion)\".-c.-o.$@.$<..%.o.:.%.cc..
68b60 24 28 43 58 58 29 20 24 28 43 50 50 46 4c 41 47 53 29 20 24 28 43 58 58 46 4c 41 47 53 29 20 2d $(CXX).$(CPPFLAGS).$(CXXFLAGS).-
68b80 63 20 2d 6f 20 24 40 20 24 3c 0a 0a 23 20 70 72 65 76 65 6e 74 20 27 6d 61 6b 65 27 20 66 72 6f c.-o.$@.$<..#.prevent.'make'.fro
68ba0 6d 20 74 72 79 69 6e 67 20 74 6f 20 72 65 6d 61 6b 65 20 73 6f 75 72 63 65 20 66 69 6c 65 73 0a m.trying.to.remake.source.files.
68bc0 24 28 56 50 41 54 48 29 2f 63 6f 6e 66 69 67 75 72 65 20 24 28 56 50 41 54 48 29 2f 4d 61 6b 65 $(VPATH)/configure.$(VPATH)/Make
68be0 66 69 6c 65 2e 69 6e 20 24 28 56 50 41 54 48 29 2f 64 6f 63 2f 24 28 70 6b 67 6e 61 6d 65 29 2e file.in.$(VPATH)/doc/$(pkgname).
68c00 74 65 78 69 20 3a 20 3b 0a 4d 41 4b 45 46 4c 41 47 53 20 2b 3d 20 2d 72 0a 2e 53 55 46 46 49 58 texi.:.;.MAKEFLAGS.+=.-r..SUFFIX
68c20 45 53 20 3a 0a 0a 24 28 6f 62 6a 73 29 20 20 20 20 20 20 20 20 3a 20 4d 61 6b 65 66 69 6c 65 0a ES.:..$(objs)........:.Makefile.
68c40 61 72 67 5f 70 61 72 73 65 72 2e 6f 20 20 20 3a 20 61 72 67 5f 70 61 72 73 65 72 2e 68 0a 64 65 arg_parser.o...:.arg_parser.h.de
68c60 63 6f 64 65 72 2e 6f 20 20 20 20 20 20 3a 20 6c 7a 69 70 2e 68 20 64 65 63 6f 64 65 72 2e 68 0a coder.o......:.lzip.h.decoder.h.
68c80 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 6f 20 3a 20 6c 7a 69 70 2e 68 20 65 6e 63 6f 64 65 72 5f encoder_base.o.:.lzip.h.encoder_
68ca0 62 61 73 65 2e 68 0a 65 6e 63 6f 64 65 72 2e 6f 20 20 20 20 20 20 3a 20 6c 7a 69 70 2e 68 20 65 base.h.encoder.o......:.lzip.h.e
68cc0 6e 63 6f 64 65 72 5f 62 61 73 65 2e 68 20 65 6e 63 6f 64 65 72 2e 68 0a 66 61 73 74 5f 65 6e 63 ncoder_base.h.encoder.h.fast_enc
68ce0 6f 64 65 72 2e 6f 20 3a 20 6c 7a 69 70 2e 68 20 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 68 20 66 oder.o.:.lzip.h.encoder_base.h.f
68d00 61 73 74 5f 65 6e 63 6f 64 65 72 2e 68 0a 6c 69 73 74 2e 6f 20 20 20 20 20 20 20 20 20 3a 20 6c ast_encoder.h.list.o.........:.l
68d20 7a 69 70 2e 68 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 68 0a 6c 7a 69 70 5f 69 6e 64 65 78 2e 6f 20 zip.h.lzip_index.h.lzip_index.o.
68d40 20 20 3a 20 6c 7a 69 70 2e 68 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 68 0a 6d 61 69 6e 2e 6f 20 20 ..:.lzip.h.lzip_index.h.main.o..
68d60 20 20 20 20 20 20 20 3a 20 61 72 67 5f 70 61 72 73 65 72 2e 68 20 6c 7a 69 70 2e 68 20 64 65 63 .......:.arg_parser.h.lzip.h.dec
68d80 6f 64 65 72 2e 68 20 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 68 20 65 6e 63 6f 64 65 72 2e 68 20 oder.h.encoder_base.h.encoder.h.
68da0 66 61 73 74 5f 65 6e 63 6f 64 65 72 2e 68 0a 0a 64 6f 63 20 3a 20 69 6e 66 6f 20 6d 61 6e 0a 0a fast_encoder.h..doc.:.info.man..
68dc0 69 6e 66 6f 20 3a 20 24 28 56 50 41 54 48 29 2f 64 6f 63 2f 24 28 70 6b 67 6e 61 6d 65 29 2e 69 info.:.$(VPATH)/doc/$(pkgname).i
68de0 6e 66 6f 0a 0a 24 28 56 50 41 54 48 29 2f 64 6f 63 2f 24 28 70 6b 67 6e 61 6d 65 29 2e 69 6e 66 nfo..$(VPATH)/doc/$(pkgname).inf
68e00 6f 20 3a 20 24 28 56 50 41 54 48 29 2f 64 6f 63 2f 24 28 70 6b 67 6e 61 6d 65 29 2e 74 65 78 69 o.:.$(VPATH)/doc/$(pkgname).texi
68e20 0a 09 63 64 20 24 28 56 50 41 54 48 29 2f 64 6f 63 20 26 26 20 24 28 4d 41 4b 45 49 4e 46 4f 29 ..cd.$(VPATH)/doc.&&.$(MAKEINFO)
68e40 20 24 28 70 6b 67 6e 61 6d 65 29 2e 74 65 78 69 0a 0a 6d 61 6e 20 3a 20 24 28 56 50 41 54 48 29 .$(pkgname).texi..man.:.$(VPATH)
68e60 2f 64 6f 63 2f 24 28 70 72 6f 67 6e 61 6d 65 29 2e 31 0a 0a 24 28 56 50 41 54 48 29 2f 64 6f 63 /doc/$(progname).1..$(VPATH)/doc
68e80 2f 24 28 70 72 6f 67 6e 61 6d 65 29 2e 31 20 3a 20 24 28 70 72 6f 67 6e 61 6d 65 29 0a 09 68 65 /$(progname).1.:.$(progname)..he
68ea0 6c 70 32 6d 61 6e 20 2d 6e 20 27 72 65 64 75 63 65 73 20 74 68 65 20 73 69 7a 65 20 6f 66 20 66 lp2man.-n.'reduces.the.size.of.f
68ec0 69 6c 65 73 27 20 2d 6f 20 24 40 20 2e 2f 24 28 70 72 6f 67 6e 61 6d 65 29 0a 0a 4d 61 6b 65 66 iles'.-o.$@../$(progname)..Makef
68ee0 69 6c 65 20 3a 20 24 28 56 50 41 54 48 29 2f 63 6f 6e 66 69 67 75 72 65 20 24 28 56 50 41 54 48 ile.:.$(VPATH)/configure.$(VPATH
68f00 29 2f 4d 61 6b 65 66 69 6c 65 2e 69 6e 0a 09 2e 2f 63 6f 6e 66 69 67 2e 73 74 61 74 75 73 0a 0a )/Makefile.in.../config.status..
68f20 63 68 65 63 6b 20 3a 20 61 6c 6c 0a 09 40 24 28 56 50 41 54 48 29 2f 74 65 73 74 73 75 69 74 65 check.:.all..@$(VPATH)/testsuite
68f40 2f 63 68 65 63 6b 2e 73 68 20 24 28 56 50 41 54 48 29 2f 74 65 73 74 73 75 69 74 65 20 24 28 70 /check.sh.$(VPATH)/testsuite.$(p
68f60 6b 67 76 65 72 73 69 6f 6e 29 0a 0a 69 6e 73 74 61 6c 6c 20 3a 20 69 6e 73 74 61 6c 6c 2d 62 69 kgversion)..install.:.install-bi
68f80 6e 20 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 20 69 6e 73 74 61 6c 6c 2d 6d 61 6e 0a 69 6e 73 74 61 n.install-info.install-man.insta
68fa0 6c 6c 2d 73 74 72 69 70 20 3a 20 69 6e 73 74 61 6c 6c 2d 62 69 6e 2d 73 74 72 69 70 20 69 6e 73 ll-strip.:.install-bin-strip.ins
68fc0 74 61 6c 6c 2d 69 6e 66 6f 20 69 6e 73 74 61 6c 6c 2d 6d 61 6e 0a 69 6e 73 74 61 6c 6c 2d 63 6f tall-info.install-man.install-co
68fe0 6d 70 72 65 73 73 20 3a 20 69 6e 73 74 61 6c 6c 2d 62 69 6e 20 69 6e 73 74 61 6c 6c 2d 69 6e 66 mpress.:.install-bin.install-inf
69000 6f 2d 63 6f 6d 70 72 65 73 73 20 69 6e 73 74 61 6c 6c 2d 6d 61 6e 2d 63 6f 6d 70 72 65 73 73 0a o-compress.install-man-compress.
69020 69 6e 73 74 61 6c 6c 2d 73 74 72 69 70 2d 63 6f 6d 70 72 65 73 73 20 3a 20 69 6e 73 74 61 6c 6c install-strip-compress.:.install
69040 2d 62 69 6e 2d 73 74 72 69 70 20 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 2d 63 6f 6d 70 72 65 73 73 -bin-strip.install-info-compress
69060 20 69 6e 73 74 61 6c 6c 2d 6d 61 6e 2d 63 6f 6d 70 72 65 73 73 0a 0a 69 6e 73 74 61 6c 6c 2d 62 .install-man-compress..install-b
69080 69 6e 20 3a 20 61 6c 6c 0a 09 69 66 20 5b 20 21 20 2d 64 20 22 24 28 44 45 53 54 44 49 52 29 24 in.:.all..if.[.!.-d."$(DESTDIR)$
690a0 28 62 69 6e 64 69 72 29 22 20 5d 20 3b 20 74 68 65 6e 20 24 28 49 4e 53 54 41 4c 4c 5f 44 49 52 (bindir)".].;.then.$(INSTALL_DIR
690c0 29 20 22 24 28 44 45 53 54 44 49 52 29 24 28 62 69 6e 64 69 72 29 22 20 3b 20 66 69 0a 09 24 28 )."$(DESTDIR)$(bindir)".;.fi..$(
690e0 49 4e 53 54 41 4c 4c 5f 50 52 4f 47 52 41 4d 29 20 2e 2f 24 28 70 72 6f 67 6e 61 6d 65 29 20 22 INSTALL_PROGRAM)../$(progname)."
69100 24 28 44 45 53 54 44 49 52 29 24 28 62 69 6e 64 69 72 29 2f 24 28 70 72 6f 67 6e 61 6d 65 29 22 $(DESTDIR)$(bindir)/$(progname)"
69120 0a 0a 69 6e 73 74 61 6c 6c 2d 62 69 6e 2d 73 74 72 69 70 20 3a 20 61 6c 6c 0a 09 24 28 4d 41 4b ..install-bin-strip.:.all..$(MAK
69140 45 29 20 49 4e 53 54 41 4c 4c 5f 50 52 4f 47 52 41 4d 3d 27 24 28 49 4e 53 54 41 4c 4c 5f 50 52 E).INSTALL_PROGRAM='$(INSTALL_PR
69160 4f 47 52 41 4d 29 20 2d 73 27 20 69 6e 73 74 61 6c 6c 2d 62 69 6e 0a 0a 69 6e 73 74 61 6c 6c 2d OGRAM).-s'.install-bin..install-
69180 69 6e 66 6f 20 3a 0a 09 69 66 20 5b 20 21 20 2d 64 20 22 24 28 44 45 53 54 44 49 52 29 24 28 69 info.:..if.[.!.-d."$(DESTDIR)$(i
691a0 6e 66 6f 64 69 72 29 22 20 5d 20 3b 20 74 68 65 6e 20 24 28 49 4e 53 54 41 4c 4c 5f 44 49 52 29 nfodir)".].;.then.$(INSTALL_DIR)
691c0 20 22 24 28 44 45 53 54 44 49 52 29 24 28 69 6e 66 6f 64 69 72 29 22 20 3b 20 66 69 0a 09 2d 72 ."$(DESTDIR)$(infodir)".;.fi..-r
691e0 6d 20 2d 66 20 22 24 28 44 45 53 54 44 49 52 29 24 28 69 6e 66 6f 64 69 72 29 2f 24 28 70 6b 67 m.-f."$(DESTDIR)$(infodir)/$(pkg
69200 6e 61 6d 65 29 2e 69 6e 66 6f 22 2a 0a 09 24 28 49 4e 53 54 41 4c 4c 5f 44 41 54 41 29 20 24 28 name).info"*..$(INSTALL_DATA).$(
69220 56 50 41 54 48 29 2f 64 6f 63 2f 24 28 70 6b 67 6e 61 6d 65 29 2e 69 6e 66 6f 20 22 24 28 44 45 VPATH)/doc/$(pkgname).info."$(DE
69240 53 54 44 49 52 29 24 28 69 6e 66 6f 64 69 72 29 2f 24 28 70 6b 67 6e 61 6d 65 29 2e 69 6e 66 6f STDIR)$(infodir)/$(pkgname).info
69260 22 0a 09 2d 69 66 20 24 28 43 41 4e 5f 52 55 4e 5f 49 4e 53 54 41 4c 4c 49 4e 46 4f 29 20 3b 20 "..-if.$(CAN_RUN_INSTALLINFO).;.
69280 74 68 65 6e 20 5c 0a 09 20 20 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 20 2d 2d 69 6e 66 6f 2d 64 69 then.\....install-info.--info-di
692a0 72 3d 22 24 28 44 45 53 54 44 49 52 29 24 28 69 6e 66 6f 64 69 72 29 22 20 22 24 28 44 45 53 54 r="$(DESTDIR)$(infodir)"."$(DEST
692c0 44 49 52 29 24 28 69 6e 66 6f 64 69 72 29 2f 24 28 70 6b 67 6e 61 6d 65 29 2e 69 6e 66 6f 22 20 DIR)$(infodir)/$(pkgname).info".
692e0 3b 20 5c 0a 09 66 69 0a 0a 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 2d 63 6f 6d 70 72 65 73 73 20 3a ;.\..fi..install-info-compress.:
69300 20 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 0a 09 6c 7a 69 70 20 2d 76 20 2d 39 20 22 24 28 44 45 53 .install-info..lzip.-v.-9."$(DES
69320 54 44 49 52 29 24 28 69 6e 66 6f 64 69 72 29 2f 24 28 70 6b 67 6e 61 6d 65 29 2e 69 6e 66 6f 22 TDIR)$(infodir)/$(pkgname).info"
69340 0a 0a 69 6e 73 74 61 6c 6c 2d 6d 61 6e 20 3a 0a 09 69 66 20 5b 20 21 20 2d 64 20 22 24 28 44 45 ..install-man.:..if.[.!.-d."$(DE
69360 53 54 44 49 52 29 24 28 6d 61 6e 64 69 72 29 2f 6d 61 6e 31 22 20 5d 20 3b 20 74 68 65 6e 20 24 STDIR)$(mandir)/man1".].;.then.$
69380 28 49 4e 53 54 41 4c 4c 5f 44 49 52 29 20 22 24 28 44 45 53 54 44 49 52 29 24 28 6d 61 6e 64 69 (INSTALL_DIR)."$(DESTDIR)$(mandi
693a0 72 29 2f 6d 61 6e 31 22 20 3b 20 66 69 0a 09 2d 72 6d 20 2d 66 20 22 24 28 44 45 53 54 44 49 52 r)/man1".;.fi..-rm.-f."$(DESTDIR
693c0 29 24 28 6d 61 6e 64 69 72 29 2f 6d 61 6e 31 2f 24 28 70 72 6f 67 6e 61 6d 65 29 2e 31 22 2a 0a )$(mandir)/man1/$(progname).1"*.
693e0 09 24 28 49 4e 53 54 41 4c 4c 5f 44 41 54 41 29 20 24 28 56 50 41 54 48 29 2f 64 6f 63 2f 24 28 .$(INSTALL_DATA).$(VPATH)/doc/$(
69400 70 72 6f 67 6e 61 6d 65 29 2e 31 20 22 24 28 44 45 53 54 44 49 52 29 24 28 6d 61 6e 64 69 72 29 progname).1."$(DESTDIR)$(mandir)
69420 2f 6d 61 6e 31 2f 24 28 70 72 6f 67 6e 61 6d 65 29 2e 31 22 0a 0a 69 6e 73 74 61 6c 6c 2d 6d 61 /man1/$(progname).1"..install-ma
69440 6e 2d 63 6f 6d 70 72 65 73 73 20 3a 20 69 6e 73 74 61 6c 6c 2d 6d 61 6e 0a 09 6c 7a 69 70 20 2d n-compress.:.install-man..lzip.-
69460 76 20 2d 39 20 22 24 28 44 45 53 54 44 49 52 29 24 28 6d 61 6e 64 69 72 29 2f 6d 61 6e 31 2f 24 v.-9."$(DESTDIR)$(mandir)/man1/$
69480 28 70 72 6f 67 6e 61 6d 65 29 2e 31 22 0a 0a 75 6e 69 6e 73 74 61 6c 6c 20 3a 20 75 6e 69 6e 73 (progname).1"..uninstall.:.unins
694a0 74 61 6c 6c 2d 6d 61 6e 20 75 6e 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 20 75 6e 69 6e 73 74 61 6c tall-man.uninstall-info.uninstal
694c0 6c 2d 62 69 6e 0a 0a 75 6e 69 6e 73 74 61 6c 6c 2d 62 69 6e 20 3a 0a 09 2d 72 6d 20 2d 66 20 22 l-bin..uninstall-bin.:..-rm.-f."
694e0 24 28 44 45 53 54 44 49 52 29 24 28 62 69 6e 64 69 72 29 2f 24 28 70 72 6f 67 6e 61 6d 65 29 22 $(DESTDIR)$(bindir)/$(progname)"
69500 0a 0a 75 6e 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 20 3a 0a 09 2d 69 66 20 24 28 43 41 4e 5f 52 55 ..uninstall-info.:..-if.$(CAN_RU
69520 4e 5f 49 4e 53 54 41 4c 4c 49 4e 46 4f 29 20 3b 20 74 68 65 6e 20 5c 0a 09 20 20 69 6e 73 74 61 N_INSTALLINFO).;.then.\....insta
69540 6c 6c 2d 69 6e 66 6f 20 2d 2d 69 6e 66 6f 2d 64 69 72 3d 22 24 28 44 45 53 54 44 49 52 29 24 28 ll-info.--info-dir="$(DESTDIR)$(
69560 69 6e 66 6f 64 69 72 29 22 20 2d 2d 72 65 6d 6f 76 65 20 22 24 28 44 45 53 54 44 49 52 29 24 28 infodir)".--remove."$(DESTDIR)$(
69580 69 6e 66 6f 64 69 72 29 2f 24 28 70 6b 67 6e 61 6d 65 29 2e 69 6e 66 6f 22 20 3b 20 5c 0a 09 66 infodir)/$(pkgname).info".;.\..f
695a0 69 0a 09 2d 72 6d 20 2d 66 20 22 24 28 44 45 53 54 44 49 52 29 24 28 69 6e 66 6f 64 69 72 29 2f i..-rm.-f."$(DESTDIR)$(infodir)/
695c0 24 28 70 6b 67 6e 61 6d 65 29 2e 69 6e 66 6f 22 2a 0a 0a 75 6e 69 6e 73 74 61 6c 6c 2d 6d 61 6e $(pkgname).info"*..uninstall-man
695e0 20 3a 0a 09 2d 72 6d 20 2d 66 20 22 24 28 44 45 53 54 44 49 52 29 24 28 6d 61 6e 64 69 72 29 2f .:..-rm.-f."$(DESTDIR)$(mandir)/
69600 6d 61 6e 31 2f 24 28 70 72 6f 67 6e 61 6d 65 29 2e 31 22 2a 0a 0a 64 69 73 74 20 3a 20 64 6f 63 man1/$(progname).1"*..dist.:.doc
69620 0a 09 6c 6e 20 2d 73 66 20 24 28 56 50 41 54 48 29 20 24 28 44 49 53 54 4e 41 4d 45 29 0a 09 74 ..ln.-sf.$(VPATH).$(DISTNAME)..t
69640 61 72 20 2d 48 75 73 74 61 72 20 2d 2d 6f 77 6e 65 72 3d 72 6f 6f 74 20 2d 2d 67 72 6f 75 70 3d ar.-Hustar.--owner=root.--group=
69660 72 6f 6f 74 20 2d 63 76 66 20 24 28 44 49 53 54 4e 41 4d 45 29 2e 74 61 72 20 5c 0a 09 20 20 24 root.-cvf.$(DISTNAME).tar.\....$
69680 28 44 49 53 54 4e 41 4d 45 29 2f 41 55 54 48 4f 52 53 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 (DISTNAME)/AUTHORS.\....$(DISTNA
696a0 4d 45 29 2f 43 4f 50 59 49 4e 47 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 43 68 61 ME)/COPYING.\....$(DISTNAME)/Cha
696c0 6e 67 65 4c 6f 67 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 49 4e 53 54 41 4c 4c 20 ngeLog.\....$(DISTNAME)/INSTALL.
696e0 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 4d 61 6b 65 66 69 6c 65 2e 69 6e 20 5c 0a 09 \....$(DISTNAME)/Makefile.in.\..
69700 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 4e 45 57 53 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 ..$(DISTNAME)/NEWS.\....$(DISTNA
69720 4d 45 29 2f 52 45 41 44 4d 45 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 63 6f 6e 66 ME)/README.\....$(DISTNAME)/conf
69740 69 67 75 72 65 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 64 6f 63 2f 24 28 70 72 6f igure.\....$(DISTNAME)/doc/$(pro
69760 67 6e 61 6d 65 29 2e 31 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 64 6f 63 2f 24 28 gname).1.\....$(DISTNAME)/doc/$(
69780 70 6b 67 6e 61 6d 65 29 2e 69 6e 66 6f 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 64 pkgname).info.\....$(DISTNAME)/d
697a0 6f 63 2f 24 28 70 6b 67 6e 61 6d 65 29 2e 74 65 78 69 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 oc/$(pkgname).texi.\....$(DISTNA
697c0 4d 45 29 2f 2a 2e 68 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 2a 2e 63 63 20 5c 0a ME)/*.h.\....$(DISTNAME)/*.cc.\.
697e0 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 74 65 73 74 73 75 69 74 65 2f 63 68 65 63 6b 2e 73 ...$(DISTNAME)/testsuite/check.s
69800 68 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 74 65 73 74 73 75 69 74 65 2f 74 65 73 h.\....$(DISTNAME)/testsuite/tes
69820 74 2e 74 78 74 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 74 65 73 74 73 75 69 74 65 t.txt.\....$(DISTNAME)/testsuite
69840 2f 66 6f 78 2e 6c 7a 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 74 65 73 74 73 75 69 /fox.lz.\....$(DISTNAME)/testsui
69860 74 65 2f 66 6f 78 5f 2a 2e 6c 7a 20 5c 0a 09 20 20 24 28 44 49 53 54 4e 41 4d 45 29 2f 74 65 73 te/fox_*.lz.\....$(DISTNAME)/tes
69880 74 73 75 69 74 65 2f 74 65 73 74 2e 74 78 74 2e 6c 7a 0a 09 72 6d 20 2d 66 20 24 28 44 49 53 54 tsuite/test.txt.lz..rm.-f.$(DIST
698a0 4e 41 4d 45 29 0a 09 6c 7a 69 70 20 2d 76 20 2d 39 20 24 28 44 49 53 54 4e 41 4d 45 29 2e 74 61 NAME)..lzip.-v.-9.$(DISTNAME).ta
698c0 72 0a 0a 63 6c 65 61 6e 20 3a 0a 09 2d 72 6d 20 2d 66 20 24 28 70 72 6f 67 6e 61 6d 65 29 20 24 r..clean.:..-rm.-f.$(progname).$
698e0 28 6f 62 6a 73 29 0a 0a 64 69 73 74 63 6c 65 61 6e 20 3a 20 63 6c 65 61 6e 0a 09 2d 72 6d 20 2d (objs)..distclean.:.clean..-rm.-
69900 66 20 4d 61 6b 65 66 69 6c 65 20 63 6f 6e 66 69 67 2e 73 74 61 74 75 73 20 2a 2e 74 61 72 20 2a f.Makefile.config.status.*.tar.*
69920 2e 74 61 72 2e 6c 7a 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .tar.lz.........................
69940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
699a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
699c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
699e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69a00 6c 7a 69 70 2d 31 2e 32 35 2f 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 68 00 00 00 00 00 00 00 00 lzip-1.25/encoder_base.h........
69a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
69a80 30 30 33 35 30 31 37 00 31 34 37 34 34 32 33 36 30 35 37 00 30 31 35 32 32 31 00 20 30 00 00 00 0035017.14744236057.015221..0...
69aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69b00 00 75 73 74 61 72 00 30 30 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar.00root...................
69b20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
69b40 00 00 00 00 00 00 00 00 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 .........0000000.0000000........
69b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69c00 2f 2a 20 4c 7a 69 70 20 2d 20 4c 5a 4d 41 20 6c 6f 73 73 6c 65 73 73 20 64 61 74 61 20 63 6f 6d /*.Lzip.-.LZMA.lossless.data.com
69c20 70 72 65 73 73 6f 72 0a 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 pressor....Copyright.(C).2008-20
69c40 32 35 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 20 20 20 54 68 69 73 20 70 25.Antonio.Diaz.Diaz......This.p
69c60 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 63 61 6e rogram.is.free.software:.you.can
69c80 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 20 .redistribute.it.and/or.modify..
69ca0 20 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 ..it.under.the.terms.of.the.GNU.
69cc0 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 General.Public.License.as.publis
69ce0 68 65 64 20 62 79 0a 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e hed.by....the.Free.Software.Foun
69d00 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 20 6f 66 20 74 68 65 20 dation,.either.version.2.of.the.
69d20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 License,.or....(at.your.option).
69d40 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 any.later.version......This.prog
69d60 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ram.is.distributed.in.the.hope.t
69d80 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 20 62 75 74 20 57 49 hat.it.will.be.useful,....but.WI
69da0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
69dc0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20 20 4d 45 52 43 .the.implied.warranty.of....MERC
69de0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
69e00 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 20 20 20 47 4e 55 TICULAR.PURPOSE...See.the....GNU
69e20 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 .General.Public.License.for.more
69e40 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 .details......You.should.have.re
69e60 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c ceived.a.copy.of.the.GNU.General
69e80 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 20 20 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 .Public.License....along.with.th
69ea0 69 73 20 70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f is.program...If.not,.see.<http:/
69ec0 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 2a 2f 0a 0a 65 6e 75 /www.gnu.org/licenses/>..*/..enu
69ee0 6d 20 7b 20 70 72 69 63 65 5f 73 68 69 66 74 5f 62 69 74 73 20 3d 20 36 2c 0a 20 20 20 20 20 20 m.{.price_shift_bits.=.6,.......
69f00 20 70 72 69 63 65 5f 73 74 65 70 5f 62 69 74 73 20 3d 20 32 2c 0a 20 20 20 20 20 20 20 70 72 69 .price_step_bits.=.2,........pri
69f20 63 65 5f 73 74 65 70 20 3d 20 31 20 3c 3c 20 70 72 69 63 65 5f 73 74 65 70 5f 62 69 74 73 20 7d ce_step.=.1.<<.price_step_bits.}
69f40 3b 0a 0a 63 6c 61 73 73 20 44 69 73 5f 73 6c 6f 74 73 0a 20 20 7b 0a 20 20 75 69 6e 74 38 5f 74 ;..class.Dis_slots...{...uint8_t
69f60 20 64 61 74 61 5b 31 3c 3c 31 30 5d 3b 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 76 6f 69 64 20 69 6e .data[1<<10];..public:...void.in
69f80 69 74 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 73 6c 6f 74 20 3d 20 30 it().....{.....for(.int.slot.=.0
69fa0 3b 20 73 6c 6f 74 20 3c 20 34 3b 20 2b 2b 73 6c 6f 74 20 29 20 64 61 74 61 5b 73 6c 6f 74 5d 20 ;.slot.<.4;.++slot.).data[slot].
69fc0 3d 20 73 6c 6f 74 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 34 2c 20 73 69 7a 65 =.slot;.....for(.int.i.=.4,.size
69fe0 20 3d 20 32 2c 20 73 6c 6f 74 20 3d 20 34 3b 20 73 6c 6f 74 20 3c 20 32 30 3b 20 73 6c 6f 74 20 .=.2,.slot.=.4;.slot.<.20;.slot.
6a000 2b 3d 20 32 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 73 74 64 3a 3a 6d 65 6d 73 65 74 +=.2.).......{.......std::memset
6a020 28 20 26 64 61 74 61 5b 69 5d 2c 20 73 6c 6f 74 2c 20 73 69 7a 65 20 29 3b 0a 20 20 20 20 20 20 (.&data[i],.slot,.size.);.......
6a040 73 74 64 3a 3a 6d 65 6d 73 65 74 28 20 26 64 61 74 61 5b 69 2b 73 69 7a 65 5d 2c 20 73 6c 6f 74 std::memset(.&data[i+size],.slot
6a060 20 2b 20 31 2c 20 73 69 7a 65 20 29 3b 0a 20 20 20 20 20 20 73 69 7a 65 20 3c 3c 3d 20 31 3b 0a .+.1,.size.);.......size.<<=.1;.
6a080 20 20 20 20 20 20 69 20 2b 3d 20 73 69 7a 65 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a ......i.+=.size;.......}.....}..
6a0a0 20 20 75 69 6e 74 38 5f 74 20 6f 70 65 72 61 74 6f 72 5b 5d 28 20 63 6f 6e 73 74 20 69 6e 74 20 ..uint8_t.operator[](.const.int.
6a0c0 64 69 73 20 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 64 61 74 61 5b 64 69 73 5d 3b 20 dis.).const.{.return.data[dis];.
6a0e0 7d 0a 20 20 7d 3b 0a 0a 65 78 74 65 72 6e 20 44 69 73 5f 73 6c 6f 74 73 20 64 69 73 5f 73 6c 6f }...};..extern.Dis_slots.dis_slo
6a100 74 73 3b 0a 0a 69 6e 6c 69 6e 65 20 75 69 6e 74 38 5f 74 20 67 65 74 5f 73 6c 6f 74 28 20 63 6f ts;..inline.uint8_t.get_slot(.co
6a120 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 73 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 64 69 73 nst.unsigned.dis.)...{...if(.dis
6a140 20 3c 20 28 31 20 3c 3c 20 31 30 29 20 29 20 72 65 74 75 72 6e 20 64 69 73 5f 73 6c 6f 74 73 5b .<.(1.<<.10).).return.dis_slots[
6a160 64 69 73 5d 3b 0a 20 20 69 66 28 20 64 69 73 20 3c 20 28 31 20 3c 3c 20 31 39 29 20 29 20 72 65 dis];...if(.dis.<.(1.<<.19).).re
6a180 74 75 72 6e 20 64 69 73 5f 73 6c 6f 74 73 5b 64 69 73 3e 3e 20 39 5d 20 2b 20 31 38 3b 0a 20 20 turn.dis_slots[dis>>.9].+.18;...
6a1a0 69 66 28 20 64 69 73 20 3c 20 28 31 20 3c 3c 20 32 38 29 20 29 20 72 65 74 75 72 6e 20 64 69 73 if(.dis.<.(1.<<.28).).return.dis
6a1c0 5f 73 6c 6f 74 73 5b 64 69 73 3e 3e 31 38 5d 20 2b 20 33 36 3b 0a 20 20 72 65 74 75 72 6e 20 64 _slots[dis>>18].+.36;...return.d
6a1e0 69 73 5f 73 6c 6f 74 73 5b 64 69 73 3e 3e 32 37 5d 20 2b 20 35 34 3b 0a 20 20 7d 0a 0a 0a 63 6c is_slots[dis>>27].+.54;...}...cl
6a200 61 73 73 20 50 72 6f 62 5f 70 72 69 63 65 73 0a 20 20 7b 0a 20 20 73 68 6f 72 74 20 64 61 74 61 ass.Prob_prices...{...short.data
6a220 5b 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 20 3e 3e 20 70 72 69 63 65 5f 73 74 65 70 5f 62 [bit_model_total.>>.price_step_b
6a240 69 74 73 5d 3b 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 76 6f 69 64 20 69 6e 69 74 28 29 0a 20 20 20 its];..public:...void.init()....
6a260 20 7b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 62 69 74 5f 6d .{.....for(.int.i.=.0;.i.<.bit_m
6a280 6f 64 65 6c 5f 74 6f 74 61 6c 20 3e 3e 20 70 72 69 63 65 5f 73 74 65 70 5f 62 69 74 73 3b 20 2b odel_total.>>.price_step_bits;.+
6a2a0 2b 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 75 6e 73 69 67 6e 65 64 20 76 61 6c 20 +i.).......{.......unsigned.val.
6a2c0 3d 20 28 20 69 20 2a 20 70 72 69 63 65 5f 73 74 65 70 20 29 20 2b 20 28 20 70 72 69 63 65 5f 73 =.(.i.*.price_step.).+.(.price_s
6a2e0 74 65 70 20 2f 20 32 20 29 3b 0a 20 20 20 20 20 20 69 6e 74 20 62 69 74 73 20 3d 20 30 3b 09 09 tep./.2.);.......int.bits.=.0;..
6a300 09 09 2f 2f 20 62 61 73 65 20 32 20 6c 6f 67 61 72 69 74 68 6d 20 6f 66 20 76 61 6c 0a 20 20 20 ..//.base.2.logarithm.of.val....
6a320 20 20 20 66 6f 72 28 20 69 6e 74 20 6a 20 3d 20 30 3b 20 6a 20 3c 20 70 72 69 63 65 5f 73 68 69 ...for(.int.j.=.0;.j.<.price_shi
6a340 66 74 5f 62 69 74 73 3b 20 2b 2b 6a 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 ft_bits;.++j.).........{........
6a360 20 76 61 6c 20 3d 20 76 61 6c 20 2a 20 76 61 6c 3b 0a 20 20 20 20 20 20 20 20 62 69 74 73 20 3c .val.=.val.*.val;.........bits.<
6a380 3c 3d 20 31 3b 0a 20 20 20 20 20 20 20 20 77 68 69 6c 65 28 20 76 61 6c 20 3e 3d 20 31 20 3c 3c <=.1;.........while(.val.>=.1.<<
6a3a0 20 31 36 20 29 20 7b 20 76 61 6c 20 3e 3e 3d 20 31 3b 20 2b 2b 62 69 74 73 3b 20 7d 0a 20 20 20 .16.).{.val.>>=.1;.++bits;.}....
6a3c0 20 20 20 20 20 7d 0a 20 20 20 20 20 20 62 69 74 73 20 2b 3d 20 31 35 3b 09 09 09 09 2f 2f 20 72 .....}.......bits.+=.15;....//.r
6a3e0 65 6d 61 69 6e 69 6e 67 20 62 69 74 73 20 69 6e 20 76 61 6c 0a 20 20 20 20 20 20 64 61 74 61 5b emaining.bits.in.val.......data[
6a400 69 5d 20 3d 20 28 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 5f 62 69 74 73 20 3c 3c 20 70 i].=.(.bit_model_total_bits.<<.p
6a420 72 69 63 65 5f 73 68 69 66 74 5f 62 69 74 73 20 29 20 2d 20 62 69 74 73 3b 0a 20 20 20 20 20 20 rice_shift_bits.).-.bits;.......
6a440 7d 0a 20 20 20 20 7d 0a 0a 20 20 69 6e 74 20 6f 70 65 72 61 74 6f 72 5b 5d 28 20 63 6f 6e 73 74 }.....}....int.operator[](.const
6a460 20 69 6e 74 20 70 72 6f 62 61 62 69 6c 69 74 79 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 .int.probability.).const.....{.r
6a480 65 74 75 72 6e 20 64 61 74 61 5b 70 72 6f 62 61 62 69 6c 69 74 79 20 3e 3e 20 70 72 69 63 65 5f eturn.data[probability.>>.price_
6a4a0 73 74 65 70 5f 62 69 74 73 5d 3b 20 7d 0a 20 20 7d 3b 0a 0a 65 78 74 65 72 6e 20 50 72 6f 62 5f step_bits];.}...};..extern.Prob_
6a4c0 70 72 69 63 65 73 20 70 72 6f 62 5f 70 72 69 63 65 73 3b 0a 0a 0a 69 6e 6c 69 6e 65 20 69 6e 74 prices.prob_prices;...inline.int
6a4e0 20 70 72 69 63 65 30 28 20 63 6f 6e 73 74 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 20 29 0a 20 20 .price0(.const.Bit_model.bm.)...
6a500 7b 20 72 65 74 75 72 6e 20 70 72 6f 62 5f 70 72 69 63 65 73 5b 62 6d 2e 70 72 6f 62 61 62 69 6c {.return.prob_prices[bm.probabil
6a520 69 74 79 5d 3b 20 7d 0a 0a 69 6e 6c 69 6e 65 20 69 6e 74 20 70 72 69 63 65 31 28 20 63 6f 6e 73 ity];.}..inline.int.price1(.cons
6a540 74 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 20 29 0a 20 20 7b 20 72 65 74 75 72 6e 20 70 72 6f 62 t.Bit_model.bm.)...{.return.prob
6a560 5f 70 72 69 63 65 73 5b 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 20 2d 20 62 6d 2e 70 72 6f _prices[bit_model_total.-.bm.pro
6a580 62 61 62 69 6c 69 74 79 5d 3b 20 7d 0a 0a 69 6e 6c 69 6e 65 20 69 6e 74 20 70 72 69 63 65 5f 62 bability];.}..inline.int.price_b
6a5a0 69 74 28 20 63 6f 6e 73 74 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 2c 20 63 6f 6e 73 74 20 62 6f it(.const.Bit_model.bm,.const.bo
6a5c0 6f 6c 20 62 69 74 20 29 0a 20 20 7b 20 72 65 74 75 72 6e 20 62 69 74 20 3f 20 70 72 69 63 65 31 ol.bit.)...{.return.bit.?.price1
6a5e0 28 20 62 6d 20 29 20 3a 20 70 72 69 63 65 30 28 20 62 6d 20 29 3b 20 7d 0a 0a 0a 69 6e 6c 69 6e (.bm.).:.price0(.bm.);.}...inlin
6a600 65 20 69 6e 74 20 70 72 69 63 65 5f 73 79 6d 62 6f 6c 33 28 20 63 6f 6e 73 74 20 42 69 74 5f 6d e.int.price_symbol3(.const.Bit_m
6a620 6f 64 65 6c 20 62 6d 5b 5d 2c 20 69 6e 74 20 73 79 6d 62 6f 6c 20 29 0a 20 20 7b 0a 20 20 62 6f odel.bm[],.int.symbol.)...{...bo
6a640 6f 6c 20 62 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 20 31 3b 0a 20 20 73 79 6d 62 6f 6c 20 7c 3d ol.bit.=.symbol.&.1;...symbol.|=
6a660 20 38 3b 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 0a 20 20 69 6e 74 20 70 72 69 63 65 20 3d 20 .8;.symbol.>>=.1;...int.price.=.
6a680 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 62 69 74 20 29 3b 0a 20 20 price_bit(.bm[symbol],.bit.);...
6a6a0 62 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 20 31 3b 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 20 bit.=.symbol.&.1;.symbol.>>=.1;.
6a6c0 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 price.+=.price_bit(.bm[symbol],.
6a6e0 62 69 74 20 29 3b 0a 20 20 72 65 74 75 72 6e 20 70 72 69 63 65 20 2b 20 70 72 69 63 65 5f 62 69 bit.);...return.price.+.price_bi
6a700 74 28 20 62 6d 5b 31 5d 2c 20 73 79 6d 62 6f 6c 20 26 20 31 20 29 3b 0a 20 20 7d 0a 0a 0a 69 6e t(.bm[1],.symbol.&.1.);...}...in
6a720 6c 69 6e 65 20 69 6e 74 20 70 72 69 63 65 5f 73 79 6d 62 6f 6c 36 28 20 63 6f 6e 73 74 20 42 69 line.int.price_symbol6(.const.Bi
6a740 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c 20 29 0a t_model.bm[],.unsigned.symbol.).
6a760 20 20 7b 0a 20 20 62 6f 6f 6c 20 62 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 20 31 3b 0a 20 20 73 ..{...bool.bit.=.symbol.&.1;...s
6a780 79 6d 62 6f 6c 20 7c 3d 20 36 34 3b 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 0a 20 20 69 6e 74 ymbol.|=.64;.symbol.>>=.1;...int
6a7a0 20 70 72 69 63 65 20 3d 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 .price.=.price_bit(.bm[symbol],.
6a7c0 62 69 74 20 29 3b 0a 20 20 62 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 20 31 3b 20 73 79 6d 62 6f bit.);...bit.=.symbol.&.1;.symbo
6a7e0 6c 20 3e 3e 3d 20 31 3b 20 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b l.>>=.1;.price.+=.price_bit(.bm[
6a800 73 79 6d 62 6f 6c 5d 2c 20 62 69 74 20 29 3b 0a 20 20 62 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 symbol],.bit.);...bit.=.symbol.&
6a820 20 31 3b 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 20 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 .1;.symbol.>>=.1;.price.+=.price
6a840 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 62 69 74 20 29 3b 0a 20 20 62 69 74 20 3d _bit(.bm[symbol],.bit.);...bit.=
6a860 20 73 79 6d 62 6f 6c 20 26 20 31 3b 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 20 70 72 69 63 65 .symbol.&.1;.symbol.>>=.1;.price
6a880 20 2b 3d 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 62 69 74 20 29 .+=.price_bit(.bm[symbol],.bit.)
6a8a0 3b 0a 20 20 62 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 20 31 3b 20 73 79 6d 62 6f 6c 20 3e 3e 3d ;...bit.=.symbol.&.1;.symbol.>>=
6a8c0 20 31 3b 20 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f .1;.price.+=.price_bit(.bm[symbo
6a8e0 6c 5d 2c 20 62 69 74 20 29 3b 0a 20 20 72 65 74 75 72 6e 20 70 72 69 63 65 20 2b 20 70 72 69 63 l],.bit.);...return.price.+.pric
6a900 65 5f 62 69 74 28 20 62 6d 5b 31 5d 2c 20 73 79 6d 62 6f 6c 20 26 20 31 20 29 3b 0a 20 20 7d 0a e_bit(.bm[1],.symbol.&.1.);...}.
6a920 0a 0a 69 6e 6c 69 6e 65 20 69 6e 74 20 70 72 69 63 65 5f 73 79 6d 62 6f 6c 38 28 20 63 6f 6e 73 ..inline.int.price_symbol8(.cons
6a940 74 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c 20 69 6e 74 20 73 79 6d 62 6f 6c 20 29 0a 20 t.Bit_model.bm[],.int.symbol.)..
6a960 20 7b 0a 20 20 62 6f 6f 6c 20 62 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 20 31 3b 0a 20 20 73 79 .{...bool.bit.=.symbol.&.1;...sy
6a980 6d 62 6f 6c 20 7c 3d 20 30 78 31 30 30 3b 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 0a 20 20 69 mbol.|=.0x100;.symbol.>>=.1;...i
6a9a0 6e 74 20 70 72 69 63 65 20 3d 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d nt.price.=.price_bit(.bm[symbol]
6a9c0 2c 20 62 69 74 20 29 3b 0a 20 20 62 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 20 31 3b 20 73 79 6d ,.bit.);...bit.=.symbol.&.1;.sym
6a9e0 62 6f 6c 20 3e 3e 3d 20 31 3b 20 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 5f 62 69 74 28 20 62 bol.>>=.1;.price.+=.price_bit(.b
6aa00 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 62 69 74 20 29 3b 0a 20 20 62 69 74 20 3d 20 73 79 6d 62 6f 6c m[symbol],.bit.);...bit.=.symbol
6aa20 20 26 20 31 3b 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 20 70 72 69 63 65 20 2b 3d 20 70 72 69 .&.1;.symbol.>>=.1;.price.+=.pri
6aa40 63 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 62 69 74 20 29 3b 0a 20 20 62 69 74 ce_bit(.bm[symbol],.bit.);...bit
6aa60 20 3d 20 73 79 6d 62 6f 6c 20 26 20 31 3b 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 20 70 72 69 .=.symbol.&.1;.symbol.>>=.1;.pri
6aa80 63 65 20 2b 3d 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 62 69 74 ce.+=.price_bit(.bm[symbol],.bit
6aaa0 20 29 3b 0a 20 20 62 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 20 31 3b 20 73 79 6d 62 6f 6c 20 3e .);...bit.=.symbol.&.1;.symbol.>
6aac0 3e 3d 20 31 3b 20 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d >=.1;.price.+=.price_bit(.bm[sym
6aae0 62 6f 6c 5d 2c 20 62 69 74 20 29 3b 0a 20 20 62 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 20 31 3b bol],.bit.);...bit.=.symbol.&.1;
6ab00 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 20 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 5f 62 69 .symbol.>>=.1;.price.+=.price_bi
6ab20 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 62 69 74 20 29 3b 0a 20 20 62 69 74 20 3d 20 73 79 t(.bm[symbol],.bit.);...bit.=.sy
6ab40 6d 62 6f 6c 20 26 20 31 3b 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 20 70 72 69 63 65 20 2b 3d mbol.&.1;.symbol.>>=.1;.price.+=
6ab60 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b 73 79 6d 62 6f 6c 5d 2c 20 62 69 74 20 29 3b 0a 20 .price_bit(.bm[symbol],.bit.);..
6ab80 20 72 65 74 75 72 6e 20 70 72 69 63 65 20 2b 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b 31 5d .return.price.+.price_bit(.bm[1]
6aba0 2c 20 73 79 6d 62 6f 6c 20 26 20 31 20 29 3b 0a 20 20 7d 0a 0a 0a 69 6e 6c 69 6e 65 20 69 6e 74 ,.symbol.&.1.);...}...inline.int
6abc0 20 70 72 69 63 65 5f 73 79 6d 62 6f 6c 5f 72 65 76 65 72 73 65 64 28 20 63 6f 6e 73 74 20 42 69 .price_symbol_reversed(.const.Bi
6abe0 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c 20 69 6e 74 20 73 79 6d 62 6f 6c 2c 0a 20 20 20 20 20 20 t_model.bm[],.int.symbol,.......
6ac00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 ............................cons
6ac20 74 20 69 6e 74 20 6e 75 6d 5f 62 69 74 73 20 29 0a 20 20 7b 0a 20 20 69 6e 74 20 70 72 69 63 65 t.int.num_bits.)...{...int.price
6ac40 20 3d 20 30 3b 0a 20 20 69 6e 74 20 6d 6f 64 65 6c 20 3d 20 31 3b 0a 20 20 66 6f 72 28 20 69 6e .=.0;...int.model.=.1;...for(.in
6ac60 74 20 69 20 3d 20 6e 75 6d 5f 62 69 74 73 3b 20 69 20 3e 20 30 3b 20 2d 2d 69 20 29 0a 20 20 20 t.i.=.num_bits;.i.>.0;.--i.)....
6ac80 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 62 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 .{.....const.bool.bit.=.symbol.&
6aca0 20 31 3b 0a 20 20 20 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 0a 20 20 20 20 70 72 69 63 65 20 .1;.....symbol.>>=.1;.....price.
6acc0 2b 3d 20 70 72 69 63 65 5f 62 69 74 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 62 69 74 20 29 3b 0a +=.price_bit(.bm[model],.bit.);.
6ace0 20 20 20 20 6d 6f 64 65 6c 20 3c 3c 3d 20 31 3b 20 6d 6f 64 65 6c 20 7c 3d 20 62 69 74 3b 0a 20 ....model.<<=.1;.model.|=.bit;..
6ad00 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 70 72 69 63 65 3b 0a 20 20 7d 0a 0a 0a 69 6e 6c 69 6e ...}...return.price;...}...inlin
6ad20 65 20 69 6e 74 20 70 72 69 63 65 5f 6d 61 74 63 68 65 64 28 20 63 6f 6e 73 74 20 42 69 74 5f 6d e.int.price_matched(.const.Bit_m
6ad40 6f 64 65 6c 20 62 6d 5b 5d 2c 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c 2c 0a 20 20 20 20 odel.bm[],.unsigned.symbol,.....
6ad60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 6e 73 69 67 6e 65 64 20 6d ......................unsigned.m
6ad80 61 74 63 68 5f 62 79 74 65 20 29 0a 20 20 7b 0a 20 20 69 6e 74 20 70 72 69 63 65 20 3d 20 30 3b atch_byte.)...{...int.price.=.0;
6ada0 0a 20 20 75 6e 73 69 67 6e 65 64 20 6d 61 73 6b 20 3d 20 30 78 31 30 30 3b 0a 20 20 73 79 6d 62 ...unsigned.mask.=.0x100;...symb
6adc0 6f 6c 20 7c 3d 20 6d 61 73 6b 3b 0a 20 20 77 68 69 6c 65 28 20 74 72 75 65 20 29 0a 20 20 20 20 ol.|=.mask;...while(.true.).....
6ade0 7b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6d 61 74 63 68 5f 62 69 74 20 3d {.....const.unsigned.match_bit.=
6ae00 20 28 20 6d 61 74 63 68 5f 62 79 74 65 20 3c 3c 3d 20 31 20 29 20 26 20 6d 61 73 6b 3b 0a 20 20 .(.match_byte.<<=.1.).&.mask;...
6ae20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 62 69 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3c 3c 3d 20 ..const.bool.bit.=.(.symbol.<<=.
6ae40 31 20 29 20 26 20 30 78 31 30 30 3b 0a 20 20 20 20 70 72 69 63 65 20 2b 3d 20 70 72 69 63 65 5f 1.).&.0x100;.....price.+=.price_
6ae60 62 69 74 28 20 62 6d 5b 28 73 79 6d 62 6f 6c 3e 3e 39 29 2b 6d 61 74 63 68 5f 62 69 74 2b 6d 61 bit(.bm[(symbol>>9)+match_bit+ma
6ae80 73 6b 5d 2c 20 62 69 74 20 29 3b 0a 20 20 20 20 69 66 28 20 73 79 6d 62 6f 6c 20 3e 3d 20 30 78 sk],.bit.);.....if(.symbol.>=.0x
6aea0 31 30 30 30 30 20 29 20 72 65 74 75 72 6e 20 70 72 69 63 65 3b 0a 20 20 20 20 6d 61 73 6b 20 26 10000.).return.price;.....mask.&
6aec0 3d 20 7e 28 6d 61 74 63 68 5f 62 69 74 20 5e 20 73 79 6d 62 6f 6c 29 3b 09 2f 2f 20 69 66 28 20 =.~(match_bit.^.symbol);.//.if(.
6aee0 6d 61 74 63 68 5f 62 69 74 20 21 3d 20 62 69 74 20 29 20 6d 61 73 6b 20 3d 20 30 3b 0a 20 20 20 match_bit.!=.bit.).mask.=.0;....
6af00 20 7d 0a 20 20 7d 0a 0a 0a 63 6c 61 73 73 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 0a .}...}...class.Matchfinder_base.
6af20 20 20 7b 0a 20 20 62 6f 6f 6c 20 72 65 61 64 5f 62 6c 6f 63 6b 28 29 3b 0a 20 20 76 6f 69 64 20 ..{...bool.read_block();...void.
6af40 6e 6f 72 6d 61 6c 69 7a 65 5f 70 6f 73 28 29 3b 0a 0a 20 20 4d 61 74 63 68 66 69 6e 64 65 72 5f normalize_pos();....Matchfinder_
6af60 62 61 73 65 28 20 63 6f 6e 73 74 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 20 26 20 29 base(.const.Matchfinder_base.&.)
6af80 3b 09 2f 2f 20 64 65 63 6c 61 72 65 64 20 61 73 20 70 72 69 76 61 74 65 0a 20 20 76 6f 69 64 20 ;.//.declared.as.private...void.
6afa0 6f 70 65 72 61 74 6f 72 3d 28 20 63 6f 6e 73 74 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 operator=(.const.Matchfinder_bas
6afc0 65 20 26 20 29 3b 09 2f 2f 20 64 65 63 6c 61 72 65 64 20 61 73 20 70 72 69 76 61 74 65 0a 0a 70 e.&.);.//.declared.as.private..p
6afe0 72 6f 74 65 63 74 65 64 3a 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 rotected:...unsigned.long.long.p
6b000 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 3b 0a 20 20 75 69 6e 74 38 5f 74 20 2a 20 62 75 66 artial_data_pos;...uint8_t.*.buf
6b020 66 65 72 3b 09 09 2f 2f 20 69 6e 70 75 74 20 62 75 66 66 65 72 0a 20 20 69 6e 74 33 32 5f 74 20 fer;..//.input.buffer...int32_t.
6b040 2a 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 3b 09 2f 2f 20 31 20 2b 20 6c 61 73 74 20 73 65 *.prev_positions;.//.1.+.last.se
6b060 65 6e 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 6b 65 79 2e 20 65 6c 73 65 20 30 0a 20 20 69 6e 74 en.position.of.key..else.0...int
6b080 33 32 5f 74 20 2a 20 70 6f 73 5f 61 72 72 61 79 3b 09 09 2f 2f 20 6d 61 79 20 62 65 20 74 72 65 32_t.*.pos_array;..//.may.be.tre
6b0a0 65 20 6f 72 20 63 68 61 69 6e 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 62 65 66 6f 72 65 5f 73 69 e.or.chain...const.int.before_si
6b0c0 7a 65 3b 09 2f 2f 20 62 79 74 65 73 20 74 6f 20 6b 65 65 70 20 69 6e 20 62 75 66 66 65 72 20 62 ze;.//.bytes.to.keep.in.buffer.b
6b0e0 65 66 6f 72 65 20 64 69 63 74 69 6f 6e 61 72 79 0a 20 20 69 6e 74 20 62 75 66 66 65 72 5f 73 69 efore.dictionary...int.buffer_si
6b100 7a 65 3b 0a 20 20 69 6e 74 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 3b 09 09 2f 2f 20 62 ze;...int.dictionary_size;..//.b
6b120 79 74 65 73 20 74 6f 20 6b 65 65 70 20 69 6e 20 62 75 66 66 65 72 20 62 65 66 6f 72 65 20 70 6f ytes.to.keep.in.buffer.before.po
6b140 73 0a 20 20 69 6e 74 20 70 6f 73 3b 09 09 09 2f 2f 20 63 75 72 72 65 6e 74 20 70 6f 73 20 69 6e s...int.pos;...//.current.pos.in
6b160 20 62 75 66 66 65 72 0a 20 20 69 6e 74 20 63 79 63 6c 69 63 5f 70 6f 73 3b 09 09 2f 2f 20 63 79 .buffer...int.cyclic_pos;..//.cy
6b180 63 6c 65 73 20 74 68 72 6f 75 67 68 20 5b 30 2c 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 cles.through.[0,.dictionary_size
6b1a0 5d 0a 20 20 69 6e 74 20 73 74 72 65 61 6d 5f 70 6f 73 3b 09 09 2f 2f 20 66 69 72 73 74 20 62 79 ]...int.stream_pos;..//.first.by
6b1c0 74 65 20 6e 6f 74 20 79 65 74 20 72 65 61 64 20 66 72 6f 6d 20 66 69 6c 65 0a 20 20 69 6e 74 20 te.not.yet.read.from.file...int.
6b1e0 70 6f 73 5f 6c 69 6d 69 74 3b 09 09 2f 2f 20 77 68 65 6e 20 72 65 61 63 68 65 64 2c 20 61 20 6e pos_limit;..//.when.reached,.a.n
6b200 65 77 20 62 6c 6f 63 6b 20 6d 75 73 74 20 62 65 20 72 65 61 64 0a 20 20 69 6e 74 20 6b 65 79 34 ew.block.must.be.read...int.key4
6b220 5f 6d 61 73 6b 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 _mask;...const.int.num_prev_posi
6b240 74 69 6f 6e 73 32 33 3b 0a 20 20 69 6e 74 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e tions23;...int.num_prev_position
6b260 73 3b 09 2f 2f 20 73 69 7a 65 20 6f 66 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 0a 20 20 69 s;.//.size.of.prev_positions...i
6b280 6e 74 20 70 6f 73 5f 61 72 72 61 79 5f 73 69 7a 65 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 69 nt.pos_array_size;...const.int.i
6b2a0 6e 66 64 3b 09 09 2f 2f 20 69 6e 70 75 74 20 66 69 6c 65 20 64 65 73 63 72 69 70 74 6f 72 0a 20 nfd;..//.input.file.descriptor..
6b2c0 20 62 6f 6f 6c 20 61 74 5f 73 74 72 65 61 6d 5f 65 6e 64 3b 09 09 2f 2f 20 73 74 72 65 61 6d 5f .bool.at_stream_end;..//.stream_
6b2e0 70 6f 73 20 73 68 6f 77 73 20 72 65 61 6c 20 65 6e 64 20 6f 66 20 66 69 6c 65 0a 0a 20 20 4d 61 pos.shows.real.end.of.file....Ma
6b300 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 28 20 63 6f 6e 73 74 20 69 6e 74 20 62 65 66 6f 72 65 tchfinder_base(.const.int.before
6b320 5f 73 69 7a 65 5f 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 _size_,.....................cons
6b340 74 20 69 6e 74 20 64 69 63 74 5f 73 69 7a 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 61 66 74 65 72 t.int.dict_size,.const.int.after
6b360 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 _size,.....................const
6b380 20 69 6e 74 20 64 69 63 74 5f 66 61 63 74 6f 72 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6e 75 6d 5f .int.dict_factor,.const.int.num_
6b3a0 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 33 5f 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 prev_positions23_,..............
6b3c0 20 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 61 72 72 61 79 5f 66 61 63 74 6f .......const.int.pos_array_facto
6b3e0 72 2c 20 63 6f 6e 73 74 20 69 6e 74 20 69 66 64 20 29 3b 0a 0a 20 20 7e 4d 61 74 63 68 66 69 6e r,.const.int.ifd.);....~Matchfin
6b400 64 65 72 5f 62 61 73 65 28 29 0a 20 20 20 20 7b 20 64 65 6c 65 74 65 5b 5d 20 70 72 65 76 5f 70 der_base().....{.delete[].prev_p
6b420 6f 73 69 74 69 6f 6e 73 3b 20 73 74 64 3a 3a 66 72 65 65 28 20 62 75 66 66 65 72 20 29 3b 20 7d ositions;.std::free(.buffer.);.}
6b440 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 75 69 6e 74 38 5f 74 20 70 65 65 6b 28 20 63 6f 6e 73 74 20 ..public:...uint8_t.peek(.const.
6b460 69 6e 74 20 64 69 73 74 61 6e 63 65 20 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 62 75 int.distance.).const.{.return.bu
6b480 66 66 65 72 5b 70 6f 73 2d 64 69 73 74 61 6e 63 65 5d 3b 20 7d 0a 20 20 69 6e 74 20 61 76 61 69 ffer[pos-distance];.}...int.avai
6b4a0 6c 61 62 6c 65 5f 62 79 74 65 73 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 73 74 72 lable_bytes().const.{.return.str
6b4c0 65 61 6d 5f 70 6f 73 20 2d 20 70 6f 73 3b 20 7d 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 eam_pos.-.pos;.}...unsigned.long
6b4e0 20 6c 6f 6e 67 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 .long.data_position().const.{.re
6b500 74 75 72 6e 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 20 2b 20 70 6f 73 3b 20 7d 0a 20 turn.partial_data_pos.+.pos;.}..
6b520 20 62 6f 6f 6c 20 64 61 74 61 5f 66 69 6e 69 73 68 65 64 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 .bool.data_finished().const.{.re
6b540 74 75 72 6e 20 61 74 5f 73 74 72 65 61 6d 5f 65 6e 64 20 26 26 20 70 6f 73 20 3e 3d 20 73 74 72 turn.at_stream_end.&&.pos.>=.str
6b560 65 61 6d 5f 70 6f 73 3b 20 7d 0a 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 2a 20 70 74 72 eam_pos;.}...const.uint8_t.*.ptr
6b580 5f 74 6f 5f 63 75 72 72 65 6e 74 5f 70 6f 73 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e _to_current_pos().const.{.return
6b5a0 20 62 75 66 66 65 72 20 2b 20 70 6f 73 3b 20 7d 0a 0a 20 20 69 6e 74 20 74 72 75 65 5f 6d 61 74 .buffer.+.pos;.}....int.true_mat
6b5c0 63 68 5f 6c 65 6e 28 20 63 6f 6e 73 74 20 69 6e 74 20 69 6e 64 65 78 2c 20 63 6f 6e 73 74 20 69 ch_len(.const.int.index,.const.i
6b5e0 6e 74 20 64 69 73 74 61 6e 63 65 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f nt.distance.).const.....{.....co
6b600 6e 73 74 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 64 61 74 61 20 3d 20 62 75 66 66 65 nst.uint8_t.*.const.data.=.buffe
6b620 72 20 2b 20 70 6f 73 3b 0a 20 20 20 20 69 6e 74 20 69 20 3d 20 69 6e 64 65 78 3b 0a 20 20 20 20 r.+.pos;.....int.i.=.index;.....
6b640 63 6f 6e 73 74 20 69 6e 74 20 6c 65 6e 5f 6c 69 6d 69 74 20 3d 20 73 74 64 3a 3a 6d 69 6e 28 20 const.int.len_limit.=.std::min(.
6b660 61 76 61 69 6c 61 62 6c 65 5f 62 79 74 65 73 28 29 2c 20 28 69 6e 74 29 6d 61 78 5f 6d 61 74 63 available_bytes(),.(int)max_matc
6b680 68 5f 6c 65 6e 20 29 3b 0a 20 20 20 20 77 68 69 6c 65 28 20 69 20 3c 20 6c 65 6e 5f 6c 69 6d 69 h_len.);.....while(.i.<.len_limi
6b6a0 74 20 26 26 20 64 61 74 61 5b 69 2d 64 69 73 74 61 6e 63 65 5d 20 3d 3d 20 64 61 74 61 5b 69 5d t.&&.data[i-distance].==.data[i]
6b6c0 20 29 20 2b 2b 69 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 69 3b 0a 20 20 20 20 7d 0a 0a 20 20 76 .).++i;.....return.i;.....}....v
6b6e0 6f 69 64 20 6d 6f 76 65 5f 70 6f 73 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 2b 2b 63 oid.move_pos().....{.....if(.++c
6b700 79 63 6c 69 63 5f 70 6f 73 20 3e 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 63 79 yclic_pos.>.dictionary_size.).cy
6b720 63 6c 69 63 5f 70 6f 73 20 3d 20 30 3b 0a 20 20 20 20 69 66 28 20 2b 2b 70 6f 73 20 3e 3d 20 70 clic_pos.=.0;.....if(.++pos.>=.p
6b740 6f 73 5f 6c 69 6d 69 74 20 29 20 6e 6f 72 6d 61 6c 69 7a 65 5f 70 6f 73 28 29 3b 0a 20 20 20 20 os_limit.).normalize_pos();.....
6b760 7d 0a 0a 20 20 76 6f 69 64 20 72 65 73 65 74 28 29 3b 0a 20 20 7d 3b 0a 0a 0a 63 6c 61 73 73 20 }....void.reset();...};...class.
6b780 52 61 6e 67 65 5f 65 6e 63 6f 64 65 72 0a 20 20 7b 0a 20 20 65 6e 75 6d 20 7b 20 62 75 66 66 65 Range_encoder...{...enum.{.buffe
6b7a0 72 5f 73 69 7a 65 20 3d 20 36 35 35 33 36 20 7d 3b 0a 20 20 75 69 6e 74 36 34 5f 74 20 6c 6f 77 r_size.=.65536.};...uint64_t.low
6b7c0 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 61 72 74 69 61 6c 5f 6d ;...unsigned.long.long.partial_m
6b7e0 65 6d 62 65 72 5f 70 6f 73 3b 0a 20 20 75 69 6e 74 38 5f 74 20 2a 20 63 6f 6e 73 74 20 62 75 66 ember_pos;...uint8_t.*.const.buf
6b800 66 65 72 3b 09 2f 2f 20 6f 75 74 70 75 74 20 62 75 66 66 65 72 0a 20 20 69 6e 74 20 70 6f 73 3b fer;.//.output.buffer...int.pos;
6b820 09 09 09 2f 2f 20 63 75 72 72 65 6e 74 20 70 6f 73 20 69 6e 20 62 75 66 66 65 72 0a 20 20 75 69 ...//.current.pos.in.buffer...ui
6b840 6e 74 33 32 5f 74 20 72 61 6e 67 65 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 66 66 5f 63 6f 75 6e nt32_t.range;...unsigned.ff_coun
6b860 74 3b 0a 20 20 63 6f 6e 73 74 20 69 6e 74 20 6f 75 74 66 64 3b 09 09 2f 2f 20 6f 75 74 70 75 74 t;...const.int.outfd;..//.output
6b880 20 66 69 6c 65 20 64 65 73 63 72 69 70 74 6f 72 0a 20 20 75 69 6e 74 38 5f 74 20 63 61 63 68 65 .file.descriptor...uint8_t.cache
6b8a0 3b 0a 20 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 68 65 61 64 65 72 3b 0a 0a 20 20 76 6f 69 64 20 ;...Lzip_header.header;....void.
6b8c0 73 68 69 66 74 5f 6c 6f 77 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 6c 6f 77 20 3e 3e shift_low().....{.....if(.low.>>
6b8e0 20 32 34 20 21 3d 20 30 78 46 46 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 .24.!=.0xFF.).......{.......cons
6b900 74 20 62 6f 6f 6c 20 63 61 72 72 79 20 3d 20 6c 6f 77 20 3e 20 30 78 46 46 46 46 46 46 46 46 55 t.bool.carry.=.low.>.0xFFFFFFFFU
6b920 3b 0a 20 20 20 20 20 20 70 75 74 5f 62 79 74 65 28 20 63 61 63 68 65 20 2b 20 63 61 72 72 79 20 ;.......put_byte(.cache.+.carry.
6b940 29 3b 0a 20 20 20 20 20 20 66 6f 72 28 20 3b 20 66 66 5f 63 6f 75 6e 74 20 3e 20 30 3b 20 2d 2d );.......for(.;.ff_count.>.0;.--
6b960 66 66 5f 63 6f 75 6e 74 20 29 20 70 75 74 5f 62 79 74 65 28 20 30 78 46 46 20 2b 20 63 61 72 72 ff_count.).put_byte(.0xFF.+.carr
6b980 79 20 29 3b 0a 20 20 20 20 20 20 63 61 63 68 65 20 3d 20 6c 6f 77 20 3e 3e 20 32 34 3b 0a 20 20 y.);.......cache.=.low.>>.24;...
6b9a0 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 20 2b 2b 66 66 5f 63 6f 75 6e 74 3b 0a 20 20 20 20 6c ....}.....else.++ff_count;.....l
6b9c0 6f 77 20 3d 20 28 20 6c 6f 77 20 26 20 30 78 30 30 46 46 46 46 46 46 55 20 29 20 3c 3c 20 38 3b ow.=.(.low.&.0x00FFFFFFU.).<<.8;
6b9e0 0a 20 20 20 20 7d 0a 0a 20 20 52 61 6e 67 65 5f 65 6e 63 6f 64 65 72 28 20 63 6f 6e 73 74 20 52 .....}....Range_encoder(.const.R
6ba00 61 6e 67 65 5f 65 6e 63 6f 64 65 72 20 26 20 29 3b 09 2f 2f 20 64 65 63 6c 61 72 65 64 20 61 73 ange_encoder.&.);.//.declared.as
6ba20 20 70 72 69 76 61 74 65 0a 20 20 76 6f 69 64 20 6f 70 65 72 61 74 6f 72 3d 28 20 63 6f 6e 73 74 .private...void.operator=(.const
6ba40 20 52 61 6e 67 65 5f 65 6e 63 6f 64 65 72 20 26 20 29 3b 09 2f 2f 20 64 65 63 6c 61 72 65 64 20 .Range_encoder.&.);.//.declared.
6ba60 61 73 20 70 72 69 76 61 74 65 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 76 6f 69 64 20 72 65 73 65 74 as.private..public:...void.reset
6ba80 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 (.const.unsigned.dictionary_size
6baa0 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 6c 6f 77 20 3d 20 30 3b 0a 20 20 20 20 70 61 72 74 69 61 .).....{.....low.=.0;.....partia
6bac0 6c 5f 6d 65 6d 62 65 72 5f 70 6f 73 20 3d 20 30 3b 0a 20 20 20 20 70 6f 73 20 3d 20 30 3b 0a 20 l_member_pos.=.0;.....pos.=.0;..
6bae0 20 20 20 72 61 6e 67 65 20 3d 20 30 78 46 46 46 46 46 46 46 46 55 3b 0a 20 20 20 20 66 66 5f 63 ...range.=.0xFFFFFFFFU;.....ff_c
6bb00 6f 75 6e 74 20 3d 20 30 3b 0a 20 20 20 20 63 61 63 68 65 20 3d 20 30 3b 0a 20 20 20 20 68 65 61 ount.=.0;.....cache.=.0;.....hea
6bb20 64 65 72 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 20 64 69 63 74 69 6f 6e 61 72 79 5f der.dictionary_size(.dictionary_
6bb40 73 69 7a 65 20 29 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 size.);.....for(.int.i.=.0;.i.<.
6bb60 68 65 61 64 65 72 2e 73 69 7a 65 3b 20 2b 2b 69 20 29 20 70 75 74 5f 62 79 74 65 28 20 68 65 61 header.size;.++i.).put_byte(.hea
6bb80 64 65 72 2e 64 61 74 61 5b 69 5d 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 52 61 6e 67 65 5f 65 6e der.data[i].);.....}....Range_en
6bba0 63 6f 64 65 72 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 coder(.const.unsigned.dictionary
6bbc0 5f 73 69 7a 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6f 66 64 20 29 0a 20 20 20 20 3a 0a 20 20 20 _size,.const.int.ofd.).....:....
6bbe0 20 62 75 66 66 65 72 28 20 6e 65 77 20 75 69 6e 74 38 5f 74 5b 62 75 66 66 65 72 5f 73 69 7a 65 .buffer(.new.uint8_t[buffer_size
6bc00 5d 20 29 2c 20 6f 75 74 66 64 28 20 6f 66 64 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 68 65 61 64 ].),.outfd(.ofd.).....{.....head
6bc20 65 72 2e 73 65 74 5f 6d 61 67 69 63 28 29 3b 0a 20 20 20 20 72 65 73 65 74 28 20 64 69 63 74 69 er.set_magic();.....reset(.dicti
6bc40 6f 6e 61 72 79 5f 73 69 7a 65 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 7e 52 61 6e 67 65 5f 65 6e onary_size.);.....}....~Range_en
6bc60 63 6f 64 65 72 28 29 20 7b 20 64 65 6c 65 74 65 5b 5d 20 62 75 66 66 65 72 3b 20 7d 0a 0a 20 20 coder().{.delete[].buffer;.}....
6bc80 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 unsigned.long.long.member_positi
6bca0 6f 6e 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 70 61 72 74 69 61 6c 5f on().const.....{.return.partial_
6bcc0 6d 65 6d 62 65 72 5f 70 6f 73 20 2b 20 70 6f 73 20 2b 20 66 66 5f 63 6f 75 6e 74 3b 20 7d 0a 0a member_pos.+.pos.+.ff_count;.}..
6bce0 20 20 76 6f 69 64 20 66 6c 75 73 68 28 29 20 7b 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b ..void.flush().{.for(.int.i.=.0;
6bd00 20 69 20 3c 20 35 3b 20 2b 2b 69 20 29 20 73 68 69 66 74 5f 6c 6f 77 28 29 3b 20 7d 0a 20 20 76 .i.<.5;.++i.).shift_low();.}...v
6bd20 6f 69 64 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 0a 20 20 76 6f 69 64 20 70 75 74 5f 62 79 oid.flush_data();....void.put_by
6bd40 74 65 28 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 62 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 te(.const.uint8_t.b.).....{.....
6bd60 62 75 66 66 65 72 5b 70 6f 73 5d 20 3d 20 62 3b 0a 20 20 20 20 69 66 28 20 2b 2b 70 6f 73 20 3e buffer[pos].=.b;.....if(.++pos.>
6bd80 3d 20 62 75 66 66 65 72 5f 73 69 7a 65 20 29 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 20 20 =.buffer_size.).flush_data();...
6bda0 20 20 7d 0a 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 28 20 63 6f 6e 73 74 20 69 6e 74 20 73 79 ..}....void.encode(.const.int.sy
6bdc0 6d 62 6f 6c 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6e 75 6d 5f 62 69 74 73 20 29 0a 20 20 20 20 7b mbol,.const.int.num_bits.).....{
6bde0 0a 20 20 20 20 66 6f 72 28 20 75 6e 73 69 67 6e 65 64 20 6d 61 73 6b 20 3d 20 31 20 3c 3c 20 28 .....for(.unsigned.mask.=.1.<<.(
6be00 20 6e 75 6d 5f 62 69 74 73 20 2d 20 31 20 29 3b 20 6d 61 73 6b 20 3e 20 30 3b 20 6d 61 73 6b 20 .num_bits.-.1.);.mask.>.0;.mask.
6be20 3e 3e 3d 20 31 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 72 61 6e 67 65 20 3e 3e 3d 20 >>=.1.).......{.......range.>>=.
6be40 31 3b 0a 20 20 20 20 20 20 69 66 28 20 73 79 6d 62 6f 6c 20 26 20 6d 61 73 6b 20 29 20 6c 6f 77 1;.......if(.symbol.&.mask.).low
6be60 20 2b 3d 20 72 61 6e 67 65 3b 0a 20 20 20 20 20 20 69 66 28 20 72 61 6e 67 65 20 3c 3d 20 30 78 .+=.range;.......if(.range.<=.0x
6be80 30 30 46 46 46 46 46 46 55 20 29 20 7b 20 72 61 6e 67 65 20 3c 3c 3d 20 38 3b 20 73 68 69 66 74 00FFFFFFU.).{.range.<<=.8;.shift
6bea0 5f 6c 6f 77 28 29 3b 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 _low();.}.......}.....}....void.
6bec0 65 6e 63 6f 64 65 5f 62 69 74 28 20 42 69 74 5f 6d 6f 64 65 6c 20 26 20 62 6d 2c 20 63 6f 6e 73 encode_bit(.Bit_model.&.bm,.cons
6bee0 74 20 62 6f 6f 6c 20 62 69 74 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e t.bool.bit.).....{.....const.uin
6bf00 74 33 32 5f 74 20 62 6f 75 6e 64 20 3d 20 28 20 72 61 6e 67 65 20 3e 3e 20 62 69 74 5f 6d 6f 64 t32_t.bound.=.(.range.>>.bit_mod
6bf20 65 6c 5f 74 6f 74 61 6c 5f 62 69 74 73 20 29 20 2a 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 el_total_bits.).*.bm.probability
6bf40 3b 0a 20 20 20 20 69 66 28 20 21 62 69 74 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 72 ;.....if(.!bit.).......{.......r
6bf60 61 6e 67 65 20 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 ange.=.bound;.......bm.probabili
6bf80 74 79 20 2b 3d 0a 20 20 20 20 20 20 20 20 28 20 62 69 74 5f 6d 6f 64 65 6c 5f 74 6f 74 61 6c 20 ty.+=.........(.bit_model_total.
6bfa0 2d 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 29 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 6c 5f -.bm.probability.).>>.bit_model_
6bfc0 6d 6f 76 65 5f 62 69 74 73 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 move_bits;.......}.....else.....
6bfe0 20 20 7b 0a 20 20 20 20 20 20 6c 6f 77 20 2b 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 72 61 ..{.......low.+=.bound;.......ra
6c000 6e 67 65 20 2d 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 nge.-=.bound;.......bm.probabili
6c020 74 79 20 2d 3d 20 62 6d 2e 70 72 6f 62 61 62 69 6c 69 74 79 20 3e 3e 20 62 69 74 5f 6d 6f 64 65 ty.-=.bm.probability.>>.bit_mode
6c040 6c 5f 6d 6f 76 65 5f 62 69 74 73 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 72 61 6e l_move_bits;.......}.....if(.ran
6c060 67 65 20 3c 3d 20 30 78 30 30 46 46 46 46 46 46 55 20 29 20 7b 20 72 61 6e 67 65 20 3c 3c 3d 20 ge.<=.0x00FFFFFFU.).{.range.<<=.
6c080 38 3b 20 73 68 69 66 74 5f 6c 6f 77 28 29 3b 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 8;.shift_low();.}.....}....void.
6c0a0 65 6e 63 6f 64 65 5f 74 72 65 65 33 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c 20 63 6f encode_tree3(.Bit_model.bm[],.co
6c0c0 6e 73 74 20 69 6e 74 20 73 79 6d 62 6f 6c 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 62 6f 6f 6c 20 nst.int.symbol.).....{.....bool.
6c0e0 62 69 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3e 3e 20 32 20 29 20 26 20 31 3b 0a 20 20 20 20 65 bit.=.(.symbol.>>.2.).&.1;.....e
6c100 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 31 5d 2c 20 62 69 74 20 29 3b 0a 20 20 20 20 69 6e 74 ncode_bit(.bm[1],.bit.);.....int
6c120 20 6d 6f 64 65 6c 20 3d 20 32 20 7c 20 62 69 74 3b 0a 20 20 20 20 62 69 74 20 3d 20 28 20 73 79 .model.=.2.|.bit;.....bit.=.(.sy
6c140 6d 62 6f 6c 20 3e 3e 20 31 20 29 20 26 20 31 3b 0a 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 mbol.>>.1.).&.1;.....encode_bit(
6c160 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 62 69 74 20 29 3b 20 6d 6f 64 65 6c 20 3c 3c 3d 20 31 3b 20 .bm[model],.bit.);.model.<<=.1;.
6c180 6d 6f 64 65 6c 20 7c 3d 20 62 69 74 3b 0a 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d model.|=.bit;.....encode_bit(.bm
6c1a0 5b 6d 6f 64 65 6c 5d 2c 20 73 79 6d 62 6f 6c 20 26 20 31 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 [model],.symbol.&.1.);.....}....
6c1c0 76 6f 69 64 20 65 6e 63 6f 64 65 5f 74 72 65 65 36 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b void.encode_tree6(.Bit_model.bm[
6c1e0 5d 2c 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c 20 29 0a 20 20 20 20 7b ],.const.unsigned.symbol.).....{
6c200 0a 20 20 20 20 62 6f 6f 6c 20 62 69 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3e 3e 20 35 20 29 20 .....bool.bit.=.(.symbol.>>.5.).
6c220 26 20 31 3b 0a 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 31 5d 2c 20 62 69 74 20 &.1;.....encode_bit(.bm[1],.bit.
6c240 29 3b 0a 20 20 20 20 69 6e 74 20 6d 6f 64 65 6c 20 3d 20 32 20 7c 20 62 69 74 3b 0a 20 20 20 20 );.....int.model.=.2.|.bit;.....
6c260 62 69 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3e 3e 20 34 20 29 20 26 20 31 3b 0a 20 20 20 20 65 bit.=.(.symbol.>>.4.).&.1;.....e
6c280 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 62 69 74 20 29 3b 20 6d 6f 64 ncode_bit(.bm[model],.bit.);.mod
6c2a0 65 6c 20 3c 3c 3d 20 31 3b 20 6d 6f 64 65 6c 20 7c 3d 20 62 69 74 3b 0a 20 20 20 20 62 69 74 20 el.<<=.1;.model.|=.bit;.....bit.
6c2c0 3d 20 28 20 73 79 6d 62 6f 6c 20 3e 3e 20 33 20 29 20 26 20 31 3b 0a 20 20 20 20 65 6e 63 6f 64 =.(.symbol.>>.3.).&.1;.....encod
6c2e0 65 5f 62 69 74 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 62 69 74 20 29 3b 20 6d 6f 64 65 6c 20 3c e_bit(.bm[model],.bit.);.model.<
6c300 3c 3d 20 31 3b 20 6d 6f 64 65 6c 20 7c 3d 20 62 69 74 3b 0a 20 20 20 20 62 69 74 20 3d 20 28 20 <=.1;.model.|=.bit;.....bit.=.(.
6c320 73 79 6d 62 6f 6c 20 3e 3e 20 32 20 29 20 26 20 31 3b 0a 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 symbol.>>.2.).&.1;.....encode_bi
6c340 74 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 62 69 74 20 29 3b 20 6d 6f 64 65 6c 20 3c 3c 3d 20 31 t(.bm[model],.bit.);.model.<<=.1
6c360 3b 20 6d 6f 64 65 6c 20 7c 3d 20 62 69 74 3b 0a 20 20 20 20 62 69 74 20 3d 20 28 20 73 79 6d 62 ;.model.|=.bit;.....bit.=.(.symb
6c380 6f 6c 20 3e 3e 20 31 20 29 20 26 20 31 3b 0a 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 ol.>>.1.).&.1;.....encode_bit(.b
6c3a0 6d 5b 6d 6f 64 65 6c 5d 2c 20 62 69 74 20 29 3b 20 6d 6f 64 65 6c 20 3c 3c 3d 20 31 3b 20 6d 6f m[model],.bit.);.model.<<=.1;.mo
6c3c0 64 65 6c 20 7c 3d 20 62 69 74 3b 0a 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 6d del.|=.bit;.....encode_bit(.bm[m
6c3e0 6f 64 65 6c 5d 2c 20 73 79 6d 62 6f 6c 20 26 20 31 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 76 6f odel],.symbol.&.1.);.....}....vo
6c400 69 64 20 65 6e 63 6f 64 65 5f 74 72 65 65 38 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c id.encode_tree8(.Bit_model.bm[],
6c420 20 63 6f 6e 73 74 20 69 6e 74 20 73 79 6d 62 6f 6c 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 6e .const.int.symbol.).....{.....in
6c440 74 20 6d 6f 64 65 6c 20 3d 20 31 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 37 3b t.model.=.1;.....for(.int.i.=.7;
6c460 20 69 20 3e 3d 20 30 3b 20 2d 2d 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e .i.>=.0;.--i.).......{.......con
6c480 73 74 20 62 6f 6f 6c 20 62 69 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3e 3e 20 69 20 29 20 26 20 st.bool.bit.=.(.symbol.>>.i.).&.
6c4a0 31 3b 0a 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 1;.......encode_bit(.bm[model],.
6c4c0 62 69 74 20 29 3b 0a 20 20 20 20 20 20 6d 6f 64 65 6c 20 3c 3c 3d 20 31 3b 20 6d 6f 64 65 6c 20 bit.);.......model.<<=.1;.model.
6c4e0 7c 3d 20 62 69 74 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 65 6e |=.bit;.......}.....}....void.en
6c500 63 6f 64 65 5f 74 72 65 65 5f 72 65 76 65 72 73 65 64 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d code_tree_reversed(.Bit_model.bm
6c520 5b 5d 2c 20 69 6e 74 20 73 79 6d 62 6f 6c 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6e 75 6d 5f 62 69 [],.int.symbol,.const.int.num_bi
6c540 74 73 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 6e 74 20 6d 6f 64 65 6c 20 3d 20 31 3b 0a 20 20 ts.).....{.....int.model.=.1;...
6c560 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 6e 75 6d 5f 62 69 74 73 3b 20 69 20 3e 20 30 3b 20 ..for(.int.i.=.num_bits;.i.>.0;.
6c580 2d 2d 69 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 62 --i.).......{.......const.bool.b
6c5a0 69 74 20 3d 20 73 79 6d 62 6f 6c 20 26 20 31 3b 0a 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3e 3e it.=.symbol.&.1;.......symbol.>>
6c5c0 3d 20 31 3b 0a 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 6d 6f 64 65 6c 5d =.1;.......encode_bit(.bm[model]
6c5e0 2c 20 62 69 74 20 29 3b 0a 20 20 20 20 20 20 6d 6f 64 65 6c 20 3c 3c 3d 20 31 3b 20 6d 6f 64 65 ,.bit.);.......model.<<=.1;.mode
6c600 6c 20 7c 3d 20 62 69 74 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 l.|=.bit;.......}.....}....void.
6c620 65 6e 63 6f 64 65 5f 6d 61 74 63 68 65 64 28 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 2c 20 encode_matched(.Bit_model.bm[],.
6c640 75 6e 73 69 67 6e 65 64 20 73 79 6d 62 6f 6c 2c 20 75 6e 73 69 67 6e 65 64 20 6d 61 74 63 68 5f unsigned.symbol,.unsigned.match_
6c660 62 79 74 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 6d 61 73 6b 20 3d byte.).....{.....unsigned.mask.=
6c680 20 30 78 31 30 30 3b 0a 20 20 20 20 73 79 6d 62 6f 6c 20 7c 3d 20 6d 61 73 6b 3b 0a 20 20 20 20 .0x100;.....symbol.|=.mask;.....
6c6a0 77 68 69 6c 65 28 20 74 72 75 65 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 while(.true.).......{.......cons
6c6c0 74 20 75 6e 73 69 67 6e 65 64 20 6d 61 74 63 68 5f 62 69 74 20 3d 20 28 20 6d 61 74 63 68 5f 62 t.unsigned.match_bit.=.(.match_b
6c6e0 79 74 65 20 3c 3c 3d 20 31 20 29 20 26 20 6d 61 73 6b 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 yte.<<=.1.).&.mask;.......const.
6c700 62 6f 6f 6c 20 62 69 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3c 3c 3d 20 31 20 29 20 26 20 30 78 bool.bit.=.(.symbol.<<=.1.).&.0x
6c720 31 30 30 3b 0a 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 28 73 79 6d 62 6f 100;.......encode_bit(.bm[(symbo
6c740 6c 3e 3e 39 29 2b 6d 61 74 63 68 5f 62 69 74 2b 6d 61 73 6b 5d 2c 20 62 69 74 20 29 3b 0a 20 20 l>>9)+match_bit+mask],.bit.);...
6c760 20 20 20 20 69 66 28 20 73 79 6d 62 6f 6c 20 3e 3d 20 30 78 31 30 30 30 30 20 29 20 62 72 65 61 ....if(.symbol.>=.0x10000.).brea
6c780 6b 3b 0a 20 20 20 20 20 20 6d 61 73 6b 20 26 3d 20 7e 28 6d 61 74 63 68 5f 62 69 74 20 5e 20 73 k;.......mask.&=.~(match_bit.^.s
6c7a0 79 6d 62 6f 6c 29 3b 09 2f 2f 20 69 66 28 20 6d 61 74 63 68 5f 62 69 74 20 21 3d 20 62 69 74 20 ymbol);.//.if(.match_bit.!=.bit.
6c7c0 29 20 6d 61 73 6b 20 3d 20 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 ).mask.=.0;.......}.....}....voi
6c7e0 64 20 65 6e 63 6f 64 65 5f 6c 65 6e 28 20 4c 65 6e 5f 6d 6f 64 65 6c 20 26 20 6c 6d 2c 20 69 6e d.encode_len(.Len_model.&.lm,.in
6c800 74 20 73 79 6d 62 6f 6c 2c 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 5f 73 74 61 74 65 20 29 0a t.symbol,.const.int.pos_state.).
6c820 20 20 20 20 7b 0a 20 20 20 20 62 6f 6f 6c 20 62 69 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 2d 3d ....{.....bool.bit.=.(.symbol.-=
6c840 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 20 3e 3d 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 .min_match_len.).>=.len_low_symb
6c860 6f 6c 73 3b 0a 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 20 6c 6d 2e 63 68 6f 69 63 65 31 2c ols;.....encode_bit(.lm.choice1,
6c880 20 62 69 74 20 29 3b 0a 20 20 20 20 69 66 28 20 21 62 69 74 20 29 0a 20 20 20 20 20 20 65 6e 63 .bit.);.....if(.!bit.).......enc
6c8a0 6f 64 65 5f 74 72 65 65 33 28 20 6c 6d 2e 62 6d 5f 6c 6f 77 5b 70 6f 73 5f 73 74 61 74 65 5d 2c ode_tree3(.lm.bm_low[pos_state],
6c8c0 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 .symbol.);.....else.......{.....
6c8e0 20 20 62 69 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 2d 3d 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 ..bit.=.(.symbol.-=.len_low_symb
6c900 6f 6c 73 20 29 20 3e 3d 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 3b 0a 20 20 20 20 20 20 ols.).>=.len_mid_symbols;.......
6c920 65 6e 63 6f 64 65 5f 62 69 74 28 20 6c 6d 2e 63 68 6f 69 63 65 32 2c 20 62 69 74 20 29 3b 0a 20 encode_bit(.lm.choice2,.bit.);..
6c940 20 20 20 20 20 69 66 28 20 21 62 69 74 20 29 0a 20 20 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 74 .....if(.!bit.).........encode_t
6c960 72 65 65 33 28 20 6c 6d 2e 62 6d 5f 6d 69 64 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 73 79 6d 62 ree3(.lm.bm_mid[pos_state],.symb
6c980 6f 6c 20 29 3b 0a 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 65 6e 63 6f 64 65 5f ol.);.......else.........encode_
6c9a0 74 72 65 65 38 28 20 6c 6d 2e 62 6d 5f 68 69 67 68 2c 20 73 79 6d 62 6f 6c 20 2d 20 6c 65 6e 5f tree8(.lm.bm_high,.symbol.-.len_
6c9c0 6d 69 64 5f 73 79 6d 62 6f 6c 73 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 7d mid_symbols.);.......}.....}...}
6c9e0 3b 0a 0a 0a 63 6c 61 73 73 20 4c 5a 5f 65 6e 63 6f 64 65 72 5f 62 61 73 65 20 3a 20 70 75 62 6c ;...class.LZ_encoder_base.:.publ
6ca00 69 63 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 0a 20 20 7b 0a 70 72 6f 74 65 63 74 65 ic.Matchfinder_base...{.protecte
6ca20 64 3a 0a 20 20 65 6e 75 6d 20 7b 20 6d 61 78 5f 6d 61 72 6b 65 72 5f 73 69 7a 65 20 3d 20 31 36 d:...enum.{.max_marker_size.=.16
6ca40 2c 0a 20 20 20 20 20 20 20 20 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 20 3d 20 34 ,..........num_rep_distances.=.4
6ca60 20 7d 3b 09 2f 2f 20 6d 75 73 74 20 62 65 20 34 0a 0a 20 20 75 69 6e 74 33 32 5f 74 20 63 72 63 .};.//.must.be.4....uint32_t.crc
6ca80 5f 3b 0a 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 31 3c 3c 6c 69 _;....Bit_model.bm_literal[1<<li
6caa0 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 74 73 5d 5b 30 78 33 30 30 5d 3b 0a 20 20 42 69 teral_context_bits][0x300];...Bi
6cac0 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6d 61 74 63 68 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 5b t_model.bm_match[State::states][
6cae0 70 6f 73 5f 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 5b pos_states];...Bit_model.bm_rep[
6cb00 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 State::states];...Bit_model.bm_r
6cb20 65 70 30 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 ep0[State::states];...Bit_model.
6cb40 62 6d 5f 72 65 70 31 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f bm_rep1[State::states];...Bit_mo
6cb60 64 65 6c 20 62 6d 5f 72 65 70 32 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 del.bm_rep2[State::states];...Bi
6cb80 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6c 65 6e 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 5b 70 6f t_model.bm_len[State::states][po
6cba0 73 5f 73 74 61 74 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 64 69 73 5f 73 6c s_states];...Bit_model.bm_dis_sl
6cbc0 6f 74 5b 6c 65 6e 5f 73 74 61 74 65 73 5d 5b 31 3c 3c 64 69 73 5f 73 6c 6f 74 5f 62 69 74 73 5d ot[len_states][1<<dis_slot_bits]
6cbe0 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 64 69 73 5b 6d 6f 64 65 6c 65 64 5f 64 69 73 ;...Bit_model.bm_dis[modeled_dis
6cc00 74 61 6e 63 65 73 2d 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 2b 31 5d 3b 0a 20 20 42 69 74 5f 6d tances-end_dis_model+1];...Bit_m
6cc20 6f 64 65 6c 20 62 6d 5f 61 6c 69 67 6e 5b 64 69 73 5f 61 6c 69 67 6e 5f 73 69 7a 65 5d 3b 0a 20 odel.bm_align[dis_align_size];..
6cc40 20 4c 65 6e 5f 6d 6f 64 65 6c 20 6d 61 74 63 68 5f 6c 65 6e 5f 6d 6f 64 65 6c 3b 0a 20 20 4c 65 .Len_model.match_len_model;...Le
6cc60 6e 5f 6d 6f 64 65 6c 20 72 65 70 5f 6c 65 6e 5f 6d 6f 64 65 6c 3b 0a 20 20 52 61 6e 67 65 5f 65 n_model.rep_len_model;...Range_e
6cc80 6e 63 6f 64 65 72 20 72 65 6e 63 3b 0a 0a 20 20 4c 5a 5f 65 6e 63 6f 64 65 72 5f 62 61 73 65 28 ncoder.renc;....LZ_encoder_base(
6cca0 20 63 6f 6e 73 74 20 69 6e 74 20 62 65 66 6f 72 65 5f 73 69 7a 65 2c 20 63 6f 6e 73 74 20 69 6e .const.int.before_size,.const.in
6ccc0 74 20 64 69 63 74 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.dict_size,....................
6cce0 63 6f 6e 73 74 20 69 6e 74 20 61 66 74 65 72 5f 73 69 7a 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 const.int.after_size,.const.int.
6cd00 64 69 63 74 5f 66 61 63 74 6f 72 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dict_factor,....................
6cd20 63 6f 6e 73 74 20 69 6e 74 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 33 2c 0a const.int.num_prev_positions23,.
6cd40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f 73 ...................const.int.pos
6cd60 5f 61 72 72 61 79 5f 66 61 63 74 6f 72 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 _array_factor,..................
6cd80 20 20 63 6f 6e 73 74 20 69 6e 74 20 69 66 64 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6f 75 74 66 64 ..const.int.ifd,.const.int.outfd
6cda0 20 29 0a 20 20 20 20 3a 0a 20 20 20 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 28 20 62 .).....:.....Matchfinder_base(.b
6cdc0 65 66 6f 72 65 5f 73 69 7a 65 2c 20 64 69 63 74 5f 73 69 7a 65 2c 20 61 66 74 65 72 5f 73 69 7a efore_size,.dict_size,.after_siz
6cde0 65 2c 20 64 69 63 74 5f 66 61 63 74 6f 72 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e,.dict_factor,.................
6ce00 20 20 20 20 20 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 33 2c 20 70 6f 73 5f ......num_prev_positions23,.pos_
6ce20 61 72 72 61 79 5f 66 61 63 74 6f 72 2c 20 69 66 64 20 29 2c 0a 20 20 20 20 63 72 63 5f 28 20 30 array_factor,.ifd.),.....crc_(.0
6ce40 78 46 46 46 46 46 46 46 46 55 20 29 2c 0a 20 20 20 20 72 65 6e 63 28 20 64 69 63 74 69 6f 6e 61 xFFFFFFFFU.),.....renc(.dictiona
6ce60 72 79 5f 73 69 7a 65 2c 20 6f 75 74 66 64 20 29 0a 20 20 20 20 7b 7d 0a 0a 20 20 75 6e 73 69 67 ry_size,.outfd.).....{}....unsig
6ce80 6e 65 64 20 63 72 63 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 63 72 63 5f 20 5e 20 ned.crc().const.{.return.crc_.^.
6cea0 30 78 46 46 46 46 46 46 46 46 55 3b 20 7d 0a 0a 20 20 69 6e 74 20 70 72 69 63 65 5f 6c 69 74 65 0xFFFFFFFFU;.}....int.price_lite
6cec0 72 61 6c 28 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 70 72 65 76 5f 62 79 74 65 2c 20 63 6f ral(.const.uint8_t.prev_byte,.co
6cee0 6e 73 74 20 75 69 6e 74 38 5f 74 20 73 79 6d 62 6f 6c 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b nst.uint8_t.symbol.).const.....{
6cf00 20 72 65 74 75 72 6e 20 70 72 69 63 65 5f 73 79 6d 62 6f 6c 38 28 20 62 6d 5f 6c 69 74 65 72 61 .return.price_symbol8(.bm_litera
6cf20 6c 5b 67 65 74 5f 6c 69 74 5f 73 74 61 74 65 28 70 72 65 76 5f 62 79 74 65 29 5d 2c 20 73 79 6d l[get_lit_state(prev_byte)],.sym
6cf40 62 6f 6c 20 29 3b 20 7d 0a 0a 20 20 69 6e 74 20 70 72 69 63 65 5f 6d 61 74 63 68 65 64 28 20 63 bol.);.}....int.price_matched(.c
6cf60 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 70 72 65 76 5f 62 79 74 65 2c 20 63 6f 6e 73 74 20 75 69 onst.uint8_t.prev_byte,.const.ui
6cf80 6e 74 38 5f 74 20 73 79 6d 62 6f 6c 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nt8_t.symbol,...................
6cfa0 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 6d 61 74 63 68 5f 62 79 74 65 20 29 20 63 6f ...const.uint8_t.match_byte.).co
6cfc0 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 3a 3a 70 72 69 63 65 5f 6d 61 74 63 68 65 64 nst.....{.return.::price_matched
6cfe0 28 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 67 65 74 5f 6c 69 74 5f 73 74 61 74 65 28 70 72 65 76 5f (.bm_literal[get_lit_state(prev_
6d000 62 79 74 65 29 5d 2c 20 73 79 6d 62 6f 6c 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 byte)],.symbol,.................
6d020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 63 68 5f 62 79 74 65 20 29 3b 20 7d 0a 0a 20 ..............match_byte.);.}...
6d040 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 6c 69 74 65 72 61 6c 28 20 63 6f 6e 73 74 20 75 69 6e 74 .void.encode_literal(.const.uint
6d060 38 5f 74 20 70 72 65 76 5f 62 79 74 65 2c 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 73 79 6d 8_t.prev_byte,.const.uint8_t.sym
6d080 62 6f 6c 20 29 0a 20 20 20 20 7b 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 74 72 65 65 38 28 20 62 bol.).....{.renc.encode_tree8(.b
6d0a0 6d 5f 6c 69 74 65 72 61 6c 5b 67 65 74 5f 6c 69 74 5f 73 74 61 74 65 28 70 72 65 76 5f 62 79 74 m_literal[get_lit_state(prev_byt
6d0c0 65 29 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 20 7d 0a 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f e)],.symbol.);.}....void.encode_
6d0e0 6d 61 74 63 68 65 64 28 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 70 72 65 76 5f 62 79 74 65 matched(.const.uint8_t.prev_byte
6d100 2c 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 73 79 6d 62 6f 6c 2c 0a 20 20 20 20 20 20 20 20 ,.const.uint8_t.symbol,.........
6d120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 6d 61 74 ...............const.uint8_t.mat
6d140 63 68 5f 62 79 74 65 20 29 0a 20 20 20 20 7b 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 6d 61 74 63 ch_byte.).....{.renc.encode_matc
6d160 68 65 64 28 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 67 65 74 5f 6c 69 74 5f 73 74 61 74 65 28 70 72 hed(.bm_literal[get_lit_state(pr
6d180 65 76 5f 62 79 74 65 29 5d 2c 20 73 79 6d 62 6f 6c 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ev_byte)],.symbol,..............
6d1a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 63 68 5f 62 79 74 65 20 29 3b 20 7d 0a 0a 20 ..............match_byte.);.}...
6d1c0 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 70 61 69 72 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 .void.encode_pair(.const.unsigne
6d1e0 64 20 64 69 73 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6c 65 6e 2c 20 63 6f 6e 73 74 20 69 6e 74 20 d.dis,.const.int.len,.const.int.
6d200 70 6f 73 5f 73 74 61 74 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 pos_state.).....{.....renc.encod
6d220 65 5f 6c 65 6e 28 20 6d 61 74 63 68 5f 6c 65 6e 5f 6d 6f 64 65 6c 2c 20 6c 65 6e 2c 20 70 6f 73 e_len(.match_len_model,.len,.pos
6d240 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 73 _state.);.....const.unsigned.dis
6d260 5f 73 6c 6f 74 20 3d 20 67 65 74 5f 73 6c 6f 74 28 20 64 69 73 20 29 3b 0a 20 20 20 20 72 65 6e _slot.=.get_slot(.dis.);.....ren
6d280 63 2e 65 6e 63 6f 64 65 5f 74 72 65 65 36 28 20 62 6d 5f 64 69 73 5f 73 6c 6f 74 5b 67 65 74 5f c.encode_tree6(.bm_dis_slot[get_
6d2a0 6c 65 6e 5f 73 74 61 74 65 28 6c 65 6e 29 5d 2c 20 64 69 73 5f 73 6c 6f 74 20 29 3b 0a 0a 20 20 len_state(len)],.dis_slot.);....
6d2c0 20 20 69 66 28 20 64 69 73 5f 73 6c 6f 74 20 3e 3d 20 73 74 61 72 74 5f 64 69 73 5f 6d 6f 64 65 ..if(.dis_slot.>=.start_dis_mode
6d2e0 6c 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 72 65 l.).......{.......const.int.dire
6d300 63 74 5f 62 69 74 73 20 3d 20 28 20 64 69 73 5f 73 6c 6f 74 20 3e 3e 20 31 20 29 20 2d 20 31 3b ct_bits.=.(.dis_slot.>>.1.).-.1;
6d320 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 62 61 73 65 20 3d 20 28 20 32 .......const.unsigned.base.=.(.2
6d340 20 7c 20 28 20 64 69 73 5f 73 6c 6f 74 20 26 20 31 20 29 20 29 20 3c 3c 20 64 69 72 65 63 74 5f .|.(.dis_slot.&.1.).).<<.direct_
6d360 62 69 74 73 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 72 65 63 bits;.......const.unsigned.direc
6d380 74 5f 64 69 73 20 3d 20 64 69 73 20 2d 20 62 61 73 65 3b 0a 0a 20 20 20 20 20 20 69 66 28 20 64 t_dis.=.dis.-.base;........if(.d
6d3a0 69 73 5f 73 6c 6f 74 20 3c 20 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 20 29 0a 20 20 20 20 20 20 is_slot.<.end_dis_model.).......
6d3c0 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 74 72 65 65 5f 72 65 76 65 72 73 65 64 28 20 62 6d 5f ..renc.encode_tree_reversed(.bm_
6d3e0 64 69 73 20 2b 20 28 20 62 61 73 65 20 2d 20 64 69 73 5f 73 6c 6f 74 20 29 2c 0a 20 20 20 20 20 dis.+.(.base.-.dis_slot.),......
6d400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 ..............................di
6d420 72 65 63 74 5f 64 69 73 2c 20 64 69 72 65 63 74 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 20 20 65 rect_dis,.direct_bits.);.......e
6d440 6c 73 65 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 lse.........{.........renc.encod
6d460 65 28 20 64 69 72 65 63 74 5f 64 69 73 20 3e 3e 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 2c e(.direct_dis.>>.dis_align_bits,
6d480 20 64 69 72 65 63 74 5f 62 69 74 73 20 2d 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 20 29 3b .direct_bits.-.dis_align_bits.);
6d4a0 0a 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 74 72 65 65 5f 72 65 76 65 72 73 .........renc.encode_tree_revers
6d4c0 65 64 28 20 62 6d 5f 61 6c 69 67 6e 2c 20 64 69 72 65 63 74 5f 64 69 73 2c 20 64 69 73 5f 61 6c ed(.bm_align,.direct_dis,.dis_al
6d4e0 69 67 6e 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 ign_bits.);.........}.......}...
6d500 20 20 7d 0a 0a 20 20 76 6f 69 64 20 66 75 6c 6c 5f 66 6c 75 73 68 28 20 63 6f 6e 73 74 20 53 74 ..}....void.full_flush(.const.St
6d520 61 74 65 20 73 74 61 74 65 20 29 3b 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 76 69 72 74 75 61 6c 20 ate.state.);..public:...virtual.
6d540 7e 4c 5a 5f 65 6e 63 6f 64 65 72 5f 62 61 73 65 28 29 20 7b 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 ~LZ_encoder_base().{}....unsigne
6d560 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 20 63 6f d.long.long.member_position().co
6d580 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 72 65 6e 63 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f nst.{.return.renc.member_positio
6d5a0 6e 28 29 3b 20 7d 0a 20 20 76 69 72 74 75 61 6c 20 76 6f 69 64 20 72 65 73 65 74 28 29 3b 0a 0a n();.}...virtual.void.reset();..
6d5c0 20 20 76 69 72 74 75 61 6c 20 62 6f 6f 6c 20 65 6e 63 6f 64 65 5f 6d 65 6d 62 65 72 28 20 63 6f ..virtual.bool.encode_member(.co
6d5e0 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 nst.unsigned.long.long.member_si
6d600 7a 65 20 29 20 3d 20 30 3b 0a 20 20 7d 3b 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ze.).=.0;...};..................
6d620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6da00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6da20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6da40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6da60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6da80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6daa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6db00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6db20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6db40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6db60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6db80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dc00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dc20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dc40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dc60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dc80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dd00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dd20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6ddc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6de00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6de20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6de40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6de60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6de80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6df00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6df20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6df40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6df60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6df80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dfa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dfc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6dfe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................