704 lines
33 KiB
JavaScript
704 lines
33 KiB
JavaScript
(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["chunk-2d221443"], { ca2a: function(t, e, n) {
|
|
"use strict";
|
|
n.d(e, "a", (function() {
|
|
return r;
|
|
}));
|
|
const r = function(t2, e2) {
|
|
const n2 = 236, r2 = 17;
|
|
let o2 = t2;
|
|
const u2 = i[e2];
|
|
let c2 = null, p2 = 0, y2 = null;
|
|
const A2 = [], B2 = {}, k = function(t3, e3) {
|
|
p2 = 4 * o2 + 17, c2 = (function(t4) {
|
|
const e4 = new Array(t4);
|
|
for (let n3 = 0; n3 < t4; n3 += 1) {
|
|
e4[n3] = new Array(t4);
|
|
for (let r3 = 0; r3 < t4; r3 += 1) e4[n3][r3] = null;
|
|
}
|
|
return e4;
|
|
})(p2), T(0, 0), T(p2 - 7, 0), T(0, p2 - 7), b(), D(), L(t3, e3), o2 >= 7 && E(t3), null == y2 && (y2 = N(o2, u2, A2)), x(y2, e3);
|
|
}, T = function(t3, e3) {
|
|
for (let n3 = -1; n3 <= 7; n3 += 1) if (!(t3 + n3 <= -1 || p2 <= t3 + n3)) for (let r3 = -1; r3 <= 7; r3 += 1) e3 + r3 <= -1 || p2 <= e3 + r3 || (c2[t3 + n3][e3 + r3] = 0 <= n3 && n3 <= 6 && (0 == r3 || 6 == r3) || 0 <= r3 && r3 <= 6 && (0 == n3 || 6 == n3) || 2 <= n3 && n3 <= 4 && 2 <= r3 && r3 <= 4);
|
|
}, C = function() {
|
|
let t3 = 0, e3 = 0;
|
|
for (let n3 = 0; n3 < 8; n3 += 1) {
|
|
k(true, n3);
|
|
const r3 = l.getLostPoint(B2);
|
|
(0 == n3 || t3 > r3) && (t3 = r3, e3 = n3);
|
|
}
|
|
return e3;
|
|
}, D = function() {
|
|
for (let t3 = 8; t3 < p2 - 8; t3 += 1) null == c2[t3][6] && (c2[t3][6] = t3 % 2 == 0);
|
|
for (let t3 = 8; t3 < p2 - 8; t3 += 1) null == c2[6][t3] && (c2[6][t3] = t3 % 2 == 0);
|
|
}, b = function() {
|
|
const t3 = l.getPatternPosition(o2);
|
|
for (let e3 = 0; e3 < t3.length; e3 += 1) for (let n3 = 0; n3 < t3.length; n3 += 1) {
|
|
const r3 = t3[e3], o3 = t3[n3];
|
|
if (null == c2[r3][o3]) for (let t4 = -2; t4 <= 2; t4 += 1) for (let e4 = -2; e4 <= 2; e4 += 1) c2[r3 + t4][o3 + e4] = -2 == t4 || 2 == t4 || -2 == e4 || 2 == e4 || 0 == t4 && 0 == e4;
|
|
}
|
|
}, E = function(t3) {
|
|
const e3 = l.getBCHTypeNumber(o2);
|
|
for (let n3 = 0; n3 < 18; n3 += 1) {
|
|
const r3 = !t3 && 1 == (e3 >> n3 & 1);
|
|
c2[Math.floor(n3 / 3)][n3 % 3 + p2 - 8 - 3] = r3;
|
|
}
|
|
for (let n3 = 0; n3 < 18; n3 += 1) {
|
|
const r3 = !t3 && 1 == (e3 >> n3 & 1);
|
|
c2[n3 % 3 + p2 - 8 - 3][Math.floor(n3 / 3)] = r3;
|
|
}
|
|
}, L = function(t3, e3) {
|
|
const n3 = u2 << 3 | e3, r3 = l.getBCHTypeInfo(n3);
|
|
for (let o3 = 0; o3 < 15; o3 += 1) {
|
|
const e4 = !t3 && 1 == (r3 >> o3 & 1);
|
|
o3 < 6 ? c2[o3][8] = e4 : o3 < 8 ? c2[o3 + 1][8] = e4 : c2[p2 - 15 + o3][8] = e4;
|
|
}
|
|
for (let o3 = 0; o3 < 15; o3 += 1) {
|
|
const e4 = !t3 && 1 == (r3 >> o3 & 1);
|
|
o3 < 8 ? c2[8][p2 - o3 - 1] = e4 : o3 < 9 ? c2[8][15 - o3 - 1 + 1] = e4 : c2[8][15 - o3 - 1] = e4;
|
|
}
|
|
c2[p2 - 8][8] = !t3;
|
|
}, x = function(t3, e3) {
|
|
let n3 = -1, r3 = p2 - 1, o3 = 7, i2 = 0;
|
|
const u3 = l.getMaskFunction(e3);
|
|
for (let l2 = p2 - 1; l2 > 0; l2 -= 2) {
|
|
6 == l2 && (l2 -= 1);
|
|
while (1) {
|
|
for (let e4 = 0; e4 < 2; e4 += 1) if (null == c2[r3][l2 - e4]) {
|
|
let n4 = false;
|
|
i2 < t3.length && (n4 = 1 == (t3[i2] >>> o3 & 1));
|
|
const f2 = u3(r3, l2 - e4);
|
|
f2 && (n4 = !n4), c2[r3][l2 - e4] = n4, o3 -= 1, -1 == o3 && (i2 += 1, o3 = 7);
|
|
}
|
|
if (r3 += n3, r3 < 0 || p2 <= r3) {
|
|
r3 -= n3, n3 = -n3;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}, m = function(t3, e3) {
|
|
let n3 = 0, r3 = 0, o3 = 0;
|
|
const i2 = new Array(e3.length), u3 = new Array(e3.length);
|
|
for (let g2 = 0; g2 < e3.length; g2 += 1) {
|
|
const c4 = e3[g2].dataCount, s3 = e3[g2].totalCount - c4;
|
|
r3 = Math.max(r3, c4), o3 = Math.max(o3, s3), i2[g2] = new Array(c4);
|
|
for (let e4 = 0; e4 < i2[g2].length; e4 += 1) i2[g2][e4] = 255 & t3.getBuffer()[e4 + n3];
|
|
n3 += c4;
|
|
const a3 = l.getErrorCorrectPolynomial(s3), h2 = f(i2[g2], a3.getLength() - 1), d2 = h2.mod(a3);
|
|
u3[g2] = new Array(a3.getLength() - 1);
|
|
for (let t4 = 0; t4 < u3[g2].length; t4 += 1) {
|
|
const e4 = t4 + d2.getLength() - u3[g2].length;
|
|
u3[g2][t4] = e4 >= 0 ? d2.getAt(e4) : 0;
|
|
}
|
|
}
|
|
let c3 = 0;
|
|
for (let l2 = 0; l2 < e3.length; l2 += 1) c3 += e3[l2].totalCount;
|
|
const s2 = new Array(c3);
|
|
let a2 = 0;
|
|
for (let l2 = 0; l2 < r3; l2 += 1) for (let t4 = 0; t4 < e3.length; t4 += 1) l2 < i2[t4].length && (s2[a2] = i2[t4][l2], a2 += 1);
|
|
for (let l2 = 0; l2 < o3; l2 += 1) for (let t4 = 0; t4 < e3.length; t4 += 1) l2 < u3[t4].length && (s2[a2] = u3[t4][l2], a2 += 1);
|
|
return s2;
|
|
}, N = function(t3, e3, o3) {
|
|
const i2 = s.getRSBlocks(t3, e3), u3 = a();
|
|
for (let n3 = 0; n3 < o3.length; n3 += 1) {
|
|
const e4 = o3[n3];
|
|
u3.put(e4.getMode(), 4), u3.put(e4.getLength(), l.getLengthInBits(e4.getMode(), t3)), e4.write(u3);
|
|
}
|
|
let c3 = 0;
|
|
for (let n3 = 0; n3 < i2.length; n3 += 1) c3 += i2[n3].dataCount;
|
|
if (u3.getLengthInBits() > 8 * c3) throw "code length overflow. (" + u3.getLengthInBits() + ">" + 8 * c3 + ")";
|
|
u3.getLengthInBits() + 4 <= 8 * c3 && u3.put(0, 4);
|
|
while (u3.getLengthInBits() % 8 != 0) u3.putBit(false);
|
|
while (1) {
|
|
if (u3.getLengthInBits() >= 8 * c3) break;
|
|
if (u3.put(n2, 8), u3.getLengthInBits() >= 8 * c3) break;
|
|
u3.put(r2, 8);
|
|
}
|
|
return m(u3, i2);
|
|
};
|
|
B2.addData = function(t3, e3) {
|
|
e3 = e3 || "Byte";
|
|
let n3 = null;
|
|
switch (e3) {
|
|
case "Numeric":
|
|
n3 = g(t3);
|
|
break;
|
|
case "Alphanumeric":
|
|
n3 = h(t3);
|
|
break;
|
|
case "Byte":
|
|
n3 = d(t3);
|
|
break;
|
|
case "Kanji":
|
|
n3 = w(t3);
|
|
break;
|
|
default:
|
|
throw "mode:" + e3;
|
|
}
|
|
A2.push(n3), y2 = null;
|
|
}, B2.isDark = function(t3, e3) {
|
|
if (t3 < 0 || p2 <= t3 || e3 < 0 || p2 <= e3) throw t3 + "," + e3;
|
|
return c2[t3][e3];
|
|
}, B2.getModuleCount = function() {
|
|
return p2;
|
|
}, B2.make = function() {
|
|
if (o2 < 1) {
|
|
let t3 = 1;
|
|
for (; t3 < 40; t3++) {
|
|
const e3 = s.getRSBlocks(t3, u2), n3 = a();
|
|
for (let o3 = 0; o3 < A2.length; o3++) {
|
|
const e4 = A2[o3];
|
|
n3.put(e4.getMode(), 4), n3.put(e4.getLength(), l.getLengthInBits(e4.getMode(), t3)), e4.write(n3);
|
|
}
|
|
let r3 = 0;
|
|
for (let t4 = 0; t4 < e3.length; t4++) r3 += e3[t4].dataCount;
|
|
if (n3.getLengthInBits() <= 8 * r3) break;
|
|
}
|
|
o2 = t3;
|
|
}
|
|
k(false, C());
|
|
}, B2.createTableTag = function(t3, e3) {
|
|
t3 = t3 || 2, e3 = "undefined" == typeof e3 ? 4 * t3 : e3;
|
|
let n3 = "";
|
|
n3 += '<table style="', n3 += " border-width: 0px; border-style: none;", n3 += " border-collapse: collapse;", n3 += " padding: 0px; margin: " + e3 + "px;", n3 += '">', n3 += "<tbody>";
|
|
for (let r3 = 0; r3 < B2.getModuleCount(); r3 += 1) {
|
|
n3 += "<tr>";
|
|
for (let e4 = 0; e4 < B2.getModuleCount(); e4 += 1) n3 += '<td style="', n3 += " border-width: 0px; border-style: none;", n3 += " border-collapse: collapse;", n3 += " padding: 0px; margin: 0px;", n3 += " width: " + t3 + "px;", n3 += " height: " + t3 + "px;", n3 += " background-color: ", n3 += B2.isDark(r3, e4) ? "#000000" : "#ffffff", n3 += ";", n3 += '"/>';
|
|
n3 += "</tr>";
|
|
}
|
|
return n3 += "</tbody>", n3 += "</table>", n3;
|
|
}, B2.createSvgTag = function(t3, e3, n3, r3) {
|
|
let o3 = {};
|
|
"object" == typeof arguments[0] && (o3 = arguments[0], t3 = o3.cellSize, e3 = o3.margin, n3 = o3.alt, r3 = o3.title), t3 = t3 || 2, e3 = "undefined" == typeof e3 ? 4 * t3 : e3, n3 = "string" === typeof n3 ? { text: n3 } : n3 || {}, n3.text = n3.text || null, n3.id = n3.text ? n3.id || "qrcode-description" : null, r3 = "string" === typeof r3 ? { text: r3 } : r3 || {}, r3.text = r3.text || null, r3.id = r3.text ? r3.id || "qrcode-title" : null;
|
|
const i2 = B2.getModuleCount() * t3 + 2 * e3;
|
|
let u3, l2, c3, f2, s2, a2 = "";
|
|
for (s2 = "l" + t3 + ",0 0," + t3 + " -" + t3 + ",0 0,-" + t3 + "z ", a2 += '<svg version="1.1" xmlns="http://www.w3.org/2000/svg"', a2 += o3.scalable ? "" : ' width="' + i2 + 'px" height="' + i2 + 'px"', a2 += ' viewBox="0 0 ' + i2 + " " + i2 + '" ', a2 += ' preserveAspectRatio="xMinYMin meet"', a2 += r3.text || n3.text ? ' role="img" aria-labelledby="' + P([r3.id, n3.id].join(" ").trim()) + '"' : "", a2 += ">", a2 += r3.text ? '<title id="' + P(r3.id) + '">' + P(r3.text) + "</title>" : "", a2 += n3.text ? '<description id="' + P(n3.id) + '">' + P(n3.text) + "</description>" : "", a2 += '<rect width="100%" height="100%" fill="white" cx="0" cy="0"/>', a2 += '<path d="', c3 = 0; c3 < B2.getModuleCount(); c3 += 1) for (f2 = c3 * t3 + e3, u3 = 0; u3 < B2.getModuleCount(); u3 += 1) B2.isDark(c3, u3) && (l2 = u3 * t3 + e3, a2 += "M" + l2 + "," + f2 + s2);
|
|
return a2 += '" stroke="transparent" fill="black"/>', a2 += "</svg>", a2;
|
|
}, B2.createDataURL = function(t3, e3) {
|
|
t3 = t3 || 2, e3 = "undefined" == typeof e3 ? 4 * t3 : e3;
|
|
const n3 = B2.getModuleCount() * t3 + 2 * e3, r3 = e3, o3 = n3 - e3;
|
|
return M(n3, n3, (function(e4, n4) {
|
|
if (r3 <= e4 && e4 < o3 && r3 <= n4 && n4 < o3) {
|
|
const o4 = Math.floor((e4 - r3) / t3), i2 = Math.floor((n4 - r3) / t3);
|
|
return B2.isDark(i2, o4) ? 0 : 1;
|
|
}
|
|
return 1;
|
|
}));
|
|
}, B2.createImgTag = function(t3, e3, n3) {
|
|
t3 = t3 || 2, e3 = "undefined" == typeof e3 ? 4 * t3 : e3;
|
|
const r3 = B2.getModuleCount() * t3 + 2 * e3;
|
|
let o3 = "";
|
|
return o3 += "<img", o3 += ' src="', o3 += B2.createDataURL(t3, e3), o3 += '"', o3 += ' width="', o3 += r3, o3 += '"', o3 += ' height="', o3 += r3, o3 += '"', n3 && (o3 += ' alt="', o3 += P(n3), o3 += '"'), o3 += "/>", o3;
|
|
};
|
|
const P = function(t3) {
|
|
let e3 = "";
|
|
for (let n3 = 0; n3 < t3.length; n3 += 1) {
|
|
const r3 = t3.charAt(n3);
|
|
switch (r3) {
|
|
case "<":
|
|
e3 += "<";
|
|
break;
|
|
case ">":
|
|
e3 += ">";
|
|
break;
|
|
case "&":
|
|
e3 += "&";
|
|
break;
|
|
case '"':
|
|
e3 += """;
|
|
break;
|
|
default:
|
|
e3 += r3;
|
|
break;
|
|
}
|
|
}
|
|
return e3;
|
|
}, _ = function(t3) {
|
|
const e3 = 1;
|
|
t3 = "undefined" == typeof t3 ? 2 * e3 : t3;
|
|
const n3 = B2.getModuleCount() * e3 + 2 * t3, r3 = t3, o3 = n3 - t3;
|
|
let i2, u3, l2, c3, f2;
|
|
const s2 = { "██": "█", "█ ": "▀", " █": "▄", " ": " " }, a2 = { "██": "▀", "█ ": "▀", " █": " ", " ": " " };
|
|
let g2 = "";
|
|
for (i2 = 0; i2 < n3; i2 += 2) {
|
|
for (l2 = Math.floor((i2 - r3) / e3), c3 = Math.floor((i2 + 1 - r3) / e3), u3 = 0; u3 < n3; u3 += 1) f2 = "█", r3 <= u3 && u3 < o3 && r3 <= i2 && i2 < o3 && B2.isDark(l2, Math.floor((u3 - r3) / e3)) && (f2 = " "), r3 <= u3 && u3 < o3 && r3 <= i2 + 1 && i2 + 1 < o3 && B2.isDark(c3, Math.floor((u3 - r3) / e3)) ? f2 += " " : f2 += "█", g2 += t3 < 1 && i2 + 1 >= o3 ? a2[f2] : s2[f2];
|
|
g2 += "\n";
|
|
}
|
|
return n3 % 2 && t3 > 0 ? g2.substring(0, g2.length - n3 - 1) + Array(n3 + 1).join("▀") : g2.substring(0, g2.length - 1);
|
|
};
|
|
return B2.createASCII = function(t3, e3) {
|
|
if (t3 = t3 || 1, t3 < 2) return _(e3);
|
|
t3 -= 1, e3 = "undefined" == typeof e3 ? 2 * t3 : e3;
|
|
const n3 = B2.getModuleCount() * t3 + 2 * e3, r3 = e3, o3 = n3 - e3;
|
|
let i2, u3, l2, c3;
|
|
const f2 = Array(t3 + 1).join("██"), s2 = Array(t3 + 1).join(" ");
|
|
let a2 = "", g2 = "";
|
|
for (i2 = 0; i2 < n3; i2 += 1) {
|
|
for (l2 = Math.floor((i2 - r3) / t3), g2 = "", u3 = 0; u3 < n3; u3 += 1) c3 = 1, r3 <= u3 && u3 < o3 && r3 <= i2 && i2 < o3 && B2.isDark(l2, Math.floor((u3 - r3) / t3)) && (c3 = 0), g2 += c3 ? f2 : s2;
|
|
for (l2 = 0; l2 < t3; l2 += 1) a2 += g2 + "\n";
|
|
}
|
|
return a2.substring(0, a2.length - 1);
|
|
}, B2.renderTo2dContext = function(t3, e3) {
|
|
e3 = e3 || 2;
|
|
const n3 = B2.getModuleCount();
|
|
for (let r3 = 0; r3 < n3; r3++) for (let o3 = 0; o3 < n3; o3++) t3.fillStyle = B2.isDark(r3, o3) ? "black" : "white", t3.fillRect(r3 * e3, o3 * e3, e3, e3);
|
|
}, B2;
|
|
};
|
|
r.stringToBytes = function(t2) {
|
|
const e2 = [];
|
|
for (let n2 = 0; n2 < t2.length; n2 += 1) {
|
|
const r2 = t2.charCodeAt(n2);
|
|
e2.push(255 & r2);
|
|
}
|
|
return e2;
|
|
}, r.createStringToBytes = function(t2, e2) {
|
|
const n2 = (function() {
|
|
const n3 = A(t2), r3 = function() {
|
|
const t3 = n3.read();
|
|
if (-1 == t3) throw "eof";
|
|
return t3;
|
|
};
|
|
let o2 = 0;
|
|
const i2 = {};
|
|
while (1) {
|
|
const t3 = n3.read();
|
|
if (-1 == t3) break;
|
|
const e3 = r3(), u2 = r3(), l2 = r3(), c2 = String.fromCharCode(t3 << 8 | e3), f2 = u2 << 8 | l2;
|
|
i2[c2] = f2, o2 += 1;
|
|
}
|
|
if (o2 != e2) throw o2 + " != " + e2;
|
|
return i2;
|
|
})(), r2 = "?".charCodeAt(0);
|
|
return function(t3) {
|
|
const e3 = [];
|
|
for (let o2 = 0; o2 < t3.length; o2 += 1) {
|
|
const i2 = t3.charCodeAt(o2);
|
|
if (i2 < 128) e3.push(i2);
|
|
else {
|
|
const i3 = n2[t3.charAt(o2)];
|
|
"number" == typeof i3 ? (255 & i3) == i3 ? e3.push(i3) : (e3.push(i3 >>> 8), e3.push(255 & i3)) : e3.push(r2);
|
|
}
|
|
}
|
|
return e3;
|
|
};
|
|
};
|
|
const o = { MODE_NUMBER: 1, MODE_ALPHA_NUM: 2, MODE_8BIT_BYTE: 4, MODE_KANJI: 8 }, i = { L: 1, M: 0, Q: 3, H: 2 }, u = { PATTERN000: 0, PATTERN001: 1, PATTERN010: 2, PATTERN011: 3, PATTERN100: 4, PATTERN101: 5, PATTERN110: 6, PATTERN111: 7 }, l = (function() {
|
|
const t2 = [[], [6, 18], [6, 22], [6, 26], [6, 30], [6, 34], [6, 22, 38], [6, 24, 42], [6, 26, 46], [6, 28, 50], [6, 30, 54], [6, 32, 58], [6, 34, 62], [6, 26, 46, 66], [6, 26, 48, 70], [6, 26, 50, 74], [6, 30, 54, 78], [6, 30, 56, 82], [6, 30, 58, 86], [6, 34, 62, 90], [6, 28, 50, 72, 94], [6, 26, 50, 74, 98], [6, 30, 54, 78, 102], [6, 28, 54, 80, 106], [6, 32, 58, 84, 110], [6, 30, 58, 86, 114], [6, 34, 62, 90, 118], [6, 26, 50, 74, 98, 122], [6, 30, 54, 78, 102, 126], [6, 26, 52, 78, 104, 130], [6, 30, 56, 82, 108, 134], [6, 34, 60, 86, 112, 138], [6, 30, 58, 86, 114, 142], [6, 34, 62, 90, 118, 146], [6, 30, 54, 78, 102, 126, 150], [6, 24, 50, 76, 102, 128, 154], [6, 28, 54, 80, 106, 132, 158], [6, 32, 58, 84, 110, 136, 162], [6, 26, 54, 82, 110, 138, 166], [6, 30, 58, 86, 114, 142, 170]], e2 = 1335, n2 = 7973, r2 = 21522, i2 = {}, l2 = function(t3) {
|
|
let e3 = 0;
|
|
while (0 != t3) e3 += 1, t3 >>>= 1;
|
|
return e3;
|
|
};
|
|
return i2.getBCHTypeInfo = function(t3) {
|
|
let n3 = t3 << 10;
|
|
while (l2(n3) - l2(e2) >= 0) n3 ^= e2 << l2(n3) - l2(e2);
|
|
return (t3 << 10 | n3) ^ r2;
|
|
}, i2.getBCHTypeNumber = function(t3) {
|
|
let e3 = t3 << 12;
|
|
while (l2(e3) - l2(n2) >= 0) e3 ^= n2 << l2(e3) - l2(n2);
|
|
return t3 << 12 | e3;
|
|
}, i2.getPatternPosition = function(e3) {
|
|
return t2[e3 - 1];
|
|
}, i2.getMaskFunction = function(t3) {
|
|
switch (t3) {
|
|
case u.PATTERN000:
|
|
return function(t4, e3) {
|
|
return (t4 + e3) % 2 == 0;
|
|
};
|
|
case u.PATTERN001:
|
|
return function(t4, e3) {
|
|
return t4 % 2 == 0;
|
|
};
|
|
case u.PATTERN010:
|
|
return function(t4, e3) {
|
|
return e3 % 3 == 0;
|
|
};
|
|
case u.PATTERN011:
|
|
return function(t4, e3) {
|
|
return (t4 + e3) % 3 == 0;
|
|
};
|
|
case u.PATTERN100:
|
|
return function(t4, e3) {
|
|
return (Math.floor(t4 / 2) + Math.floor(e3 / 3)) % 2 == 0;
|
|
};
|
|
case u.PATTERN101:
|
|
return function(t4, e3) {
|
|
return t4 * e3 % 2 + t4 * e3 % 3 == 0;
|
|
};
|
|
case u.PATTERN110:
|
|
return function(t4, e3) {
|
|
return (t4 * e3 % 2 + t4 * e3 % 3) % 2 == 0;
|
|
};
|
|
case u.PATTERN111:
|
|
return function(t4, e3) {
|
|
return (t4 * e3 % 3 + (t4 + e3) % 2) % 2 == 0;
|
|
};
|
|
default:
|
|
throw "bad maskPattern:" + t3;
|
|
}
|
|
}, i2.getErrorCorrectPolynomial = function(t3) {
|
|
let e3 = f([1], 0);
|
|
for (let n3 = 0; n3 < t3; n3 += 1) e3 = e3.multiply(f([1, c.gexp(n3)], 0));
|
|
return e3;
|
|
}, i2.getLengthInBits = function(t3, e3) {
|
|
if (1 <= e3 && e3 < 10) switch (t3) {
|
|
case o.MODE_NUMBER:
|
|
return 10;
|
|
case o.MODE_ALPHA_NUM:
|
|
return 9;
|
|
case o.MODE_8BIT_BYTE:
|
|
return 8;
|
|
case o.MODE_KANJI:
|
|
return 8;
|
|
default:
|
|
throw "mode:" + t3;
|
|
}
|
|
else if (e3 < 27) switch (t3) {
|
|
case o.MODE_NUMBER:
|
|
return 12;
|
|
case o.MODE_ALPHA_NUM:
|
|
return 11;
|
|
case o.MODE_8BIT_BYTE:
|
|
return 16;
|
|
case o.MODE_KANJI:
|
|
return 10;
|
|
default:
|
|
throw "mode:" + t3;
|
|
}
|
|
else {
|
|
if (!(e3 < 41)) throw "type:" + e3;
|
|
switch (t3) {
|
|
case o.MODE_NUMBER:
|
|
return 14;
|
|
case o.MODE_ALPHA_NUM:
|
|
return 13;
|
|
case o.MODE_8BIT_BYTE:
|
|
return 16;
|
|
case o.MODE_KANJI:
|
|
return 12;
|
|
default:
|
|
throw "mode:" + t3;
|
|
}
|
|
}
|
|
}, i2.getLostPoint = function(t3) {
|
|
const e3 = t3.getModuleCount();
|
|
let n3 = 0;
|
|
for (let i3 = 0; i3 < e3; i3 += 1) for (let r4 = 0; r4 < e3; r4 += 1) {
|
|
let o3 = 0;
|
|
const u2 = t3.isDark(i3, r4);
|
|
for (let n4 = -1; n4 <= 1; n4 += 1) if (!(i3 + n4 < 0 || e3 <= i3 + n4)) for (let l3 = -1; l3 <= 1; l3 += 1) r4 + l3 < 0 || e3 <= r4 + l3 || 0 == n4 && 0 == l3 || u2 == t3.isDark(i3 + n4, r4 + l3) && (o3 += 1);
|
|
o3 > 5 && (n3 += 3 + o3 - 5);
|
|
}
|
|
for (let i3 = 0; i3 < e3 - 1; i3 += 1) for (let r4 = 0; r4 < e3 - 1; r4 += 1) {
|
|
let e4 = 0;
|
|
t3.isDark(i3, r4) && (e4 += 1), t3.isDark(i3 + 1, r4) && (e4 += 1), t3.isDark(i3, r4 + 1) && (e4 += 1), t3.isDark(i3 + 1, r4 + 1) && (e4 += 1), 0 != e4 && 4 != e4 || (n3 += 3);
|
|
}
|
|
for (let i3 = 0; i3 < e3; i3 += 1) for (let r4 = 0; r4 < e3 - 6; r4 += 1) t3.isDark(i3, r4) && !t3.isDark(i3, r4 + 1) && t3.isDark(i3, r4 + 2) && t3.isDark(i3, r4 + 3) && t3.isDark(i3, r4 + 4) && !t3.isDark(i3, r4 + 5) && t3.isDark(i3, r4 + 6) && (n3 += 40);
|
|
for (let i3 = 0; i3 < e3; i3 += 1) for (let r4 = 0; r4 < e3 - 6; r4 += 1) t3.isDark(r4, i3) && !t3.isDark(r4 + 1, i3) && t3.isDark(r4 + 2, i3) && t3.isDark(r4 + 3, i3) && t3.isDark(r4 + 4, i3) && !t3.isDark(r4 + 5, i3) && t3.isDark(r4 + 6, i3) && (n3 += 40);
|
|
let r3 = 0;
|
|
for (let i3 = 0; i3 < e3; i3 += 1) for (let n4 = 0; n4 < e3; n4 += 1) t3.isDark(n4, i3) && (r3 += 1);
|
|
const o2 = Math.abs(100 * r3 / e3 / e3 - 50) / 5;
|
|
return n3 += 10 * o2, n3;
|
|
}, i2;
|
|
})(), c = (function() {
|
|
const t2 = new Array(256), e2 = new Array(256);
|
|
for (let r2 = 0; r2 < 8; r2 += 1) t2[r2] = 1 << r2;
|
|
for (let r2 = 8; r2 < 256; r2 += 1) t2[r2] = t2[r2 - 4] ^ t2[r2 - 5] ^ t2[r2 - 6] ^ t2[r2 - 8];
|
|
for (let r2 = 0; r2 < 255; r2 += 1) e2[t2[r2]] = r2;
|
|
const n2 = { glog: function(t3) {
|
|
if (t3 < 1) throw "glog(" + t3 + ")";
|
|
return e2[t3];
|
|
}, gexp: function(e3) {
|
|
while (e3 < 0) e3 += 255;
|
|
while (e3 >= 256) e3 -= 255;
|
|
return t2[e3];
|
|
} };
|
|
return n2;
|
|
})(), f = function(t2, e2) {
|
|
if ("undefined" == typeof t2.length) throw t2.length + "/" + e2;
|
|
const n2 = (function() {
|
|
let n3 = 0;
|
|
while (n3 < t2.length && 0 == t2[n3]) n3 += 1;
|
|
const r3 = new Array(t2.length - n3 + e2);
|
|
for (let e3 = 0; e3 < t2.length - n3; e3 += 1) r3[e3] = t2[e3 + n3];
|
|
return r3;
|
|
})(), r2 = { getAt: function(t3) {
|
|
return n2[t3];
|
|
}, getLength: function() {
|
|
return n2.length;
|
|
}, multiply: function(t3) {
|
|
const e3 = new Array(r2.getLength() + t3.getLength() - 1);
|
|
for (let n3 = 0; n3 < r2.getLength(); n3 += 1) for (let o2 = 0; o2 < t3.getLength(); o2 += 1) e3[n3 + o2] ^= c.gexp(c.glog(r2.getAt(n3)) + c.glog(t3.getAt(o2)));
|
|
return f(e3, 0);
|
|
}, mod: function(t3) {
|
|
if (r2.getLength() - t3.getLength() < 0) return r2;
|
|
const e3 = c.glog(r2.getAt(0)) - c.glog(t3.getAt(0)), n3 = new Array(r2.getLength());
|
|
for (let o2 = 0; o2 < r2.getLength(); o2 += 1) n3[o2] = r2.getAt(o2);
|
|
for (let r3 = 0; r3 < t3.getLength(); r3 += 1) n3[r3] ^= c.gexp(c.glog(t3.getAt(r3)) + e3);
|
|
return f(n3, 0).mod(t3);
|
|
} };
|
|
return r2;
|
|
}, s = (function() {
|
|
const t2 = [[1, 26, 19], [1, 26, 16], [1, 26, 13], [1, 26, 9], [1, 44, 34], [1, 44, 28], [1, 44, 22], [1, 44, 16], [1, 70, 55], [1, 70, 44], [2, 35, 17], [2, 35, 13], [1, 100, 80], [2, 50, 32], [2, 50, 24], [4, 25, 9], [1, 134, 108], [2, 67, 43], [2, 33, 15, 2, 34, 16], [2, 33, 11, 2, 34, 12], [2, 86, 68], [4, 43, 27], [4, 43, 19], [4, 43, 15], [2, 98, 78], [4, 49, 31], [2, 32, 14, 4, 33, 15], [4, 39, 13, 1, 40, 14], [2, 121, 97], [2, 60, 38, 2, 61, 39], [4, 40, 18, 2, 41, 19], [4, 40, 14, 2, 41, 15], [2, 146, 116], [3, 58, 36, 2, 59, 37], [4, 36, 16, 4, 37, 17], [4, 36, 12, 4, 37, 13], [2, 86, 68, 2, 87, 69], [4, 69, 43, 1, 70, 44], [6, 43, 19, 2, 44, 20], [6, 43, 15, 2, 44, 16], [4, 101, 81], [1, 80, 50, 4, 81, 51], [4, 50, 22, 4, 51, 23], [3, 36, 12, 8, 37, 13], [2, 116, 92, 2, 117, 93], [6, 58, 36, 2, 59, 37], [4, 46, 20, 6, 47, 21], [7, 42, 14, 4, 43, 15], [4, 133, 107], [8, 59, 37, 1, 60, 38], [8, 44, 20, 4, 45, 21], [12, 33, 11, 4, 34, 12], [3, 145, 115, 1, 146, 116], [4, 64, 40, 5, 65, 41], [11, 36, 16, 5, 37, 17], [11, 36, 12, 5, 37, 13], [5, 109, 87, 1, 110, 88], [5, 65, 41, 5, 66, 42], [5, 54, 24, 7, 55, 25], [11, 36, 12, 7, 37, 13], [5, 122, 98, 1, 123, 99], [7, 73, 45, 3, 74, 46], [15, 43, 19, 2, 44, 20], [3, 45, 15, 13, 46, 16], [1, 135, 107, 5, 136, 108], [10, 74, 46, 1, 75, 47], [1, 50, 22, 15, 51, 23], [2, 42, 14, 17, 43, 15], [5, 150, 120, 1, 151, 121], [9, 69, 43, 4, 70, 44], [17, 50, 22, 1, 51, 23], [2, 42, 14, 19, 43, 15], [3, 141, 113, 4, 142, 114], [3, 70, 44, 11, 71, 45], [17, 47, 21, 4, 48, 22], [9, 39, 13, 16, 40, 14], [3, 135, 107, 5, 136, 108], [3, 67, 41, 13, 68, 42], [15, 54, 24, 5, 55, 25], [15, 43, 15, 10, 44, 16], [4, 144, 116, 4, 145, 117], [17, 68, 42], [17, 50, 22, 6, 51, 23], [19, 46, 16, 6, 47, 17], [2, 139, 111, 7, 140, 112], [17, 74, 46], [7, 54, 24, 16, 55, 25], [34, 37, 13], [4, 151, 121, 5, 152, 122], [4, 75, 47, 14, 76, 48], [11, 54, 24, 14, 55, 25], [16, 45, 15, 14, 46, 16], [6, 147, 117, 4, 148, 118], [6, 73, 45, 14, 74, 46], [11, 54, 24, 16, 55, 25], [30, 46, 16, 2, 47, 17], [8, 132, 106, 4, 133, 107], [8, 75, 47, 13, 76, 48], [7, 54, 24, 22, 55, 25], [22, 45, 15, 13, 46, 16], [10, 142, 114, 2, 143, 115], [19, 74, 46, 4, 75, 47], [28, 50, 22, 6, 51, 23], [33, 46, 16, 4, 47, 17], [8, 152, 122, 4, 153, 123], [22, 73, 45, 3, 74, 46], [8, 53, 23, 26, 54, 24], [12, 45, 15, 28, 46, 16], [3, 147, 117, 10, 148, 118], [3, 73, 45, 23, 74, 46], [4, 54, 24, 31, 55, 25], [11, 45, 15, 31, 46, 16], [7, 146, 116, 7, 147, 117], [21, 73, 45, 7, 74, 46], [1, 53, 23, 37, 54, 24], [19, 45, 15, 26, 46, 16], [5, 145, 115, 10, 146, 116], [19, 75, 47, 10, 76, 48], [15, 54, 24, 25, 55, 25], [23, 45, 15, 25, 46, 16], [13, 145, 115, 3, 146, 116], [2, 74, 46, 29, 75, 47], [42, 54, 24, 1, 55, 25], [23, 45, 15, 28, 46, 16], [17, 145, 115], [10, 74, 46, 23, 75, 47], [10, 54, 24, 35, 55, 25], [19, 45, 15, 35, 46, 16], [17, 145, 115, 1, 146, 116], [14, 74, 46, 21, 75, 47], [29, 54, 24, 19, 55, 25], [11, 45, 15, 46, 46, 16], [13, 145, 115, 6, 146, 116], [14, 74, 46, 23, 75, 47], [44, 54, 24, 7, 55, 25], [59, 46, 16, 1, 47, 17], [12, 151, 121, 7, 152, 122], [12, 75, 47, 26, 76, 48], [39, 54, 24, 14, 55, 25], [22, 45, 15, 41, 46, 16], [6, 151, 121, 14, 152, 122], [6, 75, 47, 34, 76, 48], [46, 54, 24, 10, 55, 25], [2, 45, 15, 64, 46, 16], [17, 152, 122, 4, 153, 123], [29, 74, 46, 14, 75, 47], [49, 54, 24, 10, 55, 25], [24, 45, 15, 46, 46, 16], [4, 152, 122, 18, 153, 123], [13, 74, 46, 32, 75, 47], [48, 54, 24, 14, 55, 25], [42, 45, 15, 32, 46, 16], [20, 147, 117, 4, 148, 118], [40, 75, 47, 7, 76, 48], [43, 54, 24, 22, 55, 25], [10, 45, 15, 67, 46, 16], [19, 148, 118, 6, 149, 119], [18, 75, 47, 31, 76, 48], [34, 54, 24, 34, 55, 25], [20, 45, 15, 61, 46, 16]], e2 = function(t3, e3) {
|
|
const n3 = {};
|
|
return n3.totalCount = t3, n3.dataCount = e3, n3;
|
|
}, n2 = {}, r2 = function(e3, n3) {
|
|
switch (n3) {
|
|
case i.L:
|
|
return t2[4 * (e3 - 1) + 0];
|
|
case i.M:
|
|
return t2[4 * (e3 - 1) + 1];
|
|
case i.Q:
|
|
return t2[4 * (e3 - 1) + 2];
|
|
case i.H:
|
|
return t2[4 * (e3 - 1) + 3];
|
|
default:
|
|
return;
|
|
}
|
|
};
|
|
return n2.getRSBlocks = function(t3, n3) {
|
|
const o2 = r2(t3, n3);
|
|
if ("undefined" == typeof o2) throw "bad rs block @ typeNumber:" + t3 + "/errorCorrectionLevel:" + n3;
|
|
const i2 = o2.length / 3, u2 = [];
|
|
for (let r3 = 0; r3 < i2; r3 += 1) {
|
|
const t4 = o2[3 * r3 + 0], n4 = o2[3 * r3 + 1], i3 = o2[3 * r3 + 2];
|
|
for (let r4 = 0; r4 < t4; r4 += 1) u2.push(e2(n4, i3));
|
|
}
|
|
return u2;
|
|
}, n2;
|
|
})(), a = function() {
|
|
const t2 = [];
|
|
let e2 = 0;
|
|
const n2 = { getBuffer: function() {
|
|
return t2;
|
|
}, getAt: function(e3) {
|
|
const n3 = Math.floor(e3 / 8);
|
|
return 1 == (t2[n3] >>> 7 - e3 % 8 & 1);
|
|
}, put: function(t3, e3) {
|
|
for (let r2 = 0; r2 < e3; r2 += 1) n2.putBit(1 == (t3 >>> e3 - r2 - 1 & 1));
|
|
}, getLengthInBits: function() {
|
|
return e2;
|
|
}, putBit: function(n3) {
|
|
const r2 = Math.floor(e2 / 8);
|
|
t2.length <= r2 && t2.push(0), n3 && (t2[r2] |= 128 >>> e2 % 8), e2 += 1;
|
|
} };
|
|
return n2;
|
|
}, g = function(t2) {
|
|
const e2 = o.MODE_NUMBER, n2 = t2, r2 = { getMode: function() {
|
|
return e2;
|
|
}, getLength: function(t3) {
|
|
return n2.length;
|
|
}, write: function(t3) {
|
|
const e3 = n2;
|
|
let r3 = 0;
|
|
while (r3 + 2 < e3.length) t3.put(i2(e3.substring(r3, r3 + 3)), 10), r3 += 3;
|
|
r3 < e3.length && (e3.length - r3 == 1 ? t3.put(i2(e3.substring(r3, r3 + 1)), 4) : e3.length - r3 == 2 && t3.put(i2(e3.substring(r3, r3 + 2)), 7));
|
|
} }, i2 = function(t3) {
|
|
let e3 = 0;
|
|
for (let n3 = 0; n3 < t3.length; n3 += 1) e3 = 10 * e3 + u2(t3.charAt(n3));
|
|
return e3;
|
|
}, u2 = function(t3) {
|
|
if ("0" <= t3 && t3 <= "9") return t3.charCodeAt(0) - "0".charCodeAt(0);
|
|
throw "illegal char :" + t3;
|
|
};
|
|
return r2;
|
|
}, h = function(t2) {
|
|
const e2 = o.MODE_ALPHA_NUM, n2 = t2, r2 = { getMode: function() {
|
|
return e2;
|
|
}, getLength: function(t3) {
|
|
return n2.length;
|
|
}, write: function(t3) {
|
|
const e3 = n2;
|
|
let r3 = 0;
|
|
while (r3 + 1 < e3.length) t3.put(45 * i2(e3.charAt(r3)) + i2(e3.charAt(r3 + 1)), 11), r3 += 2;
|
|
r3 < e3.length && t3.put(i2(e3.charAt(r3)), 6);
|
|
} }, i2 = function(t3) {
|
|
if ("0" <= t3 && t3 <= "9") return t3.charCodeAt(0) - "0".charCodeAt(0);
|
|
if ("A" <= t3 && t3 <= "Z") return t3.charCodeAt(0) - "A".charCodeAt(0) + 10;
|
|
switch (t3) {
|
|
case " ":
|
|
return 36;
|
|
case "$":
|
|
return 37;
|
|
case "%":
|
|
return 38;
|
|
case "*":
|
|
return 39;
|
|
case "+":
|
|
return 40;
|
|
case "-":
|
|
return 41;
|
|
case ".":
|
|
return 42;
|
|
case "/":
|
|
return 43;
|
|
case ":":
|
|
return 44;
|
|
default:
|
|
throw "illegal char :" + t3;
|
|
}
|
|
};
|
|
return r2;
|
|
}, d = function(t2) {
|
|
const e2 = o.MODE_8BIT_BYTE, n2 = r.stringToBytes(t2), i2 = { getMode: function() {
|
|
return e2;
|
|
}, getLength: function(t3) {
|
|
return n2.length;
|
|
}, write: function(t3) {
|
|
for (let e3 = 0; e3 < n2.length; e3 += 1) t3.put(n2[e3], 8);
|
|
} };
|
|
return i2;
|
|
}, w = function(t2) {
|
|
const e2 = o.MODE_KANJI, n2 = r.stringToBytes;
|
|
!(function(t3, e3) {
|
|
const r2 = n2(t3);
|
|
if (2 != r2.length || (r2[0] << 8 | r2[1]) != e3) throw "sjis not supported.";
|
|
})("友", 38726);
|
|
const i2 = n2(t2), u2 = { getMode: function() {
|
|
return e2;
|
|
}, getLength: function(t3) {
|
|
return ~~(i2.length / 2);
|
|
}, write: function(t3) {
|
|
const e3 = i2;
|
|
let n3 = 0;
|
|
while (n3 + 1 < e3.length) {
|
|
let r2 = (255 & e3[n3]) << 8 | 255 & e3[n3 + 1];
|
|
if (33088 <= r2 && r2 <= 40956) r2 -= 33088;
|
|
else {
|
|
if (!(57408 <= r2 && r2 <= 60351)) throw "illegal char at " + (n3 + 1) + "/" + r2;
|
|
r2 -= 49472;
|
|
}
|
|
r2 = 192 * (r2 >>> 8 & 255) + (255 & r2), t3.put(r2, 13), n3 += 2;
|
|
}
|
|
if (n3 < e3.length) throw "illegal char at " + (n3 + 1);
|
|
} };
|
|
return u2;
|
|
}, p = function() {
|
|
const t2 = [], e2 = { writeByte: function(e3) {
|
|
t2.push(255 & e3);
|
|
}, writeShort: function(t3) {
|
|
e2.writeByte(t3), e2.writeByte(t3 >>> 8);
|
|
}, writeBytes: function(t3, n2, r2) {
|
|
n2 = n2 || 0, r2 = r2 || t3.length;
|
|
for (let o2 = 0; o2 < r2; o2 += 1) e2.writeByte(t3[o2 + n2]);
|
|
}, writeString: function(t3) {
|
|
for (let n2 = 0; n2 < t3.length; n2 += 1) e2.writeByte(t3.charCodeAt(n2));
|
|
}, toByteArray: function() {
|
|
return t2;
|
|
}, toString: function() {
|
|
let e3 = "";
|
|
e3 += "[";
|
|
for (let n2 = 0; n2 < t2.length; n2 += 1) n2 > 0 && (e3 += ","), e3 += t2[n2];
|
|
return e3 += "]", e3;
|
|
} };
|
|
return e2;
|
|
}, y = function() {
|
|
let t2 = 0, e2 = 0, n2 = 0, r2 = "";
|
|
const o2 = {}, i2 = function(t3) {
|
|
r2 += String.fromCharCode(u2(63 & t3));
|
|
}, u2 = function(t3) {
|
|
if (t3 < 0) throw "n:" + t3;
|
|
if (t3 < 26) return 65 + t3;
|
|
if (t3 < 52) return t3 - 26 + 97;
|
|
if (t3 < 62) return t3 - 52 + 48;
|
|
if (62 == t3) return 43;
|
|
if (63 == t3) return 47;
|
|
throw "n:" + t3;
|
|
};
|
|
return o2.writeByte = function(r3) {
|
|
t2 = t2 << 8 | 255 & r3, e2 += 8, n2 += 1;
|
|
while (e2 >= 6) i2(t2 >>> e2 - 6), e2 -= 6;
|
|
}, o2.flush = function() {
|
|
if (e2 > 0 && (i2(t2 << 6 - e2), t2 = 0, e2 = 0), n2 % 3 != 0) {
|
|
const t3 = 3 - n2 % 3;
|
|
for (let e3 = 0; e3 < t3; e3 += 1) r2 += "=";
|
|
}
|
|
}, o2.toString = function() {
|
|
return r2;
|
|
}, o2;
|
|
}, A = function(t2) {
|
|
const e2 = t2;
|
|
let n2 = 0, r2 = 0, o2 = 0;
|
|
const i2 = { read: function() {
|
|
while (o2 < 8) {
|
|
if (n2 >= e2.length) {
|
|
if (0 == o2) return -1;
|
|
throw "unexpected end of file./" + o2;
|
|
}
|
|
const t4 = e2.charAt(n2);
|
|
if (n2 += 1, "=" == t4) return o2 = 0, -1;
|
|
t4.match(/^\s$/) || (r2 = r2 << 6 | u2(t4.charCodeAt(0)), o2 += 6);
|
|
}
|
|
const t3 = r2 >>> o2 - 8 & 255;
|
|
return o2 -= 8, t3;
|
|
} }, u2 = function(t3) {
|
|
if (65 <= t3 && t3 <= 90) return t3 - 65;
|
|
if (97 <= t3 && t3 <= 122) return t3 - 97 + 26;
|
|
if (48 <= t3 && t3 <= 57) return t3 - 48 + 52;
|
|
if (43 == t3) return 62;
|
|
if (47 == t3) return 63;
|
|
throw "c:" + t3;
|
|
};
|
|
return i2;
|
|
}, B = function(t2, e2) {
|
|
const n2 = t2, r2 = e2, o2 = new Array(t2 * e2), i2 = { setPixel: function(t3, e3, r3) {
|
|
o2[e3 * n2 + t3] = r3;
|
|
}, write: function(t3) {
|
|
t3.writeString("GIF87a"), t3.writeShort(n2), t3.writeShort(r2), t3.writeByte(128), t3.writeByte(0), t3.writeByte(0), t3.writeByte(0), t3.writeByte(0), t3.writeByte(0), t3.writeByte(255), t3.writeByte(255), t3.writeByte(255), t3.writeString(","), t3.writeShort(0), t3.writeShort(0), t3.writeShort(n2), t3.writeShort(r2), t3.writeByte(0);
|
|
const e3 = 2, o3 = l2(e3);
|
|
t3.writeByte(e3);
|
|
let i3 = 0;
|
|
while (o3.length - i3 > 255) t3.writeByte(255), t3.writeBytes(o3, i3, 255), i3 += 255;
|
|
t3.writeByte(o3.length - i3), t3.writeBytes(o3, i3, o3.length - i3), t3.writeByte(0), t3.writeString(";");
|
|
} }, u2 = function(t3) {
|
|
const e3 = t3;
|
|
let n3 = 0, r3 = 0;
|
|
const o3 = { write: function(t4, o4) {
|
|
if (t4 >>> o4 != 0) throw "length over";
|
|
while (n3 + o4 >= 8) e3.writeByte(255 & (t4 << n3 | r3)), o4 -= 8 - n3, t4 >>>= 8 - n3, r3 = 0, n3 = 0;
|
|
r3 |= t4 << n3, n3 += o4;
|
|
}, flush: function() {
|
|
n3 > 0 && e3.writeByte(r3);
|
|
} };
|
|
return o3;
|
|
}, l2 = function(t3) {
|
|
const e3 = 1 << t3, n3 = 1 + (1 << t3);
|
|
let r3 = t3 + 1;
|
|
const i3 = c2();
|
|
for (let o3 = 0; o3 < e3; o3 += 1) i3.add(String.fromCharCode(o3));
|
|
i3.add(String.fromCharCode(e3)), i3.add(String.fromCharCode(n3));
|
|
const l3 = p(), f2 = u2(l3);
|
|
f2.write(e3, r3);
|
|
let s2 = 0, a2 = String.fromCharCode(o2[s2]);
|
|
s2 += 1;
|
|
while (s2 < o2.length) {
|
|
const t4 = String.fromCharCode(o2[s2]);
|
|
s2 += 1, i3.contains(a2 + t4) ? a2 += t4 : (f2.write(i3.indexOf(a2), r3), i3.size() < 4095 && (i3.size() == 1 << r3 && (r3 += 1), i3.add(a2 + t4)), a2 = t4);
|
|
}
|
|
return f2.write(i3.indexOf(a2), r3), f2.write(n3, r3), f2.flush(), l3.toByteArray();
|
|
}, c2 = function() {
|
|
const t3 = {};
|
|
let e3 = 0;
|
|
const n3 = { add: function(r3) {
|
|
if (n3.contains(r3)) throw "dup key:" + r3;
|
|
t3[r3] = e3, e3 += 1;
|
|
}, size: function() {
|
|
return e3;
|
|
}, indexOf: function(e4) {
|
|
return t3[e4];
|
|
}, contains: function(e4) {
|
|
return "undefined" != typeof t3[e4];
|
|
} };
|
|
return n3;
|
|
};
|
|
return i2;
|
|
}, M = function(t2, e2, n2) {
|
|
const r2 = B(t2, e2);
|
|
for (let l2 = 0; l2 < e2; l2 += 1) for (let e3 = 0; e3 < t2; e3 += 1) r2.setPixel(e3, l2, n2(e3, l2));
|
|
const o2 = p();
|
|
r2.write(o2);
|
|
const i2 = y(), u2 = o2.toByteArray();
|
|
for (let l2 = 0; l2 < u2.length; l2 += 1) i2.writeByte(u2[l2]);
|
|
return i2.flush(), "data:image/gif;base64," + i2;
|
|
};
|
|
r.stringToBytes;
|
|
} }]);
|