1 | /* |
2 | * Copyright (c) 2008 Apple Inc. All rights reserved. |
3 | * |
4 | * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ |
5 | * |
6 | * This file contains Original Code and/or Modifications of Original Code |
7 | * as defined in and that are subject to the Apple Public Source License |
8 | * Version 2.0 (the 'License'). You may not use this file except in |
9 | * compliance with the License. The rights granted to you under the License |
10 | * may not be used to create, or enable the creation or redistribution of, |
11 | * unlawful or unlicensed copies of an Apple operating system, or to |
12 | * circumvent, violate, or enable the circumvention or violation of, any |
13 | * terms of an Apple operating system software license agreement. |
14 | * |
15 | * Please obtain a copy of the License at |
16 | * http://www.opensource.apple.com/apsl/ and read it before using this file. |
17 | * |
18 | * The Original Code and all software distributed under the License are |
19 | * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER |
20 | * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, |
21 | * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, |
22 | * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. |
23 | * Please see the License for the specific language governing rights and |
24 | * limitations under the License. |
25 | * |
26 | * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ |
27 | */ |
28 | /* header created automatically with -DGEN_TREES_H */ |
29 | |
30 | local const ct_data static_ltree[L_CODES+2] = { |
31 | {{ 12},{ .dad: 8}}, {{.freq: 140},{ .dad: 8}}, {{ .freq: 76},{ .dad: 8}}, {{.freq: 204},{ .dad: 8}}, {{ .freq: 44},{ .dad: 8}}, |
32 | {{.freq: 172},{ .dad: 8}}, {{.freq: 108},{ .dad: 8}}, {{.freq: 236},{ .dad: 8}}, {{ .freq: 28},{ .dad: 8}}, {{.freq: 156},{ .dad: 8}}, |
33 | {{ .freq: 92},{ .dad: 8}}, {{.freq: 220},{ .dad: 8}}, {{ .freq: 60},{ .dad: 8}}, {{.freq: 188},{ .dad: 8}}, {{.freq: 124},{ .dad: 8}}, |
34 | {{.freq: 252},{ .dad: 8}}, {{ .freq: 2},{ .dad: 8}}, {{.freq: 130},{ .dad: 8}}, {{ .freq: 66},{ .dad: 8}}, {{.freq: 194},{ .dad: 8}}, |
35 | {{ .freq: 34},{ .dad: 8}}, {{.freq: 162},{ .dad: 8}}, {{ .freq: 98},{ .dad: 8}}, {{.freq: 226},{ .dad: 8}}, {{ .freq: 18},{ .dad: 8}}, |
36 | {{.freq: 146},{ .dad: 8}}, {{ .freq: 82},{ .dad: 8}}, {{.freq: 210},{ .dad: 8}}, {{ .freq: 50},{ .dad: 8}}, {{.freq: 178},{ .dad: 8}}, |
37 | {{.freq: 114},{ .dad: 8}}, {{.freq: 242},{ .dad: 8}}, {{ .freq: 10},{ .dad: 8}}, {{.freq: 138},{ .dad: 8}}, {{ .freq: 74},{ .dad: 8}}, |
38 | {{.freq: 202},{ .dad: 8}}, {{ .freq: 42},{ .dad: 8}}, {{.freq: 170},{ .dad: 8}}, {{.freq: 106},{ .dad: 8}}, {{.freq: 234},{ .dad: 8}}, |
39 | {{ .freq: 26},{ .dad: 8}}, {{.freq: 154},{ .dad: 8}}, {{ .freq: 90},{ .dad: 8}}, {{.freq: 218},{ .dad: 8}}, {{ .freq: 58},{ .dad: 8}}, |
40 | {{.freq: 186},{ .dad: 8}}, {{.freq: 122},{ .dad: 8}}, {{.freq: 250},{ .dad: 8}}, {{ .freq: 6},{ .dad: 8}}, {{.freq: 134},{ .dad: 8}}, |
41 | {{ .freq: 70},{ .dad: 8}}, {{.freq: 198},{ .dad: 8}}, {{ .freq: 38},{ .dad: 8}}, {{.freq: 166},{ .dad: 8}}, {{.freq: 102},{ .dad: 8}}, |
42 | {{.freq: 230},{ .dad: 8}}, {{ .freq: 22},{ .dad: 8}}, {{.freq: 150},{ .dad: 8}}, {{ .freq: 86},{ .dad: 8}}, {{.freq: 214},{ .dad: 8}}, |
43 | {{ .freq: 54},{ .dad: 8}}, {{.freq: 182},{ .dad: 8}}, {{.freq: 118},{ .dad: 8}}, {{.freq: 246},{ .dad: 8}}, {{ .freq: 14},{ .dad: 8}}, |
44 | {{.freq: 142},{ .dad: 8}}, {{ .freq: 78},{ .dad: 8}}, {{.freq: 206},{ .dad: 8}}, {{ .freq: 46},{ .dad: 8}}, {{.freq: 174},{ .dad: 8}}, |
45 | {{.freq: 110},{ .dad: 8}}, {{.freq: 238},{ .dad: 8}}, {{ .freq: 30},{ .dad: 8}}, {{.freq: 158},{ .dad: 8}}, {{ .freq: 94},{ .dad: 8}}, |
46 | {{.freq: 222},{ .dad: 8}}, {{ .freq: 62},{ .dad: 8}}, {{.freq: 190},{ .dad: 8}}, {{.freq: 126},{ .dad: 8}}, {{.freq: 254},{ .dad: 8}}, |
47 | {{ .freq: 1},{ .dad: 8}}, {{.freq: 129},{ .dad: 8}}, {{ .freq: 65},{ .dad: 8}}, {{.freq: 193},{ .dad: 8}}, {{ .freq: 33},{ .dad: 8}}, |
48 | {{.freq: 161},{ .dad: 8}}, {{ .freq: 97},{ .dad: 8}}, {{.freq: 225},{ .dad: 8}}, {{ .freq: 17},{ .dad: 8}}, {{.freq: 145},{ .dad: 8}}, |
49 | {{ .freq: 81},{ .dad: 8}}, {{.freq: 209},{ .dad: 8}}, {{ .freq: 49},{ .dad: 8}}, {{.freq: 177},{ .dad: 8}}, {{.freq: 113},{ .dad: 8}}, |
50 | {{.freq: 241},{ .dad: 8}}, {{ .freq: 9},{ .dad: 8}}, {{.freq: 137},{ .dad: 8}}, {{ .freq: 73},{ .dad: 8}}, {{.freq: 201},{ .dad: 8}}, |
51 | {{ .freq: 41},{ .dad: 8}}, {{.freq: 169},{ .dad: 8}}, {{.freq: 105},{ .dad: 8}}, {{.freq: 233},{ .dad: 8}}, {{ .freq: 25},{ .dad: 8}}, |
52 | {{.freq: 153},{ .dad: 8}}, {{ .freq: 89},{ .dad: 8}}, {{.freq: 217},{ .dad: 8}}, {{ .freq: 57},{ .dad: 8}}, {{.freq: 185},{ .dad: 8}}, |
53 | {{.freq: 121},{ .dad: 8}}, {{.freq: 249},{ .dad: 8}}, {{ .freq: 5},{ .dad: 8}}, {{.freq: 133},{ .dad: 8}}, {{ .freq: 69},{ .dad: 8}}, |
54 | {{.freq: 197},{ .dad: 8}}, {{ .freq: 37},{ .dad: 8}}, {{.freq: 165},{ .dad: 8}}, {{.freq: 101},{ .dad: 8}}, {{.freq: 229},{ .dad: 8}}, |
55 | {{ .freq: 21},{ .dad: 8}}, {{.freq: 149},{ .dad: 8}}, {{ .freq: 85},{ .dad: 8}}, {{.freq: 213},{ .dad: 8}}, {{ .freq: 53},{ .dad: 8}}, |
56 | {{.freq: 181},{ .dad: 8}}, {{.freq: 117},{ .dad: 8}}, {{.freq: 245},{ .dad: 8}}, {{ .freq: 13},{ .dad: 8}}, {{.freq: 141},{ .dad: 8}}, |
57 | {{ .freq: 77},{ .dad: 8}}, {{.freq: 205},{ .dad: 8}}, {{ .freq: 45},{ .dad: 8}}, {{.freq: 173},{ .dad: 8}}, {{.freq: 109},{ .dad: 8}}, |
58 | {{.freq: 237},{ .dad: 8}}, {{ .freq: 29},{ .dad: 8}}, {{.freq: 157},{ .dad: 8}}, {{ .freq: 93},{ .dad: 8}}, {{.freq: 221},{ .dad: 8}}, |
59 | {{ .freq: 61},{ .dad: 8}}, {{.freq: 189},{ .dad: 8}}, {{.freq: 125},{ .dad: 8}}, {{.freq: 253},{ .dad: 8}}, {{ .freq: 19},{ .dad: 9}}, |
60 | {{.freq: 275},{ .dad: 9}}, {{.freq: 147},{ .dad: 9}}, {{.freq: 403},{ .dad: 9}}, {{ .freq: 83},{ .dad: 9}}, {{.freq: 339},{ .dad: 9}}, |
61 | {{.freq: 211},{ .dad: 9}}, {{.freq: 467},{ .dad: 9}}, {{ .freq: 51},{ .dad: 9}}, {{.freq: 307},{ .dad: 9}}, {{.freq: 179},{ .dad: 9}}, |
62 | {{.freq: 435},{ .dad: 9}}, {{.freq: 115},{ .dad: 9}}, {{.freq: 371},{ .dad: 9}}, {{.freq: 243},{ .dad: 9}}, {{.freq: 499},{ .dad: 9}}, |
63 | {{ .freq: 11},{ .dad: 9}}, {{.freq: 267},{ .dad: 9}}, {{.freq: 139},{ .dad: 9}}, {{.freq: 395},{ .dad: 9}}, {{ .freq: 75},{ .dad: 9}}, |
64 | {{.freq: 331},{ .dad: 9}}, {{.freq: 203},{ .dad: 9}}, {{.freq: 459},{ .dad: 9}}, {{ .freq: 43},{ .dad: 9}}, {{.freq: 299},{ .dad: 9}}, |
65 | {{.freq: 171},{ .dad: 9}}, {{.freq: 427},{ .dad: 9}}, {{.freq: 107},{ .dad: 9}}, {{.freq: 363},{ .dad: 9}}, {{.freq: 235},{ .dad: 9}}, |
66 | {{.freq: 491},{ .dad: 9}}, {{ .freq: 27},{ .dad: 9}}, {{.freq: 283},{ .dad: 9}}, {{.freq: 155},{ .dad: 9}}, {{.freq: 411},{ .dad: 9}}, |
67 | {{ .freq: 91},{ .dad: 9}}, {{.freq: 347},{ .dad: 9}}, {{.freq: 219},{ .dad: 9}}, {{.freq: 475},{ .dad: 9}}, {{ .freq: 59},{ .dad: 9}}, |
68 | {{.freq: 315},{ .dad: 9}}, {{.freq: 187},{ .dad: 9}}, {{.freq: 443},{ .dad: 9}}, {{.freq: 123},{ .dad: 9}}, {{.freq: 379},{ .dad: 9}}, |
69 | {{.freq: 251},{ .dad: 9}}, {{.freq: 507},{ .dad: 9}}, {{ .freq: 7},{ .dad: 9}}, {{.freq: 263},{ .dad: 9}}, {{.freq: 135},{ .dad: 9}}, |
70 | {{.freq: 391},{ .dad: 9}}, {{ .freq: 71},{ .dad: 9}}, {{.freq: 327},{ .dad: 9}}, {{.freq: 199},{ .dad: 9}}, {{.freq: 455},{ .dad: 9}}, |
71 | {{ .freq: 39},{ .dad: 9}}, {{.freq: 295},{ .dad: 9}}, {{.freq: 167},{ .dad: 9}}, {{.freq: 423},{ .dad: 9}}, {{.freq: 103},{ .dad: 9}}, |
72 | {{.freq: 359},{ .dad: 9}}, {{.freq: 231},{ .dad: 9}}, {{.freq: 487},{ .dad: 9}}, {{ .freq: 23},{ .dad: 9}}, {{.freq: 279},{ .dad: 9}}, |
73 | {{.freq: 151},{ .dad: 9}}, {{.freq: 407},{ .dad: 9}}, {{ .freq: 87},{ .dad: 9}}, {{.freq: 343},{ .dad: 9}}, {{.freq: 215},{ .dad: 9}}, |
74 | {{.freq: 471},{ .dad: 9}}, {{ .freq: 55},{ .dad: 9}}, {{.freq: 311},{ .dad: 9}}, {{.freq: 183},{ .dad: 9}}, {{.freq: 439},{ .dad: 9}}, |
75 | {{.freq: 119},{ .dad: 9}}, {{.freq: 375},{ .dad: 9}}, {{.freq: 247},{ .dad: 9}}, {{.freq: 503},{ .dad: 9}}, {{ .freq: 15},{ .dad: 9}}, |
76 | {{.freq: 271},{ .dad: 9}}, {{.freq: 143},{ .dad: 9}}, {{.freq: 399},{ .dad: 9}}, {{ .freq: 79},{ .dad: 9}}, {{.freq: 335},{ .dad: 9}}, |
77 | {{.freq: 207},{ .dad: 9}}, {{.freq: 463},{ .dad: 9}}, {{ .freq: 47},{ .dad: 9}}, {{.freq: 303},{ .dad: 9}}, {{.freq: 175},{ .dad: 9}}, |
78 | {{.freq: 431},{ .dad: 9}}, {{.freq: 111},{ .dad: 9}}, {{.freq: 367},{ .dad: 9}}, {{.freq: 239},{ .dad: 9}}, {{.freq: 495},{ .dad: 9}}, |
79 | {{ .freq: 31},{ .dad: 9}}, {{.freq: 287},{ .dad: 9}}, {{.freq: 159},{ .dad: 9}}, {{.freq: 415},{ .dad: 9}}, {{ .freq: 95},{ .dad: 9}}, |
80 | {{.freq: 351},{ .dad: 9}}, {{.freq: 223},{ .dad: 9}}, {{.freq: 479},{ .dad: 9}}, {{ .freq: 63},{ .dad: 9}}, {{.freq: 319},{ .dad: 9}}, |
81 | {{.freq: 191},{ .dad: 9}}, {{.freq: 447},{ .dad: 9}}, {{.freq: 127},{ .dad: 9}}, {{.freq: 383},{ .dad: 9}}, {{.freq: 255},{ .dad: 9}}, |
82 | {{.freq: 511},{ .dad: 9}}, {{ 0},{ 7}}, {{ 64},{ 7}}, {{ 32},{ 7}}, {{ 96},{ 7}}, |
83 | {{ 16},{ 7}}, {{ 80},{ 7}}, {{ 48},{ 7}}, {{112},{ 7}}, {{ 8},{ 7}}, |
84 | {{ 72},{ 7}}, {{ 40},{ 7}}, {{104},{ 7}}, {{ 24},{ 7}}, {{ 88},{ 7}}, |
85 | {{ 56},{ 7}}, {{120},{ 7}}, {{ 4},{ 7}}, {{ 68},{ 7}}, {{ 36},{ 7}}, |
86 | {{100},{ 7}}, {{ 20},{ 7}}, {{ 84},{ 7}}, {{ 52},{ 7}}, {{116},{ 7}}, |
87 | {{ 3},{ 8}}, {{131},{ 8}}, {{ 67},{ 8}}, {{195},{ 8}}, {{ 35},{ 8}}, |
88 | {{163},{ 8}}, {{ 99},{ 8}}, {{227},{ 8}} |
89 | }; |
90 | |
91 | local const ct_data static_dtree[D_CODES] = { |
92 | {{ 0},{ 5}}, {{16},{ 5}}, {{ 8},{ 5}}, {{24},{ 5}}, {{ 4},{ 5}}, |
93 | {{20},{ 5}}, {{12},{ 5}}, {{28},{ 5}}, {{ 2},{ 5}}, {{18},{ 5}}, |
94 | {{10},{ 5}}, {{26},{ 5}}, {{ 6},{ 5}}, {{22},{ 5}}, {{14},{ 5}}, |
95 | {{30},{ 5}}, {{ 1},{ 5}}, {{17},{ 5}}, {{ 9},{ 5}}, {{25},{ 5}}, |
96 | {{ 5},{ 5}}, {{21},{ 5}}, {{13},{ 5}}, {{29},{ 5}}, {{ 3},{ 5}}, |
97 | {{19},{ 5}}, {{11},{ 5}}, {{27},{ 5}}, {{ 7},{ 5}}, {{23},{ 5}} |
98 | }; |
99 | |
100 | const uch _dist_code[DIST_CODE_LEN] = { |
101 | 0, 1, 2, 3, 4, 4, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, |
102 | 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, |
103 | 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, |
104 | 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, |
105 | 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, |
106 | 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, |
107 | 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
108 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
109 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, |
110 | 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, |
111 | 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, |
112 | 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, |
113 | 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 0, 0, 16, 17, |
114 | 18, 18, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, |
115 | 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, |
116 | 24, 24, 24, 24, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, |
117 | 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, |
118 | 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, 27, 27, 27, |
119 | 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, |
120 | 27, 27, 27, 27, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, |
121 | 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, |
122 | 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, |
123 | 28, 28, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, |
124 | 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, |
125 | 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, |
126 | 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29 |
127 | }; |
128 | |
129 | const uch _length_code[MAX_MATCH-MIN_MATCH+1]= { |
130 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 12, |
131 | 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, |
132 | 17, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, |
133 | 19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, |
134 | 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, |
135 | 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, |
136 | 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, |
137 | 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, |
138 | 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, |
139 | 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 26, 26, 26, 26, 26, 26, 26, 26, |
140 | 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, |
141 | 26, 26, 26, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, |
142 | 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 28 |
143 | }; |
144 | |
145 | local const int base_length[LENGTH_CODES] = { |
146 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, 32, 40, 48, 56, |
147 | 64, 80, 96, 112, 128, 160, 192, 224, 0 |
148 | }; |
149 | |
150 | local const int base_dist[D_CODES] = { |
151 | 0, 1, 2, 3, 4, 6, 8, 12, 16, 24, |
152 | 32, 48, 64, 96, 128, 192, 256, 384, 512, 768, |
153 | 1024, 1536, 2048, 3072, 4096, 6144, 8192, 12288, 16384, 24576 |
154 | }; |
155 | |
156 | |