dy3dmap
Version:
1,236 lines (1,235 loc) • 388 kB
JavaScript
!(function (e, t) {
if ("object" == typeof exports && "object" == typeof module)
module.exports = t();
else if ("function" == typeof define && define.amd) define([], t);
else {
var n = t();
for (var r in n) ("object" == typeof exports ? exports : e)[r] = n[r];
}
})(globalThis, () =>
(() => {
"use strict";
var e = {
578: (e, t, n) => {
n.d(t, { default: () => ci });
const r = 15,
i = 573,
a = -1,
s = 0,
o = 4,
c = 0,
l = 1,
d = -2;
function f(e) {
return u(e.map(([e, t]) => new Array(e).fill(t, 0, e)));
}
function u(e) {
return e.reduce(
(e, t) => e.concat(Array.isArray(t) ? u(t) : t),
[]
);
}
const p = [0, 1, 2, 3].concat(
...f([
[2, 4],
[2, 5],
[4, 6],
[4, 7],
[8, 8],
[8, 9],
[16, 10],
[16, 11],
[32, 12],
[32, 13],
[64, 14],
[64, 15],
[2, 0],
[1, 16],
[1, 17],
[2, 18],
[2, 19],
[4, 20],
[4, 21],
[8, 22],
[8, 23],
[16, 24],
[16, 25],
[32, 26],
[32, 27],
[64, 28],
[64, 29],
])
);
function m() {
const e = this;
function t(e, t) {
let n = 0;
do {
(n |= 1 & e), (e >>>= 1), (n <<= 1);
} while (--t > 0);
return n >>> 1;
}
e.build_tree = function (n) {
const a = e.dyn_tree,
s = e.stat_desc.static_tree,
o = e.stat_desc.elems;
let c,
l,
d,
f = -1;
for (n.heap_len = 0, n.heap_max = i, c = 0; c < o; c++)
0 !== a[2 * c]
? ((n.heap[++n.heap_len] = f = c), (n.depth[c] = 0))
: (a[2 * c + 1] = 0);
for (; n.heap_len < 2; )
(d = n.heap[++n.heap_len] = f < 2 ? ++f : 0),
(a[2 * d] = 1),
(n.depth[d] = 0),
n.opt_len--,
s && (n.static_len -= s[2 * d + 1]);
for (e.max_code = f, c = Math.floor(n.heap_len / 2); c >= 1; c--)
n.pqdownheap(a, c);
d = o;
do {
(c = n.heap[1]),
(n.heap[1] = n.heap[n.heap_len--]),
n.pqdownheap(a, 1),
(l = n.heap[1]),
(n.heap[--n.heap_max] = c),
(n.heap[--n.heap_max] = l),
(a[2 * d] = a[2 * c] + a[2 * l]),
(n.depth[d] = Math.max(n.depth[c], n.depth[l]) + 1),
(a[2 * c + 1] = a[2 * l + 1] = d),
(n.heap[1] = d++),
n.pqdownheap(a, 1);
} while (n.heap_len >= 2);
(n.heap[--n.heap_max] = n.heap[1]),
(function (t) {
const n = e.dyn_tree,
a = e.stat_desc.static_tree,
s = e.stat_desc.extra_bits,
o = e.stat_desc.extra_base,
c = e.stat_desc.max_length;
let l,
d,
f,
u,
p,
m,
h = 0;
for (u = 0; u <= r; u++) t.bl_count[u] = 0;
for (
n[2 * t.heap[t.heap_max] + 1] = 0, l = t.heap_max + 1;
l < i;
l++
)
(d = t.heap[l]),
(u = n[2 * n[2 * d + 1] + 1] + 1),
u > c && ((u = c), h++),
(n[2 * d + 1] = u),
d > e.max_code ||
(t.bl_count[u]++,
(p = 0),
d >= o && (p = s[d - o]),
(m = n[2 * d]),
(t.opt_len += m * (u + p)),
a && (t.static_len += m * (a[2 * d + 1] + p)));
if (0 !== h) {
do {
for (u = c - 1; 0 === t.bl_count[u]; ) u--;
t.bl_count[u]--,
(t.bl_count[u + 1] += 2),
t.bl_count[c]--,
(h -= 2);
} while (h > 0);
for (u = c; 0 !== u; u--)
for (d = t.bl_count[u]; 0 !== d; )
(f = t.heap[--l]),
f > e.max_code ||
(n[2 * f + 1] != u &&
((t.opt_len += (u - n[2 * f + 1]) * n[2 * f]),
(n[2 * f + 1] = u)),
d--);
}
})(n),
(function (e, n, i) {
const a = [];
let s,
o,
c,
l = 0;
for (s = 1; s <= r; s++) a[s] = l = (l + i[s - 1]) << 1;
for (o = 0; o <= n; o++)
(c = e[2 * o + 1]), 0 !== c && (e[2 * o] = t(a[c]++, c));
})(a, e.max_code, n.bl_count);
};
}
function h(e, t, n, r, i) {
const a = this;
(a.static_tree = e),
(a.extra_bits = t),
(a.extra_base = n),
(a.elems = r),
(a.max_length = i);
}
(m._length_code = [0, 1, 2, 3, 4, 5, 6, 7].concat(
...f([
[2, 8],
[2, 9],
[2, 10],
[2, 11],
[4, 12],
[4, 13],
[4, 14],
[4, 15],
[8, 16],
[8, 17],
[8, 18],
[8, 19],
[16, 20],
[16, 21],
[16, 22],
[16, 23],
[32, 24],
[32, 25],
[32, 26],
[31, 27],
[1, 28],
])
)),
(m.base_length = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, 32, 40, 48,
56, 64, 80, 96, 112, 128, 160, 192, 224, 0,
]),
(m.base_dist = [
0, 1, 2, 3, 4, 6, 8, 12, 16, 24, 32, 48, 64, 96, 128, 192, 256,
384, 512, 768, 1024, 1536, 2048, 3072, 4096, 6144, 8192, 12288,
16384, 24576,
]),
(m.d_code = function (e) {
return e < 256 ? p[e] : p[256 + (e >>> 7)];
}),
(m.extra_lbits = [
0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4,
4, 4, 5, 5, 5, 5, 0,
]),
(m.extra_dbits = [
0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,
10, 10, 11, 11, 12, 12, 13, 13,
]),
(m.extra_blbits = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7,
]),
(m.bl_order = [
16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15,
]);
const w = f([
[144, 8],
[112, 9],
[24, 7],
[8, 8],
]);
h.static_ltree = u(
[
12, 140, 76, 204, 44, 172, 108, 236, 28, 156, 92, 220, 60, 188,
124, 252, 2, 130, 66, 194, 34, 162, 98, 226, 18, 146, 82, 210, 50,
178, 114, 242, 10, 138, 74, 202, 42, 170, 106, 234, 26, 154, 90,
218, 58, 186, 122, 250, 6, 134, 70, 198, 38, 166, 102, 230, 22,
150, 86, 214, 54, 182, 118, 246, 14, 142, 78, 206, 46, 174, 110,
238, 30, 158, 94, 222, 62, 190, 126, 254, 1, 129, 65, 193, 33,
161, 97, 225, 17, 145, 81, 209, 49, 177, 113, 241, 9, 137, 73,
201, 41, 169, 105, 233, 25, 153, 89, 217, 57, 185, 121, 249, 5,
133, 69, 197, 37, 165, 101, 229, 21, 149, 85, 213, 53, 181, 117,
245, 13, 141, 77, 205, 45, 173, 109, 237, 29, 157, 93, 221, 61,
189, 125, 253, 19, 275, 147, 403, 83, 339, 211, 467, 51, 307, 179,
435, 115, 371, 243, 499, 11, 267, 139, 395, 75, 331, 203, 459, 43,
299, 171, 427, 107, 363, 235, 491, 27, 283, 155, 411, 91, 347,
219, 475, 59, 315, 187, 443, 123, 379, 251, 507, 7, 263, 135, 391,
71, 327, 199, 455, 39, 295, 167, 423, 103, 359, 231, 487, 23, 279,
151, 407, 87, 343, 215, 471, 55, 311, 183, 439, 119, 375, 247,
503, 15, 271, 143, 399, 79, 335, 207, 463, 47, 303, 175, 431, 111,
367, 239, 495, 31, 287, 159, 415, 95, 351, 223, 479, 63, 319, 191,
447, 127, 383, 255, 511, 0, 64, 32, 96, 16, 80, 48, 112, 8, 72,
40, 104, 24, 88, 56, 120, 4, 68, 36, 100, 20, 84, 52, 116, 3, 131,
67, 195, 35, 163, 99, 227,
].map((e, t) => [e, w[t]])
);
const g = f([[30, 5]]);
function v(e, t, n, r, i) {
const a = this;
(a.good_length = e),
(a.max_lazy = t),
(a.nice_length = n),
(a.max_chain = r),
(a.func = i);
}
(h.static_dtree = u(
[
0, 16, 8, 24, 4, 20, 12, 28, 2, 18, 10, 26, 6, 22, 14, 30, 1, 17,
9, 25, 5, 21, 13, 29, 3, 19, 11, 27, 7, 23,
].map((e, t) => [e, g[t]])
)),
(h.static_l_desc = new h(
h.static_ltree,
m.extra_lbits,
257,
286,
r
)),
(h.static_d_desc = new h(h.static_dtree, m.extra_dbits, 0, 30, r)),
(h.static_bl_desc = new h(null, m.extra_blbits, 0, 19, 7));
const b = [
new v(0, 0, 0, 0, 0),
new v(4, 4, 8, 4, 1),
new v(4, 5, 16, 8, 1),
new v(4, 6, 32, 32, 1),
new v(4, 4, 16, 16, 2),
new v(8, 16, 32, 32, 2),
new v(8, 16, 128, 128, 2),
new v(8, 32, 128, 256, 2),
new v(32, 128, 258, 1024, 2),
new v(32, 258, 258, 4096, 2),
],
x = [
"need dictionary",
"stream end",
"",
"",
"stream error",
"data error",
"",
"buffer error",
"",
"",
],
y = 113,
_ = 666,
k = 262;
function S(e, t, n, r) {
const i = e[2 * t],
a = e[2 * n];
return i < a || (i == a && r[t] <= r[n]);
}
function z() {
const e = this;
let t,
n,
r,
i,
f,
u,
p,
w,
g,
v,
z,
A,
C,
E,
I,
D,
j,
F,
U,
W,
T,
O,
R,
q,
B,
N,
L,
M,
P,
K,
V,
H,
X;
const $ = new m(),
Y = new m(),
Z = new m();
let J, G, Q, ee, te, ne;
function re() {
let t;
for (t = 0; t < 286; t++) V[2 * t] = 0;
for (t = 0; t < 30; t++) H[2 * t] = 0;
for (t = 0; t < 19; t++) X[2 * t] = 0;
(V[512] = 1), (e.opt_len = e.static_len = 0), (G = Q = 0);
}
function ie(e, t) {
let n,
r = -1,
i = e[1],
a = 0,
s = 7,
o = 4;
0 === i && ((s = 138), (o = 3)), (e[2 * (t + 1) + 1] = 65535);
for (let c = 0; c <= t; c++)
(n = i),
(i = e[2 * (c + 1) + 1]),
(++a < s && n == i) ||
(a < o
? (X[2 * n] += a)
: 0 !== n
? (n != r && X[2 * n]++, X[32]++)
: a <= 10
? X[34]++
: X[36]++,
(a = 0),
(r = n),
0 === i
? ((s = 138), (o = 3))
: n == i
? ((s = 6), (o = 3))
: ((s = 7), (o = 4)));
}
function ae(t) {
e.pending_buf[e.pending++] = t;
}
function se(e) {
ae(255 & e), ae((e >>> 8) & 255);
}
function oe(e, t) {
let n;
const r = t;
ne > 16 - r
? ((n = e),
(te |= (n << ne) & 65535),
se(te),
(te = n >>> (16 - ne)),
(ne += r - 16))
: ((te |= (e << ne) & 65535), (ne += r));
}
function ce(e, t) {
const n = 2 * e;
oe(65535 & t[n], 65535 & t[n + 1]);
}
function le(e, t) {
let n,
r,
i = -1,
a = e[1],
s = 0,
o = 7,
c = 4;
for (0 === a && ((o = 138), (c = 3)), n = 0; n <= t; n++)
if (((r = a), (a = e[2 * (n + 1) + 1]), !(++s < o && r == a))) {
if (s < c)
do {
ce(r, X);
} while (0 != --s);
else
0 !== r
? (r != i && (ce(r, X), s--), ce(16, X), oe(s - 3, 2))
: s <= 10
? (ce(17, X), oe(s - 3, 3))
: (ce(18, X), oe(s - 11, 7));
(s = 0),
(i = r),
0 === a
? ((o = 138), (c = 3))
: r == a
? ((o = 6), (c = 3))
: ((o = 7), (c = 4));
}
}
function de() {
16 == ne
? (se(te), (te = 0), (ne = 0))
: ne >= 8 && (ae(255 & te), (te >>>= 8), (ne -= 8));
}
function fe(t, n) {
let r, i, a;
if (
((e.dist_buf[G] = t),
(e.lc_buf[G] = 255 & n),
G++,
0 === t
? V[2 * n]++
: (Q++,
t--,
V[2 * (m._length_code[n] + 256 + 1)]++,
H[2 * m.d_code(t)]++),
0 == (8191 & G) && L > 2)
) {
for (r = 8 * G, i = T - j, a = 0; a < 30; a++)
r += H[2 * a] * (5 + m.extra_dbits[a]);
if (
((r >>>= 3), Q < Math.floor(G / 2) && r < Math.floor(i / 2))
)
return !0;
}
return G == J - 1;
}
function ue(t, n) {
let r,
i,
a,
s,
o = 0;
if (0 !== G)
do {
(r = e.dist_buf[o]),
(i = e.lc_buf[o]),
o++,
0 === r
? ce(i, t)
: ((a = m._length_code[i]),
ce(a + 256 + 1, t),
(s = m.extra_lbits[a]),
0 !== s && ((i -= m.base_length[a]), oe(i, s)),
r--,
(a = m.d_code(r)),
ce(a, n),
(s = m.extra_dbits[a]),
0 !== s && ((r -= m.base_dist[a]), oe(r, s)));
} while (o < G);
ce(256, t), (ee = t[513]);
}
function pe() {
ne > 8 ? se(te) : ne > 0 && ae(255 & te), (te = 0), (ne = 0);
}
function me(t, n, r) {
oe(0 + (r ? 1 : 0), 3),
(function (t, n, r) {
pe(),
(ee = 8),
se(n),
se(~n),
e.pending_buf.set(w.subarray(t, t + n), e.pending),
(e.pending += n);
})(t, n);
}
function he(n) {
(function (t, n, r) {
let i,
a,
s = 0;
L > 0
? ($.build_tree(e),
Y.build_tree(e),
(s = (function () {
let t;
for (
ie(V, $.max_code),
ie(H, Y.max_code),
Z.build_tree(e),
t = 18;
t >= 3 && 0 === X[2 * m.bl_order[t] + 1];
t--
);
return (e.opt_len += 3 * (t + 1) + 5 + 5 + 4), t;
})()),
(i = (e.opt_len + 3 + 7) >>> 3),
(a = (e.static_len + 3 + 7) >>> 3),
a <= i && (i = a))
: (i = a = n + 5),
n + 4 <= i && -1 != t
? me(t, n, r)
: a == i
? (oe(2 + (r ? 1 : 0), 3),
ue(h.static_ltree, h.static_dtree))
: (oe(4 + (r ? 1 : 0), 3),
(function (e, t, n) {
let r;
for (
oe(e - 257, 5), oe(t - 1, 5), oe(n - 4, 4), r = 0;
r < n;
r++
)
oe(X[2 * m.bl_order[r] + 1], 3);
le(V, e - 1), le(H, t - 1);
})($.max_code + 1, Y.max_code + 1, s + 1),
ue(V, H)),
re(),
r && pe();
})(j >= 0 ? j : -1, T - j, n),
(j = T),
t.flush_pending();
}
function we() {
let e, n, r, i;
do {
if (((i = g - R - T), 0 === i && 0 === T && 0 === R)) i = f;
else if (-1 == i) i--;
else if (T >= f + f - k) {
w.set(w.subarray(f, f + f), 0),
(O -= f),
(T -= f),
(j -= f),
(e = C),
(r = e);
do {
(n = 65535 & z[--r]), (z[r] = n >= f ? n - f : 0);
} while (0 != --e);
(e = f), (r = e);
do {
(n = 65535 & v[--r]), (v[r] = n >= f ? n - f : 0);
} while (0 != --e);
i += f;
}
if (0 === t.avail_in) return;
(e = t.read_buf(w, T + R, i)),
(R += e),
R >= 3 &&
((A = 255 & w[T]), (A = ((A << D) ^ (255 & w[T + 1])) & I));
} while (R < k && 0 !== t.avail_in);
}
function ge(e) {
let t,
n,
r = B,
i = T,
a = q;
const s = T > f - k ? T - (f - k) : 0;
let o = K;
const c = p,
l = T + 258;
let d = w[i + a - 1],
u = w[i + a];
q >= P && (r >>= 2), o > R && (o = R);
do {
if (
((t = e),
w[t + a] == u &&
w[t + a - 1] == d &&
w[t] == w[i] &&
w[++t] == w[i + 1])
) {
(i += 2), t++;
do {} while (
w[++i] == w[++t] &&
w[++i] == w[++t] &&
w[++i] == w[++t] &&
w[++i] == w[++t] &&
w[++i] == w[++t] &&
w[++i] == w[++t] &&
w[++i] == w[++t] &&
w[++i] == w[++t] &&
i < l
);
if (((n = 258 - (l - i)), (i = l - 258), n > a)) {
if (((O = e), (a = n), n >= o)) break;
(d = w[i + a - 1]), (u = w[i + a]);
}
}
} while ((e = 65535 & v[e & c]) > s && 0 != --r);
return a <= R ? a : R;
}
(e.depth = []),
(e.bl_count = []),
(e.heap = []),
(V = []),
(H = []),
(X = []),
(e.pqdownheap = function (t, n) {
const r = e.heap,
i = r[n];
let a = n << 1;
for (
;
a <= e.heap_len &&
(a < e.heap_len && S(t, r[a + 1], r[a], e.depth) && a++,
!S(t, i, r[a], e.depth));
)
(r[n] = r[a]), (n = a), (a <<= 1);
r[n] = i;
}),
(e.deflateInit = function (t, o, l, m, x, _) {
return (
m || (m = 8),
x || (x = 8),
_ || (_ = 0),
(t.msg = null),
o == a && (o = 6),
x < 1 ||
x > 9 ||
8 != m ||
l < 9 ||
l > 15 ||
o < 0 ||
o > 9 ||
_ < 0 ||
_ > 2
? d
: ((t.dstate = e),
(u = l),
(f = 1 << u),
(p = f - 1),
(E = x + 7),
(C = 1 << E),
(I = C - 1),
(D = Math.floor((E + 3 - 1) / 3)),
(w = new Uint8Array(2 * f)),
(v = []),
(z = []),
(J = 1 << (x + 6)),
(e.pending_buf = new Uint8Array(4 * J)),
(r = 4 * J),
(e.dist_buf = new Uint16Array(J)),
(e.lc_buf = new Uint8Array(J)),
(L = o),
(M = _),
(function (t) {
return (
(t.total_in = t.total_out = 0),
(t.msg = null),
(e.pending = 0),
(e.pending_out = 0),
(n = y),
(i = s),
($.dyn_tree = V),
($.stat_desc = h.static_l_desc),
(Y.dyn_tree = H),
(Y.stat_desc = h.static_d_desc),
(Z.dyn_tree = X),
(Z.stat_desc = h.static_bl_desc),
(te = 0),
(ne = 0),
(ee = 8),
re(),
(function () {
(g = 2 * f), (z[C - 1] = 0);
for (let e = 0; e < C - 1; e++) z[e] = 0;
(N = b[L].max_lazy),
(P = b[L].good_length),
(K = b[L].nice_length),
(B = b[L].max_chain),
(T = 0),
(j = 0),
(R = 0),
(F = q = 2),
(W = 0),
(A = 0);
})(),
c
);
})(t))
);
}),
(e.deflateEnd = function () {
return 42 != n && n != y && n != _
? d
: ((e.lc_buf = null),
(e.dist_buf = null),
(e.pending_buf = null),
(z = null),
(v = null),
(w = null),
(e.dstate = null),
n == y ? -3 : c);
}),
(e.deflateParams = function (e, t, n) {
let r = c;
return (
t == a && (t = 6),
t < 0 || t > 9 || n < 0 || n > 2
? d
: (b[L].func != b[t].func &&
0 !== e.total_in &&
(r = e.deflate(1)),
L != t &&
((L = t),
(N = b[L].max_lazy),
(P = b[L].good_length),
(K = b[L].nice_length),
(B = b[L].max_chain)),
(M = n),
r)
);
}),
(e.deflateSetDictionary = function (e, t, r) {
let i,
a = r,
s = 0;
if (!t || 42 != n) return d;
if (a < 3) return c;
for (
a > f - k && ((a = f - k), (s = r - a)),
w.set(t.subarray(s, s + a), 0),
T = a,
j = a,
A = 255 & w[0],
A = ((A << D) ^ (255 & w[1])) & I,
i = 0;
i <= a - 3;
i++
)
(A = ((A << D) ^ (255 & w[i + 2])) & I),
(v[i & p] = z[A]),
(z[A] = i);
return c;
}),
(e.deflate = function (a, m) {
let g, S, E, B, P;
if (m > o || m < 0) return d;
if (
!a.next_out ||
(!a.next_in && 0 !== a.avail_in) ||
(n == _ && m != o)
)
return (a.msg = x[2 - d]), d;
if (0 === a.avail_out) return (a.msg = x[7]), -5;
var K;
if (
((t = a),
(B = i),
(i = m),
42 == n &&
((S = (8 + ((u - 8) << 4)) << 8),
(E = ((L - 1) & 255) >> 1),
E > 3 && (E = 3),
(S |= E << 6),
0 !== T && (S |= 32),
(S += 31 - (S % 31)),
(n = y),
ae(((K = S) >> 8) & 255),
ae(255 & K)),
0 !== e.pending)
) {
if ((t.flush_pending(), 0 === t.avail_out))
return (i = -1), c;
} else if (0 === t.avail_in && m <= B && m != o)
return (t.msg = x[7]), -5;
if (n == _ && 0 !== t.avail_in) return (a.msg = x[7]), -5;
if (0 !== t.avail_in || 0 !== R || (m != s && n != _)) {
switch (((P = -1), b[L].func)) {
case 0:
P = (function (e) {
let n,
i = 65535;
for (i > r - 5 && (i = r - 5); ; ) {
if (R <= 1) {
if ((we(), 0 === R && e == s)) return 0;
if (0 === R) break;
}
if (
((T += R),
(R = 0),
(n = j + i),
(0 === T || T >= n) &&
((R = T - n), (T = n), he(!1), 0 === t.avail_out))
)
return 0;
if (T - j >= f - k && (he(!1), 0 === t.avail_out))
return 0;
}
return (
he(e == o),
0 === t.avail_out ? (e == o ? 2 : 0) : e == o ? 3 : 1
);
})(m);
break;
case 1:
P = (function (e) {
let n,
r = 0;
for (;;) {
if (R < k) {
if ((we(), R < k && e == s)) return 0;
if (0 === R) break;
}
if (
(R >= 3 &&
((A = ((A << D) ^ (255 & w[T + 2])) & I),
(r = 65535 & z[A]),
(v[T & p] = z[A]),
(z[A] = T)),
0 !== r &&
((T - r) & 65535) <= f - k &&
2 != M &&
(F = ge(r)),
F >= 3)
)
if (
((n = fe(T - O, F - 3)),
(R -= F),
F <= N && R >= 3)
) {
F--;
do {
T++,
(A = ((A << D) ^ (255 & w[T + 2])) & I),
(r = 65535 & z[A]),
(v[T & p] = z[A]),
(z[A] = T);
} while (0 != --F);
T++;
} else
(T += F),
(F = 0),
(A = 255 & w[T]),
(A = ((A << D) ^ (255 & w[T + 1])) & I);
else (n = fe(0, 255 & w[T])), R--, T++;
if (n && (he(!1), 0 === t.avail_out)) return 0;
}
return (
he(e == o),
0 === t.avail_out ? (e == o ? 2 : 0) : e == o ? 3 : 1
);
})(m);
break;
case 2:
P = (function (e) {
let n,
r,
i = 0;
for (;;) {
if (R < k) {
if ((we(), R < k && e == s)) return 0;
if (0 === R) break;
}
if (
(R >= 3 &&
((A = ((A << D) ^ (255 & w[T + 2])) & I),
(i = 65535 & z[A]),
(v[T & p] = z[A]),
(z[A] = T)),
(q = F),
(U = O),
(F = 2),
0 !== i &&
q < N &&
((T - i) & 65535) <= f - k &&
(2 != M && (F = ge(i)),
F <= 5 &&
(1 == M || (3 == F && T - O > 4096)) &&
(F = 2)),
q >= 3 && F <= q)
) {
(r = T + R - 3),
(n = fe(T - 1 - U, q - 3)),
(R -= q - 1),
(q -= 2);
do {
++T <= r &&
((A = ((A << D) ^ (255 & w[T + 2])) & I),
(i = 65535 & z[A]),
(v[T & p] = z[A]),
(z[A] = T));
} while (0 != --q);
if (
((W = 0),
(F = 2),
T++,
n && (he(!1), 0 === t.avail_out))
)
return 0;
} else if (0 !== W) {
if (
((n = fe(0, 255 & w[T - 1])),
n && he(!1),
T++,
R--,
0 === t.avail_out)
)
return 0;
} else (W = 1), T++, R--;
}
return (
0 !== W && ((n = fe(0, 255 & w[T - 1])), (W = 0)),
he(e == o),
0 === t.avail_out ? (e == o ? 2 : 0) : e == o ? 3 : 1
);
})(m);
}
if (((2 != P && 3 != P) || (n = _), 0 == P || 2 == P))
return 0 === t.avail_out && (i = -1), c;
if (1 == P) {
if (1 == m)
oe(2, 3),
ce(256, h.static_ltree),
de(),
1 + ee + 10 - ne < 9 &&
(oe(2, 3), ce(256, h.static_ltree), de()),
(ee = 7);
else if ((me(0, 0, !1), 3 == m))
for (g = 0; g < C; g++) z[g] = 0;
if ((t.flush_pending(), 0 === t.avail_out))
return (i = -1), c;
}
}
return m != o ? c : l;
});
}
function A() {
const e = this;
(e.next_in_index = 0),
(e.next_out_index = 0),
(e.avail_in = 0),
(e.total_in = 0),
(e.avail_out = 0),
(e.total_out = 0);
}
A.prototype = {
deflateInit(e, t) {
const n = this;
return (
(n.dstate = new z()),
t || (t = r),
n.dstate.deflateInit(n, e, t)
);
},
deflate(e) {
const t = this;
return t.dstate ? t.dstate.deflate(t, e) : d;
},
deflateEnd() {
const e = this;
if (!e.dstate) return d;
const t = e.dstate.deflateEnd();
return (e.dstate = null), t;
},
deflateParams(e, t) {
const n = this;
return n.dstate ? n.dstate.deflateParams(n, e, t) : d;
},
deflateSetDictionary(e, t) {
const n = this;
return n.dstate ? n.dstate.deflateSetDictionary(n, e, t) : d;
},
read_buf(e, t, n) {
const r = this;
let i = r.avail_in;
return (
i > n && (i = n),
0 === i
? 0
: ((r.avail_in -= i),
e.set(
r.next_in.subarray(r.next_in_index, r.next_in_index + i),
t
),
(r.next_in_index += i),
(r.total_in += i),
i)
);
},
flush_pending() {
const e = this;
let t = e.dstate.pending;
t > e.avail_out && (t = e.avail_out),
0 !== t &&
(e.next_out.set(
e.dstate.pending_buf.subarray(
e.dstate.pending_out,
e.dstate.pending_out + t
),
e.next_out_index
),
(e.next_out_index += t),
(e.dstate.pending_out += t),
(e.total_out += t),
(e.avail_out -= t),
(e.dstate.pending -= t),
0 === e.dstate.pending && (e.dstate.pending_out = 0));
},
};
const C = 0,
E = 1,
I = -2,
D = -3,
j = -4,
F = -5,
U = [
0, 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8191,
16383, 32767, 65535,
],
W = 1440,
T = [
96, 7, 256, 0, 8, 80, 0, 8, 16, 84, 8, 115, 82, 7, 31, 0, 8, 112,
0, 8, 48, 0, 9, 192, 80, 7, 10, 0, 8, 96, 0, 8, 32, 0, 9, 160, 0,
8, 0, 0, 8, 128, 0, 8, 64, 0, 9, 224, 80, 7, 6, 0, 8, 88, 0, 8,
24, 0, 9, 144, 83, 7, 59, 0, 8, 120, 0, 8, 56, 0, 9, 208, 81, 7,
17, 0, 8, 104, 0, 8, 40, 0, 9, 176, 0, 8, 8, 0, 8, 136, 0, 8, 72,
0, 9, 240, 80, 7, 4, 0, 8, 84, 0, 8, 20, 85, 8, 227, 83, 7, 43, 0,
8, 116, 0, 8, 52, 0, 9, 200, 81, 7, 13, 0, 8, 100, 0, 8, 36, 0, 9,
168, 0, 8, 4, 0, 8, 132, 0, 8, 68, 0, 9, 232, 80, 7, 8, 0, 8, 92,
0, 8, 28, 0, 9, 152, 84, 7, 83, 0, 8, 124, 0, 8, 60, 0, 9, 216,
82, 7, 23, 0, 8, 108, 0, 8, 44, 0, 9, 184, 0, 8, 12, 0, 8, 140, 0,
8, 76, 0, 9, 248, 80, 7, 3, 0, 8, 82, 0, 8, 18, 85, 8, 163, 83, 7,
35, 0, 8, 114, 0, 8, 50, 0, 9, 196, 81, 7, 11, 0, 8, 98, 0, 8, 34,
0, 9, 164, 0, 8, 2, 0, 8, 130, 0, 8, 66, 0, 9, 228, 80, 7, 7, 0,
8, 90, 0, 8, 26, 0, 9, 148, 84, 7, 67, 0, 8, 122, 0, 8, 58, 0, 9,
212, 82, 7, 19, 0, 8, 106, 0, 8, 42, 0, 9, 180, 0, 8, 10, 0, 8,
138, 0, 8, 74, 0, 9, 244, 80, 7, 5, 0, 8, 86, 0, 8, 22, 192, 8, 0,
83, 7, 51, 0, 8, 118, 0, 8, 54, 0, 9, 204, 81, 7, 15, 0, 8, 102,
0, 8, 38, 0, 9, 172, 0, 8, 6, 0, 8, 134, 0, 8, 70, 0, 9, 236, 80,
7, 9, 0, 8, 94, 0, 8, 30, 0, 9, 156, 84, 7, 99, 0, 8, 126, 0, 8,
62, 0, 9, 220, 82, 7, 27, 0, 8, 110, 0, 8, 46, 0, 9, 188, 0, 8,
14, 0, 8, 142, 0, 8, 78, 0, 9, 252, 96, 7, 256, 0, 8, 81, 0, 8,
17, 85, 8, 131, 82, 7, 31, 0, 8, 113, 0, 8, 49, 0, 9, 194, 80, 7,
10, 0, 8, 97, 0, 8, 33, 0, 9, 162, 0, 8, 1, 0, 8, 129, 0, 8, 65,
0, 9, 226, 80, 7, 6, 0, 8, 89, 0, 8, 25, 0, 9, 146, 83, 7, 59, 0,
8, 121, 0, 8, 57, 0, 9, 210, 81, 7, 17, 0, 8, 105, 0, 8, 41, 0, 9,
178, 0, 8, 9, 0, 8, 137, 0, 8, 73, 0, 9, 242, 80, 7, 4, 0, 8, 85,
0, 8, 21, 80, 8, 258, 83, 7, 43, 0, 8, 117, 0, 8, 53, 0, 9, 202,
81, 7, 13, 0, 8, 101, 0, 8, 37, 0, 9, 170, 0, 8, 5, 0, 8, 133, 0,
8, 69, 0, 9, 234, 80, 7, 8, 0, 8, 93, 0, 8, 29, 0, 9, 154, 84, 7,
83, 0, 8, 125, 0, 8, 61, 0, 9, 218, 82, 7, 23, 0, 8, 109, 0, 8,
45, 0, 9, 186, 0, 8, 13, 0, 8, 141, 0, 8, 77, 0, 9, 250, 80, 7, 3,
0, 8, 83, 0, 8, 19, 85, 8, 195, 83, 7, 35, 0, 8, 115, 0, 8, 51, 0,
9, 198, 81, 7, 11, 0, 8, 99, 0, 8, 35, 0, 9, 166, 0, 8, 3, 0, 8,
131, 0, 8, 67, 0, 9, 230, 80, 7, 7, 0, 8, 91, 0, 8, 27, 0, 9, 150,
84, 7, 67, 0, 8, 123, 0, 8, 59, 0, 9, 214, 82, 7, 19, 0, 8, 107,
0, 8, 43, 0, 9, 182, 0, 8, 11, 0, 8, 139, 0, 8, 75, 0, 9, 246, 80,
7, 5, 0, 8, 87, 0, 8, 23, 192, 8, 0, 83, 7, 51, 0, 8, 119, 0, 8,
55, 0, 9, 206, 81, 7, 15, 0, 8, 103, 0, 8, 39, 0, 9, 174, 0, 8, 7,
0, 8, 135, 0, 8, 71, 0, 9, 238, 80, 7, 9, 0, 8, 95, 0, 8, 31, 0,
9, 158, 84, 7, 99, 0, 8, 127, 0, 8, 63, 0, 9, 222, 82, 7, 27, 0,
8, 111, 0, 8, 47, 0, 9, 190, 0, 8, 15, 0, 8, 143, 0, 8, 79, 0, 9,
254, 96, 7, 256, 0, 8, 80, 0, 8, 16, 84, 8, 115, 82, 7, 31, 0, 8,
112, 0, 8, 48, 0, 9, 193, 80, 7, 10, 0, 8, 96, 0, 8, 32, 0, 9,
161, 0, 8, 0, 0, 8, 128, 0, 8, 64, 0, 9, 225, 80, 7, 6, 0, 8, 88,
0, 8, 24, 0, 9, 145, 83, 7, 59, 0, 8, 120, 0, 8, 56, 0, 9, 209,
81, 7, 17, 0, 8, 104, 0, 8, 40, 0, 9, 177, 0, 8, 8, 0, 8, 136, 0,
8, 72, 0, 9, 241, 80, 7, 4, 0, 8, 84, 0, 8, 20, 85, 8, 227, 83, 7,
43, 0, 8, 116, 0, 8, 52, 0, 9, 201, 81, 7, 13, 0, 8, 100, 0, 8,
36, 0, 9, 169, 0, 8, 4, 0, 8, 132, 0, 8, 68, 0, 9, 233, 80, 7, 8,
0, 8, 92, 0, 8, 28, 0, 9, 153, 84, 7, 83, 0, 8, 124, 0, 8, 60, 0,
9, 217, 82, 7, 23, 0, 8, 108, 0, 8, 44, 0, 9, 185, 0, 8, 12, 0, 8,
140, 0, 8, 76, 0, 9, 249, 80, 7, 3, 0, 8, 82, 0, 8, 18, 85, 8,
163, 83, 7, 35, 0, 8, 114, 0, 8, 50, 0, 9, 197, 81, 7, 11, 0, 8,
98, 0, 8, 34, 0, 9, 165, 0, 8, 2, 0, 8, 130, 0, 8, 66, 0, 9, 229,
80, 7, 7, 0, 8, 90, 0, 8, 26, 0, 9, 149, 84, 7, 67, 0, 8, 122, 0,
8, 58, 0, 9, 213, 82, 7, 19, 0, 8, 106, 0, 8, 42, 0, 9, 181, 0, 8,
10, 0, 8, 138, 0, 8, 74, 0, 9, 245, 80, 7, 5, 0, 8, 86, 0, 8, 22,
192, 8, 0, 83, 7, 51, 0, 8, 118, 0, 8, 54, 0, 9, 205, 81, 7, 15,
0, 8, 102, 0, 8, 38, 0, 9, 173, 0, 8, 6, 0, 8, 134, 0, 8, 70, 0,
9, 237, 80, 7, 9, 0, 8, 94, 0, 8, 30, 0, 9, 157, 84, 7, 99, 0, 8,
126, 0, 8, 62, 0, 9, 221, 82, 7, 27, 0, 8, 110, 0, 8, 46, 0, 9,
189, 0, 8, 14, 0, 8, 142, 0, 8, 78, 0, 9, 253, 96, 7, 256, 0, 8,
81, 0, 8, 17, 85, 8, 131, 82, 7, 31, 0, 8, 113, 0, 8, 49, 0, 9,
195, 80, 7, 10, 0, 8, 97, 0, 8, 33, 0, 9, 163, 0, 8, 1, 0, 8, 129,
0, 8, 65, 0, 9, 227, 80, 7, 6, 0, 8, 89, 0, 8, 25, 0, 9, 147, 83,
7, 59, 0, 8, 121, 0, 8, 57, 0, 9, 211, 81, 7, 17, 0, 8, 105, 0, 8,
41, 0, 9, 179, 0, 8, 9, 0, 8, 137, 0, 8, 73, 0, 9, 243, 80, 7, 4,
0, 8, 85, 0, 8, 21, 80, 8, 258, 83, 7, 43, 0, 8, 117, 0, 8, 53, 0,
9, 203, 81, 7, 13, 0, 8, 101, 0, 8, 37, 0, 9, 171, 0, 8, 5, 0, 8,
133, 0, 8, 69, 0, 9, 235, 80, 7, 8, 0, 8, 93, 0, 8, 29, 0, 9, 155,
84, 7, 83, 0, 8, 125, 0, 8, 61, 0, 9, 219, 82, 7, 23, 0, 8, 109,
0, 8, 45, 0, 9, 187, 0, 8, 13, 0, 8, 141, 0, 8, 77, 0, 9, 251, 80,
7, 3, 0, 8, 83, 0, 8, 19, 85, 8, 195, 83, 7, 35, 0, 8, 115, 0, 8,
51, 0, 9, 199, 81, 7, 11, 0, 8, 99, 0, 8, 35, 0, 9, 167, 0, 8, 3,
0, 8, 131, 0, 8, 67, 0, 9, 231, 80, 7, 7, 0, 8, 91, 0, 8, 27, 0,
9, 151, 84, 7, 67, 0, 8, 123, 0, 8, 59, 0, 9, 215, 82, 7, 19, 0,
8, 107, 0, 8, 43, 0, 9, 183, 0, 8, 11, 0, 8, 139, 0, 8, 75, 0, 9,
247, 80, 7, 5, 0, 8, 87, 0, 8, 23, 192, 8, 0, 83, 7, 51, 0, 8,
119, 0, 8, 55, 0, 9, 207, 81, 7, 15, 0, 8, 103, 0, 8, 39, 0, 9,
175, 0, 8, 7, 0, 8, 135, 0, 8, 71, 0, 9, 239, 80, 7, 9, 0, 8, 95,
0, 8, 31, 0, 9, 159, 84, 7, 99, 0, 8, 127, 0, 8, 63, 0, 9, 223,
82, 7, 27, 0, 8, 111, 0, 8, 47, 0, 9, 191, 0, 8, 15, 0, 8, 143, 0,
8, 79, 0, 9, 255,
],
O = [
80, 5, 1, 87, 5, 257, 83, 5, 17, 91, 5, 4097, 81, 5, 5, 89, 5,
1025, 85, 5, 65, 93, 5, 16385, 80, 5, 3, 88, 5, 513, 84, 5, 33,
92, 5, 8193, 82, 5, 9, 90, 5, 2049, 86, 5, 129, 192, 5, 24577, 80,
5, 2, 87, 5, 385, 83, 5, 25, 91, 5, 6145, 81, 5, 7, 89, 5, 1537,
85, 5, 97, 93, 5, 24577, 80, 5, 4, 88, 5, 769, 84, 5, 49, 92, 5,
12289, 82, 5, 13, 90, 5, 3073, 86, 5, 193, 192, 5, 24577,
],
R = [
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,
],
q = [
0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4,
4, 4, 5, 5, 5, 5, 0, 112, 112,
],
B = [
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,
],
N = [
0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,
10, 10, 11, 11, 12, 12, 13, 13,
],
L = 15;
function M() {
let e, t, n, r, i, a;
function s(e, t, s, o, c, l, d, f, u, p, m) {
let h, w, g, v, b, x, y, _, k, S, z, A, E, I, j;
(S = 0), (b = s);
do {
n[e[t + S]]++, S++, b--;
} while (0 !== b);
if (n[0] == s) return (d[0] = -1), (f[0] = 0), C;
for (_ = f[0], x = 1; x <= L && 0 === n[x]; x++);
for (y = x, _ < x && (_ = x), b = L; 0 !== b && 0 === n[b]; b--);
for (
g = b, _ > b && (_ = b), f[0] = _, I = 1 << x;
x < b;
x++, I <<= 1
)
if ((I -= n[x]) < 0) return D;
if ((I -= n[b]) < 0) return D;
for (n[b] += I, a[1] = x = 0, S = 1, E = 2; 0 != --b; )
(a[E] = x += n[S]), E++, S++;
(b = 0), (S = 0);
do {
0 !== (x = e[t + S]) && (m[a[x]++] = b), S++;
} while (++b < s);
for (
s = a[g],
a[0] = b = 0,
S = 0,
v = -1,
A = -_,
i[0] = 0,
z = 0,
j = 0;
y <= g;
y++
)
for (h = n[y]; 0 != h--; ) {
for (; y > A + _; ) {
if (
(v++,
(A += _),
(j = g - A),
(j = j > _ ? _ : j),
(w = 1 << (x = y - A)) > h + 1 &&
((w -= h + 1), (E = y), x < j))
)
for (; ++x < j && !((w <<= 1) <= n[++E]); ) w -= n[E];
if (((j = 1 << x), p[0] + j > W)) return D;
(i[v] = z = p[0]),
(p[0] += j),
0 !== v
? ((a[v] = b),
(r[0] = x),
(r[1] = _),
(x = b >>> (A - _)),
(r[2] = z - i[v - 1] - x),
u.set(r, 3 * (i[v - 1] + x)))
: (d[0] = z);
}
for (
r[1] = y - A,
S >= s
? (r[0] = 192)
: m[S] < o
? ((r[0] = m[S] < 256 ? 0 : 96), (r[2] = m[S++]))
: ((r[0] = l[m[S] - o] + 16 + 64),
(r[2] = c[m[S++] - o])),
w = 1 << (y - A),
x = b >>> A;
x < j;
x += w
)
u.set(r, 3 * (z + x));
for (x = 1 << (y - 1); 0 != (b & x); x >>>= 1) b ^= x;
for (b ^= x, k = (1 << A) - 1; (b & k) != a[v]; )
v--, (A -= _), (k = (1 << A) - 1);
}
return 0 !== I && 1 != g ? F : C;
}
function o(s) {
let o;
for (
e ||
((e = []),
(t = []),
(n = new Int32A