@pggis/pg-sdk 3.3.9 → 3.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -8
- package/dist/index.js +1966 -4
- package/dist/pggis.min.css +1 -1
- package/dist/resources/ThirdParty/Workers/pako_deflate.min.js +1 -2
- package/dist/resources/ThirdParty/Workers/pako_inflate.min.js +1 -2
- package/dist/resources/ThirdParty/Workers/z-worker-pako.js +1 -1
- package/dist/resources/ThirdParty/google-earth-dbroot-parser.js +1 -8337
- package/dist/resources/ThirdParty/wasm_splats_bg.wasm +0 -0
- package/dist/resources/Workers/chunk-35SHYARM.js +26 -0
- package/dist/resources/Workers/chunk-37F5JSTI.js +26 -0
- package/dist/resources/Workers/chunk-3SSKC3VN.js +26 -0
- package/dist/resources/Workers/chunk-3W4GT7KQ.js +26 -0
- package/dist/resources/Workers/chunk-4IW2T6GF.js +26 -0
- package/dist/resources/Workers/chunk-5YEWO3HT.js +26 -0
- package/dist/resources/Workers/chunk-64RSHJUE.js +28 -0
- package/dist/resources/Workers/chunk-77IHZJJ3.js +26 -0
- package/dist/resources/Workers/chunk-7HTKERZY.js +26 -0
- package/dist/resources/Workers/{chunk-F3YA3Y2Z.js → chunk-A56XVLQR.js} +2 -13
- package/dist/resources/Workers/chunk-AJYK4IVJ.js +26 -0
- package/dist/resources/Workers/{chunk-EHWHNOEX.js → chunk-ARG42DC4.js} +2 -31
- package/dist/resources/Workers/chunk-AU7IKHOH.js +26 -0
- package/dist/resources/Workers/chunk-B4AA3ARO.js +26 -0
- package/dist/resources/Workers/chunk-CNCV5UL7.js +26 -0
- package/dist/resources/Workers/chunk-CYCB63OH.js +26 -0
- package/dist/resources/Workers/{chunk-4H7PY4U5.js → chunk-D6AA5QVT.js} +2 -20
- package/dist/resources/Workers/chunk-D6C66QON.js +26 -0
- package/dist/resources/Workers/chunk-DEPHB2WM.js +26 -0
- package/dist/resources/Workers/chunk-DMEY62ID.js +26 -0
- package/dist/resources/Workers/chunk-DQQ63PYM.js +26 -0
- package/dist/resources/Workers/chunk-ED5JPB3S.js +27 -0
- package/dist/resources/Workers/chunk-EZUYS2JF.js +26 -0
- package/dist/resources/Workers/chunk-FEVXJ54I.js +26 -0
- package/dist/resources/Workers/chunk-G5AGHVVC.js +26 -0
- package/dist/resources/Workers/{chunk-BBWDMCVU.js → chunk-GBYLG25F.js} +2 -15
- package/dist/resources/Workers/chunk-GILIDQNQ.js +26 -0
- package/dist/resources/Workers/chunk-HMIYSTF6.js +26 -0
- package/dist/resources/Workers/chunk-HTFSEEMT.js +26 -0
- package/dist/resources/Workers/chunk-HWXX4CWK.js +26 -0
- package/dist/resources/Workers/chunk-IYTZ52EY.js +26 -0
- package/dist/resources/Workers/chunk-J6UP6FLE.js +26 -0
- package/dist/resources/Workers/chunk-LEYMRMBK.js +27 -0
- package/dist/resources/Workers/chunk-M3MGYQSL.js +26 -0
- package/dist/resources/Workers/chunk-N4VJKXZS.js +26 -0
- package/dist/resources/Workers/chunk-NB3ML6JO.js +26 -0
- package/dist/resources/Workers/chunk-OFUUQVMR.js +26 -0
- package/dist/resources/Workers/chunk-OSW76XDF.js +26 -0
- package/dist/resources/Workers/chunk-PSPPBZWI.js +66 -0
- package/dist/resources/Workers/chunk-QN3VOORQ.js +26 -0
- package/dist/resources/Workers/chunk-QOUAJ6TL.js +26 -0
- package/dist/resources/Workers/chunk-RCV6KWXS.js +26 -0
- package/dist/resources/Workers/chunk-TCGIRNHN.js +26 -0
- package/dist/resources/Workers/chunk-U4IEOH5K.js +26 -0
- package/dist/resources/Workers/chunk-UP6I5URU.js +26 -0
- package/dist/resources/Workers/chunk-VTAIKJXX.js +26 -0
- package/dist/resources/Workers/chunk-VTBDSFTG.js +26 -0
- package/dist/resources/Workers/chunk-VW6VD53G.js +26 -0
- package/dist/resources/Workers/chunk-WGGIH7QW.js +26 -0
- package/dist/resources/Workers/chunk-WWA5PL4H.js +26 -0
- package/dist/resources/Workers/chunk-WZDE3RYP.js +28 -0
- package/dist/resources/Workers/chunk-XRL4AVS5.js +26 -0
- package/dist/resources/Workers/combineGeometry.js +2 -44
- package/dist/resources/Workers/createBoxGeometry.js +2 -34
- package/dist/resources/Workers/createBoxOutlineGeometry.js +2 -211
- package/dist/resources/Workers/createCircleGeometry.js +2 -173
- package/dist/resources/Workers/createCircleOutlineGeometry.js +2 -123
- package/dist/resources/Workers/createCoplanarPolygonGeometry.js +2 -482
- package/dist/resources/Workers/createCoplanarPolygonOutlineGeometry.js +2 -201
- package/dist/resources/Workers/createCorridorGeometry.js +2 -1239
- package/dist/resources/Workers/createCorridorOutlineGeometry.js +2 -544
- package/dist/resources/Workers/createCylinderGeometry.js +2 -36
- package/dist/resources/Workers/createCylinderOutlineGeometry.js +2 -207
- package/dist/resources/Workers/createEllipseGeometry.js +2 -47
- package/dist/resources/Workers/createEllipseOutlineGeometry.js +2 -40
- package/dist/resources/Workers/createEllipsoidGeometry.js +2 -35
- package/dist/resources/Workers/createEllipsoidOutlineGeometry.js +2 -37
- package/dist/resources/Workers/createFrustumGeometry.js +2 -34
- package/dist/resources/Workers/createFrustumOutlineGeometry.js +2 -211
- package/dist/resources/Workers/createGeometry.js +2 -147
- package/dist/resources/Workers/createGroundPolylineGeometry.js +2 -1584
- package/dist/resources/Workers/createPlaneGeometry.js +2 -200
- package/dist/resources/Workers/createPlaneOutlineGeometry.js +2 -100
- package/dist/resources/Workers/createPolygonGeometry.js +2 -1387
- package/dist/resources/Workers/createPolygonOutlineGeometry.js +2 -519
- package/dist/resources/Workers/createPolylineGeometry.js +2 -472
- package/dist/resources/Workers/createPolylineVolumeGeometry.js +2 -355
- package/dist/resources/Workers/createPolylineVolumeOutlineGeometry.js +2 -253
- package/dist/resources/Workers/createRectangleGeometry.js +2 -1250
- package/dist/resources/Workers/createRectangleOutlineGeometry.js +2 -455
- package/dist/resources/Workers/createSimplePolylineGeometry.js +2 -376
- package/dist/resources/Workers/createSphereGeometry.js +2 -94
- package/dist/resources/Workers/createSphereOutlineGeometry.js +2 -94
- package/dist/resources/Workers/createTaskProcessorWorker.js +2 -8
- package/dist/resources/Workers/createVectorTileClampedPolylines.js +2 -468
- package/dist/resources/Workers/createVectorTileGeometries.js +2 -363
- package/dist/resources/Workers/createVectorTilePoints.js +2 -88
- package/dist/resources/Workers/createVectorTilePolygons.js +2 -361
- package/dist/resources/Workers/createVectorTilePolylines.js +2 -238
- package/dist/resources/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +2 -545
- package/dist/resources/Workers/createVerticesFromHeightmap.js +2 -2254
- package/dist/resources/Workers/createVerticesFromQuantizedTerrainMesh.js +2 -722
- package/dist/resources/Workers/createWallGeometry.js +2 -466
- package/dist/resources/Workers/createWallOutlineGeometry.js +2 -314
- package/dist/resources/Workers/decodeDraco.js +2 -345
- package/dist/resources/Workers/decodeGoogleEarthEnterprisePacket.js +2 -2626
- package/dist/resources/Workers/decodeI3S.js +2 -1320
- package/dist/resources/Workers/gaussianSplatSorter.js +26 -0
- package/dist/resources/Workers/gaussianSplatTextureGenerator.js +26 -0
- package/dist/resources/Workers/transcodeKTX2.js +29 -3398
- package/dist/resources/Workers/transferTypedArrayTest.js +2 -17
- package/dist/resources/Workers/upsampleQuantizedTerrainMesh.js +2 -795
- package/package.json +9 -8
- package/dist/pggis.min.js +0 -14796
- package/dist/resources/ThirdParty/Workers/basis_transcoder.js +0 -21
- package/dist/resources/Workers/chunk-23UFSGND.js +0 -236
- package/dist/resources/Workers/chunk-2A75IWRS.js +0 -218
- package/dist/resources/Workers/chunk-2FRVPMCS.js +0 -1258
- package/dist/resources/Workers/chunk-2FWRMUTY.js +0 -138
- package/dist/resources/Workers/chunk-2UPKWTMJ.js +0 -117
- package/dist/resources/Workers/chunk-34FXV7D7.js +0 -73
- package/dist/resources/Workers/chunk-3VAZEH7M.js +0 -101
- package/dist/resources/Workers/chunk-4DO5W5XZ.js +0 -196
- package/dist/resources/Workers/chunk-5QULIR53.js +0 -501
- package/dist/resources/Workers/chunk-7TC63SJW.js +0 -302
- package/dist/resources/Workers/chunk-7ZFGPDJA.js +0 -122
- package/dist/resources/Workers/chunk-A5DWLWCY.js +0 -834
- package/dist/resources/Workers/chunk-BG4UCVXN.js +0 -73
- package/dist/resources/Workers/chunk-BIKA3NRA.js +0 -59
- package/dist/resources/Workers/chunk-BROJAZRZ.js +0 -390
- package/dist/resources/Workers/chunk-DDUQAJ4P.js +0 -476
- package/dist/resources/Workers/chunk-EERJKOAF.js +0 -305
- package/dist/resources/Workers/chunk-EG6PTBY2.js +0 -2716
- package/dist/resources/Workers/chunk-F4HFJMGM.js +0 -353
- package/dist/resources/Workers/chunk-FJKNFAKQ.js +0 -8219
- package/dist/resources/Workers/chunk-FNIRWHJB.js +0 -289
- package/dist/resources/Workers/chunk-FZRIVR7Y.js +0 -100
- package/dist/resources/Workers/chunk-G43QFN4Q.js +0 -157
- package/dist/resources/Workers/chunk-GATZHF3K.js +0 -1860
- package/dist/resources/Workers/chunk-GRC2ZTAF.js +0 -398
- package/dist/resources/Workers/chunk-HU6N6EXB.js +0 -767
- package/dist/resources/Workers/chunk-I46ZRR5W.js +0 -1052
- package/dist/resources/Workers/chunk-JURN7NPV.js +0 -1075
- package/dist/resources/Workers/chunk-KKCR2YOP.js +0 -421
- package/dist/resources/Workers/chunk-LPR3YNP2.js +0 -138
- package/dist/resources/Workers/chunk-M7ERACJJ.js +0 -511
- package/dist/resources/Workers/chunk-MDWEGWPA.js +0 -1007
- package/dist/resources/Workers/chunk-OGXZVPPM.js +0 -2365
- package/dist/resources/Workers/chunk-PGSJK77E.js +0 -634
- package/dist/resources/Workers/chunk-PPH7OFP3.js +0 -258
- package/dist/resources/Workers/chunk-SH5USDPI.js +0 -456
- package/dist/resources/Workers/chunk-SOWMRMWA.js +0 -629
- package/dist/resources/Workers/chunk-STW2DGFI.js +0 -58
- package/dist/resources/Workers/chunk-T3XIFPYR.js +0 -1477
- package/dist/resources/Workers/chunk-TTUZP4BO.js +0 -501
- package/dist/resources/Workers/chunk-UEXTBDBE.js +0 -693
- package/dist/resources/Workers/chunk-VOXYEYJT.js +0 -684
- package/dist/resources/Workers/chunk-X4356LRH.js +0 -368
- package/dist/resources/Workers/chunk-XGI5BXZY.js +0 -163
- package/dist/resources/Workers/chunk-Y2ME2IJV.js +0 -781
- package/dist/resources/Workers/chunk-Y5UQJLYE.js +0 -171
- package/dist/resources/Workers/chunk-YJEBABKH.js +0 -2977
- package/dist/resources/Workers/chunk-YWTJ2B4B.js +0 -77
- package/dist/resources/Workers/chunk-Z3TIFFGF.js +0 -430
- package/dist/resources/Workers/chunk-ZT7KWISZ.js +0 -102
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
3
|
* Cesium - https://github.com/CesiumGS/cesium
|
|
4
|
-
* Version 1.
|
|
4
|
+
* Version 1.132
|
|
5
5
|
*
|
|
6
6
|
* Copyright 2011-2022 Cesium Contributors
|
|
7
7
|
*
|
|
@@ -23,2628 +23,4 @@
|
|
|
23
23
|
* See https://github.com/CesiumGS/cesium/blob/main/LICENSE.md for full licensing details.
|
|
24
24
|
*/
|
|
25
25
|
|
|
26
|
-
import {
|
|
27
|
-
createTaskProcessorWorker_default
|
|
28
|
-
} from "./chunk-3VAZEH7M.js";
|
|
29
|
-
import {
|
|
30
|
-
RuntimeError_default
|
|
31
|
-
} from "./chunk-STW2DGFI.js";
|
|
32
|
-
import {
|
|
33
|
-
Check_default
|
|
34
|
-
} from "./chunk-XGI5BXZY.js";
|
|
35
|
-
import {
|
|
36
|
-
__commonJS,
|
|
37
|
-
__toESM,
|
|
38
|
-
defined_default
|
|
39
|
-
} from "./chunk-YWTJ2B4B.js";
|
|
40
|
-
|
|
41
|
-
// node_modules/pako/lib/zlib/adler32.js
|
|
42
|
-
var require_adler32 = __commonJS({
|
|
43
|
-
"node_modules/pako/lib/zlib/adler32.js"(exports, module) {
|
|
44
|
-
"use strict";
|
|
45
|
-
var adler32 = (adler, buf, len, pos) => {
|
|
46
|
-
let s1 = adler & 65535 | 0, s2 = adler >>> 16 & 65535 | 0, n = 0;
|
|
47
|
-
while (len !== 0) {
|
|
48
|
-
n = len > 2e3 ? 2e3 : len;
|
|
49
|
-
len -= n;
|
|
50
|
-
do {
|
|
51
|
-
s1 = s1 + buf[pos++] | 0;
|
|
52
|
-
s2 = s2 + s1 | 0;
|
|
53
|
-
} while (--n);
|
|
54
|
-
s1 %= 65521;
|
|
55
|
-
s2 %= 65521;
|
|
56
|
-
}
|
|
57
|
-
return s1 | s2 << 16 | 0;
|
|
58
|
-
};
|
|
59
|
-
module.exports = adler32;
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
|
|
63
|
-
// node_modules/pako/lib/zlib/crc32.js
|
|
64
|
-
var require_crc32 = __commonJS({
|
|
65
|
-
"node_modules/pako/lib/zlib/crc32.js"(exports, module) {
|
|
66
|
-
"use strict";
|
|
67
|
-
var makeTable = () => {
|
|
68
|
-
let c, table = [];
|
|
69
|
-
for (var n = 0; n < 256; n++) {
|
|
70
|
-
c = n;
|
|
71
|
-
for (var k = 0; k < 8; k++) {
|
|
72
|
-
c = c & 1 ? 3988292384 ^ c >>> 1 : c >>> 1;
|
|
73
|
-
}
|
|
74
|
-
table[n] = c;
|
|
75
|
-
}
|
|
76
|
-
return table;
|
|
77
|
-
};
|
|
78
|
-
var crcTable = new Uint32Array(makeTable());
|
|
79
|
-
var crc32 = (crc, buf, len, pos) => {
|
|
80
|
-
const t = crcTable;
|
|
81
|
-
const end = pos + len;
|
|
82
|
-
crc ^= -1;
|
|
83
|
-
for (let i = pos; i < end; i++) {
|
|
84
|
-
crc = crc >>> 8 ^ t[(crc ^ buf[i]) & 255];
|
|
85
|
-
}
|
|
86
|
-
return crc ^ -1;
|
|
87
|
-
};
|
|
88
|
-
module.exports = crc32;
|
|
89
|
-
}
|
|
90
|
-
});
|
|
91
|
-
|
|
92
|
-
// node_modules/pako/lib/zlib/inffast.js
|
|
93
|
-
var require_inffast = __commonJS({
|
|
94
|
-
"node_modules/pako/lib/zlib/inffast.js"(exports, module) {
|
|
95
|
-
"use strict";
|
|
96
|
-
var BAD = 16209;
|
|
97
|
-
var TYPE = 16191;
|
|
98
|
-
module.exports = function inflate_fast(strm, start) {
|
|
99
|
-
let _in;
|
|
100
|
-
let last;
|
|
101
|
-
let _out;
|
|
102
|
-
let beg;
|
|
103
|
-
let end;
|
|
104
|
-
let dmax;
|
|
105
|
-
let wsize;
|
|
106
|
-
let whave;
|
|
107
|
-
let wnext;
|
|
108
|
-
let s_window;
|
|
109
|
-
let hold;
|
|
110
|
-
let bits;
|
|
111
|
-
let lcode;
|
|
112
|
-
let dcode;
|
|
113
|
-
let lmask;
|
|
114
|
-
let dmask;
|
|
115
|
-
let here;
|
|
116
|
-
let op;
|
|
117
|
-
let len;
|
|
118
|
-
let dist;
|
|
119
|
-
let from;
|
|
120
|
-
let from_source;
|
|
121
|
-
let input, output;
|
|
122
|
-
const state = strm.state;
|
|
123
|
-
_in = strm.next_in;
|
|
124
|
-
input = strm.input;
|
|
125
|
-
last = _in + (strm.avail_in - 5);
|
|
126
|
-
_out = strm.next_out;
|
|
127
|
-
output = strm.output;
|
|
128
|
-
beg = _out - (start - strm.avail_out);
|
|
129
|
-
end = _out + (strm.avail_out - 257);
|
|
130
|
-
dmax = state.dmax;
|
|
131
|
-
wsize = state.wsize;
|
|
132
|
-
whave = state.whave;
|
|
133
|
-
wnext = state.wnext;
|
|
134
|
-
s_window = state.window;
|
|
135
|
-
hold = state.hold;
|
|
136
|
-
bits = state.bits;
|
|
137
|
-
lcode = state.lencode;
|
|
138
|
-
dcode = state.distcode;
|
|
139
|
-
lmask = (1 << state.lenbits) - 1;
|
|
140
|
-
dmask = (1 << state.distbits) - 1;
|
|
141
|
-
top:
|
|
142
|
-
do {
|
|
143
|
-
if (bits < 15) {
|
|
144
|
-
hold += input[_in++] << bits;
|
|
145
|
-
bits += 8;
|
|
146
|
-
hold += input[_in++] << bits;
|
|
147
|
-
bits += 8;
|
|
148
|
-
}
|
|
149
|
-
here = lcode[hold & lmask];
|
|
150
|
-
dolen:
|
|
151
|
-
for (; ; ) {
|
|
152
|
-
op = here >>> 24;
|
|
153
|
-
hold >>>= op;
|
|
154
|
-
bits -= op;
|
|
155
|
-
op = here >>> 16 & 255;
|
|
156
|
-
if (op === 0) {
|
|
157
|
-
output[_out++] = here & 65535;
|
|
158
|
-
} else if (op & 16) {
|
|
159
|
-
len = here & 65535;
|
|
160
|
-
op &= 15;
|
|
161
|
-
if (op) {
|
|
162
|
-
if (bits < op) {
|
|
163
|
-
hold += input[_in++] << bits;
|
|
164
|
-
bits += 8;
|
|
165
|
-
}
|
|
166
|
-
len += hold & (1 << op) - 1;
|
|
167
|
-
hold >>>= op;
|
|
168
|
-
bits -= op;
|
|
169
|
-
}
|
|
170
|
-
if (bits < 15) {
|
|
171
|
-
hold += input[_in++] << bits;
|
|
172
|
-
bits += 8;
|
|
173
|
-
hold += input[_in++] << bits;
|
|
174
|
-
bits += 8;
|
|
175
|
-
}
|
|
176
|
-
here = dcode[hold & dmask];
|
|
177
|
-
dodist:
|
|
178
|
-
for (; ; ) {
|
|
179
|
-
op = here >>> 24;
|
|
180
|
-
hold >>>= op;
|
|
181
|
-
bits -= op;
|
|
182
|
-
op = here >>> 16 & 255;
|
|
183
|
-
if (op & 16) {
|
|
184
|
-
dist = here & 65535;
|
|
185
|
-
op &= 15;
|
|
186
|
-
if (bits < op) {
|
|
187
|
-
hold += input[_in++] << bits;
|
|
188
|
-
bits += 8;
|
|
189
|
-
if (bits < op) {
|
|
190
|
-
hold += input[_in++] << bits;
|
|
191
|
-
bits += 8;
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
dist += hold & (1 << op) - 1;
|
|
195
|
-
if (dist > dmax) {
|
|
196
|
-
strm.msg = "invalid distance too far back";
|
|
197
|
-
state.mode = BAD;
|
|
198
|
-
break top;
|
|
199
|
-
}
|
|
200
|
-
hold >>>= op;
|
|
201
|
-
bits -= op;
|
|
202
|
-
op = _out - beg;
|
|
203
|
-
if (dist > op) {
|
|
204
|
-
op = dist - op;
|
|
205
|
-
if (op > whave) {
|
|
206
|
-
if (state.sane) {
|
|
207
|
-
strm.msg = "invalid distance too far back";
|
|
208
|
-
state.mode = BAD;
|
|
209
|
-
break top;
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
from = 0;
|
|
213
|
-
from_source = s_window;
|
|
214
|
-
if (wnext === 0) {
|
|
215
|
-
from += wsize - op;
|
|
216
|
-
if (op < len) {
|
|
217
|
-
len -= op;
|
|
218
|
-
do {
|
|
219
|
-
output[_out++] = s_window[from++];
|
|
220
|
-
} while (--op);
|
|
221
|
-
from = _out - dist;
|
|
222
|
-
from_source = output;
|
|
223
|
-
}
|
|
224
|
-
} else if (wnext < op) {
|
|
225
|
-
from += wsize + wnext - op;
|
|
226
|
-
op -= wnext;
|
|
227
|
-
if (op < len) {
|
|
228
|
-
len -= op;
|
|
229
|
-
do {
|
|
230
|
-
output[_out++] = s_window[from++];
|
|
231
|
-
} while (--op);
|
|
232
|
-
from = 0;
|
|
233
|
-
if (wnext < len) {
|
|
234
|
-
op = wnext;
|
|
235
|
-
len -= op;
|
|
236
|
-
do {
|
|
237
|
-
output[_out++] = s_window[from++];
|
|
238
|
-
} while (--op);
|
|
239
|
-
from = _out - dist;
|
|
240
|
-
from_source = output;
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
} else {
|
|
244
|
-
from += wnext - op;
|
|
245
|
-
if (op < len) {
|
|
246
|
-
len -= op;
|
|
247
|
-
do {
|
|
248
|
-
output[_out++] = s_window[from++];
|
|
249
|
-
} while (--op);
|
|
250
|
-
from = _out - dist;
|
|
251
|
-
from_source = output;
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
while (len > 2) {
|
|
255
|
-
output[_out++] = from_source[from++];
|
|
256
|
-
output[_out++] = from_source[from++];
|
|
257
|
-
output[_out++] = from_source[from++];
|
|
258
|
-
len -= 3;
|
|
259
|
-
}
|
|
260
|
-
if (len) {
|
|
261
|
-
output[_out++] = from_source[from++];
|
|
262
|
-
if (len > 1) {
|
|
263
|
-
output[_out++] = from_source[from++];
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
} else {
|
|
267
|
-
from = _out - dist;
|
|
268
|
-
do {
|
|
269
|
-
output[_out++] = output[from++];
|
|
270
|
-
output[_out++] = output[from++];
|
|
271
|
-
output[_out++] = output[from++];
|
|
272
|
-
len -= 3;
|
|
273
|
-
} while (len > 2);
|
|
274
|
-
if (len) {
|
|
275
|
-
output[_out++] = output[from++];
|
|
276
|
-
if (len > 1) {
|
|
277
|
-
output[_out++] = output[from++];
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
} else if ((op & 64) === 0) {
|
|
282
|
-
here = dcode[(here & 65535) + (hold & (1 << op) - 1)];
|
|
283
|
-
continue dodist;
|
|
284
|
-
} else {
|
|
285
|
-
strm.msg = "invalid distance code";
|
|
286
|
-
state.mode = BAD;
|
|
287
|
-
break top;
|
|
288
|
-
}
|
|
289
|
-
break;
|
|
290
|
-
}
|
|
291
|
-
} else if ((op & 64) === 0) {
|
|
292
|
-
here = lcode[(here & 65535) + (hold & (1 << op) - 1)];
|
|
293
|
-
continue dolen;
|
|
294
|
-
} else if (op & 32) {
|
|
295
|
-
state.mode = TYPE;
|
|
296
|
-
break top;
|
|
297
|
-
} else {
|
|
298
|
-
strm.msg = "invalid literal/length code";
|
|
299
|
-
state.mode = BAD;
|
|
300
|
-
break top;
|
|
301
|
-
}
|
|
302
|
-
break;
|
|
303
|
-
}
|
|
304
|
-
} while (_in < last && _out < end);
|
|
305
|
-
len = bits >> 3;
|
|
306
|
-
_in -= len;
|
|
307
|
-
bits -= len << 3;
|
|
308
|
-
hold &= (1 << bits) - 1;
|
|
309
|
-
strm.next_in = _in;
|
|
310
|
-
strm.next_out = _out;
|
|
311
|
-
strm.avail_in = _in < last ? 5 + (last - _in) : 5 - (_in - last);
|
|
312
|
-
strm.avail_out = _out < end ? 257 + (end - _out) : 257 - (_out - end);
|
|
313
|
-
state.hold = hold;
|
|
314
|
-
state.bits = bits;
|
|
315
|
-
return;
|
|
316
|
-
};
|
|
317
|
-
}
|
|
318
|
-
});
|
|
319
|
-
|
|
320
|
-
// node_modules/pako/lib/zlib/inftrees.js
|
|
321
|
-
var require_inftrees = __commonJS({
|
|
322
|
-
"node_modules/pako/lib/zlib/inftrees.js"(exports, module) {
|
|
323
|
-
"use strict";
|
|
324
|
-
var MAXBITS = 15;
|
|
325
|
-
var ENOUGH_LENS = 852;
|
|
326
|
-
var ENOUGH_DISTS = 592;
|
|
327
|
-
var CODES = 0;
|
|
328
|
-
var LENS = 1;
|
|
329
|
-
var DISTS = 2;
|
|
330
|
-
var lbase = new Uint16Array([
|
|
331
|
-
/* Length codes 257..285 base */
|
|
332
|
-
3,
|
|
333
|
-
4,
|
|
334
|
-
5,
|
|
335
|
-
6,
|
|
336
|
-
7,
|
|
337
|
-
8,
|
|
338
|
-
9,
|
|
339
|
-
10,
|
|
340
|
-
11,
|
|
341
|
-
13,
|
|
342
|
-
15,
|
|
343
|
-
17,
|
|
344
|
-
19,
|
|
345
|
-
23,
|
|
346
|
-
27,
|
|
347
|
-
31,
|
|
348
|
-
35,
|
|
349
|
-
43,
|
|
350
|
-
51,
|
|
351
|
-
59,
|
|
352
|
-
67,
|
|
353
|
-
83,
|
|
354
|
-
99,
|
|
355
|
-
115,
|
|
356
|
-
131,
|
|
357
|
-
163,
|
|
358
|
-
195,
|
|
359
|
-
227,
|
|
360
|
-
258,
|
|
361
|
-
0,
|
|
362
|
-
0
|
|
363
|
-
]);
|
|
364
|
-
var lext = new Uint8Array([
|
|
365
|
-
/* Length codes 257..285 extra */
|
|
366
|
-
16,
|
|
367
|
-
16,
|
|
368
|
-
16,
|
|
369
|
-
16,
|
|
370
|
-
16,
|
|
371
|
-
16,
|
|
372
|
-
16,
|
|
373
|
-
16,
|
|
374
|
-
17,
|
|
375
|
-
17,
|
|
376
|
-
17,
|
|
377
|
-
17,
|
|
378
|
-
18,
|
|
379
|
-
18,
|
|
380
|
-
18,
|
|
381
|
-
18,
|
|
382
|
-
19,
|
|
383
|
-
19,
|
|
384
|
-
19,
|
|
385
|
-
19,
|
|
386
|
-
20,
|
|
387
|
-
20,
|
|
388
|
-
20,
|
|
389
|
-
20,
|
|
390
|
-
21,
|
|
391
|
-
21,
|
|
392
|
-
21,
|
|
393
|
-
21,
|
|
394
|
-
16,
|
|
395
|
-
72,
|
|
396
|
-
78
|
|
397
|
-
]);
|
|
398
|
-
var dbase = new Uint16Array([
|
|
399
|
-
/* Distance codes 0..29 base */
|
|
400
|
-
1,
|
|
401
|
-
2,
|
|
402
|
-
3,
|
|
403
|
-
4,
|
|
404
|
-
5,
|
|
405
|
-
7,
|
|
406
|
-
9,
|
|
407
|
-
13,
|
|
408
|
-
17,
|
|
409
|
-
25,
|
|
410
|
-
33,
|
|
411
|
-
49,
|
|
412
|
-
65,
|
|
413
|
-
97,
|
|
414
|
-
129,
|
|
415
|
-
193,
|
|
416
|
-
257,
|
|
417
|
-
385,
|
|
418
|
-
513,
|
|
419
|
-
769,
|
|
420
|
-
1025,
|
|
421
|
-
1537,
|
|
422
|
-
2049,
|
|
423
|
-
3073,
|
|
424
|
-
4097,
|
|
425
|
-
6145,
|
|
426
|
-
8193,
|
|
427
|
-
12289,
|
|
428
|
-
16385,
|
|
429
|
-
24577,
|
|
430
|
-
0,
|
|
431
|
-
0
|
|
432
|
-
]);
|
|
433
|
-
var dext = new Uint8Array([
|
|
434
|
-
/* Distance codes 0..29 extra */
|
|
435
|
-
16,
|
|
436
|
-
16,
|
|
437
|
-
16,
|
|
438
|
-
16,
|
|
439
|
-
17,
|
|
440
|
-
17,
|
|
441
|
-
18,
|
|
442
|
-
18,
|
|
443
|
-
19,
|
|
444
|
-
19,
|
|
445
|
-
20,
|
|
446
|
-
20,
|
|
447
|
-
21,
|
|
448
|
-
21,
|
|
449
|
-
22,
|
|
450
|
-
22,
|
|
451
|
-
23,
|
|
452
|
-
23,
|
|
453
|
-
24,
|
|
454
|
-
24,
|
|
455
|
-
25,
|
|
456
|
-
25,
|
|
457
|
-
26,
|
|
458
|
-
26,
|
|
459
|
-
27,
|
|
460
|
-
27,
|
|
461
|
-
28,
|
|
462
|
-
28,
|
|
463
|
-
29,
|
|
464
|
-
29,
|
|
465
|
-
64,
|
|
466
|
-
64
|
|
467
|
-
]);
|
|
468
|
-
var inflate_table = (type, lens, lens_index, codes, table, table_index, work, opts) => {
|
|
469
|
-
const bits = opts.bits;
|
|
470
|
-
let len = 0;
|
|
471
|
-
let sym = 0;
|
|
472
|
-
let min = 0, max = 0;
|
|
473
|
-
let root = 0;
|
|
474
|
-
let curr = 0;
|
|
475
|
-
let drop = 0;
|
|
476
|
-
let left = 0;
|
|
477
|
-
let used = 0;
|
|
478
|
-
let huff = 0;
|
|
479
|
-
let incr;
|
|
480
|
-
let fill;
|
|
481
|
-
let low;
|
|
482
|
-
let mask;
|
|
483
|
-
let next;
|
|
484
|
-
let base = null;
|
|
485
|
-
let match;
|
|
486
|
-
const count = new Uint16Array(MAXBITS + 1);
|
|
487
|
-
const offs = new Uint16Array(MAXBITS + 1);
|
|
488
|
-
let extra = null;
|
|
489
|
-
let here_bits, here_op, here_val;
|
|
490
|
-
for (len = 0; len <= MAXBITS; len++) {
|
|
491
|
-
count[len] = 0;
|
|
492
|
-
}
|
|
493
|
-
for (sym = 0; sym < codes; sym++) {
|
|
494
|
-
count[lens[lens_index + sym]]++;
|
|
495
|
-
}
|
|
496
|
-
root = bits;
|
|
497
|
-
for (max = MAXBITS; max >= 1; max--) {
|
|
498
|
-
if (count[max] !== 0) {
|
|
499
|
-
break;
|
|
500
|
-
}
|
|
501
|
-
}
|
|
502
|
-
if (root > max) {
|
|
503
|
-
root = max;
|
|
504
|
-
}
|
|
505
|
-
if (max === 0) {
|
|
506
|
-
table[table_index++] = 1 << 24 | 64 << 16 | 0;
|
|
507
|
-
table[table_index++] = 1 << 24 | 64 << 16 | 0;
|
|
508
|
-
opts.bits = 1;
|
|
509
|
-
return 0;
|
|
510
|
-
}
|
|
511
|
-
for (min = 1; min < max; min++) {
|
|
512
|
-
if (count[min] !== 0) {
|
|
513
|
-
break;
|
|
514
|
-
}
|
|
515
|
-
}
|
|
516
|
-
if (root < min) {
|
|
517
|
-
root = min;
|
|
518
|
-
}
|
|
519
|
-
left = 1;
|
|
520
|
-
for (len = 1; len <= MAXBITS; len++) {
|
|
521
|
-
left <<= 1;
|
|
522
|
-
left -= count[len];
|
|
523
|
-
if (left < 0) {
|
|
524
|
-
return -1;
|
|
525
|
-
}
|
|
526
|
-
}
|
|
527
|
-
if (left > 0 && (type === CODES || max !== 1)) {
|
|
528
|
-
return -1;
|
|
529
|
-
}
|
|
530
|
-
offs[1] = 0;
|
|
531
|
-
for (len = 1; len < MAXBITS; len++) {
|
|
532
|
-
offs[len + 1] = offs[len] + count[len];
|
|
533
|
-
}
|
|
534
|
-
for (sym = 0; sym < codes; sym++) {
|
|
535
|
-
if (lens[lens_index + sym] !== 0) {
|
|
536
|
-
work[offs[lens[lens_index + sym]]++] = sym;
|
|
537
|
-
}
|
|
538
|
-
}
|
|
539
|
-
if (type === CODES) {
|
|
540
|
-
base = extra = work;
|
|
541
|
-
match = 20;
|
|
542
|
-
} else if (type === LENS) {
|
|
543
|
-
base = lbase;
|
|
544
|
-
extra = lext;
|
|
545
|
-
match = 257;
|
|
546
|
-
} else {
|
|
547
|
-
base = dbase;
|
|
548
|
-
extra = dext;
|
|
549
|
-
match = 0;
|
|
550
|
-
}
|
|
551
|
-
huff = 0;
|
|
552
|
-
sym = 0;
|
|
553
|
-
len = min;
|
|
554
|
-
next = table_index;
|
|
555
|
-
curr = root;
|
|
556
|
-
drop = 0;
|
|
557
|
-
low = -1;
|
|
558
|
-
used = 1 << root;
|
|
559
|
-
mask = used - 1;
|
|
560
|
-
if (type === LENS && used > ENOUGH_LENS || type === DISTS && used > ENOUGH_DISTS) {
|
|
561
|
-
return 1;
|
|
562
|
-
}
|
|
563
|
-
for (; ; ) {
|
|
564
|
-
here_bits = len - drop;
|
|
565
|
-
if (work[sym] + 1 < match) {
|
|
566
|
-
here_op = 0;
|
|
567
|
-
here_val = work[sym];
|
|
568
|
-
} else if (work[sym] >= match) {
|
|
569
|
-
here_op = extra[work[sym] - match];
|
|
570
|
-
here_val = base[work[sym] - match];
|
|
571
|
-
} else {
|
|
572
|
-
here_op = 32 + 64;
|
|
573
|
-
here_val = 0;
|
|
574
|
-
}
|
|
575
|
-
incr = 1 << len - drop;
|
|
576
|
-
fill = 1 << curr;
|
|
577
|
-
min = fill;
|
|
578
|
-
do {
|
|
579
|
-
fill -= incr;
|
|
580
|
-
table[next + (huff >> drop) + fill] = here_bits << 24 | here_op << 16 | here_val | 0;
|
|
581
|
-
} while (fill !== 0);
|
|
582
|
-
incr = 1 << len - 1;
|
|
583
|
-
while (huff & incr) {
|
|
584
|
-
incr >>= 1;
|
|
585
|
-
}
|
|
586
|
-
if (incr !== 0) {
|
|
587
|
-
huff &= incr - 1;
|
|
588
|
-
huff += incr;
|
|
589
|
-
} else {
|
|
590
|
-
huff = 0;
|
|
591
|
-
}
|
|
592
|
-
sym++;
|
|
593
|
-
if (--count[len] === 0) {
|
|
594
|
-
if (len === max) {
|
|
595
|
-
break;
|
|
596
|
-
}
|
|
597
|
-
len = lens[lens_index + work[sym]];
|
|
598
|
-
}
|
|
599
|
-
if (len > root && (huff & mask) !== low) {
|
|
600
|
-
if (drop === 0) {
|
|
601
|
-
drop = root;
|
|
602
|
-
}
|
|
603
|
-
next += min;
|
|
604
|
-
curr = len - drop;
|
|
605
|
-
left = 1 << curr;
|
|
606
|
-
while (curr + drop < max) {
|
|
607
|
-
left -= count[curr + drop];
|
|
608
|
-
if (left <= 0) {
|
|
609
|
-
break;
|
|
610
|
-
}
|
|
611
|
-
curr++;
|
|
612
|
-
left <<= 1;
|
|
613
|
-
}
|
|
614
|
-
used += 1 << curr;
|
|
615
|
-
if (type === LENS && used > ENOUGH_LENS || type === DISTS && used > ENOUGH_DISTS) {
|
|
616
|
-
return 1;
|
|
617
|
-
}
|
|
618
|
-
low = huff & mask;
|
|
619
|
-
table[low] = root << 24 | curr << 16 | next - table_index | 0;
|
|
620
|
-
}
|
|
621
|
-
}
|
|
622
|
-
if (huff !== 0) {
|
|
623
|
-
table[next + huff] = len - drop << 24 | 64 << 16 | 0;
|
|
624
|
-
}
|
|
625
|
-
opts.bits = root;
|
|
626
|
-
return 0;
|
|
627
|
-
};
|
|
628
|
-
module.exports = inflate_table;
|
|
629
|
-
}
|
|
630
|
-
});
|
|
631
|
-
|
|
632
|
-
// node_modules/pako/lib/zlib/constants.js
|
|
633
|
-
var require_constants = __commonJS({
|
|
634
|
-
"node_modules/pako/lib/zlib/constants.js"(exports, module) {
|
|
635
|
-
"use strict";
|
|
636
|
-
module.exports = {
|
|
637
|
-
/* Allowed flush values; see deflate() and inflate() below for details */
|
|
638
|
-
Z_NO_FLUSH: 0,
|
|
639
|
-
Z_PARTIAL_FLUSH: 1,
|
|
640
|
-
Z_SYNC_FLUSH: 2,
|
|
641
|
-
Z_FULL_FLUSH: 3,
|
|
642
|
-
Z_FINISH: 4,
|
|
643
|
-
Z_BLOCK: 5,
|
|
644
|
-
Z_TREES: 6,
|
|
645
|
-
/* Return codes for the compression/decompression functions. Negative values
|
|
646
|
-
* are errors, positive values are used for special but normal events.
|
|
647
|
-
*/
|
|
648
|
-
Z_OK: 0,
|
|
649
|
-
Z_STREAM_END: 1,
|
|
650
|
-
Z_NEED_DICT: 2,
|
|
651
|
-
Z_ERRNO: -1,
|
|
652
|
-
Z_STREAM_ERROR: -2,
|
|
653
|
-
Z_DATA_ERROR: -3,
|
|
654
|
-
Z_MEM_ERROR: -4,
|
|
655
|
-
Z_BUF_ERROR: -5,
|
|
656
|
-
//Z_VERSION_ERROR: -6,
|
|
657
|
-
/* compression levels */
|
|
658
|
-
Z_NO_COMPRESSION: 0,
|
|
659
|
-
Z_BEST_SPEED: 1,
|
|
660
|
-
Z_BEST_COMPRESSION: 9,
|
|
661
|
-
Z_DEFAULT_COMPRESSION: -1,
|
|
662
|
-
Z_FILTERED: 1,
|
|
663
|
-
Z_HUFFMAN_ONLY: 2,
|
|
664
|
-
Z_RLE: 3,
|
|
665
|
-
Z_FIXED: 4,
|
|
666
|
-
Z_DEFAULT_STRATEGY: 0,
|
|
667
|
-
/* Possible values of the data_type field (though see inflate()) */
|
|
668
|
-
Z_BINARY: 0,
|
|
669
|
-
Z_TEXT: 1,
|
|
670
|
-
//Z_ASCII: 1, // = Z_TEXT (deprecated)
|
|
671
|
-
Z_UNKNOWN: 2,
|
|
672
|
-
/* The deflate compression method */
|
|
673
|
-
Z_DEFLATED: 8
|
|
674
|
-
//Z_NULL: null // Use -1 or null inline, depending on var type
|
|
675
|
-
};
|
|
676
|
-
}
|
|
677
|
-
});
|
|
678
|
-
|
|
679
|
-
// node_modules/pako/lib/zlib/inflate.js
|
|
680
|
-
var require_inflate = __commonJS({
|
|
681
|
-
"node_modules/pako/lib/zlib/inflate.js"(exports, module) {
|
|
682
|
-
"use strict";
|
|
683
|
-
var adler32 = require_adler32();
|
|
684
|
-
var crc32 = require_crc32();
|
|
685
|
-
var inflate_fast = require_inffast();
|
|
686
|
-
var inflate_table = require_inftrees();
|
|
687
|
-
var CODES = 0;
|
|
688
|
-
var LENS = 1;
|
|
689
|
-
var DISTS = 2;
|
|
690
|
-
var {
|
|
691
|
-
Z_FINISH,
|
|
692
|
-
Z_BLOCK,
|
|
693
|
-
Z_TREES,
|
|
694
|
-
Z_OK,
|
|
695
|
-
Z_STREAM_END,
|
|
696
|
-
Z_NEED_DICT,
|
|
697
|
-
Z_STREAM_ERROR,
|
|
698
|
-
Z_DATA_ERROR,
|
|
699
|
-
Z_MEM_ERROR,
|
|
700
|
-
Z_BUF_ERROR,
|
|
701
|
-
Z_DEFLATED
|
|
702
|
-
} = require_constants();
|
|
703
|
-
var HEAD = 16180;
|
|
704
|
-
var FLAGS = 16181;
|
|
705
|
-
var TIME = 16182;
|
|
706
|
-
var OS = 16183;
|
|
707
|
-
var EXLEN = 16184;
|
|
708
|
-
var EXTRA = 16185;
|
|
709
|
-
var NAME = 16186;
|
|
710
|
-
var COMMENT = 16187;
|
|
711
|
-
var HCRC = 16188;
|
|
712
|
-
var DICTID = 16189;
|
|
713
|
-
var DICT = 16190;
|
|
714
|
-
var TYPE = 16191;
|
|
715
|
-
var TYPEDO = 16192;
|
|
716
|
-
var STORED = 16193;
|
|
717
|
-
var COPY_ = 16194;
|
|
718
|
-
var COPY = 16195;
|
|
719
|
-
var TABLE = 16196;
|
|
720
|
-
var LENLENS = 16197;
|
|
721
|
-
var CODELENS = 16198;
|
|
722
|
-
var LEN_ = 16199;
|
|
723
|
-
var LEN = 16200;
|
|
724
|
-
var LENEXT = 16201;
|
|
725
|
-
var DIST = 16202;
|
|
726
|
-
var DISTEXT = 16203;
|
|
727
|
-
var MATCH = 16204;
|
|
728
|
-
var LIT = 16205;
|
|
729
|
-
var CHECK = 16206;
|
|
730
|
-
var LENGTH = 16207;
|
|
731
|
-
var DONE = 16208;
|
|
732
|
-
var BAD = 16209;
|
|
733
|
-
var MEM = 16210;
|
|
734
|
-
var SYNC = 16211;
|
|
735
|
-
var ENOUGH_LENS = 852;
|
|
736
|
-
var ENOUGH_DISTS = 592;
|
|
737
|
-
var MAX_WBITS = 15;
|
|
738
|
-
var DEF_WBITS = MAX_WBITS;
|
|
739
|
-
var zswap32 = (q) => {
|
|
740
|
-
return (q >>> 24 & 255) + (q >>> 8 & 65280) + ((q & 65280) << 8) + ((q & 255) << 24);
|
|
741
|
-
};
|
|
742
|
-
function InflateState() {
|
|
743
|
-
this.strm = null;
|
|
744
|
-
this.mode = 0;
|
|
745
|
-
this.last = false;
|
|
746
|
-
this.wrap = 0;
|
|
747
|
-
this.havedict = false;
|
|
748
|
-
this.flags = 0;
|
|
749
|
-
this.dmax = 0;
|
|
750
|
-
this.check = 0;
|
|
751
|
-
this.total = 0;
|
|
752
|
-
this.head = null;
|
|
753
|
-
this.wbits = 0;
|
|
754
|
-
this.wsize = 0;
|
|
755
|
-
this.whave = 0;
|
|
756
|
-
this.wnext = 0;
|
|
757
|
-
this.window = null;
|
|
758
|
-
this.hold = 0;
|
|
759
|
-
this.bits = 0;
|
|
760
|
-
this.length = 0;
|
|
761
|
-
this.offset = 0;
|
|
762
|
-
this.extra = 0;
|
|
763
|
-
this.lencode = null;
|
|
764
|
-
this.distcode = null;
|
|
765
|
-
this.lenbits = 0;
|
|
766
|
-
this.distbits = 0;
|
|
767
|
-
this.ncode = 0;
|
|
768
|
-
this.nlen = 0;
|
|
769
|
-
this.ndist = 0;
|
|
770
|
-
this.have = 0;
|
|
771
|
-
this.next = null;
|
|
772
|
-
this.lens = new Uint16Array(320);
|
|
773
|
-
this.work = new Uint16Array(288);
|
|
774
|
-
this.lendyn = null;
|
|
775
|
-
this.distdyn = null;
|
|
776
|
-
this.sane = 0;
|
|
777
|
-
this.back = 0;
|
|
778
|
-
this.was = 0;
|
|
779
|
-
}
|
|
780
|
-
var inflateStateCheck = (strm) => {
|
|
781
|
-
if (!strm) {
|
|
782
|
-
return 1;
|
|
783
|
-
}
|
|
784
|
-
const state = strm.state;
|
|
785
|
-
if (!state || state.strm !== strm || state.mode < HEAD || state.mode > SYNC) {
|
|
786
|
-
return 1;
|
|
787
|
-
}
|
|
788
|
-
return 0;
|
|
789
|
-
};
|
|
790
|
-
var inflateResetKeep = (strm) => {
|
|
791
|
-
if (inflateStateCheck(strm)) {
|
|
792
|
-
return Z_STREAM_ERROR;
|
|
793
|
-
}
|
|
794
|
-
const state = strm.state;
|
|
795
|
-
strm.total_in = strm.total_out = state.total = 0;
|
|
796
|
-
strm.msg = "";
|
|
797
|
-
if (state.wrap) {
|
|
798
|
-
strm.adler = state.wrap & 1;
|
|
799
|
-
}
|
|
800
|
-
state.mode = HEAD;
|
|
801
|
-
state.last = 0;
|
|
802
|
-
state.havedict = 0;
|
|
803
|
-
state.flags = -1;
|
|
804
|
-
state.dmax = 32768;
|
|
805
|
-
state.head = null;
|
|
806
|
-
state.hold = 0;
|
|
807
|
-
state.bits = 0;
|
|
808
|
-
state.lencode = state.lendyn = new Int32Array(ENOUGH_LENS);
|
|
809
|
-
state.distcode = state.distdyn = new Int32Array(ENOUGH_DISTS);
|
|
810
|
-
state.sane = 1;
|
|
811
|
-
state.back = -1;
|
|
812
|
-
return Z_OK;
|
|
813
|
-
};
|
|
814
|
-
var inflateReset = (strm) => {
|
|
815
|
-
if (inflateStateCheck(strm)) {
|
|
816
|
-
return Z_STREAM_ERROR;
|
|
817
|
-
}
|
|
818
|
-
const state = strm.state;
|
|
819
|
-
state.wsize = 0;
|
|
820
|
-
state.whave = 0;
|
|
821
|
-
state.wnext = 0;
|
|
822
|
-
return inflateResetKeep(strm);
|
|
823
|
-
};
|
|
824
|
-
var inflateReset2 = (strm, windowBits) => {
|
|
825
|
-
let wrap;
|
|
826
|
-
if (inflateStateCheck(strm)) {
|
|
827
|
-
return Z_STREAM_ERROR;
|
|
828
|
-
}
|
|
829
|
-
const state = strm.state;
|
|
830
|
-
if (windowBits < 0) {
|
|
831
|
-
wrap = 0;
|
|
832
|
-
windowBits = -windowBits;
|
|
833
|
-
} else {
|
|
834
|
-
wrap = (windowBits >> 4) + 5;
|
|
835
|
-
if (windowBits < 48) {
|
|
836
|
-
windowBits &= 15;
|
|
837
|
-
}
|
|
838
|
-
}
|
|
839
|
-
if (windowBits && (windowBits < 8 || windowBits > 15)) {
|
|
840
|
-
return Z_STREAM_ERROR;
|
|
841
|
-
}
|
|
842
|
-
if (state.window !== null && state.wbits !== windowBits) {
|
|
843
|
-
state.window = null;
|
|
844
|
-
}
|
|
845
|
-
state.wrap = wrap;
|
|
846
|
-
state.wbits = windowBits;
|
|
847
|
-
return inflateReset(strm);
|
|
848
|
-
};
|
|
849
|
-
var inflateInit2 = (strm, windowBits) => {
|
|
850
|
-
if (!strm) {
|
|
851
|
-
return Z_STREAM_ERROR;
|
|
852
|
-
}
|
|
853
|
-
const state = new InflateState();
|
|
854
|
-
strm.state = state;
|
|
855
|
-
state.strm = strm;
|
|
856
|
-
state.window = null;
|
|
857
|
-
state.mode = HEAD;
|
|
858
|
-
const ret = inflateReset2(strm, windowBits);
|
|
859
|
-
if (ret !== Z_OK) {
|
|
860
|
-
strm.state = null;
|
|
861
|
-
}
|
|
862
|
-
return ret;
|
|
863
|
-
};
|
|
864
|
-
var inflateInit = (strm) => {
|
|
865
|
-
return inflateInit2(strm, DEF_WBITS);
|
|
866
|
-
};
|
|
867
|
-
var virgin = true;
|
|
868
|
-
var lenfix;
|
|
869
|
-
var distfix;
|
|
870
|
-
var fixedtables = (state) => {
|
|
871
|
-
if (virgin) {
|
|
872
|
-
lenfix = new Int32Array(512);
|
|
873
|
-
distfix = new Int32Array(32);
|
|
874
|
-
let sym = 0;
|
|
875
|
-
while (sym < 144) {
|
|
876
|
-
state.lens[sym++] = 8;
|
|
877
|
-
}
|
|
878
|
-
while (sym < 256) {
|
|
879
|
-
state.lens[sym++] = 9;
|
|
880
|
-
}
|
|
881
|
-
while (sym < 280) {
|
|
882
|
-
state.lens[sym++] = 7;
|
|
883
|
-
}
|
|
884
|
-
while (sym < 288) {
|
|
885
|
-
state.lens[sym++] = 8;
|
|
886
|
-
}
|
|
887
|
-
inflate_table(LENS, state.lens, 0, 288, lenfix, 0, state.work, { bits: 9 });
|
|
888
|
-
sym = 0;
|
|
889
|
-
while (sym < 32) {
|
|
890
|
-
state.lens[sym++] = 5;
|
|
891
|
-
}
|
|
892
|
-
inflate_table(DISTS, state.lens, 0, 32, distfix, 0, state.work, { bits: 5 });
|
|
893
|
-
virgin = false;
|
|
894
|
-
}
|
|
895
|
-
state.lencode = lenfix;
|
|
896
|
-
state.lenbits = 9;
|
|
897
|
-
state.distcode = distfix;
|
|
898
|
-
state.distbits = 5;
|
|
899
|
-
};
|
|
900
|
-
var updatewindow = (strm, src, end, copy) => {
|
|
901
|
-
let dist;
|
|
902
|
-
const state = strm.state;
|
|
903
|
-
if (state.window === null) {
|
|
904
|
-
state.wsize = 1 << state.wbits;
|
|
905
|
-
state.wnext = 0;
|
|
906
|
-
state.whave = 0;
|
|
907
|
-
state.window = new Uint8Array(state.wsize);
|
|
908
|
-
}
|
|
909
|
-
if (copy >= state.wsize) {
|
|
910
|
-
state.window.set(src.subarray(end - state.wsize, end), 0);
|
|
911
|
-
state.wnext = 0;
|
|
912
|
-
state.whave = state.wsize;
|
|
913
|
-
} else {
|
|
914
|
-
dist = state.wsize - state.wnext;
|
|
915
|
-
if (dist > copy) {
|
|
916
|
-
dist = copy;
|
|
917
|
-
}
|
|
918
|
-
state.window.set(src.subarray(end - copy, end - copy + dist), state.wnext);
|
|
919
|
-
copy -= dist;
|
|
920
|
-
if (copy) {
|
|
921
|
-
state.window.set(src.subarray(end - copy, end), 0);
|
|
922
|
-
state.wnext = copy;
|
|
923
|
-
state.whave = state.wsize;
|
|
924
|
-
} else {
|
|
925
|
-
state.wnext += dist;
|
|
926
|
-
if (state.wnext === state.wsize) {
|
|
927
|
-
state.wnext = 0;
|
|
928
|
-
}
|
|
929
|
-
if (state.whave < state.wsize) {
|
|
930
|
-
state.whave += dist;
|
|
931
|
-
}
|
|
932
|
-
}
|
|
933
|
-
}
|
|
934
|
-
return 0;
|
|
935
|
-
};
|
|
936
|
-
var inflate = (strm, flush) => {
|
|
937
|
-
let state;
|
|
938
|
-
let input, output;
|
|
939
|
-
let next;
|
|
940
|
-
let put;
|
|
941
|
-
let have, left;
|
|
942
|
-
let hold;
|
|
943
|
-
let bits;
|
|
944
|
-
let _in, _out;
|
|
945
|
-
let copy;
|
|
946
|
-
let from;
|
|
947
|
-
let from_source;
|
|
948
|
-
let here = 0;
|
|
949
|
-
let here_bits, here_op, here_val;
|
|
950
|
-
let last_bits, last_op, last_val;
|
|
951
|
-
let len;
|
|
952
|
-
let ret;
|
|
953
|
-
const hbuf = new Uint8Array(4);
|
|
954
|
-
let opts;
|
|
955
|
-
let n;
|
|
956
|
-
const order = (
|
|
957
|
-
/* permutation of code lengths */
|
|
958
|
-
new Uint8Array([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15])
|
|
959
|
-
);
|
|
960
|
-
if (inflateStateCheck(strm) || !strm.output || !strm.input && strm.avail_in !== 0) {
|
|
961
|
-
return Z_STREAM_ERROR;
|
|
962
|
-
}
|
|
963
|
-
state = strm.state;
|
|
964
|
-
if (state.mode === TYPE) {
|
|
965
|
-
state.mode = TYPEDO;
|
|
966
|
-
}
|
|
967
|
-
put = strm.next_out;
|
|
968
|
-
output = strm.output;
|
|
969
|
-
left = strm.avail_out;
|
|
970
|
-
next = strm.next_in;
|
|
971
|
-
input = strm.input;
|
|
972
|
-
have = strm.avail_in;
|
|
973
|
-
hold = state.hold;
|
|
974
|
-
bits = state.bits;
|
|
975
|
-
_in = have;
|
|
976
|
-
_out = left;
|
|
977
|
-
ret = Z_OK;
|
|
978
|
-
inf_leave:
|
|
979
|
-
for (; ; ) {
|
|
980
|
-
switch (state.mode) {
|
|
981
|
-
case HEAD:
|
|
982
|
-
if (state.wrap === 0) {
|
|
983
|
-
state.mode = TYPEDO;
|
|
984
|
-
break;
|
|
985
|
-
}
|
|
986
|
-
while (bits < 16) {
|
|
987
|
-
if (have === 0) {
|
|
988
|
-
break inf_leave;
|
|
989
|
-
}
|
|
990
|
-
have--;
|
|
991
|
-
hold += input[next++] << bits;
|
|
992
|
-
bits += 8;
|
|
993
|
-
}
|
|
994
|
-
if (state.wrap & 2 && hold === 35615) {
|
|
995
|
-
if (state.wbits === 0) {
|
|
996
|
-
state.wbits = 15;
|
|
997
|
-
}
|
|
998
|
-
state.check = 0;
|
|
999
|
-
hbuf[0] = hold & 255;
|
|
1000
|
-
hbuf[1] = hold >>> 8 & 255;
|
|
1001
|
-
state.check = crc32(state.check, hbuf, 2, 0);
|
|
1002
|
-
hold = 0;
|
|
1003
|
-
bits = 0;
|
|
1004
|
-
state.mode = FLAGS;
|
|
1005
|
-
break;
|
|
1006
|
-
}
|
|
1007
|
-
if (state.head) {
|
|
1008
|
-
state.head.done = false;
|
|
1009
|
-
}
|
|
1010
|
-
if (!(state.wrap & 1) || /* check if zlib header allowed */
|
|
1011
|
-
(((hold & 255) << 8) + (hold >> 8)) % 31) {
|
|
1012
|
-
strm.msg = "incorrect header check";
|
|
1013
|
-
state.mode = BAD;
|
|
1014
|
-
break;
|
|
1015
|
-
}
|
|
1016
|
-
if ((hold & 15) !== Z_DEFLATED) {
|
|
1017
|
-
strm.msg = "unknown compression method";
|
|
1018
|
-
state.mode = BAD;
|
|
1019
|
-
break;
|
|
1020
|
-
}
|
|
1021
|
-
hold >>>= 4;
|
|
1022
|
-
bits -= 4;
|
|
1023
|
-
len = (hold & 15) + 8;
|
|
1024
|
-
if (state.wbits === 0) {
|
|
1025
|
-
state.wbits = len;
|
|
1026
|
-
}
|
|
1027
|
-
if (len > 15 || len > state.wbits) {
|
|
1028
|
-
strm.msg = "invalid window size";
|
|
1029
|
-
state.mode = BAD;
|
|
1030
|
-
break;
|
|
1031
|
-
}
|
|
1032
|
-
state.dmax = 1 << state.wbits;
|
|
1033
|
-
state.flags = 0;
|
|
1034
|
-
strm.adler = state.check = 1;
|
|
1035
|
-
state.mode = hold & 512 ? DICTID : TYPE;
|
|
1036
|
-
hold = 0;
|
|
1037
|
-
bits = 0;
|
|
1038
|
-
break;
|
|
1039
|
-
case FLAGS:
|
|
1040
|
-
while (bits < 16) {
|
|
1041
|
-
if (have === 0) {
|
|
1042
|
-
break inf_leave;
|
|
1043
|
-
}
|
|
1044
|
-
have--;
|
|
1045
|
-
hold += input[next++] << bits;
|
|
1046
|
-
bits += 8;
|
|
1047
|
-
}
|
|
1048
|
-
state.flags = hold;
|
|
1049
|
-
if ((state.flags & 255) !== Z_DEFLATED) {
|
|
1050
|
-
strm.msg = "unknown compression method";
|
|
1051
|
-
state.mode = BAD;
|
|
1052
|
-
break;
|
|
1053
|
-
}
|
|
1054
|
-
if (state.flags & 57344) {
|
|
1055
|
-
strm.msg = "unknown header flags set";
|
|
1056
|
-
state.mode = BAD;
|
|
1057
|
-
break;
|
|
1058
|
-
}
|
|
1059
|
-
if (state.head) {
|
|
1060
|
-
state.head.text = hold >> 8 & 1;
|
|
1061
|
-
}
|
|
1062
|
-
if (state.flags & 512 && state.wrap & 4) {
|
|
1063
|
-
hbuf[0] = hold & 255;
|
|
1064
|
-
hbuf[1] = hold >>> 8 & 255;
|
|
1065
|
-
state.check = crc32(state.check, hbuf, 2, 0);
|
|
1066
|
-
}
|
|
1067
|
-
hold = 0;
|
|
1068
|
-
bits = 0;
|
|
1069
|
-
state.mode = TIME;
|
|
1070
|
-
case TIME:
|
|
1071
|
-
while (bits < 32) {
|
|
1072
|
-
if (have === 0) {
|
|
1073
|
-
break inf_leave;
|
|
1074
|
-
}
|
|
1075
|
-
have--;
|
|
1076
|
-
hold += input[next++] << bits;
|
|
1077
|
-
bits += 8;
|
|
1078
|
-
}
|
|
1079
|
-
if (state.head) {
|
|
1080
|
-
state.head.time = hold;
|
|
1081
|
-
}
|
|
1082
|
-
if (state.flags & 512 && state.wrap & 4) {
|
|
1083
|
-
hbuf[0] = hold & 255;
|
|
1084
|
-
hbuf[1] = hold >>> 8 & 255;
|
|
1085
|
-
hbuf[2] = hold >>> 16 & 255;
|
|
1086
|
-
hbuf[3] = hold >>> 24 & 255;
|
|
1087
|
-
state.check = crc32(state.check, hbuf, 4, 0);
|
|
1088
|
-
}
|
|
1089
|
-
hold = 0;
|
|
1090
|
-
bits = 0;
|
|
1091
|
-
state.mode = OS;
|
|
1092
|
-
case OS:
|
|
1093
|
-
while (bits < 16) {
|
|
1094
|
-
if (have === 0) {
|
|
1095
|
-
break inf_leave;
|
|
1096
|
-
}
|
|
1097
|
-
have--;
|
|
1098
|
-
hold += input[next++] << bits;
|
|
1099
|
-
bits += 8;
|
|
1100
|
-
}
|
|
1101
|
-
if (state.head) {
|
|
1102
|
-
state.head.xflags = hold & 255;
|
|
1103
|
-
state.head.os = hold >> 8;
|
|
1104
|
-
}
|
|
1105
|
-
if (state.flags & 512 && state.wrap & 4) {
|
|
1106
|
-
hbuf[0] = hold & 255;
|
|
1107
|
-
hbuf[1] = hold >>> 8 & 255;
|
|
1108
|
-
state.check = crc32(state.check, hbuf, 2, 0);
|
|
1109
|
-
}
|
|
1110
|
-
hold = 0;
|
|
1111
|
-
bits = 0;
|
|
1112
|
-
state.mode = EXLEN;
|
|
1113
|
-
case EXLEN:
|
|
1114
|
-
if (state.flags & 1024) {
|
|
1115
|
-
while (bits < 16) {
|
|
1116
|
-
if (have === 0) {
|
|
1117
|
-
break inf_leave;
|
|
1118
|
-
}
|
|
1119
|
-
have--;
|
|
1120
|
-
hold += input[next++] << bits;
|
|
1121
|
-
bits += 8;
|
|
1122
|
-
}
|
|
1123
|
-
state.length = hold;
|
|
1124
|
-
if (state.head) {
|
|
1125
|
-
state.head.extra_len = hold;
|
|
1126
|
-
}
|
|
1127
|
-
if (state.flags & 512 && state.wrap & 4) {
|
|
1128
|
-
hbuf[0] = hold & 255;
|
|
1129
|
-
hbuf[1] = hold >>> 8 & 255;
|
|
1130
|
-
state.check = crc32(state.check, hbuf, 2, 0);
|
|
1131
|
-
}
|
|
1132
|
-
hold = 0;
|
|
1133
|
-
bits = 0;
|
|
1134
|
-
} else if (state.head) {
|
|
1135
|
-
state.head.extra = null;
|
|
1136
|
-
}
|
|
1137
|
-
state.mode = EXTRA;
|
|
1138
|
-
case EXTRA:
|
|
1139
|
-
if (state.flags & 1024) {
|
|
1140
|
-
copy = state.length;
|
|
1141
|
-
if (copy > have) {
|
|
1142
|
-
copy = have;
|
|
1143
|
-
}
|
|
1144
|
-
if (copy) {
|
|
1145
|
-
if (state.head) {
|
|
1146
|
-
len = state.head.extra_len - state.length;
|
|
1147
|
-
if (!state.head.extra) {
|
|
1148
|
-
state.head.extra = new Uint8Array(state.head.extra_len);
|
|
1149
|
-
}
|
|
1150
|
-
state.head.extra.set(
|
|
1151
|
-
input.subarray(
|
|
1152
|
-
next,
|
|
1153
|
-
// extra field is limited to 65536 bytes
|
|
1154
|
-
// - no need for additional size check
|
|
1155
|
-
next + copy
|
|
1156
|
-
),
|
|
1157
|
-
/*len + copy > state.head.extra_max - len ? state.head.extra_max : copy,*/
|
|
1158
|
-
len
|
|
1159
|
-
);
|
|
1160
|
-
}
|
|
1161
|
-
if (state.flags & 512 && state.wrap & 4) {
|
|
1162
|
-
state.check = crc32(state.check, input, copy, next);
|
|
1163
|
-
}
|
|
1164
|
-
have -= copy;
|
|
1165
|
-
next += copy;
|
|
1166
|
-
state.length -= copy;
|
|
1167
|
-
}
|
|
1168
|
-
if (state.length) {
|
|
1169
|
-
break inf_leave;
|
|
1170
|
-
}
|
|
1171
|
-
}
|
|
1172
|
-
state.length = 0;
|
|
1173
|
-
state.mode = NAME;
|
|
1174
|
-
case NAME:
|
|
1175
|
-
if (state.flags & 2048) {
|
|
1176
|
-
if (have === 0) {
|
|
1177
|
-
break inf_leave;
|
|
1178
|
-
}
|
|
1179
|
-
copy = 0;
|
|
1180
|
-
do {
|
|
1181
|
-
len = input[next + copy++];
|
|
1182
|
-
if (state.head && len && state.length < 65536) {
|
|
1183
|
-
state.head.name += String.fromCharCode(len);
|
|
1184
|
-
}
|
|
1185
|
-
} while (len && copy < have);
|
|
1186
|
-
if (state.flags & 512 && state.wrap & 4) {
|
|
1187
|
-
state.check = crc32(state.check, input, copy, next);
|
|
1188
|
-
}
|
|
1189
|
-
have -= copy;
|
|
1190
|
-
next += copy;
|
|
1191
|
-
if (len) {
|
|
1192
|
-
break inf_leave;
|
|
1193
|
-
}
|
|
1194
|
-
} else if (state.head) {
|
|
1195
|
-
state.head.name = null;
|
|
1196
|
-
}
|
|
1197
|
-
state.length = 0;
|
|
1198
|
-
state.mode = COMMENT;
|
|
1199
|
-
case COMMENT:
|
|
1200
|
-
if (state.flags & 4096) {
|
|
1201
|
-
if (have === 0) {
|
|
1202
|
-
break inf_leave;
|
|
1203
|
-
}
|
|
1204
|
-
copy = 0;
|
|
1205
|
-
do {
|
|
1206
|
-
len = input[next + copy++];
|
|
1207
|
-
if (state.head && len && state.length < 65536) {
|
|
1208
|
-
state.head.comment += String.fromCharCode(len);
|
|
1209
|
-
}
|
|
1210
|
-
} while (len && copy < have);
|
|
1211
|
-
if (state.flags & 512 && state.wrap & 4) {
|
|
1212
|
-
state.check = crc32(state.check, input, copy, next);
|
|
1213
|
-
}
|
|
1214
|
-
have -= copy;
|
|
1215
|
-
next += copy;
|
|
1216
|
-
if (len) {
|
|
1217
|
-
break inf_leave;
|
|
1218
|
-
}
|
|
1219
|
-
} else if (state.head) {
|
|
1220
|
-
state.head.comment = null;
|
|
1221
|
-
}
|
|
1222
|
-
state.mode = HCRC;
|
|
1223
|
-
case HCRC:
|
|
1224
|
-
if (state.flags & 512) {
|
|
1225
|
-
while (bits < 16) {
|
|
1226
|
-
if (have === 0) {
|
|
1227
|
-
break inf_leave;
|
|
1228
|
-
}
|
|
1229
|
-
have--;
|
|
1230
|
-
hold += input[next++] << bits;
|
|
1231
|
-
bits += 8;
|
|
1232
|
-
}
|
|
1233
|
-
if (state.wrap & 4 && hold !== (state.check & 65535)) {
|
|
1234
|
-
strm.msg = "header crc mismatch";
|
|
1235
|
-
state.mode = BAD;
|
|
1236
|
-
break;
|
|
1237
|
-
}
|
|
1238
|
-
hold = 0;
|
|
1239
|
-
bits = 0;
|
|
1240
|
-
}
|
|
1241
|
-
if (state.head) {
|
|
1242
|
-
state.head.hcrc = state.flags >> 9 & 1;
|
|
1243
|
-
state.head.done = true;
|
|
1244
|
-
}
|
|
1245
|
-
strm.adler = state.check = 0;
|
|
1246
|
-
state.mode = TYPE;
|
|
1247
|
-
break;
|
|
1248
|
-
case DICTID:
|
|
1249
|
-
while (bits < 32) {
|
|
1250
|
-
if (have === 0) {
|
|
1251
|
-
break inf_leave;
|
|
1252
|
-
}
|
|
1253
|
-
have--;
|
|
1254
|
-
hold += input[next++] << bits;
|
|
1255
|
-
bits += 8;
|
|
1256
|
-
}
|
|
1257
|
-
strm.adler = state.check = zswap32(hold);
|
|
1258
|
-
hold = 0;
|
|
1259
|
-
bits = 0;
|
|
1260
|
-
state.mode = DICT;
|
|
1261
|
-
case DICT:
|
|
1262
|
-
if (state.havedict === 0) {
|
|
1263
|
-
strm.next_out = put;
|
|
1264
|
-
strm.avail_out = left;
|
|
1265
|
-
strm.next_in = next;
|
|
1266
|
-
strm.avail_in = have;
|
|
1267
|
-
state.hold = hold;
|
|
1268
|
-
state.bits = bits;
|
|
1269
|
-
return Z_NEED_DICT;
|
|
1270
|
-
}
|
|
1271
|
-
strm.adler = state.check = 1;
|
|
1272
|
-
state.mode = TYPE;
|
|
1273
|
-
case TYPE:
|
|
1274
|
-
if (flush === Z_BLOCK || flush === Z_TREES) {
|
|
1275
|
-
break inf_leave;
|
|
1276
|
-
}
|
|
1277
|
-
case TYPEDO:
|
|
1278
|
-
if (state.last) {
|
|
1279
|
-
hold >>>= bits & 7;
|
|
1280
|
-
bits -= bits & 7;
|
|
1281
|
-
state.mode = CHECK;
|
|
1282
|
-
break;
|
|
1283
|
-
}
|
|
1284
|
-
while (bits < 3) {
|
|
1285
|
-
if (have === 0) {
|
|
1286
|
-
break inf_leave;
|
|
1287
|
-
}
|
|
1288
|
-
have--;
|
|
1289
|
-
hold += input[next++] << bits;
|
|
1290
|
-
bits += 8;
|
|
1291
|
-
}
|
|
1292
|
-
state.last = hold & 1;
|
|
1293
|
-
hold >>>= 1;
|
|
1294
|
-
bits -= 1;
|
|
1295
|
-
switch (hold & 3) {
|
|
1296
|
-
case 0:
|
|
1297
|
-
state.mode = STORED;
|
|
1298
|
-
break;
|
|
1299
|
-
case 1:
|
|
1300
|
-
fixedtables(state);
|
|
1301
|
-
state.mode = LEN_;
|
|
1302
|
-
if (flush === Z_TREES) {
|
|
1303
|
-
hold >>>= 2;
|
|
1304
|
-
bits -= 2;
|
|
1305
|
-
break inf_leave;
|
|
1306
|
-
}
|
|
1307
|
-
break;
|
|
1308
|
-
case 2:
|
|
1309
|
-
state.mode = TABLE;
|
|
1310
|
-
break;
|
|
1311
|
-
case 3:
|
|
1312
|
-
strm.msg = "invalid block type";
|
|
1313
|
-
state.mode = BAD;
|
|
1314
|
-
}
|
|
1315
|
-
hold >>>= 2;
|
|
1316
|
-
bits -= 2;
|
|
1317
|
-
break;
|
|
1318
|
-
case STORED:
|
|
1319
|
-
hold >>>= bits & 7;
|
|
1320
|
-
bits -= bits & 7;
|
|
1321
|
-
while (bits < 32) {
|
|
1322
|
-
if (have === 0) {
|
|
1323
|
-
break inf_leave;
|
|
1324
|
-
}
|
|
1325
|
-
have--;
|
|
1326
|
-
hold += input[next++] << bits;
|
|
1327
|
-
bits += 8;
|
|
1328
|
-
}
|
|
1329
|
-
if ((hold & 65535) !== (hold >>> 16 ^ 65535)) {
|
|
1330
|
-
strm.msg = "invalid stored block lengths";
|
|
1331
|
-
state.mode = BAD;
|
|
1332
|
-
break;
|
|
1333
|
-
}
|
|
1334
|
-
state.length = hold & 65535;
|
|
1335
|
-
hold = 0;
|
|
1336
|
-
bits = 0;
|
|
1337
|
-
state.mode = COPY_;
|
|
1338
|
-
if (flush === Z_TREES) {
|
|
1339
|
-
break inf_leave;
|
|
1340
|
-
}
|
|
1341
|
-
case COPY_:
|
|
1342
|
-
state.mode = COPY;
|
|
1343
|
-
case COPY:
|
|
1344
|
-
copy = state.length;
|
|
1345
|
-
if (copy) {
|
|
1346
|
-
if (copy > have) {
|
|
1347
|
-
copy = have;
|
|
1348
|
-
}
|
|
1349
|
-
if (copy > left) {
|
|
1350
|
-
copy = left;
|
|
1351
|
-
}
|
|
1352
|
-
if (copy === 0) {
|
|
1353
|
-
break inf_leave;
|
|
1354
|
-
}
|
|
1355
|
-
output.set(input.subarray(next, next + copy), put);
|
|
1356
|
-
have -= copy;
|
|
1357
|
-
next += copy;
|
|
1358
|
-
left -= copy;
|
|
1359
|
-
put += copy;
|
|
1360
|
-
state.length -= copy;
|
|
1361
|
-
break;
|
|
1362
|
-
}
|
|
1363
|
-
state.mode = TYPE;
|
|
1364
|
-
break;
|
|
1365
|
-
case TABLE:
|
|
1366
|
-
while (bits < 14) {
|
|
1367
|
-
if (have === 0) {
|
|
1368
|
-
break inf_leave;
|
|
1369
|
-
}
|
|
1370
|
-
have--;
|
|
1371
|
-
hold += input[next++] << bits;
|
|
1372
|
-
bits += 8;
|
|
1373
|
-
}
|
|
1374
|
-
state.nlen = (hold & 31) + 257;
|
|
1375
|
-
hold >>>= 5;
|
|
1376
|
-
bits -= 5;
|
|
1377
|
-
state.ndist = (hold & 31) + 1;
|
|
1378
|
-
hold >>>= 5;
|
|
1379
|
-
bits -= 5;
|
|
1380
|
-
state.ncode = (hold & 15) + 4;
|
|
1381
|
-
hold >>>= 4;
|
|
1382
|
-
bits -= 4;
|
|
1383
|
-
if (state.nlen > 286 || state.ndist > 30) {
|
|
1384
|
-
strm.msg = "too many length or distance symbols";
|
|
1385
|
-
state.mode = BAD;
|
|
1386
|
-
break;
|
|
1387
|
-
}
|
|
1388
|
-
state.have = 0;
|
|
1389
|
-
state.mode = LENLENS;
|
|
1390
|
-
case LENLENS:
|
|
1391
|
-
while (state.have < state.ncode) {
|
|
1392
|
-
while (bits < 3) {
|
|
1393
|
-
if (have === 0) {
|
|
1394
|
-
break inf_leave;
|
|
1395
|
-
}
|
|
1396
|
-
have--;
|
|
1397
|
-
hold += input[next++] << bits;
|
|
1398
|
-
bits += 8;
|
|
1399
|
-
}
|
|
1400
|
-
state.lens[order[state.have++]] = hold & 7;
|
|
1401
|
-
hold >>>= 3;
|
|
1402
|
-
bits -= 3;
|
|
1403
|
-
}
|
|
1404
|
-
while (state.have < 19) {
|
|
1405
|
-
state.lens[order[state.have++]] = 0;
|
|
1406
|
-
}
|
|
1407
|
-
state.lencode = state.lendyn;
|
|
1408
|
-
state.lenbits = 7;
|
|
1409
|
-
opts = { bits: state.lenbits };
|
|
1410
|
-
ret = inflate_table(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts);
|
|
1411
|
-
state.lenbits = opts.bits;
|
|
1412
|
-
if (ret) {
|
|
1413
|
-
strm.msg = "invalid code lengths set";
|
|
1414
|
-
state.mode = BAD;
|
|
1415
|
-
break;
|
|
1416
|
-
}
|
|
1417
|
-
state.have = 0;
|
|
1418
|
-
state.mode = CODELENS;
|
|
1419
|
-
case CODELENS:
|
|
1420
|
-
while (state.have < state.nlen + state.ndist) {
|
|
1421
|
-
for (; ; ) {
|
|
1422
|
-
here = state.lencode[hold & (1 << state.lenbits) - 1];
|
|
1423
|
-
here_bits = here >>> 24;
|
|
1424
|
-
here_op = here >>> 16 & 255;
|
|
1425
|
-
here_val = here & 65535;
|
|
1426
|
-
if (here_bits <= bits) {
|
|
1427
|
-
break;
|
|
1428
|
-
}
|
|
1429
|
-
if (have === 0) {
|
|
1430
|
-
break inf_leave;
|
|
1431
|
-
}
|
|
1432
|
-
have--;
|
|
1433
|
-
hold += input[next++] << bits;
|
|
1434
|
-
bits += 8;
|
|
1435
|
-
}
|
|
1436
|
-
if (here_val < 16) {
|
|
1437
|
-
hold >>>= here_bits;
|
|
1438
|
-
bits -= here_bits;
|
|
1439
|
-
state.lens[state.have++] = here_val;
|
|
1440
|
-
} else {
|
|
1441
|
-
if (here_val === 16) {
|
|
1442
|
-
n = here_bits + 2;
|
|
1443
|
-
while (bits < n) {
|
|
1444
|
-
if (have === 0) {
|
|
1445
|
-
break inf_leave;
|
|
1446
|
-
}
|
|
1447
|
-
have--;
|
|
1448
|
-
hold += input[next++] << bits;
|
|
1449
|
-
bits += 8;
|
|
1450
|
-
}
|
|
1451
|
-
hold >>>= here_bits;
|
|
1452
|
-
bits -= here_bits;
|
|
1453
|
-
if (state.have === 0) {
|
|
1454
|
-
strm.msg = "invalid bit length repeat";
|
|
1455
|
-
state.mode = BAD;
|
|
1456
|
-
break;
|
|
1457
|
-
}
|
|
1458
|
-
len = state.lens[state.have - 1];
|
|
1459
|
-
copy = 3 + (hold & 3);
|
|
1460
|
-
hold >>>= 2;
|
|
1461
|
-
bits -= 2;
|
|
1462
|
-
} else if (here_val === 17) {
|
|
1463
|
-
n = here_bits + 3;
|
|
1464
|
-
while (bits < n) {
|
|
1465
|
-
if (have === 0) {
|
|
1466
|
-
break inf_leave;
|
|
1467
|
-
}
|
|
1468
|
-
have--;
|
|
1469
|
-
hold += input[next++] << bits;
|
|
1470
|
-
bits += 8;
|
|
1471
|
-
}
|
|
1472
|
-
hold >>>= here_bits;
|
|
1473
|
-
bits -= here_bits;
|
|
1474
|
-
len = 0;
|
|
1475
|
-
copy = 3 + (hold & 7);
|
|
1476
|
-
hold >>>= 3;
|
|
1477
|
-
bits -= 3;
|
|
1478
|
-
} else {
|
|
1479
|
-
n = here_bits + 7;
|
|
1480
|
-
while (bits < n) {
|
|
1481
|
-
if (have === 0) {
|
|
1482
|
-
break inf_leave;
|
|
1483
|
-
}
|
|
1484
|
-
have--;
|
|
1485
|
-
hold += input[next++] << bits;
|
|
1486
|
-
bits += 8;
|
|
1487
|
-
}
|
|
1488
|
-
hold >>>= here_bits;
|
|
1489
|
-
bits -= here_bits;
|
|
1490
|
-
len = 0;
|
|
1491
|
-
copy = 11 + (hold & 127);
|
|
1492
|
-
hold >>>= 7;
|
|
1493
|
-
bits -= 7;
|
|
1494
|
-
}
|
|
1495
|
-
if (state.have + copy > state.nlen + state.ndist) {
|
|
1496
|
-
strm.msg = "invalid bit length repeat";
|
|
1497
|
-
state.mode = BAD;
|
|
1498
|
-
break;
|
|
1499
|
-
}
|
|
1500
|
-
while (copy--) {
|
|
1501
|
-
state.lens[state.have++] = len;
|
|
1502
|
-
}
|
|
1503
|
-
}
|
|
1504
|
-
}
|
|
1505
|
-
if (state.mode === BAD) {
|
|
1506
|
-
break;
|
|
1507
|
-
}
|
|
1508
|
-
if (state.lens[256] === 0) {
|
|
1509
|
-
strm.msg = "invalid code -- missing end-of-block";
|
|
1510
|
-
state.mode = BAD;
|
|
1511
|
-
break;
|
|
1512
|
-
}
|
|
1513
|
-
state.lenbits = 9;
|
|
1514
|
-
opts = { bits: state.lenbits };
|
|
1515
|
-
ret = inflate_table(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts);
|
|
1516
|
-
state.lenbits = opts.bits;
|
|
1517
|
-
if (ret) {
|
|
1518
|
-
strm.msg = "invalid literal/lengths set";
|
|
1519
|
-
state.mode = BAD;
|
|
1520
|
-
break;
|
|
1521
|
-
}
|
|
1522
|
-
state.distbits = 6;
|
|
1523
|
-
state.distcode = state.distdyn;
|
|
1524
|
-
opts = { bits: state.distbits };
|
|
1525
|
-
ret = inflate_table(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts);
|
|
1526
|
-
state.distbits = opts.bits;
|
|
1527
|
-
if (ret) {
|
|
1528
|
-
strm.msg = "invalid distances set";
|
|
1529
|
-
state.mode = BAD;
|
|
1530
|
-
break;
|
|
1531
|
-
}
|
|
1532
|
-
state.mode = LEN_;
|
|
1533
|
-
if (flush === Z_TREES) {
|
|
1534
|
-
break inf_leave;
|
|
1535
|
-
}
|
|
1536
|
-
case LEN_:
|
|
1537
|
-
state.mode = LEN;
|
|
1538
|
-
case LEN:
|
|
1539
|
-
if (have >= 6 && left >= 258) {
|
|
1540
|
-
strm.next_out = put;
|
|
1541
|
-
strm.avail_out = left;
|
|
1542
|
-
strm.next_in = next;
|
|
1543
|
-
strm.avail_in = have;
|
|
1544
|
-
state.hold = hold;
|
|
1545
|
-
state.bits = bits;
|
|
1546
|
-
inflate_fast(strm, _out);
|
|
1547
|
-
put = strm.next_out;
|
|
1548
|
-
output = strm.output;
|
|
1549
|
-
left = strm.avail_out;
|
|
1550
|
-
next = strm.next_in;
|
|
1551
|
-
input = strm.input;
|
|
1552
|
-
have = strm.avail_in;
|
|
1553
|
-
hold = state.hold;
|
|
1554
|
-
bits = state.bits;
|
|
1555
|
-
if (state.mode === TYPE) {
|
|
1556
|
-
state.back = -1;
|
|
1557
|
-
}
|
|
1558
|
-
break;
|
|
1559
|
-
}
|
|
1560
|
-
state.back = 0;
|
|
1561
|
-
for (; ; ) {
|
|
1562
|
-
here = state.lencode[hold & (1 << state.lenbits) - 1];
|
|
1563
|
-
here_bits = here >>> 24;
|
|
1564
|
-
here_op = here >>> 16 & 255;
|
|
1565
|
-
here_val = here & 65535;
|
|
1566
|
-
if (here_bits <= bits) {
|
|
1567
|
-
break;
|
|
1568
|
-
}
|
|
1569
|
-
if (have === 0) {
|
|
1570
|
-
break inf_leave;
|
|
1571
|
-
}
|
|
1572
|
-
have--;
|
|
1573
|
-
hold += input[next++] << bits;
|
|
1574
|
-
bits += 8;
|
|
1575
|
-
}
|
|
1576
|
-
if (here_op && (here_op & 240) === 0) {
|
|
1577
|
-
last_bits = here_bits;
|
|
1578
|
-
last_op = here_op;
|
|
1579
|
-
last_val = here_val;
|
|
1580
|
-
for (; ; ) {
|
|
1581
|
-
here = state.lencode[last_val + ((hold & (1 << last_bits + last_op) - 1) >> last_bits)];
|
|
1582
|
-
here_bits = here >>> 24;
|
|
1583
|
-
here_op = here >>> 16 & 255;
|
|
1584
|
-
here_val = here & 65535;
|
|
1585
|
-
if (last_bits + here_bits <= bits) {
|
|
1586
|
-
break;
|
|
1587
|
-
}
|
|
1588
|
-
if (have === 0) {
|
|
1589
|
-
break inf_leave;
|
|
1590
|
-
}
|
|
1591
|
-
have--;
|
|
1592
|
-
hold += input[next++] << bits;
|
|
1593
|
-
bits += 8;
|
|
1594
|
-
}
|
|
1595
|
-
hold >>>= last_bits;
|
|
1596
|
-
bits -= last_bits;
|
|
1597
|
-
state.back += last_bits;
|
|
1598
|
-
}
|
|
1599
|
-
hold >>>= here_bits;
|
|
1600
|
-
bits -= here_bits;
|
|
1601
|
-
state.back += here_bits;
|
|
1602
|
-
state.length = here_val;
|
|
1603
|
-
if (here_op === 0) {
|
|
1604
|
-
state.mode = LIT;
|
|
1605
|
-
break;
|
|
1606
|
-
}
|
|
1607
|
-
if (here_op & 32) {
|
|
1608
|
-
state.back = -1;
|
|
1609
|
-
state.mode = TYPE;
|
|
1610
|
-
break;
|
|
1611
|
-
}
|
|
1612
|
-
if (here_op & 64) {
|
|
1613
|
-
strm.msg = "invalid literal/length code";
|
|
1614
|
-
state.mode = BAD;
|
|
1615
|
-
break;
|
|
1616
|
-
}
|
|
1617
|
-
state.extra = here_op & 15;
|
|
1618
|
-
state.mode = LENEXT;
|
|
1619
|
-
case LENEXT:
|
|
1620
|
-
if (state.extra) {
|
|
1621
|
-
n = state.extra;
|
|
1622
|
-
while (bits < n) {
|
|
1623
|
-
if (have === 0) {
|
|
1624
|
-
break inf_leave;
|
|
1625
|
-
}
|
|
1626
|
-
have--;
|
|
1627
|
-
hold += input[next++] << bits;
|
|
1628
|
-
bits += 8;
|
|
1629
|
-
}
|
|
1630
|
-
state.length += hold & (1 << state.extra) - 1;
|
|
1631
|
-
hold >>>= state.extra;
|
|
1632
|
-
bits -= state.extra;
|
|
1633
|
-
state.back += state.extra;
|
|
1634
|
-
}
|
|
1635
|
-
state.was = state.length;
|
|
1636
|
-
state.mode = DIST;
|
|
1637
|
-
case DIST:
|
|
1638
|
-
for (; ; ) {
|
|
1639
|
-
here = state.distcode[hold & (1 << state.distbits) - 1];
|
|
1640
|
-
here_bits = here >>> 24;
|
|
1641
|
-
here_op = here >>> 16 & 255;
|
|
1642
|
-
here_val = here & 65535;
|
|
1643
|
-
if (here_bits <= bits) {
|
|
1644
|
-
break;
|
|
1645
|
-
}
|
|
1646
|
-
if (have === 0) {
|
|
1647
|
-
break inf_leave;
|
|
1648
|
-
}
|
|
1649
|
-
have--;
|
|
1650
|
-
hold += input[next++] << bits;
|
|
1651
|
-
bits += 8;
|
|
1652
|
-
}
|
|
1653
|
-
if ((here_op & 240) === 0) {
|
|
1654
|
-
last_bits = here_bits;
|
|
1655
|
-
last_op = here_op;
|
|
1656
|
-
last_val = here_val;
|
|
1657
|
-
for (; ; ) {
|
|
1658
|
-
here = state.distcode[last_val + ((hold & (1 << last_bits + last_op) - 1) >> last_bits)];
|
|
1659
|
-
here_bits = here >>> 24;
|
|
1660
|
-
here_op = here >>> 16 & 255;
|
|
1661
|
-
here_val = here & 65535;
|
|
1662
|
-
if (last_bits + here_bits <= bits) {
|
|
1663
|
-
break;
|
|
1664
|
-
}
|
|
1665
|
-
if (have === 0) {
|
|
1666
|
-
break inf_leave;
|
|
1667
|
-
}
|
|
1668
|
-
have--;
|
|
1669
|
-
hold += input[next++] << bits;
|
|
1670
|
-
bits += 8;
|
|
1671
|
-
}
|
|
1672
|
-
hold >>>= last_bits;
|
|
1673
|
-
bits -= last_bits;
|
|
1674
|
-
state.back += last_bits;
|
|
1675
|
-
}
|
|
1676
|
-
hold >>>= here_bits;
|
|
1677
|
-
bits -= here_bits;
|
|
1678
|
-
state.back += here_bits;
|
|
1679
|
-
if (here_op & 64) {
|
|
1680
|
-
strm.msg = "invalid distance code";
|
|
1681
|
-
state.mode = BAD;
|
|
1682
|
-
break;
|
|
1683
|
-
}
|
|
1684
|
-
state.offset = here_val;
|
|
1685
|
-
state.extra = here_op & 15;
|
|
1686
|
-
state.mode = DISTEXT;
|
|
1687
|
-
case DISTEXT:
|
|
1688
|
-
if (state.extra) {
|
|
1689
|
-
n = state.extra;
|
|
1690
|
-
while (bits < n) {
|
|
1691
|
-
if (have === 0) {
|
|
1692
|
-
break inf_leave;
|
|
1693
|
-
}
|
|
1694
|
-
have--;
|
|
1695
|
-
hold += input[next++] << bits;
|
|
1696
|
-
bits += 8;
|
|
1697
|
-
}
|
|
1698
|
-
state.offset += hold & (1 << state.extra) - 1;
|
|
1699
|
-
hold >>>= state.extra;
|
|
1700
|
-
bits -= state.extra;
|
|
1701
|
-
state.back += state.extra;
|
|
1702
|
-
}
|
|
1703
|
-
if (state.offset > state.dmax) {
|
|
1704
|
-
strm.msg = "invalid distance too far back";
|
|
1705
|
-
state.mode = BAD;
|
|
1706
|
-
break;
|
|
1707
|
-
}
|
|
1708
|
-
state.mode = MATCH;
|
|
1709
|
-
case MATCH:
|
|
1710
|
-
if (left === 0) {
|
|
1711
|
-
break inf_leave;
|
|
1712
|
-
}
|
|
1713
|
-
copy = _out - left;
|
|
1714
|
-
if (state.offset > copy) {
|
|
1715
|
-
copy = state.offset - copy;
|
|
1716
|
-
if (copy > state.whave) {
|
|
1717
|
-
if (state.sane) {
|
|
1718
|
-
strm.msg = "invalid distance too far back";
|
|
1719
|
-
state.mode = BAD;
|
|
1720
|
-
break;
|
|
1721
|
-
}
|
|
1722
|
-
}
|
|
1723
|
-
if (copy > state.wnext) {
|
|
1724
|
-
copy -= state.wnext;
|
|
1725
|
-
from = state.wsize - copy;
|
|
1726
|
-
} else {
|
|
1727
|
-
from = state.wnext - copy;
|
|
1728
|
-
}
|
|
1729
|
-
if (copy > state.length) {
|
|
1730
|
-
copy = state.length;
|
|
1731
|
-
}
|
|
1732
|
-
from_source = state.window;
|
|
1733
|
-
} else {
|
|
1734
|
-
from_source = output;
|
|
1735
|
-
from = put - state.offset;
|
|
1736
|
-
copy = state.length;
|
|
1737
|
-
}
|
|
1738
|
-
if (copy > left) {
|
|
1739
|
-
copy = left;
|
|
1740
|
-
}
|
|
1741
|
-
left -= copy;
|
|
1742
|
-
state.length -= copy;
|
|
1743
|
-
do {
|
|
1744
|
-
output[put++] = from_source[from++];
|
|
1745
|
-
} while (--copy);
|
|
1746
|
-
if (state.length === 0) {
|
|
1747
|
-
state.mode = LEN;
|
|
1748
|
-
}
|
|
1749
|
-
break;
|
|
1750
|
-
case LIT:
|
|
1751
|
-
if (left === 0) {
|
|
1752
|
-
break inf_leave;
|
|
1753
|
-
}
|
|
1754
|
-
output[put++] = state.length;
|
|
1755
|
-
left--;
|
|
1756
|
-
state.mode = LEN;
|
|
1757
|
-
break;
|
|
1758
|
-
case CHECK:
|
|
1759
|
-
if (state.wrap) {
|
|
1760
|
-
while (bits < 32) {
|
|
1761
|
-
if (have === 0) {
|
|
1762
|
-
break inf_leave;
|
|
1763
|
-
}
|
|
1764
|
-
have--;
|
|
1765
|
-
hold |= input[next++] << bits;
|
|
1766
|
-
bits += 8;
|
|
1767
|
-
}
|
|
1768
|
-
_out -= left;
|
|
1769
|
-
strm.total_out += _out;
|
|
1770
|
-
state.total += _out;
|
|
1771
|
-
if (state.wrap & 4 && _out) {
|
|
1772
|
-
strm.adler = state.check = /*UPDATE_CHECK(state.check, put - _out, _out);*/
|
|
1773
|
-
state.flags ? crc32(state.check, output, _out, put - _out) : adler32(state.check, output, _out, put - _out);
|
|
1774
|
-
}
|
|
1775
|
-
_out = left;
|
|
1776
|
-
if (state.wrap & 4 && (state.flags ? hold : zswap32(hold)) !== state.check) {
|
|
1777
|
-
strm.msg = "incorrect data check";
|
|
1778
|
-
state.mode = BAD;
|
|
1779
|
-
break;
|
|
1780
|
-
}
|
|
1781
|
-
hold = 0;
|
|
1782
|
-
bits = 0;
|
|
1783
|
-
}
|
|
1784
|
-
state.mode = LENGTH;
|
|
1785
|
-
case LENGTH:
|
|
1786
|
-
if (state.wrap && state.flags) {
|
|
1787
|
-
while (bits < 32) {
|
|
1788
|
-
if (have === 0) {
|
|
1789
|
-
break inf_leave;
|
|
1790
|
-
}
|
|
1791
|
-
have--;
|
|
1792
|
-
hold += input[next++] << bits;
|
|
1793
|
-
bits += 8;
|
|
1794
|
-
}
|
|
1795
|
-
if (state.wrap & 4 && hold !== (state.total & 4294967295)) {
|
|
1796
|
-
strm.msg = "incorrect length check";
|
|
1797
|
-
state.mode = BAD;
|
|
1798
|
-
break;
|
|
1799
|
-
}
|
|
1800
|
-
hold = 0;
|
|
1801
|
-
bits = 0;
|
|
1802
|
-
}
|
|
1803
|
-
state.mode = DONE;
|
|
1804
|
-
case DONE:
|
|
1805
|
-
ret = Z_STREAM_END;
|
|
1806
|
-
break inf_leave;
|
|
1807
|
-
case BAD:
|
|
1808
|
-
ret = Z_DATA_ERROR;
|
|
1809
|
-
break inf_leave;
|
|
1810
|
-
case MEM:
|
|
1811
|
-
return Z_MEM_ERROR;
|
|
1812
|
-
case SYNC:
|
|
1813
|
-
default:
|
|
1814
|
-
return Z_STREAM_ERROR;
|
|
1815
|
-
}
|
|
1816
|
-
}
|
|
1817
|
-
strm.next_out = put;
|
|
1818
|
-
strm.avail_out = left;
|
|
1819
|
-
strm.next_in = next;
|
|
1820
|
-
strm.avail_in = have;
|
|
1821
|
-
state.hold = hold;
|
|
1822
|
-
state.bits = bits;
|
|
1823
|
-
if (state.wsize || _out !== strm.avail_out && state.mode < BAD && (state.mode < CHECK || flush !== Z_FINISH)) {
|
|
1824
|
-
if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) {
|
|
1825
|
-
state.mode = MEM;
|
|
1826
|
-
return Z_MEM_ERROR;
|
|
1827
|
-
}
|
|
1828
|
-
}
|
|
1829
|
-
_in -= strm.avail_in;
|
|
1830
|
-
_out -= strm.avail_out;
|
|
1831
|
-
strm.total_in += _in;
|
|
1832
|
-
strm.total_out += _out;
|
|
1833
|
-
state.total += _out;
|
|
1834
|
-
if (state.wrap & 4 && _out) {
|
|
1835
|
-
strm.adler = state.check = /*UPDATE_CHECK(state.check, strm.next_out - _out, _out);*/
|
|
1836
|
-
state.flags ? crc32(state.check, output, _out, strm.next_out - _out) : adler32(state.check, output, _out, strm.next_out - _out);
|
|
1837
|
-
}
|
|
1838
|
-
strm.data_type = state.bits + (state.last ? 64 : 0) + (state.mode === TYPE ? 128 : 0) + (state.mode === LEN_ || state.mode === COPY_ ? 256 : 0);
|
|
1839
|
-
if ((_in === 0 && _out === 0 || flush === Z_FINISH) && ret === Z_OK) {
|
|
1840
|
-
ret = Z_BUF_ERROR;
|
|
1841
|
-
}
|
|
1842
|
-
return ret;
|
|
1843
|
-
};
|
|
1844
|
-
var inflateEnd = (strm) => {
|
|
1845
|
-
if (inflateStateCheck(strm)) {
|
|
1846
|
-
return Z_STREAM_ERROR;
|
|
1847
|
-
}
|
|
1848
|
-
let state = strm.state;
|
|
1849
|
-
if (state.window) {
|
|
1850
|
-
state.window = null;
|
|
1851
|
-
}
|
|
1852
|
-
strm.state = null;
|
|
1853
|
-
return Z_OK;
|
|
1854
|
-
};
|
|
1855
|
-
var inflateGetHeader = (strm, head) => {
|
|
1856
|
-
if (inflateStateCheck(strm)) {
|
|
1857
|
-
return Z_STREAM_ERROR;
|
|
1858
|
-
}
|
|
1859
|
-
const state = strm.state;
|
|
1860
|
-
if ((state.wrap & 2) === 0) {
|
|
1861
|
-
return Z_STREAM_ERROR;
|
|
1862
|
-
}
|
|
1863
|
-
state.head = head;
|
|
1864
|
-
head.done = false;
|
|
1865
|
-
return Z_OK;
|
|
1866
|
-
};
|
|
1867
|
-
var inflateSetDictionary = (strm, dictionary) => {
|
|
1868
|
-
const dictLength = dictionary.length;
|
|
1869
|
-
let state;
|
|
1870
|
-
let dictid;
|
|
1871
|
-
let ret;
|
|
1872
|
-
if (inflateStateCheck(strm)) {
|
|
1873
|
-
return Z_STREAM_ERROR;
|
|
1874
|
-
}
|
|
1875
|
-
state = strm.state;
|
|
1876
|
-
if (state.wrap !== 0 && state.mode !== DICT) {
|
|
1877
|
-
return Z_STREAM_ERROR;
|
|
1878
|
-
}
|
|
1879
|
-
if (state.mode === DICT) {
|
|
1880
|
-
dictid = 1;
|
|
1881
|
-
dictid = adler32(dictid, dictionary, dictLength, 0);
|
|
1882
|
-
if (dictid !== state.check) {
|
|
1883
|
-
return Z_DATA_ERROR;
|
|
1884
|
-
}
|
|
1885
|
-
}
|
|
1886
|
-
ret = updatewindow(strm, dictionary, dictLength, dictLength);
|
|
1887
|
-
if (ret) {
|
|
1888
|
-
state.mode = MEM;
|
|
1889
|
-
return Z_MEM_ERROR;
|
|
1890
|
-
}
|
|
1891
|
-
state.havedict = 1;
|
|
1892
|
-
return Z_OK;
|
|
1893
|
-
};
|
|
1894
|
-
module.exports.inflateReset = inflateReset;
|
|
1895
|
-
module.exports.inflateReset2 = inflateReset2;
|
|
1896
|
-
module.exports.inflateResetKeep = inflateResetKeep;
|
|
1897
|
-
module.exports.inflateInit = inflateInit;
|
|
1898
|
-
module.exports.inflateInit2 = inflateInit2;
|
|
1899
|
-
module.exports.inflate = inflate;
|
|
1900
|
-
module.exports.inflateEnd = inflateEnd;
|
|
1901
|
-
module.exports.inflateGetHeader = inflateGetHeader;
|
|
1902
|
-
module.exports.inflateSetDictionary = inflateSetDictionary;
|
|
1903
|
-
module.exports.inflateInfo = "pako inflate (from Nodeca project)";
|
|
1904
|
-
}
|
|
1905
|
-
});
|
|
1906
|
-
|
|
1907
|
-
// node_modules/pako/lib/utils/common.js
|
|
1908
|
-
var require_common = __commonJS({
|
|
1909
|
-
"node_modules/pako/lib/utils/common.js"(exports, module) {
|
|
1910
|
-
"use strict";
|
|
1911
|
-
var _has = (obj, key) => {
|
|
1912
|
-
return Object.prototype.hasOwnProperty.call(obj, key);
|
|
1913
|
-
};
|
|
1914
|
-
module.exports.assign = function(obj) {
|
|
1915
|
-
const sources = Array.prototype.slice.call(arguments, 1);
|
|
1916
|
-
while (sources.length) {
|
|
1917
|
-
const source = sources.shift();
|
|
1918
|
-
if (!source) {
|
|
1919
|
-
continue;
|
|
1920
|
-
}
|
|
1921
|
-
if (typeof source !== "object") {
|
|
1922
|
-
throw new TypeError(source + "must be non-object");
|
|
1923
|
-
}
|
|
1924
|
-
for (const p in source) {
|
|
1925
|
-
if (_has(source, p)) {
|
|
1926
|
-
obj[p] = source[p];
|
|
1927
|
-
}
|
|
1928
|
-
}
|
|
1929
|
-
}
|
|
1930
|
-
return obj;
|
|
1931
|
-
};
|
|
1932
|
-
module.exports.flattenChunks = (chunks) => {
|
|
1933
|
-
let len = 0;
|
|
1934
|
-
for (let i = 0, l = chunks.length; i < l; i++) {
|
|
1935
|
-
len += chunks[i].length;
|
|
1936
|
-
}
|
|
1937
|
-
const result = new Uint8Array(len);
|
|
1938
|
-
for (let i = 0, pos = 0, l = chunks.length; i < l; i++) {
|
|
1939
|
-
let chunk = chunks[i];
|
|
1940
|
-
result.set(chunk, pos);
|
|
1941
|
-
pos += chunk.length;
|
|
1942
|
-
}
|
|
1943
|
-
return result;
|
|
1944
|
-
};
|
|
1945
|
-
}
|
|
1946
|
-
});
|
|
1947
|
-
|
|
1948
|
-
// node_modules/pako/lib/utils/strings.js
|
|
1949
|
-
var require_strings = __commonJS({
|
|
1950
|
-
"node_modules/pako/lib/utils/strings.js"(exports, module) {
|
|
1951
|
-
"use strict";
|
|
1952
|
-
var STR_APPLY_UIA_OK = true;
|
|
1953
|
-
try {
|
|
1954
|
-
String.fromCharCode.apply(null, new Uint8Array(1));
|
|
1955
|
-
} catch (__) {
|
|
1956
|
-
STR_APPLY_UIA_OK = false;
|
|
1957
|
-
}
|
|
1958
|
-
var _utf8len = new Uint8Array(256);
|
|
1959
|
-
for (let q = 0; q < 256; q++) {
|
|
1960
|
-
_utf8len[q] = q >= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1;
|
|
1961
|
-
}
|
|
1962
|
-
_utf8len[254] = _utf8len[254] = 1;
|
|
1963
|
-
module.exports.string2buf = (str) => {
|
|
1964
|
-
if (typeof TextEncoder === "function" && TextEncoder.prototype.encode) {
|
|
1965
|
-
return new TextEncoder().encode(str);
|
|
1966
|
-
}
|
|
1967
|
-
let buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0;
|
|
1968
|
-
for (m_pos = 0; m_pos < str_len; m_pos++) {
|
|
1969
|
-
c = str.charCodeAt(m_pos);
|
|
1970
|
-
if ((c & 64512) === 55296 && m_pos + 1 < str_len) {
|
|
1971
|
-
c2 = str.charCodeAt(m_pos + 1);
|
|
1972
|
-
if ((c2 & 64512) === 56320) {
|
|
1973
|
-
c = 65536 + (c - 55296 << 10) + (c2 - 56320);
|
|
1974
|
-
m_pos++;
|
|
1975
|
-
}
|
|
1976
|
-
}
|
|
1977
|
-
buf_len += c < 128 ? 1 : c < 2048 ? 2 : c < 65536 ? 3 : 4;
|
|
1978
|
-
}
|
|
1979
|
-
buf = new Uint8Array(buf_len);
|
|
1980
|
-
for (i = 0, m_pos = 0; i < buf_len; m_pos++) {
|
|
1981
|
-
c = str.charCodeAt(m_pos);
|
|
1982
|
-
if ((c & 64512) === 55296 && m_pos + 1 < str_len) {
|
|
1983
|
-
c2 = str.charCodeAt(m_pos + 1);
|
|
1984
|
-
if ((c2 & 64512) === 56320) {
|
|
1985
|
-
c = 65536 + (c - 55296 << 10) + (c2 - 56320);
|
|
1986
|
-
m_pos++;
|
|
1987
|
-
}
|
|
1988
|
-
}
|
|
1989
|
-
if (c < 128) {
|
|
1990
|
-
buf[i++] = c;
|
|
1991
|
-
} else if (c < 2048) {
|
|
1992
|
-
buf[i++] = 192 | c >>> 6;
|
|
1993
|
-
buf[i++] = 128 | c & 63;
|
|
1994
|
-
} else if (c < 65536) {
|
|
1995
|
-
buf[i++] = 224 | c >>> 12;
|
|
1996
|
-
buf[i++] = 128 | c >>> 6 & 63;
|
|
1997
|
-
buf[i++] = 128 | c & 63;
|
|
1998
|
-
} else {
|
|
1999
|
-
buf[i++] = 240 | c >>> 18;
|
|
2000
|
-
buf[i++] = 128 | c >>> 12 & 63;
|
|
2001
|
-
buf[i++] = 128 | c >>> 6 & 63;
|
|
2002
|
-
buf[i++] = 128 | c & 63;
|
|
2003
|
-
}
|
|
2004
|
-
}
|
|
2005
|
-
return buf;
|
|
2006
|
-
};
|
|
2007
|
-
var buf2binstring = (buf, len) => {
|
|
2008
|
-
if (len < 65534) {
|
|
2009
|
-
if (buf.subarray && STR_APPLY_UIA_OK) {
|
|
2010
|
-
return String.fromCharCode.apply(null, buf.length === len ? buf : buf.subarray(0, len));
|
|
2011
|
-
}
|
|
2012
|
-
}
|
|
2013
|
-
let result = "";
|
|
2014
|
-
for (let i = 0; i < len; i++) {
|
|
2015
|
-
result += String.fromCharCode(buf[i]);
|
|
2016
|
-
}
|
|
2017
|
-
return result;
|
|
2018
|
-
};
|
|
2019
|
-
module.exports.buf2string = (buf, max) => {
|
|
2020
|
-
const len = max || buf.length;
|
|
2021
|
-
if (typeof TextDecoder === "function" && TextDecoder.prototype.decode) {
|
|
2022
|
-
return new TextDecoder().decode(buf.subarray(0, max));
|
|
2023
|
-
}
|
|
2024
|
-
let i, out;
|
|
2025
|
-
const utf16buf = new Array(len * 2);
|
|
2026
|
-
for (out = 0, i = 0; i < len; ) {
|
|
2027
|
-
let c = buf[i++];
|
|
2028
|
-
if (c < 128) {
|
|
2029
|
-
utf16buf[out++] = c;
|
|
2030
|
-
continue;
|
|
2031
|
-
}
|
|
2032
|
-
let c_len = _utf8len[c];
|
|
2033
|
-
if (c_len > 4) {
|
|
2034
|
-
utf16buf[out++] = 65533;
|
|
2035
|
-
i += c_len - 1;
|
|
2036
|
-
continue;
|
|
2037
|
-
}
|
|
2038
|
-
c &= c_len === 2 ? 31 : c_len === 3 ? 15 : 7;
|
|
2039
|
-
while (c_len > 1 && i < len) {
|
|
2040
|
-
c = c << 6 | buf[i++] & 63;
|
|
2041
|
-
c_len--;
|
|
2042
|
-
}
|
|
2043
|
-
if (c_len > 1) {
|
|
2044
|
-
utf16buf[out++] = 65533;
|
|
2045
|
-
continue;
|
|
2046
|
-
}
|
|
2047
|
-
if (c < 65536) {
|
|
2048
|
-
utf16buf[out++] = c;
|
|
2049
|
-
} else {
|
|
2050
|
-
c -= 65536;
|
|
2051
|
-
utf16buf[out++] = 55296 | c >> 10 & 1023;
|
|
2052
|
-
utf16buf[out++] = 56320 | c & 1023;
|
|
2053
|
-
}
|
|
2054
|
-
}
|
|
2055
|
-
return buf2binstring(utf16buf, out);
|
|
2056
|
-
};
|
|
2057
|
-
module.exports.utf8border = (buf, max) => {
|
|
2058
|
-
max = max || buf.length;
|
|
2059
|
-
if (max > buf.length) {
|
|
2060
|
-
max = buf.length;
|
|
2061
|
-
}
|
|
2062
|
-
let pos = max - 1;
|
|
2063
|
-
while (pos >= 0 && (buf[pos] & 192) === 128) {
|
|
2064
|
-
pos--;
|
|
2065
|
-
}
|
|
2066
|
-
if (pos < 0) {
|
|
2067
|
-
return max;
|
|
2068
|
-
}
|
|
2069
|
-
if (pos === 0) {
|
|
2070
|
-
return max;
|
|
2071
|
-
}
|
|
2072
|
-
return pos + _utf8len[buf[pos]] > max ? pos : max;
|
|
2073
|
-
};
|
|
2074
|
-
}
|
|
2075
|
-
});
|
|
2076
|
-
|
|
2077
|
-
// node_modules/pako/lib/zlib/messages.js
|
|
2078
|
-
var require_messages = __commonJS({
|
|
2079
|
-
"node_modules/pako/lib/zlib/messages.js"(exports, module) {
|
|
2080
|
-
"use strict";
|
|
2081
|
-
module.exports = {
|
|
2082
|
-
2: "need dictionary",
|
|
2083
|
-
/* Z_NEED_DICT 2 */
|
|
2084
|
-
1: "stream end",
|
|
2085
|
-
/* Z_STREAM_END 1 */
|
|
2086
|
-
0: "",
|
|
2087
|
-
/* Z_OK 0 */
|
|
2088
|
-
"-1": "file error",
|
|
2089
|
-
/* Z_ERRNO (-1) */
|
|
2090
|
-
"-2": "stream error",
|
|
2091
|
-
/* Z_STREAM_ERROR (-2) */
|
|
2092
|
-
"-3": "data error",
|
|
2093
|
-
/* Z_DATA_ERROR (-3) */
|
|
2094
|
-
"-4": "insufficient memory",
|
|
2095
|
-
/* Z_MEM_ERROR (-4) */
|
|
2096
|
-
"-5": "buffer error",
|
|
2097
|
-
/* Z_BUF_ERROR (-5) */
|
|
2098
|
-
"-6": "incompatible version"
|
|
2099
|
-
/* Z_VERSION_ERROR (-6) */
|
|
2100
|
-
};
|
|
2101
|
-
}
|
|
2102
|
-
});
|
|
2103
|
-
|
|
2104
|
-
// node_modules/pako/lib/zlib/zstream.js
|
|
2105
|
-
var require_zstream = __commonJS({
|
|
2106
|
-
"node_modules/pako/lib/zlib/zstream.js"(exports, module) {
|
|
2107
|
-
"use strict";
|
|
2108
|
-
function ZStream() {
|
|
2109
|
-
this.input = null;
|
|
2110
|
-
this.next_in = 0;
|
|
2111
|
-
this.avail_in = 0;
|
|
2112
|
-
this.total_in = 0;
|
|
2113
|
-
this.output = null;
|
|
2114
|
-
this.next_out = 0;
|
|
2115
|
-
this.avail_out = 0;
|
|
2116
|
-
this.total_out = 0;
|
|
2117
|
-
this.msg = "";
|
|
2118
|
-
this.state = null;
|
|
2119
|
-
this.data_type = 2;
|
|
2120
|
-
this.adler = 0;
|
|
2121
|
-
}
|
|
2122
|
-
module.exports = ZStream;
|
|
2123
|
-
}
|
|
2124
|
-
});
|
|
2125
|
-
|
|
2126
|
-
// node_modules/pako/lib/zlib/gzheader.js
|
|
2127
|
-
var require_gzheader = __commonJS({
|
|
2128
|
-
"node_modules/pako/lib/zlib/gzheader.js"(exports, module) {
|
|
2129
|
-
"use strict";
|
|
2130
|
-
function GZheader() {
|
|
2131
|
-
this.text = 0;
|
|
2132
|
-
this.time = 0;
|
|
2133
|
-
this.xflags = 0;
|
|
2134
|
-
this.os = 0;
|
|
2135
|
-
this.extra = null;
|
|
2136
|
-
this.extra_len = 0;
|
|
2137
|
-
this.name = "";
|
|
2138
|
-
this.comment = "";
|
|
2139
|
-
this.hcrc = 0;
|
|
2140
|
-
this.done = false;
|
|
2141
|
-
}
|
|
2142
|
-
module.exports = GZheader;
|
|
2143
|
-
}
|
|
2144
|
-
});
|
|
2145
|
-
|
|
2146
|
-
// node_modules/pako/lib/inflate.js
|
|
2147
|
-
var require_inflate2 = __commonJS({
|
|
2148
|
-
"node_modules/pako/lib/inflate.js"(exports, module) {
|
|
2149
|
-
"use strict";
|
|
2150
|
-
var zlib_inflate = require_inflate();
|
|
2151
|
-
var utils = require_common();
|
|
2152
|
-
var strings = require_strings();
|
|
2153
|
-
var msg = require_messages();
|
|
2154
|
-
var ZStream = require_zstream();
|
|
2155
|
-
var GZheader = require_gzheader();
|
|
2156
|
-
var toString = Object.prototype.toString;
|
|
2157
|
-
var {
|
|
2158
|
-
Z_NO_FLUSH,
|
|
2159
|
-
Z_FINISH,
|
|
2160
|
-
Z_OK,
|
|
2161
|
-
Z_STREAM_END,
|
|
2162
|
-
Z_NEED_DICT,
|
|
2163
|
-
Z_STREAM_ERROR,
|
|
2164
|
-
Z_DATA_ERROR,
|
|
2165
|
-
Z_MEM_ERROR
|
|
2166
|
-
} = require_constants();
|
|
2167
|
-
function Inflate(options) {
|
|
2168
|
-
this.options = utils.assign({
|
|
2169
|
-
chunkSize: 1024 * 64,
|
|
2170
|
-
windowBits: 15,
|
|
2171
|
-
to: ""
|
|
2172
|
-
}, options || {});
|
|
2173
|
-
const opt = this.options;
|
|
2174
|
-
if (opt.raw && opt.windowBits >= 0 && opt.windowBits < 16) {
|
|
2175
|
-
opt.windowBits = -opt.windowBits;
|
|
2176
|
-
if (opt.windowBits === 0) {
|
|
2177
|
-
opt.windowBits = -15;
|
|
2178
|
-
}
|
|
2179
|
-
}
|
|
2180
|
-
if (opt.windowBits >= 0 && opt.windowBits < 16 && !(options && options.windowBits)) {
|
|
2181
|
-
opt.windowBits += 32;
|
|
2182
|
-
}
|
|
2183
|
-
if (opt.windowBits > 15 && opt.windowBits < 48) {
|
|
2184
|
-
if ((opt.windowBits & 15) === 0) {
|
|
2185
|
-
opt.windowBits |= 15;
|
|
2186
|
-
}
|
|
2187
|
-
}
|
|
2188
|
-
this.err = 0;
|
|
2189
|
-
this.msg = "";
|
|
2190
|
-
this.ended = false;
|
|
2191
|
-
this.chunks = [];
|
|
2192
|
-
this.strm = new ZStream();
|
|
2193
|
-
this.strm.avail_out = 0;
|
|
2194
|
-
let status = zlib_inflate.inflateInit2(
|
|
2195
|
-
this.strm,
|
|
2196
|
-
opt.windowBits
|
|
2197
|
-
);
|
|
2198
|
-
if (status !== Z_OK) {
|
|
2199
|
-
throw new Error(msg[status]);
|
|
2200
|
-
}
|
|
2201
|
-
this.header = new GZheader();
|
|
2202
|
-
zlib_inflate.inflateGetHeader(this.strm, this.header);
|
|
2203
|
-
if (opt.dictionary) {
|
|
2204
|
-
if (typeof opt.dictionary === "string") {
|
|
2205
|
-
opt.dictionary = strings.string2buf(opt.dictionary);
|
|
2206
|
-
} else if (toString.call(opt.dictionary) === "[object ArrayBuffer]") {
|
|
2207
|
-
opt.dictionary = new Uint8Array(opt.dictionary);
|
|
2208
|
-
}
|
|
2209
|
-
if (opt.raw) {
|
|
2210
|
-
status = zlib_inflate.inflateSetDictionary(this.strm, opt.dictionary);
|
|
2211
|
-
if (status !== Z_OK) {
|
|
2212
|
-
throw new Error(msg[status]);
|
|
2213
|
-
}
|
|
2214
|
-
}
|
|
2215
|
-
}
|
|
2216
|
-
}
|
|
2217
|
-
Inflate.prototype.push = function(data, flush_mode) {
|
|
2218
|
-
const strm = this.strm;
|
|
2219
|
-
const chunkSize = this.options.chunkSize;
|
|
2220
|
-
const dictionary = this.options.dictionary;
|
|
2221
|
-
let status, _flush_mode, last_avail_out;
|
|
2222
|
-
if (this.ended)
|
|
2223
|
-
return false;
|
|
2224
|
-
if (flush_mode === ~~flush_mode)
|
|
2225
|
-
_flush_mode = flush_mode;
|
|
2226
|
-
else
|
|
2227
|
-
_flush_mode = flush_mode === true ? Z_FINISH : Z_NO_FLUSH;
|
|
2228
|
-
if (toString.call(data) === "[object ArrayBuffer]") {
|
|
2229
|
-
strm.input = new Uint8Array(data);
|
|
2230
|
-
} else {
|
|
2231
|
-
strm.input = data;
|
|
2232
|
-
}
|
|
2233
|
-
strm.next_in = 0;
|
|
2234
|
-
strm.avail_in = strm.input.length;
|
|
2235
|
-
for (; ; ) {
|
|
2236
|
-
if (strm.avail_out === 0) {
|
|
2237
|
-
strm.output = new Uint8Array(chunkSize);
|
|
2238
|
-
strm.next_out = 0;
|
|
2239
|
-
strm.avail_out = chunkSize;
|
|
2240
|
-
}
|
|
2241
|
-
status = zlib_inflate.inflate(strm, _flush_mode);
|
|
2242
|
-
if (status === Z_NEED_DICT && dictionary) {
|
|
2243
|
-
status = zlib_inflate.inflateSetDictionary(strm, dictionary);
|
|
2244
|
-
if (status === Z_OK) {
|
|
2245
|
-
status = zlib_inflate.inflate(strm, _flush_mode);
|
|
2246
|
-
} else if (status === Z_DATA_ERROR) {
|
|
2247
|
-
status = Z_NEED_DICT;
|
|
2248
|
-
}
|
|
2249
|
-
}
|
|
2250
|
-
while (strm.avail_in > 0 && status === Z_STREAM_END && strm.state.wrap > 0 && data[strm.next_in] !== 0) {
|
|
2251
|
-
zlib_inflate.inflateReset(strm);
|
|
2252
|
-
status = zlib_inflate.inflate(strm, _flush_mode);
|
|
2253
|
-
}
|
|
2254
|
-
switch (status) {
|
|
2255
|
-
case Z_STREAM_ERROR:
|
|
2256
|
-
case Z_DATA_ERROR:
|
|
2257
|
-
case Z_NEED_DICT:
|
|
2258
|
-
case Z_MEM_ERROR:
|
|
2259
|
-
this.onEnd(status);
|
|
2260
|
-
this.ended = true;
|
|
2261
|
-
return false;
|
|
2262
|
-
}
|
|
2263
|
-
last_avail_out = strm.avail_out;
|
|
2264
|
-
if (strm.next_out) {
|
|
2265
|
-
if (strm.avail_out === 0 || status === Z_STREAM_END) {
|
|
2266
|
-
if (this.options.to === "string") {
|
|
2267
|
-
let next_out_utf8 = strings.utf8border(strm.output, strm.next_out);
|
|
2268
|
-
let tail = strm.next_out - next_out_utf8;
|
|
2269
|
-
let utf8str = strings.buf2string(strm.output, next_out_utf8);
|
|
2270
|
-
strm.next_out = tail;
|
|
2271
|
-
strm.avail_out = chunkSize - tail;
|
|
2272
|
-
if (tail)
|
|
2273
|
-
strm.output.set(strm.output.subarray(next_out_utf8, next_out_utf8 + tail), 0);
|
|
2274
|
-
this.onData(utf8str);
|
|
2275
|
-
} else {
|
|
2276
|
-
this.onData(strm.output.length === strm.next_out ? strm.output : strm.output.subarray(0, strm.next_out));
|
|
2277
|
-
}
|
|
2278
|
-
}
|
|
2279
|
-
}
|
|
2280
|
-
if (status === Z_OK && last_avail_out === 0)
|
|
2281
|
-
continue;
|
|
2282
|
-
if (status === Z_STREAM_END) {
|
|
2283
|
-
status = zlib_inflate.inflateEnd(this.strm);
|
|
2284
|
-
this.onEnd(status);
|
|
2285
|
-
this.ended = true;
|
|
2286
|
-
return true;
|
|
2287
|
-
}
|
|
2288
|
-
if (strm.avail_in === 0)
|
|
2289
|
-
break;
|
|
2290
|
-
}
|
|
2291
|
-
return true;
|
|
2292
|
-
};
|
|
2293
|
-
Inflate.prototype.onData = function(chunk) {
|
|
2294
|
-
this.chunks.push(chunk);
|
|
2295
|
-
};
|
|
2296
|
-
Inflate.prototype.onEnd = function(status) {
|
|
2297
|
-
if (status === Z_OK) {
|
|
2298
|
-
if (this.options.to === "string") {
|
|
2299
|
-
this.result = this.chunks.join("");
|
|
2300
|
-
} else {
|
|
2301
|
-
this.result = utils.flattenChunks(this.chunks);
|
|
2302
|
-
}
|
|
2303
|
-
}
|
|
2304
|
-
this.chunks = [];
|
|
2305
|
-
this.err = status;
|
|
2306
|
-
this.msg = this.strm.msg;
|
|
2307
|
-
};
|
|
2308
|
-
function inflate(input, options) {
|
|
2309
|
-
const inflator = new Inflate(options);
|
|
2310
|
-
inflator.push(input);
|
|
2311
|
-
if (inflator.err)
|
|
2312
|
-
throw inflator.msg || msg[inflator.err];
|
|
2313
|
-
return inflator.result;
|
|
2314
|
-
}
|
|
2315
|
-
function inflateRaw(input, options) {
|
|
2316
|
-
options = options || {};
|
|
2317
|
-
options.raw = true;
|
|
2318
|
-
return inflate(input, options);
|
|
2319
|
-
}
|
|
2320
|
-
module.exports.Inflate = Inflate;
|
|
2321
|
-
module.exports.inflate = inflate;
|
|
2322
|
-
module.exports.inflateRaw = inflateRaw;
|
|
2323
|
-
module.exports.ungzip = inflate;
|
|
2324
|
-
module.exports.constants = require_constants();
|
|
2325
|
-
}
|
|
2326
|
-
});
|
|
2327
|
-
|
|
2328
|
-
// packages/engine/Source/Core/decodeGoogleEarthEnterpriseData.js
|
|
2329
|
-
var compressedMagic = 1953029805;
|
|
2330
|
-
var compressedMagicSwap = 2917034100;
|
|
2331
|
-
function decodeGoogleEarthEnterpriseData(key, data) {
|
|
2332
|
-
if (decodeGoogleEarthEnterpriseData.passThroughDataForTesting) {
|
|
2333
|
-
return data;
|
|
2334
|
-
}
|
|
2335
|
-
Check_default.typeOf.object("key", key);
|
|
2336
|
-
Check_default.typeOf.object("data", data);
|
|
2337
|
-
const keyLength = key.byteLength;
|
|
2338
|
-
if (keyLength === 0 || keyLength % 4 !== 0) {
|
|
2339
|
-
throw new RuntimeError_default(
|
|
2340
|
-
"The length of key must be greater than 0 and a multiple of 4."
|
|
2341
|
-
);
|
|
2342
|
-
}
|
|
2343
|
-
const dataView = new DataView(data);
|
|
2344
|
-
const magic = dataView.getUint32(0, true);
|
|
2345
|
-
if (magic === compressedMagic || magic === compressedMagicSwap) {
|
|
2346
|
-
return data;
|
|
2347
|
-
}
|
|
2348
|
-
const keyView = new DataView(key);
|
|
2349
|
-
let dp = 0;
|
|
2350
|
-
const dpend = data.byteLength;
|
|
2351
|
-
const dpend64 = dpend - dpend % 8;
|
|
2352
|
-
const kpend = keyLength;
|
|
2353
|
-
let kp;
|
|
2354
|
-
let off = 8;
|
|
2355
|
-
while (dp < dpend64) {
|
|
2356
|
-
off = (off + 8) % 24;
|
|
2357
|
-
kp = off;
|
|
2358
|
-
while (dp < dpend64 && kp < kpend) {
|
|
2359
|
-
dataView.setUint32(
|
|
2360
|
-
dp,
|
|
2361
|
-
dataView.getUint32(dp, true) ^ keyView.getUint32(kp, true),
|
|
2362
|
-
true
|
|
2363
|
-
);
|
|
2364
|
-
dataView.setUint32(
|
|
2365
|
-
dp + 4,
|
|
2366
|
-
dataView.getUint32(dp + 4, true) ^ keyView.getUint32(kp + 4, true),
|
|
2367
|
-
true
|
|
2368
|
-
);
|
|
2369
|
-
dp += 8;
|
|
2370
|
-
kp += 24;
|
|
2371
|
-
}
|
|
2372
|
-
}
|
|
2373
|
-
if (dp < dpend) {
|
|
2374
|
-
if (kp >= kpend) {
|
|
2375
|
-
off = (off + 8) % 24;
|
|
2376
|
-
kp = off;
|
|
2377
|
-
}
|
|
2378
|
-
while (dp < dpend) {
|
|
2379
|
-
dataView.setUint8(dp, dataView.getUint8(dp) ^ keyView.getUint8(kp));
|
|
2380
|
-
dp++;
|
|
2381
|
-
kp++;
|
|
2382
|
-
}
|
|
2383
|
-
}
|
|
2384
|
-
}
|
|
2385
|
-
decodeGoogleEarthEnterpriseData.passThroughDataForTesting = false;
|
|
2386
|
-
var decodeGoogleEarthEnterpriseData_default = decodeGoogleEarthEnterpriseData;
|
|
2387
|
-
|
|
2388
|
-
// packages/engine/Source/Core/isBitSet.js
|
|
2389
|
-
function isBitSet(bits, mask) {
|
|
2390
|
-
return (bits & mask) !== 0;
|
|
2391
|
-
}
|
|
2392
|
-
var isBitSet_default = isBitSet;
|
|
2393
|
-
|
|
2394
|
-
// packages/engine/Source/Core/GoogleEarthEnterpriseTileInformation.js
|
|
2395
|
-
var childrenBitmasks = [1, 2, 4, 8];
|
|
2396
|
-
var anyChildBitmask = 15;
|
|
2397
|
-
var cacheFlagBitmask = 16;
|
|
2398
|
-
var imageBitmask = 64;
|
|
2399
|
-
var terrainBitmask = 128;
|
|
2400
|
-
function GoogleEarthEnterpriseTileInformation(bits, cnodeVersion, imageryVersion, terrainVersion, imageryProvider, terrainProvider) {
|
|
2401
|
-
this._bits = bits;
|
|
2402
|
-
this.cnodeVersion = cnodeVersion;
|
|
2403
|
-
this.imageryVersion = imageryVersion;
|
|
2404
|
-
this.terrainVersion = terrainVersion;
|
|
2405
|
-
this.imageryProvider = imageryProvider;
|
|
2406
|
-
this.terrainProvider = terrainProvider;
|
|
2407
|
-
this.ancestorHasTerrain = false;
|
|
2408
|
-
this.terrainState = void 0;
|
|
2409
|
-
}
|
|
2410
|
-
GoogleEarthEnterpriseTileInformation.clone = function(info, result) {
|
|
2411
|
-
if (!defined_default(result)) {
|
|
2412
|
-
result = new GoogleEarthEnterpriseTileInformation(
|
|
2413
|
-
info._bits,
|
|
2414
|
-
info.cnodeVersion,
|
|
2415
|
-
info.imageryVersion,
|
|
2416
|
-
info.terrainVersion,
|
|
2417
|
-
info.imageryProvider,
|
|
2418
|
-
info.terrainProvider
|
|
2419
|
-
);
|
|
2420
|
-
} else {
|
|
2421
|
-
result._bits = info._bits;
|
|
2422
|
-
result.cnodeVersion = info.cnodeVersion;
|
|
2423
|
-
result.imageryVersion = info.imageryVersion;
|
|
2424
|
-
result.terrainVersion = info.terrainVersion;
|
|
2425
|
-
result.imageryProvider = info.imageryProvider;
|
|
2426
|
-
result.terrainProvider = info.terrainProvider;
|
|
2427
|
-
}
|
|
2428
|
-
result.ancestorHasTerrain = info.ancestorHasTerrain;
|
|
2429
|
-
result.terrainState = info.terrainState;
|
|
2430
|
-
return result;
|
|
2431
|
-
};
|
|
2432
|
-
GoogleEarthEnterpriseTileInformation.prototype.setParent = function(parent) {
|
|
2433
|
-
this.ancestorHasTerrain = parent.ancestorHasTerrain || this.hasTerrain();
|
|
2434
|
-
};
|
|
2435
|
-
GoogleEarthEnterpriseTileInformation.prototype.hasSubtree = function() {
|
|
2436
|
-
return isBitSet_default(this._bits, cacheFlagBitmask);
|
|
2437
|
-
};
|
|
2438
|
-
GoogleEarthEnterpriseTileInformation.prototype.hasImagery = function() {
|
|
2439
|
-
return isBitSet_default(this._bits, imageBitmask);
|
|
2440
|
-
};
|
|
2441
|
-
GoogleEarthEnterpriseTileInformation.prototype.hasTerrain = function() {
|
|
2442
|
-
return isBitSet_default(this._bits, terrainBitmask);
|
|
2443
|
-
};
|
|
2444
|
-
GoogleEarthEnterpriseTileInformation.prototype.hasChildren = function() {
|
|
2445
|
-
return isBitSet_default(this._bits, anyChildBitmask);
|
|
2446
|
-
};
|
|
2447
|
-
GoogleEarthEnterpriseTileInformation.prototype.hasChild = function(index) {
|
|
2448
|
-
return isBitSet_default(this._bits, childrenBitmasks[index]);
|
|
2449
|
-
};
|
|
2450
|
-
GoogleEarthEnterpriseTileInformation.prototype.getChildBitmask = function() {
|
|
2451
|
-
return this._bits & anyChildBitmask;
|
|
2452
|
-
};
|
|
2453
|
-
var GoogleEarthEnterpriseTileInformation_default = GoogleEarthEnterpriseTileInformation;
|
|
2454
|
-
|
|
2455
|
-
// packages/engine/Source/Workers/decodeGoogleEarthEnterprisePacket.js
|
|
2456
|
-
var import_inflate = __toESM(require_inflate2(), 1);
|
|
2457
|
-
var sizeOfUint16 = Uint16Array.BYTES_PER_ELEMENT;
|
|
2458
|
-
var sizeOfInt32 = Int32Array.BYTES_PER_ELEMENT;
|
|
2459
|
-
var sizeOfUint32 = Uint32Array.BYTES_PER_ELEMENT;
|
|
2460
|
-
var Types = {
|
|
2461
|
-
METADATA: 0,
|
|
2462
|
-
TERRAIN: 1,
|
|
2463
|
-
DBROOT: 2
|
|
2464
|
-
};
|
|
2465
|
-
Types.fromString = function(s) {
|
|
2466
|
-
if (s === "Metadata") {
|
|
2467
|
-
return Types.METADATA;
|
|
2468
|
-
} else if (s === "Terrain") {
|
|
2469
|
-
return Types.TERRAIN;
|
|
2470
|
-
} else if (s === "DbRoot") {
|
|
2471
|
-
return Types.DBROOT;
|
|
2472
|
-
}
|
|
2473
|
-
};
|
|
2474
|
-
function decodeGoogleEarthEnterprisePacket(parameters, transferableObjects) {
|
|
2475
|
-
const type = Types.fromString(parameters.type);
|
|
2476
|
-
let buffer = parameters.buffer;
|
|
2477
|
-
decodeGoogleEarthEnterpriseData_default(parameters.key, buffer);
|
|
2478
|
-
const uncompressedTerrain = uncompressPacket(buffer);
|
|
2479
|
-
buffer = uncompressedTerrain.buffer;
|
|
2480
|
-
const length = uncompressedTerrain.length;
|
|
2481
|
-
switch (type) {
|
|
2482
|
-
case Types.METADATA:
|
|
2483
|
-
return processMetadata(buffer, length, parameters.quadKey);
|
|
2484
|
-
case Types.TERRAIN:
|
|
2485
|
-
return processTerrain(buffer, length, transferableObjects);
|
|
2486
|
-
case Types.DBROOT:
|
|
2487
|
-
transferableObjects.push(buffer);
|
|
2488
|
-
return {
|
|
2489
|
-
buffer
|
|
2490
|
-
};
|
|
2491
|
-
}
|
|
2492
|
-
}
|
|
2493
|
-
var qtMagic = 32301;
|
|
2494
|
-
function processMetadata(buffer, totalSize, quadKey) {
|
|
2495
|
-
const dv = new DataView(buffer);
|
|
2496
|
-
let offset = 0;
|
|
2497
|
-
const magic = dv.getUint32(offset, true);
|
|
2498
|
-
offset += sizeOfUint32;
|
|
2499
|
-
if (magic !== qtMagic) {
|
|
2500
|
-
throw new RuntimeError_default("Invalid magic");
|
|
2501
|
-
}
|
|
2502
|
-
const dataTypeId = dv.getUint32(offset, true);
|
|
2503
|
-
offset += sizeOfUint32;
|
|
2504
|
-
if (dataTypeId !== 1) {
|
|
2505
|
-
throw new RuntimeError_default("Invalid data type. Must be 1 for QuadTreePacket");
|
|
2506
|
-
}
|
|
2507
|
-
const quadVersion = dv.getUint32(offset, true);
|
|
2508
|
-
offset += sizeOfUint32;
|
|
2509
|
-
if (quadVersion !== 2) {
|
|
2510
|
-
throw new RuntimeError_default(
|
|
2511
|
-
"Invalid QuadTreePacket version. Only version 2 is supported."
|
|
2512
|
-
);
|
|
2513
|
-
}
|
|
2514
|
-
const numInstances = dv.getInt32(offset, true);
|
|
2515
|
-
offset += sizeOfInt32;
|
|
2516
|
-
const dataInstanceSize = dv.getInt32(offset, true);
|
|
2517
|
-
offset += sizeOfInt32;
|
|
2518
|
-
if (dataInstanceSize !== 32) {
|
|
2519
|
-
throw new RuntimeError_default("Invalid instance size.");
|
|
2520
|
-
}
|
|
2521
|
-
const dataBufferOffset = dv.getInt32(offset, true);
|
|
2522
|
-
offset += sizeOfInt32;
|
|
2523
|
-
const dataBufferSize = dv.getInt32(offset, true);
|
|
2524
|
-
offset += sizeOfInt32;
|
|
2525
|
-
const metaBufferSize = dv.getInt32(offset, true);
|
|
2526
|
-
offset += sizeOfInt32;
|
|
2527
|
-
if (dataBufferOffset !== numInstances * dataInstanceSize + offset) {
|
|
2528
|
-
throw new RuntimeError_default("Invalid dataBufferOffset");
|
|
2529
|
-
}
|
|
2530
|
-
if (dataBufferOffset + dataBufferSize + metaBufferSize !== totalSize) {
|
|
2531
|
-
throw new RuntimeError_default("Invalid packet offsets");
|
|
2532
|
-
}
|
|
2533
|
-
const instances = [];
|
|
2534
|
-
for (let i = 0; i < numInstances; ++i) {
|
|
2535
|
-
const bitfield = dv.getUint8(offset);
|
|
2536
|
-
++offset;
|
|
2537
|
-
++offset;
|
|
2538
|
-
const cnodeVersion = dv.getUint16(offset, true);
|
|
2539
|
-
offset += sizeOfUint16;
|
|
2540
|
-
const imageVersion = dv.getUint16(offset, true);
|
|
2541
|
-
offset += sizeOfUint16;
|
|
2542
|
-
const terrainVersion = dv.getUint16(offset, true);
|
|
2543
|
-
offset += sizeOfUint16;
|
|
2544
|
-
offset += sizeOfUint16;
|
|
2545
|
-
offset += sizeOfUint16;
|
|
2546
|
-
offset += sizeOfInt32;
|
|
2547
|
-
offset += sizeOfInt32;
|
|
2548
|
-
offset += 8;
|
|
2549
|
-
const imageProvider = dv.getUint8(offset++);
|
|
2550
|
-
const terrainProvider = dv.getUint8(offset++);
|
|
2551
|
-
offset += sizeOfUint16;
|
|
2552
|
-
instances.push(
|
|
2553
|
-
new GoogleEarthEnterpriseTileInformation_default(
|
|
2554
|
-
bitfield,
|
|
2555
|
-
cnodeVersion,
|
|
2556
|
-
imageVersion,
|
|
2557
|
-
terrainVersion,
|
|
2558
|
-
imageProvider,
|
|
2559
|
-
terrainProvider
|
|
2560
|
-
)
|
|
2561
|
-
);
|
|
2562
|
-
}
|
|
2563
|
-
const tileInfo = [];
|
|
2564
|
-
let index = 0;
|
|
2565
|
-
function populateTiles(parentKey, parent, level2) {
|
|
2566
|
-
let isLeaf = false;
|
|
2567
|
-
if (level2 === 4) {
|
|
2568
|
-
if (parent.hasSubtree()) {
|
|
2569
|
-
return;
|
|
2570
|
-
}
|
|
2571
|
-
isLeaf = true;
|
|
2572
|
-
}
|
|
2573
|
-
for (let i = 0; i < 4; ++i) {
|
|
2574
|
-
const childKey = parentKey + i.toString();
|
|
2575
|
-
if (isLeaf) {
|
|
2576
|
-
tileInfo[childKey] = null;
|
|
2577
|
-
} else if (level2 < 4) {
|
|
2578
|
-
if (!parent.hasChild(i)) {
|
|
2579
|
-
tileInfo[childKey] = null;
|
|
2580
|
-
} else {
|
|
2581
|
-
if (index === numInstances) {
|
|
2582
|
-
console.log("Incorrect number of instances");
|
|
2583
|
-
return;
|
|
2584
|
-
}
|
|
2585
|
-
const instance = instances[index++];
|
|
2586
|
-
tileInfo[childKey] = instance;
|
|
2587
|
-
populateTiles(childKey, instance, level2 + 1);
|
|
2588
|
-
}
|
|
2589
|
-
}
|
|
2590
|
-
}
|
|
2591
|
-
}
|
|
2592
|
-
let level = 0;
|
|
2593
|
-
const root = instances[index++];
|
|
2594
|
-
if (quadKey === "") {
|
|
2595
|
-
++level;
|
|
2596
|
-
} else {
|
|
2597
|
-
tileInfo[quadKey] = root;
|
|
2598
|
-
}
|
|
2599
|
-
populateTiles(quadKey, root, level);
|
|
2600
|
-
return tileInfo;
|
|
2601
|
-
}
|
|
2602
|
-
var numMeshesPerPacket = 5;
|
|
2603
|
-
var numSubMeshesPerMesh = 4;
|
|
2604
|
-
function processTerrain(buffer, totalSize, transferableObjects) {
|
|
2605
|
-
const dv = new DataView(buffer);
|
|
2606
|
-
const advanceMesh = function(pos) {
|
|
2607
|
-
for (let sub = 0; sub < numSubMeshesPerMesh; ++sub) {
|
|
2608
|
-
const size = dv.getUint32(pos, true);
|
|
2609
|
-
pos += sizeOfUint32;
|
|
2610
|
-
pos += size;
|
|
2611
|
-
if (pos > totalSize) {
|
|
2612
|
-
throw new RuntimeError_default("Malformed terrain packet found.");
|
|
2613
|
-
}
|
|
2614
|
-
}
|
|
2615
|
-
return pos;
|
|
2616
|
-
};
|
|
2617
|
-
let offset = 0;
|
|
2618
|
-
const terrainMeshes = [];
|
|
2619
|
-
while (terrainMeshes.length < numMeshesPerPacket) {
|
|
2620
|
-
const start = offset;
|
|
2621
|
-
offset = advanceMesh(offset);
|
|
2622
|
-
const mesh = buffer.slice(start, offset);
|
|
2623
|
-
transferableObjects.push(mesh);
|
|
2624
|
-
terrainMeshes.push(mesh);
|
|
2625
|
-
}
|
|
2626
|
-
return terrainMeshes;
|
|
2627
|
-
}
|
|
2628
|
-
var compressedMagic2 = 1953029805;
|
|
2629
|
-
var compressedMagicSwap2 = 2917034100;
|
|
2630
|
-
function uncompressPacket(data) {
|
|
2631
|
-
const dv = new DataView(data);
|
|
2632
|
-
let offset = 0;
|
|
2633
|
-
const magic = dv.getUint32(offset, true);
|
|
2634
|
-
offset += sizeOfUint32;
|
|
2635
|
-
if (magic !== compressedMagic2 && magic !== compressedMagicSwap2) {
|
|
2636
|
-
throw new RuntimeError_default("Invalid magic");
|
|
2637
|
-
}
|
|
2638
|
-
const size = dv.getUint32(offset, magic === compressedMagic2);
|
|
2639
|
-
offset += sizeOfUint32;
|
|
2640
|
-
const compressedPacket = new Uint8Array(data, offset);
|
|
2641
|
-
const uncompressedPacket = import_inflate.default.inflate(compressedPacket);
|
|
2642
|
-
if (uncompressedPacket.length !== size) {
|
|
2643
|
-
throw new RuntimeError_default("Size of packet doesn't match header");
|
|
2644
|
-
}
|
|
2645
|
-
return uncompressedPacket;
|
|
2646
|
-
}
|
|
2647
|
-
var decodeGoogleEarthEnterprisePacket_default = createTaskProcessorWorker_default(decodeGoogleEarthEnterprisePacket);
|
|
2648
|
-
export {
|
|
2649
|
-
decodeGoogleEarthEnterprisePacket_default as default
|
|
2650
|
-
};
|
|
26
|
+
import{a as Se}from"./chunk-WZDE3RYP.js";import{a as D}from"./chunk-ED5JPB3S.js";import{b as ae}from"./chunk-LEYMRMBK.js";import{c as R,d as Ot,e as me}from"./chunk-VTAIKJXX.js";var Ie=R((Li,Ae)=>{"use strict";var zt=(t,i,e,r)=>{let s=t&65535|0,n=t>>>16&65535|0,c=0;for(;e!==0;){c=e>2e3?2e3:e,e-=c;do s=s+i[r++]|0,n=n+s|0;while(--c);s%=65521,n%=65521}return s|n<<16|0};Ae.exports=zt});var De=R((Pi,Re)=>{"use strict";var Ht=()=>{let t,i=[];for(var e=0;e<256;e++){t=e;for(var r=0;r<8;r++)t=t&1?3988292384^t>>>1:t>>>1;i[e]=t}return i},Ft=new Uint32Array(Ht()),Vt=(t,i,e,r)=>{let s=Ft,n=r+e;t^=-1;for(let c=r;c<n;c++)t=t>>>8^s[(t^i[c])&255];return t^-1};Re.exports=Vt});var Oe=R((zi,Ue)=>{"use strict";Ue.exports=function(i,e){let r,s,n,c,f,_,a,o,v,w,l,u,I,p,x,T,g,d,E,A,h,S,k,b,m=i.state;r=i.next_in,k=i.input,s=r+(i.avail_in-5),n=i.next_out,b=i.output,c=n-(e-i.avail_out),f=n+(i.avail_out-257),_=m.dmax,a=m.wsize,o=m.whave,v=m.wnext,w=m.window,l=m.hold,u=m.bits,I=m.lencode,p=m.distcode,x=(1<<m.lenbits)-1,T=(1<<m.distbits)-1;e:do{u<15&&(l+=k[r++]<<u,u+=8,l+=k[r++]<<u,u+=8),g=I[l&x];t:for(;;){if(d=g>>>24,l>>>=d,u-=d,d=g>>>16&255,d===0)b[n++]=g&65535;else if(d&16){E=g&65535,d&=15,d&&(u<d&&(l+=k[r++]<<u,u+=8),E+=l&(1<<d)-1,l>>>=d,u-=d),u<15&&(l+=k[r++]<<u,u+=8,l+=k[r++]<<u,u+=8),g=p[l&T];i:for(;;){if(d=g>>>24,l>>>=d,u-=d,d=g>>>16&255,d&16){if(A=g&65535,d&=15,u<d&&(l+=k[r++]<<u,u+=8,u<d&&(l+=k[r++]<<u,u+=8)),A+=l&(1<<d)-1,A>_){i.msg="invalid distance too far back",m.mode=16209;break e}if(l>>>=d,u-=d,d=n-c,A>d){if(d=A-d,d>o&&m.sane){i.msg="invalid distance too far back",m.mode=16209;break e}if(h=0,S=w,v===0){if(h+=a-d,d<E){E-=d;do b[n++]=w[h++];while(--d);h=n-A,S=b}}else if(v<d){if(h+=a+v-d,d-=v,d<E){E-=d;do b[n++]=w[h++];while(--d);if(h=0,v<E){d=v,E-=d;do b[n++]=w[h++];while(--d);h=n-A,S=b}}}else if(h+=v-d,d<E){E-=d;do b[n++]=w[h++];while(--d);h=n-A,S=b}for(;E>2;)b[n++]=S[h++],b[n++]=S[h++],b[n++]=S[h++],E-=3;E&&(b[n++]=S[h++],E>1&&(b[n++]=S[h++]))}else{h=n-A;do b[n++]=b[h++],b[n++]=b[h++],b[n++]=b[h++],E-=3;while(E>2);E&&(b[n++]=b[h++],E>1&&(b[n++]=b[h++]))}}else if((d&64)===0){g=p[(g&65535)+(l&(1<<d)-1)];continue i}else{i.msg="invalid distance code",m.mode=16209;break e}break}}else if((d&64)===0){g=I[(g&65535)+(l&(1<<d)-1)];continue t}else if(d&32){m.mode=16191;break e}else{i.msg="invalid literal/length code",m.mode=16209;break e}break}}while(r<s&&n<f);E=u>>3,r-=E,u-=E<<3,l&=(1<<u)-1,i.next_in=r,i.next_out=n,i.avail_in=r<s?5+(s-r):5-(r-s),i.avail_out=n<f?257+(f-n):257-(n-f),m.hold=l,m.bits=u}});var Me=R((Hi,Ne)=>{"use strict";var Gt=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),Yt=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),Xt=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),qt=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]),Kt=(t,i,e,r,s,n,c,f)=>{let _=f.bits,a=0,o=0,v=0,w=0,l=0,u=0,I=0,p=0,x=0,T=0,g,d,E,A,h,S=null,k,b=new Uint16Array(16),m=new Uint16Array(16),L=null,Ee,W,Q;for(a=0;a<=15;a++)b[a]=0;for(o=0;o<r;o++)b[i[e+o]]++;for(l=_,w=15;w>=1&&b[w]===0;w--);if(l>w&&(l=w),w===0)return s[n++]=1<<24|64<<16|0,s[n++]=1<<24|64<<16|0,f.bits=1,0;for(v=1;v<w&&b[v]===0;v++);for(l<v&&(l=v),p=1,a=1;a<=15;a++)if(p<<=1,p-=b[a],p<0)return-1;if(p>0&&(t===0||w!==1))return-1;for(m[1]=0,a=1;a<15;a++)m[a+1]=m[a]+b[a];for(o=0;o<r;o++)i[e+o]!==0&&(c[m[i[e+o]]++]=o);if(t===0?(S=L=c,k=20):t===1?(S=Gt,L=Yt,k=257):(S=Xt,L=qt,k=0),T=0,o=0,a=v,h=n,u=l,I=0,E=-1,x=1<<l,A=x-1,t===1&&x>852||t===2&&x>592)return 1;for(;;){Ee=a-I,c[o]+1<k?(W=0,Q=c[o]):c[o]>=k?(W=L[c[o]-k],Q=S[c[o]-k]):(W=96,Q=0),g=1<<a-I,d=1<<u,v=d;do d-=g,s[h+(T>>I)+d]=Ee<<24|W<<16|Q|0;while(d!==0);for(g=1<<a-1;T&g;)g>>=1;if(g!==0?(T&=g-1,T+=g):T=0,o++,--b[a]===0){if(a===w)break;a=i[e+c[o]]}if(a>l&&(T&A)!==E){for(I===0&&(I=l),h+=v,u=a-I,p=1<<u;u+I<w&&(p-=b[u+I],!(p<=0));)u++,p<<=1;if(x+=1<<u,t===1&&x>852||t===2&&x>592)return 1;E=T&A,s[E]=l<<24|u<<16|h-n|0}}return T!==0&&(s[h+T]=a-I<<24|64<<16|0),f.bits=l,0};Ne.exports=Kt});var J=R((Fi,Ze)=>{"use strict";Ze.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var bt=R((Vi,O)=>{"use strict";var he=Ie(),M=De(),jt=Oe(),X=Me(),Wt=0,st=1,ft=2,{Z_FINISH:Be,Z_BLOCK:Qt,Z_TREES:$,Z_OK:P,Z_STREAM_END:Jt,Z_NEED_DICT:$t,Z_STREAM_ERROR:U,Z_DATA_ERROR:lt,Z_MEM_ERROR:ue,Z_BUF_ERROR:ei,Z_DEFLATED:Ce}=J(),ne=16180,Le=16181,Pe=16182,ze=16183,He=16184,Fe=16185,Ve=16186,Ge=16187,Ye=16188,Xe=16189,ie=16190,Z=16191,se=16192,qe=16193,fe=16194,Ke=16195,je=16196,We=16197,Qe=16198,ee=16199,te=16200,Je=16201,$e=16202,et=16203,tt=16204,it=16205,le=16206,nt=16207,rt=16208,y=16209,we=16210,ct=16211,ti=852,ii=592,ni=15,ri=ni,at=t=>(t>>>24&255)+(t>>>8&65280)+((t&65280)<<8)+((t&255)<<24);function ai(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}var z=t=>{if(!t)return 1;let i=t.state;return!i||i.strm!==t||i.mode<ne||i.mode>ct?1:0},dt=t=>{if(z(t))return U;let i=t.state;return t.total_in=t.total_out=i.total=0,t.msg="",i.wrap&&(t.adler=i.wrap&1),i.mode=ne,i.last=0,i.havedict=0,i.flags=-1,i.dmax=32768,i.head=null,i.hold=0,i.bits=0,i.lencode=i.lendyn=new Int32Array(ti),i.distcode=i.distdyn=new Int32Array(ii),i.sane=1,i.back=-1,P},ht=t=>{if(z(t))return U;let i=t.state;return i.wsize=0,i.whave=0,i.wnext=0,dt(t)},ut=(t,i)=>{let e;if(z(t))return U;let r=t.state;return i<0?(e=0,i=-i):(e=(i>>4)+5,i<48&&(i&=15)),i&&(i<8||i>15)?U:(r.window!==null&&r.wbits!==i&&(r.window=null),r.wrap=e,r.wbits=i,ht(t))},wt=(t,i)=>{if(!t)return U;let e=new ai;t.state=e,e.strm=t,e.window=null,e.mode=ne;let r=ut(t,i);return r!==P&&(t.state=null),r},oi=t=>wt(t,ri),ot=!0,ce,de,si=t=>{if(ot){ce=new Int32Array(512),de=new Int32Array(32);let i=0;for(;i<144;)t.lens[i++]=8;for(;i<256;)t.lens[i++]=9;for(;i<280;)t.lens[i++]=7;for(;i<288;)t.lens[i++]=8;for(X(st,t.lens,0,288,ce,0,t.work,{bits:9}),i=0;i<32;)t.lens[i++]=5;X(ft,t.lens,0,32,de,0,t.work,{bits:5}),ot=!1}t.lencode=ce,t.lenbits=9,t.distcode=de,t.distbits=5},xt=(t,i,e,r)=>{let s,n=t.state;return n.window===null&&(n.wsize=1<<n.wbits,n.wnext=0,n.whave=0,n.window=new Uint8Array(n.wsize)),r>=n.wsize?(n.window.set(i.subarray(e-n.wsize,e),0),n.wnext=0,n.whave=n.wsize):(s=n.wsize-n.wnext,s>r&&(s=r),n.window.set(i.subarray(e-r,e-r+s),n.wnext),r-=s,r?(n.window.set(i.subarray(e-r,e),0),n.wnext=r,n.whave=n.wsize):(n.wnext+=s,n.wnext===n.wsize&&(n.wnext=0),n.whave<n.wsize&&(n.whave+=s))),0},fi=(t,i)=>{let e,r,s,n,c,f,_,a,o,v,w,l,u,I,p=0,x,T,g,d,E,A,h,S,k=new Uint8Array(4),b,m,L=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(z(t)||!t.output||!t.input&&t.avail_in!==0)return U;e=t.state,e.mode===Z&&(e.mode=se),c=t.next_out,s=t.output,_=t.avail_out,n=t.next_in,r=t.input,f=t.avail_in,a=e.hold,o=e.bits,v=f,w=_,S=P;e:for(;;)switch(e.mode){case ne:if(e.wrap===0){e.mode=se;break}for(;o<16;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}if(e.wrap&2&&a===35615){e.wbits===0&&(e.wbits=15),e.check=0,k[0]=a&255,k[1]=a>>>8&255,e.check=M(e.check,k,2,0),a=0,o=0,e.mode=Le;break}if(e.head&&(e.head.done=!1),!(e.wrap&1)||(((a&255)<<8)+(a>>8))%31){t.msg="incorrect header check",e.mode=y;break}if((a&15)!==Ce){t.msg="unknown compression method",e.mode=y;break}if(a>>>=4,o-=4,h=(a&15)+8,e.wbits===0&&(e.wbits=h),h>15||h>e.wbits){t.msg="invalid window size",e.mode=y;break}e.dmax=1<<e.wbits,e.flags=0,t.adler=e.check=1,e.mode=a&512?Xe:Z,a=0,o=0;break;case Le:for(;o<16;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}if(e.flags=a,(e.flags&255)!==Ce){t.msg="unknown compression method",e.mode=y;break}if(e.flags&57344){t.msg="unknown header flags set",e.mode=y;break}e.head&&(e.head.text=a>>8&1),e.flags&512&&e.wrap&4&&(k[0]=a&255,k[1]=a>>>8&255,e.check=M(e.check,k,2,0)),a=0,o=0,e.mode=Pe;case Pe:for(;o<32;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}e.head&&(e.head.time=a),e.flags&512&&e.wrap&4&&(k[0]=a&255,k[1]=a>>>8&255,k[2]=a>>>16&255,k[3]=a>>>24&255,e.check=M(e.check,k,4,0)),a=0,o=0,e.mode=ze;case ze:for(;o<16;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}e.head&&(e.head.xflags=a&255,e.head.os=a>>8),e.flags&512&&e.wrap&4&&(k[0]=a&255,k[1]=a>>>8&255,e.check=M(e.check,k,2,0)),a=0,o=0,e.mode=He;case He:if(e.flags&1024){for(;o<16;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}e.length=a,e.head&&(e.head.extra_len=a),e.flags&512&&e.wrap&4&&(k[0]=a&255,k[1]=a>>>8&255,e.check=M(e.check,k,2,0)),a=0,o=0}else e.head&&(e.head.extra=null);e.mode=Fe;case Fe:if(e.flags&1024&&(l=e.length,l>f&&(l=f),l&&(e.head&&(h=e.head.extra_len-e.length,e.head.extra||(e.head.extra=new Uint8Array(e.head.extra_len)),e.head.extra.set(r.subarray(n,n+l),h)),e.flags&512&&e.wrap&4&&(e.check=M(e.check,r,l,n)),f-=l,n+=l,e.length-=l),e.length))break e;e.length=0,e.mode=Ve;case Ve:if(e.flags&2048){if(f===0)break e;l=0;do h=r[n+l++],e.head&&h&&e.length<65536&&(e.head.name+=String.fromCharCode(h));while(h&&l<f);if(e.flags&512&&e.wrap&4&&(e.check=M(e.check,r,l,n)),f-=l,n+=l,h)break e}else e.head&&(e.head.name=null);e.length=0,e.mode=Ge;case Ge:if(e.flags&4096){if(f===0)break e;l=0;do h=r[n+l++],e.head&&h&&e.length<65536&&(e.head.comment+=String.fromCharCode(h));while(h&&l<f);if(e.flags&512&&e.wrap&4&&(e.check=M(e.check,r,l,n)),f-=l,n+=l,h)break e}else e.head&&(e.head.comment=null);e.mode=Ye;case Ye:if(e.flags&512){for(;o<16;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}if(e.wrap&4&&a!==(e.check&65535)){t.msg="header crc mismatch",e.mode=y;break}a=0,o=0}e.head&&(e.head.hcrc=e.flags>>9&1,e.head.done=!0),t.adler=e.check=0,e.mode=Z;break;case Xe:for(;o<32;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}t.adler=e.check=at(a),a=0,o=0,e.mode=ie;case ie:if(e.havedict===0)return t.next_out=c,t.avail_out=_,t.next_in=n,t.avail_in=f,e.hold=a,e.bits=o,$t;t.adler=e.check=1,e.mode=Z;case Z:if(i===Qt||i===$)break e;case se:if(e.last){a>>>=o&7,o-=o&7,e.mode=le;break}for(;o<3;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}switch(e.last=a&1,a>>>=1,o-=1,a&3){case 0:e.mode=qe;break;case 1:if(si(e),e.mode=ee,i===$){a>>>=2,o-=2;break e}break;case 2:e.mode=je;break;case 3:t.msg="invalid block type",e.mode=y}a>>>=2,o-=2;break;case qe:for(a>>>=o&7,o-=o&7;o<32;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}if((a&65535)!==(a>>>16^65535)){t.msg="invalid stored block lengths",e.mode=y;break}if(e.length=a&65535,a=0,o=0,e.mode=fe,i===$)break e;case fe:e.mode=Ke;case Ke:if(l=e.length,l){if(l>f&&(l=f),l>_&&(l=_),l===0)break e;s.set(r.subarray(n,n+l),c),f-=l,n+=l,_-=l,c+=l,e.length-=l;break}e.mode=Z;break;case je:for(;o<14;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}if(e.nlen=(a&31)+257,a>>>=5,o-=5,e.ndist=(a&31)+1,a>>>=5,o-=5,e.ncode=(a&15)+4,a>>>=4,o-=4,e.nlen>286||e.ndist>30){t.msg="too many length or distance symbols",e.mode=y;break}e.have=0,e.mode=We;case We:for(;e.have<e.ncode;){for(;o<3;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}e.lens[L[e.have++]]=a&7,a>>>=3,o-=3}for(;e.have<19;)e.lens[L[e.have++]]=0;if(e.lencode=e.lendyn,e.lenbits=7,b={bits:e.lenbits},S=X(Wt,e.lens,0,19,e.lencode,0,e.work,b),e.lenbits=b.bits,S){t.msg="invalid code lengths set",e.mode=y;break}e.have=0,e.mode=Qe;case Qe:for(;e.have<e.nlen+e.ndist;){for(;p=e.lencode[a&(1<<e.lenbits)-1],x=p>>>24,T=p>>>16&255,g=p&65535,!(x<=o);){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}if(g<16)a>>>=x,o-=x,e.lens[e.have++]=g;else{if(g===16){for(m=x+2;o<m;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}if(a>>>=x,o-=x,e.have===0){t.msg="invalid bit length repeat",e.mode=y;break}h=e.lens[e.have-1],l=3+(a&3),a>>>=2,o-=2}else if(g===17){for(m=x+3;o<m;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}a>>>=x,o-=x,h=0,l=3+(a&7),a>>>=3,o-=3}else{for(m=x+7;o<m;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}a>>>=x,o-=x,h=0,l=11+(a&127),a>>>=7,o-=7}if(e.have+l>e.nlen+e.ndist){t.msg="invalid bit length repeat",e.mode=y;break}for(;l--;)e.lens[e.have++]=h}}if(e.mode===y)break;if(e.lens[256]===0){t.msg="invalid code -- missing end-of-block",e.mode=y;break}if(e.lenbits=9,b={bits:e.lenbits},S=X(st,e.lens,0,e.nlen,e.lencode,0,e.work,b),e.lenbits=b.bits,S){t.msg="invalid literal/lengths set",e.mode=y;break}if(e.distbits=6,e.distcode=e.distdyn,b={bits:e.distbits},S=X(ft,e.lens,e.nlen,e.ndist,e.distcode,0,e.work,b),e.distbits=b.bits,S){t.msg="invalid distances set",e.mode=y;break}if(e.mode=ee,i===$)break e;case ee:e.mode=te;case te:if(f>=6&&_>=258){t.next_out=c,t.avail_out=_,t.next_in=n,t.avail_in=f,e.hold=a,e.bits=o,jt(t,w),c=t.next_out,s=t.output,_=t.avail_out,n=t.next_in,r=t.input,f=t.avail_in,a=e.hold,o=e.bits,e.mode===Z&&(e.back=-1);break}for(e.back=0;p=e.lencode[a&(1<<e.lenbits)-1],x=p>>>24,T=p>>>16&255,g=p&65535,!(x<=o);){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}if(T&&(T&240)===0){for(d=x,E=T,A=g;p=e.lencode[A+((a&(1<<d+E)-1)>>d)],x=p>>>24,T=p>>>16&255,g=p&65535,!(d+x<=o);){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}a>>>=d,o-=d,e.back+=d}if(a>>>=x,o-=x,e.back+=x,e.length=g,T===0){e.mode=it;break}if(T&32){e.back=-1,e.mode=Z;break}if(T&64){t.msg="invalid literal/length code",e.mode=y;break}e.extra=T&15,e.mode=Je;case Je:if(e.extra){for(m=e.extra;o<m;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}e.length+=a&(1<<e.extra)-1,a>>>=e.extra,o-=e.extra,e.back+=e.extra}e.was=e.length,e.mode=$e;case $e:for(;p=e.distcode[a&(1<<e.distbits)-1],x=p>>>24,T=p>>>16&255,g=p&65535,!(x<=o);){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}if((T&240)===0){for(d=x,E=T,A=g;p=e.distcode[A+((a&(1<<d+E)-1)>>d)],x=p>>>24,T=p>>>16&255,g=p&65535,!(d+x<=o);){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}a>>>=d,o-=d,e.back+=d}if(a>>>=x,o-=x,e.back+=x,T&64){t.msg="invalid distance code",e.mode=y;break}e.offset=g,e.extra=T&15,e.mode=et;case et:if(e.extra){for(m=e.extra;o<m;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}e.offset+=a&(1<<e.extra)-1,a>>>=e.extra,o-=e.extra,e.back+=e.extra}if(e.offset>e.dmax){t.msg="invalid distance too far back",e.mode=y;break}e.mode=tt;case tt:if(_===0)break e;if(l=w-_,e.offset>l){if(l=e.offset-l,l>e.whave&&e.sane){t.msg="invalid distance too far back",e.mode=y;break}l>e.wnext?(l-=e.wnext,u=e.wsize-l):u=e.wnext-l,l>e.length&&(l=e.length),I=e.window}else I=s,u=c-e.offset,l=e.length;l>_&&(l=_),_-=l,e.length-=l;do s[c++]=I[u++];while(--l);e.length===0&&(e.mode=te);break;case it:if(_===0)break e;s[c++]=e.length,_--,e.mode=te;break;case le:if(e.wrap){for(;o<32;){if(f===0)break e;f--,a|=r[n++]<<o,o+=8}if(w-=_,t.total_out+=w,e.total+=w,e.wrap&4&&w&&(t.adler=e.check=e.flags?M(e.check,s,w,c-w):he(e.check,s,w,c-w)),w=_,e.wrap&4&&(e.flags?a:at(a))!==e.check){t.msg="incorrect data check",e.mode=y;break}a=0,o=0}e.mode=nt;case nt:if(e.wrap&&e.flags){for(;o<32;){if(f===0)break e;f--,a+=r[n++]<<o,o+=8}if(e.wrap&4&&a!==(e.total&4294967295)){t.msg="incorrect length check",e.mode=y;break}a=0,o=0}e.mode=rt;case rt:S=Jt;break e;case y:S=lt;break e;case we:return ue;case ct:default:return U}return t.next_out=c,t.avail_out=_,t.next_in=n,t.avail_in=f,e.hold=a,e.bits=o,(e.wsize||w!==t.avail_out&&e.mode<y&&(e.mode<le||i!==Be))&&xt(t,t.output,t.next_out,w-t.avail_out)?(e.mode=we,ue):(v-=t.avail_in,w-=t.avail_out,t.total_in+=v,t.total_out+=w,e.total+=w,e.wrap&4&&w&&(t.adler=e.check=e.flags?M(e.check,s,w,t.next_out-w):he(e.check,s,w,t.next_out-w)),t.data_type=e.bits+(e.last?64:0)+(e.mode===Z?128:0)+(e.mode===ee||e.mode===fe?256:0),(v===0&&w===0||i===Be)&&S===P&&(S=ei),S)},li=t=>{if(z(t))return U;let i=t.state;return i.window&&(i.window=null),t.state=null,P},ci=(t,i)=>{if(z(t))return U;let e=t.state;return(e.wrap&2)===0?U:(e.head=i,i.done=!1,P)},di=(t,i)=>{let e=i.length,r,s,n;return z(t)||(r=t.state,r.wrap!==0&&r.mode!==ie)?U:r.mode===ie&&(s=1,s=he(s,i,e,0),s!==r.check)?lt:(n=xt(t,i,e,e),n?(r.mode=we,ue):(r.havedict=1,P))};O.exports.inflateReset=ht;O.exports.inflateReset2=ut;O.exports.inflateResetKeep=dt;O.exports.inflateInit=oi;O.exports.inflateInit2=wt;O.exports.inflate=fi;O.exports.inflateEnd=li;O.exports.inflateGetHeader=ci;O.exports.inflateSetDictionary=di;O.exports.inflateInfo="pako inflate (from Nodeca project)"});var _t=R((Gi,xe)=>{"use strict";var hi=(t,i)=>Object.prototype.hasOwnProperty.call(t,i);xe.exports.assign=function(t){let i=Array.prototype.slice.call(arguments,1);for(;i.length;){let e=i.shift();if(e){if(typeof e!="object")throw new TypeError(e+"must be non-object");for(let r in e)hi(e,r)&&(t[r]=e[r])}}return t};xe.exports.flattenChunks=t=>{let i=0;for(let r=0,s=t.length;r<s;r++)i+=t[r].length;let e=new Uint8Array(i);for(let r=0,s=0,n=t.length;r<n;r++){let c=t[r];e.set(c,s),s+=c.length}return e}});var kt=R((Yi,re)=>{"use strict";var gt=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{gt=!1}var q=new Uint8Array(256);for(let t=0;t<256;t++)q[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;q[254]=q[254]=1;re.exports.string2buf=t=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(t);let i,e,r,s,n,c=t.length,f=0;for(s=0;s<c;s++)e=t.charCodeAt(s),(e&64512)===55296&&s+1<c&&(r=t.charCodeAt(s+1),(r&64512)===56320&&(e=65536+(e-55296<<10)+(r-56320),s++)),f+=e<128?1:e<2048?2:e<65536?3:4;for(i=new Uint8Array(f),n=0,s=0;n<f;s++)e=t.charCodeAt(s),(e&64512)===55296&&s+1<c&&(r=t.charCodeAt(s+1),(r&64512)===56320&&(e=65536+(e-55296<<10)+(r-56320),s++)),e<128?i[n++]=e:e<2048?(i[n++]=192|e>>>6,i[n++]=128|e&63):e<65536?(i[n++]=224|e>>>12,i[n++]=128|e>>>6&63,i[n++]=128|e&63):(i[n++]=240|e>>>18,i[n++]=128|e>>>12&63,i[n++]=128|e>>>6&63,i[n++]=128|e&63);return i};var ui=(t,i)=>{if(i<65534&&t.subarray&>)return String.fromCharCode.apply(null,t.length===i?t:t.subarray(0,i));let e="";for(let r=0;r<i;r++)e+=String.fromCharCode(t[r]);return e};re.exports.buf2string=(t,i)=>{let e=i||t.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(t.subarray(0,i));let r,s,n=new Array(e*2);for(s=0,r=0;r<e;){let c=t[r++];if(c<128){n[s++]=c;continue}let f=q[c];if(f>4){n[s++]=65533,r+=f-1;continue}for(c&=f===2?31:f===3?15:7;f>1&&r<e;)c=c<<6|t[r++]&63,f--;if(f>1){n[s++]=65533;continue}c<65536?n[s++]=c:(c-=65536,n[s++]=55296|c>>10&1023,n[s++]=56320|c&1023)}return ui(n,s)};re.exports.utf8border=(t,i)=>{i=i||t.length,i>t.length&&(i=t.length);let e=i-1;for(;e>=0&&(t[e]&192)===128;)e--;return e<0||e===0?i:e+q[t[e]]>i?e:i}});var Et=R((Xi,pt)=>{"use strict";pt.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var St=R((qi,mt)=>{"use strict";function wi(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}mt.exports=wi});var vt=R((Ki,Tt)=>{"use strict";function xi(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}Tt.exports=xi});var Rt=R((ji,V)=>{"use strict";var B=bt(),At=_t(),ge=kt(),ke=Et(),bi=St(),_i=vt(),It=Object.prototype.toString,{Z_NO_FLUSH:gi,Z_FINISH:ki,Z_OK:K,Z_STREAM_END:be,Z_NEED_DICT:_e,Z_STREAM_ERROR:pi,Z_DATA_ERROR:yt,Z_MEM_ERROR:Ei}=J();function j(t){this.options=At.assign({chunkSize:1024*64,windowBits:15,to:""},t||{});let i=this.options;i.raw&&i.windowBits>=0&&i.windowBits<16&&(i.windowBits=-i.windowBits,i.windowBits===0&&(i.windowBits=-15)),i.windowBits>=0&&i.windowBits<16&&!(t&&t.windowBits)&&(i.windowBits+=32),i.windowBits>15&&i.windowBits<48&&(i.windowBits&15)===0&&(i.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new bi,this.strm.avail_out=0;let e=B.inflateInit2(this.strm,i.windowBits);if(e!==K)throw new Error(ke[e]);if(this.header=new _i,B.inflateGetHeader(this.strm,this.header),i.dictionary&&(typeof i.dictionary=="string"?i.dictionary=ge.string2buf(i.dictionary):It.call(i.dictionary)==="[object ArrayBuffer]"&&(i.dictionary=new Uint8Array(i.dictionary)),i.raw&&(e=B.inflateSetDictionary(this.strm,i.dictionary),e!==K)))throw new Error(ke[e])}j.prototype.push=function(t,i){let e=this.strm,r=this.options.chunkSize,s=this.options.dictionary,n,c,f;if(this.ended)return!1;for(i===~~i?c=i:c=i===!0?ki:gi,It.call(t)==="[object ArrayBuffer]"?e.input=new Uint8Array(t):e.input=t,e.next_in=0,e.avail_in=e.input.length;;){for(e.avail_out===0&&(e.output=new Uint8Array(r),e.next_out=0,e.avail_out=r),n=B.inflate(e,c),n===_e&&s&&(n=B.inflateSetDictionary(e,s),n===K?n=B.inflate(e,c):n===yt&&(n=_e));e.avail_in>0&&n===be&&e.state.wrap>0&&t[e.next_in]!==0;)B.inflateReset(e),n=B.inflate(e,c);switch(n){case pi:case yt:case _e:case Ei:return this.onEnd(n),this.ended=!0,!1}if(f=e.avail_out,e.next_out&&(e.avail_out===0||n===be))if(this.options.to==="string"){let _=ge.utf8border(e.output,e.next_out),a=e.next_out-_,o=ge.buf2string(e.output,_);e.next_out=a,e.avail_out=r-a,a&&e.output.set(e.output.subarray(_,_+a),0),this.onData(o)}else this.onData(e.output.length===e.next_out?e.output:e.output.subarray(0,e.next_out));if(!(n===K&&f===0)){if(n===be)return n=B.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,!0;if(e.avail_in===0)break}}return!0};j.prototype.onData=function(t){this.chunks.push(t)};j.prototype.onEnd=function(t){t===K&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=At.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function pe(t,i){let e=new j(i);if(e.push(t),e.err)throw e.msg||ke[e.err];return e.result}function mi(t,i){return i=i||{},i.raw=!0,pe(t,i)}V.exports.Inflate=j;V.exports.inflate=pe;V.exports.inflateRaw=mi;V.exports.ungzip=pe;V.exports.constants=J()});var Nt=1953029805,Mt=2917034100;function oe(t,i){if(oe.passThroughDataForTesting)return i;ae.typeOf.object("key",t),ae.typeOf.object("data",i);let e=t.byteLength;if(e===0||e%4!==0)throw new D("The length of key must be greater than 0 and a multiple of 4.");let r=new DataView(i),s=r.getUint32(0,!0);if(s===Nt||s===Mt)return i;let n=new DataView(t),c=0,f=i.byteLength,_=f-f%8,a=e,o,v=8;for(;c<_;)for(v=(v+8)%24,o=v;c<_&&o<a;)r.setUint32(c,r.getUint32(c,!0)^n.getUint32(o,!0),!0),r.setUint32(c+4,r.getUint32(c+4,!0)^n.getUint32(o+4,!0),!0),c+=8,o+=24;if(c<f)for(o>=a&&(v=(v+8)%24,o=v);c<f;)r.setUint8(c,r.getUint8(c)^n.getUint8(o)),c++,o++}oe.passThroughDataForTesting=!1;var Te=oe;function Zt(t,i){return(t&i)!==0}var F=Zt;var Bt=[1,2,4,8],ve=15,Ct=16,Lt=64,Pt=128;function N(t,i,e,r,s,n){this._bits=t,this.cnodeVersion=i,this.imageryVersion=e,this.terrainVersion=r,this.imageryProvider=s,this.terrainProvider=n,this.ancestorHasTerrain=!1,this.terrainState=void 0}N.clone=function(t,i){return me(i)?(i._bits=t._bits,i.cnodeVersion=t.cnodeVersion,i.imageryVersion=t.imageryVersion,i.terrainVersion=t.terrainVersion,i.imageryProvider=t.imageryProvider,i.terrainProvider=t.terrainProvider):i=new N(t._bits,t.cnodeVersion,t.imageryVersion,t.terrainVersion,t.imageryProvider,t.terrainProvider),i.ancestorHasTerrain=t.ancestorHasTerrain,i.terrainState=t.terrainState,i};N.prototype.setParent=function(t){this.ancestorHasTerrain=t.ancestorHasTerrain||this.hasTerrain()};N.prototype.hasSubtree=function(){return F(this._bits,Ct)};N.prototype.hasImagery=function(){return F(this._bits,Lt)};N.prototype.hasTerrain=function(){return F(this._bits,Pt)};N.prototype.hasChildren=function(){return F(this._bits,ve)};N.prototype.hasChild=function(t){return F(this._bits,Bt[t])};N.prototype.getChildBitmask=function(){return this._bits&ve};var ye=N;var Ut=Ot(Rt(),1);var G=Uint16Array.BYTES_PER_ELEMENT,H=Int32Array.BYTES_PER_ELEMENT,Y=Uint32Array.BYTES_PER_ELEMENT,C={METADATA:0,TERRAIN:1,DBROOT:2};C.fromString=function(t){if(t==="Metadata")return C.METADATA;if(t==="Terrain")return C.TERRAIN;if(t==="DbRoot")return C.DBROOT};function Si(t,i){let e=C.fromString(t.type),r=t.buffer;Te(t.key,r);let s=Di(r);r=s.buffer;let n=s.length;switch(e){case C.METADATA:return vi(r,n,t.quadKey);case C.TERRAIN:return Ii(r,n,i);case C.DBROOT:return i.push(r),{buffer:r}}}var Ti=32301;function vi(t,i,e){let r=new DataView(t),s=0,n=r.getUint32(s,!0);if(s+=Y,n!==Ti)throw new D("Invalid magic");let c=r.getUint32(s,!0);if(s+=Y,c!==1)throw new D("Invalid data type. Must be 1 for QuadTreePacket");let f=r.getUint32(s,!0);if(s+=Y,f!==2)throw new D("Invalid QuadTreePacket version. Only version 2 is supported.");let _=r.getInt32(s,!0);s+=H;let a=r.getInt32(s,!0);if(s+=H,a!==32)throw new D("Invalid instance size.");let o=r.getInt32(s,!0);s+=H;let v=r.getInt32(s,!0);s+=H;let w=r.getInt32(s,!0);if(s+=H,o!==_*a+s)throw new D("Invalid dataBufferOffset");if(o+v+w!==i)throw new D("Invalid packet offsets");let l=[];for(let g=0;g<_;++g){let d=r.getUint8(s);++s,++s;let E=r.getUint16(s,!0);s+=G;let A=r.getUint16(s,!0);s+=G;let h=r.getUint16(s,!0);s+=G,s+=G,s+=G,s+=H,s+=H,s+=8;let S=r.getUint8(s++),k=r.getUint8(s++);s+=G,l.push(new ye(d,E,A,h,S,k))}let u=[],I=0;function p(g,d,E){let A=!1;if(E===4){if(d.hasSubtree())return;A=!0}for(let h=0;h<4;++h){let S=g+h.toString();if(A)u[S]=null;else if(E<4)if(!d.hasChild(h))u[S]=null;else{if(I===_){console.log("Incorrect number of instances");return}let k=l[I++];u[S]=k,p(S,k,E+1)}}}let x=0,T=l[I++];return e===""?++x:u[e]=T,p(e,T,x),u}var yi=5,Ai=4;function Ii(t,i,e){let r=new DataView(t),s=function(f){for(let _=0;_<Ai;++_){let a=r.getUint32(f,!0);if(f+=Y,f+=a,f>i)throw new D("Malformed terrain packet found.")}return f},n=0,c=[];for(;c.length<yi;){let f=n;n=s(n);let _=t.slice(f,n);e.push(_),c.push(_)}return c}var Dt=1953029805,Ri=2917034100;function Di(t){let i=new DataView(t),e=0,r=i.getUint32(e,!0);if(e+=Y,r!==Dt&&r!==Ri)throw new D("Invalid magic");let s=i.getUint32(e,r===Dt);e+=Y;let n=new Uint8Array(t,e),c=Ut.default.inflate(n);if(c.length!==s)throw new D("Size of packet doesn't match header");return c}var en=Se(Si);export{en as default};
|