jnf-ui
Version:
基于 vue3+ ts+ Element-plus 二次封装组件
819 lines • 1.83 MB
JavaScript
import jv, { defineComponent as vr, ref as Tt, onActivated as Vv, openBlock as me, createElementBlock as dt, renderSlot as kr, computed as ct, resolveComponent as kt, createBlock as pt, mergeProps as Ir, unref as ie, isRef as zo, withCtx as Ke, createTextVNode as Sr, createCommentVNode as It, Fragment as zr, renderList as mo, createSlots as Jl, createElementVNode as Jt, toDisplayString as Dr, createVNode as Pt, onMounted as Da, onBeforeUnmount as Cs, normalizeClass as Kt, withDirectives as Ua, resolveDynamicComponent as pn, toHandlers as Bl, vShow as go, nextTick as Ln, useAttrs as Xl, normalizeProps as Ep, guardReactiveProps as Fp, watch as wn, resolveDirective as Tp, normalizeStyle as Wo, withModifiers as uo, getCurrentScope as Hv, onScopeDispose as Sp, readonly as zv, getCurrentInstance as As, warn as Wv, provide as d0, inject as vo, watchEffect as Gv, toRef as Ul, onUnmounted as Kv, useSlots as Cp, shallowRef as Sf, Transition as Ql, Text as Yv, reactive as p0, h as vs, createApp as Jv, toRefs as Ap, shallowReactive as Xv, isVNode as Zl, render as $l, withKeys as gl } from "vue";
const Qv = {
name: "TLayoutPage"
}, Zv = /* @__PURE__ */ vr({
...Qv,
props: {
keepScrollDisabled: {
type: Boolean,
default: !1
}
},
setup(i) {
const d = i, s = Tt(null), u = Tt(0);
return Vv(() => {
d.keepScrollDisabled || (s.value.scrollTop = u);
}), (r, e) => (me(), dt("div", {
ref_key: "TLayoutPageRef",
ref: s,
class: "t_layout_page",
onScroll: e[0] || (e[0] = (g) => u.value = g.target.scrollTop)
}, [
kr(r.$slots, "default", {}, void 0, !0)
], 544));
}
});
const Ha = (i, d) => {
const s = i.__vccOpts || i;
for (const [u, r] of d)
s[u] = r;
return s;
}, qv = /* @__PURE__ */ Ha(Zv, [["__scopeId", "data-v-777b5cfb"]]), ya = (i, d) => {
if (i.install = (s) => {
for (const u of [i, ...Object.values(d != null ? d : {})])
s.component(u.name, u);
}, d)
for (const [s, u] of Object.entries(d))
i[s] = u;
return i;
}, e4 = ya(qv);
const t4 = {}, r4 = { class: "t_layout_page_item" };
function n4(i, d) {
return me(), dt("section", r4, [
kr(i.$slots, "default", {}, void 0, !0)
]);
}
const a4 = /* @__PURE__ */ Ha(t4, [["render", n4], ["__scopeId", "data-v-b9eaddc4"]]), o4 = ya(a4), s4 = {
name: "JnSelect"
}, i4 = /* @__PURE__ */ vr({
...s4,
props: {
modelValue: {
type: [String, Number, Array]
},
multiple: {
type: Boolean,
default: !1
},
width: {
type: String
},
valueKey: {
type: String,
default: "key"
},
labelKey: {
type: String,
default: "label"
},
optionSource: {
type: Array,
default: () => []
}
},
emits: ["update:modelValue"],
setup(i, { emit: d }) {
const s = i;
let u = ct({
get() {
return s.modelValue;
},
set(g) {
d("update:modelValue", g);
}
});
const r = ct({
get() {
const g = s.modelValue;
return (g == null ? void 0 : g.length) === s.optionSource.length;
},
set(g) {
return (g == null ? void 0 : g.length) === s.optionSource.length;
}
}), e = (g) => {
const x = JSON.parse(JSON.stringify(s.optionSource));
if (g) {
const T = x.map((F) => F[s.valueKey]);
d("update:modelValue", T);
} else
d("update:modelValue", null);
};
return (g, x) => {
const T = kt("el-checkbox"), F = kt("el-option"), k = kt("el-select");
return me(), pt(k, Ir({
"popper-class": "jn_select",
modelValue: ie(u),
"onUpdate:modelValue": x[1] || (x[1] = (D) => zo(u) ? u.value = D : u = D),
style: { width: i.width || "100%" }
}, { clearable: !0, filterable: !0, ...g.$attrs }, { multiple: i.multiple }), {
default: Ke(() => [
i.multiple ? (me(), pt(T, {
key: 0,
modelValue: ie(r),
"onUpdate:modelValue": x[0] || (x[0] = (D) => zo(r) ? r.value = D : null),
onChange: e,
class: "all_checkbox"
}, {
default: Ke(() => [
Sr("\u5168\u9009")
]),
_: 1
}, 8, ["modelValue"])) : It("", !0),
(me(!0), dt(zr, null, mo(i.optionSource, (D, O) => (me(), pt(F, {
key: O + "i",
label: D[i.labelKey],
value: D[i.valueKey]
}, null, 8, ["label", "value"]))), 128))
]),
_: 1
}, 16, ["modelValue", "style", "multiple"]);
};
}
});
const l4 = /* @__PURE__ */ Ha(i4, [["__scopeId", "data-v-df53e48b"]]), c4 = ya(l4), f4 = vr({
name: "RenderTooltip",
props: {
render: Function,
item: Object
},
render(i) {
return console.log("ctx", i), i.render(i == null ? void 0 : i.item);
}
}), u4 = {
key: 1,
class: "tip_class"
}, h4 = { key: 0 }, d4 = { key: 1 }, p4 = { key: 0 }, g4 = { key: 1 }, m4 = { key: 0 }, v4 = { key: 1 }, b4 = {
name: "JnDetail"
}, y4 = /* @__PURE__ */ vr({
...b4,
props: {
descColumn: {
type: Number,
default: 4
},
dataList: {
type: Object,
default: () => ({})
},
listTypeInfo: {
type: Object,
default: () => ({})
},
descData: {
type: Array,
default: () => []
}
},
setup(i) {
const d = (s, u, r, e) => {
const g = u.find((x) => x[r] === s);
return g && g[e];
};
return (s, u) => {
const r = kt("Warning"), e = kt("el-icon"), g = kt("el-tooltip"), x = kt("el-descriptions-item"), T = kt("el-descriptions");
return me(), pt(T, Ir({
class: "jn_detail",
size: "small"
}, s.$attrs, { column: i.descColumn }), {
default: Ke(() => [
(me(!0), dt(zr, null, mo(i.descData, (F, k) => (me(), pt(x, Ir({
key: k,
label: F.label,
span: F.span || 1
}, s.$attrs), {
default: Ke(() => [
F.slotName ? kr(s.$slots, F.slotName, { key: 0 }, void 0, !0) : (me(), dt("span", u4, [
F.tooltip ? (me(), pt(g, Ir({ key: 0 }, s.$attrs, {
placement: F.placement || "bottom"
}), Jl({
default: Ke(() => [
Jt("span", null, [
F.filters && F.filters.list ? (me(), dt("span", h4, Dr(d(
i.dataList[F.fieldName],
i.listTypeInfo[F.filters.list],
F.filters.key || "value",
F.filters.label || "label"
)), 1)) : (me(), dt("span", d4, Dr(F.value), 1)),
Pt(e, {
size: F.iconSize,
color: F.iconColor,
style: { cursor: "pointer", "margin-left": "2px", top: "1px" }
}, {
default: Ke(() => [
Pt(r)
]),
_: 2
}, 1032, ["size", "color"])
])
]),
_: 2
}, [
F.tooltip ? {
name: "content",
fn: Ke(() => [
typeof F.tooltip == "string" ? (me(), dt("span", p4, Dr(F.tooltip), 1)) : typeof F.tooltip == "function" ? (me(), pt(f4, {
key: 1,
render: F.tooltip,
item: F
}, null, 8, ["render", "item"])) : It("", !0)
]),
key: "0"
} : void 0
]), 1040, ["placement"])) : (me(), dt("span", g4, [
F.filters && F.filters.list ? (me(), dt("span", m4, Dr(d(
i.dataList[F.fieldName],
i.listTypeInfo[F.filters.list],
F.filters.key || "value",
F.filters.label || "label"
)), 1)) : (me(), dt("span", v4, Dr(F.value), 1))
]))
]))
]),
_: 2
}, 1040, ["label", "span"]))), 128))
]),
_: 3
}, 16, ["column"]);
};
}
});
const w4 = /* @__PURE__ */ Ha(y4, [["__scopeId", "data-v-6d93d84e"]]), x4 = ya(w4), E4 = {
name: "JnButton"
}, F4 = /* @__PURE__ */ vr({
...E4,
props: {
time: {
type: Number,
default: 1e3
}
},
emits: ["click"],
setup(i, { emit: d }) {
const s = i, u = Tt(0), r = () => {
new Date().getTime() - u.value > s.time && d("click"), u.value = new Date().getTime();
};
return (e, g) => {
const x = kt("el-button");
return me(), pt(x, Ir(e.$attrs, { onClick: r }), {
default: Ke(() => [
kr(e.$slots, "default")
]),
_: 3
}, 16);
};
}
}), T4 = ya(F4), S4 = ["innerHTML"], C4 = /* @__PURE__ */ vr({
__name: "index",
props: {
modelValue: {
type: Object
},
formData: {
type: Object,
default: null
},
formOpts: {
type: Object,
default: () => ({})
},
httpRequest: {
type: Function
},
disabled: {
type: Boolean,
default: !1
},
isSearch: {
type: Boolean,
default: !1
},
rowsTotal: {
type: Number,
default: 999999
},
isDetail: {
type: Boolean,
default: !1
},
oldData: {
type: Object,
default: () => ({})
},
isComparison: {
type: Boolean,
default: !1
}
},
emits: [
"update:modelValue",
"on-preview",
"on-remove",
"on-success",
"on-error",
"on-progress",
"on-change",
"before-upload",
"before-remove",
"on-exceed"
],
setup(i, { expose: d, emit: s }) {
const u = i, r = Tt(), e = Tt(), g = Tt("");
function x(X) {
if (Array.isArray(u.modelValue[X])) {
const he = JSON.stringify(u.modelValue[X]), Ae = JSON.stringify(u.oldData[X]);
return he !== Ae;
}
return u.modelValue[X] !== u.oldData[X];
}
function T(X, he, Ae) {
if (Array.isArray(u.modelValue[he])) {
const ve = JSON.stringify(u.modelValue[he]), Ue = JSON.stringify(u.oldData[he]);
return u.isComparison && ve !== Ue && (g.value = u.oldData[he + "Label"].join("/") || "", r.value = X.currentTarget), !1;
}
if (Ae == "select")
return u.isComparison && u.modelValue[he] !== u.oldData[he] && (g.value = u.oldData[he + "Label"], r.value = X.currentTarget), !1;
u.isComparison && u.modelValue[he] !== u.oldData[he] && (g.value = u.oldData[he], r.value = X.currentTarget);
}
const F = Tt(6), k = Tt(!1), D = (X) => (F.value += X != null ? X : 12, F.value <= 24 * u.rowsTotal), O = Tt(window.innerWidth);
function P() {
O.value = window.innerWidth;
}
window.addEventListener("resize", P);
const R = () => O.value < 576 ? 24 : O.value >= 576 && O.value < 768 ? 12 : O.value >= 768 && O.value < 992 || O.value >= 992 && O.value < 1200 ? 8 : 6, L = (X) => {
var he;
for (const Ae in u.formOpts) {
const ve = u.formOpts[Ae];
ve.attrs && (ve.colSize = u.isSearch ? ct(R) : (he = ve == null ? void 0 : ve.colSize) != null ? he : 12);
let Ue = u.isSearch ? X || D(ve == null ? void 0 : ve.colSize) : ve.hasOwnProperty("show") ? ve.show : !0;
ve.show = Ue;
}
k.value = X ? !X : F.value <= 24 * u.rowsTotal, F.value = 6;
}, U = (X) => {
let he = !1;
for (const Ae in u.formOpts) {
let ve = u.formOpts[Ae];
Ae === X ? he = !0 : ve.type === "title" && (he = !1), he && (ve.show = !ve.show);
}
};
let z = Tt({});
Tt({});
let j = Tt();
Tt("");
let ee = Tt(!1);
const V = async ({ formData: X = {}, type: he }) => {
if (ee.value)
return !1;
ee.value = !0;
const Ae = u.formOpts;
Object.keys(Ae).forEach((ve) => {
z.value[ve] = [
{
trigger: "blur",
required: u.disabled ? !1 : Ae[ve].required,
message: (Ae[ve].label || "\u6B64\u9879") + "\u662F\u5FC5\u586B\u9879"
},
...Ae[ve].rules || []
];
}), he || s("update:modelValue", X), await Ln(), j.value.clearValidate(), L(!1), ee.value = !1;
};
Da(() => {
setTimeout(() => {
ee.value || V({ type: "itself" });
});
}), Cs(() => {
ee.value = !1;
});
const K = ct(() => (X) => {
switch (X.type) {
case "select":
return "option";
case "checkbox-group":
return "checkbox";
case "radio-group":
return "radio";
default:
return null;
}
}), re = ct(() => (X, he, Ae) => {
var ve, Ue, $t;
switch (X.type) {
case "select":
if ((ve = X.attrs) != null && ve.valueKey)
return he;
default:
return he[(($t = (Ue = X.attrs) == null ? void 0 : Ue.props) == null ? void 0 : $t.value) || "value"];
}
}), Fe = ct(() => (X, he) => {
var Ae, ve, Ue, $t;
switch (X.type) {
case "radio-group":
return he[((ve = (Ae = X.attrs) == null ? void 0 : Ae.props) == null ? void 0 : ve.value) || "value"];
default:
return he[(($t = (Ue = X.attrs) == null ? void 0 : Ue.props) == null ? void 0 : $t.label) || "label"];
}
}), Re = ct(() => (X) => {
var Ae, ve;
return typeof X.attrs == "function" ? {
...X.attrs(u.modelValue),
disabled: u != null && u.disabled ? !0 : (Ae = X.attrs(u.modelValue)) == null ? void 0 : Ae.disabled
} : {
clearable: !0,
filterable: !0,
...X.attrs,
disabled: u.disabled || ((ve = X.attrs) == null ? void 0 : ve.disabled)
};
}), le = ct(() => (X) => {
let he = { ...X.events }, Ae = {};
return Object.keys(he).forEach((ve) => {
Ae[ve] = (Ue) => {
he[ve] && he[ve](Ue, u.modelValue);
};
}), { ...Ae };
});
return d({
initForm: V,
resetFields: () => {
j.value.resetFields();
},
validate: () => j.value.validate,
getFormData: () => u.modelValue,
model: u.modelValue,
calculateShowCol: L,
isShowExpand: k
}), (X, he) => {
const Ae = kt("ArrowDown"), ve = kt("ArrowUp"), Ue = kt("el-icon"), $t = kt("el-button"), yt = kt("el-form-item"), ke = kt("el-col"), Z = kt("el-row"), Ce = kt("el-form"), Ie = kt("el-tooltip");
return me(), dt(zr, null, [
i.modelValue ? (me(), pt(Ce, Ir({
key: 0,
class: "jnf-form",
ref_key: "form",
ref: j,
model: i.modelValue,
rules: ie(z)
}, X.$attrs, { "validate-on-rule-change": !1 }), {
default: Ke(() => [
Pt(Z, { class: "demo-autocomplete" }, {
default: Ke(() => [
(me(!0), dt(zr, null, mo(i.formOpts, (ne, q) => {
var pe, J;
return me(), dt(zr, { key: q }, [
(X.$attrs.hasOwnProperty("isShowApproval") ? ne.type == "title" && ne.show : ne.type == "title") ? (me(), dt("div", {
key: 0,
class: Kt(["secondary-tit", (pe = ne.attrs) == null ? void 0 : pe.className])
}, [
Jt("span", {
innerHTML: ne.label
}, null, 8, S4),
(J = ne.attrs) != null && J.isShowExpand ? (me(), pt($t, {
key: 0,
type: "primary",
onClick: (tt) => U(q),
link: ""
}, {
default: Ke(() => [
Pt(Ue, null, {
default: Ke(() => [
ne.show ? (me(), pt(ve, { key: 1 })) : (me(), pt(Ae, { key: 0 }))
]),
_: 2
}, 1024),
Sr(" " + Dr(ne.show ? "\u6536\u8D77" : "\u5C55\u5F00"), 1)
]),
_: 2
}, 1032, ["onClick"])) : It("", !0),
kr(X.$slots, q, {}, void 0, !0)
], 2)) : kr(X.$slots, q, {
key: 1,
formData: i.modelValue,
schema: { ...ne }
}, () => [
Ua(Pt(ke, {
span: ne == null ? void 0 : ne.colSize
}, {
default: Ke(() => [
Pt(yt, {
prop: q,
label: ne.label,
"label-width": ne.labelWidth,
class: Kt({ showRed: i.isComparison && x(q) }),
onMouseover: (tt) => {
T(tt, q, ne.type);
}
}, {
default: Ke(() => {
var tt;
return [
ne != null && ne.hasOwnProperty("children") ? (me(), pt(pn(`el-${ne.type}`), Ir({
key: 1,
modelValue: i.modelValue[q],
"onUpdate:modelValue": (Se) => i.modelValue[q] = Se,
disabled: ie(u).disabled || ((tt = ne.attrs) == null ? void 0 : tt.disabled)
}, ie(Re)(ne), Bl(ie(le)(ne))), {
default: Ke(() => [
ie(K)(ne) ? (me(!0), dt(zr, { key: 0 }, mo(ne == null ? void 0 : ne.children, (Se, jt) => {
var fr;
return me(), pt(pn(`el-${ie(K)(ne)}`), {
key: Se[((fr = ne.attrs) == null ? void 0 : fr.valueKey) || "value"],
label: ie(Fe)(ne, Se),
value: ie(re)(ne, Se, jt),
disabled: ie(u).disabled || (Se == null ? void 0 : Se.disabled)
}, {
default: Ke(() => {
var ft, rt;
return [
Sr(Dr(Se[((rt = (ft = ne.attrs) == null ? void 0 : ft.props) == null ? void 0 : rt.label) || "label"]), 1)
];
}),
_: 2
}, 1032, ["label", "value", "disabled"]);
}), 128)) : It("", !0)
]),
_: 2
}, 1040, ["modelValue", "onUpdate:modelValue", "disabled"])) : (me(), dt(zr, { key: 0 }, [
ne.type === "jn-date-picker" ? (me(), pt(pn("jn-date-picker"), Ir({
key: 0,
modelValue: i.modelValue,
"onUpdate:modelValue": he[0] || (he[0] = (Se) => zo(modelValue) ? modelValue.value = Se : null)
}, ie(Re)(ne)), null, 16, ["modelValue"])) : (me(), pt(pn(`el-${ne.type}`), Ir({ key: 1 }, ie(Re)(ne), {
modelValue: i.modelValue[q],
"onUpdate:modelValue": (Se) => i.modelValue[q] = Se
}, Bl(ie(le)(ne))), null, 16, ["modelValue", "onUpdate:modelValue"]))
], 64))
];
}),
_: 2
}, 1032, ["prop", "label", "label-width", "class", "onMouseover"])
]),
_: 2
}, 1032, ["span"]), [
[go, ne.show]
])
], !0)
], 64);
}), 128)),
Pt(ke, { span: 6 }, {
default: Ke(() => [
kr(X.$slots, "searchAction", {
form: ie(j),
model: i.modelValue,
isShowExpand: k.value
}, void 0, !0)
]),
_: 3
})
]),
_: 3
})
]),
_: 3
}, 16, ["model", "rules"])) : It("", !0),
Pt(Ie, {
ref_key: "tooltipRef",
ref: e,
"popper-options": {
modifiers: [
{
name: "computeStyles",
options: {
adaptive: !1,
enabled: !1
}
}
]
},
"virtual-ref": r.value,
placement: "top",
"virtual-triggering": "",
"popper-class": "singleton-tooltip"
}, {
content: Ke(() => [
Jt("div", null, Dr(g.value), 1)
]),
_: 1
}, 8, ["virtual-ref"])
], 64);
};
}
});
const A4 = /* @__PURE__ */ Ha(C4, [["__scopeId", "data-v-59ad7bc1"]]), D4 = ya(A4), k4 = /* @__PURE__ */ vr({
__name: "index",
props: {
modelValue: {
type: Object,
default: () => ({})
},
rowsTotal: {
type: Number,
default: 999999
},
searchParamet: {
type: Object,
default: () => {
}
},
formData: {
type: Object,
default: () => {
}
}
},
emits: [
"search",
"update:formData",
"update:modelValue"
],
setup(i, { expose: d, emit: s }) {
const u = i, r = Xl(), e = Tt(u.modelValue || {}), g = Tt();
Tt("");
const x = Tt(!1);
Tt(!1);
const T = Tt(), F = () => {
x.value = !x.value, g.value.calculateShowCol(x.value);
}, k = () => {
if (r.onReset) {
r == null || r.onReset();
return;
}
g.value.resetFields(), e.value = {}, s("update:modelValue", e.value), s("search", {
current: 1
});
};
Da(() => {
});
const D = () => {
g.value.resetFields();
}, O = (P) => {
const R = { ...P };
for (const L in R)
typeof R[L] == "string" && (R[L] = R[L].trim()), Array.isArray(R[L]) && !R[L].length && delete R[L];
s("search", { ...R, current: 1 });
};
return d({
resetSearchForm: k,
resetSearchFormParams: D
}), (P, R) => {
const L = kt("jn-button"), U = kt("ArrowDown"), z = kt("ArrowUp"), j = kt("el-icon"), ee = kt("jn-form");
return me(), dt("div", {
class: "subList",
ref_key: "subListRef",
ref: T
}, [
Pt(ee, {
ref_key: "searchFormRef",
ref: g,
isSearch: "",
rowsTotal: ie(u).rowsTotal,
formOpts: ie(u).searchParamet,
modelValue: e.value,
"onUpdate:modelValue": R[0] || (R[0] = (V) => e.value = V)
}, {
searchAction: Ke((V) => [
Pt(L, {
type: "primary",
icon: "Search",
onClick: (K) => O(V.model)
}, {
default: Ke(() => [
Sr("\u67E5\u8BE2")
]),
_: 2
}, 1032, ["onClick"]),
Pt(L, {
icon: "Refresh",
onClick: k
}, {
default: Ke(() => [
Sr("\u91CD\u7F6E")
]),
_: 1
}),
V.isShowExpand ? It("", !0) : (me(), pt(L, {
key: 0,
type: "primary",
link: "",
onClick: F
}, {
default: Ke(() => [
Pt(j, null, {
default: Ke(() => [
x.value ? (me(), pt(z, { key: 1 })) : (me(), pt(U, { key: 0 }))
]),
_: 1
}),
Sr(" " + Dr(x.value ? "\u6536\u8D77" : "\u5C55\u5F00"), 1)
]),
_: 1
}))
]),
_: 1
}, 8, ["rowsTotal", "formOpts", "modelValue"])
], 512);
};
}
});
const O4 = /* @__PURE__ */ Ha(k4, [["__scopeId", "data-v-6d31ba7d"]]), I4 = ya(O4);
var Dp = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
function R4(i) {
return i && i.__esModule && Object.prototype.hasOwnProperty.call(i, "default") ? i.default : i;
}
function kp(i) {
var d = i.default;
if (typeof d == "function") {
var s = function() {
return d.apply(this, arguments);
};
s.prototype = d.prototype;
} else
s = {};
return Object.defineProperty(s, "__esModule", { value: !0 }), Object.keys(i).forEach(function(u) {
var r = Object.getOwnPropertyDescriptor(i, u);
Object.defineProperty(s, u, r.get ? r : {
enumerable: !0,
get: function() {
return i[u];
}
});
}), s;
}
function Ol(i) {
throw new Error('Could not dynamically require "' + i + '". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');
}
var Wf = { exports: {} }, Cf = { exports: {} };
/*! cpexcel.js (C) 2013-present SheetJS -- http://sheetjs.com */
var Cd;
function N4() {
return Cd || (Cd = 1, function(i) {
var d = { version: "1.15.0" };
d[437] = function() {
for (var s = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0`, u = [], r = {}, e = 0; e != s.length; ++e)
s.charCodeAt(e) !== 65533 && (r[s.charAt(e)] = e), u[e] = s.charAt(e);
return { enc: r, dec: u };
}(), d[620] = function() {
for (var s = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC7\xFC\xE9\xE2\xE4\xE0\u0105\xE7\xEA\xEB\xE8\xEF\xEE\u0107\xC4\u0104\u0118\u0119\u0142\xF4\xF6\u0106\xFB\xF9\u015A\xD6\xDC\xA2\u0141\xA5\u015B\u0192\u0179\u017B\xF3\xD3\u0144\u0143\u017A\u017C\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0`, u = [], r = {}, e = 0; e != s.length; ++e)
s.charCodeAt(e) !== 65533 && (r[s.charAt(e)] = e), u[e] = s.charAt(e);
return { enc: r, dec: u };
}(), d[737] = function() {
for (var s = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0`, u = [], r = {}, e = 0; e != s.length; ++e)
s.charCodeAt(e) !== 65533 && (r[s.charAt(e)] = e), u[e] = s.charAt(e);
return { enc: r, dec: u };
}(), d[850] = function() {
for (var s = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0`, u = [], r = {}, e = 0; e != s.length; ++e)
s.charCodeAt(e) !== 65533 && (r[s.charAt(e)] = e), u[e] = s.charAt(e);
return { enc: r, dec: u };
}(), d[852] = function() {
for (var s = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0`, u = [], r = {}, e = 0; e != s.length; ++e)
s.charCodeAt(e) !== 65533 && (r[s.charAt(e)] = e), u[e] = s.charAt(e);
return { enc: r, dec: u };
}(), d[857] = function() {
for (var s = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0`, u = [], r = {}, e = 0; e != s.length; ++e)
s.charCodeAt(e) !== 65533 && (r[s.charAt(e)] = e), u[e] = s.charAt(e);
return { enc: r, dec: u };
}(), d[861] = function() {
for (var s = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0`, u = [], r = {}, e = 0; e != s.length; ++e)
s.charCodeAt(e) !== 65533 && (r[s.charAt(e)] = e), u[e] = s.charAt(e);
return { enc: r, dec: u };
}(), d[865] = function() {
for (var s = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0`, u = [], r = {}, e = 0; e != s.length; ++e)
s.charCodeAt(e) !== 65533 && (r[s.charAt(e)] = e), u[e] = s.charAt(e);
return { enc: r, dec: u };
}(), d[866] = function() {
for (var s = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0`, u = [], r = {}, e = 0; e != s.length; ++e)
s.charCodeAt(e) !== 65533 && (r[s.charAt(e)] = e), u[e] = s.charAt(e);
return { enc: r, dec: u };
}(), d[874] = function() {
for (var s = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD`, u = [], r = {}, e = 0; e != s.length; ++e)
s.charCodeAt(e) !== 65533 && (r[s.charAt(e)] = e), u[e] = s.charAt(e);
return { enc: r, dec: u };
}(), d[895] = function() {
for (var s = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u010C\xFC\xE9\u010F\xE4\u010E\u0164\u010D\u011B\u011A\u0139\xCD\u013E\u01EA\xC4\xC1\xC9\u017E\u017D\xF4\xF6\xD3\u016F\xDA\xFD\xD6\xDC\u0160\u013D\xDD\u0158\u0165\xE1\xED\xF3\xFA\u0148\u0147\u016E\xD4\u0161\u0159\u0155\u0154\xBC\xA7\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0`, u = [], r = {}, e = 0; e != s.length; ++e)
s.charCodeAt(e) !== 65533 && (r[s.charAt(e)] = e), u[e] = s.charAt(e);
return { enc: r, dec: u };
}(), d[932] = function() {
var s = [], u = {}, r = [], e;
for (r[0] = `\0\x07\b
\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFF61\uFF62\uFF63\uFF64\uFF65\uFF66\uFF67\uFF68\uFF69\uFF6A\uFF6B\uFF6C\uFF6D\uFF6E\uFF6F\uFF70\uFF71\uFF72\uFF73\uFF74\uFF75\uFF76\uFF77\uFF78\uFF79\uFF7A\uFF7B\uFF7C\uFF7D\uFF7E\uFF7F\uFF80\uFF81\uFF82\uFF83\uFF84\uFF85\uFF86\uFF87\uFF88\uFF89\uFF8A\uFF8B\uFF8C\uFF8D\uFF8E\uFF8F\uFF90\uFF91\uFF92\uFF93\uFF94\uFF95\uFF96\uFF97\uFF98\uFF99\uFF9A\uFF9B\uFF9C\uFF9D\uFF9E\uFF9F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`.split(""), e = 0; e != r[0].length; ++e)
r[0][e].charCodeAt(0) !== 65533 && (u[r[0][e]] = 0 + e, s[0 + e] = r[0][e]);
for (r[129] = "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008\u3009\u300A\u300B\u300C\u300D\u300E\u300F\u3010\u3011\uFF0B\uFF0D\xB1\xD7\uFFFD\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6\uFFFD\uFFFD\uFFFD\uFFFD\u25EF\uFFFD\uFFFD\uFFFD".split(""), e = 0; e != r[129].length; ++e)
r[129][e].charCodeAt(0) !== 65533 && (u[r[129][e]] = 33024 + e, s[33024 + e] = r[129][e]);
for (r[130] = "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFF10\uFF11\uFF12\uFF13\uFF14\uFF15\uFF16\uFF17\uFF18\uFF19\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFF21\uFF22\uFF23\uFF24\uFF25\uFF26\uFF27\uFF28\uFF29\uFF2A\uFF2B\uFF2C\uFF2D\uFF2E\uFF2F\uFF30\uFF31\uFF32\uFF33\uFF34\uFF35\uFF36\uFF37\uFF38\uFF39\uFF3A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFF41\uFF42\uFF43\uFF44\uFF45\uFF46\uFF47\uFF48\uFF49\uFF4A\uFF4B\uFF4C\uFF4D\uFF4E\uFF4F\uFF50\uFF51\uFF52\uFF53\uFF54\uFF55\uFF56\uFF57\uFF58\uFF59\uFF5A\uFFFD\uFFFD\uFFFD\uFFFD\u3041\u3042\u3043\u3044\u3045\u3046\u3047\u3048\u3049\u304A\u304B\u304C\u304D\u304E\u304F\u3050\u3051\u3052\u3053\u3054\u3055\u3056\u3057\u3058\u3059\u305A\u305B\u305C\u305D\u305E\u305F\u3060\u3061\u3062\u3063\u3064\u3065\u3066\u3067\u3068\u3069\u306A\u306B\u306C\u306D\u306E\u306F\u3070\u3071\u3072\u3073\u3074\u3075\u3076\u3077\u3078\u3079\u307A\u307B\u307C\u307D\u307E\u307F\u3080\u3081\u3082\u3083\u3084\u3085\u3086\u3087\u3088\u3089\u308A\u308B\u308C\u308D\u308E\u308F\u3090\u3091\u3092\u3093\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD".split(""), e = 0; e != r[130].length; ++e)
r[130][e].charCodeAt(0) !== 65533 && (u[r[130][e]] = 33280 + e, s[33280 + e] = r[130][e]);
for (r[131] = "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u30A1\u30A2\u30A3\u30A4\u30A5\u30A6\u30A7\u30A8\u30A9\u30AA\u30AB\u30AC\u30AD\u30AE\u30AF\u30B0\u30B1\u30B2\u30B3\u30B4\u30B5\u30B6\u30B7\u30B8\u30B9\u30BA\u30BB\u30BC\u30BD\u30BE\u30BF\u30C0\u30C1\u30C2\u30C3\u30C4\u30C5\u30C6\u30C7\u30C8\u30C9\u30CA\u30CB\u30CC\u30CD\u30CE\u30CF\u30D0\u30D1\u30D2\u30D3\u30D4\u30D5\u30D6\u30D7\u30D8\u30D9\u30DA\u30DB\u30DC\u30DD\u30DE\u30DF\uFFFD\u30E0\u30E1\u30E2\u30E3\u30E4\u30E5\u30E6\u30E7\u30E8\u30E9\u30EA\u30EB\u30EC\u30ED\u30EE\u30EF\u30F0\u30F1\u30F2\u30F3\u30F4\u30F5\u30F6\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD".split(""), e = 0; e != r[131].length; ++e)
r[131][e].charCodeAt(0) !== 65533 && (u[r[131][e]] = 33536 + e, s[33536 + e] = r[131][e]);
for (r[132] = "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0410\u0411\u0412\u0413\u0414\u0415\u0401\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0430\u0431\u0432\u0433\u0434\u0435\u0451\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\uFFFD\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD".split(""), e = 0; e != r[132].length; ++e)
r[132][e].charCodeAt(0) !== 65533 && (u[r[132][e]] = 33792 + e, s[33792 + e] = r[132][e]);
for (r[135] = "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2460\u2461\u2462\u2463\u2464\u2465\u2466\u2467\u2468\u2469\u246A\u246B\u246C\u246D\u246E\u246F\u2470\u2471\u2472\u2473\u2160\u2161\u2162\u2163\u2164\u2165\u2166\u2167\u2168\u2169\uFFFD\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u337B\uFFFD\u301D\u301F\u2116\u33CD\u2121\u32A4\u32A5\u32A6\u32A7\u32A8\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD".split(""), e = 0; e != r[135].length; ++e)
r[135][e].charCodeAt(0) !== 65533 && (u[r[135][e]] = 34560 + e, s[34560 + e] = r[135][e]);
for (r[136] = "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D\uFFFD\uFFFD\uFFFD".split(""), e = 0; e != r[136].length; ++e)
r[136][e].charCodeAt(0) !== 65533 && (u[r[136][e]] = 34816 + e, s[34816 + e] = r[136][e]);
for (r[137] = "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\uFFFD\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u