aboutsummaryrefslogtreecommitdiff
path: root/lzip-1.22-rc2.tar
blob: fd188135fc0666f3154631eca7112bfbe1fcbf05 (plain)
ofshex dumpascii
0000 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 41 55 54 48 4f 52 53 00 00 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/AUTHORS...........
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 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
0080 30 30 30 30 35 35 36 00 31 33 35 36 33 33 35 35 37 32 35 00 30 30 31 32 37 33 32 00 30 00 00 00 0000556.13563355725.0012732.0...
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 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
0220 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
0240 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
0260 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
0280 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
02a0 6d 29 2c 20 41 6e 64 72 65 79 20 4d 61 72 6b 6f 76 20 28 66 6f 72 20 74 68 65 0a 64 65 66 69 6e m),.Andrey.Markov.(for.the.defin
02c0 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..
02e0 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
0300 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.
0320 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
0340 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.
0360 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)....................
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 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 43 4f 50 59 49 4e 47 00 00 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/COPYING...........
0420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0460 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
0480 30 30 34 33 31 35 31 00 31 32 33 34 37 34 32 37 34 35 34 00 30 30 31 32 37 31 31 00 30 00 00 00 0043151.12347427454.0012711.0...
04a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
04c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
04e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0500 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...................
0520 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...................
0540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
05a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
05c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
05e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0600 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.
0620 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..................
0640 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
0660 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
0680 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e 2c 0a 20 35 31 20 46 72 61 6e 6b 6c are.Foundation,.Inc.,..51.Frankl
06a0 69 6e 20 53 74 72 65 65 74 2c 20 46 69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73 74 6f 6e 2c 20 in.Street,.Fifth.Floor,.Boston,.
06c0 4d 41 20 30 32 31 31 30 2d 31 33 30 31 20 55 53 41 0a 20 45 76 65 72 79 6f 6e 65 20 69 73 20 70 MA.02110-1301.USA..Everyone.is.p
06e0 65 72 6d 69 74 74 65 64 20 74 6f 20 63 6f 70 79 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 ermitted.to.copy.and.distribute.
0700 76 65 72 62 61 74 69 6d 20 63 6f 70 69 65 73 0a 20 6f 66 20 74 68 69 73 20 6c 69 63 65 6e 73 65 verbatim.copies..of.this.license
0720 20 64 6f 63 75 6d 65 6e 74 2c 20 62 75 74 20 63 68 61 6e 67 69 6e 67 20 69 74 20 69 73 20 6e 6f .document,.but.changing.it.is.no
0740 74 20 61 6c 6c 6f 77 65 64 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.allowed.......................
0760 20 20 20 20 20 20 20 20 50 72 65 61 6d 62 6c 65 0a 0a 20 20 54 68 65 20 6c 69 63 65 6e 73 65 73 ........Preamble....The.licenses
0780 20 66 6f 72 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 .for.most.software.are.designed.
07a0 74 6f 20 74 61 6b 65 20 61 77 61 79 20 79 6f 75 72 0a 66 72 65 65 64 6f 6d 20 74 6f 20 73 68 61 to.take.away.your.freedom.to.sha
07c0 72 65 20 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 re.and.change.it...By.contrast,.
07e0 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 0a 4c 69 63 65 6e 73 65 20 69 the.GNU.General.Public.License.i
0800 73 20 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 s.intended.to.guarantee.your.fre
0820 65 64 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 0a 73 6f edom.to.share.and.change.free.so
0840 66 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 ftware--to.make.sure.the.softwar
0860 65 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 e.is.free.for.all.its.users...Th
0880 69 73 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 is.General.Public.License.applie
08a0 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 0a 46 s.to.most.of.the.Free.Software.F
08c0 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 20 oundation's.software.and.to.any.
08e0 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 6d other.program.whose.authors.comm
0900 69 74 20 74 6f 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 72 65 it.to.using.it...(Some.other.Fre
0920 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 20 69 e.Software.Foundation.software.i
0940 73 20 63 6f 76 65 72 65 64 20 62 79 0a 74 68 65 20 47 4e 55 20 4c 65 73 73 65 72 20 47 65 6e 65 s.covered.by.the.GNU.Lesser.Gene
0960 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 20 59 6f ral.Public.License.instead.)..Yo
0980 75 20 63 61 6e 20 61 70 70 6c 79 20 69 74 20 74 6f 0a 79 6f 75 72 20 70 72 6f 67 72 61 6d 73 2c u.can.apply.it.to.your.programs,
09a0 20 74 6f 6f 2e 0a 0a 20 20 57 68 65 6e 20 77 65 20 73 70 65 61 6b 20 6f 66 20 66 72 65 65 20 73 .too.....When.we.speak.of.free.s
09c0 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 74 6f 20 66 72 65 oftware,.we.are.referring.to.fre
09e0 65 64 6f 6d 2c 20 6e 6f 74 0a 70 72 69 63 65 2e 20 20 4f 75 72 20 47 65 6e 65 72 61 6c 20 50 75 edom,.not.price...Our.General.Pu
0a00 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 64 20 74 6f 20 6d 61 blic.Licenses.are.designed.to.ma
0a20 6b 65 20 73 75 72 65 20 74 68 61 74 20 79 6f 75 0a 68 61 76 65 20 74 68 65 20 66 72 65 65 64 6f ke.sure.that.you.have.the.freedo
0a40 6d 20 74 6f 20 64 69 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 66 72 65 65 20 73 m.to.distribute.copies.of.free.s
0a60 6f 66 74 77 61 72 65 20 28 61 6e 64 20 63 68 61 72 67 65 20 66 6f 72 0a 74 68 69 73 20 73 65 72 oftware.(and.charge.for.this.ser
0a80 76 69 63 65 20 69 66 20 79 6f 75 20 77 69 73 68 29 2c 20 74 68 61 74 20 79 6f 75 20 72 65 63 65 vice.if.you.wish),.that.you.rece
0aa0 69 76 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 72 20 63 61 6e 20 67 65 74 20 69 74 0a 69 66 ive.source.code.or.can.get.it.if
0ac0 20 79 6f 75 20 77 61 6e 74 20 69 74 2c 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 63 68 61 6e 67 .you.want.it,.that.you.can.chang
0ae0 65 20 74 68 65 20 73 6f 66 74 77 61 72 65 20 6f 72 20 75 73 65 20 70 69 65 63 65 73 20 6f 66 20 e.the.software.or.use.pieces.of.
0b00 69 74 0a 69 6e 20 6e 65 77 20 66 72 65 65 20 70 72 6f 67 72 61 6d 73 3b 20 61 6e 64 20 74 68 61 it.in.new.free.programs;.and.tha
0b20 74 20 79 6f 75 20 6b 6e 6f 77 20 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 65 73 65 20 74 68 69 6e t.you.know.you.can.do.these.thin
0b40 67 73 2e 0a 0a 20 20 54 6f 20 70 72 6f 74 65 63 74 20 79 6f 75 72 20 72 69 67 68 74 73 2c 20 77 gs.....To.protect.your.rights,.w
0b60 65 20 6e 65 65 64 20 74 6f 20 6d 61 6b 65 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 74 68 61 74 e.need.to.make.restrictions.that
0b80 20 66 6f 72 62 69 64 0a 61 6e 79 6f 6e 65 20 74 6f 20 64 65 6e 79 20 79 6f 75 20 74 68 65 73 65 .forbid.anyone.to.deny.you.these
0ba0 20 72 69 67 68 74 73 20 6f 72 20 74 6f 20 61 73 6b 20 79 6f 75 20 74 6f 20 73 75 72 72 65 6e 64 .rights.or.to.ask.you.to.surrend
0bc0 65 72 20 74 68 65 20 72 69 67 68 74 73 2e 0a 54 68 65 73 65 20 72 65 73 74 72 69 63 74 69 6f 6e er.the.rights..These.restriction
0be0 73 20 74 72 61 6e 73 6c 61 74 65 20 74 6f 20 63 65 72 74 61 69 6e 20 72 65 73 70 6f 6e 73 69 62 s.translate.to.certain.responsib
0c00 69 6c 69 74 69 65 73 20 66 6f 72 20 79 6f 75 20 69 66 20 79 6f 75 0a 64 69 73 74 72 69 62 75 74 ilities.for.you.if.you.distribut
0c20 65 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 73 6f 66 74 77 61 72 65 2c 20 6f 72 20 69 66 20 e.copies.of.the.software,.or.if.
0c40 79 6f 75 20 6d 6f 64 69 66 79 20 69 74 2e 0a 0a 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 you.modify.it.....For.example,.i
0c60 66 20 79 6f 75 20 64 69 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 73 75 63 68 20 f.you.distribute.copies.of.such.
0c80 61 20 70 72 6f 67 72 61 6d 2c 20 77 68 65 74 68 65 72 0a 67 72 61 74 69 73 20 6f 72 20 66 6f 72 a.program,.whether.gratis.or.for
0ca0 20 61 20 66 65 65 2c 20 79 6f 75 20 6d 75 73 74 20 67 69 76 65 20 74 68 65 20 72 65 63 69 70 69 .a.fee,.you.must.give.the.recipi
0cc0 65 6e 74 73 20 61 6c 6c 20 74 68 65 20 72 69 67 68 74 73 20 74 68 61 74 0a 79 6f 75 20 68 61 76 ents.all.the.rights.that.you.hav
0ce0 65 2e 20 20 59 6f 75 20 6d 75 73 74 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 74 68 65 79 e...You.must.make.sure.that.they
0d00 2c 20 74 6f 6f 2c 20 72 65 63 65 69 76 65 20 6f 72 20 63 61 6e 20 67 65 74 20 74 68 65 0a 73 6f ,.too,.receive.or.can.get.the.so
0d20 75 72 63 65 20 63 6f 64 65 2e 20 20 41 6e 64 20 79 6f 75 20 6d 75 73 74 20 73 68 6f 77 20 74 68 urce.code...And.you.must.show.th
0d40 65 6d 20 74 68 65 73 65 20 74 65 72 6d 73 20 73 6f 20 74 68 65 79 20 6b 6e 6f 77 20 74 68 65 69 em.these.terms.so.they.know.thei
0d60 72 0a 72 69 67 68 74 73 2e 0a 0a 20 20 57 65 20 70 72 6f 74 65 63 74 20 79 6f 75 72 20 72 69 67 r.rights.....We.protect.your.rig
0d80 68 74 73 20 77 69 74 68 20 74 77 6f 20 73 74 65 70 73 3a 20 28 31 29 20 63 6f 70 79 72 69 67 68 hts.with.two.steps:.(1).copyrigh
0da0 74 20 74 68 65 20 73 6f 66 74 77 61 72 65 2c 20 61 6e 64 0a 28 32 29 20 6f 66 66 65 72 20 79 6f t.the.software,.and.(2).offer.yo
0dc0 75 20 74 68 69 73 20 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 u.this.license.which.gives.you.l
0de0 65 67 61 6c 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 egal.permission.to.copy,.distrib
0e00 75 74 65 20 61 6e 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 0a ute.and/or.modify.the.software..
0e20 0a 20 20 41 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 ...Also,.for.each.author's.prote
0e40 63 74 69 6f 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 ction.and.ours,.we.want.to.make.
0e60 63 65 72 74 61 69 6e 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 certain.that.everyone.understand
0e80 73 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 20 66 6f 72 20 s.that.there.is.no.warranty.for.
0ea0 74 68 69 73 20 66 72 65 65 0a 73 6f 66 74 77 61 72 65 2e 20 20 49 66 20 74 68 65 20 73 6f 66 74 this.free.software...If.the.soft
0ec0 77 61 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 ware.is.modified.by.someone.else
0ee0 20 61 6e 64 20 70 61 73 73 65 64 20 6f 6e 2c 20 77 65 0a 77 61 6e 74 20 69 74 73 20 72 65 63 69 .and.passed.on,.we.want.its.reci
0f00 70 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 pients.to.know.that.what.they.ha
0f20 76 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 0a 74 68 61 74 20 ve.is.not.the.original,.so.that.
0f40 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
0f60 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
0f80 61 6c 0a 61 75 74 68 6f 72 73 27 20 72 65 70 75 74 61 74 69 6f 6e 73 2e 0a 0a 20 20 46 69 6e 61 al.authors'.reputations.....Fina
0fa0 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 61 74 65 lly,.any.free.program.is.threate
0fc0 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 0a 70 61 74 65 6e ned.constantly.by.software.paten
0fe0 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 6e 67 65 72 ts...We.wish.to.avoid.the.danger
1000 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 65 65 0a 70 .that.redistributors.of.a.free.p
1020 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 74 61 69 6e 20 rogram.will.individually.obtain.
1040 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 6d 61 6b 69 6e patent.licenses,.in.effect.makin
1060 67 20 74 68 65 0a 70 72 6f 67 72 61 6d 20 70 72 6f 70 72 69 65 74 61 72 79 2e 20 20 54 6f 20 70 g.the.program.proprietary...To.p
1080 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 69 74 20 63 6c 65 revent.this,.we.have.made.it.cle
10a0 61 72 20 74 68 61 74 20 61 6e 79 0a 70 61 74 65 6e 74 20 6d 75 73 74 20 62 65 20 6c 69 63 65 6e ar.that.any.patent.must.be.licen
10c0 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 73 65 20 6f 72 20 6e sed.for.everyone's.free.use.or.n
10e0 6f 74 20 6c 69 63 65 6e 73 65 64 20 61 74 20 61 6c 6c 2e 0a 0a 20 20 54 68 65 20 70 72 65 63 69 ot.licensed.at.all.....The.preci
1100 73 65 20 74 65 72 6d 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 se.terms.and.conditions.for.copy
1120 69 6e 67 2c 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 0a 6d 6f 64 69 66 69 63 61 74 69 ing,.distribution.and.modificati
1140 6f 6e 20 66 6f 6c 6c 6f 77 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 on.follow.......................
1160 47 4e 55 20 47 45 4e 45 52 41 4c 20 50 55 42 4c 49 43 20 4c 49 43 45 4e 53 45 0a 20 20 20 54 45 GNU.GENERAL.PUBLIC.LICENSE....TE
1180 52 4d 53 20 41 4e 44 20 43 4f 4e 44 49 54 49 4f 4e 53 20 46 4f 52 20 43 4f 50 59 49 4e 47 2c 20 RMS.AND.CONDITIONS.FOR.COPYING,.
11a0 44 49 53 54 52 49 42 55 54 49 4f 4e 20 41 4e 44 20 4d 4f 44 49 46 49 43 41 54 49 4f 4e 0a 0a 20 DISTRIBUTION.AND.MODIFICATION...
11c0 20 30 2e 20 54 68 69 73 20 4c 69 63 65 6e 73 65 20 61 70 70 6c 69 65 73 20 74 6f 20 61 6e 79 20 .0..This.License.applies.to.any.
11e0 70 72 6f 67 72 61 6d 20 6f 72 20 6f 74 68 65 72 20 77 6f 72 6b 20 77 68 69 63 68 20 63 6f 6e 74 program.or.other.work.which.cont
1200 61 69 6e 73 0a 61 20 6e 6f 74 69 63 65 20 70 6c 61 63 65 64 20 62 79 20 74 68 65 20 63 6f 70 79 ains.a.notice.placed.by.the.copy
1220 72 69 67 68 74 20 68 6f 6c 64 65 72 20 73 61 79 69 6e 67 20 69 74 20 6d 61 79 20 62 65 20 64 69 right.holder.saying.it.may.be.di
1240 73 74 72 69 62 75 74 65 64 0a 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 69 stributed.under.the.terms.of.thi
1260 73 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 2e 20 20 54 68 65 20 22 s.General.Public.License...The."
1280 50 72 6f 67 72 61 6d 22 2c 20 62 65 6c 6f 77 2c 0a 72 65 66 65 72 73 20 74 6f 20 61 6e 79 20 73 Program",.below,.refers.to.any.s
12a0 75 63 68 20 70 72 6f 67 72 61 6d 20 6f 72 20 77 6f 72 6b 2c 20 61 6e 64 20 61 20 22 77 6f 72 6b uch.program.or.work,.and.a."work
12c0 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 22 0a 6d 65 61 6e 73 20 65 69 74 .based.on.the.Program".means.eit
12e0 68 65 72 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 6e 79 20 64 65 72 69 76 61 74 69 76 her.the.Program.or.any.derivativ
1300 65 20 77 6f 72 6b 20 75 6e 64 65 72 20 63 6f 70 79 72 69 67 68 74 20 6c 61 77 3a 0a 74 68 61 74 e.work.under.copyright.law:.that
1320 20 69 73 20 74 6f 20 73 61 79 2c 20 61 20 77 6f 72 6b 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 .is.to.say,.a.work.containing.th
1340 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 20 70 6f 72 74 69 6f 6e 20 6f 66 20 69 74 2c 0a 65 69 e.Program.or.a.portion.of.it,.ei
1360 74 68 65 72 20 76 65 72 62 61 74 69 6d 20 6f 72 20 77 69 74 68 20 6d 6f 64 69 66 69 63 61 74 69 ther.verbatim.or.with.modificati
1380 6f 6e 73 20 61 6e 64 2f 6f 72 20 74 72 61 6e 73 6c 61 74 65 64 20 69 6e 74 6f 20 61 6e 6f 74 68 ons.and/or.translated.into.anoth
13a0 65 72 0a 6c 61 6e 67 75 61 67 65 2e 20 20 28 48 65 72 65 69 6e 61 66 74 65 72 2c 20 74 72 61 6e er.language...(Hereinafter,.tran
13c0 73 6c 61 74 69 6f 6e 20 69 73 20 69 6e 63 6c 75 64 65 64 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 slation.is.included.without.limi
13e0 74 61 74 69 6f 6e 20 69 6e 0a 74 68 65 20 74 65 72 6d 20 22 6d 6f 64 69 66 69 63 61 74 69 6f 6e tation.in.the.term."modification
1400 22 2e 29 20 20 45 61 63 68 20 6c 69 63 65 6e 73 65 65 20 69 73 20 61 64 64 72 65 73 73 65 64 20 ".)..Each.licensee.is.addressed.
1420 61 73 20 22 79 6f 75 22 2e 0a 0a 41 63 74 69 76 69 74 69 65 73 20 6f 74 68 65 72 20 74 68 61 6e as."you"...Activities.other.than
1440 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 20 6d 6f 64 69 66 .copying,.distribution.and.modif
1460 69 63 61 74 69 6f 6e 20 61 72 65 20 6e 6f 74 0a 63 6f 76 65 72 65 64 20 62 79 20 74 68 69 73 20 ication.are.not.covered.by.this.
1480 4c 69 63 65 6e 73 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 License;.they.are.outside.its.sc
14a0 6f 70 65 2e 20 20 54 68 65 20 61 63 74 20 6f 66 0a 72 75 6e 6e 69 6e 67 20 74 68 65 20 50 72 6f ope...The.act.of.running.the.Pro
14c0 67 72 61 6d 20 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 gram.is.not.restricted,.and.the.
14e0 6f 75 74 70 75 74 20 66 72 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 0a 69 73 20 63 6f 76 65 72 output.from.the.Program.is.cover
1500 65 64 20 6f 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 ed.only.if.its.contents.constitu
1520 74 65 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 0a 50 72 6f 67 72 61 6d 20 28 te.a.work.based.on.the.Program.(
1540 69 6e 64 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 independent.of.having.been.made.
1560 62 79 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 29 2e 0a 57 68 65 74 68 65 72 by.running.the.Program)..Whether
1580 20 74 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 .that.is.true.depends.on.what.th
15a0 65 20 50 72 6f 67 72 61 6d 20 64 6f 65 73 2e 0a 0a 20 20 31 2e 20 59 6f 75 20 6d 61 79 20 63 6f e.Program.does.....1..You.may.co
15c0 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
15e0 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 27 73 0a 73 6f 75 72 63 65 20 63 6f 64 65 20 61 s.of.the.Program's.source.code.a
1600 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 2c s.you.receive.it,.in.any.medium,
1620 20 70 72 6f 76 69 64 65 64 20 74 68 61 74 20 79 6f 75 0a 63 6f 6e 73 70 69 63 75 6f 75 73 6c 79 .provided.that.you.conspicuously
1640 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 65 61 .and.appropriately.publish.on.ea
1660 63 68 20 63 6f 70 79 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 0a 63 6f 70 79 72 69 67 68 74 ch.copy.an.appropriate.copyright
1680 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 72 61 6e .notice.and.disclaimer.of.warran
16a0 74 79 3b 20 6b 65 65 70 20 69 6e 74 61 63 74 20 61 6c 6c 20 74 68 65 0a 6e 6f 74 69 63 65 73 20 ty;.keep.intact.all.the.notices.
16c0 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 6e 64 20 74 that.refer.to.this.License.and.t
16e0 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 79 3b 0a 61 o.the.absence.of.any.warranty;.a
1700 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 73 20 6f 66 20 nd.give.any.other.recipients.of.
1720 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 4c 69 63 65 6e the.Program.a.copy.of.this.Licen
1740 73 65 0a 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 50 72 6f 67 72 61 6d 2e 0a 0a 59 6f 75 20 se.along.with.the.Program...You.
1760 6d 61 79 20 63 68 61 72 67 65 20 61 20 66 65 65 20 66 6f 72 20 74 68 65 20 70 68 79 73 69 63 61 may.charge.a.fee.for.the.physica
1780 6c 20 61 63 74 20 6f 66 20 74 72 61 6e 73 66 65 72 72 69 6e 67 20 61 20 63 6f 70 79 2c 20 61 6e l.act.of.transferring.a.copy,.an
17a0 64 0a 79 6f 75 20 6d 61 79 20 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 20 6f 66 66 65 72 20 77 d.you.may.at.your.option.offer.w
17c0 61 72 72 61 6e 74 79 20 70 72 6f 74 65 63 74 69 6f 6e 20 69 6e 20 65 78 63 68 61 6e 67 65 20 66 arranty.protection.in.exchange.f
17e0 6f 72 20 61 20 66 65 65 2e 0a 0a 20 20 32 2e 20 59 6f 75 20 6d 61 79 20 6d 6f 64 69 66 79 20 79 or.a.fee.....2..You.may.modify.y
1800 6f 75 72 20 63 6f 70 79 20 6f 72 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 our.copy.or.copies.of.the.Progra
1820 6d 20 6f 72 20 61 6e 79 20 70 6f 72 74 69 6f 6e 0a 6f 66 20 69 74 2c 20 74 68 75 73 20 66 6f 72 m.or.any.portion.of.it,.thus.for
1840 6d 69 6e 67 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 ming.a.work.based.on.the.Program
1860 2c 20 61 6e 64 20 63 6f 70 79 20 61 6e 64 0a 64 69 73 74 72 69 62 75 74 65 20 73 75 63 68 20 6d ,.and.copy.and.distribute.such.m
1880 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 6f 72 20 77 6f 72 6b 20 75 6e 64 65 72 20 74 68 65 20 74 odifications.or.work.under.the.t
18a0 65 72 6d 73 20 6f 66 20 53 65 63 74 69 6f 6e 20 31 0a 61 62 6f 76 65 2c 20 70 72 6f 76 69 64 65 erms.of.Section.1.above,.provide
18c0 64 20 74 68 61 74 20 79 6f 75 20 61 6c 73 6f 20 6d 65 65 74 20 61 6c 6c 20 6f 66 20 74 68 65 73 d.that.you.also.meet.all.of.thes
18e0 65 20 63 6f 6e 64 69 74 69 6f 6e 73 3a 0a 0a 20 20 20 20 61 29 20 59 6f 75 20 6d 75 73 74 20 63 e.conditions:......a).You.must.c
1900 61 75 73 65 20 74 68 65 20 6d 6f 64 69 66 69 65 64 20 66 69 6c 65 73 20 74 6f 20 63 61 72 72 79 ause.the.modified.files.to.carry
1920 20 70 72 6f 6d 69 6e 65 6e 74 20 6e 6f 74 69 63 65 73 0a 20 20 20 20 73 74 61 74 69 6e 67 20 74 .prominent.notices.....stating.t
1940 68 61 74 20 79 6f 75 20 63 68 61 6e 67 65 64 20 74 68 65 20 66 69 6c 65 73 20 61 6e 64 20 74 68 hat.you.changed.the.files.and.th
1960 65 20 64 61 74 65 20 6f 66 20 61 6e 79 20 63 68 61 6e 67 65 2e 0a 0a 20 20 20 20 62 29 20 59 6f e.date.of.any.change.......b).Yo
1980 75 20 6d 75 73 74 20 63 61 75 73 65 20 61 6e 79 20 77 6f 72 6b 20 74 68 61 74 20 79 6f 75 20 64 u.must.cause.any.work.that.you.d
19a0 69 73 74 72 69 62 75 74 65 20 6f 72 20 70 75 62 6c 69 73 68 2c 20 74 68 61 74 20 69 6e 0a 20 20 istribute.or.publish,.that.in...
19c0 20 20 77 68 6f 6c 65 20 6f 72 20 69 6e 20 70 61 72 74 20 63 6f 6e 74 61 69 6e 73 20 6f 72 20 69 ..whole.or.in.part.contains.or.i
19e0 73 20 64 65 72 69 76 65 64 20 66 72 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 6e s.derived.from.the.Program.or.an
1a00 79 0a 20 20 20 20 70 61 72 74 20 74 68 65 72 65 6f 66 2c 20 74 6f 20 62 65 20 6c 69 63 65 6e 73 y.....part.thereof,.to.be.licens
1a20 65 64 20 61 73 20 61 20 77 68 6f 6c 65 20 61 74 20 6e 6f 20 63 68 61 72 67 65 20 74 6f 20 61 6c ed.as.a.whole.at.no.charge.to.al
1a40 6c 20 74 68 69 72 64 0a 20 20 20 20 70 61 72 74 69 65 73 20 75 6e 64 65 72 20 74 68 65 20 74 65 l.third.....parties.under.the.te
1a60 72 6d 73 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 20 20 63 29 20 49 66 20 rms.of.this.License.......c).If.
1a80 74 68 65 20 6d 6f 64 69 66 69 65 64 20 70 72 6f 67 72 61 6d 20 6e 6f 72 6d 61 6c 6c 79 20 72 65 the.modified.program.normally.re
1aa0 61 64 73 20 63 6f 6d 6d 61 6e 64 73 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 0a 20 20 20 20 77 ads.commands.interactively.....w
1ac0 68 65 6e 20 72 75 6e 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 hen.run,.you.must.cause.it,.when
1ae0 20 73 74 61 72 74 65 64 20 72 75 6e 6e 69 6e 67 20 66 6f 72 20 73 75 63 68 0a 20 20 20 20 69 6e .started.running.for.such.....in
1b00 74 65 72 61 63 74 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 teractive.use.in.the.most.ordina
1b20 72 79 20 77 61 79 2c 20 74 6f 20 70 72 69 6e 74 20 6f 72 20 64 69 73 70 6c 61 79 20 61 6e 0a 20 ry.way,.to.print.or.display.an..
1b40 20 20 20 61 6e 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 ...announcement.including.an.app
1b60 72 6f 70 72 69 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 0a ropriate.copyright.notice.and.a.
1b80 20 20 20 20 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 ....notice.that.there.is.no.warr
1ba0 61 6e 74 79 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 anty.(or.else,.saying.that.you.p
1bc0 72 6f 76 69 64 65 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 rovide.....a.warranty).and.that.
1be0 75 73 65 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 users.may.redistribute.the.progr
1c00 61 6d 20 75 6e 64 65 72 0a 20 20 20 20 74 68 65 73 65 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 61 am.under.....these.conditions,.a
1c20 6e 64 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 nd.telling.the.user.how.to.view.
1c40 61 20 63 6f 70 79 20 6f 66 20 74 68 69 73 0a 20 20 20 20 4c 69 63 65 6e 73 65 2e 20 20 28 45 78 a.copy.of.this.....License...(Ex
1c60 63 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 ception:.if.the.Program.itself.i
1c80 73 20 69 6e 74 65 72 61 63 74 69 76 65 20 62 75 74 0a 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 6e s.interactive.but.....does.not.n
1ca0 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
1cc0 6e 74 2c 20 79 6f 75 72 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 0a 20 20 20 20 74 68 65 20 50 nt,.your.work.based.on.....the.P
1ce0 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 20 rogram.is.not.required.to.print.
1d00 61 6e 20 61 6e 6e 6f 75 6e 63 65 6d 65 6e 74 2e 29 0a 0a 54 68 65 73 65 20 72 65 71 75 69 72 65 an.announcement.)..These.require
1d20 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 6f 72 6b ments.apply.to.the.modified.work
1d40 20 61 73 20 61 20 77 68 6f 6c 65 2e 20 20 49 66 0a 69 64 65 6e 74 69 66 69 61 62 6c 65 20 73 65 .as.a.whole...If.identifiable.se
1d60 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 64 65 72 69 ctions.of.that.work.are.not.deri
1d80 76 65 64 20 66 72 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 2c 0a 61 6e 64 20 63 61 6e 20 62 65 ved.from.the.Program,.and.can.be
1da0 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 70 65 6e 64 65 .reasonably.considered.independe
1dc0 6e 74 20 61 6e 64 20 73 65 70 61 72 61 74 65 20 77 6f 72 6b 73 20 69 6e 0a 74 68 65 6d 73 65 6c nt.and.separate.works.in.themsel
1de0 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 64 20 69 74 73 20 ves,.then.this.License,.and.its.
1e00 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 73 65 0a 73 65 63 terms,.do.not.apply.to.those.sec
1e20 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 20 74 68 65 6d 20 61 tions.when.you.distribute.them.a
1e40 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 65 6e 20 79 6f 75 0a s.separate.works...But.when.you.
1e60 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 73 61 6d 65 20 73 65 63 74 69 6f 6e 73 20 61 73 20 distribute.the.same.sections.as.
1e80 70 61 72 74 20 6f 66 20 61 20 77 68 6f 6c 65 20 77 68 69 63 68 20 69 73 20 61 20 77 6f 72 6b 20 part.of.a.whole.which.is.a.work.
1ea0 62 61 73 65 64 0a 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 2c 20 74 68 65 20 64 69 73 74 72 69 based.on.the.Program,.the.distri
1ec0 62 75 74 69 6f 6e 20 6f 66 20 74 68 65 20 77 68 6f 6c 65 20 6d 75 73 74 20 62 65 20 6f 6e 20 74 bution.of.the.whole.must.be.on.t
1ee0 68 65 20 74 65 72 6d 73 20 6f 66 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 77 68 6f 73 65 20 he.terms.of.this.License,.whose.
1f00 70 65 72 6d 69 73 73 69 6f 6e 73 20 66 6f 72 20 6f 74 68 65 72 20 6c 69 63 65 6e 73 65 65 73 20 permissions.for.other.licensees.
1f20 65 78 74 65 6e 64 20 74 6f 20 74 68 65 0a 65 6e 74 69 72 65 20 77 68 6f 6c 65 2c 20 61 6e 64 20 extend.to.the.entire.whole,.and.
1f40 74 68 75 73 20 74 6f 20 65 61 63 68 20 61 6e 64 20 65 76 65 72 79 20 70 61 72 74 20 72 65 67 61 thus.to.each.and.every.part.rega
1f60 72 64 6c 65 73 73 20 6f 66 20 77 68 6f 20 77 72 6f 74 65 20 69 74 2e 0a 0a 54 68 75 73 2c 20 69 rdless.of.who.wrote.it...Thus,.i
1f80 74 20 69 73 20 6e 6f 74 20 74 68 65 20 69 6e 74 65 6e 74 20 6f 66 20 74 68 69 73 20 73 65 63 74 t.is.not.the.intent.of.this.sect
1fa0 69 6f 6e 20 74 6f 20 63 6c 61 69 6d 20 72 69 67 68 74 73 20 6f 72 20 63 6f 6e 74 65 73 74 0a 79 ion.to.claim.rights.or.contest.y
1fc0 6f 75 72 20 72 69 67 68 74 73 20 74 6f 20 77 6f 72 6b 20 77 72 69 74 74 65 6e 20 65 6e 74 69 72 our.rights.to.work.written.entir
1fe0 65 6c 79 20 62 79 20 79 6f 75 3b 20 72 61 74 68 65 72 2c 20 74 68 65 20 69 6e 74 65 6e 74 20 69 ely.by.you;.rather,.the.intent.i
2000 73 20 74 6f 0a 65 78 65 72 63 69 73 65 20 74 68 65 20 72 69 67 68 74 20 74 6f 20 63 6f 6e 74 72 s.to.exercise.the.right.to.contr
2020 6f 6c 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 64 65 72 69 76 61 74 69 76 ol.the.distribution.of.derivativ
2040 65 20 6f 72 0a 63 6f 6c 6c 65 63 74 69 76 65 20 77 6f 72 6b 73 20 62 61 73 65 64 20 6f 6e 20 74 e.or.collective.works.based.on.t
2060 68 65 20 50 72 6f 67 72 61 6d 2e 0a 0a 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20 6d 65 72 65 20 61 he.Program...In.addition,.mere.a
2080 67 67 72 65 67 61 74 69 6f 6e 20 6f 66 20 61 6e 6f 74 68 65 72 20 77 6f 72 6b 20 6e 6f 74 20 62 ggregation.of.another.work.not.b
20a0 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 0a 77 69 74 68 20 74 68 65 20 50 72 6f ased.on.the.Program.with.the.Pro
20c0 67 72 61 6d 20 28 6f 72 20 77 69 74 68 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 gram.(or.with.a.work.based.on.th
20e0 65 20 50 72 6f 67 72 61 6d 29 20 6f 6e 20 61 20 76 6f 6c 75 6d 65 20 6f 66 0a 61 20 73 74 6f 72 e.Program).on.a.volume.of.a.stor
2100 61 67 65 20 6f 72 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6d 65 64 69 75 6d 20 64 6f 65 73 20 age.or.distribution.medium.does.
2120 6e 6f 74 20 62 72 69 6e 67 20 74 68 65 20 6f 74 68 65 72 20 77 6f 72 6b 20 75 6e 64 65 72 0a 74 not.bring.the.other.work.under.t
2140 68 65 20 73 63 6f 70 65 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 33 2e 20 he.scope.of.this.License.....3..
2160 59 6f 75 20 6d 61 79 20 63 6f 70 79 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 You.may.copy.and.distribute.the.
2180 50 72 6f 67 72 61 6d 20 28 6f 72 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 69 74 2c 0a Program.(or.a.work.based.on.it,.
21a0 75 6e 64 65 72 20 53 65 63 74 69 6f 6e 20 32 29 20 69 6e 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 under.Section.2).in.object.code.
21c0 6f 72 20 65 78 65 63 75 74 61 62 6c 65 20 66 6f 72 6d 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 or.executable.form.under.the.ter
21e0 6d 73 20 6f 66 0a 53 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 ms.of.Sections.1.and.2.above.pro
2200 76 69 64 65 64 20 74 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 vided.that.you.also.do.one.of.th
2220 65 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 0a 20 20 20 20 61 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 e.following:......a).Accompany.i
2240 74 20 77 69 74 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 t.with.the.complete.correspondin
2260 67 20 6d 61 63 68 69 6e 65 2d 72 65 61 64 61 62 6c 65 0a 20 20 20 20 73 6f 75 72 63 65 20 63 6f g.machine-readable.....source.co
2280 64 65 2c 20 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 de,.which.must.be.distributed.un
22a0 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 0a 20 20 20 20 31 20 der.the.terms.of.Sections.....1.
22c0 61 6e 64 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 and.2.above.on.a.medium.customar
22e0 69 6c 79 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 ily.used.for.software.interchang
2300 65 3b 20 6f 72 2c 0a 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 e;.or,......b).Accompany.it.with
2320 20 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 .a.written.offer,.valid.for.at.l
2340 65 61 73 74 20 74 68 72 65 65 0a 20 20 20 20 79 65 61 72 73 2c 20 74 6f 20 67 69 76 65 20 61 6e east.three.....years,.to.give.an
2360 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
2380 6f 72 65 20 74 68 61 6e 20 79 6f 75 72 0a 20 20 20 20 63 6f 73 74 20 6f 66 20 70 68 79 73 69 63 ore.than.your.....cost.of.physic
23a0 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 74 ally.performing.source.distribut
23c0 69 6f 6e 2c 20 61 20 63 6f 6d 70 6c 65 74 65 0a 20 20 20 20 6d 61 63 68 69 6e 65 2d 72 65 61 64 ion,.a.complete.....machine-read
23e0 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 20 73 able.copy.of.the.corresponding.s
2400 6f 75 72 63 65 20 63 6f 64 65 2c 20 74 6f 20 62 65 0a 20 20 20 20 64 69 73 74 72 69 62 75 74 65 ource.code,.to.be.....distribute
2420 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 20 31 20 d.under.the.terms.of.Sections.1.
2440 61 6e 64 20 32 20 61 62 6f 76 65 20 6f 6e 20 61 20 6d 65 64 69 75 6d 0a 20 20 20 20 63 75 73 74 and.2.above.on.a.medium.....cust
2460 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 74 65 72 63 omarily.used.for.software.interc
2480 68 61 6e 67 65 3b 20 6f 72 2c 0a 0a 20 20 20 20 63 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 74 20 hange;.or,......c).Accompany.it.
24a0 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 65 63 65 69 76 65 with.the.information.you.receive
24c0 64 20 61 73 20 74 6f 20 74 68 65 20 6f 66 66 65 72 0a 20 20 20 20 74 6f 20 64 69 73 74 72 69 62 d.as.to.the.offer.....to.distrib
24e0 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 63 6f 64 65 2e 20 20 ute.corresponding.source.code...
2500 28 54 68 69 73 20 61 6c 74 65 72 6e 61 74 69 76 65 20 69 73 0a 20 20 20 20 61 6c 6c 6f 77 65 64 (This.alternative.is.....allowed
2520 20 6f 6e 6c 79 20 66 6f 72 20 6e 6f 6e 63 6f 6d 6d 65 72 63 69 61 6c 20 64 69 73 74 72 69 62 75 .only.for.noncommercial.distribu
2540 74 69 6f 6e 20 61 6e 64 20 6f 6e 6c 79 20 69 66 20 79 6f 75 0a 20 20 20 20 72 65 63 65 69 76 65 tion.and.only.if.you.....receive
2560 64 20 74 68 65 20 70 72 6f 67 72 61 6d 20 69 6e 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 6f 72 20 d.the.program.in.object.code.or.
2580 65 78 65 63 75 74 61 62 6c 65 20 66 6f 72 6d 20 77 69 74 68 20 73 75 63 68 0a 20 20 20 20 61 6e executable.form.with.such.....an
25a0 20 6f 66 66 65 72 2c 20 69 6e 20 61 63 63 6f 72 64 20 77 69 74 68 20 53 75 62 73 65 63 74 69 6f .offer,.in.accord.with.Subsectio
25c0 6e 20 62 20 61 62 6f 76 65 2e 29 0a 0a 54 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 6f 72 n.b.above.)..The.source.code.for
25e0 20 61 20 77 6f 72 6b 20 6d 65 61 6e 73 20 74 68 65 20 70 72 65 66 65 72 72 65 64 20 66 6f 72 6d .a.work.means.the.preferred.form
2600 20 6f 66 20 74 68 65 20 77 6f 72 6b 20 66 6f 72 0a 6d 61 6b 69 6e 67 20 6d 6f 64 69 66 69 63 61 .of.the.work.for.making.modifica
2620 74 69 6f 6e 73 20 74 6f 20 69 74 2e 20 20 46 6f 72 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 20 tions.to.it...For.an.executable.
2640 77 6f 72 6b 2c 20 63 6f 6d 70 6c 65 74 65 20 73 6f 75 72 63 65 0a 63 6f 64 65 20 6d 65 61 6e 73 work,.complete.source.code.means
2660 20 61 6c 6c 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 6f 72 20 61 6c 6c 20 6d 6f 64 .all.the.source.code.for.all.mod
2680 75 6c 65 73 20 69 74 20 63 6f 6e 74 61 69 6e 73 2c 20 70 6c 75 73 20 61 6e 79 0a 61 73 73 6f 63 ules.it.contains,.plus.any.assoc
26a0 69 61 74 65 64 20 69 6e 74 65 72 66 61 63 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 66 69 6c 65 73 iated.interface.definition.files
26c0 2c 20 70 6c 75 73 20 74 68 65 20 73 63 72 69 70 74 73 20 75 73 65 64 20 74 6f 0a 63 6f 6e 74 72 ,.plus.the.scripts.used.to.contr
26e0 6f 6c 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 61 6e 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 ol.compilation.and.installation.
2700 6f 66 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 2e 20 20 48 6f 77 65 76 65 72 2c 20 61 73 20 of.the.executable...However,.as.
2720 61 0a 73 70 65 63 69 61 6c 20 65 78 63 65 70 74 69 6f 6e 2c 20 74 68 65 20 73 6f 75 72 63 65 20 a.special.exception,.the.source.
2740 63 6f 64 65 20 64 69 73 74 72 69 62 75 74 65 64 20 6e 65 65 64 20 6e 6f 74 20 69 6e 63 6c 75 64 code.distributed.need.not.includ
2760 65 0a 61 6e 79 74 68 69 6e 67 20 74 68 61 74 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 64 69 73 74 e.anything.that.is.normally.dist
2780 72 69 62 75 74 65 64 20 28 69 6e 20 65 69 74 68 65 72 20 73 6f 75 72 63 65 20 6f 72 20 62 69 6e ributed.(in.either.source.or.bin
27a0 61 72 79 0a 66 6f 72 6d 29 20 77 69 74 68 20 74 68 65 20 6d 61 6a 6f 72 20 63 6f 6d 70 6f 6e 65 ary.form).with.the.major.compone
27c0 6e 74 73 20 28 63 6f 6d 70 69 6c 65 72 2c 20 6b 65 72 6e 65 6c 2c 20 61 6e 64 20 73 6f 20 6f 6e nts.(compiler,.kernel,.and.so.on
27e0 29 20 6f 66 20 74 68 65 0a 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 6f 6e 20 77 68 69 ).of.the.operating.system.on.whi
2800 63 68 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 20 72 75 6e 73 2c 20 75 6e 6c 65 73 73 20 74 ch.the.executable.runs,.unless.t
2820 68 61 74 20 63 6f 6d 70 6f 6e 65 6e 74 0a 69 74 73 65 6c 66 20 61 63 63 6f 6d 70 61 6e 69 65 73 hat.component.itself.accompanies
2840 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 2e 0a 0a 49 66 20 64 69 73 74 72 69 62 75 74 69 6f .the.executable...If.distributio
2860 6e 20 6f 66 20 65 78 65 63 75 74 61 62 6c 65 20 6f 72 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 69 n.of.executable.or.object.code.i
2880 73 20 6d 61 64 65 20 62 79 20 6f 66 66 65 72 69 6e 67 0a 61 63 63 65 73 73 20 74 6f 20 63 6f 70 s.made.by.offering.access.to.cop
28a0 79 20 66 72 6f 6d 20 61 20 64 65 73 69 67 6e 61 74 65 64 20 70 6c 61 63 65 2c 20 74 68 65 6e 20 y.from.a.designated.place,.then.
28c0 6f 66 66 65 72 69 6e 67 20 65 71 75 69 76 61 6c 65 6e 74 0a 61 63 63 65 73 73 20 74 6f 20 63 6f offering.equivalent.access.to.co
28e0 70 79 20 74 68 65 20 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 py.the.source.code.from.the.same
2900 20 70 6c 61 63 65 20 63 6f 75 6e 74 73 20 61 73 0a 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 .place.counts.as.distribution.of
2920 20 74 68 65 20 73 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 .the.source.code,.even.though.th
2940 69 72 64 20 70 61 72 74 69 65 73 20 61 72 65 20 6e 6f 74 0a 63 6f 6d 70 65 6c 6c 65 64 20 74 6f ird.parties.are.not.compelled.to
2960 20 63 6f 70 79 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 .copy.the.source.along.with.the.
2980 6f 62 6a 65 63 74 20 63 6f 64 65 2e 0a 0a 20 20 34 2e 20 59 6f 75 20 6d 61 79 20 6e 6f 74 20 63 object.code.....4..You.may.not.c
29a0 6f 70 79 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 opy,.modify,.sublicense,.or.dist
29c0 72 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 0a 65 78 63 65 70 74 20 61 73 20 65 78 70 ribute.the.Program.except.as.exp
29e0 72 65 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 ressly.provided.under.this.Licen
2a00 73 65 2e 20 20 41 6e 79 20 61 74 74 65 6d 70 74 0a 6f 74 68 65 72 77 69 73 65 20 74 6f 20 63 6f se...Any.attempt.otherwise.to.co
2a20 70 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 py,.modify,.sublicense.or.distri
2a40 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 73 0a 76 6f 69 64 2c 20 61 6e 64 20 77 69 bute.the.Program.is.void,.and.wi
2a60 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.
2a80 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 0a 48 6f 77 65 76 rights.under.this.License..Howev
2aa0 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 6f er,.parties.who.have.received.co
2ac0 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 0a pies,.or.rights,.from.you.under.
2ae0 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 69 72 this.License.will.not.have.their
2b00 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 73 20 .licenses.terminated.so.long.as.
2b20 73 75 63 68 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 6f 6d 70 such.parties.remain.in.full.comp
2b40 6c 69 61 6e 63 65 2e 0a 0a 20 20 35 2e 20 59 6f 75 20 61 72 65 20 6e 6f 74 20 72 65 71 75 69 72 liance.....5..You.are.not.requir
2b60 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 73 69 6e 63 65 ed.to.accept.this.License,.since
2b80 20 79 6f 75 20 68 61 76 65 20 6e 6f 74 0a 73 69 67 6e 65 64 20 69 74 2e 20 20 48 6f 77 65 76 65 .you.have.not.signed.it...Howeve
2ba0 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 20 70 65 72 6d 69 r,.nothing.else.grants.you.permi
2bc0 73 73 69 6f 6e 20 74 6f 20 6d 6f 64 69 66 79 20 6f 72 0a 64 69 73 74 72 69 62 75 74 65 20 74 68 ssion.to.modify.or.distribute.th
2be0 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 76 65 20 77 6f 72 6b e.Program.or.its.derivative.work
2c00 73 2e 20 20 54 68 65 73 65 20 61 63 74 69 6f 6e 73 20 61 72 65 0a 70 72 6f 68 69 62 69 74 65 64 s...These.actions.are.prohibited
2c20 20 62 79 20 6c 61 77 20 69 66 20 79 6f 75 20 64 6f 20 6e 6f 74 20 61 63 63 65 70 74 20 74 68 69 .by.law.if.you.do.not.accept.thi
2c40 73 20 4c 69 63 65 6e 73 65 2e 20 20 54 68 65 72 65 66 6f 72 65 2c 20 62 79 0a 6d 6f 64 69 66 79 s.License...Therefore,.by.modify
2c60 69 6e 67 20 6f 72 20 64 69 73 74 72 69 62 75 74 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 ing.or.distributing.the.Program.
2c80 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 0a 50 72 6f 67 72 61 (or.any.work.based.on.the.Progra
2ca0 6d 29 2c 20 79 6f 75 20 69 6e 64 69 63 61 74 65 20 79 6f 75 72 20 61 63 63 65 70 74 61 6e 63 65 m),.you.indicate.your.acceptance
2cc0 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 74 6f 20 64 6f 20 73 6f 2c 20 61 6e 64 0a 61 .of.this.License.to.do.so,.and.a
2ce0 6c 6c 20 69 74 73 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 20 66 6f 72 20 ll.its.terms.and.conditions.for.
2d00 63 6f 70 79 69 6e 67 2c 20 64 69 73 74 72 69 62 75 74 69 6e 67 20 6f 72 20 6d 6f 64 69 66 79 69 copying,.distributing.or.modifyi
2d20 6e 67 0a 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 77 6f 72 6b 73 20 62 61 73 65 64 20 6f 6e ng.the.Program.or.works.based.on
2d40 20 69 74 2e 0a 0a 20 20 36 2e 20 45 61 63 68 20 74 69 6d 65 20 79 6f 75 20 72 65 64 69 73 74 72 .it.....6..Each.time.you.redistr
2d60 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 28 6f 72 20 61 6e 79 20 77 6f 72 6b 20 62 ibute.the.Program.(or.any.work.b
2d80 61 73 65 64 20 6f 6e 20 74 68 65 0a 50 72 6f 67 72 61 6d 29 2c 20 74 68 65 20 72 65 63 69 70 69 ased.on.the.Program),.the.recipi
2da0 65 6e 74 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 72 65 63 65 69 76 65 73 20 61 20 6c 69 63 ent.automatically.receives.a.lic
2dc0 65 6e 73 65 20 66 72 6f 6d 20 74 68 65 0a 6f 72 69 67 69 6e 61 6c 20 6c 69 63 65 6e 73 6f 72 20 ense.from.the.original.licensor.
2de0 74 6f 20 63 6f 70 79 2c 20 64 69 73 74 72 69 62 75 74 65 20 6f 72 20 6d 6f 64 69 66 79 20 74 68 to.copy,.distribute.or.modify.th
2e00 65 20 50 72 6f 67 72 61 6d 20 73 75 62 6a 65 63 74 20 74 6f 0a 74 68 65 73 65 20 74 65 72 6d 73 e.Program.subject.to.these.terms
2e20 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 20 20 59 6f 75 20 6d 61 79 20 6e 6f 74 20 69 6d .and.conditions...You.may.not.im
2e40 70 6f 73 65 20 61 6e 79 20 66 75 72 74 68 65 72 0a 72 65 73 74 72 69 63 74 69 6f 6e 73 20 6f 6e pose.any.further.restrictions.on
2e60 20 74 68 65 20 72 65 63 69 70 69 65 6e 74 73 27 20 65 78 65 72 63 69 73 65 20 6f 66 20 74 68 65 .the.recipients'.exercise.of.the
2e80 20 72 69 67 68 74 73 20 67 72 61 6e 74 65 64 20 68 65 72 65 69 6e 2e 0a 59 6f 75 20 61 72 65 20 .rights.granted.herein..You.are.
2ea0 6e 6f 74 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 65 6e 66 6f 72 63 69 6e 67 20 63 6f not.responsible.for.enforcing.co
2ec0 6d 70 6c 69 61 6e 63 65 20 62 79 20 74 68 69 72 64 20 70 61 72 74 69 65 73 20 74 6f 0a 74 68 69 mpliance.by.third.parties.to.thi
2ee0 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 37 2e 20 49 66 2c 20 61 73 20 61 20 63 6f 6e 73 65 71 s.License.....7..If,.as.a.conseq
2f00 75 65 6e 63 65 20 6f 66 20 61 20 63 6f 75 72 74 20 6a 75 64 67 6d 65 6e 74 20 6f 72 20 61 6c 6c uence.of.a.court.judgment.or.all
2f20 65 67 61 74 69 6f 6e 20 6f 66 20 70 61 74 65 6e 74 0a 69 6e 66 72 69 6e 67 65 6d 65 6e 74 20 6f egation.of.patent.infringement.o
2f40 72 20 66 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 72 65 61 73 6f 6e 20 28 6e 6f 74 20 6c 69 6d 69 r.for.any.other.reason.(not.limi
2f60 74 65 64 20 74 6f 20 70 61 74 65 6e 74 20 69 73 73 75 65 73 29 2c 0a 63 6f 6e 64 69 74 69 6f 6e ted.to.patent.issues),.condition
2f80 73 20 61 72 65 20 69 6d 70 6f 73 65 64 20 6f 6e 20 79 6f 75 20 28 77 68 65 74 68 65 72 20 62 79 s.are.imposed.on.you.(whether.by
2fa0 20 63 6f 75 72 74 20 6f 72 64 65 72 2c 20 61 67 72 65 65 6d 65 6e 74 20 6f 72 0a 6f 74 68 65 72 .court.order,.agreement.or.other
2fc0 77 69 73 65 29 20 74 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 wise).that.contradict.the.condit
2fe0 69 6f 6e 73 20 6f 66 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 ions.of.this.License,.they.do.no
3000 74 0a 65 78 63 75 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 t.excuse.you.from.the.conditions
3020 20 6f 66 20 74 68 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 .of.this.License...If.you.cannot
3040 0a 64 69 73 74 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 .distribute.so.as.to.satisfy.sim
3060 75 6c 74 61 6e 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 ultaneously.your.obligations.und
3080 65 72 20 74 68 69 73 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 er.this.License.and.any.other.pe
30a0 72 74 69 6e 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 rtinent.obligations,.then.as.a.c
30c0 6f 6e 73 65 71 75 65 6e 63 65 20 79 6f 75 0a 6d 61 79 20 6e 6f 74 20 64 69 73 74 72 69 62 75 74 onsequence.you.may.not.distribut
30e0 65 20 74 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 e.the.Program.at.all...For.examp
3100 6c 65 2c 20 69 66 20 61 20 70 61 74 65 6e 74 0a 6c 69 63 65 6e 73 65 20 77 6f 75 6c 64 20 6e 6f le,.if.a.patent.license.would.no
3120 74 20 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 t.permit.royalty-free.redistribu
3140 74 69 6f 6e 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 62 79 0a 61 6c 6c 20 74 68 6f 73 65 tion.of.the.Program.by.all.those
3160 20 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 .who.receive.copies.directly.or.
3180 69 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 0a 74 68 65 indirectly.through.you,.then.the
31a0 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
31c0 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
31e0 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 74 .refrain.entirely.from.distribut
3200 69 6f 6e 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 2e 0a 0a 49 66 20 61 6e 79 20 70 6f 72 74 ion.of.the.Program...If.any.port
3220 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 6e 76 61 ion.of.this.section.is.held.inva
3240 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 0a 61 6e 79 20 70 lid.or.unenforceable.under.any.p
3260 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 62 61 6c 61 articular.circumstance,.the.bala
3280 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 65 64 20 74 nce.of.the.section.is.intended.t
32a0 6f 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 61 20 77 68 6f o.apply.and.the.section.as.a.who
32c0 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 6f 74 68 65 72 le.is.intended.to.apply.in.other
32e0 0a 63 69 72 63 75 6d 73 74 61 6e 63 65 73 2e 0a 0a 49 74 20 69 73 20 6e 6f 74 20 74 68 65 20 70 .circumstances...It.is.not.the.p
3300 75 72 70 6f 73 65 20 6f 66 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 74 6f 20 69 6e 64 75 63 65 urpose.of.this.section.to.induce
3320 20 79 6f 75 20 74 6f 20 69 6e 66 72 69 6e 67 65 20 61 6e 79 0a 70 61 74 65 6e 74 73 20 6f 72 20 .you.to.infringe.any.patents.or.
3340 6f 74 68 65 72 20 70 72 6f 70 65 72 74 79 20 72 69 67 68 74 20 63 6c 61 69 6d 73 20 6f 72 20 74 other.property.right.claims.or.t
3360 6f 20 63 6f 6e 74 65 73 74 20 76 61 6c 69 64 69 74 79 20 6f 66 20 61 6e 79 0a 73 75 63 68 20 63 o.contest.validity.of.any.such.c
3380 6c 61 69 6d 73 3b 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 68 61 73 20 74 68 65 20 73 6f 6c 65 laims;.this.section.has.the.sole
33a0 20 70 75 72 70 6f 73 65 20 6f 66 20 70 72 6f 74 65 63 74 69 6e 67 20 74 68 65 0a 69 6e 74 65 67 .purpose.of.protecting.the.integ
33c0 72 69 74 79 20 6f 66 20 74 68 65 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 64 69 73 74 72 69 rity.of.the.free.software.distri
33e0 62 75 74 69 6f 6e 20 73 79 73 74 65 6d 2c 20 77 68 69 63 68 20 69 73 0a 69 6d 70 6c 65 6d 65 6e bution.system,.which.is.implemen
3400 74 65 64 20 62 79 20 70 75 62 6c 69 63 20 6c 69 63 65 6e 73 65 20 70 72 61 63 74 69 63 65 73 2e ted.by.public.license.practices.
3420 20 20 4d 61 6e 79 20 70 65 6f 70 6c 65 20 68 61 76 65 20 6d 61 64 65 0a 67 65 6e 65 72 6f 75 73 ..Many.people.have.made.generous
3440 20 63 6f 6e 74 72 69 62 75 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 77 69 64 65 20 72 61 6e 67 65 .contributions.to.the.wide.range
3460 20 6f 66 20 73 6f 66 74 77 61 72 65 20 64 69 73 74 72 69 62 75 74 65 64 0a 74 68 72 6f 75 67 68 .of.software.distributed.through
3480 20 74 68 61 74 20 73 79 73 74 65 6d 20 69 6e 20 72 65 6c 69 61 6e 63 65 20 6f 6e 20 63 6f 6e 73 .that.system.in.reliance.on.cons
34a0 69 73 74 65 6e 74 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 6f 66 20 74 68 61 74 0a 73 79 73 74 65 istent.application.of.that.syste
34c0 6d 3b 20 69 74 20 69 73 20 75 70 20 74 6f 20 74 68 65 20 61 75 74 68 6f 72 2f 64 6f 6e 6f 72 20 m;.it.is.up.to.the.author/donor.
34e0 74 6f 20 64 65 63 69 64 65 20 69 66 20 68 65 20 6f 72 20 73 68 65 20 69 73 20 77 69 6c 6c 69 6e to.decide.if.he.or.she.is.willin
3500 67 0a 74 6f 20 64 69 73 74 72 69 62 75 74 65 20 73 6f 66 74 77 61 72 65 20 74 68 72 6f 75 67 68 g.to.distribute.software.through
3520 20 61 6e 79 20 6f 74 68 65 72 20 73 79 73 74 65 6d 20 61 6e 64 20 61 20 6c 69 63 65 6e 73 65 65 .any.other.system.and.a.licensee
3540 20 63 61 6e 6e 6f 74 0a 69 6d 70 6f 73 65 20 74 68 61 74 20 63 68 6f 69 63 65 2e 0a 0a 54 68 69 .cannot.impose.that.choice...Thi
3560 73 20 73 65 63 74 69 6f 6e 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 6d 61 6b 65 20 74 68 s.section.is.intended.to.make.th
3580 6f 72 6f 75 67 68 6c 79 20 63 6c 65 61 72 20 77 68 61 74 20 69 73 20 62 65 6c 69 65 76 65 64 20 oroughly.clear.what.is.believed.
35a0 74 6f 0a 62 65 20 61 20 63 6f 6e 73 65 71 75 65 6e 63 65 20 6f 66 20 74 68 65 20 72 65 73 74 20 to.be.a.consequence.of.the.rest.
35c0 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 38 2e 20 49 66 20 74 68 65 20 64 69 of.this.License.....8..If.the.di
35e0 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 2f 6f 72 20 75 73 65 20 6f 66 20 74 68 65 20 50 72 6f stribution.and/or.use.of.the.Pro
3600 67 72 61 6d 20 69 73 20 72 65 73 74 72 69 63 74 65 64 20 69 6e 0a 63 65 72 74 61 69 6e 20 63 6f gram.is.restricted.in.certain.co
3620 75 6e 74 72 69 65 73 20 65 69 74 68 65 72 20 62 79 20 70 61 74 65 6e 74 73 20 6f 72 20 62 79 20 untries.either.by.patents.or.by.
3640 63 6f 70 79 72 69 67 68 74 65 64 20 69 6e 74 65 72 66 61 63 65 73 2c 20 74 68 65 0a 6f 72 69 67 copyrighted.interfaces,.the.orig
3660 69 6e 61 6c 20 63 6f 70 79 72 69 67 68 74 20 68 6f 6c 64 65 72 20 77 68 6f 20 70 6c 61 63 65 73 inal.copyright.holder.who.places
3680 20 74 68 65 20 50 72 6f 67 72 61 6d 20 75 6e 64 65 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 0a .the.Program.under.this.License.
36a0 6d 61 79 20 61 64 64 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 may.add.an.explicit.geographical
36c0 20 64 69 73 74 72 69 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 .distribution.limitation.excludi
36e0 6e 67 0a 74 68 6f 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 ng.those.countries,.so.that.dist
3700 72 69 62 75 74 69 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 ribution.is.permitted.only.in.or
3720 20 61 6d 6f 6e 67 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 .among.countries.not.thus.exclud
3740 65 64 2e 20 20 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 ed...In.such.case,.this.License.
3760 69 6e 63 6f 72 70 6f 72 61 74 65 73 0a 74 68 65 20 6c 69 6d 69 74 61 74 69 6f 6e 20 61 73 20 69 incorporates.the.limitation.as.i
3780 66 20 77 72 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 f.written.in.the.body.of.this.Li
37a0 63 65 6e 73 65 2e 0a 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 cense.....9..The.Free.Software.F
37c0 6f 75 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 oundation.may.publish.revised.an
37e0 64 2f 6f 72 20 6e 65 77 20 76 65 72 73 69 6f 6e 73 0a 6f 66 20 74 68 65 20 47 65 6e 65 72 61 6c d/or.new.versions.of.the.General
3800 20 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 .Public.License.from.time.to.tim
3820 65 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 0a 62 65 20 73 69 e...Such.new.versions.will.be.si
3840 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
3860 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
3880 20 74 6f 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 63 .to.address.new.problems.or.conc
38a0 65 72 6e 73 2e 0a 0a 45 61 63 68 20 76 65 72 73 69 6f 6e 20 69 73 20 67 69 76 65 6e 20 61 20 64 erns...Each.version.is.given.a.d
38c0 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 20 20 49 istinguishing.version.number...I
38e0 66 20 74 68 65 20 50 72 6f 67 72 61 6d 0a 73 70 65 63 69 66 69 65 73 20 61 20 76 65 72 73 69 6f f.the.Program.specifies.a.versio
3900 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 63 68 20 61 n.number.of.this.License.which.a
3920 70 70 6c 69 65 73 20 74 6f 20 69 74 20 61 6e 64 20 22 61 6e 79 0a 6c 61 74 65 72 20 76 65 72 73 pplies.to.it.and."any.later.vers
3940 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 66 20 66 6f 6c ion",.you.have.the.option.of.fol
3960 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 69 6f 6e 73 0a lowing.the.terms.and.conditions.
3980 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 6f 66 20 61 6e 79 either.of.that.version.or.of.any
39a0 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 79 20 74 68 65 20 .later.version.published.by.the.
39c0 46 72 65 65 0a 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2e 20 20 49 66 20 74 68 Free.Software.Foundation...If.th
39e0 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 79 20 61 20 76 65 72 e.Program.does.not.specify.a.ver
3a00 73 69 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 79 6f 75 sion.number.of.this.License,.you
3a20 20 6d 61 79 20 63 68 6f 6f 73 65 20 61 6e 79 20 76 65 72 73 69 6f 6e 20 65 76 65 72 20 70 75 62 .may.choose.any.version.ever.pub
3a40 6c 69 73 68 65 64 20 62 79 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 0a 46 6f 75 6e lished.by.the.Free.Software.Foun
3a60 64 61 74 69 6f 6e 2e 0a 0a 20 20 31 30 2e 20 49 66 20 79 6f 75 20 77 69 73 68 20 74 6f 20 69 6e dation.....10..If.you.wish.to.in
3a80 63 6f 72 70 6f 72 61 74 65 20 70 61 72 74 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 corporate.parts.of.the.Program.i
3aa0 6e 74 6f 20 6f 74 68 65 72 20 66 72 65 65 0a 70 72 6f 67 72 61 6d 73 20 77 68 6f 73 65 20 64 69 nto.other.free.programs.whose.di
3ac0 73 74 72 69 62 75 74 69 6f 6e 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 64 69 66 66 65 72 stribution.conditions.are.differ
3ae0 65 6e 74 2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 20 61 75 74 68 6f 72 0a 74 6f 20 61 73 6b 20 ent,.write.to.the.author.to.ask.
3b00 66 6f 72 20 70 65 72 6d 69 73 73 69 6f 6e 2e 20 20 46 6f 72 20 73 6f 66 74 77 61 72 65 20 77 68 for.permission...For.software.wh
3b20 69 63 68 20 69 73 20 63 6f 70 79 72 69 67 68 74 65 64 20 62 79 20 74 68 65 20 46 72 65 65 0a 53 ich.is.copyrighted.by.the.Free.S
3b40 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 oftware.Foundation,.write.to.the
3b60 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 3b 20 77 65 20 73 6f .Free.Software.Foundation;.we.so
3b80 6d 65 74 69 6d 65 73 0a 6d 61 6b 65 20 65 78 63 65 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 69 73 metimes.make.exceptions.for.this
3ba0 2e 20 20 4f 75 72 20 64 65 63 69 73 69 6f 6e 20 77 69 6c 6c 20 62 65 20 67 75 69 64 65 64 20 62 ...Our.decision.will.be.guided.b
3bc0 79 20 74 68 65 20 74 77 6f 20 67 6f 61 6c 73 0a 6f 66 20 70 72 65 73 65 72 76 69 6e 67 20 74 68 y.the.two.goals.of.preserving.th
3be0 65 20 66 72 65 65 20 73 74 61 74 75 73 20 6f 66 20 61 6c 6c 20 64 65 72 69 76 61 74 69 76 65 73 e.free.status.of.all.derivatives
3c00 20 6f 66 20 6f 75 72 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 61 6e 64 0a 6f 66 20 70 72 6f .of.our.free.software.and.of.pro
3c20 6d 6f 74 69 6e 67 20 74 68 65 20 73 68 61 72 69 6e 67 20 61 6e 64 20 72 65 75 73 65 20 6f 66 20 moting.the.sharing.and.reuse.of.
3c40 73 6f 66 74 77 61 72 65 20 67 65 6e 65 72 61 6c 6c 79 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 software.generally..............
3c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 4f 20 57 41 52 52 41 4e 54 59 0a 0a 20 20 .................NO.WARRANTY....
3c80 31 31 2e 20 42 45 43 41 55 53 45 20 54 48 45 20 50 52 4f 47 52 41 4d 20 49 53 20 4c 49 43 45 4e 11..BECAUSE.THE.PROGRAM.IS.LICEN
3ca0 53 45 44 20 46 52 45 45 20 4f 46 20 43 48 41 52 47 45 2c 20 54 48 45 52 45 20 49 53 20 4e 4f 20 SED.FREE.OF.CHARGE,.THERE.IS.NO.
3cc0 57 41 52 52 41 4e 54 59 0a 46 4f 52 20 54 48 45 20 50 52 4f 47 52 41 4d 2c 20 54 4f 20 54 48 45 WARRANTY.FOR.THE.PROGRAM,.TO.THE
3ce0 20 45 58 54 45 4e 54 20 50 45 52 4d 49 54 54 45 44 20 42 59 20 41 50 50 4c 49 43 41 42 4c 45 20 .EXTENT.PERMITTED.BY.APPLICABLE.
3d00 4c 41 57 2e 20 20 45 58 43 45 50 54 20 57 48 45 4e 0a 4f 54 48 45 52 57 49 53 45 20 53 54 41 54 LAW...EXCEPT.WHEN.OTHERWISE.STAT
3d20 45 44 20 49 4e 20 57 52 49 54 49 4e 47 20 54 48 45 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 ED.IN.WRITING.THE.COPYRIGHT.HOLD
3d40 45 52 53 20 41 4e 44 2f 4f 52 20 4f 54 48 45 52 20 50 41 52 54 49 45 53 0a 50 52 4f 56 49 44 45 ERS.AND/OR.OTHER.PARTIES.PROVIDE
3d60 20 54 48 45 20 50 52 4f 47 52 41 4d 20 22 41 53 20 49 53 22 20 57 49 54 48 4f 55 54 20 57 41 52 .THE.PROGRAM."AS.IS".WITHOUT.WAR
3d80 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 45 49 54 48 45 52 20 45 58 50 52 45 53 RANTY.OF.ANY.KIND,.EITHER.EXPRES
3da0 53 45 44 0a 4f 52 20 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 SED.OR.IMPLIED,.INCLUDING,.BUT.N
3dc0 4f 54 20 4c 49 4d 49 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 OT.LIMITED.TO,.THE.IMPLIED.WARRA
3de0 4e 54 49 45 53 20 4f 46 0a 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 41 4e 44 20 46 49 54 NTIES.OF.MERCHANTABILITY.AND.FIT
3e00 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 20 20 NESS.FOR.A.PARTICULAR.PURPOSE...
3e20 54 48 45 20 45 4e 54 49 52 45 20 52 49 53 4b 20 41 53 0a 54 4f 20 54 48 45 20 51 55 41 4c 49 54 THE.ENTIRE.RISK.AS.TO.THE.QUALIT
3e40 59 20 41 4e 44 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 Y.AND.PERFORMANCE.OF.THE.PROGRAM
3e60 20 49 53 20 57 49 54 48 20 59 4f 55 2e 20 20 53 48 4f 55 4c 44 20 54 48 45 0a 50 52 4f 47 52 41 .IS.WITH.YOU...SHOULD.THE.PROGRA
3e80 4d 20 50 52 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 M.PROVE.DEFECTIVE,.YOU.ASSUME.TH
3ea0 45 20 43 4f 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 E.COST.OF.ALL.NECESSARY.SERVICIN
3ec0 47 2c 0a 52 45 50 41 49 52 20 4f 52 20 43 4f 52 52 45 43 54 49 4f 4e 2e 0a 0a 20 20 31 32 2e 20 G,.REPAIR.OR.CORRECTION.....12..
3ee0 49 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 IN.NO.EVENT.UNLESS.REQUIRED.BY.A
3f00 50 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 PPLICABLE.LAW.OR.AGREED.TO.IN.WR
3f20 49 54 49 4e 47 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 ITING.WILL.ANY.COPYRIGHT.HOLDER,
3f40 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
3f60 46 59 20 41 4e 44 2f 4f 52 0a 52 45 44 49 53 54 52 49 42 55 54 45 20 54 48 45 20 50 52 4f 47 52 FY.AND/OR.REDISTRIBUTE.THE.PROGR
3f80 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 45 AM.AS.PERMITTED.ABOVE,.BE.LIABLE
3fa0 20 54 4f 20 59 4f 55 20 46 4f 52 20 44 41 4d 41 47 45 53 2c 0a 49 4e 43 4c 55 44 49 4e 47 20 41 .TO.YOU.FOR.DAMAGES,.INCLUDING.A
3fc0 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 4c 20 NY.GENERAL,.SPECIAL,.INCIDENTAL.
3fe0 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 4e 47 OR.CONSEQUENTIAL.DAMAGES.ARISING
4000 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 54 4f 20 .OUT.OF.THE.USE.OR.INABILITY.TO.
4020 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 54 20 4e USE.THE.PROGRAM.(INCLUDING.BUT.N
4040 4f 54 20 4c 49 4d 49 54 45 44 0a 54 4f 20 4c 4f 53 53 20 4f 46 20 44 41 54 41 20 4f 52 20 44 41 OT.LIMITED.TO.LOSS.OF.DATA.OR.DA
4060 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 20 4f 52 20 TA.BEING.RENDERED.INACCURATE.OR.
4080 4c 4f 53 53 45 53 20 53 55 53 54 41 49 4e 45 44 20 42 59 0a 59 4f 55 20 4f 52 20 54 48 49 52 44 LOSSES.SUSTAINED.BY.YOU.OR.THIRD
40a0 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 45 20 50 52 4f .PARTIES.OR.A.FAILURE.OF.THE.PRO
40c0 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 48 45 52 0a 50 GRAM.TO.OPERATE.WITH.ANY.OTHER.P
40e0 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 44 45 52 20 4f 52 ROGRAMS),.EVEN.IF.SUCH.HOLDER.OR
4100 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 53 45 44 20 4f 46 .OTHER.PARTY.HAS.BEEN.ADVISED.OF
4120 20 54 48 45 0a 50 4f 53 53 49 42 49 4c 49 54 59 20 4f 46 20 53 55 43 48 20 44 41 4d 41 47 45 53 .THE.POSSIBILITY.OF.SUCH.DAMAGES
4140 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 4e 44 20 4f 46 20 54 ........................END.OF.T
4160 45 52 4d 53 20 41 4e 44 20 43 4f 4e 44 49 54 49 4f 4e 53 0a 0a 20 20 20 20 20 20 20 20 20 20 20 ERMS.AND.CONDITIONS.............
4180 20 48 6f 77 20 74 6f 20 41 70 70 6c 79 20 54 68 65 73 65 20 54 65 72 6d 73 20 74 6f 20 59 6f 75 .How.to.Apply.These.Terms.to.You
41a0 72 20 4e 65 77 20 50 72 6f 67 72 61 6d 73 0a 0a 20 20 49 66 20 79 6f 75 20 64 65 76 65 6c 6f 70 r.New.Programs....If.you.develop
41c0 20 61 20 6e 65 77 20 70 72 6f 67 72 61 6d 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 20 69 74 20 .a.new.program,.and.you.want.it.
41e0 74 6f 20 62 65 20 6f 66 20 74 68 65 20 67 72 65 61 74 65 73 74 0a 70 6f 73 73 69 62 6c 65 20 75 to.be.of.the.greatest.possible.u
4200 73 65 20 74 6f 20 74 68 65 20 70 75 62 6c 69 63 2c 20 74 68 65 20 62 65 73 74 20 77 61 79 20 74 se.to.the.public,.the.best.way.t
4220 6f 20 61 63 68 69 65 76 65 20 74 68 69 73 20 69 73 20 74 6f 20 6d 61 6b 65 20 69 74 0a 66 72 65 o.achieve.this.is.to.make.it.fre
4240 65 20 73 6f 66 74 77 61 72 65 20 77 68 69 63 68 20 65 76 65 72 79 6f 6e 65 20 63 61 6e 20 72 65 e.software.which.everyone.can.re
4260 64 69 73 74 72 69 62 75 74 65 20 61 6e 64 20 63 68 61 6e 67 65 20 75 6e 64 65 72 20 74 68 65 73 distribute.and.change.under.thes
4280 65 20 74 65 72 6d 73 2e 0a 0a 20 20 54 6f 20 64 6f 20 73 6f 2c 20 61 74 74 61 63 68 20 74 68 65 e.terms.....To.do.so,.attach.the
42a0 20 66 6f 6c 6c 6f 77 69 6e 67 20 6e 6f 74 69 63 65 73 20 74 6f 20 74 68 65 20 70 72 6f 67 72 61 .following.notices.to.the.progra
42c0 6d 2e 20 20 49 74 20 69 73 20 73 61 66 65 73 74 0a 74 6f 20 61 74 74 61 63 68 20 74 68 65 6d 20 m...It.is.safest.to.attach.them.
42e0 74 6f 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 65 61 63 68 20 73 6f 75 72 63 65 20 66 69 6c 65 to.the.start.of.each.source.file
4300 20 74 6f 20 6d 6f 73 74 20 65 66 66 65 63 74 69 76 65 6c 79 0a 63 6f 6e 76 65 79 20 74 68 65 20 .to.most.effectively.convey.the.
4320 65 78 63 6c 75 73 69 6f 6e 20 6f 66 20 77 61 72 72 61 6e 74 79 3b 20 61 6e 64 20 65 61 63 68 20 exclusion.of.warranty;.and.each.
4340 66 69 6c 65 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 74 20 6c 65 61 73 74 0a 74 68 65 20 22 63 file.should.have.at.least.the."c
4360 6f 70 79 72 69 67 68 74 22 20 6c 69 6e 65 20 61 6e 64 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 opyright".line.and.a.pointer.to.
4380 77 68 65 72 65 20 74 68 65 20 66 75 6c 6c 20 6e 6f 74 69 63 65 20 69 73 20 66 6f 75 6e 64 2e 0a where.the.full.notice.is.found..
43a0 0a 20 20 20 20 3c 6f 6e 65 20 6c 69 6e 65 20 74 6f 20 67 69 76 65 20 74 68 65 20 70 72 6f 67 72 .....<one.line.to.give.the.progr
43c0 61 6d 27 73 20 6e 61 6d 65 20 61 6e 64 20 61 20 62 72 69 65 66 20 69 64 65 61 20 6f 66 20 77 68 am's.name.and.a.brief.idea.of.wh
43e0 61 74 20 69 74 20 64 6f 65 73 2e 3e 0a 20 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 3c at.it.does.>.....Copyright.(C).<
4400 79 65 61 72 3e 20 20 3c 6e 61 6d 65 20 6f 66 20 61 75 74 68 6f 72 3e 0a 0a 20 20 20 20 54 68 69 year>..<name.of.author>......Thi
4420 73 20 70 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 s.program.is.free.software:.you.
4440 63 61 6e 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 can.redistribute.it.and/or.modif
4460 79 0a 20 20 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 y.....it.under.the.terms.of.the.
4480 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 20 61 73 20 70 75 GNU.General.Public.License.as.pu
44a0 62 6c 69 73 68 65 64 20 62 79 0a 20 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 blished.by.....the.Free.Software
44c0 20 46 6f 75 6e 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 .Foundation,.either.version.2.of
44e0 20 74 68 65 20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 .the.License,.or.....(at.your.op
4500 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 20 54 68 tion).any.later.version.......Th
4520 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 20 69 6e 20 74 68 65 is.program.is.distributed.in.the
4540 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 66 75 6c 2c 0a 20 20 .hope.that.it.will.be.useful,...
4560 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 3b 20 77 69 74 68 ..but.WITHOUT.ANY.WARRANTY;.with
4580 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 6e 74 79 20 6f 66 out.even.the.implied.warranty.of
45a0 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.
45c0 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
45e0 68 65 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 73 he.....GNU.General.Public.Licens
4600 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 20 59 6f 75 20 73 68 6f e.for.more.details.......You.sho
4620 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 68 65 20 uld.have.received.a.copy.of.the.
4640 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 0a 20 20 20 20 61 GNU.General.Public.License.....a
4660 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 6e 6f 74 2c long.with.this.program...If.not,
4680 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 65 6e 73 65 .see.<http://www.gnu.org/license
46a0 73 2f 3e 2e 0a 0a 41 6c 73 6f 20 61 64 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 68 6f s/>...Also.add.information.on.ho
46c0 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 6f 6e 69 63 20 61 w.to.contact.you.by.electronic.a
46e0 6e 64 20 70 61 70 65 72 20 6d 61 69 6c 2e 0a 0a 49 66 20 74 68 65 20 70 72 6f 67 72 61 6d 20 69 nd.paper.mail...If.the.program.i
4700 73 20 69 6e 74 65 72 61 63 74 69 76 65 2c 20 6d 61 6b 65 20 69 74 20 6f 75 74 70 75 74 20 61 20 s.interactive,.make.it.output.a.
4720 73 68 6f 72 74 20 6e 6f 74 69 63 65 20 6c 69 6b 65 20 74 68 69 73 0a 77 68 65 6e 20 69 74 20 73 short.notice.like.this.when.it.s
4740 74 61 72 74 73 20 69 6e 20 61 6e 20 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f 64 65 3a 0a 0a 20 tarts.in.an.interactive.mode:...
4760 20 20 20 47 6e 6f 6d 6f 76 69 73 69 6f 6e 20 76 65 72 73 69 6f 6e 20 36 39 2c 20 43 6f 70 79 72 ...Gnomovision.version.69,.Copyr
4780 69 67 68 74 20 28 43 29 20 3c 79 65 61 72 3e 20 20 3c 6e 61 6d 65 20 6f 66 20 61 75 74 68 6f 72 ight.(C).<year>..<name.of.author
47a0 3e 0a 20 20 20 20 47 6e 6f 6d 6f 76 69 73 69 6f 6e 20 63 6f 6d 65 73 20 77 69 74 68 20 41 42 53 >.....Gnomovision.comes.with.ABS
47c0 4f 4c 55 54 45 4c 59 20 4e 4f 20 57 41 52 52 41 4e 54 59 3b 20 66 6f 72 20 64 65 74 61 69 6c 73 OLUTELY.NO.WARRANTY;.for.details
47e0 20 74 79 70 65 20 60 73 68 6f 77 20 77 27 2e 0a 20 20 20 20 54 68 69 73 20 69 73 20 66 72 65 65 .type.`show.w'......This.is.free
4800 20 73 6f 66 74 77 61 72 65 2c 20 61 6e 64 20 79 6f 75 20 61 72 65 20 77 65 6c 63 6f 6d 65 20 74 .software,.and.you.are.welcome.t
4820 6f 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 0a 20 20 20 20 75 6e 64 65 72 20 63 65 72 74 o.redistribute.it.....under.cert
4840 61 69 6e 20 63 6f 6e 64 69 74 69 6f 6e 73 3b 20 74 79 70 65 20 60 73 68 6f 77 20 63 27 20 66 6f ain.conditions;.type.`show.c'.fo
4860 72 20 64 65 74 61 69 6c 73 2e 0a 0a 54 68 65 20 68 79 70 6f 74 68 65 74 69 63 61 6c 20 63 6f 6d r.details...The.hypothetical.com
4880 6d 61 6e 64 73 20 60 73 68 6f 77 20 77 27 20 61 6e 64 20 60 73 68 6f 77 20 63 27 20 73 68 6f 75 mands.`show.w'.and.`show.c'.shou
48a0 6c 64 20 73 68 6f 77 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 0a 70 61 72 74 73 20 6f 66 ld.show.the.appropriate.parts.of
48c0 20 74 68 65 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 2e 20 20 4f 66 .the.General.Public.License...Of
48e0 20 63 6f 75 72 73 65 2c 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 20 79 6f 75 20 75 73 65 20 6d 61 .course,.the.commands.you.use.ma
4900 79 0a 62 65 20 63 61 6c 6c 65 64 20 73 6f 6d 65 74 68 69 6e 67 20 6f 74 68 65 72 20 74 68 61 6e y.be.called.something.other.than
4920 20 60 73 68 6f 77 20 77 27 20 61 6e 64 20 60 73 68 6f 77 20 63 27 3b 20 74 68 65 79 20 63 6f 75 .`show.w'.and.`show.c';.they.cou
4940 6c 64 20 65 76 65 6e 20 62 65 0a 6d 6f 75 73 65 2d 63 6c 69 63 6b 73 20 6f 72 20 6d 65 6e 75 20 ld.even.be.mouse-clicks.or.menu.
4960 69 74 65 6d 73 2d 2d 77 68 61 74 65 76 65 72 20 73 75 69 74 73 20 79 6f 75 72 20 70 72 6f 67 72 items--whatever.suits.your.progr
4980 61 6d 2e 0a 0a 59 6f 75 20 73 68 6f 75 6c 64 20 61 6c 73 6f 20 67 65 74 20 79 6f 75 72 20 65 6d am...You.should.also.get.your.em
49a0 70 6c 6f 79 65 72 20 28 69 66 20 79 6f 75 20 77 6f 72 6b 20 61 73 20 61 20 70 72 6f 67 72 61 6d ployer.(if.you.work.as.a.program
49c0 6d 65 72 29 20 6f 72 20 79 6f 75 72 0a 73 63 68 6f 6f 6c 2c 20 69 66 20 61 6e 79 2c 20 74 6f 20 mer).or.your.school,.if.any,.to.
49e0 73 69 67 6e 20 61 20 22 63 6f 70 79 72 69 67 68 74 20 64 69 73 63 6c 61 69 6d 65 72 22 20 66 6f sign.a."copyright.disclaimer".fo
4a00 72 20 74 68 65 20 70 72 6f 67 72 61 6d 2c 20 69 66 0a 6e 65 63 65 73 73 61 72 79 2e 20 20 48 65 r.the.program,.if.necessary...He
4a20 72 65 20 69 73 20 61 20 73 61 6d 70 6c 65 3b 20 61 6c 74 65 72 20 74 68 65 20 6e 61 6d 65 73 3a re.is.a.sample;.alter.the.names:
4a40 0a 0a 20 20 59 6f 79 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 ....Yoyodyne,.Inc.,.hereby.discl
4a60 61 69 6d 73 20 61 6c 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 aims.all.copyright.interest.in.t
4a80 68 65 20 70 72 6f 67 72 61 6d 0a 20 20 60 47 6e 6f 6d 6f 76 69 73 69 6f 6e 27 20 28 77 68 69 63 he.program...`Gnomovision'.(whic
4aa0 68 20 6d 61 6b 65 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 h.makes.passes.at.compilers).wri
4ac0 74 74 65 6e 20 62 79 20 4a 61 6d 65 73 20 48 61 63 6b 65 72 2e 0a 0a 20 20 3c 73 69 67 6e 61 74 tten.by.James.Hacker.....<signat
4ae0 75 72 65 20 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 0a 20 20 ure.of.Ty.Coon>,.1.April.1989...
4b00 54 79 20 43 6f 6f 6e 2c 20 50 72 65 73 69 64 65 6e 74 20 6f 66 20 56 69 63 65 0a 0a 54 68 69 73 Ty.Coon,.President.of.Vice..This
4b20 20 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 .General.Public.License.does.not
4b40 20 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 .permit.incorporating.your.progr
4b60 61 6d 20 69 6e 74 6f 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 am.into.proprietary.programs...I
4b80 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
4ba0 69 62 72 61 72 79 2c 20 79 6f 75 20 6d 61 79 0a 63 6f 6e 73 69 64 65 72 20 69 74 20 6d 6f 72 65 ibrary,.you.may.consider.it.more
4bc0 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 69 .useful.to.permit.linking.propri
4be0 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 0a 6c 69 62 72 etary.applications.with.the.libr
4c00 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 20 74 ary...If.this.is.what.you.want.t
4c20 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 61 6c o.do,.use.the.GNU.Lesser.General
4c40 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 69 73 20 .Public.License.instead.of.this.
4c60 4c 69 63 65 6e 73 65 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 License.........................
4c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4e00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 43 68 61 6e 67 65 4c 6f 67 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/ChangeLog.........
4e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4e60 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
4e80 30 30 33 33 32 32 33 00 31 33 36 37 33 34 34 36 34 30 36 00 30 30 31 33 34 33 30 00 30 00 00 00 0033223.13673446406.0013430.0...
4ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4f00 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...................
4f20 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...................
4f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5000 32 30 32 30 2d 30 36 2d 32 30 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 2020-06-20..Antonio.Diaz.Diaz..<
5020 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
5040 32 2d 72 63 32 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 63 6f 6e 66 69 67 75 72 65 3a 20 42 75 2-rc2.released...*.configure:.Bu
5060 69 6c 64 2c 20 63 68 65 63 6b 2c 20 61 6e 64 20 69 6e 73 74 61 6c 6c 20 77 69 74 68 6f 75 74 20 ild,.check,.and.install.without.
5080 27 6d 61 6b 65 27 2e 0a 0a 32 30 32 30 2d 30 35 2d 32 39 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 'make'...2020-05-29..Antonio.Dia
50a0 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 65 z.Diaz..<antonio@gnu.org>...*.Ve
50c0 72 73 69 6f 6e 20 31 2e 32 32 2d 72 63 31 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 54 68 69 73 rsion.1.22-rc1.released...*.This
50e0 20 76 65 72 73 69 6f 6e 20 28 68 6f 70 65 66 75 6c 6c 79 29 20 63 6f 6d 70 6c 65 74 65 73 20 74 .version.(hopefully).completes.t
5100 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 27 2d 6f 27 2e 0a 09 2a 20 6d 61 he.implementation.of.'-o'...*.ma
5120 69 6e 2e 63 63 20 28 6f 70 65 6e 5f 69 6e 73 74 72 65 61 6d 29 3a 20 52 65 61 64 20 66 72 6f 6d in.cc.(open_instream):.Read.from
5140 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 72 20 74 68 65 .non-regular.files.if.either.the
5160 0a 09 20 20 6f 70 74 69 6f 6e 20 27 2d 63 27 20 6f 72 20 74 68 65 20 6f 70 74 69 6f 6e 20 27 2d ....option.'-c'.or.the.option.'-
5180 6f 27 20 69 73 20 73 70 65 63 69 66 69 65 64 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 6d 61 69 o'.is.specified...*.main.cc.(mai
51a0 6e 29 3a 20 57 68 65 6e 20 75 73 69 6e 67 20 27 2d 6f 27 2c 20 64 6f 20 6e 6f 74 20 6c 65 61 76 n):.When.using.'-o',.do.not.leav
51c0 65 20 61 6e 20 65 6d 70 74 79 20 6f 75 74 70 75 74 20 66 69 6c 65 0a 09 20 20 69 66 20 61 6c 6c e.an.empty.output.file....if.all
51e0 20 69 6e 70 75 74 20 66 69 6c 65 73 20 66 61 69 6c 20 74 6f 20 6f 70 65 6e 20 61 6e 64 20 73 74 .input.files.fail.to.open.and.st
5200 61 6e 64 61 72 64 20 69 6e 70 75 74 20 69 73 20 6e 6f 74 20 75 73 65 64 2e 0a 09 20 20 4d 61 6b andard.input.is.not.used.....Mak
5220 65 20 27 2d 6f 20 2d 27 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 27 2d 63 27 2e 0a 09 20 20 e.'-o.-'.equivalent.to.'-c'.....
5240 4d 61 6b 65 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 Make.'-c'.and.'-o'.check.whether
5260 20 74 68 65 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 .the.output.is.a.terminal.only.o
5280 6e 63 65 2e 0a 0a 32 30 32 30 2d 30 35 2d 31 34 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 nce...2020-05-14..Antonio.Diaz.D
52a0 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 73 69 iaz..<antonio@gnu.org>...*.Versi
52c0 6f 6e 20 31 2e 32 32 2d 70 72 65 31 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 6d 61 69 6e 2e 63 on.1.22-pre1.released...*.main.c
52e0 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
5300 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'.
5320 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
5340 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 2a 20 52 65 70 6c .file.instead.of.stdout...*.Repl
5360 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'
5380 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...*.
53a0 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.
53c0 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...
53e0 2a 20 6d 61 69 6e 2e 63 63 3a 20 53 65 74 20 61 20 76 61 6c 69 64 20 69 6e 76 6f 63 61 74 69 6f *.main.cc:.Set.a.valid.invocatio
5400 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 0a 09 2a 20 44 6f 63 n_name.even.if.argc.==.0...*.Doc
5420 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 7a 20 69 6e 20 ument.extraction.from.tar.lz.in.
5440 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 61 67 65 2e 0a manual,.'--help',.and.man.page..
5460 09 2a 20 6c 7a 69 70 2e 74 65 78 69 3a 20 53 65 76 65 72 61 6c 20 66 69 78 65 73 20 61 6e 64 20 .*.lzip.texi:.Several.fixes.and.
5480 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.
54a0 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
54c0 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
54e0 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...
5500 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
5520 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
5540 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_
5560 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
5580 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
55a0 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(
55c0 20 69 6e 66 64 20 29 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 43 6f 6d 70 69 6c 65 20 6f 6e 20 .infd.)...*.main.cc:.Compile.on.
55e0 44 4f 53 20 77 69 74 68 20 44 4a 47 50 50 2e 0a 09 2a 20 46 69 78 20 61 20 47 43 43 20 77 61 72 DOS.with.DJGPP...*.Fix.a.GCC.war
5600 6e 69 6e 67 20 61 62 6f 75 74 20 63 61 74 63 68 69 6e 67 20 73 74 64 3a 3a 62 61 64 5f 61 6c 6c ning.about.catching.std::bad_all
5620 6f 63 20 62 79 20 76 61 6c 75 65 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 3a 20 49 6d 70 72 6f oc.by.value...*.lzip.texi:.Impro
5640 76 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 27 2d 30 2e 2e 2d 39 27 2c 20 27 2d 6d 27 ve.description.of.'-0..-9',.'-m'
5660 2c 20 61 6e 64 20 27 2d 73 27 2e 0a 09 2a 20 63 6f 6e 66 69 67 75 72 65 3a 20 41 63 63 65 70 74 ,.and.'-s'...*.configure:.Accept
5680 20 61 70 70 65 6e 64 69 6e 67 20 74 6f 20 43 58 58 46 4c 41 47 53 2c 20 27 43 58 58 46 4c 41 47 .appending.to.CXXFLAGS,.'CXXFLAG
56a0 53 2b 3d 4f 50 54 49 4f 4e 53 27 2e 0a 09 2a 20 49 4e 53 54 41 4c 4c 3a 20 44 6f 63 75 6d 65 6e S+=OPTIONS'...*.INSTALL:.Documen
56c0 74 20 75 73 65 20 6f 66 20 43 58 58 46 4c 41 47 53 2b 3d 27 2d 44 20 5f 5f 55 53 45 5f 4d 49 4e t.use.of.CXXFLAGS+='-D.__USE_MIN
56e0 47 57 5f 41 4e 53 49 5f 53 54 44 49 4f 27 2e 0a 0a 32 30 31 38 2d 30 32 2d 31 31 20 20 41 6e 74 GW_ANSI_STDIO'...2018-02-11..Ant
5700 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
5720 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 32 30 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 >...*.Version.1.20.released...*.
5740 4e 65 77 20 6f 70 74 69 6f 6e 20 27 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 27 2e 0a 09 New.option.'--loose-trailing'...
5760 2a 20 49 6d 70 72 6f 76 65 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 20 64 65 74 65 63 74 69 *.Improve.corrupt.header.detecti
5780 6f 6e 20 74 6f 20 48 44 3d 33 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 53 68 6f 77 20 63 6f 72 on.to.HD=3...*.main.cc:.Show.cor
57a0 72 75 70 74 20 6f 72 20 74 72 75 6e 63 61 74 65 64 20 68 65 61 64 65 72 20 69 6e 20 6d 75 6c 74 rupt.or.truncated.header.in.mult
57c0 69 6d 65 6d 62 65 72 20 66 69 6c 65 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 6d 61 69 6e 29 3a imember.file...*.main.cc.(main):
57e0 20 4f 70 74 69 6f 6e 20 27 2d 53 2c 20 2d 2d 76 6f 6c 75 6d 65 2d 73 69 7a 65 27 20 6e 6f 77 20 .Option.'-S,.--volume-size'.now.
5800 6b 65 65 70 73 20 69 6e 70 75 74 20 66 69 6c 65 73 2e 0a 09 2a 20 65 6e 63 6f 64 65 72 5f 62 61 keeps.input.files...*.encoder_ba
5820 73 65 2e 2a 3a 20 41 64 6a 75 73 74 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 66 6f 72 se.*:.Adjust.dictionary.size.for
5840 20 65 61 63 68 20 6d 65 6d 62 65 72 2e 0a 09 2a 20 52 65 70 6c 61 63 65 20 27 62 69 74 73 2f 62 .each.member...*.Replace.'bits/b
5860 79 74 65 27 20 77 69 74 68 20 69 6e 76 65 72 73 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 yte'.with.inverse.compression.ra
5880 74 69 6f 20 69 6e 20 6f 75 74 70 75 74 2e 0a 09 2a 20 53 68 6f 77 20 70 72 6f 67 72 65 73 73 20 tio.in.output...*.Show.progress.
58a0 6f 66 20 64 65 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 of.decompression.at.verbosity.le
58c0 76 65 6c 20 32 20 28 2d 76 76 29 2e 0a 09 2a 20 53 68 6f 77 20 70 72 6f 67 72 65 73 73 20 6f 66 vel.2.(-vv)...*.Show.progress.of
58e0 20 28 64 65 29 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 6e 6c 79 20 69 66 20 73 74 64 65 72 72 20 .(de)compression.only.if.stderr.
5900 69 73 20 61 20 74 65 72 6d 69 6e 61 6c 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 53 68 6f 77 20 is.a.terminal...*.main.cc:.Show.
5920 66 69 6e 61 6c 20 64 69 61 67 6e 6f 73 74 69 63 20 77 68 65 6e 20 74 65 73 74 69 6e 67 20 6d 75 final.diagnostic.when.testing.mu
5940 6c 74 69 70 6c 65 20 66 69 6c 65 73 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 44 6f 20 6e 6f 74 ltiple.files...*.main.cc:.Do.not
5960 20 61 64 64 20 61 20 73 65 63 6f 6e 64 20 65 78 74 65 6e 73 69 6f 6e 20 27 2e 6c 7a 27 20 74 6f .add.a.second.extension.'.lz'.to
5980 20 74 68 65 20 61 72 67 20 6f 66 20 27 2d 6f 27 2e 0a 09 2a 20 64 65 63 6f 64 65 72 2e 63 63 20 .the.arg.of.'-o'...*.decoder.cc.
59a0 28 76 65 72 69 66 79 5f 74 72 61 69 6c 65 72 29 3a 20 53 68 6f 77 20 73 74 6f 72 65 64 20 73 69 (verify_trailer):.Show.stored.si
59c0 7a 65 73 20 61 6c 73 6f 20 69 6e 20 68 65 78 2e 0a 09 20 20 53 68 6f 77 20 64 69 63 74 69 6f 6e zes.also.in.hex.....Show.diction
59e0 61 72 79 20 73 69 7a 65 20 61 74 20 76 65 72 62 6f 73 69 74 79 20 6c 65 76 65 6c 20 34 20 28 2d ary.size.at.verbosity.level.4.(-
5a00 76 76 76 76 29 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 vvvv)...*.lzip.texi:.New.chapter
5a20 20 27 4d 65 61 6e 69 6e 67 20 6f 66 20 6c 7a 69 70 27 73 20 6f 75 74 70 75 74 27 2e 0a 0a 32 30 .'Meaning.of.lzip's.output'...20
5a40 31 37 2d 30 34 2d 31 33 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 20 20 3c 61 6e 17-04-13..Antonio.Diaz.Diaz..<an
5a60 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 31 39 20 tonio@gnu.org>...*.Version.1.19.
5a80 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 54 68 65 20 6f 70 74 69 6f 6e 20 27 2d 6c 2c 20 2d 2d 6c released...*.The.option.'-l,.--l
5aa0 69 73 74 27 20 68 61 73 20 62 65 65 6e 20 70 6f 72 74 65 64 20 66 72 6f 6d 20 6c 7a 69 70 72 65 ist'.has.been.ported.from.lzipre
5ac0 63 6f 76 65 72 2e 0a 09 2a 20 44 6f 6e 27 74 20 61 6c 6c 6f 77 20 6d 69 78 69 6e 67 20 64 69 66 cover...*.Don't.allow.mixing.dif
5ae0 66 65 72 65 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 28 2d 64 2c 20 2d 6c 20 6f 72 20 2d 74 29 ferent.operations.(-d,.-l.or.-t)
5b00 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 20 ...*.Compression.time.of.option.
5b20 27 2d 30 27 20 68 61 73 20 62 65 65 6e 20 73 6c 69 67 68 74 6c 79 20 72 65 64 75 63 65 64 2e 0a '-0'.has.been.slightly.reduced..
5b40 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
5b60 65 64 75 63 65 64 20 62 79 20 32 25 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 43 6f 6e 74 69 6e educed.by.2%...*.main.cc:.Contin
5b80 75 65 20 74 65 73 74 69 6e 67 20 69 66 20 61 6e 79 20 69 6e 70 75 74 20 66 69 6c 65 20 69 73 20 ue.testing.if.any.input.file.is.
5ba0 61 20 74 65 72 6d 69 6e 61 6c 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 53 68 6f 77 20 74 72 61 a.terminal...*.main.cc:.Show.tra
5bc0 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 6c 20 61 iling.data.in.both.hexadecimal.a
5be0 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 68 66 69 nd.ASCII...*.encoder.cc.(Matchfi
5c00 6e 64 65 72 5f 62 61 73 65 29 3a 20 56 65 72 69 66 79 20 74 68 65 20 73 69 7a 65 20 70 61 73 73 nder_base):.Verify.the.size.pass
5c20 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 6d 70 ed.to.new...*.lzip_index.cc:.Imp
5c40 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 20 74 rove.detection.of.bad.dict.and.t
5c60 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 20 6d railing.data...*.lzip.h:.Unify.m
5c80 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 67 20 essages.for.bad.magic,.trailing.
5ca0 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 6f 20 data,.etc...2016-05-14..Antonio.
5cc0 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 2a Diaz.Diaz..<antonio@gnu.org>...*
5ce0 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 20 6f .Version.1.18.released...*.New.o
5d00 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 09 2a ption.'-a,.--trailing-error'...*
5d20 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 65 64 .Decompression.time.has.been.red
5d40 75 63 65 64 20 62 79 20 32 25 2e 0a 09 2a 20 64 65 63 6f 64 65 72 2e 63 63 20 28 76 65 72 69 66 uced.by.2%...*.decoder.cc.(verif
5d60 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 6e 61 6c y_trailer):.Remove.test.of.final
5d80 20 63 6f 64 65 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 6d 61 69 6e 29 3a 20 44 65 6c 65 74 65 .code...*.main.cc.(main):.Delete
5da0 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 69 73 20 61 20 74 65 .'--output'.file.if.infd.is.a.te
5dc0 72 6d 69 6e 61 6c 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 6d 61 69 6e 29 3a 20 44 6f 6e 27 74 rminal...*.main.cc.(main):.Don't
5de0 20 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 .use.stdin.more.than.once...*.Re
5e00 6d 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 move.decompression.support.for.v
5e20 65 72 73 69 6f 6e 20 30 20 66 69 6c 65 73 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 3a 20 4e 65 ersion.0.files...*.lzip.texi:.Ne
5e40 77 20 63 68 61 70 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 w.chapter.'Trailing.data'...*.co
5e60 6e 66 69 67 75 72 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 nfigure:.Avoid.warning.on.some.s
5e80 68 65 6c 6c 73 20 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 hells.when.testing.for.g++...*.M
5ea0 61 6b 65 66 69 6c 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 akefile.in:.Detect.the.existence
5ec0 20 6f 66 20 69 6e 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 41 .of.install-info...*.check.sh:.A
5ee0 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.
5f00 74 68 65 20 74 65 73 74 73 2e 0a 09 2a 20 63 68 65 63 6b 2e 73 68 3a 20 44 6f 6e 27 74 20 63 68 the.tests...*.check.sh:.Don't.ch
5f20 65 63 6b 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 73 2e 0a 0a 32 30 31 35 2d 30 37 2d 31 32 20 eck.error.messages...2015-07-12.
5f40 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
5f60 2e 6f 72 67 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 37 20 72 65 6c 65 61 73 65 64 2e .org>...*.Version.1.17.released.
5f80 0a 09 2a 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 ..*.Reorganization.of.the.compre
5fa0 73 73 69 6f 6e 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 ssion.code...*.lzip.texi:.New.ch
5fc0 61 70 74 65 72 20 27 51 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 65 27 2e 0a 09 2a 20 4d 61 apter.'Quality.assurance'...*.Ma
5fe0 6b 65 66 69 6c 65 2e 69 6e 3a 20 4e 65 77 20 74 61 72 67 65 74 73 20 27 69 6e 73 74 61 6c 6c 2a kefile.in:.New.targets.'install*
6000 2d 63 6f 6d 70 72 65 73 73 27 2e 0a 0a 32 30 31 34 2d 30 38 2d 32 36 20 20 41 6e 74 6f 6e 69 6f -compress'...2014-08-26..Antonio
6020 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>...
6040 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 36 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 43 6f 6d 70 *.Version.1.16.released...*.Comp
6060 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 6f 66 20 6f 70 74 69 6f 6e 20 27 2d 39 27 20 68 61 73 ression.ratio.of.option.'-9'.has
6080 20 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 .been.slightly.increased...*.Com
60a0 70 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 pression.time.has.been.reduced.b
60c0 79 20 34 25 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 y.4%...*.Compression.time.of.opt
60e0 69 6f 6e 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 ion.'-0'.has.been.reduced.by.2%.
6100 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 69 ..*.main.cc.(close_and_set_permi
6120 73 73 69 6f 6e 73 29 3a 20 42 65 68 61 76 65 20 6c 69 6b 65 20 27 63 70 20 2d 70 27 2e 0a 09 2a ssions):.Behave.like.'cp.-p'...*
6140 20 4d 69 6e 6f 72 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 .Minor.improvements...*.lzip.tex
6160 69 6e 66 6f 3a 20 52 65 6e 61 6d 65 20 74 6f 20 6c 7a 69 70 2e 74 65 78 69 2e 0a 09 2a 20 43 68 info:.Rename.to.lzip.texi...*.Ch
6180 61 6e 67 65 20 6c 69 63 65 6e 73 65 20 74 6f 20 47 50 4c 20 76 65 72 73 69 6f 6e 20 32 20 6f 72 ange.license.to.GPL.version.2.or
61a0 20 6c 61 74 65 72 2e 0a 0a 32 30 31 33 2d 30 39 2d 32 30 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 .later...2013-09-20..Antonio.Dia
61c0 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 65 z.Diaz..<antonio@gnu.org>...*.Ve
61e0 72 73 69 6f 6e 20 31 2e 31 35 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 53 68 6f 77 20 70 72 6f rsion.1.15.released...*.Show.pro
6200 67 72 65 73 73 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 61 74 20 76 65 72 62 6f 73 69 74 gress.of.compression.at.verbosit
6220 79 20 6c 65 76 65 6c 20 32 20 28 2d 76 76 29 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 73 68 6f y.level.2.(-vv)...*.main.cc.(sho
6240 77 5f 68 65 61 64 65 72 29 3a 20 44 6f 6e 27 74 20 73 68 6f 77 20 68 65 61 64 65 72 20 76 65 72 w_header):.Don't.show.header.ver
6260 73 69 6f 6e 2e 0a 09 2a 20 49 67 6e 6f 72 65 20 6f 70 74 69 6f 6e 20 27 2d 6e 2c 20 2d 2d 74 68 sion...*.Ignore.option.'-n,.--th
6280 72 65 61 64 73 27 20 66 6f 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 70 6c reads'.for.compatibility.with.pl
62a0 7a 69 70 2e 0a 09 2a 20 63 6f 6e 66 69 67 75 72 65 3a 20 4f 70 74 69 6f 6e 73 20 6e 6f 77 20 61 zip...*.configure:.Options.now.a
62c0 63 63 65 70 74 20 61 20 73 65 70 61 72 61 74 65 20 61 72 67 75 6d 65 6e 74 2e 0a 09 2a 20 6c 7a ccept.a.separate.argument...*.lz
62e0 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 53 74 72 65 61 6d 20 ip.texinfo:.New.chapter.'Stream.
6300 66 6f 72 6d 61 74 27 20 61 6e 64 20 61 70 70 65 6e 64 69 78 0a 09 20 20 27 52 65 66 65 72 65 6e format'.and.appendix....'Referen
6320 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 27 2e 0a 0a 32 30 31 33 2d 30 32 2d 31 37 20 20 41 6e ce.source.code'...2013-02-17..An
6340 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 65 6c tonio.Diaz.Diaz..<ant_diaz@telel
6360 69 6e 65 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 34 20 72 65 6c 65 61 73 65 ine.es>...*.Version.1.14.release
6380 64 2e 0a 09 2a 20 4d 75 6c 74 69 2d 73 74 65 70 20 74 72 69 61 6c 73 20 68 61 76 65 20 62 65 65 d...*.Multi-step.trials.have.bee
63a0 6e 20 69 6d 70 6c 65 6d 65 6e 74 65 64 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 n.implemented...*.Compression.ra
63c0 74 69 6f 20 68 61 73 20 62 65 65 6e 20 73 6c 69 67 68 74 6c 79 20 69 6e 63 72 65 61 73 65 64 2e tio.has.been.slightly.increased.
63e0 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 20 72 65 ..*.Compression.time.has.been.re
6400 64 75 63 65 64 20 62 79 20 35 25 2e 0a 09 2a 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 duced.by.5%...*.Decompression.ti
6420 6d 65 20 68 61 73 20 62 65 65 6e 20 72 65 64 75 63 65 64 20 62 79 20 31 32 25 2e 0a 09 2a 20 4d me.has.been.reduced.by.12%...*.M
6440 61 6b 65 66 69 6c 65 2e 69 6e 3a 20 4e 65 77 20 74 61 72 67 65 74 20 27 69 6e 73 74 61 6c 6c 2d akefile.in:.New.target.'install-
6460 62 69 6e 27 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 55 73 65 20 27 73 65 74 6d 6f 64 65 27 20 bin'...*.main.cc:.Use.'setmode'.
6480 69 6e 73 74 65 61 64 20 6f 66 20 27 5f 73 65 74 6d 6f 64 65 27 20 6f 6e 20 57 69 6e 64 6f 77 73 instead.of.'_setmode'.on.Windows
64a0 20 61 6e 64 20 4f 53 2f 32 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 44 65 66 69 6e 65 20 27 73 .and.OS/2...*.main.cc:.Define.'s
64c0 74 72 74 6f 75 6c 6c 27 20 74 6f 20 27 73 74 64 3a 3a 73 74 72 74 6f 75 6c 27 20 6f 6e 20 57 69 trtoull'.to.'std::strtoul'.on.Wi
64e0 6e 64 6f 77 73 2e 0a 0a 32 30 31 32 2d 30 32 2d 32 34 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a ndows...2012-02-24..Antonio.Diaz
6500 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>...
6520 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 33 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 4c 7a 69 70 *.Version.1.13.released...*.Lzip
6540 72 65 63 6f 76 65 72 20 68 61 73 20 62 65 65 6e 20 6d 6f 76 65 64 20 74 6f 20 69 74 73 20 6f 77 recover.has.been.moved.to.its.ow
6560 6e 20 70 61 63 6b 61 67 65 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 63 6c 6f 73 65 5f 61 6e 64 n.package...*.main.cc.(close_and
6580 5f 73 65 74 5f 70 65 72 6d 69 73 73 69 6f 6e 73 29 3a 20 49 6e 61 62 69 6c 69 74 79 20 74 6f 20 _set_permissions):.Inability.to.
65a0 63 68 61 6e 67 65 20 6f 75 74 70 75 74 0a 09 20 20 66 69 6c 65 20 61 74 74 72 69 62 75 74 65 73 change.output....file.attributes
65c0 20 68 61 73 20 62 65 65 6e 20 64 6f 77 6e 67 72 61 64 65 64 20 66 72 6f 6d 20 65 72 72 6f 72 20 .has.been.downgraded.from.error.
65e0 74 6f 20 77 61 72 6e 69 6e 67 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d 65 20 to.warning...*.Compression.time.
6600 6f 66 20 6f 70 74 69 6f 6e 20 27 2d 30 27 20 68 61 73 20 62 65 65 6e 20 72 65 64 75 63 65 64 20 of.option.'-0'.has.been.reduced.
6620 62 79 20 32 25 2e 0a 09 2a 20 52 65 6f 72 67 61 6e 69 7a 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 by.2%...*.Reorganization.of.the.
6640 63 6f 6d 70 72 65 73 73 69 6f 6e 20 63 6f 64 65 2e 0a 09 2a 20 53 6d 61 6c 6c 20 63 68 61 6e 67 compression.code...*.Small.chang
6660 65 20 69 6e 20 27 2d 2d 68 65 6c 70 27 20 6f 75 74 70 75 74 20 61 6e 64 20 6d 61 6e 20 70 61 67 e.in.'--help'.output.and.man.pag
6680 65 2e 0a 09 2a 20 43 68 61 6e 67 65 20 71 75 6f 74 65 20 63 68 61 72 61 63 74 65 72 73 20 69 6e e...*.Change.quote.characters.in
66a0 20 6d 65 73 73 61 67 65 73 20 61 73 20 61 64 76 69 73 65 64 20 62 79 20 47 4e 55 20 53 74 61 6e .messages.as.advised.by.GNU.Stan
66c0 64 61 72 64 73 2e 0a 09 2a 20 63 6f 6e 66 69 67 75 72 65 3a 20 52 65 6e 61 6d 65 20 27 64 61 74 dards...*.configure:.Rename.'dat
66e0 61 64 69 72 27 20 74 6f 20 27 64 61 74 61 72 6f 6f 74 64 69 72 27 2e 0a 09 2a 20 27 75 6e 7a 63 adir'.to.'datarootdir'...*.'unzc
6700 72 61 73 68 2e 63 63 27 20 68 61 73 20 62 65 65 6e 20 6d 6f 76 65 64 20 74 6f 20 70 61 63 6b 61 rash.cc'.has.been.moved.to.packa
6720 67 65 20 27 6c 7a 69 70 72 65 63 6f 76 65 72 27 2e 0a 0a 32 30 31 31 2d 30 34 2d 33 30 20 20 41 ge.'lziprecover'...2011-04-30..A
6740 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 65 ntonio.Diaz.Diaz..<ant_diaz@tele
6760 6c 69 6e 65 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 31 32 20 72 65 6c 65 61 73 line.es>...*.Version.1.12.releas
6780 65 64 2e 0a 09 2a 20 4e 65 77 20 6f 70 74 69 6f 6e 20 27 2d 46 2c 20 2d 2d 72 65 63 6f 6d 70 72 ed...*.New.option.'-F,.--recompr
67a0 65 73 73 27 2e 0a 09 2a 20 65 6e 63 6f 64 65 72 2e 68 20 28 75 70 64 61 74 65 5f 70 72 69 63 65 ess'...*.encoder.h.(update_price
67c0 73 29 3a 20 55 70 64 61 74 65 20 68 69 67 68 20 6c 65 6e 67 74 68 20 73 79 6d 62 6f 6c 20 70 72 s):.Update.high.length.symbol.pr
67e0 69 63 65 73 0a 09 20 20 69 6e 64 65 70 65 6e 64 65 6e 74 6c 79 20 6f 66 20 74 68 65 20 76 61 6c ices....independently.of.the.val
6800 75 65 20 6f 66 20 27 70 6f 73 5f 73 74 61 74 65 27 2e 20 54 68 69 73 20 67 69 76 65 73 20 62 65 ue.of.'pos_state'..This.gives.be
6820 74 74 65 72 0a 09 20 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 66 6f 72 20 6c 61 72 67 65 20 76 61 tter....compression.for.large.va
6840 6c 75 65 73 20 6f 66 20 27 2d 2d 6d 61 74 63 68 2d 6c 65 6e 67 74 68 27 20 77 69 74 68 6f 75 74 lues.of.'--match-length'.without
6860 20 62 65 69 6e 67 0a 09 20 20 73 6c 6f 77 65 72 2e 0a 09 2a 20 65 6e 63 6f 64 65 72 2e 68 20 65 .being....slower...*.encoder.h.e
6880 6e 63 6f 64 65 72 2e 63 63 3a 20 4f 70 74 69 6d 69 7a 65 20 70 61 69 72 20 70 72 69 63 65 20 63 ncoder.cc:.Optimize.pair.price.c
68a0 61 6c 63 75 6c 61 74 69 6f 6e 73 2c 20 72 65 64 75 63 69 6e 67 0a 09 20 20 63 6f 6d 70 72 65 73 alculations,.reducing....compres
68c0 73 69 6f 6e 20 74 69 6d 65 20 66 6f 72 20 6c 61 72 67 65 20 76 61 6c 75 65 73 20 6f 66 20 27 2d sion.time.for.large.values.of.'-
68e0 2d 6d 61 74 63 68 2d 6c 65 6e 67 74 68 27 20 62 79 20 75 70 20 74 6f 20 36 25 2e 0a 09 2a 20 43 -match-length'.by.up.to.6%...*.C
6900 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 20 68 ompression.time.of.option.'-0'.h
6920 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 2e 63 as.been.reduced.by.2%...*.main.c
6940 63 20 28 64 65 63 6f 6d 70 72 65 73 73 29 3a 20 50 72 69 6e 74 20 6f 6e 6c 79 20 6f 6e 65 20 73 c.(decompress):.Print.only.one.s
6960 74 61 74 75 73 20 6c 69 6e 65 20 66 6f 72 20 65 61 63 68 0a 09 20 20 6d 75 6c 74 69 6d 65 6d 62 tatus.line.for.each....multimemb
6980 65 72 20 66 69 6c 65 20 77 68 65 6e 20 6f 6e 6c 79 20 6f 6e 65 20 27 2d 76 27 20 69 73 20 73 70 er.file.when.only.one.'-v'.is.sp
69a0 65 63 69 66 69 65 64 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 64 65 63 6f 6d 70 72 65 73 73 29 ecified...*.main.cc.(decompress)
69c0 3a 20 50 72 69 6e 74 20 75 70 20 74 6f 20 36 20 62 79 74 65 73 20 6f 66 20 74 72 61 69 6c 69 6e :.Print.up.to.6.bytes.of.trailin
69e0 67 20 64 61 74 61 0a 09 20 20 77 68 65 6e 20 27 2d 76 76 76 76 27 20 69 73 20 73 70 65 63 69 66 g.data....when.'-vvvv'.is.specif
6a00 69 65 64 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 6f 70 65 6e 5f 69 6e 73 74 72 65 61 6d 29 3a ied...*.main.cc.(open_instream):
6a20 20 44 6f 6e 27 74 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 .Don't.show.the.message....".and
6a40 20 27 2d 2d 73 74 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 .'--stdout'.was.not.specified".f
6a60 6f 72 20 64 69 72 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 or.directories,.etc...*.lzipreco
6a80 76 65 72 2e 63 63 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 ver.cc:.If.'-v'.is.not.specified
6aa0 20 73 68 6f 77 20 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 .show.errors.only...*.unzcrash.c
6ac0 63 3a 20 55 73 65 20 41 72 67 5f 70 61 72 73 65 72 2e 0a 09 2a 20 75 6e 7a 63 72 61 73 68 2e 63 c:.Use.Arg_parser...*.unzcrash.c
6ae0 63 3a 20 4e 65 77 20 6f 70 74 69 6f 6e 73 20 27 2d 62 2c 20 2d 2d 62 69 74 73 27 2c 20 27 2d 70 c:.New.options.'-b,.--bits',.'-p
6b00 2c 20 2d 2d 70 6f 73 69 74 69 6f 6e 27 2c 20 61 6e 64 0a 09 20 20 27 2d 73 2c 20 2d 2d 73 69 7a ,.--position',.and....'-s,.--siz
6b20 65 27 2e 0a 0a 32 30 31 30 2d 30 39 2d 31 36 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 e'...2010-09-16..Antonio.Diaz.Di
6b40 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 2a 20 56 az..<ant_diaz@teleline.es>...*.V
6b60 65 72 73 69 6f 6e 20 31 2e 31 31 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 4e 65 77 20 6f 70 74 ersion.1.11.released...*.New.opt
6b80 69 6f 6e 20 27 2d 30 27 2c 20 77 68 69 63 68 20 70 72 6f 64 75 63 65 73 20 61 20 63 6f 6d 70 72 ion.'-0',.which.produces.a.compr
6ba0 65 73 73 69 6f 6e 20 73 70 65 65 64 20 61 6e 64 20 72 61 74 69 6f 0a 09 20 20 63 6f 6d 70 61 72 ession.speed.and.ratio....compar
6bc0 61 62 6c 65 20 74 6f 20 74 68 6f 73 65 20 6f 66 20 27 67 7a 69 70 20 2d 39 27 2e 0a 09 2a 20 66 able.to.those.of.'gzip.-9'...*.f
6be0 61 73 74 5f 65 6e 63 6f 64 65 72 2e 68 20 66 61 73 74 5f 65 6e 63 6f 64 65 72 2e 63 63 3a 20 4e ast_encoder.h.fast_encoder.cc:.N
6c00 65 77 20 66 69 6c 65 73 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 4d 61 74 63 68 20 6c 65 6e 67 ew.files...*.main.cc:.Match.leng
6c20 74 68 20 6c 69 6d 69 74 20 73 65 74 20 62 79 20 6f 70 74 69 6f 6e 73 20 2d 31 20 74 6f 20 2d 38 th.limit.set.by.options.-1.to.-8
6c40 20 68 61 73 20 62 65 65 6e 0a 09 20 20 72 65 64 75 63 65 64 20 74 6f 20 65 78 74 65 6e 64 20 72 .has.been....reduced.to.extend.r
6c60 61 6e 67 65 20 6f 66 20 75 73 65 20 74 6f 77 61 72 64 73 20 67 7a 69 70 2e 20 4c 6f 77 65 72 20 ange.of.use.towards.gzip..Lower.
6c80 6e 75 6d 62 65 72 73 20 6e 6f 77 0a 09 20 20 63 6f 6d 70 72 65 73 73 20 6c 65 73 73 20 62 75 74 numbers.now....compress.less.but
6ca0 20 66 61 73 74 65 72 2e 20 28 2d 31 20 6e 6f 77 20 74 61 6b 65 73 20 34 33 25 20 6c 65 73 73 20 .faster..(-1.now.takes.43%.less.
6cc0 74 69 6d 65 20 66 6f 72 20 6f 6e 6c 79 20 32 30 25 0a 09 20 20 6c 61 72 67 65 72 20 63 6f 6d 70 time.for.only.20%....larger.comp
6ce0 72 65 73 73 65 64 20 73 69 7a 65 29 2e 0a 09 20 20 45 78 69 74 20 77 69 74 68 20 73 74 61 74 75 ressed.size).....Exit.with.statu
6d00 73 20 31 20 69 66 20 61 6e 79 20 6f 75 74 70 75 74 20 66 69 6c 65 20 65 78 69 73 74 73 20 61 6e s.1.if.any.output.file.exists.an
6d20 64 20 69 73 20 73 6b 69 70 70 65 64 2e 0a 09 2a 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 d.is.skipped...*.Compression.rat
6d40 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 68 io.of.option.'-9'.has.been.sligh
6d60 74 6c 79 20 69 6e 63 72 65 61 73 65 64 2e 0a 09 2a 20 6c 7a 69 70 72 65 63 6f 76 65 72 2e 63 63 tly.increased...*.lziprecover.cc
6d80 3a 20 4e 65 77 20 6f 70 74 69 6f 6e 20 27 2d 6d 2c 20 2d 2d 6d 65 72 67 65 27 2c 20 77 68 69 63 :.New.option.'-m,.--merge',.whic
6da0 68 20 74 72 69 65 73 20 74 6f 20 70 72 6f 64 75 63 65 20 61 0a 09 20 20 63 6f 72 72 65 63 74 20 h.tries.to.produce.a....correct.
6dc0 66 69 6c 65 20 62 79 20 6d 65 72 67 69 6e 67 20 74 68 65 20 67 6f 6f 64 20 70 61 72 74 73 20 6f file.by.merging.the.good.parts.o
6de0 66 20 74 77 6f 20 6f 72 20 6d 6f 72 65 20 64 61 6d 61 67 65 64 20 63 6f 70 69 65 73 2e 0a 09 2a f.two.or.more.damaged.copies...*
6e00 20 6c 7a 69 70 72 65 63 6f 76 65 72 2e 63 63 3a 20 4e 65 77 20 6f 70 74 69 6f 6e 20 27 2d 52 2c .lziprecover.cc:.New.option.'-R,
6e20 20 2d 2d 72 65 70 61 69 72 27 20 66 6f 72 20 72 65 70 61 69 72 69 6e 67 20 61 0a 09 20 20 31 2d .--repair'.for.repairing.a....1-
6e40 62 79 74 65 20 65 72 72 6f 72 20 69 6e 20 73 69 6e 67 6c 65 2d 6d 65 6d 62 65 72 20 66 69 6c 65 byte.error.in.single-member.file
6e60 73 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 72 29 s...*.decoder.cc.(decode_member)
6e80 3a 20 44 65 74 65 63 74 20 66 69 6c 65 20 65 72 72 6f 72 73 20 65 61 72 6c 69 65 72 20 74 6f 20 :.Detect.file.errors.earlier.to.
6ea0 69 6d 70 72 6f 76 65 0a 09 20 20 65 66 66 69 63 69 65 6e 63 79 20 6f 66 20 6c 7a 69 70 72 65 63 improve....efficiency.of.lziprec
6ec0 6f 76 65 72 27 73 20 6e 65 77 20 72 65 70 61 69 72 20 63 61 70 61 62 69 6c 69 74 79 2e 0a 09 20 over's.new.repair.capability....
6ee0 20 54 68 69 73 20 63 68 61 6e 67 65 20 61 6c 73 6f 20 70 72 65 76 65 6e 74 73 20 28 68 61 72 6d .This.change.also.prevents.(harm
6f00 6c 65 73 73 29 20 61 63 63 65 73 73 20 74 6f 20 75 6e 69 6e 69 74 69 61 6c 69 7a 65 64 0a 09 20 less).access.to.uninitialized...
6f20 20 6d 65 6d 6f 72 79 20 77 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 20 63 6f 72 .memory.when.decompressing.a.cor
6f40 72 75 70 74 20 66 69 6c 65 2e 0a 09 2a 20 6c 7a 69 70 72 65 63 6f 76 65 72 2e 63 63 3a 20 4e 65 rupt.file...*.lziprecover.cc:.Ne
6f60 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 2c w.options.'-f,.--force'.and.'-o,
6f80 20 2d 2d 6f 75 74 70 75 74 27 2e 0a 09 2a 20 6c 7a 69 70 72 65 63 6f 76 65 72 2e 63 63 3a 20 4e .--output'...*.lziprecover.cc:.N
6fa0 65 77 20 6f 70 74 69 6f 6e 20 27 2d 73 2c 20 2d 2d 73 70 6c 69 74 27 20 74 6f 20 73 65 6c 65 63 ew.option.'-s,.--split'.to.selec
6fc0 74 20 74 68 65 20 75 6e 74 69 6c 0a 09 20 20 6e 6f 77 20 6f 6e 6c 79 20 6f 70 65 72 61 74 69 6f t.the.until....now.only.operatio
6fe0 6e 20 6f 66 20 73 70 6c 69 74 74 69 6e 67 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 n.of.splitting.multimember.files
7000 2e 0a 09 2a 20 6c 7a 69 70 72 65 63 6f 76 65 72 2e 63 63 3a 20 49 66 20 6e 6f 20 6f 70 65 72 61 ...*.lziprecover.cc:.If.no.opera
7020 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 72 tion.is.specified,.warn.the.user
7040 20 61 6e 64 20 64 6f 0a 09 20 20 6e 6f 74 68 69 6e 67 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 .and.do....nothing...*.main.cc:.
7060 46 69 78 20 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 Fix.warning.about.fchown's.retur
7080 6e 20 76 61 6c 75 65 20 62 65 69 6e 67 20 69 67 6e 6f 72 65 64 2e 0a 09 2a 20 64 65 63 6f 64 65 n.value.being.ignored...*.decode
70a0 72 2e 63 63 3a 20 27 2d 74 76 76 76 76 27 20 6e 6f 77 20 61 6c 73 6f 20 73 68 6f 77 73 20 63 6f r.cc:.'-tvvvv'.now.also.shows.co
70c0 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 53 65 74 mpression.ratio...*.main.cc:.Set
70e0 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 20 .stdin/stdout.in.binary.mode.on.
7100 4d 53 56 43 20 61 6e 64 20 4f 53 32 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 6e 66 6f 3a 20 4e MSVC.and.OS2...*.lzip.texinfo:.N
7120 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 65 6e 61 6d ew.examples...*.testsuite:.Renam
7140 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 20 74 65 73 e.'test1'.to.'test.txt'..New.tes
7160 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 20 28 34 20 ts...*.Matchfinder.types.HC4.(4.
7180 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 20 62 79 74 bytes.hash-chain).and.HT4.(4.byt
71a0 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 74 65 73 74 es....hash-table).have.been.test
71c0 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 74 68 65 20 ed.and.found.no.better.than.the.
71e0 63 75 72 72 65 6e 74 0a 09 20 20 42 54 34 2e 0a 0a 32 30 31 30 2d 30 34 2d 30 35 20 20 41 6e 74 current....BT4...2010-04-05..Ant
7200 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 65 6c 69 onio.Diaz.Diaz..<ant_diaz@teleli
7220 6e 65 2e 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 ne.es>...*.Version.1.10.released
7240 2e 0a 09 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 ...*.decoder.h:.Input_buffer.int
7260 65 67 72 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 egrated.in.Range_decoder...*.mai
7280 6e 2e 63 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 n.cc:.File.specified.with.option
72a0 20 27 2d 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 .'-o'.is.now.created.with.mode..
72c0 20 20 30 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 ..0666.if.umask.allows.it,.delet
72e0 65 64 20 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 2a 20 6d 61 ed.if.interrupted.by.user...*.ma
7300 69 6e 2e 63 63 3a 20 4e 65 77 20 63 6f 6e 73 74 61 6e 74 20 27 6f 5f 62 69 6e 61 72 79 27 2e 0a in.cc:.New.constant.'o_binary'..
7320 09 2a 20 6d 61 69 6e 2e 63 63 3a 20 44 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 66 6f 72 20 .*.main.cc:.Dictionary.size.for.
7340 6f 70 74 69 6f 6e 73 20 2d 32 2c 20 2d 33 2c 20 2d 34 20 61 6e 64 20 2d 38 20 68 61 73 20 62 65 options.-2,.-3,.-4.and.-8.has.be
7360 65 6e 0a 09 20 20 63 68 61 6e 67 65 64 20 74 6f 20 69 6d 70 72 6f 76 65 20 6c 69 6e 65 61 72 69 en....changed.to.improve.lineari
7380 74 79 20 6f 66 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 73 2e 0a 09 2a 20 6c 7a 69 70 2e ty.of.compressed.sizes...*.lzip.
73a0 68 3a 20 46 69 78 20 77 61 72 6e 69 6e 67 73 20 70 72 6f 64 75 63 65 64 20 62 79 20 6f 76 65 72 h:.Fix.warnings.produced.by.over
73c0 2d 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 28 2d 4f 33 29 2e 0a 09 2a 20 4d 61 6b 65 66 69 6c 65 -optimization.(-O3)...*.Makefile
73e0 2e 69 6e 3a 20 41 64 64 20 71 75 6f 74 65 73 20 74 6f 20 64 69 72 65 63 74 6f 72 79 20 6e 61 6d .in:.Add.quotes.to.directory.nam
7400 65 73 2e 0a 0a 32 30 31 30 2d 30 31 2d 31 37 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 es...2010-01-17..Antonio.Diaz.Di
7420 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 2a 20 56 az..<ant_diaz@teleline.es>...*.V
7440 65 72 73 69 6f 6e 20 31 2e 39 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 ersion.1.9.released...*.main.cc.
7460 28 6d 61 69 6e 29 3a 20 52 65 74 75 72 6e 20 61 74 20 6c 65 61 73 74 20 31 20 69 66 20 63 6c 6f (main):.Return.at.least.1.if.clo
7480 73 69 6e 67 20 73 74 64 6f 75 74 20 66 61 69 6c 73 2e 0a 09 2a 20 4d 61 6b 65 66 69 6c 65 2e 69 sing.stdout.fails...*.Makefile.i
74a0 6e 3a 20 41 64 64 20 6f 70 74 69 6f 6e 20 27 2d 2d 6e 61 6d 65 27 20 74 6f 20 68 65 6c 70 32 6d n:.Add.option.'--name'.to.help2m
74c0 61 6e 20 69 6e 76 6f 63 61 74 69 6f 6e 2e 0a 09 2a 20 63 68 65 63 6b 2e 73 68 3a 20 55 73 65 20 an.invocation...*.check.sh:.Use.
74e0 27 74 65 73 74 31 27 20 69 6e 73 74 65 61 64 20 6f 66 20 27 43 4f 50 59 49 4e 47 27 20 66 6f 72 'test1'.instead.of.'COPYING'.for
7500 20 74 65 73 74 69 6e 67 2e 0a 0a 32 30 30 39 2d 30 39 2d 30 32 20 20 41 6e 74 6f 6e 69 6f 20 44 .testing...2009-09-02..Antonio.D
7520 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>
7540 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 38 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 43 6f ...*.Version.1.8.released...*.Co
7560 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 65 64 75 63 65 64 20 mpression.time.has.been.reduced.
7580 62 79 20 34 25 2e 0a 09 2a 20 4c 7a 64 69 66 66 20 61 6e 64 20 6c 7a 67 72 65 70 20 68 61 76 65 by.4%...*.Lzdiff.and.lzgrep.have
75a0 20 62 65 65 6e 20 6d 6f 76 65 64 20 74 6f 20 74 68 65 20 6e 65 77 20 70 61 63 6b 61 67 65 20 7a .been.moved.to.the.new.package.z
75c0 75 74 69 6c 73 2e 0a 09 2a 20 46 69 78 20 77 61 72 6e 69 6e 67 73 20 6f 6e 20 73 79 73 74 65 6d utils...*.Fix.warnings.on.system
75e0 73 20 77 68 65 72 65 20 75 69 6e 74 33 32 5f 74 20 21 3d 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 s.where.uint32_t.!=.unsigned.int
7600 2e 0a 0a 32 30 30 39 2d 30 36 2d 32 35 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a ...2009-06-25..Antonio.Diaz.Diaz
7620 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 2a 20 56 65 72 ..<ant_diaz@teleline.es>...*.Ver
7640 73 69 6f 6e 20 31 2e 37 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 64 65 63 6f 64 65 72 2e 68 20 sion.1.7.released...*.decoder.h.
7660 28 63 6f 70 79 5f 62 6c 6f 63 6b 29 3a 20 46 69 78 20 6d 65 6d 63 70 79 20 6f 76 65 72 6c 61 70 (copy_block):.Fix.memcpy.overlap
7680 20 69 6e 74 72 6f 64 75 63 65 64 20 69 6e 20 31 2e 36 2e 0a 0a 32 30 30 39 2d 30 36 2d 32 32 20 .introduced.in.1.6...2009-06-22.
76a0 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 74 65 .Antonio.Diaz.Diaz..<ant_diaz@te
76c0 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 36 20 72 65 6c 65 61 leline.es>...*.Version.1.6.relea
76e0 73 65 64 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 sed...*.Decompression.time.has.b
7700 65 65 6e 20 72 65 64 75 63 65 64 20 62 79 20 31 37 25 2e 0a 09 2a 20 41 64 64 20 64 65 63 6f 6d een.reduced.by.17%...*.Add.decom
7720 70 72 65 73 73 69 6f 6e 20 73 75 70 70 6f 72 74 20 66 6f 72 20 53 79 6e 63 20 46 6c 75 73 68 20 pression.support.for.Sync.Flush.
7740 6d 61 72 6b 65 72 2e 0a 09 2a 20 41 64 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 74 68 65 20 65 marker...*.Add.support.for.the.e
7760 78 74 65 6e 73 69 6f 6e 20 27 2e 74 62 7a 27 20 74 6f 20 6c 7a 64 69 66 66 20 61 6e 64 20 6c 7a xtension.'.tbz'.to.lzdiff.and.lz
7780 67 72 65 70 2e 0a 09 2a 20 41 64 64 20 6d 61 6e 20 70 61 67 65 73 20 66 6f 72 20 6c 7a 64 69 66 grep...*.Add.man.pages.for.lzdif
77a0 66 2c 20 6c 7a 67 72 65 70 20 61 6e 64 20 6c 7a 69 70 72 65 63 6f 76 65 72 2e 0a 09 2a 20 65 6e f,.lzgrep.and.lziprecover...*.en
77c0 63 6f 64 65 72 2e 63 63 20 28 4d 61 74 63 68 66 69 6e 64 65 72 29 3a 20 52 65 64 75 63 65 20 6d coder.cc.(Matchfinder):.Reduce.m
77e0 65 6d 6f 72 79 20 75 73 65 20 74 6f 20 39 78 20 69 66 20 69 6e 70 75 74 20 66 69 6c 65 20 69 73 emory.use.to.9x.if.input.file.is
7800 0a 09 20 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 ....smaller.than.dictionary.size
7820 20 6c 69 6d 69 74 2e 0a 09 2a 20 64 65 63 6f 64 65 72 2e 63 63 3a 20 41 64 64 20 65 78 74 72 61 .limit...*.decoder.cc:.Add.extra
7840 20 66 6c 75 73 68 20 63 61 6c 6c 73 20 74 6f 20 69 6d 70 72 6f 76 65 20 70 61 72 74 69 61 6c 20 .flush.calls.to.improve.partial.
7860 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 0a 09 20 20 6f 66 20 63 6f 72 72 75 70 74 20 66 69 6c 65 decompression....of.corrupt.file
7880 73 2e 0a 09 2a 20 27 2d 2d 74 65 73 74 27 20 6e 6f 20 6c 6f 6e 67 65 72 20 6e 65 65 64 73 20 27 s...*.'--test'.no.longer.needs.'
78a0 2f 64 65 76 2f 6e 75 6c 6c 27 2e 0a 09 2a 20 52 65 6d 6f 76 65 20 73 6f 6d 65 20 27 62 61 73 68 /dev/null'...*.Remove.some.'bash
78c0 69 73 6d 73 27 20 66 72 6f 6d 20 6c 7a 64 69 66 66 20 61 6e 64 20 6c 7a 67 72 65 70 2e 0a 09 2a isms'.from.lzdiff.and.lzgrep...*
78e0 20 44 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 73 20 27 2d 31 .Dictionary.size.for.options.'-1
7900 27 20 74 6f 20 27 2d 34 27 20 68 61 73 20 62 65 65 6e 20 63 68 61 6e 67 65 64 2e 0a 09 2a 20 6d '.to.'-4'.has.been.changed...*.m
7920 61 69 6e 2e 63 63 20 28 73 69 67 6e 61 6c 5f 68 61 6e 64 6c 65 72 29 3a 20 44 65 63 6c 61 72 65 ain.cc.(signal_handler):.Declare
7940 20 61 73 20 27 65 78 74 65 72 6e 20 22 43 22 27 2e 0a 09 2a 20 4d 61 6b 65 66 69 6c 65 2e 69 6e .as.'extern."C"'...*.Makefile.in
7960 3a 20 45 78 74 72 61 20 66 69 6c 65 73 20 61 72 65 20 6e 6f 77 20 69 6e 73 74 61 6c 6c 65 64 20 :.Extra.files.are.now.installed.
7980 62 79 20 64 65 66 61 75 6c 74 2e 0a 09 2a 20 63 68 65 63 6b 2e 73 68 3a 20 54 65 73 74 20 6c 7a by.default...*.check.sh:.Test.lz
79a0 69 70 72 65 63 6f 76 65 72 2e 0a 09 2a 20 41 64 64 20 27 65 78 70 6f 72 74 20 4c 43 5f 41 4c 4c iprecover...*.Add.'export.LC_ALL
79c0 3d 43 27 20 74 6f 20 61 6c 6c 20 73 63 72 69 70 74 73 2e 0a 0a 32 30 30 39 2d 30 34 2d 31 32 20 =C'.to.all.scripts...2009-04-12.
79e0 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 74 65 .Antonio.Diaz.Diaz..<ant_diaz@te
7a00 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 35 20 72 65 6c 65 61 leline.es>...*.Version.1.5.relea
7a20 73 65 64 2e 0a 09 2a 20 6c 7a 69 70 2e 68 3a 20 49 6d 70 6c 65 6d 65 6e 74 20 63 6f 64 65 64 20 sed...*.lzip.h:.Implement.coded.
7a40 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 6e 20 4c 7a 69 70 5f 68 65 61 64 65 72 2e 0a dictionary.size.in.Lzip_header..
7a60 09 2a 20 46 69 78 20 73 6f 6d 65 20 69 6e 63 6c 75 64 65 73 20 74 68 61 74 20 70 72 65 76 65 6e .*.Fix.some.includes.that.preven
7a80 74 65 64 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 77 69 74 68 20 47 43 43 20 34 2e 34 2e 0a 09 2a ted.compilation.with.GCC.4.4...*
7aa0 20 27 6d 65 6d 62 65 72 5f 73 69 7a 65 27 20 61 6e 64 20 27 76 6f 6c 75 6d 65 5f 73 69 7a 65 27 .'member_size'.and.'volume_size'
7ac0 20 61 72 65 20 6e 6f 77 20 61 63 63 75 72 61 74 65 20 6c 69 6d 69 74 73 2e 0a 09 2a 20 43 6f 6d .are.now.accurate.limits...*.Com
7ae0 70 72 65 73 73 69 6f 6e 20 73 70 65 65 64 20 68 61 73 20 62 65 65 6e 20 69 6d 70 72 6f 76 65 64 pression.speed.has.been.improved
7b00 2e 0a 09 2a 20 49 6d 70 6c 65 6d 65 6e 74 20 62 74 34 20 74 79 70 65 20 6d 61 74 63 68 66 69 6e ...*.Implement.bt4.type.matchfin
7b20 64 65 72 2e 0a 09 2a 20 6c 7a 69 70 2e 74 65 78 69 6e 66 6f 3a 20 4e 65 77 20 63 68 61 70 74 65 der...*.lzip.texinfo:.New.chapte
7b40 72 20 27 41 6c 67 6f 72 69 74 68 6d 27 2e 0a 09 2a 20 4c 7a 64 69 66 66 20 61 6e 64 20 6c 7a 67 r.'Algorithm'...*.Lzdiff.and.lzg
7b60 72 65 70 20 6e 6f 77 20 61 63 63 65 70 74 20 27 2d 68 27 20 66 6f 72 20 27 2d 2d 68 65 6c 70 27 rep.now.accept.'-h'.for.'--help'
7b80 20 61 6e 64 0a 09 20 20 27 2d 56 27 20 66 6f 72 20 27 2d 2d 76 65 72 73 69 6f 6e 27 2e 0a 09 2a .and....'-V'.for.'--version'...*
7ba0 20 4d 61 6b 65 66 69 6c 65 2e 69 6e 3a 20 4d 61 6e 20 70 61 67 65 20 69 73 20 6e 6f 77 20 69 6e .Makefile.in:.Man.page.is.now.in
7bc0 73 74 61 6c 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 2e 0a 09 2a 20 63 68 65 63 6b 2e 73 68 3a stalled.by.default...*.check.sh:
7be0 20 56 65 72 69 66 79 20 74 68 61 74 20 66 69 6c 65 73 20 61 72 65 20 6f 70 65 6e 65 64 20 69 6e .Verify.that.files.are.opened.in
7c00 20 62 69 6e 61 72 79 20 6d 6f 64 65 2e 0a 0a 32 30 30 39 2d 30 31 2d 32 34 20 20 41 6e 74 6f 6e .binary.mode...2009-01-24..Anton
7c20 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
7c40 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 31 2e 34 20 72 65 6c 65 61 73 65 64 2e 0a 09 .es>...*.Version.1.4.released...
7c60 2a 20 49 6d 70 6c 65 6d 65 6e 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 66 20 76 65 72 73 69 *.Implement.compression.of.versi
7c80 6f 6e 20 31 20 66 69 6c 65 73 2e 0a 09 2a 20 4e 65 77 20 6f 70 74 69 6f 6e 73 20 27 2d 62 2c 20 on.1.files...*.New.options.'-b,.
7ca0 2d 2d 6d 65 6d 62 65 72 2d 73 69 7a 65 27 2c 20 27 2d 53 2c 20 2d 2d 76 6f 6c 75 6d 65 2d 73 69 --member-size',.'-S,.--volume-si
7cc0 7a 65 27 2c 20 61 6e 64 0a 09 20 20 27 2d 6f 2c 20 2d 2d 6f 75 74 70 75 74 27 2e 0a 09 2a 20 6d ze',.and....'-o,.--output'...*.m
7ce0 61 69 6e 2e 63 63 3a 20 52 65 61 64 20 66 72 6f 6d 20 6e 6f 6e 2d 72 65 67 75 6c 61 72 20 66 69 ain.cc:.Read.from.non-regular.fi
7d00 6c 65 73 20 69 66 20 27 2d 2d 73 74 64 6f 75 74 27 20 69 73 20 73 70 65 63 69 66 69 65 64 2e 0a les.if.'--stdout'.is.specified..
7d20 09 2a 20 41 64 64 20 27 6c 7a 69 70 72 65 63 6f 76 65 72 27 2c 20 61 20 6d 65 6d 62 65 72 20 72 .*.Add.'lziprecover',.a.member.r
7d40 65 63 6f 76 65 72 65 72 20 70 72 6f 67 72 61 6d 2e 0a 09 2a 20 75 6e 7a 63 72 61 73 68 2e 63 63 ecoverer.program...*.unzcrash.cc
7d60 3a 20 54 65 73 74 20 61 6c 6c 20 31 2d 62 79 74 65 20 65 72 72 6f 72 73 2e 0a 0a 32 30 30 38 2d :.Test.all.1-byte.errors...2008-
7d80 31 32 2d 32 31 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 12-21..Antonio.Diaz.Diaz..<ant_d
7da0 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 33 iaz@teleline.es>...*.Version.1.3
7dc0 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 54 68 69 73 20 76 65 72 73 69 6f 6e 20 61 75 74 6f 6d .released...*.This.version.autom
7de0 61 74 69 63 61 6c 6c 79 20 63 68 6f 6f 73 65 73 20 74 68 65 20 73 6d 61 6c 6c 65 73 74 20 70 6f atically.chooses.the.smallest.po
7e00 73 73 69 62 6c 65 0a 09 20 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 66 6f 72 20 65 61 ssible....dictionary.size.for.ea
7e20 63 68 20 66 69 6c 65 20 64 75 72 69 6e 67 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2c 20 73 61 76 69 ch.file.during.compression,.savi
7e40 6e 67 20 6d 65 6d 6f 72 79 0a 09 20 20 64 75 72 69 6e 67 20 64 65 63 6f 6d 70 72 65 73 73 69 6f ng.memory....during.decompressio
7e60 6e 2e 0a 09 2a 20 49 6d 70 6c 65 6d 65 6e 74 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 66 n...*.Implement.decompression.of
7e80 20 76 65 72 73 69 6f 6e 20 31 20 66 69 6c 65 73 2e 0a 09 2a 20 63 68 65 63 6b 2e 73 68 3a 20 52 .version.1.files...*.check.sh:.R
7ea0 65 70 6c 61 63 65 20 27 64 69 66 66 20 2d 71 27 20 77 69 74 68 20 27 63 6d 70 27 2e 0a 0a 32 30 eplace.'diff.-q'.with.'cmp'...20
7ec0 30 38 2d 31 32 2d 31 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 08-12-10..Antonio.Diaz.Diaz..<an
7ee0 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.
7f00 31 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 41 20 31 1.2.released...*.encoder.cc:.A.1
7f20 2d 62 79 74 65 20 72 65 61 64 20 6f 75 74 73 69 64 65 20 61 6c 6c 6f 63 61 74 65 64 20 6d 65 6d -byte.read.outside.allocated.mem
7f40 6f 72 79 20 68 61 73 20 62 65 65 6e 20 66 69 78 65 64 2e 0a 09 2a 20 6c 7a 69 70 2e 68 3a 20 44 ory.has.been.fixed...*.lzip.h:.D
7f60 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 20 68 61 73 20 62 65 65 6e 20 72 65 ictionary.size.limit.has.been.re
7f80 64 75 63 65 64 20 74 6f 20 35 31 32 4d 69 42 20 62 65 63 61 75 73 65 0a 09 20 20 73 65 74 74 69 duced.to.512MiB.because....setti
7fa0 6e 67 20 69 74 20 74 6f 20 31 47 69 42 20 63 61 75 73 65 73 20 6f 76 65 72 66 6c 6f 77 20 6f 66 ng.it.to.1GiB.causes.overflow.of
7fc0 20 61 20 33 32 20 62 69 74 20 69 6e 74 65 67 65 72 2e 0a 09 2a 20 41 64 64 20 27 6c 7a 64 69 66 .a.32.bit.integer...*.Add.'lzdif
7fe0 66 27 2c 20 61 20 64 69 66 66 2f 63 6d 70 20 77 72 61 70 70 65 72 20 66 6f 72 20 67 7a 69 70 2c f',.a.diff/cmp.wrapper.for.gzip,
8000 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 73 73 .bzip2,.lzip.and....non-compress
8020 65 64 20 66 69 6c 65 73 2e 0a 09 2a 20 41 64 64 20 27 6c 7a 67 72 65 70 27 2c 20 61 20 67 72 65 ed.files...*.Add.'lzgrep',.a.gre
8040 70 20 77 72 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 p.wrapper.for.gzip,.bzip2,.lzip.
8060 61 6e 64 0a 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 and....non-compressed.files...*.
8080 27 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 2d 69 6e 66 6f 27 20 73 68 6f 75 6c 64 20 6e 6f 77 20 77 'make.install-info'.should.now.w
80a0 6f 72 6b 20 6f 6e 20 44 65 62 69 61 6e 20 61 6e 64 20 4f 53 20 58 2e 0a 0a 32 30 30 38 2d 31 31 ork.on.Debian.and.OS.X...2008-11
80c0 2d 31 37 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 -17..Antonio.Diaz.Diaz..<ant_dia
80e0 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 31 20 72 z@teleline.es>...*.Version.1.1.r
8100 65 6c 65 61 73 65 64 2e 0a 09 2a 20 43 68 61 6e 67 65 20 73 68 6f 72 74 20 6e 61 6d 65 20 6f 66 eleased...*.Change.short.name.of
8120 20 6f 70 74 69 6f 6e 20 27 2d 2d 64 69 63 74 69 6f 6e 61 72 79 2d 73 69 7a 65 27 20 74 6f 20 27 .option.'--dictionary-size'.to.'
8140 2d 73 27 2e 0a 09 2a 20 43 68 61 6e 67 65 20 73 68 6f 72 74 20 6e 61 6d 65 20 6f 66 20 6f 70 74 -s'...*.Change.short.name.of.opt
8160 69 6f 6e 20 27 2d 2d 6d 61 74 63 68 2d 6c 65 6e 67 74 68 27 20 74 6f 20 27 2d 6d 27 2e 0a 09 2a ion.'--match-length'.to.'-m'...*
8180 20 43 68 61 6e 67 65 20 4c 4f 4e 47 5f 4c 4f 4e 47 5f 4d 41 58 20 74 6f 20 4c 4c 4f 4e 47 5f 4d .Change.LONG_LONG_MAX.to.LLONG_M
81a0 41 58 2e 0a 0a 32 30 30 38 2d 31 30 2d 31 34 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 AX...2008-10-14..Antonio.Diaz.Di
81c0 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 2a 20 56 az..<ant_diaz@teleline.es>...*.V
81e0 65 72 73 69 6f 6e 20 31 2e 30 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 27 2d 74 76 76 27 20 73 ersion.1.0.released...*.'-tvv'.s
8200 68 6f 77 73 20 66 69 6c 65 20 76 65 72 73 69 6f 6e 20 61 6e 64 20 64 69 63 74 69 6f 6e 61 72 79 hows.file.version.and.dictionary
8220 20 73 69 7a 65 2e 0a 0a 32 30 30 38 2d 30 39 2d 33 30 20 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a .size...2008-09-30..Antonio.Diaz
8240 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>...
8260 2a 20 56 65 72 73 69 6f 6e 20 30 2e 35 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 44 65 63 6f 6d *.Version.0.5.released...*.Decom
8280 70 72 65 73 73 69 6f 6e 20 69 73 20 6e 6f 77 20 31 25 20 66 61 73 74 65 72 2e 0a 0a 32 30 30 38 pression.is.now.1%.faster...2008
82a0 2d 30 39 2d 32 33 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 -09-23..Antonio.Diaz.Diaz..<ant_
82c0 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 30 2e diaz@teleline.es>...*.Version.0.
82e0 34 20 72 65 6c 65 61 73 65 64 2e 0a 09 2a 20 43 6f 64 65 20 63 6c 65 61 6e 75 70 20 66 6f 72 20 4.released...*.Code.cleanup.for.
8300 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 27 76 65 72 62 6f 73 69 74 79 27 2e 0a 09 2a 20 global.variable.'verbosity'...*.
8320 52 65 67 61 69 6e 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 6f 66 20 Regain.the.compression.ratio.of.
8340 30 2e 32 20 77 69 74 68 20 35 25 20 66 61 73 74 65 72 20 73 70 65 65 64 2e 0a 09 2a 20 46 69 78 0.2.with.5%.faster.speed...*.Fix
8360 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 6e 20 73 79 73 74 65 6d 73 20 77 68 65 72 65 20 73 69 .compilation.on.systems.where.si
8380 7a 65 5f 74 20 21 3d 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 2e 0a 0a 32 30 30 38 2d 30 39 2d 31 ze_t.!=.unsigned.int...2008-09-1
83a0 35 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 5..Antonio.Diaz.Diaz..<ant_diaz@
83c0 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 33 20 72 65 6c teleline.es>...*.Version.0.3.rel
83e0 65 61 73 65 64 2e 0a 09 2a 20 65 6e 63 6f 64 65 72 2e 63 63 3a 20 43 6f 6d 70 72 65 73 73 69 6f eased...*.encoder.cc:.Compressio
8400 6e 20 69 73 20 6e 6f 77 20 31 35 25 20 66 61 73 74 65 72 2c 20 31 25 20 77 6f 72 73 65 2e 0a 09 n.is.now.15%.faster,.1%.worse...
8420 2a 20 6d 61 69 6e 2e 63 63 20 28 6d 61 69 6e 29 3a 20 4d 61 6b 65 20 6f 70 74 69 6f 6e 20 27 2d *.main.cc.(main):.Make.option.'-
8440 74 27 20 6f 76 65 72 72 69 64 65 20 27 2d 63 27 2e 0a 09 2a 20 6d 61 69 6e 2e 63 63 20 28 64 65 t'.override.'-c'...*.main.cc.(de
8460 63 6f 6d 70 72 65 73 73 29 3a 20 53 68 6f 77 20 27 64 6f 6e 65 27 20 69 6e 73 74 65 61 64 20 6f compress):.Show.'done'.instead.o
8480 66 20 27 6f 6b 27 20 77 68 65 6e 20 6e 6f 74 20 74 65 73 74 69 6e 67 2e 0a 09 2a 20 65 6e 63 6f f.'ok'.when.not.testing...*.enco
84a0 64 65 72 2e 68 3a 20 55 73 65 20 74 72 69 61 6c 73 5b 5d 20 74 6f 20 72 65 74 75 72 6e 20 74 68 der.h:.Use.trials[].to.return.th
84c0 65 20 6c 69 73 74 20 6f 66 20 70 61 69 72 73 2e 0a 0a 32 30 30 38 2d 30 39 2d 30 39 20 20 41 6e e.list.of.pairs...2008-09-09..An
84e0 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 65 6c tonio.Diaz.Diaz..<ant_diaz@telel
8500 69 6e 65 2e 65 73 3e 0a 0a 09 2a 20 56 65 72 73 69 6f 6e 20 30 2e 32 20 72 65 6c 65 61 73 65 64 ine.es>...*.Version.0.2.released
8520 2e 0a 09 2a 20 65 6e 63 6f 64 65 72 2e 63 63 3a 20 53 6d 61 6c 6c 20 69 6d 70 72 6f 76 65 6d 65 ...*.encoder.cc:.Small.improveme
8540 6e 74 73 20 69 6e 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 73 70 65 65 64 2e 0a 09 2a 20 53 6d 61 nts.in.compression.speed...*.Sma
8560 6c 6c 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 63 68 61 6e 67 65 73 2e 0a 0a 32 30 30 38 2d ll.documentation.changes...2008-
8580 30 38 2d 32 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 08-20..Antonio.Diaz.Diaz..<ant_d
85a0 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 30 2e 31 iaz@teleline.es>...*.Version.0.1
85c0 20 72 65 6c 65 61 73 65 64 2e 0a 0a 0a 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d .released....Copyright.(C).2008-
85e0 32 30 32 30 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 54 68 69 73 20 66 69 2020.Antonio.Diaz.Diaz...This.fi
8600 6c 65 20 69 73 20 61 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f 66 20 66 61 63 74 73 2c 20 61 6e 64 le.is.a.collection.of.facts,.and
8620 20 74 68 75 73 20 69 74 20 69 73 20 6e 6f 74 20 63 6f 70 79 72 69 67 68 74 61 62 6c 65 2c 0a 62 .thus.it.is.not.copyrightable,.b
8640 75 74 20 6a 75 73 74 20 69 6e 20 63 61 73 65 2c 20 79 6f 75 20 68 61 76 65 20 75 6e 6c 69 6d 69 ut.just.in.case,.you.have.unlimi
8660 74 65 64 20 70 65 72 6d 69 73 73 69 6f 6e 20 74 6f 20 63 6f 70 79 2c 20 64 69 73 74 72 69 62 75 ted.permission.to.copy,.distribu
8680 74 65 2c 20 61 6e 64 0a 6d 6f 64 69 66 79 20 69 74 2e 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 te,.and.modify.it...............
86a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
86c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
86e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
87a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
87c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
87e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8800 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 49 4e 53 54 41 4c 4c 00 00 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/INSTALL...........
8820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8860 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
8880 30 30 30 34 36 33 33 00 31 33 36 37 32 36 34 34 31 33 37 00 30 30 31 32 37 31 32 00 30 00 00 00 0004633.13672644137.0012712.0...
88a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
88c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
88e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8900 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...................
8920 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...................
8940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
89a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
89c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
89e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8a00 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
8a20 6c 6c 20 6e 65 65 64 20 61 20 43 2b 2b 31 31 20 63 6f 6d 70 69 6c 65 72 2e 20 28 67 63 63 20 33 ll.need.a.C++11.compiler..(gcc.3
8a40 2e 33 2e 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 .3.6.or.newer.is.recommended)..I
8a60 20 75 73 65 20 67 63 63 20 36 2e 31 2e 30 20 61 6e 64 20 34 2e 31 2e 32 2c 20 62 75 74 20 74 68 .use.gcc.6.1.0.and.4.1.2,.but.th
8a80 65 20 63 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 e.code.should.compile.with.any.s
8aa0 74 61 6e 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 tandards.compliant.compiler..Gcc
8ac0 20 69 73 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 .is.available.at.http://gcc.gnu.
8ae0 6f 72 67 2e 0a 0a 54 68 65 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 6d 75 73 74 20 org...The.operating.system.must.
8b00 61 6c 6c 6f 77 20 73 69 67 6e 61 6c 20 68 61 6e 64 6c 65 72 73 20 72 65 61 64 20 61 63 63 65 73 allow.signal.handlers.read.acces
8b20 73 20 74 6f 20 6f 62 6a 65 63 74 73 20 77 69 74 68 0a 73 74 61 74 69 63 20 73 74 6f 72 61 67 65 s.to.objects.with.static.storage
8b40 20 64 75 72 61 74 69 6f 6e 20 73 6f 20 74 68 61 74 20 74 68 65 20 63 6c 65 61 6e 75 70 20 68 61 .duration.so.that.the.cleanup.ha
8b60 6e 64 6c 65 72 20 66 6f 72 20 43 6f 6e 74 72 6f 6c 2d 43 20 63 61 6e 20 64 65 6c 65 74 65 0a 74 ndler.for.Control-C.can.delete.t
8b80 68 65 20 70 61 72 74 69 61 6c 20 6f 75 74 70 75 74 20 66 69 6c 65 2e 0a 0a 0a 50 72 6f 63 65 64 he.partial.output.file....Proced
8ba0 75 72 65 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 31 2e 20 55 6e 70 61 63 6b 20 74 68 65 20 61 72 63 68 ure.---------.1..Unpack.the.arch
8bc0 69 76 65 20 69 66 20 79 6f 75 20 68 61 76 65 20 6e 6f 74 20 64 6f 6e 65 20 73 6f 20 61 6c 72 65 ive.if.you.have.not.done.so.alre
8be0 61 64 79 3a 0a 0a 09 74 61 72 20 2d 78 66 20 6c 7a 69 70 5b 76 65 72 73 69 6f 6e 5d 2e 74 61 72 ady:...tar.-xf.lzip[version].tar
8c00 2e 6c 7a 0a 6f 72 0a 09 6c 7a 69 70 20 2d 63 64 20 6c 7a 69 70 5b 76 65 72 73 69 6f 6e 5d 2e 74 .lz.or..lzip.-cd.lzip[version].t
8c20 61 72 2e 6c 7a 20 7c 20 74 61 72 20 2d 78 66 20 2d 0a 0a 54 68 69 73 20 63 72 65 61 74 65 73 20 ar.lz.|.tar.-xf.-..This.creates.
8c40 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 2e 2f 6c 7a 69 70 5b 76 65 72 73 69 6f 6e 5d 20 63 6f the.directory../lzip[version].co
8c60 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 73 6f 75 72 63 65 20 66 72 6f 6d 0a 74 68 65 20 6d 61 69 ntaining.the.source.from.the.mai
8c80 6e 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 n.archive...2..Change.to.lzip.di
8ca0 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
8cc0 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.
8ce0 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
8d00 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
8d20 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
8d40 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
8d60 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.
8d80 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
8da0 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
8dc0 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'.
8de0 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
8e00 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 0a ata.files.and....documentation..
8e20 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 6d 70 72 65 ....Or.type.'make.install-compre
8e40 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 72 65 73 73 ss',.which.additionally.compress
8e60 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 65 20 6d 61 es.the....info.manual.and.the.ma
8e80 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 20 20 28 49 n.page.after.installation.....(I
8ea0 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 79 20 62 65 nstalling.compressed.docs.may.be
8ec0 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 72 65 29 2e come.the.default.in.the.future).
8ee0 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 65 20 70 72 .....You.can.install.only.the.pr
8f00 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 68 65 20 6d ogram,.the.info.manual,.or.the.m
8f20 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 6e 73 74 61 an.page.by....typing.'make.insta
8f40 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 2c 20 6f 72 ll-bin',.'make.install-info',.or
8f60 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 63 74 69 76 .'make.install-man'....respectiv
8f80 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 2d 2d 0a 59 ely....Another.way.-----------.Y
8fa0 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 6f 20 61 20 ou.can.also.compile.lzip.into.a.
8fc0 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 69 73 2c 20 separate.directory..To.do.this,.
8fe0 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 61 6b 65 27 you.must.use.a.version.of.'make'
9000 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 27 56 50 41 .that.supports.the.variable.'VPA
9020 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 27 20 74 6f TH',.such.as.GNU.'make'..'cd'.to
9040 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 74 20 74 68 .the.directory.where.you.want.th
9060 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 65 73 20 74 e.object.files.and.executables.t
9080 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 20 73 63 72 o.go.and.run.the.'configure'.scr
90a0 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 6c 79 20 63 ipt..'configure'.automatically.c
90c0 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 20 27 2e 27 hecks.for.the.source.code.in.'.'
90e0 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 6f 72 79 20 ,.in.'..',.and.in.the.directory.
9100 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 6e 66 69 67 that.'configure'.is.in...'config
9120 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 2d 2d 73 72 ure'.recognizes.the.option.'--sr
9140 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 6f 0a 6c 6f cdir=DIR'.to.control.where.to.lo
9160 6f 6b 20 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65 73 2e 20 55 73 75 61 6c 6c 79 20 27 63 6f 6e ok.for.the.sources..Usually.'con
9180 66 69 67 75 72 65 27 20 63 61 6e 20 64 65 74 65 72 6d 69 6e 65 20 74 68 61 74 20 64 69 72 65 63 figure'.can.determine.that.direc
91a0 74 6f 72 79 0a 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2e 0a 0a 41 66 74 65 72 20 72 75 6e 6e 69 tory.automatically...After.runni
91c0 6e 67 20 27 63 6f 6e 66 69 67 75 72 65 27 2c 20 79 6f 75 20 63 61 6e 20 72 75 6e 20 27 6d 61 6b ng.'configure',.you.can.run.'mak
91e0 65 27 20 61 6e 64 20 27 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 27 20 61 73 0a 65 78 70 6c 61 69 6e e'.and.'make.install'.as.explain
9200 65 64 20 61 62 6f 76 65 2e 0a 0a 0a 42 75 69 6c 64 69 6e 67 20 77 69 74 68 6f 75 74 20 27 6d 61 ed.above....Building.without.'ma
9220 6b 65 27 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 49 66 20 79 ke'.-----------------------.If.y
9240 6f 75 20 6e 65 65 64 20 74 6f 20 62 75 69 6c 64 20 6c 7a 69 70 20 6f 6e 20 61 20 73 79 73 74 65 ou.need.to.build.lzip.on.a.syste
9260 6d 20 6c 61 63 6b 69 6e 67 20 61 20 27 6d 61 6b 65 27 20 70 72 6f 67 72 61 6d 2c 20 79 6f 75 20 m.lacking.a.'make'.program,.you.
9280 63 61 6e 20 75 73 65 0a 27 63 6f 6e 66 69 67 75 72 65 27 20 74 6f 20 62 75 69 6c 64 2c 20 63 68 can.use.'configure'.to.build,.ch
92a0 65 63 6b 2c 20 61 6e 64 20 69 6e 73 74 61 6c 6c 20 74 68 65 20 6c 7a 69 70 20 65 78 65 63 75 74 eck,.and.install.the.lzip.execut
92c0 61 62 6c 65 20 6c 69 6b 65 20 74 68 69 73 3a 0a 0a 09 2e 2f 63 6f 6e 66 69 67 75 72 65 20 2d 2d able.like.this:..../configure.--
92e0 62 75 69 6c 64 20 2d 2d 63 68 65 63 6b 20 2d 2d 69 6e 73 74 61 6c 6c 64 69 72 3d 2f 75 73 72 2f build.--check.--installdir=/usr/
9300 6c 6f 63 61 6c 2f 62 69 6e 0a 0a 0a 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 local/bin...Copyright.(C).2008-2
9320 30 32 30 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 54 68 69 73 20 66 69 6c 020.Antonio.Diaz.Diaz...This.fil
9340 65 20 69 73 20 66 72 65 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3a 20 79 6f 75 20 68 61 76 e.is.free.documentation:.you.hav
9360 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 20 63 6f 70 79 2c 0a e.unlimited.permission.to.copy,.
9380 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 2e 0a 00 00 00 00 00 distribute,.and.modify.it.......
93a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
93c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
93e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9400 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 4d 61 6b 65 66 69 6c 65 2e 69 6e 00 00 00 00 00 00 00 lzip-1.22-rc2/Makefile.in.......
9420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9460 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
9480 30 30 31 30 32 36 36 00 31 33 36 35 33 31 31 36 35 37 30 00 30 30 31 33 37 31 37 00 30 00 00 00 0010266.13653116570.0013717.0...
94a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
94c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
94e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9500 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...................
9520 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...................
9540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9600 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
9620 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
9640 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
9660 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 49 4e 53 54 LL_DATA.=.$(INSTALL).-m.644.INST
9680 41 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 53 ALL_DIR.=.$(INSTALL).-d.-m.755.S
96a0 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
96c0 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.-
96e0 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
9700 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
9720 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.\..
9740 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
9760 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
9780 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
97a0 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
97c0 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
97e0 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.
9800 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
9820 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.
9840 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
9860 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
9880 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
98a0 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).:.
98c0 24 28 6f 62 6a 73 29 0a 09 24 28 43 58 58 29 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 43 58 58 $(objs)..$(CXX).$(LDFLAGS).$(CXX
98e0 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
9900 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
9920 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
9940 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..
9960 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).-
9980 63 20 2d 6f 20 24 40 20 24 3c 0a 0a 24 28 6f 62 6a 73 29 20 20 20 20 20 20 20 20 3a 20 4d 61 6b c.-o.$@.$<..$(objs)........:.Mak
99a0 65 66 69 6c 65 0a 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 efile.arg_parser.o...:.arg_parse
99c0 72 2e 68 0a 64 65 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 r.h.decoder.o......:.lzip.h.deco
99e0 64 65 72 2e 68 0a 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 der.h.encoder_base.o.:.lzip.h.en
9a00 63 6f 64 65 72 5f 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 coder_base.h.encoder.o......:.lz
9a20 69 70 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 0a 66 61 ip.h.encoder_base.h.encoder.h.fa
9a40 73 74 5f 65 6e 63 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 st_encoder.o.:.lzip.h.encoder_ba
9a60 73 65 2e 68 20 66 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 se.h.fast_encoder.h.list.o......
9a80 20 20 20 3a 20 6c 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 ...:.lzip.h.lzip_index.h.lzip_in
9aa0 64 65 78 2e 6f 20 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 dex.o...:.lzip.h.lzip_index.h.ma
9ac0 69 6e 2e 6f 20 20 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 in.o.........:.arg_parser.h.lzip
9ae0 2e 68 20 64 65 63 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 .h.decoder.h.encoder_base.h.enco
9b00 64 65 72 2e 68 20 66 61 73 74 5f 65 6e 63 6f 64 65 72 2e 68 0a 0a 0a 64 6f 63 20 3a 20 69 6e 66 der.h.fast_encoder.h...doc.:.inf
9b20 6f 20 6d 61 6e 0a 0a 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 o.man..info.:.$(VPATH)/doc/$(pkg
9b40 6e 61 6d 65 29 2e 69 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 name).info..$(VPATH)/doc/$(pkgna
9b60 6d 65 29 2e 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 me).info.:.$(VPATH)/doc/$(pkgnam
9b80 65 29 2e 74 65 78 69 0a 09 63 64 20 24 28 56 50 41 54 48 29 2f 64 6f 63 20 26 26 20 6d 61 6b 65 e).texi..cd.$(VPATH)/doc.&&.make
9ba0 69 6e 66 6f 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 info.$(pkgname).texi..man.:.$(VP
9bc0 41 54 48 29 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 ATH)/doc/$(progname).1..$(VPATH)
9be0 2f 64 6f 63 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 /doc/$(progname).1.:.$(progname)
9c00 0a 09 68 65 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 ..help2man.-n.'reduces.the.size.
9c20 6f 66 20 66 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 of.files'.-o.$@../$(progname)..M
9c40 61 6b 65 66 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 akefile.:.$(VPATH)/configure.$(V
9c60 50 41 54 48 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 PATH)/Makefile.in.../config.stat
9c80 75 73 0a 0a 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 us..check.:.all..@$(VPATH)/tests
9ca0 75 69 74 65 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 uite/check.sh.$(VPATH)/testsuite
9cc0 20 24 28 70 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 .$(pkgversion)..install.:.instal
9ce0 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 6e 0a 69 l-bin.install-info.install-man.i
9d00 6e 73 74 61 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 nstall-strip.:.install-bin-strip
9d20 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 6c .install-info.install-man.instal
9d40 6c 2d 63 6f 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 l-compress.:.install-bin.install
9d60 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 6e 2d 63 6f 6d 70 72 -info-compress.install-man-compr
9d80 65 73 73 0a 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 ess.install-strip-compress.:.ins
9da0 74 61 6c 6c 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 tall-bin-strip.install-info-comp
9dc0 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 0a 69 6e 73 74 61 ress.install-man-compress..insta
9de0 6c 6c 2d 62 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 ll-bin.:.all..if.[.!.-d."$(DESTD
9e00 49 52 29 24 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 IR)$(bindir)".].;.then.$(INSTALL
9e20 5f 44 49 52 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 _DIR)."$(DESTDIR)$(bindir)".;.fi
9e40 0a 09 24 28 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 ..$(INSTALL_PROGRAM)../$(prognam
9e60 65 29 20 22 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 e)."$(DESTDIR)$(bindir)/$(progna
9e80 6d 65 29 22 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 me)"..install-bin-strip.:.all..$
9ea0 28 4d 41 4b 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 (MAKE).INSTALL_PROGRAM='$(INSTAL
9ec0 4c 5f 50 52 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 L_PROGRAM).-s'.install-bin..inst
9ee0 61 6c 6c 2d 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 all-info.:..if.[.!.-d."$(DESTDIR
9f00 29 24 28 69 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 )$(infodir)".].;.then.$(INSTALL_
9f20 44 49 52 29 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 DIR)."$(DESTDIR)$(infodir)".;.fi
9f40 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 24 ..-rm.-f."$(DESTDIR)$(infodir)/$
9f60 28 70 6b 67 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 (pkgname).info"*..$(INSTALL_DATA
9f80 29 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 6e 66 6f 20 22 ).$(VPATH)/doc/$(pkgname).info."
9fa0 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 6e 61 6d 65 29 2e $(DESTDIR)$(infodir)/$(pkgname).
9fc0 69 6e 66 6f 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 info"..-if.$(CAN_RUN_INSTALLINFO
9fe0 29 20 3b 20 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 ).;.then.\....install-info.--inf
a000 6f 2d 64 69 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 o-dir="$(DESTDIR)$(infodir)"."$(
a020 44 45 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 DESTDIR)$(infodir)/$(pkgname).in
a040 66 6f 22 20 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 fo".;.\..fi..install-info-compre
a060 73 73 20 3a 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 ss.:.install-info..lzip.-v.-9."$
a080 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 6e 61 6d 65 29 2e 69 (DESTDIR)$(infodir)/$(pkgname).i
a0a0 6e 66 6f 22 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 nfo"..install-man.:..if.[.!.-d."
a0c0 24 28 44 45 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 $(DESTDIR)$(mandir)/man1".].;.th
a0e0 65 6e 20 24 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 en.$(INSTALL_DIR)."$(DESTDIR)$(m
a100 61 6e 64 69 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 andir)/man1".;.fi..-rm.-f."$(DES
a120 54 44 49 52 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 TDIR)$(mandir)/man1/$(progname).
a140 31 22 2a 0a 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 1"*..$(INSTALL_DATA).$(VPATH)/do
a160 63 2f 24 28 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 c/$(progname).1."$(DESTDIR)$(man
a180 64 69 72 29 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 dir)/man1/$(progname).1"..instal
a1a0 6c 2d 6d 61 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 l-man-compress.:.install-man..lz
a1c0 69 70 20 2d 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 ip.-v.-9."$(DESTDIR)$(mandir)/ma
a1e0 6e 31 2f 24 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 n1/$(progname).1"..uninstall.:.u
a200 6e 69 6e 73 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 ninstall-man.uninstall-info.unin
a220 73 74 61 6c 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 stall-bin..uninstall-bin.:..-rm.
a240 2d 66 20 22 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 -f."$(DESTDIR)$(bindir)/$(progna
a260 6d 65 29 22 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 me)"..uninstall-info.:..-if.$(CA
a280 4e 5f 52 55 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 N_RUN_INSTALLINFO).;.then.\....i
a2a0 6e 73 74 61 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 nstall-info.--info-dir="$(DESTDI
a2c0 52 29 24 28 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 R)$(infodir)".--remove."$(DESTDI
a2e0 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 3b 20 R)$(infodir)/$(pkgname).info".;.
a300 5c 0a 09 66 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 \..fi..-rm.-f."$(DESTDIR)$(infod
a320 69 72 29 2f 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 ir)/$(pkgname).info"*..uninstall
a340 2d 6d 61 6e 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 -man.:..-rm.-f."$(DESTDIR)$(mand
a360 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 0a 64 69 73 74 20 3a ir)/man1/$(progname).1"*..dist.:
a380 20 64 6f 63 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 .doc..ln.-sf.$(VPATH).$(DISTNAME
a3a0 29 0a 09 74 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 )..tar.-Hustar.--owner=root.--gr
a3c0 6f 75 70 3d 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 oup=root.-cvf.$(DISTNAME).tar.\.
a3e0 09 20 20 24 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 ...$(DISTNAME)/AUTHORS.\....$(DI
a400 53 54 4e 41 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 STNAME)/COPYING.\....$(DISTNAME)
a420 2f 43 68 61 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 /ChangeLog.\....$(DISTNAME)/INST
a440 41 4c 4c 20 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 ALL.\....$(DISTNAME)/Makefile.in
a460 20 5c 0a 09 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 .\....$(DISTNAME)/NEWS.\....$(DI
a480 53 54 4e 41 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 STNAME)/README.\....$(DISTNAME)/
a4a0 63 6f 6e 66 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 configure.\....$(DISTNAME)/doc/$
a4c0 28 70 72 6f 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 (progname).1.\....$(DISTNAME)/do
a4e0 63 2f 24 28 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 c/$(pkgname).info.\....$(DISTNAM
a500 45 29 2f 64 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 E)/doc/$(pkgname).texi.\....$(DI
a520 53 54 4e 41 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 STNAME)/*.h.\....$(DISTNAME)/*.c
a540 63 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 63 68 65 c.\....$(DISTNAME)/testsuite/che
a560 63 6b 2e 73 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 ck.sh.\....$(DISTNAME)/testsuite
a580 2f 74 65 73 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 /test.txt.\....$(DISTNAME)/tests
a5a0 75 69 74 65 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 uite/fox.lz.\....$(DISTNAME)/tes
a5c0 74 73 75 69 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 tsuite/fox_*.lz.\....$(DISTNAME)
a5e0 2f 74 65 73 74 73 75 69 74 65 2f 74 65 73 74 2e 74 78 74 2e 6c 7a 20 5c 0a 09 20 20 24 28 44 49 /testsuite/test.txt.lz.\....$(DI
a600 53 54 4e 41 4d 45 29 2f 74 65 73 74 73 75 69 74 65 2f 74 65 73 74 5f 65 6d 2e 74 78 74 2e 6c 7a STNAME)/testsuite/test_em.txt.lz
a620 0a 09 72 6d 20 2d 66 20 24 28 44 49 53 54 4e 41 4d 45 29 0a 09 6c 7a 69 70 20 2d 76 20 2d 39 20 ..rm.-f.$(DISTNAME)..lzip.-v.-9.
a640 24 28 44 49 53 54 4e 41 4d 45 29 2e 74 61 72 0a 0a 63 6c 65 61 6e 20 3a 0a 09 2d 72 6d 20 2d 66 $(DISTNAME).tar..clean.:..-rm.-f
a660 20 24 28 70 72 6f 67 6e 61 6d 65 29 20 24 28 6f 62 6a 73 29 0a 0a 64 69 73 74 63 6c 65 61 6e 20 .$(progname).$(objs)..distclean.
a680 3a 20 63 6c 65 61 6e 0a 09 2d 72 6d 20 2d 66 20 4d 61 6b 65 66 69 6c 65 20 63 6f 6e 66 69 67 2e :.clean..-rm.-f.Makefile.config.
a6a0 73 74 61 74 75 73 20 2a 2e 74 61 72 20 2a 2e 74 61 72 2e 6c 7a 0a 00 00 00 00 00 00 00 00 00 00 status.*.tar.*.tar.lz...........
a6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a800 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 4e 45 57 53 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/NEWS..............
a820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a860 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
a880 30 30 30 32 34 37 31 00 31 33 36 37 33 33 37 31 37 35 34 00 30 30 31 32 33 36 31 00 30 00 00 00 0002471.13673371754.0012361.0...
a8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a900 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...................
a920 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...................
a940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aa00 43 68 61 6e 67 65 73 20 69 6e 20 76 65 72 73 69 6f 6e 20 31 2e 32 32 3a 0a 0a 4c 7a 69 70 20 6e Changes.in.version.1.22:..Lzip.n
aa20 6f 77 20 72 65 70 6f 72 74 73 20 61 6e 20 65 72 72 6f 72 20 69 66 20 61 20 66 69 6c 65 20 6e 61 ow.reports.an.error.if.a.file.na
aa40 6d 65 20 69 73 20 65 6d 70 74 79 20 28 6c 7a 69 70 20 2d 74 20 22 22 29 2e 0a 0a 4f 70 74 69 6f me.is.empty.(lzip.-t."")...Optio
aa60 6e 20 27 2d 6f 2c 20 2d 2d 6f 75 74 70 75 74 27 20 6e 6f 77 20 62 65 68 61 76 65 73 20 6c 69 6b n.'-o,.--output'.now.behaves.lik
aa80 65 20 27 2d 63 2c 20 2d 2d 73 74 64 6f 75 74 27 2c 20 62 75 74 20 73 65 6e 64 69 6e 67 20 74 68 e.'-c,.--stdout',.but.sending.th
aaa0 65 0a 6f 75 74 70 75 74 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 74 6f 20 61 20 66 69 e.output.unconditionally.to.a.fi
aac0 6c 65 20 69 6e 73 74 65 61 64 20 6f 66 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 le.instead.of.to.standard.output
aae0 2e 20 53 65 65 20 74 68 65 20 6e 65 77 0a 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 27 2d 6f ..See.the.new.description.of.'-o
ab00 27 20 69 6e 20 74 68 65 20 6d 61 6e 75 61 6c 2e 20 54 68 69 73 20 63 68 61 6e 67 65 20 69 73 20 '.in.the.manual..This.change.is.
ab20 62 61 63 6b 77 61 72 64 73 20 63 6f 6d 70 61 74 69 62 6c 65 20 6f 6e 6c 79 0a 77 68 65 6e 20 28 backwards.compatible.only.when.(
ab40 64 65 29 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 de)compressing.from.standard.inp
ab60 75 74 20 61 6c 6f 6e 65 2e 20 54 68 65 72 65 66 6f 72 65 20 63 6f 6d 6d 61 6e 64 73 20 6c 69 6b ut.alone..Therefore.commands.lik
ab80 65 3a 0a 20 20 6c 7a 69 70 20 2d 6f 20 66 6f 6f 2e 6c 7a 20 2d 20 62 61 72 20 3c 20 66 6f 6f 0a e:...lzip.-o.foo.lz.-.bar.<.foo.
aba0 6d 75 73 74 20 6e 6f 77 20 62 65 20 73 70 6c 69 74 20 69 6e 74 6f 3a 0a 20 20 6c 7a 69 70 20 2d must.now.be.split.into:...lzip.-
abc0 6f 20 66 6f 6f 2e 6c 7a 20 2d 20 3c 20 66 6f 6f 0a 20 20 6c 7a 69 70 20 62 61 72 0a 6f 72 20 72 o.foo.lz.-.<.foo...lzip.bar.or.r
abe0 65 77 72 69 74 74 65 6e 20 61 73 3a 0a 20 20 6c 7a 69 70 20 2d 20 62 61 72 20 3c 20 66 6f 6f 20 ewritten.as:...lzip.-.bar.<.foo.
ac00 3e 20 66 6f 6f 2e 6c 7a 0a 0a 57 68 65 6e 20 75 73 69 6e 67 20 27 2d 63 27 20 6f 72 20 27 2d 6f >.foo.lz..When.using.'-c'.or.'-o
ac20 27 2c 20 6c 7a 69 70 20 6e 6f 77 20 63 68 65 63 6b 73 20 77 68 65 74 68 65 72 20 74 68 65 20 6f ',.lzip.now.checks.whether.the.o
ac40 75 74 70 75 74 20 69 73 20 61 20 74 65 72 6d 69 6e 61 6c 0a 6f 6e 6c 79 20 6f 6e 63 65 2e 0a 0a utput.is.a.terminal.only.once...
ac60 4c 7a 69 70 20 63 61 6e 20 6e 6f 77 20 62 65 20 62 75 69 6c 74 2c 20 74 65 73 74 65 64 2c 20 61 Lzip.can.now.be.built,.tested,.a
ac80 6e 64 20 69 6e 73 74 61 6c 6c 65 64 20 6f 6e 20 73 79 73 74 65 6d 73 20 6c 61 63 6b 69 6e 67 20 nd.installed.on.systems.lacking.
aca0 61 20 27 6d 61 6b 65 27 0a 70 72 6f 67 72 61 6d 2e 20 28 46 65 61 74 75 72 65 20 73 75 67 67 65 a.'make'.program..(Feature.sugge
acc0 73 74 65 64 20 62 79 20 4d 6f 68 61 6d 6d 61 64 20 41 6b 68 6c 61 67 68 69 29 2e 0a 0a 54 68 65 sted.by.Mohammad.Akhlaghi)...The
ace0 20 77 6f 72 64 73 20 27 64 65 63 6f 6d 70 72 65 73 73 65 64 27 20 61 6e 64 20 27 63 6f 6d 70 72 .words.'decompressed'.and.'compr
ad00 65 73 73 65 64 27 20 68 61 76 65 20 62 65 65 6e 20 72 65 70 6c 61 63 65 64 20 77 69 74 68 20 74 essed'.have.been.replaced.with.t
ad20 68 65 0a 73 68 6f 72 74 65 72 20 27 6f 75 74 27 20 61 6e 64 20 27 69 6e 27 20 69 6e 20 74 68 65 he.shorter.'out'.and.'in'.in.the
ad40 20 76 65 72 62 6f 73 65 20 6f 75 74 70 75 74 20 77 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 .verbose.output.when.decompressi
ad60 6e 67 20 6f 72 20 74 65 73 74 69 6e 67 2e 0a 0a 4f 70 74 69 6f 6e 20 27 2d 2d 6c 69 73 74 27 20 ng.or.testing...Option.'--list'.
ad80 6e 6f 77 20 72 65 70 6f 72 74 73 20 63 6f 72 72 75 70 74 69 6f 6e 20 6f 72 20 74 72 75 6e 63 61 now.reports.corruption.or.trunca
ada0 74 69 6f 6e 20 6f 66 20 74 68 65 20 6c 61 73 74 20 68 65 61 64 65 72 20 69 6e 20 61 0a 6d 75 6c tion.of.the.last.header.in.a.mul
adc0 74 69 6d 65 6e 62 65 72 20 66 69 6c 65 20 73 70 65 63 69 66 69 63 61 6c 6c 79 20 69 6e 73 74 65 timenber.file.specifically.inste
ade0 61 64 20 6f 66 20 73 68 6f 77 69 6e 67 20 74 68 65 20 67 65 6e 65 72 69 63 20 6d 65 73 73 61 67 ad.of.showing.the.generic.messag
ae00 65 20 22 4c 61 73 74 0a 6d 65 6d 62 65 72 20 69 6e 20 69 6e 70 75 74 20 66 69 6c 65 20 69 73 20 e."Last.member.in.input.file.is.
ae20 74 72 75 6e 63 61 74 65 64 20 6f 72 20 63 6f 72 72 75 70 74 2e 22 0a 0a 54 68 65 20 63 6f 6d 6d truncated.or.corrupt."..The.comm
ae40 61 6e 64 73 20 6e 65 65 64 65 64 20 74 6f 20 65 78 74 72 61 63 74 20 66 69 6c 65 73 20 66 72 6f ands.needed.to.extract.files.fro
ae60 6d 20 61 20 74 61 72 2e 6c 7a 20 61 72 63 68 69 76 65 20 68 61 76 65 20 62 65 65 6e 0a 64 6f 63 m.a.tar.lz.archive.have.been.doc
ae80 75 6d 65 6e 74 65 64 20 69 6e 20 74 68 65 20 6d 61 6e 75 61 6c 2c 20 69 6e 20 74 68 65 20 6f 75 umented.in.the.manual,.in.the.ou
aea0 74 70 75 74 20 6f 66 20 27 2d 2d 68 65 6c 70 27 2c 20 61 6e 64 20 69 6e 20 74 68 65 20 6d 61 6e tput.of.'--help',.and.in.the.man
aec0 20 70 61 67 65 2e 0a 0a 53 65 76 65 72 61 6c 20 66 69 78 65 73 20 61 6e 64 20 69 6d 70 72 6f 76 .page...Several.fixes.and.improv
aee0 65 6d 65 6e 74 73 20 68 61 76 65 20 62 65 65 6e 20 6d 61 64 65 20 74 6f 20 74 68 65 20 6d 61 6e ements.have.been.made.to.the.man
af00 75 61 6c 2e 0a 0a 39 20 6e 65 77 20 74 65 73 74 20 66 69 6c 65 73 20 68 61 76 65 20 62 65 65 6e ual...9.new.test.files.have.been
af20 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 74 65 73 74 73 75 69 74 65 2e 0a 00 00 00 00 00 00 00 .added.to.the.testsuite.........
af40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
af60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
af80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
afa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
afc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
afe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b000 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 52 45 41 44 4d 45 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/README............
b020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b060 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
b080 30 30 31 34 34 30 32 00 31 33 36 36 37 37 33 35 33 35 33 00 30 30 31 32 35 34 31 00 30 00 00 00 0014402.13667735353.0012541.0...
b0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b100 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...................
b120 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...................
b140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b200 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 6c 65 73 73 20 Description..Lzip.is.a.lossless.
b220 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 69 6e 74 65 data.compressor.with.a.user.inte
b240 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 67 7a 69 70 rface.similar.to.the.one.of.gzip
b260 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 69 66 69 65 .or.bzip2..Lzip.uses.a.simplifie
b280 64 20 66 6f 72 6d 20 6f 66 20 74 68 65 20 27 4c 65 6d 70 65 6c 2d 5a 69 76 2d 4d 61 72 6b 6f 76 d.form.of.the.'Lempel-Ziv-Markov
b2a0 0a 63 68 61 69 6e 2d 41 6c 67 6f 72 69 74 68 6d 27 20 28 4c 5a 4d 41 29 20 73 74 72 65 61 6d 20 .chain-Algorithm'.(LZMA).stream.
b2c0 66 6f 72 6d 61 74 2c 20 63 68 6f 73 65 6e 20 74 6f 20 6d 61 78 69 6d 69 7a 65 20 73 61 66 65 74 format,.chosen.to.maximize.safet
b2e0 79 20 61 6e 64 0a 69 6e 74 65 72 6f 70 65 72 61 62 69 6c 69 74 79 2e 20 4c 7a 69 70 20 63 61 6e y.and.interoperability..Lzip.can
b300 20 63 6f 6d 70 72 65 73 73 20 61 62 6f 75 74 20 61 73 20 66 61 73 74 20 61 73 20 67 7a 69 70 20 .compress.about.as.fast.as.gzip.
b320 28 6c 7a 69 70 20 2d 30 29 20 6f 72 0a 63 6f 6d 70 72 65 73 73 20 6d 6f 73 74 20 66 69 6c 65 73 (lzip.-0).or.compress.most.files
b340 20 6d 6f 72 65 20 74 68 61 6e 20 62 7a 69 70 32 20 28 6c 7a 69 70 20 2d 39 29 2e 20 44 65 63 6f .more.than.bzip2.(lzip.-9)..Deco
b360 6d 70 72 65 73 73 69 6f 6e 20 73 70 65 65 64 20 69 73 0a 69 6e 74 65 72 6d 65 64 69 61 74 65 20 mpression.speed.is.intermediate.
b380 62 65 74 77 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 69 73 20 between.gzip.and.bzip2..Lzip.is.
b3a0 62 65 74 74 65 72 20 74 68 61 6e 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 20 66 72 6f 6d 0a better.than.gzip.and.bzip2.from.
b3c0 61 20 64 61 74 61 20 72 65 63 6f 76 65 72 79 20 70 65 72 73 70 65 63 74 69 76 65 2e 20 4c 7a 69 a.data.recovery.perspective..Lzi
b3e0 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 20 61 6e p.has.been.designed,.written,.an
b400 64 20 74 65 73 74 65 64 0a 77 69 74 68 20 67 72 65 61 74 20 63 61 72 65 20 74 6f 20 72 65 70 6c d.tested.with.great.care.to.repl
b420 61 63 65 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 20 61 73 20 74 68 65 20 73 74 61 6e 64 61 ace.gzip.and.bzip2.as.the.standa
b440 72 64 20 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 rd.general-purpose.compressed.fo
b460 72 6d 61 74 20 66 6f 72 20 75 6e 69 78 2d 6c 69 6b 65 20 73 79 73 74 65 6d 73 2e 0a 0a 54 68 65 rmat.for.unix-like.systems...The
b480 20 6c 7a 69 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 .lzip.file.format.is.designed.fo
b4a0 72 20 64 61 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 r.data.sharing.and.long-term.arc
b4c0 68 69 76 69 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 hiving,.taking.into.account.both
b4e0 20 64 61 74 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 .data.integrity.and.decoder.avai
b500 6c 61 62 69 6c 69 74 79 3a 0a 0a 20 20 20 2a 20 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 lability:.....*.The.lzip.format.
b520 70 72 6f 76 69 64 65 73 20 76 65 72 79 20 73 61 66 65 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 provides.very.safe.integrity.che
b540 63 6b 69 6e 67 20 61 6e 64 20 73 6f 6d 65 20 64 61 74 61 0a 20 20 20 20 20 72 65 63 6f 76 65 72 cking.and.some.data......recover
b560 79 20 6d 65 61 6e 73 2e 20 54 68 65 20 70 72 6f 67 72 61 6d 20 6c 7a 69 70 72 65 63 6f 76 65 72 y.means..The.program.lziprecover
b580 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 0a 20 20 20 20 .can.repair.bit.flip.errors.....
b5a0 20 28 6f 6e 65 20 6f 66 20 74 68 65 20 6d 6f 73 74 20 63 6f 6d 6d 6f 6e 20 66 6f 72 6d 73 20 6f .(one.of.the.most.common.forms.o
b5c0 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 6c 65 73 f.data.corruption).in.lzip.files
b5e0 2c 20 61 6e 64 0a 20 20 20 20 20 70 72 6f 76 69 64 65 73 20 64 61 74 61 20 72 65 63 6f 76 65 72 ,.and......provides.data.recover
b600 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 6f 72 2d y.capabilities,.including.error-
b620 63 68 65 63 6b 65 64 20 6d 65 72 67 69 6e 67 0a 20 20 20 20 20 6f 66 20 64 61 6d 61 67 65 64 20 checked.merging......of.damaged.
b640 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 7a 69 70 copies.of.a.file......*.The.lzip
b660 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 62 6c 65 .format.is.as.simple.as.possible
b680 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 20 20 20 .(but.not.simpler)..The.lzip....
b6a0 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 63 6f 64 ..manual.provides.the.source.cod
b6c0 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 6f 6e 67 e.of.a.simple.decompressor.along
b6e0 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 74 69 6f .with.a......detailed.explanatio
b700 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 74 68 20 n.of.how.it.works,.so.that.with.
b720 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 70 20 6d the.only.help.of.the......lzip.m
b740 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 72 20 61 anual.it.would.be.possible.for.a
b760 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 72 61 63 .digital.archaeologist.to.extrac
b780 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 69 6c 65 t......the.data.from.a.lzip.file
b7a0 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 20 65 76 .long.after.quantum.computers.ev
b7c0 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 6f 6c 65 entually......render.LZMA.obsole
b7e0 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 69 70 20 te......*.Additionally.the.lzip.
b800 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 6f 70 79 reference.implementation.is.copy
b820 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 20 74 68 lefted,.which......guarantees.th
b840 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 72 2e 0a at.it.will.remain.free.forever..
b860 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 6f 72 6d .A.nice.feature.of.the.lzip.form
b880 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 65 61 73 at.is.that.a.corrupt.byte.is.eas
b8a0 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 73 20 66 ier.to.repair.the.nearer.it.is.f
b8c0 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 2e 20 54 rom.the.beginning.of.the.file..T
b8e0 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 69 70 72 herefore,.with.the.help.of.lzipr
b900 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 69 76 65 ecover,.losing.an.entire.archive
b920 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 74 65 20 .just.because.of.a.corrupt.byte.
b940 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 20 6f 66 near.the.beginning.is.a.thing.of
b960 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 65 20 77 .the.past...Lzip.uses.the.same.w
b980 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 73 20 75 ell-defined.exit.status.values.u
b9a0 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 73 61 66 sed.by.bzip2,.which.makes.it.saf
b9c0 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 20 61 6d er.than.compressors.returning.am
b9e0 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 67 7a 69 biguous.warning.values.(like.gzi
ba00 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 65 6e 64 p).when.it.is.used.as.a.back.end
ba20 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 6f 72 20 .for.other.programs.like.tar.or.
ba40 7a 75 74 69 6c 73 2e 0a 0a 4c 7a 69 70 20 77 69 6c 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 zutils...Lzip.will.automatically
ba60 20 75 73 65 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 .use.for.each.file.the.largest.d
ba80 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 74 20 65 78 63 ictionary.size.that.does.not.exc
baa0 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 6f 72 20 74 68 eed.neither.the.file.size.nor.th
bac0 65 20 6c 69 6d 69 74 20 67 69 76 65 6e 2e 20 4b 65 65 70 20 69 6e 20 6d 69 6e 64 20 74 68 61 74 e.limit.given..Keep.in.mind.that
bae0 0a 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 72 .the.decompression.memory.requir
bb00 65 6d 65 6e 74 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 ement.is.affected.at.compression
bb20 20 74 69 6d 65 20 62 79 20 74 68 65 0a 63 68 6f 69 63 65 20 6f 66 20 64 69 63 74 69 6f 6e 61 72 .time.by.the.choice.of.dictionar
bb40 79 20 73 69 7a 65 20 6c 69 6d 69 74 2e 0a 0a 54 68 65 20 61 6d 6f 75 6e 74 20 6f 66 20 6d 65 6d y.size.limit...The.amount.of.mem
bb60 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 6f 6e 20 69 73 20 ory.required.for.compression.is.
bb80 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 74 69 6f 6e 61 72 about.1.or.2.times.the.dictionar
bba0 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 69 6c 65 20 73 69 y.size.limit.(1.if.input.file.si
bbc0 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 20 73 69 7a 65 0a ze.is.less.than.dictionary.size.
bbe0 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 73 20 74 68 65 20 limit,.else.2).plus.9.times.the.
bc00 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 64 2e 20 54 68 65 dictionary.size.really.used..The
bc20 20 6f 70 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 .option.'-0'.is.special.and.only
bc40 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 20 6d 6f 73 74 2e .requires.about.1.5.MiB.at.most.
bc60 20 54 68 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 .The.amount.of.memory.required.f
bc80 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 34 36 20 6b 42 20 or.decompression.is.about.46.kB.
bca0 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 7a 65 0a larger.than.the.dictionary.size.
bcc0 72 65 61 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 really.used...When.compressing,.
bce0 6c 7a 69 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 lzip.replaces.every.file.given.i
bd00 6e 20 74 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 n.the.command.line.with.a.compre
bd20 73 73 65 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 ssed.version.of.itself,.with.the
bd40 20 6e 61 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 .name."original_name.lz"..When.d
bd60 65 63 6f 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 ecompressing,.lzip.attempts.to.g
bd80 75 65 73 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 uess.the.name.for.the.decompress
bda0 65 64 0a 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 ed.file.from.that.of.the.compres
bdc0 73 65 64 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 sed.file.as.follows:..filename.l
bde0 7a 20 20 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 z....becomes...filename.filename
be00 2e 74 6c 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 .tlz...becomes...filename.tar.an
be20 79 6f 74 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 yothername...becomes...anyothern
be40 61 6d 65 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 ame.out..(De)compressing.a.file.
be60 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 67 20 69 is.much.like.copying.or.moving.i
be80 74 3b 20 74 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 t;.therefore.lzip.preserves.the.
bea0 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 2c 20 70 access.and.modification.dates,.p
bec0 65 72 6d 69 73 73 69 6f 6e 73 2c 20 61 6e 64 2c 20 77 68 65 6e 0a 70 6f 73 73 69 62 6c 65 2c 20 ermissions,.and,.when.possible,.
bee0 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 63 ownership.of.the.file.just.as.'c
bf00 70 20 2d 70 27 20 64 6f 65 73 2e 20 28 49 66 20 74 68 65 20 75 73 65 72 20 49 44 20 6f 72 0a 74 p.-p'.does..(If.the.user.ID.or.t
bf20 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 2c he.group.ID.can't.be.duplicated,
bf40 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 20 53 5f 49 53 55 49 .the.file.permission.bits.S_ISUI
bf60 44 20 61 6e 64 0a 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 69 D.and.S_ISGID.are.cleared)...Lzi
bf80 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 65 p.is.able.to.read.from.some.type
bfa0 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 72 s.of.non-regular.files.if.either
bfc0 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 6f 6e 20 27 .the.option.'-c'.or.the.option.'
bfe0 2d 6f 27 20 69 73 20 73 70 65 63 69 66 69 65 64 2e 0a 0a 49 66 20 6e 6f 20 66 69 6c 65 20 6e 61 -o'.is.specified...If.no.file.na
c000 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 73 mes.are.specified,.lzip.compress
c020 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 61 es.(or.decompresses).from.standa
c040 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 4c 7a 69 rd.input.to.standard.output..Lzi
c060 70 20 77 69 6c 6c 20 72 65 66 75 73 65 20 74 6f 20 72 65 61 64 20 63 6f 6d 70 72 65 73 73 65 64 p.will.refuse.to.read.compressed
c080 20 64 61 74 61 0a 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 63 .data.from.a.terminal.or.write.c
c0a0 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 74 6f 20 61 20 74 65 72 6d 69 6e 61 6c 2c 20 61 73 ompressed.data.to.a.terminal,.as
c0c0 20 74 68 69 73 20 77 6f 75 6c 64 20 62 65 0a 65 6e 74 69 72 65 6c 79 20 69 6e 63 6f 6d 70 72 65 .this.would.be.entirely.incompre
c0e0 68 65 6e 73 69 62 6c 65 20 61 6e 64 20 6d 69 67 68 74 20 6c 65 61 76 65 20 74 68 65 20 74 65 72 hensible.and.might.leave.the.ter
c100 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 69 minal.in.an.abnormal.state...Lzi
c120 70 20 77 69 6c 6c 20 63 6f 72 72 65 63 74 6c 79 20 64 65 63 6f 6d 70 72 65 73 73 20 61 20 66 69 p.will.correctly.decompress.a.fi
c140 6c 65 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 le.which.is.the.concatenation.of
c160 20 74 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 .two.or.more.compressed.files..T
c180 68 65 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 he.result.is.the.concatenation.o
c1a0 66 20 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 f.the.corresponding.decompressed
c1c0 20 66 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 .files..Integrity.testing.of.con
c1e0 63 61 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 catenated.compressed.files.is.al
c200 73 6f 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 so.supported...Lzip.can.produce.
c220 6d 75 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 multimember.files,.and.lziprecov
c240 65 72 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 er.can.safely.recover.the.undama
c260 67 65 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 ged.members.in.case.of.file.dama
c280 67 65 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 ge..Lzip.can.also.split.the.comp
c2a0 72 65 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 ressed.output.in.volumes.of.a.gi
c2c0 76 65 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 ven.size,.even.when.reading.from
c2e0 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2e 0a 54 68 69 73 20 61 6c 6c 6f 77 73 20 74 68 65 .standard.input..This.allows.the
c300 20 64 69 72 65 63 74 20 63 72 65 61 74 69 6f 6e 20 6f 66 20 6d 75 6c 74 69 76 6f 6c 75 6d 65 20 .direct.creation.of.multivolume.
c320 63 6f 6d 70 72 65 73 73 65 64 20 74 61 72 20 61 72 63 68 69 76 65 73 2e 0a 0a 4c 7a 69 70 20 69 compressed.tar.archives...Lzip.i
c340 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 72 65 73 s.able.to.compress.and.decompres
c360 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 79 0a 61 s.streams.of.unlimited.size.by.a
c380 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 6d 62 65 utomatically.creating.multimembe
c3a0 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 74 65 64 r.output..The.members.so.created
c3c0 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 0a 0a 49 .are.large,.about.2.PiB.each...I
c3e0 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 69 76 2d n.spite.of.its.name.(Lempel-Ziv-
c400 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 20 69 73 Markov.chain-Algorithm),.LZMA.is
c420 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 20 69 73 .not.a.concrete.algorithm;.it.is
c440 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 6e 67 20 .more.like."any.algorithm.using.
c460 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 65 78 61 the.LZMA.coding.scheme"..For.exa
c480 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 20 75 73 mple,.the.option.'-0'.of.lzip.us
c4a0 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 69 6d 70 es.the.scheme.in.almost.the.simp
c4c0 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 65 20 6c lest.way.possible;.issuing.the.l
c4e0 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 61 20 6c ongest.match.it.can.find,.or.a.l
c500 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 61 20 6d iteral.byte.if.it.can't.find.a.m
c520 61 74 63 68 2e 20 49 6e 76 65 72 73 65 6c 79 2c 20 61 20 6d 75 63 68 20 6d 6f 72 65 20 65 6c 61 atch..Inversely,.a.much.more.ela
c540 62 6f 72 61 74 65 64 20 77 61 79 20 6f 66 0a 66 69 6e 64 69 6e 67 20 63 6f 64 69 6e 67 20 73 65 borated.way.of.finding.coding.se
c560 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 65 quences.of.minimum.size.than.the
c580 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 6c .one.currently.used.by.lzip.coul
c5a0 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 6e d.be.developed,.and.the.resultin
c5c0 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 75 g.sequence.could.also.be.coded.u
c5e0 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 7a sing.the.LZMA.coding.scheme...Lz
c600 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 69 ip.currently.implements.two.vari
c620 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 3b 20 66 61 73 74 ants.of.the.LZMA.algorithm;.fast
c640 0a 28 75 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 .(used.by.option.'-0').and.norma
c660 6c 20 28 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 l.(used.by.all.other.compression
c680 20 6c 65 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 .levels)...The.high.compression.
c6a0 6f 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 of.LZMA.comes.from.combining.two
c6c0 20 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 .basic,.well-proven.compression.
c6e0 69 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 ideas:.sliding.dictionaries.(LZ7
c700 37 2f 37 38 29 20 61 6e 64 20 6d 61 72 6b 6f 76 20 6d 6f 64 65 6c 73 20 28 74 68 65 0a 74 68 69 7/78).and.markov.models.(the.thi
c720 6e 67 20 75 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 ng.used.by.every.compression.alg
c740 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 63 6f 64 65 72 orithm.that.uses.a.range.encoder
c760 20 6f 72 0a 73 69 6d 69 6c 61 72 20 6f 72 64 65 72 2d 30 20 65 6e 74 72 6f 70 79 20 63 6f 64 65 .or.similar.order-0.entropy.code
c780 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 65 67 72 65 67 r.as.its.last.stage).with.segreg
c7a0 61 74 69 6f 6e 20 6f 66 0a 63 6f 6e 74 65 78 74 73 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 77 ation.of.contexts.according.to.w
c7c0 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 0a 54 68 65 20 hat.the.bits.are.used.for...The.
c7e0 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 20 74 ideas.embodied.in.lzip.are.due.t
c800 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 70 6c o.(at.least).the.following.peopl
c820 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 76 20 e:.Abraham.Lempel.and.Jacob.Ziv.
c840 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 79 20 4d (for.the.LZ.algorithm),.Andrey.M
c860 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 61 72 arkov.(for.the.definition.of.Mar
c880 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 72 20 kov.chains),.G.N.N..Martin.(for.
c8a0 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 6e 67 the.definition.of.range.encoding
c8c0 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 6c 20 ),.Igor.Pavlov.(for.putting.all.
c8e0 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 6e 64 the.above.together.in.LZMA),.and
c900 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 49 29 .Julian.Seward.(for.bzip2's.CLI)
c920 2e 0a 0a 4c 41 4e 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 ...LANGUAGE.NOTE:.Uncompressed.=
c940 20 6e 6f 74 20 63 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 .not.compressed.=.plain.data;.it
c960 20 6d 61 79 20 6e 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 .may.never.have.been.compressed.
c980 20 44 65 63 6f 6d 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 .Decompressed.is.used.to.refer.t
c9a0 6f 20 64 61 74 61 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 o.data.which.have.undergone.the.
c9c0 70 72 6f 63 65 73 73 20 6f 66 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0a 0a 0a 43 6f 70 79 process.of.decompression....Copy
c9e0 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 32 30 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a right.(C).2008-2020.Antonio.Diaz
ca00 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 63 75 6d 65 .Diaz...This.file.is.free.docume
ca20 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 70 65 72 6d ntation:.you.have.unlimited.perm
ca40 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 61 6e 64 20 ission.to.copy,.distribute,.and.
ca60 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 65 2e 69 6e modify.it...The.file.Makefile.in
ca80 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 69 67 75 72 .is.a.data.file.used.by.configur
caa0 65 20 74 6f 20 70 72 6f 64 75 63 65 20 74 68 65 0a 4d 61 6b 65 66 69 6c 65 2e 20 49 74 20 68 61 e.to.produce.the.Makefile..It.ha
cac0 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 6e 64 20 70 s.the.same.copyright.owner.and.p
cae0 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 0a 69 74 73 65 6c 66 ermissions.that.configure.itself
cb00 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 ................................
cb20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cc00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 63 6f 6e 66 69 67 75 72 65 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/configure.........
cc20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cc40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cc60 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
cc80 30 30 31 36 33 35 35 00 31 33 36 37 33 34 34 36 34 30 36 00 30 30 31 33 35 37 34 00 30 00 00 00 0016355.13673446406.0013574.0...
cca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ccc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cd00 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...................
cd20 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...................
cd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cdc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ce00 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
ce20 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
ce40 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 30 ressor.#.Copyright.(C).2008-2020
ce60 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
ce80 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:.
cea0 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.#.
cec0 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.
cee0 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
cf00 32 2d 72 63 32 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 2-rc2.progname=lzip.srctrigger=d
cf20 6f 63 2f 24 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 oc/${pkgname}.texi..#.clear.some
cf40 20 74 68 69 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 .things.potentially.inherited.fr
cf60 6f 6d 20 65 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 om.environment..LC_ALL=C.export.
cf80 4c 43 5f 41 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 LC_ALL.srcdir=.prefix=/usr/local
cfa0 0a 65 78 65 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 .exec_prefix='$(prefix)'.bindir=
cfc0 27 24 28 65 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 '$(exec_prefix)/bin'.datarootdir
cfe0 3d 27 24 28 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 ='$(prefix)/share'.infodir='$(da
d000 74 61 72 6f 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 tarootdir)/info'.mandir='$(datar
d020 6f 6f 74 64 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 ootdir)/man'.build=no.check=no.i
d040 6e 73 74 61 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 nstalldir=.CXX=g++.CPPFLAGS=.CXX
d060 46 4c 41 47 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 0a 23 FLAGS='-Wall.-W.-O2'.LDFLAGS=..#
d080 20 63 68 65 63 6b 69 6e 67 20 77 68 65 74 68 65 72 20 77 65 20 61 72 65 20 75 73 69 6e 67 20 47 .checking.whether.we.are.using.G
d0a0 4e 55 20 43 2b 2b 2e 0a 2f 62 69 6e 2f 73 68 20 2d 63 20 22 24 7b 43 58 58 7d 20 2d 2d 76 65 72 NU.C++../bin/sh.-c."${CXX}.--ver
d0c0 73 69 6f 6e 22 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 26 31 20 7c 7c 20 7b 20 43 58 58 3d sion".>./dev/null.2>&1.||.{.CXX=
d0e0 63 2b 2b 20 3b 20 43 58 58 46 4c 41 47 53 3d 2d 4f 32 20 3b 20 7d 0a 0a 23 20 4c 6f 6f 70 20 6f c++.;.CXXFLAGS=-O2.;.}..#.Loop.o
d100 76 65 72 20 61 6c 6c 20 61 72 67 73 0a 61 72 67 73 3d 0a 6e 6f 5f 63 72 65 61 74 65 3d 0a 77 68 ver.all.args.args=.no_create=.wh
d120 69 6c 65 20 5b 20 24 23 20 21 3d 20 30 20 5d 20 3b 20 64 6f 0a 0a 09 23 20 47 65 74 20 74 68 65 ile.[.$#.!=.0.].;.do...#.Get.the
d140 20 66 69 72 73 74 20 61 72 67 2c 20 61 6e 64 20 73 68 75 66 66 6c 65 0a 09 6f 70 74 69 6f 6e 3d .first.arg,.and.shuffle..option=
d160 24 31 20 3b 20 61 72 67 32 3d 6e 6f 0a 09 73 68 69 66 74 0a 0a 09 23 20 41 64 64 20 74 68 65 20 $1.;.arg2=no..shift...#.Add.the.
d180 61 72 67 75 6d 65 6e 74 20 71 75 6f 74 65 64 20 74 6f 20 61 72 67 73 0a 09 69 66 20 5b 20 2d 7a argument.quoted.to.args..if.[.-z
d1a0 20 22 24 7b 61 72 67 73 7d 22 20 5d 20 3b 20 74 68 65 6e 20 61 72 67 73 3d 22 5c 22 24 7b 6f 70 ."${args}".].;.then.args="\"${op
d1c0 74 69 6f 6e 7d 5c 22 22 0a 09 65 6c 73 65 20 61 72 67 73 3d 22 24 7b 61 72 67 73 7d 20 5c 22 24 tion}\""..else.args="${args}.\"$
d1e0 7b 6f 70 74 69 6f 6e 7d 5c 22 22 20 3b 20 66 69 0a 0a 09 23 20 53 70 6c 69 74 20 6f 75 74 20 74 {option}\"".;.fi...#.Split.out.t
d200 68 65 20 61 72 67 75 6d 65 6e 74 20 66 6f 72 20 6f 70 74 69 6f 6e 73 20 74 68 61 74 20 74 61 6b he.argument.for.options.that.tak
d220 65 20 74 68 65 6d 0a 09 63 61 73 65 20 24 7b 6f 70 74 69 6f 6e 7d 20 69 6e 0a 09 2a 3d 2a 29 20 e.them..case.${option}.in..*=*).
d240 6f 70 74 61 72 67 3d 60 65 63 68 6f 20 22 24 7b 6f 70 74 69 6f 6e 7d 22 20 7c 20 73 65 64 20 2d optarg=`echo."${option}".|.sed.-
d260 65 20 27 73 2c 5e 5b 5e 3d 5d 2a 3d 2c 2c 3b 73 2c 2f 24 2c 2c 27 60 20 3b 3b 0a 09 65 73 61 63 e.'s,^[^=]*=,,;s,/$,,'`.;;..esac
d280 0a 0a 09 23 20 50 72 6f 63 65 73 73 20 74 68 65 20 6f 70 74 69 6f 6e 73 0a 09 63 61 73 65 20 24 ...#.Process.the.options..case.$
d2a0 7b 6f 70 74 69 6f 6e 7d 20 69 6e 0a 09 2d 2d 68 65 6c 70 20 7c 20 2d 68 29 0a 09 09 65 63 68 6f {option}.in..--help.|.-h)...echo
d2c0 20 22 55 73 61 67 65 3a 20 24 30 20 5b 4f 50 54 49 4f 4e 5d 2e 2e 2e 20 5b 56 41 52 3d 56 41 4c ."Usage:.$0.[OPTION]....[VAR=VAL
d2e0 55 45 5d 2e 2e 2e 22 0a 09 09 65 63 68 6f 0a 09 09 65 63 68 6f 20 22 54 6f 20 61 73 73 69 67 6e UE]..."...echo...echo."To.assign
d300 20 6d 61 6b 65 66 69 6c 65 20 76 61 72 69 61 62 6c 65 73 20 28 65 2e 67 2e 2c 20 43 58 58 2c 20 .makefile.variables.(e.g.,.CXX,.
d320 43 58 58 46 4c 41 47 53 2e 2e 2e 29 2c 20 73 70 65 63 69 66 79 20 74 68 65 6d 20 61 73 22 0a 09 CXXFLAGS...),.specify.them.as"..
d340 09 65 63 68 6f 20 22 61 72 67 75 6d 65 6e 74 73 20 74 6f 20 63 6f 6e 66 69 67 75 72 65 20 69 6e .echo."arguments.to.configure.in
d360 20 74 68 65 20 66 6f 72 6d 20 56 41 52 3d 56 41 4c 55 45 2e 22 0a 09 09 65 63 68 6f 0a 09 09 65 .the.form.VAR=VALUE."...echo...e
d380 63 68 6f 20 22 4f 70 74 69 6f 6e 73 20 61 6e 64 20 76 61 72 69 61 62 6c 65 73 3a 20 5b 64 65 66 cho."Options.and.variables:.[def
d3a0 61 75 6c 74 73 20 69 6e 20 62 72 61 63 6b 65 74 73 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 68 aults.in.brackets]"...echo."..-h
d3c0 2c 20 2d 2d 68 65 6c 70 20 20 20 20 20 20 20 20 20 20 20 20 64 69 73 70 6c 61 79 20 74 68 69 73 ,.--help............display.this
d3e0 20 68 65 6c 70 20 61 6e 64 20 65 78 69 74 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 56 2c 20 2d 2d .help.and.exit"...echo."..-V,.--
d400 76 65 72 73 69 6f 6e 20 20 20 20 20 20 20 20 20 6f 75 74 70 75 74 20 76 65 72 73 69 6f 6e 20 69 version.........output.version.i
d420 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 6e 64 20 65 78 69 74 22 0a 09 09 65 63 68 6f 20 22 20 20 2d nformation.and.exit"...echo."..-
d440 2d 73 72 63 64 69 72 3d 44 49 52 20 20 20 20 20 20 20 20 20 20 66 69 6e 64 20 74 68 65 20 73 6f -srcdir=DIR..........find.the.so
d460 75 72 63 65 73 20 69 6e 20 44 49 52 20 5b 2e 20 6f 72 20 2e 2e 5d 22 0a 09 09 65 63 68 6f 20 22 urces.in.DIR.[..or...]"...echo."
d480 20 20 2d 2d 70 72 65 66 69 78 3d 44 49 52 20 20 20 20 20 20 20 20 20 20 69 6e 73 74 61 6c 6c 20 ..--prefix=DIR..........install.
d4a0 69 6e 74 6f 20 44 49 52 20 5b 24 7b 70 72 65 66 69 78 7d 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 into.DIR.[${prefix}]"...echo."..
d4c0 2d 2d 65 78 65 63 2d 70 72 65 66 69 78 3d 44 49 52 20 20 20 20 20 62 61 73 65 20 64 69 72 65 63 --exec-prefix=DIR.....base.direc
d4e0 74 6f 72 79 20 66 6f 72 20 61 72 63 68 2d 64 65 70 65 6e 64 65 6e 74 20 66 69 6c 65 73 20 5b 24 tory.for.arch-dependent.files.[$
d500 7b 65 78 65 63 5f 70 72 65 66 69 78 7d 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 2d 62 69 6e 64 {exec_prefix}]"...echo."..--bind
d520 69 72 3d 44 49 52 20 20 20 20 20 20 20 20 20 20 75 73 65 72 20 65 78 65 63 75 74 61 62 6c 65 73 ir=DIR..........user.executables
d540 20 64 69 72 65 63 74 6f 72 79 20 5b 24 7b 62 69 6e 64 69 72 7d 5d 22 0a 09 09 65 63 68 6f 20 22 .directory.[${bindir}]"...echo."
d560 20 20 2d 2d 64 61 74 61 72 6f 6f 74 64 69 72 3d 44 49 52 20 20 20 20 20 62 61 73 65 20 64 69 72 ..--datarootdir=DIR.....base.dir
d580 65 63 74 6f 72 79 20 66 6f 72 20 64 6f 63 20 61 6e 64 20 64 61 74 61 20 5b 24 7b 64 61 74 61 72 ectory.for.doc.and.data.[${datar
d5a0 6f 6f 74 64 69 72 7d 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 2d 69 6e 66 6f 64 69 72 3d 44 49 ootdir}]"...echo."..--infodir=DI
d5c0 52 20 20 20 20 20 20 20 20 20 69 6e 66 6f 20 66 69 6c 65 73 20 64 69 72 65 63 74 6f 72 79 20 5b R.........info.files.directory.[
d5e0 24 7b 69 6e 66 6f 64 69 72 7d 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 2d 6d 61 6e 64 69 72 3d ${infodir}]"...echo."..--mandir=
d600 44 49 52 20 20 20 20 20 20 20 20 20 20 6d 61 6e 20 70 61 67 65 73 20 64 69 72 65 63 74 6f 72 79 DIR..........man.pages.directory
d620 20 5b 24 7b 6d 61 6e 64 69 72 7d 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 2d 62 75 69 6c 64 20 .[${mandir}]"...echo."..--build.
d640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 75 69 6c 64 20 69 6e 20 6f 6e 65 20 73 74 65 70 20 ..............build.in.one.step.
d660 77 69 74 68 6f 75 74 20 75 73 69 6e 67 20 27 6d 61 6b 65 27 22 0a 09 09 65 63 68 6f 20 22 20 20 without.using.'make'"...echo."..
d680 2d 2d 63 68 65 63 6b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 68 65 63 6b 20 77 69 74 68 --check...............check.with
d6a0 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 6c out.using.'make',.implies.--buil
d6c0 64 22 0a 09 09 65 63 68 6f 20 22 20 20 2d 2d 69 6e 73 74 61 6c 6c 64 69 72 3d 42 49 4e 44 49 52 d"...echo."..--installdir=BINDIR
d6e0 20 20 20 69 6e 73 74 61 6c 6c 20 77 69 74 68 6f 75 74 20 75 73 69 6e 67 20 27 6d 61 6b 65 27 2c ...install.without.using.'make',
d700 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 43 58 58 3d .implies.--build"...echo."..CXX=
d720 43 4f 4d 50 49 4c 45 52 20 20 20 20 20 20 20 20 20 20 43 2b 2b 20 63 6f 6d 70 69 6c 65 72 20 74 COMPILER..........C++.compiler.t
d740 6f 20 75 73 65 20 5b 24 7b 43 58 58 7d 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 43 50 50 46 4c 41 o.use.[${CXX}]"...echo."..CPPFLA
d760 47 53 3d 4f 50 54 49 4f 4e 53 20 20 20 20 20 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 6f 70 74 GS=OPTIONS......command.line.opt
d780 69 6f 6e 73 20 66 6f 72 20 74 68 65 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 5b 24 7b 43 50 50 ions.for.the.preprocessor.[${CPP
d7a0 46 4c 41 47 53 7d 5d 22 0a 09 09 65 63 68 6f 20 22 20 20 43 58 58 46 4c 41 47 53 3d 4f 50 54 49 FLAGS}]"...echo."..CXXFLAGS=OPTI
d7c0 4f 4e 53 20 20 20 20 20 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 20 66 6f ONS......command.line.options.fo
d7e0 72 20 74 68 65 20 43 2b 2b 20 63 6f 6d 70 69 6c 65 72 20 5b 24 7b 43 58 58 46 4c 41 47 53 7d 5d r.the.C++.compiler.[${CXXFLAGS}]
d800 22 0a 09 09 65 63 68 6f 20 22 20 20 43 58 58 46 4c 41 47 53 2b 3d 4f 50 54 49 4f 4e 53 20 20 20 "...echo."..CXXFLAGS+=OPTIONS...
d820 20 20 61 70 70 65 6e 64 20 6f 70 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 ..append.options.to.the.current.
d840 76 61 6c 75 65 20 6f 66 20 43 58 58 46 4c 41 47 53 22 0a 09 09 65 63 68 6f 20 22 20 20 4c 44 46 value.of.CXXFLAGS"...echo."..LDF
d860 4c 41 47 53 3d 4f 50 54 49 4f 4e 53 20 20 20 20 20 20 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 LAGS=OPTIONS.......command.line.
d880 6f 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 65 20 6c 69 6e 6b 65 72 20 5b 24 7b 4c 44 46 4c 41 47 options.for.the.linker.[${LDFLAG
d8a0 53 7d 5d 22 0a 09 09 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 S}]"...echo...exit.0.;;..--versi
d8c0 6f 6e 20 7c 20 2d 56 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 on.|.-V)...echo."Configure.scrip
d8e0 74 20 66 6f 72 20 24 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 t.for.${pkgname}.version.${pkgve
d900 72 73 69 6f 6e 7d 22 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 rsion}"...exit.0.;;..--srcdir)..
d920 20 20 20 20 20 20 20 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 ..........srcdir=$1.;.arg2=yes.;
d940 3b 0a 09 2d 2d 70 72 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 ;..--prefix)............prefix=$
d960 31 20 3b 20 61 72 67 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 1.;.arg2=yes.;;..--exec-prefix).
d980 20 65 78 65 63 5f 70 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 .exec_prefix=$1.;.arg2=yes.;;..-
d9a0 2d 62 69 6e 64 69 72 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 -bindir)............bindir=$1.;.
d9c0 61 72 67 32 3d 79 65 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 arg2=yes.;;..--datarootdir)..dat
d9e0 61 72 6f 6f 74 64 69 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 arootdir=$1.;.arg2=yes.;;..--inf
da00 6f 64 69 72 29 20 20 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 odir)..........infodir=$1.;.arg2
da20 3d 79 65 73 20 3b 3b 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 =yes.;;..--mandir)............ma
da40 6e 64 69 72 3d 24 31 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 ndir=$1.;.arg2=yes.;;..--install
da60 64 69 72 29 20 20 20 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 dir)....installdir=$1.;.arg2=yes
da80 20 3b 3b 0a 0a 09 2d 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 .;;...--srcdir=*)............src
daa0 64 69 72 3d 24 7b 6f 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 dir=${optarg}.;;..--prefix=*)...
dac0 20 20 20 20 20 20 20 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 .........prefix=${optarg}.;;..--
dae0 65 78 65 63 2d 70 72 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 exec-prefix=*)..exec_prefix=${op
db00 74 61 72 67 7d 20 3b 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 targ}.;;..--bindir=*)...........
db20 20 62 69 6e 64 69 72 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 .bindir=${optarg}.;;..--dataroot
db40 64 69 72 3d 2a 29 20 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 dir=*)..datarootdir=${optarg}.;;
db60 0a 09 2d 2d 69 6e 66 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 ..--infodir=*)..........infodir=
db80 24 7b 6f 70 74 61 72 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 ${optarg}.;;..--mandir=*).......
dba0 20 20 20 20 20 6d 61 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 .....mandir=${optarg}.;;..--buil
dbc0 64 29 20 20 20 20 20 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 d)......................build=ye
dbe0 73 20 3b 3b 0a 09 2d 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 s.;;..--check)..........check=ye
dc00 73 20 3b 20 62 75 69 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 s.;.build=yes.;;..--installdir=*
dc20 29 20 20 20 20 69 6e 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 )....installdir=${optarg}.;.buil
dc40 64 3d 79 65 73 20 3b 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 d=yes.;;..--no-create)..........
dc60 20 20 20 20 6e 6f 5f 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 ....no_create=yes.;;...CXX=*)...
dc80 20 20 20 20 20 20 20 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 .........CXX=${optarg}.;;..CPPFL
dca0 41 47 53 3d 2a 29 20 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 AGS=*)..CPPFLAGS=${optarg}.;;..C
dcc0 58 58 46 4c 41 47 53 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 XXFLAGS=*)..CXXFLAGS=${optarg}.;
dce0 3b 0a 09 43 58 58 46 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 ;..CXXFLAGS+=*).CXXFLAGS="${CXXF
dd00 4c 41 47 53 7d 20 24 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 LAGS}.${optarg}".;;..LDFLAGS=*).
dd20 20 20 20 4c 44 46 4c 41 47 53 3d 24 7b 6f 70 74 61 72 67 7d 20 3b 3b 0a 0a 09 2d 2d 2a 29 0a 09 ...LDFLAGS=${optarg}.;;...--*)..
dd40 09 65 63 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 .echo."configure:.WARNING:.unrec
dd60 6f 67 6e 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 ognized.option:.'${option}'".1>&
dd80 32 20 3b 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 2.;;..*=*.|.*-*-*).;;..*)...echo
dda0 20 22 63 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 ."configure:.unrecognized.option
ddc0 3a 20 27 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 :.'${option}'".1>&2...echo."Try.
dde0 27 63 6f 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 'configure.--help'.for.more.info
de00 72 6d 61 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 rmation.".1>&2...exit.1.;;..esac
de20 0a 0a 09 23 20 43 68 65 63 6b 20 69 66 20 74 68 65 20 6f 70 74 69 6f 6e 20 74 6f 6f 6b 20 61 20 ...#.Check.if.the.option.took.a.
de40 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 32 7d separate.argument..if.[."${arg2}
de60 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 30 20 ".=.yes.].;.then...if.[.$#.!=.0.
de80 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 20 3b ].;.then.args="${args}.\"$1\"".;
dea0 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 20 4d .shift...else.echo."configure:.M
dec0 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 22 20 issing.argument.to.'${option}'".
dee0 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 23 20 1>&2....exit.1...fi..fi.done..#.
df00 46 69 6e 64 20 74 68 65 20 73 6f 75 72 63 65 20 66 69 6c 65 73 2c 20 69 66 20 6c 6f 63 61 74 69 Find.the.source.files,.if.locati
df20 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 74 on.was.not.specified..srcdirtext
df40 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 09 =.if.[.-z."${srcdir}".].;.then..
df60 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 72 srcdirtext="or...or...".;.srcdir
df80 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 72 =...if.[.!.-r."${srcdir}/${srctr
dfa0 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 0a igger}".].;.then.srcdir=...;.fi.
dfc0 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 67 .if.[.!.-r."${srcdir}/${srctrigg
dfe0 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 61 er}".].;.then...##.the.sed.comma
e000 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 6f nd.below.emulates.the.dirname.co
e020 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 20 mmand...srcdir=`echo."$0".|.sed.
e040 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 0a -e.'s,[^/]*$,,;s,/$,,;s,^$,.,'`.
e060 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 73 .fi.fi..if.[.!.-r."${srcdir}/${s
e080 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 66 rctrigger}".].;.then..echo."conf
e0a0 69 67 75 72 65 3a 20 43 61 6e 27 74 20 66 69 6e 64 20 73 6f 75 72 63 65 73 20 69 6e 20 24 7b 73 igure:.Can't.find.sources.in.${s
e0c0 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 09 65 63 68 6f rcdir}.${srcdirtext}".1>&2..echo
e0e0 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 63 74 72 69 67 ."configure:.(At.least.${srctrig
e100 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 69 74 20 31 0a ger}.is.missing).".1>&2..exit.1.
e120 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 61 74 27 73 20 fi..#.Set.srcdir.to...if.that's.
e140 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 22 60 63 64 20 what.it.is..if.[."`pwd`".=."`cd.
e160 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 6e 20 73 72 63 "${srcdir}".;.pwd`".].;.then.src
e180 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 20 3d 20 79 65 dir=..;.fi..if.[."${build}".=.ye
e1a0 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 3a 61 20 2d 65 s.].;.then...objs=$(sed.-e.:a.-e
e1c0 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 73 72 63 64 69 .'/\\$/N;.s/\\\n//;.ta'."${srcdi
e1e0 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 20 20 73 65 64 r}/Makefile.in".|.\..........sed
e200 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 7c 20 73 65 64 .-n.-e.'s/^.*objs.*=.*//p'.|.sed
e220 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 6f 66 69 6c 65 .-e.'s/.\{2,\}/./g')...for.ofile
e240 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 24 7b 6f 66 69 .in.${objs}.;.do.....file="${ofi
e260 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 7b 6f 66 69 6c le%.o}.cc".;.pver=.....[."${ofil
e280 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 50 52 4f 47 56 e}".=.main.o.].&&.pver=".-DPROGV
e2a0 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 20 20 20 63 6f ERSION=\"${pkgversion}\"".....co
e2c0 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 46 4c 41 47 53 mpile_command="${CXX}.${CPPFLAGS
e2e0 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 24 7b 6f 66 69 }.${CXXFLAGS}${pver}.-c.-o.${ofi
e300 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 6d 6d 61 6e 64 le}".....echo."${compile_command
e320 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 63 6f 6d 70 69 }.${srcdir}/${file}".....${compi
e340 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 6c 65 7d 22 20 le_command}."${srcdir}/${file}".
e360 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 6d 61 6e 64 3d ||.exit.1...done...link_command=
e380 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 47 53 7d 20 2d "${CXX}.${LDFLAGS}.${CXXFLAGS}.-
e3a0 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 68 6f 20 22 24 o.${progname}.${objs}"...echo."$
e3c0 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 6d 6d 61 6e 64 {link_command}".;.${link_command
e3e0 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 7d 22 20 3d 20 }.||.exit.1...if.[."${check}".=.
e400 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 2f 74 65 73 74 yes.].;.then....."${srcdir}/test
e420 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 74 65 73 74 73 suite/check.sh"."${srcdir}/tests
e440 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 20 31 0a 20 20 uite".${pkgversion}.||.exit.1...
e460 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 22 20 5d 20 3b fi...if.[.-n."${installdir}".].;
e480 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 24 7b 70 72 6f .then.....echo."installing.${pro
e4a0 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 20 20 5b 20 2d gname}.in.${installdir}".....[.-
e4c0 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 72 20 2d 70 20 d."${installdir}".].||.mkdir.-p.
e4e0 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 20 20 20 63 70 "${installdir}".||.exit.1.....cp
e500 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 64 69 72 7d 2f .-fp.${progname}."${installdir}/
e520 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 0a 20 20 65 78 ${progname}".||.exit.1...fi...ex
e540 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 5f 63 72 65 61 it.0.fi..echo.if.[.-z."${no_crea
e560 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 6e 67 20 63 6f te}".].;.then..echo."creating.co
e580 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 73 74 61 74 75 nfig.status"..rm.-f.config.statu
e5a0 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 4f 46 0a 23 21 s..cat.>.config.status.<<.EOF.#!
e5c0 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 6e 65 72 61 74 ./bin/sh.#.This.file.was.generat
e5e0 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 72 65 2e 20 44 ed.automatically.by.configure..D
e600 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 74 6f 20 72 65 on't.edit..#.Run.this.file.to.re
e620 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 61 74 69 6f 6e create.the.current.configuration
e640 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 6f 66 74 77 61 ..#.#.This.script.is.free.softwa
e660 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 69 73 73 69 6f re:.you.have.unlimited.permissio
e680 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 64 20 6d 6f 64 n.#.to.copy,.distribute,.and.mod
e6a0 69 66 79 20 69 74 2e 0a 0a 65 78 65 63 20 2f 62 69 6e 2f 73 68 20 24 30 20 24 7b 61 72 67 73 7d ify.it...exec./bin/sh.$0.${args}
e6c0 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 78 20 63 6f 6e 66 69 .--no-create.EOF..chmod.+x.confi
e6e0 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 6e 67 20 4d 61 6b 65 g.status.fi..echo."creating.Make
e700 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 64 69 72 7d 22 0a 65 file".echo."VPATH.=.${srcdir}".e
e720 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 65 63 68 6f 20 22 65 cho."prefix.=.${prefix}".echo."e
e740 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 22 0a 65 63 68 xec_prefix.=.${exec_prefix}".ech
e760 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 68 6f 20 22 64 61 74 o."bindir.=.${bindir}".echo."dat
e780 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 22 0a 65 63 68 6f 20 arootdir.=.${datarootdir}".echo.
e7a0 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 68 6f 20 22 6d 61 6e "infodir.=.${infodir}".echo."man
e7c0 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 58 20 3d 20 24 7b 43 dir.=.${mandir}".echo."CXX.=.${C
e7e0 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 50 50 46 4c 41 47 53 XX}".echo."CPPFLAGS.=.${CPPFLAGS
e800 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 46 4c 41 47 53 7d 22 }".echo."CXXFLAGS.=.${CXXFLAGS}"
e820 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 53 7d 22 0a 72 6d 20 .echo."LDFLAGS.=.${LDFLAGS}".rm.
e840 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 3c 3c 20 45 4f -f.Makefile.cat.>.Makefile.<<.EO
e860 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 41 20 6c 6f 73 F.#.Makefile.for.Lzip.-.LZMA.los
e880 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 79 72 69 67 68 sless.data.compressor.#.Copyrigh
e8a0 74 20 28 43 29 20 32 30 30 38 2d 32 30 32 30 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 t.(C).2008-2020.Antonio.Diaz.Dia
e8c0 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 64 20 61 75 74 z..#.This.file.was.generated.aut
e8e0 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 6e 27 74 20 65 omatically.by.configure..Don't.e
e900 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 72 65 65 20 73 dit..#.#.This.Makefile.is.free.s
e920 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
e940 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
e960 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 6b 67 6e 61 6d d.modify.it...pkgname.=.${pkgnam
e980 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 6e 7d 0a 70 72 e}.pkgversion.=.${pkgversion}.pr
e9a0 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 3d 20 24 7b 73 ogname.=.${progname}.VPATH.=.${s
e9c0 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 78 65 63 5f 70 rcdir}.prefix.=.${prefix}.exec_p
e9e0 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 69 72 20 3d 20 refix.=.${exec_prefix}.bindir.=.
ea00 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 61 74 61 72 6f ${bindir}.datarootdir.=.${dataro
ea20 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 0a 6d 61 6e 64 otdir}.infodir.=.${infodir}.mand
ea40 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 0a 43 50 50 46 ir.=.${mandir}.CXX.=.${CXX}.CPPF
ea60 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 20 3d 20 24 7b LAGS.=.${CPPFLAGS}.CXXFLAGS.=.${
ea80 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 47 53 7d 0a 45 CXXFLAGS}.LDFLAGS.=.${LDFLAGS}.E
eaa0 4f 46 0a 63 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 OF.cat."${srcdir}/Makefile.in".>
eac0 3e 20 4d 61 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 >.Makefile..echo."OK..Now.you.ca
eae0 6e 20 72 75 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 n.run.make."....................
eb00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eb20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ebc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ebe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 64 6f 63 2f 6c 7a 69 70 2e 31 00 00 00 00 00 00 00 00 lzip-1.22-rc2/doc/lzip.1........
ec20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec60 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
ec80 30 30 31 30 32 34 33 00 31 33 36 37 33 34 34 36 36 31 34 00 30 30 31 33 34 36 31 00 30 00 00 00 0010243.13673446614.0013461.0...
eca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ecc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ece0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed00 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...................
ed20 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...................
ed40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
edc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ede0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee00 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
ee20 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 36 2e .was.generated.by.help2man.1.46.
ee40 31 2e 0a 2e 54 48 20 4c 5a 49 50 20 22 31 22 20 22 4a 75 6e 65 20 32 30 32 30 22 20 22 6c 7a 69 1...TH.LZIP."1"."June.2020"."lzi
ee60 70 20 31 2e 32 32 2d 72 63 32 22 20 22 55 73 65 72 20 43 6f 6d 6d 61 6e 64 73 22 0a 2e 53 48 20 p.1.22-rc2"."User.Commands"..SH.
ee80 4e 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 NAME.lzip.\-.reduces.the.size.of
eea0 20 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 .files..SH.SYNOPSIS..B.lzip.[\fI
eec0 5c 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 \,options\/\fR].[\fI\,files\/\fR
eee0 5d 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 ]..SH.DESCRIPTION.Lzip.is.a.loss
ef00 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
ef20 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
ef40 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
ef60 6c 69 66 69 65 64 20 66 6f 72 6d 20 6f 66 20 74 68 65 20 27 4c 65 6d 70 65 6c 5c 2d 5a 69 76 5c lified.form.of.the.'Lempel\-Ziv\
ef80 2d 4d 61 72 6b 6f 76 0a 63 68 61 69 6e 5c 2d 41 6c 67 6f 72 69 74 68 6d 27 20 28 4c 5a 4d 41 29 -Markov.chain\-Algorithm'.(LZMA)
efa0 20 73 74 72 65 61 6d 20 66 6f 72 6d 61 74 2c 20 63 68 6f 73 65 6e 20 74 6f 20 6d 61 78 69 6d 69 .stream.format,.chosen.to.maximi
efc0 7a 65 20 73 61 66 65 74 79 20 61 6e 64 0a 69 6e 74 65 72 6f 70 65 72 61 62 69 6c 69 74 79 2e 20 ze.safety.and.interoperability..
efe0 4c 7a 69 70 20 63 61 6e 20 63 6f 6d 70 72 65 73 73 20 61 62 6f 75 74 20 61 73 20 66 61 73 74 20 Lzip.can.compress.about.as.fast.
f000 61 73 20 67 7a 69 70 20 28 6c 7a 69 70 20 5c 66 42 5c 2d 30 5c 66 52 29 20 6f 72 0a 63 6f 6d 70 as.gzip.(lzip.\fB\-0\fR).or.comp
f020 72 65 73 73 20 6d 6f 73 74 20 66 69 6c 65 73 20 6d 6f 72 65 20 74 68 61 6e 20 62 7a 69 70 32 20 ress.most.files.more.than.bzip2.
f040 28 6c 7a 69 70 20 5c 66 42 5c 2d 39 5c 66 52 29 2e 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 (lzip.\fB\-9\fR)..Decompression.
f060 73 70 65 65 64 20 69 73 0a 69 6e 74 65 72 6d 65 64 69 61 74 65 20 62 65 74 77 65 65 6e 20 67 7a speed.is.intermediate.between.gz
f080 69 70 20 61 6e 64 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 69 73 20 62 65 74 74 65 72 20 74 68 61 ip.and.bzip2..Lzip.is.better.tha
f0a0 6e 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 20 66 72 6f 6d 0a 61 20 64 61 74 61 20 72 65 63 n.gzip.and.bzip2.from.a.data.rec
f0c0 6f 76 65 72 79 20 70 65 72 73 70 65 63 74 69 76 65 2e 20 4c 7a 69 70 20 68 61 73 20 62 65 65 6e overy.perspective..Lzip.has.been
f0e0 20 64 65 73 69 67 6e 65 64 2c 20 77 72 69 74 74 65 6e 2c 20 61 6e 64 20 74 65 73 74 65 64 0a 77 .designed,.written,.and.tested.w
f100 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 20 61 ith.great.care.to.replace.gzip.a
f120 6e 64 20 62 7a 69 70 32 20 61 73 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 67 65 6e 65 72 61 6c nd.bzip2.as.the.standard.general
f140 5c 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 74 20 66 6f 72 20 \-purpose.compressed.format.for.
f160 75 6e 69 78 5c 2d 6c 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 unix\-like.systems...SH.OPTIONS.
f180 2e 54 50 0a 5c 66 42 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 .TP.\fB\-h\fR,.\fB\-\-help\fR.di
f1a0 73 70 6c 61 79 20 74 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 splay.this.help.and.exit..TP.\fB
f1c0 5c 2d 56 5c 66 52 2c 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 \-V\fR,.\fB\-\-version\fR.output
f1e0 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 0a 2e 54 .version.information.and.exit..T
f200 50 0a 5c 66 42 5c 2d 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 P.\fB\-a\fR,.\fB\-\-trailing\-er
f220 72 6f 72 5c 66 52 0a 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 ror\fR.exit.with.error.status.if
f240 20 74 72 61 69 6c 69 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 .trailing.data..TP.\fB\-b\fR,.\f
f260 42 5c 2d 5c 2d 6d 65 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 B\-\-member\-size=\fR<bytes>.set
f280 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 6c 69 6d 69 74 20 69 6e 20 62 79 74 65 73 0a 2e 54 50 0a .member.size.limit.in.bytes..TP.
f2a0 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 0a 77 72 69 74 \fB\-c\fR,.\fB\-\-stdout\fR.writ
f2c0 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 69 6e 70 75 74 e.to.standard.output,.keep.input
f2e0 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 5c 2d 64 65 63 .files..TP.\fB\-d\fR,.\fB\-\-dec
f300 6f 6d 70 72 65 73 73 5c 66 52 0a 64 65 63 6f 6d 70 72 65 73 73 0a 2e 54 50 0a 5c 66 42 5c 2d 66 ompress\fR.decompress..TP.\fB\-f
f320 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 69 74 65 20 65 \fR,.\fB\-\-force\fR.overwrite.e
f340 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 42 5c 2d 46 5c xisting.output.files..TP.\fB\-F\
f360 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 72 63 65 20 72 fR,.\fB\-\-recompress\fR.force.r
f380 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 64 20 66 69 6c e\-compression.of.compressed.fil
f3a0 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 65 70 5c 66 52 es..TP.\fB\-k\fR,.\fB\-\-keep\fR
f3c0 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 66 69 6c 65 73 .keep.(don't.delete).input.files
f3e0 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 5c 66 52 0a 70 ..TP.\fB\-l\fR,.\fB\-\-list\fR.p
f400 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 7a 65 73 0a 2e rint.(un)compressed.file.sizes..
f420 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 2d 6c 65 6e 67 TP.\fB\-m\fR,.\fB\-\-match\-leng
f440 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 67 74 68 20 6c th=\fR<bytes>.set.match.length.l
f460 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 2d 6f 5c 66 52 imit.in.bytes.[36]..TP.\fB\-o\fR
f480 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 72 69 74 65 20 ,.\fB\-\-output=\fR<file>.write.
f4a0 74 6f 20 3c 66 69 6c 65 3e 5b 2e 6c 7a 5d 2c 20 6b 65 65 70 20 69 6e 70 75 74 20 66 69 6c 65 73 to.<file>[.lz],.keep.input.files
f4c0 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.
f4e0 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
f500 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
f520 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
f540 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
f560 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>
f580 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.
f5a0 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
f5c0 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
f5e0 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
f600 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.
f620 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
f640 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.
f660 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.
f680 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
f6a0 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
f6c0 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
f6e0 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
f700 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.
f720 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.
f740 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
f760 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.
f780 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:
f7a0 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.
f7c0 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^
f7e0 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....
f800 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
f820 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
f840 69 6e 67 20 32 5e 31 32 0a 74 6f 20 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.
f860 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
f880 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
f8a0 72 0a 73 63 61 6c 65 20 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
f8c0 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
f8e0 65 74 69 74 69 76 65 2c 0a 65 74 63 2c 20 79 6f 75 20 6d 61 79 20 6e 65 65 64 20 74 6f 20 75 73 etitive,.etc,.you.may.need.to.us
f900 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\
f920 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
f940 68 5c 66 52 0a 64 69 72 65 63 74 6c 79 20 74 6f 20 61 63 68 69 65 76 65 20 6f 70 74 69 6d 61 6c h\fR.directly.to.achieve.optimal
f960 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
f980 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
f9a0 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
f9c0 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
f9e0 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
fa00 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
fa20 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
fa40 74 61 6c 20 70 72 6f 62 6c 65 6d 73 20 28 66 69 6c 65 0a 6e 6f 74 20 66 6f 75 6e 64 2c 20 69 6e tal.problems.(file.not.found,.in
fa60 76 61 6c 69 64 20 66 6c 61 67 73 2c 20 49 2f 4f 20 65 72 72 6f 72 73 2c 20 65 74 63 29 2c 20 32 valid.flags,.I/O.errors,.etc),.2
fa80 20 74 6f 20 69 6e 64 69 63 61 74 65 20 61 20 63 6f 72 72 75 70 74 20 6f 72 0a 69 6e 76 61 6c 69 .to.indicate.a.corrupt.or.invali
faa0 64 20 69 6e 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 d.input.file,.3.for.an.internal.
fac0 63 6f 6e 73 69 73 74 65 6e 63 79 20 65 72 72 6f 72 20 28 65 67 2c 20 62 75 67 29 20 77 68 69 63 consistency.error.(eg,.bug).whic
fae0 68 0a 63 61 75 73 65 64 20 6c 7a 69 70 20 74 6f 20 70 61 6e 69 63 2e 0a 2e 50 50 0a 54 68 65 20 h.caused.lzip.to.panic...PP.The.
fb00 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 20 74 ideas.embodied.in.lzip.are.due.t
fb20 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 70 6c o.(at.least).the.following.peopl
fb40 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 76 20 e:.Abraham.Lempel.and.Jacob.Ziv.
fb60 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 79 20 4d (for.the.LZ.algorithm),.Andrey.M
fb80 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 61 72 arkov.(for.the.definition.of.Mar
fba0 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 72 20 kov.chains),.G.N.N..Martin.(for.
fbc0 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 6e 67 the.definition.of.range.encoding
fbe0 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 6c 20 ),.Igor.Pavlov.(for.putting.all.
fc00 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 6e 64 the.above.together.in.LZMA),.and
fc20 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 49 29 .Julian.Seward.(for.bzip2's.CLI)
fc40 2e 0a 2e 53 48 20 22 52 45 50 4f 52 54 49 4e 47 20 42 55 47 53 22 0a 52 65 70 6f 72 74 20 62 75 ...SH."REPORTING.BUGS".Report.bu
fc60 67 73 20 74 6f 20 6c 7a 69 70 5c 2d 62 75 67 40 6e 6f 6e 67 6e 75 2e 6f 72 67 0a 2e 62 72 0a 4c gs.to.lzip\-bug@nongnu.org..br.L
fc80 7a 69 70 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 6e 67 6e 75 zip.home.page:.http://www.nongnu
fca0 2e 6f 72 67 2f 6c 7a 69 70 2f 6c 7a 69 70 2e 68 74 6d 6c 0a 2e 53 48 20 43 4f 50 59 52 49 47 48 .org/lzip/lzip.html..SH.COPYRIGH
fcc0 54 0a 43 6f 70 79 72 69 67 68 74 20 5c 28 63 6f 20 32 30 32 30 20 41 6e 74 6f 6e 69 6f 20 44 69 T.Copyright.\(co.2020.Antonio.Di
fce0 61 7a 20 44 69 61 7a 2e 0a 4c 69 63 65 6e 73 65 20 47 50 4c 76 32 2b 3a 20 47 4e 55 20 47 50 4c az.Diaz..License.GPLv2+:.GNU.GPL
fd00 20 76 65 72 73 69 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 .version.2.or.later.<http://gnu.
fd20 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 67 70 6c 2e 68 74 6d 6c 3e 0a 2e 62 72 0a 54 68 69 73 20 org/licenses/gpl.html>..br.This.
fd40 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 65 65 20 74 is.free.software:.you.are.free.t
fd60 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 69 74 2e 0a 54 68 o.change.and.redistribute.it..Th
fd80 65 72 65 20 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 ere.is.NO.WARRANTY,.to.the.exten
fda0 74 20 70 65 72 6d 69 74 74 65 64 20 62 79 20 6c 61 77 2e 0a 2e 53 48 20 22 53 45 45 20 41 4c 53 t.permitted.by.law...SH."SEE.ALS
fdc0 4f 22 0a 54 68 65 20 66 75 6c 6c 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 0a 2e 42 O".The.full.documentation.for..B
fde0 20 6c 7a 69 70 0a 69 73 20 6d 61 69 6e 74 61 69 6e 65 64 20 61 73 20 61 20 54 65 78 69 6e 66 6f .lzip.is.maintained.as.a.Texinfo
fe00 20 6d 61 6e 75 61 6c 2e 20 20 49 66 20 74 68 65 0a 2e 42 20 69 6e 66 6f 0a 61 6e 64 0a 2e 42 20 .manual...If.the..B.info.and..B.
fe20 6c 7a 69 70 0a 70 72 6f 67 72 61 6d 73 20 61 72 65 20 70 72 6f 70 65 72 6c 79 20 69 6e 73 74 61 lzip.programs.are.properly.insta
fe40 6c 6c 65 64 20 61 74 20 79 6f 75 72 20 73 69 74 65 2c 20 74 68 65 20 63 6f 6d 6d 61 6e 64 0a 2e lled.at.your.site,.the.command..
fe60 49 50 0a 2e 42 20 69 6e 66 6f 20 6c 7a 69 70 0a 2e 50 50 0a 73 68 6f 75 6c 64 20 67 69 76 65 20 IP..B.info.lzip..PP.should.give.
fe80 79 6f 75 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 20 63 6f 6d 70 6c 65 74 65 20 6d 61 6e 75 61 you.access.to.the.complete.manua
fea0 6c 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 l...............................
fec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ff00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ff20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ff40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ff60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ff80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ffa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ffc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ffe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10000 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 64 6f 63 2f 6c 7a 69 70 2e 69 6e 66 6f 00 00 00 00 00 lzip-1.22-rc2/doc/lzip.info.....
10020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10060 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
10080 30 32 30 30 31 37 33 00 31 33 36 37 33 34 34 36 34 31 31 00 30 30 31 34 32 35 32 00 30 00 00 00 0200173.13673446411.0014252.0...
100a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
100c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
100e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10100 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...................
10120 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...................
10140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10200 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
10220 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.
10240 74 65 78 69 2e 0a 0a 49 4e 46 4f 2d 44 49 52 2d 53 45 43 54 49 4f 4e 20 44 61 74 61 20 43 6f 6d texi...INFO-DIR-SECTION.Data.Com
10260 70 72 65 73 73 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 pression.START-INFO-DIR-ENTRY.*.
10280 4c 7a 69 70 3a 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 Lzip:.(lzip)..................LZ
102a0 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 6f 72 0a 45 4e 44 2d MA.lossless.data.compressor.END-
102c0 49 4e 46 4f 2d 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 INFO-DIR-ENTRY....File:.lzip.inf
102e0 6f 2c 20 20 4e 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 o,..Node:.Top,..Next:.Introducti
10300 6f 6e 2c 20 20 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 on,..Up:.(dir)..Lzip.Manual.****
10320 2a 2a 2a 2a 2a 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 *******..This.manual.is.for.Lzip
10340 20 28 76 65 72 73 69 6f 6e 20 31 2e 32 32 2d 72 63 32 2c 20 32 30 20 4a 75 6e 65 20 32 30 32 30 .(version.1.22-rc2,.20.June.2020
10360 29 2e 0a 0a 2a 20 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 )...*.Menu:..*.Introduction::...
10380 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 20 6f 66 20 ........Purpose.and.features.of.
103a0 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 20 20 20 20 lzip.*.Output::.................
103c0 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 6e 76 6f 6b Meaning.of.lzip's.output.*.Invok
103e0 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 20 6c 69 6e 65 ing.lzip::..........Command.line
10400 20 69 6e 74 65 72 66 61 63 65 0a 2a 20 51 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 65 3a 3a .interface.*.Quality.assurance::
10420 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 20 61 6e 64 20 74 65 ......Design,.development.and.te
10440 73 74 69 6e 67 20 6f 66 20 6c 7a 69 70 0a 2a 20 46 69 6c 65 20 66 6f 72 6d 61 74 3a 3a 20 20 20 sting.of.lzip.*.File.format::...
10460 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 6f 66 20 74 68 65 20 .........Detailed.format.of.the.
10480 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 0a 2a 20 41 6c 67 6f 72 69 74 68 6d 3a 3a 20 20 20 compressed.file.*.Algorithm::...
104a0 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 65 73 20 74 ...........How.lzip.compresses.t
104c0 68 65 20 64 61 74 61 0a 2a 20 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 3a 3a 20 20 20 20 20 20 20 he.data.*.Stream.format::.......
104e0 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 6d 20 69 6e 20 ...Format.of.the.LZMA.stream.in.
10500 6c 7a 69 70 20 66 69 6c 65 73 0a 2a 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 3a 3a 20 20 20 20 lzip.files.*.Trailing.data::....
10520 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 65 ......Extra.data.appended.to.the
10540 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 20 .file.*.Examples::..............
10560 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 0a .A.small.tutorial.with.examples.
10580 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 72 *.Problems::...............Repor
105a0 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 64 ting.bugs.*.Reference.source.cod
105c0 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 74 e::..Source.code.illustrating.st
105e0 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 20 ream.format.*.Concept.index::...
10600 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 6f .......Index.of.concepts......Co
10620 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 38 2d 32 30 32 30 20 41 6e 74 6f 6e 69 6f 20 44 69 pyright.(C).2008-2020.Antonio.Di
10640 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 65 az.Diaz......This.manual.is.free
10660 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 74 .documentation:.you.have.unlimit
10680 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 74 ed.permission.to.copy,.distribut
106a0 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 2e e,.and.modify.it.....File:.lzip.
106c0 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 74 info,..Node:.Introduction,..Next
106e0 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 0a :.Output,..Prev:.Top,..Up:.Top..
10700 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 4c 1.Introduction.**************..L
10720 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 6f zip.is.a.lossless.data.compresso
10740 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 20 r.with.a.user.interface.similar.
10760 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 69 to.the.one.of.gzip.or.bzip2..Lzi
10780 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 74 68 65 20 p.uses.a.simplified.form.of.the.
107a0 27 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 69 74 'Lempel-Ziv-Markov.chain-Algorit
107c0 68 6d 27 20 28 4c 5a 4d 41 29 20 73 74 72 65 61 6d 20 66 6f 72 6d 61 74 2c 20 63 68 6f 73 65 6e hm'.(LZMA).stream.format,.chosen
107e0 20 74 6f 20 6d 61 78 69 6d 69 7a 65 20 73 61 66 65 74 79 20 61 6e 64 0a 69 6e 74 65 72 6f 70 65 .to.maximize.safety.and.interope
10800 72 61 62 69 6c 69 74 79 2e 20 4c 7a 69 70 20 63 61 6e 20 63 6f 6d 70 72 65 73 73 20 61 62 6f 75 rability..Lzip.can.compress.abou
10820 74 20 61 73 20 66 61 73 74 20 61 73 20 67 7a 69 70 20 28 6c 7a 69 70 20 2d 30 29 20 6f 72 0a 63 t.as.fast.as.gzip.(lzip.-0).or.c
10840 6f 6d 70 72 65 73 73 20 6d 6f 73 74 20 66 69 6c 65 73 20 6d 6f 72 65 20 74 68 61 6e 20 62 7a 69 ompress.most.files.more.than.bzi
10860 70 32 20 28 6c 7a 69 70 20 2d 39 29 2e 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 73 70 65 65 p2.(lzip.-9)..Decompression.spee
10880 64 20 69 73 0a 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 d.is.intermediate.between.gzip.a
108a0 6e 64 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 69 73 20 62 65 74 74 65 72 20 74 68 61 6e 20 67 7a nd.bzip2..Lzip.is.better.than.gz
108c0 69 70 20 61 6e 64 20 62 7a 69 70 32 0a 66 72 6f 6d 20 61 20 64 61 74 61 20 72 65 63 6f 76 65 72 ip.and.bzip2.from.a.data.recover
108e0 79 20 70 65 72 73 70 65 63 74 69 76 65 2e 20 4c 7a 69 70 20 68 61 73 20 62 65 65 6e 20 64 65 73 y.perspective..Lzip.has.been.des
10900 69 67 6e 65 64 2c 20 77 72 69 74 74 65 6e 2c 20 61 6e 64 0a 74 65 73 74 65 64 20 77 69 74 68 20 igned,.written,.and.tested.with.
10920 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 64 20 62 great.care.to.replace.gzip.and.b
10940 7a 69 70 32 20 61 73 20 74 68 65 20 73 74 61 6e 64 61 72 64 0a 67 65 6e 65 72 61 6c 2d 70 75 72 zip2.as.the.standard.general-pur
10960 70 6f 73 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 74 20 66 6f 72 20 75 6e 69 78 2d pose.compressed.format.for.unix-
10980 6c 69 6b 65 20 73 79 73 74 65 6d 73 2e 0a 0a 20 20 20 54 68 65 20 6c 7a 69 70 20 66 69 6c 65 20 like.systems......The.lzip.file.
109a0 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 74 61 20 73 68 61 72 format.is.designed.for.data.shar
109c0 69 6e 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 ing.and.long-term.archiving,.tak
109e0 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 61 20 69 6e 74 65 67 ing.into.account.both.data.integ
10a00 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 6c 69 74 79 3a 0a 0a rity.and.decoder.availability:..
10a20 20 20 20 2a 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 76 65 ...*.The.lzip.format.provides.ve
10a40 72 79 20 73 61 66 65 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 63 6b 69 6e 67 20 61 6e 64 20 73 ry.safe.integrity.checking.and.s
10a60 6f 6d 65 20 64 61 74 61 0a 20 20 20 20 20 72 65 63 6f 76 65 72 79 20 6d 65 61 6e 73 2e 20 54 68 ome.data......recovery.means..Th
10a80 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 65 70 61 69 72 e.program.lziprecover.can.repair
10aa0 20 62 69 74 20 66 6c 69 70 20 65 72 72 6f 72 73 0a 20 20 20 20 20 28 6f 6e 65 20 6f 66 20 74 68 .bit.flip.errors......(one.of.th
10ac0 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
10ae0 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 0a 20 20 20 20 20 uption).in.lzip.files,.and......
10b00 70 72 6f 76 69 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 provides.data.recovery.capabilit
10b20 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 64 20 6d 65 72 ies,.including.error-checked.mer
10b40 67 69 6e 67 0a 20 20 20 20 20 6f 66 20 64 61 6d 61 67 65 64 20 63 6f 70 69 65 73 20 6f 66 20 61 ging......of.damaged.copies.of.a
10b60 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 6c 7a 69 70 72 .file..*Note.Data.safety:.(lzipr
10b80 65 63 6f 76 65 72 29 44 61 74 61 0a 20 20 20 20 20 73 61 66 65 74 79 2e 0a 0a 20 20 20 2a 20 54 ecover)Data......safety......*.T
10ba0 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
10bc0 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
10be0 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
10c00 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
10c20 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
10c40 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
10c60 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.....
10c80 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
10ca0 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
10cc0 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
10ce0 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
10d00 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
10d20 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
10d40 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.
10d60 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
10d80 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
10da0 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
10dc0 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
10de0 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
10e00 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
10e20 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
10e40 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
10e60 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
10e80 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.
10ea0 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
10ec0 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
10ee0 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
10f00 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
10f20 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,
10f40 20 74 6f 67 65 74 68 65 72 0a 77 69 74 68 20 74 68 65 20 65 6e 64 2d 6f 66 2d 73 74 72 65 61 6d .together.with.the.end-of-stream
10f60 20 6d 61 72 6b 65 72 2c 20 70 72 6f 76 69 64 65 20 61 20 33 20 66 61 63 74 6f 72 20 69 6e 74 65 .marker,.provide.a.3.factor.inte
10f80 67 72 69 74 79 20 63 68 65 63 6b 69 6e 67 20 77 68 69 63 68 0a 67 75 61 72 61 6e 74 65 65 73 20 grity.checking.which.guarantees.
10fa0 74 68 61 74 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 76 65 72 73 69 6f 6e 20 6f 66 that.the.decompressed.version.of
10fc0 20 74 68 65 20 64 61 74 61 20 69 73 20 69 64 65 6e 74 69 63 61 6c 20 74 6f 20 74 68 65 0a 6f 72 .the.data.is.identical.to.the.or
10fe0 69 67 69 6e 61 6c 2e 20 54 68 69 73 20 67 75 61 72 64 73 20 61 67 61 69 6e 73 74 20 63 6f 72 72 iginal..This.guards.against.corr
11000 75 70 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 2c 20 61 uption.of.the.compressed.data,.a
11020 6e 64 0a 61 67 61 69 6e 73 74 20 75 6e 64 65 74 65 63 74 65 64 20 62 75 67 73 20 69 6e 20 6c 7a nd.against.undetected.bugs.in.lz
11040 69 70 20 28 68 6f 70 65 66 75 6c 6c 79 20 76 65 72 79 20 75 6e 6c 69 6b 65 6c 79 29 2e 20 54 68 ip.(hopefully.very.unlikely)..Th
11060 65 20 63 68 61 6e 63 65 73 20 6f 66 0a 64 61 74 61 20 63 6f 72 72 75 70 74 69 6f 6e 20 67 6f 69 e.chances.of.data.corruption.goi
11080 6e 67 20 75 6e 64 65 74 65 63 74 65 64 20 61 72 65 20 6d 69 63 72 6f 73 63 6f 70 69 63 2e 20 42 ng.undetected.are.microscopic..B
110a0 65 20 61 77 61 72 65 2c 20 74 68 6f 75 67 68 2c 20 74 68 61 74 0a 74 68 65 20 63 68 65 63 6b 20 e.aware,.though,.that.the.check.
110c0 6f 63 63 75 72 73 20 75 70 6f 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2c 20 73 6f 20 69 74 occurs.upon.decompression,.so.it
110e0 20 63 61 6e 20 6f 6e 6c 79 20 74 65 6c 6c 20 79 6f 75 20 74 68 61 74 20 73 6f 6d 65 74 68 69 6e .can.only.tell.you.that.somethin
11100 67 0a 69 73 20 77 72 6f 6e 67 2e 20 49 74 20 63 61 6e 27 74 20 68 65 6c 70 20 79 6f 75 20 72 65 g.is.wrong..It.can't.help.you.re
11120 63 6f 76 65 72 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 64 20 cover.the.original.uncompressed.
11140 64 61 74 61 2e 0a 0a 20 20 20 4c 7a 69 70 20 75 73 65 73 20 74 68 65 20 73 61 6d 65 20 77 65 6c data......Lzip.uses.the.same.wel
11160 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 73 20 75 73 65 l-defined.exit.status.values.use
11180 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 73 61 66 65 72 d.by.bzip2,.which.makes.it.safer
111a0 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 20 61 6d 62 69 .than.compressors.returning.ambi
111c0 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 67 7a 69 70 29 guous.warning.values.(like.gzip)
111e0 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 65 6e 64 20 66 .when.it.is.used.as.a.back.end.f
11200 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 6f 72 20 7a 75 or.other.programs.like.tar.or.zu
11220 74 69 6c 73 2e 0a 0a 20 20 20 4c 7a 69 70 20 77 69 6c 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c tils......Lzip.will.automaticall
11240 79 20 75 73 65 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 y.use.for.each.file.the.largest.
11260 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 0a 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 65 78 dictionary.size.that.does.not.ex
11280 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 6f 72 20 74 ceed.neither.the.file.size.nor.t
112a0 68 65 20 6c 69 6d 69 74 20 67 69 76 65 6e 2e 20 4b 65 65 70 20 69 6e 0a 6d 69 6e 64 20 74 68 61 he.limit.given..Keep.in.mind.tha
112c0 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
112e0 72 65 6d 65 6e 74 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 rement.is.affected.at.compressio
11300 6e 0a 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
11320 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 2e 0a 0a 20 20 20 54 68 65 20 61 6d 6f 75 6e 74 20 6f 66 ry.size.limit......The.amount.of
11340 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 6f 6e .memory.required.for.compression
11360 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 74 69 .is.about.1.or.2.times.the.dicti
11380 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 69 6c onary.size.limit.(1.if.input.fil
113a0 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 20 73 e.size.is.less.than.dictionary.s
113c0 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 73 20 ize.limit,.else.2).plus.9.times.
113e0 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 64 2e the.dictionary.size.really.used.
11400 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 64 20 .The.option.'-0'.is.special.and.
11420 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 20 6d only.requires.about.1.5.MiB.at.m
11440 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 69 72 ost..The.amount.of.memory.requir
11460 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 34 36 ed.for.decompression.is.about.46
11480 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 0a 73 .kB.larger.than.the.dictionary.s
114a0 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 72 65 ize.really.used......When.compre
114c0 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 65 20 ssing,.lzip.replaces.every.file.
114e0 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 20 61 given.in.the.command.line.with.a
11500 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 20 77 .compressed.version.of.itself,.w
11520 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 22 2e ith.the.name."original_name.lz".
11540 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 6d 70 .When.decompressing,.lzip.attemp
11560 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 65 63 ts.to.guess.the.name.for.the.dec
11580 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 65 20 ompressed.file.from.that.of.the.
115a0 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 69 6c compressed.file.as.follows:..fil
115c0 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 0a 66 ename.lz....becomes...filename.f
115e0 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 6d 65 ilename.tlz...becomes...filename
11600 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 61 6e .tar.anyothername...becomes...an
11620 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 73 69 yothername.out.....(De)compressi
11640 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 20 6f ng.a.file.is.much.like.copying.o
11660 72 20 6d 6f 76 69 6e 67 20 69 74 3b 20 74 68 65 72 65 66 6f 72 65 20 6c 7a 69 70 0a 70 72 65 73 r.moving.it;.therefore.lzip.pres
11680 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 69 6f erves.the.access.and.modificatio
116a0 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 77 68 65 6e 0a n.dates,.permissions,.and,.when.
116c0 70 6f 73 73 69 62 6c 65 2c 20 6f 77 6e 65 72 73 68 69 70 20 6f 66 20 74 68 65 20 66 69 6c 65 20 possible,.ownership.of.the.file.
116e0 6a 75 73 74 20 61 73 20 27 63 70 20 2d 70 27 20 64 6f 65 73 2e 20 28 49 66 20 74 68 65 20 75 73 just.as.'cp.-p'.does..(If.the.us
11700 65 72 20 49 44 20 6f 72 0a 74 68 65 20 67 72 6f 75 70 20 49 44 20 63 61 6e 27 74 20 62 65 20 64 er.ID.or.the.group.ID.can't.be.d
11720 75 70 6c 69 63 61 74 65 64 2c 20 74 68 65 20 66 69 6c 65 20 70 65 72 6d 69 73 73 69 6f 6e 20 62 uplicated,.the.file.permission.b
11740 69 74 73 20 53 5f 49 53 55 49 44 20 61 6e 64 0a 53 5f 49 53 47 49 44 20 61 72 65 20 63 6c 65 61 its.S_ISUID.and.S_ISGID.are.clea
11760 72 65 64 29 2e 0a 0a 20 20 20 4c 7a 69 70 20 69 73 20 61 62 6c 65 20 74 6f 20 72 65 61 64 20 66 red)......Lzip.is.able.to.read.f
11780 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 61 72 20 66 69 rom.some.types.of.non-regular.fi
117a0 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 63 27 20 6f 72 les.if.either.the.option.'-c'.or
117c0 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 65 64 2e 0a 0a .the.option.'-o'.is.specified...
117e0 20 20 20 4c 7a 69 70 20 77 69 6c 6c 20 72 65 66 75 73 65 20 74 6f 20 72 65 61 64 20 63 6f 6d 70 ...Lzip.will.refuse.to.read.comp
11800 72 65 73 73 65 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 ressed.data.from.a.terminal.or.w
11820 72 69 74 65 0a 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 74 6f 20 61 20 74 65 72 6d 69 6e rite.compressed.data.to.a.termin
11840 61 6c 2c 20 61 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 al,.as.this.would.be.entirely.in
11860 63 6f 6d 70 72 65 68 65 6e 73 69 62 6c 65 0a 61 6e 64 20 6d 61 79 20 6c 65 61 76 65 20 74 68 65 comprehensible.and.may.leave.the
11880 20 74 65 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 .terminal.in.an.abnormal.state..
118a0 0a 20 20 20 4c 7a 69 70 20 77 69 6c 6c 20 63 6f 72 72 65 63 74 6c 79 20 64 65 63 6f 6d 70 72 65 ....Lzip.will.correctly.decompre
118c0 73 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 74 65 6e 61 ss.a.file.which.is.the.concatena
118e0 74 69 6f 6e 20 6f 66 20 74 77 6f 0a 6f 72 20 6d 6f 72 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 tion.of.two.or.more.compressed.f
11900 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 61 74 65 6e iles..The.result.is.the.concaten
11920 61 74 69 6f 6e 20 6f 66 20 74 68 65 0a 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 64 65 63 6f 6d ation.of.the.corresponding.decom
11940 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 74 69 6e 67 pressed.files..Integrity.testing
11960 20 6f 66 20 63 6f 6e 63 61 74 65 6e 61 74 65 64 0a 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 .of.concatenated.compressed.file
11980 73 20 69 73 20 61 6c 73 6f 20 73 75 70 70 6f 72 74 65 64 2e 0a 0a 20 20 20 4c 7a 69 70 20 63 61 s.is.also.supported......Lzip.ca
119a0 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 64 n.produce.multimember.files,.and
119c0 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 0a .lziprecover.can.safely.recover.
119e0 74 68 65 20 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 66 the.undamaged.members.in.case.of
11a00 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 69 .file.damage..Lzip.can.also.spli
11a20 74 20 74 68 65 0a 63 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 20 69 6e 20 76 6f 6c 75 6d t.the.compressed.output.in.volum
11a40 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 65 es.of.a.given.size,.even.when.re
11a60 61 64 69 6e 67 20 66 72 6f 6d 0a 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2e 20 54 68 69 73 20 ading.from.standard.input..This.
11a80 61 6c 6c 6f 77 73 20 74 68 65 20 64 69 72 65 63 74 20 63 72 65 61 74 69 6f 6e 20 6f 66 20 6d 75 allows.the.direct.creation.of.mu
11aa0 6c 74 69 76 6f 6c 75 6d 65 20 63 6f 6d 70 72 65 73 73 65 64 0a 74 61 72 20 61 72 63 68 69 76 65 ltivolume.compressed.tar.archive
11ac0 73 2e 0a 0a 20 20 20 4c 7a 69 70 20 69 73 20 61 62 6c 65 20 74 6f 20 63 6f 6d 70 72 65 73 73 20 s......Lzip.is.able.to.compress.
11ae0 61 6e 64 20 64 65 63 6f 6d 70 72 65 73 73 20 73 74 72 65 61 6d 73 20 6f 66 20 75 6e 6c 69 6d 69 and.decompress.streams.of.unlimi
11b00 74 65 64 20 73 69 7a 65 20 62 79 0a 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 72 65 61 74 69 ted.size.by.automatically.creati
11b20 6e 67 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 6f 75 74 70 75 74 2e 20 54 68 65 20 6d 65 6d 62 65 ng.multimember.output..The.membe
11b40 72 73 20 73 6f 20 63 72 65 61 74 65 64 20 61 72 65 20 6c 61 72 67 65 2c 0a 61 62 6f 75 74 20 32 rs.so.created.are.large,.about.2
11b60 20 50 69 42 20 65 61 63 68 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 6f 2c 20 20 .PiB.each.....File:.lzip.info,..
11b80 4e 6f 64 65 3a 20 4f 75 74 70 75 74 2c 20 20 4e 65 78 74 3a 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a Node:.Output,..Next:.Invoking.lz
11ba0 69 70 2c 20 20 50 72 65 76 3a 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 2c 20 20 55 70 3a 20 54 6f ip,..Prev:.Introduction,..Up:.To
11bc0 70 0a 0a 32 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 2a p..2.Meaning.of.lzip's.output.**
11be0 2a 2a 2a 2a 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 20 6f 75 ************************..The.ou
11c00 74 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 20 tput.of.lzip.looks.like.this:...
11c20 20 20 20 20 6c 7a 69 70 20 2d 76 20 66 6f 6f 0a 20 20 20 20 20 20 20 66 6f 6f 3a 20 20 36 2e 36 ....lzip.-v.foo........foo:..6.6
11c40 37 36 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 76:1,.14.98%.ratio,.85.02%.saved
11c60 2c 20 34 35 30 35 36 30 20 69 6e 2c 20 36 37 34 39 33 20 6f 75 74 2e 0a 0a 20 20 20 20 20 6c 7a ,.450560.in,.67493.out........lz
11c80 69 70 20 2d 74 76 76 76 20 66 6f 6f 2e 6c 7a 0a 20 20 20 20 20 20 20 66 6f 6f 2e 6c 7a 3a 20 20 ip.-tvvv.foo.lz........foo.lz:..
11ca0 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 2e 30 32 25 20 73 61 6.676:1,.14.98%.ratio,.85.02%.sa
11cc0 76 65 64 2e 20 20 34 35 30 35 36 30 20 6f 75 74 2c 20 20 36 37 34 39 33 20 69 6e 2e 20 6f 6b 0a ved...450560.out,..67493.in..ok.
11ce0 0a 20 20 20 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 ....The.meaning.of.each.field.is
11d00 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 0a 27 4e 3a 31 27 0a 20 20 20 20 20 54 68 65 20 63 6f 6d .as.follows:..'N:1'......The.com
11d20 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 28 75 6e 63 6f 6d 70 72 65 73 73 65 64 5f 73 69 7a pression.ratio.(uncompressed_siz
11d40 65 20 2f 20 63 6f 6d 70 72 65 73 73 65 64 5f 73 69 7a 65 29 2c 20 73 68 6f 77 6e 20 61 73 0a 20 e./.compressed_size),.shown.as..
11d60 20 20 20 20 4e 20 74 6f 20 31 2e 0a 0a 27 72 61 74 69 6f 27 0a 20 20 20 20 20 54 68 65 20 69 6e ....N.to.1...'ratio'......The.in
11d80 76 65 72 73 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 28 63 6f 6d 70 72 65 73 verse.compression.ratio.(compres
11da0 73 65 64 5f 73 69 7a 65 20 2f 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 5f 73 69 7a 65 29 2c 0a 20 sed_size./.uncompressed_size),..
11dc0 20 20 20 20 73 68 6f 77 6e 20 61 73 20 61 20 70 65 72 63 65 6e 74 61 67 65 2e 20 41 20 64 65 63 ....shown.as.a.percentage..A.dec
11de0 69 6d 61 6c 20 72 61 74 69 6f 20 69 73 20 65 61 73 69 6c 79 20 6f 62 74 61 69 6e 65 64 20 62 79 imal.ratio.is.easily.obtained.by
11e00 20 6d 6f 76 69 6e 67 20 74 68 65 0a 20 20 20 20 20 64 65 63 69 6d 61 6c 20 70 6f 69 6e 74 20 74 .moving.the......decimal.point.t
11e20 77 6f 20 70 6c 61 63 65 73 20 74 6f 20 74 68 65 20 6c 65 66 74 3b 20 31 34 2e 39 38 25 20 3d 20 wo.places.to.the.left;.14.98%.=.
11e40 30 2e 31 34 39 38 2e 0a 0a 27 73 61 76 65 64 27 0a 20 20 20 20 20 54 68 65 20 73 70 61 63 65 20 0.1498...'saved'......The.space.
11e60 73 61 76 65 64 20 62 79 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 28 31 20 2d 20 72 61 74 69 6f 29 saved.by.compression.(1.-.ratio)
11e80 2c 20 73 68 6f 77 6e 20 61 73 20 61 20 70 65 72 63 65 6e 74 61 67 65 2e 0a 0a 27 69 6e 27 0a 20 ,.shown.as.a.percentage...'in'..
11ea0 20 20 20 20 53 69 7a 65 20 6f 66 20 74 68 65 20 69 6e 70 75 74 20 64 61 74 61 2e 20 54 68 69 73 ....Size.of.the.input.data..This
11ec0 20 69 73 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 77 68 65 6e 0a 20 .is.the.uncompressed.size.when..
11ee0 20 20 20 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 6f 72 20 74 68 65 20 63 6f 6d 70 72 65 73 73 ....compressing,.or.the.compress
11f00 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 67 20 6f 72 20 74 65 ed.size.when.decompressing.or.te
11f20 73 74 69 6e 67 2e 0a 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 6c 7a 69 70 20 61 6c 77 61 79 sting.......Note.that.lzip.alway
11f40 73 20 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 20 62 s.prints.the.uncompressed.size.b
11f60 65 66 6f 72 65 20 74 68 65 0a 20 20 20 20 20 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 77 efore.the......compressed.size.w
11f80 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 hen.compressing,.decompressing,.
11fa0 74 65 73 74 69 6e 67 2c 20 6f 72 20 6c 69 73 74 69 6e 67 2e 0a 0a 27 6f 75 74 27 0a 20 20 20 20 testing,.or.listing...'out'.....
11fc0 20 53 69 7a 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 .Size.of.the.output.data..This.i
11fe0 73 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 20 63 6f 6d 70 72 s.the.compressed.size.when.compr
12000 65 73 73 69 6e 67 2c 0a 20 20 20 20 20 6f 72 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 essing,......or.the.decompressed
12020 20 73 69 7a 65 20 77 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 6f 72 20 74 65 73 74 .size.when.decompressing.or.test
12040 69 6e 67 2e 0a 0a 0a 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 ing.......When.decompressing.or.
12060 74 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 testing.at.verbosity.level.4.(-v
12080 76 76 76 29 2c 20 74 68 65 0a 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 75 73 65 64 20 74 vvv),.the.dictionary.size.used.t
120a0 6f 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 o.compress.the.file.and.the.CRC3
120c0 32 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 0a 64 61 74 61 20 61 72 65 20 61 2.of.the.uncompressed.data.are.a
120e0 6c 73 6f 20 73 68 6f 77 6e 2e 0a 0a 20 20 20 4c 41 4e 47 55 41 47 45 20 4e 4f 54 45 3a 20 55 6e lso.shown......LANGUAGE.NOTE:.Un
12100 63 6f 6d 70 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 compressed.=.not.compressed.=.pl
12120 61 69 6e 20 64 61 74 61 3b 20 69 74 20 6d 61 79 20 6e 65 76 65 72 0a 68 61 76 65 20 62 65 65 6e ain.data;.it.may.never.have.been
12140 20 63 6f 6d 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 .compressed..Decompressed.is.use
12160 64 20 74 6f 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 0a 75 6e d.to.refer.to.data.which.have.un
12180 64 65 72 67 6f 6e 65 20 74 68 65 20 70 72 6f 63 65 73 73 20 6f 66 20 64 65 63 6f 6d 70 72 65 73 dergone.the.process.of.decompres
121a0 73 69 6f 6e 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 sion.....File:.lzip.info,..Node:
121c0 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 2c 20 20 4e 65 78 74 3a 20 51 75 61 6c 69 74 79 20 61 .Invoking.lzip,..Next:.Quality.a
121e0 73 73 75 72 61 6e 63 65 2c 20 20 50 72 65 76 3a 20 4f 75 74 70 75 74 2c 20 20 55 70 3a 20 54 6f ssurance,..Prev:.Output,..Up:.To
12200 70 0a 0a 33 20 49 6e 76 6f 6b 69 6e 67 20 6c 7a 69 70 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a p..3.Invoking.lzip.*************
12220 2a 2a 0a 0a 54 68 65 20 66 6f 72 6d 61 74 20 66 6f 72 20 72 75 6e 6e 69 6e 67 20 6c 7a 69 70 20 **..The.format.for.running.lzip.
12240 69 73 3a 0a 0a 20 20 20 20 20 6c 7a 69 70 20 5b 4f 50 54 49 4f 4e 53 5d 20 5b 46 49 4c 45 53 5d is:.......lzip.[OPTIONS].[FILES]
12260 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 69 65 64 ..If.no.file.names.are.specified
12280 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 65 73 73 ,.lzip.compresses.(or.decompress
122a0 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 61 6e 64 es).from.standard.input.to.stand
122c0 61 72 64 20 6f 75 74 70 75 74 2e 20 41 20 68 79 70 68 65 6e 20 27 2d 27 20 75 73 65 64 20 61 73 ard.output..A.hyphen.'-'.used.as
122e0 20 61 20 46 49 4c 45 20 61 72 67 75 6d 65 6e 74 0a 6d 65 61 6e 73 20 73 74 61 6e 64 61 72 64 20 .a.FILE.argument.means.standard.
12300 69 6e 70 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 input..It.can.be.mixed.with.othe
12320 72 20 46 49 4c 45 53 20 61 6e 64 20 69 73 20 72 65 61 64 20 6a 75 73 74 0a 6f 6e 63 65 2c 20 74 r.FILES.and.is.read.just.once,.t
12340 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 68 65 20 he.first.time.it.appears.in.the.
12360 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 2e 0a 0a 20 20 20 6c 7a 69 70 20 73 75 70 70 6f 72 74 73 20 command.line......lzip.supports.
12380 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6f 70 74 69 6f 6e 73 3a 20 2a 4e 6f 74 65 20 41 72 67 the.following.options:.*Note.Arg
123a0 75 6d 65 6e 74 20 73 79 6e 74 61 78 3a 0a 28 61 72 67 5f 70 61 72 73 65 72 29 41 72 67 75 6d 65 ument.syntax:.(arg_parser)Argume
123c0 6e 74 20 73 79 6e 74 61 78 2e 0a 0a 27 2d 68 27 0a 27 2d 2d 68 65 6c 70 27 0a 20 20 20 20 20 50 nt.syntax...'-h'.'--help'......P
123e0 72 69 6e 74 20 61 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 rint.an.informative.help.message
12400 20 64 65 73 63 72 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 .describing.the.options.and.exit
12420 2e 0a 0a 27 2d 56 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 ...'-V'.'--version'......Print.t
12440 68 65 20 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 he.version.number.of.lzip.on.the
12460 20 73 74 61 6e 64 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 .standard.output.and.exit..This.
12480 20 20 20 20 20 76 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 .....version.number.should.be.in
124a0 63 6c 75 64 65 64 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 cluded.in.all.bug.reports...'-a'
124c0 0a 27 2d 2d 74 72 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 .'--trailing-error'......Exit.wi
124e0 74 68 20 65 72 72 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 th.error.status.2.if.any.remaini
12500 6e 67 20 69 6e 70 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 ng.input.is.detected.after......
12520 64 65 63 6f 6d 70 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 decompressing.the.last.member..S
12540 75 63 68 20 72 65 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 uch.remaining.input.is.usually.t
12560 72 61 69 6c 69 6e 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 railing......garbage.that.can.be
12580 20 73 61 66 65 6c 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 .safely.ignored..*Note.concat-ex
125a0 61 6d 70 6c 65 3a 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 ample::...'-b.BYTES'.'--member-s
125c0 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 67 ize=BYTES'......When.compressing
125e0 2c 20 73 65 74 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 42 ,.set.the.member.size.limit.to.B
12600 59 54 45 53 2e 20 49 74 20 69 73 20 61 64 76 69 73 61 62 6c 65 0a 20 20 20 20 20 74 6f 20 6b 65 YTES..It.is.advisable......to.ke
12620 65 70 20 6d 65 6d 62 65 72 73 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 20 52 41 4d 20 73 69 7a 65 ep.members.smaller.than.RAM.size
12640 20 73 6f 20 74 68 61 74 20 74 68 65 79 20 63 61 6e 20 62 65 20 72 65 70 61 69 72 65 64 20 77 69 .so.that.they.can.be.repaired.wi
12660 74 68 0a 20 20 20 20 20 6c 7a 69 70 72 65 63 6f 76 65 72 20 69 6e 20 63 61 73 65 20 6f 66 20 63 th......lziprecover.in.case.of.c
12680 6f 72 72 75 70 74 69 6f 6e 2e 20 41 20 73 6d 61 6c 6c 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 6d orruption..A.small.member.size.m
126a0 61 79 20 64 65 67 72 61 64 65 0a 20 20 20 20 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 ay.degrade......compression.rati
126c0 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 64 65 64 2e 20 56 o,.so.use.it.only.when.needed..V
126e0 61 6c 69 64 20 76 61 6c 75 65 73 20 72 61 6e 67 65 20 66 72 6f 6d 0a 20 20 20 20 20 31 30 30 20 alid.values.range.from......100.
12700 6b 42 20 74 6f 20 32 20 50 69 42 2e 20 44 65 66 61 75 6c 74 73 20 74 6f 20 32 20 50 69 42 2e 0a kB.to.2.PiB..Defaults.to.2.PiB..
12720 0a 27 2d 63 27 0a 27 2d 2d 73 74 64 6f 75 74 27 0a 20 20 20 20 20 43 6f 6d 70 72 65 73 73 20 6f .'-c'.'--stdout'......Compress.o
12740 72 20 64 65 63 6f 6d 70 72 65 73 73 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 3b r.decompress.to.standard.output;
12760 20 6b 65 65 70 20 69 6e 70 75 74 20 66 69 6c 65 73 20 75 6e 63 68 61 6e 67 65 64 2e 0a 20 20 20 .keep.input.files.unchanged.....
12780 20 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,.
127a0 65 61 63 68 20 66 69 6c 65 20 69 73 20 63 6f 6d 70 72 65 73 73 65 64 20 69 6e 64 65 70 65 6e 64 each.file.is.compressed.independ
127c0 65 6e 74 6c 79 2e 0a 20 20 20 20 20 28 54 68 65 20 6f 75 74 70 75 74 20 63 6f 6e 73 69 73 74 73 ently.......(The.output.consists
127e0 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 64 65 6e 74 6c 79 20 .of.a.sequence.of.independently.
12800 63 6f 6d 70 72 65 73 73 65 64 0a 20 20 20 20 20 6d 65 6d 62 65 72 73 29 2e 20 54 68 69 73 20 6f compressed......members)..This.o
12820 70 74 69 6f 6e 20 28 6f 72 20 27 2d 6f 27 29 20 69 73 20 6e 65 65 64 65 64 20 77 68 65 6e 20 72 ption.(or.'-o').is.needed.when.r
12840 65 61 64 69 6e 67 20 66 72 6f 6d 20 61 20 6e 61 6d 65 64 0a 20 20 20 20 20 70 69 70 65 20 28 66 eading.from.a.named......pipe.(f
12860 69 66 6f 29 20 6f 72 20 66 72 6f 6d 20 61 20 64 65 76 69 63 65 2e 20 55 73 65 20 69 74 20 61 6c ifo).or.from.a.device..Use.it.al
12880 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 0a 20 20 20 so.to.recover.as.much.of.the....
128a0 20 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 61 73 20 70 6f 73 73 69 62 6c 65 20 ..decompressed.data.as.possible.
128c0 77 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 when.decompressing.a.corrupt.fil
128e0 65 2e 20 27 2d 63 27 0a 20 20 20 20 20 6f 76 65 72 72 69 64 65 73 20 27 2d 6f 27 20 61 6e 64 20 e..'-c'......overrides.'-o'.and.
12900 27 2d 53 27 2e 20 27 2d 63 27 20 68 61 73 20 6e 6f 20 65 66 66 65 63 74 20 77 68 65 6e 20 74 65 '-S'..'-c'.has.no.effect.when.te
12920 73 74 69 6e 67 20 6f 72 20 6c 69 73 74 69 6e 67 2e 0a 0a 27 2d 64 27 0a 27 2d 2d 64 65 63 6f 6d sting.or.listing...'-d'.'--decom
12940 70 72 65 73 73 27 0a 20 20 20 20 20 44 65 63 6f 6d 70 72 65 73 73 20 74 68 65 20 66 69 6c 65 73 press'......Decompress.the.files
12960 20 73 70 65 63 69 66 69 65 64 2e 20 49 66 20 61 20 66 69 6c 65 20 64 6f 65 73 20 6e 6f 74 20 65 .specified..If.a.file.does.not.e
12980 78 69 73 74 20 6f 72 20 63 61 6e 27 74 20 62 65 0a 20 20 20 20 20 6f 70 65 6e 65 64 2c 20 6c 7a xist.or.can't.be......opened,.lz
129a0 69 70 20 63 6f 6e 74 69 6e 75 65 73 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 74 68 65 20 72 ip.continues.decompressing.the.r
129c0 65 73 74 20 6f 66 20 74 68 65 20 66 69 6c 65 73 2e 20 49 66 20 61 20 66 69 6c 65 0a 20 20 20 20 est.of.the.files..If.a.file.....
129e0 20 66 61 69 6c 73 20 74 6f 20 64 65 63 6f 6d 70 72 65 73 73 2c 20 6f 72 20 69 73 20 61 20 74 65 .fails.to.decompress,.or.is.a.te
12a00 72 6d 69 6e 61 6c 2c 20 6c 7a 69 70 20 65 78 69 74 73 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 77 rminal,.lzip.exits.immediately.w
12a20 69 74 68 6f 75 74 0a 20 20 20 20 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 74 68 65 20 72 65 ithout......decompressing.the.re
12a40 73 74 20 6f 66 20 74 68 65 20 66 69 6c 65 73 2e 0a 0a 27 2d 66 27 0a 27 2d 2d 66 6f 72 63 65 27 st.of.the.files...'-f'.'--force'
12a60 0a 20 20 20 20 20 46 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 ......Force.overwrite.of.output.
12a80 66 69 6c 65 73 2e 0a 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 files...'-F'.'--recompress'.....
12aa0 20 57 68 65 6e 20 63 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 .When.compressing,.force.re-comp
12ac0 72 65 73 73 69 6f 6e 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 ression.of.files.whose.name.alre
12ae0 61 64 79 20 68 61 73 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 ady.has......the.'.lz'.or.'.tlz'
12b00 20 73 75 66 66 69 78 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 .suffix...'-k'.'--keep'......Kee
12b20 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 20 64 75 72 p.(don't.delete).input.files.dur
12b40 69 6e 67 20 63 6f 6d 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 ing.compression.or.decompression
12b60 2e 0a 0a 27 2d 6c 27 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 ...'-l'.'--list'......Print.the.
12b80 75 6e 63 6f 6d 70 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 uncompressed.size,.compressed.si
12ba0 7a 65 2c 20 61 6e 64 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 ze,.and.percentage.saved.of.....
12bc0 20 74 68 65 20 66 69 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 .the.files.specified..Trailing.d
12be0 61 74 61 20 61 72 65 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 ata.are.ignored..The.values.prod
12c00 75 63 65 64 0a 20 20 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 uced......are.correct.even.for.m
12c20 75 6c 74 69 6d 65 6d 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 ultimember.files..If.more.than.o
12c40 6e 65 20 66 69 6c 65 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 ne.file.is......given,.a.final.l
12c60 69 6e 65 20 63 6f 6e 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 ine.containing.the.cumulative.si
12c80 7a 65 73 20 69 73 20 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 zes.is.printed..With......'-v',.
12ca0 74 68 65 20 64 69 63 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 the.dictionary.size,.the.number.
12cc0 6f 66 20 6d 65 6d 62 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 of.members.in.the.file,.and.the.
12ce0 20 20 20 20 20 61 6d 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 .....amount.of.trailing.data.(if
12d00 20 61 6e 79 29 20 61 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 .any).are.also.printed..With.'-v
12d20 76 27 2c 20 74 68 65 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 v',.the......positions.and.sizes
12d40 20 6f 66 20 65 61 63 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 .of.each.member.in.multimember.f
12d60 69 6c 65 73 20 61 72 65 20 61 6c 73 6f 0a 20 20 20 20 20 70 72 69 6e 74 65 64 2e 0a 0a 20 20 20 iles.are.also......printed......
12d80 20 20 27 2d 6c 71 27 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 76 65 72 69 66 79 20 71 75 ..'-lq'.can.be.used.to.verify.qu
12da0 69 63 6b 6c 79 20 28 77 69 74 68 6f 75 74 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 29 20 74 68 ickly.(without.decompressing).th
12dc0 65 0a 20 20 20 20 20 73 74 72 75 63 74 75 72 61 6c 20 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 e......structural.integrity.of.t
12de0 68 65 20 66 69 6c 65 73 20 73 70 65 63 69 66 69 65 64 2e 20 28 55 73 65 20 27 2d 2d 74 65 73 74 he.files.specified..(Use.'--test
12e00 27 20 74 6f 20 76 65 72 69 66 79 0a 20 20 20 20 20 74 68 65 20 64 61 74 61 20 69 6e 74 65 67 72 '.to.verify......the.data.integr
12e20 69 74 79 29 2e 20 27 2d 61 6c 71 27 20 61 64 64 69 74 69 6f 6e 61 6c 6c 79 20 76 65 72 69 66 69 ity)..'-alq'.additionally.verifi
12e40 65 73 20 74 68 61 74 20 6e 6f 6e 65 20 6f 66 20 74 68 65 0a 20 20 20 20 20 66 69 6c 65 73 20 73 es.that.none.of.the......files.s
12e60 70 65 63 69 66 69 65 64 20 63 6f 6e 74 61 69 6e 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 2e 0a pecified.contain.trailing.data..
12e80 0a 27 2d 6d 20 42 59 54 45 53 27 0a 27 2d 2d 6d 61 74 63 68 2d 6c 65 6e 67 74 68 3d 42 59 54 45 .'-m.BYTES'.'--match-length=BYTE
12ea0 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 74 68 S'......When.compressing,.set.th
12ec0 65 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 e.match.length.limit.in.bytes..A
12ee0 66 74 65 72 20 61 20 6d 61 74 63 68 0a 20 20 20 20 20 74 68 69 73 20 6c 6f 6e 67 20 69 73 20 66 fter.a.match......this.long.is.f
12f00 6f 75 6e 64 2c 20 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 ound,.the.search.is.finished..Va
12f20 6c 69 64 20 76 61 6c 75 65 73 20 72 61 6e 67 65 20 66 72 6f 6d 20 35 0a 20 20 20 20 20 74 6f 20 lid.values.range.from.5......to.
12f40 32 37 33 2e 20 4c 61 72 67 65 72 20 76 61 6c 75 65 73 20 75 73 75 61 6c 6c 79 20 67 69 76 65 20 273..Larger.values.usually.give.
12f60 62 65 74 74 65 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 73 20 62 75 74 20 6c 6f better.compression.ratios.but.lo
12f80 6e 67 65 72 0a 20 20 20 20 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d 65 73 2e 0a 0a 27 2d nger......compression.times...'-
12fa0 6f 20 46 49 4c 45 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 o.FILE'.'--output=FILE'......If.
12fc0 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 65 63 69 66 69 65 64 '-c'.has.not.been.also.specified
12fe0 2c 20 77 72 69 74 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 ,.write.the.(de)compressed.outpu
13000 74 20 74 6f 0a 20 20 20 20 20 27 46 49 4c 45 27 3b 20 6b 65 65 70 20 69 6e 70 75 74 20 66 69 6c t.to......'FILE';.keep.input.fil
13020 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 67 20 73 65 76 es.unchanged..If.compressing.sev
13040 65 72 61 6c 20 66 69 6c 65 73 2c 20 65 61 63 68 0a 20 20 20 20 20 66 69 6c 65 20 69 73 20 63 6f eral.files,.each......file.is.co
13060 6d 70 72 65 73 73 65 64 20 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
13080 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 0a 20 20 put.consists.of.a.sequence.of...
130a0 20 20 20 69 6e 64 65 70 65 6e 64 65 6e 74 6c 79 20 63 6f 6d 70 72 65 73 73 65 64 20 6d 65 6d 62 ...independently.compressed.memb
130c0 65 72 73 29 2e 20 54 68 69 73 20 6f 70 74 69 6f 6e 20 28 6f 72 20 27 2d 63 27 29 20 69 73 20 6e ers)..This.option.(or.'-c').is.n
130e0 65 65 64 65 64 20 77 68 65 6e 0a 20 20 20 20 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 20 61 20 6e eeded.when......reading.from.a.n
13100 61 6d 65 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 amed.pipe.(fifo).or.from.a.devic
13120 65 2e 20 27 2d 6f 20 2d 27 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 0a 20 20 20 20 20 74 6f 20 e..'-o.-'.is.equivalent......to.
13140 27 2d 63 27 2e 20 27 2d 6f 27 20 68 61 73 20 6e 6f 20 65 66 66 65 63 74 20 77 68 65 6e 20 74 65 '-c'..'-o'.has.no.effect.when.te
13160 73 74 69 6e 67 20 6f 72 20 6c 69 73 74 69 6e 67 2e 0a 0a 20 20 20 20 20 49 6e 20 6f 72 64 65 72 sting.or.listing........In.order
13180 20 74 6f 20 6b 65 65 70 20 62 61 63 6b 77 61 72 64 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 .to.keep.backward.compatibility.
131a0 77 69 74 68 20 6c 7a 69 70 20 76 65 72 73 69 6f 6e 73 20 70 72 69 6f 72 20 74 6f 0a 20 20 20 20 with.lzip.versions.prior.to.....
131c0 20 31 2e 32 32 2c 20 77 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 66 72 6f 6d 20 73 74 61 .1.22,.when.compressing.from.sta
131e0 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 66 69 6c 65 20 6e 61 ndard.input.and.no.other.file.na
13200 6d 65 73 20 61 72 65 0a 20 20 20 20 20 67 69 76 65 6e 2c 20 74 68 65 20 65 78 74 65 6e 73 69 6f mes.are......given,.the.extensio
13220 6e 20 27 2e 6c 7a 27 20 69 73 20 61 70 70 65 6e 64 65 64 20 74 6f 20 27 46 49 4c 45 27 20 75 6e n.'.lz'.is.appended.to.'FILE'.un
13240 6c 65 73 73 20 69 74 20 61 6c 72 65 61 64 79 20 65 6e 64 73 0a 20 20 20 20 20 69 6e 20 27 2e 6c less.it.already.ends......in.'.l
13260 7a 27 20 6f 72 20 27 2e 74 6c 7a 27 2e 20 54 68 69 73 20 66 65 61 74 75 72 65 20 77 69 6c 6c 20 z'.or.'.tlz'..This.feature.will.
13280 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 61 20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 0a 20 be.removed.in.a.future.version..
132a0 20 20 20 20 6f 66 20 6c 7a 69 70 2e 20 4d 65 61 6e 77 68 69 6c 65 2c 20 72 65 64 69 72 65 63 74 ....of.lzip..Meanwhile,.redirect
132c0 69 6f 6e 20 6d 61 79 20 62 65 20 75 73 65 64 20 69 6e 73 74 65 61 64 20 6f 66 20 27 2d 6f 27 20 ion.may.be.used.instead.of.'-o'.
132e0 74 6f 20 77 72 69 74 65 0a 20 20 20 20 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 to.write......the.compressed.out
13300 70 75 74 20 74 6f 20 61 20 66 69 6c 65 20 77 69 74 68 6f 75 74 20 74 68 65 20 65 78 74 65 6e 73 put.to.a.file.without.the.extens
13320 69 6f 6e 20 27 2e 6c 7a 27 20 69 6e 20 69 74 73 0a 20 20 20 20 20 6e 61 6d 65 3a 20 27 6c 7a 69 ion.'.lz'.in.its......name:.'lzi
13340 70 20 3c 20 66 69 6c 65 20 3e 20 66 6f 6f 27 2e 0a 0a 20 20 20 20 20 57 68 65 6e 20 63 6f 6d 70 p.<.file.>.foo'........When.comp
13360 72 65 73 73 69 6e 67 20 61 6e 64 20 73 70 6c 69 74 74 69 6e 67 20 74 68 65 20 6f 75 74 70 75 74 ressing.and.splitting.the.output
13380 20 69 6e 20 76 6f 6c 75 6d 65 73 2c 20 27 46 49 4c 45 27 20 69 73 20 75 73 65 64 0a 20 20 20 20 .in.volumes,.'FILE'.is.used.....
133a0 20 61 73 20 61 20 70 72 65 66 69 78 2c 20 61 6e 64 20 73 65 76 65 72 61 6c 20 66 69 6c 65 73 20 .as.a.prefix,.and.several.files.
133c0 6e 61 6d 65 64 20 27 46 49 4c 45 30 30 30 30 31 2e 6c 7a 27 2c 20 27 46 49 4c 45 30 30 30 30 32 named.'FILE00001.lz',.'FILE00002
133e0 2e 6c 7a 27 2c 0a 20 20 20 20 20 65 74 63 2c 20 61 72 65 20 63 72 65 61 74 65 64 2e 20 49 6e 20 .lz',......etc,.are.created..In.
13400 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 20 66 69 6c 65 20 69 this.case,.only.one.input.file.i
13420 73 20 61 6c 6c 6f 77 65 64 2e 0a 0a 27 2d 71 27 0a 27 2d 2d 71 75 69 65 74 27 0a 20 20 20 20 20 s.allowed...'-q'.'--quiet'......
13440 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 6c 6c 20 6d 65 Quiet.operation..Suppress.all.me
13460 73 73 61 67 65 73 2e 0a 0a 27 2d 73 20 42 59 54 45 53 27 0a 27 2d 2d 64 69 63 74 69 6f 6e 61 72 ssages...'-s.BYTES'.'--dictionar
13480 79 2d 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 y-size=BYTES'......When.compress
134a0 69 6e 67 2c 20 73 65 74 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d ing,.set.the.dictionary.size.lim
134c0 69 74 20 69 6e 20 62 79 74 65 73 2e 20 4c 7a 69 70 20 77 69 6c 6c 20 75 73 65 0a 20 20 20 20 20 it.in.bytes..Lzip.will.use......
134e0 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 63 74 69 6f for.each.file.the.largest.dictio
13500 6e 61 72 79 20 73 69 7a 65 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 65 78 63 65 65 64 20 6e nary.size.that.does.not.exceed.n
13520 65 69 74 68 65 72 0a 20 20 20 20 20 74 68 65 20 66 69 6c 65 20 73 69 7a 65 20 6e 6f 72 20 74 68 either......the.file.size.nor.th
13540 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 6e 67 65 20 66 72 6f is.limit..Valid.values.range.fro
13560 6d 20 34 20 4b 69 42 20 74 6f 0a 20 20 20 20 20 35 31 32 20 4d 69 42 2e 20 56 61 6c 75 65 73 20 m.4.KiB.to......512.MiB..Values.
13580 31 32 20 74 6f 20 32 39 20 61 72 65 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 73 20 70 6f 77 65 12.to.29.are.interpreted.as.powe
135a0 72 73 20 6f 66 20 74 77 6f 2c 20 6d 65 61 6e 69 6e 67 0a 20 20 20 20 20 32 5e 31 32 20 74 6f 20 rs.of.two,.meaning......2^12.to.
135c0 32 5e 32 39 20 62 79 74 65 73 2e 20 44 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 73 20 61 72 65 2^29.bytes..Dictionary.sizes.are
135e0 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 20 62 65 0a 20 .quantized.so.that.they.can.be..
13600 20 20 20 20 63 6f 64 65 64 20 69 6e 20 6a 75 73 74 20 6f 6e 65 20 62 79 74 65 20 28 2a 6e 6f 74 ....coded.in.just.one.byte.(*not
13620 65 20 63 6f 64 65 64 2d 64 69 63 74 2d 73 69 7a 65 3a 3a 29 2e 20 49 66 20 74 68 65 20 73 69 7a e.coded-dict-size::)..If.the.siz
13640 65 20 73 70 65 63 69 66 69 65 64 0a 20 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 e.specified......does.not.match.
13660 6f 6e 65 20 6f 66 20 74 68 65 20 76 61 6c 69 64 20 73 69 7a 65 73 2c 20 69 74 20 77 69 6c 6c 20 one.of.the.valid.sizes,.it.will.
13680 62 65 20 72 6f 75 6e 64 65 64 20 75 70 77 61 72 64 73 20 62 79 0a 20 20 20 20 20 61 64 64 69 6e be.rounded.upwards.by......addin
136a0 67 20 75 70 20 74 6f 20 28 42 59 54 45 53 20 2f 20 38 29 20 74 6f 20 69 74 2e 0a 0a 20 20 20 20 g.up.to.(BYTES./.8).to.it.......
136c0 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 79 6f 75 20 73 68 6f .For.maximum.compression.you.sho
136e0 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 20 6c 69 6d 69 74 20 uld.use.a.dictionary.size.limit.
13700 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 2c 20 62 75 74 20 6b as.large......as.possible,.but.k
13720 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 6d 70 72 65 73 73 69 eep.in.mind.that.the.decompressi
13740 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 20 20 69 73 20 61 66 on.memory.requirement......is.af
13760 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 65 20 62 79 20 74 68 fected.at.compression.time.by.th
13780 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 7a 65 20 6c 69 6d 69 e.choice.of.dictionary.size.limi
137a0 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 73 69 7a 65 3d 42 59 t...'-S.BYTES'.'--volume-size=BY
137c0 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 61 6e 64 20 TES'......When.compressing,.and.
137e0 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 65 63 69 66 69 65 64 '-c'.has.not.been.also.specified
13800 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 65 64 20 6f 75 74 70 ,.split.the......compressed.outp
13820 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 6c 65 73 20 77 69 74 ut.into.several.volume.files.wit
13840 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 6d 65 30 30 30 30 31 h.names......'original_name00001
13860 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 2e 6c 7a 27 2c 20 65 .lz',.'original_name00002.lz',.e
13880 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 6d 65 20 73 69 7a 65 tc,.and.set.the......volume.size
138a0 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 6c 65 73 20 61 72 65 .limit.to.BYTES..Input.files.are
138c0 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 20 20 76 6f 6c 75 6d .kept.unchanged..Each......volum
138e0 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 6c 74 69 6d 65 6d 62 e.is.a.complete,.maybe.multimemb
13900 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 6c 75 6d 65 0a 20 20 er,.lzip.file..A.small.volume...
13920 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 65 73 73 69 6f 6e 20 ...size.may.degrade.compression.
13940 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 64 65 ratio,.so.use.it.only.when.neede
13960 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 65 20 66 72 6f 6d 20 d..Valid......values.range.from.
13980 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 2d 74 65 73 74 27 0a 100.kB.to.4.EiB...'-t'.'--test'.
139a0 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 68 65 20 66 69 6c 65 .....Check.integrity.of.the.file
139c0 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 73 s.specified,.but.don't.decompres
139e0 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 70 65 72 66 6f 72 6d s.them..This......really.perform
13a00 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 6e 64 20 74 68 72 6f s.a.trial.decompression.and.thro
13a20 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 20 20 20 20 69 74 20 ws.away.the.result..Use......it.
13a40 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 20 69 6e 66 6f 72 6d together.with.'-v'.to.see.inform
13a60 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 20 61 20 66 69 6c 65 ation.about.the.files..If.a.file
13a80 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 73 20 6e 6f 74 20 65 ......fails.the.test,.does.not.e
13aa0 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 61 20 74 xist,.can't.be.opened,.or.is.a.t
13ac0 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 75 65 73 20 63 68 65 erminal,.lzip......continues.che
13ae0 63 6b 69 6e 67 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 66 69 6c 65 73 2e 20 41 20 66 cking.the.rest.of.the.files..A.f
13b00 69 6e 61 6c 20 64 69 61 67 6e 6f 73 74 69 63 20 69 73 20 73 68 6f 77 6e 0a 20 20 20 20 20 61 74 inal.diagnostic.is.shown......at
13b20 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 65 72 20 69 66 20 .verbosity.level.1.or.higher.if.
13b40 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 65 6e 20 74 65 73 any.file.fails.the.test.when.tes
13b60 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 0a 0a 27 2d 76 27 0a ting......multiple.files...'-v'.
13b80 27 2d 2d 76 65 72 62 6f 73 65 27 0a 20 20 20 20 20 56 65 72 62 6f 73 65 20 6d 6f 64 65 2e 0a 20 '--verbose'......Verbose.mode...
13ba0 20 20 20 20 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 73 68 6f 77 20 74 68 65 20 63 ....When.compressing,.show.the.c
13bc0 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 61 6e 64 20 73 69 7a 65 20 66 6f 72 20 65 61 ompression.ratio.and.size.for.ea
13be0 63 68 20 66 69 6c 65 0a 20 20 20 20 20 70 72 6f 63 65 73 73 65 64 2e 0a 20 20 20 20 20 57 68 65 ch.file......processed.......Whe
13c00 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 74 n.decompressing.or.testing,.furt
13c20 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 0a her.-v's.(up.to.4).increase.the.
13c40 20 20 20 20 20 76 65 72 62 6f 73 69 74 79 20 6c 65 76 65 6c 2c 20 73 68 6f 77 69 6e 67 20 73 74 .....verbosity.level,.showing.st
13c60 61 74 75 73 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 atus,.compression.ratio,.diction
13c80 61 72 79 20 73 69 7a 65 2c 0a 20 20 20 20 20 74 72 61 69 6c 65 72 20 63 6f 6e 74 65 6e 74 73 20 ary.size,......trailer.contents.
13ca0 28 43 52 43 2c 20 64 61 74 61 20 73 69 7a 65 2c 20 6d 65 6d 62 65 72 20 73 69 7a 65 29 2c 20 61 (CRC,.data.size,.member.size),.a
13cc0 6e 64 20 75 70 20 74 6f 20 36 20 62 79 74 65 73 20 6f 66 0a 20 20 20 20 20 74 72 61 69 6c 69 6e nd.up.to.6.bytes.of......trailin
13ce0 67 20 64 61 74 61 20 28 69 66 20 61 6e 79 29 20 62 6f 74 68 20 69 6e 20 68 65 78 61 64 65 63 69 g.data.(if.any).both.in.hexadeci
13d00 6d 61 6c 20 61 6e 64 20 61 73 20 61 20 73 74 72 69 6e 67 20 6f 66 20 70 72 69 6e 74 61 62 6c 65 mal.and.as.a.string.of.printable
13d20 0a 20 20 20 20 20 41 53 43 49 49 20 63 68 61 72 61 63 74 65 72 73 2e 0a 20 20 20 20 20 54 77 6f ......ASCII.characters.......Two
13d40 20 6f 72 20 6d 6f 72 65 20 27 2d 76 27 20 6f 70 74 69 6f 6e 73 20 73 68 6f 77 20 74 68 65 20 70 .or.more.'-v'.options.show.the.p
13d60 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 2e 0a 0a 27 2d 30 rogress.of.(de)compression...'-0
13d80 20 2e 2e 20 2d 39 27 0a 20 20 20 20 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 2e 20 ....-9'......Compression.level..
13da0 53 65 74 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 20 28 Set.the.compression.parameters.(
13dc0 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 61 6e 64 0a 20 20 20 20 20 6d 61 74 63 68 20 6c dictionary.size.and......match.l
13de0 65 6e 67 74 68 20 6c 69 6d 69 74 29 20 61 73 20 73 68 6f 77 6e 20 69 6e 20 74 68 65 20 74 61 62 ength.limit).as.shown.in.the.tab
13e00 6c 65 20 62 65 6c 6f 77 2e 20 54 68 65 20 64 65 66 61 75 6c 74 0a 20 20 20 20 20 63 6f 6d 70 72 le.below..The.default......compr
13e20 65 73 73 69 6f 6e 20 6c 65 76 65 6c 20 69 73 20 27 2d 36 27 2c 20 65 71 75 69 76 61 6c 65 6e 74 ession.level.is.'-6',.equivalent
13e40 20 74 6f 20 27 2d 73 38 4d 69 42 20 2d 6d 33 36 27 2e 20 4e 6f 74 65 20 74 68 61 74 20 27 2d 39 .to.'-s8MiB.-m36'..Note.that.'-9
13e60 27 0a 20 20 20 20 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 27 '......can.be.much.slower.than.'
13e80 2d 30 27 2e 20 54 68 65 73 65 20 6f 70 74 69 6f 6e 73 20 68 61 76 65 20 6e 6f 20 65 66 66 65 63 -0'..These.options.have.no.effec
13ea0 74 20 77 68 65 6e 0a 20 20 20 20 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 74 65 73 74 69 t.when......decompressing,.testi
13ec0 6e 67 2c 20 6f 72 20 6c 69 73 74 69 6e 67 2e 0a 0a 20 20 20 20 20 54 68 65 20 62 69 64 69 6d 65 ng,.or.listing........The.bidime
13ee0 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 20 4c 5a 4d 41 20 nsional.parameter.space.of.LZMA.
13f00 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 72 0a 20 20 20 20 can't.be.mapped.to.a.linear.....
13f20 20 73 63 61 6c 65 20 6f 70 74 69 6d 61 6c 20 66 6f 72 20 61 6c 6c 20 66 69 6c 65 73 2e 20 49 66 .scale.optimal.for.all.files..If
13f40 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 65 .your.files.are.large,.very.repe
13f60 74 69 74 69 76 65 2c 0a 20 20 20 20 20 65 74 63 2c 20 79 6f 75 20 6d 61 79 20 6e 65 65 64 20 74 titive,......etc,.you.may.need.t
13f80 6f 20 75 73 65 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 27 2d 2d 64 69 63 74 69 6f 6e 61 72 79 2d o.use.the.options.'--dictionary-
13fa0 73 69 7a 65 27 20 61 6e 64 0a 20 20 20 20 20 27 2d 2d 6d 61 74 63 68 2d 6c 65 6e 67 74 68 27 20 size'.and......'--match-length'.
13fc0 64 69 72 65 63 74 6c 79 20 74 6f 20 61 63 68 69 65 76 65 20 6f 70 74 69 6d 61 6c 20 70 65 72 66 directly.to.achieve.optimal.perf
13fe0 6f 72 6d 61 6e 63 65 2e 0a 0a 20 20 20 20 20 49 66 20 73 65 76 65 72 61 6c 20 63 6f 6d 70 72 65 ormance........If.several.compre
14000 73 73 69 6f 6e 20 6c 65 76 65 6c 73 20 6f 72 20 27 2d 73 27 20 6f 72 20 27 2d 6d 27 20 6f 70 74 ssion.levels.or.'-s'.or.'-m'.opt
14020 69 6f 6e 73 20 61 72 65 20 67 69 76 65 6e 2c 20 74 68 65 0a 20 20 20 20 20 6c 61 73 74 20 73 65 ions.are.given,.the......last.se
14040 74 74 69 6e 67 20 69 73 20 75 73 65 64 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 20 27 2d 39 20 2d tting.is.used..For.example.'-9.-
14060 73 36 34 4d 69 42 27 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 0a 20 20 20 20 20 27 2d s64MiB'.is.equivalent.to......'-
14080 73 36 34 4d 69 42 20 2d 6d 32 37 33 27 0a 0a 20 20 20 20 20 4c 65 76 65 6c 20 20 20 44 69 63 74 s64MiB.-m273'.......Level...Dict
140a0 69 6f 6e 61 72 79 20 73 69 7a 65 20 28 2d 73 29 20 20 20 4d 61 74 63 68 20 6c 65 6e 67 74 68 20 ionary.size.(-s)...Match.length.
140c0 6c 69 6d 69 74 20 28 2d 6d 29 0a 20 20 20 20 20 2d 30 20 20 20 20 20 20 36 34 20 4b 69 42 20 20 limit.(-m)......-0......64.KiB..
140e0 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 20 20 20 2d 31 20 ...............16.bytes......-1.
14100 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 20 20 35 20 62 79 .....1.MiB..................5.by
14120 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 20 20 20 20 20 20 tes......-2......1.5.MiB........
14140 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 20 20 20 32 20 4d ........6.bytes......-3......2.M
14160 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 73 0a 20 20 20 20 iB..................8.bytes.....
14180 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 20 20 20 20 20 20 .-4......3.MiB..................
141a0 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 42 20 20 20 20 20 12.bytes......-5......4.MiB.....
141c0 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 20 2d 36 20 20 20 .............20.bytes......-6...
141e0 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 33 36 20 62 79 74 ...8.MiB..................36.byt
14200 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 20 20 20 20 20 20 es......-7......16.MiB..........
14220 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 20 20 20 32 34 20 .......68.bytes......-8......24.
14240 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 74 65 73 0a 20 20 MiB.................132.bytes...
14260 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 20 20 20 20 20 20 ...-9......32.MiB...............
14280 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 65 73 74 27 0a 20 ..273.bytes..'--fast'.'--best'..
142a0 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 6f 6d 70 61 74 69 ....Aliases.for.GNU.gzip.compati
142c0 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 27 0a 20 20 20 20 bility...'--loose-trailing'.....
142e0 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 6e 67 2c 20 6f 72 .When.decompressing,.testing,.or
14300 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 61 74 61 20 77 68 .listing,.allow.trailing.data.wh
14320 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 6f 20 73 69 6d 69 ose......first.bytes.are.so.simi
14340 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 61 20 6c 7a 69 70 lar.to.the.magic.bytes.of.a.lzip
14360 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 20 62 65 20 63 6f .header.that......they.can.be.co
14380 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 65 72 2e 20 55 73 nfused.with.a.corrupt.header..Us
143a0 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 20 20 20 74 72 69 e.this.option.if.a.file......tri
143c0 67 67 65 72 73 20 61 20 22 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 22 20 65 72 72 6f 72 20 61 ggers.a."corrupt.header".error.a
143e0 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 20 61 0a 20 20 20 nd.the.cause.is.not.indeed.a....
14400 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 62 65 72 73 20 67 ..corrupt.header.......Numbers.g
14420 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 6e 73 20 6d 61 79 iven.as.arguments.to.options.may
14440 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 0a 61 6e 64 .be.followed.by.a.multiplier.and
14460 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 27 42 27 20 66 6f 72 20 22 62 79 74 65 22 2e 0a 0a 20 20 .an.optional.'B'.for."byte".....
14480 20 54 61 62 6c 65 20 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 .Table.of.SI.and.binary.prefixes
144a0 20 28 75 6e 69 74 20 6d 75 6c 74 69 70 6c 69 65 72 73 29 3a 0a 0a 50 72 65 66 69 78 20 20 20 56 .(unit.multipliers):..Prefix...V
144c0 61 6c 75 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20 20 20 50 72 65 alue.....................|...Pre
144e0 66 69 78 20 20 20 56 61 6c 75 65 0a 6b 20 20 20 20 20 20 20 20 6b 69 6c 6f 62 79 74 65 20 20 28 fix...Value.k........kilobyte..(
14500 31 30 5e 33 20 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 10^3.=.1000)...|...Ki.......kibi
14520 62 79 74 65 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 byte.(2^10.=.1024).M........mega
14540 62 79 74 65 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 byte..(10^6)..........|...Mi....
14560 20 20 20 6d 65 62 69 62 79 74 65 20 28 32 5e 32 30 29 0a 47 20 20 20 20 20 20 20 20 67 69 67 61 ...mebibyte.(2^20).G........giga
14580 62 79 74 65 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 byte..(10^9)..........|...Gi....
145a0 20 20 20 67 69 62 69 62 79 74 65 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
145c0 62 79 74 65 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 20 byte..(10^12).........|...Ti....
145e0 20 20 20 74 65 62 69 62 79 74 65 20 28 32 5e 34 30 29 0a 50 20 20 20 20 20 20 20 20 70 65 74 61 ...tebibyte.(2^40).P........peta
14600 62 79 74 65 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 20 20 20 byte..(10^15).........|...Pi....
14620 20 20 20 70 65 62 69 62 79 74 65 20 28 32 5e 35 30 29 0a 45 20 20 20 20 20 20 20 20 65 78 61 62 ...pebibyte.(2^50).E........exab
14640 79 74 65 20 20 20 28 31 30 5e 31 38 29 20 20 20 20 20 20 20 20 20 7c 20 20 20 45 69 20 20 20 20 yte...(10^18).........|...Ei....
14660 20 20 20 65 78 62 69 62 79 74 65 20 28 32 5e 36 30 29 0a 5a 20 20 20 20 20 20 20 20 7a 65 74 74 ...exbibyte.(2^60).Z........zett
14680 61 62 79 74 65 20 28 31 30 5e 32 31 29 20 20 20 20 20 20 20 20 20 7c 20 20 20 5a 69 20 20 20 20 abyte.(10^21).........|...Zi....
146a0 20 20 20 7a 65 62 69 62 79 74 65 20 28 32 5e 37 30 29 0a 59 20 20 20 20 20 20 20 20 79 6f 74 74 ...zebibyte.(2^70).Y........yott
146c0 61 62 79 74 65 20 28 31 30 5e 32 34 29 20 20 20 20 20 20 20 20 20 7c 20 20 20 59 69 20 20 20 20 abyte.(10^24).........|...Yi....
146e0 20 20 20 79 6f 62 69 62 79 74 65 20 28 32 5e 38 30 29 0a 0a 0a 20 20 20 45 78 69 74 20 73 74 61 ...yobibyte.(2^80)......Exit.sta
14700 74 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 tus:.0.for.a.normal.exit,.1.for.
14720 65 6e 76 69 72 6f 6e 6d 65 6e 74 61 6c 20 70 72 6f 62 6c 65 6d 73 20 28 66 69 6c 65 20 6e 6f 74 environmental.problems.(file.not
14740 0a 66 6f 75 6e 64 2c 20 69 6e 76 61 6c 69 64 20 66 6c 61 67 73 2c 20 49 2f 4f 20 65 72 72 6f 72 .found,.invalid.flags,.I/O.error
14760 73 2c 20 65 74 63 29 2c 20 32 20 74 6f 20 69 6e 64 69 63 61 74 65 20 61 20 63 6f 72 72 75 70 74 s,.etc),.2.to.indicate.a.corrupt
14780 20 6f 72 20 69 6e 76 61 6c 69 64 0a 69 6e 70 75 74 20 66 69 6c 65 2c 20 33 20 66 6f 72 20 61 6e .or.invalid.input.file,.3.for.an
147a0 20 69 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 67 2c .internal.consistency.error.(eg,
147c0 20 62 75 67 29 20 77 68 69 63 68 20 63 61 75 73 65 64 20 6c 7a 69 70 0a 74 6f 20 70 61 6e 69 63 .bug).which.caused.lzip.to.panic
147e0 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 51 75 61 .....File:.lzip.info,..Node:.Qua
14800 6c 69 74 79 20 61 73 73 75 72 61 6e 63 65 2c 20 20 4e 65 78 74 3a 20 46 69 6c 65 20 66 6f 72 6d lity.assurance,..Next:.File.form
14820 61 74 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 at,..Prev:.Invoking.lzip,..Up:.T
14840 6f 70 0a 0a 34 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 op..4.Design,.development,.and.t
14860 65 73 74 69 6e 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 esting.of.lzip.*****************
14880 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 0a 0a 54 68 65 72 65 *************************..There
148a0 20 61 72 65 20 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 .are.two.ways.of.constructing.a.
148c0 73 6f 66 74 77 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 software.design:.One.way.is.to.m
148e0 61 6b 65 20 69 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 ake.it.so.simple.that.there.are.
14900 6f 62 76 69 6f 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 obviously.no.deficiencies.and.th
14920 65 20 6f 74 68 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 e.other.way.is.to.make.it.so.com
14940 70 6c 69 63 61 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 plicated.that.there.are.no.obvio
14960 75 73 20 64 65 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 us.deficiencies..The.first.metho
14980 64 20 69 73 20 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 d.is.far.more.difficult..--.C.A.
149a0 52 2e 20 48 6f 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 R..Hoare.....Lzip.has.been.desig
149c0 6e 65 64 2c 20 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 ned,.written,.and.tested.with.gr
149e0 65 61 74 20 63 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 eat.care.to.replace.gzip.and.bzi
14a00 70 32 20 61 73 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f p2.as.the.standard.general-purpo
14a20 73 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 74 20 66 6f 72 0a 75 6e 69 78 2d 6c 69 se.compressed.format.for.unix-li
14a40 6b 65 20 73 79 73 74 65 6d 73 2e 20 54 68 69 73 20 63 68 61 70 74 65 72 20 64 65 73 63 72 69 62 ke.systems..This.chapter.describ
14a60 65 73 20 74 68 65 20 6c 65 73 73 6f 6e 73 20 6c 65 61 72 6e 65 64 20 66 72 6f 6d 20 74 68 65 73 es.the.lessons.learned.from.thes
14a80 65 0a 70 72 65 76 69 6f 75 73 20 66 6f 72 6d 61 74 73 2c 20 61 6e 64 20 74 68 65 69 72 20 61 70 e.previous.formats,.and.their.ap
14aa0 70 6c 69 63 61 74 69 6f 6e 20 74 6f 20 74 68 65 20 64 65 73 69 67 6e 20 6f 66 20 6c 7a 69 70 2e plication.to.the.design.of.lzip.
14ac0 0a 0a 0a 34 2e 31 20 46 6f 72 6d 61 74 20 64 65 73 69 67 6e 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ...4.1.Format.design.===========
14ae0 3d 3d 3d 3d 3d 3d 0a 0a 57 68 65 6e 20 67 7a 69 70 20 77 61 73 20 64 65 73 69 67 6e 65 64 20 69 ======..When.gzip.was.designed.i
14b00 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 72 61 74 69 6e 67 20 n.1992,.computers.and.operating.
14b20 73 79 73 74 65 6d 73 20 77 65 72 65 20 6d 75 63 68 0a 6c 65 73 73 20 63 61 70 61 62 6c 65 20 74 systems.were.much.less.capable.t
14b40 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 65 72 han.they.are.today..The.designer
14b60 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 0a 73 s.of.gzip.tried.to.work.around.s
14b80 6f 6d 65 20 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 20 38 ome.of.those.limitations,.like.8
14ba0 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 20 66 .3.file.names,.with.additional.f
14bc0 69 65 6c 64 73 20 69 6e 0a 74 68 65 20 66 69 6c 65 20 66 6f 72 6d 61 74 2e 0a 0a 20 20 20 54 6f ields.in.the.file.format......To
14be0 64 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 day.those.limitations.have.mostl
14c00 79 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 y.disappeared,.and.the.format.of
14c20 20 67 7a 69 70 0a 68 61 73 20 70 72 6f 76 65 64 20 74 6f 20 62 65 20 75 6e 6e 65 63 65 73 73 61 .gzip.has.proved.to.be.unnecessa
14c40 72 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 rily.complicated..It.includes.fi
14c60 65 6c 64 73 20 74 68 61 74 20 77 65 72 65 0a 6e 65 76 65 72 20 75 73 65 64 2c 20 6f 74 68 65 72 elds.that.were.never.used,.other
14c80 73 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 s.that.have.lost.their.usefulnes
14ca0 73 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 0a 68 61 76 65 20 s,.and.finally.others.that.have.
14cc0 62 65 63 6f 6d 65 20 74 6f 6f 20 6c 69 6d 69 74 65 64 2e 0a 0a 20 20 20 42 7a 69 70 32 20 77 61 become.too.limited......Bzip2.wa
14ce0 73 20 64 65 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 s.designed.5.years.later,.and.it
14d00 73 20 66 6f 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 s.format.is.simpler.than.the.one
14d20 0a 6f 66 20 67 7a 69 70 2e 0a 0a 20 20 20 50 72 6f 62 61 62 6c 79 20 74 68 65 20 77 6f 72 73 74 .of.gzip......Probably.the.worst
14d40 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 74 20 66 72 6f 6d 20 .defect.of.the.gzip.format.from.
14d60 74 68 65 20 70 6f 69 6e 74 20 6f 66 20 76 69 65 77 20 6f 66 0a 64 61 74 61 20 73 61 66 65 74 79 the.point.of.view.of.data.safety
14d80 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 69 74 73 20 68 65 61 .is.the.variable.size.of.its.hea
14da0 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 74 20 33 0a 28 66 6c der..If.the.byte.at.offset.3.(fl
14dc0 61 67 73 29 20 6f 66 20 61 20 67 7a 69 70 20 6d 65 6d 62 65 72 20 67 65 74 73 20 63 6f 72 72 75 ags).of.a.gzip.member.gets.corru
14de0 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 63 75 6c 74 20 74 6f pted,.it.may.become.difficult.to
14e00 20 72 65 63 6f 76 65 72 0a 74 68 65 20 64 61 74 61 2c 20 65 76 65 6e 20 69 66 20 74 68 65 20 63 .recover.the.data,.even.if.the.c
14e20 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 63 74 2c 20 62 65 63 ompressed.blocks.are.intact,.bec
14e40 61 75 73 65 20 69 74 20 63 61 6e 27 74 20 62 65 0a 6b 6e 6f 77 6e 20 77 69 74 68 20 63 65 72 74 ause.it.can't.be.known.with.cert
14e60 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 64 20 62 6c 6f 63 6b ainty.where.the.compressed.block
14e80 73 20 62 65 67 69 6e 2e 0a 0a 20 20 20 42 79 20 63 6f 6e 74 72 61 73 74 2c 20 74 68 65 20 68 65 s.begin......By.contrast,.the.he
14ea0 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 66 69 78 65 ader.of.a.lzip.member.has.a.fixe
14ec0 64 20 6c 65 6e 67 74 68 20 6f 66 20 36 2e 20 54 68 65 0a 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 d.length.of.6..The.LZMA.stream.i
14ee0 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 73 20 61 74 n.a.lzip.member.always.starts.at
14f00 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 0a 74 6f 20 .offset.6,.making.it.trivial.to.
14f20 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 20 77 68 6f recover.the.data.even.if.the.who
14f40 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 20 20 20 42 le.header.becomes.corrupt......B
14f60 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 66 zip2.also.provides.a.header.of.f
14f80 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 20 ixed.length.and.marks.the.begin.
14fa0 61 6e 64 20 65 6e 64 0a 6f 66 20 65 61 63 68 20 63 6f 6d 70 72 65 73 73 65 64 20 62 6c 6f 63 6b and.end.of.each.compressed.block
14fc0 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 74 .with.six.magic.bytes,.making.it
14fe0 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 66 69 6e 64 0a 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 .possible.to.find.the.compressed
15000 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 6d .blocks.even.in.case.of.file.dam
15020 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 0a 74 68 age..But.bzip2.does.not.store.th
15040 65 20 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 2c e.size.of.each.compressed.block,
15060 20 61 73 20 6c 7a 69 70 20 64 6f 65 73 2e 0a 0a 20 20 20 4c 7a 69 70 72 65 63 6f 76 65 72 20 70 .as.lzip.does......Lziprecover.p
15080 72 6f 76 69 64 65 73 20 75 6e 69 71 75 65 20 64 61 74 61 20 72 65 63 6f 76 65 72 79 20 63 61 70 rovides.unique.data.recovery.cap
150a0 61 62 69 6c 69 74 69 65 73 20 62 65 63 61 75 73 65 20 74 68 65 20 6c 7a 69 70 0a 66 6f 72 6d 61 abilities.because.the.lzip.forma
150c0 74 20 68 61 73 20 62 65 65 6e 20 64 65 73 69 67 6e 65 64 20 66 72 6f 6d 20 74 68 65 20 62 65 67 t.has.been.designed.from.the.beg
150e0 69 6e 6e 69 6e 67 20 74 6f 20 62 65 20 73 69 6d 70 6c 65 20 61 6e 64 20 73 61 66 65 2e 20 49 74 inning.to.be.simple.and.safe..It
15100 20 61 6c 73 6f 0a 68 65 6c 70 73 20 74 68 61 74 20 74 68 65 20 4c 5a 4d 41 20 64 61 74 61 20 73 .also.helps.that.the.LZMA.data.s
15120 74 72 65 61 6d 20 61 73 20 75 73 65 64 20 62 79 20 6c 7a 69 70 20 69 73 20 65 78 74 72 61 6f 72 tream.as.used.by.lzip.is.extraor
15140 64 69 6e 61 72 69 6c 79 20 73 61 66 65 0a 62 65 63 61 75 73 65 20 69 74 20 70 72 6f 76 69 64 65 dinarily.safe.because.it.provide
15160 73 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 2e 20 41 6e 79 20 s.embedded.error.detection..Any.
15180 64 69 73 74 61 6e 63 65 20 6c 61 72 67 65 72 20 74 68 61 6e 20 74 68 65 0a 64 69 63 74 69 6f 6e distance.larger.than.the.diction
151a0 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 20 73 79 6d ary.size.acts.as.a.forbidden.sym
151c0 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
151e0 6f 0a 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
15200 6e 20 6f 66 20 65 72 72 6f 72 73 2c 20 61 6e 64 20 6c 65 61 76 69 6e 67 20 76 65 72 79 20 6c 69 n.of.errors,.and.leaving.very.li
15220 74 74 6c 65 20 77 6f 72 6b 20 66 6f 72 0a 74 68 65 20 63 68 65 63 6b 20 73 65 71 75 65 6e 63 65 ttle.work.for.the.check.sequence
15240 20 28 43 52 43 20 61 6e 64 20 64 61 74 61 20 73 69 7a 65 73 29 20 69 6e 20 74 68 65 20 64 65 74 .(CRC.and.data.sizes).in.the.det
15260 65 63 74 69 6f 6e 20 6f 66 20 65 72 72 6f 72 73 2e 20 4c 7a 69 70 20 69 73 0a 75 73 75 61 6c 6c ection.of.errors..Lzip.is.usuall
15280 79 20 61 62 6c 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 y.able.to.detect.all.possible.bi
152a0 74 20 66 6c 69 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 t.flips.in.the.compressed.data.w
152c0 69 74 68 6f 75 74 0a 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 ithout.resorting.to.the.check.se
152e0 71 75 65 6e 63 65 2e 20 49 74 20 77 6f 75 6c 64 20 62 65 20 64 69 66 66 69 63 75 6c 74 20 74 6f quence..It.would.be.difficult.to
15300 20 77 72 69 74 65 20 61 6e 20 61 75 74 6f 6d 61 74 69 63 0a 72 65 63 6f 76 65 72 79 20 74 6f 6f .write.an.automatic.recovery.too
15320 6c 20 6c 69 6b 65 20 6c 7a 69 70 72 65 63 6f 76 65 72 20 66 6f 72 20 74 68 65 20 67 7a 69 70 20 l.like.lziprecover.for.the.gzip.
15340 66 6f 72 6d 61 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 0a 69 format..And,.as.far.as.I.know,.i
15360 74 20 68 61 73 20 6e 65 76 65 72 20 62 65 65 6e 20 77 72 69 74 74 65 6e 2e 0a 0a 20 20 20 4c 7a t.has.never.been.written......Lz
15380 69 70 2c 20 6c 69 6b 65 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 2c 20 75 73 65 73 20 61 20 ip,.like.gzip.and.bzip2,.uses.a.
153a0 43 52 43 33 32 20 74 6f 20 63 68 65 63 6b 20 74 68 65 20 69 6e 74 65 67 72 69 74 79 20 6f 66 20 CRC32.to.check.the.integrity.of.
153c0 74 68 65 0a 64 65 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 62 65 63 61 75 73 65 20 69 74 the.decompressed.data.because.it
153e0 20 70 72 6f 76 69 64 65 73 20 6f 70 74 69 6d 61 6c 20 61 63 63 75 72 61 63 79 20 69 6e 20 74 68 .provides.optimal.accuracy.in.th
15400 65 20 64 65 74 65 63 74 69 6f 6e 20 6f 66 0a 65 72 72 6f 72 73 20 75 70 20 74 6f 20 61 20 63 6f e.detection.of.errors.up.to.a.co
15420 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 6f 66 20 61 62 6f 75 74 20 31 36 20 47 69 42 2c 20 61 mpressed.size.of.about.16.GiB,.a
15440 20 73 69 7a 65 20 6c 61 72 67 65 72 20 74 68 61 6e 20 74 68 61 74 20 6f 66 0a 6d 6f 73 74 20 66 .size.larger.than.that.of.most.f
15460 69 6c 65 73 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 iles..In.the.case.of.lzip,.the.a
15480 64 64 69 74 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 dditional.detection.capability.o
154a0 66 20 74 68 65 0a 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 f.the.decompressor.reduces.the.p
154c0 72 6f 62 61 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 robability.of.undetected.errors.
154e0 73 65 76 65 72 61 6c 20 6d 69 6c 6c 69 6f 6e 0a 74 69 6d 65 73 20 6d 6f 72 65 2c 20 72 65 73 75 several.million.times.more,.resu
15500 6c 74 69 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 lting.in.a.combined.integrity.ch
15520 65 63 6b 69 6e 67 20 6f 70 74 69 6d 61 6c 6c 79 20 61 63 63 75 72 61 74 65 0a 66 6f 72 20 61 6e ecking.optimally.accurate.for.an
15540 79 20 6d 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 y.member.size.produced.by.lzip..
15560 50 72 65 6c 69 6d 69 6e 61 72 79 20 72 65 73 75 6c 74 73 20 73 75 67 67 65 73 74 20 74 68 61 74 Preliminary.results.suggest.that
15580 20 74 68 65 0a 6c 7a 69 70 20 66 6f 72 6d 61 74 20 69 73 20 73 61 66 65 20 65 6e 6f 75 67 68 20 .the.lzip.format.is.safe.enough.
155a0 74 6f 20 62 65 20 75 73 65 64 20 69 6e 20 63 72 69 74 69 63 61 6c 20 73 61 66 65 74 79 20 61 76 to.be.used.in.critical.safety.av
155c0 69 6f 6e 69 63 73 20 73 79 73 74 65 6d 73 2e 0a 0a 20 20 20 54 68 65 20 6c 7a 69 70 20 66 6f 72 ionics.systems......The.lzip.for
155e0 6d 61 74 20 69 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 mat.is.designed.for.long-term.ar
15600 63 68 69 76 69 6e 67 2e 20 54 68 65 72 65 66 6f 72 65 20 69 74 0a 65 78 63 6c 75 64 65 73 20 61 chiving..Therefore.it.excludes.a
15620 6e 79 20 75 6e 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 ny.unneeded.features.that.may.in
15640 74 65 72 66 65 72 65 20 77 69 74 68 20 74 68 65 20 66 75 74 75 72 65 0a 65 78 74 72 61 63 74 69 terfere.with.the.future.extracti
15660 6f 6e 20 6f 66 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 2e 0a 0a 0a 34 on.of.the.decompressed.data....4
15680 2e 31 2e 31 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 .1.1.Gzip.format.(mis)features.n
156a0 6f 74 20 70 72 65 73 65 6e 74 20 69 6e 20 6c 7a 69 70 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ot.present.in.lzip.-------------
156c0 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 --------------------------------
156e0 2d 2d 2d 2d 2d 2d 0a 0a 27 4d 75 6c 74 69 70 6c 65 20 61 6c 67 6f 72 69 74 68 6d 73 27 0a 20 20 ------..'Multiple.algorithms'...
15700 20 20 20 47 7a 69 70 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 ...Gzip.provides.a.CM.(Compressi
15720 6f 6e 20 4d 65 74 68 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 on.Method).field.that.has.never.
15740 62 65 65 6e 20 75 73 65 64 0a 20 20 20 20 20 62 65 63 61 75 73 65 20 69 74 20 69 73 20 61 20 62 been.used......because.it.is.a.b
15760 61 64 20 69 64 65 61 20 74 6f 20 62 65 67 69 6e 20 77 69 74 68 2e 20 4e 65 77 20 63 6f 6d 70 72 ad.idea.to.begin.with..New.compr
15780 65 73 73 69 6f 6e 20 6d 65 74 68 6f 64 73 20 6d 61 79 0a 20 20 20 20 20 72 65 71 75 69 72 65 20 ession.methods.may......require.
157a0 61 64 64 69 74 69 6f 6e 61 6c 20 66 69 65 6c 64 73 2c 20 6d 61 6b 69 6e 67 20 69 74 20 69 6d 70 additional.fields,.making.it.imp
157c0 6f 73 73 69 62 6c 65 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 6e 65 77 0a 20 20 20 20 20 6d 65 ossible.to.implement.new......me
157e0 74 68 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 20 6b 65 65 thods.and,.at.the.same.time,.kee
15800 70 20 74 68 65 20 73 61 6d 65 20 66 6f 72 6d 61 74 2e 20 54 68 69 73 20 66 69 65 6c 64 20 64 6f p.the.same.format..This.field.do
15820 65 73 0a 20 20 20 20 20 6e 6f 74 20 73 6f 6c 76 65 20 74 68 65 20 70 72 6f 62 6c 65 6d 20 6f 66 es......not.solve.the.problem.of
15840 20 66 6f 72 6d 61 74 20 70 72 6f 6c 69 66 65 72 61 74 69 6f 6e 3b 20 69 74 20 6a 75 73 74 20 6d .format.proliferation;.it.just.m
15860 61 6b 65 73 20 74 68 65 0a 20 20 20 20 20 70 72 6f 62 6c 65 6d 20 6c 65 73 73 20 6f 62 76 69 6f akes.the......problem.less.obvio
15880 75 73 2e 0a 0a 27 4f 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 us...'Optional.fields.in.header'
158a0 0a 20 20 20 20 20 55 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 ......Unless.special.precautions
158c0 20 61 72 65 20 74 61 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 .are.taken,.optional.fields.are.
158e0 67 65 6e 65 72 61 6c 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 generally.a......bad.idea.becaus
15900 65 20 74 68 65 79 20 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 e.they.produce.a.header.of.varia
15920 62 6c 65 20 73 69 7a 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 ble.size..The.gzip......header.h
15940 61 73 20 32 20 66 69 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 as.2.fields.that,.in.addition.to
15960 20 62 65 69 6e 67 20 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 .being.optional,.are......zero-t
15980 65 72 6d 69 6e 61 74 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 erminated..This.means.that.if.an
159a0 79 20 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 0a 20 20 20 y.byte.inside.the.field.gets....
159c0 20 20 7a 65 72 6f 65 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 ..zeroed,.or.if.the.terminating.
159e0 7a 65 72 6f 20 67 65 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 zero.gets.altered,.gzip.won't.be
15a00 20 61 62 6c 65 20 74 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 .able.to......find.neither.the.h
15a20 65 61 64 65 72 20 43 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 eader.CRC.nor.the.compressed.blo
15a40 63 6b 73 2e 0a 0a 27 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 cks...'Optional.CRC.for.the.head
15a60 65 72 27 0a 20 20 20 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 er'......Using.an.optional.CRC.f
15a80 6f 72 20 74 68 65 20 68 65 61 64 65 72 20 69 73 20 6e 6f 74 20 6f 6e 6c 79 20 61 20 62 61 64 20 or.the.header.is.not.only.a.bad.
15aa0 69 64 65 61 2c 20 69 74 20 69 73 20 61 6e 0a 20 20 20 20 20 65 72 72 6f 72 3b 20 69 74 20 63 69 idea,.it.is.an......error;.it.ci
15ac0 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 63 65 20 28 rcumvents.the.Hamming.distance.(
15ae0 48 44 29 20 6f 66 20 74 68 65 20 43 52 43 20 61 6e 64 20 6d 61 79 0a 20 20 20 20 20 70 72 65 76 HD).of.the.CRC.and.may......prev
15b00 65 6e 74 20 74 68 65 20 65 78 74 72 61 63 74 69 6f 6e 20 6f 66 20 70 65 72 66 65 63 74 6c 79 20 ent.the.extraction.of.perfectly.
15b20 67 6f 6f 64 20 64 61 74 61 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 74 68 65 20 43 good.data..For.example,.if.the.C
15b40 52 43 0a 20 20 20 20 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 RC......is.used.and.the.bit.enab
15b60 6c 69 6e 67 20 69 74 20 69 73 20 72 65 73 65 74 20 62 79 20 61 20 62 69 74 20 66 6c 69 70 2c 20 ling.it.is.reset.by.a.bit.flip,.
15b80 74 68 65 20 68 65 61 64 65 72 0a 20 20 20 20 20 77 69 6c 6c 20 61 70 70 65 61 72 20 74 6f 20 62 the.header......will.appear.to.b
15ba0 65 20 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 e.intact.(in.spite.of.being.corr
15bc0 75 70 74 29 20 77 68 69 6c 65 20 74 68 65 0a 20 20 20 20 20 63 6f 6d 70 72 65 73 73 65 64 20 62 upt).while.the......compressed.b
15be0 6c 6f 63 6b 73 20 77 69 6c 6c 20 61 70 70 65 61 72 20 74 6f 20 62 65 20 74 6f 74 61 6c 6c 79 20 locks.will.appear.to.be.totally.
15c00 75 6e 72 65 63 6f 76 65 72 61 62 6c 65 20 28 69 6e 20 73 70 69 74 65 20 6f 66 0a 20 20 20 20 20 unrecoverable.(in.spite.of......
15c20 62 65 69 6e 67 20 69 6e 74 61 63 74 29 2e 20 56 65 72 79 20 6d 69 73 6c 65 61 64 69 6e 67 20 69 being.intact)..Very.misleading.i
15c40 6e 64 65 65 64 2e 0a 0a 27 4d 65 74 61 64 61 74 61 27 0a 20 20 20 20 20 54 68 65 20 67 7a 69 70 ndeed...'Metadata'......The.gzip
15c60 20 66 6f 72 6d 61 74 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 .format.stores.some.metadata,.li
15c80 6b 65 20 74 68 65 20 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 ke.the.modification.time.of.the.
15ca0 20 20 20 20 20 6f 72 69 67 69 6e 61 6c 20 66 69 6c 65 20 6f 72 20 74 68 65 20 6f 70 65 72 61 74 .....original.file.or.the.operat
15cc0 69 6e 67 20 73 79 73 74 65 6d 20 6f 6e 20 77 68 69 63 68 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 ing.system.on.which.compression.
15ce0 74 6f 6f 6b 20 70 6c 61 63 65 2e 0a 20 20 20 20 20 54 68 69 73 20 63 6f 6d 70 6c 69 63 61 74 65 took.place.......This.complicate
15d00 73 20 72 65 70 72 6f 64 75 63 69 62 6c 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 28 6f 62 74 61 s.reproducible.compression.(obta
15d20 69 6e 69 6e 67 20 69 64 65 6e 74 69 63 61 6c 0a 20 20 20 20 20 63 6f 6d 70 72 65 73 73 65 64 20 ining.identical......compressed.
15d40 6f 75 74 70 75 74 20 66 72 6f 6d 20 69 64 65 6e 74 69 63 61 6c 20 69 6e 70 75 74 29 2e 0a 0a 0a output.from.identical.input)....
15d60 34 2e 31 2e 32 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 4.1.2.Lzip.format.improvements.o
15d80 76 65 72 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ver.gzip.and.bzip2.-------------
15da0 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 --------------------------------
15dc0 2d 2d 2d 2d 2d 0a 0a 27 36 34 2d 62 69 74 20 73 69 7a 65 20 66 69 65 6c 64 27 0a 20 20 20 20 20 -----..'64-bit.size.field'......
15de0 50 72 6f 62 61 62 6c 79 20 74 68 65 20 6d 6f 73 74 20 66 72 65 71 75 65 6e 74 6c 79 20 72 65 70 Probably.the.most.frequently.rep
15e00 6f 72 74 65 64 20 73 68 6f 72 74 63 6f 6d 69 6e 67 20 6f 66 20 74 68 65 20 67 7a 69 70 20 66 6f orted.shortcoming.of.the.gzip.fo
15e20 72 6d 61 74 20 69 73 0a 20 20 20 20 20 74 68 61 74 20 69 74 20 6f 6e 6c 79 20 73 74 6f 72 65 73 rmat.is......that.it.only.stores
15e40 20 74 68 65 20 6c 65 61 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 33 32 20 62 69 74 73 20 6f .the.least.significant.32.bits.o
15e60 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 0a 20 20 20 20 20 73 69 7a 65 2e 20 54 68 f.the.uncompressed......size..Th
15e80 65 20 73 69 7a 65 20 6f 66 20 61 6e 79 20 66 69 6c 65 20 6c 61 72 67 65 72 20 74 68 61 6e 20 34 e.size.of.any.file.larger.than.4
15ea0 20 47 69 42 20 67 65 74 73 20 74 72 75 6e 63 61 74 65 64 2e 0a 0a 20 20 20 20 20 42 7a 69 70 32 .GiB.gets.truncated........Bzip2
15ec0 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 65 73 73 65 64 .does.not.store.the.uncompressed
15ee0 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 65 20 6c 7a 69 .size.of.the.file........The.lzi
15f00 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 66 69 65 6c 64 p.format.provides.a.64-bit.field
15f20 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 0a 20 20 20 20 .for.the.uncompressed.size......
15f40 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 73 20 6d 75 6c .Additionally,.lzip.produces.mul
15f60 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 6c 79 20 77 68 timember.output.automatically.wh
15f80 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 67 65 20 66 6f en.the......size.is.too.large.fo
15fa0 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 66 6f 72 20 r.a.single.member,.allowing.for.
15fc0 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 73 65 64 20 73 an.unlimited......uncompressed.s
15fe0 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 20 20 20 20 54 ize...'Distributed.index'......T
16000 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 69 73 74 72 69 he.lzip.format.provides.a.distri
16020 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 65 72 20 74 68 buted.index.that,.among.other.th
16040 69 6e 67 73 2c 0a 20 20 20 20 20 68 65 6c 70 73 20 70 6c 7a 69 70 20 74 6f 20 64 65 63 6f 6d 70 ings,......helps.plzip.to.decomp
16060 72 65 73 73 20 73 65 76 65 72 61 6c 20 74 69 6d 65 73 20 66 61 73 74 65 72 20 74 68 61 6e 20 70 ress.several.times.faster.than.p
16080 69 67 7a 20 61 6e 64 20 68 65 6c 70 73 0a 20 20 20 20 20 6c 7a 69 70 72 65 63 6f 76 65 72 20 64 igz.and.helps......lziprecover.d
160a0 6f 20 69 74 73 20 6a 6f 62 2e 20 4e 65 69 74 68 65 72 20 74 68 65 20 67 7a 69 70 20 66 6f 72 6d o.its.job..Neither.the.gzip.form
160c0 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 0a 20 20 20 20 20 at.nor.the.bzip2.format.do......
160e0 70 72 6f 76 69 64 65 20 61 6e 20 69 6e 64 65 78 2e 0a 0a 20 20 20 20 20 41 20 64 69 73 74 72 69 provide.an.index........A.distri
16100 62 75 74 65 64 20 69 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 buted.index.is.safer.and.more.sc
16120 61 6c 61 62 6c 65 20 74 68 61 6e 20 61 20 6d 6f 6e 6f 6c 69 74 68 69 63 20 69 6e 64 65 78 2e 0a alable.than.a.monolithic.index..
16140 20 20 20 20 20 54 68 65 20 6d 6f 6e 6f 6c 69 74 68 69 63 20 69 6e 64 65 78 20 69 6e 74 72 6f 64 .....The.monolithic.index.introd
16160 75 63 65 73 20 61 20 73 69 6e 67 6c 65 20 70 6f 69 6e 74 20 6f 66 20 66 61 69 6c 75 72 65 20 69 uces.a.single.point.of.failure.i
16180 6e 20 74 68 65 0a 20 20 20 20 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 61 6e 64 20 6d n.the......compressed.file.and.m
161a0 61 79 20 6c 69 6d 69 74 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6d 65 6d 62 65 72 73 20 6f ay.limit.the.number.of.members.o
161c0 72 20 74 68 65 20 74 6f 74 61 6c 0a 20 20 20 20 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 69 r.the.total......uncompressed.si
161e0 7a 65 2e 0a 0a 0a 34 2e 32 20 51 75 61 6c 69 74 79 20 6f 66 20 69 6d 70 6c 65 6d 65 6e 74 61 74 ze....4.2.Quality.of.implementat
16200 69 6f 6e 0a 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 3d 3d 3d ion.============================
16220 3d 0a 0a 27 41 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 =..'Accurate.and.robust.error.de
16240 74 65 63 74 69 6f 6e 27 0a 20 20 20 20 20 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 70 72 tection'......The.lzip.format.pr
16260 6f 76 69 64 65 73 20 33 20 66 61 63 74 6f 72 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 63 6b 69 ovides.3.factor.integrity.checki
16280 6e 67 20 61 6e 64 20 74 68 65 0a 20 20 20 20 20 64 65 63 6f 6d 70 72 65 73 73 6f 72 73 20 72 65 ng.and.the......decompressors.re
162a0 70 6f 72 74 20 6d 69 73 6d 61 74 63 68 65 73 20 69 6e 20 65 61 63 68 20 66 61 63 74 6f 72 20 73 port.mismatches.in.each.factor.s
162c0 65 70 61 72 61 74 65 6c 79 2e 20 54 68 69 73 20 77 61 79 20 69 66 0a 20 20 20 20 20 6a 75 73 74 eparately..This.way.if......just
162e0 20 6f 6e 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 .one.byte.in.one.factor.fails.bu
16300 74 20 74 68 65 20 6f 74 68 65 72 20 74 77 6f 20 66 61 63 74 6f 72 73 20 6d 61 74 63 68 20 74 68 t.the.other.two.factors.match.th
16320 65 0a 20 20 20 20 20 64 61 74 61 2c 20 69 74 20 70 72 6f 62 61 62 6c 79 20 6d 65 61 6e 73 20 74 e......data,.it.probably.means.t
16340 68 61 74 20 74 68 65 20 64 61 74 61 20 61 72 65 20 69 6e 74 61 63 74 20 61 6e 64 20 74 68 65 20 hat.the.data.are.intact.and.the.
16360 63 6f 72 72 75 70 74 69 6f 6e 0a 20 20 20 20 20 6a 75 73 74 20 61 66 66 65 63 74 73 20 74 68 65 corruption......just.affects.the
16380 20 6d 69 73 6d 61 74 63 68 69 6e 67 20 66 61 63 74 6f 72 20 28 43 52 43 20 6f 72 20 64 61 74 61 .mismatching.factor.(CRC.or.data
163a0 20 73 69 7a 65 29 20 69 6e 20 74 68 65 20 63 68 65 63 6b 0a 20 20 20 20 20 73 65 71 75 65 6e 63 .size).in.the.check......sequenc
163c0 65 2e 0a 0a 27 4d 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 e...'Multiple.implementations'..
163e0 20 20 20 20 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 ....Just.like.the.lzip.format.pr
16400 6f 76 69 64 65 73 20 33 20 66 61 63 74 6f 72 20 70 72 6f 74 65 63 74 69 6f 6e 20 61 67 61 69 6e ovides.3.factor.protection.again
16420 73 74 0a 20 20 20 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 st......undetected.data.corrupti
16440 6f 6e 2c 20 74 68 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 on,.the.development.methodology.
16460 6f 66 20 74 68 65 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 of.the.lzip......family.of.compr
16480 65 73 73 6f 72 73 20 70 72 6f 76 69 64 65 73 20 33 20 66 61 63 74 6f 72 20 70 72 6f 74 65 63 74 essors.provides.3.factor.protect
164a0 69 6f 6e 20 61 67 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 ion.against.undetected......prog
164c0 72 61 6d 6d 69 6e 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 ramming.errors........Three.rela
164e0 74 65 64 20 62 75 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 ted.but.independent.compressor.i
16500 6d 70 6c 65 6d 65 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 mplementations,.lzip,.clzip,....
16520 20 20 61 6e 64 20 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 ..and.minilzip/lzlib,.are.develo
16540 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 65 20 72 ped.concurrently..Every.stable.r
16560 65 6c 65 61 73 65 20 6f 66 0a 20 20 20 20 20 61 6e 79 20 6f 66 20 74 68 65 6d 20 69 73 20 73 75 elease.of......any.of.them.is.su
16580 62 6a 65 63 74 65 64 20 74 6f 20 61 20 68 75 6e 64 72 65 64 20 68 6f 75 72 73 20 6f 66 20 69 6e bjected.to.a.hundred.hours.of.in
165a0 74 65 6e 73 69 76 65 20 74 65 73 74 69 6e 67 20 74 6f 0a 20 20 20 20 20 76 65 72 69 66 79 20 74 tensive.testing.to......verify.t
165c0 68 61 74 20 69 74 20 70 72 6f 64 75 63 65 73 20 69 64 65 6e 74 69 63 61 6c 20 6f 75 74 70 75 74 hat.it.produces.identical.output
165e0 20 74 6f 20 74 68 65 20 6f 74 68 65 72 20 74 77 6f 2e 20 54 68 69 73 0a 20 20 20 20 20 67 75 61 .to.the.other.two..This......gua
16600 72 61 6e 74 65 65 73 20 74 68 61 74 20 61 6c 6c 20 74 68 72 65 65 20 69 6d 70 6c 65 6d 65 6e 74 rantees.that.all.three.implement
16620 20 74 68 65 20 73 61 6d 65 20 61 6c 67 6f 72 69 74 68 6d 2c 20 61 6e 64 20 6d 61 6b 65 73 20 69 .the.same.algorithm,.and.makes.i
16640 74 0a 20 20 20 20 20 75 6e 6c 69 6b 65 6c 79 20 74 68 61 74 20 61 6e 79 20 6f 66 20 74 68 65 6d t......unlikely.that.any.of.them
16660 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 6f 76 65 72 65 .may.contain.serious.undiscovere
16680 64 20 65 72 72 6f 72 73 2e 20 49 6e 0a 20 20 20 20 20 66 61 63 74 2c 20 6e 6f 20 65 72 72 6f 72 d.errors..In......fact,.no.error
166a0 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
166c0 69 6e 63 65 20 32 30 30 39 2e 0a 0a 20 20 20 20 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 74 ince.2009........Additionally,.t
166e0 68 65 20 74 68 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 he.three.implementations.have.be
16700 65 6e 20 65 78 74 65 6e 73 69 76 65 6c 79 20 74 65 73 74 65 64 0a 20 20 20 20 20 77 69 74 68 20 en.extensively.tested......with.
16720 75 6e 7a 63 72 61 73 68 2c 20 76 61 6c 67 72 69 6e 64 2c 20 61 6e 64 20 27 61 6d 65 72 69 63 61 unzcrash,.valgrind,.and.'america
16740 6e 20 66 75 7a 7a 79 20 6c 6f 70 27 20 77 69 74 68 6f 75 74 20 66 69 6e 64 69 6e 67 20 61 0a 20 n.fuzzy.lop'.without.finding.a..
16760 20 20 20 20 73 69 6e 67 6c 65 20 76 75 6c 6e 65 72 61 62 69 6c 69 74 79 20 6f 72 20 66 61 6c 73 ....single.vulnerability.or.fals
16780 65 20 6e 65 67 61 74 69 76 65 2e 20 2a 4e 6f 74 65 20 55 6e 7a 63 72 61 73 68 3a 0a 20 20 20 20 e.negative..*Note.Unzcrash:.....
167a0 20 28 6c 7a 69 70 72 65 63 6f 76 65 72 29 55 6e 7a 63 72 61 73 68 2e 0a 0a 27 44 69 63 74 69 6f .(lziprecover)Unzcrash...'Dictio
167c0 6e 61 72 79 20 73 69 7a 65 27 0a 20 20 20 20 20 4c 7a 69 70 20 61 75 74 6f 6d 61 74 69 63 61 6c nary.size'......Lzip.automatical
167e0 6c 79 20 61 64 61 70 74 73 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 74 6f ly.adapts.the.dictionary.size.to
16800 20 74 68 65 20 73 69 7a 65 20 6f 66 20 65 61 63 68 20 66 69 6c 65 2e 0a 20 20 20 20 20 49 6e 20 .the.size.of.each.file.......In.
16820 61 64 64 69 74 69 6f 6e 20 74 6f 20 72 65 64 75 63 69 6e 67 20 74 68 65 20 61 6d 6f 75 6e 74 20 addition.to.reducing.the.amount.
16840 6f 66 20 6d 65 6d 6f 72 79 20 72 65 71 75 69 72 65 64 20 66 6f 72 0a 20 20 20 20 20 64 65 63 6f of.memory.required.for......deco
16860 6d 70 72 65 73 73 69 6f 6e 2c 20 74 68 69 73 20 66 65 61 74 75 72 65 20 61 6c 73 6f 20 6d 69 6e mpression,.this.feature.also.min
16880 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 69 6e 67 0a imizes.the.probability.of.being.
168a0 20 20 20 20 20 61 66 66 65 63 74 65 64 20 62 79 20 52 41 4d 20 65 72 72 6f 72 73 20 64 75 72 69 .....affected.by.RAM.errors.duri
168c0 6e 67 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0a 0a 27 45 78 69 74 20 73 74 61 74 75 73 27 0a 20 ng.compression...'Exit.status'..
168e0 20 20 20 20 52 65 74 75 72 6e 69 6e 67 20 61 20 77 61 72 6e 69 6e 67 20 73 74 61 74 75 73 20 6f ....Returning.a.warning.status.o
16900 66 20 32 20 69 73 20 61 20 64 65 73 69 67 6e 20 66 6c 61 77 20 6f 66 20 63 6f 6d 70 72 65 73 73 f.2.is.a.design.flaw.of.compress
16920 20 74 68 61 74 0a 20 20 20 20 20 6c 65 61 6b 65 64 20 69 6e 74 6f 20 74 68 65 20 64 65 73 69 67 .that......leaked.into.the.desig
16940 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 20 6c 7a 69 70 20 61 n.of.gzip..Both.bzip2.and.lzip.a
16960 72 65 20 66 72 65 65 20 66 72 6f 6d 20 74 68 69 73 0a 20 20 20 20 20 66 6c 61 77 2e 0a 0a 0a 1f re.free.from.this......flaw.....
16980 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 69 6c 65 20 66 6f .File:.lzip.info,..Node:.File.fo
169a0 72 6d 61 74 2c 20 20 4e 65 78 74 3a 20 41 6c 67 6f 72 69 74 68 6d 2c 20 20 50 72 65 76 3a 20 51 rmat,..Next:.Algorithm,..Prev:.Q
169c0 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 65 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 35 20 46 69 uality.assurance,..Up:.Top..5.Fi
169e0 6c 65 20 66 6f 72 6d 61 74 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 50 65 72 66 65 63 74 le.format.*************..Perfect
16a00 69 6f 6e 20 69 73 20 72 65 61 63 68 65 64 2c 20 6e 6f 74 20 77 68 65 6e 20 74 68 65 72 65 20 69 ion.is.reached,.not.when.there.i
16a20 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 61 6e 79 74 68 69 6e 67 20 74 6f 20 61 64 64 2c 20 62 75 74 s.no.longer.anything.to.add,.but
16a40 0a 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 69 6e .when.there.is.no.longer.anythin
16a60 67 20 74 6f 20 74 61 6b 65 20 61 77 61 79 2e 0a 2d 2d 20 41 6e 74 6f 69 6e 65 20 64 65 20 53 61 g.to.take.away..--.Antoine.de.Sa
16a80 69 6e 74 2d 45 78 75 70 65 72 79 0a 0a 0a 20 20 20 49 6e 20 74 68 65 20 64 69 61 67 72 61 6d 20 int-Exupery......In.the.diagram.
16aa0 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 2b 2d 2d 2d 2b 0a 7c below,.a.box.like.this:..+---+.|
16ac0 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 73 20 6d 69 67 68 74 ...|.<--.the.vertical.bars.might
16ae0 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 72 65 73 65 6e 74 73 .be.missing.+---+.....represents
16b00 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 2b 3d 3d .one.byte;.a.box.like.this:..+==
16b20 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 20 20 20 20 7c 0a 2b ============+.|..............|.+
16b40 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 73 65 6e 74 73 20 61 ==============+.....represents.a
16b60 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 2e 0a 0a 0a 20 20 20 .variable.number.of.bytes.......
16b80 41 20 6c 7a 69 70 20 66 69 6c 65 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 61 20 73 65 72 69 65 73 A.lzip.file.consists.of.a.series
16ba0 20 6f 66 20 22 6d 65 6d 62 65 72 73 22 20 28 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 73 .of."members".(compressed.data.s
16bc0 65 74 73 29 2e 0a 54 68 65 20 6d 65 6d 62 65 72 73 20 73 69 6d 70 6c 79 20 61 70 70 65 61 72 20 ets)..The.members.simply.appear.
16be0 6f 6e 65 20 61 66 74 65 72 20 61 6e 6f 74 68 65 72 20 69 6e 20 74 68 65 20 66 69 6c 65 2c 20 77 one.after.another.in.the.file,.w
16c00 69 74 68 20 6e 6f 20 61 64 64 69 74 69 6f 6e 61 6c 0a 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 62 65 ith.no.additional.information.be
16c20 66 6f 72 65 2c 20 62 65 74 77 65 65 6e 2c 20 6f 72 20 61 66 74 65 72 20 74 68 65 6d 2e 0a 0a 20 fore,.between,.or.after.them....
16c40 20 20 45 61 63 68 20 6d 65 6d 62 65 72 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 ..Each.member.has.the.following.
16c60 73 74 72 75 63 74 75 72 65 3a 0a 0a 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b 2d 2d 2d 2d 2b 2d 2d structure:..+--+--+--+--+----+--
16c80 2d 2d 2b 3d 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 --+=============+-+-+-+-+-+-+-+-
16ca0 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 0a 7c 20 49 44 20 73 +-+-+-+-+-+-+-+-+-+-+-+-+.|.ID.s
16cc0 74 72 69 6e 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 tring.|.VN.|.DS.|.LZMA.stream.|.
16ce0 43 52 43 33 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 CRC32.|...Data.size...|..Member.
16d00 73 69 7a 65 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 size..|.+--+--+--+--+----+----+=
16d20 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 ============+-+-+-+-+-+-+-+-+-+-
16d40 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d 2b 0a 0a 20 20 20 41 6c 6c 20 6d 75 +-+-+-+-+-+-+-+-+-+-+.....All.mu
16d60 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 20 69 6e 20 6c 69 74 ltibyte.values.are.stored.in.lit
16d80 74 6c 65 20 65 6e 64 69 61 6e 20 6f 72 64 65 72 2e 0a 0a 27 49 44 20 73 74 72 69 6e 67 20 28 74 tle.endian.order...'ID.string.(t
16da0 68 65 20 22 6d 61 67 69 63 22 20 62 79 74 65 73 29 27 0a 20 20 20 20 20 41 20 66 6f 75 72 20 62 he."magic".bytes)'......A.four.b
16dc0 79 74 65 20 73 74 72 69 6e 67 2c 20 69 64 65 6e 74 69 66 79 69 6e 67 20 74 68 65 20 6c 7a 69 70 yte.string,.identifying.the.lzip
16de0 20 66 6f 72 6d 61 74 2c 20 77 69 74 68 20 74 68 65 20 76 61 6c 75 65 20 22 4c 5a 49 50 22 0a 20 .format,.with.the.value."LZIP"..
16e00 20 20 20 20 28 30 78 34 43 2c 20 30 78 35 41 2c 20 30 78 34 39 2c 20 30 78 35 30 29 2e 0a 0a 27 ....(0x4C,.0x5A,.0x49,.0x50)...'
16e20 56 4e 20 28 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 2c 20 31 20 62 79 74 65 29 27 0a 20 20 20 VN.(version.number,.1.byte)'....
16e40 20 20 4a 75 73 74 20 69 6e 20 63 61 73 65 20 73 6f 6d 65 74 68 69 6e 67 20 6e 65 65 64 73 20 74 ..Just.in.case.something.needs.t
16e60 6f 20 62 65 20 6d 6f 64 69 66 69 65 64 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 2e 20 31 20 66 o.be.modified.in.the.future..1.f
16e80 6f 72 20 6e 6f 77 2e 0a 0a 27 44 53 20 28 63 6f 64 65 64 20 64 69 63 74 69 6f 6e 61 72 79 20 73 or.now...'DS.(coded.dictionary.s
16ea0 69 7a 65 2c 20 31 20 62 79 74 65 29 27 0a 20 20 20 20 20 54 68 65 20 64 69 63 74 69 6f 6e 61 72 ize,.1.byte)'......The.dictionar
16ec0 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 69 6e 67 20 61 y.size.is.calculated.by.taking.a
16ee0 20 70 6f 77 65 72 20 6f 66 20 32 20 28 74 68 65 20 62 61 73 65 0a 20 20 20 20 20 73 69 7a 65 29 .power.of.2.(the.base......size)
16f00 20 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
16f20 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
16f40 0a 20 20 20 20 20 62 61 73 65 20 73 69 7a 65 2e 0a 20 20 20 20 20 42 69 74 73 20 34 2d 30 20 63 ......base.size.......Bits.4-0.c
16f60 6f 6e 74 61 69 6e 20 74 68 65 20 62 61 73 65 20 32 20 6c 6f 67 61 72 69 74 68 6d 20 6f 66 20 74 ontain.the.base.2.logarithm.of.t
16f80 68 65 20 62 61 73 65 20 73 69 7a 65 20 28 31 32 20 74 6f 20 32 39 29 2e 0a 20 20 20 20 20 42 69 he.base.size.(12.to.29).......Bi
16fa0 74 73 20 37 2d 35 20 63 6f 6e 74 61 69 6e 20 74 68 65 20 6e 75 6d 65 72 61 74 6f 72 20 6f 66 20 ts.7-5.contain.the.numerator.of.
16fc0 74 68 65 20 66 72 61 63 74 69 6f 6e 20 28 30 20 74 6f 20 37 29 20 74 6f 20 73 75 62 74 72 61 63 the.fraction.(0.to.7).to.subtrac
16fe0 74 0a 20 20 20 20 20 66 72 6f 6d 20 74 68 65 20 62 61 73 65 20 73 69 7a 65 20 74 6f 20 6f 62 74 t......from.the.base.size.to.obt
17000 61 69 6e 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 2e 0a 20 20 20 20 20 45 78 ain.the.dictionary.size.......Ex
17020 61 6d 70 6c 65 3a 20 30 78 44 33 20 3d 20 32 5e 31 39 20 2d 20 36 20 2a 20 32 5e 31 35 20 3d 20 ample:.0xD3.=.2^19.-.6.*.2^15.=.
17040 35 31 32 20 4b 69 42 20 2d 20 36 20 2a 20 33 32 20 4b 69 42 20 3d 20 33 32 30 20 4b 69 42 0a 20 512.KiB.-.6.*.32.KiB.=.320.KiB..
17060 20 20 20 20 56 61 6c 69 64 20 76 61 6c 75 65 73 20 66 6f 72 20 64 69 63 74 69 6f 6e 61 72 79 20 ....Valid.values.for.dictionary.
17080 73 69 7a 65 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 size.range.from.4.KiB.to.512.MiB
170a0 2e 0a 0a 27 4c 5a 4d 41 20 73 74 72 65 61 6d 27 0a 20 20 20 20 20 54 68 65 20 4c 5a 4d 41 20 73 ...'LZMA.stream'......The.LZMA.s
170c0 74 72 65 61 6d 2c 20 66 69 6e 69 73 68 65 64 20 62 79 20 61 6e 20 65 6e 64 20 6f 66 20 73 74 72 tream,.finished.by.an.end.of.str
170e0 65 61 6d 20 6d 61 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 eam.marker..Uses.default......va
17100 6c 75 65 73 20 66 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 lues.for.encoder.properties..*No
17120 74 65 20 53 74 72 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 te.Stream.format::,.for.a.comple
17140 74 65 0a 20 20 20 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 te......description...'CRC32.(4.
17160 62 79 74 65 73 29 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 bytes)'......Cyclic.Redundancy.C
17180 68 65 63 6b 20 28 43 52 43 29 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 6f heck.(CRC).of.the.uncompressed.o
171a0 72 69 67 69 6e 61 6c 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 riginal.data...'Data.size.(8.byt
171c0 65 73 29 27 0a 20 20 20 20 20 53 69 7a 65 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 es)'......Size.of.the.uncompress
171e0 65 64 20 6f 72 69 67 69 6e 61 6c 20 64 61 74 61 2e 0a 0a 27 4d 65 6d 62 65 72 20 73 69 7a 65 20 ed.original.data...'Member.size.
17200 28 38 20 62 79 74 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 (8.bytes)'......Total.size.of.th
17220 65 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 e.member,.including.header.and.t
17240 72 61 69 6c 65 72 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 railer..This.field.acts......as.
17260 61 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 64 65 78 2c 20 61 6c 6c 6f 77 73 20 74 68 65 20 a.distributed.index,.allows.the.
17280 76 65 72 69 66 69 63 61 74 69 6f 6e 20 6f 66 20 73 74 72 65 61 6d 20 69 6e 74 65 67 72 69 74 79 verification.of.stream.integrity
172a0 2c 0a 20 20 20 20 20 61 6e 64 20 66 61 63 69 6c 69 74 61 74 65 73 20 73 61 66 65 20 72 65 63 6f ,......and.facilitates.safe.reco
172c0 76 65 72 79 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 very.of.undamaged.members.from.m
172e0 75 6c 74 69 6d 65 6d 62 65 72 0a 20 20 20 20 20 66 69 6c 65 73 2e 0a 0a 0a 1f 0a 46 69 6c 65 3a ultimember......files......File:
17300 20 6c 7a 69 70 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 41 6c 67 6f 72 69 74 68 6d 2c 20 20 4e .lzip.info,..Node:.Algorithm,..N
17320 65 78 74 3a 20 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 2c 20 20 50 72 65 76 3a 20 46 69 6c 65 20 ext:.Stream.format,..Prev:.File.
17340 66 6f 72 6d 61 74 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 36 20 41 6c 67 6f 72 69 74 68 6d 0a 2a 2a format,..Up:.Top..6.Algorithm.**
17360 2a 2a 2a 2a 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 *********..In.spite.of.its.name.
17380 28 4c 65 6d 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 (Lempel-Ziv-Markov.chain-Algorit
173a0 68 6d 29 2c 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 hm),.LZMA.is.not.a.concrete.algo
173c0 72 69 74 68 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 rithm;.it.is.more.like."any.algo
173e0 72 69 74 68 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 rithm.using.the.LZMA.coding.sche
17400 6d 65 22 2e 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 me"..LZMA.compression.consists.i
17420 6e 20 64 65 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 n.describing.the.uncompressed.da
17440 74 61 20 61 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 ta.as.a.succession.of.coding.seq
17460 75 65 6e 63 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 uences.from.the.set.shown.in.Sec
17480 74 69 6f 6e 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 tion.'What.is.coded'.(*note.what
174a0 2d 69 73 2d 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 -is-coded::),.and.then.encoding.
174c0 74 68 65 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 them.using.a.range.encoder..For.
174e0 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
17500 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
17520 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
17540 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.
17560 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.
17580 61 20 6d 61 74 63 68 2e 20 49 6e 76 65 72 73 65 6c 79 2c 20 61 20 6d 75 63 68 20 6d 6f 72 65 20 a.match..Inversely,.a.much.more.
175a0 65 6c 61 62 6f 72 61 74 65 64 20 77 61 79 20 6f 66 0a 66 69 6e 64 69 6e 67 20 63 6f 64 69 6e 67 elaborated.way.of.finding.coding
175c0 20 73 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 .sequences.of.minimum.size.than.
175e0 74 68 65 20 6f 6e 65 20 63 75 72 72 65 6e 74 6c 79 20 75 73 65 64 20 62 79 0a 6c 7a 69 70 20 63 the.one.currently.used.by.lzip.c
17600 6f 75 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 ould.be.developed,.and.the.resul
17620 74 69 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 ting.sequence.could.also.be.code
17640 64 0a 75 73 69 6e 67 20 74 68 65 20 4c 5a 4d 41 20 63 6f 64 69 6e 67 20 73 63 68 65 6d 65 2e 0a d.using.the.LZMA.coding.scheme..
17660 0a 20 20 20 4c 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 ....Lzip.currently.implements.tw
17680 6f 20 76 61 72 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 o.variants.of.the.LZMA.algorithm
176a0 3b 20 66 61 73 74 20 28 75 73 65 64 0a 62 79 20 6f 70 74 69 6f 6e 20 27 2d 30 27 29 20 61 6e 64 ;.fast.(used.by.option.'-0').and
176c0 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 70 72 .normal.(used.by.all.other.compr
176e0 65 73 73 69 6f 6e 20 6c 65 76 65 6c 73 29 2e 0a 0a 20 20 20 54 68 65 20 68 69 67 68 20 63 6f 6d ession.levels)......The.high.com
17700 70 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 pression.of.LZMA.comes.from.comb
17720 69 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 ining.two.basic,.well-proven.com
17740 70 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 pression.ideas:.sliding.dictiona
17760 72 69 65 73 20 28 4c 5a 37 37 2f 37 38 29 20 61 6e 64 20 6d 61 72 6b 6f 76 20 6d 6f 64 65 6c 73 ries.(LZ77/78).and.markov.models
17780 20 28 74 68 65 0a 74 68 69 6e 67 20 75 73 65 64 20 62 79 20 65 76 65 72 79 20 63 6f 6d 70 72 65 .(the.thing.used.by.every.compre
177a0 73 73 69 6f 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 ssion.algorithm.that.uses.a.rang
177c0 65 20 65 6e 63 6f 64 65 72 20 6f 72 0a 73 69 6d 69 6c 61 72 20 6f 72 64 65 72 2d 30 20 65 6e 74 e.encoder.or.similar.order-0.ent
177e0 72 6f 70 79 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 ropy.coder.as.its.last.stage).wi
17800 74 68 20 73 65 67 72 65 67 61 74 69 6f 6e 20 6f 66 0a 63 6f 6e 74 65 78 74 73 20 61 63 63 6f 72 th.segregation.of.contexts.accor
17820 64 69 6e 67 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 ding.to.what.the.bits.are.used.f
17840 6f 72 2e 0a 0a 20 20 20 4c 7a 69 70 20 69 73 20 61 20 74 77 6f 20 73 74 61 67 65 20 63 6f 6d 70 or......Lzip.is.a.two.stage.comp
17860 72 65 73 73 6f 72 2e 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 ressor..The.first.stage.is.a.Lem
17880 70 65 6c 2d 5a 69 76 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 pel-Ziv.coder,.which.reduces.red
178a0 75 6e 64 61 6e 63 79 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 undancy.by.translating.chunks.of
178c0 20 64 61 74 61 20 74 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 .data.to.their.corresponding.dis
178e0 74 61 6e 63 65 2d 6c 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 tance-length.pairs..The.second.s
17900 74 61 67 65 20 69 73 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 tage.is.a.range.encoder.that.use
17920 73 20 61 20 64 69 66 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 s.a.different.probability.model.
17940 66 6f 72 20 65 61 63 68 20 74 79 70 65 20 6f 66 20 64 61 74 61 3b 20 64 69 73 74 61 6e 63 65 73 for.each.type.of.data;.distances
17960 2c 0a 6c 65 6e 67 74 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 ,.lengths,.literal.bytes,.etc...
17980 20 20 20 48 65 72 65 20 69 73 20 68 6f 77 20 69 74 20 77 6f 72 6b 73 2c 20 73 74 65 70 20 62 79 ...Here.is.how.it.works,.step.by
179a0 20 73 74 65 70 3a 0a 0a 20 20 20 31 29 20 54 68 65 20 6d 65 6d 62 65 72 20 68 65 61 64 65 72 20 .step:.....1).The.member.header.
179c0 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 72 65 61 6d 2e is.written.to.the.output.stream.
179e0 0a 0a 20 20 20 32 29 20 54 68 65 20 66 69 72 73 74 20 62 79 74 65 20 69 73 20 63 6f 64 65 64 20 .....2).The.first.byte.is.coded.
17a00 6c 69 74 65 72 61 6c 6c 79 2c 20 62 65 63 61 75 73 65 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 literally,.because.there.are.no.
17a20 70 72 65 76 69 6f 75 73 0a 62 79 74 65 73 20 74 6f 20 77 68 69 63 68 20 74 68 65 20 6d 61 74 63 previous.bytes.to.which.the.matc
17a40 68 20 66 69 6e 64 65 72 20 63 61 6e 20 72 65 66 65 72 20 74 6f 2e 0a 0a 20 20 20 33 29 20 54 68 h.finder.can.refer.to......3).Th
17a60 65 20 6d 61 69 6e 20 65 6e 63 6f 64 65 72 20 61 64 76 61 6e 63 65 73 20 74 6f 20 74 68 65 20 6e e.main.encoder.advances.to.the.n
17a80 65 78 74 20 62 79 74 65 20 69 6e 20 74 68 65 20 69 6e 70 75 74 20 64 61 74 61 20 61 6e 64 0a 63 ext.byte.in.the.input.data.and.c
17aa0 61 6c 6c 73 20 74 68 65 20 6d 61 74 63 68 20 66 69 6e 64 65 72 2e 0a 0a 20 20 20 34 29 20 54 68 alls.the.match.finder......4).Th
17ac0 65 20 6d 61 74 63 68 20 66 69 6e 64 65 72 20 66 69 6c 6c 73 20 61 6e 20 61 72 72 61 79 20 77 69 e.match.finder.fills.an.array.wi
17ae0 74 68 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 64 69 73 74 61 6e 63 65 73 20 62 65 66 6f 72 65 20 th.the.minimum.distances.before.
17b00 74 68 65 0a 63 75 72 72 65 6e 74 20 62 79 74 65 20 77 68 65 72 65 20 61 20 6d 61 74 63 68 20 6f the.current.byte.where.a.match.o
17b20 66 20 61 20 67 69 76 65 6e 20 6c 65 6e 67 74 68 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 2e 0a 0a f.a.given.length.can.be.found...
17b40 20 20 20 35 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 20 61 20 ...5).Go.back.to.step.3.until.a.
17b60 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 2c 20 72 65 70 65 61 sequence.(formed.of.pairs,.repea
17b80 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 6c 20 62 79 74 65 73 ted.distances,.and.literal.bytes
17ba0 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 65 6e 20 66 6f 72 6d ).of.minimum.price.has.been.form
17bc0 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 73 65 6e 74 73 20 74 ed..Where.the.price.represents.t
17be0 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 70 72 6f 64 75 63 65 he.number.of.output.bits.produce
17c00 64 2e 0a 0a 20 20 20 36 29 20 54 68 65 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 20 65 6e 63 6f d......6).The.range.encoder.enco
17c20 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 20 74 68 65 des.the.sequence.produced.by.the
17c40 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 70 72 6f 64 .main.encoder.and.sends.the.prod
17c60 75 63 65 64 20 62 79 74 65 73 20 74 6f 20 74 68 65 20 6f 75 74 70 75 74 20 73 74 72 65 61 6d 2e uced.bytes.to.the.output.stream.
17c80 0a 0a 20 20 20 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 20 .....7).Go.back.to.step.3.until.
17ca0 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 75 the.input.data.are.finished.or.u
17cc0 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 6c ntil.the.member.or.volume.size.l
17ce0 69 6d 69 74 73 20 61 72 65 20 72 65 61 63 68 65 64 2e 0a 0a 20 20 20 38 29 20 54 68 65 20 72 61 imits.are.reached......8).The.ra
17d00 6e 67 65 20 65 6e 63 6f 64 65 72 20 69 73 20 66 6c 75 73 68 65 64 2e 0a 0a 20 20 20 39 29 20 54 nge.encoder.is.flushed......9).T
17d20 68 65 20 6d 65 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 he.member.trailer.is.written.to.
17d40 74 68 65 20 6f 75 74 70 75 74 20 73 74 72 65 61 6d 2e 0a 0a 20 20 20 31 30 29 20 49 66 20 74 68 the.output.stream......10).If.th
17d60 65 72 65 20 61 72 65 20 6d 6f 72 65 20 64 61 74 61 20 74 6f 20 63 6f 6d 70 72 65 73 73 2c 20 67 ere.are.more.data.to.compress,.g
17d80 6f 20 62 61 63 6b 20 74 6f 20 73 74 65 70 20 31 2e 0a 0a 0a 20 20 20 44 75 72 69 6e 67 20 63 6f o.back.to.step.1.......During.co
17da0 6d 70 72 65 73 73 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 mpression,.lzip.reads.data.in.la
17dc0 72 67 65 20 62 6c 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 0a rge.blocks.(one.dictionary.size.
17de0 61 74 20 61 20 74 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 at.a.time)..Therefore.it.may.blo
17e00 63 6b 20 66 6f 72 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 ck.for.up.to.tens.of.seconds.any
17e20 20 70 72 6f 63 65 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 .process.feeding.data.to.it.thro
17e40 75 67 68 20 61 20 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 ugh.a.pipe..This.is.normal..The.
17e60 62 6c 6f 63 6b 69 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 blocking.intervals.get.longer.wi
17e80 74 68 20 68 69 67 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 th.higher.compression.levels.bec
17ea0 61 75 73 65 20 64 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 ause.dictionary.size.increases.(
17ec0 61 6e 64 20 63 6f 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 and.compression.speed.decreases)
17ee0 20 77 69 74 68 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 2e 0a 0a 54 68 65 20 69 64 .with.compression.level...The.id
17f00 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 20 74 6f 20 eas.embodied.in.lzip.are.due.to.
17f20 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 70 6c 65 3a (at.least).the.following.people:
17f40 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 76 20 28 66 .Abraham.Lempel.and.Jacob.Ziv.(f
17f60 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 79 20 4d 61 72 or.the.LZ.algorithm),.Andrey.Mar
17f80 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 61 72 6b 6f kov.(for.the.definition.of.Marko
17fa0 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 72 20 74 68 v.chains),.G.N.N..Martin.(for.th
17fc0 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 6e 67 29 2c e.definition.of.range.encoding),
17fe0 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 6c 20 74 68 .Igor.Pavlov.(for.putting.all.th
18000 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 6e 64 0a 4a e.above.together.in.LZMA),.and.J
18020 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 49 29 2e 0a ulian.Seward.(for.bzip2's.CLI)..
18040 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 53 74 72 65 61 ...File:.lzip.info,..Node:.Strea
18060 6d 20 66 6f 72 6d 61 74 2c 20 20 4e 65 78 74 3a 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 2c 20 m.format,..Next:.Trailing.data,.
18080 20 50 72 65 76 3a 20 41 6c 67 6f 72 69 74 68 6d 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 37 20 46 6f .Prev:.Algorithm,..Up:.Top..7.Fo
180a0 72 6d 61 74 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 6e 20 6c 7a 69 70 20 rmat.of.the.LZMA.stream.in.lzip.
180c0 66 69 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 2a files.**************************
180e0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 4c 7a 69 70 20 75 73 65 73 20 61 20 73 69 6d ***************..Lzip.uses.a.sim
18100 70 6c 69 66 69 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 20 plified.form.of.the.LZMA.stream.
18120 66 6f 72 6d 61 74 20 63 68 6f 73 65 6e 20 74 6f 20 6d 61 78 69 6d 69 7a 65 0a 73 61 66 65 74 79 format.chosen.to.maximize.safety
18140 20 61 6e 64 20 69 6e 74 65 72 6f 70 65 72 61 62 69 6c 69 74 79 2e 0a 0a 20 20 20 54 68 65 20 4c .and.interoperability......The.L
18160 5a 4d 41 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 ZMA.algorithm.has.three.paramete
18180 72 73 2c 20 63 61 6c 6c 65 64 20 22 73 70 65 63 69 61 6c 20 4c 5a 4d 41 0a 70 72 6f 70 65 72 74 rs,.called."special.LZMA.propert
181a0 69 65 73 22 2c 20 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 ies",.to.adjust.it.for.some.kind
181c0 73 20 6f 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 s.of.binary.data..These.paramete
181e0 72 73 0a 61 72 65 3b 20 27 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 74 73 27 20 28 rs.are;.'literal_context_bits'.(
18200 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 27 6c 69 74 with.a.default.value.of.3),.'lit
18220 65 72 61 6c 5f 70 6f 73 5f 73 74 61 74 65 5f 62 69 74 73 27 20 28 77 69 74 68 20 61 20 64 65 66 eral_pos_state_bits'.(with.a.def
18240 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 30 29 2c 20 61 6e 64 20 27 70 6f 73 5f 73 74 61 74 65 ault.value.of.0),.and.'pos_state
18260 5f 62 69 74 73 27 0a 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 _bits'.(with.a.default.value.of.
18280 32 29 2e 20 41 73 20 61 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 63 6f 6d 70 72 65 73 2)..As.a.general.purpose.compres
182a0 73 6f 72 2c 20 6c 7a 69 70 20 6f 6e 6c 79 0a 75 73 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 sor,.lzip.only.uses.the.default.
182c0 76 61 6c 75 65 73 20 66 6f 72 20 74 68 65 73 65 20 70 61 72 61 6d 65 74 65 72 73 2e 20 49 6e 20 values.for.these.parameters..In.
182e0 70 61 72 74 69 63 75 6c 61 72 0a 27 6c 69 74 65 72 61 6c 5f 70 6f 73 5f 73 74 61 74 65 5f 62 69 particular.'literal_pos_state_bi
18300 74 73 27 20 68 61 73 20 62 65 65 6e 20 6f 70 74 69 6d 69 7a 65 64 20 61 77 61 79 20 61 6e 64 20 ts'.has.been.optimized.away.and.
18320 64 6f 65 73 20 6e 6f 74 20 65 76 65 6e 20 61 70 70 65 61 72 0a 69 6e 20 74 68 65 20 63 6f 64 65 does.not.even.appear.in.the.code
18340 2e 0a 0a 20 20 20 4c 7a 69 70 20 66 69 6e 69 73 68 65 73 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 ......Lzip.finishes.the.LZMA.str
18360 65 61 6d 20 77 69 74 68 20 61 6e 20 22 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 22 20 28 45 4f 53 eam.with.an."End.Of.Stream".(EOS
18380 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 70 61 ).marker.(the.distance-length.pa
183a0 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 6f 6e ir.0xFFFFFFFFU,.2),.which.in.con
183c0 6a 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 22 6d 65 6d 62 65 72 0a 73 69 7a 65 22 20 junction.with.the."member.size".
183e0 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 6c 6f field.in.the.member.trailer.allo
18400 77 73 20 74 68 65 20 76 65 72 69 66 69 63 61 74 69 6f 6e 20 6f 66 20 73 74 72 65 61 6d 0a 69 6e ws.the.verification.of.stream.in
18420 74 65 67 72 69 74 79 2e 20 54 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 6e 20 6c 7a 69 70 tegrity..The.LZMA.stream.in.lzip
18440 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 6f 20 66 65 61 74 .files.always.has.these.two.feat
18460 75 72 65 73 0a 28 64 65 66 61 75 6c 74 20 70 72 6f 70 65 72 74 69 65 73 20 61 6e 64 20 45 4f 53 ures.(default.properties.and.EOS
18480 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 6f 20 69 6e 20 74 .marker).and.is.referred.to.in.t
184a0 68 69 73 20 64 6f 63 75 6d 65 6e 74 20 61 73 0a 4c 5a 4d 41 2d 33 30 32 65 6f 73 2e 20 54 68 65 his.document.as.LZMA-302eos..The
184c0 20 45 4f 53 20 6d 61 72 6b 65 72 20 69 73 20 74 68 65 20 6f 6e 6c 79 20 6d 61 72 6b 65 72 20 61 .EOS.marker.is.the.only.marker.a
184e0 6c 6c 6f 77 65 64 20 69 6e 20 6c 7a 69 70 20 66 69 6c 65 73 2e 0a 0a 20 20 20 54 68 65 20 73 65 llowed.in.lzip.files......The.se
18500 63 6f 6e 64 20 73 74 61 67 65 20 6f 66 20 4c 5a 4d 41 20 69 73 20 61 20 72 61 6e 67 65 20 65 6e cond.stage.of.LZMA.is.a.range.en
18520 63 6f 64 65 72 20 74 68 61 74 20 75 73 65 73 20 61 20 64 69 66 66 65 72 65 6e 74 0a 70 72 6f 62 coder.that.uses.a.different.prob
18540 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 20 6f 66 20 73 ability.model.for.each.type.of.s
18560 79 6d 62 6f 6c 3b 20 64 69 73 74 61 6e 63 65 73 2c 20 6c 65 6e 67 74 68 73 2c 20 6c 69 74 65 72 ymbol;.distances,.lengths,.liter
18580 61 6c 0a 62 79 74 65 73 2c 20 65 74 63 2e 20 52 61 6e 67 65 20 65 6e 63 6f 64 69 6e 67 20 63 6f al.bytes,.etc..Range.encoding.co
185a0 6e 63 65 70 74 75 61 6c 6c 79 20 65 6e 63 6f 64 65 73 20 61 6c 6c 20 74 68 65 20 73 79 6d 62 6f nceptually.encodes.all.the.symbo
185c0 6c 73 20 6f 66 20 74 68 65 0a 6d 65 73 73 61 67 65 20 69 6e 74 6f 20 6f 6e 65 20 6e 75 6d 62 65 ls.of.the.message.into.one.numbe
185e0 72 2e 20 55 6e 6c 69 6b 65 20 48 75 66 66 6d 61 6e 20 63 6f 64 69 6e 67 2c 20 77 68 69 63 68 20 r..Unlike.Huffman.coding,.which.
18600 61 73 73 69 67 6e 73 20 74 6f 20 65 61 63 68 0a 73 79 6d 62 6f 6c 20 61 20 62 69 74 2d 70 61 74 assigns.to.each.symbol.a.bit-pat
18620 74 65 72 6e 20 61 6e 64 20 63 6f 6e 63 61 74 65 6e 61 74 65 73 20 61 6c 6c 20 74 68 65 20 62 69 tern.and.concatenates.all.the.bi
18640 74 2d 70 61 74 74 65 72 6e 73 20 74 6f 67 65 74 68 65 72 2c 20 72 61 6e 67 65 0a 65 6e 63 6f 64 t-patterns.together,.range.encod
18660 69 6e 67 20 63 61 6e 20 63 6f 6d 70 72 65 73 73 20 6f 6e 65 20 73 79 6d 62 6f 6c 20 74 6f 20 6c ing.can.compress.one.symbol.to.l
18680 65 73 73 20 74 68 61 6e 20 6f 6e 65 20 62 69 74 2e 20 54 68 65 72 65 66 6f 72 65 20 74 68 65 0a ess.than.one.bit..Therefore.the.
186a0 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 70 72 6f 64 75 63 65 64 20 62 79 20 61 20 72 61 compressed.data.produced.by.a.ra
186c0 6e 67 65 20 65 6e 63 6f 64 65 72 20 63 61 6e 27 74 20 62 65 20 73 70 6c 69 74 20 69 6e 20 70 69 nge.encoder.can't.be.split.in.pi
186e0 65 63 65 73 20 74 68 61 74 0a 63 6f 75 6c 64 20 62 65 20 64 65 73 63 72 69 62 65 64 20 69 6e 64 eces.that.could.be.described.ind
18700 69 76 69 64 75 61 6c 6c 79 2e 0a 0a 20 20 20 49 74 20 73 65 65 6d 73 20 74 68 61 74 20 74 68 65 ividually......It.seems.that.the
18720 20 6f 6e 6c 79 20 77 61 79 20 6f 66 20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 20 4c 5a 4d 41 .only.way.of.describing.the.LZMA
18740 2d 33 30 32 65 6f 73 20 73 74 72 65 61 6d 20 69 73 0a 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 -302eos.stream.is.describing.the
18760 20 61 6c 67 6f 72 69 74 68 6d 20 74 68 61 74 20 64 65 63 6f 64 65 73 20 69 74 2e 20 41 6e 64 20 .algorithm.that.decodes.it..And.
18780 67 69 76 65 6e 20 74 68 65 20 6d 61 6e 79 20 64 65 74 61 69 6c 73 20 61 62 6f 75 74 0a 74 68 65 given.the.many.details.about.the
187a0 20 72 61 6e 67 65 20 64 65 63 6f 64 65 72 20 74 68 61 74 20 6e 65 65 64 20 74 6f 20 62 65 20 64 .range.decoder.that.need.to.be.d
187c0 65 73 63 72 69 62 65 64 20 61 63 63 75 72 61 74 65 6c 79 2c 20 74 68 65 20 73 6f 75 72 63 65 20 escribed.accurately,.the.source.
187e0 63 6f 64 65 20 6f 66 0a 61 20 72 65 61 6c 20 64 65 63 6f 64 65 72 20 73 65 65 6d 73 20 74 68 65 code.of.a.real.decoder.seems.the
18800 20 6f 6e 6c 79 20 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 .only.appropriate.reference.to.u
18820 73 65 2e 0a 0a 20 20 20 57 68 61 74 20 66 6f 6c 6c 6f 77 73 20 69 73 20 61 20 64 65 73 63 72 69 se......What.follows.is.a.descri
18840 70 74 69 6f 6e 20 6f 66 20 74 68 65 20 64 65 63 6f 64 69 6e 67 20 61 6c 67 6f 72 69 74 68 6d 20 ption.of.the.decoding.algorithm.
18860 66 6f 72 20 4c 5a 4d 41 2d 33 30 32 65 6f 73 0a 73 74 72 65 61 6d 73 20 75 73 69 6e 67 20 61 73 for.LZMA-302eos.streams.using.as
18880 20 72 65 66 65 72 65 6e 63 65 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 66 20 22 6c .reference.the.source.code.of."l
188a0 7a 64 22 2c 20 61 6e 20 65 64 75 63 61 74 69 6f 6e 61 6c 0a 64 65 63 6f 6d 70 72 65 73 73 6f 72 zd",.an.educational.decompressor
188c0 20 66 6f 72 20 6c 7a 69 70 20 66 69 6c 65 73 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 64 6f 77 .for.lzip.files.which.can.be.dow
188e0 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 0a 64 nloaded.from.the.lzip.download.d
18900 69 72 65 63 74 6f 72 79 2e 20 54 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 66 20 6c 7a 64 irectory..The.source.code.of.lzd
18920 20 69 73 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 74 .is.included.in.appendix.A..*Not
18940 65 0a 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 3a 3a 2e 0a 0a 0a 37 2e 31 e.Reference.source.code::....7.1
18960 20 57 68 61 74 20 69 73 20 63 6f 64 65 64 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .What.is.coded.=================
18980 0a 0a 54 68 65 20 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 ..The.LZMA.stream.includes.liter
189a0 61 6c 73 2c 20 6d 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 als,.matches,.and.repeated.match
189c0 65 73 20 28 6d 61 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 es.(matches.reusing.a.recently.u
189e0 73 65 64 20 64 69 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 sed.distance)..There.are.7.diffe
18a00 72 65 6e 74 20 63 6f 64 69 6e 67 20 73 65 71 75 65 6e 63 65 73 3a 0a 0a 42 69 74 20 73 65 71 75 rent.coding.sequences:..Bit.sequ
18a20 65 6e 63 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 61 6d 65 20 20 20 20 20 20 20 20 ence................Name........
18a40 44 65 73 63 72 69 70 74 69 6f 6e 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d Description.--------------------
18a60 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 --------------------------------
18a80 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 2b 20 62 79 -------------------------.0.+.by
18aa0 74 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 69 74 65 72 61 6c 20 20 20 te....................literal...
18ac0 20 20 6c 69 74 65 72 61 6c 20 62 79 74 65 0a 31 20 2b 20 30 20 2b 20 6c 65 6e 20 2b 20 64 69 73 ..literal.byte.1.+.0.+.len.+.dis
18ae0 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 63 68 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 2d ...........match.......distance-
18b00 6c 65 6e 67 74 68 20 70 61 69 72 0a 31 20 2b 20 31 20 2b 20 30 20 2b 20 30 20 20 20 20 20 20 20 length.pair.1.+.1.+.0.+.0.......
18b20 20 20 20 20 20 20 20 20 73 68 6f 72 74 72 65 70 20 20 20 20 31 20 62 79 74 65 20 6d 61 74 63 68 ........shortrep....1.byte.match
18b40 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 31 20 2b .at.latest.used.distance.1.+.1.+
18b60 20 30 20 2b 20 31 20 2b 20 6c 65 6e 20 20 20 20 20 20 20 20 20 72 65 70 30 20 20 20 20 20 20 20 .0.+.1.+.len.........rep0.......
18b80 20 6c 65 6e 20 62 79 74 65 73 20 6d 61 74 63 68 20 61 74 20 6c 61 74 65 73 74 20 75 73 65 64 20 .len.bytes.match.at.latest.used.
18ba0 64 69 73 74 61 6e 63 65 0a 31 20 2b 20 31 20 2b 20 31 20 2b 20 30 20 2b 20 6c 65 6e 20 20 20 20 distance.1.+.1.+.1.+.0.+.len....
18bc0 20 20 20 20 20 72 65 70 31 20 20 20 20 20 20 20 20 6c 65 6e 20 62 79 74 65 73 20 6d 61 74 63 68 .....rep1........len.bytes.match
18be0 20 61 74 20 73 65 63 6f 6e 64 20 6c 61 74 65 73 74 20 75 73 65 64 0a 20 20 20 20 20 20 20 20 20 .at.second.latest.used..........
18c00 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 64 ...............................d
18c20 69 73 74 61 6e 63 65 0a 31 20 2b 20 31 20 2b 20 31 20 2b 20 31 20 2b 20 30 20 2b 20 6c 65 6e 20 istance.1.+.1.+.1.+.1.+.0.+.len.
18c40 20 20 20 20 72 65 70 32 20 20 20 20 20 20 20 20 6c 65 6e 20 62 79 74 65 73 20 6d 61 74 63 68 20 ....rep2........len.bytes.match.
18c60 61 74 20 74 68 69 72 64 20 6c 61 74 65 73 74 20 75 73 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 at.third.latest.used............
18c80 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 73 .............................dis
18ca0 74 61 6e 63 65 0a 31 20 2b 20 31 20 2b 20 31 20 2b 20 31 20 2b 20 31 20 2b 20 6c 65 6e 20 20 20 tance.1.+.1.+.1.+.1.+.1.+.len...
18cc0 20 20 72 65 70 33 20 20 20 20 20 20 20 20 6c 65 6e 20 62 79 74 65 73 20 6d 61 74 63 68 20 61 74 ..rep3........len.bytes.match.at
18ce0 20 66 6f 75 72 74 68 20 6c 61 74 65 73 74 20 75 73 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 .fourth.latest.used.............
18d00 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 73 74 ............................dist
18d20 61 6e 63 65 0a 0a 0a 20 20 20 49 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 ance......In.the.following.table
18d40 73 2c 20 6d 75 6c 74 69 62 69 74 20 73 65 71 75 65 6e 63 65 73 20 61 72 65 20 63 6f 64 65 64 20 s,.multibit.sequences.are.coded.
18d60 69 6e 20 6e 6f 72 6d 61 6c 20 6f 72 64 65 72 2c 0a 66 72 6f 6d 20 6d 6f 73 74 20 73 69 67 6e 69 in.normal.order,.from.most.signi
18d80 66 69 63 61 6e 74 20 62 69 74 20 28 4d 53 42 29 20 74 6f 20 6c 65 61 73 74 20 73 69 67 6e 69 66 ficant.bit.(MSB).to.least.signif
18da0 69 63 61 6e 74 20 62 69 74 20 28 4c 53 42 29 2c 20 65 78 63 65 70 74 0a 77 68 65 72 65 20 6e 6f icant.bit.(LSB),.except.where.no
18dc0 74 65 64 20 6f 74 68 65 72 77 69 73 65 2e 0a 0a 20 20 20 4c 65 6e 67 74 68 73 20 28 74 68 65 20 ted.otherwise......Lengths.(the.
18de0 27 6c 65 6e 27 20 69 6e 20 74 68 65 20 74 61 62 6c 65 20 61 62 6f 76 65 29 20 61 72 65 20 63 6f 'len'.in.the.table.above).are.co
18e00 64 65 64 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 0a 42 69 74 20 73 65 71 75 65 6e 63 65 20 20 20 ded.as.follows:..Bit.sequence...
18e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 73 63 72 69 70 74 ........................Descript
18e40 69 6f 6e 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 ion.----------------------------
18e60 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 --------------------------------
18e80 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 30 20 2b 20 33 20 62 69 74 73 20 20 20 20 20 ----------------.0.+.3.bits.....
18ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 6e 67 74 68 73 20 ........................lengths.
18ec0 66 72 6f 6d 20 32 20 74 6f 20 39 0a 31 20 2b 20 30 20 2b 20 33 20 62 69 74 73 20 20 20 20 20 20 from.2.to.9.1.+.0.+.3.bits......
18ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 6e 67 74 68 73 20 66 72 6f 6d 20 ...................lengths.from.
18f00 31 30 20 74 6f 20 31 37 0a 31 20 2b 20 31 20 2b 20 38 20 62 69 74 73 20 20 20 20 20 20 20 20 20 10.to.17.1.+.1.+.8.bits.........
18f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 6e 67 74 68 73 20 66 72 6f 6d 20 31 38 20 ................lengths.from.18.
18f40 74 6f 20 32 37 33 0a 0a 0a 20 20 20 54 68 65 20 63 6f 64 69 6e 67 20 6f 66 20 64 69 73 74 61 6e to.273......The.coding.of.distan
18f60 63 65 73 20 69 73 20 61 20 6c 69 74 74 6c 65 20 6d 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 ces.is.a.little.more.complicated
18f80 2c 20 73 6f 20 49 27 6c 6c 20 62 65 67 69 6e 0a 65 78 70 6c 61 69 6e 69 6e 67 20 61 20 73 69 6d ,.so.I'll.begin.explaining.a.sim
18fa0 70 6c 65 72 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 65 6e 63 6f 64 69 6e 67 2e 0a 0a 20 pler.version.of.the.encoding....
18fc0 20 20 49 6d 61 67 69 6e 65 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 65 6e 63 6f 64 65 20 61 20 6e ..Imagine.you.need.to.encode.a.n
18fe0 75 6d 62 65 72 20 66 72 6f 6d 20 30 20 74 6f 20 32 5e 33 32 20 2d 20 31 2c 20 61 6e 64 20 79 6f umber.from.0.to.2^32.-.1,.and.yo
19000 75 20 77 61 6e 74 20 74 6f 0a 64 6f 20 69 74 20 69 6e 20 61 20 77 61 79 20 74 68 61 74 20 70 72 u.want.to.do.it.in.a.way.that.pr
19020 6f 64 75 63 65 73 20 73 68 6f 72 74 65 72 20 63 6f 64 65 73 20 66 6f 72 20 74 68 65 20 73 6d 61 oduces.shorter.codes.for.the.sma
19040 6c 6c 65 72 20 6e 75 6d 62 65 72 73 2e 20 59 6f 75 20 6d 61 79 0a 66 69 72 73 74 20 65 6e 63 6f ller.numbers..You.may.first.enco
19060 64 65 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 67 6e de.the.position.of.the.most.sign
19080 69 66 69 63 61 6e 74 20 62 69 74 20 74 68 61 74 20 69 73 20 73 65 74 20 74 6f 20 31 2c 0a 77 68 ificant.bit.that.is.set.to.1,.wh
190a0 69 63 68 20 79 6f 75 20 6d 61 79 20 66 69 6e 64 20 62 79 20 6d 61 6b 69 6e 67 20 61 20 62 69 74 ich.you.may.find.by.making.a.bit
190c0 20 73 63 61 6e 20 66 72 6f 6d 20 74 68 65 20 6c 65 66 74 20 28 66 72 6f 6d 20 74 68 65 20 4d 53 .scan.from.the.left.(from.the.MS
190e0 42 29 2e 20 41 0a 70 6f 73 69 74 69 6f 6e 20 6f 66 20 30 20 6d 65 61 6e 73 20 74 68 61 74 20 74 B)..A.position.of.0.means.that.t
19100 68 65 20 6e 75 6d 62 65 72 20 69 73 20 30 20 28 6e 6f 20 62 69 74 20 69 73 20 73 65 74 29 2c 20 he.number.is.0.(no.bit.is.set),.
19120 31 20 6d 65 61 6e 73 20 74 68 65 20 4c 53 42 20 69 73 0a 74 68 65 20 66 69 72 73 74 20 62 69 74 1.means.the.LSB.is.the.first.bit
19140 20 73 65 74 20 28 74 68 65 20 6e 75 6d 62 65 72 20 69 73 20 31 29 2c 20 61 6e 64 20 33 32 20 6d .set.(the.number.is.1),.and.32.m
19160 65 61 6e 73 20 74 68 65 20 4d 53 42 20 69 73 20 73 65 74 20 28 69 2e 65 2e 2c 20 74 68 65 0a 6e eans.the.MSB.is.set.(i.e.,.the.n
19180 75 6d 62 65 72 20 69 73 20 3e 3d 20 30 78 38 30 30 30 30 30 30 30 29 2e 20 54 68 65 6e 2c 20 69 umber.is.>=.0x80000000)..Then,.i
191a0 66 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 20 69 73 20 3e 3d 20 32 2c 20 79 6f 75 20 65 6e 63 6f f.the.position.is.>=.2,.you.enco
191c0 64 65 20 74 68 65 0a 72 65 6d 61 69 6e 69 6e 67 20 70 6f 73 69 74 69 6f 6e 20 2d 20 31 20 62 69 de.the.remaining.position.-.1.bi
191e0 74 73 2e 20 4c 65 74 27 73 20 63 61 6c 6c 20 74 68 65 73 65 20 62 69 74 73 20 22 64 69 72 65 63 ts..Let's.call.these.bits."direc
19200 74 5f 62 69 74 73 22 20 62 65 63 61 75 73 65 0a 74 68 65 79 20 61 72 65 20 63 6f 64 65 64 20 64 t_bits".because.they.are.coded.d
19220 69 72 65 63 74 6c 79 20 62 79 20 76 61 6c 75 65 20 69 6e 73 74 65 61 64 20 6f 66 20 69 6e 64 69 irectly.by.value.instead.of.indi
19240 72 65 63 74 6c 79 20 62 79 20 70 6f 73 69 74 69 6f 6e 2e 0a 0a 20 20 20 54 68 65 20 69 6e 63 6f rectly.by.position......The.inco
19260 6e 76 65 6e 69 65 6e 74 20 6f 66 20 74 68 69 73 20 73 69 6d 70 6c 65 20 6d 65 74 68 6f 64 20 69 nvenient.of.this.simple.method.i
19280 73 20 74 68 61 74 20 69 74 20 6e 65 65 64 73 20 36 20 62 69 74 73 20 74 6f 20 65 6e 63 6f 64 65 s.that.it.needs.6.bits.to.encode
192a0 0a 74 68 65 20 70 6f 73 69 74 69 6f 6e 2c 20 62 75 74 20 69 74 20 6a 75 73 74 20 75 73 65 73 20 .the.position,.but.it.just.uses.
192c0 33 33 20 6f 66 20 74 68 65 20 36 34 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 2c 20 77 61 33.of.the.64.possible.values,.wa
192e0 73 74 69 6e 67 20 61 6c 6d 6f 73 74 0a 68 61 6c 66 20 6f 66 20 74 68 65 20 63 6f 64 65 73 2e 0a sting.almost.half.of.the.codes..
19300 0a 20 20 20 54 68 65 20 69 6e 74 65 6c 6c 69 67 65 6e 74 20 74 72 69 63 6b 20 6f 66 20 4c 5a 4d ....The.intelligent.trick.of.LZM
19320 41 20 69 73 20 74 68 61 74 20 69 74 20 65 6e 63 6f 64 65 73 20 69 6e 20 77 68 61 74 20 69 74 20 A.is.that.it.encodes.in.what.it.
19340 63 61 6c 6c 73 20 61 0a 22 73 6c 6f 74 22 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 calls.a."slot".the.position.of.t
19360 68 65 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 20 73 65 74 2c 20 61 6c 6f he.most.significant.bit.set,.alo
19380 6e 67 20 77 69 74 68 20 74 68 65 20 76 61 6c 75 65 0a 6f 66 20 74 68 65 20 6e 65 78 74 20 62 69 ng.with.the.value.of.the.next.bi
193a0 74 2c 20 75 73 69 6e 67 20 74 68 65 20 73 61 6d 65 20 36 20 62 69 74 73 20 74 68 61 74 20 77 6f t,.using.the.same.6.bits.that.wo
193c0 75 6c 64 20 74 61 6b 65 20 74 6f 20 65 6e 63 6f 64 65 20 74 68 65 0a 70 6f 73 69 74 69 6f 6e 20 uld.take.to.encode.the.position.
193e0 61 6c 6f 6e 65 2e 20 54 68 69 73 20 73 65 65 6d 73 20 74 6f 20 6e 65 65 64 20 36 36 20 73 6c 6f alone..This.seems.to.need.66.slo
19400 74 73 20 28 74 77 69 63 65 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 0a 70 6f 73 69 74 69 6f 6e ts.(twice.the.number.of.position
19420 73 29 2c 20 62 75 74 20 66 6f 72 20 70 6f 73 69 74 69 6f 6e 73 20 30 20 61 6e 64 20 31 20 74 68 s),.but.for.positions.0.and.1.th
19440 65 72 65 20 69 73 20 6e 6f 20 6e 65 78 74 20 62 69 74 2c 20 73 6f 20 74 68 65 20 6e 75 6d 62 65 ere.is.no.next.bit,.so.the.numbe
19460 72 0a 6f 66 20 73 6c 6f 74 73 20 6e 65 65 64 65 64 20 69 73 20 36 34 20 28 30 20 74 6f 20 36 33 r.of.slots.needed.is.64.(0.to.63
19480 29 2e 0a 0a 20 20 20 54 68 65 20 36 20 62 69 74 73 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 )......The.6.bits.representing.t
194a0 68 69 73 20 22 73 6c 6f 74 20 6e 75 6d 62 65 72 22 20 61 72 65 20 74 68 65 6e 20 63 6f 6e 74 65 his."slot.number".are.then.conte
194c0 78 74 2d 63 6f 64 65 64 2e 20 49 66 0a 74 68 65 20 64 69 73 74 61 6e 63 65 20 69 73 20 3e 3d 20 xt-coded..If.the.distance.is.>=.
194e0 34 2c 20 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 62 69 74 73 20 61 72 65 20 65 6e 63 6f 64 65 4,.the.remaining.bits.are.encode
19500 64 20 61 73 20 66 6f 6c 6c 6f 77 73 2e 0a 27 64 69 72 65 63 74 5f 62 69 74 73 27 20 69 73 20 74 d.as.follows..'direct_bits'.is.t
19520 68 65 20 61 6d 6f 75 6e 74 20 6f 66 20 72 65 6d 61 69 6e 69 6e 67 20 62 69 74 73 20 28 66 72 6f he.amount.of.remaining.bits.(fro
19540 6d 20 31 20 74 6f 20 33 30 29 20 6e 65 65 64 65 64 20 74 6f 20 66 6f 72 6d 0a 61 20 63 6f 6d 70 m.1.to.30).needed.to.form.a.comp
19560 6c 65 74 65 20 64 69 73 74 61 6e 63 65 2c 20 61 6e 64 20 69 73 20 63 61 6c 63 75 6c 61 74 65 64 lete.distance,.and.is.calculated
19580 20 61 73 20 28 73 6c 6f 74 20 3e 3e 20 31 29 20 2d 20 31 2e 20 49 66 20 61 20 64 69 73 74 61 6e .as.(slot.>>.1).-.1..If.a.distan
195a0 63 65 0a 6e 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 ce.needs.6.or.more.direct_bits,.
195c0 74 68 65 20 6c 61 73 74 20 34 20 62 69 74 73 20 61 72 65 20 65 6e 63 6f 64 65 64 20 73 65 70 61 the.last.4.bits.are.encoded.sepa
195e0 72 61 74 65 6c 79 2e 20 54 68 65 0a 6c 61 73 74 20 70 69 65 63 65 20 28 61 6c 6c 20 74 68 65 20 rately..The.last.piece.(all.the.
19600 64 69 72 65 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 direct_bits.for.distances.4.to.1
19620 32 37 2c 20 6f 72 20 74 68 65 20 6c 61 73 74 20 34 20 62 69 74 73 0a 66 6f 72 20 64 69 73 74 61 27,.or.the.last.4.bits.for.dista
19640 6e 63 65 73 20 3e 3d 20 31 32 38 29 20 69 73 20 63 6f 6e 74 65 78 74 2d 63 6f 64 65 64 20 69 6e nces.>=.128).is.context-coded.in
19660 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 29 .reverse.order.(from.LSB.to.MSB)
19680 2e 0a 46 6f 72 20 64 69 73 74 61 6e 63 65 73 20 3e 3d 20 31 32 38 2c 20 74 68 65 20 27 64 69 72 ..For.distances.>=.128,.the.'dir
196a0 65 63 74 5f 62 69 74 73 20 2d 20 34 27 20 70 61 72 74 20 69 73 20 65 6e 63 6f 64 65 64 20 77 69 ect_bits.-.4'.part.is.encoded.wi
196c0 74 68 20 66 69 78 65 64 20 30 2e 35 0a 70 72 6f 62 61 62 69 6c 69 74 79 2e 0a 0a 42 69 74 20 73 th.fixed.0.5.probability...Bit.s
196e0 65 71 75 65 6e 63 65 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 equence.........................
19700 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ..Description.------------------
19720 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 --------------------------------
19740 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 73 6c 6f 74 20 --------------------------.slot.
19760 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 ................................
19780 20 20 64 69 73 74 61 6e 63 65 73 20 66 72 6f 6d 20 30 20 74 6f 20 33 0a 73 6c 6f 74 20 2b 20 64 ..distances.from.0.to.3.slot.+.d
197a0 69 72 65 63 74 5f 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 64 irect_bits.....................d
197c0 69 73 74 61 6e 63 65 73 20 66 72 6f 6d 20 34 20 74 6f 20 31 32 37 0a 73 6c 6f 74 20 2b 20 28 64 istances.from.4.to.127.slot.+.(d
197e0 69 72 65 63 74 5f 62 69 74 73 20 2d 20 34 29 20 2b 20 34 20 62 69 74 73 20 20 20 20 20 20 64 69 irect_bits.-.4).+.4.bits......di
19800 73 74 61 6e 63 65 73 20 66 72 6f 6d 20 31 32 38 20 74 6f 20 32 5e 33 32 20 2d 20 31 0a 0a 0a 37 stances.from.128.to.2^32.-.1...7
19820 2e 32 20 54 68 65 20 63 6f 64 69 6e 67 20 63 6f 6e 74 65 78 74 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d .2.The.coding.contexts.=========
19840 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 54 68 65 73 65 20 63 6f 6e 74 65 78 74 73 20 28 ==============..These.contexts.(
19860 27 42 69 74 5f 6d 6f 64 65 6c 27 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 2c 20 61 72 65 20 'Bit_model'.in.the.source),.are.
19880 69 6e 74 65 67 65 72 73 20 6f 72 20 61 72 72 61 79 73 20 6f 66 0a 69 6e 74 65 67 65 72 73 20 72 integers.or.arrays.of.integers.r
198a0 65 70 72 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 epresenting.the.probability.of.t
198c0 68 65 20 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 20 he.corresponding.bit.being.0....
198e0 20 20 54 68 65 20 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 ..The.indices.used.in.these.arra
19900 79 73 20 61 72 65 3a 0a 0a 27 73 74 61 74 65 27 0a 20 20 20 20 20 41 20 73 74 61 74 65 20 6d 61 ys.are:..'state'......A.state.ma
19920 63 68 69 6e 65 20 28 27 53 74 61 74 65 27 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 20 77 69 chine.('State'.in.the.source).wi
19940 74 68 20 31 32 20 73 74 61 74 65 73 20 28 30 20 74 6f 20 31 31 29 2c 0a 20 20 20 20 20 63 6f 64 th.12.states.(0.to.11),......cod
19960 69 6e 67 20 74 68 65 20 6c 61 74 65 73 74 20 32 20 74 6f 20 34 20 74 79 70 65 73 20 6f 66 20 73 ing.the.latest.2.to.4.types.of.s
19980 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 74 69 61 6c 0a equences.processed..The.initial.
199a0 20 20 20 20 20 73 74 61 74 65 20 69 73 20 30 2e 0a 0a 27 70 6f 73 5f 73 74 61 74 65 27 0a 20 20 .....state.is.0...'pos_state'...
199c0 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 69 66 69 63 ...Value.of.the.2.least.signific
199e0 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 74 69 6f 6e ant.bits.of.the.current.position
19a00 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 27 6c 69 74 .in.the......decoded.data...'lit
19a20 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 65 20 33 20 eral_state'......Value.of.the.3.
19a40 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 20 6c 61 74 most.significant.bits.of.the.lat
19a60 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 65 27 0a 20 est.byte.decoded...'len_state'..
19a80 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 6e 74 20 6d ....Coded.value.of.the.current.m
19aa0 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 74 68 20 61 atch.length.(length.-.2),.with.a
19ac0 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 6c 74 69 6e .maximum......of.3..The.resultin
19ae0 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 20 33 2e 0a g.value.is.in.the.range.0.to.3..
19b00 0a 0a 20 20 20 49 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 2c 20 27 21 6c .....In.the.following.table,.'!l
19b20 69 74 65 72 61 6c 27 20 69 73 20 61 6e 79 20 73 65 71 75 65 6e 63 65 20 65 78 63 65 70 74 20 61 iteral'.is.any.sequence.except.a
19b40 20 6c 69 74 65 72 61 6c 0a 62 79 74 65 2e 20 27 72 65 70 27 20 69 73 20 61 6e 79 20 6f 6e 65 20 .literal.byte..'rep'.is.any.one.
19b60 6f 66 20 27 72 65 70 30 27 2c 20 27 72 65 70 31 27 2c 20 27 72 65 70 32 27 2c 20 6f 72 20 27 72 of.'rep0',.'rep1',.'rep2',.or.'r
19b80 65 70 33 27 2e 20 54 68 65 20 74 79 70 65 73 20 6f 66 0a 70 72 65 76 69 6f 75 73 20 73 65 71 75 ep3'..The.types.of.previous.sequ
19ba0 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 74 61 74 ences.corresponding.to.each.stat
19bc0 65 20 61 72 65 3a 0a 0a 53 74 61 74 65 20 20 20 54 79 70 65 73 20 6f 66 20 70 72 65 76 69 6f 75 e.are:..State...Types.of.previou
19be0 73 20 73 65 71 75 65 6e 63 65 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d s.sequences.--------------------
19c00 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 --------------------------------
19c20 2d 2d 0a 30 20 20 20 20 20 20 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 --.0.......literal,.literal,.lit
19c40 65 72 61 6c 0a 31 20 20 20 20 20 20 20 6d 61 74 63 68 2c 20 6c 69 74 65 72 61 6c 2c 20 6c 69 74 eral.1.......match,.literal,.lit
19c60 65 72 61 6c 0a 32 20 20 20 20 20 20 20 72 65 70 20 6f 72 20 28 21 6c 69 74 65 72 61 6c 2c 20 73 eral.2.......rep.or.(!literal,.s
19c80 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 0a 33 20 20 20 20 hortrep),.literal,.literal.3....
19ca0 20 20 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 6c 2c 20 6c ...literal,.shortrep,.literal,.l
19cc0 69 74 65 72 61 6c 0a 34 20 20 20 20 20 20 20 6d 61 74 63 68 2c 20 6c 69 74 65 72 61 6c 0a 35 20 iteral.4.......match,.literal.5.
19ce0 20 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 ......rep.or.(!literal,.shortrep
19d00 29 2c 20 6c 69 74 65 72 61 6c 0a 36 20 20 20 20 20 20 20 6c 69 74 65 72 61 6c 2c 20 73 68 6f 72 ),.literal.6.......literal,.shor
19d20 74 72 65 70 2c 20 6c 69 74 65 72 61 6c 0a 37 20 20 20 20 20 20 20 6c 69 74 65 72 61 6c 2c 20 6d trep,.literal.7.......literal,.m
19d40 61 74 63 68 0a 38 20 20 20 20 20 20 20 6c 69 74 65 72 61 6c 2c 20 72 65 70 0a 39 20 20 20 20 20 atch.8.......literal,.rep.9.....
19d60 20 20 6c 69 74 65 72 61 6c 2c 20 73 68 6f 72 74 72 65 70 0a 31 30 20 20 20 20 20 20 21 6c 69 74 ..literal,.shortrep.10......!lit
19d80 65 72 61 6c 2c 20 6d 61 74 63 68 0a 31 31 20 20 20 20 20 20 21 6c 69 74 65 72 61 6c 2c 20 28 72 eral,.match.11......!literal,.(r
19da0 65 70 20 6f 72 20 73 68 6f 72 74 72 65 70 29 0a 0a 0a 20 20 20 54 68 65 20 63 6f 6e 74 65 78 74 ep.or.shortrep)......The.context
19dc0 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 20 63 6f 64 69 6e s.for.decoding.the.type.of.codin
19de0 67 20 73 65 71 75 65 6e 63 65 20 61 72 65 3a 0a 0a 4e 61 6d 65 20 20 20 20 20 20 20 20 20 20 20 g.sequence.are:..Name...........
19e00 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 20 20 20 20 55 73 65 .Indices.....................Use
19e20 64 20 77 68 65 6e 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 d.when.-------------------------
19e40 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 --------------------------------
19e60 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 62 6d 5f 6d 61 74 63 68 20 20 20 20 -------------------.bm_match....
19e80 20 20 20 20 73 74 61 74 65 2c 20 70 6f 73 5f 73 74 61 74 65 20 20 20 20 20 20 20 20 20 20 20 20 ....state,.pos_state............
19ea0 73 65 71 75 65 6e 63 65 20 73 74 61 72 74 0a 62 6d 5f 72 65 70 20 20 20 20 20 20 20 20 20 20 73 sequence.start.bm_rep..........s
19ec0 74 61 74 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 66 74 65 72 tate.......................after
19ee0 20 73 65 71 75 65 6e 63 65 20 31 0a 62 6d 5f 72 65 70 30 20 20 20 20 20 20 20 20 20 73 74 61 74 .sequence.1.bm_rep0.........stat
19f00 65 20 20 20 20 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 e.......................after.se
19f20 71 75 65 6e 63 65 20 31 31 0a 62 6d 5f 72 65 70 31 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 quence.11.bm_rep1.........state.
19f40 20 20 20 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 ......................after.sequ
19f60 65 6e 63 65 20 31 31 31 0a 62 6d 5f 72 65 70 32 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 20 ence.111.bm_rep2.........state..
19f80 20 20 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 .....................after.seque
19fa0 6e 63 65 20 31 31 31 31 0a 62 6d 5f 6c 65 6e 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2c 20 nce.1111.bm_len..........state,.
19fc0 70 6f 73 5f 73 74 61 74 65 20 20 20 20 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 65 71 75 65 pos_state............after.seque
19fe0 6e 63 65 20 31 31 30 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 nce.110......The.contexts.for.de
1a000 63 6f 64 69 6e 67 20 64 69 73 74 61 6e 63 65 73 20 61 72 65 3a 0a 0a 4e 61 6d 65 20 20 20 20 20 coding.distances.are:..Name.....
1a020 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 55 .......Indices.................U
1a040 73 65 64 20 77 68 65 6e 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d sed.when.-----------------------
1a060 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 --------------------------------
1a080 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 62 6d 5f 64 69 73 5f 73 6c 6f ---------------------.bm_dis_slo
1a0a0 74 20 20 20 20 20 6c 65 6e 5f 73 74 61 74 65 2c 20 62 69 74 20 74 72 65 65 20 20 20 20 20 64 69 t.....len_state,.bit.tree.....di
1a0c0 73 74 61 6e 63 65 20 73 74 61 72 74 0a 62 6d 5f 64 69 73 20 20 20 20 20 20 20 20 20 20 72 65 76 stance.start.bm_dis..........rev
1a0e0 65 72 73 65 20 62 69 74 20 74 72 65 65 20 20 20 20 20 20 20 20 61 66 74 65 72 20 73 6c 6f 74 73 erse.bit.tree........after.slots
1a100 20 34 20 74 6f 20 31 33 0a 62 6d 5f 61 6c 69 67 6e 20 20 20 20 20 20 20 20 72 65 76 65 72 73 65 .4.to.13.bm_align........reverse
1a120 20 62 69 74 20 74 72 65 65 20 20 20 20 20 20 20 20 66 6f 72 20 64 69 73 74 61 6e 63 65 73 20 3e .bit.tree........for.distances.>
1a140 3d 20 31 32 38 2c 20 61 66 74 65 72 20 66 69 78 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 =.128,.after.fixed..............
1a160 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 6f 62 61 ...........................proba
1a180 62 69 6c 69 74 79 20 62 69 74 73 0a 0a 0a 20 20 20 54 68 65 72 65 20 61 72 65 20 74 77 6f 20 73 bility.bits......There.are.two.s
1a1a0 65 70 61 72 61 74 65 20 73 65 74 73 20 6f 66 20 63 6f 6e 74 65 78 74 73 20 66 6f 72 20 6c 65 6e eparate.sets.of.contexts.for.len
1a1c0 67 74 68 73 20 28 27 4c 65 6e 5f 6d 6f 64 65 6c 27 20 69 6e 20 74 68 65 0a 73 6f 75 72 63 65 29 gths.('Len_model'.in.the.source)
1a1e0 2e 20 4f 6e 65 20 66 6f 72 20 6e 6f 72 6d 61 6c 20 6d 61 74 63 68 65 73 2c 20 74 68 65 20 6f 74 ..One.for.normal.matches,.the.ot
1a200 68 65 72 20 66 6f 72 20 72 65 70 65 61 74 65 64 20 6d 61 74 63 68 65 73 2e 20 54 68 65 0a 63 6f her.for.repeated.matches..The.co
1a220 6e 74 65 78 74 73 20 69 6e 20 65 61 63 68 20 4c 65 6e 5f 6d 6f 64 65 6c 20 61 72 65 20 28 73 65 ntexts.in.each.Len_model.are.(se
1a240 65 20 27 64 65 63 6f 64 65 5f 6c 65 6e 27 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 3a 0a 0a e.'decode_len'.in.the.source):..
1a260 4e 61 6d 65 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 64 69 63 65 73 20 20 20 20 20 20 20 20 20 Name............Indices.........
1a280 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 2d 2d 2d 2d 2d 2d ...............Used.when.-------
1a2a0 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 --------------------------------
1a2c0 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 --------------------------------
1a2e0 2d 2d 2d 2d 0a 63 68 6f 69 63 65 31 20 20 20 20 20 20 20 20 20 6e 6f 6e 65 20 20 20 20 20 20 20 ----.choice1.........none.......
1a300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 6e 67 74 68 20 73 74 61 72 74 ....................length.start
1a320 0a 63 68 6f 69 63 65 32 20 20 20 20 20 20 20 20 20 6e 6f 6e 65 20 20 20 20 20 20 20 20 20 20 20 .choice2.........none...........
1a340 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
1a360 0a 62 6d 5f 6c 6f 77 20 20 20 20 20 20 20 20 20 20 70 6f 73 5f 73 74 61 74 65 2c 20 62 69 74 20 .bm_low..........pos_state,.bit.
1a380 74 72 65 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 30 tree............after.sequence.0
1a3a0 0a 62 6d 5f 6d 69 64 20 20 20 20 20 20 20 20 20 20 70 6f 73 5f 73 74 61 74 65 2c 20 62 69 74 20 .bm_mid..........pos_state,.bit.
1a3c0 74 72 65 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 tree............after.sequence.1
1a3e0 30 0a 62 6d 5f 68 69 67 68 20 20 20 20 20 20 20 20 20 62 69 74 20 74 72 65 65 20 20 20 20 20 20 0.bm_high.........bit.tree......
1a400 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 65 20 .................after.sequence.
1a420 31 31 0a 0a 0a 20 20 20 54 68 65 20 63 6f 6e 74 65 78 74 20 61 72 72 61 79 20 27 62 6d 5f 6c 69 11......The.context.array.'bm_li
1a440 74 65 72 61 6c 27 20 69 73 20 73 70 65 63 69 61 6c 2e 20 49 6e 20 70 72 69 6e 63 69 70 6c 65 20 teral'.is.special..In.principle.
1a460 69 74 20 61 63 74 73 20 61 73 20 61 0a 6e 6f 72 6d 61 6c 20 62 69 74 20 74 72 65 65 20 63 6f 6e it.acts.as.a.normal.bit.tree.con
1a480 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 27 6c 69 74 65 72 text,.the.one.selected.by.'liter
1a4a0 61 6c 5f 73 74 61 74 65 27 2e 20 42 75 74 20 69 66 20 74 68 65 0a 70 72 65 76 69 6f 75 73 20 64 al_state'..But.if.the.previous.d
1a4c0 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 65 72 61 6c 2c 20 74 ecoded.byte.was.not.a.literal,.t
1a4e0 77 6f 20 6f 74 68 65 72 20 62 69 74 20 74 72 65 65 20 63 6f 6e 74 65 78 74 73 20 61 72 65 0a 75 wo.other.bit.tree.contexts.are.u
1a500 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 65 20 6f 66 20 65 61 sed.depending.on.the.value.of.ea
1a520 63 68 20 62 69 74 20 69 6e 20 27 6d 61 74 63 68 5f 62 79 74 65 27 20 28 74 68 65 20 62 79 74 65 ch.bit.in.'match_byte'.(the.byte
1a540 20 61 74 20 74 68 65 0a 6c 61 74 65 73 74 20 75 73 65 64 20 64 69 73 74 61 6e 63 65 29 2c 20 75 .at.the.latest.used.distance),.u
1a560 6e 74 69 6c 20 61 20 62 69 74 20 69 73 20 64 65 63 6f 64 65 64 20 74 68 61 74 20 69 73 20 64 69 ntil.a.bit.is.decoded.that.is.di
1a580 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 69 74 73 0a 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 62 fferent.from.its.corresponding.b
1a5a0 69 74 20 69 6e 20 27 6d 61 74 63 68 5f 62 79 74 65 27 2e 20 41 66 74 65 72 20 74 68 65 20 66 69 it.in.'match_byte'..After.the.fi
1a5c0 72 73 74 20 64 69 66 66 65 72 65 6e 63 65 20 69 73 20 66 6f 75 6e 64 2c 20 74 68 65 0a 72 65 73 rst.difference.is.found,.the.res
1a5e0 74 20 6f 66 20 74 68 65 20 62 79 74 65 20 69 73 20 64 65 63 6f 64 65 64 20 75 73 69 6e 67 20 74 t.of.the.byte.is.decoded.using.t
1a600 68 65 20 6e 6f 72 6d 61 6c 20 62 69 74 20 74 72 65 65 20 63 6f 6e 74 65 78 74 2e 20 28 53 65 65 he.normal.bit.tree.context..(See
1a620 0a 27 64 65 63 6f 64 65 5f 6d 61 74 63 68 65 64 27 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 .'decode_matched'.in.the.source)
1a640 2e 0a 0a 0a 37 2e 33 20 54 68 65 20 72 61 6e 67 65 20 64 65 63 6f 64 65 72 0a 3d 3d 3d 3d 3d 3d ....7.3.The.range.decoder.======
1a660 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 6d ===============..The.LZMA.stream
1a680 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 69 6d 65 20 .is.consumed.one.byte.at.a.time.
1a6a0 62 79 20 74 68 65 20 72 61 6e 67 65 20 64 65 63 6f 64 65 72 2e 20 28 53 65 65 0a 27 6e 6f 72 6d by.the.range.decoder..(See.'norm
1a6c0 61 6c 69 7a 65 27 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 2e 20 45 76 65 72 79 20 62 79 74 alize'.in.the.source)..Every.byt
1a6e0 65 20 63 6f 6e 73 75 6d 65 64 20 70 72 6f 64 75 63 65 73 20 61 20 76 61 72 69 61 62 6c 65 20 6e e.consumed.produces.a.variable.n
1a700 75 6d 62 65 72 0a 6f 66 20 64 65 63 6f 64 65 64 20 62 69 74 73 2c 20 64 65 70 65 6e 64 69 6e 67 umber.of.decoded.bits,.depending
1a720 20 6f 6e 20 68 6f 77 20 77 65 6c 6c 20 74 68 65 73 65 20 62 69 74 73 20 61 67 72 65 65 20 77 69 .on.how.well.these.bits.agree.wi
1a740 74 68 20 74 68 65 69 72 20 63 6f 6e 74 65 78 74 2e 0a 28 53 65 65 20 27 64 65 63 6f 64 65 5f 62 th.their.context..(See.'decode_b
1a760 69 74 27 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 2e 0a 0a 20 20 20 54 68 65 20 72 61 6e 67 it'.in.the.source)......The.rang
1a780 65 20 64 65 63 6f 64 65 72 20 73 74 61 74 65 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 74 77 6f 20 e.decoder.state.consists.of.two.
1a7a0 75 6e 73 69 67 6e 65 64 20 33 32 2d 62 69 74 20 76 61 72 69 61 62 6c 65 73 3b 0a 27 72 61 6e 67 unsigned.32-bit.variables;.'rang
1a7c0 65 27 20 28 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 6d 6f 73 74 20 73 69 67 6e 69 66 e'.(representing.the.most.signif
1a7e0 69 63 61 6e 74 20 70 61 72 74 20 6f 66 20 74 68 65 20 72 61 6e 67 65 20 73 69 7a 65 20 6e 6f 74 icant.part.of.the.range.size.not
1a800 20 79 65 74 0a 64 65 63 6f 64 65 64 29 2c 20 61 6e 64 20 27 63 6f 64 65 27 20 28 72 65 70 72 65 .yet.decoded),.and.'code'.(repre
1a820 73 65 6e 74 69 6e 67 20 74 68 65 20 63 75 72 72 65 6e 74 20 70 6f 69 6e 74 20 77 69 74 68 69 6e senting.the.current.point.within
1a840 20 27 72 61 6e 67 65 27 29 2e 0a 27 72 61 6e 67 65 27 20 69 73 20 69 6e 69 74 69 61 6c 69 7a 65 .'range')..'range'.is.initialize
1a860 64 20 74 6f 20 28 32 5e 33 32 20 2d 20 31 29 2c 20 61 6e 64 20 27 63 6f 64 65 27 20 69 73 20 69 d.to.(2^32.-.1),.and.'code'.is.i
1a880 6e 69 74 69 61 6c 69 7a 65 64 20 74 6f 20 30 2e 0a 0a 20 20 20 54 68 65 20 72 61 6e 67 65 20 65 nitialized.to.0......The.range.e
1a8a0 6e 63 6f 64 65 72 20 70 72 6f 64 75 63 65 73 20 61 20 66 69 72 73 74 20 30 20 62 79 74 65 20 74 ncoder.produces.a.first.0.byte.t
1a8c0 68 61 74 20 6d 75 73 74 20 62 65 20 69 67 6e 6f 72 65 64 20 62 79 20 74 68 65 0a 72 61 6e 67 65 hat.must.be.ignored.by.the.range
1a8e0 20 64 65 63 6f 64 65 72 2e 20 54 68 69 73 20 69 73 20 64 6f 6e 65 20 62 79 20 73 68 69 66 74 69 .decoder..This.is.done.by.shifti
1a900 6e 67 20 35 20 62 79 74 65 73 20 69 6e 20 74 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e ng.5.bytes.in.the.initialization
1a920 20 6f 66 0a 27 63 6f 64 65 27 20 69 6e 73 74 65 61 64 20 6f 66 20 34 2e 20 28 53 65 65 20 74 68 .of.'code'.instead.of.4..(See.th
1a940 65 20 27 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 27 20 63 6f 6e 73 74 72 75 63 74 6f 72 20 69 6e e.'Range_decoder'.constructor.in
1a960 20 74 68 65 20 73 6f 75 72 63 65 29 2e 0a 0a 0a 37 2e 34 20 44 65 63 6f 64 69 6e 67 20 61 6e 64 .the.source)....7.4.Decoding.and
1a980 20 76 65 72 69 66 79 69 6e 67 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 0a 3d 3d 3d 3d 3d .verifying.the.LZMA.stream.=====
1a9a0 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 3d 3d 3d 3d 3d 3d 3d ================================
1a9c0 3d 3d 3d 3d 3d 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 =====..After.decoding.the.member
1a9e0 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
1aa00 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.
1aa20 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
1aa40 63 6f 64 65 72 20 65 6e 74 65 72 73 20 61 20 6c 6f 6f 70 20 28 53 65 65 0a 27 64 65 63 6f 64 65 coder.enters.a.loop.(See.'decode
1aa60 5f 6d 65 6d 62 65 72 27 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 20 77 68 65 72 65 20 69 74 _member'.in.the.source).where.it
1aa80 20 69 6e 76 6f 6b 65 73 20 74 68 65 20 72 61 6e 67 65 20 64 65 63 6f 64 65 72 20 77 69 74 68 20 .invokes.the.range.decoder.with.
1aaa0 74 68 65 0a 61 70 70 72 6f 70 72 69 61 74 65 20 63 6f 6e 74 65 78 74 73 20 74 6f 20 64 65 63 6f the.appropriate.contexts.to.deco
1aac0 64 65 20 74 68 65 20 64 69 66 66 65 72 65 6e 74 20 63 6f 64 69 6e 67 20 73 65 71 75 65 6e 63 65 de.the.different.coding.sequence
1aae0 73 20 28 6d 61 74 63 68 65 73 2c 0a 72 65 70 65 61 74 65 64 20 6d 61 74 63 68 65 73 2c 20 61 6e s.(matches,.repeated.matches,.an
1ab00 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 20 22 45 6e 64 d.literal.bytes),.until.the."End
1ab20 20 4f 66 20 53 74 72 65 61 6d 22 20 6d 61 72 6b 65 72 20 69 73 0a 64 65 63 6f 64 65 64 2e 0a 0a .Of.Stream".marker.is.decoded...
1ab40 20 20 20 4f 6e 63 65 20 74 68 65 20 22 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 22 20 6d 61 72 6b ...Once.the."End.Of.Stream".mark
1ab60 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 70 72 er.has.been.decoded,.the.decompr
1ab80 65 73 73 6f 72 20 72 65 61 64 73 0a 61 6e 64 20 64 65 63 6f 64 65 73 20 74 68 65 20 6d 65 6d 62 essor.reads.and.decodes.the.memb
1aba0 65 72 20 74 72 61 69 6c 65 72 2c 20 61 6e 64 20 76 65 72 69 66 69 65 73 20 74 68 61 74 20 74 68 er.trailer,.and.verifies.that.th
1abc0 65 20 74 68 72 65 65 20 69 6e 74 65 67 72 69 74 79 0a 66 61 63 74 6f 72 73 20 28 43 52 43 2c 20 e.three.integrity.factors.(CRC,.
1abe0 64 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 data.size,.and.member.size).matc
1ac00 68 20 74 68 6f 73 65 20 63 61 6c 63 75 6c 61 74 65 64 20 62 79 20 74 68 65 0a 4c 5a 4d 41 20 64 h.those.calculated.by.the.LZMA.d
1ac20 65 63 6f 64 65 72 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 ecoder.....File:.lzip.info,..Nod
1ac40 65 3a 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 2c 20 20 4e 65 78 74 3a 20 45 78 61 6d 70 6c 65 e:.Trailing.data,..Next:.Example
1ac60 73 2c 20 20 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 s,..Prev:.Stream.format,..Up:.To
1ac80 70 0a 0a 38 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 p..8.Extra.data.appended.to.the.
1aca0 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 2a 2a 2a 2a 2a 2a 2a file.***************************
1acc0 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 61 74 61 20 61 72 65 ******..Sometimes.extra.data.are
1ace0 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 20 66 69 6c 65 20 61 .found.appended.to.a.lzip.file.a
1ad00 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 68 20 74 72 61 69 6c fter.the.last.member..Such.trail
1ad20 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 64 64 69 6e 67 20 61 ing.data.may.be:.....*.Padding.a
1ad40 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 20 6d 75 6c dded.to.make.the.file.size.a.mul
1ad60 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 72 0a 20 20 tiple.of.some.block.size,.for...
1ad80 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 6f 20 61 20 74 61 70 ...example.when.writing.to.a.tap
1ada0 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 6e 79 20 61 6d 6f 75 e..It.is.safe.to.append.any.amou
1adc0 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 79 74 65 73 20 74 6f nt.of......padding.zero.bytes.to
1ade0 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 6c 20 64 61 74 61 20 .a.lzip.file......*.Useful.data.
1ae00 61 64 64 65 64 20 62 79 20 74 68 65 20 75 73 65 72 3b 20 61 20 63 72 79 70 74 6f 67 72 61 70 68 added.by.the.user;.a.cryptograph
1ae20 69 63 61 6c 6c 79 20 73 65 63 75 72 65 20 68 61 73 68 2c 20 61 0a 20 20 20 20 20 64 65 73 63 72 ically.secure.hash,.a......descr
1ae40 69 70 74 69 6f 6e 20 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 iption.of.file.contents,.etc..It
1ae60 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 74 20 6f 66 .is.safe.to.append.any.amount.of
1ae80 0a 20 20 20 20 20 74 65 78 74 20 74 6f 20 61 20 6c 7a 69 70 20 66 69 6c 65 20 61 73 20 6c 6f 6e ......text.to.a.lzip.file.as.lon
1aea0 67 20 61 73 20 6e 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 g.as.none.of.the.first.four.byte
1aec0 73 20 6f 66 20 74 68 65 20 74 65 78 74 0a 20 20 20 20 20 6d 61 74 63 68 20 74 68 65 20 63 6f 72 s.of.the.text......match.the.cor
1aee0 72 65 73 70 6f 6e 64 69 6e 67 20 62 79 74 65 20 69 6e 20 74 68 65 20 73 74 72 69 6e 67 20 22 4c responding.byte.in.the.string."L
1af00 5a 49 50 22 2c 20 61 6e 64 20 74 68 65 20 74 65 78 74 20 64 6f 65 73 0a 20 20 20 20 20 6e 6f 74 ZIP",.and.the.text.does......not
1af20 20 63 6f 6e 74 61 69 6e 20 61 6e 79 20 7a 65 72 6f 20 62 79 74 65 73 20 28 6e 75 6c 6c 20 63 68 .contain.any.zero.bytes.(null.ch
1af40 61 72 61 63 74 65 72 73 29 2e 20 4e 6f 6e 7a 65 72 6f 20 62 79 74 65 73 20 61 6e 64 20 7a 65 72 aracters)..Nonzero.bytes.and.zer
1af60 6f 0a 20 20 20 20 20 62 79 74 65 73 20 63 61 6e 27 74 20 62 65 20 73 61 66 65 6c 79 20 6d 69 78 o......bytes.can't.be.safely.mix
1af80 65 64 20 69 6e 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 2e 0a 0a 20 20 20 2a 20 47 61 72 62 61 ed.in.trailing.data......*.Garba
1afa0 67 65 20 61 64 64 65 64 20 62 79 20 73 6f 6d 65 20 6e 6f 74 20 74 6f 74 61 6c 6c 79 20 73 75 63 ge.added.by.some.not.totally.suc
1afc0 63 65 73 73 66 75 6c 20 63 6f 70 79 20 6f 70 65 72 61 74 69 6f 6e 2e 0a 0a 20 20 20 2a 20 4d 61 cessful.copy.operation......*.Ma
1afe0 6c 69 63 69 6f 75 73 20 64 61 74 61 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 66 69 6c 65 20 69 licious.data.added.to.the.file.i
1b000 6e 20 6f 72 64 65 72 20 74 6f 20 6d 61 6b 65 20 69 74 73 20 74 6f 74 61 6c 20 73 69 7a 65 20 61 n.order.to.make.its.total.size.a
1b020 6e 64 0a 20 20 20 20 20 68 61 73 68 20 76 61 6c 75 65 20 28 66 6f 72 20 61 20 63 68 6f 73 65 6e nd......hash.value.(for.a.chosen
1b040 20 68 61 73 68 29 20 63 6f 69 6e 63 69 64 65 20 77 69 74 68 20 74 68 6f 73 65 20 6f 66 20 61 6e .hash).coincide.with.those.of.an
1b060 6f 74 68 65 72 20 66 69 6c 65 2e 0a 0a 20 20 20 2a 20 49 6e 20 72 61 72 65 20 63 61 73 65 73 2c other.file......*.In.rare.cases,
1b080 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 63 6f 75 6c 64 20 62 65 20 74 68 65 20 63 6f 72 72 .trailing.data.could.be.the.corr
1b0a0 75 70 74 20 68 65 61 64 65 72 20 6f 66 20 61 6e 6f 74 68 65 72 0a 20 20 20 20 20 6d 65 6d 62 65 upt.header.of.another......membe
1b0c0 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 74 65 6e 61 74 65 r..In.multimember.or.concatenate
1b0e0 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 0a 20 20 20 20 20 d.files.the.probability.of......
1b100 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 69 corruption.happening.in.the.magi
1b120 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 20 c.bytes.is.5.times.smaller.than.
1b140 74 68 65 0a 20 20 20 20 20 70 72 6f 62 61 62 69 6c 69 74 79 20 6f 66 20 67 65 74 74 69 6e 67 20 the......probability.of.getting.
1b160 61 20 66 61 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 a.false.positive.caused.by.the.c
1b180 6f 72 72 75 70 74 69 6f 6e 20 6f 66 20 74 68 65 0a 20 20 20 20 20 69 6e 74 65 67 72 69 74 79 20 orruption.of.the......integrity.
1b1a0 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 74 73 65 6c 66 2e 20 54 68 65 72 65 66 6f 72 65 20 69 74 information.itself..Therefore.it
1b1c0 20 63 61 6e 20 62 65 20 63 6f 6e 73 69 64 65 72 65 64 20 74 6f 20 62 65 0a 20 20 20 20 20 62 65 .can.be.considered.to.be......be
1b1e0 6c 6f 77 20 74 68 65 20 6e 6f 69 73 65 20 6c 65 76 65 6c 2e 20 41 64 64 69 74 69 6f 6e 61 6c 6c low.the.noise.level..Additionall
1b200 79 2c 20 74 68 65 20 74 65 73 74 20 75 73 65 64 20 62 79 20 6c 7a 69 70 20 74 6f 0a 20 20 20 20 y,.the.test.used.by.lzip.to.....
1b220 20 64 69 73 63 72 69 6d 69 6e 61 74 65 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 66 72 6f 6d .discriminate.trailing.data.from
1b240 20 61 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 20 68 61 73 20 61 20 48 61 6d 6d 69 6e 67 0a .a.corrupt.header.has.a.Hamming.
1b260 20 20 20 20 20 64 69 73 74 61 6e 63 65 20 28 48 44 29 20 6f 66 20 33 2c 20 61 6e 64 20 74 68 65 .....distance.(HD).of.3,.and.the
1b280 20 33 20 62 69 74 20 66 6c 69 70 73 20 6d 75 73 74 20 68 61 70 70 65 6e 20 69 6e 20 64 69 66 66 .3.bit.flips.must.happen.in.diff
1b2a0 65 72 65 6e 74 20 6d 61 67 69 63 0a 20 20 20 20 20 62 79 74 65 73 20 66 6f 72 20 74 68 65 20 74 erent.magic......bytes.for.the.t
1b2c0 65 73 74 20 74 6f 20 66 61 69 6c 2e 20 49 6e 20 61 6e 79 20 63 61 73 65 2c 20 74 68 65 20 6f 70 est.to.fail..In.any.case,.the.op
1b2e0 74 69 6f 6e 20 27 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 27 0a 20 20 20 20 20 67 75 61 tion.'--trailing-error'......gua
1b300 72 61 6e 74 65 65 73 20 74 68 61 74 20 61 6e 79 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 20 rantees.that.any.corrupt.header.
1b320 77 69 6c 6c 20 62 65 20 64 65 74 65 63 74 65 64 2e 0a 0a 20 20 20 54 72 61 69 6c 69 6e 67 20 64 will.be.detected......Trailing.d
1b340 61 74 61 20 61 72 65 20 69 6e 20 6e 6f 20 77 61 79 20 70 61 72 74 20 6f 66 20 74 68 65 20 6c 7a ata.are.in.no.way.part.of.the.lz
1b360 69 70 20 66 69 6c 65 20 66 6f 72 6d 61 74 2c 20 62 75 74 20 74 6f 6f 6c 73 0a 72 65 61 64 69 6e ip.file.format,.but.tools.readin
1b380 67 20 6c 7a 69 70 20 66 69 6c 65 73 20 61 72 65 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 68 g.lzip.files.are.expected.to.beh
1b3a0 61 76 65 20 61 73 20 63 6f 72 72 65 63 74 6c 79 20 61 6e 64 20 75 73 65 66 75 6c 6c 79 20 61 73 ave.as.correctly.and.usefully.as
1b3c0 0a 70 6f 73 73 69 62 6c 65 20 69 6e 20 74 68 65 20 70 72 65 73 65 6e 63 65 20 6f 66 20 74 72 61 .possible.in.the.presence.of.tra
1b3e0 69 6c 69 6e 67 20 64 61 74 61 2e 0a 0a 20 20 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 20 63 61 iling.data......Trailing.data.ca
1b400 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 73 74 20 63 61 73 65 n.be.safely.ignored.in.most.case
1b420 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 61 74 20 6f 66 20 75 s..In.some.cases,.like.that.of.u
1b440 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 65 78 70 65 63 74 65 ser-added.data,.they.are.expecte
1b460 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 20 63 61 73 65 73 0a d.to.be.ignored..In.those.cases.
1b480 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 72 61 69 6c 69 6e 67 where.a.file.containing.trailing
1b4a0 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 68 65 20 6f 70 74 69 .data.must.be.rejected,.the.opti
1b4c0 6f 6e 0a 27 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 27 20 63 61 6e 20 62 65 20 75 73 65 on.'--trailing-error'.can.be.use
1b4e0 64 2e 20 2a 4e 6f 74 65 20 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 3a 3a 2e 0a 0a 1f 0a d..*Note.--trailing-error::.....
1b500 46 69 6c 65 3a 20 6c 7a 69 70 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 45 78 61 6d 70 6c 65 73 File:.lzip.info,..Node:.Examples
1b520 2c 20 20 4e 65 78 74 3a 20 50 72 6f 62 6c 65 6d 73 2c 20 20 50 72 65 76 3a 20 54 72 61 69 6c 69 ,..Next:.Problems,..Prev:.Traili
1b540 6e 67 20 64 61 74 61 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 39 20 41 20 73 6d 61 6c 6c 20 74 75 74 ng.data,..Up:.Top..9.A.small.tut
1b560 6f 72 69 61 6c 20 77 69 74 68 20 65 78 61 6d 70 6c 65 73 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a orial.with.examples.************
1b580 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 57 41 52 4e 49 4e 47 21 20 45 ********************..WARNING!.E
1b5a0 76 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 ven.if.lzip.is.bug-free,.other.c
1b5c0 61 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 auses.may.result.in.a.corrupt.co
1b5e0 6d 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 mpressed.file.(bugs.in.the.syste
1b600 6d 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 m.libraries,.memory.errors,.etc)
1b620 2e 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 ..Therefore,.if.the.data.you.are
1b640 20 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 .going.to.compress.are.important
1b660 2c 20 67 69 76 65 20 74 68 65 0a 6f 70 74 69 6f 6e 20 27 2d 2d 6b 65 65 70 27 20 74 6f 20 6c 7a ,.give.the.option.'--keep'.to.lz
1b680 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 69 67 69 6e 61 6c ip.and.don't.remove.the.original
1b6a0 20 66 69 6c 65 20 75 6e 74 69 6c 20 79 6f 75 20 76 65 72 69 66 79 0a 74 68 65 20 63 6f 6d 70 72 .file.until.you.verify.the.compr
1b6c0 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 69 6b 65 20 27 essed.file.with.a.command.like.'
1b6e0 6c 7a 69 70 20 2d 63 64 20 66 69 6c 65 2e 6c 7a 20 7c 20 63 6d 70 20 66 69 6c 65 20 2d 27 2e 0a lzip.-cd.file.lz.|.cmp.file.-'..
1b700 4d 6f 73 74 20 52 41 4d 20 65 72 72 6f 72 73 20 68 61 70 70 65 6e 69 6e 67 20 64 75 72 69 6e 67 Most.RAM.errors.happening.during
1b720 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 63 61 6e 20 6f 6e 6c 79 20 62 65 20 64 65 74 65 63 74 65 .compression.can.only.be.detecte
1b740 64 20 62 79 0a 63 6f 6d 70 61 72 69 6e 67 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 d.by.comparing.the.compressed.fi
1b760 6c 65 20 77 69 74 68 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 62 65 63 61 75 73 65 20 74 68 65 le.with.the.original.because.the
1b780 20 63 6f 72 72 75 70 74 69 6f 6e 0a 68 61 70 70 65 6e 73 20 62 65 66 6f 72 65 20 6c 7a 69 70 20 .corruption.happens.before.lzip.
1b7a0 63 6f 6d 70 72 65 73 73 65 73 20 74 68 65 20 52 41 4d 20 63 6f 6e 74 65 6e 74 73 2c 20 72 65 73 compresses.the.RAM.contents,.res
1b7c0 75 6c 74 69 6e 67 20 69 6e 20 61 20 76 61 6c 69 64 0a 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c ulting.in.a.valid.compressed.fil
1b7e0 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 77 72 6f 6e 67 20 64 61 74 61 2e 0a 0a 0a 45 78 61 6d 70 e.containing.wrong.data....Examp
1b800 6c 65 20 31 3a 20 45 78 74 72 61 63 74 20 61 6c 6c 20 74 68 65 20 66 69 6c 65 73 20 66 72 6f 6d le.1:.Extract.all.the.files.from
1b820 20 61 72 63 68 69 76 65 20 27 66 6f 6f 2e 74 61 72 2e 6c 7a 27 2e 0a 0a 20 20 20 20 20 20 20 74 .archive.'foo.tar.lz'..........t
1b840 61 72 20 2d 78 66 20 66 6f 6f 2e 74 61 72 2e 6c 7a 0a 20 20 20 20 20 6f 72 0a 20 20 20 20 20 20 ar.-xf.foo.tar.lz......or.......
1b860 20 6c 7a 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 .lzip.-cd.foo.tar.lz.|.tar.-xf.-
1b880 0a 0a 0a 45 78 61 6d 70 6c 65 20 32 3a 20 52 65 70 6c 61 63 65 20 61 20 72 65 67 75 6c 61 72 20 ...Example.2:.Replace.a.regular.
1b8a0 66 69 6c 65 20 77 69 74 68 20 69 74 73 20 63 6f 6d 70 72 65 73 73 65 64 20 76 65 72 73 69 6f 6e file.with.its.compressed.version
1b8c0 20 27 66 69 6c 65 2e 6c 7a 27 20 61 6e 64 0a 73 68 6f 77 20 74 68 65 20 63 6f 6d 70 72 65 73 73 .'file.lz'.and.show.the.compress
1b8e0 69 6f 6e 20 72 61 74 69 6f 2e 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d 76 20 66 69 6c 65 0a 0a 0a ion.ratio........lzip.-v.file...
1b900 45 78 61 6d 70 6c 65 20 33 3a 20 4c 69 6b 65 20 65 78 61 6d 70 6c 65 20 31 20 62 75 74 20 74 68 Example.3:.Like.example.1.but.th
1b920 65 20 63 72 65 61 74 65 64 20 27 66 69 6c 65 2e 6c 7a 27 20 69 73 20 6d 75 6c 74 69 6d 65 6d 62 e.created.'file.lz'.is.multimemb
1b940 65 72 20 77 69 74 68 20 61 0a 6d 65 6d 62 65 72 20 73 69 7a 65 20 6f 66 20 31 20 4d 69 42 2e 20 er.with.a.member.size.of.1.MiB..
1b960 54 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 69 73 20 6e 6f 74 20 73 68 6f The.compression.ratio.is.not.sho
1b980 77 6e 2e 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d 62 20 31 4d 69 42 20 66 69 6c 65 0a 0a 0a 45 78 wn........lzip.-b.1MiB.file...Ex
1b9a0 61 6d 70 6c 65 20 34 3a 20 52 65 73 74 6f 72 65 20 61 20 72 65 67 75 6c 61 72 20 66 69 6c 65 20 ample.4:.Restore.a.regular.file.
1b9c0 66 72 6f 6d 20 69 74 73 20 63 6f 6d 70 72 65 73 73 65 64 20 76 65 72 73 69 6f 6e 20 27 66 69 6c from.its.compressed.version.'fil
1b9e0 65 2e 6c 7a 27 2e 20 49 66 0a 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 20 69 73 20 73 75 63 63 65 e.lz'..If.the.operation.is.succe
1ba00 73 73 66 75 6c 2c 20 27 66 69 6c 65 2e 6c 7a 27 20 69 73 20 72 65 6d 6f 76 65 64 2e 0a 0a 20 20 ssful,.'file.lz'.is.removed.....
1ba20 20 20 20 6c 7a 69 70 20 2d 64 20 66 69 6c 65 2e 6c 7a 0a 0a 0a 45 78 61 6d 70 6c 65 20 35 3a 20 ...lzip.-d.file.lz...Example.5:.
1ba40 56 65 72 69 66 79 20 74 68 65 20 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 68 65 20 63 6f 6d 70 Verify.the.integrity.of.the.comp
1ba60 72 65 73 73 65 64 20 66 69 6c 65 20 27 66 69 6c 65 2e 6c 7a 27 20 61 6e 64 20 73 68 6f 77 0a 73 ressed.file.'file.lz'.and.show.s
1ba80 74 61 74 75 73 2e 0a 0a 20 20 20 20 20 6c 7a 69 70 20 2d 74 76 20 66 69 6c 65 2e 6c 7a 0a 0a 0a tatus........lzip.-tv.file.lz...
1baa0 45 78 61 6d 70 6c 65 20 36 3a 20 43 6f 6d 70 72 65 73 73 20 61 20 77 68 6f 6c 65 20 64 65 76 69 Example.6:.Compress.a.whole.devi
1bac0 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 65 20 6f 75 74 70 ce.in./dev/sdc.and.send.the.outp
1bae0 75 74 20 74 6f 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 ut.to.'file.lz'..........lzip.-c
1bb00 20 2f 64 65 76 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 ./dev/sdc.>.file.lz......or.....
1bb20 20 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 0a 0a 0a 45 78 ...lzip./dev/sdc.-o.file.lz...Ex
1bb40 61 6d 70 6c 65 20 37 3a 20 54 68 65 20 72 69 67 68 74 20 77 61 79 20 6f 66 20 63 6f 6e 63 61 74 ample.7:.The.right.way.of.concat
1bb60 65 6e 61 74 69 6e 67 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 20 enating.the.decompressed.output.
1bb80 6f 66 20 74 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 of.two.or.more.compressed.files.
1bba0 20 2a 4e 6f 74 65 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 3a 3a 2e 0a 0a 20 20 20 20 20 44 6f .*Note.Trailing.data::........Do
1bbc0 6e 27 74 20 64 6f 20 74 68 69 73 0a 20 20 20 20 20 20 20 63 61 74 20 66 69 6c 65 31 2e 6c 7a 20 n't.do.this........cat.file1.lz.
1bbe0 66 69 6c 65 32 2e 6c 7a 20 66 69 6c 65 33 2e 6c 7a 20 7c 20 6c 7a 69 70 20 2d 64 20 2d 0a 20 20 file2.lz.file3.lz.|.lzip.-d.-...
1bc00 20 20 20 44 6f 20 74 68 69 73 20 69 6e 73 74 65 61 64 0a 20 20 20 20 20 20 20 6c 7a 69 70 20 2d ...Do.this.instead........lzip.-
1bc20 63 64 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 0a 0a cd.file1.lz.file2.lz.file3.lz...
1bc40 45 78 61 6d 70 6c 65 20 38 3a 20 44 65 63 6f 6d 70 72 65 73 73 20 27 66 69 6c 65 2e 6c 7a 27 20 Example.8:.Decompress.'file.lz'.
1bc60 70 61 72 74 69 61 6c 6c 79 20 75 6e 74 69 6c 20 31 30 20 4b 69 42 20 6f 66 20 64 65 63 6f 6d 70 partially.until.10.KiB.of.decomp
1bc80 72 65 73 73 65 64 20 64 61 74 61 0a 61 72 65 20 70 72 6f 64 75 63 65 64 2e 0a 0a 20 20 20 20 20 ressed.data.are.produced........
1bca0 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 6f lzip.-cd.file.lz.|.dd.bs=1024.co
1bcc0 75 6e 74 3d 31 30 0a 0a 0a 45 78 61 6d 70 6c 65 20 39 3a 20 44 65 63 6f 6d 70 72 65 73 73 20 27 unt=10...Example.9:.Decompress.'
1bce0 66 69 6c 65 2e 6c 7a 27 20 70 61 72 74 69 61 6c 6c 79 20 66 72 6f 6d 20 64 65 63 6f 6d 70 72 65 file.lz'.partially.from.decompre
1bd00 73 73 65 64 20 62 79 74 65 20 61 74 20 6f 66 66 73 65 74 0a 31 30 30 30 30 20 74 6f 20 64 65 63 ssed.byte.at.offset.10000.to.dec
1bd20 6f 6d 70 72 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 ompressed.byte.at.offset.14999.(
1bd40 35 30 30 30 20 62 79 74 65 73 20 61 72 65 20 70 72 6f 64 75 63 65 64 29 2e 0a 0a 20 20 20 20 20 5000.bytes.are.produced)........
1bd60 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
1bd80 69 70 3d 31 30 20 63 6f 75 6e 74 3d 35 0a 0a 0a 45 78 61 6d 70 6c 65 20 31 30 3a 20 43 72 65 61 ip=10.count=5...Example.10:.Crea
1bda0 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 74 61 72 20 te.a.multivolume.compressed.tar.
1bdc0 61 72 63 68 69 76 65 20 77 69 74 68 20 61 20 76 6f 6c 75 6d 65 20 73 69 7a 65 0a 6f 66 20 31 34 archive.with.a.volume.size.of.14
1bde0 34 30 20 4b 69 42 2e 0a 0a 20 20 20 20 20 74 61 72 20 2d 63 20 73 6f 6d 65 5f 64 69 72 65 63 74 40.KiB........tar.-c.some_direct
1be00 6f 72 79 20 7c 20 6c 7a 69 70 20 2d 53 20 31 34 34 30 4b 69 42 20 2d 6f 20 76 6f 6c 75 6d 65 5f ory.|.lzip.-S.1440KiB.-o.volume_
1be20 6e 61 6d 65 20 2d 0a 0a 0a 45 78 61 6d 70 6c 65 20 31 31 3a 20 45 78 74 72 61 63 74 20 61 20 6d name.-...Example.11:.Extract.a.m
1be40 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 20 61 72 63 68 69 76 ultivolume.compressed.tar.archiv
1be60 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 6e 61 6d 65 2a 2e 6c e........lzip.-cd.volume_name*.l
1be80 7a 20 7c 20 74 61 72 20 2d 78 66 20 2d 0a 0a 0a 45 78 61 6d 70 6c 65 20 31 32 3a 20 43 72 65 61 z.|.tar.-xf.-...Example.12:.Crea
1bea0 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 6b te.a.multivolume.compressed.back
1bec0 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 68 up.of.a.large.database.file.with
1bee0 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 77 68 65 72 65 20 .a.volume.size.of.650.MB,.where.
1bf00 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 72 20 66 69 6c each.volume.is.a.multimember.fil
1bf20 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 20 4d 69 42 2e 0a e.with.a.member.size.of.32.MiB..
1bf40 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 4d 42 20 62 69 67 ......lzip.-b.32MiB.-S.650MB.big
1bf60 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 6f 64 65 3a 20 50 _db....File:.lzip.info,..Node:.P
1bf80 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 73 6f 75 72 63 65 roblems,..Next:.Reference.source
1bfa0 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 70 3a 20 54 6f 70 .code,..Prev:.Examples,..Up:.Top
1bfc0 0a 0a 31 30 20 52 65 70 6f 72 74 69 6e 67 20 62 75 67 73 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ..10.Reporting.bugs.************
1bfe0 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 62 75 67 73 20 69 *****..There.are.probably.bugs.i
1c000 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 72 72 6f n.lzip..There.are.certainly.erro
1c020 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 61 6e 75 61 6c 2e rs.and.omissions.in.this.manual.
1c040 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 6c 20 67 .If.you.report.them,.they.will.g
1c060 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 0a 6f 6e 65 20 77 et.fixed..If.you.don't,.no.one.w
1c080 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 74 68 65 ill.ever.know.about.them.and.the
1c0a0 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 61 6c 6c 0a 65 74 y.will.remain.unfixed.for.all.et
1c0c0 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 20 49 66 20 79 6f ernity,.if.not.longer......If.yo
1c0e0 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
1c100 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 2d 62 75 67 40 6e d.electronic.mail.to.<lzip-bug@n
1c120 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 72 73 69 6f 6e 20 ongnu.org>..Include.the.version.
1c140 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 20 62 79 0a 72 75 number,.which.you.can.find.by.ru
1c160 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 0a 46 69 6c 65 3a nning.'lzip.--version'.....File:
1c180 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 63 65 20 73 6f 75 .lzip.info,..Node:.Reference.sou
1c1a0 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 6e 64 65 78 2c 20 rce.code,..Next:.Concept.index,.
1c1c0 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 0a 41 70 70 65 6e .Prev:.Problems,..Up:.Top..Appen
1c1e0 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 65 0a 2a 2a 2a 2a dix.A.Reference.source.code.****
1c200 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 0a 0a 2f 2a ****************************../*
1c220 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 65 73 73 6f 72 20 .Lzd.-.Educational.decompressor.
1c240 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 79 72 69 67 68 74 for.the.lzip.format....Copyright
1c260 20 28 43 29 20 32 30 31 33 2d 32 30 32 30 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a .(C).2013-2020.Antonio.Diaz.Diaz
1c280 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 20 73 6f 66 74 77 ......This.program.is.free.softw
1c2a0 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 65 20 69 6e 20 73 are..Redistribution.and.use.in.s
1c2c0 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 20 77 69 74 68 20 ource.and....binary.forms,.with.
1c2e0 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 72 65 20 70 65 72 or.without.modification,.are.per
1c300 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 65 20 66 6f 6c 6c mitted.provided....that.the.foll
1c320 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 0a 20 20 20 31 2e owing.conditions.are.met:.....1.
1c340 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 20 63 6f 64 65 20 .Redistributions.of.source.code.
1c360 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 72 69 67 68 74 0a must.retain.the.above.copyright.
1c380 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 6e 64 69 74 69 6f ...notice,.this.list.of.conditio
1c3a0 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 6c 61 69 6d 65 72 ns,.and.the.following.disclaimer
1c3c0 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 6e 20 62 69 6e 61 ......2..Redistributions.in.bina
1c3e0 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 20 61 62 6f 76 65 ry.form.must.reproduce.the.above
1c400 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 20 6c 69 73 74 20 .copyright....notice,.this.list.
1c420 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 6c 6f 77 69 6e 67 of.conditions,.and.the.following
1c440 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 6d 65 6e 74 61 74 .disclaimer.in.the....documentat
1c460 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 20 70 72 6f 76 69 ion.and/or.other.materials.provi
1c480 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 0a 0a 20 20 20 54 ded.with.the.distribution......T
1c4a0 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 20 69 6e 20 74 68 his.program.is.distributed.in.th
1c4c0 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 66 75 6c 2c 0a 20 e.hope.that.it.will.be.useful,..
1c4e0 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 3b 20 77 69 74 68 ..but.WITHOUT.ANY.WARRANTY;.with
1c500 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 6e 74 79 20 6f 66 out.even.the.implied.warranty.of
1c520 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 4e 45 53 53 20 46 ....MERCHANTABILITY.or.FITNESS.F
1c540 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 2f 0a 2f 2a 0a 20 OR.A.PARTICULAR.PURPOSE..*/./*..
1c560 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
1c580 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
1c5a0 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 66 6c 61 ....(file.not.found,.invalid.fla
1c5c0 67 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 20 69 6e 64 69 63 gs,.I/O.errors,.etc),.2.to.indic
1c5e0 61 74 65 20 61 0a 20 20 20 63 6f 72 72 75 70 74 20 6f 72 20 69 6e 76 61 6c 69 64 20 69 6e 70 75 ate.a....corrupt.or.invalid.inpu
1c600 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>
1c620 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
1c640 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
1c660 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>.#
1c680 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 28 5f include.<unistd.h>.#if.defined(_
1c6a0 5f 4d 53 56 43 52 54 5f 5f 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 5f 4f 53 32 5f 5f 29 20 7c _MSVCRT__).||.defined(__OS2__).|
1c6c0 7c 20 64 65 66 69 6e 65 64 28 5f 5f 44 4a 47 50 50 5f 5f 29 0a 23 69 6e 63 6c 75 64 65 20 3c 66 |.defined(__DJGPP__).#include.<f
1c6e0 63 6e 74 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 cntl.h>.#include.<io.h>.#endif..
1c700 0a 63 6c 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 .class.State...{...int.st;..publ
1c720 69 63 3a 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 ic:...enum.{.states.=.12.};...St
1c740 61 74 65 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 ate().:.st(.0.).{}...int.operato
1c760 72 28 29 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 r()().const.{.return.st;.}...boo
1c780 6c 20 69 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 l.is_char().const.{.return.st.<.
1c7a0 37 3b 20 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 7;.}....void.set_char().....{...
1c7c0 20 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 30 2c 20 ..const.int.next[states].=.{.0,.
1c7e0 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 20 35 20 0,.0,.0,.1,.2,.3,.4,.5,.6,.4,.5.
1c800 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 20 76 6f };.....st.=.next[st];.....}...vo
1c820 69 64 20 73 65 74 5f 6d 61 74 63 68 28 29 20 20 20 20 20 7b 20 73 74 20 3d 20 28 20 73 74 20 3c id.set_match().....{.st.=.(.st.<
1c840 20 37 20 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 .7.).?.7.:.10;.}...void.set_rep(
1c860 29 20 20 20 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 ).......{.st.=.(.st.<.7.).?.8.:.
1c880 31 31 3b 20 7d 0a 20 20 76 6f 69 64 20 73 65 74 5f 73 68 6f 72 74 5f 72 65 70 28 29 20 7b 20 73 11;.}...void.set_short_rep().{.s
1c8a0 74 20 3d 20 28 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 t.=.(.st.<.7.).?.9.:.11;.}...};.
1c8c0 0a 0a 65 6e 75 6d 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 ..enum.{...min_dictionary_size.=
1c8e0 20 31 20 3c 3c 20 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 .1.<<.12,...max_dictionary_size.
1c900 3d 20 31 20 3c 3c 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 =.1.<<.29,...literal_context_bit
1c920 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 62 69 74 73 20 s.=.3,...literal_pos_state_bits.
1c940 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 74 61 74 65 5f =.0,....//.not.used...pos_state_
1c960 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 3c 3c 20 70 6f bits.=.2,...pos_states.=.1.<<.po
1c980 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 61 73 6b 20 3d s_state_bits,...pos_state_mask.=
1c9a0 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 74 65 73 20 3d .pos_states.-.1,....len_states.=
1c9c0 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 73 74 61 72 74 .4,...dis_slot_bits.=.6,...start
1c9e0 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 6f 64 65 6c 20 _dis_model.=.4,...end_dis_model.
1ca00 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 20 31 20 3c 3c =.14,...modeled_distances.=.1.<<
1ca20 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 31 32 38 0a 20 .(.end_dis_model./.2.),.//.128..
1ca40 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 61 6c 69 67 6e .dis_align_bits.=.4,...dis_align
1ca60 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 2c 0a 0a 20 20 _size.=.1.<<.dis_align_bits,....
1ca80 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 5f 62 69 74 73 len_low_bits.=.3,...len_mid_bits
1caa0 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 20 20 6c 65 6e .=.3,...len_high_bits.=.8,...len
1cac0 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 5f 62 69 74 73 _low_symbols.=.1.<<.len_low_bits
1cae0 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 6c 65 6e 5f 6d ,...len_mid_symbols.=.1.<<.len_m
1cb00 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 20 3d 20 31 20 id_bits,...len_high_symbols.=.1.
1cb20 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 5f 73 79 6d 62 <<.len_high_bits,...max_len_symb
1cb40 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 5f 6d 69 64 5f ols.=.len_low_symbols.+.len_mid_
1cb60 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 0a 0a 20 20 6d symbols.+.len_high_symbols,....m
1cb80 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 73 74 20 62 65 in_match_len.=.2,.....//.must.be
1cba0 20 32 0a 0a 20 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 .2....bit_model_move_bits.=.5,..
1cbc0 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 62 69 .bit_model_total_bits.=.11,...bi
1cbe0 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 6f 64 65 6c 5f 74 t_model_total.=.1.<<.bit_model_t
1cc00 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 6f 64 65 6c 0a 20 otal_bits.};..struct.Bit_model..
1cc20 20 7b 0a 20 20 69 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 .{...int.probability;...Bit_mode
1cc40 6c 28 29 20 3a 20 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 l().:.probability(.bit_model_tot
1cc60 61 6c 20 2f 20 32 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 al./.2.).{}...};..struct.Len_mod
1cc80 65 6c 0a 20 20 7b 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 el...{...Bit_model.choice1;...Bi
1cca0 74 5f 6d 6f 64 65 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 t_model.choice2;...Bit_model.bm_
1ccc0 6c 6f 77 5b 70 6f 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 low[pos_states][len_low_symbols]
1cce0 3b 0a 20 20 42 69 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 ;...Bit_model.bm_mid[pos_states]
1cd00 5b 6c 65 6e 5f 6d 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 [len_mid_symbols];...Bit_model.b
1cd20 6d 5f 68 69 67 68 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 m_high[len_high_symbols];...};..
1cd40 0a 63 6c 61 73 73 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 .class.CRC32...{...uint32_t.data
1cd60 5b 32 35 36 5d 3b 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 [256];..//.Table.of.CRCs.of.all.
1cd80 38 2d 62 69 74 20 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 8-bit.messages...public:...CRC32
1cda0 28 29 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 6e 20 3d 20 30 ().....{.....for(.unsigned.n.=.0
1cdc0 3b 20 6e 20 3c 20 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 ;.n.<.256;.++n.).......{.......u
1cde0 6e 73 69 67 6e 65 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 nsigned.c.=.n;.......for(.int.k.
1ce00 3d 20 30 3b 20 6b 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 =.0;.k.<.8;.++k.).........{.if(.
1ce20 63 20 26 20 31 20 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 c.&.1.).c.=.0xEDB88320U.^.(.c.>>
1ce40 20 31 20 29 3b 20 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 .1.);.else.c.>>=.1;.}.......data
1ce60 5b 6e 5d 20 3d 20 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 [n].=.c;.......}.....}....void.u
1ce80 70 64 61 74 65 5f 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 pdate_buf(.uint32_t.&.crc,.const
1cea0 20 75 69 6e 74 38 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 .uint8_t.*.const.buffer,........
1cec0 20 20 20 20 20 20 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 ............const.int.size.).con
1cee0 73 74 0a 20 20 20 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 st.....{.....for(.int.i.=.0;.i.<
1cf00 20 73 69 7a 65 3b 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 .size;.++i.).......crc.=.data[(c
1cf20 72 63 5e 62 75 66 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 rc^buffer[i])&0xFF].^.(.crc.>>.8
1cf40 20 29 3b 0a 20 20 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 .);.....}...};..const.CRC32.crc3
1cf60 32 3b 0a 0a 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 2;...typedef.uint8_t.Lzip_header
1cf80 5b 36 5d 3b 09 09 2f 2f 20 30 2d 33 20 6d 61 67 69 63 20 62 79 74 65 73 0a 09 09 09 09 09 2f 2f [6];..//.0-3.magic.bytes......//
1cfa0 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 64 65 64 20 64 ...4.version......//...5.coded.d
1cfc0 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 0a 74 79 70 65 64 65 66 20 75 69 6e 74 38 5f 74 20 4c ictionary.size.typedef.uint8_t.L
1cfe0 7a 69 70 5f 74 72 61 69 6c 65 72 5b 32 30 5d 3b 0a 09 09 09 2f 2f 20 20 30 2d 33 20 20 43 52 43 zip_trailer[20];....//..0-3..CRC
1d000 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 09 2f 32.of.the.uncompressed.data..../
1d020 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 65 64 /..4-11.size.of.the.uncompressed
1d040 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 69 6e .data....//.12-19.member.size.in
1d060 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 63 6c 61 73 cluding.header.and.trailer..clas
1d080 73 20 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 s.Range_decoder...{...unsigned.l
1d0a0 6f 6e 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 ong.long.member_pos;...uint32_t.
1d0c0 63 6f 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 code;...uint32_t.range;..public:
1d0e0 0a 20 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 28 29 20 3a 20 6d 65 6d 62 65 72 5f 70 6f 73 28 ...Range_decoder().:.member_pos(
1d100 20 36 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 46 .6.),.code(.0.),.range(.0xFFFFFF
1d120 46 46 55 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 FFU.).....{.....for(.int.i.=.0;.
1d140 69 20 3c 20 35 3b 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 i.<.5;.++i.).code.=.(.code.<<.8.
1d160 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 38 5f 74 ).|.get_byte();.....}....uint8_t
1d180 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 65 74 75 .get_byte().{.++member_pos;.retu
1d1a0 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 73 69 67 rn.std::getc(.stdin.);.}...unsig
1d1c0 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 28 29 20 ned.long.long.member_position().
1d1e0 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 0a 20 20 const.{.return.member_pos;.}....
1d200 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 6d 5f 62 unsigned.decode(.const.int.num_b
1d220 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 20 its.).....{.....unsigned.symbol.
1d240 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 73 3b 20 =.0;.....for(.int.i.=.num_bits;.
1d260 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 6e 67 65 i.>.0;.--i.).......{.......range
1d280 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 20 20 20 .>>=.1;.......symbol.<<=.1;.....
1d2a0 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 2d 3d 20 ..if(.code.>=.range.).{.code.-=.
1d2c0 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 66 28 20 range;.symbol.|=.1;.}.......if(.
1d2e0 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 6f 72 6d range.<=.0x00FFFFFFU.)...//.norm
1d300 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 63 6f 64 alize.........{.range.<<=.8;.cod
1d320 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 29 3b 20 e.=.(.code.<<.8.).|.get_byte();.
1d340 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 20 20 20 }.......}.....return.symbol;....
1d360 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 64 65 63 6f 64 65 5f 62 69 74 28 20 42 69 74 5f 6d .}....unsigned.decode_bit(.Bit_m
1d380 6f 64 65 6c 20 26 20 62 6d 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 odel.&.bm.).....{.....unsigned.s
1d3a0 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 62 6f 75 6e 64 20 ymbol;.....const.uint32_t.bound.
1d3c0 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 61 6c 5f 62 69 74 =.(.range.>>.bit_model_total_bit
1d3e0 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 69 66 28 20 63 6f s.).*.bm.probability;.....if(.co
1d400 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 20 72 61 6e 67 65 de.<.bound.).......{.......range
1d420 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 74 79 20 2b .=.bound;.......bm.probability.+
1d440 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 2d 20 62 6d =.........(.bit_model_total.-.bm
1d460 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 6d 6f 76 65 .probability.).>>.bit_model_move
1d480 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 20 20 20 20 20 7d _bits;.......symbol.=.0;.......}
1d4a0 0a 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 72 61 6e 67 65 20 2d 3d .....else.......{.......range.-=
1d4c0 20 62 6f 75 6e 64 3b 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 .bound;.......code.-=.bound;....
1d4e0 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 6f 62 61 62 69 6c ...bm.probability.-=.bm.probabil
1d500 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 3b 0a 20 20 20 20 ity.>>.bit_model_move_bits;.....
1d520 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 69 66 28 20 72 61 ..symbol.=.1;.......}.....if(.ra
1d540 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 20 6e 6f 72 6d 61 nge.<=.0x00FFFFFFU.)....//.norma
1d560 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 63 6f 64 65 20 3d lize.......{.range.<<=.8;.code.=
1d580 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 20 7d 0a 20 .(.code.<<.8.).|.get_byte();.}..
1d5a0 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 75 6e 73 69 67 ...return.symbol;.....}....unsig
1d5c0 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 20 62 6d 5b 5d 2c ned.decode_tree(.Bit_model.bm[],
1d5e0 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 0a 20 20 20 20 .const.int.num_bits.).....{.....
1d600 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 72 28 20 69 6e unsigned.symbol.=.1;.....for(.in
1d620 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 20 29 0a 20 20 20 t.i.=.0;.i.<.num_bits;.++i.)....
1d640 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 20 64 65 ...symbol.=.(.symbol.<<.1.).|.de
1d660 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 20 20 72 65 74 75 code_bit(.bm[symbol].);.....retu
1d680 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 73 20 29 3b 0a 20 rn.symbol.-.(.1.<<.num_bits.);..
1d6a0 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 72 65 76 ...}....unsigned.decode_tree_rev
1d6c0 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 69 6e 74 ersed(.Bit_model.bm[],.const.int
1d6e0 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 64 20 73 .num_bits.).....{.....unsigned.s
1d700 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 75 6d 5f 62 69 74 ymbol.=.decode_tree(.bm,.num_bit
1d720 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 5f 73 79 6d 62 6f s.);.....unsigned.reversed_symbo
1d740 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 20 69 20 3c 20 6e l.=.0;.....for(.int.i.=.0;.i.<.n
1d760 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 20 20 20 72 65 76 um_bits;.++i.).......{.......rev
1d780 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 73 79 6d 62 6f 6c ersed_symbol.=.(.reversed_symbol
1d7a0 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 20 20 20 20 20 20 .<<.1.).|.(.symbol.&.1.);.......
1d7c0 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 72 65 74 75 72 6e symbol.>>=.1;.......}.....return
1d7e0 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 20 75 6e 73 69 67 .reversed_symbol;.....}....unsig
1d800 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 64 65 6c 20 62 6d ned.decode_matched(.Bit_model.bm
1d820 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 79 74 65 20 29 0a [],.const.unsigned.match_byte.).
1d840 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 20 ....{.....unsigned.symbol.=.1;..
1d860 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 20 2d 2d 69 20 29 ...for(.int.i.=.7;.i.>=.0;.--i.)
1d880 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6d 61 .......{.......const.unsigned.ma
1d8a0 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 26 20 tch_bit.=.(.match_byte.>>.i.).&.
1d8c0 31 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 62 69 74 20 3d 20 64 65 1;.......const.unsigned.bit.=.de
1d8e0 63 6f 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 code_bit(.bm[symbol+(match_bit<<
1d900 38 29 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 8)+0x100].);.......symbol.=.(.sy
1d920 6d 62 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 mbol.<<.1.).|.bit;.......if(.mat
1d940 63 68 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 ch_bit.!=.bit.).........{.......
1d960 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 0a 20 20 20 20 20 20 ..while(.symbol.<.0x100.).......
1d980 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 20 64 ....symbol.=.(.symbol.<<.1.).|.d
1d9a0 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 20 20 20 20 20 ecode_bit(.bm[symbol].);........
1d9c0 20 62 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 .break;.........}.......}.....re
1d9e0 74 75 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 turn.symbol.&.0xFF;.....}....uns
1da00 69 67 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 igned.decode_len(.Len_model.&.lm
1da20 2c 20 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 ,.const.int.pos_state.).....{...
1da40 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 31 20 29 20 3d ..if(.decode_bit(.lm.choice1.).=
1da60 3d 20 30 20 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 64 65 63 6f 64 65 5f 74 72 65 65 28 20 =.0.).......return.decode_tree(.
1da80 6c 6d 2e 62 6d 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 lm.bm_low[pos_state],.len_low_bi
1daa0 74 73 20 29 3b 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 ts.);.....if(.decode_bit(.lm.cho
1dac0 69 63 65 32 20 29 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 6c 65 6e 5f 6c ice2.).==.0.).......return.len_l
1dae0 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
1db00 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
1db20 5f 6d 69 64 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 6c 65 6e 5f 6c 6f 77 5f _mid_bits.);.....return.len_low_
1db40 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 20 2b 0a 20 20 20 20 symbols.+.len_mid_symbols.+.....
1db60 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 5f 68 69 67 68 2c 20 .......decode_tree(.lm.bm_high,.
1db80 6c 65 6e 5f 68 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 len_high_bits.);.....}...};...cl
1dba0 61 73 73 20 4c 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 ass.LZ_decoder...{...unsigned.lo
1dbc0 6e 67 20 6c 6f 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 ng.long.partial_data_pos;...Rang
1dbe0 65 5f 64 65 63 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 e_decoder.rdec;...const.unsigned
1dc00 20 64 69 63 74 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 .dictionary_size;...uint8_t.*.co
1dc20 6e 73 74 20 62 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 nst.buffer;.//.output.buffer...u
1dc40 6e 73 69 67 6e 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 nsigned.pos;...//.current.pos.in
1dc60 20 62 75 66 66 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 .buffer...unsigned.stream_pos;..
1dc80 2f 2f 20 66 69 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 //.first.byte.not.yet.written.to
1dca0 20 73 74 64 6f 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 .stdout...uint32_t.crc_;...bool.
1dcc0 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 74 61 28 pos_wrapped;....void.flush_data(
1dce0 29 3b 0a 0a 20 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 );....uint8_t.peek(.const.unsign
1dd00 65 64 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 69 66 ed.distance.).const.....{.....if
1dd20 28 20 70 6f 73 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 (.pos.>.distance.).return.buffer
1dd40 5b 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 69 66 28 20 70 6f [pos.-.distance.-.1];.....if(.po
1dd60 73 5f 77 72 61 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 s_wrapped.).return.buffer[dictio
1dd80 6e 61 72 79 5f 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 nary_size.+.pos.-.distance.-.1];
1dda0 0a 20 20 20 20 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 .....return.0;...//.prev_byte.of
1ddc0 20 66 69 72 73 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 .first.byte.....}....void.put_by
1dde0 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.).....{.....
1de00 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.>
1de20 3d 20 64 69 63 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 =.dictionary_size.).flush_data()
1de40 3b 0a 20 20 20 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 ;.....}..public:...explicit.LZ_d
1de60 65 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 5f 73 69 7a 65 ecoder(.const.unsigned.dict_size
1de80 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 6f 73 28 20 30 .).....:.....partial_data_pos(.0
1dea0 20 29 2c 0a 20 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 .),.....dictionary_size(.dict_si
1dec0 7a 65 20 29 2c 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 ze.),.....buffer(.new.uint8_t[di
1dee0 63 74 69 6f 6e 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 ctionary_size].),.....pos(.0.),.
1df00 20 20 20 20 73 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 ....stream_pos(.0.),.....crc_(.0
1df20 78 46 46 46 46 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 xFFFFFFFFU.),.....pos_wrapped(.f
1df40 61 6c 73 65 20 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 alse.).....{}....~LZ_decoder().{
1df60 20 64 65 6c 65 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 .delete[].buffer;.}....unsigned.
1df80 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 30 78 46 46 crc().const.{.return.crc_.^.0xFF
1dfa0 46 46 46 46 46 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 FFFFFFU;.}...unsigned.long.long.
1dfc0 64 61 74 61 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 data_position().const.....{.retu
1dfe0 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 20 75 rn.partial_data_pos.+.pos;.}...u
1e000 69 6e 74 38 5f 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 int8_t.get_byte().{.return.rdec.
1e020 67 65 74 5f 62 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 get_byte();.}...unsigned.long.lo
1e040 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 20 20 20 20 7b ng.member_position().const.....{
1e060 20 72 65 74 75 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 .return.rdec.member_position();.
1e080 7d 0a 0a 20 20 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 }....bool.decode_member();...};.
1e0a0 0a 0a 76 6f 69 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 ..void.LZ_decoder::flush_data().
1e0c0 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 29 0a 20 20 20 ..{...if(.pos.>.stream_pos.)....
1e0e0 20 7b 0a 20 20 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 .{.....const.unsigned.size.=.pos
1e100 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 64 61 74 65 5f .-.stream_pos;.....crc32.update_
1e120 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 70 6f 73 2c 20 buf(.crc_,.buffer.+.stream_pos,.
1e140 73 69 7a 65 20 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 size.);.....if(.std::fwrite(.buf
1e160 66 65 72 20 2b 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 fer.+.stream_pos,.1,.size,.stdou
1e180 74 20 29 20 21 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 t.).!=.size.).......{.std::fprin
1e1a0 74 66 28 20 73 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 tf(.stderr,."Write.error:.%s\n",
1e1c0 20 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 0a 20 20 20 20 20 .std::strerror(.errno.).);......
1e1e0 20 20 20 73 74 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 ...std::exit(.1.);.}.....if(.pos
1e200 20 3e 3d 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 7b 20 70 61 .>=.dictionary_size.).......{.pa
1e220 72 74 69 61 6c 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 rtial_data_pos.+=.pos;.pos.=.0;.
1e240 70 6f 73 5f 77 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 pos_wrapped.=.true;.}.....stream
1e260 5f 70 6f 73 20 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 _pos.=.pos;.....}...}...bool.LZ_
1e280 64 65 63 6f 64 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 decoder::decode_member().//.Retu
1e2a0 72 6e 73 20 66 61 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 rns.false.if.error...{...Bit_mod
1e2c0 65 6c 20 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 el.bm_literal[1<<literal_context
1e2e0 5f 62 69 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 _bits][0x300];...Bit_model.bm_ma
1e300 74 63 68 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 tch[State::states][pos_states];.
1e320 20 20 42 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 ..Bit_model.bm_rep[State::states
1e340 5d 3b 0a 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 ];...Bit_model.bm_rep0[State::st
1e360 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 31 5b 53 74 61 74 65 ates];...Bit_model.bm_rep1[State
1e380 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 65 70 32 5b 53 ::states];...Bit_model.bm_rep2[S
1e3a0 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 6c 65 tate::states];...Bit_model.bm_le
1e3c0 6e 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 n[State::states][pos_states];...
1e3e0 42 69 74 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 Bit_model.bm_dis_slot[len_states
1e400 5d 5b 31 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 ][1<<dis_slot_bits];...Bit_model
1e420 20 62 6d 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 .bm_dis[modeled_distances-end_di
1e440 73 5f 6d 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 s_model+1];...Bit_model.bm_align
1e460 5b 64 69 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 [dis_align_size];...Len_model.ma
1e480 74 63 68 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 tch_len_model;...Len_model.rep_l
1e4a0 65 6e 5f 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 en_model;...unsigned.rep0.=.0;..
1e4c0 2f 2f 20 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 //.rep[0-3].latest.four.distance
1e4e0 73 0a 20 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 s...unsigned.rep1.=.0;..//.used.
1e500 66 6f 72 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 for.efficient.coding.of...unsign
1e520 65 64 20 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 ed.rep2.=.0;..//.repeated.distan
1e540 63 65 73 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 ces...unsigned.rep3.=.0;...State
1e560 20 73 74 61 74 65 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 .state;....while(.!std::feof(.st
1e580 64 69 6e 20 29 20 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 din.).&&.!std::ferror(.stdin.).)
1e5a0 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.=
1e5c0 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
1e5e0 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
1e600 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.
1e620 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
1e640 74 65 72 61 6c 20 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 teral.byte.......const.uint8_t.p
1e660 72 65 76 5f 62 79 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 rev_byte.=.peek(.0.);.......cons
1e680 74 20 69 6e 74 20 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 t.int.literal_state.=.prev_byte.
1e6a0 3e 3e 20 28 20 38 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 >>.(.8.-.literal_context_bits.);
1e6c0 0a 20 20 20 20 20 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 .......Bit_model.*.const.bm.=.bm
1e6e0 5f 6c 69 74 65 72 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 _literal[literal_state];.......i
1e700 66 28 20 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 75 74 f(.state.is_char().).........put
1e720 5f 62 79 74 65 28 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 _byte(.rdec.decode_tree(.bm,.8.)
1e740 20 29 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 .);.......else.........put_byte(
1e760 20 72 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 .rdec.decode_matched(.bm,.peek(.
1e780 72 65 70 30 20 29 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 rep0.).).);.......state.set_char
1e7a0 28 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 7d 0a 20 20 20 20 ();.......continue;.......}.....
1e7c0 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 0a 20 20 20 20 69 //.match.or.repeated.match.....i
1e7e0 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 65 5f 62 69 74 28 nt.len;.....if(.rdec.decode_bit(
1e800 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 09 2f 2f 20 32 6e .bm_rep[state()].).!=.0.)..//.2n
1e820 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 65 63 2e 64 65 63 d.bit.......{.......if(.rdec.dec
1e840 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 29 20 3d 3d 20 30 ode_bit(.bm_rep0[state()].).==.0
1e860 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 20 20 20 20 20 20 .)..//.3rd.bit.........{........
1e880 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 65 6e 5b 73 74 61 .if(.rdec.decode_bit(.bm_len[sta
1e8a0 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 2f 2f 20 34 74 68 te()][pos_state].).==.0.).//.4th
1e8c0 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 5f 73 68 6f 72 74 .bit...........{.state.set_short
1e8e0 5f 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 30 20 29 20 29 _rep();.put_byte(.peek(.rep0.).)
1e900 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 20 65 6c ;.continue;.}.........}.......el
1e920 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 65 64 20 64 69 se.........{.........unsigned.di
1e940 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 63 6f 64 65 5f stance;.........if(.rdec.decode_
1e960 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 30 20 29 09 09 bit(.bm_rep1[state()].).==.0.)..
1e980 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 63 65 20 3d 20 //.4th.bit...........distance.=.
1e9a0 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 20 20 7b 0a 20 rep1;.........else...........{..
1e9c0 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 74 28 20 62 6d .........if(.rdec.decode_bit(.bm
1e9e0 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 35 74 68 20 62 _rep2[state()].).==.0.).//.5th.b
1ea00 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 65 70 32 3b 0a it.............distance.=.rep2;.
1ea20 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 20 64 69 73 ..........else.............{.dis
1ea40 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 7d 0a 20 20 20 tance.=.rep3;.rep3.=.rep2;.}....
1ea60 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 20 20 20 7d 0a .......rep2.=.rep1;...........}.
1ea80 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 20 20 72 65 70 ........rep1.=.rep0;.........rep
1eaa0 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 20 20 20 73 74 0.=.distance;.........}.......st
1eac0 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 6d 69 6e 5f 6d ate.set_rep();.......len.=.min_m
1eae0 61 74 63 68 5f 6c 65 6e 20 2b 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 6c 65 6e 28 20 72 65 70 5f atch_len.+.rdec.decode_len(.rep_
1eb00 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 20 7d 0a len_model,.pos_state.);.......}.
1eb20 20 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 7b 0a 20 20 ....else.....//.match.......{...
1eb40 20 20 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 ....rep3.=.rep2;.rep2.=.rep1;.re
1eb60 70 31 20 3d 20 72 65 70 30 3b 0a 20 20 20 20 20 20 6c 65 6e 20 3d 20 6d 69 6e 5f 6d 61 74 63 68 p1.=.rep0;.......len.=.min_match
1eb80 5f 6c 65 6e 20 2b 20 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 _len.+.rdec.decode_len(.match_le
1eba0 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 63 6f 6e 73 n_model,.pos_state.);.......cons
1ebc0 74 20 69 6e 74 20 6c 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 t.int.len_state.=.std::min(.len.
1ebe0 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 65 73 20 2d 20 31 20 -.min_match_len,.len_states.-.1.
1ec00 29 3b 0a 20 20 20 20 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 );.......rep0.=.rdec.decode_tree
1ec20 28 20 62 6d 5f 64 69 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 (.bm_dis_slot[len_state],.dis_sl
1ec40 6f 74 5f 62 69 74 73 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 ot_bits.);.......if(.rep0.>=.sta
1ec60 72 74 5f 64 69 73 5f 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 rt_dis_model.).........{........
1ec80 20 63 6f 6e 73 74 20 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 .const.unsigned.dis_slot.=.rep0;
1eca0 0a 20 20 20 20 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 .........const.int.direct_bits.=
1ecc0 20 28 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 20 20 20 20 .(.dis_slot.>>.1.).-.1;.........
1ece0 72 65 70 30 20 3d 20 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 rep0.=.(.2.|.(.dis_slot.&.1.).).
1ed00 3c 3c 20 64 69 72 65 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 <<.direct_bits;.........if(.dis_
1ed20 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 20 20 20 slot.<.end_dis_model.)..........
1ed40 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 76 65 72 73 .rep0.+=.rdec.decode_tree_revers
1ed60 65 64 28 20 62 6d 5f 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 ed(.bm_dis.+.(.rep0.-.dis_slot.)
1ed80 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 ,...............................
1eda0 20 20 20 20 20 20 20 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 ...............direct_bits.);...
1edc0 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 20 ......else...........{..........
1ede0 20 72 65 70 30 20 2b 3d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 64 65 63 2e 64 65 63 6f 64 65 .rep0.+=.............rdec.decode
1ee00 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 5f 62 69 74 73 20 29 (.direct_bits.-.dis_align_bits.)
1ee20 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
1ee40 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(
1ee60 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.);....
1ee80 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.)
1eea0 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.............{.
1eec0 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();.......
1eee0 20 20 20 20 20 20 72 65 74 75 72 6e 20 28 20 6c 65 6e 20 3d 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f ......return.(.len.==.min_match_
1ef00 6c 65 6e 20 29 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 len.);.//.End.Of.Stream.marker..
1ef20 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 20 20 ...........}...........}........
1ef40 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 20 20 20 20 .}.......state.set_match();.....
1ef60 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 65 20 7c 7c ..if(.rep0.>=.dictionary_size.||
1ef80 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 65 64 20 29 .(.rep0.>=.pos.&&.!pos_wrapped.)
1efa0 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 65 74 75 72 .).........{.flush_data();.retur
1efc0 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 72 28 20 69 6e 74 20 n.false;.}.......}.....for(.int.
1efe0 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 5f 62 79 74 65 28 20 i.=.0;.i.<.len;.++i.).put_byte(.
1f000 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 6c 75 73 68 5f 64 61 peek(.rep0.).);.....}...flush_da
1f020 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 0a 0a 0a 69 6e 74 20 ta();...return.false;...}...int.
1f040 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 63 68 61 72 main(.const.int.argc,.const.char
1f060 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 66 28 20 61 72 67 63 .*.const.argv[].)...{...if(.argc
1f080 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 64 3a 3a 73 74 72 63 .>.2.||.(.argc.==.2.&&.std::strc
1f0a0 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 29 20 29 0a 20 20 20 mp(.argv[1],."-d".).!=.0.).)....
1f0c0 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 20 22 4c 7a 64 20 25 .{.....std::printf(......."Lzd.%
1f0e0 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 73 6f 72 20 66 6f 72 s.-.Educational.decompressor.for
1f100 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 20 20 22 53 74 75 64 .the.lzip.format.\n"......."Stud
1f120 79 20 74 68 65 20 73 6f 75 72 63 65 20 74 6f 20 6c 65 61 72 6e 20 68 6f 77 20 61 20 6c 7a 69 70 y.the.source.to.learn.how.a.lzip
1f140 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 53 .decompressor.works.\n"......."S
1f160 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 6e ee.the.lzip.manual.for.an.explan
1f180 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 55 ation.of.the.code.\n"......."\nU
1f1a0 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 6e sage:.%s.[-d].<.file.lz.>.file\n
1f1c0 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 73 "......."Lzd.decompresses.from.s
1f1e0 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 74 tandard.input.to.standard.output
1f200 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 30 .\n"......."\nCopyright.(C).2020
1f220 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 69 .Antonio.Diaz.Diaz.\n"......."Li
1f240 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 68 cense.2-clause.BSD.\n"......."Th
1f260 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 65 is.is.free.software:.you.are.fre
1f280 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 69 74 2e e.to.change.and.redistribute.it.
1f2a0 5c 6e 22 0a 20 20 20 20 20 20 22 54 68 65 72 65 20 69 73 20 4e 4f 20 57 41 52 52 41 4e 54 59 2c \n"......."There.is.NO.WARRANTY,
1f2c0 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 2e .to.the.extent.permitted.by.law.
1f2e0 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 62 \n"......."Report.bugs.to.lzip-b
1f300 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 65 ug@nongnu.org\n"......."Lzd.home
1f320 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 69 .page:.http://www.nongnu.org/lzi
1f340 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 4e p/lzd.html\n",.......PROGVERSION
1f360 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 7d ,.argv[0].);.....return.0;.....}
1f380 0a 0a 23 69 66 20 64 65 66 69 6e 65 64 28 5f 5f 4d 53 56 43 52 54 5f 5f 29 20 7c 7c 20 64 65 66 ..#if.defined(__MSVCRT__).||.def
1f3a0 69 6e 65 64 28 5f 5f 4f 53 32 5f 5f 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 5f 44 4a 47 50 50 ined(__OS2__).||.defined(__DJGPP
1f3c0 5f 5f 29 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 __)...setmode(.STDIN_FILENO,.O_B
1f3e0 49 4e 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 INARY.);...setmode(.STDOUT_FILEN
1f400 4f 2c 20 4f 5f 42 49 4e 41 52 59 20 29 3b 0a 23 65 6e 64 69 66 0a 0a 20 20 66 6f 72 28 20 62 6f O,.O_BINARY.);.#endif....for(.bo
1f420 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 73 74 5f ol.first_member.=.true;.;.first_
1f440 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 69 70 5f member.=.false.).....{.....Lzip_
1f460 68 65 61 64 65 72 20 68 65 61 64 65 72 3b 09 09 09 09 2f 2f 20 76 65 72 69 66 79 20 68 65 61 64 header.header;....//.verify.head
1f480 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 36 3b 20 2b 2b er.....for(.int.i.=.0;.i.<.6;.++
1f4a0 69 20 29 20 68 65 61 64 65 72 5b 69 5d 20 3d 20 73 74 64 3a 3a 67 65 74 63 28 20 73 74 64 69 6e i.).header[i].=.std::getc(.stdin
1f4c0 20 29 3b 0a 20 20 20 20 69 66 28 20 73 74 64 3a 3a 66 65 6f 66 28 20 73 74 64 69 6e 20 29 20 7c .);.....if(.std::feof(.stdin.).|
1f4e0 7c 20 73 74 64 3a 3a 6d 65 6d 63 6d 70 28 20 68 65 61 64 65 72 2c 20 22 4c 5a 49 50 5c 78 30 31 |.std::memcmp(.header,."LZIP\x01
1f500 22 2c 20 35 20 29 20 21 3d 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 ",.5.).!=.0.).......{.......if(.
1f520 66 69 72 73 74 5f 6d 65 6d 62 65 72 20 29 0a 20 20 20 20 20 20 20 20 7b 20 73 74 64 3a 3a 66 70 first_member.).........{.std::fp
1f540 75 74 73 28 20 22 42 61 64 20 6d 61 67 69 63 20 6e 75 6d 62 65 72 20 28 66 69 6c 65 20 6e 6f 74 uts(."Bad.magic.number.(file.not
1f560 20 69 6e 20 6c 7a 69 70 20 66 6f 72 6d 61 74 29 2e 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 .in.lzip.format).\n",...........
1f580 20 20 20 20 20 20 20 20 20 20 20 20 73 74 64 65 72 72 20 29 3b 20 72 65 74 75 72 6e 20 32 3b 20 ............stderr.);.return.2;.
1f5a0 7d 0a 20 20 20 20 20 20 62 72 65 61 6b 3b 09 09 09 09 09 2f 2f 20 69 67 6e 6f 72 65 20 74 72 61 }.......break;.....//.ignore.tra
1f5c0 69 6c 69 6e 67 20 64 61 74 61 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 iling.data.......}.....unsigned.
1f5e0 64 69 63 74 5f 73 69 7a 65 20 3d 20 31 20 3c 3c 20 28 20 68 65 61 64 65 72 5b 35 5d 20 26 20 30 dict_size.=.1.<<.(.header[5].&.0
1f600 78 31 46 20 29 3b 0a 20 20 20 20 64 69 63 74 5f 73 69 7a 65 20 2d 3d 20 28 20 64 69 63 74 5f 73 x1F.);.....dict_size.-=.(.dict_s
1f620 69 7a 65 20 2f 20 31 36 20 29 20 2a 20 28 20 28 20 68 65 61 64 65 72 5b 35 5d 20 3e 3e 20 35 20 ize./.16.).*.(.(.header[5].>>.5.
1f640 29 20 26 20 37 20 29 3b 0a 20 20 20 20 69 66 28 20 64 69 63 74 5f 73 69 7a 65 20 3c 20 6d 69 6e ).&.7.);.....if(.dict_size.<.min
1f660 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 7c 7c 20 64 69 63 74 5f 73 69 7a 65 20 3e 20 _dictionary_size.||.dict_size.>.
1f680 6d 61 78 5f 64 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 73 74 max_dictionary_size.).......{.st
1f6a0 64 3a 3a 66 70 75 74 73 28 20 22 49 6e 76 61 6c 69 64 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 d::fputs(."Invalid.dictionary.si
1f6c0 7a 65 20 69 6e 20 6d 65 6d 62 65 72 20 68 65 61 64 65 72 2e 5c 6e 22 2c 20 73 74 64 65 72 72 20 ze.in.member.header.\n",.stderr.
1f6e0 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 32 3b 20 7d 0a 0a 20 20 20 20 4c 5a 5f 64 );.........return.2;.}......LZ_d
1f700 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 09 2f 2f ecoder.decoder(.dict_size.);..//
1f720 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 64 65 63 .decode.LZMA.stream.....if(.!dec
1f740 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 7b 20 73 oder.decode_member().).......{.s
1f760 74 64 3a 3a 66 70 75 74 73 28 20 22 44 61 74 61 20 65 72 72 6f 72 5c 6e 22 2c 20 73 74 64 65 72 td::fputs(."Data.error\n",.stder
1f780 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 72 61 69 6c r.);.return.2;.}......Lzip_trail
1f7a0 65 72 20 74 72 61 69 6c 65 72 3b 09 09 09 2f 2f 20 76 65 72 69 66 79 20 74 72 61 69 6c 65 72 0a er.trailer;...//.verify.trailer.
1f7c0 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 32 30 3b 20 2b 2b 69 20 ....for(.int.i.=.0;.i.<.20;.++i.
1f7e0 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 65 28 ).trailer[i].=.decoder.get_byte(
1f800 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 69 67 );.....int.retval.=.0;.....unsig
1f820 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 33 3b ned.crc.=.0;.....for(.int.i.=.3;
1f840 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 38 20 .i.>=.0;.--i.).crc.=.(.crc.<<.8.
1f860 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 20 64 ).+.trailer[i];.....if(.crc.!=.d
1f880 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 75 74 ecoder.crc().).......{.std::fput
1f8a0 73 28 20 22 43 52 43 20 6d 69 73 6d 61 74 63 68 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 3b 20 72 s(."CRC.mismatch\n",.stderr.);.r
1f8c0 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 6e 67 20 etval.=.2;.}......unsigned.long.
1f8e0 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 69 6e 74 long.data_size.=.0;.....for(.int
1f900 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 64 61 74 .i.=.11;.i.>=.4;.--i.).......dat
1f920 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 20 74 72 a_size.=.(.data_size.<<.8.).+.tr
1f940 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 3d 20 64 ailer[i];.....if(.data_size.!=.d
1f960 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 20 20 7b ecoder.data_position().).......{
1f980 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 74 63 68 .std::fputs(."Data.size.mismatch
1f9a0 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 0a 20 20 \n",.stderr.);.retval.=.2;.}....
1f9c0 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 65 ..unsigned.long.long.member_size
1f9e0 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 3d 20 .=.0;.....for(.int.i.=.19;.i.>=.
1fa00 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 28 20 12;.--i.).......member_size.=.(.
1fa20 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 5d 3b member_size.<<.8.).+.trailer[i];
1fa40 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 72 2e .....if(.member_size.!=.decoder.
1fa60 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 64 3a member_position().).......{.std:
1fa80 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 5c 6e 22 :fputs(."Member.size.mismatch\n"
1faa0 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 20 69 66 ,.stderr.);.retval.=.2;.}.....if
1fac0 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 20 7d 0a (.retval.).return.retval;.....}.
1fae0 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 21 3d 20 ...if(.std::fclose(.stdout.).!=.
1fb00 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 72 2c 20 0.).....{.std::fprintf(.stderr,.
1fb20 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 0a 20 20 "Error.closing.stdout:.%s\n",...
1fb40 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 6f 72 28 ..................std::strerror(
1fb60 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 72 65 74 75 72 6e .errno.).);.return.1;.}...return
1fb80 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 64 .0;...}....File:.lzip.info,..Nod
1fba0 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 6e e:.Concept.index,..Prev:.Referen
1fbc0 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 70 ce.source.code,..Up:.Top..Concep
1fbe0 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 00 t.index.*************....[index.
1fc00 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 20 .].*.Menu:..*.algorithm:........
1fc20 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 20 .....................Algorithm..
1fc40 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 62 75 67 73 3a ................(line.6).*.bugs:
1fc60 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 ................................
1fc80 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 6c 69 ..Problems...................(li
1fca0 6e 65 20 36 29 0a 2a 20 65 78 61 6d 70 6c 65 73 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ne.6).*.examples:...............
1fcc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78 61 6d 70 6c 65 73 2e 20 20 20 20 20 20 20 20 ...............Examples.........
1fce0 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 66 69 6c 65 20 66 6f 72 6d 61 74 ..........(line.6).*.file.format
1fd00 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 20 20 46 69 6c 65 :...........................File
1fd20 20 66 6f 72 6d 61 74 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a .format................(line.6).
1fd40 2a 20 66 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 3a 20 20 20 20 *.format.of.the.LZMA.stream:....
1fd60 20 20 20 20 20 20 20 20 20 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 2e 20 20 20 20 20 20 20 20 20 .........Stream.format..........
1fd80 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 67 65 74 74 69 6e 67 20 68 65 6c 70 3a 20 20 20 20 ....(line.6).*.getting.help:....
1fda0 20 20 20 20 20 20 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 ......................Problems..
1fdc0 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 69 6e 74 72 .................(line.6).*.intr
1fde0 6f 64 75 63 74 69 6f 6e 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 oduction:.......................
1fe00 20 20 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c ...Introduction...............(l
1fe20 69 6e 65 20 36 29 0a 2a 20 69 6e 76 6f 6b 69 6e 67 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ine.6).*.invoking:..............
1fe40 20 20 20 20 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 ................Invoking.lzip...
1fe60 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 6f 70 74 69 6f 6e 73 3a 20 20 ...........(line.6).*.options:..
1fe80 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 76 .............................Inv
1fea0 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 29 oking.lzip..............(line.6)
1fec0 0a 2a 20 6f 75 74 70 75 74 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .*.output:......................
1fee0 20 20 20 20 20 20 20 20 20 20 4f 75 74 70 75 74 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........Output................
1ff00 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 71 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 .....(line.6).*.quality.assuranc
1ff20 65 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 51 75 61 6c 69 74 79 20 61 e:.....................Quality.a
1ff40 73 73 75 72 61 6e 63 65 2e 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 72 65 66 ssurance..........(line.6).*.ref
1ff60 65 72 65 6e 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 erence.source.code:.............
1ff80 20 20 20 20 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 20 20 20 20 28 ....Reference.source.code......(
1ffa0 6c 69 6e 65 20 36 29 0a 2a 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 3a 20 20 20 20 20 20 20 20 line.6).*.trailing.data:........
1ffc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 2e 20 .................Trailing.data..
1ffe0 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 2a 20 75 73 61 67 65 3a 20 20 20 ............(line.6).*.usage:...
20000 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
20020 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
20040 29 0a 2a 20 76 65 72 73 69 6f 6e 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ).*.version:....................
20060 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........
20080 20 20 20 20 20 20 28 6c 69 6e 65 20 36 29 0a 0a 0a 1f 0a 54 61 67 20 54 61 62 6c 65 3a 0a 4e 6f ......(line.6).....Tag.Table:.No
200a0 64 65 3a 20 54 6f 70 7f 32 30 38 0a 4e 6f 64 65 3a 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 7f 31 de:.Top.208.Node:.Introduction.1
200c0 32 30 33 0a 4e 6f 64 65 3a 20 4f 75 74 70 75 74 7f 36 35 30 38 0a 4e 6f 64 65 3a 20 49 6e 76 6f 203.Node:.Output.6508.Node:.Invo
200e0 6b 69 6e 67 20 6c 7a 69 70 7f 38 31 30 33 0a 52 65 66 3a 20 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 king.lzip.8103.Ref:.--trailing-e
20100 72 72 6f 72 7f 38 38 39 32 0a 4e 6f 64 65 3a 20 51 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 rror.8892.Node:.Quality.assuranc
20120 65 7f 31 37 38 39 31 0a 4e 6f 64 65 3a 20 46 69 6c 65 20 66 6f 72 6d 61 74 7f 32 36 34 39 35 0a e.17891.Node:.File.format.26495.
20140 52 65 66 3a 20 63 6f 64 65 64 2d 64 69 63 74 2d 73 69 7a 65 7f 32 37 37 38 35 0a 4e 6f 64 65 3a Ref:.coded-dict-size.27785.Node:
20160 20 41 6c 67 6f 72 69 74 68 6d 7f 32 38 39 32 31 0a 4e 6f 64 65 3a 20 53 74 72 65 61 6d 20 66 6f .Algorithm.28921.Node:.Stream.fo
20180 72 6d 61 74 7f 33 32 33 32 31 0a 52 65 66 3a 20 77 68 61 74 2d 69 73 2d 63 6f 64 65 64 7f 33 34 rmat.32321.Ref:.what-is-coded.34
201a0 36 39 30 0a 4e 6f 64 65 3a 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 7f 34 33 35 36 31 0a 4e 6f 690.Node:.Trailing.data.43561.No
201c0 64 65 3a 20 45 78 61 6d 70 6c 65 73 7f 34 35 38 32 32 0a 52 65 66 3a 20 63 6f 6e 63 61 74 2d 65 de:.Examples.45822.Ref:.concat-e
201e0 78 61 6d 70 6c 65 7f 34 37 34 32 32 0a 4e 6f 64 65 3a 20 50 72 6f 62 6c 65 6d 73 7f 34 38 34 38 xample.47422.Node:.Problems.4848
20200 35 0a 4e 6f 64 65 3a 20 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 7f 34 39 5.Node:.Reference.source.code.49
20220 30 31 37 0a 4e 6f 64 65 3a 20 43 6f 6e 63 65 70 74 20 69 6e 64 65 78 7f 36 33 38 38 31 0a 1f 0a 017.Node:.Concept.index.63881...
20240 45 6e 64 20 54 61 67 20 54 61 62 6c 65 0a 0a 1f 0a 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 End.Tag.Table....Local.Variables
20260 3a 0a 63 6f 64 69 6e 67 3a 20 69 73 6f 2d 38 38 35 39 2d 31 35 0a 45 6e 64 3a 0a 00 00 00 00 00 :.coding:.iso-8859-15.End:......
20280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
202a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
202c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
202e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
203a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
203c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
203e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20400 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 64 6f 63 2f 6c 7a 69 70 2e 74 65 78 69 00 00 00 00 00 lzip-1.22-rc2/doc/lzip.texi.....
20420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20460 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
20480 30 31 37 35 32 30 31 00 31 33 36 37 33 34 34 36 34 30 36 00 30 30 31 34 32 37 37 00 30 00 00 00 0175201.13673446406.0014277.0...
204a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
204c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
204e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20500 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...................
20520 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...................
20540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
205a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
205c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
205e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20600 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-*-.
20620 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
20640 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
20660 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
20680 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..
206a0 40 73 65 74 20 55 50 44 41 54 45 44 20 32 30 20 4a 75 6e 65 20 32 30 32 30 0a 40 73 65 74 20 56 @set.UPDATED.20.June.2020.@set.V
206c0 45 52 53 49 4f 4e 20 31 2e 32 32 2d 72 63 32 0a 0a 40 64 69 72 63 61 74 65 67 6f 72 79 20 44 61 ERSION.1.22-rc2..@dircategory.Da
206e0 74 61 20 43 6f 6d 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 ta.Compression.@direntry.*.Lzip:
20700 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
20720 73 73 6c 65 73 73 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 ssless.data.compressor.@end.dire
20740 6e 74 72 79 0a 0a 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 ntry...@ifnothtml.@titlepage.@ti
20760 74 6c 65 20 4c 7a 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 tle.Lzip.@subtitle.LZMA.lossless
20780 20 64 61 74 61 20 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 .data.compressor.@subtitle.for.L
207a0 7a 69 70 20 76 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 zip.version.@value{VERSION},.@va
207c0 6c 75 65 7b 55 50 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 lue{UPDATED}.@author.by.Antonio.
207e0 44 69 61 7a 20 44 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 Diaz.Diaz..@page.@vskip.0pt.plus
20800 20 31 66 69 6c 6c 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 .1filll.@end.titlepage..@content
20820 73 0a 40 65 6e 64 20 69 66 6e 6f 74 68 74 6d 6c 0a 0a 40 6e 6f 64 65 20 54 6f 70 0a 40 74 6f 70 s.@end.ifnothtml..@node.Top.@top
20840 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 73 69 ..This.manual.is.for.Lzip.(versi
20860 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 44 41 54 on.@value{VERSION},.@value{UPDAT
20880 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 3a 20 20 20 ED})...@menu.*.Introduction::...
208a0 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 20 6f 66 20 ........Purpose.and.features.of.
208c0 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 20 20 20 20 lzip.*.Output::.................
208e0 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 6e 76 6f 6b Meaning.of.lzip's.output.*.Invok
20900 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 20 6c 69 6e 65 ing.lzip::..........Command.line
20920 20 69 6e 74 65 72 66 61 63 65 0a 2a 20 51 75 61 6c 69 74 79 20 61 73 73 75 72 61 6e 63 65 3a 3a .interface.*.Quality.assurance::
20940 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 20 61 6e 64 20 74 65 ......Design,.development.and.te
20960 73 74 69 6e 67 20 6f 66 20 6c 7a 69 70 0a 2a 20 46 69 6c 65 20 66 6f 72 6d 61 74 3a 3a 20 20 20 sting.of.lzip.*.File.format::...
20980 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 6f 66 20 74 68 65 20 .........Detailed.format.of.the.
209a0 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 0a 2a 20 41 6c 67 6f 72 69 74 68 6d 3a 3a 20 20 20 compressed.file.*.Algorithm::...
209c0 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 65 73 20 74 ...........How.lzip.compresses.t
209e0 68 65 20 64 61 74 61 0a 2a 20 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 3a 3a 20 20 20 20 20 20 20 he.data.*.Stream.format::.......
20a00 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 6d 20 69 6e 20 ...Format.of.the.LZMA.stream.in.
20a20 6c 7a 69 70 20 66 69 6c 65 73 0a 2a 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 3a 3a 20 20 20 20 lzip.files.*.Trailing.data::....
20a40 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 65 ......Extra.data.appended.to.the
20a60 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 20 .file.*.Examples::..............
20a80 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 0a .A.small.tutorial.with.examples.
20aa0 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 72 *.Problems::...............Repor
20ac0 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 64 ting.bugs.*.Reference.source.cod
20ae0 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 74 e::..Source.code.illustrating.st
20b00 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 20 ream.format.*.Concept.index::...
20b20 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 40 65 6e 64 20 6d 65 .......Index.of.concepts.@end.me
20b40 6e 75 0a 0a 40 73 70 20 31 0a 43 6f 70 79 72 69 67 68 74 20 40 63 6f 70 79 72 69 67 68 74 7b 7d nu..@sp.1.Copyright.@copyright{}
20b60 20 32 30 30 38 2d 32 30 32 30 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a 20 44 69 61 7a 2e 0a 0a 54 .2008-2020.Antonio.Diaz.Diaz...T
20b80 68 69 73 20 6d 61 6e 75 61 6c 20 69 73 20 66 72 65 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e his.manual.is.free.documentation
20ba0 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 69 73 73 69 6f 6e 20 :.you.have.unlimited.permission.
20bc0 74 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 to.copy,.distribute,.and.modify.
20be0 69 74 2e 0a 0a 0a 40 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 it....@node.Introduction.@chapte
20c00 72 20 49 6e 74 72 6f 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 r.Introduction.@cindex.introduct
20c20 69 6f 6e 0a 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 ion..@uref{http://www.nongnu.org
20c40 2f 6c 7a 69 70 2f 6c 7a 69 70 2e 68 74 6d 6c 2c 2c 4c 7a 69 70 7d 20 69 73 20 61 20 6c 6f 73 73 /lzip/lzip.html,,Lzip}.is.a.loss
20c60 6c 65 73 73 20 64 61 74 61 0a 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
20c80 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 20 6f 66 .interface.similar.to.the.one.of
20ca0 20 67 7a 69 70 20 6f 72 20 62 7a 69 70 32 2e 20 4c 7a 69 70 0a 75 73 65 73 20 61 20 73 69 6d 70 .gzip.or.bzip2..Lzip.uses.a.simp
20cc0 6c 69 66 69 65 64 20 66 6f 72 6d 20 6f 66 20 74 68 65 20 27 4c 65 6d 70 65 6c 2d 5a 69 76 2d 4d lified.form.of.the.'Lempel-Ziv-M
20ce0 61 72 6b 6f 76 20 63 68 61 69 6e 2d 41 6c 67 6f 72 69 74 68 6d 27 20 28 4c 5a 4d 41 29 0a 73 74 arkov.chain-Algorithm'.(LZMA).st
20d00 72 65 61 6d 20 66 6f 72 6d 61 74 2c 20 63 68 6f 73 65 6e 20 74 6f 20 6d 61 78 69 6d 69 7a 65 20 ream.format,.chosen.to.maximize.
20d20 73 61 66 65 74 79 20 61 6e 64 20 69 6e 74 65 72 6f 70 65 72 61 62 69 6c 69 74 79 2e 20 4c 7a 69 safety.and.interoperability..Lzi
20d40 70 20 63 61 6e 0a 63 6f 6d 70 72 65 73 73 20 61 62 6f 75 74 20 61 73 20 66 61 73 74 20 61 73 20 p.can.compress.about.as.fast.as.
20d60 67 7a 69 70 20 40 77 7b 28 6c 7a 69 70 20 2d 30 29 7d 20 6f 72 20 63 6f 6d 70 72 65 73 73 20 6d gzip.@w{(lzip.-0)}.or.compress.m
20d80 6f 73 74 20 66 69 6c 65 73 20 6d 6f 72 65 0a 74 68 61 6e 20 62 7a 69 70 32 20 40 77 7b 28 6c 7a ost.files.more.than.bzip2.@w{(lz
20da0 69 70 20 2d 39 29 7d 2e 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 73 70 65 65 64 20 69 73 20 ip.-9)}..Decompression.speed.is.
20dc0 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 0a 61 6e 64 20 62 7a intermediate.between.gzip.and.bz
20de0 69 70 32 2e 20 4c 7a 69 70 20 69 73 20 62 65 74 74 65 72 20 74 68 61 6e 20 67 7a 69 70 20 61 6e ip2..Lzip.is.better.than.gzip.an
20e00 64 20 62 7a 69 70 32 20 66 72 6f 6d 20 61 20 64 61 74 61 20 72 65 63 6f 76 65 72 79 0a 70 65 72 d.bzip2.from.a.data.recovery.per
20e20 73 70 65 63 74 69 76 65 2e 20 4c 7a 69 70 20 68 61 73 20 62 65 65 6e 20 64 65 73 69 67 6e 65 64 spective..Lzip.has.been.designed
20e40 2c 20 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 ,.written,.and.tested.with.great
20e60 20 63 61 72 65 20 74 6f 0a 72 65 70 6c 61 63 65 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 20 .care.to.replace.gzip.and.bzip2.
20e80 61 73 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 20 as.the.standard.general-purpose.
20ea0 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 74 20 66 6f 72 0a 75 6e 69 78 2d 6c 69 6b 65 20 compressed.format.for.unix-like.
20ec0 73 79 73 74 65 6d 73 2e 0a 0a 54 68 65 20 6c 7a 69 70 20 66 69 6c 65 20 66 6f 72 6d 61 74 20 69 systems...The.lzip.file.format.i
20ee0 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 67 20 61 6e 64 20 s.designed.for.data.sharing.and.
20f00 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 67 20 69 6e 74 6f long-term.archiving,.taking.into
20f20 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 74 79 20 61 6e 64 .account.both.data.integrity.and
20f40 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 74 65 6d 69 7a 65 .decoder.availability:..@itemize
20f60 20 40 62 75 6c 6c 65 74 0a 40 69 74 65 6d 0a 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 70 .@bullet.@item.The.lzip.format.p
20f80 72 6f 76 69 64 65 73 20 76 65 72 79 20 73 61 66 65 20 69 6e 74 65 67 72 69 74 79 20 63 68 65 63 rovides.very.safe.integrity.chec
20fa0 6b 69 6e 67 20 61 6e 64 20 73 6f 6d 65 20 64 61 74 61 0a 72 65 63 6f 76 65 72 79 20 6d 65 61 6e king.and.some.data.recovery.mean
20fc0 73 2e 20 54 68 65 20 70 72 6f 67 72 61 6d 0a 40 75 72 65 66 7b 68 74 74 70 3a 2f 2f 77 77 77 2e s..The.program.@uref{http://www.
20fe0 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 69 70 72 65 63 6f 76 nongnu.org/lzip/manual/lziprecov
21000 65 72 5f 6d 61 6e 75 61 6c 2e 68 74 6d 6c 23 44 61 74 61 2d 73 61 66 65 74 79 2c 2c 6c 7a 69 70 er_manual.html#Data-safety,,lzip
21020 72 65 63 6f 76 65 72 7d 0a 63 61 6e 20 72 65 70 61 69 72 20 62 69 74 20 66 6c 69 70 20 65 72 72 recover}.can.repair.bit.flip.err
21040 6f 72 73 20 28 6f 6e 65 20 6f 66 20 74 68 65 20 6d 6f 73 74 20 63 6f 6d 6d 6f 6e 20 66 6f 72 6d ors.(one.of.the.most.common.form
21060 73 20 6f 66 20 64 61 74 61 20 63 6f 72 72 75 70 74 69 6f 6e 29 0a 69 6e 20 6c 7a 69 70 20 66 69 s.of.data.corruption).in.lzip.fi
21080 6c 65 73 2c 20 61 6e 64 20 70 72 6f 76 69 64 65 73 20 64 61 74 61 20 72 65 63 6f 76 65 72 79 20 les,.and.provides.data.recovery.
210a0 63 61 70 61 62 69 6c 69 74 69 65 73 2c 20 69 6e 63 6c 75 64 69 6e 67 0a 65 72 72 6f 72 2d 63 68 capabilities,.including.error-ch
210c0 65 63 6b 65 64 20 6d 65 72 67 69 6e 67 20 6f 66 20 64 61 6d 61 67 65 64 20 63 6f 70 69 65 73 20 ecked.merging.of.damaged.copies.
210e0 6f 66 20 61 20 66 69 6c 65 2e 0a 40 69 66 6e 6f 74 68 74 6d 6c 0a 40 78 72 65 66 7b 44 61 74 61 of.a.file..@ifnothtml.@xref{Data
21100 20 73 61 66 65 74 79 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 .safety,,,lziprecover}..@end.ifn
21120 6f 74 68 74 6d 6c 0a 0a 40 69 74 65 6d 0a 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 69 73 othtml..@item.The.lzip.format.is
21140 20 61 73 20 73 69 6d 70 6c 65 20 61 73 20 70 6f 73 73 69 62 6c 65 20 28 62 75 74 20 6e 6f 74 20 .as.simple.as.possible.(but.not.
21160 73 69 6d 70 6c 65 72 29 2e 20 54 68 65 20 6c 7a 69 70 0a 6d 61 6e 75 61 6c 20 70 72 6f 76 69 64 simpler)..The.lzip.manual.provid
21180 65 73 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 66 20 61 20 73 69 6d 70 6c 65 20 64 es.the.source.code.of.a.simple.d
211a0 65 63 6f 6d 70 72 65 73 73 6f 72 20 61 6c 6f 6e 67 20 77 69 74 68 20 61 0a 64 65 74 61 69 6c 65 ecompressor.along.with.a.detaile
211c0 64 20 65 78 70 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 d.explanation.of.how.it.works,.s
211e0 6f 20 74 68 61 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 o.that.with.the.only.help.of.the
21200 0a 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
21220 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
21240 20 65 78 74 72 61 63 74 0a 74 68 65 20 64 61 74 61 20 66 72 6f 6d 20 61 20 6c 7a 69 70 20 66 69 .extract.the.data.from.a.lzip.fi
21260 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 20 le.long.after.quantum.computers.
21280 65 76 65 6e 74 75 61 6c 6c 79 20 72 65 6e 64 65 72 0a 4c 5a 4d 41 20 6f 62 73 6f 6c 65 74 65 2e eventually.render.LZMA.obsolete.
212a0 0a 0a 40 69 74 65 6d 0a 41 64 64 69 74 69 6f 6e 61 6c 6c 79 20 74 68 65 20 6c 7a 69 70 20 72 65 ..@item.Additionally.the.lzip.re
212c0 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 6f 70 79 6c 65 ference.implementation.is.copyle
212e0 66 74 65 64 2c 20 77 68 69 63 68 0a 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 69 74 20 77 fted,.which.guarantees.that.it.w
21300 69 6c 6c 20 72 65 6d 61 69 6e 20 66 72 65 65 20 66 6f 72 65 76 65 72 2e 0a 40 65 6e 64 20 69 74 ill.remain.free.forever..@end.it
21320 65 6d 69 7a 65 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 emize..A.nice.feature.of.the.lzi
21340 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 79 74 65 20 p.format.is.that.a.corrupt.byte.
21360 69 73 20 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 is.easier.to.repair.the.nearer.i
21380 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 68 65 20 66 t.is.from.the.beginning.of.the.f
213a0 69 6c 65 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 ile..Therefore,.with.the.help.of
213c0 0a 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 72 65 20 61 .lziprecover,.losing.an.entire.a
213e0 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 72 75 70 74 rchive.just.because.of.a.corrupt
21400 20 62 79 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 .byte.near.the.beginning.is.a.th
21420 69 6e 67 20 6f 66 20 74 68 65 20 70 61 73 74 2e 0a 0a 54 68 65 20 6d 65 6d 62 65 72 20 74 72 61 ing.of.the.past...The.member.tra
21440 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 43 20 6f 66 20 74 68 iler.stores.the.32-bit.CRC.of.th
21460 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 0a 6f 66 20 74 68 65 e.original.data,.the.size.of.the
21480 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 69 7a 65 20 6f 66 20 .original.data,.and.the.size.of.
214a0 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 20 74 6f 67 65 74 68 the.member..These.values,.togeth
214c0 65 72 0a 77 69 74 68 20 74 68 65 20 65 6e 64 2d 6f 66 2d 73 74 72 65 61 6d 20 6d 61 72 6b 65 72 er.with.the.end-of-stream.marker
214e0 2c 20 70 72 6f 76 69 64 65 20 61 20 33 20 66 61 63 74 6f 72 20 69 6e 74 65 67 72 69 74 79 20 63 ,.provide.a.3.factor.integrity.c
21500 68 65 63 6b 69 6e 67 0a 77 68 69 63 68 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 hecking.which.guarantees.that.th
21520 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 64 61 e.decompressed.version.of.the.da
21540 74 61 20 69 73 20 69 64 65 6e 74 69 63 61 6c 0a 74 6f 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 2e ta.is.identical.to.the.original.
21560 20 54 68 69 73 20 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 .This.guards.against.corruption.
21580 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 2c 0a 61 6e 64 20 61 67 61 69 of.the.compressed.data,.and.agai
215a0 6e 73 74 20 75 6e 64 65 74 65 63 74 65 64 20 62 75 67 73 20 69 6e 20 6c 7a 69 70 20 28 68 6f 70 nst.undetected.bugs.in.lzip.(hop
215c0 65 66 75 6c 6c 79 20 76 65 72 79 20 75 6e 6c 69 6b 65 6c 79 29 2e 20 54 68 65 0a 63 68 61 6e 63 efully.very.unlikely)..The.chanc
215e0 65 73 20 6f 66 20 64 61 74 61 20 63 6f 72 72 75 70 74 69 6f 6e 20 67 6f 69 6e 67 20 75 6e 64 65 es.of.data.corruption.going.unde
21600 74 65 63 74 65 64 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 tected.are.microscopic..Be.aware
21620 2c 0a 74 68 6f 75 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 ,.though,.that.the.check.occurs.
21640 75 70 6f 6e 20 64 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 upon.decompression,.so.it.can.on
21660 6c 79 20 74 65 6c 6c 0a 79 6f 75 20 74 68 61 74 20 73 6f 6d 65 74 68 69 6e 67 20 69 73 20 77 72 ly.tell.you.that.something.is.wr
21680 6f 6e 67 2e 20 49 74 20 63 61 6e 27 74 20 68 65 6c 70 20 79 6f 75 20 72 65 63 6f 76 65 72 20 74 ong..It.can't.help.you.recover.t
216a0 68 65 20 6f 72 69 67 69 6e 61 6c 0a 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 2e 0a 0a he.original.uncompressed.data...
216c0 4c 7a 69 70 20 75 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 Lzip.uses.the.same.well-defined.
216e0 65 78 69 74 20 73 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 exit.status.values.used.by.bzip2
21700 2c 20 77 68 69 63 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 ,.which.makes.it.safer.than.comp
21720 72 65 73 73 6f 72 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 ressors.returning.ambiguous.warn
21740 69 6e 67 20 76 61 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 ing.values.(like.gzip).when.it.i
21760 73 20 75 73 65 64 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 s.used.as.a.back.end.for.other.p
21780 72 6f 67 72 61 6d 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 rograms.like.tar.or.zutils...Lzi
217a0 70 20 77 69 6c 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 75 73 65 20 66 6f 72 20 65 61 63 p.will.automatically.use.for.eac
217c0 68 20 66 69 6c 65 20 74 68 65 20 6c 61 72 67 65 73 74 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 h.file.the.largest.dictionary.si
217e0 7a 65 20 74 68 61 74 0a 64 6f 65 73 20 6e 6f 74 20 65 78 63 65 65 64 20 6e 65 69 74 68 65 72 20 ze.that.does.not.exceed.neither.
21800 74 68 65 20 66 69 6c 65 20 73 69 7a 65 20 6e 6f 72 20 74 68 65 20 6c 69 6d 69 74 20 67 69 76 65 the.file.size.nor.the.limit.give
21820 6e 2e 20 4b 65 65 70 20 69 6e 20 6d 69 6e 64 20 74 68 61 74 0a 74 68 65 20 64 65 63 6f 6d 70 72 n..Keep.in.mind.that.the.decompr
21840 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 20 69 73 20 61 66 66 ession.memory.requirement.is.aff
21860 65 63 74 65 64 20 61 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d 65 20 62 79 20 74 68 65 ected.at.compression.time.by.the
21880 0a 63 68 6f 69 63 65 20 6f 66 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 .choice.of.dictionary.size.limit
218a0 2e 0a 0a 54 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 65 64 ...The.amount.of.memory.required
218c0 20 66 6f 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 61 62 6f 75 74 20 31 20 6f 72 20 32 .for.compression.is.about.1.or.2
218e0 20 74 69 6d 65 73 20 74 68 65 0a 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 .times.the.dictionary.size.limit
21900 20 28 31 20 69 66 20 69 6e 70 75 74 20 66 69 6c 65 20 73 69 7a 65 20 69 73 20 6c 65 73 73 20 74 .(1.if.input.file.size.is.less.t
21920 68 61 6e 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 0a 6c 69 6d 69 74 2c 20 65 6c 73 65 20 han.dictionary.size.limit,.else.
21940 32 29 20 70 6c 75 73 20 39 20 74 69 6d 65 73 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 2).plus.9.times.the.dictionary.s
21960 69 7a 65 20 72 65 61 6c 6c 79 20 75 73 65 64 2e 20 54 68 65 20 6f 70 74 69 6f 6e 0a 40 73 61 6d ize.really.used..The.option.@sam
21980 70 7b 2d 30 7d 20 69 73 20 73 70 65 63 69 61 6c 20 61 6e 64 20 6f 6e 6c 79 20 72 65 71 75 69 72 p{-0}.is.special.and.only.requir
219a0 65 73 20 61 62 6f 75 74 20 40 77 7b 31 2e 35 20 4d 69 42 7d 20 61 74 20 6d 6f 73 74 2e 20 54 68 es.about.@w{1.5.MiB}.at.most..Th
219c0 65 0a 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.
219e0 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 61 62 6f 75 74 20 40 77 7b 34 36 20 6b 42 7d decompression.is.about.@w{46.kB}
21a00 20 6c 61 72 67 65 72 0a 74 68 61 6e 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 .larger.than.the.dictionary.size
21a20 20 72 65 61 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 .really.used...When.compressing,
21a40 20 6c 7a 69 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 .lzip.replaces.every.file.given.
21a60 69 6e 20 74 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 in.the.command.line.with.a.compr
21a80 65 73 73 65 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 essed.version.of.itself,.with.th
21aa0 65 20 6e 61 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 e.name."original_name.lz"..When.
21ac0 64 65 63 6f 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 decompressing,.lzip.attempts.to.
21ae0 67 75 65 73 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 guess.the.name.for.the.decompres
21b00 73 65 64 0a 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 sed.file.from.that.of.the.compre
21b20 73 73 65 64 20 66 69 6c 65 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 0a 40 6d 75 6c 74 69 74 61 62 ssed.file.as.follows:..@multitab
21b40 6c 65 20 7b 61 6e 79 6f 74 68 65 72 6e 61 6d 65 7d 20 7b 62 65 63 6f 6d 65 73 7d 20 7b 61 6e 79 le.{anyothername}.{becomes}.{any
21b60 6f 74 68 65 72 6e 61 6d 65 2e 6f 75 74 7d 0a 40 69 74 65 6d 20 66 69 6c 65 6e 61 6d 65 2e 6c 7a othername.out}.@item.filename.lz
21b80 20 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 0a 40 69 74 ..@tab.becomes.@tab.filename.@it
21ba0 65 6d 20 66 69 6c 65 6e 61 6d 65 2e 74 6c 7a 20 40 74 61 62 20 62 65 63 6f 6d 65 73 20 40 74 61 em.filename.tlz.@tab.becomes.@ta
21bc0 62 20 66 69 6c 65 6e 61 6d 65 2e 74 61 72 0a 40 69 74 65 6d 20 61 6e 79 6f 74 68 65 72 6e 61 6d b.filename.tar.@item.anyothernam
21be0 65 20 40 74 61 62 20 62 65 63 6f 6d 65 73 20 40 74 61 62 20 61 6e 79 6f 74 68 65 72 6e 61 6d 65 e.@tab.becomes.@tab.anyothername
21c00 2e 6f 75 74 0a 40 65 6e 64 20 6d 75 6c 74 69 74 61 62 6c 65 0a 0a 28 44 65 29 63 6f 6d 70 72 65 .out.@end.multitable..(De)compre
21c20 73 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 ssing.a.file.is.much.like.copyin
21c40 67 20 6f 72 20 6d 6f 76 69 6e 67 20 69 74 3b 20 74 68 65 72 65 66 6f 72 65 20 6c 7a 69 70 0a 70 g.or.moving.it;.therefore.lzip.p
21c60 72 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 reserves.the.access.and.modifica
21c80 74 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 77 68 tion.dates,.permissions,.and,.wh
21ca0 65 6e 0a 70 6f 73 73 69 62 6c 65 2c 20 6f 77 6e 65 72 73 68 69 70 20 6f 66 20 74 68 65 20 66 69 en.possible,.ownership.of.the.fi
21cc0 6c 65 20 6a 75 73 74 20 61 73 20 40 73 61 6d 70 7b 63 70 20 2d 70 7d 20 64 6f 65 73 2e 20 28 49 le.just.as.@samp{cp.-p}.does..(I
21ce0 66 20 74 68 65 20 75 73 65 72 20 49 44 20 6f 72 0a 74 68 65 20 67 72 6f 75 70 20 49 44 20 63 61 f.the.user.ID.or.the.group.ID.ca
21d00 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
21d20 69 73 73 69 6f 6e 20 62 69 74 73 20 53 5f 49 53 55 49 44 20 61 6e 64 0a 53 5f 49 53 47 49 44 20 ission.bits.S_ISUID.and.S_ISGID.
21d40 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
21d60 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
21d80 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 40 73 ar.files.if.either.the.option.@s
21da0 61 6d 70 7b 2d 63 7d 20 6f 72 20 74 68 65 20 6f 70 74 69 6f 6e 20 40 73 61 6d 70 7b 2d 6f 7d 20 amp{-c}.or.the.option.@samp{-o}.
21dc0 69 73 20 73 70 65 63 69 66 69 65 64 2e 0a 0a 4c 7a 69 70 20 77 69 6c 6c 20 72 65 66 75 73 65 20 is.specified...Lzip.will.refuse.
21de0 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 72 6f 6d 20 61 20 74 to.read.compressed.data.from.a.t
21e00 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 65 64 0a 64 61 74 61 erminal.or.write.compressed.data
21e20 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 6f 75 6c 64 20 62 65 .to.a.terminal,.as.this.would.be
21e40 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 65 20 61 6e 64 20 6d .entirely.incomprehensible.and.m
21e60 61 79 20 6c 65 61 76 65 0a 74 68 65 20 74 65 72 6d 69 6e 61 6c 20 69 6e 20 61 6e 20 61 62 6e 6f ay.leave.the.terminal.in.an.abno
21e80 72 6d 61 6c 20 73 74 61 74 65 2e 0a 0a 4c 7a 69 70 20 77 69 6c 6c 20 63 6f 72 72 65 63 74 6c 79 rmal.state...Lzip.will.correctly
21ea0 20 64 65 63 6f 6d 70 72 65 73 73 20 61 20 66 69 6c 65 20 77 68 69 63 68 20 69 73 20 74 68 65 20 .decompress.a.file.which.is.the.
21ec0 63 6f 6e 63 61 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 concatenation.of.two.or.more.com
21ee0 70 72 65 73 73 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 pressed.files..The.result.is.the
21f00 20 63 6f 6e 63 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 .concatenation.of.the.correspond
21f20 69 6e 67 0a 64 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 ing.decompressed.files..Integrit
21f40 79 20 74 65 73 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 y.testing.of.concatenated.compre
21f60 73 73 65 64 20 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 ssed.files.is.also.supported...L
21f80 7a 69 70 20 63 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 zip.can.produce.multimember.file
21fa0 73 2c 20 61 6e 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 s,.and.lziprecover.can.safely.re
21fc0 63 6f 76 65 72 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 cover.the.undamaged.members.in.c
21fe0 61 73 65 20 6f 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 ase.of.file.damage..Lzip.can.als
22000 6f 20 73 70 6c 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 o.split.the.compressed.output.in
22020 20 76 6f 6c 75 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 .volumes.of.a.given.size,.even.w
22040 68 65 6e 20 72 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 hen.reading.from.standard.input.
22060 0a 54 68 69 73 20 61 6c 6c 6f 77 73 20 74 68 65 20 64 69 72 65 63 74 20 63 72 65 61 74 69 6f 6e .This.allows.the.direct.creation
22080 20 6f 66 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 20 61 .of.multivolume.compressed.tar.a
220a0 72 63 68 69 76 65 73 2e 0a 0a 4c 7a 69 70 20 69 73 20 61 62 6c 65 20 74 6f 20 63 6f 6d 70 72 65 rchives...Lzip.is.able.to.compre
220c0 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 6f 66 20 75 6e 6c ss.and.decompress.streams.of.unl
220e0 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 6c 79 20 63 72 65 imited.size.by.automatically.cre
22100 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 54 68 65 20 6d 65 ating.multimember.output..The.me
22120 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 2c 0a 61 62 6f 75 mbers.so.created.are.large,.abou
22140 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 4f 75 74 70 75 74 t.@w{2.PiB}.each....@node.Output
22160 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 73 20 6f 75 74 70 .@chapter.Meaning.of.lzip's.outp
22180 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 70 75 74 20 6f 66 ut.@cindex.output..The.output.of
221a0 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 78 61 6d 70 6c 65 .lzip.looks.like.this:..@example
221c0 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 3a 31 2c 20 31 34 .lzip.-v.foo...foo:..6.676:1,.14
221e0 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 34 35 30 35 36 30 .98%.ratio,.85.02%.saved,.450560
22200 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 76 20 66 6f 6f 2e .in,.67493.out...lzip.-tvvv.foo.
22220 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 39 38 25 20 72 61 lz...foo.lz:..6.676:1,.14.98%.ra
22240 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 20 6f 75 74 2c 20 tio,.85.02%.saved...450560.out,.
22260 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 0a 0a 54 68 65 20 .67493.in..ok.@end.example..The.
22280 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 73 20 66 6f 6c 6c meaning.of.each.field.is.as.foll
222a0 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 3a 31 0a 54 68 65 ows:..@table.@code.@item.N:1.The
222c0 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 6f 6d 70 72 65 73 .compression.ratio.@w{(uncompres
222e0 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 7d 2c 20 73 68 sed_size./.compressed_size)},.sh
22300 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 72 61 74 69 6f 0a own.as.@w{N.to.1}...@item.ratio.
22320 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 6f 20 40 77 The.inverse.compression.ratio.@w
22340 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 72 65 73 73 65 64 {(compressed_size./.uncompressed
22360 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 74 61 67 65 2e 20 _size)},.shown.as.a.percentage..
22380 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 62 74 61 69 6e A.decimal.ratio.is.easily.obtain
223a0 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 6f 69 6e 74 20 74 ed.by.moving.the.decimal.point.t
223c0 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 31 34 2e 39 38 25 wo.places.to.the.left;.@w{14.98%
223e0 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 68 65 20 73 70 61 .=.0.1498}...@item.saved.The.spa
22400 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 7b 28 31 20 2d 20 ce.saved.by.compression.@w{(1.-.
22420 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 74 61 67 65 2e 0a ratio)},.shown.as.a.percentage..
22440 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 74 20 64 61 74 61 .@item.in.Size.of.the.input.data
22460 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 69 7a 65 20 ..This.is.the.uncompressed.size.
22480 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 6f 6d 70 72 65 73 when.compressing,.or.the.compres
224a0 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 67 20 6f 72 20 74 sed.size.when.decompressing.or.t
224c0 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 61 79 73 0a 70 72 esting..Note.that.lzip.always.pr
224e0 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 20 62 65 66 6f 72 ints.the.uncompressed.size.befor
22500 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 20 63 6f 6d 70 72 e.the.compressed.size.when.compr
22520 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 74 69 6e 67 2c 20 essing,.decompressing,.testing,.
22540 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 65 20 6f 66 20 74 or.listing...@item.out.Size.of.t
22560 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 65 20 63 6f 6d 70 he.output.data..This.is.the.comp
22580 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 6e 67 2c 20 6f 72 ressed.size.when.compressing,.or
225a0 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 6e 20 64 65 63 6f .the.decompressed.size.when.deco
225c0 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 64 20 74 61 62 6c mpressing.or.testing...@end.tabl
225e0 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 65 73 74 69 6e 67 e..When.decompressing.or.testing
22600 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 76 76 29 2c 20 74 .at.verbosity.level.4.(-vvvv),.t
22620 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 20 63 6f 6d 70 72 he.dictionary.size.used.to.compr
22640 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 20 6f 66 20 74 68 ess.the.file.and.the.CRC32.of.th
22660 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 73 6f 20 73 68 6f e.uncompressed.data.are.also.sho
22680 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 72 65 73 73 65 64 wn...LANGUAGE.NOTE:.Uncompressed
226a0 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 64 61 74 61 3b 20 .=.not.compressed.=.plain.data;.
226c0 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 70 72 65 73 73 65 it.may.never.have.been.compresse
226e0 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 20 72 65 66 65 72 d..Decompressed.is.used.to.refer
22700 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 6f 6e 65 0a 74 68 .to.data.which.have.undergone.th
22720 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 2e 0a 0a 0a 40 6e e.process.of.decompression....@n
22740 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 20 49 6e 76 6f 6b ode.Invoking.lzip.@chapter.Invok
22760 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 40 63 69 6e 64 65 ing.lzip.@cindex.invoking.@cinde
22780 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 69 6e 64 65 78 20 x.options.@cindex.usage.@cindex.
227a0 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 6e 6e 69 6e 67 20 version..The.format.for.running.
227c0 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 76 61 72 7b 6f 70 lzip.is:..@example.lzip.[@var{op
227e0 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 20 65 78 61 6d 70 tions}].[@var{files}].@end.examp
22800 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 61 6d 65 73 20 61 le..@noindent.If.no.file.names.a
22820 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 73 65 73 20 28 6f re.specified,.lzip.compresses.(o
22840 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 61 72 64 20 69 6e r.decompresses).from.standard.in
22860 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 68 79 70 68 65 6e put.to.standard.output..A.hyphen
22880 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 69 6c 65 7d 0a 61 .@samp{-}.used.as.a.@var{file}.a
228a0 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 75 74 2e 20 49 74 rgument.means.standard.input..It
228c0 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 76 61 72 7b 66 69 .can.be.mixed.with.other.@var{fi
228e0 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 2c 20 74 68 65 20 les}.and.is.read.just.once,.the.
22900 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 68 65 20 63 6f 6d first.time.it.appears.in.the.com
22920 6d 61 6e 64 20 6c 69 6e 65 2e 0a 0a 6c 7a 69 70 20 73 75 70 70 6f 72 74 73 20 74 68 65 20 66 6f mand.line...lzip.supports.the.fo
22940 6c 6c 6f 77 69 6e 67 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 llowing.@uref{http://www.nongnu.
22960 6f 72 67 2f 61 72 67 2d 70 61 72 73 65 72 2f 6d 61 6e 75 61 6c 2f 61 72 67 5f 70 61 72 73 65 72 org/arg-parser/manual/arg_parser
22980 5f 6d 61 6e 75 61 6c 2e 68 74 6d 6c 23 41 72 67 75 6d 65 6e 74 2d 73 79 6e 74 61 78 2c 2c 6f 70 _manual.html#Argument-syntax,,op
229a0 74 69 6f 6e 73 7d 3a 0a 40 69 66 6e 6f 74 68 74 6d 6c 0a 40 78 72 65 66 7b 41 72 67 75 6d 65 6e tions}:.@ifnothtml.@xref{Argumen
229c0 74 20 73 79 6e 74 61 78 2c 2c 2c 61 72 67 5f 70 61 72 73 65 72 7d 2e 0a 40 65 6e 64 20 69 66 6e t.syntax,,,arg_parser}..@end.ifn
229e0 6f 74 68 74 6d 6c 0a 0a 40 74 61 62 6c 65 20 40 63 6f 64 65 0a 40 69 74 65 6d 20 2d 68 0a 40 69 othtml..@table.@code.@item.-h.@i
22a00 74 65 6d 78 20 2d 2d 68 65 6c 70 0a 50 72 69 6e 74 20 61 6e 20 69 6e 66 6f 72 6d 61 74 69 76 65 temx.--help.Print.an.informative
22a20 20 68 65 6c 70 20 6d 65 73 73 61 67 65 20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 20 6f 70 74 .help.message.describing.the.opt
22a40 69 6f 6e 73 20 61 6e 64 20 65 78 69 74 2e 0a 0a 40 69 74 65 6d 20 2d 56 0a 40 69 74 65 6d 78 20 ions.and.exit...@item.-V.@itemx.
22a60 2d 2d 76 65 72 73 69 6f 6e 0a 50 72 69 6e 74 20 74 68 65 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 --version.Print.the.version.numb
22a80 65 72 20 6f 66 20 6c 7a 69 70 20 6f 6e 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 er.of.lzip.on.the.standard.outpu
22aa0 74 20 61 6e 64 20 65 78 69 74 2e 0a 54 68 69 73 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 t.and.exit..This.version.number.
22ac0 73 68 6f 75 6c 64 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c 6c 20 62 75 67 20 72 65 should.be.included.in.all.bug.re
22ae0 70 6f 72 74 73 2e 0a 0a 40 61 6e 63 68 6f 72 7b 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 ports...@anchor{--trailing-error
22b00 7d 0a 40 69 74 65 6d 20 2d 61 0a 40 69 74 65 6d 78 20 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 }.@item.-a.@itemx.--trailing-err
22b20 6f 72 0a 45 78 69 74 20 77 69 74 68 20 65 72 72 6f 72 20 73 74 61 74 75 73 20 32 20 69 66 20 61 or.Exit.with.error.status.2.if.a
22b40 6e 79 20 72 65 6d 61 69 6e 69 6e 67 20 69 6e 70 75 74 20 69 73 20 64 65 74 65 63 74 65 64 20 61 ny.remaining.input.is.detected.a
22b60 66 74 65 72 0a 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 74 68 65 20 6c 61 73 74 20 6d 65 6d 62 fter.decompressing.the.last.memb
22b80 65 72 2e 20 53 75 63 68 20 72 65 6d 61 69 6e 69 6e 67 20 69 6e 70 75 74 20 69 73 20 75 73 75 61 er..Such.remaining.input.is.usua
22ba0 6c 6c 79 20 74 72 61 69 6c 69 6e 67 0a 67 61 72 62 61 67 65 20 74 68 61 74 20 63 61 6e 20 62 65 lly.trailing.garbage.that.can.be
22bc0 20 73 61 66 65 6c 79 20 69 67 6e 6f 72 65 64 2e 20 40 78 72 65 66 7b 63 6f 6e 63 61 74 2d 65 78 .safely.ignored..@xref{concat-ex
22be0 61 6d 70 6c 65 7d 2e 0a 0a 40 69 74 65 6d 20 2d 62 20 40 76 61 72 7b 62 79 74 65 73 7d 0a 40 69 ample}...@item.-b.@var{bytes}.@i
22c00 74 65 6d 78 20 2d 2d 6d 65 6d 62 65 72 2d 73 69 7a 65 3d 40 76 61 72 7b 62 79 74 65 73 7d 0a 57 temx.--member-size=@var{bytes}.W
22c20 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 6d 65 6d 62 65 72 20 hen.compressing,.set.the.member.
22c40 73 69 7a 65 20 6c 69 6d 69 74 20 74 6f 20 40 76 61 72 7b 62 79 74 65 73 7d 2e 20 49 74 20 69 73 size.limit.to.@var{bytes}..It.is
22c60 20 61 64 76 69 73 61 62 6c 65 0a 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
22c80 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
22ca0 6e 20 62 65 20 72 65 70 61 69 72 65 64 20 77 69 74 68 0a 6c 7a 69 70 72 65 63 6f 76 65 72 20 69 n.be.repaired.with.lziprecover.i
22cc0 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
22ce0 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
22d00 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
22d20 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{
22d40 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
22d60 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.--
22d80 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
22da0 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
22dc0 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
22de0 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
22e00 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
22e20 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
22e40 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
22e60 0a 6f 70 74 69 6f 6e 20 28 6f 72 20 40 73 61 6d 70 7b 2d 6f 7d 29 20 69 73 20 6e 65 65 64 65 64 .option.(or.@samp{-o}).is.needed
22e80 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 65 20 .when.reading.from.a.named.pipe.
22ea0 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 74 20 (fifo).or.from.a.device..Use.it.
22ec0 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 20 64 also.to.recover.as.much.of.the.d
22ee0 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 68 65 ecompressed.data.as.possible.whe
22f00 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 2e 20 n.decompressing.a.corrupt.file..
22f20 40 73 61 6d 70 7b 2d 63 7d 20 6f 76 65 72 72 69 64 65 73 20 40 73 61 6d 70 7b 2d 6f 7d 0a 61 6e @samp{-c}.overrides.@samp{-o}.an
22f40 64 20 40 73 61 6d 70 7b 2d 53 7d 2e 20 40 73 61 6d 70 7b 2d 63 7d 20 68 61 73 20 6e 6f 20 65 66 d.@samp{-S}..@samp{-c}.has.no.ef
22f60 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 40 fect.when.testing.or.listing...@
22f80 69 74 65 6d 20 2d 64 0a 40 69 74 65 6d 78 20 2d 2d 64 65 63 6f 6d 70 72 65 73 73 0a 44 65 63 6f item.-d.@itemx.--decompress.Deco
22fa0 6d 70 72 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 49 66 20 61 mpress.the.files.specified..If.a
22fc0 20 66 69 6c 65 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 20 6f 72 20 63 61 6e 27 74 20 62 65 .file.does.not.exist.or.can't.be
22fe0 0a 6f 70 65 6e 65 64 2c 20 6c 7a 69 70 20 63 6f 6e 74 69 6e 75 65 73 20 64 65 63 6f 6d 70 72 65 .opened,.lzip.continues.decompre
23000 73 73 69 6e 67 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 66 69 6c 65 73 2e 20 49 66 20 ssing.the.rest.of.the.files..If.
23020 61 20 66 69 6c 65 0a 66 61 69 6c 73 20 74 6f 20 64 65 63 6f 6d 70 72 65 73 73 2c 20 6f 72 20 69 a.file.fails.to.decompress,.or.i
23040 73 20 61 20 74 65 72 6d 69 6e 61 6c 2c 20 6c 7a 69 70 20 65 78 69 74 73 20 69 6d 6d 65 64 69 61 s.a.terminal,.lzip.exits.immedia
23060 74 65 6c 79 20 77 69 74 68 6f 75 74 0a 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 74 68 65 20 72 tely.without.decompressing.the.r
23080 65 73 74 20 6f 66 20 74 68 65 20 66 69 6c 65 73 2e 0a 0a 40 69 74 65 6d 20 2d 66 0a 40 69 74 65 est.of.the.files...@item.-f.@ite
230a0 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 66 20 6f 75 mx.--force.Force.overwrite.of.ou
230c0 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 20 2d 2d 72 tput.files...@item.-F.@itemx.--r
230e0 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 66 6f 72 63 ecompress.When.compressing,.forc
23100 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 6f 73 65 20 e.re-compression.of.files.whose.
23120 6e 61 6d 65 20 61 6c 72 65 61 64 79 20 68 61 73 0a 74 68 65 20 40 73 61 6d 70 7b 2e 6c 7a 7d 20 name.already.has.the.@samp{.lz}.
23140 6f 72 20 40 73 61 6d 70 7b 2e 74 6c 7a 7d 20 73 75 66 66 69 78 2e 0a 0a 40 69 74 65 6d 20 2d 6b or.@samp{.tlz}.suffix...@item.-k
23160 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 65 6c 65 74 .@itemx.--keep.Keep.(don't.delet
23180 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 73 73 69 6f e).input.files.during.compressio
231a0 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 6c 0a 40 69 n.or.decompression...@item.-l.@i
231c0 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 72 65 73 73 temx.--list.Print.the.uncompress
231e0 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 20 70 65 ed.size,.compressed.size,.and.pe
23200 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 73 70 65 63 rcentage.saved.of.the.files.spec
23220 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 6f 72 65 64 ified..Trailing.data.are.ignored
23240 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 72 72 65 63 ..The.values.produced.are.correc
23260 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 2e 20 49 66 t.even.for.multimember.files..If
23280 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 2c 20 61 20 .more.than.one.file.is.given,.a.
232a0 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 6d 75 6c 61 final.line.containing.the.cumula
232c0 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 40 73 61 6d tive.sizes.is.printed..With.@sam
232e0 70 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 2c 20 74 68 65 20 p{-v},.the.dictionary.size,.the.
23300 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 69 6c 65 2c 20 61 number.of.members.in.the.file,.a
23320 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 64 61 74 61 20 28 nd.the.amount.of.trailing.data.(
23340 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 57 69 74 68 20 40 if.any).are.also.printed..With.@
23360 73 61 6d 70 7b 2d 76 76 7d 2c 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 73 20 61 6e 64 20 73 69 7a samp{-vv},.the.positions.and.siz
23380 65 73 20 6f 66 20 65 61 63 68 0a 6d 65 6d 62 65 72 20 69 6e 20 6d 75 6c 74 69 6d 65 6d 62 65 72 es.of.each.member.in.multimember
233a0 20 66 69 6c 65 73 20 61 72 65 20 61 6c 73 6f 20 70 72 69 6e 74 65 64 2e 0a 0a 40 73 61 6d 70 7b .files.are.also.printed...@samp{
233c0 2d 6c 71 7d 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 76 65 72 69 66 79 20 71 75 69 63 6b -lq}.can.be.used.to.verify.quick
233e0 6c 79 20 28 77 69 74 68 6f 75 74 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 29 20 74 68 65 0a 73 ly.(without.decompressing).the.s
23400 74 72 75 63 74 75 72 61 6c 20 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 68 65 20 66 69 6c 65 73 tructural.integrity.of.the.files
23420 20 73 70 65 63 69 66 69 65 64 2e 20 28 55 73 65 20 40 73 61 6d 70 7b 2d 2d 74 65 73 74 7d 20 74 .specified..(Use.@samp{--test}.t
23440 6f 20 76 65 72 69 66 79 0a 74 68 65 20 64 61 74 61 20 69 6e 74 65 67 72 69 74 79 29 2e 20 40 73 o.verify.the.data.integrity)..@s
23460 61 6d 70 7b 2d 61 6c 71 7d 20 61 64 64 69 74 69 6f 6e 61 6c 6c 79 20 76 65 72 69 66 69 65 73 20 amp{-alq}.additionally.verifies.
23480 74 68 61 74 20 6e 6f 6e 65 20 6f 66 20 74 68 65 0a 66 69 6c 65 73 20 73 70 65 63 69 66 69 65 64 that.none.of.the.files.specified
234a0 20 63 6f 6e 74 61 69 6e 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 2e 0a 0a 40 69 74 65 6d 20 2d .contain.trailing.data...@item.-
234c0 6d 20 40 76 61 72 7b 62 79 74 65 73 7d 0a 40 69 74 65 6d 78 20 2d 2d 6d 61 74 63 68 2d 6c 65 6e m.@var{bytes}.@itemx.--match-len
234e0 67 74 68 3d 40 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 gth=@var{bytes}.When.compressing
23500 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 74 20 69 6e 20 ,.set.the.match.length.limit.in.
23520 62 79 74 65 73 2e 20 41 66 74 65 72 20 61 20 6d 61 74 63 68 0a 74 68 69 73 20 6c 6f 6e 67 20 69 bytes..After.a.match.this.long.i
23540 73 20 66 6f 75 6e 64 2c 20 74 68 65 20 73 65 61 72 63 68 20 69 73 20 66 69 6e 69 73 68 65 64 2e s.found,.the.search.is.finished.
23560 20 56 61 6c 69 64 20 76 61 6c 75 65 73 20 72 61 6e 67 65 20 66 72 6f 6d 20 35 20 74 6f 0a 32 37 .Valid.values.range.from.5.to.27
23580 33 2e 20 4c 61 72 67 65 72 20 76 61 6c 75 65 73 20 75 73 75 61 6c 6c 79 20 67 69 76 65 20 62 65 3..Larger.values.usually.give.be
235a0 74 74 65 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 73 20 62 75 74 20 6c 6f 6e 67 tter.compression.ratios.but.long
235c0 65 72 0a 63 6f 6d 70 72 65 73 73 69 6f 6e 20 74 69 6d 65 73 2e 0a 0a 40 69 74 65 6d 20 2d 6f 20 er.compression.times...@item.-o.
235e0 40 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 @var{file}.@itemx.--output=@var{
23600 66 69 6c 65 7d 0a 49 66 20 40 73 61 6d 70 7b 2d 63 7d 20 68 61 73 20 6e 6f 74 20 62 65 65 6e 20 file}.If.@samp{-c}.has.not.been.
23620 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 6f also.specified,.write.the.(de)co
23640 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 20 74 6f 0a 40 73 61 6d 70 7b 40 76 61 72 7b 66 69 mpressed.output.to.@samp{@var{fi
23660 6c 65 7d 7d 3b 20 6b 65 65 70 20 69 6e 70 75 74 20 66 69 6c 65 73 20 75 6e 63 68 61 6e 67 65 64 le}};.keep.input.files.unchanged
23680 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 0a ..If.compressing.several.files,.
236a0 65 61 63 68 20 66 69 6c 65 20 69 73 20 63 6f 6d 70 72 65 73 73 65 64 20 69 6e 64 65 70 65 6e 64 each.file.is.compressed.independ
236c0 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 20 6f 66 20 61 ently..(The.output.consists.of.a
236e0 20 73 65 71 75 65 6e 63 65 20 6f 66 0a 69 6e 64 65 70 65 6e 64 65 6e 74 6c 79 20 63 6f 6d 70 72 .sequence.of.independently.compr
23700 65 73 73 65 64 20 6d 65 6d 62 65 72 73 29 2e 20 54 68 69 73 20 6f 70 74 69 6f 6e 20 28 6f 72 20 essed.members)..This.option.(or.
23720 40 73 61 6d 70 7b 2d 63 7d 29 20 69 73 20 6e 65 65 64 65 64 20 77 68 65 6e 0a 72 65 61 64 69 6e @samp{-c}).is.needed.when.readin
23740 67 20 66 72 6f 6d 20 61 20 6e 61 6d 65 64 20 70 69 70 65 20 28 66 69 66 6f 29 20 6f 72 20 66 72 g.from.a.named.pipe.(fifo).or.fr
23760 6f 6d 20 61 20 64 65 76 69 63 65 2e 20 40 73 61 6d 70 7b 2d 6f 20 2d 7d 20 69 73 20 65 71 75 69 om.a.device..@samp{-o.-}.is.equi
23780 76 61 6c 65 6e 74 0a 74 6f 20 40 73 61 6d 70 7b 2d 63 7d 2e 20 40 73 61 6d 70 7b 2d 6f 7d 20 68 valent.to.@samp{-c}..@samp{-o}.h
237a0 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
237c0 74 69 6e 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 ting...In.order.to.keep.backward
237e0 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 72 73 69 6f 6e .compatibility.with.lzip.version
23800 73 20 70 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 s.prior.to.1.22,.when.compressin
23820 67 20 66 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 g.from.standard.input.and.no.oth
23840 65 72 20 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 er.file.names.are.given,.the.ext
23860 65 6e 73 69 6f 6e 20 40 73 61 6d 70 7b 2e 6c 7a 7d 20 69 73 20 61 70 70 65 6e 64 65 64 20 74 6f ension.@samp{.lz}.is.appended.to
23880 20 40 73 61 6d 70 7b 40 76 61 72 7b 66 69 6c 65 7d 7d 20 75 6e 6c 65 73 73 20 69 74 20 61 6c 72 .@samp{@var{file}}.unless.it.alr
238a0 65 61 64 79 20 65 6e 64 73 0a 69 6e 20 40 73 61 6d 70 7b 2e 6c 7a 7d 20 6f 72 20 40 73 61 6d 70 eady.ends.in.@samp{.lz}.or.@samp
238c0 7b 2e 74 6c 7a 7d 2e 20 54 68 69 73 20 66 65 61 74 75 72 65 20 77 69 6c 6c 20 62 65 20 72 65 6d {.tlz}..This.feature.will.be.rem
238e0 6f 76 65 64 20 69 6e 20 61 20 66 75 74 75 72 65 0a 76 65 72 73 69 6f 6e 20 6f 66 20 6c 7a 69 70 oved.in.a.future.version.of.lzip
23900 2e 20 4d 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 ..Meanwhile,.redirection.may.be.
23920 75 73 65 64 20 69 6e 73 74 65 61 64 20 6f 66 20 40 73 61 6d 70 7b 2d 6f 7d 20 74 6f 0a 77 72 69 used.instead.of.@samp{-o}.to.wri
23940 74 65 20 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 te.the.compressed.output.to.a.fi
23960 6c 65 20 77 69 74 68 6f 75 74 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 20 40 73 61 6d 70 7b 2e le.without.the.extension.@samp{.
23980 6c 7a 7d 20 69 6e 0a 69 74 73 20 6e 61 6d 65 3a 20 40 77 7b 40 73 61 6d 70 7b 6c 7a 69 70 20 3c lz}.in.its.name:.@w{@samp{lzip.<
239a0 20 66 69 6c 65 20 3e 20 66 6f 6f 7d 7d 2e 0a 0a 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 .file.>.foo}}...When.compressing
239c0 20 61 6e 64 20 73 70 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 .and.splitting.the.output.in.vol
239e0 75 6d 65 73 2c 20 40 73 61 6d 70 7b 40 76 61 72 7b 66 69 6c 65 7d 7d 20 69 73 0a 75 73 65 64 20 umes,.@samp{@var{file}}.is.used.
23a00 61 73 20 61 20 70 72 65 66 69 78 2c 20 61 6e 64 20 73 65 76 65 72 61 6c 20 66 69 6c 65 73 20 6e as.a.prefix,.and.several.files.n
23a20 61 6d 65 64 20 40 73 61 6d 70 7b 40 76 61 72 7b 66 69 6c 65 7d 30 30 30 30 31 2e 6c 7a 7d 2c 0a amed.@samp{@var{file}00001.lz},.
23a40 40 73 61 6d 70 7b 40 76 61 72 7b 66 69 6c 65 7d 30 30 30 30 32 2e 6c 7a 7d 2c 20 65 74 63 2c 20 @samp{@var{file}00002.lz},.etc,.
23a60 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.
23a80 6f 6e 65 20 69 6e 70 75 74 0a 66 69 6c 65 20 69 73 20 61 6c 6c 6f 77 65 64 2e 0a 0a 40 69 74 65 one.input.file.is.allowed...@ite
23aa0 6d 20 2d 71 0a 40 69 74 65 6d 78 20 2d 2d 71 75 69 65 74 0a 51 75 69 65 74 20 6f 70 65 72 61 74 m.-q.@itemx.--quiet.Quiet.operat
23ac0 69 6f 6e 2e 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 40 69 74 ion..Suppress.all.messages...@it
23ae0 65 6d 20 2d 73 20 40 76 61 72 7b 62 79 74 65 73 7d 0a 40 69 74 65 6d 78 20 2d 2d 64 69 63 74 69 em.-s.@var{bytes}.@itemx.--dicti
23b00 6f 6e 61 72 79 2d 73 69 7a 65 3d 40 76 61 72 7b 62 79 74 65 73 7d 0a 57 68 65 6e 20 63 6f 6d 70 onary-size=@var{bytes}.When.comp
23b20 72 65 73 73 69 6e 67 2c 20 73 65 74 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 ressing,.set.the.dictionary.size
23b40 20 6c 69 6d 69 74 20 69 6e 20 62 79 74 65 73 2e 20 4c 7a 69 70 20 77 69 6c 6c 20 75 73 65 0a 66 .limit.in.bytes..Lzip.will.use.f
23b60 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 63 74 69 6f 6e or.each.file.the.largest.diction
23b80 61 72 79 20 73 69 7a 65 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 65 78 63 65 65 64 20 6e 65 ary.size.that.does.not.exceed.ne
23ba0 69 74 68 65 72 0a 74 68 65 20 66 69 6c 65 20 73 69 7a 65 20 6e 6f 72 20 74 68 69 73 20 6c 69 6d ither.the.file.size.nor.this.lim
23bc0 69 74 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 20 40 77 7b 34 it..Valid.values.range.from.@w{4
23be0 20 4b 69 42 7d 20 74 6f 0a 40 77 7b 35 31 32 20 4d 69 42 7d 2e 20 56 61 6c 75 65 73 20 31 32 20 .KiB}.to.@w{512.MiB}..Values.12.
23c00 74 6f 20 32 39 20 61 72 65 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 73 20 70 6f 77 65 72 73 20 to.29.are.interpreted.as.powers.
23c20 6f 66 20 74 77 6f 2c 20 6d 65 61 6e 69 6e 67 0a 32 5e 31 32 20 74 6f 20 32 5e 32 39 20 62 79 74 of.two,.meaning.2^12.to.2^29.byt
23c40 65 73 2e 20 44 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 73 20 61 72 65 20 71 75 61 6e 74 69 7a es..Dictionary.sizes.are.quantiz
23c60 65 64 20 73 6f 20 74 68 61 74 20 74 68 65 79 20 63 61 6e 20 62 65 0a 63 6f 64 65 64 20 69 6e 20 ed.so.that.they.can.be.coded.in.
23c80 6a 75 73 74 20 6f 6e 65 20 62 79 74 65 20 28 40 70 78 72 65 66 7b 63 6f 64 65 64 2d 64 69 63 74 just.one.byte.(@pxref{coded-dict
23ca0 2d 73 69 7a 65 7d 29 2e 20 49 66 20 74 68 65 20 73 69 7a 65 20 73 70 65 63 69 66 69 65 64 0a 64 -size})..If.the.size.specified.d
23cc0 6f 65 73 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 oes.not.match.one.of.the.valid.s
23ce0 69 7a 65 73 2c 20 69 74 20 77 69 6c 6c 20 62 65 20 72 6f 75 6e 64 65 64 20 75 70 77 61 72 64 73 izes,.it.will.be.rounded.upwards
23d00 20 62 79 0a 61 64 64 69 6e 67 20 75 70 20 74 6f 20 40 77 7b 28 40 76 61 72 7b 62 79 74 65 73 7d .by.adding.up.to.@w{(@var{bytes}
23d20 20 2f 20 38 29 7d 20 74 6f 20 69 74 2e 0a 0a 46 6f 72 20 6d 61 78 69 6d 75 6d 20 63 6f 6d 70 72 ./.8)}.to.it...For.maximum.compr
23d40 65 73 73 69 6f 6e 20 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 ession.you.should.use.a.dictiona
23d60 72 79 20 73 69 7a 65 20 6c 69 6d 69 74 20 61 73 20 6c 61 72 67 65 0a 61 73 20 70 6f 73 73 69 62 ry.size.limit.as.large.as.possib
23d80 6c 65 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 le,.but.keep.in.mind.that.the.de
23da0 63 6f 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 69 compression.memory.requirement.i
23dc0 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 65 20 62 s.affected.at.compression.time.b
23de0 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 7a 65 20 y.the.choice.of.dictionary.size.
23e00 6c 69 6d 69 74 2e 0a 0a 40 69 74 65 6d 20 2d 53 20 40 76 61 72 7b 62 79 74 65 73 7d 0a 40 69 74 limit...@item.-S.@var{bytes}.@it
23e20 65 6d 78 20 2d 2d 76 6f 6c 75 6d 65 2d 73 69 7a 65 3d 40 76 61 72 7b 62 79 74 65 73 7d 0a 57 68 emx.--volume-size=@var{bytes}.Wh
23e40 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 61 6e 64 20 40 73 61 6d 70 7b 2d 63 7d 20 68 61 en.compressing,.and.@samp{-c}.ha
23e60 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 73 70 6c 69 74 s.not.been.also.specified,.split
23e80 20 74 68 65 0a 63 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 20 69 6e 74 6f 20 73 65 76 65 .the.compressed.output.into.seve
23ea0 72 61 6c 20 76 6f 6c 75 6d 65 20 66 69 6c 65 73 20 77 69 74 68 20 6e 61 6d 65 73 0a 40 73 61 6d ral.volume.files.with.names.@sam
23ec0 70 7b 6f 72 69 67 69 6e 61 6c 5f 6e 61 6d 65 30 30 30 30 31 2e 6c 7a 7d 2c 20 40 73 61 6d 70 7b p{original_name00001.lz},.@samp{
23ee0 6f 72 69 67 69 6e 61 6c 5f 6e 61 6d 65 30 30 30 30 32 2e 6c 7a 7d 2c 20 65 74 63 2c 20 61 6e 64 original_name00002.lz},.etc,.and
23f00 20 73 65 74 20 74 68 65 0a 76 6f 6c 75 6d 65 20 73 69 7a 65 20 6c 69 6d 69 74 20 74 6f 20 40 76 .set.the.volume.size.limit.to.@v
23f20 61 72 7b 62 79 74 65 73 7d 2e 20 49 6e 70 75 74 20 66 69 6c 65 73 20 61 72 65 20 6b 65 70 74 20 ar{bytes}..Input.files.are.kept.
23f40 75 6e 63 68 61 6e 67 65 64 2e 20 45 61 63 68 0a 76 6f 6c 75 6d 65 20 69 73 20 61 20 63 6f 6d 70 unchanged..Each.volume.is.a.comp
23f60 6c 65 74 65 2c 20 6d 61 79 62 65 20 6d 75 6c 74 69 6d 65 6d 62 65 72 2c 20 6c 7a 69 70 20 66 69 lete,.maybe.multimember,.lzip.fi
23f80 6c 65 2e 20 41 20 73 6d 61 6c 6c 20 76 6f 6c 75 6d 65 20 73 69 7a 65 20 6d 61 79 0a 64 65 67 72 le..A.small.volume.size.may.degr
23fa0 61 64 65 20 63 6f 6d 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 ade.compression.ratio,.so.use.it
23fc0 20 6f 6e 6c 79 20 77 68 65 6e 20 6e 65 65 64 65 64 2e 20 56 61 6c 69 64 20 76 61 6c 75 65 73 20 .only.when.needed..Valid.values.
23fe0 72 61 6e 67 65 0a 66 72 6f 6d 20 40 77 7b 31 30 30 20 6b 42 7d 20 74 6f 20 40 77 7b 34 20 45 69 range.from.@w{100.kB}.to.@w{4.Ei
24000 42 7d 2e 0a 0a 40 69 74 65 6d 20 2d 74 0a 40 69 74 65 6d 78 20 2d 2d 74 65 73 74 0a 43 68 65 63 B}...@item.-t.@itemx.--test.Chec
24020 6b 20 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 k.integrity.of.the.files.specifi
24040 65 64 2c 20 62 75 74 20 64 6f 6e 27 74 20 64 65 63 6f 6d 70 72 65 73 73 20 74 68 65 6d 2e 20 54 ed,.but.don't.decompress.them..T
24060 68 69 73 0a 72 65 61 6c 6c 79 20 70 65 72 66 6f 72 6d 73 20 61 20 74 72 69 61 6c 20 64 65 63 6f his.really.performs.a.trial.deco
24080 6d 70 72 65 73 73 69 6f 6e 20 61 6e 64 20 74 68 72 6f 77 73 20 61 77 61 79 20 74 68 65 20 72 65 mpression.and.throws.away.the.re
240a0 73 75 6c 74 2e 20 55 73 65 20 69 74 0a 74 6f 67 65 74 68 65 72 20 77 69 74 68 20 40 73 61 6d 70 sult..Use.it.together.with.@samp
240c0 7b 2d 76 7d 20 74 6f 20 73 65 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68 {-v}.to.see.information.about.th
240e0 65 20 66 69 6c 65 73 2e 20 49 66 20 61 20 66 69 6c 65 0a 66 61 69 6c 73 20 74 68 65 20 74 65 73 e.files..If.a.file.fails.the.tes
24100 74 2c 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 t,.does.not.exist,.can't.be.open
24120 65 64 2c 20 6f 72 20 69 73 20 61 20 74 65 72 6d 69 6e 61 6c 2c 20 6c 7a 69 70 0a 63 6f 6e 74 69 ed,.or.is.a.terminal,.lzip.conti
24140 6e 75 65 73 20 63 68 65 63 6b 69 6e 67 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 66 69 nues.checking.the.rest.of.the.fi
24160 6c 65 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 les..A.final.diagnostic.is.shown
24180 20 61 74 0a 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 65 72 20 .at.verbosity.level.1.or.higher.
241a0 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 65 6e 20 if.any.file.fails.the.test.when.
241c0 74 65 73 74 69 6e 67 0a 6d 75 6c 74 69 70 6c 65 20 66 69 6c 65 73 2e 0a 0a 40 69 74 65 6d 20 2d testing.multiple.files...@item.-
241e0 76 0a 40 69 74 65 6d 78 20 2d 2d 76 65 72 62 6f 73 65 0a 56 65 72 62 6f 73 65 20 6d 6f 64 65 2e v.@itemx.--verbose.Verbose.mode.
24200 40 2a 0a 57 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6e 67 2c 20 73 68 6f 77 20 74 68 65 20 63 6f @*.When.compressing,.show.the.co
24220 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 20 61 6e 64 20 73 69 7a 65 20 66 6f 72 20 65 61 63 mpression.ratio.and.size.for.eac
24240 68 20 66 69 6c 65 0a 70 72 6f 63 65 73 73 65 64 2e 40 2a 0a 57 68 65 6e 20 64 65 63 6f 6d 70 72 h.file.processed.@*.When.decompr
24260 65 73 73 69 6e 67 20 6f 72 20 74 65 73 74 69 6e 67 2c 20 66 75 72 74 68 65 72 20 2d 76 27 73 20 essing.or.testing,.further.-v's.
24280 28 75 70 20 74 6f 20 34 29 20 69 6e 63 72 65 61 73 65 20 74 68 65 0a 76 65 72 62 6f 73 69 74 79 (up.to.4).increase.the.verbosity
242a0 20 6c 65 76 65 6c 2c 20 73 68 6f 77 69 6e 67 20 73 74 61 74 75 73 2c 20 63 6f 6d 70 72 65 73 73 .level,.showing.status,.compress
242c0 69 6f 6e 20 72 61 74 69 6f 2c 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 2c 0a 74 72 61 69 ion.ratio,.dictionary.size,.trai
242e0 6c 65 72 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 ler.contents.(CRC,.data.size,.me
24300 6d 62 65 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 mber.size),.and.up.to.6.bytes.of
24320 0a 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 6e 20 .trailing.data.(if.any).both.in.
24340 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 20 70 hexadecimal.and.as.a.string.of.p
24360 72 69 6e 74 61 62 6c 65 0a 41 53 43 49 49 20 63 68 61 72 61 63 74 65 72 73 2e 40 2a 0a 54 77 6f rintable.ASCII.characters.@*.Two
24380 20 6f 72 20 6d 6f 72 65 20 40 73 61 6d 70 7b 2d 76 7d 20 6f 70 74 69 6f 6e 73 20 73 68 6f 77 20 .or.more.@samp{-v}.options.show.
243a0 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 73 69 6f 6e 2e the.progress.of.(de)compression.
243c0 0a 0a 40 69 74 65 6d 20 2d 30 20 2e 2e 20 2d 39 0a 43 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 ..@item.-0....-9.Compression.lev
243e0 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 72 61 6d 65 74 65 el..Set.the.compression.paramete
24400 72 73 20 28 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 61 6e 64 0a 6d 61 74 63 68 20 6c 65 rs.(dictionary.size.and.match.le
24420 6e 67 74 68 20 6c 69 6d 69 74 29 20 61 73 20 73 68 6f 77 6e 20 69 6e 20 74 68 65 20 74 61 62 6c ngth.limit).as.shown.in.the.tabl
24440 65 20 62 65 6c 6f 77 2e 20 54 68 65 20 64 65 66 61 75 6c 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e e.below..The.default.compression
24460 0a 6c 65 76 65 6c 20 69 73 20 40 73 61 6d 70 7b 2d 36 7d 2c 20 65 71 75 69 76 61 6c 65 6e 74 20 .level.is.@samp{-6},.equivalent.
24480 74 6f 20 40 77 7b 40 73 61 6d 70 7b 2d 73 38 4d 69 42 20 2d 6d 33 36 7d 7d 2e 20 4e 6f 74 65 20 to.@w{@samp{-s8MiB.-m36}}..Note.
244a0 74 68 61 74 0a 40 73 61 6d 70 7b 2d 39 7d 20 63 61 6e 20 62 65 20 6d 75 63 68 20 73 6c 6f 77 65 that.@samp{-9}.can.be.much.slowe
244c0 72 20 74 68 61 6e 20 40 73 61 6d 70 7b 2d 30 7d 2e 20 54 68 65 73 65 20 6f 70 74 69 6f 6e 73 20 r.than.@samp{-0}..These.options.
244e0 68 61 76 65 20 6e 6f 0a 65 66 66 65 63 74 20 77 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e have.no.effect.when.decompressin
24500 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 54 68 65 20 62 69 64 g,.testing,.or.listing...The.bid
24520 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 20 4c 5a imensional.parameter.space.of.LZ
24540 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 72 0a 73 MA.can't.be.mapped.to.a.linear.s
24560 63 61 6c 65 20 6f 70 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 cale.optimal.for.all.files..If.y
24580 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 65 74 69 our.files.are.large,.very.repeti
245a0 74 69 76 65 2c 0a 65 74 63 2c 20 79 6f 75 20 6d 61 79 20 6e 65 65 64 20 74 6f 20 75 73 65 20 74 tive,.etc,.you.may.need.to.use.t
245c0 68 65 20 6f 70 74 69 6f 6e 73 20 40 73 61 6d 70 7b 2d 2d 64 69 63 74 69 6f 6e 61 72 79 2d 73 69 he.options.@samp{--dictionary-si
245e0 7a 65 7d 20 61 6e 64 0a 40 73 61 6d 70 7b 2d 2d 6d 61 74 63 68 2d 6c 65 6e 67 74 68 7d 20 64 69 ze}.and.@samp{--match-length}.di
24600 72 65 63 74 6c 79 20 74 6f 20 61 63 68 69 65 76 65 20 6f 70 74 69 6d 61 6c 20 70 65 72 66 6f 72 rectly.to.achieve.optimal.perfor
24620 6d 61 6e 63 65 2e 0a 0a 49 66 20 73 65 76 65 72 61 6c 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c mance...If.several.compression.l
24640 65 76 65 6c 73 20 6f 72 20 40 73 61 6d 70 7b 2d 73 7d 20 6f 72 20 40 73 61 6d 70 7b 2d 6d 7d 20 evels.or.@samp{-s}.or.@samp{-m}.
24660 6f 70 74 69 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 options.are.given,.the.last.sett
24680 69 6e 67 20 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 73 61 6d ing.is.used..For.example.@w{@sam
246a0 70 7b 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 p{-9.-s64MiB}}.is.equivalent.to.
246c0 40 77 7b 40 73 61 6d 70 7b 2d 73 36 34 4d 69 42 20 2d 6d 32 37 33 7d 7d 0a 0a 40 6d 75 6c 74 69 @w{@samp{-s64MiB.-m273}}..@multi
246e0 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.(
24700 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)}.@
24720 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 69 7a 65 20 item.Level.@tab.Dictionary.size.
24740 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 20 28 2d 6d (-s).@tab.Match.length.limit.(-m
24760 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 20 31 36 20 ).@item.-0.@tab.64.KiB.@tab..16.
24780 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 74 61 62 20 bytes.@item.-1.@tab..1.MiB.@tab.
247a0 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 20 4d 69 42 ..5.bytes.@item.-2.@tab..1.5.MiB
247c0 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 62 20 20 32 .@tab...6.bytes.@item.-3.@tab..2
247e0 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 20 40 74 61 .MiB.@tab...8.bytes.@item.-4.@ta
24800 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 6d 20 2d 35 b..3.MiB.@tab..12.bytes.@item.-5
24820 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 40 69 74 65 .@tab..4.MiB.@tab..20.bytes.@ite
24840 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 74 65 73 0a m.-6.@tab..8.MiB.@tab..36.bytes.
24860 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 38 20 62 79 @item.-7.@tab.16.MiB.@tab..68.by
24880 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 62 20 31 33 tes.@item.-8.@tab.24.MiB.@tab.13
248a0 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 20 40 74 61 2.bytes.@item.-9.@tab.32.MiB.@ta
248c0 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 0a 40 69 74 b.273.bytes.@end.multitable..@it
248e0 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 73 65 73 20 em.--fast.@itemx.--best.Aliases.
24900 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 0a 40 69 74 for.GNU.gzip.compatibility...@it
24920 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 6f 6d 70 72 em.--loose-trailing.When.decompr
24940 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 20 61 6c 6c essing,.testing,.or.listing,.all
24960 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 0a 62 79 74 ow.trailing.data.whose.first.byt
24980 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 69 63 20 62 es.are.so.similar.to.the.magic.b
249a0 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 68 65 79 20 ytes.of.a.lzip.header.that.they.
249c0 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 70 74 20 68 can.be.confused.with.a.corrupt.h
249e0 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 66 69 6c 65 eader..Use.this.option.if.a.file
24a00 20 74 72 69 67 67 65 72 73 20 61 0a 22 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 22 20 65 72 72 .triggers.a."corrupt.header".err
24a20 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 20 61 or.and.the.cause.is.not.indeed.a
24a40 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 0a 0a 4e 75 .corrupt.header...@end.table..Nu
24a60 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 6f 70 74 69 mbers.given.as.arguments.to.opti
24a80 6f 6e 73 20 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 ons.may.be.followed.by.a.multipl
24aa0 69 65 72 0a 61 6e 64 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 40 73 61 6d 70 7b 42 7d 20 66 6f 72 ier.and.an.optional.@samp{B}.for
24ac0 20 22 62 79 74 65 22 2e 0a 0a 54 61 62 6c 65 20 6f 66 20 53 49 20 61 6e 64 20 62 69 6e 61 72 79 ."byte"...Table.of.SI.and.binary
24ae0 20 70 72 65 66 69 78 65 73 20 28 75 6e 69 74 20 6d 75 6c 74 69 70 6c 69 65 72 73 29 3a 0a 0a 40 .prefixes.(unit.multipliers):..@
24b00 6d 75 6c 74 69 74 61 62 6c 65 20 7b 50 72 65 66 69 78 7d 20 7b 6b 69 6c 6f 62 79 74 65 20 20 28 multitable.{Prefix}.{kilobyte..(
24b20 31 30 5e 33 20 3d 20 31 30 30 30 29 7d 20 7b 7c 7d 20 7b 50 72 65 66 69 78 7d 20 7b 6b 69 62 69 10^3.=.1000)}.{|}.{Prefix}.{kibi
24b40 62 79 74 65 20 28 32 5e 31 30 20 3d 20 31 30 32 34 29 7d 0a 40 69 74 65 6d 20 50 72 65 66 69 78 byte.(2^10.=.1024)}.@item.Prefix
24b60 20 40 74 61 62 20 56 61 6c 75 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 40 74 61 62 20 7c .@tab.Value...............@tab.|
24b80 20 40 74 61 62 20 50 72 65 66 69 78 20 40 74 61 62 20 56 61 6c 75 65 0a 40 69 74 65 6d 20 6b 20 .@tab.Prefix.@tab.Value.@item.k.
24ba0 40 74 61 62 20 6b 69 6c 6f 62 79 74 65 20 20 28 31 30 5e 33 20 3d 20 31 30 30 30 29 20 20 40 74 @tab.kilobyte..(10^3.=.1000)..@t
24bc0 61 62 20 7c 20 40 74 61 62 20 4b 69 20 40 74 61 62 20 6b 69 62 69 62 79 74 65 20 28 32 5e 31 30 ab.|.@tab.Ki.@tab.kibibyte.(2^10
24be0 20 3d 20 31 30 32 34 29 0a 40 69 74 65 6d 20 4d 20 40 74 61 62 20 6d 65 67 61 62 79 74 65 20 20 .=.1024).@item.M.@tab.megabyte..
24c00 28 31 30 5e 36 29 20 20 20 20 20 20 20 20 20 40 74 61 62 20 7c 20 40 74 61 62 20 4d 69 20 40 74 (10^6).........@tab.|.@tab.Mi.@t
24c20 61 62 20 6d 65 62 69 62 79 74 65 20 28 32 5e 32 30 29 0a 40 69 74 65 6d 20 47 20 40 74 61 62 20 ab.mebibyte.(2^20).@item.G.@tab.
24c40 67 69 67 61 62 79 74 65 20 20 28 31 30 5e 39 29 20 20 20 20 20 20 20 20 20 40 74 61 62 20 7c 20 gigabyte..(10^9).........@tab.|.
24c60 40 74 61 62 20 47 69 20 40 74 61 62 20 67 69 62 69 62 79 74 65 20 28 32 5e 33 30 29 0a 40 69 74 @tab.Gi.@tab.gibibyte.(2^30).@it
24c80 65 6d 20 54 20 40 74 61 62 20 74 65 72 61 62 79 74 65 20 20 28 31 30 5e 31 32 29 20 20 20 20 20 em.T.@tab.terabyte..(10^12).....
24ca0 20 20 20 40 74 61 62 20 7c 20 40 74 61 62 20 54 69 20 40 74 61 62 20 74 65 62 69 62 79 74 65 20 ...@tab.|.@tab.Ti.@tab.tebibyte.
24cc0 28 32 5e 34 30 29 0a 40 69 74 65 6d 20 50 20 40 74 61 62 20 70 65 74 61 62 79 74 65 20 20 28 31 (2^40).@item.P.@tab.petabyte..(1
24ce0 30 5e 31 35 29 20 20 20 20 20 20 20 20 40 74 61 62 20 7c 20 40 74 61 62 20 50 69 20 40 74 61 62 0^15)........@tab.|.@tab.Pi.@tab
24d00 20 70 65 62 69 62 79 74 65 20 28 32 5e 35 30 29 0a 40 69 74 65 6d 20 45 20 40 74 61 62 20 65 78 .pebibyte.(2^50).@item.E.@tab.ex
24d20 61 62 79 74 65 20 20 20 28 31 30 5e 31 38 29 20 20 20 20 20 20 20 20 40 74 61 62 20 7c 20 40 74 abyte...(10^18)........@tab.|.@t
24d40 61 62 20 45 69 20 40 74 61 62 20 65 78 62 69 62 79 74 65 20 28 32 5e 36 30 29 0a 40 69 74 65 6d ab.Ei.@tab.exbibyte.(2^60).@item
24d60 20 5a 20 40 74 61 62 20 7a 65 74 74 61 62 79 74 65 20 28 31 30 5e 32 31 29 20 20 20 20 20 20 20 .Z.@tab.zettabyte.(10^21).......
24d80 20 40 74 61 62 20 7c 20 40 74 61 62 20 5a 69 20 40 74 61 62 20 7a 65 62 69 62 79 74 65 20 28 32 .@tab.|.@tab.Zi.@tab.zebibyte.(2
24da0 5e 37 30 29 0a 40 69 74 65 6d 20 59 20 40 74 61 62 20 79 6f 74 74 61 62 79 74 65 20 28 31 30 5e ^70).@item.Y.@tab.yottabyte.(10^
24dc0 32 34 29 20 20 20 20 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 24)........@tab.|.@tab.Yi.@tab.y
24de0 6f 62 69 62 79 74 65 20 28 32 5e 38 30 29 0a 40 65 6e 64 20 6d 75 6c 74 69 74 61 62 6c 65 0a 0a obibyte.(2^80).@end.multitable..
24e00 40 73 70 20 31 0a 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 @sp.1.Exit.status:.0.for.a.norma
24e20 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 62 l.exit,.1.for.environmental.prob
24e40 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 66 6c lems.(file.not.found,.invalid.fl
24e60 61 67 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 20 69 6e 64 69 ags,.I/O.errors,.etc),.2.to.indi
24e80 63 61 74 65 20 61 20 63 6f 72 72 75 70 74 20 6f 72 0a 69 6e 76 61 6c 69 64 20 69 6e 70 75 74 20 cate.a.corrupt.or.invalid.input.
24ea0 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
24ec0 6e 63 79 20 65 72 72 6f 72 20 28 65 67 2c 20 62 75 67 29 20 77 68 69 63 68 0a 63 61 75 73 65 64 ncy.error.(eg,.bug).which.caused
24ee0 20 6c 7a 69 70 20 74 6f 20 70 61 6e 69 63 2e 0a 0a 0a 40 6e 6f 64 65 20 51 75 61 6c 69 74 79 20 .lzip.to.panic....@node.Quality.
24f00 61 73 73 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 assurance.@chapter.Design,.devel
24f20 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 40 63 69 6e opment,.and.testing.of.lzip.@cin
24f40 64 65 78 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 dex.quality.assurance..There.are
24f60 20 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 .two.ways.of.constructing.a.soft
24f80 77 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 0a ware.design:.One.way.is.to.make.
24fa0 69 74 20 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 it.so.simple.that.there.are.obvi
24fc0 6f 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 ously.no.deficiencies.and.the.ot
24fe0 68 65 72 20 77 61 79 0a 69 73 20 74 6f 20 6d 61 6b 65 20 69 74 20 73 6f 20 63 6f 6d 70 6c 69 63 her.way.is.to.make.it.so.complic
25000 61 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 ated.that.there.are.no.obvious.d
25020 65 66 69 63 69 65 6e 63 69 65 73 2e 20 54 68 65 0a 66 69 72 73 74 20 6d 65 74 68 6f 64 20 69 73 eficiencies..The.first.method.is
25040 20 66 61 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 .far.more.difficult.@*.---.C.A.R
25060 2e 20 48 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 ..Hoare..Lzip.has.been.designed,
25080 20 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 .written,.and.tested.with.great.
250a0 63 61 72 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 care.to.replace.gzip.and.bzip2.a
250c0 73 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 20 63 s.the.standard.general-purpose.c
250e0 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 74 20 66 6f 72 20 75 6e 69 78 2d 6c 69 6b 65 0a 73 ompressed.format.for.unix-like.s
25100 79 73 74 65 6d 73 2e 20 54 68 69 73 20 63 68 61 70 74 65 72 20 64 65 73 63 72 69 62 65 73 20 74 ystems..This.chapter.describes.t
25120 68 65 20 6c 65 73 73 6f 6e 73 20 6c 65 61 72 6e 65 64 20 66 72 6f 6d 20 74 68 65 73 65 20 70 72 he.lessons.learned.from.these.pr
25140 65 76 69 6f 75 73 0a 66 6f 72 6d 61 74 73 2c 20 61 6e 64 20 74 68 65 69 72 20 61 70 70 6c 69 63 evious.formats,.and.their.applic
25160 61 74 69 6f 6e 20 74 6f 20 74 68 65 20 64 65 73 69 67 6e 20 6f 66 20 6c 7a 69 70 2e 0a 0a 40 73 ation.to.the.design.of.lzip...@s
25180 70 20 31 0a 40 73 65 63 74 69 6f 6e 20 46 6f 72 6d 61 74 20 64 65 73 69 67 6e 0a 0a 57 68 65 6e p.1.@section.Format.design..When
251a0 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 6d 70 .gzip.was.designed.in.1992,.comp
251c0 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 72 65 uters.and.operating.systems.were
251e0 20 6d 75 63 68 0a 6c 65 73 73 20 63 61 70 61 62 6c 65 20 74 68 61 6e 20 74 68 65 79 20 61 72 65 .much.less.capable.than.they.are
25200 20 74 6f 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 .today..The.designers.of.gzip.tr
25220 69 65 64 20 74 6f 20 77 6f 72 6b 20 61 72 6f 75 6e 64 0a 73 6f 6d 65 20 6f 66 20 74 68 6f 73 65 ied.to.work.around.some.of.those
25240 20 6c 69 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 .limitations,.like.8.3.file.name
25260 73 2c 20 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 0a 74 68 65 s,.with.additional.fields.in.the
25280 20 66 69 6c 65 20 66 6f 72 6d 61 74 2e 0a 0a 54 6f 64 61 79 20 74 68 6f 73 65 20 6c 69 6d 69 74 .file.format...Today.those.limit
252a0 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,.
252c0 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
252e0 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
25300 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.
25320 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
25340 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.
25360 6f 74 68 65 72 73 0a 74 68 61 74 20 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
25380 74 65 64 2e 0a 0a 42 7a 69 70 32 20 77 61 73 20 64 65 73 69 67 6e 65 64 20 35 20 79 65 61 72 73 ted...Bzip2.was.designed.5.years
253a0 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 70 6c 65 .later,.and.its.format.is.simple
253c0 72 20 74 68 61 6e 20 74 68 65 20 6f 6e 65 0a 6f 66 20 67 7a 69 70 2e 0a 0a 50 72 6f 62 61 62 6c r.than.the.one.of.gzip...Probabl
253e0 79 20 74 68 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 y.the.worst.defect.of.the.gzip.f
25400 6f 72 6d 61 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 0a ormat.from.the.point.of.view.of.
25420 64 61 74 61 20 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 data.safety.is.the.variable.size
25440 20 6f 66 20 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 .of.its.header..If.the.byte.at.o
25460 66 66 73 65 74 20 33 0a 28 66 6c 61 67 73 29 20 6f 66 20 61 20 67 7a 69 70 20 6d 65 6d 62 65 72 ffset.3.(flags).of.a.gzip.member
25480 20 67 65 74 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 .gets.corrupted,.it.may.become.d
254a0 69 66 66 69 63 75 6c 74 20 74 6f 0a 72 65 63 6f 76 65 72 20 74 68 65 20 64 61 74 61 2c 20 65 76 ifficult.to.recover.the.data,.ev
254c0 65 6e 20 69 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 en.if.the.compressed.blocks.are.
254e0 69 6e 74 61 63 74 2c 20 62 65 63 61 75 73 65 20 69 74 0a 63 61 6e 27 74 20 62 65 20 6b 6e 6f 77 intact,.because.it.can't.be.know
25500 6e 20 77 69 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 n.with.certainty.where.the.compr
25520 65 73 73 65 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 essed.blocks.begin...By.contrast
25540 2c 20 74 68 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 ,.the.header.of.a.lzip.member.ha
25560 73 20 61 20 66 69 78 65 64 20 6c 65 6e 67 74 68 20 6f 66 20 36 2e 20 54 68 65 0a 4c 5a 4d 41 20 s.a.fixed.length.of.6..The.LZMA.
25580 73 74 72 65 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 stream.in.a.lzip.member.always.s
255a0 74 61 72 74 73 20 61 74 20 6f 66 66 73 65 74 20 36 2c 20 6d 61 6b 69 6e 67 20 69 74 0a 74 72 69 tarts.at.offset.6,.making.it.tri
255c0 76 69 61 6c 20 74 6f 20 72 65 63 6f 76 65 72 20 74 68 65 20 64 61 74 61 20 65 76 65 6e 20 69 66 vial.to.recover.the.data.even.if
255e0 20 74 68 65 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 .the.whole.header.becomes.corrup
25600 74 2e 0a 0a 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 t...Bzip2.also.provides.a.header
25620 20 6f 66 20 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 .of.fixed.length.and.marks.the.b
25640 65 67 69 6e 20 61 6e 64 20 65 6e 64 0a 6f 66 20 65 61 63 68 20 63 6f 6d 70 72 65 73 73 65 64 20 egin.and.end.of.each.compressed.
25660 62 6c 6f 63 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 block.with.six.magic.bytes,.maki
25680 6e 67 20 69 74 20 70 6f 73 73 69 62 6c 65 20 74 6f 0a 66 69 6e 64 20 74 68 65 20 63 6f 6d 70 72 ng.it.possible.to.find.the.compr
256a0 65 73 73 65 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 essed.blocks.even.in.case.of.fil
256c0 65 20 64 61 6d 61 67 65 2e 20 42 75 74 20 62 7a 69 70 32 20 64 6f 65 73 0a 6e 6f 74 20 73 74 6f e.damage..But.bzip2.does.not.sto
256e0 72 65 20 74 68 65 20 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 re.the.size.of.each.compressed.b
25700 6c 6f 63 6b 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 lock,.as.lzip.does...Lziprecover
25720 20 70 72 6f 76 69 64 65 73 20 75 6e 69 71 75 65 20 64 61 74 61 20 72 65 63 6f 76 65 72 79 20 63 .provides.unique.data.recovery.c
25740 61 70 61 62 69 6c 69 74 69 65 73 20 62 65 63 61 75 73 65 20 74 68 65 20 6c 7a 69 70 0a 66 6f 72 apabilities.because.the.lzip.for
25760 6d 61 74 20 68 61 73 20 62 65 65 6e 20 64 65 73 69 67 6e 65 64 20 66 72 6f 6d 20 74 68 65 20 62 mat.has.been.designed.from.the.b
25780 65 67 69 6e 6e 69 6e 67 20 74 6f 20 62 65 20 73 69 6d 70 6c 65 20 61 6e 64 20 73 61 66 65 2e 20 eginning.to.be.simple.and.safe..
257a0 49 74 20 61 6c 73 6f 0a 68 65 6c 70 73 20 74 68 61 74 20 74 68 65 20 4c 5a 4d 41 20 64 61 74 61 It.also.helps.that.the.LZMA.data
257c0 20 73 74 72 65 61 6d 20 61 73 20 75 73 65 64 20 62 79 20 6c 7a 69 70 20 69 73 20 65 78 74 72 61 .stream.as.used.by.lzip.is.extra
257e0 6f 72 64 69 6e 61 72 69 6c 79 20 73 61 66 65 0a 62 65 63 61 75 73 65 20 69 74 20 70 72 6f 76 69 ordinarily.safe.because.it.provi
25800 64 65 73 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 2e 20 41 6e des.embedded.error.detection..An
25820 79 20 64 69 73 74 61 6e 63 65 20 6c 61 72 67 65 72 20 74 68 61 6e 20 74 68 65 0a 64 69 63 74 69 y.distance.larger.than.the.dicti
25840 6f 6e 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 20 73 onary.size.acts.as.a.forbidden.s
25860 79 6d 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 ymbol,.allowing.the.decompressor
25880 20 74 6f 0a 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 .to.detect.the.approximate.posit
258a0 69 6f 6e 20 6f 66 20 65 72 72 6f 72 73 2c 20 61 6e 64 20 6c 65 61 76 69 6e 67 20 76 65 72 79 20 ion.of.errors,.and.leaving.very.
258c0 6c 69 74 74 6c 65 20 77 6f 72 6b 20 66 6f 72 0a 74 68 65 20 63 68 65 63 6b 20 73 65 71 75 65 6e little.work.for.the.check.sequen
258e0 63 65 20 28 43 52 43 20 61 6e 64 20 64 61 74 61 20 73 69 7a 65 73 29 20 69 6e 20 74 68 65 20 64 ce.(CRC.and.data.sizes).in.the.d
25900 65 74 65 63 74 69 6f 6e 20 6f 66 20 65 72 72 6f 72 73 2e 20 4c 7a 69 70 20 69 73 0a 75 73 75 61 etection.of.errors..Lzip.is.usua
25920 6c 6c 79 20 61 62 6c 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 lly.able.to.detect.all.possible.
25940 62 69 74 20 66 6c 69 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 bit.flips.in.the.compressed.data
25960 20 77 69 74 68 6f 75 74 0a 72 65 73 6f 72 74 69 6e 67 20 74 6f 20 74 68 65 20 63 68 65 63 6b 20 .without.resorting.to.the.check.
25980 73 65 71 75 65 6e 63 65 2e 20 49 74 20 77 6f 75 6c 64 20 62 65 20 64 69 66 66 69 63 75 6c 74 20 sequence..It.would.be.difficult.
259a0 74 6f 20 77 72 69 74 65 20 61 6e 20 61 75 74 6f 6d 61 74 69 63 0a 72 65 63 6f 76 65 72 79 20 74 to.write.an.automatic.recovery.t
259c0 6f 6f 6c 20 6c 69 6b 65 20 6c 7a 69 70 72 65 63 6f 76 65 72 20 66 6f 72 20 74 68 65 20 67 7a 69 ool.like.lziprecover.for.the.gzi
259e0 70 20 66 6f 72 6d 61 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 p.format..And,.as.far.as.I.know,
25a00 0a 69 74 20 68 61 73 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 .it.has.never.been.written...Lzi
25a20 70 2c 20 6c 69 6b 65 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 p,.like.gzip.and.bzip2,.uses.a.C
25a40 52 43 33 32 20 74 6f 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 RC32.to.check.the.integrity.of.t
25a60 68 65 0a 64 65 63 6f 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 he.decompressed.data.because.it.
25a80 70 72 6f 76 69 64 65 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 provides.optimal.accuracy.in.the
25aa0 20 64 65 74 65 63 74 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 .detection.of.errors.up.to.a.com
25ac0 70 72 65 73 73 65 64 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 pressed.size.of.about.@w{16.GiB}
25ae0 2c 20 61 20 73 69 7a 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 ,.a.size.larger.than.that.of.mos
25b00 74 20 66 69 6c 65 73 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 t.files..In.the.case.of.lzip,.th
25b20 65 20 61 64 64 69 74 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 e.additional.detection.capabilit
25b40 79 20 6f 66 0a 74 68 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 y.of.the.decompressor.reduces.th
25b60 65 20 70 72 6f 62 61 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 e.probability.of.undetected.erro
25b80 72 73 20 73 65 76 65 72 61 6c 0a 6d 69 6c 6c 69 6f 6e 20 74 69 6d 65 73 20 6d 6f 72 65 2c 20 72 rs.several.million.times.more,.r
25ba0 65 73 75 6c 74 69 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 esulting.in.a.combined.integrity
25bc0 20 63 68 65 63 6b 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 .checking.optimally.accurate.for
25be0 20 61 6e 79 20 6d 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 .any.member.size.produced.by.lzi
25c00 70 2e 20 50 72 65 6c 69 6d 69 6e 61 72 79 20 72 65 73 75 6c 74 73 20 73 75 67 67 65 73 74 0a 74 p..Preliminary.results.suggest.t
25c20 68 61 74 20 74 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 69 73 20 73 61 66 65 20 65 6e 6f 75 hat.the.lzip.format.is.safe.enou
25c40 67 68 20 74 6f 20 62 65 20 75 73 65 64 20 69 6e 20 63 72 69 74 69 63 61 6c 20 73 61 66 65 74 79 gh.to.be.used.in.critical.safety
25c60 20 61 76 69 6f 6e 69 63 73 0a 73 79 73 74 65 6d 73 2e 0a 0a 54 68 65 20 6c 7a 69 70 20 66 6f 72 .avionics.systems...The.lzip.for
25c80 6d 61 74 20 69 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 mat.is.designed.for.long-term.ar
25ca0 63 68 69 76 69 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 chiving..Therefore.it.excludes.a
25cc0 6e 79 20 75 6e 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 ny.unneeded.features.that.may.in
25ce0 74 65 72 66 65 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 terfere.with.the.future.extracti
25d00 6f 6e 20 6f 66 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 on.of.the.decompressed.data...@s
25d20 70 20 31 0a 40 73 75 62 73 65 63 74 69 6f 6e 20 47 7a 69 70 20 66 6f 72 6d 61 74 20 28 6d 69 73 p.1.@subsection.Gzip.format.(mis
25d40 29 66 65 61 74 75 72 65 73 20 6e 6f 74 20 70 72 65 73 65 6e 74 20 69 6e 20 6c 7a 69 70 0a 0a 40 )features.not.present.in.lzip..@
25d60 74 61 62 6c 65 20 40 73 61 6d 70 0a 40 69 74 65 6d 20 4d 75 6c 74 69 70 6c 65 20 61 6c 67 6f 72 table.@samp.@item.Multiple.algor
25d80 69 74 68 6d 73 0a 0a 47 7a 69 70 20 70 72 6f 76 69 64 65 73 20 61 20 43 4d 20 28 43 6f 6d 70 72 ithms..Gzip.provides.a.CM.(Compr
25da0 65 73 73 69 6f 6e 20 4d 65 74 68 6f 64 29 20 66 69 65 6c 64 20 74 68 61 74 20 68 61 73 20 6e 65 ession.Method).field.that.has.ne
25dc0 76 65 72 20 62 65 65 6e 20 75 73 65 64 0a 62 65 63 61 75 73 65 20 69 74 20 69 73 20 61 20 62 61 ver.been.used.because.it.is.a.ba
25de0 64 20 69 64 65 61 20 74 6f 20 62 65 67 69 6e 20 77 69 74 68 2e 20 4e 65 77 20 63 6f 6d 70 72 65 d.idea.to.begin.with..New.compre
25e00 73 73 69 6f 6e 20 6d 65 74 68 6f 64 73 20 6d 61 79 20 72 65 71 75 69 72 65 0a 61 64 64 69 74 69 ssion.methods.may.require.additi
25e20 6f 6e 61 6c 20 66 69 65 6c 64 73 2c 20 6d 61 6b 69 6e 67 20 69 74 20 69 6d 70 6f 73 73 69 62 6c onal.fields,.making.it.impossibl
25e40 65 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 6e 65 77 20 6d 65 74 68 6f 64 73 20 61 6e 64 2c 20 e.to.implement.new.methods.and,.
25e60 61 74 20 74 68 65 0a 73 61 6d 65 20 74 69 6d 65 2c 20 6b 65 65 70 20 74 68 65 20 73 61 6d 65 20 at.the.same.time,.keep.the.same.
25e80 66 6f 72 6d 61 74 2e 20 54 68 69 73 20 66 69 65 6c 64 20 64 6f 65 73 20 6e 6f 74 20 73 6f 6c 76 format..This.field.does.not.solv
25ea0 65 20 74 68 65 20 70 72 6f 62 6c 65 6d 20 6f 66 0a 66 6f 72 6d 61 74 20 70 72 6f 6c 69 66 65 72 e.the.problem.of.format.prolifer
25ec0 61 74 69 6f 6e 3b 20 69 74 20 6a 75 73 74 20 6d 61 6b 65 73 20 74 68 65 20 70 72 6f 62 6c 65 6d ation;.it.just.makes.the.problem
25ee0 20 6c 65 73 73 20 6f 62 76 69 6f 75 73 2e 0a 0a 40 69 74 65 6d 20 4f 70 74 69 6f 6e 61 6c 20 66 .less.obvious...@item.Optional.f
25f00 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 6c 20 ields.in.header..Unless.special.
25f20 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 6c 20 precautions.are.taken,.optional.
25f40 66 69 65 6c 64 73 20 61 72 65 20 67 65 6e 65 72 61 6c 6c 79 20 61 0a 62 61 64 20 69 64 65 61 20 fields.are.generally.a.bad.idea.
25f60 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 6f 66 because.they.produce.a.header.of
25f80 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 72 0a .variable.size..The.gzip.header.
25fa0 68 61 73 20 32 20 66 69 65 6c 64 73 20 74 68 61 74 2c 20 69 6e 20 61 64 64 69 74 69 6f 6e 20 74 has.2.fields.that,.in.addition.t
25fc0 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 6d 69 o.being.optional,.are.zero-termi
25fe0 6e 61 74 65 64 2e 0a 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 nated..This.means.that.if.any.by
26000 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 64 2c te.inside.the.field.gets.zeroed,
26020 20 6f 72 20 69 66 20 74 68 65 0a 74 65 72 6d 69 6e 61 74 69 6e 67 20 7a 65 72 6f 20 67 65 74 73 .or.if.the.terminating.zero.gets
26040 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 6f 20 .altered,.gzip.won't.be.able.to.
26060 66 69 6e 64 20 6e 65 69 74 68 65 72 20 74 68 65 0a 68 65 61 64 65 72 20 43 52 43 20 6e 6f 72 20 find.neither.the.header.CRC.nor.
26080 74 68 65 20 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 4f 70 the.compressed.blocks...@item.Op
260a0 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 6e 67 tional.CRC.for.the.header..Using
260c0 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 72 20 .an.optional.CRC.for.the.header.
260e0 69 73 20 6e 6f 74 20 6f 6e 6c 79 20 61 20 62 61 64 20 69 64 65 61 2c 20 69 74 20 69 73 20 61 6e is.not.only.a.bad.idea,.it.is.an
26100 20 65 72 72 6f 72 3b 0a 69 74 20 63 69 72 63 75 6d 76 65 6e 74 73 20 74 68 65 20 48 61 6d 6d 69 .error;.it.circumvents.the.Hammi
26120 6e 67 20 64 69 73 74 61 6e 63 65 20 28 48 44 29 20 6f 66 20 74 68 65 20 43 52 43 20 61 6e 64 20 ng.distance.(HD).of.the.CRC.and.
26140 6d 61 79 20 70 72 65 76 65 6e 74 20 74 68 65 0a 65 78 74 72 61 63 74 69 6f 6e 20 6f 66 20 70 65 may.prevent.the.extraction.of.pe
26160 72 66 65 63 74 6c 79 20 67 6f 6f 64 20 64 61 74 61 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 rfectly.good.data..For.example,.
26180 69 66 20 74 68 65 20 43 52 43 20 69 73 20 75 73 65 64 20 61 6e 64 20 74 68 65 0a 62 69 74 20 65 if.the.CRC.is.used.and.the.bit.e
261a0 6e 61 62 6c 69 6e 67 20 69 74 20 69 73 20 72 65 73 65 74 20 62 79 20 61 20 62 69 74 20 66 6c 69 nabling.it.is.reset.by.a.bit.fli
261c0 70 2c 20 74 68 65 20 68 65 61 64 65 72 20 77 69 6c 6c 20 61 70 70 65 61 72 20 74 6f 20 62 65 20 p,.the.header.will.appear.to.be.
261e0 69 6e 74 61 63 74 0a 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
26200 74 29 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 63 6b 73 20 77 t).while.the.compressed.blocks.w
26220 69 6c 6c 20 61 70 70 65 61 72 20 74 6f 20 62 65 0a 74 6f 74 61 6c 6c 79 20 75 6e 72 65 63 6f 76 ill.appear.to.be.totally.unrecov
26240 65 72 61 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 erable.(in.spite.of.being.intact
26260 29 2e 20 56 65 72 79 20 6d 69 73 6c 65 61 64 69 6e 67 20 69 6e 64 65 65 64 2e 0a 0a 40 69 74 65 )..Very.misleading.indeed...@ite
26280 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 20 73 74 6f 72 m.Metadata..The.gzip.format.stor
262a0 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 64 69 66 es.some.metadata,.like.the.modif
262c0 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 6c 20 66 69 6c ication.time.of.the.original.fil
262e0 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 6e 20 77 68 69 e.or.the.operating.system.on.whi
26300 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 0a 54 68 69 73 20 ch.compression.took.place..This.
26320 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 6d 70 72 65 73 complicates.reproducible.compres
26340 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 0a 63 6f 6d 70 72 65 sion.(obtaining.identical.compre
26360 73 73 65 64 20 6f 75 74 70 75 74 20 66 72 6f 6d 20 69 64 65 6e 74 69 63 61 6c 20 69 6e 70 75 74 ssed.output.from.identical.input
26380 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 20 4c 7a 69 70 )...@end.table..@subsection.Lzip
263a0 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 61 .format.improvements.over.gzip.a
263c0 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 6d 20 36 34 2d nd.bzip2..@table.@samp.@item.64-
263e0 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 65 20 6d 6f 73 bit.size.field..Probably.the.mos
26400 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 63 6f 6d 69 6e t.frequently.reported.shortcomin
26420 67 20 6f 66 20 74 68 65 20 67 7a 69 70 20 66 6f 72 6d 61 74 20 69 73 0a 74 68 61 74 20 69 74 20 g.of.the.gzip.format.is.that.it.
26440 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 66 69 63 61 6e only.stores.the.least.significan
26460 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 65 64 0a 73 69 t.32.bits.of.the.uncompressed.si
26480 7a 65 2e 20 54 68 65 20 73 69 7a 65 20 6f 66 20 61 6e 79 20 66 69 6c 65 20 6c 61 72 67 65 72 20 ze..The.size.of.any.file.larger.
264a0 74 68 61 6e 20 40 77 7b 34 20 47 69 42 7d 20 67 65 74 73 20 74 72 75 6e 63 61 74 65 64 2e 0a 0a than.@w{4.GiB}.gets.truncated...
264c0 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
264e0 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 54 68 65 20 6c 7a 69 essed.size.of.the.file...The.lzi
26500 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 66 69 65 6c 64 p.format.provides.a.64-bit.field
26520 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 0a 41 64 64 69 .for.the.uncompressed.size..Addi
26540 74 69 6f 6e 61 6c 6c 79 2c 20 6c 7a 69 70 20 70 72 6f 64 75 63 65 73 20 6d 75 6c 74 69 6d 65 6d tionally,.lzip.produces.multimem
26560 62 65 72 20 6f 75 74 70 75 74 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 77 68 65 6e 20 74 68 ber.output.automatically.when.th
26580 65 0a 73 69 7a 65 20 69 73 20 74 6f 6f 20 6c 61 72 67 65 20 66 6f 72 20 61 20 73 69 6e 67 6c 65 e.size.is.too.large.for.a.single
265a0 20 6d 65 6d 62 65 72 2c 20 61 6c 6c 6f 77 69 6e 67 20 66 6f 72 20 61 6e 20 75 6e 6c 69 6d 69 74 .member,.allowing.for.an.unlimit
265c0 65 64 0a 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 2e 0a 0a 40 69 74 65 6d 20 44 69 73 ed.uncompressed.size...@item.Dis
265e0 74 72 69 62 75 74 65 64 20 69 6e 64 65 78 0a 0a 54 68 65 20 6c 7a 69 70 20 66 6f 72 6d 61 74 20 tributed.index..The.lzip.format.
26600 70 72 6f 76 69 64 65 73 20 61 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 64 65 78 20 74 68 61 provides.a.distributed.index.tha
26620 74 2c 20 61 6d 6f 6e 67 20 6f 74 68 65 72 20 74 68 69 6e 67 73 2c 0a 68 65 6c 70 73 20 70 6c 7a t,.among.other.things,.helps.plz
26640 69 70 20 74 6f 20 64 65 63 6f 6d 70 72 65 73 73 20 73 65 76 65 72 61 6c 20 74 69 6d 65 73 20 66 ip.to.decompress.several.times.f
26660 61 73 74 65 72 20 74 68 61 6e 20 70 69 67 7a 20 61 6e 64 20 68 65 6c 70 73 0a 6c 7a 69 70 72 65 aster.than.pigz.and.helps.lzipre
26680 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 20 74 68 65 20 67 7a cover.do.its.job..Neither.the.gz
266a0 69 70 20 66 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 ip.format.nor.the.bzip2.format.d
266c0 6f 0a 70 72 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 o.provide.an.index...A.distribut
266e0 65 64 20 69 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 ed.index.is.safer.and.more.scala
26700 62 6c 65 20 74 68 61 6e 20 61 20 6d 6f 6e 6f 6c 69 74 68 69 63 20 69 6e 64 65 78 2e 0a 54 68 65 ble.than.a.monolithic.index..The
26720 20 6d 6f 6e 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 .monolithic.index.introduces.a.s
26740 69 6e 67 6c 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 0a 63 6f ingle.point.of.failure.in.the.co
26760 6d 70 72 65 73 73 65 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 mpressed.file.and.may.limit.the.
26780 6e 75 6d 62 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 0a 75 number.of.members.or.the.total.u
267a0 6e 63 6f 6d 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 ncompressed.size...@end.table..@
267c0 73 65 63 74 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 section.Quality.of.implementatio
267e0 6e 0a 0a 40 74 61 62 6c 65 20 40 73 61 6d 70 0a 40 69 74 65 6d 20 41 63 63 75 72 61 74 65 20 61 n..@table.@samp.@item.Accurate.a
26800 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 0a 0a 54 68 65 20 6c nd.robust.error.detection..The.l
26820 7a 69 70 20 66 6f 72 6d 61 74 20 70 72 6f 76 69 64 65 73 20 33 20 66 61 63 74 6f 72 20 69 6e 74 zip.format.provides.3.factor.int
26840 65 67 72 69 74 79 20 63 68 65 63 6b 69 6e 67 20 61 6e 64 20 74 68 65 0a 64 65 63 6f 6d 70 72 65 egrity.checking.and.the.decompre
26860 73 73 6f 72 73 20 72 65 70 6f 72 74 20 6d 69 73 6d 61 74 63 68 65 73 20 69 6e 20 65 61 63 68 20 ssors.report.mismatches.in.each.
26880 66 61 63 74 6f 72 20 73 65 70 61 72 61 74 65 6c 79 2e 20 54 68 69 73 20 77 61 79 20 69 66 0a 6a factor.separately..This.way.if.j
268a0 75 73 74 20 6f 6e 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 ust.one.byte.in.one.factor.fails
268c0 20 62 75 74 20 74 68 65 20 6f 74 68 65 72 20 74 77 6f 20 66 61 63 74 6f 72 73 20 6d 61 74 63 68 .but.the.other.two.factors.match
268e0 20 74 68 65 0a 64 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 .the.data,.it.probably.means.tha
26900 74 20 74 68 65 20 64 61 74 61 20 61 72 65 20 69 6e 74 61 63 74 20 61 6e 64 20 74 68 65 20 63 6f t.the.data.are.intact.and.the.co
26920 72 72 75 70 74 69 6f 6e 20 6a 75 73 74 0a 61 66 66 65 63 74 73 20 74 68 65 20 6d 69 73 6d 61 74 rruption.just.affects.the.mismat
26940 63 68 69 6e 67 20 66 61 63 74 6f 72 20 28 43 52 43 20 6f 72 20 64 61 74 61 20 73 69 7a 65 29 20 ching.factor.(CRC.or.data.size).
26960 69 6e 20 74 68 65 20 63 68 65 63 6b 20 73 65 71 75 65 6e 63 65 2e 0a 0a 40 69 74 65 6d 20 4d 75 in.the.check.sequence...@item.Mu
26980 6c 74 69 70 6c 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 0a 0a 4a 75 73 74 20 6c 69 6b ltiple.implementations..Just.lik
269a0 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 20 33 20 66 61 63 e.the.lzip.format.provides.3.fac
269c0 74 6f 72 20 70 72 6f 74 65 63 74 69 6f 6e 20 61 67 61 69 6e 73 74 0a 75 6e 64 65 74 65 63 74 65 tor.protection.against.undetecte
269e0 64 20 64 61 74 61 20 63 6f 72 72 75 70 74 69 6f 6e 2c 20 74 68 65 20 64 65 76 65 6c 6f 70 6d 65 d.data.corruption,.the.developme
26a00 6e 74 20 6d 65 74 68 6f 64 6f 6c 6f 67 79 20 6f 66 20 74 68 65 20 6c 7a 69 70 0a 66 61 6d 69 6c nt.methodology.of.the.lzip.famil
26a20 79 20 6f 66 20 63 6f 6d 70 72 65 73 73 6f 72 73 20 70 72 6f 76 69 64 65 73 20 33 20 66 61 63 74 y.of.compressors.provides.3.fact
26a40 6f 72 20 70 72 6f 74 65 63 74 69 6f 6e 20 61 67 61 69 6e 73 74 20 75 6e 64 65 74 65 63 74 65 64 or.protection.against.undetected
26a60 0a 70 72 6f 67 72 61 6d 6d 69 6e 67 20 65 72 72 6f 72 73 2e 0a 0a 54 68 72 65 65 20 72 65 6c 61 .programming.errors...Three.rela
26a80 74 65 64 20 62 75 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 ted.but.independent.compressor.i
26aa0 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 2c 20 6c 7a 69 70 2c 20 63 6c 7a 69 70 2c 0a 61 6e 64 mplementations,.lzip,.clzip,.and
26ac0 20 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 .minilzip/lzlib,.are.developed.c
26ae0 6f 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 oncurrently..Every.stable.releas
26b00 65 20 6f 66 0a 61 6e 79 20 6f 66 20 74 68 65 6d 20 69 73 20 73 75 62 6a 65 63 74 65 64 20 74 6f e.of.any.of.them.is.subjected.to
26b20 20 61 20 68 75 6e 64 72 65 64 20 68 6f 75 72 73 20 6f 66 20 69 6e 74 65 6e 73 69 76 65 20 74 65 .a.hundred.hours.of.intensive.te
26b40 73 74 69 6e 67 20 74 6f 0a 76 65 72 69 66 79 20 74 68 61 74 20 69 74 20 70 72 6f 64 75 63 65 73 sting.to.verify.that.it.produces
26b60 20 69 64 65 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 .identical.output.to.the.other.t
26b80 77 6f 2e 20 54 68 69 73 0a 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 61 6c 6c 20 74 68 72 wo..This.guarantees.that.all.thr
26ba0 65 65 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 ee.implement.the.same.algorithm,
26bc0 20 61 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 .and.makes.it.unlikely.that.any.
26be0 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 20 75 6e 64 69 of.them.may.contain.serious.undi
26c00 73 63 6f 76 65 72 65 64 20 65 72 72 6f 72 73 2e 20 49 6e 0a 66 61 63 74 2c 20 6e 6f 20 65 72 72 scovered.errors..In.fact,.no.err
26c20 6f 72 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 ors.have.been.discovered.in.lzip
26c40 20 73 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 .since.2009...Additionally,.the.
26c60 74 68 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 three.implementations.have.been.
26c80 65 78 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 extensively.tested.with.@uref{ht
26ca0 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 6d 61 6e 75 61 6c 2f tp://www.nongnu.org/lzip/manual/
26cc0 6c 7a 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 lziprecover_manual.html#Unzcrash
26ce0 2c 2c 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 ,,unzcrash},.valgrind,.and.@samp
26d00 7b 61 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 {american.fuzzy.lop}.without.fin
26d20 64 69 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 ding.a.single.vulnerability.or.f
26d40 61 6c 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 alse.negative..@ifnothtml.@xref{
26d60 55 6e 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 Unzcrash,,,lziprecover}..@end.if
26d80 6e 6f 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 nothtml..@item.Dictionary.size..
26da0 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
26dc0 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
26de0 68 20 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 h.file..In.addition.to.reducing.
26e00 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 65 64 20 66 6f the.amount.of.memory.required.fo
26e20 72 20 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 r.decompression,.this.feature.al
26e40 73 6f 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 so.minimizes.the.probability.of.
26e60 62 65 69 6e 67 20 61 66 66 65 63 74 65 64 20 62 79 20 52 41 4d 0a 65 72 72 6f 72 73 20 64 75 72 being.affected.by.RAM.errors.dur
26e80 69 6e 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 ing.compression..@c.key4_mask..@
26ea0 69 74 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 item.Exit.status..Returning.a.wa
26ec0 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 66 6c rning.status.of.2.is.a.design.fl
26ee0 61 77 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 aw.of.compress.that.leaked.into.
26f00 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 62 7a 69 70 32 20 61 the.design.of.gzip..Both.bzip2.a
26f20 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 73 20 66 6c 61 77 2e nd.lzip.are.free.from.this.flaw.
26f40 0a 0a 40 65 6e 64 20 74 61 62 6c 65 0a 0a 0a 40 6e 6f 64 65 20 46 69 6c 65 20 66 6f 72 6d 61 74 ..@end.table...@node.File.format
26f60 0a 40 63 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 .@chapter.File.format.@cindex.fi
26f80 6c 65 20 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 le.format..Perfection.is.reached
26fa0 2c 20 6e 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 ,.not.when.there.is.no.longer.an
26fc0 79 74 68 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 ything.to.add,.but.when.there.is
26fe0 20 6e 6f 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 .no.longer.anything.to.take.away
27000 2e 40 2a 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 .@*.---.Antoine.de.Saint-Exupery
27020 0a 0a 40 73 70 20 31 0a 49 6e 20 74 68 65 20 64 69 61 67 72 61 6d 20 62 65 6c 6f 77 2c 20 61 20 ..@sp.1.In.the.diagram.below,.a.
27040 62 6f 78 20 6c 69 6b 65 20 74 68 69 73 3a 0a 0a 40 76 65 72 62 61 74 69 6d 0a 2b 2d 2d 2d 2b 0a box.like.this:..@verbatim.+---+.
27060 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 73 20 6d 69 67 68 |...|.<--.the.vertical.bars.migh
27080 74 20 62 65 20 6d 69 73 73 69 6e 67 0a 2b 2d 2d 2d 2b 0a 40 65 6e 64 20 76 65 72 62 61 74 69 6d t.be.missing.+---+.@end.verbatim
270a0 0a 0a 72 65 70 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 ..represents.one.byte;.a.box.lik
270c0 65 20 74 68 69 73 3a 0a 0a 40 76 65 72 62 61 74 69 6d 0a 2b 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d e.this:..@verbatim.+============
270e0 3d 3d 2b 0a 7c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 0a 2b 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ==+.|..............|.+==========
27100 3d 3d 3d 3d 2b 0a 40 65 6e 64 20 76 65 72 62 61 74 69 6d 0a 0a 72 65 70 72 65 73 65 6e 74 73 20 ====+.@end.verbatim..represents.
27120 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 2e 0a 0a 40 73 70 a.variable.number.of.bytes...@sp
27140 20 31 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 61 20 73 65 72 .1.A.lzip.file.consists.of.a.ser
27160 69 65 73 20 6f 66 20 22 6d 65 6d 62 65 72 73 22 20 28 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 ies.of."members".(compressed.dat
27180 61 20 73 65 74 73 29 2e 0a 54 68 65 20 6d 65 6d 62 65 72 73 20 73 69 6d 70 6c 79 20 61 70 70 65 a.sets)..The.members.simply.appe
271a0 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 68 65 20 66 69 6c 65 ar.one.after.another.in.the.file
271c0 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 72 6d 61 74 69 6f 6e ,.with.no.additional.information
271e0 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 72 20 74 68 65 6d 2e .before,.between,.or.after.them.
27200 0a 0a 45 61 63 68 20 6d 65 6d 62 65 72 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 ..Each.member.has.the.following.
27220 73 74 72 75 63 74 75 72 65 3a 0a 0a 40 76 65 72 62 61 74 69 6d 0a 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b structure:..@verbatim.+--+--+--+
27240 2d 2d 2b 2d 2d 2d 2d 2b 2d 2d 2d 2d 2b 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 2b 2d 2b 2d 2b 2d --+----+----+=============+-+-+-
27260 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 2b 2d +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
27280 2b 2d 2b 0a 7c 20 49 44 20 73 74 72 69 6e 67 20 7c 20 56 4e 20 7c 20 44 53 20 7c 20 4c 5a 4d 41 +-+.|.ID.string.|.VN.|.DS.|.LZMA
272a0 20 73 74 72 65 61 6d 20 7c 20 43 52 43 33 32 20 7c 20 20 20 44 61 74 61 20 73 69 7a 65 20 20 20 .stream.|.CRC32.|...Data.size...
272c0 7c 20 20 4d 65 6d 62 65 72 20 73 69 7a 65 20 20 7c 0a 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b 2d 2d 2b 2d |..Member.size..|.+--+--+--+--+-
272e0 2d 2d 2d 2b 2d 2d 2d 2d 2b 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 2b 2d 2b 2d 2b 2d 2b 2d 2b 2d ---+----+=============+-+-+-+-+-
27300 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 2b 0a +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
27320 40 65 6e 64 20 76 65 72 62 61 74 69 6d 0a 0a 41 6c 6c 20 6d 75 6c 74 69 62 79 74 65 20 76 61 6c @end.verbatim..All.multibyte.val
27340 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 20 ues.are.stored.in.little.endian.
27360 6f 72 64 65 72 2e 0a 0a 40 74 61 62 6c 65 20 40 73 61 6d 70 0a 40 69 74 65 6d 20 49 44 20 73 74 order...@table.@samp.@item.ID.st
27380 72 69 6e 67 20 28 74 68 65 20 22 6d 61 67 69 63 22 20 62 79 74 65 73 29 0a 41 20 66 6f 75 72 20 ring.(the."magic".bytes).A.four.
273a0 62 79 74 65 20 73 74 72 69 6e 67 2c 20 69 64 65 6e 74 69 66 79 69 6e 67 20 74 68 65 20 6c 7a 69 byte.string,.identifying.the.lzi
273c0 70 20 66 6f 72 6d 61 74 2c 20 77 69 74 68 20 74 68 65 20 76 61 6c 75 65 20 22 4c 5a 49 50 22 0a p.format,.with.the.value."LZIP".
273e0 28 30 78 34 43 2c 20 30 78 35 41 2c 20 30 78 34 39 2c 20 30 78 35 30 29 2e 0a 0a 40 69 74 65 6d (0x4C,.0x5A,.0x49,.0x50)...@item
27400 20 56 4e 20 28 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 2c 20 31 20 62 79 74 65 29 0a 4a 75 73 .VN.(version.number,.1.byte).Jus
27420 74 20 69 6e 20 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 t.in.case.something.needs.to.be.
27440 6d 6f 64 69 66 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 modified.in.the.future..1.for.no
27460 77 2e 0a 0a 40 61 6e 63 68 6f 72 7b 63 6f 64 65 64 2d 64 69 63 74 2d 73 69 7a 65 7d 0a 40 69 74 w...@anchor{coded-dict-size}.@it
27480 65 6d 20 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 em.DS.(coded.dictionary.size,.1.
274a0 62 79 74 65 29 0a 54 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 69 73 20 63 61 6c byte).The.dictionary.size.is.cal
274c0 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 32 20 28 culated.by.taking.a.power.of.2.(
274e0 74 68 65 20 62 61 73 65 20 73 69 7a 65 29 0a 61 6e 64 20 73 75 62 74 72 61 63 74 69 6e 67 20 66 the.base.size).and.subtracting.f
27500 72 6f 6d 20 69 74 20 61 20 66 72 61 63 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 30 2f 31 36 20 61 rom.it.a.fraction.between.0/16.a
27520 6e 64 20 37 2f 31 36 20 6f 66 20 74 68 65 20 62 61 73 65 20 73 69 7a 65 2e 40 2a 0a 42 69 74 73 nd.7/16.of.the.base.size.@*.Bits
27540 20 34 2d 30 20 63 6f 6e 74 61 69 6e 20 74 68 65 20 62 61 73 65 20 32 20 6c 6f 67 61 72 69 74 68 .4-0.contain.the.base.2.logarith
27560 6d 20 6f 66 20 74 68 65 20 62 61 73 65 20 73 69 7a 65 20 28 31 32 20 74 6f 20 32 39 29 2e 40 2a m.of.the.base.size.(12.to.29).@*
27580 0a 42 69 74 73 20 37 2d 35 20 63 6f 6e 74 61 69 6e 20 74 68 65 20 6e 75 6d 65 72 61 74 6f 72 20 .Bits.7-5.contain.the.numerator.
275a0 6f 66 20 74 68 65 20 66 72 61 63 74 69 6f 6e 20 28 30 20 74 6f 20 37 29 20 74 6f 20 73 75 62 74 of.the.fraction.(0.to.7).to.subt
275c0 72 61 63 74 0a 66 72 6f 6d 20 74 68 65 20 62 61 73 65 20 73 69 7a 65 20 74 6f 20 6f 62 74 61 69 ract.from.the.base.size.to.obtai
275e0 6e 20 74 68 65 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 2e 40 2a 0a 45 78 61 6d 70 6c 65 n.the.dictionary.size.@*.Example
27600 3a 20 30 78 44 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 :.0xD3.=.2^19.-.6.*.2^15.=.512.K
27620 69 42 20 2d 20 36 20 2a 20 33 32 20 4b 69 42 20 3d 20 33 32 30 20 4b 69 42 40 2a 0a 56 61 6c 69 iB.-.6.*.32.KiB.=.320.KiB@*.Vali
27640 64 20 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 d.values.for.dictionary.size.ran
27660 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 0a 40 69 74 65 6d ge.from.4.KiB.to.512.MiB...@item
27680 20 4c 5a 4d 41 20 73 74 72 65 61 6d 0a 54 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 2c 20 66 69 .LZMA.stream.The.LZMA.stream,.fi
276a0 6e 69 73 68 65 64 20 62 79 20 61 6e 20 65 6e 64 20 6f 66 20 73 74 72 65 61 6d 20 6d 61 72 6b 65 nished.by.an.end.of.stream.marke
276c0 72 2e 20 55 73 65 73 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 73 0a 66 6f 72 20 65 6e 63 6f 64 r..Uses.default.values.for.encod
276e0 65 72 20 70 72 6f 70 65 72 74 69 65 73 2e 20 40 78 72 65 66 7b 53 74 72 65 61 6d 20 66 6f 72 6d er.properties..@xref{Stream.form
27700 61 74 7d 2c 20 66 6f 72 20 61 20 63 6f 6d 70 6c 65 74 65 20 64 65 73 63 72 69 70 74 69 6f 6e 2e at},.for.a.complete.description.
27720 0a 0a 40 69 74 65 6d 20 43 52 43 33 32 20 28 34 20 62 79 74 65 73 29 0a 43 79 63 6c 69 63 20 52 ..@item.CRC32.(4.bytes).Cyclic.R
27740 65 64 75 6e 64 61 6e 63 79 20 43 68 65 63 6b 20 28 43 52 43 29 20 6f 66 20 74 68 65 20 75 6e 63 edundancy.Check.(CRC).of.the.unc
27760 6f 6d 70 72 65 73 73 65 64 20 6f 72 69 67 69 6e 61 6c 20 64 61 74 61 2e 0a 0a 40 69 74 65 6d 20 ompressed.original.data...@item.
27780 44 61 74 61 20 73 69 7a 65 20 28 38 20 62 79 74 65 73 29 0a 53 69 7a 65 20 6f 66 20 74 68 65 20 Data.size.(8.bytes).Size.of.the.
277a0 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 6f 72 69 67 69 6e 61 6c 20 64 61 74 61 2e 0a 0a 40 69 74 uncompressed.original.data...@it
277c0 65 6d 20 4d 65 6d 62 65 72 20 73 69 7a 65 20 28 38 20 62 79 74 65 73 29 0a 54 6f 74 61 6c 20 73 em.Member.size.(8.bytes).Total.s
277e0 69 7a 65 20 6f 66 20 74 68 65 20 6d 65 6d 62 65 72 2c 20 69 6e 63 6c 75 64 69 6e 67 20 68 65 61 ize.of.the.member,.including.hea
27800 64 65 72 20 61 6e 64 20 74 72 61 69 6c 65 72 2e 20 54 68 69 73 20 66 69 65 6c 64 20 61 63 74 73 der.and.trailer..This.field.acts
27820 0a 61 73 20 61 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 64 65 78 2c 20 61 6c 6c 6f 77 73 20 .as.a.distributed.index,.allows.
27840 74 68 65 20 76 65 72 69 66 69 63 61 74 69 6f 6e 20 6f 66 20 73 74 72 65 61 6d 20 69 6e 74 65 67 the.verification.of.stream.integ
27860 72 69 74 79 2c 20 61 6e 64 0a 66 61 63 69 6c 69 74 61 74 65 73 20 73 61 66 65 20 72 65 63 6f 76 rity,.and.facilitates.safe.recov
27880 65 72 79 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 ery.of.undamaged.members.from.mu
278a0 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 73 2e 0a 0a 40 65 6e 64 20 74 61 62 6c 65 0a 0a 0a 40 ltimember.files...@end.table...@
278c0 6e 6f 64 65 20 41 6c 67 6f 72 69 74 68 6d 0a 40 63 68 61 70 74 65 72 20 41 6c 67 6f 72 69 74 68 node.Algorithm.@chapter.Algorith
278e0 6d 0a 40 63 69 6e 64 65 78 20 61 6c 67 6f 72 69 74 68 6d 0a 0a 49 6e 20 73 70 69 74 65 20 6f 66 m.@cindex.algorithm..In.spite.of
27900 20 69 74 73 20 6e 61 6d 65 20 28 4c 65 6d 70 65 6c 2d 5a 69 76 2d 4d 61 72 6b 6f 76 20 63 68 61 .its.name.(Lempel-Ziv-Markov.cha
27920 69 6e 2d 41 6c 67 6f 72 69 74 68 6d 29 2c 20 4c 5a 4d 41 20 69 73 20 6e 6f 74 20 61 0a 63 6f 6e in-Algorithm),.LZMA.is.not.a.con
27940 63 72 65 74 65 20 61 6c 67 6f 72 69 74 68 6d 3b 20 69 74 20 69 73 20 6d 6f 72 65 20 6c 69 6b 65 crete.algorithm;.it.is.more.like
27960 20 22 61 6e 79 20 61 6c 67 6f 72 69 74 68 6d 20 75 73 69 6e 67 20 74 68 65 20 4c 5a 4d 41 20 63 ."any.algorithm.using.the.LZMA.c
27980 6f 64 69 6e 67 0a 73 63 68 65 6d 65 22 2e 20 4c 5a 4d 41 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 oding.scheme"..LZMA.compression.
279a0 63 6f 6e 73 69 73 74 73 20 69 6e 20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 20 75 6e 63 6f 6d consists.in.describing.the.uncom
279c0 70 72 65 73 73 65 64 20 64 61 74 61 20 61 73 20 61 0a 73 75 63 63 65 73 73 69 6f 6e 20 6f 66 20 pressed.data.as.a.succession.of.
279e0 63 6f 64 69 6e 67 20 73 65 71 75 65 6e 63 65 73 20 66 72 6f 6d 20 74 68 65 20 73 65 74 20 73 68 coding.sequences.from.the.set.sh
27a00 6f 77 6e 20 69 6e 20 53 65 63 74 69 6f 6e 20 40 73 61 6d 70 7b 57 68 61 74 20 69 73 0a 63 6f 64 own.in.Section.@samp{What.is.cod
27a20 65 64 7d 20 28 40 70 78 72 65 66 7b 77 68 61 74 2d 69 73 2d 63 6f 64 65 64 7d 29 2c 20 61 6e 64 ed}.(@pxref{what-is-coded}),.and
27a40 20 74 68 65 6e 20 65 6e 63 6f 64 69 6e 67 20 74 68 65 6d 20 75 73 69 6e 67 20 61 20 72 61 6e 67 .then.encoding.them.using.a.rang
27a60 65 0a 65 6e 63 6f 64 65 72 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 6f 70 74 69 e.encoder..For.example,.the.opti
27a80 6f 6e 20 40 73 61 6d 70 7b 2d 30 7d 20 6f 66 20 6c 7a 69 70 20 75 73 65 73 20 74 68 65 20 73 63 on.@samp{-0}.of.lzip.uses.the.sc
27aa0 68 65 6d 65 20 69 6e 20 61 6c 6d 6f 73 74 0a 74 68 65 20 73 69 6d 70 6c 65 73 74 20 77 61 79 20 heme.in.almost.the.simplest.way.
27ac0 70 6f 73 73 69 62 6c 65 3b 20 69 73 73 75 69 6e 67 20 74 68 65 20 6c 6f 6e 67 65 73 74 20 6d 61 possible;.issuing.the.longest.ma
27ae0 74 63 68 20 69 74 20 63 61 6e 20 66 69 6e 64 2c 20 6f 72 20 61 0a 6c 69 74 65 72 61 6c 20 62 79 tch.it.can.find,.or.a.literal.by
27b00 74 65 20 69 66 20 69 74 20 63 61 6e 27 74 20 66 69 6e 64 20 61 20 6d 61 74 63 68 2e 20 49 6e 76 te.if.it.can't.find.a.match..Inv
27b20 65 72 73 65 6c 79 2c 20 61 20 6d 75 63 68 20 6d 6f 72 65 20 65 6c 61 62 6f 72 61 74 65 64 20 77 ersely,.a.much.more.elaborated.w
27b40 61 79 0a 6f 66 20 66 69 6e 64 69 6e 67 20 63 6f 64 69 6e 67 20 73 65 71 75 65 6e 63 65 73 20 6f ay.of.finding.coding.sequences.o
27b60 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 72 72 f.minimum.size.than.the.one.curr
27b80 65 6e 74 6c 79 20 75 73 65 64 20 62 79 0a 6c 7a 69 70 20 63 6f 75 6c 64 20 62 65 20 64 65 76 65 ently.used.by.lzip.could.be.deve
27ba0 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 6e 63 loped,.and.the.resulting.sequenc
27bc0 65 20 63 6f 75 6c 64 20 61 6c 73 6f 20 62 65 20 63 6f 64 65 64 0a 75 73 69 6e 67 20 74 68 65 20 e.could.also.be.coded.using.the.
27be0 4c 5a 4d 41 20 63 6f 64 69 6e 67 20 73 63 68 65 6d 65 2e 0a 0a 4c 7a 69 70 20 63 75 72 72 65 6e LZMA.coding.scheme...Lzip.curren
27c00 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 20 6f 66 20 74 tly.implements.two.variants.of.t
27c20 68 65 20 4c 5a 4d 41 20 61 6c 67 6f 72 69 74 68 6d 3b 20 66 61 73 74 0a 28 75 73 65 64 20 62 79 he.LZMA.algorithm;.fast.(used.by
27c40 20 6f 70 74 69 6f 6e 20 40 73 61 6d 70 7b 2d 30 7d 29 20 61 6e 64 20 6e 6f 72 6d 61 6c 20 28 75 .option.@samp{-0}).and.normal.(u
27c60 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
27c80 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 4c els)...The.high.compression.of.L
27ca0 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 73 ZMA.comes.from.combining.two.bas
27cc0 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 61 ic,.well-proven.compression.idea
27ce0 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 2f 37 38 s:.sliding.dictionaries.(LZ77/78
27d00 29 20 61 6e 64 20 6d 61 72 6b 6f 76 20 6d 6f 64 65 6c 73 20 28 74 68 65 0a 74 68 69 6e 67 20 75 ).and.markov.models.(the.thing.u
27d20 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
27d40 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 0a hm.that.uses.a.range.encoder.or.
27d60 73 69 6d 69 6c 61 72 20 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
27d80 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
27da0 6e 20 6f 66 0a 63 6f 6e 74 65 78 74 73 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 77 68 61 74 20 n.of.contexts.according.to.what.
27dc0 74 68 65 20 62 69 74 73 20 61 72 65 20 75 73 65 64 20 66 6f 72 2e 0a 0a 4c 7a 69 70 20 69 73 20 the.bits.are.used.for...Lzip.is.
27de0 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 69 72 73 a.two.stage.compressor..The.firs
27e00 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 2c 0a 77 t.stage.is.a.Lempel-Ziv.coder,.w
27e20 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 61 6e 73 hich.reduces.redundancy.by.trans
27e40 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 72 0a 63 lating.chunks.of.data.to.their.c
27e60 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 70 61 69 orresponding.distance-length.pai
27e80 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 67 65 20 rs..The.second.stage.is.a.range.
27ea0 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 20 70 72 encoder.that.uses.a.different.pr
27ec0 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 20 6f 66 obability.model.for.each.type.of
27ee0 20 64 61 74 61 3b 0a 64 69 73 74 61 6e 63 65 73 2c 20 6c 65 6e 67 74 68 73 2c 20 6c 69 74 65 72 .data;.distances,.lengths,.liter
27f00 61 6c 20 62 79 74 65 73 2c 20 65 74 63 2e 0a 0a 48 65 72 65 20 69 73 20 68 6f 77 20 69 74 20 77 al.bytes,.etc...Here.is.how.it.w
27f20 6f 72 6b 73 2c 20 73 74 65 70 20 62 79 20 73 74 65 70 3a 0a 0a 31 29 20 54 68 65 20 6d 65 6d 62 orks,.step.by.step:..1).The.memb
27f40 65 72 20 68 65 61 64 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 er.header.is.written.to.the.outp
27f60 75 74 20 73 74 72 65 61 6d 2e 0a 0a 32 29 20 54 68 65 20 66 69 72 73 74 20 62 79 74 65 20 69 73 ut.stream...2).The.first.byte.is
27f80 20 63 6f 64 65 64 20 6c 69 74 65 72 61 6c 6c 79 2c 20 62 65 63 61 75 73 65 20 74 68 65 72 65 20 .coded.literally,.because.there.
27fa0 61 72 65 20 6e 6f 20 70 72 65 76 69 6f 75 73 0a 62 79 74 65 73 20 74 6f 20 77 68 69 63 68 20 74 are.no.previous.bytes.to.which.t
27fc0 68 65 20 6d 61 74 63 68 20 66 69 6e 64 65 72 20 63 61 6e 20 72 65 66 65 72 20 74 6f 2e 0a 0a 33 he.match.finder.can.refer.to...3
27fe0 29 20 54 68 65 20 6d 61 69 6e 20 65 6e 63 6f 64 65 72 20 61 64 76 61 6e 63 65 73 20 74 6f 20 74 ).The.main.encoder.advances.to.t
28000 68 65 20 6e 65 78 74 20 62 79 74 65 20 69 6e 20 74 68 65 20 69 6e 70 75 74 20 64 61 74 61 20 61 he.next.byte.in.the.input.data.a
28020 6e 64 0a 63 61 6c 6c 73 20 74 68 65 20 6d 61 74 63 68 20 66 69 6e 64 65 72 2e 0a 0a 34 29 20 54 nd.calls.the.match.finder...4).T
28040 68 65 20 6d 61 74 63 68 20 66 69 6e 64 65 72 20 66 69 6c 6c 73 20 61 6e 20 61 72 72 61 79 20 77 he.match.finder.fills.an.array.w
28060 69 74 68 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 64 69 73 74 61 6e 63 65 73 20 62 65 66 6f 72 65 ith.the.minimum.distances.before
28080 20 74 68 65 0a 63 75 72 72 65 6e 74 20 62 79 74 65 20 77 68 65 72 65 20 61 20 6d 61 74 63 68 20 .the.current.byte.where.a.match.
280a0 6f 66 20 61 20 67 69 76 65 6e 20 6c 65 6e 67 74 68 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 2e 0a of.a.given.length.can.be.found..
280c0 0a 35 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 20 61 20 73 65 .5).Go.back.to.step.3.until.a.se
280e0 71 75 65 6e 63 65 20 28 66 6f 72 6d 65 64 20 6f 66 20 70 61 69 72 73 2c 20 72 65 70 65 61 74 65 quence.(formed.of.pairs,.repeate
28100 64 0a 64 69 73 74 61 6e 63 65 73 2c 20 61 6e 64 20 6c 69 74 65 72 61 6c 20 62 79 74 65 73 29 20 d.distances,.and.literal.bytes).
28120 6f 66 20 6d 69 6e 69 6d 75 6d 20 70 72 69 63 65 20 68 61 73 20 62 65 65 6e 20 66 6f 72 6d 65 64 of.minimum.price.has.been.formed
28140 2e 20 57 68 65 72 65 20 74 68 65 0a 70 72 69 63 65 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 65 ..Where.the.price.represents.the
28160 20 6e 75 6d 62 65 72 20 6f 66 20 6f 75 74 70 75 74 20 62 69 74 73 20 70 72 6f 64 75 63 65 64 2e .number.of.output.bits.produced.
28180 0a 0a 36 29 20 54 68 65 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 20 65 6e 63 6f 64 65 73 20 74 ..6).The.range.encoder.encodes.t
281a0 68 65 20 73 65 71 75 65 6e 63 65 20 70 72 6f 64 75 63 65 64 20 62 79 20 74 68 65 20 6d 61 69 6e he.sequence.produced.by.the.main
281c0 20 65 6e 63 6f 64 65 72 0a 61 6e 64 20 73 65 6e 64 73 20 74 68 65 20 70 72 6f 64 75 63 65 64 20 .encoder.and.sends.the.produced.
281e0 62 79 74 65 73 20 74 6f 20 74 68 65 20 6f 75 74 70 75 74 20 73 74 72 65 61 6d 2e 0a 0a 37 29 20 bytes.to.the.output.stream...7).
28200 47 6f 20 62 61 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 Go.back.to.step.3.until.the.inpu
28220 74 20 64 61 74 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 t.data.are.finished.or.until.the
28240 0a 6d 65 6d 62 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 .member.or.volume.size.limits.ar
28260 65 20 72 65 61 63 68 65 64 2e 0a 0a 38 29 20 54 68 65 20 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 e.reached...8).The.range.encoder
28280 20 69 73 20 66 6c 75 73 68 65 64 2e 0a 0a 39 29 20 54 68 65 20 6d 65 6d 62 65 72 20 74 72 61 69 .is.flushed...9).The.member.trai
282a0 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 72 ler.is.written.to.the.output.str
282c0 65 61 6d 2e 0a 0a 31 30 29 20 49 66 20 74 68 65 72 65 20 61 72 65 20 6d 6f 72 65 20 64 61 74 61 eam...10).If.there.are.more.data
282e0 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 70 20 31 2e .to.compress,.go.back.to.step.1.
28300 0a 0a 40 73 70 20 31 0a 44 75 72 69 6e 67 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2c 20 6c 7a 69 70 ..@sp.1.During.compression,.lzip
28320 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 6e 65 .reads.data.in.large.blocks.(one
28340 20 64 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 20 61 74 0a 61 20 74 69 6d 65 29 2e 20 54 68 65 .dictionary.size.at.a.time)..The
28360 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 74 65 refore.it.may.block.for.up.to.te
28380 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 69 6e ns.of.seconds.any.process.feedin
283a0 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 68 69 g.data.to.it.through.a.pipe..Thi
283c0 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 72 76 s.is.normal..The.blocking.interv
283e0 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 70 72 als.get.longer.with.higher.compr
28400 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 72 79 ession.levels.because.dictionary
28420 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 6f 6e .size.increases.(and.compression
28440 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 73 69 .speed.decreases).with.compressi
28460 6f 6e 20 6c 65 76 65 6c 2e 0a 0a 40 6e 6f 69 6e 64 65 6e 74 0a 54 68 65 20 69 64 65 61 73 20 65 on.level...@noindent.The.ideas.e
28480 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 6c mbodied.in.lzip.are.due.to.(at.l
284a0 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 61 east).the.following.people:.Abra
284c0 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 68 ham.Lempel.and.Jacob.Ziv.(for.th
284e0 65 20 4c 5a 20 61 6c 67 6f 72 69 74 68 6d 29 2c 20 41 6e 64 72 65 79 20 4d 61 72 6b 6f 76 20 28 e.LZ.algorithm),.Andrey.Markov.(
28500 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 61 for.the.definition.of.Markov.cha
28520 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 66 ins),.G.N.N..Martin.(for.the.def
28540 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 72 inition.of.range.encoding),.Igor
28560 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 6f .Pavlov.(for.putting.all.the.abo
28580 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 6e ve.together.in.LZMA),.and.Julian
285a0 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 0a 40 6e 6f .Seward.(for.bzip2's.CLI)....@no
285c0 64 65 20 53 74 72 65 61 6d 20 66 6f 72 6d 61 74 0a 40 63 68 61 70 74 65 72 20 46 6f 72 6d 61 74 de.Stream.format.@chapter.Format
285e0 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 6e 20 6c 7a 69 70 20 66 69 6c 65 .of.the.LZMA.stream.in.lzip.file
28600 73 0a 40 63 69 6e 64 65 78 20 66 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 s.@cindex.format.of.the.LZMA.str
28620 65 61 6d 0a 0a 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 eam..Lzip.uses.a.simplified.form
28640 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 63 68 6f 73 65 .of.the.LZMA.stream.format.chose
28660 6e 20 74 6f 20 6d 61 78 69 6d 69 7a 65 0a 73 61 66 65 74 79 20 61 6e 64 20 69 6e 74 65 72 6f 70 n.to.maximize.safety.and.interop
28680 65 72 61 62 69 6c 69 74 79 2e 0a 0a 54 68 65 20 4c 5a 4d 41 20 61 6c 67 6f 72 69 74 68 6d 20 68 erability...The.LZMA.algorithm.h
286a0 61 73 20 74 68 72 65 65 20 70 61 72 61 6d 65 74 65 72 73 2c 20 63 61 6c 6c 65 64 20 22 73 70 65 as.three.parameters,.called."spe
286c0 63 69 61 6c 20 4c 5a 4d 41 0a 70 72 6f 70 65 72 74 69 65 73 22 2c 20 74 6f 20 61 64 6a 75 73 74 cial.LZMA.properties",.to.adjust
286e0 20 69 74 20 66 6f 72 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 .it.for.some.kinds.of.binary.dat
28700 61 2e 20 54 68 65 73 65 0a 70 61 72 61 6d 65 74 65 72 73 20 61 72 65 3b 20 40 73 61 6d 70 7b 6c a..These.parameters.are;.@samp{l
28720 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 74 73 7d 20 28 77 69 74 68 20 61 20 64 65 66 iteral_context_bits}.(with.a.def
28740 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 33 29 2c 0a 40 73 61 6d 70 7b 6c 69 74 65 72 61 6c 5f ault.value.of.3),.@samp{literal_
28760 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 6c 74 20 pos_state_bits}.(with.a.default.
28780 76 61 6c 75 65 20 6f 66 20 30 29 2c 20 61 6e 64 0a 40 73 61 6d 70 7b 70 6f 73 5f 73 74 61 74 65 value.of.0),.and.@samp{pos_state
287a0 5f 62 69 74 73 7d 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 _bits}.(with.a.default.value.of.
287c0 32 29 2e 20 41 73 20 61 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 0a 63 6f 6d 70 72 65 73 2)..As.a.general.purpose.compres
287e0 73 6f 72 2c 20 6c 7a 69 70 20 6f 6e 6c 79 20 75 73 65 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 sor,.lzip.only.uses.the.default.
28800 76 61 6c 75 65 73 20 66 6f 72 20 74 68 65 73 65 20 70 61 72 61 6d 65 74 65 72 73 2e 20 49 6e 0a values.for.these.parameters..In.
28820 70 61 72 74 69 63 75 6c 61 72 20 40 73 61 6d 70 7b 6c 69 74 65 72 61 6c 5f 70 6f 73 5f 73 74 61 particular.@samp{literal_pos_sta
28840 74 65 5f 62 69 74 73 7d 20 68 61 73 20 62 65 65 6e 20 6f 70 74 69 6d 69 7a 65 64 20 61 77 61 79 te_bits}.has.been.optimized.away
28860 20 61 6e 64 0a 64 6f 65 73 20 6e 6f 74 20 65 76 65 6e 20 61 70 70 65 61 72 20 69 6e 20 74 68 65 .and.does.not.even.appear.in.the
28880 20 63 6f 64 65 2e 0a 0a 4c 7a 69 70 20 66 69 6e 69 73 68 65 73 20 74 68 65 20 4c 5a 4d 41 20 73 .code...Lzip.finishes.the.LZMA.s
288a0 74 72 65 61 6d 20 77 69 74 68 20 61 6e 20 22 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 22 20 28 45 tream.with.an."End.Of.Stream".(E
288c0 4f 53 29 20 6d 61 72 6b 65 72 0a 28 74 68 65 20 64 69 73 74 61 6e 63 65 2d 6c 65 6e 67 74 68 20 OS).marker.(the.distance-length.
288e0 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
28900 6f 6e 6a 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 0a 22 6d 65 6d 62 65 72 20 73 69 7a 65 onjunction.with.the."member.size
28920 22 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
28940 6c 6f 77 73 20 74 68 65 20 76 65 72 69 66 69 63 61 74 69 6f 6e 20 6f 66 0a 73 74 72 65 61 6d 20 lows.the.verification.of.stream.
28960 69 6e 74 65 67 72 69 74 79 2e 20 54 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 6e 20 6c 7a integrity..The.LZMA.stream.in.lz
28980 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 6f 0a 66 65 ip.files.always.has.these.two.fe
289a0 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 20 61 6e 64 20 45 atures.(default.properties.and.E
289c0 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 6f 20 69 6e OS.marker).and.is.referred.to.in
289e0 20 74 68 69 73 0a 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 .this.document.as.LZMA-302eos..T
28a00 68 65 20 45 4f 53 20 6d 61 72 6b 65 72 20 69 73 20 74 68 65 20 6f 6e 6c 79 20 6d 61 72 6b 65 72 he.EOS.marker.is.the.only.marker
28a20 20 61 6c 6c 6f 77 65 64 20 69 6e 0a 6c 7a 69 70 20 66 69 6c 65 73 2e 0a 0a 54 68 65 20 73 65 63 .allowed.in.lzip.files...The.sec
28a40 6f 6e 64 20 73 74 61 67 65 20 6f 66 20 4c 5a 4d 41 20 69 73 20 61 20 72 61 6e 67 65 20 65 6e 63 ond.stage.of.LZMA.is.a.range.enc
28a60 6f 64 65 72 20 74 68 61 74 20 75 73 65 73 20 61 20 64 69 66 66 65 72 65 6e 74 0a 70 72 6f 62 61 oder.that.uses.a.different.proba
28a80 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 20 6f 66 20 73 79 bility.model.for.each.type.of.sy
28aa0 6d 62 6f 6c 3b 20 64 69 73 74 61 6e 63 65 73 2c 20 6c 65 6e 67 74 68 73 2c 20 6c 69 74 65 72 61 mbol;.distances,.lengths,.litera
28ac0 6c 0a 62 79 74 65 73 2c 20 65 74 63 2e 20 52 61 6e 67 65 20 65 6e 63 6f 64 69 6e 67 20 63 6f 6e l.bytes,.etc..Range.encoding.con
28ae0 63 65 70 74 75 61 6c 6c 79 20 65 6e 63 6f 64 65 73 20 61 6c 6c 20 74 68 65 20 73 79 6d 62 6f 6c ceptually.encodes.all.the.symbol
28b00 73 20 6f 66 20 74 68 65 0a 6d 65 73 73 61 67 65 20 69 6e 74 6f 20 6f 6e 65 20 6e 75 6d 62 65 72 s.of.the.message.into.one.number
28b20 2e 20 55 6e 6c 69 6b 65 20 48 75 66 66 6d 61 6e 20 63 6f 64 69 6e 67 2c 20 77 68 69 63 68 20 61 ..Unlike.Huffman.coding,.which.a
28b40 73 73 69 67 6e 73 20 74 6f 20 65 61 63 68 0a 73 79 6d 62 6f 6c 20 61 20 62 69 74 2d 70 61 74 74 ssigns.to.each.symbol.a.bit-patt
28b60 65 72 6e 20 61 6e 64 20 63 6f 6e 63 61 74 65 6e 61 74 65 73 20 61 6c 6c 20 74 68 65 20 62 69 74 ern.and.concatenates.all.the.bit
28b80 2d 70 61 74 74 65 72 6e 73 20 74 6f 67 65 74 68 65 72 2c 0a 72 61 6e 67 65 20 65 6e 63 6f 64 69 -patterns.together,.range.encodi
28ba0 6e 67 20 63 61 6e 20 63 6f 6d 70 72 65 73 73 20 6f 6e 65 20 73 79 6d 62 6f 6c 20 74 6f 20 6c 65 ng.can.compress.one.symbol.to.le
28bc0 73 73 20 74 68 61 6e 20 6f 6e 65 20 62 69 74 2e 20 54 68 65 72 65 66 6f 72 65 0a 74 68 65 20 63 ss.than.one.bit..Therefore.the.c
28be0 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 70 72 6f 64 75 63 65 64 20 62 79 20 61 20 72 61 6e ompressed.data.produced.by.a.ran
28c00 67 65 20 65 6e 63 6f 64 65 72 20 63 61 6e 27 74 20 62 65 20 73 70 6c 69 74 20 69 6e 20 70 69 65 ge.encoder.can't.be.split.in.pie
28c20 63 65 73 0a 74 68 61 74 20 63 6f 75 6c 64 20 62 65 20 64 65 73 63 72 69 62 65 64 20 69 6e 64 69 ces.that.could.be.described.indi
28c40 76 69 64 75 61 6c 6c 79 2e 0a 0a 49 74 20 73 65 65 6d 73 20 74 68 61 74 20 74 68 65 20 6f 6e 6c vidually...It.seems.that.the.onl
28c60 79 20 77 61 79 20 6f 66 20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 20 4c 5a 4d 41 2d 33 30 32 y.way.of.describing.the.LZMA-302
28c80 65 6f 73 20 73 74 72 65 61 6d 20 69 73 0a 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 20 61 6c 67 eos.stream.is.describing.the.alg
28ca0 6f 72 69 74 68 6d 20 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 orithm.that.decodes.it..And.give
28cc0 6e 20 74 68 65 20 6d 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 n.the.many.details.about.the.ran
28ce0 67 65 20 64 65 63 6f 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 ge.decoder.that.need.to.be.descr
28d00 69 62 65 64 20 61 63 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 ibed.accurately,.the.source.code
28d20 20 6f 66 20 61 20 72 65 61 6c 20 64 65 63 6f 64 65 72 20 73 65 65 6d 73 20 74 68 65 20 6f 6e 6c .of.a.real.decoder.seems.the.onl
28d40 79 20 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 y.appropriate.reference.to.use..
28d60 0a 57 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 .What.follows.is.a.description.o
28d80 66 20 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 f.the.decoding.algorithm.for.LZM
28da0 41 2d 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 A-302eos.streams.using.as.refere
28dc0 6e 63 65 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 66 20 22 6c 7a 64 22 2c 20 61 6e nce.the.source.code.of."lzd",.an
28de0 20 65 64 75 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 .educational.decompressor.for.lz
28e00 69 70 20 66 69 6c 65 73 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 64 6f 77 6e 6c 6f 61 64 65 64 ip.files.which.can.be.downloaded
28e20 20 66 72 6f 6d 20 74 68 65 20 6c 7a 69 70 0a 64 6f 77 6e 6c 6f 61 64 20 64 69 72 65 63 74 6f 72 .from.the.lzip.download.director
28e40 79 2e 20 54 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 66 20 6c 7a 64 20 69 73 20 69 6e 63 y..The.source.code.of.lzd.is.inc
28e60 6c 75 64 65 64 20 69 6e 20 61 70 70 65 6e 64 69 78 20 41 2e 0a 40 78 72 65 66 7b 52 65 66 65 72 luded.in.appendix.A..@xref{Refer
28e80 65 6e 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 7d 2e 0a 0a 40 73 70 20 31 0a 40 73 65 63 74 69 ence.source.code}...@sp.1.@secti
28ea0 6f 6e 20 57 68 61 74 20 69 73 20 63 6f 64 65 64 0a 0a 40 61 6e 63 68 6f 72 7b 77 68 61 74 2d 69 on.What.is.coded..@anchor{what-i
28ec0 73 2d 63 6f 64 65 64 7d 0a 54 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 20 69 6e 63 6c 75 64 65 s-coded}.The.LZMA.stream.include
28ee0 73 20 6c 69 74 65 72 61 6c 73 2c 20 6d 61 74 63 68 65 73 2c 20 61 6e 64 20 72 65 70 65 61 74 65 s.literals,.matches,.and.repeate
28f00 64 20 6d 61 74 63 68 65 73 20 28 6d 61 74 63 68 65 73 0a 72 65 75 73 69 6e 67 20 61 20 72 65 63 d.matches.(matches.reusing.a.rec
28f20 65 6e 74 6c 79 20 75 73 65 64 20 64 69 73 74 61 6e 63 65 29 2e 20 54 68 65 72 65 20 61 72 65 20 ently.used.distance)..There.are.
28f40 37 20 64 69 66 66 65 72 65 6e 74 20 63 6f 64 69 6e 67 20 73 65 71 75 65 6e 63 65 73 3a 0a 0a 40 7.different.coding.sequences:..@
28f60 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 33 35 20 multitable.@columnfractions..35.
28f80 2e 31 34 20 2e 35 31 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 .14..51.@headitem.Bit.sequence.@
28fa0 74 61 62 20 4e 61 6d 65 20 40 74 61 62 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 40 69 74 65 6d 20 tab.Name.@tab.Description.@item.
28fc0 30 20 2b 20 62 79 74 65 20 40 74 61 62 20 6c 69 74 65 72 61 6c 20 40 74 61 62 20 6c 69 74 65 72 0.+.byte.@tab.literal.@tab.liter
28fe0 61 6c 20 62 79 74 65 0a 40 69 74 65 6d 20 31 20 2b 20 30 20 2b 20 6c 65 6e 20 2b 20 64 69 73 20 al.byte.@item.1.+.0.+.len.+.dis.
29000 40 74 61 62 20 6d 61 74 63 68 20 40 74 61 62 20 64 69 73 74 61 6e 63 65 2d 6c 65 6e 67 74 68 20 @tab.match.@tab.distance-length.
29020 70 61 69 72 0a 40 69 74 65 6d 20 31 20 2b 20 31 20 2b 20 30 20 2b 20 30 20 40 74 61 62 20 73 68 pair.@item.1.+.1.+.0.+.0.@tab.sh
29040 6f 72 74 72 65 70 20 40 74 61 62 20 31 20 62 79 74 65 20 6d 61 74 63 68 20 61 74 20 6c 61 74 65 ortrep.@tab.1.byte.match.at.late
29060 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 2b 20 31 20 2b 20 30 st.used.distance.@item.1.+.1.+.0
29080 20 2b 20 31 20 2b 20 6c 65 6e 20 40 74 61 62 20 72 65 70 30 20 40 74 61 62 20 6c 65 6e 20 62 79 .+.1.+.len.@tab.rep0.@tab.len.by
290a0 74 65 73 20 6d 61 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 tes.match.at.latest.used.distanc
290c0 65 0a 40 69 74 65 6d 20 31 20 2b 20 31 20 2b 20 31 20 2b 20 30 20 2b 20 6c 65 6e 20 40 74 61 62 e.@item.1.+.1.+.1.+.0.+.len.@tab
290e0 20 72 65 70 31 20 40 74 61 62 20 6c 65 6e 20 62 79 74 65 73 20 6d 61 74 63 68 20 61 74 20 73 65 .rep1.@tab.len.bytes.match.at.se
29100 63 6f 6e 64 0a 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 cond.latest.used.distance.@item.
29120 31 20 2b 20 31 20 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 1.+.1.+.1.+.1.+.0.+.len.@tab.rep
29140 32 20 40 74 61 62 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 0a 2.@tab.len.bytes.match.at.third.
29160 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 2b 20 31 latest.used.distance.@item.1.+.1
29180 20 2b 20 31 20 2b 20 31 20 2b 20 31 20 2b 20 6c 65 6e 20 40 74 61 62 20 72 65 70 33 20 40 74 61 .+.1.+.1.+.1.+.len.@tab.rep3.@ta
291a0 62 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 0a 6c 61 74 65 b.len.bytes.match.at.fourth.late
291c0 73 74 20 75 73 65 64 20 64 69 73 74 61 6e 63 65 0a 40 65 6e 64 20 6d 75 6c 74 69 74 61 62 6c 65 st.used.distance.@end.multitable
291e0 0a 0a 40 73 70 20 31 0a 49 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 73 2c ..@sp.1.In.the.following.tables,
29200 20 6d 75 6c 74 69 62 69 74 20 73 65 71 75 65 6e 63 65 73 20 61 72 65 20 63 6f 64 65 64 20 69 6e .multibit.sequences.are.coded.in
29220 20 6e 6f 72 6d 61 6c 20 6f 72 64 65 72 2c 0a 66 72 6f 6d 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 .normal.order,.from.most.signifi
29240 63 61 6e 74 20 62 69 74 20 28 4d 53 42 29 20 74 6f 20 6c 65 61 73 74 20 73 69 67 6e 69 66 69 63 cant.bit.(MSB).to.least.signific
29260 61 6e 74 20 62 69 74 20 28 4c 53 42 29 2c 20 65 78 63 65 70 74 0a 77 68 65 72 65 20 6e 6f 74 65 ant.bit.(LSB),.except.where.note
29280 64 20 6f 74 68 65 72 77 69 73 65 2e 0a 0a 4c 65 6e 67 74 68 73 20 28 74 68 65 20 40 73 61 6d 70 d.otherwise...Lengths.(the.@samp
292a0 7b 6c 65 6e 7d 20 69 6e 20 74 68 65 20 74 61 62 6c 65 20 61 62 6f 76 65 29 20 61 72 65 20 63 6f {len}.in.the.table.above).are.co
292c0 64 65 64 20 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 40 63 6f ded.as.follows:..@multitable.@co
292e0 6c 75 6d 6e 66 72 61 63 74 69 6f 6e 73 20 2e 35 20 2e 35 0a 40 68 65 61 64 69 74 65 6d 20 42 69 lumnfractions..5..5.@headitem.Bi
29300 74 20 73 65 71 75 65 6e 63 65 20 40 74 61 62 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 40 69 74 65 t.sequence.@tab.Description.@ite
29320 6d 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 6f 6d 20 32 m.0.+.3.bits.@tab.lengths.from.2
29340 20 74 6f 20 39 0a 40 69 74 65 6d 20 31 20 2b 20 30 20 2b 20 33 20 62 69 74 73 20 40 74 61 62 20 .to.9.@item.1.+.0.+.3.bits.@tab.
29360 6c 65 6e 67 74 68 73 20 66 72 6f 6d 20 31 30 20 74 6f 20 31 37 0a 40 69 74 65 6d 20 31 20 2b 20 lengths.from.10.to.17.@item.1.+.
29380 31 20 2b 20 38 20 62 69 74 73 20 40 74 61 62 20 6c 65 6e 67 74 68 73 20 66 72 6f 6d 20 31 38 20 1.+.8.bits.@tab.lengths.from.18.
293a0 74 6f 20 32 37 33 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 to.273.@end.multitable..@sp.1.Th
293c0 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 6c e.coding.of.distances.is.a.littl
293e0 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 69 e.more.complicated,.so.I'll.begi
29400 6e 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 6f 6e 20 6f n.explaining.a.simpler.version.o
29420 66 20 74 68 65 20 65 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 f.the.encoding...Imagine.you.nee
29440 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 20 30 20 74 6f 20 40 d.to.encode.a.number.from.0.to.@
29460 77 7b 32 5e 33 32 20 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 w{2^32.-.1},.and.you.want.to.do.
29480 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 72 74 65 it.in.a.way.that.produces.shorte
294a0 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 72 73 2e r.codes.for.the.smaller.numbers.
294c0 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 69 74 69 .You.may.first.encode.the.positi
294e0 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 74 20 74 on.of.the.most.significant.bit.t
29500 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 79 20 66 hat.is.set.to.1,.which.you.may.f
29520 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 20 74 68 ind.by.making.a.bit.scan.from.th
29540 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 74 69 6f e.left.(from.the.MSB)..A.positio
29560 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 69 73 20 n.of.0.means.that.the.number.is.
29580 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 65 20 4c 0.(no.bit.is.set),.1.means.the.L
295a0 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 6e 75 6d SB.is.the.first.bit.set.(the.num
295c0 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 53 42 20 ber.is.1),.and.32.means.the.MSB.
295e0 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 40 77 7b 3e is.set.(i.e.,.the.number.is.@w{>
29600 3d 20 30 78 38 30 30 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 =.0x80000000})..Then,.if.the.pos
29620 69 74 69 6f 6e 20 69 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 ition.is.@w{>=.2},.you.encode.th
29640 65 20 72 65 6d 61 69 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 e.remaining.@w{position.-.1}.bit
29660 73 2e 20 4c 65 74 27 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 s..Let's.call.these.bits."direct
29680 5f 62 69 74 73 22 0a 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 _bits".because.they.are.coded.di
296a0 72 65 63 74 6c 79 20 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 rectly.by.value.instead.of.indir
296c0 65 63 74 6c 79 20 62 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 ectly.by.position...The.inconven
296e0 69 65 6e 74 20 6f 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 ient.of.this.simple.method.is.th
29700 61 74 20 69 74 20 6e 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 at.it.needs.6.bits.to.encode.the
29720 0a 70 6f 73 69 74 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 .position,.but.it.just.uses.33.o
29740 66 20 74 68 65 20 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 f.the.64.possible.values,.wastin
29760 67 20 61 6c 6d 6f 73 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 g.almost.half.of.the.codes...The
29780 20 69 6e 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 .intelligent.trick.of.LZMA.is.th
297a0 61 74 20 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 at.it.encodes.in.what.it.calls.a
297c0 20 22 73 6c 6f 74 22 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 ."slot".the.position.of.the.most
297e0 20 73 69 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 .significant.bit.set,.along.with
29800 20 74 68 65 20 76 61 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 .the.value.of.the.next.bit,.usin
29820 67 20 74 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 g.the.same.6.bits.that.would.tak
29840 65 20 74 6f 20 65 6e 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 e.to.encode.the.position.alone..
29860 54 68 69 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 This.seems.to.need.66.slots.(twi
29880 63 65 20 74 68 65 20 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 ce.the.number.of.positions),.but
298a0 20 66 6f 72 0a 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 .for.positions.0.and.1.there.is.
298c0 6e 6f 20 6e 65 78 74 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 no.next.bit,.so.the.number.of.sl
298e0 6f 74 73 20 6e 65 65 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 ots.needed.is.64.(0.to.63)...The
29900 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.
29920 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..
29940 49 66 0a 74 68 65 20 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 If.the.distance.is.@w{>=.4},.the
29960 20 72 65 6d 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 .remaining.bits.are.encoded.as.f
29980 6f 6c 6c 6f 77 73 2e 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 ollows..@samp{direct_bits}.is.th
299a0 65 20 61 6d 6f 75 6e 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 e.amount.of.remaining.bits.(from
299c0 20 31 20 74 6f 20 33 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 .1.to.30).needed.to.form.a.compl
299e0 65 74 65 20 64 69 73 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 ete.distance,.and.is.calculated.
29a00 61 73 20 40 77 7b 28 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 as.@w{(slot.>>.1).-.1}..If.a.dis
29a20 74 61 6e 63 65 20 6e 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 tance.needs.6.or.more.direct_bit
29a40 73 2c 20 74 68 65 20 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 s,.the.last.4.bits.are.encoded.s
29a60 65 70 61 72 61 74 65 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 eparately..The.last.piece.(all.t
29a80 68 65 20 64 69 72 65 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 he.direct_bits.for.distances.4.t
29aa0 6f 20 31 32 37 2c 0a 6f 72 20 74 68 65 20 6c 61 73 74 20 34 20 62 69 74 73 20 66 6f 72 20 64 69 o.127,.or.the.last.4.bits.for.di
29ac0 73 74 61 6e 63 65 73 20 40 77 7b 3e 3d 20 31 32 38 7d 29 20 69 73 20 63 6f 6e 74 65 78 74 2d 63 stances.@w{>=.128}).is.context-c
29ae0 6f 64 65 64 20 69 6e 20 72 65 76 65 72 73 65 0a 6f 72 64 65 72 20 28 66 72 6f 6d 20 4c 53 42 20 oded.in.reverse.order.(from.LSB.
29b00 74 6f 20 4d 53 42 29 2e 20 46 6f 72 20 64 69 73 74 61 6e 63 65 73 20 40 77 7b 3e 3d 20 31 32 38 to.MSB)..For.distances.@w{>=.128
29b20 7d 2c 20 74 68 65 0a 40 77 7b 40 73 61 6d 70 7b 64 69 72 65 63 74 5f 62 69 74 73 20 2d 20 34 7d },.the.@w{@samp{direct_bits.-.4}
29b40 7d 20 70 61 72 74 20 69 73 20 65 6e 63 6f 64 65 64 20 77 69 74 68 20 66 69 78 65 64 20 30 2e 35 }.part.is.encoded.with.fixed.0.5
29b60 20 70 72 6f 62 61 62 69 6c 69 74 79 2e 0a 0a 40 6d 75 6c 74 69 74 61 62 6c 65 20 40 63 6f 6c 75 .probability...@multitable.@colu
29b80 6d 6e 66 72 61 63 74 69 6f 6e 73 20 2e 35 20 2e 35 0a 40 68 65 61 64 69 74 65 6d 20 42 69 74 20 mnfractions..5..5.@headitem.Bit.
29ba0 73 65 71 75 65 6e 63 65 20 40 74 61 62 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 40 69 74 65 6d 20 sequence.@tab.Description.@item.
29bc0 73 6c 6f 74 20 40 74 61 62 20 64 69 73 74 61 6e 63 65 73 20 66 72 6f 6d 20 30 20 74 6f 20 33 0a slot.@tab.distances.from.0.to.3.
29be0 40 69 74 65 6d 20 73 6c 6f 74 20 2b 20 64 69 72 65 63 74 5f 62 69 74 73 20 40 74 61 62 20 64 69 @item.slot.+.direct_bits.@tab.di
29c00 73 74 61 6e 63 65 73 20 66 72 6f 6d 20 34 20 74 6f 20 31 32 37 0a 40 69 74 65 6d 20 73 6c 6f 74 stances.from.4.to.127.@item.slot
29c20 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 74 73 20 40 74 .+.(direct_bits.-.4).+.4.bits.@t
29c40 61 62 20 64 69 73 74 61 6e 63 65 73 20 66 72 6f 6d 20 31 32 38 20 74 6f 0a 32 5e 33 32 20 2d 20 ab.distances.from.128.to.2^32.-.
29c60 31 0a 40 65 6e 64 20 6d 75 6c 74 69 74 61 62 6c 65 0a 0a 40 73 70 20 31 0a 40 73 65 63 74 69 6f 1.@end.multitable..@sp.1.@sectio
29c80 6e 20 54 68 65 20 63 6f 64 69 6e 67 20 63 6f 6e 74 65 78 74 73 0a 0a 54 68 65 73 65 20 63 6f 6e n.The.coding.contexts..These.con
29ca0 74 65 78 74 73 20 28 40 73 61 6d 70 7b 42 69 74 5f 6d 6f 64 65 6c 7d 20 69 6e 20 74 68 65 20 73 texts.(@samp{Bit_model}.in.the.s
29cc0 6f 75 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 0a 6f ource),.are.integers.or.arrays.o
29ce0 66 20 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 f.integers.representing.the.prob
29d00 61 62 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 ability.of.the.corresponding.bit
29d20 20 62 65 69 6e 67 20 30 2e 0a 0a 54 68 65 20 69 6e 64 69 63 65 73 20 75 73 65 64 20 69 6e 20 74 .being.0...The.indices.used.in.t
29d40 68 65 73 65 20 61 72 72 61 79 73 20 61 72 65 3a 0a 0a 40 74 61 62 6c 65 20 40 73 61 6d 70 0a 40 hese.arrays.are:..@table.@samp.@
29d60 69 74 65 6d 20 73 74 61 74 65 0a 41 20 73 74 61 74 65 20 6d 61 63 68 69 6e 65 20 28 40 73 61 6d item.state.A.state.machine.(@sam
29d80 70 7b 53 74 61 74 65 7d 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 20 77 69 74 68 20 31 32 20 p{State}.in.the.source).with.12.
29da0 73 74 61 74 65 73 20 28 30 20 74 6f 20 31 31 29 2c 0a 63 6f 64 69 6e 67 20 74 68 65 20 6c 61 74 states.(0.to.11),.coding.the.lat
29dc0 65 73 74 20 32 20 74 6f 20 34 20 74 79 70 65 73 20 6f 66 20 73 65 71 75 65 6e 63 65 73 20 70 72 est.2.to.4.types.of.sequences.pr
29de0 6f 63 65 73 73 65 64 2e 20 54 68 65 20 69 6e 69 74 69 61 6c 20 73 74 61 74 65 0a 69 73 20 30 2e ocessed..The.initial.state.is.0.
29e00 0a 0a 40 69 74 65 6d 20 70 6f 73 5f 73 74 61 74 65 0a 56 61 6c 75 65 20 6f 66 20 74 68 65 20 32 ..@item.pos_state.Value.of.the.2
29e20 20 6c 65 61 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 20 63 .least.significant.bits.of.the.c
29e40 75 72 72 65 6e 74 20 70 6f 73 69 74 69 6f 6e 20 69 6e 20 74 68 65 0a 64 65 63 6f 64 65 64 20 64 urrent.position.in.the.decoded.d
29e60 61 74 61 2e 0a 0a 40 69 74 65 6d 20 6c 69 74 65 72 61 6c 5f 73 74 61 74 65 0a 56 61 6c 75 65 20 ata...@item.literal_state.Value.
29e80 6f 66 20 74 68 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 of.the.3.most.significant.bits.o
29ea0 66 20 74 68 65 20 6c 61 74 65 73 74 20 62 79 74 65 20 64 65 63 6f 64 65 64 2e 0a 0a 40 69 74 65 f.the.latest.byte.decoded...@ite
29ec0 6d 20 6c 65 6e 5f 73 74 61 74 65 0a 43 6f 64 65 64 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 63 m.len_state.Coded.value.of.the.c
29ee0 75 72 72 65 6e 74 20 6d 61 74 63 68 20 6c 65 6e 67 74 68 20 40 77 7b 28 6c 65 6e 67 74 68 20 2d urrent.match.length.@w{(length.-
29f00 20 32 29 7d 2c 20 77 69 74 68 20 61 20 6d 61 78 69 6d 75 6d 0a 6f 66 20 33 2e 20 54 68 65 20 72 .2)},.with.a.maximum.of.3..The.r
29f20 65 73 75 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 esulting.value.is.in.the.range.0
29f40 20 74 6f 20 33 2e 0a 0a 40 65 6e 64 20 74 61 62 6c 65 0a 0a 0a 49 6e 20 74 68 65 20 66 6f 6c 6c .to.3...@end.table...In.the.foll
29f60 6f 77 69 6e 67 20 74 61 62 6c 65 2c 20 40 73 61 6d 70 7b 21 6c 69 74 65 72 61 6c 7d 20 69 73 20 owing.table,.@samp{!literal}.is.
29f80 61 6e 79 20 73 65 71 75 65 6e 63 65 20 65 78 63 65 70 74 20 61 20 6c 69 74 65 72 61 6c 0a 62 79 any.sequence.except.a.literal.by
29fa0 74 65 2e 20 40 73 61 6d 70 7b 72 65 70 7d 20 69 73 20 61 6e 79 20 6f 6e 65 20 6f 66 20 40 73 61 te..@samp{rep}.is.any.one.of.@sa
29fc0 6d 70 7b 72 65 70 30 7d 2c 20 40 73 61 6d 70 7b 72 65 70 31 7d 2c 20 40 73 61 6d 70 7b 72 65 70 mp{rep0},.@samp{rep1},.@samp{rep
29fe0 32 7d 2c 20 6f 72 0a 40 73 61 6d 70 7b 72 65 70 33 7d 2e 20 54 68 65 20 74 79 70 65 73 20 6f 66 2},.or.@samp{rep3}..The.types.of
2a000 20 70 72 65 76 69 6f 75 73 20 73 65 71 75 65 6e 63 65 73 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e .previous.sequences.correspondin
2a020 67 20 74 6f 20 65 61 63 68 20 73 74 61 74 65 0a 61 72 65 3a 0a 0a 40 6d 75 6c 74 69 74 61 62 6c g.to.each.state.are:..@multitabl
2a040 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 20 73 68 6f e.{State}.{rep.or.(!literal,.sho
2a060 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 65 61 64 69 rtrep),.literal,.literal}.@headi
2a080 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 69 6f 75 73 tem.State.@tab.Types.of.previous
2a0a0 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 65 72 61 6c .sequences.@item..0.@tab.literal
2a0c0 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 40 74 61 62 ,.literal,.literal.@item..1.@tab
2a0e0 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 65 6d 20 20 .match,.literal,.literal.@item..
2a100 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 72 74 72 65 2.@tab.rep.or.(!literal,.shortre
2a120 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 33 20 40 74 p),.literal,.literal.@item..3.@t
2a140 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 6c 2c 20 6c ab.literal,.shortrep,.literal,.l
2a160 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 6c 69 74 65 iteral.@item..4.@tab.match,.lite
2a180 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 69 74 65 72 ral.@item..5.@tab.rep.or.(!liter
2a1a0 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 20 20 36 20 al,.shortrep),.literal.@item..6.
2a1c0 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 6c 0a @tab.literal,.shortrep,.literal.
2a1e0 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 0a 40 69 74 @item..7.@tab.literal,.match.@it
2a200 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 6d 20 20 39 em..8.@tab.literal,.rep.@item..9
2a220 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 6d 20 31 30 .@tab.literal,.shortrep.@item.10
2a240 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 31 31 20 40 .@tab.!literal,.match.@item.11.@
2a260 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 65 70 29 0a tab.!literal,.(rep.or.shortrep).
2a280 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 6f 6e 74 65 @end.multitable..@sp.1.The.conte
2a2a0 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 20 63 6f 64 xts.for.decoding.the.type.of.cod
2a2c0 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 6c 65 20 40 ing.sequence.are:..@multitable.@
2a2e0 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 68 65 61 64 columnfractions..2..35..45.@head
2a300 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 55 73 65 64 item.Name.@tab.Indices.@tab.Used
2a320 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 61 74 65 2c .when.@item.bm_match.@tab.state,
2a340 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 72 74 0a 40 .pos_state.@tab.sequence.start.@
2a360 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 61 66 74 65 item.bm_rep.@tab.state.@tab.afte
2a380 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 74 61 62 20 r.sequence.1.@item.bm_rep0.@tab.
2a3a0 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 0a 40 69 74 state.@tab.after.sequence.11.@it
2a3c0 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 66 74 65 72 em.bm_rep1.@tab.state.@tab.after
2a3e0 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 40 74 61 62 .sequence.111.@item.bm_rep2.@tab
2a400 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 31 31 0a .state.@tab.after.sequence.1111.
2a420 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 5f 73 74 61 @item.bm_len.@tab.state,.pos_sta
2a440 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 65 6e 64 20 te.@tab.after.sequence.110.@end.
2a460 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 74 73 20 66 multitable..@sp.1.The.contexts.f
2a480 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 40 6d 75 6c or.decoding.distances.are:..@mul
2a4a0 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 2e 33 20 2e titable.@columnfractions..2..3..
2a4c0 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 73 20 40 74 5.@headitem.Name.@tab.Indices.@t
2a4e0 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 6f 74 20 40 ab.Used.when.@item.bm_dis_slot.@
2a500 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 20 64 69 73 tab.len_state,.bit.tree.@tab.dis
2a520 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 62 20 72 65 tance.start.@item.bm_dis.@tab.re
2a540 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 6f 74 73 20 verse.bit.tree.@tab.after.slots.
2a560 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 72 65 76 65 4.to.13.@item.bm_align.@tab.reve
2a580 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 63 65 73 20 rse.bit.tree.@tab.for.distances.
2a5a0 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 69 74 79 20 >=.128,.after.fixed.probability.
2a5c0 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 54 68 65 72 bits.@end.multitable..@sp.1.Ther
2a5e0 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 6f 6e 74 65 e.are.two.separate.sets.of.conte
2a600 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 6f 64 65 6c xts.for.lengths.(@samp{Len_model
2a620 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 72 6d 61 6c }.in.the.source)..One.for.normal
2a640 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 61 74 65 64 .matches,.the.other.for.repeated
2a660 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 63 68 20 4c .matches..The.contexts.in.each.L
2a680 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 64 65 5f 6c en_model.are.(see.@samp{decode_l
2a6a0 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 61 62 6c 65 en}.in.the.source):..@multitable
2a6c0 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 68 65 61 64 .@columnfractions..2..4..4.@head
2a6e0 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 55 73 65 64 item.Name.@tab.Indices.@tab.Used
2a700 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 65 20 40 74 .when.@item.choice1.@tab.none.@t
2a720 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 32 20 40 74 ab.length.start.@item.choice2.@t
2a740 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 31 0a 40 69 ab.none.@tab.after.sequence.1.@i
2a760 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 69 74 20 74 tem.bm_low.@tab.pos_state,.bit.t
2a780 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 74 65 6d 20 ree.@tab.after.sequence.0.@item.
2a7a0 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 72 65 65 20 bm_mid.@tab.pos_state,.bit.tree.
2a7c0 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 20 62 6d 5f @tab.after.sequence.10.@item.bm_
2a7e0 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 72 20 73 65 high.@tab.bit.tree.@tab.after.se
2a800 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 73 70 20 31 quence.11.@end.multitable..@sp.1
2a820 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 6c 69 74 65 .The.context.array.@samp{bm_lite
2a840 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 65 20 69 74 ral}.is.special..In.principle.it
2a860 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 6f 6e 74 65 .acts.as.a.normal.bit.tree.conte
2a880 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 70 7b 6c 69 xt,.the.one.selected.by.@samp{li
2a8a0 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 76 69 6f 75 teral_state}..But.if.the.previou
2a8c0 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 65 72 61 6c s.decoded.byte.was.not.a.literal
2a8e0 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 73 20 61 72 ,.two.other.bit.tree.contexts.ar
2a900 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 65 20 6f 66 e.used.depending.on.the.value.of
2a920 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 65 7d 20 28 .each.bit.in.@samp{match_byte}.(
2a940 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 64 69 73 74 the.byte.at.the.latest.used.dist
2a960 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 64 20 74 68 ance),.until.a.bit.is.decoded.th
2a980 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 72 65 73 70 at.is.different.from.its.corresp
2a9a0 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 74 65 7d 2e onding.bit.in.@samp{match_byte}.
2a9c0 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 69 73 20 66 .After.the.first.difference.is.f
2a9e0 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 73 20 64 65 ound,.the.rest.of.the.byte.is.de
2aa00 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 72 65 65 20 coded.using.the.normal.bit.tree.
2aa20 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 61 74 63 68 context..(See.@samp{decode_match
2aa40 65 64 7d 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 29 2e 0a 0a 40 73 70 20 31 0a 40 73 65 63 74 ed}.in.the.source)...@sp.1.@sect
2aa60 69 6f 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 ion.The.range.decoder..The.LZMA.
2aa80 73 74 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 stream.is.consumed.one.byte.at.a
2aaa0 20 74 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 .time.by.the.range.decoder..(See
2aac0 20 40 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 .@samp{normalize}.in.the.source)
2aae0 2e 20 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 ..Every.byte.consumed.produces.a
2ab00 0a 76 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 .variable.number.of.decoded.bits
2ab20 2c 20 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 ,.depending.on.how.well.these.bi
2ab40 74 73 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 ts.agree.with.their.context..(Se
2ab60 65 20 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 e.@samp{decode_bit}.in.the.sourc
2ab80 65 29 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 e)...The.range.decoder.state.con
2aba0 73 69 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 sists.of.two.unsigned.32-bit.var
2abc0 69 61 62 6c 65 73 3b 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 iables;.@samp{range}.(representi
2abe0 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 74 20 6f 66 20 ng.the.most.significant.part.of.
2ac00 74 68 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 2c the.range.size.not.yet.decoded),
2ac20 20 61 6e 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 .and.@samp{code}.(representing.t
2ac40 68 65 20 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 he.current.point.within.@samp{ra
2ac60 6e 67 65 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 nge})..@samp{range}.is.initializ
2ac80 65 64 20 74 6f 20 40 77 7b 28 32 5e 33 32 20 2d 20 31 29 7d 2c 20 61 6e 64 0a 40 73 61 6d 70 7b ed.to.@w{(2^32.-.1)},.and.@samp{
2aca0 63 6f 64 65 7d 20 69 73 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 74 6f 20 30 2e 0a 0a 54 68 65 20 code}.is.initialized.to.0...The.
2acc0 72 61 6e 67 65 20 65 6e 63 6f 64 65 72 20 70 72 6f 64 75 63 65 73 20 61 20 66 69 72 73 74 20 30 range.encoder.produces.a.first.0
2ace0 20 62 79 74 65 20 74 68 61 74 20 6d 75 73 74 20 62 65 20 69 67 6e 6f 72 65 64 20 62 79 20 74 68 .byte.that.must.be.ignored.by.th
2ad00 65 0a 72 61 6e 67 65 20 64 65 63 6f 64 65 72 2e 20 54 68 69 73 20 69 73 20 64 6f 6e 65 20 62 79 e.range.decoder..This.is.done.by
2ad20 20 73 68 69 66 74 69 6e 67 20 35 20 62 79 74 65 73 20 69 6e 20 74 68 65 20 69 6e 69 74 69 61 6c .shifting.5.bytes.in.the.initial
2ad40 69 7a 61 74 69 6f 6e 20 6f 66 0a 40 73 61 6d 70 7b 63 6f 64 65 7d 20 69 6e 73 74 65 61 64 20 6f ization.of.@samp{code}.instead.o
2ad60 66 20 34 2e 20 28 53 65 65 20 74 68 65 20 40 73 61 6d 70 7b 52 61 6e 67 65 5f 64 65 63 6f 64 65 f.4..(See.the.@samp{Range_decode
2ad80 72 7d 20 63 6f 6e 73 74 72 75 63 74 6f 72 20 69 6e 0a 74 68 65 20 73 6f 75 72 63 65 29 2e 0a 0a r}.constructor.in.the.source)...
2ada0 40 73 70 20 31 0a 40 73 65 63 74 69 6f 6e 20 44 65 63 6f 64 69 6e 67 20 61 6e 64 20 76 65 72 69 @sp.1.@section.Decoding.and.veri
2adc0 66 79 69 6e 67 20 74 68 65 20 4c 5a 4d 41 20 73 74 72 65 61 6d 0a 0a 41 66 74 65 72 20 64 65 63 fying.the.LZMA.stream..After.dec
2ade0 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 6f 62 74 61 oding.the.member.header.and.obta
2ae00 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 68 65 0a 72 ining.the.dictionary.size,.the.r
2ae20 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 61 6e 64 20 ange.decoder.is.initialized.and.
2ae40 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 20 61 20 6c then.the.LZMA.decoder.enters.a.l
2ae60 6f 6f 70 0a 28 53 65 65 20 40 73 61 6d 70 7b 64 65 63 6f 64 65 5f 6d 65 6d 62 65 72 7d 20 69 6e oop.(See.@samp{decode_member}.in
2ae80 20 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 .the.source).where.it.invokes.th
2aea0 65 20 72 61 6e 67 65 0a 64 65 63 6f 64 65 72 20 77 69 74 68 20 74 68 65 20 61 70 70 72 6f 70 72 e.range.decoder.with.the.appropr
2aec0 69 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 iate.contexts.to.decode.the.diff
2aee0 65 72 65 6e 74 20 63 6f 64 69 6e 67 0a 73 65 71 75 65 6e 63 65 73 20 28 6d 61 74 63 68 65 73 2c erent.coding.sequences.(matches,
2af00 20 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 .repeated.matches,.and.literal.b
2af20 79 74 65 73 29 2c 20 75 6e 74 69 6c 20 74 68 65 20 22 45 6e 64 0a 4f 66 20 53 74 72 65 61 6d 22 ytes),.until.the."End.Of.Stream"
2af40 20 6d 61 72 6b 65 72 20 69 73 20 64 65 63 6f 64 65 64 2e 0a 0a 4f 6e 63 65 20 74 68 65 20 22 45 .marker.is.decoded...Once.the."E
2af60 6e 64 20 4f 66 20 53 74 72 65 61 6d 22 20 6d 61 72 6b 65 72 20 68 61 73 20 62 65 65 6e 20 64 65 nd.Of.Stream".marker.has.been.de
2af80 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 20 61 6e coded,.the.decompressor.reads.an
2afa0 64 0a 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 61 6e d.decodes.the.member.trailer,.an
2afc0 64 20 76 65 72 69 66 69 65 73 20 74 68 61 74 20 74 68 65 20 74 68 72 65 65 20 69 6e 74 65 67 72 d.verifies.that.the.three.integr
2afe0 69 74 79 20 66 61 63 74 6f 72 73 0a 28 43 52 43 2c 20 64 61 74 61 20 73 69 7a 65 2c 20 61 6e 64 ity.factors.(CRC,.data.size,.and
2b000 20 6d 65 6d 62 65 72 20 73 69 7a 65 29 20 6d 61 74 63 68 20 74 68 6f 73 65 20 63 61 6c 63 75 6c .member.size).match.those.calcul
2b020 61 74 65 64 20 62 79 20 74 68 65 20 4c 5a 4d 41 20 64 65 63 6f 64 65 72 2e 0a 0a 0a 40 6e 6f 64 ated.by.the.LZMA.decoder....@nod
2b040 65 20 54 72 61 69 6c 69 6e 67 20 64 61 74 61 0a 40 63 68 61 70 74 65 72 20 45 78 74 72 61 20 64 e.Trailing.data.@chapter.Extra.d
2b060 61 74 61 20 61 70 70 65 6e 64 65 64 20 74 6f 20 74 68 65 20 66 69 6c 65 0a 40 63 69 6e 64 65 78 ata.appended.to.the.file.@cindex
2b080 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 0a 0a 53 6f 6d 65 74 69 6d 65 73 20 65 78 74 72 61 20 .trailing.data..Sometimes.extra.
2b0a0 64 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 data.are.found.appended.to.a.lzi
2b0c0 70 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 p.file.after.the.last.member..Su
2b0e0 63 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 40 69 74 65 6d 69 ch.trailing.data.may.be:..@itemi
2b100 7a 65 20 40 62 75 6c 6c 65 74 0a 40 69 74 65 6d 0a 50 61 64 64 69 6e 67 20 61 64 64 65 64 20 74 ze.@bullet.@item.Padding.added.t
2b120 6f 20 6d 61 6b 65 20 74 68 65 20 66 69 6c 65 20 73 69 7a 65 20 61 20 6d 75 6c 74 69 70 6c 65 20 o.make.the.file.size.a.multiple.
2b140 6f 66 20 73 6f 6d 65 20 62 6c 6f 63 6b 20 73 69 7a 65 2c 20 66 6f 72 0a 65 78 61 6d 70 6c 65 20 of.some.block.size,.for.example.
2b160 77 68 65 6e 20 77 72 69 74 69 6e 67 20 74 6f 20 61 20 74 61 70 65 2e 20 49 74 20 69 73 20 73 61 when.writing.to.a.tape..It.is.sa
2b180 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 0a 70 61 64 64 69 fe.to.append.any.amount.of.paddi
2b1a0 6e 67 20 7a 65 72 6f 20 62 79 74 65 73 20 74 6f 20 61 20 6c 7a 69 70 20 66 69 6c 65 2e 0a 0a 40 ng.zero.bytes.to.a.lzip.file...@
2b1c0 69 74 65 6d 0a 55 73 65 66 75 6c 20 64 61 74 61 20 61 64 64 65 64 20 62 79 20 74 68 65 20 75 73 item.Useful.data.added.by.the.us
2b1e0 65 72 3b 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 72 65 20 68 er;.a.cryptographically.secure.h
2b200 61 73 68 2c 20 61 0a 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 66 69 6c 65 20 63 6f 6e 74 65 ash,.a.description.of.file.conte
2b220 6e 74 73 2c 20 65 74 63 2e 20 49 74 20 69 73 20 73 61 66 65 20 74 6f 20 61 70 70 65 6e 64 20 61 nts,.etc..It.is.safe.to.append.a
2b240 6e 79 20 61 6d 6f 75 6e 74 20 6f 66 0a 74 65 78 74 20 74 6f 20 61 20 6c 7a 69 70 20 66 69 6c 65 ny.amount.of.text.to.a.lzip.file
2b260 20 61 73 20 6c 6f 6e 67 20 61 73 20 6e 6f 6e 65 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 66 6f .as.long.as.none.of.the.first.fo
2b280 75 72 20 62 79 74 65 73 20 6f 66 20 74 68 65 20 74 65 78 74 0a 6d 61 74 63 68 20 74 68 65 20 63 ur.bytes.of.the.text.match.the.c
2b2a0 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 62 79 74 65 20 69 6e 20 74 68 65 20 73 74 72 69 6e 67 20 orresponding.byte.in.the.string.
2b2c0 22 4c 5a 49 50 22 2c 20 61 6e 64 20 74 68 65 20 74 65 78 74 20 64 6f 65 73 20 6e 6f 74 0a 63 6f "LZIP",.and.the.text.does.not.co
2b2e0 6e 74 61 69 6e 20 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 ntain.any.zero.bytes.(null.chara
2b300 63 74 65 72 73 29 2e 20 4e 6f 6e 7a 65 72 6f 20 62 79 74 65 73 20 61 6e 64 20 7a 65 72 6f 20 62 cters)..Nonzero.bytes.and.zero.b
2b320 79 74 65 73 0a 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 ytes.can't.be.safely.mixed.in.tr
2b340 61 69 6c 69 6e 67 20 64 61 74 61 2e 0a 0a 40 69 74 65 6d 0a 47 61 72 62 61 67 65 20 61 64 64 65 ailing.data...@item.Garbage.adde
2b360 64 20 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 d.by.some.not.totally.successful
2b380 20 63 6f 70 79 20 6f 70 65 72 61 74 69 6f 6e 2e 0a 0a 40 69 74 65 6d 0a 4d 61 6c 69 63 69 6f 75 .copy.operation...@item.Maliciou
2b3a0 73 20 64 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 s.data.added.to.the.file.in.orde
2b3c0 72 20 74 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 68 61 73 r.to.make.its.total.size.and.has
2b3e0 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 69 6e h.value.(for.a.chosen.hash).coin
2b400 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 65 2e cide.with.those.of.another.file.
2b420 0a 0a 40 69 74 65 6d 0a 49 6e 20 72 61 72 65 20 63 61 73 65 73 2c 20 74 72 61 69 6c 69 6e 67 20 ..@item.In.rare.cases,.trailing.
2b440 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 72 data.could.be.the.corrupt.header
2b460 20 6f 66 20 61 6e 6f 74 68 65 72 0a 6d 65 6d 62 65 72 2e 20 49 6e 20 6d 75 6c 74 69 6d 65 6d 62 .of.another.member..In.multimemb
2b480 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 68 65 20 70 72 6f er.or.concatenated.files.the.pro
2b4a0 62 61 62 69 6c 69 74 79 20 6f 66 0a 63 6f 72 72 75 70 74 69 6f 6e 20 68 61 70 70 65 6e 69 6e 67 bability.of.corruption.happening
2b4c0 20 69 6e 20 74 68 65 20 6d 61 67 69 63 20 62 79 74 65 73 20 69 73 20 35 20 74 69 6d 65 73 20 73 .in.the.magic.bytes.is.5.times.s
2b4e0 6d 61 6c 6c 65 72 20 74 68 61 6e 20 74 68 65 0a 70 72 6f 62 61 62 69 6c 69 74 79 20 6f 66 20 67 maller.than.the.probability.of.g
2b500 65 74 74 69 6e 67 20 61 20 66 61 6c 73 65 20 70 6f 73 69 74 69 76 65 20 63 61 75 73 65 64 20 62 etting.a.false.positive.caused.b
2b520 79 20 74 68 65 20 63 6f 72 72 75 70 74 69 6f 6e 20 6f 66 20 74 68 65 0a 69 6e 74 65 67 72 69 74 y.the.corruption.of.the.integrit
2b540 79 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 74 73 65 6c 66 2e 20 54 68 65 72 65 66 6f 72 65 20 y.information.itself..Therefore.
2b560 69 74 20 63 61 6e 20 62 65 20 63 6f 6e 73 69 64 65 72 65 64 20 74 6f 20 62 65 20 62 65 6c 6f 77 it.can.be.considered.to.be.below
2b580 0a 74 68 65 20 6e 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 .the.noise.level..Additionally,.
2b5a0 74 68 65 20 74 65 73 74 20 75 73 65 64 20 62 79 20 6c 7a 69 70 20 74 6f 20 64 69 73 63 72 69 6d the.test.used.by.lzip.to.discrim
2b5c0 69 6e 61 74 65 0a 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 inate.trailing.data.from.a.corru
2b5e0 70 74 20 68 65 61 64 65 72 20 68 61 73 20 61 20 48 61 6d 6d 69 6e 67 20 64 69 73 74 61 6e 63 65 pt.header.has.a.Hamming.distance
2b600 20 28 48 44 29 20 6f 66 20 33 2c 0a 61 6e 64 20 74 68 65 20 33 20 62 69 74 20 66 6c 69 70 73 20 .(HD).of.3,.and.the.3.bit.flips.
2b620 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 69 63 20 62 must.happen.in.different.magic.b
2b640 79 74 65 73 20 66 6f 72 20 74 68 65 20 74 65 73 74 20 74 6f 0a 66 61 69 6c 2e 20 49 6e 20 61 6e ytes.for.the.test.to.fail..In.an
2b660 79 20 63 61 73 65 2c 20 74 68 65 20 6f 70 74 69 6f 6e 20 40 73 61 6d 70 7b 2d 2d 74 72 61 69 6c y.case,.the.option.@samp{--trail
2b680 69 6e 67 2d 65 72 72 6f 72 7d 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 0a 61 6e 79 20 63 ing-error}.guarantees.that.any.c
2b6a0 6f 72 72 75 70 74 20 68 65 61 64 65 72 20 77 69 6c 6c 20 62 65 20 64 65 74 65 63 74 65 64 2e 0a orrupt.header.will.be.detected..
2b6c0 40 65 6e 64 20 69 74 65 6d 69 7a 65 0a 0a 54 72 61 69 6c 69 6e 67 20 64 61 74 61 20 61 72 65 20 @end.itemize..Trailing.data.are.
2b6e0 69 6e 20 6e 6f 20 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 in.no.way.part.of.the.lzip.file.
2b700 66 6f 72 6d 61 74 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 format,.but.tools.reading.lzip.f
2b720 69 6c 65 73 20 61 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 iles.are.expected.to.behave.as.c
2b740 6f 72 72 65 63 74 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 orrectly.and.usefully.as.possibl
2b760 65 20 69 6e 20 74 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 e.in.the.presence.of.trailing.da
2b780 74 61 2e 0a 0a 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 ta...Trailing.data.can.be.safely
2b7a0 20 69 67 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 .ignored.in.most.cases..In.some.
2b7c0 63 61 73 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 cases,.like.that.of.user-added.d
2b7e0 61 74 61 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 ata,.they.are.expected.to.be.ign
2b800 6f 72 65 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 ored..In.those.cases.where.a.fil
2b820 65 20 63 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 e.containing.trailing.data.must.
2b840 62 65 20 72 65 6a 65 63 74 65 64 2c 20 74 68 65 20 6f 70 74 69 6f 6e 0a 40 73 61 6d 70 7b 2d 2d be.rejected,.the.option.@samp{--
2b860 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 7d 20 63 61 6e 20 62 65 20 75 73 65 64 2e 20 40 78 72 trailing-error}.can.be.used..@xr
2b880 65 66 7b 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f 72 7d 2e 0a 0a 0a 40 6e 6f 64 65 20 45 78 ef{--trailing-error}....@node.Ex
2b8a0 61 6d 70 6c 65 73 0a 40 63 68 61 70 74 65 72 20 41 20 73 6d 61 6c 6c 20 74 75 74 6f 72 69 61 6c amples.@chapter.A.small.tutorial
2b8c0 20 77 69 74 68 20 65 78 61 6d 70 6c 65 73 0a 40 63 69 6e 64 65 78 20 65 78 61 6d 70 6c 65 73 0a .with.examples.@cindex.examples.
2b8e0 0a 57 41 52 4e 49 4e 47 21 20 45 76 65 6e 20 69 66 20 6c 7a 69 70 20 69 73 20 62 75 67 2d 66 72 .WARNING!.Even.if.lzip.is.bug-fr
2b900 65 65 2c 20 6f 74 68 65 72 20 63 61 75 73 65 73 20 6d 61 79 20 72 65 73 75 6c 74 20 69 6e 20 61 ee,.other.causes.may.result.in.a
2b920 20 63 6f 72 72 75 70 74 0a 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 28 62 75 67 73 20 69 .corrupt.compressed.file.(bugs.i
2b940 6e 20 74 68 65 20 73 79 73 74 65 6d 20 6c 69 62 72 61 72 69 65 73 2c 20 6d 65 6d 6f 72 79 20 65 n.the.system.libraries,.memory.e
2b960 72 72 6f 72 73 2c 20 65 74 63 29 2e 0a 54 68 65 72 65 66 6f 72 65 2c 20 69 66 20 74 68 65 20 64 rrors,.etc)..Therefore,.if.the.d
2b980 61 74 61 20 79 6f 75 20 61 72 65 20 67 6f 69 6e 67 20 74 6f 20 63 6f 6d 70 72 65 73 73 20 61 72 ata.you.are.going.to.compress.ar
2b9a0 65 20 69 6d 70 6f 72 74 61 6e 74 2c 20 67 69 76 65 20 74 68 65 0a 6f 70 74 69 6f 6e 20 40 73 61 e.important,.give.the.option.@sa
2b9c0 6d 70 7b 2d 2d 6b 65 65 70 7d 20 74 6f 20 6c 7a 69 70 20 61 6e 64 20 64 6f 6e 27 74 20 72 65 6d mp{--keep}.to.lzip.and.don't.rem
2b9e0 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 79 6f 75 0a ove.the.original.file.until.you.
2ba00 76 65 72 69 66 79 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 verify.the.compressed.file.with.
2ba20 61 20 63 6f 6d 6d 61 6e 64 20 6c 69 6b 65 0a 40 77 7b 40 73 61 6d 70 7b 6c 7a 69 70 20 2d 63 64 a.command.like.@w{@samp{lzip.-cd
2ba40 20 66 69 6c 65 2e 6c 7a 20 7c 20 63 6d 70 20 66 69 6c 65 20 2d 7d 7d 2e 20 4d 6f 73 74 20 52 41 .file.lz.|.cmp.file.-}}..Most.RA
2ba60 4d 20 65 72 72 6f 72 73 20 68 61 70 70 65 6e 69 6e 67 20 64 75 72 69 6e 67 0a 63 6f 6d 70 72 65 M.errors.happening.during.compre
2ba80 73 73 69 6f 6e 20 63 61 6e 20 6f 6e 6c 79 20 62 65 20 64 65 74 65 63 74 65 64 20 62 79 20 63 6f ssion.can.only.be.detected.by.co
2baa0 6d 70 61 72 69 6e 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 mparing.the.compressed.file.with
2bac0 20 74 68 65 0a 6f 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 .the.original.because.the.corrup
2bae0 74 69 6f 6e 20 68 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 tion.happens.before.lzip.compres
2bb00 73 65 73 20 74 68 65 20 52 41 4d 0a 63 6f 6e 74 65 6e 74 73 2c 20 72 65 73 75 6c 74 69 6e 67 20 ses.the.RAM.contents,.resulting.
2bb20 69 6e 20 61 20 76 61 6c 69 64 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 20 63 6f 6e 74 61 in.a.valid.compressed.file.conta
2bb40 69 6e 69 6e 67 20 77 72 6f 6e 67 20 64 61 74 61 2e 0a 0a 40 73 70 20 31 0a 40 6e 6f 69 6e 64 65 ining.wrong.data...@sp.1.@noinde
2bb60 6e 74 0a 45 78 61 6d 70 6c 65 20 31 3a 20 45 78 74 72 61 63 74 20 61 6c 6c 20 74 68 65 20 66 69 nt.Example.1:.Extract.all.the.fi
2bb80 6c 65 73 20 66 72 6f 6d 20 61 72 63 68 69 76 65 20 40 73 61 6d 70 7b 66 6f 6f 2e 74 61 72 2e 6c les.from.archive.@samp{foo.tar.l
2bba0 7a 7d 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a 20 20 74 61 72 20 2d 78 66 20 66 6f 6f 2e 74 61 72 2e z}...@example...tar.-xf.foo.tar.
2bbc0 6c 7a 0a 6f 72 0a 20 20 6c 7a 69 70 20 2d 63 64 20 66 6f 6f 2e 74 61 72 2e 6c 7a 20 7c 20 74 61 lz.or...lzip.-cd.foo.tar.lz.|.ta
2bbe0 72 20 2d 78 66 20 2d 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 40 73 70 20 31 0a 40 6e 6f 69 r.-xf.-.@end.example..@sp.1.@noi
2bc00 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 32 3a 20 52 65 70 6c 61 63 65 20 61 20 72 65 67 75 6c ndent.Example.2:.Replace.a.regul
2bc20 61 72 20 66 69 6c 65 20 77 69 74 68 20 69 74 73 20 63 6f 6d 70 72 65 73 73 65 64 20 76 65 72 73 ar.file.with.its.compressed.vers
2bc40 69 6f 6e 20 40 73 61 6d 70 7b 66 69 6c 65 2e 6c 7a 7d 0a 61 6e 64 20 73 68 6f 77 20 74 68 65 20 ion.@samp{file.lz}.and.show.the.
2bc60 63 6f 6d 70 72 65 73 73 69 6f 6e 20 72 61 74 69 6f 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a 6c 7a 69 compression.ratio...@example.lzi
2bc80 70 20 2d 76 20 66 69 6c 65 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 40 73 70 20 31 0a 40 6e p.-v.file.@end.example..@sp.1.@n
2bca0 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 6c 65 20 oindent.Example.3:.Like.example.
2bcc0 31 20 62 75 74 20 74 68 65 20 63 72 65 61 74 65 64 20 40 73 61 6d 70 7b 66 69 6c 65 2e 6c 7a 7d 1.but.the.created.@samp{file.lz}
2bce0 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 20 73 69 .is.multimember.with.a.member.si
2bd00 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 69 6f 6e ze.of.@w{1.MiB}..The.compression
2bd20 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 65 0a 6c .ratio.is.not.shown...@example.l
2bd40 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 0a 0a 40 zip.-b.1MiB.file.@end.example..@
2bd60 73 70 20 31 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 sp.1.@noindent.Example.4:.Restor
2bd80 65 20 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 e.a.regular.file.from.its.compre
2bda0 73 73 65 64 20 76 65 72 73 69 6f 6e 0a 40 73 61 6d 70 7b 66 69 6c 65 2e 6c 7a 7d 2e 20 49 66 20 ssed.version.@samp{file.lz}..If.
2bdc0 74 68 65 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 73 61 the.operation.is.successful,.@sa
2bde0 6d 70 7b 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 mp{file.lz}.is.removed...@exampl
2be00 65 0a 6c 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 e.lzip.-d.file.lz.@end.example..
2be20 40 73 70 20 31 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 35 3a 20 56 65 72 69 66 @sp.1.@noindent.Example.5:.Verif
2be40 79 20 74 68 65 20 69 6e 74 65 67 72 69 74 79 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 y.the.integrity.of.the.compresse
2be60 64 20 66 69 6c 65 20 40 73 61 6d 70 7b 66 69 6c 65 2e 6c 7a 7d 20 61 6e 64 0a 73 68 6f 77 20 73 d.file.@samp{file.lz}.and.show.s
2be80 74 61 74 75 73 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a 6c 7a 69 70 20 2d 74 76 20 66 69 6c 65 2e 6c tatus...@example.lzip.-tv.file.l
2bea0 7a 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 40 73 70 20 31 0a 40 6e 6f 69 6e 64 65 6e 74 0a z.@end.example..@sp.1.@noindent.
2bec0 45 78 61 6d 70 6c 65 20 36 3a 20 43 6f 6d 70 72 65 73 73 20 61 20 77 68 6f 6c 65 20 64 65 76 69 Example.6:.Compress.a.whole.devi
2bee0 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 65 20 6f 75 74 70 ce.in./dev/sdc.and.send.the.outp
2bf00 75 74 20 74 6f 0a 40 73 61 6d 70 7b 66 69 6c 65 2e 6c 7a 7d 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a ut.to.@samp{file.lz}...@example.
2bf20 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 6c 7a 0a 6f 72 0a ..lzip.-c./dev/sdc.>.file.lz.or.
2bf40 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 0a 40 65 6e 64 20 ..lzip./dev/sdc.-o.file.lz.@end.
2bf60 65 78 61 6d 70 6c 65 0a 0a 40 73 70 20 31 0a 40 61 6e 63 68 6f 72 7b 63 6f 6e 63 61 74 2d 65 78 example..@sp.1.@anchor{concat-ex
2bf80 61 6d 70 6c 65 7d 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 37 3a 20 54 68 65 20 ample}.@noindent.Example.7:.The.
2bfa0 72 69 67 68 74 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 right.way.of.concatenating.the.d
2bfc0 65 63 6f 6d 70 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 ecompressed.output.of.two.or.mor
2bfe0 65 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 73 2e 20 40 78 72 65 66 7b 54 72 61 69 6c 69 e.compressed.files..@xref{Traili
2c000 6e 67 20 64 61 74 61 7d 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a 44 6f 6e 27 74 20 64 6f 20 74 68 69 ng.data}...@example.Don't.do.thi
2c020 73 0a 20 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 s...cat.file1.lz.file2.lz.file3.
2c040 6c 7a 20 7c 20 6c 7a 69 70 20 2d 64 20 2d 0a 44 6f 20 74 68 69 73 20 69 6e 73 74 65 61 64 0a 20 lz.|.lzip.-d.-.Do.this.instead..
2c060 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 6c 7a 20 66 69 6c 65 .lzip.-cd.file1.lz.file2.lz.file
2c080 33 2e 6c 7a 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 40 73 70 20 31 0a 40 6e 6f 69 6e 64 65 3.lz.@end.example..@sp.1.@noinde
2c0a0 6e 74 0a 45 78 61 6d 70 6c 65 20 38 3a 20 44 65 63 6f 6d 70 72 65 73 73 20 40 73 61 6d 70 7b 66 nt.Example.8:.Decompress.@samp{f
2c0c0 69 6c 65 2e 6c 7a 7d 20 70 61 72 74 69 61 6c 6c 79 20 75 6e 74 69 6c 20 40 77 7b 31 30 20 4b 69 ile.lz}.partially.until.@w{10.Ki
2c0e0 42 7d 20 6f 66 0a 64 65 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 61 72 65 20 70 72 6f 64 B}.of.decompressed.data.are.prod
2c100 75 63 65 64 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a 6c 7a 69 70 20 2d 63 64 20 66 69 6c 65 2e 6c 7a uced...@example.lzip.-cd.file.lz
2c120 20 7c 20 64 64 20 62 73 3d 31 30 32 34 20 63 6f 75 6e 74 3d 31 30 0a 40 65 6e 64 20 65 78 61 6d .|.dd.bs=1024.count=10.@end.exam
2c140 70 6c 65 0a 0a 40 73 70 20 31 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 39 3a 20 ple..@sp.1.@noindent.Example.9:.
2c160 44 65 63 6f 6d 70 72 65 73 73 20 40 73 61 6d 70 7b 66 69 6c 65 2e 6c 7a 7d 20 70 61 72 74 69 61 Decompress.@samp{file.lz}.partia
2c180 6c 6c 79 20 66 72 6f 6d 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 62 79 74 65 20 61 74 0a 6f 66 lly.from.decompressed.byte.at.of
2c1a0 66 73 65 74 20 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 fset.10000.to.decompressed.byte.
2c1c0 61 74 20 6f 66 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 at.offset.14999.(5000.bytes.are.
2c1e0 70 72 6f 64 75 63 65 64 29 2e 0a 0a 40 65 78 61 6d 70 6c 65 0a 6c 7a 69 70 20 2d 63 64 20 66 69 produced)...@example.lzip.-cd.fi
2c200 6c 65 2e 6c 7a 20 7c 20 64 64 20 62 73 3d 31 30 30 30 20 73 6b 69 70 3d 31 30 20 63 6f 75 6e 74 le.lz.|.dd.bs=1000.skip=10.count
2c220 3d 35 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 40 73 70 20 31 0a 40 6e 6f 69 6e 64 65 6e 74 =5.@end.example..@sp.1.@noindent
2c240 0a 45 78 61 6d 70 6c 65 20 31 30 3a 20 43 72 65 61 74 65 20 61 20 6d 75 6c 74 69 76 6f 6c 75 6d .Example.10:.Create.a.multivolum
2c260 65 20 63 6f 6d 70 72 65 73 73 65 64 20 74 61 72 20 61 72 63 68 69 76 65 20 77 69 74 68 20 61 20 e.compressed.tar.archive.with.a.
2c280 76 6f 6c 75 6d 65 20 73 69 7a 65 0a 6f 66 20 40 77 7b 31 34 34 30 20 4b 69 42 7d 2e 0a 0a 40 65 volume.size.of.@w{1440.KiB}...@e
2c2a0 78 61 6d 70 6c 65 0a 74 61 72 20 2d 63 20 73 6f 6d 65 5f 64 69 72 65 63 74 6f 72 79 20 7c 20 6c xample.tar.-c.some_directory.|.l
2c2c0 7a 69 70 20 2d 53 20 31 34 34 30 4b 69 42 20 2d 6f 20 76 6f 6c 75 6d 65 5f 6e 61 6d 65 20 2d 0a zip.-S.1440KiB.-o.volume_name.-.
2c2e0 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 40 73 70 20 31 0a 40 6e 6f 69 6e 64 65 6e 74 0a 45 78 @end.example..@sp.1.@noindent.Ex
2c300 61 6d 70 6c 65 20 31 31 3a 20 45 78 74 72 61 63 74 20 61 20 6d 75 6c 74 69 76 6f 6c 75 6d 65 20 ample.11:.Extract.a.multivolume.
2c320 63 6f 6d 70 72 65 73 73 65 64 20 74 61 72 20 61 72 63 68 69 76 65 2e 0a 0a 40 65 78 61 6d 70 6c compressed.tar.archive...@exampl
2c340 65 0a 6c 7a 69 70 20 2d 63 64 20 76 6f 6c 75 6d 65 5f 6e 61 6d 65 2a 2e 6c 7a 20 7c 20 74 61 72 e.lzip.-cd.volume_name*.lz.|.tar
2c360 20 2d 78 66 20 2d 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 40 73 70 20 31 0a 40 6e 6f 69 6e .-xf.-.@end.example..@sp.1.@noin
2c380 64 65 6e 74 0a 45 78 61 6d 70 6c 65 20 31 32 3a 20 43 72 65 61 74 65 20 61 20 6d 75 6c 74 69 76 dent.Example.12:.Create.a.multiv
2c3a0 6f 6c 75 6d 65 20 63 6f 6d 70 72 65 73 73 65 64 20 62 61 63 6b 75 70 20 6f 66 20 61 20 6c 61 72 olume.compressed.backup.of.a.lar
2c3c0 67 65 20 64 61 74 61 62 61 73 65 20 66 69 6c 65 0a 77 69 74 68 20 61 20 76 6f 6c 75 6d 65 20 73 ge.database.file.with.a.volume.s
2c3e0 69 7a 65 20 6f 66 20 40 77 7b 36 35 30 20 4d 42 7d 2c 20 77 68 65 72 65 20 65 61 63 68 20 76 6f ize.of.@w{650.MB},.where.each.vo
2c400 6c 75 6d 65 20 69 73 20 61 20 6d 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 0a 77 69 74 68 20 lume.is.a.multimember.file.with.
2c420 61 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 6f 66 20 40 77 7b 33 32 20 4d 69 42 7d 2e 0a 0a 40 65 a.member.size.of.@w{32.MiB}...@e
2c440 78 61 6d 70 6c 65 0a 6c 7a 69 70 20 2d 62 20 33 32 4d 69 42 20 2d 53 20 36 35 30 4d 42 20 62 69 xample.lzip.-b.32MiB.-S.650MB.bi
2c460 67 5f 64 62 0a 40 65 6e 64 20 65 78 61 6d 70 6c 65 0a 0a 0a 40 6e 6f 64 65 20 50 72 6f 62 6c 65 g_db.@end.example...@node.Proble
2c480 6d 73 0a 40 63 68 61 70 74 65 72 20 52 65 70 6f 72 74 69 6e 67 20 62 75 67 73 0a 40 63 69 6e 64 ms.@chapter.Reporting.bugs.@cind
2c4a0 65 78 20 62 75 67 73 0a 40 63 69 6e 64 65 78 20 67 65 74 74 69 6e 67 20 68 65 6c 70 0a 0a 54 68 ex.bugs.@cindex.getting.help..Th
2c4c0 65 72 65 20 61 72 65 20 70 72 6f 62 61 62 6c 79 20 62 75 67 73 20 69 6e 20 6c 7a 69 70 2e 20 54 ere.are.probably.bugs.in.lzip..T
2c4e0 68 65 72 65 20 61 72 65 20 63 65 72 74 61 69 6e 6c 79 20 65 72 72 6f 72 73 20 61 6e 64 0a 6f 6d here.are.certainly.errors.and.om
2c500 69 73 73 69 6f 6e 73 20 69 6e 20 74 68 69 73 20 6d 61 6e 75 61 6c 2e 20 49 66 20 79 6f 75 20 72 issions.in.this.manual..If.you.r
2c520 65 70 6f 72 74 20 74 68 65 6d 2c 20 74 68 65 79 20 77 69 6c 6c 20 67 65 74 20 66 69 78 65 64 2e eport.them,.they.will.get.fixed.
2c540 20 49 66 0a 79 6f 75 20 64 6f 6e 27 74 2c 20 6e 6f 20 6f 6e 65 20 77 69 6c 6c 20 65 76 65 72 20 .If.you.don't,.no.one.will.ever.
2c560 6b 6e 6f 77 20 61 62 6f 75 74 20 74 68 65 6d 20 61 6e 64 20 74 68 65 79 20 77 69 6c 6c 20 72 65 know.about.them.and.they.will.re
2c580 6d 61 69 6e 20 75 6e 66 69 78 65 64 0a 66 6f 72 20 61 6c 6c 20 65 74 65 72 6e 69 74 79 2c 20 69 main.unfixed.for.all.eternity,.i
2c5a0 66 20 6e 6f 74 20 6c 6f 6e 67 65 72 2e 0a 0a 49 66 20 79 6f 75 20 66 69 6e 64 20 61 20 62 75 67 f.not.longer...If.you.find.a.bug
2c5c0 20 69 6e 20 6c 7a 69 70 2c 20 70 6c 65 61 73 65 20 73 65 6e 64 20 65 6c 65 63 74 72 6f 6e 69 63 .in.lzip,.please.send.electronic
2c5e0 20 6d 61 69 6c 20 74 6f 0a 40 65 6d 61 69 6c 7b 6c 7a 69 70 2d 62 75 67 40 40 6e 6f 6e 67 6e 75 .mail.to.@email{lzip-bug@@nongnu
2c600 2e 6f 72 67 7d 2e 20 49 6e 63 6c 75 64 65 20 74 68 65 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 .org}..Include.the.version.numbe
2c620 72 2c 20 77 68 69 63 68 20 79 6f 75 20 63 61 6e 0a 66 69 6e 64 20 62 79 20 72 75 6e 6e 69 6e 67 r,.which.you.can.find.by.running
2c640 20 40 77 7b 40 73 61 6d 70 7b 6c 7a 69 70 20 2d 2d 76 65 72 73 69 6f 6e 7d 7d 2e 0a 0a 0a 40 6e .@w{@samp{lzip.--version}}....@n
2c660 6f 64 65 20 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 0a 40 61 70 70 65 6e ode.Reference.source.code.@appen
2c680 64 69 78 20 52 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 0a 40 63 69 6e 64 65 dix.Reference.source.code.@cinde
2c6a0 78 20 72 65 66 65 72 65 6e 63 65 20 73 6f 75 72 63 65 20 63 6f 64 65 0a 0a 40 76 65 72 62 61 74 x.reference.source.code..@verbat
2c6c0 69 6d 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 65 im./*.Lzd.-.Educational.decompre
2c6e0 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 79 ssor.for.the.lzip.format....Copy
2c700 72 69 67 68 74 20 28 43 29 20 32 30 31 33 2d 32 30 32 30 20 41 6e 74 6f 6e 69 6f 20 44 69 61 7a right.(C).2013-2020.Antonio.Diaz
2c720 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 20 .Diaz......This.program.is.free.
2c740 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 65 software..Redistribution.and.use
2c760 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 20 .in.source.and....binary.forms,.
2c780 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 72 with.or.without.modification,.ar
2c7a0 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 65 e.permitted.provided....that.the
2c7c0 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 0a .following.conditions.are.met:..
2c7e0 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 20 ...1..Redistributions.of.source.
2c800 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 72 code.must.retain.the.above.copyr
2c820 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 6e ight....notice,.this.list.of.con
2c840 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 6c ditions,.and.the.following.discl
2c860 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 6e aimer......2..Redistributions.in
2c880 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 20 .binary.form.must.reproduce.the.
2c8a0 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 20 above.copyright....notice,.this.
2c8c0 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 6c list.of.conditions,.and.the.foll
2c8e0 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 6d owing.disclaimer.in.the....docum
2c900 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 20 entation.and/or.other.materials.
2c920 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 0a provided.with.the.distribution..
2c940 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 20 ....This.program.is.distributed.
2c960 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 66 in.the.hope.that.it.will.be.usef
2c980 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 3b ul,....but.WITHOUT.ANY.WARRANTY;
2c9a0 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 6e .without.even.the.implied.warran
2c9c0 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 4e ty.of....MERCHANTABILITY.or.FITN
2c9e0 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 2f ESS.FOR.A.PARTICULAR.PURPOSE..*/
2ca00 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 6d ./*....Exit.status:.0.for.a.norm
2ca20 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
2ca40 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 69 blems....(file.not.found,.invali
2ca60 64 20 66 6c 61 67 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 20 d.flags,.I/O.errors,.etc),.2.to.
2ca80 69 6e 64 69 63 61 74 65 20 61 0a 20 20 20 63 6f 72 72 75 70 74 20 6f 72 20 69 6e 76 61 6c 69 64 indicate.a....corrupt.or.invalid
2caa0 20 69 6e 70 75 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 .input.file..*/..#include.<algor
2cac0 69 74 68 6d 3e 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 ithm>.#include.<cerrno>.#include
2cae0 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 69 62 3e 0a 23 69 6e .<cstdio>.#include.<cstdlib>.#in
2cb00 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 64 69 6e 74 clude.<cstring>.#include.<stdint
2cb20 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 66 20 64 65 66 69 .h>.#include.<unistd.h>.#if.defi
2cb40 6e 65 64 28 5f 5f 4d 53 56 43 52 54 5f 5f 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 5f 4f 53 32 ned(__MSVCRT__).||.defined(__OS2
2cb60 5f 5f 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 5f 44 4a 47 50 50 5f 5f 29 0a 23 69 6e 63 6c 75 __).||.defined(__DJGPP__).#inclu
2cb80 64 65 20 3c 66 63 6e 74 6c 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 69 6f 2e 68 3e 0a 23 65 6e de.<fcntl.h>.#include.<io.h>.#en
2cba0 64 69 66 0a 0a 0a 63 6c 61 73 73 20 53 74 61 74 65 0a 20 20 7b 0a 20 20 69 6e 74 20 73 74 3b 0a dif...class.State...{...int.st;.
2cbc0 0a 70 75 62 6c 69 63 3a 0a 20 20 65 6e 75 6d 20 7b 20 73 74 61 74 65 73 20 3d 20 31 32 20 7d 3b .public:...enum.{.states.=.12.};
2cbe0 0a 20 20 53 74 61 74 65 28 29 20 3a 20 73 74 28 20 30 20 29 20 7b 7d 0a 20 20 69 6e 74 20 6f 70 ...State().:.st(.0.).{}...int.op
2cc00 65 72 61 74 6f 72 28 29 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 73 74 3b 20 7d 0a erator()().const.{.return.st;.}.
2cc20 20 20 62 6f 6f 6c 20 69 73 5f 63 68 61 72 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 ..bool.is_char().const.{.return.
2cc40 73 74 20 3c 20 37 3b 20 7d 0a 0a 20 20 76 6f 69 64 20 73 65 74 5f 63 68 61 72 28 29 0a 20 20 20 st.<.7;.}....void.set_char()....
2cc60 20 7b 0a 20 20 20 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 .{.....const.int.next[states].=.
2cc80 7b 20 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 {.0,.0,.0,.0,.1,.2,.3,.4,.5,.6,.
2cca0 34 2c 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 4,.5.};.....st.=.next[st];.....}
2ccc0 0a 20 20 76 6f 69 64 20 73 65 74 5f 6d 61 74 63 68 28 29 20 20 20 20 20 7b 20 73 74 20 3d 20 28 ...void.set_match().....{.st.=.(
2cce0 20 73 74 20 3c 20 37 20 29 20 3f 20 37 20 3a 20 31 30 3b 20 7d 0a 20 20 76 6f 69 64 20 73 65 74 .st.<.7.).?.7.:.10;.}...void.set
2cd00 5f 72 65 70 28 29 20 20 20 20 20 20 20 7b 20 73 74 20 3d 20 28 20 73 74 20 3c 20 37 20 29 20 3f _rep().......{.st.=.(.st.<.7.).?
2cd20 20 38 20 3a 20 31 31 3b 20 7d 0a 20 20 76 6f 69 64 20 73 65 74 5f 73 68 6f 72 74 5f 72 65 70 28 .8.:.11;.}...void.set_short_rep(
2cd40 29 20 7b 20 73 74 20 3d 20 28 20 73 74 20 3c 20 37 20 29 20 3f 20 39 20 3a 20 31 31 3b 20 7d 0a ).{.st.=.(.st.<.7.).?.9.:.11;.}.
2cd60 20 20 7d 3b 0a 0a 0a 65 6e 75 6d 20 7b 0a 20 20 6d 69 6e 5f 64 69 63 74 69 6f 6e 61 72 79 5f 73 ..};...enum.{...min_dictionary_s
2cd80 69 7a 65 20 3d 20 31 20 3c 3c 20 31 32 2c 0a 20 20 6d 61 78 5f 64 69 63 74 69 6f 6e 61 72 79 5f ize.=.1.<<.12,...max_dictionary_
2cda0 73 69 7a 65 20 3d 20 31 20 3c 3c 20 32 39 2c 0a 20 20 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 size.=.1.<<.29,...literal_contex
2cdc0 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_
2cde0 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
2ce00 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.
2ce20 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
2ce40 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
2ce60 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,...
2ce80 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
2cea0 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.=
2cec0 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.),.//.
2cee0 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_
2cf00 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
2cf20 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
2cf40 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,.
2cf60 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
2cf80 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.<<.
2cfa0 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
2cfc0 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
2cfe0 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
2d000 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,
2d020 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
2d040 73 74 20 62 65 20 32 0a 0a 20 20 62 69 74 5f 6d 6f 64 65 6c 5f 6d 6f 76 65 5f 62 69 74 73 20 3d st.be.2....bit_model_move_bits.=
2d060 20 35 2c 0a 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 .5,...bit_model_total_bits.=.11,
2d080 0a 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 6f ...bit_model_total.=.1.<<.bit_mo
2d0a0 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 6f del_total_bits.};..struct.Bit_mo
2d0c0 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 42 69 74 del...{...int.probability;...Bit
2d0e0 5f 6d 6f 64 65 6c 28 29 20 3a 20 70 72 6f 62 61 62 69 6c 69 74 79 28 20 62 69 74 5f 6d 6f 64 65 _model().:.probability(.bit_mode
2d100 6c 5f 74 6f 74 61 6c 20 2f 20 32 20 29 20 7b 7d 0a 20 20 7d 3b 0a 0a 73 74 72 75 63 74 20 4c 65 l_total./.2.).{}...};..struct.Le
2d120 6e 5f 6d 6f 64 65 6c 0a 20 20 7b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 63 68 6f 69 63 65 31 3b n_model...{...Bit_model.choice1;
2d140 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 63 68 6f 69 63 65 32 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 ...Bit_model.choice2;...Bit_mode
2d160 6c 20 62 6d 5f 6c 6f 77 5b 70 6f 73 5f 73 74 61 74 65 73 5d 5b 6c 65 6e 5f 6c 6f 77 5f 73 79 6d l.bm_low[pos_states][len_low_sym
2d180 62 6f 6c 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6d 69 64 5b 70 6f 73 5f 73 74 bols];...Bit_model.bm_mid[pos_st
2d1a0 61 74 65 73 5d 5b 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f ates][len_mid_symbols];...Bit_mo
2d1c0 64 65 6c 20 62 6d 5f 68 69 67 68 5b 6c 65 6e 5f 68 69 67 68 5f 73 79 6d 62 6f 6c 73 5d 3b 0a 20 del.bm_high[len_high_symbols];..
2d1e0 20 7d 3b 0a 0a 0a 63 6c 61 73 73 20 43 52 43 33 32 0a 20 20 7b 0a 20 20 75 69 6e 74 33 32 5f 74 .};...class.CRC32...{...uint32_t
2d200 20 64 61 74 61 5b 32 35 36 5d 3b 09 09 2f 2f 20 54 61 62 6c 65 20 6f 66 20 43 52 43 73 20 6f 66 .data[256];..//.Table.of.CRCs.of
2d220 20 61 6c 6c 20 38 2d 62 69 74 20 6d 65 73 73 61 67 65 73 2e 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 .all.8-bit.messages...public:...
2d240 43 52 43 33 32 28 29 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 CRC32().....{.....for(.unsigned.
2d260 6e 20 3d 20 30 3b 20 6e 20 3c 20 32 35 36 3b 20 2b 2b 6e 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 n.=.0;.n.<.256;.++n.).......{...
2d280 20 20 20 20 75 6e 73 69 67 6e 65 64 20 63 20 3d 20 6e 3b 0a 20 20 20 20 20 20 66 6f 72 28 20 69 ....unsigned.c.=.n;.......for(.i
2d2a0 6e 74 20 6b 20 3d 20 30 3b 20 6b 20 3c 20 38 3b 20 2b 2b 6b 20 29 0a 20 20 20 20 20 20 20 20 7b nt.k.=.0;.k.<.8;.++k.).........{
2d2c0 20 69 66 28 20 63 20 26 20 31 20 29 20 63 20 3d 20 30 78 45 44 42 38 38 33 32 30 55 20 5e 20 28 .if(.c.&.1.).c.=.0xEDB88320U.^.(
2d2e0 20 63 20 3e 3e 20 31 20 29 3b 20 65 6c 73 65 20 63 20 3e 3e 3d 20 31 3b 20 7d 0a 20 20 20 20 20 .c.>>.1.);.else.c.>>=.1;.}......
2d300 20 64 61 74 61 5b 6e 5d 20 3d 20 63 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 76 .data[n].=.c;.......}.....}....v
2d320 6f 69 64 20 75 70 64 61 74 65 5f 62 75 66 28 20 75 69 6e 74 33 32 5f 74 20 26 20 63 72 63 2c 20 oid.update_buf(.uint32_t.&.crc,.
2d340 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 66 65 72 2c 0a 20 20 const.uint8_t.*.const.buffer,...
2d360 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 73 69 7a 65 20 .................const.int.size.
2d380 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 ).const.....{.....for(.int.i.=.0
2d3a0 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 72 63 20 3d 20 64 61 ;.i.<.size;.++i.).......crc.=.da
2d3c0 74 61 5b 28 63 72 63 5e 62 75 66 66 65 72 5b 69 5d 29 26 30 78 46 46 5d 20 5e 20 28 20 63 72 63 ta[(crc^buffer[i])&0xFF].^.(.crc
2d3e0 20 3e 3e 20 38 20 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 3b 0a 0a 63 6f 6e 73 74 20 43 52 43 33 32 .>>.8.);.....}...};..const.CRC32
2d400 20 63 72 63 33 32 3b 0a 0a 0a 74 79 70 65 64 65 66 20 75 69 6e 74 38 5f 74 20 4c 7a 69 70 5f 68 .crc32;...typedef.uint8_t.Lzip_h
2d420 65 61 64 65 72 5b 36 5d 3b 09 09 2f 2f 20 30 2d 33 20 6d 61 67 69 63 20 62 79 74 65 73 0a 09 09 eader[6];..//.0-3.magic.bytes...
2d440 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
2d460 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 75 69 6e 74 ded.dictionary.size.typedef.uint
2d480 38 5f 74 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 5b 32 30 5d 3b 0a 09 09 09 2f 2f 20 20 30 2d 33 8_t.Lzip_trailer[20];....//..0-3
2d4a0 20 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 20 64 61 74 61 ..CRC32.of.the.uncompressed.data
2d4c0 0a 09 09 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 ....//..4-11.size.of.the.uncompr
2d4e0 65 73 73 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 essed.data....//.12-19.member.si
2d500 7a 65 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 0a ze.including.header.and.trailer.
2d520 0a 63 6c 61 73 73 20 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 .class.Range_decoder...{...unsig
2d540 6e 65 64 20 6c 6f 6e 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 ned.long.long.member_pos;...uint
2d560 33 32 5f 74 20 63 6f 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 32_t.code;...uint32_t.range;..pu
2d580 62 6c 69 63 3a 0a 20 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 28 29 20 3a 20 6d 65 6d 62 65 72 blic:...Range_decoder().:.member
2d5a0 5f 70 6f 73 28 20 36 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 _pos(.6.),.code(.0.),.range(.0xF
2d5c0 46 46 46 46 46 46 46 55 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 FFFFFFFU.).....{.....for(.int.i.
2d5e0 3d 20 30 3b 20 69 20 3c 20 35 3b 20 2b 2b 69 20 29 20 63 6f 64 65 20 3d 20 28 20 63 6f 64 65 20 =.0;.i.<.5;.++i.).code.=.(.code.
2d600 3c 3c 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 <<.8.).|.get_byte();.....}....ui
2d620 6e 74 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 nt8_t.get_byte().{.++member_pos;
2d640 20 72 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 .return.std::getc(.stdin.);.}...
2d660 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
2d680 6f 6e 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 on().const.{.return.member_pos;.
2d6a0 7d 0a 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 }....unsigned.decode(.const.int.
2d6c0 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 64 20 73 79 num_bits.).....{.....unsigned.sy
2d6e0 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 6e 75 6d 5f 62 mbol.=.0;.....for(.int.i.=.num_b
2d700 69 74 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 its;.i.>.0;.--i.).......{.......
2d720 72 61 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 range.>>=.1;.......symbol.<<=.1;
2d740 0a 20 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 .......if(.code.>=.range.).{.cod
2d760 65 20 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 e.-=.range;.symbol.|=.1;.}......
2d780 20 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 2f 2f .if(.range.<=.0x00FFFFFFU.)...//
2d7a0 20 6e 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 .normalize.........{.range.<<=.8
2d7c0 3b 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 74 5f 62 79 74 ;.code.=.(.code.<<.8.).|.get_byt
2d7e0 65 28 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 e();.}.......}.....return.symbol
2d800 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 62 69 74 28 20 ;.....}....unsigned.decode_bit(.
2d820 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 75 6e 73 69 67 Bit_model.&.bm.).....{.....unsig
2d840 6e 65 64 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 62 ned.symbol;.....const.uint32_t.b
2d860 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 61 ound.=.(.range.>>.bit_model_tota
2d880 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 69 l_bits.).*.bm.probability;.....i
2d8a0 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 20 f(.code.<.bound.).......{.......
2d8c0 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 6c range.=.bound;.......bm.probabil
2d8e0 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 6c ity.+=.........(.bit_model_total
2d900 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 6c .-.bm.probability.).>>.bit_model
2d920 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 20 _move_bits;.......symbol.=.0;...
2d940 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 72 61 6e ....}.....else.......{.......ran
2d960 67 65 20 2d 3d 20 62 6f 75 6e 64 3b 0a 20 20 20 20 20 20 63 6f 64 65 20 2d 3d 20 62 6f 75 6e 64 ge.-=.bound;.......code.-=.bound
2d980 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 6f ;.......bm.probability.-=.bm.pro
2d9a0 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 3b bability.>>.bit_model_move_bits;
2d9c0 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 69 .......symbol.=.1;.......}.....i
2d9e0 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 20 f(.range.<=.0x00FFFFFFU.)....//.
2da00 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 63 normalize.......{.range.<<=.8;.c
2da20 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 29 ode.=.(.code.<<.8.).|.get_byte()
2da40 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 20 ;.}.....return.symbol;.....}....
2da60 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 20 unsigned.decode_tree(.Bit_model.
2da80 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 7b bm[],.const.int.num_bits.).....{
2daa0 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
2dac0 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 20 r(.int.i.=.0;.i.<.num_bits;.++i.
2dae0 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 29 ).......symbol.=.(.symbol.<<.1.)
2db00 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 20 .|.decode_bit(.bm[symbol].);....
2db20 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 73 .return.symbol.-.(.1.<<.num_bits
2db40 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 65 .);.....}....unsigned.decode_tre
2db60 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 73 e_reversed(.Bit_model.bm[],.cons
2db80 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
2dba0 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 75 ned.symbol.=.decode_tree(.bm,.nu
2dbc0 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 5f m_bits.);.....unsigned.reversed_
2dbe0 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 20 symbol.=.0;.....for(.int.i.=.0;.
2dc00 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 20 i.<.num_bits;.++i.).......{.....
2dc20 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 73 ..reversed_symbol.=.(.reversed_s
2dc40 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 20 ymbol.<<.1.).|.(.symbol.&.1.);..
2dc60 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 72 .....symbol.>>=.1;.......}.....r
2dc80 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 20 eturn.reversed_symbol;.....}....
2dca0 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 64 unsigned.decode_matched(.Bit_mod
2dcc0 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 79 el.bm[],.const.unsigned.match_by
2dce0 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 3d te.).....{.....unsigned.symbol.=
2dd00 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 20 .1;.....for(.int.i.=.7;.i.>=.0;.
2dd20 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 75 6e 73 69 67 6e --i.).......{.......const.unsign
2dd40 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 74 65 20 3e 3e 20 69 ed.match_bit.=.(.match_byte.>>.i
2dd60 20 29 20 26 20 31 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 62 69 74 .).&.1;.......const.unsigned.bit
2dd80 20 3d 20 64 65 63 6f 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 .=.decode_bit(.bm[symbol+(match_
2dda0 62 69 74 3c 3c 38 29 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 bit<<8)+0x100].);.......symbol.=
2ddc0 20 28 20 73 79 6d 62 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 .(.symbol.<<.1.).|.bit;.......if
2dde0 28 20 6d 61 74 63 68 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 (.match_bit.!=.bit.).........{..
2de00 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 0a 20 .......while(.symbol.<.0x100.)..
2de20 20 20 20 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.
2de40 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].);...
2de60 20 20 20 20 20 20 62 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 ......break;.........}.......}..
2de80 20 20 20 72 65 74 75 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 ...return.symbol.&.0xFF;.....}..
2dea0 20 20 75 6e 73 69 67 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 ..unsigned.decode_len(.Len_model
2dec0 20 26 20 6c 6d 2c 20 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 .&.lm,.const.int.pos_state.)....
2dee0 20 7b 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 .{.....if(.decode_bit(.lm.choice
2df00 31 20 29 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 64 65 63 6f 64 65 5f 74 1.).==.0.).......return.decode_t
2df20 72 65 65 28 20 6c 6d 2e 62 6d 5f 6c 6f 77 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 6c 65 6e 5f 6c ree(.lm.bm_low[pos_state],.len_l
2df40 6f 77 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 69 66 28 20 64 65 63 6f 64 65 5f 62 69 74 28 20 6c ow_bits.);.....if(.decode_bit(.l
2df60 6d 2e 63 68 6f 69 63 65 32 20 29 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 m.choice2.).==.0.).......return.
2df80 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 20 20 20 20 20 64 len_low_symbols.+..............d
2dfa0 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 73 74 61 74 65 5d ecode_tree(.lm.bm_mid[pos_state]
2dfc0 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 72 6e 20 6c 65 6e ,.len_mid_bits.);.....return.len
2dfe0 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 20 2b _low_symbols.+.len_mid_symbols.+
2e000 0a 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 5f 68 ............decode_tree(.lm.bm_h
2e020 69 67 68 2c 20 6c 65 6e 5f 68 69 67 68 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 3b igh,.len_high_bits.);.....}...};
2e040 0a 0a 0a 63 6c 61 73 73 20 4c 5a 5f 64 65 63 6f 64 65 72 0a 20 20 7b 0a 20 20 75 6e 73 69 67 6e ...class.LZ_decoder...{...unsign
2e060 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 3b 0a 20 ed.long.long.partial_data_pos;..
2e080 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 72 64 65 63 3b 0a 20 20 63 6f 6e 73 74 20 75 6e 73 .Range_decoder.rdec;...const.uns
2e0a0 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 3b 0a 20 20 75 69 6e 74 38 5f 74 igned.dictionary_size;...uint8_t
2e0c0 20 2a 20 63 6f 6e 73 74 20 62 75 66 66 65 72 3b 09 2f 2f 20 6f 75 74 70 75 74 20 62 75 66 66 65 .*.const.buffer;.//.output.buffe
2e0e0 72 0a 20 20 75 6e 73 69 67 6e 65 64 20 70 6f 73 3b 09 09 09 2f 2f 20 63 75 72 72 65 6e 74 20 70 r...unsigned.pos;...//.current.p
2e100 6f 73 20 69 6e 20 62 75 66 66 65 72 0a 20 20 75 6e 73 69 67 6e 65 64 20 73 74 72 65 61 6d 5f 70 os.in.buffer...unsigned.stream_p
2e120 6f 73 3b 09 09 2f 2f 20 66 69 72 73 74 20 62 79 74 65 20 6e 6f 74 20 79 65 74 20 77 72 69 74 74 os;..//.first.byte.not.yet.writt
2e140 65 6e 20 74 6f 20 73 74 64 6f 75 74 0a 20 20 75 69 6e 74 33 32 5f 74 20 63 72 63 5f 3b 0a 20 20 en.to.stdout...uint32_t.crc_;...
2e160 62 6f 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 bool.pos_wrapped;....void.flush_
2e180 64 61 74 61 28 29 3b 0a 0a 20 20 75 69 6e 74 38 5f 74 20 70 65 65 6b 28 20 63 6f 6e 73 74 20 75 data();....uint8_t.peek(.const.u
2e1a0 6e 73 69 67 6e 65 64 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 nsigned.distance.).const.....{..
2e1c0 20 20 20 69 66 28 20 70 6f 73 20 3e 20 64 69 73 74 61 6e 63 65 20 29 20 72 65 74 75 72 6e 20 62 ...if(.pos.>.distance.).return.b
2e1e0 75 66 66 65 72 5b 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 69 uffer[pos.-.distance.-.1];.....i
2e200 66 28 20 70 6f 73 5f 77 72 61 70 70 65 64 20 29 20 72 65 74 75 72 6e 20 62 75 66 66 65 72 5b 64 f(.pos_wrapped.).return.buffer[d
2e220 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 2b 20 70 6f 73 20 2d 20 64 69 73 74 61 6e 63 65 20 ictionary_size.+.pos.-.distance.
2e240 2d 20 31 5d 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 30 3b 09 09 09 2f 2f 20 70 72 65 76 5f 62 79 -.1];.....return.0;...//.prev_by
2e260 74 65 20 6f 66 20 66 69 72 73 74 20 62 79 74 65 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 70 te.of.first.byte.....}....void.p
2e280 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 20 20 20 20 7b ut_byte(.const.uint8_t.b.).....{
2e2a0 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 66 28 20 2b 2b .....buffer[pos].=.b;.....if(.++
2e2c0 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 75 73 68 5f 64 pos.>=.dictionary_size.).flush_d
2e2e0 61 74 61 28 29 3b 0a 20 20 20 20 7d 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 65 78 70 6c 69 63 69 74 ata();.....}..public:...explicit
2e300 20 4c 5a 5f 64 65 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 .LZ_decoder(.const.unsigned.dict
2e320 5f 73 69 7a 65 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 _size.).....:.....partial_data_p
2e340 6f 73 28 20 30 20 29 2c 0a 20 20 20 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 20 64 69 os(.0.),.....dictionary_size(.di
2e360 63 74 5f 73 69 7a 65 20 29 2c 0a 20 20 20 20 62 75 66 66 65 72 28 20 6e 65 77 20 75 69 6e 74 38 ct_size.),.....buffer(.new.uint8
2e380 5f 74 5b 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 5d 20 29 2c 0a 20 20 20 20 70 6f 73 28 20 _t[dictionary_size].),.....pos(.
2e3a0 30 20 29 2c 0a 20 20 20 20 73 74 72 65 61 6d 5f 70 6f 73 28 20 30 20 29 2c 0a 20 20 20 20 63 72 0.),.....stream_pos(.0.),.....cr
2e3c0 63 5f 28 20 30 78 46 46 46 46 46 46 46 46 55 20 29 2c 0a 20 20 20 20 70 6f 73 5f 77 72 61 70 70 c_(.0xFFFFFFFFU.),.....pos_wrapp
2e3e0 65 64 28 20 66 61 6c 73 65 20 29 0a 20 20 20 20 7b 7d 0a 0a 20 20 7e 4c 5a 5f 64 65 63 6f 64 65 ed(.false.).....{}....~LZ_decode
2e400 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 75 6e 73 69 r().{.delete[].buffer;.}....unsi
2e420 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 63 72 63 5f 20 5e gned.crc().const.{.return.crc_.^
2e440 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 20 6c 6f 6e 67 20 .0xFFFFFFFFU;.}...unsigned.long.
2e460 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 0a 20 20 20 20 7b long.data_position().const.....{
2e480 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 3b 20 .return.partial_data_pos.+.pos;.
2e4a0 7d 0a 20 20 75 69 6e 74 38 5f 74 20 67 65 74 5f 62 79 74 65 28 29 20 7b 20 72 65 74 75 72 6e 20 }...uint8_t.get_byte().{.return.
2e4c0 72 64 65 63 2e 67 65 74 5f 62 79 74 65 28 29 3b 20 7d 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f rdec.get_byte();.}...unsigned.lo
2e4e0 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.
2e500 20 20 20 20 7b 20 72 65 74 75 72 6e 20 72 64 65 63 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f ....{.return.rdec.member_positio
2e520 6e 28 29 3b 20 7d 0a 0a 20 20 62 6f 6f 6c 20 64 65 63 6f 64 65 5f 6d 65 6d 62 65 72 28 29 3b 0a n();.}....bool.decode_member();.
2e540 20 20 7d 3b 0a 0a 0a 76 6f 69 64 20 4c 5a 5f 64 65 63 6f 64 65 72 3a 3a 66 6c 75 73 68 5f 64 61 ..};...void.LZ_decoder::flush_da
2e560 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 5f 70 6f 73 20 ta()...{...if(.pos.>.stream_pos.
2e580 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 73 69 7a 65 20 ).....{.....const.unsigned.size.
2e5a0 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
2e5c0 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_
2e5e0 70 6f 73 2c 20 73 69 7a 65 20 29 3b 0a 20 20 20 20 69 66 28 20 73 74 64 3a 3a 66 77 72 69 74 65 pos,.size.);.....if(.std::fwrite
2e600 28 20 62 75 66 66 65 72 20 2b 20 73 74 72 65 61 6d 5f 70 6f 73 2c 20 31 2c 20 73 69 7a 65 2c 20 (.buffer.+.stream_pos,.1,.size,.
2e620 73 74 64 6f 75 74 20 29 20 21 3d 20 73 69 7a 65 20 29 0a 20 20 20 20 20 20 7b 20 73 74 64 3a 3a stdout.).!=.size.).......{.std::
2e640 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 57 72 69 74 65 20 65 72 72 6f 72 3a 20 25 fprintf(.stderr,."Write.error:.%
2e660 73 5c 6e 22 2c 20 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 0a s\n",.std::strerror(.errno.).);.
2e680 20 20 20 20 20 20 20 20 73 74 64 3a 3a 65 78 69 74 28 20 31 20 29 3b 20 7d 0a 20 20 20 20 69 66 ........std::exit(.1.);.}.....if
2e6a0 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 20 20 20 (.pos.>=.dictionary_size.)......
2e6c0 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 6f 73 20 .{.partial_data_pos.+=.pos;.pos.
2e6e0 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 20 20 73 =.0;.pos_wrapped.=.true;.}.....s
2e700 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 62 6f 6f tream_pos.=.pos;.....}...}...boo
2e720 6c 20 4c 5a 5f 64 65 63 6f 64 65 72 3a 3a 64 65 63 6f 64 65 5f 6d 65 6d 62 65 72 28 29 09 2f 2f l.LZ_decoder::decode_member().//
2e740 20 52 65 74 75 72 6e 73 20 66 61 6c 73 65 20 69 66 20 65 72 72 6f 72 0a 20 20 7b 0a 20 20 42 69 .Returns.false.if.error...{...Bi
2e760 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 31 3c 3c 6c 69 74 65 72 61 6c 5f 63 6f t_model.bm_literal[1<<literal_co
2e780 6e 74 65 78 74 5f 62 69 74 73 5d 5b 30 78 33 30 30 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 ntext_bits][0x300];...Bit_model.
2e7a0 62 6d 5f 6d 61 74 63 68 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 5b 70 6f 73 5f 73 74 61 74 bm_match[State::states][pos_stat
2e7c0 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 5b 53 74 61 74 65 3a 3a 73 es];...Bit_model.bm_rep[State::s
2e7e0 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 30 5b 53 74 61 74 tates];...Bit_model.bm_rep0[Stat
2e800 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 65 70 31 5b e::states];...Bit_model.bm_rep1[
2e820 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
2e840 65 70 32 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 ep2[State::states];...Bit_model.
2e860 62 6d 5f 6c 65 6e 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 bm_len[State::states][pos_states
2e880 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 64 69 73 5f 73 6c 6f 74 5b 6c 65 6e 5f 73 ];...Bit_model.bm_dis_slot[len_s
2e8a0 74 61 74 65 73 5d 5b 31 3c 3c 64 69 73 5f 73 6c 6f 74 5f 62 69 74 73 5d 3b 0a 20 20 42 69 74 5f tates][1<<dis_slot_bits];...Bit_
2e8c0 6d 6f 64 65 6c 20 62 6d 5f 64 69 73 5b 6d 6f 64 65 6c 65 64 5f 64 69 73 74 61 6e 63 65 73 2d 65 model.bm_dis[modeled_distances-e
2e8e0 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 2b 31 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f nd_dis_model+1];...Bit_model.bm_
2e900 61 6c 69 67 6e 5b 64 69 73 5f 61 6c 69 67 6e 5f 73 69 7a 65 5d 3b 0a 20 20 4c 65 6e 5f 6d 6f 64 align[dis_align_size];...Len_mod
2e920 65 6c 20 6d 61 74 63 68 5f 6c 65 6e 5f 6d 6f 64 65 6c 3b 0a 20 20 4c 65 6e 5f 6d 6f 64 65 6c 20 el.match_len_model;...Len_model.
2e940 72 65 70 5f 6c 65 6e 5f 6d 6f 64 65 6c 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 30 20 3d rep_len_model;...unsigned.rep0.=
2e960 20 30 3b 09 09 2f 2f 20 72 65 70 5b 30 2d 33 5d 20 6c 61 74 65 73 74 20 66 6f 75 72 20 64 69 73 .0;..//.rep[0-3].latest.four.dis
2e980 74 61 6e 63 65 73 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 31 20 3d 20 30 3b 09 09 2f 2f 20 tances...unsigned.rep1.=.0;..//.
2e9a0 75 73 65 64 20 66 6f 72 20 65 66 66 69 63 69 65 6e 74 20 63 6f 64 69 6e 67 20 6f 66 0a 20 20 75 used.for.efficient.coding.of...u
2e9c0 6e 73 69 67 6e 65 64 20 72 65 70 32 20 3d 20 30 3b 09 09 2f 2f 20 72 65 70 65 61 74 65 64 20 64 nsigned.rep2.=.0;..//.repeated.d
2e9e0 69 73 74 61 6e 63 65 73 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 33 20 3d 20 30 3b 0a 20 20 istances...unsigned.rep3.=.0;...
2ea00 53 74 61 74 65 20 73 74 61 74 65 3b 0a 0a 20 20 77 68 69 6c 65 28 20 21 73 74 64 3a 3a 66 65 6f State.state;....while(.!std::feo
2ea20 66 28 20 73 74 64 69 6e 20 29 20 26 26 20 21 73 74 64 3a 3a 66 65 72 72 6f 72 28 20 73 74 64 69 f(.stdin.).&&.!std::ferror(.stdi
2ea40 6e 20 29 20 29 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 n.).).....{.....const.int.pos_st
2ea60 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
2ea80 65 5f 6d 61 73 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 e_mask;.....if(.rdec.decode_bit(
2eaa0 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 5d 20 29 20 .bm_match[state()][pos_state].).
2eac0 3d 3d 20 30 20 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 ==.0.).//.1st.bit.......{.......
2eae0 2f 2f 20 6c 69 74 65 72 61 6c 20 62 79 74 65 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 //.literal.byte.......const.uint
2eb00 38 5f 74 20 70 72 65 76 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 30 20 29 3b 0a 20 20 20 20 20 8_t.prev_byte.=.peek(.0.);......
2eb20 20 63 6f 6e 73 74 20 69 6e 74 20 6c 69 74 65 72 61 6c 5f 73 74 61 74 65 20 3d 20 70 72 65 76 5f .const.int.literal_state.=.prev_
2eb40 62 79 74 65 20 3e 3e 20 28 20 38 20 2d 20 6c 69 74 65 72 61 6c 5f 63 6f 6e 74 65 78 74 5f 62 69 byte.>>.(.8.-.literal_context_bi
2eb60 74 73 20 29 3b 0a 20 20 20 20 20 20 42 69 74 5f 6d 6f 64 65 6c 20 2a 20 63 6f 6e 73 74 20 62 6d ts.);.......Bit_model.*.const.bm
2eb80 20 3d 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 6c 69 74 65 72 61 6c 5f 73 74 61 74 65 5d 3b 0a 20 20 .=.bm_literal[literal_state];...
2eba0 20 20 20 20 69 66 28 20 73 74 61 74 65 2e 69 73 5f 63 68 61 72 28 29 20 29 0a 20 20 20 20 20 20 ....if(.state.is_char().).......
2ebc0 20 20 70 75 74 5f 62 79 74 65 28 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 74 72 65 65 28 20 62 6d ..put_byte(.rdec.decode_tree(.bm
2ebe0 2c 20 38 20 29 20 29 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 ,.8.).);.......else.........put_
2ec00 62 79 74 65 28 20 72 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 byte(.rdec.decode_matched(.bm,.p
2ec20 65 65 6b 28 20 72 65 70 30 20 29 20 29 20 29 3b 0a 20 20 20 20 20 20 73 74 61 74 65 2e 73 65 74 eek(.rep0.).).);.......state.set
2ec40 5f 63 68 61 72 28 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 7d _char();.......continue;.......}
2ec60 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 0a .....//.match.or.repeated.match.
2ec80 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 65 ....int.len;.....if(.rdec.decode
2eca0 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 09 _bit(.bm_rep[state()].).!=.0.)..
2ecc0 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 65 //.2nd.bit.......{.......if(.rde
2ece0 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 29 c.decode_bit(.bm_rep0[state()].)
2ed00 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 20 .==.0.)..//.3rd.bit.........{...
2ed20 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 65 ......if(.rdec.decode_bit(.bm_le
2ed40 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 2f n[state()][pos_state].).==.0.)./
2ed60 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 5f /.4th.bit...........{.state.set_
2ed80 73 68 6f 72 74 5f 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 short_rep();.put_byte(.peek(.rep
2eda0 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;.}.........}....
2edc0 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
2ede0 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
2ee00 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()].).==.
2ee20 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
2ee40 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.........
2ee60 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
2ee80 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.).//.
2eea0 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
2eec0 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.............
2eee0 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;.
2ef00 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;........
2ef20 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;.......
2ef40 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;.........}....
2ef60 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.=.
2ef80 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 2b 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 6c 65 6e 28 min_match_len.+.rdec.decode_len(
2efa0 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 0a 20 20 20 .rep_len_model,.pos_state.);....
2efc0 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 20 20 20 20 ...}.....else.....//.match......
2efe0 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 20 72 65 70 .{.......rep3.=.rep2;.rep2.=.rep
2f000 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 6d 69 6e 5f 1;.rep1.=.rep0;.......len.=.min_
2f020 6d 61 74 63 68 5f 6c 65 6e 20 2b 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 6c 65 6e 28 20 6d 61 74 match_len.+.rdec.decode_len(.mat
2f040 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.);......
2f060 20 63 6f 6e 73 74 20 69 6e 74 20 6c 65 6e 5f 73 74 61 74 65 20 3d 20 73 74 64 3a 3a 6d 69 6e 28 .const.int.len_state.=.std::min(
2f080 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 65 73 .len.-.min_match_len,.len_states
2f0a0 20 2d 20 31 20 29 3b 0a 20 20 20 20 20 20 72 65 70 30 20 3d 20 72 64 65 63 2e 64 65 63 6f 64 65 .-.1.);.......rep0.=.rdec.decode
2f0c0 5f 74 72 65 65 28 20 62 6d 5f 64 69 73 5f 73 6c 6f 74 5b 6c 65 6e 5f 73 74 61 74 65 5d 2c 20 64 _tree(.bm_dis_slot[len_state],.d
2f0e0 69 73 5f 73 6c 6f 74 5f 62 69 74 73 20 29 3b 0a 20 20 20 20 20 20 69 66 28 20 72 65 70 30 20 3e is_slot_bits.);.......if(.rep0.>
2f100 3d 20 73 74 61 72 74 5f 64 69 73 5f 6d 6f 64 65 6c 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 =.start_dis_model.).........{...
2f120 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 73 5f 73 6c 6f 74 20 3d 20 ......const.unsigned.dis_slot.=.
2f140 72 65 70 30 3b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 72 65 63 74 5f 62 rep0;.........const.int.direct_b
2f160 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 0a 20 20 20 its.=.(.dis_slot.>>.1.).-.1;....
2f180 20 20 20 20 20 72 65 70 30 20 3d 20 28 20 32 20 7c 20 28 20 64 69 73 5f 73 6c 6f 74 20 26 20 31 .....rep0.=.(.2.|.(.dis_slot.&.1
2f1a0 20 29 20 29 20 3c 3c 20 64 69 72 65 63 74 5f 62 69 74 73 3b 0a 20 20 20 20 20 20 20 20 69 66 28 .).).<<.direct_bits;.........if(
2f1c0 20 64 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 .dis_slot.<.end_dis_model.).....
2f1e0 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 65 5f 72 ......rep0.+=.rdec.decode_tree_r
2f200 65 76 65 72 73 65 64 28 20 62 6d 5f 64 69 73 20 2b 20 28 20 72 65 70 30 20 2d 20 64 69 73 5f 73 eversed(.bm_dis.+.(.rep0.-.dis_s
2f220 6c 6f 74 20 29 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 lot.),..........................
2f240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 72 65 63 74 5f 62 69 74 73 20 ....................direct_bits.
2f260 29 3b 0a 20 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 );.........else...........{.....
2f280 20 20 20 20 20 20 72 65 70 30 20 2b 3d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 64 65 63 2e 64 ......rep0.+=.............rdec.d
2f2a0 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 5f 62 ecode(.direct_bits.-.dis_align_b
2f2c0 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 20 20 its.).<<.dis_align_bits;........
2f2e0 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 76 65 ...rep0.+=.rdec.decode_tree_reve
2f300 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 62 69 74 73 20 29 rsed(.bm_align,.dis_align_bits.)
2f320 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 46 46 46 46 46 46 ;...........if(.rep0.==.0xFFFFFF
2f340 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 20 20 20 20 20 20 FFU.)..//.marker.found..........
2f360 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 61 28 29 3b 0a 20 ...{.............flush_data();..
2f380 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 28 20 6c 65 6e 20 3d 3d 20 6d 69 6e 5f 6d ...........return.(.len.==.min_m
2f3a0 61 74 63 68 5f 6c 65 6e 20 29 3b 09 2f 2f 20 45 6e 64 20 4f 66 20 53 74 72 65 61 6d 20 6d 61 72 atch_len.);.//.End.Of.Stream.mar
2f3c0 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 20 20 ker.............}...........}...
2f3e0 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 29 3b ......}.......state.set_match();
2f400 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 73 69 .......if(.rep0.>=.dictionary_si
2f420 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 61 70 ze.||.(.rep0.>=.pos.&&.!pos_wrap
2f440 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 3b 20 ped.).).........{.flush_data();.
2f460 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 72 28 return.false;.}.......}.....for(
2f480 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 5f 62 .int.i.=.0;.i.<.len;.++i.).put_b
2f4a0 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 6c 75 yte(.peek(.rep0.).);.....}...flu
2f4c0 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 0a 0a sh_data();...return.false;...}..
2f4e0 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 73 74 .int.main(.const.int.argc,.const
2f500 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 66 28 .char.*.const.argv[].)...{...if(
2f520 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 64 3a .argc.>.2.||.(.argc.==.2.&&.std:
2f540 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 29 20 :strcmp(.argv[1],."-d".).!=.0.).
2f560 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 20 22 ).....{.....std::printf(......."
2f580 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 73 6f Lzd.%s.-.Educational.decompresso
2f5a0 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 20 20 r.for.the.lzip.format.\n".......
2f5c0 22 53 74 75 64 79 20 74 68 65 20 73 6f 75 72 63 65 20 74 6f 20 6c 65 61 72 6e 20 68 6f 77 20 61 "Study.the.source.to.learn.how.a
2f5e0 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 5c 6e 22 0a 20 20 20 .lzip.decompressor.works.\n"....
2f600 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 6f 72 20 61 6e 20 65 ..."See.the.lzip.manual.for.an.e
2f620 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 22 0a 20 20 20 20 20 xplanation.of.the.code.\n"......
2f640 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 2e 6c 7a 20 3e 20 66 ."\nUsage:.%s.[-d].<.file.lz.>.f
2f660 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 65 73 73 65 73 20 66 ile\n"......."Lzd.decompresses.f
2f680 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 6e 64 61 72 64 20 6f rom.standard.input.to.standard.o
2f6a0 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 67 68 74 20 28 43 29 utput.\n"......."\nCopyright.(C)
2f6c0 20 32 30 32 30 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 .2020.Antonio.Diaz.Diaz.\n".....
2f6e0 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 6e 22 0a 20 20 20 20 .."License.2-clause.BSD.\n".....
2f700 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 72 .."This.is.free.software:.you.ar
2f720 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 74 e.free.to.change.and.redistribut
2f740 65 20 69 74 2e 5c 6e 22 0a 20 20 20 20 20 20 22 54 68 65 72 65 20 69 73 20 4e 4f 20 57 41 52 52 e.it.\n"......."There.is.NO.WARR
2f760 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
2f780 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 67 73 20 74 6f 20 6c .law.\n"......."Report.bugs.to.l
2f7a0 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 20 20 20 22 4c 7a 64 zip-bug@nongnu.org\n"......."Lzd
2f7c0 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 6e 67 6e 75 2e 6f 72 .home.page:.http://www.nongnu.or
2f7e0 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 20 50 52 4f 47 56 45 g/lzip/lzd.html\n",.......PROGVE
2f800 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 75 72 6e 20 30 3b 0a RSION,.argv[0].);.....return.0;.
2f820 20 20 20 20 7d 0a 0a 23 69 66 20 64 65 66 69 6e 65 64 28 5f 5f 4d 53 56 43 52 54 5f 5f 29 20 7c ....}..#if.defined(__MSVCRT__).|
2f840 7c 20 64 65 66 69 6e 65 64 28 5f 5f 4f 53 32 5f 5f 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 5f |.defined(__OS2__).||.defined(__
2f860 44 4a 47 50 50 5f 5f 29 0a 20 20 73 65 74 6d 6f 64 65 28 20 53 54 44 49 4e 5f 46 49 4c 45 4e 4f DJGPP__)...setmode(.STDIN_FILENO
2f880 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 4f 55 54 5f ,.O_BINARY.);...setmode(.STDOUT_
2f8a0 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 20 20 66 6f FILENO,.O_BINARY.);.#endif....fo
2f8c0 72 28 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 r(.bool.first_member.=.true;.;.f
2f8e0 69 72 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 irst_member.=.false.).....{.....
2f900 4c 7a 69 70 5f 68 65 61 64 65 72 20 68 65 61 64 65 72 3b 09 09 09 09 2f 2f 20 76 65 72 69 66 79 Lzip_header.header;....//.verify
2f920 20 68 65 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 .header.....for(.int.i.=.0;.i.<.
2f940 36 3b 20 2b 2b 69 20 29 20 68 65 61 64 65 72 5b 69 5d 20 3d 20 73 74 64 3a 3a 67 65 74 63 28 20 6;.++i.).header[i].=.std::getc(.
2f960 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 66 28 20 73 74 64 69 stdin.);.....if(.std::feof(.stdi
2f980 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 72 2c 20 22 4c 5a 49 n.).||.std::memcmp(.header,."LZI
2f9a0 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 7b 0a 20 20 20 20 20 P\x01",.5.).!=.0.).......{......
2f9c0 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 20 20 7b 20 73 74 .if(.first_member.).........{.st
2f9e0 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 65 72 20 28 66 69 6c d::fputs(."Bad.magic.number.(fil
2fa00 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 2c 0a 20 20 20 20 20 e.not.in.lzip.format).\n",......
2fa20 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 3b 20 72 65 74 75 72 .................stderr.);.retur
2fa40 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 2f 20 69 67 6e 6f 72 n.2;.}.......break;.....//.ignor
2fa60 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 20 20 20 75 6e 73 69 e.trailing.data.......}.....unsi
2fa80 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 65 61 64 65 72 5b 35 gned.dict_size.=.1.<<.(.header[5
2faa0 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 20 2d 3d 20 28 20 64 ].&.0x1F.);.....dict_size.-=.(.d
2fac0 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 64 65 72 5b 35 5d 20 ict_size./.16.).*.(.(.header[5].
2fae0 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 74 5f 73 69 7a 65 20 >>.5.).&.7.);.....if(.dict_size.
2fb00 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 64 69 63 74 5f 73 69 <.min_dictionary_size.||.dict_si
2fb20 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 29 0a 20 20 20 20 20 ze.>.max_dictionary_size.)......
2fb40 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 69 63 74 69 6f 6e 61 .{.std::fputs(."Invalid.dictiona
2fb60 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 5c 6e 22 2c 20 73 74 ry.size.in.member.header.\n",.st
2fb80 64 65 72 72 20 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 32 3b 20 7d 0a 0a 20 20 20 derr.);.........return.2;.}.....
2fba0 20 4c 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 .LZ_decoder.decoder(.dict_size.)
2fbc0 3b 09 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 ;..//.decode.LZMA.stream.....if(
2fbe0 20 21 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 .!decoder.decode_member().).....
2fc00 20 20 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 5c 6e 22 2c 20 ..{.std::fputs(."Data.error\n",.
2fc20 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 7a 69 70 5f stderr.);.return.2;.}......Lzip_
2fc40 74 72 61 69 6c 65 72 20 74 72 61 69 6c 65 72 3b 09 09 09 2f 2f 20 76 65 72 69 66 79 20 74 72 61 trailer.trailer;...//.verify.tra
2fc60 69 6c 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 32 30 3b iler.....for(.int.i.=.0;.i.<.20;
2fc80 20 2b 2b 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 .++i.).trailer[i].=.decoder.get_
2fca0 62 79 74 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 byte();.....int.retval.=.0;.....
2fcc0 75 6e 73 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 unsigned.crc.=.0;.....for(.int.i
2fce0 20 3d 20 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 .=.3;.i.>=.0;.--i.).crc.=.(.crc.
2fd00 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 63 72 63 <<.8.).+.trailer[i];.....if(.crc
2fd20 20 21 3d 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 .!=.decoder.crc().).......{.std:
2fd40 3a 66 70 75 74 73 28 20 22 43 52 43 20 6d 69 73 6d 61 74 63 68 5c 6e 22 2c 20 73 74 64 65 72 72 :fputs(."CRC.mismatch\n",.stderr
2fd60 20 29 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 .);.retval.=.2;.}......unsigned.
2fd80 6c 6f 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 long.long.data_size.=.0;.....for
2fda0 28 20 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 (.int.i.=.11;.i.>=.4;.--i.).....
2fdc0 20 20 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 ..data_size.=.(.data_size.<<.8.)
2fde0 20 2b 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 .+.trailer[i];.....if(.data_size
2fe00 20 21 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 .!=.decoder.data_position().)...
2fe20 20 20 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 ....{.std::fputs(."Data.size.mis
2fe40 6d 61 74 63 68 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 match\n",.stderr.);.retval.=.2;.
2fe60 7d 0a 0a 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 }......unsigned.long.long.member
2fe80 5f 73 69 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 _size.=.0;.....for(.int.i.=.19;.
2fea0 69 20 3e 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 i.>=.12;.--i.).......member_size
2fec0 20 3d 20 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 .=.(.member_size.<<.8.).+.traile
2fee0 72 5b 69 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 r[i];.....if(.member_size.!=.dec
2ff00 6f 64 65 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 oder.member_position().).......{
2ff20 20 73 74 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 .std::fputs(."Member.size.mismat
2ff40 63 68 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 ch\n",.stderr.);.retval.=.2;.}..
2ff60 20 20 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 ...if(.retval.).return.retval;..
2ff80 20 20 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 ...}....if(.std::fclose(.stdout.
2ffa0 29 20 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 ).!=.0.).....{.std::fprintf(.std
2ffc0 65 72 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 err,."Error.closing.stdout:.%s\n
2ffe0 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 3a 3a 73 74 72 65 ",.....................std::stre
30000 72 72 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 72 rror(.errno.).);.return.1;.}...r
30020 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 6d 0a 0a 0a 40 6e 6f eturn.0;...}.@end.verbatim...@no
30040 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 72 65 64 20 43 6f 6e de.Concept.index.@unnumbered.Con
30060 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 70 0a 0a 40 62 79 65 cept.index..@printindex.cp..@bye
30080 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 00 ................................
300a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
300c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
300e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
301a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
301c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
301e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30200 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 61 72 67 5f 70 61 72 73 65 72 2e 68 00 00 00 00 00 00 lzip-1.22-rc2/arg_parser.h......
30220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30260 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
30280 30 30 30 36 37 37 34 00 31 33 36 35 32 35 37 33 32 33 35 00 30 30 31 34 31 36 35 00 30 00 00 00 0006774.13652573235.0014165.0...
302a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
302c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
302e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30300 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...................
30320 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...................
30340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
303a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
303c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
303e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
30400 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
30420 64 20 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
30440 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 30 sion)....Copyright.(C).2006-2020
30460 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
30480 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
304a0 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
304c0 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
304e0 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
30500 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
30520 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
30540 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
30560 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
30580 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
305a0 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
305c0 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
305e0 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....
30600 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,
30620 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
30640 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
30660 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
30680 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
306a0 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
306c0 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.
306e0 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
30700 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
30720 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
30740 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
30760 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
30780 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
307a0 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
307c0 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
307e0 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
30800 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
30820 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
30840 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
30860 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
30880 6c 20 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 20 20 6f 70 74 l.name.means.a.short-only....opt
308a0 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 68 65 20 75 6e ion..A.code.value.outside.the.un
308c0 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 0a 20 20 20 6c 6f 6e signed.char.range.means.a....lon
308e0 67 2d 6f 6e 6c 79 20 6f 70 74 69 6f 6e 2e 0a 0a 20 20 20 41 72 67 5f 70 61 72 73 65 72 20 6e 6f g-only.option......Arg_parser.no
30900 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 66 20 61 6c 6c rmally.makes.it.appear.as.if.all
30920 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 72 65 20 73 70 .the.option.arguments....were.sp
30940 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 6f 70 74 69 6f ecified.before.all.the.non-optio
30960 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 73 0a 20 20 20 n.arguments.for.the.purposes....
30980 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 72 20 6f 66 20 of.parsing,.even.if.the.user.of.
309a0 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 69 6f 6e 20 61 your.program.intermixed.option.a
309c0 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 20 49 66 20 79 nd....non-option.arguments..If.y
309e0 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 65 20 65 78 61 ou.want.the.arguments.in.the.exa
30a00 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 74 68 65 6d 2c ct.order....the.user.typed.them,
30a20 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 5f 6f 72 64 65 .call.'Arg_parser'.with.'in_orde
30a40 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 20 27 2d 2d 27 r'.=.true......The.argument.'--'
30a60 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 79 20 66 6f 6c .terminates.all.options;.any.fol
30a80 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 61 74 65 64 20 lowing.arguments.are....treated.
30aa0 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 65 6e 20 69 66 as.non-option.arguments,.even.if
30ac0 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 0a 20 20 20 54 .they.begin.with.a.hyphen......T
30ae0 68 65 20 73 79 6e 74 61 78 20 66 6f 72 20 6f 70 74 69 6f 6e 61 6c 20 6f 70 74 69 6f 6e 20 61 72 he.syntax.for.optional.option.ar
30b00 67 75 6d 65 6e 74 73 20 69 73 20 27 2d 3c 73 68 6f 72 74 5f 6f 70 74 69 6f 6e 3e 3c 61 72 67 75 guments.is.'-<short_option><argu
30b20 6d 65 6e 74 3e 27 0a 20 20 20 28 77 69 74 68 6f 75 74 20 77 68 69 74 65 73 70 61 63 65 29 2c 20 ment>'....(without.whitespace),.
30b40 6f 72 20 27 2d 2d 3c 6c 6f 6e 67 5f 6f 70 74 69 6f 6e 3e 3d 3c 61 72 67 75 6d 65 6e 74 3e 27 2e or.'--<long_option>=<argument>'.
30b60 0a 2a 2f 0a 0a 63 6c 61 73 73 20 41 72 67 5f 70 61 72 73 65 72 0a 20 20 7b 0a 70 75 62 6c 69 63 .*/..class.Arg_parser...{.public
30b80 3a 0a 20 20 65 6e 75 6d 20 48 61 73 5f 61 72 67 20 7b 20 6e 6f 2c 20 79 65 73 2c 20 6d 61 79 62 :...enum.Has_arg.{.no,.yes,.mayb
30ba0 65 20 7d 3b 0a 0a 20 20 73 74 72 75 63 74 20 4f 70 74 69 6f 6e 0a 20 20 20 20 7b 0a 20 20 20 20 e.};....struct.Option.....{.....
30bc0 69 6e 74 20 63 6f 64 65 3b 09 09 09 2f 2f 20 53 68 6f 72 74 20 6f 70 74 69 6f 6e 20 6c 65 74 74 int.code;...//.Short.option.lett
30be0 65 72 20 6f 72 20 63 6f 64 65 20 28 20 63 6f 64 65 20 21 3d 20 30 20 29 0a 20 20 20 20 63 6f 6e er.or.code.(.code.!=.0.).....con
30c00 73 74 20 63 68 61 72 20 2a 20 6e 61 6d 65 3b 09 09 2f 2f 20 4c 6f 6e 67 20 6f 70 74 69 6f 6e 20 st.char.*.name;..//.Long.option.
30c20 6e 61 6d 65 20 28 6d 61 79 62 65 20 6e 75 6c 6c 29 0a 20 20 20 20 48 61 73 5f 61 72 67 20 68 61 name.(maybe.null).....Has_arg.ha
30c40 73 5f 61 72 67 3b 0a 20 20 20 20 7d 3b 0a 0a 70 72 69 76 61 74 65 3a 0a 20 20 73 74 72 75 63 74 s_arg;.....};..private:...struct
30c60 20 52 65 63 6f 72 64 0a 20 20 20 20 7b 0a 20 20 20 20 69 6e 74 20 63 6f 64 65 3b 0a 20 20 20 20 .Record.....{.....int.code;.....
30c80 73 74 64 3a 3a 73 74 72 69 6e 67 20 61 72 67 75 6d 65 6e 74 3b 0a 20 20 20 20 65 78 70 6c 69 63 std::string.argument;.....explic
30ca0 69 74 20 52 65 63 6f 72 64 28 20 63 6f 6e 73 74 20 69 6e 74 20 63 20 29 20 3a 20 63 6f 64 65 28 it.Record(.const.int.c.).:.code(
30cc0 20 63 20 29 20 7b 7d 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 .c.).{}.....explicit.Record(.con
30ce0 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 20 30 20 st.char.*.const.arg.).:.code(.0.
30d00 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 0a 20 20 ),.argument(.arg.).{}.....};....
30d20 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 20 20 73 const.std::string.empty_arg;...s
30d40 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 74 6f 72 td::string.error_;...std::vector
30d60 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 65 5f 6c <.Record.>.data;....bool.parse_l
30d80 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 74 20 6f ong_option(.const.char.*.const.o
30da0 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 20 20 20 pt,.const.char.*.const.arg,.....
30dc0 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 70 74 69 ......................const.Opti
30de0 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 0a 20 20 on.options[],.int.&.argind.);...
30e00 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 74 20 63 bool.parse_short_option(.const.c
30e20 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 20 63 6f har.*.const.opt,.const.char.*.co
30e40 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 20 20 20 nst.arg,........................
30e60 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.
30e80 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 72 73 65 &.argind.);..public:...Arg_parse
30ea0 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 20 2a 20 r(.const.int.argc,.const.char.*.
30ec0 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 6f 6e 73 const.argv[],...............cons
30ee0 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 6c 20 69 t.Option.options[],.const.bool.i
30f00 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 72 69 63 n_order.=.false.);....//.Restric
30f20 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 67 6c 65 ted.constructor..Parses.a.single
30f40 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 0a 20 20 .token.and.argument.(if.any)....
30f60 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 74 20 6f Arg_parser(.const.char.*.const.o
30f80 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 20 20 20 pt,.const.char.*.const.arg,.....
30fa0 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 5d ..........const.Option.options[]
30fc0 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 72 6f 72 .);....const.std::string.&.error
30fe0 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 20 20 2f ().const.{.return.error_;.}..../
31000 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 73 65 64 /.The.number.of.arguments.parsed
31020 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 0a 20 20 ..May.be.different.from.argc....
31040 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 6e 20 64 int.arguments().const.{.return.d
31060 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 69 20 29 ata.size();.}..../*.If.code(.i.)
31080 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 2d 6f 70 .is.0,.argument(.i.).is.a.non-op
310a0 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 20 69 73 tion.......Else.argument(.i.).is
310c0 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 70 74 79 .the.option's.argument.(or.empty
310e0 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 20 29 20 )..*/...int.code(.const.int.i.).
31100 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 20 69 20 const.....{.....if(.i.>=.0.&&.i.
31120 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 5d 2e 63 <.arguments().).return.data[i].c
31140 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 0a 0a 20 ode;.....else.return.0;.....}...
31160 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 26 20 61 72 67 75 6d 65 6e 74 28 20 63 .const.std::string.&.argument(.c
31180 6f 6e 73 74 20 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 onst.int.i.).const.....{.....if(
311a0 20 69 20 3e 3d 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 .i.>=.0.&&.i.<.arguments().).ret
311c0 75 72 6e 20 64 61 74 61 5b 69 5d 2e 61 72 67 75 6d 65 6e 74 3b 0a 20 20 20 20 65 6c 73 65 20 72 urn.data[i].argument;.....else.r
311e0 65 74 75 72 6e 20 65 6d 70 74 79 5f 61 72 67 3b 0a 20 20 20 20 7d 0a 20 20 7d 3b 0a 00 00 00 00 eturn.empty_arg;.....}...};.....
31200 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 64 65 63 6f 64 65 72 2e 68 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/decoder.h.........
31220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31260 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
31280 30 30 31 37 37 37 30 00 31 33 36 35 32 36 31 31 33 30 30 00 30 30 31 33 34 32 35 00 30 00 00 00 0017770.13652611300.0013425.0...
312a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
312c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
312e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31300 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...................
31320 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...................
31340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
313a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
313c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
313e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
31400 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
31420 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
31440 32 30 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 20.Antonio.Diaz.Diaz......This.p
31460 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
31480 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..
314a0 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.
314c0 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
314e0 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
31500 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.
31520 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).
31540 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
31560 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
31580 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
315a0 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
315c0 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
315e0 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
31600 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
31620 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
31640 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
31660 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
31680 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
316a0 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:/
316c0 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
316e0 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
31700 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.
31720 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;...
31740 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
31760 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.
31780 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;.
317a0 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
317c0 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
317e0 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;.
31800 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
31820 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
31840 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
31860 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.
31880 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.
318a0 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
318c0 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
318e0 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.)....
31900 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.),.
31920 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
31940 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
31960 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
31980 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
319a0 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.).
319c0 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
319e0 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
31a00 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.&&
31a20 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
31a40 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.
31a60 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.
31a80 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
31aa0 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
31ac0 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
31ae0 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().....{.
31b00 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
31b20 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
31b40 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
31b60 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++]
31b80 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_
31ba0 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
31bc0 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
31be0 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().)..
31c00 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:
31c20 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
31c40 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.+
31c60 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
31c80 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;.......
31ca0 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 76 6f 69 64 20 6c }.....return.sz;.....}....void.l
31cc0 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 66 6f oad().....{.....code.=.0;.....fo
31ce0 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 35 3b 20 2b 2b 69 20 29 20 63 6f 64 65 20 r(.int.i.=.0;.i.<.5;.++i.).code.
31d00 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();...
31d20 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 63 6f 64 65 20 ..range.=.0xFFFFFFFFU;.....code.
31d40 26 3d 20 72 61 6e 67 65 3b 09 09 2f 2f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 66 69 72 &=.range;..//.make.sure.that.fir
31d60 73 74 20 62 79 74 65 20 69 73 20 64 69 73 63 61 72 64 65 64 0a 20 20 20 20 7d 0a 0a 20 20 76 6f st.byte.is.discarded.....}....vo
31d80 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 66 28 20 72 61 6e id.normalize().....{.....if(.ran
31da0 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 7b 20 72 61 6e 67 ge.<=.0x00FFFFFFU.).......{.rang
31dc0 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 7c 20 e.<<=.8;.code.=.(.code.<<.8.).|.
31de0 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 69 67 6e 65 64 20 get_byte();.}.....}....unsigned.
31e00 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 20 29 0a 20 20 20 decode(.const.int.num_bits.)....
31e20 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 3b 0a 20 20 20 20 .{.....unsigned.symbol.=.0;.....
31e40 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 2d 2d for(.int.i.=.num_bits;.i.>.0;.--
31e60 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 65 28 29 3b 0a 20 i.).......{.......normalize();..
31e80 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 73 79 6d 62 6f 6c .....range.>>=.1;.//......symbol
31ea0 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 3d 20 72 61 6e 67 .<<=.1;.//......if(.code.>=.rang
31ec0 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
31ee0 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 20 28 20 63 6f 64 ;.}.......const.bool.bit.=.(.cod
31f00 65 20 3e 3d 20 72 61 6e 67 65 20 29 3b 0a 20 20 20 20 20 20 73 79 6d 62 6f 6c 20 3c 3c 3d 20 31 e.>=.range.);.......symbol.<<=.1
31f20 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 20 72 ;.symbol.+=.bit;.......code.-=.r
31f40 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 20 20 ange.&.(.0U.-.bit.);.......}....
31f60 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 75 6e 73 69 67 6e 65 .return.symbol;.....}....unsigne
31f80 64 20 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 d.decode_bit(.Bit_model.&.bm.)..
31fa0 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 63 6f 6e 73 74 20 ...{.....normalize();.....const.
31fc0 75 69 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 uint32_t.bound.=.(.range.>>.bit_
31fe0 6d 6f 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 model_total_bits.).*.bm.probabil
32000 69 74 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 ity;.....if(.code.<.bound.).....
32020 20 20 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 ..{.......range.=.bound;.......b
32040 6d 2e 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 m.probability.+=.........(.bit_m
32060 6f 64 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 odel_total.-.bm.probability.).>>
32080 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 72 65 74 75 .bit_model_move_bits;.......retu
320a0 72 6e 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 rn.0;.......}.....else.......{..
320c0 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 63 6f 64 65 20 .....range.-=.bound;.......code.
320e0 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 74 79 20 2d -=.bound;.......bm.probability.-
32100 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 6c 5f 6d 6f =.bm.probability.>>.bit_model_mo
32120 76 65 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 ve_bits;.......return.1;.......}
32140 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 33 28 .....}....unsigned.decode_tree3(
32160 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5b 5d 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 .Bit_model.bm[].).....{.....unsi
32180 67 6e 65 64 20 73 79 6d 62 6f 6c 20 3d 20 32 20 7c 20 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d gned.symbol.=.2.|.decode_bit(.bm
321a0 5b 31 5d 20 29 3b 0a 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 [1].);.....symbol.=.(.symbol.<<.
321c0 31 20 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 1.).|.decode_bit(.bm[symbol].);.
321e0 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 20 64 ....symbol.=.(.symbol.<<.1.).|.d
32200 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 20 20 72 65 74 ecode_bit(.bm[symbol].);.....ret
32220 75 72 6e 20 73 79 6d 62 6f 6c 20 26 20 37 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 urn.symbol.&.7;.....}....unsigne
32240 64 20 64 65 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 5d 20 29 d.decode_tree6(.Bit_model.bm[].)
32260 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 32 20 7c .....{.....unsigned.symbol.=.2.|
32280 20 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 31 5d 20 29 3b 0a 20 20 20 20 73 79 6d 62 6f 6c .decode_bit(.bm[1].);.....symbol
322a0 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 62 69 74 28 .=.(.symbol.<<.1.).|.decode_bit(
322c0 20 62 6d 5b 73 79 6d 62 6f 6c 5d 20 29 3b 0a 20 20 20 20 73 79 6d 62 6f 6c 20 3d 20 28 20 73 79 .bm[symbol].);.....symbol.=.(.sy
322e0 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 5b 73 79 6d mbol.<<.1.).|.decode_bit(.bm[sym
32300 62 6f 6c 5d 20 29 3b 0a 20 20 20 20 73 79 6d 62 6f 6c 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3c 3c bol].);.....symbol.=.(.symbol.<<
32320 20 31 20 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 .1.).|.decode_bit(.bm[symbol].);
32340 0a 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 20 .....symbol.=.(.symbol.<<.1.).|.
32360 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 20 20 73 79 decode_bit(.bm[symbol].);.....sy
32380 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_
323a0 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
323c0 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 64 20 64 mbol.&.0x3F;.....}....unsigned.d
323e0 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 0a 20 20 ecode_tree8(.Bit_model.bm[].)...
32400 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 20 20 20 ..{.....unsigned.symbol.=.1;....
32420 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 38 3b 20 2b 2b 69 20 29 0a 20 20 .for(.int.i.=.0;.i.<.8;.++i.)...
32440 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 20 64 ....symbol.=.(.symbol.<<.1.).|.d
32460 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 20 20 72 65 74 ecode_bit(.bm[symbol].);.....ret
32480 75 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 urn.symbol.&.0xFF;.....}....unsi
324a0 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 28 20 42 69 74 5f 6d gned.decode_tree_reversed(.Bit_m
324c0 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 62 69 74 73 20 29 0a odel.bm[],.const.int.num_bits.).
324e0 20 20 20 20 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 ....{.....unsigned.model.=.1;...
32500 20 20 75 6e 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 ..unsigned.symbol.=.0;.....for(.
32520 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 20 29 0a 20 int.i.=.0;.i.<.num_bits;.++i.)..
32540 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 62 69 74 20 .....{.......const.unsigned.bit.
32560 3d 20 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 6d 6f 64 65 6c 5d 20 29 3b 0a 20 20 20 20 20 =.decode_bit(.bm[model].);......
32580 20 6d 6f 64 65 6c 20 3c 3c 3d 20 31 3b 20 6d 6f 64 65 6c 20 2b 3d 20 62 69 74 3b 0a 20 20 20 20 .model.<<=.1;.model.+=.bit;.....
325a0 20 20 73 79 6d 62 6f 6c 20 7c 3d 20 28 20 62 69 74 20 3c 3c 20 69 20 29 3b 0a 20 20 20 20 20 20 ..symbol.|=.(.bit.<<.i.);.......
325c0 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 20 75 6e }.....return.symbol;.....}....un
325e0 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 34 28 20 42 69 signed.decode_tree_reversed4(.Bi
32600 74 5f 6d 6f 64 65 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 t_model.bm[].).....{.....unsigne
32620 64 20 73 79 6d 62 6f 6c 20 3d 20 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 31 5d 20 29 3b 0a d.symbol.=.decode_bit(.bm[1].);.
32640 20 20 20 20 73 79 6d 62 6f 6c 20 2b 3d 20 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 32 2b 73 ....symbol.+=.decode_bit(.bm[2+s
32660 79 6d 62 6f 6c 5d 20 29 20 3c 3c 20 31 3b 0a 20 20 20 20 73 79 6d 62 6f 6c 20 2b 3d 20 64 65 63 ymbol].).<<.1;.....symbol.+=.dec
32680 6f 64 65 5f 62 69 74 28 20 62 6d 5b 34 2b 73 79 6d 62 6f 6c 5d 20 29 20 3c 3c 20 32 3b 0a 20 20 ode_bit(.bm[4+symbol].).<<.2;...
326a0 20 20 73 79 6d 62 6f 6c 20 2b 3d 20 64 65 63 6f 64 65 5f 62 69 74 28 20 62 6d 5b 38 2b 73 79 6d ..symbol.+=.decode_bit(.bm[8+sym
326c0 62 6f 6c 5d 20 29 20 3c 3c 20 33 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 73 79 6d 62 6f 6c 3b 0a bol].).<<.3;.....return.symbol;.
326e0 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 65 64 ....}....unsigned.decode_matched
32700 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 63 68 (.Bit_model.bm[],.unsigned.match
32720 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 63 6f _byte.).....{.....Bit_model.*.co
32740 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 67 6e nst.bm1.=.bm.+.0x100;.....unsign
32760 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 6f 6c ed.symbol.=.1;.....while(.symbol
32780 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 20 75 .<.0x100.).......{.......const.u
327a0 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 74 65 nsigned.match_bit.=.(.match_byte
327c0 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 62 6f .<<=.1.).&.0x100;.......const.bo
327e0 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 6c 2b ol.bit.=.decode_bit(.bm1[symbol+
32800 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 20 31 match_bit].);.......symbol.<<=.1
32820 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 63 68 ;.symbol.|=.bit;.......if(.match
32840 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 20 20 _bit.>>.8.!=.bit.).........{....
32860 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 0a 20 20 20 .....while(.symbol.<.0x100.)....
32880 20 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 .......symbol.=.(.symbol.<<.1.).
328a0 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 20 20 |.decode_bit(.bm[symbol].);.....
328c0 20 20 20 20 62 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 ....break;.........}.......}....
328e0 20 72 65 74 75 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 .return.symbol.&.0xFF;.....}....
32900 75 6e 73 69 67 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 unsigned.decode_len(.Len_model.&
32920 20 6c 6d 2c 20 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 .lm,.const.int.pos_state.).....{
32940 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 31 20 .....if(.decode_bit(.lm.choice1.
32960 29 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 64 65 63 6f 64 65 5f 74 72 65 ).==.0.).......return.decode_tre
32980 65 33 28 20 6c 6d 2e 62 6d 5f 6c 6f 77 5b 70 6f 73 5f 73 74 61 74 65 5d 20 29 3b 0a 20 20 20 20 e3(.lm.bm_low[pos_state].);.....
329a0 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 29 20 3d 3d 20 if(.decode_bit(.lm.choice2.).==.
329c0 30 20 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 0.).......return.len_low_symbols
329e0 20 2b 20 64 65 63 6f 64 65 5f 74 72 65 65 33 28 20 6c 6d 2e 62 6d 5f 6d 69 64 5b 70 6f 73 5f 73 .+.decode_tree3(.lm.bm_mid[pos_s
32a00 74 61 74 65 5d 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 tate].);.....return.len_low_symb
32a20 6f 6c 73 20 2b 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 20 2b 20 64 65 63 6f 64 65 5f 74 ols.+.len_mid_symbols.+.decode_t
32a40 72 65 65 38 28 20 6c 6d 2e 62 6d 5f 68 69 67 68 20 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 3b 0a 0a ree8(.lm.bm_high.);.....}...};..
32a60 0a 63 6c 61 73 73 20 4c 5a 5f 64 65 63 6f 64 65 72 0a 20 20 7b 0a 20 20 75 6e 73 69 67 6e 65 64 .class.LZ_decoder...{...unsigned
32a80 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 61 72 74 69 61 6c 5f 64 61 74 61 5f 70 6f 73 3b 0a 20 20 52 .long.long.partial_data_pos;...R
32aa0 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 26 20 72 64 65 63 3b 0a 20 20 63 6f 6e 73 74 20 75 6e 73 ange_decoder.&.rdec;...const.uns
32ac0 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 3b 0a 20 20 75 69 6e 74 38 5f 74 igned.dictionary_size;...uint8_t
32ae0 20 2a 20 63 6f 6e 73 74 20 62 75 66 66 65 72 3b 09 2f 2f 20 6f 75 74 70 75 74 20 62 75 66 66 65 .*.const.buffer;.//.output.buffe
32b00 72 0a 20 20 75 6e 73 69 67 6e 65 64 20 70 6f 73 3b 09 09 09 2f 2f 20 63 75 72 72 65 6e 74 20 70 r...unsigned.pos;...//.current.p
32b20 6f 73 20 69 6e 20 62 75 66 66 65 72 0a 20 20 75 6e 73 69 67 6e 65 64 20 73 74 72 65 61 6d 5f 70 os.in.buffer...unsigned.stream_p
32b40 6f 73 3b 09 09 2f 2f 20 66 69 72 73 74 20 62 79 74 65 20 6e 6f 74 20 79 65 74 20 77 72 69 74 74 os;..//.first.byte.not.yet.writt
32b60 65 6e 20 74 6f 20 66 69 6c 65 0a 20 20 75 69 6e 74 33 32 5f 74 20 63 72 63 5f 3b 0a 20 20 63 6f en.to.file...uint32_t.crc_;...co
32b80 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 20 66 69 6c 65 20 64 nst.int.outfd;..//.output.file.d
32ba0 65 73 63 72 69 70 74 6f 72 0a 20 20 62 6f 6f 6c 20 70 6f 73 5f 77 72 61 70 70 65 64 3b 0a 0a 20 escriptor...bool.pos_wrapped;...
32bc0 20 76 6f 69 64 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 20 20 62 6f 6f 6c 20 76 65 72 69 66 .void.flush_data();...bool.verif
32be0 79 5f 74 72 61 69 6c 65 72 28 20 63 6f 6e 73 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 26 20 y_trailer(.const.Pretty_print.&.
32c00 70 70 20 29 20 63 6f 6e 73 74 3b 0a 0a 20 20 75 69 6e 74 38 5f 74 20 70 65 65 6b 5f 70 72 65 76 pp.).const;....uint8_t.peek_prev
32c20 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 62 75 66 66 65 72 5b 28 28 70 ().const.....{.return.buffer[((p
32c40 6f 73 20 3e 20 30 29 20 3f 20 70 6f 73 20 3a 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 29 os.>.0).?.pos.:.dictionary_size)
32c60 2d 31 5d 3b 20 7d 0a 0a 20 20 75 69 6e 74 38 5f 74 20 70 65 65 6b 28 20 63 6f 6e 73 74 20 75 6e -1];.}....uint8_t.peek(.const.un
32c80 73 69 67 6e 65 64 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 signed.distance.).const.....{...
32ca0 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 69 20 3d 20 28 20 28 20 70 6f 73 20 3e 20 64 ..const.unsigned.i.=.(.(.pos.>.d
32cc0 69 73 74 61 6e 63 65 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 istance.).?.0.:.dictionary_size.
32ce0 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 20 20 70 6f 73 20 2d ).+........................pos.-
32d00 20 64 69 73 74 61 6e 63 65 20 2d 20 31 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 62 75 66 66 65 72 .distance.-.1;.....return.buffer
32d20 5b 69 5d 3b 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 6f 6e [i];.....}....void.put_byte(.con
32d40 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 72 5b st.uint8_t.b.).....{.....buffer[
32d60 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 74 69 pos].=.b;.....if(.++pos.>=.dicti
32d80 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 20 7d onary_size.).flush_data();.....}
32da0 0a 0a 20 20 76 6f 69 64 20 63 6f 70 79 5f 62 6c 6f 63 6b 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 ....void.copy_block(.const.unsig
32dc0 6e 65 64 20 64 69 73 74 61 6e 63 65 2c 20 75 6e 73 69 67 6e 65 64 20 6c 65 6e 20 29 0a 20 20 20 ned.distance,.unsigned.len.)....
32de0 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 6c 70 6f 73 20 3d 20 70 6f 73 2c 20 69 20 3d 20 .{.....unsigned.lpos.=.pos,.i.=.
32e00 6c 70 6f 73 20 2d 20 64 69 73 74 61 6e 63 65 20 2d 20 31 3b 0a 20 20 20 20 62 6f 6f 6c 20 66 61 lpos.-.distance.-.1;.....bool.fa
32e20 73 74 2c 20 66 61 73 74 32 3b 0a 20 20 20 20 69 66 28 20 6c 70 6f 73 20 3e 20 64 69 73 74 61 6e st,.fast2;.....if(.lpos.>.distan
32e40 63 65 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 66 61 73 74 20 3d 20 28 20 6c 65 6e 20 ce.).......{.......fast.=.(.len.
32e60 3c 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 2d 20 6c 70 6f 73 20 29 3b 0a 20 20 20 20 <.dictionary_size.-.lpos.);.....
32e80 20 20 66 61 73 74 32 20 3d 20 28 20 66 61 73 74 20 26 26 20 6c 65 6e 20 3c 3d 20 6c 70 6f 73 20 ..fast2.=.(.fast.&&.len.<=.lpos.
32ea0 2d 20 69 20 29 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 -.i.);.......}.....else.......{.
32ec0 20 20 20 20 20 20 69 20 2b 3d 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 3b 0a 20 20 20 20 ......i.+=.dictionary_size;.....
32ee0 20 20 66 61 73 74 20 3d 20 28 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
32f00 20 2d 20 69 20 29 3b 09 2f 2f 20 28 69 20 3d 3d 20 70 6f 73 29 20 6d 61 79 20 68 61 70 70 65 6e .-.i.);.//.(i.==.pos).may.happen
32f20 0a 20 20 20 20 20 20 66 61 73 74 32 20 3d 20 28 20 66 61 73 74 20 26 26 20 6c 65 6e 20 3c 3d 20 .......fast2.=.(.fast.&&.len.<=.
32f40 69 20 2d 20 6c 70 6f 73 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 66 61 73 74 i.-.lpos.);.......}.....if(.fast
32f60 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 20 20 .).....//.no.wrap.......{.......
32f80 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 09 09 pos.+=.len;.......if(.fast2.)...
32fa0 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 20 20 .//.no.wrap,.no.overlap.........
32fc0 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 66 66 std::memcpy(.buffer.+.lpos,.buff
32fe0 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 20 20 er.+.i,.len.);.......else.......
33000 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 65 72 ..for(.;.len.>.0;.--len.).buffer
33020 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 7d 0a [lpos++].=.buffer[i++];.......}.
33040 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 20 29 ....else.for(.;.len.>.0;.--len.)
33060 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 75 66 .......{.......buffer[pos].=.buf
33080 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 74 69 fer[i];.......if(.++pos.>=.dicti
330a0 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 20 20 onary_size.).flush_data();......
330c0 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 69 20 .if(.++i.>=.dictionary_size.).i.
330e0 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 65 72 =.0;.......}.....}....LZ_decoder
33100 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 63 6c (.const.LZ_decoder.&.);..//.decl
33120 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 72 3d ared.as.private...void.operator=
33140 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 63 6c (.const.LZ_decoder.&.);..//.decl
33160 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 64 65 ared.as.private..public:...LZ_de
33180 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 6e 73 coder(.Range_decoder.&.rde,.cons
331a0 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 74 20 t.unsigned.dict_size,.const.int.
331c0 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 6f 73 ofd.).....:.....partial_data_pos
331e0 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 63 74 (.0.),.....rdec(.rde.),.....dict
33200 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 62 75 ionary_size(.dict_size.),.....bu
33220 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 69 7a ffer(.new.uint8_t[dictionary_siz
33240 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 5f 70 e].),.....pos(.0.),.....stream_p
33260 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 20 29 os(.0.),.....crc_(.0xFFFFFFFFU.)
33280 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 61 70 ,.....outfd(.ofd.),.....pos_wrap
332a0 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 6f 66 ped(.false.).....//.prev_byte.of
332c0 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 29 20 .first.byte;.also.for.peek(.0.).
332e0 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 69 63 on.corrupt.file.....{.buffer[dic
33300 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 64 65 tionary_size-1].=.0;.}....~LZ_de
33320 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;.}....
33340 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 63 72 unsigned.crc().const.{.return.cr
33360 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 20 6c c_.^.0xFFFFFFFFU;.}...unsigned.l
33380 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 20 7b ong.long.data_position().const.{
333a0 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 3b 20 .return.partial_data_pos.+.pos;.
333c0 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 50 72 }....int.decode_member(.const.Pr
333e0 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 00 00 etty_print.&.pp.);...};.........
33400 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 65 6e 63 6f 64 65 72 2e 68 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/encoder.h.........
33420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33460 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
33480 30 30 32 31 36 34 35 00 31 33 36 35 32 36 31 31 33 30 30 00 30 30 31 33 34 33 33 00 30 00 00 00 0021645.13652611300.0013433.0...
334a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
334c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
334e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33500 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...................
33520 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...................
33540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
335a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
335c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
335e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33600 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
33620 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
33640 32 30 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 20.Antonio.Diaz.Diaz......This.p
33660 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
33680 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..
336a0 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.
336c0 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
336e0 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
33700 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.
33720 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).
33740 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
33760 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
33780 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
337a0 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
337c0 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
337e0 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
33800 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
33820 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
33840 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
33860 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
33880 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
338a0 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:/
338c0 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
338e0 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
33900 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
33920 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
33940 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];
33960 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];.../
33980 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.
339a0 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
339c0 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
339e0 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];.....
33a00 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.);.
33a20 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.
33a40 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
33a60 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].=
33a80 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[
33aa0 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.>
33ac0 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.
33ae0 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(
33b00 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.<.
33b20 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
33b40 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.).
33b60 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.+..........
33b80 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
33ba0 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
33bc0 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_
33be0 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
33c00 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
33c20 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
33c40 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
33c60 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.)
33c80 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
33ca0 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
33cc0 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
33ce0 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].=
33d00 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
33d20 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.
33d40 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
33d60 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.
33d80 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
33da0 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
33dc0 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
33de0 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.),
33e00 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
33e20 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
33e40 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
33e60 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();.
33e80 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
33ea0 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[
33ec0 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
33ee0 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
33f00 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
33f20 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;.+
33f40 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[
33f60 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
33f80 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;........
33fa0 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
33fc0 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;.}...
33fe0 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
34000 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
34020 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
34040 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
34060 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
34080 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
340a0 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];.}...};..
340c0 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
340e0 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.../
34100 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.....{....
34120 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;.....};...
34140 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
34160 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
34180 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
341a0 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
341c0 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.....{.
341e0 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;.
34200 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
34220 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;..
34240 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
34260 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
34280 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
342a0 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;.//.
342c0 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....//
342e0 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
34300 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
34320 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
34340 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
34360 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.
34380 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.<
343a0 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
343c0 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_
343e0 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
34400 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
34420 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
34440 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.<.
34460 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
34480 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;.......
344a0 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
344c0 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(.
344e0 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
34500 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,...............
34520 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.).......{....
34540 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
34560 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
34580 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
345a0 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;.}.......}.....};....
345c0 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
345e0 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
34600 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
34620 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
34640 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
34660 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
34680 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
346a0 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];...
346c0 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
346e0 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
34700 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
34720 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
34740 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
34760 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
34780 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
347a0 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
347c0 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
347e0 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
34800 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
34820 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
34840 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();........./
34860 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
34880 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
348a0 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
348c0 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]
348e0 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
34900 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.......{.
34920 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]
34940 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];..
34960 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
34980 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
349a0 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...
349c0 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.=
349e0 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.=.
34a00 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
34a20 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
34a40 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
34a60 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.
34a80 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.....{.....
34aa0 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()].
34ac0 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_
34ae0 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
34b00 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
34b20 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.
34b40 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.
34b60 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()].).+....
34b80 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
34ba0 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].);....
34bc0 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
34be0 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.).....
34c00 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
34c20 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
34c40 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()].
34c60 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_
34c80 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.);.......
34ca0 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
34cc0 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,.
34ce0 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
34d00 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.
34d20 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.)
34d40 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
34d60 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
34d80 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
34da0 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
34dc0 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
34de0 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
34e00 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
34e20 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.);..
34e40 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.)
34e60 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
34e80 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......
34ea0 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[
34ec0 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.)].+...
34ee0 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
34f00 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
34f20 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().....{..
34f40 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
34f60 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
34f80 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
34fa0 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;
34fc0 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
34fe0 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.)......
35000 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.=.....
35020 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
35040 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.);.......}
35060 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;.....}....
35080 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.)...
350a0 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.).......{...
350c0 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.<=
350e0 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
35100 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
35120 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
35140 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(
35160 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
35180 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
351a0 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
351c0 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
351e0 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
35200 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.).........{......
35220 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;.....//.
35240 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_
35260 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;.........
35280 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_
352a0 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
352c0 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.)..........
352e0 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
35300 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];........
35320 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
35340 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
35360 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
35380 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
353a0 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
353c0 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
353e0 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
35400 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
35420 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
35440 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
35460 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
35480 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
354a0 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],...............
354c0 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.);
354e0 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
35500 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
35520 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..........
35540 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
35560 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
35580 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.=
355a0 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
355c0 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
355e0 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
35600 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,....
35620 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
35640 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
35660 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,..
35680 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
356a0 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
356c0 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,
356e0 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,.......
35700 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
35720 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
35740 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
35760 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
35780 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
357a0 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
357c0 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_
357e0 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(
35800 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.
35820 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.),..
35840 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(
35860 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.).).....{..
35880 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;....
358a0 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_
358c0 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(
358e0 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
35900 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
35920 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();.
35940 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;.....}
35960 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
35980 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.);.
359a0 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 ..};............................
359c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
359e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35a00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 68 00 00 00 00 lzip-1.22-rc2/encoder_base.h....
35a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35a60 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
35a80 30 30 33 35 30 34 31 00 31 33 36 35 32 36 31 31 33 30 30 00 30 30 31 34 34 32 30 00 30 00 00 00 0035041.13652611300.0014420.0...
35aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35b00 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...................
35b20 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...................
35b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
35c00 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
35c20 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
35c40 32 30 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 20.Antonio.Diaz.Diaz......This.p
35c60 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
35c80 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..
35ca0 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.
35cc0 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
35ce0 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
35d00 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.
35d20 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).
35d40 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
35d60 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
35d80 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
35da0 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
35dc0 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
35de0 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
35e00 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
35e20 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
35e40 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
35e60 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
35e80 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
35ea0 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:/
35ec0 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
35ee0 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,.......
35f00 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
35f20 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.}
35f40 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
35f60 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
35f80 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
35fa0 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].
35fc0 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
35fe0 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.
36000 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
36020 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.);.......
36040 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
36060 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;.
36080 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;.......}.....}..
360a0 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.
360c0 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];.
360e0 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
36100 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
36120 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
36140 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[
36160 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
36180 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;...
361a0 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
361c0 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
361e0 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
36200 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
36220 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
36240 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()....
36260 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
36280 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;.+
362a0 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.
362c0 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
362e0 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;..
36300 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....
36320 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
36340 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.).........{........
36360 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.<
36380 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.<<
363a0 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;.}....
363c0 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
363e0 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[
36400 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
36420 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;.......
36440 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
36460 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
36480 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_
364a0 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_
364c0 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
364e0 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.)...
36500 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
36520 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
36540 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
36560 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
36580 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
365a0 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
365c0 6f 6c 20 62 69 74 20 29 0a 20 20 7b 20 72 65 74 75 72 6e 20 28 20 62 69 74 20 3f 20 70 72 69 63 ol.bit.)...{.return.(.bit.?.pric
365e0 65 31 28 20 62 6d 20 29 20 3a 20 70 72 69 63 65 30 28 20 62 6d 20 29 20 29 3b 20 7d 0a 0a 0a 69 e1(.bm.).:.price0(.bm.).);.}...i
36600 6e 6c 69 6e 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 nline.int.price_symbol3(.const.B
36620 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 20 7b 0a it_model.bm[],.int.symbol.)...{.
36640 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 6d 62 6f ..bool.bit.=.symbol.&.1;...symbo
36660 6c 20 7c 3d 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 l.|=.8;.symbol.>>=.1;...int.pric
36680 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 62 69 74 20 29 e.=.price_bit(.bm[symbol],.bit.)
366a0 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.>>=
366c0 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
366e0 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
36700 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.);...}.
36720 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 36 28 20 63 6f 6e 73 ..inline.int.price_symbol6(.cons
36740 74 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 73 79 6d 62 6f t.Bit_model.bm[],.unsigned.symbo
36760 6c 20 29 0a 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 l.)...{...bool.bit.=.symbol.&.1;
36780 0a 20 20 73 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 ...symbol.|=.64;.symbol.>>=.1;..
367a0 20 69 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 .int.price.=.price_bit(.bm[symbo
367c0 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 20 73 l],.bit.);...bit.=.symbol.&.1;.s
367e0 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 74 28 ymbol.>>=.1;.price.+=.price_bit(
36800 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 6d 62 .bm[symbol],.bit.);...bit.=.symb
36820 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 20 70 ol.&.1;.symbol.>>=.1;.price.+=.p
36840 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 62 rice_bit(.bm[symbol],.bit.);...b
36860 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 70 it.=.symbol.&.1;.symbol.>>=.1;.p
36880 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 62 rice.+=.price_bit(.bm[symbol],.b
368a0 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 6c it.);...bit.=.symbol.&.1;.symbol
368c0 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 73 .>>=.1;.price.+=.price_bit(.bm[s
368e0 79 6d 62 6f 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 ymbol],.bit.);...return.price.+.
36900 70 72 69 63 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 price_bit(.bm[1],.symbol.&.1.);.
36920 20 20 7d 0a 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 ..}...inline.int.price_symbol8(.
36940 63 6f 6e 73 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 const.Bit_model.bm[],.int.symbol
36960 20 29 0a 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 .)...{...bool.bit.=.symbol.&.1;.
36980 20 20 73 79 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 ..symbol.|=.0x100;.symbol.>>=.1;
369a0 0a 20 20 69 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 ...int.price.=.price_bit(.bm[sym
369c0 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;
369e0 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
36a00 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
36a20 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.+=
36a40 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.);..
36a60 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 20 31 3b .bit.=.symbol.&.1;.symbol.>>=.1;
36a80 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 6c 5d 2c .price.+=.price_bit(.bm[symbol],
36aa0 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 62 .bit.);...bit.=.symbol.&.1;.symb
36ac0 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 6d ol.>>=.1;.price.+=.price_bit(.bm
36ae0 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 20 [symbol],.bit.);...bit.=.symbol.
36b00 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 63 &.1;.symbol.>>=.1;.price.+=.pric
36b20 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 20 e_bit(.bm[symbol],.bit.);...bit.
36b40 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 63 =.symbol.&.1;.symbol.>>=.1;.pric
36b60 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 20 e.+=.price_bit(.bm[symbol],.bit.
36b80 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 74 28 20 62 );...return.price.+.price_bit(.b
36ba0 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 6c 69 6e 65 m[1],.symbol.&.1.);...}...inline
36bc0 20 69 6e 74 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 .int.price_symbol_reversed(.cons
36be0 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 2c 0a 20 20 t.Bit_model.bm[],.int.symbol,...
36c00 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 ................................
36c20 63 6f 6e 73 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 const.int.num_bits.)...{...int.p
36c40 72 69 63 65 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 rice.=.0;...int.model.=.1;...for
36c60 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 2d 2d 69 20 29 (.int.i.=.num_bits;.i.>.0;.--i.)
36c80 0a 20 20 20 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 .....{.....const.bool.bit.=.symb
36ca0 6f 6c 20 26 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 ol.&.1;.....symbol.>>=.1;.....pr
36cc0 69 63 65 20 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 ice.+=.price_bit(.bm[model],.bit
36ce0 20 29 3b 0a 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 .);.....model.<<=.1;.model.|=.bi
36d00 74 3b 0a 20 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 t;.....}...return.price;...}...i
36d20 6e 6c 69 6e 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 nline.int.price_matched(.const.B
36d40 69 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 2c 0a it_model.bm[],.unsigned.symbol,.
36d60 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
36d80 65 64 20 6d 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 ed.match_byte.)...{...int.price.
36da0 3d 20 30 3b 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 =.0;...unsigned.mask.=.0x100;...
36dc0 73 79 6d 62 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 symbol.|=.mask;...while(.true.).
36de0 20 20 20 20 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 ....{.....const.unsigned.match_b
36e00 69 74 20 3d 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 it.=.(.match_byte.<<=.1.).&.mask
36e20 3b 0a 20 20 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 ;.....const.bool.bit.=.(.symbol.
36e40 3c 3c 3d 20 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 <<=.1.).&.0x100;.....price.+=.pr
36e60 69 63 65 5f 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 ice_bit(.bm[(symbol>>9)+match_bi
36e80 74 2b 6d 61 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 t+mask],.bit.);.....if(.symbol.>
36ea0 3d 20 30 78 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 =.0x10000.).return.price;.....ma
36ec0 73 6b 20 26 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 sk.&=.~(match_bit.^.symbol);.//.
36ee0 69 66 28 20 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 if(.match_bit.!=.bit.).mask.=.0;
36f00 0a 20 20 20 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 .....}...}...class.Matchfinder_b
36f20 61 73 65 0a 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 ase...{...bool.read_block();...v
36f40 6f 69 64 20 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 oid.normalize_pos();....Matchfin
36f60 64 65 72 5f 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 der_base(.const.Matchfinder_base
36f80 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 20 20 76 .&.);.//.declared.as.private...v
36fa0 6f 69 64 20 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 oid.operator=(.const.Matchfinder
36fc0 5f 62 61 73 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 _base.&.);.//.declared.as.privat
36fe0 65 0a 0a 70 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 e..protected:...unsigned.long.lo
37000 6e 67 20 70 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 ng.partial_data_pos;...uint8_t.*
37020 20 62 75 66 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 .buffer;..//.input.buffer...int3
37040 32 5f 74 20 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 2_t.*.prev_positions;.//.1.+.las
37060 74 20 73 65 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 t.seen.position.of.key..else.0..
37080 20 69 6e 74 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 .int32_t.*.pos_array;..//.may.be
370a0 20 74 72 65 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 .tree.or.chain...const.int.befor
370c0 65 5f 73 69 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 e_size;.//.bytes.to.keep.in.buff
370e0 65 72 20 62 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 er.before.dictionary...int.buffe
37100 72 5f 73 69 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 r_size;...int.dictionary_size;..
37120 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 65 66 6f 72 //.bytes.to.keep.in.buffer.befor
37140 65 20 70 6f 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 e.pos...int.pos;...//.current.po
37160 73 20 69 6e 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 s.in.buffer...int.cyclic_pos;../
37180 2f 20 63 79 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 /.cycles.through.[0,.dictionary_
371a0 73 69 7a 65 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 size]...int.stream_pos;..//.firs
371c0 74 20 62 79 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 t.byte.not.yet.read.from.file...
371e0 69 6e 74 20 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 int.pos_limit;..//.when.reached,
37200 20 61 20 6e 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 .a.new.block.must.be.read...int.
37220 6b 65 79 34 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 key4_mask;...const.int.num_prev_
37240 70 6f 73 69 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 positions23;...int.num_prev_posi
37260 74 69 6f 6e 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 tions;.//.size.of.prev_positions
37280 0a 20 20 69 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 ...int.pos_array_size;...const.i
372a0 6e 74 20 69 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 nt.infd;..//.input.file.descript
372c0 6f 72 0a 20 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 or...bool.at_stream_end;..//.str
372e0 65 61 6d 5f 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 eam_pos.shows.real.end.of.file..
37300 20 20 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 6e 74 20 62 65 ..Matchfinder_base(.const.int.be
37320 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 20 20 20 20 20 fore_size_,.....................
37340 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 69 6e 74 20 61 const.int.dict_size,.const.int.a
37360 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 20 20 20 20 63 fter_size,.....................c
37380 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 20 69 6e 74 20 onst.int.dict_factor,.const.int.
373a0 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 20 20 20 20 20 num_prev_positions23_,..........
373c0 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 72 61 79 5f 66 ...........const.int.pos_array_f
373e0 61 63 74 6f 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 actor,.const.int.ifd.);....~Matc
37400 68 66 69 6e 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 hfinder_base().....{.delete[].pr
37420 65 76 5f 70 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 ev_positions;.std::free(.buffer.
37440 29 3b 20 7d 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 );.}..public:...uint8_t.peek(.co
37460 6e 73 74 20 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 nst.int.distance.).const.{.retur
37480 6e 20 62 75 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 n.buffer[pos-distance];.}...int.
374a0 61 76 61 69 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 available_bytes().const.{.return
374c0 20 73 74 72 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 .stream_pos.-.pos;.}...unsigned.
374e0 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 20 long.long.data_position().const.
37500 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 3b {.return.partial_data_pos.+.pos;
37520 20 7d 0a 20 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 .}...bool.data_finished().const.
37540 7b 20 72 65 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 {.return.at_stream_end.&&.pos.>=
37560 20 73 74 72 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 .stream_pos;.}...const.uint8_t.*
37580 20 70 74 72 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 .ptr_to_current_pos().const.{.re
375a0 74 75 72 6e 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 turn.buffer.+.pos;.}....int.true
375c0 5f 6d 61 74 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 _match_len(.const.int.index,.con
375e0 73 74 20 69 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 st.int.distance.).const.....{...
37600 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 3d 20 62 ..const.uint8_t.*.const.data.=.b
37620 75 66 66 65 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 uffer.+.pos;.....int.i.=.index;.
37640 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
37660 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 5f in(.available_bytes(),.(int)max_
37680 6d 61 74 63 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 match_len.);.....while(.i.<.len_
376a0 6c 69 6d 69 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 limit.&&.data[i-distance].==.dat
376c0 61 5b 69 5d 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 a[i].).++i;.....return.i;.....}.
376e0 0a 20 20 76 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 ...void.move_pos().....{.....if(
37700 20 2b 2b 63 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 .++cyclic_pos.>.dictionary_size.
37720 29 20 63 79 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 ).cyclic_pos.=.0;.....if(.++pos.
37740 3e 3d 20 70 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 >=.pos_limit.).normalize_pos();.
37760 20 20 20 20 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 ....}....void.reset();...};...cl
37780 61 73 73 20 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 ass.Range_encoder...{...enum.{.b
377a0 75 66 66 65 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 uffer_size.=.65536.};...uint64_t
377c0 20 6c 6f 77 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 .low;...unsigned.long.long.parti
377e0 61 6c 5f 6d 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 al_member_pos;...uint8_t.*.const
37800 20 62 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 69 6e 74 20 .buffer;.//.output.buffer...int.
37820 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 65 72 0a pos;...//.current.pos.in.buffer.
37840 20 20 75 69 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 ..uint32_t.range;...unsigned.ff_
37860 63 6f 75 6e 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 count;...const.int.outfd;..//.ou
37880 74 70 75 74 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 tput.file.descriptor...uint8_t.c
378a0 61 63 68 65 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 ache;...Lzip_header.header;....v
378c0 6f 69 64 20 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 oid.shift_low().....{.....if(.lo
378e0 77 20 3e 3e 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 w.>>.24.!=.0xFF.).......{.......
37900 63 6f 6e 73 74 20 62 6f 6f 6c 20 63 61 72 72 79 20 3d 20 28 20 6c 6f 77 20 3e 20 30 78 46 46 46 const.bool.carry.=.(.low.>.0xFFF
37920 46 46 46 46 46 55 20 29 3b 0a 20 20 20 20 20 20 70 75 74 5f 62 79 74 65 28 20 63 61 63 68 65 20 FFFFFU.);.......put_byte(.cache.
37940 2b 20 63 61 72 72 79 20 29 3b 0a 20 20 20 20 20 20 66 6f 72 28 20 3b 20 66 66 5f 63 6f 75 6e 74 +.carry.);.......for(.;.ff_count
37960 20 3e 20 30 3b 20 2d 2d 66 66 5f 63 6f 75 6e 74 20 29 20 70 75 74 5f 62 79 74 65 28 20 30 78 46 .>.0;.--ff_count.).put_byte(.0xF
37980 46 20 2b 20 63 61 72 72 79 20 29 3b 0a 20 20 20 20 20 20 63 61 63 68 65 20 3d 20 6c 6f 77 20 3e F.+.carry.);.......cache.=.low.>
379a0 3e 20 32 34 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 65 6c 73 65 20 2b 2b 66 66 5f 63 6f 75 6e >.24;.......}.....else.++ff_coun
379c0 74 3b 0a 20 20 20 20 6c 6f 77 20 3d 20 28 20 6c 6f 77 20 26 20 30 78 30 30 46 46 46 46 46 46 55 t;.....low.=.(.low.&.0x00FFFFFFU
379e0 20 29 20 3c 3c 20 38 3b 0a 20 20 20 20 7d 0a 0a 20 20 52 61 6e 67 65 5f 65 6e 63 6f 64 65 72 28 .).<<.8;.....}....Range_encoder(
37a00 20 63 6f 6e 73 74 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 .const.Range_encoder.&.);.//.dec
37a20 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 72 lared.as.private...void.operator
37a40 3d 28 20 63 6f 6e 73 74 20 52 61 6e 67 65 5f 65 6e 63 6f 64 65 72 20 26 20 29 3b 09 2f 2f 20 64 =(.const.Range_encoder.&.);.//.d
37a60 65 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 76 6f eclared.as.private..public:...vo
37a80 69 64 20 72 65 73 65 74 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e id.reset(.const.unsigned.diction
37aa0 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 6c 6f 77 20 3d 20 30 3b 0a 20 20 ary_size.).....{.....low.=.0;...
37ac0 20 20 70 61 72 74 69 61 6c 5f 6d 65 6d 62 65 72 5f 70 6f 73 20 3d 20 30 3b 0a 20 20 20 20 70 6f ..partial_member_pos.=.0;.....po
37ae0 73 20 3d 20 30 3b 0a 20 20 20 20 72 61 6e 67 65 20 3d 20 30 78 46 46 46 46 46 46 46 46 55 3b 0a s.=.0;.....range.=.0xFFFFFFFFU;.
37b00 20 20 20 20 66 66 5f 63 6f 75 6e 74 20 3d 20 30 3b 0a 20 20 20 20 63 61 63 68 65 20 3d 20 30 3b ....ff_count.=.0;.....cache.=.0;
37b20 0a 20 20 20 20 68 65 61 64 65 72 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 20 64 69 63 .....header.dictionary_size(.dic
37b40 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 20 69 20 3d tionary_size.);.....for(.int.i.=
37b60 20 30 3b 20 69 20 3c 20 4c 7a 69 70 5f 68 65 61 64 65 72 3a 3a 73 69 7a 65 3b 20 2b 2b 69 20 29 .0;.i.<.Lzip_header::size;.++i.)
37b80 0a 20 20 20 20 20 20 70 75 74 5f 62 79 74 65 28 20 68 65 61 64 65 72 2e 64 61 74 61 5b 69 5d 20 .......put_byte(.header.data[i].
37ba0 29 3b 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 );.....}....Range_encoder(.const
37bc0 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 2c 20 63 6f 6e 73 74 .unsigned.dictionary_size,.const
37be0 20 69 6e 74 20 6f 66 64 20 29 0a 20 20 20 20 3a 0a 20 20 20 20 62 75 66 66 65 72 28 20 6e 65 77 .int.ofd.).....:.....buffer(.new
37c00 20 75 69 6e 74 38 5f 74 5b 62 75 66 66 65 72 5f 73 69 7a 65 5d 20 29 2c 20 6f 75 74 66 64 28 20 .uint8_t[buffer_size].),.outfd(.
37c20 6f 66 64 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 68 65 61 64 65 72 2e 73 65 74 5f 6d 61 67 69 63 ofd.).....{.....header.set_magic
37c40 28 29 3b 0a 20 20 20 20 72 65 73 65 74 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 ();.....reset(.dictionary_size.)
37c60 3b 0a 20 20 20 20 7d 0a 0a 20 20 7e 52 61 6e 67 65 5f 65 6e 63 6f 64 65 72 28 29 20 7b 20 64 65 ;.....}....~Range_encoder().{.de
37c80 6c 65 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 6c 6f 6e lete[].buffer;.}....unsigned.lon
37ca0 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 20 g.long.member_position().const..
37cc0 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 2b ...{.return.partial_member_pos.+
37ce0 20 70 6f 73 20 2b 20 66 66 5f 63 6f 75 6e 74 3b 20 7d 0a 0a 20 20 76 6f 69 64 20 66 6c 75 73 68 .pos.+.ff_count;.}....void.flush
37d00 28 29 20 7b 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 35 3b 20 2b 2b 69 20 ().{.for(.int.i.=.0;.i.<.5;.++i.
37d20 29 20 73 68 69 66 74 5f 6c 6f 77 28 29 3b 20 7d 0a 20 20 76 6f 69 64 20 66 6c 75 73 68 5f 64 61 ).shift_low();.}...void.flush_da
37d40 74 61 28 29 3b 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 ta();....void.put_byte(.const.ui
37d60 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 72 5b 70 6f 73 5d 20 nt8_t.b.).....{.....buffer[pos].
37d80 3d 20 62 3b 0a 20 20 20 20 69 66 28 20 2b 2b 70 6f 73 20 3e 3d 20 62 75 66 66 65 72 5f 73 69 7a =.b;.....if(.++pos.>=.buffer_siz
37da0 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 20 20 76 6f 69 64 20 e.).flush_data();.....}....void.
37dc0 65 6e 63 6f 64 65 28 20 63 6f 6e 73 74 20 69 6e 74 20 73 79 6d 62 6f 6c 2c 20 63 6f 6e 73 74 20 encode(.const.int.symbol,.const.
37de0 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 66 6f 72 28 20 75 6e int.num_bits.).....{.....for(.un
37e00 73 69 67 6e 65 64 20 6d 61 73 6b 20 3d 20 31 20 3c 3c 20 28 20 6e 75 6d 5f 62 69 74 73 20 2d 20 signed.mask.=.1.<<.(.num_bits.-.
37e20 31 20 29 3b 20 6d 61 73 6b 20 3e 20 30 3b 20 6d 61 73 6b 20 3e 3e 3d 20 31 20 29 0a 20 20 20 20 1.);.mask.>.0;.mask.>>=.1.).....
37e40 20 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 69 66 28 ..{.......range.>>=.1;.......if(
37e60 20 73 79 6d 62 6f 6c 20 26 20 6d 61 73 6b 20 29 20 6c 6f 77 20 2b 3d 20 72 61 6e 67 65 3b 0a 20 .symbol.&.mask.).low.+=.range;..
37e80 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 46 55 20 29 20 .....if(.range.<=.0x00FFFFFFU.).
37ea0 7b 20 72 61 6e 67 65 20 3c 3c 3d 20 38 3b 20 73 68 69 66 74 5f 6c 6f 77 28 29 3b 20 7d 0a 20 20 {.range.<<=.8;.shift_low();.}...
37ec0 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 62 69 74 28 20 ....}.....}....void.encode_bit(.
37ee0 42 69 74 5f 6d 6f 64 65 6c 20 26 20 62 6d 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 62 69 74 20 29 Bit_model.&.bm,.const.bool.bit.)
37f00 0a 20 20 20 20 7b 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 .....{.....const.uint32_t.bound.
37f20 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 61 6c 5f 62 69 74 =.(.range.>>.bit_model_total_bit
37f40 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 69 66 28 20 21 62 s.).*.bm.probability;.....if(.!b
37f60 69 74 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 75 6e 64 it.).......{.......range.=.bound
37f80 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 20 28 62 69 74 5f 6d ;.......bm.probability.+=.(bit_m
37fa0 6f 64 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 29 20 3e 3e 20 odel_total.-.bm.probability).>>.
37fc0 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 7d 0a 20 20 20 bit_model_move_bits;.......}....
37fe0 20 65 6c 73 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 6c 6f 77 20 2b 3d 20 62 6f 75 6e 64 .else.......{.......low.+=.bound
38000 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
38020 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.>
38040 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 7d 0a 20 >.bit_model_move_bits;.......}..
38060 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 46 55 20 29 20 7b 20 ...if(.range.<=.0x00FFFFFFU.).{.
38080 72 61 6e 67 65 20 3c 3c 3d 20 38 3b 20 73 68 69 66 74 5f 6c 6f 77 28 29 3b 20 7d 0a 20 20 20 20 range.<<=.8;.shift_low();.}.....
380a0 7d 0a 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 74 72 65 65 33 28 20 42 69 74 5f 6d 6f 64 65 }....void.encode_tree3(.Bit_mode
380c0 6c 20 62 6d 5b 5d 2c 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 l.bm[],.const.int.symbol.).....{
380e0 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 32 20 29 20 .....bool.bit.=.(.symbol.>>.2.).
38100 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.
38120 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;.....
38140 62 69 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3e 3e 20 31 20 29 20 26 20 31 3b 0a 20 20 20 20 65 bit.=.(.symbol.>>.1.).&.1;.....e
38160 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
38180 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 65 6e 63 6f el.<<=.1;.model.|=.bit;.....enco
381a0 64 65 5f 62 69 74 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 73 79 6d 62 6f 6c 20 26 20 31 20 29 3b de_bit(.bm[model],.symbol.&.1.);
381c0 0a 20 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 74 72 65 65 36 28 20 42 69 74 .....}....void.encode_tree6(.Bit
381e0 5f 6d 6f 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 73 79 6d 62 _model.bm[],.const.unsigned.symb
38200 6f 6c 20 29 0a 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 ol.).....{.....bool.bit.=.(.symb
38220 6f 6c 20 3e 3e 20 35 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.>>.5.).&.1;.....encode_bit(.b
38240 6d 5b 31 5d 2c 20 62 69 74 20 29 3b 0a 20 20 20 20 69 6e 74 20 6d 6f 64 65 6c 20 3d 20 32 20 7c m[1],.bit.);.....int.model.=.2.|
38260 20 62 69 74 3b 0a 20 20 20 20 62 69 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3e 3e 20 34 20 29 20 .bit;.....bit.=.(.symbol.>>.4.).
38280 26 20 31 3b 0a 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],.
382a0 62 69 74 20 29 3b 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 bit.);.model.<<=.1;.model.|=.bit
382c0 3b 0a 20 20 20 20 62 69 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3e 3e 20 33 20 29 20 26 20 31 3b ;.....bit.=.(.symbol.>>.3.).&.1;
382e0 0a 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 62 69 74 20 .....encode_bit(.bm[model],.bit.
38300 29 3b 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 20 );.model.<<=.1;.model.|=.bit;...
38320 20 20 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 ..bit.=.(.symbol.>>.2.).&.1;....
38340 20 65 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 .encode_bit(.bm[model],.bit.);.m
38360 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 20 20 20 62 69 odel.<<=.1;.model.|=.bit;.....bi
38380 74 20 3d 20 28 20 73 79 6d 62 6f 6c 20 3e 3e 20 31 20 29 20 26 20 31 3b 0a 20 20 20 20 65 6e 63 t.=.(.symbol.>>.1.).&.1;.....enc
383a0 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 65 6c ode_bit(.bm[model],.bit.);.model
383c0 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 65 6e 63 6f 64 65 .<<=.1;.model.|=.bit;.....encode
383e0 5f 62 69 74 28 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 73 79 6d 62 6f 6c 20 26 20 31 20 29 3b 0a 20 _bit(.bm[model],.symbol.&.1.);..
38400 20 20 20 7d 0a 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 74 72 65 65 38 28 20 42 69 74 5f 6d ...}....void.encode_tree8(.Bit_m
38420 6f 64 65 6c 20 62 6d 5b 5d 2c 20 63 6f 6e 73 74 20 69 6e 74 20 73 79 6d 62 6f 6c 20 29 0a 20 20 odel.bm[],.const.int.symbol.)...
38440 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 20 20 66 6f 72 28 20 ..{.....int.model.=.1;.....for(.
38460 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 20 20 7b int.i.=.7;.i.>=.0;.--i.).......{
38480 0a 20 20 20 20 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 .......const.bool.bit.=.(.symbol
384a0 20 3e 3e 20 69 20 29 20 26 20 31 3b 0a 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 .>>.i.).&.1;.......encode_bit(.b
384c0 6d 5b 6d 6f 64 65 6c 5d 2c 20 62 69 74 20 29 3b 0a 20 20 20 20 20 20 6d 6f 64 65 6c 20 3c 3c 3d m[model],.bit.);.......model.<<=
384e0 20 31 3b 20 6d 6f 64 65 6c 20 7c 3d 20 62 69 74 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a .1;.model.|=.bit;.......}.....}.
38500 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 74 72 65 65 5f 72 65 76 65 72 73 65 64 28 20 42 69 ...void.encode_tree_reversed(.Bi
38520 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 20 63 6f 6e 73 74 20 t_model.bm[],.int.symbol,.const.
38540 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 69 6e 74 20 6d 6f 64 int.num_bits.).....{.....int.mod
38560 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 6e 75 6d 5f 62 69 74 el.=.1;.....for(.int.i.=.num_bit
38580 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 63 6f s;.i.>.0;.--i.).......{.......co
385a0 6e 73 74 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 20 20 20 nst.bool.bit.=.symbol.&.1;......
385c0 20 73 79 6d 62 6f 6c 20 3e 3e 3d 20 31 3b 0a 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 .symbol.>>=.1;.......encode_bit(
385e0 20 62 6d 5b 6d 6f 64 65 6c 5d 2c 20 62 69 74 20 29 3b 0a 20 20 20 20 20 20 6d 6f 64 65 6c 20 3c .bm[model],.bit.);.......model.<
38600 3c 3d 20 31 3b 20 6d 6f 64 65 6c 20 7c 3d 20 62 69 74 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 <=.1;.model.|=.bit;.......}.....
38620 7d 0a 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 6d 61 74 63 68 65 64 28 20 42 69 74 5f 6d 6f }....void.encode_matched(.Bit_mo
38640 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 20 75 6e 73 69 67 del.bm[],.unsigned.symbol,.unsig
38660 6e 65 64 20 6d 61 74 63 68 5f 62 79 74 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 ned.match_byte.).....{.....unsig
38680 6e 65 64 20 6d 61 73 6b 20 3d 20 30 78 31 30 30 3b 0a 20 20 20 20 73 79 6d 62 6f 6c 20 7c 3d 20 ned.mask.=.0x100;.....symbol.|=.
386a0 6d 61 73 6b 3b 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 mask;.....while(.true.).......{.
386c0 20 20 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.=
386e0 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;...
38700 20 20 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 ....const.bool.bit.=.(.symbol.<<
38720 3d 20 31 20 29 20 26 20 30 78 31 30 30 3b 0a 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 =.1.).&.0x100;.......encode_bit(
38740 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 73 6b 5d 2c .bm[(symbol>>9)+match_bit+mask],
38760 20 62 69 74 20 29 3b 0a 20 20 20 20 20 20 69 66 28 20 73 79 6d 62 6f 6c 20 3e 3d 20 30 78 31 30 .bit.);.......if(.symbol.>=.0x10
38780 30 30 30 20 29 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 6d 61 73 6b 20 26 3d 20 7e 28 6d 61 74 000.).break;.......mask.&=.~(mat
387a0 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 6d 61 74 63 68 5f 62 ch_bit.^.symbol);.//.if(.match_b
387c0 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 20 20 20 7d 0a 20 20 it.!=.bit.).mask.=.0;.......}...
387e0 20 20 7d 0a 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 6c 65 6e 28 20 4c 65 6e 5f 6d 6f 64 65 ..}....void.encode_len(.Len_mode
38800 6c 20 26 20 6c 6d 2c 20 69 6e 74 20 73 79 6d 62 6f 6c 2c 20 63 6f 6e 73 74 20 69 6e 74 20 70 6f l.&.lm,.int.symbol,.const.int.po
38820 73 5f 73 74 61 74 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 62 6f 6f 6c 20 62 69 74 20 3d 20 28 s_state.).....{.....bool.bit.=.(
38840 20 28 20 73 79 6d 62 6f 6c 20 2d 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 20 3e 3d 20 .(.symbol.-=.min_match_len.).>=.
38860 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 29 3b 0a 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 len_low_symbols.);.....encode_bi
38880 74 28 20 6c 6d 2e 63 68 6f 69 63 65 31 2c 20 62 69 74 20 29 3b 0a 20 20 20 20 69 66 28 20 21 62 t(.lm.choice1,.bit.);.....if(.!b
388a0 69 74 20 29 0a 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 74 72 65 65 33 28 20 6c 6d 2e 62 6d 5f 6c it.).......encode_tree3(.lm.bm_l
388c0 6f 77 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 65 6c 73 ow[pos_state],.symbol.);.....els
388e0 65 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 62 69 74 20 3d 20 28 20 28 20 73 79 6d 62 6f 6c e.......{.......bit.=.(.(.symbol
38900 20 2d 3d 20 6c 65 6e 5f 6c 6f 77 5f 73 79 6d 62 6f 6c 73 20 29 20 3e 3d 20 6c 65 6e 5f 6d 69 64 .-=.len_low_symbols.).>=.len_mid
38920 5f 73 79 6d 62 6f 6c 73 20 29 3b 0a 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 62 69 74 28 20 6c 6d _symbols.);.......encode_bit(.lm
38940 2e 63 68 6f 69 63 65 32 2c 20 62 69 74 20 29 3b 0a 20 20 20 20 20 20 69 66 28 20 21 62 69 74 20 .choice2,.bit.);.......if(.!bit.
38960 29 0a 20 20 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 74 72 65 65 33 28 20 6c 6d 2e 62 6d 5f 6d 69 ).........encode_tree3(.lm.bm_mi
38980 64 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 0a 20 20 20 20 20 20 65 6c d[pos_state],.symbol.);.......el
389a0 73 65 0a 20 20 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 74 72 65 65 38 28 20 6c 6d 2e 62 6d 5f 68 se.........encode_tree8(.lm.bm_h
389c0 69 67 68 2c 20 73 79 6d 62 6f 6c 20 2d 20 6c 65 6e 5f 6d 69 64 5f 73 79 6d 62 6f 6c 73 20 29 3b igh,.symbol.-.len_mid_symbols.);
389e0 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 7d 3b 0a 0a 0a 63 6c 61 73 73 20 4c 5a 5f 65 .......}.....}...};...class.LZ_e
38a00 6e 63 6f 64 65 72 5f 62 61 73 65 20 3a 20 70 75 62 6c 69 63 20 4d 61 74 63 68 66 69 6e 64 65 72 ncoder_base.:.public.Matchfinder
38a20 5f 62 61 73 65 0a 20 20 7b 0a 70 72 6f 74 65 63 74 65 64 3a 0a 20 20 65 6e 75 6d 20 7b 20 6d 61 _base...{.protected:...enum.{.ma
38a40 78 5f 6d 61 72 6b 65 72 5f 73 69 7a 65 20 3d 20 31 36 2c 0a 20 20 20 20 20 20 20 20 20 6e 75 6d x_marker_size.=.16,..........num
38a60 5f 72 65 70 5f 64 69 73 74 61 6e 63 65 73 20 3d 20 34 20 7d 3b 09 2f 2f 20 6d 75 73 74 20 62 65 _rep_distances.=.4.};.//.must.be
38a80 20 34 0a 0a 20 20 75 69 6e 74 33 32 5f 74 20 63 72 63 5f 3b 0a 0a 20 20 42 69 74 5f 6d 6f 64 65 .4....uint32_t.crc_;....Bit_mode
38aa0 6c 20 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 l.bm_literal[1<<literal_context_
38ac0 62 69 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 bits][0x300];...Bit_model.bm_mat
38ae0 63 68 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 ch[State::states][pos_states];..
38b00 20 42 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 .Bit_model.bm_rep[State::states]
38b20 3b 0a 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 ;...Bit_model.bm_rep0[State::sta
38b40 74 65 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 tes];...Bit_model.bm_rep1[State:
38b60 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 65 70 32 5b 53 74 :states];...Bit_model.bm_rep2[St
38b80 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 6c 65 6e ate::states];...Bit_model.bm_len
38ba0 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
38bc0 69 74 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 it_model.bm_dis_slot[len_states]
38be0 5b 31 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 [1<<dis_slot_bits];...Bit_model.
38c00 62 6d 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 bm_dis[modeled_distances-end_dis
38c20 5f 6d 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 _model+1];...Bit_model.bm_align[
38c40 64 69 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 dis_align_size];...Len_model.mat
38c60 63 68 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 ch_len_model;...Len_model.rep_le
38c80 6e 5f 6d 6f 64 65 6c 3b 0a 20 20 52 61 6e 67 65 5f 65 6e 63 6f 64 65 72 20 72 65 6e 63 3b 0a 0a n_model;...Range_encoder.renc;..
38ca0 20 20 4c 5a 5f 65 6e 63 6f 64 65 72 5f 62 61 73 65 28 20 63 6f 6e 73 74 20 69 6e 74 20 62 65 66 ..LZ_encoder_base(.const.int.bef
38cc0 6f 72 65 5f 73 69 7a 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 63 74 5f 73 69 7a 65 2c 0a 20 ore_size,.const.int.dict_size,..
38ce0 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 61 66 74 65 ..................const.int.afte
38d00 72 5f 73 69 7a 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 64 69 63 74 5f 66 61 63 74 6f 72 2c 0a 20 r_size,.const.int.dict_factor,..
38d20 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 6e 75 6d 5f ..................const.int.num_
38d40 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 32 33 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 prev_positions23,...............
38d60 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 72 2c .....const.int.pos_array_factor,
38d80 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 69 6e 74 20 69 66 ....................const.int.if
38da0 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 3a 0a 20 20 20 20 4d d,.const.int.outfd.).....:.....M
38dc0 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 28 20 62 65 66 6f 72 65 5f 73 69 7a 65 2c 20 64 69 atchfinder_base(.before_size,.di
38de0 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 66 61 63 74 6f 72 ct_size,.after_size,.dict_factor
38e00 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 75 6d 5f 70 72 65 76 ,.......................num_prev
38e20 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 74 6f 72 2c 20 _positions23,.pos_array_factor,.
38e40 69 66 64 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 ifd.),.....crc_(.0xFFFFFFFFU.),.
38e60 20 20 20 20 72 65 6e 63 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 2c 20 6f 75 74 66 64 ....renc(.dictionary_size,.outfd
38e80 20 29 0a 20 20 20 20 7b 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 63 72 63 28 29 20 63 6f 6e 73 .).....{}....unsigned.crc().cons
38ea0 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 46 55 3b 20 7d t.{.return.crc_.^.0xFFFFFFFFU;.}
38ec0 0a 0a 20 20 69 6e 74 20 70 72 69 63 65 5f 6c 69 74 65 72 61 6c 28 20 63 6f 6e 73 74 20 75 69 6e ....int.price_literal(.const.uin
38ee0 74 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 t8_t.prev_byte,.const.uint8_t.sy
38f00 6d 62 6f 6c 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 70 72 69 63 65 5f mbol.).const.....{.return.price_
38f20 73 79 6d 62 6f 6c 38 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 symbol8(.bm_literal[get_lit_stat
38f40 65 28 70 72 65 76 5f 62 79 74 65 29 5d 2c 20 73 79 6d 62 6f 6c 20 29 3b 20 7d 0a 0a 20 20 69 6e e(prev_byte)],.symbol.);.}....in
38f60 74 20 70 72 69 63 65 5f 6d 61 74 63 68 65 64 28 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 70 t.price_matched(.const.uint8_t.p
38f80 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 62 6f 6c 2c 0a rev_byte,.const.uint8_t.symbol,.
38fa0 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 75 69 6e 74 38 .....................const.uint8
38fc0 5f 74 20 6d 61 74 63 68 5f 62 79 74 65 20 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 _t.match_byte.).const.....{.retu
38fe0 72 6e 20 3a 3a 70 72 69 63 65 5f 6d 61 74 63 68 65 64 28 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 67 rn.::price_matched(.bm_literal[g
39000 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 62 6f 6c et_lit_state(prev_byte)],.symbol
39020 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 ,...............................
39040 6d 61 74 63 68 5f 62 79 74 65 20 29 3b 20 7d 0a 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 6c match_byte.);.}....void.encode_l
39060 69 74 65 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 iteral(.const.uint8_t.prev_byte,
39080 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 73 79 6d 62 6f 6c 20 29 0a 20 20 20 20 7b 20 72 65 .const.uint8_t.symbol.).....{.re
390a0 6e 63 2e 65 6e 63 6f 64 65 5f 74 72 65 65 38 28 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 67 65 74 5f nc.encode_tree8(.bm_literal[get_
390c0 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 62 6f 6c 20 29 3b lit_state(prev_byte)],.symbol.);
390e0 20 7d 0a 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 6d 61 74 63 68 65 64 28 20 63 6f 6e 73 74 .}....void.encode_matched(.const
39100 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 6e 74 38 5f .uint8_t.prev_byte,.const.uint8_
39120 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 20 20 20 20 t.symbol,.......................
39140 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 0a 20 20 20 20 .const.uint8_t.match_byte.).....
39160 7b 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 6d 61 74 63 68 65 64 28 20 62 6d 5f 6c 69 74 65 72 61 {.renc.encode_matched(.bm_litera
39180 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
391a0 62 6f 6c 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 bol,............................
391c0 6d 61 74 63 68 5f 62 79 74 65 20 29 3b 20 7d 0a 0a 20 20 76 6f 69 64 20 65 6e 63 6f 64 65 5f 70 match_byte.);.}....void.encode_p
391e0 61 69 72 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 73 2c 20 63 6f 6e 73 74 20 69 air(.const.unsigned.dis,.const.i
39200 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 20 29 0a 20 20 nt.len,.const.int.pos_state.)...
39220 20 20 7b 0a 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 6c 65 6e 28 20 6d 61 74 63 68 5f 6c ..{.....renc.encode_len(.match_l
39240 65 6e 5f 6d 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 en_model,.len,.pos_state.);.....
39260 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 73 5f 73 6c 6f 74 20 3d 20 67 65 74 5f 73 6c const.unsigned.dis_slot.=.get_sl
39280 6f 74 28 20 64 69 73 20 29 3b 0a 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 74 72 65 65 36 ot(.dis.);.....renc.encode_tree6
392a0 28 20 62 6d 5f 64 69 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 (.bm_dis_slot[get_len_state(len)
392c0 5d 2c 20 64 69 73 5f 73 6c 6f 74 20 29 3b 0a 0a 20 20 20 20 69 66 28 20 64 69 73 5f 73 6c 6f 74 ],.dis_slot.);......if(.dis_slot
392e0 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 20 20 20 7b 0a 20 20 .>=.start_dis_model.).......{...
39300 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 20 64 69 ....const.int.direct_bits.=.(.di
39320 73 5f 73 6c 6f 74 20 3e 3e 20 31 20 29 20 2d 20 31 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 s_slot.>>.1.).-.1;.......const.u
39340 6e 73 69 67 6e 65 64 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 nsigned.base.=.(.2.|.(.dis_slot.
39360 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 20 20 20 20 63 6f &.1.).).<<.direct_bits;.......co
39380 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 72 65 63 74 5f 64 69 73 20 3d 20 64 69 73 20 2d 20 nst.unsigned.direct_dis.=.dis.-.
393a0 62 61 73 65 3b 0a 0a 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 base;........if(.dis_slot.<.end_
393c0 64 69 73 5f 6d 6f 64 65 6c 20 29 0a 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f dis_model.).........renc.encode_
393e0 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 62 61 73 65 20 2d tree_reversed(.bm_dis.+.(.base.-
39400 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 20 20 20 .dis_slot.),....................
39420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 72 65 63 74 5f 64 69 73 2c 20 64 69 72 65 ................direct_dis,.dire
39440 63 74 5f 62 69 74 73 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 ct_bits.);.......else.........{.
39460 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 28 20 64 69 72 65 63 74 5f 64 69 73 20 ........renc.encode(.direct_dis.
39480 3e 3e 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 2c 20 64 69 72 65 63 74 5f 62 69 74 73 20 2d >>.dis_align_bits,.direct_bits.-
394a0 20 64 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 72 65 6e 63 2e .dis_align_bits.);.........renc.
394c0 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 61 6c 69 67 6e 2c 20 encode_tree_reversed(.bm_align,.
394e0 64 69 72 65 63 74 5f 64 69 73 2c 20 64 69 73 5f 61 6c 69 67 6e 5f 62 69 74 73 20 29 3b 0a 20 20 direct_dis,.dis_align_bits.);...
39500 20 20 20 20 20 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 66 75 ......}.......}.....}....void.fu
39520 6c 6c 5f 66 6c 75 73 68 28 20 63 6f 6e 73 74 20 53 74 61 74 65 20 73 74 61 74 65 20 29 3b 0a 0a ll_flush(.const.State.state.);..
39540 70 75 62 6c 69 63 3a 0a 20 20 76 69 72 74 75 61 6c 20 7e 4c 5a 5f 65 6e 63 6f 64 65 72 5f 62 61 public:...virtual.~LZ_encoder_ba
39560 73 65 28 29 20 7b 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 65 se().{}....unsigned.long.long.me
39580 6d 62 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 72 mber_position().const.{.return.r
395a0 65 6e 63 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 20 7d 0a 20 20 76 69 72 74 75 enc.member_position();.}...virtu
395c0 61 6c 20 76 6f 69 64 20 72 65 73 65 74 28 29 3b 0a 0a 20 20 76 69 72 74 75 61 6c 20 62 6f 6f 6c al.void.reset();....virtual.bool
395e0 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
39600 6f 6e 67 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 29 20 3d 20 30 3b 0a 20 20 7d 3b ong.long.member_size.).=.0;...};
39620 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 00 ................................
39640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
396a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
396c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
396e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
397a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
397c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
397e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39800 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 66 61 73 74 5f 65 6e 63 6f 64 65 72 2e 68 00 00 00 00 lzip-1.22-rc2/fast_encoder.h....
39820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39860 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
39880 30 30 30 33 34 37 35 00 31 33 36 35 32 36 31 31 33 30 30 00 30 30 31 34 34 35 31 00 30 00 00 00 0003475.13652611300.0014451.0...
398a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
398c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
398e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39900 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...................
39920 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...................
39940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
399a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
399c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
399e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39a00 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
39a20 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
39a40 32 30 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 20.Antonio.Diaz.Diaz......This.p
39a60 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
39a80 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..
39aa0 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.
39ac0 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
39ae0 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
39b00 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.
39b20 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).
39b40 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
39b60 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
39b80 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
39ba0 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
39bc0 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
39be0 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
39c00 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
39c20 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
39c40 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
39c60 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
39c80 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
39ca0 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:/
39cc0 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
39ce0 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
39d00 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;.../
39d20 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..
39d40 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
39d60 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.<.
39d80 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.
39da0 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
39dc0 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
39de0 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.)
39e00 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
39e20 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.)..
39e40 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
39e60 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
39e80 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+
39ea0 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
39ec0 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
39ee0 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
39f00 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;.........}.......
39f20 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
39f40 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
39f60 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
39f80 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..
39fa0 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
39fc0 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,..
39fe0 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
3a000 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.
3a020 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
3a040 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.).....
3a060 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
3a080 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_
3a0a0 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
3a0c0 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
3a0e0 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
3a100 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
3a120 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.);...};....
3a140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a200 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 6c 7a 69 70 2e 68 00 00 00 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/lzip.h............
3a220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a260 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
3a280 30 30 32 35 33 32 37 00 31 33 36 36 30 32 37 35 37 32 30 00 30 30 31 33 30 30 36 00 30 00 00 00 0025327.13660275720.0013006.0...
3a2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a2c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a300 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...................
3a320 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...................
3a340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a400 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
3a420 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
3a440 32 30 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 20.Antonio.Diaz.Diaz......This.p
3a460 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
3a480 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..
3a4a0 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.
3a4c0 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
3a4e0 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
3a500 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.
3a520 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).
3a540 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
3a560 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
3a580 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
3a5a0 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
3a5c0 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
3a5e0 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
3a600 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
3a620 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
3a640 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
3a660 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
3a680 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
3a6a0 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:/
3a6c0 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
3a6e0 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:.
3a700 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(
3a720 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()(
3a740 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
3a760 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;.}
3a780 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
3a7a0 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].=.{.
3a7c0 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,
3a7e0 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];.....}..
3a800 20 62 6f 6f 6c 20 69 73 5f 63 68 61 72 5f 73 65 74 5f 63 68 61 72 28 29 0a 20 20 20 20 7b 0a 20 .bool.is_char_set_char().....{..
3a820 20 20 20 69 66 28 20 73 74 20 3c 20 37 20 29 20 7b 20 73 74 20 2d 3d 20 28 20 73 74 20 3c 20 34 ...if(.st.<.7.).{.st.-=.(.st.<.4
3a840 20 29 20 3f 20 73 74 20 3a 20 33 3b 20 72 65 74 75 72 6e 20 74 72 75 65 3b 20 7d 0a 20 20 20 20 .).?.st.:.3;.return.true;.}.....
3a860 65 6c 73 65 20 7b 20 73 74 20 2d 3d 20 28 20 73 74 20 3c 20 31 30 20 29 20 3f 20 33 20 3a 20 36 else.{.st.-=.(.st.<.10.).?.3.:.6
3a880 3b 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 20 20 20 7d 0a 20 20 76 6f 69 64 20 73 ;.return.false;.}.....}...void.s
3a8a0 65 74 5f 63 68 61 72 5f 72 65 70 28 29 20 20 7b 20 73 74 20 3d 20 38 3b 20 7d 0a 20 20 76 6f 69 et_char_rep()..{.st.=.8;.}...voi
3a8c0 64 20 73 65 74 5f 6d 61 74 63 68 28 29 20 20 20 20 20 7b 20 73 74 20 3d 20 28 20 73 74 20 3c 20 d.set_match().....{.st.=.(.st.<.
3a8e0 37 20 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 7.).?.7.:.10;.}...void.set_rep()
3a900 20 20 20 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 .......{.st.=.(.st.<.7.).?.8.:.1
3a920 31 3b 20 7d 0a 20 20 76 6f 69 64 20 73 65 74 5f 73 68 6f 72 74 5f 72 65 70 28 29 20 7b 20 73 74 1;.}...void.set_short_rep().{.st
3a940 20 3d 20 28 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 .=.(.st.<.7.).?.9.:.11;.}...};..
3a960 0a 65 6e 75 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 .enum.{...min_dictionary_bits.=.
3a980 31 32 2c 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 12,...min_dictionary_size.=.1.<<
3a9a0 20 6d 69 6e 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 .min_dictionary_bits,.//.>=.mode
3a9c0 6c 65 64 5f 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 led_distances...max_dictionary_b
3a9e0 69 74 73 20 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 its.=.29,...max_dictionary_size.
3aa00 3d 20 31 20 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 =.1.<<.max_dictionary_bits,...mi
3aa20 6e 5f 6d 65 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 n_member_size.=.36,...literal_co
3aa40 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 70 6f 73 5f 73 74 ntext_bits.=.3,...literal_pos_st
3aa60 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 65 64 0a 20 20 70 ate_bits.=.0,....//.not.used...p
3aa80 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 74 61 74 65 73 20 os_state_bits.=.2,...pos_states.
3aaa0 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 6f 73 5f 73 74 61 =.1.<<.pos_state_bits,...pos_sta
3aac0 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 0a 20 20 6c 65 6e te_mask.=.pos_states.-.1,....len
3aae0 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 74 73 20 3d 20 36 _states.=.4,...dis_slot_bits.=.6
3ab00 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 20 65 6e 64 5f 64 ,...start_dis_model.=.4,...end_d
3ab20 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 69 73 74 61 6e 63 is_model.=.14,...modeled_distanc
3ab40 65 73 20 3d 20 31 20 3c 3c 20 28 65 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 20 2f 20 32 29 2c 09 09 es.=.1.<<.(end_dis_model./.2),..
3ab60 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 20 34 2c 0a 20 20 64 //.128...dis_align_bits.=.4,...d
3ab80 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 61 6c 69 67 6e 5f 62 is_align_size.=.1.<<.dis_align_b
3aba0 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 0a 20 20 6c 65 6e 5f its,....len_low_bits.=.3,...len_
3abc0 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 62 69 74 73 20 3d 20 mid_bits.=.3,...len_high_bits.=.
3abe0 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 3c 3c 20 6c 65 6e 5f 8,...len_low_symbols.=.1.<<.len_
3ac00 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 6c 73 20 3d 20 31 20 low_bits,...len_mid_symbols.=.1.
3ac20 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 67 68 5f 73 79 6d 62 <<.len_mid_bits,...len_high_symb
3ac40 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 0a 20 20 6d 61 78 5f ols.=.1.<<.len_high_bits,...max_
3ac60 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 62 6f 6c 73 20 2b 20 len_symbols.=.len_low_symbols.+.
3ac80 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 68 5f 73 79 6d 62 6f len_mid_symbols.+.len_high_symbo
3aca0 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 09 09 09 09 09 2f 2f ls,....min_match_len.=.2,.....//
3acc0 20 6d 75 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 .must.be.2...max_match_len.=.min
3ace0 5f 6d 61 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 _match_len.+.max_len_symbols.-.1
3ad00 2c 09 2f 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 ,.//.273...min_match_len_limit.=
3ad20 20 35 20 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 .5.};..inline.int.get_len_state(
3ad40 20 63 6f 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 .const.int.len.)...{.return.std:
3ad60 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 65 6e 5f 73 :min(.len.-.min_match_len,.len_s
3ad80 74 61 74 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 tates.-.1.);.}..inline.int.get_l
3ada0 69 74 5f 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 it_state(.const.uint8_t.prev_byt
3adc0 65 20 29 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 e.)...{.return.prev_byte.>>.(.8.
3ade0 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 20 7d 0a 0a 0a 65 6e -.literal_context_bits.);.}...en
3ae00 75 6d 20 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 um.{.bit_model_move_bits.=.5,...
3ae20 20 20 20 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 .....bit_model_total_bits.=.11,.
3ae40 20 20 20 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 .......bit_model_total.=.1.<<.bi
3ae60 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 75 63 74 20 42 69 t_model_total_bits.};..struct.Bi
3ae80 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 69 74 79 3b 0a 20 t_model...{...int.probability;..
3aea0 20 76 6f 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 .void.reset().{.probability.=.bi
3aec0 74 5f 6d 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 t_model_total./.2;.}...void.rese
3aee0 74 28 20 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 t(.const.int.size.).....{.for(.i
3af00 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 20 74 68 69 73 5b 69 nt.i.=.0;.i.<.size;.++i.).this[i
3af20 5d 2e 72 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 ].reset();.}...Bit_model().{.res
3af40 65 74 28 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 et();.}...};..struct.Len_model..
3af60 20 7b 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 .{...Bit_model.choice1;...Bit_mo
3af80 64 65 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 del.choice2;...Bit_model.bm_low[
3afa0 70 6f 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 pos_states][len_low_symbols];...
3afc0 42 69 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 Bit_model.bm_mid[pos_states][len
3afe0 5f 6d 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 _mid_symbols];...Bit_model.bm_hi
3b000 67 68 5b 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 gh[len_high_symbols];....void.re
3b020 73 65 74 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 set().....{.....choice1.reset();
3b040 0a 20 20 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 .....choice2.reset();.....bm_low
3b060 5b 30 5d 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 [0][0].reset(.pos_states.*.len_l
3b080 6f 77 5f 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 ow_symbols.);.....bm_mid[0][0].r
3b0a0 65 73 65 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 eset(.pos_states.*.len_mid_symbo
3b0c0 6c 73 20 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 ls.);.....bm_high[0].reset(.len_
3b0e0 68 69 67 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 high_symbols.);.....}...};...//.
3b100 64 65 66 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 defined.in.main.cc.extern.int.ve
3b120 72 62 6f 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 rbosity;..class.Pretty_print..//
3b140 20 72 65 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 .requires.global.var.'int.verbos
3b160 69 74 79 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 ity'...{...std::string.name_;...
3b180 73 74 64 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 std::string.padded_name;...const
3b1a0 20 63 68 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 .char.*.const.stdin_name;...unsi
3b1c0 67 6e 65 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 gned.longest_name;...mutable.boo
3b1e0 6c 20 66 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 l.first_post;..public:...Pretty_
3b200 70 72 69 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 print(.const.std::vector<.std::s
3b220 74 72 69 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 tring.>.&.filenames.).....:.stdi
3b240 6e 5f 6e 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 n_name(."(stdin)".),.longest_nam
3b260 65 28 20 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 e(.0.),.first_post(.false.).....
3b280 7b 0a 20 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 {.....if(.verbosity.<=.0.).retur
3b2a0 6e 3b 0a 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 n;.....const.unsigned.stdin_name
3b2c0 5f 6c 65 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 _len.=.std::strlen(.stdin_name.)
3b2e0 3b 0a 20 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 ;.....for(.unsigned.i.=.0;.i.<.f
3b300 69 6c 65 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 ilenames.size();.++i.).......{..
3b320 20 20 20 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 .....const.std::string.&.s.=.fil
3b340 65 6e 61 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 enames[i];.......const.unsigned.
3b360 6c 65 6e 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 len.=.(.s.==."-".).?.stdin_name_
3b380 6c 65 6e 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 len.:.s.size();.......if(.longes
3b3a0 74 5f 6e 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 t_name.<.len.).longest_name.=.le
3b3c0 6e 3b 0a 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 n;.......}.....if(.longest_name.
3b3e0 3d 3d 20 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 ==.0.).longest_name.=.stdin_name
3b400 5f 6c 65 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 _len;.....}....void.set_name(.co
3b420 6e 73 74 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 nst.std::string.&.filename.)....
3b440 20 7b 0a 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 .{.....if(.filename.size().&&.fi
3b460 6c 65 6e 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 lename.!=."-".).name_.=.filename
3b480 3b 0a 20 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 ;.....else.name_.=.stdin_name;..
3b4a0 20 20 20 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 ...padded_name.=."..";.padded_na
3b4c0 6d 65 20 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 me.+=.name_;.padded_name.+=.":."
3b4e0 3b 0a 20 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 ;.....if(.longest_name.>.name_.s
3b500 69 7a 65 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 ize().).......padded_name.append
3b520 28 20 6c 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 (.longest_name.-.name_.size(),.'
3b540 20 27 20 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 .'.);.....first_post.=.true;....
3b560 20 7d 0a 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 .}....void.reset().const.{.if(.n
3b580 61 6d 65 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 ame_.size().).first_post.=.true;
3b5a0 20 7d 0a 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 .}...const.char.*.name().const.{
3b5c0 20 72 65 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 .return.name_.c_str();.}...void.
3b5e0 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 20 6d operator()(.const.char.*.const.m
3b600 73 67 20 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 sg.=.0.).const;...};...class.CRC
3b620 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 09 09 2f 2f 32...{...uint32_t.data[256];..//
3b640 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 6d 65 73 73 .Table.of.CRCs.of.all.8-bit.mess
3b660 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 20 7b 0a 20 ages...public:...CRC32().....{..
3b680 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 32 35 36 3b ...for(.unsigned.n.=.0;.n.<.256;
3b6a0 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 64 20 63 20 .++n.).......{.......unsigned.c.
3b6c0 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 20 3c 20 38 =.n;.......for(.int.k.=.0;.k.<.8
3b6e0 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 29 20 63 20 ;.++k.).........{.if(.c.&.1.).c.
3b700 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 65 6c 73 65 =.0xEDB88320U.^.(.c.>>.1.);.else
3b720 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 63 3b 0a 20 .c.>>=.1;.}.......data[n].=.c;..
3b740 20 20 20 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 .....}.....}....uint32_t.operato
3b760 72 5b 5d 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 r[](.const.uint8_t.byte.).const.
3b780 7b 20 72 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 {.return.data[byte];.}....void.u
3b7a0 70 64 61 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 pdate_byte(.uint32_t.&.crc,.cons
3b7c0 74 20 75 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 t.uint8_t.byte.).const.....{.crc
3b7e0 20 3d 20 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 .=.data[(crc^byte)&0xFF].^.(.crc
3b800 20 3e 3e 20 38 20 29 3b 20 7d 0a 0a 20 20 76 6f 69 64 20 75 70 64 61 74 65 5f 62 75 66 28 20 75 .>>.8.);.}....void.update_buf(.u
3b820 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 20 63 int32_t.&.crc,.const.uint8_t.*.c
3b840 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 20 20 onst.buffer,....................
3b860 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 20 20 const.int.size.).const.....{....
3b880 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 74 20 .uint32_t.c.=.crc;.....for(.int.
3b8a0 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 20 3d i.=.0;.i.<.size;.++i.).......c.=
3b8c0 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 63 20 .data[(c^buffer[i])&0xFF].^.(.c.
3b8e0 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 3b 0a >>.8.);.....crc.=.c;.....}...};.
3b900 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 6e 6c .extern.const.CRC32.crc32;...inl
3b920 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 69 67 ine.bool.isvalid_ds(.const.unsig
3b940 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 72 6e ned.dictionary_size.)...{.return
3b960 20 28 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 .(.dictionary_size.>=.min_dictio
3b980 6e 61 72 79 5f 73 69 7a 65 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 63 74 69 6f nary_size.&&..............dictio
3b9a0 6e 61 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 nary_size.<=.max_dictionary_size
3b9c0 20 29 3b 20 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 .);.}...inline.int.real_bits(.un
3b9e0 73 69 67 6e 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 signed.value.)...{...int.bits.=.
3ba00 30 3b 0a 20 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 0;...while(.value.>.0.).{.value.
3ba20 3e 3e 3d 20 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 >>=.1;.++bits;.}...return.bits;.
3ba40 20 20 7d 0a 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 ..}...const.uint8_t.lzip_magic[4
3ba60 5d 20 3d 20 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 ].=.{.0x4C,.0x5A,.0x49,.0x50.};.
3ba80 2f 2f 20 22 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 //."LZIP"..struct.Lzip_header...
3baa0 7b 0a 20 20 75 69 6e 74 38 5f 74 20 64 61 74 61 5b 36 5d 3b 09 09 09 2f 2f 20 30 2d 33 20 6d 61 {...uint8_t.data[6];...//.0-3.ma
3bac0 67 69 63 20 62 79 74 65 73 0a 09 09 09 09 09 2f 2f 20 20 20 34 20 76 65 72 73 69 6f 6e 0a 09 09 gic.bytes......//...4.version...
3bae0 09 09 09 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 7a 65 0a ...//...5.coded.dictionary.size.
3bb00 20 20 65 6e 75 6d 20 7b 20 73 69 7a 65 20 3d 20 36 20 7d 3b 0a 0a 20 20 76 6f 69 64 20 73 65 74 ..enum.{.size.=.6.};....void.set
3bb20 5f 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 _magic().{.std::memcpy(.data,.lz
3bb40 69 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 ip_magic,.4.);.data[4].=.1;.}...
3bb60 62 6f 6f 6c 20 76 65 72 69 66 79 5f 6d 61 67 69 63 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 bool.verify_magic().const.....{.
3bb80 72 65 74 75 72 6e 20 28 20 73 74 64 3a 3a 6d 65 6d 63 6d 70 28 20 64 61 74 61 2c 20 6c 7a 69 70 return.(.std::memcmp(.data,.lzip
3bba0 5f 6d 61 67 69 63 2c 20 34 20 29 20 3d 3d 20 30 20 29 3b 20 7d 0a 0a 20 20 62 6f 6f 6c 20 76 65 _magic,.4.).==.0.);.}....bool.ve
3bbc0 72 69 66 79 5f 70 72 65 66 69 78 28 20 63 6f 6e 73 74 20 69 6e 74 20 73 7a 20 29 20 63 6f 6e 73 rify_prefix(.const.int.sz.).cons
3bbe0 74 09 2f 2f 20 64 65 74 65 63 74 20 28 74 72 75 6e 63 61 74 65 64 29 20 68 65 61 64 65 72 0a 20 t.//.detect.(truncated).header..
3bc00 20 20 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 7a 20 ...{.....for(.int.i.=.0;.i.<.sz.
3bc20 26 26 20 69 20 3c 20 34 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 69 66 28 20 64 61 74 61 5b 69 &&.i.<.4;.++i.).......if(.data[i
3bc40 5d 20 21 3d 20 6c 7a 69 70 5f 6d 61 67 69 63 5b 69 5d 20 29 20 72 65 74 75 72 6e 20 66 61 6c 73 ].!=.lzip_magic[i].).return.fals
3bc60 65 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 28 20 73 7a 20 3e 20 30 20 29 3b 0a 20 20 20 20 7d 0a e;.....return.(.sz.>.0.);.....}.
3bc80 20 20 62 6f 6f 6c 20 76 65 72 69 66 79 5f 63 6f 72 72 75 70 74 28 29 20 63 6f 6e 73 74 09 09 09 ..bool.verify_corrupt().const...
3bca0 2f 2f 20 64 65 74 65 63 74 20 63 6f 72 72 75 70 74 20 68 65 61 64 65 72 0a 20 20 20 20 7b 0a 20 //.detect.corrupt.header.....{..
3bcc0 20 20 20 69 6e 74 20 6d 61 74 63 68 65 73 20 3d 20 30 3b 0a 20 20 20 20 66 6f 72 28 20 69 6e 74 ...int.matches.=.0;.....for(.int
3bce0 20 69 20 3d 20 30 3b 20 69 20 3c 20 34 3b 20 2b 2b 69 20 29 0a 20 20 20 20 20 20 69 66 28 20 64 .i.=.0;.i.<.4;.++i.).......if(.d
3bd00 61 74 61 5b 69 5d 20 3d 3d 20 6c 7a 69 70 5f 6d 61 67 69 63 5b 69 5d 20 29 20 2b 2b 6d 61 74 63 ata[i].==.lzip_magic[i].).++matc
3bd20 68 65 73 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 28 20 6d 61 74 63 68 65 73 20 3e 20 31 20 26 26 hes;.....return.(.matches.>.1.&&
3bd40 20 6d 61 74 63 68 65 73 20 3c 20 34 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 69 6e 74 38 5f 74 .matches.<.4.);.....}....uint8_t
3bd60 20 76 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 .version().const.{.return.data[4
3bd80 5d 3b 20 7d 0a 20 20 62 6f 6f 6c 20 76 65 72 69 66 79 5f 76 65 72 73 69 6f 6e 28 29 20 63 6f 6e ];.}...bool.verify_version().con
3bda0 73 74 20 7b 20 72 65 74 75 72 6e 20 28 20 64 61 74 61 5b 34 5d 20 3d 3d 20 31 20 29 3b 20 7d 0a st.{.return.(.data[4].==.1.);.}.
3bdc0 0a 20 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 28 29 20 63 6f ...unsigned.dictionary_size().co
3bde0 6e 73 74 0a 20 20 20 20 7b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 73 7a 20 3d 20 28 20 31 20 nst.....{.....unsigned.sz.=.(.1.
3be00 3c 3c 20 28 20 64 61 74 61 5b 35 5d 20 26 20 30 78 31 46 20 29 20 29 3b 0a 20 20 20 20 69 66 28 <<.(.data[5].&.0x1F.).);.....if(
3be20 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 20 20 20 20 .sz.>.min_dictionary_size.).....
3be40 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 74 61 5b 35 ..sz.-=.(.sz./.16.).*.(.(.data[5
3be60 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 7a 3b 0a 20 ].>>.5.).&.7.);.....return.sz;..
3be80 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 28 20 63 6f ...}....bool.dictionary_size(.co
3bea0 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 69 66 28 20 nst.unsigned.sz.).....{.....if(.
3bec0 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 61 6c 73 65 !isvalid_ds(.sz.).).return.false
3bee0 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 7a 20 2d 20 ;.....data[5].=.real_bits(.sz.-.
3bf00 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 6e 61 72 79 1.);.....if(.sz.>.min_dictionary
3bf20 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 75 6e 73 69 _size.).......{.......const.unsi
3bf40 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 5d 3b 0a 20 gned.base_size.=.1.<<.data[5];..
3bf60 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 20 3d 20 62 .....const.unsigned.fraction.=.b
3bf80 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 73 69 67 6e ase_size./.16;.......for(.unsign
3bfa0 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 20 20 20 20 ed.i.=.7;.i.>=.1;.--i.).........
3bfc0 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 6f 6e 20 29 if(.base_size.-.(.i.*.fraction.)
3bfe0 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 20 7c 3d 20 .>=.sz.)...........{.data[5].|=.
3c000 28 20 69 20 3c 3c 20 35 20 29 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;.}.......}....
3c020 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 76 65 72 69 .return.true;.....}....bool.veri
3c040 66 79 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 72 65 74 75 72 6e 20 76 65 72 69 66 79 5f 6d fy().const.....{.return.verify_m
3c060 61 67 69 63 28 29 20 26 26 20 76 65 72 69 66 79 5f 76 65 72 73 69 6f 6e 28 29 20 26 26 0a 20 20 agic().&&.verify_version().&&...
3c080 20 20 20 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 ...........isvalid_ds(.dictionar
3c0a0 79 5f 73 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 y_size().);.}...};...struct.Lzip
3c0c0 5f 74 72 61 69 6c 65 72 0a 20 20 7b 0a 20 20 75 69 6e 74 38 5f 74 20 64 61 74 61 5b 32 30 5d 3b _trailer...{...uint8_t.data[20];
3c0e0 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 6f 6d 70 72 65 73 .//..0-3..CRC32.of.the.uncompres
3c100 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 6f 66 20 74 68 65 sed.data....//..4-11.size.of.the
3c120 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 32 2d 31 39 20 6d .uncompressed.data....//.12-19.m
3c140 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 72 20 61 6e 64 20 ember.size.including.header.and.
3c160 74 72 61 69 6c 65 72 0a 20 20 65 6e 75 6d 20 7b 20 73 69 7a 65 20 3d 20 32 30 20 7d 3b 0a 0a 20 trailer...enum.{.size.=.20.};...
3c180 20 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 .unsigned.data_crc().const.....{
3c1a0 0a 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 .....unsigned.tmp.=.0;.....for(.
3c1c0 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 7b 20 74 6d 70 20 3c int.i.=.3;.i.>=.0;.--i.).{.tmp.<
3c1e0 3c 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 <=.8;.tmp.+=.data[i];.}.....retu
3c200 72 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 rn.tmp;.....}....void.data_crc(.
3c220 75 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 unsigned.crc.).....{.for(.int.i.
3c240 3d 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 =.0;.i.<=.3;.++i.).{.data[i].=.(
3c260 75 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 uint8_t)crc;.crc.>>=.8;.}.}....u
3c280 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 28 29 20 63 6f nsigned.long.long.data_size().co
3c2a0 6e 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 nst.....{.....unsigned.long.long
3c2c0 20 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 .tmp.=.0;.....for(.int.i.=.11;.i
3c2e0 20 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 .>=.4;.--i.).{.tmp.<<=.8;.tmp.+=
3c300 20 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 .data[i];.}.....return.tmp;.....
3c320 7d 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 }....void.data_size(.unsigned.lo
3c340 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 20 ng.long.sz.).....{.for(.int.i.=.
3c360 34 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 4;.i.<=.11;.++i.).{.data[i].=.(u
3c380 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 75 6e 73 69 int8_t)sz;.sz.>>=.8;.}.}....unsi
3c3a0 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 28 29 20 63 6f 6e gned.long.long.member_size().con
3c3c0 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.
3c3e0 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 39 3b 20 69 20 tmp.=.0;.....for(.int.i.=.19;.i.
3c400 3e 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 >=.12;.--i.).{.tmp.<<=.8;.tmp.+=
3c420 20 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 .data[i];.}.....return.tmp;.....
3c440 7d 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 }....void.member_size(.unsigned.
3c460 6c 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 long.long.sz.).....{.for(.int.i.
3c480 3d 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 =.12;.i.<=.19;.++i.).{.data[i].=
3c4a0 20 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 .(uint8_t)sz;.sz.>>=.8;.}.}....b
3c4c0 6f 6f 6c 20 76 65 72 69 66 79 5f 63 6f 6e 73 69 73 74 65 6e 63 79 28 29 20 63 6f 6e 73 74 09 2f ool.verify_consistency().const./
3c4e0 2f 20 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 /.check.internal.consistency....
3c500 20 7b 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 .{.....const.unsigned.crc.=.data
3c520 5f 63 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 _crc();.....const.unsigned.long.
3c540 6c 6f 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 long.dsize.=.data_size();.....if
3c560 28 20 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 (.(.crc.==.0.).!=.(.dsize.==.0.)
3c580 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 69 67 .).return.false;.....const.unsig
3c5a0 6e 65 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 ned.long.long.msize.=.member_siz
3c5c0 65 28 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 e();.....if(.msize.<.min_member_
3c5e0 73 69 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 size.).return.false;.....const.u
3c600 6e 73 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 nsigned.long.long.mlimit.=.(.9.*
3c620 20 64 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 .dsize.+.7.)./.8.+.min_member_si
3c640 7a 65 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 ze;.....if(.mlimit.>.dsize.&&.ms
3c660 69 7a 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 ize.>.mlimit.).return.false;....
3c680 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 64 6c 69 6d 69 74 .const.unsigned.long.long.dlimit
3c6a0 20 3d 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 .=.7090.*.(.msize.-.26.).-.1;...
3c6c0 20 20 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 ..if(.dlimit.>.msize.&&.dsize.>.
3c6e0 64 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 72 65 74 75 72 dlimit.).return.false;.....retur
3c700 6e 20 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 45 72 72 6f n.true;.....}...};...struct.Erro
3c720 72 0a 20 20 7b 0a 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 6d 73 67 3b 0a r...{...const.char.*.const.msg;.
3c740 20 20 65 78 70 6c 69 63 69 74 20 45 72 72 6f 72 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 ..explicit.Error(.const.char.*.c
3c760 6f 6e 73 74 20 73 20 29 20 3a 20 6d 73 67 28 20 73 20 29 20 7b 7d 0a 20 20 7d 3b 0a 0a 69 6e 6c onst.s.).:.msg(.s.).{}...};..inl
3c780 69 6e 65 20 76 6f 69 64 20 73 65 74 5f 72 65 74 76 61 6c 28 20 69 6e 74 20 26 20 72 65 74 76 61 ine.void.set_retval(.int.&.retva
3c7a0 6c 2c 20 63 6f 6e 73 74 20 69 6e 74 20 6e 65 77 5f 76 61 6c 20 29 0a 20 20 7b 20 69 66 28 20 72 l,.const.int.new_val.)...{.if(.r
3c7c0 65 74 76 61 6c 20 3c 20 6e 65 77 5f 76 61 6c 20 29 20 72 65 74 76 61 6c 20 3d 20 6e 65 77 5f 76 etval.<.new_val.).retval.=.new_v
3c7e0 61 6c 3b 20 7d 0a 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 62 61 64 5f 6d 61 al;.}..const.char.*.const.bad_ma
3c800 67 69 63 5f 6d 73 67 20 3d 20 22 42 61 64 20 6d 61 67 69 63 20 6e 75 6d 62 65 72 20 28 66 69 6c gic_msg.=."Bad.magic.number.(fil
3c820 65 20 6e 6f 74 20 69 6e 20 6c 7a 69 70 20 66 6f 72 6d 61 74 29 2e 22 3b 0a 63 6f 6e 73 74 20 63 e.not.in.lzip.format).";.const.c
3c840 68 61 72 20 2a 20 63 6f 6e 73 74 20 62 61 64 5f 64 69 63 74 5f 6d 73 67 20 3d 20 22 49 6e 76 61 har.*.const.bad_dict_msg.=."Inva
3c860 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 62 65 72 20 68 65 lid.dictionary.size.in.member.he
3c880 61 64 65 72 2e 22 3b 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 63 6f 72 72 75 ader.";.const.char.*.const.corru
3c8a0 70 74 5f 6d 6d 5f 6d 73 67 20 3d 20 22 43 6f 72 72 75 70 74 20 68 65 61 64 65 72 20 69 6e 20 6d pt_mm_msg.=."Corrupt.header.in.m
3c8c0 75 6c 74 69 6d 65 6d 62 65 72 20 66 69 6c 65 2e 22 3b 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 ultimember.file.";.const.char.*.
3c8e0 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 20 64 const.trailing_msg.=."Trailing.d
3c900 61 74 61 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2e 22 3b 0a 0a 2f 2f 20 64 65 66 69 6e 65 64 20 69 ata.not.allowed.";..//.defined.i
3c920 6e 20 64 65 63 6f 64 65 72 2e 63 63 0a 69 6e 74 20 72 65 61 64 62 6c 6f 63 6b 28 20 63 6f 6e 73 n.decoder.cc.int.readblock(.cons
3c940 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
3c960 6f 6e 73 74 20 69 6e 74 20 73 69 7a 65 20 29 3b 0a 69 6e 74 20 77 72 69 74 65 62 6c 6f 63 6b 28 onst.int.size.);.int.writeblock(
3c980 20 63 6f 6e 73 74 20 69 6e 74 20 66 64 2c 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 2a 20 63 .const.int.fd,.const.uint8_t.*.c
3c9a0 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 3b 0a 0a 2f 2f 20 onst.buf,.const.int.size.);..//.
3c9c0 64 65 66 69 6e 65 64 20 69 6e 20 6c 69 73 74 2e 63 63 0a 69 6e 74 20 6c 69 73 74 5f 66 69 6c 65 defined.in.list.cc.int.list_file
3c9e0 73 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 6e s(.const.std::vector<.std::strin
3ca00 67 20 3e 20 26 20 66 69 6c 65 6e 61 6d 65 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 g.>.&.filenames,................
3ca20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 2c 20 63 6f 6e .const.bool.ignore_trailing,.con
3ca40 73 74 20 62 6f 6f 6c 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 20 29 3b 0a 0a 2f 2f 20 64 65 st.bool.loose_trailing.);..//.de
3ca60 66 69 6e 65 64 20 69 6e 20 6d 61 69 6e 2e 63 63 0a 73 74 72 75 63 74 20 73 74 61 74 3b 0a 63 6f fined.in.main.cc.struct.stat;.co
3ca80 6e 73 74 20 63 68 61 72 20 2a 20 62 61 64 5f 76 65 72 73 69 6f 6e 28 20 63 6f 6e 73 74 20 75 6e nst.char.*.bad_version(.const.un
3caa0 73 69 67 6e 65 64 20 76 65 72 73 69 6f 6e 20 29 3b 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 66 signed.version.);.const.char.*.f
3cac0 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 6e ormat_ds(.const.unsigned.diction
3cae0 61 72 79 5f 73 69 7a 65 20 29 3b 0a 76 6f 69 64 20 73 68 6f 77 5f 68 65 61 64 65 72 28 20 63 6f ary_size.);.void.show_header(.co
3cb00 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 3b 0a nst.unsigned.dictionary_size.);.
3cb20 69 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 int.open_instream(.const.char.*.
3cb40 63 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 const.name,.struct.stat.*.const.
3cb60 69 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 in_statsp,....................co
3cb80 6e 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 nst.bool.one_to_one,.const.bool.
3cba0 72 65 67 5f 6f 6e 6c 79 20 3d 20 66 61 6c 73 65 20 29 3b 0a 76 6f 69 64 20 73 68 6f 77 5f 65 72 reg_only.=.false.);.void.show_er
3cbc0 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 2c 20 63 6f 6e ror(.const.char.*.const.msg,.con
3cbe0 73 74 20 69 6e 74 20 65 72 72 63 6f 64 65 20 3d 20 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 st.int.errcode.=.0,.............
3cc00 20 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 68 65 6c 70 20 3d 20 66 61 6c 73 65 20 29 3b 0a .....const.bool.help.=.false.);.
3cc20 76 6f 69 64 20 73 68 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 void.show_file_error(.const.char
3cc40 20 2a 20 63 6f 6e 73 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 .*.const.filename,.const.char.*.
3cc60 63 6f 6e 73 74 20 6d 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 const.msg,......................
3cc80 20 63 6f 6e 73 74 20 69 6e 74 20 65 72 72 63 6f 64 65 20 3d 20 30 20 29 3b 0a 76 6f 69 64 20 69 .const.int.errcode.=.0.);.void.i
3cca0 6e 74 65 72 6e 61 6c 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 nternal_error(.const.char.*.cons
3ccc0 74 20 6d 73 67 20 29 3b 0a 63 6c 61 73 73 20 4d 61 74 63 68 66 69 6e 64 65 72 5f 62 61 73 65 3b t.msg.);.class.Matchfinder_base;
3cce0 0a 76 6f 69 64 20 73 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 .void.show_cprogress(.const.unsi
3cd00 67 6e 65 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 gned.long.long.cfile_size.=.0,..
3cd20 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 75 6e 73 69 67 6e ....................const.unsign
3cd40 65 64 20 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 ed.long.long.partial_size.=.0,..
3cd60 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 4d 61 74 63 68 66 ....................const.Matchf
3cd80 69 6e 64 65 72 5f 62 61 73 65 20 2a 20 63 6f 6e 73 74 20 6d 20 3d 20 30 2c 0a 20 20 20 20 20 20 inder_base.*.const.m.=.0,.......
3cda0 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 72 69 6e ...............const.Pretty_prin
3cdc0 74 20 2a 20 63 6f 6e 73 74 20 70 20 3d 20 30 20 29 3b 0a 63 6c 61 73 73 20 52 61 6e 67 65 5f 64 t.*.const.p.=.0.);.class.Range_d
3cde0 65 63 6f 64 65 72 3b 0a 76 6f 69 64 20 73 68 6f 77 5f 64 70 72 6f 67 72 65 73 73 28 20 63 6f 6e ecoder;.void.show_dprogress(.con
3ce00 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 63 66 69 6c 65 5f 73 69 7a 65 st.unsigned.long.long.cfile_size
3ce20 20 3d 20 30 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 74 .=.0,......................const
3ce40 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 73 69 7a 65 .unsigned.long.long.partial_size
3ce60 20 3d 20 30 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 74 .=.0,......................const
3ce80 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 2a 20 63 6f 6e 73 74 20 64 20 3d 20 30 2c 0a 20 20 .Range_decoder.*.const.d.=.0,...
3cea0 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 50 72 65 74 74 79 5f ...................const.Pretty_
3cec0 70 72 69 6e 74 20 2a 20 63 6f 6e 73 74 20 70 20 3d 20 30 20 29 3b 0a 00 00 00 00 00 00 00 00 00 print.*.const.p.=.0.);..........
3cee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3cf00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3cf20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3cf40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3cf60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3cf80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3cfa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3cfc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3cfe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d000 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 6c 7a 69 70 5f 69 6e 64 65 78 2e 68 00 00 00 00 00 00 lzip-1.22-rc2/lzip_index.h......
3d020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d060 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
3d080 30 30 30 36 30 31 34 00 31 33 36 35 32 36 31 31 33 30 30 00 30 30 31 34 31 35 32 00 30 00 00 00 0006014.13652611300.0014152.0...
3d0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d100 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...................
3d120 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...................
3d140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d200 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
3d220 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
3d240 32 30 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 20.Antonio.Diaz.Diaz......This.p
3d260 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
3d280 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..
3d2a0 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.
3d2c0 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
3d2e0 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
3d300 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.
3d320 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).
3d340 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
3d360 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
3d380 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
3d3a0 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
3d3c0 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
3d3e0 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
3d400 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
3d420 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
3d440 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
3d460 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
3d480 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
3d4a0 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:/
3d4c0 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
3d4e0 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
3d500 20 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 ..0x7FFFFFFFFFFFFFFFLL.#endif...
3d520 63 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 class.Block...{...long.long.pos_
3d540 2c 20 73 69 7a 65 5f 3b 09 09 2f 2f 20 70 6f 73 20 2b 20 73 69 7a 65 20 3c 3d 20 49 4e 54 36 34 ,.size_;..//.pos.+.size.<=.INT64
3d560 5f 4d 41 58 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 42 6c 6f 63 6b 28 20 63 6f 6e 73 74 20 6c 6f 6e _MAX..public:...Block(.const.lon
3d580 67 20 6c 6f 6e 67 20 70 2c 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 73 20 29 20 3a 20 g.long.p,.const.long.long.s.).:.
3d5a0 70 6f 73 5f 28 20 70 20 29 2c 20 73 69 7a 65 5f 28 20 73 20 29 20 7b 7d 0a 0a 20 20 6c 6f 6e 67 pos_(.p.),.size_(.s.).{}....long
3d5c0 20 6c 6f 6e 67 20 70 6f 73 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 70 6f 73 5f 3b .long.pos().const.{.return.pos_;
3d5e0 20 7d 0a 20 20 6c 6f 6e 67 20 6c 6f 6e 67 20 73 69 7a 65 28 29 20 63 6f 6e 73 74 20 7b 20 72 65 .}...long.long.size().const.{.re
3d600 74 75 72 6e 20 73 69 7a 65 5f 3b 20 7d 0a 20 20 6c 6f 6e 67 20 6c 6f 6e 67 20 65 6e 64 28 29 20 turn.size_;.}...long.long.end().
3d620 63 6f 6e 73 74 20 7b 20 72 65 74 75 72 6e 20 70 6f 73 5f 20 2b 20 73 69 7a 65 5f 3b 20 7d 0a 0a const.{.return.pos_.+.size_;.}..
3d640 20 20 76 6f 69 64 20 70 6f 73 28 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 20 29 20 ..void.pos(.const.long.long.p.).
3d660 7b 20 70 6f 73 5f 20 3d 20 70 3b 20 7d 0a 20 20 76 6f 69 64 20 73 69 7a 65 28 20 63 6f 6e 73 74 {.pos_.=.p;.}...void.size(.const
3d680 20 6c 6f 6e 67 20 6c 6f 6e 67 20 73 20 29 20 7b 20 73 69 7a 65 5f 20 3d 20 73 3b 20 7d 0a 20 20 .long.long.s.).{.size_.=.s;.}...
3d6a0 7d 3b 0a 0a 0a 63 6c 61 73 73 20 4c 7a 69 70 5f 69 6e 64 65 78 0a 20 20 7b 0a 20 20 73 74 72 75 };...class.Lzip_index...{...stru
3d6c0 63 74 20 4d 65 6d 62 65 72 0a 20 20 20 20 7b 0a 20 20 20 20 42 6c 6f 63 6b 20 64 62 6c 6f 63 6b ct.Member.....{.....Block.dblock
3d6e0 2c 20 6d 62 6c 6f 63 6b 3b 09 09 2f 2f 20 64 61 74 61 20 62 6c 6f 63 6b 2c 20 6d 65 6d 62 65 72 ,.mblock;..//.data.block,.member
3d700 20 62 6c 6f 63 6b 0a 20 20 20 20 75 6e 73 69 67 6e 65 64 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 .block.....unsigned.dictionary_s
3d720 69 7a 65 3b 0a 0a 20 20 20 20 4d 65 6d 62 65 72 28 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e ize;......Member(.const.long.lon
3d740 67 20 64 70 2c 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 64 73 2c 0a 20 20 20 20 20 20 g.dp,.const.long.long.ds,.......
3d760 20 20 20 20 20 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 70 2c 20 63 6f 6e 73 74 20 ......const.long.long.mp,.const.
3d780 6c 6f 6e 67 20 6c 6f 6e 67 20 6d 73 2c 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 63 long.long.ms,.const.unsigned.dic
3d7a0 74 5f 73 69 7a 65 20 29 0a 20 20 20 20 20 20 3a 20 64 62 6c 6f 63 6b 28 20 64 70 2c 20 64 73 20 t_size.).......:.dblock(.dp,.ds.
3d7c0 29 2c 20 6d 62 6c 6f 63 6b 28 20 6d 70 2c 20 6d 73 20 29 2c 20 64 69 63 74 69 6f 6e 61 72 79 5f ),.mblock(.mp,.ms.),.dictionary_
3d7e0 73 69 7a 65 28 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 size(.dict_size.).{}.....};....s
3d800 74 64 3a 3a 76 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 td::vector<.Member.>.member_vect
3d820 6f 72 3b 0a 20 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 or;...std::string.error_;...cons
3d840 74 20 6c 6f 6e 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 t.long.long.insize;...int.retval
3d860 5f 3b 0a 20 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 5f 3b 09 _;...unsigned.dictionary_size_;.
3d880 2f 2f 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 69 6e 20 74 68 //.largest.dictionary.size.in.th
3d8a0 65 20 66 69 6c 65 0a 0a 20 20 62 6f 6f 6c 20 63 68 65 63 6b 5f 68 65 61 64 65 72 5f 65 72 72 6f e.file....bool.check_header_erro
3d8c0 72 28 20 63 6f 6e 73 74 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 26 20 68 65 61 64 65 72 20 29 3b r(.const.Lzip_header.&.header.);
3d8e0 0a 20 20 76 6f 69 64 20 73 65 74 5f 65 72 72 6e 6f 5f 65 72 72 6f 72 28 20 63 6f 6e 73 74 20 63 ...void.set_errno_error(.const.c
3d900 68 61 72 20 2a 20 63 6f 6e 73 74 20 6d 73 67 20 29 3b 0a 20 20 76 6f 69 64 20 73 65 74 5f 6e 75 har.*.const.msg.);...void.set_nu
3d920 6d 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 6d 73 67 2c m_error(.const.char.*.const.msg,
3d940 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 6e 75 6d 20 29 3b 0a 20 20 62 6f 6f .unsigned.long.long.num.);...boo
3d960 6c 20 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 20 4c 7a 69 l.read_header(.const.int.fd,.Lzi
3d980 70 5f 68 65 61 64 65 72 20 26 20 68 65 61 64 65 72 2c 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f p_header.&.header,.const.long.lo
3d9a0 6e 67 20 70 6f 73 20 29 3b 0a 20 20 62 6f 6f 6c 20 73 6b 69 70 5f 74 72 61 69 6c 69 6e 67 5f 64 ng.pos.);...bool.skip_trailing_d
3d9c0 61 74 61 28 20 63 6f 6e 73 74 20 69 6e 74 20 66 64 2c 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 ata(.const.int.fd,.unsigned.long
3d9e0 20 6c 6f 6e 67 20 26 20 70 6f 73 2c 0a 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c .long.&.pos,..........const.bool
3da00 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 6c 6f 6f .ignore_trailing,.const.bool.loo
3da20 73 65 5f 74 72 61 69 6c 69 6e 67 20 29 3b 0a 0a 70 75 62 6c 69 63 3a 0a 20 20 4c 7a 69 70 5f 69 se_trailing.);..public:...Lzip_i
3da40 6e 64 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 62 6f 6f 6c ndex(.const.int.infd,.const.bool
3da60 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .ignore_trailing,...............
3da80 63 6f 6e 73 74 20 62 6f 6f 6c 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 20 29 3b 0a 0a 20 20 const.bool.loose_trailing.);....
3daa0 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 20 6d 65 long.members().const.{.return.me
3dac0 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 20 73 74 mber_vector.size();.}...const.st
3dae0 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 65 74 75 d::string.&.error().const.{.retu
3db00 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 6f 6e 73 rn.error_;.}...int.retval().cons
3db20 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 6e 65 64 t.{.return.retval_;.}...unsigned
3db40 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 74 75 72 .dictionary_size().const.{.retur
3db60 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 6c 6f 6e 67 20 6c 6f n.dictionary_size_;.}....long.lo
3db80 6e 67 20 75 64 61 74 61 5f 73 69 7a 65 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 69 66 28 20 ng.udata_size().const.....{.if(.
3dba0 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 74 75 72 6e 20 30 member_vector.empty().).return.0
3dbc0 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 6f 72 2e 62 61 63 ;.......return.member_vector.bac
3dbe0 6b 28 29 2e 64 62 6c 6f 63 6b 2e 65 6e 64 28 29 3b 20 7d 0a 0a 20 20 6c 6f 6e 67 20 6c 6f 6e 67 k().dblock.end();.}....long.long
3dc00 20 63 64 61 74 61 5f 73 69 7a 65 28 29 20 63 6f 6e 73 74 0a 20 20 20 20 7b 20 69 66 28 20 6d 65 .cdata_size().const.....{.if(.me
3dc20 6d 62 65 72 5f 76 65 63 74 6f 72 2e 65 6d 70 74 79 28 29 20 29 20 72 65 74 75 72 6e 20 30 3b 0a mber_vector.empty().).return.0;.
3dc40 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 62 61 63 6b 28 ......return.member_vector.back(
3dc60 29 2e 6d 62 6c 6f 63 6b 2e 65 6e 64 28 29 3b 20 7d 0a 0a 20 20 2f 2f 20 74 6f 74 61 6c 20 73 69 ).mblock.end();.}....//.total.si
3dc80 7a 65 20 69 6e 63 6c 75 64 69 6e 67 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 28 69 66 20 61 ze.including.trailing.data.(if.a
3dca0 6e 79 29 0a 20 20 6c 6f 6e 67 20 6c 6f 6e 67 20 66 69 6c 65 5f 73 69 7a 65 28 29 20 63 6f 6e 73 ny)...long.long.file_size().cons
3dcc0 74 0a 20 20 20 20 7b 20 69 66 28 20 69 6e 73 69 7a 65 20 3e 3d 20 30 20 29 20 72 65 74 75 72 6e t.....{.if(.insize.>=.0.).return
3dce0 20 69 6e 73 69 7a 65 3b 20 65 6c 73 65 20 72 65 74 75 72 6e 20 30 3b 20 7d 0a 0a 20 20 63 6f 6e .insize;.else.return.0;.}....con
3dd00 73 74 20 42 6c 6f 63 6b 20 26 20 64 62 6c 6f 63 6b 28 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 69 20 st.Block.&.dblock(.const.long.i.
3dd20 29 20 63 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 ).const.....{.return.member_vect
3dd40 6f 72 5b 69 5d 2e 64 62 6c 6f 63 6b 3b 20 7d 0a 20 20 63 6f 6e 73 74 20 42 6c 6f 63 6b 20 26 20 or[i].dblock;.}...const.Block.&.
3dd60 6d 62 6c 6f 63 6b 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 20 mblock(.const.long.i.).const....
3dd80 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 6d 62 6c 6f 63 .{.return.member_vector[i].mbloc
3dda0 6b 3b 20 7d 0a 20 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 28 k;.}...unsigned.dictionary_size(
3ddc0 20 63 6f 6e 73 74 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 .const.long.i.).const.....{.retu
3dde0 72 6e 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 5b 69 5d 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 rn.member_vector[i].dictionary_s
3de00 69 7a 65 3b 20 7d 0a 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 ize;.}...};.....................
3de20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3de40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3de60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3de80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3dea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3dec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3dee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3df00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3df20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3df40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3df60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3df80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3dfa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3dfc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3dfe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e000 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 61 72 67 5f 70 61 72 73 65 72 2e 63 63 00 00 00 00 00 lzip-1.22-rc2/arg_parser.cc.....
3e020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e060 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
3e080 30 30 31 33 32 35 34 00 31 33 36 35 32 35 37 33 32 33 35 00 30 30 31 34 33 31 32 00 30 00 00 00 0013254.13652573235.0014312.0...
3e0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e100 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...................
3e120 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...................
3e140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e200 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
3e220 64 20 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
3e240 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 30 sion)....Copyright.(C).2006-2020
3e260 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
3e280 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
3e2a0 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
3e2c0 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
3e2e0 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
3e300 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
3e320 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
3e340 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
3e360 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
3e380 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
3e3a0 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
3e3c0 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
3e3e0 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....
3e400 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,
3e420 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
3e440 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
3e460 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
3e480 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
3e4a0 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
3e4c0 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.
3e4e0 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
3e500 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
3e520 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
3e540 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
3e560 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
3e580 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"..
3e5a0 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
3e5c0 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
3e5e0 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,............
3e600 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
3e620 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.).
3e640 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.
3e660 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
3e680 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[
3e6a0 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
3e6c0 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
3e6e0 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
3e700 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.=
3e720 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.).
3e740 20 20 20 20 69 66 28 20 6f 70 74 69 6f 6e 73 5b 69 5d 2e 6e 61 6d 65 20 26 26 20 73 74 64 3a 3a ....if(.options[i].name.&&.std::
3e760 73 74 72 6e 63 6d 70 28 20 6f 70 74 69 6f 6e 73 5b 69 5d 2e 6e 61 6d 65 2c 20 26 6f 70 74 5b 32 strncmp(.options[i].name,.&opt[2
3e780 5d 2c 20 6c 65 6e 20 29 20 3d 3d 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 ],.len.).==.0.).......{.......if
3e7a0 28 20 73 74 64 3a 3a 73 74 72 6c 65 6e 28 20 6f 70 74 69 6f 6e 73 5b 69 5d 2e 6e 61 6d 65 20 29 (.std::strlen(.options[i].name.)
3e7c0 20 3d 3d 20 6c 65 6e 20 29 09 2f 2f 20 45 78 61 63 74 20 6d 61 74 63 68 20 66 6f 75 6e 64 0a 20 .==.len.).//.Exact.match.found..
3e7e0 20 20 20 20 20 20 20 7b 20 69 6e 64 65 78 20 3d 20 69 3b 20 65 78 61 63 74 20 3d 20 74 72 75 65 .......{.index.=.i;.exact.=.true
3e800 3b 20 62 72 65 61 6b 3b 20 7d 0a 20 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 69 6e 64 65 78 20 ;.break;.}.......else.if(.index.
3e820 3c 20 30 20 29 20 69 6e 64 65 78 20 3d 20 69 3b 09 09 2f 2f 20 46 69 72 73 74 20 6e 6f 6e 65 78 <.0.).index.=.i;..//.First.nonex
3e840 61 63 74 20 6d 61 74 63 68 20 66 6f 75 6e 64 0a 20 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 6f act.match.found.......else.if(.o
3e860 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 63 6f 64 65 20 21 3d 20 6f 70 74 69 6f 6e 73 5b 69 5d ptions[index].code.!=.options[i]
3e880 2e 63 6f 64 65 20 7c 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 5b .code.||................options[
3e8a0 69 6e 64 65 78 5d 2e 68 61 73 5f 61 72 67 20 21 3d 20 6f 70 74 69 6f 6e 73 5b 69 5d 2e 68 61 73 index].has_arg.!=.options[i].has
3e8c0 5f 61 72 67 20 29 0a 20 20 20 20 20 20 20 20 61 6d 62 69 67 20 3d 20 74 72 75 65 3b 09 09 2f 2f _arg.).........ambig.=.true;..//
3e8e0 20 53 65 63 6f 6e 64 20 6f 72 20 6c 61 74 65 72 20 6e 6f 6e 65 78 61 63 74 20 6d 61 74 63 68 20 .Second.or.later.nonexact.match.
3e900 66 6f 75 6e 64 0a 20 20 20 20 20 20 7d 0a 0a 20 20 69 66 28 20 61 6d 62 69 67 20 26 26 20 21 65 found.......}....if(.ambig.&&.!e
3e920 78 61 63 74 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 65 72 72 6f 72 5f 20 3d 20 22 6f 70 74 69 6f xact.).....{.....error_.=."optio
3e940 6e 20 27 22 3b 20 65 72 72 6f 72 5f 20 2b 3d 20 6f 70 74 3b 20 65 72 72 6f 72 5f 20 2b 3d 20 22 n.'";.error_.+=.opt;.error_.+=."
3e960 27 20 69 73 20 61 6d 62 69 67 75 6f 75 73 22 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 '.is.ambiguous";.....return.fals
3e980 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 66 28 20 69 6e 64 65 78 20 3c 20 30 20 29 09 09 2f 2f 20 e;.....}....if(.index.<.0.)..//.
3e9a0 6e 6f 74 68 69 6e 67 20 66 6f 75 6e 64 0a 20 20 20 20 7b 0a 20 20 20 20 65 72 72 6f 72 5f 20 3d nothing.found.....{.....error_.=
3e9c0 20 22 75 6e 72 65 63 6f 67 6e 69 7a 65 64 20 6f 70 74 69 6f 6e 20 27 22 3b 20 65 72 72 6f 72 5f ."unrecognized.option.'";.error_
3e9e0 20 2b 3d 20 6f 70 74 3b 20 65 72 72 6f 72 5f 20 2b 3d 20 27 5c 27 27 3b 0a 20 20 20 20 72 65 74 .+=.opt;.error_.+=.'\'';.....ret
3ea00 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 2b 2b 61 72 67 69 6e 64 3b 0a 20 20 urn.false;.....}....++argind;...
3ea20 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 69 6f 6e 73 5b data.push_back(.Record(.options[
3ea40 69 6e 64 65 78 5d 2e 63 6f 64 65 20 29 20 29 3b 0a 0a 20 20 69 66 28 20 6f 70 74 5b 6c 65 6e 2b index].code.).);....if(.opt[len+
3ea60 32 5d 20 29 09 09 2f 2f 20 27 2d 2d 3c 6c 6f 6e 67 5f 6f 70 74 69 6f 6e 3e 3d 3c 61 72 67 75 6d 2].)..//.'--<long_option>=<argum
3ea80 65 6e 74 3e 27 20 73 79 6e 74 61 78 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 6f 70 74 69 6f ent>'.syntax.....{.....if(.optio
3eaa0 6e 73 5b 69 6e 64 65 78 5d 2e 68 61 73 5f 61 72 67 20 3d 3d 20 6e 6f 20 29 0a 20 20 20 20 20 20 ns[index].has_arg.==.no.).......
3eac0 7b 0a 20 20 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 {.......error_.=."option.'--";.e
3eae0 72 72 6f 72 5f 20 2b 3d 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 6e 61 6d 65 3b 0a 20 20 rror_.+=.options[index].name;...
3eb00 20 20 20 20 65 72 72 6f 72 5f 20 2b 3d 20 22 27 20 64 6f 65 73 6e 27 74 20 61 6c 6c 6f 77 20 61 ....error_.+=."'.doesn't.allow.a
3eb20 6e 20 61 72 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 n.argument";.......return.false;
3eb40 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e .......}.....if(.options[index].
3eb60 68 61 73 5f 61 72 67 20 3d 3d 20 79 65 73 20 26 26 20 21 6f 70 74 5b 6c 65 6e 2b 33 5d 20 29 0a has_arg.==.yes.&&.!opt[len+3].).
3eb80 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 65 72 72 6f 72 5f 20 3d 20 22 6f 70 74 69 6f 6e 20 27 ......{.......error_.=."option.'
3eba0 2d 2d 22 3b 20 65 72 72 6f 72 5f 20 2b 3d 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 6e 61 --";.error_.+=.options[index].na
3ebc0 6d 65 3b 0a 20 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 me;.......error_.+=."'.requires.
3ebe0 61 6e 20 61 72 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 an.argument";.......return.false
3ec00 3b 0a 20 20 20 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 ;.......}.....data.back().argume
3ec20 6e 74 20 3d 20 26 6f 70 74 5b 6c 65 6e 2b 33 5d 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 nt.=.&opt[len+3];.....return.tru
3ec40 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 66 28 20 6f 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 68 e;.....}....if(.options[index].h
3ec60 61 73 5f 61 72 67 20 3d 3d 20 79 65 73 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 21 61 as_arg.==.yes.).....{.....if(.!a
3ec80 72 67 20 7c 7c 20 21 61 72 67 5b 30 5d 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 65 72 rg.||.!arg[0].).......{.......er
3eca0 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 5f 20 2b 3d 20 6f ror_.=."option.'--";.error_.+=.o
3ecc0 70 74 69 6f 6e 73 5b 69 6e 64 65 78 5d 2e 6e 61 6d 65 3b 0a 20 20 20 20 20 20 65 72 72 6f 72 5f ptions[index].name;.......error_
3ece0 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";...
3ed00 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;.......}.....++
3ed20 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
3ed40 72 67 3b 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 20 72 65 rg;.....return.true;.....}....re
3ed60 74 75 72 6e 20 74 72 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 turn.true;...}...bool.Arg_parser
3ed80 3a 3a 70 61 72 73 65 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 ::parse_short_option(.const.char
3eda0 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 20 63 6f 6e 73 74 .*.const.opt,.const.char.*.const
3edc0 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 20 20 20 20 20 20 .arg,...........................
3ede0 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[
3ee00 5d 2c 20 69 6e 74 20 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 ],.int.&.argind.)...{...int.cind
3ee20 20 3d 20 31 3b 09 09 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 .=.1;...//.character.index.in.op
3ee40 74 0a 0a 20 20 77 68 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 t....while(.cind.>.0.).....{....
3ee60 20 69 6e 74 20 69 6e 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 .int.index.=.-1;.....const.unsig
3ee80 6e 65 64 20 63 68 61 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 ned.char.c.=.opt[cind];......if(
3eea0 20 63 20 21 3d 20 30 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 .c.!=.0.).......for(.int.i.=.0;.
3eec0 6f 70 74 69 6f 6e 73 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 options[i].code;.++i.).........i
3eee0 66 28 20 63 20 3d 3d 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 f(.c.==.options[i].code.).......
3ef00 20 20 20 20 7b 20 69 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 ....{.index.=.i;.break;.}......i
3ef20 66 28 20 69 6e 64 65 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 f(.index.<.0.).......{.......err
3ef40 6f 72 5f 20 3d 20 22 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 or_.=."invalid.option.--.'";.err
3ef60 6f 72 5f 20 2b 3d 20 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 or_.+=.c;.error_.+=.'\'';.......
3ef80 72 65 74 75 72 6e 20 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 return.false;.......}......data.
3efa0 70 75 73 68 5f 62 61 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 push_back(.Record(.c.).);.....if
3efc0 28 20 6f 70 74 5b 2b 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 (.opt[++cind].==.0.).{.++argind;
3efe0 20 63 69 6e 64 20 3d 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 .cind.=.0;.}.//.opt.finished....
3f000 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 21 3d 20 ..if(.options[index].has_arg.!=.
3f020 6e 6f 20 26 26 20 63 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 no.&&.cind.>.0.&&.opt[cind].)...
3f040 20 20 20 20 7b 0a 20 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 ....{.......data.back().argument
3f060 20 3d 20 26 6f 70 74 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 .=.&opt[cind];.++argind;.cind.=.
3f080 30 3b 0a 20 20 20 20 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 0;.......}.....else.if(.options[
3f0a0 69 6e 64 65 78 5d 2e 68 61 73 5f 61 72 67 20 3d 3d 20 79 65 73 20 29 0a 20 20 20 20 20 20 7b 0a index].has_arg.==.yes.).......{.
3f0c0 20 20 20 20 20 20 69 66 28 20 21 61 72 67 20 7c 7c 20 21 61 72 67 5b 30 5d 20 29 0a 20 20 20 20 ......if(.!arg.||.!arg[0].).....
3f0e0 20 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 ....{.........error_.=."option.r
3f100 65 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 equires.an.argument.--.'";.error
3f120 5f 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 _.+=.c;.........error_.+=.'\'';.
3f140 20 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 ........return.false;.........}.
3f160 20 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 61 72 67 ......data.back().argument.=.arg
3f180 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 20 20 7d 0a 20 20 ;.++argind;.cind.=.0;.......}...
3f1a0 20 20 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 ..}...return.true;...}...Arg_par
3f1c0 73 65 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 ser::Arg_parser(.const.int.argc,
3f1e0 20 63 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 .const.char.*.const.argv[],.....
3f200 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 70 74 69 6f 6e ....................const.Option
3f220 20 6f 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 .options[],.const.bool.in_order.
3f240 29 0a 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 )...{...if(.argc.<.2.||.!argv.||
3f260 20 21 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 .!options.).return;....std::vect
3f280 6f 72 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 or<.const.char.*.>.non_options;.
3f2a0 2f 2f 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 //.skipped.non-options...int.arg
3f2c0 69 6e 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 ind.=.1;....//.index.in.argv....
3f2e0 77 68 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 while(.argind.<.argc.).....{....
3f300 20 63 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 .const.unsigned.char.ch1.=.argv[
3f320 61 72 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 argind][0];.....const.unsigned.c
3f340 68 61 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 har.ch2.=.ch1.?.argv[argind][1].
3f360 3a 20 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 :.0;......if(.ch1.==.'-'.&&.ch2.
3f380 29 09 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 )..//.we.found.an.option.......{
3f3a0 0a 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 74 20 3d 20 .......const.char.*.const.opt.=.
3f3c0 61 72 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 argv[argind];.......const.char.*
3f3e0 20 63 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 .const.arg.=.(.argind.+.1.<.argc
3f400 20 29 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 .).?.argv[argind+1].:.0;.......i
3f420 66 28 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 f(.ch2.==.'-'.).........{.......
3f440 20 20 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 ..if(.!argv[argind][2].).{.++arg
3f460 69 6e 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 ind;.break;.}.//.we.found."--"..
3f480 20 20 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 .......else.if(.!parse_long_opti
3f4a0 6f 6e 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 on(.opt,.arg,.options,.argind.).
3f4c0 29 20 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 ).break;.........}.......else.if
3f4e0 28 20 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 (.!parse_short_option(.opt,.arg,
3f500 20 6f 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 .options,.argind.).).break;.....
3f520 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 28 20 69 ..}.....else.......{.......if(.i
3f540 6e 5f 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 n_order.).data.push_back(.Record
3f560 28 20 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 (.argv[argind++].).);.......else
3f580 20 6e 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 .non_options.push_back(.argv[arg
3f5a0 69 6e 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 ind++].);.......}.....}...if(.!e
3f5c0 72 72 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 rror_.empty().).data.clear();...
3f5e0 65 6c 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 else.....{.....for(.unsigned.i.=
3f600 20 30 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 .0;.i.<.non_options.size();.++i.
3f620 29 0a 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 ).......data.push_back(.Record(.
3f640 6e 6f 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 non_options[i].).);.....while(.a
3f660 72 67 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 rgind.<.argc.).......data.push_b
3f680 61 63 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 ack(.Record(.argv[argind++].).);
3f6a0 0a 20 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 .....}...}...Arg_parser::Arg_par
3f6c0 73 65 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 ser(.const.char.*.const.opt,.con
3f6e0 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,............
3f700 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
3f720 73 5b 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 s[].)...{...if(.!opt.||.!opt[0].
3f740 7c 7c 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 ||.!options.).return;....if(.opt
3f760 5b 30 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 [0].==.'-'.&&.opt[1].)..//.we.fo
3f780 75 6e 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 und.an.option.....{.....int.argi
3f7a0 6e 64 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 nd.=.1;...//.dummy.....if(.opt[1
3f7c0 5d 20 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 ].==.'-'.).......{.if(.opt[2].).
3f7e0 70 61 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 parse_long_option(.opt,.arg,.opt
3f800 69 6f 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 ions,.argind.);.}.....else......
3f820 20 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
3f840 70 74 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 ptions,.argind.);.....if(.!error
3f860 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 20 20 7d 0a _.empty().).data.clear();.....}.
3f880 20 20 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 ..else.data.push_back(.Record(.o
3f8a0 70 74 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 pt.).);...}.....................
3f8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fa00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 64 65 63 6f 64 65 72 2e 63 63 00 00 00 00 00 00 00 00 lzip-1.22-rc2/decoder.cc........
3fa20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fa40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fa60 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
3fa80 30 30 32 30 37 31 36 00 31 33 36 35 32 36 31 31 33 30 30 00 30 30 31 33 35 35 35 00 30 00 00 00 0020716.13652611300.0013555.0...
3faa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fb00 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...................
3fb20 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...................
3fb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fc00 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
3fc20 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
3fc40 32 30 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 20.Antonio.Diaz.Diaz......This.p
3fc60 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
3fc80 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..
3fca0 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.
3fcc0 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
3fce0 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
3fd00 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.
3fd20 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).
3fd40 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
3fd60 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
3fd80 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
3fda0 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
3fdc0 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
3fde0 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
3fe00 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
3fe20 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
3fe40 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
3fe60 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
3fe80 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
3fea0 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:/
3fec0 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
3fee0 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
3ff00 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
3ff20 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
3ff40 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
3ff60 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
3ff80 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
3ffa0 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
3ffc0 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 73 20 74 68 65 20 6e e."decoder.h".../*.Returns.the.n
3ffe0 75 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 umber.of.bytes.really.read.....I
40000 66 20 28 72 65 74 75 72 6e 65 64 20 76 61 6c 75 65 20 3c 20 73 69 7a 65 29 20 61 6e 64 20 28 65 f.(returned.value.<.size).and.(e
40020 72 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 rrno.==.0),.means.EOF.was.reache
40040 64 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 d..*/.int.readblock(.const.int.f
40060 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 6f 6e 73 74 20 69 6e d,.uint8_t.*.const.buf,.const.in
40080 74 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 t.size.)...{...int.sz.=.0;...err
400a0 6e 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 no.=.0;...while(.sz.<.size.)....
400c0 20 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 .{.....const.int.n.=.read(.fd,.b
400e0 75 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 uf.+.sz,.size.-.sz.);.....if(.n.
40100 3e 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 >.0.).sz.+=.n;.....else.if(.n.==
40120 20 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 .0.).break;....//.EOF.....else.i
40140 66 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 f(.errno.!=.EINTR.).break;.....e
40160 72 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 rrno.=.0;.....}...return.sz;...}
40180 0a 0a 0a 2f 2a 20 52 65 74 75 72 6e 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 .../*.Returns.the.number.of.byte
401a0 73 20 72 65 61 6c 6c 79 20 77 72 69 74 74 65 6e 2e 0a 20 20 20 49 66 20 28 72 65 74 75 72 6e 65 s.really.written.....If.(returne
401c0 64 20 76 61 6c 75 65 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 d.value.<.size),.it.is.always.an
401e0 20 65 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 .error..*/.int.writeblock(.const
40200 20 69 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 .int.fd,.const.uint8_t.*.const.b
40220 75 66 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 uf,.const.int.size.)...{...int.s
40240 7a 20 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 z.=.0;...errno.=.0;...while(.sz.
40260 3c 20 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 <.size.).....{.....const.int.n.=
40280 20 77 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 .write(.fd,.buf.+.sz,.size.-.sz.
402a0 29 3b 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 );.....if(.n.>.0.).sz.+=.n;.....
402c0 65 6c 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 else.if(.n.<.0.&&.errno.!=.EINTR
402e0 20 29 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 .).break;.....errno.=.0;.....}..
40300 20 72 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 .return.sz;...}...bool.Range_dec
40320 6f 64 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 oder::read_block()...{...if(.!at
40340 5f 73 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 _stream_end.).....{.....stream_p
40360 6f 73 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 os.=.readblock(.infd,.buffer,.bu
40380 66 66 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 ffer_size.);.....if(.stream_pos.
403a0 21 3d 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 !=.buffer_size.&&.errno.).throw.
403c0 45 72 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 Error(."Read.error".);.....at_st
403e0 72 65 61 6d 5f 65 6e 64 20 3d 20 28 20 73 74 72 65 61 6d 5f 70 6f 73 20 3c 20 62 75 66 66 65 72 ream_end.=.(.stream_pos.<.buffer
40400 5f 73 69 7a 65 20 29 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 _size.);.....partial_member_pos.
40420 2b 3d 20 70 6f 73 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 +=.pos;.....pos.=.0;.....show_dp
40440 72 6f 67 72 65 73 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 rogress();.....}...return.pos.<.
40460 73 74 72 65 61 6d 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 stream_pos;...}...void.LZ_decode
40480 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.>.
404a0 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 69 6e 74 stream_pos.).....{.....const.int
404c0 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 20 20 20 63 72 .size.=.pos.-.stream_pos;.....cr
404e0 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 72 20 2b 20 73 c32.update_buf(.crc_,.buffer.+.s
40500 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 6f 75 74 66 64 tream_pos,.size.);.....if(.outfd
40520 20 3e 3d 20 30 20 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 .>=.0.&&.writeblock(.outfd,.buff
40540 65 72 20 2b 20 73 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 er.+.stream_pos,.size.).!=.size.
40560 29 0a 20 20 20 20 20 20 74 68 72 6f 77 20 45 72 72 6f 72 28 20 22 57 72 69 74 65 20 65 72 72 6f ).......throw.Error(."Write.erro
40580 72 22 20 29 3b 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 r".);.....if(.pos.>=.dictionary_
405a0 73 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 size.).......{.partial_data_pos.
405c0 2b 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 +=.pos;.pos.=.0;.pos_wrapped.=.t
405e0 72 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 rue;.}.....stream_pos.=.pos;....
40600 20 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 76 65 72 69 66 79 .}...}...bool.LZ_decoder::verify
40620 5f 74 72 61 69 6c 65 72 28 20 63 6f 6e 73 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 26 20 70 _trailer(.const.Pretty_print.&.p
40640 70 20 29 20 63 6f 6e 73 74 0a 20 20 7b 0a 20 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 20 74 72 61 p.).const...{...Lzip_trailer.tra
40660 69 6c 65 72 3b 0a 20 20 69 6e 74 20 73 69 7a 65 20 3d 20 72 64 65 63 2e 72 65 61 64 5f 64 61 74 iler;...int.size.=.rdec.read_dat
40680 61 28 20 74 72 61 69 6c 65 72 2e 64 61 74 61 2c 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 a(.trailer.data,.Lzip_trailer::s
406a0 69 7a 65 20 29 3b 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 ize.);...const.unsigned.long.lon
406c0 67 20 64 61 74 61 5f 73 69 7a 65 20 3d 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 0a 20 g.data_size.=.data_position();..
406e0 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 65 6d 62 65 72 .const.unsigned.long.long.member
40700 5f 73 69 7a 65 20 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 _size.=.rdec.member_position();.
40720 20 20 62 6f 6f 6c 20 65 72 72 6f 72 20 3d 20 66 61 6c 73 65 3b 0a 0a 20 20 69 66 28 20 73 69 7a ..bool.error.=.false;....if(.siz
40740 65 20 3c 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 69 7a 65 20 29 0a 20 20 20 20 7b 0a 20 e.<.Lzip_trailer::size.).....{..
40760 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 65 72 62 6f 73 69 ...error.=.true;.....if(.verbosi
40780 74 79 20 3e 3d 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 70 70 28 29 3b 0a 20 20 ty.>=.0.).......{.......pp();...
407a0 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 54 72 61 69 6c ....std::fprintf(.stderr,."Trail
407c0 65 72 20 74 72 75 6e 63 61 74 65 64 20 61 74 20 74 72 61 69 6c 65 72 20 70 6f 73 69 74 69 6f 6e er.truncated.at.trailer.position
407e0 20 25 64 3b 22 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;"...........................
40800 20 20 22 20 73 6f 6d 65 20 63 68 65 63 6b 73 20 6d 61 79 20 66 61 69 6c 2e 5c 6e 22 2c 20 73 69 ..".some.checks.may.fail.\n",.si
40820 7a 65 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 77 68 69 6c 65 28 20 73 69 7a 65 20 3c 20 ze.);.......}.....while(.size.<.
40840 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 69 7a 65 20 29 20 74 72 61 69 6c 65 72 2e 64 61 74 Lzip_trailer::size.).trailer.dat
40860 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 20 75 6e a[size++].=.0;.....}....const.un
40880 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 63 72 63 signed.td_crc.=.trailer.data_crc
408a0 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 20 20 20 ();...if(.td_crc.!=.crc().).....
408c0 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 65 72 62 {.....error.=.true;.....if(.verb
408e0 6f 73 69 74 79 20 3e 3d 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 70 70 28 29 3b osity.>=.0.).......{.......pp();
40900 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 22 43 52 .......std::fprintf(.stderr,."CR
40920 43 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 C.mismatch;.stored.%08X,.compute
40940 64 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 74 d.%08X\n",.....................t
40960 64 5f 63 72 63 2c 20 63 72 63 28 29 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 d_crc,.crc().);.......}.....}...
40980 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 74 64 5f 73 69 7a 65 const.unsigned.long.long.td_size
409a0 20 3d 20 74 72 61 69 6c 65 72 2e 64 61 74 61 5f 73 69 7a 65 28 29 3b 0a 20 20 69 66 28 20 74 64 .=.trailer.data_size();...if(.td
409c0 5f 73 69 7a 65 20 21 3d 20 64 61 74 61 5f 73 69 7a 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 65 _size.!=.data_size.).....{.....e
409e0 72 72 6f 72 20 3d 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 rror.=.true;.....if(.verbosity.>
40a00 3d 20 30 20 29 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 70 70 28 29 3b 0a 20 20 20 20 20 20 =.0.).......{.......pp();.......
40a20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 44 61 74 61 20 73 69 7a 65 std::fprintf(.stderr,."Data.size
40a40 20 6d 69 73 6d 61 74 63 68 3b 20 73 74 6f 72 65 64 20 25 6c 6c 75 20 28 30 78 25 6c 6c 58 29 2c .mismatch;.stored.%llu.(0x%llX),
40a60 20 63 6f 6d 70 75 74 65 64 20 25 6c 6c 75 20 28 30 78 25 6c 6c 58 29 5c 6e 22 2c 0a 20 20 20 20 .computed.%llu.(0x%llX)\n",.....
40a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 64 5f 73 69 7a 65 2c 20 74 64 5f 73 69 7a 65 ................td_size,.td_size
40aa0 2c 20 64 61 74 61 5f 73 69 7a 65 2c 20 64 61 74 61 5f 73 69 7a 65 20 29 3b 0a 20 20 20 20 20 20 ,.data_size,.data_size.);.......
40ac0 7d 0a 20 20 20 20 7d 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 }.....}...const.unsigned.long.lo
40ae0 6e 67 20 74 6d 5f 73 69 7a 65 20 3d 20 74 72 61 69 6c 65 72 2e 6d 65 6d 62 65 72 5f 73 69 7a 65 ng.tm_size.=.trailer.member_size
40b00 28 29 3b 0a 20 20 69 66 28 20 74 6d 5f 73 69 7a 65 20 21 3d 20 6d 65 6d 62 65 72 5f 73 69 7a 65 ();...if(.tm_size.!=.member_size
40b20 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 20 20 20 20 69 .).....{.....error.=.true;.....i
40b40 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 0a 20 20 20 20 f(.verbosity.>=.0.).......{.....
40b60 20 20 70 70 28 29 3b 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 ..pp();.......std::fprintf(.stde
40b80 72 72 2c 20 22 4d 65 6d 62 65 72 20 73 69 7a 65 20 6d 69 73 6d 61 74 63 68 3b 20 73 74 6f 72 65 rr,."Member.size.mismatch;.store
40ba0 64 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 d.%llu.(0x%llX),.computed.%llu.(
40bc0 30 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 0x%llX)\n",.....................
40be0 74 6d 5f 73 69 7a 65 2c 20 74 6d 5f 73 69 7a 65 2c 20 6d 65 6d 62 65 72 5f 73 69 7a 65 2c 20 6d tm_size,.tm_size,.member_size,.m
40c00 65 6d 62 65 72 5f 73 69 7a 65 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 69 66 ember_size.);.......}.....}...if
40c20 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 28 20 76 65 (.error.).return.false;...if(.ve
40c40 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 20 76 65 72 rbosity.>=.2.).....{.....if(.ver
40c60 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 69 63 74 69 bosity.>=.4.).show_header(.dicti
40c80 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 69 7a 65 20 onary_size.);.....if(.data_size.
40ca0 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 20 20 20 20 ==.0.||.member_size.==.0.)......
40cc0 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 73 73 65 64 .std::fputs(."no.data.compressed
40ce0 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 20 20 73 74 ..",.stderr.);.....else.......st
40d00 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 2c 20 25 35 d::fprintf(.stderr,."%6.3f:1,.%5
40d20 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 22 2c 0a 20 .2f%%.ratio,.%5.2f%%.saved..",..
40d40 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 61 74 61 5f ...................(double)data_
40d60 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 20 20 20 20 size./.member_size,.............
40d80 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 65 20 29 20 ........(.100.0.*.member_size.).
40da0 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 20 20 20 20 /.data_size,....................
40dc0 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 73 69 7a 65 .100.0.-.(.(.100.0.*.member_size
40de0 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 76 65 72 62 .)./.data_size.).);.....if(.verb
40e00 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 74 64 65 72 osity.>=.4.).std::fprintf(.stder
40e20 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 20 20 20 69 r,."CRC.%08X,.",.td_crc.);.....i
40e40 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 64 3a 3a 66 f(.verbosity.>=.3.).......std::f
40e60 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 25 38 6c 6c printf(.stderr,."%9llu.out,.%8ll
40e80 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 69 7a 65 20 u.in..",.data_size,.member_size.
40ea0 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 0a 0a 2f 2a );.....}...return.true;...}.../*
40ec0 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 65 63 6f 64 .Return.value:.0.=.OK,.1.=.decod
40ee0 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 2c 0a 20 20 er.error,.2.=.unexpected.EOF,...
40f00 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 72 72 6f 72 ...............3.=.trailer.error
40f20 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 2e 20 2a 2f 0a 69 ,.4.=.unknown.marker.found..*/.i
40f40 6e 74 20 4c 5a 5f 64 65 63 6f 64 65 72 3a 3a 64 65 63 6f 64 65 5f 6d 65 6d 62 65 72 28 20 63 6f nt.LZ_decoder::decode_member(.co
40f60 6e 73 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 26 20 70 70 20 29 0a 20 20 7b 0a 20 20 42 69 nst.Pretty_print.&.pp.)...{...Bi
40f80 74 5f 6d 6f 64 65 6c 20 62 6d 5f 6c 69 74 65 72 61 6c 5b 31 3c 3c 6c 69 74 65 72 61 6c 5f 63 6f t_model.bm_literal[1<<literal_co
40fa0 6e 74 65 78 74 5f 62 69 74 73 5d 5b 30 78 33 30 30 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 ntext_bits][0x300];...Bit_model.
40fc0 62 6d 5f 6d 61 74 63 68 5b 53 74 61 74 65 3a 3a 73 74 61 74 65 73 5d 5b 70 6f 73 5f 73 74 61 74 bm_match[State::states][pos_stat
40fe0 65 73 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 72 65 70 5b 53 74 61 74 65 3a 3a 73 es];...Bit_model.bm_rep[State::s
41000 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 30 5b 53 74 61 74 tates];...Bit_model.bm_rep0[Stat
41020 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 65 70 31 5b e::states];...Bit_model.bm_rep1[
41040 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
41060 65 70 32 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 ep2[State::states];...Bit_model.
41080 62 6d 5f 6c 65 6e 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 bm_len[State::states][pos_states
410a0 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f 64 69 73 5f 73 6c 6f 74 5b 6c 65 6e 5f 73 ];...Bit_model.bm_dis_slot[len_s
410c0 74 61 74 65 73 5d 5b 31 3c 3c 64 69 73 5f 73 6c 6f 74 5f 62 69 74 73 5d 3b 0a 20 20 42 69 74 5f tates][1<<dis_slot_bits];...Bit_
410e0 6d 6f 64 65 6c 20 62 6d 5f 64 69 73 5b 6d 6f 64 65 6c 65 64 5f 64 69 73 74 61 6e 63 65 73 2d 65 model.bm_dis[modeled_distances-e
41100 6e 64 5f 64 69 73 5f 6d 6f 64 65 6c 2b 31 5d 3b 0a 20 20 42 69 74 5f 6d 6f 64 65 6c 20 62 6d 5f nd_dis_model+1];...Bit_model.bm_
41120 61 6c 69 67 6e 5b 64 69 73 5f 61 6c 69 67 6e 5f 73 69 7a 65 5d 3b 0a 20 20 4c 65 6e 5f 6d 6f 64 align[dis_align_size];...Len_mod
41140 65 6c 20 6d 61 74 63 68 5f 6c 65 6e 5f 6d 6f 64 65 6c 3b 0a 20 20 4c 65 6e 5f 6d 6f 64 65 6c 20 el.match_len_model;...Len_model.
41160 72 65 70 5f 6c 65 6e 5f 6d 6f 64 65 6c 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 30 20 3d rep_len_model;...unsigned.rep0.=
41180 20 30 3b 09 09 2f 2f 20 72 65 70 5b 30 2d 33 5d 20 6c 61 74 65 73 74 20 66 6f 75 72 20 64 69 73 .0;..//.rep[0-3].latest.four.dis
411a0 74 61 6e 63 65 73 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 31 20 3d 20 30 3b 09 09 2f 2f 20 tances...unsigned.rep1.=.0;..//.
411c0 75 73 65 64 20 66 6f 72 20 65 66 66 69 63 69 65 6e 74 20 63 6f 64 69 6e 67 20 6f 66 0a 20 20 75 used.for.efficient.coding.of...u
411e0 6e 73 69 67 6e 65 64 20 72 65 70 32 20 3d 20 30 3b 09 09 2f 2f 20 72 65 70 65 61 74 65 64 20 64 nsigned.rep2.=.0;..//.repeated.d
41200 69 73 74 61 6e 63 65 73 0a 20 20 75 6e 73 69 67 6e 65 64 20 72 65 70 33 20 3d 20 30 3b 0a 20 20 istances...unsigned.rep3.=.0;...
41220 53 74 61 74 65 20 73 74 61 74 65 3b 0a 0a 20 20 72 64 65 63 2e 6c 6f 61 64 28 29 3b 0a 20 20 77 State.state;....rdec.load();...w
41240 68 69 6c 65 28 20 21 72 64 65 63 2e 66 69 6e 69 73 68 65 64 28 29 20 29 0a 20 20 20 20 7b 0a 20 hile(.!rdec.finished().).....{..
41260 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 70 6f ...const.int.pos_state.=.data_po
41280 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 20 69 sition().&.pos_state_mask;.....i
412a0 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 74 61 f(.rdec.decode_bit(.bm_match[sta
412c0 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 73 74 te()][pos_state].).==.0.).//.1st
412e0 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 62 79 .bit.......{.......//.literal.by
41300 74 65 0a 20 20 20 20 20 20 42 69 74 5f 6d 6f 64 65 6c 20 2a 20 63 6f 6e 73 74 20 62 6d 20 3d 20 te.......Bit_model.*.const.bm.=.
41320 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 65 65 6b 5f 70 72 bm_literal[get_lit_state(peek_pr
41340 65 76 28 29 29 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 5f ev())];.......if(.state.is_char_
41360 73 65 74 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 20 72 set_char().).........put_byte(.r
41380 64 65 63 2e 64 65 63 6f 64 65 5f 74 72 65 65 38 28 20 62 6d 20 29 20 29 3b 0a 20 20 20 20 20 20 dec.decode_tree8(.bm.).);.......
413a0 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 64 65 63 6f else.........put_byte(.rdec.deco
413c0 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 20 29 20 29 de_matched(.bm,.peek(.rep0.).).)
413e0 3b 0a 20 20 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 ;.......continue;.......}.....//
41400 20 6d 61 74 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 .match.or.repeated.match.....int
41420 20 6c 65 6e 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 .len;.....if(.rdec.decode_bit(.b
41440 6d 5f 72 65 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 m_rep[state()].).!=.0.)..//.2nd.
41460 62 69 74 0a 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 bit.......{.......if(.rdec.decod
41480 65 5f 62 69 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 e_bit(.bm_rep0[state()].).==.0.)
414a0 09 09 2f 2f 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 ..//.3rd.bit.........{.........i
414c0 66 28 20 72 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 f(.rdec.decode_bit(.bm_len[state
414e0 28 29 5d 5b 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 ()][pos_state].).==.0.).//.4th.b
41500 69 74 0a 20 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 5f 72 it...........{.state.set_short_r
41520 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 30 20 29 20 29 3b 20 ep();.put_byte(.peek(.rep0.).);.
41540 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 20 65 6c 73 65 continue;.}.........}.......else
41560 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 65 64 20 64 69 73 74 .........{.........unsigned.dist
41580 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 63 6f 64 65 5f 62 69 ance;.........if(.rdec.decode_bi
415a0 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 30 20 29 09 09 2f 2f t(.bm_rep1[state()].).==.0.)..//
415c0 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 63 65 20 3d 20 72 65 .4th.bit...........distance.=.re
415e0 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 20 20 7b 0a 20 20 20 p1;.........else...........{....
41600 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 72 .......if(.rdec.decode_bit(.bm_r
41620 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 35 74 68 20 62 69 74 ep2[state()].).==.0.).//.5th.bit
41640 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 65 70 32 3b 0a 20 20 .............distance.=.rep2;...
41660 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 20 64 69 73 74 61 ........else.............{.dista
41680 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 7d 0a 20 20 20 20 20 nce.=.rep3;.rep3.=.rep2;.}......
416a0 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 20 20 20 7d 0a 20 20 .....rep2.=.rep1;...........}...
416c0 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 20 20 72 65 70 30 20 ......rep1.=.rep0;.........rep0.
416e0 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 20 20 20 73 74 61 74 =.distance;.........}.......stat
41700 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 6d 69 6e 5f 6d 61 74 e.set_rep();.......len.=.min_mat
41720 63 68 5f 6c 65 6e 20 2b 20 72 64 65 63 2e 64 65 63 6f 64 65 5f 6c 65 6e 28 20 72 65 70 5f 6c 65 ch_len.+.rdec.decode_len(.rep_le
41740 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.);.......}...
41760 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.......{.....
41780 20 20 6c 65 6e 20 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 20 2b 20 72 64 65 63 2e 64 65 63 ..len.=.min_match_len.+.rdec.dec
417a0 6f 64 65 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 ode_len(.match_len_model,.pos_st
417c0 61 74 65 20 29 3b 0a 20 20 20 20 20 20 75 6e 73 69 67 6e 65 64 20 64 69 73 74 61 6e 63 65 20 3d ate.);.......unsigned.distance.=
417e0 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 73 5f 73 6c 6f 74 5b .rdec.decode_tree6(.bm_dis_slot[
41800 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 20 20 20 20 69 66 28 get_len_state(len)].);.......if(
41820 20 64 69 73 74 61 6e 63 65 20 3e 3d 20 73 74 61 72 74 5f 64 69 73 5f 6d 6f 64 65 6c 20 29 0a 20 .distance.>=.start_dis_model.)..
41840 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 65 64 20 .......{.........const.unsigned.
41860 64 69 73 5f 73 6c 6f 74 20 3d 20 64 69 73 74 61 6e 63 65 3b 0a 20 20 20 20 20 20 20 20 63 6f 6e dis_slot.=.distance;.........con
41880 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 73 6c 6f 74 20 st.int.direct_bits.=.(.dis_slot.
418a0 3e 3e 20 31 20 29 20 2d 20 31 3b 0a 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 20 3d 20 28 >>.1.).-.1;.........distance.=.(
418c0 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 63 .2.|.(.dis_slot.&.1.).).<<.direc
418e0 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 65 t_bits;.........if(.dis_slot.<.e
41900 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 64 69 73 74 61 6e 63 nd_dis_model.)...........distanc
41920 65 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 0a e.+=.rdec.decode_tree_reversed(.
41940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 6d 5f 64 69 73 20 2b 20 28 ......................bm_dis.+.(
41960 20 64 69 73 74 61 6e 63 65 20 2d 20 64 69 73 5f 73 6c 6f 74 20 29 2c 20 64 69 72 65 63 74 5f 62 .distance.-.dis_slot.),.direct_b
41980 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 20 20 20 7b 0a its.);.........else...........{.
419a0 20 20 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 20 2b 3d 0a 20 20 20 20 20 20 20 20 20 20 ..........distance.+=...........
419c0 20 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 20 2d 20 64 69 73 ..rdec.decode(.direct_bits.-.dis
419e0 5f 61 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 _align_bits.).<<.dis_align_bits;
41a00 0a 20 20 20 20 20 20 20 20 20 20 64 69 73 74 61 6e 63 65 20 2b 3d 20 72 64 65 63 2e 64 65 63 6f ...........distance.+=.rdec.deco
41a20 64 65 5f 74 72 65 65 5f 72 65 76 65 72 73 65 64 34 28 20 62 6d 5f 61 6c 69 67 6e 20 29 3b 0a 20 de_tree_reversed4(.bm_align.);..
41a40 20 20 20 20 20 20 20 20 20 69 66 28 20 64 69 73 74 61 6e 63 65 20 3d 3d 20 30 78 46 46 46 46 46 .........if(.distance.==.0xFFFFF
41a60 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 20 20 20 20 20 FFFU.)..//.marker.found.........
41a80 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 64 65 63 2e 6e 6f 72 6d 61 6c 69 7a 65 ....{.............rdec.normalize
41aa0 28 29 3b 0a 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 ();.............flush_data();...
41ac0 20 20 20 20 20 20 20 20 20 20 69 66 28 20 6c 65 6e 20 3d 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c ..........if(.len.==.min_match_l
41ae0 65 6e 20 29 09 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 en.)..//.End.Of.Stream.marker...
41b00 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 20 ............{...............if(.
41b20 76 65 72 69 66 79 5f 74 72 61 69 6c 65 72 28 20 70 70 20 29 20 29 20 72 65 74 75 72 6e 20 30 3b verify_trailer(.pp.).).return.0;
41b40 20 65 6c 73 65 20 72 65 74 75 72 6e 20 33 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a .else.return.3;...............}.
41b60 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 20 6c 65 6e 20 3d 3d 20 6d 69 6e 5f 6d 61 74 63 68 ............if(.len.==.min_match
41b80 5f 6c 65 6e 20 2b 20 31 20 29 09 2f 2f 20 53 79 6e 63 20 46 6c 75 73 68 20 6d 61 72 6b 65 72 0a _len.+.1.).//.Sync.Flush.marker.
41ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 64 ..............{...............rd
41bc0 65 63 2e 6c 6f 61 64 28 29 3b 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 ec.load();.continue;............
41be0 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e ...}.............if(.verbosity.>
41c00 3d 20 30 20 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 =.0.)...............{...........
41c20 20 20 20 20 70 70 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 64 3a 3a 66 70 72 ....pp();...............std::fpr
41c40 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 55 6e 73 75 70 70 6f 72 74 65 64 20 6d 61 72 6b 65 intf(.stderr,."Unsupported.marke
41c60 72 20 63 6f 64 65 20 27 25 64 27 5c 6e 22 2c 20 6c 65 6e 20 29 3b 0a 20 20 20 20 20 20 20 20 20 r.code.'%d'\n",.len.);..........
41c80 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 34 3b 0a 20 20 20 .....}.............return.4;....
41ca0 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 20 20 20 7d .........}...........}.........}
41cc0 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 20 72 65 70 31 3b .......rep3.=.rep2;.rep2.=.rep1;
41ce0 20 72 65 70 31 20 3d 20 72 65 70 30 3b 20 72 65 70 30 20 3d 20 64 69 73 74 61 6e 63 65 3b 0a 20 .rep1.=.rep0;.rep0.=.distance;..
41d00 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
41d20 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
41d40 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.).)..
41d60 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 31 3b .......{.flush_data();.return.1;
41d80 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 63 6f 70 79 5f 62 6c 6f 63 6b 28 20 72 65 70 30 2c .}.......}.....copy_block(.rep0,
41da0 20 6c 65 6e 20 29 3b 0a 20 20 20 20 7d 0a 20 20 66 6c 75 73 68 5f 64 61 74 61 28 29 3b 0a 20 20 .len.);.....}...flush_data();...
41dc0 72 65 74 75 72 6e 20 32 3b 0a 20 20 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 return.2;...}...................
41de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41e00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 65 6e 63 6f 64 65 72 2e 63 63 00 00 00 00 00 00 00 00 lzip-1.22-rc2/encoder.cc........
41e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41e60 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
41e80 30 30 34 36 34 32 35 00 31 33 36 35 32 36 31 31 33 30 30 00 30 30 31 33 35 37 34 00 30 00 00 00 0046425.13652611300.0013574.0...
41ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41f00 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...................
41f20 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...................
41f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
41fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
42000 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
42020 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
42040 32 30 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 20.Antonio.Diaz.Diaz......This.p
42060 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
42080 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..
420a0 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.
420c0 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
420e0 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
42100 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.
42120 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).
42140 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
42160 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
42180 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
421a0 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
421c0 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
421e0 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
42200 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
42220 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
42240 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
42260 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
42280 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
422a0 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:/
422c0 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
422e0 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
42300 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
42320 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
42340 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
42360 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>.
42380 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
423a0 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
423c0 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_
423e0 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.*
42400 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
42420 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.
42440 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().).....{.....
42460 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();..
42480 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;
424a0 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
424c0 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
424e0 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.
42500 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
42520 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
42540 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
42560 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.=.
42580 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
425a0 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
425c0 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
425e0 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
42600 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.
42620 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.).);
42640 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
42660 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.+....................(.
42680 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.).
426a0 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.).
426c0 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
426e0 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
42700 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
42720 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]
42740 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
42760 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
42780 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.==
427a0 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;....
427c0 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.>
427e0 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
42800 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;
42820 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.=.
42840 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
42860 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
42880 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
428a0 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
428c0 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].==.
428e0 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;
42900 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.=.
42920 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
42940 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
42960 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
42980 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
429a0 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
429c0 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
429e0 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
42a00 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
42a20 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
42a40 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
42a60 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
42a80 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
42aa0 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
42ac0 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
42ae0 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.
42b00 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;.}.
42b20 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
42b40 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
42b60 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
42b80 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
42ba0 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
42bc0 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(
42be0 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].).
42c00 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
42c20 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
42c40 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
42c60 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.).........{.........
42c80 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
42ca0 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.=
42cc0 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
42ce0 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
42d00 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
42d20 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.=.
42d40 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;.......
42d60 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
42d80 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].).......{.......
42da0 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
42dc0 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;
42de0 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
42e00 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
42e20 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;.
42e40 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
42e60 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
42e80 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;......
42ea0 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;...}
42ec0 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
42ee0 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.
42f00 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
42f20 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
42f40 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
42f60 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.=.(
42f80 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.
42fa0 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.
42fc0 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
42fe0 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(
43000 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.),..
43020 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 ................................
43040 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
43060 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.=.
43080 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
430a0 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
430c0 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(
430e0 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.<.
43100 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.).....{.
43120 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
43140 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_
43160 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
43180 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;..
431a0 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;.
431c0 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
431e0 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(
43200 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.
43220 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
43240 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.).+...............
43260 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
43280 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
432a0 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
432c0 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.=.
432e0 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
43300 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
43320 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_
43340 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]
43360 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]];.....}..
43380 20 7d 0a 0a 0a 2f 2a 20 52 65 74 75 72 6e 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 .}.../*.Returns.the.number.of.by
433a0 74 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 tes.advanced.(ahead).....trials[
433c0 30 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 0]..trials[ahead-1].contain.the.
433e0 73 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 steps.to.encode.....(.trials[0].
43400 64 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 dis4.==.-1.).means.literal.....A
43420 20 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 .match/rep.longer.or.equal.than.
43440 6d 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 match_len_limit.finishes.the.seq
43460 75 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 uence..*/.int.LZ_encoder::sequen
43480 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 6d ce_optimizer(.const.int.reps[num
434a0 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 20 _rep_distances],................
434c0 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 53 74 61 74 65 .....................const.State
434e0 20 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 .state.)...{...int.num_pairs,.nu
43500 6d 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 m_trials;....if(.pending_num_pai
43520 72 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 rs.>.0.)...//.from.previous.call
43540 0a 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 .....{.....num_pairs.=.pending_n
43560 75 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 um_pairs;.....pending_num_pairs.
43580 3d 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 =.0;.....}...else.....num_pairs.
435a0 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 0a 20 20 63 6f 6e 73 =.read_match_distances();...cons
435c0 74 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 t.int.main_len.=.(.num_pairs.>.0
435e0 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 65 6e 20 3a 20 30 3b .).?.pairs[num_pairs-1].len.:.0;
43600 0a 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 ....int.replens[num_rep_distance
43620 73 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 s];...int.rep_index.=.0;...for(.
43640 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 63 65 73 int.i.=.0;.i.<.num_rep_distances
43660 3b 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 ;.++i.).....{.....replens[i].=.t
43680 72 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 rue_match_len(.0,.reps[i].+.1.);
436a0 0a 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 .....if(.replens[i].>.replens[re
436c0 70 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 p_index].).rep_index.=.i;.....}.
436e0 20 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 ..if(.replens[rep_index].>=.matc
43700 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 6c 73 5b 30 h_len_limit.).....{.....trials[0
43720 5d 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 ].price.=.replens[rep_index];...
43740 20 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 ..trials[0].dis4.=.rep_index;...
43760 20 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 ..move_and_update(.replens[rep_i
43780 6e 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 ndex].);.....return.replens[rep_
437a0 69 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 index];.....}....if(.main_len.>=
437c0 20 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 .match_len_limit.).....{.....tri
437e0 61 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 als[0].price.=.main_len;.....tri
43800 61 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 als[0].dis4.=.pairs[num_pairs-1]
43820 2e 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 .dis.+.num_rep_distances;.....mo
43840 76 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 ve_and_update(.main_len.);.....r
43860 65 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 eturn.main_len;.....}....const.i
43880 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 26 nt.pos_state.=.data_position().&
438a0 20 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 .pos_state_mask;...const.uint8_t
438c0 20 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 .prev_byte.=.peek(.1.);...const.
438e0 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 0a 20 20 uint8_t.cur_byte.=.peek(.0.);...
43900 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 3d 20 70 65 65 6b 28 const.uint8_t.match_byte.=.peek(
43920 20 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 .reps[0].+.1.);....trials[1].pri
43940 63 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 ce.=.price0(.bm_match[state()][p
43960 6f 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 os_state].);...if(.state.is_char
43980 28 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 ().).....trials[1].price.+=.pric
439a0 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 5f 62 79 74 65 20 29 e_literal(.prev_byte,.cur_byte.)
439c0 3b 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 ;...else.....trials[1].price.+=.
439e0 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 75 72 5f 62 79 price_matched(.prev_byte,.cur_by
43a00 74 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 te,.match_byte.);...trials[1].di
43a20 73 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 s4.=.-1;.....//.literal....const
43a40 20 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 .int.match_price.=.price1(.bm_ma
43a60 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 3b 0a 20 20 63 6f 6e tch[state()][pos_state].);...con
43a80 73 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 st.int.rep_match_price.=.match_p
43aa0 72 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 rice.+.price1(.bm_rep[state()].)
43ac0 3b 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 ;....if(.match_byte.==.cur_byte.
43ae0 29 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 ).....trials[1].update(.rep_matc
43b00 68 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 h_price.+.price_shortrep(.state,
43b20 20 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 .pos_state.),.0,.0.);....num_tri
43b40 61 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 als.=.std::max(.main_len,.replen
43b60 73 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 s[rep_index].);....if(.num_trial
43b80 73 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 s.<.min_match_len.).....{.....tr
43ba0 69 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 ials[0].price.=.1;.....trials[0]
43bc0 2e 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 .dis4.=.trials[1].dis4;.....move
43be0 5f 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 _pos();.....return.1;.....}....t
43c00 72 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 rials[0].state.=.state;...for(.i
43c20 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;
43c40 20 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 .++i.).....trials[0].reps[i].=.r
43c60 65 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 eps[i];....for(.int.len.=.min_ma
43c80 74 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 tch_len;.len.<=.num_trials;.++le
43ca0 6e 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 n.).....trials[len].price.=.infi
43cc0 6e 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 nite_price;....for(.int.rep.=.0;
43ce0 20 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 .rep.<.num_rep_distances;.++rep.
43d00 29 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 ).....{.....if(.replens[rep].<.m
43d20 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 20 20 20 20 63 6f 6e in_match_len.).continue;.....con
43d40 73 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 st.int.price.=.rep_match_price.+
43d60 20 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 .price_rep(.rep,.state,.pos_stat
43d80 65 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 e.);.....for(.int.len.=.min_matc
43da0 68 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 h_len;.len.<=.replens[rep];.++le
43dc0 6e 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 n.).......trials[len].update(.pr
43de0 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 6c 65 6e 2c ice.+.rep_len_prices.price(.len,
43e00 20 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 .pos_state.),...................
43e20 20 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 ........rep,.0.);.....}....if(.m
43e40 61 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 ain_len.>.replens[0].).....{....
43e60 20 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 .const.int.normal_match_price.=.
43e80 6d 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 match_price.+.price0(.bm_rep[sta
43ea0 74 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 te()].);.....int.i.=.0,.len.=.st
43ec0 64 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 d::max(.replens[0].+.1,.(int)min
43ee0 5f 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 _match_len.);.....while(.len.>.p
43f00 61 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 airs[i].len.).++i;.....while(.tr
43f20 75 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 ue.).......{.......const.int.dis
43f40 20 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 .=.pairs[i].dis;.......trials[le
43f60 6e 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 n].update(.normal_match_price.+.
43f80 70 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 price_pair(.dis,.len,.pos_state.
43fa0 29 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 ),...........................dis
43fc0 20 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 .+.num_rep_distances,.0.);......
43fe0 20 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 .if(.++len.>.pairs[i].len.&&.++i
44000 20 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 .>=.num_pairs.).break;.......}..
44020 20 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 ...}....int.cur.=.0;...while(.tr
44040 75 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 ue.)....//.price.optimization.lo
44060 6f 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 op.....{.....move_pos();.....if(
44080 20 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 .++cur.>=.num_trials.)..//.no.mo
440a0 72 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 re.initialized.trials.......{...
440c0 20 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 ....backward(.cur.);.......retur
440e0 6e 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 n.cur;.......}......const.int.nu
44100 6d 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 m_pairs.=.read_match_distances()
44120 3b 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 ;.....const.int.newlen.=.(.num_p
44140 61 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 airs.>.0.).?.pairs[num_pairs-1].
44160 6c 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 len.:.0;.....if(.newlen.>=.match
44180 5f 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 _len_limit.).......{.......pendi
441a0 6e 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 ng_num_pairs.=.num_pairs;.......
441c0 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 20 63 75 backward(.cur.);.......return.cu
441e0 72 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 r;.......}......//.give.final.va
44200 6c 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 lues.to.current.trial.....Trial.
44220 26 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 &.cur_trial.=.trials[cur];.....S
44240 74 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 tate.cur_state;.....{.....const.
44260 69 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 int.dis4.=.cur_trial.dis4;.....i
44280 6e 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 nt.prev_index.=.cur_trial.prev_i
442a0 6e 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 ndex;.....const.int.prev_index2.
442c0 3d 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 =.cur_trial.prev_index2;......if
442e0 28 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 (.prev_index2.==.single_step_tri
44300 61 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 al.).......{.......cur_state.=.t
44320 72 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 rials[prev_index].state;.......i
44340 66 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 f(.prev_index.+.1.==.cur.)...//.
44360 6c 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 len.==.1.........{.........if(.d
44380 69 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 5f 72 is4.==.0.).cur_state.set_short_r
443a0 65 70 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 ep();.........else.cur_state.set
443c0 5f 63 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 _char();...//.literal.........}.
443e0 20 20 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 ......else.if(.dis4.<.num_rep_di
44400 73 74 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 stances.).cur_state.set_rep();..
44420 20 20 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 .....else.cur_state.set_match();
44440 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 20 20 .......}.....else.......{.......
44460 69 66 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 if(.prev_index2.==.dual_step_tri
44480 61 6c 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 al.).//.dis4.==.0.(rep0)........
444a0 20 2d 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 .--prev_index;.......else.....//
444c0 20 70 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 .prev_index2.>=.0.........prev_i
444e0 6e 64 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 ndex.=.prev_index2;.......cur_st
44500 61 74 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 ate.set_char_rep();.......}.....
44520 63 75 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 cur_trial.state.=.cur_state;....
44540 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 72 65 70 5f 64 69 73 .for(.int.i.=.0;.i.<.num_rep_dis
44560 74 61 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 tances;.++i.).......cur_trial.re
44580 70 73 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 ps[i].=.trials[prev_index].reps[
445a0 69 5d 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 i];.....mtf_reps(.dis4,.cur_tria
445c0 6c 2e 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 l.reps.);..//.literal.is.ignored
445e0 0a 20 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 .....}......const.int.pos_state.
44600 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 65 5f 6d 61 =.data_position().&.pos_state_ma
44620 73 6b 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 sk;.....const.uint8_t.prev_byte.
44640 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 5f 74 20 63 =.peek(.1.);.....const.uint8_t.c
44660 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 73 74 20 75 ur_byte.=.peek(.0.);.....const.u
44680 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 63 75 72 5f 74 72 int8_t.match_byte.=.peek(.cur_tr
446a0 69 61 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 ial.reps[0].+.1.);......int.next
446c0 5f 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 0a 20 20 20 20 20 _price.=.cur_trial.price.+......
446e0 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 5f 6d 61 74 63 68 ................price0(.bm_match
44700 5b 63 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 [cur_state()][pos_state].);.....
44720 69 66 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 if(.cur_state.is_char().).......
44740 6e 65 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 next_price.+=.price_literal(.pre
44760 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 0a 20 20 20 v_byte,.cur_byte.);.....else....
44780 20 20 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 ...next_price.+=.price_matched(.
447a0 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 20 prev_byte,.cur_byte,.match_byte.
447c0 29 3b 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 );......//.try.last.updates.to.n
447e0 65 78 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 ext.trial.....Trial.&.next_trial
44800 20 3d 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 .=.trials[cur+1];......next_tria
44820 6c 2e 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 l.update(.next_price,.-1,.cur.);
44840 09 09 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 ..//.literal......const.int.matc
44860 68 5f 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 h_price.=.cur_trial.price.+.pric
44880 65 31 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 e1(.bm_match[cur_state()][pos_st
448a0 61 74 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 ate].);.....const.int.rep_match_
448c0 70 72 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 price.=.match_price.+.price1(.bm
448e0 5f 72 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 _rep[cur_state()].);......if(.ma
44900 74 63 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 tch_byte.==.cur_byte.&&.next_tri
44920 61 6c 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 al.dis4.!=.0.&&.........next_tri
44940 61 6c 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 al.prev_index2.==.single_step_tr
44960 69 61 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 ial.).......{.......const.int.pr
44980 69 63 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 ice.=.rep_match_price.+.price_sh
449a0 6f 72 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 ortrep(.cur_state,.pos_state.);.
449c0 20 20 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 ......if(.price.<=.next_trial.pr
449e0 69 63 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 ice.).........{.........next_tri
44a00 61 6c 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 al.price.=.price;.........next_t
44a20 72 69 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 rial.dis4.=.0;....//.rep0.......
44a40 20 20 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 ..next_trial.prev_index.=.cur;..
44a60 20 20 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 .......}.......}......const.int.
44a80 74 72 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 triable_bytes.=.......std::min(.
44aa0 61 76 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 available_bytes(),.max_num_trial
44ac0 73 20 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 s.-.1.-.cur.);.....if(.triable_b
44ae0 79 74 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 ytes.<.min_match_len.).continue;
44b00 0a 0a 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 ......const.int.len_limit.=.std:
44b20 3a 6d 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 :min(.match_len_limit,.triable_b
44b40 79 74 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 ytes.);......//.try.literal.+.re
44b60 70 30 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 p0.....if(.match_byte.!=.cur_byt
44b80 65 20 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 e.&&.next_trial.prev_index.!=.cu
44ba0 72 20 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 r.).......{.......const.uint8_t.
44bc0 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 72 65 6e 74 5f 70 6f *.const.data.=.ptr_to_current_po
44be0 73 28 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 s();.......const.int.dis.=.cur_t
44c00 72 69 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 rial.reps[0].+.1;.......const.in
44c20 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 5f 6c 65 6e 5f 6c 69 t.limit.=.std::min(.match_len_li
44c40 6d 69 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 mit.+.1,.triable_bytes.);.......
44c60 69 6e 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 int.len.=.1;.......while(.len.<.
44c80 6c 69 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 limit.&&.data[len-dis].==.data[l
44ca0 65 6e 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 en].).++len;.......if(.--len.>=.
44cc0 6d 69 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 min_match_len.).........{.......
44ce0 20 20 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 ..const.int.pos_state2.=.(.pos_s
44d00 74 61 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 tate.+.1.).&.pos_state_mask;....
44d20 20 20 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 .....State.state2.=.cur_state;.s
44d40 74 61 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 tate2.set_char();.........const.
44d60 69 6e 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 int.price.=.next_price.+........
44d80 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 5f 6d 61 ...................price1(.bm_ma
44da0 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].).+...
44dc0 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 31 28 20 ........................price1(.
44de0 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 20 20 20 20 20 20 bm_rep[state2()].).+............
44e00 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 6c ...............price_rep0_len(.l
44e20 65 6e 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 en,.state2,.pos_state2.);.......
44e40 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 20 2b 20 31 20 2b 20 ..while(.num_trials.<.cur.+.1.+.
44e60 6c 65 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 len.)...........trials[++num_tri
44e80 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 3b 0a 20 20 20 als].price.=.infinite_price;....
44ea0 20 20 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 .....trials[cur+1+len].update2(.
44ec0 70 72 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 price,.cur.+.1.);.........}.....
44ee0 20 20 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 ..}......int.start_len.=.min_mat
44f00 63 68 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 ch_len;......//.try.rep.distance
44f20 73 0a 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 s.....for(.int.rep.=.0;.rep.<.nu
44f40 6d 5f 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 m_rep_distances;.++rep.).......{
44f60 0a 20 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 .......const.uint8_t.*.const.dat
44f80 61 20 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 a.=.ptr_to_current_pos();.......
44fa0 63 6f 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 const.int.dis.=.cur_trial.reps[r
44fc0 65 70 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 ep].+.1;.......int.len;........i
44fe0 66 28 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 f(.data[0-dis].!=.data[0].||.dat
45000 61 5b 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 a[1-dis].!=.data[1].).continue;.
45020 20 20 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 ......for(.len.=.min_match_len;.
45040 6c 65 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 len.<.len_limit;.++len.)........
45060 20 69 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 .if(.data[len-dis].!=.data[len].
45080 29 20 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 ).break;.......while(.num_trials
450a0 20 3c 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 .<.cur.+.len.).........trials[++
450c0 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 69 74 65 5f 70 72 69 num_trials].price.=.infinite_pri
450e0 63 65 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 ce;.......int.price.=.rep_match_
45100 70 72 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 price.+.price_rep(.rep,.cur_stat
45120 65 2c 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 e,.pos_state.);.......for(.int.i
45140 20 3d 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 .=.min_match_len;.i.<=.len;.++i.
45160 29 0a 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 ).........trials[cur+i].update(.
45180 70 72 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 price.+.rep_len_prices.price(.i,
451a0 20 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 .pos_state.),...................
451c0 20 20 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 ............rep,.cur.);........i
451e0 66 28 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 f(.rep.==.0.).start_len.=.len.+.
45200 31 3b 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 1;.//.discard.shorter.matches...
45220 20 20 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 .....//.try.rep.+.literal.+.rep0
45240 0a 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 .......int.len2.=.len.+.1;......
45260 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 6d 61 74 .const.int.limit.=.std::min(.mat
45280 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 62 79 74 ch_len_limit.+.len2,.triable_byt
452a0 65 73 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 es.);.......while(.len2.<.limit.
452c0 26 26 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 &&.data[len2-dis].==.data[len2].
452e0 29 20 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 ).++len2;.......len2.-=.len.+.1;
45300 0a 20 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 .......if(.len2.<.min_match_len.
45320 29 20 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 ).continue;........int.pos_state
45340 32 20 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 2.=.(.pos_state.+.len.).&.pos_st
45360 61 74 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 ate_mask;.......State.state2.=.c
45380 75 72 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 ur_state;.state2.set_rep();.....
453a0 20 20 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 ..price.+=.rep_len_prices.price(
453c0 20 6c 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 .len,.pos_state.).+.............
453e0 20 20 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 ...price0(.bm_match[state2()][po
45400 73 5f 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 s_state2].).+................pri
45420 63 65 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 ce_matched(.data[len-1],.data[le
45440 6e 5d 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 n],.data[len-dis].);.......pos_s
45460 74 61 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 tate2.=.(.pos_state2.+.1.).&.pos
45480 5f 73 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 _state_mask;.......state2.set_ch
454a0 61 72 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 ar();.......price.+=.price1(.bm_
454c0 6d 61 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 match[state2()][pos_state2].).+.
454e0 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 72 65 70 5b 73 74 ...............price1(.bm_rep[st
45500 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 20 20 70 72 69 63 65 ate2()].).+................price
45520 5f 72 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 _rep0_len(.len2,.state2,.pos_sta
45540 74 65 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 te2.);.......while(.num_trials.<
45560 20 63 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 .cur.+.len.+.1.+.len2.).........
45580 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 6e 66 trials[++num_trials].price.=.inf
455a0 69 6e 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 inite_price;.......trials[cur+le
455c0 6e 2b 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 n+1+len2].update3(.price,.rep,.c
455e0 75 72 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 ur.+.len.+.1,.cur.);.......}....
45600 20 20 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 ..//.try.matches.....if(.newlen.
45620 3e 3d 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 >=.start_len.&&.newlen.<=.len_li
45640 6d 69 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 mit.).......{.......const.int.no
45660 72 6d 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 rmal_match_price.=.match_price.+
45680 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 20 ................................
456a0 20 20 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 ......price0(.bm_rep[cur_state()
456c0 5d 20 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 ].);........while(.num_trials.<.
456e0 63 75 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 cur.+.newlen.).........trials[++
45700 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 69 74 65 5f 70 72 69 num_trials].price.=.infinite_pri
45720 63 65 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 ce;........int.i.=.0;.......whil
45740 65 28 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 e(.pairs[i].len.<.start_len.).++
45760 69 3b 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 i;.......int.dis.=.pairs[i].dis;
45780 0a 20 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 .......for(.int.len.=.start_len;
457a0 20 3b 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 .;.++len.).........{.........int
457c0 20 70 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 .price.=.normal_match_price.+.pr
457e0 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 3b ice_pair(.dis,.len,.pos_state.);
45800 0a 20 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 .........trials[cur+len].update(
45820 20 70 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 .price,.dis.+.num_rep_distances,
45840 20 63 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 .cur.);..........//.try.match.+.
45860 6c 69 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 literal.+.rep0.........if(.len.=
45880 3d 20 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 =.pairs[i].len.)...........{....
458a0 20 20 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 .......const.uint8_t.*.const.dat
458c0 61 20 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 a.=.ptr_to_current_pos();.......
458e0 20 20 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 ....const.int.dis2.=.dis.+.1;...
45900 20 20 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 ........int.len2.=.len.+.1;.....
45920 20 20 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 ......const.int.limit.=.std::min
45940 28 20 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 (.match_len_limit.+.len2,.triabl
45960 65 5f 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 e_bytes.);...........while(.len2
45980 20 3c 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 .<.limit.&&.data[len2-dis2].==.d
459a0 61 74 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 ata[len2].).++len2;...........le
459c0 6e 32 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 n2.-=.len.+.1;...........if(.len
459e0 32 20 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 2.>=.min_match_len.)............
45a00 20 7b 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 .{.............int.pos_state2.=.
45a20 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 65 5f (.pos_state.+.len.).&.pos_state_
45a40 6d 61 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 mask;.............State.state2.=
45a60 20 63 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 .cur_state;.state2.set_match();.
45a80 20 20 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 ............price.+=.price0(.bm_
45aa0 6d 61 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 match[state2()][pos_state2].).+.
45ac0 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 5f 6d 61 74 63 68 .....................price_match
45ae0 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 2c 20 64 61 74 61 ed(.data[len-1],.data[len],.data
45b00 5b 6c 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 [len-dis2].);.............pos_st
45b20 61 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 ate2.=.(.pos_state2.+.1.).&.pos_
45b40 73 74 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 state_mask;.............state2.s
45b60 65 74 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 et_char();.............price.+=.
45b80 70 72 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 price1(.bm_match[state2()][pos_s
45ba0 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 20 20 20 20 20 20 tate2].).+......................
45bc0 70 72 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 price1(.bm_rep[state2()].).+....
45be0 20 20 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 ..................price_rep0_len
45c00 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 32 20 29 3b 0a 0a 20 (.len2,.state2,.pos_state2.);...
45c20 20 20 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 ...........while(.num_trials.<.c
45c40 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 20 20 ur.+.len.+.1.+.len2.)...........
45c60 20 20 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 ....trials[++num_trials].price.=
45c80 20 69 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 .infinite_price;.............tri
45ca0 61 6c 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 als[cur+len+1+len2].update3(.pri
45cc0 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 0a 20 20 20 ce,.dis.+.num_rep_distances,....
45ce0 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 ................................
45d00 20 20 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 .........cur.+.len.+.1,.cur.);..
45d20 20 20 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 ...........}...........if(.++i.>
45d40 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 20 20 20 20 64 =.num_pairs.).break;...........d
45d60 69 73 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 is.=.pairs[i].dis;...........}..
45d80 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 7d 0a 0a 0a 62 6f 6f .......}.......}.....}...}...boo
45da0 6c 20 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 l.LZ_encoder::encode_member(.con
45dc0 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 7a st.unsigned.long.long.member_siz
45de0 65 20 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 e.)...{...const.unsigned.long.lo
45e00 6e 67 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 ng.member_size_limit.=.....membe
45e20 72 5f 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 r_size.-.Lzip_trailer::size.-.ma
45e40 78 5f 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 x_marker_size;...const.bool.best
45e60 20 3d 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 3b 0a 20 20 63 .=.(.match_len_limit.>.12.);...c
45e80 6f 6e 73 74 20 69 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 onst.int.dis_price_count.=.best.
45ea0 3f 20 31 20 3a 20 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 ?.1.:.512;...const.int.align_pri
45ec0 63 65 5f 63 6f 75 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 ce_count.=.best.?.1.:.dis_align_
45ee0 73 69 7a 65 3b 0a 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 size;...const.int.price_count.=.
45f00 28 20 6d 61 74 63 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 (.match_len_limit.>.36.).?.1013.
45f20 3a 20 34 30 39 33 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 :.4093;...int.price_counter.=.0;
45f40 09 09 2f 2f 20 63 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 ..//.counters.may.decrement.belo
45f60 77 20 30 0a 20 20 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 w.0...int.dis_price_counter.=.0;
45f80 0a 20 20 69 6e 74 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 ...int.align_price_counter.=.0;.
45fa0 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 65 73 5d 3b 0a 20 ..int.reps[num_rep_distances];..
45fc0 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 69 20 3d 20 30 3b 20 .State.state;...for(.int.i.=.0;.
45fe0 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 69 20 29 20 72 65 70 i.<.num_rep_distances;.++i.).rep
46000 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 69 74 69 6f 6e 28 29 s[i].=.0;....if(.data_position()
46020 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 74 69 6f 6e 28 29 20 .!=.0.||.renc.member_position().
46040 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 20 20 72 65 74 75 72 !=.Lzip_header::size.).....retur
46060 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 6c 65 64 20 6f 6e 6c n.false;....//.can.be.called.onl
46080 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 68 65 64 28 29 20 29 y.once....if(.!data_finished().)
460a0 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 20 20 20 7b 0a 20 20 ...//.encode.first.byte.....{...
460c0 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 30 3b 0a 20 ..const.uint8_t.prev_byte.=.0;..
460e0 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 20 3d 20 70 65 65 6b ...const.uint8_t.cur_byte.=.peek
46100 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 74 28 20 62 6d 5f 6d (.0.);.....renc.encode_bit(.bm_m
46120 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 20 20 65 6e 63 6f 64 atch[state()][0],.0.);.....encod
46140 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 5f 62 79 74 65 20 29 e_literal(.prev_byte,.cur_byte.)
46160 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 63 72 63 5f 2c 20 63 ;.....crc32.update_byte(.crc_,.c
46180 75 72 5f 62 79 74 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 ur_byte.);.....get_match_pairs()
461a0 3b 0a 20 20 20 20 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 ;.....move_pos();.....}....while
461c0 28 20 21 64 61 74 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 (.!data_finished().).....{.....i
461e0 66 28 20 70 72 69 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 f(.price_counter.<=.0.&&.pending
46200 5f 6e 75 6d 5f 70 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 _num_pairs.==.0.).......{.......
46220 70 72 69 63 65 5f 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 price_counter.=.price_count;.//.
46240 72 65 63 61 6c 63 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 recalculate.prices.every.these.b
46260 79 74 65 73 0a 20 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 ytes.......if(.dis_price_counter
46280 20 3c 3d 20 30 20 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 .<=.0.).........{.dis_price_coun
462a0 74 65 72 20 3d 20 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 ter.=.dis_price_count;.update_di
462c0 73 74 61 6e 63 65 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 stance_prices();.}.......if(.ali
462e0 67 6e 5f 70 72 69 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 gn_price_counter.<=.0.).........
46300 7b 0a 20 20 20 20 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 {.........align_price_counter.=.
46320 61 6c 69 67 6e 5f 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 align_price_count;.........for(.
46340 69 6e 74 20 69 20 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 int.i.=.0;.i.<.dis_align_size;.+
46360 2b 69 20 29 0a 20 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 +i.)...........align_prices[i].=
46380 20 70 72 69 63 65 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 .price_symbol_reversed(.bm_align
463a0 2c 20 69 2c 20 64 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 ,.i,.dis_align_bits.);.........}
463c0 0a 20 20 20 20 20 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 .......match_len_prices.update_p
463e0 72 69 63 65 73 28 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 rices();.......rep_len_prices.up
46400 64 61 74 65 5f 70 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 date_prices();.......}......int.
46420 61 68 65 61 64 20 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 ahead.=.sequence_optimizer(.reps
46440 2c 20 73 74 61 74 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 ,.state.);.....price_counter.-=.
46460 61 68 65 61 64 3b 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 ahead;......for(.int.i.=.0;.ahea
46480 64 20 3e 20 30 3b 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 d.>.0;.).......{.......const.int
464a0 20 70 6f 73 5f 73 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 .pos_state.=.(.data_position().-
464c0 20 61 68 65 61 64 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 .ahead.).&.pos_state_mask;......
464e0 20 63 6f 6e 73 74 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 .const.int.len.=.trials[i].price
46500 3b 0a 20 20 20 20 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 ;.......int.dis.=.trials[i].dis4
46520 3b 0a 0a 20 20 20 20 20 20 62 6f 6f 6c 20 62 69 74 20 3d 20 28 20 64 69 73 20 3c 20 30 20 29 3b ;........bool.bit.=.(.dis.<.0.);
46540 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 6d 61 74 63 68 .......renc.encode_bit(.bm_match
46560 5b 73 74 61 74 65 28 29 5d 5b 70 6f 73 5f 73 74 61 74 65 5d 2c 20 21 62 69 74 20 29 3b 0a 20 20 [state()][pos_state],.!bit.);...
46580 20 20 20 20 69 66 28 20 62 69 74 20 29 09 09 09 09 09 2f 2f 20 6c 69 74 65 72 61 6c 20 62 79 74 ....if(.bit.).....//.literal.byt
465a0 65 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 69 6e 74 38 5f e.........{.........const.uint8_
465c0 74 20 70 72 65 76 5f 62 79 74 65 20 3d 20 70 65 65 6b 28 20 61 68 65 61 64 20 2b 20 31 20 29 3b t.prev_byte.=.peek(.ahead.+.1.);
465e0 0a 20 20 20 20 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 20 .........const.uint8_t.cur_byte.
46600 3d 20 70 65 65 6b 28 20 61 68 65 61 64 20 29 3b 0a 20 20 20 20 20 20 20 20 63 72 63 33 32 2e 75 =.peek(.ahead.);.........crc32.u
46620 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 65 20 29 3b 0a 20 20 pdate_byte(.crc_,.cur_byte.);...
46640 20 20 20 20 20 20 69 66 28 20 73 74 61 74 65 2e 69 73 5f 63 68 61 72 5f 73 65 74 5f 63 68 61 72 ......if(.state.is_char_set_char
46660 28 29 20 29 0a 20 20 20 20 20 20 20 20 20 20 65 6e 63 6f 64 65 5f 6c 69 74 65 72 61 6c 28 20 70 ().)...........encode_literal(.p
46680 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 20 20 20 20 65 6c rev_byte,.cur_byte.);.........el
466a0 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 63 6f 6e 73 74 20 75 se...........{...........const.u
466c0 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 61 68 65 61 64 20 int8_t.match_byte.=.peek(.ahead.
466e0 2b 20 72 65 70 73 5b 30 5d 20 2b 20 31 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 65 6e 63 6f 64 +.reps[0].+.1.);...........encod
46700 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 65 2c 20 e_matched(.prev_byte,.cur_byte,.
46720 6d 61 74 63 68 5f 62 79 74 65 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 match_byte.);...........}.......
46740 20 20 7d 0a 20 20 20 20 20 20 65 6c 73 65 09 09 09 09 09 2f 2f 20 6d 61 74 63 68 20 6f 72 20 72 ..}.......else.....//.match.or.r
46760 65 70 65 61 74 65 64 20 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 epeated.match.........{.........
46780 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 72 5f 74 6f 5f 63 crc32.update_buf(.crc_,.ptr_to_c
467a0 75 72 72 65 6e 74 5f 70 6f 73 28 29 20 2d 20 61 68 65 61 64 2c 20 6c 65 6e 20 29 3b 0a 20 20 20 urrent_pos().-.ahead,.len.);....
467c0 20 20 20 20 20 6d 74 66 5f 72 65 70 73 28 20 64 69 73 2c 20 72 65 70 73 20 29 3b 0a 20 20 20 20 .....mtf_reps(.dis,.reps.);.....
467e0 20 20 20 20 62 69 74 20 3d 20 28 20 64 69 73 20 3c 20 6e 75 6d 5f 72 65 70 5f 64 69 73 74 61 6e ....bit.=.(.dis.<.num_rep_distan
46800 63 65 73 20 29 3b 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 ces.);.........renc.encode_bit(.
46820 62 6d 5f 72 65 70 5b 73 74 61 74 65 28 29 5d 2c 20 62 69 74 20 29 3b 0a 20 20 20 20 20 20 20 20 bm_rep[state()],.bit.);.........
46840 69 66 28 20 62 69 74 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 if(.bit.)....//.repeated.match..
46860 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 62 69 74 20 3d 20 28 20 64 69 73 .........{...........bit.=.(.dis
46880 20 3d 3d 20 30 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 .==.0.);...........renc.encode_b
468a0 69 74 28 20 62 6d 5f 72 65 70 30 5b 73 74 61 74 65 28 29 5d 2c 20 21 62 69 74 20 29 3b 0a 20 20 it(.bm_rep0[state()],.!bit.);...
468c0 20 20 20 20 20 20 20 20 69 66 28 20 62 69 74 20 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 ........if(.bit.).............re
468e0 6e 63 2e 65 6e 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 70 nc.encode_bit(.bm_len[state()][p
46900 6f 73 5f 73 74 61 74 65 5d 2c 20 6c 65 6e 20 3e 20 31 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 os_state],.len.>.1.);...........
46920 65 6c 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 else.............{.............r
46940 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 65 28 29 5d enc.encode_bit(.bm_rep1[state()]
46960 2c 20 64 69 73 20 3e 20 31 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 20 64 69 73 ,.dis.>.1.);.............if(.dis
46980 20 3e 20 31 20 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 .>.1.)...............renc.encode
469a0 5f 62 69 74 28 20 62 6d 5f 72 65 70 32 5b 73 74 61 74 65 28 29 5d 2c 20 64 69 73 20 3e 20 32 20 _bit(.bm_rep2[state()],.dis.>.2.
469c0 29 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 69 66 28 20 6c );.............}...........if(.l
469e0 65 6e 20 3d 3d 20 31 20 29 20 73 74 61 74 65 2e 73 65 74 5f 73 68 6f 72 74 5f 72 65 70 28 29 3b en.==.1.).state.set_short_rep();
46a00 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 0a 20 20 ...........else.............{...
46a20 20 20 20 20 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 ..........renc.encode_len(.rep_l
46a40 65 6e 5f 6d 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 en_model,.len,.pos_state.);.....
46a60 20 20 20 20 20 20 20 20 72 65 70 5f 6c 65 6e 5f 70 72 69 63 65 73 2e 64 65 63 72 65 6d 65 6e 74 ........rep_len_prices.decrement
46a80 5f 63 6f 75 6e 74 65 72 28 20 70 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 20 20 20 20 20 20 20 _counter(.pos_state.);..........
46aa0 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 20 20 20 20 20 20 ...state.set_rep();.............
46ac0 7d 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 65 6c 73 65 09 09 09 09 09 2f }...........}.........else...../
46ae0 2f 20 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 64 69 /.match...........{...........di
46b00 73 20 2d 3d 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 20 s.-=.num_rep_distances;.........
46b20 20 20 65 6e 63 6f 64 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 ..encode_pair(.dis,.len,.pos_sta
46b40 74 65 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 69 66 28 20 64 69 73 20 3e 3d 20 6d 6f 64 65 6c te.);...........if(.dis.>=.model
46b60 65 64 5f 64 69 73 74 61 6e 63 65 73 20 29 20 2d 2d 61 6c 69 67 6e 5f 70 72 69 63 65 5f 63 6f 75 ed_distances.).--align_price_cou
46b80 6e 74 65 72 3b 0a 20 20 20 20 20 20 20 20 20 20 2d 2d 64 69 73 5f 70 72 69 63 65 5f 63 6f 75 6e nter;...........--dis_price_coun
46ba0 74 65 72 3b 0a 20 20 20 20 20 20 20 20 20 20 6d 61 74 63 68 5f 6c 65 6e 5f 70 72 69 63 65 73 2e ter;...........match_len_prices.
46bc0 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 20 29 3b 0a decrement_counter(.pos_state.);.
46be0 20 20 20 20 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 20 20 20 ..........state.set_match();....
46c00 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 61 68 65 61 64 20 2d .......}.........}.......ahead.-
46c20 3d 20 6c 65 6e 3b 20 69 20 2b 3d 20 6c 65 6e 3b 0a 20 20 20 20 20 20 69 66 28 20 72 65 6e 63 2e =.len;.i.+=.len;.......if(.renc.
46c40 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 29 20 3e 3d 20 6d 65 6d 62 65 72 5f 73 69 7a 65 member_position().>=.member_size
46c60 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 69 66 28 20 21 _limit.).........{.........if(.!
46c80 64 65 63 5f 70 6f 73 28 20 61 68 65 61 64 20 29 20 29 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b dec_pos(.ahead.).).return.false;
46ca0 0a 20 20 20 20 20 20 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 .........full_flush(.state.);...
46cc0 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 ......return.true;.........}....
46ce0 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 66 75 6c 6c 5f 66 6c 75 73 68 28 20 73 74 61 74 65 20 29 ...}.....}...full_flush(.state.)
46d00 3b 0a 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 7d 0a 00 00 00 00 00 00 00 00 00 00 00 ;...return.true;...}............
46d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46e00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 63 63 00 00 00 lzip-1.22-rc2/encoder_base.cc...
46e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46e60 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
46e80 30 30 31 34 31 37 37 00 31 33 36 35 32 36 31 31 33 30 30 00 30 30 31 34 35 36 35 00 30 00 00 00 0014177.13652611300.0014565.0...
46ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46f00 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...................
46f20 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...................
46f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
47000 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
47020 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
47040 32 30 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 20.Antonio.Diaz.Diaz......This.p
47060 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
47080 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..
470a0 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.
470c0 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
470e0 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
47100 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.
47120 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).
47140 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
47160 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
47180 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
471a0 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
471c0 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
471e0 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
47200 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
47220 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
47240 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
47260 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
47280 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
472a0 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:/
472c0 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
472e0 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
47300 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
47320 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
47340 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.
47360 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
47380 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
473a0 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
473c0 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
473e0 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
47400 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_
47420 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
47440 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
47460 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;...
47480 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
474a0 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.);..
474c0 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.
474e0 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(.
47500 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
47520 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_
47540 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
47560 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
47580 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
475a0 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.
475c0 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
475e0 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.".);...
47600 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.).....{...../
47620 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:
47640 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
47660 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
47680 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.=.
476a0 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
476c0 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,.
476e0 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.+=.
47700 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
47720 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
47740 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;....
47760 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
47780 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
477a0 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
477c0 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.
477e0 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.)..
47800 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
47820 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_
47840 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
47860 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
47880 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_,................
478a0 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.
478c0 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,.................
478e0 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
47900 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_,.....
47920 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
47940 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.)...:.
47960 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
47980 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
479a0 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_
479c0 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
479e0 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
47a00 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
47a20 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
47a40 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_
47a60 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
47a80 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
47aa0 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
47ac0 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.
47ae0 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
47b00 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().&&
47b20 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.<
47b40 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
47b60 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.*)
47b80 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
47ba0 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:
47bc0 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_
47be0 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;....
47c00 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
47c20 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(.
47c40 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
47c60 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.=.
47c80 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
47ca0 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
47cc0 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_
47ce0 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
47d00 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
47d20 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:
47d40 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_
47d60 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
47d80 72 79 5f 73 69 7a 65 20 3e 20 31 20 3c 3c 20 32 36 20 29 09 09 2f 2f 20 36 34 20 4d 69 42 0a 20 ry_size.>.1.<<.26.)..//.64.MiB..
47da0 20 20 20 73 69 7a 65 20 3e 3e 3d 20 31 3b 0a 20 20 6b 65 79 34 5f 6d 61 73 6b 20 3d 20 73 69 7a ...size.>>=.1;...key4_mask.=.siz
47dc0 65 20 2d 20 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 e.-.1;...//.increases.with.dicti
47de0 6f 6e 61 72 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 onary.size...size.+=.num_prev_po
47e00 73 69 74 69 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 sitions23;...num_prev_positions.
47e20 3d 20 73 69 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 =.size;....pos_array_size.=.pos_
47e40 61 72 72 61 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 array_factor.*.(.dictionary_size
47e60 20 2b 20 31 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 .+.1.);...size.+=.pos_array_size
47e80 3b 0a 20 20 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 ;...if(.size.*.sizeof.prev_posit
47ea0 69 6f 6e 73 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 ions[0].<=.size.).prev_positions
47ec0 20 3d 20 30 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 .=.0;...else.prev_positions.=.ne
47ee0 77 28 20 73 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 w(.std::nothrow.).int32_t[size];
47f00 0a 20 20 69 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 ...if(.!prev_positions.).{.std::
47f20 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 61 free(.buffer.);.throw.std::bad_a
47f40 6c 6c 6f 63 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 lloc();.}...pos_array.=.prev_pos
47f60 69 74 69 6f 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 itions.+.num_prev_positions;...f
47f80 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 73 69 or(.int.i.=.0;.i.<.num_prev_posi
47fa0 74 69 6f 6e 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 tions;.++i.).prev_positions[i].=
47fc0 20 30 3b 0a 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 .0;...}...void.Matchfinder_base:
47fe0 3a 72 65 73 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 :reset()...{...if(.stream_pos.>.
48000 70 6f 73 20 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 pos.).....std::memmove(.buffer,.
48020 62 75 66 66 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 buffer.+.pos,.stream_pos.-.pos.)
48040 3b 0a 20 20 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 ;...partial_data_pos.=.0;...stre
48060 61 6d 5f 70 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 am_pos.-=.pos;...pos.=.0;...cycl
48080 69 63 5f 70 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 ic_pos.=.0;...read_block();...if
480a0 28 20 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 (.at_stream_end.&&.stream_pos.<.
480c0 64 69 63 74 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 dictionary_size.).....{.....dict
480e0 69 6f 6e 61 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 ionary_size.=.std::max(.(int)min
48100 5f 64 69 63 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 _dictionary_size,.stream_pos.);.
48120 20 20 20 20 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 ....int.size.=.1.<<.std::max(.16
48140 2c 20 72 65 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 ,.real_bits(.dictionary_size.-.1
48160 20 29 20 2d 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 .).-.2.);.....if(.dictionary_siz
48180 65 20 3e 20 31 20 3c 3c 20 32 36 20 29 09 09 2f 2f 20 36 34 20 4d 69 42 0a 20 20 20 20 20 20 73 e.>.1.<<.26.)..//.64.MiB.......s
481a0 69 7a 65 20 3e 3e 3d 20 31 3b 0a 20 20 20 20 6b 65 79 34 5f 6d 61 73 6b 20 3d 20 73 69 7a 65 20 ize.>>=.1;.....key4_mask.=.size.
481c0 2d 20 31 3b 0a 20 20 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 -.1;.....size.+=.num_prev_positi
481e0 6f 6e 73 32 33 3b 0a 20 20 20 20 6e 75 6d 5f 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 20 3d 20 ons23;.....num_prev_positions.=.
48200 73 69 7a 65 3b 0a 20 20 20 20 70 6f 73 5f 61 72 72 61 79 20 3d 20 70 72 65 76 5f 70 6f 73 69 74 size;.....pos_array.=.prev_posit
48220 69 6f 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 20 20 7d ions.+.num_prev_positions;.....}
48240 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 6d 5f 70 72 65 76 5f ...for(.int.i.=.0;.i.<.num_prev_
48260 70 6f 73 69 74 69 6f 6e 73 3b 20 2b 2b 69 20 29 20 70 72 65 76 5f 70 6f 73 69 74 69 6f 6e 73 5b positions;.++i.).prev_positions[
48280 69 5d 20 3d 20 30 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 52 61 6e 67 65 5f 65 6e 63 6f 64 65 72 i].=.0;...}...void.Range_encoder
482a0 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 30 ::flush_data()...{...if(.pos.>.0
482c0 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 6f 75 74 66 64 20 3e 3d 20 30 20 26 26 20 77 .).....{.....if(.outfd.>=.0.&&.w
482e0 72 69 74 65 62 6c 6f 63 6b 28 20 6f 75 74 66 64 2c 20 62 75 66 66 65 72 2c 20 70 6f 73 20 29 20 riteblock(.outfd,.buffer,.pos.).
48300 21 3d 20 70 6f 73 20 29 0a 20 20 20 20 20 20 74 68 72 6f 77 20 45 72 72 6f 72 28 20 22 57 72 69 !=.pos.).......throw.Error(."Wri
48320 74 65 20 65 72 72 6f 72 22 20 29 3b 0a 20 20 20 20 70 61 72 74 69 61 6c 5f 6d 65 6d 62 65 72 5f te.error".);.....partial_member_
48340 70 6f 73 20 2b 3d 20 70 6f 73 3b 0a 20 20 20 20 70 6f 73 20 3d 20 30 3b 0a 20 20 20 20 73 68 6f pos.+=.pos;.....pos.=.0;.....sho
48360 77 5f 63 70 72 6f 67 72 65 73 73 28 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 0a 0a 0a 2f 2f 20 45 6e w_cprogress();.....}...}...//.En
48380 64 20 4f 66 20 53 74 72 65 61 6d 20 6d 61 72 6b 65 72 20 3d 3e 20 28 64 69 73 20 3d 3d 20 30 78 d.Of.Stream.marker.=>.(dis.==.0x
483a0 46 46 46 46 46 46 46 46 55 2c 20 6c 65 6e 20 3d 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 29 FFFFFFFFU,.len.==.min_match_len)
483c0 0a 76 6f 69 64 20 4c 5a 5f 65 6e 63 6f 64 65 72 5f 62 61 73 65 3a 3a 66 75 6c 6c 5f 66 6c 75 73 .void.LZ_encoder_base::full_flus
483e0 68 28 20 63 6f 6e 73 74 20 53 74 61 74 65 20 73 74 61 74 65 20 29 0a 20 20 7b 0a 20 20 63 6f 6e h(.const.State.state.)...{...con
48400 73 74 20 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 st.int.pos_state.=.data_position
48420 28 29 20 26 20 70 6f 73 5f 73 74 61 74 65 5f 6d 61 73 6b 3b 0a 20 20 72 65 6e 63 2e 65 6e 63 6f ().&.pos_state_mask;...renc.enco
48440 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 5f 73 74 de_bit(.bm_match[state()][pos_st
48460 61 74 65 5d 2c 20 31 20 29 3b 0a 20 20 72 65 6e 63 2e 65 6e 63 6f 64 65 5f 62 69 74 28 20 62 6d ate],.1.);...renc.encode_bit(.bm
48480 5f 72 65 70 5b 73 74 61 74 65 28 29 5d 2c 20 30 20 29 3b 0a 20 20 65 6e 63 6f 64 65 5f 70 61 69 _rep[state()],.0.);...encode_pai
484a0 72 28 20 30 78 46 46 46 46 46 46 46 46 55 2c 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 2c 20 70 r(.0xFFFFFFFFU,.min_match_len,.p
484c0 6f 73 5f 73 74 61 74 65 20 29 3b 0a 20 20 72 65 6e 63 2e 66 6c 75 73 68 28 29 3b 0a 20 20 4c 7a os_state.);...renc.flush();...Lz
484e0 69 70 5f 74 72 61 69 6c 65 72 20 74 72 61 69 6c 65 72 3b 0a 20 20 74 72 61 69 6c 65 72 2e 64 61 ip_trailer.trailer;...trailer.da
48500 74 61 5f 63 72 63 28 20 63 72 63 28 29 20 29 3b 0a 20 20 74 72 61 69 6c 65 72 2e 64 61 74 61 5f ta_crc(.crc().);...trailer.data_
48520 73 69 7a 65 28 20 64 61 74 61 5f 70 6f 73 69 74 69 6f 6e 28 29 20 29 3b 0a 20 20 74 72 61 69 6c size(.data_position().);...trail
48540 65 72 2e 6d 65 6d 62 65 72 5f 73 69 7a 65 28 20 72 65 6e 63 2e 6d 65 6d 62 65 72 5f 70 6f 73 69 er.member_size(.renc.member_posi
48560 74 69 6f 6e 28 29 20 2b 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 69 7a 65 20 29 3b 0a 20 tion().+.Lzip_trailer::size.);..
48580 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 4c 7a 69 70 5f 74 72 61 69 6c 65 .for(.int.i.=.0;.i.<.Lzip_traile
485a0 72 3a 3a 73 69 7a 65 3b 20 2b 2b 69 20 29 0a 20 20 20 20 72 65 6e 63 2e 70 75 74 5f 62 79 74 65 r::size;.++i.).....renc.put_byte
485c0 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 6c 75 73 (.trailer.data[i].);...renc.flus
485e0 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 65 72 5f h_data();...}...void.LZ_encoder_
48600 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 65 72 5f base::reset()...{...Matchfinder_
48620 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 46 46 46 base::reset();...crc_.=.0xFFFFFF
48640 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 28 20 28 FFU;...bm_literal[0][0].reset(.(
48660 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 30 78 33 1.<<.literal_context_bits).*.0x3
48680 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 20 53 74 00.);...bm_match[0][0].reset(.St
486a0 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 20 62 6d ate::states.*.pos_states.);...bm
486c0 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 29 3b 0a _rep[0].reset(.State::states.);.
486e0 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 61 74 65 ..bm_rep0[0].reset(.State::state
48700 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 65 3a 3a s.);...bm_rep1[0].reset(.State::
48720 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 20 53 74 states.);...bm_rep2[0].reset(.St
48740 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 2e 72 65 ate::states.);...bm_len[0][0].re
48760 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 65 73 20 set(.State::states.*.pos_states.
48780 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 20 6c 65 );...bm_dis_slot[0][0].reset(.le
487a0 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 73 29 20 n_states.*.(1.<<.dis_slot_bits).
487c0 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 5f 64 69 );...bm_dis[0].reset(.modeled_di
487e0 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 3b 0a 20 stances.-.end_dis_model.+.1.);..
48800 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 5f 73 69 .bm_align[0].reset(.dis_align_si
48820 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 28 29 3b ze.);...match_len_model.reset();
48840 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 65 6e 63 ...rep_len_model.reset();...renc
48860 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 7d 0a 00 .reset(.dictionary_size.);...}..
48880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
488a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
488c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
488e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
489a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
489c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
489e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48a00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 66 61 73 74 5f 65 6e 63 6f 64 65 72 2e 63 63 00 00 00 lzip-1.22-rc2/fast_encoder.cc...
48a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48a60 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
48a80 30 30 31 33 33 36 31 00 31 33 36 35 32 36 31 31 33 30 30 00 30 30 31 34 36 30 32 00 30 00 00 00 0013361.13652611300.0014602.0...
48aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48b00 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...................
48b20 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...................
48b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
48c00 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
48c20 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
48c40 32 30 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 20.Antonio.Diaz.Diaz......This.p
48c60 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
48c80 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..
48ca0 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.
48cc0 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
48ce0 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
48d00 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.
48d20 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).
48d40 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
48d60 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
48d80 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
48da0 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
48dc0 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
48de0 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
48e00 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
48e20 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
48e40 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
48e60 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
48e80 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
48ea0 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:/
48ec0 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
48ee0 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
48f00 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
48f20 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
48f40 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
48f60 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>.
48f80 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
48fa0 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
48fc0 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
48fe0 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
49000 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.
49020 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::
49040 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
49060 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.<.
49080 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
490a0 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
490c0 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.<<
490e0 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;...
49100 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.
49120 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];.
49140 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;..
49160 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
49180 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
491a0 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;.;.).....{....
491c0 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
491e0 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
49200 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
49220 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;.}.
49240 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
49260 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
49280 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.>
492a0 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.
492c0 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
492e0 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].).......{..
49300 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
49320 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
49340 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
49360 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
49380 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;.
493a0 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
493c0 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;.}.
493e0 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;.
49400 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.=
49420 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;..
49440 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
49460 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
49480 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
494a0 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.=.
494c0 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::
494e0 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
49500 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
49520 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.
49540 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;.++
49560 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
49580 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
495a0 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.)...
495c0 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
495e0 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
49600 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..
49620 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
49640 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
49660 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
49680 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.);...
496a0 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
496c0 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(.
496e0 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
49700 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.);...
49720 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().&
49740 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
49760 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
49780 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_
497a0 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_
497c0 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
497e0 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
49800 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
49820 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
49840 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
49860 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
49880 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
498a0 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;.}.....
498c0 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.
498e0 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.).......{.
49900 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
49920 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.);......
49940 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
49960 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.
49980 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.)
499a0 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
499c0 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(
499e0 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_
49a00 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],
49a20 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.........{......
49a40 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
49a60 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
49a80 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
49aa0 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.);..
49ac0 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
49ae0 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;
49b00 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
49b20 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;..
49b40 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();.
49b60 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
49b80 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
49ba0 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(
49bc0 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;.....
49be0 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
49c00 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
49c20 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
49c40 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
49c60 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
49c80 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(
49ca0 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
49cc0 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
49ce0 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;
49d00 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];.....
49d20 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;.....
49d40 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
49d60 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
49d80 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
49da0 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;..
49dc0 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
49de0 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
49e00 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
49e20 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
49e40 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();....
49e60 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
49e80 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
49ea0 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.
49ec0 73 68 6f 72 74 5f 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 short_rep_price.=.price1(.bm_mat
49ee0 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 2b 0a 20 20 20 20 20 ch[state()][pos_state].).+......
49f00 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 70 72 69 .............................pri
49f20 63 65 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 ce1(.bm_rep[state()].).+........
49f40 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
49f60 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 20 20 20 20 20 0(.bm_rep0[state()].).+.........
49f80 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 30 ..........................price0
49fa0 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 29 3b 0a (.bm_len[state()][pos_state].);.
49fc0 20 20 20 20 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 ......int.price.=.price0(.bm_mat
49fe0 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 20 20 20 20 ch[state()][pos_state].);.......
4a000 69 66 28 20 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 if(.state.is_char().).........pr
4a020 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 62 79 74 65 2c ice.+=.price_literal(.prev_byte,
4a040 20 63 75 72 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 .cur_byte.);.......else.........
4a060 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 65 76 5f 62 79 74 price.+=.price_matched(.prev_byt
4a080 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 0a 20 20 20 20 20 e,.cur_byte,.match_byte.);......
4a0a0 20 69 66 28 20 73 68 6f 72 74 5f 72 65 70 5f 70 72 69 63 65 20 3c 20 70 72 69 63 65 20 29 0a 20 .if(.short_rep_price.<.price.)..
4a0c0 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 65 5f 62 69 74 .......{.........renc.encode_bit
4a0e0 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 5d 2c 20 (.bm_match[state()][pos_state],.
4a100 31 20 29 3b 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 1.);.........renc.encode_bit(.bm
4a120 5f 72 65 70 5b 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 _rep[state()],.1.);.........renc
4a140 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 29 5d 2c 20 30 .encode_bit(.bm_rep0[state()],.0
4a160 20 29 3b 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_
4a180 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 30 20 29 3b 0a 20 20 len[state()][pos_state],.0.);...
4a1a0 20 20 20 20 20 20 73 74 61 74 65 2e 73 65 74 5f 73 68 6f 72 74 5f 72 65 70 28 29 3b 0a 20 20 20 ......state.set_short_rep();....
4a1c0 20 20 20 20 20 63 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 .....continue;.........}.......}
4a1e0 0a 0a 20 20 20 20 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 ......//.literal.byte.....renc.e
4a200 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 70 6f 73 ncode_bit(.bm_match[state()][pos
4a220 5f 73 74 61 74 65 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 _state],.0.);.....if(.state.is_c
4a240 68 61 72 5f 73 65 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 har_set_char().).......encode_li
4a260 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 0a 20 20 teral(.prev_byte,.cur_byte.);...
4a280 20 20 65 6c 73 65 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 ..else.......encode_matched(.pre
4a2a0 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 0a v_byte,.cur_byte,.match_byte.);.
4a2c0 20 20 20 20 7d 0a 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 ....}....full_flush(.state.);...
4a2e0 72 65 74 75 72 6e 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 return.true;...}................
4a300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a400 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 6c 69 73 74 2e 63 63 00 00 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/list.cc...........
4a420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a460 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
4a480 30 30 30 37 37 36 36 00 31 33 36 36 30 32 37 36 30 37 37 00 30 30 31 33 31 35 36 00 30 00 00 00 0007766.13660276077.0013156.0...
4a4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a500 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...................
4a520 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...................
4a540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4a600 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
4a620 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
4a640 32 30 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 20.Antonio.Diaz.Diaz......This.p
4a660 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
4a680 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..
4a6a0 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.
4a6c0 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
4a6e0 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
4a700 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.
4a720 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).
4a740 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
4a760 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
4a780 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
4a7a0 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
4a7c0 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
4a7e0 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
4a800 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
4a820 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
4a840 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
4a860 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
4a880 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
4a8a0 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:/
4a8c0 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
4a8e0 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
4a900 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 72 69 6e 67 3e 0a ude.<cstdio>.#include.<cstring>.
4a920 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 63 74 #include.<string>.#include.<vect
4a940 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 69 6e 63 6c 75 64 65 or>.#include.<stdint.h>.#include
4a960 20 3c 75 6e 69 73 74 64 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 79 73 2f 73 74 61 74 2e 68 .<unistd.h>.#include.<sys/stat.h
4a980 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 65 20 22 6c >..#include."lzip.h".#include."l
4a9a0 7a 69 70 5f 69 6e 64 65 78 2e 68 22 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 7b 0a 0a 76 6f 69 64 zip_index.h"...namespace.{..void
4a9c0 20 6c 69 73 74 5f 6c 69 6e 65 28 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 .list_line(.const.unsigned.long.
4a9e0 6c 6f 6e 67 20 75 6e 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 long.uncomp_size,...............
4aa00 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 63 6f 6d 70 5f ..const.unsigned.long.long.comp_
4aa20 73 69 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 63 68 61 72 size,.................const.char
4aa40 20 2a 20 63 6f 6e 73 74 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 29 0a 20 20 7b 0a 20 20 .*.const.input_filename.)...{...
4aa60 69 66 28 20 75 6e 63 6f 6d 70 5f 73 69 7a 65 20 3e 20 30 20 29 0a 20 20 20 20 73 74 64 3a 3a 70 if(.uncomp_size.>.0.).....std::p
4aa80 72 69 6e 74 66 28 20 22 25 31 34 6c 6c 75 20 25 31 34 6c 6c 75 20 25 36 2e 32 66 25 25 20 20 25 rintf(."%14llu.%14llu.%6.2f%%..%
4aaa0 73 5c 6e 22 2c 20 75 6e 63 6f 6d 70 5f 73 69 7a 65 2c 20 63 6f 6d 70 5f 73 69 7a 65 2c 0a 20 20 s\n",.uncomp_size,.comp_size,...
4aac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 30 30 2e 30 20 2d 20 28 20 28 20 31 30 30 2e ................100.0.-.(.(.100.
4aae0 30 20 2a 20 63 6f 6d 70 5f 73 69 7a 65 20 29 20 2f 20 75 6e 63 6f 6d 70 5f 73 69 7a 65 20 29 2c 0.*.comp_size.)./.uncomp_size.),
4ab00 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 69 6c 65 6e 61 6d ...................input_filenam
4ab20 65 20 29 3b 0a 20 20 65 6c 73 65 0a 20 20 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 20 22 25 31 e.);...else.....std::printf(."%1
4ab40 34 6c 6c 75 20 25 31 34 6c 6c 75 20 20 20 2d 49 4e 46 25 25 20 20 25 73 5c 6e 22 2c 20 75 6e 63 4llu.%14llu...-INF%%..%s\n",.unc
4ab60 6f 6d 70 5f 73 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 omp_size,.comp_size,............
4ab80 20 20 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 7d 0a 0a 7d 20 .......input_filename.);...}..}.
4aba0 2f 2f 20 65 6e 64 20 6e 61 6d 65 73 70 61 63 65 0a 0a 0a 69 6e 74 20 6c 69 73 74 5f 66 69 6c 65 //.end.namespace...int.list_file
4abc0 73 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 6e s(.const.std::vector<.std::strin
4abe0 67 20 3e 20 26 20 66 69 6c 65 6e 61 6d 65 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 g.>.&.filenames,................
4ac00 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 2c 20 63 6f 6e .const.bool.ignore_trailing,.con
4ac20 73 74 20 62 6f 6f 6c 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 20 29 0a 20 20 7b 0a 20 20 75 st.bool.loose_trailing.)...{...u
4ac40 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 74 6f 74 61 6c 5f 63 6f 6d 70 20 3d 20 30 nsigned.long.long.total_comp.=.0
4ac60 2c 20 74 6f 74 61 6c 5f 75 6e 63 6f 6d 70 20 3d 20 30 3b 0a 20 20 69 6e 74 20 66 69 6c 65 73 20 ,.total_uncomp.=.0;...int.files.
4ac80 3d 20 30 2c 20 72 65 74 76 61 6c 20 3d 20 30 3b 0a 20 20 62 6f 6f 6c 20 66 69 72 73 74 5f 70 6f =.0,.retval.=.0;...bool.first_po
4aca0 73 74 20 3d 20 74 72 75 65 3b 0a 20 20 62 6f 6f 6c 20 73 74 64 69 6e 5f 75 73 65 64 20 3d 20 66 st.=.true;...bool.stdin_used.=.f
4acc0 61 6c 73 65 3b 0a 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 alse;...for(.unsigned.i.=.0;.i.<
4ace0 20 66 69 6c 65 6e 61 6d 65 73 2e 73 69 7a 65 28 29 3b 20 2b 2b 69 20 29 0a 20 20 20 20 7b 0a 20 .filenames.size();.++i.).....{..
4ad00 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 28 20 66 69 6c ...const.bool.from_stdin.=.(.fil
4ad20 65 6e 61 6d 65 73 5b 69 5d 20 3d 3d 20 22 2d 22 20 29 3b 0a 20 20 20 20 69 66 28 20 66 72 6f 6d enames[i].==."-".);.....if(.from
4ad40 5f 73 74 64 69 6e 20 29 20 7b 20 69 66 28 20 73 74 64 69 6e 5f 75 73 65 64 20 29 20 63 6f 6e 74 _stdin.).{.if(.stdin_used.).cont
4ad60 69 6e 75 65 3b 20 65 6c 73 65 20 73 74 64 69 6e 5f 75 73 65 64 20 3d 20 74 72 75 65 3b 20 7d 0a inue;.else.stdin_used.=.true;.}.
4ad80 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 5f 66 69 6c ....const.char.*.const.input_fil
4ada0 65 6e 61 6d 65 20 3d 0a 20 20 20 20 20 20 66 72 6f 6d 5f 73 74 64 69 6e 20 3f 20 22 28 73 74 64 ename.=.......from_stdin.?."(std
4adc0 69 6e 29 22 20 3a 20 66 69 6c 65 6e 61 6d 65 73 5b 69 5d 2e 63 5f 73 74 72 28 29 3b 0a 20 20 20 in)".:.filenames[i].c_str();....
4ade0 20 73 74 72 75 63 74 20 73 74 61 74 20 69 6e 5f 73 74 61 74 73 3b 09 09 09 09 2f 2f 20 6e 6f 74 .struct.stat.in_stats;....//.not
4ae00 20 75 73 65 64 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 69 6e 66 64 20 3d 20 66 72 6f 6d 5f .used.....const.int.infd.=.from_
4ae20 73 74 64 69 6e 20 3f 20 53 54 44 49 4e 5f 46 49 4c 45 4e 4f 20 3a 0a 20 20 20 20 20 20 6f 70 65 stdin.?.STDIN_FILENO.:.......ope
4ae40 6e 5f 69 6e 73 74 72 65 61 6d 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2c 20 26 69 6e 5f n_instream(.input_filename,.&in_
4ae60 73 74 61 74 73 2c 20 66 61 6c 73 65 2c 20 74 72 75 65 20 29 3b 0a 20 20 20 20 69 66 28 20 69 6e stats,.false,.true.);.....if(.in
4ae80 66 64 20 3c 20 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 fd.<.0.).{.set_retval(.retval,.1
4aea0 20 29 3b 20 63 6f 6e 74 69 6e 75 65 3b 20 7d 0a 0a 20 20 20 20 63 6f 6e 73 74 20 4c 7a 69 70 5f .);.continue;.}......const.Lzip_
4aec0 69 6e 64 65 78 20 6c 7a 69 70 5f 69 6e 64 65 78 28 20 69 6e 66 64 2c 20 69 67 6e 6f 72 65 5f 74 index.lzip_index(.infd,.ignore_t
4aee0 72 61 69 6c 69 6e 67 2c 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 20 29 3b 0a 20 20 20 20 63 railing,.loose_trailing.);.....c
4af00 6c 6f 73 65 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 lose(.infd.);.....if(.lzip_index
4af20 2e 72 65 74 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 .retval().!=.0.).......{.......s
4af40 68 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 how_file_error(.input_filename,.
4af60 6c 7a 69 70 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 lzip_index.error().c_str().);...
4af80 20 20 20 20 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 ....set_retval(.retval,.lzip_ind
4afa0 65 78 2e 72 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 ex.retval().);.......continue;..
4afc0 20 20 20 20 20 7d 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 .....}.....if(.verbosity.>=.0.).
4afe0 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e ......{.......const.unsigned.lon
4b000 67 20 6c 6f 6e 67 20 75 64 61 74 61 5f 73 69 7a 65 20 3d 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 75 g.long.udata_size.=.lzip_index.u
4b020 64 61 74 61 5f 73 69 7a 65 28 29 3b 0a 20 20 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 data_size();.......const.unsigne
4b040 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 63 64 61 74 61 5f 73 69 7a 65 20 3d 20 6c 7a 69 70 5f 69 6e d.long.long.cdata_size.=.lzip_in
4b060 64 65 78 2e 63 64 61 74 61 5f 73 69 7a 65 28 29 3b 0a 20 20 20 20 20 20 74 6f 74 61 6c 5f 63 6f dex.cdata_size();.......total_co
4b080 6d 70 20 2b 3d 20 63 64 61 74 61 5f 73 69 7a 65 3b 20 74 6f 74 61 6c 5f 75 6e 63 6f 6d 70 20 2b mp.+=.cdata_size;.total_uncomp.+
4b0a0 3d 20 75 64 61 74 61 5f 73 69 7a 65 3b 20 2b 2b 66 69 6c 65 73 3b 0a 20 20 20 20 20 20 63 6f 6e =.udata_size;.++files;.......con
4b0c0 73 74 20 6c 6f 6e 67 20 6d 65 6d 62 65 72 73 20 3d 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 6d 65 6d st.long.members.=.lzip_index.mem
4b0e0 62 65 72 73 28 29 3b 0a 20 20 20 20 20 20 69 66 28 20 66 69 72 73 74 5f 70 6f 73 74 20 29 0a 20 bers();.......if(.first_post.)..
4b100 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 66 69 72 73 74 5f 70 6f 73 74 20 3d 20 66 61 .......{.........first_post.=.fa
4b120 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 31 20 lse;.........if(.verbosity.>=.1.
4b140 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 20 74 ).std::fputs(."...dict...memb..t
4b160 72 61 69 6c 20 22 2c 20 73 74 64 6f 75 74 20 29 3b 0a 20 20 20 20 20 20 20 20 73 74 64 3a 3a 66 rail.",.stdout.);.........std::f
4b180 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
4b1a0 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.);
4b1c0 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e .........}.......if(.verbosity.>
4b1e0 3d 20 31 20 29 0a 20 20 20 20 20 20 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 20 22 25 73 20 25 =.1.).........std::printf(."%s.%
4b200 35 6c 64 20 25 36 6c 6c 64 20 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5ld.%6lld.",....................
4b220 20 20 66 6f 72 6d 61 74 5f 64 73 28 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 64 69 63 74 69 6f 6e 61 ..format_ds(.lzip_index.dictiona
4b240 72 79 5f 73 69 7a 65 28 29 20 29 2c 20 6d 65 6d 62 65 72 73 2c 0a 20 20 20 20 20 20 20 20 20 20 ry_size().),.members,...........
4b260 20 20 20 20 20 20 20 20 20 20 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 66 69 6c 65 5f 73 69 7a 65 28 ...........lzip_index.file_size(
4b280 29 20 2d 20 63 64 61 74 61 5f 73 69 7a 65 20 29 3b 0a 20 20 20 20 20 20 6c 69 73 74 5f 6c 69 6e ).-.cdata_size.);.......list_lin
4b2a0 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 20 69 6e 70 75 74 e(.udata_size,.cdata_size,.input
4b2c0 5f 66 69 6c 65 6e 61 6d 65 20 29 3b 0a 0a 20 20 20 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 _filename.);........if(.verbosit
4b2e0 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 20 20 20 20 y.>=.2.&&.members.>.1.).........
4b300 7b 0a 20 20 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..
4b320 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.....
4b340 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
4b360 64 6f 75 74 20 29 3b 0a 20 20 20 20 20 20 20 20 66 6f 72 28 20 6c 6f 6e 67 20 69 20 3d 20 30 3b dout.);.........for(.long.i.=.0;
4b380 20 69 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 20 20 7b 0a .i.<.members;.++i.)...........{.
4b3a0 20 20 20 20 20 20 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 ..........const.Block.&.db.=.lzi
4b3c0 70 5f 69 6e 64 65 78 2e 64 62 6c 6f 63 6b 28 20 69 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 63 p_index.dblock(.i.);...........c
4b3e0 6f 6e 73 74 20 42 6c 6f 63 6b 20 26 20 6d 62 20 3d 20 6c 7a 69 70 5f 69 6e 64 65 78 2e 6d 62 6c onst.Block.&.mb.=.lzip_index.mbl
4b400 6f 63 6b 28 20 69 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 73 74 64 3a 3a 70 72 69 6e 74 66 28 ock(.i.);...........std::printf(
4b420 20 22 25 36 6c 64 20 25 31 34 6c 6c 75 20 25 31 34 6c 6c 75 20 25 31 34 6c 6c 75 20 25 31 34 6c ."%6ld.%14llu.%14llu.%14llu.%14l
4b440 6c 75 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 20 69 20 lu\n",........................i.
4b460 2b 20 31 2c 20 64 62 2e 70 6f 73 28 29 2c 20 64 62 2e 73 69 7a 65 28 29 2c 20 6d 62 2e 70 6f 73 +.1,.db.pos(),.db.size(),.mb.pos
4b480 28 29 2c 20 6d 62 2e 73 69 7a 65 28 29 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 (),.mb.size().);...........}....
4b4a0 20 20 20 20 20 66 69 72 73 74 5f 70 6f 73 74 20 3d 20 74 72 75 65 3b 09 2f 2f 20 72 65 70 72 69 .....first_post.=.true;.//.repri
4b4c0 6e 74 20 68 65 61 64 69 6e 67 20 61 66 74 65 72 20 6c 69 73 74 20 6f 66 20 6d 65 6d 62 65 72 73 nt.heading.after.list.of.members
4b4e0 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 73 74 64 3a 3a 66 66 6c 75 73 68 28 20 73 74 .........}.......std::fflush(.st
4b500 64 6f 75 74 20 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 76 65 72 62 dout.);.......}.....}...if(.verb
4b520 6f 73 69 74 79 20 3e 3d 20 30 20 26 26 20 66 69 6c 65 73 20 3e 20 31 20 29 0a 20 20 20 20 7b 0a osity.>=.0.&&.files.>.1.).....{.
4b540 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 64 3a 3a 66 70 ....if(.verbosity.>=.1.).std::fp
4b560 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 20 22 2c 20 73 uts(."......................",.s
4b580 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 61 6c 5f 75 6e tdout.);.....list_line(.total_un
4b5a0 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 22 20 29 3b 0a comp,.total_comp,."(totals)".);.
4b5c0 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 20 20 20 20 7d ....std::fflush(.stdout.);.....}
4b5e0 0a 20 20 72 65 74 75 72 6e 20 72 65 74 76 61 6c 3b 0a 20 20 7d 0a 00 00 00 00 00 00 00 00 00 00 ...return.retval;...}...........
4b600 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 6c 7a 69 70 5f 69 6e 64 65 78 2e 63 63 00 00 00 00 00 lzip-1.22-rc2/lzip_index.cc.....
4b620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4b640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4b660 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
4b680 30 30 31 37 33 36 32 00 31 33 36 35 32 36 31 31 33 30 30 00 30 30 31 34 33 32 30 00 30 00 00 00 0017362.13652611300.0014320.0...
4b6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4b6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4b6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4b700 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...................
4b720 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...................
4b740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4b760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4b780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4b7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4b7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4b7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4b800 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
4b820 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
4b840 32 30 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 20.Antonio.Diaz.Diaz......This.p
4b860 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
4b880 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..
4b8a0 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.
4b8c0 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
4b8e0 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
4b900 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.
4b920 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).
4b940 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
4b960 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
4b980 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
4b9a0 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
4b9c0 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
4b9e0 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
4ba00 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
4ba20 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
4ba40 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
4ba60 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
4ba80 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
4baa0 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:/
4bac0 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
4bae0 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
4bb00 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
4bb20 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
4bb40 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
4bb60 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>.#
4bb80 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
4bba0 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"...
4bbc0 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
4bbe0 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
4bc00 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
4bc20 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
4bc40 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.
4bc60 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,
4bc80 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
4bca0 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::
4bcc0 63 68 65 63 6b 5f 68 65 61 64 65 72 5f 65 72 72 6f 72 28 20 63 6f 6e 73 74 20 4c 7a 69 70 5f 68 check_header_error(.const.Lzip_h
4bce0 65 61 64 65 72 20 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 eader.&.header.)...{...if(.!head
4bd00 65 72 2e 76 65 72 69 66 79 5f 6d 61 67 69 63 28 29 20 29 0a 20 20 20 20 7b 20 65 72 72 6f 72 5f er.verify_magic().).....{.error_
4bd20 20 3d 20 62 61 64 5f 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 .=.bad_magic_msg;.retval_.=.2;.r
4bd40 65 74 75 72 6e 20 74 72 75 65 3b 20 7d 0a 20 20 69 66 28 20 21 68 65 61 64 65 72 2e 76 65 72 69 eturn.true;.}...if(.!header.veri
4bd60 66 79 5f 76 65 72 73 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 fy_version().).....{.error_.=.ba
4bd80 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 20 29 3b 20 72 d_version(.header.version().);.r
4bda0 65 74 76 61 6c 5f 20 3d 20 32 3b 20 72 65 74 75 72 6e 20 74 72 75 65 3b 20 7d 0a 20 20 69 66 28 etval_.=.2;.return.true;.}...if(
4bdc0 20 21 69 73 76 61 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 .!isvalid_ds(.header.dictionary_
4bde0 73 69 7a 65 28 29 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 size().).).....{.error_.=.bad_di
4be00 63 74 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 74 72 75 65 ct_msg;.retval_.=.2;.return.true
4be20 3b 20 7d 0a 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 7d 0a 0a 76 6f 69 64 20 4c 7a ;.}...return.false;...}..void.Lz
4be40 69 70 5f 69 6e 64 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 ip_index::set_errno_error(.const
4be60 20 63 68 61 72 20 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 .char.*.const.msg.)...{...error_
4be80 20 3d 20 6d 73 67 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 .=.msg;.error_.+=.std::strerror(
4bea0 20 65 72 72 6e 6f 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 .errno.);...retval_.=.1;...}..vo
4bec0 69 64 20 4c 7a 69 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 id.Lzip_index::set_num_error(.co
4bee0 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
4bf00 6f 6e 67 20 6c 6f 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 ong.long.num.)...{...char.buf[80
4bf20 5d 3b 0a 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 ];...snprintf(.buf,.sizeof.buf,.
4bf40 22 25 73 25 6c 6c 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 "%s%llu",.msg,.num.);...error_.=
4bf60 20 62 75 66 3b 0a 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 .buf;...retval_.=.2;...}...bool.
4bf80 4c 7a 69 70 5f 69 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 Lzip_index::read_header(.const.i
4bfa0 6e 74 20 66 64 2c 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 nt.fd,.Lzip_header.&.header,....
4bfc0 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 74 ...........................const
4bfe0 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 73 65 65 6b 5f .long.long.pos.)...{...if(.seek_
4c000 72 65 61 64 28 20 66 64 2c 20 68 65 61 64 65 72 2e 64 61 74 61 2c 20 4c 7a 69 70 5f 68 65 61 64 read(.fd,.header.data,.Lzip_head
4c020 65 72 3a 3a 73 69 7a 65 2c 20 70 6f 73 20 29 20 21 3d 20 4c 7a 69 70 5f 68 65 61 64 65 72 3a 3a er::size,.pos.).!=.Lzip_header::
4c040 73 69 7a 65 20 29 0a 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 size.).....{.set_errno_error(."E
4c060 72 72 6f 72 20 72 65 61 64 69 6e 67 20 6d 65 6d 62 65 72 20 68 65 61 64 65 72 3a 20 22 20 29 3b rror.reading.member.header:.".);
4c080 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a .return.false;.}...return.true;.
4c0a0 20 20 7d 0a 0a 0a 2f 2f 20 49 66 20 73 75 63 63 65 73 73 66 75 6c 2c 20 70 75 73 68 20 6c 61 73 ..}...//.If.successful,.push.las
4c0c0 74 20 6d 65 6d 62 65 72 20 61 6e 64 20 73 65 74 20 70 6f 73 20 74 6f 20 6d 65 6d 62 65 72 20 68 t.member.and.set.pos.to.member.h
4c0e0 65 61 64 65 72 2e 0a 62 6f 6f 6c 20 4c 7a 69 70 5f 69 6e 64 65 78 3a 3a 73 6b 69 70 5f 74 72 61 eader..bool.Lzip_index::skip_tra
4c100 69 6c 69 6e 67 5f 64 61 74 61 28 20 63 6f 6e 73 74 20 69 6e 74 20 66 64 2c 20 75 6e 73 69 67 6e iling_data(.const.int.fd,.unsign
4c120 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 26 20 70 6f 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 ed.long.long.&.pos,.............
4c140 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 62 .........................const.b
4c160 6f 6f 6c 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ool.ignore_trailing,............
4c180 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 74 20 ..........................const.
4c1a0 62 6f 6f 6c 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 bool.loose_trailing.)...{...if(.
4c1c0 70 6f 73 20 3c 20 6d 69 6e 5f 6d 65 6d 62 65 72 5f 73 69 7a 65 20 29 20 72 65 74 75 72 6e 20 66 pos.<.min_member_size.).return.f
4c1e0 61 6c 73 65 3b 0a 20 20 65 6e 75 6d 20 7b 20 62 6c 6f 63 6b 5f 73 69 7a 65 20 3d 20 31 36 33 38 alse;...enum.{.block_size.=.1638
4c200 34 2c 0a 20 20 20 20 20 20 20 20 20 62 75 66 66 65 72 5f 73 69 7a 65 20 3d 20 62 6c 6f 63 6b 5f 4,..........buffer_size.=.block_
4c220 73 69 7a 65 20 2b 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 69 7a 65 20 2d 20 31 20 2b 20 size.+.Lzip_trailer::size.-.1.+.
4c240 4c 7a 69 70 5f 68 65 61 64 65 72 3a 3a 73 69 7a 65 20 7d 3b 0a 20 20 75 69 6e 74 38 5f 74 20 62 Lzip_header::size.};...uint8_t.b
4c260 75 66 66 65 72 5b 62 75 66 66 65 72 5f 73 69 7a 65 5d 3b 0a 20 20 69 6e 74 20 62 73 69 7a 65 20 uffer[buffer_size];...int.bsize.
4c280 3d 20 70 6f 73 20 25 20 62 6c 6f 63 6b 5f 73 69 7a 65 3b 09 09 09 2f 2f 20 74 6f 74 61 6c 20 62 =.pos.%.block_size;...//.total.b
4c2a0 79 74 65 73 20 69 6e 20 62 75 66 66 65 72 0a 20 20 69 66 28 20 62 73 69 7a 65 20 3c 3d 20 62 75 ytes.in.buffer...if(.bsize.<=.bu
4c2c0 66 66 65 72 5f 73 69 7a 65 20 2d 20 62 6c 6f 63 6b 5f 73 69 7a 65 20 29 20 62 73 69 7a 65 20 2b ffer_size.-.block_size.).bsize.+
4c2e0 3d 20 62 6c 6f 63 6b 5f 73 69 7a 65 3b 0a 20 20 69 6e 74 20 73 65 61 72 63 68 5f 73 69 7a 65 20 =.block_size;...int.search_size.
4c300 3d 20 62 73 69 7a 65 3b 09 09 09 2f 2f 20 62 79 74 65 73 20 74 6f 20 73 65 61 72 63 68 20 66 6f =.bsize;...//.bytes.to.search.fo
4c320 72 20 74 72 61 69 6c 65 72 0a 20 20 69 6e 74 20 72 64 5f 73 69 7a 65 20 3d 20 62 73 69 7a 65 3b r.trailer...int.rd_size.=.bsize;
4c340 09 09 09 09 2f 2f 20 62 79 74 65 73 20 74 6f 20 72 65 61 64 20 66 72 6f 6d 20 66 69 6c 65 0a 20 ....//.bytes.to.read.from.file..
4c360 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 69 70 6f 73 20 3d 20 70 6f 73 20 2d .unsigned.long.long.ipos.=.pos.-
4c380 20 72 64 5f 73 69 7a 65 3b 09 2f 2f 20 61 6c 69 67 6e 65 64 20 74 6f 20 62 6c 6f 63 6b 5f 73 69 .rd_size;.//.aligned.to.block_si
4c3a0 7a 65 0a 0a 20 20 77 68 69 6c 65 28 20 74 72 75 65 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 ze....while(.true.).....{.....if
4c3c0 28 20 73 65 65 6b 5f 72 65 61 64 28 20 66 64 2c 20 62 75 66 66 65 72 2c 20 72 64 5f 73 69 7a 65 (.seek_read(.fd,.buffer,.rd_size
4c3e0 2c 20 69 70 6f 73 20 29 20 21 3d 20 72 64 5f 73 69 7a 65 20 29 0a 20 20 20 20 20 20 7b 20 73 65 ,.ipos.).!=.rd_size.).......{.se
4c400 74 5f 65 72 72 6e 6f 5f 65 72 72 6f 72 28 20 22 45 72 72 6f 72 20 73 65 65 6b 69 6e 67 20 6d 65 t_errno_error(."Error.seeking.me
4c420 6d 62 65 72 20 74 72 61 69 6c 65 72 3a 20 22 20 29 3b 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b mber.trailer:.".);.return.false;
4c440 20 7d 0a 20 20 20 20 63 6f 6e 73 74 20 75 69 6e 74 38 5f 74 20 6d 61 78 5f 6d 73 62 20 3d 20 28 .}.....const.uint8_t.max_msb.=.(
4c460 20 69 70 6f 73 20 2b 20 73 65 61 72 63 68 5f 73 69 7a 65 20 29 20 3e 3e 20 35 36 3b 0a 20 20 20 .ipos.+.search_size.).>>.56;....
4c480 20 66 6f 72 28 20 69 6e 74 20 69 20 3d 20 73 65 61 72 63 68 5f 73 69 7a 65 3b 20 69 20 3e 3d 20 .for(.int.i.=.search_size;.i.>=.
4c4a0 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 69 7a 65 3b 20 2d 2d 69 20 29 0a 20 20 20 20 20 20 Lzip_trailer::size;.--i.).......
4c4c0 69 66 28 20 62 75 66 66 65 72 5b 69 2d 31 5d 20 3c 3d 20 6d 61 78 5f 6d 73 62 20 29 09 2f 2f 20 if(.buffer[i-1].<=.max_msb.).//.
4c4e0 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 79 74 65 20 6f 66 20 6d 65 6d 62 65 72 5f most.significant.byte.of.member_
4c500 73 69 7a 65 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 4c 7a 69 size.........{.........const.Lzi
4c520 70 5f 74 72 61 69 6c 65 72 20 26 20 74 72 61 69 6c 65 72 20 3d 0a 20 20 20 20 20 20 20 20 20 20 p_trailer.&.trailer.=...........
4c540 2a 28 63 6f 6e 73 74 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 20 2a 29 28 20 62 75 66 66 65 72 20 *(const.Lzip_trailer.*)(.buffer.
4c560 2b 20 69 20 2d 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 69 7a 65 20 29 3b 0a 20 20 20 20 +.i.-.Lzip_trailer::size.);.....
4c580 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 6d 65 6d ....const.unsigned.long.long.mem
4c5a0 62 65 72 5f 73 69 7a 65 20 3d 20 74 72 61 69 6c 65 72 2e 6d 65 6d 62 65 72 5f 73 69 7a 65 28 29 ber_size.=.trailer.member_size()
4c5c0 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3d 3d 20 30 20 29 ;.........if(.member_size.==.0.)
4c5e0 09 09 09 2f 2f 20 73 6b 69 70 20 74 72 61 69 6c 69 6e 67 20 7a 65 72 6f 73 0a 20 20 20 20 20 20 ...//.skip.trailing.zeros.......
4c600 20 20 20 20 7b 20 77 68 69 6c 65 28 20 69 20 3e 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 ....{.while(.i.>.Lzip_trailer::s
4c620 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 20 63 ize.&&.buffer[i-9].==.0.).--i;.c
4c640 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 73 69 ontinue;.}.........if(.member_si
4c660 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 76 65 72 69 66 79 ze.>.ipos.+.i.||.!trailer.verify
4c680 5f 63 6f 6e 73 69 73 74 65 6e 63 79 28 29 20 29 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 69 _consistency().)...........conti
4c6a0 6e 75 65 3b 0a 20 20 20 20 20 20 20 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 68 65 61 64 65 72 3b nue;.........Lzip_header.header;
4c6c0 0a 20 20 20 20 20 20 20 20 69 66 28 20 21 72 65 61 64 5f 68 65 61 64 65 72 28 20 66 64 2c 20 68 .........if(.!read_header(.fd,.h
4c6e0 65 61 64 65 72 2c 20 69 70 6f 73 20 2b 20 69 20 2d 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 29 20 eader,.ipos.+.i.-.member_size.).
4c700 29 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 21 68 65 61 ).return.false;.........if(.!hea
4c720 64 65 72 2e 76 65 72 69 66 79 28 29 20 29 20 63 6f 6e 74 69 6e 75 65 3b 0a 20 20 20 20 20 20 20 der.verify().).continue;........
4c740 20 63 6f 6e 73 74 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 26 20 68 65 61 64 65 72 32 20 3d 20 2a .const.Lzip_header.&.header2.=.*
4c760 28 63 6f 6e 73 74 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 2a 29 28 20 62 75 66 66 65 72 20 2b 20 (const.Lzip_header.*)(.buffer.+.
4c780 69 20 29 3b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 66 75 6c 6c 5f 68 32 20 i.);.........const.bool.full_h2.
4c7a0 3d 20 62 73 69 7a 65 20 2d 20 69 20 3e 3d 20 4c 7a 69 70 5f 68 65 61 64 65 72 3a 3a 73 69 7a 65 =.bsize.-.i.>=.Lzip_header::size
4c7c0 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 68 65 61 64 65 72 32 2e 76 65 72 69 66 79 5f 70 72 65 ;.........if(.header2.verify_pre
4c7e0 66 69 78 28 20 62 73 69 7a 65 20 2d 20 69 20 29 20 29 09 2f 2f 20 6c 61 73 74 20 6d 65 6d 62 65 fix(.bsize.-.i.).).//.last.membe
4c800 72 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 21 66 75 6c r...........{...........if(.!ful
4c820 6c 5f 68 32 20 29 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 l_h2.).error_.=."Last.member.in.
4c840 69 6e 70 75 74 20 66 69 6c 65 20 69 73 20 74 72 75 6e 63 61 74 65 64 2e 22 3b 0a 20 20 20 20 20 input.file.is.truncated.";......
4c860 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 21 63 68 65 63 6b 5f 68 65 61 64 65 72 5f 65 72 72 6f .....else.if(.!check_header_erro
4c880 72 28 20 68 65 61 64 65 72 32 20 29 20 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 72 72 6f 72 r(.header2.).).............error
4c8a0 5f 20 3d 20 22 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 _.=."Last.member.in.input.file.i
4c8c0 73 20 74 72 75 6e 63 61 74 65 64 20 6f 72 20 63 6f 72 72 75 70 74 2e 22 3b 0a 20 20 20 20 20 20 s.truncated.or.corrupt.";.......
4c8e0 20 20 20 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 0a 20 ....retval_.=.2;.return.false;..
4c900 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 69 66 28 20 21 6c 6f 6f 73 65 5f 74 72 .........}.........if(.!loose_tr
4c920 61 69 6c 69 6e 67 20 26 26 20 66 75 6c 6c 5f 68 32 20 26 26 20 68 65 61 64 65 72 32 2e 76 65 72 ailing.&&.full_h2.&&.header2.ver
4c940 69 66 79 5f 63 6f 72 72 75 70 74 28 29 20 29 0a 20 20 20 20 20 20 20 20 20 20 7b 20 65 72 72 6f ify_corrupt().)...........{.erro
4c960 72 5f 20 3d 20 63 6f 72 72 75 70 74 5f 6d 6d 5f 6d 73 67 3b 20 72 65 74 76 61 6c 5f 20 3d 20 32 r_.=.corrupt_mm_msg;.retval_.=.2
4c980 3b 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 20 20 20 20 20 20 20 69 66 28 20 21 69 ;.return.false;.}.........if(.!i
4c9a0 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 20 29 0a 20 20 20 20 20 20 20 20 20 20 7b 20 65 72 72 gnore_trailing.)...........{.err
4c9c0 6f 72 5f 20 3d 20 74 72 61 69 6c 69 6e 67 5f 6d 73 67 3b 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b or_.=.trailing_msg;.retval_.=.2;
4c9e0 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 20 20 20 20 20 20 20 70 6f 73 20 3d 20 69 .return.false;.}.........pos.=.i
4ca00 70 6f 73 20 2b 20 69 20 2d 20 6d 65 6d 62 65 72 5f 73 69 7a 65 3b 0a 20 20 20 20 20 20 20 20 63 pos.+.i.-.member_size;.........c
4ca20 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.=.
4ca40 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 20 20 header.dictionary_size();.......
4ca60 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
4ca80 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,.
4caa0 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 ................................
4cac0 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 74 69 6f 6e 61 72 79 .........member_size,.dictionary
4cae0 5f 73 69 7a 65 20 29 20 29 3b 0a 20 20 20 20 20 20 20 20 69 66 28 20 64 69 63 74 69 6f 6e 61 72 _size.).);.........if(.dictionar
4cb00 79 5f 73 69 7a 65 5f 20 3c 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a 20 20 20 20 y_size_.<.dictionary_size.).....
4cb20 20 20 20 20 20 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 5f 20 3d 20 64 69 63 74 69 6f 6e ......dictionary_size_.=.diction
4cb40 61 72 79 5f 73 69 7a 65 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 ary_size;.........return.true;..
4cb60 20 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 69 70 6f 73 20 3d 3d 20 30 20 29 0a 20 20 20 .......}.....if(.ipos.==.0.)....
4cb80 20 20 20 7b 20 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 ...{.set_num_error(."Bad.trailer
4cba0 20 61 74 20 70 6f 73 20 22 2c 20 70 6f 73 20 2d 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 .at.pos.",.pos.-.Lzip_trailer::s
4cbc0 69 7a 65 20 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 ize.);.........return.false;.}..
4cbe0 20 20 20 62 73 69 7a 65 20 3d 20 62 75 66 66 65 72 5f 73 69 7a 65 3b 0a 20 20 20 20 73 65 61 72 ...bsize.=.buffer_size;.....sear
4cc00 63 68 5f 73 69 7a 65 20 3d 20 62 73 69 7a 65 20 2d 20 4c 7a 69 70 5f 68 65 61 64 65 72 3a 3a 73 ch_size.=.bsize.-.Lzip_header::s
4cc20 69 7a 65 3b 0a 20 20 20 20 72 64 5f 73 69 7a 65 20 3d 20 62 6c 6f 63 6b 5f 73 69 7a 65 3b 0a 20 ize;.....rd_size.=.block_size;..
4cc40 20 20 20 69 70 6f 73 20 2d 3d 20 72 64 5f 73 69 7a 65 3b 0a 20 20 20 20 73 74 64 3a 3a 6d 65 6d ...ipos.-=.rd_size;.....std::mem
4cc60 63 70 79 28 20 62 75 66 66 65 72 20 2b 20 72 64 5f 73 69 7a 65 2c 20 62 75 66 66 65 72 2c 20 62 cpy(.buffer.+.rd_size,.buffer,.b
4cc80 75 66 66 65 72 5f 73 69 7a 65 20 2d 20 72 64 5f 73 69 7a 65 20 29 3b 0a 20 20 20 20 7d 0a 20 20 uffer_size.-.rd_size.);.....}...
4cca0 7d 0a 0a 0a 4c 7a 69 70 5f 69 6e 64 65 78 3a 3a 4c 7a 69 70 5f 69 6e 64 65 78 28 20 63 6f 6e 73 }...Lzip_index::Lzip_index(.cons
4ccc0 74 20 69 6e 74 20 69 6e 66 64 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 69 67 6e 6f 72 65 5f 74 72 t.int.infd,.const.bool.ignore_tr
4cce0 61 69 6c 69 6e 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 20 20 ailing,.........................
4cd00 63 6f 6e 73 74 20 62 6f 6f 6c 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 20 29 0a 20 20 3a 20 const.bool.loose_trailing.)...:.
4cd20 69 6e 73 69 7a 65 28 20 6c 73 65 65 6b 28 20 69 6e 66 64 2c 20 30 2c 20 53 45 45 4b 5f 45 4e 44 insize(.lseek(.infd,.0,.SEEK_END
4cd40 20 29 20 29 2c 20 72 65 74 76 61 6c 5f 28 20 30 20 29 2c 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 .).),.retval_(.0.),.dictionary_s
4cd60 69 7a 65 5f 28 20 30 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 69 6e 73 69 7a 65 20 3c 20 30 20 29 ize_(.0.)...{...if(.insize.<.0.)
4cd80 0a 20 20 20 20 7b 20 73 65 74 5f 65 72 72 6e 6f 5f 65 72 72 6f 72 28 20 22 49 6e 70 75 74 20 66 .....{.set_errno_error(."Input.f
4cda0 69 6c 65 20 69 73 20 6e 6f 74 20 73 65 65 6b 61 62 6c 65 3a 20 22 20 29 3b 20 72 65 74 75 72 6e ile.is.not.seekable:.".);.return
4cdc0 3b 20 7d 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 69 ;.}...if(.insize.<.min_member_si
4cde0 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 20 ze.).....{.error_.=."Input.file.
4ce00 69 73 20 74 6f 6f 20 73 68 6f 72 74 2e 22 3b 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b 20 72 65 74 is.too.short.";.retval_.=.2;.ret
4ce20 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 20 urn;.}...if(.insize.>.INT64_MAX.
4ce40 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 20 ).....{.error_.=."Input.file.is.
4ce60 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 3b too.long.(2^63.bytes.or.more).";
4ce80 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 20 .......retval_.=.2;.return;.}...
4cea0 20 4c 7a 69 70 5f 68 65 61 64 65 72 20 68 65 61 64 65 72 3b 0a 20 20 69 66 28 20 21 72 65 61 64 .Lzip_header.header;...if(.!read
4cec0 5f 68 65 61 64 65 72 28 20 69 6e 66 64 2c 20 68 65 61 64 65 72 2c 20 30 20 29 20 29 20 72 65 74 _header(.infd,.header,.0.).).ret
4cee0 75 72 6e 3b 0a 20 20 69 66 28 20 63 68 65 63 6b 5f 68 65 61 64 65 72 5f 65 72 72 6f 72 28 20 68 urn;...if(.check_header_error(.h
4cf00 65 61 64 65 72 20 29 20 29 20 72 65 74 75 72 6e 3b 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f eader.).).return;....unsigned.lo
4cf20 6e 67 20 6c 6f 6e 67 20 70 6f 73 20 3d 20 69 6e 73 69 7a 65 3b 09 2f 2f 20 61 6c 77 61 79 73 20 ng.long.pos.=.insize;.//.always.
4cf40 70 6f 69 6e 74 73 20 74 6f 20 61 20 68 65 61 64 65 72 20 6f 72 20 74 6f 20 45 4f 46 0a 20 20 77 points.to.a.header.or.to.EOF...w
4cf60 68 69 6c 65 28 20 70 6f 73 20 3e 3d 20 6d 69 6e 5f 6d 65 6d 62 65 72 5f 73 69 7a 65 20 29 0a 20 hile(.pos.>=.min_member_size.)..
4cf80 20 20 20 7b 0a 20 20 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 ...{.....Lzip_trailer.trailer;..
4cfa0 20 20 20 69 66 28 20 73 65 65 6b 5f 72 65 61 64 28 20 69 6e 66 64 2c 20 74 72 61 69 6c 65 72 2e ...if(.seek_read(.infd,.trailer.
4cfc0 64 61 74 61 2c 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 69 7a 65 2c 0a 20 20 20 20 20 20 data,.Lzip_trailer::size,.......
4cfe0 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 73 20 2d 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a .............pos.-.Lzip_trailer:
4d000 3a 73 69 7a 65 20 29 20 21 3d 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 69 7a 65 20 29 0a :size.).!=.Lzip_trailer::size.).
4d020 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 72 6f 72 20 ......{.set_errno_error(."Error.
4d040 72 65 61 64 69 6e 67 20 6d 65 6d 62 65 72 20 74 72 61 69 6c 65 72 3a 20 22 20 29 3b 20 62 72 65 reading.member.trailer:.".);.bre
4d060 61 6b 3b 20 7d 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 ak;.}.....const.unsigned.long.lo
4d080 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 72 5f ng.member_size.=.trailer.member_
4d0a0 73 69 7a 65 28 29 3b 0a 20 20 20 20 69 66 28 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3e 20 70 6f size();.....if(.member_size.>.po
4d0c0 73 20 7c 7c 20 21 74 72 61 69 6c 65 72 2e 76 65 72 69 66 79 5f 63 6f 6e 73 69 73 74 65 6e 63 79 s.||.!trailer.verify_consistency
4d0e0 28 29 20 29 09 2f 2f 20 62 61 64 20 74 72 61 69 6c 65 72 0a 20 20 20 20 20 20 7b 0a 20 20 20 20 ().).//.bad.trailer.......{.....
4d100 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 0a 20 20 ..if(.member_vector.empty().)...
4d120 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 61 28 20 ......{.if(.skip_trailing_data(.
4d140 69 6e 66 64 2c 20 70 6f 73 2c 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 2c 20 6c 6f 6f 73 infd,.pos,.ignore_trailing,.loos
4d160 65 5f 74 72 61 69 6c 69 6e 67 20 29 20 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 69 e_trailing.).).............conti
4d180 6e 75 65 3b 20 65 6c 73 65 20 72 65 74 75 72 6e 3b 20 7d 0a 20 20 20 20 20 20 73 65 74 5f 6e 75 nue;.else.return;.}.......set_nu
4d1a0 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 6f 73 20 22 2c 20 m_error(."Bad.trailer.at.pos.",.
4d1c0 70 6f 73 20 2d 20 4c 7a 69 70 5f 74 72 61 69 6c 65 72 3a 3a 73 69 7a 65 20 29 3b 0a 20 20 20 20 pos.-.Lzip_trailer::size.);.....
4d1e0 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 72 65 61 64 5f 68 ..break;.......}.....if(.!read_h
4d200 65 61 64 65 72 28 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 eader(.infd,.header,.pos.-.membe
4d220 72 5f 73 69 7a 65 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 r_size.).).break;.....if(.!heade
4d240 72 2e 76 65 72 69 66 79 28 29 20 29 09 09 09 09 2f 2f 20 62 61 64 20 68 65 61 64 65 72 0a 20 20 r.verify().)....//.bad.header...
4d260 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 6f 72 2e 65 6d ....{.......if(.member_vector.em
4d280 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 74 72 61 69 6c pty().).........{.if(.skip_trail
4d2a0 69 6e 67 5f 64 61 74 61 28 20 69 6e 66 64 2c 20 70 6f 73 2c 20 69 67 6e 6f 72 65 5f 74 72 61 69 ing_data(.infd,.pos,.ignore_trai
4d2c0 6c 69 6e 67 2c 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 20 29 20 29 0a 20 20 20 20 20 20 20 ling,.loose_trailing.).)........
4d2e0 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 20 65 6c 73 65 20 72 65 74 75 72 6e 3b 20 7d 0a 20 20 .....continue;.else.return;.}...
4d300 20 20 20 20 73 65 74 5f 6e 75 6d 5f 65 72 72 6f 72 28 20 22 42 61 64 20 68 65 61 64 65 72 20 61 ....set_num_error(."Bad.header.a
4d320 74 20 70 6f 73 20 22 2c 20 70 6f 73 20 2d 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 29 3b 0a 20 20 t.pos.",.pos.-.member_size.);...
4d340 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 70 6f 73 20 2d 3d 20 6d 65 ....break;.......}.....pos.-=.me
4d360 6d 62 65 72 5f 73 69 7a 65 3b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 64 69 mber_size;.....const.unsigned.di
4d380 63 74 69 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 ctionary_size.=.header.dictionar
4d3a0 79 5f 73 69 7a 65 28 29 3b 0a 20 20 20 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 70 75 73 68 y_size();.....member_vector.push
4d3c0 5f 62 61 63 6b 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 _back(.Member(.0,.trailer.data_s
4d3e0 69 7a 65 28 29 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 ize(),.pos,.....................
4d400 20 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 .................member_size,.di
4d420 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 29 3b 0a 20 20 20 20 69 66 28 20 64 69 63 74 69 ctionary_size.).);.....if(.dicti
4d440 6f 6e 61 72 79 5f 73 69 7a 65 5f 20 3c 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 0a onary_size_.<.dictionary_size.).
4d460 20 20 20 20 20 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 5f 20 3d 20 64 69 63 74 69 6f 6e ......dictionary_size_.=.diction
4d480 61 72 79 5f 73 69 7a 65 3b 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 70 6f 73 20 21 3d 20 30 20 7c ary_size;.....}...if(.pos.!=.0.|
4d4a0 7c 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 65 6d 70 74 79 28 29 20 29 0a 20 20 20 20 7b 0a |.member_vector.empty().).....{.
4d4c0 20 20 20 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 63 6c 65 61 72 28 29 3b 0a 20 20 20 20 69 ....member_vector.clear();.....i
4d4e0 66 28 20 72 65 74 76 61 6c 5f 20 3d 3d 20 30 20 29 20 7b 20 65 72 72 6f 72 5f 20 3d 20 22 43 61 f(.retval_.==.0.).{.error_.=."Ca
4d500 6e 27 74 20 63 72 65 61 74 65 20 66 69 6c 65 20 69 6e 64 65 78 2e 22 3b 20 72 65 74 76 61 6c 5f n't.create.file.index.";.retval_
4d520 20 3d 20 32 3b 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 3b 0a 20 20 20 20 7d 0a 20 20 73 74 64 3a .=.2;.}.....return;.....}...std:
4d540 3a 72 65 76 65 72 73 65 28 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 62 65 67 69 6e 28 29 2c :reverse(.member_vector.begin(),
4d560 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 65 6e 64 28 29 20 29 3b 0a 20 20 66 6f 72 28 20 75 .member_vector.end().);...for(.u
4d580 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 69 20 3d 20 30 3b 20 3b 20 2b 2b 69 20 29 0a 20 20 20 20 nsigned.long.i.=.0;.;.++i.).....
4d5a0 7b 0a 20 20 20 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 6c 6f 6e 67 20 65 6e 64 20 3d 20 6d 65 6d 62 {.....const.long.long.end.=.memb
4d5c0 65 72 5f 76 65 63 74 6f 72 5b 69 5d 2e 64 62 6c 6f 63 6b 2e 65 6e 64 28 29 3b 0a 20 20 20 20 69 er_vector[i].dblock.end();.....i
4d5e0 66 28 20 65 6e 64 20 3c 20 30 20 7c 7c 20 65 6e 64 20 3e 20 49 4e 54 36 34 5f 4d 41 58 20 29 0a f(.end.<.0.||.end.>.INT64_MAX.).
4d600 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 63 6c 65 61 ......{.......member_vector.clea
4d620 72 28 29 3b 0a 20 20 20 20 20 20 65 72 72 6f 72 5f 20 3d 20 22 44 61 74 61 20 69 6e 20 69 6e 70 r();.......error_.=."Data.in.inp
4d640 75 74 20 66 69 6c 65 20 69 73 20 74 6f 6f 20 6c 6f 6e 67 20 28 32 5e 36 33 20 62 79 74 65 73 20 ut.file.is.too.long.(2^63.bytes.
4d660 6f 72 20 6d 6f 72 65 29 2e 22 3b 0a 20 20 20 20 20 20 72 65 74 76 61 6c 5f 20 3d 20 32 3b 20 72 or.more).";.......retval_.=.2;.r
4d680 65 74 75 72 6e 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 69 66 28 20 69 20 2b 20 31 20 3e 3d 20 eturn;.......}.....if(.i.+.1.>=.
4d6a0 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 2e 73 69 7a 65 28 29 20 29 20 62 72 65 61 6b 3b 0a 20 20 member_vector.size().).break;...
4d6c0 20 20 6d 65 6d 62 65 72 5f 76 65 63 74 6f 72 5b 69 2b 31 5d 2e 64 62 6c 6f 63 6b 2e 70 6f 73 28 ..member_vector[i+1].dblock.pos(
4d6e0 20 65 6e 64 20 29 3b 0a 20 20 20 20 7d 0a 20 20 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .end.);.....}...}...............
4d700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d800 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 6d 61 69 6e 2e 63 63 00 00 00 00 00 00 00 00 00 00 00 lzip-1.22-rc2/main.cc...........
4d820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d860 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
4d880 30 31 30 37 35 36 30 00 31 33 36 36 37 36 35 32 35 37 37 00 30 30 31 33 31 33 32 00 30 00 00 00 0107560.13667652577.0013132.0...
4d8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d900 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...................
4d920 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...................
4d940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4d9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4da00 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
4da20 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
4da40 32 30 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 20.Antonio.Diaz.Diaz......This.p
4da60 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
4da80 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..
4daa0 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.
4dac0 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
4dae0 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
4db00 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.
4db20 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).
4db40 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
4db60 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
4db80 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
4dba0 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
4dbc0 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
4dbe0 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
4dc00 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
4dc20 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
4dc40 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
4dc60 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
4dc80 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
4dca0 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:/
4dcc0 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/>..*/./*..
4dce0 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
4dd00 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
4dd20 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 66 6c 61 ....(file.not.found,.invalid.fla
4dd40 67 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 20 69 6e 64 69 63 gs,.I/O.errors,.etc),.2.to.indic
4dd60 61 74 65 20 61 0a 20 20 20 63 6f 72 72 75 70 74 20 6f 72 20 69 6e 76 61 6c 69 64 20 69 6e 70 75 ate.a....corrupt.or.invalid.inpu
4dd80 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 69 73 t.file,.3.for.an.internal.consis
4dda0 74 65 6e 63 79 20 65 72 72 6f 72 0a 20 20 20 28 65 67 2c 20 62 75 67 29 20 77 68 69 63 68 20 63 tency.error....(eg,.bug).which.c
4ddc0 61 75 73 65 64 20 6c 7a 69 70 20 74 6f 20 70 61 6e 69 63 2e 0a 2a 2f 0a 0a 23 64 65 66 69 6e 65 aused.lzip.to.panic..*/..#define
4dde0 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 75 64 65 20 ._FILE_OFFSET_BITS.64..#include.
4de00 3c 61 6c 67 6f 72 69 74 68 6d 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 63 74 79 70 65 3e 0a 23 69 <algorithm>.#include.<cctype>.#i
4de20 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 6c 69 6d 69 74 nclude.<cerrno>.#include.<climit
4de40 73 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 63 73 69 67 6e 61 6c 3e 0a 23 69 6e 63 6c 75 64 65 20 3c s>.#include.<csignal>.#include.<
4de60 63 73 74 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 cstdio>.#include.<cstdlib>.#incl
4de80 75 64 65 20 3c 63 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 ude.<cstring>.#include.<new>.#in
4dea0 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 63 74 6f 72 3e clude.<string>.#include.<vector>
4dec0 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 64 65 20 3c 73 74 .#include.<fcntl.h>.#include.<st
4dee0 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 6e 63 dint.h>.#include.<unistd.h>.#inc
4df00 6c 75 64 65 20 3c 75 74 69 6d 65 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 79 73 2f 73 74 61 lude.<utime.h>.#include.<sys/sta
4df20 74 2e 68 3e 0a 23 69 66 20 64 65 66 69 6e 65 64 28 5f 5f 4d 53 56 43 52 54 5f 5f 29 20 7c 7c 20 t.h>.#if.defined(__MSVCRT__).||.
4df40 64 65 66 69 6e 65 64 28 5f 5f 4f 53 32 5f 5f 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 5f 44 4a defined(__OS2__).||.defined(__DJ
4df60 47 50 50 5f 5f 29 0a 23 69 6e 63 6c 75 64 65 20 3c 69 6f 2e 68 3e 0a 23 69 66 20 64 65 66 69 6e GPP__).#include.<io.h>.#if.defin
4df80 65 64 28 5f 5f 4d 53 56 43 52 54 5f 5f 29 0a 23 64 65 66 69 6e 65 20 66 63 68 6d 6f 64 28 78 2c ed(__MSVCRT__).#define.fchmod(x,
4dfa0 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 20 30 0a 23 64 65 y).0.#define.fchown(x,y,z).0.#de
4dfc0 66 69 6e 65 20 73 74 72 74 6f 75 6c 6c 20 73 74 64 3a 3a 73 74 72 74 6f 75 6c 0a 23 64 65 66 69 fine.strtoull.std::strtoul.#defi
4dfe0 6e 65 20 53 49 47 48 55 50 20 53 49 47 54 45 52 4d 0a 23 64 65 66 69 6e 65 20 53 5f 49 53 53 4f ne.SIGHUP.SIGTERM.#define.S_ISSO
4e000 43 4b 28 78 29 20 30 0a 23 69 66 6e 64 65 66 20 53 5f 49 52 47 52 50 0a 23 64 65 66 69 6e 65 20 CK(x).0.#ifndef.S_IRGRP.#define.
4e020 53 5f 49 52 47 52 50 20 30 0a 23 64 65 66 69 6e 65 20 53 5f 49 57 47 52 50 20 30 0a 23 64 65 66 S_IRGRP.0.#define.S_IWGRP.0.#def
4e040 69 6e 65 20 53 5f 49 52 4f 54 48 20 30 0a 23 64 65 66 69 6e 65 20 53 5f 49 57 4f 54 48 20 30 0a ine.S_IROTH.0.#define.S_IWOTH.0.
4e060 23 65 6e 64 69 66 0a 23 65 6e 64 69 66 0a 23 69 66 20 64 65 66 69 6e 65 64 28 5f 5f 44 4a 47 50 #endif.#endif.#if.defined(__DJGP
4e080 50 5f 5f 29 0a 23 64 65 66 69 6e 65 20 53 5f 49 53 53 4f 43 4b 28 78 29 20 30 0a 23 64 65 66 69 P__).#define.S_ISSOCK(x).0.#defi
4e0a0 6e 65 20 53 5f 49 53 56 54 58 20 30 0a 23 65 6e 64 69 66 0a 23 65 6e 64 69 66 0a 0a 23 69 6e 63 ne.S_ISVTX.0.#endif.#endif..#inc
4e0c0 6c 75 64 65 20 22 61 72 67 5f 70 61 72 73 65 72 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 6c 7a lude."arg_parser.h".#include."lz
4e0e0 69 70 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 64 65 63 6f 64 65 72 2e 68 22 0a 23 69 6e 63 6c ip.h".#include."decoder.h".#incl
4e100 75 64 65 20 22 65 6e 63 6f 64 65 72 5f 62 61 73 65 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 65 ude."encoder_base.h".#include."e
4e120 6e 63 6f 64 65 72 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 22 66 61 73 74 5f 65 6e 63 6f 64 65 72 ncoder.h".#include."fast_encoder
4e140 2e 68 22 0a 0a 23 69 66 6e 64 65 66 20 4f 5f 42 49 4e 41 52 59 0a 23 64 65 66 69 6e 65 20 4f 5f .h"..#ifndef.O_BINARY.#define.O_
4e160 42 49 4e 41 52 59 20 30 0a 23 65 6e 64 69 66 0a 0a 23 69 66 20 43 48 41 52 5f 42 49 54 20 21 3d BINARY.0.#endif..#if.CHAR_BIT.!=
4e180 20 38 0a 23 65 72 72 6f 72 20 22 45 6e 76 69 72 6f 6e 6d 65 6e 74 73 20 77 68 65 72 65 20 43 48 .8.#error."Environments.where.CH
4e1a0 41 52 5f 42 49 54 20 21 3d 20 38 20 61 72 65 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 2e 22 0a AR_BIT.!=.8.are.not.supported.".
4e1c0 23 65 6e 64 69 66 0a 0a 69 6e 74 20 76 65 72 62 6f 73 69 74 79 20 3d 20 30 3b 0a 0a 6e 61 6d 65 #endif..int.verbosity.=.0;..name
4e1e0 73 70 61 63 65 20 7b 0a 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 70 72 6f 67 space.{..const.char.*.const.prog
4e200 72 61 6d 5f 6e 61 6d 65 20 3d 20 22 6c 7a 69 70 22 3b 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 ram_name.=."lzip";.const.char.*.
4e220 63 6f 6e 73 74 20 70 72 6f 67 72 61 6d 5f 79 65 61 72 20 3d 20 22 32 30 32 30 22 3b 0a 63 6f 6e const.program_year.=."2020";.con
4e240 73 74 20 63 68 61 72 20 2a 20 69 6e 76 6f 63 61 74 69 6f 6e 5f 6e 61 6d 65 20 3d 20 70 72 6f 67 st.char.*.invocation_name.=.prog
4e260 72 61 6d 5f 6e 61 6d 65 3b 09 09 2f 2f 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 0a 0a 63 6f 6e ram_name;..//.default.value..con
4e280 73 74 20 73 74 72 75 63 74 20 7b 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 66 72 6f 6d 3b 20 63 st.struct.{.const.char.*.from;.c
4e2a0 6f 6e 73 74 20 63 68 61 72 20 2a 20 74 6f 3b 20 7d 20 6b 6e 6f 77 6e 5f 65 78 74 65 6e 73 69 6f onst.char.*.to;.}.known_extensio
4e2c0 6e 73 5b 5d 20 3d 20 7b 0a 20 20 7b 20 22 2e 6c 7a 22 2c 20 20 22 22 20 20 20 20 20 7d 2c 0a 20 ns[].=.{...{.".lz",.."".....},..
4e2e0 20 7b 20 22 2e 74 6c 7a 22 2c 20 22 2e 74 61 72 22 20 7d 2c 0a 20 20 7b 20 30 2c 20 20 20 20 20 .{.".tlz",.".tar".},...{.0,.....
4e300 20 30 20 20 20 20 20 20 7d 20 7d 3b 0a 0a 73 74 72 75 63 74 20 4c 7a 6d 61 5f 6f 70 74 69 6f 6e .0......}.};..struct.Lzma_option
4e320 73 0a 20 20 7b 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 s...{...int.dictionary_size;..//
4e340 20 34 20 4b 69 42 20 2e 2e 20 35 31 32 20 4d 69 42 0a 20 20 69 6e 74 20 6d 61 74 63 68 5f 6c 65 .4.KiB....512.MiB...int.match_le
4e360 6e 5f 6c 69 6d 69 74 3b 09 09 2f 2f 20 35 20 2e 2e 20 32 37 33 0a 20 20 7d 3b 0a 0a 65 6e 75 6d n_limit;..//.5....273...};..enum
4e380 20 4d 6f 64 65 20 7b 20 6d 5f 63 6f 6d 70 72 65 73 73 2c 20 6d 5f 64 65 63 6f 6d 70 72 65 73 73 .Mode.{.m_compress,.m_decompress
4e3a0 2c 20 6d 5f 6c 69 73 74 2c 20 6d 5f 74 65 73 74 20 7d 3b 0a 0a 2f 2a 20 56 61 72 69 61 62 6c 65 ,.m_list,.m_test.};../*.Variable
4e3c0 73 20 75 73 65 64 20 69 6e 20 73 69 67 6e 61 6c 20 68 61 6e 64 6c 65 72 20 63 6f 6e 74 65 78 74 s.used.in.signal.handler.context
4e3e0 2e 0a 20 20 20 54 68 65 79 20 61 72 65 20 6e 6f 74 20 64 65 63 6c 61 72 65 64 20 76 6f 6c 61 74 .....They.are.not.declared.volat
4e400 69 6c 65 20 62 65 63 61 75 73 65 20 74 68 65 20 68 61 6e 64 6c 65 72 20 6e 65 76 65 72 20 72 65 ile.because.the.handler.never.re
4e420 74 75 72 6e 73 2e 20 2a 2f 0a 73 74 64 3a 3a 73 74 72 69 6e 67 20 6f 75 74 70 75 74 5f 66 69 6c turns..*/.std::string.output_fil
4e440 65 6e 61 6d 65 3b 0a 69 6e 74 20 6f 75 74 66 64 20 3d 20 2d 31 3b 0a 62 6f 6f 6c 20 64 65 6c 65 ename;.int.outfd.=.-1;.bool.dele
4e460 74 65 5f 6f 75 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 te_output_on_interrupt.=.false;.
4e480 0a 0a 76 6f 69 64 20 73 68 6f 77 5f 68 65 6c 70 28 29 0a 20 20 7b 0a 20 20 73 74 64 3a 3a 70 72 ..void.show_help()...{...std::pr
4e4a0 69 6e 74 66 28 20 22 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 intf(."Lzip.is.a.lossless.data.c
4e4c0 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 61 63 65 20 ompressor.with.a.user.interface.
4e4e0 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 6f 6e 65 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 similar.to.the.one\n"...........
4e500 20 20 20 20 20 22 6f 66 20 67 7a 69 70 20 6f 72 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 75 73 65 ....."of.gzip.or.bzip2..Lzip.use
4e520 73 20 61 20 73 69 6d 70 6c 69 66 69 65 64 20 66 6f 72 6d 20 6f 66 20 74 68 65 20 27 4c 65 6d 70 s.a.simplified.form.of.the.'Lemp
4e540 65 6c 2d 5a 69 76 2d 4d 61 72 6b 6f 76 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 el-Ziv-Markov\n"................
4e560 22 63 68 61 69 6e 2d 41 6c 67 6f 72 69 74 68 6d 27 20 28 4c 5a 4d 41 29 20 73 74 72 65 61 6d 20 "chain-Algorithm'.(LZMA).stream.
4e580 66 6f 72 6d 61 74 2c 20 63 68 6f 73 65 6e 20 74 6f 20 6d 61 78 69 6d 69 7a 65 20 73 61 66 65 74 format,.chosen.to.maximize.safet
4e5a0 79 20 61 6e 64 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 69 6e 74 65 72 6f 70 y.and\n"................"interop
4e5c0 65 72 61 62 69 6c 69 74 79 2e 20 4c 7a 69 70 20 63 61 6e 20 63 6f 6d 70 72 65 73 73 20 61 62 6f erability..Lzip.can.compress.abo
4e5e0 75 74 20 61 73 20 66 61 73 74 20 61 73 20 67 7a 69 70 20 28 6c 7a 69 70 20 2d 30 29 20 6f 72 5c ut.as.fast.as.gzip.(lzip.-0).or\
4e600 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 63 6f 6d 70 72 65 73 73 20 6d 6f 73 74 n"................"compress.most
4e620 20 66 69 6c 65 73 20 6d 6f 72 65 20 74 68 61 6e 20 62 7a 69 70 32 20 28 6c 7a 69 70 20 2d 39 29 .files.more.than.bzip2.(lzip.-9)
4e640 2e 20 44 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 73 70 65 65 64 20 69 73 5c 6e 22 0a 20 20 20 20 ..Decompression.speed.is\n".....
4e660 20 20 20 20 20 20 20 20 20 20 20 22 69 6e 74 65 72 6d 65 64 69 61 74 65 20 62 65 74 77 65 65 6e ..........."intermediate.between
4e680 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 2e 20 4c 7a 69 70 20 69 73 20 62 65 74 74 65 72 20 .gzip.and.bzip2..Lzip.is.better.
4e6a0 74 68 61 6e 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 20 66 72 6f 6d 5c 6e 22 0a 20 20 20 20 than.gzip.and.bzip2.from\n".....
4e6c0 20 20 20 20 20 20 20 20 20 20 20 22 61 20 64 61 74 61 20 72 65 63 6f 76 65 72 79 20 70 65 72 73 ..........."a.data.recovery.pers
4e6e0 70 65 63 74 69 76 65 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 pective..Lzip.has.been.designed,
4e700 20 77 72 69 74 74 65 6e 2c 20 61 6e 64 20 74 65 73 74 65 64 5c 6e 22 0a 20 20 20 20 20 20 20 20 .written,.and.tested\n".........
4e720 20 20 20 20 20 20 20 22 77 69 74 68 20 67 72 65 61 74 20 63 61 72 65 20 74 6f 20 72 65 70 6c 61 ......."with.great.care.to.repla
4e740 63 65 20 67 7a 69 70 20 61 6e 64 20 62 7a 69 70 32 20 61 73 20 74 68 65 20 73 74 61 6e 64 61 72 ce.gzip.and.bzip2.as.the.standar
4e760 64 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 d.general-purpose\n"............
4e780 20 20 20 20 22 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 61 74 20 66 6f 72 20 75 6e 69 78 2d ...."compressed.format.for.unix-
4e7a0 6c 69 6b 65 20 73 79 73 74 65 6d 73 2e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 like.systems.\n"................
4e7c0 22 5c 6e 55 73 61 67 65 3a 20 25 73 20 5b 6f 70 74 69 6f 6e 73 5d 20 5b 66 69 6c 65 73 5d 5c 6e "\nUsage:.%s.[options].[files]\n
4e7e0 22 2c 20 69 6e 76 6f 63 61 74 69 6f 6e 5f 6e 61 6d 65 20 29 3b 0a 20 20 73 74 64 3a 3a 70 72 69 ",.invocation_name.);...std::pri
4e800 6e 74 66 28 20 22 5c 6e 4f 70 74 69 6f 6e 73 3a 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 ntf(."\nOptions:\n".............
4e820 20 20 20 22 20 20 2d 68 2c 20 2d 2d 68 65 6c 70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..."..-h,.--help................
4e840 20 20 20 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 5c .....display.this.help.and.exit\
4e860 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 56 2c 20 2d 2d 76 65 72 73 69 n"................"..-V,.--versi
4e880 6f 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 75 74 70 75 74 20 76 65 72 73 69 on..................output.versi
4e8a0 6f 6e 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 6e 64 20 65 78 69 74 5c 6e 22 0a 20 20 20 20 20 on.information.and.exit\n"......
4e8c0 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 61 2c 20 2d 2d 74 72 61 69 6c 69 6e 67 2d 65 72 72 6f .........."..-a,.--trailing-erro
4e8e0 72 20 20 20 20 20 20 20 20 20 20 20 65 78 69 74 20 77 69 74 68 20 65 72 72 6f 72 20 73 74 61 74 r...........exit.with.error.stat
4e900 75 73 20 69 66 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 us.if.trailing.data\n"..........
4e920 20 20 20 20 20 20 22 20 20 2d 62 2c 20 2d 2d 6d 65 6d 62 65 72 2d 73 69 7a 65 3d 3c 62 79 74 65 ......"..-b,.--member-size=<byte
4e940 73 3e 20 20 20 20 20 20 73 65 74 20 6d 65 6d 62 65 72 20 73 69 7a 65 20 6c 69 6d 69 74 20 69 6e s>......set.member.size.limit.in
4e960 20 62 79 74 65 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 63 2c 20 .bytes\n"................"..-c,.
4e980 2d 2d 73 74 64 6f 75 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 72 69 74 65 --stdout...................write
4e9a0 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 69 6e 70 75 74 20 .to.standard.output,.keep.input.
4e9c0 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 2d 64 2c 20 2d files\n"................"..-d,.-
4e9e0 2d 64 65 63 6f 6d 70 72 65 73 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 63 6f 6d 70 -decompress...............decomp
4ea00 72 65 73 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 66 2c 20 2d 2d ress\n"................"..-f,.--
4ea20 66 6f 72 63 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 76 65 72 77 72 69 force....................overwri
4ea40 74 65 20 65 78 69 73 74 69 6e 67 20 6f 75 74 70 75 74 20 66 69 6c 65 73 5c 6e 22 0a 20 20 20 20 te.existing.output.files\n".....
4ea60 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 46 2c 20 2d 2d 72 65 63 6f 6d 70 72 65 73 73 20 20 ..........."..-F,.--recompress..
4ea80 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 63 65 20 72 65 2d 63 6f 6d 70 72 65 73 73 69 6f .............force.re-compressio
4eaa0 6e 20 6f 66 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 73 5c 6e 22 0a 20 20 20 20 20 20 20 n.of.compressed.files\n"........
4eac0 20 20 20 20 20 20 20 20 22 20 20 2d 6b 2c 20 2d 2d 6b 65 65 70 20 20 20 20 20 20 20 20 20 20 20 ........"..-k,.--keep...........
4eae0 20 20 20 20 20 20 20 20 20 20 6b 65 65 70 20 28 64 6f 6e 27 74 20 64 65 6c 65 74 65 29 20 69 6e ..........keep.(don't.delete).in
4eb00 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 22 20 20 2d put.files\n"................"..-
4eb20 6c 2c 20 2d 2d 6c 69 73 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 l,.--list.....................pr
4eb40 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 7a 65 73 5c 6e 22 int.(un)compressed.file.sizes\n"
4eb60 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 6d 2c 20 2d 2d 6d 61 74 63 68 2d 6c ................"..-m,.--match-l
4eb80 65 6e 67 74 68 3d 3c 62 79 74 65 73 3e 20 20 20 20 20 73 65 74 20 6d 61 74 63 68 20 6c 65 6e 67 ength=<bytes>.....set.match.leng
4eba0 74 68 20 6c 69 6d 69 74 20 69 6e 20 62 79 74 65 73 20 5b 33 36 5d 5c 6e 22 0a 20 20 20 20 20 20 th.limit.in.bytes.[36]\n".......
4ebc0 20 20 20 20 20 20 20 20 20 22 20 20 2d 6f 2c 20 2d 2d 6f 75 74 70 75 74 3d 3c 66 69 6c 65 3e 20 ........."..-o,.--output=<file>.
4ebe0 20 20 20 20 20 20 20 20 20 20 20 77 72 69 74 65 20 74 6f 20 3c 66 69 6c 65 3e 5b 2e 6c 7a 5d 2c ...........write.to.<file>[.lz],
4ec00 20 6b 65 65 70 20 69 6e 70 75 74 20 66 69 6c 65 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 .keep.input.files\n"............
4ec20 20 20 20 20 22 20 20 2d 71 2c 20 2d 2d 71 75 69 65 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...."..-q,.--quiet..............
4ec40 20 20 20 20 20 20 73 75 70 70 72 65 73 73 20 61 6c 6c 20 6d 65 73 73 61 67 65 73 5c 6e 22 0a 20 ......suppress.all.messages\n"..
4ec60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 73 2c 20 2d 2d 64 69 63 74 69 6f 6e 61 72 .............."..-s,.--dictionar
4ec80 79 2d 73 69 7a 65 3d 3c 62 79 74 65 73 3e 20 20 73 65 74 20 64 69 63 74 69 6f 6e 61 72 79 20 73 y-size=<bytes>..set.dictionary.s
4eca0 69 7a 65 20 6c 69 6d 69 74 20 69 6e 20 62 79 74 65 73 20 5b 38 20 4d 69 42 5d 5c 6e 22 0a 20 20 ize.limit.in.bytes.[8.MiB]\n"...
4ecc0 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 53 2c 20 2d 2d 76 6f 6c 75 6d 65 2d 73 69 7a ............."..-S,.--volume-siz
4ece0 65 3d 3c 62 79 74 65 73 3e 20 20 20 20 20 20 73 65 74 20 76 6f 6c 75 6d 65 20 73 69 7a 65 20 6c e=<bytes>......set.volume.size.l
4ed00 69 6d 69 74 20 69 6e 20 62 79 74 65 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 imit.in.bytes\n"................
4ed20 22 20 20 2d 74 2c 20 2d 2d 74 65 73 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "..-t,.--test...................
4ed40 20 20 74 65 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 ..test.compressed.file.integrity
4ed60 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 20 2d 76 2c 20 2d 2d 76 65 72 62 \n"................"..-v,.--verb
4ed80 6f 73 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 65 20 76 65 72 62 6f 73 65 20 ose..................be.verbose.
4eda0 28 61 20 32 6e 64 20 2d 76 20 67 69 76 65 73 20 6d 6f 72 65 29 5c 6e 22 0a 20 20 20 20 20 20 20 (a.2nd.-v.gives.more)\n"........
4edc0 20 20 20 20 20 20 20 20 22 20 20 2d 30 20 2e 2e 20 2d 39 20 20 20 20 20 20 20 20 20 20 20 20 20 ........"..-0....-9.............
4ede0 20 20 20 20 20 20 20 20 20 20 73 65 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6c 65 76 65 6c 20 ..........set.compression.level.
4ee00 5b 64 65 66 61 75 6c 74 20 36 5d 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 [default.6]\n"................".
4ee20 20 20 20 20 20 2d 2d 66 61 73 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....--fast.....................
4ee40 61 6c 69 61 73 20 66 6f 72 20 2d 30 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 alias.for.-0\n"................"
4ee60 20 20 20 20 20 20 2d 2d 62 65 73 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......--best....................
4ee80 20 61 6c 69 61 73 20 66 6f 72 20 2d 39 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .alias.for.-9\n"................
4eea0 22 20 20 20 20 20 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 20 20 20 20 20 20 20 20 20 "......--loose-trailing.........
4eec0 20 20 61 6c 6c 6f 77 20 74 72 61 69 6c 69 6e 67 20 64 61 74 61 20 73 65 65 6d 69 6e 67 20 63 6f ..allow.trailing.data.seeming.co
4eee0 72 72 75 70 74 20 68 65 61 64 65 72 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 rrupt.header\n"................"
4ef00 5c 6e 49 66 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 \nIf.no.file.names.are.given,.or
4ef20 20 69 66 20 61 20 66 69 6c 65 20 69 73 20 27 2d 27 2c 20 6c 7a 69 70 20 63 6f 6d 70 72 65 73 73 .if.a.file.is.'-',.lzip.compress
4ef40 65 73 20 6f 72 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 63 6f 6d 70 72 es.or\n"................"decompr
4ef60 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
4ef80 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ndard.output.\n"................
4efa0 22 4e 75 6d 62 65 72 73 20 6d 61 79 20 62 65 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 20 6d 75 "Numbers.may.be.followed.by.a.mu
4efc0 6c 74 69 70 6c 69 65 72 3a 20 6b 20 3d 20 6b 42 20 3d 20 31 30 5e 33 20 3d 20 31 30 30 30 2c 5c ltiplier:.k.=.kB.=.10^3.=.1000,\
4efe0 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 4b 69 20 3d 20 4b 69 42 20 3d 20 32 5e n"................"Ki.=.KiB.=.2^
4f000 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 32 30 2c 20 10.=.1024,.M.=.10^6,.Mi.=.2^20,.
4f020 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 5c 6e 22 0a 20 G.=.10^9,.Gi.=.2^30,.etc...\n"..
4f040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 44 69 63 74 69 6f 6e 61 72 79 20 73 69 7a 65 73 20 .............."Dictionary.sizes.
4f060 31 32 20 74 6f 20 32 39 20 61 72 65 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 73 20 70 6f 77 65 12.to.29.are.interpreted.as.powe
4f080 72 73 20 6f 66 20 74 77 6f 2c 20 6d 65 61 6e 69 6e 67 20 32 5e 31 32 5c 6e 22 0a 20 20 20 20 20 rs.of.two,.meaning.2^12\n"......
4f0a0 20 20 20 20 20 20 20 20 20 20 22 74 6f 20 32 5e 32 39 20 62 79 74 65 73 2e 5c 6e 22 0a 20 20 20 .........."to.2^29.bytes.\n"....
4f0c0 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 6e 54 68 65 20 62 69 64 69 6d 65 6e 73 69 6f 6e 61 6c ............"\nThe.bidimensional
4f0e0 20 70 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 .parameter.space.of.LZMA.can't.b
4f100 65 20 6d 61 70 70 65 64 20 74 6f 20 61 20 6c 69 6e 65 61 72 5c 6e 22 0a 20 20 20 20 20 20 20 20 e.mapped.to.a.linear\n".........
4f120 20 20 20 20 20 20 20 22 73 63 61 6c 65 20 6f 70 74 69 6d 61 6c 20 66 6f 72 20 61 6c 6c 20 66 69 ......."scale.optimal.for.all.fi
4f140 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 20 76 65 les..If.your.files.are.large,.ve
4f160 72 79 20 72 65 70 65 74 69 74 69 76 65 2c 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ry.repetitive,\n"...............
4f180 20 22 65 74 63 2c 20 79 6f 75 20 6d 61 79 20 6e 65 65 64 20 74 6f 20 75 73 65 20 74 68 65 20 6f ."etc,.you.may.need.to.use.the.o
4f1a0 70 74 69 6f 6e 73 20 2d 2d 64 69 63 74 69 6f 6e 61 72 79 2d 73 69 7a 65 20 61 6e 64 20 2d 2d 6d ptions.--dictionary-size.and.--m
4f1c0 61 74 63 68 2d 6c 65 6e 67 74 68 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 atch-length\n"................"d
4f1e0 69 72 65 63 74 6c 79 20 74 6f 20 61 63 68 69 65 76 65 20 6f 70 74 69 6d 61 6c 20 70 65 72 66 6f irectly.to.achieve.optimal.perfo
4f200 72 6d 61 6e 63 65 2e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 6e 54 6f 20 rmance.\n"................"\nTo.
4f220 65 78 74 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 extract.all.the.files.from.archi
4f240 76 65 20 27 66 6f 6f 2e 74 61 72 2e 6c 7a 27 2c 20 75 73 65 20 74 68 65 20 63 6f 6d 6d 61 6e 64 ve.'foo.tar.lz',.use.the.command
4f260 73 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 27 74 61 72 20 2d 78 66 20 66 6f s\n"................"'tar.-xf.fo
4f280 6f 2e 74 61 72 2e 6c 7a 27 20 6f 72 20 27 6c 7a 69 70 20 2d 63 64 20 66 6f 6f 2e 74 61 72 2e 6c o.tar.lz'.or.'lzip.-cd.foo.tar.l
4f2a0 7a 20 7c 20 74 61 72 20 2d 78 66 20 2d 27 2e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 z.|.tar.-xf.-'.\n"..............
4f2c0 20 20 22 5c 6e 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 .."\nExit.status:.0.for.a.normal
4f2e0 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 62 6c .exit,.1.for.environmental.probl
4f300 65 6d 73 20 28 66 69 6c 65 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6e 6f 74 ems.(file\n"................"not
4f320 20 66 6f 75 6e 64 2c 20 69 6e 76 61 6c 69 64 20 66 6c 61 67 73 2c 20 49 2f 4f 20 65 72 72 6f 72 .found,.invalid.flags,.I/O.error
4f340 73 2c 20 65 74 63 29 2c 20 32 20 74 6f 20 69 6e 64 69 63 61 74 65 20 61 20 63 6f 72 72 75 70 74 s,.etc),.2.to.indicate.a.corrupt
4f360 20 6f 72 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 69 6e 76 61 6c 69 64 20 69 .or\n"................"invalid.i
4f380 6e 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 nput.file,.3.for.an.internal.con
4f3a0 73 69 73 74 65 6e 63 79 20 65 72 72 6f 72 20 28 65 67 2c 20 62 75 67 29 20 77 68 69 63 68 5c 6e sistency.error.(eg,.bug).which\n
4f3c0 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 63 61 75 73 65 64 20 6c 7a 69 70 20 74 6f "................"caused.lzip.to
4f3e0 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 65 .panic.\n"................"\nThe
4f400 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 20 .ideas.embodied.in.lzip.are.due.
4f420 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 70 to.(at.least).the.following.peop
4f440 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 4c le:\n"................"Abraham.L
4f460 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 20 empel.and.Jacob.Ziv.(for.the.LZ.
4f480 61 6c 67 6f 72 69 74 68 6d 29 2c 20 41 6e 64 72 65 79 20 4d 61 72 6b 6f 76 20 28 66 6f 72 20 74 algorithm),.Andrey.Markov.(for.t
4f4a0 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 6e he\n"................"definition
4f4c0 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 69 .of.Markov.chains),.G.N.N..Marti
4f4e0 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 6e n.(for.the.definition.of.range\n
4f500 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 6f "................"encoding),.Igo
4f520 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
4f540 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 20 ove.together.in.LZMA),.and\n"...
4f560 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 72 ............."Julian.Seward.(for
4f580 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 20 .bzip2's.CLI).\n"...............
4f5a0 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 67 ."\nReport.bugs.to.lzip-bug@nong
4f5c0 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 68 nu.org\n"................"Lzip.h
4f5e0 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 2f ome.page:.http://www.nongnu.org/
4f600 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 20 lzip/lzip.html\n".);...}...void.
4f620 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 66 show_version()...{...std::printf
4f640 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 56 (."%s.%s\n",.program_name,.PROGV
4f660 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 69 ERSION.);...std::printf(."Copyri
4f680 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 22 ght.(C).%s.Antonio.Diaz.Diaz.\n"
4f6a0 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 28 ,.program_year.);...std::printf(
4f6c0 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 6f ."License.GPLv2+:.GNU.GPL.versio
4f6e0 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 63 n.2.or.later.<http://gnu.org/lic
4f700 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 20 enses/gpl.html>\n"..............
4f720 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 72 .."This.is.free.software:.you.ar
4f740 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 74 e.free.to.change.and.redistribut
4f760 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 69 e.it.\n"................"There.i
4f780 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 72 s.NO.WARRANTY,.to.the.extent.per
4f7a0 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 65 mitted.by.law.\n".);...}..}.//.e
4f7c0 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 3a nd.namespace..void.Pretty_print:
4f7e0 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 20 :operator()(.const.char.*.const.
4f800 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 20 msg.).const...{...if(.verbosity.
4f820 3e 3d 20 30 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 66 69 72 73 74 5f 70 6f 73 74 20 >=.0.).....{.....if(.first_post.
4f840 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 3d 20 66 61 6c ).......{.......first_post.=.fal
4f860 73 65 3b 0a 20 20 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 se;.......std::fputs(.padded_nam
4f880 65 2e 63 5f 73 74 72 28 29 2c 20 73 74 64 65 72 72 20 29 3b 0a 20 20 20 20 20 20 69 66 28 20 21 e.c_str(),.stderr.);.......if(.!
4f8a0 6d 73 67 20 29 20 73 74 64 3a 3a 66 66 6c 75 73 68 28 20 73 74 64 65 72 72 20 29 3b 0a 20 20 20 msg.).std::fflush(.stderr.);....
4f8c0 20 20 20 7d 0a 20 20 20 20 69 66 28 20 6d 73 67 20 29 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 ...}.....if(.msg.).std::fprintf(
4f8e0 20 73 74 64 65 72 72 2c 20 22 25 73 5c 6e 22 2c 20 6d 73 67 20 29 3b 0a 20 20 20 20 7d 0a 20 20 .stderr,."%s\n",.msg.);.....}...
4f900 7d 0a 0a 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 62 61 64 5f 76 65 72 73 69 6f 6e 28 20 63 6f }...const.char.*.bad_version(.co
4f920 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 76 65 72 73 69 6f 6e 20 29 0a 20 20 7b 0a 20 20 73 74 61 nst.unsigned.version.)...{...sta
4f940 74 69 63 20 63 68 61 72 20 62 75 66 5b 38 30 5d 3b 0a 20 20 73 6e 70 72 69 6e 74 66 28 20 62 75 tic.char.buf[80];...snprintf(.bu
4f960 66 2c 20 73 69 7a 65 6f 66 20 62 75 66 2c 20 22 56 65 72 73 69 6f 6e 20 25 75 20 6d 65 6d 62 65 f,.sizeof.buf,."Version.%u.membe
4f980 72 20 66 6f 72 6d 61 74 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 2e 22 2c 0a 20 20 20 20 20 20 r.format.not.supported.",.......
4f9a0 20 20 20 20 20 20 76 65 72 73 69 6f 6e 20 29 3b 0a 20 20 72 65 74 75 72 6e 20 62 75 66 3b 0a 20 ......version.);...return.buf;..
4f9c0 20 7d 0a 0a 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 63 6f 6e .}...const.char.*.format_ds(.con
4f9e0 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 0a 20 20 st.unsigned.dictionary_size.)...
4fa00 7b 0a 20 20 65 6e 75 6d 20 7b 20 62 75 66 73 69 7a 65 20 3d 20 31 36 2c 20 66 61 63 74 6f 72 20 {...enum.{.bufsize.=.16,.factor.
4fa20 3d 20 31 30 32 34 20 7d 3b 0a 20 20 73 74 61 74 69 63 20 63 68 61 72 20 62 75 66 5b 62 75 66 73 =.1024.};...static.char.buf[bufs
4fa40 69 7a 65 5d 3b 0a 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74 20 70 72 65 66 69 ize];...const.char.*.const.prefi
4fa60 78 5b 38 5d 20 3d 0a 20 20 20 20 7b 20 22 4b 69 22 2c 20 22 4d 69 22 2c 20 22 47 69 22 2c 20 22 x[8].=.....{."Ki",."Mi",."Gi",."
4fa80 54 69 22 2c 20 22 50 69 22 2c 20 22 45 69 22 2c 20 22 5a 69 22 2c 20 22 59 69 22 20 7d 3b 0a 20 Ti",."Pi",."Ei",."Zi",."Yi".};..
4faa0 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 70 20 3d 20 22 22 3b 0a 20 20 63 6f 6e 73 74 20 63 68 .const.char.*.p.=."";...const.ch
4fac0 61 72 20 2a 20 6e 70 20 3d 20 22 20 20 22 3b 0a 20 20 75 6e 73 69 67 6e 65 64 20 6e 75 6d 20 3d ar.*.np.=."..";...unsigned.num.=
4fae0 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 3b 0a 20 20 62 6f 6f 6c 20 65 78 61 63 74 20 3d .dictionary_size;...bool.exact.=
4fb00 20 28 20 6e 75 6d 20 25 20 66 61 63 74 6f 72 20 3d 3d 20 30 20 29 3b 0a 0a 20 20 66 6f 72 28 20 .(.num.%.factor.==.0.);....for(.
4fb20 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 38 20 26 26 20 28 20 6e 75 6d 20 3e 20 39 39 39 39 int.i.=.0;.i.<.8.&&.(.num.>.9999
4fb40 20 7c 7c 20 28 20 65 78 61 63 74 20 26 26 20 6e 75 6d 20 3e 3d 20 66 61 63 74 6f 72 20 29 20 29 .||.(.exact.&&.num.>=.factor.).)
4fb60 3b 20 2b 2b 69 20 29 0a 20 20 20 20 7b 20 6e 75 6d 20 2f 3d 20 66 61 63 74 6f 72 3b 20 69 66 28 ;.++i.).....{.num./=.factor;.if(
4fb80 20 6e 75 6d 20 25 20 66 61 63 74 6f 72 20 21 3d 20 30 20 29 20 65 78 61 63 74 20 3d 20 66 61 6c .num.%.factor.!=.0.).exact.=.fal
4fba0 73 65 3b 0a 20 20 20 20 20 20 70 20 3d 20 70 72 65 66 69 78 5b 69 5d 3b 20 6e 70 20 3d 20 22 22 se;.......p.=.prefix[i];.np.=.""
4fbc0 3b 20 7d 0a 20 20 73 6e 70 72 69 6e 74 66 28 20 62 75 66 2c 20 62 75 66 73 69 7a 65 2c 20 22 25 ;.}...snprintf(.buf,.bufsize,."%
4fbe0 73 25 34 75 20 25 73 42 22 2c 20 6e 70 2c 20 6e 75 6d 2c 20 70 20 29 3b 0a 20 20 72 65 74 75 72 s%4u.%sB",.np,.num,.p.);...retur
4fc00 6e 20 62 75 66 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 73 68 6f 77 5f 68 65 61 64 65 72 28 20 63 n.buf;...}...void.show_header(.c
4fc20 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 0a onst.unsigned.dictionary_size.).
4fc40 20 20 7b 0a 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 64 69 63 ..{...std::fprintf(.stderr,."dic
4fc60 74 20 25 73 2c 20 22 2c 20 66 6f 72 6d 61 74 5f 64 73 28 20 64 69 63 74 69 6f 6e 61 72 79 5f 73 t.%s,.",.format_ds(.dictionary_s
4fc80 69 7a 65 20 29 20 29 3b 0a 20 20 7d 0a 0a 6e 61 6d 65 73 70 61 63 65 20 7b 0a 0a 75 6e 73 69 67 ize.).);...}..namespace.{..unsig
4fca0 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 61 72 ned.long.long.getnum(.const.char
4fcc0 20 2a 20 63 6f 6e 73 74 20 70 74 72 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .*.const.ptr,...................
4fce0 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
4fd00 67 20 6c 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 g.llimit,.......................
4fd20 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 75 6c .....const.unsigned.long.long.ul
4fd40 69 6d 69 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 imit.)...{...char.*.tail;...errn
4fd60 6f 20 3d 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 o.=.0;...unsigned.long.long.resu
4fd80 6c 74 20 3d 20 73 74 72 74 6f 75 6c 6c 28 20 70 74 72 2c 20 26 74 61 69 6c 2c 20 30 20 29 3b 0a lt.=.strtoull(.ptr,.&tail,.0.);.
4fda0 20 20 69 66 28 20 74 61 69 6c 20 3d 3d 20 70 74 72 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 73 68 ..if(.tail.==.ptr.).....{.....sh
4fdc0 6f 77 5f 65 72 72 6f 72 28 20 22 42 61 64 20 6f 72 20 6d 69 73 73 69 6e 67 20 6e 75 6d 65 72 69 ow_error(."Bad.or.missing.numeri
4fde0 63 61 6c 20 61 72 67 75 6d 65 6e 74 2e 22 2c 20 30 2c 20 74 72 75 65 20 29 3b 0a 20 20 20 20 73 cal.argument.",.0,.true.);.....s
4fe00 74 64 3a 3a 65 78 69 74 28 20 31 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 69 66 28 20 21 65 72 72 td::exit(.1.);.....}....if(.!err
4fe20 6e 6f 20 26 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 no.&&.tail[0].).....{.....const.
4fe40 75 6e 73 69 67 6e 65 64 20 66 61 63 74 6f 72 20 3d 20 28 20 74 61 69 6c 5b 31 5d 20 3d 3d 20 27 unsigned.factor.=.(.tail[1].==.'
4fe60 69 27 20 29 20 3f 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 i'.).?.1024.:.1000;.....int.expo
4fe80 6e 65 6e 74 20 3d 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 nent.=.0;....//.0.=.bad.multipli
4fea0 65 72 0a 20 20 20 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 er.....switch(.tail[0].).......{
4fec0 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 20 38 3b 20 62 .......case.'Y':.exponent.=.8;.b
4fee0 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 65 6e 74 20 3d reak;.......case.'Z':.exponent.=
4ff00 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 65 78 70 6f 6e .7;.break;.......case.'E':.expon
4ff20 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 27 50 27 3a 20 ent.=.6;.break;.......case.'P':.
4ff40 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 63 61 73 65 20 exponent.=.5;.break;.......case.
4ff60 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 20 20 20 20 20 'T':.exponent.=.4;.break;.......
4ff80 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 61 6b 3b 0a 20 case.'G':.exponent.=.3;.break;..
4ffa0 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 3b 20 62 72 65 .....case.'M':.exponent.=.2;.bre
4ffc0 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 74 6f 72 20 3d ak;.......case.'K':.if(.factor.=
4ffe0 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 6b 3b 0a 20 20 =.1024.).exponent.=.1;.break;...
50000 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 20 31 30 30 30 ....case.'k':.if(.factor.==.1000
50020 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 20 20 20 7d 0a .).exponent.=.1;.break;.......}.
50040 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 20 20 20 7b 0a ....if(.exponent.<=.0.).......{.
50060 20 20 20 20 20 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 22 42 61 64 20 6d 75 6c 74 69 70 6c 69 65 ......show_error(."Bad.multiplie
50080 72 20 69 6e 20 6e 75 6d 65 72 69 63 61 6c 20 61 72 67 75 6d 65 6e 74 2e 22 2c 20 30 2c 20 74 72 r.in.numerical.argument.",.0,.tr
500a0 75 65 20 29 3b 0a 20 20 20 20 20 20 73 74 64 3a 3a 65 78 69 74 28 20 31 20 29 3b 0a 20 20 20 20 ue.);.......std::exit(.1.);.....
500c0 20 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
500e0 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
50100 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
50120 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.=
50140 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;.}.......}.....}.
50160 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
50180 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.=
501a0 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.).....{....
501c0 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 22 4e 75 6d 65 72 69 63 61 6c 20 61 72 67 75 6d 65 6e 74 .show_error(."Numerical.argument
501e0 20 6f 75 74 20 6f 66 20 6c 69 6d 69 74 73 2e 22 20 29 3b 0a 20 20 20 20 73 74 64 3a 3a 65 78 69 .out.of.limits.".);.....std::exi
50200 74 28 20 31 20 29 3b 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 72 65 73 75 6c 74 3b 0a 20 t(.1.);.....}...return.result;..
50220 20 7d 0a 0a 0a 69 6e 74 20 67 65 74 5f 64 69 63 74 5f 73 69 7a 65 28 20 63 6f 6e 73 74 20 63 68 .}...int.get_dict_size(.const.ch
50240 61 72 20 2a 20 63 6f 6e 73 74 20 61 72 67 20 29 0a 20 20 7b 0a 20 20 63 68 61 72 20 2a 20 74 61 ar.*.const.arg.)...{...char.*.ta
50260 69 6c 3b 0a 20 20 63 6f 6e 73 74 20 6c 6f 6e 67 20 62 69 74 73 20 3d 20 73 74 64 3a 3a 73 74 72 il;...const.long.bits.=.std::str
50280 74 6f 6c 28 20 61 72 67 2c 20 26 74 61 69 6c 2c 20 30 20 29 3b 0a 20 20 69 66 28 20 62 69 74 73 tol(.arg,.&tail,.0.);...if(.bits
502a0 20 3e 3d 20 6d 69 6e 5f 64 69 63 74 69 6f 6e 61 72 79 5f 62 69 74 73 20 26 26 0a 20 20 20 20 20 .>=.min_dictionary_bits.&&......
502c0 20 62 69 74 73 20 3c 3d 20 6d 61 78 5f 64 69 63 74 69 6f 6e 61 72 79 5f 62 69 74 73 20 26 26 20 .bits.<=.max_dictionary_bits.&&.
502e0 2a 74 61 69 6c 20 3d 3d 20 30 20 29 0a 20 20 20 20 72 65 74 75 72 6e 20 31 20 3c 3c 20 62 69 74 *tail.==.0.).....return.1.<<.bit
50300 73 3b 0a 20 20 72 65 74 75 72 6e 20 67 65 74 6e 75 6d 28 20 61 72 67 2c 20 6d 69 6e 5f 64 69 63 s;...return.getnum(.arg,.min_dic
50320 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 7a tionary_size,.max_dictionary_siz
50340 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 26 e.);...}...void.set_mode(.Mode.&
50360 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 6f .program_mode,.const.Mode.new_mo
50380 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 6d de.)...{...if(.program_mode.!=.m
503a0 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 77 _compress.&&.program_mode.!=.new
503c0 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 4f _mode.).....{.....show_error(."O
503e0 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 69 nly.one.operation.can.be.specifi
50400 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 20 ed.",.0,.true.);.....std::exit(.
50420 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 5f 1.);.....}...program_mode.=.new_
50440 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 28 mode;...}...int.extension_index(
50460 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 0a .const.std::string.&.name.)...{.
50480 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 74 ..for(.int.eindex.=.0;.known_ext
504a0 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 29 ensions[eindex].from;.++eindex.)
504c0 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 74 .....{.....const.std::string.ext
504e0 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 20 (.known_extensions[eindex].from.
50500 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 7a );.....if(.name.size().>.ext.siz
50520 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 6d e().&&.........name.compare(.nam
50540 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 28 e.size().-.ext.size(),.ext.size(
50560 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 6e ),.ext.).==.0.).......return.ein
50580 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 6f dex;.....}...return.-1;...}...vo
505a0 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 72 id.set_c_outname(.const.std::str
505c0 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 73 ing.&.name,.const.bool.filenames
505e0 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 73 _given,.....................cons
50600 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 6c t.bool.force_ext,.const.bool.mul
50620 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 20 tifile.)...{.../*.zupdate.<.1.9.
50640 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 6e depends.on.lzip.adding.the.exten
50660 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 61 sion.'.lz'.to.name.when......rea
50680 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 6f ding.from.standard.input..*/...o
506a0 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 6c utput_filename.=.name;...if(.mul
506c0 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 30 tifile.).output_filename.+=."000
506e0 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 6c 01";...if(.force_ext.||.multifil
50700 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 26 e.||.......(.!filenames_given.&&
50720 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 6d .extension_index(.output_filenam
50740 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 20 e.).<.0.).).....output_filename.
50760 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 7d +=.known_extensions[0].from;...}
50780 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 64 ...void.set_d_outname(.const.std
507a0 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 65 ::string.&.name,.const.int.einde
507c0 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 20 x.)...{...if(.eindex.>=.0.).....
507e0 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 6e {.....const.std::string.from(.kn
50800 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 20 own_extensions[eindex].from.);..
50820 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 29 ...if(.name.size().>.from.size()
50840 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 65 .).......{.......output_filename
50860 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 20 .assign(.name,.0,.name.size().-.
50880 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 65 from.size().);.......output_file
508a0 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 5d name.+=.known_extensions[eindex]
508c0 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 7d .to;.......return;.......}.....}
508e0 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 75 ...output_filename.=.name;.outpu
50900 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 62 t_filename.+=.".out";...if(.verb
50920 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 73 osity.>=.1.).....std::fprintf(.s
50940 74 64 65 72 72 2c 20 22 25 73 3a 20 43 61 6e 27 74 20 67 75 65 73 73 20 6f 72 69 67 69 6e 61 6c tderr,."%s:.Can't.guess.original
50960 20 6e 61 6d 65 20 66 6f 72 20 27 25 73 27 20 2d 2d 20 75 73 69 6e 67 20 27 25 73 27 5c 6e 22 2c .name.for.'%s'.--.using.'%s'\n",
50980 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 2c ...................program_name,
509a0 20 6e 61 6d 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 .name.c_str(),.output_filename.c
509c0 5f 73 74 72 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 _str().);...}..}.//.end.namespac
509e0 65 0a 0a 69 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 e..int.open_instream(.const.char
50a00 20 2a 20 63 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 .*.const.name,.struct.stat.*.con
50a20 73 74 20 69 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 st.in_statsp,...................
50a40 20 63 6f 6e 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 .const.bool.one_to_one,.const.bo
50a60 6f 6c 20 72 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 ol.reg_only.)...{...int.infd.=.o
50a80 70 65 6e 28 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 pen(.name,.O_RDONLY.|.O_BINARY.)
50aa0 3b 0a 20 20 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 ;...if(.infd.<.0.).....show_file
50ac0 5f 65 72 72 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 _error(.name,."Can't.open.input.
50ae0 66 69 6c 65 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 file",.errno.);...else.....{....
50b00 20 63 6f 6e 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 .const.int.i.=.fstat(.infd,.in_s
50b20 74 61 74 73 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 tatsp.);.....const.mode_t.mode.=
50b40 20 69 6e 5f 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 .in_statsp->st_mode;.....const.b
50b60 6f 6f 6c 20 63 61 6e 5f 72 65 61 64 20 3d 20 28 20 69 20 3d 3d 20 30 20 26 26 20 21 72 65 67 5f ool.can_read.=.(.i.==.0.&&.!reg_
50b80 6f 6e 6c 79 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 20 only.&&.........................
50ba0 20 20 20 20 28 20 53 5f 49 53 42 4c 4b 28 20 6d 6f 64 65 20 29 20 7c 7c 20 53 5f 49 53 43 48 52 ....(.S_ISBLK(.mode.).||.S_ISCHR
50bc0 28 20 6d 6f 64 65 20 29 20 7c 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (.mode.).||.....................
50be0 20 20 20 20 20 20 20 20 20 20 53 5f 49 53 46 49 46 4f 28 20 6d 6f 64 65 20 29 20 7c 7c 20 53 5f ..........S_ISFIFO(.mode.).||.S_
50c00 49 53 53 4f 43 4b 28 20 6d 6f 64 65 20 29 20 29 20 29 3b 0a 20 20 20 20 69 66 28 20 69 20 21 3d ISSOCK(.mode.).).);.....if(.i.!=
50c20 20 30 20 7c 7c 20 28 20 21 53 5f 49 53 52 45 47 28 20 6d 6f 64 65 20 29 20 26 26 20 28 20 21 63 .0.||.(.!S_ISREG(.mode.).&&.(.!c
50c40 61 6e 5f 72 65 61 64 20 7c 7c 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 20 29 20 29 20 29 0a 20 20 20 20 an_read.||.one_to_one.).).).....
50c60 20 20 7b 0a 20 20 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 ..{.......if(.verbosity.>=.0.)..
50c80 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
50ca0 3a 20 49 6e 70 75 74 20 66 69 6c 65 20 27 25 73 27 20 69 73 20 6e 6f 74 20 61 20 72 65 67 75 6c :.Input.file.'%s'.is.not.a.regul
50cc0 61 72 20 66 69 6c 65 25 73 2e 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ar.file%s.\n",..................
50ce0 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 28 20 63 61 6e 5f 72 .....program_name,.name,.(.can_r
50d00 65 61 64 20 26 26 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 20 29 20 3f 0a 20 20 20 20 20 20 20 20 20 20 ead.&&.one_to_one.).?...........
50d20 20 20 20 20 20 20 20 20 20 20 20 20 22 2c 5c 6e 20 20 20 20 20 20 61 6e 64 20 6e 65 69 74 68 65 ............",\n......and.neithe
50d40 72 20 27 2d 63 27 20 6e 6f 72 20 27 2d 6f 27 20 77 65 72 65 20 73 70 65 63 69 66 69 65 64 22 20 r.'-c'.nor.'-o'.were.specified".
50d60 3a 20 22 22 20 29 3b 0a 20 20 20 20 20 20 63 6c 6f 73 65 28 20 69 6e 66 64 20 29 3b 0a 20 20 20 :."".);.......close(.infd.);....
50d80 20 20 20 69 6e 66 64 20 3d 20 2d 31 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 72 65 ...infd.=.-1;.......}.....}...re
50da0 74 75 72 6e 20 69 6e 66 64 3b 0a 20 20 7d 0a 0a 6e 61 6d 65 73 70 61 63 65 20 7b 0a 0a 69 6e 74 turn.infd;...}..namespace.{..int
50dc0 20 6f 70 65 6e 5f 69 6e 73 74 72 65 61 6d 32 28 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f .open_instream2(.const.char.*.co
50de0 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 6e nst.name,.struct.stat.*.const.in
50e00 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 20 63 6f 6e _statsp,.....................con
50e20 73 74 20 4d 6f 64 65 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 2c 20 63 6f 6e 73 74 20 69 6e 74 20 st.Mode.program_mode,.const.int.
50e40 65 69 6e 64 65 78 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 eindex,.....................cons
50e60 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 65 t.bool.one_to_one,.const.bool.re
50e80 63 6f 6d 70 72 65 73 73 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 compress.)...{...if(.program_mod
50ea0 65 20 3d 3d 20 6d 5f 63 6f 6d 70 72 65 73 73 20 26 26 20 21 72 65 63 6f 6d 70 72 65 73 73 20 26 e.==.m_compress.&&.!recompress.&
50ec0 26 20 65 69 6e 64 65 78 20 3e 3d 20 30 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 69 66 28 20 76 65 &.eindex.>=.0.).....{.....if(.ve
50ee0 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 3a 66 70 72 69 6e 74 rbosity.>=.0.).......std::fprint
50f00 66 28 20 73 74 64 65 72 72 2c 20 22 25 73 3a 20 49 6e 70 75 74 20 66 69 6c 65 20 27 25 73 27 20 f(.stderr,."%s:.Input.file.'%s'.
50f20 61 6c 72 65 61 64 79 20 68 61 73 20 27 25 73 27 20 73 75 66 66 69 78 2e 5c 6e 22 2c 0a 20 20 20 already.has.'%s'.suffix.\n",....
50f40 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 2c 20 6e .................program_name,.n
50f60 61 6d 65 2c 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 ame,.known_extensions[eindex].fr
50f80 6f 6d 20 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 0a 20 20 20 20 7d 0a 20 20 72 65 74 om.);.....return.-1;.....}...ret
50fa0 75 72 6e 20 6f 70 65 6e 5f 69 6e 73 74 72 65 61 6d 28 20 6e 61 6d 65 2c 20 69 6e 5f 73 74 61 74 urn.open_instream(.name,.in_stat
50fc0 73 70 2c 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 2c 20 66 61 6c 73 65 20 29 3b 0a 20 20 7d 0a 0a 0a 62 sp,.one_to_one,.false.);...}...b
50fe0 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 6f 6c 20 66 ool.open_outstream(.const.bool.f
51000 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 20 7b 0a 20 orce,.const.bool.protect.)...{..
51020 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 53 52 20 7c .const.mode_t.usr_rw.=.S_IRUSR.|
51040 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 5f 72 77 20 .S_IWUSR;...const.mode_t.all_rw.
51060 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 20 7c 20 53 =.usr_rw.|.S_IRGRP.|.S_IWGRP.|.S
51080 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 64 65 5f 74 _IROTH.|.S_IWOTH;...const.mode_t
510a0 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 72 77 20 3a .outfd_mode.=.protect.?.usr_rw.:
510c0 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 41 54 20 7c .all_rw;...int.flags.=.O_CREAT.|
510e0 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 66 6f 72 63 .O_WRONLY.|.O_BINARY;...if(.forc
51100 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 6c 61 67 73 e.).flags.|=.O_TRUNC;.else.flags
51120 20 7c 3d 20 4f 5f 45 58 43 4c 3b 0a 0a 20 20 6f 75 74 66 64 20 3d 20 6f 70 65 6e 28 20 6f 75 74 .|=.O_EXCL;....outfd.=.open(.out
51140 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 73 2c 20 6f 75 74 put_filename.c_str(),.flags,.out
51160 66 64 5f 6d 6f 64 65 20 29 3b 0a 20 20 69 66 28 20 6f 75 74 66 64 20 3e 3d 20 30 20 29 20 64 65 fd_mode.);...if(.outfd.>=.0.).de
51180 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 3d 20 74 72 75 65 3b lete_output_on_interrupt.=.true;
511a0 0a 20 20 65 6c 73 65 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 ...else.if(.verbosity.>=.0.)....
511c0 20 7b 0a 20 20 20 20 69 66 28 20 65 72 72 6e 6f 20 3d 3d 20 45 45 58 49 53 54 20 29 0a 20 20 20 .{.....if(.errno.==.EEXIST.)....
511e0 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 4f 75 ...std::fprintf(.stderr,."%s:.Ou
51200 74 70 75 74 20 66 69 6c 65 20 27 25 73 27 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 2c 20 73 tput.file.'%s'.already.exists,.s
51220 6b 69 70 70 69 6e 67 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 kipping.\n",....................
51240 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 2c 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 .program_name,.output_filename.c
51260 5f 73 74 72 28 29 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 _str().);.....else.......std::fp
51280 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 73 3a 20 43 61 6e 27 74 20 63 72 65 61 74 65 rintf(.stderr,."%s:.Can't.create
512a0 20 6f 75 74 70 75 74 20 66 69 6c 65 20 27 25 73 27 3a 20 25 73 5c 6e 22 2c 0a 20 20 20 20 20 20 .output.file.'%s':.%s\n",.......
512c0 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 6f 75 74 70 ..............program_name,.outp
512e0 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 74 72 28 29 2c 20 73 74 64 3a 3a 73 74 72 65 72 72 ut_filename.c_str(),.std::strerr
51300 6f 72 28 20 65 72 72 6e 6f 20 29 20 29 3b 0a 20 20 20 20 7d 0a 20 20 72 65 74 75 72 6e 20 28 20 or(.errno.).);.....}...return.(.
51320 6f 75 74 66 64 20 3e 3d 20 30 20 29 3b 0a 20 20 7d 0a 0a 0a 62 6f 6f 6c 20 63 68 65 63 6b 5f 74 outfd.>=.0.);...}...bool.check_t
51340 74 79 5f 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 ty_in(.const.char.*.const.input_
51360 66 69 6c 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 filename,.const.int.infd,.......
51380 20 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 .............const.Mode.program_
513a0 6d 6f 64 65 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 mode.)...{...if(.(.program_mode.
513c0 3d 3d 20 6d 5f 64 65 63 6f 6d 70 72 65 73 73 20 7c 7c 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 ==.m_decompress.||.program_mode.
513e0 3d 3d 20 6d 5f 74 65 73 74 20 29 20 26 26 0a 20 20 20 20 20 20 69 73 61 74 74 79 28 20 69 6e 66 ==.m_test.).&&.......isatty(.inf
51400 64 20 29 20 29 09 09 09 09 2f 2f 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 2f 64 65 76 2f 74 74 79 d.).)....//.for.example./dev/tty
51420 0a 20 20 20 20 7b 20 73 68 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 69 6e 70 75 74 5f 66 69 .....{.show_file_error(.input_fi
51440 6c 65 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 20 20 22 lename,........................"
51460 49 20 77 6f 6e 27 74 20 72 65 61 64 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 66 72 6f I.won't.read.compressed.data.fro
51480 6d 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 m.a.terminal.".);.......return.f
514a0 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 62 6f 6f 6c alse;.}...return.true;...}..bool
514c0 20 63 68 65 63 6b 5f 74 74 79 5f 6f 75 74 28 20 63 6f 6e 73 74 20 4d 6f 64 65 20 70 72 6f 67 72 .check_tty_out(.const.Mode.progr
514e0 61 6d 5f 6d 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 am_mode.)...{...if(.program_mode
51500 20 3d 3d 20 6d 5f 63 6f 6d 70 72 65 73 73 20 26 26 20 69 73 61 74 74 79 28 20 6f 75 74 66 64 20 .==.m_compress.&&.isatty(.outfd.
51520 29 20 29 0a 20 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 ).).....{.show_file_error(.outpu
51540 74 5f 66 69 6c 65 6e 61 6d 65 2e 73 69 7a 65 28 29 20 3f 0a 20 20 20 20 20 20 20 20 20 20 20 20 t_filename.size().?.............
51560 20 20 20 20 20 20 20 20 20 20 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 74 72 ...........output_filename.c_str
51580 28 29 20 3a 20 22 28 73 74 64 6f 75 74 29 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ().:."(stdout)",................
515a0 20 20 20 20 20 20 20 20 22 49 20 77 6f 6e 27 74 20 77 72 69 74 65 20 63 6f 6d 70 72 65 73 73 65 ........"I.won't.write.compresse
515c0 64 20 64 61 74 61 20 74 6f 20 61 20 74 65 72 6d 69 6e 61 6c 2e 22 20 29 3b 0a 20 20 20 20 20 20 d.data.to.a.terminal.".);.......
515e0 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 return.false;.}...return.true;..
51600 20 7d 0a 0a 0a 76 6f 69 64 20 73 65 74 5f 73 69 67 6e 61 6c 73 28 20 76 6f 69 64 20 28 2a 61 63 .}...void.set_signals(.void.(*ac
51620 74 69 6f 6e 29 28 69 6e 74 29 20 29 0a 20 20 7b 0a 20 20 73 74 64 3a 3a 73 69 67 6e 61 6c 28 20 tion)(int).)...{...std::signal(.
51640 53 49 47 48 55 50 2c 20 61 63 74 69 6f 6e 20 29 3b 0a 20 20 73 74 64 3a 3a 73 69 67 6e 61 6c 28 SIGHUP,.action.);...std::signal(
51660 20 53 49 47 49 4e 54 2c 20 61 63 74 69 6f 6e 20 29 3b 0a 20 20 73 74 64 3a 3a 73 69 67 6e 61 6c .SIGINT,.action.);...std::signal
51680 28 20 53 49 47 54 45 52 4d 2c 20 61 63 74 69 6f 6e 20 29 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 (.SIGTERM,.action.);...}...void.
516a0 63 6c 65 61 6e 75 70 5f 61 6e 64 5f 66 61 69 6c 28 20 63 6f 6e 73 74 20 69 6e 74 20 72 65 74 76 cleanup_and_fail(.const.int.retv
516c0 61 6c 20 29 0a 20 20 7b 0a 20 20 73 65 74 5f 73 69 67 6e 61 6c 73 28 20 53 49 47 5f 49 47 4e 20 al.)...{...set_signals(.SIG_IGN.
516e0 29 3b 09 09 09 2f 2f 20 69 67 6e 6f 72 65 20 73 69 67 6e 61 6c 73 0a 20 20 69 66 28 20 64 65 6c );...//.ignore.signals...if(.del
51700 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 0a 20 20 20 20 7b 0a ete_output_on_interrupt.).....{.
51720 20 20 20 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 3d ....delete_output_on_interrupt.=
51740 20 66 61 6c 73 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 .false;.....if(.verbosity.>=.0.)
51760 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 22 25 73 .......std::fprintf(.stderr,."%s
51780 3a 20 44 65 6c 65 74 69 6e 67 20 6f 75 74 70 75 74 20 66 69 6c 65 20 27 25 73 27 2c 20 69 66 20 :.Deleting.output.file.'%s',.if.
517a0 69 74 20 65 78 69 73 74 73 2e 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 it.exists.\n",..................
517c0 20 20 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 2c 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 ...program_name,.output_filename
517e0 2e 63 5f 73 74 72 28 29 20 29 3b 0a 20 20 20 20 69 66 28 20 6f 75 74 66 64 20 3e 3d 20 30 20 29 .c_str().);.....if(.outfd.>=.0.)
51800 20 7b 20 63 6c 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 .{.close(.outfd.);.outfd.=.-1;.}
51820 0a 20 20 20 20 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 .....if(.std::remove(.output_fil
51840 65 6e 61 6d 65 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 ename.c_str().).!=.0.&&.errno.!=
51860 20 45 4e 4f 45 4e 54 20 29 0a 20 20 20 20 20 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 22 57 41 52 .ENOENT.).......show_error(."WAR
51880 4e 49 4e 47 3a 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 28 61 NING:.deletion.of.output.file.(a
518a0 70 70 61 72 65 6e 74 6c 79 29 20 66 61 69 6c 65 64 2e 22 20 29 3b 0a 20 20 20 20 7d 0a 20 20 73 pparently).failed.".);.....}...s
518c0 74 64 3a 3a 65 78 69 74 28 20 72 65 74 76 61 6c 20 29 3b 0a 20 20 7d 0a 0a 0a 65 78 74 65 72 6e td::exit(.retval.);...}...extern
518e0 20 22 43 22 20 76 6f 69 64 20 73 69 67 6e 61 6c 5f 68 61 6e 64 6c 65 72 28 20 69 6e 74 20 29 0a ."C".void.signal_handler(.int.).
51900 20 20 7b 0a 20 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 22 43 6f 6e 74 72 6f 6c 2d 43 20 6f 72 20 ..{...show_error(."Control-C.or.
51920 73 69 6d 69 6c 61 72 20 63 61 75 67 68 74 2c 20 71 75 69 74 74 69 6e 67 2e 22 20 29 3b 0a 20 20 similar.caught,.quitting.".);...
51940 63 6c 65 61 6e 75 70 5f 61 6e 64 5f 66 61 69 6c 28 20 31 20 29 3b 0a 20 20 7d 0a 0a 0a 2f 2f 20 cleanup_and_fail(.1.);...}...//.
51960 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
51980 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
519a0 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_
519c0 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
519e0 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.).....{....
51a00 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->
51a20 73 74 5f 6d 6f 64 65 3b 0a 20 20 20 20 2f 2f 20 66 63 68 6f 77 6e 20 77 69 6c 6c 20 69 6e 20 6d st_mode;.....//.fchown.will.in.m
51a40 61 6e 79 20 63 61 73 65 73 20 72 65 74 75 72 6e 20 77 69 74 68 20 45 50 45 52 4d 2c 20 77 68 69 any.cases.return.with.EPERM,.whi
51a60 63 68 20 63 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 ch.can.be.safely.ignored......if
51a80 28 20 66 63 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 (.fchown(.outfd,.in_statsp->st_u
51aa0 69 64 2c 20 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 id,.in_statsp->st_gid.).==.0.)..
51ac0 20 20 20 20 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 .....{.if(.fchmod(.outfd,.mode.)
51ae0 20 21 3d 20 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 .!=.0.).warning.=.true;.}.....el
51b00 73 65 0a 20 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 se.......if(.errno.!=.EPERM.||..
51b20 20 20 20 20 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 .........fchmod(.outfd,.mode.&.~
51b40 28 20 53 5f 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 (.S_ISUID.|.S_ISGID.|.S_ISVTX.).
51b60 29 20 21 3d 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 ).!=.0.).........warning.=.true;
51b80 0a 20 20 20 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 .....}...if(.close(.outfd.).!=.0
51ba0 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 45 72 72 6f 72 20 .).....{.....show_error(."Error.
51bc0 63 6c 6f 73 69 6e 67 20 6f 75 74 70 75 74 20 66 69 6c 65 22 2c 20 65 72 72 6e 6f 20 29 3b 0a 20 closing.output.file",.errno.);..
51be0 20 20 20 63 6c 65 61 6e 75 70 5f 61 6e 64 5f 66 61 69 6c 28 20 31 20 29 3b 0a 20 20 20 20 7d 0a ...cleanup_and_fail(.1.);.....}.
51c00 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 75 74 5f 6f 6e ..outfd.=.-1;...delete_output_on
51c20 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 6e 5f 73 74 61 _interrupt.=.false;...if(.in_sta
51c40 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 62 75 66 20 74 tsp.).....{.....struct.utimbuf.t
51c60 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 3e 73 74 5f 61 ;.....t.actime.=.in_statsp->st_a
51c80 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 61 74 73 70 2d time;.....t.modtime.=.in_statsp-
51ca0 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 75 74 70 75 74 >st_mtime;.....if(.utime(.output
51cc0 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 30 20 29 20 77 _filename.c_str(),.&t.).!=.0.).w
51ce0 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 77 61 72 6e 69 arning.=.true;.....}...if(.warni
51d00 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 73 68 6f 77 5f ng.&&.verbosity.>=.1.).....show_
51d20 65 72 72 6f 72 28 20 22 43 61 6e 27 74 20 63 68 61 6e 67 65 20 6f 75 74 70 75 74 20 66 69 6c 65 error(."Can't.change.output.file
51d40 20 61 74 74 72 69 62 75 74 65 73 2e 22 20 29 3b 0a 20 20 7d 0a 0a 0a 62 6f 6f 6c 20 6e 65 78 74 .attributes.".);...}...bool.next
51d60 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 6e 73 69 67 6e 65 64 _filename()...{...const.unsigned
51d80 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 6d 65 2e 73 69 7a 65 .name_len.=.output_filename.size
51da0 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 6c 65 6e 20 3d 20 73 ();...const.unsigned.ext_len.=.s
51dc0 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 6f 6e 73 5b 30 5d 2e td::strlen(.known_extensions[0].
51de0 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 20 65 78 74 5f 6c 65 from.);...if(.name_len.>=.ext_le
51e00 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 0a 20 20 20 20 66 6f n.+.5.)....//."*00001.lz".....fo
51e20 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 5f 6c 65 6e 20 2d 20 r(.int.i.=.name_len.-.ext_len.-.
51e40 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 20 29 0a 20 20 20 20 1,.j.=.0;.j.<.5;.--i,.++j.).....
51e60 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 6e 61 6d 65 5b 69 5d ..{.......if(.output_filename[i]
51e80 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 61 6d 65 5b 69 5d 3b .<.'9'.).{.++output_filename[i];
51ea0 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 65 20 6f 75 74 70 75 .return.true;.}.......else.outpu
51ec0 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 20 20 7d 0a 20 20 72 t_filename[i].=.'0';.......}...r
51ee0 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 6d 70 72 65 73 73 28 eturn.false;...}...int.compress(
51f00 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 66 69 6c 65 5f .const.unsigned.long.long.cfile_
51f20 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 20 75 6e 73 69 67 6e size,...............const.unsign
51f40 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 0a 20 20 20 20 20 20 ed.long.long.member_size,.......
51f60 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 67 ........const.unsigned.long.long
51f80 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 6e 66 64 2c 0a 20 20 .volume_size,.const.int.infd,...
51fa0 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 74 69 6f 6e 73 20 26 ............const.Lzma_options.&
51fc0 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 72 65 74 74 79 5f 70 .encoder_options,.const.Pretty_p
51fe0 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 63 6f 6e 73 74 20 73 rint.&.pp,...............const.s
52000 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 20 63 6f truct.stat.*.const.in_statsp,.co
52020 6e 73 74 20 62 6f 6f 6c 20 7a 65 72 6f 20 29 0a 20 20 7b 0a 20 20 69 6e 74 20 72 65 74 76 61 6c nst.bool.zero.)...{...int.retval
52040 20 3d 20 30 3b 0a 20 20 4c 5a 5f 65 6e 63 6f 64 65 72 5f 62 61 73 65 20 2a 20 65 6e 63 6f 64 65 .=.0;...LZ_encoder_base.*.encode
52060 72 20 3d 20 30 3b 09 09 2f 2f 20 70 6f 6c 79 6d 6f 72 70 68 69 63 20 65 6e 63 6f 64 65 72 0a 20 r.=.0;..//.polymorphic.encoder..
52080 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 31 20 29 20 70 70 28 29 3b 0a 0a 20 20 69 .if(.verbosity.>=.1.).pp();....i
520a0 66 28 20 7a 65 72 6f 20 29 0a 20 20 20 20 65 6e 63 6f 64 65 72 20 3d 20 6e 65 77 20 46 4c 5a 5f f(.zero.).....encoder.=.new.FLZ_
520c0 65 6e 63 6f 64 65 72 28 20 69 6e 66 64 2c 20 6f 75 74 66 64 20 29 3b 0a 20 20 65 6c 73 65 0a 20 encoder(.infd,.outfd.);...else..
520e0 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 20 ...{.....Lzip_header.header;....
52100 20 69 66 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 20 65 6e 63 .if(.header.dictionary_size(.enc
52120 6f 64 65 72 5f 6f 70 74 69 6f 6e 73 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 20 29 20 26 oder_options.dictionary_size.).&
52140 26 0a 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 74 63 68 5f &.........encoder_options.match_
52160 6c 65 6e 5f 6c 69 6d 69 74 20 3e 3d 20 6d 69 6e 5f 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 len_limit.>=.min_match_len_limit
52180 20 26 26 0a 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 74 63 .&&.........encoder_options.matc
521a0 68 5f 6c 65 6e 5f 6c 69 6d 69 74 20 3c 3d 20 6d 61 78 5f 6d 61 74 63 68 5f 6c 65 6e 20 29 0a 20 h_len_limit.<=.max_match_len.)..
521c0 20 20 20 20 20 65 6e 63 6f 64 65 72 20 3d 20 6e 65 77 20 4c 5a 5f 65 6e 63 6f 64 65 72 28 20 68 .....encoder.=.new.LZ_encoder(.h
521e0 65 61 64 65 72 2e 64 69 63 74 69 6f 6e 61 72 79 5f 73 69 7a 65 28 29 2c 0a 20 20 20 20 20 20 20 eader.dictionary_size(),........
52200 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 65 6e 63 6f 64 65 72 .........................encoder
52220 5f 6f 70 74 69 6f 6e 73 2e 6d 61 74 63 68 5f 6c 65 6e 5f 6c 69 6d 69 74 2c 20 69 6e 66 64 2c 20 _options.match_len_limit,.infd,.
52240 6f 75 74 66 64 20 29 3b 0a 20 20 20 20 65 6c 73 65 20 69 6e 74 65 72 6e 61 6c 5f 65 72 72 6f 72 outfd.);.....else.internal_error
52260 28 20 22 69 6e 76 61 6c 69 64 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 65 6e 63 6f 64 65 72 2e 22 (."invalid.argument.to.encoder."
52280 20 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 .);.....}....unsigned.long.long.
522a0 69 6e 5f 73 69 7a 65 20 3d 20 30 2c 20 6f 75 74 5f 73 69 7a 65 20 3d 20 30 2c 20 70 61 72 74 69 in_size.=.0,.out_size.=.0,.parti
522c0 61 6c 5f 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 3d 20 30 3b 0a 20 20 77 68 69 6c 65 28 20 74 72 75 al_volume_size.=.0;...while(.tru
522e0 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 20 70 65 72 20 69 74 e.)..//.encode.one.member.per.it
52300 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 6e 73 69 67 6e 65 64 eration.....{.....const.unsigned
52320 20 6c 6f 6e 67 20 6c 6f 6e 67 20 73 69 7a 65 20 3d 20 28 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 .long.long.size.=.(.volume_size.
52340 3e 20 30 20 29 20 3f 0a 20 20 20 20 20 20 73 74 64 3a 3a 6d 69 6e 28 20 6d 65 6d 62 65 72 5f 73 >.0.).?.......std::min(.member_s
52360 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 76 6f 6c 75 6d ize,.volume_size.-.partial_volum
52380 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 20 73 68 6f 77 e_size.).:.member_size;.....show
523a0 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 73 69 7a 65 2c _cprogress(.cfile_size,.in_size,
523c0 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 20 20 69 66 28 .encoder,.&pp.);.//.init.....if(
523e0 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 69 7a 65 20 29 .!encoder->encode_member(.size.)
52400 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 6f 72 2e 22 20 .).......{.pp(."Encoder.error.".
52420 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 20 69 6e 5f 73 );.retval.=.1;.break;.}.....in_s
52440 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 6f 6e 28 29 3b ize.+=.encoder->data_position();
52460 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 65 6d 62 65 72 .....out_size.+=.encoder->member
52480 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 72 2d 3e 64 61 _position();.....if(.encoder->da
524a0 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 69 66 28 20 76 ta_finished().).break;.....if(.v
524c0 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 20 20 20 20 70 olume_size.>.0.).......{.......p
524e0 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 65 72 2d 3e 6d artial_volume_size.+=.encoder->m
52500 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 20 70 61 72 74 ember_position();.......if(.part
52520 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 69 7a 65 20 2d ial_volume_size.>=.volume_size.-
52540 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 20 20 20 20 7b .min_dictionary_size.).........{
52560 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 65 20 3d 20 30 .........partial_volume_size.=.0
52580 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 5f 6f 6e 5f 69 ;.........if(.delete_output_on_i
525a0 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 20 20 20 20 20 nterrupt.)...........{..........
525c0 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
525e0 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 74 5f 66 69 6c tatsp.);...........if(.!next_fil
52600 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 20 22 54 6f 6f ename().).............{.pp(."Too
52620 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 76 61 6c 20 3d .many.volume.files.".);.retval.=
52640 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 21 6f 70 65 6e .1;.break;.}...........if(.!open
52660 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 20 29 20 29 20 _outstream(.true,.in_statsp.).).
52680 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 20 20 20 20 20 {.retval.=.1;.break;.}..........
526a0 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 63 6f 64 65 72 .}.........}.......}.....encoder
526c0 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 76 61 6c 20 3d ->reset();.....}....if(.retval.=
526e0 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 20 7b 0a 20 20 =.0.&&.verbosity.>=.1.).....{...
52700 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 69 7a 65 20 3d ..if(.in_size.==.0.||.out_size.=
52720 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 6f 20 64 61 74 =.0.).......std::fputs(.".no.dat
52740 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 0a 20 20 20 20 a.compressed.\n",.stderr.);.....
52760 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 64 65 72 72 2c else.......std::fprintf(.stderr,
52780 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 35 2e 32 66 25 ."%6.3f:1,.%5.2f%%.ratio,.%5.2f%
527a0 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 20 20 20 20 20 %.saved,."......................
527c0 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 6e 22 2c 0a 20 ......."%llu.in,.%llu.out.\n",..
527e0 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 69 6e 5f 73 69 ...................(double)in_si
52800 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 20 20 20 20 20 ze./.out_size,..................
52820 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 6e 5f 73 69 7a ...(.100.0.*.out_size.)./.in_siz
52840 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 30 20 2d 20 28 e,.....................100.0.-.(
52860 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 73 69 7a 65 20 .(.100.0.*.out_size.)./.in_size.
52880 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 69 7a 65 2c 20 ),.....................in_size,.
528a0 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 65 6e 63 6f 64 out_size.);.....}...delete.encod
528c0 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 75 6e 73 69 67 er;...return.retval;...}...unsig
528e0 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 67 6e 65 64 20 ned.char.xdigit(.const.unsigned.
52900 76 61 6c 75 65 20 29 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 value.)...{...if(.value.<=.9.).r
52920 65 74 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 eturn.'0'.+.value;...if(.value.<
52940 3d 20 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 =.15.).return.'A'.+.value.-.10;.
52960 20 20 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 ..return.0;...}...bool.show_trai
52980 6c 69 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 ling_data(.const.uint8_t.*.const
529a0 20 64 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 .data,.const.int.size,..........
529c0 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 72 69 ................const.Pretty_pri
529e0 6e 74 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 nt.&.pp,.const.bool.all,........
52a00 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 69 67 6e 6f ..................const.int.igno
52a20 72 65 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 re_trailing.).//.-1.=.show...{..
52a40 20 69 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 .if(.verbosity.>=.4.||.ignore_tr
52a60 61 69 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 ailing.<=.0.).....{.....std::str
52a80 69 6e 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 ing.msg;.....if(.!all.).msg.=."f
52aa0 69 72 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 irst.bytes.of.";.....msg.+=."tra
52ac0 69 6c 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 iling.data.=.";.....for(.int.i.=
52ae0 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 0a 20 20 20 20 .0;.i.<.size;.++i.).......{.....
52b00 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 3e 3e 20 34 20 29 3b ..msg.+=.xdigit(.data[i].>>.4.);
52b20 0a 20 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 .......msg.+=.xdigit(.data[i].&.
52b40 30 78 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 0x0F.);.......msg.+=.'.';.......
52b60 7d 0a 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 }.....msg.+=.'\'';.....for(.int.
52b80 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 7b 20 69 i.=.0;.i.<.size;.++i.).......{.i
52ba0 66 28 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 f(.std::isprint(.data[i].).).msg
52bc0 20 2b 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 .+=.data[i];.else.msg.+=.'.';.}.
52be0 20 20 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 ....msg.+=.'\'';.....pp(.msg.c_s
52c00 74 72 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 tr().);.....if(.ignore_trailing.
52c20 3d 3d 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 ==.0.).show_file_error(.pp.name(
52c40 29 2c 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 ),.trailing_msg.);.....}...retur
52c60 6e 20 28 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 20 3e 20 30 20 29 3b 0a 20 20 7d 0a 0a n.(.ignore_trailing.>.0.);...}..
52c80 0a 69 6e 74 20 64 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 .int.decompress(.const.unsigned.
52ca0 6c 6f 6e 67 20 6c 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 long.long.cfile_size,.const.int.
52cc0 69 6e 66 64 2c 0a 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 infd,.................const.Pret
52ce0 74 79 5f 70 72 69 6e 74 20 26 20 70 70 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 69 67 6e 6f 72 65 ty_print.&.pp,.const.bool.ignore
52d00 5f 74 72 61 69 6c 69 6e 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 _trailing,.................const
52d20 20 62 6f 6f 6c 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c .bool.loose_trailing,.const.bool
52d40 20 74 65 73 74 69 6e 67 20 29 0a 20 20 7b 0a 20 20 69 6e 74 20 72 65 74 76 61 6c 20 3d 20 30 3b .testing.)...{...int.retval.=.0;
52d60 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 66 69 ...unsigned.long.long.partial_fi
52d80 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 72 64 65 63 le_pos.=.0;...Range_decoder.rdec
52da0 28 20 69 6e 66 64 20 29 3b 0a 20 20 66 6f 72 28 20 62 6f 6f 6c 20 66 69 72 73 74 5f 6d 65 6d 62 (.infd.);...for(.bool.first_memb
52dc0 65 72 20 3d 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 er.=.true;.;.first_member.=.fals
52de0 65 20 29 0a 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 e.).....{.....Lzip_header.header
52e00 3b 0a 20 20 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 ;.....rdec.reset_member_position
52e20 28 29 3b 0a 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 ();.....const.int.size.=.rdec.re
52e40 61 64 5f 64 61 74 61 28 20 68 65 61 64 65 72 2e 64 61 74 61 2c 20 4c 7a 69 70 5f 68 65 61 64 65 ad_data(.header.data,.Lzip_heade
52e60 72 3a 3a 73 69 7a 65 20 29 3b 0a 20 20 20 20 69 66 28 20 72 64 65 63 2e 66 69 6e 69 73 68 65 64 r::size.);.....if(.rdec.finished
52e80 28 29 20 29 09 09 09 2f 2f 20 45 6e 64 20 4f 66 20 46 69 6c 65 0a 20 20 20 20 20 20 7b 0a 20 20 ().)...//.End.Of.File.......{...
52ea0 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 20 20 7b ....if(.first_member.).........{
52ec0 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 22 46 69 .show_file_error(.pp.name(),."Fi
52ee0 6c 65 20 65 6e 64 73 20 75 6e 65 78 70 65 63 74 65 64 6c 79 20 61 74 20 6d 65 6d 62 65 72 20 68 le.ends.unexpectedly.at.member.h
52f00 65 61 64 65 72 2e 22 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 72 65 74 76 61 6c 20 3d 20 32 3b eader.".);...........retval.=.2;
52f20 20 7d 0a 20 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 68 65 61 64 65 72 2e 76 65 72 69 66 79 5f .}.......else.if(.header.verify_
52f40 70 72 65 66 69 78 28 20 73 69 7a 65 20 29 20 29 0a 20 20 20 20 20 20 20 20 7b 20 70 70 28 20 22 prefix(.size.).).........{.pp(."
52f60 54 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 Truncated.header.in.multimember.
52f80 66 69 6c 65 2e 22 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 73 68 6f 77 5f 74 72 61 69 6c 69 6e file.".);...........show_trailin
52fa0 67 5f 64 61 74 61 28 20 68 65 61 64 65 72 2e 64 61 74 61 2c 20 73 69 7a 65 2c 20 70 70 2c 20 74 g_data(.header.data,.size,.pp,.t
52fc0 72 75 65 2c 20 2d 31 20 29 3b 0a 20 20 20 20 20 20 20 20 20 20 72 65 74 76 61 6c 20 3d 20 32 3b rue,.-1.);...........retval.=.2;
52fe0 20 7d 0a 20 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 73 69 7a 65 20 3e 20 30 20 26 26 20 21 73 .}.......else.if(.size.>.0.&&.!s
53000 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 61 2c 20 how_trailing_data(.header.data,.
53020 73 69 7a 65 2c 20 70 70 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 size,.pp,.......................
53040 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 74 72 75 65 2c 20 ..........................true,.
53060 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 20 29 20 29 0a 20 20 20 20 20 20 20 20 72 65 74 76 ignore_trailing.).).........retv
53080 61 6c 20 3d 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 al.=.2;.......break;.......}....
530a0 20 69 66 28 20 21 68 65 61 64 65 72 2e 76 65 72 69 66 79 5f 6d 61 67 69 63 28 29 20 29 0a 20 20 .if(.!header.verify_magic().)...
530c0 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 62 65 72 20 29 0a 20 ....{.......if(.first_member.)..
530e0 20 20 20 20 20 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 .......{.show_file_error(.pp.nam
53100 65 28 29 2c 20 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 e(),.bad_magic_msg.);.retval.=.2
53120 3b 20 7d 0a 20 20 20 20 20 20 65 6c 73 65 20 69 66 28 20 21 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 ;.}.......else.if(.!loose_traili
53140 6e 67 20 26 26 20 68 65 61 64 65 72 2e 76 65 72 69 66 79 5f 63 6f 72 72 75 70 74 28 29 20 29 0a ng.&&.header.verify_corrupt().).
53160 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 3b 0a ........{.pp(.corrupt_mm_msg.);.
53180 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 68 65 ..........show_trailing_data(.he
531a0 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 20 29 ader.data,.size,.pp,.false,.-1.)
531c0 3b 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 ;...........retval.=.2;.}.......
531e0 65 6c 73 65 20 69 66 28 20 21 73 68 6f 77 5f 74 72 61 69 6c 69 6e 67 5f 64 61 74 61 28 20 68 65 else.if(.!show_trailing_data(.he
53200 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 69 67 6e 6f ader.data,.size,.pp,.false,.igno
53220 72 65 5f 74 72 61 69 6c 69 6e 67 20 29 20 29 0a 20 20 20 20 20 20 20 20 72 65 74 76 61 6c 20 3d re_trailing.).).........retval.=
53240 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(
53260 20 21 68 65 61 64 65 72 2e 76 65 72 69 66 79 5f 76 65 72 73 69 6f 6e 28 29 20 29 0a 20 20 20 20 .!header.verify_version().).....
53280 20 20 7b 20 70 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 ..{.pp(.bad_version(.header.vers
532a0 69 6f 6e 28 29 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 ion().).);.retval.=.2;.break;.}.
532c0 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 5f 73 69 ....const.unsigned.dictionary_si
532e0 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 3b 0a 20 ze.=.header.dictionary_size();..
53300 20 20 20 69 66 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 ...if(.!isvalid_ds(.dictionary_s
53320 69 7a 65 20 29 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 ize.).).......{.pp(.bad_dict_msg
53340 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 0a 20 20 20 20 69 66 .);.retval.=.2;.break;.}......if
53360 28 20 76 65 72 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 (.verbosity.>=.2.||.(.verbosity.
53380 3d 3d 20 31 20 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 ==.1.&&.first_member.).).pp();..
533a0 20 20 20 20 4c 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 ....LZ_decoder.decoder(.rdec,.di
533c0 63 74 69 6f 6e 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 ctionary_size,.outfd.);.....show
533e0 5f 64 70 72 6f 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 _dprogress(.cfile_size,.partial_
53400 66 69 6c 65 5f 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 file_pos,.&rdec,.&pp.);.//.init.
53420 20 20 20 20 63 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 ....const.int.result.=.decoder.d
53440 65 63 6f 64 65 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 ecode_member(.pp.);.....partial_
53460 66 69 6c 65 5f 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 file_pos.+=.rdec.member_position
53480 28 29 3b 0a 20 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 ();.....if(.result.!=.0.).......
534a0 7b 0a 20 20 20 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 {.......if(.verbosity.>=.0.&&.re
534c0 73 75 6c 74 20 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 sult.<=.2.).........{.........pp
534e0 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 65 72 72 ();.........std::fprintf(.stderr
53500 2c 20 22 25 73 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 ,."%s.at.pos.%llu\n",.(.result.=
53520 3d 20 32 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 46 =.2.).?......................."F
53540 69 6c 65 20 65 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 ile.ends.unexpectedly".:."Decode
53560 72 20 65 72 72 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 r.error",.......................
53580 70 61 72 74 69 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 partial_file_pos.);.........}...
535a0 20 20 20 20 72 65 74 76 61 6c 20 3d 20 32 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 7d 0a 20 ....retval.=.2;.break;.......}..
535c0 20 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 32 20 29 0a 20 20 20 20 20 20 7b 20 ...if(.verbosity.>=.2.).......{.
535e0 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 20 3a 20 22 std::fputs(.testing.?."ok\n".:."
53600 64 6f 6e 65 5c 6e 22 2c 20 73 74 64 65 72 72 20 29 3b 20 70 70 2e 72 65 73 65 74 28 29 3b 20 7d done\n",.stderr.);.pp.reset();.}
53620 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3d 3d 20 31 20 26 26 20 72 .....}...if(.verbosity.==.1.&&.r
53640 65 74 76 61 6c 20 3d 3d 20 30 20 29 0a 20 20 20 20 73 74 64 3a 3a 66 70 75 74 73 28 20 74 65 73 etval.==.0.).....std::fputs(.tes
53660 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 72 72 ting.?."ok\n".:."done\n",.stderr
53680 20 29 3b 0a 20 20 72 65 74 75 72 6e 20 72 65 74 76 61 6c 3b 0a 20 20 7d 0a 0a 7d 20 2f 2f 20 65 .);...return.retval;...}..}.//.e
536a0 6e 64 20 6e 61 6d 65 73 70 61 63 65 0a 0a 0a 76 6f 69 64 20 73 68 6f 77 5f 65 72 72 6f 72 28 20 nd.namespace...void.show_error(.
536c0 63 6f 6e 73 74 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 const.char.*.const.msg,.const.in
536e0 74 20 65 72 72 63 6f 64 65 2c 20 63 6f 6e 73 74 20 62 6f 6f 6c 20 68 65 6c 70 20 29 0a 20 20 7b t.errcode,.const.bool.help.)...{
53700 0a 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3c 20 30 20 29 20 72 65 74 75 72 6e 3b 0a 20 ...if(.verbosity.<.0.).return;..
53720 20 69 66 28 20 6d 73 67 20 26 26 20 6d 73 67 5b 30 5d 20 29 0a 20 20 20 20 73 74 64 3a 3a 66 70 .if(.msg.&&.msg[0].).....std::fp
53740 72 69 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 73 3a 20 25 73 25 73 25 73 5c 6e 22 2c 20 70 rintf(.stderr,."%s:.%s%s%s\n",.p
53760 72 6f 67 72 61 6d 5f 6e 61 6d 65 2c 20 6d 73 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rogram_name,.msg,...............
53780 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 22 2c ....(.errcode.>.0.).?.":.".:."",
537a0 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 20 30 ...................(.errcode.>.0
537c0 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 3a 20 .).?.std::strerror(.errcode.).:.
537e0 22 22 20 29 3b 0a 20 20 69 66 28 20 68 65 6c 70 20 29 0a 20 20 20 20 73 74 64 3a 3a 66 70 72 69 "".);...if(.help.).....std::fpri
53800 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 54 72 79 20 27 25 73 20 2d 2d 68 65 6c 70 27 20 66 6f ntf(.stderr,."Try.'%s.--help'.fo
53820 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 r.more.information.\n",.........
53840 20 20 20 20 20 20 20 20 20 20 69 6e 76 6f 63 61 74 69 6f 6e 5f 6e 61 6d 65 20 29 3b 0a 20 20 7d ..........invocation_name.);...}
53860 0a 0a 0a 76 6f 69 64 20 73 68 6f 77 5f 66 69 6c 65 5f 65 72 72 6f 72 28 20 63 6f 6e 73 74 20 63 ...void.show_file_error(.const.c
53880 68 61 72 20 2a 20 63 6f 6e 73 74 20 66 69 6c 65 6e 61 6d 65 2c 20 63 6f 6e 73 74 20 63 68 61 72 har.*.const.filename,.const.char
538a0 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 20 20 20 20 20 20 20 .*.const.msg,...................
538c0 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 65 72 72 63 6f 64 65 20 29 0a 20 20 7b 0a 20 20 69 66 ....const.int.errcode.)...{...if
538e0 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 66 70 72 69 (.verbosity.>=.0.).....std::fpri
53900 6e 74 66 28 20 73 74 64 65 72 72 2c 20 22 25 73 3a 20 25 73 3a 20 25 73 25 73 25 73 5c 6e 22 2c ntf(.stderr,."%s:.%s:.%s%s%s\n",
53920 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 2c 20 66 69 6c 65 6e 61 6d 65 2c 20 6d 73 67 2c 0a 20 20 .program_name,.filename,.msg,...
53940 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 20 30 20 29 20 ................(.errcode.>.0.).
53960 3f 20 22 3a 20 22 20 3a 20 22 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ?.":.".:."",...................(
53980 20 65 72 72 63 6f 64 65 20 3e 20 30 20 29 20 3f 20 73 74 64 3a 3a 73 74 72 65 72 72 6f 72 28 20 .errcode.>.0.).?.std::strerror(.
539a0 65 72 72 63 6f 64 65 20 29 20 3a 20 22 22 20 29 3b 0a 20 20 7d 0a 0a 0a 76 6f 69 64 20 69 6e 74 errcode.).:."".);...}...void.int
539c0 65 72 6e 61 6c 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 ernal_error(.const.char.*.const.
539e0 6d 73 67 20 29 0a 20 20 7b 0a 20 20 69 66 28 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 30 20 29 msg.)...{...if(.verbosity.>=.0.)
53a00 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 20 .....std::fprintf(.stderr,."%s:.
53a20 69 6e 74 65 72 6e 61 6c 20 65 72 72 6f 72 3a 20 25 73 5c 6e 22 2c 20 70 72 6f 67 72 61 6d 5f 6e internal.error:.%s\n",.program_n
53a40 61 6d 65 2c 20 6d 73 67 20 29 3b 0a 20 20 73 74 64 3a 3a 65 78 69 74 28 20 33 20 29 3b 0a 20 20 ame,.msg.);...std::exit(.3.);...
53a60 7d 0a 0a 0a 76 6f 69 64 20 73 68 6f 77 5f 63 70 72 6f 67 72 65 73 73 28 20 63 6f 6e 73 74 20 75 }...void.show_cprogress(.const.u
53a80 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 63 66 69 6c 65 5f 73 69 7a 65 2c 0a 20 20 nsigned.long.long.cfile_size,...
53aa0 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 75 6e 73 69 67 6e 65 ...................const.unsigne
53ac0 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 61 72 74 69 61 6c 5f 73 69 7a 65 2c 0a 20 20 20 20 20 20 d.long.long.partial_size,.......
53ae0 20 20 20 20 20 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 ...............const.Matchfinder
53b00 5f 62 61 73 65 20 2a 20 63 6f 6e 73 74 20 6d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 _base.*.const.m,................
53b20 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 6e 73 74 ......const.Pretty_print.*.const
53b40 20 70 20 29 0a 20 20 7b 0a 20 20 73 74 61 74 69 63 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 .p.)...{...static.unsigned.long.
53b60 6c 6f 6e 67 20 63 73 69 7a 65 20 3d 20 30 3b 09 09 2f 2f 20 66 69 6c 65 5f 73 69 7a 65 20 2f 20 long.csize.=.0;..//.file_size./.
53b80 31 30 30 0a 20 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 100...static.unsigned.long.long.
53ba0 70 73 69 7a 65 20 3d 20 30 3b 0a 20 20 73 74 61 74 69 63 20 63 6f 6e 73 74 20 4d 61 74 63 68 66 psize.=.0;...static.const.Matchf
53bc0 69 6e 64 65 72 5f 62 61 73 65 20 2a 20 6d 62 20 3d 20 30 3b 0a 20 20 73 74 61 74 69 63 20 63 6f inder_base.*.mb.=.0;...static.co
53be0 6e 73 74 20 50 72 65 74 74 79 5f 70 72 69 6e 74 20 2a 20 70 70 20 3d 20 30 3b 0a 20 20 73 74 61 nst.Pretty_print.*.pp.=.0;...sta
53c00 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 20 69 66 28 20 tic.bool.enabled.=.true;....if(.
53c20 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 29 09 09 09 09 !enabled.).return;...if(.p.)....
53c40 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 20 20 20 20 7b .//.initialize.static.vars.....{
53c60 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 69 73 61 74 74 .....if(.verbosity.<.2.||.!isatt
53c80 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 6c 65 64 20 3d y(.STDERR_FILENO.).).{.enabled.=
53ca0 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 20 3d 20 63 66 .false;.return;.}.....csize.=.cf
53cc0 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 69 7a 65 3b 20 ile_size;.psize.=.partial_size;.
53ce0 6d 62 20 3d 20 6d 3b 20 70 70 20 3d 20 70 3b 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 6d 62 20 26 mb.=.m;.pp.=.p;.....}...if(.mb.&
53d00 26 20 70 70 20 29 0a 20 20 20 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 &.pp.).....{.....const.unsigned.
53d20 6c 6f 6e 67 20 6c 6f 6e 67 20 70 6f 73 20 3d 20 70 73 69 7a 65 20 2b 20 6d 62 2d 3e 64 61 74 61 long.long.pos.=.psize.+.mb->data
53d40 5f 70 6f 73 69 74 69 6f 6e 28 29 3b 0a 20 20 20 20 69 66 28 20 63 73 69 7a 65 20 3e 20 30 20 29 _position();.....if(.csize.>.0.)
53d60 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 22 25 34 .......std::fprintf(.stderr,."%4
53d80 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 65 2c 20 llu%%..%.1f.MB\r",.pos./.csize,.
53da0 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 20 20 20 pos./.1000000.0.);.....else.....
53dc0 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 31 66 20 ..std::fprintf(.stderr,."..%.1f.
53de0 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 20 70 70 MB\r",.pos./.1000000.0.);.....pp
53e00 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 6f 72 65 ->reset();.(*pp)();...//.restore
53e20 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 76 6f 69 .cursor.position.....}...}...voi
53e40 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 64 d.show_dprogress(.const.unsigned
53e60 20 6c 6f 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 .long.long.cfile_size,..........
53e80 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 6e 67 20 ............const.unsigned.long.
53ea0 6c 6f 6e 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 long.partial_size,..............
53ec0 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 2a 20 63 6f ........const.Range_decoder.*.co
53ee0 6e 73 74 20 64 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.d,......................cons
53f00 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.)...{..
53f20 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
53f40 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
53f60 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;
53f80 0a 20 20 73 74 61 74 69 63 20 63 6f 6e 73 74 20 52 61 6e 67 65 5f 64 65 63 6f 64 65 72 20 2a 20 ...static.const.Range_decoder.*.
53fa0 72 64 65 63 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 5f rdec.=.0;...static.const.Pretty_
53fc0 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 69 6e 74 20 63 6f 75 print.*.pp.=.0;...static.int.cou
53fe0 6e 74 65 72 20 3d 20 30 3b 0a 20 20 73 74 61 74 69 63 20 62 6f 6f 6c 20 65 6e 61 62 6c 65 64 20 nter.=.0;...static.bool.enabled.
54000 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 20 72 65 74 75 72 6e =.true;....if(.!enabled.).return
54020 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 6c 69 7a 65 20 73 74 ;...if(.p.).....//.initialize.st
54040 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 65 72 62 6f 73 69 74 atic.vars.....{.....if(.verbosit
54060 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 46 49 4c 45 4e 4f 20 y.<.2.||.!isatty(.STDERR_FILENO.
54080 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 74 75 72 6e 3b 20 7d ).).{.enabled.=.false;.return;.}
540a0 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 70 73 69 7a 65 20 3d .....csize.=.cfile_size;.psize.=
540c0 20 70 61 72 74 69 61 6c 5f 73 69 7a 65 3b 20 72 64 65 63 20 3d 20 64 3b 20 70 70 20 3d 20 70 3b .partial_size;.rdec.=.d;.pp.=.p;
540e0 20 63 6f 75 6e 74 65 72 20 3d 20 30 3b 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 72 64 65 63 20 26 .counter.=.0;.....}...if(.rdec.&
54100 26 20 70 70 20 26 26 20 2d 2d 63 6f 75 6e 74 65 72 20 3c 3d 20 30 20 29 0a 20 20 20 20 7b 0a 20 &.pp.&&.--counter.<=.0.).....{..
54120 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 70 6f 73 20 ...const.unsigned.long.long.pos.
54140 3d 20 70 73 69 7a 65 20 2b 20 72 64 65 63 2d 3e 6d 65 6d 62 65 72 5f 70 6f 73 69 74 69 6f 6e 28 =.psize.+.rdec->member_position(
54160 29 3b 0a 20 20 20 20 63 6f 75 6e 74 65 72 20 3d 20 37 3b 09 09 2f 2f 20 75 70 64 61 74 65 20 64 );.....counter.=.7;..//.update.d
54180 69 73 70 6c 61 79 20 65 76 65 72 79 20 31 31 34 36 38 38 20 62 79 74 65 73 0a 20 20 20 20 69 66 isplay.every.114688.bytes.....if
541a0 28 20 63 73 69 7a 65 20 3e 20 30 20 29 0a 20 20 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 (.csize.>.0.).......std::fprintf
541c0 28 20 73 74 64 65 72 72 2c 20 22 25 34 6c 6c 75 25 25 20 20 25 2e 31 66 20 4d 42 5c 72 22 2c 20 (.stderr,."%4llu%%..%.1f.MB\r",.
541e0 70 6f 73 20 2f 20 63 73 69 7a 65 2c 20 70 6f 73 20 2f 20 31 30 30 30 30 30 30 2e 30 20 29 3b 0a pos./.csize,.pos./.1000000.0.);.
54200 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 64 ....else.......std::fprintf(.std
54220 65 72 72 2c 20 22 20 20 25 2e 31 66 20 4d 42 5c 72 22 2c 20 70 6f 73 20 2f 20 31 30 30 30 30 30 err,."..%.1f.MB\r",.pos./.100000
54240 30 2e 30 20 29 3b 0a 20 20 20 20 70 70 2d 3e 72 65 73 65 74 28 29 3b 20 28 2a 70 70 29 28 29 3b 0.0.);.....pp->reset();.(*pp)();
54260 09 09 09 2f 2f 20 72 65 73 74 6f 72 65 20 63 75 72 73 6f 72 20 70 6f 73 69 74 69 6f 6e 0a 20 20 ...//.restore.cursor.position...
54280 20 20 7d 0a 20 20 7d 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 ..}...}...int.main(.const.int.ar
542a0 67 63 2c 20 63 6f 6e 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 gc,.const.char.*.const.argv[].).
542c0 20 20 7b 0a 20 20 2f 2a 20 4d 61 70 70 69 6e 67 20 66 72 6f 6d 20 67 7a 69 70 2f 62 7a 69 70 32 ..{.../*.Mapping.from.gzip/bzip2
542e0 20 73 74 79 6c 65 20 31 2e 2e 39 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6d 6f 64 65 73 0a 20 20 .style.1..9.compression.modes...
54300 20 20 20 74 6f 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 4c 5a 4d 41 20 63 6f 6d ...to.the.corresponding.LZMA.com
54320 70 72 65 73 73 69 6f 6e 20 6d 6f 64 65 73 2e 20 2a 2f 0a 20 20 63 6f 6e 73 74 20 4c 7a 6d 61 5f pression.modes..*/...const.Lzma_
54340 6f 70 74 69 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 options.option_mapping[].=.....{
54360 0a 20 20 20 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 .....{.1.<<.16,..16.},..//.-0...
54380 20 20 7b 20 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 ..{.1.<<.20,...5.},..//.-1.....{
543a0 20 33 20 3c 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 .3.<<.19,...6.},..//.-2.....{.1.
543c0 3c 3c 20 32 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 <<.21,...8.},..//.-3.....{.3.<<.
543e0 32 30 2c 20 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,..12.},..//.-4.....{.1.<<.22,
54400 20 20 32 30 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 ..20.},..//.-5.....{.1.<<.23,..3
54420 36 20 7d 2c 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 6.},..//.-6.....{.1.<<.24,..68.}
54440 2c 09 09 2f 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 ,..//.-7.....{.3.<<.23,.132.},..
54460 2f 2f 20 2d 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 //.-8.....{.1.<<.25,.273.}.};../
54480 2f 20 2d 39 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 /.-9...Lzma_options.encoder_opti
544a0 6f 6e 73 20 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 ons.=.option_mapping[6];.//.defa
544c0 75 6c 74 20 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 ult.=."-6"...const.unsigned.long
544e0 20 6c 6f 6e 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 .long.max_member_size.=.0x000800
54500 30 30 30 30 30 30 30 30 30 30 55 4c 4c 3b 20 2f 2a 20 32 20 50 69 42 20 2a 2f 0a 20 20 63 6f 6e 0000000000ULL;./*.2.PiB.*/...con
54520 73 74 20 75 6e 73 69 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 st.unsigned.long.long.max_volume
54540 5f 73 69 7a 65 20 3d 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 _size.=.0x4000000000000000ULL;./
54560 2a 20 34 20 45 69 42 20 2a 2f 0a 20 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 *.4.EiB.*/...unsigned.long.long.
54580 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3d 20 6d 61 78 5f 6d 65 6d 62 65 72 5f 73 69 7a 65 3b 0a 20 member_size.=.max_member_size;..
545a0 20 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 .unsigned.long.long.volume_size.
545c0 3d 20 30 3b 0a 20 20 73 74 64 3a 3a 73 74 72 69 6e 67 20 64 65 66 61 75 6c 74 5f 6f 75 74 70 75 =.0;...std::string.default_outpu
545e0 74 5f 66 69 6c 65 6e 61 6d 65 3b 0a 20 20 73 74 64 3a 3a 76 65 63 74 6f 72 3c 20 73 74 64 3a 3a t_filename;...std::vector<.std::
54600 73 74 72 69 6e 67 20 3e 20 66 69 6c 65 6e 61 6d 65 73 3b 0a 20 20 4d 6f 64 65 20 70 72 6f 67 72 string.>.filenames;...Mode.progr
54620 61 6d 5f 6d 6f 64 65 20 3d 20 6d 5f 63 6f 6d 70 72 65 73 73 3b 0a 20 20 62 6f 6f 6c 20 66 6f 72 am_mode.=.m_compress;...bool.for
54640 63 65 20 3d 20 66 61 6c 73 65 3b 0a 20 20 62 6f 6f 6c 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 ce.=.false;...bool.ignore_traili
54660 6e 67 20 3d 20 74 72 75 65 3b 0a 20 20 62 6f 6f 6c 20 6b 65 65 70 5f 69 6e 70 75 74 5f 66 69 6c ng.=.true;...bool.keep_input_fil
54680 65 73 20 3d 20 66 61 6c 73 65 3b 0a 20 20 62 6f 6f 6c 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e es.=.false;...bool.loose_trailin
546a0 67 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 g.=.false;...bool.recompress.=.f
546c0 61 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 alse;...bool.to_stdout.=.false;.
546e0 20 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 ..bool.zero.=.false;...if(.argc.
54700 3e 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 >.0.).invocation_name.=.argv[0];
54720 0a 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 ....enum.{.opt_lt.=.256.};...con
54740 73 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 st.Arg_parser::Option.options[].
54760 3d 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 =.....{.....{.'0',."fast",......
54780 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..},.....{
547a0 20 27 31 27 2c 20 20 30 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 .'1',..0,..................Arg_p
547c0 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 32 27 2c 20 20 30 2c 20 20 20 20 arser::no..},.....{.'2',..0,....
547e0 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 2c ..............Arg_parser::no..},
54800 0a 20 20 20 20 7b 20 27 33 27 2c 20 20 30 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....{.'3',..0,.................
54820 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 34 27 2c 20 20 .Arg_parser::no..},.....{.'4',..
54840 30 2c 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 0,..................Arg_parser::
54860 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 35 27 2c 20 20 30 2c 20 20 20 20 20 20 20 20 20 20 20 no..},.....{.'5',..0,...........
54880 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..},.....{.
548a0 27 36 27 2c 20 20 30 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 67 5f 70 61 '6',..0,..................Arg_pa
548c0 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 27 37 27 2c 20 20 30 2c 20 20 20 20 20 rser::no..},.....{.'7',..0,.....
548e0 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..},.
54900 20 20 20 20 7b 20 27 38 27 2c 20 20 30 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....{.'8',..0,..................
54920 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 39 27 2c 20 22 62 Arg_parser::no..},.....{.'9',."b
54940 65 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 est",..............Arg_parser::n
54960 6f 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 o..},.....{.'a',."trailing-error
54980 22 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 ",....Arg_parser::no..},.....{.'
549a0 62 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 b',."member-size",.......Arg_par
549c0 73 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 ser::yes.},.....{.'c',."stdout",
549e0 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..},..
54a00 20 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 ...{.'d',."decompress",........A
54a20 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 66 27 2c 20 22 66 6f rg_parser::no..},.....{.'f',."fo
54a40 72 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 rce",.............Arg_parser::no
54a60 20 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 ..},.....{.'F',."recompress",...
54a80 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 68 .....Arg_parser::no..},.....{.'h
54aa0 27 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 ',."help",..............Arg_pars
54ac0 65 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 er::no..},.....{.'k',."keep",...
54ae0 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..},...
54b00 20 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 ..{.'l',."list",..............Ar
54b20 67 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 g_parser::no..},.....{.'m',."mat
54b40 63 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 ch-length",......Arg_parser::yes
54b60 20 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 .},.....{.'n',."threads",.......
54b80 20 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 ....Arg_parser::yes.},.....{.'o'
54ba0 2c 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 ,."output",............Arg_parse
54bc0 72 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 r::yes.},.....{.'q',."quiet",...
54be0 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..},....
54c00 20 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 .{.'s',."dictionary-size",...Arg
54c20 5f 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 _parser::yes.},.....{.'S',."volu
54c40 6d 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 me-size",.......Arg_parser::yes.
54c60 7d 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 },.....{.'t',."test",...........
54c80 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 76 27 2c ...Arg_parser::no..},.....{.'v',
54ca0 20 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 ."verbose",...........Arg_parser
54cc0 3a 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 ::no..},.....{.'V',."version",..
54ce0 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..},.....
54d00 7b 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 {.opt_lt,."loose-trailing",.Arg_
54d20 70 61 72 73 65 72 3a 3a 6e 6f 20 20 7d 2c 0a 20 20 20 20 7b 20 20 30 20 2c 20 30 2c 20 20 20 20 parser::no..},.....{..0.,.0,....
54d40 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 6f 20 20 7d ...............Arg_parser::no..}
54d60 20 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 .};....const.Arg_parser.parser(.
54d80 61 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 argc,.argv,.options.);...if(.par
54da0 73 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 ser.error().size().)....//.bad.o
54dc0 70 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 ption.....{.show_error(.parser.e
54de0 72 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 rror().c_str(),.0,.true.);.retur
54e00 6e 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 n.1;.}....int.argind.=.0;...for(
54e20 20 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 .;.argind.<.parser.arguments();.
54e40 2b 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 ++argind.).....{.....const.int.c
54e60 6f 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 ode.=.parser.code(.argind.);....
54e80 20 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 .if(.!code.).break;.....//.no.mo
54ea0 72 65 20 6f 70 74 69 6f 6e 73 0a 20 20 20 20 63 6f 6e 73 74 20 73 74 64 3a 3a 73 74 72 69 6e 67 re.options.....const.std::string
54ec0 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 6e .&.sarg.=.parser.argument(.argin
54ee0 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 20 d.);.....const.char.*.const.arg.
54f00 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 65 =.sarg.c_str();.....switch(.code
54f20 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 20 .).......{.......case.'0':.case.
54f40 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 34 '1':.case.'2':.case.'3':.case.'4
54f60 27 3a 0a 20 20 20 20 20 20 63 61 73 65 20 27 35 27 3a 20 63 61 73 65 20 27 36 27 3a 20 63 61 73 ':.......case.'5':.case.'6':.cas
54f80 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 0a 20 20 20 20 20 e.'7':.case.'8':.case.'9':......
54fa0 20 20 20 20 20 20 20 20 20 20 20 7a 65 72 6f 20 3d 20 28 20 63 6f 64 65 20 3d 3d 20 27 30 27 20 ...........zero.=.(.code.==.'0'.
54fc0 29 3b 0a 20 20 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 );.................encoder_optio
54fe0 6e 73 20 3d 20 6f 70 74 69 6f 6e 5f 6d 61 70 70 69 6e 67 5b 63 6f 64 65 2d 27 30 27 5d 3b 20 62 ns.=.option_mapping[code-'0'];.b
55000 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 61 27 3a 20 69 67 6e 6f 72 65 5f 74 72 61 reak;.......case.'a':.ignore_tra
55020 69 6c 69 6e 67 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 iling.=.false;.break;.......case
55040 20 27 62 27 3a 20 6d 65 6d 62 65 72 5f 73 69 7a 65 20 3d 20 67 65 74 6e 75 6d 28 20 61 72 67 2c .'b':.member_size.=.getnum(.arg,
55060 20 31 30 30 30 30 30 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 .100000,.max_member_size.);.brea
55080 6b 3b 0a 20 20 20 20 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 k;.......case.'c':.to_stdout.=.t
550a0 72 75 65 3b 20 62 72 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 rue;.break;.......case.'d':.set_
550c0 6d 6f 64 65 28 20 70 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 mode(.program_mode,.m_decompress
550e0 20 29 3b 20 62 72 65 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 .);.break;.......case.'f':.force
55100 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 46 27 3a 20 .=.true;.break;.......case.'F':.
55120 72 65 63 6f 6d 70 72 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 recompress.=.true;.break;.......
55140 63 61 73 65 20 27 68 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 case.'h':.show_help();.return.0;
55160 0a 20 20 20 20 20 20 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 .......case.'k':.keep_input_file
55180 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 6c 27 3a s.=.true;.break;.......case.'l':
551a0 20 73 65 74 5f 6d 6f 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 .set_mode(.program_mode,.m_list.
551c0 29 3b 20 62 72 65 61 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 );.break;.......case.'m':.encode
551e0 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 3d 0a 20 20 20 20 r_options.match_len_limit.=.....
55200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 6e 75 6d 28 20 61 72 67 2c 20 6d 69 6e 5f 6d ..............getnum(.arg,.min_m
55220 61 74 63 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 atch_len_limit,.max_match_len.);
55240 0a 20 20 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 .................zero.=.false;.b
55260 72 65 61 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 0a 20 20 20 reak;.......case.'n':.break;....
55280 20 20 20 63 61 73 65 20 27 6f 27 3a 20 69 66 28 20 73 61 72 67 20 3d 3d 20 22 2d 22 20 29 20 74 ...case.'o':.if(.sarg.==."-".).t
552a0 6f 5f 73 74 64 6f 75 74 20 3d 20 74 72 75 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 o_stdout.=.true;................
552c0 20 65 6c 73 65 20 7b 20 64 65 66 61 75 6c 74 5f 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 .else.{.default_output_filename.
552e0 3d 20 73 61 72 67 3b 20 7d 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 71 27 3a =.sarg;.}.break;.......case.'q':
55300 20 76 65 72 62 6f 73 69 74 79 20 3d 20 2d 31 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 .verbosity.=.-1;.break;.......ca
55320 73 65 20 27 73 27 3a 20 65 6e 63 6f 64 65 72 5f 6f 70 74 69 6f 6e 73 2e 64 69 63 74 69 6f 6e 61 se.'s':.encoder_options.dictiona
55340 72 79 5f 73 69 7a 65 20 3d 20 67 65 74 5f 64 69 63 74 5f 73 69 7a 65 28 20 61 72 67 20 29 3b 0a ry_size.=.get_dict_size(.arg.);.
55360 20 20 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 ................zero.=.false;.br
55380 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 53 27 3a 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 eak;.......case.'S':.volume_size
553a0 20 3d 20 67 65 74 6e 75 6d 28 20 61 72 67 2c 20 31 30 30 30 30 30 2c 20 6d 61 78 5f 76 6f 6c 75 .=.getnum(.arg,.100000,.max_volu
553c0 6d 65 5f 73 69 7a 65 20 29 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 74 27 me_size.);.break;.......case.'t'
553e0 3a 20 73 65 74 5f 6d 6f 64 65 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 2c 20 6d 5f 74 65 73 74 :.set_mode(.program_mode,.m_test
55400 20 29 3b 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 76 27 3a 20 69 66 28 20 76 .);.break;.......case.'v':.if(.v
55420 65 72 62 6f 73 69 74 79 20 3c 20 34 20 29 20 2b 2b 76 65 72 62 6f 73 69 74 79 3b 20 62 72 65 61 erbosity.<.4.).++verbosity;.brea
55440 6b 3b 0a 20 20 20 20 20 20 63 61 73 65 20 27 56 27 3a 20 73 68 6f 77 5f 76 65 72 73 69 6f 6e 28 k;.......case.'V':.show_version(
55460 29 3b 20 72 65 74 75 72 6e 20 30 3b 0a 20 20 20 20 20 20 63 61 73 65 20 6f 70 74 5f 6c 74 3a 20 );.return.0;.......case.opt_lt:.
55480 6c 6f 6f 73 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 loose_trailing.=.true;.break;...
554a0 20 20 20 20 64 65 66 61 75 6c 74 20 3a 20 69 6e 74 65 72 6e 61 6c 5f 65 72 72 6f 72 28 20 22 75 ....default.:.internal_error(."u
554c0 6e 63 61 75 67 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 ncaught.option.".);.......}.....
554e0 7d 20 2f 2f 20 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 }.//.end.process.options..#if.de
55500 66 69 6e 65 64 28 5f 5f 4d 53 56 43 52 54 5f 5f 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 5f 4f fined(__MSVCRT__).||.defined(__O
55520 53 32 5f 5f 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 5f 44 4a 47 50 50 5f 5f 29 0a 20 20 73 65 S2__).||.defined(__DJGPP__)...se
55540 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 41 52 59 20 29 3b tmode(.STDIN_FILENO,.O_BINARY.);
55560 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 20 4f 5f 42 49 4e ...setmode(.STDOUT_FILENO,.O_BIN
55580 41 52 59 20 29 3b 0a 23 65 6e 64 69 66 0a 0a 20 20 62 6f 6f 6c 20 66 69 6c 65 6e 61 6d 65 73 5f ARY.);.#endif....bool.filenames_
555a0 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.<
555c0 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.).
555e0 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
55600 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.).);.....
55620 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
55640 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
55660 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.
55680 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
556a0 6f 64 65 20 3d 3d 20 6d 5f 6c 69 73 74 20 29 0a 20 20 20 20 72 65 74 75 72 6e 20 6c 69 73 74 5f ode.==.m_list.).....return.list_
556c0 66 69 6c 65 73 28 20 66 69 6c 65 6e 61 6d 65 73 2c 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e files(.filenames,.ignore_trailin
556e0 67 2c 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 20 29 3b 0a 0a 20 20 69 66 28 20 70 72 6f 67 g,.loose_trailing.);....if(.prog
55700 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 20 7b 0a 20 ram_mode.==.m_compress.).....{..
55720 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 6f 5f 73 74 ...if(.volume_size.>.0.&&.!to_st
55740 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 61 6d 65 2e dout.&&.default_output_filename.
55760 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 73 69 7a 65 size().&&.........filenames.size
55780 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 20 22 4f 6e ().>.1.).......{.show_error(."On
557a0 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 6e 20 75 73 ly.can.compress.one.file.when.us
557c0 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 20 20 20 20 ing.'-o'.and.'-S'.",............
557e0 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 3b 20 7d 0a .........0,.true.);.return.1;.}.
55800 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 6f 62 5f 70 ....dis_slots.init();.....prob_p
55820 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 6f 6c 75 6d rices.init();.....}...else.volum
55840 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 64 65 20 3d e_size.=.0;...if(.program_mode.=
55860 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 3b 09 2f 2f =.m_test.).to_stdout.=.false;.//
55880 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 61 6d 5f 6d .apply.overrides...if(.program_m
558a0 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 20 64 65 66 ode.==.m_test.||.to_stdout.).def
558c0 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 3b 0a 0a 20 ault_output_filename.clear();...
558e0 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 64 65 20 21 .if(.to_stdout.&&.program_mode.!
55900 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 20 6f 6e 63 =.m_test.).//.check.tty.only.onc
55920 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 4f 3b 20 69 e.....{.outfd.=.STDOUT_FILENO;.i
55940 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 6f 64 65 20 f(.!check_tty_out(.program_mode.
55960 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 20 3d 20 2d ).).return.1;.}...else.outfd.=.-
55980 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 74 6f 5f 73 1;....const.bool.to_file.=.!to_s
559a0 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 65 73 74 20 tdout.&&.program_mode.!=.m_test.
559c0 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 66 61 75 6c &&........................defaul
559e0 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 69 66 28 20 t_output_filename.size();...if(.
55a00 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 3d 20 6d 5f !to_stdout.&&.program_mode.!=.m_
55a20 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 20 74 6f 5f test.&&.(.filenames_given.||.to_
55a40 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 67 6e 61 6c file.).).....set_signals(.signal
55a60 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 70 70 28 20 _handler.);....Pretty_print.pp(.
55a80 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 65 73 74 73 filenames.);....int.failed_tests
55aa0 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 6e 73 74 20 .=.0;...int.retval.=.0;...const.
55ac0 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 20 26 26 20 bool.one_to_one.=.!to_stdout.&&.
55ae0 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 6f 5f 66 69 program_mode.!=.m_test.&&.!to_fi
55b00 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 65 3b 0a 20 le;...bool.stdin_used.=.false;..
55b20 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 6e 61 .for(.unsigned.i.=.0;.i.<.filena
55b40 6d 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 73 74 64 3a mes.size();.++i.).....{.....std:
55b60 3a 73 74 72 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 :string.input_filename;.....int.
55b80 69 6e 66 64 3b 0a 20 20 20 20 73 74 72 75 63 74 20 73 74 61 74 20 69 6e 5f 73 74 61 74 73 3b 0a infd;.....struct.stat.in_stats;.
55ba0 0a 20 20 20 20 69 66 28 20 66 69 6c 65 6e 61 6d 65 73 5b 69 5d 20 3d 3d 20 22 2d 22 20 29 0a 20 .....if(.filenames[i].==."-".)..
55bc0 20 20 20 20 20 7b 0a 20 20 20 20 20 20 69 66 28 20 73 74 64 69 6e 5f 75 73 65 64 20 29 20 63 6f .....{.......if(.stdin_used.).co
55be0 6e 74 69 6e 75 65 3b 20 65 6c 73 65 20 73 74 64 69 6e 5f 75 73 65 64 20 3d 20 74 72 75 65 3b 0a ntinue;.else.stdin_used.=.true;.
55c00 20 20 20 20 20 20 69 6e 66 64 20 3d 20 53 54 44 49 4e 5f 46 49 4c 45 4e 4f 3b 0a 20 20 20 20 20 ......infd.=.STDIN_FILENO;......
55c20 20 69 66 28 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 20 29 20 7b 20 6f 75 74 66 64 20 3d 20 53 54 44 4f .if(.one_to_one.).{.outfd.=.STDO
55c40 55 54 5f 46 49 4c 45 4e 4f 3b 20 6f 75 74 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 6c 65 61 72 UT_FILENO;.output_filename.clear
55c60 28 29 3b 20 7d 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 ();.}.......}.....else.......{..
55c80 20 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 20 65 69 6e 64 65 78 20 3d 20 65 78 74 65 6e 73 69 6f .....const.int.eindex.=.extensio
55ca0 6e 5f 69 6e 64 65 78 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 3d 20 66 69 6c 65 6e 61 n_index(.input_filename.=.filena
55cc0 6d 65 73 5b 69 5d 20 29 3b 0a 20 20 20 20 20 20 69 6e 66 64 20 3d 20 6f 70 65 6e 5f 69 6e 73 74 mes[i].);.......infd.=.open_inst
55ce0 72 65 61 6d 32 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 74 72 28 29 2c 20 26 ream2(.input_filename.c_str(),.&
55d00 69 6e 5f 73 74 61 74 73 2c 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 in_stats,.program_mode,.........
55d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 69 6e 64 65 78 2c 20 6f 6e 65 .....................eindex,.one
55d40 5f 74 6f 5f 6f 6e 65 2c 20 72 65 63 6f 6d 70 72 65 73 73 20 29 3b 0a 20 20 20 20 20 20 69 66 28 _to_one,.recompress.);.......if(
55d60 20 69 6e 66 64 20 3c 20 30 20 29 20 7b 20 73 65 74 5f 72 65 74 76 61 6c 28 20 72 65 74 76 61 6c .infd.<.0.).{.set_retval(.retval
55d80 2c 20 31 20 29 3b 20 63 6f 6e 74 69 6e 75 65 3b 20 7d 0a 20 20 20 20 20 20 69 66 28 20 6f 6e 65 ,.1.);.continue;.}.......if(.one
55da0 5f 74 6f 5f 6f 6e 65 20 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 28 20 _to_one.).........{.........if(.
55dc0 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.)....
55de0 20 20 20 20 20 20 20 73 65 74 5f 63 5f 6f 75 74 6e 61 6d 65 28 20 69 6e 70 75 74 5f 66 69 6c 65 .......set_c_outname(.input_file
55e00 6e 61 6d 65 2c 20 74 72 75 65 2c 20 74 72 75 65 2c 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 3e 20 name,.true,.true,.volume_size.>.
55e20 30 20 29 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 20 73 65 74 5f 64 5f 6f 75 74 6e 61 6d 65 28 0.);.........else.set_d_outname(
55e40 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2c 20 65 69 6e 64 65 78 20 29 3b 0a 20 20 20 20 20 .input_filename,.eindex.);......
55e60 20 20 20 69 66 28 20 21 6f 70 65 6e 5f 6f 75 74 73 74 72 65 61 6d 28 20 66 6f 72 63 65 2c 20 74 ...if(.!open_outstream(.force,.t
55e80 72 75 65 20 29 20 29 0a 20 20 20 20 20 20 20 20 20 20 7b 20 73 65 74 5f 72 65 74 76 61 6c 28 20 rue.).)...........{.set_retval(.
55ea0 72 65 74 76 61 6c 2c 20 31 20 29 3b 20 63 6c 6f 73 65 28 20 69 6e 66 64 20 29 3b 20 63 6f 6e 74 retval,.1.);.close(.infd.);.cont
55ec0 69 6e 75 65 3b 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 70 inue;.}.........}.......}......p
55ee0 70 2e 73 65 74 5f 6e 61 6d 65 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 20 29 3b 0a 20 20 p.set_name(.input_filename.);...
55f00 20 20 69 66 28 20 21 63 68 65 63 6b 5f 74 74 79 5f 69 6e 28 20 70 70 2e 6e 61 6d 65 28 29 2c 20 ..if(.!check_tty_in(.pp.name(),.
55f20 69 6e 66 64 2c 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 29 20 29 0a 20 20 20 20 20 20 7b 0a 20 infd,.program_mode.).).......{..
55f40 20 20 20 20 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 0a 20 20 .....set_retval(.retval,.1.);...
55f60 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 74 65 73 74 20 29 ....if(.program_mode.==.m_test.)
55f80 20 7b 20 63 6c 6f 73 65 28 20 69 6e 66 64 20 29 3b 20 63 6f 6e 74 69 6e 75 65 3b 20 7d 0a 20 20 .{.close(.infd.);.continue;.}...
55fa0 20 20 20 20 63 6c 65 61 6e 75 70 5f 61 6e 64 5f 66 61 69 6c 28 20 72 65 74 76 61 6c 20 29 3b 0a ....cleanup_and_fail(.retval.);.
55fc0 20 20 20 20 20 20 7d 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 ......}.....if(.one_to_one.&&.!c
55fe0 68 65 63 6b 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 heck_tty_out(.program_mode.).)..
56000 20 20 20 20 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 .....{.set_retval(.retval,.1.);.
56020 72 65 74 75 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 return.retval;.}.//.don't.delete
56040 20 61 20 74 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 .a.tty......if(.to_file.&&.outfd
56060 20 3c 20 30 20 29 09 09 2f 2f 20 6f 70 65 6e 20 6f 75 74 66 64 20 61 66 74 65 72 20 76 65 72 69 .<.0.)..//.open.outfd.after.veri
56080 66 79 69 6e 67 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 fying.infd.......{.......if(.pro
560a0 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 73 65 74 5f 63 5f gram_mode.==.m_compress.).set_c_
560c0 6f 75 74 6e 61 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 outname(.default_output_filename
560e0 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 ,...............................
56100 20 20 20 20 20 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 .........filenames_given,.false,
56120 20 76 6f 6c 75 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 .volume_size.>.0.);.......else.o
56140 75 74 70 75 74 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 utput_filename.=.default_output_
56160 66 69 6c 65 6e 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 filename;.......if(.!open_outstr
56180 65 61 6d 28 20 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 eam(.force,.false.).||.!check_tt
561a0 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 20 20 20 y_out(.program_mode.).).........
561c0 72 65 74 75 72 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 return.1;.//.check.tty.only.once
561e0 20 61 6e 64 20 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 .and.don't.try.to.delete.a.tty..
56200 20 20 20 20 20 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 .....}......const.struct.stat.*.
56220 63 6f 6e 73 74 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 const.in_statsp.=.......(.input_
56240 66 69 6c 65 6e 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 filename.size().&&.one_to_one.).
56260 3f 20 26 69 6e 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 ?.&in_stats.:.0;.....const.unsig
56280 6e 65 64 20 6c 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 ned.long.long.cfile_size.=......
562a0 20 28 20 69 6e 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 .(.input_filename.size().&&.S_IS
562c0 52 45 47 28 20 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 REG(.in_stats.st_mode.).).?.....
562e0 20 20 20 20 28 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 ....(.in_stats.st_size.+.99.)./.
56300 31 30 30 20 3a 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 100.:.0;.....int.tmp;.....try.{.
56320 20 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 ......if(.program_mode.==.m_comp
56340 72 65 73 73 20 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 ress.).........tmp.=.compress(.c
56360 66 69 6c 65 5f 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 file_size,.member_size,.volume_s
56380 69 7a 65 2c 20 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 ize,.infd,......................
563a0 20 20 20 65 6e 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 ...encoder_options,.pp,.in_stats
563c0 70 2c 20 7a 65 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 p,.zero.);.......else.........tm
563e0 70 20 3d 20 64 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 p.=.decompress(.cfile_size,.infd
56400 2c 20 70 70 2c 20 69 67 6e 6f 72 65 5f 74 72 61 69 6c 69 6e 67 2c 0a 20 20 20 20 20 20 20 20 20 ,.pp,.ignore_trailing,..........
56420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 6f 6f 73 65 5f 74 72 61 69 6c 69 6e 67 2c .................loose_trailing,
56440 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 3d 20 6d 5f 74 65 73 74 20 29 3b 0a 20 20 20 20 20 .program_mode.==.m_test.);......
56460 20 7d 0a 20 20 20 20 63 61 74 63 68 28 20 73 74 64 3a 3a 62 61 64 5f 61 6c 6c 6f 63 20 26 20 29 .}.....catch(.std::bad_alloc.&.)
56480 0a 20 20 20 20 20 20 7b 20 70 70 28 20 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 3d 3d 20 6d .......{.pp(.(.program_mode.==.m
564a0 5f 63 6f 6d 70 72 65 73 73 20 29 20 3f 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 4e 6f 74 20 65 _compress.).?............."Not.e
564c0 6e 6f 75 67 68 20 6d 65 6d 6f 72 79 2e 20 54 72 79 20 61 20 73 6d 61 6c 6c 65 72 20 64 69 63 74 nough.memory..Try.a.smaller.dict
564e0 69 6f 6e 61 72 79 20 73 69 7a 65 2e 22 20 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 4e 6f 74 ionary.size.".:............."Not
56500 20 65 6e 6f 75 67 68 20 6d 65 6d 6f 72 79 2e 22 20 29 3b 20 74 6d 70 20 3d 20 31 3b 20 7d 0a 20 .enough.memory.".);.tmp.=.1;.}..
56520 20 20 20 63 61 74 63 68 28 20 45 72 72 6f 72 20 26 20 65 20 29 20 7b 20 70 70 28 29 3b 20 73 68 ...catch(.Error.&.e.).{.pp();.sh
56540 6f 77 5f 65 72 72 6f 72 28 20 65 2e 6d 73 67 2c 20 65 72 72 6e 6f 20 29 3b 20 74 6d 70 20 3d 20 ow_error(.e.msg,.errno.);.tmp.=.
56560 31 3b 20 7d 0a 20 20 20 20 69 66 28 20 63 6c 6f 73 65 28 20 69 6e 66 64 20 29 20 21 3d 20 30 20 1;.}.....if(.close(.infd.).!=.0.
56580 29 0a 20 20 20 20 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 ).......{.show_file_error(.pp.na
565a0 6d 65 28 29 2c 20 22 45 72 72 6f 72 20 63 6c 6f 73 69 6e 67 20 69 6e 70 75 74 20 66 69 6c 65 22 me(),."Error.closing.input.file"
565c0 2c 20 65 72 72 6e 6f 20 29 3b 0a 20 20 20 20 20 20 20 20 73 65 74 5f 72 65 74 76 61 6c 28 20 74 ,.errno.);.........set_retval(.t
565e0 6d 70 2c 20 31 20 29 3b 20 7d 0a 20 20 20 20 73 65 74 5f 72 65 74 76 61 6c 28 20 72 65 74 76 61 mp,.1.);.}.....set_retval(.retva
56600 6c 2c 20 74 6d 70 20 29 3b 0a 20 20 20 20 69 66 28 20 74 6d 70 20 29 0a 20 20 20 20 20 20 7b 20 l,.tmp.);.....if(.tmp.).......{.
56620 69 66 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 21 3d 20 6d 5f 74 65 73 74 20 29 20 63 6c 65 if(.program_mode.!=.m_test.).cle
56640 61 6e 75 70 5f 61 6e 64 5f 66 61 69 6c 28 20 72 65 74 76 61 6c 20 29 3b 0a 20 20 20 20 20 20 20 anup_and_fail(.retval.);........
56660 20 65 6c 73 65 20 2b 2b 66 61 69 6c 65 64 5f 74 65 73 74 73 3b 20 7d 0a 0a 20 20 20 20 69 66 28 .else.++failed_tests;.}......if(
56680 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 26 26 20 6f .delete_output_on_interrupt.&&.o
566a0 6e 65 5f 74 6f 5f 6f 6e 65 20 29 0a 20 20 20 20 20 20 63 6c 6f 73 65 5f 61 6e 64 5f 73 65 74 5f ne_to_one.).......close_and_set_
566c0 70 65 72 6d 69 73 73 69 6f 6e 73 28 20 69 6e 5f 73 74 61 74 73 70 20 29 3b 0a 20 20 20 20 69 66 permissions(.in_statsp.);.....if
566e0 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 73 69 7a 65 28 29 20 26 26 20 21 6b 65 65 70 (.input_filename.size().&&.!keep
56700 5f 69 6e 70 75 74 5f 66 69 6c 65 73 20 26 26 20 6f 6e 65 5f 74 6f 5f 6f 6e 65 20 26 26 0a 20 20 _input_files.&&.one_to_one.&&...
56720 20 20 20 20 20 20 28 20 70 72 6f 67 72 61 6d 5f 6d 6f 64 65 20 21 3d 20 6d 5f 63 6f 6d 70 72 65 ......(.program_mode.!=.m_compre
56740 73 73 20 7c 7c 20 76 6f 6c 75 6d 65 5f 73 69 7a 65 20 3d 3d 20 30 20 29 20 29 0a 20 20 20 20 20 ss.||.volume_size.==.0.).)......
56760 20 73 74 64 3a 3a 72 65 6d 6f 76 65 28 20 69 6e 70 75 74 5f 66 69 6c 65 6e 61 6d 65 2e 63 5f 73 .std::remove(.input_filename.c_s
56780 74 72 28 29 20 29 3b 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 64 65 6c 65 74 65 5f 6f 75 74 70 75 tr().);.....}...if(.delete_outpu
567a0 74 5f 6f 6e 5f 69 6e 74 65 72 72 75 70 74 20 29 20 63 6c 6f 73 65 5f 61 6e 64 5f 73 65 74 5f 70 t_on_interrupt.).close_and_set_p
567c0 65 72 6d 69 73 73 69 6f 6e 73 28 20 30 20 29 3b 09 2f 2f 20 2d 6f 0a 20 20 65 6c 73 65 20 69 66 ermissions(.0.);.//.-o...else.if
567e0 28 20 6f 75 74 66 64 20 3e 3d 20 30 20 26 26 20 63 6c 6f 73 65 28 20 6f 75 74 66 64 20 29 20 21 (.outfd.>=.0.&&.close(.outfd.).!
56800 3d 20 30 20 29 09 09 09 09 2f 2f 20 2d 63 0a 20 20 20 20 7b 0a 20 20 20 20 73 68 6f 77 5f 65 72 =.0.)....//.-c.....{.....show_er
56820 72 6f 72 28 20 22 45 72 72 6f 72 20 63 6c 6f 73 69 6e 67 20 73 74 64 6f 75 74 22 2c 20 65 72 72 ror(."Error.closing.stdout",.err
56840 6e 6f 20 29 3b 0a 20 20 20 20 73 65 74 5f 72 65 74 76 61 6c 28 20 72 65 74 76 61 6c 2c 20 31 20 no.);.....set_retval(.retval,.1.
56860 29 3b 0a 20 20 20 20 7d 0a 20 20 69 66 28 20 66 61 69 6c 65 64 5f 74 65 73 74 73 20 3e 20 30 20 );.....}...if(.failed_tests.>.0.
56880 26 26 20 76 65 72 62 6f 73 69 74 79 20 3e 3d 20 31 20 26 26 20 66 69 6c 65 6e 61 6d 65 73 2e 73 &&.verbosity.>=.1.&&.filenames.s
568a0 69 7a 65 28 29 20 3e 20 31 20 29 0a 20 20 20 20 73 74 64 3a 3a 66 70 72 69 6e 74 66 28 20 73 74 ize().>.1.).....std::fprintf(.st
568c0 64 65 72 72 2c 20 22 25 73 3a 20 77 61 72 6e 69 6e 67 3a 20 25 64 20 25 73 20 66 61 69 6c 65 64 derr,."%s:.warning:.%d.%s.failed
568e0 20 74 68 65 20 74 65 73 74 2e 5c 6e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .the.test.\n",..................
56900 20 70 72 6f 67 72 61 6d 5f 6e 61 6d 65 2c 20 66 61 69 6c 65 64 5f 74 65 73 74 73 2c 0a 20 20 20 .program_name,.failed_tests,....
56920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 20 66 61 69 6c 65 64 5f 74 65 73 74 73 20 3d 3d ...............(.failed_tests.==
56940 20 31 20 29 20 3f 20 22 66 69 6c 65 22 20 3a 20 22 66 69 6c 65 73 22 20 29 3b 0a 20 20 72 65 74 .1.).?."file".:."files".);...ret
56960 75 72 6e 20 72 65 74 76 61 6c 3b 0a 20 20 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 urn.retval;...}.................
56980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
569a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
569c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
569e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56a00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 63 68 65 63 6b 2e 73 68 lzip-1.22-rc2/testsuite/check.sh
56a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56a60 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
56a80 30 30 34 30 30 30 30 00 31 33 36 37 32 36 32 36 36 36 31 00 30 30 31 35 33 31 34 00 30 00 00 00 0040000.13672626661.0015314.0...
56aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56b00 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...................
56b20 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...................
56b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
56c00 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
56c20 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
56c40 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 30 20 41 6e 74 or.#.Copyright.(C).2008-2020.Ant
56c60 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.
56c80 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
56ca0 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
56cc0 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.
56ce0 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
56d00 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
56d20 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
56d40 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
56d60 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
56d80 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
56da0 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
56dc0 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}".]
56de0 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
56e00 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.
56e20 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.\"
56e40 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.
56e60 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
56e80 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
56ea0 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 63 61 74 20 22 24 7b 74 65 73 74 64 69 72 7d 22 mework_failure..cat."${testdir}"
56ec0 2f 74 65 73 74 2e 74 78 74 20 3e 20 69 6e 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c /test.txt.>.in.||.framework_fail
56ee0 75 72 65 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 ure.in_lz="${testdir}"/test.txt.
56f00 6c 7a 0a 69 6e 5f 65 6d 3d 22 24 7b 74 65 73 74 64 69 72 7d 22 2f 74 65 73 74 5f 65 6d 2e 74 78 lz.in_em="${testdir}"/test_em.tx
56f20 74 2e 6c 7a 0a 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 t.lz.fox_lz="${testdir}"/fox.lz.
56f40 66 61 69 6c 3d 30 0a 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 fail=0.test_failed().{.fail=1.;.
56f60 70 72 69 6e 74 66 20 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 printf.".$1".;.[.-z."$2".].||.pr
56f80 69 6e 74 66 20 22 28 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 intf."($2)".;.}..printf."testing
56fa0 20 6c 7a 69 70 2d 25 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 .lzip-%s..."."$2".."${LZIP}".-fk
56fc0 71 6d 34 20 69 6e 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 qm4.in.[.$?.=.1.].||.test_failed
56fe0 20 24 4c 49 4e 45 4e 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 .$LINENO.[.!.-e.in.lz.].||.test_
57000 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 66 6b 71 6d 32 37 failed.$LINENO."${LZIP}".-fkqm27
57020 34 20 69 6e 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 4.in.[.$?.=.1.].||.test_failed.$
57040 4c 49 4e 45 4e 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 LINENO.[.!.-e.in.lz.].||.test_fa
57060 69 6c 65 64 20 24 4c 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 iled.$LINENO.for.i.in.bad_size.-
57080 31 20 30 20 34 30 39 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 1.0.4095.513MiB.1G.1T.1P.1E.1Z.1
570a0 59 20 31 30 4b 42 20 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 Y.10KB.;.do.."${LZIP}".-fkqs.$i.
570c0 69 6e 0a 09 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 in..[.$?.=.1.].||.test_failed.$L
570e0 49 4e 45 4e 4f 20 24 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 INENO.$i..[.!.-e.in.lz.].||.test
57100 5f 66 61 69 6c 65 64 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 _failed.$LINENO.$i.done."${LZIP}
57120 22 20 2d 6c 71 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 6c ".-lq.in.[.$?.=.2.].||.test_fail
57140 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 69 6e 0a 5b 20 24 3f ed.$LINENO."${LZIP}".-tq.in.[.$?
57160 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."$
57180 7b 4c 5a 49 50 7d 22 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 {LZIP}".-tq.<.in.[.$?.=.2.].||.t
571a0 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 64 est_failed.$LINENO."${LZIP}".-cd
571c0 71 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 6c 65 64 20 24 q.in.[.$?.=.2.].||.test_failed.$
571e0 4c 49 4e 45 4e 4f 0a 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 LINENO."${LZIP}".-cdq.<.in.[.$?.
57200 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."${
57220 4c 5a 49 50 7d 22 20 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 LZIP}".-dq.-o.in.<."${in_lz}".[.
57240 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.
57260 22 24 7b 4c 5a 49 50 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 "${LZIP}".-dq.-o.in."${in_lz}".[
57280 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
572a0 0a 22 24 7b 4c 5a 49 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 ."${LZIP}".-dq.-o.out.nx_file.lz
572c0 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
572e0 4e 4f 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 NO.[.!.-e.out.].||.test_failed.$
57300 4c 49 4e 45 4e 4f 0a 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 LINENO."${LZIP}".-q.-o.out.lz.nx
57320 5f 66 69 6c 65 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 _file.[.$?.=.1.].||.test_failed.
57340 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 20 74 65 73 74 5f $LINENO.[.!.-e.out.lz.].||.test_
57360 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 71 66 20 2d 53 31 failed.$LINENO."${LZIP}".-qf.-S1
57380 30 30 6b 20 2d 6f 20 6f 75 74 20 69 6e 20 69 6e 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 00k.-o.out.in.in.[.$?.=.1.].||.t
573a0 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 23 20 74 68 65 73 65 20 61 72 65 20 66 est_failed.$LINENO.#.these.are.f
573c0 6f 72 20 63 6f 64 65 20 63 6f 76 65 72 61 67 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 74 20 22 or.code.coverage."${LZIP}".-lt."
573e0 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 24 3f 20 3d 20 31 20 ${in_lz}".2>./dev/null.[.$?.=.1.
57400 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
57420 7d 22 20 2d 63 64 6c 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 6f 75 74 20 32 3e 20 2f 64 65 76 }".-cdl."${in_lz}".>.out.2>./dev
57440 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 64 20 /null.[.$?.=.1.].||.test_failed.
57460 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 74 20 22 24 7b 69 6e 5f 6c 7a 7d $LINENO."${LZIP}".-cdt."${in_lz}
57480 22 20 3e 20 6f 75 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 20 ".>.out.2>./dev/null.[.$?.=.1.].
574a0 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}"
574c0 20 2d 74 20 2d 2d 20 6e 78 5f 66 69 6c 65 2e 6c 7a 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 0a 5b .-t.--.nx_file.lz.2>./dev/null.[
574e0 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
57500 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 22 22 20 3c 20 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 20 ."${LZIP}".-t."".<./dev/null.2>.
57520 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 61 69 /dev/null.[.$?.=.1.].||.test_fai
57540 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 2d 68 65 6c 70 20 3e 20 2f led.$LINENO."${LZIP}".--help.>./
57560 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 45 4e 4f 0a dev/null.||.test_failed.$LINENO.
57580 22 24 7b 4c 5a 49 50 7d 22 20 2d 6e 31 20 2d 56 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 7c 7c 20 "${LZIP}".-n1.-V.>./dev/null.||.
575a0 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 6d test_failed.$LINENO."${LZIP}".-m
575c0 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 20 74 65 73 74 .2>./dev/null.[.$?.=.1.].||.test
575e0 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 7a 20 32 3e 20 _failed.$LINENO."${LZIP}".-z.2>.
57600 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 61 69 /dev/null.[.$?.=.1.].||.test_fai
57620 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 2d 62 61 64 5f 6f 70 74 69 led.$LINENO."${LZIP}".--bad_opti
57640 6f 6e 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 20 74 65 on.2>./dev/null.[.$?.=.1.].||.te
57660 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 2d 74 20 st_failed.$LINENO."${LZIP}".--t.
57680 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 20 74 65 73 74 5f 2>./dev/null.[.$?.=.1.].||.test_
576a0 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 2d 74 65 73 74 3d failed.$LINENO."${LZIP}".--test=
576c0 32 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 20 74 65 73 2.2>./dev/null.[.$?.=.1.].||.tes
576e0 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 2d 6f 75 74 t_failed.$LINENO."${LZIP}".--out
57700 70 75 74 3d 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 20 put=.2>./dev/null.[.$?.=.1.].||.
57720 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 2d test_failed.$LINENO."${LZIP}".--
57740 6f 75 74 70 75 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 20 7c output.2>./dev/null.[.$?.=.1.].|
57760 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 20 22 4c 5a |.test_failed.$LINENO.printf."LZ
57780 49 50 5c 30 30 31 2d 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 IP\001-.........................
577a0 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 2f 6e 75 .....".|."${LZIP}".-t.2>./dev/nu
577c0 6c 6c 0a 70 72 69 6e 74 66 20 22 4c 5a 49 50 5c 30 30 32 2d 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e 2e ll.printf."LZIP\002-............
577e0 2e 2e 2e 2e 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 ..................".|."${LZIP}".
57800 2d 74 20 32 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 31 -t.2>./dev/null.printf."LZIP\001
57820 2b 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 2e 2e 2e 22 +.............................."
57840 20 7c 20 22 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 0a 70 72 .|."${LZIP}".-t.2>./dev/null..pr
57860 69 6e 74 66 20 22 5c 6e 74 65 73 74 69 6e 67 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 2e 2e intf."\ntesting.decompression...
57880 22 0a 0a 66 6f 72 20 69 20 69 6e 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 22 24 7b 69 6e 5f 65 6d 7d "..for.i.in."${in_lz}"."${in_em}
578a0 22 20 3b 20 64 6f 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 71 20 22 24 69 22 20 7c 7c 20 74 65 ".;.do.."${LZIP}".-lq."$i".||.te
578c0 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 22 24 69 22 0a 09 22 24 7b 4c 5a 49 50 7d st_failed.$LINENO."$i".."${LZIP}
578e0 22 20 2d 74 20 22 24 69 22 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f ".-t."$i".||.test_failed.$LINENO
57900 20 22 24 69 22 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 22 24 69 22 20 2d 6f 20 63 6f 70 79 ."$i".."${LZIP}".-d."$i".-o.copy
57920 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 22 24 69 22 0a 09 63 6d .||.test_failed.$LINENO."$i"..cm
57940 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
57960 20 22 24 69 22 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 22 24 69 22 20 3e 20 63 6f 70 79 ."$i".."${LZIP}".-cd."$i".>.copy
57980 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 22 24 69 22 0a 09 63 6d .||.test_failed.$LINENO."$i"..cm
579a0 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
579c0 20 22 24 69 22 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 22 24 69 22 20 2d 6f 20 2d 20 3e 20 ."$i".."${LZIP}".-d."$i".-o.-.>.
579e0 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 22 24 69 22 copy.||.test_failed.$LINENO."$i"
57a00 0a 09 63 6d 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 ..cmp.in.copy.||.test_failed.$LI
57a20 4e 45 4e 4f 20 22 24 69 22 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 3c 20 22 24 69 22 20 3e NENO."$i".."${LZIP}".-d.<."$i".>
57a40 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 22 24 69 .copy.||.test_failed.$LINENO."$i
57a60 22 0a 09 63 6d 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 "..cmp.in.copy.||.test_failed.$L
57a80 49 4e 45 4e 4f 20 22 24 69 22 0a 09 72 6d 20 2d 66 20 63 6f 70 79 20 7c 7c 20 66 72 61 6d 65 77 INENO."$i"..rm.-f.copy.||.framew
57aa0 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 64 6f 6e 65 0a 0a 6c 69 6e 65 73 3d 24 28 22 24 7b 4c 5a 49 ork_failure.done..lines=$("${LZI
57ac0 50 7d 22 20 2d 74 76 76 20 22 24 7b 69 6e 5f 65 6d 7d 22 20 32 3e 26 31 20 7c 20 77 63 20 2d 6c P}".-tvv."${in_em}".2>&1.|.wc.-l
57ae0 29 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 24 7b 6c 69 ).||.test_failed.$LINENO.[."${li
57b00 6e 65 73 7d 22 20 2d 65 71 20 38 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 nes}".-eq.8.].||.test_failed.$LI
57b20 4e 45 4e 4f 20 22 24 7b 6c 69 6e 65 73 7d 22 0a 0a 6c 69 6e 65 73 3d 24 28 22 24 7b 4c 5a 49 50 NENO."${lines}"..lines=$("${LZIP
57b40 7d 22 20 2d 6c 76 76 20 22 24 7b 69 6e 5f 65 6d 7d 22 20 7c 20 77 63 20 2d 6c 29 20 7c 7c 20 74 }".-lvv."${in_em}".|.wc.-l).||.t
57b60 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 22 24 7b 6c 69 6e 65 73 7d 22 20 est_failed.$LINENO.[."${lines}".
57b80 2d 65 71 20 31 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 -eq.11.].||.test_failed.$LINENO.
57ba0 22 24 7b 6c 69 6e 65 73 7d 22 0a 0a 63 61 74 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 63 6f 70 "${lines}"..cat."${in_lz}".>.cop
57bc0 79 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 y.lz.||.framework_failure."${LZI
57be0 50 7d 22 20 2d 64 6b 20 63 6f 70 79 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 P}".-dk.copy.lz.||.test_failed.$
57c00 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 63 6f 70 79 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 LINENO.cmp.in.copy.||.test_faile
57c20 64 20 24 4c 49 4e 45 4e 4f 0a 70 72 69 6e 74 66 20 22 74 6f 20 62 65 20 6f 76 65 72 77 72 69 74 d.$LINENO.printf."to.be.overwrit
57c40 74 65 6e 22 20 3e 20 63 6f 70 79 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 ten".>.copy.||.framework_failure
57c60 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 63 6f 70 79 2e 6c 7a 20 32 3e 20 2f 64 65 76 2f 6e 75 ."${LZIP}".-d.copy.lz.2>./dev/nu
57c80 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 64 20 24 4c 49 ll.[.$?.=.1.].||.test_failed.$LI
57ca0 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 7c 20 74 65 NENO."${LZIP}".-df.copy.lz.||.te
57cc0 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 79 2e 6c 7a st_failed.$LINENO.[.!.-e.copy.lz
57ce0 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 69 6e .].||.test_failed.$LINENO.cmp.in
57d00 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 0a 0a 72 6d .copy.||.test_failed.$LINENO..rm
57d20 20 2d 66 20 63 6f 70 79 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 63 61 .-f.copy.||.framework_failure.ca
57d40 74 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 63 6f 70 79 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 t."${in_lz}".>.copy.lz.||.framew
57d60 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 30 30 6b 20 ork_failure."${LZIP}".-d.-S100k.
57d80 63 6f 70 79 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 09 23 copy.lz.||.test_failed.$LINENO.#
57da0 20 69 67 6e 6f 72 65 20 2d 53 0a 5b 20 21 20 2d 65 20 63 6f 70 79 2e 6c 7a 20 5d 20 7c 7c 20 74 .ignore.-S.[.!.-e.copy.lz.].||.t
57dc0 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 63 6f 70 79 20 7c est_failed.$LINENO.cmp.in.copy.|
57de0 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 74 |.test_failed.$LINENO..printf."t
57e00 6f 20 62 65 20 6f 76 65 72 77 72 69 74 74 65 6e 22 20 3e 20 63 6f 70 79 20 7c 7c 20 66 72 61 6d o.be.overwritten".>.copy.||.fram
57e20 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 20 2d 6f 20 63 ework_failure."${LZIP}".-d..-o.c
57e40 6f 70 79 20 3c 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 opy.<."${in_lz}".2>./dev/null.[.
57e60 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.
57e80 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 66 20 2d 6f 20 63 6f 70 79 20 3c 20 22 24 7b 69 6e 5f 6c 7a "${LZIP}".-df.-o.copy.<."${in_lz
57ea0 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 6d 70 20 69 6e }".||.test_failed.$LINENO.cmp.in
57ec0 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 0a 72 6d 20 .copy.||.test_failed.$LINENO.rm.
57ee0 2d 66 20 6f 75 74 20 63 6f 70 79 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 -f.out.copy.||.framework_failure
57f00 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 2d 6f 20 2e 2f 2d 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 ."${LZIP}".-d.-o../-."${in_lz}".
57f20 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 2f ||.test_failed.$LINENO.cmp.in../
57f40 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 2e -.||.test_failed.$LINENO.rm.-f..
57f60 2f 2d 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 /-.||.framework_failure."${LZIP}
57f80 22 20 2d 64 20 2d 6f 20 2e 2f 2d 20 3c 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 7c 7c 20 74 65 73 74 ".-d.-o../-.<."${in_lz}".||.test
57fa0 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 2e 2f 2d 20 7c 7c 20 74 65 _failed.$LINENO.cmp.in../-.||.te
57fc0 73 74 5f 66 61 69 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 st_failed.$LINENO.rm.-f../-.||.f
57fe0 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 69 6e 5f 6c 7a 7d 22 ramework_failure..cat."${in_lz}"
58000 20 3e 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 6b 5f 66 61 69 .>.anyothername.||.framework_fai
58020 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 65 72 6e 61 6d lure."${LZIP}".-dv.-.anyothernam
58040 65 20 2d 20 3c 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 63 6f 70 79 20 32 3e 20 2f 64 65 76 2f e.-.<."${in_lz}".>.copy.2>./dev/
58060 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 0a 63 6d 70 null.||..test_failed.$LINENO.cmp
58080 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 0a .in.copy.||.test_failed.$LINENO.
580a0 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 73 74 5f cmp.in.anyothername.out.||.test_
580c0 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 63 6f 70 79 20 61 6e 79 6f 74 68 failed.$LINENO.rm.-f.copy.anyoth
580e0 65 72 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 ername.out.||.framework_failure.
58100 0a 22 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 ."${LZIP}".-lq.in."${in_lz}".[.$
58120 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."
58140 24 7b 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 ${LZIP}".-lq.nx_file.lz."${in_lz
58160 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 4c 49 }".[.$?.=.1.].||.test_failed.$LI
58180 4e 45 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 NENO."${LZIP}".-tq.in."${in_lz}"
581a0 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 45 .[.$?.=.2.].||.test_failed.$LINE
581c0 4e 4f 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 NO."${LZIP}".-tq.nx_file.lz."${i
581e0 6e 5f 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 n_lz}".[.$?.=.1.].||.test_failed
58200 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 20 22 24 7b 69 6e .$LINENO."${LZIP}".-cdq.in."${in
58220 5f 6c 7a 7d 22 20 3e 20 63 6f 70 79 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f _lz}".>.copy.[.$?.=.2.].||.test_
58240 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 61 74 20 63 6f 70 79 20 69 6e 20 7c 20 63 6d 70 failed.$LINENO.cat.copy.in.|.cmp
58260 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 4e 4f 0a 22 24 7b .in.-.||.test_failed.$LINENO."${
58280 4c 5a 49 50 7d 22 20 2d 63 64 71 20 6e 78 5f 66 69 6c 65 2e 6c 7a 20 22 24 7b 69 6e 5f 6c 7a 7d LZIP}".-cdq.nx_file.lz."${in_lz}
582a0 22 20 3e 20 63 6f 70 79 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c ".>.copy.[.$?.=.1.].||.test_fail
582c0 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 63 6f 70 79 20 7c 7c 20 74 65 73 74 5f 66 ed.$LINENO.cmp.in.copy.||.test_f
582e0 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 63 6f 70 79 20 7c 7c 20 66 72 61 6d ailed.$LINENO.rm.-f.copy.||.fram
58300 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 3e 20 63 ework_failure.cat."${in_lz}".>.c
58320 6f 70 79 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 66 6f 72 20 opy.lz.||.framework_failure.for.
58340 69 20 69 6e 20 31 20 32 20 33 20 34 20 35 20 36 20 37 20 3b 20 64 6f 0a 09 70 72 69 6e 74 66 20 i.in.1.2.3.4.5.6.7.;.do..printf.
58360 22 67 22 20 3e 3e 20 63 6f 70 79 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c "g".>>.copy.lz.||.framework_fail
58380 75 72 65 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 61 6c 76 76 20 63 6f 70 79 2e 6c 7a 20 22 24 7b ure.."${LZIP}".-alvv.copy.lz."${
583a0 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 5b 20 24 3f 20 3d in_lz}".>./dev/null.2>&1..[.$?.=
583c0 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 69 0a 09 .2.].||.test_failed.$LINENO.$i..
583e0 22 24 7b 4c 5a 49 50 7d 22 20 2d 61 74 76 76 76 76 20 63 6f 70 79 2e 6c 7a 20 22 24 7b 69 6e 5f "${LZIP}".-atvvvv.copy.lz."${in_
58400 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 20 5d 20 7c 7c lz}".2>./dev/null..[.$?.=.2.].||
58420 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 22 24 7b .test_failed.$LINENO.$i.done."${
58440 4c 5a 49 50 7d 22 20 2d 64 71 20 69 6e 20 63 6f 70 79 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 5d LZIP}".-dq.in.copy.lz.[.$?.=.2.]
58460 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 63 6f 70 .||.test_failed.$LINENO.[.-e.cop
58480 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 5b 20 y.lz.].||.test_failed.$LINENO.[.
584a0 21 20 2d 65 20 63 6f 70 79 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 !.-e.copy.].||.test_failed.$LINE
584c0 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 6c 65 NO.[.!.-e.in.out.].||.test_faile
584e0 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 65 2e d.$LINENO."${LZIP}".-dq.nx_file.
58500 6c 7a 20 63 6f 70 79 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 31 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 lz.copy.lz.[.$?.=.1.].||.test_fa
58520 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 63 6f 70 79 2e 6c 7a 20 5d 20 7c 7c iled.$LINENO.[.!.-e.copy.lz.].||
58540 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
58560 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
58580 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 0a .in.copy.||.test_failed.$LINENO.
585a0 0a 63 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 .cat.in.in.>.in2.||.framework_fa
585c0 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 71 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 22 ilure."${LZIP}".-lq."${in_lz}"."
585e0 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 45 4e 4f ${in_lz}".||.test_failed.$LINENO
58600 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 22 24 7b 69 6e 5f 6c ."${LZIP}".-t."${in_lz}"."${in_l
58620 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 22 24 7b 4c 5a z}".||.test_failed.$LINENO."${LZ
58640 49 50 7d 22 20 2d 63 64 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 2d IP}".-cd."${in_lz}"."${in_lz}".-
58660 6f 20 6f 75 74 20 3e 20 63 6f 70 79 32 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 o.out.>.copy2.||.test_failed.$LI
58680 4e 45 4e 4f 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 NENO.[.!.-e.out.].||.test_failed
586a0 20 24 4c 49 4e 45 4e 4f 09 09 09 23 20 6f 76 65 72 72 69 64 65 20 2d 6f 0a 63 6d 70 20 69 6e 32 .$LINENO...#.override.-o.cmp.in2
586c0 20 63 6f 70 79 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 72 6d .copy2.||.test_failed.$LINENO.rm
586e0 20 2d 66 20 63 6f 70 79 32 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 22 .-f.copy2.||.framework_failure."
58700 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 69 6e 5f 6c 7a 7d ${LZIP}".-d."${in_lz}"."${in_lz}
58720 22 20 2d 6f 20 63 6f 70 79 32 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e ".-o.copy2.||.test_failed.$LINEN
58740 4f 0a 63 6d 70 20 69 6e 32 20 63 6f 70 79 32 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 O.cmp.in2.copy2.||.test_failed.$
58760 4c 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 63 6f 70 79 32 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f LINENO.rm.-f.copy2.||.framework_
58780 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 5f 6c 7a failure..cat."${in_lz}"."${in_lz
587a0 7d 22 20 3e 20 63 6f 70 79 32 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 }".>.copy2.lz.||.framework_failu
587c0 72 65 0a 70 72 69 6e 74 66 20 22 5c 6e 67 61 72 62 61 67 65 22 20 3e 3e 20 63 6f 70 79 32 2e 6c re.printf."\ngarbage".>>.copy2.l
587e0 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 22 z.||.framework_failure."${LZIP}"
58800 20 2d 74 76 76 76 76 20 63 6f 70 79 32 2e 6c 7a 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 7c 7c .-tvvvv.copy2.lz.2>./dev/null.||
58820 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}".-
58840 61 6c 71 20 63 6f 70 79 32 2e 6c 7a 0a 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 73 74 5f alq.copy2.lz.[.$?.=.2.].||.test_
58860 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 74 71 20 63 6f failed.$LINENO."${LZIP}".-atq.co
58880 70 79 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 6c 65 64 py2.lz.[.$?.=.2.].||.test_failed
588a0 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 61 74 71 20 3c 20 63 6f 70 79 32 2e .$LINENO."${LZIP}".-atq.<.copy2.
588c0 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
588e0 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 61 64 6b 71 20 63 6f 70 79 32 2e 6c 7a 0a 5b 20 NENO."${LZIP}".-adkq.copy2.lz.[.
58900 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.
58920 5b 20 21 20 2d 65 20 63 6f 70 79 32 20 5d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c [.!.-e.copy2.].||.test_failed.$L
58940 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 61 64 6b 71 20 2d 6f 20 63 6f 70 79 32 20 3c INENO."${LZIP}".-adkq.-o.copy2.<
58960 20 63 6f 70 79 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 .copy2.lz.[.$?.=.2.].||.test_fai
58980 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 5b 20 21 20 2d 65 20 63 6f 70 79 32 20 5d 20 7c 7c 20 74 65 led.$LINENO.[.!.-e.copy2.].||.te
589a0 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 70 72 69 6e 74 66 20 22 74 6f 20 62 65 20 st_failed.$LINENO.printf."to.be.
589c0 6f 76 65 72 77 72 69 74 74 65 6e 22 20 3e 20 63 6f 70 79 32 20 7c 7c 20 66 72 61 6d 65 77 6f 72 overwritten".>.copy2.||.framewor
589e0 6b 5f 66 61 69 6c 75 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 66 20 63 6f 70 79 32 2e 6c 7a k_failure."${LZIP}".-df.copy2.lz
58a00 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 32 20 .||.test_failed.$LINENO.cmp.in2.
58a20 63 6f 70 79 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 72 6d 20 copy2.||.test_failed.$LINENO.rm.
58a40 2d 66 20 63 6f 70 79 32 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 70 -f.copy2.||.framework_failure..p
58a60 72 69 6e 74 66 20 22 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 rintf."\ntesting...compression..
58a80 2e 22 0a 0a 22 24 7b 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 .".."${LZIP}".-c.-0.in.in.in.-S1
58aa0 30 30 6b 20 2d 6f 20 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 00k.-o.out3.lz.>.copy2.lz.||.tes
58ac0 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 33 2e 6c 7a 20 t_failed.$LINENO.[.!.-e.out3.lz.
58ae0 5d 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 6f 76 65 ].||.test_failed.$LINENO...#.ove
58b00 72 72 69 64 65 20 2d 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 rride.-o.and.-S."${LZIP}".-0f.in
58b20 20 69 6e 20 2d 2d 6f 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 .in.--output=copy2.lz.||.test_fa
58b40 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 20 63 6f 70 79 32 2e iled.$LINENO."${LZIP}".-d.copy2.
58b60 6c 7a 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 4c 49 4e 45 4e lz.-o.out2.||.test_failed.$LINEN
58b80 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
58ba0 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 69 6e 32 20 6f 75 74 32 20 63 6f 70 79 32 2e 6c 7a 20 7c 7c INENO.rm.-f.in2.out2.copy2.lz.||
58bc0 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 49 50 7d 22 20 2d 63 .framework_failure.."${LZIP}".-c
58be0 66 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 6f 75 74 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 09 f."${in_lz}".>.out.2>./dev/null.
58c00 23 20 2f 64 65 76 2f 6e 75 6c 6c 20 69 73 20 61 20 74 74 79 20 6f 6e 20 4f 53 2f 32 0a 5b 20 24 #./dev/null.is.a.tty.on.OS/2.[.$
58c20 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 22 ?.=.1.].||.test_failed.$LINENO."
58c40 24 7b 4c 5a 49 50 7d 22 20 2d 46 76 76 6d 33 36 20 2d 6f 20 2d 20 22 24 7b 69 6e 5f 6c 7a 7d 22 ${LZIP}".-Fvvm36.-o.-."${in_lz}"
58c60 20 3e 20 6f 75 74 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 .>.out.2>./dev/null.||.test_fail
58c80 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 6f 75 74 20 7c 20 22 ed.$LINENO."${LZIP}".-cd.out.|."
58ca0 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 3e 20 63 6f 70 79 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 ${LZIP}".-d.>.copy.||.test_faile
58cc0 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 63 6f 70 79 20 7c 7c 20 74 65 73 74 5f 66 61 d.$LINENO.cmp.in.copy.||.test_fa
58ce0 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 30 20 2d 6f 20 2e 2f iled.$LINENO.."${LZIP}".-0.-o../
58d00 2d 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 0a 22 24 7b 4c -.in.||.test_failed.$LINENO."${L
58d20 5a 49 50 7d 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 ZIP}".-cd../-.|.cmp.in.-.||.test
58d40 5f 66 61 69 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 _failed.$LINENO.rm.-f../-.||.fra
58d60 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 30 20 2d 6f 20 2e mework_failure."${LZIP}".-0.-o..
58d80 2f 2d 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 4f 09 09 /-.<.in.||.test_failed.$LINENO..
58da0 09 23 20 61 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 .#.add..lz.[.!.-e../-.].||.test_
58dc0 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 2d 2d 20 failed.$LINENO."${LZIP}".-cd.--.
58de0 2d 2e 6c 7a 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 -.lz.|.cmp.in.-.||.test_failed.$
58e00 4c 49 4e 45 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 LINENO.rm.-f../-.lz.||.framework
58e20 5f 66 61 69 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 _failure..for.i.in.s4Ki.0.1.2.3.
58e40 34 20 35 20 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 4.5.6.7.8.9.;.do.."${LZIP}".-k.-
58e60 24 69 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 20 24 69 0a $i.in.||.test_failed.$LINENO.$i.
58e80 09 6d 76 20 2d 66 20 69 6e 2e 6c 7a 20 63 6f 70 79 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 .mv.-f.in.lz.copy.lz.||.test_fai
58ea0 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 09 70 72 69 6e 74 66 20 22 67 61 72 62 61 67 65 22 led.$LINENO.$i..printf."garbage"
58ec0 20 3e 3e 20 63 6f 70 79 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.lz.||.framework_failure
58ee0 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 66 20 63 6f 70 79 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f .."${LZIP}".-df.copy.lz.||.test_
58f00 66 61 69 6c 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 failed.$LINENO.$i..cmp.in.copy.|
58f20 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 0a 09 22 24 7b 4c 5a |.test_failed.$LINENO.$i..."${LZ
58f40 49 50 7d 22 20 2d 24 69 20 69 6e 20 2d 63 20 3e 20 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 IP}".-$i.in.-c.>.out.||.test_fai
58f60 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 20 2d 24 69 20 69 6e led.$LINENO.$i.."${LZIP}".-$i.in
58f80 20 2d 6f 20 6f 5f 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 .-o.o_out.||.test_failed.$LINENO
58fa0 20 24 69 09 23 20 64 6f 6e 27 74 20 61 64 64 20 2e 6c 7a 0a 09 5b 20 21 20 2d 65 20 6f 5f 6f 75 .$i.#.don't.add..lz..[.!.-e.o_ou
58fc0 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 0a 09 63 t.lz.].||.test_failed.$LINENO..c
58fe0 6d 70 20 6f 75 74 20 6f 5f 6f 75 74 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e mp.out.o_out.||.test_failed.$LIN
59000 45 4e 4f 20 24 69 0a 09 72 6d 20 2d 66 20 6f 5f 6f 75 74 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b ENO.$i..rm.-f.o_out.||.framework
59020 5f 66 61 69 6c 75 72 65 0a 09 70 72 69 6e 74 66 20 22 67 22 20 3e 3e 20 6f 75 74 20 7c 7c 20 66 _failure..printf."g".>>.out.||.f
59040 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 7d 22 20 2d 63 64 20 ramework_failure.."${LZIP}".-cd.
59060 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 24 4c 49 4e 45 4e out.>.copy.||.test_failed.$LINEN
59080 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 66 61 69 6c 65 64 O.$i..cmp.in.copy.||.test_failed
590a0 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 3c 20 69 6e .$LINENO.$i..."${LZIP}".-$i.<.in
590c0 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 20 24 69 .>.out.||.test_failed.$LINENO.$i
590e0 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 3c 20 6f 75 74 20 3e 20 63 6f 70 79 20 7c 7c 20 74 .."${LZIP}".-d.<.out.>.copy.||.t
59100 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 6e 20 63 6f est_failed.$LINENO.$i..cmp.in.co
59120 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 0a 0a 09 72 py.||.test_failed.$LINENO.$i...r
59140 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 09 70 m.-f.out.||.framework_failure..p
59160 72 69 6e 74 66 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 2e rintf."to.be.overwritten".>.out.
59180 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
591a0 7d 22 20 2d 66 20 2d 24 69 20 2d 6f 20 6f 75 74 20 3c 20 69 6e 20 7c 7c 20 74 65 73 74 5f 66 61 }".-f.-$i.-o.out.<.in.||.test_fa
591c0 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 20 24 69 09 23 20 61 64 64 20 2e 6c 7a 0a 09 5b 20 21 20 2d iled.$LINENO.$i.#.add..lz..[.!.-
591e0 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 09 e.out.].||.test_failed.$LINENO..
59200 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 66 20 2d 6f 20 63 6f 70 79 20 3c 20 6f 75 74 2e 6c 7a 20 7c "${LZIP}".-df.-o.copy.<.out.lz.|
59220 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 6e |.test_failed.$LINENO.$i..cmp.in
59240 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 0a .copy.||.test_failed.$LINENO.$i.
59260 64 6f 6e 65 0a 72 6d 20 2d 66 20 6f 75 74 20 6f 75 74 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f done.rm.-f.out.out.lz.||.framewo
59280 72 6b 5f 66 61 69 6c 75 72 65 0a 0a 63 61 74 20 69 6e 20 69 6e 20 69 6e 20 69 6e 20 69 6e 20 69 rk_failure..cat.in.in.in.in.in.i
592a0 6e 20 69 6e 20 69 6e 20 3e 20 69 6e 38 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 n.in.in.>.in8.||.framework_failu
592c0 72 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 31 73 31 32 20 2d 53 31 30 30 6b 20 69 6e 38 20 7c 7c re."${LZIP}".-1s12.-S100k.in8.||
592e0 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}".-
59300 74 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 74 65 73 t.in800001.lz.in800002.lz.||.tes
59320 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 20 69 t_failed.$LINENO."${LZIP}".-cd.i
59340 6e 38 30 30 30 30 31 2e 6c 7a 20 69 6e 38 30 30 30 30 32 2e 6c 7a 20 7c 20 63 6d 70 20 69 6e 38 n800001.lz.in800002.lz.|.cmp.in8
59360 20 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 5b 20 21 20 2d 65 .-.||.test_failed.$LINENO.[.!.-e
59380 20 69 6e 38 30 30 30 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 .in800003.lz.].||.test_failed.$L
593a0 49 4e 45 4e 4f 0a 72 6d 20 2d 66 20 69 6e 38 30 30 30 30 31 2e 6c 7a 20 69 6e 38 30 30 30 30 32 INENO.rm.-f.in800001.lz.in800002
593c0 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 50 .lz.||.framework_failure."${LZIP
593e0 7d 22 20 2d 31 73 31 32 20 2d 53 31 30 30 6b 20 2d 6f 20 6f 75 74 2e 6c 7a 20 69 6e 38 20 7c 7c }".-1s12.-S100k.-o.out.lz.in8.||
59400 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 23 20 69 67 6e 6f 72 65 20 2d 53 .test_failed.$LINENO.#.ignore.-S
59420 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 64 20 6f 75 74 2e 6c 7a 30 30 30 30 31 2e 6c 7a 20 6f 75 74 ."${LZIP}".-d.out.lz00001.lz.out
59440 2e 6c 7a 30 30 30 30 32 2e 6c 7a 20 2d 53 31 30 30 6b 20 2d 6f 20 6f 75 74 20 7c 7c 20 74 65 73 .lz00002.lz.-S100k.-o.out.||.tes
59460 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 38 20 6f 75 74 20 7c 7c 20 t_failed.$LINENO.cmp.in8.out.||.
59480 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 74 test_failed.$LINENO."${LZIP}".-t
594a0 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 7a 20 7c .out.lz00001.lz.out.lz00002.lz.|
594c0 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 6f 75 74 |.test_failed.$LINENO.[.!.-e.out
594e0 2e 6c 7a 30 30 30 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 .lz00003.lz.].||.test_failed.$LI
59500 4e 45 4e 4f 0a 72 6d 20 2d 66 20 6f 75 74 20 6f 75 74 2e 6c 7a 30 30 30 30 31 2e 6c 7a 20 6f 75 NENO.rm.-f.out.out.lz00001.lz.ou
59520 74 2e 6c 7a 30 30 30 30 32 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c 75 72 t.lz00002.lz.||.framework_failur
59540 65 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 31 6b 73 34 4b 69 20 2d 62 31 30 30 30 30 30 20 69 6e 38 e."${LZIP}".-1ks4Ki.-b100000.in8
59560 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}
59580 22 20 2d 74 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 ".-t.in8.lz.||.test_failed.$LINE
595a0 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 69 6e 38 2e 6c 7a 20 2d 6f 20 6f 75 74 20 7c NO."${LZIP}".-cd.in8.lz.-o.out.|
595c0 20 63 6d 70 20 69 6e 38 20 2d 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 4e .cmp.in8.-.||.test_failed.$LINEN
595e0 4f 09 23 20 6f 76 65 72 72 69 64 65 20 2d 6f 0a 5b 20 21 20 2d 65 20 6f 75 74 20 5d 20 7c 7c 20 O.#.override.-o.[.!.-e.out.].||.
59600 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 20 7c 7c test_failed.$LINENO.rm.-f.in8.||
59620 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 30 20 .framework_failure."${LZIP}".-0.
59640 2d 53 31 30 30 6b 20 2d 6f 20 6f 75 74 20 3c 20 69 6e 38 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 -S100k.-o.out.<.in8.lz.||.test_f
59660 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 6f 75 74 30 30 ailed.$LINENO."${LZIP}".-t.out00
59680 30 30 31 2e 6c 7a 20 6f 75 74 30 30 30 30 32 2e 6c 7a 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 001.lz.out00002.lz.||.test_faile
596a0 64 20 24 4c 49 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 6f 75 74 30 30 30 30 31 d.$LINENO."${LZIP}".-cd.out00001
596c0 2e 6c 7a 20 6f 75 74 30 30 30 30 32 2e 6c 7a 20 7c 20 63 6d 70 20 69 6e 38 2e 6c 7a 20 2d 20 7c .lz.out00002.lz.|.cmp.in8.lz.-.|
596e0 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 6f 75 74 |.test_failed.$LINENO.[.!.-e.out
59700 30 30 30 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 00003.lz.].||.test_failed.$LINEN
59720 4f 0a 72 6d 20 2d 66 20 6f 75 74 30 30 30 30 31 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b O.rm.-f.out00001.lz.||.framework
59740 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 6f 20 _failure."${LZIP}".-1.-S100k.-o.
59760 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
59780 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
597a0 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.
597c0 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
597e0 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
59800 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.]
59820 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
59840 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
59860 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 46 20 2d 53 31 30 30 rk_failure."${LZIP}".-0.-F.-S100
59880 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 4f 0a k.in8.lz.||.test_failed.$LINENO.
598a0 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 69 6e 38 2e 6c 7a 30 30 30 30 31 2e 6c 7a 20 69 6e 38 2e "${LZIP}".-t.in8.lz00001.lz.in8.
598c0 6c 7a 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 lz00002.lz.||.test_failed.$LINEN
598e0 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 69 6e 38 2e 6c 7a 30 30 30 30 31 2e 6c 7a 20 69 O."${LZIP}".-cd.in8.lz00001.lz.i
59900 6e 38 2e 6c 7a 30 30 30 30 32 2e 6c 7a 20 7c 20 63 6d 70 20 69 6e 38 2e 6c 7a 20 2d 20 7c 7c 20 n8.lz00002.lz.|.cmp.in8.lz.-.||.
59920 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 69 6e 38 2e 6c test_failed.$LINENO.[.!.-e.in8.l
59940 7a 30 30 30 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 z00003.lz.].||.test_failed.$LINE
59960 4e 4f 0a 72 6d 20 2d 66 20 69 6e 38 2e 6c 7a 30 30 30 30 31 2e 6c 7a 20 69 6e 38 2e 6c 7a 30 30 NO.rm.-f.in8.lz00001.lz.in8.lz00
59980 30 30 32 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 002.lz.||.framework_failure."${L
599a0 5a 49 50 7d 22 20 2d 30 6b 46 20 2d 62 31 30 30 6b 20 69 6e 38 2e 6c 7a 20 7c 7c 20 74 65 73 74 ZIP}".-0kF.-b100k.in8.lz.||.test
599c0 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 6e 38 _failed.$LINENO."${LZIP}".-t.in8
599e0 2e 6c 7a 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 .lz.lz.||.test_failed.$LINENO."$
59a00 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 69 6e 38 2e 6c 7a 2e 6c 7a 20 7c 20 63 6d 70 20 69 6e 38 2e {LZIP}".-cd.in8.lz.lz.|.cmp.in8.
59a20 6c 7a 20 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 lz.-.||.test_failed.$LINENO.rm.-
59a40 66 20 69 6e 38 2e 6c 7a 20 69 6e 38 2e 6c 7a 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f f.in8.lz.in8.lz.lz.||.framework_
59a60 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 64 20 69 failure..printf."\ntesting.bad.i
59a80 6e 70 75 74 2e 2e 2e 22 0a 0a 68 65 61 64 65 72 73 3d 27 4c 5a 49 70 20 4c 5a 69 50 20 4c 5a 69 nput..."..headers='LZIp.LZiP.LZi
59aa0 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.
59ac0 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 32 30 33 5c 33 37 37 lzIP'.body='\001\014\000\203\377
59ae0 5c 33 37 33 5c 33 37 37 5c 33 37 37 5c 33 30 30 5c 30 30 30 5c 30 30 30 5c 30 30 30 5c 30 30 30 \373\377\377\300\000\000\000\000
59b00 5c 30 30 30 5c 30 30 30 5c 30 30 30 5c 30 30 30 5c 30 30 30 5c 30 30 30 5c 30 30 30 5c 30 30 30 \000\000\000\000\000\000\000\000
59b20 5c 30 30 30 5c 30 30 30 5c 30 30 30 24 5c 30 30 30 5c 30 30 30 5c 30 30 30 5c 30 30 30 5c 30 30 \000\000\000$\000\000\000\000\00
59b40 30 5c 30 30 30 5c 30 30 30 27 0a 63 61 74 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 69 6e 74 2e 0\000\000'.cat."${in_lz}".>.int.
59b60 6c 7a 0a 70 72 69 6e 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 lz.printf."LZIP${body}".>>.int.l
59b80 7a 0a 69 66 20 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 69 6e 74 2e 6c 7a 20 3b 20 74 68 65 6e z.if."${LZIP}".-tq.int.lz.;.then
59ba0 0a 09 66 6f 72 20 68 65 61 64 65 72 20 69 6e 20 24 7b 68 65 61 64 65 72 73 7d 20 3b 20 64 6f 0a ..for.header.in.${headers}.;.do.
59bc0 09 09 70 72 69 6e 74 66 20 22 24 7b 68 65 61 64 65 72 7d 24 7b 62 6f 64 79 7d 22 20 3e 20 69 6e ..printf."${header}${body}".>.in
59be0 74 2e 6c 7a 09 23 20 66 69 72 73 74 20 6d 65 6d 62 65 72 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 t.lz.#.first.member..."${LZIP}".
59c00 2d 6c 71 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 73 74 5f -lq.int.lz...[.$?.=.2.].||.test_
59c20 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 4c 5a failed.$LINENO.${header}..."${LZ
59c40 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 20 7c 7c 20 IP}".-tq.int.lz...[.$?.=.2.].||.
59c60 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}...
59c80 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 3f 20 3d 20 "${LZIP}".-tq.<.int.lz...[.$?.=.
59ca0 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
59cc0 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 20 3e 20 2f der}..."${LZIP}".-cdq.int.lz.>./
59ce0 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 5f 66 61 dev/null...[.$?.=.2.].||.test_fa
59d00 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 4c 5a 49 50 iled.$LINENO.${header}..."${LZIP
59d20 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 6c 7a 0a 09 }".-lq.--loose-trailing.int.lz..
59d40 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 49 4e 45 .[.$?.=.2.].||.test_failed.$LINE
59d60 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 20 2d 2d 6c NO.${header}..."${LZIP}".-tq.--l
59d80 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 3d 20 32 20 oose-trailing.int.lz...[.$?.=.2.
59da0 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 64 65 ].||.test_failed.$LINENO.${heade
59dc0 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 72 61 69 6c r}..."${LZIP}".-tq.--loose-trail
59de0 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 20 74 65 73 ing.<.int.lz...[.$?.=.2.].||.tes
59e00 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}..."${
59e20 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 69 6e 74 LZIP}".-cdq.--loose-trailing.int
59e40 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.].||.
59e60 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}...
59e80 63 61 74 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 69 6e 74 2e 6c 7a 0a 09 09 70 72 69 6e 74 66 cat."${in_lz}".>.int.lz...printf
59ea0 20 22 24 7b 68 65 61 64 65 72 7d 24 7b 62 6f 64 79 7d 22 20 3e 3e 20 69 6e 74 2e 6c 7a 09 23 20 ."${header}${body}".>>.int.lz.#.
59ec0 74 72 61 69 6c 69 6e 67 20 64 61 74 61 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 6c 71 20 69 6e trailing.data..."${LZIP}".-lq.in
59ee0 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
59f00 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}".-
59f20 74 71 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 73 74 5f 66 tq.int.lz...[.$?.=.2.].||.test_f
59f40 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 4c 5a 49 ailed.$LINENO.${header}..."${LZI
59f60 50 7d 22 20 2d 74 71 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 P}".-tq.<.int.lz...[.$?.=.2.].||
59f80 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}..
59fa0 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 69 6e 74 2e 6c 7a 20 3e 20 2f 64 65 76 2f 6e 75 ."${LZIP}".-cdq.int.lz.>./dev/nu
59fc0 6c 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 ll...[.$?.=.2.].||.test_failed.$
59fe0 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 6c 71 LINENO.${header}..."${LZIP}".-lq
5a000 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 09 09 74 .--loose-trailing.int.lz.||....t
5a020 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}..."
5a040 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 69 6e 74 ${LZIP}".-t.--loose-trailing.int
5a060 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 4e 4f 20 24 7b .lz.||....test_failed.$LINENO.${
5a080 68 65 61 64 65 72 7d 0a 09 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 2d 2d 6c 6f 6f 73 65 2d 74 header}..."${LZIP}".-t.--loose-t
5a0a0 72 61 69 6c 69 6e 67 20 3c 20 69 6e 74 2e 6c 7a 20 7c 7c 0a 09 09 09 74 65 73 74 5f 66 61 69 6c railing.<.int.lz.||....test_fail
5a0c0 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}"
5a0e0 20 2d 63 64 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 3e 20 2f .-cd.--loose-trailing.int.lz.>./
5a100 64 65 76 2f 6e 75 6c 6c 20 7c 7c 0a 09 09 09 74 65 73 74 5f 66 61 69 6c 65 64 20 24 4c 49 4e 45 dev/null.||....test_failed.$LINE
5a120 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 6c 71 20 2d 2d 6c NO.${header}..."${LZIP}".-lq.--l
5a140 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 72 72 6f 72 20 69 oose-trailing.--trailing-error.i
5a160 6e 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 nt.lz...[.$?.=.2.].||.test_faile
5a180 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 20 d.$LINENO.${header}..."${LZIP}".
5a1a0 2d 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 -tq.--loose-trailing.--trailing-
5a1c0 65 72 72 6f 72 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 73 error.int.lz...[.$?.=.2.].||.tes
5a1e0 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}..."${
5a200 4c 5a 49 50 7d 22 20 2d 74 71 20 2d 2d 6c 6f 6f 73 65 2d 74 72 61 69 6c 69 6e 67 20 2d 2d 74 72 LZIP}".-tq.--loose-trailing.--tr
5a220 61 69 6c 69 6e 67 2d 65 72 72 6f 72 20 3c 20 69 6e 74 2e 6c 7a 0a 09 09 5b 20 24 3f 20 3d 20 32 ailing-error.<.int.lz...[.$?.=.2
5a240 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 64 .].||.test_failed.$LINENO.${head
5a260 65 72 7d 0a 09 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 er}..."${LZIP}".-cdq.--loose-tra
5a280 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 20 3e 20 iling.--trailing-error.int.lz.>.
5a2a0 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 5f 66 /dev/null...[.$?.=.2.].||.test_f
5a2c0 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 64 6f 6e 65 0a 65 6c ailed.$LINENO.${header}..done.el
5a2e0 73 65 0a 09 70 72 69 6e 74 66 20 22 5c 6e 77 61 72 6e 69 6e 67 3a 20 73 6b 69 70 70 69 6e 67 20 se..printf."\nwarning:.skipping.
5a300 68 65 61 64 65 72 20 74 65 73 74 3a 20 27 70 72 69 6e 74 66 27 20 64 6f 65 73 20 6e 6f 74 20 77 header.test:.'printf'.does.not.w
5a320 6f 72 6b 20 6f 6e 20 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 ork.on.your.system.".fi.rm.-f.in
5a340 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 0a 66 6f 72 20 69 t.lz.||.framework_failure..for.i
5a360 20 69 6e 20 66 6f 78 5f 76 32 2e 6c 7a 20 66 6f 78 5f 73 31 31 2e 6c 7a 20 66 6f 78 5f 64 65 32 .in.fox_v2.lz.fox_s11.lz.fox_de2
5a380 30 2e 6c 7a 20 5c 0a 20 20 20 20 20 20 20 20 20 66 6f 78 5f 62 63 72 63 2e 6c 7a 20 66 6f 78 5f 0.lz.\..........fox_bcrc.lz.fox_
5a3a0 63 72 63 30 2e 6c 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 crc0.lz.fox_das46.lz.fox_mes81.l
5a3c0 7a 20 3b 20 64 6f 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 71 20 22 24 7b 74 65 73 74 64 69 72 z.;.do.."${LZIP}".-tq."${testdir
5a3e0 7d 22 2f 24 69 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 64 }"/$i..[.$?.=.2.].||.test_failed
5a400 20 24 4c 49 4e 45 4e 4f 20 24 69 0a 64 6f 6e 65 0a 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 20 .$LINENO.$i.done.."${LZIP}".-cd.
5a420 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
5a440 20 24 4c 49 4e 45 4e 4f 0a 66 6f 72 20 69 20 69 6e 20 66 6f 78 5f 62 63 72 63 2e 6c 7a 20 66 6f .$LINENO.for.i.in.fox_bcrc.lz.fo
5a460 78 5f 63 72 63 30 2e 6c 7a 20 66 6f 78 5f 64 61 73 34 36 2e 6c 7a 20 66 6f 78 5f 6d 65 73 38 31 x_crc0.lz.fox_das46.lz.fox_mes81
5a480 2e 6c 7a 20 3b 20 64 6f 0a 09 22 24 7b 4c 5a 49 50 7d 22 20 2d 63 64 71 20 22 24 7b 74 65 73 74 .lz.;.do.."${LZIP}".-cdq."${test
5a4a0 64 69 72 7d 22 2f 24 69 20 3e 20 6f 75 74 0a 09 5b 20 24 3f 20 3d 20 32 20 5d 20 7c 7c 20 74 65 dir}"/$i.>.out..[.$?.=.2.].||.te
5a4c0 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 66 6f 78 20 6f 75 st_failed.$LINENO.$i..cmp.fox.ou
5a4e0 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 64 6f 6e 65 t.||.test_failed.$LINENO.$i.done
5a500 0a 72 6d 20 2d 66 20 66 6f 78 20 6f 75 74 20 7c 7c 20 66 72 61 6d 65 77 6f 72 6b 5f 66 61 69 6c .rm.-f.fox.out.||.framework_fail
5a520 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 5f 6c 7a 7d 22 20 3e ure..cat."${in_lz}"."${in_lz}".>
5a540 20 69 6e 32 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 .in2.lz.||.framework_failure.cat
5a560 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 22 24 7b 69 6e 5f 6c 7a 7d 22 20 22 24 7b 69 6e 5f 6c 7a 7d ."${in_lz}"."${in_lz}"."${in_lz}
5a580 22 20 3e 20 69 6e 33 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 ".>.in3.lz.||.framework_failure.
5a5a0 69 66 20 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 31 if.dd.if=in3.lz.of=trunc.lz.bs=1
5a5c0 34 37 35 32 20 63 6f 75 6e 74 3d 31 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 26 26 0a 20 20 20 4752.count=1.2>./dev/null.&&....
5a5e0 5b 20 2d 65 20 74 72 75 6e 63 2e 6c 7a 20 5d 20 26 26 20 63 6d 70 20 69 6e 32 2e 6c 7a 20 74 72 [.-e.trunc.lz.].&&.cmp.in2.lz.tr
5a600 75 6e 63 2e 6c 7a 20 3e 20 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 26 31 20 3b 20 74 68 65 6e 0a 09 unc.lz.>./dev/null.2>&1.;.then..
5a620 66 6f 72 20 69 20 69 6e 20 36 20 32 30 20 31 34 37 33 34 20 31 34 37 35 33 20 31 34 37 35 34 20 for.i.in.6.20.14734.14753.14754.
5a640 31 34 37 35 35 20 31 34 37 35 36 20 31 34 37 35 37 20 31 34 37 35 38 20 3b 20 64 6f 0a 09 09 64 14755.14756.14757.14758.;.do...d
5a660 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 20 63 6f d.if=in3.lz.of=trunc.lz.bs=$i.co
5a680 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 22 20 2d unt=1.2>./dev/null..."${LZIP}".-
5a6a0 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 65 73 74 lq.trunc.lz...[.$?.=.2.].||.test
5a6c0 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 22 20 2d _failed.$LINENO.$i..."${LZIP}".-
5a6e0 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 65 73 74 tq.trunc.lz...[.$?.=.2.].||.test
5a700 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 22 20 2d _failed.$LINENO.$i..."${LZIP}".-
5a720 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 20 74 65 tq.<.trunc.lz...[.$?.=.2.].||.te
5a740 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 22 st_failed.$LINENO.$i..."${LZIP}"
5a760 20 2d 63 64 71 20 74 72 75 6e 63 2e 6c 7a 20 3e 20 6f 75 74 0a 09 09 5b 20 24 3f 20 3d 20 32 20 .-cdq.trunc.lz.>.out...[.$?.=.2.
5a780 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 09 09 22 24 ].||.test_failed.$LINENO.$i..."$
5a7a0 7b 4c 5a 49 50 7d 22 20 2d 64 71 20 3c 20 74 72 75 6e 63 2e 6c 7a 20 3e 20 6f 75 74 0a 09 09 5b {LZIP}".-dq.<.trunc.lz.>.out...[
5a7c0 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
5a7e0 20 24 69 0a 09 64 6f 6e 65 0a 65 6c 73 65 0a 09 70 72 69 6e 74 66 20 22 5c 6e 77 61 72 6e 69 6e .$i..done.else..printf."\nwarnin
5a800 67 3a 20 73 6b 69 70 70 69 6e 67 20 74 72 75 6e 63 61 74 69 6f 6e 20 74 65 73 74 3a 20 27 64 64 g:.skipping.truncation.test:.'dd
5a820 27 20 64 6f 65 73 20 6e 6f 74 20 77 6f 72 6b 20 6f 6e 20 79 6f 75 72 20 73 79 73 74 65 6d 2e 22 '.does.not.work.on.your.system."
5a840 0a 66 69 0a 72 6d 20 2d 66 20 69 6e 32 2e 6c 7a 20 69 6e 33 2e 6c 7a 20 74 72 75 6e 63 2e 6c 7a .fi.rm.-f.in2.lz.in3.lz.trunc.lz
5a860 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 61 74 20 22 .out.||.framework_failure..cat."
5a880 24 7b 69 6e 5f 6c 7a 7d 22 20 3e 20 69 6e 67 69 6e 2e 6c 7a 20 7c 7c 20 66 72 61 6d 65 77 6f 72 ${in_lz}".>.ingin.lz.||.framewor
5a8a0 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 67 69 6e 2e 6c 7a k_failure.printf."g".>>.ingin.lz
5a8c0 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 22 24 7b 69 6e 5f .||.framework_failure.cat."${in_
5a8e0 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 6f 72 6b 5f 66 61 lz}".>>.ingin.lz.||.framework_fa
5a900 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 6c 7a 0a 5b 20 24 ilure."${LZIP}".-lq.ingin.lz.[.$
5a920 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."
5a940 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 3f 20 3d 20 32 20 ${LZIP}".-atq.ingin.lz.[.$?.=.2.
5a960 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
5a980 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 32 20 5d 20 7c 7c }".-atq.<.ingin.lz.[.$?.=.2.].||
5a9a0 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}".-
5a9c0 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 20 32 20 5d 20 7c acdq.ingin.lz.>.out.[.$?.=.2.].|
5a9e0 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}".
5aa00 2d 61 64 71 20 3c 20 69 6e 67 69 6e 2e 6c 7a 20 3e 20 6f 75 74 0a 5b 20 24 3f 20 3d 20 32 20 5d -adq.<.ingin.lz.>.out.[.$?.=.2.]
5aa20 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}
5aa40 22 20 2d 74 20 69 6e 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 ".-t.ingin.lz.||.test_failed.$LI
5aa60 4e 45 4e 4f 0a 22 24 7b 4c 5a 49 50 7d 22 20 2d 74 20 3c 20 69 6e 67 69 6e 2e 6c 7a 20 7c 7c 20 NENO."${LZIP}".-t.<.ingin.lz.||.
5aa80 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
5aaa0 64 20 69 6e 67 69 6e 2e 6c 7a 20 3e 20 63 6f 70 79 20 7c 7c 20 74 65 73 74 5f 66 61 69 6c 65 64 d.ingin.lz.>.copy.||.test_failed
5aac0 20 24 4c 49 4e 45 4e 4f 0a 63 6d 70 20 69 6e 20 63 6f 70 79 20 7c 7c 20 74 65 73 74 5f 66 61 69 .$LINENO.cmp.in.copy.||.test_fai
5aae0 6c 65 64 20 24 4c 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 led.$LINENO."${LZIP}".-d.<.ingin
5ab00 2e 6c 7a 20 3e 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 .lz.>.copy.||.test_failed.$LINEN
5ab20 4f 0a 63 6d 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 O.cmp.in.copy.||.test_failed.$LI
5ab40 4e 45 4e 4f 0a 72 6d 20 2d 66 20 63 6f 70 79 20 69 6e 67 69 6e 2e 6c 7a 20 6f 75 74 20 7c 7c 20 NENO.rm.-f.copy.ingin.lz.out.||.
5ab60 66 72 61 6d 65 77 6f 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 framework_failure..echo.if.[.${f
5ab80 61 69 6c 7d 20 3d 20 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 ail}.=.0.].;.then..echo."tests.c
5aba0 6f 6d 70 6c 65 74 65 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 ompleted.successfully."..cd."${o
5abc0 62 6a 64 69 72 7d 22 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 bjdir}".&&.rm.-r.tmp.else..echo.
5abe0 22 74 65 73 74 73 20 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 "tests.failed.".fi.exit.${fail}.
5ac00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 74 65 73 74 2e 74 78 74 lzip-1.22-rc2/testsuite/test.txt
5ac20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5ac40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5ac60 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
5ac80 30 31 30 37 30 34 34 00 31 32 33 34 37 34 32 37 34 35 34 00 30 30 31 35 34 33 31 00 30 00 00 00 0107044.12347427454.0015431.0...
5aca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5acc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5ace0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5ad00 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...................
5ad20 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...................
5ad40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5ad60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5ad80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5ada0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5adc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5ade0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5ae00 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.
5ae20 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..................
5ae40 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
5ae60 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
5ae80 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e 2c 0a 20 35 31 20 46 72 61 6e 6b 6c are.Foundation,.Inc.,..51.Frankl
5aea0 69 6e 20 53 74 72 65 65 74 2c 20 46 69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73 74 6f 6e 2c 20 in.Street,.Fifth.Floor,.Boston,.
5aec0 4d 41 20 30 32 31 31 30 2d 31 33 30 31 20 55 53 41 0a 20 45 76 65 72 79 6f 6e 65 20 69 73 20 70 MA.02110-1301.USA..Everyone.is.p
5aee0 65 72 6d 69 74 74 65 64 20 74 6f 20 63 6f 70 79 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 ermitted.to.copy.and.distribute.
5af00 76 65 72 62 61 74 69 6d 20 63 6f 70 69 65 73 0a 20 6f 66 20 74 68 69 73 20 6c 69 63 65 6e 73 65 verbatim.copies..of.this.license
5af20 20 64 6f 63 75 6d 65 6e 74 2c 20 62 75 74 20 63 68 61 6e 67 69 6e 67 20 69 74 20 69 73 20 6e 6f .document,.but.changing.it.is.no
5af40 74 20 61 6c 6c 6f 77 65 64 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.allowed.......................
5af60 20 20 20 20 20 20 20 20 50 72 65 61 6d 62 6c 65 0a 0a 20 20 54 68 65 20 6c 69 63 65 6e 73 65 73 ........Preamble....The.licenses
5af80 20 66 6f 72 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 .for.most.software.are.designed.
5afa0 74 6f 20 74 61 6b 65 20 61 77 61 79 20 79 6f 75 72 0a 66 72 65 65 64 6f 6d 20 74 6f 20 73 68 61 to.take.away.your.freedom.to.sha
5afc0 72 65 20 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 re.and.change.it...By.contrast,.
5afe0 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 0a 4c 69 63 65 6e 73 65 20 69 the.GNU.General.Public.License.i
5b000 73 20 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 s.intended.to.guarantee.your.fre
5b020 65 64 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 0a 73 6f edom.to.share.and.change.free.so
5b040 66 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 ftware--to.make.sure.the.softwar
5b060 65 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 e.is.free.for.all.its.users...Th
5b080 69 73 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 is.General.Public.License.applie
5b0a0 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 0a 46 s.to.most.of.the.Free.Software.F
5b0c0 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 20 oundation's.software.and.to.any.
5b0e0 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 6d other.program.whose.authors.comm
5b100 69 74 20 74 6f 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 72 65 it.to.using.it...(Some.other.Fre
5b120 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 20 69 e.Software.Foundation.software.i
5b140 73 20 63 6f 76 65 72 65 64 20 62 79 0a 74 68 65 20 47 4e 55 20 4c 65 73 73 65 72 20 47 65 6e 65 s.covered.by.the.GNU.Lesser.Gene
5b160 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 20 59 6f ral.Public.License.instead.)..Yo
5b180 75 20 63 61 6e 20 61 70 70 6c 79 20 69 74 20 74 6f 0a 79 6f 75 72 20 70 72 6f 67 72 61 6d 73 2c u.can.apply.it.to.your.programs,
5b1a0 20 74 6f 6f 2e 0a 0a 20 20 57 68 65 6e 20 77 65 20 73 70 65 61 6b 20 6f 66 20 66 72 65 65 20 73 .too.....When.we.speak.of.free.s
5b1c0 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 74 6f 20 66 72 65 oftware,.we.are.referring.to.fre
5b1e0 65 64 6f 6d 2c 20 6e 6f 74 0a 70 72 69 63 65 2e 20 20 4f 75 72 20 47 65 6e 65 72 61 6c 20 50 75 edom,.not.price...Our.General.Pu
5b200 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 64 20 74 6f 20 6d 61 blic.Licenses.are.designed.to.ma
5b220 6b 65 20 73 75 72 65 20 74 68 61 74 20 79 6f 75 0a 68 61 76 65 20 74 68 65 20 66 72 65 65 64 6f ke.sure.that.you.have.the.freedo
5b240 6d 20 74 6f 20 64 69 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 66 72 65 65 20 73 m.to.distribute.copies.of.free.s
5b260 6f 66 74 77 61 72 65 20 28 61 6e 64 20 63 68 61 72 67 65 20 66 6f 72 0a 74 68 69 73 20 73 65 72 oftware.(and.charge.for.this.ser
5b280 76 69 63 65 20 69 66 20 79 6f 75 20 77 69 73 68 29 2c 20 74 68 61 74 20 79 6f 75 20 72 65 63 65 vice.if.you.wish),.that.you.rece
5b2a0 69 76 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 72 20 63 61 6e 20 67 65 74 20 69 74 0a 69 66 ive.source.code.or.can.get.it.if
5b2c0 20 79 6f 75 20 77 61 6e 74 20 69 74 2c 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 63 68 61 6e 67 .you.want.it,.that.you.can.chang
5b2e0 65 20 74 68 65 20 73 6f 66 74 77 61 72 65 20 6f 72 20 75 73 65 20 70 69 65 63 65 73 20 6f 66 20 e.the.software.or.use.pieces.of.
5b300 69 74 0a 69 6e 20 6e 65 77 20 66 72 65 65 20 70 72 6f 67 72 61 6d 73 3b 20 61 6e 64 20 74 68 61 it.in.new.free.programs;.and.tha
5b320 74 20 79 6f 75 20 6b 6e 6f 77 20 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 65 73 65 20 74 68 69 6e t.you.know.you.can.do.these.thin
5b340 67 73 2e 0a 0a 20 20 54 6f 20 70 72 6f 74 65 63 74 20 79 6f 75 72 20 72 69 67 68 74 73 2c 20 77 gs.....To.protect.your.rights,.w
5b360 65 20 6e 65 65 64 20 74 6f 20 6d 61 6b 65 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 74 68 61 74 e.need.to.make.restrictions.that
5b380 20 66 6f 72 62 69 64 0a 61 6e 79 6f 6e 65 20 74 6f 20 64 65 6e 79 20 79 6f 75 20 74 68 65 73 65 .forbid.anyone.to.deny.you.these
5b3a0 20 72 69 67 68 74 73 20 6f 72 20 74 6f 20 61 73 6b 20 79 6f 75 20 74 6f 20 73 75 72 72 65 6e 64 .rights.or.to.ask.you.to.surrend
5b3c0 65 72 20 74 68 65 20 72 69 67 68 74 73 2e 0a 54 68 65 73 65 20 72 65 73 74 72 69 63 74 69 6f 6e er.the.rights..These.restriction
5b3e0 73 20 74 72 61 6e 73 6c 61 74 65 20 74 6f 20 63 65 72 74 61 69 6e 20 72 65 73 70 6f 6e 73 69 62 s.translate.to.certain.responsib
5b400 69 6c 69 74 69 65 73 20 66 6f 72 20 79 6f 75 20 69 66 20 79 6f 75 0a 64 69 73 74 72 69 62 75 74 ilities.for.you.if.you.distribut
5b420 65 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 73 6f 66 74 77 61 72 65 2c 20 6f 72 20 69 66 20 e.copies.of.the.software,.or.if.
5b440 79 6f 75 20 6d 6f 64 69 66 79 20 69 74 2e 0a 0a 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 you.modify.it.....For.example,.i
5b460 66 20 79 6f 75 20 64 69 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 73 75 63 68 20 f.you.distribute.copies.of.such.
5b480 61 20 70 72 6f 67 72 61 6d 2c 20 77 68 65 74 68 65 72 0a 67 72 61 74 69 73 20 6f 72 20 66 6f 72 a.program,.whether.gratis.or.for
5b4a0 20 61 20 66 65 65 2c 20 79 6f 75 20 6d 75 73 74 20 67 69 76 65 20 74 68 65 20 72 65 63 69 70 69 .a.fee,.you.must.give.the.recipi
5b4c0 65 6e 74 73 20 61 6c 6c 20 74 68 65 20 72 69 67 68 74 73 20 74 68 61 74 0a 79 6f 75 20 68 61 76 ents.all.the.rights.that.you.hav
5b4e0 65 2e 20 20 59 6f 75 20 6d 75 73 74 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 74 68 65 79 e...You.must.make.sure.that.they
5b500 2c 20 74 6f 6f 2c 20 72 65 63 65 69 76 65 20 6f 72 20 63 61 6e 20 67 65 74 20 74 68 65 0a 73 6f ,.too,.receive.or.can.get.the.so
5b520 75 72 63 65 20 63 6f 64 65 2e 20 20 41 6e 64 20 79 6f 75 20 6d 75 73 74 20 73 68 6f 77 20 74 68 urce.code...And.you.must.show.th
5b540 65 6d 20 74 68 65 73 65 20 74 65 72 6d 73 20 73 6f 20 74 68 65 79 20 6b 6e 6f 77 20 74 68 65 69 em.these.terms.so.they.know.thei
5b560 72 0a 72 69 67 68 74 73 2e 0a 0a 20 20 57 65 20 70 72 6f 74 65 63 74 20 79 6f 75 72 20 72 69 67 r.rights.....We.protect.your.rig
5b580 68 74 73 20 77 69 74 68 20 74 77 6f 20 73 74 65 70 73 3a 20 28 31 29 20 63 6f 70 79 72 69 67 68 hts.with.two.steps:.(1).copyrigh
5b5a0 74 20 74 68 65 20 73 6f 66 74 77 61 72 65 2c 20 61 6e 64 0a 28 32 29 20 6f 66 66 65 72 20 79 6f t.the.software,.and.(2).offer.yo
5b5c0 75 20 74 68 69 73 20 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 u.this.license.which.gives.you.l
5b5e0 65 67 61 6c 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 egal.permission.to.copy,.distrib
5b600 75 74 65 20 61 6e 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 0a ute.and/or.modify.the.software..
5b620 0a 20 20 41 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 ...Also,.for.each.author's.prote
5b640 63 74 69 6f 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 ction.and.ours,.we.want.to.make.
5b660 63 65 72 74 61 69 6e 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 certain.that.everyone.understand
5b680 73 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 20 66 6f 72 20 s.that.there.is.no.warranty.for.
5b6a0 74 68 69 73 20 66 72 65 65 0a 73 6f 66 74 77 61 72 65 2e 20 20 49 66 20 74 68 65 20 73 6f 66 74 this.free.software...If.the.soft
5b6c0 77 61 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 ware.is.modified.by.someone.else
5b6e0 20 61 6e 64 20 70 61 73 73 65 64 20 6f 6e 2c 20 77 65 0a 77 61 6e 74 20 69 74 73 20 72 65 63 69 .and.passed.on,.we.want.its.reci
5b700 70 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 pients.to.know.that.what.they.ha
5b720 76 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 0a 74 68 61 74 20 ve.is.not.the.original,.so.that.
5b740 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
5b760 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
5b780 61 6c 0a 61 75 74 68 6f 72 73 27 20 72 65 70 75 74 61 74 69 6f 6e 73 2e 0a 0a 20 20 46 69 6e 61 al.authors'.reputations.....Fina
5b7a0 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 61 74 65 lly,.any.free.program.is.threate
5b7c0 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 0a 70 61 74 65 6e ned.constantly.by.software.paten
5b7e0 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 6e 67 65 72 ts...We.wish.to.avoid.the.danger
5b800 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 65 65 0a 70 .that.redistributors.of.a.free.p
5b820 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 74 61 69 6e 20 rogram.will.individually.obtain.
5b840 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 6d 61 6b 69 6e patent.licenses,.in.effect.makin
5b860 67 20 74 68 65 0a 70 72 6f 67 72 61 6d 20 70 72 6f 70 72 69 65 74 61 72 79 2e 20 20 54 6f 20 70 g.the.program.proprietary...To.p
5b880 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 69 74 20 63 6c 65 revent.this,.we.have.made.it.cle
5b8a0 61 72 20 74 68 61 74 20 61 6e 79 0a 70 61 74 65 6e 74 20 6d 75 73 74 20 62 65 20 6c 69 63 65 6e ar.that.any.patent.must.be.licen
5b8c0 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 73 65 20 6f 72 20 6e sed.for.everyone's.free.use.or.n
5b8e0 6f 74 20 6c 69 63 65 6e 73 65 64 20 61 74 20 61 6c 6c 2e 0a 0a 20 20 54 68 65 20 70 72 65 63 69 ot.licensed.at.all.....The.preci
5b900 73 65 20 74 65 72 6d 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 se.terms.and.conditions.for.copy
5b920 69 6e 67 2c 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 0a 6d 6f 64 69 66 69 63 61 74 69 ing,.distribution.and.modificati
5b940 6f 6e 20 66 6f 6c 6c 6f 77 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 on.follow.......................
5b960 47 4e 55 20 47 45 4e 45 52 41 4c 20 50 55 42 4c 49 43 20 4c 49 43 45 4e 53 45 0a 20 20 20 54 45 GNU.GENERAL.PUBLIC.LICENSE....TE
5b980 52 4d 53 20 41 4e 44 20 43 4f 4e 44 49 54 49 4f 4e 53 20 46 4f 52 20 43 4f 50 59 49 4e 47 2c 20 RMS.AND.CONDITIONS.FOR.COPYING,.
5b9a0 44 49 53 54 52 49 42 55 54 49 4f 4e 20 41 4e 44 20 4d 4f 44 49 46 49 43 41 54 49 4f 4e 0a 0a 20 DISTRIBUTION.AND.MODIFICATION...
5b9c0 20 30 2e 20 54 68 69 73 20 4c 69 63 65 6e 73 65 20 61 70 70 6c 69 65 73 20 74 6f 20 61 6e 79 20 .0..This.License.applies.to.any.
5b9e0 70 72 6f 67 72 61 6d 20 6f 72 20 6f 74 68 65 72 20 77 6f 72 6b 20 77 68 69 63 68 20 63 6f 6e 74 program.or.other.work.which.cont
5ba00 61 69 6e 73 0a 61 20 6e 6f 74 69 63 65 20 70 6c 61 63 65 64 20 62 79 20 74 68 65 20 63 6f 70 79 ains.a.notice.placed.by.the.copy
5ba20 72 69 67 68 74 20 68 6f 6c 64 65 72 20 73 61 79 69 6e 67 20 69 74 20 6d 61 79 20 62 65 20 64 69 right.holder.saying.it.may.be.di
5ba40 73 74 72 69 62 75 74 65 64 0a 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 69 stributed.under.the.terms.of.thi
5ba60 73 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 2e 20 20 54 68 65 20 22 s.General.Public.License...The."
5ba80 50 72 6f 67 72 61 6d 22 2c 20 62 65 6c 6f 77 2c 0a 72 65 66 65 72 73 20 74 6f 20 61 6e 79 20 73 Program",.below,.refers.to.any.s
5baa0 75 63 68 20 70 72 6f 67 72 61 6d 20 6f 72 20 77 6f 72 6b 2c 20 61 6e 64 20 61 20 22 77 6f 72 6b uch.program.or.work,.and.a."work
5bac0 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 22 0a 6d 65 61 6e 73 20 65 69 74 .based.on.the.Program".means.eit
5bae0 68 65 72 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 6e 79 20 64 65 72 69 76 61 74 69 76 her.the.Program.or.any.derivativ
5bb00 65 20 77 6f 72 6b 20 75 6e 64 65 72 20 63 6f 70 79 72 69 67 68 74 20 6c 61 77 3a 0a 74 68 61 74 e.work.under.copyright.law:.that
5bb20 20 69 73 20 74 6f 20 73 61 79 2c 20 61 20 77 6f 72 6b 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 .is.to.say,.a.work.containing.th
5bb40 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 20 70 6f 72 74 69 6f 6e 20 6f 66 20 69 74 2c 0a 65 69 e.Program.or.a.portion.of.it,.ei
5bb60 74 68 65 72 20 76 65 72 62 61 74 69 6d 20 6f 72 20 77 69 74 68 20 6d 6f 64 69 66 69 63 61 74 69 ther.verbatim.or.with.modificati
5bb80 6f 6e 73 20 61 6e 64 2f 6f 72 20 74 72 61 6e 73 6c 61 74 65 64 20 69 6e 74 6f 20 61 6e 6f 74 68 ons.and/or.translated.into.anoth
5bba0 65 72 0a 6c 61 6e 67 75 61 67 65 2e 20 20 28 48 65 72 65 69 6e 61 66 74 65 72 2c 20 74 72 61 6e er.language...(Hereinafter,.tran
5bbc0 73 6c 61 74 69 6f 6e 20 69 73 20 69 6e 63 6c 75 64 65 64 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 slation.is.included.without.limi
5bbe0 74 61 74 69 6f 6e 20 69 6e 0a 74 68 65 20 74 65 72 6d 20 22 6d 6f 64 69 66 69 63 61 74 69 6f 6e tation.in.the.term."modification
5bc00 22 2e 29 20 20 45 61 63 68 20 6c 69 63 65 6e 73 65 65 20 69 73 20 61 64 64 72 65 73 73 65 64 20 ".)..Each.licensee.is.addressed.
5bc20 61 73 20 22 79 6f 75 22 2e 0a 0a 41 63 74 69 76 69 74 69 65 73 20 6f 74 68 65 72 20 74 68 61 6e as."you"...Activities.other.than
5bc40 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 20 6d 6f 64 69 66 .copying,.distribution.and.modif
5bc60 69 63 61 74 69 6f 6e 20 61 72 65 20 6e 6f 74 0a 63 6f 76 65 72 65 64 20 62 79 20 74 68 69 73 20 ication.are.not.covered.by.this.
5bc80 4c 69 63 65 6e 73 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 License;.they.are.outside.its.sc
5bca0 6f 70 65 2e 20 20 54 68 65 20 61 63 74 20 6f 66 0a 72 75 6e 6e 69 6e 67 20 74 68 65 20 50 72 6f ope...The.act.of.running.the.Pro
5bcc0 67 72 61 6d 20 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 gram.is.not.restricted,.and.the.
5bce0 6f 75 74 70 75 74 20 66 72 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 0a 69 73 20 63 6f 76 65 72 output.from.the.Program.is.cover
5bd00 65 64 20 6f 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 ed.only.if.its.contents.constitu
5bd20 74 65 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 65 0a 50 72 6f 67 72 61 6d 20 28 te.a.work.based.on.the.Program.(
5bd40 69 6e 64 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 independent.of.having.been.made.
5bd60 62 79 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 29 2e 0a 57 68 65 74 68 65 72 by.running.the.Program)..Whether
5bd80 20 74 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 .that.is.true.depends.on.what.th
5bda0 65 20 50 72 6f 67 72 61 6d 20 64 6f 65 73 2e 0a 0a 20 20 31 2e 20 59 6f 75 20 6d 61 79 20 63 6f e.Program.does.....1..You.may.co
5bdc0 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
5bde0 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 27 73 0a 73 6f 75 72 63 65 20 63 6f 64 65 20 61 s.of.the.Program's.source.code.a
5be00 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 2c s.you.receive.it,.in.any.medium,
5be20 20 70 72 6f 76 69 64 65 64 20 74 68 61 74 20 79 6f 75 0a 63 6f 6e 73 70 69 63 75 6f 75 73 6c 79 .provided.that.you.conspicuously
5be40 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 65 61 .and.appropriately.publish.on.ea
5be60 63 68 20 63 6f 70 79 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 0a 63 6f 70 79 72 69 67 68 74 ch.copy.an.appropriate.copyright
5be80 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 72 61 6e .notice.and.disclaimer.of.warran
5bea0 74 79 3b 20 6b 65 65 70 20 69 6e 74 61 63 74 20 61 6c 6c 20 74 68 65 0a 6e 6f 74 69 63 65 73 20 ty;.keep.intact.all.the.notices.
5bec0 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 6e 64 20 74 that.refer.to.this.License.and.t
5bee0 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 79 3b 0a 61 o.the.absence.of.any.warranty;.a
5bf00 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 73 20 6f 66 20 nd.give.any.other.recipients.of.
5bf20 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 4c 69 63 65 6e the.Program.a.copy.of.this.Licen
5bf40 73 65 0a 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 50 72 6f 67 72 61 6d 2e 0a 0a 59 6f 75 20 se.along.with.the.Program...You.
5bf60 6d 61 79 20 63 68 61 72 67 65 20 61 20 66 65 65 20 66 6f 72 20 74 68 65 20 70 68 79 73 69 63 61 may.charge.a.fee.for.the.physica
5bf80 6c 20 61 63 74 20 6f 66 20 74 72 61 6e 73 66 65 72 72 69 6e 67 20 61 20 63 6f 70 79 2c 20 61 6e l.act.of.transferring.a.copy,.an
5bfa0 64 0a 79 6f 75 20 6d 61 79 20 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 20 6f 66 66 65 72 20 77 d.you.may.at.your.option.offer.w
5bfc0 61 72 72 61 6e 74 79 20 70 72 6f 74 65 63 74 69 6f 6e 20 69 6e 20 65 78 63 68 61 6e 67 65 20 66 arranty.protection.in.exchange.f
5bfe0 6f 72 20 61 20 66 65 65 2e 0a 0a 20 20 32 2e 20 59 6f 75 20 6d 61 79 20 6d 6f 64 69 66 79 20 79 or.a.fee.....2..You.may.modify.y
5c000 6f 75 72 20 63 6f 70 79 20 6f 72 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 our.copy.or.copies.of.the.Progra
5c020 6d 20 6f 72 20 61 6e 79 20 70 6f 72 74 69 6f 6e 0a 6f 66 20 69 74 2c 20 74 68 75 73 20 66 6f 72 m.or.any.portion.of.it,.thus.for
5c040 6d 69 6e 67 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 ming.a.work.based.on.the.Program
5c060 2c 20 61 6e 64 20 63 6f 70 79 20 61 6e 64 0a 64 69 73 74 72 69 62 75 74 65 20 73 75 63 68 20 6d ,.and.copy.and.distribute.such.m
5c080 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 6f 72 20 77 6f 72 6b 20 75 6e 64 65 72 20 74 68 65 20 74 odifications.or.work.under.the.t
5c0a0 65 72 6d 73 20 6f 66 20 53 65 63 74 69 6f 6e 20 31 0a 61 62 6f 76 65 2c 20 70 72 6f 76 69 64 65 erms.of.Section.1.above,.provide
5c0c0 64 20 74 68 61 74 20 79 6f 75 20 61 6c 73 6f 20 6d 65 65 74 20 61 6c 6c 20 6f 66 20 74 68 65 73 d.that.you.also.meet.all.of.thes
5c0e0 65 20 63 6f 6e 64 69 74 69 6f 6e 73 3a 0a 0a 20 20 20 20 61 29 20 59 6f 75 20 6d 75 73 74 20 63 e.conditions:......a).You.must.c
5c100 61 75 73 65 20 74 68 65 20 6d 6f 64 69 66 69 65 64 20 66 69 6c 65 73 20 74 6f 20 63 61 72 72 79 ause.the.modified.files.to.carry
5c120 20 70 72 6f 6d 69 6e 65 6e 74 20 6e 6f 74 69 63 65 73 0a 20 20 20 20 73 74 61 74 69 6e 67 20 74 .prominent.notices.....stating.t
5c140 68 61 74 20 79 6f 75 20 63 68 61 6e 67 65 64 20 74 68 65 20 66 69 6c 65 73 20 61 6e 64 20 74 68 hat.you.changed.the.files.and.th
5c160 65 20 64 61 74 65 20 6f 66 20 61 6e 79 20 63 68 61 6e 67 65 2e 0a 0a 20 20 20 20 62 29 20 59 6f e.date.of.any.change.......b).Yo
5c180 75 20 6d 75 73 74 20 63 61 75 73 65 20 61 6e 79 20 77 6f 72 6b 20 74 68 61 74 20 79 6f 75 20 64 u.must.cause.any.work.that.you.d
5c1a0 69 73 74 72 69 62 75 74 65 20 6f 72 20 70 75 62 6c 69 73 68 2c 20 74 68 61 74 20 69 6e 0a 20 20 istribute.or.publish,.that.in...
5c1c0 20 20 77 68 6f 6c 65 20 6f 72 20 69 6e 20 70 61 72 74 20 63 6f 6e 74 61 69 6e 73 20 6f 72 20 69 ..whole.or.in.part.contains.or.i
5c1e0 73 20 64 65 72 69 76 65 64 20 66 72 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 6e s.derived.from.the.Program.or.an
5c200 79 0a 20 20 20 20 70 61 72 74 20 74 68 65 72 65 6f 66 2c 20 74 6f 20 62 65 20 6c 69 63 65 6e 73 y.....part.thereof,.to.be.licens
5c220 65 64 20 61 73 20 61 20 77 68 6f 6c 65 20 61 74 20 6e 6f 20 63 68 61 72 67 65 20 74 6f 20 61 6c ed.as.a.whole.at.no.charge.to.al
5c240 6c 20 74 68 69 72 64 0a 20 20 20 20 70 61 72 74 69 65 73 20 75 6e 64 65 72 20 74 68 65 20 74 65 l.third.....parties.under.the.te
5c260 72 6d 73 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 20 20 63 29 20 49 66 20 rms.of.this.License.......c).If.
5c280 74 68 65 20 6d 6f 64 69 66 69 65 64 20 70 72 6f 67 72 61 6d 20 6e 6f 72 6d 61 6c 6c 79 20 72 65 the.modified.program.normally.re
5c2a0 61 64 73 20 63 6f 6d 6d 61 6e 64 73 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 0a 20 20 20 20 77 ads.commands.interactively.....w
5c2c0 68 65 6e 20 72 75 6e 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 hen.run,.you.must.cause.it,.when
5c2e0 20 73 74 61 72 74 65 64 20 72 75 6e 6e 69 6e 67 20 66 6f 72 20 73 75 63 68 0a 20 20 20 20 69 6e .started.running.for.such.....in
5c300 74 65 72 61 63 74 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 teractive.use.in.the.most.ordina
5c320 72 79 20 77 61 79 2c 20 74 6f 20 70 72 69 6e 74 20 6f 72 20 64 69 73 70 6c 61 79 20 61 6e 0a 20 ry.way,.to.print.or.display.an..
5c340 20 20 20 61 6e 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 ...announcement.including.an.app
5c360 72 6f 70 72 69 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 0a ropriate.copyright.notice.and.a.
5c380 20 20 20 20 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 ....notice.that.there.is.no.warr
5c3a0 61 6e 74 79 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 anty.(or.else,.saying.that.you.p
5c3c0 72 6f 76 69 64 65 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 rovide.....a.warranty).and.that.
5c3e0 75 73 65 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 users.may.redistribute.the.progr
5c400 61 6d 20 75 6e 64 65 72 0a 20 20 20 20 74 68 65 73 65 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 61 am.under.....these.conditions,.a
5c420 6e 64 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 nd.telling.the.user.how.to.view.
5c440 61 20 63 6f 70 79 20 6f 66 20 74 68 69 73 0a 20 20 20 20 4c 69 63 65 6e 73 65 2e 20 20 28 45 78 a.copy.of.this.....License...(Ex
5c460 63 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 ception:.if.the.Program.itself.i
5c480 73 20 69 6e 74 65 72 61 63 74 69 76 65 20 62 75 74 0a 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 6e s.interactive.but.....does.not.n
5c4a0 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
5c4c0 6e 74 2c 20 79 6f 75 72 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 0a 20 20 20 20 74 68 65 20 50 nt,.your.work.based.on.....the.P
5c4e0 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 20 rogram.is.not.required.to.print.
5c500 61 6e 20 61 6e 6e 6f 75 6e 63 65 6d 65 6e 74 2e 29 0a 0a 54 68 65 73 65 20 72 65 71 75 69 72 65 an.announcement.)..These.require
5c520 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 6f 72 6b ments.apply.to.the.modified.work
5c540 20 61 73 20 61 20 77 68 6f 6c 65 2e 20 20 49 66 0a 69 64 65 6e 74 69 66 69 61 62 6c 65 20 73 65 .as.a.whole...If.identifiable.se
5c560 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 64 65 72 69 ctions.of.that.work.are.not.deri
5c580 76 65 64 20 66 72 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 2c 0a 61 6e 64 20 63 61 6e 20 62 65 ved.from.the.Program,.and.can.be
5c5a0 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 70 65 6e 64 65 .reasonably.considered.independe
5c5c0 6e 74 20 61 6e 64 20 73 65 70 61 72 61 74 65 20 77 6f 72 6b 73 20 69 6e 0a 74 68 65 6d 73 65 6c nt.and.separate.works.in.themsel
5c5e0 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 64 20 69 74 73 20 ves,.then.this.License,.and.its.
5c600 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 73 65 0a 73 65 63 terms,.do.not.apply.to.those.sec
5c620 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 20 74 68 65 6d 20 61 tions.when.you.distribute.them.a
5c640 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 65 6e 20 79 6f 75 0a s.separate.works...But.when.you.
5c660 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 73 61 6d 65 20 73 65 63 74 69 6f 6e 73 20 61 73 20 distribute.the.same.sections.as.
5c680 70 61 72 74 20 6f 66 20 61 20 77 68 6f 6c 65 20 77 68 69 63 68 20 69 73 20 61 20 77 6f 72 6b 20 part.of.a.whole.which.is.a.work.
5c6a0 62 61 73 65 64 0a 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 2c 20 74 68 65 20 64 69 73 74 72 69 based.on.the.Program,.the.distri
5c6c0 62 75 74 69 6f 6e 20 6f 66 20 74 68 65 20 77 68 6f 6c 65 20 6d 75 73 74 20 62 65 20 6f 6e 20 74 bution.of.the.whole.must.be.on.t
5c6e0 68 65 20 74 65 72 6d 73 20 6f 66 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 77 68 6f 73 65 20 he.terms.of.this.License,.whose.
5c700 70 65 72 6d 69 73 73 69 6f 6e 73 20 66 6f 72 20 6f 74 68 65 72 20 6c 69 63 65 6e 73 65 65 73 20 permissions.for.other.licensees.
5c720 65 78 74 65 6e 64 20 74 6f 20 74 68 65 0a 65 6e 74 69 72 65 20 77 68 6f 6c 65 2c 20 61 6e 64 20 extend.to.the.entire.whole,.and.
5c740 74 68 75 73 20 74 6f 20 65 61 63 68 20 61 6e 64 20 65 76 65 72 79 20 70 61 72 74 20 72 65 67 61 thus.to.each.and.every.part.rega
5c760 72 64 6c 65 73 73 20 6f 66 20 77 68 6f 20 77 72 6f 74 65 20 69 74 2e 0a 0a 54 68 75 73 2c 20 69 rdless.of.who.wrote.it...Thus,.i
5c780 74 20 69 73 20 6e 6f 74 20 74 68 65 20 69 6e 74 65 6e 74 20 6f 66 20 74 68 69 73 20 73 65 63 74 t.is.not.the.intent.of.this.sect
5c7a0 69 6f 6e 20 74 6f 20 63 6c 61 69 6d 20 72 69 67 68 74 73 20 6f 72 20 63 6f 6e 74 65 73 74 0a 79 ion.to.claim.rights.or.contest.y
5c7c0 6f 75 72 20 72 69 67 68 74 73 20 74 6f 20 77 6f 72 6b 20 77 72 69 74 74 65 6e 20 65 6e 74 69 72 our.rights.to.work.written.entir
5c7e0 65 6c 79 20 62 79 20 79 6f 75 3b 20 72 61 74 68 65 72 2c 20 74 68 65 20 69 6e 74 65 6e 74 20 69 ely.by.you;.rather,.the.intent.i
5c800 73 20 74 6f 0a 65 78 65 72 63 69 73 65 20 74 68 65 20 72 69 67 68 74 20 74 6f 20 63 6f 6e 74 72 s.to.exercise.the.right.to.contr
5c820 6f 6c 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 64 65 72 69 76 61 74 69 76 ol.the.distribution.of.derivativ
5c840 65 20 6f 72 0a 63 6f 6c 6c 65 63 74 69 76 65 20 77 6f 72 6b 73 20 62 61 73 65 64 20 6f 6e 20 74 e.or.collective.works.based.on.t
5c860 68 65 20 50 72 6f 67 72 61 6d 2e 0a 0a 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20 6d 65 72 65 20 61 he.Program...In.addition,.mere.a
5c880 67 67 72 65 67 61 74 69 6f 6e 20 6f 66 20 61 6e 6f 74 68 65 72 20 77 6f 72 6b 20 6e 6f 74 20 62 ggregation.of.another.work.not.b
5c8a0 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 0a 77 69 74 68 20 74 68 65 20 50 72 6f ased.on.the.Program.with.the.Pro
5c8c0 67 72 61 6d 20 28 6f 72 20 77 69 74 68 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 74 68 gram.(or.with.a.work.based.on.th
5c8e0 65 20 50 72 6f 67 72 61 6d 29 20 6f 6e 20 61 20 76 6f 6c 75 6d 65 20 6f 66 0a 61 20 73 74 6f 72 e.Program).on.a.volume.of.a.stor
5c900 61 67 65 20 6f 72 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6d 65 64 69 75 6d 20 64 6f 65 73 20 age.or.distribution.medium.does.
5c920 6e 6f 74 20 62 72 69 6e 67 20 74 68 65 20 6f 74 68 65 72 20 77 6f 72 6b 20 75 6e 64 65 72 0a 74 not.bring.the.other.work.under.t
5c940 68 65 20 73 63 6f 70 65 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 33 2e 20 he.scope.of.this.License.....3..
5c960 59 6f 75 20 6d 61 79 20 63 6f 70 79 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 You.may.copy.and.distribute.the.
5c980 50 72 6f 67 72 61 6d 20 28 6f 72 20 61 20 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 20 69 74 2c 0a Program.(or.a.work.based.on.it,.
5c9a0 75 6e 64 65 72 20 53 65 63 74 69 6f 6e 20 32 29 20 69 6e 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 under.Section.2).in.object.code.
5c9c0 6f 72 20 65 78 65 63 75 74 61 62 6c 65 20 66 6f 72 6d 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 or.executable.form.under.the.ter
5c9e0 6d 73 20 6f 66 0a 53 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 ms.of.Sections.1.and.2.above.pro
5ca00 76 69 64 65 64 20 74 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 vided.that.you.also.do.one.of.th
5ca20 65 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 0a 20 20 20 20 61 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 e.following:......a).Accompany.i
5ca40 74 20 77 69 74 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 t.with.the.complete.correspondin
5ca60 67 20 6d 61 63 68 69 6e 65 2d 72 65 61 64 61 62 6c 65 0a 20 20 20 20 73 6f 75 72 63 65 20 63 6f g.machine-readable.....source.co
5ca80 64 65 2c 20 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 de,.which.must.be.distributed.un
5caa0 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 0a 20 20 20 20 31 20 der.the.terms.of.Sections.....1.
5cac0 61 6e 64 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 and.2.above.on.a.medium.customar
5cae0 69 6c 79 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 ily.used.for.software.interchang
5cb00 65 3b 20 6f 72 2c 0a 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 e;.or,......b).Accompany.it.with
5cb20 20 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 .a.written.offer,.valid.for.at.l
5cb40 65 61 73 74 20 74 68 72 65 65 0a 20 20 20 20 79 65 61 72 73 2c 20 74 6f 20 67 69 76 65 20 61 6e east.three.....years,.to.give.an
5cb60 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
5cb80 6f 72 65 20 74 68 61 6e 20 79 6f 75 72 0a 20 20 20 20 63 6f 73 74 20 6f 66 20 70 68 79 73 69 63 ore.than.your.....cost.of.physic
5cba0 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 74 ally.performing.source.distribut
5cbc0 69 6f 6e 2c 20 61 20 63 6f 6d 70 6c 65 74 65 0a 20 20 20 20 6d 61 63 68 69 6e 65 2d 72 65 61 64 ion,.a.complete.....machine-read
5cbe0 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 20 73 able.copy.of.the.corresponding.s
5cc00 6f 75 72 63 65 20 63 6f 64 65 2c 20 74 6f 20 62 65 0a 20 20 20 20 64 69 73 74 72 69 62 75 74 65 ource.code,.to.be.....distribute
5cc20 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 20 31 20 d.under.the.terms.of.Sections.1.
5cc40 61 6e 64 20 32 20 61 62 6f 76 65 20 6f 6e 20 61 20 6d 65 64 69 75 6d 0a 20 20 20 20 63 75 73 74 and.2.above.on.a.medium.....cust
5cc60 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 74 65 72 63 omarily.used.for.software.interc
5cc80 68 61 6e 67 65 3b 20 6f 72 2c 0a 0a 20 20 20 20 63 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 74 20 hange;.or,......c).Accompany.it.
5cca0 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 65 63 65 69 76 65 with.the.information.you.receive
5ccc0 64 20 61 73 20 74 6f 20 74 68 65 20 6f 66 66 65 72 0a 20 20 20 20 74 6f 20 64 69 73 74 72 69 62 d.as.to.the.offer.....to.distrib
5cce0 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 63 6f 64 65 2e 20 20 ute.corresponding.source.code...
5cd00 28 54 68 69 73 20 61 6c 74 65 72 6e 61 74 69 76 65 20 69 73 0a 20 20 20 20 61 6c 6c 6f 77 65 64 (This.alternative.is.....allowed
5cd20 20 6f 6e 6c 79 20 66 6f 72 20 6e 6f 6e 63 6f 6d 6d 65 72 63 69 61 6c 20 64 69 73 74 72 69 62 75 .only.for.noncommercial.distribu
5cd40 74 69 6f 6e 20 61 6e 64 20 6f 6e 6c 79 20 69 66 20 79 6f 75 0a 20 20 20 20 72 65 63 65 69 76 65 tion.and.only.if.you.....receive
5cd60 64 20 74 68 65 20 70 72 6f 67 72 61 6d 20 69 6e 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 6f 72 20 d.the.program.in.object.code.or.
5cd80 65 78 65 63 75 74 61 62 6c 65 20 66 6f 72 6d 20 77 69 74 68 20 73 75 63 68 0a 20 20 20 20 61 6e executable.form.with.such.....an
5cda0 20 6f 66 66 65 72 2c 20 69 6e 20 61 63 63 6f 72 64 20 77 69 74 68 20 53 75 62 73 65 63 74 69 6f .offer,.in.accord.with.Subsectio
5cdc0 6e 20 62 20 61 62 6f 76 65 2e 29 0a 0a 54 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 6f 72 n.b.above.)..The.source.code.for
5cde0 20 61 20 77 6f 72 6b 20 6d 65 61 6e 73 20 74 68 65 20 70 72 65 66 65 72 72 65 64 20 66 6f 72 6d .a.work.means.the.preferred.form
5ce00 20 6f 66 20 74 68 65 20 77 6f 72 6b 20 66 6f 72 0a 6d 61 6b 69 6e 67 20 6d 6f 64 69 66 69 63 61 .of.the.work.for.making.modifica
5ce20 74 69 6f 6e 73 20 74 6f 20 69 74 2e 20 20 46 6f 72 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 20 tions.to.it...For.an.executable.
5ce40 77 6f 72 6b 2c 20 63 6f 6d 70 6c 65 74 65 20 73 6f 75 72 63 65 0a 63 6f 64 65 20 6d 65 61 6e 73 work,.complete.source.code.means
5ce60 20 61 6c 6c 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 6f 72 20 61 6c 6c 20 6d 6f 64 .all.the.source.code.for.all.mod
5ce80 75 6c 65 73 20 69 74 20 63 6f 6e 74 61 69 6e 73 2c 20 70 6c 75 73 20 61 6e 79 0a 61 73 73 6f 63 ules.it.contains,.plus.any.assoc
5cea0 69 61 74 65 64 20 69 6e 74 65 72 66 61 63 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 66 69 6c 65 73 iated.interface.definition.files
5cec0 2c 20 70 6c 75 73 20 74 68 65 20 73 63 72 69 70 74 73 20 75 73 65 64 20 74 6f 0a 63 6f 6e 74 72 ,.plus.the.scripts.used.to.contr
5cee0 6f 6c 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 61 6e 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 ol.compilation.and.installation.
5cf00 6f 66 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 2e 20 20 48 6f 77 65 76 65 72 2c 20 61 73 20 of.the.executable...However,.as.
5cf20 61 0a 73 70 65 63 69 61 6c 20 65 78 63 65 70 74 69 6f 6e 2c 20 74 68 65 20 73 6f 75 72 63 65 20 a.special.exception,.the.source.
5cf40 63 6f 64 65 20 64 69 73 74 72 69 62 75 74 65 64 20 6e 65 65 64 20 6e 6f 74 20 69 6e 63 6c 75 64 code.distributed.need.not.includ
5cf60 65 0a 61 6e 79 74 68 69 6e 67 20 74 68 61 74 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 64 69 73 74 e.anything.that.is.normally.dist
5cf80 72 69 62 75 74 65 64 20 28 69 6e 20 65 69 74 68 65 72 20 73 6f 75 72 63 65 20 6f 72 20 62 69 6e ributed.(in.either.source.or.bin
5cfa0 61 72 79 0a 66 6f 72 6d 29 20 77 69 74 68 20 74 68 65 20 6d 61 6a 6f 72 20 63 6f 6d 70 6f 6e 65 ary.form).with.the.major.compone
5cfc0 6e 74 73 20 28 63 6f 6d 70 69 6c 65 72 2c 20 6b 65 72 6e 65 6c 2c 20 61 6e 64 20 73 6f 20 6f 6e nts.(compiler,.kernel,.and.so.on
5cfe0 29 20 6f 66 20 74 68 65 0a 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 6f 6e 20 77 68 69 ).of.the.operating.system.on.whi
5d000 63 68 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 20 72 75 6e 73 2c 20 75 6e 6c 65 73 73 20 74 ch.the.executable.runs,.unless.t
5d020 68 61 74 20 63 6f 6d 70 6f 6e 65 6e 74 0a 69 74 73 65 6c 66 20 61 63 63 6f 6d 70 61 6e 69 65 73 hat.component.itself.accompanies
5d040 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 2e 0a 0a 49 66 20 64 69 73 74 72 69 62 75 74 69 6f .the.executable...If.distributio
5d060 6e 20 6f 66 20 65 78 65 63 75 74 61 62 6c 65 20 6f 72 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 69 n.of.executable.or.object.code.i
5d080 73 20 6d 61 64 65 20 62 79 20 6f 66 66 65 72 69 6e 67 0a 61 63 63 65 73 73 20 74 6f 20 63 6f 70 s.made.by.offering.access.to.cop
5d0a0 79 20 66 72 6f 6d 20 61 20 64 65 73 69 67 6e 61 74 65 64 20 70 6c 61 63 65 2c 20 74 68 65 6e 20 y.from.a.designated.place,.then.
5d0c0 6f 66 66 65 72 69 6e 67 20 65 71 75 69 76 61 6c 65 6e 74 0a 61 63 63 65 73 73 20 74 6f 20 63 6f offering.equivalent.access.to.co
5d0e0 70 79 20 74 68 65 20 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 py.the.source.code.from.the.same
5d100 20 70 6c 61 63 65 20 63 6f 75 6e 74 73 20 61 73 0a 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 .place.counts.as.distribution.of
5d120 20 74 68 65 20 73 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 .the.source.code,.even.though.th
5d140 69 72 64 20 70 61 72 74 69 65 73 20 61 72 65 20 6e 6f 74 0a 63 6f 6d 70 65 6c 6c 65 64 20 74 6f ird.parties.are.not.compelled.to
5d160 20 63 6f 70 79 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 .copy.the.source.along.with.the.
5d180 6f 62 6a 65 63 74 20 63 6f 64 65 2e 0a 0a 20 20 34 2e 20 59 6f 75 20 6d 61 79 20 6e 6f 74 20 63 object.code.....4..You.may.not.c
5d1a0 6f 70 79 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 opy,.modify,.sublicense,.or.dist
5d1c0 72 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 0a 65 78 63 65 70 74 20 61 73 20 65 78 70 ribute.the.Program.except.as.exp
5d1e0 72 65 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 ressly.provided.under.this.Licen
5d200 73 65 2e 20 20 41 6e 79 20 61 74 74 65 6d 70 74 0a 6f 74 68 65 72 77 69 73 65 20 74 6f 20 63 6f se...Any.attempt.otherwise.to.co
5d220 70 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 py,.modify,.sublicense.or.distri
5d240 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 73 0a 76 6f 69 64 2c 20 61 6e 64 20 77 69 bute.the.Program.is.void,.and.wi
5d260 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.
5d280 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 0a 48 6f 77 65 76 rights.under.this.License..Howev
5d2a0 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 6f er,.parties.who.have.received.co
5d2c0 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 0a pies,.or.rights,.from.you.under.
5d2e0 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 69 72 this.License.will.not.have.their
5d300 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 73 20 .licenses.terminated.so.long.as.
5d320 73 75 63 68 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 6f 6d 70 such.parties.remain.in.full.comp
5d340 6c 69 61 6e 63 65 2e 0a 0a 20 20 35 2e 20 59 6f 75 20 61 72 65 20 6e 6f 74 20 72 65 71 75 69 72 liance.....5..You.are.not.requir
5d360 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 73 69 6e 63 65 ed.to.accept.this.License,.since
5d380 20 79 6f 75 20 68 61 76 65 20 6e 6f 74 0a 73 69 67 6e 65 64 20 69 74 2e 20 20 48 6f 77 65 76 65 .you.have.not.signed.it...Howeve
5d3a0 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 20 70 65 72 6d 69 r,.nothing.else.grants.you.permi
5d3c0 73 73 69 6f 6e 20 74 6f 20 6d 6f 64 69 66 79 20 6f 72 0a 64 69 73 74 72 69 62 75 74 65 20 74 68 ssion.to.modify.or.distribute.th
5d3e0 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 76 65 20 77 6f 72 6b e.Program.or.its.derivative.work
5d400 73 2e 20 20 54 68 65 73 65 20 61 63 74 69 6f 6e 73 20 61 72 65 0a 70 72 6f 68 69 62 69 74 65 64 s...These.actions.are.prohibited
5d420 20 62 79 20 6c 61 77 20 69 66 20 79 6f 75 20 64 6f 20 6e 6f 74 20 61 63 63 65 70 74 20 74 68 69 .by.law.if.you.do.not.accept.thi
5d440 73 20 4c 69 63 65 6e 73 65 2e 20 20 54 68 65 72 65 66 6f 72 65 2c 20 62 79 0a 6d 6f 64 69 66 79 s.License...Therefore,.by.modify
5d460 69 6e 67 20 6f 72 20 64 69 73 74 72 69 62 75 74 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 ing.or.distributing.the.Program.
5d480 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 0a 50 72 6f 67 72 61 (or.any.work.based.on.the.Progra
5d4a0 6d 29 2c 20 79 6f 75 20 69 6e 64 69 63 61 74 65 20 79 6f 75 72 20 61 63 63 65 70 74 61 6e 63 65 m),.you.indicate.your.acceptance
5d4c0 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 74 6f 20 64 6f 20 73 6f 2c 20 61 6e 64 0a 61 .of.this.License.to.do.so,.and.a
5d4e0 6c 6c 20 69 74 73 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 20 66 6f 72 20 ll.its.terms.and.conditions.for.
5d500 63 6f 70 79 69 6e 67 2c 20 64 69 73 74 72 69 62 75 74 69 6e 67 20 6f 72 20 6d 6f 64 69 66 79 69 copying,.distributing.or.modifyi
5d520 6e 67 0a 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 77 6f 72 6b 73 20 62 61 73 65 64 20 6f 6e ng.the.Program.or.works.based.on
5d540 20 69 74 2e 0a 0a 20 20 36 2e 20 45 61 63 68 20 74 69 6d 65 20 79 6f 75 20 72 65 64 69 73 74 72 .it.....6..Each.time.you.redistr
5d560 69 62 75 74 65 20 74 68 65 20 50 72 6f 67 72 61 6d 20 28 6f 72 20 61 6e 79 20 77 6f 72 6b 20 62 ibute.the.Program.(or.any.work.b
5d580 61 73 65 64 20 6f 6e 20 74 68 65 0a 50 72 6f 67 72 61 6d 29 2c 20 74 68 65 20 72 65 63 69 70 69 ased.on.the.Program),.the.recipi
5d5a0 65 6e 74 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 72 65 63 65 69 76 65 73 20 61 20 6c 69 63 ent.automatically.receives.a.lic
5d5c0 65 6e 73 65 20 66 72 6f 6d 20 74 68 65 0a 6f 72 69 67 69 6e 61 6c 20 6c 69 63 65 6e 73 6f 72 20 ense.from.the.original.licensor.
5d5e0 74 6f 20 63 6f 70 79 2c 20 64 69 73 74 72 69 62 75 74 65 20 6f 72 20 6d 6f 64 69 66 79 20 74 68 to.copy,.distribute.or.modify.th
5d600 65 20 50 72 6f 67 72 61 6d 20 73 75 62 6a 65 63 74 20 74 6f 0a 74 68 65 73 65 20 74 65 72 6d 73 e.Program.subject.to.these.terms
5d620 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 20 20 59 6f 75 20 6d 61 79 20 6e 6f 74 20 69 6d .and.conditions...You.may.not.im
5d640 70 6f 73 65 20 61 6e 79 20 66 75 72 74 68 65 72 0a 72 65 73 74 72 69 63 74 69 6f 6e 73 20 6f 6e pose.any.further.restrictions.on
5d660 20 74 68 65 20 72 65 63 69 70 69 65 6e 74 73 27 20 65 78 65 72 63 69 73 65 20 6f 66 20 74 68 65 .the.recipients'.exercise.of.the
5d680 20 72 69 67 68 74 73 20 67 72 61 6e 74 65 64 20 68 65 72 65 69 6e 2e 0a 59 6f 75 20 61 72 65 20 .rights.granted.herein..You.are.
5d6a0 6e 6f 74 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 65 6e 66 6f 72 63 69 6e 67 20 63 6f not.responsible.for.enforcing.co
5d6c0 6d 70 6c 69 61 6e 63 65 20 62 79 20 74 68 69 72 64 20 70 61 72 74 69 65 73 20 74 6f 0a 74 68 69 mpliance.by.third.parties.to.thi
5d6e0 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 37 2e 20 49 66 2c 20 61 73 20 61 20 63 6f 6e 73 65 71 s.License.....7..If,.as.a.conseq
5d700 75 65 6e 63 65 20 6f 66 20 61 20 63 6f 75 72 74 20 6a 75 64 67 6d 65 6e 74 20 6f 72 20 61 6c 6c uence.of.a.court.judgment.or.all
5d720 65 67 61 74 69 6f 6e 20 6f 66 20 70 61 74 65 6e 74 0a 69 6e 66 72 69 6e 67 65 6d 65 6e 74 20 6f egation.of.patent.infringement.o
5d740 72 20 66 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 72 65 61 73 6f 6e 20 28 6e 6f 74 20 6c 69 6d 69 r.for.any.other.reason.(not.limi
5d760 74 65 64 20 74 6f 20 70 61 74 65 6e 74 20 69 73 73 75 65 73 29 2c 0a 63 6f 6e 64 69 74 69 6f 6e ted.to.patent.issues),.condition
5d780 73 20 61 72 65 20 69 6d 70 6f 73 65 64 20 6f 6e 20 79 6f 75 20 28 77 68 65 74 68 65 72 20 62 79 s.are.imposed.on.you.(whether.by
5d7a0 20 63 6f 75 72 74 20 6f 72 64 65 72 2c 20 61 67 72 65 65 6d 65 6e 74 20 6f 72 0a 6f 74 68 65 72 .court.order,.agreement.or.other
5d7c0 77 69 73 65 29 20 74 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 wise).that.contradict.the.condit
5d7e0 69 6f 6e 73 20 6f 66 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 ions.of.this.License,.they.do.no
5d800 74 0a 65 78 63 75 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 t.excuse.you.from.the.conditions
5d820 20 6f 66 20 74 68 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 .of.this.License...If.you.cannot
5d840 0a 64 69 73 74 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 .distribute.so.as.to.satisfy.sim
5d860 75 6c 74 61 6e 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 ultaneously.your.obligations.und
5d880 65 72 20 74 68 69 73 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 er.this.License.and.any.other.pe
5d8a0 72 74 69 6e 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 rtinent.obligations,.then.as.a.c
5d8c0 6f 6e 73 65 71 75 65 6e 63 65 20 79 6f 75 0a 6d 61 79 20 6e 6f 74 20 64 69 73 74 72 69 62 75 74 onsequence.you.may.not.distribut
5d8e0 65 20 74 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 e.the.Program.at.all...For.examp
5d900 6c 65 2c 20 69 66 20 61 20 70 61 74 65 6e 74 0a 6c 69 63 65 6e 73 65 20 77 6f 75 6c 64 20 6e 6f le,.if.a.patent.license.would.no
5d920 74 20 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 t.permit.royalty-free.redistribu
5d940 74 69 6f 6e 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 62 79 0a 61 6c 6c 20 74 68 6f 73 65 tion.of.the.Program.by.all.those
5d960 20 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 .who.receive.copies.directly.or.
5d980 69 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 0a 74 68 65 indirectly.through.you,.then.the
5d9a0 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
5d9c0 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
5d9e0 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 74 .refrain.entirely.from.distribut
5da00 69 6f 6e 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 2e 0a 0a 49 66 20 61 6e 79 20 70 6f 72 74 ion.of.the.Program...If.any.port
5da20 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 6e 76 61 ion.of.this.section.is.held.inva
5da40 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 0a 61 6e 79 20 70 lid.or.unenforceable.under.any.p
5da60 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 62 61 6c 61 articular.circumstance,.the.bala
5da80 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 65 64 20 74 nce.of.the.section.is.intended.t
5daa0 6f 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 61 20 77 68 6f o.apply.and.the.section.as.a.who
5dac0 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 6f 74 68 65 72 le.is.intended.to.apply.in.other
5dae0 0a 63 69 72 63 75 6d 73 74 61 6e 63 65 73 2e 0a 0a 49 74 20 69 73 20 6e 6f 74 20 74 68 65 20 70 .circumstances...It.is.not.the.p
5db00 75 72 70 6f 73 65 20 6f 66 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 74 6f 20 69 6e 64 75 63 65 urpose.of.this.section.to.induce
5db20 20 79 6f 75 20 74 6f 20 69 6e 66 72 69 6e 67 65 20 61 6e 79 0a 70 61 74 65 6e 74 73 20 6f 72 20 .you.to.infringe.any.patents.or.
5db40 6f 74 68 65 72 20 70 72 6f 70 65 72 74 79 20 72 69 67 68 74 20 63 6c 61 69 6d 73 20 6f 72 20 74 other.property.right.claims.or.t
5db60 6f 20 63 6f 6e 74 65 73 74 20 76 61 6c 69 64 69 74 79 20 6f 66 20 61 6e 79 0a 73 75 63 68 20 63 o.contest.validity.of.any.such.c
5db80 6c 61 69 6d 73 3b 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 68 61 73 20 74 68 65 20 73 6f 6c 65 laims;.this.section.has.the.sole
5dba0 20 70 75 72 70 6f 73 65 20 6f 66 20 70 72 6f 74 65 63 74 69 6e 67 20 74 68 65 0a 69 6e 74 65 67 .purpose.of.protecting.the.integ
5dbc0 72 69 74 79 20 6f 66 20 74 68 65 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 64 69 73 74 72 69 rity.of.the.free.software.distri
5dbe0 62 75 74 69 6f 6e 20 73 79 73 74 65 6d 2c 20 77 68 69 63 68 20 69 73 0a 69 6d 70 6c 65 6d 65 6e bution.system,.which.is.implemen
5dc00 74 65 64 20 62 79 20 70 75 62 6c 69 63 20 6c 69 63 65 6e 73 65 20 70 72 61 63 74 69 63 65 73 2e ted.by.public.license.practices.
5dc20 20 20 4d 61 6e 79 20 70 65 6f 70 6c 65 20 68 61 76 65 20 6d 61 64 65 0a 67 65 6e 65 72 6f 75 73 ..Many.people.have.made.generous
5dc40 20 63 6f 6e 74 72 69 62 75 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 77 69 64 65 20 72 61 6e 67 65 .contributions.to.the.wide.range
5dc60 20 6f 66 20 73 6f 66 74 77 61 72 65 20 64 69 73 74 72 69 62 75 74 65 64 0a 74 68 72 6f 75 67 68 .of.software.distributed.through
5dc80 20 74 68 61 74 20 73 79 73 74 65 6d 20 69 6e 20 72 65 6c 69 61 6e 63 65 20 6f 6e 20 63 6f 6e 73 .that.system.in.reliance.on.cons
5dca0 69 73 74 65 6e 74 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 6f 66 20 74 68 61 74 0a 73 79 73 74 65 istent.application.of.that.syste
5dcc0 6d 3b 20 69 74 20 69 73 20 75 70 20 74 6f 20 74 68 65 20 61 75 74 68 6f 72 2f 64 6f 6e 6f 72 20 m;.it.is.up.to.the.author/donor.
5dce0 74 6f 20 64 65 63 69 64 65 20 69 66 20 68 65 20 6f 72 20 73 68 65 20 69 73 20 77 69 6c 6c 69 6e to.decide.if.he.or.she.is.willin
5dd00 67 0a 74 6f 20 64 69 73 74 72 69 62 75 74 65 20 73 6f 66 74 77 61 72 65 20 74 68 72 6f 75 67 68 g.to.distribute.software.through
5dd20 20 61 6e 79 20 6f 74 68 65 72 20 73 79 73 74 65 6d 20 61 6e 64 20 61 20 6c 69 63 65 6e 73 65 65 .any.other.system.and.a.licensee
5dd40 20 63 61 6e 6e 6f 74 0a 69 6d 70 6f 73 65 20 74 68 61 74 20 63 68 6f 69 63 65 2e 0a 0a 54 68 69 .cannot.impose.that.choice...Thi
5dd60 73 20 73 65 63 74 69 6f 6e 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 6d 61 6b 65 20 74 68 s.section.is.intended.to.make.th
5dd80 6f 72 6f 75 67 68 6c 79 20 63 6c 65 61 72 20 77 68 61 74 20 69 73 20 62 65 6c 69 65 76 65 64 20 oroughly.clear.what.is.believed.
5dda0 74 6f 0a 62 65 20 61 20 63 6f 6e 73 65 71 75 65 6e 63 65 20 6f 66 20 74 68 65 20 72 65 73 74 20 to.be.a.consequence.of.the.rest.
5ddc0 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 38 2e 20 49 66 20 74 68 65 20 64 69 of.this.License.....8..If.the.di
5dde0 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 2f 6f 72 20 75 73 65 20 6f 66 20 74 68 65 20 50 72 6f stribution.and/or.use.of.the.Pro
5de00 67 72 61 6d 20 69 73 20 72 65 73 74 72 69 63 74 65 64 20 69 6e 0a 63 65 72 74 61 69 6e 20 63 6f gram.is.restricted.in.certain.co
5de20 75 6e 74 72 69 65 73 20 65 69 74 68 65 72 20 62 79 20 70 61 74 65 6e 74 73 20 6f 72 20 62 79 20 untries.either.by.patents.or.by.
5de40 63 6f 70 79 72 69 67 68 74 65 64 20 69 6e 74 65 72 66 61 63 65 73 2c 20 74 68 65 0a 6f 72 69 67 copyrighted.interfaces,.the.orig
5de60 69 6e 61 6c 20 63 6f 70 79 72 69 67 68 74 20 68 6f 6c 64 65 72 20 77 68 6f 20 70 6c 61 63 65 73 inal.copyright.holder.who.places
5de80 20 74 68 65 20 50 72 6f 67 72 61 6d 20 75 6e 64 65 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 0a .the.Program.under.this.License.
5dea0 6d 61 79 20 61 64 64 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 may.add.an.explicit.geographical
5dec0 20 64 69 73 74 72 69 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 .distribution.limitation.excludi
5dee0 6e 67 0a 74 68 6f 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 ng.those.countries,.so.that.dist
5df00 72 69 62 75 74 69 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 ribution.is.permitted.only.in.or
5df20 20 61 6d 6f 6e 67 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 .among.countries.not.thus.exclud
5df40 65 64 2e 20 20 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 ed...In.such.case,.this.License.
5df60 69 6e 63 6f 72 70 6f 72 61 74 65 73 0a 74 68 65 20 6c 69 6d 69 74 61 74 69 6f 6e 20 61 73 20 69 incorporates.the.limitation.as.i
5df80 66 20 77 72 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 f.written.in.the.body.of.this.Li
5dfa0 63 65 6e 73 65 2e 0a 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 cense.....9..The.Free.Software.F
5dfc0 6f 75 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 oundation.may.publish.revised.an
5dfe0 64 2f 6f 72 20 6e 65 77 20 76 65 72 73 69 6f 6e 73 0a 6f 66 20 74 68 65 20 47 65 6e 65 72 61 6c d/or.new.versions.of.the.General
5e000 20 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 .Public.License.from.time.to.tim
5e020 65 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 0a 62 65 20 73 69 e...Such.new.versions.will.be.si
5e040 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
5e060 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
5e080 20 74 6f 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 63 .to.address.new.problems.or.conc
5e0a0 65 72 6e 73 2e 0a 0a 45 61 63 68 20 76 65 72 73 69 6f 6e 20 69 73 20 67 69 76 65 6e 20 61 20 64 erns...Each.version.is.given.a.d
5e0c0 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 20 20 49 istinguishing.version.number...I
5e0e0 66 20 74 68 65 20 50 72 6f 67 72 61 6d 0a 73 70 65 63 69 66 69 65 73 20 61 20 76 65 72 73 69 6f f.the.Program.specifies.a.versio
5e100 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 63 68 20 61 n.number.of.this.License.which.a
5e120 70 70 6c 69 65 73 20 74 6f 20 69 74 20 61 6e 64 20 22 61 6e 79 0a 6c 61 74 65 72 20 76 65 72 73 pplies.to.it.and."any.later.vers
5e140 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 66 20 66 6f 6c ion",.you.have.the.option.of.fol
5e160 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 69 6f 6e 73 0a lowing.the.terms.and.conditions.
5e180 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 6f 66 20 61 6e 79 either.of.that.version.or.of.any
5e1a0 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 79 20 74 68 65 20 .later.version.published.by.the.
5e1c0 46 72 65 65 0a 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2e 20 20 49 66 20 74 68 Free.Software.Foundation...If.th
5e1e0 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 79 20 61 20 76 65 72 e.Program.does.not.specify.a.ver
5e200 73 69 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 79 6f 75 sion.number.of.this.License,.you
5e220 20 6d 61 79 20 63 68 6f 6f 73 65 20 61 6e 79 20 76 65 72 73 69 6f 6e 20 65 76 65 72 20 70 75 62 .may.choose.any.version.ever.pub
5e240 6c 69 73 68 65 64 20 62 79 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 0a 46 6f 75 6e lished.by.the.Free.Software.Foun
5e260 64 61 74 69 6f 6e 2e 0a 0a 20 20 31 30 2e 20 49 66 20 79 6f 75 20 77 69 73 68 20 74 6f 20 69 6e dation.....10..If.you.wish.to.in
5e280 63 6f 72 70 6f 72 61 74 65 20 70 61 72 74 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 corporate.parts.of.the.Program.i
5e2a0 6e 74 6f 20 6f 74 68 65 72 20 66 72 65 65 0a 70 72 6f 67 72 61 6d 73 20 77 68 6f 73 65 20 64 69 nto.other.free.programs.whose.di
5e2c0 73 74 72 69 62 75 74 69 6f 6e 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 64 69 66 66 65 72 stribution.conditions.are.differ
5e2e0 65 6e 74 2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 20 61 75 74 68 6f 72 0a 74 6f 20 61 73 6b 20 ent,.write.to.the.author.to.ask.
5e300 66 6f 72 20 70 65 72 6d 69 73 73 69 6f 6e 2e 20 20 46 6f 72 20 73 6f 66 74 77 61 72 65 20 77 68 for.permission...For.software.wh
5e320 69 63 68 20 69 73 20 63 6f 70 79 72 69 67 68 74 65 64 20 62 79 20 74 68 65 20 46 72 65 65 0a 53 ich.is.copyrighted.by.the.Free.S
5e340 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 oftware.Foundation,.write.to.the
5e360 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 3b 20 77 65 20 73 6f .Free.Software.Foundation;.we.so
5e380 6d 65 74 69 6d 65 73 0a 6d 61 6b 65 20 65 78 63 65 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 69 73 metimes.make.exceptions.for.this
5e3a0 2e 20 20 4f 75 72 20 64 65 63 69 73 69 6f 6e 20 77 69 6c 6c 20 62 65 20 67 75 69 64 65 64 20 62 ...Our.decision.will.be.guided.b
5e3c0 79 20 74 68 65 20 74 77 6f 20 67 6f 61 6c 73 0a 6f 66 20 70 72 65 73 65 72 76 69 6e 67 20 74 68 y.the.two.goals.of.preserving.th
5e3e0 65 20 66 72 65 65 20 73 74 61 74 75 73 20 6f 66 20 61 6c 6c 20 64 65 72 69 76 61 74 69 76 65 73 e.free.status.of.all.derivatives
5e400 20 6f 66 20 6f 75 72 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 61 6e 64 0a 6f 66 20 70 72 6f .of.our.free.software.and.of.pro
5e420 6d 6f 74 69 6e 67 20 74 68 65 20 73 68 61 72 69 6e 67 20 61 6e 64 20 72 65 75 73 65 20 6f 66 20 moting.the.sharing.and.reuse.of.
5e440 73 6f 66 74 77 61 72 65 20 67 65 6e 65 72 61 6c 6c 79 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 software.generally..............
5e460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 4f 20 57 41 52 52 41 4e 54 59 0a 0a 20 20 .................NO.WARRANTY....
5e480 31 31 2e 20 42 45 43 41 55 53 45 20 54 48 45 20 50 52 4f 47 52 41 4d 20 49 53 20 4c 49 43 45 4e 11..BECAUSE.THE.PROGRAM.IS.LICEN
5e4a0 53 45 44 20 46 52 45 45 20 4f 46 20 43 48 41 52 47 45 2c 20 54 48 45 52 45 20 49 53 20 4e 4f 20 SED.FREE.OF.CHARGE,.THERE.IS.NO.
5e4c0 57 41 52 52 41 4e 54 59 0a 46 4f 52 20 54 48 45 20 50 52 4f 47 52 41 4d 2c 20 54 4f 20 54 48 45 WARRANTY.FOR.THE.PROGRAM,.TO.THE
5e4e0 20 45 58 54 45 4e 54 20 50 45 52 4d 49 54 54 45 44 20 42 59 20 41 50 50 4c 49 43 41 42 4c 45 20 .EXTENT.PERMITTED.BY.APPLICABLE.
5e500 4c 41 57 2e 20 20 45 58 43 45 50 54 20 57 48 45 4e 0a 4f 54 48 45 52 57 49 53 45 20 53 54 41 54 LAW...EXCEPT.WHEN.OTHERWISE.STAT
5e520 45 44 20 49 4e 20 57 52 49 54 49 4e 47 20 54 48 45 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 ED.IN.WRITING.THE.COPYRIGHT.HOLD
5e540 45 52 53 20 41 4e 44 2f 4f 52 20 4f 54 48 45 52 20 50 41 52 54 49 45 53 0a 50 52 4f 56 49 44 45 ERS.AND/OR.OTHER.PARTIES.PROVIDE
5e560 20 54 48 45 20 50 52 4f 47 52 41 4d 20 22 41 53 20 49 53 22 20 57 49 54 48 4f 55 54 20 57 41 52 .THE.PROGRAM."AS.IS".WITHOUT.WAR
5e580 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 45 49 54 48 45 52 20 45 58 50 52 45 53 RANTY.OF.ANY.KIND,.EITHER.EXPRES
5e5a0 53 45 44 0a 4f 52 20 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 SED.OR.IMPLIED,.INCLUDING,.BUT.N
5e5c0 4f 54 20 4c 49 4d 49 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 OT.LIMITED.TO,.THE.IMPLIED.WARRA
5e5e0 4e 54 49 45 53 20 4f 46 0a 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 41 4e 44 20 46 49 54 NTIES.OF.MERCHANTABILITY.AND.FIT
5e600 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 20 20 NESS.FOR.A.PARTICULAR.PURPOSE...
5e620 54 48 45 20 45 4e 54 49 52 45 20 52 49 53 4b 20 41 53 0a 54 4f 20 54 48 45 20 51 55 41 4c 49 54 THE.ENTIRE.RISK.AS.TO.THE.QUALIT
5e640 59 20 41 4e 44 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 Y.AND.PERFORMANCE.OF.THE.PROGRAM
5e660 20 49 53 20 57 49 54 48 20 59 4f 55 2e 20 20 53 48 4f 55 4c 44 20 54 48 45 0a 50 52 4f 47 52 41 .IS.WITH.YOU...SHOULD.THE.PROGRA
5e680 4d 20 50 52 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 M.PROVE.DEFECTIVE,.YOU.ASSUME.TH
5e6a0 45 20 43 4f 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 E.COST.OF.ALL.NECESSARY.SERVICIN
5e6c0 47 2c 0a 52 45 50 41 49 52 20 4f 52 20 43 4f 52 52 45 43 54 49 4f 4e 2e 0a 0a 20 20 31 32 2e 20 G,.REPAIR.OR.CORRECTION.....12..
5e6e0 49 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 IN.NO.EVENT.UNLESS.REQUIRED.BY.A
5e700 50 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 PPLICABLE.LAW.OR.AGREED.TO.IN.WR
5e720 49 54 49 4e 47 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 ITING.WILL.ANY.COPYRIGHT.HOLDER,
5e740 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
5e760 46 59 20 41 4e 44 2f 4f 52 0a 52 45 44 49 53 54 52 49 42 55 54 45 20 54 48 45 20 50 52 4f 47 52 FY.AND/OR.REDISTRIBUTE.THE.PROGR
5e780 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 45 AM.AS.PERMITTED.ABOVE,.BE.LIABLE
5e7a0 20 54 4f 20 59 4f 55 20 46 4f 52 20 44 41 4d 41 47 45 53 2c 0a 49 4e 43 4c 55 44 49 4e 47 20 41 .TO.YOU.FOR.DAMAGES,.INCLUDING.A
5e7c0 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 4c 20 NY.GENERAL,.SPECIAL,.INCIDENTAL.
5e7e0 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 4e 47 OR.CONSEQUENTIAL.DAMAGES.ARISING
5e800 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 54 4f 20 .OUT.OF.THE.USE.OR.INABILITY.TO.
5e820 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 54 20 4e USE.THE.PROGRAM.(INCLUDING.BUT.N
5e840 4f 54 20 4c 49 4d 49 54 45 44 0a 54 4f 20 4c 4f 53 53 20 4f 46 20 44 41 54 41 20 4f 52 20 44 41 OT.LIMITED.TO.LOSS.OF.DATA.OR.DA
5e860 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 20 4f 52 20 TA.BEING.RENDERED.INACCURATE.OR.
5e880 4c 4f 53 53 45 53 20 53 55 53 54 41 49 4e 45 44 20 42 59 0a 59 4f 55 20 4f 52 20 54 48 49 52 44 LOSSES.SUSTAINED.BY.YOU.OR.THIRD
5e8a0 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 45 20 50 52 4f .PARTIES.OR.A.FAILURE.OF.THE.PRO
5e8c0 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 48 45 52 0a 50 GRAM.TO.OPERATE.WITH.ANY.OTHER.P
5e8e0 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 44 45 52 20 4f 52 ROGRAMS),.EVEN.IF.SUCH.HOLDER.OR
5e900 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 53 45 44 20 4f 46 .OTHER.PARTY.HAS.BEEN.ADVISED.OF
5e920 20 54 48 45 0a 50 4f 53 53 49 42 49 4c 49 54 59 20 4f 46 20 53 55 43 48 20 44 41 4d 41 47 45 53 .THE.POSSIBILITY.OF.SUCH.DAMAGES
5e940 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 4e 44 20 4f 46 20 54 ........................END.OF.T
5e960 45 52 4d 53 20 41 4e 44 20 43 4f 4e 44 49 54 49 4f 4e 53 0a 0a 20 20 20 20 20 20 20 20 20 20 20 ERMS.AND.CONDITIONS.............
5e980 20 48 6f 77 20 74 6f 20 41 70 70 6c 79 20 54 68 65 73 65 20 54 65 72 6d 73 20 74 6f 20 59 6f 75 .How.to.Apply.These.Terms.to.You
5e9a0 72 20 4e 65 77 20 50 72 6f 67 72 61 6d 73 0a 0a 20 20 49 66 20 79 6f 75 20 64 65 76 65 6c 6f 70 r.New.Programs....If.you.develop
5e9c0 20 61 20 6e 65 77 20 70 72 6f 67 72 61 6d 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 20 69 74 20 .a.new.program,.and.you.want.it.
5e9e0 74 6f 20 62 65 20 6f 66 20 74 68 65 20 67 72 65 61 74 65 73 74 0a 70 6f 73 73 69 62 6c 65 20 75 to.be.of.the.greatest.possible.u
5ea00 73 65 20 74 6f 20 74 68 65 20 70 75 62 6c 69 63 2c 20 74 68 65 20 62 65 73 74 20 77 61 79 20 74 se.to.the.public,.the.best.way.t
5ea20 6f 20 61 63 68 69 65 76 65 20 74 68 69 73 20 69 73 20 74 6f 20 6d 61 6b 65 20 69 74 0a 66 72 65 o.achieve.this.is.to.make.it.fre
5ea40 65 20 73 6f 66 74 77 61 72 65 20 77 68 69 63 68 20 65 76 65 72 79 6f 6e 65 20 63 61 6e 20 72 65 e.software.which.everyone.can.re
5ea60 64 69 73 74 72 69 62 75 74 65 20 61 6e 64 20 63 68 61 6e 67 65 20 75 6e 64 65 72 20 74 68 65 73 distribute.and.change.under.thes
5ea80 65 20 74 65 72 6d 73 2e 0a 0a 20 20 54 6f 20 64 6f 20 73 6f 2c 20 61 74 74 61 63 68 20 74 68 65 e.terms.....To.do.so,.attach.the
5eaa0 20 66 6f 6c 6c 6f 77 69 6e 67 20 6e 6f 74 69 63 65 73 20 74 6f 20 74 68 65 20 70 72 6f 67 72 61 .following.notices.to.the.progra
5eac0 6d 2e 20 20 49 74 20 69 73 20 73 61 66 65 73 74 0a 74 6f 20 61 74 74 61 63 68 20 74 68 65 6d 20 m...It.is.safest.to.attach.them.
5eae0 74 6f 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 65 61 63 68 20 73 6f 75 72 63 65 20 66 69 6c 65 to.the.start.of.each.source.file
5eb00 20 74 6f 20 6d 6f 73 74 20 65 66 66 65 63 74 69 76 65 6c 79 0a 63 6f 6e 76 65 79 20 74 68 65 20 .to.most.effectively.convey.the.
5eb20 65 78 63 6c 75 73 69 6f 6e 20 6f 66 20 77 61 72 72 61 6e 74 79 3b 20 61 6e 64 20 65 61 63 68 20 exclusion.of.warranty;.and.each.
5eb40 66 69 6c 65 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 74 20 6c 65 61 73 74 0a 74 68 65 20 22 63 file.should.have.at.least.the."c
5eb60 6f 70 79 72 69 67 68 74 22 20 6c 69 6e 65 20 61 6e 64 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 opyright".line.and.a.pointer.to.
5eb80 77 68 65 72 65 20 74 68 65 20 66 75 6c 6c 20 6e 6f 74 69 63 65 20 69 73 20 66 6f 75 6e 64 2e 0a where.the.full.notice.is.found..
5eba0 0a 20 20 20 20 3c 6f 6e 65 20 6c 69 6e 65 20 74 6f 20 67 69 76 65 20 74 68 65 20 70 72 6f 67 72 .....<one.line.to.give.the.progr
5ebc0 61 6d 27 73 20 6e 61 6d 65 20 61 6e 64 20 61 20 62 72 69 65 66 20 69 64 65 61 20 6f 66 20 77 68 am's.name.and.a.brief.idea.of.wh
5ebe0 61 74 20 69 74 20 64 6f 65 73 2e 3e 0a 20 20 20 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 3c at.it.does.>.....Copyright.(C).<
5ec00 79 65 61 72 3e 20 20 3c 6e 61 6d 65 20 6f 66 20 61 75 74 68 6f 72 3e 0a 0a 20 20 20 20 54 68 69 year>..<name.of.author>......Thi
5ec20 73 20 70 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 s.program.is.free.software:.you.
5ec40 63 61 6e 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 can.redistribute.it.and/or.modif
5ec60 79 0a 20 20 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 y.....it.under.the.terms.of.the.
5ec80 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 20 61 73 20 70 75 GNU.General.Public.License.as.pu
5eca0 62 6c 69 73 68 65 64 20 62 79 0a 20 20 20 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 blished.by.....the.Free.Software
5ecc0 20 46 6f 75 6e 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 .Foundation,.either.version.2.of
5ece0 20 74 68 65 20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 20 20 20 20 28 61 74 20 79 6f 75 72 20 6f 70 .the.License,.or.....(at.your.op
5ed00 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 20 54 68 tion).any.later.version.......Th
5ed20 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 20 69 6e 20 74 68 65 is.program.is.distributed.in.the
5ed40 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 66 75 6c 2c 0a 20 20 .hope.that.it.will.be.useful,...
5ed60 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 3b 20 77 69 74 68 ..but.WITHOUT.ANY.WARRANTY;.with
5ed80 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 6e 74 79 20 6f 66 out.even.the.implied.warranty.of
5eda0 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.
5edc0 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
5ede0 68 65 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 73 he.....GNU.General.Public.Licens
5ee00 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 0a 20 20 20 20 59 6f 75 20 73 68 6f e.for.more.details.......You.sho
5ee20 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 68 65 20 uld.have.received.a.copy.of.the.
5ee40 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 0a 20 20 20 20 61 GNU.General.Public.License.....a
5ee60 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 6e 6f 74 2c long.with.this.program...If.not,
5ee80 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 65 6e 73 65 .see.<http://www.gnu.org/license
5eea0 73 2f 3e 2e 0a 0a 41 6c 73 6f 20 61 64 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 68 6f s/>...Also.add.information.on.ho
5eec0 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 6f 6e 69 63 20 61 w.to.contact.you.by.electronic.a
5eee0 6e 64 20 70 61 70 65 72 20 6d 61 69 6c 2e 0a 0a 49 66 20 74 68 65 20 70 72 6f 67 72 61 6d 20 69 nd.paper.mail...If.the.program.i
5ef00 73 20 69 6e 74 65 72 61 63 74 69 76 65 2c 20 6d 61 6b 65 20 69 74 20 6f 75 74 70 75 74 20 61 20 s.interactive,.make.it.output.a.
5ef20 73 68 6f 72 74 20 6e 6f 74 69 63 65 20 6c 69 6b 65 20 74 68 69 73 0a 77 68 65 6e 20 69 74 20 73 short.notice.like.this.when.it.s
5ef40 74 61 72 74 73 20 69 6e 20 61 6e 20 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f 64 65 3a 0a 0a 20 tarts.in.an.interactive.mode:...
5ef60 20 20 20 47 6e 6f 6d 6f 76 69 73 69 6f 6e 20 76 65 72 73 69 6f 6e 20 36 39 2c 20 43 6f 70 79 72 ...Gnomovision.version.69,.Copyr
5ef80 69 67 68 74 20 28 43 29 20 3c 79 65 61 72 3e 20 20 3c 6e 61 6d 65 20 6f 66 20 61 75 74 68 6f 72 ight.(C).<year>..<name.of.author
5efa0 3e 0a 20 20 20 20 47 6e 6f 6d 6f 76 69 73 69 6f 6e 20 63 6f 6d 65 73 20 77 69 74 68 20 41 42 53 >.....Gnomovision.comes.with.ABS
5efc0 4f 4c 55 54 45 4c 59 20 4e 4f 20 57 41 52 52 41 4e 54 59 3b 20 66 6f 72 20 64 65 74 61 69 6c 73 OLUTELY.NO.WARRANTY;.for.details
5efe0 20 74 79 70 65 20 60 73 68 6f 77 20 77 27 2e 0a 20 20 20 20 54 68 69 73 20 69 73 20 66 72 65 65 .type.`show.w'......This.is.free
5f000 20 73 6f 66 74 77 61 72 65 2c 20 61 6e 64 20 79 6f 75 20 61 72 65 20 77 65 6c 63 6f 6d 65 20 74 .software,.and.you.are.welcome.t
5f020 6f 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 0a 20 20 20 20 75 6e 64 65 72 20 63 65 72 74 o.redistribute.it.....under.cert
5f040 61 69 6e 20 63 6f 6e 64 69 74 69 6f 6e 73 3b 20 74 79 70 65 20 60 73 68 6f 77 20 63 27 20 66 6f ain.conditions;.type.`show.c'.fo
5f060 72 20 64 65 74 61 69 6c 73 2e 0a 0a 54 68 65 20 68 79 70 6f 74 68 65 74 69 63 61 6c 20 63 6f 6d r.details...The.hypothetical.com
5f080 6d 61 6e 64 73 20 60 73 68 6f 77 20 77 27 20 61 6e 64 20 60 73 68 6f 77 20 63 27 20 73 68 6f 75 mands.`show.w'.and.`show.c'.shou
5f0a0 6c 64 20 73 68 6f 77 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 0a 70 61 72 74 73 20 6f 66 ld.show.the.appropriate.parts.of
5f0c0 20 74 68 65 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 2e 20 20 4f 66 .the.General.Public.License...Of
5f0e0 20 63 6f 75 72 73 65 2c 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 20 79 6f 75 20 75 73 65 20 6d 61 .course,.the.commands.you.use.ma
5f100 79 0a 62 65 20 63 61 6c 6c 65 64 20 73 6f 6d 65 74 68 69 6e 67 20 6f 74 68 65 72 20 74 68 61 6e y.be.called.something.other.than
5f120 20 60 73 68 6f 77 20 77 27 20 61 6e 64 20 60 73 68 6f 77 20 63 27 3b 20 74 68 65 79 20 63 6f 75 .`show.w'.and.`show.c';.they.cou
5f140 6c 64 20 65 76 65 6e 20 62 65 0a 6d 6f 75 73 65 2d 63 6c 69 63 6b 73 20 6f 72 20 6d 65 6e 75 20 ld.even.be.mouse-clicks.or.menu.
5f160 69 74 65 6d 73 2d 2d 77 68 61 74 65 76 65 72 20 73 75 69 74 73 20 79 6f 75 72 20 70 72 6f 67 72 items--whatever.suits.your.progr
5f180 61 6d 2e 0a 0a 59 6f 75 20 73 68 6f 75 6c 64 20 61 6c 73 6f 20 67 65 74 20 79 6f 75 72 20 65 6d am...You.should.also.get.your.em
5f1a0 70 6c 6f 79 65 72 20 28 69 66 20 79 6f 75 20 77 6f 72 6b 20 61 73 20 61 20 70 72 6f 67 72 61 6d ployer.(if.you.work.as.a.program
5f1c0 6d 65 72 29 20 6f 72 20 79 6f 75 72 0a 73 63 68 6f 6f 6c 2c 20 69 66 20 61 6e 79 2c 20 74 6f 20 mer).or.your.school,.if.any,.to.
5f1e0 73 69 67 6e 20 61 20 22 63 6f 70 79 72 69 67 68 74 20 64 69 73 63 6c 61 69 6d 65 72 22 20 66 6f sign.a."copyright.disclaimer".fo
5f200 72 20 74 68 65 20 70 72 6f 67 72 61 6d 2c 20 69 66 0a 6e 65 63 65 73 73 61 72 79 2e 20 20 48 65 r.the.program,.if.necessary...He
5f220 72 65 20 69 73 20 61 20 73 61 6d 70 6c 65 3b 20 61 6c 74 65 72 20 74 68 65 20 6e 61 6d 65 73 3a re.is.a.sample;.alter.the.names:
5f240 0a 0a 20 20 59 6f 79 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 ....Yoyodyne,.Inc.,.hereby.discl
5f260 61 69 6d 73 20 61 6c 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 aims.all.copyright.interest.in.t
5f280 68 65 20 70 72 6f 67 72 61 6d 0a 20 20 60 47 6e 6f 6d 6f 76 69 73 69 6f 6e 27 20 28 77 68 69 63 he.program...`Gnomovision'.(whic
5f2a0 68 20 6d 61 6b 65 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 h.makes.passes.at.compilers).wri
5f2c0 74 74 65 6e 20 62 79 20 4a 61 6d 65 73 20 48 61 63 6b 65 72 2e 0a 0a 20 20 3c 73 69 67 6e 61 74 tten.by.James.Hacker.....<signat
5f2e0 75 72 65 20 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 0a 20 20 ure.of.Ty.Coon>,.1.April.1989...
5f300 54 79 20 43 6f 6f 6e 2c 20 50 72 65 73 69 64 65 6e 74 20 6f 66 20 56 69 63 65 0a 0a 54 68 69 73 Ty.Coon,.President.of.Vice..This
5f320 20 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 .General.Public.License.does.not
5f340 20 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 .permit.incorporating.your.progr
5f360 61 6d 20 69 6e 74 6f 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 am.into.proprietary.programs...I
5f380 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
5f3a0 69 62 72 61 72 79 2c 20 79 6f 75 20 6d 61 79 0a 63 6f 6e 73 69 64 65 72 20 69 74 20 6d 6f 72 65 ibrary,.you.may.consider.it.more
5f3c0 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 69 .useful.to.permit.linking.propri
5f3e0 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 0a 6c 69 62 72 etary.applications.with.the.libr
5f400 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 20 74 ary...If.this.is.what.you.want.t
5f420 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 61 6c o.do,.use.the.GNU.Lesser.General
5f440 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 69 73 20 .Public.License.instead.of.this.
5f460 4c 69 63 65 6e 73 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 4e 55 License......................GNU
5f480 20 47 45 4e 45 52 41 4c 20 50 55 42 4c 49 43 20 4c 49 43 45 4e 53 45 0d 0a 20 20 20 20 20 20 20 .GENERAL.PUBLIC.LICENSE.........
5f4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 56 65 72 73 69 6f 6e 20 32 2c 20 4a 75 6e 65 20 ................Version.2,.June.
5f4c0 31 39 39 31 0d 0a 0d 0a 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 31 39 38 39 2c 20 31 39 39 1991.....Copyright.(C).1989,.199
5f4e0 31 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 2c 20 49 6e 63 2e 1.Free.Software.Foundation,.Inc.
5f500 2c 0d 0a 20 35 31 20 46 72 61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20 46 69 66 74 68 20 46 6c ,...51.Franklin.Street,.Fifth.Fl
5f520 6f 6f 72 2c 20 42 6f 73 74 6f 6e 2c 20 4d 41 20 30 32 31 31 30 2d 31 33 30 31 20 55 53 41 0d 0a oor,.Boston,.MA.02110-1301.USA..
5f540 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 20 63 6f 70 79 20 61 .Everyone.is.permitted.to.copy.a
5f560 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 73 0d 0a 20 nd.distribute.verbatim.copies...
5f580 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 62 75 74 20 63 68 of.this.license.document,.but.ch
5f5a0 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 0d 0a 0d 0a 20 20 20 anging.it.is.not.allowed........
5f5c0 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 61 6d 62 6c .........................Preambl
5f5e0 65 0d 0a 0d 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 6f 66 e......The.licenses.for.most.sof
5f600 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 79 20 tware.are.designed.to.take.away.
5f620 79 6f 75 72 0d 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 67 your..freedom.to.share.and.chang
5f640 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 65 e.it...By.contrast,.the.GNU.Gene
5f660 72 61 6c 20 50 75 62 6c 69 63 0d 0a 4c 69 63 65 6e 73 65 20 69 73 20 69 6e 74 65 6e 64 65 64 20 ral.Public..License.is.intended.
5f680 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
5f6a0 72 65 20 61 6e 64 20 63 68 61 6e 67 65 20 66 72 65 65 0d 0a 73 6f 66 74 77 61 72 65 2d 2d 74 6f re.and.change.free..software--to
5f6c0 20 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 .make.sure.the.software.is.free.
5f6e0 66 6f 72 20 61 6c 6c 20 69 74 73 20 75 73 65 72 73 2e 20 20 54 68 69 73 0d 0a 47 65 6e 65 72 61 for.all.its.users...This..Genera
5f700 6c 20 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 l.Public.License.applies.to.most
5f720 20 6f 66 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 0d 0a 46 6f 75 6e 64 61 74 69 6f .of.the.Free.Software..Foundatio
5f740 6e 27 73 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 n's.software.and.to.any.other.pr
5f760 6f 67 72 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 0d 0a 75 ogram.whose.authors.commit.to..u
5f780 73 69 6e 67 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 sing.it...(Some.other.Free.Softw
5f7a0 61 72 65 20 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 are.Foundation.software.is.cover
5f7c0 65 64 20 62 79 0d 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 ed.by..the.GNU.Lesser.General.Pu
5f7e0 62 6c 69 63 20 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 blic.License.instead.)..You.can.
5f800 61 70 70 6c 79 20 69 74 20 74 6f 0d 0a 79 6f 75 72 20 70 72 6f 67 72 61 6d 73 2c 20 74 6f 6f 2e apply.it.to..your.programs,.too.
5f820 0d 0a 0d 0a 20 20 57 68 65 6e 20 77 65 20 73 70 65 61 6b 20 6f 66 20 66 72 65 65 20 73 6f 66 74 ......When.we.speak.of.free.soft
5f840 77 61 72 65 2c 20 77 65 20 61 72 65 20 72 65 66 65 72 72 69 6e 67 20 74 6f 20 66 72 65 65 64 6f ware,.we.are.referring.to.freedo
5f860 6d 2c 20 6e 6f 74 0d 0a 70 72 69 63 65 2e 20 20 4f 75 72 20 47 65 6e 65 72 61 6c 20 50 75 62 6c m,.not..price...Our.General.Publ
5f880 69 63 20 4c 69 63 65 6e 73 65 73 20 61 72 65 20 64 65 73 69 67 6e 65 64 20 74 6f 20 6d 61 6b 65 ic.Licenses.are.designed.to.make
5f8a0 20 73 75 72 65 20 74 68 61 74 20 79 6f 75 0d 0a 68 61 76 65 20 74 68 65 20 66 72 65 65 64 6f 6d .sure.that.you..have.the.freedom
5f8c0 20 74 6f 20 64 69 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 66 72 65 65 20 73 6f .to.distribute.copies.of.free.so
5f8e0 66 74 77 61 72 65 20 28 61 6e 64 20 63 68 61 72 67 65 20 66 6f 72 0d 0a 74 68 69 73 20 73 65 72 ftware.(and.charge.for..this.ser
5f900 76 69 63 65 20 69 66 20 79 6f 75 20 77 69 73 68 29 2c 20 74 68 61 74 20 79 6f 75 20 72 65 63 65 vice.if.you.wish),.that.you.rece
5f920 69 76 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 6f 72 20 63 61 6e 20 67 65 74 20 69 74 0d 0a 69 ive.source.code.or.can.get.it..i
5f940 66 20 79 6f 75 20 77 61 6e 74 20 69 74 2c 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 63 68 61 6e f.you.want.it,.that.you.can.chan
5f960 67 65 20 74 68 65 20 73 6f 66 74 77 61 72 65 20 6f 72 20 75 73 65 20 70 69 65 63 65 73 20 6f 66 ge.the.software.or.use.pieces.of
5f980 20 69 74 0d 0a 69 6e 20 6e 65 77 20 66 72 65 65 20 70 72 6f 67 72 61 6d 73 3b 20 61 6e 64 20 74 .it..in.new.free.programs;.and.t
5f9a0 68 61 74 20 79 6f 75 20 6b 6e 6f 77 20 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 65 73 65 20 74 68 hat.you.know.you.can.do.these.th
5f9c0 69 6e 67 73 2e 0d 0a 0d 0a 20 20 54 6f 20 70 72 6f 74 65 63 74 20 79 6f 75 72 20 72 69 67 68 74 ings.......To.protect.your.right
5f9e0 73 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 6d 61 6b 65 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 s,.we.need.to.make.restrictions.
5fa00 74 68 61 74 20 66 6f 72 62 69 64 0d 0a 61 6e 79 6f 6e 65 20 74 6f 20 64 65 6e 79 20 79 6f 75 20 that.forbid..anyone.to.deny.you.
5fa20 74 68 65 73 65 20 72 69 67 68 74 73 20 6f 72 20 74 6f 20 61 73 6b 20 79 6f 75 20 74 6f 20 73 75 these.rights.or.to.ask.you.to.su
5fa40 72 72 65 6e 64 65 72 20 74 68 65 20 72 69 67 68 74 73 2e 0d 0a 54 68 65 73 65 20 72 65 73 74 72 rrender.the.rights...These.restr
5fa60 69 63 74 69 6f 6e 73 20 74 72 61 6e 73 6c 61 74 65 20 74 6f 20 63 65 72 74 61 69 6e 20 72 65 73 ictions.translate.to.certain.res
5fa80 70 6f 6e 73 69 62 69 6c 69 74 69 65 73 20 66 6f 72 20 79 6f 75 20 69 66 20 79 6f 75 0d 0a 64 69 ponsibilities.for.you.if.you..di
5faa0 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 73 6f 66 74 77 61 72 65 2c stribute.copies.of.the.software,
5fac0 20 6f 72 20 69 66 20 79 6f 75 20 6d 6f 64 69 66 79 20 69 74 2e 0d 0a 0d 0a 20 20 46 6f 72 20 65 .or.if.you.modify.it.......For.e
5fae0 78 61 6d 70 6c 65 2c 20 69 66 20 79 6f 75 20 64 69 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 xample,.if.you.distribute.copies
5fb00 20 6f 66 20 73 75 63 68 20 61 20 70 72 6f 67 72 61 6d 2c 20 77 68 65 74 68 65 72 0d 0a 67 72 61 .of.such.a.program,.whether..gra
5fb20 74 69 73 20 6f 72 20 66 6f 72 20 61 20 66 65 65 2c 20 79 6f 75 20 6d 75 73 74 20 67 69 76 65 20 tis.or.for.a.fee,.you.must.give.
5fb40 74 68 65 20 72 65 63 69 70 69 65 6e 74 73 20 61 6c 6c 20 74 68 65 20 72 69 67 68 74 73 20 74 68 the.recipients.all.the.rights.th
5fb60 61 74 0d 0a 79 6f 75 20 68 61 76 65 2e 20 20 59 6f 75 20 6d 75 73 74 20 6d 61 6b 65 20 73 75 72 at..you.have...You.must.make.sur
5fb80 65 20 74 68 61 74 20 74 68 65 79 2c 20 74 6f 6f 2c 20 72 65 63 65 69 76 65 20 6f 72 20 63 61 6e e.that.they,.too,.receive.or.can
5fba0 20 67 65 74 20 74 68 65 0d 0a 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 20 41 6e 64 20 79 6f 75 20 .get.the..source.code...And.you.
5fbc0 6d 75 73 74 20 73 68 6f 77 20 74 68 65 6d 20 74 68 65 73 65 20 74 65 72 6d 73 20 73 6f 20 74 68 must.show.them.these.terms.so.th
5fbe0 65 79 20 6b 6e 6f 77 20 74 68 65 69 72 0d 0a 72 69 67 68 74 73 2e 0d 0a 0d 0a 20 20 57 65 20 70 ey.know.their..rights.......We.p
5fc00 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 6f 20 73 74 65 70 rotect.your.rights.with.two.step
5fc20 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 61 72 65 2c 20 61 s:.(1).copyright.the.software,.a
5fc40 6e 64 0d 0a 28 32 29 20 6f 66 66 65 72 20 79 6f 75 20 74 68 69 73 20 6c 69 63 65 6e 73 65 20 77 nd..(2).offer.you.this.license.w
5fc60 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 73 69 6f 6e 20 hich.gives.you.legal.permission.
5fc80 74 6f 20 63 6f 70 79 2c 0d 0a 64 69 73 74 72 69 62 75 74 65 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 to.copy,..distribute.and/or.modi
5fca0 66 79 20 74 68 65 20 73 6f 66 74 77 61 72 65 2e 0d 0a 0d 0a 20 20 41 6c 73 6f 2c 20 66 6f 72 20 fy.the.software.......Also,.for.
5fcc0 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 75 72 each.author's.protection.and.our
5fce0 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 0d 0a 74 68 61 74 s,.we.want.to.make.certain..that
5fd00 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 65 .everyone.understands.that.there
5fd20 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 0d 0a 73 .is.no.warranty.for.this.free..s
5fd40 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
5fd60 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
5fd80 20 6f 6e 2c 20 77 65 0d 0a 77 61 6e 74 20 69 74 73 20 72 65 63 69 70 69 65 6e 74 73 20 74 6f 20 .on,.we..want.its.recipients.to.
5fda0 6b 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 know.that.what.they.have.is.not.
5fdc0 74 68 65 20 6f 72 69 67 69 6e 61 6c 2c 20 73 6f 0d 0a 74 68 61 74 20 61 6e 79 20 70 72 6f 62 6c the.original,.so..that.any.probl
5fde0 65 6d 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 ems.introduced.by.others.will.no
5fe00 74 20 72 65 66 6c 65 63 74 20 6f 6e 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 0d 0a 61 75 74 68 6f t.reflect.on.the.original..autho
5fe20 72 73 27 20 72 65 70 75 74 61 74 69 6f 6e 73 2e 0d 0a 0d 0a 20 20 46 69 6e 61 6c 6c 79 2c 20 61 rs'.reputations.......Finally,.a
5fe40 6e 79 20 66 72 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 ny.free.program.is.threatened.co
5fe60 6e 73 74 61 6e 74 6c 79 20 62 79 20 73 6f 66 74 77 61 72 65 0d 0a 70 61 74 65 6e 74 73 2e 20 20 nstantly.by.software..patents...
5fe80 57 65 20 77 69 73 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 We.wish.to.avoid.the.danger.that
5fea0 20 72 65 64 69 73 74 72 69 62 75 74 6f 72 73 20 6f 66 20 61 20 66 72 65 65 0d 0a 70 72 6f 67 72 .redistributors.of.a.free..progr
5fec0 61 6d 20 77 69 6c 6c 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 am.will.individually.obtain.pate
5fee0 6e 74 20 6c 69 63 65 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 nt.licenses,.in.effect.making.th
5ff00 65 0d 0a 70 72 6f 67 72 61 6d 20 70 72 6f 70 72 69 65 74 61 72 79 2e 20 20 54 6f 20 70 72 65 76 e..program.proprietary...To.prev
5ff20 65 6e 74 20 74 68 69 73 2c 20 77 65 20 68 61 76 65 20 6d 61 64 65 20 69 74 20 63 6c 65 61 72 20 ent.this,.we.have.made.it.clear.
5ff40 74 68 61 74 20 61 6e 79 0d 0a 70 61 74 65 6e 74 20 6d 75 73 74 20 62 65 20 6c 69 63 65 6e 73 65 that.any..patent.must.be.license
5ff60 64 20 66 6f 72 20 65 76 65 72 79 6f 6e 65 27 73 20 66 72 65 65 20 75 73 65 20 6f 72 20 6e 6f 74 d.for.everyone's.free.use.or.not
5ff80 20 6c 69 63 65 6e 73 65 64 20 61 74 20 61 6c 6c 2e 0d 0a 0d 0a 20 20 54 68 65 20 70 72 65 63 69 .licensed.at.all.......The.preci
5ffa0 73 65 20 74 65 72 6d 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 se.terms.and.conditions.for.copy
5ffc0 69 6e 67 2c 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 0d 0a 6d 6f 64 69 66 69 63 61 74 ing,.distribution.and..modificat
5ffe0 69 6f 6e 20 66 6f 6c 6c 6f 77 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ion.follow......................
60000 20 20 20 47 4e 55 20 47 45 4e 45 52 41 4c 20 50 55 42 4c 49 43 20 4c 49 43 45 4e 53 45 0d 0a 20 ...GNU.GENERAL.PUBLIC.LICENSE...
60020 20 20 54 45 52 4d 53 20 41 4e 44 20 43 4f 4e 44 49 54 49 4f 4e 53 20 46 4f 52 20 43 4f 50 59 49 ..TERMS.AND.CONDITIONS.FOR.COPYI
60040 4e 47 2c 20 44 49 53 54 52 49 42 55 54 49 4f 4e 20 41 4e 44 20 4d 4f 44 49 46 49 43 41 54 49 4f NG,.DISTRIBUTION.AND.MODIFICATIO
60060 4e 0d 0a 0d 0a 20 20 30 2e 20 54 68 69 73 20 4c 69 63 65 6e 73 65 20 61 70 70 6c 69 65 73 20 74 N......0..This.License.applies.t
60080 6f 20 61 6e 79 20 70 72 6f 67 72 61 6d 20 6f 72 20 6f 74 68 65 72 20 77 6f 72 6b 20 77 68 69 63 o.any.program.or.other.work.whic
600a0 68 20 63 6f 6e 74 61 69 6e 73 0d 0a 61 20 6e 6f 74 69 63 65 20 70 6c 61 63 65 64 20 62 79 20 74 h.contains..a.notice.placed.by.t
600c0 68 65 20 63 6f 70 79 72 69 67 68 74 20 68 6f 6c 64 65 72 20 73 61 79 69 6e 67 20 69 74 20 6d 61 he.copyright.holder.saying.it.ma
600e0 79 20 62 65 20 64 69 73 74 72 69 62 75 74 65 64 0d 0a 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d y.be.distributed..under.the.term
60100 73 20 6f 66 20 74 68 69 73 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 s.of.this.General.Public.License
60120 2e 20 20 54 68 65 20 22 50 72 6f 67 72 61 6d 22 2c 20 62 65 6c 6f 77 2c 0d 0a 72 65 66 65 72 73 ...The."Program",.below,..refers
60140 20 74 6f 20 61 6e 79 20 73 75 63 68 20 70 72 6f 67 72 61 6d 20 6f 72 20 77 6f 72 6b 2c 20 61 6e .to.any.such.program.or.work,.an
60160 64 20 61 20 22 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 22 0d d.a."work.based.on.the.Program".
60180 0a 6d 65 61 6e 73 20 65 69 74 68 65 72 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 6e 79 .means.either.the.Program.or.any
601a0 20 64 65 72 69 76 61 74 69 76 65 20 77 6f 72 6b 20 75 6e 64 65 72 20 63 6f 70 79 72 69 67 68 74 .derivative.work.under.copyright
601c0 20 6c 61 77 3a 0d 0a 74 68 61 74 20 69 73 20 74 6f 20 73 61 79 2c 20 61 20 77 6f 72 6b 20 63 6f .law:..that.is.to.say,.a.work.co
601e0 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 61 20 70 6f 72 74 69 6f ntaining.the.Program.or.a.portio
60200 6e 20 6f 66 20 69 74 2c 0d 0a 65 69 74 68 65 72 20 76 65 72 62 61 74 69 6d 20 6f 72 20 77 69 74 n.of.it,..either.verbatim.or.wit
60220 68 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 61 6e 64 2f 6f 72 20 74 72 61 6e 73 6c 61 74 65 h.modifications.and/or.translate
60240 64 20 69 6e 74 6f 20 61 6e 6f 74 68 65 72 0d 0a 6c 61 6e 67 75 61 67 65 2e 20 20 28 48 65 72 65 d.into.another..language...(Here
60260 69 6e 61 66 74 65 72 2c 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 69 73 20 69 6e 63 6c 75 64 65 64 inafter,.translation.is.included
60280 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 69 6e 0d 0a 74 68 65 20 74 65 72 6d .without.limitation.in..the.term
602a0 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 69 63 65 6e 73 65 65 ."modification".)..Each.licensee
602c0 20 69 73 20 61 64 64 72 65 73 73 65 64 20 61 73 20 22 79 6f 75 22 2e 0d 0a 0d 0a 41 63 74 69 76 .is.addressed.as."you".....Activ
602e0 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 69 73 74 72 69 ities.other.than.copying,.distri
60300 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 20 6e 6f 74 0d bution.and.modification.are.not.
60320 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 65 79 20 61 .covered.by.this.License;.they.a
60340 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 63 74 20 6f re.outside.its.scope...The.act.o
60360 66 0d 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 20 72 65 f..running.the.Program.is.not.re
60380 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 20 74 68 stricted,.and.the.output.from.th
603a0 65 20 50 72 6f 67 72 61 6d 0d 0a 69 73 20 63 6f 76 65 72 65 64 20 6f 6e 6c 79 20 69 66 20 69 74 e.Program..is.covered.only.if.it
603c0 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 61 73 s.contents.constitute.a.work.bas
603e0 65 64 20 6f 6e 20 74 68 65 0d 0a 50 72 6f 67 72 61 6d 20 28 69 6e 64 65 70 65 6e 64 65 6e 74 20 ed.on.the..Program.(independent.
60400 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 74 of.having.been.made.by.running.t
60420 68 65 20 50 72 6f 67 72 61 6d 29 2e 0d 0a 57 68 65 74 68 65 72 20 74 68 61 74 20 69 73 20 74 72 he.Program)...Whether.that.is.tr
60440 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
60460 6f 65 73 2e 0d 0a 0d 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 oes.......1..You.may.copy.and.di
60480 73 74 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 stribute.verbatim.copies.of.the.
604a0 50 72 6f 67 72 61 6d 27 73 0d 0a 73 6f 75 72 63 65 20 63 6f 64 65 20 61 73 20 79 6f 75 20 72 65 Program's..source.code.as.you.re
604c0 63 65 69 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 ceive.it,.in.any.medium,.provide
604e0 64 20 74 68 61 74 20 79 6f 75 0d 0a 63 6f 6e 73 70 69 63 75 6f 75 73 6c 79 20 61 6e 64 20 61 70 d.that.you..conspicuously.and.ap
60500 70 72 6f 70 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 propriately.publish.on.each.copy
60520 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 0d 0a 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 .an.appropriate..copyright.notic
60540 65 20 61 6e 64 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 e.and.disclaimer.of.warranty;.ke
60560 65 70 20 69 6e 74 61 63 74 20 61 6c 6c 20 74 68 65 0d 0a 6e 6f 74 69 63 65 73 20 74 68 61 74 20 ep.intact.all.the..notices.that.
60580 72 65 66 65 72 20 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 refer.to.this.License.and.to.the
605a0 20 61 62 73 65 6e 63 65 20 6f 66 20 61 6e 79 20 77 61 72 72 61 6e 74 79 3b 0d 0a 61 6e 64 20 67 .absence.of.any.warranty;..and.g
605c0 69 76 65 20 61 6e 79 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 ive.any.other.recipients.of.the.
605e0 50 72 6f 67 72 61 6d 20 61 20 63 6f 70 79 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 0d 0a Program.a.copy.of.this.License..
60600 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 50 72 6f 67 72 61 6d 2e 0d 0a 0d 0a 59 6f 75 20 6d along.with.the.Program.....You.m
60620 61 79 20 63 68 61 72 67 65 20 61 20 66 65 65 20 66 6f 72 20 74 68 65 20 70 68 79 73 69 63 61 6c ay.charge.a.fee.for.the.physical
60640 20 61 63 74 20 6f 66 20 74 72 61 6e 73 66 65 72 72 69 6e 67 20 61 20 63 6f 70 79 2c 20 61 6e 64 .act.of.transferring.a.copy,.and
60660 0d 0a 79 6f 75 20 6d 61 79 20 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 20 6f 66 66 65 72 20 77 ..you.may.at.your.option.offer.w
60680 61 72 72 61 6e 74 79 20 70 72 6f 74 65 63 74 69 6f 6e 20 69 6e 20 65 78 63 68 61 6e 67 65 20 66 arranty.protection.in.exchange.f
606a0 6f 72 20 61 20 66 65 65 2e 0d 0a 0d 0a 20 20 32 2e 20 59 6f 75 20 6d 61 79 20 6d 6f 64 69 66 79 or.a.fee.......2..You.may.modify
606c0 20 79 6f 75 72 20 63 6f 70 79 20 6f 72 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 50 72 6f 67 .your.copy.or.copies.of.the.Prog
606e0 72 61 6d 20 6f 72 20 61 6e 79 20 70 6f 72 74 69 6f 6e 0d 0a 6f 66 20 69 74 2c 20 74 68 75 73 20 ram.or.any.portion..of.it,.thus.
60700 66 6f 72 6d 69 6e 67 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 forming.a.work.based.on.the.Prog
60720 72 61 6d 2c 20 61 6e 64 20 63 6f 70 79 20 61 6e 64 0d 0a 64 69 73 74 72 69 62 75 74 65 20 73 75 ram,.and.copy.and..distribute.su
60740 63 68 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 6f 72 20 77 6f 72 6b 20 75 6e 64 65 72 20 74 ch.modifications.or.work.under.t
60760 68 65 20 74 65 72 6d 73 20 6f 66 20 53 65 63 74 69 6f 6e 20 31 0d 0a 61 62 6f 76 65 2c 20 70 72 he.terms.of.Section.1..above,.pr
60780 6f 76 69 64 65 64 20 74 68 61 74 20 79 6f 75 20 61 6c 73 6f 20 6d 65 65 74 20 61 6c 6c 20 6f 66 ovided.that.you.also.meet.all.of
607a0 20 74 68 65 73 65 20 63 6f 6e 64 69 74 69 6f 6e 73 3a 0d 0a 0d 0a 20 20 20 20 61 29 20 59 6f 75 .these.conditions:........a).You
607c0 20 6d 75 73 74 20 63 61 75 73 65 20 74 68 65 20 6d 6f 64 69 66 69 65 64 20 66 69 6c 65 73 20 74 .must.cause.the.modified.files.t
607e0 6f 20 63 61 72 72 79 20 70 72 6f 6d 69 6e 65 6e 74 20 6e 6f 74 69 63 65 73 0d 0a 20 20 20 20 73 o.carry.prominent.notices......s
60800 74 61 74 69 6e 67 20 74 68 61 74 20 79 6f 75 20 63 68 61 6e 67 65 64 20 74 68 65 20 66 69 6c 65 tating.that.you.changed.the.file
60820 73 20 61 6e 64 20 74 68 65 20 64 61 74 65 20 6f 66 20 61 6e 79 20 63 68 61 6e 67 65 2e 0d 0a 0d s.and.the.date.of.any.change....
60840 0a 20 20 20 20 62 29 20 59 6f 75 20 6d 75 73 74 20 63 61 75 73 65 20 61 6e 79 20 77 6f 72 6b 20 .....b).You.must.cause.any.work.
60860 74 68 61 74 20 79 6f 75 20 64 69 73 74 72 69 62 75 74 65 20 6f 72 20 70 75 62 6c 69 73 68 2c 20 that.you.distribute.or.publish,.
60880 74 68 61 74 20 69 6e 0d 0a 20 20 20 20 77 68 6f 6c 65 20 6f 72 20 69 6e 20 70 61 72 74 20 63 6f that.in......whole.or.in.part.co
608a0 6e 74 61 69 6e 73 20 6f 72 20 69 73 20 64 65 72 69 76 65 64 20 66 72 6f 6d 20 74 68 65 20 50 72 ntains.or.is.derived.from.the.Pr
608c0 6f 67 72 61 6d 20 6f 72 20 61 6e 79 0d 0a 20 20 20 20 70 61 72 74 20 74 68 65 72 65 6f 66 2c 20 ogram.or.any......part.thereof,.
608e0 74 6f 20 62 65 20 6c 69 63 65 6e 73 65 64 20 61 73 20 61 20 77 68 6f 6c 65 20 61 74 20 6e 6f 20 to.be.licensed.as.a.whole.at.no.
60900 63 68 61 72 67 65 20 74 6f 20 61 6c 6c 20 74 68 69 72 64 0d 0a 20 20 20 20 70 61 72 74 69 65 73 charge.to.all.third......parties
60920 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 .under.the.terms.of.this.License
60940 2e 0d 0a 0d 0a 20 20 20 20 63 29 20 49 66 20 74 68 65 20 6d 6f 64 69 66 69 65 64 20 70 72 6f 67 .........c).If.the.modified.prog
60960 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 73 20 69 6e 74 65 ram.normally.reads.commands.inte
60980 72 61 63 74 69 76 65 6c 79 0d 0a 20 20 20 20 77 68 65 6e 20 72 75 6e 2c 20 79 6f 75 20 6d 75 73 ractively......when.run,.you.mus
609a0 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 6e 6e 69 6e 67 t.cause.it,.when.started.running
609c0 20 66 6f 72 20 73 75 63 68 0d 0a 20 20 20 20 69 6e 74 65 72 61 63 74 69 76 65 20 75 73 65 20 69 .for.such......interactive.use.i
609e0 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 70 72 69 6e n.the.most.ordinary.way,.to.prin
60a00 74 20 6f 72 20 64 69 73 70 6c 61 79 20 61 6e 0d 0a 20 20 20 20 61 6e 6e 6f 75 6e 63 65 6d 65 6e t.or.display.an......announcemen
60a20 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 70 79 72 t.including.an.appropriate.copyr
60a40 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 20 61 0d 0a 20 20 20 20 6e 6f 74 69 63 65 20 74 68 ight.notice.and.a......notice.th
60a60 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 73 65 at.there.is.no.warranty.(or.else
60a80 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 0d 0a 20 20 20 20 61 ,.saying.that.you.provide......a
60aa0 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 65 .warranty).and.that.users.may.re
60ac0 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 0d 0a 20 20 distribute.the.program.under....
60ae0 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.
60b00 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
60b20 68 69 73 0d 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 his......License...(Exception:.i
60b40 66 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 f.the.Program.itself.is.interact
60b60 69 76 65 20 62 75 74 0d 0a 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 6e 6f 72 6d 61 6c 6c 79 20 70 ive.but......does.not.normally.p
60b80 72 69 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 rint.such.an.announcement,.your.
60ba0 77 6f 72 6b 20 62 61 73 65 64 20 6f 6e 0d 0a 20 20 20 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 work.based.on......the.Program.i
60bc0 73 20 6e 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 s.not.required.to.print.an.annou
60be0 6e 63 65 6d 65 6e 74 2e 29 0d 0a 0d 0a 54 68 65 73 65 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 ncement.)....These.requirements.
60c00 61 70 70 6c 79 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 apply.to.the.modified.work.as.a.
60c20 77 68 6f 6c 65 2e 20 20 49 66 0d 0a 69 64 65 6e 74 69 66 69 61 62 6c 65 20 73 65 63 74 69 6f 6e whole...If..identifiable.section
60c40 73 20 6f 66 20 74 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 s.of.that.work.are.not.derived.f
60c60 72 6f 6d 20 74 68 65 20 50 72 6f 67 72 61 6d 2c 0d 0a 61 6e 64 20 63 61 6e 20 62 65 20 72 65 61 rom.the.Program,..and.can.be.rea
60c80 73 6f 6e 61 62 6c 79 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 sonably.considered.independent.a
60ca0 6e 64 20 73 65 70 61 72 61 74 65 20 77 6f 72 6b 73 20 69 6e 0d 0a 74 68 65 6d 73 65 6c 76 65 73 nd.separate.works.in..themselves
60cc0 2c 20 74 68 65 6e 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 61 6e 64 20 69 74 73 20 74 65 72 ,.then.this.License,.and.its.ter
60ce0 6d 73 2c 20 64 6f 20 6e 6f 74 20 61 70 70 6c 79 20 74 6f 20 74 68 6f 73 65 0d 0a 73 65 63 74 69 ms,.do.not.apply.to.those..secti
60d00 6f 6e 73 20 77 68 65 6e 20 79 6f 75 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 6d 20 61 73 20 ons.when.you.distribute.them.as.
60d20 73 65 70 61 72 61 74 65 20 77 6f 72 6b 73 2e 20 20 42 75 74 20 77 68 65 6e 20 79 6f 75 0d 0a 64 separate.works...But.when.you..d
60d40 69 73 74 72 69 62 75 74 65 20 74 68 65 20 73 61 6d 65 20 73 65 63 74 69 6f 6e 73 20 61 73 20 70 istribute.the.same.sections.as.p
60d60 61 72 74 20 6f 66 20 61 20 77 68 6f 6c 65 20 77 68 69 63 68 20 69 73 20 61 20 77 6f 72 6b 20 62 art.of.a.whole.which.is.a.work.b
60d80 61 73 65 64 0d 0a 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 2c 20 74 68 65 20 64 69 73 74 72 69 ased..on.the.Program,.the.distri
60da0 62 75 74 69 6f 6e 20 6f 66 20 74 68 65 20 77 68 6f 6c 65 20 6d 75 73 74 20 62 65 20 6f 6e 20 74 bution.of.the.whole.must.be.on.t
60dc0 68 65 20 74 65 72 6d 73 20 6f 66 0d 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 77 68 6f 73 65 he.terms.of..this.License,.whose
60de0 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 66 6f 72 20 6f 74 68 65 72 20 6c 69 63 65 6e 73 65 65 73 .permissions.for.other.licensees
60e00 20 65 78 74 65 6e 64 20 74 6f 20 74 68 65 0d 0a 65 6e 74 69 72 65 20 77 68 6f 6c 65 2c 20 61 6e .extend.to.the..entire.whole,.an
60e20 64 20 74 68 75 73 20 74 6f 20 65 61 63 68 20 61 6e 64 20 65 76 65 72 79 20 70 61 72 74 20 72 65 d.thus.to.each.and.every.part.re
60e40 67 61 72 64 6c 65 73 73 20 6f 66 20 77 68 6f 20 77 72 6f 74 65 20 69 74 2e 0d 0a 0d 0a 54 68 75 gardless.of.who.wrote.it.....Thu
60e60 73 2c 20 69 74 20 69 73 20 6e 6f 74 20 74 68 65 20 69 6e 74 65 6e 74 20 6f 66 20 74 68 69 73 20 s,.it.is.not.the.intent.of.this.
60e80 73 65 63 74 69 6f 6e 20 74 6f 20 63 6c 61 69 6d 20 72 69 67 68 74 73 20 6f 72 20 63 6f 6e 74 65 section.to.claim.rights.or.conte
60ea0 73 74 0d 0a 79 6f 75 72 20 72 69 67 68 74 73 20 74 6f 20 77 6f 72 6b 20 77 72 69 74 74 65 6e 20 st..your.rights.to.work.written.
60ec0 65 6e 74 69 72 65 6c 79 20 62 79 20 79 6f 75 3b 20 72 61 74 68 65 72 2c 20 74 68 65 20 69 6e 74 entirely.by.you;.rather,.the.int
60ee0 65 6e 74 20 69 73 20 74 6f 0d 0a 65 78 65 72 63 69 73 65 20 74 68 65 20 72 69 67 68 74 20 74 6f ent.is.to..exercise.the.right.to
60f00 20 63 6f 6e 74 72 6f 6c 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6f 66 20 64 65 72 .control.the.distribution.of.der
60f20 69 76 61 74 69 76 65 20 6f 72 0d 0a 63 6f 6c 6c 65 63 74 69 76 65 20 77 6f 72 6b 73 20 62 61 73 ivative.or..collective.works.bas
60f40 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 2e 0d 0a 0d 0a 49 6e 20 61 64 64 69 74 69 6f ed.on.the.Program.....In.additio
60f60 6e 2c 20 6d 65 72 65 20 61 67 67 72 65 67 61 74 69 6f 6e 20 6f 66 20 61 6e 6f 74 68 65 72 20 77 n,.mere.aggregation.of.another.w
60f80 6f 72 6b 20 6e 6f 74 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 0d 0a 77 69 ork.not.based.on.the.Program..wi
60fa0 74 68 20 74 68 65 20 50 72 6f 67 72 61 6d 20 28 6f 72 20 77 69 74 68 20 61 20 77 6f 72 6b 20 62 th.the.Program.(or.with.a.work.b
60fc0 61 73 65 64 20 6f 6e 20 74 68 65 20 50 72 6f 67 72 61 6d 29 20 6f 6e 20 61 20 76 6f 6c 75 6d 65 ased.on.the.Program).on.a.volume
60fe0 20 6f 66 0d 0a 61 20 73 74 6f 72 61 67 65 20 6f 72 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 6d .of..a.storage.or.distribution.m
61000 65 64 69 75 6d 20 64 6f 65 73 20 6e 6f 74 20 62 72 69 6e 67 20 74 68 65 20 6f 74 68 65 72 20 77 edium.does.not.bring.the.other.w
61020 6f 72 6b 20 75 6e 64 65 72 0d 0a 74 68 65 20 73 63 6f 70 65 20 6f 66 20 74 68 69 73 20 4c 69 63 ork.under..the.scope.of.this.Lic
61040 65 6e 73 65 2e 0d 0a 0d 0a 20 20 33 2e 20 59 6f 75 20 6d 61 79 20 63 6f 70 79 20 61 6e 64 20 64 ense.......3..You.may.copy.and.d
61060 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 20 61 20 77 6f 72 6b istribute.the.Program.(or.a.work
61080 20 62 61 73 65 64 20 6f 6e 20 69 74 2c 0d 0a 75 6e 64 65 72 20 53 65 63 74 69 6f 6e 20 32 29 20 .based.on.it,..under.Section.2).
610a0 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 66 6f 72 in.object.code.or.executable.for
610c0 6d 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 0d 0a 53 65 63 74 69 6f 6e 73 20 31 m.under.the.terms.of..Sections.1
610e0 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 79 6f 75 20 61 .and.2.above.provided.that.you.a
61100 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 3a 0d 0a 0d 0a lso.do.one.of.the.following:....
61120 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 63 6f 6d ....a).Accompany.it.with.the.com
61140 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 65 61 64 plete.corresponding.machine-read
61160 61 62 6c 65 0d 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 75 73 able......source.code,.which.mus
61180 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 6d 73 t.be.distributed.under.the.terms
611a0 20 6f 66 20 53 65 63 74 69 6f 6e 73 0d 0a 20 20 20 20 31 20 61 6e 64 20 32 20 61 62 6f 76 65 20 .of.Sections......1.and.2.above.
611c0 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 72 on.a.medium.customarily.used.for
611e0 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 0d 0a 0d 0a 20 20 .software.interchange;.or,......
61200 20 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 ..b).Accompany.it.with.a.written
61220 20 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 .offer,.valid.for.at.least.three
61240 0d 0a 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 ......years,.to.give.any.third.p
61260 61 72 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 arty,.for.a.charge.no.more.than.
61280 79 6f 75 72 0d 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 your......cost.of.physically.per
612a0 66 6f 72 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 forming.source.distribution,.a.c
612c0 6f 6d 70 6c 65 74 65 0d 0a 20 20 20 20 6d 61 63 68 69 6e 65 2d 72 65 61 64 61 62 6c 65 20 63 6f omplete......machine-readable.co
612e0 70 79 20 6f 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 py.of.the.corresponding.source.c
61300 6f 64 65 2c 20 74 6f 20 62 65 0d 0a 20 20 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 ode,.to.be......distributed.unde
61320 72 20 74 68 65 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 r.the.terms.of.Sections.1.and.2.
61340 61 62 6f 76 65 20 6f 6e 20 61 20 6d 65 64 69 75 6d 0d 0a 20 20 20 20 63 75 73 74 6f 6d 61 72 69 above.on.a.medium......customari
61360 6c 79 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 ly.used.for.software.interchange
61380 3b 20 6f 72 2c 0d 0a 0d 0a 20 20 20 20 63 29 20 41 63 63 6f 6d 70 61 6e 79 20 69 74 20 77 69 74 ;.or,........c).Accompany.it.wit
613a0 68 20 74 68 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 79 6f 75 20 72 65 63 65 69 76 65 64 20 61 h.the.information.you.received.a
613c0 73 20 74 6f 20 74 68 65 20 6f 66 66 65 72 0d 0a 20 20 20 20 74 6f 20 64 69 73 74 72 69 62 75 74 s.to.the.offer......to.distribut
613e0 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 2e 20 20 28 54 e.corresponding.source.code...(T
61400 68 69 73 20 61 6c 74 65 72 6e 61 74 69 76 65 20 69 73 0d 0a 20 20 20 20 61 6c 6c 6f 77 65 64 20 his.alternative.is......allowed.
61420 6f 6e 6c 79 20 66 6f 72 20 6e 6f 6e 63 6f 6d 6d 65 72 63 69 61 6c 20 64 69 73 74 72 69 62 75 74 only.for.noncommercial.distribut
61440 69 6f 6e 20 61 6e 64 20 6f 6e 6c 79 20 69 66 20 79 6f 75 0d 0a 20 20 20 20 72 65 63 65 69 76 65 ion.and.only.if.you......receive
61460 64 20 74 68 65 20 70 72 6f 67 72 61 6d 20 69 6e 20 6f 62 6a 65 63 74 20 63 6f 64 65 20 6f 72 20 d.the.program.in.object.code.or.
61480 65 78 65 63 75 74 61 62 6c 65 20 66 6f 72 6d 20 77 69 74 68 20 73 75 63 68 0d 0a 20 20 20 20 61 executable.form.with.such......a
614a0 6e 20 6f 66 66 65 72 2c 20 69 6e 20 61 63 63 6f 72 64 20 77 69 74 68 20 53 75 62 73 65 63 74 69 n.offer,.in.accord.with.Subsecti
614c0 6f 6e 20 62 20 61 62 6f 76 65 2e 29 0d 0a 0d 0a 54 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 on.b.above.)....The.source.code.
614e0 66 6f 72 20 61 20 77 6f 72 6b 20 6d 65 61 6e 73 20 74 68 65 20 70 72 65 66 65 72 72 65 64 20 66 for.a.work.means.the.preferred.f
61500 6f 72 6d 20 6f 66 20 74 68 65 20 77 6f 72 6b 20 66 6f 72 0d 0a 6d 61 6b 69 6e 67 20 6d 6f 64 69 orm.of.the.work.for..making.modi
61520 66 69 63 61 74 69 6f 6e 73 20 74 6f 20 69 74 2e 20 20 46 6f 72 20 61 6e 20 65 78 65 63 75 74 61 fications.to.it...For.an.executa
61540 62 6c 65 20 77 6f 72 6b 2c 20 63 6f 6d 70 6c 65 74 65 20 73 6f 75 72 63 65 0d 0a 63 6f 64 65 20 ble.work,.complete.source..code.
61560 6d 65 61 6e 73 20 61 6c 6c 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 6f 72 20 61 6c means.all.the.source.code.for.al
61580 6c 20 6d 6f 64 75 6c 65 73 20 69 74 20 63 6f 6e 74 61 69 6e 73 2c 20 70 6c 75 73 20 61 6e 79 0d l.modules.it.contains,.plus.any.
615a0 0a 61 73 73 6f 63 69 61 74 65 64 20 69 6e 74 65 72 66 61 63 65 20 64 65 66 69 6e 69 74 69 6f 6e .associated.interface.definition
615c0 20 66 69 6c 65 73 2c 20 70 6c 75 73 20 74 68 65 20 73 63 72 69 70 74 73 20 75 73 65 64 20 74 6f .files,.plus.the.scripts.used.to
615e0 0d 0a 63 6f 6e 74 72 6f 6c 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 61 6e 64 20 69 6e 73 74 61 6c ..control.compilation.and.instal
61600 6c 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 2e 20 20 48 6f 77 65 76 lation.of.the.executable...Howev
61620 65 72 2c 20 61 73 20 61 0d 0a 73 70 65 63 69 61 6c 20 65 78 63 65 70 74 69 6f 6e 2c 20 74 68 65 er,.as.a..special.exception,.the
61640 20 73 6f 75 72 63 65 20 63 6f 64 65 20 64 69 73 74 72 69 62 75 74 65 64 20 6e 65 65 64 20 6e 6f .source.code.distributed.need.no
61660 74 20 69 6e 63 6c 75 64 65 0d 0a 61 6e 79 74 68 69 6e 67 20 74 68 61 74 20 69 73 20 6e 6f 72 6d t.include..anything.that.is.norm
61680 61 6c 6c 79 20 64 69 73 74 72 69 62 75 74 65 64 20 28 69 6e 20 65 69 74 68 65 72 20 73 6f 75 72 ally.distributed.(in.either.sour
616a0 63 65 20 6f 72 20 62 69 6e 61 72 79 0d 0a 66 6f 72 6d 29 20 77 69 74 68 20 74 68 65 20 6d 61 6a ce.or.binary..form).with.the.maj
616c0 6f 72 20 63 6f 6d 70 6f 6e 65 6e 74 73 20 28 63 6f 6d 70 69 6c 65 72 2c 20 6b 65 72 6e 65 6c 2c or.components.(compiler,.kernel,
616e0 20 61 6e 64 20 73 6f 20 6f 6e 29 20 6f 66 20 74 68 65 0d 0a 6f 70 65 72 61 74 69 6e 67 20 73 79 .and.so.on).of.the..operating.sy
61700 73 74 65 6d 20 6f 6e 20 77 68 69 63 68 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 20 72 75 6e stem.on.which.the.executable.run
61720 73 2c 20 75 6e 6c 65 73 73 20 74 68 61 74 20 63 6f 6d 70 6f 6e 65 6e 74 0d 0a 69 74 73 65 6c 66 s,.unless.that.component..itself
61740 20 61 63 63 6f 6d 70 61 6e 69 65 73 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 2e 0d 0a 0d 0a .accompanies.the.executable.....
61760 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 61 62 6c 65 20 6f 72 If.distribution.of.executable.or
61780 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 66 66 65 72 69 6e 67 .object.code.is.made.by.offering
617a0 0d 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 73 69 67 6e 61 74 ..access.to.copy.from.a.designat
617c0 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 75 69 76 61 6c 65 ed.place,.then.offering.equivale
617e0 6e 74 0d 0a 61 63 63 65 73 73 20 74 6f 20 63 6f 70 79 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f nt..access.to.copy.the.source.co
61800 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 74 73 20 61 73 de.from.the.same.place.counts.as
61820 0d 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 20 63 6f 64 ..distribution.of.the.source.cod
61840 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 20 61 72 65 e,.even.though.third.parties.are
61860 20 6e 6f 74 0d 0a 63 6f 6d 70 65 6c 6c 65 64 20 74 6f 20 63 6f 70 79 20 74 68 65 20 73 6f 75 72 .not..compelled.to.copy.the.sour
61880 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 2e 0d 0a ce.along.with.the.object.code...
618a0 0d 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 2c ....4..You.may.not.copy,.modify,
618c0 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 50 .sublicense,.or.distribute.the.P
618e0 72 6f 67 72 61 6d 0d 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 rogram..except.as.expressly.prov
61900 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
61920 74 65 6d 70 74 0d 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 tempt..otherwise.to.copy,.modify
61940 2c 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 ,.sublicense.or.distribute.the.P
61960 72 6f 67 72 61 6d 20 69 73 0d 0a 76 6f 69 64 2c 20 61 6e 64 20 77 69 6c 6c 20 61 75 74 6f 6d 61 rogram.is..void,.and.will.automa
61980 74 69 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 tically.terminate.your.rights.un
619a0 64 65 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0d 0a 48 6f 77 65 76 65 72 2c 20 70 61 72 74 der.this.License...However,.part
619c0 69 65 73 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 ies.who.have.received.copies,.or
619e0 20 72 69 67 68 74 73 2c 20 66 72 6f 6d 20 79 6f 75 20 75 6e 64 65 72 0d 0a 74 68 69 73 20 4c 69 .rights,.from.you.under..this.Li
61a00 63 65 6e 73 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 cense.will.not.have.their.licens
61a20 65 73 20 74 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 0d 0a 70 es.terminated.so.long.as.such..p
61a40 61 72 74 69 65 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 arties.remain.in.full.compliance
61a60 2e 0d 0a 0d 0a 20 20 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 .......5..You.are.not.required.t
61a80 6f 20 61 63 63 65 70 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 o.accept.this.License,.since.you
61aa0 20 68 61 76 65 20 6e 6f 74 0d 0a 73 69 67 6e 65 64 20 69 74 2e 20 20 48 6f 77 65 76 65 72 2c 20 .have.not..signed.it...However,.
61ac0 6e 6f 74 68 69 6e 67 20 65 6c 73 65 20 67 72 61 6e 74 73 20 79 6f 75 20 70 65 72 6d 69 73 73 69 nothing.else.grants.you.permissi
61ae0 6f 6e 20 74 6f 20 6d 6f 64 69 66 79 20 6f 72 0d 0a 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 on.to.modify.or..distribute.the.
61b00 50 72 6f 67 72 61 6d 20 6f 72 20 69 74 73 20 64 65 72 69 76 61 74 69 76 65 20 77 6f 72 6b 73 2e Program.or.its.derivative.works.
61b20 20 20 54 68 65 73 65 20 61 63 74 69 6f 6e 73 20 61 72 65 0d 0a 70 72 6f 68 69 62 69 74 65 64 20 ..These.actions.are..prohibited.
61b40 62 79 20 6c 61 77 20 69 66 20 79 6f 75 20 64 6f 20 6e 6f 74 20 61 63 63 65 70 74 20 74 68 69 73 by.law.if.you.do.not.accept.this
61b60 20 4c 69 63 65 6e 73 65 2e 20 20 54 68 65 72 65 66 6f 72 65 2c 20 62 79 0d 0a 6d 6f 64 69 66 79 .License...Therefore,.by..modify
61b80 69 6e 67 20 6f 72 20 64 69 73 74 72 69 62 75 74 69 6e 67 20 74 68 65 20 50 72 6f 67 72 61 6d 20 ing.or.distributing.the.Program.
61ba0 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
61bc0 61 6d 29 2c 20 79 6f 75 20 69 6e 64 69 63 61 74 65 20 79 6f 75 72 20 61 63 63 65 70 74 61 6e 63 am),.you.indicate.your.acceptanc
61be0 65 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 20 74 6f 20 64 6f 20 73 6f 2c 20 61 6e 64 0d e.of.this.License.to.do.so,.and.
61c00 0a 61 6c 6c 20 69 74 73 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 20 66 6f .all.its.terms.and.conditions.fo
61c20 72 20 63 6f 70 79 69 6e 67 2c 20 64 69 73 74 72 69 62 75 74 69 6e 67 20 6f 72 20 6d 6f 64 69 66 r.copying,.distributing.or.modif
61c40 79 69 6e 67 0d 0a 74 68 65 20 50 72 6f 67 72 61 6d 20 6f 72 20 77 6f 72 6b 73 20 62 61 73 65 64 ying..the.Program.or.works.based
61c60 20 6f 6e 20 69 74 2e 0d 0a 0d 0a 20 20 36 2e 20 45 61 63 68 20 74 69 6d 65 20 79 6f 75 20 72 65 .on.it.......6..Each.time.you.re
61c80 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 20 61 6e 79 20 77 distribute.the.Program.(or.any.w
61ca0 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 29 2c 20 74 68 65 20 ork.based.on.the..Program),.the.
61cc0 72 65 63 69 70 69 65 6e 74 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 72 65 63 65 69 76 65 73 recipient.automatically.receives
61ce0 20 61 20 6c 69 63 65 6e 73 65 20 66 72 6f 6d 20 74 68 65 0d 0a 6f 72 69 67 69 6e 61 6c 20 6c 69 .a.license.from.the..original.li
61d00 63 65 6e 73 6f 72 20 74 6f 20 63 6f 70 79 2c 20 64 69 73 74 72 69 62 75 74 65 20 6f 72 20 6d 6f censor.to.copy,.distribute.or.mo
61d20 64 69 66 79 20 74 68 65 20 50 72 6f 67 72 61 6d 20 73 75 62 6a 65 63 74 20 74 6f 0d 0a 74 68 65 dify.the.Program.subject.to..the
61d40 73 65 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 20 20 59 6f 75 20 6d 61 se.terms.and.conditions...You.ma
61d60 79 20 6e 6f 74 20 69 6d 70 6f 73 65 20 61 6e 79 20 66 75 72 74 68 65 72 0d 0a 72 65 73 74 72 69 y.not.impose.any.further..restri
61d80 63 74 69 6f 6e 73 20 6f 6e 20 74 68 65 20 72 65 63 69 70 69 65 6e 74 73 27 20 65 78 65 72 63 69 ctions.on.the.recipients'.exerci
61da0 73 65 20 6f 66 20 74 68 65 20 72 69 67 68 74 73 20 67 72 61 6e 74 65 64 20 68 65 72 65 69 6e 2e se.of.the.rights.granted.herein.
61dc0 0d 0a 59 6f 75 20 61 72 65 20 6e 6f 74 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 65 6e ..You.are.not.responsible.for.en
61de0 66 6f 72 63 69 6e 67 20 63 6f 6d 70 6c 69 61 6e 63 65 20 62 79 20 74 68 69 72 64 20 70 61 72 74 forcing.compliance.by.third.part
61e00 69 65 73 20 74 6f 0d 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0d 0a 0d 0a 20 20 37 2e 20 49 66 ies.to..this.License.......7..If
61e20 2c 20 61 73 20 61 20 63 6f 6e 73 65 71 75 65 6e 63 65 20 6f 66 20 61 20 63 6f 75 72 74 20 6a 75 ,.as.a.consequence.of.a.court.ju
61e40 64 67 6d 65 6e 74 20 6f 72 20 61 6c 6c 65 67 61 74 69 6f 6e 20 6f 66 20 70 61 74 65 6e 74 0d 0a dgment.or.allegation.of.patent..
61e60 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 74 68 65 72 20 72 65 infringement.or.for.any.other.re
61e80 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 6e 74 20 69 73 73 75 ason.(not.limited.to.patent.issu
61ea0 65 73 29 2c 0d 0a 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 69 6d 70 6f 73 65 64 20 6f 6e 20 es),..conditions.are.imposed.on.
61ec0 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 72 2c 20 61 67 72 you.(whether.by.court.order,.agr
61ee0 65 65 6d 65 6e 74 20 6f 72 0d 0a 6f 74 68 65 72 77 69 73 65 29 20 74 68 61 74 20 63 6f 6e 74 72 eement.or..otherwise).that.contr
61f00 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 73 20 4c 69 63 adict.the.conditions.of.this.Lic
61f20 65 6e 73 65 2c 20 74 68 65 79 20 64 6f 20 6e 6f 74 0d 0a 65 78 63 75 73 65 20 79 6f 75 20 66 72 ense,.they.do.not..excuse.you.fr
61f40 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 63 65 6e 73 om.the.conditions.of.this.Licens
61f60 65 2e 20 20 49 66 20 79 6f 75 20 63 61 6e 6e 6f 74 0d 0a 64 69 73 74 72 69 62 75 74 65 20 73 6f e...If.you.cannot..distribute.so
61f80 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 20 79 6f .as.to.satisfy.simultaneously.yo
61fa0 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 0d 0a 4c 69 63 65 6e ur.obligations.under.this..Licen
61fc0 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 69 67 se.and.any.other.pertinent.oblig
61fe0 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 79 6f ations,.then.as.a.consequence.yo
62000 75 0d 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 61 u..may.not.distribute.the.Progra
62020 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 74 m.at.all...For.example,.if.a.pat
62040 65 6e 74 0d 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 ent..license.would.not.permit.ro
62060 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
62080 20 50 72 6f 67 72 61 6d 20 62 79 0d 0a 61 6c 6c 20 74 68 6f 73 65 20 77 68 6f 20 72 65 63 65 69 .Program.by..all.those.who.recei
620a0 76 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 ve.copies.directly.or.indirectly
620c0 20 74 68 72 6f 75 67 68 20 79 6f 75 2c 20 74 68 65 6e 0d 0a 74 68 65 20 6f 6e 6c 79 20 77 61 79 .through.you,.then..the.only.way
620e0 20 79 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 .you.could.satisfy.both.it.and.t
62100 68 69 73 20 4c 69 63 65 6e 73 65 20 77 6f 75 6c 64 20 62 65 20 74 6f 0d 0a 72 65 66 72 61 69 6e his.License.would.be.to..refrain
62120 20 65 6e 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 .entirely.from.distribution.of.t
62140 68 65 20 50 72 6f 67 72 61 6d 2e 0d 0a 0d 0a 49 66 20 61 6e 79 20 70 6f 72 74 69 6f 6e 20 6f 66 he.Program.....If.any.portion.of
62160 20 74 68 69 73 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 .this.section.is.held.invalid.or
62180 20 75 6e 65 6e 66 6f 72 63 65 61 62 6c 65 20 75 6e 64 65 72 0d 0a 61 6e 79 20 70 61 72 74 69 63 .unenforceable.under..any.partic
621a0 75 6c 61 72 20 63 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 ular.circumstance,.the.balance.o
621c0 66 20 74 68 65 20 73 65 63 74 69 6f 6e 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 0d 0a 61 70 f.the.section.is.intended.to..ap
621e0 70 6c 79 20 61 6e 64 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 ply.and.the.section.as.a.whole.i
62200 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 61 70 70 6c 79 20 69 6e 20 6f 74 68 65 72 0d 0a 63 69 s.intended.to.apply.in.other..ci
62220 72 63 75 6d 73 74 61 6e 63 65 73 2e 0d 0a 0d 0a 49 74 20 69 73 20 6e 6f 74 20 74 68 65 20 70 75 rcumstances.....It.is.not.the.pu
62240 72 70 6f 73 65 20 6f 66 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 74 6f 20 69 6e 64 75 63 65 20 rpose.of.this.section.to.induce.
62260 79 6f 75 20 74 6f 20 69 6e 66 72 69 6e 67 65 20 61 6e 79 0d 0a 70 61 74 65 6e 74 73 20 6f 72 20 you.to.infringe.any..patents.or.
62280 6f 74 68 65 72 20 70 72 6f 70 65 72 74 79 20 72 69 67 68 74 20 63 6c 61 69 6d 73 20 6f 72 20 74 other.property.right.claims.or.t
622a0 6f 20 63 6f 6e 74 65 73 74 20 76 61 6c 69 64 69 74 79 20 6f 66 20 61 6e 79 0d 0a 73 75 63 68 20 o.contest.validity.of.any..such.
622c0 63 6c 61 69 6d 73 3b 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 68 61 73 20 74 68 65 20 73 6f 6c claims;.this.section.has.the.sol
622e0 65 20 70 75 72 70 6f 73 65 20 6f 66 20 70 72 6f 74 65 63 74 69 6e 67 20 74 68 65 0d 0a 69 6e 74 e.purpose.of.protecting.the..int
62300 65 67 72 69 74 79 20 6f 66 20 74 68 65 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 64 69 73 74 egrity.of.the.free.software.dist
62320 72 69 62 75 74 69 6f 6e 20 73 79 73 74 65 6d 2c 20 77 68 69 63 68 20 69 73 0d 0a 69 6d 70 6c 65 ribution.system,.which.is..imple
62340 6d 65 6e 74 65 64 20 62 79 20 70 75 62 6c 69 63 20 6c 69 63 65 6e 73 65 20 70 72 61 63 74 69 63 mented.by.public.license.practic
62360 65 73 2e 20 20 4d 61 6e 79 20 70 65 6f 70 6c 65 20 68 61 76 65 20 6d 61 64 65 0d 0a 67 65 6e 65 es...Many.people.have.made..gene
62380 72 6f 75 73 20 63 6f 6e 74 72 69 62 75 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 77 69 64 65 20 72 rous.contributions.to.the.wide.r
623a0 61 6e 67 65 20 6f 66 20 73 6f 66 74 77 61 72 65 20 64 69 73 74 72 69 62 75 74 65 64 0d 0a 74 68 ange.of.software.distributed..th
623c0 72 6f 75 67 68 20 74 68 61 74 20 73 79 73 74 65 6d 20 69 6e 20 72 65 6c 69 61 6e 63 65 20 6f 6e rough.that.system.in.reliance.on
623e0 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 6f 66 20 74 68 61 74 0d .consistent.application.of.that.
62400 0a 73 79 73 74 65 6d 3b 20 69 74 20 69 73 20 75 70 20 74 6f 20 74 68 65 20 61 75 74 68 6f 72 2f .system;.it.is.up.to.the.author/
62420 64 6f 6e 6f 72 20 74 6f 20 64 65 63 69 64 65 20 69 66 20 68 65 20 6f 72 20 73 68 65 20 69 73 20 donor.to.decide.if.he.or.she.is.
62440 77 69 6c 6c 69 6e 67 0d 0a 74 6f 20 64 69 73 74 72 69 62 75 74 65 20 73 6f 66 74 77 61 72 65 20 willing..to.distribute.software.
62460 74 68 72 6f 75 67 68 20 61 6e 79 20 6f 74 68 65 72 20 73 79 73 74 65 6d 20 61 6e 64 20 61 20 6c through.any.other.system.and.a.l
62480 69 63 65 6e 73 65 65 20 63 61 6e 6e 6f 74 0d 0a 69 6d 70 6f 73 65 20 74 68 61 74 20 63 68 6f 69 icensee.cannot..impose.that.choi
624a0 63 65 2e 0d 0a 0d 0a 54 68 69 73 20 73 65 63 74 69 6f 6e 20 69 73 20 69 6e 74 65 6e 64 65 64 20 ce.....This.section.is.intended.
624c0 74 6f 20 6d 61 6b 65 20 74 68 6f 72 6f 75 67 68 6c 79 20 63 6c 65 61 72 20 77 68 61 74 20 69 73 to.make.thoroughly.clear.what.is
624e0 20 62 65 6c 69 65 76 65 64 20 74 6f 0d 0a 62 65 20 61 20 63 6f 6e 73 65 71 75 65 6e 63 65 20 6f .believed.to..be.a.consequence.o
62500 66 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0d 0a 0d 0a 20 f.the.rest.of.this.License......
62520 20 38 2e 20 49 66 20 74 68 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 2f 6f 72 20 75 .8..If.the.distribution.and/or.u
62540 73 65 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d 20 69 73 20 72 65 73 74 72 69 63 74 65 64 20 se.of.the.Program.is.restricted.
62560 69 6e 0d 0a 63 65 72 74 61 69 6e 20 63 6f 75 6e 74 72 69 65 73 20 65 69 74 68 65 72 20 62 79 20 in..certain.countries.either.by.
62580 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 20 69 6e 74 65 72 66 patents.or.by.copyrighted.interf
625a0 61 63 65 73 2c 20 74 68 65 0d 0a 6f 72 69 67 69 6e 61 6c 20 63 6f 70 79 72 69 67 68 74 20 68 6f aces,.the..original.copyright.ho
625c0 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 6d 20 75 6e 64 65 lder.who.places.the.Program.unde
625e0 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 0d 0a 6d 61 79 20 61 64 64 20 61 6e 20 65 78 70 6c 69 r.this.License..may.add.an.expli
62600 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 6f 6e 20 6c 69 cit.geographical.distribution.li
62620 6d 69 74 61 74 69 6f 6e 20 65 78 63 6c 75 64 69 6e 67 0d 0a 74 68 6f 73 65 20 63 6f 75 6e 74 72 mitation.excluding..those.countr
62640 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 20 70 65 72 ies,.so.that.distribution.is.per
62660 6d 69 74 74 65 64 20 6f 6e 6c 79 20 69 6e 20 6f 72 20 61 6d 6f 6e 67 0d 0a 63 6f 75 6e 74 72 69 mitted.only.in.or.among..countri
62680 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 68 20 63 es.not.thus.excluded...In.such.c
626a0 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 73 0d 0a ase,.this.License.incorporates..
626c0 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 6e 20 the.limitation.as.if.written.in.
626e0 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 0d 0a 0d 0a 20 20 39 the.body.of.this.License.......9
62700 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
62720 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
62740 72 73 69 6f 6e 73 0d 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 rsions..of.the.General.Public.Li
62760 63 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 cense.from.time.to.time...Such.n
62780 65 77 20 76 65 72 73 69 6f 6e 73 20 77 69 6c 6c 0d 0a 62 65 20 73 69 6d 69 6c 61 72 20 69 6e 20 ew.versions.will..be.similar.in.
627a0 73 70 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 spirit.to.the.present.version,.b
627c0 75 74 20 6d 61 79 20 64 69 66 66 65 72 20 69 6e 20 64 65 74 61 69 6c 20 74 6f 0d 0a 61 64 64 72 ut.may.differ.in.detail.to..addr
627e0 65 73 73 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 0d 0a 0d ess.new.problems.or.concerns....
62800 0a 45 61 63 68 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 .Each.version.is.given.a.disting
62820 75 69 73 68 69 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 uishing.version.number...If.the.
62840 50 72 6f 67 72 61 6d 0d 0a 73 70 65 63 69 66 69 65 73 20 61 20 76 65 72 73 69 6f 6e 20 6e 75 6d Program..specifies.a.version.num
62860 62 65 72 20 6f 66 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 ber.of.this.License.which.applie
62880 73 20 74 6f 20 69 74 20 61 6e 64 20 22 61 6e 79 0d 0a 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 22 s.to.it.and."any..later.version"
628a0 2c 20 79 6f 75 20 68 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 ,.you.have.the.option.of.followi
628c0 6e 67 20 74 68 65 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 0d 0a 65 69 74 ng.the.terms.and.conditions..eit
628e0 68 65 72 20 6f 66 20 74 68 61 74 20 76 65 72 73 69 6f 6e 20 6f 72 20 6f 66 20 61 6e 79 20 6c 61 her.of.that.version.or.of.any.la
62900 74 65 72 20 76 65 72 73 69 6f 6e 20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65 20 46 72 65 ter.version.published.by.the.Fre
62920 65 0d 0a 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2e 20 20 49 66 20 74 68 65 20 e..Software.Foundation...If.the.
62940 50 72 6f 67 72 61 6d 20 64 6f 65 73 20 6e 6f 74 20 73 70 65 63 69 66 79 20 61 20 76 65 72 73 69 Program.does.not.specify.a.versi
62960 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 0d 0a 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 79 6f 75 20 on.number.of..this.License,.you.
62980 6d 61 79 20 63 68 6f 6f 73 65 20 61 6e 79 20 76 65 72 73 69 6f 6e 20 65 76 65 72 20 70 75 62 6c may.choose.any.version.ever.publ
629a0 69 73 68 65 64 20 62 79 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 0d 0a 46 6f 75 6e ished.by.the.Free.Software..Foun
629c0 64 61 74 69 6f 6e 2e 0d 0a 0d 0a 20 20 31 30 2e 20 49 66 20 79 6f 75 20 77 69 73 68 20 74 6f 20 dation.......10..If.you.wish.to.
629e0 69 6e 63 6f 72 70 6f 72 61 74 65 20 70 61 72 74 73 20 6f 66 20 74 68 65 20 50 72 6f 67 72 61 6d incorporate.parts.of.the.Program
62a00 20 69 6e 74 6f 20 6f 74 68 65 72 20 66 72 65 65 0d 0a 70 72 6f 67 72 61 6d 73 20 77 68 6f 73 65 .into.other.free..programs.whose
62a20 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 63 6f 6e 64 69 74 69 6f 6e 73 20 61 72 65 20 64 69 66 .distribution.conditions.are.dif
62a40 66 65 72 65 6e 74 2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 20 61 75 74 68 6f 72 0d 0a 74 6f 20 ferent,.write.to.the.author..to.
62a60 61 73 6b 20 66 6f 72 20 70 65 72 6d 69 73 73 69 6f 6e 2e 20 20 46 6f 72 20 73 6f 66 74 77 61 72 ask.for.permission...For.softwar
62a80 65 20 77 68 69 63 68 20 69 73 20 63 6f 70 79 72 69 67 68 74 65 64 20 62 79 20 74 68 65 20 46 72 e.which.is.copyrighted.by.the.Fr
62aa0 65 65 0d 0a 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 77 72 69 74 65 20 74 ee..Software.Foundation,.write.t
62ac0 6f 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 3b 20 o.the.Free.Software.Foundation;.
62ae0 77 65 20 73 6f 6d 65 74 69 6d 65 73 0d 0a 6d 61 6b 65 20 65 78 63 65 70 74 69 6f 6e 73 20 66 6f we.sometimes..make.exceptions.fo
62b00 72 20 74 68 69 73 2e 20 20 4f 75 72 20 64 65 63 69 73 69 6f 6e 20 77 69 6c 6c 20 62 65 20 67 75 r.this...Our.decision.will.be.gu
62b20 69 64 65 64 20 62 79 20 74 68 65 20 74 77 6f 20 67 6f 61 6c 73 0d 0a 6f 66 20 70 72 65 73 65 72 ided.by.the.two.goals..of.preser
62b40 76 69 6e 67 20 74 68 65 20 66 72 65 65 20 73 74 61 74 75 73 20 6f 66 20 61 6c 6c 20 64 65 72 69 ving.the.free.status.of.all.deri
62b60 76 61 74 69 76 65 73 20 6f 66 20 6f 75 72 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 61 6e 64 vatives.of.our.free.software.and
62b80 0d 0a 6f 66 20 70 72 6f 6d 6f 74 69 6e 67 20 74 68 65 20 73 68 61 72 69 6e 67 20 61 6e 64 20 72 ..of.promoting.the.sharing.and.r
62ba0 65 75 73 65 20 6f 66 20 73 6f 66 74 77 61 72 65 20 67 65 6e 65 72 61 6c 6c 79 2e 0d 0a 0d 0a 20 euse.of.software.generally......
62bc0 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 4e 4f 20 57 41 ...........................NO.WA
62be0 52 52 41 4e 54 59 0d 0a 0d 0a 20 20 31 31 2e 20 42 45 43 41 55 53 45 20 54 48 45 20 50 52 4f 47 RRANTY......11..BECAUSE.THE.PROG
62c00 52 41 4d 20 49 53 20 4c 49 43 45 4e 53 45 44 20 46 52 45 45 20 4f 46 20 43 48 41 52 47 45 2c 20 RAM.IS.LICENSED.FREE.OF.CHARGE,.
62c20 54 48 45 52 45 20 49 53 20 4e 4f 20 57 41 52 52 41 4e 54 59 0d 0a 46 4f 52 20 54 48 45 20 50 52 THERE.IS.NO.WARRANTY..FOR.THE.PR
62c40 4f 47 52 41 4d 2c 20 54 4f 20 54 48 45 20 45 58 54 45 4e 54 20 50 45 52 4d 49 54 54 45 44 20 42 OGRAM,.TO.THE.EXTENT.PERMITTED.B
62c60 59 20 41 50 50 4c 49 43 41 42 4c 45 20 4c 41 57 2e 20 20 45 58 43 45 50 54 20 57 48 45 4e 0d 0a Y.APPLICABLE.LAW...EXCEPT.WHEN..
62c80 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 4e 47 20 54 48 45 20 OTHERWISE.STATED.IN.WRITING.THE.
62ca0 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 4f 54 48 45 52 20 50 COPYRIGHT.HOLDERS.AND/OR.OTHER.P
62cc0 41 52 54 49 45 53 0d 0a 50 52 4f 56 49 44 45 20 54 48 45 20 50 52 4f 47 52 41 4d 20 22 41 53 20 ARTIES..PROVIDE.THE.PROGRAM."AS.
62ce0 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 59 20 4b 49 4e 44 IS".WITHOUT.WARRANTY.OF.ANY.KIND
62d00 2c 20 45 49 54 48 45 52 20 45 58 50 52 45 53 53 45 44 0d 0a 4f 52 20 49 4d 50 4c 49 45 44 2c 20 ,.EITHER.EXPRESSED..OR.IMPLIED,.
62d20 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 54 4f 2c 20 54 INCLUDING,.BUT.NOT.LIMITED.TO,.T
62d40 48 45 20 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 0d 0a 4d 45 52 43 48 41 HE.IMPLIED.WARRANTIES.OF..MERCHA
62d60 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 50 41 52 54 NTABILITY.AND.FITNESS.FOR.A.PART
62d80 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 52 49 53 4b ICULAR.PURPOSE...THE.ENTIRE.RISK
62da0 20 41 53 0d 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 52 4d 41 .AS..TO.THE.QUALITY.AND.PERFORMA
62dc0 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 55 2e 20 NCE.OF.THE.PROGRAM.IS.WITH.YOU..
62de0 20 53 48 4f 55 4c 44 20 54 48 45 0d 0a 50 52 4f 47 52 41 4d 20 50 52 4f 56 45 20 44 45 46 45 43 .SHOULD.THE..PROGRAM.PROVE.DEFEC
62e00 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 4c 4c TIVE,.YOU.ASSUME.THE.COST.OF.ALL
62e20 20 4e 45 43 45 53 53 41 52 59 20 53 45 52 56 49 43 49 4e 47 2c 0d 0a 52 45 50 41 49 52 20 4f 52 .NECESSARY.SERVICING,..REPAIR.OR
62e40 20 43 4f 52 52 45 43 54 49 4f 4e 2e 0d 0a 0d 0a 20 20 31 32 2e 20 49 4e 20 4e 4f 20 45 56 45 4e .CORRECTION.......12..IN.NO.EVEN
62e60 54 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 T.UNLESS.REQUIRED.BY.APPLICABLE.
62e80 4c 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 0d 0a 57 49 4c LAW.OR.AGREED.TO.IN.WRITING..WIL
62ea0 4c 20 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 L.ANY.COPYRIGHT.HOLDER,.OR.ANY.O
62ec0 54 48 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 THER.PARTY.WHO.MAY.MODIFY.AND/OR
62ee0 0d 0a 52 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 ..REDISTRIBUTE.THE.PROGRAM.AS.PE
62f00 52 4d 49 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 RMITTED.ABOVE,.BE.LIABLE.TO.YOU.
62f20 46 4f 52 20 44 41 4d 41 47 45 53 2c 0d 0a 49 4e 43 4c 55 44 49 4e 47 20 41 4e 59 20 47 45 4e 45 FOR.DAMAGES,..INCLUDING.ANY.GENE
62f40 52 41 4c 2c 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 RAL,.SPECIAL,.INCIDENTAL.OR.CONS
62f60 45 51 55 45 4e 54 49 41 4c 20 44 41 4d 41 47 45 53 20 41 52 49 53 49 4e 47 0d 0a 4f 55 54 20 4f EQUENTIAL.DAMAGES.ARISING..OUT.O
62f80 46 20 54 48 45 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 F.THE.USE.OR.INABILITY.TO.USE.TH
62fa0 45 20 50 52 4f 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 E.PROGRAM.(INCLUDING.BUT.NOT.LIM
62fc0 49 54 45 44 0d 0a 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 ITED..TO.LOSS.OF.DATA.OR.DATA.BE
62fe0 49 4e 47 20 52 45 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 ING.RENDERED.INACCURATE.OR.LOSSE
63000 53 20 53 55 53 54 41 49 4e 45 44 20 42 59 0d 0a 59 4f 55 20 4f 52 20 54 48 49 52 44 20 50 41 52 S.SUSTAINED.BY..YOU.OR.THIRD.PAR
63020 54 49 45 53 20 4f 52 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 TIES.OR.A.FAILURE.OF.THE.PROGRAM
63040 20 54 4f 20 4f 50 45 52 41 54 45 20 57 49 54 48 20 41 4e 59 20 4f 54 48 45 52 0d 0a 50 52 4f 47 .TO.OPERATE.WITH.ANY.OTHER..PROG
63060 52 41 4d 53 29 2c 20 45 56 45 4e 20 49 46 20 53 55 43 48 20 48 4f 4c 44 45 52 20 4f 52 20 4f 54 RAMS),.EVEN.IF.SUCH.HOLDER.OR.OT
63080 48 45 52 20 50 41 52 54 59 20 48 41 53 20 42 45 45 4e 20 41 44 56 49 53 45 44 20 4f 46 20 54 48 HER.PARTY.HAS.BEEN.ADVISED.OF.TH
630a0 45 0d 0a 50 4f 53 53 49 42 49 4c 49 54 59 20 4f 46 20 53 55 43 48 20 44 41 4d 41 47 45 53 2e 0d E..POSSIBILITY.OF.SUCH.DAMAGES..
630c0 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 4e 44 20 4f 46 20 54 ........................END.OF.T
630e0 45 52 4d 53 20 41 4e 44 20 43 4f 4e 44 49 54 49 4f 4e 53 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 ERMS.AND.CONDITIONS.............
63100 20 20 20 48 6f 77 20 74 6f 20 41 70 70 6c 79 20 54 68 65 73 65 20 54 65 72 6d 73 20 74 6f 20 59 ...How.to.Apply.These.Terms.to.Y
63120 6f 75 72 20 4e 65 77 20 50 72 6f 67 72 61 6d 73 0d 0a 0d 0a 20 20 49 66 20 79 6f 75 20 64 65 76 our.New.Programs......If.you.dev
63140 65 6c 6f 70 20 61 20 6e 65 77 20 70 72 6f 67 72 61 6d 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 elop.a.new.program,.and.you.want
63160 20 69 74 20 74 6f 20 62 65 20 6f 66 20 74 68 65 20 67 72 65 61 74 65 73 74 0d 0a 70 6f 73 73 69 .it.to.be.of.the.greatest..possi
63180 62 6c 65 20 75 73 65 20 74 6f 20 74 68 65 20 70 75 62 6c 69 63 2c 20 74 68 65 20 62 65 73 74 20 ble.use.to.the.public,.the.best.
631a0 77 61 79 20 74 6f 20 61 63 68 69 65 76 65 20 74 68 69 73 20 69 73 20 74 6f 20 6d 61 6b 65 20 69 way.to.achieve.this.is.to.make.i
631c0 74 0d 0a 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 77 68 69 63 68 20 65 76 65 72 79 6f 6e 65 20 t..free.software.which.everyone.
631e0 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 61 6e 64 20 63 68 61 6e 67 65 20 75 6e 64 65 can.redistribute.and.change.unde
63200 72 20 74 68 65 73 65 20 74 65 72 6d 73 2e 0d 0a 0d 0a 20 20 54 6f 20 64 6f 20 73 6f 2c 20 61 74 r.these.terms.......To.do.so,.at
63220 74 61 63 68 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6e 6f 74 69 63 65 73 20 74 6f 20 74 68 tach.the.following.notices.to.th
63240 65 20 70 72 6f 67 72 61 6d 2e 20 20 49 74 20 69 73 20 73 61 66 65 73 74 0d 0a 74 6f 20 61 74 74 e.program...It.is.safest..to.att
63260 61 63 68 20 74 68 65 6d 20 74 6f 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 65 61 63 68 20 73 6f ach.them.to.the.start.of.each.so
63280 75 72 63 65 20 66 69 6c 65 20 74 6f 20 6d 6f 73 74 20 65 66 66 65 63 74 69 76 65 6c 79 0d 0a 63 urce.file.to.most.effectively..c
632a0 6f 6e 76 65 79 20 74 68 65 20 65 78 63 6c 75 73 69 6f 6e 20 6f 66 20 77 61 72 72 61 6e 74 79 3b onvey.the.exclusion.of.warranty;
632c0 20 61 6e 64 20 65 61 63 68 20 66 69 6c 65 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 74 20 6c 65 .and.each.file.should.have.at.le
632e0 61 73 74 0d 0a 74 68 65 20 22 63 6f 70 79 72 69 67 68 74 22 20 6c 69 6e 65 20 61 6e 64 20 61 20 ast..the."copyright".line.and.a.
63300 70 6f 69 6e 74 65 72 20 74 6f 20 77 68 65 72 65 20 74 68 65 20 66 75 6c 6c 20 6e 6f 74 69 63 65 pointer.to.where.the.full.notice
63320 20 69 73 20 66 6f 75 6e 64 2e 0d 0a 0d 0a 20 20 20 20 3c 6f 6e 65 20 6c 69 6e 65 20 74 6f 20 67 .is.found.........<one.line.to.g
63340 69 76 65 20 74 68 65 20 70 72 6f 67 72 61 6d 27 73 20 6e 61 6d 65 20 61 6e 64 20 61 20 62 72 69 ive.the.program's.name.and.a.bri
63360 65 66 20 69 64 65 61 20 6f 66 20 77 68 61 74 20 69 74 20 64 6f 65 73 2e 3e 0d 0a 20 20 20 20 43 ef.idea.of.what.it.does.>......C
63380 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 65 20 6f 66 20 61 75 opyright.(C).<year>..<name.of.au
633a0 74 68 6f 72 3e 0d 0a 0d 0a 20 20 20 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 thor>........This.program.is.fre
633c0 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 69 62 75 74 65 e.software:.you.can.redistribute
633e0 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0d 0a 20 20 20 20 69 74 20 75 6e 64 65 72 20 .it.and/or.modify......it.under.
63400 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 20 50 75 62 the.terms.of.the.GNU.General.Pub
63420 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 0d 0a 20 20 20 lic.License.as.published.by.....
63440 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 2c 20 65 .the.Free.Software.Foundation,.e
63460 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 65 2c 20 ither.version.2.of.the.License,.
63480 6f 72 0d 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 61 74 or......(at.your.option).any.lat
634a0 65 72 20 76 65 72 73 69 6f 6e 2e 0d 0a 0d 0a 20 20 20 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 er.version.........This.program.
634c0 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.
634e0 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0d 0a 20 20 20 20 62 75 74 20 57 49 54 48 it.will.be.useful,......but.WITH
63500 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 20 74 OUT.ANY.WARRANTY;.without.even.t
63520 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0d 0a 20 20 20 20 4d 45 52 43 he.implied.warranty.of......MERC
63540 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
63560 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 0d 0a 20 20 20 20 47 TICULAR.PURPOSE...See.the......G
63580 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 20 66 6f 72 20 6d 6f NU.General.Public.License.for.mo
635a0 72 65 20 64 65 74 61 69 6c 73 2e 0d 0a 0d 0a 20 20 20 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 re.details.........You.should.ha
635c0 76 65 20 72 65 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 ve.received.a.copy.of.the.GNU.Ge
635e0 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0d 0a 20 20 20 20 61 6c 6f 6e 67 20 neral.Public.License......along.
63600 77 69 74 68 20 74 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 with.this.program...If.not,.see.
63620 3c 68 74 74 70 3a 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 0d <http://www.gnu.org/licenses/>..
63640 0a 0d 0a 41 6c 73 6f 20 61 64 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 68 6f 77 20 74 ...Also.add.information.on.how.t
63660 6f 20 63 6f 6e 74 61 63 74 20 79 6f 75 20 62 79 20 65 6c 65 63 74 72 6f 6e 69 63 20 61 6e 64 20 o.contact.you.by.electronic.and.
63680 70 61 70 65 72 20 6d 61 69 6c 2e 0d 0a 0d 0a 49 66 20 74 68 65 20 70 72 6f 67 72 61 6d 20 69 73 paper.mail.....If.the.program.is
636a0 20 69 6e 74 65 72 61 63 74 69 76 65 2c 20 6d 61 6b 65 20 69 74 20 6f 75 74 70 75 74 20 61 20 73 .interactive,.make.it.output.a.s
636c0 68 6f 72 74 20 6e 6f 74 69 63 65 20 6c 69 6b 65 20 74 68 69 73 0d 0a 77 68 65 6e 20 69 74 20 73 hort.notice.like.this..when.it.s
636e0 74 61 72 74 73 20 69 6e 20 61 6e 20 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f 64 65 3a 0d 0a 0d tarts.in.an.interactive.mode:...
63700 0a 20 20 20 20 47 6e 6f 6d 6f 76 69 73 69 6f 6e 20 76 65 72 73 69 6f 6e 20 36 39 2c 20 43 6f 70 .....Gnomovision.version.69,.Cop
63720 79 72 69 67 68 74 20 28 43 29 20 3c 79 65 61 72 3e 20 20 3c 6e 61 6d 65 20 6f 66 20 61 75 74 68 yright.(C).<year>..<name.of.auth
63740 6f 72 3e 0d 0a 20 20 20 20 47 6e 6f 6d 6f 76 69 73 69 6f 6e 20 63 6f 6d 65 73 20 77 69 74 68 20 or>......Gnomovision.comes.with.
63760 41 42 53 4f 4c 55 54 45 4c 59 20 4e 4f 20 57 41 52 52 41 4e 54 59 3b 20 66 6f 72 20 64 65 74 61 ABSOLUTELY.NO.WARRANTY;.for.deta
63780 69 6c 73 20 74 79 70 65 20 60 73 68 6f 77 20 77 27 2e 0d 0a 20 20 20 20 54 68 69 73 20 69 73 20 ils.type.`show.w'.......This.is.
637a0 66 72 65 65 20 73 6f 66 74 77 61 72 65 2c 20 61 6e 64 20 79 6f 75 20 61 72 65 20 77 65 6c 63 6f free.software,.and.you.are.welco
637c0 6d 65 20 74 6f 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 0d 0a 20 20 20 20 75 6e 64 65 72 me.to.redistribute.it......under
637e0 20 63 65 72 74 61 69 6e 20 63 6f 6e 64 69 74 69 6f 6e 73 3b 20 74 79 70 65 20 60 73 68 6f 77 20 .certain.conditions;.type.`show.
63800 63 27 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 0d 0a 0d 0a 54 68 65 20 68 79 70 6f 74 68 65 74 69 c'.for.details.....The.hypotheti
63820 63 61 6c 20 63 6f 6d 6d 61 6e 64 73 20 60 73 68 6f 77 20 77 27 20 61 6e 64 20 60 73 68 6f 77 20 cal.commands.`show.w'.and.`show.
63840 63 27 20 73 68 6f 75 6c 64 20 73 68 6f 77 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 0d 0a c'.should.show.the.appropriate..
63860 70 61 72 74 73 20 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 65 parts.of.the.General.Public.Lice
63880 6e 73 65 2e 20 20 4f 66 20 63 6f 75 72 73 65 2c 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 20 79 6f nse...Of.course,.the.commands.yo
638a0 75 20 75 73 65 20 6d 61 79 0d 0a 62 65 20 63 61 6c 6c 65 64 20 73 6f 6d 65 74 68 69 6e 67 20 6f u.use.may..be.called.something.o
638c0 74 68 65 72 20 74 68 61 6e 20 60 73 68 6f 77 20 77 27 20 61 6e 64 20 60 73 68 6f 77 20 63 27 3b ther.than.`show.w'.and.`show.c';
638e0 20 74 68 65 79 20 63 6f 75 6c 64 20 65 76 65 6e 20 62 65 0d 0a 6d 6f 75 73 65 2d 63 6c 69 63 6b .they.could.even.be..mouse-click
63900 73 20 6f 72 20 6d 65 6e 75 20 69 74 65 6d 73 2d 2d 77 68 61 74 65 76 65 72 20 73 75 69 74 73 20 s.or.menu.items--whatever.suits.
63920 79 6f 75 72 20 70 72 6f 67 72 61 6d 2e 0d 0a 0d 0a 59 6f 75 20 73 68 6f 75 6c 64 20 61 6c 73 6f your.program.....You.should.also
63940 20 67 65 74 20 79 6f 75 72 20 65 6d 70 6c 6f 79 65 72 20 28 69 66 20 79 6f 75 20 77 6f 72 6b 20 .get.your.employer.(if.you.work.
63960 61 73 20 61 20 70 72 6f 67 72 61 6d 6d 65 72 29 20 6f 72 20 79 6f 75 72 0d 0a 73 63 68 6f 6f 6c as.a.programmer).or.your..school
63980 2c 20 69 66 20 61 6e 79 2c 20 74 6f 20 73 69 67 6e 20 61 20 22 63 6f 70 79 72 69 67 68 74 20 64 ,.if.any,.to.sign.a."copyright.d
639a0 69 73 63 6c 61 69 6d 65 72 22 20 66 6f 72 20 74 68 65 20 70 72 6f 67 72 61 6d 2c 20 69 66 0d 0a isclaimer".for.the.program,.if..
639c0 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 70 6c 65 3b 20 61 6c necessary...Here.is.a.sample;.al
639e0 74 65 72 20 74 68 65 20 6e 61 6d 65 73 3a 0d 0a 0d 0a 20 20 59 6f 79 6f 64 79 6e 65 2c 20 49 6e ter.the.names:......Yoyodyne,.In
63a00 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 70 79 72 69 67 c.,.hereby.disclaims.all.copyrig
63a20 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 0d 0a 20 20 60 47 ht.interest.in.the.program....`G
63a40 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 73 65 73 20 nomovision'.(which.makes.passes.
63a60 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 65 73 20 48 at.compilers).written.by.James.H
63a80 61 63 6b 65 72 2e 0d 0a 0d 0a 20 20 3c 73 69 67 6e 61 74 75 72 65 20 6f 66 20 54 79 20 43 6f 6f acker.......<signature.of.Ty.Coo
63aa0 6e 3e 2c 20 31 20 41 70 72 69 6c 20 31 39 38 39 0d 0a 20 20 54 79 20 43 6f 6f 6e 2c 20 50 72 65 n>,.1.April.1989....Ty.Coon,.Pre
63ac0 73 69 64 65 6e 74 20 6f 66 20 56 69 63 65 0d 0a 0d 0a 54 68 69 73 20 47 65 6e 65 72 61 6c 20 50 sident.of.Vice....This.General.P
63ae0 75 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 ublic.License.does.not.permit.in
63b00 63 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 0d 0a 70 corporating.your.program.into..p
63b20 72 6f 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 roprietary.programs...If.your.pr
63b40 6f 67 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 ogram.is.a.subroutine.library,.y
63b60 6f 75 20 6d 61 79 0d 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 ou.may..consider.it.more.useful.
63b80 74 6f 20 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 to.permit.linking.proprietary.ap
63ba0 70 6c 69 63 61 74 69 6f 6e 73 20 77 69 74 68 20 74 68 65 0d 0a 6c 69 62 72 61 72 79 2e 20 20 49 plications.with.the..library...I
63bc0 66 20 74 68 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 f.this.is.what.you.want.to.do,.u
63be0 73 65 20 74 68 65 20 47 4e 55 20 4c 65 73 73 65 72 20 47 65 6e 65 72 61 6c 0d 0a 50 75 62 6c 69 se.the.GNU.Lesser.General..Publi
63c00 63 20 4c 69 63 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 c.License.instead.of.this.Licens
63c20 65 2e 0d 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 e...............................
63c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63e00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 2e 6c 7a 00 00 lzip-1.22-rc2/testsuite/fox.lz..
63e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63e60 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
63e80 30 30 30 30 31 32 30 00 31 32 33 34 37 34 32 37 34 35 34 00 30 30 31 35 30 33 37 00 30 00 00 00 0000120.12347427454.0015037.0...
63ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63f00 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...................
63f20 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...................
63f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
63fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64000 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...
64020 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.
64040 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.......................
64060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
640a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
640c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
640e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
641a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
641c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
641e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64200 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 62 63 72 63 lzip-1.22-rc2/testsuite/fox_bcrc
64220 2e 6c 7a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .lz.............................
64240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64260 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
64280 30 30 30 30 31 32 30 00 31 32 33 34 37 34 32 37 34 35 34 00 30 30 31 36 30 33 30 00 30 00 00 00 0000120.12347427454.0016030.0...
642a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
642c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
642e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64300 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...................
64320 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...................
64340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
643a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
643c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
643e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64400 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...
64420 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.
64440 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.......................
64460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
644a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
644c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
644e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
645a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
645c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 63 72 63 30 lzip-1.22-rc2/testsuite/fox_crc0
64620 2e 6c 7a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .lz.............................
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 32 33 34 37 34 32 37 34 35 34 00 30 30 31 35 37 34 36 00 30 00 00 00 0000120.12347427454.0015746.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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 ff 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 00 00 00 00 .A6...i.<..4'...f.....#.........
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 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 64 61 73 34 lzip-1.22-rc2/testsuite/fox_das4
64a20 36 2e 6c 7a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6.lz............................
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 30 30 31 32 30 00 31 32 33 34 37 34 32 37 34 35 34 00 30 30 31 36 30 34 30 00 30 00 00 00 0000120.12347427454.0016040.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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 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...
64c20 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.
64c40 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.......................
64c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64e00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 64 65 32 30 lzip-1.22-rc2/testsuite/fox_de20
64e20 2e 6c 7a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .lz.............................
64e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64e60 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
64e80 30 30 30 30 31 32 30 00 31 32 33 34 37 34 32 37 34 35 34 00 30 30 31 35 36 35 31 00 30 00 00 00 0000120.12347427454.0015651.0...
64ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64f00 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...................
64f20 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...................
64f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65000 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...
65020 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.
65040 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.......................
65060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
650a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
650c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
650e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
651a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
651c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
651e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65200 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 6d 65 73 38 lzip-1.22-rc2/testsuite/fox_mes8
65220 31 2e 6c 7a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1.lz............................
65240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65260 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
65280 30 30 30 30 31 32 30 00 31 32 33 34 37 34 32 37 34 35 34 00 30 30 31 36 30 35 34 00 30 00 00 00 0000120.12347427454.0016054.0...
652a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
652c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
652e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65300 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...................
65320 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...................
65340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
653a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
653c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
653e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65400 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...
65420 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.
65440 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.......................
65460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
654a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
654c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
654e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
655a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
655c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
655e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65600 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 73 31 31 2e lzip-1.22-rc2/testsuite/fox_s11.
65620 6c 7a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lz..............................
65640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65660 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
65680 30 30 30 30 31 32 30 00 31 32 33 34 37 34 32 37 34 35 34 00 30 30 31 35 35 32 33 00 30 00 00 00 0000120.12347427454.0015523.0...
656a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
656c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
656e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65700 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...................
65720 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...................
65740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
657a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
657c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
657e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65800 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...
65820 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.
65840 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.......................
65860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
658a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
658c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
658e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
659a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
659c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
659e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65a00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 66 6f 78 5f 76 32 2e 6c lzip-1.22-rc2/testsuite/fox_v2.l
65a20 7a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 z...............................
65a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65a60 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
65a80 30 30 30 30 31 32 30 00 31 32 33 34 37 34 32 37 34 35 34 00 30 30 31 35 34 34 36 00 30 00 00 00 0000120.12347427454.0015446.0...
65aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65b00 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...................
65b20 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...................
65b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65c00 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...
65c20 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.
65c40 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.......................
65c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65e00 6c 7a 69 70 2d 31 2e 32 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 74 65 73 74 2e 74 78 74 lzip-1.22-rc2/testsuite/test.txt
65e20 2e 6c 7a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .lz.............................
65e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65e60 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
65e80 30 30 31 36 33 32 30 00 31 32 33 34 37 34 32 37 34 35 34 00 30 30 31 36 30 35 31 00 30 00 00 00 0016320.12347427454.0016051.0...
65ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65f00 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...................
65f20 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...................
65f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
66000 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........
66020 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..".}........
66040 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.^..
66060 1c 56 f6 36 1e f0 f4 99 06 e2 54 97 c8 a1 c2 40 67 f6 7d 13 06 2a 0d c5 a0 e4 64 d5 14 8d 04 9a .V.6......T....@g.}..*....d.....
66080 88 99 90 d1 95 c1 67 ca b4 d5 30 76 7f 21 c7 6a 22 c4 11 f4 b6 1f 36 90 84 0a f8 ae 19 f5 64 1a ......g...0v.!.j".....6.......d.
660a0 f2 f3 d9 a4 eb 9b a0 72 33 26 08 6b 73 91 1f 0d d7 2f 5e 5e 8e c3 7c 57 2c 5a 2a ab 8c 80 6b ef .......r3&.ks..../^^..|W,Z*...k.
660c0 44 5a 82 bf 65 c5 99 77 28 e5 23 91 ba 13 d8 dd 49 1a 3c dd ab 81 e4 9c cb 01 02 03 12 d6 71 f1 DZ..e..w(.#.....I.<...........q.
660e0 3f 0c 69 56 22 af 77 78 43 a4 3b 4f 9c 77 a7 3d 0e b8 fd 68 4a 17 80 0f 70 c2 bf 65 29 74 ba 3f ?.iV".wxC.;O.w.=...hJ...p..e)t.?
66100 71 c5 35 29 7d 84 a5 fa 9f 43 d8 90 d8 cb 99 1c b7 9a 34 6e f9 32 87 bf 58 95 4c f8 10 52 25 71 q.5)}....C........4n.2..X.L..R%q
66120 1d 95 27 36 f6 eb ca 8e 29 01 75 c2 aa de 76 2f cc d3 b2 7e 0c 4c 91 98 85 ae 8e 65 99 6e 98 0b ..'6....).u...v/...~.L.....e.n..
66140 4b 3c fa 93 ee 1e 2b 42 c3 ab 86 7a 3a a9 47 b7 c2 f7 ef 30 59 02 c4 28 2d a5 fb 43 7e c2 f3 e3 K<....+B...z:.G....0Y..(-..C~...
66160 95 15 04 38 8d 6a 85 57 a5 89 79 0f ac 13 bd 7f 4c 3e 85 a1 44 d3 29 20 2f a3 4f 9e 83 33 b8 fe ...8.j.W..y.....L>..D.)./.O..3..
66180 ca 89 bd d7 42 07 eb 03 2f a3 e0 6b be 32 89 ef 4d 17 82 db 1d 87 9b f2 e6 57 ad d3 fa 23 1d 59 ....B.../..k.2..M........W...#.Y
661a0 c6 b7 90 c3 8a 63 19 80 2f 53 d7 1a 4e ca fc aa a0 b2 ac 88 03 00 3f 79 cb 96 f0 39 bb e5 eb 58 .....c../S..N.........?y...9...X
661c0 75 79 f1 d3 a2 e2 43 1d 62 3d 85 39 fb f3 54 ab 72 5e 3e 3b 53 cb 83 83 ba b0 d7 e1 3e a3 b6 4a uy....C.b=.9..T.r^>;S.......>..J
661e0 53 35 20 e6 60 e2 96 d7 b1 fd fb fc c0 f2 5b c8 e6 86 fe 78 ef 7d d6 84 4a 1e 82 76 6e 88 ba fa S5..`.........[....x.}..J..vn...
66200 58 f2 fe ed f8 6a 62 c1 37 22 2f 25 83 58 30 53 3a 31 43 fd 0e 72 0a ee dc 78 2e fe b0 c6 47 25 X....jb.7"/%.X0S:1C..r...x....G%
66220 89 10 fc fd 77 96 85 8d f5 a7 82 70 2a 1c eb 6e 78 4b 55 21 1b c5 b1 07 fa 3d d3 5f e0 43 e9 ad ....w......p*..nxKU!.....=._.C..
66240 30 8c 08 2a fc d4 25 1a 39 dc 8f 4a 65 db a8 e2 9b 78 17 27 51 d3 cd 03 f8 1d 11 bd cd 2e 12 aa 0..*..%.9..Je....x.'Q...........
66260 b8 74 a8 2c 50 94 08 fe ee 78 af c2 b8 33 f1 31 86 b9 b4 3d cc da 33 cc 1c ea 26 2e 73 bf 0b 13 .t.,P....x...3.1...=..3...&.s...
66280 64 fc cb e3 68 15 9c b5 65 7b a6 3a 35 09 80 2a 78 38 52 3a e5 3c 70 f5 2c 27 82 b2 3c f7 d0 16 d...h...e{.:5..*x8R:.<p.,'..<...
662a0 24 80 68 c8 40 43 b7 72 04 35 e7 cf 4e df f4 7b c0 71 e5 f4 ad 02 77 4d 03 64 79 5f 62 fc a1 1e $.h.@C.r.5..N..{.q....wM.dy_b...
662c0 3a 25 78 e8 78 90 90 db 09 ad 71 1f 73 c8 e5 6a 2a 6e ef 19 06 dc 28 00 fc a4 15 e0 b4 20 d5 64 :%x.x.....q.s..j*n....(........d
662e0 c2 37 eb 79 6a b1 d4 25 9d 87 57 4b 4a a0 a0 3a 34 28 9a 33 20 f9 c5 fc f6 9a 0a 5f 3c e0 f8 b1 .7.yj..%..WKJ..:4(.3......._<...
66300 5c 0c bb 65 58 a3 73 76 84 c9 ef 88 d7 ea 77 eb 59 3e dc 37 04 2c 75 b5 bb 28 5f 46 69 25 d0 8e \..eX.sv......w.Y>.7.,u..(_Fi%..
66320 51 cb 72 4c 8e fd 5f 1c 16 bc 1e c2 c9 31 56 51 fc 74 e5 dd 7e 31 94 2c da 5a 41 be e3 a1 6d 91 Q.rL.._......1VQ.t..~1.,.ZA...m.
66340 53 57 03 10 7a a7 01 b6 7c 69 4d 96 b9 65 49 e1 4f 35 c7 05 0f 04 62 24 5b 88 e3 e4 8a 1f cb b6 SW..z...|iM..eI.O5....b$[.......
66360 87 a5 44 18 00 46 80 5d 39 27 f1 e1 9c dd 58 f8 b0 a4 f5 c5 29 4d 0c 88 bf 74 4f 78 11 b8 fe ef ..D..F.]9'....X.....)M...tOx....
66380 21 80 c9 f3 f7 14 ba 01 a1 3c ec 54 1e 14 4f b9 54 db c7 e9 a1 e3 5d 46 2b 68 9b 4f 0d 40 92 ab !........<.T..O.T.....]F+h.O.@..
663a0 f6 cb 64 f9 8f e9 a3 f9 60 cf 08 ab 8e 03 ba 0a d1 44 bf 79 e9 3e 7b 8e 42 97 c6 89 0d 01 1f 8a ..d.....`........D.y.>{.B.......
663c0 00 ab 79 e5 37 ad e5 79 42 3f bd 2a f6 16 d7 01 65 18 15 68 c1 53 b8 4d 95 ec d2 97 90 3b 77 58 ..y.7..yB?.*....e..h.S.M.....;wX
663e0 fc 44 8d fe d1 e9 73 5e 48 2f f6 75 eb b4 49 1c e9 73 29 3b ee 67 72 e1 ee 48 de af 08 d7 8d dd .D....s^H/.u..I..s);.gr..H......
66400 67 ca de d3 d7 df a8 13 06 1c d1 c8 91 c4 c0 ef 3d c9 c5 7b 72 df 6a 18 5d d3 e0 d5 1c e9 70 4b g...............=..{r.j.].....pK
66420 40 7b 87 96 41 a7 3a c3 fb 82 43 d1 74 1c 48 18 1a 94 6f ce b7 de 92 da 7a 64 6e 31 3e 1e bf 05 @{..A.:...C.t.H...o.....zdn1>...
66440 9a 79 10 00 26 53 c3 f1 8e 2a 81 a9 81 54 3f 27 3e e5 25 71 4c cd e3 9e 55 cc ee 9c 69 73 19 e1 .y..&S...*...T?'>.%qL...U...is..
66460 46 a3 27 ae 19 60 3b 2a 71 09 32 c4 6c 8a 59 33 23 80 f5 2c e4 9a fc 51 b5 fe cf 04 80 93 15 77 F.'..`;*q.2.l.Y3#..,...Q.......w
66480 44 58 88 f9 3c 76 0d 26 23 b0 fd 87 b7 77 69 71 3e 0d 96 c9 27 77 80 36 65 23 d6 f6 39 a3 12 8d DX..<v.&#....wiq>...'w.6e#..9...
664a0 84 06 45 63 5d 39 83 90 88 29 1e 31 d8 b8 59 d1 3a 65 6a a5 f7 81 2e 2a ca b9 b0 76 1e e8 46 47 ..Ec]9...).1..Y.:ej....*...v..FG
664c0 e2 04 e0 3a e0 2f 64 02 a6 78 98 65 f8 34 0f 3f 19 ac 31 8f 50 0d 3d b3 8a fd 34 88 9b bd 33 81 ...:./d..x.e.4.?..1.P.=...4...3.
664e0 89 d1 c6 6e 6c 49 0a c7 03 40 47 7a 69 19 7c 0d c9 03 b2 10 62 27 88 c4 61 06 62 b9 99 cb 59 54 ...nlI...@Gzi.|.....b'..a.b...YT
66500 a3 24 44 e7 e5 c7 d7 85 29 83 06 14 3e 8b 6b 23 f4 6e 0c 6a 90 de a2 13 b2 dc 73 11 d0 f9 ba 09 .$D.....)...>.k#.n.j......s.....
66520 6d 62 60 2c 60 76 34 2e 93 c4 6e 91 c5 3c 8e 94 14 f7 57 c9 c3 97 0c 3c cb de f1 ca 10 b5 73 16 mb`,`v4...n..<....W....<......s.
66540 0f 2c fa 8a 7a 29 ce 23 91 c4 72 47 01 18 09 84 1a e8 c0 8b 04 00 3b 6c fc 04 fc ae 57 bb cb ee .,..z).#..rG..........;l....W...
66560 f1 7f d1 b5 91 3c 61 b8 68 bd 65 54 95 72 24 31 2f e1 a1 56 d7 da 1e f2 ae 72 92 6b 0c 2c d3 c4 .....<a.h.eT.r$1/..V.....r.k.,..
66580 d7 42 ad c7 06 f2 c0 a9 58 57 6d 92 85 89 c9 07 e1 b8 3f dc cb 8d 71 3c 3c 53 81 27 e8 8d ce df .B......XWm.......?...q<<S.'....
665a0 5e 80 39 35 cc 26 2b 7d 8e 19 b6 aa 32 53 8f 81 ce 7d dc f8 8a 69 36 94 a3 ca 0e a2 d1 8b bd 7c ^.95.&+}....2S...}...i6........|
665c0 4d cb 3e 02 89 94 04 51 b0 fe b4 82 3b 24 ec b1 82 34 4a ac 08 db 79 a7 b0 76 15 12 6b af b7 41 M.>....Q....;$...4J...y..v..k..A
665e0 cb a5 4c ad 31 f4 88 d1 e1 a0 d4 b8 77 9f 3e bb 40 29 46 7e 43 83 46 7d 57 ef 72 00 2d 48 00 a1 ..L.1.......w.>.@)F~C.F}W.r.-H..
66600 f2 77 fb 51 94 a0 e2 c2 0d 51 b8 36 31 c7 61 7a 1f 3c 75 6c cd a6 f1 e0 ed 9f 48 b2 16 2e 6e d9 .w.Q.....Q.61.az.<ul......H...n.
66620 f1 95 33 d7 c3 c5 2c f9 22 40 06 19 d8 86 e3 e2 55 a7 de 54 a4 ea 22 aa ec db 9e 46 4f 13 c8 29 ..3...,."@......U..T.."....FO..)
66640 74 48 d6 e6 f8 23 50 cd 2e bd 26 9c 2c 0f 73 a1 33 bf 6d 3a 03 d9 90 b9 28 31 94 21 96 8d fa e2 tH...#P...&.,.s.3.m:....(1.!....
66660 79 a9 6f 23 70 76 48 0c d9 c0 6d 5a 54 0b 76 ba d7 c7 c2 7a ef ac 4f 84 e6 75 71 ab aa 55 d7 5a y.o#pvH...mZT.v....z..O..uq..U.Z
66680 ec 49 a3 81 b6 7c a9 b9 c0 a1 b4 67 e7 30 e4 23 56 08 6b d3 04 98 1a db 4d 27 f0 2c 39 f5 9b 5a .I...|.....g.0.#V.k.....M'.,9..Z
666a0 c9 16 f8 24 8b ef ef a2 86 78 e9 7a 2a c4 0f 36 90 be b2 8a 2c b8 f0 42 c4 bf a0 6e 18 f6 5d 53 ...$.....x.z*..6....,..B...n..]S
666c0 46 29 5b 10 11 42 c5 1a a7 10 ba 2b d1 a1 9f e0 f1 21 72 06 46 4e 46 45 40 08 4e fa bd b9 1a cb F)[..B.....+.....!r.FNFE@.N.....
666e0 ed 61 c2 c3 71 27 e1 5e 75 64 83 b5 52 3f 8a 5c a8 7c ee 8e 83 50 9f 20 b2 9d 50 22 5b 10 49 27 .a..q'.^ud..R?.\.|...P....P"[.I'
66700 65 10 ac 1e 80 44 07 ce 35 d8 82 b7 96 6b a7 e5 b7 c2 b7 ab d8 c0 aa de 67 79 69 05 e1 cf 0d 02 e....D..5....k..........gyi.....
66720 6f 4c b7 98 f1 bd b8 f2 72 91 ee 7d e4 3e 9b ed e7 fe cc ed 99 d0 e1 b4 4f 9d 50 cb 71 b0 25 06 oL......r..}.>..........O.P.q.%.
66740 66 c8 61 6a 53 73 0a 90 36 45 33 44 67 c2 09 b5 5b f6 58 bc ea 0f ff 8f c1 c4 8c 78 17 4d 94 a8 f.ajSs..6E3Dg...[.X........x.M..
66760 97 89 15 95 d6 b9 9a 92 aa 52 40 3c 77 f5 4a a4 f8 d9 2f 58 d4 4b c9 55 db b0 1b 5b c3 89 f9 74 .........R@<w.J.../X.K.U...[...t
66780 51 d3 de d8 c7 67 48 04 7b 30 62 e5 f8 8d 48 4e 32 9b 71 00 7e e4 d9 59 24 33 78 6d 6a 7d d9 6a Q....gH.{0b...HN2.q.~..Y$3xmj}.j
667a0 e2 31 ee 2a f4 de c1 2c 15 7e 9b 61 65 61 34 bc 51 b5 b8 ea 9a 3c 94 2b 90 26 3c 67 c5 0a 3c 53 .1.*...,.~.aea4.Q....<.+.&<g..<S
667c0 9f 6f 6a 55 24 9a 6c be 6d ac 0c 8f dd 9b fa 1f 6e 91 de 14 ec 5c d2 86 e7 06 8e 0c d3 ab 69 20 .ojU$.l.m.......n....\........i.
667e0 93 58 f7 09 39 18 b9 42 97 dd 7b 81 51 49 27 c6 14 15 71 d8 a1 f4 ed d6 ee 0d 6a 83 48 0a f3 19 .X..9..B..{.QI'...q.......j.H...
66800 ea 11 d8 43 f2 12 58 9a d8 d5 f8 cb 77 2e c8 a5 e1 b3 74 a1 9e 43 f1 5a e1 c7 bd ed d6 6d eb 96 ...C..X.....w.....t..C.Z.....m..
66820 d5 25 92 a7 2e 96 e2 d7 a6 90 0e 08 10 32 58 d5 cd 23 0e 7b ee ec 8d 8f d5 65 00 e0 0a e2 a4 c1 .%...........2X..#.{.....e......
66840 1e f7 8b 4e ee bd 6c 15 19 92 87 99 7b b0 2b 59 65 3f 29 27 5d 1c e0 49 db 5d d7 a3 6a 6a 4d 84 ...N..l.....{.+Ye?)']..I.]..jjM.
66860 ea 59 c5 a5 52 3b fc 48 1f 56 cf 38 b6 7d b7 fe f5 ce 60 39 c9 52 11 c3 3a cf b5 fc f0 7b f8 8e .Y..R;.H.V.8.}....`9.R..:....{..
66880 89 eb b0 12 9a 0f 52 6f f7 ba da b0 9a cf 48 1f a3 81 20 7d f7 b5 2c 2c 36 fe e1 6b 8d fa 6f 16 ......Ro......H....}..,,6..k..o.
668a0 28 b8 bf 7c cc 16 0f 70 2b 5d b3 90 7e c4 fb be a9 83 b5 15 52 a3 04 f6 f4 85 07 51 35 f4 27 0b (..|...p+]..~.......R......Q5.'.
668c0 ee 23 86 e4 fa ca 74 87 21 9d 97 fa 4f 9f 40 0d fc a3 5b c4 59 cb 10 fb 70 54 1c b7 16 c8 35 5d .#....t.!...O.@...[.Y...pT....5]
668e0 f3 a8 ab 3d fb e9 08 c8 ce 07 b9 99 8f e4 f0 81 ad 7c 22 71 8a 7b 9d c1 39 57 ee ab dd b4 a7 7b ...=.............|"q.{..9W.....{
66900 fa ab 49 88 0a 7c 22 2d fa 5d 8e c2 89 0e 2c d1 3b f2 56 93 b2 9d 68 11 f0 f6 a0 19 65 08 2b 83 ..I..|"-.]....,.;.V...h.....e.+.
66920 f8 b5 80 fc 35 cf 1f fd 53 f1 20 6b a4 d3 d2 5c 0a 07 d3 62 3b 12 23 91 39 c1 5f 9d 47 26 84 6c ....5...S..k...\...b;.#.9._.G&.l
66940 bf a1 59 45 a9 4c aa c5 bb 37 22 80 ad 55 c0 13 e7 45 d3 18 c0 2b d8 b2 f6 cc 79 e8 ba 63 32 92 ..YE.L...7"..U...E...+....y..c2.
66960 77 e8 b9 01 4c bb 05 9a d5 68 d4 b7 56 bd b0 b9 de 0d 6e a6 d1 b2 ed d4 00 26 50 75 cc 38 e4 ff w...L....h..V.....n......&Pu.8..
66980 9d 88 75 9c 1b a8 0c 89 08 8e 10 30 c9 4f 58 71 a5 aa 2d 16 14 20 33 67 0f d0 a7 58 bc 72 6f e6 ..u........0.OXq..-...3g...X.ro.
669a0 57 19 4b 5c 6c 26 44 3d 57 04 48 ea 10 d6 3a 01 28 4e ec f2 c3 56 59 11 50 32 a9 98 b0 81 2e 77 W.K\l&D=W.H...:.(N...VY.P2.....w
669c0 d7 d0 32 6c 56 4f 44 be bf 45 40 dd 6b 39 e8 9e 21 c5 0c d9 73 2f c1 a3 b8 85 3b 22 42 a9 18 ec ..2lVOD..E@.k9..!...s/....;"B...
669e0 09 2f cd fe fd d8 34 f9 2e 06 ab 6c e4 77 f2 5a d1 57 42 3c c7 83 65 9e 58 91 eb 28 1f 09 1c 77 ./....4....l.w.Z.WB<..e.X..(...w
66a00 55 43 34 82 1c 4e 88 39 47 f4 55 8f 56 63 2e e8 55 fe b8 ad d4 0e 2a 4d d0 9a 4c 0c 95 cd c8 5d UC4..N.9G.U.Vc..U.....*M..L....]
66a20 57 a2 e7 7c 2a f4 68 ea 02 41 e2 64 e7 01 a8 3e d9 73 44 a0 b1 17 fd e7 34 e8 45 bc 63 2a c5 28 W..|*.h..A.d...>.sD.....4.E.c*.(
66a40 59 bf 9c 20 45 64 54 c8 51 31 48 88 01 3f ba e3 a2 71 92 55 50 6a 79 b1 05 13 9a fb 0b 42 28 01 Y...EdT.Q1H..?...q.UPjy......B(.
66a60 37 83 64 27 12 c6 b0 10 84 17 e5 11 86 b3 63 52 41 a6 a8 52 1a af 00 04 ac 1d 8a 8c 48 b5 f4 50 7.d'..........cRA..R........H..P
66a80 93 f7 42 60 ee 08 af f1 a0 3e 11 9d 69 39 b4 cc 32 a4 92 15 b7 7d ca c7 14 d3 75 d6 39 b5 0d 84 ..B`.....>..i9..2....}....u.9...
66aa0 0d 5f 56 b2 15 33 19 f9 69 82 4b fa af 5e f8 a7 37 09 fb aa 64 f2 c9 f5 f1 07 53 33 7a b9 e6 ac ._V..3..i.K..^..7...d.....S3z...
66ac0 1a ad cf 41 65 36 00 29 4a d4 fc 77 a2 59 05 75 e3 21 52 f2 39 dd ef f6 6b 8b 2f 01 a4 76 e8 af ...Ae6.)J..w.Y.u.!R.9...k./..v..
66ae0 66 f2 d6 b0 21 18 e3 c8 53 53 c1 d5 8b cc 0f 5a 99 cf b3 ba 15 f7 fa 92 e0 bb 29 9f e8 2f e7 80 f...!...SS.....Z..........)../..
66b00 9d 11 76 1d de 4f 71 6c 4d 63 4a 8f b6 54 cb 37 a9 48 5c 57 ca a0 4c f4 bc 9f 0b 58 ec 19 27 a7 ..v..OqlMcJ..T.7.H\W..L....X..'.
66b20 40 de 9f f1 59 55 1c de 8f 0f 87 97 56 4c d9 b9 d5 0f 2a d4 74 f3 c2 1a b2 a4 58 68 a8 46 aa 22 @...YU......VL....*.t.....Xh.F."
66b40 82 35 52 36 9b 5a e5 2b d7 1e 4e 2a 29 c2 b9 c5 d9 82 69 b9 28 b8 fe 34 0c 0a f7 84 06 50 bb a0 .5R6.Z.+..N*).....i.(..4.....P..
66b60 ad 9f 7d 73 0b d2 8b e1 74 c6 9b c0 f1 f2 19 b8 3f 40 59 e1 29 2d 4a a1 65 a1 f9 ab cd 9b eb da ..}s....t.......?@Y.)-J.e.......
66b80 30 26 a7 16 36 2f 7a bb 94 9c 25 06 4d 5a 8d e4 11 82 a3 4c d5 74 90 d6 4f e3 3a 8a 2e 1f 15 47 0&..6/z...%.MZ.....L.t..O.:....G
66ba0 bf 0b 00 d3 75 d6 69 ad 90 1d ee a5 51 8b 68 5f 39 4d de 2b a4 ae 1c c0 a2 b4 ce 65 d0 a6 90 b8 ....u.i.....Q.h_9M.+.......e....
66bc0 90 52 8c 8c 27 63 31 76 81 88 21 7a 67 75 f1 cf 5b 94 dc 3f fc 69 73 9e 21 36 9e 59 76 1f 9a 3c .R..'c1v..!zgu..[..?.is.!6.Yv..<
66be0 d0 76 d9 2e a4 23 07 2c da c5 df 4c dc 41 fa ef 18 4c 21 ce b8 f4 73 23 96 2b 78 b9 5f 23 f0 a8 .v...#.,...L.A...L!...s#.+x._#..
66c00 6d b6 ba fa 5a 53 aa ea 5d e3 c6 21 f4 d0 88 0e 04 c2 9f f4 28 4a 42 fb 87 23 f3 91 5e 82 3d 84 m...ZS..]..!........(JB..#..^.=.
66c20 ec f0 dc a9 0c 9d b8 ee 85 3b 58 c4 b8 19 34 28 01 47 a2 d6 3b cf fd fb 18 fd 8d 78 11 44 7f 04 .........;X...4(.G..;......x.D..
66c40 6d aa 66 57 32 bc 1a 39 c4 97 ba 9e 74 6c 9f 5c 60 a5 b6 92 f3 89 72 27 d4 f0 18 aa cd f2 b9 8f m.fW2..9....tl.\`.....r'........
66c60 30 8e d1 f6 a0 ac 69 a0 67 b3 5d 90 88 90 ec 66 76 74 f7 c6 a7 53 8f 47 fb 98 e6 14 c8 a1 1b 36 0.....i.g.]....fvt...S.G.......6
66c80 e2 58 bc b8 5d 87 ab f7 3c 16 63 b9 db 13 55 16 9e 88 f3 a3 2f 5c 03 5c 97 0d b2 e0 61 9d 73 83 .X..]...<.c...U...../\.\....a.s.
66ca0 7d 4b 89 41 fd 60 b7 23 91 0f 5b e3 46 93 9d 69 61 38 cb a5 1f 18 f0 8b 60 5a 4d 92 a6 4b c4 dd }K.A.`.#..[.F..ia8......`ZM..K..
66cc0 3d 01 5b c8 8c 3d 69 76 ed 07 ac 3c 86 fb af ef 11 13 d9 ad 63 2c 1b b2 8f bc b0 97 97 e4 b8 c7 =.[..=iv...<........c,..........
66ce0 f3 05 5a d1 c0 68 e5 3a fe 3f 78 e5 ad ca 5d 10 bf 1a 8b 82 4a 10 8c 4a f0 f3 4e db 3f 43 0d 35 ..Z..h.:.?x...].....J..J..N.?C.5
66d00 60 19 39 f1 9b 5e 65 f5 fc 97 ce 79 42 ee 57 cb c1 2b 49 42 ee 7e 00 f1 b3 ba 2e d3 fc d0 26 14 `.9..^e....yB.W..+IB.~........&.
66d20 dc 71 7f 1a 2c 10 4c ef 91 c6 ef 7d 60 d8 2f 16 19 34 2d 78 88 62 bd c1 30 21 fc 1d 10 11 8d 47 .q..,.L....}`./..4-x.b..0!.....G
66d40 5a 51 83 52 fb 56 26 57 f8 b7 fb 98 c8 8f 79 f8 ef ce d6 86 5a c0 b6 6e 8d 09 b8 1d 74 12 91 8b ZQ.R.V&W......y.....Z..n....t...
66d60 a2 e2 ea e0 31 e4 e6 fc c5 5f b8 b8 da 41 aa 59 17 b3 ca 67 40 a7 7c 2b dc ee 20 3e 3a e8 1a d2 ....1...._...A.Y...g@.|+...>:...
66d80 10 2e c7 3d e8 ef 03 05 53 d7 05 f8 72 27 f4 a0 54 c8 75 4f ba 32 44 54 09 9b 30 80 b1 22 f6 a3 ...=....S...r'..T.uO.2DT..0.."..
66da0 a5 85 e2 5f e2 37 0d 32 63 e6 98 5a 0b 27 4e c6 f7 0e 78 7d 0c 82 72 87 e7 73 8e f9 95 73 2a 67 ..._.7.2c..Z.'N...x}..r..s...s*g
66dc0 21 8f 2e d5 d2 ad 09 a7 52 20 9f 31 a1 f3 1e ca 81 fa 14 21 92 bc ad 38 d4 c0 e2 4c e1 d9 3e de !.......R..1.......!...8...L..>.
66de0 51 af c2 ed 30 15 47 fc 51 6c bd 08 74 2d 22 17 2d 7c d4 75 a7 e9 3f 3f e0 7f b3 09 ae f1 c9 1b Q...0.G.Ql..t-".-|.u..??........
66e00 2c ad 79 e0 a9 73 d7 27 22 f9 df b9 17 05 ec 99 c6 11 94 ef 01 61 ac 48 80 8b 8f d9 b9 f6 65 a7 ,.y..s.'"............a.H......e.
66e20 18 1a 23 21 e5 75 f8 e2 7f 60 30 ee 27 eb f3 94 c5 4d 8b b5 96 bf c8 05 bf 22 4a 4f 54 ed 6c 30 ..#!.u...`0.'....M......."JOT.l0
66e40 ab 7d dd 5d 9e a9 12 bd df 56 69 e5 55 c4 5f 66 b2 d0 e0 07 3b fb 30 ec c0 ba 5a 22 7a 41 cf 53 .}.].....Vi.U._f....;.0...Z"zA.S
66e60 6d 1e 2f 16 7f d8 1a f4 55 27 b3 62 df e2 d9 c8 e9 d0 da 6f ce 87 3f f9 f5 79 9b 1b 09 d0 94 36 m./.....U'.b.......o..?..y.....6
66e80 81 eb ac 1e ea 84 32 6f cf 0a cb 6d f7 eb 09 8b 9e 5c ac 92 8d c8 a5 d9 7c 3f ca 91 38 e0 9b 4c ......2o...m.....\......|?..8..L
66ea0 8d b7 0d 27 c6 e6 ed 41 09 7b 94 0f 83 de eb 57 11 fa 91 9c 6b 25 05 7f 3e 0d b1 cb df d8 66 10 ...'...A.{.....W....k%..>.....f.
66ec0 79 00 e1 bf 55 3e b5 07 4b f2 f2 3a a6 17 4c 16 63 9d 46 3c 5c 1b a3 06 5c b9 83 91 ce e8 c7 3d y...U>..K..:..L.c.F<\...\......=
66ee0 2a ae 19 1b f6 c2 a9 14 d3 24 7b de e6 07 7b 23 86 bb f8 13 52 98 b3 df 61 ad 71 a0 2f 2e 61 f2 *........${...{#....R...a.q./.a.
66f00 37 39 c1 e1 c8 8d e3 c2 db 34 b7 53 5c 72 60 46 7a e9 a7 91 56 74 f3 be ac 70 a3 61 e4 a2 ab 79 79.......4.S\r`Fz...Vt...p.a...y
66f20 00 b2 e3 46 91 a3 a4 16 81 a0 cb 55 7a f1 f5 9b c9 0d 44 97 53 2e c5 86 a2 56 ce 11 fc 7f 37 33 ...F.......Uz.....D.S....V....73
66f40 68 08 33 ff 5d 58 d8 00 d9 9e 6a b3 d1 65 ec b9 7d 1d 57 36 fa 31 15 77 43 af a5 6d e5 08 10 3d h.3.]X....j..e..}.W6.1.wC..m...=
66f60 0d d9 3d e8 81 3c 54 d5 d4 0b b7 41 ea 00 56 2e b1 74 aa 14 93 d3 c4 29 d9 7a ea b5 15 77 db c3 ..=..<T....A..V..t.....).z...w..
66f80 17 64 44 42 56 e5 39 b5 db be 69 b7 5a 9c b3 eb 64 19 a6 34 48 7f 05 63 4f fa e1 b1 17 9d 61 ed .dDBV.9...i.Z...d..4H..cO.....a.
66fa0 4a e7 f0 05 26 a8 59 2b e9 e5 4a 33 d2 8f 88 37 ba 3b 58 0a 1d 08 29 03 17 fd 83 db 55 46 e3 82 J...&.Y+..J3...7.;X...).....UF..
66fc0 54 36 41 ad 27 07 cc b5 e2 a3 e1 03 2b bb 1e c6 c1 c4 82 d1 ef 22 85 25 92 bd 3b f7 ab d1 0f 0e T6A.'.......+........".%..;.....
66fe0 f5 d5 8e bc 88 33 33 f6 d7 53 1d e5 dd 36 bb 70 cc 90 2d 2a 0a 4d 72 37 2e f7 4d c7 28 70 b8 48 .....33..S...6.p..-*.Mr7..M.(p.H
67000 73 3a c3 e7 3b 47 f1 cb df 9b c6 26 19 78 77 77 cb a1 e3 bb ae b3 c5 76 77 4e 5e 87 80 ea ca 48 s:..;G.....&.xww.......vwN^....H
67020 25 03 f8 13 8c bc 92 c9 a7 cb a0 0c 57 30 82 3d d2 f0 a1 1f 13 a8 de a4 66 5b d6 76 aa 51 04 74 %...........W0.=........f[.v.Q.t
67040 dc 7c 8b ae 9e 32 66 a4 e7 83 b5 2e 17 1f f9 18 69 3f cd 04 15 68 30 c0 0f f4 b1 bd a5 6c d8 e9 .|...2f.........i?...h0......l..
67060 2d c9 bf cc 29 f4 23 de 4d c0 0c 3a 8f 21 b4 29 89 04 e4 99 f5 e0 71 c7 85 76 84 d0 e2 ef 8d 56 -...).#.M..:.!.)......q..v.....V
67080 73 6c 5e 6b 49 57 f7 8e e1 61 6c 51 dc 11 c5 bb e6 c6 ed 55 17 95 d7 b3 db e6 27 b0 16 4b a8 23 sl^kIW...alQ.......U......'..K.#
670a0 5c 7e 41 64 d9 aa e9 29 de e4 49 35 97 df 96 b8 dd 83 65 83 d3 cd 9c 14 df f1 b5 7e 4e 69 fe d0 \~Ad...)..I5......e........~Ni..
670c0 fa 4b 15 84 ab 09 a2 1d ea a8 aa cf e0 21 73 ba 45 91 65 5c 98 a0 d3 59 58 3a 1d e1 5f a7 69 8e .K...........!s.E.e\...YX:.._.i.
670e0 d0 57 f3 fc bb c9 dd 6c df 1c 1f 19 25 05 5f fa 81 85 f4 7f 1c 5b 1c e5 be c5 9b b3 8b b5 3a 21 .W.....l....%._......[........:!
67100 b8 c7 58 7b 44 56 c8 c1 f0 ad ef 3a 77 47 4b 55 43 b9 fc 9a 0d c5 8c ef 8f 7e e7 b5 57 45 04 e5 ..X{DV.....:wGKUC........~..WE..
67120 45 8e 60 d5 fe 6a ab 03 68 8c ad da 7e 1b b0 aa 88 90 92 09 e0 3b e6 4d 31 c6 f7 d6 fd d5 af a1 E.`..j..h...~........;.M1.......
67140 ae 72 4e 54 be b9 8e 03 12 38 f2 ce 2d 3c ea bc b4 29 e2 90 17 73 77 6a e6 fd ef 2a 4c ab 72 87 .rNT.....8..-<...)...swj...*L.r.
67160 b4 7d bc 01 d5 59 bb 03 b3 b1 6a ef 50 14 e5 7a c1 63 16 7b 53 8b 6d d1 a1 20 e7 50 2b 63 b4 1e .}...Y....j.P..z.c.{S.m....P+c..
67180 41 d1 a7 b6 08 0e 14 81 24 1f 8f 23 01 3a d1 bb 47 fc 2e b6 81 f0 fe 30 78 3d 05 bc 73 b0 b7 16 A.......$..#.:..G......0x=..s...
671a0 2d 1b c0 c2 7d 9c e9 2b f5 55 d7 88 29 2f a2 a5 96 50 1c f1 22 1e f2 cf 82 84 c8 61 12 e3 60 eb -...}..+.U..)/...P.."......a..`.
671c0 9e d0 09 a7 98 79 08 cc 0b f9 19 fa 9c 82 87 e6 6d 68 37 cb 6e 30 00 20 bd 78 12 2b d0 27 1f 76 .....y..........mh7.n0...x.+.'.v
671e0 ee 59 5b 9f 0c cf 40 11 71 b1 74 c7 41 3f 63 9f 00 a7 0a 31 0d c9 56 99 67 88 42 d7 4e 17 0a 4d .Y[...@.q.t.A?c....1..V.g.B.N..M
67200 01 d4 a1 cb 12 8f e9 ac 34 b2 23 76 11 8c 4d f8 55 ba 3f 32 f9 07 21 7a ae 91 be ba 97 98 ac 33 ........4.#v..M.U.?2..!z.......3
67220 fe 65 89 74 ed 75 33 31 05 79 e0 d1 dd 7c e4 8f 69 a1 35 18 40 44 86 34 0e 6b 54 72 07 cb 2e bd .e.t.u31.y...|..i.5.@D.4.kTr....
67240 e1 8c 7e 96 bf 60 66 1d d5 23 65 0f 59 1e 8c 03 be 78 b3 1e d2 dd 86 ec 03 2d f8 88 d6 3f 24 3a ..~..`f..#e.Y....x.......-...?$:
67260 ce 91 e7 ba 4a 27 c5 e5 b9 91 5c 35 aa 23 15 7b dc d0 ab 9d f6 5d bb 98 70 14 de 90 1a 44 c0 41 ....J'....\5.#.{.....]..p....D.A
67280 59 eb e2 26 7a 85 79 be 56 80 7c dd 15 25 f9 9d 05 f7 af dc fb 8b cc a7 0c a5 d3 ba f5 0e 35 02 Y..&z.y.V.|..%................5.
672a0 00 49 35 68 ca 51 82 d0 6b 68 15 ce 9c c9 bc 16 88 3c 47 78 a6 4c 29 2f d9 c6 ee 5d 57 7f 9e b6 .I5h.Q..kh.......<Gx.L)/...]W...
672c0 57 17 6a 8e 12 70 11 c8 13 1d 3d 58 92 81 23 06 96 2b ea 93 55 ff 92 c9 3f e5 1e bf 2b 30 21 f3 W.j..p....=X..#..+..U...?...+0!.
672e0 48 72 0f a8 fc 26 51 73 c9 47 63 16 4d 15 09 50 f6 4b dd e5 8d 0f 28 32 e8 8b a2 c4 17 8e e7 06 Hr...&Qs.Gc.M..P.K....(2........
67300 43 6a ee f1 f8 d0 0f a3 8b ea 17 9a e8 6d b3 7e 7f 59 28 bd 91 64 a9 7e 39 35 fa 55 f3 d7 6c 4d Cj...........m.~.Y(..d.~95.U..lM
67320 79 a9 ae 99 9b 8f f7 60 fa c5 91 ba 72 10 8f c0 6d 0e b4 34 b3 a7 44 78 13 73 33 5d 19 71 66 e2 y......`....r...m..4..Dx.s3].qf.
67340 ed f7 1e da 19 2a dc 9e 5d 53 87 21 b7 ab 90 7d 14 b4 5d 24 4f c6 23 67 45 d0 07 e2 10 b2 4e 05 .....*..]S.!...}..]$O.#gE.....N.
67360 1a 05 3a 8a ec d7 db 3a d4 92 de 45 95 4c 34 32 29 05 d2 45 a9 07 02 25 f4 a5 03 e8 7e ae 8c 60 ..:....:...E.L42)..E...%....~..`
67380 e5 90 b6 95 19 f6 b7 2e 3f 48 0e e1 98 63 41 da ae 6e 2e 9d 08 5c a4 eb cc 08 c2 20 b5 75 03 3a ........?H...cA..n...\.......u.:
673a0 55 7f 1b 9a da 08 2f bf 70 f0 81 4b 5d 32 df 0b 68 ed ce cd ab c5 73 02 bb 9b 8f 91 fc 8c 2a 90 U...../.p..K]2..h.....s.......*.
673c0 b9 27 0c 4e c2 bf c7 34 a7 99 12 8b 10 a6 77 2b 3e 61 37 f6 23 b3 07 3b 91 18 b4 69 48 e0 18 95 .'.N...4......w+>a7.#..;...iH...
673e0 01 1f 3f da 4a d6 c2 6c e1 b6 d8 48 77 3f 37 77 8d ef af a0 0e 45 d2 c2 e3 8c 14 f9 9f b8 80 32 ..?.J..l...Hw?7w.....E.........2
67400 77 e6 fe 2c 5c 53 5e ef 90 60 ac dc c0 45 c4 15 6b bd e4 4c 8f f5 63 79 89 7b 47 7a 95 96 1c 06 w..,\S^..`...E..k..L..cy.{Gz....
67420 12 c8 52 86 49 ba 1c 76 1b d3 57 ff 16 55 34 0c a4 90 4b ae eb 39 c4 ec c7 56 8b 6a 7d d0 3a e3 ..R.I..v..W..U4...K..9...V.j}.:.
67440 f3 d3 77 cf c2 b9 22 ef e4 55 b7 90 bb 37 a3 f1 3a 60 32 65 33 b2 71 21 7f 6d c9 48 8b 4c 97 64 ..w..."..U...7..:`2e3.q!.m.H.L.d
67460 ac 84 bd ea 2c 1f 78 98 d1 1f ae f0 8c a1 2a fc 8a 16 56 4f 86 9e 23 66 35 b8 9c c9 ef 66 ef b9 ....,.x.......*...VO..#f5....f..
67480 06 1d 8d 9e da 74 2a ef c9 39 b2 13 14 1a 4e 98 27 9c 0e b8 d1 be 41 85 4a 12 32 6f 5d 38 09 8a .....t*..9....N.'.....A.J.2o]8..
674a0 20 ca c0 e1 de 75 4f 22 0e c0 48 61 5c bb 91 69 7c 73 6f 48 d8 d5 c2 a0 dc b0 8c 72 b3 33 7e 2b .....uO"..Ha\..i|soH.......r.3~+
674c0 d3 6f 0c af 94 7c 30 1a bf ff c4 24 ac 20 2c 97 72 ee 0f 32 27 3b b8 a3 db 8d 15 58 f1 c8 cf 83 .o...|0....$..,.r..2';.....X....
674e0 3a 33 39 36 08 39 0b 17 9b e9 b0 f3 09 35 4e ed 9d bb b7 e0 be e0 f5 b4 ab a1 32 30 dc 57 d7 d8 :396.9.......5N...........20.W..
67500 21 9e 11 ce aa fc 1d e0 72 64 e2 f8 50 ea 9b c9 ca b3 52 54 0e cb c9 11 0c c6 5e a0 26 ff 86 fb !.......rd..P.....RT......^.&...
67520 b4 93 b1 bb bd c2 db d1 f7 f2 80 6d bb 1a 37 e7 2c c2 8c cc 8e d6 7d 5f a7 dc 1b e6 43 53 0a 25 ...........m..7.,.....}_....CS.%
67540 48 f0 21 ff 59 47 39 b3 b8 49 97 50 32 31 de b7 68 f9 5f e3 09 2e b6 3f 0c a1 4d 48 53 dc 79 fa H.!.YG9..I.P21..h._....?..MHS.y.
67560 5a 3c 8e 1e 0d eb 9d 09 14 5a e7 f0 99 44 f6 5c e7 97 cf ea 55 95 66 9f ed 77 d6 b1 ca 25 df 29 Z<.......Z...D.\....U.f..w...%.)
67580 5b 08 ba a2 f4 e2 bc 04 94 71 f9 6e d7 da 82 ee e9 32 b1 87 98 a7 4a b5 c6 fb 4e 67 70 6c 07 c0 [........q.n.....2....J...Ngpl..
675a0 47 f2 37 22 80 48 dc c9 59 b5 64 cd c6 54 5c 6c 27 22 4c f5 ba 6e b8 cc ff 23 50 2a 02 69 15 b9 G.7".H..Y.d..T\l'"L..n...#P*.i..
675c0 97 9d 8f bb b7 cc 2a c2 52 9c 77 d3 78 c0 ff 4e d8 ab d9 f1 ba ff 4a 5f 27 38 02 63 ab 37 bd 6f ......*.R.w.x..N......J_'8.c.7.o
675e0 54 0e 86 b5 ae 33 fd 2c 74 4a 42 4f 57 e1 1c ca 1e a8 20 5d a5 f1 33 3d c8 86 04 1f f9 4e ec 0f T....3.,tJBOW......]..3=.....N..
67600 ec 9b f3 86 52 67 39 d3 c3 0a 4b 8a 80 9f 5c 5f 2c c4 d4 b2 be e9 36 45 4a 4b 58 24 cd 2e 7d 90 ....Rg9...K...\_,.....6EJKX$..}.
67620 d4 33 92 00 8c 34 b5 13 7f b3 cc 70 f4 61 50 fc 9f e4 7a 38 fe 50 ae c0 87 a6 75 8e aa fd 9c 94 .3...4.....p.aP...z8.P....u.....
67640 80 75 47 50 6d dc 0d 7b 7e ff 37 b8 ec 39 68 2f a1 3d bd 78 96 5b 13 8a 2f 93 65 64 ea 6a 3c fc .uGPm..{~.7..9h/.=.x.[../.ed.j<.
67660 6b 64 03 c5 2f 81 5c 28 44 74 b3 c5 27 2d 56 5f 7a a8 13 ea cc 16 21 80 31 a2 4f 1c 92 4d 1c f6 kd../.\(Dt..'-V_z.....!.1.O..M..
67680 d6 92 20 a1 0a de 90 8c e2 f4 e4 10 c1 26 96 0f 05 c6 96 ff b5 1f f7 84 82 d7 85 4a 77 dd ce e2 .............&.............Jw...
676a0 b8 ec 6f 94 b2 fb 04 15 34 b6 88 04 ee bf 5e c1 b2 c2 b4 b1 47 72 f8 41 89 c0 1a ba bc 70 87 85 ..o.....4.....^.....Gr.A.....p..
676c0 38 82 7f bd bf b4 e1 2f b0 f4 5d b4 47 bc fb fa 32 28 f5 57 78 e9 a5 a8 01 96 84 b5 96 36 58 36 8....../..].G...2(.Wx........6X6
676e0 54 75 25 2b 6a a5 2b 61 40 dd 7b 22 06 47 ed cc d1 28 18 5a 0d 8f af 4b 35 63 31 47 93 a6 b4 6b Tu%+j.+a@.{".G...(.Z...K5c1G...k
67700 78 21 f3 ed 7e 07 ed 0c 3e 13 2c 77 9b d5 c4 0e f0 fe 58 d2 ad e6 33 98 4c b2 0d ca 1a 35 3e ba x!..~...>.,w......X...3.L....5>.
67720 3f 90 f2 ba d2 91 d5 f7 09 46 f7 56 05 bf 6e 8a 5d 88 7d ed 3b 4d b9 eb cf 53 ea e6 6c 44 21 72 ?........F.V..n.].}.;M...S..lD!r
67740 96 45 71 b5 b6 0b 26 2a 0d 64 cf ab bc 07 ed 9b f2 e7 c0 6e b6 31 8f 49 ec 7d 73 0c 2a 23 60 19 .Eq...&*.d.........n.1.I.}s.*#`.
67760 07 45 e7 87 37 fd 2d d6 49 17 0f cf e8 38 2a 4b 59 a1 d7 07 87 a2 e9 65 fe 20 ef 52 11 d7 7b bb .E..7.-.I....8*KY......e...R..{.
67780 92 4c a8 14 a8 70 d5 13 8a 34 58 64 0b f7 21 d9 a8 d7 2e fd 2f 22 07 90 4f 2b c7 c5 5c fd 11 9a .L...p...4Xd..!...../"..O+..\...
677a0 97 2b 02 ff c9 10 f3 5b 3a 89 3a 0c 13 45 ff 7b 04 59 cb bf 22 04 72 43 c4 e9 62 52 bc 3a 8b 44 .+.....[:.:..E.{.Y..".rC..bR.:.D
677c0 79 f6 6f c2 6c f0 96 b0 04 b3 02 21 80 d6 c7 f7 23 de 1a 73 9a ec ff 7e ca 0b 6a ad b5 35 16 4c y.o.l......!....#..s...~..j..5.L
677e0 dc 2b b5 2e 80 4b 05 1b 4e b9 e3 27 c5 17 37 eb db 3e de 2d 35 d7 3b e9 88 4f 21 e6 8d fa b1 ff .+...K..N..'..7..>.-5.;..O!.....
67800 f8 62 d0 ae ea 5f 80 79 a0 1a a0 b4 a3 d3 ae 99 19 2f 7b 42 e8 72 58 60 31 5c 7c ec 49 15 b4 80 .b..._.y........./{B.rX`1\|.I...
67820 39 0c 06 14 1a 32 64 df 94 9e b6 b0 9d db f0 d9 a6 31 5f a6 46 8d 38 2c 9b 67 9f ff 12 81 3d 5a 9....2d..........1_.F.8,.g....=Z
67840 62 df 95 8d f1 53 a9 81 88 aa 99 80 c2 8d af 9a 36 77 7c 8a 20 38 24 b4 9c cf 05 16 a7 fc 2b 91 b....S..........6w|..8$.......+.
67860 e3 4e 9c 69 61 14 f0 d2 d6 9f 5a f4 8d ab 1f 2c 2d 05 10 0b 68 42 84 9e 59 6e 2e 6c 47 0b 00 6e .N.ia.....Z....,-...hB..Yn.lG..n
67880 ce d4 a5 fa 32 6b cd 7b 02 de 37 db cf 78 11 16 20 f3 b4 78 64 b6 da de fc 58 cd 61 b2 ac d7 ce ....2k.{..7..x.....xd....X.a....
678a0 03 83 6f 44 c1 78 91 21 0e 02 68 a8 9f 54 73 a5 1f 61 5b f3 31 cc 3a 0e 52 86 42 bc 02 79 dd 98 ..oD.x.!..h..Ts..a[.1.:.R.B..y..
678c0 cc f0 38 32 f8 2a 32 3c 85 3a a1 c2 aa b7 7e 31 e4 b1 f7 0a c1 8c 0d 1f 1f 2f fc a9 56 ba ff 4e ..82.*2<.:....~1........./..V..N
678e0 5c ef b5 e0 4a 3a d7 62 ec 91 bb 49 90 4c 1b 31 e1 43 54 25 1d 58 a8 73 61 45 83 7a 04 5f b2 e0 \...J:.b...I.L.1.CT%.X.saE.z._..
67900 ee c4 d7 09 8a 00 82 af 6c 33 57 d9 a1 ab 51 0a fb 43 f0 a8 4c e9 95 ec 9d f6 75 1e 6f bd 79 dc ........l3W...Q..C..L.....u.o.y.
67920 c2 eb 4f 45 bd 71 84 aa f5 9f 16 86 4b 4b 2c 0a 17 1a 65 d2 c2 09 47 48 2d 76 7f 8b 89 1a 18 49 ..OE.q......KK,...e...GH-v.....I
67940 1b 39 ac 21 83 91 e9 b8 17 04 95 bb e6 ef 53 83 a2 a8 ad 9d 42 7a 7f e0 1d 07 0c 92 10 4b 46 85 .9.!..........S.....Bz.......KF.
67960 04 48 b3 82 65 73 5e 4e 8d 15 2d 7a 92 8a 53 83 22 67 20 6b ad b5 73 f9 58 0f fa 36 db a5 89 28 .H..es^N..-z..S."g.k..s.X..6...(
67980 cf ed 4c 75 f0 cf 9e 93 68 ae d7 a3 d4 4c 31 68 06 29 07 67 46 70 4b c8 b1 62 5d e7 0d 26 78 68 ..Lu....h....L1h.).gFpK..b]..&xh
679a0 93 4a 09 a7 9a ec b4 6b c6 41 ba 7a 73 9f 02 59 54 00 25 e1 73 7c a5 3d ba a5 46 6d 35 54 ba 4e .J.....k.A.zs..YT.%.s|.=..Fm5T.N
679c0 70 e3 a6 99 8a 33 c7 d1 67 f7 3f 10 cf 43 19 34 96 e2 c4 08 b9 6d 26 ba 07 d5 d9 c1 e2 70 e0 69 p....3..g.?..C.4.....m&......p.i
679e0 63 41 9c 5f c3 4d 62 52 5a 20 7b 02 d5 e9 f0 4a 30 41 85 98 fa 8c ab 7c 9a 27 dc 65 65 48 95 dc cA._.MbRZ.{....J0A.....|.'.eeH..
67a00 0c 98 58 08 d1 65 44 31 91 bc be 18 32 d7 ad d8 26 1d 1d a8 4a e6 a4 56 62 ec 24 29 5d bd 31 e6 ..X..eD1....2...&...J..Vb.$)].1.
67a20 fc 58 eb 53 2b d8 97 c0 89 54 ea 35 0c 2a 60 52 ff fb b6 f8 9d e4 5f 80 74 0c 84 73 98 73 c3 90 .X.S+....T.5.*`R......_.t..s.s..
67a40 e3 41 43 28 fe 23 0a 01 cd 31 f7 25 5a 6c 78 4d a5 be 0b bd 10 8b 56 4b 90 b6 a3 5e 8a b5 78 ee .AC(.#...1.%ZlxM......VK...^..x.
67a60 32 0c fb 5b 84 2d cc b0 d6 01 d3 8a 2b 02 70 9a e8 f0 bd 13 7a bd 80 40 66 cd bc 9c a7 59 c5 8f 2..[.-......+.p.....z..@f....Y..
67a80 b9 df ab ff b5 99 ec ae 90 fd 60 6f e4 63 b6 48 ef 20 a8 ae 15 2e b9 40 86 04 0e 27 bd c2 b8 07 ..........`o.c.H.......@...'....
67aa0 49 6e 6e 78 52 1a 60 4f 59 33 71 4e 17 53 54 e7 82 2c 21 02 7e 12 82 af a7 0b 9f 4d fd bc 7b ec InnxR.`OY3qN.ST..,!.~......M..{.
67ac0 e2 3c b1 01 de 7b c6 ca 4f 10 b5 c4 3b 36 a4 3e 3e 0b 26 33 b5 e7 3b 85 7d 74 98 bf e6 45 91 f8 .<...{..O...;6.>>.&3..;.}t...E..
67ae0 ac 5d a8 76 ac 59 5e 19 6b cd 4d 26 bd bb 15 c2 99 a8 37 e8 74 e2 1f 54 a7 40 16 74 4b d1 19 6b .].v.Y^.k.M&......7.t..T.@.tK..k
67b00 32 46 d2 24 9c 96 50 f3 c4 b1 b5 40 79 fc 92 24 86 ea f2 d2 b7 80 86 94 d0 be 3d 97 e6 45 62 8d 2F.$..P....@y..$..........=..Eb.
67b20 f9 70 9a 60 b8 7b a2 69 b5 62 fe 24 c0 93 ef 77 1f 6c d6 ae 02 66 4d ee 72 90 af c9 5e 96 57 83 .p.`.{.i.b.$...w.l...fM.r...^.W.
67b40 70 03 f4 cf 51 65 e9 c2 bd 7a 44 75 22 58 e1 17 53 f0 6e 92 1d c9 b8 5b 8b 3f 67 3b 04 d4 d2 e5 p...Qe...zDu"X..S.n....[.?g;....
67b60 56 a6 53 db 98 18 30 56 f7 a8 7e ff db 89 51 5c d8 c4 4f a2 91 00 b3 6b 2b 55 40 10 31 9e f1 c3 V.S...0V..~...Q\..O....k+U@.1...
67b80 f0 5e f3 f0 c4 23 eb a5 93 2c 4d c2 bc 1e 93 e4 0f 72 46 6a c9 b7 64 a2 cf 14 c6 1b a9 5b 75 de .^...#...,M......rFj..d......[u.
67ba0 52 bb cc a5 f5 70 95 b8 d7 c3 4f 09 b0 9e 3c 7b 51 24 59 de 49 35 b0 05 65 23 ab 82 ae 63 1f 64 R....p....O...<{Q$Y.I5..e#...c.d
67bc0 21 41 1e 72 75 2c 94 a9 16 24 d6 9a 1a 37 ca 80 83 3c 35 cd e0 51 8b 2e b0 f1 f2 d7 ee 60 b5 38 !A.ru,...$...7...<5..Q.......`.8
67be0 60 69 d6 23 b1 00 7a 27 13 3e ec fe 23 87 e3 d2 c2 bc 81 2f e6 26 2f c3 02 a6 79 18 65 74 6b 2b `i.#..z'.>..#....../.&/...y.etk+
67c00 ac aa 3e e7 90 40 31 12 8c d9 e7 62 71 82 81 42 2a 59 3c 4e 40 87 16 0c 8b 7a e2 79 d4 f5 03 08 ..>..@1....bq..B*Y<N@....z.y....
67c20 c5 a6 4b 0d a9 21 d9 19 a8 0b 55 02 bf 86 ee df b0 e6 b7 6b 15 79 70 c6 e8 d3 c7 2e ad 3a c0 4b ..K..!....U........k.yp......:.K
67c40 3b 56 2d 7e db df a7 02 05 c7 8a 41 43 a0 fa 2d 10 90 94 e6 f2 b9 51 9b f4 10 47 d8 70 1b d7 ec ;V-~.......AC..-......Q...G.p...
67c60 26 27 88 d5 14 8b 1f 3d 06 96 80 46 bb 24 b4 e8 97 07 dd b6 2d 7a 1e 82 b7 58 e2 9f 09 f4 12 2c &'.....=...F.$......-z...X.....,
67c80 af 33 1a 6e 87 f7 3c f4 ad 38 28 d6 95 bb b8 6b 35 90 98 f3 4b a7 36 59 c1 ac 4a f5 69 9b 21 43 .3.n..<..8(....k5...K.6Y..J.i.!C
67ca0 e1 de b1 55 98 25 05 53 91 6f c2 c4 c4 fc 01 e9 7b 33 a4 0e 3f 36 d0 0e fd 80 81 21 54 0e 93 a2 ...U.%.S.o......{3..?6.....!T...
67cc0 24 8e 00 00 00 00 00 00 d0 1c 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 32 2d 72 63 32 2f 74 65 73 74 73 75 69 74 65 2f 74 65 73 74 5f 65 6d 2e lzip-1.22-rc2/testsuite/test_em.
67e20 74 78 74 2e 6c 7a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 txt.lz..........................
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 33 33 33 31 30 00 31 32 33 34 37 34 32 37 34 35 34 00 30 30 31 36 35 33 30 00 30 00 00 00 0033310.12347427454.0016530.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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 83 ff fb ff ff c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 24 00 00 00 LZIP........................$...
68020 00 00 00 00 4c 5a 49 50 01 8e 00 10 6d fe 47 27 15 f8 22 27 f9 79 a3 cb c0 53 0a 54 9d ea 93 0e ....LZIP....m.G'.."'.y...S.T....
68040 b0 93 c5 dc 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 .....@.H.V.0.9G}..=...V..".}....
68060 08 2e 0a cc 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 .......pII.S...P`..S4..........L
68080 16 5e d7 e7 1c 56 f6 36 1e f0 f4 99 06 e2 54 97 c8 a1 c2 40 67 f6 7d 13 06 2a 0d c5 a0 e4 64 d5 .^...V.6......T....@g.}..*....d.
680a0 14 8d 04 9a 88 99 90 d1 95 c1 67 ca b4 d5 30 76 7f 21 c7 6a 22 c4 11 f4 b6 1f 36 90 84 0a f8 ae ..........g...0v.!.j".....6.....
680c0 19 f5 64 1a f2 f3 d9 a4 eb 9b a0 72 33 26 08 6b 73 91 1f 0d d7 2f 5e 5e 8e c3 7c 57 2c 5a 2a ab ..d........r3&.ks..../^^..|W,Z*.
680e0 8c 80 6b ef 44 5a 82 bf 65 c5 99 77 28 e5 23 91 ba 13 d8 dd 49 1a 3c dd ab 81 e4 9c cb 01 02 03 ..k.DZ..e..w(.#.....I.<.........
68100 12 d6 71 f1 3f 0c 69 56 22 af 77 78 43 a4 3b 4f 9c 77 a7 3d 0e b8 fd 68 4a 17 80 0f 70 c2 bf 65 ..q.?.iV".wxC.;O.w.=...hJ...p..e
68120 29 74 ba 3f 71 c5 35 29 7d 84 a5 fa 9f 43 d8 90 d8 cb 99 1c b7 9a 34 6e f9 32 87 bf 58 95 4c f8 )t.?q.5)}....C........4n.2..X.L.
68140 10 52 25 71 1d 95 27 36 f6 eb ca 8e 29 01 75 c2 aa de 76 2f cc d3 b2 7e 0c 4c 91 98 85 ae 8e 65 .R%q..'6....).u...v/...~.L.....e
68160 99 6e 98 0b 4b 3c fa 93 ee 1e 2b 42 c3 ab 86 7a 3a a9 47 b7 c2 f7 ef 30 59 02 c4 28 2d a5 fb 43 .n..K<....+B...z:.G....0Y..(-..C
68180 7e c2 f3 e3 95 15 04 38 8d 6a 85 57 a5 89 79 0f ac 13 bd 7f 4c 3e 85 a1 44 d3 29 20 2f a3 4f 9e ~......8.j.W..y.....L>..D.)./.O.
681a0 83 33 b8 fe ca 89 bd d7 42 07 eb 03 2f a3 e0 6b be 32 89 ef 4d 17 82 db 1d 87 9b f2 e6 57 ad d3 .3......B.../..k.2..M........W..
681c0 fa 23 1d 59 c6 b7 90 c3 8a 63 19 80 2f 53 d7 1a 4e ca fc aa a0 b2 ac 88 03 00 3f 79 cb 96 f0 39 .#.Y.....c../S..N.........?y...9
681e0 bb e5 eb 58 75 79 f1 d3 a2 e2 43 1d 62 3d 85 39 fb f3 54 ab 72 5e 3e 3b 53 cb 83 83 ba b0 d7 e1 ...Xuy....C.b=.9..T.r^>;S.......
68200 3e a3 b6 4a 53 35 20 e6 60 e2 96 d7 b1 fd fb fc c0 f2 5b c8 e6 86 fe 78 ef 7d d6 84 4a 1e 82 76 >..JS5..`.........[....x.}..J..v
68220 6e 88 ba fa 58 f2 fe ed f8 6a 62 c1 37 22 2f 25 83 58 30 53 3a 31 43 fd 0e 72 0a ee dc 78 2e fe n...X....jb.7"/%.X0S:1C..r...x..
68240 b0 c6 47 25 89 10 fc fd 77 96 85 8d f5 a7 82 70 2a 1c eb 6e 78 4b 55 21 1b c5 b1 07 fa 3d d3 5f ..G%....w......p*..nxKU!.....=._
68260 e0 43 e9 ad 30 8c 08 2a fc d4 25 1a 39 dc 8f 4a 65 db a8 e2 9b 78 17 27 51 d3 cd 03 f8 1d 11 bd .C..0..*..%.9..Je....x.'Q.......
68280 cd 2e 12 aa b8 74 a8 2c 50 94 08 fe ee 78 af c2 b8 33 f1 31 86 b9 b4 3d cc da 33 cc 1c ea 26 2e .....t.,P....x...3.1...=..3...&.
682a0 73 bf 0b 13 64 fc cb e3 68 15 9c b5 65 7b a6 3a 35 09 80 2a 78 38 52 3a e5 3c 70 f5 2c 27 82 b2 s...d...h...e{.:5..*x8R:.<p.,'..
682c0 3c f7 d0 16 24 80 68 c8 40 43 b7 72 04 35 e7 cf 4e df f4 7b c0 71 e5 f4 ad 02 77 4d 03 64 79 5f <...$.h.@C.r.5..N..{.q....wM.dy_
682e0 62 fc a1 1e 3a 25 78 e8 78 90 90 db 09 ad 71 1f 73 c8 e5 6a 2a 6e ef 19 06 dc 28 00 fc a4 15 e0 b...:%x.x.....q.s..j*n....(.....
68300 b4 20 d5 64 c2 37 eb 79 6a b1 d4 25 9d 87 57 4b 4a a0 a0 3a 34 28 9a 33 20 f9 c5 fc f6 9a 0a 5f ...d.7.yj..%..WKJ..:4(.3......._
68320 3c e0 f8 b1 5c 0c bb 65 58 a3 73 76 84 c9 ef 88 d7 ea 77 eb 59 3e dc 37 04 2c 75 b5 bb 28 5f 46 <...\..eX.sv......w.Y>.7.,u..(_F
68340 69 25 d0 8e 51 cb 72 4c 8e fd 5f 1c 16 bc 1e c2 c9 31 56 51 fc 74 e5 dd 7e 31 94 2c da 5a 41 be i%..Q.rL.._......1VQ.t..~1.,.ZA.
68360 e3 a1 6d 91 53 57 03 10 7a a7 01 b6 7c 69 4d 96 b9 65 49 e1 4f 35 c7 05 0f 04 62 24 5b 88 e3 e4 ..m.SW..z...|iM..eI.O5....b$[...
68380 8a 1f cb b6 87 a5 44 18 00 46 80 5d 39 27 f1 e1 9c dd 58 f8 b0 a4 f5 c5 29 4d 0c 88 bf 74 4f 78 ......D..F.]9'....X.....)M...tOx
683a0 11 b8 fe ef 21 80 c9 f3 f7 14 ba 01 a1 3c ec 54 1e 14 4f b9 54 db c7 e9 a1 e3 5d 46 2b 68 9b 4f ....!........<.T..O.T.....]F+h.O
683c0 0d 40 92 ab f6 cb 64 f9 8f e9 a3 f9 60 cf 08 ab 8e 03 ba 0a d1 44 bf 79 e9 3e 7b 8e 42 97 c6 89 .@....d.....`........D.y.>{.B...
683e0 0d 01 1f 8a 00 ab 79 e5 37 ad e5 79 42 3f bd 2a f6 16 d7 01 65 18 15 68 c1 53 b8 4d 95 ec d2 97 ......y.7..yB?.*....e..h.S.M....
68400 90 3b 77 58 fc 44 8d fe d1 e9 73 5e 48 2f f6 75 eb b4 49 1c e9 73 29 3b ee 67 72 e1 ee 48 de af .;wX.D....s^H/.u..I..s);.gr..H..
68420 08 d7 8d dd 67 ca de d3 d7 df a8 13 06 1c d1 c8 91 c4 c0 ef 3d c9 c5 7b 72 df 6a 18 5d d3 e0 d5 ....g...............=..{r.j.]...
68440 1c e9 70 4b 40 7b 87 96 41 a7 3a c3 fb 82 43 d1 74 1c 48 18 1a 94 6f ce b7 de 92 da 7a 64 6e 31 ..pK@{..A.:...C.t.H...o.....zdn1
68460 3e 1e bf 05 9a 79 10 00 26 53 c3 f1 8e 2a 81 a9 81 54 3f 27 3e e5 25 71 4c cd e3 9e 55 cc ee 9c >....y..&S...*...T?'>.%qL...U...
68480 69 73 19 e1 46 a3 27 ae 19 60 3b 2a 71 09 32 c4 6c 8a 59 33 23 80 f5 2c e4 9a fc 51 b5 fe cf 04 is..F.'..`;*q.2.l.Y3#..,...Q....
684a0 80 93 15 77 44 58 88 f9 3c 76 0d 26 23 b0 fd 87 b7 77 69 71 3e 0d 96 c9 27 77 80 36 65 23 d6 f6 ...wDX..<v.&#....wiq>...'w.6e#..
684c0 39 a3 12 8d 84 06 45 63 5d 39 83 90 88 29 1e 31 d8 b8 59 d1 3a 65 6a a5 f7 81 2e 2a ca b9 b0 76 9.....Ec]9...).1..Y.:ej....*...v
684e0 1e e8 46 47 e2 04 e0 3a e0 2f 64 02 a6 78 98 65 f8 34 0f 3f 19 ac 31 8f 50 0d 3d b3 8a fd 34 88 ..FG...:./d..x.e.4.?..1.P.=...4.
68500 9b bd 33 81 89 d1 c6 6e 6c 49 0a c7 03 40 47 7a 69 19 7c 0d c9 03 b2 10 62 27 88 c4 61 06 62 b9 ..3....nlI...@Gzi.|.....b'..a.b.
68520 99 cb 59 54 a3 24 44 e7 e5 c7 d7 85 29 83 06 14 3e 8b 6b 23 f4 6e 0c 6a 90 de a2 13 b2 dc 73 11 ..YT.$D.....)...>.k#.n.j......s.
68540 d0 f9 ba 09 6d 62 60 2c 60 76 34 2e 93 c4 6e 91 c5 3c 8e 94 14 f7 57 c9 c3 97 0c 3c cb de f1 ca ....mb`,`v4...n..<....W....<....
68560 10 b5 73 16 0f 2c fa 8a 7a 29 ce 23 91 c4 72 47 01 18 09 84 1a e8 c0 8b 04 00 3b 6c fc 04 fc ae ..s..,..z).#..rG..........;l....
68580 57 bb cb ee f1 7f d1 b5 91 3c 61 b8 68 bd 65 54 95 72 24 31 2f e1 a1 56 d7 da 1e f2 ae 72 92 6b W........<a.h.eT.r$1/..V.....r.k
685a0 0c 2c d3 c4 d7 42 ad c7 06 f2 c0 a9 58 57 6d 92 85 89 c9 07 e1 b8 3f dc cb 8d 71 3c 3c 53 81 27 .,...B......XWm.......?...q<<S.'
685c0 e8 8d ce df 5e 80 39 35 cc 26 2b 7d 8e 19 b6 aa 32 53 8f 81 ce 7d dc f8 8a 69 36 94 a3 ca 0e a2 ....^.95.&+}....2S...}...i6.....
685e0 d1 8b bd 7c 4d cb 3e 02 89 94 04 51 b0 fe b4 82 3b 24 ec b1 82 34 4a ac 08 db 79 a7 b0 76 15 12 ...|M.>....Q....;$...4J...y..v..
68600 6b af b7 41 cb a5 4c ad 31 f4 88 d1 e1 a0 d4 b8 77 9f 3e bb 40 29 46 7e 43 83 46 7d 57 ef 72 00 k..A..L.1.......w.>.@)F~C.F}W.r.
68620 2d 48 00 a1 f2 77 fb 51 94 a0 e2 c2 0d 51 b8 36 31 c7 61 7a 1f 3c 75 6c cd a6 f1 e0 ed 9f 48 b2 -H...w.Q.....Q.61.az.<ul......H.
68640 16 2e 6e d9 f1 95 33 d7 c3 c5 2c f9 22 40 06 19 d8 86 e3 e2 55 a7 de 54 a4 ea 22 aa ec db 9e 46 ..n...3...,."@......U..T.."....F
68660 4f 13 c8 29 74 48 d6 e6 f8 23 50 cd 2e bd 26 9c 2c 0f 73 a1 33 bf 6d 3a 03 d9 90 b9 28 31 94 21 O..)tH...#P...&.,.s.3.m:....(1.!
68680 96 8d fa e2 79 a9 6f 23 70 76 48 0c d9 c0 6d 5a 54 0b 76 ba d7 c7 c2 7a ef ac 4f 84 e6 75 71 ab ....y.o#pvH...mZT.v....z..O..uq.
686a0 aa 55 d7 5a ec 49 a3 81 b6 7c a9 b9 c0 a1 b4 67 e7 30 e4 23 56 08 6b d3 04 98 1a db 4d 27 f0 2c .U.Z.I...|.....g.0.#V.k.....M'.,
686c0 39 f5 9b 5a c9 16 f8 24 8b ef ef a2 86 78 e9 7a 2a c4 0f 36 90 be b2 8a 2c b8 f0 42 c4 bf a0 6e 9..Z...$.....x.z*..6....,..B...n
686e0 18 f6 5d 53 46 29 5b 10 11 42 c5 1a a7 10 ba 2b d1 a1 9f e0 f1 21 72 06 46 4e 46 45 40 08 4e fa ..]SF)[..B.....+.....!r.FNFE@.N.
68700 bd b9 1a cb ed 61 c2 c3 71 27 e1 5e 75 64 83 b5 52 3f 8a 5c a8 7c ee 8e 83 50 9f 20 b2 9d 50 22 .....a..q'.^ud..R?.\.|...P....P"
68720 5b 10 49 27 65 10 ac 1e 80 44 07 ce 35 d8 82 b7 96 6b a7 e5 b7 c2 b7 ab d8 c0 aa de 67 79 69 05 [.I'e....D..5....k..........gyi.
68740 e1 cf 0d 02 6f 4c b7 98 f1 bd b8 f2 72 91 ee 7d e4 3e 9b ed e7 fe cc ed 99 d0 e1 b4 4f 9d 50 cb ....oL......r..}.>..........O.P.
68760 71 b0 25 06 66 c8 61 6a 53 73 0a 90 36 45 33 44 67 c2 09 b5 5b f6 58 bc ea 0f ff 8f c1 c4 8c 78 q.%.f.ajSs..6E3Dg...[.X........x
68780 17 4d 94 a8 97 89 15 95 d6 b9 9a 92 aa 52 40 3c 77 f5 4a a4 f8 d9 2f 58 d4 4b c9 55 db b0 1b 5b .M...........R@<w.J.../X.K.U...[
687a0 c3 89 f9 74 51 d3 de d8 c7 67 48 04 7b 30 62 e5 f8 8d 48 4e 32 9b 71 00 7e e4 d9 59 24 33 78 6d ...tQ....gH.{0b...HN2.q.~..Y$3xm
687c0 6a 7d d9 6a e2 31 ee 2a f4 de c1 2c 15 7e 9b 61 65 61 34 bc 51 b5 b8 ea 9a 3c 94 2b 90 26 3c 67 j}.j.1.*...,.~.aea4.Q....<.+.&<g
687e0 c5 0a 3c 53 9f 6f 6a 55 24 9a 6c be 6d ac 0c 8f dd 9b fa 1f 6e 91 de 14 ec 5c d2 86 e7 06 8e 0c ..<S.ojU$.l.m.......n....\......
68800 d3 ab 69 20 93 58 f7 09 39 18 b9 42 97 dd 7b 81 51 49 27 c6 14 15 71 d8 a1 f4 ed d6 ee 0d 6a 83 ..i..X..9..B..{.QI'...q.......j.
68820 48 0a f3 19 ea 11 d8 43 f2 12 58 9a d8 d5 f8 cb 77 2e c8 a5 e1 b3 74 a1 9e 43 f1 5a e1 c7 bd ed H......C..X.....w.....t..C.Z....
68840 d6 6d eb 96 d5 25 92 a7 2e 96 e2 d7 a6 90 0e 08 10 32 58 d5 cd 23 0e 7b ee ec 8d 8f d5 65 00 e0 .m...%...........2X..#.{.....e..
68860 0a e2 a4 c1 1e f7 8b 4e ee bd 6c 15 19 92 87 99 7b b0 2b 59 65 3f 29 27 5d 1c e0 49 db 5d d7 a3 .......N..l.....{.+Ye?)']..I.]..
68880 6a 6a 4d 84 ea 59 c5 a5 52 3b fc 48 1f 56 cf 38 b6 7d b7 fe f5 ce 60 39 c9 52 11 c3 3a cf b5 fc jjM..Y..R;.H.V.8.}....`9.R..:...
688a0 f0 7b f8 8e 89 eb b0 12 9a 0f 52 6f f7 ba da b0 9a cf 48 1f a3 81 20 7d f7 b5 2c 2c 36 fe e1 6b .{........Ro......H....}..,,6..k
688c0 8d fa 6f 16 28 b8 bf 7c cc 16 0f 70 2b 5d b3 90 7e c4 fb be a9 83 b5 15 52 a3 04 f6 f4 85 07 51 ..o.(..|...p+]..~.......R......Q
688e0 35 f4 27 0b ee 23 86 e4 fa ca 74 87 21 9d 97 fa 4f 9f 40 0d fc a3 5b c4 59 cb 10 fb 70 54 1c b7 5.'..#....t.!...O.@...[.Y...pT..
68900 16 c8 35 5d f3 a8 ab 3d fb e9 08 c8 ce 07 b9 99 8f e4 f0 81 ad 7c 22 71 8a 7b 9d c1 39 57 ee ab ..5]...=.............|"q.{..9W..
68920 dd b4 a7 7b fa ab 49 88 0a 7c 22 2d fa 5d 8e c2 89 0e 2c d1 3b f2 56 93 b2 9d 68 11 f0 f6 a0 19 ...{..I..|"-.]....,.;.V...h.....
68940 65 08 2b 83 f8 b5 80 fc 35 cf 1f fd 53 f1 20 6b a4 d3 d2 5c 0a 07 d3 62 3b 12 23 91 39 c1 5f 9d e.+.....5...S..k...\...b;.#.9._.
68960 47 26 84 6c bf a1 59 45 a9 4c aa c5 bb 37 22 80 ad 55 c0 13 e7 45 d3 18 c0 2b d8 b2 f6 cc 79 e8 G&.l..YE.L...7"..U...E...+....y.
68980 ba 63 32 92 77 e8 b9 01 4c bb 05 9a d5 68 d4 b7 56 bd b0 b9 de 0d 6e a6 d1 b2 ed d4 00 26 50 75 .c2.w...L....h..V.....n......&Pu
689a0 cc 38 e4 ff 9d 88 75 9c 1b a8 0c 89 08 8e 10 30 c9 4f 58 71 a5 aa 2d 16 14 20 33 67 0f d0 a7 58 .8....u........0.OXq..-...3g...X
689c0 bc 72 6f e6 57 19 4b 5c 6c 26 44 3d 57 04 48 ea 10 d6 3a 01 28 4e ec f2 c3 56 59 11 50 32 a9 98 .ro.W.K\l&D=W.H...:.(N...VY.P2..
689e0 b0 81 2e 77 d7 d0 32 6c 56 4f 44 be bf 45 40 dd 6b 39 e8 9e 21 c5 0c d9 73 2f c1 a3 b8 85 3b 22 ...w..2lVOD..E@.k9..!...s/....;"
68a00 42 a9 18 ec 09 2f cd fe fd d8 34 f9 2e 06 ab 6c e4 77 f2 5a d1 57 42 3c c7 83 65 9e 58 91 eb 28 B..../....4....l.w.Z.WB<..e.X..(
68a20 1f 09 1c 77 55 43 34 82 1c 4e 88 39 47 f4 55 8f 56 63 2e e8 55 fe b8 ad d4 0e 2a 4d d0 9a 4c 0c ...wUC4..N.9G.U.Vc..U.....*M..L.
68a40 95 cd c8 5d 57 a2 e7 7c 2a f4 68 ea 02 41 e2 64 e7 01 a8 3e d9 73 44 a0 b1 17 fd e7 34 e8 45 bc ...]W..|*.h..A.d...>.sD.....4.E.
68a60 63 2a c5 28 59 bf 9c 20 45 64 54 c8 51 31 48 88 01 3f ba e3 a2 71 92 55 50 6a 79 b1 05 13 9a fb c*.(Y...EdT.Q1H..?...q.UPjy.....
68a80 0b 42 28 01 37 83 64 27 12 c6 b0 10 84 17 e5 11 86 b3 63 52 41 a6 a8 52 1a af 00 04 ac 1d 8a 8c .B(.7.d'..........cRA..R........
68aa0 48 b5 f4 50 93 f7 42 60 ee 08 af f1 a0 3e 11 9d 69 39 b4 cc 32 a4 92 15 b7 7d ca c7 14 d3 75 d6 H..P..B`.....>..i9..2....}....u.
68ac0 39 b5 0d 84 0d 5f 56 b2 15 33 19 f9 69 82 4b fa af 5e f8 a7 37 09 fb aa 64 f2 c9 f5 f1 07 53 33 9...._V..3..i.K..^..7...d.....S3
68ae0 7a b9 e6 ac 1a ad cf 41 65 36 00 29 4a d4 fc 77 a2 59 05 75 e3 21 52 f2 39 dd ef f6 6b 8b 2f 01 z......Ae6.)J..w.Y.u.!R.9...k./.
68b00 a4 76 e8 af 66 f2 d6 b0 21 18 e3 c8 53 53 c1 d5 8b cc 0f 5a 99 cf b3 ba 15 f7 fa 92 e0 bb 29 9f .v..f...!...SS.....Z..........).
68b20 e8 2f e7 80 9d 11 76 1d de 4f 71 6c 4d 63 4a 8f b6 54 cb 37 a9 48 5c 57 ca a0 4c f4 bc 9f 0b 58 ./....v..OqlMcJ..T.7.H\W..L....X
68b40 ec 19 27 a7 40 de 9f f1 59 55 1c de 8f 0f 87 97 56 4c d9 b9 d5 0f 2a d4 74 f3 c2 1a b2 a4 58 68 ..'.@...YU......VL....*.t.....Xh
68b60 a8 46 aa 22 82 35 52 36 9b 5a e5 2b d7 1e 4e 2a 29 c2 b9 c5 d9 82 69 b9 28 b8 fe 34 0c 0a f7 84 .F.".5R6.Z.+..N*).....i.(..4....
68b80 06 50 bb a0 ad 9f 7d 73 0b d2 8b e1 74 c6 9b c0 f1 f2 19 b8 3f 40 59 e1 29 2d 4a a1 65 a1 f9 ab .P....}s....t.......?@Y.)-J.e...
68ba0 cd 9b eb da 30 26 a7 16 36 2f 7a bb 94 9c 25 06 4d 5a 8d e4 11 82 a3 4c d5 74 90 d6 4f e3 3a 8a ....0&..6/z...%.MZ.....L.t..O.:.
68bc0 2e 1f 15 47 bf 0b 00 d3 75 d6 69 ad 90 1d ee a5 51 8b 68 5f 39 4d de 2b a4 ae 1c c0 a2 b4 ce 65 ...G....u.i.....Q.h_9M.+.......e
68be0 d0 a6 90 b8 90 52 8c 8c 27 63 31 76 81 88 21 7a 67 75 f1 cf 5b 94 dc 3f fc 69 73 9e 21 36 9e 59 .....R..'c1v..!zgu..[..?.is.!6.Y
68c00 76 1f 9a 3c d0 76 d9 2e a4 23 07 2c da c5 df 4c dc 41 fa ef 18 4c 21 ce b8 f4 73 23 96 2b 78 b9 v..<.v...#.,...L.A...L!...s#.+x.
68c20 5f 23 f0 a8 6d b6 ba fa 5a 53 aa ea 5d e3 c6 21 f4 d0 88 0e 04 c2 9f f4 28 4a 42 fb 87 23 f3 91 _#..m...ZS..]..!........(JB..#..
68c40 5e 82 3d 84 ec f0 dc a9 0c 9d b8 ee 85 3b 58 c4 b8 19 34 28 01 47 a2 d6 3b cf fd fb 18 fd 8d 78 ^.=..........;X...4(.G..;......x
68c60 11 44 7f 04 6d aa 66 57 32 bc 1a 39 c4 97 ba 9e 74 6c 9f 5c 60 a5 b6 92 f3 89 72 27 d4 f0 18 aa .D..m.fW2..9....tl.\`.....r'....
68c80 cd f2 b9 8f 30 8e d1 f6 a0 ac 69 a0 67 b3 5d 90 88 90 ec 66 76 74 f7 c6 a7 53 8f 47 fb 98 e6 14 ....0.....i.g.]....fvt...S.G....
68ca0 c8 a1 1b 36 e2 58 bc b8 5d 87 ab f7 3c 16 63 b9 db 13 55 16 9e 88 f3 a3 2f 5c 03 5c 97 0d b2 e0 ...6.X..]...<.c...U...../\.\....
68cc0 61 9d 73 83 7d 4b 89 41 fd 60 b7 23 91 0f 5b e3 46 93 9d 69 61 38 cb a5 1f 18 f0 8b 60 5a 4d 92 a.s.}K.A.`.#..[.F..ia8......`ZM.
68ce0 a6 4b c4 dd 3d 01 5b c8 8c 3d 69 76 ed 07 ac 3c 86 fb af ef 11 13 d9 ad 63 2c 1b b2 8f bc b0 97 .K..=.[..=iv...<........c,......
68d00 97 e4 b8 c7 f3 05 5a d1 c0 68 e5 3a fe 3f 78 e5 ad ca 5d 10 bf 1a 8b 82 4a 10 8c 4a f0 f3 4e db ......Z..h.:.?x...].....J..J..N.
68d20 3f 43 0d 35 60 19 39 f1 9b 5e 65 f5 fc 97 ce 79 42 ee 57 cb c1 2b 49 42 ee 7e 00 f1 b3 ba 2e d3 ?C.5`.9..^e....yB.W..+IB.~......
68d40 fc d0 26 14 dc 71 7f 1a 2c 10 4c ef 91 c6 ef 7d 60 d8 2f 16 19 34 2d 78 88 62 bd c1 30 21 fc 1d ..&..q..,.L....}`./..4-x.b..0!..
68d60 10 11 8d 47 5a 51 83 52 fb 56 26 57 f8 b7 fb 98 c8 8f 79 f8 ef ce d6 86 5a c0 b6 6e 8d 09 b8 1d ...GZQ.R.V&W......y.....Z..n....
68d80 74 12 91 8b a2 e2 ea e0 31 e4 e6 fc c5 5f b8 b8 da 41 aa 59 17 b3 ca 67 40 a7 7c 2b dc ee 20 3e t.......1...._...A.Y...g@.|+...>
68da0 3a e8 1a d2 10 2e c7 3d e8 ef 03 05 53 d7 05 f8 72 27 f4 a0 54 c8 75 4f ba 32 44 54 09 9b 30 80 :......=....S...r'..T.uO.2DT..0.
68dc0 b1 22 f6 a3 a5 85 e2 5f e2 37 0d 32 63 e6 98 5a 0b 27 4e c6 f7 0e 78 7d 0c 82 72 87 e7 73 8e f9 ."....._.7.2c..Z.'N...x}..r..s..
68de0 95 73 2a 67 21 8f 2e d5 d2 ad 09 a7 52 20 9f 31 a1 f3 1e ca 81 fa 14 21 92 bc ad 38 d4 c0 e2 4c .s*g!.......R..1.......!...8...L
68e00 e1 d9 3e de 51 af c2 ed 30 15 47 fc 51 6c bd 08 74 2d 22 17 2d 7c d4 75 a7 e9 3f 3f e0 7f b3 09 ..>.Q...0.G.Ql..t-".-|.u..??....
68e20 ae f1 c9 1b 2c ad 79 e0 a9 73 d7 27 22 f9 df b9 17 05 ec 99 c6 11 94 ef 01 61 ac 48 80 8b 8f d9 ....,.y..s.'"............a.H....
68e40 b9 f6 65 a7 18 1a 23 21 e5 75 f8 e2 7f 60 30 ee 27 eb f3 94 c5 4d 8b b5 96 bf c8 05 bf 22 4a 4f ..e...#!.u...`0.'....M......."JO
68e60 54 ed 6c 30 ab 7d dd 5d 9e a9 12 bd df 56 69 e5 55 c4 5f 66 b2 d0 e0 07 3b fb 30 ec c0 ba 5a 22 T.l0.}.].....Vi.U._f....;.0...Z"
68e80 7a 41 cf 53 6d 1e 2f 16 7f d8 1a f4 55 27 b3 62 df e2 d9 c8 e9 d0 da 6f ce 87 3f f9 f5 79 9b 1b zA.Sm./.....U'.b.......o..?..y..
68ea0 09 d0 94 36 81 eb ac 1e ea 84 32 6f cf 0a cb 6d f7 eb 09 8b 9e 5c ac 92 8d c8 a5 d9 7c 3f ca 91 ...6......2o...m.....\......|?..
68ec0 38 e0 9b 4c 8d b7 0d 27 c6 e6 ed 41 09 7b 94 0f 83 de eb 57 11 fa 91 9c 6b 25 05 7f 3e 0d b1 cb 8..L...'...A.{.....W....k%..>...
68ee0 df d8 66 10 79 00 e1 bf 55 3e b5 07 4b f2 f2 3a a6 17 4c 16 63 9d 46 3c 5c 1b a3 06 5c b9 83 91 ..f.y...U>..K..:..L.c.F<\...\...
68f00 ce e8 c7 3d 2a ae 19 1b f6 c2 a9 14 d3 24 7b de e6 07 7b 23 86 bb f8 13 52 98 b3 df 61 ad 71 a0 ...=*........${...{#....R...a.q.
68f20 2f 2e 61 f2 37 39 c1 e1 c8 8d e3 c2 db 34 b7 53 5c 72 60 46 7a e9 a7 91 56 74 f3 be ac 70 a3 61 /.a.79.......4.S\r`Fz...Vt...p.a
68f40 e4 a2 ab 79 00 b2 e3 46 91 a3 a4 16 81 a0 cb 55 7a f1 f5 9b c9 0d 44 97 53 2e c5 86 a2 56 ce 11 ...y...F.......Uz.....D.S....V..
68f60 fc 7f 37 33 68 08 33 ff 5d 58 d8 00 d9 9e 6a b3 d1 65 ec b9 7d 1d 57 36 fa 31 15 77 43 af a5 6d ..73h.3.]X....j..e..}.W6.1.wC..m
68f80 e5 08 10 3d 0d d9 3d e8 81 3c 54 d5 d4 0b b7 41 ea 00 56 2e b1 74 aa 14 93 d3 c4 29 d9 7a ea b5 ...=..=..<T....A..V..t.....).z..
68fa0 15 77 db c3 17 64 44 42 56 e5 39 b5 db be 69 b7 5a 9c b3 eb 64 19 a6 34 48 7f 05 63 4f fa e1 b1 .w...dDBV.9...i.Z...d..4H..cO...
68fc0 17 9d 61 ed 4a e7 f0 05 26 a8 59 2b e9 e5 4a 33 d2 8f 88 37 ba 3b 58 0a 1d 08 29 03 17 fd 83 db ..a.J...&.Y+..J3...7.;X...).....
68fe0 55 46 e3 82 54 36 41 ad 27 07 cc b5 e2 a3 e1 03 2b bb 1e c6 c1 c4 82 d1 ef 22 85 25 92 bd 3b f7 UF..T6A.'.......+........".%..;.
69000 ab d1 0f 0e f5 d5 8e bc 88 33 33 f6 d7 53 1d e5 dd 36 bb 70 cc 90 2d 2a 0a 4d 72 37 2e f7 4d c7 .........33..S...6.p..-*.Mr7..M.
69020 28 70 b8 48 73 3a c3 e7 3b 47 f1 cb df 9b c6 26 19 78 77 77 cb a1 e3 bb ae b3 c5 76 77 4e 5e 87 (p.Hs:..;G.....&.xww.......vwN^.
69040 80 ea ca 48 25 03 f8 13 8c bc 92 c9 a7 cb a0 0c 57 30 82 3d d2 f0 a1 1f 13 a8 de a4 66 5b d6 76 ...H%...........W0.=........f[.v
69060 aa 51 04 74 dc 7c 8b ae 9e 32 66 a4 e7 83 b5 2e 17 1f f9 18 69 3f cd 04 15 68 30 c0 0f f4 b1 bd .Q.t.|...2f.........i?...h0.....
69080 a5 6c d8 e9 2d c9 bf cc 29 f4 23 de 4d c0 0c 3a 8f 21 b4 29 89 04 e4 99 f5 e0 71 c7 85 76 84 d0 .l..-...).#.M..:.!.)......q..v..
690a0 e2 ef 8d 56 73 6c 5e 6b 49 57 f7 8e e1 61 6c 51 dc 11 c5 bb e6 c6 ed 55 17 95 d7 b3 db e6 27 b0 ...Vsl^kIW...alQ.......U......'.
690c0 16 4b a8 23 5c 7e 41 64 d9 aa e9 29 de e4 49 35 97 df 96 b8 dd 83 65 83 d3 cd 9c 14 df f1 b5 7e .K.#\~Ad...)..I5......e........~
690e0 4e 69 fe d0 fa 4b 15 84 ab 09 a2 1d ea a8 aa cf e0 21 73 ba 45 91 65 5c 98 a0 d3 59 58 3a 1d e1 Ni...K...........!s.E.e\...YX:..
69100 5f a7 69 8e d0 57 f3 fc bb c9 dd 6c df 1c 1f 19 25 05 5f fa 81 85 f4 7f 1c 5b 1c e5 be c5 9b b3 _.i..W.....l....%._......[......
69120 8b b5 3a 21 b8 c7 58 7b 44 56 c8 c1 f0 ad ef 3a 77 47 4b 55 41 48 86 8a 72 c6 87 c5 07 0f fc d9 ..:!..X{DV.....:wGKUAH..r.......
69140 cd 9d 85 7b 21 c6 61 2f 00 00 00 00 00 00 32 11 00 00 00 00 00 00 4c 5a 49 50 01 0c 00 83 ff fb ...{!.a/......2.......LZIP......
69160 ff ff c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 24 00 00 00 00 00 00 00 4c 5a 49 50 01 8e ..................$.......LZIP..
69180 00 10 1c c8 a6 49 2d 9c bd d5 85 be cc 1a 81 7a d7 1a c8 a1 72 85 7a e1 35 9d a2 fd de c8 f3 90 .....I-........z....r.z.5.......
691a0 69 f6 f4 d4 fb d2 f0 18 db ac 14 28 f2 27 60 22 e8 5f 14 7d fa 34 25 fc 28 03 d5 ee 96 9e 00 53 i..........(.'`"._.}.4%.(......S
691c0 3f 9b 1f 0e 30 82 fb b2 ca 67 4c d9 82 65 58 07 0c 23 3c 49 f3 66 4a 1b 69 0a 00 e3 0a a1 6a f8 ?...0....gL..eX..#<I.fJ.i.....j.
691e0 9d a7 3b ea 71 64 2b 5a 70 34 3c 1c 8d 78 26 45 80 97 c0 27 a6 ef d4 64 c3 6b 12 1d 49 45 45 33 ..;.qd+Zp4<..x&E...'...d.k..IEE3
69200 9a 25 f1 42 36 3a 04 10 74 2e eb 56 80 77 f3 af 4a 30 f8 f8 5f 37 11 e4 95 a6 71 46 ef 71 b0 1e .%.B6:..t..V.w..J0.._7....qF.q..
69220 37 62 ab 46 ad dc e5 85 66 8b 38 8b f2 2d 18 2a f2 f1 57 f6 05 87 a6 87 4b 53 01 52 94 8f 8c 8f 7b.F....f.8..-.*..W.....KS.R....
69240 c6 f3 06 b8 f9 bc d3 16 bd a6 81 84 72 af b4 ed 07 48 28 46 a2 4d f1 44 58 5b c4 ed 97 9b 24 65 ............r....H(F.M.DX[....$e
69260 2d 8f 37 78 30 b8 97 d0 94 16 1a db ed ad 9c 2d ea 03 6e a9 7a d2 dc a4 36 34 a8 e2 49 3b 4d dd -.7x0..........-..n.z...64..I;M.
69280 bd 91 7f ac e0 45 01 ba a6 90 c0 d5 e9 23 55 3c ee f7 2d 9c 27 9b 3c 14 8b 3a bc 58 4a 69 63 b6 .....E.......#U<..-.'.<..:.XJic.
692a0 69 d5 37 08 4f 54 5b 49 a3 00 c3 11 f3 50 52 7a 8c 3a bb f8 24 e3 3c 39 05 29 56 f4 c8 6b d7 f1 i.7.OT[I.....PRz.:..$.<9.)V..k..
692c0 a2 ad 9c 43 f5 8f cc bd dd c4 37 49 52 a4 23 e6 96 f5 97 cc 64 58 ad fb 0d e1 13 47 f2 d3 61 33 ...C......7IR.#.....dX.....G..a3
692e0 06 d5 5a d4 b3 d6 06 ac e5 b9 4e dd 43 43 15 24 cf 5a d8 54 89 74 3c b8 ef d8 8e 70 99 31 a1 54 ..Z.......N.CC.$.Z.T.t<....p.1.T
69300 1e 4c 3c 22 e4 87 71 2e a3 ce 83 a9 12 ec 88 52 f5 99 b0 46 0d e3 25 21 0f c7 47 d4 2c 95 51 98 .L<"..q........R...F..%!..G.,.Q.
69320 1f 0f 57 f9 58 2e 54 d3 1f fa 2b ad be 62 19 f4 68 e9 60 49 df 2f cd c3 3d 12 52 48 0e 82 c6 db ..W.X.T...+..b..h.`I./..=.RH....
69340 f1 bd 9c 54 be 21 29 5a c5 6a 84 30 01 e3 b9 74 61 95 a1 47 5b 0c c2 d5 59 94 64 66 41 e0 1b 77 ...T.!)Z.j.0...ta..G[...Y.dfA..w
69360 de 55 7e 64 1f 79 4a 4d 29 93 97 0a ea 63 c5 d0 33 a9 08 a7 90 82 3d d2 45 c4 ae c8 d5 39 88 52 .U~d.yJM)....c..3.....=.E....9.R
69380 2a 1b 2b cc 9c 47 77 d1 55 0f b4 05 14 22 d9 ef d8 b6 62 4c 61 96 cc 6e 31 96 09 1a c7 7f 5c 56 *.+..Gw.U...."....bLa..n1.....\V
693a0 c4 51 4d e2 49 4c 49 22 18 98 54 f0 4f d7 65 61 aa 5b e3 83 62 73 84 1b 98 b5 cd d4 30 99 07 8a .QM.ILI"..T.O.ea.[..bs......0...
693c0 99 07 9c ce d2 bb 54 c8 52 cd 8e df 00 3e 3e 04 6b 9c 83 a3 91 a3 59 a4 7e 36 18 20 d0 7c 4a 87 ......T.R....>>.k.....Y.~6...|J.
693e0 00 55 d3 be 14 5b 68 9d 28 d0 c9 c4 fe 1d 70 d5 f5 a1 7d 0a 18 1a 1c ee 86 de c2 66 71 16 6c 95 .U...[h.(.....p...}........fq.l.
69400 d2 3a 51 f8 81 44 e4 a1 0b 8e b4 c7 96 ec 36 37 39 07 a6 31 51 e6 f6 8a af b8 49 2b ed d3 79 41 .:Q..D........679..1Q.....I+..yA
69420 0d 25 a5 f2 36 c5 b1 f8 e3 8c 2c 4a 0d a6 b6 01 77 28 0d ff 00 c3 16 9b 6f ea 7d 45 74 6f 7b e4 .%..6.....,J....w(......o.}Eto{.
69440 aa 7e 03 f9 ed 1a bc 54 49 48 7e 83 37 bc 76 c3 e6 d2 87 ef 75 65 2d ba a5 86 fd 50 c3 73 cd c5 .~.....TIH~.7.v.....ue-....P.s..
69460 a0 e3 85 58 51 fa 01 79 2d 5e 09 7e 6b 91 54 00 fb f2 cb 20 c9 76 98 43 3a 09 f2 bd 5d 8b 71 5d ...XQ..y-^.~k.T......v.C:...].q]
69480 b3 bf 81 be d5 0c 40 9f e1 a8 3e 30 a8 64 fc f1 06 eb f9 e5 70 86 f6 f1 2f b5 d6 e1 75 83 32 51 ......@...>0.d......p.../...u.2Q
694a0 78 33 70 4d dc 1d 81 be 55 04 c2 0e 25 85 27 ea 98 a4 3b d5 73 8e f5 9a c0 ea 71 38 ec f8 49 5e x3pM....U...%.'...;.s.....q8..I^
694c0 9d 62 39 86 f1 7c e8 d4 1a dd 2d 55 6a ee 14 48 1d 98 42 e0 c8 4d f2 13 3f ba 1b 40 ae 46 de f8 .b9..|....-Uj..H..B..M..?..@.F..
694e0 54 12 52 c7 9a 7f af 96 02 63 40 08 79 53 20 88 91 8a d9 31 42 4b 34 24 03 d7 dc 6b 85 f6 c3 ad T.R......c@.yS.....1BK4$...k....
69500 b9 b9 ae 85 45 8e 3f 84 5a 10 11 28 10 00 56 74 3f ae 5f 0c ab 8c 38 99 3e 88 f5 f5 a7 17 b2 03 ....E.?.Z..(..Vt?._...8.>.......
69520 dd f3 a2 c6 21 50 ee 41 a6 2b 84 21 9e f1 fc 9c cc 5a c9 97 c8 45 16 64 cb 0a 23 57 a1 8c 99 ef ....!P.A.+.!.....Z...E.d..#W....
69540 14 cf 8b 50 8e c2 76 a4 da 13 f4 d8 10 59 b5 e2 1e 80 16 58 aa e9 e5 5b e0 bc 5c a5 7a 67 54 e5 ...P..v......Y.....X...[..\.zgT.
69560 37 93 29 1e 05 86 cd a1 b8 97 5f 29 e4 bd 98 69 43 41 8f bd 3d 57 8d de 42 81 1e 8a 09 c0 68 a3 7.)......._)...iCA..=W..B.....h.
69580 78 03 6b 33 4f ee e5 11 0f 45 09 36 58 2d f8 68 72 b0 d1 4b 26 a8 9c 7c 10 c4 b3 8d 25 ed 03 19 x.k3O....E.6X-.hr..K&..|....%...
695a0 93 b0 b0 96 95 1c 19 35 d9 e7 e7 44 ec 60 b0 c1 ac 6c 8a e1 9f 66 6a 1e 11 b1 ca 02 d4 ef de 27 .......5...D.`...l...fj........'
695c0 a1 ff b0 0f f1 fe 68 3c 51 83 d4 01 7f 2c 93 5d 62 02 86 ce 14 fb c8 4f 46 1f eb 8a 00 31 b0 c2 ......h<Q....,.]b......OF....1..
695e0 e8 2f 63 81 3a 29 f7 69 c3 ac 6c 22 f2 60 e8 f2 7a cc 91 91 62 81 8b e8 9e 92 c2 5f 61 4c 9f 48 ./c.:).i..l".`..z...b......_aL.H
69600 ec e2 fb 1f da 08 7f 2a 30 c8 74 fb f1 ae 3e dd 2e 58 53 b3 1b bd 7e 75 46 e0 30 c0 ef 51 4c 9a .......*0.t...>..XS...~uF.0..QL.
69620 3d 02 f3 44 b5 e8 73 01 e0 99 56 2f 1d 42 83 11 4a 31 8f 30 07 87 03 9a 2e a2 93 4f 64 74 86 6d =..D..s...V/.B..J1.0.......Odt.m
69640 29 c7 26 02 21 fa e5 f2 84 ea 00 32 d4 e2 82 f2 4e 75 af 2e 67 96 b7 54 a6 d6 d0 5d 6d 39 78 cc ).&.!......2....Nu..g..T...]m9x.
69660 0b 78 92 ad 2a 04 ac c0 41 3b 72 c6 ca 08 68 0a 8f 98 8d 86 16 ed 82 ad b9 55 f2 f7 62 5d 5b 94 .x..*...A;r...h..........U..b][.
69680 f8 6a e4 c0 7e 6d 94 3b dd f0 4b fa 3a a9 fd 0f fe 46 c9 7b 29 29 56 ea f3 2c 21 77 58 82 d9 4e .j..~m.;..K.:....F.{))V..,!wX..N
696a0 b5 2c 08 7a 18 92 f0 9c 4e 47 e7 d3 70 b2 e1 27 1e bb 9d 0d ea 64 6a 4a 10 75 f5 c5 2e b2 26 9f .,.z....NG..p..'.....djJ.u....&.
696c0 26 77 a1 f2 26 f0 4c 49 31 ea 46 cf df 4e 73 6a 5f ea 4a dc 29 75 d8 6b 6a 4e a6 be 48 89 96 d3 &w..&.LI1.F..Nsj_.J.)u.kjN..H...
696e0 5a 4a b2 00 15 b9 a2 ef 4e b8 ec b0 59 46 6a 84 36 89 cd 30 ce 42 19 8f 6d 8c 4c 7f a2 0f 5b 2a ZJ......N...YFj.6..0.B..m.L...[*
69700 ab fd 9c 83 0d c7 f6 4f d6 03 47 64 41 c3 c4 0f f6 3c 74 b4 be 6b 59 f9 a7 5d 33 0d 3e 41 00 f1 .......O..GdA....<t..kY..]3.>A..
69720 52 16 52 98 ed c4 d9 c9 21 29 a3 8b 02 d7 1d fc 7d 1d c0 22 71 80 92 4c 5f a5 f6 e9 9c f0 9c 57 R.R.....!)......}.."q..L_......W
69740 4e 01 54 17 24 fc f3 83 62 fd 7e 68 8a cd 26 33 3d 2d fb 5a 99 98 cb 5d 51 d5 67 03 da c9 62 f0 N.T.$...b.~h..&3=-.Z...]Q.g...b.
69760 0b e3 0c 06 64 9c ff 3c ed 53 91 d2 2e 08 28 9b 86 08 5d c5 49 ba 68 7a e5 eb c5 d3 da 23 0c 0e ....d..<.S....(...].I.hz.....#..
69780 b1 dd d2 e0 eb 8e 5f 40 3a 3c ea 8c c3 f8 80 9e ac 06 7d 0c 65 8f 86 86 38 0f de b7 bc b0 74 78 ......_@:<........}.e...8.....tx
697a0 df 13 d1 6a 74 b2 d5 45 cb ab c2 6e e3 48 94 a1 62 df 28 85 2f f7 48 0e ee 8b 52 30 b5 86 5a 94 ...jt..E...n.H..b.(./.H...R0..Z.
697c0 dd 88 fe 69 46 98 11 3d fc d3 e4 9c 1d 64 8e b4 0b e7 83 6f e3 10 9d 0d 1e be 77 4a 45 f4 1b 95 ...iF..=.....d.....o......wJE...
697e0 b1 4e 78 04 5d 2c 47 17 38 23 8a 1a 5b cf 8e 64 03 21 08 1d 02 99 7e f0 f0 30 09 da 32 74 f4 00 .Nx.],G.8#..[..d.!....~..0..2t..
69800 50 01 27 99 18 9d fb c6 f4 f7 d8 72 24 e9 2b ec 5b 86 d4 fc cc 70 60 e0 bb 62 f2 40 4d 67 de 74 P.'........r$.+.[....p`..b.@Mg.t
69820 25 d8 79 40 80 ed 7d 6d 63 c7 31 23 8e 5e f0 fd 04 64 e4 9f 5c 26 8d 83 a1 87 df 33 e7 dd 5e 25 %.y@..}mc.1#.^...d..\&.....3..^%
69840 88 4a 76 3b 94 fd 5c 2f 80 6b af 2d 4a 3f ed a7 8b d2 df ae 03 dd 3b ba cc ff 32 72 bc 4c 45 ad .Jv;..\/.k.-J?........;...2r.LE.
69860 21 be 69 a9 94 4a 1a 8e 73 69 80 a2 51 64 dd 06 db 26 05 56 55 a7 26 d0 cc 27 af 08 69 cc 46 4b !.i..J..si..Qd...&.VU.&..'..i.FK
69880 90 df b1 94 e0 aa a1 bc 88 54 fd c7 1a 76 20 9b 3e 1c 07 4c 9b 01 f3 78 89 34 fc f6 06 e5 38 de .........T...v..>..L...x.4....8.
698a0 67 54 2d d1 31 6e 5a 85 71 91 8f cc cc 78 52 0e 8f da e1 8d 5d 86 3a b0 36 22 96 75 86 b7 c3 6a gT-.1nZ.q....xR.....].:.6".u...j
698c0 f3 b7 18 46 84 16 2a b3 93 67 c1 f0 05 eb c9 f6 69 bf 2c 1d c6 9d dc 62 c4 73 19 a1 93 da 0b 19 ...F..*..g......i.,....b.s......
698e0 6b 25 5a 9f 82 16 2c 2a a9 15 01 49 61 52 cf fb 8e 7b fc 0e 2a eb 63 c7 85 c3 0c 44 c9 13 ed 59 k%Z...,*...IaR...{..*.c....D...Y
69900 53 d4 fa 76 c5 04 64 29 4e df 16 2a 3e 88 05 90 26 8b c7 97 be f7 e9 8a 83 89 24 0b e4 08 f8 16 S..v..d)N..*>...&.........$.....
69920 c5 33 45 c3 d2 a3 35 fc 1a d0 c9 58 c2 e7 69 bb 61 91 bb bf a8 79 90 3e d6 cd 07 94 b9 82 c4 47 .3E...5....X..i.a....y.>.......G
69940 14 da 2d 27 98 e0 93 0b b8 fc 30 ef d6 bc 0e 6a 4a 20 24 da ad 0e 14 d3 1b ed 58 4a ef 89 a9 85 ..-'......0....jJ.$.......XJ....
69960 65 51 b4 02 92 9a f8 f1 d8 26 95 cc 82 26 ea f2 e2 c8 f3 a7 ef 8c bc 87 79 e9 8e 5f 0b 19 1d 06 eQ.......&...&..........y.._....
69980 65 ca 27 c4 29 87 43 c7 9e 8e 17 2a d9 54 71 f8 7b 1d 7c 09 0b b7 05 f2 ae 61 f1 09 c1 59 8f 23 e.'.).C....*.Tq.{.|......a...Y.#
699a0 9b 37 67 8e 74 c6 ff 77 db 19 79 d3 78 13 94 17 f9 f1 b9 82 82 6d 20 3c 6f a4 e4 25 79 2e 89 86 .7g.t..w..y.x........m.<o..%y...
699c0 ab ac e3 b3 35 35 f2 95 d4 e5 19 b0 fb 15 c4 cc ac b9 77 50 c3 c8 07 b7 08 4e f8 c1 5b b1 5d 7a ....55............wP.....N..[.]z
699e0 e0 bb 62 36 3a fb 07 84 a2 aa 7d 89 32 02 a1 9a b2 ed b1 ba 1b b0 63 e8 6a c1 7c 84 13 ee 03 a6 ..b6:.....}.2.........c.j.|.....
69a00 5d 6e a4 fb e9 14 a4 e0 34 77 35 d0 66 cc 4a ab 7b 0b d8 66 21 44 3c 3d 7e d0 84 a0 fc f4 31 f6 ]n......4w5.f.J.{..f!D<=~.....1.
69a20 7e 84 72 6d 65 39 91 30 92 42 7c 10 76 53 cb 09 bd 0a 98 72 03 c1 0c e2 08 d2 9e e1 07 76 19 1a ~.rme9.0.B|.vS.....r.........v..
69a40 80 cc 81 98 86 92 44 34 98 93 c9 8a 10 24 24 1c bf 24 bb 47 2f 8c 1b 4c de ba 8a 7e 05 c0 9c 33 ......D4.....$$..$.G/..L...~...3
69a60 62 df aa 8b 91 fe 08 18 d0 d4 62 ad 4f fb 8b 4f 69 1b 0f 3e 12 55 32 b4 00 d0 36 d8 84 e6 57 88 b.........b.O..Oi..>.U2...6...W.
69a80 e1 71 44 f9 c4 3a 4e ff 35 04 8a 46 7d de a0 df c6 95 32 6d 1b a7 2c 06 3a 61 86 72 a2 70 03 9e .qD..:N.5..F}.....2m..,.:a.r.p..
69aa0 78 a2 37 9e bf 35 e0 13 d9 99 06 d5 fc 1d 18 04 e1 ca ba 4c bd 73 fa 1a ec a6 82 0c 4d 60 39 80 x.7..5.............L.s......M`9.
69ac0 a5 a5 7c 61 f1 93 2c b5 37 cb 5d ba 58 82 03 da 4f 73 23 ad 9c a5 ce 4c b1 a7 de ca 82 e7 71 b1 ..|a..,.7.].X...Os#....L......q.
69ae0 a3 46 a7 3b 25 cb c0 83 7b fe 4b a1 4b fb ef 8b d7 a7 d0 be 54 df a2 ad 51 ae 8e 2e ca 80 6b 6a .F.;%...{.K.K.......T...Q.....kj
69b00 ca b9 56 03 4b 0b 44 1e f5 e2 02 d3 6b 13 e3 01 58 b2 5c ca f5 cf 66 91 de 90 53 22 5f b4 03 a2 ..V.K.D.....k...X.\...f...S"_...
69b20 70 a9 cb 42 8d 53 67 2b 3d 43 3b 5f 55 18 da 2b fa b2 c2 e3 e2 79 d9 0b e1 ba 6d f0 44 c8 57 27 p..B.Sg+=C;_U..+.....y....m.D.W'
69b40 92 9d 34 90 6b 34 51 e8 1e b8 df 28 43 59 93 17 f4 35 dd d6 21 73 be 47 2d 2e b3 e8 5b e0 95 65 ..4.k4Q....(CY...5..!s.G-...[..e
69b60 d0 df 5b 73 7e 77 6e aa ea ef 81 1f 4d ff e2 0b 2e 8e fa 44 b6 04 d9 69 8a f9 fb 88 df 2c 65 01 ..[s~wn.....M......D...i.....,e.
69b80 29 24 d3 68 c7 71 9b 8c ff 6e 49 58 59 b8 fa c8 2b 82 46 c6 2c fd b2 38 b4 8a 47 13 99 f1 3e 80 )$.h.q...nIXY...+.F.,..8..G...>.
69ba0 99 fc 6c 33 57 c1 27 75 5d 2c 87 cd 0b 0b 42 54 c5 5c 50 01 94 01 6a cf c1 a8 b6 46 8c 81 66 b4 ..l3W.'u],....BT.\P...j....F..f.
69bc0 a9 13 c4 d3 6c 65 99 47 72 3c f1 ed 8c e9 03 d8 95 8e 07 f5 32 33 26 a8 9f 34 38 52 3a a8 94 15 ....le.Gr<..........23&..48R:...
69be0 79 32 95 45 72 2f d6 f8 a2 17 9c cc 18 3a b0 da 33 a2 14 8a a2 7f 63 99 5f 95 85 62 8f 2c c8 8c y2.Er/.......:..3.....c._..b.,..
69c00 be 8a 7b 28 9d 12 51 fa fa 99 12 1a 6b 93 24 81 9a a1 55 88 40 a6 3d 9c 23 c4 eb 31 c2 6d 33 f9 ..{(..Q.....k.$...U.@.=.#..1.m3.
69c20 6f c1 ab a7 52 c4 7c 1d f0 65 b3 f3 fe 1c 20 1a d9 8c 16 f5 4a 87 3d a5 3b 17 31 a4 ce 29 d3 0d o...R.|..e..........J.=.;.1..)..
69c40 dd 9f 68 54 f3 50 7d e3 d9 54 e7 7a a8 e1 66 5b 61 10 32 84 ce ed e7 13 fb a4 cb 87 c5 4b d8 bc ..hT.P}..T.z..f[a.2..........K..
69c60 e1 11 72 08 14 59 e9 2f e0 0f 2a a3 e8 23 cf 42 f6 e5 46 2c ba c5 78 3c 37 8c c9 b0 3d 13 b9 19 ..r..Y./..*..#.B..F,..x<7...=...
69c80 de 15 49 e1 52 3e 74 f3 0d 59 e4 10 07 76 26 a7 6a 3b 5a fe 8c 16 a8 b2 02 79 80 bb d7 4c f0 2a ..I.R>t..Y...v&.j;Z......y...L.*
69ca0 e3 d6 6c 02 ab 51 ca 0d 6d dc d7 bf 13 9b e0 7d f1 2b 14 41 31 15 02 d0 12 97 70 9a 76 34 51 c6 ..l..Q..m......}.+.A1.....p.v4Q.
69cc0 9c 4b 3c e6 d6 fd 1b 9a 6c d9 c9 5d 3b b5 14 f1 ab e6 9b eb c8 e7 81 81 d8 1a d5 d8 4a 98 06 dc .K<.....l..];...............J...
69ce0 1e 7c 71 6f b1 a6 64 83 3f 1b a2 28 ab 60 e0 12 40 c9 a5 38 92 86 1c 9f 44 1f 9f 3d c8 80 a3 89 .|qo..d.?..(.`..@..8....D..=....
69d00 b2 5c 67 6b e2 f3 5c b7 1a 87 57 e2 5d 60 93 63 65 f2 ae 28 4f 1a 16 b7 53 13 dd ed 79 18 22 f0 .\gk..\...W.]`.ce..(O...S...y.".
69d20 db 8d 20 4a e0 99 01 80 a1 4c 74 35 1c d9 e6 9c 5c 10 f7 e5 11 ee 26 55 3f 4b 8b a8 a1 b1 00 1e ...J.....Lt5....\.....&U?K......
69d40 2f fa 27 b2 3f 42 74 49 03 37 a4 0d 61 8d 63 b9 9c 12 b0 5c 5c a1 02 92 c8 d8 5b d8 d1 87 ca 4c /.'.?BtI.7..a.c....\\.....[....L
69d60 35 3d 35 ba 90 8d fe 9b 31 0c 66 80 cd a1 84 f3 fa 4f 0d 2a 52 64 bd f3 bf 0d 38 13 38 c8 74 1a 5=5.....1.f......O.*Rd....8.8.t.
69d80 1a 59 82 3e 09 18 b2 75 84 25 b5 98 9b 94 e3 38 5a 3e b5 a8 2e 5e 76 7d 90 91 e0 67 2d 00 d6 72 .Y.>...u.%.....8Z>...^v}...g-..r
69da0 3d 85 d2 d2 a9 3d 86 a8 60 ed c8 91 b3 3d 18 0e e9 be cd e9 7b 8e aa c5 28 31 37 92 ae a5 b9 4c =....=..`....=......{...(17....L
69dc0 a9 7e e2 60 e4 73 95 b3 66 6a e0 46 5d 26 21 ae 0d 4c 10 e8 33 1d e2 2b 93 d4 78 93 bd 45 2f ef .~.`.s..fj.F]&!..L..3..+..x..E/.
69de0 08 a8 49 14 7f b6 0d 03 57 42 ca 46 79 35 e7 9d 2d 03 28 aa fc ae ee e6 18 23 f7 bd 5f 63 fb 2f ..I.....WB.Fy5..-.(......#.._c./
69e00 b8 e1 62 7d 14 81 1d b4 45 31 c4 cc 79 78 6b 45 8a 8b e3 a3 d1 fd 6c ba 3f ae 14 db a9 89 78 c8 ..b}....E1..yxkE......l.?.....x.
69e20 d9 4b b3 41 8d 3e 12 2d 17 c1 91 7e 55 20 78 24 45 83 84 8b 29 71 80 5a 1a 5b e1 25 f6 33 94 b7 .K.A.>.-...~U.x$E...)q.Z.[.%.3..
69e40 6e 79 d2 a9 c6 08 21 82 ff 2e 7e 59 bf 7c 56 f0 16 6a 49 9b ca 00 18 7b a1 a4 18 5d dd ca fa 4d ny....!...~Y.|V..jI....{...]...M
69e60 ff a6 9e 92 fc a9 eb 22 a1 20 b5 97 ef 03 93 8c a2 34 0a b0 99 42 c8 14 d0 29 89 a5 67 8b 25 65 .......".........4...B...)..g.%e
69e80 ee c1 80 e1 9f c1 b0 ca 3c d7 41 69 1e dc 20 d0 e5 32 09 9b 12 89 ef 0e 7f b2 c0 02 61 e3 53 07 ........<.Ai.....2..........a.S.
69ea0 7b 49 a4 06 51 c3 83 b2 ec 5b 43 20 aa e6 5b cb 4e 87 2d 51 ef 3b ef 3d 2d e2 6b 70 9c e5 8b 92 {I..Q....[C...[.N.-Q.;.=-.kp....
69ec0 59 39 94 14 53 f6 79 9c 2c 0b cc 53 d6 4a 11 49 1e 7e c6 38 1c 67 dd 77 8c e0 36 8a c7 9a 22 4b Y9..S.y.,..S.J.I.~.8.g.w..6..."K
69ee0 78 db 6c 6f b3 4e 8b 52 ce 78 fc 30 49 58 04 f1 59 8c 2d 11 8d 0f 9e d9 8d 6f ee d3 a0 5c 9c a6 x.lo.N.R.x.0IX..Y.-......o...\..
69f00 01 7f 0c f6 db c0 fb 8d d0 47 3c 83 ac 97 62 99 90 e4 9b dd 3d 08 38 02 1d 65 d7 c6 f4 5f ad 08 .........G<...b.....=.8..e..._..
69f20 53 31 ef d7 32 f1 f2 67 d9 b9 f2 b9 00 ac 7f 11 6e 2c 8d ec 37 21 bd c5 15 44 ef 9b fc 3d 84 31 S1..2..g........n,..7!...D...=.1
69f40 88 b4 82 a4 07 bd 63 fe 60 67 45 bf b9 cf 82 11 63 51 3e 17 c5 8e 52 65 05 27 a2 a9 30 1e 0a b4 ......c.`gE.....cQ>...Re.'..0...
69f60 80 97 00 6d b4 09 87 c2 7b cd b6 1d f4 05 14 5d 60 c8 bf dd 06 c4 ce 1e ef c8 75 b6 fa e2 5d 23 ...m....{......]`.........u...]#
69f80 58 4b 1c df 86 bd 5e 9d d2 c7 72 08 d6 9c 28 ce 2b 05 a9 ea 07 b6 00 94 21 9a 9d 20 c8 3d bc a9 XK....^...r...(.+.......!....=..
69fa0 02 0e 2c ee 80 af 02 ed fe 6a 0d 64 d1 26 87 7a 48 89 a1 a2 a4 31 e4 65 3b 26 a5 c6 29 20 49 27 ..,......j.d.&.zH....1.e;&..).I'
69fc0 7b 0a 5e 9f 33 9f 0e 69 ae f0 56 0f b5 93 aa 03 6e 38 4f 3b a0 f9 9d a9 fd ee 86 40 0c 9c ce 2c {.^.3..i..V.....n8O;.......@...,
69fe0 27 97 a1 bf 2f b2 85 b2 8d 0b 31 ce 0d 8e 84 69 19 31 ca a6 95 33 3d 50 d5 c4 50 b0 e0 24 07 b7 '.../.....1....i.1...3=P..P..$..
6a000 7a 57 0d a6 57 cd 7c 1e b4 25 73 08 11 48 61 bf e2 1a e3 7b c1 3b 1d d9 5c d5 8e e4 82 cb 3d c2 zW..W.|..%s..Ha....{.;..\.....=.
6a020 15 a4 28 4b 87 96 d5 7f 1e 13 a7 de d1 12 c3 d3 30 76 c8 8a 89 59 9d da 3c ac be 70 bf c1 cb a1 ..(K............0v...Y..<..p....
6a040 bd ff d5 8c 0d 17 2d 97 60 dc f2 0c e4 34 d5 5a 92 aa 06 b8 b5 22 aa 80 40 9d b8 38 4c dc 54 c4 ......-.`....4.Z....."..@..8L.T.
6a060 d8 f5 57 69 1e fe d0 8e 38 41 a7 b9 82 48 9d 31 c2 1c 43 41 4a e8 ac bb 84 96 a2 7a ca 35 45 a2 ..Wi....8A...H.1..CAJ......z.5E.
6a080 19 96 ac 6e ca 27 28 6a 81 05 14 90 b1 1d 1b 8a 2c c6 20 30 71 33 5e 78 50 84 17 d9 5b 13 b2 b6 ...n.'(j........,..0q3^xP...[...
6a0a0 f2 f0 8c 33 63 bc 82 a6 8d 6c 66 72 ac 80 e0 51 c4 75 3b 12 84 4b 01 e3 52 67 ba 9e 93 23 e2 ab ...3c....lfr...Q.u;..K..Rg...#..
6a0c0 37 4f e3 97 2c 4a 30 dd cf f3 80 18 31 ff fb 39 b1 06 6c 84 27 48 fb ff 2a 96 c5 2a 4e df f2 20 7O..,J0.....1..9..l.'H..*..*N...
6a0e0 d2 67 a2 16 10 9e 26 9f 0b e4 e9 ba 33 0f ab 0d d4 1d 3a 7a 59 ff 9a 9e 47 03 0e af ce 88 c7 d9 .g....&.....3.....:zY...G.......
6a100 a5 d1 bf 5b 1c 3e 4e 43 c6 df 15 5a ab ac 11 9d 2b 87 90 e0 77 e7 b9 bc 93 e5 3b 5a 48 d0 bb 8b ...[.>NC...Z....+...w.....;ZH...
6a120 56 63 01 f7 f0 14 fb b3 18 46 4f 85 86 f7 d5 58 62 50 7d 99 6f 2a 33 c4 c4 8a 3e 47 76 6f fe 50 Vc.......FO....XbP}.o*3...>Gvo.P
6a140 de 0b 70 35 14 86 73 aa 99 64 b8 3c 74 49 ea 01 bb f3 0c e1 98 5a e4 03 e7 d7 f5 72 35 1f e6 c9 ..p5..s..d.<tI.......Z.....r5...
6a160 22 f5 1e dc ed fb d0 a0 99 2a e6 21 00 2d f1 39 c5 f9 8e 4a 92 be 4d 13 b8 7c 7c 85 42 8a d0 e1 "........*.!.-.9...J..M..||.B...
6a180 5d 7c ae 77 7c 0b a7 95 51 1b 0d 4c 55 32 a9 47 4e bc 2a 38 83 4e 76 d6 07 4c d4 b4 02 f0 73 e7 ]|.w|...Q..LU2.GN.*8.Nv..L....s.
6a1a0 2c df 50 be 72 8f 21 81 6e a5 c6 87 66 68 3e 75 55 31 75 46 15 d2 bf ce 10 9c 0d 98 bf 19 cf 03 ,.P.r.!.n...fh>uU1uF............
6a1c0 c5 6e 3f 51 0d 44 81 4f a5 af 61 0d ed 8e 91 31 0a 0c fa 9e 27 aa 69 8f 98 26 cd 4d df 5e 63 81 .n?Q.D.O..a....1....'.i..&.M.^c.
6a1e0 48 da 47 20 00 fd 2a b1 12 16 19 f0 02 d6 da a5 74 db fe 5a 4c 9c 8e 1b 24 b1 a0 63 f9 47 bc 3e H.G...*.........t..ZL...$..c.G.>
6a200 11 a4 fc 2d 49 68 c8 ae f3 26 e0 b8 43 dd 76 09 0f 7e a6 a1 e1 fa d7 dd 97 62 48 1e dd 18 4e cc ...-Ih...&..C.v..~.......bH...N.
6a220 8a ef ed 8a 9b 3f f0 1d 4e d9 38 9e b0 b4 2e 53 0e 8c fe 90 b1 ed 97 81 bf 7a 0e 52 f6 32 7e 93 .....?..N.8....S.........z.R.2~.
6a240 39 f3 93 ce 0e 51 11 14 cb e3 08 9a e5 e1 58 64 79 bb 6a db d4 4d c8 7f 07 22 7b fa c5 d1 cb a4 9....Q........Xdy.j..M..."{.....
6a260 76 33 f9 7c 47 07 65 b7 72 b3 23 9a d9 b2 18 b8 86 28 cf 50 70 af ce 73 e1 9b 07 05 01 99 2e 99 v3.|G.e.r.#......(.Pp..s........
6a280 ed 60 25 1c d7 81 c5 7d cb de 5a 10 16 12 55 93 0b 7f 98 72 a1 90 b1 05 0d 8d 47 bd fa ee 98 e8 .`%....}..Z...U....r......G.....
6a2a0 ff 8a 3d 0b 5d e6 9c 43 f7 47 53 20 4b 32 b5 b4 cf 27 47 92 43 9b f0 8a 90 90 bf 48 46 2e d1 27 ..=.]..C.GS.K2...'G.C......HF..'
6a2c0 d2 06 cf bc a0 62 e9 6e 1d f2 b8 f6 ec 4f bb 80 0b ac 62 a6 4e 6b 62 88 f9 5d 69 01 af d0 e1 5d .....b.n.....O....b.Nkb..]i....]
6a2e0 86 b4 da ca 60 f2 7c a1 12 01 f1 81 f1 e3 ab 85 66 6d 08 71 a1 df d8 bf 01 1b 87 19 f5 f5 c4 b1 ....`.|.........fm.q............
6a300 8b 0a 21 8f 53 14 a4 c2 cc 14 73 3f 70 d2 28 ae 7f a9 f7 aa eb 03 18 cb bd 3e 1d 27 ce 74 43 e4 ..!.S.....s?p.(..........>.'.tC.
6a320 ec 6d 96 9d 8b 14 27 c2 24 ed 13 3b ed 33 3c 3a 4d a6 38 cd 4e b2 f9 56 ca 8c c7 51 58 d6 0b db .m....'.$..;.3<:M.8.N..V...QX...
6a340 fe f9 43 19 33 fc f1 68 4d 37 9f d3 01 66 4f 83 29 8d d7 d7 cd aa fa de 21 5c 4c de 50 78 c9 bc ..C.3..hM7...fO.).......!\L.Px..
6a360 bf 1a 5d 7b 36 af 70 19 b9 c4 1f 0e bd 21 71 96 71 52 b1 d6 55 36 44 0e dd 83 33 3e 78 6f 81 40 ..]{6.p......!q.qR..U6D...3>xo.@
6a380 59 65 a8 72 e8 16 23 c3 57 14 49 f3 67 e5 22 db fe 68 91 c7 1b a3 5b b2 45 5f 8a 8e 0a 0e 12 66 Ye.r..#.W.I.g."..h....[.E_.....f
6a3a0 8f af 6e d2 47 eb a8 09 7f 46 0d 11 bb 7d f3 af 84 c5 f2 e2 6b 0d ec c6 60 af c7 28 b9 21 b0 43 ..n.G....F...}......k...`..(.!.C
6a3c0 0e b3 45 69 bc 22 bf 84 e6 25 a2 3b 85 71 da 1f 60 c9 b2 03 ff fb a7 8d 2e 17 6d 5f fd 61 2f 00 ..Ei."...%.;.q..`.........m_.a/.
6a3e0 00 00 00 00 00 73 12 00 00 00 00 00 00 4c 5a 49 50 01 0c 00 83 ff fb ff ff c0 00 00 00 00 00 00 .....s.......LZIP...............
6a400 00 00 00 00 00 00 00 00 00 24 00 00 00 00 00 00 00 4c 5a 49 50 01 0c 00 83 ff fb ff ff c0 00 00 .........$.......LZIP...........
6a420 00 00 00 00 00 00 00 00 00 00 00 00 00 24 00 00 00 00 00 00 00 4c 5a 49 50 01 8e 00 3a 1a 08 d4 .............$.......LZIP...:...
6a440 2d 65 b3 4d 8f 93 b8 92 ab 5b f5 c3 d5 55 d3 90 ff 90 32 f0 ef 98 66 41 2d 41 a3 20 19 19 67 98 -e.M.....[...U....2...fA-A....g.
6a460 f6 85 aa 99 42 7f 23 ec bb d0 fc a4 87 e6 bf a2 24 5c 85 dc 93 7a 1a 73 e9 14 97 01 82 8a 50 03 ....B.#.........$\...z.s......P.
6a480 a7 f7 63 c5 26 50 bf d5 ec 22 01 5e 2e 99 e7 6e f0 5e c5 63 e7 60 51 9d 56 59 e6 6d 68 66 5d 8e ..c.&P...".^...n.^.c.`Q.VY.mhf].
6a4a0 f1 7f f0 e3 c0 60 35 bc 8d 95 43 ec b1 90 40 a9 87 cb 57 59 8c ac 29 ae 99 58 f2 98 51 3d 05 e3 .....`5...C...@...WY..)..X..Q=..
6a4c0 0a c7 39 04 40 83 2f fb 33 bc b8 f2 11 37 e6 70 23 33 53 1e b2 bc 33 f6 91 de 26 eb e0 54 fb de ..9.@./.3....7.p#3S...3...&..T..
6a4e0 05 fb dc a3 5f 71 2a ec 15 35 21 1f 82 1d 36 a1 7b 54 73 6c 2a af 8e 4e 8c f7 75 e8 ae 96 6d 4f ...._q*..5!...6.{Tsl*..N..u...mO
6a500 97 fa af 70 cc f5 ae e0 51 06 90 14 6b 21 c3 f9 88 a5 79 d2 68 e0 93 9b 33 8a b5 f0 57 e3 71 1e ...p....Q...k!....y.h...3...W.q.
6a520 c9 f3 16 87 a8 60 bf 78 00 7d 36 d0 ec d8 0c 70 c4 d1 82 bc 88 99 68 0d 1a f7 d2 28 d8 39 61 d8 .....`.x.}6....p......h....(.9a.
6a540 7a 32 bb 18 3c 98 11 81 b5 9d 3e ef c3 22 f2 e6 e4 65 e6 52 14 27 b4 64 7a e5 dc a7 ec f3 17 3c z2..<.....>.."...e.R.'.dz......<
6a560 7c 40 b7 fd 23 5a 5e 82 3c 31 a9 a8 af 66 dd 59 ce 62 b5 40 00 ed ad f0 36 35 eb d3 34 51 37 6b |@..#Z^.<1...f.Y.b.@....65..4Q7k
6a580 91 16 30 19 5c 48 d3 93 01 c9 fa ab 17 7f 5c 11 de 8f 9f 80 be ae 3f 5f 9d c6 08 2f 84 03 6b 2c ..0.\H........\.......?_.../..k,
6a5a0 1b 57 c4 5f cf 54 74 55 06 e0 09 39 03 38 34 89 90 9a a6 6b 9e 76 5f 01 c5 f9 a9 e5 4c ee cf 7e .W._.TtU...9.84....k.v_.....L..~
6a5c0 b8 2c 53 7a ba 69 a2 a0 d6 a2 d4 aa f6 15 2e 23 59 87 48 9b f2 24 ff d9 40 01 b1 c0 a1 2c 87 c5 .,Sz.i.........#Y.H..$..@....,..
6a5e0 37 d4 e0 27 e0 45 0d 28 e3 bc a0 a7 1e 9d c8 57 9c 6e 76 ef 81 ac 2f 2c c8 78 c7 f4 d9 f6 2a b5 7..'.E.(.......W.nv.../,.x....*.
6a600 d5 5c f5 e9 1b 36 23 41 6f 90 8b 8f fb f8 6d b4 71 15 39 63 e0 96 55 2d 08 fd 9a 43 ea f3 ed 14 .\...6#Ao.....m.q.9c..U-...C....
6a620 01 15 47 04 3c 12 7e a9 66 66 0b e1 58 09 34 76 2b 9a 65 1e a8 b1 75 5d 2b 4a 4d a5 ae 0e 16 ad ..G.<.~.ff..X.4v+.e...u]+JM.....
6a640 72 88 43 4f 5a b4 80 d9 f0 67 f8 b4 04 8a 45 77 43 54 34 4f 70 48 6d 75 7f 1d de 6c b7 de 26 fe r.COZ....g....EwCT4OpHmu...l..&.
6a660 6e 8a e5 23 fc a7 4a 67 bf 35 57 6a 9b 86 9d ae be 2c d8 34 25 1d 1d a5 b0 4d 15 73 96 68 06 13 n..#..Jg.5Wj.....,.4%....M.s.h..
6a680 b9 b1 a9 4c af 11 eb b7 e5 c8 b5 6f f9 10 1d 82 0f b9 9f 94 cb b5 8e 60 07 62 e3 c1 9a 14 72 40 ...L.......o...........`.b....r@
6a6a0 1f 9b f5 43 15 b7 11 1a ac b9 66 5d 24 4e ef bb 8b 40 d1 6e ef cd 4f d8 63 cc 4d 5a ed 5f 10 28 ...C......f]$N...@.n..O.c.MZ._.(
6a6c0 72 e1 30 d6 ce dd 54 6e fe d6 74 ab 80 d1 e2 56 c0 d8 4d 3a 96 5c 6f 25 f9 bd 72 12 c2 6e 5e b0 r.0...Tn..t....V..M:.\o%..r..n^.
6a6e0 5d c0 b5 4f f3 eb d7 ba af 3f 98 47 51 6a 4f 32 18 04 ae f0 a7 b4 91 b5 cc f0 18 4c 5a 0c a5 51 ]..O.....?.GQjO2...........LZ..Q
6a700 50 30 ee 06 ea 2c 8e 4b 51 9b 5e 73 af f4 aa 9f f3 57 fa cc 5f b2 d4 bc dc 59 61 f2 6b 00 07 08 P0...,.KQ.^s.....W.._....Ya.k...
6a720 1c 27 ab 1e 7f 5b b9 f4 62 b6 f6 64 f8 26 19 75 3d fa 15 a8 8a 1b 58 84 b7 6a c4 e0 6b 7b 6c 4c .'...[..b..d.&.u=.....X..j..k{lL
6a740 e0 c1 43 c2 47 a2 5f 4f cd cb 1a 7a b9 c3 a4 eb d8 da ce f2 f9 6c 1e a9 d6 47 77 6d ea e3 09 ac ..C.G._O...z.........l...Gwm....
6a760 95 9c 6a 71 d8 18 92 d9 66 08 2c d2 44 62 ae 3c 39 fa 25 0e e0 04 a5 77 e9 10 9e 36 13 7b 1a ea ..jq....f.,.Db.<9.%....w...6.{..
6a780 f8 ef f5 9f 38 8d c0 c8 4a 65 22 b2 0a ee ef f5 93 b8 a2 63 ba db ed 5e 57 e1 b4 ba c6 7c 24 37 ....8...Je"........c...^W....|$7
6a7a0 b3 be ff be 76 3b 28 6b 82 f3 ed bf a0 d2 4b 06 f7 9f c5 88 f5 53 98 a6 9d e1 ea 15 9b 77 e4 29 ....v;(k......K......S.......w.)
6a7c0 b8 11 fa 85 f4 ae b9 5b f4 a0 8f ed e5 d3 c1 ef 62 0b b3 a5 75 5a bc 7d 6a b2 41 9e 53 c1 78 5a .......[........b...uZ.}j.A.S.xZ
6a7e0 0a f4 a1 46 09 be 35 c4 e6 91 11 1d f1 5e 93 02 1b 71 30 00 b7 f4 60 9b 1c 9a df 15 08 39 51 b1 ...F..5......^...q0...`......9Q.
6a800 3a bd b4 22 7d 00 cf e3 d8 62 1e 4b 25 49 bf 07 86 27 ad 25 f5 53 9b ff 00 51 cb c2 3d 69 05 d4 :.."}....b.K%I...'.%.S...Q..=i..
6a820 65 fa 4d 1e e1 c0 d5 49 2e db d8 24 56 2d b2 68 fb ce b2 f0 7f 27 6a 5d 30 74 82 ec 7b c1 b0 6d e.M....I...$V-.h.....'j]0t..{..m
6a840 fd 7b 2e c3 08 08 7f d6 92 f2 c6 b2 ea 3b cf aa 7c 9c f4 89 76 36 ed 81 2b d7 d8 a7 92 1f f8 16 .{...........;..|...v6..+.......
6a860 d3 19 15 74 d2 79 7d bc ef 55 7a 65 95 65 35 f8 7c 91 d0 86 d8 76 32 41 1e 0a bb 73 30 50 21 11 ...t.y}..Uze.e5.|....v2A...s0P!.
6a880 59 df cf a4 43 75 7d ad 2f 9b 17 83 14 55 58 cb 6f cf 1a d2 85 71 e8 7b a9 67 76 9c 04 4f a6 0c Y...Cu}./....UX.o....q.{.gv..O..
6a8a0 1a 3f f9 99 c6 8f d5 44 3c 90 b0 f2 fd 8e 96 d0 1f cd 37 d1 25 9b 58 c3 f7 02 65 b1 5e 84 bd 95 .?.....D<.........7.%.X...e.^...
6a8c0 30 23 be b1 fd 31 0f 70 ea 73 14 23 39 e3 65 36 38 3d 87 e7 b0 13 08 4c da fc 2f b9 53 8c 61 92 0#...1.p.s.#9.e68=.....L../.S.a.
6a8e0 5e 26 2f 53 af 78 6b 62 9f df c3 73 7d 0d 90 0d db ad da 6b 1c 38 97 54 cd cd 11 e5 c8 d1 d0 18 ^&/S.xkb...s}......k.8.T........
6a900 7f 39 80 6b f0 26 5b 7d 27 e6 46 0b 71 12 cc db e6 62 da 98 3c e9 f4 68 86 13 e5 30 54 8b de 02 .9.k.&[}'.F.q....b..<..h...0T...
6a920 2d 98 bb 41 46 2a 5b 36 83 f5 5d 4d b5 63 2d 23 f0 6e 10 e2 53 17 a0 e8 b0 6a b0 7c c0 9e cc 70 -..AF*[6..]M.c-#.n..S....j.|...p
6a940 26 66 54 d6 b6 fb 52 4f 48 92 93 a9 ad 56 da ea d3 d7 54 60 1c 18 03 a8 ea 51 8e 7f 56 f7 5c 0b &fT...ROH....V....T`.....Q..V.\.
6a960 ad 38 bb 16 23 ef e0 7f e2 ef d8 d7 b2 69 f5 a3 22 42 45 f1 19 58 e9 10 5f 60 be 1c 93 8d 2a 3d .8..#........i.."BE..X.._`....*=
6a980 db 46 40 9c 6a 09 62 72 d6 37 79 2d 79 bf a9 d9 59 65 bd 2c 3e 55 34 0e de 42 20 e0 4a 16 b0 6a .F@.j.br.7y-y...Ye.,>U4..B..J..j
6a9a0 1d e5 05 4b 3d f0 15 95 5b 5d 9d d2 04 f5 37 48 f1 2d 6a 5c 64 f7 a3 ff 9b 55 2d d7 37 87 55 4c ...K=...[]....7H.-j\d....U-.7.UL
6a9c0 79 1f 26 c5 56 f3 f2 8b 49 93 c7 33 f3 61 9d 97 4a da ae c9 46 21 eb 91 26 6a d0 5f b1 db b4 14 y.&.V...I..3.a..J...F!..&j._....
6a9e0 df 12 43 a5 48 59 2b 93 83 85 eb e9 61 85 78 98 b4 32 ef 51 6b fc 6e 23 12 76 82 9b 9b 18 e2 5b ..C.HY+.....a.x..2.Qk.n#.v.....[
6aa00 26 84 7d 37 71 84 7d 8f 8d fe 4f d5 52 4e e7 61 54 54 92 c2 c2 5b b1 05 63 1c 5c 74 ca 78 95 50 &.}7q.}...O.RN.aTT...[..c.\t.x.P
6aa20 c3 d6 de d9 a8 b8 d4 4a 8c 5a 86 af 62 55 76 22 bc df f4 bf e1 c7 6d 80 5f 6b 56 b0 df d6 65 e5 .......J.Z..bUv"......m._kV...e.
6aa40 7a 06 20 05 c9 2f 12 61 5c 0f a2 a0 68 bc 4d 1c cc 19 0e c4 fc 64 9f 7d d4 9f 53 70 b8 e4 35 e6 z..../.a\...h.M......d.}..Sp..5.
6aa60 7a 81 aa d2 35 e6 d0 a6 25 2b fe ba f7 06 d6 3b 85 0a 4d 54 3f 75 e4 3b b9 2d bb 6d dc 12 bf 31 z...5...%+.....;..MT?u.;.-.m...1
6aa80 ca 20 01 9e b2 d9 a1 88 f2 1d 69 c2 cc 4b f3 d1 84 41 f5 af 6e 56 8b 2e 81 07 e8 f1 65 c9 91 98 ..........i..K...A..nV......e...
6aaa0 ef 56 50 65 2f 93 8a ec 39 4a fc 02 fa 63 fb 74 8f 97 7a 50 07 d6 97 53 b5 78 d6 08 76 90 ab f0 .VPe/...9J...c.t..zP...S.x..v...
6aac0 37 fe a2 c5 d6 91 f6 79 e3 a4 e2 5c c1 8a 02 23 5a 1a 48 3f 9d 2a e4 e8 27 a8 9b 23 d9 23 a7 6d 7......y...\...#Z.H?.*..'..#.#.m
6aae0 61 af d6 28 e2 55 f1 c7 ab 29 f2 b4 19 9b 98 98 77 f4 3a d3 5b 72 3c 6b 25 02 da 59 58 6f e8 cc a..(.U...)......w.:.[r<k%..YXo..
6ab00 88 b1 3b 80 49 cf 46 a8 c1 76 5e 5a 3a 93 e5 14 67 c6 1d bd 5a d9 6b c7 c6 80 b6 7e 0a 89 fc c8 ..;.I.F..v^Z:...g...Z.k....~....
6ab20 61 f9 7c 94 31 ed 80 9f 53 fb aa 4f ce 13 f7 b7 4a 55 80 4c ca f6 46 f4 0f 4f 50 ef bd ae 03 cf a.|.1...S..O....JU.L..F..OP.....
6ab40 fd e3 e6 01 67 47 3e 65 13 0a 29 c5 47 6e c9 59 96 e2 38 57 0a 5c a3 87 6f ac 14 27 e4 e1 5a 61 ....gG>e..).Gn.Y..8W.\..o..'..Za
6ab60 dd ee ad 5d a6 99 9b f8 e2 e7 07 f6 d1 75 0e c1 2a 61 ba 46 f9 46 80 76 aa 4c 20 6d c3 4a 9d 0b ...].........u..*a.F.F.v.L.m.J..
6ab80 05 b0 3a cf 71 0e f8 47 52 ba be 4d 84 43 d1 05 e2 9a 3d d3 71 71 5a bf e2 30 46 13 fd 7f 7d 16 ..:.q..GR..M.C....=.qqZ..0F...}.
6aba0 d5 92 30 86 a8 b6 f6 bb 38 15 4f 28 7b 37 ef d4 a5 c1 b2 9b 1f 69 6a 32 06 5f 87 ee 0b 6a 7e d3 ..0.....8.O({7.......ij2._...j~.
6abc0 88 08 7a a5 71 b5 ef 9d ce ca d6 e1 38 66 67 eb 91 21 17 be 38 e5 90 56 99 22 81 69 ad 15 dd d2 ..z.q.......8fg..!..8..V.".i....
6abe0 fd 95 8c c6 12 6f 15 f7 bf 88 8c 44 b3 0a cb 8f 6e 50 9d 3f 1b 42 7f 4b b5 d5 d4 ea 74 36 50 32 .....o.....D....nP.?.B.K....t6P2
6ac00 f5 9d 85 90 06 36 e8 20 53 7a e6 e8 1d f7 f4 b4 1b 14 17 b9 5d 76 83 b3 9e f9 01 4f 33 8b cb 57 .....6..Sz..........]v.....O3..W
6ac20 39 5e 24 ae 58 92 ac 68 a6 f7 3b 53 ac 37 54 c3 ee cf 02 ca a0 48 91 bb 93 33 6f bc 6a 45 3b da 9^$.X..h..;S.7T......H...3o.jE;.
6ac40 b5 87 58 b9 a1 7b 18 85 da cc 61 44 27 17 36 91 d4 a2 df 96 e6 42 ad d0 12 27 cd 97 a1 d7 d6 59 ..X..{....aD'.6......B...'.....Y
6ac60 ee f1 d3 de 3e 72 a1 7b dd 34 a2 16 0f 27 7b c5 3b 5b b8 5f 04 81 98 88 b8 f4 52 62 50 a3 66 3e ....>r.{.4...'{.;[._......RbP.f>
6ac80 af d0 61 b6 73 b0 dc c0 41 da 48 bf 0b 37 a1 7d 0a 4d 1f 2f a3 59 bf 0c 39 d7 da 7a 1a b4 b6 92 ..a.s...A.H..7.}.M./.Y..9..z....
6aca0 1e cb 2d a5 a6 fc 45 04 3d 86 ee 83 fa 60 fe 15 a3 85 ae 96 28 9b ee ae 1f 9b a2 2d 64 0a 6b 8d ..-...E.=....`......(......-d.k.
6acc0 81 71 fa 27 6b 57 63 fe f4 84 e1 4a 48 5e 81 17 1f 03 cc 7f ac c1 df e3 5d 23 fb dc af d9 58 13 .q.'kWc....JH^..........]#....X.
6ace0 ab d0 e4 db 41 d3 f9 d2 98 08 ad 37 76 fd bd b6 7c 1d 1e 62 87 2d 85 42 de b7 52 80 a2 0b 23 c4 ....A......7v...|..b.-.B..R...#.
6ad00 30 6a 0b e8 dd c3 87 23 f7 52 fb 0f a1 3f 09 be cd f6 73 86 71 2a 12 e7 1c 64 ab 5e a2 a4 ae a0 0j.....#.R...?....s.q*...d.^....
6ad20 f1 b4 4e e9 d5 8e 43 02 b4 e8 26 20 95 f2 ff 34 cd 5f ac b4 4f e4 48 8f 9c 47 09 b4 73 fe 7e 80 ..N...C...&....4._..O.H..G..s.~.
6ad40 67 c8 0e 68 7c 9b cd 3e fb 30 4c 8c 94 4b 8a 91 81 a3 81 7d da 5f 92 a3 e2 00 00 93 1e af a5 f2 g..h|..>.0L..K.....}._..........
6ad60 5f 3c dd 90 a2 f4 bb d1 f2 7a be b1 cb 96 02 c3 e6 15 89 e1 47 e1 40 9a d8 6f f4 50 e3 a2 0c 5b _<.......z..........G.@..o.P...[
6ad80 fb 22 34 fa 99 90 eb d0 33 c4 18 e5 a0 e7 fc 56 3a ea 91 8d a2 04 51 de d0 a1 b2 1e 50 49 bb 2a ."4.....3......V:.....Q.....PI.*
6ada0 c2 98 eb e4 b0 e8 48 00 a6 6f ad f3 35 2e 5b 31 38 f6 b1 ec 9f 66 69 0e e4 28 ef d0 73 11 f3 9e ......H..o..5.[18....fi..(..s...
6adc0 f8 9a 40 d6 d4 ec 86 ab 98 ef bd b4 42 09 77 29 37 f5 79 f0 c7 94 a0 24 88 9b 40 57 68 03 cc 2e ..@.........B.w)7.y....$..@Wh...
6ade0 ca 2e 13 61 c5 a0 67 0d 89 81 41 7c 0e 85 75 93 0f d2 21 b5 a7 a5 7a 0e 1e c7 58 fc dd e4 60 fc ...a..g...A|..u...!...z...X...`.
6ae00 c4 c7 55 54 54 c2 5f c2 50 4b ea d8 9f ca e2 ab 2f ab be a2 49 cd 76 c5 4c 9e 89 00 83 3e 86 b0 ..UTT._.PK....../...I.v.L....>..
6ae20 a1 86 cb f7 49 84 6d ae bb 35 8c 8b ff d0 13 61 b4 a9 44 62 3c 81 f6 95 88 05 5f e1 5e 05 08 50 ....I.m..5.....a..Db<....._.^..P
6ae40 09 09 fd 30 1e d4 99 a1 53 42 f1 43 9c 3e 11 2e ef 3b 76 f9 bf 2b c0 f5 e7 ce 04 91 dd 6b eb b4 ...0....SB.C.>...;v..+.......k..
6ae60 fd 31 01 35 c8 ca 9e 5b 09 3b b3 92 74 07 89 0f c9 b4 39 1c 03 30 40 50 65 b9 51 cd 90 e2 93 f2 .1.5...[.;..t.....9..0@Pe.Q.....
6ae80 55 42 62 47 50 92 1e d5 57 57 ba 12 a9 bd a2 b3 c5 8a 2a 68 d8 89 d0 c3 ca ea 7f af dc 4b 67 d5 UBbGP...WW........*h.........Kg.
6aea0 e9 c2 7c 5d 45 65 77 50 5a 0b b9 68 b6 c9 cb f5 61 c3 58 6e 08 e6 c0 64 87 53 fc a8 81 06 8d ff ..|]EewPZ..h....a.Xn...d.S......
6aec0 46 0a 91 dd 4f 86 3c db 3a dc f7 36 47 62 ee 14 72 0b 91 e1 aa 1c b8 8c 17 89 30 bf 2e db 1a aa F...O.<.:..6Gb..r.........0.....
6aee0 54 af ab 25 aa cf 4c 97 3c 82 38 03 9d 24 60 50 aa f2 b0 b1 72 68 46 bd 7c 95 32 4a 04 6f 68 1d T..%..L.<.8..$`P....rhF.|.2J.oh.
6af00 36 02 5d e3 04 34 58 9d 16 bb 43 71 aa 30 be 8e 14 74 27 a0 9c 8c 5f 40 73 1f 4c 3c 40 c6 37 72 6.]..4X...Cq.0...t'..._@s.L<@.7r
6af20 36 bf 00 b9 cc b3 09 f0 a2 10 82 02 6d 8e 6c 84 df 91 e5 0f 62 22 c2 78 86 00 3f 1b 65 7f 7a 94 6...........m.l.....b".x..?.e.z.
6af40 4a f8 17 79 ee 18 40 6f 39 e7 b3 5c f5 ee 9b ea cc 3b 81 6f 45 7e 21 e3 d7 bc ae 0d a6 f4 1d f6 J..y..@o9..\.....;.oE~!.........
6af60 b6 58 e8 ec 8e 3e cd d1 63 7b 24 0d 44 f6 18 f9 08 3f a0 4f 4f b6 62 c9 e0 40 77 d4 5c ec 02 cf .X...>..c{$.D....?.OO.b..@w.\...
6af80 a0 36 13 80 86 16 1b 02 6b 6e 76 98 77 a3 90 0e 6b 7e 5e 20 aa bf 11 fd 8d 79 94 f1 05 66 53 ba .6......knv.w...k~^......y...fS.
6afa0 b3 09 bb 34 e6 fd 6d 5a 61 74 e4 fa dc c3 ee 7c 96 1c 5c 80 8a 8e 58 85 ec 68 c3 c9 e1 c0 61 91 ...4..mZat.....|..\...X..h....a.
6afc0 5e dd e2 f8 32 df 26 c8 aa 73 5d be 6a d7 24 94 a0 9c e4 29 67 da 31 30 83 5a ec a9 8c 0b 0c a3 ^...2.&..s].j.$....)g.10.Z......
6afe0 11 72 5d 74 ce b5 d2 03 c5 3e e7 35 f2 24 7c 6f 2f 88 58 a8 38 c5 81 75 98 c1 14 a1 2a f4 18 21 .r]t.....>.5.$|o/.X.8..u....*..!
6b000 7d f2 4e 5f e3 3a 36 da 28 0b 6c 27 71 4b 2b 91 4d 33 47 a4 e1 12 59 2d 3b f7 f2 20 5f 92 70 bf }.N_.:6.(.l'qK+.M3G...Y-;..._.p.
6b020 4b 93 39 ba fe bd f6 64 07 a2 a0 fd 3f e0 e7 94 69 0f 6b ef 17 73 ea 0a 22 58 24 c5 64 a5 e2 4e K.9....d....?...i.k..s.."X$.d..N
6b040 4a 39 fe 49 6e 62 d3 92 24 db f9 21 c4 94 32 e3 9d 05 bf f2 ff ea f8 46 02 f3 21 ec d0 ef a4 42 J9.Inb..$..!..2........F..!....B
6b060 31 c8 3e d9 f0 f1 11 96 6d 58 30 1a a7 9d 30 42 c5 94 7c 9a a2 50 b0 3c 3e 3f db 87 e3 c2 04 39 1.>.....mX0...0B..|..P.<>?.....9
6b080 70 ed c0 62 c9 6b 65 22 bb d9 5f 9c bb fd 50 60 be 2a 86 22 51 e3 ea 17 b6 54 9c de eb bb ec 70 p..b.ke".._...P`.*."Q....T.....p
6b0a0 73 5c a5 c3 43 46 4e 77 57 ad 37 45 02 1d 3e 43 85 9c e1 73 d5 7f 28 94 cc 62 e6 f9 8b ce 6c 02 s\..CFNwW.7E..>C...s..(..b....l.
6b0c0 84 83 be 19 b7 19 21 4f f6 6a 30 55 6e 11 f6 6a 5c 6d b6 4f f8 98 b3 56 fc 5e 72 cd c4 d9 36 07 ......!O.j0Un..j\m.O...V.^r...6.
6b0e0 bd ba 40 d9 56 5a 92 c7 21 40 1f 05 18 c8 0d ee 83 31 8c 7a 5b cd e5 1c 58 3d 7f ee f5 e9 5e 8d ..@.VZ..!@.......1.z[...X=....^.
6b100 19 ea 7f 28 76 bb b2 ae 5f 37 54 c9 a4 6b 70 fa fe 2a 9b cc 12 80 64 5a 88 e5 1f 7b 64 1a 5c 48 ...(v..._7T..kp..*....dZ...{d.\H
6b120 c0 7a be 4e d2 00 93 8e 32 99 d5 ad 44 d8 da 76 a3 20 43 6c fe 9d 88 a7 3b 1f e0 a7 f0 25 78 ad .z.N....2...D..v..Cl....;....%x.
6b140 c3 b0 00 cf 24 a6 22 8a 38 b6 4a 3a 93 8e 60 be 79 57 17 04 18 69 c3 d9 4e d5 d1 34 28 e6 87 68 ....$.".8.J:..`.yW...i..N..4(..h
6b160 bd e9 6c 55 fa 71 b5 9d 79 4f 19 61 ea 35 5c 0c f8 7d 47 0b 5e 9d 87 be e1 df f3 81 77 61 0b 0c ..lU.q..yO.a.5\..}G.^.......wa..
6b180 2d 7f 25 20 d5 1e d7 b8 42 df d3 73 b9 4b 37 86 b5 4e 67 a8 0d 64 dd ed 5f fe 75 8f d1 f4 ed 6b -.%.....B..s.K7..Ng..d.._.u....k
6b1a0 87 d5 8d 9c 49 08 42 d9 8f 90 0c c0 e1 26 e1 8d 98 39 da a5 01 97 be 55 fb 6c 86 26 07 6f bc be ....I.B......&...9.....U.l.&.o..
6b1c0 8a 09 b9 a1 7c 25 d5 ed 1e 54 d3 08 94 0d 34 c5 fd 74 da f1 8c a0 b0 20 d6 63 57 f5 42 57 71 0e ....|%...T....4..t.......cW.BWq.
6b1e0 22 4e 70 83 63 d0 89 b3 77 05 f3 7d a6 24 6b 28 15 0a 79 78 5c 0e 7a 7b 1b c3 42 28 19 b0 ba 4e "Np.c...w..}.$k(..yx\.z{..B(...N
6b200 85 af 6a 82 0d 50 ec a9 ed 99 61 27 0b 35 b3 27 c3 cd 24 6f 73 af 34 fa 7c 8f 60 0d cc ba dd d7 ..j..P....a'.5.'..$os.4.|.`.....
6b220 6a a6 54 05 0e 22 e5 a7 91 8c 7c 97 98 e1 7c ea 38 6c 13 5a f9 db f6 d1 6e c2 47 2f 4b f8 cb 0e j.T.."....|...|.8l.Z....n.G/K...
6b240 e6 c8 27 b7 f0 e0 79 2c 92 f2 2e d4 a2 26 91 32 85 b1 25 ac 95 b3 c9 60 7c 17 f4 c4 be 39 bf 3f ..'...y,.....&.2..%....`|....9.?
6b260 20 c8 e9 7a bd 6d 77 91 de 6b a5 2c 2f 2a be 11 60 7b d4 0b 8e 2b 3a ea 20 b8 7e 0b 4a 93 f9 11 ...z.mw..k.,/*..`{...+:...~.J...
6b280 8f 83 e5 ca 5f 3b d7 1a 19 a3 b8 71 a0 2f 8c ec 11 08 9b 5e b7 21 ca a7 6f f7 d2 4b a6 2e 04 d3 ...._;.....q./.....^.!..o..K....
6b2a0 99 07 98 0b 81 78 f3 d5 64 8f 31 f0 cd ab 3c 0c f1 b0 6d 3b 46 55 9c 38 69 9a 9d 06 2f bf bf 42 .....x..d.1...<...m;FU.8i.../..B
6b2c0 9b e1 a3 55 33 3e 57 2a 22 82 92 77 fd 00 a2 dd e5 52 f2 21 fc 4f ae 15 c0 ec f7 55 f7 94 b5 67 ...U3>W*"..w.....R.!.O.....U...g
6b2e0 86 41 c7 10 0f c6 cf d1 d3 a5 81 c1 e7 fe 2c ee 78 e2 85 fa 21 e1 0e 20 99 f5 aa 26 ed ec bb 5c .A............,.x...!......&...\
6b300 8a a2 d4 e2 f3 d8 8e f3 ff f4 fa 02 17 a8 dc a4 10 39 54 5e 4f 4f d2 d9 ad 4c f5 c6 5b ad d2 91 .................9T^OO...L..[...
6b320 26 93 2a 33 f6 16 6f 03 7e ac b0 a8 a3 04 b4 dc d1 f5 0b 6b 41 ff 7e c6 7a 92 74 87 10 82 f5 5a &.*3..o.~..........kA.~.z.t....Z
6b340 e8 63 c4 7b dc 88 97 2c 50 02 f0 40 1b dc 99 b6 db f6 1a 68 a3 ca fb 6c be 04 42 a9 99 22 c5 68 .c.{...,P..@.......h...l..B..".h
6b360 37 bb ae eb 65 4a 82 ea a9 ab bb 8e d6 73 be e8 99 7b 35 bc e5 9e fb c2 7e c8 0c b4 e8 4e 3a f5 7...eJ.......s...{5.....~....N:.
6b380 c1 cb e5 0c dc 5b a4 02 a6 f7 ba b7 c2 03 5e ee e0 9d 35 a3 7e ba 77 48 6f 97 9f cf e4 2f df 34 .....[........^...5.~.wHo..../.4
6b3a0 e4 8d 7e e6 b9 cc 14 d4 c9 ea 71 c1 33 93 13 b7 56 41 49 c6 d6 05 56 8a 8f 01 c1 2a bc 58 b1 b9 ..~.......q.3...VAI...V....*.X..
6b3c0 2d 92 98 04 5d 9e fc 7d c9 88 2e 21 b1 5a d3 69 55 6f 66 f3 c5 97 46 59 6c c7 db a4 cc ea 6c 5f -...]..}...!.Z.iUof...FYl.....l_
6b3e0 65 ca d3 bd 3b 81 7a da 3a e6 82 f3 cc 64 21 f6 27 2e 5f 11 0a 88 24 6c ba b6 d3 91 a7 c3 e8 99 e...;.z.:....d!.'._...$l........
6b400 54 43 40 1e f2 0e dd a2 42 7c 33 ef 6b 1f 33 84 45 fe de 0a 6a 87 d9 04 1d 59 09 a6 fa ed 09 40 TC@.....B|3.k.3.E...j....Y.....@
6b420 48 08 3b 94 38 7e 0c 40 b2 45 5e 67 74 80 58 50 1d ab cb 60 b3 c5 45 30 12 b3 2d 1c 56 16 6c c9 H.;.8~.@.E^gt.XP...`..E0..-.V.l.
6b440 61 7b e6 be 95 22 b4 5b a8 4c 5d fe 17 bd 11 52 c5 cb f8 e7 71 f4 7a ae fb 17 b8 6f 15 f5 8b 61 a{...".[.L]....R....q.z....o...a
6b460 d6 86 93 ab f2 2b 59 da 71 78 3f 51 9d 25 14 ce 76 f1 db 04 ab d1 02 10 b0 e9 a9 58 9f 9d 12 5e .....+Y.qx?Q.%..v..........X...^
6b480 3a f2 84 4f 00 13 79 68 a7 51 b8 56 7b 5b b4 04 f3 d7 d3 d4 db 2b b2 9e 15 6d 4b f3 eb bf 56 e1 :..O..yh.Q.V{[.......+...mK...V.
6b4a0 bd 7a 5a fe 0a b6 ae 08 53 b0 f5 54 21 51 5a cd ea 64 1a d2 cf f1 89 df 50 88 49 ee aa 26 5a 6e .zZ.....S..T!QZ..d......P.I..&Zn
6b4c0 d5 16 14 af f7 76 14 90 6d 60 3b 45 95 09 1b fc 81 2e 1e 52 36 0e 10 4a 20 d1 11 5d 66 99 e8 96 .....v..m`;E.......R6..J...]f...
6b4e0 7f 27 67 fb 2a 64 46 e9 91 83 c4 eb ec eb 46 7b 47 1d db 01 fc 9d ef 0f 7e 2f 0f 31 b8 b7 ac 0c .'g.*dF.......F{G.......~/.1....
6b500 a7 59 36 7a 4c b5 b2 82 2f b6 77 02 50 55 26 7d 13 b1 9c f2 b7 b4 df 81 c7 2b 45 35 89 d7 1f 48 .Y6zL.../.w.PU&}.........+E5...H
6b520 7e 44 04 14 0c 13 b2 b5 af 8d 32 5e 03 28 77 db 82 8e 41 dc 9f 15 c3 03 2f b9 1e a3 8a 18 55 dd ~D........2^.(w...A...../.....U.
6b540 f2 98 7d 6d 44 cf 02 3a 4d 84 eb 08 c4 9f 62 7c 1a 2b d7 9e ef de 8e fe 53 93 73 b6 62 c2 3b ad ..}mD..:M.....b|.+......S.s.b.;.
6b560 e8 b6 24 65 71 31 9c eb 12 5c c4 0b ce 87 f7 c7 b5 42 a6 ae 4e f0 88 88 4c 9c 40 2e 6e 7d 6e fa ..$eq1...\.......B..N...L.@.n}n.
6b580 8b b5 c8 8b 71 7f 37 ec f0 78 9d 79 cf cc aa 43 97 40 7b 49 72 50 71 14 bc 9f f7 73 fe 33 5a 47 ....q.7..x.y...C.@{IrPq....s.3ZG
6b5a0 de c2 d0 e8 f1 f4 c3 4f cf 3d 87 25 c6 6d 79 78 d1 6b b3 74 90 86 e4 d8 39 b2 b8 8b fa 7d 47 15 .......O.=.%.myx.k.t....9....}G.
6b5c0 7d d7 bd b2 ba eb 5b 47 a9 1a 5c 67 a0 8c a1 cf e4 fd 1c 13 28 7f c9 d0 af 96 bb b3 8c e3 15 b9 }.....[G..\g........(...........
6b5e0 05 bb 65 64 9a 83 ab 15 9c cc 6b 7f d2 04 c7 78 10 49 e6 17 52 96 2e 2e 5e 86 ba 38 6d 9b 94 d2 ..ed......k....x.I..R...^..8m...
6b600 88 ca e5 c4 d0 5f ab 91 c4 b3 34 8e 72 51 77 03 48 40 e1 8a ec b4 4e bd 21 24 a4 3b fd 0f 1e 7c ....._....4.rQw.H@....N.!$.;...|
6b620 f7 ac 95 d3 60 9a 4e 1d b5 c9 7d fa 57 0d 41 25 74 84 d5 6e 1a c5 2c 4c c8 49 e1 a5 b8 bf f1 8d ....`.N...}.W.A%t..n..,L.I......
6b640 55 df 29 f8 24 4c 33 e1 3c 47 7a 87 0a 92 59 12 4f c9 10 6b c8 66 2d 20 37 b2 e2 6b 7b c4 a6 69 U.).$L3.<Gz...Y.O..k.f-.7..k{..i
6b660 e3 c2 9a 5b 44 33 fb 22 73 80 1d 55 a0 11 03 e8 fc 7e 0b bc 7a c1 c7 f2 59 81 3c bf 83 ff b6 88 ...[D3."s..U.....~..z...Y.<.....
6b680 63 b7 f1 dd 59 f4 ee d6 0c 94 ac ff fe e5 bd 5b f8 22 da 07 62 2f 00 00 00 00 00 00 6f 12 00 00 c...Y..........[."..b/......o...
6b6a0 00 00 00 00 4c 5a 49 50 01 0c 00 83 ff fb ff ff c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ....LZIP........................
6b6c0 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 $...............................
6b6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6ba00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6ba20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6ba40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6ba60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6ba80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6baa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6bac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6bae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6bb00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6bb20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6bb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6bb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6bb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6bba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6bbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6bbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................